
:root{font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.5;color:#233447;background:#f3f5f7;--blue:#244d70;--accent:#244d70;--accent-soft:#edf2f6;--border:#d9e0e7;--surface:#fff;--ink:#233447;--muted:#5a6878;--radius:12px;--shadow:0 2px 8px #20354a07}
:root[data-theme="yearend"]{--blue:#6c5228;--accent:#6c5228;--accent-soft:#f5f0e7}
:root[data-theme="wellbeing"]{--blue:#28614e;--accent:#28614e;--accent-soft:#eaf3ef}
*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a{color:var(--accent)}.lab{padding:7px 16px;text-align:center;font-size:.72rem;background:#17324c;color:#edf3f8}header{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:16px max(24px,calc((100vw - 1440px)/2));background:var(--surface);border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:10px;color:var(--ink);font-weight:700;text-decoration:none;white-space:nowrap;font-size:.9rem}.brand .muted{font-weight:400}.mark{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:#17324c;color:#fff}.header-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.muted{font-size:.82rem;color:var(--muted)}main{max-width:1160px;margin:auto;padding:28px 24px 56px}.hero{max-width:760px;margin-bottom:24px}.eyebrow{font-size:.68rem;font-weight:750;letter-spacing:.08em;color:var(--muted);margin:0 0 8px}h1{font-size:clamp(1.6rem,3vw,2.1rem);line-height:1.2;letter-spacing:-.035em;margin:8px 0 12px}h2{font-size:1.35rem;letter-spacing:-.025em;margin:0}h3{font-size:1.05rem;margin:0 0 12px}h4{font-size:.95rem;margin:0 0 10px}p{color:var(--muted);margin:8px 0 16px;overflow-wrap:anywhere}label{display:block;font-size:.82rem;font-weight:650;margin:8px 0 6px}input,select,textarea{width:100%;min-height:44px;padding:10px 12px;background:#fff;color:var(--ink);border:1px solid #aebbc9;border-radius:8px;font-size:.94rem}textarea{min-height:100px}button,.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 15px;border:1px solid transparent;border-radius:8px;font-size:.82rem;font-weight:650;color:#fff;background:var(--blue);text-decoration:none;cursor:pointer;box-shadow:none}button:hover,.button:hover{filter:brightness(.96)}button:disabled{opacity:.48;cursor:not-allowed;filter:none}.secondary{background:var(--surface);color:var(--ink);border-color:var(--border)}:focus-visible{outline:3px solid #3979ad;outline-offset:3px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin-bottom:20px;box-shadow:var(--shadow);min-width:0}.notice{background:var(--accent-soft);color:var(--ink);padding:12px 14px;border:1px solid var(--border);border-radius:8px;font-size:.84rem;overflow-wrap:anywhere}.hero .notice{font-size:.78rem;padding:9px 12px}.badge{display:inline-block;padding:4px 9px;border:1px solid #d8e0e7;border-radius:6px;background:#eff2f5;color:#42566a;font-size:.72rem;font-weight:650;line-height:1.5;white-space:nowrap}.state-submitted{background:#edf2fa;color:#284e78;border-color:#d1dfef}.state-changes_requested{background:#fbf3e8;color:#78531b;border-color:#e9dbc3}.state-approved{background:#eef2f6;color:#38506a;border-color:#d6dfe7}.state-filed,.state-closed{background:#edf5ef;color:#2a5e40;border-color:#d1e4d6}.section-head,.dialog-head{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px}.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:14px;align-items:end}.actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px}.toolbar-actions{margin:0}form>button{margin-top:16px}.toolbar-actions button{font-size:.8rem}#login{max-width:480px}#login form>button{width:100%}#code-form{margin-top:20px;padding-top:16px;border-top:1px solid var(--border)}#create summary{font-weight:700}#create details>p{font-size:.85rem;margin-top:12px}summary{cursor:pointer;min-height:44px;padding:10px 0}details>summary:focus-visible{outline-offset:2px}hr{border:0;border-top:1px solid var(--border);margin:24px 0}.workspace-nav{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:20px}.workspace-nav button{background:transparent;color:var(--muted);border-color:transparent}.workspace-nav button[aria-current="page"]{background:var(--accent-soft);color:var(--accent);border-color:var(--border)}.nav-caption{display:none}.nav-icon{width:18px;height:18px;flex:none}.staff-workspace main{max-width:1440px}.staff-workspace .hero{max-width:none}.staff-workspace #workspace{position:relative;padding-left:230px;min-height:640px}.staff-workspace .workspace-nav{position:absolute;left:0;top:0;width:208px;display:flex;flex-direction:column;gap:4px;padding:12px 8px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.staff-workspace .workspace-nav button{justify-content:flex-start;text-align:left;padding:10px 12px;font-size:.81rem}.staff-workspace .workspace-nav button[aria-current="page"]{border-color:transparent;box-shadow:inset 3px 0 var(--accent)}.staff-workspace .nav-caption{display:block;font-size:.62rem;letter-spacing:.07em;font-weight:750;padding:8px 12px;color:var(--muted)}#nav-toggle{display:none}.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:0;margin:20px 0;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:#fafbfc}.metric{padding:16px;border-right:1px solid var(--border);min-width:0}.metric:last-child{border-right:0}.metric span,.metric small{display:block;color:var(--muted);font-size:.77rem}.metric strong{display:block;font-size:1.5rem;line-height:1.3;margin:8px 0;color:var(--ink);letter-spacing:-.02em}.queue-summary{display:flex;gap:8px;flex-wrap:wrap;margin:16px 0}.queue-count{background:#fafbfc;border:1px solid var(--border);color:var(--muted);padding:8px 12px;justify-content:space-between;font-size:.77rem}.queue-count strong{font-size:.9rem;color:var(--ink)}.queue-count[aria-pressed="true"]{background:var(--accent-soft);color:var(--accent);border-color:var(--accent)}.tracking-filters{margin:12px 0}.tracking-filters input,.tracking-filters select{font-size:.86rem}.request-list{margin-top:16px}.table-scroll{overflow-x:auto;border:1px solid var(--border);border-radius:10px;max-width:100%}.tracking-table{width:100%;min-width:880px;border-collapse:collapse;text-align:left;font-size:.82rem}.tracking-table th{background:#f3f5f7;color:#4c5e71;font-weight:650;font-size:.75rem;padding:11px 12px;white-space:nowrap}.tracking-table td{padding:12px;vertical-align:top;border-top:1px solid var(--border)}.tracking-table tbody tr{background:#fff}.tracking-table tbody tr:nth-child(even){background:#fafbfc}.tracking-table tbody tr[data-request-row]{cursor:pointer}.tracking-table tbody tr:hover,.tracking-table tbody tr:focus-within{background:var(--accent-soft)}.cell-secondary{display:block;font-size:.74rem;color:var(--muted);margin-top:5px;overflow-wrap:anywhere}.record-link{padding:0;min-height:44px;box-shadow:none;color:var(--accent);background:transparent;text-align:left;font-size:.86rem;max-width:230px;justify-content:flex-start;overflow-wrap:anywhere}.row-actions{display:flex;flex-direction:column;gap:6px;min-width:140px}.row-actions button{font-size:.74rem;padding:8px 10px}.pagination{display:flex;justify-content:flex-end;align-items:center;gap:12px;margin-top:16px;font-size:.78rem}.empty-state{padding:24px 16px;text-align:center;background:#fafbfc;border:1px dashed var(--border);border-radius:8px}.empty-state p{margin-bottom:0}.directory{display:grid;gap:16px;margin-top:20px}.portal-case-list,.customer-requests{list-style:none;padding:0;margin:0}.portal-case-list li{padding:14px 0;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.portal-case-list strong{font-size:.9rem;overflow-wrap:anywhere}.portal-case-list li span:not(.badge){display:block;font-size:.8rem;color:var(--muted);margin:5px 0}.customer-requests{display:grid;gap:12px}.customer-requests li{border:1px solid var(--border);border-radius:10px;padding:16px;background:var(--surface)}.customer-request-head{display:flex;justify-content:space-between;align-items:start;gap:12px;flex-wrap:wrap;font-size:.94rem}.customer-requests p{font-size:.86rem;margin:10px 0}.customer-request-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.customer-request-footer>span{font-size:.74rem;color:var(--muted)}.customer-requests .lookup-number{border-top:1px solid var(--border);padding-top:10px;margin-bottom:0;overflow-wrap:anywhere}.process-list,.flow-overview{list-style:none;padding:0;display:grid;gap:12px}.process-list li{display:flex;gap:12px;padding:16px;background:#fafbfc;border:1px solid var(--border);border-radius:8px}.process-list h4{margin:0}.process-list p{margin-bottom:0;font-size:.86rem}.step-number{display:grid;place-items:center;flex:none;width:30px;height:30px;background:var(--accent-soft);color:var(--accent);border-radius:6px;font-size:.8rem;font-weight:700}.flow-overview{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:28px}.flow-overview li{padding:16px;border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:8px;background:#fafbfc}.flow-overview strong{display:block;font-size:.9rem}.flow-overview span{display:block;margin-top:8px;font-size:.84rem;color:var(--muted)}.help-topics details{border-top:1px solid var(--border);padding:4px 0}.help-topics summary{font-weight:650;font-size:.9rem}.help-topics p,.help-topics li{font-size:.88rem;color:var(--muted)}.help-topics li{margin-bottom:8px}.help-topics ol{padding-left:22px}.appearance-settings{margin-top:24px;padding-top:20px;border-top:1px solid var(--border)}.appearance-settings label{max-width:320px}.record-sections{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:14px}.record-card{padding:16px;background:#fafbfc;border:1px solid var(--border);border-radius:10px;min-width:0}.record-card h4{color:var(--ink);margin:0 0 12px}.record-card dl{margin:0}.record-card dl>div{padding:8px 0;border-top:1px solid var(--border)}.record-card dt{font-size:.77rem;color:var(--muted)}.record-card dd{margin:3px 0 0;font-size:.94rem;font-weight:550;overflow-wrap:anywhere}.docs{list-style:none;padding:0}.docs li{padding:14px 0;border-bottom:1px solid var(--border);overflow-wrap:anywhere}.docs strong{font-size:.9rem}.docs button{margin:8px 6px 0 0}small{font-size:.77rem}dialog{color:var(--ink);width:min(920px,calc(100% - 24px));max-height:90dvh;padding:22px;border:1px solid var(--border);border-radius:14px;box-shadow:0 16px 60px #152c4130}dialog::backdrop{background:#14253680}.dialog-head{position:sticky;top:-22px;z-index:1;background:var(--surface);padding-block:10px;border-bottom:1px solid var(--border)}#case-management:focus{outline:3px solid #3979ad;outline-offset:3px}#new-link a{overflow-wrap:anywhere}#toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%);width:max-content;max-width:calc(100% - 24px);padding:14px 18px;background:#17324c;color:#fff;border-radius:8px;box-shadow:0 5px 22px #14253630;z-index:10;font-size:.9rem}.stages{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.stages article{padding:16px;background:#fafbfc;border:1px solid var(--border);border-radius:8px}.stages span{font-size:.8rem}.stages h3{margin-top:12px}.stages p{font-size:.85rem}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}pre{white-space:pre-wrap;overflow-wrap:anywhere}
@media(max-width:1000px){.staff-workspace #workspace{padding-left:0}.staff-workspace .workspace-nav{display:none;position:static;width:auto;margin-bottom:20px}.staff-workspace.nav-open .workspace-nav{display:flex}.staff-workspace #nav-toggle{display:inline-flex}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.metric{border-bottom:1px solid var(--border)}.metric:nth-child(2n){border-right:0}.metric:nth-last-child(-n+2){border-bottom:0}}
@media(max-width:600px){header{padding:12px 16px;align-items:flex-start;flex-wrap:wrap}.brand .muted{display:none}.header-actions{gap:6px;width:100%}.header-actions button{font-size:.75rem;padding:8px 12px}main{padding:20px 16px 40px}.hero{margin-bottom:20px}.hero>p:not(.eyebrow){font-size:.9rem}.card{padding:16px;border-radius:10px}.grid{grid-template-columns:1fr;gap:10px}.section-head{align-items:flex-start}.workspace-nav{gap:4px}.workspace-nav button{font-size:.77rem;padding:8px 10px}.nav-icon{width:16px;height:16px}.flow-overview{grid-template-columns:1fr}.metrics{margin-block:16px}.metric{padding:12px}.metric strong{font-size:1.3rem}.metric span,.metric small{font-size:.74rem}.queue-summary{gap:6px}.queue-count{padding:8px 10px;font-size:.74rem}.record-sections{grid-template-columns:1fr}.pagination{justify-content:center;gap:10px}.customer-request-footer button{width:100%}.customer-request-head .badge{white-space:normal}dialog{padding:16px;max-height:94dvh;width:calc(100% - 16px);border-radius:12px}.dialog-head{top:-16px}.dialog-head h2{font-size:1.15rem}.process-list li{padding:12px}.stages{grid-template-columns:1fr}.tracking-table{min-width:0}.tracking-table thead{position:absolute;width:1px;height:1px;clip-path:inset(50%);overflow:hidden}.tracking-table,.tracking-table tbody{display:block}.tracking-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);padding:12px;border-top:1px solid var(--border)}.tracking-table td{display:block;border:0;padding:6px;min-width:0;overflow-wrap:anywhere}.tracking-table td:first-child,.tracking-table td:last-child{grid-column:1/-1}.tracking-table td:nth-child(2)::before{content:'Tipo de solicitud';display:block;color:var(--muted);font-size:.7rem;margin-bottom:4px}.tracking-table td:nth-child(3)::before{content:'Entidad';display:block;color:var(--muted);font-size:.7rem;margin-bottom:4px}.tracking-table td:nth-child(4)::before{content:'Estado';display:block;color:var(--muted);font-size:.7rem;margin-bottom:4px}.tracking-table td:nth-child(5)::before{content:'Actualización';display:block;color:var(--muted);font-size:.7rem;margin-bottom:4px}.row-actions{flex-direction:row;flex-wrap:wrap}.row-actions button{flex:1}.record-link{max-width:none}.tracking-table caption:not(.sr-only){display:block;text-align:left;padding:12px}#portal-panel .tracking-table td::before{content:none}.notice{font-size:.8rem}}
@media(prefers-reduced-motion:no-preference){button,a{transition:background-color .15s,color .15s,border-color .15s}}
@media print{header,.lab,.workspace-nav,.toolbar-actions,.header-actions,#toast{display:none!important}.staff-workspace #workspace{padding:0}.card{box-shadow:none}body{background:#fff}main{padding:0}}

.staff-workspace #tracking-filters-disclosure>summary{display:none}#tracking-filters-disclosure>summary{font-size:.83rem;color:var(--muted)}#tracking-filters-disclosure{margin-top:8px}

.sanitas-readiness{border:1px solid var(--border);border-radius:10px;padding:16px;margin-top:20px;background:#fafbfc}.sanitas-readiness li{font-size:.85rem;color:var(--muted);margin-bottom:4px}.sanitas-fields{border:1px solid var(--border);border-radius:8px;padding:16px;margin:20px 0}.sanitas-fields legend{font-weight:650;font-size:.9rem}
#sanitas-stock input[type=file]{max-width:100%}#sanitas-prepared-form{margin-block:16px;padding:16px;border:1px solid var(--border);border-radius:8px}#sanitas-prepared-form input{display:block;width:100%;margin-block:8px}#sanitas-stock td{overflow-wrap:anywhere}
.sanitas-readiness input[type=checkbox]{width:22px;min-height:22px;height:22px;padding:0;vertical-align:middle;margin-right:8px}
@media(max-width:600px){#sanitas-stock .tracking-table td:nth-child(2)::before{content:'Lote'}#sanitas-stock .tracking-table td:nth-child(3)::before{content:'Estado'}#sanitas-stock .tracking-table td:nth-child(4)::before{content:'Expediente'}}

#pdf-preview{width:100%;height:75dvh;border:1px solid var(--border);border-radius:8px}#preview-download{margin-top:12px}

#web-release-reviewed{width:22px;height:22px;min-height:22px;vertical-align:middle;margin-right:8px}#web-editor details{margin-top:16px;border:1px solid var(--border);border-radius:10px;padding:16px}#web-editor textarea{min-height:100px}

/* Pliegue del expediente para quien debe llenar sus datos: lo importante primero. */
details.fold{border:1px solid var(--line,#dfe5ee);border-radius:12px;padding:10px 14px;margin-block:12px;background:#f7f9fc}
details.fold>summary{cursor:pointer;font-weight:600;min-height:44px;display:flex;align-items:center}

/* Pasos de la solicitud para el solicitante: valor, pago, datos. */
.flow-steps{list-style:none;display:grid;gap:8px;margin:12px 0;padding:0}
.flow-steps li{display:flex;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line,#dfe5ee);border-radius:12px;background:#f7f9fc;color:#536277}
.flow-steps li span{display:grid;place-items:center;width:26px;height:26px;border-radius:50%;background:#dfe5ee;font-weight:700;font-size:.85rem;flex:none}
.flow-steps li.done{color:#15243a}.flow-steps li.done span{background:#1649d4;color:#fff}
.flow-steps li.now{border-color:#1649d4;background:#eef3ff;color:#15243a;font-weight:600}.flow-steps li.now span{background:#1649d4;color:#fff}
.quote-panel{border:1px solid var(--line,#dfe5ee);border-radius:12px;padding:12px;margin-top:12px;background:#f7f9fc}
