:root{color-scheme:dark;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:#03040a;color:#f5f8ff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--panel: rgba(11, 15, 32, .58);--panel-strong: rgba(16, 22, 44, .74);--line: rgba(165, 190, 255, .16);--muted: #8e98b7;--text-soft: #c8d0e8;--cyan: #8fe8ff;--blue: #638cff;--violet: #9b72ff;--magenta: #ef7cff;--danger: #ff8aa7}*{box-sizing:border-box}body{min-height:100vh;min-width:320px;margin:0;overflow-x:hidden}button,input{font:inherit}button{border:0;cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.login-page{position:relative;display:grid;min-height:100svh;padding:20px;place-items:center;overflow:hidden;background:radial-gradient(circle at 50% 40%,rgba(79,124,255,.2),transparent 34%),linear-gradient(135deg,#03040a,#07091a 45%,#10071b)}.login-card{z-index:1;display:grid;width:min(420px,100%);gap:20px;padding:28px;border-radius:10px}.login-brand{display:flex;align-items:center;gap:12px}.login-brand span{display:block;margin-top:2px;color:var(--muted);font-size:.78rem}.login-heading h1{margin-top:10px;font-size:1.8rem}.login-heading p,.login-card label span{color:var(--muted)}.login-heading p{margin-bottom:0}.login-card label{display:grid;gap:7px;text-align:left}.login-card label span{font-size:.8rem}.login-card input{min-height:46px;border:1px solid var(--line);border-radius:8px;outline:0;padding:0 12px;color:#fff;background:#ffffff0d}.login-card input:focus{border-color:#8fe8ff80}.login-error{margin:0;color:#ffd0dc;font-size:.88rem}.login-submit{width:100%}.login-submit:disabled{cursor:not-allowed;opacity:.55}.login-loading{z-index:1;padding:18px 24px;border-radius:8px;color:var(--text-soft)}.nova-app{position:relative;display:grid;grid-template-columns:minmax(76px,210px) minmax(420px,1fr) minmax(290px,360px);height:100svh;min-height:720px;gap:clamp(14px,1.25vw,22px);padding:clamp(16px,1.75vw,28px);overflow:hidden;background:radial-gradient(circle at 50% 34%,rgba(79,124,255,.19),transparent 32%),linear-gradient(135deg,#03040a,#07091a 38%,#10071b 72%,#050611)}.nova-app:before{position:absolute;inset:0;pointer-events:none;content:"";background-image:linear-gradient(rgba(150,180,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(150,180,255,.05) 1px,transparent 1px);background-size:72px 72px;-webkit-mask-image:radial-gradient(circle at center,black 0%,transparent 72%);mask-image:radial-gradient(circle at center,black 0%,transparent 72%)}.ambient-grid{position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 0 40%,rgba(143,232,255,.08) 49%,transparent 58%),linear-gradient(245deg,transparent 0 42%,rgba(239,124,255,.07) 50%,transparent 61%);opacity:.78}.panel{border:1px solid var(--line);background:var(--panel);box-shadow:0 24px 90px #0000005c,inset 0 1px #ffffff14;-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}.sidebar{z-index:1;display:flex;flex-direction:column;gap:clamp(20px,2.8vh,30px);height:100%;min-height:0;padding:18px 14px;border-radius:8px}.brand{display:flex;align-items:center;gap:12px;min-width:0}.brand-mark{display:grid;width:40px;height:40px;flex:0 0 auto;place-items:center;border:1px solid rgba(143,232,255,.26);border-radius:8px;color:var(--cyan);background:#8fe8ff14;box-shadow:0 0 32px #8fe8ff2e}.brand strong,.widget strong{display:block;letter-spacing:.08em}.brand span,.widget-label,.status-block small,.hero-copy p,.widget p{color:var(--muted)}.widget .empty-state{margin:0;color:var(--muted);font-size:.86rem}.brand span{display:block;margin-top:2px;font-size:.7rem;line-height:1.25}.nav-list{display:grid;gap:6px;scrollbar-width:none}.nav-list::-webkit-scrollbar{display:none}.logout-button{margin-top:auto}.nav-item{display:flex;align-items:center;gap:12px;width:100%;min-height:40px;padding:0 12px;border-radius:8px;color:var(--text-soft);background:transparent;transition:background .18s ease,color .18s ease,transform .18s ease}.nav-item:hover,.nav-item--active{color:#fff;background:#8fe8ff1a}.nav-item:hover{transform:translate(2px)}.command-center{z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;min-width:0;min-height:0;padding-block:0;text-align:center}.calendar-page{width:min(900px,100%);height:100%;padding:24px 0;overflow-y:auto;text-align:left}.calendar-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.calendar-toolbar h1{font-size:clamp(1.5rem,2.4vw,2.5rem)}.calendar-toolbar .widget-label{display:block;margin-bottom:7px;color:var(--muted);font-size:.72rem}.calendar-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.calendar-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:16px;margin-bottom:16px;border-radius:8px}.calendar-form input{min-height:42px;border:1px solid var(--line);border-radius:8px;padding:0 10px;color:#fff;background:#ffffff0d}.calendar-check{display:flex;align-items:center;gap:8px;color:var(--text-soft)}.calendar-list{padding:16px;border-radius:8px}.calendar-event{display:grid;grid-template-columns:120px 1fr;gap:16px;padding:12px 4px;border-bottom:1px solid var(--line)}.calendar-event:last-child{border-bottom:0}.calendar-event time{color:var(--cyan)}.calendar-event small{display:block;margin-top:4px;color:var(--muted)}.hero-copy{animation:rise-in .7s ease both}h1{max-width:760px;margin:0;font-size:clamp(1.8rem,2.7vw,3.7rem);font-weight:690;line-height:1.04}.hero-copy>p:last-child{margin:10px 0 0;font-size:clamp(.95rem,1.05vw,1.18rem)}.orb-shell{position:relative;display:grid;width:min(47svh,31vw,520px);min-width:340px;max-width:92%;aspect-ratio:1;margin:clamp(2px,.7vh,8px) auto 0;place-items:center;animation:focus-in .9s ease both}.orb-canvas{position:relative;z-index:2;display:grid;width:100%;height:100%;place-items:center}.orb-canvas canvas{width:100%!important;height:100%!important}.orb-aura{position:absolute;inset:10%;z-index:1;border-radius:50%;background:radial-gradient(circle,rgba(143,232,255,.22) 0%,rgba(99,140,255,.12) 38%,transparent 70%);filter:blur(32px);opacity:.78;transform:scale(.96);transition:opacity .26s ease,transform .26s ease}.orb-shell[data-state=listening] .orb-aura,.orb-shell[data-state=speaking] .orb-aura{opacity:.96;transform:scale(1.04)}.orb-shell[data-state=error] .orb-aura{background:radial-gradient(circle,rgba(255,138,167,.22) 0%,rgba(155,114,255,.14) 38%,transparent 70%)}.status-block{display:grid;justify-items:center;gap:6px;margin-top:clamp(-16px,-1.3vh,-8px)}.status-block strong{font-size:.95rem;letter-spacing:.03em}.state-dot{width:9px;height:9px;border-radius:99px;background:var(--cyan);box-shadow:0 0 18px var(--cyan)}.state-dot--thinking{background:var(--violet);box-shadow:0 0 18px var(--violet)}.state-dot--speaking{background:var(--magenta);box-shadow:0 0 18px var(--magenta)}.state-dot--error{background:var(--danger);box-shadow:0 0 18px var(--danger)}.waveform{display:flex;align-items:center;justify-content:center;width:min(380px,76vw);height:38px;gap:4px;margin:16px 0 14px}.nova-response{width:min(600px,100%);max-height:104px;margin-top:10px;padding:12px 16px;overflow-y:auto;border-radius:8px;color:var(--text-soft);background:#0b0f2075;font-size:.94rem;line-height:1.5;text-align:left;white-space:pre-wrap}.nova-response--error{border-color:#ff8aa766;color:#ffd0dc}.nova-tool-status{display:block;margin-top:6px;color:var(--muted);font-size:.8rem}.nova-voice-error{color:#ffd0dc}.calendar-confirmation{width:min(520px,100%);margin-top:12px;padding:14px 16px;border-radius:10px;text-align:left}.calendar-confirmation>span{color:var(--cyan);font-size:.7rem}.calendar-confirmation>strong{display:block;margin:4px 0 10px}.calendar-confirmation-summary{display:grid;gap:2px;padding:8px 0;border-top:1px solid var(--line);color:var(--text-soft);font-size:.82rem}.calendar-confirmation-summary small,.calendar-confirmation-summary span{color:var(--muted)}.calendar-confirmation-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}.calendar-confirmation-actions button{min-height:34px;padding:0 12px;border:1px solid var(--line);border-radius:7px;color:var(--text-soft);background:#ffffff0f}.calendar-confirmation-actions button:last-child{color:#06101d;background:var(--cyan)}.calendar-confirmation--delete .calendar-confirmation-actions button:last-child{color:#260913;background:var(--danger)}.waveform span{width:3px;height:20%;min-height:8px;border-radius:99px;background:linear-gradient(180deg,var(--cyan),var(--magenta));opacity:.35;transform:scaleY(.62);transition:height .18s ease,opacity .18s ease,transform .18s ease}.waveform--active span{height:var(--bar-height);opacity:.8;animation:wave .88s ease-in-out infinite;animation-delay:calc(var(--bar-index) * -44ms)}.action-row{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:2px}.primary-action{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:0 22px;border-radius:8px;color:#03101a;background:linear-gradient(135deg,#9af1ff,#d99aff);box-shadow:0 18px 50px #8fe8ff38;font-weight:760;transition:transform .18s ease,box-shadow .18s ease}.primary-action:hover{transform:translateY(-2px);box-shadow:0 24px 66px #d99aff47}.conversation-action{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:0 18px;border:1px solid rgba(154,241,255,.3);border-radius:8px;color:var(--text-soft);background:#091827b3;transition:border-color .18s ease,color .18s ease,background .18s ease,transform .18s ease}.conversation-action:hover{border-color:#9af1ff7a;background:#0d1f31d1;transform:translateY(-1px)}.conversation-action--active{border-color:#ff9abc8c;color:#ffd9e6}.conversation-status{margin-top:10px;color:var(--muted)}.composer{display:grid;grid-template-columns:1fr 44px 44px;align-items:center;width:min(600px,100%);min-height:54px;gap:8px;margin-top:18px;padding:6px;border-radius:8px;background:var(--panel-strong)}.composer input{width:100%;min-width:0;border:0;outline:0;padding:0 12px;color:#fff;background:transparent}.composer input::placeholder{color:#737e9e}.icon-button{display:grid;width:42px;height:42px;place-items:center;border-radius:8px;color:var(--text-soft);background:#ffffff0f;transition:color .18s ease,background .18s ease,transform .18s ease}.icon-button:hover{color:#fff;background:#8fe8ff21;transform:translateY(-1px)}.icon-button--send{color:#06101d;background:var(--cyan)}.composer input:disabled,.icon-button:disabled{cursor:not-allowed;opacity:.55}.state-demo{display:flex;flex-wrap:wrap;justify-content:center;gap:6px;margin-top:10px;opacity:.58;transition:opacity .18s ease}.state-demo:hover{opacity:1}.state-chip{display:inline-flex;align-items:center;gap:5px;min-height:26px;padding:0 8px;border:1px solid rgba(165,190,255,.14);border-radius:8px;color:var(--muted);background:#ffffff0a;font-size:.73rem}.state-chip--active{color:#fff;border-color:#8fe8ff5c;background:#8fe8ff1c}.right-panel{z-index:1;display:flex;align-self:center;flex-direction:column;justify-content:flex-start;height:auto;max-height:min(760px,calc(100svh - 56px));min-height:0;padding:clamp(20px,2vw,28px);overflow-y:auto;border-color:#a5beff1c;border-radius:16px;background:linear-gradient(160deg,#1218319e,#070b197a),#080c1b7a;box-shadow:0 28px 90px #0000004d,inset 0 1px #ffffff0e;animation:rise-in .68s ease both;scrollbar-width:thin}.assistant-time{padding:2px 2px 24px;border-bottom:1px solid rgba(165,190,255,.1)}.local-time{display:block;color:#f8faff;font-size:clamp(2.55rem,3.4vw,3.65rem);font-variant-numeric:tabular-nums;font-weight:590;letter-spacing:-.055em;line-height:.95}.local-date{margin:12px 0 3px;color:var(--text-soft);font-size:.94rem;text-transform:capitalize}.assistant-meta{color:var(--muted);font-size:.74rem}.assistant-section{padding:21px 2px;border-bottom:1px solid rgba(165,190,255,.1)}.assistant-section-heading{display:flex;align-items:center;gap:9px;margin-bottom:12px;color:#8fe8ffc7}.assistant-section-heading h2{margin:0;color:var(--text-soft);font-size:.9rem;font-weight:610;letter-spacing:.01em}.assistant-list{display:grid;gap:3px}.schedule-item{display:grid;grid-template-columns:minmax(72px,86px) minmax(0,1fr);align-items:center;gap:14px;padding:12px 0}.schedule-item+.schedule-item{border-top:1px solid rgba(165,190,255,.07)}.schedule-time{display:grid;gap:2px;min-width:0}.schedule-time span{color:var(--muted);font-size:.72rem;font-weight:560}.schedule-time time{color:var(--cyan);font-size:.86rem;font-variant-numeric:tabular-nums;line-height:1.2}.schedule-copy{min-width:0}.schedule-copy strong{display:block;overflow:hidden;color:#eef2ff;font-size:.94rem;font-weight:580;line-height:1.32;text-overflow:ellipsis;white-space:nowrap}.schedule-copy small{display:block;margin-top:3px;overflow:hidden;color:var(--muted);font-size:.76rem;text-overflow:ellipsis;white-space:nowrap}.task-item{display:flex;align-items:center;gap:10px;min-height:30px;color:var(--text-soft);font-size:.84rem}.task-item input{width:15px;height:15px;accent-color:var(--cyan)}.right-panel .empty-state{margin:2px 0 0;color:var(--muted);font-size:.82rem;line-height:1.45}.empty-state--complete:before{margin-right:7px;color:#8fe8ffb8;content:"✓"}.assistant-status{padding:18px 2px 0}.status-strip{display:flex;flex-wrap:wrap;gap:7px}.status-chip{display:inline-flex;align-items:center;gap:6px;min-height:27px;padding:0 9px;border:1px solid rgba(165,190,255,.1);border-radius:999px;color:var(--text-soft);background:#ffffff06;font-size:.72rem}.status-chip small{color:var(--muted);font-size:.65rem}.system-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--cyan);box-shadow:0 0 10px #8fe8ffbf}.system-dot--ready{background:var(--violet);box-shadow:0 0 14px var(--violet)}.system-dot--online,.system-dot--connected{background:var(--cyan);box-shadow:0 0 14px var(--cyan)}.system-dot--offline,.system-dot--degraded{background:var(--danger);box-shadow:0 0 14px var(--danger)}.system-dot--disconnected,.system-dot--unknown{background:var(--muted);box-shadow:none}@keyframes rise-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes focus-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes wave{0%,to{transform:scaleY(.45)}50%{transform:scaleY(1)}}@media(max-width:1120px){.nova-app{grid-template-columns:84px minmax(0,1fr);grid-template-areas:"sidebar center" "sidebar right";height:auto;min-height:100svh;overflow:visible}.sidebar{grid-area:sidebar;align-items:center;height:auto}.brand div:last-child,.nav-item span{display:none}.nav-item{justify-content:center;padding:0}.command-center{grid-area:center;height:auto;min-height:min(720px,100svh);padding-block:18px}.right-panel{grid-area:right;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;height:auto;max-height:none;gap:0 28px}.assistant-time,.assistant-section{border-bottom-color:#a5beff17}}@media(max-width:760px){.nova-app{display:flex;flex-direction:column;gap:18px;padding:14px;min-height:100svh}.sidebar{min-height:auto;flex-direction:row;justify-content:space-between;padding:10px}.brand{flex:0 0 auto}.nav-list{display:flex;overflow-x:auto;max-width:calc(100vw - 92px);padding-bottom:2px}.nav-item{width:44px;flex:0 0 44px}.command-center{padding-block:12px}h1{font-size:clamp(2rem,11vw,3.4rem)}.orb-shell{width:min(98vw,430px);min-width:0;margin-top:0}.status-block{margin-top:-28px}.composer{grid-template-columns:1fr 42px 42px}.right-panel{display:flex;grid-template-columns:1fr;align-content:start;width:100%;padding:20px}}@media(min-width:1121px)and (max-height:820px){.nova-app{min-height:100svh;gap:16px;padding:14px}.sidebar{gap:18px;padding:14px 12px}.nav-item{min-height:36px}h1{font-size:clamp(1.65rem,2.3vw,3rem)}.hero-copy>p:last-child{margin-top:6px}.orb-shell{width:min(43svh,29vw,460px)}.waveform{height:32px;margin:8px 0}.primary-action{min-height:42px}.composer{min-height:50px;margin-top:10px}.state-demo{margin-top:8px}.widget{padding:12px 14px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
