@import"https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800;900&family=Outfit:wght@300;400;500;600;700&display=swap";:root{--navy: #1B3A6B;--teal: #1BAAB5;--bg: #f5f7fb;--text: #172033;--muted: #64748b;--border: #e2e8f0;--danger: #b91c1c}*{box-sizing:border-box}body{margin:0;font-family:Outfit,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text)}button,input,select,textarea{font:inherit}.app-shell{min-height:100vh;display:grid;grid-template-columns:260px minmax(0,1fr)}.sidebar{background:#142c3a;color:#fff;padding:24px 20px;display:flex;flex-direction:column;gap:26px;position:sticky;top:0;height:100vh}.brand{display:grid;gap:8px;padding:0 4px 22px;border-bottom:1px solid rgba(255,255,255,.07)}.brand img{width:178px;max-width:100%;height:auto;object-fit:contain;display:block}.brand span{color:#ffffff7a;font-size:13px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.nav{display:grid;gap:8px}.nav-link{display:flex;align-items:center;gap:10px;border:0;border-radius:12px;background:transparent;color:#ffffffad;cursor:pointer;padding:12px 13px;text-decoration:none;text-align:left;font-weight:800}.nav-link svg{color:#25b8dc}.nav-link.active,.nav-link:hover{background:#25b8dc24;color:#fff}.nav-link.active svg,.nav-link:hover svg{color:#35cfe0}.nav-link.disabled{cursor:default;opacity:.55}.logout{margin-top:auto;border:1px solid rgba(255,255,255,.16);background:#ffffff0f;color:#fff;border-radius:8px;padding:11px 12px;display:flex;align-items:center;gap:10px;cursor:pointer}.main{padding:28px;min-width:0}.page{display:grid;gap:22px}.page-header{display:flex;justify-content:space-between;gap:18px;align-items:flex-start}.eyebrow{color:var(--teal);font-weight:900;font-size:12px;text-transform:uppercase}h1{color:var(--navy);font-family:Nunito,sans-serif;font-size:31px;line-height:1.15;margin:6px 0}h2{color:var(--navy);font-family:Nunito,sans-serif;margin:0;font-size:18px}p{color:var(--muted);margin:0}.kpi-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.kpi-grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}.kpi-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}.kpi-card,.table-card,.standard-card{background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 2px 12px #0f172a0d}.kpi-card{padding:18px}.kpi-card strong{display:block;color:var(--navy);font-size:30px;line-height:1;margin-bottom:8px}.kpi-card span{color:var(--muted);font-size:13px}.talent-kpis{gap:12px}.kpi-card.compact{min-height:100px;padding:14px 15px;position:relative;overflow:hidden}.kpi-card.compact:after{content:"";position:absolute;inset:auto -22px -34px auto;width:92px;height:92px;border-radius:999px;background:currentColor;opacity:.08}.kpi-card.compact .kpi-icon{width:34px;height:34px;border-radius:999px;display:grid;place-items:center;margin-bottom:8px;background:color-mix(in srgb,currentColor 12%,#fff)}.kpi-card.compact strong{font-size:27px;margin-bottom:4px;color:currentColor}.kpi-card.compact span{color:#405973;font-size:12px;font-weight:800;line-height:1.2}.kpi-card.success{color:#087f8c;border-color:#b7ebef;background:linear-gradient(180deg,#fff,#f0fdff)}.kpi-card.warning{color:#d97706;border-color:#fde68a;background:linear-gradient(180deg,#fff,#fffbeb)}.kpi-card.danger{color:#dc2626;border-color:#fecaca;background:linear-gradient(180deg,#fff,#fff1f2)}.kpi-card.muted{color:#64748b;border-color:#dbe6f0;background:linear-gradient(180deg,#fff,#f8fbfe)}.toolbar{display:flex;gap:12px;flex-wrap:wrap}.search-field{flex:1;min-width:260px;display:flex;align-items:center;gap:10px;background:#fff;border:1px solid var(--border);border-radius:8px;padding:0 12px}.search-field input{border:0;outline:0;width:100%;min-height:44px}select,input,textarea{border:1px solid var(--border);border-radius:8px;min-height:42px;padding:9px 11px;background:#fff;outline:none}textarea{resize:vertical}.table-card{overflow:hidden}.section-heading{padding:16px 18px;border-bottom:1px solid var(--border)}.section-heading p{margin-top:4px;font-size:13px}.inline-heading{display:flex;align-items:center;justify-content:space-between;gap:14px;background:#fff;border:1px solid var(--border);border-radius:8px}table{width:100%;border-collapse:collapse}th{background:#f8fafc;color:var(--navy);text-align:left;font-size:12px;text-transform:uppercase;padding:11px 14px;border-bottom:1px solid var(--border)}td{padding:13px 14px;border-bottom:1px solid #edf2f7;vertical-align:top;font-size:14px}tr:last-child td{border-bottom:0}td small{display:block;color:var(--muted);margin-top:4px}.code,.table-link{color:var(--navy);font-weight:900}.table-link{text-decoration:none}.table-link:hover{color:var(--teal)}.pill,.tag{display:inline-flex;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:900;background:#eef2f7;color:#334155}.pill.habilitado,.pill.cumple,.pill.activo{background:#d1fae5;color:#065f46}.pill.proximo,.pill.en_revision{background:#fef3c7;color:#92400e}.pill.pendiente,.pill.no_cumple,.pill.inactivo{background:#fee2e2;color:#991b1b}.pill.no_aplica{background:#e5e7eb;color:#374151}.meta-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.tabs{display:flex;gap:8px;overflow-x:auto;border-bottom:1px solid var(--border)}.tabs button{border:0;border-bottom:3px solid transparent;background:transparent;color:var(--muted);cursor:pointer;font-weight:900;padding:12px 14px;white-space:nowrap}.tabs button.active{border-bottom-color:var(--teal);color:var(--navy)}.primary-btn,.secondary-btn,.brand-action-btn{border:0;border-radius:8px;padding:11px 15px;font-weight:900;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none}.primary-btn{background:var(--teal);color:#fff}.secondary-btn{background:#eef2f7;color:#334155}.primary-btn:disabled{opacity:.6;cursor:progress}.brand-action-btn{border-radius:999px;padding:13px 24px;background:linear-gradient(135deg,var(--teal),var(--navy));color:#fff;box-shadow:0 14px 30px #1baab538;font-size:15px}.brand-action-btn svg{color:#d946ef;stroke-width:3}.brand-action-btn:hover{transform:translateY(-1px);box-shadow:0 18px 34px #1b3a6b38}.brand-action-btn:disabled{opacity:.65;cursor:progress;transform:none}.back-link{color:var(--teal);font-size:13px;font-weight:900;text-decoration:none}.breadcrumb{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:13px;font-weight:800;margin-bottom:4px}.actions{white-space:nowrap}.actions button{border:1px solid var(--border);background:#fff;border-radius:8px;padding:8px;margin-right:6px;cursor:pointer}.actions .danger{color:var(--danger)}.icon-link{border:1px solid var(--border);background:#fff;color:var(--navy);border-radius:8px;padding:8px;display:inline-flex;align-items:center;margin-right:6px;vertical-align:middle}.professionals-table th:nth-child(1){min-width:260px}.professionals-table th:nth-child(6){min-width:310px}.prof-info{display:flex;align-items:center;gap:10px}.prof-avatar{width:48px;height:48px;border-radius:999px;display:grid;place-items:center;background:linear-gradient(135deg,#1baab5,#1b5e86);color:#fff;font-weight:900;letter-spacing:0;font-size:17px}.prof-nombre{color:var(--text);font-weight:900}.prof-cedula{color:var(--muted);font-size:12px;margin-top:2px}.specialty-cell{display:grid;gap:8px}.specialty-cell>span{color:#08243a;font-weight:700}.service-chip-list{display:flex;flex-wrap:wrap;gap:5px;max-width:310px}.service-chip-list span{border:1px solid #dbe6f0;border-radius:999px;background:#f3f8fc;color:#405973;font-size:11px;font-weight:900;line-height:1.1;padding:5px 8px}.service-chip-list span.base{background:#ecfdf5;border-color:#86efac;color:#047857}.contact-cell span{display:block;max-width:220px;overflow-wrap:anywhere}.docs-mini{display:flex;align-items:center;flex-wrap:wrap;gap:4px;max-width:190px}.doc-mini-badge{width:10px;height:10px;border-radius:999px;border:1px solid rgba(15,23,42,.12);background:#cbd5e1}.doc-mini-badge.vigente{background:#22c55e}.doc-mini-badge.sin-cargar{background:#cbd5e1}.doc-mini-badge.por-vencer,.doc-mini-badge.incompleto{background:#f59e0b}.doc-mini-badge.vencido{background:#ef4444}.pill.vigente{background:#d1fae5;color:#065f46}.pill.sin-cargar{background:#eef2f7;color:#475569}.pill.por-vencer,.pill.incompleto{background:#fef3c7;color:#92400e}.pill.vencido{background:#fee2e2;color:#991b1b}.table-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.training-actions{width:max-content;min-width:0;flex-wrap:nowrap}.training-icon-action{width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center;cursor:pointer;border:1px solid var(--border);background:#fff;color:var(--navy);transition:all .2s ease;padding:0}.training-icon-action:hover{transform:translateY(-2px);box-shadow:0 4px 10px #0f172a1a;border-color:var(--teal)}.training-icon-action.edit{color:var(--navy)}.training-icon-action.edit:hover{background-color:#eff6ff;border-color:var(--teal)}.training-icon-action.file{color:#0f766e}.training-icon-action.file:hover{background-color:#ecfeff;border-color:var(--teal)}.training-icon-action.power.active{background-color:#d1fae5;border-color:#86efac;color:#047857}.training-icon-action.power.active:hover{background-color:#d1fae5;border-color:#48bb78}.training-icon-action.power.inactive{background-color:#fef2f2;border-color:#fecaca;color:#dc2626}.training-icon-action.power.inactive:hover{background-color:#fef2f2;border-color:#f56565}.training-icon-action.delete{color:#dc2626}.training-icon-action.delete:hover{background-color:#fee2e2;border-color:#f56565}.training-count-btn{min-width:66px;min-height:34px;border:0;border-radius:10px;padding:7px 12px;display:inline-flex;align-items:center;justify-content:center;gap:7px;font-weight:950;cursor:pointer;box-shadow:0 5px 14px #0f172a0f}.training-count-btn.materials{background:var(--teal);color:#fff}.training-count-btn.questions{background:#ede9fe;color:#5b21b6}.training-count-btn:hover{transform:translateY(-1px);filter:brightness(.98)}.table-actions button,.doc-actions button{border:1px solid var(--border);background:#fff;color:var(--navy);border-radius:8px;padding:7px 9px;font-weight:900;cursor:pointer;display:inline-flex;align-items:center;gap:5px}.table-actions button:hover,.doc-actions button:hover{border-color:var(--teal);color:var(--teal)}.doc-actions .consult-btn{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.table-actions button:disabled,.doc-actions button:disabled{opacity:.6;cursor:progress}.table-actions .training-icon-action{width:36px;height:36px;min-width:36px;padding:0;border-radius:10px;justify-content:center;gap:0}.table-actions .contract-action.no-generado{background:#f8fafc;color:#64748b;border-color:#cbd5e1}.table-actions .contract-action.pendiente-firma{background:#fffbeb;color:#92400e;border-color:#fcd34d}.table-actions .contract-action.firmado-profesional{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}.table-actions .contract-action.completo{background:#f0fdf4;color:#166534;border-color:#86efac}.standards-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.standard-card{padding:16px}.standard-card-action{display:grid;gap:12px;align-content:start}.standard-card strong{display:block;color:var(--navy);margin-bottom:6px}.standard-card span{color:var(--muted);font-size:13px}.standard-card small{display:block;color:var(--muted);font-size:12px;margin-top:6px}.standard-card-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}.standard-card-head strong{margin-bottom:0}.progress-bar{height:9px;background:#e5e7eb;border-radius:999px;overflow:hidden;margin:12px 0 8px}.progress-bar span{display:block;height:100%;background:var(--teal)}.criteria-stack{display:grid;gap:16px}.criteria-stack textarea{width:100%;min-width:220px}.criteria-stack select{min-width:150px}.actions button:disabled{opacity:.5;cursor:not-allowed}.empty-state,.error-box,.success-box{background:#fff;border:1px solid var(--border);border-radius:8px;color:var(--muted);padding:22px;text-align:center}.error-box{color:#991b1b;background:#fef2f2;border-color:#fecaca}.success-box{color:#065f46;background:#ecfdf5;border-color:#a7f3d0}.login-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:var(--bg)}.login-card{width:min(420px,100%);background:#fff;border:1px solid var(--border);border-radius:8px;padding:28px;box-shadow:0 18px 50px #0f172a1a;display:grid;gap:14px}.login-card img{width:74px;height:74px;object-fit:contain}.login-card h1{margin:0}.login-card label,.modal label{display:grid;gap:7px;color:#334155;font-size:13px;font-weight:800}.modal-backdrop{position:fixed;inset:0;background:#0f172a75;display:grid;place-items:center;padding:18px;z-index:20;overflow-y:auto;overscroll-behavior:contain}.modal{width:min(760px,100%);max-height:92vh;overflow:auto;background:#fff;border-radius:8px;padding:22px;display:grid;gap:14px}.wide-modal{width:min(1040px,100%)}.professional-detail-modal{padding:0;gap:0;border-radius:20px;overflow-y:auto;overscroll-behavior:contain}.professional-detail-title{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:26px 28px;border-bottom:1px solid var(--border)}.professional-detail-title h2{color:#08243a;font-family:Nunito,sans-serif;display:flex;align-items:center;gap:10px;font-size:24px;font-weight:900}.professional-detail-title h2 svg{color:#e7d9f2}.professional-detail-title button{width:44px;height:44px;border-radius:999px;border:0;background:#f3f7fb;color:#08243a;display:grid;place-items:center;cursor:pointer}.modal-profile-header{display:flex;gap:12px;align-items:center;border-bottom:1px solid var(--border);padding-bottom:14px}.legacy-profile-header{margin:30px 28px;padding:24px 26px;border:0;border-radius:28px;background:#f3f8fc;gap:22px}.legacy-profile-header h2{color:#08243a;font-family:Nunito,sans-serif;font-size:25px;font-weight:900;margin-bottom:4px}.legacy-profile-header p{color:#1f3b53;font-weight:700}.avatar-circle{width:48px;height:48px;border-radius:999px;display:grid;place-items:center;background:#e0f7fa;color:var(--teal)}.legacy-profile-header .avatar-circle{width:76px;height:76px;background:#1d8ea5;color:#fff;font-size:26px;font-weight:900;flex:0 0 auto}.detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.detail-grid article{border:1px solid var(--border);border-radius:8px;padding:12px;background:#f8fafc}.detail-grid span{display:block;color:var(--muted);font-size:12px;margin-bottom:4px}.flat-card{box-shadow:none}.legacy-section{padding:0 28px 24px}.legacy-section-heading{display:flex;align-items:center;gap:8px;margin-bottom:16px}.legacy-section-heading h2{color:#334155;font-family:Nunito,sans-serif;font-size:17px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}.legacy-section-heading:before{content:"";width:17px;height:17px;border-radius:4px;background:#efe7f7}.modal-docs-grid,.assigned-services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px;padding:0}.assigned-service-card{border:1px solid #dbe6f0;border-radius:16px;background:#f8fbfe;padding:18px 20px;display:grid;gap:12px}.assigned-service-card strong{color:var(--navy);display:block}.assigned-service-card span{color:var(--muted);display:block;font-size:12px;margin-top:4px}.assigned-service-tags{display:flex;flex-wrap:wrap;gap:7px}.assigned-service-card dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0}.assigned-service-card dt{color:var(--muted);font-size:11px;font-weight:900;text-transform:uppercase}.assigned-service-card dd{color:#334155;font-size:13px;font-weight:800;margin:3px 0 0}.modal-doc-item{border:1px solid #dbe6f0;border-radius:16px;padding:18px 20px;display:flex;justify-content:space-between;gap:12px;background:#f8fbfe;align-items:center}.modal-doc-item.vigente{background:#ecfdf5;border-color:#86efac}.modal-doc-item.sin-cargar{background:#f8fbfe;border-color:#dbe6f0}.modal-doc-item.por-vencer,.modal-doc-item.incompleto{background:#fffbeb;border-color:#fcd34d}.modal-doc-item.vencido{background:#fef2f2;border-color:#fecaca}.modal-doc-item strong{display:block;color:#08243a;font-family:Nunito,sans-serif;font-size:16px;font-weight:900}.modal-doc-item span{display:block;color:#1f3b53;font-size:13px;margin-top:4px}.doc-actions{display:grid;justify-items:end;gap:7px;min-width:116px}.legacy-extra-section{display:grid;gap:14px;padding:0 28px 24px}.bank-info-box{border-radius:18px;background:#f3f8fc;color:#08243a;padding:16px 22px;display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:15px}.bank-info-box:before{content:"🏦"}.bank-info-box strong{font-family:Nunito,sans-serif;font-weight:900}.system-info-box{border:1px solid #dbe6f0;border-radius:18px;background:#f8fbfe;padding:20px 22px}.system-info-box h2{color:#08243a;font-family:Nunito,sans-serif;font-size:17px;font-weight:900;margin-bottom:16px}.system-info-box h2:before{content:"🧭 "}.system-info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px 26px}.system-info-grid span{display:block;color:#405973;font-size:14px;margin-bottom:3px}.system-info-grid strong{display:block;color:#08243a;font-family:Nunito,sans-serif;font-size:16px;font-weight:900}.professional-modal-actions{position:sticky;bottom:0;background:linear-gradient(180deg,#ffffffe0,#fff 42%);padding:18px 28px 24px;justify-content:flex-end;gap:14px;z-index:2}.professional-modal-actions .brand-action-btn{box-shadow:none;min-width:260px}.professional-modal-actions .close-detail-btn{border-radius:12px;min-width:100px;background:var(--teal)}.contract-modal{width:min(800px,100%);padding:0;overflow:hidden;border-radius:22px;gap:0}.contract-modal-header{padding:22px 26px;background:linear-gradient(135deg,var(--navy),var(--teal));color:#fff;display:flex;justify-content:space-between;align-items:center;gap:16px}.contract-modal-header h2{margin:0;color:#fff;font-size:24px;display:flex;align-items:center;gap:10px}.contract-modal-header p{color:#ffffffe6;margin-top:6px;font-weight:800}.modal-close-btn{width:42px;height:42px;border:0;border-radius:999px;background:#ffffff2e;color:#fff;display:grid;place-items:center;cursor:pointer}.contract-modal-body{padding:28px 32px 32px;display:grid;gap:18px}.contract-state-box{border:1px solid #d8e0eb;background:#f8fafc;border-radius:16px;padding:18px 20px;display:flex;gap:12px;align-items:flex-start}.contract-state-box svg{color:#64748b;margin-top:1px}.contract-state-box.pendiente-firma svg{color:#d97706}.contract-state-box.firmado-profesional svg{color:#2563eb}.contract-state-box.completo svg{color:#059669}.contract-state-box strong{display:block;color:#334155}.contract-state-box span{display:block;color:#64748b;margin-top:10px}.contract-download-btn{margin-top:16px;border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;border-radius:999px;padding:10px 16px;display:inline-flex;align-items:center;gap:7px;font-weight:900;cursor:pointer}.contract-regenerate-text{color:#334155;font-weight:900}.contract-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px}.contract-form-grid label{color:#334155;font-size:14px;font-weight:900}.contract-form-grid label span{color:#e74c3c}.contract-form-grid input{border:1.5px solid #d8e0eb;border-radius:14px;min-height:56px;padding:13px 16px;font-size:18px;margin-top:8px}.contract-date-field{grid-column:1 / -1}.contract-note{border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;border-radius:14px;padding:15px 18px;line-height:1.45}.contract-actions{margin-top:12px;align-items:center}.pill-btn{border-radius:999px;border:1.5px solid #d8e0eb;background:#fff;padding:12px 22px}.gradient-btn{border-radius:999px;padding:12px 24px;background:linear-gradient(135deg,var(--navy),var(--teal))}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.check-row{align-content:center;grid-template-columns:auto 1fr;display:grid!important}.check-row input{min-height:0}.modal-actions{display:flex;justify-content:flex-end;gap:10px}.modal-actions.professional-modal-actions{justify-content:flex-end;gap:14px}.modal-actions.wrap{flex-wrap:wrap}.subtabs{display:inline-flex;width:fit-content;background:#fff;border:1px solid var(--border);border-radius:999px;padding:4px;box-shadow:0 2px 12px #0f172a0a}.subtabs button{border:0;border-radius:999px;background:transparent;color:var(--muted);padding:10px 16px;font-weight:900;cursor:pointer}.subtabs button.active{background:linear-gradient(135deg,var(--teal),var(--navy));color:#fff}.create-user-card{overflow:visible}.create-user-form{padding:20px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.create-user-form label{display:grid;gap:8px;color:#334155;font-size:14px;font-weight:900}.create-user-form label span{color:#e74c3c}.create-user-form input,.create-user-form select{min-height:52px;border:1.5px solid #d8e0eb;border-radius:14px;padding:12px 14px}.password-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.password-row button{border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;border-radius:14px;padding:0 14px;font-weight:900;cursor:pointer}.create-user-actions{display:flex;justify-content:flex-end;gap:10px;padding:0 20px 20px}.access-table th{white-space:nowrap}.access-table td:not(:first-child){vertical-align:middle}.access-status-cell{display:grid;gap:7px;align-items:start}.status-toggle-btn{width:max-content;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:999px;padding:6px 10px;background:#fff;color:var(--navy);font-size:12px;font-weight:900;cursor:pointer}.status-toggle-btn.success{background:#ecfdf5;border-color:#86efac;color:#047857}.status-toggle-btn.danger{background:#fef2f2;border-color:#fecaca;color:#b91c1c}.status-toggle-btn:disabled{opacity:.6;cursor:progress}.toggle-permission{display:inline-flex;align-items:center;cursor:pointer}.toggle-permission input{position:absolute;opacity:0;pointer-events:none}.toggle-permission span{width:46px;height:26px;border-radius:999px;background:#cbd5e1;border:1px solid #cbd5e1;position:relative;transition:.18s ease}.toggle-permission span:after{content:"";position:absolute;width:20px;height:20px;top:2px;left:2px;border-radius:999px;background:#fff;box-shadow:0 2px 5px #0f172a2e;transition:.18s ease}.toggle-permission input:checked+span{background:linear-gradient(135deg,var(--teal),var(--navy));border-color:var(--teal)}.toggle-permission input:checked+span:after{transform:translate(20px)}.toggle-permission input:disabled+span{opacity:.65;cursor:progress}.access-note{border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;border-radius:8px;padding:14px 16px;display:flex;align-items:center;gap:10px}.access-note p{color:#1d4ed8}.training-section{display:grid;gap:18px}.training-kpis{margin-top:2px}.training-heading{display:flex;align-items:center;justify-content:space-between;gap:16px}.padded-toolbar{padding:16px 18px;border-bottom:1px solid var(--border)}.training-table strong{color:#08243a}.training-chip{display:inline-flex;align-items:center;border-radius:999px;background:#e0f2fe;color:#0369a1;font-size:12px;font-weight:900;padding:5px 9px;white-space:nowrap}.adherence-mini-grid{padding:16px 18px 0}.adherence-mini{border:1px solid #dbe6f0;border-radius:12px;background:#f8fbfe;padding:13px 14px}.adherence-mini span{display:block;color:#64748b;font-size:11px;font-weight:900;text-transform:uppercase}.adherence-mini strong{display:block;color:var(--navy);font-size:24px;line-height:1;margin-top:5px}.adherence-mini.approved{background:#ecfdf5;border-color:#86efac}.adherence-mini.approved strong{color:#047857}.adherence-mini.failed{background:#fff1f2;border-color:#fecaca}.adherence-mini.failed strong{color:#dc2626}.adherence-mini.pending{background:#fffbeb;border-color:#fde68a}.adherence-mini.pending strong{color:#d97706}.training-status{display:inline-flex;align-items:center;gap:5px;border-radius:999px;padding:5px 9px;font-size:12px;font-weight:900;white-space:nowrap}.training-status.aprobado{background:#dcfce7;color:#166534}.training-status.no_aprobado{background:#fee2e2;color:#991b1b}.training-status.pendiente{background:#fef3c7;color:#92400e}.training-modal{width:min(820px,100%);padding:0;overflow:hidden;border-radius:20px;gap:0}.training-modal-title{padding:22px 26px}.training-modal-body{padding:24px 28px 28px;display:grid;gap:20px}.training-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px}.training-form-grid label{display:grid;gap:8px;color:#334155;font-size:14px;font-weight:900}.training-form-grid label span{color:#e74c3c}.training-form-grid .wide-field{grid-column:1 / -1}.training-form-grid input,.training-form-grid select,.training-form-grid textarea{border:1.5px solid #d8e0eb;border-radius:14px;min-height:52px;padding:12px 14px}.training-form-grid textarea{min-height:96px}.training-file-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:16px 18px;border:1px solid var(--border);border-radius:16px;background:#f8fafc}.training-file-heading strong,.training-file-heading span{display:block}.training-file-heading span{color:var(--muted);margin-top:3px}.training-upload-box{display:grid;place-items:center;gap:8px;padding:26px 18px;border:2px dashed #1baab5;border-radius:16px;background:#f8feff;text-align:center}.training-upload-box input{display:none}.training-upload-box label{display:inline-flex;align-items:center;gap:8px;border:0;border-radius:10px;padding:10px 18px;background:var(--teal);color:#fff;font-weight:950;cursor:pointer}.training-upload-box span{color:var(--muted);font-size:13px;font-weight:800}.training-file-list{display:grid;gap:10px}.training-file-item{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:13px 14px;border:1px solid var(--border);border-radius:14px;background:#fff}.training-file-item>div:first-child{display:flex;align-items:center;gap:10px;min-width:0}.training-file-item strong,.training-file-item span{display:block}.training-file-item strong{color:var(--navy);overflow-wrap:anywhere}.training-file-item span{color:var(--muted);font-size:12px;margin-top:2px}.compact-empty{padding:18px}.training-questions-modal{width:min(980px,100%);max-height:min(92vh,980px)}.training-question-list{display:grid;gap:14px}.training-question-card{display:grid;gap:12px;padding:16px 18px;border:1px solid var(--border);border-radius:16px;background:#f8fbff}.new-question-card{border-color:#9bd8df;background:#f0fdfa}.training-question-title-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px}.training-question-title-row strong{color:var(--navy);font-size:18px}.training-question-title-row input,.training-option-row input[type=text]{width:100%;min-height:42px;border:1.5px solid #d8e0eb;border-radius:12px;padding:9px 12px;background:#fff}.training-option-list{display:grid;gap:8px}.training-option-row{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:9px}.training-option-row input[type=radio]{width:18px;height:18px;accent-color:var(--teal)}.compact-action{width:max-content;min-height:36px;padding:8px 18px}.professional-portal-page{min-height:100vh;background:#f4f8fb;color:var(--navy)}.deliveries-page{min-height:100vh;background:#f3f8fb;color:#243b53}.deliveries-header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:24px clamp(18px,4vw,44px);background:linear-gradient(135deg,var(--navy),var(--teal));color:#fff}.deliveries-header span{display:block;font-size:12px;font-weight:950;text-transform:uppercase;opacity:.85}.deliveries-header h1{margin:5px 0 4px;color:#fff;font-size:clamp(26px,5vw,42px)}.deliveries-header p{margin:0;opacity:.9}.deliveries-header button{border:1px solid rgba(255,255,255,.28);border-radius:999px;background:#ffffff24;color:#fff;padding:10px 16px;font-weight:900;display:inline-flex;align-items:center;gap:8px;cursor:pointer}.deliveries-content{width:min(100% - 28px,980px);margin:0 auto;padding:24px 0 44px}.professional-topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px clamp(18px,4vw,54px);background:#fff;border-bottom:1px solid var(--border);box-shadow:0 6px 18px #0f172a0f}.professional-topbar img{height:56px;width:auto}.professional-topbar-brand{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.professional-topbar-user{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}.professional-topbar-user div{display:grid;gap:2px;margin-right:8px;text-align:right}.professional-topbar-user strong{color:var(--navy)}.professional-topbar-user span{color:var(--muted);font-size:13px}.topbar-soft-btn,.topbar-logout{border:0;border-radius:999px;padding:9px 13px;font-weight:900;cursor:pointer}.topbar-soft-btn{background:#e8f8fa;color:var(--teal)}.topbar-soft-btn.navy{background:#eef4ff;color:var(--navy)}.topbar-soft-btn.active{background:var(--navy);color:#fff}.topbar-admin-btn{display:inline-flex;align-items:center;gap:7px;background:#eef4ff;color:var(--navy);border:1px solid #dbe6f0}.topbar-soft-btn:disabled{opacity:.75;cursor:not-allowed}.topbar-logout{display:inline-flex;align-items:center;gap:7px;background:#f8fafc;color:#64748b;border:1px solid var(--border)}.professional-portal-content{width:min(900px,100%);margin:0 auto;padding:40px 24px 90px;display:grid;gap:0}.professional-welcome{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:196px;padding:36px 50px;border-radius:32px;background:linear-gradient(135deg,#1baab5,#1b3a6b);color:#fff;box-shadow:none;margin-bottom:32px;position:relative;overflow:hidden}.professional-welcome:before{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:#ffffff14}.professional-welcome:after{content:"";position:absolute;right:78px;bottom:-82px;width:160px;height:160px;border-radius:50%;background:#ffffff0d}.professional-welcome>div{position:relative;z-index:1}.professional-welcome h1{margin:0 0 6px;font-family:Nunito,sans-serif;font-size:30px;font-weight:900;line-height:1.12;color:#fff}.professional-welcome p{margin:0;max-width:470px;font-size:17px;font-weight:700;line-height:1.35;color:#ffffffeb}.welcome-stats{display:flex;gap:24px;flex-wrap:wrap;flex-shrink:0}.welcome-stats article{width:106px;height:106px;display:grid;place-items:center;align-content:center;padding:12px 16px;border-radius:18px;background:#ffffff26;border:1px solid rgba(255,255,255,.2);color:#fff;text-align:center}.welcome-stats strong,.welcome-stats span{display:block}.welcome-stats strong{font-family:Nunito,sans-serif;font-size:34px;font-weight:900;line-height:1}.welcome-stats span{margin-top:8px;font-size:13px;font-weight:800;color:#ffffffd1}.portal-services-section{padding-top:28px;padding-bottom:30px}.portal-services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.portal-service-info-card{min-width:0;min-height:96px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px 12px;align-items:center;text-align:left;border:1.5px solid #dbe6f0;border-radius:16px;padding:16px 18px;background:#f0fdfa;color:var(--navy);border-color:#ccfbf1;box-shadow:0 4px 12px #1b3a6b0d}.portal-service-info-card svg{grid-row:span 2;color:var(--teal)}.portal-service-info-card span,.portal-service-info-card small{display:block;min-width:0}.portal-service-info-card span{font-size:16px;font-weight:950;overflow-wrap:anywhere}.portal-service-info-card small{color:#526579;font-weight:750;line-height:1.35}.professional-training-content .professional-welcome h1{display:inline-flex;align-items:center;gap:10px}.professional-training-panel{display:grid;gap:22px}.professional-training-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.professional-training-filters label{display:grid;gap:7px;color:var(--navy);font-weight:900}.professional-training-filters select{width:100%;min-height:48px;border:1.5px solid #d8e0eb;border-radius:14px;padding:10px 14px;background:#fff;color:#08243a;font-weight:800}.professional-training-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.professional-training-card{display:grid;align-content:start;gap:12px;min-height:190px;padding:26px 30px 28px;border:1px solid #e9f0f7;border-radius:20px;background:#fff;box-shadow:0 12px 28px #1b3a6b14;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.professional-training-card:hover{transform:translateY(-2px);border-color:#d8e0eb;box-shadow:0 8px 22px #0f172a1a}.professional-training-card-head,.professional-training-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.professional-training-card-head{justify-content:space-between}.professional-training-card h2{margin:0;color:var(--navy);font-size:18px;line-height:1.2}.professional-training-meta{display:grid;gap:4px;color:#526579;font-size:14px;font-weight:750}.professional-training-meta span{display:inline-flex;align-items:center;gap:5px;min-width:0}.rama-chip{display:inline-flex;align-items:center;min-height:24px;padding:4px 12px;border-radius:10px;background:#e0f2fe;color:#0369a1;font-size:11px;font-weight:900}.professional-training-badge{display:inline-flex;align-items:center;min-height:26px;gap:5px;padding:4px 13px;border-radius:999px;font-size:12px;font-weight:900}.professional-training-badge.aprobado{background:#dcfce7;color:#166534}.professional-training-badge.pendiente{background:#fef3c7;color:#92400e}.professional-training-badge.reprobado{background:#fee2e2;color:#991b1b}.btn-cap{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:38px;border:0;border-radius:10px;padding:9px 13px;color:#fff;font-size:13px;font-weight:900;cursor:pointer}.btn-cap:disabled{opacity:.55;cursor:not-allowed}.btn-material{background:#e0f2fe;color:#0369a1}.btn-examen{background:#1b3a6b}.btn-cert{background:#c6f6d5;color:#047857}.professional-exam-list{display:grid;gap:16px}.professional-exam-question{display:grid;gap:12px;padding:18px;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc}.professional-exam-question h3{margin:0;color:var(--navy);font-size:17px}.professional-exam-options{display:grid;gap:9px}.professional-exam-options label{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;padding:12px 14px;border:1.5px solid #d8e0eb;border-radius:12px;background:#fff;color:#08243a;font-weight:800;cursor:pointer}.professional-exam-options input{width:18px;height:18px;accent-color:var(--teal)}.professional-exam-result{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:14px;font-weight:900}.professional-exam-result strong,.professional-exam-result span{display:block}.professional-exam-result span{margin-top:2px;font-size:13px}.professional-exam-result.approved{background:#dcfce7;color:#166534}.professional-exam-result.failed{background:#fee2e2;color:#991b1b}.portal-section-card{padding:36px 40px;border:1px solid rgba(27,90,166,.05);border-radius:28px;background:#fff;box-shadow:0 8px 20px #1b3a6b14;margin-bottom:24px}.portal-deliveries-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.portal-delivery-card{display:grid;gap:12px;border:1px solid #dbe6f0;border-radius:16px;background:#f8fbfe;padding:16px}.portal-delivery-card strong,.delivery-items-list strong,.delivery-summary-box strong{color:#08243a;font-weight:950}.portal-delivery-card span,.portal-delivery-card small,.delivery-items-list span,.delivery-items-list small,.delivery-summary-box span{display:block;color:#64748b;font-size:13px;font-weight:750;overflow-wrap:anywhere}.portal-delivery-meta{display:flex;gap:8px;flex-wrap:wrap}.portal-delivery-meta span{border-radius:999px;background:#e0f2fe;color:#075985;padding:6px 10px;font-size:12px;font-weight:900}.portal-section-title{display:flex;align-items:flex-start;gap:13px;margin-bottom:20px}.portal-section-title>div:first-child{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:#e8f8fa;color:var(--teal)}.portal-section-title h2{margin:0;font-size:21px}.portal-section-title p{margin:4px 0 0;color:var(--muted)}.profile-photo-row{display:flex;align-items:center;gap:18px;padding:18px;border-radius:18px;background:#f8fafc;margin-bottom:20px}.profile-photo-preview{width:86px;height:86px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:linear-gradient(135deg,#1baab5,#1b3a6b);color:#fff;font-size:28px;font-weight:950;flex:0 0 auto}.profile-photo-preview img{width:100%;height:100%;object-fit:cover}.profile-photo-row>div:last-child{display:grid;gap:7px}.profile-photo-row span{color:var(--muted)}.portal-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 20px;align-items:start}.portal-field{display:grid;grid-template-rows:auto 52px;gap:8px;min-width:0;color:var(--navy);font-size:14px;font-weight:900}.portal-field-label{display:flex;align-items:center;gap:4px;min-height:18px;line-height:18px;white-space:nowrap}.portal-required{color:#e74c3c}.portal-field input,.portal-field select{width:100%;min-width:0;height:52px;border:1.5px solid #d8e0eb;border-radius:14px;padding:12px 14px;font:inherit;font-weight:700;color:#0f172a;background:#fff}.portal-field select{overflow:hidden;text-overflow:ellipsis}.portal-field input:disabled{background:#f8fafc;color:#64748b}.portal-field select:disabled{background:#f8fafc;color:#94a3b8}.wide-field{grid-column:1 / -1}.banking-note{margin-bottom:18px;padding:13px 16px;border-radius:14px;background:#f0f9ff;color:#075985;font-weight:850}.portal-doc-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.portal-doc-card{display:grid;gap:13px;padding:20px;border:1.5px solid var(--border);border-radius:18px;background:#fff;position:relative;overflow:hidden;transition:all .25s ease}.portal-doc-card:hover{border-color:var(--teal);box-shadow:0 8px 20px #1b3a6b14}.portal-doc-card.state-vigente,.portal-doc-card.state-sin_vencimiento{border-left:4px solid #27ae60}.portal-doc-card.state-vencer{border-left:4px solid #f39c12}.portal-doc-card.state-vencido{border-left:4px solid #e74c3c}.portal-doc-card.state-sin_cargar{border-left:4px solid #bdc3c7}.portal-doc-card.upload-validating,.portal-doc-card.upload-success{border-left:4px solid #27ae60}.portal-doc-card.upload-error{border-left:4px solid #e74c3c}.portal-doc-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.portal-doc-head strong{overflow-wrap:anywhere}.portal-doc-badge{border-radius:999px;padding:4px 10px;font-size:11px;font-weight:800;white-space:nowrap;background:#eef2f7;color:#64748b}.portal-doc-badge.vigente,.portal-doc-badge.sin_vencimiento{background:#eafaf1;color:#27ae60}.portal-doc-badge.vencer{background:#fef9e7;color:#d68910}.portal-doc-badge.vencido{background:#fdf2f2;color:#e74c3c}.portal-upload-zone{min-height:104px;border:1.5px dashed var(--border);border-radius:14px;display:grid;place-items:center;gap:4px;background:#f8fafc;color:#64748b;cursor:pointer;text-align:center;padding:14px}.portal-upload-zone.has-file{border-color:#27ae60;background:#eafaf1;color:#166534}.portal-upload-zone.validating{border-color:#27ae60;background:#eafaf1;color:#166534;cursor:progress}.portal-upload-zone:disabled{opacity:1}.portal-ia-icon{font-size:26px;line-height:1}.portal-upload-zone span{font-weight:900;overflow-wrap:anywhere}.portal-upload-zone small{color:var(--muted)}.portal-upload-feedback{border-radius:12px;padding:10px 12px;font-size:13px;font-weight:850;line-height:1.35}.portal-upload-feedback.success{background:#dcfce7;color:#166534}.portal-upload-feedback.error{background:#fee2e2;color:#991b1b}.portal-rethus-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #bfdbfe;border-radius:10px;padding:9px 12px;background:#eff6ff;color:#1d4ed8;font-weight:900;cursor:pointer}.portal-camera-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid #bbf7d0;border-radius:10px;padding:9px 12px;background:#f0fdf4;color:#166534;font-weight:900;cursor:pointer}.portal-doc-actions{display:flex;gap:8px;flex-wrap:wrap}.portal-doc-actions button{display:inline-flex;align-items:center;gap:6px;border:1px solid var(--border);border-radius:10px;padding:8px 11px;background:#fff;color:var(--navy);font-weight:900;cursor:pointer}.portal-list-grid{display:grid;gap:10px}.portal-list-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto auto;gap:10px;align-items:center;padding:14px 16px;border:1.5px solid var(--border);border-radius:16px;background:#fff;border-left-width:4px;border-left-color:#bdc3c7}.portal-list-row.state-vigente,.portal-list-row.state-sin_vencimiento{border-left-color:#27ae60}.portal-list-row.state-vencer{border-left-color:#f39c12}.portal-list-row.state-vencido{border-left-color:#e74c3c}.portal-list-row.upload-validating,.portal-list-row.upload-success{border-left-color:#27ae60}.portal-list-row.upload-error{border-left-color:#e74c3c}.portal-list-row strong,.portal-list-row span{display:block}.portal-list-row>div>span{color:var(--muted);font-size:13px;margin-top:3px}.portal-row-feedback{display:block;margin-top:6px;font-size:12px;font-weight:850;line-height:1.35}.portal-row-feedback.success{color:#166534}.portal-row-feedback.error{color:#991b1b}.portal-ia-modal{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:24px;background:#0f172a8c;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.portal-ia-card{width:min(576px,100%);display:grid;justify-items:center;gap:18px;padding:52px;border-radius:24px;background:#fff;box-shadow:0 28px 80px #0f172a40;text-align:center}.portal-ia-symbols{display:inline-flex;align-items:center;gap:22px;color:#ef3f6b}.portal-ia-symbols span{display:grid;place-items:center;width:58px;height:58px;border-radius:18px;background:#eef6ff;color:var(--navy)}.portal-ia-card h2{margin:0;color:#991b1b;font-family:Nunito,sans-serif;font-size:24px;font-weight:950}.portal-ia-message{margin:0;color:#334155;font-size:17px;font-weight:700;line-height:1.75}.portal-ia-help{margin:8px 0 0;color:#64748b;font-size:15px;font-weight:800;line-height:1.45}.portal-ia-action{min-width:min(304px,100%);border:0;border-radius:13px;padding:16px 22px;background:var(--navy);color:#fff;font-weight:950;font-size:16px;cursor:pointer}.portal-date-input{min-height:40px;border:1px solid var(--border);border-radius:10px;padding:8px 10px}.portal-save-bar-new{position:sticky;bottom:14px;display:flex;justify-content:flex-end;pointer-events:none}.portal-save-bar-new button{pointer-events:auto;box-shadow:0 14px 30px #1baab53d}.dynamic-section-list{display:grid;gap:14px}.dynamic-item-card{display:grid;gap:14px;padding:16px;border:1.5px solid var(--border);border-radius:16px;background:#f8fbff}.dynamic-item-header{display:flex;align-items:center;justify-content:space-between;gap:12px}.dynamic-item-header strong{color:var(--navy);font-size:16px}.compact-grid{gap:12px 14px}.icon-danger-btn{width:36px;height:36px;border:0;border-radius:10px;display:grid;place-items:center;background:#fee2e2;color:#b91c1c;cursor:pointer}.small-brand-btn{justify-self:start;margin-top:14px;padding:11px 18px}.portal-check-row{display:inline-flex;align-items:center;gap:9px;color:var(--navy);font-size:14px;font-weight:850}.portal-check-row input{width:18px;height:18px;accent-color:var(--teal)}.file-inline-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px;border-radius:14px;background:#eef6ff;color:#334155}.file-inline-row span{flex:1 1 220px;overflow-wrap:anywhere;font-weight:850}.file-inline-row .portal-row-feedback{flex:1 1 100%}.two-files-row{align-items:stretch}.vaccine-row{grid-template-columns:minmax(0,1fr) 180px}.portal-consent-warning{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:14px 16px;border:1px solid #fbbf24;border-radius:16px;background:#fffbeb;color:#92400e}.portal-consent-warning strong{color:#78350f}.portal-consent-warning span{flex:1 1 280px}.portal-consent-warning button{border:0;border-radius:999px;padding:10px 16px;background:linear-gradient(135deg,var(--navy),var(--teal));color:#fff;font-weight:900;cursor:pointer}.portal-contract-warning{display:flex;align-items:center;gap:20px;flex-wrap:wrap;padding:25px 28px 25px 34px;border:1.5px solid #f59e0b;border-radius:18px;background:#fffbeb;color:#92400e}.portal-contract-warning .portal-contract-icon{flex:0 0 32px;width:32px;height:32px;display:grid;place-items:center;color:#8b5cf6;background:#ede9fe;border-radius:0}.portal-contract-warning>div:not(.portal-contract-icon){flex:1 1 430px}.portal-contract-warning strong,.portal-contract-warning span{display:block}.portal-contract-warning strong{color:#9a4b00;font-size:18px;font-weight:950}.portal-contract-warning span{max-width:460px;margin-top:4px;font-size:15px;line-height:1.35;color:#78350f}.portal-contract-warning .secondary-btn,.portal-contract-warning .primary-btn{min-height:42px;border:0;border-radius:12px;padding:12px 20px;font-weight:950;box-shadow:none}.portal-contract-warning .secondary-btn{background:var(--navy);color:#fff}.portal-contract-warning .primary-btn{background:#f59e0b;color:#fff}.portal-camera-modal,.portal-signature-modal{position:fixed;inset:0;z-index:1300;display:grid;place-items:center;padding:18px;background:#0f172aad;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.portal-camera-card,.portal-signature-card{width:min(720px,100%);max-height:calc(100vh - 36px);overflow:auto;border-radius:22px;background:#fff;box-shadow:0 28px 80px #0f172a4d}.delivery-signature-card{width:min(860px,100%)}.delivery-summary-box,.delivery-items-list{display:grid;gap:10px;margin:16px 22px 0}.delivery-summary-box{grid-template-columns:repeat(3,minmax(0,1fr))}.delivery-summary-box div,.delivery-items-list article{min-width:0;border:1px solid #e5eef6;border-radius:14px;background:#f8fbfe;padding:12px}.delivery-location-btn{align-self:end;min-height:44px}.portal-camera-header,.portal-signature-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 22px;background:linear-gradient(135deg,var(--navy),var(--teal));color:#fff}.portal-camera-header h2,.portal-signature-header h2{display:inline-flex;align-items:center;gap:8px;margin:0;font-size:21px}.portal-camera-header p,.portal-signature-header p{margin:5px 0 0;opacity:.9;font-size:13px}.portal-camera-header button,.portal-signature-header button{width:34px;height:34px;border:0;border-radius:50%;background:#ffffff2e;color:#fff;font-size:18px;cursor:pointer}.portal-camera-steps{display:flex;gap:8px;flex-wrap:wrap;padding:16px 22px 0}.portal-camera-steps span{border-radius:999px;padding:8px 12px;background:#f1f5f9;color:#64748b;font-weight:900;font-size:12px}.portal-camera-steps .active{background:#dbeafe;color:#1d4ed8}.portal-camera-steps .done{background:#dcfce7;color:#166534}.portal-camera-view{position:relative;margin:16px 22px;overflow:hidden;border-radius:18px;background:#0f172a}.portal-camera-view video{display:block;width:100%;min-height:300px;object-fit:cover}.portal-camera-guide{position:absolute;inset:18%;border:3px solid rgba(255,255,255,.92);border-radius:18px;box-shadow:0 0 0 999px #0f172a3d}.portal-camera-preview{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;padding:18px 22px}.portal-camera-preview div{display:grid;gap:8px}.portal-camera-preview span{color:var(--navy);font-weight:900}.portal-camera-preview img{width:100%;border-radius:14px;border:1px solid var(--border)}.portal-camera-error{margin:0 22px 12px;padding:11px 13px;border-radius:12px;background:#fee2e2;color:#991b1b;font-weight:850}.portal-camera-actions,.portal-signature-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;padding:0 22px 22px}.portal-signature-acceptance{display:flex;gap:10px;align-items:flex-start;margin:18px 22px 0;padding:13px 14px;border:1px solid #fcd34d;border-radius:14px;background:#fffbeb;color:#78350f;font-size:13px;line-height:1.45}.portal-signature-acceptance input{margin-top:3px;accent-color:var(--teal)}.portal-signature-pad{display:grid;gap:6px;margin:16px 22px}.portal-signature-pad strong{color:#334155;font-size:13px}.portal-signature-pad span{color:#64748b;font-size:12px}.portal-signature-pad canvas{width:100%;height:210px;margin-top:6px;border:2px dashed var(--teal);border-radius:16px;background:#fff;touch-action:none}.portal-signature-actions{justify-content:space-between}.portal-signature-actions div{display:flex;gap:10px;flex-wrap:wrap}.portal-consent-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:18px;background:#0f172aad;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.portal-consent-card{width:min(760px,100%);max-height:calc(100vh - 36px);overflow:auto;border-radius:24px;background:#fff;box-shadow:0 24px 70px #0f172a52}.portal-consent-header{display:flex;align-items:center;gap:16px;padding:22px 26px;background:linear-gradient(105deg,#22aeb9,#1b3a6b);color:#fff}.portal-consent-header img{width:84px;height:auto}.portal-consent-header h2{margin:0;font-size:22px}.portal-consent-header p{margin:4px 0 0;color:#ffffffd1}.portal-consent-header button{margin-left:auto;width:40px;height:40px;border:0;border-radius:999px;background:#ffffff2e;color:#fff;font-size:24px;cursor:pointer}.portal-consent-body{display:grid;gap:14px;padding:24px 26px 12px;color:#334155}.portal-consent-body p{margin:0;line-height:1.55}.portal-consent-check{display:flex;gap:12px;padding:14px;border-radius:16px;background:#f0f9ff;color:var(--navy);font-weight:800}.portal-consent-check input{width:18px;height:18px;margin-top:3px;accent-color:var(--teal)}.portal-consent-check a,.portal-consent-actions a{color:var(--navy);font-weight:950}.portal-consent-body small{color:#64748b}.portal-consent-actions{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:18px 26px 24px;flex-wrap:wrap}.infrastructure-page{gap:18px}.infra-header-actions,.infra-modal-header-actions,.infra-inline-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.infra-alert-box,.infra-signed-note,.infra-danger-note,.infra-assignment-box{display:flex;align-items:center;gap:12px;border-radius:8px;padding:14px 16px;font-weight:800}.infra-alert-box{border:1px solid #fcd34d;background:#fffbeb;color:#92400e}.infra-alert-box strong,.infra-alert-box span,.infra-assignment-box strong,.infra-assignment-box span{display:block}.infra-alert-box span,.infra-assignment-box span{margin-top:3px;font-size:13px;color:#64748b}.infra-table-card{border-radius:18px;overflow:visible;box-shadow:0 12px 34px #0f172a12}.equipos-card-view{display:none}.infra-table{border-collapse:separate;border-spacing:0}.infra-table th{background:#f8fbfe;color:#405973;letter-spacing:.04em;font-weight:950;padding:15px 18px}.infra-table td{padding:17px 18px;color:#08243a;font-size:15px}.infra-table td small{color:#5f718b;font-weight:700}.infra-equipo-cell{display:flex;align-items:center;gap:13px}.infra-equipo-cell strong,.infra-equipo-cell span{display:block}.infra-equipo-cell strong{color:#08243a;font-weight:950}.infra-equipo-cell span{color:#5f718b;font-size:13px;margin-top:2px}.infra-equipo-icon{width:48px;height:48px;border-radius:999px;display:grid;place-items:center;background:linear-gradient(135deg,#1baab5,#1b3a6b);color:#fff;flex:0 0 auto}.pill.asignado{background:#eef2ff;color:#3730a3}.infra-actions{position:relative;display:flex;align-items:center;gap:7px;flex-wrap:nowrap;white-space:nowrap}.infra-actions button,.infra-anexo-actions button,.infra-anexo-actions label,.infra-modal-header-actions button{min-height:34px;border:1px solid #dbe6f0;border-radius:8px;background:#fff;color:var(--navy);padding:7px 11px;font-weight:900;display:inline-flex;align-items:center;gap:6px;cursor:pointer}.infra-actions button.qr{background:#f5f3ff;border-color:#ddd6fe;color:#6d28d9}.infra-menu-wrap{position:relative;display:inline-flex}.infra-menu{position:absolute;right:0;top:calc(100% + 7px);z-index:30;min-width:190px;display:grid;gap:4px;padding:8px;border:1px solid #dbe6f0;border-radius:10px;background:#fff;box-shadow:0 18px 36px #0f172a2b}.infra-menu button{justify-content:flex-start;border:0;background:#fff;color:#334155}.infra-menu button:hover{background:#f1f5f9}.infra-menu button.danger{color:#b91c1c}.infra-menu button.danger:hover{background:#fef2f2}.equipo-card{min-width:0;display:grid;gap:16px;padding:18px;border:1px solid #dbe6f0;border-radius:8px;background:#fff;box-shadow:0 10px 26px #0f172a0f}.equipo-card-header{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:13px}.equipo-card-header strong,.equipo-card-header span,.equipo-card-details strong,.equipo-card-details small,.equipo-card-details span{display:block;min-width:0;overflow-wrap:anywhere;word-break:normal}.equipo-card-header strong{color:#08243a;font-size:16px;font-weight:950}.equipo-card-header span{color:#5f718b;font-size:13px;font-weight:800;margin-top:2px}.equipo-card-details{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.equipo-card-details>div{min-width:0;border:1px solid #e5eef6;border-radius:8px;background:#f8fbfe;padding:11px 12px}.equipo-card-details span{color:#64748b;font-size:11px;font-weight:950;text-transform:uppercase;margin-bottom:5px}.equipo-card-details strong{color:#08243a;font-size:14px;font-weight:900}.equipo-card-details small{color:#5f718b;font-size:13px;font-weight:750;margin-top:3px}.equipo-card-footer{display:grid;gap:12px;align-items:start}.equipo-card-actions{min-width:0}.infra-modal{width:min(1120px,100%);padding:0;gap:0}.infra-hv-modal{width:min(1080px,100%);padding:0;gap:0}.infra-small-modal{width:min(760px,100%);padding:0;gap:0}.infra-modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:22px 24px;border-bottom:1px solid var(--border)}.infra-modal-header h2{font-size:24px;color:#08243a}.infra-modal-header p{margin-top:4px}.infra-modal-header>button,.infra-modal-header-actions>button:last-child{width:40px;min-height:40px;padding:0;border:0;border-radius:999px;background:#f3f7fb;display:grid;place-items:center}.infra-form-body,.infra-hv-body{display:grid;gap:20px;padding:22px 24px}.infra-form-section{display:grid;gap:15px;border:1px solid #dbe6f0;border-radius:8px;padding:18px 20px 20px;background:#f8fbfe;box-shadow:0 1px #0f172a08}.infra-form-section:last-child{border-bottom:1px solid #dbe6f0}.infra-form-section h3{margin:0 0 2px;color:#08243a;font-family:Nunito,sans-serif;font-size:17px;font-weight:900;line-height:1.2}.infra-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 16px}.infra-form-grid label,.infra-small-modal label{display:grid;gap:8px;color:#1f3b53;font-size:13px;font-weight:900;line-height:1.25}.infra-form-grid input,.infra-form-grid select,.infra-form-grid textarea,.infra-small-modal input,.infra-small-modal select,.infra-small-modal textarea{width:100%;min-width:0;border-color:#cfddea}.infra-form-grid input,.infra-form-grid select,.infra-small-modal input,.infra-small-modal select{min-height:44px}.infra-form-grid textarea,.infra-small-modal textarea{line-height:1.4}.infra-category-row{display:grid;grid-template-columns:minmax(0,1fr) 42px;gap:8px}.infra-category-row button{border:0;border-radius:8px;background:#e0f7fa;color:var(--teal);display:grid;place-items:center;cursor:pointer}.infra-check-field{grid-template-columns:auto minmax(0,1fr);align-items:center;align-content:center;min-height:44px;border:1px solid #dbe6f0;border-radius:8px;background:#fff;padding:10px 12px}.infra-check-field input{width:18px;height:18px;accent-color:var(--teal)}.infra-check-highlight{border-color:#99e2e8;background:#eefcfd;color:#075985}.infra-info-item{display:grid;gap:4px;min-width:0;border:1px solid #dbe6f0;border-radius:8px;background:#f8fbfe;padding:12px}.infra-info-item span{color:#64748b;font-size:12px;font-weight:900;text-transform:uppercase}.infra-info-item strong{color:#08243a;overflow-wrap:anywhere}.infra-photo-strip{display:flex;align-items:center;gap:14px;padding:12px;border:1px solid #dbe6f0;border-radius:8px;background:#f8fbfe}.infra-photo-strip img{width:140px;height:100px;object-fit:contain;border-radius:8px;background:#fff;border:1px solid var(--border)}.infra-photo-strip strong,.infra-photo-strip span{display:block}.infra-anexos-grid,.infra-history-section{display:grid;gap:12px}.infra-anexo-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;border:1px solid #dbe6f0;border-radius:8px;padding:13px 14px;background:#fff}.infra-anexo-row strong,.infra-anexo-row span{display:block}.infra-anexo-row>div:first-child span{color:#64748b;font-size:13px;margin-top:3px}.infra-anexo-actions{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.infra-anexo-actions label{position:relative;overflow:hidden}.infra-anexo-actions input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.infra-subtable{overflow-x:auto;border:1px solid var(--border);border-radius:8px}.infra-subtable table{min-width:760px}.infra-signed-note{margin:14px 22px 0;border:1px solid #bbf7d0;background:#f0fdf4;color:#166534}.infra-danger-note{margin:22px 22px 14px;border:1px solid #fecaca;background:#fef2f2;color:#991b1b}.infra-small-modal>.infra-form-grid,.infra-small-modal>label{margin:22px 22px 0}.danger-btn{background:#b91c1c}.recursos-tabs{background:#fff;border:1px solid var(--border);border-radius:8px;padding:0 10px}.recursos-page .page-header>div:first-child{min-width:0}.recursos-header-actions{flex:0 0 auto;justify-content:flex-end;flex-wrap:nowrap}.recursos-header-actions .secondary-btn,.recursos-header-actions .brand-action-btn{width:auto;white-space:nowrap}.recursos-grid,.recursos-provider-grid,.ordenes-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.recurso-card,.proveedor-card,.orden-card{min-width:0;display:grid;gap:14px;border:1px solid #dbe6f0;border-radius:8px;background:#fff;padding:18px;box-shadow:0 10px 26px #0f172a0f}.recurso-card-head,.orden-card-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:13px}.recurso-card-head strong,.orden-card-head strong,.proveedor-card strong{display:block;color:#08243a;font-size:16px;font-weight:950;overflow-wrap:anywhere}.recurso-card-head span,.orden-card-head span,.proveedor-card span{display:block;color:#5f718b;font-size:13px;font-weight:750;margin-top:2px;overflow-wrap:anywhere}.recurso-icon{width:46px;height:46px;border-radius:999px;display:grid;place-items:center;background:linear-gradient(135deg,#1baab5,#1b3a6b);color:#fff}.tag.cold{background:#e0f2fe;color:#075985}.tag.lasa{background:#dbeafe;color:#1d4ed8}.recurso-dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:0}.recurso-dl div{min-width:0;border:1px solid #e5eef6;border-radius:8px;background:#f8fbfe;padding:10px 11px}.recurso-dl dt{color:#64748b;font-size:11px;font-weight:950;text-transform:uppercase;margin-bottom:5px}.recurso-dl dd{margin:0;color:#08243a;font-size:13px;font-weight:850;overflow-wrap:anywhere}.recursos-actions{display:flex;gap:8px;flex-wrap:wrap}.recursos-actions button{min-height:34px;border:1px solid #dbe6f0;border-radius:8px;background:#fff;color:var(--navy);padding:7px 11px;font-weight:900;display:inline-flex;align-items:center;justify-content:center;gap:6px;cursor:pointer}.recursos-actions button.danger{color:#b91c1c;background:#fff7f7;border-color:#fecaca}.recursos-placeholder{display:flex;align-items:center;gap:14px;padding:20px}.recursos-form-section{display:grid;gap:15px;border:1px solid #dbe6f0;border-radius:8px;padding:18px 20px 20px;background:#f8fbfe}.recursos-form-section h3{margin:0;color:#08243a;font-family:Nunito,sans-serif;font-size:17px;font-weight:900}.recursos-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 16px}.recursos-form-grid label{display:grid;gap:8px;color:#1f3b53;font-size:13px;font-weight:900}.recursos-form-grid input,.recursos-form-grid select,.recursos-form-grid textarea{width:100%;min-width:0;border-color:#cfddea}.recursos-check-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;max-height:220px;overflow:auto;border:1px solid #dbe6f0;border-radius:8px;background:#fff;padding:12px}.recursos-check-list label{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:8px;font-size:13px;font-weight:800}.recursos-check-list input{width:auto;min-height:0;margin-top:2px;accent-color:var(--teal)}.recursos-lasa-alert{border:1px solid #bfdbfe;background:#eff6ff;color:#1d4ed8;border-radius:8px;padding:12px;font-weight:850}.compras-card{display:grid;gap:16px}.compras-toolbar{margin-bottom:0}.orden-section-head{display:flex;justify-content:space-between;align-items:center;gap:14px}.orden-section-head h3{margin:0}.orden-section-head .secondary-btn{width:auto;min-height:38px;padding:8px 14px;border-radius:999px}.orden-detalles{display:grid;gap:14px}.orden-detalle-row{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(90px,.55fr) minmax(130px,.75fr) minmax(130px,.8fr) minmax(110px,.6fr) auto;gap:12px;align-items:end;border:1px solid #dbe6f0;border-radius:8px;background:#fff;padding:14px}.orden-detalle-row label{display:grid;gap:7px;min-width:0;color:#1f3b53;font-size:12px;font-weight:900}.orden-detalle-row input,.orden-detalle-row select{width:100%;min-width:0}.orden-detalle-row .wide-field{grid-column:1 / -1}.despacho-detalle-row{grid-template-columns:minmax(260px,1.5fr) minmax(100px,.5fr) minmax(110px,.55fr) auto}.recepcion-detalle-row{display:grid;grid-template-columns:minmax(220px,1.3fr) repeat(5,minmax(110px,.7fr));gap:12px;align-items:end;border:1px solid #dbe6f0;border-radius:8px;background:#fff;padding:14px}.recepcion-detalle-row label{display:grid;gap:7px;min-width:0;color:#1f3b53;font-size:12px;font-weight:900}.recepcion-detalle-row input,.recepcion-detalle-row select{width:100%;min-width:0}.recepcion-detalle-row .infra-check-field{align-self:stretch;align-content:center}.recepcion-detalle-row .wide-field{grid-column:1 / -1}.orden-detalle-total{display:grid;gap:5px;min-height:44px;align-content:center;border:1px solid #e5eef6;border-radius:8px;background:#f8fbfe;padding:8px 10px}.orden-detalle-total span,.orden-total-box span{color:#64748b;font-size:11px;font-weight:950;text-transform:uppercase}.orden-detalle-total strong,.orden-total-box strong{color:#08243a;font-size:15px;font-weight:950}.orden-total-box{display:flex;justify-content:flex-end;align-items:center;gap:16px;border:1px solid #dbe6f0;border-radius:8px;background:#fff;padding:14px 18px}.inventory-subheading{margin-top:8px;padding-top:16px;border-top:1px solid #e5eef6}.delete-modal-actions{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:18px 42px 22px 24px}.delete-modal-actions .secondary-btn{min-height:42px;padding:10px 20px;border-radius:999px;font-size:14px;font-weight:900}.delete-modal-actions .danger-action-btn{border:0;min-height:42px;padding:10px 22px;border-radius:999px;background:linear-gradient(135deg,#dc2626,#b91c1c);color:#fff;font-size:14px;font-weight:900;box-shadow:0 10px 22px #dc262633;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.delete-modal-actions .danger-action-btn:hover{transform:translateY(-1px);box-shadow:0 14px 26px #b91c1c38;filter:brightness(.98)}@media(max-width:980px){.app-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto}.kpi-grid,.kpi-grid.four,.kpi-grid.five,.standards-grid,.system-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.main{padding:18px}.page-header{display:grid}.kpi-grid,.kpi-grid.four,.kpi-grid.five,.standards-grid,.form-grid,.detail-grid,.modal-docs-grid,.assigned-services-grid,.contract-form-grid,.create-user-form,.training-form-grid{grid-template-columns:1fr}.training-file-item{align-items:flex-start}.training-question-title-row{grid-template-columns:auto minmax(0,1fr)}.training-question-title-row .training-icon-action{grid-column:2;justify-self:end}.system-info-grid,.assigned-service-card dl{grid-template-columns:1fr}.contract-modal-body{padding:22px}.contract-date-field{grid-column:auto}.password-row{grid-template-columns:1fr}.create-user-actions,.professional-modal-actions{display:grid}.professional-modal-actions .brand-action-btn,.professional-modal-actions .close-detail-btn{width:100%;min-width:0}.table-card{overflow-x:auto}table{min-width:760px}.professional-topbar,.professional-topbar-brand,.professional-topbar-user,.professional-welcome,.profile-photo-row{display:grid;justify-items:start}.professional-topbar-user div{text-align:left}.professional-portal-content{width:min(100% - 24px,900px);padding-top:18px}.professional-welcome,.portal-section-card{padding:24px;border-radius:24px}.portal-contract-warning{padding:18px}.portal-contract-warning .secondary-btn,.portal-contract-warning .primary-btn{width:100%;justify-content:center}.portal-form-grid,.portal-doc-grid,.portal-services-grid,.delivery-summary-box,.professional-training-filters,.professional-training-grid{grid-template-columns:1fr}.professional-training-card{padding:18px}.professional-training-card dl{grid-template-columns:1fr}.portal-list-row{grid-template-columns:1fr;align-items:stretch}.portal-date-input{width:100%}}.infra-form-grid input[type=file]{width:100%;min-height:52px;padding:9px 12px;border:1px solid #dbe6f0;border-radius:14px;background:#fff;color:#334155;font-weight:800}.infra-form-grid input[type=file]::file-selector-button{border:0;border-radius:999px;background:linear-gradient(135deg,var(--teal),var(--navy));color:#fff;font-weight:900;padding:9px 16px;margin-right:12px;cursor:pointer;box-shadow:0 8px 18px #1baab52e;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.infra-form-grid input[type=file]::file-selector-button:hover{transform:translateY(-1px);box-shadow:0 12px 24px #1b3a6b2e;filter:brightness(.99)}.infra-form-grid input[type=file]::-webkit-file-upload-button{border:0;border-radius:999px;background:linear-gradient(135deg,var(--teal),var(--navy));color:#fff;font-weight:900;padding:9px 16px;margin-right:12px;cursor:pointer;box-shadow:0 8px 18px #1baab52e}.infra-modal .modal-actions{position:sticky;bottom:0;margin:18px -22px -22px;padding:18px 24px 22px;background:linear-gradient(180deg,#ffffffe0,#fff 45%);border-top:1px solid #e5eef6;display:flex;justify-content:flex-end;align-items:center;gap:14px;border-radius:0 0 18px 18px}.infra-modal .modal-actions .primary-btn{min-height:46px;padding:12px 22px;border-radius:14px;background:linear-gradient(135deg,var(--teal),#0f8fa3);color:#fff;box-shadow:0 12px 24px #1baab538;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.infra-modal .modal-actions .primary-btn:hover{transform:translateY(-1px);box-shadow:0 16px 30px #1b3a6b33;filter:brightness(.99)}.infra-modal .modal-actions .secondary-btn{min-height:46px;padding:12px 22px;border-radius:14px;background:#f1f5f9;color:#334155;box-shadow:none}.infra-modal .modal-actions .secondary-btn:hover{background:#e8eef5}.infra-modal .modal-actions{display:flex;justify-content:flex-end;align-items:center;gap:10px;padding:16px 52px 12px 24px}.infra-modal .modal-actions .infra-save-btn{border:0;min-height:40px;padding:9px 18px;border-radius:999px;background:linear-gradient(135deg,var(--teal),var(--navy));color:#fff;box-shadow:0 10px 22px #1baab533;font-size:14px;font-weight:900;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}.infra-modal .modal-actions .infra-save-btn:hover{transform:translateY(-1px);box-shadow:0 14px 26px #1b3a6b33;filter:brightness(.99)}.infra-modal .modal-actions .infra-save-btn svg{width:16px;height:16px;stroke-width:3}.infra-modal .modal-actions .secondary-btn{min-height:40px;padding:9px 18px;border-radius:999px;font-size:14px}.infrastructure-page{min-width:0;width:100%;max-width:100%;overflow-x:hidden}.infrastructure-page .page-content,.infrastructure-page .content-card,.infrastructure-page .table-card,.infrastructure-page .infra-table-card{min-width:0;max-width:100%}.infrastructure-page .stats-grid,.infrastructure-page .infra-stats-grid{min-width:0}@media(max-width:1380px){.equipos-table-view{display:none}.equipos-card-view{display:grid;grid-template-columns:repeat(2,minmax(280px,1fr));gap:18px}.infra-table-card{padding:18px;background:transparent;border:0;box-shadow:none;overflow:visible}.equipo-card .infra-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;white-space:normal}.equipo-card .infra-actions>button,.equipo-card .infra-menu-wrap,.equipo-card .infra-menu-wrap>button{width:100%;justify-content:center}.equipo-card .infra-menu{left:auto;right:0}}@media(max-width:720px){.infrastructure-page .page-header,.infrastructure-page .infra-header-actions,.infrastructure-page .toolbar{display:grid;grid-template-columns:1fr;align-items:stretch}.infrastructure-page .toolbar select,.infrastructure-page .search-field{width:100%;min-width:0}.infrastructure-page .kpi-grid.five{grid-template-columns:repeat(2,minmax(0,1fr))}.equipos-card-view{grid-template-columns:1fr}.infra-table-card{padding:0}.equipo-card{padding:15px}.equipo-card-details{grid-template-columns:1fr}.equipo-card .infra-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.equipo-card .infra-menu-wrap{grid-column:1 / -1}.equipo-card .infra-menu{width:100%;min-width:0}.infra-modal{width:calc(100vw - 20px);max-height:calc(100vh - 20px);overflow:auto}.infra-modal-header,.infra-form-body{padding:18px}.infra-form-section{padding:16px}.infra-form-grid{grid-template-columns:1fr}.infra-modal .modal-actions{margin:12px 0 0;padding:14px 18px 18px;display:grid;grid-template-columns:1fr;border-radius:0}.infra-modal .modal-actions .secondary-btn,.infra-modal .modal-actions .infra-save-btn{width:100%}.delete-modal-actions{padding:16px 20px 22px;flex-direction:column-reverse;align-items:stretch}.delete-modal-actions .secondary-btn,.delete-modal-actions .danger-action-btn{width:100%}.recursos-grid,.recursos-provider-grid,.ordenes-grid,.recurso-dl,.recursos-form-grid,.recursos-check-list{grid-template-columns:1fr}.orden-section-head,.orden-total-box{display:grid;grid-template-columns:1fr;justify-items:stretch}.orden-section-head .secondary-btn{width:100%}.orden-detalle-row,.recepcion-detalle-row{grid-template-columns:1fr}.orden-detalle-row .icon-danger-btn{width:100%}.recursos-actions{display:grid;grid-template-columns:1fr}.recursos-actions button{width:100%}.recursos-page .page-header{display:grid;grid-template-columns:1fr;align-items:stretch}.recursos-header-actions{display:grid;grid-template-columns:1fr;justify-content:stretch;width:100%}.recursos-header-actions .secondary-btn,.recursos-header-actions .brand-action-btn{width:100%}}@media(max-width:420px){.infrastructure-page .kpi-grid.five{grid-template-columns:1fr}}
