:root{--accent:#5ce1e6;--accent-deep:#0fa6b4;--accent-ink:#053b41;--accent-soft:#eafbfc;--accent-soft-border:#bfeff2;--ink:#0b1418;--ink2:#3a474c;--muted:#8a969b;--hairline:#eceff1;--bg:#f6f8f9;--card:#fff;--success:#34c759;--danger:#b42318;--danger-soft:#fbe9e7;--shadow:0 1px 2px #0b14180a, 0 4px 16px #0b14180a;--font:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, Helvetica, Arial, sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{background:var(--bg);color:var(--ink);font-family:var(--font);-webkit-font-smoothing:antialiased;font-size:14px}a{color:inherit;text-decoration:none}button{font-family:inherit}.shell{min-height:100vh;display:flex}.sidebar{background:var(--card);border-right:1px solid var(--hairline);flex-direction:column;flex-shrink:0;gap:2px;width:224px;height:100vh;padding:20px 12px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:10px;padding:4px 10px 18px;display:flex}.brand-dot{background:var(--accent);width:30px;height:30px;color:var(--accent-ink);border-radius:9px;place-items:center;font-size:15px;font-weight:800;display:grid}.brand-name{letter-spacing:-.2px;font-size:15px;font-weight:800}.brand-sub{color:var(--muted);margin-top:1px;font-size:11px}.nav-item{color:var(--ink2);cursor:pointer;text-align:left;background:0 0;border:none;border-radius:9px;align-items:center;gap:10px;width:100%;padding:9px 10px;font-size:13.5px;font-weight:600;display:flex}.nav-item:hover{background:var(--bg)}.nav-item.active{background:var(--accent-soft);color:var(--accent-ink)}.nav-item .badge-count{background:var(--accent-deep);color:#fff;border-radius:999px;place-items:center;min-width:18px;height:18px;margin-left:auto;padding:0 5px;font-size:11px;font-weight:700;display:grid}.nav-spacer{flex:1}.nav-footer{color:var(--muted);padding:10px;font-size:12px}.main{flex:1;min-width:0;padding:28px 32px 60px}.page-head{align-items:center;gap:14px;margin-bottom:20px;display:flex}.page-title{letter-spacing:-.4px;font-size:22px;font-weight:800}.page-sub{color:var(--muted);margin-top:3px;font-size:13px}.head-right{align-items:center;gap:10px;margin-left:auto;display:flex}.card{background:var(--card);border:1px solid var(--hairline);box-shadow:var(--shadow);border-radius:14px}.card-pad{padding:20px}table.tbl{border-collapse:collapse;width:100%}.tbl th{text-align:left;text-transform:uppercase;letter-spacing:.4px;color:var(--muted);border-bottom:1px solid var(--hairline);padding:12px 16px;font-size:11.5px;font-weight:700}.tbl td{border-bottom:1px solid var(--hairline);vertical-align:middle;padding:13px 16px;font-size:13.5px}.tbl tr:last-child td{border-bottom:none}.tbl tr.rowlink:hover td{cursor:pointer;background:#fafcfc}.td-main{font-weight:700}.td-sub{color:var(--muted);margin-top:2px;font-size:12.5px}.td-num{text-align:right;font-variant-numeric:tabular-nums}.badge{white-space:nowrap;border-radius:999px;padding:3px 9px;font-size:12px;font-weight:700;display:inline-block}.btn{cursor:pointer;border:none;border-radius:9px;padding:9px 15px;font-size:13px;font-weight:700;transition:opacity .12s}.btn:hover{opacity:.86}.btn:disabled{opacity:.45;cursor:default}.btn-primary{background:var(--ink);color:#fff}.btn-accent{background:var(--accent);color:var(--accent-ink)}.btn-success{color:#1a8f4c;background:#e7f7ee}.btn-warn{color:#b4540a;background:#fcebdd}.btn-danger{background:var(--danger-soft);color:var(--danger)}.btn-ghost{color:var(--ink2);border:1px solid var(--hairline);background:0 0}.btn-sm{border-radius:8px;padding:6px 11px;font-size:12.5px}.input,.select,.textarea{border:1px solid var(--hairline);background:var(--card);width:100%;color:var(--ink);border-radius:9px;padding:9px 12px;font-family:inherit;font-size:13.5px}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent-deep);box-shadow:0 0 0 3px var(--accent-soft);outline:none}.field{flex-direction:column;gap:5px;display:flex}.field>label{color:var(--ink2);font-size:12px;font-weight:700}.seg{background:#eef1f2;border-radius:9px;gap:2px;padding:3px;display:inline-flex}.seg button{cursor:pointer;color:var(--ink2);background:0 0;border:none;border-radius:7px;padding:6px 12px;font-size:12.5px;font-weight:700}.seg button.on{background:var(--card);color:var(--ink);box-shadow:0 1px 3px #00000014}.tiles{grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:18px;display:grid}.tile{padding:16px 18px}.tile-label{color:var(--muted);font-size:12px;font-weight:700}.tile-value{letter-spacing:-.6px;margin-top:4px;font-size:26px;font-weight:800}.tile-sub{color:var(--muted);margin-top:3px;font-size:12px}.empty{text-align:center;color:var(--muted);padding:36px 20px;font-size:13.5px}.error-note{background:var(--danger-soft);color:var(--danger);border-radius:9px;padding:10px 13px;font-size:13px;font-weight:600}.ok-note{color:#1a8f4c;background:#e7f7ee;border-radius:9px;padding:10px 13px;font-size:13px;font-weight:600}.stack{flex-direction:column;gap:14px;display:flex}.row{align-items:center;gap:10px;display:flex}.grid-2{grid-template-columns:1fr 1fr;gap:12px;display:grid}.mono{font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:12.5px}.login-wrap{background:var(--bg);place-items:center;min-height:100vh;display:grid}.login-card{text-align:center;width:360px;padding:34px 30px}.login-logo{background:var(--accent);width:52px;height:52px;color:var(--accent-ink);border-radius:15px;place-items:center;margin:0 auto 14px;font-size:24px;font-weight:800;display:grid}.login-title{letter-spacing:-.3px;font-size:19px;font-weight:800}.login-sub{color:var(--muted);margin:5px 0 22px;font-size:13px}@media (max-width:900px){.tiles{grid-template-columns:repeat(2,1fr)}.main{padding:20px 16px 60px}.sidebar{width:64px}.brand-name,.brand-sub,.nav-item span.lbl,.nav-footer{display:none}}
