:root{--bg: #000000;--fg: #e6f7ff;--dim: #6c8a92;--cyan: #00e5ff;--arc: #4fc3f7;--gold: #ffc300;--green: #00ff7f;--red: #ff3b30;--panel-border: rgba(0, 229, 255, .35);--panel-glow: rgba(0, 229, 255, .18);--panel-fill: rgba(0, 20, 30, .55);--tabbar-h: 72px;--topbar-h: 52px;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;padding:0;height:100%;background:var(--bg);color:var(--fg);font-family:var(--font-sans);font-weight:500;letter-spacing:.02em;overscroll-behavior:none;-webkit-font-smoothing:antialiased}body{overflow:hidden}#app{position:fixed;inset:0;display:grid;grid-template-rows:var(--topbar-h) 1fr var(--tabbar-h);z-index:1}#bg-fx{position:fixed;inset:0;z-index:0;pointer-events:none;overflow:hidden}.bg-radial{position:absolute;inset:0;background:radial-gradient(ellipse at 50% 0%,rgba(0,229,255,.07),transparent 55%),radial-gradient(ellipse at 80% 110%,rgba(255,195,0,.05),transparent 60%),radial-gradient(ellipse at 0% 90%,rgba(79,195,247,.06),transparent 60%)}.bg-particle{position:absolute;width:220px;height:220px;border-radius:50%;filter:blur(40px);opacity:.45;animation:float 22s ease-in-out infinite alternate}.bg-particle.p1{background:radial-gradient(circle,rgba(0,229,255,.55),transparent 70%);top:8%;left:-60px}.bg-particle.p2{background:radial-gradient(circle,rgba(255,195,0,.35),transparent 70%);bottom:12%;right:-60px;animation-duration:28s}.bg-scan{position:absolute;inset:0;background:repeating-linear-gradient(to bottom,rgba(0,229,255,.03) 0,rgba(0,229,255,.03) 1px,transparent 1px,transparent 3px);mix-blend-mode:screen;opacity:.5;pointer-events:none}@keyframes float{0%{transform:translate(0) scale(1)}to{transform:translate(40px,-30px) scale(1.15)}}#topbar{display:flex;align-items:center;justify-content:space-between;padding:0 16px;padding-top:env(safe-area-inset-top);height:calc(var(--topbar-h) + env(safe-area-inset-top));border-bottom:1px solid rgba(0,229,255,.18);background:linear-gradient(to bottom,#001e28a6,#0003);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:2}.brand{display:flex;align-items:baseline;gap:8px}.brand-glyph{color:var(--cyan);font-size:20px;text-shadow:0 0 10px var(--cyan);animation:pulse-glow 2.4s ease-in-out infinite}.brand-text{font-weight:800;font-size:15px;letter-spacing:.18em;color:var(--fg)}.brand-sub{font-size:9px;letter-spacing:.3em;color:var(--dim)}.topbar-status{display:flex;align-items:center;gap:6px;font-size:10px;letter-spacing:.2em;color:var(--dim)}.dot{width:7px;height:7px;border-radius:50%;display:inline-block}.dot-ok{background:var(--green);box-shadow:0 0 8px var(--green)}.dot-warn{background:var(--gold);box-shadow:0 0 8px var(--gold)}.dot-err{background:var(--red);box-shadow:0 0 8px var(--red)}@keyframes pulse-glow{0%,to{text-shadow:0 0 6px var(--cyan);opacity:.9}50%{text-shadow:0 0 16px var(--cyan),0 0 24px var(--cyan);opacity:1}}#panel-host{position:relative;overflow:hidden;z-index:1}.panel{position:absolute;inset:0;padding:14px 14px calc(14px + env(safe-area-inset-bottom));overflow-y:auto;overflow-x:hidden;opacity:0;transform:translate(28px);transition:opacity .22s ease-out,transform .22s ease-out;-webkit-overflow-scrolling:touch}.panel.is-active{opacity:1;transform:translate(0)}.panel.is-leaving{opacity:0;transform:translate(-28px);pointer-events:none}#tabbar{display:grid;grid-template-columns:repeat(5,1fr);align-items:stretch;padding-bottom:env(safe-area-inset-bottom);border-top:1px solid rgba(0,229,255,.22);background:linear-gradient(to top,#001e28d9,#00000059);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);z-index:2}.tab-btn{appearance:none;background:transparent;border:none;color:var(--dim);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px 4px;font:inherit;cursor:pointer;transition:color .18s ease,transform .18s ease,text-shadow .18s ease;position:relative}.tab-btn .tab-icon{font-size:22px;line-height:1}.tab-btn .tab-label{font-size:9px;letter-spacing:.22em;text-transform:uppercase}.tab-btn.is-active{color:var(--cyan);transform:translateY(-2px) scale(1.08);text-shadow:0 0 10px var(--cyan)}.tab-btn.is-active:after{content:"";position:absolute;top:-1px;left:25%;right:25%;height:2px;background:var(--cyan);box-shadow:0 0 10px var(--cyan),0 0 18px var(--cyan);border-radius:2px}.card{background:var(--panel-fill);border:1px solid var(--panel-border);border-radius:10px;padding:14px;box-shadow:inset 0 0 18px var(--panel-glow),0 0 0 1px #00e5ff0d;position:relative;overflow:hidden}.card:before{content:"";position:absolute;top:0;left:0;width:14px;height:14px;border-top:1.5px solid var(--cyan);border-left:1.5px solid var(--cyan);opacity:.7}.card:after{content:"";position:absolute;bottom:0;right:0;width:14px;height:14px;border-bottom:1.5px solid var(--cyan);border-right:1.5px solid var(--cyan);opacity:.7}.card-title{font-size:10px;letter-spacing:.28em;color:var(--cyan);text-transform:uppercase;margin:0 0 8px;font-weight:700}.card-sub{font-size:10px;letter-spacing:.15em;color:var(--dim)}.btn{appearance:none;background:linear-gradient(180deg,#00e5ff2e,#00e5ff0d);border:1px solid var(--cyan);color:var(--fg);font:inherit;font-weight:700;letter-spacing:.18em;text-transform:uppercase;font-size:12px;padding:12px 18px;border-radius:8px;cursor:pointer;transition:transform .12s ease,box-shadow .18s ease,background .18s ease;box-shadow:0 0 0 0 var(--cyan)}.btn:hover{box-shadow:0 0 16px #00e5ff73}.btn:active{transform:scale(.97)}.btn-ghost{background:transparent;border-color:#00e5ff59;color:var(--dim)}.btn-gold{background:linear-gradient(180deg,#ffc30038,#ffc3000d);border-color:var(--gold);color:var(--gold)}.btn-red{background:linear-gradient(180deg,#ff3b3038,#ff3b300d);border-color:var(--red);color:var(--red)}.btn:disabled{opacity:.4;cursor:not-allowed}.input{appearance:none;background:#00000080;border:1px solid rgba(0,229,255,.35);color:var(--fg);font:inherit;font-size:14px;padding:10px 12px;border-radius:6px;width:100%}.input:focus{outline:none;border-color:var(--cyan);box-shadow:0 0 12px #00e5ff66}.row{display:flex;gap:8px;align-items:center}.col{display:flex;flex-direction:column;gap:8px}.mono{font-family:var(--font-mono)}.muted{color:var(--dim)}.green-text{color:var(--green)}.gold-text{color:var(--gold)}.red-text{color:var(--red)}.cyan-text{color:var(--cyan)}.center{text-align:center}.grow{flex:1}.gap-12{gap:12px}.gap-16{gap:16px}.mt-8{margin-top:8px}.mt-12{margin-top:12px}.mt-16{margin-top:16px}#toast-host{position:fixed;bottom:calc(var(--tabbar-h) + 12px + env(safe-area-inset-bottom));left:12px;right:12px;z-index:9;display:flex;flex-direction:column;gap:6px;pointer-events:none}.toast{background:#00141eeb;border:1px solid var(--panel-border);color:var(--fg);padding:10px 14px;border-radius:8px;font-size:13px;letter-spacing:.05em;box-shadow:0 0 18px #00e5ff40;animation:toast-in .2s ease-out}.toast.t-err{border-color:var(--red);box-shadow:0 0 18px #ff3b3059}.toast.t-ok{border-color:var(--green);box-shadow:0 0 18px #00ff7f40}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.voice-panel{display:flex;flex-direction:column;align-items:center;gap:16px;padding-top:8px}.voice-state{font-size:11px;letter-spacing:.32em;color:var(--dim);text-transform:uppercase;height:14px}.voice-state.s-listening{color:var(--red);text-shadow:0 0 10px var(--red)}.voice-state.s-thinking{color:var(--gold);text-shadow:0 0 10px var(--gold)}.voice-state.s-speaking{color:var(--cyan);text-shadow:0 0 10px var(--cyan)}.voice-state.s-error{color:var(--red);text-shadow:0 0 12px var(--red);animation:error-flash .38s ease-out 2}@keyframes error-flash{50%{opacity:.3}}.reactor-wrap{width:min(78vw,320px);aspect-ratio:1;position:relative}.voice-controls{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;width:100%}.voice-transcript{width:100%;max-height:38vh;display:flex;flex-direction:column;gap:8px}.voice-transcript .bubble{border:1px solid rgba(0,229,255,.25);border-radius:8px;padding:8px 10px;font-size:13px;line-height:1.4;background:#000c148c;word-wrap:break-word}.voice-transcript .bubble.user{border-color:#00ff7f59;color:var(--green)}.voice-transcript .bubble.jarvis{border-color:#00e5ff66;color:var(--fg)}.voice-transcript .bubble .who{font-size:9px;letter-spacing:.3em;text-transform:uppercase;opacity:.7;margin-bottom:4px}.agents-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.agent-card{cursor:pointer;text-align:center;transition:transform .16s ease,box-shadow .2s ease;user-select:none}.agent-card:active{transform:scale(.97)}.agent-glyph{font-size:34px;line-height:1;color:var(--cyan);text-shadow:0 0 12px var(--cyan);margin:6px 0 8px}.agent-name{font-weight:800;letter-spacing:.18em;font-size:13px}.agent-status{font-size:9px;letter-spacing:.28em;margin-top:4px}.agent-status.online{color:var(--green)}.agent-status.offline{color:var(--red)}.agent-activity{font-size:10px;color:var(--dim);margin-top:4px;min-height:12px}.chat-view{display:flex;flex-direction:column;height:100%;gap:10px}.chat-header{display:flex;align-items:center;gap:10px;padding-bottom:6px;border-bottom:1px solid rgba(0,229,255,.18)}.chat-header .back{font-size:18px;color:var(--cyan);cursor:pointer}.chat-body{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:6px;padding:4px 2px}.chat-msg{border-radius:8px;padding:8px 10px;font-size:13px;line-height:1.4;max-width:88%;word-wrap:break-word}.chat-msg.user{align-self:flex-end;background:#00ff7f14;border:1px solid rgba(0,255,127,.35)}.chat-msg.agent{align-self:flex-start;background:#00e5ff12;border:1px solid rgba(0,229,255,.35)}.chat-msg .who{font-size:9px;letter-spacing:.3em;text-transform:uppercase;opacity:.7;margin-bottom:3px}.chat-input-row{display:flex;gap:8px;padding-top:8px;border-top:1px solid rgba(0,229,255,.15)}.chat-input-row textarea.input{min-height:58px;max-height:120px;resize:vertical;line-height:1.35}.chat-input-row .btn{min-width:82px}.browser-panel{display:flex;flex-direction:column;gap:8px;height:100%;padding-bottom:8px}.browser-toolbar{display:flex;align-items:center;gap:6px}.nav-btn{appearance:none;background:#00e5ff14;border:1px solid rgba(0,229,255,.35);color:var(--cyan);font-weight:700;width:36px;height:36px;border-radius:6px;font-size:14px;cursor:pointer;flex-shrink:0}.bookmarks{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}.bookmarks::-webkit-scrollbar{display:none}.bookmark-chip{flex-shrink:0;background:#00e5ff0f;border:1px solid rgba(0,229,255,.25);border-radius:16px;padding:5px 10px;font-size:11px;color:var(--fg);cursor:pointer;letter-spacing:.05em;white-space:nowrap}.bookmark-chip:active{transform:scale(.96)}.bookmark-add{background:transparent;border-style:dashed;color:var(--dim)}.iframe-host{position:relative;flex:1;border:1px solid rgba(0,229,255,.3);border-radius:8px;overflow:hidden;background:#0a0d0f;box-shadow:inset 0 0 24px #00e5ff1f;min-height:300px}.iframe-host iframe{position:absolute;inset:0;width:100%;height:100%;border:0;background:#fff}.iframe-fallback{position:absolute;inset:0;display:none;flex-direction:column;gap:12px;align-items:center;justify-content:center;padding:20px;text-align:center;color:var(--dim);background:#000c12f2}.iframe-fallback.shown{display:flex}.video-panel{display:flex;flex-direction:column;gap:10px}.video-search-row{display:flex;gap:6px}.video-player-wrap{position:relative;aspect-ratio:16 / 9;width:100%;background:#000;border:1px solid rgba(0,229,255,.3);border-radius:8px;overflow:hidden;box-shadow:inset 0 0 24px #00e5ff1f}.video-player-wrap iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.video-meta{display:flex;flex-direction:column;gap:4px}.video-title{font-size:13px;font-weight:700}.trending-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.trending-card{background:#00121a8c;border:1px solid rgba(0,229,255,.25);border-radius:6px;padding:8px;cursor:pointer;font-size:11px;line-height:1.3}.trending-card:active{transform:scale(.97)}.trending-thumb{width:100%;aspect-ratio:16 / 9;background-size:cover;background-position:center;border-radius:4px;margin-bottom:6px;background-color:#001017}.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-bottom:12px}.widget{min-height:110px;display:flex;flex-direction:column;gap:4px}.widget-big{font-size:26px;font-weight:800;letter-spacing:.05em;color:var(--fg)}.widget-sub{font-size:11px;color:var(--dim);letter-spacing:.1em}.widget-line{font-size:12px;color:var(--fg)}
