:root{--bg-root: #070f16;--bg-surface: #0d1a27;--bg-elevated: #112334;--bg-soft: #14293e;--line-soft: rgba(149, 183, 217, .18);--line-strong: rgba(170, 208, 241, .32);--text-strong: #eff7ff;--text-muted: #9bb7d6;--brand-cyan: #58d6ff;--brand-amber: #ffc26b;--brand-blue: #2ea7ff;--ok: #42d69c;--danger: #ff7f7f;--warn: #ffba58;--info: #69c6ff;--radius-sm: 10px;--radius-md: 14px;--radius-lg: 18px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--shadow-soft: 0 20px 40px rgba(2, 10, 19, .38);--shadow-ring: 0 0 0 2px rgba(88, 214, 255, .18)}*{box-sizing:border-box}html,body,#app{min-height:100%;margin:0}body{font-family:Space Grotesk,Trebuchet MS,Segoe UI,sans-serif;color:var(--text-strong);background:radial-gradient(900px 540px at -10% -10%,rgba(88,214,255,.2),transparent 60%),radial-gradient(700px 440px at 108% -8%,rgba(255,194,107,.16),transparent 62%),linear-gradient(165deg,#050c12,#0b1522 48%,#101f2f)}h1,h2,h3,h4,p{margin:0}a{color:inherit;text-decoration:none}input,select,button,textarea{font:inherit}input,select,textarea{width:100%;border:1px solid var(--line-soft);background:#08111cd1;color:var(--text-strong);border-radius:var(--radius-sm);padding:10px 12px}input:focus,select:focus,textarea:focus{outline:none;border-color:#58d6ff80;box-shadow:var(--shadow-ring)}label{display:grid;gap:6px;color:var(--text-muted);font-size:13px}small{color:var(--text-muted)}.app-icon{flex:0 0 auto}.shell{min-height:100vh;display:grid;grid-template-columns:280px minmax(0,1fr)}.sidebar-backdrop{display:none}.sidebar{position:sticky;top:0;height:100vh;padding:18px 14px;display:grid;grid-template-rows:auto 1fr auto;gap:16px;border-right:1px solid var(--line-soft);background:linear-gradient(180deg,#0b1724f5,#08101af2),linear-gradient(120deg,#58d6ff14,#ffc26b14)}.sidebar-brand{display:grid;gap:8px}.brand-head{display:flex;justify-content:space-between;align-items:center}.brand-kicker{text-transform:uppercase;letter-spacing:.1em;color:#8fd9ff;font-size:11px}.sidebar-brand h1{font-size:24px;line-height:1.1}.brand-sub{color:var(--text-muted);font-size:12px;line-height:1.3}.sidebar-close{display:none}.sidebar-nav{display:grid;gap:8px;align-content:start}.nav-link{display:grid;grid-template-columns:26px 1fr;gap:10px;align-items:start;border:1px solid transparent;border-radius:12px;padding:10px;color:#bfd4eb;transition:border-color .16s ease,background .16s ease,transform .16s ease}.nav-link:hover{border-color:#58d6ff40;background:#58d6ff1a;transform:translateY(-1px)}.nav-link strong{display:block;font-size:14px}.nav-link small{font-size:11px;color:#82a5c7}.nav-icon{width:26px;height:26px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;color:#8fd9ff;background:#58d6ff1f}.nav-link.router-link-active{border-color:#ffc26b80;background:linear-gradient(140deg,#ffc26b33,#58d6ff24);color:#f4f9ff}.nav-link.router-link-active .nav-icon{color:#ffda9f;background:#ffc26b33}.sidebar-footer{border-top:1px solid var(--line-soft);padding-top:12px;display:grid;gap:6px}.sidebar-footer p{color:var(--text-muted);font-size:12px}.sidebar-footer strong{font-size:15px}.sidebar-footer span{color:#9ec4e8;font-size:12px}.shell-main{min-width:0;display:grid;grid-template-rows:auto auto 1fr}.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 20px;border-bottom:1px solid var(--line-soft);background:#080f18e0;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.topbar-title-wrap{display:flex;align-items:flex-start;gap:12px}.topbar-eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.09em;color:#8bd5ff}.topbar h2{font-size:28px;line-height:1.1;margin-top:2px}.topbar-subtitle{margin-top:3px;color:var(--text-muted);font-size:12px}.topbar-actions{display:flex;align-items:center;gap:10px}.user-chip{border:1px solid var(--line-soft);border-radius:999px;padding:6px 10px;display:inline-flex;align-items:center;gap:6px;color:#a8cdf0;font-size:12px;background:#182a3db3}.menu-btn{display:none}.status-bar{border-bottom:1px solid var(--line-soft);padding:10px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px;background:linear-gradient(110deg,#0e1d2dd1,#0e2132b8)}.status-meta{display:flex;align-items:center;gap:10px;min-width:0}.status-title{font-weight:700;white-space:nowrap}.status-copy{color:var(--text-muted);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.status-actions{display:flex;align-items:center;gap:8px}.page-content{padding:20px;width:100%;max-width:1500px}.view-stack,.view-grid{display:grid;gap:16px}.view-grid.two-col{grid-template-columns:repeat(2,minmax(320px,1fr));align-items:start}.app-card{border:1px solid var(--line-soft);border-radius:var(--radius-lg);background:linear-gradient(180deg,#112335f0,#0a1521eb),linear-gradient(145deg,#58d6ff14,#ffc26b0f);box-shadow:var(--shadow-soft);overflow:hidden}.app-card.with-padding{padding:16px}.card-head{padding:16px;border-bottom:1px solid var(--line-soft)}.card-title{font-size:18px}.card-subtitle{margin-top:4px;font-size:12px;color:var(--text-muted)}.card-content{padding:16px}.card-content.content-pad{padding:0}.card-footer{border-top:1px solid var(--line-soft);padding:14px 16px}.app-btn{border:1px solid transparent;border-radius:11px;padding:10px 14px;display:inline-flex;align-items:center;justify-content:center;gap:8px;cursor:pointer;font-weight:700;transition:transform .14s ease,filter .14s ease,border-color .14s ease}.app-btn:hover{transform:translateY(-1px);filter:brightness(1.03)}.app-btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.app-btn.is-block{width:100%}.app-btn.is-sm{padding:8px 12px;font-size:12px}.app-btn.is-md{padding:10px 14px;font-size:13px}.app-btn.is-lg{padding:12px 16px;font-size:14px}.app-btn.is-primary{background:linear-gradient(130deg,var(--brand-cyan),var(--brand-blue));color:#04131f}.app-btn.is-secondary{background:#58d6ff29;border-color:#58d6ff59;color:#d4ecff}.app-btn.is-ghost{background:#ffc26b29;border-color:#ffc26b5c;color:#ffe4b8}.app-btn.is-danger{background:linear-gradient(130deg,#ff8f8f,#ff6a82);color:#2a070d}.btn-spinner{width:14px;height:14px;border-radius:50%;border:2px solid rgba(255,255,255,.36);border-top-color:#fffffff2;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.status-badge{display:inline-flex;align-items:center;gap:7px;border-radius:999px;padding:6px 10px;border:1px solid var(--line-soft);font-size:12px;font-weight:700}.status-dot{width:8px;height:8px;border-radius:50%;background:currentColor}.status-badge.tone-success{color:#8af0c7;border-color:#42d69c66;background:#42d69c24}.status-badge.tone-danger{color:#ffb4b4;border-color:#ff7f7f73;background:#ff7f7f24}.status-badge.tone-warn{color:#ffd08c;border-color:#ffba5870;background:#ffba5829}.status-badge.tone-info,.status-badge.tone-neutral{color:#b8defd;background:#69c6ff1f}.stat-card{border:1px solid var(--line-soft);border-radius:14px;padding:14px;background:#0c1927e6;display:grid;gap:8px}.stat-head{display:inline-flex;align-items:center;gap:8px;color:#a4c5e4;font-size:12px;text-transform:uppercase;letter-spacing:.05em}.stat-icon{width:24px;height:24px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;background:#58d6ff1f;color:#90dfff}.stat-value{font-size:24px;font-weight:700;line-height:1.1}.stat-value.tone-success{color:#7ef0bf}.stat-value.tone-danger{color:#ffb2b2}.stat-value.tone-neutral{color:#f1f8ff}.stat-hint{color:var(--text-muted);font-size:12px}.empty-state{border:1px dashed rgba(141,184,221,.3);border-radius:12px;padding:18px;text-align:center;display:grid;justify-items:center;gap:6px}.empty-icon{width:34px;height:34px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;color:#8ed9ff;background:#58d6ff24}.empty-state h4{font-size:16px}.empty-state p{color:var(--text-muted);font-size:13px}.empty-action{margin-top:6px}.skeleton-block{display:inline-block;width:var(--sk-width);height:var(--sk-height);border-radius:var(--sk-radius);background:linear-gradient(90deg,#7192b333,#b3cfe940,#7192b333);background-size:220% 100%;animation:skeleton 1.4s linear infinite}@keyframes skeleton{0%{background-position:180% 0}to{background-position:-80% 0}}.icon-btn{border:1px solid var(--line-soft);background:#0d1c2bbf;color:var(--text-muted);width:30px;height:30px;border-radius:9px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.icon-btn:hover{color:var(--text-strong);border-color:var(--line-strong)}.dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;background:#040b12b3;display:grid;place-items:center;padding:16px}.dialog{width:min(480px,100%);border:1px solid var(--line-strong);border-radius:16px;background:linear-gradient(160deg,#0c1a28fa,#08111bf7);box-shadow:var(--shadow-soft);padding:16px;display:grid;gap:12px}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.dialog-head h3{font-size:18px}.dialog-body{color:var(--text-muted);line-height:1.45}.dialog-actions{display:flex;justify-content:flex-end;gap:8px}.toasts{position:fixed;right:16px;bottom:16px;display:grid;gap:8px;z-index:85}.toast{min-width:260px;max-width:440px;border-radius:12px;border:1px solid var(--line-soft);background:#0c1826f5;box-shadow:0 18px 30px #00000057;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;gap:10px}.toast-copy{display:inline-flex;align-items:flex-start;gap:8px;color:#d5eaff;font-size:13px}.toast-success{border-color:#42d69c73}.toast-error{border-color:#ff7f7f80}.toast-info{border-color:#69c6ff80}.hero-card .card-content{padding:0}.hero-layout{padding:18px;display:grid;grid-template-columns:1.2fr minmax(260px,.8fr);gap:18px}.hero-copy{display:grid;gap:10px}.hero-kicker{color:#98deff;text-transform:uppercase;letter-spacing:.09em;font-size:11px}.hero-copy h3{font-size:30px;line-height:1.05}.hero-copy p{color:#bad0e8;line-height:1.45}.hero-actions{display:grid;gap:10px;align-content:start;justify-items:stretch}.inline-link{color:#9ddcff;font-size:13px;font-weight:700}.inline-link:hover{color:#c9ebff}.stats-grid{display:grid;gap:12px;grid-template-columns:repeat(4,minmax(170px,1fr))}.dashboard-grid{display:grid;gap:16px;grid-template-columns:1fr 1fr .9fr}.kv-list{margin:0;padding:0;list-style:none;display:grid;gap:8px}.kv-list li{border:1px solid rgba(145,186,221,.22);background:#1e375040;border-radius:10px;padding:8px 10px;display:flex;justify-content:space-between;gap:10px}.kv-list span{color:var(--text-muted)}.timeline-list{margin:0;padding:0;list-style:none;display:grid;gap:10px}.timeline-list li{border:1px solid rgba(145,186,221,.22);border-radius:10px;padding:10px;display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:start}.timeline-list p{font-weight:700}.timeline-list small{color:var(--text-muted)}.quick-links-grid{display:grid;gap:9px}.quick-link{border:1px solid rgba(145,186,221,.25);border-radius:10px;padding:10px;display:inline-flex;align-items:center;gap:8px;color:#cde8ff;background:#142c4266}.quick-link:hover{border-color:#58d6ff73;background:#2345616b}.mono-line{font-family:Chivo Mono,JetBrains Mono,monospace;color:#d8ecff;font-size:13px;word-break:break-all}.muted-text{color:var(--text-muted);font-size:13px}.form-grid{display:grid;gap:10px}.field-error{color:#ffb4b4;font-size:12px}.config-preview{border:1px dashed rgba(145,186,221,.3);border-radius:10px;padding:10px;display:grid;gap:6px;background:#1022347a}.input-row{display:grid;grid-template-columns:1fr auto;gap:8px}.terminal-box{min-height:250px;max-height:460px;overflow:auto;border:1px solid rgba(110,149,184,.35);border-radius:10px;background:#050d16;color:#c7e4ff;padding:12px;line-height:1.4;font-family:Chivo Mono,JetBrains Mono,monospace;font-size:12px;white-space:pre-wrap}.check-toggle{display:inline-flex;align-items:center;gap:6px;color:var(--text-muted);font-size:12px}.check-toggle input{width:auto;margin:0}.toolbar-row{display:flex;align-items:center;gap:8px}.toolbar-row.wrap{flex-wrap:wrap}.form-inline-grid{display:grid;grid-template-columns:1fr auto;gap:8px}.breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:4px;color:#9ec3e4;font-size:12px}.crumb{border:none;padding:2px 6px;border-radius:7px;background:#58d6ff1f;color:#bfe7ff;cursor:pointer}.crumb:hover{background:#58d6ff38}.table-wrap{overflow:auto;border:1px solid rgba(145,186,221,.18);border-radius:10px}.data-table{width:100%;border-collapse:collapse}.data-table th,.data-table td{padding:10px;border-bottom:1px solid rgba(145,186,221,.15);text-align:left;font-size:13px}.data-table th{color:#9fc6e8;font-size:12px;text-transform:uppercase;letter-spacing:.05em}.link-btn{border:none;background:transparent;color:#9edbff;cursor:pointer;padding:0}.editor{min-height:360px;border-radius:12px;border:1px solid rgba(145,186,221,.24);overflow:hidden}.button-row{display:flex;align-items:center;gap:8px}.button-row.wrap,.wrap{flex-wrap:wrap}.list-block{margin:0;padding:0;list-style:none;display:grid;gap:9px}.list-block li{border:1px solid rgba(145,186,221,.25);border-radius:10px;padding:10px;display:flex;justify-content:space-between;gap:10px;align-items:center;flex-wrap:wrap}.view-feedback{color:var(--text-muted);font-size:13px;min-height:18px}.view-feedback.error{color:#ffb2b2}.auth-shell{min-height:100vh;display:grid;place-items:center;padding:20px}.auth-panel{width:min(460px,100%);border:1px solid var(--line-soft);border-radius:18px;background:linear-gradient(180deg,#102132f2,#08111bf0),linear-gradient(135deg,#58d6ff21,#ffc26b21);box-shadow:var(--shadow-soft);padding:22px;display:grid;gap:12px}.auth-kicker{text-transform:uppercase;letter-spacing:.1em;color:#8fd9ff;font-size:11px}.auth-panel h1{font-size:32px;line-height:1.05}.auth-copy{color:#abc6e2;line-height:1.45}.auth-form{display:grid;gap:10px}@media (max-width: 1180px){.dashboard-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,minmax(170px,1fr))}.view-grid.two-col,.hero-layout{grid-template-columns:1fr}}@media (max-width: 980px){.shell{grid-template-columns:1fr}.sidebar-backdrop{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:48;background:#03090f9e}.sidebar{position:fixed;inset:0 auto 0 0;width:min(300px,86vw);z-index:50;transform:translate(-105%);transition:transform .2s ease;height:100dvh}.sidebar.is-mobile-open{transform:translate(0)}.sidebar-close,.menu-btn{display:inline-flex}.topbar h2{font-size:24px}.status-bar{flex-wrap:wrap;align-items:flex-start}.status-copy{white-space:normal}}@media (max-width: 720px){.page-content,.topbar,.status-bar{padding-left:14px;padding-right:14px}.topbar-subtitle,.user-chip{display:none}.stats-grid,.form-inline-grid,.input-row{grid-template-columns:1fr}.data-table th:nth-child(3),.data-table td:nth-child(3){display:none}.toasts{right:10px;left:10px}.toast{min-width:0;width:100%}}
