/* ─────────────────────────────────────────────────────────────
   Sura class layer. Rules transcribed from the corporate library
   (styles.1.0.0.min.css + the shadow-DOM stylesheets inside
   wc-sura-base.js) and from the Sura HIS layout guidelines
   DS-LNT-001..005. Values are the library's own — do not round.
   ───────────────────────────────────────────────────────────── */

/* Reset the library applies inside every web component */
.sura-app,.sura-app *,.sura-app *:before,.sura-app *:after{box-sizing:border-box}
.sura-app{font-family:var(--sura-font-family-base);color:var(--his-text-primary);background:var(--his-surface-page);line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}

/* ── Botones ─────────────────────────────────────────────── */
.sura-btn-primary-1,.sura-btn-primary-2,.sura-btn-secondary-1,.sura-btn-secondary-2,.sura-btn-danger,.sura-btn-third,.sura-btn-third-danger,.sura-btn-nav{text-align:center;text-overflow:ellipsis;overflow:hidden;font-family:var(--sura-font-family-base);font-size:1rem;font-style:normal;font-weight:700;line-height:normal}
.sura-btn-primary-1,.sura-btn-primary-2,.sura-btn-secondary-1,.sura-btn-secondary-2,.sura-btn-danger{display:inline-flex;min-width:150px;max-width:427px;padding:16px 48px;justify-content:center;align-items:center;gap:16px;flex-shrink:0;border-radius:1.75rem;border:none;height:56px;cursor:pointer}
.sura-btn-third,.sura-btn-third-danger{display:inline-flex;height:40px;min-width:143px;max-width:427px;padding:16px 24px;justify-content:center;align-items:center;gap:12px;flex-shrink:0;border-radius:1.75rem;border:none;cursor:pointer;background:transparent}
.sura-btn-primary-1{background-color:#2d6df6;color:#fff}
.sura-btn-primary-1 span,.sura-btn-primary-1 i{color:#fff}
.sura-btn-primary-1:hover,.sura-btn-primary-1:active{background-color:#0033a0}
.sura-btn-primary-2{background-color:#e3e829;color:#0033a0}
.sura-btn-primary-2 span,.sura-btn-primary-2 i{color:#0033a0}
.sura-btn-primary-2:active{background-color:#c5cb15}
.sura-btn-secondary-1{background-color:transparent;color:#0033a0;border:1px solid #0033a0}
.sura-btn-secondary-1 span,.sura-btn-secondary-1 i{color:#0033a0}
.sura-btn-secondary-1:hover{border:1px solid #2d6df6}
.sura-btn-secondary-2{background-color:#fff;color:#e3e829;border:1px solid #e3e829}
.sura-btn-secondary-2:hover,.sura-btn-secondary-2:active{border:1px solid #c5cb15}
.sura-btn-danger{background-color:#fff;color:#d12d35;border:1px solid #d12d35}
.sura-btn-danger span,.sura-btn-danger i{color:#d12d35}
.sura-btn-danger:hover,.sura-btn-danger:active{border:1px solid #b04b60}
.sura-btn-third{color:#0033a0}
.sura-btn-third span,.sura-btn-third i{color:#0033a0}
.sura-btn-third:active{background-color:#e5e9ea}
.sura-btn-third-danger{background-color:#fff;color:#d12d35}
.sura-btn-third-danger:hover,.sura-btn-third-danger:active{color:#b04b60}
.md.sura-btn-primary-1,.md.sura-btn-primary-2,.md.sura-btn-secondary-1,.md.sura-btn-secondary-2,.md.sura-btn-danger,.md.sura-btn-third,.md.sura-btn-third-danger{height:48px}
.sm.sura-btn-primary-1,.sm.sura-btn-primary-2,.sm.sura-btn-secondary-1,.sm.sura-btn-secondary-2,.sm.sura-btn-danger,.sm.sura-btn-third,.sm.sura-btn-third-danger{height:40px;padding:16px 18px;border-radius:20px}
.rounded.sura-btn-primary-1,.rounded.sura-btn-primary-2,.rounded.sura-btn-secondary-1,.rounded.sura-btn-secondary-2,.rounded.sura-btn-danger,.rounded.sura-btn-third,.rounded.sura-btn-third-danger{border-radius:50%;min-width:auto;padding:0;height:56px;width:56px}
.rounded.md.sura-btn-primary-1,.rounded.md.sura-btn-secondary-1,.rounded.md.sura-btn-danger,.rounded.md.sura-btn-third{height:48px;width:48px}
.rounded.sm.sura-btn-primary-1,.rounded.sm.sura-btn-secondary-1,.rounded.sm.sura-btn-danger,.rounded.sm.sura-btn-third{height:40px;width:40px}
.sura-btn-primary-1.disabled,.sura-btn-primary-2.disabled,.sura-btn-secondary-1.disabled,.sura-btn-secondary-2.disabled,.sura-btn-danger.disabled,.sura-btn-third.disabled,.sura-btn-third-danger.disabled,button:disabled.sura-btn-primary-1,button:disabled.sura-btn-secondary-1,button:disabled.sura-btn-danger,button:disabled.sura-btn-third{background-color:#f8f8f8;color:#888b8d;border-color:#f8f8f8;cursor:default;pointer-events:none}
.sura-btn-primary-1.disabled span,.sura-btn-primary-1.disabled i,button:disabled.sura-btn-primary-1 span,button:disabled.sura-btn-secondary-1 span,button:disabled.sura-btn-danger span,button:disabled.sura-btn-third span{color:#888b8d}
.sura-btn-nav{display:inline-flex;justify-content:space-between;cursor:pointer;background-color:#fff;color:#3f3f41;border:1px solid #81b1ff;font-size:1.25rem;padding:1.37rem;border-radius:.625rem}
.sura-btn-nav i{color:#2d6df6}
.sura-btn-rounded{display:flex;flex-direction:column;align-items:center;gap:8px}
.sura-btn-rounded button{border-radius:50%;width:56px;height:56px;padding:8px;border:none;display:flex;justify-content:center;align-items:center;cursor:pointer;background:#dfeaff;color:#0033a0}
/* Focus visible — WCAG 2.1 AA, mandatory on this keyboard-driven app */
.sura-app :focus-visible{outline:none;box-shadow:var(--his-focus-ring);border-radius:inherit}

/* ── Etiqueta (badge de estado) ───────────────────────────── */
.sura-tag-info,.sura-tag-success,.sura-tag-warn,.sura-tag-error,.sura-tag-secondary,.sura-tag-white{display:inline-flex;height:24px;min-width:56px;width:auto;padding:4px 12px;justify-content:center;align-items:center;gap:12px;flex-shrink:0;border-radius:4px;font-family:var(--sura-font-family-base);font-size:.87rem;font-weight:400;white-space:nowrap}
.sura-tag-info{background-color:#e1ebff;color:#0033a0}
.sura-tag-success{background-color:#def6de;color:#067014}
.sura-tag-warn{background-color:#fff5ec;color:#ed8b00}
.sura-tag-error{background-color:#fff4f3;color:#d12d35}
.sura-tag-secondary{background-color:#e5e9ea;color:#53565a}
.sura-tag-white{background-color:#fff;color:#3f3f41;border:1px solid #e7e7e7}
/* Chip de filtro aplicado */
.sura-tag{display:inline-flex;height:24px;max-width:424px;width:auto;padding:4px 12px;align-items:center;gap:7px;flex-shrink:0;border-radius:16px;background-color:#e1ebff;border:1px solid transparent;cursor:pointer}
.sura-tag .sura-tag-text{font-size:.87rem;font-weight:400;color:#2d6df6;text-overflow:ellipsis;font-family:var(--sura-font-family-base)}
.sura-tag:hover{background-color:#fff;border:1px solid #0033a0}
.sura-tag:hover .sura-tag-text{color:#0033a0}
.sura-tag:active{background-color:#0033a0}
.sura-tag:active .sura-tag-text{color:#fff}
.sura-tag.disabled,.sura-tag.disabled:hover,.sura-tag.disabled:active{background-color:#e7e7e7;border:none}
.sura-tag.disabled .sura-tag-text{color:#888b8d}

/* ── Toast ───────────────────────────────────────────────── */
.sura-toast-info,.sura-toast-success,.sura-toast-warn,.sura-toast-error,.sura-toast-white{display:flex;padding:16px;flex-direction:column;gap:16px;border-radius:12px;border:1px solid #81b1ff;background:#fff;max-width:980px;min-width:290px;align-items:flex-start;position:relative;box-shadow:var(--sura-box-shadow-5)}
.sura-toast-info__header,.sura-toast-success__header,.sura-toast-warn__header,.sura-toast-error__header,.sura-toast-white__header{display:flex;gap:12px;align-items:center}
[class*=sura-toast-] .icon{font-size:var(--sura-font-size-24)}
[class*=sura-toast-] .vertical-line{height:46px;width:2px;border-radius:4px;flex-shrink:0}
[class*=sura-toast-] .sura-toast__texto{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
[class*=sura-toast-] .icon-close{position:absolute;top:10px;right:10px;cursor:pointer;background:none;border:none;color:#888b8d;font-size:1rem;line-height:1;padding:4px}
.sura-toast-info{border-color:#0033a0}.sura-toast-info .vertical-line,.sura-toast-info .icon{background-color:#0033a0;color:#0033a0}
.sura-toast-success{border-color:#067014}.sura-toast-success .vertical-line{background-color:#067014}.sura-toast-success .icon{color:#067014}
.sura-toast-warn{border-color:#ed8b00}.sura-toast-warn .vertical-line{background-color:#ed8b00}.sura-toast-warn .icon{color:#ed8b00}
.sura-toast-error{border-color:#d12d35}.sura-toast-error .vertical-line{background-color:#d12d35}.sura-toast-error .icon{color:#d12d35}
.sura-toast-info .vertical-line{background-color:#0033a0}
.sura-toast-stack{position:fixed;top:88px;right:24px;display:flex;flex-direction:column;gap:8px;z-index:2000}

/* ── Campos de texto ─────────────────────────────────────── */
.sura-input-container{display:flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:240px;width:100%}
.sura-input-container .input-label{font-family:var(--sura-font-family-base);font-size:.87rem;font-weight:600;color:#0033a0}
.sura-input-container .input-wrapper{position:relative;display:flex;align-items:center;width:100%}
.sura-input-field{width:100%;height:48px;padding:10px 30px 10px 16px;display:flex;align-items:center;gap:8px;border-radius:8px;border:1px solid #2d6df6;background-color:#fff;font-family:var(--sura-font-family-base);font-size:1rem;font-weight:400;color:#2d6df6;outline:none;text-overflow:ellipsis;overflow:hidden;white-space:nowrap}
.sura-input-field::placeholder{color:#b4b4b5}
.sura-input-field:hover{border:1px solid #0033a0}
.sura-input-field:focus{border:1px solid #0033a0;color:#0033a0;box-shadow:var(--his-focus-ring)}
.sura-input-field.error{border:1px solid #d12d35;color:#d12d35}
.sura-input-field:disabled{border:1px solid #e7e7e7;background:#f8f8f8;color:#b4b4b5;cursor:not-allowed}
.sura-input-container .helper{font-family:var(--sura-font-family-base);font-size:.75rem;color:#888b8d}
.sura-input-container .helper.error{color:#d12d35}
.sura-input-container .trailing-icon{position:absolute;right:12px;color:#2d6df6;pointer-events:none}
textarea.sura-input-field{height:auto;min-height:96px;white-space:pre-wrap;padding:12px 16px;resize:vertical}

/* ── Casilla de verificación / Interruptor / Radio ───────── */
input[type=checkbox].sura-checkbox{appearance:none;width:1.5rem;height:1.5rem;background-color:#fff;border:1px solid #0033a0;border-radius:4px;outline:none;position:relative;cursor:pointer;flex-shrink:0;margin:0}
input[type=checkbox].sura-checkbox-sm{width:1.25rem;height:1.25rem}
input[type=checkbox].sura-checkbox:hover{background-color:#81b1ff}
input[type=checkbox].sura-checkbox:checked{background:#2d6df6;border:none}
input[type=checkbox].sura-checkbox:checked:after{content:"";position:absolute;left:56%;top:50%;width:6px;height:11px;border:solid #fff;border-width:0 2px 2px 0;transform:translate(-60%,-60%) rotate(45deg)}
input[type=radio].sura-radio{appearance:none;width:1.5rem;height:1.5rem;background:#fff;border:1px solid #0033a0;border-radius:50%;position:relative;cursor:pointer;flex-shrink:0;margin:0}
input[type=radio].sura-radio:hover{background-color:#dfeaff}
input[type=radio].sura-radio:checked{border:1px solid #2d6df6}
input[type=radio].sura-radio:checked:after{content:"";position:absolute;inset:4px;border-radius:50%;background:#2d6df6}
input[type=checkbox].sura-toggle{display:none}
input[type=checkbox].sura-toggle+label{position:relative;display:inline-flex;cursor:pointer}
input[type=checkbox].sura-toggle+label:before{content:"";position:relative;display:block;width:40px;height:24px;border-radius:16px;background:#888b8d;transition:background .3s}
input[type=checkbox].sura-toggle+label:after{content:"";position:absolute;display:block;left:2px;top:2px;width:20px;height:20px;border-radius:16px;background:#fff;transition:background .3s,margin-left .3s;z-index:1}
input[type=checkbox].sura-toggle:checked+label:before{background:#2d6df6}
input[type=checkbox].sura-toggle:checked+label:after{margin-left:16px}
input[type=checkbox].sura-toggle:hover+label:before{background:#0033a0}
.sura-field-row{display:flex;align-items:center;gap:12px;font-family:var(--sura-font-family-base);font-size:1rem;color:#3f3f41}

/* ── Paso a paso ─────────────────────────────────────────── */
.sura-stepper{display:flex;counter-reset:step;text-align:center;max-width:100%}
.sura-stepper__item{display:flex;flex-direction:column;align-self:stretch;align-items:center;gap:10px;width:140px;position:relative}
.sura-stepper__item::before{content:counter(step);counter-increment:step;position:relative;width:24px;height:24px;border-radius:50%;border:1px solid #3f3f41;background-color:#fff;outline:8px solid #fff;z-index:1;font-family:var(--sura-font-family-base);font-weight:700;font-size:.87rem;color:#3f3f41;display:flex;align-items:center;justify-content:center}
.sura-stepper__item.current::before{background-color:#2d6df6;color:#fff;border:none}
.sura-stepper__item.done::before{content:"✓";background-color:#00aec7;color:#fff;border:none}
.sura-stepper__item:after{content:"";position:absolute;top:12px;width:100%;height:2px;background-color:#2d6df6}
.sura-stepper__item:first-child:after{left:50%}
.sura-stepper__item:last-child:after{right:50%}
.sura-stepper__title{font-size:1rem;font-family:var(--sura-font-family-base);font-weight:400;color:#3f3f41}

/* ── Paginador ───────────────────────────────────────────── */
.paginator,.paginator .button,.paginator .links,.paginator .link{display:flex;align-items:center;justify-content:center}
.paginator{padding:10px 24px;border-radius:8px;column-gap:8px;background:#fff;font-size:.87rem;font-family:var(--sura-font-family-base);font-weight:700}
.paginator .button{border:none;color:#2d6df6;height:40px;width:40px;border-radius:30px;background:#fff;cursor:pointer}
.paginator .button:disabled{color:#888b8d;pointer-events:none}
.paginator .link{height:36px;width:36px;color:#0033a0;font-family:var(--sura-font-family-base);font-weight:700;border-radius:30px;cursor:pointer;border:none;background:#fff}
.paginator .links{column-gap:8px}
.paginator .button:hover,.paginator .link:hover,.paginator .link.active{color:#fff;background:#2d6df6}
.paginator .details{display:flex;align-items:center;column-gap:8px;color:#3f3f41;font-weight:400}
.paginator .page{color:#0033a0}

/* ── Pestañas ────────────────────────────────────────────── */
.sura-tabs{display:flex;border-bottom:1px solid #e0e0e0;width:100%;overflow-x:auto}
.sura-tabs .tab{font-family:var(--sura-font-family-base);font-size:1rem;line-height:1.37rem;font-weight:700;display:flex;gap:8px;padding:16px;cursor:pointer;justify-content:center;align-items:center;text-align:center;color:#333f48;border:none;background:none;border-bottom:2px solid transparent;transition:all .3s}
.sura-tabs .tab[aria-selected=true]{color:#2d6df6;border-bottom:2px solid #2d6df6}

/* ── Acordeón ────────────────────────────────────────────── */
.sura-accordion{background:#fff;padding:16px;font-size:1rem;font-weight:400;border-radius:12px;border:1px solid #0033a0}
.sura-accordion__header{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;background:none;border:none;cursor:pointer;font-family:var(--sura-font-family-base);font-size:1.12rem;font-weight:600;color:#0033a0;padding:0}
.sura-accordion__body{padding-top:16px}

/* ── Tooltip ─────────────────────────────────────────────── */
.overlay-tooltip{word-break:normal;overflow-wrap:anywhere;padding:4px 8px;min-width:40px;max-width:150px;min-height:24px;box-sizing:border-box;overflow:hidden;text-overflow:ellipsis;background:#3f3f41;color:#fff;border-radius:4px;font-family:var(--sura-font-family-base);font-size:.75rem;line-height:1.25;position:absolute;z-index:3000;pointer-events:none}

/* ── Avatar ──────────────────────────────────────────────── */
.avatar{border-radius:50%;width:32px;height:32px;display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}
.avatar.first-words{font-size:1rem;font-weight:700;color:#e3e829;background-color:#2d6df6;font-family:var(--sura-font-family-base)}

/* ── Miga de pan ─────────────────────────────────────────── */
.sura-breadcrumb{display:flex;align-items:center;gap:8px;font-family:var(--sura-font-family-base);font-size:.87rem;color:#53565a;flex-wrap:wrap}
.sura-breadcrumb a{color:#0033a0;text-decoration:none}
.sura-breadcrumb a:hover{text-decoration:underline}
.sura-breadcrumb .sep{color:#b4b4b5}
.sura-breadcrumb [aria-current=page]{color:#53565a;font-weight:600}

/* ── Cargador ────────────────────────────────────────────── */
@keyframes sura-spin{to{transform:rotate(360deg)}}
.sura-spinner{border-radius:50%;border:3px solid #dfeaff;border-top-color:#2d6df6;animation:sura-spin .8s linear infinite}
.sura-loading-overlay{position:relative;min-height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;background:rgba(255,255,255,.72);font-family:var(--sura-font-family-base);font-size:.87rem;color:#53565a}

/* ── Tabla (app-sura-native-table) ───────────────────────── */
.his-table-wrap{background:#fff;border:1px solid #e7e7e7;border-radius:8px;overflow:hidden}
.his-table{width:100%;border-collapse:collapse;font-family:var(--sura-font-family-base);font-size:.87rem}
.his-table thead th{height:48px;padding:0 16px;text-align:left;color:#0033a0;font-weight:700;font-size:.87rem;white-space:nowrap;border-bottom:1px solid #e7e7e7}
.his-table tbody tr{height:56px}
.his-table tbody td{height:56px;padding:0 16px;color:#3f3f41;border-bottom:1px solid #e7e7e7;vertical-align:middle;line-height:1.2}
/* Inline-level cell children sit on the text baseline, and the half-leading below it was
   stretching the row past 56px. Centring them keeps the row on the spec height. */
.his-table tbody td>*,.his-table tbody td>span>*{vertical-align:middle}
.his-table tbody td .actions,.his-table tbody td .sura-tag-info,.his-table tbody td .sura-tag-success,.his-table tbody td .sura-tag-warn,.his-table tbody td .sura-tag-error,.his-table tbody td .sura-tag-secondary,.his-table tbody td .sura-tag-white{vertical-align:middle}
.his-table .actions{height:24px}
/* One row = one line. A long afiliado name must ellipsis, not wrap the row past 56px
   (tooltips carry the full value). The actions cell keeps overflow visible for its menu. */
.his-table tbody td{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.his-table tbody td:last-child,.his-table thead th:last-child{overflow:visible}
.his-table tbody tr:last-child td{border-bottom:none}
.his-table tbody tr:hover{background:#f5faff}
.his-table .num,.his-table th.num{text-align:right;font-variant-numeric:tabular-nums}
.his-table .actions{display:flex;align-items:center;gap:8px;justify-content:flex-end}
.his-icon-action{width:24px;height:24px;min-width:24px;display:inline-flex;align-items:center;justify-content:center;border:none;background:none;color:#2d6df6;cursor:pointer;border-radius:4px}
.his-icon-action:hover{background:#e1ebff;color:#0033a0}
.his-table-sticky{overflow-x:auto;max-width:100%}
.his-table-sticky .his-table th:first-child,.his-table-sticky .his-table td:first-child{position:sticky;left:0;background:inherit;z-index:1}
.his-table-sticky .his-table th:last-child,.his-table-sticky .his-table td:last-child{position:sticky;right:0;background:#fff;z-index:1}

/* ── Filtros (app-table-filter) ──────────────────────────── */
.his-filter-card{background:#fff;border:1px solid #e7e7e7;border-radius:8px;padding:16px 24px}
.his-filter-card__header{display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer}
.his-filter-card__title{font-family:var(--sura-font-family-base);font-size:1.12rem;font-weight:600;color:#0033a0;display:flex;align-items:center;gap:8px}
.his-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;padding-top:16px}
.his-filter-grid>*,.his-form-grid>*,.his-filter-grid .sura-input-container,.his-form-grid .sura-input-container{min-width:0}
.his-filter-grid input,.his-filter-grid select,.his-form-grid input,.his-form-grid select,.his-filter-grid .sura-input-field,.his-form-grid .sura-input-field{min-width:0}
/* Date fields must stay readable: dd/mm/aaaa plus the picker glyph needs ~132px.
   A collapsed date filter is a defect on a screen built for cashier legibility. */
.his-filter-grid input[type=date],.his-form-grid input[type=date]{min-width:144px}
/* The Desde–Hasta pair claims two grid tracks so neither half collapses. */
.his-filter-grid>.his-range-date,.his-form-grid>.his-range-date{grid-column:span 2;min-width:0}
@media (max-width:1100px){.his-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.his-chips{display:flex;flex-wrap:wrap;gap:8px;padding-top:16px}

/* ── Empty state ─────────────────────────────────────────── */
.his-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:48px 24px;text-align:center;font-family:var(--sura-font-family-base)}
.his-empty__title{font-size:1.12rem;font-weight:600;color:#0033a0}
.his-empty__text{font-size:.87rem;color:#53565a;max-width:420px}

/* ── Modal ───────────────────────────────────────────────── */
.sura-modal__backdrop{position:fixed;inset:0;background:rgba(6,6,24,.45);display:flex;align-items:center;justify-content:center;z-index:2500;padding:24px}
.sura-modal{background:#fff;border-radius:24px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;padding:16px;min-width:348px;max-width:604px;overflow:hidden;box-shadow:var(--sura-box-shadow-2);font-family:var(--sura-font-family-base)}
.sura-modal__title{font-size:1.37rem;font-weight:600;color:#0033a0;text-align:center}
.sura-modal__body{font-size:1rem;color:#3f3f41;text-align:center}
.sura-modal__actions{display:flex;align-items:center;justify-content:center;gap:16px;align-self:stretch;padding-top:8px}

/* ── Layout de pantalla (DS-LNT-001 / 002) ───────────────── */
.his-screen{padding:24px;background:var(--his-surface-page);min-height:100%;min-width:0;overflow-x:hidden}
.his-screen__head{display:flex;flex-direction:column;gap:0}
.his-screen__titlebar{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;border-top:1px solid var(--sura-color-gray-2);margin-top:16px;padding-top:16px}
.his-h1{font-family:var(--sura-font-family-base);font-weight:700;font-size:3rem;line-height:3rem;color:#2d6df6;margin:0}
.his-screen__body{margin-top:32px;display:flex;flex-direction:column;gap:24px}
.his-form-section{display:flex;flex-direction:column;gap:16px}
.his-form-section__title{font-family:var(--sura-font-family-base);font-size:1.12rem;font-weight:600;color:#0033a0}
.his-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px 24px}
.his-form-actions{display:flex;justify-content:flex-end;gap:16px;padding-top:8px}

/* ── Menú lateral / barra superior ───────────────────────── */
.his-topbar{height:56px;min-height:56px;background:#0033a0;color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 24px;gap:24px;overflow:hidden}
.his-topbar>*{min-width:0}
.his-topbar span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.his-topbar__app{font-family:var(--sura-font-family-base);font-size:1rem;font-weight:600;color:#fff;opacity:.9}
.his-sidemenu{width:248px;min-width:248px;background:#fff;border-right:1px solid #e7e7e7;padding:16px 8px;display:flex;flex-direction:column;gap:2px;flex-shrink:0}
.his-sidemenu.collapsed{min-width:56px}
.his-sidemenu.collapsed{width:56px}
.his-sidemenu__item{display:flex;align-items:center;gap:12px;height:40px;padding:0 12px;border-radius:4px;font-family:var(--sura-font-family-base);font-size:.87rem;color:#3f3f41;cursor:pointer;border:none;background:none;width:100%;text-align:left}
.his-sidemenu__item:hover{background:#f4f4f4}
.his-sidemenu__item.active{background:#e1ebff;color:#0033a0;font-weight:600}
.his-sidemenu__group{font-family:var(--sura-font-family-base);font-size:.75rem;text-transform:uppercase;letter-spacing:.04em;color:#888b8d;padding:12px 12px 4px}

/* ── Footer ──────────────────────────────────────────────── */
.sura-footer{background:#fff;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #e7e7e7;padding:12px 24px;font-family:var(--sura-font-family-base);font-size:.75rem;color:#888b8d}
