:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f0f2f5;--surface:#fff;--ink:#1f2430;--muted:#5f6776;--accent:#2f837d;--accent-hover:#256860;--danger:#c0392b;--line:#1f24301a;--sidebar:#1f2430;--sidebar-text:#e8eaed;--sidebar-muted:#9aa0ab;font-family:system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{min-width:320px;min-height:100vh;color:var(--ink);background:var(--bg);margin:0}#root{min-height:100vh}a{color:var(--accent)}button,input,select,textarea{font:inherit}button{cursor:pointer}.btn{background:var(--accent);color:#fff;border:none;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:36px;padding:0 14px;font-size:.875rem;text-decoration:none;display:inline-flex}.btn:hover{background:var(--accent-hover)}.btn.secondary{color:var(--ink);border:1px solid var(--line);background:0 0}.btn.secondary:hover{background:#1f24300a}.btn.danger{background:var(--danger)}.btn.danger:hover{background:#a93226}.btn:disabled{opacity:.5;cursor:not-allowed}.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:20px}.form-grid{gap:16px;display:grid}.form-field label{margin-bottom:6px;font-size:.875rem;font-weight:500;display:block}.form-field input,.form-field select,.form-field textarea{border:1px solid var(--line);background:var(--surface);border-radius:8px;width:100%;padding:8px 10px}.form-field textarea{resize:vertical;min-height:80px}.form-actions{gap:12px;margin-top:8px;display:flex}.data-table{border-collapse:collapse;width:100%;font-size:.875rem}.data-table th,.data-table td{text-align:left;border-bottom:1px solid var(--line);padding:10px 12px}.data-table th{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.75rem;font-weight:600}.page-header{justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px;display:flex}.page-header h1{margin:0;font-size:1.5rem}.alert{border-radius:8px;margin-bottom:16px;padding:12px 16px;font-size:.875rem}.alert.error{color:#922b21;background:#fdecea;border:1px solid #f5b7b1}.alert.success{color:#1e6f5c;background:#e8f6f3;border:1px solid #a3e4d7}.badge{color:var(--accent);background:#2f837d1f;border-radius:999px;padding:2px 8px;font-size:.75rem;font-weight:500;display:inline-block}.empty-state{text-align:center;color:var(--muted);padding:32px}
