/* =====================================================================
   UAD 3.6 URAR / Restricted / Completion – Appendix E Style Guide Match
   Matched to: Appendix E Report Style Guide v1.4 (June 10, 2025)
   Font: Myriad Pro preferred, Calibri alternative (p.12)
   Page: 8.5" x 14" Legal, 0.5" margins all sides (p.15)
   ===================================================================== */

/* ── RESET ───────────────────────────────────────────────────────────── */
*, *::before, *::after {
    box-sizing: border-box;
}

html {
    font-size: 9pt;
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
    padding: 0;
    font-family: 'Myriad Pro', 'MyriadPro', Calibri, sans-serif;
    font-size: 9pt;
    line-height: 13pt;
    color: #000;
    background: #e8e8e8;
}

h1, h2, h3, h4, h5, h6 {
    margin: 0;
    padding: 0;
    font-size: inherit;
    font-weight: inherit;
}

img {
    max-width: 100%;
    height: auto;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

/* =======================================================================
   FORM INPUTS – Transparent, underline-only
   Rule row inputs: ½pt 50% black underline (p.21)
   ======================================================================= */
input, select, textarea, button {
    font-family: inherit;
    font-size: inherit;
    color: inherit;
    margin: 0;
}

input[type="text"],
input[type="number"],
input[type="date"],
select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background: transparent;
    border: none;
    border-bottom: 0.5pt solid #808080;
    border-radius: 0;
    padding: 1px 2px;
    line-height: 13pt;
    outline: none;
    font-size: 9pt;
}

select::-ms-expand {
    display: none;
}

textarea {
    background: #fff;
    border: 1px solid #aaa;
    border-radius: 0;
    padding: 3pt 4pt;
    line-height: 11pt;
    font-size: 9pt;
    resize: none;
    overflow: hidden;
    min-height: 32px;
}

input[type="text"]:focus, input[type="number"]:focus,
input[type="date"]:focus, select:focus, textarea:focus {
    outline: none;
    border-color: #3a7bd5;
}

/* ── CHECKBOXES – 12pt Wingdings2 style (p.25-27) ────────────────────── */
/* Spec: 12pt Wingdings2, 7pt space between boxes */
input[type="checkbox"], input[type="radio"] {
    -webkit-appearance: none;
    appearance: none;
    width: 12pt;
    height: 12pt;
    margin: 0;
    border: 1.5px solid #333;
    border-radius: 0;
    background: #fff;
    cursor: pointer;
    position: relative;
    vertical-align: middle;
    flex-shrink: 0;
}

input[type="checkbox"]:checked, input[type="radio"]:checked {
    background: #fff;
}

input[type="checkbox"]:checked::after, input[type="radio"]:checked::after {
    content: "✓";
    display: block;
    position: absolute;
    top: -1px;
    left: 1px;
    font-size: 11pt;
    font-weight: 700;
    color: #000;
    line-height: 1;
}

/* Remove border from checkboxes inside table cells */
td input[type="checkbox"], td input[type="radio"] {
    border: none;
}

a {
    color: #1a5276;
}

/* ── PAGE CONTAINER – 8.5" x 14" Legal, 0.5" margins (p.15) ──────── */
.urar-page {
    width: 8.5in;
    min-height: 14in;
    margin: 16px auto 24px auto;
    padding: 0.5in;
    background: #fff;
    box-shadow: 0 1px 4px rgba(0, 0, 0, .12);
    page-break-after: always;
    position: relative;
    display: flex;
    flex-direction: column;
}

.urar-page > main, .urar-page > .w-45p:not(.ftr-inner) {
    flex: 1;
}

.urar-page > footer {
    margin-top: auto;
}

.urar-legal {
}

/* ── WIDTH UTILITY ──────────────────────────────────────────────────── */
/* 45 picas = 7.5 inches = full content width */
.w-45p {
    width: 100%;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
}

/* ── HEADER (p.15-16) ────────────────────────────────────────────────── */
/* ½pt 50% black rule, HDR-L: 10pt Bold, HDR-R: 9pt Regular */
.urar-hdr {
    margin-bottom: 6pt;
}

.urar-hdr.noprint-on-summary {
    display: none;
}

.hdr-rule {
    border: none;
    border-top: 0.5pt solid #808080;
    margin-bottom: 6pt;
}

.hdr-inner {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    color: #000;
}

.hdr-left {
    font-weight: 700;
    font-size: 10pt;
}

.hdr-right {
    font-size: 9pt;
    font-weight: 400;
}

.pgno, .pgtotal {
    font-weight: 400;
}

/* ── FOOTER (p.16-17) ────────────────────────────────────────────────── */
/* 2pt rule, FTR-L/R: 8pt Myriad Pro Bold/Regular */
/* ── FOOTER (p.16-17) ────────────────────────────────────────────────── */
/* 2pt rule, FTR-L/R: 8pt Myriad Pro Bold/Regular */
.urar-ftr {
    margin-top: auto;
    padding-top: 6pt;
    font-size: 8pt;
}

.ftr-rule {
    border: none;
    border-top: 2pt solid #000;
    margin-bottom: 6pt;
}

.ftr-inner {
    display: flex;
    justify-content: space-between;
    gap: 24px;
    align-items: flex-start;
}

.FTR-L {
    flex: 1 1 40%;
}

.FTR-R {
    flex: 1 1 55%;
    text-align: right;
}

.FTR-L .rule-row, .FTR-R .rule-row {
    font-size: 8pt;
    padding: 1px 0;
    border-bottom: none;
    min-height: auto;
}

.FTR-L .meta {
    margin-top: 1px;
}

.FTR-L .meta .rule-row {
    border-bottom: none;
}

.FTR-R .rule-row {
    justify-content: flex-end;
    display: flex;
    align-items: baseline;
    gap: 6pt;
}

.FTR-R .rule-row span {
    min-width: auto;
    display: inline-block;
    font-weight: 700;
    text-align: right;
    font-size: 8pt;
    white-space: nowrap;
}

.FTR-R input {
    width: 80px;
    font-size: 8pt;
    text-align: left;
    border-bottom: 0.5pt solid #808080;
    border-top: none;
    border-left: none;
    border-right: none;
}

/* No ? or character counters in footer */
/* ── FOOTER CLEANUP: No ?, no char counters anywhere in footer ────── */
.urar-ftr .uad-help,
.urar-ftr .uad-remaining,
.urar-ftr .uad-limit-warning {
    display: none !important;
    visibility: hidden !important;
    width: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
    pointer-events: none !important;
}

/* Footer right-side ID lines: no ? */
.FTR-R .uad-help, .FTR-R .uad-remaining, .FTR-R .uad-limit-warning {
    display: none !important;
}

/* No ? or char counters on address / title-add fields */
.TITLE-ADD .uad-remaining, .TITLE-ADD .uad-help,
.TITLE-ADD .uad-limit-warning {
    display: none !important;
}

.addr-row .uad-remaining, .addr-row .uad-help,
.addr-row .uad-limit-warning {
    display: none !important;
}

/* Footer meta (Fannie Mae/Freddie Mac, date): no underline, no interactive elements */
.FTR-L .meta input {
    border: none !important;
    background: transparent;
    padding: 0;
    font-size: 8pt;
    color: #808080;
    pointer-events: none;
}

.FTR-L .meta .uad-remaining, .FTR-L .meta .uad-help {
    display: none !important;
}

/* ── TITLE (p.18) ────────────────────────────────────────────────────── */
/* 32pt Myriad Pro Regular, align left */
.TITLE {
    font-size: 32pt;
    font-weight: 400;
    text-align: left;
    margin: 0;
    padding: 0;
    color: #000;
    letter-spacing: -0.3pt;
    border: none;
    line-height: 1.1;
}

/* TITLE-ADD (p.18): 12/13 Myriad Pro Black, all caps; 3p space below to SUM-HD */
.TITLE-ADD {
    margin-bottom: 3pc;
    font-size: 12pt;
    font-weight: 900;
    letter-spacing: 0.3pt;
    text-transform: uppercase;
    line-height: 13pt;
    margin-top: 6pt;
}

/* =======================================================================
   TAB – Section Title (Black Tab) (p.18-19)
   9/13 Bold white in BLACK bar, FULL WIDTH x 45p
   ½pt rule below offset 3pt
   Space above: 1p7.5pt (19.5pt)
   ======================================================================= */
.TAB {
    display: block;
    margin: 19.5pt 0 3pt 0;
    padding: 0;
    border: none;
    font-size: 9pt;
    font-weight: 700;
    line-height: 13pt;
    position: relative;
    background: #000;
    color: #fff;
    width: 100%;
}

.TAB .chip {
    display: block;
    width: 100%;
    background: #000;
    color: #fff;
    font-size: 9pt;
    font-weight: 700;
    padding: 3pt 4pt;
    border-radius: 0;
    line-height: 13pt;
    white-space: nowrap;
    min-height: 15pt;
}

/* TABs without .chip wrapper */
.TAB:not(:has(.chip)) {
    padding: 3pt 4pt;
}

.TAB .chip .TXR {
    color: #fff;
    font-weight: 400;
}

.H0 {
    font-size: 14pt;
}

.H0 .chip {
    font-size: 14pt;
}

/* TAB-C: continued page indicator (p.19): 7pt Bold Italic "(continued)" */
.TAB-C {
    font-size: 7pt;
    font-weight: 700;
    font-style: italic;
}

/* ── SUM-HD – Summary Section Title (p.18) ───────────────────────────── */
/* 14pt Myriad Pro Black, all caps, 2pt rule below, offset 5pt */
.SUM-HD {
    font-size: 14pt;
    font-weight: 900;
    text-transform: uppercase;
    color: #000;
    padding: 0 0 5pt 0;
    margin: 0;
    border: none;
    background: none;
    letter-spacing: 0.5pt;
    border-bottom: 2pt solid #000;
    line-height: 1.2;
}

/* ── H1 – Subsection Title (Gray Bar) (p.19) ────────────────────────── */
/* 10/13 Bold, 15pt rule in 10% black (#e6e6e6), indent 4pt */
/* Space above: 1p3 = 15pt */
.H1 {
    font-size: 10pt;
    font-weight: 700;
    line-height: 13pt;
    background: #e6e6e6;
    color: #000;
    padding: 1pt 4pt;
    margin: 15pt 0 2pt 0;
    border: none;
    display: flex;
    align-items: center;
    gap: 6px;
}

.H1 .chip {
    background: #000;
    color: #fff;
    border: none;
    border-radius: 3px;
    padding: 2pt 8pt;
    font-size: 9pt;
    font-weight: 700;
}

.flex-h1 {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* H1-TX (p.22): 9/11 Italic, flush right */
.H1-TX {
    font-size: 9pt;
    line-height: 11pt;
    font-style: italic;
    font-weight: 400;
    padding: 2pt 4pt;
    background: transparent;
    margin: 0;
}

/* ── H2 – Subheading (Black Rule) (p.19-20) ─────────────────────────── */
/* 9/13 Bold, 1pt rule x 45p, offset 4pt, indent 4pt, NO background */
/* Space above: 1p3 = 15pt */
.H2 {
    font-size: 9pt;
    font-weight: 700;
    line-height: 13pt;
    background: transparent;
    color: #000;
    padding: 4pt 0 0 4pt;
    margin: 15pt 0 3pt 0;
    border-bottom: 1pt solid #000;
    border-top: none;
}

/* H2-1: Subheading one column (p.20): 9/13 Bold, 1pt rule x 22p */
.H2-1 {
    font-size: 9pt;
    font-weight: 700;
    line-height: 13pt;
    background: transparent;
    padding: 4pt 0 0 4pt;
    margin: 15pt 0 2pt 0;
    border-bottom: 1pt solid #000;
}

/* ── COLUMNS ─────────────────────────────────────────────────────────── */
/* 2-column: each 22p (3.66"), 1p gutter (0.17") per p.15 */
.row {
    display: flex;
    flex-wrap: wrap;
}

.gx-urar {
    gap: 0 1pc;
}

.col-left {
    flex: 1 1 48%;
    min-width: 280px;
}

.col-right {
    flex: 1 1 48%;
    min-width: 280px;
}

/* =======================================================================
   RULE ROW – label + value with ½pt 50% black underline (p.21)
   TXR-B: 9/13 Bold, TXR: 9/13 Regular
   Rule: ½pt in 50% black, offset 2pt
   ======================================================================= */
.rule-row {
    display: flex;
    align-items: baseline;
    gap: 4pt;
    padding: 2pt 0;
    min-height: 13pt;
    flex-wrap: wrap;
    font-size: 9pt;
    line-height: 13pt;
    border-bottom: none;
}

.rule-row > span, .rule-row > label {
    white-space: nowrap;
    flex-shrink: 0;
}

.rule-row > .control.yn {
    margin-left: auto;
    flex-shrink: 0;
}

.rule-row > input[type="text"], .rule-row > input[type="number"],
.rule-row > input[type="date"], .rule-row > select, .rule-row > textarea {
    flex: 1 1 auto;
    min-width: 60px;
}

/* 1pt rule used in specific contexts (H2 equivalent) */
.rule-1pt {
    border-bottom: 1pt solid #000;
    margin: 2pt 0;
}

.line-1-2pt {
    display: block;
    border-bottom: 1.5pt solid #000;
    margin-top: 1pt;
}

/* ── TYPOGRAPHY (p.20-25) ────────────────────────────────────────────── */
/* TXR: 9/13 Regular */
.TXR {
    font-size: 9pt;
    line-height: 13pt;
    font-weight: 400;
    color: #000;
}

/* TXR-B: 9/13 Bold, indent 4pt */
.TXR-B {
    font-size: 9pt;
    line-height: 13pt;
    font-weight: 700;
    color: #000;
}

/* TXR-I: 9/13 Regular, indent 12pt (p.21) */
.TXR-I {
    font-size: 9pt;
    line-height: 13pt;
    font-weight: 400;
    font-style: normal;
    padding-left: 12pt;
}

/* TXR-II: 9/13 Regular, double indent 21pt (p.22) */
.TXR-II {
    font-size: 9pt;
    line-height: 13pt;
    font-weight: 400;
    padding-left: 21pt;
}

.TXR-1 {
    font-size: 9pt;
    font-weight: 600;
}

.TXR-2 {
    font-size: 9pt;
    font-weight: 400;
}

/* TX-B: 9/13 Bold, indent 4pt (p.20) */
.TX-B {
    font-size: 9pt;
    line-height: 13pt;
    font-weight: 700;
}

/* TX-BI: 9/13 Bold Italic (p.22) */
.TX-BI {
    font-size: 9pt;
    line-height: 13pt;
    font-weight: 700;
    font-style: italic;
}

/* TXC: 9/11 Regular, 5.5pt space above, indent 4pt (p.22) */
.TXC {
    font-size: 9pt;
    line-height: 11pt;
    width: 100%;
    min-height: 32px;
    padding: 3pt 4pt;
}

/* TXC-B: 9/11 Regular + Bold intro (p.23) */
.TXC-B, .txc-b {
    padding: 5.5pt 0 0 4pt;
    font-size: 9pt;
    line-height: 11pt;
}

/* TXC-B1: 9/11 Regular + Bold intro, one column (p.23) */
.TXC-B1 {
    font-size: 9pt;
    line-height: 11pt;
    font-weight: 400;
    padding: 5.5pt 0 0 4pt;
}

/* TXC-Intro: Bold lead-in phrase */
.TXC-Intro {
    font-size: 9pt;
    line-height: 11pt;
    font-weight: 700;
    display: block;
    margin-bottom: 1pt;
}

/* TXC-Body: Commentary body text */
.TXC-Body {
    font-size: 9pt;
    line-height: 11pt;
    width: 100%;
    min-height: 40px;
    padding: 3pt 4pt;
    border: 1px solid #aaa;
    border-radius: 0;
}

/* TXC-I: 9/11 Italic, 5.5pt space above, indent 4pt (p.23) */
.TXC-I {
    font-size: 9pt;
    line-height: 11pt;
    font-style: italic;
    color: #000;
    margin: 5.5pt 0 3pt 0;
    padding: 0 4pt;
}

/* TXC-I1: same, one column (p.23) */
.TXC-I1 {
    font-size: 9pt;
    line-height: 11pt;
    font-style: italic;
    color: #000;
    margin: 5.5pt 0 3pt 4pt;
}

/* TXC-NP: 9/11 Regular, numbered paragraph (p.24) */
.TXC-NP {
    font-size: 9pt;
    line-height: 11pt;
    margin: 5.5pt 0 0 0;
    padding: 0 4pt;
}

/* FN: 8/10 Regular (p.24) */
.FN {
    font-size: 8pt;
    line-height: 10pt;
    margin: 5pt 0 0 0;
    padding: 0 4pt;
}

/* CK1: 9/11 Bold (p.25-26) */
.CK1 {
    font-size: 9pt;
    line-height: 11pt;
    font-weight: 700;
}

/* SIG: 9/13 Regular (p.24) */
.SIG {
    font-size: 9pt;
    line-height: 13pt;
}

/* SIG-B: 9/13 Regular below rule (p.25) */
.SIG-B {
    font-size: 9pt;
    line-height: 13pt;
    padding: 0 4pt;
}

/* CAP: 9/10 Bold (p.30) */
.CAP {
    font-size: 9pt;
    line-height: 10pt;
    font-weight: 700;
    display: block;
    margin-bottom: 1pt;
    padding-left: 4pt;
}

/* TAB-TX: 9/13 Italic text above TAB rule (p.22) */
.TAB-TX {
    font-size: 9pt;
    line-height: 13pt;
    font-style: italic;
}

/* =======================================================================
   CHECKBOX / YES-NO ROWS (p.25-27)
   CK: 9/11 Bold x 45p, indent 4pt
   CK1: 9/11 Bold x 19p3, indent 4pt
   Y/N: 8/9 Bold, indent 19p6
   7pt space between checkboxes
   ======================================================================= */
.ck1-row {
    display: flex;
    align-items: center;
    padding: 1pt 0;
    min-height: 13pt;
    gap: 4pt;
    border-bottom: none;
}

.ck1-label {
    flex: 1 1 0%;
    font-size: 9pt;
    font-weight: 700;
    line-height: 11pt;
    padding-left: 4pt;
    padding-right: 4pt;
    display: inline;
    min-width: 0;
}

.ck1-boxes {
    display: flex;
    gap: 7pt;
    flex-shrink: 0;
    width: 33pt;
    min-width: 33pt;
    justify-content: flex-end;
    align-items: center;
}

.Y_N {
    display: inline-flex;
    align-items: center;
    gap: 3pt;
    cursor: pointer;
    font-size: 9pt;
    line-height: 11pt;
    white-space: nowrap;
    flex-shrink: 0;
}

.Y_N input[type="radio"], .Y_N input[type="checkbox"] {
    margin: 0;
    cursor: pointer;
}

/* CK1-boxes: checkbox-only labels (no visible text), fixed width */
.ck1-boxes .Y_N {
    width: 13pt;
    min-width: 13pt;
    justify-content: center;
    gap: 0;
}

/* Y/N header: 8/9 Bold (p.25) – indent 19p6 from left, align right at 22p */
.yn-head {
    display: flex;
    justify-content: flex-end;
    font-size: 8pt;
    line-height: 9pt;
    font-weight: 700;
    color: #000;
    padding: 1pt 0;
    gap: 7pt;
    width: 33pt;
    margin-left: auto;
}

.yn-head span {
    display: inline-block;
    width: 13pt;
    min-width: 13pt;
    text-align: center;
}

.yn-head.grid {
    display: grid;
    grid-template-columns:1fr auto auto;
    align-items: center;
}

.yn-row {
    display: flex;
    align-items: center;
    padding: 1pt 0;
    min-height: 13pt;
    gap: 4pt;
}

.yn-row .label-cell, .yn-row .label {
    flex: 1;
    font-size: 9pt;
}

/* CK-full: full-page-width checkbox (p.25) – 9/11 Bold x 45p */
.ck-full {
    padding: 2pt 0;
    display: flex;
    align-items: flex-start;
    gap: 7pt;
    flex-wrap: nowrap;
}

.ck-text {
    font-size: 9pt;
    line-height: 11pt;
    font-weight: 700;
    flex: 1;
    display: inline;
}

.ck-boxes {
    display: flex;
    gap: 7pt;
    flex-shrink: 0;
    align-items: center;
}

.ckline {
    vertical-align: middle;
    padding: 0;
}

/* Force checkbox columns to align in table layouts (page 4) */
.sp-grid {
    width: 100%;
    border-collapse: collapse;
}

.sp-grid td {
    width: 50%;
    padding: 0 0 0 4pt;
    vertical-align: top;
    border: none;
}

.sp-grid .ck1-row {
    padding-right: 0;
}

.sp-grid td .ck1-row .ck1-boxes {
    width: 33pt;
    min-width: 33pt;
}

.sp-grid td.ckline {
    vertical-align: middle;
    padding: 0;
}

/* Enforce checkbox column alignment across all ckline rows */
.ckline .ck1-row {
    justify-content: flex-start;
}

.ckline .ck1-boxes {
    margin-left: auto;
}

/* =======================================================================
   TABLES (p.27-30)
   Standard: ½pt 50% black rules, top/bottom + interior verticals only
   Outermost cells: NO vertical rule unless noted
   TB: 8/9 Regular, cell inset 3pt top, 3.2pt bottom, 4pt left/right
   TCH: 9/10 Bold, ½pt 50% black rule below, offset 4pt, NO background
   TB_sub-H1: 8/9 Bold, white on 40% black (#999)
   TB-SCA_sub-H1: 8/9 Bold, white on 80% black (#333)
   TB-SCA_H2: 8/9 Bold, 10% black fill (#e6e6e6)
   ======================================================================= */
.urar-table {
    width: 100%;
    table-layout: fixed;
    margin-bottom: 4pt;
    font-size: 8pt;
    line-height: 9pt;
}

.urar-table th, .urar-table td {
    padding: 3pt 4pt 3.2pt 4pt;
    border: 0.5pt solid #808080;
    text-align: left;
    vertical-align: top;
    font-size: 8pt;
    line-height: 9pt;
    overflow: hidden;
    word-wrap: break-word;
}

.urar-table th {
    font-weight: 700;
    font-size: 9pt;
    line-height: 10pt;
}

.urar-table input[type="text"], .urar-table input[type="number"],
.urar-table select {
    border-bottom: 0.5pt solid #808080;
    font-size: 8pt;
    width: 100%;
    box-sizing: border-box;
}

/* TCH: 9/10 Bold, NO background, ½pt rule below (p.28-29) */
.TCH, tr.TCH th, tr.TCH td {
    background: transparent;
    font-weight: 700;
    font-size: 9pt;
    line-height: 10pt;
    color: #000;
    padding: 3pt 4pt;
    border-top: none;
    border-bottom: 0.5pt solid #808080;
}

.TCH.sub, tr.TCH.sub th {
    font-size: 8pt;
}

.tch-tight {
    font-size: 8pt;
    text-align: center;
    white-space: normal;
}

/* TB: 8/9 Regular (p.28) */
.TB, tr.TB td {
    font-size: 8pt;
    line-height: 9pt;
    vertical-align: middle;
}

/* TB-I: 8/9 Regular, indent 8pt (p.28) */
.TB-I {
    font-size: 8pt;
    line-height: 9pt;
    padding-left: 8pt;
}

/* TB-B: 8/9 Bold (p.28) */
.TB-B {
    font-weight: 700;
    font-size: 8pt;
    line-height: 9pt;
}

/* TB_sub-H1: White text on 40% black (p.29) */
.TB_sub-H1, tr.TB_sub-H1 td {
    background: #999;
    color: #fff;
    font-weight: 700;
    font-size: 8pt;
    line-height: 9pt;
    padding: 3pt 4pt;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
}

.TB_sub-H1 b, tr.TB_sub-H1 td b {
    color: #fff;
}

/* TB_sub-H1-R: White text on 40% black, align right (p.29) */
.TB_sub-H1-R, .TB_sub_H1-R {
    text-align: right;
    font-weight: 700;
    font-size: 8pt;
    background: #999;
    color: #fff;
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
}

.TB_sub-H1-R b {
    color: #fff;
}

/* TB_sub-H2 */
.TB_sub-H2, tr.TB_sub-H2 td {
    background: #e6e6e6;
    font-size: 8pt;
    line-height: 9pt;
    font-weight: 700;
}

/* TB-SCA_sub-H1: White text on 80% black (p.29) – SCA dark headers */
.TB-SCA_sub-H1 {
    font-size: 8pt;
    line-height: 9pt;
    font-weight: 700;
    background: #333;
    color: #fff;
}

/* TB-SCA_H2: 8/9 Bold, 10% black fill (p.30) – SCA light sub-headers */
.TB-SCA_H2, tr.TB.TB-SCA_H2 td {
    font-size: 8pt;
    line-height: 9pt;
    font-weight: 700;
    background: #e6e6e6;
    color: #000;
}

.TB-SUM-H2 {
    font-size: 8pt;
    font-weight: 700;
}

.est-col {
    text-align: right;
    white-space: nowrap;
}

.sum-no-cost .est-col {
    display: none;
}

.table {
    width: 100%;
}

.table-bordered {
    border: 0.5pt solid #808080;
}

.table-bordered th, .table-bordered td {
    border: 0.5pt solid #808080;
}

.table-wrap {
    overflow-x: auto;
}

.contact-block {
    width: 100%;
}

.contact-block td {
    padding: 3pt 4pt;
    border: 0.5pt solid #808080;
    vertical-align: top;
}

/* ── CURRENCY ────────────────────────────────────────────────────────── */
.currency-wrapper {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    white-space: nowrap;
}

.currency-input {
    text-align: right;
}

.currency-inline {
    display: inline;
}

/* ── INPUT SIZING ────────────────────────────────────────────────────── */
.w-100 {
    width: 100% !important;
}

.w-90 {
    width: 90% !important;
}

.w-50 {
    width: 50% !important;
}

.w-40 {
    width: 40% !important;
}

.w-33 {
    width: 33% !important;
}

.w-25 {
    width: 25% !important;
}

.w-10 {
    width: 10% !important;
}

.w-22p-amount {
    width: 120px;
}

.w-22p-coin {
    width: 120px;
}

.w-amt {
    width: 100px;
}

/* ── INLINE HELPERS ──────────────────────────────────────────────────── */
.inline {
    display: inline;
}

.inline-input {
    display: inline-block;
    width: auto;
    min-width: 80px;
}

.inline-mini {
    display: inline-block;
    width: auto;
    min-width: 50px;
    max-width: 100px;
    font-size: 8pt;
}

.inline-field {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 3px;
    width: 100%;
}

.inline-field select, .inline-field input {
    flex: 1 1 auto;
    min-width: 0;
    max-width: 100%;
}

.alpha, .alph {
}

.alphanumeric {
}

.numeric, .number {
    text-align: right;
}

.money {
    text-align: right;
}

.dim {
    width: 60px;
    text-align: right;
}

.input-file {
    font-size: 8pt;
    border: none;
    padding: 1px;
    display: none !important;
    /* Hide the default file input button - users can click/drop on the exhibit-box instead */
}

/* ── FLOAT / ALIGN ───────────────────────────────────────────────────── */
.float-right {
    float: right;
}

.right {
    text-align: right;
}

.center {
    text-align: center;
}

.between {
    display: flex;
    justify-content: space-between;
}

.push {
    margin-left: auto;
}

/* ── SPACING ─────────────────────────────────────────────────────────── */
.mt-1 {
    margin-top: 3pt;
}

.mt-2 {
    margin-top: 6pt;
}

.mt-3 {
    margin-top: 10pt;
}

.mt-4 {
    margin-top: 14pt;
}

.pl-4 {
    padding-left: 16pt;
}

.no-border {
    border: none !important;
}

.no-left {
    border-left: none !important;
}

.no-right {
    border-right: none !important;
}

.no-rule {
    border-bottom: none !important;
}

.tab {
    margin-left: 8pt;
}

.muted {
    color: #808080;
    font-style: italic;
}

.placeholder {
    color: #999;
}

.none-line {
    padding: 3pt 4pt;
    color: #000;
}

.fid {
    font-size: 7pt;
    color: #c00;
    font-weight: 600;
}

/* =======================================================================
   UAD HELP "?" – Plain blue text, ALWAYS inline
   ======================================================================= */
.uad-help {
    display: inline !important;
    visibility: visible !important;
    color: #2563eb;
    font-size: inherit;
    font-weight: 700;
    cursor: pointer;
    margin-left: 2pt;
    text-decoration: none;
    border: none;
    border-radius: 0;
    background: transparent;
    vertical-align: baseline;
    line-height: inherit;
    padding: 0;
    transition: color 0.15s;
    /* Plain blue ? - no circle, no background, no outline */
}

.uad-help:hover, .uad-help:focus {
    color: #1d4ed8;
    text-decoration: underline;
}

/* ── Override ai-chat.js: hide ALL blue circle badges globally ──────── */
/* ? marks are placed at end of label text via .uad-help spans instead  */
.ai-field-help {
    display: none !important;
}

/* Grid data cell counters: below the input line */
.defect-table tbody td .uad-remaining,
.sum-table tbody td .uad-remaining {
    display: block !important;
    margin: 1pt 0 0 0;
    text-align: center;
}

/* ── UAD TOOLTIP ─────────────────────────────────────────────────────── */
.uad-tooltip {
    position: absolute;
    z-index: 9999;
    background: #fff;
    border: 1px solid #2e86c1;
    border-radius: 5px;
    box-shadow: 0 3px 12px rgba(0, 0, 0, .18);
    padding: 10px 14px;
    max-width: 340px;
    font-size: 9pt;
    line-height: 13pt;
    pointer-events: auto;
}

.uad-tooltip[data-hidden="true"] {
    display: none;
}

.uad-tip-title {
    font-weight: 700;
    font-size: 9pt;
    margin-bottom: 4pt;
    color: #1a5276;
}

.uad-tip-body {
    color: #333;
    margin-bottom: 6pt;
}

.uad-tip-more {
    font-size: 8pt;
    color: #2e86c1;
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
    text-decoration: underline;
}

/* =======================================================================
   CHARACTER COUNTER – compact
   ======================================================================= */
.uad-remaining {
    display: block;
    font-size: 6pt;
    color: #b8860b;
    margin: 1pt 0 0 0;
    padding: 0;
    line-height: 1;
    text-align: center;
    font-weight: 600;
}

.uad-remaining.warn {
    color: #c97700;
    font-weight: 700;
}

.uad-remaining.danger {
    color: #c62828;
    font-weight: 700;
}

td .uad-remaining {
    font-size: 5pt;
}

/* Hide character counters for numeric and currency fields */
input.numeric ~ .uad-remaining,
input.currency-input ~ .uad-remaining,
input[type="number"] ~ .uad-remaining,
input[inputmode="numeric"] ~ .uad-remaining,
input[inputmode="decimal"] ~ .uad-remaining {
    display: none !important;
}

/* Hide character counters for fields with dropdowns */
.rule-row:has(select) .uad-remaining,
.currency-inline:has(select) .uad-remaining,
td:has(select) .uad-remaining,
span:has(select) .uad-remaining {
    display: none !important;
}

/* Hide character counters on select elements themselves */
select ~ .uad-remaining {
    display: none !important;
}

/* Add min-height to table cells to account for character counter spacing */
/* This ensures cells without counters align with cells that have counters */
.urar-table td {
    position: relative;
}

/* Reserve space for character counter in all table cells with inputs */
.urar-table td input[type="text"],
.urar-table td select,
.urar-table td textarea {
    margin-bottom: 0;
}

/* Add padding-bottom to table cells to account for counter height (~7pt) */
.urar-table tbody td {
    padding-bottom: 10pt;
}

/* Ensure character counters in table cells are positioned at bottom */
.urar-table td .uad-remaining {
    position: absolute;
    bottom: 3pt;
    left: 4pt;
    right: 4pt;
}

/* Add spacing spacer for table cells without character counters to match cells with counters */
/* Use pseudo-element for cells that don't have .uad-remaining */
.urar-table tbody td:not(:has(.uad-remaining))::after {
    content: '';
    display: block;
    height: 8pt;
    margin-top: 1pt;
}

/* Manual spacer element for when pseudo-element doesn't work */
.urar-table td .uad-spacer {
    display: block;
    height: 8pt;
    font-size: 5pt;
    margin: 1pt 0 0 0;
    visibility: hidden;
}

.currency-wrapper .uad-remaining {
    width: 100%;
}

/* Limit exceeded warning */
.uad-limit-warning {
    display: none;
    font-size: 7pt;
    font-weight: 700;
    color: #fff;
    background: #c62828;
    padding: 1pt 4pt;
    margin-left: 4pt;
    border-radius: 2px;
    line-height: 1.3;
    vertical-align: baseline;
}

.uad-limit-warning.show {
    display: inline;
}

textarea ~ .uad-limit-warning.show {
    display: block;
    margin-left: 0;
    margin-top: 1pt;
}

/* =======================================================================
   GREEN "+" ADD ROW BUTTON – appears on each DDD row to the left
   Hides on print. Always visible on screen on the last row of each section.
   ======================================================================= */
.ddd-add-row {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 14pt;
    height: 14pt;
    margin: 0 3pt 0 0;
    background: #16a34a;
    color: #fff;
    border: none;
    border-radius: 2px;
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    vertical-align: middle;
    transition: background 0.15s;
    flex-shrink: 0;
}

.ddd-add-row:hover {
    background: #15803d;
}

.ddd-remove-row {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 14pt;
    height: 14pt;
    margin: 0 0 0 3pt;
    background: #dc2626;
    color: #fff;
    border: none;
    border-radius: 2px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    vertical-align: middle;
    transition: background 0.15s;
    flex-shrink: 0;
}

.ddd-remove-row:hover {
    background: #b91c1c;
}

/* Inline positioning - sits before the input in first cell */
.defect-table .TB td:first-child {
    white-space: normal;
}

/* ── DDD Table Column Widths (p.33) ───────────────────────────────── */
/* Fixed layout forces columns to respect colgroup widths */
.defect-table, .sum-table, .sum-no-cost {
    table-layout: fixed;
    width: 100%;
}

.defect-table th, .defect-table td,
.sum-table th, .sum-table td,
.sum-no-cost th, .sum-no-cost td {
    overflow: hidden;
    word-wrap: break-word;
}

/* DDD inputs/selects fill cells */
.defect-table .TB td input[type="text"],
.defect-table .TB td select,
.sum-table .TB td input[type="text"],
.sum-table .TB td select {
    width: 100%;
    box-sizing: border-box;
}

/* =======================================================================
   PHOTO / EXHIBIT BOXES (p.30-31)
   Up to 8 photos per page
   CAP: 9/10 Bold label above each photo
   Photos: proper 2-column grid, consistent sizing
   ======================================================================= */
.ph-single {
    text-align: center;
    margin: 6pt 0;
    position: relative;
    width: 258pt; /* Match photo placeholder size */
    height: 166pt; /* Match photo placeholder size */
    display: inline-block;
}

.ph-single img {
    max-width: 100%;
    max-height: 100%;
    width: 258pt;
    height: 166pt;
    object-fit: contain;
    border: 1pt solid #808080;
    display: block;
}

.ph-single .input-file {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    cursor: pointer;
}

.ph-thumb {
    width: 120px;
    height: 90px;
    object-fit: cover;
    border: 1pt solid #808080;
}

.ph-ph {
    text-align: center;
    margin: 4pt;
}

.ph-ph-txt {
    font-size: 8pt;
    text-align: center;
    color: #808080;
    font-style: italic;
    margin-top: 4pt;
}

.ph-hint {
    font-size: 8pt;
    color: #808080;
    font-style: italic;
    display: block;
    margin-top: 3pt;
}

/* Exhibit grid: 2-column table layout (p.31)
   Each cell: 22p6 wide. Photo area: 21p6 x 13p10 (~3.58" x 2.31")
   All rules: 1pt 50% black. CAP label above each photo. */
.exhibit {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    margin: 4pt 0;
    border: 1pt solid #808080;
}

.exhibit.two-col, .exhibit.two-cols {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    border: 1pt solid #808080;
}

/* Each exhibit-col wraps a CAP label + exhibit-box
   Width: 22p6 = 270pt per style guide */
.exhibit-col {
    border: 1pt solid #808080;
    padding: 0;
    display: flex;
    flex-direction: column;
    min-width: 270pt; /* 22p6 per style guide */
}

.exhibit-col label, .exhibit-col .CAP {
    font-size: 9pt;
    line-height: 10pt;
    font-weight: 700;
    padding: 3pt 4pt 2pt 4pt;
    display: block;
}

.exhibit-box {
    border: none; /* Border is on parent exhibit-col */
    border-radius: 0;
    padding: 0;
    text-align: center;
    width: 100%; /* Fill parent cell */
    max-width: 100%;
    height: 166pt; /* 21p6 x 13p10 per style guide */
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    background: #dcdcdc url('../images/placeholder_exhibit.png') center/cover no-repeat;
    position: relative;
    overflow: hidden;
    box-sizing: border-box;
    margin-top: 0; /* No extra margin needed */
}

.exhibit-box::before {
    content: "";
    display: block;
    width: 36px;
    height: 30px;
    margin: 0 auto 6pt;
    background: #aaa;
    -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 20'%3E%3Cpath d='M9 0h6l2 3h5a2 2 0 012 2v13a2 2 0 01-2 2H2a2 2 0 01-2-2V5a2 2 0 012-2h5L9 0zm3 6a5 5 0 100 10 5 5 0 000-10zm0 2a3 3 0 110 6 3 3 0 010-6z'/%3E%3C/svg%3E") center/contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 20'%3E%3Cpath d='M9 0h6l2 3h5a2 2 0 012 2v13a2 2 0 01-2 2H2a2 2 0 01-2-2V5a2 2 0 012-2h5L9 0zm3 6a5 5 0 100 10 5 5 0 000-10zm0 2a3 3 0 110 6 3 3 0 010-6z'/%3E%3C/svg%3E") center/contain no-repeat;
}

.exhibit-box:hover {
    background: #f8f8f8;
}

/* Standalone exhibit-boxes (not inside exhibit-col) need borders and fixed width */
.exhibit > .exhibit-box,
.dm-block .exhibit-box,
#sketch-box,
#dm-drop {
    border: 1pt solid #808080;
    width: 258pt;
}

/* Sketch box uses sketch-specific placeholder */
#sketch-box {
    background: #e6e7e8 url('../images/placeholder_sketch.png') center/cover no-repeat;
}

.exhibit-box img {
    max-width: 100%;
    max-height: 160px;
    object-fit: contain;
    display: none; /* Hidden by default until image is loaded */
    position: relative;
    z-index: 1;
}

/* When image has src attribute, show it and hide placeholder */
.exhibit-box img[src]:not([src=""]) {
    display: block;
}

.exhibit-box img[src]:not([src=""]) ~ .exhibit-placeholder {
    display: none;
}

/* Hide placeholder background when image is loaded */
.exhibit-box:has(img[src]:not([src=""])) {
    background-image: none;
    background-color: #fff;
}

.exhibit-box .input-file {
    margin-top: 3pt;
}

.exhibit-placeholder {
    font-size: 8pt;
    color: #808080;
    font-style: italic;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100%;
    text-align: center;
    pointer-events: none;
}

/* (exhibit-col rules defined above in exhibit grid section) */

.exhibit-grid {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 0;
    margin: 4pt 0;
    border: 1pt solid #808080;
}

.exhibit-hd {
    font-size: 9pt;
    font-weight: 700;
    margin-bottom: 1pt;
}

.exhibit-item {
    margin-bottom: 4pt;
}

.exhibits {
    margin: 4pt 0;
}

.sca-exhibits-grid {
    display: grid;
    grid-template-columns:1fr 1fr;
    gap: 8pt;
    margin: 4pt 0;
}

.sca-exhibit-tile {
    border: 1pt solid #808080;
    padding: 4pt;
    text-align: center;
    min-height: 80px;
    background: #f5f5f5;
}

.sca-thumb {
    width: 100%;
    max-height: 120px;
    object-fit: cover;
}

.sca-thumb-row td {
    text-align: center;
}

.exhibit-col {
    display: flex;
    flex-direction: column;
    gap: 2pt;
}

/* ── MAP BOX ─────────────────────────────────────────────────────────── */
.map-box, .iax-map {
    width: 100%;
    min-height: 200px;
    border: 0.5pt solid #808080;
    background: #f0f0f0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #808080;
    font-style: italic;
    margin: 4pt 0;
}

/* ── SCA COMPARISON GRID (p.59-63) ───────────────────────────────────── */
/* SCA vertical Type A: ½pt 100% black between subject/comparables */
/* SCA vertical Type B: ½pt 50% black between value/adjustment cells */
/* SCA horizontal Type C: ½pt 50% black */
.sca-grid {
    border: 0.5pt solid #808080;
}

.sca-grid th, .sca-grid td {
    font-size: 8pt;
    line-height: 9pt;
}

/* SCA grayed-out cells: 10% black fill */
.sca-grid .col-label {
    font-weight: 700;
}

.sca-grid .col-subj {
    background: #fff;
}

.sca-grid .col-comp {
    background: #fff;
}

.sca-grid .col-adj {
    width: 3pc 6pt;
    text-align: right;
}

.col-label {
    font-weight: 700;
}

.col-subj {
    background: #fff;
}

.col-comp {
    background: #fff;
}

.col-adj {
    width: 60px;
    text-align: right;
}

.comp-cell {
    padding: 3pt 4pt;
}

.comp-detail-row td {
    font-size: 8pt;
}

.comp-photo-row td {
    text-align: center;
    padding: 4pt;
}

.comp-grid th, .comp-grid td {
    font-size: 8pt;
    line-height: 9pt;
}

/* ── MISC ────────────────────────────────────────────────────────────── */
.site-size {
    font-weight: 700;
}

.addr-lines {
    font-size: 9pt;
}

.addr-row .rule-row {
    display: flex;
    align-items: center;
    gap: 4pt;
}

.addr-row input {
    flex: 1;
}

.cred-client {
    font-size: 9pt;
}

.contact-block .rule-row {
    border-bottom: none;
}

.vs-area {
}

.vs-parking {
    margin: 3pt 0;
}

.vs-parking-wrap {
    display: flex;
    gap: 8pt;
}

.vs-detail {
    margin: 3pt 0;
}

.vs-detail-cell {
    padding: 3pt 4pt;
}

.spa-detail-wrap {
    display: flex;
    gap: 8pt;
    flex-wrap: wrap;
}

.spa-detail-cell {
    flex: 1;
    min-width: 120px;
}

.ui-detail-cell {
    padding: 3pt 4pt;
}

.cra-part {
    margin: 3pt 0;
}

.cra-row {
    display: flex;
    gap: 8pt;
    align-items: center;
}

.grm-photo {
    text-align: center;
}

.control {
    display: inline-flex;
    align-items: center;
    gap: 4pt;
}

.control.yn {
    gap: 7pt;
}

.control.yn .Y_N {
    width: auto;
    min-width: auto;
}

.label {
    font-size: 9pt;
}

.lbl {
    font-size: 9pt;
    font-weight: 700;
}

.asis-wrap {
    margin: 4pt 0;
}

.asis-note {
    font-size: 9pt;
    font-style: italic;
    color: #000;
}

.value {
}

.hud-only {
    display: none;
}

.dm-block {
}

.dm-hidden {
    display: none;
}

.dm-cap-label {
    font-size: 9pt;
    font-weight: 700;
}

.cap-box {
    padding: 3pt 0;
}

.detail-wrap {
    margin: 3pt 0;
}

.tile-hd {
    font-weight: 700;
    font-size: 9pt;
    margin-bottom: 1pt;
}

.tile-empty {
    color: #808080;
    font-style: italic;
    text-align: center;
    padding: 8pt;
}

.noprint {
}

.dev-only {
    display: none !important;
    background: transparent !important;
}

.na {
    color: #808080;
}

.na-cell {
    color: #808080;
    font-style: italic;
}

.half {
    width: 50%;
}

.flex {
    display: flex;
}

.grid {
    display: grid;
}

.grid-1 {
    grid-template-columns:1fr;
}

.grid-2 {
    grid-template-columns:1fr 1fr;
}

.grid-3 {
    grid-template-columns:1fr 1fr 1fr;
}

.grid-tight {
    gap: 4pt;
}

.tight {
    padding: 1pt 3pt;
}

.txi {
    font-style: italic;
}

.g8 {
    gap: 8pt;
}

.row-actions {
    display: flex;
    gap: 4pt;
    margin: 3pt 0;
}

.btn-add-row, .btn-row, .add, .remove {
    font-size: 8pt;
    padding: 2pt 8pt;
    border: 1px solid #aaa;
    border-radius: 3px;
    background: #f0f0f0;
    cursor: pointer;
}

.btn-add-row:hover, .add:hover {
    background: #e0e0e0;
}

.remove {
    background: #fee;
    border-color: #c99;
}

.remove:hover {
    background: #fdd;
}

.row-illegal {
    display: none;
}

.subhead {
    font-weight: 700;
    font-size: 9pt;
    padding: 2pt 0;
}

.lg-row td {
    padding: 3pt 4pt;
}

.adj-col {
    text-align: right;
    width: 65px;
}

.hbu-question {
    font-size: 9pt;
    font-weight: 700;
}

.template {
    display: none;
}

.ob-area, .ob-mech, .ob-defects {
    width: 100%;
}

.ext-row td, .unit-row td, .other-row td {
    vertical-align: top;
}

.ai-help {
    background: #f0f8ff;
}

.repair-cost {
    text-align: right;
    font-weight: 700;
}

.cmp {
    padding: 3pt 4pt;
}

.comp-lines {
    padding: 3pt 4pt;
}

.emdash::before {
    content: "\2014";
}

.dash::before {
    content: "\2013";
}

.ledger, .urar-ledger {
    width: 100%;
}

.row-money {
}

/* Image caption input: character counter appears below */
.dm-cap-input {
    display: block;
    width: 100%;
    margin-bottom: 6pt; /* Increased spacing before exhibit-box */
}

/* Character counter for caption inputs: always display below */
.dm-cap-input ~ .uad-remaining {
    display: block !important;
    margin: 1pt 0 0 0;
    text-align: left;
}

.util-public {
}

.util-private {
}

.ob-left {
    vertical-align: top;
}

.ob-top {
}

.ob-photo {
    text-align: center;
}

.hud-cert {
}

.hud-sub {
}

.inv-reason {
}

.inv-ret {
}

.opt-adu, .opt-aws, .opt-corner, .opt-floor, .opt-nru, .opt-oper {
}

.wsa {
}

.att1, .comp1, .cooling, .ext1, .fub1, .heating, .lic-sel, .nal1 {
}

.ob-defects-exist, .ob-type, .oms1, .pr1, .rni1, .rt1, .stv {
}

.ui-feature, .ui-status, .ui-timeframe, .util1 {
}

.sca-section-with-adj {
}

/* =======================================================================
   PRINT – Exact match to Appendix E for output
   ======================================================================= */
@media print {
    @page {
        size: 8.5in 14in;
        margin: 0.5in;
    }

    body {
        background: #fff;
    }

    .urar-page {
        box-shadow: none;
        margin: 0;
        padding: 0;
        width: 100%;
        min-height: auto;
        page-break-after: auto;
        page-break-inside: avoid;
    }

    /* Hide interactive elements */
    .uad-help, .ddd-add-row, .ddd-remove-row, .uad-remaining, .uad-limit-warning, .uad-spacer,
    .noprint, .dev-only, .row-actions, .btn-add-row, .btn-row,
    .noprint-on-summary, #ai-chat-window {
        display: none !important;
    }

    .urar-hdr.noprint-on-summary {
        display: none !important;
    }

    /* Hide dropdown arrows */
    select {
        -webkit-appearance: none;
        appearance: none;
        background-image: none !important;
    }

    /* Clean field styling */
    input[type="text"], input[type="number"], input[type="date"], select {
        border: none !important;
        border-bottom: 0.5pt solid #808080 !important;
        background: transparent !important;
    }

    textarea {
        border: none !important;
        background: transparent !important;
    }

    .exhibit-box {
        border-top: 0.5pt solid #808080;
        background: #fff;
    }

    .exhibit-col {
        border: 0.5pt solid #808080;
    }

    /* Print colors – force exact color reproduction */
    .TAB {
        background: #000 !important;
        color: #fff !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .TAB .chip {
        background: #000 !important;
        color: #fff !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .H1 {
        background: #e6e6e6 !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .H2 {
        background: transparent !important;
        border-bottom: 1pt solid #000 !important;
    }

    .TCH, tr.TCH th, tr.TCH td {
        background: transparent !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .TB_sub-H1, tr.TB_sub-H1 td {
        background: #999 !important;
        color: #fff !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .TB_sub-H1-R {
        background: #999 !important;
        color: #fff !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .TB-SCA_H2, tr.TB.TB-SCA_H2 td {
        background: #e6e6e6 !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    input[type="checkbox"], input[type="radio"] {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
}

/* ── RESPONSIVE ──────────────────────────────────────────────────────── */
@media (max-width: 800px) {
    .urar-page {
        width: 100%;
        padding: 12px;
        margin: 0;
        box-shadow: none;
        min-height: auto;
    }

    .col-left, .col-right {
        flex: 1 1 100%;
    }

    .exhibit.two-col, .exhibit.two-cols, .exhibit-grid, .sca-exhibits-grid {
        grid-template-columns:1fr;
    }
}
