/* Portable build: system-font fallbacks, no external font requests. */
@font-face{font-family:'NERV Display';src:url('./BarlowCondensed-Bold.ttf') format('truetype');font-weight:700;font-style:normal;font-display:swap}
:root{color-scheme:dark;--bg:#101110;--panel:#191b19;--red:#f14436;--muted:#96998f;--line:#34372f;--amber:#e4b965;--text:#eff0e7}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font:16px 'Noto Sans SC',sans-serif;background-image:linear-gradient(#ffffff02 1px,transparent 1px),linear-gradient(90deg,#ffffff02 1px,transparent 1px);background-size:48px 48px}button,input,select{font:inherit}button,a,input,select,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--amber);outline-offset:4px}.hazard{height:7px;background:repeating-linear-gradient(125deg,var(--red) 0 22px,#722a22 22px 25px,#101110 25px 42px)}header{max-width:1440px;padding:28px 56px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);margin:auto}.brand{display:flex;align-items:center;gap:20px;text-decoration:none;font:900 44px 'Barlow Condensed',Impact,sans-serif;letter-spacing:-2px;color:var(--red)}.brand span{border-left:1px solid #5b3027;padding-left:20px;font:12px/1.5 monospace;letter-spacing:1px;color:var(--muted)}.header-right{font:12px monospace;letter-spacing:1px;display:flex;gap:12px;align-items:center}.header-right b{margin-left:24px;border:1px solid var(--line);padding:9px;color:var(--muted)}.dot{width:6px;height:6px;background:var(--amber);box-shadow:0 0 10px #e4b96555}main{max-width:1328px;margin:auto;padding:42px 40px 0}.intro{display:flex;justify-content:space-between;align-items:center}.eyebrow{font:12px monospace;letter-spacing:2px;color:var(--red);margin:0 0 16px}h1{font-size:clamp(32px,3.5vw,48px);letter-spacing:-2px;margin:0;font-weight:900}h1 span{color:var(--red)}.subtitle{color:var(--muted);font-size:15px;margin:14px 0 0}.unit{font:800 100px/.85 'Barlow Condensed',Impact,sans-serif;color:#32352d;display:flex;align-items:center;gap:22px}.unit span{font:12px/1.8 monospace;color:var(--muted);letter-spacing:1px;border-left:2px solid var(--red);padding-left:16px}.protocol{display:flex;gap:32px;padding:24px 0 14px;margin-top:14px;font:12px monospace;letter-spacing:1px;color:var(--muted)}.protocol span:first-child{color:var(--amber)}.workspace{display:grid;grid-template-columns:1fr 74px 1.14fr;align-items:stretch}.panel{border:1px solid var(--line);background:var(--panel);position:relative}.panel:before{content:'';position:absolute;width:25px;height:3px;top:-1px;left:-1px;background:var(--red)}.panel-title{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;border-bottom:1px solid var(--line)}.panel-title span{font:13px monospace;letter-spacing:1px;color:var(--muted)}.panel-title b{font-size:14px;font-weight:500}.fields{padding:24px}.fields label{display:flex;justify-content:space-between;color:#c4c6bc;font-size:14px;margin-bottom:10px}.fields label span{font:12px monospace;color:#777d71}input,select{width:100%;height:52px;border:1px solid #41463a;border-radius:0;background:#111410;color:var(--text);padding:0 14px;transition:border-color .2s}input{font:24px 'Barlow Condensed',monospace}select{font-size:16px}input:hover,select:hover{border-color:#8b8f7f}.two{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:24px}.presets{display:flex;gap:8px;align-items:center;margin-top:18px}.presets span{font-size:12px;color:var(--muted);margin-right:6px}.presets button{background:transparent;color:var(--muted);border:1px solid var(--line);font:13px monospace;padding:6px 12px}.presets button:hover,.presets button.active{color:var(--amber);border-color:#947649;background:#e4b9650b}.source-footer{display:flex;justify-content:space-between;border-top:1px dashed var(--line);padding-top:20px;margin-top:28px;font:12px monospace;color:var(--muted)}.source-footer b{color:var(--amber)}.bridge{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:12px}.bridge button{width:44px;height:44px;border:1px solid #67382d;color:var(--red);background:#211713;font-size:28px}.bridge button:hover{background:var(--red);color:#111}.bridge span{font:12px monospace;letter-spacing:2px;color:var(--muted)}.bridge div{height:55px;width:1px;background:linear-gradient(var(--red),transparent)}.target{background:linear-gradient(135deg,#29231d,#191b19 65%);border-color:#78503a}.target .panel-title{border-color:#503e2e}.target .panel-title span{color:var(--amber)}.target-inputs{display:grid;grid-template-columns:1fr 130px;gap:18px}.result{margin-top:24px;border-left:3px solid var(--red);padding:0 0 0 20px}.result-label{display:flex;align-items:center;justify-content:space-between;font-size:14px;color:#c4c6bc;gap:10px}.result-label span{font:12px monospace;color:var(--amber)}output{display:block;font:600 clamp(48px,5.8vw,80px)/1.25 'Barlow Condensed',monospace;letter-spacing:1px;color:var(--amber);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;padding:8px 0}.result-bottom{display:flex;justify-content:space-between;align-items:center;gap:12px}.result-bottom span{color:var(--muted);font-size:12px}.result-bottom button{background:var(--red);border:0;color:#150b09;padding:10px 16px;font-size:14px;font-weight:700}.result-bottom button:hover{background:#ff6b50}.result-bottom button:disabled{opacity:.4;cursor:not-allowed}.error{font-size:13px;line-height:1.6;color:var(--amber);margin:10px 0 0;min-height:0}.error:empty{display:none}.metrics{display:grid;grid-template-columns:1.25fr 1fr 1fr;border:1px solid var(--line);margin-top:24px;background:#141613}.metrics>div{padding:22px 26px;position:relative}.metrics>div+div{border-left:1px solid var(--line)}.metrics span{font-size:13px;color:var(--muted)}.metrics strong{display:block;font:600 40px 'Barlow Condensed',monospace;margin-top:8px;font-variant-numeric:tabular-nums}.metrics small{font:12px monospace;color:var(--muted)}.metrics p{font-size:12px;color:#797e71;margin:8px 0 0}.ruler{height:13px;margin-top:12px;background:repeating-linear-gradient(90deg,#666d56 0 1px,transparent 1px 10px);border-bottom:1px solid #666d56;mask-image:linear-gradient(90deg,#000,transparent)}details{margin-top:24px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}summary{display:flex;gap:20px;align-items:center;cursor:pointer;list-style:none;padding:20px 0;font-size:14px}summary span{font:12px monospace;color:var(--red)}summary b{margin-left:auto;color:var(--red);font-size:22px}.notes{max-width:920px;font-size:14px;line-height:1.9;color:var(--muted);padding-bottom:16px}.notes a{color:var(--amber)}footer{display:flex;justify-content:space-between;gap:16px;padding:24px 0;color:#818678;font:12px/1.6 monospace}footer b{color:var(--amber);font-weight:400}.calibration{padding:16px;background:#e4b96508;border:1px dashed #85673a;margin-top:20px}.calibration p{font-size:13px;color:var(--amber);line-height:1.7;margin:4px 0 12px}.calibration .two{margin-top:12px}[hidden]{display:none!important}@media(min-width:1600px){main{padding-top:70px}}@media(max-width:900px){header{padding:20px 24px}.header-right b{display:none}main{padding:30px 24px 0}.workspace{grid-template-columns:1fr 50px 1.1fr}.fields{padding:20px}.target-inputs{grid-template-columns:1fr}.unit{font-size:76px}.result-bottom{align-items:flex-start;flex-direction:column}.panel-title{padding:16px}.panel-title span{font-size:12px}footer b{display:none}}@media(max-width:640px){.brand{font-size:36px}.brand span{font-size:10px;padding-left:12px}.header-right{font-size:10px;gap:6px}main{padding:28px 18px 0}.unit{display:none}.eyebrow{font-size:11px}.protocol{gap:12px;flex-wrap:wrap;font-size:11px}.workspace{display:flex;flex-direction:column}.bridge{flex-direction:row;padding:12px}.bridge div{height:1px;width:55px}.bridge button{height:36px;width:44px}.target-inputs{grid-template-columns:1fr 100px}output{font-size:64px}.result-bottom{flex-direction:row;align-items:center}.metrics{grid-template-columns:1fr}.metrics>div+div{border-left:0;border-top:1px solid var(--line)}.metrics>div{padding:18px 22px}.metrics strong{font-size:34px}.metrics .ruler{max-width:240px}summary{gap:10px;flex-wrap:wrap}summary span{font-size:11px}footer{flex-direction:column;gap:5px}}
/* NERV graphic system: offset registration lines, segmented surfaces, restrained motion. */
body{background-color:#0b0d0e;background-image:radial-gradient(ellipse at 90% 18%,#761d1422,transparent 48%),linear-gradient(#ffffff03 1px,transparent 1px),linear-gradient(90deg,#ffffff03 1px,transparent 1px);background-size:auto,48px 48px,48px 48px}
.intro{position:relative;padding:22px 28px 28px;border-left:5px solid var(--red);background:linear-gradient(105deg,#f1443615,transparent 65%);overflow:hidden}
.intro:after{content:'SYNCHRONIZATION';position:absolute;bottom:-14px;right:0;font:900 clamp(32px,6vw,78px) 'Barlow Condensed',sans-serif;letter-spacing:3px;color:#ffffff04;pointer-events:none}
.unit{color:#f1443640;text-shadow:3px 0 #f1443611;position:relative}
.protocol{border-bottom:1px solid #f1443644;margin-bottom:14px}
.panel{box-shadow:inset 0 0 40px #00000025}
.panel:after{content:'';position:absolute;right:-1px;bottom:-1px;width:28px;height:28px;border-right:3px solid var(--red);border-bottom:3px solid var(--red);pointer-events:none}
.panel-title{background:repeating-linear-gradient(120deg,transparent 0 12px,#ffffff02 12px 13px)}
.target{background:radial-gradient(ellipse at right bottom,#f1443615,transparent 70%),#171917}
.result{position:relative;overflow:hidden;background:linear-gradient(90deg,#e4b96508,transparent)}
.result:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,transparent 47%,#e4b9650b 50%,transparent 53%);transform:translateY(-100%);animation:scan 7s linear infinite}
.metrics{border-top:2px solid var(--red)}.distance-control{background:linear-gradient(120deg,#f144360d,transparent);border-left:3px solid var(--red)}
.distance-control label{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:14px;color:#ccd0c5}
.distance-control .editable{color:var(--amber);font:12px monospace}
.distance-row{display:flex;align-items:center;gap:12px;margin:10px 0}
.distance-row input{font:600 42px 'Barlow Condensed',monospace;color:var(--amber);height:60px;min-width:0;width:190px;max-width:65%;border:1px solid #e4b96555;background:#11150f;padding:0 10px}
.distance-row small{font:12px monospace;color:var(--muted)}
#distanceSlider{appearance:none;width:100%;height:18px;background:transparent;padding:0;border:0;accent-color:var(--red);cursor:ew-resize}
#distanceSlider::-webkit-slider-runnable-track{height:3px;background:linear-gradient(90deg,var(--red),#614332)}
#distanceSlider::-webkit-slider-thumb{appearance:none;width:10px;height:18px;background:var(--amber);margin-top:-7px;box-shadow:0 0 12px #e4b96533}
.bridge button{transition:transform .2s,background .2s}.bridge button:hover{transform:rotate(180deg)}
.brand{text-shadow:3px 3px #f144361a}.dot{animation:beacon 3s ease-in-out infinite}
.resync output{animation:sync .4s ease-out}
@keyframes scan{to{transform:translateY(100%)}}
@keyframes beacon{50%{opacity:.4;box-shadow:0 0 18px #e4b96566}}
@keyframes sync{from{opacity:.45;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
@media(max-width:640px){.intro{padding:20px 16px}.distance-row input{font-size:38px}.metrics .distance-control{padding:18px}.intro:after{font-size:34px}}
/* Animated command-deck backdrop, clipped strictly to the masthead. */
header{position:relative;isolation:isolate;overflow:hidden;min-height:146px;background:#100b0c;border-bottom:1px solid #f1443660}
header>.brand,header>.header-right{position:relative;z-index:1}
.brand span{color:#c4b3aa}.header-right{color:#e4cfc0}.header-right b{background:#160d0dbb;border-color:#974132;color:#e4b965}
.command-atmosphere{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 65% 120%,#aa281b65,transparent 65%),linear-gradient(100deg,#090c0eea 8%,#190b0d55 50%,#090c0ed9);overflow:hidden}
.command-grid{position:absolute;inset:-130% -10%;background-image:linear-gradient(#ed503630 1px,transparent 1px),linear-gradient(90deg,#ed503630 1px,transparent 1px);background-size:48px 48px;transform:perspective(350px) rotateX(52deg) rotateZ(-12deg);animation:command-grid 9s linear infinite;mask-image:linear-gradient(90deg,transparent 15%,#000 55%,transparent)}
.command-orbit{position:absolute;width:350px;height:350px;top:-100px;left:57%;border:1px solid #f1443645;border-radius:50%;background:repeating-conic-gradient(from 0deg,#ef503533 0deg 1deg,transparent 1deg 15deg);mask-image:radial-gradient(transparent 59%,#000 60%,#000 62%,transparent 63%,transparent 68%,#000 69%);animation:command-orbit 45s linear infinite}
.command-stream{position:absolute;inset:0;background-image:radial-gradient(circle,#ffad74 1px,transparent 2px),radial-gradient(circle,#f14436 1px,transparent 2px),linear-gradient(155deg,transparent 49.8%,#f1443620 50%,transparent 50.3%);background-size:167px 83px,251px 113px,210px 190px;opacity:.6;mask-image:linear-gradient(90deg,transparent 20%,#000 55%,transparent);animation:command-stream 22s linear infinite}
.command-sweep{position:absolute;top:0;bottom:0;width:25%;background:linear-gradient(100deg,transparent,#f144361c 80%,#ff8c5a45 99%,transparent);transform:skewX(-20deg);animation:command-sweep 8s ease-in-out infinite}
.command-coordinates{position:absolute;left:43%;top:20px;font:9px/1.8 monospace;letter-spacing:2px;color:#e8896270}
.hazard{background-size:84px 100%;animation:command-hazard 6s linear infinite}
@keyframes command-grid{to{background-position:0 48px,0 48px}}
@keyframes command-orbit{to{transform:rotate(360deg)}}
@keyframes command-stream{to{background-position:167px -83px,251px -113px,210px 0}}
@keyframes command-sweep{0%{left:-30%;opacity:0}15%,75%{opacity:1}100%{left:110%;opacity:0}}
@keyframes command-hazard{to{background-position:84px 0}}
.hazard{display:none}
.boot-graphics{display:none;position:absolute;inset:0;overflow:hidden;pointer-events:none}
.boot-running .boot-graphics{display:block}.pilot-gate.boot-running{width:min(1060px,calc(100vw - 32px));background:#080b10;isolation:isolate}
.boot-running .gate-content{margin-left:0;padding:70px 8%;min-height:570px;background:linear-gradient(90deg,#080b10dd,#080b1066)}
.boot-running .gate-art{inset:0;opacity:.25}.boot-running .gate-code,.boot-running .gate-footer{position:relative;z-index:1}
.boot-slice{position:absolute;background:var(--red);width:36%;height:160%;top:-30%;transform:skewX(-24deg)}
.slice-a{left:-32%;animation:boot-slice-in 1.1s cubic-bezier(.2,.8,.2,1) both}.slice-b{right:-28%;background:#e4b965;opacity:.4;animation:boot-slice-in 1.4s cubic-bezier(.2,.8,.2,1) reverse both}
.boot-reticle{position:absolute;right:-5%;top:8%;width:450px;aspect-ratio:1;border:1px solid #f1443655;border-radius:50%;background:repeating-conic-gradient(#f1443688 0deg 1deg,transparent 1deg 10deg);mask-image:radial-gradient(transparent 55%,#000 56%,#000 57%,transparent 58%,transparent 65%,#000 66%);animation:boot-orbit 16s linear infinite}
.boot-serial{position:absolute;right:8%;top:2%;font:900 330px/.9 'Barlow Condensed',Impact,sans-serif;color:#f1443626;animation:boot-number 1s ease-out both}
.boot-ribbon{position:absolute;right:-60px;bottom:90px;transform:rotate(-12deg);background:var(--red);color:#080b10;padding:12px 80px;font:700 16px monospace;letter-spacing:3px;opacity:0}
.boot-caption{position:absolute;bottom:0;left:2%;font:900 clamp(36px,8vw,96px)/1 'Barlow Condensed',Impact,sans-serif;color:#ffffff08;white-space:nowrap}
.boot-ticks{position:absolute;top:28px;left:25px;width:100px;height:8px;background:repeating-linear-gradient(90deg,var(--red) 0 18px,transparent 18px 24px)}
.boot-running #boot-sequence{position:relative;z-index:2}.boot-running #boot-heading{font-size:clamp(30px,4.5vw,58px);font-weight:900;max-width:650px;line-height:1.4;letter-spacing:1px}
.boot-running[data-stage="reveal"] #boot-heading{animation:boot-title .65s cubic-bezier(.2,.8,.2,1) both}
.boot-running[data-stage="reveal"] .boot-ribbon,.boot-running[data-stage="ready"] .boot-ribbon{animation:boot-ribbon .65s ease-out both}
.boot-running[data-stage="ready"] .boot-reticle{border-color:var(--amber)}
.boot-running .boot-track i{animation-duration:3.5s}.boot-running.special-boot .boot-track i{animation-duration:5.8s}
.boot-running #boot-skip{position:relative;background:#0b0e11cc;padding:10px 16px;border:1px solid #ffffff33}
@keyframes boot-slice-in{from{translate:-100vw 0}to{translate:0 0}}
@keyframes boot-orbit{to{rotate:360deg}}
@keyframes boot-number{from{opacity:0;transform:translateY(70px)}to{opacity:1;transform:none}}
@keyframes boot-title{from{opacity:0;transform:translateX(-24px);filter:blur(8px)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes boot-ribbon{from{opacity:0;translate:120px 0}to{opacity:.8;translate:0 0}}
@media(max-width:640px){.boot-running .gate-content{min-height:510px;padding:36px 24px}.boot-serial{font-size:240px;right:-20px;top:12%}.boot-reticle{width:320px;right:-120px}.boot-ribbon{bottom:36px;font-size:11px}.boot-running #boot-heading{font-size:32px}}
@media(prefers-reduced-motion:reduce){.boot-slice{display:none}.boot-ribbon{opacity:.6}}
.pilot-switch{background:#f1443615;border:1px solid #f1443655;color:var(--amber);font:12px monospace;padding:10px;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pilot-gate{color:var(--text);background:#0b0e11;border:1px solid #f1443680;padding:0;width:min(880px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;box-shadow:0 30px 120px #000c}
.pilot-gate::backdrop{background:#050709db;backdrop-filter:blur(12px)}
.gate-art{position:absolute;inset:0 40% 0 0;background:linear-gradient(90deg,transparent,#0b0e11),url('./asuka-theme.png') 12% center/auto 100%;opacity:.65;pointer-events:none}
.gate-content{position:relative;margin-left:38%;padding:40px 36px;min-height:480px;display:flex;flex-direction:column;justify-content:center}
.gate-code{font:12px monospace;letter-spacing:2px;color:var(--red);margin-bottom:28px}.gate-kicker{font:12px monospace;letter-spacing:2px;color:var(--amber)}
.gate-content h2{font-size:clamp(26px,3.5vw,38px);line-height:1.3;margin:14px 0 28px;letter-spacing:-1px}.gate-content em{font-style:normal;color:var(--red)}
.gate-content label{display:block;font-size:14px;margin-bottom:10px}.gate-content input{font:18px 'Noto Sans SC',sans-serif;border-color:#f1443670;background:#11161b}
.gate-note{font-size:12px;color:#aaa;line-height:1.7}.gate-enter{display:flex;justify-content:space-between;width:100%;margin-top:24px;background:var(--red);color:#100b0a;border:0;padding:15px;font-weight:700;clip-path:polygon(0 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%)}
.gate-footer{font:10px/1.6 monospace;color:#85817b;margin-top:30px;letter-spacing:1px}
#boot-id{overflow-wrap:anywhere;color:var(--amber);font:16px monospace}.boot-track{height:3px;background:#ffffff18;margin:28px 0}.boot-track i{display:block;width:100%;height:100%;background:var(--red);transform-origin:left;animation:boot-charge 2.1s linear both}
#boot-skip{padding:10px 0;background:none;color:#ccc;border:0;font-size:14px}.special-boot .gate-art{opacity:.9}.special-boot .boot-track i{animation-duration:4.6s;background:var(--amber)}.special-boot #boot-heading{color:var(--amber);text-shadow:0 0 30px #e4b96530}.boot-running #boot-heading{animation:boot-reveal .5s ease-out both}
@keyframes boot-charge{from{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes boot-reveal{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(max-width:640px){.gate-content{margin-left:0;padding:28px 24px;min-height:450px;background:#0b0e11b0}.gate-art{inset:0;opacity:.4}.pilot-switch{max-width:100px;font-size:10px;padding:6px}.header-right{max-width:120px}}
/* EVA editorial layout: open rails and offset, chamfered instrument surfaces. */
main{padding-top:28px}
.intro{min-height:252px;isolation:isolate;border:0;padding:24px 32px;justify-content:flex-end;background:#131316;clip-path:polygon(0 0,calc(100% - 32px) 0,100% 32px,100% 100%,24px 100%,0 calc(100% - 24px))}
.intro:before{content:'';position:absolute;inset:0;z-index:-2;background:url('./asuka-theme.png') left 23%/cover no-repeat;opacity:.85}
.intro:after{content:'';inset:0;z-index:-1;background:linear-gradient(90deg,#0b0d0e0a 15%,#0b0d0e70 38%,#0b0d0ef2 67%,#0b0d0edb),linear-gradient(0deg,#0b0d0e99,transparent 50%);backdrop-filter:blur(1.5px);mask-image:linear-gradient(90deg,transparent 23%,#000 48%)}
.hero-copy{width:52%;position:relative;padding:12px 0 14px 26px;border-left:2px solid var(--red)}
.hero-copy h1{font:800 clamp(36px,4.8vw,64px)/.94 'Barlow Condensed',Impact,sans-serif;letter-spacing:.5px}
.hero-copy .eyebrow{font-size:12px;letter-spacing:1.5px;margin-bottom:16px}
.hero-copy .subtitle{font:14px/1.5 monospace;color:#d1c6c0;max-width:330px}
.intro .unit{position:absolute;right:22px;bottom:18px;font-size:45px;color:#f1443640;pointer-events:none}.intro .unit span{display:none}
.panel{border:0;border-top:1px solid #f1443666;background:linear-gradient(130deg,#262120cc,#111415ed 70%);clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,22px 100%,0 calc(100% - 22px));box-shadow:none}
.panel:before{width:100px;height:3px;left:0;top:0;background:linear-gradient(90deg,var(--red) 70%,transparent 70%,transparent 76%,var(--red) 76%,var(--red) 88%,transparent 88%,transparent 94%,var(--red) 94%)}
.panel:after{width:60px;height:1px;right:20px;bottom:0;border:0;background:var(--red)}
.panel-title{border-bottom:1px solid #ffffff12;background:linear-gradient(110deg,#f1443614,transparent 70%);padding-top:20px}.target .panel-title{border-color:#ffffff12}
.target{background:linear-gradient(145deg,#45241d66,#131617 65%)}
.bridge button{border:0;clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);background:#f1443626}
.metrics{border:0;background:transparent;gap:12px}.metrics>div{background:linear-gradient(130deg,#ffffff06,transparent);border-top:1px solid #f1443660}.metrics>div+div{border-left:0}.metrics .distance-control{border-left:2px solid var(--red);background:linear-gradient(110deg,#f1443612,#ffffff02)}
.result-bottom button{clip-path:polygon(0 0,100% 0,100% calc(100% - 10px),calc(100% - 10px) 100%,0 100%)}
@media(min-width:1600px){main{padding-top:32px}}
@media(max-width:640px){.intro{min-height:230px;padding:20px 14px}.hero-copy{width:65%;padding-left:12px}.hero-copy h1{font-size:36px}.hero-copy .eyebrow{font-size:10px;letter-spacing:.5px}.hero-copy .subtitle{font-size:12px}.intro:before{background-size:auto 120%;background-position:23% 20%}.intro:after{background:linear-gradient(90deg,#0b0d0e20,#0b0d0ec9 48%,#0b0d0eed);mask-image:none}.metrics{gap:8px}}
@media(max-width:640px){header{min-height:130px;padding:20px 18px}.command-coordinates{display:none}.command-orbit{left:45%}.brand{gap:12px}.header-right{max-width:78px;flex-wrap:wrap;font-size:9px}.command-grid{mask-image:none;opacity:.5}}
/* IDEA-style fold/deploy: one quiet, continuous transition. */
.boot-running .boot-slice,.boot-running .boot-ribbon{display:none}
.boot-running .boot-serial{opacity:.4}.boot-running .boot-reticle{opacity:.45}
.pilot-gate.boot-running .boot-track i{animation-duration:3s}
.pilot-gate[data-stage="leaving"]{animation:pilot-fold .54s cubic-bezier(.65,0,.35,1) both}
.pilot-gate[data-stage="leaving"] .gate-content{animation:pilot-copy-exit .4s ease-in both}
.pilot-gate[data-stage="leaving"]::backdrop{animation:pilot-backdrop-exit .54s ease both}
.workspace-deploy{animation:pilot-module-deploy .36s cubic-bezier(.2,.8,.2,1) both}
@keyframes pilot-fold{0%{clip-path:inset(0);opacity:1}65%{clip-path:inset(47% 0);opacity:.9}100%{clip-path:inset(50% 0);opacity:0}}
@keyframes pilot-copy-exit{to{opacity:0;transform:translateX(-32px)}}
@keyframes pilot-backdrop-exit{to{background:transparent;backdrop-filter:blur(0)}}
@keyframes pilot-module-deploy{from{opacity:.3;transform:translateY(12px);clip-path:inset(0 0 85% 0)}to{opacity:1;transform:none;clip-path:inset(0)}}
@media(max-width:700px){
 header{gap:12px;padding:18px 16px;min-height:112px}.brand{font-size:34px;gap:10px}.brand span{font-size:9px;letter-spacing:0;padding-left:10px}.header-right{max-width:150px;min-width:0;justify-content:flex-end;flex-wrap:wrap;gap:6px;font-size:9px}.header-right b{display:none}.pilot-switch{max-width:130px;min-height:40px;font-size:11px;padding:8px}
 main{padding:20px 14px 0}.workspace{display:flex;flex-direction:column}.bridge{flex-direction:row;padding:10px}.bridge div{height:1px;width:55px}.bridge button{min-width:44px;min-height:44px}.panel{min-width:0}.fields{padding:20px}.target-inputs{grid-template-columns:minmax(0,1fr) 100px;gap:12px}.two{gap:12px}.two>div,.target-inputs>div{min-width:0}select{font-size:16px;min-width:0;padding:0 8px}input{min-width:0}.result-bottom{flex-direction:row;flex-wrap:wrap;align-items:center}.result-bottom button{min-height:44px}.metrics{grid-template-columns:1fr}.metrics>div+div{border-left:0}.protocol{flex-wrap:wrap;gap:12px}.panel-title{gap:10px}.presets button{min-height:40px}
 .pilot-gate,.pilot-gate.boot-running{width:calc(100vw - 24px);max-height:calc(100dvh - 24px);margin:auto}.pilot-gate .gate-content,.pilot-gate.boot-running .gate-content{margin-left:0;padding:28px 22px;min-height:0;background:#0b0e11b0}.pilot-gate .gate-art{inset:0;opacity:.3}.gate-code{margin-bottom:16px;font-size:11px}.gate-content h2,.boot-running #boot-heading{font-size:clamp(25px,7vw,36px);line-height:1.4;overflow-wrap:anywhere}.gate-content input{font-size:16px;min-height:48px}.gate-enter,#boot-skip{min-height:44px}.gate-footer{margin-top:20px;overflow-wrap:anywhere}.boot-serial{font-size:190px;right:0}.boot-reticle{width:280px;right:-130px}.boot-running #boot-sequence{min-width:0}.gate-content{scroll-margin-bottom:20px}
}
@media(max-width:380px){.brand span{display:none}.hero-copy{width:76%}.hero-copy h1{font-size:32px}.target-inputs{grid-template-columns:1fr}.fields{padding:18px}.presets{gap:6px}.presets button{padding:6px 10px}.result{padding-left:12px}}
@media(prefers-reduced-motion:reduce){.pilot-gate[data-stage="leaving"],.pilot-gate[data-stage="leaving"]::backdrop,.workspace-deploy{animation:none!important}}
/* Keep the destination hidden until its entrance state is installed. */
body.gate-active{overflow:hidden}
.gate-active>header,.gate-active>main{visibility:hidden}
.pilot-gate[data-stage="leaving"]::backdrop{animation:none;background:#080b10;backdrop-filter:none}
.pilot-gate[data-stage="leaving"]{box-shadow:none}
.workspace-deploy{animation:none;position:relative}
.workspace-deploy>.intro{animation:nerv-unfold .62s cubic-bezier(.16,1,.3,1) both}
.workspace-deploy>.protocol{animation:nerv-rail .45s .12s ease-out both}
.workspace-deploy .source{animation:nerv-panel-left .7s .18s cubic-bezier(.16,1,.3,1) both}
.workspace-deploy .target{animation:nerv-panel-right .7s .3s cubic-bezier(.16,1,.3,1) both}
.workspace-deploy .bridge{animation:nerv-rail .45s .4s ease-out both}
.workspace-deploy .metrics>div{animation:nerv-metric .55s .48s ease-out both}
.workspace-deploy .metrics>div:nth-child(2){animation-delay:.56s}.workspace-deploy .metrics>div:nth-child(3){animation-delay:.64s}
.workspace-deploy>details,.workspace-deploy>footer{animation:nerv-metric .45s .65s ease-out both}
.workspace-deploy .panel-title{animation:nerv-title .65s .35s ease-out both}
.workspace-deploy:before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,var(--red),#e4b965,transparent);box-shadow:0 0 16px #f1443670;z-index:3;pointer-events:none;animation:nerv-scan-deploy .85s ease-out both}
@keyframes nerv-unfold{from{opacity:0;transform:perspective(1200px) rotateX(-8deg) translateY(18px);clip-path:inset(48% 0)}to{opacity:1;transform:none}}
@keyframes nerv-rail{from{opacity:0;transform:scaleX(.8)}to{opacity:1;transform:none}}
@keyframes nerv-panel-left{from{opacity:0;translate:-24px 12px}to{opacity:1;translate:0 0}}
@keyframes nerv-panel-right{from{opacity:0;translate:24px 12px}to{opacity:1;translate:0 0}}
@keyframes nerv-metric{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}
@keyframes nerv-title{from{background-color:#f1443640}to{background-color:transparent}}
@keyframes nerv-scan-deploy{0%{opacity:0;transform:translateY(0)}20%{opacity:.8}100%{opacity:0;transform:translateY(380px)}}
@media(max-width:700px){.workspace-deploy .source,.workspace-deploy .target{animation-name:nerv-metric}.workspace-deploy:before{display:none}}
@media(prefers-reduced-motion:reduce){.workspace-deploy:before{display:none}}
.nerv-shutter{display:none;position:absolute;inset:0;overflow:hidden;z-index:10;pointer-events:none}
.pilot-gate[data-stage="leaving"]{animation:none;clip-path:none;opacity:1}
.pilot-gate[data-stage="leaving"] .nerv-shutter{display:block}
.pilot-gate[data-stage="leaving"] .gate-content{animation:nerv-seal-copy .3s ease both}
.shutter-door{position:absolute;left:0;right:0;height:51%;background:repeating-linear-gradient(90deg,transparent 0 80px,#ffffff04 80px 81px),linear-gradient(135deg,#241719,#0b1015 60%);border:1px solid #f1443660;overflow:hidden}
.shutter-top{top:0;clip-path:polygon(0 0,100% 0,100% 88%,72% 88%,68% 100%,32% 100%,28% 88%,0 88%);animation:nerv-door-top .42s cubic-bezier(.6,0,.2,1) both}
.shutter-bottom{bottom:0;clip-path:polygon(0 12%,28% 12%,32% 0,68% 0,72% 12%,100% 12%,100% 100%,0 100%);animation:nerv-door-bottom .42s .05s cubic-bezier(.6,0,.2,1) both}
.shutter-door:after{content:'';position:absolute;left:4%;right:4%;height:3px;background:linear-gradient(90deg,var(--red) 0 24%,transparent 24% 27%,#e4b965 27% 30%,transparent 30% 70%,var(--red) 70%);bottom:20%;opacity:.7}
.shutter-bottom:after{top:20%;bottom:auto;transform:scaleX(-1)}
.shutter-door span{position:absolute;left:6%;top:20%;font:12px monospace;letter-spacing:3px;color:#cc7562}.shutter-bottom span{top:auto;bottom:20%;left:auto;right:6%}
.shutter-door b{position:absolute;right:8%;top:0;font:900 180px/1 'Barlow Condensed',Impact,sans-serif;color:#f1443615}
.shutter-axis{position:absolute;top:50%;height:2px;left:0;right:0;background:linear-gradient(90deg,transparent,#f14436,#e4b965,#f14436,transparent);box-shadow:0 0 20px #f1443666;animation:nerv-axis .4s .3s both;transform-origin:center}
.shutter-lock{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);background:#0a0d11;border:1px solid #e4b96599;padding:16px 28px;display:grid;gap:5px;text-align:center;color:var(--amber);font:14px monospace;letter-spacing:3px;animation:nerv-lock .24s .48s both;white-space:nowrap}.shutter-lock small{font-size:10px;color:#9b958a;letter-spacing:2px}
@keyframes nerv-seal-copy{to{opacity:0;transform:scale(.96);filter:blur(3px)}}
@keyframes nerv-door-top{from{transform:translateY(-105%)}to{transform:none}}
@keyframes nerv-door-bottom{from{transform:translateY(105%)}to{transform:none}}
@keyframes nerv-axis{from{opacity:0;transform:scaleX(.05)}to{opacity:1;transform:scaleX(1)}}
@keyframes nerv-lock{from{opacity:0;scale:.88}to{opacity:1;scale:1}}
@media(max-width:700px){.shutter-door span{font-size:9px;letter-spacing:1px}.shutter-door b{font-size:130px}.shutter-lock{font-size:12px;padding:14px 20px}}
@media(prefers-reduced-motion:reduce){.nerv-shutter{display:none!important}}
/* Locally served display typography: condensed instrument numerals. */
.brand,.hero-copy h1,.unit,.boot-serial,.shutter-door b{font-family:'NERV Display','Arial Narrow',Impact,sans-serif;font-weight:700}
.brand{font-size:52px;letter-spacing:-1.5px;text-shadow:2px 0 #891e18}
.hero-copy h1{font-size:clamp(42px,5.5vw,76px);line-height:.9;letter-spacing:1px}
.hero-copy h1 span{background:linear-gradient(180deg,#ff9a70,#f14436 65%,#bb291d);background-clip:text;-webkit-background-clip:text;color:transparent}
output,.distance-row input,.metrics strong,input[type=number]{font-family:'NERV Display','Arial Narrow',monospace;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:1px}
output{font-size:clamp(60px,7vw,88px);text-shadow:0 2px 0 #62401e,0 0 24px #e4b96512}
.panel-title span,.protocol,.source-footer,.gate-code,.gate-kicker{font-family:'NERV Display','Microsoft YaHei',sans-serif;font-size:14px;letter-spacing:1.8px}
.panel-title b,.fields label,.distance-control label{font-family:'Microsoft YaHei','PingFang SC',sans-serif;font-weight:600;letter-spacing:.5px}
.gate-content h2{font-family:'Microsoft YaHei','PingFang SC',sans-serif;font-weight:900;letter-spacing:1px}.boot-running #boot-heading{font-family:'Microsoft YaHei','PingFang SC',sans-serif;font-weight:900;letter-spacing:2px;text-shadow:2px 2px #6a241c,0 0 24px #e4b96520}
.gate-content h2 em{display:inline-block;border-bottom:3px solid #f1443670;padding-bottom:7px}
@media(max-width:700px){.brand{font-size:42px}.hero-copy h1{font-size:42px}.panel-title span,.protocol{font-size:12px;letter-spacing:1px}output{font-size:64px}}
