:root{--bg: #0e1412;--bg-2: #15201c;--panel: #1c2a25;--panel-2: #24352f;--line: #2f463e;--gold: #c9a227;--gold-2: #e6c35c;--green: #3d9b6e;--red: #d45b4a;--text: #e8efe9;--muted: #9bb0a6;--blue: #6aa8c9;--shadow: 0 12px 40px rgba(0, 0, 0, .35);--radius: 14px}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,sans-serif;background:radial-gradient(1200px 500px at 10% -10%,rgba(201,162,39,.12),transparent 50%),radial-gradient(900px 400px at 100% 0%,rgba(61,155,110,.12),transparent 45%),var(--bg);color:var(--text)}a{color:inherit;text-decoration:none}button,input,select,textarea{font-family:inherit}h1,h2,h3{font-family:Georgia,Times New Roman,serif;margin:0 0 .4em}.auth-wrap{min-height:100vh;display:grid;grid-template-columns:1.1fr .9fr}.auth-hero{padding:56px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--line);background:linear-gradient(180deg,rgba(201,162,39,.08),transparent)}.badge{display:inline-block;border:1px solid var(--gold);color:var(--gold-2);padding:4px 10px;border-radius:999px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:16px}.auth-hero h1{font-size:42px;line-height:1.15}.auth-hero p{color:var(--muted);max-width:520px;line-height:1.6}.auth-card{display:flex;align-items:center;justify-content:center;padding:32px}.card{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);padding:24px;box-shadow:var(--shadow)}.auth-card .card{width:100%;max-width:420px}label{display:block;font-size:13px;color:var(--muted);margin:12px 0 6px}input,select,textarea{width:100%;background:var(--bg-2);border:1px solid var(--line);color:var(--text);border-radius:10px;padding:10px 12px}.btn{border:0;border-radius:10px;padding:10px 14px;cursor:pointer;font-weight:600}.btn-primary{background:var(--gold);color:#1a1404}.btn-ghost{background:transparent;color:var(--text);border:1px solid var(--line)}.btn-danger{background:#6e2d26;color:#fff}.btn-ok{background:var(--green);color:#06150d}.row{display:flex;gap:8px;flex-wrap:wrap}.muted{color:var(--muted)}.error{color:var(--red);font-size:13px}.app{display:grid;grid-template-columns:250px 1fr;min-height:100vh}.sidebar{background:var(--bg-2);border-right:1px solid var(--line);padding:20px 14px;position:sticky;top:0;height:100vh}.brand{font-family:Georgia,Times New Roman,serif;font-size:20px;color:var(--gold-2);margin-bottom:6px}.nav a,.nav button{display:block;width:100%;text-align:left;background:transparent;color:var(--text);border:0;padding:10px 12px;border-radius:10px;cursor:pointer;margin:4px 0}.nav a.active,.nav a:hover,.nav button:hover{background:var(--panel)}.main{padding:28px}.grid{display:grid;gap:16px}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}.stat{font-size:28px;color:var(--gold-2)}.bar{height:8px;background:#0b1210;border-radius:99px;overflow:hidden}.bar>span{display:block;height:100%;background:linear-gradient(90deg,var(--green),var(--gold))}.table{width:100%;border-collapse:collapse;font-size:14px}.table th,.table td{border-bottom:1px solid var(--line);padding:10px 8px;text-align:left;vertical-align:top}.pill{display:inline-block;font-size:11px;padding:3px 8px;border-radius:99px;border:1px solid var(--line);color:var(--muted)}.pill.ok{color:#b6f0cf;border-color:#2a6b48}.pill.bad{color:#ffc4bc;border-color:#7a332a}.q-box{font-size:18px;line-height:1.5;margin:12px 0 18px}.option{display:block;width:100%;text-align:left;margin:8px 0;padding:12px;border-radius:12px;border:1px solid var(--line);background:var(--panel-2);color:var(--text);cursor:pointer}.option:hover{border-color:var(--gold)}.option.sel{border-color:var(--gold);background:#c9a2272e;box-shadow:inset 0 0 0 1px var(--gold)}.feedback{margin-top:16px;padding:14px;border-radius:12px;background:#102018;border:1px solid var(--line)}.flash{min-height:180px;display:flex;align-items:center;justify-content:center;text-align:center;cursor:pointer}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:12px;flex-wrap:wrap}.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.filters select,.filters input{width:auto;min-width:160px}@media (max-width: 920px){.auth-wrap,.app,.grid-3,.grid-2{grid-template-columns:1fr}.sidebar{height:auto;position:relative}.auth-hero{padding:28px}.main{padding:16px}}
