:root{--bg:#05070b;--panel:#0b111b;--panel2:#101a28;--line:#21344b;--line-hot:#2de7d2;--cyan:#2fffe0;--blue:#4aa8ff;--violet:#9a70ff;--text:#f5faff;--muted:#8d9aaf;--danger:#ff6688;--warning:#ffc95b;--radius:18px}*{box-sizing:border-box}html{background:var(--bg);color-scheme:dark}body{margin:0;min-width:320px;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.ambient{position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 80% 0,#123c48aa 0,transparent 32%),radial-gradient(circle at 15% 85%,#25164666 0,transparent 31%);z-index:0}.app-shell{position:relative;z-index:1;display:grid;grid-template-columns:270px minmax(0,1fr);min-height:100vh}.sidebar{height:100vh;position:sticky;top:0;padding:25px 17px;border-right:1px solid var(--line);background:#070b12e8;backdrop-filter:blur(20px);display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:11px;color:white;text-decoration:none;font-weight:900;letter-spacing:.07em}.brand b{color:var(--cyan)}.brand-mark{display:grid;place-items:center;width:37px;height:37px;border:1px solid var(--cyan);border-radius:11px;color:var(--cyan);box-shadow:0 0 24px #2fffe055}.eyebrow,.label{font:700 10px/1.3 ui-monospace,SFMono-Regular,Menlo,monospace;letter-spacing:.15em;text-transform:uppercase;color:var(--cyan)}.sidebar>.eyebrow{margin:12px 0 23px;color:var(--muted)}.primary-nav{display:grid;gap:4px;overflow:auto;padding-right:3px}.primary-nav button{border:0;background:transparent;color:#afbdd0;text-align:left;padding:10px 12px;border-radius:10px;font-weight:650;cursor:pointer;transition:.18s}.primary-nav button:hover,.primary-nav button.active{background:linear-gradient(90deg,#163443,#101928);color:#fff;box-shadow:inset 2px 0 var(--cyan)}.sidebar-footer{display:flex;gap:10px;align-items:center;margin-top:auto;padding:14px;border:1px solid #1b3d43;border-radius:13px;background:#0a232588}.sidebar-footer strong,.sidebar-footer small{display:block}.sidebar-footer strong{font-size:12px}.sidebar-footer small{margin-top:3px;color:var(--muted);font-size:10px}.pulse{width:9px;height:9px;border-radius:50%;background:var(--cyan);box-shadow:0 0 15px var(--cyan)}.workspace{width:100%;max-width:1540px;margin:auto;padding:27px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:23px}.topbar h1{margin:3px 0 0;font-size:clamp(27px,4vw,38px)}.topbar p{margin:0}.top-actions{display:flex;align-items:center;gap:10px}.connection,.chip{padding:7px 10px;border-radius:999px;border:1px solid #28505e;background:#0b2529;color:var(--cyan);font:700 10px ui-monospace;letter-spacing:.06em}.bento{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:14px}.card{grid-column:span 3;min-width:0;padding:20px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,#101827ed,#080d15ed);box-shadow:0 18px 58px #0005;transition:border-color .2s,transform .2s}.card:hover{border-color:#2b6873;transform:translateY(-1px)}.col-4{grid-column:span 4}.col-5{grid-column:span 5}.col-6{grid-column:span 6}.col-7{grid-column:span 7}.col-8{grid-column:span 8}.col-12{grid-column:span 12}.card h2{margin:7px 0 15px;font-size:18px}.card p{color:var(--muted);line-height:1.6}.card small{color:var(--muted)}.metric{display:block;margin:10px 0 4px;font-size:37px;line-height:1;font-weight:950;letter-spacing:-.04em}.metric.compact{font-size:22px;letter-spacing:0;color:var(--cyan)}.card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px}.chip.live{border-color:#217263}.stack{display:grid;gap:9px}.stack.divided{margin-top:10px;padding-top:10px;border-top:1px solid #1c2939}.product-row{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;border-bottom:1px solid #192637}.product-row:last-child{border-bottom:0}.product-row strong,.product-row small{display:block}.product-row small{margin-top:4px}.status-badge{padding:5px 8px;border:1px solid #315168;border-radius:999px;color:var(--cyan);font:700 10px ui-monospace;text-transform:uppercase}.status-badge.off{color:var(--muted);border-color:#293443}.view{display:none}.view.active{display:block}.button{display:inline-flex;justify-content:center;align-items:center;border:1px solid #315168;background:#111b29;color:#eef8ff;border-radius:10px;padding:10px 14px;text-decoration:none;font-weight:800;cursor:pointer}.button:hover{border-color:var(--cyan)}.button.primary{background:linear-gradient(100deg,#0d6b61,#286ca9);border-color:#32cdbb}.button:disabled{opacity:.45;cursor:not-allowed}.filters{display:grid;grid-template-columns:2fr 1fr 1fr auto;gap:10px;margin:5px 0 14px}.filters label{display:grid;gap:5px;color:var(--muted);font-size:11px}.filters input,.filters select{width:100%;min-height:40px;padding:8px 10px;border:1px solid #293d52;border-radius:9px;background:#070c14;color:white}.table-wrap{overflow:auto;border:1px solid #1b2a3b;border-radius:12px}table{width:100%;min-width:780px;border-collapse:collapse;font-size:13px}th,td{padding:12px;text-align:left;border-bottom:1px solid #192637}th{color:var(--muted);font:700 10px ui-monospace;letter-spacing:.08em;text-transform:uppercase}tbody tr:hover{background:#10202a}.proof{font:10px ui-monospace;color:#7cb7c7}.empty{padding:28px;text-align:center;color:var(--muted)}pre{min-height:110px;margin:13px 0;padding:14px;white-space:pre-wrap;word-break:break-all;background:#05090f;border:1px solid #1c3041;border-radius:11px;color:#bcecff}.role-icon{float:right;color:#2b5260;font-size:38px;font-weight:950}.wave{height:100px;display:flex;gap:6px;align-items:center}.wave i{width:8px;border-radius:8px;background:linear-gradient(var(--cyan),var(--blue));animation:wave 1.1s ease-in-out infinite alternate}.wave i:nth-child(2n){animation-delay:.2s}.wave i:nth-child(3n){animation-delay:.4s}@keyframes wave{from{height:20%}to{height:90%}}.flow{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;margin:28px 0}.flow span{padding:14px 20px;border:1px solid #2e6070;border-radius:12px;background:#0d1f2a}.flow b{color:var(--cyan)}.steps{display:grid;gap:13px;color:#bdc9d8}.toast{position:fixed;right:24px;bottom:24px;max-width:360px;padding:13px 16px;border:1px solid #2a756f;border-radius:12px;background:#0b2225;color:#dffff9;box-shadow:0 20px 70px #000a;opacity:0;pointer-events:none;transform:translateY(12px);transition:.2s}.toast.show{opacity:1;transform:none}.danger{color:var(--danger)!important}
@media(max-width:1050px){.app-shell{grid-template-columns:220px minmax(0,1fr)}.card,.col-4{grid-column:span 6}.col-5,.col-7,.col-8{grid-column:span 12}.filters{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.app-shell{display:block}.sidebar{position:static;height:auto}.primary-nav{grid-template-columns:repeat(2,minmax(0,1fr));max-height:230px}.sidebar-footer{margin-top:16px}.workspace{padding:17px}.topbar{align-items:flex-start;flex-direction:column}.card,.col-4,.col-5,.col-6,.col-7,.col-8{grid-column:span 12}.filters{grid-template-columns:1fr}.connection{max-width:100%;overflow:hidden;text-overflow:ellipsis}.top-actions{width:100%;justify-content:space-between}}
.onboarding-banner{margin-bottom:20px;display:flex;align-items:center;justify-content:space-between;gap:24px;border-color:var(--cyan);box-shadow:0 0 38px #22d3ee18}.onboarding-banner[hidden]{display:none}.onboarding-banner h2{margin:.35rem 0}.onboarding-banner .button{flex:0 0 auto}@media(max-width:760px){.onboarding-banner{align-items:stretch;flex-direction:column}}

.zone-card{margin-bottom:18px}.zone-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.zone-grid label{display:grid;gap:7px;color:var(--muted)}.zone-grid input:not([type=checkbox]),.zone-grid select,.zone-grid textarea{width:100%;min-height:42px;padding:10px;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--text)}.zone-wide{grid-column:1/-1}.zone-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.zone-grid .check{display:flex;align-items:flex-start}.zone-grid input[type=checkbox]{margin-top:5px}.zone-grid p{margin:0}.zone-grid audio{max-width:100%}@media(max-width:700px){.zone-grid{grid-template-columns:1fr}.zone-wide{grid-column:auto}}
