:root{--accent: #2563eb;--accent-strong: #1d4ed8;--background: #f8fafc;--border: #e2e8f0;--field: #f8fafc;--muted: #64748b;--surface: #ffffff;--text: #0f172a;--warn: #b45309}*{box-sizing:border-box}body{background:var(--background);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;margin:0}button,input,select,textarea{font:inherit}input,select,textarea{background:var(--field);border:1px solid var(--border);border-radius:8px;color:var(--text);min-height:2.45rem;padding:.62rem .75rem;width:100%}input:focus,select:focus,textarea:focus{background:#fff;border-color:var(--accent);box-shadow:0 0 0 3px #2563eb24;outline:0}button.primary{background:var(--accent);border:0;border-radius:8px;color:#fff;cursor:pointer;font-weight:700;padding:.65rem .9rem}button.primary:hover{background:var(--accent-strong)}button:disabled{cursor:default;opacity:.58}.grid{display:grid;gap:1rem;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.panel{background:var(--surface);border:1px solid var(--border);border-radius:8px;box-shadow:0 10px 24px #0f172a0d;margin-bottom:1rem;padding:1rem}.intro-panel{align-items:center;display:flex;justify-content:space-between;gap:1rem}.intro-panel h2,.form-heading h2{font-size:1rem;margin:0 0 .25rem}.intro-panel p,.form-heading p{color:var(--muted);margin:0}.intro-panel strong{background:#ecfeff;border:1px solid #a5f3fc;border-radius:8px;color:#0e7490;padding:.55rem .75rem;white-space:nowrap}.form-panel{display:grid;gap:1rem}.form-grid{display:grid;gap:.85rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.field-wide{grid-column:span 2}.toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem;margin-bottom:1rem}.field{color:#334155;display:grid;font-size:.84rem;font-weight:700;gap:.35rem}.field span{color:#334155}.form-actions,.toggle-row{align-items:center;display:flex;flex-wrap:wrap;gap:.75rem}.toggle-row label{align-items:center;display:flex;gap:.45rem}.toggle-row input{min-height:auto;width:auto}.empty-state{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;color:var(--muted);margin:0;padding:1rem}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid var(--border);padding:.75rem;text-align:left;vertical-align:top}th{color:var(--muted);font-size:.78rem;text-transform:uppercase}@media(max-width:700px){.intro-panel{align-items:flex-start;flex-direction:column}.field-wide{grid-column:span 1}}
