body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}:root{--bg-page:#f3f6fb;--card:#fff;--muted:#6b7280;--text:#0f172a;--border:#e6eef8;--pri:#0ea5e9;--pri-600:#0284c7;--danger:#ef4444;--radius:10px;--shadow-sm:0 4px 10px #0f172a0f;--shadow-md:0 10px 30px #0f172a14}:root[data-theme=dark]{--bg-page:#0f1117;--card:#0f1724;--muted:#9ca3af;--text:#e6eef8;--border:#ffffff0f;--pri:#38bdf8;--pri-600:#0ea5e9}*{box-sizing:border-box}#root,body,html{height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:#f3f6fb;background:var(--bg-page);color:#0f172a;color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica Neue,Arial;margin:0;transition:background .15s ease,color .15s ease}.container{margin:28px auto;max-width:1220px;padding:20px}.header{background:#fff;background:var(--card);border:1px solid #e6eef8;border:1px solid var(--border);border-radius:12px;box-shadow:0 4px 10px #0f172a0f;box-shadow:var(--shadow-sm);gap:16px;justify-content:space-between;padding:14px 18px}.brand,.header{align-items:center;display:flex}.brand{gap:12px}.logo{color:#0f172a;color:var(--text);font-size:18px;font-weight:700;letter-spacing:.2px}.badge{background:#0ea5e914;border-radius:999px;color:#0284c7;color:var(--pri-600);font-size:12px;font-weight:600;padding:6px 10px}.header-controls{align-items:center;display:flex;gap:10px}.btn{align-items:center;background:linear-gradient(180deg,#0ea5e9,#0284c7);background:linear-gradient(180deg,var(--pri),var(--pri-600));border:1px solid #0000;border-radius:10px;box-shadow:0 4px 10px #0f172a0f;box-shadow:var(--shadow-sm);color:#fff;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:9px 14px;transition:transform .06s ease,box-shadow .12s ease}.btn:hover{box-shadow:0 10px 30px #0f172a14;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn.secondary{box-shadow:none;color:#0f172a;color:var(--text)}.btn.ghost,.btn.secondary{background:#0000;border:1px solid #e6eef8;border:1px solid var(--border)}.btn.ghost{color:#6b7280;color:var(--muted)}.btn.danger{background:#fff0f0;border:1px solid #ef44441f;color:#ef4444;color:var(--danger)}.card{background:#fff;background:var(--card);border:1px solid #e6eef8;border:1px solid var(--border);border-radius:12px;box-shadow:0 4px 10px #0f172a0f;box-shadow:var(--shadow-sm);padding:16px}.grid{grid-gap:12px}.grid,.row-2cols{display:grid;gap:12px}.row-2cols{grid-gap:12px;align-items:center;grid-template-columns:1fr 220px}.file,.input,.select{background:#0000;border:1px solid #e6eef8;border:1px solid var(--border);border-radius:8px;color:#0f172a;color:var(--text);font-size:14px;padding:10px 12px;width:100%}.input:focus,.select:focus{border-color:#0ea5e9;border-color:var(--pri);box-shadow:0 6px 18px #0ea5e90f;outline:none}.table{border-collapse:collapse;font-size:14px;width:100%}.table thead th{border-bottom:1px solid #e6eef8;border-bottom:1px solid var(--border);color:#6b7280;color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.04em;padding:14px 12px;text-align:left}.table tbody tr{background:#0000;transition:background .12s ease}.table tbody tr:hover{background:#0ea5e908}.table td{border-bottom:1px dashed #00000005;padding:12px;vertical-align:middle}.table img{border-radius:8px;display:block;height:44px;object-fit:cover;width:44px}.muted{color:#6b7280;color:var(--muted);font-size:13px}.pagination{align-items:center;display:flex;gap:12px;justify-content:space-between;padding-top:10px}.page-btn{background:#0000;border:1px solid #e6eef8;border:1px solid var(--border);border-radius:8px;color:#0f172a;color:var(--text);cursor:pointer;padding:8px 12px}.page-btn[disabled]{cursor:not-allowed;opacity:.5}.modal-backdrop{align-items:center;background:#02061759;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1200}.modal{background:#fff;background:var(--card);border:1px solid #e6eef8;border:1px solid var(--border);border-radius:12px;box-shadow:0 10px 30px #0f172a14;box-shadow:var(--shadow-md);display:flex;flex-direction:column;max-height:92vh;max-width:98vw;overflow:hidden;width:920px}.modal-header{align-items:center;border-bottom:1px solid #e6eef8;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:16px 18px}.modal-title{color:#0f172a;color:var(--text);font-size:16px;font-weight:700}.modal-actions{align-items:center;display:flex;gap:10px}.modal-body{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;overflow:auto;padding:16px 18px}@media (max-width:880px){.modal{max-height:96vh;width:96vw}.modal-body{grid-template-columns:1fr;padding:12px}.modal-actions .btn{font-size:13px;padding:8px 12px}}.modal-footer{background:linear-gradient(180deg,#fff0,#00000003);border-top:1px solid #e6eef8;border-top:1px solid var(--border);display:flex;gap:10px;justify-content:flex-end;padding:12px 16px}.center{display:grid;min-height:100vh;place-items:center}.login-card{padding:26px;width:min(520px,95vw)}.small{color:#6b7280;color:var(--muted);font-size:13px}.auth-wrapper{align-items:center;display:flex;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;justify-content:center;min-height:100vh;padding:24px;transition:background .3s ease,color .3s ease}.auth-light{background:radial-gradient(circle at top left,#e0f0ff,#f8fafc);color:#0f172a}.auth-dark{background:radial-gradient(circle at top left,#020617,#020617);color:#e5e7eb}.auth-card{background:#0f172aeb;border-radius:20px;box-shadow:0 24px 60px #0f172a8c;color:#e5e7eb;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);max-width:960px;overflow:hidden;width:100%}.auth-light .auth-card{background:#fff;color:#0f172a}.auth-card.single{grid-template-columns:minmax(0,1fr)}.auth-card-left{background:linear-gradient(135deg,#3b82f61f,#0000);border-right:1px solid #94a3b84d;padding:32px}.auth-brand{gap:16px;margin-bottom:24px}.auth-brand,.logo-circle{align-items:center;display:flex}.logo-circle{background:linear-gradient(135deg,#3b82f6,#6366f1);border-radius:999px;color:#fff;font-weight:700;height:40px;justify-content:center;width:40px}.auth-title{font-size:1.4rem;margin:0}.auth-subtitle{font-size:.9rem;margin:4px 0 0;opacity:.8}.auth-highlights{font-size:.9rem;list-style:none;margin:0 0 24px;padding:0}.auth-highlights li{margin-bottom:8px;opacity:.9}.auth-footer-note{background:#0f172a0f;border:1px dashed #94a3b899;border-radius:8px;font-size:.8rem;opacity:.85;padding:8px 10px}.auth-card-right{padding:28px 28px 32px}.auth-header{align-items:center;display:flex;gap:12px;justify-content:space-between;margin-bottom:20px}.auth-header .badge{background:#3b82f626;border-radius:999px;color:#3b82f6;font-size:.75rem;font-weight:600;padding:4px 10px}.auth-dark .auth-header .badge{background:#3b82f640;color:#bfdbfe}.theme-toggle{font-size:.75rem}.auth-form{grid-gap:14px;display:grid;gap:14px}.form-group{grid-gap:6px;display:grid;gap:6px}.form-group label{font-size:.85rem;font-weight:500}.input{background:#0000;border:1px solid #94a3b8b3;border-radius:10px;font-size:.9rem;outline:none;padding:10px 12px;width:100%}.auth-dark .input{background:#0f172a99;color:#e5e7eb}.input:focus{border-color:#3b82f6;box-shadow:0 0 0 1px #3b82f659}.password-field{align-items:center;display:flex;gap:8px}.password-field .input{flex:1 1}.ghost-btn{background:#0000;border:none;border-radius:999px;cursor:pointer;font-size:.8rem;opacity:.8;padding:6px 8px}.ghost-btn:hover{opacity:1}.form-group-inline{display:flex;justify-content:flex-start}.checkbox-label{align-items:center;display:flex;font-size:.85rem;gap:6px}.btn{border:none;border-radius:999px;cursor:pointer;font-size:.85rem;font-weight:500;padding:8px 16px}.btn.primary{background:linear-gradient(135deg,#3b82f6,#6366f1);color:#fff}.btn.primary:disabled{cursor:default;opacity:.7}.btn.secondary{background:#0f172a0f}.auth-dark .btn.secondary{background:#0f172acc;color:#e5e7eb}.btn.full{margin-top:4px;width:100%}.form-error{background:#f871711a;color:#f97373}.form-error,.form-success{border-radius:8px;font-size:.8rem;padding:8px 10px}.form-success{background:#16a34a1f;color:#22c55e}.field-hint{font-size:.75rem;opacity:.75}.form-helper{font-size:.8rem;margin-top:8px;opacity:.8}@media (max-width:768px){.auth-card{grid-template-columns:minmax(0,1fr)}.auth-card-left{border-bottom:1px solid #94a3b84d;border-right:none}.auth-card-right{padding:20px}}
/*# sourceMappingURL=main.fec8e131.css.map*/