:root{--bg:#040a18;--bg2:#071228;--panel:rgba(9,20,42,.86);--panel-line:rgba(90,180,255,.14);--ink:#cfe1f7;--dim:#5f7ba3;--faint:#33507a;--cyan:#5ad8ff;--market:#46e2a4;--ads:#f5ba55;--sov:#f07ad2;--bridge:#9d8cff;--mono:ui-monospace,"Cascadia Mono","SF Mono",Menlo,Consolas,monospace;--sans:system-ui,-apple-system,"Segoe UI",sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%}body{background:radial-gradient(120% 90% at 42% 44%,var(--bg2) 0%,var(--bg) 55%,#01040c 100%);color:var(--ink);font-family:var(--sans);overflow:hidden;min-height:100vh}#stage{position:fixed;top:0;right:0;bottom:0;left:0;display:block}header{position:fixed;top:18px;left:22px;z-index:5;pointer-events:none}header h1{font-family:var(--mono);font-size:15px;font-weight:600;letter-spacing:.42em;color:var(--cyan);text-shadow:0 0 18px rgba(90,216,255,.55)}header p{font-family:var(--mono);font-size:10px;letter-spacing:.18em;color:var(--dim);margin-top:6px}#legend{position:fixed;top:18px;right:22px;z-index:5;text-align:right;pointer-events:none}#legend .row{font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;color:var(--dim);margin-bottom:5px}#legend i{display:inline-block;width:7px;height:7px;border-radius:50%;margin-left:8px;vertical-align:-1px}#legend .meta{color:var(--faint);margin-top:8px}.rail{position:fixed;top:86px;bottom:150px;z-index:4;display:flex;flex-direction:column;justify-content:center;gap:5px;overflow:hidden}#rail-q{left:34px;width:352px;align-items:stretch}#rail-q,#rail-t{display:none}.rail .grp{font-family:var(--mono);font-size:10px;letter-spacing:.32em;color:var(--faint);margin:16px 0 6px;display:flex;align-items:center;gap:9px}.rail .grp:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--dim);flex:none;box-shadow:0 0 8px currentColor}.rail .grp.g-market:before{background:var(--market)}.rail .grp.g-ads:before{background:var(--ads)}.rail .grp.g-sov:before{background:var(--sov)}.rail .grp.g-cross:before{background:var(--bridge)}.rail .grp:after{content:"";flex:1;height:1px;background:linear-gradient(90deg,rgba(120,180,255,.22),transparent)}.rail button,.rail .tbl{font-family:var(--mono);background:none;border:0;color:#93a9c9;cursor:pointer;font-size:13.5px;letter-spacing:.04em;line-height:1.45;padding:7px 12px;border-radius:9px;border-left:2px solid transparent;text-align:left;transition:color .22s,background .22s,border-color .22s,transform .22s;white-space:normal;max-width:100%}#rail-t .tbl{cursor:default;font-size:10px;padding:1.5px 4px}.rail button:hover{color:var(--ink);background:#5ab4ff12;transform:translate(3px)}.rail button.f-market:hover{border-left-color:var(--market)}.rail button.f-ads:hover{border-left-color:var(--ads)}.rail button.f-sov:hover{border-left-color:var(--sov)}.rail button.f-cross:hover{border-left-color:var(--bridge)}.rail button:focus-visible{outline:1px solid var(--cyan);outline-offset:2px}.rail .on{color:var(--ink);text-shadow:0 0 12px currentColor;background:#5ab4ff14}.rail .on.f-market{color:var(--market);border-left-color:var(--market)}.rail .on.f-ads{color:var(--ads);border-left-color:var(--ads)}.rail .on.f-sov{color:var(--sov);border-left-color:var(--sov)}.rail .on.f-cross{color:var(--bridge);border-left-color:var(--bridge)}#console{position:fixed;left:50%;bottom:22px;transform:translate(-50%);width:min(700px,92vw);z-index:6;text-align:center}#status{font-family:var(--mono);font-size:12.5px;letter-spacing:.1em;color:var(--cyan);min-height:19px;margin-bottom:10px;text-shadow:0 0 14px rgba(90,216,255,.4)}#status .dim{color:var(--dim)}#chips{min-height:22px;margin-bottom:9px;display:flex;gap:6px;justify-content:center;flex-wrap:wrap}.chip{font-family:var(--mono);font-size:9px;letter-spacing:.08em;color:var(--ink);border:1px solid var(--panel-line);background:var(--panel);border-radius:20px;padding:3px 10px;animation:chipin .3s ease both}.chip b{color:var(--cyan);font-weight:500}@keyframes chipin{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}#bar{display:flex;align-items:center;gap:8px;background:var(--panel);border:1px solid var(--panel-line);border-radius:30px;padding:7px 9px 7px 18px;box-shadow:0 0 40px #1450a040,inset 0 0 24px #2878dc0f;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}#cmd{flex:1;background:none;border:0;color:var(--ink);font-family:var(--mono);font-size:11.5px;letter-spacing:.05em;outline:none}#cmd::placeholder{color:var(--faint)}#ask{font-family:var(--mono);font-size:10px;letter-spacing:.2em;color:#03101f;background:linear-gradient(180deg,#7ce0ff,#38b6ef);border:0;border-radius:20px;padding:7px 16px;cursor:pointer}#ask:hover{filter:brightness(1.12)}#talk{display:flex;justify-content:center;margin-top:6px}#mic{width:64px;height:64px;border-radius:50%;border:1.5px solid rgba(90,216,255,.28);background:radial-gradient(circle at 50% 32%,#388ceb4d,#09142af0 72%);color:var(--faint);cursor:not-allowed;display:grid;place-items:center;box-shadow:0 0 34px #1450a059,inset 0 0 20px #5ad8ff12;transition:transform .18s,box-shadow .25s,background .25s}#mic svg{width:24px;height:24px;display:block}#mic.ready{cursor:pointer;color:var(--cyan)}#mic.ready:hover{transform:scale(1.07);box-shadow:0 0 44px #5ad8ff80,inset 0 0 20px #5ad8ff1f}#mic.listening{color:#03101f;background:linear-gradient(180deg,#8fe4ff,#38b6ef);border-color:var(--cyan);animation:micpulse 1.3s ease-in-out infinite}@keyframes micpulse{0%,to{box-shadow:0 0 14px #5ad8ff80,0 0 #5ad8ff59}50%{box-shadow:0 0 30px #5ad8fff2,0 0 0 20px #5ad8ff00}}#wave{display:block;margin:9px auto 0;opacity:.8}#sig{font-family:var(--mono);font-size:8.5px;letter-spacing:.34em;color:var(--faint);margin-top:7px}#answer{position:fixed;right:26px;bottom:150px;width:min(440px,92vw);z-index:7;background:linear-gradient(180deg,#0f1e3cf0,#081124eb);border:1px solid rgba(110,185,255,.2);border-radius:16px;padding:24px 26px;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 14px 70px #000a1ea6,0 0 40px #2882e624;transform:translateY(24px);opacity:0;pointer-events:none;transition:.35s ease}#answer.show{transform:none;opacity:1;pointer-events:auto}#answer .top{display:flex;align-items:center;gap:8px;margin-bottom:13px}#answer .fam{font-family:var(--mono);font-size:9px;letter-spacing:.24em;padding:4px 11px;border-radius:14px;border:1px solid}#answer .demo{font-family:var(--mono);font-size:9px;letter-spacing:.2em;color:#0a0f1c;background:var(--ads);padding:4px 11px;border-radius:14px}#answer .x{margin-left:auto;background:none;border:0;color:var(--dim);cursor:pointer;font-size:17px;line-height:1}#answer .x:hover{color:var(--ink)}#answer h2{font-size:16.5px;font-weight:600;letter-spacing:.01em;line-height:1.4;margin-bottom:13px;text-wrap:balance}#tiles{display:flex;gap:9px;margin-bottom:13px;flex-wrap:wrap}.tile{flex:1;min-width:92px;background:#18305c61;border:1px solid rgba(110,185,255,.16);border-radius:10px;padding:10px 12px}.tile .k{font-family:var(--mono);font-size:8.5px;letter-spacing:.16em;color:var(--dim);margin-bottom:5px}.tile .v{font-family:var(--mono);font-size:18px;font-variant-numeric:tabular-nums;color:var(--cyan)}.tile .v small{font-size:10px;color:var(--dim);letter-spacing:.08em}#answer table{width:100%;border-collapse:collapse;margin-bottom:12px}#answer th{font-family:var(--mono);font-size:8.5px;letter-spacing:.16em;color:var(--dim);text-align:left;padding:0 6px 6px 0;font-weight:400}#answer td{font-family:var(--mono);font-size:11.5px;font-variant-numeric:tabular-nums;color:#c9dcf5;padding:5px 6px 5px 0;border-top:1px solid rgba(90,150,230,.09);line-height:1.5}#answer td.r,#answer th.r{text-align:right;padding-right:0}#answer td .warn{color:var(--ads)}#spark{display:block;margin-bottom:11px}#answer .note{font-size:10px;color:var(--dim);line-height:1.55;margin-bottom:11px}#receipts{font-family:var(--mono);font-size:9px;letter-spacing:.05em;color:var(--dim);border-top:1px dashed rgba(120,180,255,.18);padding-top:9px;line-height:1.8}#receipts b{color:var(--ads);font-weight:500}#receipts i{color:var(--cyan);font-style:normal}#trace{position:fixed;z-index:4;width:262px;pointer-events:none;font-family:var(--mono);font-size:9.5px;letter-spacing:.13em;color:var(--dim);background:#091328b8;border:1px solid rgba(110,185,255,.16);border-radius:11px;padding:9px 13px;opacity:0;transition:opacity .3s;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}#trace.show{opacity:1}#trace .tr{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.8}#trace .cur{color:var(--cyan)}#trace .ok{color:#78cda5cc}#login[hidden],#user[hidden]{display:none}#user{position:fixed;top:26px;right:30px;z-index:8;display:flex;align-items:center;gap:14px;font-family:var(--mono);font-size:11px;letter-spacing:.18em;color:var(--ink);background:#09142ab3;border:1px solid rgba(110,185,255,.18);border-radius:22px;padding:8px 16px;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}#user a{color:var(--faint);text-decoration:none;font-size:9px;letter-spacing:.22em}#user a:hover{color:var(--cyan)}#login{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;background:#030814b8;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}#login .card{width:min(430px,90vw);text-align:center;background:linear-gradient(180deg,#0f1e3cf5,#081124f5);border:1px solid rgba(110,185,255,.22);border-radius:18px;padding:44px 40px 36px;box-shadow:0 20px 90px #000a1eb3,0 0 50px #2882e626}#login h2{font-family:var(--mono);font-size:19px;font-weight:600;letter-spacing:.4em;color:var(--cyan);text-shadow:0 0 18px rgba(90,216,255,.55);margin-bottom:14px}#login p{font-size:13.5px;line-height:1.65;color:var(--dim);margin-bottom:26px}#login .cta{display:inline-block;font-family:var(--mono);font-size:11.5px;letter-spacing:.22em;color:#03101f;background:linear-gradient(180deg,#7ce0ff,#38b6ef);border-radius:26px;padding:13px 30px;text-decoration:none;box-shadow:0 8px 30px #38b6ef59;transition:filter .2s,transform .2s}#login .cta:hover{filter:brightness(1.1);transform:translateY(-1px)}#login #guest-link{display:block;margin:20px auto 0;background:none;border:0;cursor:pointer;font-family:var(--mono);font-size:10px;letter-spacing:.14em;color:var(--faint);text-decoration:underline;text-underline-offset:3px}#login #guest-link:hover{color:var(--dim)}@media (max-width:1080px){#rail-q,#rail-t{display:none}#rail-q{top:70px;bottom:auto;max-height:38vh;overflow-y:auto;background:var(--panel);border:1px solid var(--panel-line);border-radius:10px;padding:10px}#answer{bottom:170px}}@media (prefers-reduced-motion:reduce){.chip{animation:none}#answer{transition:none}}
