:root{--void:#04060d;--deep:#0a1330;--halo:#16305f;--brand-blue:#163d96;--brand-red:#e90026;--ink:#fff;--ink-soft:#d6e6ffc7;--ink-dim:#bed6ff94;--ink-faint:#aac6f557;--glass:#ffffff13;--glass-strong:#ffffff1f;--line:#ffffff2e;--line-soft:#ffffff17;--good:#6fe3ad;--font-display:system-ui, -apple-system, "SF Pro Display", "Helvetica Neue", sans-serif;--font-mono:ui-monospace, "SF Mono", SFMono-Regular, Menlo, monospace;--ease:cubic-bezier(.22, .61, .36, 1);--step:clamp(8px, 1.1vw, 14px);--vstep:clamp(7px, 1.5vh, 16px);--gutter:clamp(24px, 4vw, 64px);--radius:16px}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--void);height:100%;color:var(--ink);font-family:var(--font-display);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;overscroll-behavior:none;margin:0;font-weight:300;overflow:hidden}#bg{z-index:0;pointer-events:none;width:100%;height:100%;display:block;position:fixed;top:0;bottom:0;left:0;right:0}#app{z-index:1;row-gap:var(--vstep);padding:var(--gutter);grid-template-rows:auto 1fr auto auto;padding-top:clamp(18px,3vh,34px);display:grid;position:fixed;top:0;bottom:0;left:0;right:0}#masthead{justify-content:center;align-items:flex-start;display:flex}#logo{-webkit-touch-callout:none;-webkit-user-drag:none;cursor:default;filter:drop-shadow(0 4px 22px #0000008c);opacity:0;width:clamp(112px,min(13vw,19vh),190px);height:auto;animation:logo-in .9s var(--ease) .12s forwards}@keyframes logo-in{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:none}}#screen{-webkit-overflow-scrolling:touch;place-items:center;min-height:0;display:grid;position:relative;overflow:hidden auto}.screen-inner{align-items:center;gap:calc(var(--vstep) * 1.7);width:min(100%,940px);animation:screen-in .32s var(--ease) both;flex-direction:column;display:flex}@keyframes screen-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}.rail-badge{left:var(--gutter);bottom:calc(var(--gutter) * .5);z-index:30;font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:#1a1206;pointer-events:none;background:#ffb454;border-radius:999px;padding:4px 12px;font-size:clamp(8px,.85vw,11px);font-weight:600;position:fixed}.rail-badge[hidden]{display:none}.employee-login{right:max(18px, env(safe-area-inset-right));bottom:max(12px, env(safe-area-inset-bottom));z-index:25;border:1px solid var(--line-soft);min-height:44px;color:var(--ink-soft);background:#04060de6;border-radius:999px;align-items:center;gap:8px;padding:10px 14px;font-size:13px;font-weight:450;text-decoration:none;display:inline-flex;position:fixed}.employee-login:hover{background:var(--deep);border-color:var(--line)}.employee-login:focus-visible{outline-offset:3px;outline:2px solid #7fb0ff}#app{padding-bottom:max(66px, calc(env(safe-area-inset-bottom) + 54px))}.rail-badge{text-overflow:ellipsis;white-space:nowrap;max-width:calc(100vw - 220px);overflow:hidden}.display{letter-spacing:-.025em;text-align:center;margin:0;font-size:clamp(28px,4.4vw,58px);font-weight:200;line-height:1.08}.display strong{font-weight:500}.lede{color:var(--ink-dim);text-align:center;max-width:30ch;margin:0;font-size:clamp(14px,1.5vw,20px);font-weight:300;line-height:1.5}.eyebrow{font-family:var(--font-mono);letter-spacing:.34em;text-transform:uppercase;color:var(--ink-dim);margin:0 0 calc(var(--step) * -.6);text-align:center;font-size:clamp(10px,1.05vw,13px)}.label{font-family:var(--font-mono);letter-spacing:.2em;text-transform:uppercase;color:var(--ink-faint);font-size:clamp(8px,.82vw,11px)}.actions{gap:var(--step);flex-wrap:wrap;justify-content:center;align-items:stretch;display:flex}.btn{font-family:var(--font-display);letter-spacing:-.01em;color:var(--ink);background:var(--glass);border:1px solid var(--line);padding:calc(var(--step) * 1.15) calc(var(--step) * 2.2);cursor:pointer;transition:background .16s var(--ease), transform .16s var(--ease), border-color .16s var(--ease);-webkit-backdrop-filter:blur(10px);border-radius:12px;min-height:56px;font-size:clamp(13px,1.3vw,17px);font-weight:500}.btn:hover{background:var(--glass-strong)}.btn:active{transform:scale(.985)}.btn--primary{background:var(--ink);color:#06101f;border-color:var(--ink);font-weight:600}.btn--primary:hover{background:#e8f0ff}.btn--quiet{color:var(--ink-dim);background:0 0;border-color:#0000;font-weight:400}.btn--footnote{color:var(--ink-faint);letter-spacing:.02em;margin-top:calc(var(--step) * .5);background:0 0;border-color:#0000;font-size:clamp(11px,1.1vw,14px);font-weight:400}.btn--footnote:hover{color:var(--ink-dim);text-underline-offset:4px;background:0 0;text-decoration:underline}.btn--quiet:hover{background:var(--glass);color:var(--ink)}.btn:focus-visible{outline-offset:3px;outline:2px solid #7fb0ff}.field input:focus-visible{outline-offset:3px;outline:2px solid #7fb0ff}.field textarea:focus-visible{outline-offset:3px;outline:2px solid #7fb0ff}.field{text-align:left;flex-direction:column;gap:6px;display:flex}.field>.label{padding-left:2px}.field-label{color:var(--ink-soft);justify-content:space-between;align-items:baseline;gap:12px;padding-left:2px;font-size:clamp(12px,1.25vw,15px);font-weight:400;display:flex}.field-req,.field-opt{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;flex:none;font-size:clamp(8px,.82vw,10px)}.field-req{color:#ffaabebf}.field-opt{color:var(--ink-faint)}.field-hint,.field-error{padding-left:2px;font-size:clamp(10px,1.05vw,12.5px);line-height:1.4}.field-hint{color:var(--ink-faint)}.field-error{color:#ff9aab}.field-error:empty{display:none}.field input,.field textarea{font-family:var(--font-display);color:var(--ink);border:1px solid var(--line);width:100%;transition:border-color .16s var(--ease), background .16s var(--ease);-webkit-user-select:text;user-select:text;background:#ffffff0f;border-radius:11px;padding:13px 15px;font-size:clamp(15px,1.5vw,19px);font-weight:300}.field input::placeholder,.field textarea::placeholder{color:var(--ink-faint)}.field input:focus,.field textarea:focus{background:#ffffff1a;border-color:#8cb9ff99}.field--invalid input,.field--invalid textarea{border-color:#e90026a6}.panel{background:var(--glass);border:1px solid var(--line);border-radius:var(--radius);-webkit-backdrop-filter:blur(14px);padding:calc(var(--vstep) * 1.7) calc(var(--step) * 2);width:100%}.note{color:var(--ink-faint);text-align:center;margin:0;font-size:clamp(11px,1.05vw,13px);line-height:1.5}.error-text{color:#ff9aab;text-align:center;margin:0;font-size:clamp(12px,1.15vw,15px)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}}
