:root{--navy: #14233d;--navy-2: #1c2f4f;--accent: #2f6fed;--accent-bg: #e8f0ff;--page: #f5f6f8;--surface: #ffffff;--border: #e4e7ec;--text: #1a2230;--text-2: #5a6472;--text-3: #8a929e;--success: #0f7a55;--success-bg: #e3f4ec;--warning: #9a6100;--warning-bg: #fbf0da;--danger: #b3261e;--danger-bg: #fbe9e7;--radius: 8px;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--page);color:var(--text);font-size:14px}a{color:var(--accent);text-decoration:none}button{font:inherit;cursor:pointer;border-radius:var(--radius);border:1px solid var(--border);background:var(--surface);color:var(--text);padding:8px 14px;transition:background .12s}button:hover{background:#f0f2f5}button.primary{background:var(--accent);border-color:var(--accent);color:#fff}button.primary:hover{background:#2560d8}button.danger{background:var(--danger);border-color:var(--danger);color:#fff}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{font:inherit;width:100%;padding:8px 10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);color:var(--text)}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent-bg);border-color:var(--accent)}label{font-size:12px;color:var(--text-2);display:block;margin-bottom:4px}.badge{font-size:12px;padding:2px 10px;border-radius:20px;display:inline-block}.b-success{background:var(--success-bg);color:var(--success)}.b-warning{background:var(--warning-bg);color:var(--warning)}.b-danger{background:var(--danger-bg);color:var(--danger)}.b-neutral{background:#eef0f3;color:var(--text-2)}.b-accent{background:var(--accent-bg);color:var(--accent)}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px}.muted{color:var(--text-2)}.err{color:var(--danger);font-size:13px}.app{display:flex;min-height:100vh}.sidebar{width:220px;background:var(--navy);color:#cdd5e3;flex-shrink:0;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;padding:18px;font-size:16px;color:#fff;font-weight:600}.brand .logo{width:30px;height:30px;border-radius:7px;background:var(--accent);display:flex;align-items:center;justify-content:center;color:#fff}.nav{padding:8px;flex:1}.nav a,.nav .disabled{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:var(--radius);color:#aeb8ca;font-size:13px;margin-bottom:2px}.nav a:hover{background:var(--navy-2);color:#fff}.nav a.active{background:var(--accent);color:#fff}.nav .disabled{opacity:.4;cursor:not-allowed}.nav .section{font-size:10px;letter-spacing:.05em;color:#6b7891;padding:14px 12px 6px}.main{flex:1;min-width:0;display:flex;flex-direction:column}.topbar{height:56px;background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;justify-content:space-between;padding:0 22px}.content{padding:24px;flex:1}.avatar{width:30px;height:30px;border-radius:50%;background:var(--accent-bg);color:var(--accent);display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:600}.page-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.h1{font-size:20px;font-weight:600;margin:0}.sub{font-size:13px;color:var(--text-2);margin:2px 0 0}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:14px;margin-bottom:20px}.kpi{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:16px}.kpi .label{font-size:12px;color:var(--text-2)}.kpi .num{font-size:26px;font-weight:600;margin-top:4px}table{width:100%;border-collapse:collapse}th{text-align:left;font-size:11px;color:var(--text-3);font-weight:600;padding:10px 14px;border-bottom:1px solid var(--border)}td{padding:12px 14px;border-bottom:1px solid var(--border);font-size:13px}tr.click{cursor:pointer}tr.click:hover td{background:#f7f9fc}.toolbar{display:flex;gap:10px;margin-bottom:14px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px}.field .v{font-size:14px}.field .k{font-size:11px;color:var(--text-3);margin-bottom:2px}.tabs{display:flex;gap:20px;border-bottom:1px solid var(--border);margin-bottom:16px}.tab{padding:8px 2px;color:var(--text-2);border-bottom:2px solid transparent}.section-label{font-size:12px;color:var(--text-3);margin:18px 0 8px}.login-wrap{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--navy)}.login-card{width:340px;background:var(--surface);border-radius:14px;padding:34px}.toast{position:fixed;bottom:20px;right:20px;background:var(--navy);color:#fff;padding:12px 18px;border-radius:10px;font-size:13px}
