/* ListRiver list builders (Build/Business.aspx, Build/Industry.aspx) - 2026-10-22. Loaded after site.css. */
.lrb { background: #F5F8FB; color: #1B2433; padding-bottom: 3rem; }
.lrb-head { padding-top: 2rem; padding-bottom: 1.5rem; }
.lrb-head h1 { font-size: 2rem; font-weight: 800; color: var(--lr-navy); letter-spacing: -0.02em; margin: 0 0 .35rem; }
.lrb-head p { color: #5B6679; font-size: 1rem; margin: 0; }
.lrb-switch { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 4px; margin: .25rem 0 .75rem; padding: .55rem 1rem;
              border-radius: 10px; background: #E6F4F4; border: 1px solid #B9E1E1; color: #0B1E47; font-weight: 600; font-size: .95rem;
              text-decoration: none; }
.lrb-switch:hover { background: #D6EEEE; color: #0B1E47; }
.lrb-switch .text-nowrap { color: var(--lr-teal-dark); }
.lrb-eyebrow { font-size: .8rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #5B6679; margin: 0 0 .35rem; }
.lrb-ds-desc { margin-bottom: 1rem !important; }

.lrb-pills { display: flex; flex-wrap: wrap; gap: .5rem; }
.lrb-pill { display: inline-flex; align-items: center; min-height: 40px; padding: 0 1rem; border-radius: 999px; border: 1px solid #C9D2DF;
            background: #fff; color: var(--lr-navy); font-weight: 600; font-size: .9rem; text-decoration: none; }
.lrb-pill:hover { border-color: var(--lr-navy); color: var(--lr-navy); }
.lrb-pill.is-on { background: var(--lr-navy); border-color: var(--lr-navy); color: #fff; }

.lrb-card { background: #fff; border: 1px solid #E3E8EF; border-radius: 14px; padding: 1.5rem; }
.lrb-card-focus { border: 2px solid var(--lr-teal); box-shadow: 0 6px 24px rgba(16, 43, 99, .08); }
.lrb-step { display: flex; align-items: center; gap: .75rem; margin-bottom: .35rem; }
.lrb-step h2 { font-size: 1.15rem; font-weight: 700; color: var(--lr-navy); margin: 0; }
.lrb-num { width: 28px; height: 28px; border-radius: 50%; background: var(--lr-navy); color: #fff; display: inline-flex; align-items: center;
           justify-content: center; font-weight: 700; font-size: .875rem; flex: 0 0 28px; }
.lrb-opt { font-weight: 500; color: #5B6679; font-size: .95rem; }
.lrb-lead { margin: 0 0 .9rem 40px; font-size: .9rem; color: #5B6679; }
.lrb-help { margin-top: .75rem; font-size: .82rem; color: #5B6679; }
.lrb-label { display: block; font-weight: 700; color: var(--lr-navy); font-size: .95rem; margin-bottom: .45rem; }
.lrb-sub { font-weight: 400; color: #5B6679; font-size: .82rem; }
.lrb-in { min-height: 44px; font-size: 1rem; }
.lrb-num-in { max-width: 110px; }
.lrb-sep { border-top: 1px solid #E3E8EF; margin-top: 1.1rem; padding-top: .9rem; }

/* ---- Where box ---- */
.lrb-where { position: relative; border: 2px solid var(--lr-teal); border-radius: 12px; padding: 6px 10px; display: flex; flex-wrap: wrap;
             gap: 8px; align-items: center; min-height: 56px; background: #fff; cursor: text; }
.lrb-where:focus-within { box-shadow: 0 0 0 .2rem rgba(6, 150, 150, .2); }
.lrb-where-icon { color: #5B6679; font-size: 1.1rem; margin: 0 2px 0 4px; }
.lrb-where-chips { display: contents; }
.lrb-where-input { flex: 1 1 180px; border: 0; outline: none; font-size: 1rem; min-height: 40px; min-width: 120px; background: transparent; color: #1B2433; }
.lrb-chip { display: inline-flex; align-items: center; gap: 6px; background: #E6F4F4; color: #0B1E47; border-radius: 999px; padding: 4px 4px 4px 12px;
            font-size: .875rem; font-weight: 600; max-width: 100%; }
.lrb-chip-kind { font-weight: 500; color: #3F5A5A; }
.lrb-chip-x { border: 0; background: transparent; width: 28px; height: 28px; border-radius: 50%; display: inline-flex; align-items: center;
              justify-content: center; color: #0B1E47; font-size: 1.1rem; line-height: 1; }
.lrb-chip-x:hover, .lrb-chip-x:focus-visible { background: rgba(11, 30, 71, .1); }

.lrb-suggest { margin-top: 6px; border: 1px solid #E3E8EF; border-radius: 12px; box-shadow: 0 12px 32px rgba(16, 43, 99, .14); background: #fff;
               overflow: hidden; max-height: 420px; overflow-y: auto; }
.lrb-sg-head { padding: 8px 14px 4px; font-size: .7rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #5B6679; }
.lrb-sg-head + .lrb-sg { border-top: 0; }
.lrb-sg-group + .lrb-sg-group { border-top: 1px solid #E3E8EF; }
.lrb-sg { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 10px 14px; min-height: 46px; cursor: pointer; }
.lrb-sg:hover, .lrb-sg.is-active { background: #F0F8F8; }
.lrb-sg-n { font-size: .82rem; color: #5B6679; white-space: nowrap; }
.lrb-sg-empty { padding: 12px 14px; font-size: .9rem; color: #5B6679; }

.lrb-nudge { margin-top: .9rem; background: #FFF7E8; border: 1px solid #F1D49A; border-radius: 12px; padding: .9rem 1rem; }
.lrb-nudge-title { font-weight: 700; color: #5A3B00; font-size: .95rem; }
.lrb-nudge-text { color: #5A4A2A; font-size: .9rem; margin-top: .2rem; }
.lrb-nudge-btn { margin-top: .6rem; min-height: 44px; background: #fff; border: 1px solid #D9B66A; color: #5A3B00; font-weight: 700; border-radius: 10px; }
.lrb-nudge-btn:hover { background: #FFF1D6; color: #5A3B00; }

/* ---- Refine ---- */
.lrb-acc { border: 1px solid #E3E8EF; border-radius: 12px; overflow: hidden; margin-top: .75rem; }
.lrb-acc > details + details, .lrb-acc > details + .lrb-acc-row, .lrb-acc > .lrb-acc-row + details { border-top: 1px solid #E3E8EF; }
.lrb-acc summary { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 14px 16px; min-height: 52px; cursor: pointer;
                   font-weight: 700; color: var(--lr-navy); list-style: none; }
.lrb-acc summary::-webkit-details-marker { display: none; }
.lrb-acc summary::after { content: "\F282"; font-family: "bootstrap-icons"; font-weight: 400; color: #5B6679; transition: transform .15s; margin-left: auto; }
.lrb-acc details[open] > summary { background: #FAFBFD; border-bottom: 1px solid #E3E8EF; }
.lrb-acc details[open] > summary::after { transform: rotate(180deg); }
.lrb-acc details > :not(summary) { padding-left: 16px; padding-right: 16px; }
.lrb-acc details > :last-child { padding-bottom: 14px; }
.lrb-acc details > summary + * { padding-top: 12px; }
.lrb-acc-count { font-size: .82rem; color: var(--lr-teal-dark); font-weight: 600; }
.lrb-acc-row { padding: 12px 16px; }

.lrb-grid2 { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 4px 16px; }
.lrb-grid3 { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 4px 16px; }
.lrb-gap-lg { gap: 18px 20px; }
@media (max-width: 575.98px) { .lrb-grid2, .lrb-grid3 { grid-template-columns: 1fr; } }
.lrb-check { display: flex; align-items: center; gap: 10px; min-height: 44px; font-size: .95rem; margin: 0; cursor: pointer; }
.lrb-check .form-check-input { width: 18px; height: 18px; margin: 0; flex: 0 0 18px; }
.lrb-check-lg { align-items: flex-start; }
.lrb-check-lg .form-check-input { margin-top: 3px; }
.lrb-check.is-disabled { opacity: .55; cursor: not-allowed; }
.form-check-input:checked { background-color: var(--lr-teal-dark); border-color: var(--lr-teal-dark); }

.lrb-seg { display: inline-flex; border: 1px solid #C9D2DF; border-radius: 10px; overflow: hidden; }
.lrb-seg label { min-height: 44px; padding: 0 16px; display: inline-flex; align-items: center; font-weight: 600; font-size: .9rem; color: var(--lr-navy);
                 background: #fff; cursor: pointer; margin: 0; }
.lrb-seg label + input + label { border-left: 1px solid #C9D2DF; }
.lrb-seg .btn-check:checked + label { background: var(--lr-navy); color: #fff; }
.lrb-seg .btn-check:focus-visible + label { box-shadow: inset 0 0 0 2px var(--lr-teal); }
.lrb-scroll { max-height: 260px; overflow-y: auto; border: 1px solid #E3E8EF; border-radius: 10px; padding: 4px 12px; }

/* ---- Your list ---- */
.lrb-summary { position: sticky; top: 1.5rem; }
.lrb-count { font-size: 2.5rem; font-weight: 800; color: var(--lr-navy); letter-spacing: -0.02em; line-height: 1.1; }
.lrb-noun { color: #5B6679; font-size: .95rem; }
.lrb-total { font-size: 1.75rem; font-weight: 800; color: var(--lr-teal-dark); margin-top: .75rem; }
.lrb-rate { font-size: .82rem; color: #5B6679; }
.lrb-plan { margin-top: 1rem; }
.lrb-dl { margin: 1.1rem 0 0; display: grid; grid-template-columns: auto 1fr; gap: 6px 12px; font-size: .875rem; }
.lrb-dl dt { color: #5B6679; font-weight: 400; }
.lrb-dl dd { margin: 0; font-weight: 600; overflow-wrap: anywhere; }
.lrb-fill { border-top: 1px solid #E3E8EF; margin-top: 1rem; padding-top: .9rem; }
.lrb-bar { display: flex; align-items: center; gap: 10px; font-size: .82rem; margin-top: 6px; }
.lrb-bar > span:first-child { width: 64px; }
.lrb-bar-track { flex: 1; height: 8px; background: #E3E8EF; border-radius: 4px; overflow: hidden; }
.lrb-bar-fill { display: block; height: 8px; background: var(--lr-navy); }
.lrb-bar > span:last-child { width: 44px; text-align: right; }
.lrb-extra { display: flex; gap: 10px; font-size: .85rem; margin-top: 1rem; padding-top: .9rem; border-top: 1px solid #E3E8EF; }
.lrb-fine { margin: .9rem 0 0; font-size: .78rem; color: #5B6679; text-align: center; }
.lrb .btn-primary { --bs-btn-bg: var(--lr-teal-dark); --bs-btn-border-color: var(--lr-teal-dark); --bs-btn-hover-bg: #046767; --bs-btn-hover-border-color: #046767; }

.lrb-mobilebar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 1030; background: #fff; border-top: 1px solid #E3E8EF;
                 box-shadow: 0 -6px 20px rgba(16, 43, 99, .08); padding-bottom: env(safe-area-inset-bottom); }
.lrb-mb-count { font-weight: 800; color: var(--lr-navy); font-size: 1.05rem; }
.lrb-mb-where { font-weight: 500; font-size: .85rem; color: #5B6679; }
.lrb-mb-total { font-weight: 700; color: var(--lr-teal-dark); }
@media (max-width: 991.98px) {
    .lrb { padding-bottom: 6rem; }
    .lrb-summary { position: static; }
    .lrb-head h1 { font-size: 1.6rem; }
    .lrb-lead { margin-left: 0; }
}

/* ---- Starter box (home page) ---- */
.lrb-starter { background: #fff; border: 1px solid #E3E8EF; border-radius: 16px; padding: 1rem; display: flex; flex-direction: column; gap: .75rem;
               box-shadow: 0 6px 24px rgba(16, 43, 99, .08); max-width: 560px; position: relative; }
.lrb-starter-kind { display: grid; grid-template-columns: 1fr 1fr; }
.lrb-starter-kind label { justify-content: center; }
.lrb-starter .lrb-suggest { margin-top: -6px; }

/* the security check: an empty box unless Turnstile needs the visitor to click */
.lrb-ts:empty { display: none; }
.lrb-ts { margin-top: .75rem; }
