:root {
  color-scheme: light;
  font-family: "Segoe UI", Arial, sans-serif;
  color: #23374d;
  background: #f4f7f9;
}
* { box-sizing: border-box; }
body { margin: 0; min-height: 100vh; }
button, input, select, textarea { font: inherit; min-width: 0; }
button { cursor: pointer; }
[hidden] { display: none !important; }
.site-header { background: #173a59; color: white; box-shadow: 0 2px 12px #173a591c; }
.header-inner { max-width: 1180px; min-height: 76px; margin: auto; padding: 14px 24px; display: flex; align-items: center; gap: 14px; }
.brand-mark { flex: 0 0 42px; width: 42px; height: 42px; display: grid; place-items: center; border-radius: 10px; background: #56a8b3; font-weight: 800; font-size: 27px; }
.brand-text { min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.brand-text strong { font-size: 19px; letter-spacing: .01em; }
.brand-text span { color: #d0e1eb; font-size: 13px; }
.test-label { margin-left: auto; border: 1px solid #a6d4da; border-radius: 999px; padding: 7px 12px; font-size: 12px; font-weight: 700; letter-spacing: .05em; }
.lab-profiles { display: flex; align-items: center; gap: 8px; margin-left: auto; }
.lab-profiles label { color: #e2f1f3; white-space: nowrap; }
.lab-profiles select { min-height: 36px; width: 176px; }
.lab-profiles .button { min-height: 36px; padding: 5px 10px; }
.lab-profiles + .test-label { margin-left: 0; }
.page { max-width: 1180px; margin: 0 auto; padding: 36px 24px 72px; }
.eyebrow { color: #377e89; font-size: 12px; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
h1 { margin: 8px 0 12px; font-size: clamp(28px, 4vw, 36px); color: #183b57; }
h2 { margin: 0; font-size: 21px; color: #183b57; }
p { line-height: 1.5; }
.login-panel { max-width: 560px; margin: 34px auto; padding: 36px; background: white; border: 1px solid #dce7eb; border-radius: 16px; box-shadow: 0 12px 35px #163b5710; }
.login-intro p { margin: 0 0 26px; color: #52677b; }
.login-form { display: grid; gap: 9px; }
label { font-weight: 650; font-size: 14px; }
input, select, textarea { width: 100%; min-height: 43px; padding: 9px 12px; border: 1px solid #bfcdd5; border-radius: 8px; background: white; color: #23374d; }
input:focus-visible, select:focus-visible, textarea:focus-visible, button:focus-visible { outline: 3px solid #70b7c0; outline-offset: 2px; }
.login-form .button { margin-top: 12px; }
.button { max-width: 100%; overflow-wrap: anywhere; min-height: 41px; padding: 8px 16px; border-radius: 8px; border: 1px solid transparent; font-weight: 650; }
a.button { display: inline-flex; align-items: center; justify-content: center; text-decoration: none; }
.button.primary { background: #196f7d; color: white; }
.button.primary:hover { background: #145b66; }
.button.secondary { background: white; border-color: #a8c1c9; color: #20576b; }
.button.secondary:hover, .button.subtle:hover { background: #e7f1f3; }
.button.subtle { background: transparent; color: #20576b; }
.button:disabled { opacity: .48; cursor: default; }
.form-message { min-height: 20px; margin: 8px 0 0; color: #9b4336; font-size: 14px; }
#repairMessage:not(:empty) { padding: 14px 17px; border: 1px solid #c27870; border-left: 5px solid #a8443c; border-radius: 8px; background: #fff0ed; color: #732a25; font-weight: 650; white-space: pre-line; }
.lab-note { margin: 22px 0 0; padding: 13px 15px; border-left: 3px solid #79b3bc; background: #f1f8f8; color: #486575; font-size: 13px; }
.page-heading { display: flex; justify-content: space-between; align-items: flex-start; gap: 18px; }
.page-heading p { margin: 0 0 20px; color: #52677b; }
.session-box { display: flex; align-items: center; gap: 12px; color: #446176; font-size: 13px; white-space: nowrap; }
.archive-tabs { display: flex; gap: 6px; margin: 16px 0 0; border-bottom: 1px solid #cbdce1; }
.main-navigation { margin: 0 0 28px; }
.tab { padding: 13px 17px; background: transparent; border: 0; border-bottom: 3px solid transparent; color: #4a6477; font-weight: 700; }
.tab.active { color: #176b79; border-bottom-color: #278d9c; }
.filters { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; padding: 22px; background: white; border: 1px solid #dce7eb; border-radius: 0 0 13px 13px; }
.field { min-width: 0; display: grid; gap: 7px; }
.field-wide { grid-column: span 3; }
.filter-actions { display: flex; flex-wrap: wrap; align-items: end; gap: 8px; }
.results-heading { display: flex; flex-wrap: wrap; gap: 12px; justify-content: space-between; align-items: center; margin-top: 30px; }
.results-heading p { margin: 7px 0 0; color: #64798a; font-size: 14px; }
.readonly-pill { background: #e7f3f4; border: 1px solid #b8d9dd; color: #226b75; border-radius: 999px; padding: 7px 11px; font-size: 12px; font-weight: 700; }
.results { display: grid; gap: 12px; }
.record { min-width: 0; overflow-wrap: anywhere; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 12px; background: white; padding: 20px; border: 1px solid #dce7eb; border-radius: 11px; }
.record-title { margin: 0 0 8px; font-weight: 750; color: #1b4964; font-size: 17px; }
.record-meta { margin: 0 0 10px; color: #5b7283; font-size: 14px; }
.badges { display: flex; flex-wrap: wrap; gap: 7px; }
.badge { display: inline-block; border-radius: 999px; padding: 5px 10px; background: #e7f3f4; color: #246f77; font-size: 12px; font-weight: 700; }
.badge.missing { background: #eef1f5; color: #516575; }
.badge.blocked { background: #fff3e8; color: #8d6232; }
.badge.restricted { background: #f4ebec; color: #8a4c55; }
.badge.pending { background: #fff5df; color: #846418; }
.record .button { align-self: center; }
.record-actions { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; }
.pagination { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: 17px; margin-top: 23px; color: #52677b; }
.detail-panel { margin-top: 24px; padding: 27px; background: white; border: 1px solid #dce7eb; border-radius: 13px; box-shadow: 0 8px 24px #163b570c; }
.detail-header { display: flex; justify-content: space-between; gap: 20px; align-items: flex-start; margin-bottom: 18px; }
.detail-fields { display: grid; grid-template-columns: 180px 1fr; gap: 11px 18px; margin: 23px 0; border-top: 1px solid #e1e9ed; padding-top: 18px; }
.detail-fields dt { font-weight: 700; color: #526b7c; }
.detail-fields dd { margin: 0; overflow-wrap: anywhere; }
.detail-note { margin: 0; padding: 12px 15px; background: #f1f8f8; color: #486575; border-radius: 8px; font-size: 13px; }
.repair-card { margin: 20px 0; padding: 25px; background: white; border: 1px solid #dce7eb; border-radius: 13px; }
.repair-card > p { color: #52677b; }
.repair-form { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; margin-top: 20px; }
.repair-form .field { min-width: 0; }
.repair-form .button { justify-self: start; align-self: end; }
.repair-form small { color: #52677b; }
.upload-result { margin-top: 14px; padding: 16px; border: 1px solid #b8d9dd; border-radius: 9px; background: #f1f8f8; overflow-wrap: anywhere; }
.upload-result h3 { margin: 0 0 8px; }
.upload-result.rejected { background: #fff0ed; border-color: #c27870; }
.upload-result.duplicate { background: #fff5e4; border-color: #dab777; }
#adminPriceForm .repair-actions, #adminPricesMessage { grid-column: 1 / -1; }
#adminPriceForm .repair-actions { margin-top: 0; }
.admin-documents-form { display: grid; gap: 15px; margin-top: 20px; }
.admin-document-row { display: grid; grid-template-columns: minmax(220px, 1fr) auto 95px; align-items: center; gap: 14px; padding: 13px 16px; border: 1px solid #dce7eb; border-radius: 9px; }
.admin-document-row label:first-child { display: flex; align-items: center; gap: 10px; }
.admin-document-row input[type="checkbox"] { width: 19px; min-height: 19px; accent-color: #196f7d; }
.admin-documents-form > .button { justify-self: start; }
.document-summary { grid-column: 1 / -1; padding: 13px 16px; border-radius: 8px; background: #f1f8f8; color: #3b5d6e; }
.document-summary p { margin: 6px 0 0; }
.repair-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 20px; }
.review-notices { display: grid; gap: 9px; margin-top: 16px; }
.review-notices:empty { display: none; }
.validation-status { margin: 16px 0 0; color: #3b5d6e; font-weight: 650; }
.validation-status:empty { display: none; }
.notice-title { margin: 0 0 3px; font-weight: 750; }
.notice-title.warning { color: #754910; }
.notice-title.error { color: #812f29; }
.issue { margin: 0; padding: 11px 14px; border-left: 4px solid #7baeb7; background: #f1f8f8; border-radius: 6px; }
.issue.warning { border-color: #a96b1c; background: #fff1d6; color: #66400f; }
.issue.error { border-color: #a8443c; background: #fff0ed; color: #732a25; font-weight: 650; }
.warning-choice { display: flex; align-items: flex-start; gap: 11px; padding: 12px 14px; border: 1px solid #dab777; border-left: 4px solid #a96b1c; border-radius: 6px; background: #fff5e4; color: #61400f; }
.warning-choice:has(input:checked) { background: #f2f7ef; border-color: #82a779; color: #315b36; }
.warning-choice input { width: auto; min-height: 0; margin-top: 4px; accent-color: #196f7d; }
.duplicate-notice { margin-top: 18px; padding: 17px 18px; border: 1px solid #6aaab3; border-left: 5px solid #196f7d; border-radius: 8px; background: #e7f4f5; color: #194b57; }
.duplicate-notice strong { display: block; font-size: 17px; }
.duplicate-notice p { margin: 7px 0 14px; }
.issued-panel { margin: 25px 0; padding: 22px; background: #eff7f8; border: 1px solid #c9e0e4; border-radius: 13px; }
.issued-panel > p { color: #52677b; }
.discard-dialog { max-width: min(92vw, 560px); padding: 28px; border: 1px solid #cadde2; border-radius: 13px; color: #23374d; box-shadow: 0 18px 50px #163b572c; }
.discard-dialog::backdrop { background: #173a5970; }
.empty { padding: 30px; background: white; border: 1px dashed #b6cbd1; border-radius: 11px; color: #627887; }
footer { margin: 0 auto; padding: 18px 24px 28px; max-width: 1180px; color: #8092a0; font-size: 12px; }
@media (max-width: 760px) {
  .page { padding: 22px 14px 46px; }
  .header-inner { padding: 12px 14px; flex-wrap: wrap; }
  .lab-profiles { flex: 1 1 100%; margin-left: 0; flex-wrap: wrap; }
  .test-label { font-size: 10px; padding: 5px 7px; }
  .page-heading, .detail-header { flex-direction: column; }
  .filters { grid-template-columns: repeat(2, minmax(0, 1fr)); padding: 16px; }
  .field-wide { grid-column: span 2; }
  .record { grid-template-columns: 1fr; }
  .record .button { justify-self: start; }
  .detail-fields { grid-template-columns: 1fr; gap: 4px; }
  .detail-fields dd { margin-bottom: 10px; }
  .repair-form { grid-template-columns: 1fr; }
  .admin-document-row { grid-template-columns: 1fr auto 75px; padding: 11px; }
}
@media (max-width: 520px) {
  .lab-profiles { display: grid; grid-template-columns: minmax(0, 1fr) auto; }
  .lab-profiles label { grid-column: 1 / -1; white-space: normal; }
  .lab-profiles select { width: 100%; }
  .admin-document-row { grid-template-columns: minmax(0, 1fr) 75px; }
  .admin-document-row label:first-child { grid-column: 1 / -1; }
  .filters { grid-template-columns: 1fr; }
  .field-wide { grid-column: span 1; }
  .session-box { align-items: flex-start; flex-direction: column; }
  .archive-tabs { flex-wrap: wrap; }
  .test-label { margin-left: 0; }
}

.admin-navigation { flex-wrap: wrap; gap: 3px; }
.admin-navigation .tab { min-width: 0; overflow-wrap: anywhere; }
#adminNoticeForm .field-wide { grid-column: 1 / -1; }
#adminNoticeForm .repair-actions { margin-top: 0; }
.checkbox-line { display: flex; align-items: center; gap: 10px; }
.checkbox-line input { width: 20px; min-height: 20px; accent-color: #196f7d; }
textarea { resize: vertical; max-width: 100%; }
.plain-message { white-space: pre-wrap; overflow-wrap: anywhere; }
.worker-notice { margin: 0 0 24px; padding: 20px; border: 1px solid #dab777; border-left: 5px solid #a96b1c; border-radius: 10px; background: #fff5e4; }
.worker-notice p { white-space: pre-wrap; overflow-wrap: anywhere; }
.worker-notice h2 { font-size: 19px; }
.button.danger { background: #9a4239; color: white; }
#detailActions:empty { display: none; }

.help-dialog { width: min(92vw, 780px); max-width: 780px; max-height: 85vh; overflow: hidden; }
.help-dialog[open] { display: flex; flex-direction: column; }
.help-dialog .detail-header { flex-shrink: 0; margin-bottom: 0; padding: 0 0 12px; border-bottom: 1px solid #dce7eb; }
.help-scroll { min-height: 0; overflow: auto; padding-right: 4px; }
.help-scroll:focus-visible { outline: 2px solid #70b7c0; outline-offset: -2px; }
.help-dialog .detail-header p { font-size: 13px; color: #52677b; }
.help-section { margin-top: 22px; }
.help-section h3 { color: #183b57; margin-bottom: 8px; }
.help-section ul { padding-left: 23px; }
.help-section li { margin: 10px 0; line-height: 1.55; overflow-wrap: anywhere; }
#helpButton { white-space: normal; }
.usage-period { max-width: 360px; margin-top: 20px; }
.usage-totals { font-size: 19px; color: #183b57; font-weight: 700; }
.usage-card .record-meta { white-space: pre-line; line-height: 1.8; }

.integrity-good { border-left: 5px solid #488449; background: #edf7ed; }
.integrity-bad, .integrity-incident { border-left: 5px solid #a8443c; background: #fff0ed; }
.integrity-document .record-meta { white-space: pre-line; }
.integrity-document summary { cursor: pointer; color: #20576b; font-weight: 650; }
.hash-value { font-size: 12px; overflow-wrap: anywhere; color: #52677b; }

#attachOrderMessage:empty { display: none; }
#attachOrderMessage.success-message { padding: 14px 17px; margin: 16px 0; border: 1px solid #8bb993; border-left: 5px solid #488449; border-radius: 8px; background: #edf7ed; color: #225e31; }

.transfer-search { display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 10px; margin: 18px 0; }
.transfer-search label { grid-column: 1 / -1; }
#transferPackagePanel { margin: 18px 0; overflow-wrap: anywhere; }
#transferMessage.success-message { color: #225e31; background: #edf7ed; padding: 14px; border-left: 5px solid #488449; border-radius: 8px; }
@media (max-width: 600px) { .transfer-search { grid-template-columns: minmax(0, 1fr); } }

.transfer-batch .record-title { overflow-wrap: anywhere; }
.transfer-receipt-actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: flex-start; }
.receipt-check.verified { color: #225e31; }
.receipt-check.error { color: #9b4336; }

.receipt-return-message.success-message { color: #225e31; background: #edf7ed; padding: 14px; border-left: 5px solid #488449; border-radius: 8px; }

.account-form { display: grid; gap: 12px; max-width: 640px; min-width: 0; }
.account-form[hidden] { display: none; }
.account-field { display: grid; gap: 8px; }
.account-field[hidden] { display: none; }
.account-form input, .account-form select { width: 100%; min-width: 0; box-sizing: border-box; }

/* Audiolleida V1 visual reference; existing flows and responsive layout retained. */
:root { font-family: Arial, Helvetica, sans-serif; color: #172033; background: #f4f7fb; }
.site-header { background: #fff; color: #172033; border-bottom: 1px solid #dce3ec; box-shadow: 0 2px 12px #1720330a; }
.header-inner { min-height: 88px; }
.brand-logo { width: 142px; height: auto; flex: 0 0 142px; }
.brand-text strong { color: #243e69; font-size: 18px; }
.brand-text span { color: #64748b; }
.test-label { color: #7d3b00; background: #fff5df; border-color: #e7c87b; }
.button.primary { background: #2457c5; }
.button.primary:hover { background: #1d469f; }
.tab.active { color: #2457c5; border-bottom-color: #2457c5; }
.eyebrow { color: #2457a6; }
input:focus-visible, select:focus-visible, textarea:focus-visible, button:focus-visible { outline-color: #92afea; }
@media (max-width: 640px) { .brand-logo { width: 112px; flex-basis: 112px; } .header-inner { flex-wrap: wrap; } .test-label { margin-left: 0; } }

#deliveryMessage[data-kind="info"] { color: #38556c; }
#deliveryMessage[data-kind="success"] { color: #246843; }
#deliveryMessage[data-kind="error"] { color: #9b4336; }

.scan-file,.scan-page-row{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid #dce3ed}
.scan-page-row span{flex:1;min-width:220px}.scan-saved-loads{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}
.scan-dialog{width:min(1180px,94vw);max-height:92vh;overflow:auto;border:1px solid #ccd7e5;border-radius:14px;padding:24px}
.scan-compare{display:grid;grid-template-columns:1fr 1fr;gap:20px}.scan-compare img{display:block;width:100%;height:auto;max-height:55vh;object-fit:contain;background:white;border:1px solid #dce3ed;margin:10px 0}
.scan-dialog select,.scan-dialog textarea{width:100%;box-sizing:border-box;padding:10px;margin:8px 0}
.scan-dialog::backdrop{background:rgba(22,42,61,.5)}#scanSummary{font-weight:700}#scanReview>.checkbox-row{display:flex;gap:10px;align-items:flex-start;margin:20px 0}
@media(max-width:760px){.scan-compare{grid-template-columns:1fr}.scan-dialog{padding:14px}.scan-page-row{align-items:flex-start}}

.scan-search{display:flex;gap:.6rem;align-items:center;margin-bottom:.75rem}.scan-search input{min-width:0;flex:1}.scan-search button{white-space:nowrap}#scanSearchMessage{font-size:.92rem;color:#354e59;margin:.65rem 0}#scanDocumentKind{margin-bottom:.65rem}@media(max-width:650px){.scan-search{align-items:stretch;flex-direction:column}}

/* D36: one review, readable images and explicit save requirements. */
.scan-dialog{width:min(1520px,97vw);max-height:95vh;padding:20px;box-sizing:border-box}
.scan-review-header{display:flex;justify-content:space-between;gap:16px;align-items:center;flex-wrap:wrap}.scan-review-header h2{margin:0;font-size:1.2rem;overflow-wrap:anywhere}.scan-review-header p{margin:.35rem 0;color:#46596d}
.scan-thumbs{display:flex;gap:10px;overflow:auto;max-height:186px;padding:8px 2px;scrollbar-gutter:stable}.scan-thumb{flex:0 0 160px;display:flex;flex-direction:column;align-items:center;gap:3px;background:#f4f7fb;border:2px solid #d8e1ec;border-radius:8px;padding:6px;color:#253b54;cursor:pointer}.scan-thumb[aria-current="page"]{border-color:#2457c5;background:#eaf1ff}.scan-thumb img{width:62px;height:78px;object-fit:contain;background:#fff}.scan-thumb span{font-size:.8rem;max-width:145px;overflow-wrap:anywhere}.scan-thumb strong{font-size:.8rem}
.scan-source-fields{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:16px;align-items:start}.scan-source-fields label{display:block}.scan-compare{gap:16px}.scan-compare section{min-width:0}.scan-compare h3{margin:.6rem 0}.scan-image-tools{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:6px 0}.scan-image-tools button{background:#f0f5fc;border:1px solid #b9cbe3;border-radius:6px;padding:7px 10px;color:#173c73;cursor:pointer}.scan-image-tools button:disabled{opacity:.5;cursor:default}.scan-image-tools output{min-width:52px;text-align:center;font-variant-numeric:tabular-nums}.scan-viewport{height:48vh;min-height:280px;overflow:auto;background:#e1e7ee;border:1px solid #bccbdb;overscroll-behavior:contain}.scan-viewport img,.scan-compare .scan-viewport img{display:block;width:100%;max-width:none;height:auto;max-height:none;object-fit:initial;border:0;margin:0;background:#fff}.scan-viewport img[hidden]{display:none}.scan-image-status{min-height:1.3em;margin:4px 0;font-size:.85rem;color:#46596d}.scan-large-viewport{height:66vh;min-height:300px}.scan-large-viewport img{width:100%}
#scanPageRequirements{padding:12px;border-left:4px solid #d79a30;background:#fff7e8;color:#61430e}#scanPageRequirements[data-ready="true"]{border-color:#276e48;background:#edf8f0;color:#205a39}#scanAssign:disabled{background:#e1e5eb!important;color:#526174!important;border-color:#c6cfdb!important;opacity:1;cursor:not-allowed;box-shadow:none}#scanAssign:not(:disabled){background:#2457c5;color:white;box-shadow:0 2px 5px #2457c533}#scanAssign[data-saved="true"]{background:#e3f3e9!important;color:#205a39!important;border-color:#86b59b!important}#scanPageMessage:empty{display:none}#scanPageMessage[data-kind="success"]{padding:14px;background:#e8f7ed;border:1px solid #72ab87;border-radius:8px;color:#205a39;font-weight:600}#scanPageMessage[data-kind="error"]{padding:12px;background:#fff1ed;color:#913c2d}#scanNoteHelp{margin:.45rem 0;color:#46596d;font-size:.9rem}#scanNoteCount{white-space:nowrap;font-weight:600}.scan-dialog [hidden]{display:none!important}
@media(max-width:900px){.scan-source-fields{grid-template-columns:1fr}.scan-compare{grid-template-columns:1fr}.scan-dialog{padding:12px}.scan-review-header .repair-actions{gap:6px}.scan-viewport{height:52vh}.scan-thumbs{max-height:170px}}

/* D37: visible queue states with retained, opt-in finished history. */
.scan-load-controls{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.scan-load-controls .checkbox-row{display:flex;align-items:center;gap:9px}.scan-saved-loads{display:block}.scan-load-section{margin:22px 0}.scan-load-section>h3{font-size:1.05rem;color:#263f5b;border-bottom:1px solid #dce3ed;padding-bottom:8px}.scan-load-card{border:1px solid #cbd8e8;border-left:5px solid #d99c35;border-radius:9px;padding:16px;margin:12px 0;background:#fffcf5}.scan-load-card[data-state="confirm"]{border-left-color:#2457c5;background:#f4f8ff}.scan-load-card[data-state="finished"]{border-left-color:#3a8059;background:#f4faf6}.scan-load-card h4{margin:0 0 7px;overflow-wrap:anywhere}.scan-load-card p{margin:8px 0}.scan-load-date,#scanExcludeHelp{font-size:.88rem;color:#46596d}#scanMoreLoads{margin-top:10px}

#scanShowFinished,#scanPageConfirmed,#scanConfirmed{width:20px;height:20px;min-height:20px;padding:0;flex:0 0 20px;accent-color:#2457c5}.scan-load-controls .checkbox-row{white-space:nowrap}.scan-dialog .checkbox-row{display:flex;align-items:flex-start;gap:10px;margin:14px 0}

/* D38: individual team scope and explicit personal-session choice. */
.team-choices{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.7rem}.action-row{display:flex;flex-wrap:wrap;gap:.7rem}.team-choices .check-row{align-items:flex-start}#teamForm fieldset{border:1px solid #cbdce2;border-radius:.7rem;padding:1rem}#personalComputerRow{line-height:1.5}#teamMessage:empty{display:none}

.team-record{grid-template-columns:minmax(0,1fr);gap:.65rem}.team-actions{display:flex;flex-wrap:wrap;gap:.55rem}#teamMessage[data-kind="success"]{color:#17613c;font-weight:600}#teamMessage[data-kind="info"]{color:#235467}

/* D40 · V1 evolucionada. Presentation only; limits, identity and archive are unchanged. */
:root{font-family:Arial,Helvetica,sans-serif;font-size:15px;color:#172033;background:#f4f7fb;--atg-blue:#2457c5;--atg-ink:#172033;--atg-line:#d9e0ea}
body{color:#172033;line-height:1.45}
.site-header{background:#fff;border-bottom:1px solid #d9e0ea;box-shadow:0 2px 10px #17203305}
.header-inner{max-width:1180px;min-height:112px;padding:15px 24px;gap:22px;align-items:center}
.brand-logo{width:210px;flex:0 0 210px;height:auto;object-fit:contain}
.brand-text{gap:5px}.brand-text strong{font-size:21px;color:#172033;letter-spacing:0}.brand-text span{font-size:13px;color:#536278}
.header-tools{display:flex;gap:7px;align-items:center;justify-content:flex-end;flex-wrap:wrap;margin-left:auto;max-width:430px}
.header-tools:empty{display:none}.current-profile{flex-basis:100%;text-align:right;font-size:13px;font-weight:700;color:#34445c}
.header-tools .button{font-size:13px;min-height:36px;padding:7px 11px}.test-label{margin-left:0;font-size:11px;letter-spacing:.01em;border-radius:5px;padding:6px 9px;max-width:190px;white-space:normal;text-align:center}
.page{max-width:1180px;padding:25px 24px 52px}.main-navigation{margin:0 0 24px;background:#fff;border:1px solid #d9e0ea;border-radius:6px 6px 0 0;gap:0;flex-wrap:wrap}
.tab{font-size:14px;padding:12px 14px;color:#46566d;min-height:44px}.tab.active{color:#2457c5;border-color:#2457c5}.main-navigation .tab.active{background:#f3f6fd}
h1{font-size:28px;line-height:1.2;color:#172033;margin:3px 0 9px}h2{font-size:20px;line-height:1.3;color:#172033}h3{font-size:16px;color:#243650;line-height:1.35}
.eyebrow{font-size:11px;color:#48618c;letter-spacing:.04em}.page-heading{gap:14px;margin-bottom:12px}.page-heading p{font-size:15px;color:#536278;margin:0 0 12px}.page-heading .session-box{display:none}
p{line-height:1.5}label{font-size:14px;font-weight:700}small{font-size:12px;line-height:1.45;color:#536278}
input,select,textarea{min-height:42px;padding:10px 12px;font-size:16px;border:1px solid #bac6d8;border-radius:6px;color:#172033;background:#fff}
input[type=checkbox],input[type=radio]{width:20px;height:20px;min-height:20px;flex:0 0 20px;padding:0;accent-color:#2457c5}
input[type=file]{font-size:14px;padding:9px;background:#fbfcfe}input[type=file]::file-selector-button{padding:7px 10px;border:1px solid #b6c6e0;border-radius:5px;background:#fff;color:#2457c5;margin-right:10px;font:inherit}
.button{border-radius:6px;min-height:42px;padding:9px 15px;line-height:1.35;font-size:14px;font-weight:700}.button.primary{background:#2457c5;color:#fff}.button.primary:hover{background:#183d8d}.button.secondary{color:#2457c5;border-color:#b9c8e0;background:#fff}.button.subtle{color:#2457c5}.button:disabled{opacity:.55;cursor:not-allowed}
.button.danger{background:#a3372d;color:#fff}.button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #92afea;outline-offset:2px}
.login-panel{display:grid;grid-template-columns:230px minmax(0,1fr);gap:30px;max-width:860px;margin:25px auto;padding:28px;border:1px solid #d9e0ea;border-radius:8px;background:#fff;box-shadow:0 14px 35px #17203308}
.login-brand{border-right:1px solid #e4e9f1;padding:9px 24px 0 0}.login-brand img{width:210px;max-width:100%;height:auto;margin:0 0 22px}.login-brand h2{font-size:22px;margin:0 0 10px}.login-brand p{font-size:14px;color:#536278}.login-content{min-width:0}.login-intro h1{font-size:26px}.login-intro p{margin:0 0 18px}.login-form{gap:8px}.login-panel .lab-note{font-size:12px;margin-top:16px;padding:10px 12px}
.check-row,.checkbox-row,.warning-choice,.checkbox-line{display:flex;align-items:flex-start;gap:10px;line-height:1.5}#personalComputerRow{font-size:13px;font-weight:400;margin:12px 0}.login-form .button{margin-top:9px}
.repair-card,.detail-panel,.issued-panel{padding:20px;border:1px solid #d9e0ea;border-radius:8px;margin:16px 0;background:#fff;box-shadow:0 7px 20px #17203304}.repair-card>p{color:#536278;font-size:14px}.repair-card>.repair-card{padding:16px;box-shadow:none;background:#f8faff}
.repair-form{gap:16px;align-items:start;margin-top:16px}#repairUploadForm{grid-template-columns:minmax(0,1fr)}.review-form{grid-template-columns:repeat(3,minmax(0,1fr))}.field{gap:7px}.repair-actions{gap:9px;margin-top:17px}.document-summary{padding:12px 14px;border-radius:6px;background:#f3f6fb;color:#31465e;font-size:14px}
.field-help{margin:13px 0;color:#46566d;font-size:13px}.field-help summary{color:#2457c5;font-weight:700;padding:5px 0;cursor:pointer}.field-help p{margin:8px 0 0;line-height:1.5}.trial-examples{padding:9px 12px;background:#fff9ed;border-left:3px solid #d7a23d;border-radius:4px}
.form-message{color:#344d6a;font-size:14px;line-height:1.5;white-space:pre-line;overflow-wrap:anywhere}.form-message:empty{min-height:0;margin:0}.form-message:not(:empty){padding:11px 14px;border-left:4px solid #6085c4;background:#f0f5fd;border-radius:5px;margin:13px 0}
.form-message[data-kind=error]:not(:empty),.form-message[role=alert]:not(:empty){color:#812f29;background:#fff0ed;border-color:#b2473d;font-weight:600}.form-message[data-kind=success]:not(:empty){color:#245c3b;background:#edf7f0;border-color:#4d8a62}
#repairMessage:not(:empty){padding:12px 15px;box-shadow:none}#repairMessage[data-kind=info]:not(:empty){background:#f0f5fd;color:#344d6a;border-color:#6085c4;font-weight:400}
.issue.warning,.warning-choice{background:#fff7e6;border-color:#c38b20;color:#684916}.warning-choice{font-size:14px;padding:12px}.warning-choice input{margin-top:1px}.notice-title{font-size:14px}.duplicate-notice{background:#eef4ff;color:#214786;border-color:#7896c9}
.admin-workspace{display:grid;grid-template-columns:178px minmax(0,1fr);gap:22px;margin-top:18px;align-items:start}.admin-content{min-width:0}.admin-content>.repair-card:first-child{margin-top:0}.admin-navigation{display:flex;flex-direction:column;gap:4px;border:0;border-right:1px solid #d9e0ea;padding:0 15px 10px 0;margin:0;background:transparent}
.admin-navigation .tab{min-height:40px;text-align:left;padding:10px 10px;border:0;border-left:3px solid transparent;border-radius:0 5px 5px 0;font-size:13px;line-height:1.4}.admin-navigation .tab.active{color:#2457c5;background:#eaf0fe;border-left-color:#2457c5}
.admin-document-row{border-radius:6px;grid-template-columns:minmax(0,1fr) auto 70px;gap:12px;padding:12px}.admin-document-row label{display:flex;align-items:center;gap:10px}.admin-document-row input{margin:0}.admin-document-row select{font-size:15px;min-height:39px}.account-form{gap:10px;max-width:none}.team-choices{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px}#teamForm fieldset{border-color:#d9e0ea;border-radius:6px;padding:13px}#teamForm legend{font-weight:700;font-size:14px}
.record{padding:17px;border-radius:7px;border-color:#d9e0ea;gap:10px}.record-title{font-size:16px;color:#253b59;margin-bottom:6px}.record-meta{font-size:13px;color:#536278;line-height:1.5}.badge,.readonly-pill{border-radius:5px;font-size:12px;padding:5px 8px}.badge{background:#edf3ff;color:#234c95}.badge.pending,.badge.blocked{background:#fff2d9;color:#795100}.badge.restricted{background:#f8e9e8;color:#89392f}.record-actions,.team-actions{gap:7px}
.filters{border-radius:0 0 8px 8px;padding:18px;gap:14px;background:#fff}.results-heading{margin-top:24px}.empty{padding:20px;border-radius:7px;color:#536278}.detail-fields{grid-template-columns:140px minmax(0,1fr) 140px minmax(0,1fr);gap:9px 14px}.detail-fields dt{color:#536278;font-size:13px}.detail-fields dd{font-size:14px;margin:0;overflow-wrap:anywhere}
.scan-dialog,.discard-dialog{border-color:#c8d3e4;border-radius:9px;color:#172033}.scan-dialog h2,.discard-dialog h2{color:#172033}.scan-dialog p{font-size:14px}.scan-image-tools button{color:#2457c5;background:#f5f8fe;border-color:#bdcce4}.scan-load-card{border-radius:7px;padding:15px}.scan-load-card h4{font-size:15px}.scan-load-card p{font-size:13px}.scan-thumb[aria-current=page]{border-color:#2457c5;background:#edf3ff}.scan-thumb{border-radius:6px}.scan-page-row{gap:10px}.scan-page-row span{min-width:180px}.scan-source-fields{gap:14px}
.help-dialog{max-width:850px;width:min(94vw,850px);border-radius:9px}.help-section{margin-top:12px;border-bottom:1px solid #e4e9f1;padding:0 0 10px}.help-section summary{font-weight:700;font-size:15px;color:#243e69;cursor:pointer;padding:8px 0}.help-section li{font-size:14px;line-height:1.55;margin:9px 0}.help-section ul{padding-left:22px;margin:8px 0}.help-scroll{padding-right:8px}.help-section[open] summary{color:#2457c5}
.lab-note{font-size:12px;background:#f3f6fb;border-color:#7896c9;color:#4c5e78;padding:11px 13px}.worker-notice{border-radius:7px;background:#fff7e6;border-color:#c38b20;padding:17px}.worker-notice h2{font-size:18px}.hash-value{font-size:12px;color:#536278;overflow-wrap:anywhere}footer{color:#617087;font-size:12px;padding-top:4px}
@media(max-width:1050px){.header-inner{flex-wrap:wrap;gap:13px 20px}.header-tools{max-width:none;flex:1}.test-label{margin-left:0}.detail-fields{grid-template-columns:130px minmax(0,1fr)}}
@media(max-width:860px){.admin-workspace{grid-template-columns:minmax(0,1fr);gap:14px}.admin-navigation{flex-direction:row;flex-wrap:wrap;border:0;border-bottom:1px solid #d9e0ea;padding:0 0 12px;gap:3px}.admin-navigation .tab{border-left:0;border-bottom:3px solid transparent;border-radius:5px 5px 0 0}.admin-navigation .tab.active{border-bottom-color:#2457c5}.review-form{grid-template-columns:minmax(0,1fr)}.brand-logo{width:180px;flex-basis:180px}.brand-text strong{font-size:19px}}
@media(max-width:660px){.page{padding:20px 15px 40px}.header-inner{padding:14px 15px;gap:12px}.brand-logo{width:165px;flex-basis:165px}.brand-text strong{font-size:18px}.brand-text span{font-size:12px}.header-tools{flex:1 1 100%;justify-content:flex-start;gap:7px;order:3}.current-profile{text-align:left}.test-label{max-width:100%;margin-left:auto;font-size:10px}.header-tools .button{font-size:12px;padding:7px 10px}.login-panel{grid-template-columns:minmax(0,1fr);gap:14px;padding:22px;margin:10px auto}.login-brand{border:0;border-bottom:1px solid #e4e9f1;padding:0 0 12px}.login-brand img{width:205px;margin:0 0 8px}.login-brand h2{font-size:18px;margin:0}.login-brand p{display:none}.login-intro h1{font-size:25px}.login-intro .eyebrow{display:none}.main-navigation .tab{padding:11px 10px;font-size:13px}.repair-card,.detail-panel,.issued-panel{padding:17px}.filters{grid-template-columns:minmax(0,1fr);padding:16px}.field-wide{grid-column:1/-1}.admin-workspace{margin-top:12px}.admin-navigation .tab{font-size:12px;padding:9px}.detail-fields{grid-template-columns:minmax(0,1fr);gap:4px}.detail-fields dd{margin-bottom:9px}.admin-document-row{grid-template-columns:minmax(0,1fr) 65px}.admin-document-row label:first-child{grid-column:1/-1}.admin-document-row label[for]{font-weight:400}.team-actions .button{font-size:13px}.scan-page-row span{min-width:0}.scan-source-fields{grid-template-columns:minmax(0,1fr)}h1{font-size:26px}.field-help{font-size:13px}.button{white-space:normal}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}


/* Compact account menu, preserving the V1-evolved visual language. */
.user-menu{position:relative;color:#243b57;min-width:160px}
.user-menu[hidden]{display:none}
.user-menu summary{display:flex;align-items:center;gap:10px;cursor:pointer;padding:7px 10px;border:1px solid #cbd7e3;border-radius:8px;background:#fff;list-style:none;min-height:46px}
.user-menu summary::-webkit-details-marker{display:none}
.user-menu summary:hover,.user-menu[open] summary{background:#edf4fa;border-color:#8da9c7}
.user-menu summary:focus-visible{outline:3px solid #2457c5;outline-offset:2px}
.user-menu-icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;flex:none}
.user-menu-identity{display:flex;flex-direction:column;line-height:1.25;min-width:0}
.user-menu-identity strong{font-size:14px;overflow-wrap:anywhere}
.user-menu-identity #currentProfile{display:block;font-size:12px;font-weight:500;text-align:left;color:#546779}
.user-menu-arrow{margin-left:auto;font-size:14px}
.user-menu-options{position:absolute;z-index:30;right:0;top:calc(100% + 6px);min-width:210px;max-width:calc(100vw - 30px);padding:5px;background:#fff;border:1px solid #cbd7e3;border-radius:9px;box-shadow:0 8px 24px #142f4826}
.user-menu-options button{display:block;text-align:left;width:100%;background:transparent;color:#243b57;border:0;border-radius:5px;padding:12px;font:inherit;font-size:14px;cursor:pointer}
.user-menu-options button[hidden]{display:none}
.user-menu-options button:hover,.user-menu-options button:focus-visible{background:#eaf2fb}
.user-menu-options button:disabled{opacity:.5;cursor:wait}
.session-notice{max-width:1220px;margin:12px auto 0;padding:12px 16px;border:1px solid #91b4c7;border-radius:7px;background:#eef7fc;color:#193b52}
.session-notice[data-kind=error]{border-color:#c16c6c;background:#fff2f0;color:#8d2525}
@media(max-width:660px){.header-tools{flex:1 1 auto;order:3;justify-content:flex-end}.user-menu{min-width:145px}.user-menu summary{padding:6px 8px}.user-menu-identity strong{font-size:13px}.user-menu-options{right:0}.session-notice{margin:10px 15px 0}.test-label{max-width:none;flex-basis:100%;margin:0}}

/* The pilot starts with one entry, including before the login-mode request returns. */
html[data-atg-real="1"] #realm,
html[data-atg-real="1"] #realmLabel,
html[data-atg-real="1"] #loginForm label[for="password"],
html[data-atg-real="1"] #loginForm #password { display:none !important; }

/* D52: ayuda permanente junto al PDF, sin tarjeta ni aviso global. */
.source-pdf-guide { font-size:13px; line-height:1.45; color:#43556b; }
.source-pdf-guide span { display:block; margin-top:4px; }

.delivery-contrast{margin-block:1rem;padding-block:.7rem;border-block:1px solid #d5e0e8}.delivery-contrast h3{margin:.1rem 0 .4rem}.delivery-contrast .field-help{font-size:.88rem}.comparison-table{width:100%;border-collapse:collapse;font-size:.85rem;margin-block:.6rem}.comparison-table th,.comparison-table td{text-align:left;vertical-align:top;padding:.4rem;border:1px solid #d5e0e8;overflow-wrap:anywhere}.delivery-contrast textarea{width:100%;box-sizing:border-box}#deliveryDialog{max-width:58rem;width:calc(100% - 2rem)}.repair-slot{margin-block:.5rem;padding-block:.3rem;border-top:1px solid #d5e0e8}.repair-slot .record-actions{justify-content:flex-start}.repair-doc-version{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin-block:.3rem}

.correction-panel{margin-top:1rem;padding-top:1rem;border-top:1px solid #d5e0e8}.correction-panel label{display:block;margin:.65rem 0 .2rem}.correction-panel input[type=file],.correction-panel select,.correction-panel textarea{max-width:100%;box-sizing:border-box}.correction-panel .comparison-table{font-size:.85rem}.correction-panel .checkbox-row{display:flex;align-items:flex-start;gap:.4rem}.correction-panel textarea{width:100%}

/* Archivo compacto: estados informativos y acciones separadas, sin alterar los documentos. */
.repair-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 18px;padding:16px 18px;border:1px solid #d8e2ec;border-left:4px solid #b8cce0;border-radius:10px;background:#fff}
.repair-row:nth-child(even){background:#f9fbfd}.repair-row-main{min-width:0}.repair-row-identity{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 12px;margin-bottom:8px}.repair-row-order{font-size:17px;color:#173a59;white-space:nowrap}.repair-row-customer{font-weight:650;font-size:15px}.repair-row-centre{font-size:13px;color:#52657a}.repair-row-flag{font-size:12px;color:#805016;flex-basis:100%}
.repair-row-states{display:flex;flex-wrap:wrap;gap:6px}.repair-state{display:inline-flex;align-items:baseline;gap:5px;border:1px solid #d6e1eb;border-radius:5px;padding:3px 7px;background:#f3f6f9;font-size:12px;cursor:default}.repair-state-label{color:#536378}.repair-state strong{font-size:12px;font-weight:650}.repair-state-success{background:#eef6f1;border-color:#cde2d4;color:#235e3d}.repair-state-warning{background:#fff8e8;border-color:#eadbb7;color:#76521c}.repair-state-muted{color:#5c6571;background:#f1f3f5}
.repair-row-actions{display:flex;align-items:flex-start;justify-content:flex-end;flex-wrap:wrap;gap:7px;max-width:420px}.repair-row-actions .repair-actions{margin:0}.repair-row-actions .button{min-height:40px;font-size:13px;padding:8px 10px}.repair-row-action-reason{flex-basis:100%;max-width:410px;font-size:12px;color:#805016}.repair-row-documents{grid-column:1/-1}.repair-row-documents:not([open]){display:none}.repair-row-documents>summary{display:none}.repair-row-documents-body{border-top:1px solid #d8e2ec;padding-top:12px}.repair-row-documents-body .repair-slot{padding:10px 0}.repair-row-documents-body .repair-doc-version{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.repair-row-menu{position:relative}.repair-row-menu>summary{list-style:none;cursor:pointer;white-space:nowrap}.repair-row-menu>summary::-webkit-details-marker{display:none}.repair-row-menu-body{position:absolute;right:0;top:calc(100% + 4px);z-index:8;min-width:230px;max-width:calc(100vw - 44px);padding:10px;border:1px solid #ccd8e4;border-radius:8px;background:#fff;box-shadow:0 8px 24px #173a5924;display:grid;gap:6px}
.archive-context-line{font-size:13px;color:#52657a;margin:6px 0 14px}.draft-continue{margin-left:auto}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1000px){.repair-row{grid-template-columns:minmax(0,1fr)}.repair-row-actions{max-width:none;justify-content:flex-start}.repair-row-states{gap:6px}.repair-row-actions .button{min-height:42px}}
@media(max-width:600px){.repair-row{padding:13px 12px;gap:10px}.repair-row-identity{gap:4px 9px}.repair-row-customer{font-size:15px}.repair-row-states{display:grid;grid-template-columns:1fr 1fr}.repair-state{display:flex;flex-direction:column;gap:2px;padding:5px 7px}.repair-row-actions{gap:6px}.repair-row-actions .button{min-height:44px}.repair-row-menu-body{right:0}.draft-continue{margin-left:0}}

@media(min-width:1001px){
  .repair-row{padding-block:12px;row-gap:8px}
  .repair-row-main{display:contents}
  .repair-row-identity{grid-column:1;grid-row:1;margin-bottom:0;align-self:center}
  .repair-row-actions{grid-column:2;grid-row:1;align-self:center}
  .repair-row-states{grid-column:1/-1;grid-row:2}
  .repair-row-documents{grid-row:3}
}
.repair-row-actions{align-self:start}

/* Pending decisions share the compact archive disclosure and expand across the card. */
.pending-annulment-row .repair-row-documents-body > .record{margin-block:8px}
@media(min-width:1001px){
  .pending-annulment-row .repair-row-documents{grid-row:2}
}
