/* BUILT Walk-in Customers. Matches the Live Workshop / Client Vehicle Passport workspace look. */
.bwi-dialog{--bwi-surface:#171717;--bwi-raised:#202020;--bwi-line:#333;--bwi-muted:#aaa;--bwi-accent:#ff6a1a;width:min(1240px,calc(100vw - 32px));max-width:none;max-height:calc(100dvh - 32px);margin:auto;padding:0;border:1px solid #2a2a2a;border-radius:24px;background:#0b0b0b;color:#f4f4f4;font:inherit;color-scheme:dark;box-shadow:0 30px 110px #000d}
.bwi-dialog[open]{display:block}
.bwi-dialog::backdrop{background:#000c;backdrop-filter:blur(6px)}
.bwi-dialog *{box-sizing:border-box}
.bwi-dialog [hidden]{display:none!important}
.bwi-dialog h1,.bwi-dialog h2,.bwi-dialog h3,.bwi-dialog p,.bwi-dialog dl,.bwi-dialog dd,.bwi-dialog ul,.bwi-dialog ol{margin:0}
.bwi-dialog ul,.bwi-dialog ol{padding:0;list-style:none}
.bwi-dialog button{font:inherit;cursor:pointer}
.bwi-dialog button:disabled{opacity:.42;cursor:default}
.bwi-dialog button:focus-visible,.bwi-dialog input:focus-visible,.bwi-dialog select:focus-visible,.bwi-dialog textarea:focus-visible,.bwi-dialog summary:focus-visible{outline:2px solid #ff8a40;outline-offset:3px}
.bwi-page{display:grid;gap:16px;max-height:calc(100dvh - 34px);padding:18px;overflow:auto;overscroll-behavior:contain}

/* Hero */
.bwi-hero{display:grid;grid-template-columns:40px minmax(0,1fr) auto;align-items:start;gap:16px;padding:24px;border:1px solid #3a2a20;border-radius:20px;background:radial-gradient(120% 140% at 100% 0%,#2a1a10 0%,#171310 45%,#141414 100%)}
.bwi-hero>.bwi-primary,.bwi-hero>.bwi-secondary{align-self:center}
.bwi-hero>div{min-width:0}
.bwi-back{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:1px solid #3a3a3a;border-radius:50%;background:#191919;color:#eee;font-size:18px;line-height:1}
.bwi-back:hover{border-color:#5a5a5a}
.bwi-eyebrow{display:block;font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:var(--bwi-accent);overflow-wrap:anywhere}
.bwi-hero h1{margin-top:6px;text-transform:none;font-size:clamp(27px,3.4vw,36px);line-height:1.12;letter-spacing:-.025em;font-weight:800;overflow-wrap:anywhere}
.bwi-hero p{margin-top:8px;font-size:14px;line-height:1.55;color:var(--bwi-muted);max-width:60ch}
.bwi-hero>.bwi-primary,.bwi-hero>.bwi-secondary{min-height:46px;padding:12px 18px;border-radius:12px;font-size:14px;font-weight:750}

/* Buttons */
.bwi-primary,.bwi-secondary{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:11px 16px;border:1px solid #414141;border-radius:9px;background:#242424;color:#eee;font-size:13px;font-weight:650;line-height:1.3;white-space:normal;text-align:center;transition:border-color .15s,background .15s}
.bwi-secondary:hover{border-color:#5f5f5f;background:#2a2a2a}
.bwi-primary{background:#ff5a00;border-color:#ff5a00;color:#fff}
.bwi-primary:hover{background:#ff6a1a;border-color:#ff6a1a}

/* Notices */
.bwi-notice{padding:13px 16px;border:1px solid #6b4324;border-radius:14px;background:#231812;color:#ffd0af;font-size:13px;line-height:1.55;overflow-wrap:anywhere}
.bwi-notice.is-success{border-color:#1f5a3c;background:#11241a;color:#7fe0a8}
.bwi-notice+.bwi-notice{margin-top:10px}
.bwi-page>div[aria-live]:empty{display:none}

/* Stat tiles */
.bwi-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:10px}
.bwi-stat{display:flex;flex-direction:column;gap:6px;padding:14px 16px;border:1px solid #2c2c2e;border-radius:14px;background:linear-gradient(180deg,#161618,#0f0f11)}
.bwi-stat dt{font-size:10px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#8f8f95}
.bwi-stat dd{font-size:26px;font-weight:700;line-height:1.1;letter-spacing:-.02em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.bwi-stat small{font-size:12px;line-height:1.4;color:#8a8a90}
.bwi-stat.is-accent{border-color:#70401f;background:linear-gradient(180deg,#1f150f,#140e0a)}
.bwi-stat.is-accent dd{color:#ff9a5a}

/* Panels */
.bwi-panel{display:grid;gap:16px;padding:22px;border:1px solid var(--bwi-line);border-radius:18px;background:var(--bwi-surface)}
.bwi-panel-head{display:flex;align-items:center;justify-content:space-between;gap:16px}
.bwi-panel-head>div{min-width:0}
.bwi-panel-head h2{margin-top:5px;text-transform:none;font-size:22px;line-height:1.2;letter-spacing:-.02em;font-weight:750;overflow-wrap:anywhere}
.bwi-count{flex-shrink:0;padding:6px 10px;border:1px solid #3a3a3a;border-radius:9px;background:#1d1d1f;font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;color:#e8e8ea}

/* Tabs */
.bwi-tabs{display:grid;grid-template-columns:repeat(auto-fit,minmax(118px,1fr));gap:4px;padding:5px;border:1px solid var(--bwi-line);border-radius:13px;background:#121212}
.bwi-tabs button{min-height:44px;padding:8px 12px;border:1px solid transparent;border-radius:9px;background:transparent;color:#aaa;font-size:13px;font-weight:650;line-height:1.25}
.bwi-tabs button:hover{color:#eee}
.bwi-tabs button.active{background:#2c2018;border-color:#684022;color:#ff9955}

/* Filters and fields */
.bwi-filters{display:grid;grid-template-columns:minmax(0,1fr) 200px auto;align-items:end;gap:10px}
.bwi-field{display:flex;flex-direction:column;gap:7px;min-width:0;font-size:12px;color:#b7b7b7}
.bwi-field>span{font-size:11px;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:#8f8f95}
.bwi-field input,.bwi-field select,.bwi-field textarea,.bwi-search-row input{width:100%;min-width:0;max-width:100%;min-height:46px;padding:11px 13px;border:1px solid #3a3a3a;border-radius:10px;background:#111;color:#f2f2f2;font:inherit;font-size:16px;line-height:1.45;color-scheme:dark}
.bwi-field textarea{resize:vertical;min-height:88px}
.bwi-field input:hover,.bwi-field select:hover,.bwi-field textarea:hover{border-color:#4d4d4d}
.bwi-field input::placeholder,.bwi-field textarea::placeholder,.bwi-search-row input::placeholder{color:#7d7d82}
.bwi-field input:disabled,.bwi-field select:disabled,.bwi-field textarea:disabled{opacity:.6}
.bwi-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.bwi-wide{grid-column:1/-1}
.bwi-note{font-size:12px;line-height:1.65;color:#8f8f95}
.bwi-actions{display:flex;flex-wrap:wrap;gap:10px}
.bwi-search-row{display:flex;align-items:center;gap:9px;margin-top:14px}
.bwi-search-row input{flex:1}
.bwi-search-row .bwi-secondary{flex-shrink:0;min-height:46px}

/* Timeline */
.bwi-timeline{position:relative;display:grid;gap:12px;padding:2px 0}
.bwi-timeline::before{content:"";position:absolute;top:8px;bottom:8px;left:7px;width:1px;background:#2f2f31}
.bwi-entry{position:relative;display:grid;grid-template-columns:16px minmax(0,1fr);align-items:start;gap:12px}
.bwi-dot{display:block;width:15px;height:15px;margin-top:17px;border:1px solid #71421f;border-radius:50%;background:#140f0b;box-shadow:inset 0 0 0 3px #140f0b,inset 0 0 0 8px #ff6a1a}
.bwi-entry-card{min-width:0;display:grid;gap:10px;padding:14px 16px;border:1px solid #2c2c2e;border-radius:14px;background:linear-gradient(180deg,#19191b,#121214)}
.bwi-entry.is-overdue .bwi-entry-card{border-color:#5a2a26}
.bwi-entry-head{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}
.bwi-entry-head strong{font-size:14px;font-weight:700}
.bwi-entry-head time{margin-left:auto;font-size:12px;color:#8a8a90;font-variant-numeric:tabular-nums}
.bwi-entry-card h3{text-transform:none;font-size:17px;line-height:1.3;font-weight:700;letter-spacing:-.01em;overflow-wrap:anywhere}
.bwi-entry-card>p{font-size:13px;line-height:1.55;color:#aaa;overflow-wrap:anywhere;white-space:pre-wrap}
.bwi-entry-meta{display:flex;flex-wrap:wrap;gap:6px}
.bwi-entry-meta li{display:inline-flex;align-items:baseline;gap:6px;max-width:100%;padding:5px 9px;border:1px solid #2e2e30;border-radius:8px;background:#141416;font-size:12px;line-height:1.4}
.bwi-entry-meta span{color:#8a8a90;white-space:nowrap}
.bwi-entry-meta b{color:#e8e8ea;font-weight:650;overflow-wrap:anywhere}
.bwi-entry-actions{display:flex;justify-content:flex-end}
.bwi-entry-actions .bwi-secondary{min-height:40px;padding:9px 14px;font-size:12px}

/* Badges */
.bwi-badge{display:inline-flex;align-items:center;flex-shrink:0;padding:4px 9px;border:1px solid #3a3a3a;border-radius:999px;background:#1d1d1f;color:#c8c8cc;font-size:11px;font-weight:700;letter-spacing:.02em;white-space:nowrap}

/* Status panel */

/* Empty, pagination, footer */
.bwi-empty{padding:34px 22px;border:1px dashed #3a3a3a;border-radius:14px;text-align:center;color:#bdbdbd;font-size:13px;line-height:1.65}
.bwi-empty strong{display:block;font-size:16px;color:#e8e8ea}
.bwi-empty p{max-width:480px;margin:8px auto 0;font-size:13px;color:#8f8f95}
.bwi-empty .bwi-secondary{margin-top:16px}
.bwi-pagination{display:flex;justify-content:center;align-items:center;gap:16px;padding-top:4px;font-size:12px;color:#8f8f95;font-variant-numeric:tabular-nums}
.bwi-pagination .bwi-secondary{min-height:40px;font-size:12px}
.bwi-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 6px 2px;border-top:1px solid #222}
.bwi-footer>span{font-size:12px;line-height:1.6;color:#8f8f95;max-width:60ch}
.bwi-footer .bwi-secondary{min-height:40px;font-size:12px}

/* Tablet */
@media(max-width:1100px){.bwi-stats{grid-template-columns:repeat(3,minmax(0,1fr))}.bwi-filters{grid-template-columns:minmax(0,1fr) 180px auto}}

/* Phone */
@media(max-width:760px){
.bwi-dialog{width:100vw;max-height:100dvh;border:0;border-radius:0}
.bwi-page{max-height:100dvh;padding:12px 12px calc(12px + env(safe-area-inset-bottom));gap:12px}
.bwi-hero{grid-template-columns:40px minmax(0,1fr);padding:18px;border-radius:17px;gap:12px}
.bwi-hero h1{font-size:28px}
.bwi-hero p{font-size:13px}
.bwi-hero>.bwi-primary,.bwi-hero>.bwi-secondary{grid-column:1/-1;width:100%}
.bwi-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.bwi-stat{padding:12px 13px}
.bwi-stat dd{font-size:21px}
.bwi-stat small{font-size:11px}
.bwi-panel{padding:16px;border-radius:17px;gap:14px}
.bwi-panel-head h2{font-size:19px}
.bwi-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}
.bwi-tabs button{font-size:12px;padding:8px 6px}
.bwi-filters{grid-template-columns:minmax(0,1fr) auto}
.bwi-filters .bwi-search{grid-column:1/-1}
.bwi-filters>.bwi-secondary{min-height:46px}
.bwi-fields{grid-template-columns:1fr;gap:14px}
.bwi-entry{gap:10px}
.bwi-entry-card{padding:13px 14px}
.bwi-entry-card h3{text-transform:none;font-size:16px}
.bwi-entry-actions .bwi-secondary{width:100%}
.bwi-actions .bwi-primary,.bwi-actions .bwi-secondary{flex:1 1 140px}
.bwi-search-row{flex-wrap:wrap}
.bwi-search-row input{flex-basis:100%}
.bwi-search-row .bwi-secondary{flex:1}
.bwi-footer{flex-direction:column;align-items:stretch;gap:12px;text-align:center}
.bwi-pagination{justify-content:space-between}
}

/* Walk-in states */
.bwi-entry.is-joined .bwi-dot{border-color:#1f5a3c;box-shadow:inset 0 0 0 3px #140f0b,inset 0 0 0 8px #7fe0a8}
.bwi-entry.is-expired .bwi-dot{border-color:#5a4a1f;box-shadow:inset 0 0 0 3px #140f0b,inset 0 0 0 8px #f3c35a}
.bwi-entry.is-cancelled .bwi-dot{border-color:#3a3a3a;box-shadow:inset 0 0 0 3px #140f0b,inset 0 0 0 8px #555}
.bwi-badge.is-waiting{border-color:#70401f;background:#261b14;color:#ff9a5a}
.bwi-badge.is-joined{border-color:#1f5a3c;background:#11241a;color:#7fe0a8}
.bwi-badge.is-expired{border-color:#5a4a1f;background:#241f12;color:#f3c35a}
.bwi-badge.is-cancelled{color:#8a8a90}
.bwi-code{font-size:12px;font-weight:700;letter-spacing:.12em;color:#8a8a90;font-variant-numeric:tabular-nums}
.bwi-chips{display:flex;flex-wrap:wrap;gap:6px}
.bwi-chips li{padding:5px 10px;border:1px solid #4a3324;border-radius:999px;background:#1c1510;color:#ffc59c;font-size:12px;font-weight:650;line-height:1.3;overflow-wrap:anywhere}
.bwi-entry-actions{flex-wrap:wrap;align-items:center;gap:8px}
.bwi-entry-actions .bwi-primary,.bwi-entry-actions .bwi-secondary{min-height:40px;padding:9px 14px;font-size:12px;text-decoration:none}
.bwi-confirm{flex:1 1 100%;font-size:13px;line-height:1.5;color:#ffd0af}
a.bwi-primary,a.bwi-secondary{text-decoration:none}
.bwi-filters{grid-template-columns:minmax(0,1fr) auto}

/* New walk-in form */
.bwi-form{display:grid;gap:16px}
.bwi-fields-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.bwi-results{display:grid;gap:8px}
.bwi-results button{display:grid;gap:3px;width:100%;min-height:52px;padding:11px 14px;border:1px solid #2c2c2e;border-radius:12px;background:#141416;color:#eee;text-align:left}
.bwi-results button:hover{border-color:#684022;background:#1c1510}
.bwi-results strong{font-size:14px}
.bwi-results span{font-size:12px;color:#8a8a90;overflow-wrap:anywhere}
.bwi-picked{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;padding:14px 16px;border:1px solid #684022;border-radius:14px;background:#1c1510}
.bwi-picked strong{font-size:16px}
.bwi-picked span{font-size:13px;color:#c8c8cc;overflow-wrap:anywhere}
.bwi-choice,.bwi-services{display:grid;gap:8px;min-width:0;margin:0;padding:0;border:0}
.bwi-choice legend,.bwi-services legend{margin-bottom:8px;padding:0;font-size:11px;font-weight:650;letter-spacing:.04em;text-transform:uppercase;color:#8f8f95}
.bwi-choice label{display:flex;align-items:center;gap:12px;min-height:52px;padding:10px 14px;border:1px solid #2c2c2e;border-radius:12px;background:#141416;cursor:pointer}
.bwi-choice label:has(input:checked){border-color:#ff6a1a;background:#1c1510}
.bwi-choice input{width:18px;height:18px;accent-color:#ff5a00;flex-shrink:0}
.bwi-choice span{display:grid;gap:2px;min-width:0}
.bwi-choice b{font-size:14px;font-weight:650;overflow-wrap:anywhere}
.bwi-choice small{font-size:12px;color:#8a8a90;overflow-wrap:anywhere}
.bwi-services>div{display:flex;flex-wrap:wrap;gap:8px}
.bwi-service{position:relative;display:inline-flex;cursor:pointer}
.bwi-service input{position:absolute;opacity:0;pointer-events:none}
.bwi-service span{display:inline-flex;align-items:center;min-height:42px;padding:9px 14px;border:1px solid #3a3a3a;border-radius:999px;background:#141416;color:#c8c8cc;font-size:13px;font-weight:600;line-height:1.3}
.bwi-service:hover span{border-color:#5a5a5a}
.bwi-service input:checked+span{border-color:#ff6a1a;background:#2c2018;color:#ffb27f}
.bwi-service input:checked+span::before{content:"✓";margin-right:6px;font-weight:800}
.bwi-service input:focus-visible+span{outline:2px solid #ff8a40;outline-offset:3px}
.bwi-submit{gap:14px}
.bwi-submit .bwi-actions{justify-content:flex-end}

/* Invite: QR code and steps */
.bwi-invite{grid-template-columns:minmax(240px,320px) minmax(0,1fr);align-items:center;gap:28px;padding:28px}
.bwi-qr-wrap{display:grid;justify-items:center;gap:8px}
.bwi-qr{width:100%;max-width:300px;aspect-ratio:1;padding:10px;border-radius:18px;background:#fff;box-shadow:0 0 0 1px #3a2a20,0 18px 60px #ff5a0026}
.bwi-qr svg{display:block;width:100%;height:100%}
.bwi-qr>span{display:block;padding:16px;color:#111;font-size:13px;overflow-wrap:anywhere}
.bwi-code-big{margin-top:6px!important;font-size:30px;font-weight:800;letter-spacing:.14em;font-variant-numeric:tabular-nums;color:#fff}
.bwi-qr-wrap small{font-size:11px;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#8f8f95}
.bwi-invite-copy{display:grid;gap:16px;min-width:0}
.bwi-invite-copy h2{text-transform:none;font-size:clamp(24px,3vw,32px);line-height:1.15;letter-spacing:-.02em;font-weight:800;overflow-wrap:anywhere}
.bwi-howto{display:grid;gap:10px}
.bwi-howto li{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:start;gap:12px;font-size:14px;line-height:1.55;color:#d6d6d8}
.bwi-howto b{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:#2c2018;border:1px solid #684022;color:#ff9955;font-size:13px}
.bwi-howto strong{color:#fff;white-space:nowrap}
.bwi-invite .bwi-actions .bwi-primary{min-height:48px;padding:12px 20px;font-size:14px}

/* Requests banner */
.bwi-banner{display:flex;align-items:center;justify-content:space-between;gap:14px 20px;flex-wrap:wrap;margin:0 0 16px;padding:16px 18px;border:1px solid #3a2a20;border-radius:16px;background:radial-gradient(120% 140% at 100% 0%,#2a1a10 0%,#171310 45%,#141414 100%);color:#f4f4f4}
.bwi-banner>div:first-child{display:grid;gap:3px;min-width:0}
.bwi-banner strong{font-size:15px;font-weight:750}
.bwi-banner span{font-size:13px;line-height:1.45;color:#aaa}
.bwi-banner-actions{display:flex;flex-wrap:wrap;gap:8px}
.bwi-banner .bwi-primary,.bwi-banner .bwi-secondary{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:44px;padding:10px 16px;border:1px solid #414141;border-radius:10px;background:#242424;color:#eee;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
.bwi-banner .bwi-primary{background:#ff5a00;border-color:#ff5a00;color:#fff}
.bwi-pill{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#ff5a00;color:#fff;font-size:12px}

@media(max-width:1100px){.bwi-invite{grid-template-columns:minmax(220px,280px) minmax(0,1fr);gap:22px}}
@media(max-width:760px){
.bwi-fields-3{grid-template-columns:repeat(2,minmax(0,1fr))}
.bwi-fields-3 .bwi-field:nth-child(2),.bwi-fields-3 .bwi-field:nth-child(3){grid-column:auto}
.bwi-invite{grid-template-columns:1fr;padding:18px;gap:18px}
.bwi-qr{max-width:260px}
.bwi-code-big{font-size:26px}
.bwi-tabs{grid-template-columns:repeat(3,minmax(0,1fr))}
.bwi-entry-actions .bwi-primary,.bwi-entry-actions .bwi-secondary{flex:1 1 140px;width:auto}
.bwi-submit .bwi-actions{justify-content:stretch}
.bwi-banner{padding:14px}
.bwi-banner-actions{width:100%}
.bwi-banner-actions>*{flex:1 1 140px}
}
/* On Service Requests the banner sits in the page grid, which already spaces its sections. */
.business-request-portal>.bwi-banner{margin:0;box-sizing:border-box;width:100%;min-width:0}
