/* NERV // FOCUS V2 — EVA style monochrome full-screen control terminal */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;600;700;900&family=Noto+Serif+JP:wght@600;700;900&display=swap');
:root{--eva-ink:#c6c9c8;--eva-light:#e3e5e2;--eva-line:#919899;--eva-dark:#111318;--eva-dim:#777c80;--eva-alert:#e3b3a6;color-scheme:dark}
html,body,#root{min-height:100%;margin:0;background:#07090c}
button{touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.app-full{height:100vh;height:100dvh;min-height:0;overflow:hidden;background:#07080b}
.app-full .noise-layer{display:none}
.app-container-full{height:100vh;height:100dvh;min-height:0;width:100%;max-width:none;padding:0;margin:0}
.eva-viewport{width:100%;height:100%;min-height:0;display:flex;align-items:center;justify-content:center;padding:clamp(6px,1.2vw,18px);padding-top:max(6px,env(safe-area-inset-top));padding-bottom:max(6px,env(safe-area-inset-bottom));background:radial-gradient(ellipse at 51% 30%,#22252c 0%,#101216 48%,#050608 90%);position:relative;color:var(--eva-ink);font-family:'Arial Narrow','Roboto Condensed','Helvetica Neue',Arial,sans-serif}
.eva-device{width:100%;height:100%;max-width:1980px;max-height:1200px;min-height:0;position:relative;padding:clamp(7px,.85vw,13px);border:1px solid #555a5b;border-radius:clamp(6px,1.1vw,13px);background:linear-gradient(115deg,#181b20 0%,#101115 52%,#212329 91%,#0d0f12 100%);box-shadow:0 0 0 2px #07090a,0 0 0 4px #414449,0 20px 70px #000a,inset 2px 3px 4px #7778,inset -2px -3px 7px #000d}
.eva-screen-frame{position:relative;display:flex;flex-direction:column;height:100%;min-height:0;border:2px solid #64696e;box-shadow:inset 0 0 0 2px #111319,0 0 0 2px #1a1b20;padding:clamp(5px,1.15vw,17px);background:linear-gradient(180deg,#1a1c23 0%,#0c0d12 49%,#13151b 100%)}
.eva-top-calibration{display:flex;align-items:center;gap:1.3vw;height:clamp(17px,3.2vh,32px);min-height:14px;color:#5e626c;letter-spacing:1.4px;font-family:'Arial Narrow',sans-serif;font-size:clamp(6px,.65vw,10px);font-weight:800;white-space:nowrap}
.calibration-left,.calibration-right{min-width:max-content}
.calibration-rule{height:1px;background:#959ba5;flex:1;position:relative;display:flex;justify-content:space-between;align-items:start;box-shadow:0 0 7px #aaa5}
.calibration-rule i{height:8px;width:1px;background:#9198a2;display:block;box-shadow:0 0 3px #fff7}
.calibration-rule i.major{height:13px;width:2px}
.eva-glass{flex:1;min-height:0;position:relative;border:2px solid #9ea4aa;padding:clamp(5px,.8vw,11px);box-shadow:inset 0 0 0 4px #13151a,inset 0 0 0 5px #6f747b88,0 0 16px #cbd0d51a;background:radial-gradient(ellipse at 36% 35%,#272b33 0%,#17191f 47%,#111216 100%);overflow:hidden}
.eva-grid{display:grid;grid-template-columns:minmax(0,1.94fr) minmax(0,.97fr);gap:clamp(8px,1.05vw,16px);height:100%;padding:clamp(5px,.7vw,10px);position:relative;z-index:1}
.eva-left-panel{height:100%;min-height:0;min-width:0;display:grid;grid-template-rows:minmax(0,15%) minmax(0,1fr) minmax(0,13%);gap:clamp(3px,.6vh,8px);border-top:0}
.eva-headline{min-height:0;display:flex;flex-direction:column;justify-content:center;padding-left:clamp(5px,1.4vw,20px);white-space:nowrap;overflow:hidden;font-weight:800}
.eva-headline-text{display:flex;align-items:baseline;gap:clamp(6px,.8vw,14px);line-height:1.2}
.eva-jp-heading{font-family:'Noto Serif JP','Hiragino Mincho ProN','Yu Mincho',serif;font-size:clamp(10px,1.65vw,25px);font-weight:900;letter-spacing:-.07em;color:#9299a0}
.eva-main-heading{font-size:clamp(14px,2.05vw,34px);font-weight:850;letter-spacing:clamp(.3px,.12vw,2.1px);color:#c4c7cc;transform:scaleX(.96);transform-origin:left center}
.eva-power-caption{font-size:clamp(14px,2.1vw,32px);letter-spacing:clamp(.2px,.12vw,2px);line-height:1.2;font-weight:850;color:#b7bac1;margin-top:clamp(4px,1vh,11px)}
.eva-time-field{min-height:0;min-width:0;display:flex;flex-direction:column;align-items:stretch;justify-content:center;position:relative;padding:0 clamp(1px,.5vw,8px)}
.eva-digit-field{width:100%;height:90%;min-height:0;display:flex;align-items:stretch;justify-content:center;overflow:hidden;gap:0;color:#d5d8d9;filter:drop-shadow(0 0 6px #dae2e153)}
.eva-digit-field svg{min-width:0;max-width:none;min-height:0;height:100%;margin:0;display:block;overflow:visible;flex-shrink:1}
.eva-digit-field svg.digit-number{width:0;flex:1 1 0}
.eva-digit-field svg.digit-colon{width:0;flex:.22 1 0}
.eva-digit-field .segment-on{fill:#cdd0d2;opacity:1;transition:fill .18s}
.eva-digit-field .segment-off{fill:#78808a;opacity:.055}
.eva-digit-field.focus-digits{padding:0 1.5%}
.eva-digit-field.battery-digits{padding:0 .5%;filter:drop-shadow(0 0 7px #dab4ae50)}
.eva-time-foot{height:10%;min-height:13px;display:flex;justify-content:space-between;align-items:center;padding:0 2%;color:#777e87;font-size:clamp(7px,1vw,12px);font-weight:bold;letter-spacing:clamp(.7px,.2vw,2.5px);white-space:nowrap}
.eva-control-plate{min-width:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:clamp(3px,.5vw,8px);padding:clamp(2px,.4vw,5px) 0 0;border-top:1px solid #a2a6b15e}
.eva-hardware-btn{min-width:0;min-height:0;background:linear-gradient(#22252bb3,#14161aeb);border:2px solid #7a828b;color:#bfc2c7;display:flex;align-items:center;justify-content:center;gap:clamp(2px,.7vw,10px);padding:3px 1px;border-radius:1px;font-family:'Arial Narrow','Helvetica Neue',Arial,sans-serif;font-weight:850;font-stretch:condensed;font-size:clamp(9px,1.6vw,25px);letter-spacing:clamp(0px,.05vw,1px);text-shadow:0 0 4px #b2bac455;box-shadow:inset 0 0 0 1px #222831,0 0 4px #0008}
.eva-hardware-btn span{color:#8e939e;font-size:.78em}
.eva-hardware-btn:hover,.eva-hardware-btn:focus-visible{color:#fff;border-color:#d5d7dc;background:#333741}
.eva-hardware-btn.selected{color:#d8e0dc;background:#535a63aa;border-color:#adb4bd}
.eva-right-panel{height:100%;min-height:0;min-width:0;display:grid;grid-template-rows:minmax(0,1fr) minmax(0,.42fr) minmax(0,1fr);gap:clamp(6px,.9vh,11px);border-left:2px solid #90959e;padding-left:clamp(7px,1vw,14px)}
.eva-power-box{border:2px solid #adb3b9;box-shadow:inset 0 0 0 3px #111319,0 0 0 1px #51575d;background:linear-gradient(130deg,#25262d,#14161d 68%);min-height:0;min-width:0;position:relative;overflow:hidden;display:flex;align-items:flex-start;justify-content:flex-start;color:#aeb0b8}
.eva-power-box.powered{background:radial-gradient(ellipse at 25% 50%,#333640 0%,#1a1c23 70%);border-color:#c2c9cb;color:#e2e3e4;box-shadow:inset 0 0 0 3px #111319,0 0 13px #b9c0cb1f}
.eva-kanji{font-family:'Noto Serif JP','Hiragino Mincho ProN','Yu Mincho','Times New Roman',serif;font-weight:900;position:absolute;top:8%;left:5.5%;font-size:clamp(48px,min(8.1vw,12.7vh),168px);letter-spacing:-.15em;line-height:1;white-space:nowrap;transform:scaleX(.93);transform-origin:left center;text-shadow:0 0 7px #aebbc030}
.eva-stripes{position:absolute;right:0;top:0;bottom:0;width:20%;background:repeating-linear-gradient(135deg,#c9cdd2 0 12px,#171a20 12px 24px);border-left:2px solid #969ca7;opacity:.95}
.eva-box-label{position:absolute;left:5%;bottom:4%;font-size:clamp(20px,3.35vw,58px);font-weight:700;letter-spacing:clamp(-1px,.03vw,1px);line-height:1.06;transform:scaleX(.92);transform-origin:left center;color:currentColor}
.eva-supply-box{border:2px solid #979da6;box-shadow:inset 0 0 0 3px #111319;background:#1b1d24;display:flex;flex-direction:column;justify-content:center;gap:5%;padding:clamp(4px,.8vw,13px);font-size:clamp(12px,2vw,31px);line-height:1.04;letter-spacing:clamp(-.6px,.12vw,1px);font-weight:800;white-space:nowrap;color:#c0c3c9;overflow:hidden}
.eva-supply-jp{font-family:'Noto Serif JP','Yu Mincho',serif;font-size:clamp(9px,1.1vw,19px);font-weight:900;letter-spacing:-.02em}
.eva-glass-glare{pointer-events:none;position:absolute;inset:0;z-index:3;background:linear-gradient(120deg,#ffffff06 0%,#ffffff00 35%,#ffffff04 48%,#ffffff00 65%),radial-gradient(ellipse at 40% -25%,#d1d7e714,transparent 60%)}
.effects-on .eva-scanlines{pointer-events:none;position:absolute;z-index:2;inset:0;background:repeating-linear-gradient(0deg,#0000 0px,#0000 3px,#05060855 4px,#0000 5px);opacity:.22}
.eva-bottom-calibration{height:clamp(20px,3.6vh,34px);min-height:15px;display:flex;align-items:center;justify-content:space-between;color:#6b727a;font-size:clamp(7px,.7vw,10px);letter-spacing:1.2px;font-weight:800;gap:10px}
.eva-led-status{display:flex;gap:7px;align-items:center;white-space:nowrap}
.eva-led-status i{height:7px;width:7px;border-radius:50%;background:#4d555b;box-shadow:0 0 0 1px #727b82}
.eva-led-status i.active{background:#bec5c3;box-shadow:0 0 7px #eef}
.eva-bottom-dots{display:flex;gap:6px}.eva-bottom-dots i{width:12px;height:4px;border:1px solid #777d84}
.eva-serial{white-space:nowrap}
.eva-corner-subject{display:none;position:absolute;z-index:4;bottom:clamp(24px,4.8vh,48px);left:clamp(22px,4vw,65px);font-size:clamp(8px,1vw,12px);color:#8d949c;letter-spacing:1.5px;text-shadow:0 0 3px #000}
.eva-viewport.show-subject .eva-corner-subject{display:block}
.eva-battery{--eva-alert:#e9b0a1}
.eva-battery .eva-device{box-shadow:0 0 0 2px #08090a,0 0 0 4px #4c3739,0 20px 70px #000b,inset 2px 3px 4px #9995,inset -2px -3px 7px #000d}
.eva-battery .eva-power-caption,.eva-battery .eva-led-status b{color:var(--eva-alert)}
.eva-battery .eva-internal.powered{border-color:#dcb3b0;box-shadow:inset 0 0 0 3px #111319,0 0 17px #b2574e56}
.eva-battery .eva-internal.powered .eva-kanji,.eva-battery .eva-internal.powered .eva-box-label{color:#ece2df}
.eva-battery .eva-control-plate{border-top-color:#bc9695}
.eva-battery .eva-hardware-btn.selected{border-color:#ddacab;background:#64454599}
.eva-battery .eva-supply-box{border-color:#a7777e}
.eva-battery .eva-led-status i.active{background:#da8e8d;box-shadow:0 0 10px #e77}
.eva-digit-field.timer-alert .segment-on{fill:#ecaea8}
@keyframes warningGlow{0%,100%{opacity:1}50%{opacity:.63}}
.effects-on .eva-battery .eva-internal.powered .eva-box-label{animation:warningGlow .9s linear infinite}
@media(prefers-reduced-motion:reduce){.effects-on .eva-battery .eva-internal.powered .eva-box-label{animation:none}}
/* A single, unobtrusive navigation control replaces the old top/bottom tabs. */
.eva-menu-button{position:fixed;z-index:75;right:max(21px,calc(env(safe-area-inset-right) + 21px));top:max(22px,calc(env(safe-area-inset-top) + 19px));height:38px;min-width:69px;display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid #8f959b;color:#d6d8d9;background:#0b0d12dc;box-shadow:0 2px 10px #000a;padding:0 8px;font-size:10px;font-weight:800;letter-spacing:1.3px;border-radius:2px}
.eva-menu-button:hover,.eva-menu-button:focus-visible{border-color:#e5e6e8;background:#30333b}
.drawer-backdrop{position:fixed;inset:0;background:#050608aa;z-index:80;opacity:0;pointer-events:none;transition:opacity .18s}
.eva-drawer{position:fixed;z-index:81;inset:0 0 0 auto;width:min(400px,92vw);height:100vh;height:100dvh;transform:translateX(102%);transition:transform .23s ease;box-shadow:-15px 0 60px #000c;background:#14171b;border-left:2px solid #89919a;display:flex;flex-direction:column;padding:max(24px,env(safe-area-inset-top)) 24px max(30px,env(safe-area-inset-bottom))}
.drawer-open .drawer-backdrop{opacity:1;pointer-events:auto}
.drawer-open .eva-drawer{transform:translateX(0)}
.drawer-open .eva-menu-button{opacity:0;pointer-events:none}
.drawer-top{display:flex;align-items:start;justify-content:space-between;gap:14px;border-bottom:1px solid #666f78;padding:10px 0 25px}
.drawer-kicker{font-size:10px;letter-spacing:2px;color:#999fa5;font-weight:800}
.drawer-top h2{font-family:Impact,'Arial Narrow',sans-serif;font-size:35px;font-weight:500;letter-spacing:1.5px;line-height:1;margin:9px 0 0;color:#e0e2e2}
.drawer-close{background:transparent;color:#dce0e0;border:1px solid #7c848c;padding:8px;display:grid;place-items:center}
.drawer-main{display:grid;gap:8px;margin-top:25px}
.drawer-main button{width:100%;padding:18px 12px;display:flex;align-items:center;justify-content:space-between;gap:15px;border:1px solid #5a626c;background:#202329;color:#cbd0d1;letter-spacing:1.3px;text-align:left}
.drawer-main button.selected{border-color:#d9dfdb;color:white;background:#373c43}
.drawer-main button span{font-size:11px;color:#9aa2a9}.drawer-main button strong{flex:1;font-size:15px}
.drawer-bottom{margin-top:auto;border-top:1px solid #666f78;padding-top:22px;color:#8b979c;font-size:11px;letter-spacing:1.5px}.drawer-bottom strong{display:block;font-size:19px;color:#d8dddd;margin-top:8px}.drawer-bottom p{line-height:1.5;letter-spacing:.7px}
/* Secondary views inherit the functional v1 widgets and receive a restrained dark terminal skin. */
.app-subpage{background:#0c0e12;color:#d5d9da;min-height:100vh;min-height:100dvh}
.app-subpage .noise-layer{opacity:.08}
.app-subpage .app-container{max-width:1340px;padding:0 28px 28px}
.subpage-header{height:76px;border-bottom:1px solid #505962}
.subpage-header .brand-mark{display:none}
.subpage-header .brand-type strong{font-size:24px;color:#dfe1e2}
.subpage-header .brand-type small{color:#9da5ac}
.subpage-back{display:flex;align-items:center;gap:7px;background:#1e232a;border:1px solid #606b73;color:#dce1e1;padding:10px 14px;font-size:11px;font-weight:800;letter-spacing:1px}
.app-subpage .section-heading{margin-top:34px}
.app-subpage .section-heading h1,.app-subpage .panel-top h2{color:#e2e5e6}
.app-subpage .surface-panel,.app-subpage .stat-panel,.app-subpage .settings-panel{background:linear-gradient(150deg,#24282f,#171b20);border-color:#4d5761}
.app-subpage .micro-label{color:#b1b7be}
.app-subpage input{color:#e5e7e9}
.app-subpage .small-action,.app-subpage .settings-presets button,.app-subpage .backup-actions button,.app-subpage .notification-btn{background:#252a30;border-color:#626b73;color:#d4dadd}
.app-subpage .settings-presets button.selected{border-color:#d7dde0;background:#494d55;color:#fff}
.app-subpage .settings-presets{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.app-subpage .battery-test-btn{width:100%;min-height:45px;margin-top:14px;display:flex;align-items:center;justify-content:center;gap:10px;background:#393037;border:1px solid #a58e92;color:#efd8d3;font-size:11px;font-weight:900;letter-spacing:1px}
.app-subpage .stat-panel-value,.app-subpage .session-duration,.app-subpage .goal-top strong{color:#e5e7e9}
.app-subpage .bar-fill{background:#c4b5b2}
.app-subpage .progress-orb{filter:grayscale(.8)}
.app-subpage .footer{border-color:#3c444d}
.app-subpage .toast{background:#e8e8e8;color:#212427}
@media(max-width:1100px){
 .eva-headline .eva-main-heading{font-size:clamp(13px,2vw,26px)}
 .eva-supply-box{font-size:clamp(12px,2vw,23px)}
 .eva-kanji{font-size:clamp(38px,min(8vw,12.1vh),100px)}
 .eva-box-label{font-size:clamp(15px,3.1vw,38px)}
}
@media(max-aspect-ratio:9/11){
 .eva-viewport{padding:clamp(7px,1.5vw,15px);padding-top:max(7px,env(safe-area-inset-top));padding-bottom:max(7px,env(safe-area-inset-bottom))}
 .eva-device{padding:clamp(5px,1vw,10px)}
 .eva-screen-frame{padding:clamp(5px,1.1vw,10px)}
 .eva-top-calibration{height:clamp(15px,2vh,24px)}
 .calibration-left,.calibration-right{display:none}
 .eva-grid{grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1.24fr) minmax(0,.76fr);gap:clamp(6px,.8vh,12px);padding:clamp(4px,1vw,10px)}
 .eva-left-panel{grid-template-rows:minmax(0,19%) minmax(0,1fr) minmax(0,15%)}
 .eva-headline{padding-left:1%}
 .eva-jp-heading{font-size:clamp(10px,2vw,18px)}
 .eva-main-heading{font-size:clamp(13px,3vw,26px)!important;letter-spacing:.4px}
 .eva-power-caption{font-size:clamp(12px,3.6vw,27px);letter-spacing:.7px}
 .eva-digit-field{height:90%}
 .eva-time-foot{font-size:clamp(7px,1.6vw,11px)}
 .eva-control-plate{gap:3px}
 .eva-hardware-btn{font-size:clamp(10px,2.5vw,18px);border-width:1px}
 .eva-right-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr) minmax(0,1fr);grid-template-rows:1fr;gap:clamp(4px,.75vw,9px);border-left:0;border-top:2px solid #9298a0;padding:clamp(7px,1.5vw,13px) 0 0}
 .eva-power-box,.eva-supply-box{border-width:1.5px}
 .eva-kanji{font-size:clamp(28px,8vw,82px);top:9%;left:4%;letter-spacing:-.15em}
 .eva-box-label{font-size:clamp(11px,3.65vw,30px);bottom:4%;left:4%;letter-spacing:-.5px}
 .eva-stripes{width:17%;background:repeating-linear-gradient(135deg,#bec2c6 0 7px,#15171b 7px 14px)}
 .eva-supply-box{font-size:clamp(9px,2.1vw,20px);padding:clamp(3px,1vw,10px);letter-spacing:0}
 .eva-supply-jp{font-size:clamp(7px,1.8vw,14px)}
 .eva-bottom-calibration{font-size:clamp(6px,1.1vw,8px)}
 .eva-bottom-dots{display:none}
 .eva-menu-button{top:max(19px,calc(env(safe-area-inset-top) + 13px));right:max(18px,calc(env(safe-area-inset-right) + 15px));height:31px;min-width:35px}
 .eva-menu-button span{display:none}
 .eva-serial{display:none}
 .eva-corner-subject{bottom:24px;left:24px;font-size:8px}
}
@media(max-width:520px) and (orientation:portrait){
 .eva-grid{grid-template-rows:minmax(0,1.12fr) minmax(0,.88fr)}
 .eva-left-panel{grid-template-rows:minmax(0,21%) minmax(0,1fr) minmax(0,15%)}
 .eva-headline-text{gap:5px}
 .eva-jp-heading{font-size:10px}
 .eva-main-heading{font-size:clamp(12px,3.05vw,17px)!important}
 .eva-power-caption{font-size:clamp(13px,3.7vw,19px)}
 .eva-kanji{font-size:clamp(24px,8vw,44px)}
 .eva-box-label{font-size:clamp(11px,3.6vw,18px)}
 .eva-supply-box{font-size:clamp(8px,2.1vw,12px)}
 .eva-time-foot{font-size:7px}
 .eva-hardware-btn span{display:none}
 .eva-hardware-btn{font-size:clamp(10px,2.75vw,15px)}
}
@media(max-height:550px) and (orientation:landscape){
 .eva-viewport{padding:4px}
 .eva-device{padding:4px}
 .eva-screen-frame{padding:3px}
 .eva-top-calibration{height:13px}.eva-bottom-calibration{height:15px}
 .eva-grid{padding:4px;gap:6px}
 .eva-left-panel{grid-template-rows:minmax(0,20%) minmax(0,1fr) minmax(0,16%)}
 .eva-jp-heading{font-size:10px}
 .eva-main-heading{font-size:clamp(11px,1.8vw,17px)}
 .eva-power-caption{font-size:clamp(11px,1.85vw,17px);margin-top:2px}
 .eva-kanji{font-size:clamp(23px,5.5vw,66px)}
 .eva-box-label{font-size:clamp(12px,2.45vw,28px)}
 .eva-supply-jp{font-size:9px}.eva-supply-box{font-size:clamp(10px,1.8vw,15px)}
 .eva-time-foot{font-size:7px}.eva-hardware-btn{font-size:clamp(8px,1.5vw,16px);border-width:1px}
 .eva-menu-button{top:11px;right:12px;min-width:30px;height:27px}.eva-menu-button span{display:none}
 .eva-serial,.eva-bottom-dots{display:none}
}
@media(max-width:760px){
 .app-subpage .app-container{padding:0 14px 28px}
 .subpage-header{height:65px}
 .subpage-back{font-size:10px;padding:8px}
 .app-subpage .settings-presets{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* Keep any optional mission label in the perimeter, never over the hardware readout. */
.eva-corner-subject{bottom:max(31px,4.6vh);left:auto;right:clamp(35px,4vw,70px);font-size:10px;background:#101318e0;padding:2px 6px;max-width:22vw;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-aspect-ratio:9/11){.eva-corner-subject{bottom:max(22px,3.5vh);right:24px;max-width:38vw;font-size:8px}}
@media(max-aspect-ratio:9/11){.eva-device{max-height:none}}
.app-subpage .subpage-back{margin-right:83px}
@media(max-width:760px){.app-subpage .subpage-back{margin-right:37px}}
