:root{--color-accent:#141414;--color-border:#e4e1db;--color-capture-light:#fff;--color-capture-text:#1d1d1f;--color-error:#b3261e;--color-festa-accent:#d33f24;--color-festa-border:#f3dfcd;--color-festa-field-border:#8f8098;--color-festa-glow:#ff8a5c;--color-festa-on-accent:#fff;--color-festa-page-bg:#fff7f0;--color-festa-surface:#ffeee0;--color-festa-surface-raised:#fff;--color-festa-text:#24122e;--color-festa-text-secondary:#665a70;--color-field-border:#8a8781;--color-glow:#d9c7a6;--color-notte-accent:#d4bc8e;--color-notte-border:#2e2d2b;--color-notte-error:#ff8a80;--color-notte-field-border:#7a766d;--color-notte-glow:#cdb488;--color-notte-on-accent:#17120a;--color-notte-page-bg:#08080a;--color-notte-success:#6fd8a2;--color-notte-surface:#131316;--color-notte-surface-raised:#1c1c20;--color-notte-text:#f6f3ec;--color-notte-text-secondary:#a8a49b;--color-notte-warning:#f0c064;--color-on-accent:#fbfaf8;--color-page-bg:#fbfaf8;--color-success:#146c43;--color-surface:#f2f0ec;--color-surface-raised:#fff;--color-text:#141414;--color-text-secondary:#6b6965;--color-warning:#8a5a00;--font-body:-apple-system, BlinkMacSystemFont, SF Pro Display, Figtree, Helvetica Neue, sans-serif;--font-serif:Instrument Serif, New York, Georgia, serif;--size-admin-body:14px;--size-admin-title:22px;--size-caption:13px;--size-kiosk-action:24px;--size-kiosk-body:24px;--size-kiosk-display:96px;--size-kiosk-eyebrow:15px;--size-kiosk-title:56px;--size-luxury-display:104px;--size-phone-body:17px;--size-phone-title:32px;--weight-medium:500;--weight-regular:400;--weight-strong:600;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--space-24:96px;--radius-full:999px;--radius-lg:32px;--radius-md:20px;--radius-sm:10px;--min-target:64px}body{margin:0}.kiosk{--role-bg:var(--color-page-bg);--role-surface:var(--color-surface);--role-text:var(--color-text);--role-text-secondary:var(--color-text-secondary);--role-border:var(--color-border);--role-field-border:var(--color-field-border);--role-accent:var(--color-accent);--role-on-accent:var(--color-on-accent);--role-error:var(--color-error);--kiosk-accent:var(--kiosk-accent-override,var(--role-accent));box-sizing:border-box;background:var(--role-bg);height:100dvh;color:var(--role-text);font-family:var(--font-body);font-size:var(--size-kiosk-body);font-weight:var(--weight-regular);overflow:hidden}.kiosk[data-theme=notte]{--role-bg:var(--color-notte-page-bg);--role-surface:var(--color-notte-surface);--role-text:var(--color-notte-text);--role-text-secondary:var(--color-notte-text-secondary);--role-border:var(--color-notte-border);--role-field-border:var(--color-notte-field-border);--role-accent:var(--color-notte-accent);--role-on-accent:var(--color-notte-on-accent);--role-error:var(--color-notte-error)}.kiosk[data-theme=festa]{--role-bg:var(--color-festa-page-bg);--role-surface:var(--color-festa-surface);--role-text:var(--color-festa-text);--role-text-secondary:var(--color-festa-text-secondary);--role-border:var(--color-festa-border);--role-field-border:var(--color-festa-field-border);--role-accent:var(--color-festa-accent);--role-on-accent:var(--color-festa-on-accent)}.kiosk *,.kiosk :before,.kiosk :after{box-sizing:border-box}.kiosk-failure{padding:var(--space-8);color:var(--role-error);place-items:center;display:grid}.kiosk-screen[data-bright=true]{--role-bg:var(--color-capture-light);--role-text:var(--color-capture-text);--role-text-secondary:var(--color-text-secondary);--role-border:var(--color-border);--role-field-border:var(--color-field-border);--role-surface:var(--color-surface);--role-shadow:color-mix(in srgb, var(--color-capture-text) 16%, var(--color-capture-light));--role-shadow-faint:color-mix(in srgb, var(--color-capture-text) 8%, var(--color-capture-light));background:var(--role-bg);color:var(--role-text)}.kiosk-screen{gap:var(--space-6);height:100%;padding:var(--space-8) var(--space-12) var(--space-6);background:var(--role-bg);color:var(--role-text);animation:ds-enter var(--dur-base) var(--ease-spring) both;flex-direction:column;display:flex}.kiosk-screen[data-orientation=landscape]{gap:var(--space-4);padding:var(--space-6) var(--space-8)}.kiosk-head{align-items:center;gap:var(--space-3);text-align:center;flex-direction:column;display:flex}.kiosk-screen[data-orientation=landscape] .kiosk-head{grid-template-columns:1fr auto 1fr;align-items:center;display:grid}.kiosk-logo{min-height:var(--space-8);justify-self:start}.kiosk-logo img{max-height:var(--space-16);max-width:100%;display:block}.kiosk-title{font-family:var(--font-body);font-size:var(--size-kiosk-title);font-weight:var(--weight-medium);letter-spacing:-.022em;margin:0;line-height:1.08}.kiosk-screen[data-orientation=landscape] .kiosk-title{font-size:var(--size-phone-title)}.kiosk-stage{flex:1;min-height:0;position:relative}.kiosk-view{border-radius:var(--radius-lg);background:var(--role-surface);height:100%;position:relative;overflow:hidden}.kiosk-video,.kiosk-photo{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.kiosk-oval{aspect-ratio:3/4;border:3px solid var(--color-capture-light);max-width:90%;height:80%;box-shadow:0 0 0 100vmax color-mix(in srgb, var(--color-capture-text) 30%, transparent);pointer-events:none;border-radius:50%;animation:.4s cubic-bezier(.34,1.4,.64,1) both kiosk-enter;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.kiosk-count{animation:.6s cubic-bezier(.34,1.4,.64,1) both kiosk-pop;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.kiosk-notice{place-content:center;justify-items:center;gap:var(--space-6);height:100%;padding:var(--space-8);text-align:center;display:grid}.kiosk-notice p{color:var(--role-text-secondary);margin:0}.kiosk-view-notice{left:var(--space-6);right:var(--space-6);bottom:var(--space-6);justify-items:center;gap:var(--space-3);text-align:center;display:grid;position:absolute}.kiosk-error{left:var(--space-4);right:var(--space-4);bottom:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--color-capture-light);color:var(--color-error);font-size:var(--size-caption);text-align:center;margin:0;position:absolute}.kiosk-actions{gap:var(--space-4);display:flex}.kiosk-actions>.ds-button{flex:2;padding:0}.kiosk-actions>.ds-button--quiet{flex:1}@keyframes kiosk-enter{0%{opacity:0;transform:translate(-50%,-50%)scale(.94)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes kiosk-pop{0%{opacity:0;transform:translate(-50%,-50%)scale(.8)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}@keyframes kiosk-fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){.kiosk-screen{animation:ds-fade var(--dur-fast) var(--ease-out) both}.kiosk-oval,.kiosk-count{animation:.15s linear both kiosk-fade}}.kiosk{--ease-spring:linear(0, .009, .035 2.1%, .141 4.4%, .723 12.9%, .938 16.7%, 1.017, 1.077, 1.121, 1.149 24.3%, 1.159, 1.163, 1.161, 1.154 29.9%, 1.129 32.8%, 1.051 39.6%, 1.017 43.1%, .991, .977 51%, .974 53.8%, .975 57.1%, .997 69.8%, 1.003 76.9%, 1);--ease-out:cubic-bezier(.22, 1, .36, 1);--dur-fast:.18s;--dur-base:.42s;--dur-slow:.9s;--role-surface-raised:var(--color-surface-raised);--role-glow:var(--color-glow);--role-success:var(--color-success);--role-warning:var(--color-warning);--role-on-photo:var(--color-capture-light);--role-shadow:color-mix(in srgb, var(--role-text) 16%, var(--role-bg));--role-shadow-faint:color-mix(in srgb, var(--role-text) 8%, var(--role-bg));--touch-large:calc(var(--space-16) + var(--space-2));--role-accent-live:var(--kiosk-accent,var(--role-accent));--role-on-accent-live:var(--kiosk-on-accent-override,var(--role-on-accent))}.kiosk,.kiosk-screen[data-bright=true]{--shadow-soft:0 var(--space-1) var(--space-2) var(--role-shadow-faint), 0 var(--space-2) var(--space-6) var(--role-shadow);--shadow-lift:0 var(--space-2) var(--space-4) var(--role-shadow-faint), 0 var(--space-6) var(--space-12) var(--role-shadow), 0 var(--space-12) var(--space-24) var(--role-shadow-faint)}.kiosk[data-theme=notte]{--role-surface-raised:var(--color-notte-surface-raised);--role-glow:var(--color-notte-glow);--role-success:var(--color-notte-success);--role-warning:var(--color-notte-warning)}.kiosk[data-theme=festa]{--role-surface-raised:var(--color-festa-surface-raised);--role-glow:var(--color-festa-glow)}:where(.kiosk,.welcome) :where(button,input,select,textarea){font:inherit;letter-spacing:inherit}.ds-eyebrow{color:var(--role-text-secondary);font-size:var(--size-kiosk-eyebrow);font-weight:var(--weight-strong);letter-spacing:.14em;text-transform:uppercase;margin:0}.ds-display{color:var(--role-on-photo);font-size:var(--size-kiosk-display);font-weight:var(--weight-medium);letter-spacing:-.03em;margin:0;line-height:1.02}.kiosk[data-theme=notte] .ds-display{font-family:var(--font-serif);font-size:var(--size-luxury-display);font-weight:var(--weight-regular);letter-spacing:-.015em}.kiosk[data-theme=notte] .kiosk-title{font-family:var(--font-serif);font-weight:var(--weight-regular)}.ds-button{min-height:var(--touch-large);padding:0 var(--space-12);border-radius:var(--radius-full);background:var(--role-accent-live);color:var(--role-on-accent-live);font-family:var(--font-body);font-size:var(--size-kiosk-action);font-weight:var(--weight-strong);letter-spacing:-.005em;cursor:pointer;box-shadow:var(--shadow-soft);transition:transform var(--dur-base) var(--ease-spring), opacity var(--dur-fast) var(--ease-out);border:0;position:relative}.ds-button--quiet{background:var(--role-surface);color:var(--role-text);box-shadow:none}.ds-button:active:not(:disabled){transform:scale(.96)}.ds-button:disabled{opacity:.35;cursor:default;box-shadow:none}.ds-button:focus-visible,.ds-pill:focus-visible,.ds-card:focus-visible,.ds-choice:focus-visible,.ds-check:focus-visible,.ds-key:focus-visible{outline:3px solid var(--role-accent-live);outline-offset:var(--space-1)}.ds-pill{min-height:var(--touch-large);padding:0 var(--space-12);border:1px solid var(--role-on-photo);border-radius:var(--radius-full);color:var(--role-on-photo);font-family:var(--font-body);font-size:var(--size-kiosk-action);font-weight:var(--weight-medium);cursor:pointer;isolation:isolate;background:0 0;position:relative}.ds-pill:before,.ds-pill:after{content:"";z-index:-1;border-radius:inherit;position:absolute;inset:0}.ds-pill:before{-webkit-backdrop-filter:blur(24px)saturate(160%);backdrop-filter:blur(24px)saturate(160%)}.ds-pill:after{background:var(--role-on-photo);opacity:.2;animation:3.6s ease-in-out infinite ds-glow}.ds-card{border-radius:var(--radius-lg);background:var(--role-surface-raised);min-width:0;min-height:0;color:var(--role-text);font-family:var(--font-body);font-size:var(--size-kiosk-body);font-weight:var(--weight-medium);text-align:left;cursor:pointer;box-shadow:var(--shadow-soft);transition:transform var(--dur-base) var(--ease-spring);border:0;flex-direction:column;padding:0;display:flex;position:relative;overflow:hidden}.ds-card:active{transform:scale(.97)}.ds-card[aria-pressed=true]{transform:translateY(calc(var(--space-2) * -1)) scale(1.04);box-shadow:0 0 0 2px var(--role-accent-live), 0 0 var(--space-16) var(--role-glow), var(--shadow-lift)}.ds-card__image{object-fit:cover;background:var(--role-surface);flex:1;width:100%;min-height:0}.ds-card__label{padding:var(--space-4) var(--space-6)}.ds-card__check{top:var(--space-4);right:var(--space-4);width:var(--space-12);height:var(--space-12);border-radius:var(--radius-full);background:var(--role-accent-live);color:var(--role-on-accent-live);place-items:center;display:grid;position:absolute}.ds-choice{width:100%;min-height:var(--min-target);padding:0 var(--space-8);border:1px solid var(--role-border);border-radius:var(--radius-md);background:var(--role-surface-raised);color:var(--role-text);font-family:var(--font-body);font-size:var(--size-kiosk-body);font-weight:var(--weight-regular);cursor:pointer;box-shadow:var(--shadow-soft);transition:transform var(--dur-base) var(--ease-spring);justify-content:space-between;align-items:center;display:flex}.ds-choice[aria-pressed=true]{border-color:var(--role-accent-live);box-shadow:inset 0 0 0 1px var(--role-accent-live), 0 0 var(--space-8) var(--role-glow)}.ds-field{gap:var(--space-2);color:var(--role-text-secondary);font-size:var(--size-phone-body);font-weight:var(--weight-medium);flex-direction:column;display:flex}.ds-field input{min-height:calc(var(--space-16) + var(--space-3));padding:0 var(--space-6);border:1px solid var(--role-field-border);border-radius:var(--radius-md);background:var(--role-surface-raised);color:var(--role-text);font-family:var(--font-body);font-size:var(--size-kiosk-body);font-weight:var(--weight-regular)}.ds-field input:focus-visible{outline:3px solid var(--role-accent-live);outline-offset:var(--space-1)}.ds-field[data-invalid=true] input{border-color:var(--role-error)}.ds-select{display:flex;position:relative}.ds-select:after{content:"▾";top:50%;right:var(--space-6);color:var(--role-text-secondary);font-size:var(--size-kiosk-body);pointer-events:none;position:absolute;transform:translateY(-50%)}.ds-field select{appearance:none;width:100%;min-height:calc(var(--space-16) + var(--space-3));padding:0 var(--space-16) 0 var(--space-6);border:1px solid var(--role-field-border);border-radius:var(--radius-md);background:var(--role-surface-raised);color:var(--role-text);font-family:var(--font-body);font-size:var(--size-kiosk-body);font-weight:var(--weight-regular)}.ds-field select:focus-visible{outline:3px solid var(--role-accent-live);outline-offset:var(--space-1)}.ds-field[data-invalid=true] select{border-color:var(--role-error)}.ds-options{gap:var(--space-3);flex-wrap:wrap;display:flex}.ds-option{align-items:center;gap:var(--space-3);min-height:var(--min-target);padding:0 var(--space-6);border:1px solid var(--role-field-border);border-radius:var(--radius-full);background:var(--role-surface-raised);color:var(--role-text);font-family:var(--font-body);font-size:var(--size-kiosk-body);font-weight:var(--weight-regular);cursor:pointer;display:flex}.ds-option:focus-visible{outline:3px solid var(--role-accent-live);outline-offset:var(--space-1)}.ds-option__mark{width:var(--space-6);height:var(--space-6);border:2px solid var(--role-field-border);color:var(--role-on-accent-live);flex:none;place-items:center;display:grid}.ds-option--radio .ds-option__mark{border-radius:var(--radius-full)}.ds-option--box .ds-option__mark{border-radius:var(--space-1);font-size:var(--size-kiosk-eyebrow)}.ds-option[aria-checked=true]{border-color:var(--role-accent-live);box-shadow:inset 0 0 0 1px var(--role-accent-live)}.ds-option[aria-checked=true] .ds-option__mark{border-color:var(--role-accent-live);background:var(--role-accent-live)}.ds-option--radio[aria-checked=true] .ds-option__mark{box-shadow:inset 0 0 0 var(--space-1) var(--role-surface-raised)}.ds-field[data-invalid=true] .ds-option{border-color:var(--role-error)}.ds-check{align-items:center;gap:var(--space-4);width:100%;min-height:var(--min-target);padding:0 var(--space-6);border:1px solid var(--role-border);border-radius:var(--radius-md);background:var(--role-surface-raised);color:var(--role-text);font-family:var(--font-body);font-size:var(--size-phone-body);text-align:left;cursor:pointer;display:flex}.ds-check__box{width:var(--space-8);height:var(--space-8);border:2px solid var(--role-field-border);border-radius:var(--radius-sm);flex:none;place-items:center;display:grid}.ds-check[aria-pressed=true] .ds-check__box{border-color:var(--role-accent-live);background:var(--role-accent-live);color:var(--role-on-accent-live)}.ds-capture{background:var(--color-capture-light);color:var(--color-capture-text)}.ds-lens{width:calc(var(--space-24) + var(--space-16));aspect-ratio:1;border-radius:var(--radius-full);background:var(--color-capture-text);box-shadow:var(--shadow-lift);place-items:center;display:grid;position:relative}.ds-count{color:var(--color-capture-light);font-size:var(--size-kiosk-display);font-weight:var(--weight-regular);animation:ds-count 1s var(--ease-out) infinite;line-height:1}.ds-wait{place-content:center;justify-items:center;gap:var(--space-8);text-align:center;height:100%;display:grid;position:relative}.ds-aurora{background:radial-gradient(35% 35% at 50% 42%, var(--role-glow) 0%, transparent 70%);opacity:.55;pointer-events:none;animation:4s ease-in-out infinite ds-breathe;position:absolute;inset:-30%}.ds-wait>:not(.ds-aurora){position:relative}.ds-orb{width:calc(var(--space-16) * 2);height:calc(var(--space-16) * 2);border-radius:var(--radius-full);background:var(--role-accent-live);box-shadow:0 0 var(--space-24) var(--role-glow);animation:2.8s ease-in-out infinite ds-breathe}.ds-orb--small{width:var(--space-16);height:var(--space-16);box-shadow:0 0 var(--space-8) var(--role-glow)}.ds-result{justify-content:center;align-items:center;gap:var(--space-8);display:flex}.ds-result__image{border-radius:var(--radius-lg);box-shadow:var(--shadow-lift);object-fit:cover}.ds-glasscard{gap:var(--space-4);padding:var(--space-6);border:1px solid var(--role-border);border-radius:var(--radius-lg);background:var(--role-surface-raised);box-shadow:var(--shadow-soft);flex-direction:column;display:flex}.ds-keypad{grid-template-columns:repeat(3, var(--space-24));gap:var(--space-4);width:max-content;display:grid}.ds-key{height:var(--space-24);border:1px solid var(--role-border);border-radius:var(--radius-full);background:var(--role-surface-raised);color:var(--role-text);font-family:var(--font-body);font-size:var(--size-kiosk-title);font-weight:var(--weight-regular);cursor:pointer;box-shadow:var(--shadow-soft);transition:transform var(--dur-base) var(--ease-spring)}.ds-key:active{transform:scale(.92)}.ds-notice{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-6);border:1px solid var(--role-border);border-radius:var(--radius-full);background:var(--role-surface-raised);color:var(--role-text);font-size:var(--size-phone-body);font-weight:var(--weight-medium);box-shadow:var(--shadow-soft);display:inline-flex;position:relative}.ds-notice svg{color:var(--role-warning);flex:none}.ds-notice--rotate{border-color:var(--role-on-photo);background:var(--color-capture-text);color:var(--role-on-photo)}.ds-notice--rotate svg{color:var(--role-on-photo);animation:ds-turn 2.4s var(--ease-spring) infinite}.ds-enter{animation:ds-enter var(--dur-base) var(--ease-spring) both}@keyframes ds-enter{0%{opacity:0;transform:translateY(var(--space-4)) scale(.98)}to{opacity:1;transform:none}}@keyframes ds-fade{0%{opacity:0}to{opacity:1}}@keyframes ds-glow{0%,to{opacity:.2}50%{opacity:.36}}@keyframes ds-turn{0%,30%{transform:rotate(0)}70%,to{transform:rotate(90deg)}}@keyframes ds-breathe{0%,to{opacity:.7;transform:scale(.88)}50%{opacity:1;transform:scale(1)}}@keyframes ds-count{0%{opacity:0;transform:scale(1.25)}35%{opacity:1}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.ds-pill:after,.ds-orb,.ds-aurora,.ds-count,.ds-notice--rotate svg{animation:none}.ds-enter{animation:ds-fade var(--dur-fast) var(--ease-out) both}.ds-button,.ds-card,.ds-choice,.ds-key{transition:none}}.kiosk-progress{order:1}.kiosk-screen[data-orientation=portrait] .kiosk-head .kiosk-title{order:2}.kiosk-screen[data-orientation=landscape] .kiosk-progress{order:0;justify-self:end}.kiosk-step-stage{justify-content:center;gap:var(--space-4);height:100%;padding:var(--space-2);flex-direction:column;display:flex}.kiosk-screen[data-orientation=landscape] .kiosk-step-stage--fields{grid-template-columns:repeat(2,minmax(0,1fr));align-content:center;display:grid}.kiosk-step-stage--gallery{gap:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);display:grid}.kiosk-screen[data-orientation=landscape] .kiosk-step-stage--gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.kiosk-step-stage--options{align-items:stretch}.kiosk-screen[data-orientation=landscape] .kiosk-step-stage--options{flex-direction:row;align-items:stretch}.kiosk-step-stage--options>*{flex:1}.kiosk-placeholder-note{color:var(--role-text-secondary);text-align:center;margin:0}.kiosk-summary{gap:var(--space-4);flex-direction:column;flex:1;height:100%;min-height:0;display:flex}.kiosk-summary-grid{grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(var(--multi-count), minmax(0, 1fr));gap:var(--space-4);flex:1;min-height:0;display:grid}.kiosk-screen[data-orientation=landscape] .kiosk-summary-grid{grid-template-columns:repeat(var(--multi-count), minmax(0, 1fr));gap:var(--space-6);grid-template-rows:minmax(0,1fr)}.kiosk-summary-grid>*{min-height:0}.kiosk-summary-grid[data-locked=true]>*{pointer-events:none}.station-stage{justify-content:center;align-items:center;gap:var(--space-6);height:100%;padding:var(--space-6);flex-direction:column;display:flex}.station-form{gap:var(--space-4);text-align:left;flex-direction:column;width:80%;display:flex}.kiosk-screen[data-orientation=landscape] .station-form{width:60%}.station-field{gap:var(--space-2);flex-direction:column;display:flex}.station-label{color:var(--role-text-secondary);font-size:var(--size-phone-body);font-weight:var(--weight-medium)}.station-choices{gap:var(--space-4);display:flex}.station-choices>*{flex:1}.station-error{color:var(--role-error);font-size:var(--size-phone-body);font-weight:var(--weight-medium);margin:0}.station-unlock{justify-content:center;align-items:center;gap:var(--space-6);height:100%;padding:var(--space-4);flex-direction:column;display:flex}.kiosk-screen[data-orientation=landscape] .station-unlock{gap:var(--space-12);flex-direction:row}.station-unlock__code{gap:var(--space-3);width:calc(var(--space-24) * 3 + var(--space-4) * 2);flex-direction:column;align-items:center;display:flex}.station-code{width:100%;min-height:var(--space-16);border:1px solid var(--role-field-border);border-radius:var(--radius-md);background:var(--role-surface-raised);color:var(--role-text);font-size:var(--size-kiosk-title);letter-spacing:.1em;justify-content:center;align-items:center;display:flex}.station-code[data-invalid=true]{border-color:var(--role-error)}.station-keys[data-locked=true]{opacity:.4;pointer-events:none}.station-area{justify-content:center;gap:var(--space-6);height:100%;padding:var(--space-6);flex-direction:column;display:flex}.kiosk-screen[data-orientation=landscape] .station-area{flex-direction:row;align-items:center}.kiosk-screen[data-orientation=landscape] .station-area__column{flex:1}.station-area__column{gap:var(--space-4);flex-direction:column;flex:none;min-width:0;display:flex}.station-list{border-radius:var(--radius-md);background:var(--role-surface-raised);margin:0}.station-list__row{justify-content:space-between;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--role-border);display:flex}.station-list__row:last-child{border-bottom:0}.station-list dt{color:var(--role-text-secondary)}.station-list dd{font-weight:var(--weight-strong);margin:0}.welcome{background:var(--color-capture-text);height:100%;color:var(--color-capture-light);font-family:var(--font-body);font-size:var(--size-kiosk-body);font-weight:var(--weight-regular);display:flex;position:relative;overflow:hidden}.welcome__image{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.welcome__scrim{background:linear-gradient(180deg, color-mix(in srgb, var(--color-capture-text) 25%, transparent) 0%, transparent 35%, transparent 45%, color-mix(in srgb, var(--color-capture-text) 65%, transparent) 100%);position:absolute;inset:0}.welcome__content{z-index:1;justify-content:space-between;align-items:center;gap:var(--space-6);min-height:0;padding:var(--space-12);text-align:center;flex-direction:column;flex:1;display:flex;position:relative}.welcome[data-orientation=landscape] .welcome__content{padding:var(--space-8)}.welcome__top,.welcome__bottom{align-items:center;gap:var(--space-6);flex-direction:column;max-width:100%;display:flex}.welcome__bottom{gap:var(--space-8);animation:ds-enter var(--dur-slow) var(--ease-spring) both}.welcome[data-orientation=landscape] .ds-display{font-size:var(--size-kiosk-title)}.welcome__title{overflow-wrap:anywhere}.welcome__subtitle{font-size:var(--size-kiosk-body);font-weight:var(--weight-regular);overflow-wrap:anywhere;margin:0}.welcome__logo{min-width:var(--min-target);min-height:var(--min-target);padding:var(--space-1) var(--space-3);color:inherit;font:inherit;touch-action:manipulation;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:0 0;border:0}.welcome__logo img{max-width:calc(var(--space-24) * 3);max-height:var(--space-16);pointer-events:none;display:block}.welcome__slot:empty{display:none}@media (prefers-reduced-motion:reduce){.welcome__bottom{animation:ds-fade var(--dur-fast) var(--ease-out) both}}.kiosk-step-stage.kiosk-choice-gallery{justify-content:stretch;gap:var(--space-4);flex-direction:column;display:flex}.kiosk-choice-grid{gap:var(--space-4);flex:1;grid-template-rows:repeat(3,minmax(0,1fr));grid-template-columns:repeat(2,minmax(0,1fr));min-height:0;display:grid}.kiosk-choice-grid .ds-card[aria-pressed=true]{transform:scale(1.02)}.kiosk-screen[data-orientation=landscape] .kiosk-choice-grid{grid-template-rows:repeat(2,minmax(0,1fr));grid-template-columns:repeat(3,minmax(0,1fr))}.kiosk-choice-grid>*{min-height:0}.kiosk-choice-pager{justify-content:center;align-items:center;gap:var(--space-6);display:flex}.kiosk-choice-dots{gap:var(--space-3);display:flex}.kiosk-choice-dot{width:var(--space-3);height:var(--space-3);border-radius:var(--radius-full);background:var(--role-border)}.kiosk-choice-dot[data-current=true]{background:var(--role-accent-live)}.kiosk-step-stage.kiosk-choice-options{justify-content:stretch;align-items:stretch;gap:var(--space-4);flex-direction:column;display:flex}.kiosk-screen[data-orientation=landscape] .kiosk-step-stage.kiosk-choice-options{flex-direction:row}.kiosk-step-stage.kiosk-choice-options>*{border-radius:var(--radius-lg);text-align:center;min-width:0;min-height:0;font-size:var(--size-phone-title);font-weight:var(--weight-medium);letter-spacing:-.015em;flex:1;justify-content:center}.kiosk-step-stage.kiosk-step-stage--consent{justify-content:flex-start;min-height:0}.kiosk-screen[data-orientation=landscape] .kiosk-step-stage--consent{gap:var(--space-6);grid-template-columns:repeat(auto-fit,minmax(0,1fr));align-items:stretch;display:grid}.kiosk-screen[data-orientation=landscape] .kiosk-consent-list{align-self:center}.kiosk-policy{gap:var(--space-4);min-height:0;padding:var(--space-6);border-radius:var(--radius-md);background:var(--role-surface);color:var(--role-text);font-family:var(--font-body);font-size:var(--size-phone-body);text-align:left;cursor:pointer;border:0;flex-direction:column;flex:1;line-height:1.6;display:flex}.kiosk-policy__text{-webkit-line-clamp:9;-webkit-box-orient:vertical;flex:1;margin:0;display:-webkit-box;overflow:hidden}.kiosk-screen[data-orientation=landscape] .kiosk-policy__text{-webkit-line-clamp:12}.kiosk-policy__more{flex:none}.kiosk-policy--open{cursor:default}.kiosk-policy--open .kiosk-policy__text{display:block;overflow-y:auto}.kiosk-consent-list{justify-content:center;align-items:flex-start;gap:var(--space-4);flex-direction:column;flex:none;display:flex}.kiosk-consent-row{width:100%}.kiosk-consent-row[data-missing=true] .ds-check{border-color:var(--role-error)}.kiosk-screen[data-screen=S03]{height:calc(100% - var(--keyboard-inset,0px))}.kiosk-step-stage.kiosk-step-stage--form{justify-content:flex-start;overflow-y:auto}.kiosk-form{gap:var(--space-4);flex-direction:column;display:flex}.kiosk-screen[data-orientation=landscape] .kiosk-form{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:column;grid-template-rows:repeat(var(--form-rows,1), auto);gap:var(--space-4) var(--space-6);align-content:start;display:grid}.kiosk-form-cell{align-items:flex-start;gap:var(--space-2);flex-direction:column;display:flex}.kiosk-form-cell .ds-field{align-self:stretch}.kiosk-screen--bare{justify-content:stretch;overflow:hidden}.kiosk-note{color:var(--role-text-secondary);font-size:var(--size-kiosk-body);margin:0}.ds-result.kiosk-result{height:100%;padding:var(--space-2) var(--space-2) var(--space-4);flex-direction:column;align-items:stretch}.kiosk-screen[data-orientation=landscape] .ds-result.kiosk-result{gap:var(--space-8);flex-direction:row}.kiosk-result-image{object-fit:contain;background:var(--role-surface);flex:1;width:100%;min-width:0;min-height:0}.kiosk-screen[data-orientation=landscape] .kiosk-result-image{flex:1.5}.kiosk-result>.kiosk-result-qr{padding:var(--space-4) var(--space-6);align-items:center;gap:var(--space-6);font-weight:var(--weight-medium);flex-direction:row}.kiosk-screen[data-orientation=landscape] .kiosk-result>.kiosk-result-qr{text-align:center;flex-direction:column;flex:1;justify-content:center}.kiosk-result-caption{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}.kiosk-result-link{max-width:100%;color:inherit;font-size:var(--size-caption);overflow-wrap:anywhere;word-break:break-all}.kiosk-qr{width:calc(var(--space-24) + var(--space-16));height:calc(var(--space-24) + var(--space-16));padding:var(--space-2);border-radius:var(--radius-sm);background:var(--color-capture-light);flex:none;display:block}.kiosk-screen[data-orientation=landscape] .kiosk-qr{width:calc(var(--space-16) * 4);height:calc(var(--space-16) * 4);padding:var(--space-4)}.kiosk-qr-light{fill:var(--color-capture-light)}.kiosk-qr-dark{fill:var(--color-capture-text)}.kiosk-screen[data-screen=S12] .kiosk-head>.kiosk-title:empty{display:none}.kiosk-network{justify-content:center;align-items:center;gap:var(--space-6);text-align:center;flex-direction:column;height:100%;min-height:0;display:flex}.kiosk-network-orb{aspect-ratio:1;flex:none;width:30%;height:auto;max-height:50%}.kiosk-screen[data-orientation=landscape] .kiosk-network-orb{width:18%}.kiosk-network-body{width:60%;color:var(--role-text-secondary);margin:0}.download-screen{background:var(--color-page-bg);min-height:100dvh;color:var(--color-text);font-family:var(--font-body);font-size:var(--size-phone-body);font-weight:var(--weight-regular);flex-direction:column;display:flex}.download-head{align-items:center;gap:var(--space-3);padding:var(--space-6) var(--space-4) var(--space-3);flex-direction:column;display:flex}.download-logo{max-height:var(--space-12);object-fit:contain;max-width:100%}.download-title{font-size:var(--size-phone-title);font-weight:var(--weight-strong);text-align:center;margin:0}.download-stage{justify-content:center;align-items:center;gap:var(--space-3);min-height:0;padding:var(--space-4);flex-direction:column;flex:1;display:flex}.download-centered{gap:var(--space-4);text-align:center}.download-body{color:var(--color-text-secondary);margin:0}.download-image{object-fit:contain;border-radius:var(--radius-md);background:var(--color-surface);max-width:100%;min-height:0;max-height:100%;display:block}.download-image-loading{aspect-ratio:3/4;width:100%;animation:1.4s ease-in-out infinite download-pulse}.download-expiry{color:var(--color-text-secondary);font-size:var(--size-caption);margin:0}.download-actions{gap:var(--space-3);padding:var(--space-4);display:flex}.download-button{min-height:var(--min-target);border:1px solid var(--color-field-border);border-radius:var(--radius-full);font-family:inherit;font-size:var(--size-phone-body);font-weight:var(--weight-medium);cursor:pointer;flex:1}.download-button.secondary{background:var(--color-surface-raised);color:var(--color-text)}.download-button.primary{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-on-accent)}.download-button:disabled{opacity:.5;cursor:default}@keyframes download-pulse{50%{opacity:.5}}@media (prefers-reduced-motion:reduce){.download-image-loading{animation:none}}.preview-frame{position:relative;overflow:hidden}.preview-stage{transform-origin:0 0;position:absolute;top:0;left:0}.preview-stage .kiosk{height:100%}.preview-stage img[data-missing]{visibility:hidden}
