:root{--bg: #f4f5f7;--panel: #ffffff;--panel-soft: #f9fafb;--border: #d9dee5;--text: #1f2933;--muted: #687384;--nav: #1f2732;--nav-active: #394452;--primary: #2f5d8c;--primary-dark: #23496f;--danger: #a63b3b;--success: #1f7a55;--warning: #9f6b16;--radius: 4px;font-family:Inter,Segoe UI,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);font-size:14px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.btn{border:1px solid var(--border);background:#fff;color:var(--text);min-height:36px;padding:7px 12px;border-radius:var(--radius);cursor:pointer}.btn:hover{background:#f3f5f7}.btn:disabled{opacity:.55;cursor:not-allowed}.btn.primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn.primary:hover{background:var(--primary-dark)}.btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.btn.success{background:var(--success);border-color:var(--success);color:#fff}.field{display:grid;gap:5px}.field label{color:var(--muted);font-size:12px;font-weight:700;text-transform:uppercase}.input,.field input,.field select,.field textarea{width:100%;border:1px solid var(--border);border-radius:var(--radius);min-height:36px;padding:7px 9px;background:#fff;color:var(--text)}.field textarea{min-height:90px;resize:vertical}.toolbar{display:flex;gap:10px;align-items:end;justify-content:space-between;flex-wrap:wrap;margin-bottom:14px}.grid{display:grid;gap:12px}.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);padding:18px}.table-wrap{overflow-x:auto;border:1px solid var(--border);background:#fff}table{width:100%;border-collapse:collapse}th,td{padding:10px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}th{background:#eef1f4;font-size:12px;text-transform:uppercase;color:#2d3744}tr:last-child td{border-bottom:0}.muted{color:var(--muted)}.right{text-align:right}.actions{display:flex;gap:8px;flex-wrap:wrap}.error{color:var(--danger)}.success-text{color:var(--success)}@media(max-width:760px){.grid.cols-2,.grid.cols-3,.grid.cols-4{grid-template-columns:1fr}.toolbar{align-items:stretch}.toolbar>*{width:100%}}
