@import "https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap";
:root{--primary:#2563eb;--primary-light:#60a5fa;--primary-hover:#1d4ed8;--secondary:#0ea5e9;--danger:#ef4444;--warning:#f59e0b;--success:#10b981;--background:#f8fafc;--surface:#ffffffe6;--surface-solid:#fff;--text-main:#0f172a;--text-muted:#64748b;--border:#e2e8f0cc;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #0000000d, 0 2px 4px -1px #00000008;--shadow-glass:0 8px 32px 0 #0ea5e90d;--input-bg:#fff;--input-border:#cbd5e1}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--background);color:var(--text-main);-webkit-font-smoothing:antialiased;background-image:radial-gradient(circle at 100% 0,#0ea5e914,#0000 40%),radial-gradient(circle at 0 100%,#2563eb0d,#0000 40%);background-attachment:fixed;font-family:Inter,sans-serif;line-height:1.5}.glass{background:var(--surface);-webkit-backdrop-filter:blur(12px);border:1px solid var(--border);box-shadow:var(--shadow-glass);border-radius:16px}.glass-card{border:1px solid var(--border);box-shadow:none;background:0 0;border-radius:16px;padding:24px;transition:transform .2s,box-shadow .2s}.glass-card:hover{box-shadow:none;transform:translateY(-2px)}h1,h2,h3,h4,h5,h6{color:var(--text-main);margin-bottom:.5rem;font-weight:600}p{color:var(--text-muted)}.btn{cursor:pointer;border:none;border-radius:8px;justify-content:center;align-items:center;padding:.5rem 1rem;font-family:inherit;font-weight:500;transition:all .2s;display:inline-flex}.btn-primary{background-color:var(--primary);color:#fff;box-shadow:0 4px 14px #4f46e563}.btn-primary:hover{background-color:var(--primary-light);transform:translateY(-1px)}.btn-danger{background-color:var(--danger);color:#fff}.btn-danger:hover{filter:brightness(1.2)}.btn-secondary{color:var(--text-main);border:1px solid var(--border);background-color:#f1f5f9}.btn-secondary:hover{background-color:#e2e8f0}.btn-sm{padding:.25rem .5rem;font-size:.8rem}.input-field{border:1px solid var(--border);background-color:var(--input-bg);width:100%;color:var(--text-main);border-radius:8px;outline:none;padding:10px 12px;font-size:.95rem;transition:border-color .2s,box-shadow .2s}.input-field:focus{border-color:var(--primary);box-shadow:0 0 0 2px #2563eb33}select.input-field option{background-color:var(--surface-solid);color:var(--text-main)}.app-container{min-height:100vh;display:flex}.sidebar{z-index:10;flex-direction:column;gap:8px;width:280px;height:100vh;padding:0;display:flex;position:sticky;top:0}.sidebar nav::-webkit-scrollbar{display:none}.sidebar nav{-ms-overflow-style:none;scrollbar-width:none}.main-content{flex-direction:column;flex:1;gap:24px;padding:32px;display:flex}.nav-link{color:var(--text-muted);border-radius:12px;align-items:center;padding:12px 16px;font-weight:500;text-decoration:none;transition:all .2s;display:flex}.nav-link:hover{color:var(--primary);background:#2563eb0d}.nav-link.active{background:var(--primary);color:#fff;box-shadow:0 4px 14px #2563eb63}.nav-link svg{width:20px;height:20px;margin-right:12px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:.4s ease-out forwards fadeIn}.badge{border-radius:20px;padding:4px 10px;font-size:.75rem;font-weight:600}.badge-success{color:var(--secondary);background:#10b9811a}.badge-warning{color:var(--warning);background:#f59e0b1a}.badge-danger{color:var(--danger);background:#ef44441a}body:has(.modal-overlay){overflow:hidden}.swal2-container{z-index:99999!important}.swal2-title{font-size:1.1rem!important}.swal2-html-container{white-space:pre-wrap!important;font-size:.85rem!important}.skeleton{background:linear-gradient(90deg,#ffffff0d 25%,#ffffff26 50%,#ffffff0d 75%) 0 0/200% 100%;border-radius:4px;animation:1.5s linear infinite skeleton-pulse}@keyframes skeleton-pulse{0%{background-position:200% 0}to{background-position:-200% 0}}.hide-spin-button::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.hide-spin-button::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.hide-spin-button{-moz-appearance:textfield}table thead tr{background-color:var(--surface-solid)}table tbody tr{background-color:var(--surface-solid);transition:background-color .2s}table tbody tr:hover{background-color:var(--background)}table tbody tr.selected-row{background-color:rgba(var(--primary-rgb), .05)}.sticky-action-col{background-color:inherit;z-index:10;border-left:1px solid var(--border);position:sticky;right:0;box-shadow:-4px 0 8px #0000000d}
