:root{--bg: #0d1117;--panel: #161b22;--panel2: #0b0f14;--line: #283041;--txt: #e6edf3;--muted: #8b949e;--accent: #388bfd;--accent2: #a371f7;--low: #2ea043;--elevated: #d29922;--high: #db6d28;--critical: #f85149}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:system-ui,Segoe UI,Tahoma,sans-serif;background:radial-gradient(1200px 600px at 80% -10%,#15233b 0%,var(--bg) 55%) fixed;color:var(--txt)}a{color:var(--accent);text-decoration:none}button{background:var(--accent);color:#fff;border:0;border-radius:9px;padding:9px 15px;font-weight:600;cursor:pointer;font-family:inherit;font-size:13px}button.ghost{background:#21262d;border:1px solid var(--line);color:var(--txt)}button.danger{background:#2d1418;border:1px solid #5c2a2f;color:var(--critical)}button:hover{filter:brightness(1.08)}input,textarea,select{background:var(--panel2);color:var(--txt);border:1px solid var(--line);border-radius:9px;padding:9px 11px;font-family:inherit;font-size:13px;width:100%}.num{font-variant-numeric:tabular-nums;direction:ltr;display:inline-block}.muted{color:var(--muted)}.layout{display:grid;grid-template-columns:230px 1fr;min-height:100vh}.sidebar{background:#0d1117b3;border-inline-end:1px solid var(--line);padding:18px 14px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.brand{display:flex;align-items:center;gap:10px;padding:6px 8px 18px}.brand .logo{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--accent),var(--accent2))}.brand b{font-size:17px}.nav{display:flex;flex-direction:column;gap:4px}.nav a{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:10px;color:var(--muted);cursor:pointer;font-weight:600;font-size:14px}.nav a:hover{background:#161b22;color:var(--txt)}.nav a.active{background:linear-gradient(90deg,rgba(56,139,253,.18),transparent);color:var(--txt)}.sidebar .foot{margin-top:18px;padding-top:14px;border-top:1px solid var(--line);font-size:12px;color:var(--muted)}.content{padding:22px 26px;max-width:1100px}.pagehead{display:flex;align-items:center;gap:12px;margin-bottom:18px}.pagehead h1{font-size:22px;margin:0}.pagehead .sp{margin-inline-start:auto}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:18px}.kpi{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:16px}.kpi .v{font-size:28px;font-weight:800}.kpi .l{font-size:12px;color:var(--muted);margin-top:4px}.card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px;margin-bottom:16px}.card h2{font-size:14px;margin:0 0 14px;color:var(--muted);font-weight:700;letter-spacing:.3px}table{width:100%;border-collapse:collapse;font-size:13px}th,td{text-align:start;padding:9px 8px;border-bottom:1px solid var(--line)}th{color:var(--muted);font-weight:600}tr:last-child td{border-bottom:0}.badge{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:800;color:#07101a}.b-low{background:var(--low)}.b-elevated{background:var(--elevated)}.b-high{background:var(--high)}.b-critical{background:var(--critical);color:#fff}.role{font-size:11px;padding:1px 9px;border-radius:6px;border:1px solid var(--line);color:var(--muted)}.role.staff{color:#79c0ff;border-color:#1f6feb}.role.customer{color:#7ee787;border-color:#2ea043}.score{display:inline-flex;align-items:center;gap:8px}.bar{width:90px;height:8px;border-radius:999px;background:#21262d;overflow:hidden}.bar>i{display:block;height:100%;background:linear-gradient(90deg,var(--high),var(--low))}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:10px}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:10px}.field label{font-size:12px;color:var(--muted)}.note{font-size:12px}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:radial-gradient(900px 500px at 50% 0%,#16233a,#0a0d12);z-index:50}.auth{background:var(--panel);border:1px solid var(--line);border-radius:18px;padding:30px;width:370px;text-align:center}.auth .logo{width:48px;height:48px;border-radius:13px;margin:0 auto 14px;background:linear-gradient(135deg,var(--accent),var(--accent2))}.auth h2{margin:0 0 6px}.auth p{color:var(--muted);font-size:13px;margin:0 0 20px;line-height:1.6}.auth button{width:100%;margin-top:10px;padding:12px}.auth .err{color:var(--critical);font-size:12px;min-height:16px;margin-top:12px}.toast{position:fixed;bottom:18px;inset-inline-start:18px;background:var(--panel);border:1px solid var(--line);padding:10px 14px;border-radius:10px;font-size:13px;z-index:60}
