@font-face{font-family:Orb;src:url(fonts/Orbitron.ttf) format("truetype");font-weight:400 900}
@font-face{font-family:JBM;src:url(fonts/JetBrainsMono.ttf) format("truetype");font-weight:100 800}
:root{--bg:#04080d;--bg2:#0b1c26;--cy:#3ee6ff;--cyd:#0f4f5c;--gd:#f2b84b;--gd2:#d99a2b;--red:#ff4d5e;--amb:#ffb020;--tx:#cfefff;--mut:#7fb4c4;--cy-rgb:62,230,255;--gd-rgb:242,184,75;--on:#000;--accent-text:var(--cy);--orb:62,230,255|242,184,75|62,230,255|62,230,255}
*{box-sizing:border-box}
body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 50% 40%,var(--bg2) 0,var(--bg) 70%);color:var(--tx);font:13px/1.4 JBM,monospace;padding:8px 14px;display:flex;flex-direction:column;gap:10px}
h1,h2,.clock{font-family:Orb,sans-serif;letter-spacing:.12em}
h2{width:100%;font-size:12px;color:var(--cy);margin:0 0 10px;display:flex;justify-content:space-between;align-items:center}
.panel{border:1px solid var(--cyd);background:linear-gradient(180deg,rgba(var(--cy-rgb),.05),rgba(0,0,0,.25));padding:12px;position:relative;clip-path:polygon(12px 0,100% 0,100% calc(100% - 12px),calc(100% - 12px) 100%,0 100%,0 12px);box-shadow:inset 0 0 24px rgba(var(--cy-rgb),.06)}
.panel:before{content:"";position:absolute;left:0;top:0;width:40px;height:2px;background:var(--gd)}
.badge{font:600 9px JBM;color:var(--on);background:var(--gd);padding:2px 6px;letter-spacing:.1em}
.banner{text-align:center;font:700 12px Orb;letter-spacing:.3em;color:var(--on);background:repeating-linear-gradient(45deg,var(--gd) 0 14px,var(--gd2) 14px 28px);padding:4px}
.hdr{display:flex;align-items:center;justify-content:space-between;gap:16px}
.clock{font-size:34px;color:var(--cy);text-shadow:0 0 12px var(--cy)}
.sub{color:var(--mut);font-size:12px}
.greet{text-align:center}.greet h1{margin:0;font-size:22px;color:var(--gd)}
.grid{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:10px;flex:1;min-height:0}
.tl{list-style:none;margin:0;padding:0 0 0 14px;border-left:1px solid var(--cyd)}
.tl li{position:relative;padding:6px 8px;margin-bottom:6px;border:1px solid transparent}
.tl li:before{content:"";position:absolute;left:-19px;top:11px;width:8px;height:8px;border-radius:50%;background:var(--cyd)}
.tl li.past{opacity:.45}.tl li.cur{border-color:var(--cy)}.tl li.cur:before{background:var(--cy)}
.tl li.next{border-color:var(--gd);animation:pulse 2s infinite}.tl li.next:before{background:var(--gd)}
.tl .t{color:var(--cy);font-size:11px}
.now{position:relative;height:0;border-top:1px dashed var(--red);margin:4px 0 8px -14px}
.now span{position:absolute;left:4px;top:-9px;font-size:10px;color:var(--red);background:var(--bg);padding:0 4px}
@keyframes pulse{50%{box-shadow:0 0 14px rgba(var(--gd-rgb),.6)}}
.core{display:flex;flex-direction:column;align-items:center}
#orb{width:min(100%,340px);height:auto;aspect-ratio:1}
.status{font-family:Orb;letter-spacing:.2em;color:var(--cy);margin:4px 0}
.mic{font:600 12px Orb;letter-spacing:.12em;color:var(--cy);background:transparent;border:1px solid var(--cy);padding:10px 18px;cursor:pointer;user-select:none;touch-action:none}
.mic.on{background:var(--cy);color:var(--on);box-shadow:0 0 20px var(--cy)}
.mic small{font:10px JBM;opacity:.7}
.transcript{width:100%;margin-top:10px;height:84px;overflow:auto;border:1px solid var(--cyd);padding:6px;font-size:12px}
.ln.dim{color:#5e8a98}.ln.bot{color:var(--gd)}
.agents{display:grid;gap:8px}
.ag{border:1px solid var(--cyd);padding:8px;display:grid;grid-template-columns:1fr auto;gap:2px 8px}
.ag b{font-family:Orb;letter-spacing:.1em}.ag .task{grid-column:1/3;color:#8fbccb;font-size:12px}
.pill{font-size:10px;padding:2px 8px;border-radius:10px;text-transform:uppercase;border:1px solid}
.s-idle{color:#7fb4c4}.s-working{color:var(--cy)}.s-blocked{color:var(--red)}.s-needs_approval{color:var(--gd)}
.chips{display:flex;gap:10px;flex-wrap:wrap}
.chip{border:1px solid var(--cyd);padding:6px 12px;min-width:180px}
.chip .cd{font-family:Orb;font-size:15px;color:var(--cy)}
.chip.red{border-color:var(--red)}.chip.red .cd{color:var(--red)}
.chip.amber{border-color:var(--amb)}.chip.amber .cd{color:var(--amb)}
.ftr{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12px}
.hb i{display:inline-block;width:8px;height:8px;border-radius:50%;background:#3dff9a;box-shadow:0 0 8px #3dff9a}
.hb i.beat{animation:beat .6s}@keyframes beat{30%{transform:scale(1.8)}}
.scan{pointer-events:none;position:fixed;inset:0;background:repeating-linear-gradient(0deg,rgba(255,255,255,.025) 0 1px,transparent 1px 3px);z-index:9;animation:scan 8s linear infinite}
@keyframes scan{to{background-position:0 300px}}
.type{overflow:hidden;white-space:nowrap;animation:type 1.5s steps(18) both}
@keyframes type{from{width:0}to{width:100%}}
@media (max-width:1100px){.grid{grid-template-columns:1fr}.hdr{flex-wrap:wrap}}
@media (prefers-reduced-motion:reduce){*,.scan{animation:none!important}}
@media (max-width:600px){.greet h1{font-size:16px;white-space:normal;animation:none}.clock{font-size:28px}}

.badge.live{background:rgba(40,200,120,.18);color:#4fe39a;border-color:#4fe39a}
.src-tag{font-size:9px;padding:1px 4px;border-radius:3px;margin-left:6px;letter-spacing:.08em}
.src-google{background:#1a73e833;color:#8ab4f8}.src-icloud{background:#ff9f0a33;color:#ffc46b}.src-outlook{background:#0078d433;color:#6cb8f6}
#events{max-height:70vh;overflow-y:auto}

/* ---- Theme picker ---- */
.theme-pick{position:fixed;top:8px;right:14px;z-index:50;display:flex;align-items:center;gap:6px;font:600 10px JBM;letter-spacing:.1em;color:var(--mut);background:var(--bg);border:1px solid var(--cyd);padding:3px 6px}
.theme-pick select{font:600 11px JBM;color:var(--tx);background:var(--bg);border:1px solid var(--cy);padding:3px 4px}
.theme-pick select:focus-visible{outline:2px solid var(--gd);outline-offset:2px}
:focus-visible{outline:2px solid var(--gd);outline-offset:2px}
[data-theme=bw]{--bg:#000;--bg2:#111;--cy:#fff;--cyd:#5a5a5a;--gd:#fff;--gd2:#bbb;--red:#fff;--amb:#fff;--tx:#fff;--mut:#bdbdbd;--cy-rgb:255,255,255;--gd-rgb:255,255,255;--on:#000;--orb:255,255,255|200,200,200|255,255,255|160,160,160}
[data-theme=bw] .now{border-top-style:dotted}
[data-theme=bw] .src-tag{background:#000!important;color:#fff!important;border:1px solid #fff}
[data-theme=bw] .badge.live{background:#fff;color:#000;border-color:#fff}
[data-theme=graphite]{--bg:#121315;--bg2:#24262a;--cy:#d4d8de;--cyd:#4a4e55;--gd:#a9b0ba;--gd2:#8a919b;--red:#ff7a7a;--amb:#e0b060;--tx:#eef0f3;--mut:#a3a8b0;--cy-rgb:212,216,222;--gd-rgb:169,176,186;--on:#111;--orb:212,216,222|169,176,186|230,232,236|140,146,154}
[data-theme=crimson]{--bg:#0d0405;--bg2:#2a0a0e;--cy:#ff4d61;--cyd:#5c1720;--gd:#ffc2a8;--gd2:#e09a80;--red:#ffd24d;--tx:#ffe3e6;--mut:#d39aa2;--cy-rgb:255,77,97;--gd-rgb:255,194,168;--on:#000;--orb:255,77,97|255,194,168|255,77,97|255,120,130}
[data-theme=emerald]{--bg:#03100a;--bg2:#08281a;--cy:#34f5a0;--cyd:#0f5236;--gd:#d6f56b;--gd2:#b0cc4a;--tx:#dcfff0;--mut:#86c4a8;--cy-rgb:52,245,160;--gd-rgb:214,245,107;--on:#000;--orb:52,245,160|214,245,107|52,245,160|120,255,200}
[data-theme=amber]{--bg:#0e0a02;--bg2:#2a1f06;--cy:#ffc23d;--cyd:#5c4612;--gd:#fff1b8;--gd2:#e6cf80;--red:#ff6b5e;--tx:#fff4d6;--mut:#d1b878;--cy-rgb:255,194,61;--gd-rgb:255,241,184;--on:#000;--orb:255,194,61|255,241,184|255,194,61|255,160,40}
[data-theme=violet]{--bg:#09051a;--bg2:#1c1040;--cy:#b18cff;--cyd:#3e2a78;--gd:#ff9ef0;--gd2:#d97bcc;--tx:#efe6ff;--mut:#a99cd0;--cy-rgb:177,140,255;--gd-rgb:255,158,240;--on:#000;--orb:177,140,255|255,158,240|177,140,255|130,110,255}
[data-theme=ocean]{--bg:#020a17;--bg2:#06203f;--cy:#4da3ff;--cyd:#163e6e;--gd:#7ff0e4;--gd2:#5cc9be;--tx:#e0efff;--mut:#88a9cc;--cy-rgb:77,163,255;--gd-rgb:127,240,228;--on:#000;--orb:77,163,255|127,240,228|77,163,255|40,120,230}
[data-theme=sunset]{--bg:#120612;--bg2:#2e0f24;--cy:#ff8a5c;--cyd:#5e2a3a;--gd:#ffd166;--gd2:#ff5e9a;--red:#ff4d8d;--tx:#fff0e6;--mut:#d4a5a0;--cy-rgb:255,138,92;--gd-rgb:255,209,102;--on:#000;--orb:255,94,154|255,209,102|255,138,92|178,102,255}
[data-theme=neon]{--bg:#05030c;--bg2:#120a26;--cy:#00f0ff;--cyd:#3a2a6e;--gd:#ff2bd6;--gd2:#7cff4f;--red:#ff3b3b;--tx:#f2f0ff;--mut:#a9a2d6;--cy-rgb:0,240,255;--gd-rgb:255,43,214;--on:#000;--orb:0,240,255|255,43,214|124,255,79|255,230,0}
/* multi-color accents for gradient themes */
[data-theme=sunset] h2,[data-theme=sunset] .clock,[data-theme=sunset] .greet h1{background:linear-gradient(90deg,#ff5e9a,#ff8a5c,#ffd166);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none}
[data-theme=sunset] .panel:before{background:linear-gradient(90deg,#ff5e9a,#ffd166);width:60px}
[data-theme=sunset] .banner{background:linear-gradient(90deg,#ff5e9a,#ff8a5c,#ffd166)}
[data-theme=sunset] .badge{background:linear-gradient(90deg,#ffd166,#ff8a5c)}
[data-theme=neon] h2,[data-theme=neon] .clock,[data-theme=neon] .greet h1{background:linear-gradient(90deg,#00f0ff,#7cff4f,#ffe600,#ff2bd6);-webkit-background-clip:text;background-clip:text;color:transparent;text-shadow:none}
[data-theme=neon] .panel{border-image:linear-gradient(135deg,#00f0ff,#ff2bd6,#7cff4f) 1}
[data-theme=neon] .panel:before{background:linear-gradient(90deg,#00f0ff,#ff2bd6,#ffe600);width:80px}
[data-theme=neon] .banner{background:linear-gradient(90deg,#00f0ff,#7cff4f,#ffe600,#ff2bd6)}
[data-theme=neon] .badge{background:linear-gradient(90deg,#00f0ff,#ff2bd6)}
[data-theme=sunset] h2 .badge,[data-theme=neon] h2 .badge{color:var(--on);-webkit-text-fill-color:var(--on)}

.tzrow{display:flex;gap:14px;margin-top:6px}.tzrow>div{display:flex;flex-direction:column;font-family:Orb,sans-serif;color:var(--cy);font-size:13px;letter-spacing:.08em}.tzl{font-size:9px;opacity:.7}
.hdr-r{display:flex;align-items:center;gap:12px;margin-left:auto}.sdbox{display:flex;flex-direction:column;align-items:flex-end;gap:2px;padding:8px 14px;border:1px solid var(--cy);border-radius:11px;background:rgba(255,255,255,.04);font-family:Orb,sans-serif;color:var(--cy)}.sdbox .sdt{font-size:22px;text-shadow:0 0 10px var(--cy)}.sdbox.due{border-color:#ffb020;color:#ffb020}.sdbox.closed{opacity:.6}
/* ---- Agent roster + markets ---- */
.rcol{display:flex;flex-direction:column;gap:14px;min-width:0}
.roster{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px;max-height:38vh;overflow-y:auto}
.ar{display:grid;grid-template-columns:28px 1fr;gap:0 7px;align-items:center;border:1px solid var(--cyd);padding:5px 6px}
.av{position:relative;overflow:hidden;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;font:700 10px Orb,sans-serif;color:#000;grid-row:1/4}
.ar b{font:600 11px Orb,sans-serif;letter-spacing:.05em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ar .rl{font-size:10px;color:var(--mut)}.ar .st{font-size:9px;color:var(--mut);letter-spacing:.08em}.agnote{font-size:10px;margin-top:6px}
.mk{display:grid;gap:4px}.mq{display:grid;grid-template-columns:1fr auto auto;gap:8px;font-size:12px;border-bottom:1px solid var(--cyd);padding:3px 0}
.mq b{font:600 11px Orb,sans-serif;letter-spacing:.06em}.mq .up{color:#4fe39a}.mq .dn{color:#ff6b6b}.mq .px{font-family:JBM,monospace}
.spx{margin-top:8px;font-size:11px}.spx a{color:var(--tx);text-decoration:none}.spx a:hover{text-decoration:underline}.spx li{margin:3px 0}.spx ul{margin:4px 0 0;padding-left:14px}
.av .avp{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:50%}
/* ---- NY clock spacing + greeting nudge ---- */
.tzrow{gap:12px 18px;flex-wrap:wrap}
.greet{position:relative;left:3%;flex-shrink:0}
/* ---- Briefing + quick actions ---- */
.qa{width:100%;margin-top:8px;font-size:11px}
.qa-bar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:6px}
.qa-bar button{font:600 10px Orb,sans-serif;letter-spacing:.1em;color:var(--cy);background:transparent;border:1px solid var(--cy);padding:5px 10px;cursor:pointer}
#brief-tap{color:var(--on);background:var(--gd);border-color:var(--gd);animation:pulse 2s infinite}
.qa-bar .sub{font-size:10px}
.qa-cols{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.qa-list{list-style:none;margin:3px 0 0;padding:0;max-height:96px;overflow-y:auto}
.qa-list li{border-bottom:1px solid var(--cyd);padding:2px 0}.qa-list b{color:var(--gd);font-weight:600}
/* ---- Phone layout (<768px) ---- */
@media (max-width:767px){
  html,body{overflow-x:hidden;max-width:100vw}
  body{padding:6px 8px}
  .grid{grid-template-columns:1fr}
  .hdr{flex-direction:column;align-items:stretch;gap:10px}
  .greet{left:0;text-align:left}.greet h1{white-space:normal;animation:none;width:auto}
  .tzrow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 12px}
  .tzrow>div{font-size:15px}
  .hdr-r{margin-left:0;justify-content:space-between;flex-wrap:wrap}
  .sdbox{flex:1;align-items:flex-start}
  .roster{max-height:none;grid-template-columns:1fr}
  .qa-cols{grid-template-columns:1fr}
  button,select,.mic,.qa-bar button,.badge#logout,#voice-preview{min-height:44px;min-width:44px}
  .theme-pick{position:static;flex-wrap:wrap;justify-content:flex-end;order:-1}
  .theme-pick select{min-height:44px}
  .chip{min-width:0;flex:1 1 140px}
  .mq{grid-template-columns:1fr auto;}.mq>span:last-child{grid-column:1/3}
  .panel,.rcol,.col{min-width:0;max-width:100%}
  #events{max-height:none}
  .spx a{word-break:break-word}
}

.fuel{margin-top:10px;padding-top:8px;border-top:1px solid rgba(127,127,127,.25)}.fuel-row{display:flex;gap:16px;margin:6px 0}.fuel-row>div{display:flex;flex-direction:column}.fuel-row b{font-size:1.25em}.fuel .sub a{color:inherit}
/* mkt-dropdown variant */
.spx summary{cursor:pointer;list-style:none;padding:4px 0;border-top:1px solid var(--cyd)}.spx summary::-webkit-details-marker{display:none}.spx summary::before{content:'▸ '}.spx details[open] summary::before{content:'▾ '}

/* sports */
.spt{max-height:220px;overflow-y:auto;display:grid;gap:2px}.sq{display:grid;grid-template-columns:56px 1fr auto;gap:6px;font-size:11px;border-bottom:1px solid var(--cyd);padding:2px 0}.sq .lg{color:var(--cy,#6cf);font-size:10px}

/* agent reply */
.ar{cursor:pointer}#arp{position:fixed;inset:0;background:rgba(0,0,0,.55);display:flex;align-items:center;justify-content:center;z-index:50}#arp[hidden]{display:none}.arp-in{background:#0b1622;border:1px solid var(--cyd);padding:12px;width:min(460px,92vw);max-height:85vh;overflow:auto;font-size:12px}.arp-h{display:flex;justify-content:space-between;margin-bottom:6px}.arp-h button,.arp-b button{background:none;border:1px solid var(--cyd);color:var(--tx);padding:4px 10px;cursor:pointer}#arp-mic.on{background:#c33}#arp-t{width:100%;box-sizing:border-box;background:#06101a;color:var(--tx);border:1px solid var(--cyd);padding:6px}.arp-b{display:flex;gap:6px;align-items:center;margin:6px 0}.arp-m{border-bottom:1px solid var(--cyd);padding:4px 0}.arp-r{opacity:.8;margin-top:2px}
