.button-row{flex-wrap:wrap;gap:16px;display:flex}button{border-radius:var(--sbd-radius-sm,14px);background:var(--sbd-primary,#006e78);color:#fff;min-height:64px;font:inherit;cursor:pointer;border:0;padding:0 32px;font-size:clamp(18px,1.3vw,24px);font-weight:700;transition:transform .12s,filter .12s}button:hover{filter:brightness(1.06)}button:active{transform:translateY(1px)scale(.99)}button:focus-visible{outline:4px solid var(--sbd-accent,#d69d00);outline-offset:3px}.secondary-button{border:2px solid var(--sbd-border,#d4dee1);color:var(--sbd-text,#172026);background:0 0}.secondary-button:hover{filter:none;background:#1121280a}input{border:2px solid var(--sbd-border,#9badb3);border-radius:var(--sbd-radius-sm,14px);background:var(--sbd-surface,#fff);min-width:min(100%,280px);min-height:64px;color:var(--sbd-text,#172026);font:inherit;font-variant-numeric:tabular-nums;letter-spacing:.12em;padding:0 18px;font-size:clamp(22px,1.8vw,32px)}input:focus-visible{border-color:var(--sbd-primary,#006e78);outline:none;box-shadow:0 0 0 4px #006e782e}.sbd-keypad{grid-template-columns:repeat(3,1fr);gap:10px;width:100%;max-width:380px;display:grid}.sbd-keypad button{border-radius:var(--sbd-radius-sm,14px);background:var(--sbd-surface-2,#f3f6f7);min-height:clamp(44px,3vw,58px);color:var(--sbd-text,#172026);font-variant-numeric:tabular-nums;padding:0;font-size:clamp(22px,1.7vw,30px);font-weight:700}.sbd-keypad button:hover{filter:none;background:#e7eef0}.sbd-keypad-action{background:var(--sbd-surface-2,#f3f6f7);color:var(--sbd-muted,#5a6b73);font-size:clamp(15px,1.1vw,20px)!important}.kiosk-shell-wrapper{background:var(--sbd-background,#eef3f2);min-height:100vh;color:var(--sbd-text,#172026);font-family:var(--sbd-font-family,"Inter", system-ui, Arial, sans-serif);grid-template-rows:auto 1fr auto;display:grid}.kiosk-header,.kiosk-footer{justify-content:space-between;align-items:center;gap:16px;padding:18px 32px;display:flex}.kiosk-brand,.kiosk-status{font-weight:700}.kiosk-content{align-items:center;padding:32px;display:grid}.active-sbd-layout{grid-template-rows:auto minmax(0,1fr);gap:clamp(12px,1.4vw,28px);height:100%;min-height:0;display:grid}.scale-readout{border:1px solid var(--sbd-border,#d4dee1);background:var(--sbd-surface,#fff);border-radius:999px;grid-template-columns:auto auto;justify-self:end;align-items:center;gap:2px 18px;padding:12px 22px;display:inline-grid;box-shadow:0 8px 20px #11212814}.scale-readout-label{color:var(--sbd-muted,#5a6b73);letter-spacing:.14em;text-transform:uppercase;grid-column:1;font-size:clamp(12px,.8vw,15px);font-weight:800}.scale-readout strong{min-width:150px;color:var(--sbd-text,#172026);font-variant-numeric:tabular-nums;grid-area:2/1;font-size:clamp(26px,2vw,38px);font-weight:800;line-height:1}.scale-readout-state{background:var(--sbd-surface-2,#f3f6f7);color:var(--sbd-muted,#5a6b73);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;grid-area:1/2/span 2;align-self:center;align-items:center;gap:8px;padding:8px 16px;font-size:clamp(12px,.85vw,16px);font-weight:700;display:inline-flex}.scale-readout-state:before{content:"";background:currentColor;border-radius:50%;width:10px;height:10px}.scale-readout[data-stable=true] .scale-readout-state{color:var(--sbd-success,#1f8f5f);background:#1f8f5f24}.scale-readout[data-stable=false] .scale-readout-state:before{animation:1.1s ease-in-out infinite sbd-pulse}.screen{align-content:center;justify-items:start;gap:clamp(14px,1.4vw,26px);height:100%;min-height:0;display:grid}.screen-copy{gap:clamp(12px,1.1vw,22px);max-width:22ch;display:grid}.screen-copy--center{text-align:center;justify-items:center;max-width:30ch}.screen-kicker{color:var(--sbd-primary,#006e78);letter-spacing:.16em;text-transform:uppercase;margin:0;font-size:clamp(15px,1.05vw,21px);font-weight:800}.screen h1{letter-spacing:-.01em;margin:0;font-size:clamp(40px,4vw,76px);line-height:1.05}.screen p{color:var(--sbd-muted,#5a6b73);margin:0;font-size:clamp(20px,1.7vw,30px);line-height:1.4}.intro-screen,.scan-screen{align-content:stretch;align-items:center;gap:var(--sbd-gap);grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}.intro-screen h1{font-size:clamp(40px,3.8vw,68px)}.intro-screen .screen-copy{max-width:none}.intro-screen .screen-copy p{max-width:26ch}.scan-screen{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr)}.scan-screen h1{font-size:clamp(32px,3vw,56px)}.scan-primary{align-content:center;justify-items:stretch;gap:clamp(16px,1.6vw,28px);display:grid}.scan-primary .screen-copy{max-width:none}.screen-visual{place-self:center;width:100%;max-width:620px}.screen-visual svg{width:100%;height:auto}.belt-bag{transform-origin:50%;animation:3.4s ease-in-out infinite sbd-bag-drop}.belt-arrow{animation:1.6s ease-in-out infinite sbd-arrow-bounce}.belt-track-roll{stroke-dasharray:4 14;animation:1.1s linear infinite sbd-belt-roll}.scan-cue{width:100%;max-width:440px;margin-top:clamp(4px,.6vw,12px);position:relative}.scan-beam{animation:2.2s ease-in-out infinite sbd-beam}.scan-fallback{border:1px dashed var(--sbd-border,#d4dee1);border-radius:var(--sbd-radius,24px);background:var(--sbd-surface-2,#f3f6f7);place-self:center stretch;gap:10px;padding:clamp(14px,1.2vw,22px);display:grid}.scan-fallback .manual-lpn{gap:10px}.scan-fallback .manual-lpn input{min-height:52px}.scan-fallback .button-row button{min-height:56px}.scan-fallback-label{margin:0;font-weight:800;color:var(--sbd-text,#172026)!important;font-size:clamp(18px,1.3vw,24px)!important}.manual-lpn{gap:14px;display:grid}.manual-lpn label{color:var(--sbd-muted,#5a6b73);font-size:clamp(14px,1vw,18px);font-weight:700}.manual-lpn input{text-align:center;width:100%}.manual-lpn .button-row{margin-top:4px}.manual-lpn .button-row button[type=submit]{flex:1}.status-screen{text-align:center;align-content:center;justify-items:center;gap:clamp(20px,2vw,40px)}.stage-spinner{border:9px solid color-mix(in srgb, var(--sbd-primary,#006e78) 18%, transparent);border-top-color:var(--sbd-primary,#006e78);border-radius:50%;width:clamp(72px,6vw,108px);height:clamp(72px,6vw,108px);animation:1s linear infinite sbd-spin}.accepted-screen,.complete-screen{text-align:center;align-content:center;justify-items:center;gap:clamp(18px,1.8vw,34px)}.success-mark{width:clamp(110px,9vw,168px);height:clamp(110px,9vw,168px);animation:.48s cubic-bezier(.2,.9,.3,1.4) sbd-pop}.success-mark circle{fill:color-mix(in srgb, var(--sbd-success,#1f8f5f) 14%, transparent)}.success-mark .ring{fill:none;stroke:var(--sbd-success,#1f8f5f);stroke-width:5px}.success-mark .tick{fill:none;stroke:var(--sbd-success,#1f8f5f);stroke-width:9px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:60;stroke-dashoffset:60px;animation:.52s ease-out .2s forwards sbd-draw}.summary-pill{background:color-mix(in srgb, var(--sbd-primary,#006e78) 12%, transparent);border-radius:999px;width:fit-content;padding:12px 26px;font-weight:800;color:var(--sbd-text,#172026)!important;font-size:clamp(18px,1.4vw,26px)!important}.next-bag-pill{background:color-mix(in srgb, var(--sbd-accent,#d69d00) 18%, transparent);border-radius:999px;align-items:center;gap:12px;padding:14px 26px;font-weight:800;display:inline-flex;color:var(--sbd-text,#172026)!important;font-size:clamp(18px,1.4vw,26px)!important}.processing-screen{text-align:center;align-content:center;justify-items:center;gap:clamp(16px,1.6vw,28px)}.processing-screen h1{font-size:clamp(32px,3vw,50px)}.process-steps{gap:clamp(10px,1vw,16px);width:min(100%,560px);margin:0;padding:0;list-style:none;display:grid}.process-step{background:var(--sbd-surface-2,#f3f6f7);text-align:left;border-radius:999px;grid-template-columns:auto 1fr;align-items:center;gap:18px;padding:clamp(12px,1vw,16px) clamp(20px,1.8vw,30px);transition:opacity .22s;display:grid}.process-step[data-state=pending]{opacity:.4}.process-step-label{color:var(--sbd-text,#172026);font-size:clamp(18px,1.5vw,26px);font-weight:700}.process-step-marker{border:3px solid var(--sbd-border,#d4dee1);box-sizing:border-box;border-radius:50%;place-items:center;width:clamp(30px,2.4vw,38px);height:clamp(30px,2.4vw,38px);display:grid}.process-step[data-state=active] .process-step-marker{border-color:var(--sbd-primary,#006e78);border-top-color:#0000;animation:.9s linear infinite sbd-spin}.process-step[data-state=done] .process-step-marker{border-color:var(--sbd-success,#1f8f5f);background:var(--sbd-success,#1f8f5f)}.process-step[data-state=done] .process-step-marker:after{content:"";border:3px solid #fff;border-width:0 3px 3px 0;width:9px;height:16px;margin-top:-3px;transform:rotate(45deg)}.process-note{background:color-mix(in srgb, var(--sbd-accent,#d69d00) 20%, transparent);border-radius:999px;align-items:center;gap:12px;padding:14px 26px;font-weight:800;display:inline-flex;color:var(--sbd-text,#172026)!important;font-size:clamp(17px,1.3vw,24px)!important}.passenger-line{flex-wrap:wrap;justify-content:center;align-items:center;gap:16px;display:inline-flex;color:var(--sbd-text,#172026)!important}.passenger-name{font-size:clamp(22px,1.8vw,32px);font-weight:800}.destination-chip{background:color-mix(in srgb, var(--sbd-primary,#006e78) 14%, transparent);border-radius:999px;padding:8px 20px;font-size:clamp(18px,1.4vw,26px);font-weight:800}.error-screen{--alert-color:var(--sbd-danger,#c0473a);align-content:center;align-items:center;gap:var(--sbd-gap);grid-template-columns:auto minmax(0,1fr)}.error-screen .screen-copy{max-width:34rem}.error-screen h1{font-size:clamp(34px,3.2vw,56px)}.error-screen.is-correctable,.error-screen.is-assistance{--alert-color:#b9770a}.error-screen.is-fatal{--alert-color:var(--sbd-danger,#c0473a)}.error-screen:before{content:"";background:var(--alert-color);height:10px;position:absolute;inset:0 0 auto}.alert-mark{width:clamp(96px,8vw,150px);height:clamp(96px,8vw,150px);color:var(--alert-color)}.error-screen .screen-kicker{color:var(--alert-color)}.error-screen .button-row{margin-top:clamp(8px,1vw,18px)}.status-dashboard{align-content:start;justify-items:start;gap:18px}.status-dashboard dl{grid-template-columns:max-content 1fr;gap:12px 32px;margin:8px 0 0;font-size:clamp(18px,1.4vw,26px);display:grid}.status-dashboard dt{color:var(--sbd-muted,#5a6b73);font-weight:700}.status-dashboard dd{font-variant-numeric:tabular-nums;margin:0}@keyframes sbd-spin{to{transform:rotate(360deg)}}@keyframes sbd-pulse{0%,to{opacity:1}50%{opacity:.3}}@keyframes sbd-bag-drop{0%,to{transform:translateY(0)}40%{transform:translateY(-14px)}}@keyframes sbd-arrow-bounce{0%,to{opacity:.5;transform:translateY(0)}50%{opacity:1;transform:translateY(10px)}}@keyframes sbd-belt-roll{to{stroke-dashoffset:-18px}}@keyframes sbd-beam{0%,to{opacity:.2;transform:translateY(-26px)}50%{opacity:1;transform:translateY(26px)}}@keyframes sbd-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@keyframes sbd-draw{to{stroke-dashoffset:0}}@media (width<=900px){.intro-screen,.scan-screen,.error-screen{text-align:center;grid-template-columns:minmax(0,1fr);justify-items:center}.screen-copy{text-align:center;justify-items:center;max-width:32ch}.screen-visual{max-width:420px}.scale-readout{justify-self:center}}@media (width<=560px){.screen h1{font-size:34px}.screen p{font-size:18px}}:root{--sbd-surface:#fff;--sbd-surface-2:#f3f6f7;--sbd-border:#d4dee1;--sbd-muted:#5a6b73;--sbd-success:#1f8f5f;--sbd-danger:#c0473a;--sbd-radius:24px;--sbd-radius-sm:14px;--sbd-shadow:0 30px 70px #11212829;--sbd-gap:clamp(28px, 3vw, 64px);color:var(--sbd-text,#172026);background:var(--sbd-background,var(--sbd-surface-2));font-family:var(--sbd-font-family,"Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif);-webkit-font-smoothing:antialiased}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;margin:0}.sbd-brand-theme{display:contents}.sbd-shell{background:radial-gradient(120% 120% at 100% 0%, #ffffff8c, transparent 55%), var(--sbd-background,var(--sbd-surface-2));min-height:100vh;color:var(--sbd-text,#172026);font-family:var(--sbd-font-family,"Inter", system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif);grid-template-rows:auto 1fr;gap:clamp(16px,1.6vw,32px);padding:clamp(20px,2.2vw,48px);display:grid}.sbd-kiosk-header{justify-content:space-between;align-items:center;gap:24px;padding:clamp(6px,.6vw,14px) clamp(10px,1vw,22px);display:flex}.sbd-kiosk-brand{letter-spacing:.01em;min-height:56px;color:var(--sbd-text,#172026);align-items:center;gap:16px;font-size:clamp(20px,1.6vw,30px);font-weight:800;display:inline-flex}.sbd-brand-mark{background:var(--sbd-primary,#006e78);color:#fff;border-radius:16px;place-items:center;width:clamp(48px,3.4vw,64px);height:clamp(48px,3.4vw,64px);font-size:clamp(22px,1.7vw,30px);font-weight:800;display:grid}.sbd-kiosk-meta{color:var(--sbd-muted);align-items:center;gap:10px;font-size:clamp(14px,1vw,19px);font-weight:600;display:inline-flex}.sbd-kiosk-meta:before{content:"";background:var(--sbd-success);border-radius:50%;width:12px;height:12px;box-shadow:0 0 0 4px #1f8f5f2e}.sbd-panel{border:1px solid var(--sbd-border);border-radius:var(--sbd-radius);background:var(--sbd-surface);min-height:0;box-shadow:var(--sbd-shadow);align-items:stretch;padding:clamp(32px,3.4vw,72px);display:grid;position:relative;overflow:hidden}.startup-status{align-self:center;gap:22px;width:100%;max-width:900px;display:grid}.startup-status .kicker{color:var(--sbd-primary,#006e78);letter-spacing:.14em;text-transform:uppercase;margin:0;font-size:clamp(16px,1.1vw,21px);font-weight:800}.startup-status h1{margin:0;font-size:clamp(44px,4.4vw,80px);line-height:1.04}.startup-status p{max-width:28ch;color:var(--sbd-muted);margin:0;font-size:clamp(20px,1.7vw,30px);line-height:1.4}.startup-status[data-state=unavailable] h1{color:var(--sbd-danger)}.startup-status dl{grid-template-columns:max-content 1fr;gap:10px 28px;margin:12px 0 0;font-size:clamp(15px,1.1vw,20px);display:grid}.startup-status dt{color:var(--sbd-muted);font-weight:700}.startup-status dd{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;min-width:0;margin:0}.sbd-preview-root{background:#0b1418;flex-direction:column;height:100vh;display:flex;overflow:hidden}.sbd-preview-stage{flex:1;min-height:0;display:grid}.sbd-preview-stage .sbd-shell{min-height:0}@media (width<=900px){.sbd-shell{grid-template-rows:auto auto 1fr}}@media (width<=560px){.sbd-panel{padding:24px}.startup-status h1{font-size:34px}.startup-status p{font-size:18px}}@media (prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}.sbd-shell--light{background:var(--sbd-background,#fff)}.sbd-shell--light .sbd-panel{border-color:#e6edef;box-shadow:0 18px 44px #11212814}.sbd-shell--contrast{background:#000}.sbd-shell--contrast .sbd-kiosk-brand{color:#fff}.sbd-shell--contrast .sbd-brand-mark{color:#000;background:#fff}.sbd-shell--contrast .sbd-panel{color:#fff;background:#0a0a0a;border-color:#fff}.sbd-shell--contrast .sbd-panel :is(h1,dt,dd),.sbd-shell--contrast .startup-status :is(h1,dt,dd){color:#fff}.sbd-shell--contrast .screen p,.sbd-shell--contrast .startup-status p{color:#e9eef0}.sbd-shell--contrast .screen-kicker,.sbd-shell--contrast .startup-status .kicker{color:#fff}.sbd-shell--contrast .scale-readout{background:#0a0a0a;border-color:#fff}.sbd-shell--contrast .scale-readout strong,.sbd-shell--contrast .scale-readout-label{color:#fff}.sbd-shell--contrast .scale-readout-state{color:#fff;background:#1a1a1a}.sbd-shell--contrast .scan-fallback{background:#0a0a0a;border-color:#fff}.sbd-shell--contrast .scan-fallback-label,.sbd-shell--contrast .manual-lpn label{color:#fff!important}.sbd-shell--contrast .sbd-keypad button{color:#fff;background:#1a1a1a}.sbd-shell--contrast input{color:#fff;background:#000;border-color:#fff}.sbd-shell--contrast .secondary-button{color:#fff;border-color:#fff}.sbd-shell--contrast .summary-pill,.sbd-shell--contrast .next-bag-pill,.sbd-shell--contrast .destination-chip,.sbd-shell--contrast .process-step,.sbd-shell--contrast .process-note{background:#1a1a1a;color:#fff!important}.sbd-shell--contrast .process-step-label,.sbd-shell--contrast .passenger-line,.sbd-shell--contrast .passenger-name{color:#fff!important}
