:root{--accent: #1d1d1f;--accent-2: #000000;--accent-contrast: #ffffff;--accent-glow: rgba(0, 0, 0, .05);--accent-ring: rgba(0, 0, 0, .18);--bg: #ffffff;--surface: #ffffff;--border: #d2d2d7;--input-bg: #ffffff;--raised: #f5f5f7;--ink: #1d1d1f;--muted: #6e6e73;--placeholder: #a1a1a6;--shadow: rgba(0, 0, 0, .12);--danger: #1d1d1f;--danger-ink: #1d1d1f;--danger-bg: #f5f5f7;--danger-border: #d2d2d7;color-scheme:light dark}@media (prefers-color-scheme: dark){:root{--accent: #ffffff;--accent-2: #f5f5f7;--accent-contrast: #000000;--accent-glow: rgba(255, 255, 255, .08);--accent-ring: rgba(255, 255, 255, .24);--bg: #000000;--surface: #1c1c1e;--border: #38383a;--input-bg: #1c1c1e;--raised: #2c2c2e;--ink: #f5f5f7;--muted: #98989d;--placeholder: #6e6e73;--shadow: rgba(0, 0, 0, .6);--danger: #f5f5f7;--danger-ink: #f5f5f7;--danger-bg: #2c2c2e;--danger-border: #38383a}}:root[data-theme=light]{--accent: #1d1d1f;--accent-2: #000000;--accent-contrast: #ffffff;--accent-glow: rgba(0, 0, 0, .05);--accent-ring: rgba(0, 0, 0, .18);--bg: #ffffff;--surface: #ffffff;--border: #d2d2d7;--input-bg: #ffffff;--raised: #f5f5f7;--ink: #1d1d1f;--muted: #6e6e73;--placeholder: #a1a1a6;--shadow: rgba(0, 0, 0, .12);--danger: #1d1d1f;--danger-ink: #1d1d1f;--danger-bg: #f5f5f7;--danger-border: #d2d2d7}:root[data-theme=dark]{--accent: #ffffff;--accent-2: #f5f5f7;--accent-contrast: #000000;--accent-glow: rgba(255, 255, 255, .08);--accent-ring: rgba(255, 255, 255, .24);--bg: #000000;--surface: #1c1c1e;--border: #38383a;--input-bg: #1c1c1e;--raised: #2c2c2e;--ink: #f5f5f7;--muted: #98989d;--placeholder: #6e6e73;--shadow: rgba(0, 0, 0, .6);--danger: #f5f5f7;--danger-ink: #f5f5f7;--danger-bg: #2c2c2e;--danger-border: #38383a}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;letter-spacing:-.01em}#app{min-height:100dvh}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;height:38px;padding:0 18px;font-size:14px;font-weight:500;border-radius:980px;border:1px solid transparent;cursor:pointer;white-space:nowrap;transition:opacity .18s ease,background .18s ease,border-color .18s ease,color .18s ease}.btn:disabled{opacity:.4;cursor:default}.btn-primary{color:var(--accent-contrast);background:var(--accent)}.btn-primary:hover:not(:disabled){opacity:.85}.btn-secondary{color:var(--ink);background:transparent;border-color:var(--border)}.btn-secondary:hover:not(:disabled){background:var(--raised);border-color:var(--ink)}.btn-danger{color:var(--danger-ink);background:transparent;border-color:var(--border)}.btn-danger:hover:not(:disabled){background:var(--danger-bg);border-color:var(--ink)}.btn-sm{height:32px;padding:0 14px;font-size:13px}.card{background:var(--surface);border:1px solid var(--border);border-radius:18px;padding:24px}.field-label{display:block;font-size:13px;font-weight:500;color:var(--muted);margin-bottom:7px}.input,.select,.textarea{width:100%;padding:10px 12px;font-size:15px;font-family:inherit;color:var(--ink);background:var(--input-bg);border:1px solid var(--border);border-radius:12px;outline:none;transition:border-color .15s ease,box-shadow .15s ease}.input{height:42px}.select{height:42px;cursor:pointer}.textarea{min-height:92px;resize:vertical}.input::placeholder,.textarea::placeholder{color:var(--placeholder)}.input:focus-visible,.select:focus-visible,.textarea:focus-visible{border-color:var(--ink);box-shadow:0 0 0 4px var(--accent-ring)}.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table th{text-align:left;font-size:12px;font-weight:600;letter-spacing:.01em;color:var(--muted);padding:12px 14px;border-bottom:1px solid var(--border)}.data-table td{padding:14px;border-bottom:1px solid var(--border);color:var(--ink);vertical-align:middle}.data-table tr:last-child td{border-bottom:none}.data-table tbody tr{transition:background .12s ease}.data-table tbody tr:hover{background:var(--raised)}.state{padding:40px 20px;text-align:center;color:var(--muted);font-size:14px}.state-error{padding:12px 14px;font-size:13px;color:var(--danger-ink);background:var(--danger-bg);border:1px solid var(--danger-border);border-radius:10px}.badge{display:inline-flex;align-items:center;font-size:11px;font-weight:500;letter-spacing:.01em;padding:3px 9px;border-radius:999px;color:var(--muted);background:var(--raised);border:1px solid var(--border)}.spin{width:15px;height:15px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:admin-spin .7s linear infinite;display:inline-block}@keyframes admin-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion: reduce){.spin{animation-duration:2s}}
