/* CPR DFW Hub — presentation layer. Existing application code remains intact. */
:root{color-scheme:dark;--red:#ed1c24;--red-dark:#c51d2b;--ink:#0b0d11;--ink-2:#151922;--paper:#111419;--bg:#111419;--card:#1a1e25;--line:#38414e;--text:#edf0f4;--muted:#abb4c2;--ok:#78d2a3;--radius:20px;--shadow:0 16px 44px #0002}
html{background:var(--bg);scroll-padding-top:115px}body{height:auto;min-height:100svh;background:radial-gradient(ellipse at 90% 5%,#27202c66,transparent 50%),var(--bg);color:var(--text);line-height:1.55;overscroll-behavior:auto;-webkit-font-smoothing:antialiased}
button,input,select,textarea{font-family:inherit;touch-action:manipulation}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible{outline:3px solid #ff919b;outline-offset:4px}::selection{background:#89333f;color:#fff}
header{min-height:88px;height:auto;padding:12px max(26px,calc((100vw - 1180px)/2));background:#101318ed;border-bottom:1px solid #ffffff10;backdrop-filter:blur(16px);gap:20px}
.brand{gap:17px;min-width:0}.brand img{width:102px;height:62px;object-fit:contain}.brand .ttl{font-size:18px;font-weight:800;letter-spacing:.065em;line-height:1.15}.brand .ttl small{font-size:12px;color:#ef959f;letter-spacing:.14em;margin-top:6px;font-weight:600}
.store{font-size:14px;font-weight:600;line-height:1.4;white-space:normal;max-width:36%;gap:6px}.store small{font-size:12px;font-weight:400;opacity:1;color:#aab4c3}.store .btns{gap:8px;flex-wrap:wrap;justify-content:flex-end}.lang,#changeStore{min-height:38px;border-radius:9px;border:1px solid #485363;background:#2b3340!important;color:#f1f3f8!important;font-size:14px!important;font-weight:600;padding:7px 12px!important;margin:0}.lang.install{background:#323b49!important}
.pill{margin-left:6px;font-size:12px;font-weight:500;border-color:#37414e;background:#ffffff06;padding:7px 10px;gap:7px}.pill small{font-size:12px;font-weight:400}.pill.ok i{animation:none;box-shadow:0 0 0 3px #22c55e18}
.band{background:#0c0f14;padding:31px 26px 43px;isolation:isolate}.band .in{max-width:1180px}.band::before{background:radial-gradient(ellipse 800px 370px at 0 -70%,#ad152865,transparent 75%),radial-gradient(ellipse at 100% 120%,#25314a50,transparent 70%)}.band::after{height:32px;bottom:-22px;border-top-width:3px;transform:rotate(-.8deg);box-shadow:0 -5px 40px #ed1c2414}
.kicker{font-size:12px;font-weight:600;letter-spacing:.06em;padding:6px 11px;border-color:#ed1c2440;background:#ed1c240c;color:#e3b2bb;margin-bottom:15px}.kicker .dot{width:6px;height:6px;animation:cpr-beacon 3s ease-in-out infinite}
.band h1{font-size:clamp(34px,4.2vw,54px);line-height:1.09;letter-spacing:-.048em;font-weight:800;text-shadow:none}.band .sub{font-size:16px;line-height:1.65;font-weight:400;color:#acb6c6;max-width:760px;margin-top:12px}
main{padding:27px 26px 38px;min-width:0}.card{width:min(1060px,100%);background:var(--card);border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:var(--shadow);min-width:0;animation:cpr-enter .5s both}.card:has(#s-map:not(.hidden)),.card:has(#s-mode:not(.hidden)){width:min(1180px,100%)}
.steps{gap:6px;margin:0 0 25px}.steps i{height:4px;background:#353c48}.steps i.on{background:#ef3344}.card:has(#s-mode:not(.hidden)){background:transparent;border:0;padding:0;box-shadow:none}.card:has(#s-mode:not(.hidden))>.steps{padding:0 2px}
#s-map{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:21px;align-items:stretch}#map{height:468px;border-radius:17px;border:1px solid #444e5c;background:#202b36;box-shadow:none;min-width:0}
.storelist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.storelist .chip{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0;min-height:67px;padding:13px 14px;border:1px solid #45505f;border-radius:12px;background:#242b35;color:#e7ecf2;font-size:14px;font-weight:600;line-height:1.4}.storelist .chip::after{content:'›';font-size:22px;color:#f27c8b;line-height:1;flex-shrink:0}
.gpin .lbl,.leaflet-tooltip.lbl{background:#c72030;color:#fff4f5;border:1.5px solid #ffbcc4;font-size:12px;font-weight:600;box-shadow:0 4px 12px #0003}.gpin .dot{border-color:#ffc2c7;box-shadow:0 3px 10px #0004}.leaflet-tile-pane{filter:brightness(.76) saturate(.75)}.leaflet-control-attribution{opacity:.92}.leaflet-control-attribution a{color:#4d667a}
.mode{grid-template-columns:1.18fr 1fr;gap:21px}.mode .choice{display:flex;flex-direction:column;min-height:435px;gap:0;padding:25px 29px 26px;border-radius:22px;background:#171a20;border:1px solid #68404b;color:var(--text);box-shadow:0 12px 34px #0002;isolation:isolate;overflow:hidden}.mode .choice[data-mode=call]{background:radial-gradient(ellipse at 65% 22%,#333b4a70,transparent 60%),#191e26;border-color:#414c5e}
.mode .choice::before{display:none}.mode .choice .mode-label{display:flex;align-items:center;justify-content:space-between;color:#b5bfcc;font-size:12px;letter-spacing:.07em;font-weight:500;line-height:1.5;text-transform:uppercase;margin-bottom:0;max-width:none}.mode-label svg{width:22px;height:22px;color:#ea8e9d}
.mode .choice .mode-art{display:flex;align-items:center;justify-content:center;height:225px;width:calc(100% + 28px);margin:0 -14px -6px;pointer-events:none}.mode-art img{width:100%;height:100%;object-fit:contain;animation:cpr-float 7s ease-in-out infinite;will-change:transform}.mode .choice[data-mode=store] .mode-art img{mask-image:radial-gradient(ellipse 69% 70% at center,#000 52%,transparent 77%)}.mode .choice[data-mode=call] .mode-art img{width:214px;height:214px;filter:brightness(.85) drop-shadow(0 13px 20px #0003);animation-delay:-3s}
.mode .choice b{font-size:32px;font-weight:700;letter-spacing:-.035em;line-height:1.15;color:var(--text)}.mode .choice .mode-description{font-size:16px;font-weight:400;line-height:1.55;color:#acb6c5;margin:11px 0 20px;max-width:440px}.mode .choice .mode-cta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;min-height:47px;padding:11px 16px;border:1px solid #fb535f;border-radius:10px;background:linear-gradient(130deg,#d71f30,#c81a29);color:#fff3f4;font-size:14px;font-weight:600}.mode .choice[data-mode=call] .mode-cta{background:#2b3442;border-color:#586679;color:#edf1f7}.mode-cta svg{width:20px;height:20px;transition:transform .2s}
footer{background:#090c10;color:#9ba7b6;border-top:1px solid #ffffff0b;font-size:12px;font-weight:400;line-height:1.8;padding:26px 22px calc(25px + env(safe-area-inset-bottom));gap:13px}footer .powered{gap:8px}footer .powered small{color:#8190a3;font-size:12px;letter-spacing:.14em;font-weight:600}footer .powered img{height:21px;opacity:.85}
@keyframes cpr-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes cpr-float{0%,100%{transform:translateY(0) rotate(-.25deg)}50%{transform:translateY(-6px) rotate(.25deg)}}@keyframes cpr-beacon{0%,100%{box-shadow:0 0 0 3px #ed1c2412}50%{box-shadow:0 0 0 6px #ed1c2406}}
@media(hover:hover){.storelist .chip:hover{background:#303a48;border-color:#df6b7e;transform:translateY(-2px);box-shadow:0 8px 18px #0002}.mode .choice:hover{transform:translateY(-3px);border-color:#d66b7e;box-shadow:0 15px 35px #0004}.mode .choice[data-mode=call]:hover{border-color:#9aaac0}.mode .choice:hover .mode-cta svg{transform:translateX(4px)}}
@media(min-width:1400px){.card{width:min(1060px,100%)}}
@media(max-width:1050px){.pill{display:none}.brand .ttl{font-size:16px}.store{max-width:42%}#s-map{grid-template-columns:1fr}#map{height:340px}.storelist{grid-template-columns:repeat(3,minmax(0,1fr))}.storelist .chip{min-height:62px}}
@media(max-width:700px){header{padding:9px 17px;min-height:79px;gap:12px}.brand{gap:0}.brand img{width:94px;height:57px}.brand .ttl{display:none}.store{max-width:65%;font-size:14px;gap:5px}.store small{display:none}.store .btns{gap:6px}.lang,#changeStore{font-size:12px!important;min-height:32px;padding:5px 9px!important}.band{padding:26px 20px 37px}.band h1{font-size:35px;line-height:1.1}.band .sub{font-size:16px;line-height:1.55;margin-top:12px}.kicker{font-size:12px;letter-spacing:.015em;padding:5px 9px;margin-bottom:14px;gap:7px}.band::after{border-top-width:2px;transform:rotate(-1.3deg)}main{padding:18px 15px 28px}.card{padding:19px;border-radius:19px}.steps{gap:4px;margin-bottom:19px}#s-map{gap:15px}#map{height:249px;border-radius:13px}.storelist{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.storelist .chip{font-size:14px;padding:12px;min-height:63px}.mode{grid-template-columns:1fr;gap:16px}.mode .choice{min-height:0;padding:20px 22px 22px;border-radius:20px}.mode .choice .mode-label{font-size:12px}.mode .choice .mode-art{height:173px;margin-top:-2px}.mode .choice b{font-size:28px}.mode .choice .mode-description{font-size:16px;margin:9px 0 18px}.mode .choice .mode-cta{font-size:14px;min-height:46px}.mode .choice[data-mode=call]{display:grid;grid-template-columns:minmax(0,1fr) 95px;column-gap:10px}.mode .choice[data-mode=call] .mode-label{grid-column:1/-1;margin-bottom:19px}.mode .choice[data-mode=call] .mode-art{grid-column:2;grid-row:2/4;width:115px;height:130px;margin:-5px -12px 0}.mode .choice[data-mode=call] .mode-art img{width:115px;height:130px}.mode .choice[data-mode=call] b{grid-column:1;font-size:26px}.mode .choice[data-mode=call] .mode-description{grid-column:1;font-size:14px}.mode .choice[data-mode=call] .mode-cta{grid-column:1/-1}footer{font-size:12px;padding:24px 20px;gap:12px}footer .powered img{height:19px}}
@media(max-width:360px){header{padding-inline:14px}.brand img{width:80px}.store{font-size:13px}.band{padding-inline:17px}.band h1{font-size:31px}.kicker{font-size:12px;letter-spacing:0;gap:6px;padding:4px 7px}main{padding-inline:12px}.card{padding:16px}.storelist .chip{padding:11px 9px;font-size:14px}.mode .choice{padding:18px}.mode .choice .mode-art{height:152px}.mode .choice b{font-size:26px}.mode .choice[data-mode=call]{grid-template-columns:minmax(0,1fr) 78px}.mode .choice[data-mode=call] .mode-art{width:100px;height:116px}.mode .choice[data-mode=call] .mode-art img{width:100px;height:116px}.mode .choice[data-mode=call] b{font-size:23px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.mode-art img{will-change:auto}}

/* Intake steps: readable selection states, forms, services, calendar and signature. */
.choice,.chip,.day,.time{color:var(--text);background:#252c36;border:1px solid #424d5d;box-shadow:none;transition:background .2s,border-color .2s,transform .2s;font-weight:500;letter-spacing:0}
.choice{border-radius:15px;padding:21px;font-size:18px;line-height:1.45;min-height:109px;gap:8px;min-width:0;overflow-wrap:anywhere}.choice b{font-weight:600;line-height:1.35}.choice span{color:#b0b9c7;font-size:14px;line-height:1.6;font-weight:400}.choice::before{display:none}
.choice.sel,.chip.sel,.day.sel,.time.sel{background:#412731;border-color:#ef7b8d;box-shadow:inset 0 0 0 1px #ef7b8d;color:#fff1f3;transform:none}.choice.sel::before{display:none}.choice .price{color:#ff8d9e;font-size:1em;display:inline-block}
.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.pic{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.pic .choice{min-height:145px;padding:20px 12px;font-size:16px;line-height:1.5;border-radius:15px;justify-content:center}.pic .choice img{height:76px;margin-bottom:11px;filter:none}.pic .choice.issue{min-height:126px}.pic .choice.issue img{height:49px}.pic .choice.chip{border-radius:15px;padding:18px 11px;font-size:15px}.pic .choice.chip img{height:68px}
.chips{gap:11px}.chip,.chip.big{padding:14px 18px;font-size:16px;min-height:52px;border-radius:12px;line-height:1.45}.chip.big{font-weight:600}.chips:has(>input){display:block}
#makeChips:not(:has(input)){display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}#makeChips .chip{min-height:70px;font-size:18px}#modelChips.chips{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-height:460px;overflow-y:auto;padding:2px}#modelChips .chip{min-width:0;text-align:left;font-size:16px}
label{font-size:14px;line-height:1.55;font-weight:600;text-transform:none;letter-spacing:0;color:#e2e7ef;margin:19px 0 8px}input,textarea,select.big{font-size:16px;line-height:1.6;font-weight:400;min-height:54px;padding:13px 15px;border-radius:11px;border:1px solid #4b586b;background:#10161e;color:#edf1f8;box-shadow:none;width:100%}input::placeholder,textarea::placeholder{color:#929eaf;opacity:1}input:focus,textarea:focus,select.big:focus{outline:2px solid #f27a8a;outline-offset:2px;border-color:#f27a8a;background:#151c25}input.bad{background:#3c222b!important;border-color:#f77f8b!important}input.good{border-color:#7ed6a2!important}textarea{min-height:110px;resize:vertical}
.row{gap:18px}.opt{font-size:16px;font-weight:400;line-height:1.6;color:#bbc4d2;align-items:flex-start;gap:12px}.opt input{height:23px;width:23px;min-width:23px;min-height:23px;accent-color:#ed1c24;margin-top:2px;padding:0}.search{font-size:16px;min-height:52px;margin-bottom:18px}
.actions{margin-top:26px;padding-top:22px;border-top:1px solid #394251;gap:12px;align-items:stretch}.btn{min-height:51px;font-size:16px;font-weight:600;line-height:1.5;letter-spacing:0;border-radius:11px;padding:13px 21px;box-shadow:none;white-space:normal}.btn.primary{background:linear-gradient(130deg,#d71f30,#c81a29);border:1px solid #f34d5c;box-shadow:0 6px 18px #ed1c2414;color:#fff4f5}.btn.ghost{background:#2a3341;color:#e1e7f1;border:1px solid #4b586c;border-radius:11px;padding:13px 20px;font-weight:500}.btn[disabled],.day[disabled]{opacity:.38;cursor:not-allowed;box-shadow:none}
.summary,.terms,.picked,.list{border:1px solid #3b495d;background:#151b23;color:#afb9c8;border-radius:12px;font-size:15px;line-height:1.7;font-weight:400}.summary{padding:16px;margin:17px 0 7px}.summary b{color:#eef1f6;font-weight:600}.terms{padding:16px 18px;max-height:240px;user-select:text}.terms p{margin-bottom:12px}.picked{display:inline-flex;padding:6px 12px;gap:8px;background:#33252f;border-color:#995364;color:#f7dbe1;font-size:14px}.picked i{color:#ff96a6}.badge{font-size:12px;letter-spacing:.02em;background:#3a4659;color:#e0e9f7}
.list{max-height:300px}.list button{background:#202a36;color:#e5edf8;border-color:#3e4e62;font-size:15px;padding:14px;line-height:1.5}.list button small,.list .empty{color:#acbace;font-size:14px}.list button:hover{background:#313341}
.err{font-size:14px;font-weight:500;line-height:1.6;color:#ff94a3;min-height:0;margin-top:12px}.err:empty{margin:0}.days{gap:9px;padding:3px 2px 13px;scrollbar-width:thin;scroll-snap-type:x proximity}.day{min-width:85px;min-height:92px;border-radius:13px;padding:12px 10px;scroll-snap-align:start}.day span{font-size:12px;color:#bbc5d3;font-weight:500;letter-spacing:.03em}.day b{font-size:25px;line-height:1.4;font-weight:600}.times{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:15px;max-height:360px;padding:2px}.time{font-size:16px;line-height:1.4;min-height:48px;border-radius:10px;padding:12px 8px}.time.sel{background:#ad2338;border-color:#ef8192}.day.sel{background:#402630}.done{padding:15px 7px}.done .check{background:#21392f;color:#9be7b5;border:1px solid #4c8060;box-shadow:none;height:76px;width:76px;font-size:39px}.done h1{font-size:34px;font-weight:700;line-height:1.2}.done .sub{font-size:16px;line-height:1.7;color:#b7c2d1}.done .pos{font-size:18px}.done .pos b{color:#edf3fb;font-size:30px}.done a{color:#ff9bab}
/* The drawing code uses black ink; this muted light surface preserves signature visibility. */
.sig{background:#c7cbd1;border:2px dashed #919aa7;height:205px;border-radius:13px}.sig .line{border-color:#738091}.sig .clr{background:#dde0e5;color:#29313c;border:1px solid #8e98a6;border-radius:8px;font-size:14px;padding:6px 12px;min-height:35px}.sig canvas{border-radius:12px}
@media(hover:hover){.choice:hover,.chip:hover{background:#303c4b;border-color:#8090a8;transform:translateY(-2px);box-shadow:0 7px 20px #0002}.choice.sel:hover,.chip.sel:hover{background:#4b2c38;border-color:#f28b9c;box-shadow:inset 0 0 0 1px #ef7b8d;transform:none}.btn.primary:hover{background:#ed293c;transform:translateY(-1px);box-shadow:0 6px 22px #ed1c241d}.btn.ghost:hover{background:#354257;border-color:#71819a}.time:hover:not([disabled]),.day:hover:not([disabled]){border-color:#f48090}.mode .choice[data-mode=store]:hover{background:#171a20}.mode .choice[data-mode=call]:hover{background:radial-gradient(ellipse at 65% 22%,#333b4a70,transparent 60%),#191e26}}
@media(max-width:700px){.pic{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.pic .choice{min-height:139px;padding:18px 10px;font-size:16px}.pic .choice img{height:68px}.pic .choice.issue{min-height:126px}.pic .choice.chip{min-height:125px}.row{grid-template-columns:1fr;gap:0}.grid{grid-template-columns:1fr}#makeChips:not(:has(input)){grid-template-columns:repeat(2,minmax(0,1fr))}#makeChips .chip{font-size:16px;min-height:66px}#modelChips.chips{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}#modelChips .chip{font-size:15px}.actions{position:sticky;bottom:0;z-index:15;background:#1a1e25;margin-top:22px;padding:15px 0 calc(8px + env(safe-area-inset-bottom));gap:10px}.btn,.btn.ghost{font-size:16px;min-height:50px;padding:12px 15px}.choice{padding:20px}.times{grid-template-columns:repeat(3,minmax(0,1fr));max-height:none;gap:8px}.time{font-size:14px}.day{min-width:75px}.summary{font-size:14px}.done h1{font-size:30px}.terms{font-size:14px}.mode .choice .mode-art{flex-shrink:0}}
@media(max-width:360px){.pic .choice{font-size:14px;padding-inline:8px}.times{grid-template-columns:repeat(2,minmax(0,1fr))}#s-sign .actions{flex-wrap:wrap}#s-sign #signBtn{flex-basis:100%}.mode .choice .mode-description{font-size:16px}}

/* Customer kiosk uses the same system while retaining its original multilingual controls. */
.cpr-kiosk header{position:sticky;top:0;z-index:50}.cpr-kiosk .brand{font-size:16px;color:#e8eef7}.cpr-kiosk .brand .mark{width:92px;height:57px;background:none;color:inherit;display:block;border-radius:0;flex-shrink:0}.cpr-kiosk .brand .mark img{width:100%;height:100%;object-fit:contain}.cpr-kiosk .brand>div:last-child{display:flex;align-items:center;gap:15px}.cpr-kiosk main{padding-top:30px}.cpr-kiosk .card{width:min(1100px,100%)}.cpr-kiosk h1{font-size:35px;line-height:1.17;letter-spacing:-.035em;font-weight:700;margin:0 0 11px}.cpr-kiosk .sub{font-size:16px;line-height:1.6;color:#b2bece;margin:0 0 25px}
.cpr-kiosk .card:has(#s-reason:not(.hidden)){background:transparent;box-shadow:none;border:0;padding:0}.cpr-kiosk .card:has(#s-reason:not(.hidden))>.steps{display:none}#s-reason .grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:16px}#s-reason .choice{position:relative;padding:24px;overflow:hidden;border-radius:18px}#s-reason .choice[data-reason=repair],#s-reason .choice[data-reason=appointment]{grid-column:span 3;min-height:246px;padding-right:47%;justify-content:center}#s-reason .choice[data-reason=repair]{order:1;background:#171a20;border-color:#774450}#s-reason .choice[data-reason=appointment]{order:2;background:#1e2631;border-color:#495b73}#s-reason .choice[data-reason=pickup]{order:3;grid-column:span 2}#s-reason .choice[data-reason=claim]{order:4;grid-column:span 2}#s-reason .choice[data-reason=question]{order:5;grid-column:span 2}#s-reason .choice b{font-size:21px;line-height:1.3;font-weight:600;position:relative;z-index:2}#s-reason .choice span:not(.reason-art){font-size:14px;line-height:1.6;position:relative;z-index:2}#s-reason .reason-art{position:absolute;right:0;top:14%;width:54%;height:72%;pointer-events:none}#s-reason .reason-art img{width:100%;height:100%;object-fit:contain;animation:cpr-float 7s ease-in-out infinite}#s-reason .choice[data-reason=repair] .reason-art img{mask-image:radial-gradient(ellipse at center,#000 45%,transparent 75%)}#s-reason .choice[data-reason=appointment] .reason-art{width:48%;right:0}#s-reason .choice[data-reason=appointment] .reason-art img{filter:brightness(.85);animation-delay:-3s}.cpr-kiosk footer{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px}.cpr-kiosk .powered{display:flex;flex-direction:column;align-items:center;gap:7px}
@media(max-width:700px){.cpr-kiosk header{align-items:center;gap:13px}.cpr-kiosk .brand{gap:8px}.cpr-kiosk .brand .mark{width:84px;height:54px}.cpr-kiosk .brand>div:last-child{font-size:0;gap:0}.cpr-kiosk .store{font-size:14px;max-width:41%}.cpr-kiosk .lang{margin:0;min-height:37px}.cpr-kiosk h1{font-size:30px}.cpr-kiosk main{padding-top:24px}#s-reason .grid{grid-template-columns:1fr;gap:12px}#s-reason .choice,#s-reason .choice[data-reason=repair],#s-reason .choice[data-reason=appointment],#s-reason .choice[data-reason=pickup],#s-reason .choice[data-reason=claim],#s-reason .choice[data-reason=question]{grid-column:auto;min-height:105px;padding:20px}#s-reason .choice[data-reason=repair],#s-reason .choice[data-reason=appointment]{padding-right:45%;min-height:194px}#s-reason .choice b{font-size:20px}#s-reason .reason-art{right:0;width:54%}.cpr-kiosk .card{padding:20px}.cpr-kiosk .card:has(#s-reason:not(.hidden)){padding:0}}

/* Staff queue: keep the operational information dense and the status colors distinct. */
.cpr-queue{--wait:#ffc373;--wait-bg:#3d3021;--help:#97baff;--help-bg:#23344f;--done:#8ad6a6;--done-bg:#243b2e;min-height:100svh}.cpr-queue header{padding:13px max(24px,calc((100vw - 1180px)/2));position:sticky;z-index:30;min-height:86px}.cpr-queue .brand img{height:58px!important;width:96px}.cpr-queue .brand span{font-size:16px!important;letter-spacing:.08em!important}.cpr-queue .tools{gap:9px;justify-content:flex-end;max-width:77%}.cpr-queue .tools select,.cpr-queue .tools input{width:auto;min-height:42px;max-width:235px;border:1px solid #46536a;background:#202a38;color:#e8eef7;border-radius:9px;padding:9px 12px;font-size:14px;line-height:1.5}.cpr-queue .hbtn{min-height:42px;background:#313d4f;border:1px solid #4a5b74;font-size:14px;font-weight:500;padding:9px 13px;border-radius:9px;color:#e9eff8}.cpr-queue #refresh{min-width:43px;font-size:21px;padding:3px 11px}.cpr-queue main{display:block;max-width:1180px;width:100%;margin:0 auto;padding:30px 24px 40px}.cpr-queue .stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:25px}.cpr-queue .stat{border:1px solid #354257;background:linear-gradient(120deg,#232b38,#1a202a);border-radius:16px;padding:20px 22px;box-shadow:none;min-width:0}.cpr-queue .stat b{font-size:35px;line-height:1.25;font-weight:600;color:#ecf2fb;margin-bottom:7px}.cpr-queue .stat span{font-size:14px;color:#b3c0d4}.cpr-queue .stat:first-child{border-top:2px solid #c89558}.cpr-queue .stat:nth-child(2){border-top:2px solid #7b9acf}.cpr-queue .stat:nth-child(3){border-top:2px solid #73a987}
.cpr-queue .list{display:grid;gap:13px;background:none;border:0;max-height:none;border-radius:0}.cpr-queue .item{grid-template-columns:47px minmax(0,1fr) auto;border:1px solid #364458;border-left:4px solid #475b74;background:#1c2531;border-radius:15px;padding:21px 18px;box-shadow:none;gap:15px;min-width:0}.cpr-queue .item.waiting{border-left-color:#d9a25c}.cpr-queue .item.helping{border-left-color:#80a7ef}.cpr-queue .item.done{border-left-color:#80c59a;opacity:.8}.cpr-queue .num{font-size:24px;color:#c9d8eb}.cpr-queue .who{font-size:18px;color:#edf3fa;overflow-wrap:anywhere;line-height:1.5}.cpr-queue .who small{font-size:14px;color:#aabbd2}.cpr-queue .meta{color:#b1bfd2;font-size:14px;line-height:1.7;gap:6px 12px}.cpr-queue .tag{font-size:12px;line-height:1.5;font-weight:600;letter-spacing:.04em;padding:3px 9px}.cpr-queue .tag.repair{background:#432b35;color:#ffa3b1}.cpr-queue .tag.claim{background:#34304b;color:#d1b7f1}.cpr-queue .tag.question{background:#343d4b;color:#d6e1ef}.cpr-queue .wait.hot{color:#ffa0ab}.cpr-queue .acts{gap:8px}.cpr-queue .b{display:inline-flex;justify-content:center;align-items:center;min-height:43px;padding:10px 14px;border-radius:9px;font-size:14px;font-weight:600;background:#303e52;color:#e4edfa;text-decoration:none;line-height:1.5}.cpr-queue .b.help{background:#355585;border:1px solid #7092c2}.cpr-queue .b.done{background:#315a43;border:1px solid #72a889}.cpr-queue .b.call{background:#28354a;border:1px solid #4d617d}.cpr-queue .empty{padding:65px 20px;border:1px dashed #3c4c63;background:#151d28;border-radius:17px;font-size:16px;line-height:1.7}.cpr-queue .login{max-width:440px;margin:38px auto;background:radial-gradient(ellipse at top left,#53303b66,transparent 65%),#1a222e;border:1px solid #435068;border-top:2px solid #df4a61;border-radius:20px;padding:32px;box-shadow:0 15px 45px #0002}.cpr-queue .login h2{font-size:30px;line-height:1.2;font-weight:600;margin:0 0 24px;letter-spacing:-.03em}.cpr-queue .login input{margin:0;min-height:52px;font-size:16px;border-color:#53617a;background:#111a26;color:#edf3fb}.cpr-queue .login label{margin:18px 0 8px;font-weight:500}.cpr-queue .login button{font-size:16px;line-height:1.5;margin-top:24px;padding:13px;min-height:50px;border-radius:10px;background:linear-gradient(130deg,#d71f30,#c81a29);border:1px solid #f14e60}.cpr-queue .err{color:#ffa2b1}
@media(max-width:900px){.cpr-queue header{align-items:flex-start}.cpr-queue .tools{max-width:70%}.cpr-queue .item{grid-template-columns:38px minmax(0,1fr)}.cpr-queue .acts{grid-column:2;justify-content:flex-start}.cpr-queue .who small{display:block;margin:3px 0}.cpr-queue .stats{gap:11px}.cpr-queue .stat{padding:17px}}
@media(max-width:640px){.cpr-queue header{padding:11px 16px;gap:13px}.cpr-queue .brand{width:100%;gap:16px}.cpr-queue .brand img{width:86px;height:52px!important}.cpr-queue .tools{display:grid;grid-template-columns:1fr 1fr 44px;max-width:none;width:100%;gap:8px}.cpr-queue .tools select{grid-column:1/3;max-width:none;width:100%;min-width:0;order:1}.cpr-queue #refresh{grid-column:3;grid-row:1;order:2}.cpr-queue #day{grid-column:1;grid-row:2;max-width:none;width:100%;min-width:0;font-size:14px}.cpr-queue #kioskLink{grid-column:2;grid-row:2}.cpr-queue #signout{grid-column:3;grid-row:2;font-size:12px;padding:5px 2px;overflow-wrap:anywhere;line-height:1.3}.cpr-queue main{padding:23px 15px 30px}.cpr-queue .stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:18px}.cpr-queue .stat{padding:17px}.cpr-queue .stat b{font-size:29px}.cpr-queue .stat span{font-size:14px}.cpr-queue .item{padding:18px 13px;grid-template-columns:25px minmax(0,1fr);gap:11px}.cpr-queue .who{font-size:17px}.cpr-queue .num{font-size:21px}.cpr-queue .meta{font-size:14px}.cpr-queue .acts{grid-column:1/-1;padding-left:36px}.cpr-queue .login{margin:18px auto;padding:25px}.cpr-queue .login h2{font-size:28px}}
@media(max-width:700px){footer{padding-bottom:calc(24px + env(safe-area-inset-bottom))}}
@media(display-mode:standalone){header,.cpr-kiosk header,.cpr-queue header{padding-top:calc(10px + env(safe-area-inset-top));height:auto}html{scroll-padding-top:calc(115px + env(safe-area-inset-top))}}

/* Narrow phones keep the date and queue actions fully readable. */
@media(max-width:380px){.cpr-queue #day{grid-column:1/-1;grid-row:2}.cpr-queue #kioskLink{grid-column:1;grid-row:3}.cpr-queue #signout{grid-column:2/4;grid-row:3;font-size:14px;padding:9px 13px;overflow-wrap:normal}}
