@font-face{font-family:Inter;src:url(/fonts/InterVariable.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}:root{--brand-900: #5E0F15;--brand-700: #A01C24;--brand-500: #B93A41;--brand-100: #EAD5D2;--brand-050: #F6ECEA;--brand-web: #7E151C;--paper: #F1EDE4;--card: #FAF8F3;--card-2: #F3EFE6;--ink-900: #201D19;--ink-600: #57524A;--ink-400: #8A8478;--line-200: #EBE7DC;--line-300: #DFD9CB;--border: #E7E2D6;--ok-600: #1E7A3C;--ok-050: #EAF2EB;--warn-600: #9A5B08;--warn-050: #F7EFDF;--bad-600: #C03830;--bad-050: #F9ECE9;--font: "Inter", "Segoe UI", system-ui, -apple-system, Roboto, "Helvetica Neue", sans-serif;--shadow: 0 1px 2px rgba(32,29,25,.05);--shadow-2: 0 8px 24px rgba(32,29,25,.1);--radius: 9px}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);color:var(--ink-900);background:var(--paper);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{color:inherit;text-decoration:none}button{font-family:inherit;cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}label{display:grid;gap:6px;font-size:12px;font-weight:600;color:var(--ink-600)}input,select,textarea{font-family:inherit;font-size:14px;padding:9px 12px;border:1px solid var(--line-300);border-radius:8px;background:#fffefb;color:var(--ink-900)}input:focus,select:focus,textarea:focus{outline:2px solid var(--brand-500);border-color:transparent}input[type=checkbox]{accent-color:var(--brand-700);width:15px;height:15px;padding:0}.btn{background:var(--brand-web);color:#fff;border:1px solid var(--brand-web);border-radius:8px;padding:8px 16px;font-weight:600;font-size:13px;letter-spacing:.01em}.btn:hover{background:var(--brand-900);border-color:var(--brand-900)}.btn-ghost{background:var(--card);border:1px solid var(--line-300);border-radius:8px;padding:7px 13px;color:var(--ink-600);font-size:12.5px;font-weight:600}.btn-ghost:hover{border-color:var(--ink-400);color:var(--ink-900)}.btn-quitar{color:var(--bad-600);border-color:#e7ccc6}.btn-quitar:hover{background:var(--bad-050);border-color:var(--bad-600);color:var(--bad-600)}.aviso{background:var(--ok-050);border:1px solid #D3E2D5;color:var(--ok-600);padding:9px 12px;border-radius:8px;font-size:12.5px;font-weight:600}.error{background:var(--bad-050);border:1px solid #EAD2CC;color:var(--bad-600);padding:9px 12px;border-radius:8px;font-size:12.5px;font-weight:600}.login-wrap{min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:24px;gap:22px;background:radial-gradient(120% 90% at 50% -10%,#8E1E27 0%,var(--brand-web) 48%,#45090E 100%)}.login-card{background:#fffdf9;border:1px solid rgba(255,255,255,.5);border-radius:16px;box-shadow:0 30px 70px #0000006b,0 2px 8px #0000002e;padding:40px 36px 32px;width:100%;max-width:400px;text-align:center}.login-card .brand{font-weight:800;font-size:25px;color:var(--brand-700);letter-spacing:-.01em}.login-card .brand span{color:inherit}.login-card h1{font-size:11.5px;margin:8px 0 0;color:var(--ink-400);font-weight:650;text-transform:uppercase;letter-spacing:.26em}.login-card .sub{color:var(--ink-600);margin:6px 0 30px;font-size:12.5px}.login-card form{display:grid;gap:15px;text-align:left}.login-card label{color:var(--ink-600);font-size:11px;font-weight:650;letter-spacing:.06em;text-transform:uppercase}.login-card input{font-size:16px;background:#fbf9f3;border:1px solid var(--line-300);color:var(--ink-900);border-radius:9px;padding:11px 13px}.login-card input:focus{outline:2px solid var(--brand-500);border-color:transparent}.login-card input:-webkit-autofill{-webkit-text-fill-color:var(--ink-900);caret-color:var(--ink-900);-webkit-box-shadow:0 0 0 1000px #FBF9F3 inset;transition:background-color 9999s ease-out}.login-card .error,.login-card .aviso{margin:0 0 2px}button[type=submit]{background:var(--brand-web);color:#fff;border:none;border-radius:9px;padding:12px 16px;font-weight:700;font-size:14px;letter-spacing:.01em}button[type=submit]:hover{background:var(--brand-900)}.login-foot{color:#ffffff73;font-size:11.5px;letter-spacing:.03em}.sep-o{display:flex;align-items:center;gap:10px;margin:20px 0 14px;color:var(--ink-400);font-size:11px}.sep-o:before,.sep-o:after{content:"";flex:1;height:1px;background:var(--line-200)}.btn-google{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;background:transparent;border:1px solid var(--line-300);border-radius:9px;padding:10px 16px;font-weight:600;font-size:13.5px;color:var(--ink-900)}.btn-google:hover{background:var(--paper);border-color:var(--ink-400)}.btn-google svg{flex:none}.topbar{position:sticky;top:0;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:11px 24px;background:var(--brand-web)}.topbar .brand{display:flex;flex-direction:column;line-height:1.15;color:#fff;font-weight:650;font-size:17px;letter-spacing:-.01em}.topbar .brand small{font-size:8.5px;font-weight:600;letter-spacing:.14em;color:#d9a9a5;margin-top:2px}.topbar-right{display:flex;align-items:center;gap:12px}.usuario{font-size:11.5px;color:#ebd2ce;font-variant-numeric:tabular-nums}.usuario em{color:#fff;font-style:normal;font-weight:650}.topbar .btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.26);color:#f1ddd9;font-size:11.5px;padding:5px 12px}.topbar .btn-ghost:hover{background:#ffffff14;border-color:#fff6;color:#fff}.contenido{max-width:1100px;margin:0 auto;padding:26px 24px 60px}.cargando{color:var(--ink-600);padding:24px}.cargando.full{min-height:100vh;display:grid;place-items:center}.volver{display:inline-block;color:var(--brand-700);font-size:12.5px;font-weight:600;margin-bottom:14px}.volver:hover{color:var(--brand-900)}.usuarios-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin:0 0 16px}.usuarios-head h2{margin:0;font-size:16px;font-weight:700;letter-spacing:-.01em;display:flex;align-items:center;gap:10px}.usuarios-head h2:before{content:"";width:18px;height:3px;background:var(--brand-700);border-radius:2px;flex:none}.usuarios .aviso,.usuarios .error{margin-bottom:12px}.tabla{width:100%;border-collapse:collapse;background:var(--card);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}.tabla th{background:var(--card-2);color:var(--ink-400);font-size:10px;font-weight:650;text-transform:uppercase;letter-spacing:.07em;text-align:left;padding:10px 14px;border-bottom:1px solid var(--line-300);white-space:nowrap}.tabla td{padding:10px 14px;border-bottom:1px solid var(--line-200);font-size:13px;text-align:left;vertical-align:middle}.tabla tr:last-child td{border-bottom:none}.tabla tbody tr:hover td{background:#201d1905}.tabla select{padding:6px 9px;font-size:12.5px;background:var(--card)}.muted{color:var(--ink-400)}.proximo{margin-top:18px;font-size:12.5px;color:var(--ink-600);background:var(--card-2);border:1px dashed var(--line-300);border-radius:var(--radius);padding:12px 14px}.proximo strong{color:var(--ink-900)}.modal-fondo{position:fixed;top:0;right:0;bottom:0;left:0;background:#201d1973;display:grid;place-items:center;z-index:50;padding:20px}.modal-caja{background:var(--card);border:1px solid var(--line-300);border-radius:12px;box-shadow:var(--shadow-2);padding:22px 24px;width:100%;max-width:430px;max-height:82vh;display:flex;flex-direction:column}.modal-caja h3{margin:0 0 14px;font-size:16px;letter-spacing:-.01em}.modal-lista{overflow-y:auto;display:grid;gap:2px}.modal-item{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:7px;font-size:13.5px;cursor:pointer}.modal-item:hover{background:var(--paper)}.form-alta{display:grid;gap:13px}.form-alta .pass-row{display:flex;gap:8px;align-items:center}.form-alta .pass-row input{flex:1;font-family:ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:.03em}.cred-box{background:var(--card-2);border:1px dashed var(--line-300);border-radius:var(--radius);padding:12px 14px;font-size:12.5px;color:var(--ink-600);line-height:1.9;word-break:break-all;margin-bottom:14px}.cred-box b{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:13.5px;color:var(--ink-900)}@media (max-width: 560px){.contenido{padding:18px 14px 40px}.usuarios .tabla{display:block;overflow-x:auto;white-space:nowrap}.topbar{padding:10px 14px}.usuario{display:none}}
