:root{--primary: #2563eb;--primary-dark: #1d4ed8;--primary-light: #eef4ff;--primary-2: #60a5fa;--brand-grad: linear-gradient(135deg, #3b82f6, #2563eb);--brand-grad-2: linear-gradient(135deg, #2563eb, #1d4ed8);--brand-glow: rgba(37, 99, 235, .35);--accent: #22d3ee;--navy: #004b85;--yellow: #f2df35;--success: #16a34a;--success-light: #e8f7ee;--danger: #dc2626;--danger-light: #fdecec;--warning: #d97706;--warning-light: #fdf3e3;--violet: #7c3aed;--violet-light: #efe9fb;--bg: #f3f6fb;--bg-card: #ffffff;--bg-sidebar: #ffffff;--bg-sidebar-soft: #eef4ff;--border: #e5eaf1;--border-strong: #d3dbe6;--text: #0f172a;--text-dim: #61718c;--text-faint: #94a3b8;--radius: 18px;--radius-md: 12px;--radius-sm: 9px;--shadow: 0 1px 3px rgba(16, 24, 40, .06), 0 1px 2px rgba(16, 24, 40, .04);--shadow-md: 0 8px 24px -12px rgba(16, 24, 40, .18);--shadow-lg: 0 24px 50px -24px rgba(16, 24, 40, .28);--font-body: "Inter", "Segoe UI", system-ui, -apple-system, sans-serif;--font-display: "Sora", "Inter", "Segoe UI", system-ui, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:var(--font-body);color:var(--text);background:radial-gradient(900px 500px at 100% -5%,rgba(34,211,238,.07),transparent 60%),radial-gradient(800px 500px at -5% 0%,rgba(37,99,235,.06),transparent 55%),var(--bg);background-attachment:fixed;line-height:1.55;font-size:14px;-webkit-font-smoothing:antialiased}a{color:var(--primary);text-decoration:none}a:hover{color:var(--primary-dark)}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.015em;margin:0}::-webkit-scrollbar{width:9px;height:9px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:20px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes popIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes shimmer{to{transform:translate(100%)}}@keyframes glowPulse{0%,to{box-shadow:0 0 0 0 var(--brand-glow)}50%{box-shadow:0 0 0 8px #2563eb00}}.login-screen{min-height:100vh;display:grid;grid-template-columns:1.05fr .95fr}.login-hero{position:relative;padding:54px 52px;display:flex;flex-direction:column;justify-content:center;gap:22px;background:radial-gradient(700px 520px at 16% 10%,rgba(59,130,246,.14),transparent 60%),radial-gradient(620px 480px at 94% 94%,rgba(34,211,238,.14),transparent 62%),#fff;border-right:1px solid var(--border);overflow:hidden}.login-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(rgba(37,99,235,.06) 1px,transparent 1px);background-size:24px 24px;pointer-events:none}.login-hero__logo{position:relative;width:auto;max-width:480px;height:120px;object-fit:contain}.login-hero h1{position:relative;font-size:44px;font-weight:800;line-height:1.05;color:var(--text)}.login-hero h1 span{background:var(--brand-grad);-webkit-background-clip:text;background-clip:text;color:transparent}.login-hero p{position:relative;max-width:500px;color:var(--text-dim);font-size:14.5px;line-height:1.7}.chips{position:relative;display:flex;flex-wrap:wrap;gap:8px}.chip{padding:8px 15px;border-radius:999px;font-size:12px;font-weight:700;color:var(--primary);border:1px solid #cfe1ff;background:var(--primary-light);transition:transform .15s ease}.chip:hover{transform:translateY(-2px)}.login-panel{display:grid;place-items:center;padding:40px 28px;background:radial-gradient(600px 500px at 80% 15%,rgba(59,130,246,.06),transparent 65%),#f7f9fd;border-left:1px solid var(--border)}.login-card{width:min(410px,100%);padding:36px 34px;border-radius:22px;border:1px solid var(--border);background:#fff;box-shadow:var(--shadow-lg);animation:popIn .5s ease}.login-card:before{content:"";display:block;height:4px;width:54px;border-radius:999px;background:var(--brand-grad);margin-bottom:20px}.login-card h2{font-size:25px;font-weight:800;margin-bottom:4px}.login-card p.sub{color:var(--text-dim);font-size:12.5px;margin:0 0 22px}.login-card__brand{display:none}@media(max-width:900px){.login-screen{grid-template-columns:1fr}.login-hero{display:none}}.shell{display:grid;grid-template-columns:264px minmax(0,1fr);min-height:100vh}.side{padding:18px 14px;background:linear-gradient(180deg,#fff,#f8fbff);border-right:1px solid var(--border);display:flex;flex-direction:column;gap:3px;position:sticky;top:0;height:100vh;overflow-y:auto;z-index:60;transition:transform .25s ease}.side__brand{display:flex;align-items:center;justify-content:center;margin-bottom:16px;padding:6px 4px 18px;border-bottom:1px solid var(--border)}.side__logo{height:62px;width:auto;max-width:226px;object-fit:contain;display:block}.nav-group{font-size:10px;text-transform:uppercase;letter-spacing:1.6px;color:var(--text-faint);font-weight:800;margin:15px 12px 7px}.nav-item{position:relative;display:flex;align-items:center;gap:12px;padding:11px 14px;border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--text-dim);font-family:var(--font-body);font-size:13.5px;font-weight:600;cursor:pointer;text-align:left;width:100%;transition:all .16s ease;overflow:hidden}.nav-item .ico{width:20px;display:grid;place-items:center;transition:transform .16s ease}.nav-item:hover{background:var(--bg-sidebar-soft);color:var(--text);transform:translate(2px)}.nav-item:hover .ico{transform:scale(1.12)}.nav-item.is-active{background:var(--brand-grad);color:#fff;box-shadow:0 8px 20px -10px var(--brand-glow)}.nav-item.is-active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:60%;border-radius:0 4px 4px 0;background:var(--accent)}.side__foot{margin-top:auto;padding-top:12px;display:flex;flex-direction:column;gap:8px}.side__rate{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:10px 12px;border-radius:12px;background:var(--primary-light);border:1px solid #cfe1ff;font-size:11px;font-weight:700;color:var(--primary)}.side__rate b{font-size:13px;color:var(--primary-dark);font-family:var(--font-display)}.main{min-width:0;background:transparent}.topbar2{display:flex;align-items:center;gap:14px;padding:14px 28px;background:#ffffffd9;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);position:sticky;top:0;z-index:50;flex-wrap:wrap}.topbar2:after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:linear-gradient(90deg,var(--primary),var(--accent),transparent);opacity:.65}.topbar2 .crumb{font-size:10.5px;text-transform:uppercase;letter-spacing:1.6px;font-weight:800;color:var(--text-faint)}.topbar2 h1{font-size:20px;font-weight:800;letter-spacing:-.02em;color:var(--text)}.topbar2 .sub{color:var(--text-faint);font-size:12.5px;margin-top:1px}.topbar2 .right{margin-left:auto;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.topbar__burger{display:none;width:40px;height:40px;border-radius:11px;border:1px solid var(--border);background:#fff;cursor:pointer;color:var(--text-dim)}.page-body{padding:24px 28px 64px;animation:fadeUp .35s ease}.hero{position:relative;overflow:hidden;border-radius:22px;padding:22px 26px;margin-bottom:20px;color:#fff;background:radial-gradient(120% 150% at 100% 0%,rgba(34,211,238,.28),transparent 46%),radial-gradient(90% 130% at 0% 120%,rgba(29,78,216,.5),transparent 55%),linear-gradient(135deg,#2563eb,#1d4ed8 60%,#1e3a8a);box-shadow:0 26px 54px -30px #1d4ed8e6}.hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;background:linear-gradient(90deg,#3b82f6,#22d3ee 55%,#f2df35)}.hero__row{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap}.hero__lead{display:flex;align-items:center;gap:15px}.hero__ico{width:52px;height:52px;border-radius:15px;display:grid;place-items:center;flex-shrink:0;background:#ffffff29;border:1px solid rgba(255,255,255,.28);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.hero h1{font-size:24px;font-weight:800;color:#fff;letter-spacing:-.02em}.hero p{margin:3px 0 0;font-size:12.8px;color:#ffffffd1;max-width:640px}.hero__actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.hero .btn{background:#ffffff29;border-color:#ffffff47;color:#fff}.hero .btn:hover{background:#ffffff42}.hero .btn--primary{background:#fff;color:var(--primary-dark);border-color:transparent;box-shadow:0 10px 24px -12px #00000080}.hero .btn--primary:hover{background:#f0f6ff}.hero__stats{display:flex;gap:22px;margin-top:18px;flex-wrap:wrap}.hero__stat span{display:block;font-size:10.5px;text-transform:uppercase;letter-spacing:.8px;color:#ffffffb8;font-weight:700}.hero__stat b{font-family:var(--font-display);font-size:22px;font-weight:800;color:#fff}.win{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);overflow:hidden;margin-bottom:18px;transition:box-shadow .2s ease,border-color .2s ease}.win--visible{overflow:visible}.win:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong)}.win__bar{display:flex;align-items:center;gap:10px;padding:14px 18px;border-bottom:1px solid var(--border);color:var(--text);font-weight:800;font-size:13.5px;letter-spacing:.1px;background:linear-gradient(180deg,#fbfdff,#fff)}.win__bar:before{content:"";width:4px;height:16px;border-radius:4px;background:var(--brand-grad);margin-right:2px}.win__bar .spacer{flex:1}.win__body{padding:20px}.stack{display:flex;flex-direction:column;gap:18px}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(360px,1fr));gap:18px}.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:8px;height:40px;padding:0 17px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:#fff;color:var(--text);font-family:var(--font-body);font-size:13.5px;font-weight:700;cursor:pointer;white-space:nowrap;overflow:hidden;transition:transform .14s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease}.btn:hover{background:#f5f7fb;border-color:#c2cdda;transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn:active{transform:translateY(0) scale(.985)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none;box-shadow:none}.btn--primary{background:var(--brand-grad);border-color:transparent;color:#fff;box-shadow:0 10px 22px -12px var(--brand-glow)}.btn--primary:hover{background:var(--brand-grad-2);filter:brightness(1.03)}.btn--success{background:linear-gradient(135deg,#16a34a,#22c55e);border-color:transparent;color:#fff}.btn--danger{background:linear-gradient(135deg,#dc2626,#ef4444);border-color:transparent;color:#fff}.btn--ghost{background:transparent;border-color:transparent;color:var(--text-dim);box-shadow:none}.btn--ghost:hover{background:#eef2f8;color:var(--text);box-shadow:none}.btn--sm{height:32px;padding:0 12px;font-size:12px;border-radius:var(--radius-sm);gap:6px}.btn--icon{width:40px;padding:0}.btn--icon.btn--sm{width:32px}.badge{display:inline-flex;align-items:center;gap:6px;padding:4px 11px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.3px;text-transform:uppercase;border:1px solid var(--border);background:#f1f5f9;color:var(--text-dim)}.badge--on{border-color:#b7e4c7;background:var(--success-light);color:var(--success)}.badge--off{background:#f1f5f9;color:var(--text-faint)}.badge--amber{border-color:#f6d99a;background:var(--warning-light);color:var(--warning)}.badge--red{border-color:#f3c1c1;background:var(--danger-light);color:var(--danger)}.badge--blue{border-color:#cfe1ff;background:var(--primary-light);color:var(--primary)}.badge--violet{border-color:#ddd6fe;background:var(--violet-light);color:var(--violet)}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px;margin-bottom:18px}.kpi{position:relative;padding:18px 18px 17px;border-radius:var(--radius);border:1px solid var(--border);background:#fff;box-shadow:var(--shadow);overflow:hidden;border-top:3px solid var(--primary);transition:transform .16s ease,box-shadow .16s ease}.kpi:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}.kpi:after{content:"";position:absolute;top:-46px;right:-34px;width:128px;height:128px;border-radius:50%;background:var(--primary-light);opacity:.75}.kpi--blue{border-top-color:#2563eb}.kpi--blue:after{background:#dbeafe}.kpi--green,.kpi--violet{border-top-color:#7c3aed}.kpi--violet:after{background:var(--violet-light)}.kpi--amber{border-top-color:#d97706}.kpi--amber:after{background:var(--warning-light)}.kpi--teal{border-top-color:#0d9488}.kpi--teal:after{background:#ccfbf1}.kpi__label{position:relative;z-index:1;font-size:11px;text-transform:uppercase;letter-spacing:.8px;color:var(--text-dim);margin-bottom:10px;font-weight:800;display:flex;align-items:center;gap:7px}.kpi__value{position:relative;z-index:1;font-family:var(--font-display);font-size:28px;font-weight:800;line-height:1.05;color:var(--text);letter-spacing:-.02em}.kpi__sub{position:relative;z-index:1;margin-top:7px;font-size:11.5px;color:var(--text-dim)}.kpi__ico{position:relative;z-index:1;width:34px;height:34px;border-radius:11px;display:grid;place-items:center;margin-bottom:12px;background:var(--primary-light);color:var(--primary)}.kpi--green .kpi__ico{background:var(--success-light);color:var(--success)}.kpi--amber .kpi__ico{background:var(--warning-light);color:var(--warning)}.kpi--violet .kpi__ico{background:var(--violet-light);color:var(--violet)}.kpi--teal .kpi__ico{background:#ccfbf1;color:#0d9488}.table-wrap{overflow-x:auto;border-radius:var(--radius-md);border:1px solid var(--border);background:#fff;box-shadow:var(--shadow)}table.data{width:100%;border-collapse:collapse;font-size:12.5px}table.data th{text-align:left;padding:12px 14px;color:#fff;font-weight:800;text-transform:uppercase;font-size:10px;letter-spacing:.7px;background:linear-gradient(135deg,#2563eb,#1d4ed8 60%,#1e40af);border-bottom:2px solid var(--accent);white-space:nowrap}table.data td{padding:11px 14px;border-bottom:1px solid #eef2f7;white-space:nowrap;color:var(--text)}table.data tbody tr{transition:background .14s ease}table.data tbody tr:hover{background:#f0f7ff}table.data tbody tr:last-child td{border-bottom:0}.num{text-align:right;font-variant-numeric:tabular-nums}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:15px}.form-row{display:flex;flex-direction:column;gap:6px}.form-row--full{grid-column:1 / -1}.form-row label{font-size:11px;text-transform:uppercase;letter-spacing:.6px;color:var(--text-dim);font-weight:800}.field{height:42px;padding:0 13px;border-radius:var(--radius-md);border:1px solid var(--border-strong);background:#fff;color:var(--text);font-family:var(--font-body);font-size:13.5px;outline:none;transition:border-color .15s ease,box-shadow .15s ease}textarea.field{height:auto;padding:11px 13px;min-height:70px;resize:vertical}.field::placeholder{color:var(--text-faint)}.field:focus{border-color:var(--primary);box-shadow:0 0 0 4px #2563eb1f}.field:disabled{background:#f1f5f9;color:var(--text-dim)}select.field{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--text-dim) 50%),linear-gradient(135deg,var(--text-dim) 50%,transparent 50%);background-position:calc(100% - 19px) 50%,calc(100% - 14px) 50%;background-size:5px 5px,5px 5px;background-repeat:no-repeat;padding-right:38px}.switch{display:inline-flex;align-items:center;gap:10px;cursor:pointer;-webkit-user-select:none;user-select:none;font-size:13px;color:var(--text)}.switch input{display:none}.switch__track{width:44px;height:26px;border-radius:999px;background:#cbd5e1;position:relative;transition:background .2s;flex-shrink:0}.switch__track:after{content:"";position:absolute;top:3px;left:3px;width:20px;height:20px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000040;transition:transform .2s}.switch input:checked+.switch__track{background:var(--brand-grad)}.switch input:checked+.switch__track:after{transform:translate(18px)}.tabs{display:inline-flex;gap:4px;padding:4px;border-radius:13px;background:#eef2f8;border:1px solid var(--border);width:fit-content;flex-wrap:wrap;margin-bottom:16px}.tab{height:36px;padding:0 16px;border-radius:9px;border:none;background:transparent;color:var(--text-dim);font-family:var(--font-body);font-weight:700;font-size:13px;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:all .15s ease}.tab:hover{color:var(--text)}.tab.is-active{background:var(--brand-grad);color:#fff;box-shadow:0 8px 18px -10px var(--brand-glow)}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#0f172a80;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:grid;place-items:center;padding:20px;animation:fadeIn .18s ease}.modal{width:min(920px,100%);max-height:92vh;overflow-y:auto;border-radius:20px;border:1px solid var(--border);background:#fff;box-shadow:var(--shadow-lg);animation:popIn .22s cubic-bezier(.2,.8,.2,1)}.modal__head{display:flex;align-items:center;gap:12px;padding:18px 22px;border-bottom:1px solid var(--border);position:sticky;top:0;background:#fff;z-index:2}.modal__head h3{font-size:17px;font-weight:800}.modal__head .right{margin-left:auto;display:flex;gap:8px}.modal__body{padding:22px}.modal__foot{padding:16px 22px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:10px;position:sticky;bottom:0;background:#fff}.toaster{position:fixed;right:20px;bottom:20px;z-index:200;display:flex;flex-direction:column;gap:10px}.toast{display:flex;align-items:flex-start;gap:11px;min-width:280px;max-width:380px;padding:13px 15px;border-radius:14px;background:#fff;border:1px solid var(--border);box-shadow:var(--shadow-lg);animation:popIn .24s cubic-bezier(.2,.8,.2,1);border-left:4px solid var(--primary)}.toast--ok{border-left-color:var(--success)}.toast--error{border-left-color:var(--danger)}.toast__ico{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;flex-shrink:0;background:var(--primary-light);color:var(--primary)}.toast--ok .toast__ico{background:var(--success-light);color:var(--success)}.toast--error .toast__ico{background:var(--danger-light);color:var(--danger)}.toast__body b{display:block;font-size:13px}.toast__body span{font-size:12px;color:var(--text-dim)}.skeleton{position:relative;overflow:hidden;background:#eef2f7;border-radius:10px}.skeleton:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;transform:translate(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.7),transparent);animation:shimmer 1.3s infinite}.row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.row--between{justify-content:space-between}.muted{color:var(--text-dim)}.faint{color:var(--text-faint)}.small{font-size:11.5px}.right{text-align:right}.center{text-align:center}.mt{margin-top:14px}.empty{padding:40px 20px;text-align:center;color:var(--text-faint);font-size:13px}.empty:before{content:"";display:block;width:46px;height:46px;margin:0 auto 12px;border-radius:14px;background:var(--primary-light)}.alert{padding:12px 15px;border-radius:var(--radius-md);font-size:12.5px;border:1px solid;margin-bottom:14px}.alert--error{background:var(--danger-light);border-color:#f3c1c1;color:var(--danger)}.alert--ok{background:var(--success-light);border-color:#b7e4c7;color:var(--success)}.alert--warn{background:#fef3c7;border-color:#fde68a;color:#92400e}.alert--info{background:#e0f2fe;border-color:#bae6fd;color:#075985}.login-terms{margin:16px 0 0;text-align:center;font-size:12.5px;line-height:1.5;color:#64748b}.login-terms a{color:#2563eb;font-weight:800;text-decoration:underline;text-underline-offset:2px}.login-terms a:hover{color:#1d4ed8}.alert-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;margin-left:6px;border-radius:999px;background:#ef4444;color:#fff;font-size:10.5px;font-weight:800}.alerts-panel{position:fixed;top:74px;right:18px;width:420px;max-width:calc(100vw - 36px);max-height:calc(100vh - 100px);overflow:auto;z-index:60;background:#fff;border:1px solid #e2e8f0;border-radius:14px;box-shadow:0 18px 45px #0f172a2e}.alerts-panel__head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;border-bottom:1px solid #eef2f7;position:sticky;top:0;background:#fff;z-index:1}.alerts-panel__body{padding:10px 12px 14px;display:grid;gap:8px}.alerts-panel__item{border:1px solid #e2e8f0;border-radius:10px;padding:10px 12px}.alerts-panel__item--alto{background:#fef2f2;border-color:#fecaca}.alerts-panel__item--medio{background:#fffbeb;border-color:#fde68a}.alerts-panel__item--info{background:#eff6ff;border-color:#bfdbfe}.alerts-panel__title{font-weight:800;font-size:12.5px;color:#0f172a}.spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite;margin:44px auto}.recibo{background:#fff;color:#111;padding:26px;border-radius:12px;font-size:12.5px;border:1px solid var(--border)}.recibo h2{color:#111;font-size:18px}.recibo table{width:100%;border-collapse:collapse}.recibo th,.recibo td{padding:5px 8px;border-bottom:1px solid #ddd;text-align:left}.recibo th{background:#f1f5f9}.recibo .tot{font-weight:800}.dos-col{display:grid;grid-template-columns:1fr 1fr;gap:18px}@media(max-width:760px){.dos-col{grid-template-columns:1fr}}.side-overlay{display:none}.pick{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.pick__head{display:flex;align-items:center;gap:10px;padding:10px 13px;background:#f7f9fc;border-bottom:1px solid var(--border);flex-wrap:wrap}.pick__head .field{height:36px;flex:1;min-width:160px}.pick__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(232px,1fr));gap:8px;padding:12px;max-height:300px;overflow-y:auto}.pick__item{display:flex;align-items:center;gap:10px;padding:9px 11px;border:1px solid var(--border);border-radius:11px;cursor:pointer;transition:all .14s ease;background:#fff}.pick__item:hover{border-color:var(--border-strong);background:#f8fbff}.pick__item.on{border-color:var(--primary);background:var(--primary-light)}.pick__item .tick{width:20px;height:20px;border-radius:6px;border:1.5px solid var(--border-strong);display:grid;place-items:center;flex-shrink:0;color:transparent}.pick__item.on .tick{background:var(--primary);border-color:var(--primary);color:#fff}.pick__item b{font-size:12.5px;display:block}.pick__item span{font-size:10.5px;color:var(--text-faint)}.pick__code{font-family:ui-monospace,Menlo,Consolas,monospace;font-weight:800;font-size:10.5px;color:var(--primary);background:var(--primary-light);border-radius:6px;padding:2px 6px}.pick__empty{padding:24px;text-align:center;color:var(--text-faint);font-size:12.5px}.time-wrap{overflow:auto;max-height:62vh;border:1px solid var(--border);border-radius:var(--radius-md)}table.time{border-collapse:separate;border-spacing:0;width:100%;font-size:12.5px}table.time th,table.time td{padding:8px 10px;border-bottom:1px solid #eef2f7;white-space:nowrap}table.time thead th{position:sticky;top:0;z-index:3;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-size:10px;text-transform:uppercase;letter-spacing:.4px;font-weight:800;text-align:center;border-bottom:2px solid var(--accent)}table.time thead th .u{display:block;font-size:9px;font-weight:600;color:#ffffffb8;text-transform:none;letter-spacing:0}table.time .worker{position:sticky;left:0;z-index:2;background:#fff;text-align:left;min-width:210px}table.time thead th.worker{z-index:4;background:linear-gradient(135deg,#1d4ed8,#1e40af);text-align:left}table.time tbody tr:hover td{background:#f8fbff}table.time tbody tr:hover .worker{background:#f0f7ff}table.time .worker b{display:block}table.time .worker span{font-size:10.5px;color:var(--text-faint)}table.time td.cell{text-align:center}.cell-input{width:76px;height:32px;text-align:right;padding:0 8px;border:1px solid var(--border-strong);border-radius:8px;font:600 12.5px var(--font-body);color:var(--text);background:#fff;outline:none;transition:all .14s ease}.cell-input:focus{border-color:var(--primary);box-shadow:0 0 0 3px #2563eb24}.cell-input.has{border-color:var(--primary);background:var(--primary-light);font-weight:800;color:var(--primary-dark)}.time-legend{display:flex;gap:16px;flex-wrap:wrap;margin:12px 0 0;font-size:11.5px;color:var(--text-dim)}.time-legend b{color:var(--text)}.doc-sheet{position:relative;background:#fff;border:1px solid var(--border);border-radius:14px;padding:26px 28px;box-shadow:var(--shadow);overflow:hidden}.doc-sheet:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:var(--brand-grad)}.doc-sheet__head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:14px;border-bottom:1px solid var(--border);margin-bottom:16px}.doc-sheet__brand b{display:block;font-size:14px;font-family:var(--font-display);color:var(--text)}.doc-sheet__brand span{font-size:10.5px;color:var(--text-faint)}.doc-sheet__date{font-size:11px;color:var(--text-dim);text-align:right;white-space:nowrap}.doc-sheet__title{text-align:center;font-family:var(--font-display);font-weight:800;font-size:16px;color:var(--primary);letter-spacing:.4px;margin:4px 0 18px}.doc-sheet__body{font-size:12.8px;color:#334155;line-height:1.8}.doc-sheet__body p{margin:0 0 10px;text-align:justify}.doc-sheet__body b{color:var(--text)}.doc-sheet__empty{padding:40px 0;text-align:center;color:var(--text-faint);font-size:12.5px}.doc-sheet__sign{margin-top:40px}.doc-sheet__sign i{display:block;width:220px;height:1px;background:#cbd5e1;margin-bottom:6px}.doc-sheet__sign span{font-size:10.5px;color:var(--text-faint)}.combo{position:relative;width:100%}.combo__ico{position:absolute;left:13px;top:50%;transform:translateY(-50%);color:var(--text-faint);pointer-events:none}.combo__field{padding-left:40px;padding-right:38px;width:100%}.combo__clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);width:26px;height:26px;border:none;border-radius:8px;background:#eef2f8;color:var(--text-dim);cursor:pointer;display:grid;place-items:center}.combo__clear:hover{background:#e2e8f0;color:var(--text)}.combo__list{position:absolute;z-index:40;top:calc(100% + 4px);left:0;right:0;background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow-lg);max-height:340px;overflow-y:auto;padding:5px}.combo__item{display:flex;align-items:center;gap:11px;width:100%;text-align:left;border:none;background:transparent;padding:9px 10px;border-radius:9px;cursor:pointer;transition:background .13s ease}.combo__item:hover{background:var(--primary-light)}.combo__av{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;flex-shrink:0;font-weight:800;font-size:12px;color:#fff;background:var(--brand-grad)}.combo__txt{display:flex;flex-direction:column;min-width:0;flex:1}.combo__txt b{font-size:13px;color:var(--text)}.combo__txt em{font-style:normal;font-size:11px;color:var(--text-faint)}.combo__badge{font-size:11.5px;font-weight:700;color:var(--primary);white-space:nowrap}.combo__empty{padding:18px;text-align:center;color:var(--text-faint);font-size:12.5px}.worker-card{display:flex;align-items:center;gap:18px;padding:20px 22px;border-radius:var(--radius);border:1px solid var(--border);background:radial-gradient(400px 200px at 100% 0%,rgba(34,211,238,.1),transparent 60%),linear-gradient(135deg,#fff,#f6faff);box-shadow:var(--shadow)}.worker-card__av{width:66px;height:66px;border-radius:18px;display:grid;place-items:center;font-family:var(--font-display);font-weight:800;font-size:22px;color:#fff;background:var(--brand-grad);box-shadow:0 14px 30px -14px var(--brand-glow);flex-shrink:0}.worker-card__info{min-width:0;flex:1}.worker-card__info h2{font-size:20px;font-weight:800}.worker-card__info p{margin:2px 0 0;font-size:12.5px;color:var(--text-dim)}.worker-card__stats{display:flex;gap:22px;flex-wrap:wrap}.worker-card__stat{text-align:right}.worker-card__stat span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.7px;color:var(--text-faint);font-weight:800}.worker-card__stat b{font-family:var(--font-display);font-size:18px;color:var(--text)}.recibo-sheet{background:#fff;color:#1e293b;border-radius:14px;border:1px solid #e5eaf1;padding:26px 28px;max-width:820px;margin:0 auto;box-shadow:var(--shadow);font-size:12.5px}.recibo-sheet__head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;padding-bottom:14px;border-bottom:2px solid #1d4ed8;margin-bottom:14px}.recibo-sheet__emp{font-family:var(--font-display);font-weight:800;font-size:16px;color:#0f172a}.recibo-sheet__emp-sub{font-size:10.5px;color:#64748b;margin-top:3px}.recibo-sheet__title{text-align:right;font-family:var(--font-display);font-weight:800;font-size:14px;color:#1d4ed8;white-space:nowrap}.recibo-sheet__title span{display:block;font-size:10.5px;font-weight:700;color:#64748b;margin-top:3px}.recibo-sheet__data{width:100%;border-collapse:collapse;margin-bottom:16px}.recibo-sheet__data th,.recibo-sheet__data td{border:1px solid #e5eaf1;padding:6px 9px;text-align:left;vertical-align:top}.recibo-sheet__data th{width:16%;background:#f7f9fc;color:#64748b;font-size:10px;text-transform:uppercase;letter-spacing:.4px;font-weight:800}.recibo-sheet__data td{color:#1e293b}.recibo-sheet__cols{display:grid;grid-template-columns:1fr 1fr;gap:14px}.recibo-sheet__cols table{width:100%;border-collapse:collapse}.recibo-sheet__cols th{background:#1d4ed8;color:#fff;text-align:left;padding:6px 9px;font-size:10px;text-transform:uppercase;letter-spacing:.4px;font-weight:800}.recibo-sheet__cols td{border-bottom:1px solid #eef2f7;padding:5px 9px}.recibo-sheet__cols tr.tot td{background:#eef4ff;color:#1d4ed8;font-weight:800}.recibo-sheet__neto{display:flex;align-items:center;gap:14px;margin-top:16px;background:#0f172a;color:#fff;border-radius:10px;padding:12px 16px}.recibo-sheet__neto span{font-size:10.5px;text-transform:uppercase;letter-spacing:1px;color:#93c5fd;font-weight:800}.recibo-sheet__neto b{font-family:var(--font-display);font-size:18px;margin-left:auto}.recibo-sheet__neto em{font-style:normal;color:#cbd5e1;font-weight:700}.recibo-sheet__firmas{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:44px}.recibo-sheet__firmas i{display:block;height:1px;background:#94a3b8;margin-bottom:6px}.recibo-sheet__firmas span{font-size:10.5px;color:#94a3b8}@media(max-width:700px){.recibo-sheet__cols{grid-template-columns:1fr}}@media(max-width:900px){.shell{grid-template-columns:1fr}.side{position:fixed;top:0;left:0;bottom:0;width:270px;transform:translate(-100%);box-shadow:var(--shadow-lg)}.side.open{transform:translate(0)}.topbar__burger{display:grid;place-items:center}.page-body{padding:18px 14px 60px}.topbar2{padding:12px 14px}.side-overlay.open{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a73;z-index:55}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}html{scroll-behavior:smooth}.win{border-radius:20px}.win:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn{border-radius:12px}.btn:focus-visible,.field:focus-visible,.nav-item:focus-visible,.tab:focus-visible{outline:2px solid rgba(37,99,235,.55);outline-offset:2px}.field{border-radius:12px}table.data{font-size:12.8px}table.data thead th{position:sticky;top:0;z-index:2}table.data tbody tr:nth-child(2n) td{background:#fbfcfe}table.data tbody tr:hover td{background:#f0f7ff}.table-wrap{border-radius:14px}.kpi{border-radius:20px}.kpi__ico{transition:transform .18s ease}.kpi:hover .kpi__ico{transform:scale(1.08) rotate(-3deg)}.badge{letter-spacing:.4px}.win__bar{font-size:14px;letter-spacing:.1px}.tabs{border-radius:14px}.tab{border-radius:10px}.modal{border-radius:22px}.modal__head{border-radius:22px 22px 0 0}.side__logo{filter:drop-shadow(0 6px 14px rgba(37,99,235,.12))}*::-webkit-scrollbar{width:8px;height:8px}.ficha-title{grid-column:1 / -1;margin-top:14px;padding-bottom:6px;border-bottom:1px solid var(--border);font-size:11px;font-weight:800;letter-spacing:.6px;text-transform:uppercase;color:var(--brand, #2563eb)}.ficha-title:first-child{margin-top:0}
