body:has(.app),html:has(.app){overflow:hidden}.app{display:grid;grid-template-columns:240px 1fr;height:100vh}aside.rail{border-right:1px solid var(--border);background:var(--bg-1);padding:16px 12px;display:flex;flex-direction:column;gap:2px;overflow-y:auto}aside.rail .brand{display:flex;align-items:center;gap:10px;padding:6px 8px 20px;font-family:var(--f-display);font-weight:600;font-size:16px;color:var(--fg);text-decoration:none;border:none}aside.rail .brand svg{color:var(--lime)}aside.rail h5{font-family:var(--f-mono);font-size:10px;font-weight:500;text-transform:uppercase;letter-spacing:.16em;color:var(--fg-dim);margin:20px 0 6px;padding:0 8px}aside.rail a.nav{display:flex;align-items:center;gap:10px;padding:7px 10px;color:var(--fg-mute);border:none;border-radius:var(--r-1);font-size:var(--fs-sm);text-decoration:none}aside.rail a.nav:hover{color:var(--fg);background:var(--bg-2)}aside.rail a.nav.on{background:var(--bg-2);color:var(--lime);position:relative}aside.rail a.nav.on:before{content:"";position:absolute;left:-12px;top:8px;bottom:8px;width:2px;background:var(--lime);box-shadow:0 0 8px var(--lime)}aside.rail svg.ic{width:15px;height:15px;stroke-width:1.8;flex-shrink:0}aside.rail .spacer{flex:1 1}aside.rail .user{display:flex;align-items:center;gap:10px;padding:10px;border:1px solid var(--border);border-radius:var(--r-1)}aside.rail .avatar{width:28px;height:28px;border-radius:var(--r-full);background:var(--lime);color:var(--lime-ink);display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;font-family:var(--f-mono)}aside.rail .user .m{font-size:var(--fs-sm);line-height:1.3}aside.rail .user .m .em{color:var(--fg-dim);font-size:10px;text-transform:uppercase;letter-spacing:.1em}main.view{overflow-y:auto;background:var(--bg)}.topbar{padding:12px 28px;border-bottom:1px solid var(--border);gap:16px;background:var(--bg);position:-webkit-sticky;position:sticky;top:0;z-index:5}.breadcrumb,.topbar{display:flex;align-items:center}.breadcrumb{font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--fg-mute);gap:6px;white-space:nowrap}.breadcrumb .sep{color:var(--fg-dim)}.breadcrumb .cur{color:var(--lime)}.topbar .search{flex:1 1;min-width:0;max-width:340px;margin-left:16px;display:flex;align-items:center;gap:8px;padding:6px 12px;background:var(--bg-1);border:1px solid var(--border);border-radius:var(--r-1);font-size:var(--fs-xs);color:var(--fg-dim);font-family:var(--f-mono);overflow:hidden;white-space:nowrap}.topbar .search span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar .search kbd{margin-left:auto;background:var(--bg-2);border:1px solid var(--border);padding:1px 6px;border-radius:3px;font-size:10px}.topbar .spacer{flex:1 1}.topbar .env{display:flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--border);border-radius:var(--r-1);font-family:var(--f-mono);font-size:var(--fs-xs);color:var(--fg-mute);white-space:nowrap}.topbar .env .dot{width:6px;height:6px;border-radius:50%;background:var(--ok);box-shadow:0 0 6px var(--ok)}.topbar .btn,.topbar a{white-space:nowrap!important;text-decoration:none!important;flex-shrink:0}.topbar .btn,.topbar a,.topbar a:hover{border-bottom:none!important}.page-head{padding:40px 48px 28px;border-bottom:1px solid var(--border);position:relative;overflow:hidden}.page-head:before{content:"";position:absolute;top:0;right:0;width:420px;height:200px;background-image:linear-gradient(var(--grid-line-strong) 1px,transparent 1px),linear-gradient(90deg,var(--grid-line-strong) 1px,transparent 1px);background-size:32px 32px;-webkit-mask-image:radial-gradient(ellipse at top right,#000,transparent 70%);mask-image:radial-gradient(ellipse at top right,#000,transparent 70%);opacity:.7}.page-head .eyebrow{margin-bottom:12px;display:block}.page-head h1{font-family:var(--f-display);font-size:44px;line-height:1;letter-spacing:-.03em;margin:0 0 8px;font-weight:500}.page-head h1 .lime{color:var(--lime)}.page-head .sub{color:var(--fg-mute)}.page-head .sub,.section-title{font-size:var(--fs-sm);font-family:var(--f-mono)}.section-title{padding:24px 32px 12px;color:var(--fg)}.section-title:before{content:"// ";color:var(--lime)}.panel{padding:24px 32px;border-bottom:1px solid var(--border)}.panel-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.panel-h h3{font-family:var(--f-mono);font-size:var(--fs-sm);font-weight:500;letter-spacing:.04em;color:var(--fg);white-space:nowrap;margin:0}.panel-h h3:before{content:"// ";color:var(--lime)}table.logs,table.t{width:100%;border-collapse:collapse;font-family:var(--f-mono);font-size:var(--fs-xs)}table.logs th,table.t th{text-align:left;padding:10px 16px;background:var(--bg-1);color:var(--fg-mute);font-weight:500;text-transform:uppercase;letter-spacing:.12em;font-size:10px;border-bottom:1px solid var(--border)}table.logs td,table.t td{padding:11px 16px;border-bottom:1px solid var(--border);color:var(--fg)}table.logs tr:hover td,table.t tr:hover td{background:var(--bg-1)}table.logs td.dim,table.t td.dim{color:var(--fg-mute)}.s{display:inline-flex;align-items:center;gap:6px;font-size:10px;padding:2px 8px;border-radius:var(--r-full);font-weight:600;letter-spacing:.04em}.s-ok{color:var(--ok);border:1px solid var(--ok)}.s-err{color:var(--err);border:1px solid var(--err)}.s-warn{color:var(--warn);border:1px solid var(--warn)}.s-info{color:var(--info);border:1px solid var(--info)}.s .d{width:5px;height:5px;border-radius:50%;background:currentColor}.metrics{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--border)}.metric{padding:24px 32px;border-right:1px solid var(--border);position:relative}.metric:last-child{border-right:none}.metric .lbl{font-family:var(--f-mono);font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:var(--fg-mute);margin-bottom:10px;display:flex;align-items:center;justify-content:space-between}.metric .lbl .trend{color:var(--ok);font-family:var(--f-mono)}.metric .lbl .trend.down{color:var(--err)}.metric .v{font-family:var(--f-display);font-size:40px;font-weight:500;line-height:1;letter-spacing:-.025em;margin-bottom:6px}.metric .v .u{font-size:18px;color:var(--fg-mute);margin-left:4px}.metric .spark{height:32px;margin-top:8px}.grid2{display:grid;grid-template-columns:1.6fr 1fr;grid-gap:0;gap:0;border-bottom:1px solid var(--border)}.grid2 .panel{border-bottom:none}.grid2 .panel+.panel{border-left:1px solid var(--border)}.chips{display:flex;gap:2px;border:1px solid var(--border);border-radius:var(--r-1);padding:2px}.chip{font-family:var(--f-mono);font-size:10px;padding:3px 8px;color:var(--fg-mute);border-radius:2px;cursor:pointer;background:transparent;border:none}.chip.on{background:var(--lime);color:var(--lime-ink);font-weight:600}.chart svg{width:100%;height:220px;display:block}.keycard{border:1px solid var(--border-hi);border-radius:var(--r-2);padding:16px;background:var(--bg-1);position:relative;overflow:hidden}.keycard:before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse at top right,rgba(204,255,0,.08),transparent 60%);pointer-events:none}.keycard .kl{font-family:var(--f-mono);font-size:10px;text-transform:uppercase;letter-spacing:.15em;color:var(--fg-mute);margin-bottom:10px}.keycard .kv{font-family:var(--f-mono);font-size:var(--fs-sm);color:var(--lime);margin-bottom:14px;word-break:break-all}.keycard .row{display:flex;gap:8px}