:root{--ink: #0f0f14;--ink-soft: #5c5c68;--ink-faint: #9494a0;--border: #e5e5ea;--border-soft: #eeeef1;--surface: #ffffff;--surface-alt: #fafafa;--surface-hover: #f2f2f5;--accent-light: #c6e48b;--accent-mid: #7bc96f;--accent-dark: #196127;--danger: #c0392b;--shadow-sm: 0 1px 2px rgba(15, 15, 20, .04), 0 1px 1px rgba(15, 15, 20, .03);--shadow-md: 0 8px 24px rgba(15, 15, 20, .06), 0 2px 6px rgba(15, 15, 20, .04);--shadow-lg: 0 24px 64px rgba(15, 15, 20, .12), 0 4px 16px rgba(15, 15, 20, .06);--radius-sm: 8px;--radius-md: 12px;--radius-lg: 20px;--font-sans: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Segoe UI", sans-serif}*{box-sizing:border-box}html,body{margin:0;padding:0}body{font-family:var(--font-sans);color:var(--ink);background:var(--surface);-webkit-font-smoothing:antialiased;font-size:15px;line-height:1.5}a{color:inherit;text-decoration:none}button{font-family:inherit}.container{max-width:900px;margin:0 auto;padding:0 24px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 20px;font-size:14px;font-weight:600;border-radius:999px;border:1px solid var(--border);background:var(--surface);color:var(--ink);cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease,border-color .15s ease}.btn:hover{border-color:var(--ink-faint);background:var(--surface-hover)}.btn:active{transform:scale(.98)}.btn.primary{background:var(--ink);border-color:var(--ink);color:#fff;box-shadow:var(--shadow-sm)}.btn.primary:hover{box-shadow:var(--shadow-md);transform:translateY(-1px);background:#1c1c24}.btn.primary:active{transform:translateY(0) scale(.98)}.btn.ghost{border-color:transparent;background:transparent;color:var(--ink-soft)}.btn.ghost:hover{background:var(--surface-hover);color:var(--ink)}.btn.danger{color:var(--danger);border-color:#f0d4d0}.btn.danger:hover{background:#fdf3f2}.btn.block{width:100%}.card{background:var(--surface);border:1px solid var(--border-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.field{display:block;margin-bottom:16px}.field .label{display:block;font-size:12.5px;font-weight:600;color:var(--ink-soft);margin-bottom:6px}.field input{width:100%;padding:12px 14px;font-size:15px;font-family:inherit;border:1px solid var(--border);border-radius:var(--radius-sm);outline:none;background:var(--surface);transition:border-color .15s ease,box-shadow .15s ease}.field input:focus{border-color:var(--ink);box-shadow:0 0 0 3px #0f0f140f}.nav-link{display:inline-block;padding:8px 14px;font-size:14px;font-weight:600;color:var(--ink-faint);text-decoration:none;border-radius:999px;transition:color .15s ease,background .15s ease}.nav-link:hover{color:var(--ink-soft)}.nav-link.active{color:var(--ink);background:var(--surface-alt)}.table-row{border-top:1px solid var(--border-soft);transition:background .12s ease}.table-row:hover{background:var(--surface-alt)}.table-row td{padding-left:8px;padding-right:8px}.table-row td:first-child{padding-left:0}.sidebar-link{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:8px 12px;font-size:13.5px;font-weight:600;color:var(--ink-soft);text-decoration:none;border-radius:var(--radius-sm);border:none;background:transparent;text-align:left;cursor:pointer;transition:color .15s ease,background .15s ease}.sidebar-link:hover{background:var(--surface-hover);color:var(--ink)}.sidebar-link.active{background:var(--ink);color:#fff}.sidebar-link .count{font-size:11.5px;font-weight:700;color:inherit;opacity:.55}.sidebar-link.active .count{opacity:.75}.muted{color:var(--ink-soft)}.faint{color:var(--ink-faint)}.error-text{color:var(--danger);font-size:13.5px}@keyframes fade-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
