:root{--bg:#0a0c10;--surface:#12151c;--surface-hover:#181c26;--card:#151922;--border:#1e2330;--border-light:#2a3040;--text:#e2e6ef;--text-muted:#7b839a;--text-dim:#4a5168;--accent:#3b82f6;--accent-hover:#2563eb;--accent-soft:rgba(59,130,246,0.12);--success:#22c55e;--success-soft:rgba(34,197,94,0.12);--warning:#f59e0b;--warning-soft:rgba(245,158,11,0.12);--danger:#ef4444;--danger-soft:rgba(239,68,68,0.12);--font:"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif;--mono:"JetBrains Mono",ui-monospace,"Cascadia Mono",Consolas,monospace;color-scheme:dark}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased}::selection{background:rgba(59,130,246,.35)}:focus{outline:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}*{scrollbar-width:thin;scrollbar-color:var(--border-light) transparent}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:8px;border:2px solid var(--bg)}::-webkit-scrollbar-track{background:transparent}.th-btn{transition:background .15s,border-color .15s,color .15s,opacity .15s}.th-btn:disabled{cursor:not-allowed;opacity:.5}.th-btn--primary:not(:disabled):hover{background:var(--accent-hover)!important}.th-btn--ghost:not(:disabled):hover{background:var(--surface-hover)!important;color:var(--text)!important;border-color:var(--border-light)!important}.th-btn--danger:not(:disabled):hover{background:rgba(239,68,68,.2)!important}.th-btn--success:not(:disabled):hover{background:rgba(34,197,94,.2)!important}.th-btn--subtle:not(:disabled):hover{background:var(--surface-hover)!important;color:var(--text)!important}.th-field{transition:border-color .15s,box-shadow .15s}.th-field:focus{border-color:var(--accent)!important;box-shadow:0 0 0 3px var(--accent-soft)}.th-field:disabled{opacity:.6;cursor:not-allowed}.th-field::placeholder{color:var(--text-dim)}.th-hover{transition:background-color .12s,border-color .12s}.th-hover:hover{background-image:linear-gradient(rgba(255,255,255,.035),rgba(255,255,255,.035))!important}.th-hover-border:hover{border-color:var(--border-light)!important}input:focus-visible+.th-checkbox-box{outline:2px solid var(--accent);outline-offset:2px}.th-tab{transition:color .12s,border-color .12s,background .12s}.th-tab:hover{color:var(--text)!important}@keyframes th-spin{to{transform:rotate(1turn)}}.th-spinner{animation:th-spin .8s linear infinite}@keyframes th-fade-in{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.th-modal{animation:th-fade-in .14s ease-out}@media (prefers-reduced-motion:reduce){.th-spinner{animation-duration:2s}.th-modal{animation:none}}.th-sidebar-item:not([aria-current=page]):hover{color:var(--text)!important}@media (max-width:900px){.th-sidebar{width:64px!important}.th-sidebar .th-sidebar-text{display:none!important}.th-sidebar-brand,.th-sidebar-item{justify-content:center;padding-left:0!important;padding-right:0!important}.th-sidebar-section+.th-sidebar-section{border-top:1px solid var(--border);padding-top:8px}.th-sidebar-user{flex-direction:column;padding-left:0!important;padding-right:0!important}}@media (max-width:760px){.th-grid-2{grid-template-columns:1fr!important}.th-page{padding:16px!important}}