*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--red: #C8102E;--red-hover: #A50D26;--red-dim: rgba(200,16,46,.1);--red-text: #E8385A;--bg-base: #0E0F12;--bg-1: #13151A;--bg-2: #191C23;--bg-3: #1F222B;--bg-4: #252930;--bg-hover:#2A2E38;--border: rgba(255,255,255,.06);--border-bright: rgba(255,255,255,.1);--text-1: #EAECF0;--text-2: #8892A4;--text-3: #4E5668;--green: #22C55E;--green-dim: rgba(34,197,94,.1);--yellow: #EAB308;--yellow-dim: rgba(234,179,8,.1);--blue: #3B82F6;--blue-dim: rgba(59,130,246,.1);--sidebar: 220px;--radius: 7px;--radius-md: 10px;--radius-lg: 13px;--transition: .15s ease;--shadow: 0 4px 24px rgba(0,0,0,.35);--shadow-lg: 0 16px 60px rgba(0,0,0,.6);--font: "DM Sans", "Inter", ui-sans-serif, system-ui, -apple-system, sans-serif;--mono: "JetBrains Mono", ui-monospace, monospace}[data-theme=light]{--bg-base: #F0F2F5;--bg-1: #FFFFFF;--bg-2: #F8F9FB;--bg-3: #EFF1F5;--bg-4: #E5E8EF;--bg-hover:#E0E3EC;--border: rgba(0,0,0,.07);--border-bright: rgba(0,0,0,.12);--text-1: #111827;--text-2: #4B5563;--text-3: #9CA3AF;--shadow: 0 2px 12px rgba(0,0,0,.08);--shadow-lg: 0 8px 32px rgba(0,0,0,.15)}html{font-size:14px;-webkit-font-smoothing:antialiased}body{background:var(--bg-base);color:var(--text-1);font-family:var(--font);line-height:1.5;min-height:100vh;transition:background .2s,color .2s}::-webkit-scrollbar{width:4px;height:4px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-bright);border-radius:4px}a{color:inherit;text-decoration:none}button{font-family:var(--font);cursor:pointer;border:none;outline:none;background:none}input,textarea,select{font-family:var(--font);font-size:.875rem;outline:none}.input{width:100%;padding:.5rem .75rem;background:var(--bg-3);border:1px solid var(--border-bright);border-radius:var(--radius);color:var(--text-1);font-size:.8rem;transition:border-color var(--transition),box-shadow var(--transition),background var(--transition)}.input:focus{border-color:var(--red);box-shadow:0 0 0 2.5px var(--red-dim);background:var(--bg-2)}.input::placeholder{color:var(--text-3)}.input:disabled{opacity:.5;cursor:not-allowed}table{width:100%;border-collapse:collapse}thead th{text-align:left;font-size:.69rem;font-weight:600;letter-spacing:.07em;text-transform:uppercase;color:var(--text-3);padding:.65rem 1rem;border-bottom:1px solid var(--border);white-space:nowrap}tbody td{padding:.65rem 1rem;font-size:.8rem;color:var(--text-2);border-bottom:1px solid var(--border);vertical-align:middle}tbody tr:last-child td{border-bottom:none}tbody tr:hover td{background:var(--bg-hover)}.card{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius-lg)}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 7px;border-radius:999px;font-size:.69rem;font-weight:600}.badge-green{background:var(--green-dim);color:var(--green)}.badge-red{background:var(--red-dim);color:var(--red-text)}.badge-yellow{background:var(--yellow-dim);color:var(--yellow)}.badge-blue{background:var(--blue-dim);color:var(--blue)}.mono{font-family:var(--mono)!important;font-size:.8em}@keyframes fadeUp{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.35}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.fade-up{animation:fadeUp .2s ease forwards}.spin{animation:spin .7s linear infinite}.skeleton{background:linear-gradient(90deg,var(--bg-3) 25%,var(--bg-4) 50%,var(--bg-3) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:var(--radius)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:9999;background:#000000a6;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);display:flex;align-items:center;justify-content:center;padding:1.5rem;animation:fadeIn .15s ease}.modal-box{background:var(--bg-2);border:1px solid var(--border-bright);border-radius:var(--radius-lg);width:100%;max-height:90vh;display:flex;flex-direction:column;box-shadow:var(--shadow-lg);animation:fadeUp .18s ease}@media(max-width:768px){:root{--sidebar: 0px}.hide-mobile{display:none!important}}
