:root {
  --navy: #102a43;
  --blue: #0b6e99;
  --cyan: #17a2b8;
  --ink: #172b3a;
  --muted: #667986;
  --line: #dce6eb;
  --surface: #ffffff;
  --canvas: #f3f7f9;
  --green: #198754;
  --amber: #a96800;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  color: var(--ink);
  background: var(--canvas);
}
* { box-sizing: border-box; }
body { margin: 0; min-width: 320px; background: var(--canvas); }
button, input { font: inherit; }
select { font: inherit; }
[hidden] { display: none !important; }
.login-screen { min-height: 100vh; padding: 28px; display: grid; place-items: center; background: radial-gradient(circle at 15% 15%, #1b5873 0, #12324b 34%, #091d2e 100%); }
.login-card { width: min(440px, 100%); padding: 38px; border-radius: 18px; background: #fff; box-shadow: 0 24px 70px rgba(0,0,0,.28); }
.login-mark { width: 54px; height: 54px; margin-bottom: 25px; border-radius: 15px; display: grid; place-items: center; color: #fff; font-size: 14px; font-weight: 900; letter-spacing: .08em; background: linear-gradient(135deg, #22b8cf, #1375a3); }
.login-card h1 { font-size: 29px; line-height: 1.15; }
.login-copy { margin: 14px 0 25px; color: var(--muted); line-height: 1.55; font-size: 14px; }
.login-card form { display: grid; gap: 16px; }
.login-card label { color: #375263; font-size: 12px; font-weight: 800; }
.login-card input { width: 100%; margin-top: 7px; padding: 12px 13px; border: 1px solid #c5d3da; border-radius: 9px; outline: none; color: var(--ink); background: #fbfdfe; }
.login-card input:focus { border-color: var(--cyan); box-shadow: 0 0 0 3px rgba(23,162,184,.13); }
.primary-button { padding: 12px 16px; border: 0; border-radius: 9px; color: #fff; font-weight: 800; background: var(--blue); cursor: pointer; }
.primary-button:disabled { opacity: .65; cursor: wait; }
.primary-button.danger-button { background: #b42318; }
.primary-button.danger-button:hover { background: #912018; }
.form-error { min-height: 18px; margin: -4px 0; color: #a52c2c; font-size: 12px; }
.form-success { min-height: 18px; margin: -4px 0; color: #146b45; font-size: 12px; font-weight: 800; }
.login-card > small { display: block; margin-top: 22px; color: #81929c; text-align: center; }
.app-shell { min-height: 100vh; display: grid; grid-template-columns: 250px minmax(0, 1fr); }
.sidebar { position: sticky; top: 0; height: 100vh; padding: 28px 18px; color: #fff; background: linear-gradient(180deg, #102f49 0%, #0d2438 100%); display: flex; flex-direction: column; }
.brand { display: flex; align-items: center; gap: 12px; padding: 0 8px 28px; border-bottom: 1px solid rgba(255,255,255,.12); }
.brand-mark { width: 46px; height: 46px; border-radius: 13px; display: grid; place-items: center; font-weight: 800; font-size: 13px; letter-spacing: .08em; background: linear-gradient(135deg, #22b8cf, #1375a3); box-shadow: 0 8px 24px rgba(0,0,0,.18); }
.brand strong, .brand small, .sidebar-note strong, .sidebar-note small { display: block; }
.brand strong { font-size: 15px; }
.brand small, .sidebar-note small { margin-top: 3px; color: #a9bdca; font-size: 12px; }
nav { display: grid; gap: 5px; margin-top: 18px; overflow-y: auto; padding-right: 3px; }
.nav-group-label { margin: 13px 13px 3px; color: #7693a5; font-size: 9px; font-weight: 900; letter-spacing: .14em; text-transform: uppercase; }
.nav-item { border: 0; border-radius: 10px; padding: 12px 14px; display: flex; gap: 12px; align-items: center; text-align: left; color: #c9d6df; background: transparent; cursor: pointer; }
.nav-item:hover, .nav-item.active { color: #fff; background: rgba(32, 173, 199, .18); }
.nav-item.active { box-shadow: inset 3px 0 #29bfd3; }
.sidebar-note { margin-top: auto; padding: 15px; display: flex; gap: 10px; border-radius: 12px; background: rgba(255,255,255,.07); }
.status-dot { flex: 0 0 auto; width: 9px; height: 9px; margin-top: 5px; border-radius: 50%; background: #49d497; box-shadow: 0 0 0 4px rgba(73,212,151,.13); }
main { min-width: 0; padding: 34px clamp(20px, 4vw, 54px) 60px; }
.topbar { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-bottom: 22px; }
.eyebrow { margin: 0 0 5px; color: var(--blue); font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
h1, h2 { margin: 0; color: var(--navy); }
h1 { font-size: clamp(26px, 3vw, 36px); letter-spacing: -.03em; }
h2 { font-size: 20px; }
.connection { padding: 9px 12px; border: 1px solid var(--line); border-radius: 999px; font-size: 12px; font-weight: 700; color: var(--muted); background: #fff; }
.connection span { display: inline-block; width: 8px; height: 8px; margin-right: 6px; border-radius: 50%; background: #d19a24; }
.connection.online span { background: var(--green); }
.connection.error span { background: #c23b3b; }
.top-actions { display: flex; align-items: center; gap: 10px; }
.user-chip { text-align: right; }
.user-chip strong, .user-chip small { display: block; }
.user-chip strong { color: var(--navy); font-size: 12px; }
.user-chip small { margin-top: 2px; color: var(--muted); font-size: 10px; text-transform: capitalize; }
.logout-button { padding: 8px 11px; border: 1px solid var(--line); border-radius: 8px; color: var(--muted); background: #fff; cursor: pointer; }
.logout-button:hover { color: #9d2f2f; border-color: #e6bcbc; }
.secondary-button { padding: 9px 12px; border: 1px solid #c8d6dd; border-radius: 8px; color: #405b69; font-weight: 700; background: #fff; cursor: pointer; }
.notice { margin-bottom: 22px; padding: 14px 17px; border: 1px solid #b9dce5; border-left: 4px solid var(--cyan); border-radius: 10px; color: #355362; background: #edf9fb; font-size: 13px; }
.view { display: none; }
.view.active { display: block; }
.metrics { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin-bottom: 22px; }
.metrics article { min-height: 136px; padding: 22px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); box-shadow: 0 8px 24px rgba(22,52,70,.05); }
.metrics span, .metrics small { display: block; color: var(--muted); }
.metrics span { font-size: 13px; font-weight: 700; }
.metrics strong { display: block; margin: 10px 0 5px; color: var(--navy); font-size: 32px; letter-spacing: -.04em; }
.metrics small { font-size: 12px; }
.dashboard-return-alert { margin-bottom: 22px; padding: 17px 19px; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: 15px; border: 1px solid #edc776; border-left: 5px solid #d28a11; border-radius: 12px; background: #fff8e9; box-shadow: 0 8px 24px rgba(90,62,14,.06); }
.dashboard-return-alert-icon { width: 38px; height: 38px; display: grid; place-items: center; border-radius: 50%; color: #fff; background: #c47b08; font-size: 22px; font-weight: 900; }
.dashboard-return-alert h2 { font-size: 17px; }
.dashboard-return-alert h2 > strong { color: #9a5e00; }
.dashboard-return-alert p:last-child { margin: 5px 0 0; color: #5f574b; font-size: 12px; }
.panel { overflow: hidden; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); box-shadow: 0 8px 24px rgba(22,52,70,.05); }
.panel-heading { min-height: 80px; padding: 19px 22px; display: flex; align-items: center; justify-content: space-between; gap: 18px; border-bottom: 1px solid var(--line); }
.pill { padding: 6px 10px; border-radius: 999px; color: var(--blue); background: #e9f6f9; font-size: 11px; font-weight: 800; }
.search { width: min(390px, 100%); display: flex; align-items: center; gap: 8px; padding: 9px 12px; border: 1px solid #cbd9e0; border-radius: 9px; color: var(--muted); background: #f9fbfc; }
.search:focus-within { border-color: var(--cyan); box-shadow: 0 0 0 3px rgba(23,162,184,.12); }
.search input { width: 100%; border: 0; outline: 0; color: var(--ink); background: transparent; font-size: 13px; }
.table-wrap { overflow: auto; max-height: 58vh; }
table { width: 100%; border-collapse: collapse; font-size: 13px; }
thead { position: sticky; top: 0; z-index: 1; background: #edf3f6; }
th, td { padding: 12px 16px; text-align: left; border-bottom: 1px solid #e7eef2; white-space: nowrap; }
th { color: #49616f; font-size: 11px; letter-spacing: .04em; text-transform: uppercase; }
tbody tr:hover { background: #f7fbfc; }
.badge { display: inline-block; padding: 4px 8px; border-radius: 999px; font-size: 11px; font-weight: 800; color: #315160; background: #e8f0f3; }
.badge.available, .badge.active { color: #146b45; background: #e5f6ed; }
.badge.in-use { color: #916000; background: #fff2d5; }
.badge.loaned { color: #075c87; background: #dff3ff; }
.badge.custody { color: #6840a0; background: #efe5ff; }
.badge.maintenance { color: #805d00; background: #fff0b8; }
.badge.attention { color: #8a5700; background: #fff0c9; }
.badge.alert { color: #9b2929; background: #ffe5e5; }
.badge.inactive { color: #5d6870; background: #e9edf0; }
.asset-title-status { display: inline-flex; align-items: center; gap: 7px; margin-left: 10px; padding: 6px 10px; border-radius: 999px; vertical-align: middle; color: #5d6870; background: #e9edf0; font-size: 12px; font-weight: 800; }
.asset-title-status i { width: 9px; height: 9px; border-radius: 50%; background: currentColor; }
.asset-title-status.available, .asset-title-status.active { color: #08784b; background: #e5f6ed; }
.asset-title-status.in-use { color: #9a6400; background: #fff2d5; }
.asset-title-status.loaned { color: #075c87; background: #dff3ff; }
.asset-title-status.custody { color: #6840a0; background: #efe5ff; }
.asset-title-status.maintenance { color: #805d00; background: #fff0b8; }
.asset-title-status.alert { color: #a12828; background: #ffe5e5; }
.asset-title-status.inactive { color: #5d6870; background: #e9edf0; }
.table-summary { margin: 0; padding: 12px 18px; color: var(--muted); background: #fafcfd; font-size: 12px; }
.empty { padding: 40px; text-align: center; color: var(--muted); }
.error-card { padding: 30px; color: #8d2f2f; background: #fff2f2; }
.user-grid { display: grid; grid-template-columns: minmax(330px, .72fr) minmax(560px, 1.28fr); gap: 18px; align-items: start; }
.user-grid > .panel { min-width: 0; }
.account-form { padding: 22px; display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.account-form > * { min-width: 0; }
.account-form label, .dialog-card label { color: #375263; font-size: 12px; font-weight: 800; }
.account-form input, .account-form select, .account-form textarea, .dialog-card input, .dialog-card select, .dialog-card textarea { width: 100%; margin-top: 7px; padding: 11px 12px; border: 1px solid #c5d3da; border-radius: 9px; outline: none; color: var(--ink); background: #fbfdfe; font: inherit; }
.account-form textarea, .dialog-card textarea { resize: vertical; min-height: 90px; }
.account-form input:focus, .account-form select:focus, .account-form textarea:focus, .dialog-card input:focus, .dialog-card select:focus, .dialog-card textarea:focus { border-color: var(--cyan); box-shadow: 0 0 0 3px rgba(23,162,184,.13); }
.account-form small, .dialog-card small { display: block; margin-top: 5px; color: var(--muted); font-weight: 400; }
.inline-document-button { margin-left: 7px; padding: 4px 8px; border: 1px solid #087da4; border-radius: 7px; color: #075e7d; background: #fff; font: inherit; font-weight: 800; cursor: pointer; }
.controlled-write-panel { max-width: 900px; }
.detailed-return-panel { max-width: 1180px; }
.load-return-items { justify-self: start; }
.detailed-return-items { display: grid; gap: 12px; }
.return-empty { margin: 0; padding: 22px; border: 1px dashed #b8ccd5; border-radius: 10px; color: var(--muted); text-align: center; background: #f8fbfc; }
.return-review-summary { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; padding: 12px 14px; border: 1px solid #b9dce5; border-radius: 10px; color: #315667; background: #edf9fb; font-size: 12px; }
.return-review-summary strong { color: var(--navy); }
.return-review-card { overflow: hidden; border: 1px solid #d5e2e8; border-radius: 12px; background: #fff; }
.return-review-head { padding: 13px 15px; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 12px; align-items: center; background: #f4f8fa; }
.return-review-head input { width: 18px; height: 18px; margin: 0; }
.return-review-head strong, .return-review-head small { display: block; }
.return-review-head strong { color: var(--navy); }
.return-review-head small { margin-top: 3px; color: var(--muted); }
.return-kind { padding: 5px 8px; border-radius: 999px; color: #075f89; background: #def2f7; font-size: 10px; font-weight: 900; text-transform: uppercase; }
.return-review-fields { padding: 14px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 12px; }
.return-review-fields label { min-width: 0; }
.return-review-fields .return-notes { grid-column: span 2; }
.return-review-card:not(.selected) .return-review-fields { opacity: .45; pointer-events: none; }
.return-quantity-note { margin: 0; color: var(--muted); font-size: 11px; }
.return-validation { margin: 0; color: #9b2929; font-size: 11px; font-weight: 700; }
.controlled-write-panel + .controlled-write-panel { margin-top: 18px; }
.operation-filtered-out { display: none !important; }
.operation-hub { max-width: 1180px; margin-bottom: 20px; padding: 20px 22px; border: 1px solid var(--line); border-radius: 14px; background: var(--surface); box-shadow: 0 8px 24px rgba(22,52,70,.05); }
.operation-hub-copy p:last-child { margin: 8px 0 0; color: var(--muted); font-size: 13px; }
.operation-tabs { margin-top: 18px; display: flex; flex-wrap: wrap; gap: 8px; }
.operation-tab { padding: 10px 13px; border: 1px solid #c8d8df; border-radius: 9px; color: #456270; font-size: 12px; font-weight: 800; background: #f8fbfc; cursor: pointer; }
.operation-tab:hover { border-color: #8fc9d5; color: #075f89; }
.operation-tab.active { border-color: #0b799f; color: #fff; background: #0b799f; box-shadow: 0 5px 14px rgba(11,121,159,.2); }
.operation-actions { margin-top: 14px; padding-top: 14px; display: flex; flex-wrap: wrap; gap: 7px; border-top: 1px solid var(--line); }
.operation-action { padding: 8px 11px; border: 0; border-radius: 8px; color: #526b78; font-size: 11px; font-weight: 800; background: #edf3f6; cursor: pointer; }
.operation-action:hover { color: #075f89; background: #e5f3f7; }
.operation-action.active { color: #075f89; background: #dff3f8; box-shadow: inset 0 0 0 1px #9ed3df; }
.catalog-status { margin: 12px 0 0; color: var(--muted); font-size: 11px; }
.picker-input-row { margin-top: 7px; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; align-items: stretch; }
.account-form .picker-input-row input { margin-top: 0; min-width: 0; }
.picker-multi-row { align-items: start; }
.picker-chip-list { min-height: 46px; padding: 7px; display: flex; flex-wrap: wrap; gap: 7px; align-items: center; border: 1px solid #c5d3da; border-radius: 9px; background: #fbfdfe; }
.picker-chip { display: inline-flex; align-items: center; gap: 8px; padding: 6px 7px 6px 10px; border: 1px solid #b9dce5; border-radius: 10px; background: #edf9fb; }
.picker-chip > span { display: grid; grid-template-columns: auto auto auto; align-items: baseline; gap: 5px; }
.picker-chip small { margin: 0; color: #0b799f; font-size: 9px; font-weight: 800; text-transform: uppercase; }
.picker-chip strong { color: var(--navy); font-size: 11px; }
.picker-chip em { color: var(--muted); font-size: 10px; font-style: normal; }
.picker-chip button { width: 25px; height: 25px; padding: 0; border: 0; border-radius: 50%; color: #8e3434; background: #ffe8e8; font-size: 17px; line-height: 1; cursor: pointer; }
.picker-chip button:hover { background: #ffd5d5; }
.picker-chip-empty { padding: 7px 4px; color: var(--muted); font-size: 12px; }
.picker-open-button { min-width: 104px; padding-inline: 13px; white-space: nowrap; }
.confirm-field { padding: 13px; border: 1px solid #b9dce5; border-radius: 9px; background: #edf9fb; }
.confirm-field input { width: auto; margin: 0 8px 0 0; }
.full-field { grid-column: 1 / -1; }
dialog { width: min(470px, calc(100% - 30px)); padding: 0; border: 0; border-radius: 16px; box-shadow: 0 25px 80px rgba(0,0,0,.3); }
dialog::backdrop { background: rgba(5,25,39,.62); backdrop-filter: blur(2px); }
.dialog-card { padding: 25px; display: grid; gap: 15px; }
.dialog-heading, .dialog-actions { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.dialog-heading { margin-bottom: 4px; }
.dialog-actions { justify-content: flex-end; margin-top: 5px; }
.icon-button { border: 0; color: #657a86; background: transparent; font-size: 25px; cursor: pointer; }
.access-ready { color: #146b45; font-weight: 800; }
.access-pending { color: #9a6413; font-weight: 800; }
.asset-button { padding: 0; border: 0; color: #075f89; font-weight: 850; text-decoration: underline; text-decoration-color: #a9d4e3; text-underline-offset: 3px; background: transparent; cursor: pointer; }
.module-tabs { padding: 12px 18px; display: flex; gap: 8px; overflow-x: auto; border-bottom: 1px solid var(--line); background: #f8fbfc; }
.module-tab { padding: 8px 12px; border: 1px solid transparent; border-radius: 999px; color: #58707d; font-size: 12px; font-weight: 800; background: transparent; cursor: pointer; white-space: nowrap; }
.module-tab.active { color: #075f89; border-color: #b9dce5; background: #e8f7fa; }
.wide-dialog { width: min(930px, calc(100% - 30px)); }
.record-picker-dialog { width: min(1180px, calc(100% - 30px)); }
.picker-dialog-card { max-height: min(90vh, 820px); grid-template-rows: auto auto auto minmax(0, auto) auto; align-content: start; }
.picker-search-label { display: block; }
.picker-table-wrap { max-height: 55vh; overflow: auto; border: 1px solid var(--line); border-radius: 10px; }
.picker-table-wrap table { min-width: 900px; }
.picker-table-wrap thead th { position: sticky; top: 0; z-index: 2; background: #edf3f6; }
.picker-table-wrap th:last-child, .picker-table-wrap td:last-child { position: sticky; right: 0; z-index: 1; background: #fff; box-shadow: -8px 0 12px rgba(19,49,67,.06); }
.picker-table-wrap thead th:last-child { z-index: 3; background: #edf3f6; }
.picker-table-wrap .picker-selected-row td:last-child { background: #f0fbfd; }
.picker-choice { min-width: 96px; padding: 9px 12px; white-space: nowrap; }
.picker-choice.selected { color: #075f89; background: #dff3f8; box-shadow: inset 0 0 0 1px #7fc6d5; }
.picker-selected-row td { background: #f0fbfd; }
.picker-dialog-actions { justify-content: flex-end; }
.picker-dialog-actions .table-summary { margin-right: auto; padding: 0; background: transparent; }
.phone-highlight { color: #075f89; font-weight: 900; white-space: nowrap; }
.phone-missing { color: #8a5b12; font-size: 10px; font-weight: 800; white-space: nowrap; }
.site-line-assignments{display:grid;gap:8px;padding:11px;border:1px solid #b9dce5;border-radius:10px;background:#f2fafc}.site-line-assignments[hidden]{display:none}.site-line-heading strong,.site-line-heading span{display:block}.site-line-heading strong{color:var(--navy);font-size:12px}.site-line-heading span{margin-top:2px;color:var(--muted);font-size:10px}.site-line-assignment{display:grid;grid-template-columns:minmax(230px,.75fr) minmax(300px,1.25fr);gap:12px;align-items:end;padding:10px;border:1px solid #d5e5ea;border-radius:9px;background:#fff}.site-line-assignment>div span,.site-line-assignment>div strong{display:block}.site-line-assignment>div span{color:var(--muted);font-size:9px}.site-line-assignment>div strong{margin-top:3px;color:var(--navy);font-size:11px}.site-line-assignment select{margin-top:5px}.chip-assignment{border-left:4px solid var(--cyan)}
@media(max-width:760px){.site-line-assignment{grid-template-columns:1fr}}

/* V19.16.5 · resumen compacto de sitios y formularios */
.site-association-panel{margin:0 16px 14px;padding:13px;border:1px solid #c9e1e8;border-radius:12px;background:#f5fbfc}.site-association-panel>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.site-association-panel h3{margin:2px 0 0;color:var(--navy);font-size:15px}.site-association-panel>header>div:last-child{display:flex;gap:7px}.site-association-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.site-association-card{display:grid;grid-template-columns:minmax(150px,1fr) 20px minmax(210px,1.2fr) auto;align-items:center;gap:8px;padding:10px;border:1px solid #d6e5ea;border-radius:9px;background:#fff}.site-association-card span,.site-association-card small,.site-association-card strong{display:block}.site-association-card span{color:var(--muted);font-size:8px;text-transform:uppercase}.site-association-card small{margin-top:3px;color:var(--muted);font-size:9px}.site-association-line>strong{margin-top:2px;color:#075f89;font-size:12px}.site-association-line .no-line{color:#8a5b12}.site-association-link{color:#27a4bd;font-size:18px;font-weight:900;text-align:center}.site-detail-grid{grid-template-columns:1fr;gap:12px}.site-detail-grid section{padding:11px;border:1px solid var(--line);border-radius:10px}.site-detail-grid .table-wrap{max-height:none}.site-detail-grid table{width:100%;min-width:0;table-layout:fixed}.site-detail-grid th,.site-detail-grid td{min-width:0;padding:8px 7px;white-space:normal;overflow-wrap:anywhere}.site-collapsible{margin:0 16px 12px;border:1px solid var(--line);border-radius:11px;background:#fff}.site-collapsible>summary{padding:12px 14px;color:var(--navy);font-size:13px;font-weight:850;cursor:pointer}.site-collapsible[open]>summary{border-bottom:1px solid var(--line);background:#f7fafb}.site-collapsible .site-edit-form{margin:0;border:0;border-radius:0;padding:13px;gap:10px}.site-collapsible .account-form input,.site-collapsible .account-form select,.site-collapsible .account-form textarea{margin-top:4px;padding:9px 10px}.site-collapsible .account-form textarea{min-height:58px}.site-write-grid{gap:10px;padding:12px}.site-write-toolbar{padding:10px 12px}.site-install-form{padding:12px;gap:10px}.site-install-form input,.site-install-form select{margin-top:4px;padding:9px 10px}.site-install-form .picker-chip-list{padding:6px}.site-install-form .selected-assets-heading{padding-bottom:6px}.site-install-form .selected-assets-table th,.site-install-form .selected-assets-table td{padding:6px 7px}.site-line-assignments{padding:8px;gap:6px}.site-line-assignment{padding:8px}.site-events{padding:12px 16px}
@media(max-width:1000px){.site-association-grid{grid-template-columns:1fr}}
@media(max-width:700px){.site-association-panel>header{align-items:stretch;flex-direction:column}.site-association-panel>header>div:last-child{display:grid;grid-template-columns:1fr 1fr}.site-association-card{grid-template-columns:1fr}.site-association-link{transform:rotate(90deg)}.site-detail-grid table{min-width:700px}.site-detail-grid .table-wrap{overflow:auto}}

.asset-overview { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.employee-dialog { width: min(1120px, calc(100% - 30px)); }
.employee-summary-grid { margin-top: 14px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.employee-summary-card { padding: 14px; display: grid; gap: 4px; border: 1px solid #b9dce5; border-radius: 10px; background: #edf9fb; }
.employee-summary-card strong { color: var(--navy); font-size: 22px; }
.employee-summary-card span { color: var(--muted); font-size: 11px; font-weight: 800; }
.employee-assets { max-height: 280px; border: 1px solid var(--line); border-radius: 10px; }
.compact-empty { padding: 22px; }
.audit-metrics { margin-bottom: 18px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
.audit-metrics article { padding: 17px 18px; display: grid; gap: 5px; border: 1px solid #b9dce5; border-radius: 12px; background: #edf9fb; }
.audit-metrics span { color: var(--muted); font-size: 11px; font-weight: 800; }
.audit-metrics strong { color: var(--navy); font-size: 26px; }
.panel-copy { margin: 5px 0 0; color: var(--muted); font-size: 12px; }
.audit-actions { display: flex; gap: 8px; }
.audit-filters { padding: 17px 18px; display: grid; grid-template-columns: minmax(230px, 2fr) repeat(4, minmax(120px, 1fr)); gap: 10px; border-block: 1px solid var(--line); background: #f8fbfc; }
.audit-filters label { color: var(--navy); font-size: 10px; font-weight: 800; }
.audit-filters input, .audit-filters select { width: 100%; margin-top: 6px; padding: 10px 11px; border: 1px solid #c5d3da; border-radius: 8px; color: var(--navy); background: #fff; }
.audit-filters label:nth-of-type(6), .audit-filters label:nth-of-type(7) { grid-column: span 1; }
.audit-filter-buttons { display: flex; align-items: end; gap: 8px; }
.audit-filter-buttons button { min-height: 39px; }
.audit-table-wrap { max-height: 520px; }
.audit-table-wrap table { min-width: 1180px; }
.audit-table-wrap thead th { position: sticky; top: 0; z-index: 1; background: #edf3f6; }
.audit-subline { margin-top: 3px; display: block; color: var(--muted); }
.audit-detail-cell { max-width: 260px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.audit-detail-button { padding: 8px 10px; white-space: nowrap; }
.audit-dialog { width: min(1100px, calc(100% - 30px)); }
.audit-detail-text { padding: 13px; border-left: 3px solid #8fcfdd; background: #f6fbfc; }
.audit-change-grid { margin-top: 18px; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.audit-change-grid section { min-width: 0; }
.audit-change-grid h3 { margin: 0 0 8px; color: var(--navy); font-size: 14px; }
.audit-change-grid pre { min-height: 150px; max-height: 350px; margin: 0; padding: 14px; overflow: auto; border: 1px solid var(--line); border-radius: 10px; color: #d8ecf2; background: #112d40; font: 11px/1.55 ui-monospace, SFMono-Regular, Consolas, monospace; white-space: pre-wrap; overflow-wrap: anywhere; }
.report-metrics { margin-bottom: 18px; display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); gap: 12px; }
.report-metrics article { min-width: 0; padding: 16px; display: grid; gap: 4px; border: 1px solid #b9dce5; border-radius: 12px; background: #edf9fb; }
.report-metrics span { color: var(--muted); font-size: 10px; font-weight: 800; }
.report-metrics strong { color: var(--navy); font-size: 25px; }
.report-metrics small { overflow: hidden; color: var(--muted); font-size: 10px; text-overflow: ellipsis; white-space: nowrap; }
.report-layout { margin-bottom: 18px; display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(320px, .65fr); gap: 18px; }
.report-secondary-layout { grid-template-columns: minmax(0, 1.25fr) minmax(320px, .75fr); }
.report-bars { padding: 17px 18px 20px; display: grid; gap: 13px; }
.report-bar-row { display: grid; gap: 6px; }
.report-bar-row > div:first-child { display: flex; justify-content: space-between; gap: 12px; color: var(--navy); font-size: 12px; }
.report-bar-row > div:first-child strong { font-size: 12px; }
.report-bar-track { height: 9px; overflow: hidden; border-radius: 999px; background: #e2ebef; }
.report-bar-track i { display: block; height: 100%; border-radius: inherit; background: linear-gradient(90deg, #0a769c, #22b7c9); }
.report-alerts { padding: 8px 18px 18px; display: grid; gap: 8px; }
.report-alert-item { width: 100%; padding: 11px 12px; display: grid; grid-template-columns: 54px 1fr auto; align-items: center; gap: 10px; border: 0; border-left: 3px solid #e2a22a; color: inherit; text-align: left; background: #fffaf0; cursor: pointer; }
.report-alert-item:hover { background: #fff4da; }
.report-alert-item > strong { color: #9a6413; font-size: 21px; text-align: center; }
.report-alert-item span, .report-alert-item small { display: block; }
.report-alert-item span { color: var(--navy); font-size: 12px; font-weight: 800; }
.report-alert-item small { margin-top: 3px; color: var(--muted); font-size: 10px; }
.report-alert-item em { color: #075f89; font-size: 10px; font-style: normal; font-weight: 800; white-space: nowrap; }
.report-alert-dialog { width: min(1180px, calc(100% - 30px)); }
.report-alert-detail-summary { padding: 12px 14px; border-left: 3px solid #e2a22a; color: var(--navy); background: #fffaf0; font-size: 12px; }
.report-alert-detail-table { max-height: 520px; border: 1px solid var(--line); border-radius: 10px; }
.report-alert-detail-table table { min-width: 900px; }
.report-alert-detail-table thead th { position: sticky; top: 0; z-index: 1; background: #edf3f6; }
.report-compact-table { max-height: 340px; }
.report-compact-table thead th { position: sticky; top: 0; z-index: 1; background: #edf3f6; }
.report-document-summary { padding: 0 18px 18px; display: grid; gap: 10px; }
.report-document-summary article { padding: 13px 14px; display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 4px 12px; border: 1px solid var(--line); border-radius: 10px; background: #f8fbfc; }
.report-document-summary span { color: var(--navy); font-size: 12px; font-weight: 800; }
.report-document-summary strong { grid-row: span 2; color: #08789e; font-size: 22px; }
.report-document-summary small { color: var(--muted); font-size: 10px; }
.report-inventory-panel { margin-top: 0; }
.report-filters { padding: 17px 18px; display: grid; grid-template-columns: minmax(230px, 2fr) repeat(4, minmax(130px, 1fr)) auto; gap: 10px; align-items: end; border-block: 1px solid var(--line); background: #f8fbfc; }
.report-filters label { color: var(--navy); font-size: 10px; font-weight: 800; }
.report-filters input, .report-filters select { width: 100%; margin-top: 6px; padding: 10px 11px; border: 1px solid #c5d3da; border-radius: 8px; color: var(--navy); background: #fff; }
.report-filter-buttons { display: flex; gap: 8px; }
.report-filter-buttons button { min-height: 39px; white-space: nowrap; }
.report-inventory-table { max-height: 560px; }
.report-inventory-table table { min-width: 1450px; }
.report-inventory-table thead th { position: sticky; top: 0; z-index: 1; background: #edf3f6; }
.reconciliation-notice { margin-bottom: 18px; padding: 19px 21px; display: flex; justify-content: space-between; align-items: center; gap: 18px; border: 1px solid #b9dce5; border-left: 4px solid #0ba6b8; border-radius: 12px; background: #edf9fb; }
.reconciliation-notice h2 { margin: 4px 0 5px; color: var(--navy); }
.reconciliation-notice p:last-child { margin: 0; color: var(--muted); font-size: 12px; }
.reconciliation-metrics { margin-bottom: 18px; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 13px; }
.reconciliation-metrics article { padding: 16px 17px; display: grid; gap: 4px; border: 1px solid #b9dce5; border-radius: 12px; background: #edf9fb; }
.reconciliation-metrics span { color: var(--muted); font-size: 10px; font-weight: 800; }
.reconciliation-metrics strong { color: var(--navy); font-size: 25px; }
.reconciliation-metrics small { color: var(--muted); font-size: 10px; }
.reconciliation-filters { padding: 17px 18px; display: grid; grid-template-columns: minmax(280px, 2fr) repeat(3, minmax(150px, 1fr)) auto; gap: 10px; align-items: end; border-block: 1px solid var(--line); background: #f8fbfc; }
.reconciliation-filters label { color: var(--navy); font-size: 10px; font-weight: 800; }
.reconciliation-filters input, .reconciliation-filters select { width: 100%; margin-top: 6px; padding: 10px 11px; border: 1px solid #c5d3da; border-radius: 8px; color: var(--navy); background: #fff; }
.reconciliation-filter-buttons { display: flex; gap: 8px; }
.reconciliation-filter-buttons button { min-height: 39px; white-space: nowrap; }
.reconciliation-table { max-height: 590px; }
.reconciliation-table table { min-width: 1450px; }
.reconciliation-table thead th { position: sticky; top: 0; z-index: 1; background: #edf3f6; }
.reconciliation-table td:nth-child(4), .reconciliation-table td:nth-child(5), .reconciliation-table td:nth-child(6) { min-width: 240px; white-space: normal; }
.reconciliation-table td:last-child { min-width: 150px; }
.reconciliation-code { display: block; margin-bottom: 4px; }
.reconciliation-priority { display: inline-block; min-width: 76px; padding: 5px 8px; border-radius: 999px; font-size: 10px; font-weight: 800; text-align: center; }
.reconciliation-priority.alta { color: #9b2c2c; background: #ffe5e5; }
.reconciliation-priority.media { color: #8b5b0b; background: #fff0cd; }
.reconciliation-priority.informativa { color: #176079; background: #e2f4f8; }
.reconciliation-rules { margin-top: 18px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 13px; }
.reconciliation-rules article { padding: 15px 17px; display: grid; gap: 5px; border-left: 3px solid #8fcfdd; background: #f7fbfc; }
.reconciliation-rules strong { color: var(--navy); font-size: 12px; }
.reconciliation-rules span { color: var(--muted); font-size: 11px; }
.reconciliation-pending { color: var(--muted); font-size: 10px; font-weight: 700; }

/* V19.14.4: conciliacion legible sin recorte en pantallas de escritorio. */
@media (min-width: 1101px) {
  .reconciliation-table { overflow-x: hidden; }
  .reconciliation-table table { width: 100%; min-width: 0; table-layout: fixed; }
  .reconciliation-table th,
  .reconciliation-table td { min-width: 0; padding-inline: 10px; white-space: normal; overflow-wrap: anywhere; vertical-align: top; }
  .reconciliation-table th:nth-child(1), .reconciliation-table td:nth-child(1) { width: 7%; }
  .reconciliation-table th:nth-child(2), .reconciliation-table td:nth-child(2) { width: 14%; }
  .reconciliation-table th:nth-child(3), .reconciliation-table td:nth-child(3) { width: 15%; }
  .reconciliation-table th:nth-child(4), .reconciliation-table td:nth-child(4) { width: 16%; }
  .reconciliation-table th:nth-child(5), .reconciliation-table td:nth-child(5) { width: 16%; }
  .reconciliation-table th:nth-child(6), .reconciliation-table td:nth-child(6) { width: 16%; }
  .reconciliation-table th:nth-child(7), .reconciliation-table td:nth-child(7) { width: 9%; }
  .reconciliation-table th:nth-child(8), .reconciliation-table td:nth-child(8) { width: 7%; }
}
.removal-open-button { padding: 8px 10px; white-space: nowrap; }
.remove-residue-dialog { width: min(680px, calc(100% - 30px)); }
.removal-evidence { padding: 14px 15px; display: grid; gap: 6px; border-left: 4px solid #b42318; background: #fff4f2; }
.removal-evidence strong { color: #8e261e; font-size: 13px; }
.removal-evidence span { color: #5e4b48; font-size: 11px; }
.detail-field { padding: 13px; border: 1px solid var(--line); border-radius: 10px; background: #f8fbfc; }
.detail-field span, .detail-field strong { display: block; }
.detail-field span { margin-bottom: 5px; color: var(--muted); font-size: 10px; font-weight: 800; letter-spacing: .05em; text-transform: uppercase; }
.detail-field strong { overflow-wrap: anywhere; color: var(--navy); font-size: 13px; }
.detail-section { margin-top: 22px; }
.detail-section h3 { margin: 0 0 10px; color: var(--navy); font-size: 15px; }
.timeline { display: grid; gap: 8px; max-height: 260px; overflow: auto; }
.timeline-item { padding: 11px 13px; display: grid; grid-template-columns: 150px 1fr auto; gap: 12px; border-left: 3px solid #9cd8e4; background: #f7fbfc; font-size: 12px; }
.timeline-item small { color: var(--muted); }
.related-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 9px; }
.related-item { padding: 12px; border: 1px solid var(--line); border-radius: 9px; font-size: 12px; }
.document-items { margin-top: 20px; border: 1px solid var(--line); border-radius: 10px; overflow: auto; max-height: 310px; }
.document-items h3 { position: sticky; left: 0; margin: 0; padding: 13px 15px; color: var(--navy); background: #edf3f6; font-size: 14px; }
.document-preview-heading { display: flex; justify-content: space-between; gap: 14px; margin: 4px 0 10px; color: var(--navy); }
.document-preview-heading span { color: var(--muted); font-size: 12px; }
.document-follow-up-alert { margin-bottom: 14px; padding: 13px 15px; border: 1px solid #edc776; border-left: 5px solid #d28a11; border-radius: 9px; background: #fff8e9; }
.document-follow-up-alert strong { color: #875300; }
.document-follow-up-alert p { margin: 5px 0 0; color: #5f574b; font-size: 12px; }
.document-screen-preview { max-width: 850px; margin: 0 auto; padding: 30px 34px; border: 1px solid var(--line); border-radius: 8px; background: #fff; box-shadow: 0 10px 28px rgba(16,47,75,.08); color: #17354d; font-family: Arial, sans-serif; }
.document-screen-preview .print-main-header { display: flex; justify-content: space-between; gap: 22px; padding-bottom: 14px; border-bottom: 3px solid var(--cyan); }
.document-screen-preview .print-brand { display: flex; align-items: center; gap: 16px; min-width: 0; }
.document-screen-preview .print-brand img { width: 96px; height: 96px; flex: 0 0 96px; object-fit: contain; }
.document-screen-preview .print-main-header p { margin: 0 0 5px; color: var(--cyan); font-size: 10px; font-weight: 800; letter-spacing: .14em; }
.document-screen-preview .print-main-header h1 { margin: 0; font-size: 22px; }
.document-screen-preview .print-main-header small { color: var(--muted); }
.document-screen-preview .print-folio { display: grid; gap: 3px; flex: 0 0 220px; text-align: right; }
.document-screen-preview .print-folio span, .document-screen-preview .print-folio em { color: var(--muted); font-size: 10px; font-style: normal; }
.document-screen-preview .print-overview { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); margin: 15px 0; border: 1px solid var(--line); }
.document-screen-preview .print-overview div { min-height: 44px; padding: 8px 10px; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.document-screen-preview .print-overview span, .document-screen-preview .print-overview strong { display: block; overflow-wrap: anywhere; }
.document-screen-preview .print-overview span { color: var(--muted); font-size: 9px; text-transform: uppercase; }
.document-screen-preview .print-overview strong { margin-top: 3px; font-size: 11px; }
.document-screen-preview .print-summary { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 8px; margin: 14px 0; }
.document-screen-preview .print-summary div { padding: 10px 11px; border: 1px solid #b9d9e3; border-radius: 8px; background: #eef8fb; }
.document-screen-preview .print-summary div.gold { border-color: #ead09a; background: #fff7e7; }
.document-screen-preview .print-summary div.green { border-color: #abd9c6; background: #edf9f4; }
.document-screen-preview .print-summary strong, .document-screen-preview .print-summary span { display: block; overflow-wrap: anywhere; }
.document-screen-preview .print-summary strong { color: var(--navy); font-size: 16px; }
.document-screen-preview .print-summary span { margin-top: 2px; color: var(--muted); font-size: 9px; }
.document-screen-preview .print-delivery-profile { margin: 15px 0; padding: 14px 16px; border: 1px solid #b9d9e3; border-left: 4px solid var(--cyan); border-radius: 9px; background: #f3fafc; }
.document-screen-preview .print-delivery-person { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
.document-screen-preview .print-delivery-person span, .document-screen-preview .print-delivery-person strong, .document-screen-preview .print-delivery-person small { display: block; }
.document-screen-preview .print-delivery-person span { color: var(--cyan); font-size: 9px; font-weight: 900; letter-spacing: .12em; }
.document-screen-preview .print-delivery-person strong { margin-top: 4px; color: var(--navy); font-size: 15px; }
.document-screen-preview .print-delivery-person small { margin-top: 2px; color: var(--muted); font-size: 9px; }
.document-screen-preview .print-delivery-person b { padding: 5px 9px; border-radius: 999px; color: #167254; background: #dff5eb; font-size: 9px; text-transform: uppercase; }
.document-screen-preview .print-delivery-person b.blue { color: #096080; background: #dff3fa; }
.document-screen-preview .print-delivery-person b.gold { color: #8a5a00; background: #fff0ce; }
.document-screen-preview .print-delivery-meta { display: flex; flex-wrap: wrap; gap: 12px 28px; margin-top: 12px; }
.document-screen-preview .print-delivery-meta div { min-width: 150px; flex: 1 1 0; }
.document-screen-preview .print-delivery-meta span, .document-screen-preview .print-delivery-meta strong { display: block; }
.document-screen-preview .print-delivery-meta span { color: var(--muted); font-size: 8px; font-weight: 800; text-transform: uppercase; }
.document-screen-preview .print-delivery-meta strong { margin-top: 3px; color: #294b60; font-size: 10px; }
.document-screen-preview h2 { margin: 16px 0 8px; font-size: 15px; }
.document-screen-preview .subsection-label { margin: 13px 0 7px; color: var(--navy); font-size: 12px; font-weight: 800; }
.document-screen-preview table { width: 100%; border-collapse: collapse; table-layout: fixed; font-size: 10px; }
.document-screen-preview th, .document-screen-preview td { padding: 6px; border: 1px solid var(--line); text-align: left; vertical-align: top; overflow-wrap: anywhere; }
.document-screen-preview th { color: #fff; background: var(--deep); }
.document-screen-preview td small { display: block; margin-top: 3px; color: var(--muted); }
.document-screen-preview .print-notes, .document-screen-preview .print-core, .document-screen-preview .print-policy-reference, .document-screen-preview .print-terms > p { margin-top: 13px; padding: 10px 12px; border: 1px solid var(--line); border-radius: 7px; }
.document-screen-preview .print-notes strong, .document-screen-preview .print-core strong, .document-screen-preview .print-policy-reference strong { display: block; margin-bottom: 4px; color: var(--cyan); }
.document-screen-preview .print-notes p, .document-screen-preview .print-core p, .document-screen-preview .print-policy-reference span, .document-screen-preview .print-terms { font-size: 10px; line-height: 1.5; }
.document-screen-preview .print-signatures { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 50px; margin-top: 36px; }
.document-screen-preview .print-signatures div { display: flex; min-height: 55px; flex-direction: column; justify-content: flex-end; text-align: center; }
.document-screen-preview .print-signatures span { border-top: 1px solid #263f50; }
.document-screen-preview .print-signatures strong, .document-screen-preview .print-signatures small { margin-top: 4px; font-size: 9px; }
.document-screen-preview .print-signatures em { margin-top: 7px; color: var(--muted); font-size: 8px; font-style: normal; }
.document-screen-preview .print-page-break { margin-top: 28px; padding-top: 20px; border-top: 2px dashed var(--line); }
.document-screen-preview .print-continuation { display: flex; align-items: center; gap: 12px; padding-bottom: 10px; border-bottom: 2px solid var(--cyan); }
.document-screen-preview .print-continuation img { width: 68px; height: 68px; object-fit: contain; }
.document-screen-preview .print-continuation strong, .document-screen-preview .print-continuation span { display: block; }
.document-screen-preview .print-continuation span { color: var(--muted); font-size: 9px; }
.document-screen-preview .terms-heading p { margin: 16px 0 3px; color: var(--cyan); font-size: 9px; font-weight: 800; letter-spacing: .14em; }
.document-screen-preview .terms-heading h2 { margin: 0 0 3px; font-size: 21px; }
.document-screen-preview .terms-heading span { color: var(--muted); font-size: 10px; }
.document-screen-preview .terms-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin-top: 14px; }
.document-screen-preview .terms-grid article { display: grid; grid-template-columns: 28px 1fr; gap: 8px; padding: 10px; border: 1px solid var(--line); border-radius: 7px; }
.document-screen-preview .terms-grid article > b { display: grid; width: 25px; height: 25px; place-items: center; border-radius: 50%; color: #fff; background: var(--cyan); }
.document-screen-preview .terms-grid article strong { font-size: 10px; }
.document-screen-preview .terms-grid article p { margin: 3px 0 0; font-size: 9px; line-height: 1.4; }
.document-screen-preview .terms-grid .wide-term { grid-column: 1 / -1; }
.document-screen-preview .print-acceptance, .document-screen-preview .print-declaration-box { margin-top: 13px; padding: 11px 13px; border-left: 4px solid #efc777; background: #fff8ea; }
.document-screen-preview .print-acceptance p, .document-screen-preview .print-declaration-box p { margin: 4px 0 0; font-size: 10px; line-height: 1.45; }
.document-screen-preview .return-result { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin-top: 15px; padding: 13px 15px; border: 1px solid #a9d7c5; border-radius: 8px; background: #eef9f5; }
.document-screen-preview .return-result span, .document-screen-preview .return-result strong { display: block; }
.document-screen-preview .return-result span { color: #18765a; font-size: 8px; font-weight: 800; letter-spacing: .12em; }
.document-screen-preview .return-result strong { margin-top: 3px; font-size: 14px; }
.document-screen-preview .return-result p { margin: 3px 0 0; font-size: 9px; }
.document-screen-preview .return-result > b { padding: 7px 10px; border-radius: 999px; color: #fff; background: #16845f; font-size: 9px; }
.document-screen-preview .extra-return-row { background: #f6fafb; }
.document-screen-preview footer { margin-top: 22px; padding-top: 7px; border-top: 1px solid var(--line); color: var(--muted); font-size: 8px; text-align: center; }
.document-record-details { margin-top: 18px; }
.document-record-details summary { cursor: pointer; color: var(--cyan); font-weight: 800; }
.document-record-details .asset-overview { margin-top: 14px; }
#print-sheet { display: none; }
@media print {
  @page { size: letter portrait; margin: 13mm; }
  body:not(.printing-labels) > *:not(#print-sheet) { display: none !important; }
  #print-sheet { display: block !important; color: #102f4b; background: #fff; font-family: Arial, sans-serif; }
  .print-document header { position: relative; padding-bottom: 13px; border-bottom: 3px solid #087da4; }
  .print-document header p { margin: 0 0 6px; color: #087da4; font-size: 10px; font-weight: 800; letter-spacing: .14em; }
  .print-document h1 { max-width: 100%; margin: 0; font-size: 21px; line-height: 1.2; overflow-wrap: anywhere; }
  .print-folio { position: absolute; top: 0; right: 0; display: grid; max-width: 190px; gap: 4px; text-align: right; }
  .print-folio span { color: #587083; font-size: 9px; text-transform: uppercase; }
  .print-folio strong { font-size: 12px; }
  .print-overview { margin: 14px 0; display: grid; grid-template-columns: repeat(3, 1fr); border: 1px solid #bfcdd5; }
  .print-overview div { min-height: 38px; padding: 7px 9px; border-right: 1px solid #d7e0e5; border-bottom: 1px solid #d7e0e5; }
  .print-overview span, .print-overview strong { display: block; overflow-wrap: anywhere; }
  .print-overview span { margin-bottom: 3px; color: #587083; font-size: 7px; font-weight: 700; text-transform: uppercase; }
  .print-overview strong { font-size: 9px; }
  .print-items h2 { margin: 13px 0 7px; font-size: 13px; }
  .print-items table { width: 100%; border-collapse: collapse; table-layout: auto; font-size: 7px; }
  .print-items th, .print-items td { padding: 5px 4px; border: 1px solid #bac9d1; text-align: left; overflow-wrap: anywhere; }
  .print-items th { color: #fff; background: #145b76 !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .print-declaration { margin: 18px 0 26px; font-size: 9px; line-height: 1.5; }
  .print-signatures { display: grid; grid-template-columns: repeat(3, 1fr); gap: 25px; page-break-inside: avoid; }
  .print-signatures div { min-width: 0; min-height: 65px; display: flex; flex-direction: column; justify-content: flex-end; text-align: center; }
  .print-signatures span { border-top: 1px solid #263f50; }
  .print-signatures strong { min-height: 13px; margin-top: 5px; font-size: 9px; overflow-wrap: anywhere; }
  .print-signatures small { color: #587083; font-size: 8px; }
  .print-document footer { margin-top: 22px; padding-top: 7px; border-top: 1px solid #cbd6dc; color: #6a7d89; font-size: 7px; text-align: center; }
  .print-document { width: 100%; color: #17354d; }
  .print-primary-page, .print-terms { min-height: 242mm; display: flex; flex-direction: column; }
  .print-main-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; }
  .print-brand { display: flex; width: calc(100% - 205px); align-items: center; gap: 13px; min-width: 0; }
  .print-brand img { width: 82px; height: 82px; flex: 0 0 82px; object-fit: contain; }
  .print-brand > div { min-width: 0; flex: 1 1 auto; }
  .print-main-header small { display: block; margin-top: 5px; color: #587083; font-size: 9px; }
  .print-folio em { color: #587083; font-size: 8px; font-style: normal; }
  .print-summary { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 7px; margin: 11px 0 12px; }
  .print-summary div { min-height: 40px; padding: 7px 8px; border: 1px solid #b9d9e3; border-radius: 6px; background: #eef8fb !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .print-summary div.gold { border-color: #ead09a; background: #fff7e7 !important; }
  .print-summary div.green { border-color: #abd9c6; background: #edf9f4 !important; }
  .print-summary strong, .print-summary span { display: block; overflow-wrap: anywhere; }
  .print-summary strong { color: #17354d; font-size: 12px; }
  .print-summary span { margin-top: 2px; color: #587083; font-size: 7px; }
  .print-delivery-profile { margin: 11px 0 13px; padding: 9px 11px; border: 1px solid #b9d9e3; border-left: 4px solid #087da4; border-radius: 6px; background: #f3fafc !important; break-inside: avoid; page-break-inside: avoid; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .print-delivery-person { display: flex; align-items: flex-start; justify-content: space-between; gap: 18px; }
  .print-delivery-person > div { min-width: 0; }
  .print-delivery-person span, .print-delivery-person strong, .print-delivery-person small { display: block; }
  .print-delivery-person span { color: #087da4; font-size: 7px; font-weight: 900; letter-spacing: .12em; }
  .print-delivery-person strong { margin-top: 3px; color: #17354d; font-size: 11px; overflow-wrap: anywhere; }
  .print-delivery-person small { margin-top: 2px; color: #587083; font-size: 7px; }
  .print-delivery-person b { padding: 4px 7px; border-radius: 999px; color: #176b50; background: #dff5eb !important; font-size: 7px; text-transform: uppercase; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .print-delivery-person b.blue { color: #096080; background: #dff3fa !important; }
  .print-delivery-person b.gold { color: #8a5a00; background: #fff0ce !important; }
  .print-delivery-meta { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 7px 24px; margin-top: 9px; }
  .print-delivery-meta div { min-width: 0; }
  .print-delivery-meta span, .print-delivery-meta strong { display: block; overflow-wrap: anywhere; }
  .print-delivery-meta span { color: #587083; font-size: 6.5px; font-weight: 800; text-transform: uppercase; }
  .print-delivery-meta strong { margin-top: 2px; color: #294b60; font-size: 8px; }
  .print-items table { table-layout: fixed; }
  .print-items thead { display: table-header-group; }
  .print-items tr { break-inside: avoid; page-break-inside: avoid; }
  .print-items td small { display: block; margin-top: 3px; color: #587083; font-size: 6.8px; line-height: 1.3; }
  .asset-print-table th:nth-child(1) { width: 16%; }
  .asset-print-table th:nth-child(2) { width: 22%; }
  .asset-print-table th:nth-child(3) { width: 18%; }
  .asset-print-table th:nth-child(4) { width: 34%; }
  .asset-print-table th:nth-child(5) { width: 10%; }
  .extras-print-table th:nth-child(1) { width: 22%; }
  .extras-print-table th:nth-child(2) { width: 31%; }
  .extras-print-table th:nth-child(3) { width: 10%; }
  .extras-print-table th:nth-child(4) { width: 37%; }
  .subsection-label { margin: 12px 0 6px; color: #17354d; font-size: 10px; font-weight: 800; }
  .return-print-table th:nth-child(1) { width: 18%; }
  .return-print-table th:nth-child(2) { width: 21%; }
  .return-print-table th:nth-child(3) { width: 8%; }
  .return-print-table th:nth-child(4) { width: 17%; }
  .return-print-table th:nth-child(5) { width: 12%; }
  .return-print-table th:nth-child(6) { width: 24%; }
  .print-notes, .print-core, .print-policy-reference { margin-top: 12px; padding: 9px 11px; border: 1px solid #cbd9df; border-radius: 7px; break-inside: avoid; page-break-inside: avoid; }
  .print-notes strong, .print-core strong, .print-policy-reference strong { display: block; margin-bottom: 4px; color: #0b6c8e; font-size: 9px; }
  .print-notes p, .print-core p { margin: 0; font-size: 8.5px; line-height: 1.45; overflow-wrap: anywhere; }
  .print-policy-reference { display: grid; gap: 4px; border-left: 4px solid #0a9b77; background: #f2fbf8 !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .print-policy-reference span { font-size: 8.5px; line-height: 1.4; }
  .two-signatures { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 48px; }
  .print-primary-page > .print-signatures, .print-terms > .print-signatures { margin-top: auto; }
  .print-signatures em { margin-top: 6px; color: #587083; font-size: 7px; font-style: normal; }
  .print-page-break { break-before: page; page-break-before: always; }
  .print-continuation { display: flex; align-items: center; gap: 10px; margin-bottom: 12px; padding-bottom: 8px; border-bottom: 2px solid #087da4; color: #587083; font-size: 8px; }
  .print-continuation img { width: 58px; height: 58px; object-fit: contain; }
  .print-continuation strong, .print-continuation span { display: block; }
  .terms-heading p { margin: 0 0 3px; color: #087da4; font-size: 8px; font-weight: 800; letter-spacing: .14em; }
  .terms-heading h2 { margin: 0 0 3px; color: #17354d; font-size: 18px; }
  .terms-heading span { color: #587083; font-size: 8px; }
  .terms-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 7px; margin-top: 12px; }
  .terms-grid article { display: grid; grid-template-columns: 23px 1fr; gap: 7px; padding: 8px; border: 1px solid #cbd9df; border-radius: 6px; break-inside: avoid; page-break-inside: avoid; }
  .terms-grid article > b { display: grid; width: 21px; height: 21px; place-items: center; border-radius: 50%; color: #fff; background: #087da4 !important; font-size: 8px; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .terms-grid article strong { font-size: 8.5px; }
  .terms-grid article p { margin: 2px 0 0; font-size: 7.5px; line-height: 1.38; }
  .terms-grid .wide-term { grid-column: 1 / -1; }
  .print-acceptance, .print-declaration-box { margin-top: 12px; padding: 9px 10px; border-left: 4px solid #efc777; background: #fff8ea !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .print-acceptance strong, .print-declaration-box strong { font-size: 9px; }
  .print-acceptance p, .print-declaration-box p { margin: 3px 0 0; font-size: 8px; line-height: 1.42; }
  .return-result { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-top: 12px; padding: 10px 12px; border: 1px solid #a9d7c5; border-radius: 7px; background: #eef9f5 !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .return-result span, .return-result strong { display: block; }
  .return-result span { color: #18765a; font-size: 7px; font-weight: 800; letter-spacing: .12em; }
  .return-result strong { margin-top: 2px; font-size: 11px; }
  .return-result p { margin: 2px 0 0; font-size: 8px; }
  .return-result > b { padding: 6px 9px; border-radius: 999px; color: #fff; background: #16845f !important; font-size: 8px; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .extra-return-row { background: #f6fafb !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
}
@media (max-width: 900px) {
  .return-review-fields { grid-template-columns: 1fr 1fr; }
  .return-review-fields .return-notes { grid-column: 1 / -1; }
  .app-shell { grid-template-columns: 76px minmax(0, 1fr); }
  .sidebar { padding: 24px 11px; }
  .brand { justify-content: center; padding-inline: 0; }
  .brand div, .nav-item:not(.active)::after, .nav-item { font-size: 0; }
  .nav-group-label { display: none; }
  .nav-item { justify-content: center; padding: 13px; }
  .nav-item span { font-size: 18px; }
  .sidebar-note { justify-content: center; padding: 13px; }
  .sidebar-note div { display: none; }
  .metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .user-grid { grid-template-columns: 1fr; }
  .asset-overview { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .employee-summary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .audit-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .audit-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .audit-search { grid-column: 1 / -1; }
  .report-metrics { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .report-layout, .report-secondary-layout { grid-template-columns: 1fr; }
  .report-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .report-search { grid-column: 1 / -1; }
  .reconciliation-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .reconciliation-search { grid-column: 1 / -1; }
  .reconciliation-rules { grid-template-columns: 1fr; }
}
@media (max-width: 620px) {
  .return-review-fields { grid-template-columns: 1fr; }
  .return-review-fields .return-notes { grid-column: auto; }
  .app-shell { display: block; }
  .sidebar { position: static; width: auto; height: auto; padding: 14px; flex-direction: row; align-items: center; gap: 10px; }
  .brand { border: 0; padding: 0; }
  .brand-mark { width: 40px; height: 40px; }
  .picker-input-row { grid-template-columns: 1fr; }
  nav { margin: 0; display: flex; overflow-x: auto; }
  .nav-group-label { display: none; }
  .sidebar-note { display: none; }
  main { padding: 22px 14px 45px; }
  .topbar { align-items: flex-start; }
  .top-actions { align-items: flex-end; flex-direction: column; }
  .user-chip { display: none; }
  .connection { margin-top: 2px; }
  .metrics { grid-template-columns: 1fr 1fr; gap: 10px; }
  .metrics article { min-height: 118px; padding: 16px; }
  .dashboard-return-alert { grid-template-columns: auto minmax(0, 1fr); }
  .dashboard-return-alert .secondary-button { grid-column: 1 / -1; }
  .responsive-heading { align-items: stretch; flex-direction: column; }
  .related-grid { grid-template-columns: 1fr; }
  .employee-summary-grid { grid-template-columns: 1fr 1fr; }
  .audit-change-grid, .audit-filters { grid-template-columns: 1fr; }
  .audit-search { grid-column: auto; }
  .audit-filter-buttons { align-items: stretch; }
  .report-metrics { grid-template-columns: 1fr 1fr; }
  .report-filters { grid-template-columns: 1fr; }
  .report-search { grid-column: auto; }
  .report-filter-buttons { align-items: stretch; }
  .reconciliation-notice { align-items: flex-start; flex-direction: column; }
  .reconciliation-metrics { grid-template-columns: 1fr 1fr; }
  .reconciliation-filters { grid-template-columns: 1fr; }
  .reconciliation-search { grid-column: auto; }
  .reconciliation-filter-buttons { align-items: stretch; }
  .timeline-item { grid-template-columns: 1fr; gap: 4px; }
  .operation-tabs { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 4px; }
  .operation-actions { flex-wrap: nowrap; overflow-x: auto; padding-bottom: 4px; }
  th, td { padding-inline: 12px; }
}

/* V19.5: documento adaptable en pantalla e impresion segura */
.document-screen-preview { max-width: 100%; overflow-x: auto; }
.document-screen-preview .print-document { width: min(100%, 900px); max-width: 100%; margin-inline: auto; box-sizing: border-box; }
.document-screen-preview .print-items table { width: 100%; max-width: 100%; }
.document-screen-preview .print-items th,
.document-screen-preview .print-items td,
.document-screen-preview .print-notes,
.document-screen-preview .print-notes p { min-width: 0; max-width: 100%; overflow-wrap: anywhere; word-break: break-word; white-space: normal; }
@media print {
  .print-document, .print-primary-page, .print-items, .print-items table { max-width: 100% !important; box-sizing: border-box; }
  .print-items table { table-layout: fixed !important; }
  .print-items th, .print-items td, .print-notes, .print-notes p { min-width: 0 !important; max-width: 100% !important; overflow-wrap: anywhere !important; word-break: break-word !important; white-space: normal !important; }
}


/* V19.6: formularios consistentes, modales amplios y extras estructurados */
.extras-field { display: grid; gap: 9px; }
.field-label { font-weight: 700; color: var(--navy); }
.extras-editor { display: grid; gap: 9px; }
.extra-editor-row { display: grid; grid-template-columns: minmax(180px, 1.2fr) 110px minmax(220px, 1.2fr) auto; gap: 10px; align-items: center; padding: 9px; border: 1px solid var(--line); border-radius: 10px; background: #fbfdfe; }
.extra-editor-row input { margin-top: 0 !important; min-width: 0; }
.extras-add { justify-self: start; }
.picker-chip-list { flex-wrap: wrap; }
.picker-category-tabs { display: flex; gap: 8px; margin-bottom: 10px; flex-wrap: wrap; }
.picker-category-tabs button { padding: 8px 14px; border: 1px solid #b9d4de; border-radius: 999px; background: #f4fafc; color: var(--navy); font-weight: 800; cursor: pointer; }
.picker-category-tabs button.active { color: #fff; background: var(--cyan); border-color: var(--cyan); }
.wide-dialog { width: min(96vw, 1500px); max-width: 96vw; }
.wide-dialog .dialog-card { width: 100%; max-width: none; }
.document-record-details .table-wrap, .report-alert-detail-table, .picker-table-wrap { max-width: 100%; }
.document-record-details table, .report-alert-detail-table table { width: 100%; table-layout: fixed; }
.document-record-details th, .document-record-details td, .report-alert-detail-table th, .report-alert-detail-table td { white-space: normal; overflow-wrap: anywhere; word-break: break-word; min-width: 0; }
@media (max-width: 900px) { .extra-editor-row { grid-template-columns: 1fr 90px; } .extra-editor-row .extra-notes { grid-column: 1 / -1; } }
@media (max-width: 620px) { .extra-editor-row { grid-template-columns: 1fr; } .extra-editor-row .extra-notes { grid-column: auto; } }
@media print {
  .responsibility-print .print-items table, .return-print .print-items table { font-size: 8.2px; }
  .responsibility-print .print-items th, .responsibility-print .print-items td, .return-print .print-items th, .return-print .print-items td { padding: 5.5px 4.5px; }
  .responsibility-print .print-overview strong, .return-print .print-overview strong { font-size: 9.5px; }
  .responsibility-print .print-notes p, .return-print .print-notes p { font-size: 8.5px; }
}


/* V19.7: UX contextual, sugerencias compactas, documentos legibles */
.required-mark { color: #b42318; font-weight: 900; }
.smart-input-wrap { position: relative; display: block; width: 100%; margin-top: 7px; }
.account-form .smart-input-wrap input, .dialog-card .smart-input-wrap input { margin-top: 0; }
.smart-suggestion-list { display: none; position: absolute; z-index: 80; top: calc(100% + 4px); left: 0; right: 0; max-height: 250px; overflow-y: auto; padding: 5px; border: 1px solid #b9ccd6; border-radius: 10px; background: #fff; box-shadow: 0 14px 34px rgba(13,46,64,.18); }
.smart-suggestion-list.open { display: grid; }
.smart-suggestion-list button { padding: 9px 10px; border: 0; border-radius: 7px; color: var(--navy); background: transparent; text-align: left; font: inherit; font-size: 12px; font-weight: 750; cursor: pointer; }
.smart-suggestion-list button:hover, .smart-suggestion-list button:focus { background: #eaf7fb; outline: none; }
.smart-suggestion-list > span { padding: 10px; color: var(--muted); font-size: 11px; }

.operation-context-summary { grid-column: 1 / -1; margin-top: 8px; padding: 12px; border: 1px solid #c9dbe3; border-left: 4px solid var(--cyan); border-radius: 10px; background: #f7fbfd; }
.operation-context-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; margin-bottom: 9px; }
.operation-context-heading strong { color: var(--navy); font-size: 13px; }
.operation-context-heading small { color: var(--muted); font-size: 10px; }
.operation-context-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 7px; }
.operation-context-grid > div { min-width: 0; padding: 7px 8px; border-radius: 7px; background: #fff; }
.operation-context-grid span, .operation-context-grid strong { display: block; overflow-wrap: anywhere; }
.operation-context-grid span { color: var(--muted); font-size: 9px; text-transform: uppercase; font-weight: 800; }
.operation-context-grid strong { margin-top: 2px; color: var(--navy); font-size: 11px; }
.context-asset-list { display: grid; gap: 5px; margin-top: 10px; padding-top: 9px; border-top: 1px solid #d9e5ea; }
.context-asset-list > strong { color: var(--navy); font-size: 11px; }
.context-asset-list span { padding: 5px 7px; border-radius: 6px; background: #fff; color: #496575; font-size: 10px; }
.context-asset-list b { color: var(--navy); margin-right: 5px; }
.contextual-warning { padding: 11px 13px; border: 1px solid #e5b84c; border-left: 4px solid #e5a11f; border-radius: 9px; background: #fff8e8; color: #75500e; font-size: 11px; line-height: 1.4; }
.contextual-warning strong { display: block; margin-bottom: 2px; }

.picker-chip-list { display: block; width: 100%; min-height: 46px; padding: 8px; }
.selected-assets-heading { display: flex; justify-content: space-between; gap: 10px; padding: 3px 4px 9px; }
.selected-assets-heading strong { color: var(--navy); font-size: 12px; }
.selected-assets-heading span { color: var(--muted); font-size: 10px; }
.selected-assets-table { width: 100%; overflow-x: auto; border: 1px solid var(--line); border-radius: 8px; }
.selected-assets-table table { width: 100%; border-collapse: collapse; min-width: 720px; }
.selected-assets-table th, .selected-assets-table td { padding: 8px 9px; border-bottom: 1px solid #e4ecef; text-align: left; font-size: 10px; vertical-align: middle; }
.selected-assets-table th { color: #526d7b; background: #eef5f7; text-transform: uppercase; font-size: 8px; letter-spacing: .04em; }
.picker-remove-row { padding: 6px 8px; border: 1px solid #e8bcbc; border-radius: 7px; color: #9a3030; background: #fff2f2; font-size: 9px; font-weight: 800; cursor: pointer; }

.recorded-items-readable { display: grid; gap: 12px; margin-top: 18px; }
.recorded-items-title { display: flex; justify-content: space-between; gap: 12px; padding: 11px 13px; border-radius: 9px; background: #edf4f7; }
.recorded-items-title strong { color: var(--navy); }
.recorded-items-title span { color: var(--muted); font-size: 11px; }
.recorded-item-card { overflow: hidden; border: 1px solid #cbdbe2; border-radius: 11px; background: #fff; }
.recorded-item-card > header { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 11px 13px; background: #f5fafc; border-bottom: 1px solid #dce8ed; }
.recorded-item-card header span { display: block; color: var(--cyan); font-size: 9px; font-weight: 900; }
.recorded-item-card h4 { margin: 2px 0 0; color: var(--navy); font-size: 14px; }
.recorded-item-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0; }
.recorded-item-grid > div { padding: 10px 12px; border-right: 1px solid #edf2f4; border-bottom: 1px solid #edf2f4; min-width: 0; }
.recorded-item-grid span, .recorded-item-grid strong { display: block; overflow-wrap: anywhere; }
.recorded-item-grid span { color: var(--muted); font-size: 8px; text-transform: uppercase; font-weight: 800; }
.recorded-item-grid strong { margin-top: 3px; color: #294b60; font-size: 10px; }
.recorded-extras { padding: 10px 12px; background: #fbfdfd; }
.recorded-extras > strong { display: block; margin-bottom: 7px; color: var(--navy); font-size: 10px; }
.recorded-extras > div { display: grid; grid-template-columns: minmax(0,1fr) 50px minmax(0,1fr); gap: 8px; padding: 6px 0; border-top: 1px solid #e8eef1; font-size: 10px; }
.recorded-extras small { color: var(--muted); }

@media (max-width: 760px) {
  .operation-context-grid { grid-template-columns: 1fr 1fr; }
  .recorded-item-grid { grid-template-columns: 1fr 1fr; }
  .operation-context-heading, .selected-assets-heading, .recorded-items-title { align-items: flex-start; flex-direction: column; }
}

@media print {
  .responsibility-print .print-items table, .return-print .print-items table { font-size: 9.2px; }
  .responsibility-print .print-items th, .responsibility-print .print-items td, .return-print .print-items th, .return-print .print-items td { padding: 6.2px 5px; line-height: 1.3; }
  .responsibility-print .print-overview strong, .return-print .print-overview strong { font-size: 10.5px; }
  .responsibility-print .print-overview span, .return-print .print-overview span { font-size: 7.8px; }
  .responsibility-print .print-notes p, .return-print .print-notes p, .responsibility-print .print-core p, .return-print .print-declaration-box p { font-size: 9.2px; line-height: 1.5; }
  .responsibility-print .print-signatures strong, .return-print .print-signatures strong { font-size: 10px; }
  .responsibility-print .print-signatures small, .return-print .print-signatures small { font-size: 8.5px; }

  .custody-print .print-items table { font-size: 8.8px; }
  .custody-print .print-items th, .custody-print .print-items td { padding: 6px 5px; line-height: 1.35; }
  .custody-assets-table th:nth-child(1) { width: 11%; }
  .custody-assets-table th:nth-child(2) { width: 14%; }
  .custody-assets-table th:nth-child(3) { width: 16%; }
  .custody-assets-table th:nth-child(4) { width: 28%; }
  .custody-assets-table th:nth-child(5) { width: 11%; }
  .custody-assets-table th:nth-child(6) { width: 20%; }
  .custody-extras-page { min-height: 242mm; }
  .custody-extra-group { margin: 0 0 12px; break-inside: avoid; page-break-inside: avoid; }
  .custody-extra-group h3 { margin: 0 0 5px; padding: 6px 8px; color: #17354d; background: #edf6f8 !important; border-left: 3px solid #087da4; font-size: 10px; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .custody-extras-table { width: 100%; border-collapse: collapse; table-layout: fixed; font-size: 8.8px; }
  .custody-extras-table th, .custody-extras-table td { padding: 6px; border: 1px solid #c4d1d8; text-align: left; overflow-wrap: anywhere; }
  .custody-extras-table th { color: #fff; background: #145b76 !important; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
  .custody-extras-table th:nth-child(1) { width: 42%; } .custody-extras-table th:nth-child(2) { width: 12%; } .custody-extras-table th:nth-child(3) { width: 46%; }
  .custody-policy-summary { margin-top: 16px; padding: 11px 13px; border: 1px solid #cbd9df; border-radius: 7px; break-inside: avoid; }
  .custody-policy-summary h2 { margin: 0 0 8px; color: #17354d; font-size: 13px; }
  .custody-policy-summary ol { margin: 0; padding-left: 18px; columns: 2; column-gap: 24px; }
  .custody-policy-summary li { margin: 0 0 7px; font-size: 8.5px; line-height: 1.4; break-inside: avoid; }
}


/* V19.7.1: layout responsivo global, catalogos inteligentes y selectores reversibles */
main { width: 100%; max-width: none; }
#view-asset-create { width: 100%; }
.operation-hub, .controlled-write-panel { width: 100%; max-width: none; }
.account-form { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.picker-input-row { min-width: 0; grid-template-columns: minmax(0,1fr) auto auto; }
.picker-multi-row { grid-template-columns: minmax(0,1fr) auto; }
.picker-clear-button { white-space: nowrap; }
.operation-context-summary { min-width: 0; }
.operation-context-grid { grid-template-columns: repeat(auto-fit, minmax(145px, 1fr)); }
.selected-assets-table { max-width: 100%; overflow: visible; }
.selected-assets-table table { width: 100%; min-width: 0; table-layout: fixed; }
.selected-assets-table th, .selected-assets-table td { white-space: normal; overflow-wrap: anywhere; vertical-align: top; }
.selected-assets-table th:nth-child(1), .selected-assets-table td:nth-child(1) { width: 13%; }
.selected-assets-table th:nth-child(2), .selected-assets-table td:nth-child(2) { width: 14%; }
.selected-assets-table th:nth-child(3), .selected-assets-table td:nth-child(3) { width: 27%; }
.selected-assets-table th:nth-child(4), .selected-assets-table td:nth-child(4) { width: 18%; }
.selected-assets-table th:nth-child(5), .selected-assets-table td:nth-child(5) { width: 18%; }
.selected-assets-table th:last-child, .selected-assets-table td:last-child { width: 90px; text-align: right; }
.selected-chip-row td { background: #f0fbfd; }
.chip-line-badge { color: #075f89; background: #dff3f8; }
.edit-asset-dialog { width: min(1080px, 92vw); max-width: 92vw; max-height: 90vh; }
.edit-asset-dialog .dialog-card { width: 100%; max-width: none; grid-template-columns: repeat(2,minmax(0,1fr)); }
.edit-asset-dialog .dialog-heading, .edit-asset-dialog .extras-field, .edit-asset-dialog .confirm-field, .edit-asset-dialog .form-error, .edit-asset-dialog .dialog-actions { grid-column: 1 / -1; }
.edit-asset-dialog::backdrop { background: rgba(7,25,38,.55); }
.mobile-nav-toggle { display: none; width: 42px; height: 42px; border: 1px solid var(--line); border-radius: 9px; background: #fff; color: var(--navy); font-size: 21px; cursor: pointer; }

/* Tablas generales: usar el ancho antes de forzar desplazamiento */
.table-wrap table { min-width: 100%; }
.document-record-details table, .report-alert-detail-table table { white-space: normal; }

@media (min-width: 1280px) {
  main { padding-left: clamp(28px,3vw,48px); padding-right: clamp(28px,3vw,48px); }
  .account-form { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px 22px; }
  .operation-context-grid { grid-template-columns: repeat(auto-fit,minmax(170px,1fr)); }
}

@media (max-width: 1000px) {
  .account-form { grid-template-columns: 1fr 1fr; }
  .selected-assets-table { overflow-x: auto; }
  .selected-assets-table table { min-width: 720px; }
  .edit-asset-dialog { width: min(94vw, 980px); max-width: 94vw; }
}

@media (max-width: 760px) {
  .app-shell { display: block; }
  .sidebar { position: fixed; inset: 0 auto 0 0; width: min(82vw, 300px); height: 100vh; z-index: 50; transform: translateX(-105%); transition: transform .2s ease; padding: 20px 14px; flex-direction: column; align-items: stretch; box-shadow: 18px 0 40px rgba(7,25,38,.25); }
  .mobile-nav-open .sidebar { transform: translateX(0); }
  .sidebar .brand { justify-content: flex-start; padding: 0 8px 18px; border-bottom: 1px solid rgba(255,255,255,.12); }
  .sidebar .brand div { display: block; }
  .sidebar nav { display: grid; margin-top: 12px; overflow-y: auto; overflow-x: hidden; }
  .sidebar .nav-group-label { display: block; }
  .sidebar .nav-item { justify-content: flex-start; padding: 12px 14px; font-size: 14px; }
  .sidebar .nav-item span { font-size: 16px; }
  .sidebar .sidebar-note { display: flex; margin-top: auto; }
  .sidebar .sidebar-note div { display: block; }
  .mobile-nav-toggle { display: inline-grid; place-items: center; flex: 0 0 auto; }
  main { padding: 18px 14px 42px; }
  .topbar { display: grid; grid-template-columns: auto minmax(0,1fr); align-items: start; gap: 12px; }
  .top-actions { grid-column: 1 / -1; width: 100%; flex-direction: row; justify-content: space-between; align-items: center; }
  .user-chip { display: block; text-align: left; }
  .account-form { grid-template-columns: 1fr; padding: 16px; gap: 14px; }
  .full-field { grid-column: auto; }
  .panel-heading { min-height: auto; padding: 16px; align-items: flex-start; }
  .panel-heading .pill { flex: 0 0 auto; }
  .operation-hub { padding: 16px; }
  .operation-tabs, .operation-actions { display: flex; overflow-x: auto; gap: 8px; scrollbar-width: thin; }
  .operation-tab, .operation-action { flex: 0 0 auto; }
  .picker-input-row, .picker-multi-row { grid-template-columns: 1fr; }
  .picker-open-button, .picker-clear-button { width: 100%; }
  .operation-context-grid { grid-template-columns: 1fr 1fr; }
  .selected-assets-table { overflow-x: auto; }
  .selected-assets-table table { min-width: 680px; }
  .edit-asset-dialog { width: 96vw; max-width: 96vw; max-height: 92vh; }
  .edit-asset-dialog .dialog-card { grid-template-columns: 1fr; padding: 18px; }
  .edit-asset-dialog .dialog-heading, .edit-asset-dialog .extras-field, .edit-asset-dialog .confirm-field, .edit-asset-dialog .form-error, .edit-asset-dialog .dialog-actions { grid-column: auto; }
  .extra-editor-row { grid-template-columns: 1fr; }
  .extra-editor-row .extra-notes { grid-column: auto; }
  .dialog-actions { position: sticky; bottom: 0; padding-top: 10px; background: #fff; }
}

@media (max-width: 480px) {
  h1 { font-size: 25px; }
  h2 { font-size: 18px; }
  .top-actions { flex-wrap: wrap; }
  .connection { width: 100%; text-align: center; }
  .metrics, .employee-summary-grid, .report-metrics, .reconciliation-metrics { grid-template-columns: 1fr; }
  .operation-context-grid { grid-template-columns: 1fr; }
  .confirm-field { align-items: flex-start; }
  .primary-button.full-field { min-height: 48px; }
}

/* V19.7.2: correcciones de interacción y experiencia móvil */
/* Solo el botón Quitar debe ser interactivo dentro de la columna de acción. */
.selected-assets-table td:last-child { pointer-events: none; }
.selected-assets-table .picker-remove-row { pointer-events: auto; position: relative; z-index: 2; }
.picker-multi-row > .picker-open-button { align-self: start; }

@media (max-width: 760px) {
  /* Evita pestañas cortadas: se distribuyen en filas en lugar de depender de scroll horizontal. */
  .operation-tabs, .operation-actions {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: visible;
    gap: 8px;
  }
  .operation-tab, .operation-action {
    min-width: 0;
    width: 100%;
    white-space: normal;
    text-align: center;
  }

  /* Selector móvil: conserva ID + dato principal + acción y oculta columnas secundarias. */
  .record-picker-dialog { width: min(94vw, 620px); max-width: 94vw; }
  .picker-dialog-card { padding: 18px; }
  .picker-table-wrap { max-width: 100%; overflow: hidden auto; }
  .picker-table-wrap table { width: 100%; min-width: 0; table-layout: fixed; }
  .picker-table-wrap th, .picker-table-wrap td { min-width: 0; padding: 10px 8px; overflow-wrap: anywhere; }
  .picker-table-wrap th:nth-child(n+3):not(:last-child),
  .picker-table-wrap td:nth-child(n+3):not(:last-child) { display: none; }
  .picker-table-wrap th:first-child, .picker-table-wrap td:first-child { width: 42%; }
  .picker-table-wrap th:nth-child(2), .picker-table-wrap td:nth-child(2) { width: 30%; }
  .picker-table-wrap th:last-child, .picker-table-wrap td:last-child {
    width: 28%;
    position: static;
    box-shadow: none;
  }
  .picker-choice { width: 100%; min-width: 0; padding: 9px 7px; }

  /* Selección múltiple móvil: muestra lo esencial sin scroll horizontal. */
  .selected-assets-table { overflow: visible; }
  .selected-assets-table table { min-width: 0; table-layout: fixed; }
  .selected-assets-table th:nth-child(3), .selected-assets-table td:nth-child(3),
  .selected-assets-table th:nth-child(4), .selected-assets-table td:nth-child(4) { display: none; }
  .selected-assets-table th:nth-child(1), .selected-assets-table td:nth-child(1) { width: 26%; }
  .selected-assets-table th:nth-child(2), .selected-assets-table td:nth-child(2) { width: 26%; }
  .selected-assets-table th:nth-child(5), .selected-assets-table td:nth-child(5) { width: auto; }
  .selected-assets-table th:last-child, .selected-assets-table td:last-child { width: 76px; }
}

@media (max-width: 420px) {
  .operation-tabs, .operation-actions { grid-template-columns: 1fr 1fr; }
  .picker-table-wrap th:first-child, .picker-table-wrap td:first-child { width: 45%; }
  .picker-table-wrap th:nth-child(2), .picker-table-wrap td:nth-child(2) { width: 27%; }
  .picker-table-wrap th:last-child, .picker-table-wrap td:last-child { width: 28%; }
}

/* V19.8: navegación operativa en reportes y seguimiento de custodia */
.report-document-summary { display: grid; gap: 10px; }
.report-document-card { width: 100%; padding: 14px 16px; display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 3px 14px; align-items: center; border: 1px solid var(--line); border-radius: 12px; background: #fff; color: inherit; text-align: left; cursor: pointer; }
.report-document-card:hover, .report-document-card:focus-visible { border-color: var(--cyan); box-shadow: 0 0 0 3px rgba(23,162,184,.10); outline: none; }
.report-document-card span, .report-document-card small { grid-column: 1; }
.report-document-card strong { grid-column: 2; grid-row: 1 / span 2; font-size: 24px; color: var(--navy); }
.report-document-card em { grid-column: 2; color: var(--cyan); font-size: 10px; font-style: normal; font-weight: 800; }
.report-nav-row { cursor: pointer; }
.report-nav-row:hover, .report-nav-row:focus-visible { background: #eef9fb; outline: 2px solid rgba(23,162,184,.18); outline-offset: -2px; }

.custody-follow-up { margin: 0 0 18px; padding: 16px; border: 1px solid #bcdbe4; border-radius: 14px; background: #f7fcfd; }
.custody-follow-up-heading { display: flex; justify-content: space-between; gap: 18px; align-items: flex-start; }
.custody-follow-up-heading h3 { margin: 2px 0 0; color: var(--navy); }
.custody-follow-up-metrics { display: flex; gap: 8px; flex-wrap: wrap; }
.custody-follow-up-metrics span { padding: 7px 10px; border: 1px solid var(--line); border-radius: 999px; background: #fff; font-size: 11px; }
.custody-follow-up-metrics strong { color: var(--cyan); }
.custody-follow-up-grid { display: grid; grid-template-columns: minmax(0,1.2fr) minmax(300px,.8fr); gap: 16px; margin-top: 14px; }
.custody-follow-up-grid > section { padding: 12px; border: 1px solid var(--line); border-radius: 12px; background: #fff; }
.custody-follow-up-grid h4 { margin: 0 0 10px; color: var(--navy); }
.custody-history-list { display: grid; gap: 9px; }
.custody-history-list article { padding: 10px; border: 1px solid var(--line); border-radius: 10px; }
.custody-history-list article header { display: flex; justify-content: space-between; gap: 12px; align-items: flex-start; }
.custody-history-list article header small, .custody-history-list article p small { display: block; color: var(--muted); }
.custody-history-list article p { margin: 7px 0 0; }
.custody-history-list article footer { margin-top: 8px; padding-top: 7px; border-top: 1px dashed var(--line); color: var(--muted); font-size: 11px; }
.custody-pending-list { display: grid; gap: 8px; }
.custody-pending-list article { display: flex; gap: 10px; align-items: center; padding: 9px; border: 1px solid var(--line); border-radius: 9px; }
.custody-pending-list article div { min-width: 0; }
.custody-pending-list strong, .custody-pending-list small { display: block; overflow-wrap: anywhere; }
.custody-pending-list small { color: var(--muted); }
.custody-closed-message { padding: 12px; border-radius: 9px; background: #eef9f4; color: #18765a; }

@media (max-width: 900px) {
  .custody-follow-up-grid { grid-template-columns: 1fr; }
  .custody-follow-up-heading { flex-direction: column; }
}

/* V19.8.1 - documentos de custodia */
.compact-document-button{margin-top:10px;padding:7px 10px;font-size:12px}.custody-release-button{margin-top:12px;width:100%}.custody-history-list article .compact-document-button{justify-self:start}

/* V19.9 - pulido consolidado */
.wide-dialog{width:min(1120px,92vw);max-width:92vw;max-height:90vh}.wide-dialog .dialog-card{max-width:100%}.employee-dialog{width:min(1060px,90vw)}#asset-dialog{width:min(1120px,92vw)}.employee-dialog .dialog-card,#asset-dialog .dialog-card{gap:12px;padding:20px}.employee-dialog .detail-section,#asset-dialog .detail-section{margin-top:12px}.employee-dialog .compact-empty{padding:13px 16px;min-height:auto}.employee-dialog .employee-assets{max-height:210px}.employee-admin-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-bottom:10px}.employee-directory-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.employee-directory-tools select{min-width:130px;padding:10px 12px;border:1px solid #c5d3da;border-radius:9px;color:var(--navy);background:#fff;font-weight:750}.edit-employee-dialog{width:min(760px,92vw)}.edit-employee-dialog .dialog-card{grid-template-columns:1fr 1fr}.edit-employee-dialog .dialog-heading,.edit-employee-dialog .full-field{grid-column:1/-1}.custody-assets-table th:nth-child(1){width:14%!important;white-space:nowrap}.custody-assets-table th:nth-child(2){width:14%!important}.custody-assets-table th:nth-child(3){width:17%!important}.custody-assets-table th:nth-child(4){width:27%!important}.custody-assets-table th:nth-child(5){width:11%!important}.custody-assets-table th:nth-child(6){width:17%!important}.custody-assets-table td,.custody-assets-table th{overflow-wrap:break-word;word-break:normal}.loan-return-print .print-items table{table-layout:fixed}.loan-closed-alert .compact-document-button{margin-top:8px}@media(max-width:760px){.edit-employee-dialog .dialog-card{grid-template-columns:1fr}.employee-directory-tools{width:100%}.employee-directory-tools .search{flex:1;min-width:220px}}

.document-screen-preview .print-decision-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}
.document-screen-preview .print-decision-grid article{padding:11px 13px;border:1px solid var(--line);border-radius:8px;background:#f7fafb}
.document-screen-preview .print-decision-grid article.wide{grid-column:1/-1}
.document-screen-preview .print-decision-grid span,.document-screen-preview .print-decision-grid strong{display:block;overflow-wrap:anywhere}
.document-screen-preview .print-decision-grid span{margin-bottom:4px;color:var(--muted);font-size:9px;font-weight:800;text-transform:uppercase}
.document-screen-preview .print-decision-grid strong{font-size:11px;line-height:1.45}
.document-screen-preview .three-signatures{grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.document-screen-preview .pending-custody-items{padding:10px 12px;border-left:4px solid #efc777;background:#fff9ed}
.kit-assets-table th:nth-child(1){width:13%!important}.kit-assets-table th:nth-child(2){width:17%!important}.kit-assets-table th:nth-child(3){width:25%!important}.kit-assets-table th:nth-child(4){width:18%!important}.kit-assets-table th:nth-child(5){width:13%!important}.kit-assets-table th:nth-child(6){width:14%!important}
.donation-assets-table th:nth-child(1){width:12%!important}.donation-assets-table th:nth-child(2){width:15%!important}.donation-assets-table th:nth-child(3){width:21%!important}.donation-assets-table th:nth-child(4){width:16%!important}.donation-assets-table th:nth-child(5){width:12%!important}.donation-assets-table th:nth-child(6){width:9%!important}.donation-assets-table th:nth-child(7){width:15%!important}
.loan-assets-table th:nth-child(1){width:14%!important}.loan-assets-table th:nth-child(2){width:16%!important}.loan-assets-table th:nth-child(3){width:20%!important}.loan-assets-table th:nth-child(4){width:15%!important}.loan-assets-table th:nth-child(5){width:9%!important}.loan-assets-table th:nth-child(6){width:11%!important}.loan-assets-table th:nth-child(7){width:15%!important}
.custody-pending-table th:nth-child(1){width:14%!important}.custody-pending-table th:nth-child(2){width:18%!important}.custody-pending-table th:nth-child(3){width:20%!important}.custody-pending-table th:nth-child(4){width:34%!important}.custody-pending-table th:nth-child(5){width:14%!important}

@media print{
  html,body{background:#fff!important}
  .print-decision-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:11px 0;break-inside:avoid;page-break-inside:avoid}
  .print-decision-grid article{padding:8px 9px;border:1px solid #cbd9df;border-radius:6px;background:#f7fafb!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .print-decision-grid article.wide{grid-column:1/-1}
  .print-decision-grid span,.print-decision-grid strong{display:block;overflow-wrap:anywhere}
  .print-decision-grid span{margin-bottom:3px;color:#587083;font-size:7px;font-weight:800;text-transform:uppercase}
  .print-decision-grid strong{font-size:9px;line-height:1.4}
  .three-signatures{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
  .pending-custody-items{padding:7px 8px;border-left:4px solid #efc777;background:#fff9ed!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .loan-print .print-items table,.kit-print .print-items table,.disposal-print .print-items table,.donation-print .print-items table,.custody-return-print .pending-custody-items table{font-size:8.2px}
  .loan-print .print-items th,.loan-print .print-items td,.kit-print .print-items th,.kit-print .print-items td,.disposal-print .print-items th,.disposal-print .print-items td,.donation-print .print-items th,.donation-print .print-items td,.custody-return-print .pending-custody-items th,.custody-return-print .pending-custody-items td{padding:5.5px 4.5px;line-height:1.3}

  .kit-assets-table th:nth-child(1){width:13%!important}.kit-assets-table th:nth-child(2){width:16%!important}.kit-assets-table th:nth-child(3){width:25%!important}.kit-assets-table th:nth-child(4){width:18%!important}.kit-assets-table th:nth-child(5){width:12%!important}.kit-assets-table th:nth-child(6){width:16%!important}
  .kit-print .print-items td small{display:block;margin-top:2px;color:#587083;font-size:6.8px;line-height:1.2}
  .kit-continuation-page .print-items{margin-top:2px}

  .donation-disclaimer-page{min-height:242mm}
  .donation-disclaimer-title p{margin:0 0 3px;color:#087da4;font-size:8px;font-weight:900;letter-spacing:.12em}
  .donation-disclaimer-title h2{margin:0;color:#17354d;font-size:16px;line-height:1.16}
  .donation-disclaimer-title span{display:block;margin-top:4px;color:#587083;font-size:8px;line-height:1.35}
  .donation-disclaimer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 12px;margin-top:10px;align-items:start}
  .donation-disclaimer-grid article{display:grid;grid-template-columns:19px minmax(0,1fr);gap:6px;padding:6px 7px;border:1px solid #cbd9df;border-radius:5px;break-inside:avoid;page-break-inside:avoid}
  .donation-disclaimer-grid article>b{display:grid;width:18px;height:18px;place-items:center;border-radius:50%;color:#fff;background:#087da4!important;font-size:7px;-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .donation-disclaimer-grid article p{margin:0;color:#17354d;font-size:6.7px;line-height:1.28;text-align:justify;overflow-wrap:anywhere}
  .donation-disclaimer-page>.donation-signatures{margin-top:auto}
  .donation-disclaimer-page footer{margin-top:12px}
}

/* V19.16.5 · prioridad final para evitar paneles cortados */
.site-detail-grid{grid-template-columns:1fr!important;gap:10px;padding:0 16px 12px}
.site-detail-grid section{padding:10px 12px}
.site-detail-grid .table-wrap{max-height:none;overflow-x:auto}
.site-detail-grid table{width:100%;min-width:0;table-layout:auto}
.site-detail-grid th{padding:7px 8px;font-size:9px;white-space:nowrap}
.site-detail-grid td{padding:8px;font-size:10px;white-space:normal;word-break:normal;overflow-wrap:break-word}
#site-sims-body td:nth-child(5){font-family:ui-monospace,Consolas,monospace;font-size:9px;word-break:break-all}

/* V19.17.1: legibilidad, selectores rápidos y revisiones operativas */
.controlled-write-panel>.account-form label{font-size:12px;line-height:1.35}
.controlled-write-panel>.account-form input,.controlled-write-panel>.account-form select,.controlled-write-panel>.account-form textarea{font-size:13px;line-height:1.35}
.controlled-write-panel>.panel-heading small,.operation-context-heading small,.controlled-write-panel small{font-size:11px;line-height:1.4}
.operation-context-grid>div span{font-size:11px}.operation-context-grid>div strong{font-size:12px}
.operation-origin-card strong{font-size:12px}.operation-origin-card span{font-size:12px}.operation-origin-card.invalid{border-color:#dc8b8b;border-left-color:#bf3f3f;background:#fff3f3}.operation-origin-card.invalid strong{color:#922b2b}
.record-picker-dialog th{font-size:11px}.record-picker-dialog td{font-size:12px;line-height:1.35}.record-picker-dialog .picker-choice{font-size:12px}.picker-search-label{font-size:12px}.record-picker-dialog input{font-size:13px}.picker-loading{padding:34px!important;font-size:13px!important}
.selected-assets-heading strong{font-size:13px}.selected-assets-heading span,.selected-assets-table th{font-size:11px}.selected-assets-table td{font-size:12px}
.context-asset-list.grouped{max-height:none;display:grid;gap:8px}.context-asset-group{border:1px solid #d5e4e9;border-radius:8px;background:#fff;overflow:hidden}.context-asset-group>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;cursor:pointer;list-style:none}.context-asset-group>summary span{font-size:12px}.context-asset-group>summary small{font-size:11px}.context-asset-group>div{display:grid;gap:4px;padding:0 10px 10px}.context-asset-group p,.no-extras{margin:0;padding:8px 12px;color:var(--muted);font-size:11px}.context-asset-list .context-extra{font-size:12px}
.operation-review-card,.custody-return-review,.operation-preflight,.employee-deactivation-preflight,.operation-transition{padding:12px;border:1px solid #b8d8e1;border-radius:10px;background:#f7fbfc}.operation-review-card>p,.custody-return-review>p,.operation-preflight>p,.employee-deactivation-preflight>p,.operation-transition>p{margin:0;color:var(--muted);font-size:12px}
.operation-review-heading,.preflight-heading,.return-review-summary{display:flex;align-items:center;justify-content:space-between;gap:12px}.operation-review-heading strong,.preflight-heading strong,.return-review-summary strong{font-size:13px}.operation-review-heading span,.preflight-heading span,.return-review-summary span{font-size:12px}.operation-review-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:10px}.operation-review-grid>div{padding:8px;border-radius:7px;background:#fff}.operation-review-grid span,.operation-review-grid strong{display:block;font-size:11px}.review-extra-list{display:grid;gap:5px;margin-top:10px}.review-extra-list>strong{font-size:12px}.review-extra-list>span{display:flex;justify-content:space-between;padding:7px 9px;border-radius:7px;background:#fff;font-size:12px}.review-extra-list small{font-size:11px}
.custody-return-review{display:grid;gap:10px}.custody-item-review{border:1px solid #c9dce3;border-radius:9px;background:#fff;overflow:hidden}.custody-item-review>header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:#edf6f8}.custody-item-review>header strong,.custody-item-review>header small{display:block}.custody-item-review>header strong{font-size:13px}.custody-item-review>header small,.custody-item-review>header span{font-size:11px}.custody-item-review-fields{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:10px 12px}.custody-item-review-fields .review-notes{grid-column:1/-1}.custody-extra-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:0 12px 12px}.custody-extra-checks>strong{grid-column:1/-1;font-size:12px}.custody-extra-checks label{display:flex!important;align-items:center;gap:7px;padding:7px 9px;border-radius:7px;background:#fff8e6}.custody-extra-checks input{width:16px;height:16px;margin:0!important}.complete-return .picker-remove-row,.complete-return [name="assetCodes"]~button{display:none!important}
.operation-preflight.blocked,.employee-deactivation-preflight.blocked{border-color:#e2a1a1;background:#fff4f4}.operation-preflight.clear,.employee-deactivation-preflight.clear{border-color:#9bd0b8;background:#f0fbf6}.preflight-links{display:flex;flex-wrap:wrap;gap:7px;margin-top:10px}.preflight-links button{padding:7px 9px;border:1px solid #8bc8d7;border-radius:7px;color:#075f7e;background:#fff;font-size:11px;font-weight:800;cursor:pointer}
.operation-transition{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:12px}.operation-transition>div{padding:8px;border-radius:7px;background:#fff}.operation-transition span,.operation-transition strong{display:block;font-size:12px}.operation-transition>b{font-size:20px}.operation-transition>small{grid-column:1/-1;font-size:11px}
.operation-tab:disabled{opacity:.48;cursor:not-allowed;background:#eef3f5}.donation-preview-list{max-height:none}.donation-preview-list>span{font-size:11px}.donation-signature-preview>span,.donation-signature-preview b{font-size:11px}
@media(max-width:900px){.operation-review-grid,.custody-item-review-fields{grid-template-columns:1fr 1fr}.custody-extra-checks{grid-template-columns:1fr}}
.site-collapsible .site-edit-form{margin:0!important;padding:12px!important;gap:9px!important}
.site-install-form{padding:12px!important;gap:9px!important}
.site-install-form textarea,.site-collapsible textarea{min-height:54px!important}
@media(min-width:1100px){.site-install-form,.site-collapsible .site-edit-form{grid-template-columns:repeat(2,minmax(0,1fr))}}

.document-screen-preview .donation-disclaimer-title p{margin:16px 0 3px;color:var(--cyan);font-size:9px;font-weight:900;letter-spacing:.12em}
.document-screen-preview .donation-disclaimer-title h2{margin:0;color:var(--ink);font-size:20px;line-height:1.2}
.document-screen-preview .donation-disclaimer-title span{display:block;margin-top:5px;color:var(--muted);font-size:10px}
.document-screen-preview .donation-disclaimer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;margin-top:14px}
.document-screen-preview .donation-disclaimer-grid article{display:grid;grid-template-columns:24px minmax(0,1fr);gap:8px;padding:9px;border:1px solid var(--line);border-radius:7px}
.document-screen-preview .donation-disclaimer-grid article>b{display:grid;width:22px;height:22px;place-items:center;border-radius:50%;color:#fff;background:var(--cyan);font-size:9px}
.document-screen-preview .donation-disclaimer-grid article p{margin:0;font-size:9px;line-height:1.42;text-align:justify}

/* V19.13 - buscador global, etiquetas y dashboard */
.icon-sprite{position:absolute;width:0;height:0;overflow:hidden}
.nav-icon,.mobile-nav-toggle svg,.global-search>svg,.dashboard-category-icon svg,.dashboard-quick-card svg,.labels-heading-icon,.labels-search svg,.labels-print-button svg,.label-preview-empty svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.nav-icon{flex:0 0 20px}
.nav-label{font-size:14px;font-weight:750}
.topbar{position:sticky;top:0;z-index:20;margin:-18px -18px 22px;padding:16px 18px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.96);box-shadow:0 8px 30px rgba(20,48,66,.07);backdrop-filter:blur(12px)}
.topbar-title{flex:0 0 auto;min-width:175px}.topbar-title h1{font-size:19px}.topbar-title .eyebrow{font-size:8px;margin-bottom:2px}
.global-search{position:relative;flex:1;max-width:820px;display:flex;align-items:center;gap:10px;padding:0 13px;border:1px solid #cbd9e0;border-radius:12px;background:#f7fafc}
.global-search:focus-within{border-color:#36a8c3;box-shadow:0 0 0 3px rgba(23,162,184,.12);background:#fff}
.global-search>svg{flex:0 0 18px;color:#1684a5}.global-search input{width:100%;height:46px;border:0;outline:0;color:var(--ink);background:transparent;font-size:13px}.global-search kbd{padding:3px 6px;border:1px solid #d5e0e5;border-bottom-width:2px;border-radius:5px;color:#78909d;background:#fff;font:10px/1.2 inherit;white-space:nowrap}
.global-search-results{position:absolute;top:calc(100% + 9px);left:0;right:0;z-index:80;max-height:min(70vh,620px);overflow:auto;padding:8px;border:1px solid #cbd9e0;border-radius:14px;background:#fff;box-shadow:0 22px 60px rgba(10,38,55,.2)}
.global-result-group h3{margin:5px 8px;padding:7px 4px;color:#526d7c;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.global-result-group h3 span{float:right;padding:2px 6px;border-radius:999px;background:#eaf4f7}
.global-result-item{width:100%;display:grid;grid-template-columns:34px minmax(0,1fr) auto 18px;align-items:center;gap:9px;padding:9px 10px;border:0;border-radius:9px;color:var(--ink);background:transparent;text-align:left;cursor:pointer}.global-result-item:hover,.global-result-item:focus{outline:0;background:#edf8fb}.global-result-icon{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;color:#087da4;background:#e2f4f8}.global-result-icon svg,.global-result-arrow{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.global-result-copy{min-width:0}.global-result-copy strong,.global-result-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.global-result-copy strong{font-size:12px}.global-result-copy small{margin-top:2px;color:var(--muted);font-size:10px}.global-result-arrow{color:#8aa0ac}.global-search-results footer{margin:7px -8px -8px;padding:9px 13px;border-top:1px solid var(--line);color:var(--muted);background:#f7fafb;font-size:10px}.global-search-empty,.global-search-loading{display:grid;gap:4px;padding:22px;color:var(--muted);font-size:12px;text-align:center}.global-search-empty strong{color:var(--navy);font-size:14px}.global-search-loading{display:flex;align-items:center;justify-content:center}.global-search-loading span{width:14px;height:14px;border:2px solid #cde4ea;border-top-color:#087da4;border-radius:50%;animation:search-spin .7s linear infinite}@keyframes search-spin{to{transform:rotate(360deg)}}
.user-chip{display:flex;align-items:center;gap:9px;padding:6px 9px 6px 6px;border:1px solid var(--line);border-radius:12px;background:#fff;text-align:left}.user-avatar{width:32px;height:32px;display:grid;place-items:center;border-radius:50%;color:#fff;background:#087da4;font-size:10px;font-weight:900}.connection{display:none}

.dashboard-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin:0 2px 13px}.dashboard-intro h2{font-size:24px}.dashboard-intro p{margin:3px 0 0;color:var(--muted);font-size:12px}.dashboard-date{color:#6a7f8b;font-size:11px;text-transform:capitalize}
.dashboard-overview-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:14px;margin-bottom:14px}.dashboard-total-card,.dashboard-quick-card,.dashboard-category-card{border:1px solid var(--line);border-radius:15px;background:#fff;box-shadow:0 8px 24px rgba(22,52,70,.05)}
.dashboard-total-card{position:relative;padding:17px 20px 18px;overflow:hidden}.dashboard-total-card:after{content:"";position:absolute;right:-80px;bottom:-100px;width:250px;height:250px;border-radius:50%;background:linear-gradient(135deg,rgba(23,162,184,.14),rgba(11,110,153,.04))}.dashboard-total-card>div:first-child span,.dashboard-quick-card>div span{display:block;color:var(--navy);font-size:15px;font-weight:850}.dashboard-total-card>div:first-child small,.dashboard-quick-card>div small{display:block;margin-top:2px;color:var(--muted);font-size:10px}.dashboard-total-card>strong{position:relative;z-index:1;display:block;height:65px;margin:13px 0 0;padding:9px 14px 25px;border-radius:10px;color:#fff;background:linear-gradient(90deg,#064f6c,#087da4);font-size:31px;line-height:1}.dashboard-total-card>em{position:absolute;z-index:2;left:34px;top:100px;color:#fff;font-size:10px;font-style:normal;font-weight:800}.dashboard-total-breakdown{position:relative;z-index:2;display:flex;gap:18px;margin-top:8px;padding-top:0}.dashboard-total-breakdown span{color:#5e7481;font-size:10px}.dashboard-total-breakdown b{display:block;color:var(--navy);font-size:16px}
.dashboard-quick-card{padding:16px;display:grid;grid-template-columns:1fr 1fr;gap:7px}.dashboard-quick-card>div{grid-column:1/-1;margin-bottom:3px}.dashboard-quick-card button{display:flex;align-items:center;justify-content:space-between;gap:5px;padding:9px 10px;border:1px solid #d6e2e7;border-radius:8px;color:#23465a;background:#f9fbfc;font-size:10px;font-weight:800;cursor:pointer;text-align:left}.dashboard-quick-card button:hover{border-color:#8ec7d6;color:#087da4;background:#edf9fb}.dashboard-quick-card button svg{width:14px;height:14px}
.dashboard-category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:14px}.dashboard-category-card{padding:15px}.dashboard-category-card header{display:flex;align-items:center;gap:10px;margin-bottom:12px}.dashboard-category-card header h2{font-size:16px}.dashboard-category-card header p{margin:2px 0 0;color:var(--muted);font-size:10px}.dashboard-category-icon{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;color:#fff}.dashboard-category-icon.equipment{background:#5262e7}.dashboard-category-icon.accessory{background:#079eb8}
.dashboard-status-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}.dashboard-status-grid article{min-width:0;padding:9px 10px;border:1px solid #dbe6ea;border-left-width:4px;border-radius:9px;background:#f8fbfc}.dashboard-status-grid span,.dashboard-status-grid strong{display:block}.dashboard-status-grid span{color:#617784;font-size:9px;font-weight:800}.dashboard-status-grid strong{margin-top:3px;color:#102a43;font-size:20px}.dashboard-status-grid .available{border-left-color:#198754;background:#eef9f3}.dashboard-status-grid .in-use{border-left-color:#0b6e99;background:#eef7fa}.dashboard-status-grid .custody{border-left-color:#7451b8;background:#f4effb}.dashboard-status-grid .maintenance{border-left-color:#d79a21;background:#fff9eb}.dashboard-status-grid .repair{border-left-color:#d25e25;background:#fff2ec}.dashboard-status-grid .inactive{border-left-color:#b02a37;background:#fff0f1}
.dashboard-movements-panel .panel-heading{min-height:62px;padding-block:13px}.movement-pill{display:inline-block;padding:4px 8px;border-radius:999px;color:#075c87;background:#dff3ff;font-size:10px;font-weight:800}

.labels-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(320px,.55fr);gap:16px}.labels-toolbar{display:grid;grid-template-columns:minmax(220px,1fr) 170px auto auto;gap:8px;padding:13px 16px;border-bottom:1px solid var(--line);background:#f8fbfc}.labels-search{width:100%}.labels-search svg{width:17px;height:17px}.labels-toolbar select,.labels-options select{padding:9px 10px;border:1px solid #cbd9e0;border-radius:8px;color:var(--ink);background:#fff}.labels-table-wrap{max-height:60vh}.labels-table-wrap th:first-child,.labels-table-wrap td:first-child{width:42px;text-align:center}.label-row-check{width:17px;height:17px;accent-color:#087da4}.labels-preview-panel{align-self:start;position:sticky;top:104px}.labels-heading-icon{width:27px;height:27px;color:#087da4}.labels-options{display:grid;gap:11px;padding:16px;border-bottom:1px solid var(--line)}.labels-options label{display:grid;gap:5px;color:#4d6674;font-size:10px;font-weight:800}.labels-options .check-option{display:flex;align-items:center;gap:8px}.labels-options .check-option input{width:16px;height:16px;accent-color:#087da4}.label-preview-empty{min-height:260px;padding:30px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#718792;text-align:center}.label-preview-empty svg{width:46px;height:46px;color:#9ab7c2}.label-preview-empty strong{color:var(--navy);font-size:13px}.label-preview-empty span{font-size:10px}.label-preview-list{display:grid;gap:10px;padding:14px;max-height:480px;overflow:auto}.labels-print-button{margin:0 14px 14px;width:calc(100% - 28px);display:flex;align-items:center;justify-content:center;gap:8px}.labels-print-button svg{width:17px;height:17px}.inventory-label{position:relative;padding:9px 10px;border:1px solid #6f8794;border-radius:6px;color:#102a43;background:#fff;overflow:hidden}.inventory-label header{display:flex;align-items:center;justify-content:space-between;gap:8px}.inventory-label header span{color:#087da4;font-size:7px;font-weight:900;letter-spacing:.11em}.inventory-label header b{padding:2px 5px;border-radius:999px;background:#e7f4f7;font-size:6px}.inventory-label h3{margin:5px 0 1px;font-size:16px;letter-spacing:.01em}.inventory-label>p{margin:0 0 5px;overflow:hidden;color:#4d6674;font-size:7px;text-overflow:ellipsis;white-space:nowrap}.asset-barcode{display:block;width:100%;height:34px;fill:#071d29}.barcode-copy{display:block;margin-top:1px;font:7px/1 ui-monospace,Consolas,monospace;text-align:center;letter-spacing:.16em}.inventory-label-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;margin-top:5px;padding-top:4px;border-top:1px solid #d5e0e5}.inventory-label-meta span{min-width:0;overflow:hidden;font-size:6px;text-overflow:ellipsis;white-space:nowrap}.inventory-label-meta b{display:block;color:#68808d;font-size:5.5px;text-transform:uppercase}.label-preview-list[data-size="compact"] .inventory-label{max-width:310px}.label-preview-list[data-size="standard"] .inventory-label{padding:12px}.label-preview-list[data-size="standard"] .asset-barcode{height:42px}
#label-print-sheet{display:none}

@media(max-width:1180px){.topbar-title{display:none}.top-actions .connection{display:none}.dashboard-overview-grid{grid-template-columns:1fr 270px}.labels-layout{grid-template-columns:1fr}.labels-preview-panel{position:static}.labels-toolbar{grid-template-columns:1fr 160px auto auto}}
@media(max-width:900px){.global-search kbd{display:none}.user-chip div{display:none}.logout-button{display:none}.dashboard-overview-grid,.dashboard-category-grid{grid-template-columns:1fr}.labels-toolbar{grid-template-columns:1fr 1fr}.labels-search{grid-column:1/-1}}
@media(max-width:900px) and (min-width:761px){.sidebar .nav-item .nav-label{font-size:0}}
@media(max-width:620px){.topbar{margin:-8px -4px 16px;padding:10px}.global-search input{height:40px}.top-actions{display:none}.dashboard-intro{align-items:flex-start;flex-direction:column}.dashboard-quick-card{grid-template-columns:1fr}.dashboard-status-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-total-breakdown{gap:10px;flex-wrap:wrap}.labels-toolbar{grid-template-columns:1fr}.labels-search{grid-column:auto}.labels-table-wrap td:nth-child(3),.labels-table-wrap th:nth-child(3),.labels-table-wrap td:nth-child(4),.labels-table-wrap th:nth-child(4){display:none}}

@media print{
  body.printing-labels{margin:0;background:#fff}
  body.printing-labels>*:not(#label-print-sheet){display:none!important}
  body.printing-labels #label-print-sheet{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;gap:5mm;padding:4mm;color:#102a43;background:#fff;font-family:Arial,sans-serif}
  body.printing-labels #label-print-sheet.compact{grid-template-columns:repeat(2,70mm);gap:3mm;justify-content:center}
  body.printing-labels #label-print-sheet.standard{grid-template-columns:repeat(2,88mm);gap:4mm;justify-content:center}
  body.printing-labels .inventory-label{break-inside:avoid;page-break-inside:avoid;border:.35mm solid #344f5f;border-radius:2mm;box-sizing:border-box}
  body.printing-labels #label-print-sheet.compact .inventory-label{width:70mm;height:35mm;padding:3mm}
  body.printing-labels #label-print-sheet.standard .inventory-label{width:88mm;height:50mm;padding:4mm}
  body.printing-labels .inventory-label h3{font-size:14pt;margin:1.5mm 0 .5mm}
  body.printing-labels .inventory-label>p{font-size:7pt;margin-bottom:1.5mm}
  body.printing-labels .inventory-label header span{font-size:6pt}
  body.printing-labels .inventory-label header b{font-size:5.5pt}
  body.printing-labels .asset-barcode{height:10mm}
  body.printing-labels .barcode-copy{font-size:6pt}
  body.printing-labels .inventory-label-meta{margin-top:1mm;padding-top:1mm}
  body.printing-labels .inventory-label-meta span{font-size:5.5pt}
  body.printing-labels .inventory-label-meta b{font-size:5pt}
}

.edit-employee-dialog input[readonly]{background:#eef3f5;color:#60717c;cursor:not-allowed;font-weight:800}

/* V19.15 · Sitios e infraestructura */
.sites-overview{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(330px,.45fr);gap:16px;align-items:start}.sites-search{display:flex;margin:14px 16px;width:calc(100% - 32px)}.site-detail-panel{margin-top:16px}.site-detail-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:16px}.site-detail-summary article{padding:12px;border:1px solid var(--line);border-radius:10px;background:#f7fafb}.site-detail-summary span,.site-detail-summary strong{display:block}.site-detail-summary span{color:var(--muted);font-size:10px}.site-detail-summary strong{margin-top:4px;color:var(--navy);font-size:15px}.site-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;padding:0 16px 16px}.site-detail-grid section,.site-events{min-width:0}.site-detail-grid h3,.site-events h3,.site-action-form h3,.site-edit-form h3{margin:0 0 10px;color:var(--navy);font-size:14px}.site-write-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:16px;border-top:1px solid var(--line);background:#f7fafb}.site-action-form,.site-edit-form{padding:14px;border:1px solid var(--line);border-radius:12px;background:#fff}.site-action-form h3,.site-edit-form h3{grid-column:1/-1}.site-edit-form{margin:0 16px 16px}.site-form-note{margin:0;color:var(--muted);font-size:10px;line-height:1.45}.site-events{padding:16px;border-top:1px solid var(--line)}.compact-button{padding:6px 9px;font-size:10px}
@media(max-width:1100px){.sites-overview,.site-detail-grid,.site-write-grid{grid-template-columns:1fr}.site-detail-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.site-detail-summary{grid-template-columns:1fr}}

/* V19.16 · existencias por lote y selección múltiple en sitios */
.stock-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(340px,.55fr);gap:16px;align-items:start}.stock-search{display:flex;margin:0 16px 14px;width:calc(100% - 32px)}.stock-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px 16px}.stock-metrics article{padding:12px;border:1px solid var(--line);border-radius:10px;background:#f7fafb}.stock-metrics span,.stock-metrics strong{display:block}.stock-metrics span{color:var(--muted);font-size:10px}.stock-metrics strong{margin-top:4px;color:var(--navy);font-size:20px}.stock-create-panel{position:sticky;top:104px}.stock-create-panel .account-form{padding:16px}.stock-create-panel textarea{resize:vertical}.form-success{color:#18765a;font-weight:800}.picker-multi-row{min-height:44px}.site-action-form .picker-input-row{grid-column:1/-1}
.stock-entry-guide{display:grid;gap:14px;padding:18px}.stock-entry-guide p,.stock-entry-guide ol{margin:0;color:var(--muted);font-size:12px;line-height:1.55}.stock-entry-guide ol{padding-left:20px}.stock-entry-guide strong{color:var(--navy)}#asset-batch-serials-field textarea{resize:vertical}
@media(max-width:1100px){.stock-layout{grid-template-columns:1fr}.stock-create-panel{position:static}}
@media(max-width:620px){.stock-metrics{grid-template-columns:1fr}}

/* V19.16.2 · flujo único de altas e instalación en sitios */
.site-write-grid{grid-template-columns:1fr}.site-write-toolbar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 16px;border:1px solid #c9e1e8;border-radius:12px;background:#edf8fb}.site-write-toolbar h3{margin:0;color:var(--navy);font-size:15px}.site-write-toolbar p{margin:4px 0 0;color:var(--muted);font-size:11px}.site-install-form{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}.site-install-form .picker-input-row{width:100%}
@media(max-width:620px){.site-write-toolbar{align-items:stretch;flex-direction:column}.site-write-toolbar button{width:100%}.site-install-form{grid-template-columns:1fr}}

/* V19.13.4 · Etiqueta física simplificada */
.inventory-label{padding:8px 10px}
.inventory-label header{gap:7px;justify-content:center}
.inventory-label h3{min-width:0;margin:1px 0 0;font-size:16px;line-height:1;letter-spacing:.015em;text-align:center;white-space:nowrap}
.inventory-label-owner{display:flex;align-items:center;justify-content:center;gap:6px;color:#172b3a;font-size:10px;font-weight:800;white-space:nowrap}
.inventory-label-logo{width:auto;height:25px;max-width:126px;object-fit:contain}
.inventory-label .asset-barcode{height:45px;margin-top:4px}
.inventory-label-series{display:block;margin-top:4px;overflow:hidden;font-size:10px;text-align:center;text-overflow:ellipsis;white-space:nowrap}
.inventory-label .inventory-label-meta{grid-template-columns:repeat(2,minmax(0,1fr))}
.label-preview-list[data-size="thermal"] .inventory-label{box-sizing:border-box;display:flex;width:100%;max-width:260px;aspect-ratio:51/25;padding:7px 9px 6px;flex-direction:column;align-items:center}
.label-preview-list[data-size="thermal"] .inventory-label-owner{flex:0 0 24px;line-height:1}
.label-preview-list[data-size="thermal"] .inventory-label-logo{height:24px;max-width:112px}
.label-preview-list[data-size="thermal"] .asset-barcode{width:68%;height:45px;margin:2px auto 0;flex:0 0 45px}
.label-preview-list[data-size="thermal"] .inventory-label h3{margin:1px 0 0;font-size:15px;line-height:1}
.label-preview-list[data-size="thermal"] .inventory-label-series{margin-top:2px;font-size:9px;line-height:1}
.label-preview-list[data-size="thermal"] .inventory-label-meta{display:none}
.label-preview-list[data-size="standard"] .asset-barcode{height:48px}

@media print{
  body.printing-labels #label-print-sheet.thermal{display:block!important;width:100%;padding:0}
  body.printing-labels #label-print-sheet.thermal .inventory-label{display:flex;width:100%;height:100vh;margin:0;padding:1.2mm 1.5mm 1mm;flex-direction:column;justify-content:center;break-after:page;page-break-after:always;border:0;border-radius:0}
  body.printing-labels #label-print-sheet.thermal .inventory-label:last-child{break-after:auto;page-break-after:auto}
  body.printing-labels .inventory-label h3{margin:.3mm 0 0;font-size:11pt;text-align:center}
  body.printing-labels .inventory-label-owner{gap:1mm;font-size:7pt}
  body.printing-labels .inventory-label-logo{height:6mm;max-width:30mm}
  body.printing-labels .inventory-label-series{margin-top:1mm;font-size:7pt}
  body.printing-labels #label-print-sheet.thermal .inventory-label h3{margin:.25mm 0 0;font-size:12pt;line-height:1}
  body.printing-labels #label-print-sheet.thermal .inventory-label-owner{gap:1mm;font-size:9pt;line-height:1}
  body.printing-labels #label-print-sheet.thermal .inventory-label-logo{height:7mm;max-width:28mm}
  body.printing-labels #label-print-sheet.thermal .asset-barcode{width:68%;height:13mm;margin:.6mm auto 0;flex:0 0 13mm}
  body.printing-labels #label-print-sheet.thermal .inventory-label-series{margin-top:.7mm;font-size:10pt;line-height:1}
  body.printing-labels #label-print-sheet.thermal .inventory-label-meta{display:none}
}

/* V19.16.5 · reglas finales del panel de sitios */
.site-detail-grid{grid-template-columns:1fr!important;gap:10px!important;padding:0 16px 12px!important}
.site-detail-grid section{padding:10px 12px!important}
.site-detail-grid .table-wrap{max-height:none!important;overflow-x:auto}
.site-detail-grid table{width:100%!important;min-width:0!important;table-layout:auto}
.site-detail-grid th{padding:7px 8px;font-size:9px;white-space:nowrap}
.site-detail-grid td{padding:8px;font-size:10px;white-space:normal;word-break:normal;overflow-wrap:break-word}
#site-sims-body td:nth-child(5){font-family:ui-monospace,Consolas,monospace;font-size:9px;word-break:break-all}
.site-collapsible .site-edit-form{margin:0!important;padding:12px!important;gap:9px!important}
.site-install-form{padding:12px!important;gap:9px!important}
.site-install-form textarea,.site-collapsible textarea{min-height:54px!important}
@media(min-width:1100px){.site-install-form,.site-collapsible .site-edit-form{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* V19.16.6 · formularios activos compactos y errores recuperables */
.view-load-error{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 0 14px;padding:14px 16px;border:1px solid #efc1c1;border-left:4px solid #c94747;border-radius:10px}.view-load-error div{display:grid;gap:3px}.view-load-error strong{color:#7f2424;font-size:13px}.view-load-error span{color:#8d4343;font-size:11px}.view-load-error button{flex:0 0 auto}.form-error:empty,.form-success:empty{display:none}.confirm-field{min-height:42px;padding:10px 12px}.controlled-write-panel#asset-create-panel{max-width:1180px}.controlled-write-panel#asset-create-panel .account-form,#create-user-form,#create-site-form{padding:16px 18px;gap:12px}.controlled-write-panel#asset-create-panel .account-form input,.controlled-write-panel#asset-create-panel .account-form select,#create-user-form input,#create-user-form select,#create-site-form input,#create-site-form select{margin-top:5px;padding:9px 10px}.controlled-write-panel#asset-create-panel .account-form textarea,#create-site-form textarea{min-height:66px;margin-top:5px;padding:9px 10px}.controlled-write-panel#asset-create-panel .panel-heading{padding:17px 20px}.report-filters,.audit-filters,.reconciliation-filters{align-items:end}.report-filters label,.audit-filters label,.reconciliation-filters label{min-width:0}
@media(max-width:760px){.view-load-error{align-items:stretch;flex-direction:column}.view-load-error button{width:100%}.controlled-write-panel#asset-create-panel .account-form,#create-user-form,#create-site-form{padding:14px;gap:10px}}

/* V19.16.7 · ficha del activo compacta e historial navegable */
#asset-dialog .dialog-card{padding:18px;gap:10px}
#asset-dialog .dialog-heading{padding-bottom:4px}
#asset-dialog .asset-overview{gap:8px}
#asset-dialog .detail-field{padding:10px 12px}
#asset-dialog .detail-field span{margin-bottom:3px;font-size:9px}
#asset-dialog .detail-section{margin-top:13px}
#asset-dialog .detail-section h3{margin-bottom:8px;font-size:13px}
#asset-dialog .asset-extras-section .empty{min-height:0;margin:0;padding:15px;text-align:left}
.asset-detail-columns{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(330px,.85fr);gap:0 14px}
.asset-extras-section{grid-column:1/-1}
.detail-section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.detail-section-heading small{color:var(--muted);font-size:9px}
.asset-timeline{max-height:230px;gap:6px}
.asset-timeline-item{grid-template-columns:125px minmax(180px,1fr) auto;align-items:center;padding:9px 11px;border:1px solid #dbe8ec;border-left:3px solid #28acc1;border-radius:0 8px 8px 0;background:#f7fbfc}
.asset-timeline-item time{color:var(--muted);font-size:9px;white-space:nowrap}
.asset-timeline-item>div{display:grid;gap:2px;min-width:0}
.asset-timeline-item>div strong{color:var(--navy);font-size:11px}
.asset-timeline-item>div span{overflow:hidden;color:#425f72;font-size:10px;text-overflow:ellipsis;white-space:nowrap}
.timeline-document-button{padding:7px 9px;border:1px solid #87cbd8;border-radius:7px;color:#076b8e;background:#fff;font-size:10px;font-weight:850;cursor:pointer;white-space:nowrap}
.timeline-document-button:hover{border-color:#0a91ac;background:#eaf8fb}
.timeline-no-document{color:var(--muted);font-size:9px;white-space:nowrap}
#asset-dialog .related-grid{grid-template-columns:1fr;gap:7px}
.related-document-card{position:relative;width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 10px;padding:10px 11px;color:inherit;text-align:left;background:#fff;cursor:pointer}
.related-document-card:hover{border-color:#83c8d6;background:#f3fbfc;box-shadow:0 4px 12px rgba(16,47,75,.06)}
.related-document-main{display:flex;align-items:center;gap:7px;min-width:0}
.related-document-main strong{overflow:hidden;color:#075f89;font-size:11px;text-overflow:ellipsis;white-space:nowrap}
.related-document-meta{grid-column:1/-1;color:var(--muted);font-size:9px}
.related-document-action{grid-column:2;grid-row:1;color:#08789e;font-size:9px;font-weight:850;white-space:nowrap}
#asset-dialog .dialog-actions{padding-top:4px}
@media(max-width:800px){.asset-detail-columns{grid-template-columns:1fr}.asset-extras-section{grid-column:auto}.asset-timeline-item{grid-template-columns:1fr}.timeline-document-button{justify-self:start}.timeline-no-document{white-space:normal}.detail-section-heading{align-items:flex-start;flex-direction:column;gap:2px}}

/* V19.17 · formularios operativos compactos y revisiones seguras */
.controlled-write-panel>.panel-heading{min-height:66px;padding:14px 18px}.controlled-write-panel>.panel-heading h2{font-size:18px}.controlled-write-panel>.panel-heading small{display:block;margin-top:3px;color:var(--muted);font-size:10px;font-weight:500}.controlled-write-panel>.account-form{padding:15px 18px;gap:10px 14px}.controlled-write-panel>.account-form label{font-size:10px}.controlled-write-panel>.account-form input,.controlled-write-panel>.account-form select,.controlled-write-panel>.account-form textarea{margin-top:4px;padding:9px 10px}.controlled-write-panel>.account-form textarea{min-height:58px}.controlled-write-panel .confirm-field{min-height:38px;padding:9px 11px}.controlled-write-panel .primary-button.full-field{min-height:42px}.operation-context-summary{margin-top:5px;padding:9px 10px}.operation-context-heading{margin-bottom:6px}.operation-context-grid{gap:5px}.operation-context-grid>div{padding:6px 7px}.context-asset-list{max-height:230px;overflow:auto}.context-asset-list span{display:grid!important;grid-template-columns:130px minmax(0,1fr) 150px;gap:8px;align-items:center}.context-asset-list span small{margin:0;text-align:right}.context-asset-list .context-extra{background:#fff9e9}.operation-origin-card{grid-column:1/-1;display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid #9fd7e3;border-left:4px solid var(--cyan);border-radius:9px;background:#f0fafc}.operation-origin-card strong{flex:0 0 auto;color:var(--navy);font-size:11px}.operation-origin-card span{color:#476574;font-size:10px;line-height:1.45}
.return-review-summary{position:sticky;top:0;z-index:2;gap:7px;padding:8px 10px}.return-review-summary b{padding:4px 7px;border-radius:999px;color:#066e91;background:#e2f5f8;font-size:9px}.return-review-summary button{padding:6px 8px}.return-review-card{border-radius:9px}.return-review-head{min-height:54px;padding:9px 11px}.return-review-card:not(.selected) .return-review-fields{display:none}.return-review-fields{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;padding:9px 11px}.return-review-fields label{font-size:9px}.return-review-fields input,.return-review-fields select{padding:8px!important}.return-review-fields .return-notes{grid-column:span 2}
.record-picker-dialog{width:min(1160px,calc(100% - 28px));max-width:none}.picker-dialog-card{padding:18px;gap:10px}.picker-table-wrap{max-height:min(58vh,520px);overflow:auto}.record-picker-dialog table{width:100%;min-width:0;table-layout:fixed}.record-picker-dialog th,.record-picker-dialog td{min-width:0;padding:8px 9px;overflow-wrap:anywhere;white-space:normal}.record-picker-dialog th{font-size:9px}.record-picker-dialog td{font-size:10px}.record-picker-dialog th:last-child,.record-picker-dialog td:last-child{width:118px}.record-picker-dialog .picker-choice{width:100%;padding:8px 7px;font-size:10px}
.donation-preview{padding:12px;border:1px solid #b9d8e1;border-radius:10px;background:#f7fbfc}.donation-preview>p{margin:0;color:var(--muted);font-size:10px}.donation-preview-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.donation-preview-heading div{display:grid;gap:2px}.donation-preview-heading strong{color:var(--navy);font-size:12px}.donation-preview-heading span{color:var(--muted);font-size:9px}.donation-preview-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;max-height:210px;overflow:auto}.donation-preview-list>span{display:grid;grid-template-columns:120px minmax(0,1fr) 120px;gap:7px;padding:7px 8px;border-radius:7px;background:#fff;font-size:9px}.donation-preview-list small{text-align:right}.donation-signature-preview{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:9px}.donation-signature-preview>span{display:grid;padding:8px;border-top:1px solid #9db4be;color:var(--muted);font-size:8px;text-align:center}.donation-signature-preview b{color:var(--navy);font-size:9px}
@media(max-width:760px){.controlled-write-panel>.account-form{padding:12px;gap:9px}.context-asset-list span,.donation-preview-list>span{grid-template-columns:1fr}.context-asset-list span small,.donation-preview-list small{text-align:left}.return-review-fields{grid-template-columns:1fr 1fr}.record-picker-dialog{width:96vw}.record-picker-dialog th:nth-child(n+4):not(:last-child),.record-picker-dialog td:nth-child(n+4):not(:last-child){display:none}.donation-preview-list,.donation-signature-preview{grid-template-columns:1fr}.operation-origin-card{align-items:flex-start;flex-direction:column}}

/* La compactación se logra con espacios y distribución, nunca reduciendo la lectura. */
.controlled-write-panel>.panel-heading small{font-size:11px}.controlled-write-panel>.account-form label{font-size:12px}.controlled-write-panel>.account-form input,.controlled-write-panel>.account-form select,.controlled-write-panel>.account-form textarea{font-size:13px}.operation-origin-card strong,.operation-origin-card span{font-size:12px}.record-picker-dialog th{font-size:11px}.record-picker-dialog td,.record-picker-dialog .picker-choice{font-size:12px}.context-asset-list.grouped{max-height:none;overflow:visible}.context-asset-list.grouped .context-asset-group>summary span{display:block!important}.context-asset-list.grouped .context-asset-group .context-extra{display:grid!important;grid-template-columns:150px minmax(0,1fr) 180px}.donation-preview-list{max-height:none;overflow:visible}.donation-preview-list>span,.donation-signature-preview>span,.donation-signature-preview b{font-size:11px}
.donation-preview-list.grouped{grid-template-columns:1fr}.donation-asset-group{border:1px solid #d4e3e8;border-radius:8px;background:#fff;overflow:hidden}.donation-asset-group>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;cursor:pointer}.donation-asset-group>summary span{display:flex;gap:10px;font-size:12px}.donation-asset-group>summary small{font-size:11px}.donation-asset-group>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;padding:0 10px 10px}.donation-asset-group>div>span{display:flex;justify-content:space-between;padding:7px 9px;border-radius:7px;background:#fff8e7;font-size:11px}.donation-asset-group>p{margin:0;padding:0 12px 10px;color:var(--muted);font-size:11px}

.retired-extras-history{margin-top:12px;padding:12px;border:1px solid #d9e4ea;border-radius:10px;background:#f7fafc}.retired-extra-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-top:1px solid #e5edf2}.retired-extra-row:first-of-type{margin-top:6px}.retired-extra-row small{color:#607789}

/* v19.20: custody return, shared screen/print layout */
.cr-v20 {color:#183748;font-family:Arial,sans-serif;font-size:11px;line-height:1.4}
.cr-v20 * {box-sizing:border-box}
.cr-v20 .cr-summary {display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:15px 0}
.cr-v20 .cr-summary>div {padding:10px 12px;background:#edf6f9;border:1px solid #c7dfe8;border-radius:5px}
.cr-v20 .cr-summary strong,.cr-v20 .cr-summary span {display:block}
.cr-v20 .cr-summary strong {font-size:18px;color:#086b87}
.cr-v20 .cr-summary span {font-size:10px;color:#526a79}
.cr-v20 .cr-context {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 15px;padding:13px 15px;background:#f6f8fa;border:1px solid #d9e2e7;border-radius:5px}
.cr-v20 .cr-context span,.cr-v20 .cr-identity span,.cr-v20 .cr-checks span {display:block;font-size:9px;text-transform:uppercase;letter-spacing:.04em;color:#637c8c;margin-bottom:3px}
.cr-v20 .cr-context strong,.cr-v20 .cr-identity strong,.cr-v20 .cr-checks strong {display:block;font-size:11px;overflow-wrap:anywhere}
.cr-v20 .cr-section-title {font-size:14px;margin:17px 0 9px}
.cr-v20 .cr-asset {border:1px solid #c5d7e1;border-radius:6px;margin:0 0 12px;overflow:hidden;break-inside:avoid;page-break-inside:avoid}
.cr-v20 .cr-asset-title {display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;background:#eaf4f8;border-bottom:1px solid #c5d7e1}
.cr-v20 .cr-asset-title span {font-size:8px;font-weight:700;letter-spacing:.08em;color:#327187}
.cr-v20 .cr-asset-title h3 {font-size:13px;margin:3px 0 0;line-height:1.3;overflow-wrap:anywhere}
.cr-v20 .cr-asset-title h3 b {font-weight:400;color:#86a3b3}
.cr-v20 .cr-state {font-size:10px;background:white;border:1px solid #c5d7e1;border-radius:4px;padding:5px 8px;white-space:nowrap}
.cr-v20 .cr-identity {display:grid;grid-template-columns:1.2fr 1fr;gap:12px;padding:10px 12px}
.cr-v20 .cr-checks {display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding:9px 12px;border-top:1px solid #e1e9ee;border-bottom:1px solid #e1e9ee;background:#fafcfd}
.cr-v20 .cr-extras {padding:9px 12px}
.cr-v20 .cr-extras h4 {font-size:10px;margin:0 0 6px}
.cr-v20 .cr-extras h4 span {font-weight:400;color:#657d8a;margin-left:8px}
.cr-v20 .cr-extras p {font-size:10px;color:#576f7d;margin:0}
.cr-v20 .cr-extras table {width:100%;border-collapse:collapse;table-layout:fixed;font-size:10px}
.cr-v20 .cr-extras th {background:#edf3f6;color:#284e61;font-size:9px;text-align:left}
.cr-v20 .cr-extras th,.cr-v20 .cr-extras td {padding:6px;border:1px solid #d4e0e6;overflow-wrap:anywhere}
.cr-v20 .cr-extras th:nth-child(1) {width:55%}
.cr-v20 .cr-extras th:nth-child(2) {width:10%}
.cr-v20 .cr-extras th:nth-child(3) {width:35%}
.cr-v20 .cr-extras td small {display:block;margin-top:3px;color:#627a88}
.cr-v20 .cr-item-note {font-size:10px;padding:0 12px 10px;margin:0}
.cr-v20 .cr-notes,.cr-v20 .cr-pending {margin:4px 0 12px;padding:10px 12px;border:1px solid #d5e0e6;border-radius:5px;break-inside:avoid}
.cr-v20 .cr-notes h2,.cr-v20 .cr-pending h2 {font-size:11px;margin:0 0 5px}
.cr-v20 .cr-notes p,.cr-v20 .cr-pending p {margin:0;font-size:10px}
.cr-v20 .cr-result {padding:10px 12px;border-left:3px solid #1685a2;background:#f0f7fa;break-inside:avoid}
.cr-v20 .cr-result strong {font-size:11px}.cr-v20 .cr-result p {font-size:10px;margin:4px 0 0}
.cr-v20 .print-primary-page>.print-signatures {margin-top:28px}
.cr-v20 .print-primary-page {min-height:0;display:block}
.cr-v20 .print-signatures {display:grid;grid-template-columns:repeat(2,1fr);gap:32px}
.cr-v20 .print-signatures div {min-height:45px}
.cr-v20 footer {margin-top:16px}
@media print {
  .cr-v20 {-webkit-print-color-adjust:exact;print-color-adjust:exact}
  .cr-v20 .print-brand {width:calc(100% - 180px)}
  .cr-v20 .print-brand img {width:64px;height:64px;flex-basis:64px}
  .cr-v20 .print-main-header h1 {font-size:22px}
  .cr-v20 .print-folio {max-width:180px}
  .cr-v20 .print-folio strong {font-size:10px}
  .cr-v20 .print-primary-page {min-height:0!important;display:block!important}
  .cr-v20 .print-primary-page>.print-signatures {margin-top:28px!important}
  .cr-v20 .cr-asset-title {break-after:avoid}
  .cr-v20 table thead {display:table-header-group}
  .cr-v20 table tr {break-inside:avoid}
}

/* Keep a typical two-asset receipt and its signatures together on Letter. */
.cr-v20 .cr-summary {margin:10px 0}
.cr-v20 .cr-summary>div {padding:7px 10px}
.cr-v20 .cr-context {padding:9px 12px;gap:8px 12px}
.cr-v20 .cr-section-title {margin:12px 0 7px}
.cr-v20 .cr-asset {margin-bottom:9px}
.cr-v20 .cr-asset-title {padding:7px 10px}
.cr-v20 .cr-identity {padding:7px 10px}
.cr-v20 .cr-checks {padding:6px 10px}
.cr-v20 .cr-extras {padding:6px 10px}
.cr-v20 .cr-notes,.cr-v20 .cr-pending {padding:7px 10px;margin-bottom:9px}
.cr-v20 .cr-result {padding:7px 10px}
.cr-v20 .cr-asset.cr-long {break-inside:auto;page-break-inside:auto;overflow:visible}

.cr-v20 .cr-extras th,.cr-v20 .cr-extras td {padding:4px 6px}
.cr-v20 .cr-closing {break-inside:avoid;page-break-inside:avoid}
.cr-v20 .cr-closing>.print-signatures {margin-top:28px}

/* v19.21: readable receipt checks and delivery with inline historical extras. */
.custody-extra-checks{grid-template-columns:1fr}
.custody-extra-checks label.custody-extra-review{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(240px,330px);align-items:center;padding:12px;gap:16px}
.extra-review-description strong,.extra-review-description small,.extra-review-result>span{display:block}
.extra-review-description{min-width:0;overflow-wrap:anywhere}.extra-review-description strong{font-size:13px}.extra-review-description small{font-size:12px;margin-top:4px;color:#546d7c}
.extra-review-result>span{font-size:11px;color:#526d7c;margin-bottom:5px}.extra-review-result select{width:100%;margin:0}
.custody-review-warning{margin:0 12px 12px;padding:10px 12px;color:#754b09;background:#fff5d9;border-left:3px solid #d79b2c;font-size:12px}
@media(max-width:650px){.custody-extra-checks label.custody-extra-review{grid-template-columns:1fr;gap:10px}}
.delivery-v21 .delivery-assets h2{font-size:13px;margin:12px 0 8px}
.delivery-v21 .delivery-asset-card{border:1px solid #c9dce5;border-radius:5px;margin-bottom:10px;break-inside:avoid;overflow:hidden}
.delivery-v21 .delivery-long{break-inside:auto;overflow:visible}
.delivery-v21 .delivery-asset-heading{display:flex;justify-content:space-between;gap:12px;background:#edf6fa;padding:8px 10px;font-size:11px}
.delivery-v21 .delivery-asset-heading span{font-size:10px}
.delivery-v21 .delivery-asset-identity{display:grid;grid-template-columns:1fr 2fr;gap:12px;padding:7px 10px;font-size:10px;overflow-wrap:anywhere}
.delivery-v21 .delivery-extra-detail{padding:6px 10px 9px;border-top:1px solid #dce8ee;font-size:10px}
.delivery-v21 .delivery-extra-detail>strong{display:block;margin-bottom:5px}
.delivery-v21 .delivery-extra-detail p,.delivery-v21 .delivery-asset-card>p{font-size:10px;margin:4px 10px}
.delivery-v21 .delivery-extra-detail table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:10px}
.delivery-v21 .delivery-extra-detail th,.delivery-v21 .delivery-extra-detail td{padding:5px 6px;border:1px solid #d1e0e7;text-align:left;overflow-wrap:anywhere}
.delivery-v21 .delivery-extra-detail th{background:#eff5f8;color:#284e61;font-size:9px}
.delivery-v21 .delivery-extra-detail th:nth-child(1){width:45%}.delivery-v21 .delivery-extra-detail th:nth-child(2){width:13%}
@media print{.delivery-v21 .print-primary-page{display:block;min-height:0}.delivery-v21 .print-primary-page>.print-signatures{margin-top:28px}.delivery-v21 .print-brand img{width:64px;height:64px;flex-basis:64px}.delivery-v21 .print-main-header h1{font-size:20px}.delivery-v21 .delivery-extra-detail thead{display:table-header-group}.delivery-v21 tr{break-inside:avoid}.delivery-v21 .delivery-extra-detail th{-webkit-print-color-adjust:exact;print-color-adjust:exact}}

/* V19.26: formatos legibles y firmas según operación. */
.print-document .single-signature {display:grid;grid-template-columns:minmax(250px,65%);justify-content:center;gap:0;margin-top:32px}
.print-document .exit-signatures {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 32px;margin-top:36px;break-inside:avoid}
.print-document .authorization-record {font-size:11px;margin-top:16px}
.responsibility-v26 .responsibility-asset-card {border:1px solid #bbced8;border-radius:7px;margin:10px 0 16px;break-inside:avoid;overflow:hidden}
.responsibility-v26 .responsibility-asset-card h3 {margin:0;padding:9px 12px;background:#edf6fa;color:#16384c;font-size:14px;display:flex;justify-content:space-between}
.responsibility-v26 .responsibility-asset-card h3 small {font-size:11px;font-weight:normal}
.responsibility-v26 .responsibility-asset-card dl {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:5px 12px 10px;gap:8px 20px}
.responsibility-v26 .responsibility-asset-card dl>div {min-width:0}
.responsibility-v26 dt {font-size:10px;color:#496579;margin:0 0 2px}
.responsibility-v26 dd {font-size:13px;font-weight:600;margin:0;overflow-wrap:anywhere}
.responsibility-v26 .print-items h2 {font-size:15px;margin:15px 0 8px}
.responsibility-v26 .print-items .extras-print-table {width:100%;border-collapse:collapse;table-layout:fixed;font-size:12px}
.responsibility-v26 .print-items .extras-print-table th,.responsibility-v26 .print-items .extras-print-table td {padding:8px 7px;border:1px solid #bbced8;text-align:left;line-height:1.35;font-size:12px;letter-spacing:0;text-transform:none;width:auto}
.responsibility-v26 .print-items .extras-print-table th {color:#17354d!important;background:#edf6fa!important}
.responsibility-v26 .print-items .extras-print-table th:nth-child(3),.responsibility-v26 .print-items .extras-print-table td:nth-child(3) {text-align:center;white-space:nowrap!important;word-break:normal!important;overflow-wrap:normal!important}
.responsibility-v26 .print-notes p,.responsibility-v26 .print-core p {font-size:12px;line-height:1.5;margin:5px 0}
.responsibility-v26 .print-notes strong,.responsibility-v26 .print-core strong {font-size:13px}
.responsibility-v26 .expanded-clauses h3 {font-size:12px;margin:8px 0 3px;color:#17354d}
.responsibility-v26 .expanded-clauses p {font-size:11.5px;line-height:1.36;margin:3px 0}
.responsibility-v26 .expanded-clauses article {break-inside:avoid}
.responsibility-v26 .terms-objective,.responsibility-v26 .terms-reprint-note {font-size:11.5px;line-height:1.4;margin:10px 0}
.responsibility-v26 .terms-reprint-note {border-left:3px solid #ce9e37;padding:6px 9px;background:#fff8e8}
.responsibility-v26 .print-signatures strong {font-size:12px}
.responsibility-v26 .print-signatures small,.responsibility-v26 .print-signatures em {font-size:11px}
.responsibility-v26 .print-delivery-person strong {font-size:15px}
.responsibility-v26 .print-delivery-meta strong {font-size:12px}
.responsibility-v26 .print-delivery-meta span,.responsibility-v26 .print-delivery-person small {font-size:10px}
.responsibility-v26 .print-delivery-person span {font-size:9px}
.responsibility-v26 footer {font-size:9px}
@media print {
 .responsibility-v26 .print-primary-page,.responsibility-v26 .expanded-terms {display:block;min-height:0}
 .responsibility-v26 .print-primary-page>.single-signature,.responsibility-v26 .expanded-terms>.single-signature {margin-top:38px}
 .responsibility-v26 .print-brand img {width:62px;height:62px;flex-basis:62px}
 .responsibility-v26 .print-main-header h1 {font-size:19px}
 .responsibility-v26 .print-main-header {gap:16px}
 .responsibility-v26 .print-continuation {margin-bottom:10px;padding-bottom:10px}
 .responsibility-v26 .print-continuation img {width:45px;height:45px}
 .responsibility-v26 .print-continuation strong {font-size:15px}
 .responsibility-v26 .print-continuation span {font-size:10px}
 .responsibility-v26 .print-items {break-inside:auto}
 .responsibility-v26 table thead {display:table-header-group}
 .responsibility-v26 tr,.print-document .single-signature {break-inside:avoid}
 .print-document .exit-signatures strong {font-size:11px}
 .print-document .exit-signatures small,.print-document .exit-signatures em {font-size:10px}
 .donation-print .donation-disclaimer-page {min-height:0}
}



/* Cloudflare Turnstile en el login */
.login-turnstile { display: flex; justify-content: center; min-height: 65px; }
.login-turnstile[hidden] { display: none; }
