:root{--bg:#050505;--panel:#0a0a0a;--line:#242424;--line2:#3a3a3a;--text:#f4f4f4;--muted:#858585}
*{box-sizing:border-box}html{background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}body{margin:0;background:radial-gradient(circle at 50% -20%,#151515 0,#050505 38%);min-height:100vh}button,input,textarea,select{font:inherit}.muted{color:var(--muted)}code{color:#ddd}
.login-body,.setup-body{display:grid;place-items:center;min-height:100svh;padding:24px}.login-shell{width:min(440px,100%);text-align:center}.brand{font-size:20px;font-weight:700;letter-spacing:.6em;margin-right:-.6em}.orb-wrap{height:220px;display:grid;place-items:center}
.orb{width:118px;height:118px;border:1px solid #7e7e7e;border-radius:50%;position:relative;display:grid;place-items:center;filter:drop-shadow(0 0 16px #ffffff18);animation:float 5s ease-in-out infinite}.orb:before,.orb:after,.orb i,.orb b,.orb span{content:"";position:absolute;border-radius:50%;border:1px solid #383838}.orb:before{inset:10px;border-style:dashed;animation:spin 13s linear infinite}.orb:after{inset:23px;border-color:#8e8e8e;border-left-color:transparent;animation:spin 5s linear infinite reverse}.orb i{inset:35px;border-color:#d9d9d9;border-top-color:transparent;animation:spin 2.4s linear infinite}.orb b{width:18px;height:18px;background:#fff;border:none;box-shadow:0 0 30px #fff8}.orb span{inset:-12px;border-color:#ffffff12;animation:pulse 2.7s ease-in-out infinite}.orb.big{width:178px;height:178px}
.login-status{font-size:11px;letter-spacing:.25em;color:#989898;margin-bottom:22px}.pin-form{display:flex;gap:8px}.pin-form input{min-width:0;flex:1;background:#080808;border:1px solid var(--line2);color:#fff;border-radius:2px;padding:16px;text-align:center;letter-spacing:.45em;font-size:18px;outline:none}.pin-form input:focus{border-color:#aaa}.pin-form button,.primary-btn,.ghost-btn{background:#f2f2f2;color:#050505;border:0;padding:14px 20px;font-weight:800;letter-spacing:.08em;cursor:pointer;text-decoration:none;display:inline-block}.login-meta{margin-top:26px;font-size:9px;letter-spacing:.18em;color:#555}.login-error,.error-box{margin:0 0 14px;color:#fff;border:1px solid #555;background:#111;padding:10px;font-size:12px}
.app{min-height:100vh;padding-left:86px}header{height:72px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 30px;position:sticky;top:0;background:#050505e8;backdrop-filter:blur(20px);z-index:20}header strong{font-size:15px;letter-spacing:.35em}header span{font-size:9px;color:#777;margin-left:12px;letter-spacing:.18em}.header-state{font-size:10px;letter-spacing:.14em;color:#aaa}.header-state i,.live-dot:before{display:inline-block;width:6px;height:6px;border-radius:50%;background:#eee;margin-right:8px;box-shadow:0 0 10px #fff}
.side-nav{position:fixed;left:0;top:0;bottom:0;width:86px;border-right:1px solid var(--line);padding-top:88px;background:#060606;z-index:30;display:flex;flex-direction:column}.nav-btn{height:65px;border:0;border-left:2px solid transparent;background:transparent;color:#555;cursor:pointer;font-size:9px;letter-spacing:.1em;text-decoration:none;display:flex;align-items:center;justify-content:center;gap:5px;flex-direction:column}.nav-btn span{font-size:8px}.nav-btn.active{color:#fff;border-left-color:#fff;background:#0b0b0b}.nav-btn.logout{margin-top:auto}
.content{max-width:1500px;margin:auto;padding:32px}.view{display:none}.view.active{display:block;animation:appear .25s ease}.hero-grid{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:16px;min-height:430px}.panel{border:1px solid var(--line);background:linear-gradient(145deg,#0c0c0ce8,#080808e8);padding:20px;position:relative;overflow:hidden}.panel:after{content:"";position:absolute;left:0;top:0;width:45px;height:1px;background:#ddd}.panel-title{font-size:10px;letter-spacing:.18em;color:#ddd;margin-bottom:22px}.panel-title small{float:right;color:#555;font-size:8px}.status-row{display:flex;justify-content:space-between;gap:16px;padding:12px 0;border-bottom:1px solid #171717;font-size:11px;letter-spacing:.08em}.status-row span{color:#777}.status-row b{font-size:9px;color:#777;text-align:right}.status-row b.ok,.ok{color:#fff!important}
.core-stage{display:flex;align-items:center;justify-content:center;flex-direction:column;min-height:420px}.core-stage h1{font-size:25px;letter-spacing:.55em;margin:35px 0 6px;margin-right:-.55em}.core-stage p{font-size:9px;letter-spacing:.24em;color:#777}.ghost-btn{margin-top:22px;background:transparent;border:1px solid #303030;color:#aaa;font-size:9px;padding:12px 18px}.metric{display:flex;align-items:end;gap:10px;border-bottom:1px solid #171717;padding:17px 0}.metric strong{font-size:27px;font-weight:400}.metric span{font-size:8px;letter-spacing:.15em;color:#696969;margin-bottom:4px}.wide{margin-top:16px;min-height:150px}.empty-feed span{font-size:11px;letter-spacing:.13em}.empty-feed p{color:#666;font-size:12px;max-width:700px;line-height:1.6}
.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:18px}.section-head span{font-size:9px;color:#606060;letter-spacing:.18em}.section-head h2{font-weight:450;font-size:27px;letter-spacing:.15em;margin:8px 0 0}.live-dot{font-size:9px;color:#aaa;letter-spacing:.1em}.chat-shell{height:calc(100svh - 160px);display:flex;flex-direction:column;padding:0}.messages{flex:1;overflow:auto;padding:25px}.msg{max-width:780px;margin-bottom:25px}.msg.user{margin-left:auto;text-align:right}.msg-label{font-size:8px;letter-spacing:.2em;color:#5f5f5f;margin-bottom:8px}.msg-text{font-size:15px;line-height:1.65;color:#ddd}.msg.user .msg-text{color:#fff}.msg-meta{font-size:8px;color:#555;margin-top:7px}.chat-input{border-top:1px solid var(--line);display:flex;align-items:end;padding:12px;gap:10px}.chat-input textarea{flex:1;resize:none;background:#090909;color:#fff;border:1px solid #242424;outline:none;padding:13px 15px;max-height:150px}.chat-input button{border:1px solid #303030;background:#0b0b0b;color:#aaa;padding:13px 16px;cursor:pointer}.chat-input button[type=submit]{background:#eee;color:#050505;border-color:#eee;font-weight:700}.chat-input button.listening{background:#eee;color:#050505}.chat-note{text-align:center;color:#484848;font-size:8px;letter-spacing:.08em;padding:8px}
.two-col{display:grid;grid-template-columns:1fr 1.35fr;gap:16px}.lab-form label{display:flex;flex-direction:column;gap:7px;color:#777;font-size:10px;letter-spacing:.1em;margin-bottom:16px}.lab-form input,.lab-form textarea,.lab-form select,.setup-grid input{background:#080808;border:1px solid #292929;color:#ddd;padding:13px;outline:none}.lab-form textarea{resize:vertical}.lab-form .check{flex-direction:row;align-items:center}.memory-list{max-height:580px;overflow:auto}.memory-item{display:flex;gap:12px;justify-content:space-between;border-bottom:1px solid #181818;padding:14px 0}.memory-item small{font-size:8px;color:#777;letter-spacing:.14em}.memory-item p{font-size:12px;line-height:1.55;color:#ccc;margin:6px 0}.memory-item button{background:transparent;color:#666;border:0;font-size:20px;cursor:pointer}
.device-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.device-card .device-icon{font-size:9px;border:1px solid #333;display:inline-block;padding:7px;letter-spacing:.1em}.device-card h3{font-size:14px;letter-spacing:.15em}.device-card b{font-size:9px;color:#666}.device-card p{font-size:11px;color:#5f5f5f}.placeholder-panel{min-height:280px;display:flex;flex-direction:column;justify-content:center}.placeholder-panel h3{letter-spacing:.16em;font-size:15px}.placeholder-panel p{color:#696969;max-width:760px;line-height:1.7;font-size:12px}
.lab-tabs{display:flex;gap:5px;overflow:auto;margin-bottom:12px}.lab-tab{background:#090909;border:1px solid #232323;color:#5f5f5f;padding:10px 14px;font-size:9px;letter-spacing:.1em;white-space:nowrap}.lab-tab.active{color:#fff;border-color:#777}.lab-pane{display:none}.lab-pane.active{display:block}.terminal{white-space:pre-wrap;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:11px;color:#888;line-height:1.8;min-height:240px}.terminal span{color:#fff}
.setup-card{width:min(680px,100%);border:1px solid #292929;padding:30px;background:#090909}.eyebrow{font-size:9px;letter-spacing:.2em;color:#777}.setup-card h1{font-size:23px;letter-spacing:.2em}.mini-orb{width:34px;height:34px;border:1px solid #777;border-radius:50%;margin:24px 0;box-shadow:inset 0 0 18px #fff2}.setup-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.setup-grid label{display:flex;flex-direction:column;gap:6px;color:#777;font-size:10px}.span2{grid-column:1/-1}
@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{transform:scale(1.12);opacity:.35}}@keyframes float{50%{transform:translateY(-5px)}}@keyframes appear{from{opacity:0;transform:translateY(4px)}}
@media(max-width:900px){.app{padding-left:0;padding-bottom:70px}header{height:58px;padding:0 16px}header span{display:none}.header-state{font-size:8px}.side-nav{top:auto;right:0;bottom:0;width:auto;height:64px;padding:0;border-right:0;border-top:1px solid var(--line);flex-direction:row;overflow:auto}.nav-btn{min-width:74px;height:63px;border-left:0;border-top:2px solid transparent}.nav-btn.active{border-left:0;border-top-color:#fff}.nav-btn.logout{margin:0 0 0 auto}.content{padding:18px 14px}.hero-grid{grid-template-columns:1fr}.system-panel{order:2}.core-stage{order:1;min-height:330px}.today-panel{order:3}.orb.big{width:150px;height:150px}.two-col,.device-grid{grid-template-columns:1fr}.section-head h2{font-size:21px}.chat-shell{height:calc(100svh - 140px)}}
@media(max-width:520px){.login-shell{padding:0 8px}.brand{font-size:17px}.orb-wrap{height:190px}.pin-form{flex-direction:column}.pin-form input{width:100%}.content{padding:14px 10px}.panel{padding:16px}.core-stage h1{font-size:20px}.section-head h2{font-size:18px}.setup-grid{grid-template-columns:1fr}.span2{grid-column:auto}.setup-card{padding:20px}}
