:root{--bg:#000;--panel:#0b0d10;--bezel:#16191e;--line:#2a2f37;--text:#f2f4f7;--muted:#8a939e;--magenta:#ff3dff;--cyan:#00e5ff;--green:#3dff5a;--amber:#ffb000;--red:#ff2a2a;--font:"SF Pro Display", -apple-system, system-ui, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);height:100%;color:var(--text);font-family:var(--font);font-variant-numeric:tabular-nums;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;overscroll-behavior:none;margin:0}button{font:inherit;color:inherit;touch-action:manipulation;cursor:pointer}.app{background:var(--panel);border-left:1px solid var(--bezel);border-right:1px solid var(--bezel);-webkit-user-select:none;user-select:none;flex-direction:column;max-width:560px;height:100dvh;margin:0 auto;display:flex}.status-bar{padding:calc(var(--safe-top) + 6px) 8px 6px;background:var(--bg);border-bottom:1px solid var(--line);align-items:center;gap:6px;display:flex}.brand{letter-spacing:.04em;margin-right:auto;font-size:15px;font-weight:800}.brand span{color:var(--cyan);margin:0 1px}.chip{border:1px solid var(--line);letter-spacing:.04em;white-space:nowrap;background:#111418;border-radius:4px;padding:4px 7px;font-size:11px;font-weight:700}.chip[data-tone=ok]{color:var(--green);border-color:#3dff5a66}.chip[data-tone=warn]{color:var(--amber);border-color:#ffb00073}.chip[data-tone=bad]{color:var(--red);border-color:#ff2a2a80}.chip[data-tone=demo]{color:var(--cyan);border-color:#00e5ff73}.chip[data-tone=idle]{color:var(--muted)}.utc{color:var(--text);text-align:right;min-width:44px;font-size:12px;font-weight:700}.icon-btn{border:1px solid var(--line);width:32px;height:28px;color:var(--text);background:#111418;border-radius:4px;place-items:center;display:grid}.nav-status{background:var(--bg);border-bottom:1px solid var(--line);grid-template-columns:1.25fr 1fr 1fr 1fr 1fr;display:grid}.nav-status>*{border:0;border-right:1px solid var(--line);text-align:left;background:0 0;flex-direction:column;justify-content:center;align-items:flex-start;min-width:0;padding:4px 6px;display:flex}.nav-status>:last-child{border-right:0}.ns-wpt:active{background:#12161b}.ns-label{color:var(--muted);letter-spacing:.06em;font-size:10px;font-weight:700}.ns-wpt .ns-label{color:var(--magenta)}.ns-value{white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:17px;font-weight:700;line-height:1.15;overflow:hidden}.ns-value small{color:var(--muted);margin-left:1px;font-size:10px}.ns-wpt .ns-value,.ns-value.mag{color:var(--magenta)}.arrow{margin-left:1px;display:inline-block}.gps-banner{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--amber);text-align:left;background:#1a1300;padding:7px 10px;font-size:12px;font-weight:700;line-height:1.3;display:block}.gps-banner[hidden]{display:none}.gps-banner[data-tone=bad]{color:#ff6b6b;background:#220707}.gps-banner[data-tone=demo]{color:var(--cyan);background:#031a1f}.gps-banner:disabled{cursor:default;opacity:1}.pfd,.hsi{min-height:0;position:relative}.pfd{border-bottom:1px solid var(--line);flex:1.12 1 0;min-height:230px;max-height:400px}.hsi{background:#000;flex:1 1 0;min-height:210px}canvas{width:100%;height:100%;display:block}.ahrs-start{border:1px solid var(--cyan);color:var(--cyan);letter-spacing:.03em;background:#000000e0;border-radius:6px;padding:12px 18px;font-size:15px;font-weight:700;position:absolute;top:64%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 4px #00e5ff1f}.softkeys{padding:6px 6px calc(var(--safe-bottom) + 6px);background:var(--bg);border-top:1px solid var(--line);grid-template-columns:repeat(5,1fr);gap:4px;display:grid}.softkey{letter-spacing:.04em;height:42px;color:var(--text);white-space:nowrap;background:linear-gradient(#1d2127,#121519);border:1px solid #3a414b;border-radius:4px;font-size:13px;font-weight:700}.softkey small{color:var(--cyan);font-size:10px}.softkey:active{background:#2a3038}.softkey[aria-pressed=true]{color:#000;background:#c9ced6;border-color:#c9ced6}.softkey[aria-pressed=true] small{color:#000}.softkey:disabled{color:#4c535c;cursor:default}.window{width:min(520px,100vw - 16px);max-height:calc(100dvh - var(--safe-top) - var(--safe-bottom) - 24px);color:var(--text);background:#0d1014;border:1px solid #3a414b;border-radius:8px;padding:0;overflow:auto}.window::backdrop{background:#000000b3}.window form{flex-direction:column;gap:10px;padding:0 14px 14px;display:flex}.window-title{letter-spacing:.12em;color:var(--cyan);z-index:1;background:#1a1e24;border-bottom:1px solid #3a414b;margin:0 -14px;padding:10px 14px;font-size:13px;font-weight:800;position:sticky;top:0}.field{flex-direction:column;gap:4px;min-width:0;display:flex}.field-row{grid-template-columns:1fr 1fr;gap:8px;display:grid}.field-label{letter-spacing:.08em;color:var(--muted);font-size:10px;font-weight:700}.field input{width:100%;height:44px;color:var(--cyan);font:700 20px var(--font);letter-spacing:.06em;text-transform:uppercase;background:#000;border:1px solid #3a414b;border-radius:6px;padding:0 12px}.custom .field input{text-transform:none;color:var(--text);font-size:16px}.field input:focus{outline:2px solid var(--cyan);outline-offset:1px}.field input[aria-invalid=true]{border-color:var(--red)}.suggestions{gap:4px;margin:0;padding:0;list-style:none;display:grid}.suggestions:empty{display:none}.suggestions button{border:1px solid var(--line);text-align:left;background:#111418;border-radius:6px;align-items:baseline;gap:8px;width:100%;padding:8px 10px;display:flex}.suggestions button[aria-selected=true]{border-color:var(--cyan);background:#0b1e24}.suggestions b{color:var(--cyan);min-width:46px}.suggestions span{min-width:0;color:var(--text);text-overflow:ellipsis;white-space:nowrap;flex:1;font-size:14px;overflow:hidden}.suggestions em{white-space:nowrap;color:var(--muted);flex-shrink:0;font-size:12px;font-style:normal}.wpt-info{color:var(--muted);min-height:1em;font-size:13px}.wpt-info b{color:var(--text)}.custom{border:1px solid #ffb00066;border-radius:6px;flex-direction:column;gap:8px;margin:0;padding:10px;display:flex}.custom[hidden]{display:none}.custom legend{color:var(--amber);padding:0 4px;font-size:12px}.hint{color:var(--muted);margin:0;font-size:12px;line-height:1.45}.hint b{color:var(--text)}.route-chips{flex-wrap:wrap;gap:6px;display:flex}.route-chips button,.seg button{background:#111418;border:1px solid #3a414b;border-radius:5px;padding:7px 10px;font-size:13px;font-weight:700}.form-error{min-height:1em;color:var(--red);margin:0;font-size:13px}.form-error:empty{display:none}.window-actions{justify-content:flex-end;gap:8px;margin-top:4px;display:flex}.btn{background:#171b20;border:1px solid #3a414b;border-radius:6px;min-height:42px;padding:0 16px;font-size:14px;font-weight:700}.btn-primary{border-color:var(--cyan);color:var(--cyan);background:#052a31}.setting{flex-direction:column;gap:6px;display:flex}.setting>.btn{align-self:flex-start}.seg{flex-wrap:wrap;gap:6px;display:flex}.seg button[aria-pressed=true]{color:#000;background:#c9ced6;border-color:#c9ced6}.toggle{align-items:center;gap:10px;font-size:14px;display:flex}.toggle input{width:20px;height:20px;accent-color:var(--cyan)}.custom-list{gap:4px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.custom-list li{border:1px solid var(--line);border-radius:5px;align-items:center;gap:8px;padding:6px 8px;display:flex}.custom-list li span{color:var(--muted);flex:1}.custom-list li b{color:var(--cyan)}.custom-list button{color:var(--red);background:0 0;border:0;font-weight:700}.custom-list .empty{color:var(--muted);border-style:dashed}.fine-print{color:var(--muted);margin:4px 0 0;font-size:11px;line-height:1.45}.warn{border:1px solid var(--amber);color:var(--amber);border-radius:6px;margin:0;padding:8px 10px;font-size:13px}.warn[hidden]{display:none}.steps{gap:10px;margin:0;padding-left:20px;font-size:14px;line-height:1.45;display:grid}.steps li::marker{color:var(--cyan);font-weight:800}.steps li.done{color:var(--muted)}.steps li.done b:first-child:after{content:" ✓";color:var(--green)}.trouble{border:1px solid var(--line);border-radius:6px;padding:8px 10px;font-size:13px;line-height:1.45}.trouble summary{cursor:pointer;font-weight:700}.trouble p{color:var(--muted);margin:8px 0 0}.toast{left:50%;bottom:calc(var(--safe-bottom) + 64px);opacity:0;pointer-events:none;z-index:10;background:#0a0c0ff2;border:1px solid #3a414b;border-radius:6px;max-width:calc(100vw - 32px);padding:10px 14px;font-size:13px;font-weight:600;transition:opacity .2s,transform .2s;position:fixed;transform:translate(-50%,12px)}.toast.show{opacity:1;transform:translate(-50%)}@media (height<=700px){.pfd{min-height:200px}.hsi{min-height:190px}.ns-value{font-size:15px}.softkey{height:38px}}
