:root{--bg-page:#f6f7f9;--bg-card:#ffffff;--bg-input:#f6f7f9;--bg-tertiary:#eef1f5;--text-primary:#1b2330;--text-secondary:#667085;--text-tertiary:#98a2b3;--text-on-brand:#ffffff;--border:#e4e7ec;--brand-blue:#0d2c68;--brand-blue-tint:#eaf1fb;--success:#15803d;--success-bg:#ecfdf3;--danger:#b42318;--danger-bg:#fef3f2;--warning:#b54708;--warning-bg:#fffaeb;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--navy:var(--brand-blue);--navy2:var(--bg-card);--navy3:var(--border);--gold:var(--brand-blue);--gold2:var(--brand-blue);--white:var(--text-primary);--gray:var(--text-secondary);--light:var(--bg-tertiary)}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%}body{font-family:Poppins,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg-page);color:var(--text-primary);min-height:100vh}.material-symbols-rounded{font-family:Material Symbols Rounded;font-weight:400;font-style:normal;font-size:24px;display:inline-block;line-height:1;text-transform:none;letter-spacing:normal;word-wrap:normal;white-space:nowrap;direction:ltr;-webkit-font-smoothing:antialiased}.top-banner{background:var(--brand-blue);height:80px;display:flex;align-items:center;justify-content:center;padding:0 24px;flex-shrink:0}.top-banner img{height:64px;width:64px;object-fit:contain;border-radius:8px}#login-screen{display:flex;flex-direction:column;min-height:100vh;background:linear-gradient(180deg,var(--brand-blue) 0,#3d5690 28%,#aebde3 68%,var(--bg-page) 100%)}#login-screen .top-banner{background:transparent;height:auto;padding:40px 24px 12px}#login-screen .top-banner img{height:96px;width:96px;object-fit:contain;border-radius:0;background:transparent;padding:0;box-shadow:none}.welcome-wrap{flex:1;display:flex;align-items:center;justify-content:center;padding:24px 24px 40px}.welcome-card{background:var(--bg-card);border-radius:var(--radius-lg);padding:32px 36px;max-width:400px;width:100%;box-shadow:0 8px 30px rgba(0,0,0,.18)}.welcome-icon{width:56px;height:56px;background:var(--brand-blue-tint);border-radius:50%;display:flex;align-items:center;justify-content:center;margin-bottom:20px}.welcome-icon .material-symbols-rounded{font-size:28px;color:var(--brand-blue)}.welcome-title{font-size:24px;font-weight:600;color:var(--text-primary);margin-bottom:6px}.welcome-season{font-size:14px;color:var(--brand-blue);font-weight:500;margin-bottom:12px}.welcome-desc{font-size:14px;color:var(--text-secondary);line-height:1.6;margin-bottom:28px}.welcome-footer{font-size:11px;color:var(--text-tertiary);margin-top:12px;line-height:1.5}.admin-panel-box{display:none;margin-top:20px}.admin-panel-box.open{display:block}.admin-access-link{text-align:center;margin-top:14px}.admin-access-link a{color:var(--text-tertiary);font-size:11px;text-decoration:underline;cursor:pointer}.admin-access-link a:hover{color:var(--text-secondary)}.form-group{margin-bottom:16px}.form-group label{display:block;font-size:12px;color:var(--text-secondary);margin-bottom:6px;font-weight:400}.req-star{color:var(--danger)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 14px;background:var(--bg-input);border:1.5px solid transparent;border-radius:var(--radius-sm);color:var(--text-primary);font-size:14px;font-family:inherit;transition:border .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--brand-blue);box-shadow:0 0 0 3px rgba(13,44,104,.1)}.form-group input::placeholder,.form-group textarea::placeholder{color:var(--text-tertiary)}.form-group select{appearance:auto}.password-field-wrap{position:relative}.password-field-wrap input{padding-right:42px!important}.password-toggle-btn{position:absolute;top:50%;right:6px;transform:translateY(-50%);background:none;border:none;padding:6px;cursor:pointer;font-size:17px;line-height:1;color:var(--text-secondary)}.password-toggle-btn:hover{color:var(--text-primary)}.btn-primary{width:100%;padding:12px 20px;background:var(--brand-blue);color:var(--text-on-brand);border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;font-family:inherit}.btn-primary:hover{opacity:.9}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.error-msg{color:var(--danger);font-size:.85rem;margin-top:10px;text-align:center}.field-error-msg{color:var(--danger);font-size:12px;margin-top:4px;display:flex;align-items:center;gap:4px}#public-app{min-height:100vh;background:var(--bg-page);display:flex;flex-direction:column}.pub-header{display:none}.wizard-container{max-width:680px;margin:0 auto;padding:32px 24px 60px}.wizard-steps{display:flex;margin-bottom:24px;gap:4px;height:4px}.w-step{flex:1;height:4px;background:var(--bg-tertiary);border-radius:2px;transition:background .3s}.w-step.active,.w-step.done{background:var(--brand-blue)}.w-step.active{opacity:.6}.step-title{font-size:11px;color:var(--text-secondary);margin-bottom:0;font-weight:400;letter-spacing:0;text-transform:none}.step-heading{font-size:18px;font-weight:500;color:var(--text-primary);margin-bottom:4px}.step-desc{font-size:12px;color:var(--text-secondary);margin-bottom:24px;line-height:1.5}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:24px;box-shadow:0 1px 2px rgba(16,24,40,.04),0 1px 3px rgba(16,24,40,.06)}.card,.card h3{margin-bottom:16px}.card h3{font-size:13px;color:var(--text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.3px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media(max-width:520px){.grid2{grid-template-columns:1fr}}.player-block{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:20px;margin-bottom:12px;box-shadow:0 1px 2px rgba(16,24,40,.04),0 1px 3px rgba(16,24,40,.06)}.player-block h4{font-size:14px;color:var(--brand-blue);margin-bottom:12px;font-weight:600}.btn-add{display:flex;align-items:center;gap:8px;background:transparent;border:1.5px dashed var(--border);color:var(--text-secondary);padding:12px 16px;border-radius:var(--radius-sm);cursor:pointer;font-size:13px;width:100%;justify-content:center;transition:all .2s;font-family:inherit}.btn-add:hover{border-color:var(--brand-blue);color:var(--brand-blue)}.checkbox-group{display:flex;flex-direction:column;gap:10px}.checkbox-item{display:flex;align-items:center;gap:10px;cursor:pointer}.checkbox-item input[type=checkbox]{width:18px;height:18px;accent-color:var(--brand-blue);cursor:pointer}.checkbox-item span{font-size:14px;color:var(--text-primary)}.check-error-msg{display:none;background:var(--danger-bg);border:1px solid rgba(180,35,24,.2);border-radius:var(--radius-sm);padding:10px 14px;margin-top:12px;font-size:13px;color:var(--danger);align-items:center;gap:8px}.check-error-msg.show{display:flex}.radio-group{display:flex;gap:16px;flex-wrap:wrap}.radio-item{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:14px}.radio-item input{accent-color:var(--brand-blue);width:16px;height:16px}.pill-group{display:flex;gap:8px;flex-wrap:wrap}.pill-btn{padding:8px 14px;font-size:12.5px;border:1.5px solid var(--border);border-radius:100px;color:var(--text-primary);background:var(--bg-input);cursor:pointer;font-family:inherit;transition:all .15s}.pill-btn.active,.pill-btn:hover{border-color:var(--brand-blue)}.pill-btn.active{background:var(--brand-blue);color:var(--text-on-brand);font-weight:600}.upload-area{border:2px dashed var(--border);border-radius:var(--radius-md);padding:32px;text-align:center;cursor:pointer;transition:all .2s}.upload-area.drag,.upload-area:hover{border-color:var(--brand-blue);background:rgba(13,44,104,.03)}.upload-area .icon{font-size:2rem;margin-bottom:8px}.upload-area p{color:var(--text-secondary);font-size:13px}.upload-area strong{color:var(--brand-blue)}.file-list{margin-top:12px;display:flex;flex-direction:column;gap:8px}.file-item{background:var(--bg-page);border:1px solid var(--border);border-radius:var(--radius-sm);padding:10px 14px;display:flex;align-items:center;justify-content:space-between;font-size:13px}.file-item span{color:var(--text-tertiary);font-size:11px}.info-box{background:var(--brand-blue-tint);border:1px solid rgba(13,44,104,.15);border-radius:var(--radius-sm);padding:14px 16px;font-size:13px;color:var(--brand-blue);line-height:1.5}.nav-btns{display:flex;gap:12px;margin-top:24px}.btn-back{padding:12px 20px;background:var(--bg-card);border:1px solid var(--brand-blue);color:var(--brand-blue);border-radius:var(--radius-sm);cursor:pointer;font-size:13px;font-weight:500;transition:all .2s;font-family:inherit}.btn-back:hover{background:var(--brand-blue-tint)}.btn-next{padding:12px 20px;background:var(--brand-blue);color:var(--text-on-brand);border:none;border-radius:var(--radius-sm);font-weight:500;cursor:pointer;font-size:13px;transition:all .2s;margin-left:auto;font-family:inherit}.btn-next:hover{opacity:.9}.btn-next:disabled{opacity:.6;cursor:not-allowed}.detail-item{background:var(--bg-page);border-radius:var(--radius-sm);padding:10px 14px}.detail-item .key{font-size:11px;color:var(--text-secondary);margin-bottom:3px;text-transform:uppercase;letter-spacing:.3px}.detail-item .val{font-size:14px;color:var(--text-primary)}.success-screen{text-align:center;padding:60px 20px}.success-icon-wrap{width:64px;height:64px;background:var(--success-bg);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.success-screen h2{font-size:24px;font-weight:600;color:var(--text-primary);margin-bottom:8px}.success-ref{font-size:14px;color:var(--brand-blue);font-weight:500;margin-bottom:12px}.success-screen p{color:var(--text-secondary);line-height:1.6;max-width:440px;margin:0 auto;font-size:14px}.admin-layout{display:flex;height:100vh}.sidebar{width:230px;background:var(--brand-blue);border-right:1px solid var(--brand-blue);padding:24px 0;display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto}.sidebar-logo{padding:0 20px 24px;border-bottom:1px solid rgba(255,255,255,.15);margin-bottom:16px}.sidebar-logo .shield-sm{width:40px;height:40px;border-radius:8px;overflow:hidden;display:flex;align-items:center;justify-content:center;margin-bottom:8px}.sidebar-logo .shield-sm img{width:100%;height:100%;object-fit:cover}.sidebar-logo h3{font-size:13px;color:#fff;font-weight:700}.sidebar-logo p{font-size:11px;color:rgba(255,255,255,.65)}.nav-item{display:flex;align-items:center;gap:12px;padding:10px 12px;margin:0 16px;color:rgba(255,255,255,.75);cursor:pointer;transition:all .2s;font-size:14px;border:none;background:transparent;width:calc(100% - 32px);text-align:left;border-radius:var(--radius-sm);font-family:inherit;text-decoration:none}.nav-item:hover{color:#fff;background:rgba(255,255,255,.1)}.nav-item.active{color:#fff;background:rgba(255,255,255,.14);font-weight:600}.nav-item .icon{font-size:1.1rem;width:20px}.sidebar-bottom{margin-top:auto;padding:16px 20px;border-top:1px solid rgba(255,255,255,.15)}.user-badge{gap:10px}.avatar,.user-badge{display:flex;align-items:center}.avatar{width:32px;height:32px;background:var(--brand-blue);border:2px solid #fff;box-sizing:border-box;border-radius:50%;justify-content:center;font-size:12px;font-weight:700;color:#fff}.user-badge .avatar{background:#fff;border:none;color:var(--brand-blue)}.user-badge strong{color:#fff}.user-badge p{font-size:11px;color:rgba(255,255,255,.65)}.btn-logout{margin-top:10px;width:100%;display:flex;align-items:center;justify-content:center;gap:8px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.25);border-radius:var(--radius-sm);color:#fff;font-size:13px;font-weight:600;cursor:pointer;padding:10px;font-family:inherit;transition:background .15s}.btn-logout:hover{background:rgba(255,255,255,.16)}.admin-main{flex:1;overflow-y:auto;background:var(--bg-card)}.admin-topbar{background:var(--bg-card);border-bottom:1px solid var(--border);padding:16px 28px;display:flex;align-items:center;justify-content:space-between}.admin-topbar h2{font-size:16px;font-weight:600}.badge{display:inline-block;padding:4px 10px;border-radius:100px;font-size:11px;font-weight:600}.badge-gold{background:var(--warning-bg);color:var(--warning)}.badge-green{background:var(--success-bg);color:var(--success)}.badge-red{background:var(--danger-bg);color:var(--danger)}.badge-gray{background:var(--bg-tertiary);color:var(--text-secondary)}.admin-content{padding:28px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;margin-bottom:28px}@media(max-width:900px){.stats-grid{grid-template-columns:repeat(2,1fr)}}.stat-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:20px}.stat-card .num{font-size:28px;font-weight:700;color:var(--brand-blue)}.stat-card .label{font-size:12px;color:var(--text-secondary);margin-top:4px}.filters-bar{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap;align-items:center}.filter-select{padding:8px 12px;cursor:pointer}.filter-select,.search-input{background:var(--bg-page);border:1px solid var(--border);color:var(--text-primary);border-radius:var(--radius-sm);font-size:13px;font-family:inherit}.search-input{padding:8px 14px;flex:1;min-width:180px}.search-input:focus{outline:none;border-color:var(--brand-blue)}table{width:100%;border-collapse:collapse;font-size:13px}th{background:var(--bg-page);color:var(--text-secondary);font-weight:600;padding:12px 14px;text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.5px}td,th{border-bottom:1px solid var(--border)}td{padding:13px 14px;vertical-align:middle}tr:hover td{background:rgba(13,44,104,.02)}.table-wrap{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.btn-view{padding:8px 16px;background:transparent;border:1px solid var(--border);color:var(--brand-blue);border-radius:var(--radius-sm);cursor:pointer;font-size:13px;transition:all .2s;min-height:36px;font-family:inherit;font-weight:500}.btn-view:hover{border-color:var(--brand-blue);background:var(--brand-blue-tint)}.modal-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:1000;align-items:flex-start;justify-content:center;padding:20px;overflow-y:auto}.modal,.modal-overlay.open{display:flex}.modal{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;max-width:760px;padding:26px 28px;margin:auto;box-shadow:0 20px 60px rgba(0,0,0,.15);max-height:90vh;flex-direction:column;overflow:hidden}.ficha-tab-content{flex:1 1 auto;min-height:0;overflow-y:auto;padding-right:6px;margin-right:-6px}.modal-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;flex-shrink:0}.modal-header h3{font-size:18px;color:var(--text-primary);font-weight:600}.btn-close{background:transparent;border:none;color:var(--text-tertiary);font-size:1.4rem;cursor:pointer;line-height:1}.section-label{font-size:11px;color:var(--brand-blue);text-transform:uppercase;letter-spacing:.5px;margin:18px 0 10px;font-weight:700}.ficha-chips{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px;flex-shrink:0}.ficha-chip{display:inline-flex;align-items:center;gap:5px;font-size:.74rem;font-weight:600;color:var(--text-secondary);background:var(--bg-page);border:1px solid var(--border);border-radius:999px;padding:5px 12px}.ficha-tabs{display:flex;gap:4px;border-bottom:1px solid var(--border);margin-bottom:18px;flex-shrink:0}.ficha-tab{flex:1;display:flex;gap:7px;font-family:inherit;font-size:.8rem;font-weight:600;color:var(--text-secondary);background:transparent;border:none;border-bottom:2.5px solid transparent;padding:10px 6px 12px;cursor:pointer;transition:all .15s}.ficha-tab,.ficha-tab .num{align-items:center;justify-content:center}.ficha-tab .num{width:17px;height:17px;border-radius:50%;background:var(--bg-tertiary);color:var(--text-tertiary);font-size:.68rem;display:inline-flex;font-weight:700;flex-shrink:0}.ficha-tab.active{color:var(--brand-blue);border-bottom-color:var(--brand-blue)}.ficha-tab.active .num{background:var(--brand-blue);color:#fff}.ficha-tab:hover:not(.active){color:var(--text-primary)}@media (max-width:640px){.ficha-tab{font-size:.72rem;padding:8px 2px 10px;gap:4px}}.section-banner{background:var(--brand-blue);border-radius:10px;padding:11px 15px;display:flex;align-items:center;justify-content:space-between;gap:9px;margin:0 0 14px}.section-banner .section-banner-title{display:flex;align-items:center;gap:9px;color:#fff;font-weight:500;font-size:.82rem;letter-spacing:.3px}.section-banner .section-banner-title .material-symbols-rounded{color:#fff}.section-banner .btn-view{background:rgba(255,255,255,.15);border:none;color:#fff}.section-banner .btn-view:hover{background:rgba(255,255,255,.25)}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.calc-box{background:var(--bg-card);border:1px solid var(--brand-blue);border-radius:var(--radius-md);padding:18px;margin-top:8px}.calc-box-denied{border-color:var(--danger)}.resumen-rows{display:flex;flex-direction:column;gap:8px}.resumen-row{background:var(--bg-page);border-radius:var(--radius-sm);padding:10px 14px;display:flex;justify-content:space-between;align-items:center;gap:10px}.resumen-row .key{font-size:12.5px;color:var(--text-secondary)}.resumen-row .val{font-size:14px;color:var(--text-primary);font-weight:600;text-align:right}.resumen-row .val small{display:block;font-size:11.5px;color:var(--brand-blue);font-weight:700;margin-top:2px}.resumen-row-final{background:var(--success-bg)}.resumen-row-final .key{color:var(--success);font-weight:700}.resumen-row-final .val{color:var(--success);font-weight:800;font-size:15px}.resumen-row-denied{background:var(--danger-bg)}.resumen-row-denied .key,.resumen-row-denied .val{color:var(--danger);font-weight:700}.resumen-row-club{background:rgba(13,44,104,.5)}.resumen-row-club .key{color:#000;font-weight:700}.resumen-row-club .val{color:#000;font-weight:800;font-size:15px}.resumen-note{margin-top:14px;font-size:12px;color:var(--text-secondary);background:var(--bg-page);border-radius:var(--radius-sm);padding:10px 12px;line-height:1.5}.action-row-top{display:flex;gap:10px;margin-bottom:16px;flex-wrap:wrap}.btn-apply{flex:1;min-height:36px;padding:8px 16px;background:var(--success);color:#fff;border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;font-family:inherit;display:flex;align-items:center;justify-content:center;gap:8px}.btn-apply:hover{opacity:.9}.btn-apply:disabled{opacity:.5;cursor:not-allowed}.correo-panel{background:var(--bg-page);border:1px solid var(--border);border-radius:var(--radius-md);padding:18px 20px;margin-top:10px}.btn-abrir-correo{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:13px;background:var(--brand-blue);color:var(--text-on-brand);border:none;border-radius:var(--radius-sm);font-size:14px;font-weight:600;text-align:center;text-decoration:none;cursor:pointer;transition:opacity .15s;font-family:inherit}.btn-abrir-correo:hover{opacity:.9}.correo-ayuda{font-size:11.5px;color:var(--text-tertiary);line-height:1.6;margin:8px 0 18px}.correo-campo{margin-bottom:16px}.correo-campo:last-of-type{margin-bottom:0}.correo-campo label{display:flex;align-items:center;gap:6px;font-size:11px;font-weight:700;color:var(--brand-blue);text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.correo-fila{display:flex;gap:8px;align-items:stretch}.correo-panel input,.correo-panel textarea{width:100%;padding:11px 14px;background:var(--bg-card);border:1.5px solid var(--border);border-radius:var(--radius-sm);color:var(--text-primary);font-size:13.5px;font-family:inherit;line-height:1.6}.correo-panel textarea{resize:vertical;min-height:220px}.correo-panel input:focus,.correo-panel textarea:focus{outline:none;border-color:var(--brand-blue)}.btn-copiar{flex-shrink:0;padding:0 18px;background:var(--bg-card);border:1.5px solid var(--border);color:var(--brand-blue);border-radius:var(--radius-sm);cursor:pointer;font-size:13px;font-weight:600;font-family:inherit;transition:all .15s}.btn-copiar:hover{border-color:var(--brand-blue);background:var(--brand-blue-tint)}.btn-copiar.copiado{border-color:var(--success);background:var(--success-bg);color:var(--success)}.btn-copiar-cuerpo{width:100%;margin-top:12px;padding:12px;background:var(--bg-card);border:1.5px solid var(--border);color:var(--brand-blue);border-radius:var(--radius-sm);cursor:pointer;font-size:13.5px;font-weight:600;font-family:inherit;transition:all .15s}.btn-copiar-cuerpo:hover{border-color:var(--brand-blue);background:var(--brand-blue-tint)}.btn-copiar-cuerpo.copiado{border-color:var(--success);background:var(--success-bg);color:var(--success)}.btn-approve{background:var(--success)}.btn-approve,.btn-deny{padding:10px 20px;color:white;border:none;border-radius:var(--radius-sm);font-weight:700;cursor:pointer;font-size:13px;font-family:inherit}.btn-deny{background:var(--danger)}.btn-pending{padding:10px 20px;background:#f59e0b;color:white;border:none;border-radius:var(--radius-sm);font-weight:700;cursor:pointer;font-size:13px;font-family:inherit}@keyframes fieldPulse{0%,to{box-shadow:0 0 0 0 rgba(180,35,24,0);border-color:var(--danger)}40%{box-shadow:0 0 0 6px rgba(180,35,24,.15)}70%{box-shadow:0 0 0 3px rgba(180,35,24,.05)}}.field-pulse .radio-group,.field-pulse input,.field-pulse select{animation:fieldPulse .7s ease 3;border-color:var(--danger)!important;border-radius:var(--radius-sm)}.field-pulse label{color:var(--danger)!important}@keyframes btnFlash{0%{transform:scale(1)}25%{transform:scale(1.06)}to{transform:scale(1)}}.btn-flash{animation:btnFlash .4s ease}@keyframes vibrate{0%,to{transform:translateX(0)}15%{transform:translateX(-3px)}30%{transform:translateX(3px)}45%{transform:translateX(-2px)}60%{transform:translateX(2px)}}.btn-vibrate{animation:vibrate .35s ease}.btn-update{width:100%;padding:14px;background:var(--brand-blue);color:white;border:none;border-radius:var(--radius-md);font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;margin-top:20px;display:flex;align-items:center;justify-content:center;gap:8px;font-family:inherit}.btn-update:hover{opacity:.9}.btn-update:disabled{opacity:.5;cursor:not-allowed}.doc-preview-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;margin-top:4px}.doc-thumb{position:relative;background:var(--bg-page);border:1px solid var(--border);border-radius:var(--radius-md);padding:12px 10px;text-align:center;cursor:pointer;transition:all .2s;display:flex;flex-direction:column;align-items:center;gap:6px}.doc-thumb:hover{border-color:var(--brand-blue);background:var(--brand-blue-tint)}.doc-thumb .doc-icon{font-size:2rem;line-height:1}.doc-thumb .doc-name{font-size:11px;color:var(--text-secondary);word-break:break-all;line-height:1.3}.doc-thumb .doc-type{font-size:10px;color:var(--brand-blue);font-weight:700;text-transform:uppercase;margin-top:2px}.doc-download-btn{position:absolute;top:6px;right:6px;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:1px solid var(--border);border-radius:50%;color:var(--brand-blue);cursor:pointer;padding:0;font-size:.85rem}.doc-download-btn:hover{background:var(--brand-blue);color:#fff;border-color:var(--brand-blue)}.doc-download-btn:disabled{opacity:.6;cursor:default}.doc-preview-modal{display:none;position:fixed;inset:0;background:rgba(0,0,0,.6);z-index:2000;align-items:center;justify-content:center;padding:20px}.doc-preview-modal.open{display:flex}.doc-preview-inner{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-lg);max-width:860px;width:100%;max-height:90vh;overflow:auto;padding:24px}.doc-preview-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.doc-preview-header h4{color:var(--text-primary);font-size:16px;font-weight:600}.doc-preview-img{max-width:100%;border-radius:var(--radius-sm);display:block;margin:0 auto}.doc-preview-pdf{width:100%;height:70vh;border:1px solid var(--border);border-radius:var(--radius-sm);display:block}.doc-no-preview{text-align:center;padding:40px 20px;color:var(--text-secondary)}.doc-no-preview .icon{font-size:3rem;margin-bottom:12px}.config-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.config-card{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:20px}.config-card h4{color:var(--brand-blue);font-size:13px;margin-bottom:14px;text-transform:uppercase;letter-spacing:.5px}[data-catname]:focus,[data-sedename]:focus{outline:none;background:var(--bg-tertiary)!important;box-shadow:0 0 0 2px rgba(13,44,104,.15)}.config-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border);gap:10px}.config-row:last-child{border:none}.config-row label{font-size:13px;color:var(--text-secondary);flex:1}.config-input{width:90px;padding:6px 10px;background:var(--bg-page);border:1px solid var(--border);color:var(--text-primary);border-radius:6px;font-size:13px;text-align:right;font-family:inherit}.users-list{display:flex;flex-direction:column;gap:10px;max-width:500px}.user-row{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:14px 18px;display:flex;align-items:center;gap:14px}.user-row .avatar{flex-shrink:0}.user-row .info{flex:1}.user-row .info strong{font-size:14px}.user-row .info p{font-size:12px;color:var(--text-secondary)}.btn-del-user{color:var(--danger)}.btn-del-user,.btn-icon-user{background:transparent;border:none;cursor:pointer;font-size:16px}.btn-icon-user{color:var(--text-secondary)}.btn-icon-user:hover{color:var(--text-primary)}.user-row-wrap{gap:0}.permisos-panel,.user-row-wrap{display:flex;flex-direction:column}.permisos-panel{background:var(--bg-card);border:1px solid var(--border);border-top:none;border-radius:0 0 var(--radius-md) var(--radius-md);padding:14px 18px;margin-top:-1px;gap:10px}.permiso-check{display:flex;align-items:flex-start;gap:10px;cursor:pointer}.permiso-check input{margin-top:3px;flex-shrink:0}.permiso-check span{display:flex;flex-direction:column}.permiso-check strong{font-size:13px}.permiso-check small{font-size:11px;color:var(--text-secondary)}.permiso-check-super{padding-bottom:8px;border-bottom:1px dashed var(--border)}.permisos-panel-actions{display:flex;align-items:center;gap:14px;margin-top:4px}.permisos-panel-actions .btn-primary{width:auto;padding:8px 16px;font-size:12px}.btn-link{background:none;border:none;color:var(--text-secondary);text-decoration:underline;cursor:pointer;font-size:12px;padding:0}.btn-link:hover{color:var(--text-primary)}.empty-state{text-align:center;padding:60px 20px;color:var(--text-secondary)}.empty-state .icon{font-size:3rem;margin-bottom:12px}.pct-btns-label{font-size:12px;color:var(--text-secondary);margin-bottom:8px}.pct-btns{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}.pct-btn{flex:1;min-width:60px;padding:10px 6px;background:var(--bg-page);border:2px solid var(--border);border-radius:var(--radius-md);color:var(--text-secondary);font-size:14px;font-weight:700;cursor:pointer;transition:all .2s;text-align:center;font-family:inherit}.pct-btn.selected,.pct-btn:hover{border-color:var(--brand-blue);color:var(--brand-blue);background:var(--brand-blue-tint)}.pct-btn-0{border-color:rgba(180,35,24,.3);color:var(--danger)}.pct-btn-0.selected,.pct-btn-0:hover{border-color:var(--danger);background:var(--danger-bg)}.pct-btn-0.selected{color:var(--danger)}details[open]>summary .acc-arrow{transform:rotate(90deg)}@media (max-width:900px){.col-sits{display:none}.sidebar{width:64px;padding:16px 0;overflow:hidden}.sidebar-logo h3,.sidebar-logo p{display:none}.sidebar-logo{padding:0 12px 16px;text-align:center}.sidebar-logo .shield-sm{margin:0 auto}.nav-item{padding:12px 0;justify-content:center;gap:0;margin:0;width:100%;border-radius:0}.nav-item span:not(.icon){display:none}.nav-item .icon{width:auto;font-size:1.3rem}.sidebar-bottom{padding:12px 0;text-align:center}.btn-logout,.user-badge div:not(.avatar),.user-badge p{display:none}.user-badge{justify-content:center}.admin-topbar{padding:14px 20px}.admin-content,.modal{padding:20px}}@media (max-width:640px){.admin-layout{flex-direction:column;min-height:100vh}.sidebar{width:100%;height:58px;flex-direction:row;border-right:none;border-top:1px solid var(--border);padding:0;position:fixed;bottom:0;left:0;right:0;z-index:200;overflow:visible;flex-shrink:0;background:var(--bg-card)}.sidebar-bottom,.sidebar-logo{display:none}.nav-item{flex:1;flex-direction:column;padding:8px 4px;gap:3px;justify-content:center;align-items:center;font-size:.65rem;margin:0;border-radius:0;color:var(--text-secondary)}.nav-item:hover{background:var(--bg-tertiary)}.nav-item span:not(.icon){display:block;font-size:.6rem;color:inherit}.nav-item .icon{font-size:1.15rem;width:auto}.nav-item.active{color:var(--brand-blue);background:transparent;box-shadow:none;border-top:2px solid var(--brand-blue)}.admin-main{padding-bottom:62px;width:100%;overflow-x:hidden}.admin-topbar{padding:10px 14px}.admin-topbar h2{font-size:14px}.admin-content{padding:12px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:8px;margin-bottom:14px}.stat-card{padding:12px}.stat-card .num{font-size:22px}.stat-card .label{font-size:11px}.filters-bar{flex-direction:column;gap:8px}.filter-select,.search-input{width:100%;box-sizing:border-box;font-size:14px;padding:10px 12px}.filters-bar button{width:100%;padding:13px;font-size:14px;min-height:46px}.table-wrap{background:transparent;border:none;overflow:visible}table,tbody,td,th,thead,tr{display:block;width:100%;box-sizing:border-box}thead{display:none}tr{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius-md);padding:14px;margin-bottom:10px}td{padding:4px 0;border:none;font-size:13px}td[data-label]:before{content:attr(data-label) ": ";font-size:10px;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.3px}td:last-child{margin-top:10px}.btn-view{width:100%;padding:10px;font-size:14px;text-align:center}.modal-overlay{padding:0;align-items:flex-end}.modal{max-width:100%;width:100%;border-radius:20px 20px 0 0;padding:20px 16px 36px;margin:0;max-height:94vh;overflow-y:auto}.ficha-tab-content{overflow:visible;flex:0 0 auto;padding-right:0;margin-right:0}.modal-header h3{font-size:16px}.detail-grid{grid-template-columns:1fr;gap:8px}.pct-btns{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.pct-btn{padding:12px 4px;font-size:13px;min-width:0}.wizard-container{padding:16px 16px 30px}.card{padding:16px}.grid2{grid-template-columns:1fr!important}.nav-btns{gap:8px}.btn-back,.btn-next{padding:13px 18px;font-size:14px;min-height:46px}.welcome-card{padding:32px 24px}.config-grid{grid-template-columns:1fr}}@media (max-width:380px){.pct-btns{grid-template-columns:repeat(2,1fr)}.stat-card .num{font-size:20px}.admin-content{padding:10px}}