:root{--bg-base:#f2f5fb;--ink:#0f1f37;--ink-soft:#5f728e;--card:hsla(0,0%,100%,.92);--line:#d5deee;--accent:#0e74ff;--accent-soft:#dcebff;--success:#1b8d4a;--error:#b72944}*{box-sizing:border-box}#__nuxt,body,html{min-height:100%}body{background:radial-gradient(900px 480px at 10% 0,rgba(65,134,245,.18),transparent 56%),radial-gradient(700px 420px at 95% 10%,rgba(48,186,149,.17),transparent 58%),var(--bg-base);color:var(--ink);font-family:Avenir Next,Segoe UI,sans-serif;margin:0}.page{display:grid;gap:14px;margin:0 auto;max-width:1180px;padding:28px 18px 44px}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:0 14px 44px #11274414;padding:16px}.header{align-items:flex-start;display:flex;gap:14px;justify-content:space-between}.login-card{margin:12vh auto 0;width:min(460px,calc(100vw - 32px))}h1,h2,p{margin:0}h1{font-size:34px;margin-top:4px}h2{font-size:24px}.kicker{color:#315f9f;font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.muted{color:var(--ink-soft)}.stack{display:grid;gap:10px}.row-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.row-search{display:grid;gap:8px;grid-template-columns:1fr auto}.row-between{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.field{color:#314868;display:grid;font-size:13px;gap:6px}button,input,select,textarea{font:inherit}input,select,textarea{background:#fff;border:1px solid #c9d6ec;border-radius:12px;color:#12253f;padding:10px 12px;width:100%}input:focus,select:focus,textarea:focus{border-color:#5a97eb;box-shadow:0 0 0 3px #4387ec24;outline:none}textarea{resize:vertical}button{background:linear-gradient(110deg,#0d6dff,#274cdf);border:0;border-radius:12px;color:#fff;cursor:pointer;font-weight:700;padding:10px 14px}button.secondary{background:#edf3ff;border:1px solid #c5d6f7;color:#204779}button.danger{background:linear-gradient(120deg,#d13258,#c01840)}.btn-sm{border-radius:9px;font-size:12px;padding:6px 10px}button:disabled{cursor:not-allowed;opacity:.6}.tabs{display:grid;gap:8px;grid-template-columns:repeat(5,minmax(0,1fr))}.tabs button{background:#ebf1fc;border:1px solid #c6d4ec;color:#38547a}.tabs button.active{background:linear-gradient(100deg,#1d7bff,#2a4ce0);border-color:transparent;color:#fff}.panel{display:grid;gap:12px}.table-wrap{border:1px solid #d8e2f0;border-radius:12px;overflow:auto}.form-grid{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr))}.plan-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.field.compact{min-width:120px}.checkbox-field input[type=checkbox]{height:20px;width:20px}.cell-grid{display:grid;gap:6px}.badge-off,.badge-on{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:700;padding:3px 8px}.badge-on{background:#e5f6ea;border:1px solid #b8e2c7;color:#1f7e44}.badge-off{background:#fff3e6;border:1px solid #f1d2b2;color:#7f4a12}table{border-collapse:collapse;min-width:520px;width:100%}td,th{border-bottom:1px solid #e2e9f5;font-size:13px;padding:10px 12px;text-align:left}thead th{background:#f5f8ff;color:#486186;font-weight:700}tbody tr:last-child td{border-bottom:0}.notice{border-radius:12px;font-weight:600;padding:10px 12px}.notice.success{background:#e8f8ef;border:1px solid #b9e7cb;color:var(--success)}.error,.notice.error{background:#ffeff2;border:1px solid #f2bec8;color:var(--error)}.error,.notice.error,.result-card{border-radius:12px;padding:10px 12px}.result-card{background:#f4f8ff;border:1px dashed #c1d2ee;display:grid;gap:6px}.error-list{color:#aa3e5d;margin:0;padding-left:18px}.kpi-grid{display:grid;gap:8px;grid-template-columns:repeat(4,minmax(0,1fr))}.chart-grid{display:grid;gap:10px;grid-template-columns:1fr 1fr}.kpi-card{background:#f5f9ff;border:1px solid #cfe0fb;border-radius:12px;padding:12px}.kpi-label{color:#5a6f8f;font-size:12px}.kpi-value{font-size:24px;font-weight:800;margin-top:5px}code{background:var(--accent-soft);border:1px solid #c8dcfd;border-radius:6px;padding:1px 4px}@media(max-width:960px){.tabs{grid-template-columns:1fr 1fr}.header{flex-direction:column}.form-grid,.kpi-grid,.plan-grid{grid-template-columns:1fr 1fr}.chart-grid{grid-template-columns:1fr}}
