@import '_content/Blazored.Modal/Blazored.Modal.bundle.scp.css';

/* _content/NoiseLockQuoteTool/Pages/AbsorptionPnls.razor.rz.scp.css */
/* =============================================================
   ABSORPTIONPNLS.RAZOR — COMPONENT STYLESHEET  (scoped)
   Font: DIN 2014 / DIN Pro throughout
   IAC Brand: Navy #002855 · Gold #F1B828 · Green #1a7a4a
   Mirrors Doors.razor.css token system exactly.
   Light + dark mode via data-bs-theme / data-theme attributes.
   =============================================================*/


/* ─────────────────────────────────────────────
   1. DESIGN TOKENS — LIGHT
   ───────────────────────────────────────────── */
:root[b-rkr0edoe1s],
:root[data-bs-theme="light"][b-rkr0edoe1s],
[data-theme="light"][b-rkr0edoe1s] {
    --iac-navy: #002855;
    --iac-navy-mid: #1a3260;
    --iac-gold: #F1B828;
    --iac-gold-rgb: 241,184,40;
    --iac-navy-rgb: 0,40,85;
    --iac-green: #1a7a4a;
    --iac-green-rgb: 26,122,74;
    --page-bg: #f0f2f5;
    --panel-bg: #f7f8fb;
    --panel-bg-alt: #eef0f4;
    --panel-border: rgba(0,40,85,0.10);
    --panel-border-strong: rgba(0,40,85,0.18);
    --header-bg: #d8dde5;
    --header-border: rgba(0,40,85,0.18);
    --text-primary: #0d1f3c;
    --text-secondary: rgba(13,31,60,0.72);
    --text-muted: rgba(13,31,60,0.48);
    --text-dim: rgba(13,31,60,0.36);
    --input-bg: #ffffff;
    --input-bg-hover: #f4f6f8;
    --input-border: rgba(0,40,85,0.14);
    --input-border-focus: rgba(241,184,40,0.70);
    --input-focus-shadow: rgba(241,184,40,0.18);
    --input-text: #0d1f3c;
    --input-placeholder: rgba(13,31,60,0.38);
    --input-disabled-bg: rgba(0,40,85,0.05);
    --divider: rgba(0,40,85,0.08);
    --divider-strong: rgba(0,40,85,0.14);
    --table-head-bg: #002855;
    --table-head-text: #ffffff;
    --table-row-even: #ffffff;
    --table-row-odd: #f6f8fb;
    --table-row-hover: rgba(0,40,85,0.04);
    --table-border: rgba(0,0,0,0.07);
    --scrollbar-thumb: rgba(0,40,85,0.18);
    /* Buttons */
    --btn-primary-bg: #002855;
    --btn-primary-hover: #001e42;
    --btn-success-bg: #1a7a4a;
    --btn-success-hover: #155f39;
    --btn-danger-bg: rgba(220,38,38,0.08);
    --btn-danger-hover: rgba(220,38,38,0.14);
    --btn-danger-border: rgba(220,38,38,0.18);
    --btn-danger-color: #b91c1c;
    /* Badges / alerts */
    --warn-bg: rgba(241,184,40,0.10);
    --warn-border: rgba(245,158,11,0.36);
    --warn-accent: #f59e0b;
    --warn-text: #7c5a00;
    --info-bg: rgba(59,130,246,0.07);
    --info-border: rgba(59,130,246,0.22);
    --info-accent: #1b74d8;
    --info-text: #0d3c6e;
    --success-bg: rgba(26,122,74,0.10);
    --success-text: #155724;
    --success-border: rgba(26,122,74,0.24);
    /* No-price badge */
    --no-price-bg: rgba(220,38,38,0.08);
    --no-price-text: #b91c1c;
    --no-price-border: rgba(220,38,38,0.20);
    /* Color chip ring */
    --chip-ring: rgba(0,40,85,0.30);
    --chip-border: 1.5px solid rgba(0,40,85,0.30);
    --chip-sel-ring: rgba(241,184,40,0.55);
    --chip-sel-bg: rgba(241,184,40,0.10);
    --chip-hover-bg: rgba(0,40,85,0.05);
    /* Textured colors section container */
    --textured-section-bg: rgba(0,40,85,0.04);
    --textured-section-border: rgba(0,40,85,0.14);
    /* Section label */
    --section-label-bg: rgba(0,40,85,0.05);
    --section-label-text: #002855;
    /* Detail modal */
    --modal-bg: #ffffff;
    --modal-overlay-bg: rgba(0,20,50,0.55);
    --modal-header-bg: #002855;
    --modal-header-text: #ffffff;
    --modal-footer-bg: #f6f8fb;
    --modal-shadow: 0 24px 64px rgba(0,40,85,0.22), 0 0 0 1px rgba(0,40,85,0.08);
    --dl-dt: rgba(13,31,60,0.52);
    --dl-dd: #0d1f3c;
    /* Info button */
    --info-btn-bg: rgba(0,40,85,0.07);
    --info-btn-text: #002855;
    --info-btn-hover-bg: rgba(241,184,40,0.12);
    --info-btn-hover-color: #7a4f00;
    --info-btn-border: rgba(0,40,85,0.14);
    /* NQ Modal overlay */
    --nq-overlay-bg: rgba(2,6,14,.82);
    --nq-card-bg: #ffffff;
    --nq-card-border: rgba(14,40,80,.20);
    --nq-header-bg: rgba(241,184,40,.08);
    --nq-header-border: rgba(14,40,80,.10);
    --nq-icon-bg: rgba(241,184,40,.18);
    --nq-icon-border: rgba(241,184,40,.38);
    --nq-icon-color: #7a4500;
    --nq-title-color: #7a4500;
    --nq-subtitle-color: #6882a0;
    --nq-body-color: #0c1c30;
    --nq-footer-bg: #f5f7fc;
    --nq-footer-border: rgba(14,40,80,.10);
    --nq-btn-ok-bg: #002855;
    --nq-btn-ok-border: #001535;
    --nq-btn-ok-color: #ffffff;
    --nq-btn-ok-hover-bg: #001c3e;
}

    /* ─────────────────────────────────────────────
   1b. DESIGN TOKENS — DARK
   ───────────────────────────────────────────── */
    :root[data-bs-theme="dark"][b-rkr0edoe1s],
    [data-theme="dark"][b-rkr0edoe1s] {
        --iac-navy: #0d1f3c;
        --iac-navy-mid: #1a3260;
        --iac-gold: #F1B828;
        --iac-gold-rgb: 241,184,40;
        --iac-navy-rgb: 13,31,60;
        --iac-green: #22c55e;
        --iac-green-rgb: 34,197,94;
        --page-bg: #0b0f17;
        --panel-bg: #1a2033;
        --panel-bg-alt: #1d2438;
        --panel-border: rgba(255,255,255,0.10);
        --panel-border-strong: rgba(255,255,255,0.16);
        --header-bg: #090c14;
        --header-border: rgba(255,255,255,0.12);
        --text-primary: rgba(255,255,255,0.92);
        --text-secondary: rgba(255,255,255,0.72);
        --text-muted: rgba(255,255,255,0.48);
        --text-dim: rgba(255,255,255,0.30);
        --input-bg: rgba(255,255,255,0.06);
        --input-bg-hover: rgba(255,255,255,0.09);
        --input-border: rgba(255,255,255,0.11);
        --input-border-focus: rgba(241,184,40,0.55);
        --input-focus-shadow: rgba(241,184,40,0.14);
        --input-text: rgba(255,255,255,0.90);
        --input-placeholder: rgba(255,255,255,0.32);
        --input-disabled-bg: rgba(255,255,255,0.04);
        --divider: rgba(255,255,255,0.06);
        --divider-strong: rgba(255,255,255,0.10);
        --table-head-bg: #0e1520;
        --table-head-text: #F1B828;
        --table-row-even: #1a2236;
        --table-row-odd: #1e2840;
        --table-row-hover: #263250;
        --table-border: rgba(255,255,255,0.06);
        --scrollbar-thumb: rgba(255,255,255,0.14);
        --btn-primary-bg: #1a3260;
        --btn-primary-hover: #1e3a72;
        --btn-success-bg: #1a7a4a;
        --btn-success-hover: #1d8f56;
        --btn-danger-bg: rgba(239,68,68,0.10);
        --btn-danger-hover: rgba(239,68,68,0.20);
        --btn-danger-border: rgba(239,68,68,0.28);
        --btn-danger-color: #f87171;
        --warn-bg: rgba(241,184,40,0.09);
        --warn-border: rgba(241,184,40,0.26);
        --warn-accent: #F1B828;
        --warn-text: rgba(241,184,40,0.90);
        --info-bg: rgba(96,165,250,0.08);
        --info-border: rgba(96,165,250,0.22);
        --info-accent: #60a5fa;
        --info-text: rgba(147,197,253,0.90);
        --success-bg: rgba(34,197,94,0.09);
        --success-text: #4ade80;
        --success-border: rgba(34,197,94,0.22);
        --no-price-bg: rgba(239,68,68,0.11);
        --no-price-text: #f87171;
        --no-price-border: rgba(239,68,68,0.26);
        --chip-ring: rgba(255,255,255,0.28);
        --chip-border: 1.5px solid rgba(255,255,255,0.28);
        --chip-sel-ring: rgba(241,184,40,0.55);
        --chip-sel-bg: rgba(241,184,40,0.10);
        --chip-hover-bg: rgba(255,255,255,0.06);
        --textured-section-bg: rgba(255,255,255,0.03);
        --textured-section-border: rgba(255,255,255,0.10);
        --section-label-bg: rgba(255,255,255,0.04);
        --section-label-text: rgba(241,184,40,0.88);
        --modal-bg: #131b2a;
        --modal-overlay-bg: rgba(2,6,18,0.72);
        --modal-header-bg: #0d1f3c;
        --modal-header-text: rgba(255,255,255,0.92);
        --modal-footer-bg: #0f1622;
        --modal-shadow: 0 28px 72px rgba(0,0,0,0.55), 0 0 0 1px rgba(255,255,255,0.07);
        --dl-dt: rgba(255,255,255,0.46);
        --dl-dd: rgba(255,255,255,0.88);
        --info-btn-bg: rgba(255,255,255,0.06);
        --info-btn-text: rgba(255,255,255,0.72);
        --info-btn-hover-bg: rgba(241,184,40,0.12);
        --info-btn-hover-color: #F1B828;
        --info-btn-border: rgba(255,255,255,0.10);
        /* NQ Modal — dark */
        --nq-overlay-bg: rgba(2,6,14,.88);
        --nq-card-bg: #0c1829;
        --nq-card-border: rgba(255,255,255,.09);
        --nq-header-bg: rgba(241,184,40,.07);
        --nq-header-border: rgba(255,255,255,.07);
        --nq-icon-bg: rgba(241,184,40,.14);
        --nq-icon-border: rgba(241,184,40,.28);
        --nq-icon-color: #ffd56d;
        --nq-title-color: #ffd56d;
        --nq-subtitle-color: rgba(155,190,235,.55);
        --nq-body-color: rgba(220,235,255,.92);
        --nq-footer-bg: #101e30;
        --nq-footer-border: rgba(255,255,255,.07);
        --nq-btn-ok-bg: rgba(241,184,40,.22);
        --nq-btn-ok-border: rgba(241,184,40,.38);
        --nq-btn-ok-color: #ffe49a;
        --nq-btn-ok-hover-bg: rgba(241,184,40,.32);
    }


/* ─────────────────────────────────────────────
   2. BASE / RESET
   ───────────────────────────────────────────── */
*[b-rkr0edoe1s], *[b-rkr0edoe1s]::before, *[b-rkr0edoe1s]::after {
    box-sizing: border-box;
}

.quotes-page[b-rkr0edoe1s],
.quotes-page *[b-rkr0edoe1s] {
    font-family: 'din-2014', 'DIN 2014', 'DIN Pro', 'DM Sans', system-ui, -apple-system, sans-serif !important;
}

[b-rkr0edoe1s]::-webkit-scrollbar {
    width: 5px;
    height: 5px;
}

[b-rkr0edoe1s]::-webkit-scrollbar-track {
    background: transparent;
}

[b-rkr0edoe1s]::-webkit-scrollbar-thumb {
    background: var(--scrollbar-thumb);
    border-radius: 10px;
}


/* ─────────────────────────────────────────────
   3. PAGE SHELL
   ───────────────────────────────────────────── */
.quotes-page[b-rkr0edoe1s] {
    background: var(--page-bg);
    min-height: 100vh;
    transition: background 0.25s;
}

.px-panel[b-rkr0edoe1s] {
    padding-left: 10px !important;
    padding-right: 10px !important;
}


/* ─────────────────────────────────────────────
   4. PAGE HEADING
   ───────────────────────────────────────────── */
.quotes-page h1[b-rkr0edoe1s] {
    font-size: 1.55rem;
    font-weight: 800;
    letter-spacing: -0.02em;
    color: var(--text-primary);
}


/* ─────────────────────────────────────────────
   5. IAC PANEL / CARD
   ───────────────────────────────────────────── */
.card.border-0.shadow-sm[b-rkr0edoe1s] {
    background: var(--panel-bg) !important;
    border: 1px solid var(--panel-border) !important;
    border-radius: 14px !important;
    box-shadow: 0 2px 8px rgba(0,40,85,0.10), 0 8px 28px rgba(0,40,85,0.08), 0 20px 50px rgba(0,40,85,0.06) !important;
    transition: background 0.25s, border-color 0.25s;
    overflow: hidden;
}

    .card.border-0.shadow-sm .card-body[b-rkr0edoe1s] {
        background: var(--panel-bg) !important;
        padding: 20px 22px !important;
    }

:root[data-bs-theme="dark"] .card.border-0.shadow-sm[b-rkr0edoe1s],
[data-theme="dark"] .card.border-0.shadow-sm[b-rkr0edoe1s] {
    background: #1a2236 !important;
    border-color: rgba(255,255,255,0.08) !important;
    box-shadow: 0 4px 16px rgba(0,0,0,0.45), 0 12px 40px rgba(0,0,0,0.35), 0 0 0 1px rgba(255,255,255,0.05) !important;
}

    :root[data-bs-theme="dark"] .card.border-0.shadow-sm .card-body[b-rkr0edoe1s],
    [data-theme="dark"] .card.border-0.shadow-sm .card-body[b-rkr0edoe1s] {
        background: #1a2236 !important;
    }

.card-title[b-rkr0edoe1s] {
    font-size: 0.77rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.09em;
    color: var(--section-label-text);
    margin: 0;
}


/* ─────────────────────────────────────────────
   6. SECTION INSET SLAB
   ───────────────────────────────────────────── */
.section-slab[b-rkr0edoe1s] {
    background: var(--panel-bg-alt);
    border: 1px solid var(--panel-border);
    border-radius: 10px;
    padding: 1.25rem 1.25rem 0.75rem;
}

:root[data-bs-theme="dark"] .section-slab[b-rkr0edoe1s],
[data-theme="dark"] .section-slab[b-rkr0edoe1s] {
    background: #1d2438;
}


/* ─────────────────────────────────────────────
   7. SLAB CARD — quote-lines container
   ───────────────────────────────────────────── */
.slab-card[b-rkr0edoe1s] {
    border: 1px solid var(--panel-border-strong);
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 2px 10px rgba(0,40,85,0.07);
}

.slab-card__head[b-rkr0edoe1s] {
    background: var(--header-bg);
    border-bottom: 1px solid var(--header-border);
    padding: 12px 18px;
    position: relative;
}

    .slab-card__head[b-rkr0edoe1s]::before {
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        width: 3px;
        background: var(--iac-gold);
        border-radius: 0 2px 2px 0;
    }

.slab-card__title[b-rkr0edoe1s] {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--text-primary);
    margin: 0;
}

.slab-card__body[b-rkr0edoe1s] {
    padding: 18px;
    background: var(--panel-bg);
}

:root[data-bs-theme="dark"] .slab-card[b-rkr0edoe1s],
[data-theme="dark"] .slab-card[b-rkr0edoe1s] {
    background: #1d2438;
    border-color: rgba(255,255,255,0.08);
}

:root[data-bs-theme="dark"] .slab-card__head[b-rkr0edoe1s],
[data-theme="dark"] .slab-card__head[b-rkr0edoe1s] {
    background: #0e1520 !important;
    border-bottom-color: rgba(241,184,40,0.28) !important;
}

:root[data-bs-theme="dark"] .slab-card__body[b-rkr0edoe1s],
[data-theme="dark"] .slab-card__body[b-rkr0edoe1s] {
    background: #1d2438;
}

.slab-card__body .text-muted[b-rkr0edoe1s] {
    color: var(--text-muted) !important;
    font-size: 13px;
    font-style: italic;
}


/* ─────────────────────────────────────────────
   8. FORM LABELS
   ───────────────────────────────────────────── */
.form-label[b-rkr0edoe1s] {
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: 0.09em !important;
    text-transform: uppercase !important;
    color: var(--text-primary) !important;
    margin-bottom: 4px !important;
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    padding: 3px 8px 3px 7px !important;
    border-left: 3px solid var(--iac-gold) !important;
    border-radius: 4px 4px 0 0 !important;
    background: var(--section-label-bg) !important;
    width: 100% !important;
    line-height: 1.4 !important;
}

:root[data-bs-theme="dark"] .form-label[b-rkr0edoe1s],
[data-theme="dark"] .form-label[b-rkr0edoe1s] {
    color: rgba(255,255,255,0.90) !important;
    background: rgba(241,184,40,0.10) !important;
}

.form-label .text-danger[b-rkr0edoe1s] {
    color: #ef4444 !important;
    font-size: 12px !important;
    line-height: 1 !important;
}

.form-text.text-warning[b-rkr0edoe1s] {
    font-size: 0.72rem;
    color: var(--warn-accent) !important;
    margin-top: 4px;
}


/* ─────────────────────────────────────────────
   9. FORM CONTROLS & SELECTS
   ───────────────────────────────────────────── */
.form-control[b-rkr0edoe1s],
.form-select[b-rkr0edoe1s] {
    background: var(--input-bg) !important;
    border: 1px solid var(--input-border) !important;
    border-radius: 0 0 8px 8px !important;
    color: var(--input-text) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    padding: 9px 12px !important;
    transition: border-color 0.18s, box-shadow 0.18s, background 0.18s !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}

    .form-control[b-rkr0edoe1s]::placeholder {
        color: var(--input-placeholder) !important;
    }

    .form-control:focus[b-rkr0edoe1s],
    .form-select:focus[b-rkr0edoe1s] {
        border-color: var(--input-border-focus) !important;
        box-shadow: 0 0 0 3px var(--input-focus-shadow) !important;
        background: var(--input-bg-hover) !important;
        outline: none !important;
    }

    .form-control:disabled[b-rkr0edoe1s],
    .form-select:disabled[b-rkr0edoe1s] {
        background: var(--input-disabled-bg) !important;
        color: var(--text-muted) !important;
        cursor: not-allowed;
        opacity: 1 !important;
    }

/* Select chevron — light */
.form-select[b-rkr0edoe1s] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%230d1f3c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.55'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
    background-size: 12px 12px !important;
    padding-right: 36px !important;
}

/* Select chevron — dark */
:root[data-bs-theme="dark"] .form-select[b-rkr0edoe1s],
[data-theme="dark"] .form-select[b-rkr0edoe1s] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.55'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") !important;
    background-color: var(--input-bg) !important;
}

/* Plaintext read-only */
.form-control-plaintext[b-rkr0edoe1s] {
    color: var(--text-primary) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    padding: 9px 12px !important;
    background: var(--input-disabled-bg) !important;
    border-radius: 0 0 8px 8px !important;
    border: 1px dashed var(--input-border) !important;
    line-height: 1.5 !important;
}


/* ─────────────────────────────────────────────
   10. V-GROOVE WARNINGS
   ───────────────────────────────────────────── */
.vgroove-warning[b-rkr0edoe1s] {
    background: var(--warn-bg);
    border: 1px solid var(--warn-border);
    border-left: 4px solid var(--warn-accent);
    border-radius: 8px;
    padding: 0.65rem 1rem;
    font-size: 0.82rem;
    color: var(--warn-text);
    display: flex;
    align-items: flex-start;
    gap: 0.55rem;
    margin-top: 0.4rem;
}

    .vgroove-warning .vg-icon[b-rkr0edoe1s] {
        font-size: 1.05rem;
        line-height: 1.3;
        flex-shrink: 0;
    }

    .vgroove-warning strong[b-rkr0edoe1s] {
        display: block;
        font-size: 0.82rem;
        margin-bottom: 0.1rem;
        color: var(--warn-accent);
    }

.vgroove-prompt[b-rkr0edoe1s] {
    background: var(--info-bg);
    border: 1px solid var(--info-border);
    border-left: 4px solid var(--info-accent);
    border-radius: 8px;
    padding: 0.6rem 1rem;
    font-size: 0.82rem;
    color: var(--info-text);
    margin-top: 0.4rem;
}

    .vgroove-prompt .form-check-label[b-rkr0edoe1s] {
        font-weight: 700;
        color: var(--info-text);
    }


/* ─────────────────────────────────────────────
   11. COLOR PICKER
   ───────────────────────────────────────────── */
.color-option[b-rkr0edoe1s] {
    display: flex;
    flex-direction: column;
    align-items: center;
    cursor: pointer;
    border: 2px solid transparent;
    border-radius: 9px;
    padding: 6px 4px;
    background: var(--panel-bg);
    transition: border-color 0.14s, background 0.14s, box-shadow 0.14s;
    user-select: none;
}

    .color-option:hover[b-rkr0edoe1s] {
        background: var(--chip-hover-bg);
        border-color: var(--panel-border-strong);
    }

    .color-option.selected[b-rkr0edoe1s] {
        border-color: var(--iac-gold);
        background: var(--chip-sel-bg);
        box-shadow: 0 0 0 3px var(--chip-sel-ring);
    }

.color-chip[b-rkr0edoe1s] {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    border: var(--chip-border);
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.14), 0 1px 3px rgba(0,0,0,0.10);
    margin-bottom: 4px;
    flex-shrink: 0;
}

/* Container for the textured colors section */
.textured-color-section[b-rkr0edoe1s] {
    background: var(--textured-section-bg);
    border: 1px solid var(--textured-section-border);
    border-radius: 10px;
    padding: 12px 12px 8px;
}

.ral-color-section[b-rkr0edoe1s] {
    background: var(--textured-section-bg);
    border: 1px solid var(--textured-section-border);
    border-radius: 10px;
    padding: 12px 12px 8px;
}

.custom-chip[b-rkr0edoe1s] {
    background: conic-gradient(red, yellow, lime, cyan, blue, magenta, red);
}

.color-section-label[b-rkr0edoe1s] {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--section-label-text);
    margin-bottom: 8px;
    display: block;
}

.color-name[b-rkr0edoe1s] {
    font-size: 0.65rem;
    text-align: center;
    line-height: 1.2;
    color: var(--text-secondary);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    max-width: 62px;
}


/* ─────────────────────────────────────────────
   12. QUOTE LINES TABLE
   ───────────────────────────────────────────── */
.order-table-wrap[b-rkr0edoe1s] {
    overflow-x: auto;
    border-radius: 10px;
    border: 1px solid var(--panel-border);
    -webkit-overflow-scrolling: touch;
}

.order-table[b-rkr0edoe1s] {
    width: 100%;
    border-collapse: collapse;
    font-size: 12.5px;
    margin: 0 !important;
}

    .order-table thead th[b-rkr0edoe1s] {
        background: var(--table-head-bg) !important;
        color: var(--table-head-text) !important;
        border-bottom: 2px solid var(--iac-gold) !important;
        border-top: none !important;
        padding: 10px 12px !important;
        font-size: 10px !important;
        font-weight: 800 !important;
        letter-spacing: 0.10em !important;
        text-transform: uppercase !important;
        white-space: nowrap;
    }

    .order-table tbody tr:nth-child(odd) td[b-rkr0edoe1s] {
        background: var(--table-row-odd) !important;
    }

    .order-table tbody tr:nth-child(even) td[b-rkr0edoe1s] {
        background: var(--table-row-even) !important;
    }

    .order-table tbody tr[b-rkr0edoe1s] {
        border-bottom: 1px solid var(--table-border);
        transition: background 0.12s;
    }

        .order-table tbody tr:hover td[b-rkr0edoe1s] {
            background: var(--table-row-hover) !important;
        }

            .order-table tbody tr:hover td:first-child[b-rkr0edoe1s] {
                border-left: 3px solid var(--iac-navy);
                padding-left: 9px !important;
            }

:root[data-bs-theme="dark"] .order-table tbody tr:hover td:first-child[b-rkr0edoe1s],
[data-theme="dark"] .order-table tbody tr:hover td:first-child[b-rkr0edoe1s] {
    border-left-color: var(--iac-gold);
}

.order-table td[b-rkr0edoe1s] {
    padding: 9px 12px !important;
    vertical-align: middle !important;
    color: var(--text-primary) !important;
    border-bottom: 1px solid var(--table-border) !important;
}

.order-summary-row td[b-rkr0edoe1s] {
    background: var(--panel-bg-alt) !important;
    color: var(--text-primary) !important;
    border-top: 2px solid var(--panel-border-strong) !important;
}

/* Override Bootstrap's bg-light inside the summary row so it always respects the theme */
.order-summary-row .bg-light[b-rkr0edoe1s] {
    background: var(--panel-bg-alt) !important;
    color: var(--text-primary) !important;
}


/* ─────────────────────────────────────────────
   13. BADGES
   ───────────────────────────────────────────── */
.badge-no-price[b-rkr0edoe1s] {
    display: inline-block;
    background: var(--no-price-bg);
    color: var(--no-price-text);
    border: 1px solid var(--no-price-border);
    border-radius: 20px;
    font-size: 0.67rem;
    font-weight: 700;
    padding: 2px 8px;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}


/* ─────────────────────────────────────────────
   14. INFO BUTTON (per-row)
   ───────────────────────────────────────────── */
/* ══════════════════════════════════════════════
   BUTTONS & INFO-LINE — 2026 design system
   ══════════════════════════════════════════════ */

/* ── Base shared: stronger contrast + lift + font ── */
.btn[b-rkr0edoe1s] {
    font-family: 'din-2014', 'DIN 2014', 'DIN Pro', 'DM Sans', system-ui, sans-serif !important;
    font-weight: 800;
    letter-spacing: 0.03em;
    border-radius: 10px;
    position: relative;
    overflow: hidden;
    transition: background 0.16s ease, color 0.16s ease, box-shadow 0.16s ease, border-color 0.16s ease, transform 0.12s ease, filter 0.16s ease;
    text-shadow: none;
}

    .btn[b-rkr0edoe1s]::after {
        content: '';
        position: absolute;
        inset: 0;
        background: linear-gradient(105deg, transparent 22%, rgba(255,255,255,0.22) 50%, transparent 78%);
        transform: translateX(-130%);
        transition: transform 0.46s ease;
        pointer-events: none;
        border-radius: inherit;
    }

    .btn:hover:not(:disabled)[b-rkr0edoe1s]::after {
        transform: translateX(130%);
    }

    .btn:active:not(:disabled)[b-rkr0edoe1s] {
        transform: translateY(1px) scale(0.985);
    }

    .btn:focus-visible[b-rkr0edoe1s] {
        outline: none !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.42), 0 10px 24px rgba(0,40,85,0.18) !important;
    }

    .btn:disabled[b-rkr0edoe1s],
    .btn.disabled[b-rkr0edoe1s] {
        opacity: 0.72;
        cursor: not-allowed;
        transform: none !important;
        box-shadow: none !important;
        filter: grayscale(0.10) saturate(0.72);
    }

/* ── btn-primary / iac-btn (solid navy) ── */
.iac-btn[b-rkr0edoe1s],
.btn-primary[b-rkr0edoe1s] {
    background: linear-gradient(180deg, #0b4a96 0%, #003875 24%, #002855 62%, #001a39 100%) !important;
    border: 1px solid rgba(0,40,85,0.95) !important;
    color: #ffffff !important;
    box-shadow: 0 2px 6px rgba(0,40,85,0.28), 0 10px 22px rgba(0,40,85,0.18), inset 0 1px 0 rgba(255,255,255,0.22), inset 0 -1px 0 rgba(0,0,0,0.10);
}

    .iac-btn:hover:not(:disabled)[b-rkr0edoe1s],
    .btn-primary:hover:not(:disabled)[b-rkr0edoe1s] {
        background: linear-gradient(180deg, #1558ab 0%, #00448c 24%, #003164 62%, #001f44 100%) !important;
        border-color: rgba(241,184,40,0.78) !important;
        color: #ffffff !important;
        box-shadow: 0 3px 10px rgba(0,40,85,0.34), 0 14px 26px rgba(0,40,85,0.22), 0 0 0 1px rgba(241,184,40,0.18), inset 0 1px 0 rgba(255,255,255,0.24) !important;
        transform: translateY(-2px);
    }

:root[data-bs-theme="dark"] .iac-btn[b-rkr0edoe1s],
:root[data-bs-theme="dark"] .btn-primary[b-rkr0edoe1s],
[data-theme="dark"] .iac-btn[b-rkr0edoe1s],
[data-theme="dark"] .btn-primary[b-rkr0edoe1s] {
    background: linear-gradient(180deg, #234b8d 0%, #1a3b70 24%, #142d58 62%, #0c1a32 100%) !important;
    border-color: rgba(241,184,40,0.32) !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.46), 0 12px 26px rgba(0,0,0,0.34), 0 0 0 1px rgba(255,255,255,0.04), inset 0 1px 0 rgba(255,255,255,0.12);
}

    :root[data-bs-theme="dark"] .iac-btn:hover:not(:disabled)[b-rkr0edoe1s],
    :root[data-bs-theme="dark"] .btn-primary:hover:not(:disabled)[b-rkr0edoe1s],
    [data-theme="dark"] .iac-btn:hover:not(:disabled)[b-rkr0edoe1s],
    [data-theme="dark"] .btn-primary:hover:not(:disabled)[b-rkr0edoe1s] {
        background: linear-gradient(180deg, #2a579f 0%, #214888 24%, #17386d 62%, #10284d 100%) !important;
        border-color: rgba(241,184,40,0.54) !important;
        color: #ffffff !important;
        box-shadow: 0 3px 10px rgba(0,0,0,0.54), 0 16px 28px rgba(0,0,0,0.38), 0 0 0 1px rgba(241,184,40,0.22), inset 0 1px 0 rgba(255,255,255,0.16) !important;
        transform: translateY(-2px);
    }

/* ── btn-outline-secondary (edit/cancel ghost) ── */
.btn-outline-secondary[b-rkr0edoe1s] {
    background: linear-gradient(180deg, rgba(255,255,255,0.96) 0%, rgba(241,245,249,0.98) 100%) !important;
    border: 1.5px solid rgba(0,40,85,0.34) !important;
    color: #001f44 !important;
    border-radius: 8px;
    font-weight: 800;
    box-shadow: 0 2px 6px rgba(0,40,85,0.08), inset 0 1px 0 rgba(255,255,255,0.90);
}

    .btn-outline-secondary:hover:not(:disabled)[b-rkr0edoe1s] {
        background: linear-gradient(180deg, rgba(241,184,40,0.20) 0%, rgba(241,184,40,0.12) 100%) !important;
        border-color: rgba(0,40,85,0.52) !important;
        color: #001a39 !important;
        box-shadow: 0 4px 12px rgba(0,40,85,0.14), 0 0 0 1px rgba(241,184,40,0.12), inset 0 1px 0 rgba(255,255,255,0.78) !important;
        transform: translateY(-1px);
    }

:root[data-bs-theme="dark"] .btn-outline-secondary[b-rkr0edoe1s],
[data-theme="dark"] .btn-outline-secondary[b-rkr0edoe1s] {
    background: linear-gradient(180deg, rgba(255,255,255,0.10) 0%, rgba(255,255,255,0.06) 100%) !important;
    border-color: rgba(255,255,255,0.22) !important;
    color: rgba(255,255,255,0.92) !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.26), inset 0 1px 0 rgba(255,255,255,0.08);
}

    :root[data-bs-theme="dark"] .btn-outline-secondary:hover:not(:disabled)[b-rkr0edoe1s],
    [data-theme="dark"] .btn-outline-secondary:hover:not(:disabled)[b-rkr0edoe1s] {
        background: linear-gradient(180deg, rgba(241,184,40,0.20) 0%, rgba(241,184,40,0.12) 100%) !important;
        border-color: rgba(241,184,40,0.44) !important;
        color: #fff3cc !important;
        box-shadow: 0 4px 14px rgba(0,0,0,0.34), 0 0 0 1px rgba(241,184,40,0.16) !important;
        transform: translateY(-1px);
    }

/* ── btn-outline-danger (remove/delete) ── */
.btn-outline-danger[b-rkr0edoe1s] {
    background: linear-gradient(180deg, rgba(254,242,242,0.98) 0%, rgba(254,226,226,0.92) 100%) !important;
    border: 1.5px solid rgba(220,38,38,0.42) !important;
    color: #991b1b !important;
    border-radius: 8px;
    font-weight: 800;
    box-shadow: 0 2px 6px rgba(220,38,38,0.08), inset 0 1px 0 rgba(255,255,255,0.88);
}

    .btn-outline-danger:hover:not(:disabled)[b-rkr0edoe1s] {
        background: linear-gradient(180deg, rgba(254,226,226,1) 0%, rgba(252,165,165,0.34) 100%) !important;
        border-color: rgba(220,38,38,0.70) !important;
        color: #7f1d1d !important;
        box-shadow: 0 4px 12px rgba(220,38,38,0.16), 0 0 0 1px rgba(220,38,38,0.10), inset 0 1px 0 rgba(255,255,255,0.70) !important;
        transform: translateY(-1px);
    }

:root[data-bs-theme="dark"] .btn-outline-danger[b-rkr0edoe1s],
[data-theme="dark"] .btn-outline-danger[b-rkr0edoe1s] {
    background: linear-gradient(180deg, rgba(127,29,29,0.28) 0%, rgba(69,10,10,0.22) 100%) !important;
    border-color: rgba(248,113,113,0.46) !important;
    color: #fecaca !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.28), inset 0 1px 0 rgba(255,255,255,0.06);
}

    :root[data-bs-theme="dark"] .btn-outline-danger:hover:not(:disabled)[b-rkr0edoe1s],
    [data-theme="dark"] .btn-outline-danger:hover:not(:disabled)[b-rkr0edoe1s] {
        background: linear-gradient(180deg, rgba(239,68,68,0.24) 0%, rgba(127,29,29,0.28) 100%) !important;
        border-color: rgba(252,165,165,0.66) !important;
        color: #fee2e2 !important;
        box-shadow: 0 4px 14px rgba(239,68,68,0.18), 0 0 0 1px rgba(248,113,113,0.14) !important;
        transform: translateY(-1px);
    }

/* ── btn-info-line (info/detail icon button) ── */
.btn-info-line[b-rkr0edoe1s] {
    background: linear-gradient(180deg, rgba(255,255,255,0.96) 0%, rgba(232,240,252,1) 100%) !important;
    border: 1.5px solid rgba(0,40,85,0.24) !important;
    color: #002855 !important;
    border-radius: 8px;
    padding: 0.28rem 0.68rem;
    font-size: 0.82rem;
    line-height: 1.4;
    font-weight: 800;
    box-shadow: 0 2px 6px rgba(0,40,85,0.08), inset 0 1px 0 rgba(255,255,255,0.86);
}

    .btn-info-line:hover:not(:disabled)[b-rkr0edoe1s] {
        background: linear-gradient(180deg, rgba(241,184,40,0.28) 0%, rgba(255,249,219,1) 100%) !important;
        border-color: rgba(241,184,40,0.60) !important;
        color: #7a4f00 !important;
        box-shadow: 0 4px 12px rgba(241,184,40,0.16), 0 0 0 1px rgba(241,184,40,0.12) !important;
        transform: translateY(-1px);
    }

:root[data-bs-theme="dark"] .btn-info-line[b-rkr0edoe1s],
[data-theme="dark"] .btn-info-line[b-rkr0edoe1s] {
    background: linear-gradient(180deg, rgba(255,255,255,0.11) 0%, rgba(255,255,255,0.07) 100%) !important;
    border-color: rgba(255,255,255,0.16) !important;
    color: rgba(255,255,255,0.92) !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.28), inset 0 1px 0 rgba(255,255,255,0.08);
}

    :root[data-bs-theme="dark"] .btn-info-line:hover:not(:disabled)[b-rkr0edoe1s],
    [data-theme="dark"] .btn-info-line:hover:not(:disabled)[b-rkr0edoe1s] {
        background: linear-gradient(180deg, rgba(241,184,40,0.24) 0%, rgba(241,184,40,0.14) 100%) !important;
        border-color: rgba(241,184,40,0.48) !important;
        color: #ffe49a !important;
        box-shadow: 0 4px 12px rgba(241,184,40,0.16), 0 0 0 1px rgba(241,184,40,0.14) !important;
    }


/* ─────────────────────────────────────────────
   15b. btn-outline-primary  (was invisible in light mode)
   ───────────────────────────────────────────── */
.btn-outline-primary[b-rkr0edoe1s] {
    background: linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(233,242,255,1) 100%) !important;
    border: 1.5px solid rgba(0,40,85,0.46) !important;
    color: #002855 !important;
    border-radius: 8px;
    font-weight: 800;
    box-shadow: 0 2px 6px rgba(0,40,85,0.08), inset 0 1px 0 rgba(255,255,255,0.90);
}

    .btn-outline-primary:hover:not(:disabled)[b-rkr0edoe1s] {
        background: linear-gradient(180deg, rgba(241,184,40,0.18) 0%, rgba(226,239,255,1) 100%) !important;
        border-color: rgba(0,40,85,0.70) !important;
        color: #001e42 !important;
        box-shadow: 0 4px 12px rgba(0,40,85,0.14), 0 0 0 1px rgba(241,184,40,0.12), inset 0 1px 0 rgba(255,255,255,0.80) !important;
        transform: translateY(-1px);
    }

:root[data-bs-theme="dark"] .btn-outline-primary[b-rkr0edoe1s],
[data-theme="dark"] .btn-outline-primary[b-rkr0edoe1s] {
    background: linear-gradient(180deg, rgba(59,130,246,0.18) 0%, rgba(30,64,175,0.16) 100%) !important;
    border-color: rgba(147,197,253,0.52) !important;
    color: #dbeafe !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.30), inset 0 1px 0 rgba(255,255,255,0.08);
}

    :root[data-bs-theme="dark"] .btn-outline-primary:hover:not(:disabled)[b-rkr0edoe1s],
    [data-theme="dark"] .btn-outline-primary:hover:not(:disabled)[b-rkr0edoe1s] {
        background: linear-gradient(180deg, rgba(241,184,40,0.20) 0%, rgba(59,130,246,0.18) 100%) !important;
        border-color: rgba(241,184,40,0.48) !important;
        color: #ffffff !important;
        box-shadow: 0 4px 14px rgba(59,130,246,0.18), 0 0 0 1px rgba(241,184,40,0.14) !important;
        transform: translateY(-1px);
    }


/* ─────────────────────────────────────────────
   15c. btn-success  (save / confirm actions)
   ───────────────────────────────────────────── */
.btn-success[b-rkr0edoe1s] {
    background: linear-gradient(180deg, #24a35f 0%, #1e9058 22%, #1a7a4a 62%, #145e38 100%) !important;
    border: 1px solid rgba(26,122,74,0.88) !important;
    color: #ffffff !important;
    font-weight: 800;
    box-shadow: 0 2px 6px rgba(26,122,74,0.24), 0 10px 20px rgba(26,122,74,0.16), inset 0 1px 0 rgba(255,255,255,0.20);
}

    .btn-success:hover:not(:disabled)[b-rkr0edoe1s] {
        background: linear-gradient(180deg, #2bb66b 0%, #22a062 22%, #1d8f56 62%, #17703f 100%) !important;
        border-color: rgba(26,122,74,0.96) !important;
        color: #ffffff !important;
        box-shadow: 0 3px 10px rgba(26,122,74,0.28), 0 14px 24px rgba(26,122,74,0.18), 0 0 0 1px rgba(34,197,94,0.12), inset 0 1px 0 rgba(255,255,255,0.22) !important;
        transform: translateY(-2px);
    }

:root[data-bs-theme="dark"] .btn-success[b-rkr0edoe1s],
[data-theme="dark"] .btn-success[b-rkr0edoe1s] {
    background: linear-gradient(180deg, #1f7a43 0%, #1a6d3c 24%, #15803d 62%, #14532d 100%) !important;
    border-color: rgba(74,222,128,0.34) !important;
    color: #dcfce7 !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.42), 0 12px 22px rgba(0,0,0,0.30), inset 0 1px 0 rgba(255,255,255,0.10);
}

    :root[data-bs-theme="dark"] .btn-success:hover:not(:disabled)[b-rkr0edoe1s],
    [data-theme="dark"] .btn-success:hover:not(:disabled)[b-rkr0edoe1s] {
        background: linear-gradient(180deg, #239b53 0%, #1f8b4b 24%, #19954a 62%, #166534 100%) !important;
        border-color: rgba(74,222,128,0.56) !important;
        color: #f0fdf4 !important;
        box-shadow: 0 4px 14px rgba(34,197,94,0.18), 0 0 0 1px rgba(74,222,128,0.16) !important;
        transform: translateY(-2px);
    }


/* ─────────────────────────────────────────────
   15d. btn-outline-success  (linked / confirmed ghost)
   ───────────────────────────────────────────── */
.btn-outline-success[b-rkr0edoe1s] {
    background: linear-gradient(180deg, rgba(240,253,244,1) 0%, rgba(220,252,231,0.92) 100%) !important;
    border: 1.5px solid rgba(26,122,74,0.42) !important;
    color: #166534 !important;
    border-radius: 8px;
    font-weight: 800;
    box-shadow: 0 2px 6px rgba(26,122,74,0.08), inset 0 1px 0 rgba(255,255,255,0.88);
}

    .btn-outline-success:hover:not(:disabled)[b-rkr0edoe1s] {
        background: linear-gradient(180deg, rgba(187,247,208,0.96) 0%, rgba(220,252,231,1) 100%) !important;
        border-color: rgba(26,122,74,0.66) !important;
        color: #14532d !important;
        box-shadow: 0 4px 12px rgba(26,122,74,0.14), 0 0 0 1px rgba(34,197,94,0.10) !important;
        transform: translateY(-1px);
    }

:root[data-bs-theme="dark"] .btn-outline-success[b-rkr0edoe1s],
[data-theme="dark"] .btn-outline-success[b-rkr0edoe1s] {
    background: linear-gradient(180deg, rgba(20,83,45,0.28) 0%, rgba(22,101,52,0.22) 100%) !important;
    border-color: rgba(74,222,128,0.42) !important;
    color: #bbf7d0 !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.28), inset 0 1px 0 rgba(255,255,255,0.06);
}

    :root[data-bs-theme="dark"] .btn-outline-success:hover:not(:disabled)[b-rkr0edoe1s],
    [data-theme="dark"] .btn-outline-success:hover:not(:disabled)[b-rkr0edoe1s] {
        background: linear-gradient(180deg, rgba(34,197,94,0.22) 0%, rgba(22,101,52,0.26) 100%) !important;
        border-color: rgba(74,222,128,0.62) !important;
        color: #dcfce7 !important;
        box-shadow: 0 4px 14px rgba(34,197,94,0.14), 0 0 0 1px rgba(74,222,128,0.14) !important;
        transform: translateY(-1px);
    }


/* ─────────────────────────────────────────────
   15e. Mounting family selector styling
   ───────────────────────────────────────────── */
/* Mount-family dropdown gets a subtle teal left-accent when a family is chosen */
.mount-family-selected .form-select[b-rkr0edoe1s] {
    border-left: 3px solid var(--iac-green) !important;
}

/* Hardware-required badge inside form-text */
.form-text .badge[b-rkr0edoe1s] {
    font-size: 0.62rem;
    padding: 2px 6px;
    vertical-align: middle;
}

/* Minimum-dimension invalid feedback override  */
.form-control.is-invalid[b-rkr0edoe1s],
.form-select.is-invalid[b-rkr0edoe1s] {
    border-color: rgba(220,38,38,0.58) !important;
    box-shadow: 0 0 0 2px rgba(220,38,38,0.14) !important;
}

.invalid-feedback.d-block[b-rkr0edoe1s] {
    font-size: 0.72rem;
    font-weight: 600;
    color: #b91c1c;
    margin-top: 3px;
}

:root[data-bs-theme="dark"] .invalid-feedback.d-block[b-rkr0edoe1s],
[data-theme="dark"] .invalid-feedback.d-block[b-rkr0edoe1s] {
    color: #f87171;
}


/* ─────────────────────────────────────────────
   16. LINE DETAIL MODAL  (Bootstrap + IAC styled)
   ───────────────────────────────────────────── */
.iac-modal-content[b-rkr0edoe1s] {
    background: var(--modal-bg) !important;
    border: 1px solid var(--panel-border-strong);
    border-radius: 16px;
    box-shadow: var(--modal-shadow);
    overflow: hidden;
    color: var(--text-primary);
}

/* ── MODAL SOLID BACKGROUND — override Bootstrap transparent default ── */
/* ── MODAL OPAQUE BACKGROUND — defeats Bootstrap transparent default at all specificity levels ── */
/* Light mode: every element inside the modal shell gets a hard #ffffff */
.ap-modal-solid[b-rkr0edoe1s] {
    background-color: #ffffff !important;
}

    .ap-modal-solid .modal-body[b-rkr0edoe1s],
    .ap-modal-solid .detail-grid[b-rkr0edoe1s],
    .ap-modal-solid .detail-col[b-rkr0edoe1s],
    .ap-modal-solid .detail-desc-bar[b-rkr0edoe1s] {
        background-color: #ffffff !important;
        background-image: none !important;
    }

    .ap-modal-solid .modal-footer[b-rkr0edoe1s] {
        background-color: #f6f8fb !important;
    }

/* Descendant fallback for any wrapper that gets the shell class */
.ap-detail-modal-shell .modal-content[b-rkr0edoe1s] {
    background-color: #ffffff !important;
}

.ap-detail-modal-shell .modal-body[b-rkr0edoe1s],
.ap-detail-modal-shell .detail-grid[b-rkr0edoe1s],
.ap-detail-modal-shell .detail-col[b-rkr0edoe1s],
.ap-detail-modal-shell .detail-desc-bar[b-rkr0edoe1s] {
    background-color: #ffffff !important;
    background-image: none !important;
}

.ap-detail-modal-shell .modal-footer[b-rkr0edoe1s] {
    background-color: #f6f8fb !important;
}

/* Dark mode overrides — both attribute patterns */
:root[data-bs-theme="dark"] .ap-modal-solid[b-rkr0edoe1s],
[data-theme="dark"] .ap-modal-solid[b-rkr0edoe1s] {
    background-color: #131b2a !important;
}

    :root[data-bs-theme="dark"] .ap-modal-solid .modal-body[b-rkr0edoe1s],
    :root[data-bs-theme="dark"] .ap-modal-solid .detail-grid[b-rkr0edoe1s],
    :root[data-bs-theme="dark"] .ap-modal-solid .detail-col[b-rkr0edoe1s],
    :root[data-bs-theme="dark"] .ap-modal-solid .detail-desc-bar[b-rkr0edoe1s],
    [data-theme="dark"] .ap-modal-solid .modal-body[b-rkr0edoe1s],
    [data-theme="dark"] .ap-modal-solid .detail-grid[b-rkr0edoe1s],
    [data-theme="dark"] .ap-modal-solid .detail-col[b-rkr0edoe1s],
    [data-theme="dark"] .ap-modal-solid .detail-desc-bar[b-rkr0edoe1s] {
        background-color: #131b2a !important;
        background-image: none !important;
    }

    :root[data-bs-theme="dark"] .ap-modal-solid .modal-footer[b-rkr0edoe1s],
    [data-theme="dark"] .ap-modal-solid .modal-footer[b-rkr0edoe1s] {
        background-color: #0f1622 !important;
    }

:root[data-bs-theme="dark"] .ap-detail-modal-shell .modal-content[b-rkr0edoe1s],
[data-theme="dark"] .ap-detail-modal-shell .modal-content[b-rkr0edoe1s] {
    background-color: #131b2a !important;
}

:root[data-bs-theme="dark"] .ap-detail-modal-shell .modal-body[b-rkr0edoe1s],
:root[data-bs-theme="dark"] .ap-detail-modal-shell .detail-grid[b-rkr0edoe1s],
:root[data-bs-theme="dark"] .ap-detail-modal-shell .detail-col[b-rkr0edoe1s],
:root[data-bs-theme="dark"] .ap-detail-modal-shell .detail-desc-bar[b-rkr0edoe1s],
[data-theme="dark"] .ap-detail-modal-shell .modal-body[b-rkr0edoe1s],
[data-theme="dark"] .ap-detail-modal-shell .detail-grid[b-rkr0edoe1s],
[data-theme="dark"] .ap-detail-modal-shell .detail-col[b-rkr0edoe1s],
[data-theme="dark"] .ap-detail-modal-shell .detail-desc-bar[b-rkr0edoe1s] {
    background-color: #131b2a !important;
    background-image: none !important;
}

:root[data-bs-theme="dark"] .ap-detail-modal-shell .modal-footer[b-rkr0edoe1s],
[data-theme="dark"] .ap-detail-modal-shell .modal-footer[b-rkr0edoe1s] {
    background-color: #0f1622 !important;
}

.iac-modal-header[b-rkr0edoe1s] {
    background: var(--modal-header-bg);
    color: var(--modal-header-text);
    padding: 0.9rem 1.25rem;
    border-bottom: none;
}

    .iac-modal-header .modal-title[b-rkr0edoe1s] {
        font-weight: 700;
        font-size: 0.98rem;
        letter-spacing: 0.025em;
        color: var(--modal-header-text);
    }

.iac-btn-close[b-rkr0edoe1s] {
    filter: invert(1) brightness(1.5);
    opacity: 0.72;
    transition: opacity 0.14s;
}

    .iac-btn-close:hover[b-rkr0edoe1s] {
        opacity: 1;
    }

/* Two-column grid inside modal body */
.detail-grid[b-rkr0edoe1s] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    border-bottom: 1px solid var(--divider);
}

.detail-col[b-rkr0edoe1s] {
    padding: 1.1rem 1.3rem;
    border-right: 1px solid var(--divider);
}

    .detail-col:last-child[b-rkr0edoe1s] {
        border-right: none;
    }

.detail-section-head[b-rkr0edoe1s] {
    display: inline-block;
    font-size: 0.68rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.11em;
    background: var(--section-label-bg);
    color: var(--section-label-text);
    border-radius: 5px;
    padding: 0.18rem 0.55rem;
    margin-bottom: 0.55rem;
}

.detail-dl[b-rkr0edoe1s] {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 0.12rem 0.7rem;
    font-size: 0.84rem;
    margin: 0;
}

    .detail-dl dt[b-rkr0edoe1s] {
        font-weight: 600;
        color: var(--dl-dt);
        white-space: nowrap;
        padding: 0.1rem 0;
    }

    .detail-dl dd[b-rkr0edoe1s] {
        color: var(--dl-dd);
        margin: 0;
        padding: 0.1rem 0;
        font-weight: 500;
    }

.detail-color-chip[b-rkr0edoe1s] {
    display: inline-block;
    width: 13px;
    height: 13px;
    border-radius: 50%;
    border: 1px solid var(--chip-ring);
    vertical-align: middle;
    margin-right: 4px;
}

.detail-desc-bar[b-rkr0edoe1s] {
    padding: 0.7rem 1.3rem;
    background: var(--panel-bg-alt);
    border-top: 1px solid var(--divider);
    display: flex;
    flex-direction: column;
    gap: 0.18rem;
}

.detail-desc-label[b-rkr0edoe1s] {
    font-size: 0.66rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.11em;
    color: var(--text-muted);
}

.detail-desc-text[b-rkr0edoe1s] {
    font-size: 0.84rem;
    color: var(--text-primary);
    font-weight: 500;
}

.iac-modal-footer[b-rkr0edoe1s] {
    background: var(--modal-footer-bg);
    border-top: 1px solid var(--divider);
    padding: 0.7rem 1.2rem;
    gap: 0.5rem;
    display: flex;
    justify-content: flex-end;
}


/* ─────────────────────────────────────────────
   17. NQ MODAL  (matches ShipLoose.razor pattern exactly)
   ───────────────────────────────────────────── */
.nq-overlay[b-rkr0edoe1s] {
    position: fixed;
    inset: 0;
    z-index: 10200;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    background: var(--nq-overlay-bg);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.nq-card[b-rkr0edoe1s] {
    width: 100%;
    max-width: 480px;
    overflow: hidden;
    background: var(--nq-card-bg);
    border: 1px solid var(--nq-card-border);
    border-radius: 18px;
    box-shadow: 0 16px 44px rgba(0,12,42,.22);
    animation: nqIn-b-rkr0edoe1s .2s cubic-bezier(.34,1.28,.64,1) both;
    font-family: 'din-2014','DIN Pro','DIN Alternate',sans-serif;
}

@keyframes nqIn-b-rkr0edoe1s {
    from {
        opacity: 0;
        transform: translateY(16px) scale(.96);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.nq-card__header[b-rkr0edoe1s] {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 20px 24px 16px;
    border-bottom: 1px solid var(--nq-header-border);
    background: var(--nq-header-bg);
}

.nq-card__icon[b-rkr0edoe1s] {
    width: 42px;
    height: 42px;
    flex-shrink: 0;
    border-radius: 10px;
    background: var(--nq-icon-bg);
    border: 1px solid var(--nq-icon-border);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    color: var(--nq-icon-color);
}

.nq-card__title[b-rkr0edoe1s] {
    margin: 0;
    font-family: 'din-2014','DIN Pro','DIN Alternate',sans-serif;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--nq-title-color);
}

.nq-card__subtitle[b-rkr0edoe1s] {
    margin-top: 3px;
    font-size: 12px;
    font-weight: 600;
    color: var(--nq-subtitle-color);
}

.nq-card__body[b-rkr0edoe1s] {
    padding: 20px 24px;
    font-size: 14px;
    line-height: 1.65;
    color: var(--nq-body-color);
}

.nq-card__footer[b-rkr0edoe1s] {
    padding: 14px 24px 18px;
    border-top: 1px solid var(--nq-footer-border);
    background: var(--nq-footer-bg);
    display: flex;
    justify-content: flex-end;
    gap: 10px;
}

.nq-btn[b-rkr0edoe1s] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 40px;
    padding: 9px 20px;
    border-radius: 12px;
    font-family: 'din-2014','DIN Pro','DIN Alternate',sans-serif;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
    border: 1px solid transparent;
    cursor: pointer;
    outline: none;
    transition: background .12s ease, box-shadow .12s ease, color .12s ease;
}

.nq-btn--ok[b-rkr0edoe1s] {
    background: var(--nq-btn-ok-bg);
    border-color: var(--nq-btn-ok-border);
    color: var(--nq-btn-ok-color);
    box-shadow: 0 2px 8px rgba(0,20,60,.18);
}

    .nq-btn--ok:hover[b-rkr0edoe1s] {
        background: var(--nq-btn-ok-hover-bg);
        box-shadow: 0 6px 20px rgba(0,16,52,.28);
    }


/* ─────────────────────────────────────────────
   18. PROJECT DETAILS OFFCANVAS
   ───────────────────────────────────────────── */
.iac-offcanvas[b-rkr0edoe1s] {
    font-family: 'din-2014', 'DIN Pro', 'DM Sans', sans-serif !important;
    width: 420px !important;
    background: #ffffff !important;
    --bs-offcanvas-bg: #ffffff !important;
    border-left: 1px solid var(--panel-border) !important;
    box-shadow: 0 20px 60px rgba(0,40,85,0.16), 0 0 0 1px rgba(0,40,85,0.06) !important;
    top: 0 !important;
    bottom: 20px !important;
    height: auto !important;
    display: flex !important;
    flex-direction: column !important;
    transition: background 0.3s, border-color 0.3s !important;
}

:root[data-bs-theme="dark"] .iac-offcanvas[b-rkr0edoe1s],
[data-theme="dark"] .iac-offcanvas[b-rkr0edoe1s] {
    background: #1a2236 !important;
    --bs-offcanvas-bg: #1a2236 !important;
    border-left-color: rgba(255,255,255,0.10) !important;
}

.iac-offcanvas__header[b-rkr0edoe1s],
.iac-offcanvas .offcanvas-header[b-rkr0edoe1s] {
    background-color: #ffffff !important;
    padding: 20px 22px 16px !important;
    border-bottom: 1px solid var(--panel-border) !important;
}

:root[data-bs-theme="dark"] .iac-offcanvas__header[b-rkr0edoe1s],
:root[data-bs-theme="dark"] .iac-offcanvas .offcanvas-header[b-rkr0edoe1s],
[data-theme="dark"] .iac-offcanvas__header[b-rkr0edoe1s],
[data-theme="dark"] .iac-offcanvas .offcanvas-header[b-rkr0edoe1s] {
    background-color: #0e1520 !important;
    border-bottom-color: rgba(255,255,255,0.10) !important;
}

.iac-offcanvas .offcanvas-title[b-rkr0edoe1s] {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: var(--text-primary) !important;
    letter-spacing: 0.02em;
}

:root[data-bs-theme="dark"] .iac-offcanvas .offcanvas-title[b-rkr0edoe1s],
[data-theme="dark"] .iac-offcanvas .offcanvas-title[b-rkr0edoe1s] {
    color: rgba(255,255,255,0.92) !important;
}

.iac-offcanvas .offcanvas-body[b-rkr0edoe1s],
.iac-offcanvas__body[b-rkr0edoe1s] {
    background-color: #ffffff !important;
    padding: 20px 22px !important;
    overflow-y: auto;
    flex: 1 1 auto;
}

:root[data-bs-theme="dark"] .iac-offcanvas .offcanvas-body[b-rkr0edoe1s],
:root[data-bs-theme="dark"] .iac-offcanvas__body[b-rkr0edoe1s],
[data-theme="dark"] .iac-offcanvas .offcanvas-body[b-rkr0edoe1s],
[data-theme="dark"] .iac-offcanvas__body[b-rkr0edoe1s] {
    background-color: #1a2236 !important;
    color: rgba(255,255,255,0.90);
}

/* btn-close inside offcanvas */
.iac-offcanvas .btn-close[b-rkr0edoe1s] {
    background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23002855'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat !important;
    opacity: 0.7;
    transition: all 0.15s;
}

    .iac-offcanvas .btn-close:hover[b-rkr0edoe1s] {
        opacity: 1;
        background-color: rgba(0,40,85,0.06) !important;
        border-radius: 8px;
    }

:root[data-bs-theme="dark"] .iac-offcanvas .btn-close[b-rkr0edoe1s],
[data-theme="dark"] .iac-offcanvas .btn-close[b-rkr0edoe1s] {
    background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat !important;
    filter: none !important;
}


/* ─────────────────────────────────────────────
   19. ALERTS
   ───────────────────────────────────────────── */
.alert[b-rkr0edoe1s] {
    border-radius: 9px !important;
    font-size: 12px !important;
    padding: 10px 14px !important;
    border: 1px solid transparent !important;
}

.alert-warning[b-rkr0edoe1s] {
    background: var(--warn-bg) !important;
    border-color: var(--warn-border) !important;
    color: var(--warn-text) !important;
}

.alert-success[b-rkr0edoe1s] {
    background: var(--success-bg) !important;
    border-color: var(--success-border) !important;
    color: var(--success-text) !important;
}

:root[data-bs-theme="dark"] .alert-warning[b-rkr0edoe1s],
[data-theme="dark"] .alert-warning[b-rkr0edoe1s] {
    background: rgba(241,184,40,0.10) !important;
    border-color: rgba(241,184,40,0.22) !important;
    color: rgba(255,255,255,0.85) !important;
}

:root[data-bs-theme="dark"] .alert-success[b-rkr0edoe1s],
[data-theme="dark"] .alert-success[b-rkr0edoe1s] {
    background: rgba(26,122,74,0.14) !important;
    border-color: rgba(26,122,74,0.28) !important;
    color: rgba(255,255,255,0.85) !important;
}


/* ─────────────────────────────────────────────
   20. RESPONSIVE
   ───────────────────────────────────────────── */
@media (max-width: 768px) {
    .detail-grid[b-rkr0edoe1s] {
        grid-template-columns: 1fr;
    }

    .detail-col[b-rkr0edoe1s] {
        border-right: none;
        border-bottom: 1px solid var(--divider);
    }

        .detail-col:last-child[b-rkr0edoe1s] {
            border-bottom: none;
        }

    .color-chip[b-rkr0edoe1s] {
        width: 26px;
        height: 26px;
    }

    .color-name[b-rkr0edoe1s] {
        font-size: 0.58rem;
        max-width: 44px;
    }

    .iac-offcanvas[b-rkr0edoe1s] {
        width: 100vw !important;
    }

    .order-table[b-rkr0edoe1s],
    .order-table thead[b-rkr0edoe1s],
    .order-table tbody[b-rkr0edoe1s],
    .order-table th[b-rkr0edoe1s],
    .order-table td[b-rkr0edoe1s],
    .order-table tr[b-rkr0edoe1s] {
        display: block;
        white-space: normal;
    }

        .order-table thead[b-rkr0edoe1s] {
            display: none;
        }

        .order-table tbody tr[b-rkr0edoe1s] {
            background: var(--panel-bg);
            border: 1px solid var(--panel-border-strong);
            border-radius: 12px;
            margin-bottom: 12px;
            padding: 12px 12px 8px;
            overflow: hidden;
            box-shadow: 0 2px 6px rgba(0,0,0,0.04);
        }

        .order-table tbody td[b-rkr0edoe1s] {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 6px 0 !important;
            border: none !important;
            border-bottom: 1px solid var(--divider) !important;
            font-size: 12px;
            gap: 12px;
            background: transparent !important;
        }

            .order-table tbody td:last-child[b-rkr0edoe1s] {
                border-bottom: none !important;
                padding-top: 10px !important;
                justify-content: flex-start;
                gap: 8px;
                flex-wrap: wrap;
            }

            .order-table tbody td[b-rkr0edoe1s]::before {
                content: attr(data-label);
                font-size: 10px;
                font-weight: 700;
                letter-spacing: 0.06em;
                text-transform: uppercase;
                color: var(--text-muted);
                flex-shrink: 0;
                min-width: 80px;
            }
}

/* ─────────────────────────────────────────────
   21. PAGE HEADER / LINK PREVIEW / ACTION BAR
   ───────────────────────────────────────────── */
.ap-page-header[b-rkr0edoe1s] {
    background: #002855;
    border-bottom: 3px solid var(--iac-gold);
    border-radius: 10px;
    margin: 0 0 12px;
    padding: 14px 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
    box-shadow: 0 8px 24px rgba(0,40,85,0.14);
}

:root[data-bs-theme="dark"] .ap-page-header[b-rkr0edoe1s],
[data-theme="dark"] .ap-page-header[b-rkr0edoe1s] {
    background: #090c14;
    border-bottom-color: var(--iac-gold);
    box-shadow: 0 12px 32px rgba(0,0,0,0.32);
}

.ap-page-header__title-row[b-rkr0edoe1s] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

    .ap-page-header__title-row h1[b-rkr0edoe1s] {
        color: #ffffff;
        margin: 0;
    }

.ap-page-header__subtitle[b-rkr0edoe1s] {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.74);
}

.ap-page-header__actions[b-rkr0edoe1s] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.ap-header-btn[b-rkr0edoe1s],
.ap-header-btn.btn[b-rkr0edoe1s],
.ap-page-header .btn[b-rkr0edoe1s] {
    background: linear-gradient(180deg, rgba(255,255,255,0.18) 0%, rgba(255,255,255,0.10) 100%) !important;
    border: 1.5px solid rgba(255,255,255,0.40) !important;
    color: #ffffff !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: 0.05em !important;
    padding: 7px 16px !important;
    min-height: 34px;
    border-radius: 8px !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.20), 0 4px 12px rgba(0,0,0,0.24) !important;
    transition: background 0.15s, border-color 0.15s, color 0.15s, transform 0.14s, box-shadow 0.14s !important;
    position: relative;
    overflow: hidden;
    text-shadow: 0 1px 1px rgba(0,0,0,0.20);
}

    .ap-header-btn[b-rkr0edoe1s]::after,
    .ap-page-header .btn[b-rkr0edoe1s]::after {
        content: '';
        position: absolute;
        inset: 0;
        background: linear-gradient(105deg, transparent 25%, rgba(255,255,255,0.18) 50%, transparent 75%);
        transform: translateX(-120%);
        transition: transform 0.42s ease;
        pointer-events: none;
    }

    .ap-header-btn:hover[b-rkr0edoe1s]::after,
    .ap-page-header .btn:hover[b-rkr0edoe1s]::after {
        transform: translateX(120%);
    }

    .ap-header-btn:hover:not(:disabled)[b-rkr0edoe1s],
    .ap-page-header .btn:hover:not(:disabled)[b-rkr0edoe1s] {
        background: linear-gradient(180deg, rgba(241,184,40,0.26) 0%, rgba(241,184,40,0.14) 100%) !important;
        border-color: rgba(241,184,40,0.78) !important;
        color: #fff3cc !important;
        box-shadow: 0 4px 14px rgba(241,184,40,0.22), inset 0 1px 0 rgba(255,255,255,0.14) !important;
        transform: translateY(-2px);
    }

.product-link-preview[b-rkr0edoe1s] {
    border: 1px solid var(--panel-border-strong);
    border-radius: 12px;
    overflow: hidden;
    background: var(--panel-bg-alt);
    box-shadow: 0 6px 18px rgba(0,40,85,0.08);
}

:root[data-bs-theme="dark"] .product-link-preview[b-rkr0edoe1s],
[data-theme="dark"] .product-link-preview[b-rkr0edoe1s] {
    background: #182033;
    border-color: rgba(255,255,255,0.10);
    box-shadow: 0 10px 28px rgba(0,0,0,0.25);
}

.product-link-preview__head[b-rkr0edoe1s] {
    background: var(--header-bg);
    border-bottom: 1px solid var(--header-border);
    padding: 12px 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    flex-wrap: wrap;
    position: relative;
}

    .product-link-preview__head[b-rkr0edoe1s]::before {
        content: '';
        position: absolute;
        inset: 0 auto 0 0;
        width: 3px;
        background: var(--iac-gold);
    }

:root[data-bs-theme="dark"] .product-link-preview__head[b-rkr0edoe1s],
[data-theme="dark"] .product-link-preview__head[b-rkr0edoe1s] {
    background: #0e1520;
    border-bottom-color: rgba(241,184,40,0.24);
}

.product-link-preview__title[b-rkr0edoe1s] {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    color: var(--text-primary);
}

.product-link-preview__sub[b-rkr0edoe1s] {
    font-size: 12px;
    color: var(--text-muted);
    margin-top: 2px;
}

.product-link-preview__grid[b-rkr0edoe1s] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    padding: 14px 16px 16px;
}

.product-link-preview__item[b-rkr0edoe1s] {
    border: 1px solid var(--panel-border);
    border-radius: 10px;
    background: var(--panel-bg);
    padding: 11px 12px;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 5px;
}

:root[data-bs-theme="dark"] .product-link-preview__item[b-rkr0edoe1s],
[data-theme="dark"] .product-link-preview__item[b-rkr0edoe1s] {
    background: #1a2236;
    border-color: rgba(255,255,255,0.08);
}

.product-link-preview__item span[b-rkr0edoe1s] {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.product-link-preview__item strong[b-rkr0edoe1s] {
    font-size: 13px;
    font-weight: 700;
    color: var(--text-primary);
    line-height: 1.4;
}

.product-link-preview__empty[b-rkr0edoe1s] {
    padding: 15px 16px 16px;
    color: var(--text-secondary);
    font-size: 13px;
    line-height: 1.6;
}

.ap-action-row[b-rkr0edoe1s] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
    padding-top: 4px;
}

    /* Action-row buttons must be clearly visible on the page background,
       NOT inheriting the header's white ghost style. Override explicitly. */
    .ap-action-row .iac-btn[b-rkr0edoe1s],
    .ap-action-row .btn-primary[b-rkr0edoe1s] {
        min-width: 154px;
        background: linear-gradient(160deg, #003875 0%, #002855 55%, #001e42 100%) !important;
        border: 1px solid rgba(0,40,85,0.80) !important;
        color: #ffffff !important;
        box-shadow: 0 1px 3px rgba(0,40,85,0.30), 0 4px 12px rgba(0,40,85,0.20), inset 0 1px 0 rgba(255,255,255,0.14) !important;
    }

        .ap-action-row .iac-btn:hover:not(:disabled)[b-rkr0edoe1s],
        .ap-action-row .btn-primary:hover:not(:disabled)[b-rkr0edoe1s] {
            background: linear-gradient(160deg, #004080 0%, #002e60 55%, #001e45 100%) !important;
            color: #ffffff !important;
            box-shadow: 0 2px 8px rgba(0,40,85,0.35), 0 10px 24px rgba(0,40,85,0.25), inset 0 1px 0 rgba(255,255,255,0.18) !important;
            transform: translateY(-2px);
        }

:root[data-bs-theme="dark"] .ap-action-row .iac-btn[b-rkr0edoe1s],
:root[data-bs-theme="dark"] .ap-action-row .btn-primary[b-rkr0edoe1s],
[data-theme="dark"] .ap-action-row .iac-btn[b-rkr0edoe1s],
[data-theme="dark"] .ap-action-row .btn-primary[b-rkr0edoe1s] {
    background: linear-gradient(160deg, #1e3d72 0%, #142d58 55%, #0d1e3a 100%) !important;
    border-color: rgba(241,184,40,0.30) !important;
    color: #ffffff !important;
    box-shadow: 0 1px 4px rgba(0,0,0,0.45), 0 4px 16px rgba(0,0,0,0.30), inset 0 1px 0 rgba(255,255,255,0.10) !important;
}

    :root[data-bs-theme="dark"] .ap-action-row .iac-btn:hover:not(:disabled)[b-rkr0edoe1s],
    :root[data-bs-theme="dark"] .ap-action-row .btn-primary:hover:not(:disabled)[b-rkr0edoe1s],
    [data-theme="dark"] .ap-action-row .iac-btn:hover:not(:disabled)[b-rkr0edoe1s],
    [data-theme="dark"] .ap-action-row .btn-primary:hover:not(:disabled)[b-rkr0edoe1s] {
        background: linear-gradient(160deg, #234585 0%, #163366 55%, #0f2448 100%) !important;
        border-color: rgba(241,184,40,0.48) !important;
        box-shadow: 0 2px 10px rgba(0,0,0,0.50), 0 10px 28px rgba(0,0,0,0.38), 0 0 0 1px rgba(241,184,40,0.22), inset 0 1px 0 rgba(255,255,255,0.12) !important;
        transform: translateY(-2px);
    }

@media (max-width: 992px) {
    .product-link-preview__grid[b-rkr0edoe1s] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 768px) {
    .ap-page-header[b-rkr0edoe1s] {
        padding: 12px 14px;
        align-items: flex-start;
    }

    .ap-page-header__actions[b-rkr0edoe1s] {
        width: 100%;
    }

    .product-link-preview__grid[b-rkr0edoe1s] {
        grid-template-columns: 1fr;
    }

    .ap-action-row[b-rkr0edoe1s] {
        justify-content: stretch;
    }

        .ap-action-row .iac-btn[b-rkr0edoe1s] {
            width: 100%;
        }
}


/* ─────────────────────────────────────────────
   22. ADMIN LINKS / POWDER / BOM / MODAL SOLIDITY
   ───────────────────────────────────────────── */
.ap-page-header__actions[b-rkr0edoe1s] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.ap-detail-modal-shell[b-rkr0edoe1s] {
    position: fixed;
    inset: 0;
    z-index: 10850;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
}

.ap-detail-modal-backdrop[b-rkr0edoe1s] {
    position: absolute;
    inset: 0;
    background: var(--modal-overlay-bg) !important;
    opacity: 1 !important;
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
}

/* Force modal content to always have an opaque background */
.ap-detail-modal-dialog .modal-content[b-rkr0edoe1s],
.ap-detail-modal-dialog .iac-modal-content[b-rkr0edoe1s] {
    background-color: var(--modal-bg) !important;
    background-image: none !important;
    opacity: 1 !important;
    /* Explicit light-mode fallback */
    --modal-bg-fallback: #ffffff;
}

.ap-detail-modal-dialog[b-rkr0edoe1s] {
    position: relative;
    z-index: 2;
    width: min(980px, calc(100vw - 32px));
    margin: 0 auto;
}

    .ap-detail-modal-dialog .modal-content[b-rkr0edoe1s],
    .ap-detail-modal-dialog .iac-modal-content[b-rkr0edoe1s],
    .ap-detail-modal-dialog .modal-header[b-rkr0edoe1s],
    .ap-detail-modal-dialog .modal-body[b-rkr0edoe1s],
    .ap-detail-modal-dialog .modal-footer[b-rkr0edoe1s] {
        background-color: var(--modal-bg) !important;
        background-image: none !important;
        opacity: 1 !important;
    }

    .ap-detail-modal-dialog .iac-modal-header[b-rkr0edoe1s] {
        background: var(--modal-header-bg) !important;
    }

    .ap-detail-modal-dialog .iac-modal-footer[b-rkr0edoe1s] {
        background: var(--modal-footer-bg) !important;
    }

.admin-bom-card[b-rkr0edoe1s] {
    border-color: rgba(var(--iac-gold-rgb), 0.34) !important;
}

.admin-bom-subtitle[b-rkr0edoe1s] {
    font-size: 12px;
    color: var(--text-secondary);
    margin-top: 4px;
}

.admin-budget-grid[b-rkr0edoe1s] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.admin-budget-stat[b-rkr0edoe1s] {
    background: var(--panel-bg-alt);
    border: 1px solid var(--panel-border);
    border-radius: 14px;
    padding: 14px 16px;
    box-shadow: 0 4px 14px rgba(0,40,85,0.06);
}

.admin-budget-stat__label[b-rkr0edoe1s] {
    display: block;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    color: var(--text-muted);
    margin-bottom: 6px;
}

.admin-budget-stat strong[b-rkr0edoe1s] {
    font-size: 1.05rem;
    color: var(--text-primary);
}

.admin-bom-table-wrap[b-rkr0edoe1s] {
    border: 1px solid var(--panel-border);
    border-radius: 14px;
    overflow: hidden;
}

.admin-budget-breakout[b-rkr0edoe1s] {
    height: 100%;
    background: var(--panel-bg-alt);
    border: 1px solid var(--panel-border);
    border-radius: 14px;
    padding: 16px;
    box-shadow: 0 4px 14px rgba(0,40,85,0.05);
}

.admin-budget-breakout__title[b-rkr0edoe1s] {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    color: var(--section-label-text);
    margin-bottom: 12px;
}

.admin-budget-breakout__row[b-rkr0edoe1s] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    padding: 10px 0;
    border-bottom: 1px solid var(--divider);
    color: var(--text-primary);
    font-size: 13px;
}

    .admin-budget-breakout__row strong[b-rkr0edoe1s] {
        white-space: nowrap;
    }

.admin-budget-breakout__row--total[b-rkr0edoe1s] {
    padding-top: 14px;
    border-bottom: none;
    font-weight: 800;
    color: var(--text-primary);
}

.bom-pdf-shell[b-rkr0edoe1s] {
    font-family: 'din-2014', 'DIN 2014', 'DIN Pro', 'DM Sans', system-ui, sans-serif !important;
    color: #0d1f3c;
    background: #ffffff;
    padding: 24px;
}

.bom-pdf-header[b-rkr0edoe1s] {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: flex-start;
    border-bottom: 2px solid #002855;
    padding-bottom: 16px;
    margin-bottom: 20px;
}

.bom-pdf-eyebrow[b-rkr0edoe1s] {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #7a4f00;
    margin-bottom: 6px;
}

.bom-pdf-header h2[b-rkr0edoe1s] {
    margin: 0 0 8px;
    font-size: 28px;
    font-weight: 900;
    color: #002855;
}

.bom-pdf-meta[b-rkr0edoe1s] {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    font-size: 13px;
    color: #324968;
}

.bom-pdf-summary[b-rkr0edoe1s] {
    min-width: 280px;
    display: grid;
    gap: 10px;
}

    .bom-pdf-summary div[b-rkr0edoe1s],
    .bom-pdf-breakout div[b-rkr0edoe1s] {
        display: flex;
        justify-content: space-between;
        gap: 14px;
    }

    .bom-pdf-summary span[b-rkr0edoe1s],
    .bom-pdf-breakout span[b-rkr0edoe1s] {
        color: #536a88;
        font-size: 13px;
    }

    .bom-pdf-summary strong[b-rkr0edoe1s],
    .bom-pdf-breakout strong[b-rkr0edoe1s] {
        color: #0d1f3c;
    }

.bom-pdf-grid[b-rkr0edoe1s] {
    display: grid;
    grid-template-columns: 1.5fr 0.9fr;
    gap: 18px;
}

.bom-pdf-panel[b-rkr0edoe1s] {
    border: 1px solid rgba(0,40,85,0.16);
    border-radius: 14px;
    overflow: hidden;
    background: #ffffff;
}

.bom-pdf-panel__title[b-rkr0edoe1s] {
    background: #002855;
    color: #ffffff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    padding: 12px 14px;
}

.bom-pdf-table[b-rkr0edoe1s] {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
}

    .bom-pdf-table thead th[b-rkr0edoe1s] {
        background: #eef2f6;
        color: #002855;
        text-transform: uppercase;
        letter-spacing: 0.08em;
        font-size: 10px;
        padding: 10px 12px;
        border-bottom: 1px solid rgba(0,40,85,0.12);
    }

    .bom-pdf-table td[b-rkr0edoe1s] {
        padding: 10px 12px;
        border-bottom: 1px solid rgba(0,40,85,0.08);
    }

.bom-pdf-breakout[b-rkr0edoe1s] {
    padding: 16px;
    display: grid;
    gap: 12px;
}

    .bom-pdf-breakout .total[b-rkr0edoe1s] {
        margin-top: 8px;
        padding-top: 12px;
        border-top: 2px solid rgba(0,40,85,0.12);
        font-weight: 800;
    }

@media (max-width: 992px) {
    .admin-budget-grid[b-rkr0edoe1s] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .bom-pdf-grid[b-rkr0edoe1s] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 768px) {
    .admin-budget-grid[b-rkr0edoe1s] {
        grid-template-columns: 1fr;
    }

    .ap-detail-modal-shell[b-rkr0edoe1s] {
        padding: 10px;
    }

    .ap-detail-modal-dialog[b-rkr0edoe1s] {
        width: calc(100vw - 20px);
    }
}

:root[data-bs-theme="dark"] .admin-budget-stat[b-rkr0edoe1s],
:root[data-bs-theme="dark"] .admin-budget-breakout[b-rkr0edoe1s],
[data-theme="dark"] .admin-budget-stat[b-rkr0edoe1s],
[data-theme="dark"] .admin-budget-breakout[b-rkr0edoe1s] {
    box-shadow: 0 10px 28px rgba(0,0,0,0.22);
}


.ap-detail-modal-overlay[b-rkr0edoe1s] {
    position: fixed !important;
    inset: 0 !important;
    z-index: 1060 !important;
    display: flex !important;
    align-items: center;
    justify-content: center;
    padding: 24px;
    background: rgba(8, 15, 28, 0.72) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

    .ap-detail-modal-overlay[b-rkr0edoe1s]::before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, rgba(0,40,85,0.18) 0%, rgba(8,15,28,0.18) 100%);
        pointer-events: none;
    }

.ap-detail-modal-dialog[b-rkr0edoe1s] {
    position: relative;
    z-index: 2;
    width: min(980px, calc(100vw - 40px));
    margin: 0 auto;
}

    .ap-detail-modal-dialog .modal-content[b-rkr0edoe1s],
    .ap-detail-modal-dialog .iac-modal-content[b-rkr0edoe1s],
    .ap-detail-modal-dialog .modal-body[b-rkr0edoe1s],
    .ap-detail-modal-dialog .detail-grid[b-rkr0edoe1s],
    .ap-detail-modal-dialog .detail-col[b-rkr0edoe1s],
    .ap-detail-modal-dialog .detail-desc-bar[b-rkr0edoe1s],
    .ap-detail-modal-dialog .modal-footer[b-rkr0edoe1s] {
        background-color: var(--modal-bg) !important;
        background-image: none !important;
        opacity: 1 !important;
    }

    .ap-detail-modal-dialog .iac-modal-header[b-rkr0edoe1s] {
        background: var(--modal-header-bg) !important;
        opacity: 1 !important;
    }

    .ap-detail-modal-dialog .iac-modal-footer[b-rkr0edoe1s] {
        background: var(--modal-footer-bg) !important;
    }

.powder-selection-bar[b-rkr0edoe1s] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 14px;
    padding: 12px 14px;
    border-radius: 12px;
    background: rgba(var(--iac-navy-rgb), 0.04);
    border: 1px solid rgba(var(--iac-navy-rgb), 0.12);
}

:root[data-bs-theme="dark"] .powder-selection-bar[b-rkr0edoe1s],
[data-theme="dark"] .powder-selection-bar[b-rkr0edoe1s] {
    background: rgba(255,255,255,0.04);
    border-color: rgba(255,255,255,0.10);
}

.powder-selected-pill[b-rkr0edoe1s] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(var(--iac-gold-rgb), 0.12);
    color: var(--text-primary);
    font-weight: 700;
}

.powder-selection-help[b-rkr0edoe1s] {
    color: var(--text-muted);
    font-weight: 600;
}

.powder-color-section .color-option[b-rkr0edoe1s] {
    min-height: 92px;
}

.admin-bom-partno[b-rkr0edoe1s] {
    font-weight: 800;
    letter-spacing: 0.04em;
    font-size: 0.78rem;
    color: var(--iac-blue-hex);
}

:root[data-bs-theme="dark"] .admin-bom-partno[b-rkr0edoe1s],
[data-theme="dark"] .admin-bom-partno[b-rkr0edoe1s] {
    color: var(--iac-gold);
}

.admin-budget-breakout--hours .admin-budget-breakout__row strong[b-rkr0edoe1s] {
    min-width: 78px;
    text-align: right;
}

.labor-hrs-detail[b-rkr0edoe1s] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 1px;
    white-space: nowrap;
}

.labor-rate-note[b-rkr0edoe1s] {
    font-size: 0.70rem;
    font-weight: 500;
    color: var(--text-muted);
    letter-spacing: 0;
}

.bom-pdf-table th:nth-child(2)[b-rkr0edoe1s],
.bom-pdf-table td:nth-child(2)[b-rkr0edoe1s] {
    white-space: nowrap;
}

/* ─────────────────────────────────────────────
   COLOR SECTION CARD — unified panel/powder color picker
   ───────────────────────────────────────────── */
.color-section-card[b-rkr0edoe1s] {
    background: var(--panel-bg-alt);
    border: 1px solid var(--panel-border-strong);
    border-radius: 14px;
    padding: 16px;
    overflow: hidden;
}

.color-section-card--powder[b-rkr0edoe1s] {
    border-color: rgba(var(--iac-gold-rgb), 0.38);
    background: linear-gradient(180deg, rgba(var(--iac-gold-rgb), 0.04) 0%, var(--panel-bg-alt) 100%);
}

:root[data-bs-theme="dark"] .color-section-card[b-rkr0edoe1s],
[data-theme="dark"] .color-section-card[b-rkr0edoe1s] {
    background: #1d2438;
    border-color: rgba(255,255,255,0.10);
}

:root[data-bs-theme="dark"] .color-section-card--powder[b-rkr0edoe1s],
[data-theme="dark"] .color-section-card--powder[b-rkr0edoe1s] {
    border-color: rgba(241,184,40,0.30);
    background: linear-gradient(180deg, rgba(241,184,40,0.06) 0%, #1d2438 100%);
}

.color-section-card__head[b-rkr0edoe1s] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
    margin-bottom: 14px;
    padding-bottom: 12px;
    border-bottom: 1px solid var(--divider);
}

.color-section-card__label[b-rkr0edoe1s] {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--section-label-text);
    margin: 0;
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
}

.powder-toggle-inline[b-rkr0edoe1s] {
    margin: 0;
    padding: 6px 10px;
    border-radius: 10px;
    border: 1px solid var(--panel-border);
    background: var(--input-bg);
    display: flex;
    align-items: center;
    gap: 8px;
}

    .powder-toggle-inline .form-check-input[b-rkr0edoe1s] {
        border-color: var(--input-border) !important;
        background-color: var(--input-bg) !important;
        margin-top: 0;
    }

        .powder-toggle-inline .form-check-input:checked[b-rkr0edoe1s] {
            background-color: var(--iac-gold) !important;
            border-color: var(--iac-gold) !important;
        }

    .powder-toggle-inline .form-check-label[b-rkr0edoe1s] {
        color: var(--text-primary) !important;
        font-size: 12px;
        font-weight: 700;
        margin: 0;
    }

.powder-both-sides-check-inline[b-rkr0edoe1s] {
    margin: 0;
    padding: 6px 10px;
    border-radius: 10px;
    border: 1px solid var(--panel-border);
    background: var(--input-bg);
    display: flex;
    align-items: center;
    gap: 8px;
}

    .powder-both-sides-check-inline .form-check-input[b-rkr0edoe1s] {
        border-color: var(--input-border) !important;
        background-color: var(--input-bg) !important;
        margin-top: 0;
    }

        .powder-both-sides-check-inline .form-check-input:checked[b-rkr0edoe1s] {
            background-color: var(--iac-gold) !important;
            border-color: var(--iac-gold) !important;
        }

    .powder-both-sides-check-inline .form-check-label[b-rkr0edoe1s] {
        color: var(--text-primary) !important;
        font-size: 12px;
        font-weight: 700;
        margin: 0;
    }

/* ── Color chip preview (next to dropdown) ── */
.color-chip-preview[b-rkr0edoe1s] {
    display: inline-block;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    border: 2px solid var(--panel-border-strong);
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.18);
}

/* ── Powder selected indicator row ── */
.powder-selected-row[b-rkr0edoe1s] {
    display: flex;
    align-items: center;
    gap: 6px;
    padding: 8px 10px;
    background: rgba(var(--iac-gold-rgb), 0.08);
    border-radius: 8px;
    font-size: 13px;
}

/* ── Powder toggle row — just the switch, nothing else when off ── */
.powder-toggle-row[b-rkr0edoe1s] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 14px;
    background: var(--panel-bg-alt);
    border: 1px solid var(--panel-border);
    border-radius: 10px;
}

.powder-toggle-label[b-rkr0edoe1s] {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-primary);
}

:root[data-bs-theme="dark"] .powder-toggle-row[b-rkr0edoe1s],
[data-theme="dark"] .powder-toggle-row[b-rkr0edoe1s] {
    background: #1d2438;
    border-color: rgba(255,255,255,0.08);
}

/* ─────────────────────────────────────────────
   BOM — Sheet Optimization note styling
   ───────────────────────────────────────────── */

/* The small note line under a BOM component */
.admin-bom-table-wrap .bom-sheet-opt-note[b-rkr0edoe1s] {
    font-size: 9.5px;
    color: var(--text-muted);
    font-style: italic;
    margin-top: 2px;
    line-height: 1.4;
}

/* Highlight the "sheets needed" callout inline */
.bom-sheet-opt-note .opt-sheets[b-rkr0edoe1s] {
    font-weight: 700;
    font-style: normal;
    color: var(--iac-gold);
}

.bom-sheet-opt-note .opt-yield[b-rkr0edoe1s] {
    font-weight: 700;
    font-style: normal;
    color: var(--iac-green);
}

:root[data-bs-theme="dark"] .bom-sheet-opt-note .opt-sheets[b-rkr0edoe1s],
[data-theme="dark"] .bom-sheet-opt-note .opt-sheets[b-rkr0edoe1s] {
    color: #ffd56d;
}

:root[data-bs-theme="dark"] .bom-sheet-opt-note .opt-yield[b-rkr0edoe1s],
[data-theme="dark"] .bom-sheet-opt-note .opt-yield[b-rkr0edoe1s] {
    color: #4ade80;
}

/* Mounting family badge in hardware rows */
.bom-mount-badge[b-rkr0edoe1s] {
    display: inline-block;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    padding: 1px 6px;
    border-radius: 3px;
    background: rgba(241,184,40,0.12);
    color: #7a4f00;
    border: 1px solid rgba(241,184,40,0.30);
    margin-left: 4px;
    vertical-align: middle;
}

:root[data-bs-theme="dark"] .bom-mount-badge[b-rkr0edoe1s],
[data-theme="dark"] .bom-mount-badge[b-rkr0edoe1s] {
    background: rgba(241,184,40,0.10);
    color: #ffd56d;
    border-color: rgba(241,184,40,0.28);
}

/* ─────────────────────────────────────────────
   23. MARK NUMBER — Auto / Manual row
   ───────────────────────────────────────────── */
.mark-auto-badge[b-rkr0edoe1s] {
    display: inline-block;
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    padding: 1px 6px;
    border-radius: 99px;
    background: rgba(var(--iac-gold-rgb), 0.18);
    color: #7a4f00;
    border: 1px solid rgba(var(--iac-gold-rgb), 0.36);
    vertical-align: middle;
}

:root[data-bs-theme="dark"] .mark-auto-badge[b-rkr0edoe1s],
[data-theme="dark"] .mark-auto-badge[b-rkr0edoe1s] {
    background: rgba(241,184,40,0.12);
    color: #ffd56d;
    border-color: rgba(241,184,40,0.30);
}

.mark-number-row[b-rkr0edoe1s] {
    display: flex;
    gap: 8px;
    align-items: stretch;
}

    .mark-number-row .form-control[b-rkr0edoe1s] {
        flex: 1 1 auto;
    }

.mark-toggle-pill[b-rkr0edoe1s] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 0 14px;
    border-radius: 0 0 8px 8px;
    border: 1px solid var(--input-border);
    background: var(--section-label-bg);
    color: var(--text-secondary);
    cursor: pointer;
    user-select: none;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.05em;
    white-space: nowrap;
    transition: background 0.15s, color 0.15s, border-color 0.15s;
    flex-shrink: 0;
}

    .mark-toggle-pill:hover[b-rkr0edoe1s] {
        background: rgba(var(--iac-navy-rgb), 0.08);
        border-color: rgba(var(--iac-navy-rgb), 0.26);
        color: var(--text-primary);
    }

.mark-toggle-pill--on[b-rkr0edoe1s] {
    background: rgba(var(--iac-gold-rgb), 0.16) !important;
    border-color: rgba(var(--iac-gold-rgb), 0.46) !important;
    color: #7a4f00 !important;
}

:root[data-bs-theme="dark"] .mark-toggle-pill--on[b-rkr0edoe1s],
[data-theme="dark"] .mark-toggle-pill--on[b-rkr0edoe1s] {
    background: rgba(241,184,40,0.14) !important;
    border-color: rgba(241,184,40,0.38) !important;
    color: #ffd56d !important;
}

.mark-toggle-pill__icon[b-rkr0edoe1s] {
    font-size: 13px;
    line-height: 1;
}


/* ─────────────────────────────────────────────
   24. POWDER COAT — Hero toggle row
   ───────────────────────────────────────────── */
.powder-toggle-row--hero[b-rkr0edoe1s] {
    background: linear-gradient(135deg, rgba(var(--iac-navy-rgb), 0.06) 0%, rgba(var(--iac-gold-rgb), 0.06) 100%);
    border: 1.5px solid rgba(var(--iac-gold-rgb), 0.28);
    border-radius: 12px;
    padding: 14px 18px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    box-shadow: 0 2px 8px rgba(0,40,85,0.06);
    transition: border-color 0.18s, box-shadow 0.18s;
}

:root[data-bs-theme="dark"] .powder-toggle-row--hero[b-rkr0edoe1s],
[data-theme="dark"] .powder-toggle-row--hero[b-rkr0edoe1s] {
    background: linear-gradient(135deg, rgba(255,255,255,0.04) 0%, rgba(241,184,40,0.06) 100%);
    border-color: rgba(241,184,40,0.22);
    box-shadow: 0 2px 10px rgba(0,0,0,0.18);
}

.powder-toggle-hero__left[b-rkr0edoe1s] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.powder-toggle-hero__icon[b-rkr0edoe1s] {
    font-size: 1.6rem;
    flex-shrink: 0;
    filter: saturate(1.2);
}

.powder-toggle-hero__label[b-rkr0edoe1s] {
    display: block;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: var(--text-primary);
}

.powder-toggle-hero__sublabel[b-rkr0edoe1s] {
    display: block;
    font-size: 11px;
    color: var(--text-muted);
    font-weight: 500;
    margin-top: 2px;
}

/* Custom hero toggle switch */
.powder-hero-switch[b-rkr0edoe1s] {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: pointer;
    user-select: none;
}

    .powder-hero-switch input[b-rkr0edoe1s] {
        display: none;
    }

.powder-hero-switch__track[b-rkr0edoe1s] {
    position: relative;
    width: 52px;
    height: 28px;
    background: rgba(0,40,85,0.14);
    border: 2px solid rgba(0,40,85,0.20);
    border-radius: 99px;
    transition: background 0.22s, border-color 0.22s, box-shadow 0.22s;
    flex-shrink: 0;
}

.powder-hero-switch input:checked ~ .powder-hero-switch__track[b-rkr0edoe1s] {
    background: linear-gradient(135deg, #F1B828 0%, #e0a520 100%);
    border-color: #c8920e;
    box-shadow: 0 0 0 3px rgba(241,184,40,0.28), 0 2px 8px rgba(241,184,40,0.32);
}

.powder-hero-switch__thumb[b-rkr0edoe1s] {
    position: absolute;
    top: 3px;
    left: 3px;
    width: 18px;
    height: 18px;
    background: #ffffff;
    border-radius: 50%;
    box-shadow: 0 2px 4px rgba(0,0,0,0.22);
    transition: transform 0.22s cubic-bezier(0.34,1.28,0.64,1);
}

.powder-hero-switch input:checked ~ .powder-hero-switch__track .powder-hero-switch__thumb[b-rkr0edoe1s] {
    transform: translateX(24px);
}

.powder-hero-switch__label[b-rkr0edoe1s] {
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--text-muted);
    min-width: 28px;
    transition: color 0.18s;
}

.powder-hero-switch input:checked ~ .powder-hero-switch__label[b-rkr0edoe1s] {
    color: #c8920e;
}

:root[data-bs-theme="dark"] .powder-hero-switch input:checked ~ .powder-hero-switch__label[b-rkr0edoe1s],
[data-theme="dark"] .powder-hero-switch input:checked ~ .powder-hero-switch__label[b-rkr0edoe1s] {
    color: #ffd56d;
}

:root[data-bs-theme="dark"] .powder-hero-switch__track[b-rkr0edoe1s],
[data-theme="dark"] .powder-hero-switch__track[b-rkr0edoe1s] {
    background: rgba(255,255,255,0.10);
    border-color: rgba(255,255,255,0.16);
}


/* ─────────────────────────────────────────────
   25. POWDER BOTH SIDES — Hero checkbox
   ───────────────────────────────────────────── */
/* ── Paint Both Sides — toggle pill (checked = default = both sides) ── */
.powder-both-sides-check-inline--hero[b-rkr0edoe1s] {
    border: 1.5px solid rgba(var(--iac-gold-rgb), 0.55) !important;
    border-radius: 10px !important;
    padding: 7px 14px !important;
    background: rgba(var(--iac-gold-rgb), 0.12) !important;
    cursor: pointer;
    transition: background 0.15s, border-color 0.15s, box-shadow 0.15s;
}

    /* When unchecked (one side only) — subdued */
    .powder-both-sides-check-inline--hero:has(.form-check-input:not(:checked))[b-rkr0edoe1s] {
        background: rgba(var(--iac-gold-rgb), 0.04) !important;
        border-color: rgba(var(--iac-gold-rgb), 0.22) !important;
    }

    .powder-both-sides-check-inline--hero:hover[b-rkr0edoe1s] {
        background: rgba(var(--iac-gold-rgb), 0.18) !important;
        border-color: rgba(var(--iac-gold-rgb), 0.65) !important;
        box-shadow: 0 0 0 2px rgba(241,184,40,0.16);
    }

    .powder-both-sides-check-inline--hero .form-check-label[b-rkr0edoe1s] {
        font-size: 12px !important;
        font-weight: 800 !important;
        letter-spacing: 0.04em !important;
        color: var(--text-primary) !important;
        cursor: pointer;
        display: flex;
        align-items: center;
        gap: 7px;
    }

    /* Checked state (both sides — the default) */
    .powder-both-sides-check-inline--hero .form-check-input:checked[b-rkr0edoe1s] {
        background-color: #F1B828 !important;
        border-color: #c8920e !important;
        box-shadow: 0 0 0 2px rgba(241,184,40,0.28) !important;
    }

    /* Unchecked state — visually dim the icon to signal "off" */
    .powder-both-sides-check-inline--hero:has(.form-check-input:not(:checked)) .both-sides-icon[b-rkr0edoe1s] {
        opacity: 0.3;
        filter: grayscale(1);
    }

:root[data-bs-theme="dark"] .powder-both-sides-check-inline--hero[b-rkr0edoe1s],
[data-theme="dark"] .powder-both-sides-check-inline--hero[b-rkr0edoe1s] {
    background: rgba(241,184,40,0.10) !important;
    border-color: rgba(241,184,40,0.40) !important;
}

    :root[data-bs-theme="dark"] .powder-both-sides-check-inline--hero:has(.form-check-input:not(:checked))[b-rkr0edoe1s],
    [data-theme="dark"] .powder-both-sides-check-inline--hero:has(.form-check-input:not(:checked))[b-rkr0edoe1s] {
        background: rgba(241,184,40,0.03) !important;
        border-color: rgba(241,184,40,0.16) !important;
    }

.both-sides-icon[b-rkr0edoe1s] {
    font-size: 11px;
    opacity: 0.85;
    transition: opacity 0.15s, filter 0.15s;
}

.both-sides-active-pill[b-rkr0edoe1s] {
    display: inline-block;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: 0.10em;
    padding: 1px 6px;
    border-radius: 99px;
    background: linear-gradient(135deg, #F1B828, #e0a520);
    color: #002855;
    border: 1px solid #c8920e;
    box-shadow: 0 1px 4px rgba(241,184,40,0.32);
}

.both-sides-inactive-pill[b-rkr0edoe1s] {
    display: inline-block;
    font-size: 8px;
    font-weight: 700;
    letter-spacing: 0.08em;
    padding: 1px 6px;
    border-radius: 99px;
    background: transparent;
    color: var(--text-muted);
    border: 1px solid var(--panel-border);
}


/* ─────────────────────────────────────────────
   26. MODAL SLEEK — Panel detail redesign
   ───────────────────────────────────────────── */
.ap-modal-sleek .modal-content[b-rkr0edoe1s],
.ap-modal-sleek[b-rkr0edoe1s] {
    border-radius: 18px !important;
    overflow: hidden;
    box-shadow: 0 32px 80px rgba(0,40,85,0.28), 0 0 0 1px rgba(0,40,85,0.08) !important;
}

.ap-modal-sleek__header[b-rkr0edoe1s] {
    background: linear-gradient(135deg, #002855 0%, #1a3260 100%) !important;
    padding: 18px 22px !important;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    border-bottom: none !important;
}

:root[data-bs-theme="dark"] .ap-modal-sleek__header[b-rkr0edoe1s],
[data-theme="dark"] .ap-modal-sleek__header[b-rkr0edoe1s] {
    background: linear-gradient(135deg, #0d1f3c 0%, #142d58 100%) !important;
}

.ap-modal-sleek__header-left[b-rkr0edoe1s] {
    display: flex;
    align-items: center;
    gap: 14px;
    flex: 1 1 auto;
    min-width: 0;
}

.ap-modal-sleek__mn-pill[b-rkr0edoe1s] {
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    background: rgba(241,184,40,0.22);
    border: 1.5px solid rgba(241,184,40,0.52);
    color: #ffd56d;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.06em;
    padding: 5px 13px;
    border-radius: 99px;
    white-space: nowrap;
}

.ap-modal-sleek__title-group[b-rkr0edoe1s] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    min-width: 0;
}

.ap-modal-sleek__model[b-rkr0edoe1s] {
    font-size: 15px;
    font-weight: 800;
    color: #ffffff;
    letter-spacing: 0.02em;
}

.ap-modal-sleek__type-sep[b-rkr0edoe1s] {
    color: rgba(255,255,255,0.42);
    font-size: 14px;
}

.ap-modal-sleek__type[b-rkr0edoe1s] {
    font-size: 13px;
    font-weight: 600;
    color: rgba(255,255,255,0.76);
}

/* Stat chips bar */
.ap-modal-sleek__chips[b-rkr0edoe1s] {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    padding: 14px 20px;
    background: rgba(var(--iac-navy-rgb), 0.04);
    border-bottom: 1px solid var(--divider);
}

:root[data-bs-theme="dark"] .ap-modal-sleek__chips[b-rkr0edoe1s],
[data-theme="dark"] .ap-modal-sleek__chips[b-rkr0edoe1s] {
    background: rgba(255,255,255,0.03);
}

.ap-modal-sleek__chip[b-rkr0edoe1s] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 1px;
    padding: 7px 14px;
    background: var(--panel-bg);
    border: 1px solid var(--panel-border-strong);
    border-radius: 10px;
    min-width: 68px;
    box-shadow: 0 1px 4px rgba(0,40,85,0.06);
}

.ap-modal-sleek__chip-label[b-rkr0edoe1s] {
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.ap-modal-sleek__chip strong[b-rkr0edoe1s] {
    font-size: 14px;
    font-weight: 700;
    color: var(--text-primary);
}

.ap-modal-sleek__chip--price[b-rkr0edoe1s] {
    border-color: rgba(var(--iac-navy-rgb), 0.22);
    background: rgba(var(--iac-navy-rgb), 0.05);
}

.ap-modal-sleek__chip--total[b-rkr0edoe1s] {
    border-color: rgba(26,122,74,0.28);
    background: rgba(26,122,74,0.06);
}

    .ap-modal-sleek__chip--total strong[b-rkr0edoe1s] {
        color: var(--iac-green);
    }

.ap-modal-sleek__chip--no-price[b-rkr0edoe1s] {
    min-width: 0;
}

/* Powder pill inside modal */
.ap-modal-sleek__powder-pill[b-rkr0edoe1s] {
    display: inline-block;
    font-size: 11px;
    font-weight: 700;
    padding: 2px 8px;
    border-radius: 99px;
    background: rgba(var(--iac-gold-rgb), 0.12);
    color: #7a4f00;
    border: 1px solid rgba(var(--iac-gold-rgb), 0.30);
}

:root[data-bs-theme="dark"] .ap-modal-sleek__powder-pill[b-rkr0edoe1s],
[data-theme="dark"] .ap-modal-sleek__powder-pill[b-rkr0edoe1s] {
    background: rgba(241,184,40,0.10);
    color: #ffd56d;
    border-color: rgba(241,184,40,0.26);
}


/* ═══════════════════════════════════════════════════════════════
   FIXES BATCH — mark mode, modal bg, summary row, qty alignment
   ═══════════════════════════════════════════════════════════════ */

/* ── 1. Mark mode toggle row — sits above the label ── */
.mark-mode-toggle-row[b-rkr0edoe1s] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 3px;
}

.mark-mode-toggle-label[b-rkr0edoe1s] {
    font-size: 9px;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--text-secondary);
    white-space: nowrap;
    flex-shrink: 0;
}

.mark-mode-segmented[b-rkr0edoe1s] {
    display: flex;
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid var(--input-border);
    background: var(--input-disabled-bg);
    flex-shrink: 0;
}

.mark-mode-seg[b-rkr0edoe1s] {
    display: inline-flex;
    align-items: center;
    padding: 4px 11px;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--text-muted);
    background: transparent;
    border: none;
    cursor: pointer;
    transition: background 0.14s, color 0.14s;
    line-height: 1;
    gap: 3px;
}

    .mark-mode-seg i[b-rkr0edoe1s] {
        font-size: 9px;
    }

/* Auto active — FIXED: navy bg, white text so it reads in light mode */
.mark-mode-seg--active[b-rkr0edoe1s] {
    background: #002855 !important;
    color: #ffffff !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.12);
}

    /* Manual active — gold tint */
    .mark-mode-seg--active.mark-mode-seg--manual[b-rkr0edoe1s] {
        background: rgba(241,184,40,0.18) !important;
        color: #7a4f00 !important;
    }

:root[data-bs-theme="dark"] .mark-mode-seg[b-rkr0edoe1s],
[data-theme="dark"] .mark-mode-seg[b-rkr0edoe1s] {
    color: var(--text-muted);
}

:root[data-bs-theme="dark"] .mark-mode-seg--active[b-rkr0edoe1s],
[data-theme="dark"] .mark-mode-seg--active[b-rkr0edoe1s] {
    background: #1a3260 !important;
    color: #ffffff !important;
}

    :root[data-bs-theme="dark"] .mark-mode-seg--active.mark-mode-seg--manual[b-rkr0edoe1s],
    [data-theme="dark"] .mark-mode-seg--active.mark-mode-seg--manual[b-rkr0edoe1s] {
        background: rgba(241,184,40,0.20) !important;
        color: #ffd56d !important;
    }

:root[data-bs-theme="dark"] .mark-mode-segmented[b-rkr0edoe1s],
[data-theme="dark"] .mark-mode-segmented[b-rkr0edoe1s] {
    border-color: var(--input-border);
    background: rgba(255,255,255,0.04);
}

/* Auto hint text below input */
.mark-auto-hint[b-rkr0edoe1s] {
    font-size: 0.70rem;
    color: var(--text-muted);
    margin-top: 4px;
    font-style: italic;
}

/* ── Qty field spacer — pushes label down to align with Mark # input ── */
/* The toggle row above Mark # is ~24px tall; qty needs the same top offset */
.mark-qty-spacer[b-rkr0edoe1s] {
    height: 27px; /* matches toggle-row height + margin-bottom */
}


/* ── 2. Modal background — force opaque in ALL cases in light mode ── */
/* The sleek modal needs its own background lock separate from ap-modal-solid */
.ap-modal-sleek.modal-content[b-rkr0edoe1s],
.ap-modal-sleek .modal-content[b-rkr0edoe1s],
.ap-detail-modal-dialog .ap-modal-sleek[b-rkr0edoe1s],
.ap-detail-modal-dialog .modal-content[b-rkr0edoe1s] {
    background-color: #ffffff !important;
    --bs-modal-bg: #ffffff !important;
    opacity: 1 !important;
}

.ap-modal-sleek .modal-body[b-rkr0edoe1s],
.ap-modal-sleek .detail-grid[b-rkr0edoe1s],
.ap-modal-sleek .detail-col[b-rkr0edoe1s],
.ap-modal-sleek .detail-desc-bar[b-rkr0edoe1s] {
    background-color: #ffffff !important;
    background-image: none !important;
}

.ap-modal-sleek .iac-modal-footer[b-rkr0edoe1s] {
    background-color: #f6f8fb !important;
}

:root[data-bs-theme="dark"] .ap-modal-sleek.modal-content[b-rkr0edoe1s],
:root[data-bs-theme="dark"] .ap-modal-sleek .modal-content[b-rkr0edoe1s],
:root[data-bs-theme="dark"] .ap-detail-modal-dialog .ap-modal-sleek[b-rkr0edoe1s],
:root[data-bs-theme="dark"] .ap-detail-modal-dialog .modal-content[b-rkr0edoe1s],
[data-theme="dark"] .ap-modal-sleek.modal-content[b-rkr0edoe1s],
[data-theme="dark"] .ap-modal-sleek .modal-content[b-rkr0edoe1s],
[data-theme="dark"] .ap-detail-modal-dialog .ap-modal-sleek[b-rkr0edoe1s],
[data-theme="dark"] .ap-detail-modal-dialog .modal-content[b-rkr0edoe1s] {
    background-color: #131b2a !important;
    --bs-modal-bg: #131b2a !important;
}

:root[data-bs-theme="dark"] .ap-modal-sleek .modal-body[b-rkr0edoe1s],
:root[data-bs-theme="dark"] .ap-modal-sleek .detail-grid[b-rkr0edoe1s],
:root[data-bs-theme="dark"] .ap-modal-sleek .detail-col[b-rkr0edoe1s],
:root[data-bs-theme="dark"] .ap-modal-sleek .detail-desc-bar[b-rkr0edoe1s],
[data-theme="dark"] .ap-modal-sleek .modal-body[b-rkr0edoe1s],
[data-theme="dark"] .ap-modal-sleek .detail-grid[b-rkr0edoe1s],
[data-theme="dark"] .ap-modal-sleek .detail-col[b-rkr0edoe1s],
[data-theme="dark"] .ap-modal-sleek .detail-desc-bar[b-rkr0edoe1s] {
    background-color: #131b2a !important;
    background-image: none !important;
}

:root[data-bs-theme="dark"] .ap-modal-sleek .iac-modal-footer[b-rkr0edoe1s],
[data-theme="dark"] .ap-modal-sleek .iac-modal-footer[b-rkr0edoe1s] {
    background-color: #0f1622 !important;
}


/* ── 3. Order summary row — Total Panels too dark in dark mode ── */
/* The badge bg-primary and fw-semibold labels need proper dark mode colors */
.order-summary-row td[b-rkr0edoe1s],
.order-summary-row .bg-light[b-rkr0edoe1s] {
    color: var(--text-primary) !important;
}

/* "Total Panels:" and "Total Cost:" labels */
.order-summary-row .fw-semibold[b-rkr0edoe1s] {
    color: var(--text-primary) !important;
    font-weight: 700 !important;
}

/* badge bg-primary in the summary row */
.order-summary-row .badge.bg-primary[b-rkr0edoe1s] {
    background: rgba(0,40,85,0.14) !important;
    color: #002855 !important;
    border: 1px solid rgba(0,40,85,0.22) !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    padding: 3px 10px !important;
    border-radius: 20px !important;
}

:root[data-bs-theme="dark"] .order-summary-row .fw-semibold[b-rkr0edoe1s],
[data-theme="dark"] .order-summary-row .fw-semibold[b-rkr0edoe1s] {
    color: rgba(255,255,255,0.88) !important;
}

:root[data-bs-theme="dark"] .order-summary-row .badge.bg-primary[b-rkr0edoe1s],
[data-theme="dark"] .order-summary-row .badge.bg-primary[b-rkr0edoe1s] {
    background: rgba(241,184,40,0.16) !important;
    color: #ffd56d !important;
    border-color: rgba(241,184,40,0.30) !important;
}

/* display-6 total cost amount in dark mode */
:root[data-bs-theme="dark"] .order-summary-row .display-6[b-rkr0edoe1s],
[data-theme="dark"] .order-summary-row .display-6[b-rkr0edoe1s] {
    color: #4ade80 !important;
}


/* ─────────────────────────────────────────────
   23. ABSORPTION PANELS — layout polish pass v3
   ───────────────────────────────────────────── */
.card-body > .mb-4 > .d-flex.justify-content-between.align-items-center.mb-3.flex-wrap[b-rkr0edoe1s] {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.section-slab[b-rkr0edoe1s] {
    display: grid;
    gap: 24px;
    padding: 14px;
}

.ap-subsection-block[b-rkr0edoe1s] {
    background: linear-gradient(180deg, rgba(var(--iac-navy-rgb), 0.03) 0%, rgba(var(--iac-navy-rgb), 0.015) 100%);
    border: 1px solid var(--panel-border);
    border-radius: 16px;
    padding: 14px;
}

.ap-subsection-block--compact[b-rkr0edoe1s] {
    padding-bottom: 14px;
}

:root[data-bs-theme="dark"] .ap-subsection-block[b-rkr0edoe1s],
[data-theme="dark"] .ap-subsection-block[b-rkr0edoe1s] {
    background: linear-gradient(180deg, rgba(255,255,255,0.045) 0%, rgba(255,255,255,0.025) 100%);
    border-color: rgba(255,255,255,0.08);
}

.ap-subsection-header[b-rkr0edoe1s] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-bottom: 14px;
    padding: 0;
}

.ap-subsection-title[b-rkr0edoe1s] {
    margin: 0;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.11em;
    text-transform: uppercase;
    color: var(--text-primary);
    flex: 1 1 auto;
}

.ap-mark-mode-header[b-rkr0edoe1s] {
    margin: 0 !important;
    justify-content: flex-end;
}

.mark-mode-toggle-row[b-rkr0edoe1s] {
    gap: 10px;
}

.mark-mode-toggle-label[b-rkr0edoe1s] {
    color: var(--text-primary);
}

.mark-mode-segmented[b-rkr0edoe1s] {
    border-radius: 10px;
}

.mark-mode-seg[b-rkr0edoe1s] {
    min-height: 34px;
    padding: 0 13px;
}

.mark-auto-hint[b-rkr0edoe1s],
.form-text[b-rkr0edoe1s],
.invalid-feedback.d-block[b-rkr0edoe1s] {
    padding-left: 2px;
}

.order-table__th-actions[b-rkr0edoe1s] {
    text-align: right !important;
    padding-right: 16px !important;
}

.order-table__actions-cell[b-rkr0edoe1s] {
    text-align: right !important;
    padding-right: 16px !important;
}

    .order-table__actions-cell .btn[b-rkr0edoe1s] {
        vertical-align: middle;
    }

.admin-budget-side[b-rkr0edoe1s] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.admin-bom-table-wrap[b-rkr0edoe1s] {
    overflow-x: auto;
}

.order-table--bom[b-rkr0edoe1s] {
    table-layout: auto;
    width: 100%;
}

.admin-bom-col--category[b-rkr0edoe1s] {
    width: 14%;
}

.admin-bom-col--part[b-rkr0edoe1s] {
    width: 20%;
}

.admin-bom-col--component[b-rkr0edoe1s] {
    width: auto;
}

.admin-bom-col--qty[b-rkr0edoe1s] {
    width: 7%;
}

.admin-bom-col--uom[b-rkr0edoe1s] {
    width: 7%;
}

.admin-bom-col--unit[b-rkr0edoe1s] {
    width: 10%;
}

.admin-bom-col--ext[b-rkr0edoe1s] {
    width: 11%;
}

.admin-budget-breakout[b-rkr0edoe1s] {
    height: auto;
    min-height: 0;
    overflow: hidden;
}

.admin-budget-breakout__title[b-rkr0edoe1s] {
    display: flex;
    align-items: center;
    min-height: 46px;
    margin: -16px -16px 14px;
    padding: 0 16px;
    background: var(--table-head-bg);
    color: var(--table-head-text);
    border-bottom: 2px solid var(--iac-gold);
}

.admin-budget-breakout__row:first-of-type[b-rkr0edoe1s] {
    padding-top: 2px;
}



@media (max-width: 1199.98px) {
    .admin-bom-col--category[b-rkr0edoe1s] {
        width: 16%;
    }

    .admin-bom-col--part[b-rkr0edoe1s] {
        width: 22%;
    }
}

@media (max-width: 991.98px) {
    .section-slab[b-rkr0edoe1s] {
        padding: 12px;
        gap: 18px;
    }

    .ap-subsection-header[b-rkr0edoe1s] {
        flex-direction: column;
        align-items: flex-start;
    }

    .ap-mark-mode-header[b-rkr0edoe1s] {
        width: 100%;
        justify-content: flex-start;
    }

    .admin-budget-side[b-rkr0edoe1s] {
        gap: 16px;
    }
}

@media (max-width: 767.98px) {
    .ap-subsection-block[b-rkr0edoe1s] {
        padding: 12px;
    }

    .mark-mode-segmented[b-rkr0edoe1s] {
        width: 100%;
    }

    .mark-mode-seg[b-rkr0edoe1s] {
        flex: 1 1 0;
        justify-content: center;
    }

    .admin-budget-breakout__title[b-rkr0edoe1s] {
        min-height: 42px;
    }
}
/* _content/NoiseLockQuoteTool/Pages/BackOffice.razor.rz.scp.css */
/* ============================================================
   BackOffice.razor.css  –  IAC CPQ Back Office
   Full consolidation: all rules from BackOffice.razor + site.css
   Redesigned: modern, sleek, refined dark-sidebar admin aesthetic
   Font: DIN 2014 (din-2014) via Adobe Fonts
   ============================================================ */


/* ── 1. Design Tokens ────────────────────────────────────────── */
:root[b-dvwc55b0ps] {
    /* Brand */
    --iac-blue: #002855;
    --iac-blue-dark: #001731;
    --iac-gold: #F1B828;
    --iac-gold-rgb: 241,184,40;
    --iac-accent: #0057FF;
    --iac-accent-hover: #0040CC;
    --iac-accent-muted: rgba(0,87,255,0.10);
    --iac-accent-glow: rgba(0,87,255,0.22);
    /* Surfaces – light */
    --bg-canvas: #E8EDF5;
    --bg-surface: #FFFFFF;
    --bg-surface-2: #EEF2FA;
    --bg-surface-3: #E2E8F4;
    /* Text – light */
    --text-primary: #0D1117;
    --text-secondary: #4A5568;
    --text-muted: #8A94A6;
    --text-inverse: #FFFFFF;
    /* Borders */
    --border-subtle: rgba(0,0,0,0.06);
    --border-default: rgba(0,0,0,0.11);
    --border-strong: rgba(0,0,0,0.20);
    /* Sidebar */
    --sidebar-bg: #0B0F19;
    --sidebar-text: #8A96AC;
    --sidebar-active-bg: rgba(0,87,255,0.18);
    --sidebar-active-text: #FFFFFF;
    --sidebar-hover-bg: rgba(255,255,255,0.05);
    --sidebar-section: #2E3A4E;
    --sidebar-width: 232px;
    /* Status */
    --status-open: #0057FF;
    --status-open-bg: rgba(0,87,255,0.09);
    --status-warn: #E6A817;
    --status-warn-bg: rgba(230,168,23,0.11);
    --status-success: #12A058;
    --status-success-bg: rgba(18,160,88,0.09);
    --status-danger: #DC3545;
    --status-danger-bg: rgba(220,53,69,0.09);
    --status-neutral: #6B7380;
    --status-neutral-bg: rgba(107,115,128,0.09);
    /* Row highlights */
    --warn-bg: rgba(255,193,7,0.15);
    --warn-border: rgba(180,130,0,0.65);
    --warn-text: #5a4200;
    --warn-alert-bg: rgba(255,193,7,0.13);
    --warn-alert-border: rgba(180,130,0,0.50);
    --danger-bg: rgba(220,53,69,0.11);
    --danger-border: rgba(180,30,45,0.60);
    --danger-text: #6b0f1a;
    /* Table */
    --table-header-bg: rgba(0,40,85,0.055);
    --table-row-hover: rgba(0,87,255,0.035);
    --table-border: rgba(0,0,0,0.06);
    /* Input */
    --input-bg: #FFFFFF;
    --input-border: rgba(0,0,0,0.14);
    --input-focus: rgba(0,87,255,0.38);
    /* Toast */
    --toast-bg: #FFFFFF;
    --toast-shadow: 0 8px 32px rgba(0,0,0,0.13);
    /* Radii */
    --radius-xs: 4px;
    --radius-sm: 7px;
    --radius-md: 11px;
    --radius-lg: 16px;
    --radius-xl: 22px;
    /* Shadows */
    --shadow-xs: 0 1px 3px rgba(0,0,0,0.07);
    --shadow-sm: 0 2px 10px rgba(0,0,0,0.09);
    --shadow-md: 0 4px 22px rgba(0,0,0,0.10);
    --shadow-lg: 0 8px 42px rgba(0,0,0,0.13);
    /* Transitions */
    --t-fast: 130ms cubic-bezier(0.4,0,0.2,1);
    --t-base: 210ms cubic-bezier(0.4,0,0.2,1);
    --t-slow: 340ms cubic-bezier(0.4,0,0.2,1);
    /* Typography */
    --font: "din-2014","DIN Pro","DIN Next","Helvetica Neue",Arial,sans-serif;
    --font-mono: "JetBrains Mono","Fira Code",ui-monospace,monospace;
}

/* ── Dark mode tokens ─────────────────────────────────────────── */
[data-bs-theme="dark"][b-dvwc55b0ps],
[data-theme="dark"][b-dvwc55b0ps],
.dark-mode[b-dvwc55b0ps] {
    --bg-canvas: #080C14;
    --bg-surface: #0F1520;
    --bg-surface-2: #141C2C;
    --bg-surface-3: #1A2236;
    --text-primary: #E8EDF5;
    --text-secondary: #8A96AC;
    --text-muted: #4A5870;
    --border-subtle: rgba(255,255,255,0.05);
    --border-default: rgba(255,255,255,0.09);
    --border-strong: rgba(255,255,255,0.16);
    --table-header-bg: rgba(0,40,85,0.38);
    --table-row-hover: rgba(0,87,255,0.07);
    --table-border: rgba(255,255,255,0.06);
    --input-bg: #141C2C;
    --input-border: rgba(255,255,255,0.11);
    --toast-bg: #1A2236;
    --toast-shadow: 0 8px 32px rgba(0,0,0,0.50);
    --shadow-xs: 0 1px 3px rgba(0,0,0,0.32);
    --shadow-sm: 0 2px 10px rgba(0,0,0,0.38);
    --shadow-md: 0 4px 22px rgba(0,0,0,0.44);
    --shadow-lg: 0 8px 42px rgba(0,0,0,0.55);
    --warn-bg: rgba(255,193,7,0.13);
    --warn-border: rgba(255,193,7,0.42);
    --warn-text: #f5cc50;
    --warn-alert-bg: rgba(255,193,7,0.11);
    --warn-alert-border: rgba(255,193,7,0.38);
    --danger-bg: rgba(220,53,69,0.15);
    --danger-border: rgba(220,53,69,0.48);
    --danger-text: #f4a0aa;
}

/* ── 2. Base ──────────────────────────────────────────────────── */
*[b-dvwc55b0ps], *[b-dvwc55b0ps]::before, *[b-dvwc55b0ps]::after {
    box-sizing: border-box;
}

.bo-layout *[b-dvwc55b0ps], .bo-layout *[b-dvwc55b0ps]::before, .bo-layout *[b-dvwc55b0ps]::after {
    font-family: var(--font);
    -webkit-font-smoothing: antialiased;
}

/* ── 3. Layout shell ─────────────────────────────────────────── */
/* The bo-layout wrapper must be full-bleed — no margin or padding */
.bo-layout[b-dvwc55b0ps],
.lookup-shell[b-dvwc55b0ps] {
    display: flex;
    min-height: 100vh;
    min-height: 100dvh;
    width: 100%;
    margin: 0 !important;
    padding: 0 !important;
    background: var(--bg-canvas);
    color: var(--text-primary);
    transition: background var(--t-base);
    align-items: stretch;
    gap: 0;
    box-sizing: border-box;
    /* Ensure it starts at the very top-left with no inherited gap */
    position: relative;
    left: 0;
    top: 0;
}

/* ── 4. Sidebar ──────────────────────────────────────────────── */
/*
  The sidebar is ALWAYS dark navy (#0B0F19) regardless of the page
  light/dark mode. Bootstrap injects its own button color/bg on the
  nav-link <button> elements — we beat every override with !important.
*/
.bo-sidenav[b-dvwc55b0ps],
.lookup-sidebar[b-dvwc55b0ps] {
    width: var(--sidebar-width);
    min-width: var(--sidebar-width);
    flex-shrink: 0;
    /* Full page height — goes all the way to the bottom */
    min-height: 100vh;
    min-height: 100dvh;
    height: auto;
    position: sticky;
    top: 0;
    align-self: stretch;
    max-height: none;
    /* Light mode: eggshell off-white — clearly different from the grey canvas */
    background: #EEF3FA !important;
    overflow-y: auto;
    overflow-x: hidden;
    scrollbar-width: thin;
    scrollbar-color: rgba(0,40,85,0.25) transparent;
    border-right: 2px solid rgba(0,40,85,0.15);
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box;
    z-index: 100;
    transition: width var(--t-base), min-width var(--t-base), transform var(--t-base);
    display: flex;
    flex-direction: column;
}

/* Kill any inherited page margin/padding */
body:has(.bo-layout)[b-dvwc55b0ps],
body:has(.lookup-shell)[b-dvwc55b0ps] {
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: hidden;
}

.bo-sidenav.collapsed[b-dvwc55b0ps],
.lookup-sidebar.collapsed[b-dvwc55b0ps] {
    width: 0;
    min-width: 0;
    overflow: hidden;
}

/* On desktop (≥769px) the sidebar is ALWAYS visible — ignore collapsed state */
@media (min-width: 769px) {
    .bo-sidenav[b-dvwc55b0ps],
    .lookup-sidebar[b-dvwc55b0ps],
    .bo-sidenav.collapsed[b-dvwc55b0ps],
    .lookup-sidebar.collapsed[b-dvwc55b0ps] {
        width: var(--sidebar-width) !important;
        min-width: var(--sidebar-width) !important;
        transform: none !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        pointer-events: auto !important;
        display: flex !important;
    }

    /* Hide mobile-only elements on desktop */
    .bo-mobile-hamburger[b-dvwc55b0ps],
    .bo-drawer-close[b-dvwc55b0ps],
    .bo-sidebar-backdrop[b-dvwc55b0ps] {
        display: none !important;
    }
}

/* ── Inner nav wrapper ───────────────────────────────────────── */
.backoffice-sidenav[b-dvwc55b0ps] {
    /* Bottom padding = fixed footer height (38px) + comfortable clearance (20px)
       so the last nav item is never hidden behind the .iac-login-footer bar */
    padding: 4px 0 58px;
    display: flex;
    flex: 1 1 auto;
    min-height: min-content;
    flex-direction: column;
}

/* ── "Back Office" brand title ───────────────────────────────── */
.lookup-title[b-dvwc55b0ps] {
    padding: 18px 16px 14px;
    border-bottom: 1px solid rgba(241,184,40,0.22);
    margin-bottom: 4px;
}

    .lookup-title h3[b-dvwc55b0ps] {
        font-size: 17px !important;
        font-weight: 900 !important;
        letter-spacing: 0.08em !important;
        text-transform: uppercase !important;
        /* Light mode: IAC blue so it pops on eggshell */
        color: #002855 !important;
        margin: 0 !important;
        line-height: 1.2;
        display: flex;
        align-items: center;
        gap: 0;
    }

        /* Chevron appears AFTER "Back Office", not before */
        .lookup-title h3[b-dvwc55b0ps]::before {
            display: none;
        }

        .lookup-title h3[b-dvwc55b0ps]::after {
            content: " »";
            color: rgba(241,184,40,0.65);
            font-size: 0.9em;
            line-height: 1;
            font-weight: 900;
            margin-left: 4px;
        }

/* ── Section / category labels ───────────────────────────────── */
/* Just bold + bigger — no glow, no border, no box-shadow */
.quote-title[b-dvwc55b0ps] {
    font-size: 11px !important;
    font-weight: 900 !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    /* Slightly lighter navy on eggshell — clearly a group heading */
    color: #2E4A70 !important;
    padding: 16px 18px 6px 18px !important;
    user-select: none;
    margin-bottom: 1px;
    display: block;
    /* NO border-left, NO box-shadow, NO glow — just strong typography */
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

/* ── Collapsible section toggle headers ─────────────────────── */
button.bo-section-toggle[b-dvwc55b0ps] {
    appearance: none !important;
    -webkit-appearance: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    cursor: pointer !important;
    border-radius: 6px !important;
    transition: background 0.15s !important;
    padding-right: 10px !important;
}

    button.bo-section-toggle:hover[b-dvwc55b0ps] {
        background: rgba(46, 74, 112, 0.08) !important;
    }

[data-bs-theme="dark"] button.bo-section-toggle:hover[b-dvwc55b0ps],
[data-theme="dark"] button.bo-section-toggle:hover[b-dvwc55b0ps] {
    background: rgba(255,255,255,0.06) !important;
}

/* Expand/Collapse label — hidden at rest, fades in on hover */
.bo-section-icon[b-dvwc55b0ps] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 2px 7px !important;
    border-radius: 20px !important;
    font-size: 9px !important;
    font-weight: 800 !important;
    letter-spacing: 0.07em !important;
    text-transform: uppercase !important;
    line-height: 1.5 !important;
    flex-shrink: 0 !important;
    white-space: nowrap !important;
    opacity: 0 !important;
    transform: translateX(4px) scale(0.88) !important;
    transition: opacity 0.18s ease, transform 0.18s ease !important;
    background: #2E4A70 !important;
    color: #ffffff !important;
    border: none !important;
    pointer-events: none !important;
}

button.bo-section-toggle:hover .bo-section-icon[b-dvwc55b0ps] {
    opacity: 1 !important;
    transform: translateX(0) scale(1) !important;
}

[data-bs-theme="dark"] .bo-section-icon[b-dvwc55b0ps],
[data-theme="dark"] .bo-section-icon[b-dvwc55b0ps] {
    background: #F1B828 !important;
    color: #002855 !important;
}


/* ── Nav link buttons ────────────────────────────────────────── */
/*
  These are <button type="button"> — Bootstrap 5 sets:
    color: var(--bs-btn-color)  → often dark text
    background-color: transparent
    border-color: transparent
  We need !important on color, background, and border to win.
*/
.bo-sidenav .backoffice-sidenav .nav-link[b-dvwc55b0ps],
.lookup-sidebar .backoffice-sidenav .nav-link[b-dvwc55b0ps],
.backoffice-sidenav button.nav-link[b-dvwc55b0ps] {
    /* Kill Bootstrap button defaults */
    appearance: none !important;
    -webkit-appearance: none !important;
    /* Typography */
    font-family: var(--font) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 0.01em !important;
    line-height: 1.45 !important;
    /* Light mode: dark navy text on eggshell bg */
    color: #3A4E6A !important;
    /* Layout */
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    text-align: left !important;
    padding: 9px 16px 9px 14px !important;
    margin: 0 8px 0 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    cursor: pointer !important;
    /* Borders */
    background: transparent !important;
    border: none !important;
    border-left: 3px solid transparent !important;
    border-radius: 0 6px 6px 0 !important;
    /* Kill Bootstrap focus ring / box-shadow */
    box-shadow: none !important;
    outline: none !important;
    transition: color 120ms ease, background 120ms ease, border-color 120ms ease !important;
}

    /* HOVER — on eggshell light: navy bg tint + dark text */
    .bo-sidenav .backoffice-sidenav .nav-link:hover[b-dvwc55b0ps],
    .lookup-sidebar .backoffice-sidenav .nav-link:hover[b-dvwc55b0ps],
    .backoffice-sidenav button.nav-link:hover[b-dvwc55b0ps] {
        color: #0A1C35 !important;
        background: rgba(0,40,85,0.08) !important;
        border-left-color: rgba(0,40,85,0.45) !important;
        box-shadow: none !important;
    }

/* HOVER dark mode override */
[data-bs-theme="dark"] .bo-sidenav .backoffice-sidenav .nav-link:hover[b-dvwc55b0ps],
[data-theme="dark"] .bo-sidenav .backoffice-sidenav .nav-link:hover[b-dvwc55b0ps] {
    color: #E8F0FA !important;
    background: rgba(255,255,255,0.08) !important;
    border-left-color: rgba(241,184,40,0.60) !important;
}

/* FOCUS */
.bo-sidenav .backoffice-sidenav .nav-link:focus[b-dvwc55b0ps],
.backoffice-sidenav button.nav-link:focus[b-dvwc55b0ps],
.backoffice-sidenav button.nav-link:focus-visible[b-dvwc55b0ps] {
    color: #E8F0FA !important;
    background: rgba(255,255,255,0.07) !important;
    border-left-color: rgba(241,184,40,0.40) !important;
    box-shadow: none !important;
    outline: none !important;
}

/* ACTIVE — light mode: solid IAC blue fill, white text, gold border */
.bo-sidenav .backoffice-sidenav .nav-link.active[b-dvwc55b0ps],
.lookup-sidebar .backoffice-sidenav .nav-link.active[b-dvwc55b0ps],
.backoffice-sidenav button.nav-link.active[b-dvwc55b0ps] {
    color: #FFFFFF !important;
    background: linear-gradient(90deg, #1A4A8A 0%, #0E3268 100%) !important;
    border-left-color: var(--iac-gold) !important;
    font-weight: 700 !important;
    box-shadow: 0 1px 6px rgba(0,40,85,0.22) !important;
}

    /* ACTIVE + HOVER */
    .bo-sidenav .backoffice-sidenav .nav-link.active:hover[b-dvwc55b0ps],
    .backoffice-sidenav button.nav-link.active:hover[b-dvwc55b0ps] {
        background: linear-gradient(90deg, #1F5499 0%, #123A7A 100%) !important;
        border-left-color: var(--iac-gold) !important;
    }

/* Collapsed sidebar */
.bo-sidenav.collapsed .backoffice-sidenav .nav-link[b-dvwc55b0ps] {
    padding: 10px !important;
    text-align: center !important;
    border-radius: 0 !important;
    margin-right: 0 !important;
}

/* Dark mode — sidebar is already always dark, just deepen slightly */
:root[data-bs-theme="dark"] .bo-sidenav[b-dvwc55b0ps],
[data-bs-theme="dark"] .bo-sidenav[b-dvwc55b0ps],
[data-theme="dark"] .bo-sidenav[b-dvwc55b0ps] {
    background: #050810 !important;
    border-right-color: rgba(241,184,40,0.28) !important;
}

[data-bs-theme="dark"] .backoffice-sidenav .nav-link.active[b-dvwc55b0ps],
[data-theme="dark"] .backoffice-sidenav .nav-link.active[b-dvwc55b0ps] {
    color: #fff !important;
    background: linear-gradient(90deg, rgba(0,87,255,0.40) 0%, rgba(0,87,255,0.14) 100%) !important;
    border-left-color: var(--iac-gold) !important;
}

/* Dark mode: idle nav-link text — bright enough to read on very dark bg */
[data-bs-theme="dark"] .bo-sidenav .backoffice-sidenav .nav-link[b-dvwc55b0ps],
[data-theme="dark"] .bo-sidenav .backoffice-sidenav .nav-link[b-dvwc55b0ps] {
    color: #7A8EA8 !important;
}

/* Dark mode: section label color */
[data-bs-theme="dark"] .quote-title[b-dvwc55b0ps],
[data-theme="dark"] .quote-title[b-dvwc55b0ps] {
    color: #5A7A9E !important;
}

/* Dark mode: Back Office title */
[data-bs-theme="dark"] .lookup-title h3[b-dvwc55b0ps],
[data-theme="dark"] .lookup-title h3[b-dvwc55b0ps] {
    color: var(--iac-gold) !important;
}

/* ── 5. Toggle button (mobile) ───────────────────────────────── */
.bo-toggle[b-dvwc55b0ps] {
    font-family: var(--font);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.05em;
    border-radius: var(--radius-sm);
}

/* ── Mobile hamburger button (inline, top of content) ────────── */
.bo-mobile-hamburger[b-dvwc55b0ps] {
    display: none; /* shown via d-flex d-md-none in markup */
    align-items: center;
    justify-content: center;
    gap: 6px;
    height: 36px;
    padding: 0 12px;
    margin-bottom: 6px;
    background: rgba(0,40,85,0.08);
    border: 1px solid rgba(0,40,85,0.18);
    border-radius: var(--radius-sm);
    cursor: pointer;
    font-family: var(--font);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.04em;
    color: #002855;
    transition: background var(--t-fast), border-color var(--t-fast);
}

    .bo-mobile-hamburger:hover[b-dvwc55b0ps] {
        background: rgba(0,40,85,0.15);
    }

.bo-hamburger-icon[b-dvwc55b0ps] {
    font-size: 17px;
    line-height: 1;
}

.bo-hamburger-label[b-dvwc55b0ps] {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 0.07em;
}

[data-bs-theme="dark"] .bo-mobile-hamburger[b-dvwc55b0ps],
[data-theme="dark"] .bo-mobile-hamburger[b-dvwc55b0ps] {
    color: var(--iac-gold);
    background: rgba(241,184,40,0.08);
    border-color: rgba(241,184,40,0.28);
}

/* Close button inside the drawer */
.bo-drawer-close[b-dvwc55b0ps] {
    display: none; /* shown via d-md-none in markup */
    position: absolute;
    top: 10px;
    right: 10px;
    width: 32px;
    height: 32px;
    background: rgba(0,40,85,0.08);
    border: 1px solid rgba(0,40,85,0.18);
    border-radius: 50%;
    font-size: 20px;
    line-height: 1;
    cursor: pointer;
    align-items: center;
    justify-content: center;
    color: #002855;
    padding: 0;
    z-index: 10;
    transition: background var(--t-fast);
}

    .bo-drawer-close:hover[b-dvwc55b0ps] {
        background: rgba(0,40,85,0.15);
    }

[data-bs-theme="dark"] .bo-drawer-close[b-dvwc55b0ps],
[data-theme="dark"] .bo-drawer-close[b-dvwc55b0ps] {
    color: var(--iac-gold);
    border-color: rgba(241,184,40,0.28);
    background: rgba(241,184,40,0.08);
}

/* Backdrop behind open drawer */
.bo-sidebar-backdrop[b-dvwc55b0ps] {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.45);
    z-index: 1039;
    backdrop-filter: blur(2px);
    animation: bo-fade-in-b-dvwc55b0ps 200ms ease forwards;
}

@keyframes bo-fade-in-b-dvwc55b0ps {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* ── 6. Main area ────────────────────────────────────────────── */
.bo-main[b-dvwc55b0ps] {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    background: var(--bg-canvas);
    padding: 28px 32px 52px;
    transition: background var(--t-base);
    overflow-x: hidden;
}

.bo-main-header[b-dvwc55b0ps] {
    height: 0;
    margin-bottom: 1rem;
}

.bo-main-title[b-dvwc55b0ps] {
    font-size: 1.4rem;
    font-weight: 700;
    color: var(--text-primary);
    letter-spacing: 0.01em;
}

.bo-main-caret[b-dvwc55b0ps] {
    color: var(--iac-gold);
}

.bo-main-filters .form-label[b-dvwc55b0ps] {
    font-size: 0.8rem;
    font-weight: 600;
}

/* ── 7. Backoffice heading ───────────────────────────────────── */
.backoffice-heading[b-dvwc55b0ps] {
    font-size: 1.45rem;
    font-weight: 700;
    letter-spacing: 0.03em;
    color: var(--iac-blue);
    margin-bottom: 0.25rem;
    display: inline-flex;
    align-items: center;
    gap: 8px;
    white-space: nowrap;
    padding-left: 0;
}

    .backoffice-heading[b-dvwc55b0ps]::after {
        content: "»";
        font-size: 0.7rem;
        color: var(--iac-gold);
        font-weight: 900;
    }

[data-bs-theme="dark"] .backoffice-heading[b-dvwc55b0ps],
[data-theme="dark"] .backoffice-heading[b-dvwc55b0ps] {
    color: #c8d8ea;
}

/* ── 8. Section shells ───────────────────────────────────────── */
.backoffice-section[b-dvwc55b0ps] {
    /* White surface on grey canvas — clear separation */
    background: #FFFFFF;
    border: 1px solid rgba(0,40,85,0.13);
    border-radius: var(--radius-lg);
    box-shadow: 0 2px 14px rgba(0,20,60,0.09), 0 1px 3px rgba(0,0,0,0.06);
    padding: 28px;
    margin-bottom: 24px;
    transition: border-color var(--t-base), background var(--t-base);
}

[data-bs-theme="dark"] .backoffice-section[b-dvwc55b0ps],
[data-theme="dark"] .backoffice-section[b-dvwc55b0ps] {
    background: #0F1520 !important;
    border-color: rgba(255,255,255,0.08) !important;
    box-shadow: 0 2px 14px rgba(0,0,0,0.48) !important;
}

.bo-section-header[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 4px;
}

.bo-section-header-sub[b-dvwc55b0ps] {
    font-size: 12.5px;
    color: var(--text-muted);
    margin-bottom: 20px;
}

/* ── 9. Sticky bar ───────────────────────────────────────────── */
.bo-sticky[b-dvwc55b0ps] {
    position: sticky;
    top: 56px;
    z-index: 1030;
    background: var(--bg-canvas);
    padding: 0.5rem 0 0.75rem;
    margin-bottom: 1rem;
    border-bottom: 1px solid var(--border-subtle);
    box-shadow: 0 2px 8px rgba(0,0,0,0.05);
}

/* ── 10. Users shell ─────────────────────────────────────────── */
.bo-users-shell[b-dvwc55b0ps] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    width: 100%;
    box-sizing: border-box;
}

/* Users panel header */
.bo-users-header[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.9rem 1.25rem;
    border-radius: var(--radius-md);
    background: linear-gradient(100deg, #002855 0%, #001428 55%, #00112a 100%);
    color: #fff;
    gap: 1rem;
    box-shadow: 0 4px 18px rgba(0,20,60,0.22);
}

.bo-users-title[b-dvwc55b0ps] {
    display: flex;
    flex-direction: column;
    gap: 3px;
}

.bo-users-title-text[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    font-family: var(--font);
    font-size: 1.1rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #fff;
}

    .bo-users-title-text .chevrons[b-dvwc55b0ps] {
        font-size: 1rem;
        color: var(--iac-gold);
        line-height: 1;
    }

.bo-users-count[b-dvwc55b0ps] {
    font-weight: 400;
    font-size: 0.82rem;
    color: rgba(255,255,255,0.80);
}

.bo-users-subtitle[b-dvwc55b0ps] {
    margin-top: 1px;
    opacity: 0.70;
    color: #fff;
    font-size: 0.82rem;
}

.bo-users-controls[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    flex-wrap: wrap;
}

/* ── 11. Search ──────────────────────────────────────────────── */
.bo-search-icon[b-dvwc55b0ps] {
    position: absolute;
    left: 0.55rem;
    top: 50%;
    transform: translateY(-50%);
    font-size: 0.82rem;
    opacity: 0.55;
    pointer-events: none;
    z-index: 1;
}

.bo-search-input[b-dvwc55b0ps] {
    font-family: var(--font);
    font-size: 13px;
    background: var(--input-bg);
    border: 1px solid var(--input-border);
    border-radius: var(--radius-sm);
    color: var(--text-primary);
    /* Increased left padding to clear the search icon (was 28px) */
    padding: 7px 32px 7px 34px;
    width: 100%;
    outline: none;
    transition: border-color var(--t-fast), box-shadow var(--t-fast);
}

    .bo-search-input[b-dvwc55b0ps]::placeholder {
        color: var(--text-muted);
    }

    .bo-search-input:focus[b-dvwc55b0ps] {
        border-color: var(--iac-accent);
        box-shadow: 0 0 0 3px var(--iac-accent-glow);
    }

.bo-search-clear[b-dvwc55b0ps] {
    position: absolute;
    right: 0.4rem;
    top: 50%;
    transform: translateY(-50%);
    background: none;
    border: none;
    padding: 0 0.2rem;
    font-size: 1rem;
    line-height: 1;
    color: var(--text-muted);
    cursor: pointer;
    z-index: 2;
    transition: color var(--t-fast);
}

    .bo-search-clear:hover[b-dvwc55b0ps] {
        color: var(--text-primary);
    }

/* Autocomplete dropdown */
.autocomplete-dropdown[b-dvwc55b0ps] {
    position: absolute;
    top: calc(100% + 5px);
    left: 0;
    right: 0;
    background: var(--bg-surface);
    border: 1px solid var(--border-default);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-md);
    z-index: 999;
    max-height: 290px;
    overflow-y: auto;
    padding: 4px 0;
    list-style: none;
    margin: 0;
}

    .autocomplete-dropdown li[b-dvwc55b0ps],
    .autocomplete-dropdown .dropdown-item[b-dvwc55b0ps] {
        font-family: var(--font);
        font-size: 13px;
        color: var(--text-primary);
        padding: 8px 14px;
        cursor: pointer;
        transition: background var(--t-fast);
    }

/* ── 12. Users card & table ──────────────────────────────────── */
.bo-users-card[b-dvwc55b0ps] {
    background: var(--bg-surface);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-xs);
    overflow: hidden;
}

:root:not([data-bs-theme="dark"]) .bo-users-card[b-dvwc55b0ps] {
    background: #f8fafe;
}

    :root:not([data-bs-theme="dark"]) .bo-users-card .users-table thead th[b-dvwc55b0ps] {
        background: #e4ecf7;
        color: #002855;
        border-bottom: 2px solid #c5d4e8;
    }

.bo-users-card .table-scroll[b-dvwc55b0ps] {
    max-height: 480px;
    overflow-y: auto;
}

.bo-users-add[b-dvwc55b0ps] {
    border-radius: var(--radius-md);
    border: 1px solid var(--border-subtle);
}

.bo-users-footer[b-dvwc55b0ps] {
    margin-top: 0.5rem;
}

/* ── Row striping — td-targeted so ALL columns (first, last, any class) match ──
   Applying background to > td instead of tr avoids the sticky-cell bleed-through
   issue where first/last columns show wrong color due to their own bg context.
──────────────────────────────────────────────────────────────────────────────── */

/* LIGHT MODE */
:root:not([data-bs-theme="dark"]) .table tbody tr:nth-child(even) > td[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .users-table tbody tr.bo-user-row:nth-child(even) > td[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .quotes-table tbody tr:nth-child(even) > td[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .myquotes-table tbody tr:nth-child(even) > td[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .order-review-table tbody tr:nth-child(even) > td[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .dep-pay-terms-table tbody tr:nth-child(even) > td[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .quotes-table--pricing tbody tr:nth-child(even) > td[b-dvwc55b0ps] {
    background-color: #EEF4FD !important;
}

:root:not([data-bs-theme="dark"]) .table tbody tr:nth-child(odd) > td[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .users-table tbody tr.bo-user-row:nth-child(odd) > td[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .quotes-table tbody tr:nth-child(odd) > td[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .myquotes-table tbody tr:nth-child(odd) > td[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .order-review-table tbody tr:nth-child(odd) > td[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .dep-pay-terms-table tbody tr:nth-child(odd) > td[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .quotes-table--pricing tbody tr:nth-child(odd) > td[b-dvwc55b0ps] {
    background-color: #FFFFFF !important;
}

/* Light hover */
:root:not([data-bs-theme="dark"]) .table tbody tr:hover > td[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .users-table tbody tr.bo-user-row:hover > td[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .quotes-table tbody tr:hover > td[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .myquotes-table tbody tr:hover > td[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .order-review-table tbody tr:hover > td[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .dep-pay-terms-table tbody tr:hover > td[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .quotes-table--pricing tbody tr:hover > td[b-dvwc55b0ps] {
    background-color: #DCE8F8 !important;
}

/* Warning/danger rows win over striping */
:root:not([data-bs-theme="dark"]) .users-table tbody tr.bo-row--warn > td[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .users-table tbody tr.bo-row--warn:nth-child(even) > td[b-dvwc55b0ps] {
    background-color: var(--warn-bg) !important;
}

:root:not([data-bs-theme="dark"]) .users-table tbody tr.bo-row--danger > td[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .users-table tbody tr.bo-row--danger:nth-child(even) > td[b-dvwc55b0ps] {
    background-color: var(--danger-bg) !important;
}

/* DARK MODE — odd rows flush with container, even rows one step up */
[data-bs-theme="dark"] .table tbody tr:nth-child(odd) > td[b-dvwc55b0ps],
[data-theme="dark"] .table tbody tr:nth-child(odd) > td[b-dvwc55b0ps],
[data-bs-theme="dark"] .users-table tbody tr.bo-user-row:nth-child(odd) > td[b-dvwc55b0ps],
[data-theme="dark"] .users-table tbody tr.bo-user-row:nth-child(odd) > td[b-dvwc55b0ps],
[data-bs-theme="dark"] .quotes-table tbody tr:nth-child(odd) > td[b-dvwc55b0ps],
[data-theme="dark"] .quotes-table tbody tr:nth-child(odd) > td[b-dvwc55b0ps],
[data-bs-theme="dark"] .myquotes-table tbody tr:nth-child(odd) > td[b-dvwc55b0ps],
[data-theme="dark"] .myquotes-table tbody tr:nth-child(odd) > td[b-dvwc55b0ps],
[data-bs-theme="dark"] .order-review-table tbody tr:nth-child(odd) > td[b-dvwc55b0ps],
[data-theme="dark"] .order-review-table tbody tr:nth-child(odd) > td[b-dvwc55b0ps],
[data-bs-theme="dark"] .dep-pay-terms-table tbody tr:nth-child(odd) > td[b-dvwc55b0ps],
[data-theme="dark"] .dep-pay-terms-table tbody tr:nth-child(odd) > td[b-dvwc55b0ps],
[data-bs-theme="dark"] .quotes-table--pricing tbody tr:nth-child(odd) > td[b-dvwc55b0ps],
[data-theme="dark"] .quotes-table--pricing tbody tr:nth-child(odd) > td[b-dvwc55b0ps] {
    background-color: #0F1520 !important;
}

[data-bs-theme="dark"] .table tbody tr:nth-child(even) > td[b-dvwc55b0ps],
[data-theme="dark"] .table tbody tr:nth-child(even) > td[b-dvwc55b0ps],
[data-bs-theme="dark"] .users-table tbody tr.bo-user-row:nth-child(even) > td[b-dvwc55b0ps],
[data-theme="dark"] .users-table tbody tr.bo-user-row:nth-child(even) > td[b-dvwc55b0ps],
[data-bs-theme="dark"] .quotes-table tbody tr:nth-child(even) > td[b-dvwc55b0ps],
[data-theme="dark"] .quotes-table tbody tr:nth-child(even) > td[b-dvwc55b0ps],
[data-bs-theme="dark"] .myquotes-table tbody tr:nth-child(even) > td[b-dvwc55b0ps],
[data-theme="dark"] .myquotes-table tbody tr:nth-child(even) > td[b-dvwc55b0ps],
[data-bs-theme="dark"] .order-review-table tbody tr:nth-child(even) > td[b-dvwc55b0ps],
[data-theme="dark"] .order-review-table tbody tr:nth-child(even) > td[b-dvwc55b0ps],
[data-bs-theme="dark"] .dep-pay-terms-table tbody tr:nth-child(even) > td[b-dvwc55b0ps],
[data-theme="dark"] .dep-pay-terms-table tbody tr:nth-child(even) > td[b-dvwc55b0ps],
[data-bs-theme="dark"] .quotes-table--pricing tbody tr:nth-child(even) > td[b-dvwc55b0ps],
[data-theme="dark"] .quotes-table--pricing tbody tr:nth-child(even) > td[b-dvwc55b0ps] {
    background-color: #141C2C !important;
}

/* Dark hover */
[data-bs-theme="dark"] .table tbody tr:hover > td[b-dvwc55b0ps],
[data-theme="dark"] .table tbody tr:hover > td[b-dvwc55b0ps],
[data-bs-theme="dark"] .users-table tbody tr.bo-user-row:hover > td[b-dvwc55b0ps],
[data-theme="dark"] .users-table tbody tr.bo-user-row:hover > td[b-dvwc55b0ps],
[data-bs-theme="dark"] .quotes-table tbody tr:hover > td[b-dvwc55b0ps],
[data-theme="dark"] .quotes-table tbody tr:hover > td[b-dvwc55b0ps],
[data-bs-theme="dark"] .myquotes-table tbody tr:hover > td[b-dvwc55b0ps],
[data-theme="dark"] .myquotes-table tbody tr:hover > td[b-dvwc55b0ps],
[data-bs-theme="dark"] .quotes-table--pricing tbody tr:hover > td[b-dvwc55b0ps],
[data-theme="dark"] .quotes-table--pricing tbody tr:hover > td[b-dvwc55b0ps] {
    background-color: rgba(0,87,255,0.09) !important;
}

.bo-user-avatar[b-dvwc55b0ps] {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: radial-gradient(circle at 30% 30%, #F1B828 0%, #F1B828 35%, #002855 100%);
    color: #002855;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.88rem;
    text-transform: uppercase;
    flex-shrink: 0;
    user-select: none;
}

.bo-user-name[b-dvwc55b0ps] {
    font-weight: 600;
    font-size: 0.93rem;
    color: var(--text-primary);
    line-height: 1.3;
}

.bo-user-email[b-dvwc55b0ps] {
    font-size: 0.78rem;
    color: var(--text-muted);
}

.bo-eye-btn[b-dvwc55b0ps] {
    color: inherit;
    text-decoration: none;
}

    .bo-eye-btn:hover .bo-eye-icon[b-dvwc55b0ps] {
        transform: scale(1.08);
    }

.bo-eye-icon[b-dvwc55b0ps] {
    font-size: 1rem;
    line-height: 1;
    transition: transform 0.12s ease;
}

[data-bs-theme="dark"] .bo-users-card[b-dvwc55b0ps],
[data-theme="dark"] .bo-users-card[b-dvwc55b0ps] {
    background: #0F1520 !important;
    border-color: rgba(255,255,255,0.08) !important;
}


/* ── Dark mode: panel/container sweep ───────────────────────────
   Any surface inside a BackOffice panel on dark must be explicitly
   dark — this covers modals, inner wrappers, and custom containers.
───────────────────────────────────────────────────────────────── */
[data-bs-theme="dark"] .bo-users-shell .card[b-dvwc55b0ps],
[data-theme="dark"] .bo-users-shell .card[b-dvwc55b0ps],
[data-bs-theme="dark"] .bo-users-shell .backoffice-section[b-dvwc55b0ps],
[data-theme="dark"] .bo-users-shell .backoffice-section[b-dvwc55b0ps],
[data-bs-theme="dark"] .bo-users-shell .table-scroll[b-dvwc55b0ps],
[data-theme="dark"] .bo-users-shell .table-scroll[b-dvwc55b0ps],
[data-bs-theme="dark"] .bo-users-shell .bo-users-card[b-dvwc55b0ps],
[data-theme="dark"] .bo-users-shell .bo-users-card[b-dvwc55b0ps] {
    background: #0F1520 !important;
    border-color: rgba(255,255,255,0.08) !important;
}

/* Panel card body in dark mode */
[data-bs-theme="dark"] .card .card-body[b-dvwc55b0ps],
[data-theme="dark"] .card .card-body[b-dvwc55b0ps] {
    color: var(--text-secondary);
}

/* ── 13. Toggle switch ───────────────────────────────────────── */
/* Modern pill toggle — IAC blue ON, neutral grey OFF */
.bo-switch[b-dvwc55b0ps] {
    position: relative;
    display: inline-flex;
    align-items: center;
    width: 48px;
    height: 26px;
    flex-shrink: 0;
}

    .bo-switch input[b-dvwc55b0ps] {
        opacity: 0;
        width: 0;
        height: 0;
        position: absolute;
    }

.bo-slider[b-dvwc55b0ps] {
    position: absolute;
    inset: 0;
    cursor: pointer;
    background: #8A9BAE;
    border-radius: 999px;
    border: 1.5px solid rgba(0,0,0,0.10);
    transition: background 0.20s ease, border-color 0.20s ease, box-shadow 0.20s ease;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.15);
}

    .bo-slider[b-dvwc55b0ps]::before {
        content: "";
        position: absolute;
        width: 18px;
        height: 18px;
        top: 3px;
        left: 3px;
        background: #fff;
        border-radius: 50%;
        box-shadow: 0 1px 5px rgba(0,0,0,0.28), 0 0 0 1px rgba(0,0,0,0.06);
        transition: transform 0.20s cubic-bezier(0.34,1.3,0.64,1);
    }

.bo-switch input:checked + .bo-slider[b-dvwc55b0ps] {
    background: linear-gradient(135deg, #0057FF 0%, #003FB8 100%);
    border-color: #0040CC;
    box-shadow: 0 0 0 3px rgba(0,87,255,0.20), inset 0 1px 3px rgba(0,0,0,0.10);
}

    .bo-switch input:checked + .bo-slider[b-dvwc55b0ps]::before {
        transform: translateX(22px);
        box-shadow: 0 2px 6px rgba(0,40,180,0.30), 0 0 0 1px rgba(0,0,0,0.06);
    }

.bo-switch input:focus-visible + .bo-slider[b-dvwc55b0ps] {
    outline: 2px solid #0057FF;
    outline-offset: 2px;
}

/* OFF label */
.bo-switch-wrap[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.bo-switch-label[b-dvwc55b0ps] {
    font-size: 12px;
    font-weight: 600;
    color: var(--text-secondary);
    user-select: none;
}

[data-bs-theme="dark"] .bo-slider[b-dvwc55b0ps],
[data-theme="dark"] .bo-slider[b-dvwc55b0ps],
.dark-mode .bo-slider[b-dvwc55b0ps] {
    background: #2E3F55;
    border-color: rgba(255,255,255,0.10);
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.40);
}

    [data-bs-theme="dark"] .bo-slider[b-dvwc55b0ps]::before,
    [data-theme="dark"] .bo-slider[b-dvwc55b0ps]::before,
    .dark-mode .bo-slider[b-dvwc55b0ps]::before {
        background: #8AA0BC;
    }

[data-bs-theme="dark"] .bo-switch input:checked + .bo-slider[b-dvwc55b0ps],
[data-theme="dark"] .bo-switch input:checked + .bo-slider[b-dvwc55b0ps],
.dark-mode .bo-switch input:checked + .bo-slider[b-dvwc55b0ps] {
    background: linear-gradient(135deg, #3A7FFF 0%, #1A5FE8 100%);
    border-color: #2260D8;
}

    [data-bs-theme="dark"] .bo-switch input:checked + .bo-slider[b-dvwc55b0ps]::before,
    [data-theme="dark"] .bo-switch input:checked + .bo-slider[b-dvwc55b0ps]::before,
    .dark-mode .bo-switch input:checked + .bo-slider[b-dvwc55b0ps]::before {
        background: #fff;
    }

[data-bs-theme="dark"] .bo-switch-label[b-dvwc55b0ps],
[data-theme="dark"] .bo-switch-label[b-dvwc55b0ps],
.dark-mode .bo-switch-label[b-dvwc55b0ps] {
    color: var(--text-secondary);
}

/* ── Bootstrap form-switch override (same visual system) ──────── */
.form-switch .form-check-input[b-dvwc55b0ps] {
    width: 48px !important;
    height: 26px !important;
    background-color: #8A9BAE !important;
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e") !important;
    background-position: left center !important;
    border: 1.5px solid rgba(0,0,0,0.10) !important;
    border-radius: var(--radius-sm) !important;
    transition: background-color 0.20s ease, border-color 0.20s ease, background-position 0.20s ease, box-shadow 0.20s ease !important;
    cursor: pointer !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.15) !important;
}

    .form-switch .form-check-input:checked[b-dvwc55b0ps] {
        background-color: #0057FF !important;
        border-color: #0040CC !important;
        background-position: right center !important;
        box-shadow: 0 0 0 3px rgba(0,87,255,0.20), inset 0 1px 3px rgba(0,0,0,0.10) !important;
    }

    .form-switch .form-check-input:focus[b-dvwc55b0ps] {
        box-shadow: 0 0 0 3px rgba(0,87,255,0.25) !important;
        outline: none !important;
    }

[data-bs-theme="dark"] .form-switch .form-check-input[b-dvwc55b0ps] {
    background-color: #2E3F55 !important;
    border-color: rgba(255,255,255,0.10) !important;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.40) !important;
}

    [data-bs-theme="dark"] .form-switch .form-check-input:checked[b-dvwc55b0ps] {
        background-color: #3A7FFF !important;
        border-color: #2260D8 !important;
    }

/* ── Checkboxes ───────────────────────────────────────────────── */
.form-check-input[type="checkbox"][b-dvwc55b0ps] {
    width: 18px !important;
    height: 18px !important;
    border: 2px solid #6080A0 !important;
    border-radius: 5px !important;
    background-color: #fff !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    cursor: pointer !important;
    transition: background 0.14s ease, border-color 0.14s ease, box-shadow 0.14s ease !important;
    flex-shrink: 0;
    position: relative;
    vertical-align: middle;
    outline: none !important;
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.08) !important;
}

    .form-check-input[type="checkbox"]:checked[b-dvwc55b0ps] {
        background-color: #0057FF !important;
        border-color: #0040CC !important;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' d='M3 8l3.5 3.5L13 4'/%3E%3C/svg%3E") !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: 11px !important;
        box-shadow: 0 0 0 3px rgba(0,87,255,0.18) !important;
    }

    .form-check-input[type="checkbox"]:indeterminate[b-dvwc55b0ps] {
        background-color: #0057FF !important;
        border-color: #0040CC !important;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2.5' stroke-linecap='round' d='M3 8h10'/%3E%3C/svg%3E") !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: 11px !important;
    }

    .form-check-input[type="checkbox"]:focus[b-dvwc55b0ps],
    .form-check-input[type="checkbox"]:focus-visible[b-dvwc55b0ps] {
        box-shadow: 0 0 0 3px rgba(0,87,255,0.25) !important;
        border-color: #0057FF !important;
        outline: none !important;
    }

    .form-check-input[type="checkbox"]:hover:not(:checked):not(:disabled)[b-dvwc55b0ps] {
        border-color: #0057FF !important;
        background-color: rgba(0,87,255,0.05) !important;
    }

    .form-check-input[type="checkbox"]:disabled[b-dvwc55b0ps] {
        opacity: 0.45 !important;
        cursor: not-allowed !important;
    }

[data-bs-theme="dark"] .form-check-input[type="checkbox"][b-dvwc55b0ps],
[data-theme="dark"] .form-check-input[type="checkbox"][b-dvwc55b0ps],
.dark-mode .form-check-input[type="checkbox"][b-dvwc55b0ps] {
    /* Clearly visible on dark canvas: lighter surface, bright border */
    background-color: #1C2738 !important;
    border-color: #6F93C3 !important;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.50), 0 0 0 1px rgba(111,147,195,0.20) !important;
}

    [data-bs-theme="dark"] .form-check-input[type="checkbox"]:hover:not(:checked):not(:disabled)[b-dvwc55b0ps],
    [data-theme="dark"] .form-check-input[type="checkbox"]:hover:not(:checked):not(:disabled)[b-dvwc55b0ps],
    .dark-mode .form-check-input[type="checkbox"]:hover:not(:checked):not(:disabled)[b-dvwc55b0ps] {
        background-color: #25364D !important;
        border-color: #8EB7F2 !important;
        box-shadow: inset 0 1px 3px rgba(0,0,0,0.52), 0 0 0 1px rgba(142,183,242,0.22) !important;
    }

    [data-bs-theme="dark"] .form-check-input[type="checkbox"]:checked[b-dvwc55b0ps],
    [data-theme="dark"] .form-check-input[type="checkbox"]:checked[b-dvwc55b0ps],
    .dark-mode .form-check-input[type="checkbox"]:checked[b-dvwc55b0ps] {
        /* IAC accent blue fill — bright and distinct on dark */
        background-color: #2C7BFF !important;
        border-color: #1B5FE0 !important;
        box-shadow: 0 0 0 3px rgba(44,123,255,0.30) !important;
    }

    [data-bs-theme="dark"] .form-check-input[type="checkbox"]:focus[b-dvwc55b0ps],
    [data-bs-theme="dark"] .form-check-input[type="checkbox"]:focus-visible[b-dvwc55b0ps],
    [data-theme="dark"] .form-check-input[type="checkbox"]:focus[b-dvwc55b0ps],
    [data-theme="dark"] .form-check-input[type="checkbox"]:focus-visible[b-dvwc55b0ps],
    .dark-mode .form-check-input[type="checkbox"]:focus[b-dvwc55b0ps],
    .dark-mode .form-check-input[type="checkbox"]:focus-visible[b-dvwc55b0ps] {
        border-color: #9CC2FF !important;
        box-shadow: 0 0 0 3px rgba(44,123,255,0.34) !important;
    }

    [data-bs-theme="dark"] .form-check-input[type="checkbox"]:indeterminate[b-dvwc55b0ps],
    [data-theme="dark"] .form-check-input[type="checkbox"]:indeterminate[b-dvwc55b0ps],
    .dark-mode .form-check-input[type="checkbox"]:indeterminate[b-dvwc55b0ps] {
        background-color: #2C7BFF !important;
        border-color: #1B5FE0 !important;
    }

    [data-bs-theme="dark"] .form-check-input[type="checkbox"]:disabled[b-dvwc55b0ps],
    [data-theme="dark"] .form-check-input[type="checkbox"]:disabled[b-dvwc55b0ps],
    .dark-mode .form-check-input[type="checkbox"]:disabled[b-dvwc55b0ps] {
        background-color: #162131 !important;
        border-color: rgba(111,147,195,0.45) !important;
        opacity: 0.55 !important;
        box-shadow: inset 0 1px 3px rgba(0,0,0,0.42) !important;
    }


[data-bs-theme="dark"] input[type="checkbox"]:not(.form-check-input)[b-dvwc55b0ps],
[data-theme="dark"] input[type="checkbox"]:not(.form-check-input)[b-dvwc55b0ps],
.dark-mode input[type="checkbox"]:not(.form-check-input)[b-dvwc55b0ps] {
    /* Match form-check-input dark mode appearance exactly */
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 18px !important;
    height: 18px !important;
    border: 2px solid #6F93C3 !important;
    border-radius: 5px !important;
    background-color: #1C2738 !important;
    cursor: pointer !important;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.50), 0 0 0 1px rgba(111,147,195,0.20) !important;
    transition: background 0.14s ease, border-color 0.14s ease, box-shadow 0.14s ease !important;
    flex-shrink: 0;
    position: relative;
    vertical-align: middle;
    outline: none !important;
}

    [data-bs-theme="dark"] input[type="checkbox"]:not(.form-check-input):checked[b-dvwc55b0ps],
    [data-theme="dark"] input[type="checkbox"]:not(.form-check-input):checked[b-dvwc55b0ps],
    .dark-mode input[type="checkbox"]:not(.form-check-input):checked[b-dvwc55b0ps] {
        background-color: #2C7BFF !important;
        border-color: #1B5FE0 !important;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' d='M3 8l3.5 3.5L13 4'/%3E%3C/svg%3E") !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: 11px !important;
        box-shadow: 0 0 0 3px rgba(44,123,255,0.30) !important;
    }

    [data-bs-theme="dark"] input[type="checkbox"]:not(.form-check-input):hover:not(:checked):not(:disabled)[b-dvwc55b0ps],
    [data-theme="dark"] input[type="checkbox"]:not(.form-check-input):hover:not(:checked):not(:disabled)[b-dvwc55b0ps],
    .dark-mode input[type="checkbox"]:not(.form-check-input):hover:not(:checked):not(:disabled)[b-dvwc55b0ps] {
        background-color: #25364D !important;
        border-color: #8EB7F2 !important;
        box-shadow: inset 0 1px 3px rgba(0,0,0,0.52), 0 0 0 1px rgba(142,183,242,0.22) !important;
    }

    [data-bs-theme="dark"] input[type="checkbox"]:not(.form-check-input):focus[b-dvwc55b0ps],
    [data-bs-theme="dark"] input[type="checkbox"]:not(.form-check-input):focus-visible[b-dvwc55b0ps],
    [data-theme="dark"] input[type="checkbox"]:not(.form-check-input):focus[b-dvwc55b0ps],
    [data-theme="dark"] input[type="checkbox"]:not(.form-check-input):focus-visible[b-dvwc55b0ps],
    .dark-mode input[type="checkbox"]:not(.form-check-input):focus[b-dvwc55b0ps],
    .dark-mode input[type="checkbox"]:not(.form-check-input):focus-visible[b-dvwc55b0ps] {
        border-color: #9CC2FF !important;
        box-shadow: 0 0 0 3px rgba(44,123,255,0.34) !important;
        outline: none !important;
    }

    [data-bs-theme="dark"] input[type="checkbox"]:not(.form-check-input):disabled[b-dvwc55b0ps],
    [data-theme="dark"] input[type="checkbox"]:not(.form-check-input):disabled[b-dvwc55b0ps],
    .dark-mode input[type="checkbox"]:not(.form-check-input):disabled[b-dvwc55b0ps] {
        background-color: #162131 !important;
        border-color: rgba(111,147,195,0.45) !important;
        opacity: 0.55 !important;
        cursor: not-allowed !important;
        box-shadow: inset 0 1px 3px rgba(0,0,0,0.42) !important;
    }

/* ── Radio buttons ────────────────────────────────────────────── */
.form-check-input[type="radio"][b-dvwc55b0ps] {
    width: 18px !important;
    height: 18px !important;
    border: 2px solid #6080A0 !important;
    border-radius: 50% !important;
    background: #fff !important;
    cursor: pointer !important;
    appearance: none !important;
    -webkit-appearance: none !important;
    transition: background 0.14s, border-color 0.14s, box-shadow 0.14s !important;
    position: relative;
    flex-shrink: 0;
    vertical-align: middle;
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.08) !important;
}

    .form-check-input[type="radio"]:checked[b-dvwc55b0ps] {
        background-color: #0057FF !important;
        border-color: #0040CC !important;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Ccircle cx='8' cy='8' r='3.5' fill='%23fff'/%3E%3C/svg%3E") !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        box-shadow: 0 0 0 3px rgba(0,87,255,0.18) !important;
    }

    .form-check-input[type="radio"]:focus[b-dvwc55b0ps] {
        box-shadow: 0 0 0 3px rgba(0,87,255,0.25) !important;
        border-color: #0057FF !important;
        outline: none !important;
    }

[data-bs-theme="dark"] .form-check-input[type="radio"][b-dvwc55b0ps] {
    background-color: #1E2A3E !important;
    border-color: #5A80B0 !important;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.45) !important;
}

    [data-bs-theme="dark"] .form-check-input[type="radio"]:hover:not(:checked):not(:disabled)[b-dvwc55b0ps] {
        background-color: #253448 !important;
        border-color: #7AAAD8 !important;
    }

    [data-bs-theme="dark"] .form-check-input[type="radio"]:checked[b-dvwc55b0ps] {
        background-color: #1E6AFF !important;
        border-color: #1550D4 !important;
        box-shadow: 0 0 0 3px rgba(30,106,255,0.28) !important;
    }

/* ── 14. Role badges ─────────────────────────────────────────── */
.bo-role-badge[b-dvwc55b0ps] {
    text-transform: uppercase;
    letter-spacing: 0.04em;
    font-size: 0.72rem;
    padding: 0.22rem 0.55rem;
}

/* ── 15. Users-shell scoped section header ───────────────────── */
.bo-users-shell .bo-preview-panel[b-dvwc55b0ps] {
    width: 100%;
    box-sizing: border-box;
    margin: 0;
}

.bo-users-shell .bo-section-header[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: #1a3458;
    border-top: 1px solid rgba(255,255,255,0.09);
    border-bottom: 1px solid rgba(255,255,255,0.07);
    color: #b8cce0;
    font-size: 12.5px;
    padding: 9px 16px;
    width: 100%;
    box-sizing: border-box;
    margin: 0;
}

    .bo-users-shell .bo-section-header i[b-dvwc55b0ps] {
        color: var(--iac-gold);
        font-size: 13px;
    }

    .bo-users-shell .bo-section-header .fw-semibold[b-dvwc55b0ps] {
        color: #ddeaf7;
        font-weight: 600;
    }

.bo-users-shell .bo-section-header-sub[b-dvwc55b0ps] {
    color: #7a90a8;
    font-size: 12px;
}

/* Preview body */
.bo-users-shell .bo-preview-body[b-dvwc55b0ps] {
    background: #e6eef8;
    border-bottom: 1px solid rgba(0,40,85,0.11);
    padding: 14px 16px;
    width: 100%;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    margin: 0;
}

.bo-users-shell .bo-preview-label[b-dvwc55b0ps] {
    color: #446180;
    font-size: 11.5px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    white-space: nowrap;
}

.bo-users-shell .bo-preview-disclaimer[b-dvwc55b0ps] {
    margin-left: auto;
    color: #7a90a8;
    font-size: 11px;
    font-style: italic;
}

.bo-users-shell .bo-preview-active-warning[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-grow: 1;
    background: rgba(241,184,40,0.11);
    border: 1px solid rgba(241,184,40,0.28);
    color: #6b4c00;
    border-radius: var(--radius-sm);
    padding: 8px 12px;
    font-size: 13px;
}

    .bo-users-shell .bo-preview-active-warning strong[b-dvwc55b0ps] {
        color: #8a5c00;
    }

/* ── 16. Mute bar ────────────────────────────────────────────── */
.bo-mute-bar[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    padding: 0.45rem 0.8rem;
    background: rgba(255,255,255,0.55);
    border: 1px solid rgba(26,74,128,0.12);
    border-radius: var(--radius-md);
    font-size: 0.82rem;
    margin-bottom: 12px;
}

.bo-users-shell .bo-mute-bar[b-dvwc55b0ps] {
    background: #d4e0ef;
    border-radius: 0;
    border-bottom: 1px solid rgba(0,40,85,0.11);
    padding: 9px 16px;
    margin-bottom: 0 !important;
    width: 100%;
    box-sizing: border-box;
}

.bo-mute-bar-label[b-dvwc55b0ps] {
    color: #3a5878;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    white-space: nowrap;
}

    .bo-mute-bar-label i[b-dvwc55b0ps] {
        color: #c88a00;
    }

.bo-mute-btn[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: #fff;
    border: 1.5px solid #dde6f0;
    color: #5a7090;
    border-radius: 100px;
    font-size: 12px;
    font-weight: 600;
    padding: 4px 11px;
    cursor: pointer;
    transition: all 0.16s ease;
    white-space: nowrap;
}

    .bo-mute-btn:hover[b-dvwc55b0ps],
    .bo-users-shell .bo-mute-btn:hover[b-dvwc55b0ps] {
        background: #fffbeb;
        border-color: #f5c842;
        color: #a04800;
    }

.bo-mute-btn--active[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: #fffaeb;
    border: 1.5px solid #f5c842;
    color: #a04800;
    border-radius: 100px;
    font-size: 12px;
    font-weight: 600;
    padding: 4px 11px;
    cursor: pointer;
    transition: all 0.16s ease;
    white-space: nowrap;
}

    .bo-mute-btn--active:hover[b-dvwc55b0ps],
    .bo-users-shell .bo-mute-btn--active:hover[b-dvwc55b0ps] {
        background: #fff;
        border-color: #dde6f0;
        color: #5a7090;
    }

[data-bs-theme="dark"] .bo-mute-bar[b-dvwc55b0ps],
[data-theme="dark"] .bo-mute-bar[b-dvwc55b0ps] {
    background: rgba(255,255,255,0.04);
    border-color: rgba(122,176,232,0.14);
}

[data-bs-theme="dark"] .bo-mute-bar-label[b-dvwc55b0ps],
[data-theme="dark"] .bo-mute-bar-label[b-dvwc55b0ps] {
    color: rgba(240,246,255,0.65);
}

[data-bs-theme="dark"] .bo-mute-btn[b-dvwc55b0ps],
[data-theme="dark"] .bo-mute-btn[b-dvwc55b0ps] {
    background: rgba(122,176,232,0.08);
    border-color: rgba(122,176,232,0.20);
    color: rgba(122,176,232,0.85);
}

[data-bs-theme="dark"] .bo-mute-btn--active[b-dvwc55b0ps],
[data-theme="dark"] .bo-mute-btn--active[b-dvwc55b0ps] {
    background: rgba(255,255,255,0.05);
    border-color: rgba(255,255,255,0.11);
    color: rgba(255,255,255,0.32);
}

/* ── 17. Activity alerts ─────────────────────────────────────── */
.bo-activity-alert.user-activity-alerts[b-dvwc55b0ps] {
    border-radius: var(--radius-md);
    padding: 10px 12px;
    margin-bottom: 1rem;
    background: rgba(0,81,181,0.07);
    border: 1px solid rgba(0,81,181,0.18);
    box-shadow: 0 6px 20px rgba(15,23,42,0.06);
}

.bo-users-shell .bo-activity-alert[b-dvwc55b0ps] {
    background: #e6eef8;
    border-bottom: 1px solid rgba(0,40,85,0.11);
    padding: 14px 16px;
    margin-bottom: 0;
    width: 100%;
    box-sizing: border-box;
    border-radius: 0;
}

[data-bs-theme="dark"] .bo-activity-alert.user-activity-alerts[b-dvwc55b0ps],
[data-theme="dark"] .bo-activity-alert.user-activity-alerts[b-dvwc55b0ps] {
    background: rgba(122,176,232,0.10);
    border: 1px solid rgba(122,176,232,0.20);
}

.bo-activity-list[b-dvwc55b0ps] {
    font-size: 0.875rem;
    list-style: none;
    padding: 0;
    margin: 0;
}

.bo-activity-danger[b-dvwc55b0ps] {
    color: var(--danger-text);
}

/* UAA sub-components */
.user-activity-alerts .uaa-title[b-dvwc55b0ps],
.bo-users-shell .uaa-title[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-weight: 800;
    font-size: 0.88rem;
    margin: 0 0 8px;
    color: #0b2d52;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

[data-bs-theme="dark"] .user-activity-alerts .uaa-title[b-dvwc55b0ps],
[data-bs-theme="dark"] .bo-users-shell .uaa-title[b-dvwc55b0ps],
[data-theme="dark"] .user-activity-alerts .uaa-title[b-dvwc55b0ps] {
    color: rgba(240,246,255,0.90);
}

.user-activity-alerts .uaa-icon[b-dvwc55b0ps] {
    font-size: 0.92rem;
    opacity: 0.88;
}

.user-activity-alerts .uaa-grid[b-dvwc55b0ps],
.bo-users-shell .uaa-grid[b-dvwc55b0ps] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 14px;
}

.uaa-list[b-dvwc55b0ps],
.bo-users-shell .uaa-list[b-dvwc55b0ps] {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

    .uaa-list li[b-dvwc55b0ps],
    .bo-users-shell .uaa-list li[b-dvwc55b0ps] {
        margin: 2px 0;
        line-height: 1.25;
        font-size: 0.84rem;
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        gap: 6px;
    }

.user-activity-alerts .uaa-pill[b-dvwc55b0ps],
.bo-users-shell .uaa-pill[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 0.76rem;
    font-weight: 800;
    padding: 3px 10px;
    border-radius: 999px;
    margin-bottom: 6px;
    letter-spacing: 0.2px;
}

.uaa-pill--warn[b-dvwc55b0ps] {
    background: var(--warn-bg);
    border: 1px solid var(--warn-border);
    color: var(--warn-text);
}

.uaa-pill--danger[b-dvwc55b0ps] {
    background: var(--danger-bg);
    border: 1px solid var(--danger-border);
    color: var(--danger-text);
}

.bo-users-shell .uaa-pill--warn[b-dvwc55b0ps] {
    background: rgba(241,184,40,0.16);
    border: 1px solid rgba(241,184,40,0.38);
    color: #8a5c00;
}

.bo-users-shell .uaa-pill--danger[b-dvwc55b0ps] {
    background: rgba(220,53,69,0.14);
    border: 1px solid rgba(220,53,69,0.32);
    color: #a02020;
}

.user-activity-alerts .uaa-name[b-dvwc55b0ps],
.bo-users-shell .uaa-name[b-dvwc55b0ps] {
    display: inline-block;
    font-weight: 800;
    padding: 2px 6px;
    border-radius: 5px;
}

.uaa-name--warn[b-dvwc55b0ps] {
    background: var(--warn-bg);
    border: 1px solid var(--warn-border);
    color: #0b2d52;
}

.uaa-name--danger[b-dvwc55b0ps] {
    background: var(--danger-bg);
    border: 1px solid var(--danger-border);
    color: var(--danger-text);
}

.bo-users-shell .uaa-name--warn[b-dvwc55b0ps] {
    background: rgba(241,184,40,0.14);
    color: #7a5000;
    border: 1px solid rgba(241,184,40,0.24);
}

.bo-users-shell .uaa-name--danger[b-dvwc55b0ps] {
    background: rgba(220,53,69,0.11);
    color: #a02020;
    border: 1px solid rgba(220,53,69,0.24);
}

[data-bs-theme="dark"] .user-activity-alerts .uaa-name--warn[b-dvwc55b0ps],
[data-theme="dark"] .user-activity-alerts .uaa-name--warn[b-dvwc55b0ps] {
    color: rgba(240,246,255,0.90);
}

.user-activity-alerts .uaa-email[b-dvwc55b0ps],
.bo-users-shell .uaa-email[b-dvwc55b0ps] {
    font-weight: 600;
    opacity: 0.72;
    margin-left: 5px;
    font-size: 11px;
    color: #4a6a8a;
}

/* Shell-scoped dark overrides */
:root[data-bs-theme="dark"] .bo-users-shell .bo-section-header[b-dvwc55b0ps],
:root[data-bs-theme="dark"] .bo-users-shell .bo-mute-bar[b-dvwc55b0ps] {
    background: #1a3050;
    border-color: rgba(255,255,255,0.07);
}

:root[data-bs-theme="dark"] .bo-users-shell .bo-preview-body[b-dvwc55b0ps],
:root[data-bs-theme="dark"] .bo-users-shell .bo-activity-alert[b-dvwc55b0ps] {
    background: #142540;
    border-color: rgba(255,255,255,0.06);
}

:root[data-bs-theme="dark"] .bo-users-shell .uaa-title[b-dvwc55b0ps] {
    color: #c0d2e8;
}

/* ── 18. Tables ──────────────────────────────────────────────── */
/*
  STICKY HEADER REQUIREMENTS:
  1. The scroll container must have overflow-y:auto (not overflow:hidden)
  2. The table must use border-collapse:collapse (not separate) OR the th
     must have a solid opaque background — no rgba that bleeds through
  3. No backdrop-filter on sticky th (breaks stacking in Chrome)
  4. z-index on th must beat z-index of any sibling td
*/
.table-scroll[b-dvwc55b0ps],
.table-responsive[b-dvwc55b0ps] {
    position: relative;
    overflow-x: auto;
    overflow-y: auto;
    max-height: 580px;
    border: 1px solid rgba(0,40,85,0.14);
    border-radius: var(--radius-md);
    background: var(--bg-surface);
    max-width: 100%;
    box-shadow: 0 2px 10px rgba(0,20,60,0.08), 0 1px 2px rgba(0,0,0,0.05);
}

[data-bs-theme="dark"] .table-scroll[b-dvwc55b0ps],
[data-bs-theme="dark"] .table-responsive[b-dvwc55b0ps],
[data-theme="dark"] .table-scroll[b-dvwc55b0ps],
[data-theme="dark"] .table-responsive[b-dvwc55b0ps] {
    background: #0F1520 !important;
    border-color: rgba(255,255,255,0.08) !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.45) !important;
}

.table[b-dvwc55b0ps] {
    font-family: var(--font);
    font-size: 13px;
    color: var(--text-primary);
    border-collapse: collapse;
    width: 100%;
    margin-bottom: 0;
}

    /* ── Sticky thead — FULLY OPAQUE, modern chevron-accent design ── */
    .table thead th[b-dvwc55b0ps],
    .table > thead > tr > th[b-dvwc55b0ps] {
        position: sticky;
        top: 0;
        z-index: 20;
        /* Modern navy-to-dark gradient matching IAC brand */
        background: #1a3260;
        color: #e0ebff;
        font-size: 0.72rem;
        font-weight: 800;
        letter-spacing: 0.10em;
        text-transform: uppercase;
        padding: 11px 14px;
        border-bottom: 2px solid rgba(241,184,40,0.50);
        white-space: nowrap;
        user-select: none;
        text-align: center;
        /* Gold-tinted bottom shadow to separate from rows */
        box-shadow: 0 2px 8px rgba(0,15,50,0.30), 0 1px 0 rgba(241,184,40,0.20);
    }

        /* First th — left-align for name/label columns */
        .table thead th:first-child[b-dvwc55b0ps],
        .table > thead > tr > th:first-child[b-dvwc55b0ps] {
            text-align: left;
            padding-left: 18px;
            border-left: 3px solid var(--iac-gold);
        }

        /* Column dividers */
        .table thead th + th[b-dvwc55b0ps] {
            border-left: 1px solid rgba(255,255,255,0.07);
        }

/* Dark mode — even deeper, richer header */
[data-bs-theme="dark"] .table thead th[b-dvwc55b0ps],
[data-bs-theme="dark"] .table > thead > tr > th[b-dvwc55b0ps],
[data-theme="dark"] .table thead th[b-dvwc55b0ps],
[data-theme="dark"] .table > thead > tr > th[b-dvwc55b0ps] {
    background: #0d1e3a;
    color: #7aacd4;
    border-bottom-color: rgba(241,184,40,0.35);
    box-shadow: 0 2px 6px rgba(0,0,0,0.55), 0 1px 0 rgba(241,184,40,0.15);
}

/* Light-mode overrides for named table variants */
:root:not([data-bs-theme="dark"]) .users-table thead th[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .bo-users-card .users-table thead th[b-dvwc55b0ps] {
    background: #18336a;
    color: #ddeaff;
    border-bottom: 2px solid rgba(241,184,40,0.55);
}

:root:not([data-bs-theme="dark"]) .quotes-table thead th[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .myquotes-table thead th[b-dvwc55b0ps] {
    background: #1a3260;
    color: #ddeaff;
    border-bottom: 2px solid rgba(241,184,40,0.50);
}

.table tbody tr[b-dvwc55b0ps] {
    transition: background var(--t-fast);
    border-bottom: 1px solid var(--table-border);
}

    .table tbody tr:last-child[b-dvwc55b0ps] {
        border-bottom: none;
    }

    .table tbody tr:hover[b-dvwc55b0ps],
    .table-hover tbody tr:hover[b-dvwc55b0ps] {
        background: var(--table-row-hover);
    }

.table tbody td[b-dvwc55b0ps] {
    padding: 9px 14px;
    vertical-align: middle;
    border-bottom: 1px solid var(--table-border);
    text-align: center;
}

    /* First td left-aligned to match header */
    .table tbody td:first-child[b-dvwc55b0ps] {
        text-align: left;
        padding-left: 18px;
    }

.table-sm thead th[b-dvwc55b0ps],
.table-sm tbody td[b-dvwc55b0ps] {
    padding: 6px 11px;
}

.table-light thead th[b-dvwc55b0ps] {
    background: var(--table-header-bg);
}

/* ── Table variants — all share sticky header treatment ──────── */
.quotes-table[b-dvwc55b0ps], .myquotes-table[b-dvwc55b0ps], .users-table[b-dvwc55b0ps],
.order-review-table[b-dvwc55b0ps], .dep-pay-terms-table[b-dvwc55b0ps] {
    width: 100%;
    border-collapse: collapse;
}

    /* ── quotes-table family: body td base rules ─────────────────────
   These tables have no .table class so they never pick up .table tbody td.
   Define all td fundamentals explicitly here so every column renders
   correctly regardless of which dynamic class GetPricingColumnClass()
   assigns (price-col, contact-col, enabled-col, options-col, or "").
────────────────────────────────────────────────────────────────── */
    .quotes-table tbody td[b-dvwc55b0ps],
    .myquotes-table tbody td[b-dvwc55b0ps],
    .order-review-table tbody td[b-dvwc55b0ps],
    .dep-pay-terms-table tbody td[b-dvwc55b0ps],
    .quotes-table--pricing tbody td[b-dvwc55b0ps] {
        padding: 8px 12px;
        vertical-align: middle;
        border-bottom: 1px solid var(--table-border);
        text-align: center;
        color: var(--text-primary);
        font-size: 13px;
    }

        /* First column: left-aligned, matches header gold-left-border */
        .quotes-table tbody td:first-child[b-dvwc55b0ps],
        .myquotes-table tbody td:first-child[b-dvwc55b0ps],
        .order-review-table tbody td:first-child[b-dvwc55b0ps],
        .dep-pay-terms-table tbody td:first-child[b-dvwc55b0ps],
        .quotes-table--pricing tbody td:first-child[b-dvwc55b0ps] {
            text-align: left !important;
            padding-left: 18px !important;
        }

        /* Last column: right-aligned for actions */
        .quotes-table tbody td:last-child[b-dvwc55b0ps],
        .myquotes-table tbody td:last-child[b-dvwc55b0ps],
        .order-review-table tbody td:last-child[b-dvwc55b0ps],
        .dep-pay-terms-table tbody td:last-child[b-dvwc55b0ps],
        .quotes-table--pricing tbody td:last-child[b-dvwc55b0ps] {
            text-align: right;
            padding-right: 14px;
        }

    /* Pricing-specific column classes from GetPricingColumnClass() */
    .quotes-table--pricing td.price-col[b-dvwc55b0ps],
    .quotes-table td.price-col[b-dvwc55b0ps] {
        text-align: right !important;
        padding-right: 10px !important;
        font-variant-numeric: tabular-nums;
    }

    .quotes-table--pricing td.contact-col[b-dvwc55b0ps],
    .quotes-table--pricing td.enabled-col[b-dvwc55b0ps],
    .quotes-table td.contact-col[b-dvwc55b0ps],
    .quotes-table td.enabled-col[b-dvwc55b0ps] {
        text-align: center !important;
    }

    .quotes-table--pricing td.options-col[b-dvwc55b0ps],
    .quotes-table td.options-col[b-dvwc55b0ps] {
        text-align: left !important;
        min-width: 120px;
    }

    /* hw-col: generic pricing row column sizing */
    .quotes-table td.hw-col[b-dvwc55b0ps],
    .quotes-table--pricing td.hw-col[b-dvwc55b0ps] {
        min-width: 80px;
    }

    /* Row hover */
    .quotes-table tbody tr[b-dvwc55b0ps],
    .myquotes-table tbody tr[b-dvwc55b0ps],
    .order-review-table tbody tr[b-dvwc55b0ps],
    .dep-pay-terms-table tbody tr[b-dvwc55b0ps] {
        transition: background var(--t-fast);
        border-bottom: 1px solid var(--table-border);
    }

        .quotes-table tbody tr:hover td[b-dvwc55b0ps],
        .myquotes-table tbody tr:hover td[b-dvwc55b0ps],
        .order-review-table tbody tr:hover td[b-dvwc55b0ps],
        .dep-pay-terms-table tbody tr:hover td[b-dvwc55b0ps] {
            background-color: var(--table-row-hover) !important;
        }

    /* Sticky headers for quotes-table family (order requests, pricing,
   dep/pay terms, stock, change history). Uses same navy/gold design
   as .table thead th — this fixes the missing sticky on those panels.
   .quotes-table--pricing is explicitly included because its own rule
   overrides white-space/font-size which was breaking sticky. */
    .quotes-table thead th[b-dvwc55b0ps],
    .myquotes-table thead th[b-dvwc55b0ps],
    .order-review-table thead th[b-dvwc55b0ps],
    .dep-pay-terms-table thead th[b-dvwc55b0ps],
    .quotes-table--pricing thead th[b-dvwc55b0ps] {
        position: sticky !important;
        top: 0 !important;
        z-index: 20 !important;
        background: #1a3260 !important;
        color: #ddeaff !important;
        font-size: 0.72rem !important;
        font-weight: 800 !important;
        letter-spacing: 0.10em !important;
        text-transform: uppercase !important;
        padding: 11px 14px !important;
        border-bottom: 2px solid rgba(241,184,40,0.52) !important;
        white-space: nowrap !important;
        user-select: none !important;
        text-align: center !important;
        box-shadow: 0 2px 8px rgba(0,15,50,0.30) !important;
    }

        /* First column left-aligned with gold left border */
        .quotes-table thead th:first-child[b-dvwc55b0ps],
        .myquotes-table thead th:first-child[b-dvwc55b0ps],
        .order-review-table thead th:first-child[b-dvwc55b0ps],
        .dep-pay-terms-table thead th:first-child[b-dvwc55b0ps],
        .quotes-table--pricing thead th:first-child[b-dvwc55b0ps] {
            text-align: left !important;
            padding-left: 18px !important;
            border-left: 3px solid var(--iac-gold) !important;
        }

        /* Last column right-aligned (Actions) */
        .quotes-table thead th:last-child[b-dvwc55b0ps],
        .myquotes-table thead th:last-child[b-dvwc55b0ps],
        .order-review-table thead th:last-child[b-dvwc55b0ps],
        .dep-pay-terms-table thead th:last-child[b-dvwc55b0ps],
        .quotes-table--pricing thead th:last-child[b-dvwc55b0ps] {
            text-align: center !important;
        }

        /* Column dividers */
        .quotes-table thead th + th[b-dvwc55b0ps],
        .myquotes-table thead th + th[b-dvwc55b0ps],
        .order-review-table thead th + th[b-dvwc55b0ps],
        .dep-pay-terms-table thead th + th[b-dvwc55b0ps],
        .quotes-table--pricing thead th + th[b-dvwc55b0ps] {
            border-left: 1px solid rgba(255,255,255,0.07) !important;
        }

/* Dark mode */
[data-bs-theme="dark"] .quotes-table thead th[b-dvwc55b0ps],
[data-bs-theme="dark"] .myquotes-table thead th[b-dvwc55b0ps],
[data-bs-theme="dark"] .order-review-table thead th[b-dvwc55b0ps],
[data-bs-theme="dark"] .dep-pay-terms-table thead th[b-dvwc55b0ps],
[data-bs-theme="dark"] .quotes-table--pricing thead th[b-dvwc55b0ps],
[data-theme="dark"] .quotes-table thead th[b-dvwc55b0ps],
[data-theme="dark"] .myquotes-table thead th[b-dvwc55b0ps],
[data-theme="dark"] .order-review-table thead th[b-dvwc55b0ps],
[data-theme="dark"] .dep-pay-terms-table thead th[b-dvwc55b0ps],
[data-theme="dark"] .quotes-table--pricing thead th[b-dvwc55b0ps] {
    background: #0d1e3a !important;
    color: #7aacd4 !important;
    border-bottom-color: rgba(241,184,40,0.35) !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.55) !important;
}

.quotes-table--tight thead th[b-dvwc55b0ps],
.quotes-table--tight td[b-dvwc55b0ps] {
    font-size: 0.83rem;
    vertical-align: middle;
}

.quotes-table--pricing thead th[b-dvwc55b0ps],
.quotes-table--pricing td[b-dvwc55b0ps] {
    white-space: nowrap;
    font-size: 0.83rem;
}

/* Ensure pricing thead th sticky is never overridden — explicit re-enforcement */
.quotes-table--pricing thead th[b-dvwc55b0ps] {
    position: sticky !important;
    top: 0 !important;
    z-index: 24 !important;
    background-clip: padding-box !important;
}

.quotes-table--pricing[b-dvwc55b0ps] {
    min-width: 1200px;
}

.quotes-table--hardware[b-dvwc55b0ps], .quotes-table--door[b-dvwc55b0ps],
.quotes-table--shiploose[b-dvwc55b0ps], .quotes-table--windows[b-dvwc55b0ps] {
    min-width: 1100px;
}

.wrap-cell[b-dvwc55b0ps], .notes-cell[b-dvwc55b0ps] {
    white-space: pre-wrap;
    word-break: break-word;
    max-width: 320px;
    font-size: 12px;
    color: var(--text-secondary);
    line-height: 1.5;
}

/* Users table */
.users-table[b-dvwc55b0ps] {
    font-size: 0.875rem;
}

    .users-table thead[b-dvwc55b0ps] {
        top: 0;
        z-index: 20;
    }

        .users-table thead th[b-dvwc55b0ps] {
            position: sticky;
            top: 0;
            z-index: 20;
            background: #18336a;
            color: #ddeaff;
            font-weight: 800;
            font-size: 0.72rem;
            text-transform: uppercase;
            letter-spacing: 0.08em;
            padding: 10px 10px;
            border-bottom: 2px solid rgba(241,184,40,0.55);
            box-shadow: 0 2px 6px rgba(0,15,50,0.25);
            white-space: nowrap;
            text-align: center;
        }

            .users-table thead th:first-child[b-dvwc55b0ps] {
                text-align: left;
                padding-left: 16px;
                border-left: 3px solid var(--iac-gold);
            }

[data-bs-theme="dark"] .users-table thead th[b-dvwc55b0ps],
[data-theme="dark"] .users-table thead th[b-dvwc55b0ps] {
    background: #0d1e3a;
    color: #7aacd4;
    border-bottom-color: rgba(241,184,40,0.35);
    box-shadow: 0 2px 4px rgba(0,0,0,0.50);
}

.users-table td[b-dvwc55b0ps], .users-table th[b-dvwc55b0ps] {
    padding: 8px 10px;
    text-align: center;
    border-bottom: 1px solid var(--table-border);
}

    .users-table td:first-child[b-dvwc55b0ps], .users-table th:first-child[b-dvwc55b0ps] {
        text-align: left;
        padding-left: 14px;
    }

.users-table tbody tr.bo-user-row[b-dvwc55b0ps] {
    transition: background-color 0.14s ease;
}

    .users-table tbody tr.bo-user-row:hover[b-dvwc55b0ps] {
        /* hover background handled by the striping system above */
    }

.users-table tbody tr.bo-row--warn > *[b-dvwc55b0ps] {
    background-color: var(--warn-bg) !important;
    transition: background-color 0.14s ease;
}

.users-table tbody tr.bo-row--warn:hover > *[b-dvwc55b0ps] {
    background-color: rgba(255,193,7,0.20) !important;
}

.users-table tbody tr.bo-row--danger > *[b-dvwc55b0ps] {
    background-color: var(--danger-bg) !important;
}

.users-table tbody tr.bo-row--danger:hover > *[b-dvwc55b0ps] {
    background-color: rgba(220,53,69,0.18) !important;
}

.users-table tbody tr.bo-row--warn > :first-child[b-dvwc55b0ps] {
    box-shadow: inset 3px 0 0 var(--warn-border);
}

.users-table tbody tr.bo-row--danger > :first-child[b-dvwc55b0ps] {
    box-shadow: inset 3px 0 0 var(--danger-border);
}

/* Global scroll container rules */
.table-scroll[b-dvwc55b0ps], .table-responsive[b-dvwc55b0ps], .order-table-wrap[b-dvwc55b0ps],
.myquotes-table-scroll[b-dvwc55b0ps], .myquotes-table-wrapper[b-dvwc55b0ps],
.saved-hw[b-dvwc55b0ps], .saved-sets-card[b-dvwc55b0ps], .bo-users-card[b-dvwc55b0ps],
.quotes-page-wrapper[b-dvwc55b0ps] {
    position: relative;
    max-width: 100%;
}

.table-scroll[b-dvwc55b0ps], .table-responsive[b-dvwc55b0ps], .order-table-wrap[b-dvwc55b0ps],
.myquotes-table-scroll[b-dvwc55b0ps], .myquotes-table-wrapper[b-dvwc55b0ps] {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* ── 19. Badges / Status — HIGH CONTRAST, fully saturated ──────── */
.badge[b-dvwc55b0ps] {
    font-family: var(--font);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    padding: 3px 9px 4px;
    border-radius: var(--radius-xs);
    display: inline-flex;
    align-items: center;
    gap: 4px;
    white-space: nowrap;
    line-height: 1.35;
    border: 1.5px solid transparent;
    /* Subtle text shadow for legibility on colored backgrounds */
    text-shadow: 0 1px 1px rgba(0,0,0,0.08);
}

    /* Light mode — rich saturated fills, unmistakable at a glance */
    .badge.bg-open[b-dvwc55b0ps],
    .badge.bg-primary[b-dvwc55b0ps] {
        background: #1E56CC !important;
        color: #fff !important;
        border-color: #1040A8 !important;
    }

    .badge.bg-warning[b-dvwc55b0ps] {
        background: #CC8800 !important;
        color: #fff !important;
        border-color: #A06800 !important;
    }

    .badge.bg-success[b-dvwc55b0ps] {
        background: #0E8A48 !important;
        color: #fff !important;
        border-color: #0A6838 !important;
    }

    .badge.bg-danger[b-dvwc55b0ps],
    .badge.bg-lost[b-dvwc55b0ps] {
        background: #C41C2C !important;
        color: #fff !important;
        border-color: #9A1422 !important;
    }

    .badge.bg-secondary[b-dvwc55b0ps] {
        background: #4A5C6E !important;
        color: #fff !important;
        border-color: #364855 !important;
    }

    .badge.bg-info[b-dvwc55b0ps] {
        background: #0284C7 !important;
        color: #fff !important;
        border-color: #0165A0 !important;
    }

    /* Role badges — solid brand fills */
    .badge.bg-admin[b-dvwc55b0ps],
    .quotes-table .badge.bg-admin[b-dvwc55b0ps] {
        background: #002855 !important;
        color: #F1B828 !important;
        border-color: #001731 !important;
    }

    .badge.bg-rep[b-dvwc55b0ps],
    .quotes-table .badge.bg-rep[b-dvwc55b0ps] {
        background: #1565C0 !important;
        color: #fff !important;
        border-color: #0D47A1 !important;
    }

    .badge.bg-est[b-dvwc55b0ps],
    .quotes-table .badge.bg-est[b-dvwc55b0ps] {
        background: #1B6E30 !important;
        color: #fff !important;
        border-color: #144E22 !important;
    }

.bg-open[b-dvwc55b0ps] {
    background: #1E56CC !important;
    color: #fff !important;
}

.bg-lost[b-dvwc55b0ps] {
    background: #C41C2C !important;
    color: #fff !important;
}

/* Dark mode — bright, glowing tints readable on dark surfaces */
[data-bs-theme="dark"] .badge.bg-open[b-dvwc55b0ps],
[data-bs-theme="dark"] .badge.bg-primary[b-dvwc55b0ps] {
    background: rgba(0,87,255,0.30) !important;
    color: #88BBFF !important;
    border-color: rgba(0,87,255,0.55) !important;
}

[data-bs-theme="dark"] .badge.bg-warning[b-dvwc55b0ps] {
    background: rgba(255,193,7,0.22) !important;
    color: #FFDA60 !important;
    border-color: rgba(255,193,7,0.50) !important;
}

[data-bs-theme="dark"] .badge.bg-success[b-dvwc55b0ps] {
    background: rgba(18,160,88,0.24) !important;
    color: #50DDA0 !important;
    border-color: rgba(18,160,88,0.50) !important;
}

[data-bs-theme="dark"] .badge.bg-danger[b-dvwc55b0ps],
[data-bs-theme="dark"] .badge.bg-lost[b-dvwc55b0ps] {
    background: rgba(220,53,69,0.28) !important;
    color: #FF9090 !important;
    border-color: rgba(220,53,69,0.55) !important;
}

/* RFQ Needed (ForQuote) — amber/orange flag, distinct from warning yellow */
.badge.bg-rfq-needed[b-dvwc55b0ps] {
    background: #B45309 !important;
    color: #fff !important;
    border-color: #92400E !important;
}

[data-bs-theme="dark"] .badge.bg-rfq-needed[b-dvwc55b0ps] {
    background: rgba(217,119,6,0.28) !important;
    color: #FCD34D !important;
    border-color: rgba(217,119,6,0.58) !important;
}

/* RFQ Done (Priced) — teal/cyan flag, distinct from success green */
.badge.bg-rfq-done[b-dvwc55b0ps] {
    background: #0E7490 !important;
    color: #fff !important;
    border-color: #0A5F75 !important;
}

[data-bs-theme="dark"] .badge.bg-rfq-done[b-dvwc55b0ps] {
    background: rgba(6,182,212,0.24) !important;
    color: #67E8F9 !important;
    border-color: rgba(6,182,212,0.52) !important;
}

[data-bs-theme="dark"] .badge.bg-secondary[b-dvwc55b0ps] {
    background: rgba(107,115,128,0.26) !important;
    color: #A0B4C8 !important;
    border-color: rgba(107,115,128,0.48) !important;
}

[data-bs-theme="dark"] .badge.bg-info[b-dvwc55b0ps] {
    background: rgba(14,165,233,0.24) !important;
    color: #50D0FF !important;
    border-color: rgba(14,165,233,0.50) !important;
}

/* ── 20. Hardware detail components ──────────────────────────── */
.bo-hw-details-wrap[b-dvwc55b0ps] {
    line-height: 1.35;
}

.bo-hw-sections[b-dvwc55b0ps] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 0.6rem 1rem;
}

.bo-hw-sec[b-dvwc55b0ps] {
    padding: 0.2rem 0;
}

.bo-hw-sec-title[b-dvwc55b0ps] {
    font-weight: 700;
    font-size: 0.83rem;
    letter-spacing: 0.01em;
    margin: 0 0 0.25rem;
    color: var(--text-muted);
}

.bo-hw-subtitle[b-dvwc55b0ps] {
    font-size: 0.77rem;
    font-weight: 700;
    color: var(--text-muted);
    margin: 0.35rem 0 0.15rem;
}

.bo-hw-dl[b-dvwc55b0ps] {
    margin: 0;
}

.bo-hw-row[b-dvwc55b0ps] {
    display: grid;
    grid-template-columns: 150px 1fr;
    gap: 0.5rem;
    padding: 0.12rem 0;
}

    .bo-hw-row dt[b-dvwc55b0ps] {
        margin: 0;
        font-weight: 700;
        color: var(--text-muted);
    }

    .bo-hw-row dd[b-dvwc55b0ps] {
        margin: 0;
        overflow-wrap: anywhere;
        word-break: break-word;
    }

.bo-hw-badges[b-dvwc55b0ps] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    padding-top: 0.1rem;
}

.bo-hw-notes[b-dvwc55b0ps] {
    overflow-wrap: anywhere;
    word-break: break-word;
}

.bo-hw-block[b-dvwc55b0ps] {
    background: var(--bg-surface);
    border: 1px solid var(--border-default);
    border-radius: var(--radius-md);
    padding: 0.75rem 0.9rem;
    box-shadow: var(--shadow-xs);
}

.bo-hw-block-title[b-dvwc55b0ps] {
    font-weight: 700;
    font-size: 0.93rem;
    margin-bottom: 0.5rem;
    letter-spacing: 0.01em;
}

.bo-hw-block small[b-dvwc55b0ps] {
    color: var(--text-muted);
    font-weight: 600;
}

.hw-col[b-dvwc55b0ps] {
    flex: 1;
    min-width: 0;
}

.hw-col-actions[b-dvwc55b0ps] {
    min-width: 128px;
    width: 1%;
    white-space: nowrap;
    text-align: center;
    vertical-align: middle;
}

/* Actions column header/cell should behave like a normal table cell (no flex on <th>/<td>) */




.hw-opt-grid[b-dvwc55b0ps] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

/* ── 21. Line-item chips ──────────────────────────────────────── */
.bo-li-chips[b-dvwc55b0ps] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem 0.5rem;
}

.bo-li-chip[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: baseline;
    gap: 0.35rem;
    padding: 0.18rem 0.45rem;
    border: 1px solid var(--border-default);
    border-radius: var(--radius-xs);
    background: var(--bg-surface);
    max-width: 100%;
    font-size: 0.84rem;
    transition: background var(--t-fast), border-color var(--t-fast);
}

    .bo-li-chip:hover[b-dvwc55b0ps] {
        background: var(--iac-accent-muted);
        border-color: rgba(0,87,255,0.20);
    }

.bo-li-k[b-dvwc55b0ps] {
    font-weight: 700;
    font-size: 0.76rem;
    color: var(--text-muted);
    white-space: nowrap;
}

.bo-li-v[b-dvwc55b0ps] {
    font-weight: 700;
    font-size: 0.84rem;
    overflow-wrap: anywhere;
    word-break: break-word;
    color: var(--text-primary);
}

/* ── 22. Pricing tabs ─────────────────────────────────────────── */
.bo-pricing-tabs[b-dvwc55b0ps] {
    display: flex;
    gap: 2px;
    border-bottom: 2px solid var(--border-subtle);
    margin-bottom: 20px;
    flex-wrap: wrap;
}

    .bo-pricing-tabs .nav-link[b-dvwc55b0ps] {
        font-family: var(--font);
        font-size: 12.5px;
        font-weight: 600;
        letter-spacing: 0.04em;
        padding: 8px 16px;
        color: var(--text-muted);
        border: none;
        border-bottom: 2px solid transparent;
        margin-bottom: -2px;
        background: transparent;
        cursor: pointer;
        transition: color var(--t-fast), border-color var(--t-fast);
        border-radius: var(--radius-sm) var(--radius-sm) 0 0;
    }

        .bo-pricing-tabs .nav-link:hover[b-dvwc55b0ps] {
            color: var(--text-primary);
            background: var(--bg-surface-2);
        }

        .bo-pricing-tabs .nav-link.active[b-dvwc55b0ps] {
            color: var(--iac-accent);
            border-bottom-color: var(--iac-gold);
        }

/* ── 23. Modal system ────────────────────────────────────────── */
/* ============================================================
   IAC CPQ BackOffice — Modal System
   Global rules: all values hardcoded so Blazor CSS isolation
   cannot break them. Place BackOffice.razor.css in wwwroot as
   a global stylesheet (NOT as a scoped .razor.css) so Bootstrap
   modal DOM (rendered outside component scope) receives styles.
   ============================================================ */

/* ============================================================
   BACKDROP
   ============================================================ */
.modal-backdrop.show[b-dvwc55b0ps] {
    background: rgba(4, 10, 24, 0.65) !important;
    backdrop-filter: blur(5px) saturate(1.3) !important;
    -webkit-backdrop-filter: blur(5px) saturate(1.3) !important;
    opacity: 1 !important;
}

/* ============================================================
   MODAL CARD — light mode
   ============================================================ */
.modal-content.iac-modal-container[b-dvwc55b0ps],
.modal-content.iac-modal[b-dvwc55b0ps],
.modal-content.bo-revision-modal[b-dvwc55b0ps] {
    background: #ffffff !important;
    --bs-modal-bg: #ffffff;
    --bs-modal-border-color: rgba(0,40,85,0.16);
    border: 1px solid rgba(0,40,85,0.16) !important;
    border-radius: 16px !important;
    box-shadow: 0 0 0 1px rgba(0,87,255,0.10), 0 8px 32px rgba(0,20,60,0.18), 0 24px 64px rgba(0,20,60,0.12) !important;
    overflow: hidden;
    color: #1a2e47;
    position: relative;
    font-family: "din-2014","DIN Pro","DIN Next","Helvetica Neue",Arial,sans-serif !important;
    animation: iacModalIn-b-dvwc55b0ps 0.32s cubic-bezier(0.34,1.3,0.64,1) forwards;
    /* Flex column + max-height: header pins top, footer pins bottom, body scrolls.
       Accounts for the 56px navbar + the modal's own top margin. */
    display: flex;
    flex-direction: column;
    max-height: calc(100dvh - 56px - 96px);
}

    /* The EditForm sits between header and footer in iac-modal-container.
   It must also be a flex column so modal-body inside it can scroll. */
    .modal-content.iac-modal-container > form[b-dvwc55b0ps],
    .modal-content.iac-modal-container > EditForm[b-dvwc55b0ps] {
        display: flex;
        flex-direction: column;
        flex: 1 1 auto;
        min-height: 0;
        overflow: hidden;
    }

@keyframes iacModalIn-b-dvwc55b0ps {
    0% {
        opacity: 0;
        transform: translateY(24px) scale(0.97);
    }

    100% {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

/* Top gradient accent bar */
.modal-content.iac-modal-container[b-dvwc55b0ps]::after,
.modal-content.iac-modal[b-dvwc55b0ps]::after,
.modal-content.bo-revision-modal[b-dvwc55b0ps]::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #0057FF 0%, #002855 50%, #F1B828 100%);
    border-radius: 16px 16px 0 0;
    z-index: 10;
    pointer-events: none;
}

/* ============================================================
   MODAL HEADER — light mode
   ============================================================ */
.modal-header.iac-modal-header[b-dvwc55b0ps],
.modal-content.bo-revision-modal .modal-header[b-dvwc55b0ps] {
    background: #EEF3FA !important;
    border-bottom: 1px solid rgba(0,40,85,0.12) !important;
    padding: 22px 26px 18px !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px;
    position: relative;
    z-index: 1;
    flex: 0 0 auto;
}

    /* Blue-to-gold left accent stripe */
    .modal-header.iac-modal-header[b-dvwc55b0ps]::before,
    .modal-content.bo-revision-modal .modal-header[b-dvwc55b0ps]::before {
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        width: 4px;
        background: linear-gradient(180deg, #0057FF 0%, #F1B828 100%);
    }

    /* Modal title */
    .modal-header.iac-modal-header .modal-title[b-dvwc55b0ps],
    .modal-title.modal-title-text[b-dvwc55b0ps],
    .modal-content.bo-revision-modal .modal-header .modal-title[b-dvwc55b0ps] {
        font-family: "din-2014","DIN Pro","DIN Next","Helvetica Neue",Arial,sans-serif !important;
        font-size: 1.05rem !important;
        font-weight: 800 !important;
        letter-spacing: 0.04em;
        text-transform: uppercase;
        color: #002855 !important;
        line-height: 1.25;
        margin: 0 !important;
    }

    /* Subtitle / email line */
    .modal-header.iac-modal-header .modal-subtitle-text[b-dvwc55b0ps],
    .modal-header.iac-modal-header .opacity-75[b-dvwc55b0ps],
    .modal-header.iac-modal-header .small[b-dvwc55b0ps] {
        font-family: "din-2014","DIN Pro","DIN Next","Helvetica Neue",Arial,sans-serif !important;
        font-size: 0.78rem !important;
        font-weight: 400;
        color: #5a7a9e !important;
        margin-top: 3px;
        opacity: 1 !important;
    }

.modal-subtitle-text[b-dvwc55b0ps] {
    font-size: 12.5px;
    font-weight: 400;
    color: #5a7a9e;
    margin-top: 3px;
}

.modal-section-title[b-dvwc55b0ps] {
    font-family: "din-2014","DIN Pro","DIN Next","Helvetica Neue",Arial,sans-serif;
    font-size: 1.35rem;
    font-weight: 700;
    letter-spacing: -0.01em;
    color: #002855;
}

[data-bs-theme="dark"] .modal-section-title[b-dvwc55b0ps],
[data-theme="dark"] .modal-section-title[b-dvwc55b0ps] {
    color: #e8f1ff;
}

.modal-title-chevron[b-dvwc55b0ps] {
    font-size: 1.6rem;
    color: #F1B828;
}

/* ============================================================
   CLOSE BUTTON
   ============================================================ */
.btn-close.iac-btn-close[b-dvwc55b0ps] {
    all: unset;
    cursor: pointer;
    margin-left: auto !important;
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: grid;
    place-items: center;
    position: relative;
    transition: background 0.16s ease, transform 0.22s ease;
}

    .btn-close.iac-btn-close[b-dvwc55b0ps]::before,
    .btn-close.iac-btn-close[b-dvwc55b0ps]::after {
        content: '';
        position: absolute;
        width: 14px;
        height: 2px;
        background: #7a8ea8;
        border-radius: 2px;
        transition: background 0.16s ease;
    }

    .btn-close.iac-btn-close[b-dvwc55b0ps]::before {
        transform: rotate(45deg);
    }

    .btn-close.iac-btn-close[b-dvwc55b0ps]::after {
        transform: rotate(-45deg);
    }

    .btn-close.iac-btn-close:hover[b-dvwc55b0ps] {
        background: rgba(0,87,255,0.10) !important;
        transform: rotate(90deg);
    }

        .btn-close.iac-btn-close:hover[b-dvwc55b0ps]::before,
        .btn-close.iac-btn-close:hover[b-dvwc55b0ps]::after {
            background: #0057FF;
        }

/* Revision modal close */
.modal-content.bo-revision-modal .btn-close[b-dvwc55b0ps],
.modal-content.bo-revision-modal .btn-close-white[b-dvwc55b0ps] {
    all: unset;
    cursor: pointer;
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: grid;
    place-items: center;
    position: absolute;
    top: 18px;
    right: 18px;
    z-index: 3;
    transition: background 0.16s ease, transform 0.22s ease;
}

    .modal-content.bo-revision-modal .btn-close[b-dvwc55b0ps]::before,
    .modal-content.bo-revision-modal .btn-close-white[b-dvwc55b0ps]::before,
    .modal-content.bo-revision-modal .btn-close[b-dvwc55b0ps]::after,
    .modal-content.bo-revision-modal .btn-close-white[b-dvwc55b0ps]::after {
        content: '';
        position: absolute;
        width: 14px;
        height: 2px;
        background: #7a8ea8;
        border-radius: 2px;
        transition: background 0.16s ease;
    }

    .modal-content.bo-revision-modal .btn-close[b-dvwc55b0ps]::before,
    .modal-content.bo-revision-modal .btn-close-white[b-dvwc55b0ps]::before {
        transform: rotate(45deg);
    }

    .modal-content.bo-revision-modal .btn-close[b-dvwc55b0ps]::after,
    .modal-content.bo-revision-modal .btn-close-white[b-dvwc55b0ps]::after {
        transform: rotate(-45deg);
    }

    .modal-content.bo-revision-modal .btn-close:hover[b-dvwc55b0ps],
    .modal-content.bo-revision-modal .btn-close-white:hover[b-dvwc55b0ps] {
        background: rgba(0,87,255,0.10) !important;
        transform: rotate(90deg);
    }

/* ============================================================
   TABS
   ============================================================ */
.modal-content.iac-modal-container .nav-tabs[b-dvwc55b0ps],
.modal-content.iac-modal .nav-tabs[b-dvwc55b0ps] {
    border-bottom: 2px solid rgba(0,40,85,0.12) !important;
    padding: 0 22px !important;
    background: #EEF3FA;
    position: relative;
    z-index: 1;
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    scrollbar-width: none;
    gap: 0;
    flex: 0 0 auto;
}

    .modal-content.iac-modal-container .nav-tabs[b-dvwc55b0ps]::-webkit-scrollbar,
    .modal-content.iac-modal .nav-tabs[b-dvwc55b0ps]::-webkit-scrollbar {
        display: none;
    }

    .modal-content.iac-modal-container .nav-tabs .nav-link[b-dvwc55b0ps],
    .modal-content.iac-modal .nav-tabs .nav-link[b-dvwc55b0ps] {
        font-family: "din-2014","DIN Pro","DIN Next","Helvetica Neue",Arial,sans-serif !important;
        font-size: 0.68rem !important;
        font-weight: 800 !important;
        letter-spacing: 0.12em;
        text-transform: uppercase;
        color: #8a9aae !important;
        border: none !important;
        border-bottom: 2px solid transparent !important;
        border-radius: 0 !important;
        padding: 12px 16px !important;
        background: transparent !important;
        cursor: pointer;
        margin-bottom: -2px;
        white-space: nowrap;
        transition: color 0.15s ease, border-color 0.15s ease;
    }

        .modal-content.iac-modal-container .nav-tabs .nav-link:hover[b-dvwc55b0ps],
        .modal-content.iac-modal .nav-tabs .nav-link:hover[b-dvwc55b0ps] {
            color: #002855 !important;
            background: transparent !important;
        }

        .modal-content.iac-modal-container .nav-tabs .nav-link.active[b-dvwc55b0ps],
        .modal-content.iac-modal .nav-tabs .nav-link.active[b-dvwc55b0ps] {
            color: #0057FF !important;
            border-bottom: 2px solid #F1B828 !important;
            background: transparent !important;
        }

/* ============================================================
   MODAL BODY — light mode
   ============================================================ */
.modal-body.iac-modal-body[b-dvwc55b0ps],
.modal-content.iac-modal-container .modal-body[b-dvwc55b0ps],
.modal-content.iac-modal .modal-body[b-dvwc55b0ps],
.modal-content.bo-revision-modal .modal-body[b-dvwc55b0ps] {
    background: #ffffff !important;
    --bs-body-bg: #ffffff;
    padding: 26px !important;
    color: #1a2e47;
    position: relative;
    z-index: 1;
    flex: 1 1 auto;
    min-height: 0;
    overflow-y: auto;
    overscroll-behavior: contain;
}

    .modal-content.iac-modal .modal-body.bg-body[b-dvwc55b0ps],
    .modal-content.iac-modal-container .modal-body.bg-body[b-dvwc55b0ps] {
        background: #ffffff !important;
    }

/* ============================================================
   FORM LABELS
   ============================================================ */
.modal-content.iac-modal-container .form-label[b-dvwc55b0ps],
.modal-content.iac-modal .form-label[b-dvwc55b0ps],
.modal-content.bo-revision-modal .form-label[b-dvwc55b0ps] {
    font-family: "din-2014","DIN Pro","DIN Next","Helvetica Neue",Arial,sans-serif !important;
    font-size: 0.68rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #3A4E6A !important;
    margin-bottom: 6px;
    display: block;
}

/* ============================================================
   INPUTS & SELECTS — light mode
   ============================================================ */
.modal-content.iac-modal-container .form-control[b-dvwc55b0ps],
.modal-content.iac-modal-container .form-select[b-dvwc55b0ps],
.modal-content.iac-modal .form-control[b-dvwc55b0ps],
.modal-content.iac-modal .form-select[b-dvwc55b0ps],
.modal-content.bo-revision-modal .form-control[b-dvwc55b0ps],
.modal-content.bo-revision-modal .form-select[b-dvwc55b0ps] {
    font-family: "din-2014","DIN Pro","DIN Next","Helvetica Neue",Arial,sans-serif !important;
    font-size: 0.875rem !important;
    font-weight: 500;
    background: #f8fafc !important;
    border: 1px solid rgba(0,0,0,0.14) !important;
    border-radius: 7px !important;
    color: #1a2e47 !important;
    padding: 9px 13px !important;
    transition: border-color 0.18s ease, box-shadow 0.18s ease;
}

    .modal-content.iac-modal-container .form-control:focus[b-dvwc55b0ps],
    .modal-content.iac-modal-container .form-select:focus[b-dvwc55b0ps],
    .modal-content.iac-modal .form-control:focus[b-dvwc55b0ps],
    .modal-content.iac-modal .form-select:focus[b-dvwc55b0ps],
    .modal-content.bo-revision-modal .form-control:focus[b-dvwc55b0ps],
    .modal-content.bo-revision-modal .form-select:focus[b-dvwc55b0ps] {
        border-color: #0057FF !important;
        box-shadow: 0 0 0 3px rgba(0,87,255,0.18) !important;
        background: #ffffff !important;
        outline: none !important;
    }

    .modal-content.iac-modal-container .form-control[readonly][b-dvwc55b0ps],
    .modal-content.iac-modal .form-control[readonly][b-dvwc55b0ps] {
        background: #f1f5f9 !important;
        opacity: 0.8;
    }

    .modal-content.iac-modal-container .form-control.font-monospace[b-dvwc55b0ps],
    .modal-content.iac-modal .form-control.font-monospace[b-dvwc55b0ps] {
        font-family: "JetBrains Mono","Fira Code",ui-monospace,monospace !important;
        font-size: 0.82rem !important;
        letter-spacing: 0.04em;
    }

/* ============================================================
   INPUT GROUP
   ============================================================ */
.modal-content.iac-modal-container .input-group .input-group-text[b-dvwc55b0ps],
.modal-content.iac-modal .input-group .input-group-text[b-dvwc55b0ps] {
    background: #eef2f9 !important;
    border: 1px solid rgba(0,0,0,0.14) !important;
    color: #5a7a9e !important;
    font-family: "din-2014","DIN Pro","DIN Next","Helvetica Neue",Arial,sans-serif;
    font-size: 0.82rem;
    font-weight: 600;
    border-radius: 7px !important;
}

.modal-content.iac-modal-container .input-group > .input-group-text:first-child[b-dvwc55b0ps],
.modal-content.iac-modal .input-group > .input-group-text:first-child[b-dvwc55b0ps] {
    border-right: none !important;
    border-radius: 7px 0 0 7px !important;
}

.modal-content.iac-modal-container .input-group > .form-control:not(:first-child)[b-dvwc55b0ps],
.modal-content.iac-modal .input-group > .form-control:not(:first-child)[b-dvwc55b0ps] {
    border-left: none !important;
    border-radius: 0 7px 7px 0 !important;
}

/* ============================================================
   CHECKBOXES — light mode
   ============================================================ */
.modal-content.iac-modal-container .form-check-input[type="checkbox"][b-dvwc55b0ps],
.modal-content.iac-modal .form-check-input[type="checkbox"][b-dvwc55b0ps],
.modal-content.bo-revision-modal .form-check-input[type="checkbox"][b-dvwc55b0ps] {
    width: 17px !important;
    height: 17px !important;
    border-radius: 5px !important;
    border: 1.5px solid rgba(0,0,0,0.20) !important;
    background: #ffffff !important;
    cursor: pointer;
    transition: background 0.18s ease, border-color 0.18s ease, box-shadow 0.18s ease;
    flex-shrink: 0;
}

    .modal-content.iac-modal-container .form-check-input[type="checkbox"]:checked[b-dvwc55b0ps],
    .modal-content.iac-modal .form-check-input[type="checkbox"]:checked[b-dvwc55b0ps],
    .modal-content.bo-revision-modal .form-check-input[type="checkbox"]:checked[b-dvwc55b0ps] {
        background-color: #0057FF !important;
        border-color: #0040CC !important;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' d='M3 8l3.5 3.5L13 4'/%3E%3C/svg%3E") !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: 11px !important;
        box-shadow: 0 0 0 3px rgba(0,87,255,0.18) !important;
    }

    .modal-content.iac-modal-container .form-check-input[type="checkbox"]:focus[b-dvwc55b0ps],
    .modal-content.iac-modal .form-check-input[type="checkbox"]:focus[b-dvwc55b0ps],
    .modal-content.bo-revision-modal .form-check-input[type="checkbox"]:focus[b-dvwc55b0ps] {
        box-shadow: 0 0 0 3px rgba(0,87,255,0.22) !important;
        border-color: #0057FF !important;
    }

.modal-content.iac-modal-container .form-check-label[b-dvwc55b0ps],
.modal-content.iac-modal .form-check-label[b-dvwc55b0ps],
.modal-content.bo-revision-modal .form-check-label[b-dvwc55b0ps] {
    font-family: "din-2014","DIN Pro","DIN Next","Helvetica Neue",Arial,sans-serif;
    font-size: 0.875rem;
    color: #1a2e47;
    cursor: pointer;
}

/* ============================================================
   FORM TEXT / HELPER
   ============================================================ */
.modal-content.iac-modal-container .form-text[b-dvwc55b0ps],
.modal-content.iac-modal .form-text[b-dvwc55b0ps],
.modal-content.bo-revision-modal .form-text[b-dvwc55b0ps] {
    font-size: 0.74rem !important;
    color: #7a8ea8 !important;
    margin-top: 4px;
}

/* ============================================================
   ALERTS — light mode
   ============================================================ */
.modal-content.iac-modal-container .alert[b-dvwc55b0ps],
.modal-content.iac-modal .alert[b-dvwc55b0ps],
.modal-content.bo-revision-modal .alert[b-dvwc55b0ps] {
    border-radius: 8px !important;
    font-family: "din-2014","DIN Pro","DIN Next","Helvetica Neue",Arial,sans-serif;
    font-size: 0.85rem;
    padding: 11px 15px !important;
    border: none !important;
}

.modal-content.iac-modal-container .alert-info[b-dvwc55b0ps],
.modal-content.iac-modal .alert-info[b-dvwc55b0ps] {
    background: rgba(0,87,255,0.07) !important;
    border-left: 3px solid #0057FF !important;
    color: #002855 !important;
}

.modal-content.iac-modal-container .alert-warning[b-dvwc55b0ps],
.modal-content.iac-modal .alert-warning[b-dvwc55b0ps],
.modal-content.bo-revision-modal .alert-warning[b-dvwc55b0ps] {
    background: rgba(241,184,40,0.12) !important;
    border-left: 3px solid #F1B828 !important;
    color: #5a3e00 !important;
}

.modal-content.iac-modal .alert-success[b-dvwc55b0ps] {
    background: rgba(18,160,88,0.09) !important;
    border-left: 3px solid #12A058 !important;
    color: #0a3d22 !important;
}

.modal-content.iac-modal .alert-danger[b-dvwc55b0ps] {
    background: rgba(220,53,69,0.09) !important;
    border-left: 3px solid #DC3545 !important;
    color: #6b0f1a !important;
}

/* ============================================================
   MODAL FOOTER — light mode
   ============================================================ */
.modal-content.iac-modal-container .modal-footer[b-dvwc55b0ps],
.modal-content.iac-modal .modal-footer[b-dvwc55b0ps],
.modal-content.bo-revision-modal .modal-footer[b-dvwc55b0ps],
.modal-footer.iac-modal-footer[b-dvwc55b0ps] {
    background: #EEF3FA !important;
    border-top: 1px solid rgba(0,40,85,0.12) !important;
    padding: 16px 26px !important;
    gap: 10px;
    display: flex !important;
    align-items: center;
    justify-content: flex-end;
    position: relative;
    z-index: 1;
    flex: 0 0 auto;
}

.modal-footer.iac-modal-footer[b-dvwc55b0ps] {
    justify-content: space-between;
}

.modal-content.iac-modal-container .modal-footer .btn[b-dvwc55b0ps],
.modal-content.iac-modal .modal-footer .btn[b-dvwc55b0ps],
.modal-content.bo-revision-modal .modal-footer .btn[b-dvwc55b0ps] {
    font-family: "din-2014","DIN Pro","DIN Next","Helvetica Neue",Arial,sans-serif !important;
    font-size: 0.82rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em;
    border-radius: 7px !important;
    padding: 8px 20px !important;
    transition: transform 0.15s ease, box-shadow 0.15s ease;
}

    .modal-content.iac-modal-container .modal-footer .btn:hover[b-dvwc55b0ps],
    .modal-content.iac-modal .modal-footer .btn:hover[b-dvwc55b0ps],
    .modal-content.bo-revision-modal .modal-footer .btn:hover[b-dvwc55b0ps] {
        transform: translateY(-1px);
        box-shadow: 0 4px 14px rgba(0,0,0,0.15);
    }

    .modal-content.iac-modal-container .modal-footer .btn:active[b-dvwc55b0ps],
    .modal-content.iac-modal .modal-footer .btn:active[b-dvwc55b0ps],
    .modal-content.bo-revision-modal .modal-footer .btn:active[b-dvwc55b0ps] {
        transform: translateY(0);
    }

/* ============================================================
   CARDS inside ORDER REVIEW — light mode
   ============================================================ */
.modal-content.iac-modal .card[b-dvwc55b0ps] {
    background: #f4f7fc !important;
    --bs-card-bg: #f4f7fc;
    border: 1px solid rgba(0,40,85,0.12) !important;
    border-radius: 11px !important;
    overflow: hidden;
}

.modal-content.iac-modal .card-header[b-dvwc55b0ps] {
    font-family: "din-2014","DIN Pro","DIN Next","Helvetica Neue",Arial,sans-serif !important;
    font-size: 0.67rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #3A4E6A !important;
    background: #e4ecf7 !important;
    border-bottom: 1px solid rgba(0,40,85,0.10) !important;
    padding: 10px 16px !important;
}

.modal-content.iac-modal .card-body[b-dvwc55b0ps] {
    background: #f4f7fc !important;
    padding: 16px !important;
}

.modal-content.iac-modal .text-muted[b-dvwc55b0ps] {
    color: #7a8ea8 !important;
}

.modal-content.iac-modal .text-success[b-dvwc55b0ps] {
    color: #12A058 !important;
}

.modal-content.iac-modal small[b-dvwc55b0ps],
.modal-content.iac-modal .small[b-dvwc55b0ps] {
    color: #7a8ea8;
}

.modal-content.iac-modal .fw-bold[b-dvwc55b0ps] {
    font-weight: 700 !important;
}

/* ============================================================
   TABLES inside modals — light mode
   ============================================================ */
.modal-content.iac-modal .table[b-dvwc55b0ps],
.modal-content.bo-revision-modal .table[b-dvwc55b0ps] {
    font-family: "din-2014","DIN Pro","DIN Next","Helvetica Neue",Arial,sans-serif;
    font-size: 0.875rem;
    color: #1a2e47;
    margin-bottom: 0;
    --bs-table-bg: transparent;
    --bs-table-border-color: rgba(0,40,85,0.10);
    --bs-table-color: #1a2e47;
}

    .modal-content.iac-modal .table th[b-dvwc55b0ps],
    .modal-content.bo-revision-modal .table th[b-dvwc55b0ps] {
        font-family: "din-2014","DIN Pro","DIN Next","Helvetica Neue",Arial,sans-serif !important;
        font-size: 0.67rem !important;
        font-weight: 800 !important;
        letter-spacing: 0.12em;
        text-transform: uppercase;
        color: #3A4E6A !important;
        background: #e4ecf7 !important;
        border-color: rgba(0,40,85,0.10) !important;
        padding: 10px 13px !important;
        white-space: nowrap;
    }

    .modal-content.iac-modal .table td[b-dvwc55b0ps],
    .modal-content.bo-revision-modal .table td[b-dvwc55b0ps] {
        border-color: rgba(0,40,85,0.07) !important;
        vertical-align: middle;
        padding: 10px 13px !important;
        color: #1a2e47;
    }

    .modal-content.iac-modal .table tbody tr:nth-child(odd) > td[b-dvwc55b0ps] {
        background: #ffffff !important;
    }

    .modal-content.iac-modal .table tbody tr:nth-child(even) > td[b-dvwc55b0ps] {
        background: #f0f5fc !important;
    }

    .modal-content.iac-modal .table tbody tr:hover > td[b-dvwc55b0ps] {
        background: #dce8f8 !important;
    }

.modal-content.iac-modal .order-review-table th[b-dvwc55b0ps] {
    background: #e4ecf7 !important;
    color: #002855 !important;
    border-bottom: 2px solid rgba(0,40,85,0.18) !important;
}

.modal-content.iac-modal .order-review-table tbody tr:nth-child(odd) > td[b-dvwc55b0ps] {
    background: #ffffff !important;
}

.modal-content.iac-modal .order-review-table tbody tr:nth-child(even) > td[b-dvwc55b0ps] {
    background: #f0f5fc !important;
}

.modal-content.bo-revision-modal .table-light[b-dvwc55b0ps],
.modal-content.bo-revision-modal thead.table-light tr[b-dvwc55b0ps] {
    background: #e4ecf7 !important;
    color: #3A4E6A !important;
    --bs-table-bg: #e4ecf7;
}

/* ============================================================
   BADGES
   ============================================================ */
.modal-content.iac-modal .badge[b-dvwc55b0ps],
.modal-content.bo-revision-modal .badge[b-dvwc55b0ps] {
    font-family: "din-2014","DIN Pro","DIN Next","Helvetica Neue",Arial,sans-serif;
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    padding: 4px 9px;
    border-radius: 5px;
}

/* ============================================================
   DROPDOWN
   ============================================================ */
.modal-content.iac-modal .dropdown-menu[b-dvwc55b0ps] {
    background: #ffffff;
    border: 1px solid rgba(0,40,85,0.14);
    border-radius: 11px;
    box-shadow: 0 8px 32px rgba(0,20,60,0.16);
    padding: 6px;
}

.modal-content.iac-modal .dropdown-item[b-dvwc55b0ps] {
    border-radius: 6px;
    font-family: "din-2014","DIN Pro","DIN Next","Helvetica Neue",Arial,sans-serif;
    font-size: 0.875rem;
    color: #1a2e47;
    padding: 8px 12px;
    transition: background 0.14s ease;
}

    .modal-content.iac-modal .dropdown-item:hover[b-dvwc55b0ps] {
        background: rgba(0,87,255,0.07);
        color: #0057FF;
    }

/* ============================================================
   LIST GROUP (Revision modal) — light mode
   ============================================================ */
.modal-content.bo-revision-modal .list-group[b-dvwc55b0ps] {
    border-radius: 10px !important;
    overflow: hidden;
    border: 1px solid rgba(0,40,85,0.12) !important;
}

.modal-content.bo-revision-modal .list-group-item[b-dvwc55b0ps] {
    font-family: "din-2014","DIN Pro","DIN Next","Helvetica Neue",Arial,sans-serif !important;
    background: #f8fafc !important;
    --bs-list-group-bg: #f8fafc;
    --bs-list-group-color: #1a2e47;
    border: none !important;
    border-bottom: 1px solid rgba(0,40,85,0.08) !important;
    color: #1a2e47 !important;
    font-size: 0.875rem;
    padding: 10px 16px !important;
    transition: background 0.14s ease, padding-left 0.14s ease;
}

    .modal-content.bo-revision-modal .list-group-item:last-child[b-dvwc55b0ps] {
        border-bottom: none !important;
    }

    .modal-content.bo-revision-modal .list-group-item:hover[b-dvwc55b0ps] {
        background: rgba(0,87,255,0.06) !important;
        padding-left: 20px !important;
        color: #0057FF !important;
    }

    .modal-content.bo-revision-modal .list-group-item.active[b-dvwc55b0ps] {
        background: linear-gradient(135deg, #0057FF 0%, #002855 100%) !important;
        --bs-list-group-active-bg: #0057FF;
        --bs-list-group-active-color: #ffffff;
        --bs-list-group-active-border-color: #0057FF;
        border-color: transparent !important;
        color: #ffffff !important;
        box-shadow: 0 3px 12px rgba(0,87,255,0.28);
    }

.modal-content.bo-revision-modal .bo-revision-diff-block[b-dvwc55b0ps],
.modal-content.bo-revision-modal .bo-review-compact[b-dvwc55b0ps],
.modal-content.bo-revision-modal .border.rounded[b-dvwc55b0ps] {
    background: #f8fbff !important;
    color: #1a2e47 !important;
    border: 1px solid rgba(0,40,85,0.12) !important;
    border-radius: 8px !important;
}

[data-bs-theme="dark"] .modal-content.bo-revision-modal .bo-revision-diff-block[b-dvwc55b0ps],
[data-bs-theme="dark"] .modal-content.bo-revision-modal .bo-review-compact[b-dvwc55b0ps],
[data-bs-theme="dark"] .modal-content.bo-revision-modal .border.rounded[b-dvwc55b0ps],
[data-theme="dark"] .modal-content.bo-revision-modal .bo-revision-diff-block[b-dvwc55b0ps],
[data-theme="dark"] .modal-content.bo-revision-modal .bo-review-compact[b-dvwc55b0ps],
[data-theme="dark"] .modal-content.bo-revision-modal .border.rounded[b-dvwc55b0ps],
.dark-mode .modal-content.bo-revision-modal .bo-revision-diff-block[b-dvwc55b0ps],
.dark-mode .modal-content.bo-revision-modal .bo-review-compact[b-dvwc55b0ps],
.dark-mode .modal-content.bo-revision-modal .border.rounded[b-dvwc55b0ps] {
    background: #141C2C !important;
    color: #e8edf5 !important;
    border: 1px solid rgba(143, 181, 212, 0.24) !important;
    border-radius: 8px !important;
}


.modal-content.bo-revision-modal textarea.form-control[b-dvwc55b0ps] {
    resize: vertical;
    min-height: 80px;
}

/* ============================================================
   SMALL CONFIRM MODALS
   ============================================================ */
/* ── modal-sm confirm dialogs: shrink to content, don't stretch ── */
.modal-dialog.modal-sm .modal-content.iac-modal-container[b-dvwc55b0ps] {
    border-radius: 14px !important;
    max-height: fit-content !important;
    height: auto !important;
}

    /* Body must NOT flex-grow — only as tall as its text */
    .modal-dialog.modal-sm .modal-content.iac-modal-container .modal-body[b-dvwc55b0ps],
    .modal-dialog.modal-sm .modal-body.iac-modal-body[b-dvwc55b0ps] {
        flex: 0 0 auto !important;
        overflow-y: visible !important;
    }

/* Position sm modals below the navbar, not screen-center */
.iac-modal-overlay .modal-dialog.modal-sm.modal-dialog-centered[b-dvwc55b0ps],
.bo-modal-root .modal-dialog.modal-sm.modal-dialog-centered[b-dvwc55b0ps] {
    margin-top: 80px !important;
    margin-bottom: auto !important;
    align-items: flex-start !important;
    min-height: unset !important;
}

.modal-dialog.modal-sm .modal-header.iac-modal-header[b-dvwc55b0ps] {
    padding: 18px 20px !important;
}

.modal-dialog.modal-sm .modal-body.iac-modal-body[b-dvwc55b0ps] {
    padding: 20px !important;
}

.modal-dialog.modal-sm .modal-footer[b-dvwc55b0ps] {
    padding: 14px 20px !important;
}

.modal-dialog.modal-sm .modal-body.iac-modal-body p[b-dvwc55b0ps] {
    font-family: "din-2014","DIN Pro","DIN Next","Helvetica Neue",Arial,sans-serif;
    font-size: 0.92rem;
    line-height: 1.65;
    color: #1a2e47;
}

    .modal-dialog.modal-sm .modal-body.iac-modal-body p.small[b-dvwc55b0ps] {
        font-size: 0.80rem;
        color: #7a8ea8;
    }

.modal-dialog.modal-lg[b-dvwc55b0ps] {
    margin-top: 80px;
}

/* On phones the 80px margin-top would push the modal off the top of the screen */
@media (max-width: 768px) {
    .modal-dialog.modal-lg[b-dvwc55b0ps] {
        margin-top: 0;
    }
}

/* ============================================================
   BACKOFFICE MODAL POSITIONING OVERRIDES
   These rules win against any global site.css declarations so
   every BackOffice modal opens at the correct position below
   the navbar, never clipped behind it.
   ============================================================ */

/* All BackOffice modals: reset the global min-height and margin-top
   that Doors.razor sets so they don't leak into this page.
   iac-modal-overlay = first-layer modals (User, pw-reset, etc.)
   bo-modal-root     = second-layer / stacked modals */
.iac-modal-overlay .modal-dialog[b-dvwc55b0ps],
.bo-modal-root .modal-dialog[b-dvwc55b0ps] {
    min-height: unset !important;
    margin-bottom: 0;
    display: flex;
    flex-direction: column;
}

    /* modal-lg (non-centered): sits 80px below the navbar — gives visual separation */
    .iac-modal-overlay .modal-dialog.modal-lg[b-dvwc55b0ps],
    .bo-modal-root .modal-dialog.modal-lg[b-dvwc55b0ps] {
        margin-top: 80px !important;
    }

    /* modal-sm (confirmation dialogs): sit below navbar, shrink to content */
    .iac-modal-overlay .modal-dialog.modal-sm.modal-dialog-centered[b-dvwc55b0ps],
    .bo-modal-root .modal-dialog.modal-sm.modal-dialog-centered[b-dvwc55b0ps] {
        margin-top: 80px !important;
        margin-bottom: auto !important;
        align-items: flex-start !important;
        min-height: unset !important;
    }

    /* modal-md (centered, e.g. hardware edit): Bootstrap default centering */
    .iac-modal-overlay .modal-dialog.modal-dialog-centered[b-dvwc55b0ps],
    .bo-modal-root .modal-dialog.modal-dialog-centered[b-dvwc55b0ps] {
        margin-top: auto !important;
        margin-bottom: auto !important;
        align-items: center !important;
        min-height: calc(100% - 3.5rem) !important;
    }

    /* Ensure modal-lg that is also centered (e.g. Quote Review modal) centers properly */
    .bo-modal-root .modal-dialog.modal-lg.modal-dialog-centered[b-dvwc55b0ps] {
        margin-top: auto !important;
        margin-bottom: auto !important;
        align-items: center !important;
    }

@media (max-width: 768px) {
    .iac-modal-overlay .modal-dialog.modal-lg[b-dvwc55b0ps],
    .bo-modal-root .modal-dialog.modal-lg[b-dvwc55b0ps] {
        margin-top: 0 !important;
    }
}

/* XL centered modal: push below navbar using padding-top on the wrapping modal element */
.bo-modal-root .modal-dialog.modal-xl.modal-dialog-centered[b-dvwc55b0ps] {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    min-height: calc(100vh - 3.5rem);
    display: flex;
    align-items: center;
    /* Shift the centering axis down so the modal clears the ~60px navbar */
    padding-top: 64px;
    padding-bottom: 0;
}

    .bo-modal-root .modal-dialog.modal-xl.modal-dialog-centered .modal-content[b-dvwc55b0ps] {
        max-height: calc(90vh - 64px);
    }

/* ============================================================
   TALL / SCROLLABLE MODALS
   ============================================================ */
.bo-modal-open[b-dvwc55b0ps] {
    overflow: hidden !important;
}

body:has(.bo-modal-open)[b-dvwc55b0ps] {
    overflow: hidden !important;
}

/* Shift modal DOWN so it clears the top navbar */
.bo-modal-shift-up[b-dvwc55b0ps] {
    transform: translateY(4vh);
    align-items: flex-start;
    padding-top: 72px; /* height of top navbar — adjust if your navbar height differs */
}

.bo-modal-85vh[b-dvwc55b0ps] {
    height: 85vh;
    max-height: 85vh;
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

    .bo-modal-85vh .modal-body[b-dvwc55b0ps] {
        flex: 1 1 auto;
        min-height: 0;
        overflow: auto;
        overscroll-behavior: contain;
    }

    .bo-modal-85vh .modal-header[b-dvwc55b0ps],
    .bo-modal-85vh .modal-footer[b-dvwc55b0ps] {
        flex: 0 0 auto;
    }

.modal-content.bo-modal-85vh[b-dvwc55b0ps] {
    max-height: 85vh;
    display: flex;
    flex-direction: column;
}

    .modal-content.bo-modal-85vh .modal-body[b-dvwc55b0ps] {
        flex: 1;
        min-height: 0;
        overflow-y: auto;
    }

/* ============================================================
   REVISION MODAL LAYOUT
   ============================================================ */
.bo-revision-modal[b-dvwc55b0ps] {
    height: 78vh;
    max-height: 78vh;
}

    .bo-revision-modal .modal-body[b-dvwc55b0ps] {
        display: flex;
        flex-direction: column;
    }

    .bo-revision-modal .bo-revision-body-row[b-dvwc55b0ps] {
        flex: 1 1 auto;
        min-height: 0;
    }

    .bo-revision-modal .bo-revision-right[b-dvwc55b0ps] {
        overflow-y: auto;
        min-height: 0;
        padding-right: 6px;
    }

/* ============================================================
   HARDWARE VIEW
   ============================================================ */
.modal-content.iac-modal .bo-hw-sec[b-dvwc55b0ps] {
    margin-bottom: 14px;
    padding: 12px 14px;
    background: #f4f7fc;
    border-radius: 8px;
    border: 1px solid rgba(0,40,85,0.10);
}

.modal-content.iac-modal .bo-hw-sec-title[b-dvwc55b0ps] {
    font-family: "din-2014","DIN Pro","DIN Next","Helvetica Neue",Arial,sans-serif;
    font-size: 0.66rem;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: #0057FF;
    margin-bottom: 8px;
}

.modal-content.iac-modal .bo-hw-dl[b-dvwc55b0ps] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(170px, 1fr));
    gap: 4px;
}

.modal-content.iac-modal .bo-hw-row[b-dvwc55b0ps] {
    display: flex;
    gap: 8px;
    font-size: 0.82rem;
    align-items: baseline;
}

    .modal-content.iac-modal .bo-hw-row dt[b-dvwc55b0ps] {
        color: #7a8ea8;
        font-weight: 500;
        min-width: 64px;
    }

    .modal-content.iac-modal .bo-hw-row dd[b-dvwc55b0ps] {
        color: #1a2e47;
        margin: 0;
        font-weight: 600;
    }

.modal-content.iac-modal .bo-hw-badges[b-dvwc55b0ps] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.modal-content.iac-modal .bo-hw-notes[b-dvwc55b0ps] {
    font-size: 0.82rem;
    line-height: 1.55;
    color: #7a8ea8;
}

/* ============================================================
   SPINNER
   ============================================================ */
.modal-content.iac-modal-container .spinner-border[b-dvwc55b0ps],
.modal-content.iac-modal .spinner-border[b-dvwc55b0ps],
.modal-content.bo-revision-modal .spinner-border[b-dvwc55b0ps] {
    width: 1rem;
    height: 1rem;
    border-width: 2px;
    color: #0057FF;
}

/* ============================================================
   Z-INDEX LAYERS
   ============================================================ */
.bo-modal-layer-800[b-dvwc55b0ps] {
    z-index: 800 !important;
}

.bo-modal-layer-851[b-dvwc55b0ps] {
    z-index: 851 !important;
}

.bo-modal-layer-900[b-dvwc55b0ps] {
    z-index: 900 !important;
}

.bo-modal-layer-951[b-dvwc55b0ps] {
    z-index: 951 !important;
}

/* ============================================================
   ERROR OVERLAY
   ============================================================ */
.error-modal-overlay[b-dvwc55b0ps] {
    position: fixed;
    inset: 0;
    z-index: 99999;
    background: transparent;
    backdrop-filter: none;
    display: flex;
    align-items: center;
    justify-content: center;
    isolation: isolate;
}

/* ============================================================
   SCROLLBAR — thin IAC-blue/gold
   ============================================================ */
.modal-content.iac-modal-container .modal-body[b-dvwc55b0ps]::-webkit-scrollbar,
.modal-content.iac-modal .modal-body[b-dvwc55b0ps]::-webkit-scrollbar,
.modal-content.bo-revision-modal .modal-body[b-dvwc55b0ps]::-webkit-scrollbar,
.modal-content.bo-modal-85vh .modal-body[b-dvwc55b0ps]::-webkit-scrollbar {
    width: 4px;
}

.modal-content.iac-modal-container .modal-body[b-dvwc55b0ps]::-webkit-scrollbar-track,
.modal-content.iac-modal .modal-body[b-dvwc55b0ps]::-webkit-scrollbar-track,
.modal-content.bo-revision-modal .modal-body[b-dvwc55b0ps]::-webkit-scrollbar-track,
.modal-content.bo-modal-85vh .modal-body[b-dvwc55b0ps]::-webkit-scrollbar-track {
    background: transparent;
}

.modal-content.iac-modal-container .modal-body[b-dvwc55b0ps]::-webkit-scrollbar-thumb,
.modal-content.iac-modal .modal-body[b-dvwc55b0ps]::-webkit-scrollbar-thumb,
.modal-content.bo-revision-modal .modal-body[b-dvwc55b0ps]::-webkit-scrollbar-thumb,
.modal-content.bo-modal-85vh .modal-body[b-dvwc55b0ps]::-webkit-scrollbar-thumb {
    background: linear-gradient(180deg, #0057FF, #F1B828);
    border-radius: 999px;
}

/* ============================================================
   ACCESSIBILITY
   ============================================================ */
.modal-content.iac-modal-container *:focus-visible[b-dvwc55b0ps],
.modal-content.iac-modal *:focus-visible[b-dvwc55b0ps],
.modal-content.bo-revision-modal *:focus-visible[b-dvwc55b0ps] {
    outline: 2px solid #0057FF !important;
    outline-offset: 2px !important;
    box-shadow: 0 0 0 4px rgba(0,87,255,0.20) !important;
}

/* ============================================================
   DARK MODE — [data-bs-theme="dark"] / [data-theme="dark"] / .dark-mode
   ============================================================ */
[data-bs-theme="dark"] .modal-backdrop.show[b-dvwc55b0ps],
[data-theme="dark"] .modal-backdrop.show[b-dvwc55b0ps],
.dark-mode .modal-backdrop.show[b-dvwc55b0ps] {
    background: rgba(2, 5, 14, 0.80) !important;
}

[data-bs-theme="dark"] .modal-content.iac-modal-container[b-dvwc55b0ps],
[data-bs-theme="dark"] .modal-content.iac-modal[b-dvwc55b0ps],
[data-bs-theme="dark"] .modal-content.bo-revision-modal[b-dvwc55b0ps],
[data-theme="dark"] .modal-content.iac-modal-container[b-dvwc55b0ps],
[data-theme="dark"] .modal-content.iac-modal[b-dvwc55b0ps],
[data-theme="dark"] .modal-content.bo-revision-modal[b-dvwc55b0ps],
.dark-mode .modal-content.iac-modal-container[b-dvwc55b0ps],
.dark-mode .modal-content.iac-modal[b-dvwc55b0ps],
.dark-mode .modal-content.bo-revision-modal[b-dvwc55b0ps] {
    background: #0F1520 !important;
    --bs-modal-bg: #0F1520;
    border-color: rgba(255,255,255,0.09) !important;
    box-shadow: 0 0 0 1px rgba(0,87,255,0.18), 0 8px 40px rgba(0,0,0,0.60), 0 24px 64px rgba(0,0,0,0.50) !important;
    color: #c8d8ea;
}

    /* Dark header */
    [data-bs-theme="dark"] .modal-header.iac-modal-header[b-dvwc55b0ps],
    [data-bs-theme="dark"] .modal-content.bo-revision-modal .modal-header[b-dvwc55b0ps],
    [data-theme="dark"] .modal-header.iac-modal-header[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.bo-revision-modal .modal-header[b-dvwc55b0ps],
    .dark-mode .modal-header.iac-modal-header[b-dvwc55b0ps],
    .dark-mode .modal-content.bo-revision-modal .modal-header[b-dvwc55b0ps] {
        background: #141C2C !important;
        border-bottom-color: rgba(255,255,255,0.08) !important;
    }

        [data-bs-theme="dark"] .modal-header.iac-modal-header .modal-title[b-dvwc55b0ps],
        [data-bs-theme="dark"] .modal-title.modal-title-text[b-dvwc55b0ps],
        [data-bs-theme="dark"] .modal-content.bo-revision-modal .modal-header .modal-title[b-dvwc55b0ps],
        [data-theme="dark"] .modal-header.iac-modal-header .modal-title[b-dvwc55b0ps],
        [data-theme="dark"] .modal-title.modal-title-text[b-dvwc55b0ps],
        [data-theme="dark"] .modal-content.bo-revision-modal .modal-header .modal-title[b-dvwc55b0ps],
        .dark-mode .modal-header.iac-modal-header .modal-title[b-dvwc55b0ps],
        .dark-mode .modal-title.modal-title-text[b-dvwc55b0ps] {
            color: #e8f1ff !important;
        }

        [data-bs-theme="dark"] .modal-header.iac-modal-header .modal-subtitle-text[b-dvwc55b0ps],
        [data-bs-theme="dark"] .modal-header.iac-modal-header .opacity-75[b-dvwc55b0ps],
        [data-theme="dark"] .modal-header.iac-modal-header .modal-subtitle-text[b-dvwc55b0ps],
        [data-theme="dark"] .modal-header.iac-modal-header .opacity-75[b-dvwc55b0ps],
        .dark-mode .modal-header.iac-modal-header .modal-subtitle-text[b-dvwc55b0ps] {
            color: #7a8ea8 !important;
        }

    /* Dark tabs */
    [data-bs-theme="dark"] .modal-content.iac-modal-container .nav-tabs[b-dvwc55b0ps],
    [data-bs-theme="dark"] .modal-content.iac-modal .nav-tabs[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal-container .nav-tabs[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .nav-tabs[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal-container .nav-tabs[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .nav-tabs[b-dvwc55b0ps] {
        background: #141C2C;
        border-bottom-color: rgba(255,255,255,0.08) !important;
    }

        [data-bs-theme="dark"] .modal-content.iac-modal-container .nav-tabs .nav-link[b-dvwc55b0ps],
        [data-bs-theme="dark"] .modal-content.iac-modal .nav-tabs .nav-link[b-dvwc55b0ps],
        [data-theme="dark"] .modal-content.iac-modal-container .nav-tabs .nav-link[b-dvwc55b0ps],
        [data-theme="dark"] .modal-content.iac-modal .nav-tabs .nav-link[b-dvwc55b0ps],
        .dark-mode .modal-content.iac-modal-container .nav-tabs .nav-link[b-dvwc55b0ps],
        .dark-mode .modal-content.iac-modal .nav-tabs .nav-link[b-dvwc55b0ps] {
            color: #5a7a9e !important;
        }

            [data-bs-theme="dark"] .modal-content.iac-modal-container .nav-tabs .nav-link:hover[b-dvwc55b0ps],
            [data-bs-theme="dark"] .modal-content.iac-modal .nav-tabs .nav-link:hover[b-dvwc55b0ps],
            [data-theme="dark"] .modal-content.iac-modal-container .nav-tabs .nav-link:hover[b-dvwc55b0ps],
            [data-theme="dark"] .modal-content.iac-modal .nav-tabs .nav-link:hover[b-dvwc55b0ps],
            .dark-mode .modal-content.iac-modal-container .nav-tabs .nav-link:hover[b-dvwc55b0ps],
            .dark-mode .modal-content.iac-modal .nav-tabs .nav-link:hover[b-dvwc55b0ps] {
                color: #e8f1ff !important;
            }

            [data-bs-theme="dark"] .modal-content.iac-modal-container .nav-tabs .nav-link.active[b-dvwc55b0ps],
            [data-bs-theme="dark"] .modal-content.iac-modal .nav-tabs .nav-link.active[b-dvwc55b0ps],
            [data-theme="dark"] .modal-content.iac-modal-container .nav-tabs .nav-link.active[b-dvwc55b0ps],
            [data-theme="dark"] .modal-content.iac-modal .nav-tabs .nav-link.active[b-dvwc55b0ps],
            .dark-mode .modal-content.iac-modal-container .nav-tabs .nav-link.active[b-dvwc55b0ps],
            .dark-mode .modal-content.iac-modal .nav-tabs .nav-link.active[b-dvwc55b0ps] {
                color: #e8f1ff !important;
                border-bottom-color: #F1B828 !important;
            }

    /* Dark body */
    [data-bs-theme="dark"] .modal-body.iac-modal-body[b-dvwc55b0ps],
    [data-bs-theme="dark"] .modal-content.iac-modal-container .modal-body[b-dvwc55b0ps],
    [data-bs-theme="dark"] .modal-content.iac-modal .modal-body[b-dvwc55b0ps],
    [data-bs-theme="dark"] .modal-content.bo-revision-modal .modal-body[b-dvwc55b0ps],
    [data-theme="dark"] .modal-body.iac-modal-body[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal-container .modal-body[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .modal-body[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.bo-revision-modal .modal-body[b-dvwc55b0ps],
    .dark-mode .modal-body.iac-modal-body[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal-container .modal-body[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .modal-body[b-dvwc55b0ps],
    .dark-mode .modal-content.bo-revision-modal .modal-body[b-dvwc55b0ps] {
        background: #0F1520 !important;
        --bs-body-bg: #0F1520;
        color: #c8d8ea;
    }

    /* Dark inputs */
    [data-bs-theme="dark"] .modal-content.iac-modal-container .form-control[b-dvwc55b0ps],
    [data-bs-theme="dark"] .modal-content.iac-modal-container .form-select[b-dvwc55b0ps],
    [data-bs-theme="dark"] .modal-content.iac-modal .form-control[b-dvwc55b0ps],
    [data-bs-theme="dark"] .modal-content.iac-modal .form-select[b-dvwc55b0ps],
    [data-bs-theme="dark"] .modal-content.bo-revision-modal .form-control[b-dvwc55b0ps],
    [data-bs-theme="dark"] .modal-content.bo-revision-modal .form-select[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal-container .form-control[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal-container .form-select[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .form-control[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .form-select[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.bo-revision-modal .form-control[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.bo-revision-modal .form-select[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal-container .form-control[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal-container .form-select[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .form-control[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .form-select[b-dvwc55b0ps],
    .dark-mode .modal-content.bo-revision-modal .form-control[b-dvwc55b0ps],
    .dark-mode .modal-content.bo-revision-modal .form-select[b-dvwc55b0ps] {
        background: #141C2C !important;
        border-color: rgba(255,255,255,0.11) !important;
        color: #c8d8ea !important;
    }

        [data-bs-theme="dark"] .modal-content.iac-modal-container .form-control:focus[b-dvwc55b0ps],
        [data-bs-theme="dark"] .modal-content.iac-modal .form-control:focus[b-dvwc55b0ps],
        [data-bs-theme="dark"] .modal-content.bo-revision-modal .form-control:focus[b-dvwc55b0ps],
        [data-theme="dark"] .modal-content.iac-modal-container .form-control:focus[b-dvwc55b0ps],
        [data-theme="dark"] .modal-content.iac-modal .form-control:focus[b-dvwc55b0ps],
        [data-theme="dark"] .modal-content.bo-revision-modal .form-control:focus[b-dvwc55b0ps],
        .dark-mode .modal-content.iac-modal-container .form-control:focus[b-dvwc55b0ps],
        .dark-mode .modal-content.iac-modal .form-control:focus[b-dvwc55b0ps],
        .dark-mode .modal-content.bo-revision-modal .form-control:focus[b-dvwc55b0ps] {
            border-color: #3A7FFF !important;
            box-shadow: 0 0 0 3px rgba(44,123,255,0.28) !important;
            background: #1A2236 !important;
        }

    [data-bs-theme="dark"] .modal-content.iac-modal-container .form-label[b-dvwc55b0ps],
    [data-bs-theme="dark"] .modal-content.iac-modal .form-label[b-dvwc55b0ps],
    [data-bs-theme="dark"] .modal-content.bo-revision-modal .form-label[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal-container .form-label[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .form-label[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.bo-revision-modal .form-label[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal-container .form-label[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .form-label[b-dvwc55b0ps],
    .dark-mode .modal-content.bo-revision-modal .form-label[b-dvwc55b0ps] {
        color: #8eb5d4 !important;
    }

    [data-bs-theme="dark"] .modal-content.iac-modal-container .form-check-label[b-dvwc55b0ps],
    [data-bs-theme="dark"] .modal-content.iac-modal .form-check-label[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal-container .form-check-label[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .form-check-label[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal-container .form-check-label[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .form-check-label[b-dvwc55b0ps] {
        color: #c8d8ea;
    }

    /* Dark checkboxes */
    [data-bs-theme="dark"] .modal-content.iac-modal-container .form-check-input[type="checkbox"][b-dvwc55b0ps],
    [data-bs-theme="dark"] .modal-content.iac-modal .form-check-input[type="checkbox"][b-dvwc55b0ps],
    [data-bs-theme="dark"] .modal-content.bo-revision-modal .form-check-input[type="checkbox"][b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal-container .form-check-input[type="checkbox"][b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .form-check-input[type="checkbox"][b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.bo-revision-modal .form-check-input[type="checkbox"][b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal-container .form-check-input[type="checkbox"][b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .form-check-input[type="checkbox"][b-dvwc55b0ps] {
        background-color: #1C2738 !important;
        border-color: #6F93C3 !important;
    }

    /* Dark input group text */
    [data-bs-theme="dark"] .modal-content.iac-modal-container .input-group .input-group-text[b-dvwc55b0ps],
    [data-bs-theme="dark"] .modal-content.iac-modal .input-group .input-group-text[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal-container .input-group .input-group-text[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .input-group .input-group-text[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal-container .input-group .input-group-text[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .input-group .input-group-text[b-dvwc55b0ps] {
        background: #1A2236 !important;
        border-color: rgba(255,255,255,0.11) !important;
        color: #7a8ea8 !important;
    }

    /* Dark footer */
    [data-bs-theme="dark"] .modal-content.iac-modal-container .modal-footer[b-dvwc55b0ps],
    [data-bs-theme="dark"] .modal-content.iac-modal .modal-footer[b-dvwc55b0ps],
    [data-bs-theme="dark"] .modal-content.bo-revision-modal .modal-footer[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal-container .modal-footer[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .modal-footer[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.bo-revision-modal .modal-footer[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal-container .modal-footer[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .modal-footer[b-dvwc55b0ps],
    .dark-mode .modal-content.bo-revision-modal .modal-footer[b-dvwc55b0ps] {
        background: #141C2C !important;
        border-top-color: rgba(255,255,255,0.08) !important;
    }

    /* Dark cards */
    [data-bs-theme="dark"] .modal-content.iac-modal .card[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .card[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .card[b-dvwc55b0ps] {
        background: #141C2C !important;
        --bs-card-bg: #141C2C;
        border-color: rgba(255,255,255,0.08) !important;
    }

    [data-bs-theme="dark"] .modal-content.iac-modal .card-header[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .card-header[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .card-header[b-dvwc55b0ps] {
        background: #1A2236 !important;
        border-bottom-color: rgba(255,255,255,0.07) !important;
        color: #8eb5d4 !important;
    }

    [data-bs-theme="dark"] .modal-content.iac-modal .card-body[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .card-body[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .card-body[b-dvwc55b0ps] {
        background: #141C2C !important;
    }

    /* Dark tables */
    [data-bs-theme="dark"] .modal-content.iac-modal .table[b-dvwc55b0ps],
    [data-bs-theme="dark"] .modal-content.bo-revision-modal .table[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .table[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.bo-revision-modal .table[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .table[b-dvwc55b0ps],
    .dark-mode .modal-content.bo-revision-modal .table[b-dvwc55b0ps] {
        color: #c8d8ea;
        --bs-table-color: #c8d8ea;
        --bs-table-border-color: rgba(255,255,255,0.07);
    }

        [data-bs-theme="dark"] .modal-content.iac-modal .table th[b-dvwc55b0ps],
        [data-bs-theme="dark"] .modal-content.bo-revision-modal .table th[b-dvwc55b0ps],
        [data-theme="dark"] .modal-content.iac-modal .table th[b-dvwc55b0ps],
        [data-theme="dark"] .modal-content.bo-revision-modal .table th[b-dvwc55b0ps],
        .dark-mode .modal-content.iac-modal .table th[b-dvwc55b0ps],
        .dark-mode .modal-content.bo-revision-modal .table th[b-dvwc55b0ps] {
            background: #1A2236 !important;
            color: #8eb5d4 !important;
            border-color: rgba(255,255,255,0.08) !important;
        }

        [data-bs-theme="dark"] .modal-content.iac-modal .table td[b-dvwc55b0ps],
        [data-bs-theme="dark"] .modal-content.bo-revision-modal .table td[b-dvwc55b0ps],
        [data-theme="dark"] .modal-content.iac-modal .table td[b-dvwc55b0ps],
        [data-theme="dark"] .modal-content.bo-revision-modal .table td[b-dvwc55b0ps],
        .dark-mode .modal-content.iac-modal .table td[b-dvwc55b0ps],
        .dark-mode .modal-content.bo-revision-modal .table td[b-dvwc55b0ps] {
            border-color: rgba(255,255,255,0.06) !important;
            color: #c8d8ea;
        }

        [data-bs-theme="dark"] .modal-content.iac-modal .table tbody tr:nth-child(odd) > td[b-dvwc55b0ps],
        [data-theme="dark"] .modal-content.iac-modal .table tbody tr:nth-child(odd) > td[b-dvwc55b0ps],
        .dark-mode .modal-content.iac-modal .table tbody tr:nth-child(odd) > td[b-dvwc55b0ps] {
            background: #0F1520 !important;
        }

        [data-bs-theme="dark"] .modal-content.iac-modal .table tbody tr:nth-child(even) > td[b-dvwc55b0ps],
        [data-theme="dark"] .modal-content.iac-modal .table tbody tr:nth-child(even) > td[b-dvwc55b0ps],
        .dark-mode .modal-content.iac-modal .table tbody tr:nth-child(even) > td[b-dvwc55b0ps] {
            background: #141C2C !important;
        }

        [data-bs-theme="dark"] .modal-content.iac-modal .table tbody tr:hover > td[b-dvwc55b0ps],
        [data-theme="dark"] .modal-content.iac-modal .table tbody tr:hover > td[b-dvwc55b0ps],
        .dark-mode .modal-content.iac-modal .table tbody tr:hover > td[b-dvwc55b0ps] {
            background: rgba(0,87,255,0.09) !important;
        }

    [data-bs-theme="dark"] .modal-content.iac-modal .order-review-table th[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .order-review-table th[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .order-review-table th[b-dvwc55b0ps] {
        background: rgba(0,40,85,0.55) !important;
        color: #8eb5d4 !important;
        border-bottom-color: rgba(255,255,255,0.12) !important;
    }

    [data-bs-theme="dark"] .modal-content.iac-modal .order-review-table tbody tr:nth-child(odd) > td[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .order-review-table tbody tr:nth-child(odd) > td[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .order-review-table tbody tr:nth-child(odd) > td[b-dvwc55b0ps] {
        background: #0F1520 !important;
    }

    [data-bs-theme="dark"] .modal-content.iac-modal .order-review-table tbody tr:nth-child(even) > td[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .order-review-table tbody tr:nth-child(even) > td[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .order-review-table tbody tr:nth-child(even) > td[b-dvwc55b0ps] {
        background: #141C2C !important;
    }

    /* Dark list group */
    [data-bs-theme="dark"] .modal-content.bo-revision-modal .list-group-item[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.bo-revision-modal .list-group-item[b-dvwc55b0ps],
    .dark-mode .modal-content.bo-revision-modal .list-group-item[b-dvwc55b0ps] {
        background: #141C2C !important;
        --bs-list-group-bg: #141C2C;
        --bs-list-group-color: #c8d8ea;
        border-bottom-color: rgba(255,255,255,0.07) !important;
        color: #c8d8ea !important;
    }

        [data-bs-theme="dark"] .modal-content.bo-revision-modal .list-group-item:hover[b-dvwc55b0ps],
        [data-theme="dark"] .modal-content.bo-revision-modal .list-group-item:hover[b-dvwc55b0ps],
        .dark-mode .modal-content.bo-revision-modal .list-group-item:hover[b-dvwc55b0ps] {
            background: rgba(0,87,255,0.12) !important;
            color: #90b8ff !important;
        }

    /* Dark text helpers */
    [data-bs-theme="dark"] .modal-content.iac-modal .text-muted[b-dvwc55b0ps],
    [data-bs-theme="dark"] .modal-content.iac-modal-container .text-muted[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .text-muted[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal-container .text-muted[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .text-muted[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal-container .text-muted[b-dvwc55b0ps] {
        color: #7a8ea8 !important;
    }

    /* Dark mode — plain paragraph text and bold labels inside iac-modal-container */
    [data-bs-theme="dark"] .modal-content.iac-modal-container .modal-body p[b-dvwc55b0ps],
    [data-bs-theme="dark"] .modal-content.iac-modal-container .modal-body strong[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal-container .modal-body p[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal-container .modal-body strong[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal-container .modal-body p[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal-container .modal-body strong[b-dvwc55b0ps] {
        color: #c8d8ea !important;
    }

    [data-bs-theme="dark"] .modal-content.iac-modal .text-success[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .text-success[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .text-success[b-dvwc55b0ps] {
        color: #34d07a !important;
    }

    [data-bs-theme="dark"] .modal-content.iac-modal small[b-dvwc55b0ps],
    [data-bs-theme="dark"] .modal-content.iac-modal .small[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal small[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .small[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal small[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .small[b-dvwc55b0ps] {
        color: #5a7a9e;
    }

    /* Dark hw sections */
    [data-bs-theme="dark"] .modal-content.iac-modal .bo-hw-sec[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .bo-hw-sec[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .bo-hw-sec[b-dvwc55b0ps] {
        background: #141C2C;
        border-color: rgba(255,255,255,0.07);
    }

    [data-bs-theme="dark"] .modal-content.iac-modal .bo-hw-row dt[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .bo-hw-row dt[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .bo-hw-row dt[b-dvwc55b0ps] {
        color: #5a7a9e;
    }

    [data-bs-theme="dark"] .modal-content.iac-modal .bo-hw-row dd[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .bo-hw-row dd[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .bo-hw-row dd[b-dvwc55b0ps] {
        color: #c8d8ea;
    }

    /* Dark dropdown */
    [data-bs-theme="dark"] .modal-content.iac-modal .dropdown-menu[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .dropdown-menu[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .dropdown-menu[b-dvwc55b0ps] {
        background: #141C2C;
        border-color: rgba(255,255,255,0.09);
        box-shadow: 0 8px 32px rgba(0,0,0,0.50);
    }

    [data-bs-theme="dark"] .modal-content.iac-modal .dropdown-item[b-dvwc55b0ps],
    [data-theme="dark"] .modal-content.iac-modal .dropdown-item[b-dvwc55b0ps],
    .dark-mode .modal-content.iac-modal .dropdown-item[b-dvwc55b0ps] {
        color: #c8d8ea;
    }

        [data-bs-theme="dark"] .modal-content.iac-modal .dropdown-item:hover[b-dvwc55b0ps],
        [data-theme="dark"] .modal-content.iac-modal .dropdown-item:hover[b-dvwc55b0ps],
        .dark-mode .modal-content.iac-modal .dropdown-item:hover[b-dvwc55b0ps] {
            background: rgba(0,87,255,0.12);
            color: #90b8ff;
        }

/* ============================================================
   RESPONSIVE
   ============================================================ */

/* ── ≤768px: modals go edge-to-edge, body scrolls, footer always visible ── */
@media (max-width: 768px) {

    /* Large modals: edge-to-edge, no top gap */
    .modal-dialog.modal-lg[b-dvwc55b0ps],
    .modal-dialog.modal-xl[b-dvwc55b0ps] {
        margin: 0 !important;
        max-width: 100vw !important;
        width: 100vw !important;
        min-height: 100dvh;
        display: flex;
        align-items: flex-end; /* bottom-sheet style */
    }

    /* Small / centred confirm dialogs: keep them centred with a small margin */
    .modal-dialog.modal-sm[b-dvwc55b0ps],
    .modal-dialog.modal-dialog-centered[b-dvwc55b0ps] {
        margin: 1rem auto !important;
        max-width: calc(100vw - 2rem) !important;
        width: calc(100vw - 2rem) !important;
    }

    /* Modal card: fills screen, uses flex so footer never hides */
    .modal-content.iac-modal-container[b-dvwc55b0ps],
    .modal-content.iac-modal[b-dvwc55b0ps],
    .modal-content.bo-revision-modal[b-dvwc55b0ps] {
        border-radius: 16px 16px 0 0 !important;
        max-height: 92dvh !important;
        height: 92dvh !important;
        display: flex !important;
        flex-direction: column !important;
        overflow: hidden !important;
        /* iOS stacking-context fix — don't set overflow:hidden on a parent
           that contains position:fixed children; use clip instead when possible */
    }

        /* Header: fixed height, never scrolls */
        .modal-header.iac-modal-header[b-dvwc55b0ps],
        .modal-content.bo-revision-modal .modal-header[b-dvwc55b0ps] {
            flex: 0 0 auto;
            padding: 14px 16px 12px !important;
        }

        /* Tabs: fixed height, never scrolls */
        .modal-content.iac-modal-container .nav-tabs[b-dvwc55b0ps],
        .modal-content.iac-modal .nav-tabs[b-dvwc55b0ps] {
            flex: 0 0 auto;
            padding: 0 8px !important;
        }

            .modal-content.iac-modal-container .nav-tabs .nav-link[b-dvwc55b0ps],
            .modal-content.iac-modal .nav-tabs .nav-link[b-dvwc55b0ps] {
                padding: 10px 10px !important;
                font-size: 0.62rem !important;
            }

        /* Body: grows and scrolls — this is the key fix */
        .modal-content.iac-modal-container .modal-body[b-dvwc55b0ps],
        .modal-content.iac-modal .modal-body[b-dvwc55b0ps],
        .modal-content.bo-revision-modal .modal-body[b-dvwc55b0ps] {
            flex: 1 1 auto !important;
            min-height: 0 !important;
            overflow-y: auto !important;
            -webkit-overflow-scrolling: touch;
            padding: 16px !important;
            /* Prevent iOS rubber-banding from scrolling the backdrop */
            overscroll-behavior: contain;
            /* Ensure inputs don't get hidden when keyboard opens */
            padding-bottom: calc(16px + env(safe-area-inset-bottom, 0px)) !important;
        }

        /* iOS auto-zoom prevention: inputs must be 16px+ */
        .modal-content.iac-modal-container .form-control[b-dvwc55b0ps],
        .modal-content.iac-modal .form-control[b-dvwc55b0ps],
        .modal-content.bo-revision-modal .form-control[b-dvwc55b0ps],
        .modal-content.iac-modal-container .form-select[b-dvwc55b0ps],
        .modal-content.iac-modal .form-select[b-dvwc55b0ps],
        .modal-content.bo-revision-modal .form-select[b-dvwc55b0ps] {
            font-size: 16px !important;
        }

        /* Footer: fixed height, always visible at bottom — never scrolls under */
        .modal-content.iac-modal-container .modal-footer[b-dvwc55b0ps],
        .modal-content.iac-modal .modal-footer[b-dvwc55b0ps],
        .modal-content.bo-revision-modal .modal-footer[b-dvwc55b0ps],
        .modal-footer.iac-modal-footer[b-dvwc55b0ps] {
            flex: 0 0 auto !important;
            padding: 12px 16px !important;
            padding-bottom: max(12px, env(safe-area-inset-bottom, 12px)) !important;
            flex-wrap: wrap;
            gap: 8px;
        }

            /* Footer buttons: full-width on very small phones so they're tappable */
            .modal-footer.iac-modal-footer .btn[b-dvwc55b0ps],
            .modal-content.iac-modal-container .modal-footer .btn[b-dvwc55b0ps] {
                flex: 1 1 auto;
                min-height: 44px;
                justify-content: center;
            }

    /* 85vh / revision tall modals: same treatment */
    .bo-modal-85vh[b-dvwc55b0ps],
    .modal-content.bo-modal-85vh[b-dvwc55b0ps] {
        max-height: 92dvh !important;
        height: 92dvh !important;
    }

    /* Revision modal body columns: stack on phone */
    .bo-revision-modal .bo-revision-body-row[b-dvwc55b0ps] {
        flex-direction: column;
    }

    .bo-modal-shift-up[b-dvwc55b0ps] {
        transform: translateY(2vh);
        padding-top: 64px;
    }
}

/* ── ≤576px: phone portrait — tighten further ─────────────────── */
@media (max-width: 576px) {

    /* Confirm / small dialogs: keep centred with small gap */
    .modal-dialog.modal-sm[b-dvwc55b0ps] {
        margin: 0.75rem auto !important;
        max-width: calc(100vw - 1.5rem) !important;
        width: calc(100vw - 1.5rem) !important;
        align-items: center;
    }

    .modal-content.iac-modal-container[b-dvwc55b0ps],
    .modal-content.iac-modal[b-dvwc55b0ps] {
        max-height: 94dvh !important;
        height: auto !important; /* short modals (confirm) should not stretch */
        min-height: unset !important;
    }

    /* Small confirm modals: height auto, not forced */
    .modal-dialog.modal-sm .modal-content.iac-modal-container[b-dvwc55b0ps] {
        height: auto !important;
        max-height: 80dvh !important;
    }

    .modal-header.iac-modal-header[b-dvwc55b0ps] {
        padding: 12px 14px 10px !important;
    }

    .modal-content.iac-modal-container .modal-footer[b-dvwc55b0ps],
    .modal-content.iac-modal .modal-footer[b-dvwc55b0ps] {
        padding: 10px 14px !important;
        padding-bottom: max(10px, env(safe-area-inset-bottom, 10px)) !important;
    }

    .modal-content.iac-modal-container .nav-tabs[b-dvwc55b0ps] {
        padding: 0 6px !important;
    }

        .modal-content.iac-modal-container .nav-tabs .nav-link[b-dvwc55b0ps] {
            padding: 8px 8px !important;
            font-size: 0.60rem !important;
        }

    .bo-modal-shift-up[b-dvwc55b0ps] {
        transform: translateY(0);
        padding-top: 60px;
    }
}

@media print {
    .modal-backdrop[b-dvwc55b0ps], .modal[b-dvwc55b0ps] {
        display: none !important;
    }
}

/* ── 24. Preview panel ───────────────────────────────────────── */
.bo-preview-panel[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    padding: 10px 18px;
    background: rgba(0,40,85,0.055);
    border: 1px solid rgba(0,40,85,0.13);
    border-radius: var(--radius-md);
    margin-bottom: 16px;
}

[data-bs-theme="dark"] .bo-preview-panel[b-dvwc55b0ps],
[data-theme="dark"] .bo-preview-panel[b-dvwc55b0ps] {
    background: #141C2C !important;
    border-color: rgba(255,255,255,0.09) !important;
}

.bo-preview-label[b-dvwc55b0ps] {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: var(--iac-blue);
}

.bo-preview-disclaimer[b-dvwc55b0ps] {
    font-size: 11.5px;
    color: var(--text-muted);
}

.bo-preview-body[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    font-size: 12px;
    color: var(--text-secondary);
}

.bo-preview-active-warning[b-dvwc55b0ps] {
    background: rgba(255,122,0,0.10);
    border: 1px solid rgba(255,122,0,0.28);
    border-radius: var(--radius-sm);
    padding: 8px 14px;
    font-size: 12.5px;
    color: #B85200;
    margin-bottom: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

/* ── 25. Role preview banner ─────────────────────────────────── */
.role-preview-banner[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    background: linear-gradient(180deg, rgba(6,28,60,0.96), rgba(4,22,48,0.96));
    color: #eaf2ff;
    font-size: 0.82rem;
    font-weight: 600;
    letter-spacing: 0.2px;
    padding: 8px 16px;
    min-height: 42px;
    position: sticky;
    top: 0;
    z-index: 1100;
    border-bottom: 1px solid rgba(241,184,40,0.30);
    box-shadow: 0 3px 14px rgba(0,0,0,0.35);
}

    .role-preview-banner strong[b-dvwc55b0ps] {
        color: var(--iac-gold);
    }

/* ── 26. Tool cards ──────────────────────────────────────────── */
.tool-card[b-dvwc55b0ps] {
    background: var(--bg-surface);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-xs);
    overflow: hidden;
    transition: box-shadow var(--t-fast), border-color var(--t-fast), transform var(--t-fast);
}

    .tool-card:hover[b-dvwc55b0ps] {
        box-shadow: var(--shadow-sm);
        border-color: var(--border-default);
        transform: translateY(-1px);
    }

.tool-card-header[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 16px;
    border-bottom: 1px solid var(--border-subtle);
    background: var(--bg-surface-2);
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
}

.tool-card-header-primary[b-dvwc55b0ps] {
    color: var(--iac-blue);
    border-left: 3px solid var(--iac-gold);
    padding-left: 12px;
}

.tool-card-header-info[b-dvwc55b0ps] {
    color: #0369A1;
    border-left: 3px solid #0284C7;
    padding-left: 12px;
}


/* Preferences panel: keep cards steady on hover (no vertical jump) */
.bo-preferences-shell .tool-card:hover[b-dvwc55b0ps] {
    transform: none;
}
/* Pref card */
.pref-card[b-dvwc55b0ps] {
    border: 1px solid var(--border-default);
    border-radius: var(--radius-sm);
    transition: border-color 0.15s ease;
}

    .pref-card:hover[b-dvwc55b0ps] {
        border-color: var(--iac-accent);
    }

    .pref-card .card-header[b-dvwc55b0ps] {
        font-weight: 600;
        border-bottom: 2px solid rgba(0,0,0,0.09);
    }

    .pref-card .form-switch[b-dvwc55b0ps] {
        padding-left: 3.5em;
    }

        .pref-card .form-switch .form-check-input[b-dvwc55b0ps] {
            width: 3em;
            height: 1.5em;
            margin-left: -3.5em;
        }

.pref-section[b-dvwc55b0ps] {
    border-bottom: 1px solid var(--border-subtle);
    padding-bottom: 1rem;
    margin-bottom: 1rem;
}

    .pref-section:last-child[b-dvwc55b0ps] {
        border-bottom: none;
        margin-bottom: 0;
        padding-bottom: 0;
    }

/* ── 27. Toast ───────────────────────────────────────────────── */
.toast-backoffice[b-dvwc55b0ps] {
    pointer-events: auto;
    top: 4.5rem;
}

    .toast-backoffice .toast[b-dvwc55b0ps] {
        font-family: var(--font);
        font-size: 13px;
        background: var(--toast-bg) !important;
        border: 1px solid var(--border-default) !important;
        border-radius: var(--radius-md) !important;
        box-shadow: var(--toast-shadow) !important;
        color: var(--text-primary) !important;
        min-width: 280px;
        max-width: 400px;
    }

        .toast-backoffice .toast.bg-success[b-dvwc55b0ps] {
            border-left: 3px solid var(--status-success) !important;
        }

        .toast-backoffice .toast.bg-danger[b-dvwc55b0ps] {
            border-left: 3px solid var(--status-danger) !important;
        }

        .toast-backoffice .toast.bg-warning[b-dvwc55b0ps] {
            border-left: 3px solid var(--status-warn) !important;
        }

    .toast-backoffice .toast-body[b-dvwc55b0ps] {
        color: var(--text-primary) !important;
        font-weight: 500;
    }

/* ── 28. Alerts ──────────────────────────────────────────────── */
.alert[b-dvwc55b0ps] {
    font-family: var(--font);
    font-size: 13px;
    border-radius: var(--radius-md);
    padding: 12px 16px;
    border: 1px solid transparent;
    line-height: 1.5;
}

.alert-warning[b-dvwc55b0ps] {
    background: var(--warn-alert-bg);
    color: #8a5f00;
    border-color: var(--warn-alert-border);
}


.alert-danger[b-dvwc55b0ps] {
    background: var(--status-danger-bg);
    color: #A02020;
    border-color: rgba(220,53,69,0.20);
}

.alert-info[b-dvwc55b0ps] {
    background: rgba(14,165,233,0.07);
    color: #0369A1;
    border-color: rgba(14,165,233,0.18);
}

.alert-success[b-dvwc55b0ps] {
    background: var(--status-success-bg);
    color: #086038;
    border-color: rgba(18,160,88,0.20);
}

[data-bs-theme="dark"] .modal .alert-warning[b-dvwc55b0ps],
[data-bs-theme="dark"] .modal-content .alert-warning[b-dvwc55b0ps],
[data-bs-theme="dark"] .modal-body .alert-warning[b-dvwc55b0ps] {
    background: linear-gradient(135deg, rgba(255, 193, 7, 0.16), rgba(120, 82, 0, 0.28)) !important;
    color: #ffe08a !important;
    border: 1px solid rgba(255, 200, 87, 0.42) !important;
    box-shadow: 0 10px 28px rgba(0, 0, 0, 0.24);
}

[data-bs-theme="dark"] .alert-danger[b-dvwc55b0ps] {
    color: #F87171;
}

[data-bs-theme="dark"] .alert-info[b-dvwc55b0ps] {
    color: #38BDF8;
}

[data-bs-theme="dark"] .alert-success[b-dvwc55b0ps] {
    color: #4ADE80;
}

/* ── 29. Buttons ─────────────────────────────────────────────── */
/* Base button — modern pill-adjacent, crisp, no Bootstrap default bleed */
.btn[b-dvwc55b0ps] {
    font-family: var(--font) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    letter-spacing: 0.04em;
    border-radius: var(--radius-sm) !important;
    /* No transform in transition — prevents hover lift/jump */
    transition: background 0.14s ease, box-shadow 0.14s ease, border-color 0.14s ease, color 0.14s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px;
    cursor: pointer;
    padding: 7px 16px !important;
    line-height: 1.4;
    border: 1.5px solid transparent !important;
    white-space: nowrap;
    position: relative;
    overflow: hidden;
    min-height: 32px;
}

    /* Explicitly prevent any hover transform on all buttons */
    .btn:hover[b-dvwc55b0ps] {
        transform: none !important;
    }

    .btn:active[b-dvwc55b0ps] {
        transform: translateY(1px) scale(0.985) !important;
    }

    .btn:disabled[b-dvwc55b0ps], .btn[disabled][b-dvwc55b0ps] {
        opacity: 0.50 !important;
        cursor: not-allowed !important;
        transform: none !important;
        pointer-events: none;
    }

.btn-sm[b-dvwc55b0ps] {
    font-size: 11.5px !important;
    padding: 6px 12px !important;
    /* Tighter but not cramped — enough internal breathing room */
    min-height: 30px;
}

.btn-xs[b-dvwc55b0ps] {
    font-size: 11px !important;
    padding: 3px 9px !important;
}

/* Ensure action button groups always have breathing room */
.btn + .btn[b-dvwc55b0ps] {
    margin-left: 4px;
}

.btn-lg[b-dvwc55b0ps] {
    font-size: 14px !important;
    padding: 10px 22px !important;
}

.btn i[b-dvwc55b0ps], .btn svg[b-dvwc55b0ps] {
    font-size: 13px;
    line-height: 1;
    flex-shrink: 0;
}

.btn-sm i[b-dvwc55b0ps], .btn-sm svg[b-dvwc55b0ps] {
    font-size: 11px;
}

/* ── Core semantic buttons ────────────────────────────────────── */
/* PRIMARY — IAC brand blue, confident */
.btn-primary[b-dvwc55b0ps] {
    background: linear-gradient(145deg, #0060FF 0%, #0048D0 100%) !important;
    border-color: #0040CC !important;
    color: #fff !important;
    box-shadow: 0 2px 8px rgba(0,87,255,0.28) !important;
}

    .btn-primary:hover[b-dvwc55b0ps] {
        background: linear-gradient(145deg, #0048D0 0%, #0033AA 100%) !important;
        box-shadow: 0 4px 16px rgba(0,87,255,0.40) !important;
    }

/* SECONDARY — muted neutral */
.btn-secondary[b-dvwc55b0ps] {
    background: #E6ECF5 !important;
    border-color: #7A96B8 !important;
    color: #1A2E4A !important;
    box-shadow: 0 1px 4px rgba(0,40,85,0.10) !important;
}

    .btn-secondary:hover[b-dvwc55b0ps] {
        background: #E0E6EE !important;
        border-color: #9AAABB !important;
        color: #101820 !important;
    }

[data-bs-theme="dark"] .btn-secondary[b-dvwc55b0ps] {
    background: #1A2638 !important;
    border-color: #2A3C54 !important;
    color: #9AAAC0 !important;
}

    [data-bs-theme="dark"] .btn-secondary:hover[b-dvwc55b0ps] {
        background: #223048 !important;
        border-color: #3A5070 !important;
        color: #C8DCF0 !important;
    }

/* SUCCESS — confident green for "confirm/approve/save" */
.btn-success[b-dvwc55b0ps] {
    background: linear-gradient(145deg, #15A060 0%, #0F7848 100%) !important;
    border-color: #0F6E3F !important;
    color: #fff !important;
    box-shadow: 0 2px 8px rgba(19,138,80,0.28) !important;
}

    .btn-success:hover[b-dvwc55b0ps] {
        background: linear-gradient(145deg, #0F8050 0%, #0A6038 100%) !important;
        box-shadow: 0 4px 16px rgba(19,138,80,0.40) !important;
    }

/* DANGER — red for destructive actions */
.btn-danger[b-dvwc55b0ps] {
    background: linear-gradient(145deg, #E02535 0%, #B81C2A 100%) !important;
    border-color: #A81C2A !important;
    color: #fff !important;
    box-shadow: 0 2px 8px rgba(200,34,51,0.28) !important;
}

    .btn-danger:hover[b-dvwc55b0ps] {
        background: linear-gradient(145deg, #B81C2A 0%, #8C1520 100%) !important;
        box-shadow: 0 4px 16px rgba(200,34,51,0.40) !important;
    }

/* WARNING — amber/gold, ties to IAC gold */
.btn-warning[b-dvwc55b0ps] {
    background: linear-gradient(145deg, #E09800 0%, #B87800 100%) !important;
    border-color: #A06800 !important;
    color: #fff !important;
    box-shadow: 0 2px 8px rgba(212,139,0,0.28) !important;
}

    .btn-warning:hover[b-dvwc55b0ps] {
        background: linear-gradient(145deg, #C07800 0%, #965800 100%) !important;
        box-shadow: 0 4px 14px rgba(212,139,0,0.40) !important;
    }

/* INFO — sky blue */
.btn-info[b-dvwc55b0ps] {
    background: linear-gradient(145deg, #0594E0 0%, #0270B0 100%) !important;
    border-color: #0270B0 !important;
    color: #fff !important;
    box-shadow: 0 2px 8px rgba(2,132,199,0.26) !important;
}

    .btn-info:hover[b-dvwc55b0ps] {
        background: linear-gradient(145deg, #0270B0 0%, #025590 100%) !important;
    }

/* Outline variants */
.btn-outline-primary[b-dvwc55b0ps] {
    background: transparent !important;
    border-color: #0057FF !important;
    color: #0057FF !important;
}

    .btn-outline-primary:hover[b-dvwc55b0ps] {
        background: rgba(0,87,255,0.08) !important;
        border-color: #0040CC !important;
        color: #0040CC !important;
    }

.btn-outline-secondary[b-dvwc55b0ps] {
    background: transparent !important;
    border-color: #8090A4 !important;
    color: #3A4A5C !important;
}

    .btn-outline-secondary:hover[b-dvwc55b0ps] {
        background: #EEF2F6 !important;
        border-color: #5A6878 !important;
        color: #101820 !important;
    }

.btn-outline-danger[b-dvwc55b0ps] {
    background: transparent !important;
    border-color: #CC2233 !important;
    color: #CC2233 !important;
}

    .btn-outline-danger:hover[b-dvwc55b0ps] {
        background: rgba(204,34,51,0.08) !important;
        box-shadow: 0 0 0 2px rgba(204,34,51,0.18) !important;
    }

.btn-outline-success[b-dvwc55b0ps] {
    background: transparent !important;
    border-color: #138A50 !important;
    color: #138A50 !important;
}

    .btn-outline-success:hover[b-dvwc55b0ps] {
        background: rgba(19,138,80,0.08) !important;
    }

.btn-outline-warning[b-dvwc55b0ps] {
    background: transparent !important;
    border-color: #D48B00 !important;
    color: #9A6400 !important;
}

    .btn-outline-warning:hover[b-dvwc55b0ps] {
        background: rgba(212,139,0,0.08) !important;
    }

.btn-link[b-dvwc55b0ps] {
    background: none !important;
    border-color: transparent !important;
    color: #0057FF !important;
    padding: 0 !important;
    text-decoration: none;
    box-shadow: none !important;
}

    .btn-link:hover[b-dvwc55b0ps] {
        color: #0040CC !important;
        text-decoration: underline;
    }

.btn-close[b-dvwc55b0ps] {
    opacity: 0.50;
    transition: opacity var(--t-fast);
}

    .btn-close:hover[b-dvwc55b0ps] {
        opacity: 1;
    }

.btn-close-white[b-dvwc55b0ps] {
    filter: invert(1);
}

/* ────────────────────────────────────────────────────────────────
   ACTION-SPECIFIC ICON BUTTONS
   Distinct colour per action type — glanceable at a distance
   Each uses a gradient for modern depth; matches IAC utility context
   ──────────────────────────────────────────────────────────────── */

/* ── Button row gap — table action cells ─────────────────────────
   Any flex container holding buttons gets automatic breathing room.
   Catches the Actions column edit/disable/delete clusters.
───────────────────────────────────────────────────────────────── */
.d-flex > .btn + .btn[b-dvwc55b0ps],
.d-flex > .btn-sm + .btn-sm[b-dvwc55b0ps],
td .btn + .btn[b-dvwc55b0ps],
td > .btn + .btn[b-dvwc55b0ps],
.btn-cluster .btn + .btn[b-dvwc55b0ps],
.actions-cell .btn + .btn[b-dvwc55b0ps] {
    margin-left: 5px !important;
}

/* Table action columns — consistent spacing & min-width tap target */
.col-actions td[b-dvwc55b0ps],
td.text-center > .d-flex[b-dvwc55b0ps],
td > .d-flex.gap-1[b-dvwc55b0ps],
td > .d-flex.gap-2[b-dvwc55b0ps] {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    flex-wrap: nowrap;
}

/* Actions td: keep content centred without making the cell itself a flex container */
td.col-actions[b-dvwc55b0ps] {
    text-align: right;
    vertical-align: middle;
}

/* Ensure btn-sm action buttons never squish — min 32px wide */
td .btn-sm[b-dvwc55b0ps],
td .btn.btn-sm[b-dvwc55b0ps] {
    min-width: 32px !important;
    padding: 5px 9px !important;
}

/* DELETE  — Red / danger */
.btn-action-delete[b-dvwc55b0ps],
.btn-delete[b-dvwc55b0ps] {
    background: linear-gradient(145deg, #E02535 0%, #B81C2A 100%) !important;
    border-color: #A81C2A !important;
    color: #fff !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 6px rgba(200,34,51,0.25) !important;
}

    .btn-action-delete:hover[b-dvwc55b0ps],
    .btn-delete:hover[b-dvwc55b0ps] {
        background: linear-gradient(145deg, #B81C2A 0%, #8C1520 100%) !important;
        box-shadow: 0 4px 14px rgba(200,34,51,0.44) !important;
    }

/* EDIT / MODIFY  — IAC Gold/Amber — rich saturated, impossible to miss */
.btn-action-edit[b-dvwc55b0ps],
.btn-edit[b-dvwc55b0ps] {
    background: linear-gradient(145deg, #D48A00 0%, #A86C00 100%) !important;
    border: 1.5px solid #8A5800 !important;
    color: #fff !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 8px rgba(200,128,0,0.32) !important;
}

    .btn-action-edit:hover[b-dvwc55b0ps],
    .btn-edit:hover[b-dvwc55b0ps] {
        background: linear-gradient(145deg, #B87400 0%, #8A5800 100%) !important;
        box-shadow: 0 4px 14px rgba(200,128,0,0.48) !important;
    }

/* DOWNLOAD  — Teal/cyan — data transfer */
.btn-action-download[b-dvwc55b0ps],
.btn-download[b-dvwc55b0ps] {
    background: linear-gradient(145deg, #0098BC 0%, #007899 100%) !important;
    border-color: #006E88 !important;
    color: #fff !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 6px rgba(0,136,168,0.25) !important;
}

    .btn-action-download:hover[b-dvwc55b0ps],
    .btn-download:hover[b-dvwc55b0ps] {
        background: linear-gradient(145deg, #007899 0%, #005878 100%) !important;
        box-shadow: 0 4px 14px rgba(0,136,168,0.40) !important;
    }

/* UPLOAD  — Violet/indigo */
.btn-action-upload[b-dvwc55b0ps],
.btn-upload[b-dvwc55b0ps] {
    background: linear-gradient(145deg, #5E55D8 0%, #4438B8 100%) !important;
    border-color: #3E33A0 !important;
    color: #fff !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 6px rgba(82,68,200,0.25) !important;
}

    .btn-action-upload:hover[b-dvwc55b0ps],
    .btn-upload:hover[b-dvwc55b0ps] {
        background: linear-gradient(145deg, #4438B8 0%, #342898 100%) !important;
        box-shadow: 0 4px 14px rgba(82,68,200,0.40) !important;
    }

/* REFRESH / RELOAD  — Steel blue */
.btn-action-refresh[b-dvwc55b0ps],
.btn-refresh[b-dvwc55b0ps] {
    background: linear-gradient(145deg, #1E7EC4 0%, #1260A0 100%) !important;
    border-color: #1258A0 !important;
    color: #fff !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 6px rgba(26,110,180,0.25) !important;
}

    .btn-action-refresh:hover[b-dvwc55b0ps],
    .btn-refresh:hover[b-dvwc55b0ps] {
        background: linear-gradient(145deg, #1260A0 0%, #0C4880 100%) !important;
        box-shadow: 0 4px 14px rgba(26,110,180,0.40) !important;
    }

/* VIEW / PREVIEW  — Slate/navy */
.btn-action-view[b-dvwc55b0ps],
.btn-view[b-dvwc55b0ps] {
    background: linear-gradient(145deg, #2E5C88 0%, #1E4468 100%) !important;
    border-color: #224A72 !important;
    color: #fff !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 6px rgba(30,68,104,0.25) !important;
}

    .btn-action-view:hover[b-dvwc55b0ps],
    .btn-view:hover[b-dvwc55b0ps] {
        background: linear-gradient(145deg, #1E4468 0%, #142C4A 100%) !important;
        box-shadow: 0 4px 14px rgba(30,68,104,0.40) !important;
    }

/* ADD / CREATE  — Fresh green */
.btn-action-add[b-dvwc55b0ps],
.btn-action-create[b-dvwc55b0ps],
.btn-add[b-dvwc55b0ps] {
    background: linear-gradient(145deg, #15A060 0%, #0F7848 100%) !important;
    border-color: #0F6E3F !important;
    color: #fff !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 6px rgba(19,138,80,0.25) !important;
}

    .btn-action-add:hover[b-dvwc55b0ps],
    .btn-action-create:hover[b-dvwc55b0ps],
    .btn-add:hover[b-dvwc55b0ps] {
        background: linear-gradient(145deg, #0F8050 0%, #0A6038 100%) !important;
        box-shadow: 0 4px 14px rgba(19,138,80,0.40) !important;
    }

/* SAVE / CONFIRM  — IAC primary blue */
.btn-action-save[b-dvwc55b0ps],
.btn-save[b-dvwc55b0ps] {
    background: linear-gradient(145deg, #0060FF 0%, #0048D0 100%) !important;
    border-color: #0040CC !important;
    color: #fff !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 8px rgba(0,87,255,0.28) !important;
}

    .btn-action-save:hover[b-dvwc55b0ps],
    .btn-save:hover[b-dvwc55b0ps] {
        background: linear-gradient(145deg, #0048D0 0%, #0033AA 100%) !important;
        box-shadow: 0 4px 16px rgba(0,87,255,0.44) !important;
    }

/* CANCEL / BACK  — Neutral grey with clearly visible border */
.btn-action-cancel[b-dvwc55b0ps],
.btn-cancel[b-dvwc55b0ps] {
    background: #DDE4EE !important;
    border: 1.5px solid #6080A8 !important;
    color: #1A2E4A !important;
    font-weight: 600 !important;
    box-shadow: 0 1px 4px rgba(0,40,85,0.12) !important;
}

    .btn-action-cancel:hover[b-dvwc55b0ps],
    .btn-cancel:hover[b-dvwc55b0ps] {
        background: #CBD4E2 !important;
        border-color: #4A6A90 !important;
        color: #0A1C35 !important;
    }

/* EXPORT  — Forest green, distinct from download */
.btn-action-export[b-dvwc55b0ps],
.btn-export[b-dvwc55b0ps] {
    background: linear-gradient(145deg, #2E8A35 0%, #1E6C24 100%) !important;
    border-color: #1B5E20 !important;
    color: #fff !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 6px rgba(30,108,36,0.25) !important;
}

    .btn-action-export:hover[b-dvwc55b0ps],
    .btn-export:hover[b-dvwc55b0ps] {
        background: linear-gradient(145deg, #1E6C24 0%, #155018 100%) !important;
        box-shadow: 0 4px 14px rgba(30,108,36,0.38) !important;
    }

/* COPY  — Slate/grey-blue */
.btn-action-copy[b-dvwc55b0ps],
.btn-copy[b-dvwc55b0ps] {
    background: linear-gradient(145deg, #4E687C 0%, #384E60 100%) !important;
    border-color: #344858 !important;
    color: #fff !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 6px rgba(52,72,88,0.25) !important;
}

    .btn-action-copy:hover[b-dvwc55b0ps],
    .btn-copy:hover[b-dvwc55b0ps] {
        background: linear-gradient(145deg, #384E60 0%, #263848 100%) !important;
        box-shadow: 0 4px 12px rgba(52,72,88,0.38) !important;
    }

/* SEND / SUBMIT  — IAC Deep Navy */
.btn-action-send[b-dvwc55b0ps],
.btn-send[b-dvwc55b0ps] {
    background: linear-gradient(145deg, #003070 0%, #001E50 100%) !important;
    border-color: #001731 !important;
    color: #fff !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 8px rgba(0,40,85,0.30) !important;
}

    .btn-action-send:hover[b-dvwc55b0ps],
    .btn-send:hover[b-dvwc55b0ps] {
        background: linear-gradient(145deg, #001E50 0%, #001030 100%) !important;
        box-shadow: 0 4px 16px rgba(0,40,85,0.46) !important;
    }

/* PRINT  — Ink dark */
.btn-action-print[b-dvwc55b0ps],
.btn-print[b-dvwc55b0ps] {
    background: linear-gradient(145deg, #2A3440 0%, #1A2430 100%) !important;
    border-color: #1A2430 !important;
    color: #fff !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 6px rgba(26,36,48,0.25) !important;
}

    .btn-action-print:hover[b-dvwc55b0ps],
    .btn-print:hover[b-dvwc55b0ps] {
        background: linear-gradient(145deg, #1A2430 0%, #0F1820 100%) !important;
        box-shadow: 0 4px 12px rgba(26,36,48,0.38) !important;
    }

/* Outline action variants (icon-only or table row buttons) */
.btn-action-delete.btn-outline[b-dvwc55b0ps],
.btn-delete.btn-outline[b-dvwc55b0ps] {
    background: transparent !important;
    color: #CC2233 !important;
    border-color: #CC2233 !important;
    box-shadow: none !important;
}

    .btn-action-delete.btn-outline:hover[b-dvwc55b0ps],
    .btn-delete.btn-outline:hover[b-dvwc55b0ps] {
        background: rgba(204,34,51,0.08) !important;
    }

.btn-action-edit.btn-outline[b-dvwc55b0ps],
.btn-edit.btn-outline[b-dvwc55b0ps] {
    background: transparent !important;
    color: #B87400 !important;
    border-color: #B87400 !important;
    box-shadow: none !important;
}

.btn-action-download.btn-outline[b-dvwc55b0ps],
.btn-download.btn-outline[b-dvwc55b0ps] {
    background: transparent !important;
    color: #0088A8 !important;
    border-color: #0088A8 !important;
    box-shadow: none !important;
}

.btn-action-refresh.btn-outline[b-dvwc55b0ps],
.btn-refresh.btn-outline[b-dvwc55b0ps] {
    background: transparent !important;
    color: #1A6EB4 !important;
    border-color: #1A6EB4 !important;
    box-shadow: none !important;
}

.btn-action-view.btn-outline[b-dvwc55b0ps],
.btn-view.btn-outline[b-dvwc55b0ps] {
    background: transparent !important;
    color: #2E5C88 !important;
    border-color: #2E5C88 !important;
    box-shadow: none !important;
}

/* Solid variants (aliases) */
.btn-solid.btn-primary-solid[b-dvwc55b0ps],
.btn-primary-solid[b-dvwc55b0ps] {
    background: linear-gradient(145deg, #0060FF 0%, #0048D0 100%) !important;
    border: 1.5px solid #0040CC !important;
    color: #fff !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 8px rgba(0,87,255,0.28) !important;
}

    .btn-solid.btn-primary-solid:hover[b-dvwc55b0ps],
    .btn-primary-solid:hover[b-dvwc55b0ps] {
        background: linear-gradient(145deg, #0048D0 0%, #0033AA 100%) !important;
        box-shadow: 0 4px 16px rgba(0,87,255,0.40) !important;
    }

.btn-solid.btn-success-solid[b-dvwc55b0ps],
.btn-success-solid[b-dvwc55b0ps] {
    background: linear-gradient(145deg, #15A060 0%, #0F7848 100%) !important;
    border: 1.5px solid #0F6E3F !important;
    color: #fff !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 6px rgba(19,138,80,0.25) !important;
}

    .btn-solid.btn-success-solid:hover[b-dvwc55b0ps],
    .btn-success-solid:hover[b-dvwc55b0ps] {
        background: linear-gradient(145deg, #0F8050 0%, #0A6038 100%) !important;
        box-shadow: 0 4px 14px rgba(19,138,80,0.38) !important;
    }

.btn-solid.btn-danger-solid[b-dvwc55b0ps],
.btn-danger-solid[b-dvwc55b0ps] {
    background: linear-gradient(145deg, #E02535 0%, #B81C2A 100%) !important;
    border: 1.5px solid #A81C2A !important;
    color: #fff !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 6px rgba(200,34,51,0.25) !important;
}

    .btn-solid.btn-danger-solid:hover[b-dvwc55b0ps],
    .btn-danger-solid:hover[b-dvwc55b0ps] {
        background: linear-gradient(145deg, #B81C2A 0%, #8C1520 100%) !important;
        box-shadow: 0 4px 14px rgba(200,34,51,0.38) !important;
    }

.btn-solid.btn-warning-solid[b-dvwc55b0ps],
.btn-warning-solid[b-dvwc55b0ps] {
    background: linear-gradient(145deg, #E09800 0%, #B87800 100%) !important;
    border: 1.5px solid #A06800 !important;
    color: #fff !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 6px rgba(212,139,0,0.25) !important;
}

    .btn-solid.btn-warning-solid:hover[b-dvwc55b0ps],
    .btn-warning-solid:hover[b-dvwc55b0ps] {
        background: linear-gradient(145deg, #B87800 0%, #8A5800 100%) !important;
        box-shadow: 0 4px 12px rgba(212,139,0,0.38) !important;
    }

.btn-neutral-solid[b-dvwc55b0ps] {
    /* Crisp steel-blue pill — clearly secondary, never confused with primary blue */
    background: #F0F4FA !important;
    border: 1.5px solid rgba(0,40,85,0.22) !important;
    color: #1A3560 !important;
    font-weight: 600 !important;
    letter-spacing: 0.03em !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08), inset 0 1px 0 rgba(255,255,255,0.90) !important;
    transition: background var(--t-fast), box-shadow var(--t-fast), border-color var(--t-fast), color var(--t-fast) !important;
}

    .btn-neutral-solid:hover[b-dvwc55b0ps] {
        background: #E2EAF8 !important;
        border-color: rgba(0,40,85,0.35) !important;
        color: #0E2447 !important;
        box-shadow: 0 2px 7px rgba(0,40,85,0.13), inset 0 1px 0 rgba(255,255,255,0.70) !important;
    }

    .btn-neutral-solid:active[b-dvwc55b0ps] {
        background: #D4DFEF !important;
        box-shadow: inset 0 1px 3px rgba(0,40,85,0.15) !important;
    }

[data-bs-theme="dark"] .btn-neutral-solid[b-dvwc55b0ps],
[data-theme="dark"] .btn-neutral-solid[b-dvwc55b0ps] {
    background: #1C2A40 !important;
    border: 1.5px solid rgba(100,150,220,0.28) !important;
    color: #A8C4E8 !important;
    font-weight: 600 !important;
    letter-spacing: 0.03em !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.40), inset 0 1px 0 rgba(255,255,255,0.04) !important;
    transition: background var(--t-fast), box-shadow var(--t-fast), border-color var(--t-fast), color var(--t-fast) !important;
}

    [data-bs-theme="dark"] .btn-neutral-solid:hover[b-dvwc55b0ps],
    [data-theme="dark"] .btn-neutral-solid:hover[b-dvwc55b0ps] {
        background: #243550 !important;
        border-color: rgba(100,150,220,0.48) !important;
        color: #C8DCFF !important;
        box-shadow: 0 2px 8px rgba(0,0,0,0.50), inset 0 1px 0 rgba(255,255,255,0.06) !important;
    }

    [data-bs-theme="dark"] .btn-neutral-solid:active[b-dvwc55b0ps],
    [data-theme="dark"] .btn-neutral-solid:active[b-dvwc55b0ps] {
        background: #1A2840 !important;
        box-shadow: inset 0 1px 4px rgba(0,0,0,0.50) !important;
    }

.btn-solid.btn-utility-solid[b-dvwc55b0ps],
.btn-utility-solid[b-dvwc55b0ps] {
    background: #EBF0F8 !important;
    border: 1.5px solid #7A96B8 !important;
    color: #1A2E4A !important;
    font-weight: 600 !important;
    box-shadow: 0 1px 4px rgba(0,40,85,0.08) !important;
}

    .btn-solid.btn-utility-solid:hover[b-dvwc55b0ps],
    .btn-utility-solid:hover[b-dvwc55b0ps] {
        background: #D8E2F0 !important;
        border-color: #5078A0 !important;
        color: #0A1C35 !important;
    }

/* Button group solid */
.btn-group-solid[b-dvwc55b0ps] {
    display: inline-flex;
    border-radius: var(--radius-sm);
    overflow: hidden;
    box-shadow: var(--shadow-sm);
}

    .btn-group-solid .btn[b-dvwc55b0ps],
    .btn-group-solid button[b-dvwc55b0ps] {
        border-radius: 0 !important;
        border-right: 1px solid rgba(255,255,255,0.11) !important;
        margin: 0 !important;
    }

        .btn-group-solid .btn:last-child[b-dvwc55b0ps],
        .btn-group-solid button:last-child[b-dvwc55b0ps] {
            border-right: none !important;
        }

        .btn-group-solid .btn:first-child[b-dvwc55b0ps],
        .btn-group-solid button:first-child[b-dvwc55b0ps] {
            border-radius: var(--radius-sm) 0 0 var(--radius-sm) !important;
        }

        .btn-group-solid .btn:last-child:not(:first-child)[b-dvwc55b0ps],
        .btn-group-solid button:last-child:not(:first-child)[b-dvwc55b0ps] {
            border-radius: 0 var(--radius-sm) var(--radius-sm) 0 !important;
        }

        .btn-group-solid .btn:only-child[b-dvwc55b0ps],
        .btn-group-solid button:only-child[b-dvwc55b0ps] {
            border-radius: var(--radius-sm) !important;
        }

/* ── 30. Form controls ───────────────────────────────────────── */
.form-control[b-dvwc55b0ps], .form-select[b-dvwc55b0ps] {
    font-family: var(--font) !important;
    font-size: 13px !important;
    background: var(--input-bg) !important;
    border: 1px solid var(--input-border) !important;
    border-radius: var(--radius-sm) !important;
    color: var(--text-primary) !important;
    transition: border-color var(--t-fast), box-shadow var(--t-fast) !important;
    padding: 7px 12px !important;
}

    .form-control:focus[b-dvwc55b0ps], .form-select:focus[b-dvwc55b0ps] {
        border-color: var(--iac-accent) !important;
        box-shadow: 0 0 0 3px var(--iac-accent-glow) !important;
        outline: none !important;
    }

    .form-control[b-dvwc55b0ps]::placeholder {
        color: var(--text-muted) !important;
    }

.form-control-sm[b-dvwc55b0ps], .form-select-sm[b-dvwc55b0ps] {
    font-size: 12px !important;
    padding: 5px 10px !important;
}

/* Form labels — adapt to their container background */
.form-label[b-dvwc55b0ps] {
    font-family: var(--font);
    font-size: 12.5px;
    font-weight: 700;
    color: var(--text-primary);
    margin-bottom: 5px;
}

/* Labels on light/white backgrounds */
:root:not([data-bs-theme="dark"]) .form-label[b-dvwc55b0ps] {
    color: #1a2e4a;
}

/* Labels on the dark sidebar and dark-bg panels */
.bo-sidenav .form-label[b-dvwc55b0ps],
.lookup-sidebar .form-label[b-dvwc55b0ps],
.bo-users-header .form-label[b-dvwc55b0ps] {
    color: #c8dcf0;
}

[data-bs-theme="dark"] .form-label[b-dvwc55b0ps],
[data-theme="dark"] .form-label[b-dvwc55b0ps] {
    color: #8ab4d8;
}

.form-text[b-dvwc55b0ps] {
    font-family: var(--font);
    font-size: 11.5px;
    color: var(--text-muted);
    margin-top: 4px;
}

/* Column/row flag labels */
.bo-col-label[b-dvwc55b0ps], .bo-flag-label[b-dvwc55b0ps], .col-label[b-dvwc55b0ps], .flag-label[b-dvwc55b0ps] {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #fff;
    padding: 2px 8px 3px;
    border-radius: var(--radius-xs);
    /* Solid IAC navy fill — unmistakable */
    background: #002855;
    border: 1.5px solid rgba(241,184,40,0.40);
    display: inline-block;
    white-space: nowrap;
    box-shadow: 0 1px 3px rgba(0,20,60,0.18);
}

[data-bs-theme="dark"] .bo-col-label[b-dvwc55b0ps],
[data-bs-theme="dark"] .bo-flag-label[b-dvwc55b0ps],
[data-bs-theme="dark"] .col-label[b-dvwc55b0ps],
[data-bs-theme="dark"] .flag-label[b-dvwc55b0ps] {
    color: #c8dcf0;
    background: rgba(0,40,85,0.55);
    border-color: rgba(241,184,40,0.35);
    box-shadow: 0 1px 3px rgba(0,0,0,0.35);
}

.form-check-input[b-dvwc55b0ps] {
    cursor: pointer;
}

/* form-check-label inherits background context */
.form-check-label[b-dvwc55b0ps] {
    font-family: var(--font);
    font-size: 13px;
    font-weight: 500;
    color: var(--text-primary);
    cursor: pointer;
}

/* On white/light surfaces */
:root:not([data-bs-theme="dark"]) .form-check-label[b-dvwc55b0ps] {
    color: #1a2e4a;
}

/* On dark surfaces (modal headers, sidebar, dark panels) */
.bo-sidenav .form-check-label[b-dvwc55b0ps],
.lookup-sidebar .form-check-label[b-dvwc55b0ps],
.bo-users-header .form-check-label[b-dvwc55b0ps] {
    color: #c8dcf0;
}

[data-bs-theme="dark"] .form-check-label[b-dvwc55b0ps],
[data-theme="dark"] .form-check-label[b-dvwc55b0ps] {
    color: #8ab4d8;
}

.input-group-text[b-dvwc55b0ps] {
    font-family: var(--font);
    font-size: 12.5px;
    background: var(--bg-surface-3) !important;
    border: 1px solid var(--input-border) !important;
    color: var(--text-muted) !important;
    border-radius: var(--radius-sm);
}

/* ── Hover states matching backgrounds ────────────────────────── */
/* Autocomplete dropdown — inherits surface correctly */
.autocomplete-dropdown li:hover[b-dvwc55b0ps],
.autocomplete-dropdown .dropdown-item:hover[b-dvwc55b0ps] {
    background: var(--bg-surface-2);
    color: var(--iac-accent);
}

[data-bs-theme="dark"] .autocomplete-dropdown li:hover[b-dvwc55b0ps],
[data-theme="dark"] .autocomplete-dropdown li:hover[b-dvwc55b0ps] {
    background: var(--bg-surface-3);
    color: #88BBFF;
}

/* List items on light backgrounds */
:root:not([data-bs-theme="dark"]) .list-group-item-action:hover[b-dvwc55b0ps] {
    background: #EEF3FA;
    color: #0a2d52;
}

/* List items on dark backgrounds */
[data-bs-theme="dark"] .list-group-item-action:hover[b-dvwc55b0ps],
[data-theme="dark"] .list-group-item-action:hover[b-dvwc55b0ps] {
    background: var(--bg-surface-3);
    color: var(--text-primary);
}

/* ── 31. Cards ───────────────────────────────────────────────── */
.card[b-dvwc55b0ps] {
    /* Pure white card on a grey-blue canvas — always distinct */
    background: #FFFFFF;
    border: 1px solid rgba(0,40,85,0.14);
    border-radius: var(--radius-md);
    box-shadow: 0 2px 10px rgba(0,20,60,0.09), 0 1px 2px rgba(0,0,0,0.06);
    transition: background var(--t-base), border-color var(--t-base);
}

[data-bs-theme="dark"] .card[b-dvwc55b0ps],
[data-theme="dark"] .card[b-dvwc55b0ps] {
    /* Explicit dark surface — no light bleed-through */
    background: #0F1520 !important;
    border-color: rgba(255,255,255,0.08) !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.45) !important;
}

.card-header[b-dvwc55b0ps] {
    background: #EEF3FA;
    border-bottom: 2px solid rgba(0,40,85,0.10);
    padding: 12px 16px;
    font-size: 13px;
    font-weight: 700;
    color: #1a2e4a;
    border-radius: var(--radius-md) var(--radius-md) 0 0;
}

[data-bs-theme="dark"] .card-header[b-dvwc55b0ps],
[data-theme="dark"] .card-header[b-dvwc55b0ps] {
    background: #141C2C !important;
    border-bottom-color: rgba(255,255,255,0.08) !important;
    color: var(--text-primary);
}

.card-body[b-dvwc55b0ps] {
    padding: 16px;
    color: var(--text-secondary);
    font-size: 13px;
    line-height: 1.6;
}

.card-footer[b-dvwc55b0ps] {
    background: #EEF3FA;
    border-top: 1px solid rgba(0,40,85,0.10);
    padding: 10px 16px;
    font-size: 12.5px;
    border-radius: 0 0 var(--radius-md) var(--radius-md);
}

[data-bs-theme="dark"] .card-footer[b-dvwc55b0ps],
[data-theme="dark"] .card-footer[b-dvwc55b0ps] {
    background: #141C2C !important;
    border-top-color: rgba(255,255,255,0.08) !important;
}

.card-img-top[b-dvwc55b0ps] {
    border-radius: var(--radius-md) var(--radius-md) 0 0;
}

/* ── 32. Nav tabs ────────────────────────────────────────────── */
.nav-tabs[b-dvwc55b0ps] {
    border-bottom: 2px solid var(--border-subtle);
}

    .nav-tabs .nav-link[b-dvwc55b0ps] {
        font-family: var(--font);
        font-size: 12.5px;
        font-weight: 600;
        letter-spacing: 0.04em;
        padding: 8px 14px;
        color: var(--text-muted);
        border: none;
        border-bottom: 2px solid transparent;
        margin-bottom: -2px;
        background: transparent;
        cursor: pointer;
        transition: color var(--t-fast), border-color var(--t-fast);
        border-radius: var(--radius-sm) var(--radius-sm) 0 0;
    }

        .nav-tabs .nav-link:hover[b-dvwc55b0ps] {
            color: var(--text-primary);
            background: var(--bg-surface-2);
        }

        .nav-tabs .nav-link.active[b-dvwc55b0ps] {
            color: var(--iac-accent);
            border-bottom-color: var(--iac-gold);
        }

/* ── 33. Accordion ───────────────────────────────────────────── */
.accordion-item[b-dvwc55b0ps] {
    background: var(--bg-surface);
    border: 1px solid var(--border-subtle) !important;
    border-radius: var(--radius-md) !important;
    margin-bottom: 6px;
    overflow: hidden;
}

.accordion-button[b-dvwc55b0ps] {
    font-family: var(--font);
    font-size: 13px;
    font-weight: 600;
    color: var(--text-primary);
    background: var(--bg-surface-2);
    padding: 12px 16px;
    border: none;
    cursor: pointer;
    transition: background var(--t-fast);
}

    .accordion-button:not(.collapsed)[b-dvwc55b0ps] {
        background: var(--iac-accent-muted);
        color: var(--iac-accent);
    }

.accordion-body[b-dvwc55b0ps] {
    padding: 16px;
    font-size: 13px;
    color: var(--text-secondary);
    background: var(--bg-surface);
    border-top: 1px solid var(--border-subtle);
}

/* ── 34. List group ──────────────────────────────────────────── */
.list-group-item[b-dvwc55b0ps] {
    background: var(--bg-surface);
    border: 1px solid var(--border-subtle);
    color: var(--text-primary);
    font-family: var(--font);
    font-size: 13px;
    padding: 9px 14px;
    transition: background var(--t-fast);
}

    .list-group-item.active[b-dvwc55b0ps] {
        background: var(--iac-accent) !important;
        border-color: var(--iac-accent) !important;
        color: #fff !important;
    }

.list-group-item-action:hover[b-dvwc55b0ps] {
    background: var(--bg-surface-2);
    color: var(--text-primary);
}

/* ── 35. Pagination ──────────────────────────────────────────── */
.pagination[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    gap: 3px;
    flex-wrap: wrap;
    list-style: none;
    padding: 0;
    margin: 0;
}

.pagination-btn[b-dvwc55b0ps], .page-link[b-dvwc55b0ps] {
    font-family: var(--font);
    font-size: 12px;
    font-weight: 600;
    padding: 5px 11px;
    border-radius: var(--radius-sm);
    border: 1px solid var(--border-default);
    background: var(--bg-surface);
    color: var(--text-secondary);
    cursor: pointer;
    transition: all var(--t-fast);
    line-height: 1.4;
    text-decoration: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 32px;
}

    .pagination-btn:hover[b-dvwc55b0ps], .page-link:hover[b-dvwc55b0ps] {
        border-color: var(--iac-accent);
        color: var(--iac-accent);
        background: var(--iac-accent-muted);
    }

    .page-item.active .page-link[b-dvwc55b0ps], .pagination-btn.active[b-dvwc55b0ps] {
        background: var(--iac-accent) !important;
        border-color: var(--iac-accent) !important;
        color: #fff !important;
    }

    .page-item.disabled .page-link[b-dvwc55b0ps], .pagination-btn:disabled[b-dvwc55b0ps] {
        opacity: 0.36;
        cursor: not-allowed;
        pointer-events: none;
    }

.page-indicator[b-dvwc55b0ps] {
    font-size: 12px;
    color: var(--text-muted);
    padding: 4px 10px;
}

/* ── 36. Dropdown ────────────────────────────────────────────── */
.dropdown-menu[b-dvwc55b0ps] {
    background: var(--bg-surface);
    border: 1px solid var(--border-default);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-md);
    padding: 4px 0;
    font-family: var(--font);
    font-size: 13px;
}

.dropdown-item[b-dvwc55b0ps] {
    font-family: var(--font);
    font-size: 13px;
    color: var(--text-primary);
    padding: 8px 14px;
    cursor: pointer;
    transition: background var(--t-fast);
    background: transparent;
}

    .dropdown-item:hover[b-dvwc55b0ps] {
        background: var(--bg-surface-2);
        color: var(--iac-accent);
    }

/* ── 37. Spinner ─────────────────────────────────────────────── */
.spinner-border[b-dvwc55b0ps] {
    color: var(--iac-accent);
}

/* ── 38. Welcome bullets ─────────────────────────────────────── */
.welcome-bullets[b-dvwc55b0ps] {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

    .welcome-bullets li[b-dvwc55b0ps] {
        display: flex;
        align-items: flex-start;
        gap: 10px;
        font-size: 13.5px;
        color: var(--text-secondary);
        line-height: 1.5;
    }

        .welcome-bullets li[b-dvwc55b0ps]::before {
            content: "›";
            color: var(--iac-gold);
            font-weight: 700;
            font-size: 16px;
            line-height: 1.2;
            flex-shrink: 0;
        }

/* ── 39. Quotes filters ──────────────────────────────────────── */
.quotes-filters[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 16px;
}

    .quotes-filters .form-check-label[b-dvwc55b0ps] {
        margin-left: 0.25rem;
        font-size: 0.875rem;
    }

/* ── 40. IAC login footer ────────────────────────────────────── */
.iac-login-footer[b-dvwc55b0ps] {
    position: fixed;
    inset: auto 0 0 0;
    height: 38px;
    z-index: 9999;
    background: linear-gradient(180deg, rgba(255,255,255,0.10), rgba(0,0,0,0.00)), var(--iac-blue-hex, #002855);
    border-top: 1px solid rgba(255,255,255,0.12);
}

    .iac-login-footer.iac-login-footer-img[b-dvwc55b0ps] {
        background: #002855 var(--img-bottom-blue-bar, url("/images/BottomBlueBar.png")) center bottom / cover no-repeat;
        border-top: 0;
    }

:root[data-bs-theme="dark"] .iac-login-footer[b-dvwc55b0ps] {
    background: linear-gradient(180deg, rgba(255,255,255,0.04), rgba(0,0,0,0.00)), #050d18;
    border-top-color: rgba(255,255,255,0.08);
}

    :root[data-bs-theme="dark"] .iac-login-footer.iac-login-footer-img[b-dvwc55b0ps] {
        background-color: #050d18;
        background-image: var(--img-bottom-blue-bar, url("/images/BottomBlueBar.png"));
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center bottom;
        border-top: 0;
    }

/* ── 41. User drawer ─────────────────────────────────────────── */
.user-drawer[b-dvwc55b0ps] {
    width: 420px;
    max-width: 100%;
    height: 100%;
    background: var(--bg-surface);
    border-left: 1px solid var(--border-default);
    box-shadow: -4px 0 20px rgba(0,0,0,0.18);
    padding: 1.25rem 1.25rem 1rem;
    display: flex;
    flex-direction: column;
}

.user-drawer-header[b-dvwc55b0ps] {
    margin-bottom: 0.75rem;
}

.user-drawer-title[b-dvwc55b0ps] {
    font-weight: 700;
    font-size: 1.05rem;
}

.user-drawer-body[b-dvwc55b0ps] {
    flex: 1;
    overflow-y: auto;
    margin-top: 0.5rem;
}

.user-drawer-footer[b-dvwc55b0ps] {
    padding-top: 0.75rem;
}

.user-drawer-tabs[b-dvwc55b0ps] {
    margin-top: 0.75rem;
    margin-bottom: 0.5rem;
}

    .user-drawer-tabs .nav-link[b-dvwc55b0ps] {
        font-size: 0.8rem;
        font-weight: 600;
    }

[data-bs-theme="dark"] .user-drawer[b-dvwc55b0ps],
[data-theme="dark"] .user-drawer[b-dvwc55b0ps] {
    background: #07111e;
}

/* ── 42. Lookup shell (Pricing Lookup page) ──────────────────── */
.bo-layout.lookup-shell[b-dvwc55b0ps] {
    --lookup-shell-top-gap: 1.5rem;
    --lookup-shell-bottom-gap: 2rem;
    margin-top: var(--lookup-shell-top-gap);
    padding: 0 1rem var(--lookup-shell-bottom-gap);
    align-items: stretch;
    min-height: calc(100vh - var(--navbar-height, 56px));
    min-height: calc(100dvh - var(--navbar-height, 56px));
}

    .bo-layout.lookup-shell > .bo-sidenav.lookup-sidebar[b-dvwc55b0ps] {
        position: sticky;
        top: var(--lookup-shell-top-gap);
        align-self: stretch !important;
        min-height: calc(100dvh - var(--lookup-shell-top-gap));
        height: auto;
        max-height: none;
    }

        .bo-layout.lookup-shell > .bo-sidenav.lookup-sidebar[b-dvwc55b0ps]::after {
            content: "";
            position: absolute;
            right: 0;
            width: 2px;
            background: var(--iac-gold);
            pointer-events: none;
            top: 0;
            bottom: 0;
        }

    .bo-layout.lookup-shell > .bo-main[b-dvwc55b0ps] {
        padding-top: 0;
        min-height: 0;
        overflow-y: visible !important;
        overflow-x: visible !important;
        min-height: unset !important;
    }

.lookup-tablewrap[b-dvwc55b0ps] {
    overflow-y: auto;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    border: 1px solid var(--border-default);
    border-radius: var(--radius-md);
    background: var(--bg-surface);
    margin-top: 0.75rem;
    position: relative;
}

    .lookup-tablewrap:has(.quotes-table--pricing)[b-dvwc55b0ps] {
        max-height: min(68vh, 640px);
        min-height: 0;
        overflow-y: auto;
        overflow-x: auto;
        overscroll-behavior: contain;
    }

        .lookup-tablewrap:has(.quotes-table--pricing) .quotes-table--pricing[b-dvwc55b0ps] {
            position: relative;
        }

            .lookup-tablewrap:has(.quotes-table--pricing) .quotes-table--pricing tbody th[b-dvwc55b0ps] {
                position: sticky;
                top: 44px;
                z-index: 12;
                background: #F5F7FB;
                background-clip: padding-box;
                box-shadow: 0 1px 0 rgba(0,40,85,0.10), 0 2px 6px rgba(0,20,60,0.06);
            }

[data-bs-theme="dark"] .lookup-tablewrap:has(.quotes-table--pricing) .quotes-table--pricing tbody th[b-dvwc55b0ps],
[data-theme="dark"] .lookup-tablewrap:has(.quotes-table--pricing) .quotes-table--pricing tbody th[b-dvwc55b0ps],
.dark-mode .lookup-tablewrap:has(.quotes-table--pricing) .quotes-table--pricing tbody th[b-dvwc55b0ps] {
    background: #14213A;
    box-shadow: 0 1px 0 rgba(255,255,255,0.08), 0 2px 8px rgba(0,0,0,0.32);
}

.lookup-tablewrap.lookup-tablewrap--door[b-dvwc55b0ps] {
    max-height: 450px;
    overflow-y: auto !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
    position: relative;
}

    .lookup-tablewrap.lookup-tablewrap--door thead th[b-dvwc55b0ps] {
        position: sticky !important;
        top: 0 !important;
        z-index: 20 !important;
        background: var(--table-header-bg) !important;
        background-clip: padding-box !important;
        box-shadow: 0 2px 0 var(--border-default) !important;
    }

:root[data-bs-theme="dark"] .lookup-tablewrap.lookup-tablewrap--door thead th[b-dvwc55b0ps] {
    background: var(--table-header-bg) !important;
    box-shadow: 0 2px 0 rgba(255,255,255,0.09) !important;
}

.lookup-tablewrap--door > table[b-dvwc55b0ps] {
    overflow: visible !important;
}

.lookup-shell .card.lookup-panel[b-dvwc55b0ps],
.lookup-shell .card.quotes-page[b-dvwc55b0ps],
.lookup-shell .card.mb-4.quotes-page.lookup-panel[b-dvwc55b0ps] {
    overflow: visible !important;
}

.lookup-shell .lookup-table--sticky thead th[b-dvwc55b0ps] {
    position: sticky;
    top: 0;
    z-index: 5;
    background: #1a3260 !important;
    color: #e0ebff !important;
    border-bottom: 2px solid rgba(241,184,40,0.50) !important;
    font-weight: 800;
    font-size: 0.72rem;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    padding: 11px 0.9rem;
    white-space: nowrap;
    text-align: center;
    box-shadow: 0 2px 8px rgba(0,15,50,0.30);
}

[data-bs-theme="dark"] .lookup-shell .lookup-table--sticky thead th[b-dvwc55b0ps],
[data-theme="dark"] .lookup-shell .lookup-table--sticky thead th[b-dvwc55b0ps] {
    background: #0d1e3a !important;
    color: #7aacd4 !important;
    border-bottom-color: rgba(241,184,40,0.35) !important;
}

.lookup-shell .lookup-table[b-dvwc55b0ps] {
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
    margin: 0 !important;
}

/* ── 42b. Named sticky-header table classes by panel ────────── */
/*
  Each panel gets its own table class so headers can be tuned
  per-context. All share the same sticky mechanism and navy/gold design.
  Usage: add class e.g. "bo-table bo-table--users" to <table>
*/

/* ── Shared base for ALL bo-table variants ─────────────────── */
.bo-table[b-dvwc55b0ps] {
    font-family: var(--font);
    font-size: 13px;
    color: var(--text-primary);
    border-collapse: collapse;
    width: 100%;
    margin: 0;
}

    /* All headers — sticky, dark navy, gold bottom border */
    .bo-table thead th[b-dvwc55b0ps] {
        position: sticky;
        top: 0;
        z-index: 20;
        background: #1a3260;
        color: #ddeaff;
        font-size: 0.72rem;
        font-weight: 800;
        letter-spacing: 0.10em;
        text-transform: uppercase;
        padding: 11px 14px;
        border-bottom: 2px solid rgba(241,184,40,0.55);
        white-space: nowrap;
        user-select: none;
        text-align: center;
        box-shadow: 0 2px 8px rgba(0,15,50,0.30);
    }

        .bo-table thead th:first-child[b-dvwc55b0ps] {
            text-align: left;
            padding-left: 18px;
            border-left: 3px solid var(--iac-gold);
        }

        .bo-table thead th + th[b-dvwc55b0ps] {
            border-left: 1px solid rgba(255,255,255,0.07);
        }

    .bo-table tbody tr[b-dvwc55b0ps] {
        transition: background var(--t-fast);
        border-bottom: 1px solid var(--table-border);
    }

        .bo-table tbody tr:last-child[b-dvwc55b0ps] {
            border-bottom: none;
        }

        .bo-table tbody tr:hover[b-dvwc55b0ps] {
            background: rgba(0,87,255,0.04);
        }

    .bo-table tbody td[b-dvwc55b0ps] {
        padding: 9px 14px;
        vertical-align: middle;
        border-bottom: 1px solid var(--table-border);
        text-align: center;
    }

        .bo-table tbody td:first-child[b-dvwc55b0ps] {
            text-align: left;
            padding-left: 18px;
        }

/* Dark mode base */
[data-bs-theme="dark"] .bo-table thead th[b-dvwc55b0ps],
[data-theme="dark"] .bo-table thead th[b-dvwc55b0ps] {
    background: #0d1e3a;
    color: #7aacd4;
    border-bottom-color: rgba(241,184,40,0.38);
    box-shadow: 0 2px 8px rgba(0,0,0,0.55);
}

[data-bs-theme="dark"] .bo-table tbody tr:hover[b-dvwc55b0ps],
[data-theme="dark"] .bo-table tbody tr:hover[b-dvwc55b0ps] {
    background: rgba(0,87,255,0.08);
}

/* ── Users panel table ─────────────────────────────────────── */
.bo-table--users thead th[b-dvwc55b0ps] {
    background: #18346a;
}

/* ── Orders panel table ────────────────────────────────────── */
.bo-table--orders thead th[b-dvwc55b0ps] {
    background: #1a3260;
}

/* ── Reps panel table ──────────────────────────────────────── */
.bo-table--reps thead th[b-dvwc55b0ps] {
    background: #1e3a2a;
    border-bottom-color: rgba(18,160,88,0.55);
}

[data-bs-theme="dark"] .bo-table--reps thead th[b-dvwc55b0ps],
[data-theme="dark"] .bo-table--reps thead th[b-dvwc55b0ps] {
    background: #0d2018;
    border-bottom-color: rgba(18,160,88,0.40);
}

/* ── Adders panel table ────────────────────────────────────── */
.bo-table--adders thead th[b-dvwc55b0ps] {
    background: #2a2010;
    border-bottom-color: rgba(241,184,40,0.70);
}

[data-bs-theme="dark"] .bo-table--adders thead th[b-dvwc55b0ps],
[data-theme="dark"] .bo-table--adders thead th[b-dvwc55b0ps] {
    background: #1a1408;
    border-bottom-color: rgba(241,184,40,0.50);
}

/* ── Pricing panel table ───────────────────────────────────── */
/* The live pricing table uses class="table quotes-table quotes-table--pricing".
   Bootstrap's .table td rules can override our quotes-table styles.
   Re-assert our quotes-table--pricing td styles to always win. */
.table.quotes-table--pricing tbody td[b-dvwc55b0ps],
.table.quotes-table tbody td[b-dvwc55b0ps] {
    padding: 8px 12px !important;
    vertical-align: middle !important;
    border-bottom: 1px solid var(--table-border) !important;
    text-align: center !important;
    color: var(--text-primary) !important;
    font-size: 13px !important;
    background-color: inherit !important;
}

    .table.quotes-table--pricing tbody td:first-child[b-dvwc55b0ps],
    .table.quotes-table tbody td:first-child[b-dvwc55b0ps] {
        text-align: left !important;
        padding-left: 18px !important;
    }

.bo-table--pricing thead th[b-dvwc55b0ps] {
    background: #1a2855;
    border-bottom-color: rgba(241,184,40,0.55);
}

/* ── History/Change log table ──────────────────────────────── */
.bo-table--history thead th[b-dvwc55b0ps] {
    background: #1e1a30;
    border-bottom-color: rgba(120,80,220,0.55);
}

[data-bs-theme="dark"] .bo-table--history thead th[b-dvwc55b0ps],
[data-theme="dark"] .bo-table--history thead th[b-dvwc55b0ps] {
    background: #130e20;
    border-bottom-color: rgba(120,80,220,0.40);
}

/* ── Requests panel table ──────────────────────────────────── */
.bo-table--requests thead th[b-dvwc55b0ps] {
    background: #1a3040;
    border-bottom-color: rgba(14,165,233,0.55);
}

[data-bs-theme="dark"] .bo-table--requests thead th[b-dvwc55b0ps],
[data-theme="dark"] .bo-table--requests thead th[b-dvwc55b0ps] {
    background: #0d1e2a;
    border-bottom-color: rgba(14,165,233,0.40);
}

/* ── Stock items table ─────────────────────────────────────── */
.bo-table--stock thead th[b-dvwc55b0ps] {
    background: #1a2e1a;
    border-bottom-color: rgba(46,138,80,0.60);
}

[data-bs-theme="dark"] .bo-table--stock thead th[b-dvwc55b0ps],
[data-theme="dark"] .bo-table--stock thead th[b-dvwc55b0ps] {
    background: #0d1e0d;
    border-bottom-color: rgba(46,138,80,0.42);
}

/* ── Terms/Payments table ──────────────────────────────────── */
.bo-table--terms thead th[b-dvwc55b0ps] {
    background: #2a1a10;
    border-bottom-color: rgba(212,139,0,0.60);
}

[data-bs-theme="dark"] .bo-table--terms thead th[b-dvwc55b0ps],
[data-theme="dark"] .bo-table--terms thead th[b-dvwc55b0ps] {
    background: #1a1008;
    border-bottom-color: rgba(212,139,0,0.42);
}

/* ── Warn/Danger row highlights work on all bo-table ────────── */
.bo-table tbody tr.bo-row--warn > td[b-dvwc55b0ps] {
    background-color: var(--warn-bg) !important;
}

    .bo-table tbody tr.bo-row--warn > td:first-child[b-dvwc55b0ps] {
        box-shadow: inset 3px 0 0 var(--warn-border);
    }

.bo-table tbody tr.bo-row--warn:hover > td[b-dvwc55b0ps] {
    background-color: rgba(255,193,7,0.20) !important;
}

.bo-table tbody tr.bo-row--danger > td[b-dvwc55b0ps] {
    background-color: var(--danger-bg) !important;
}

    .bo-table tbody tr.bo-row--danger > td:first-child[b-dvwc55b0ps] {
        box-shadow: inset 3px 0 0 var(--danger-border);
    }

.bo-table tbody tr.bo-row--danger:hover > td[b-dvwc55b0ps] {
    background-color: rgba(220,53,69,0.18) !important;
}

/* ── 43. Misc ────────────────────────────────────────────────── */
.categoryName[b-dvwc55b0ps] {
    font-size: 13px;
    font-weight: 600;
    color: var(--text-primary);
    letter-spacing: 0.02em;
}

.chevrons[b-dvwc55b0ps] {
    color: var(--iac-gold);
}

.warning-check[b-dvwc55b0ps] {
    color: var(--status-warn);
    font-size: 15px;
}

.cursor-pointer[b-dvwc55b0ps] {
    cursor: pointer;
}

.font-monospace[b-dvwc55b0ps] {
    font-family: var(--font-mono) !important;
}

.fst-italic[b-dvwc55b0ps] {
    font-style: italic;
}

.opacity-75[b-dvwc55b0ps] {
    opacity: 0.75;
}

.m-0[b-dvwc55b0ps] {
    margin: 0;
}

.m-auto[b-dvwc55b0ps] {
    margin: auto;
}

.text-BO[b-dvwc55b0ps] {
    color: var(--iac-accent) !important;
}

.selected-files-container[b-dvwc55b0ps] {
    max-height: 200px;
    overflow-y: auto;
}

.edit-line-title[b-dvwc55b0ps] {
    font-weight: 600;
    color: #ffffff !important;
}

.fa-spin[b-dvwc55b0ps] {
    animation: fa-spin-b-dvwc55b0ps 1s linear infinite;
}

.fa-2x[b-dvwc55b0ps] {
    font-size: 2em;
}

@keyframes fa-spin-b-dvwc55b0ps {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

/* ── 44. Scrollbars ──────────────────────────────────────────── */
.table-scroll[b-dvwc55b0ps]::-webkit-scrollbar,
.autocomplete-dropdown[b-dvwc55b0ps]::-webkit-scrollbar,
.bo-sidenav[b-dvwc55b0ps]::-webkit-scrollbar,
.bo-revision-right[b-dvwc55b0ps]::-webkit-scrollbar,
.user-drawer-body[b-dvwc55b0ps]::-webkit-scrollbar {
    width: 5px;
    height: 5px;
}

.table-scroll[b-dvwc55b0ps]::-webkit-scrollbar-track,
.autocomplete-dropdown[b-dvwc55b0ps]::-webkit-scrollbar-track,
.bo-sidenav[b-dvwc55b0ps]::-webkit-scrollbar-track,
.bo-revision-right[b-dvwc55b0ps]::-webkit-scrollbar-track,
.user-drawer-body[b-dvwc55b0ps]::-webkit-scrollbar-track {
    background: transparent;
}

.table-scroll[b-dvwc55b0ps]::-webkit-scrollbar-thumb,
.autocomplete-dropdown[b-dvwc55b0ps]::-webkit-scrollbar-thumb,
.bo-sidenav[b-dvwc55b0ps]::-webkit-scrollbar-thumb,
.bo-revision-right[b-dvwc55b0ps]::-webkit-scrollbar-thumb,
.user-drawer-body[b-dvwc55b0ps]::-webkit-scrollbar-thumb {
    background: var(--border-strong);
    border-radius: 8px;
}

/* ── 45. Responsive ──────────────────────────────────────────── */

/* ≤991px – Tablet */
@media (max-width: 991.98px) {
    .bo-hw-sections[b-dvwc55b0ps] {
        grid-template-columns: 1fr;
    }

    .bo-layout.lookup-shell[b-dvwc55b0ps] {
        padding: 0 0.75rem 1.5rem;
        margin-top: 1rem;
    }

    .lookup-shell .lookup-tablewrap[b-dvwc55b0ps] {
        max-height: 360px;
    }

    .user-activity-alerts .uaa-grid[b-dvwc55b0ps],
    .bo-users-shell .uaa-grid[b-dvwc55b0ps] {
        grid-template-columns: 1fr;
    }
}

/* ≤900px */
@media (max-width: 900px) {
    .user-activity-alerts .uaa-grid[b-dvwc55b0ps] {
        grid-template-columns: 1fr;
    }
}

/* ≤768px – Mobile */
@media (max-width: 768px) {

    /* Hide nav items not suited to mobile (Manage Adders, System, Content).
       Specificity ladder — must beat every display:flex !important on nav-link:
         .bo-sidenav .backoffice-sidenav .nav-link        = (0,3,0)  ← highest
         .backoffice-sidenav button.nav-link               = (0,2,1)
         .backoffice-sidenav .nav-link                     = (0,2,0)
       We compound .bo-mobile-hide onto each selector so we always win. */
    .bo-sidenav .backoffice-sidenav .nav-link.bo-mobile-hide[b-dvwc55b0ps],
    .lookup-sidebar .backoffice-sidenav .nav-link.bo-mobile-hide[b-dvwc55b0ps],
    .backoffice-sidenav button.nav-link.bo-mobile-hide[b-dvwc55b0ps],
    .backoffice-sidenav .nav-link.bo-mobile-hide[b-dvwc55b0ps],
    .quote-title.bo-mobile-hide[b-dvwc55b0ps] {
        display: none !important;
    }

    /* Users header: stack title above controls, stretch to full width */
    .bo-users-header[b-dvwc55b0ps] {
        flex-direction: column;
        align-items: stretch;
        gap: 8px;
        padding: 0.85rem 1rem;
        overflow: hidden;
    }

    .bo-users-title[b-dvwc55b0ps] {
        width: 100%;
    }

    .bo-users-title-text[b-dvwc55b0ps] {
        font-size: 0.95rem;
        white-space: normal;
        word-break: break-word;
    }

    /* Controls: single column, each child stretches full width */
    .bo-users-controls[b-dvwc55b0ps] {
        width: 100%;
        display: flex !important;
        flex-direction: column;
        gap: 0.5rem;
        align-items: stretch;
    }

    /* Search boxes fill their row */
    .bo-users-search[b-dvwc55b0ps] {
        width: 100% !important;
        min-width: 0 !important;
        position: relative;
    }

        .bo-users-search .bo-search-input[b-dvwc55b0ps] {
            width: 100% !important;
            min-width: 0 !important;
        }

    /* Action buttons sit side-by-side in their own row */
    .bo-users-controls-actions[b-dvwc55b0ps] {
        display: flex;
        gap: 0.5rem;
        width: 100%;
    }

        .bo-users-controls-actions .btn[b-dvwc55b0ps] {
            flex: 1 1 0;
            font-size: 0.8rem;
            padding: 0.45rem 0.5rem;
            white-space: nowrap;
            min-width: 0;
        }

    .hw-opt-grid[b-dvwc55b0ps] {
        grid-template-columns: 1fr;
    }

    .quotes-filters[b-dvwc55b0ps] {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }

        .quotes-filters > *[b-dvwc55b0ps] {
            width: 100%;
        }

    .bo-sticky .quotes-filters[b-dvwc55b0ps] {
        align-items: flex-start;
    }

    /* Table wrappers: horizontal scroll, no forced padding that breaks layout */
    .table-scroll[b-dvwc55b0ps], .order-table-wrap[b-dvwc55b0ps],
    .quotes-page-wrapper[b-dvwc55b0ps], .myquotes-page[b-dvwc55b0ps] {
        max-height: none;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    /* Users card: no extra padding that doubles up with inner table padding */
    .bo-users-card[b-dvwc55b0ps] {
        max-height: none;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        padding: 0 !important;
        margin: 0 !important;
    }
}

/* Show toggle on mobile only */
@media (min-width: 769px) {
    .bo-toggle[b-dvwc55b0ps] {
        display: none !important;
    }
}

/* ≤576px – Small phone */
@media (max-width: 576px) {
    .bo-modal-shift-up[b-dvwc55b0ps] {
        transform: translateY(0);
        padding-top: 60px;
    }

    .bo-hw-row[b-dvwc55b0ps] {
        grid-template-columns: 1fr;
        gap: 0.15rem;
    }

        .bo-hw-row dt[b-dvwc55b0ps] {
            color: var(--text-muted);
        }

    .bo-layout.lookup-shell[b-dvwc55b0ps] {
        padding: 0 0.5rem 1rem;
    }

    .lookup-shell .lookup-tablewrap[b-dvwc55b0ps] {
        max-height: 300px;
    }
}

/* ≥992px – Desktop */
@media (min-width: 992px) {
    .bo-users-card .table-scroll[b-dvwc55b0ps] {
        max-height: 520px;
    }
}

/* ── 46. Print ───────────────────────────────────────────────── */
@media print {
    .bo-sidenav[b-dvwc55b0ps], .lookup-sidebar[b-dvwc55b0ps], .bo-toggle[b-dvwc55b0ps],
    .toast-backoffice[b-dvwc55b0ps], .bo-preview-panel[b-dvwc55b0ps] {
        display: none !important;
    }

    .bo-main[b-dvwc55b0ps] {
        padding: 0;
    }

    .table thead th[b-dvwc55b0ps] {
        background: #F0F2F8 !important;
        color: #0D1117 !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
}

/* ── 47. Extracted inline styles from BackOffice.razor ────────── */
/* Toast positioning (was: style="z-index: 1055; top: 4.5rem;") */
.toast-backoffice.position-fixed[b-dvwc55b0ps] {
    z-index: 1055 !important;
    top: 4.5rem !important;
}

/* Users table column widths (was: style="min-width/width" on th) */
.users-table th.col-name-email[b-dvwc55b0ps] {
    min-width: 230px;
    text-align: left !important;
    padding-left: 18px !important;
}

.users-table td.col-name-email[b-dvwc55b0ps] {
    text-align: left !important;
    padding-left: 18px !important;
}

.users-table th.col-company[b-dvwc55b0ps] {
    min-width: 220px;
    text-align: center;
}

.users-table th.col-phone[b-dvwc55b0ps] {
    min-width: 150px;
    text-align: center;
}

.users-table th.col-last-signin[b-dvwc55b0ps] {
    min-width: 190px;
    text-align: center;
}

.users-table th.col-signin-count[b-dvwc55b0ps] {
    width: 90px;
    text-align: center;
}

.users-table th.col-enabled[b-dvwc55b0ps] {
    width: 100px;
    text-align: center;
}

.users-table th.col-pwd-reset[b-dvwc55b0ps] {
    width: 110px;
    text-align: center;
}

.users-table th.col-faq-tab[b-dvwc55b0ps] {
    width: 100px;
    text-align: center;
}

.users-table th.col-docs-only[b-dvwc55b0ps] {
    width: 100px;
    text-align: center;
}

.users-table th.col-actions[b-dvwc55b0ps] {
    width: 130px;
    text-align: right;
}

/* Order review table TH widths */
.order-review-table th.col-amount[b-dvwc55b0ps] {
    min-width: 110px;
}

.order-review-table th.col-customer-type[b-dvwc55b0ps] {
    min-width: 160px;
}

.order-review-table th.col-billing[b-dvwc55b0ps] {
    min-width: 140px;
}

.order-review-table th.col-pay-terms[b-dvwc55b0ps] {
    min-width: 160px;
}

.order-review-table th.col-company-name[b-dvwc55b0ps] {
    min-width: 120px;
}

.order-review-table th.col-notes[b-dvwc55b0ps] {
    min-width: 160px;
}

.order-review-table th.col-action[b-dvwc55b0ps] {
    min-width: 120px;
}

/* Pricing table TH widths */
.quotes-table--pricing th.col-category[b-dvwc55b0ps] {
    width: 16%;
}

.quotes-table--pricing th.col-type[b-dvwc55b0ps] {
    width: 16%;
}

.quotes-table--pricing th.col-product[b-dvwc55b0ps] {
    width: 24%;
}

.quotes-table--pricing th.col-rate[b-dvwc55b0ps] {
    width: 14%;
}

.quotes-table--pricing th.col-active[b-dvwc55b0ps] {
    width: 10%;
}

.quotes-table--pricing th.col-pact[b-dvwc55b0ps] {
    width: 20%;
    text-align: right;
}

/* Quotes history table column widths */
.quotes-table--history th.col-quote[b-dvwc55b0ps] {
    width: 15%;
}

.quotes-table--history th.col-updated[b-dvwc55b0ps] {
    width: 15%;
}

.quotes-table--history th.col-user[b-dvwc55b0ps] {
    width: 15%;
}

.quotes-table--history th.col-company[b-dvwc55b0ps] {
    width: 20%;
}

.quotes-table--history th.col-total[b-dvwc55b0ps] {
    width: 12%;
}

.quotes-table--history th.col-status[b-dvwc55b0ps] {
    width: 10%;
}

.quotes-table--history th.col-hactions[b-dvwc55b0ps] {
    width: 13%;
    text-align: center;
}

/* Filter select min-widths (were inline) */
.bo-filter-select-sm[b-dvwc55b0ps] {
    min-width: 150px;
}

.bo-filter-input-md[b-dvwc55b0ps] {
    min-width: 200px;
}

/* Filters grid layout (was: style="display:grid; grid-template-columns: repeat(14, 1fr)") */
.bo-filters-14col[b-dvwc55b0ps] {
    display: grid;
    grid-template-columns: repeat(14, 1fr);
    gap: 0.5rem;
    align-items: end;
}

.bo-filters-col-3[b-dvwc55b0ps] {
    grid-column: span 3;
}

.bo-filters-col-4[b-dvwc55b0ps] {
    grid-column: span 4;
}

.bo-filters-col-4-end[b-dvwc55b0ps] {
    grid-column: span 4;
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

.bo-filters-actions[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    gap: 1.75rem;
}

.bo-filter-check[b-dvwc55b0ps] {
    white-space: nowrap;
}

/* Revision modal list group (was: style="max-height:320px; overflow:auto;") */
.bo-revision-list[b-dvwc55b0ps] {
    max-height: 320px;
    overflow: auto;
}

/* Revision diff block bg (was: style="background: rgba(255,255,255,0.04);") */
.bo-revision-diff-block[b-dvwc55b0ps] {
    background: rgba(255,255,255,0.04);
}

.modal-content.bo-revision-modal .bo-revision-section-card[b-dvwc55b0ps] {
    background: linear-gradient(180deg, #f8fbff 0%, #eef4fb 100%) !important;
    border: 1px solid rgba(0, 40, 85, 0.12) !important;
    border-radius: 10px !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.65);
}

.modal-content.bo-revision-modal .bo-revision-section-title[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #23476f !important;
}

    .modal-content.bo-revision-modal .bo-revision-section-title[b-dvwc55b0ps]::before {
        content: "";
        width: 8px;
        height: 8px;
        border-radius: 999px;
        background: linear-gradient(180deg, #0057FF 0%, #F1B828 100%);
        box-shadow: 0 0 0 3px rgba(0,87,255,0.10);
    }

[data-bs-theme="dark"] .modal-content.bo-revision-modal .bo-revision-section-card[b-dvwc55b0ps],
[data-theme="dark"] .modal-content.bo-revision-modal .bo-revision-section-card[b-dvwc55b0ps],
.dark-mode .modal-content.bo-revision-modal .bo-revision-section-card[b-dvwc55b0ps] {
    background: linear-gradient(180deg, #162235 0%, #121c2c 100%) !important;
    border-color: rgba(143, 181, 212, 0.24) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.03);
}

[data-bs-theme="dark"] .modal-content.bo-revision-modal .bo-revision-section-title[b-dvwc55b0ps],
[data-theme="dark"] .modal-content.bo-revision-modal .bo-revision-section-title[b-dvwc55b0ps],
.dark-mode .modal-content.bo-revision-modal .bo-revision-section-title[b-dvwc55b0ps] {
    color: #9fc4e6 !important;
}

/* Revision textarea height (was: style="height:140px; overflow:auto; resize:none;") */
.bo-revision-textarea[b-dvwc55b0ps] {
    height: 140px;
    overflow: auto;
    resize: none;
}

/* Compact review block (was: style="max-height:160px; overflow:auto;") */
.bo-review-compact[b-dvwc55b0ps] {
    max-height: 160px;
    overflow: auto;
}

/* Revision table container (was: style="max-height:55vh; overflow:auto;") */
.bo-revision-table-scroll[b-dvwc55b0ps] {
    max-height: 55vh;
    overflow: auto;
}

/* Bulk change TH widths */
.bo-bulk-change-table th.col-component[b-dvwc55b0ps] {
    width: 140px;
}

.bo-bulk-change-table th.col-change[b-dvwc55b0ps] {
    width: 50%;
}

/* Line-item table checkbox col */
.bo-li-table th.col-check[b-dvwc55b0ps] {
    width: 28px;
}

.bo-li-table th.col-line[b-dvwc55b0ps] {
    width: 80px;
}

/* Change history action column */
.bo-change-history-table th.col-action[b-dvwc55b0ps] {
    width: 340px;
}

.bo-change-history-table td.col-action[b-dvwc55b0ps] {
    max-width: 300px;
}

/* Toggle switch sizing in tables (was: style="width:3em;height:1.5em;") */
.bo-table-toggle[b-dvwc55b0ps] {
    width: 3em;
    height: 1.5em;
}

/* Compact input groups in tables (were inline) */
.bo-input-group-160[b-dvwc55b0ps] {
    max-width: 160px;
}

.bo-input-group-220[b-dvwc55b0ps] {
    max-width: 220px;
}

/* Add notes label margin (was: style="margin-left:12px;") */
label.bo-revnotes-label[b-dvwc55b0ps] {
    margin-left: 12px;
}

/* ── 48. Additional extracted inline styles ───────────────────── */
/* Line-item table checkbox/check column */
.bo-li-table th.col-check-sm[b-dvwc55b0ps] {
    width: 28px;
}

.bo-li-table th.col-line-no[b-dvwc55b0ps] {
    width: 80px;
}

/* Change history action column width */
.bo-change-history-table th.col-chg-action[b-dvwc55b0ps] {
    width: 340px;
}

.bo-change-history-table td.col-chg-action[b-dvwc55b0ps] {
    max-width: 300px;
}

/* Stock items table */
.bo-stock-table th.col-part-id[b-dvwc55b0ps] {
    width: 150px;
}

.bo-stock-table th.col-description[b-dvwc55b0ps] {
    min-width: 300px;
}

.bo-stock-table th.col-uom[b-dvwc55b0ps] {
    width: 100px;
}

.bo-stock-table th.col-cost[b-dvwc55b0ps] {
    width: 120px;
    text-align: right;
}

.bo-stock-table th.col-stock-act[b-dvwc55b0ps] {
    width: 150px;
    text-align: center;
}

/* Image input width */
.bo-image-input-sm[b-dvwc55b0ps] {
    width: 160px;
}

/* Dropdown action row */
.bo-dropdown-action-row[b-dvwc55b0ps] {
    gap: .5rem;
    white-space: nowrap;
}

/* Action dropdown panel */
.bo-action-dropdown[b-dvwc55b0ps] {
    min-width: 250px;
}

/* Upload zone */
.bo-upload-zone[b-dvwc55b0ps] {
    min-height: 120px;
}

/* Selected files list */
.bo-selected-files-list[b-dvwc55b0ps] {
    max-height: 200px;
    overflow-y: auto;
}

/* Image preview area */
.bo-image-preview-area[b-dvwc55b0ps] {
    height: 200px;
    background: var(--bg-surface-2);
}

[data-bs-theme="dark"] .bo-image-preview-area[b-dvwc55b0ps] {
    background: var(--bg-surface-3);
}

/* Image preview contained */
.bo-image-preview-img[b-dvwc55b0ps] {
    max-height: 100%;
    max-width: 100%;
    object-fit: contain;
}

/* ── Final shared UI alignment overrides ───────────────────────── */
:root:not([data-bs-theme="dark"]) .bo-main .card[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .bo-main .backoffice-section[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .bo-main .lookup-panel[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .bo-main .saved-sets-card[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .bo-main .saved-hw[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .bo-main .pref-card[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .bo-main .bo-users-card[b-dvwc55b0ps] {
    background: #F3F6FB !important;
    border-color: rgba(0,40,85,0.10) !important;
    box-shadow: 0 6px 20px rgba(0,20,60,0.08), 0 1px 3px rgba(0,0,0,0.05) !important;
}

:root:not([data-bs-theme="dark"]) .bo-main .table-scroll[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .bo-main .table-responsive[b-dvwc55b0ps] {
    background: #FFFFFF !important;
}

.form-control.form-control-sm.bo-search-input[b-dvwc55b0ps],
.form-control.bo-search-input[b-dvwc55b0ps] {
    min-height: 34px;
    line-height: 1.35 !important;
    padding-left: 2.1rem !important;
    padding-right: 2.15rem !important;
}

/* search wrapper must be the positioning container */
.bo-users-search[b-dvwc55b0ps] {
    min-width: 240px;
    position: relative;
}

    /* icon sits inside the input */
    .bo-users-search .bo-search-icon[b-dvwc55b0ps] {
        position: absolute;
        left: 0.7rem;
        top: 50%;
        transform: translateY(-50%);
        width: 0.95rem;
        text-align: center;
        z-index: 2;
        color: var(--text-muted);
        opacity: 0.8;
        pointer-events: none;
    }

    /* make room for the icon */
    .bo-users-search .bo-search-input[b-dvwc55b0ps] {
        padding-left: 2.05rem;
    }

    .bo-users-search .bo-search-clear[b-dvwc55b0ps] {
        right: 0.55rem;
        width: 1rem;
        height: 1rem;
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    .bo-users-search .spinner-border[b-dvwc55b0ps],
    .bo-users-search .spinner-grow[b-dvwc55b0ps] {
        position: absolute;
        right: 2rem;
        top: 50%;
        transform: translateY(-50%);
        width: 0.85rem;
        height: 0.85rem;
        z-index: 2;
    }

.form-select.form-select-sm.bo-filter-select-sm[b-dvwc55b0ps] {
    min-width: 150px;
    min-height: 34px;
    padding-right: 2.3rem !important;
    background-position: right 0.7rem center !important;
}

:root:not([data-bs-theme="dark"]) .form-select.form-select-sm.bo-filter-select-sm[b-dvwc55b0ps] {
    background-color: #FFFFFF !important;
    border-color: rgba(0,40,85,0.16) !important;
    color: #17304F !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.9) !important;
}

    :root:not([data-bs-theme="dark"]) .form-select.form-select-sm.bo-filter-select-sm option[b-dvwc55b0ps] {
        color: #17304F;
        background: #FFFFFF;
    }

[data-bs-theme="dark"] .form-select.form-select-sm.bo-filter-select-sm[b-dvwc55b0ps],
[data-theme="dark"] .form-select.form-select-sm.bo-filter-select-sm[b-dvwc55b0ps] {
    color: var(--text-primary) !important;
    background-color: #141C2C !important;
    border-color: rgba(255,255,255,0.12) !important;
}

.btn.btn-solid.btn-neutral-solid.btn-sm[b-dvwc55b0ps],
button.btn.btn-solid.btn-neutral-solid.btn-sm[b-dvwc55b0ps],
.btn-solid.btn-neutral-solid.btn-sm[b-dvwc55b0ps] {
    min-height: 32px;
    padding: 0.42rem 0.8rem !important;
    border-radius: var(--radius-sm) !important;
    background: linear-gradient(180deg, #FFFFFF 0%, #E6EEF9 100%) !important;
    border: 1px solid rgba(0,40,85,0.20) !important;
    color: #18365F !important;
    font-weight: 700 !important;
    letter-spacing: 0.03em !important;
    box-shadow: 0 6px 16px rgba(0,40,85,0.08), inset 0 1px 0 rgba(255,255,255,0.95) !important;
    transition: transform var(--t-fast), background var(--t-fast), border-color var(--t-fast), box-shadow var(--t-fast), color var(--t-fast) !important;
}

    .btn.btn-solid.btn-neutral-solid.btn-sm:hover[b-dvwc55b0ps],
    button.btn.btn-solid.btn-neutral-solid.btn-sm:hover[b-dvwc55b0ps],
    .btn-solid.btn-neutral-solid.btn-sm:hover[b-dvwc55b0ps] {
        background: linear-gradient(180deg, #F7FBFF 0%, #DDE8F8 100%) !important;
        border-color: rgba(0,40,85,0.30) !important;
        color: #0F2648 !important;
        transform: translateY(-1px);
        box-shadow: 0 10px 22px rgba(0,40,85,0.12), inset 0 1px 0 rgba(255,255,255,0.92) !important;
    }

    .btn.btn-solid.btn-neutral-solid.btn-sm:active[b-dvwc55b0ps],
    button.btn.btn-solid.btn-neutral-solid.btn-sm:active[b-dvwc55b0ps],
    .btn-solid.btn-neutral-solid.btn-sm:active[b-dvwc55b0ps] {
        transform: translateY(0);
        background: linear-gradient(180deg, #E6EEF9 0%, #D7E2F2 100%) !important;
        box-shadow: inset 0 2px 5px rgba(0,40,85,0.12), 0 2px 6px rgba(0,40,85,0.06) !important;
    }

    .btn.btn-solid.btn-neutral-solid.btn-sm:focus[b-dvwc55b0ps],
    .btn.btn-solid.btn-neutral-solid.btn-sm:focus-visible[b-dvwc55b0ps],
    button.btn.btn-solid.btn-neutral-solid.btn-sm:focus[b-dvwc55b0ps],
    button.btn.btn-solid.btn-neutral-solid.btn-sm:focus-visible[b-dvwc55b0ps],
    .btn-solid.btn-neutral-solid.btn-sm:focus[b-dvwc55b0ps],
    .btn-solid.btn-neutral-solid.btn-sm:focus-visible[b-dvwc55b0ps] {
        border-color: rgba(0,87,255,0.45) !important;
        box-shadow: 0 0 0 3px rgba(0,87,255,0.18), 0 10px 22px rgba(0,40,85,0.10) !important;
        outline: none !important;
    }

[data-bs-theme="dark"] .btn.btn-solid.btn-neutral-solid.btn-sm[b-dvwc55b0ps],
[data-theme="dark"] .btn.btn-solid.btn-neutral-solid.btn-sm[b-dvwc55b0ps],
[data-bs-theme="dark"] button.btn.btn-solid.btn-neutral-solid.btn-sm[b-dvwc55b0ps],
[data-theme="dark"] button.btn.btn-solid.btn-neutral-solid.btn-sm[b-dvwc55b0ps],
[data-bs-theme="dark"] .btn-solid.btn-neutral-solid.btn-sm[b-dvwc55b0ps],
[data-theme="dark"] .btn-solid.btn-neutral-solid.btn-sm[b-dvwc55b0ps] {
    background: linear-gradient(180deg, #21334F 0%, #18283E 100%) !important;
    border-color: rgba(125,164,220,0.26) !important;
    color: #C7DAF5 !important;
    box-shadow: 0 10px 20px rgba(0,0,0,0.30), inset 0 1px 0 rgba(255,255,255,0.05) !important;
}

    [data-bs-theme="dark"] .btn.btn-solid.btn-neutral-solid.btn-sm:hover[b-dvwc55b0ps],
    [data-theme="dark"] .btn.btn-solid.btn-neutral-solid.btn-sm:hover[b-dvwc55b0ps],
    [data-bs-theme="dark"] button.btn.btn-solid.btn-neutral-solid.btn-sm:hover[b-dvwc55b0ps],
    [data-theme="dark"] button.btn.btn-solid.btn-neutral-solid.btn-sm:hover[b-dvwc55b0ps],
    [data-bs-theme="dark"] .btn-solid.btn-neutral-solid.btn-sm:hover[b-dvwc55b0ps],
    [data-theme="dark"] .btn-solid.btn-neutral-solid.btn-sm:hover[b-dvwc55b0ps] {
        background: linear-gradient(180deg, #294164 0%, #1E3150 100%) !important;
        border-color: rgba(145,186,245,0.40) !important;
        color: #E4EEFF !important;
        box-shadow: 0 14px 24px rgba(0,0,0,0.34), inset 0 1px 0 rgba(255,255,255,0.07) !important;
    }

    [data-bs-theme="dark"] .btn.btn-solid.btn-neutral-solid.btn-sm:active[b-dvwc55b0ps],
    [data-theme="dark"] .btn.btn-solid.btn-neutral-solid.btn-sm:active[b-dvwc55b0ps],
    [data-bs-theme="dark"] button.btn.btn-solid.btn-neutral-solid.btn-sm:active[b-dvwc55b0ps],
    [data-theme="dark"] button.btn.btn-solid.btn-neutral-solid.btn-sm:active[b-dvwc55b0ps],
    [data-bs-theme="dark"] .btn-solid.btn-neutral-solid.btn-sm:active[b-dvwc55b0ps],
    [data-theme="dark"] .btn-solid.btn-neutral-solid.btn-sm:active[b-dvwc55b0ps] {
        background: linear-gradient(180deg, #18283E 0%, #142235 100%) !important;
        box-shadow: inset 0 2px 6px rgba(0,0,0,0.40), 0 4px 10px rgba(0,0,0,0.18) !important;
    }

.users-table th.col-name-email[b-dvwc55b0ps],
.users-table td.col-name-email[b-dvwc55b0ps],
.users-table tbody td:first-child[b-dvwc55b0ps] {
    text-align: left !important;
}

    .users-table td.col-name-email > div[b-dvwc55b0ps],
    .users-table td.col-name-email .d-flex[b-dvwc55b0ps] {
        justify-content: flex-start !important;
        text-align: left !important;
    }

    .users-table td.col-name-email .bo-user-name[b-dvwc55b0ps],
    .users-table td.col-name-email .bo-user-email[b-dvwc55b0ps] {
        text-align: left !important;
    }

.users-table th.col-actions[b-dvwc55b0ps],
.users-table td.col-actions[b-dvwc55b0ps] {
    text-align: right !important;
}

/* Keep the actions td background consistent with its row — no white box */
.users-table td.col-actions[b-dvwc55b0ps] {
    background-color: inherit !important;
}

.bo-table-wrap--pricing[b-dvwc55b0ps] {
    overflow-x: auto;
    overflow-y: auto;
    position: relative;
}

    .bo-table-wrap--pricing .quotes-table--pricing[b-dvwc55b0ps] {
        width: max-content;
        min-width: 100%;
        table-layout: auto;
    }

        .bo-table-wrap--pricing .quotes-table--pricing thead th.hw-col-actions-head[b-dvwc55b0ps] {
            position: sticky !important;
            right: 0 !important;
            z-index: 36 !important;
            min-width: 148px !important;
            background-clip: padding-box;
            border-left: 1px solid rgba(255,255,255,0.08);
            box-shadow: -12px 0 16px rgba(0,20,60,0.10), 0 2px 8px rgba(0,15,50,0.30) !important;
        }

        .bo-table-wrap--pricing .quotes-table--pricing tbody td.hw-col-actions-cell[b-dvwc55b0ps] {
            position: sticky;
            right: 0;
            z-index: 12;
            min-width: 148px;
            text-align: center !important;
            background-clip: padding-box;
            border-left: 1px solid rgba(0,40,85,0.08);
            box-shadow: -12px 0 16px rgba(0,20,60,0.08);
        }



:root:not([data-bs-theme="dark"]) .bo-table-wrap--pricing .quotes-table--pricing tbody tr:nth-child(even) > td.hw-col-actions-cell[b-dvwc55b0ps] {
    background: #EEF4FD !important;
}

:root:not([data-bs-theme="dark"]) .bo-table-wrap--pricing .quotes-table--pricing tbody tr:hover > td.hw-col-actions-cell[b-dvwc55b0ps] {
    background: #DCE8F8 !important;
}

[data-bs-theme="dark"] .bo-table-wrap--pricing .quotes-table--pricing thead th.hw-col-actions-head[b-dvwc55b0ps],
[data-theme="dark"] .bo-table-wrap--pricing .quotes-table--pricing thead th.hw-col-actions-head[b-dvwc55b0ps] {
    border-left-color: rgba(255,255,255,0.10);
    box-shadow: -12px 0 18px rgba(0,0,0,0.38), 0 2px 8px rgba(0,0,0,0.55) !important;
}

[data-bs-theme="dark"] .bo-table-wrap--pricing .quotes-table--pricing tbody td.hw-col-actions-cell[b-dvwc55b0ps],
[data-theme="dark"] .bo-table-wrap--pricing .quotes-table--pricing tbody td.hw-col-actions-cell[b-dvwc55b0ps] {
    background: #0F1520;
    border-left-color: rgba(255,255,255,0.08);
    box-shadow: -12px 0 18px rgba(0,0,0,0.32);
}

[data-bs-theme="dark"] .bo-table-wrap--pricing .quotes-table--pricing tbody tr:nth-child(odd) > td.hw-col-actions-cell[b-dvwc55b0ps],
[data-theme="dark"] .bo-table-wrap--pricing .quotes-table--pricing tbody tr:nth-child(odd) > td.hw-col-actions-cell[b-dvwc55b0ps] {
    background: #0F1520 !important;
}

[data-bs-theme="dark"] .bo-table-wrap--pricing .quotes-table--pricing tbody tr:nth-child(even) > td.hw-col-actions-cell[b-dvwc55b0ps],
[data-theme="dark"] .bo-table-wrap--pricing .quotes-table--pricing tbody tr:nth-child(even) > td.hw-col-actions-cell[b-dvwc55b0ps] {
    background: #141C2C !important;
}

[data-bs-theme="dark"] .bo-table-wrap--pricing .quotes-table--pricing tbody tr:hover > td.hw-col-actions-cell[b-dvwc55b0ps],
[data-theme="dark"] .bo-table-wrap--pricing .quotes-table--pricing tbody tr:hover > td.hw-col-actions-cell[b-dvwc55b0ps] {
    background: rgba(0,87,255,0.09) !important;
}

.bo-table-wrap--pricing .quotes-table--pricing td:not(.hw-col-actions-cell)[b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing th:not(.hw-col-actions-head)[b-dvwc55b0ps] {
    width: auto;
}

.bo-table-wrap--pricing .quotes-table--pricing .bo-table-check[b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing input[type="checkbox"][b-dvwc55b0ps] {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;
    margin: 0 auto !important;
    vertical-align: middle;
}

[data-bs-theme="dark"] input[type="checkbox"][b-dvwc55b0ps],
[data-theme="dark"] input[type="checkbox"][b-dvwc55b0ps],
.dark-mode input[type="checkbox"][b-dvwc55b0ps] {
    width: 18px !important;
    height: 18px !important;
    border: 2px solid #6F93C3 !important;
    border-radius: 5px !important;
    background-color: #1C2738 !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    background-size: 11px !important;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.50), 0 0 0 1px rgba(111,147,195,0.20) !important;
}

    [data-bs-theme="dark"] input[type="checkbox"]:hover:not(:checked):not(:disabled)[b-dvwc55b0ps],
    [data-theme="dark"] input[type="checkbox"]:hover:not(:checked):not(:disabled)[b-dvwc55b0ps],
    .dark-mode input[type="checkbox"]:hover:not(:checked):not(:disabled)[b-dvwc55b0ps] {
        background-color: #25364D !important;
        border-color: #8EB7F2 !important;
        box-shadow: inset 0 1px 3px rgba(0,0,0,0.52), 0 0 0 1px rgba(142,183,242,0.22) !important;
    }

    [data-bs-theme="dark"] input[type="checkbox"]:checked[b-dvwc55b0ps],
    [data-theme="dark"] input[type="checkbox"]:checked[b-dvwc55b0ps],
    .dark-mode input[type="checkbox"]:checked[b-dvwc55b0ps] {
        background-color: #2C7BFF !important;
        border-color: #1B5FE0 !important;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23fff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' d='M3 8l3.5 3.5L13 4'/%3E%3C/svg%3E") !important;
        box-shadow: 0 0 0 3px rgba(44,123,255,0.30) !important;
    }

    [data-bs-theme="dark"] input[type="checkbox"]:focus[b-dvwc55b0ps],
    [data-bs-theme="dark"] input[type="checkbox"]:focus-visible[b-dvwc55b0ps],
    [data-theme="dark"] input[type="checkbox"]:focus[b-dvwc55b0ps],
    [data-theme="dark"] input[type="checkbox"]:focus-visible[b-dvwc55b0ps],
    .dark-mode input[type="checkbox"]:focus[b-dvwc55b0ps],
    .dark-mode input[type="checkbox"]:focus-visible[b-dvwc55b0ps] {
        border-color: #9CC2FF !important;
        box-shadow: 0 0 0 3px rgba(44,123,255,0.34) !important;
        outline: none !important;
    }

    [data-bs-theme="dark"] input[type="checkbox"]:disabled[b-dvwc55b0ps],
    [data-theme="dark"] input[type="checkbox"]:disabled[b-dvwc55b0ps],
    .dark-mode input[type="checkbox"]:disabled[b-dvwc55b0ps] {
        background-color: #162131 !important;
        border-color: rgba(111,147,195,0.45) !important;
        opacity: 0.55 !important;
        box-shadow: inset 0 1px 3px rgba(0,0,0,0.42) !important;
    }

[data-bs-theme="dark"] .bo-switch input[type="checkbox"][b-dvwc55b0ps],
[data-theme="dark"] .bo-switch input[type="checkbox"][b-dvwc55b0ps],
.dark-mode .bo-switch input[type="checkbox"][b-dvwc55b0ps] {
    width: 0 !important;
    height: 0 !important;
    opacity: 0 !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}


/* Phase 1 width tightening: reclaim space for sticky Actions column */


.bo-table-wrap--pricing .quotes-table--pricing th.contact-col[b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing td.contact-col[b-dvwc55b0ps] {
    min-width: 88px;
    width: 88px;
}



.bo-table-wrap--pricing .quotes-table--pricing th.enabled-col[b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing td.enabled-col[b-dvwc55b0ps] {
    min-width: 74px;
    width: 74px;
}






.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware th.price-col[b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware td.price-col[b-dvwc55b0ps] {
    min-width: 138px;
    width: 138px;
}





.bo-table-wrap--pricing .quotes-table--pricing th[data-col="RegWindowPrice"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing td[data-col="RegWindowPrice"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing th[data-col="ULWindowPrice"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing td[data-col="ULWindowPrice"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing th[data-col="ULDoorPrice"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing td[data-col="ULDoorPrice"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing th[data-col="VeneerCost"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing td[data-col="VeneerCost"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing th[data-col="VeneerCost2"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing td[data-col="VeneerCost2"][b-dvwc55b0ps] {
    min-width: 116px;
    width: 116px;
}

    .bo-table-wrap--pricing .quotes-table--pricing td[data-col="RegWindowPrice"] .input-group[b-dvwc55b0ps],
    .bo-table-wrap--pricing .quotes-table--pricing td[data-col="ULWindowPrice"] .input-group[b-dvwc55b0ps],
    .bo-table-wrap--pricing .quotes-table--pricing td[data-col="ULDoorPrice"] .input-group[b-dvwc55b0ps],
    .bo-table-wrap--pricing .quotes-table--pricing td[data-col="VeneerCost"] .input-group[b-dvwc55b0ps],
    .bo-table-wrap--pricing .quotes-table--pricing td[data-col="VeneerCost2"] .input-group[b-dvwc55b0ps] {
        width: 106px;
        min-width: 106px;
    }

.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--windows th[data-col="Description"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--windows td[data-col="Description"][b-dvwc55b0ps] {
    min-width: 180px;
    max-width: 240px;
}

/* Phase 1 refinement: rebalance specific pricing categories so Actions has room without over-shrinking edit columns */








.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware .hw-opt-grid[b-dvwc55b0ps] {
    display: grid;
    grid-template-columns: repeat(2, max-content);
    gap: 6px 12px;
    justify-content: start;
    align-items: center;
}

    .bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware .hw-opt-grid label[b-dvwc55b0ps] {
        display: inline-flex;
        align-items: center;
        gap: 6px;
        margin: 0;
        white-space: nowrap;
    }

.bo-table-wrap--pricing .quotes-table--pricing th[data-col="STC"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing td[data-col="STC"][b-dvwc55b0ps] {
    min-width: 68px;
}

.bo-table-wrap--pricing .quotes-table--pricing th[data-col="RegWindowType"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing td[data-col="RegWindowType"][b-dvwc55b0ps] {
    min-width: 110px;
}

.bo-table-wrap--pricing .quotes-table--pricing th[data-col="RegWindowSize"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing td[data-col="RegWindowSize"][b-dvwc55b0ps] {
    min-width: 102px;
}

.bo-table-wrap--pricing .quotes-table--pricing th[data-col="RegWindowPrice"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing td[data-col="RegWindowPrice"][b-dvwc55b0ps] {
    min-width: 118px;
    width: 118px;
}

.bo-table-wrap--pricing .quotes-table--pricing th[data-col="ULTime"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing td[data-col="ULTime"][b-dvwc55b0ps] {
    min-width: 76px;
}

.bo-table-wrap--pricing .quotes-table--pricing th[data-col="ULWindowSize"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing td[data-col="ULWindowSize"][b-dvwc55b0ps] {
    min-width: 104px;
}

.bo-table-wrap--pricing .quotes-table--pricing th[data-col="ULWindowPrice"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing td[data-col="ULWindowPrice"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing th[data-col="ULDoorPrice"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing td[data-col="ULDoorPrice"][b-dvwc55b0ps] {
    min-width: 118px;
    width: 118px;
}

.bo-table-wrap--pricing .quotes-table--pricing th[data-col="veneerType"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing td[data-col="veneerType"][b-dvwc55b0ps] {
    min-width: 102px;
}

.bo-table-wrap--pricing .quotes-table--pricing th[data-col="SizeWIn"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing td[data-col="SizeWIn"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing th[data-col="SizeHIn"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing td[data-col="SizeHIn"][b-dvwc55b0ps] {
    min-width: 84px;
}

.bo-table-wrap--pricing .quotes-table--pricing th[data-col="DoorSTC2"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing td[data-col="DoorSTC2"][b-dvwc55b0ps] {
    min-width: 74px;
}

.bo-table-wrap--pricing .quotes-table--pricing th[data-col="VeneerCost"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing td[data-col="VeneerCost"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing th[data-col="VeneerCost2"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing td[data-col="VeneerCost2"][b-dvwc55b0ps] {
    min-width: 118px;
    width: 118px;
}


/* Phase 1 refinement: final pricing-table rebalance + stronger pricing tab/title affordances */


.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware th[data-col="Type"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware td[data-col="Type"][b-dvwc55b0ps] {
    min-width: 96px;
    width: 96px;
}

.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware th[data-col="Brand"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware td[data-col="Brand"][b-dvwc55b0ps] {
    min-width: 96px;
    width: 96px;
}



.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware th[data-col="Model"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware td[data-col="Model"][b-dvwc55b0ps] {
    min-width: 100px;
    width: 110px;
    max-width: 130px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware th[data-col="Comments"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware td[data-col="Comments"][b-dvwc55b0ps] {
    min-width: 120px;
    max-width: 160px;
}

.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware th[data-col="Price"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware td[data-col="Price"][b-dvwc55b0ps] {
    min-width: 124px;
    width: 124px;
}

    .bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware td[data-col="Price"] .input-group[b-dvwc55b0ps] {
        width: 114px;
        min-width: 114px;
    }

.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--regwindow th[data-col="STC"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--regwindow td[data-col="STC"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--ulwindow th[data-col="STC"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--ulwindow td[data-col="STC"][b-dvwc55b0ps] {
    min-width: 58px;
    width: 58px;
}

.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--regwindow th[data-col="RegWindowType"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--regwindow td[data-col="RegWindowType"][b-dvwc55b0ps] {
    min-width: 92px;
    width: 92px;
}

.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--regwindow th[data-col="RegWindowSize"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--regwindow td[data-col="RegWindowSize"][b-dvwc55b0ps] {
    min-width: 92px;
    width: 92px;
}

.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--regwindow th[data-col="RegWindowPrice"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--regwindow td[data-col="RegWindowPrice"][b-dvwc55b0ps] {
    min-width: 132px;
    width: 132px;
}

    .bo-table-wrap--pricing .quotes-table--pricing.quotes-table--regwindow td[data-col="RegWindowPrice"] .input-group[b-dvwc55b0ps] {
        width: 122px;
        min-width: 122px;
    }

.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--ulwindow th[data-col="ULTime"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--ulwindow td[data-col="ULTime"][b-dvwc55b0ps] {
    min-width: 68px;
    width: 68px;
}

.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--ulwindow th[data-col="ULWindowSize"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--ulwindow td[data-col="ULWindowSize"][b-dvwc55b0ps] {
    min-width: 94px;
    width: 94px;
}

.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--ulwindow th[data-col="ULWindowPrice"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--ulwindow td[data-col="ULWindowPrice"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--ulwindow th[data-col="ULDoorPrice"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--ulwindow td[data-col="ULDoorPrice"][b-dvwc55b0ps] {
    min-width: 132px;
    width: 132px;
}

    .bo-table-wrap--pricing .quotes-table--pricing.quotes-table--ulwindow td[data-col="ULWindowPrice"] .input-group[b-dvwc55b0ps],
    .bo-table-wrap--pricing .quotes-table--pricing.quotes-table--ulwindow td[data-col="ULDoorPrice"] .input-group[b-dvwc55b0ps] {
        width: 122px;
        min-width: 122px;
    }

.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--veneer th[data-col="veneerType"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--veneer td[data-col="veneerType"][b-dvwc55b0ps] {
    min-width: 88px;
    width: 88px;
}

.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--veneer th[data-col="SizeWIn"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--veneer td[data-col="SizeWIn"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--veneer th[data-col="SizeHIn"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--veneer td[data-col="SizeHIn"][b-dvwc55b0ps] {
    min-width: 74px;
    width: 74px;
}


.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--veneer th[data-col="DoorSTC"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--veneer td[data-col="DoorSTC"][b-dvwc55b0ps] {
    min-width: 90px;
    width: 90px;
}

.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--veneer th[data-col="DoorSTC2"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--veneer td[data-col="DoorSTC2"][b-dvwc55b0ps] {
    min-width: 66px;
    width: 66px;
}

.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--veneer th[data-col="VeneerCost"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--veneer td[data-col="VeneerCost"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--veneer th[data-col="VeneerCost2"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--veneer td[data-col="VeneerCost2"][b-dvwc55b0ps] {
    min-width: 132px;
    width: 132px;
}

    .bo-table-wrap--pricing .quotes-table--pricing.quotes-table--veneer td[data-col="VeneerCost"] .input-group[b-dvwc55b0ps],
    .bo-table-wrap--pricing .quotes-table--pricing.quotes-table--veneer td[data-col="VeneerCost2"] .input-group[b-dvwc55b0ps] {
        width: 122px;
        min-width: 122px;
    }

.bo-pricing-live-title[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.9rem;
    padding: 0.65rem 1rem;
    border-radius: 999px;
    background: linear-gradient(135deg, rgba(0,40,85,0.12), rgba(0,87,255,0.08));
    border: 1px solid rgba(0,40,85,0.10);
    box-shadow: 0 8px 22px rgba(0,25,70,0.06);
}

[data-bs-theme="dark"] .bo-pricing-live-title[b-dvwc55b0ps],
[data-theme="dark"] .bo-pricing-live-title[b-dvwc55b0ps],
.dark-mode .bo-pricing-live-title[b-dvwc55b0ps] {
    background: linear-gradient(135deg, rgba(0,40,85,0.44), rgba(0,87,255,0.18));
    border-color: rgba(111,147,195,0.18);
    box-shadow: 0 10px 24px rgba(0,0,0,0.28);
}

.bo-pricing-tabs .nav-link[b-dvwc55b0ps] {
    position: relative;
}

    .bo-pricing-tabs .nav-link.active[b-dvwc55b0ps] {
        color: #ffffff;
        border-bottom-color: var(--iac-gold);
        background: linear-gradient(180deg, rgba(0,40,85,0.90), rgba(0,40,85,0.74));
        box-shadow: inset 0 -2px 0 var(--iac-gold), 0 8px 16px rgba(0,40,85,0.08);
    }

:root:not([data-bs-theme="dark"]) .bo-pricing-tabs .nav-link.active[b-dvwc55b0ps] {
    color: #ffffff;
    background: linear-gradient(180deg, rgba(0,40,85,0.92), rgba(0,40,85,0.78));
    border: 1px solid rgba(0,40,85,0.20);
}


[data-bs-theme="dark"] .bo-pricing-tabs .nav-link.active[b-dvwc55b0ps],
[data-theme="dark"] .bo-pricing-tabs .nav-link.active[b-dvwc55b0ps],
.dark-mode .bo-pricing-tabs .nav-link.active[b-dvwc55b0ps] {
    color: #ffffff;
    background: linear-gradient(180deg, rgba(44,123,255,0.28), rgba(44,123,255,0.14));
    box-shadow: inset 0 -2px 0 var(--iac-gold), 0 10px 18px rgba(0,0,0,0.30);
}


/* ── Phase 2: Tool Requests config block ───────────────────── */
.bo-requests-config[b-dvwc55b0ps] {
    border-color: rgba(0,40,85,0.14) !important;
    border-radius: 14px !important;
    background: linear-gradient(180deg, rgba(230,238,250,0.96) 0%, rgba(219,230,247,0.90) 100%);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.65), 0 8px 22px rgba(0,40,85,0.06);
}

.bo-requests-config__header[b-dvwc55b0ps] {
    padding-bottom: 10px;
    border-bottom: 1px solid rgba(0,40,85,0.10);
}

.bo-requests-config h6[b-dvwc55b0ps] {
    color: var(--iac-blue);
    font-weight: 800;
}

.bo-requests-config .text-muted[b-dvwc55b0ps] {
    color: #4f6483 !important;
}

.bo-requests-toggle-grid[b-dvwc55b0ps] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 14px 18px;
}

.bo-requests-toggle-item[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    gap: 12px;
    min-height: 54px;
    padding: 12px 14px;
    border-radius: 12px;
    border: 1px solid rgba(0,40,85,0.10);
    background: rgba(255,255,255,0.52);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.5);
}

    .bo-requests-toggle-item .bo-switch[b-dvwc55b0ps] {
        flex-shrink: 0;
    }

    .bo-requests-toggle-item .bo-switch-label[b-dvwc55b0ps] {
        margin: 0;
        font-weight: 700;
        color: #223a5c;
        cursor: pointer;
    }

[data-bs-theme="dark"] .bo-requests-config[b-dvwc55b0ps],
[data-theme="dark"] .bo-requests-config[b-dvwc55b0ps],
.dark-mode .bo-requests-config[b-dvwc55b0ps] {
    border-color: rgba(58,127,255,0.22) !important;
    background: linear-gradient(180deg, rgba(19,31,49,0.96) 0%, rgba(14,24,40,0.96) 100%);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.03), 0 10px 24px rgba(0,0,0,0.26);
}

[data-bs-theme="dark"] .bo-requests-config__header[b-dvwc55b0ps],
[data-theme="dark"] .bo-requests-config__header[b-dvwc55b0ps],
.dark-mode .bo-requests-config__header[b-dvwc55b0ps] {
    border-bottom-color: rgba(255,255,255,0.07);
}

[data-bs-theme="dark"] .bo-requests-config h6[b-dvwc55b0ps],
[data-theme="dark"] .bo-requests-config h6[b-dvwc55b0ps],
.dark-mode .bo-requests-config h6[b-dvwc55b0ps] {
    color: #d9e8ff;
}

[data-bs-theme="dark"] .bo-requests-config .text-muted[b-dvwc55b0ps],
[data-theme="dark"] .bo-requests-config .text-muted[b-dvwc55b0ps],
.dark-mode .bo-requests-config .text-muted[b-dvwc55b0ps] {
    color: #8ea4c6 !important;
}

[data-bs-theme="dark"] .bo-requests-toggle-item[b-dvwc55b0ps],
[data-theme="dark"] .bo-requests-toggle-item[b-dvwc55b0ps],
.dark-mode .bo-requests-toggle-item[b-dvwc55b0ps] {
    border-color: rgba(255,255,255,0.08);
    background: rgba(24,36,58,0.78);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.02);
}

    [data-bs-theme="dark"] .bo-requests-toggle-item .bo-switch-label[b-dvwc55b0ps],
    [data-theme="dark"] .bo-requests-toggle-item .bo-switch-label[b-dvwc55b0ps],
    .dark-mode .bo-requests-toggle-item .bo-switch-label[b-dvwc55b0ps] {
        color: #d6e4fb;
    }

@media (max-width: 767.98px) {
    .bo-requests-config__header[b-dvwc55b0ps] {
        align-items: flex-start !important;
    }

    .bo-requests-toggle-grid[b-dvwc55b0ps] {
        grid-template-columns: 1fr;
    }
}


/* ── Phase 3: Tool Preferences checkbox / toggle unification ───────────── */
.bo-preferences-shell .pref-card[b-dvwc55b0ps] {
    background: var(--bg-surface);
    border-color: var(--border-default);
    box-shadow: var(--shadow-xs);
}

    .bo-preferences-shell .pref-card .card-header[b-dvwc55b0ps],
    .bo-preferences-shell .pref-card .tool-card-header[b-dvwc55b0ps] {
        border-bottom-color: var(--border-subtle);
    }

.bo-preferences-shell .pref-toggle-row[b-dvwc55b0ps] {
    min-height: 36px;
}

    .bo-preferences-shell .pref-toggle-row .form-check-input[b-dvwc55b0ps],
    .bo-preferences-shell .pref-toggle-input.form-check-input[b-dvwc55b0ps] {
        width: 2.75rem;
        height: 1.45rem;
        margin-top: 0;
        border-radius: 999px;
    }

        .bo-preferences-shell .pref-toggle-row .form-check-input:focus[b-dvwc55b0ps],
        .bo-preferences-shell .pref-toggle-row .form-check-input:focus-visible[b-dvwc55b0ps] {
            box-shadow: 0 0 0 0.2rem rgba(44,123,255,0.18);
        }

.bo-preferences-shell .pref-alert-check.form-check-input[type="checkbox"][b-dvwc55b0ps] {
    width: 1.08rem;
    height: 1.08rem;
    min-width: 1.08rem;
    min-height: 1.08rem;
    margin-top: 0;
    vertical-align: middle;
    border-radius: 0.3rem;
    border-width: 1.5px;
    appearance: none;
    -webkit-appearance: none;
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: center;
    background-size: 12px 12px;
}


    .bo-preferences-shell .pref-alert-check.form-check-input[type="checkbox"]:checked[b-dvwc55b0ps] {
        background-color: var(--iac-blue);
        border-color: var(--iac-blue);
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='white' d='M7.6 13.6 4.4 10.4 3 11.8l4.6 4.6L17 7l-1.4-1.4z'/%3E%3C/svg%3E");
    }

.bo-preferences-shell .quotes-table td .pref-alert-check.form-check-input[type="checkbox"][b-dvwc55b0ps] {
    display: inline-block;
}

.bo-preferences-shell .pref-alerts-card .quotes-table td.text-center[b-dvwc55b0ps] {
    vertical-align: middle;
}

[data-bs-theme="dark"] .bo-preferences-shell .pref-card[b-dvwc55b0ps],
[data-theme="dark"] .bo-preferences-shell .pref-card[b-dvwc55b0ps],
.dark-mode .bo-preferences-shell .pref-card[b-dvwc55b0ps] {
    background: linear-gradient(180deg, rgba(13,24,40,0.94) 0%, rgba(10,19,33,0.98) 100%);
    border-color: rgba(88,121,170,0.22);
    box-shadow: 0 10px 24px rgba(0,0,0,0.22);
}

[data-bs-theme="dark"] .bo-preferences-shell .pref-toggle-row .form-check-input[b-dvwc55b0ps],
[data-theme="dark"] .bo-preferences-shell .pref-toggle-row .form-check-input[b-dvwc55b0ps],
.dark-mode .bo-preferences-shell .pref-toggle-row .form-check-input[b-dvwc55b0ps] {
    background-color: rgba(17,29,47,0.96);
    border-color: rgba(121,160,214,0.5);
    box-shadow: inset 0 1px 1px rgba(255,255,255,0.02);
}

    [data-bs-theme="dark"] .bo-preferences-shell .pref-toggle-row .form-check-input:checked[b-dvwc55b0ps],
    [data-theme="dark"] .bo-preferences-shell .pref-toggle-row .form-check-input:checked[b-dvwc55b0ps],
    .dark-mode .bo-preferences-shell .pref-toggle-row .form-check-input:checked[b-dvwc55b0ps] {
        background-color: #2c7bff;
        border-color: #2c7bff;
        box-shadow: 0 0 0 1px rgba(44,123,255,0.18), 0 0 10px rgba(44,123,255,0.22);
    }

[data-bs-theme="dark"] .bo-preferences-shell .pref-alert-check.form-check-input[type="checkbox"][b-dvwc55b0ps],
[data-theme="dark"] .bo-preferences-shell .pref-alert-check.form-check-input[type="checkbox"][b-dvwc55b0ps],
.dark-mode .bo-preferences-shell .pref-alert-check.form-check-input[type="checkbox"][b-dvwc55b0ps] {
    background-color: rgba(17,29,47,0.96);
    border-color: rgba(121,160,214,0.5);
    box-shadow: inset 0 1px 1px rgba(255,255,255,0.02);
}

    [data-bs-theme="dark"] .bo-preferences-shell .pref-alert-check.form-check-input[type="checkbox"]:checked[b-dvwc55b0ps],
    [data-theme="dark"] .bo-preferences-shell .pref-alert-check.form-check-input[type="checkbox"]:checked[b-dvwc55b0ps],
    .dark-mode .bo-preferences-shell .pref-alert-check.form-check-input[type="checkbox"]:checked[b-dvwc55b0ps] {
        background-color: #2c7bff;
        border-color: #2c7bff;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='white' d='M7.6 13.6 4.4 10.4 3 11.8l4.6 4.6L17 7l-1.4-1.4z'/%3E%3C/svg%3E");
        box-shadow: 0 0 0 1px rgba(44,123,255,0.18), 0 0 8px rgba(44,123,255,0.18);
    }

    [data-bs-theme="dark"] .bo-preferences-shell .pref-alert-check.form-check-input[type="checkbox"]:focus[b-dvwc55b0ps],
    [data-bs-theme="dark"] .bo-preferences-shell .pref-alert-check.form-check-input[type="checkbox"]:focus-visible[b-dvwc55b0ps],
    [data-theme="dark"] .bo-preferences-shell .pref-alert-check.form-check-input[type="checkbox"]:focus[b-dvwc55b0ps],
    [data-theme="dark"] .bo-preferences-shell .pref-alert-check.form-check-input[type="checkbox"]:focus-visible[b-dvwc55b0ps],
    .dark-mode .bo-preferences-shell .pref-alert-check.form-check-input[type="checkbox"]:focus[b-dvwc55b0ps],
    .dark-mode .bo-preferences-shell .pref-alert-check.form-check-input[type="checkbox"]:focus-visible[b-dvwc55b0ps] {
        box-shadow: 0 0 0 0.2rem rgba(44,123,255,0.18);
    }

/* ── Phase 3 follow-up: dark-mode header readability + true toggle rendering */
[data-bs-theme="dark"] .bo-preferences-shell .tool-card-header[b-dvwc55b0ps],
[data-theme="dark"] .bo-preferences-shell .tool-card-header[b-dvwc55b0ps],
.dark-mode .bo-preferences-shell .tool-card-header[b-dvwc55b0ps] {
    background: linear-gradient(180deg, rgba(15,33,58,0.96) 0%, rgba(12,27,47,0.98) 100%);
    border-bottom-color: rgba(111,147,195,0.22);
    color: #E8F1FF;
}

[data-bs-theme="dark"] .bo-preferences-shell .tool-card-header-primary[b-dvwc55b0ps],
[data-theme="dark"] .bo-preferences-shell .tool-card-header-primary[b-dvwc55b0ps],
.dark-mode .bo-preferences-shell .tool-card-header-primary[b-dvwc55b0ps] {
    color: #EAF3FF;
    border-left-color: #F1B828;
}

[data-bs-theme="dark"] .bo-preferences-shell .tool-card-header-info[b-dvwc55b0ps],
[data-theme="dark"] .bo-preferences-shell .tool-card-header-info[b-dvwc55b0ps],
.dark-mode .bo-preferences-shell .tool-card-header-info[b-dvwc55b0ps] {
    color: #EAF3FF;
    border-left-color: #63B3ED;
}

[data-bs-theme="dark"] .bo-preferences-shell .pref-toggle-row .form-check-input[b-dvwc55b0ps],
[data-theme="dark"] .bo-preferences-shell .pref-toggle-row .form-check-input[b-dvwc55b0ps],
.dark-mode .bo-preferences-shell .pref-toggle-row .form-check-input[b-dvwc55b0ps],
[data-bs-theme="dark"] .bo-preferences-shell .pref-toggle-input.form-check-input[b-dvwc55b0ps],
[data-theme="dark"] .bo-preferences-shell .pref-toggle-input.form-check-input[b-dvwc55b0ps],
.dark-mode .bo-preferences-shell .pref-toggle-input.form-check-input[b-dvwc55b0ps] {
    appearance: none !important;
    -webkit-appearance: none !important;
    width: 2.75rem !important;
    min-width: 2.75rem !important;
    height: 1.45rem !important;
    min-height: 1.45rem !important;
    margin-top: 0 !important;
    position: relative !important;
    border-radius: 999px !important;
    border: 1.5px solid rgba(121,160,214,0.52) !important;
    background-color: rgba(17,29,47,0.96) !important;
    background-image: none !important;
    background-size: 0 !important;
    background-repeat: no-repeat !important;
    background-position: left center !important;
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.42) !important;
}

    [data-bs-theme="dark"] .bo-preferences-shell .pref-toggle-row .form-check-input:hover:not(:checked):not(:disabled)[b-dvwc55b0ps],
    [data-theme="dark"] .bo-preferences-shell .pref-toggle-row .form-check-input:hover:not(:checked):not(:disabled)[b-dvwc55b0ps],
    .dark-mode .bo-preferences-shell .pref-toggle-row .form-check-input:hover:not(:checked):not(:disabled)[b-dvwc55b0ps],
    [data-bs-theme="dark"] .bo-preferences-shell .pref-toggle-input.form-check-input:hover:not(:checked):not(:disabled)[b-dvwc55b0ps],
    [data-theme="dark"] .bo-preferences-shell .pref-toggle-input.form-check-input:hover:not(:checked):not(:disabled)[b-dvwc55b0ps],
    .dark-mode .bo-preferences-shell .pref-toggle-input.form-check-input:hover:not(:checked):not(:disabled)[b-dvwc55b0ps] {
        border-color: rgba(142,183,242,0.68) !important;
        background-color: rgba(24,39,61,0.98) !important;
        box-shadow: inset 0 1px 2px rgba(0,0,0,0.44), 0 0 0 1px rgba(142,183,242,0.12) !important;
    }

    [data-bs-theme="dark"] .bo-preferences-shell .pref-toggle-row .form-check-input:checked[b-dvwc55b0ps],
    [data-theme="dark"] .bo-preferences-shell .pref-toggle-row .form-check-input:checked[b-dvwc55b0ps],
    .dark-mode .bo-preferences-shell .pref-toggle-row .form-check-input:checked[b-dvwc55b0ps],
    [data-bs-theme="dark"] .bo-preferences-shell .pref-toggle-input.form-check-input:checked[b-dvwc55b0ps],
    [data-theme="dark"] .bo-preferences-shell .pref-toggle-input.form-check-input:checked[b-dvwc55b0ps],
    .dark-mode .bo-preferences-shell .pref-toggle-input.form-check-input:checked[b-dvwc55b0ps] {
        background-color: #2C7BFF !important;
        border-color: #1B5FE0 !important;
        background-image: none !important;
        box-shadow: 0 0 0 1px rgba(44,123,255,0.18), 0 0 10px rgba(44,123,255,0.20) !important;
    }

    [data-bs-theme="dark"] .bo-preferences-shell .pref-toggle-row .form-check-input:focus[b-dvwc55b0ps],
    [data-bs-theme="dark"] .bo-preferences-shell .pref-toggle-row .form-check-input:focus-visible[b-dvwc55b0ps],
    [data-theme="dark"] .bo-preferences-shell .pref-toggle-row .form-check-input:focus[b-dvwc55b0ps],
    [data-theme="dark"] .bo-preferences-shell .pref-toggle-row .form-check-input:focus-visible[b-dvwc55b0ps],
    .dark-mode .bo-preferences-shell .pref-toggle-row .form-check-input:focus[b-dvwc55b0ps],
    .dark-mode .bo-preferences-shell .pref-toggle-row .form-check-input:focus-visible[b-dvwc55b0ps],
    [data-bs-theme="dark"] .bo-preferences-shell .pref-toggle-input.form-check-input:focus[b-dvwc55b0ps],
    [data-bs-theme="dark"] .bo-preferences-shell .pref-toggle-input.form-check-input:focus-visible[b-dvwc55b0ps],
    [data-theme="dark"] .bo-preferences-shell .pref-toggle-input.form-check-input:focus[b-dvwc55b0ps],
    [data-theme="dark"] .bo-preferences-shell .pref-toggle-input.form-check-input:focus-visible[b-dvwc55b0ps],
    .dark-mode .bo-preferences-shell .pref-toggle-input.form-check-input:focus[b-dvwc55b0ps],
    .dark-mode .bo-preferences-shell .pref-toggle-input.form-check-input:focus-visible[b-dvwc55b0ps] {
        border-color: #9CC2FF !important;
        box-shadow: 0 0 0 3px rgba(44,123,255,0.28) !important;
        outline: none !important;
    }

    [data-bs-theme="dark"] .bo-preferences-shell .pref-toggle-row .form-check-input[b-dvwc55b0ps]::before,
    [data-theme="dark"] .bo-preferences-shell .pref-toggle-row .form-check-input[b-dvwc55b0ps]::before,
    .dark-mode .bo-preferences-shell .pref-toggle-row .form-check-input[b-dvwc55b0ps]::before,
    [data-bs-theme="dark"] .bo-preferences-shell .pref-toggle-input.form-check-input[b-dvwc55b0ps]::before,
    [data-theme="dark"] .bo-preferences-shell .pref-toggle-input.form-check-input[b-dvwc55b0ps]::before,
    .dark-mode .bo-preferences-shell .pref-toggle-input.form-check-input[b-dvwc55b0ps]::before {
        content: "";
        position: absolute;
        top: 1px;
        left: 1px;
        width: calc(1.45rem - 4px);
        height: calc(1.45rem - 4px);
        border-radius: 50%;
        background: linear-gradient(180deg, #F7FBFF 0%, #D8E8FF 100%);
        box-shadow: 0 1px 2px rgba(0,0,0,0.28);
        transform: translateX(0);
        transition: transform 0.18s ease;
    }

    [data-bs-theme="dark"] .bo-preferences-shell .pref-toggle-row .form-check-input:checked[b-dvwc55b0ps]::before,
    [data-theme="dark"] .bo-preferences-shell .pref-toggle-row .form-check-input:checked[b-dvwc55b0ps]::before,
    .dark-mode .bo-preferences-shell .pref-toggle-row .form-check-input:checked[b-dvwc55b0ps]::before,
    [data-bs-theme="dark"] .bo-preferences-shell .pref-toggle-input.form-check-input:checked[b-dvwc55b0ps]::before,
    [data-theme="dark"] .bo-preferences-shell .pref-toggle-input.form-check-input:checked[b-dvwc55b0ps]::before,
    .dark-mode .bo-preferences-shell .pref-toggle-input.form-check-input:checked[b-dvwc55b0ps]::before {
        transform: translateX(calc(2.75rem - 1.45rem));
    }


/* ── 35b. Image management pagination ─────────────────────────── */
.bo-image-pagination-wrap[b-dvwc55b0ps] {
    margin-top: 18px;
    padding-top: 14px;
    border-top: 1px solid var(--border-subtle);
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
}

.bo-image-pagination[b-dvwc55b0ps] {
    justify-content: flex-end;
}

.bo-image-page-indicator[b-dvwc55b0ps] {
    font-weight: 600;
    color: var(--text-secondary);
}

body.dark-mode .bo-image-pagination-wrap[b-dvwc55b0ps],
.dark-mode .bo-image-pagination-wrap[b-dvwc55b0ps] {
    border-top-color: rgba(255,255,255,0.10);
}

@media (max-width: 767.98px) {
    .bo-image-pagination-wrap[b-dvwc55b0ps] {
        align-items: stretch;
        gap: 10px;
    }

    .bo-image-pagination[b-dvwc55b0ps] {
        width: 100%;
        justify-content: flex-start;
    }

    .bo-image-page-indicator[b-dvwc55b0ps] {
        width: 100%;
    }
}


.bo-table-wrap--pricing .quotes-table--pricing .hw-col-actions[b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing thead th.hw-col-actions-head[b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing tbody td.hw-col-actions-cell[b-dvwc55b0ps] {
    min-width: 228px;
    width: 228px;
}
/* ============================================================
   PHASE 1 — Hardware table fine-tune (scoped)
   Keep Actions width as-is; reclaim space from Comments/Options/Contact
   and give Model more room.
   ============================================================ */
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware th[data-col="Model"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware td[data-col="Model"][b-dvwc55b0ps] {
    min-width: 250px;
    max-width: 255px;
}

.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware th[data-col="Options"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware td[data-col="Options"][b-dvwc55b0ps] {
    min-width: 75px;
    max-width: 80px;
}

.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware th.contact-col[b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware td.contact-col[b-dvwc55b0ps] {
    min-width: 92px;
    max-width: 104px;
}

.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware th[data-col="Comments"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware td[data-col="Comments"][b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware td.notes-cell[b-dvwc55b0ps],
.bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware td.wrap-cell[b-dvwc55b0ps] {
    min-width: 110px;
    max-width: 115px;
}

    .bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware td[data-col="Comments"] .form-control[b-dvwc55b0ps],
    .bo-table-wrap--pricing .quotes-table--pricing.quotes-table--hardware td.notes-cell .form-control[b-dvwc55b0ps] {
        min-width: 190px;
        max-width: 195px;
    }
/* ============================================================
   END OF FILE
   ============================================================ */

/* ============================================================
   RESPONSIVE — Full coverage from 1200px → 320px phone
   Breakpoints:
     ≤1199px  Large tablet / small laptop
     ≤991px   Tablet (existing, extended)
     ≤768px   Mobile landscape / small tablet (existing, extended)
     ≤576px   Phone portrait (existing, extended)
     ≤400px   Small phone (new)
   ============================================================ */


/* ── ≤1199px  Large tablet / small laptop ─────────────────── */
@media (max-width: 1199.98px) {

    /* Slightly reduce main padding */
    .bo-main[b-dvwc55b0ps] {
        padding: 22px 22px 44px;
    }

    /* 14-col filter grid → 7 cols */
    .bo-filters-14col[b-dvwc55b0ps] {
        grid-template-columns: repeat(7, 1fr);
    }

    .bo-filters-col-3[b-dvwc55b0ps] {
        grid-column: span 3;
    }

    .bo-filters-col-4[b-dvwc55b0ps] {
        grid-column: span 4;
    }

    .bo-filters-col-4-end[b-dvwc55b0ps] {
        grid-column: span 7;
        justify-content: flex-start;
    }

    /* Pricing table: horizontal scroll */
    .bo-table-wrap--pricing[b-dvwc55b0ps] {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    /* Revision modal: single column */
    .bo-hw-sections[b-dvwc55b0ps] {
        grid-template-columns: 1fr;
    }
}


/* ── ≤991px  Tablet (extended) ───────────────────────────── */
@media (max-width: 991.98px) {

    .bo-main[b-dvwc55b0ps] {
        padding: 18px 16px 36px;
    }

    /* Section cards: reduce internal padding */
    .backoffice-section[b-dvwc55b0ps] {
        padding: 20px 16px;
        margin-bottom: 16px;
    }

    /* Filter grid collapses to 4 cols */
    .bo-filters-14col[b-dvwc55b0ps] {
        grid-template-columns: repeat(4, 1fr);
    }

    .bo-filters-col-3[b-dvwc55b0ps] {
        grid-column: span 2;
    }

    .bo-filters-col-4[b-dvwc55b0ps] {
        grid-column: span 4;
    }

    .bo-filters-col-4-end[b-dvwc55b0ps] {
        grid-column: span 4;
    }

    /* Filter actions wrap */
    .bo-filters-actions[b-dvwc55b0ps] {
        flex-wrap: wrap;
        gap: 0.75rem;
    }

    /* Users: stack header */
    .bo-users-header[b-dvwc55b0ps] {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    .bo-users-controls[b-dvwc55b0ps] {
        width: 100%;
        flex-wrap: wrap;
        gap: 0.5rem;
    }

    .bo-users-search[b-dvwc55b0ps] {
        min-width: 0 !important;
        flex: 1 1 200px;
    }

    /* Preferences cards: 2 col → 1 col */
    .bo-preferences-shell .pref-card[b-dvwc55b0ps] {
        width: 100%;
    }

    /* Pipedrive / image sections: stack */
    .bo-image-input-sm[b-dvwc55b0ps] {
        width: 100%;
    }

    /* Section header: allow wrap */
    .bo-section-header[b-dvwc55b0ps] {
        flex-wrap: wrap;
    }

    /* Action dropdown: full width on tablet */
    .bo-action-dropdown .dropdown-menu[b-dvwc55b0ps] {
        min-width: 100%;
    }
}


/* ── ≤768px  Mobile landscape (extended) ─────────────────── */
@media (max-width: 768px) {

    /* Show mobile-only elements */
    .bo-mobile-hamburger[b-dvwc55b0ps] {
        display: flex !important;
    }

    .bo-drawer-close[b-dvwc55b0ps] {
        display: flex !important;
    }

    .bo-sidebar-backdrop[b-dvwc55b0ps] {
        display: block !important;
    }

    /* Sidebar: fixed overlay drawer — slides in over content */
    .bo-sidenav[b-dvwc55b0ps],
    .lookup-sidebar[b-dvwc55b0ps] {
        position: fixed;
        left: 0;
        top: 56px;
        bottom: 38px;
        height: calc(100dvh - 56px - 38px) !important;
        min-height: 0 !important;
        max-height: calc(100dvh - 56px - 38px) !important;
        z-index: 1040;
        transform: translateX(0);
        transition: transform var(--t-base), box-shadow var(--t-base);
        box-shadow: 4px 0 24px rgba(0,0,0,0.22);
        overflow-y: auto !important;
        overflow-x: hidden !important;
        overscroll-behavior: contain;
    }

        .bo-sidenav.collapsed[b-dvwc55b0ps],
        .lookup-sidebar.collapsed[b-dvwc55b0ps] {
            transform: translateX(-110%);
            width: var(--sidebar-width) !important;
            min-width: var(--sidebar-width) !important;
            min-height: 0 !important;
            height: 0 !important;
            overflow: hidden !important;
            pointer-events: none;
            box-shadow: none;
        }

    /* Layout: column on mobile so fixed-position aside doesn't affect bo-main */
    .bo-layout[b-dvwc55b0ps],
    .lookup-shell[b-dvwc55b0ps] {
        flex-direction: column !important;
        align-items: stretch !important;
        min-height: 0 !important;
    }

    .bo-main[b-dvwc55b0ps] {
        width: 100%;
        min-width: 0;
        padding: 8px 12px 32px;
        flex: 1;
    }

    /* Kill the phantom header gap on mobile */
    .bo-main-header[b-dvwc55b0ps] {
        display: none !important;
    }

    /* Hide old toggle button */
    .bo-toggle[b-dvwc55b0ps] {
        display: none !important;
    }

    /* Page heading shrinks */
    .backoffice-heading[b-dvwc55b0ps] {
        font-size: 1.1rem;
        white-space: normal;
    }

    /* Section header: stack title + controls */
    .bo-section-header[b-dvwc55b0ps] {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

    /* Filter grid: 2 cols */
    .bo-filters-14col[b-dvwc55b0ps] {
        grid-template-columns: 1fr 1fr;
        gap: 0.4rem;
    }

    .bo-filters-col-3[b-dvwc55b0ps],
    .bo-filters-col-4[b-dvwc55b0ps],
    .bo-filters-col-4-end[b-dvwc55b0ps] {
        grid-column: span 2;
    }

    .bo-filter-select-sm[b-dvwc55b0ps],
    .bo-filter-input-md[b-dvwc55b0ps] {
        min-width: 0;
        width: 100%;
    }

    /* Section cards */
    .backoffice-section[b-dvwc55b0ps] {
        padding: 14px 12px;
        border-radius: var(--radius-md);
    }

    /* ── TABLE STRATEGY ON PHONES ──────────────────────────────────────────
       Two-track approach:
       1. Tables that can reasonably scroll (pricing, order review, revisions):
          horizontal scroll with touch momentum + a scroll-hint shadow.
       2. Generic data tables (users, quotes): card-style stacked layout so
          every row reads top-to-bottom instead of requiring horizontal scroll.
          Opt IN to scroll-only with class .bo-table--scroll-only.
    ─────────────────────────────────────────────────────────────────────── */

    /* Scroll-capable wrappers */
    .bo-table-wrap--pricing[b-dvwc55b0ps],
    .order-table-wrap[b-dvwc55b0ps],
    .bo-revision-table-scroll[b-dvwc55b0ps] {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        max-height: none;
        /* Subtle right-edge shadow hints at scrollability */
        background: linear-gradient(to right, transparent, transparent) center, linear-gradient(to right, rgba(0,0,0,.08), transparent) left, linear-gradient(to left, rgba(0,0,0,.08), transparent) right;
        background-repeat: no-repeat;
        background-size: 100% 100%, 40px 100%, 40px 100%;
        background-attachment: local, scroll, scroll;
    }

    /* Generic table wrapper: also scroll on landscape (≥600px wide) but
       on portrait phones the card layout below takes over */
    .table-scroll[b-dvwc55b0ps],
    .bo-table-wrap[b-dvwc55b0ps] {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        max-height: none;
    }

    /* ── CARD-STYLE TABLE ROWS (portrait phones) ─────────────────────────
       Applied to .bo-table that are NOT inside a .bo-table--scroll-only wrapper.
       thead is visually hidden but kept for a11y.
       Each td becomes a labelled row using data-label attribute:
         <td data-label="Status">Active</td>
       The label is injected via ::before from the data-label attribute.

       Also covers .users-table, .quotes-table, .myquotes-table unless they
       sit inside a .bo-table--scroll-only wrapper or are a .quotes-table--pricing
       / .quotes-table--hardware (those are always scroll-only because they have
       40+ columns).
    ──────────────────────────────────────────────────────────────────────── */

    /* Selector group: all data tables that should become cards on phones */
    .bo-table:not(.bo-table--scroll-only) thead[b-dvwc55b0ps],
    .users-table:not(.bo-table--scroll-only) thead[b-dvwc55b0ps],
    .quotes-table:not(.bo-table--scroll-only):not(.quotes-table--pricing):not(.quotes-table--hardware):not(.quotes-table--door):not(.quotes-table--windows):not(.quotes-table--shiploose) thead[b-dvwc55b0ps],
    .myquotes-table:not(.bo-table--scroll-only) thead[b-dvwc55b0ps] {
        position: absolute;
        width: 1px;
        height: 1px;
        overflow: hidden;
        clip: rect(0,0,0,0);
        white-space: nowrap;
    }

    .bo-table:not(.bo-table--scroll-only) tbody tr[b-dvwc55b0ps],
    .users-table:not(.bo-table--scroll-only) tbody tr[b-dvwc55b0ps],
    .quotes-table:not(.bo-table--scroll-only):not(.quotes-table--pricing):not(.quotes-table--hardware):not(.quotes-table--door):not(.quotes-table--windows):not(.quotes-table--shiploose) tbody tr[b-dvwc55b0ps],
    .myquotes-table:not(.bo-table--scroll-only) tbody tr[b-dvwc55b0ps] {
        display: block;
        background: var(--bg-surface) !important;
        border: 1px solid var(--border-default) !important;
        border-radius: var(--radius-md) !important;
        margin-bottom: 10px !important;
        padding: 10px 12px !important;
        box-shadow: var(--shadow-xs);
        /* Reset any tr-level background that would compete */
        position: relative;
    }

    [data-bs-theme="dark"] .bo-table:not(.bo-table--scroll-only) tbody tr[b-dvwc55b0ps],
    [data-theme="dark"] .bo-table:not(.bo-table--scroll-only) tbody tr[b-dvwc55b0ps],
    [data-bs-theme="dark"] .users-table:not(.bo-table--scroll-only) tbody tr[b-dvwc55b0ps],
    [data-theme="dark"] .users-table:not(.bo-table--scroll-only) tbody tr[b-dvwc55b0ps],
    [data-bs-theme="dark"] .quotes-table:not(.bo-table--scroll-only):not(.quotes-table--pricing):not(.quotes-table--hardware) tbody tr[b-dvwc55b0ps],
    [data-theme="dark"] .quotes-table:not(.bo-table--scroll-only):not(.quotes-table--pricing):not(.quotes-table--hardware) tbody tr[b-dvwc55b0ps],
    [data-bs-theme="dark"] .myquotes-table:not(.bo-table--scroll-only) tbody tr[b-dvwc55b0ps],
    [data-theme="dark"] .myquotes-table:not(.bo-table--scroll-only) tbody tr[b-dvwc55b0ps] {
        background: var(--bg-surface) !important;
        border-color: var(--border-default) !important;
    }

    .bo-table:not(.bo-table--scroll-only) tbody td[b-dvwc55b0ps],
    .users-table:not(.bo-table--scroll-only) tbody td[b-dvwc55b0ps],
    .quotes-table:not(.bo-table--scroll-only):not(.quotes-table--pricing):not(.quotes-table--hardware):not(.quotes-table--door):not(.quotes-table--windows):not(.quotes-table--shiploose) tbody td[b-dvwc55b0ps],
    .myquotes-table:not(.bo-table--scroll-only) tbody td[b-dvwc55b0ps] {
        display: flex !important;
        align-items: baseline;
        gap: 8px;
        padding: 5px 0 !important;
        font-size: 0.82rem !important;
        border: none !important;
        background: transparent !important;
        white-space: normal !important;
        /* Reset striping that targets td bg */
        background-color: transparent !important;
    }

        /* data-label prefix — add data-label="Column Name" to each <td> in Razor */
        .bo-table:not(.bo-table--scroll-only) tbody td[data-label][b-dvwc55b0ps]::before,
        .users-table:not(.bo-table--scroll-only) tbody td[data-label][b-dvwc55b0ps]::before,
        .quotes-table:not(.bo-table--scroll-only):not(.quotes-table--pricing):not(.quotes-table--hardware):not(.quotes-table--door):not(.quotes-table--windows):not(.quotes-table--shiploose) tbody td[data-label][b-dvwc55b0ps]::before,
        .myquotes-table:not(.bo-table--scroll-only) tbody td[data-label][b-dvwc55b0ps]::before {
            content: attr(data-label);
            flex-shrink: 0;
            min-width: 90px;
            font-size: 0.68rem;
            font-weight: 700;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            color: var(--text-muted);
        }

        /* Action cell: full-width row of buttons at bottom of card */
        .bo-table:not(.bo-table--scroll-only) tbody td:last-child[b-dvwc55b0ps],
        .users-table:not(.bo-table--scroll-only) tbody td:last-child[b-dvwc55b0ps],
        .quotes-table:not(.bo-table--scroll-only):not(.quotes-table--pricing):not(.quotes-table--hardware):not(.quotes-table--door):not(.quotes-table--windows):not(.quotes-table--shiploose) tbody td:last-child[b-dvwc55b0ps],
        .myquotes-table:not(.bo-table--scroll-only) tbody td:last-child[b-dvwc55b0ps] {
            padding-top: 8px !important;
            border-top: 1px solid var(--border-subtle) !important;
            margin-top: 4px;
            flex-wrap: wrap;
            gap: 6px;
        }

        /* Buttons inside card rows */
        .bo-table:not(.bo-table--scroll-only) tbody td .btn[b-dvwc55b0ps],
        .users-table:not(.bo-table--scroll-only) tbody td .btn[b-dvwc55b0ps],
        .quotes-table:not(.bo-table--scroll-only):not(.quotes-table--pricing):not(.quotes-table--hardware):not(.quotes-table--door):not(.quotes-table--windows):not(.quotes-table--shiploose) tbody td .btn[b-dvwc55b0ps],
        .myquotes-table:not(.bo-table--scroll-only) tbody td .btn[b-dvwc55b0ps] {
            padding: 4px 10px !important;
            font-size: 0.72rem !important;
            min-height: 44px; /* touch target */
        }

        /* Badges inside card rows */
        .bo-table:not(.bo-table--scroll-only) tbody td .badge[b-dvwc55b0ps],
        .users-table:not(.bo-table--scroll-only) tbody td .badge[b-dvwc55b0ps],
        .quotes-table:not(.bo-table--scroll-only):not(.quotes-table--pricing):not(.quotes-table--hardware):not(.quotes-table--door):not(.quotes-table--windows):not(.quotes-table--shiploose) tbody td .badge[b-dvwc55b0ps],
        .myquotes-table:not(.bo-table--scroll-only) tbody td .badge[b-dvwc55b0ps] {
            font-size: 0.68rem;
            padding: 3px 7px;
        }

        /* bo-switch / toggle inside card td: keep it inline */
        .users-table:not(.bo-table--scroll-only) tbody td .bo-switch[b-dvwc55b0ps] {
            flex-shrink: 0;
        }

    /* Users-table warn/danger left-accent: keep visible on card */
    .users-table:not(.bo-table--scroll-only) tbody tr.bo-row--warn[b-dvwc55b0ps] {
        border-left: 4px solid var(--warn-border) !important;
    }

    .users-table:not(.bo-table--scroll-only) tbody tr.bo-row--danger[b-dvwc55b0ps] {
        border-left: 4px solid var(--danger-border) !important;
    }

    /* Table font/padding shrink for scroll-only tables */
    .bo-table--scroll-only td[b-dvwc55b0ps],
    .bo-table--scroll-only th[b-dvwc55b0ps],
    .bo-table-wrap--pricing .bo-table td[b-dvwc55b0ps],
    .bo-table-wrap--pricing .bo-table th[b-dvwc55b0ps] {
        padding: 7px 6px !important;
        font-size: 0.78rem;
        white-space: nowrap;
    }

    .bo-table--scroll-only .btn[b-dvwc55b0ps],
    .bo-table-wrap--pricing .bo-table .btn[b-dvwc55b0ps] {
        padding: 3px 7px !important;
        font-size: 0.72rem !important;
    }

    /* Users table */
    .bo-users-card[b-dvwc55b0ps] {
        border-radius: var(--radius-md);
    }

    /* User drawer: full screen */
    .user-drawer-body[b-dvwc55b0ps] {
        padding: 14px;
    }

    /* Preferences: single column */
    .bo-preferences-shell .tool-card[b-dvwc55b0ps] {
        width: 100%;
    }

    /* Revision modal */
    .bo-revision-modal .modal-dialog[b-dvwc55b0ps] {
        margin: 0;
        max-width: 100%;
        width: 100%;
    }

    .bo-revision-modal .modal-content[b-dvwc55b0ps] {
        border-radius: 0;
        min-height: 100dvh;
    }

    /* Image management */
    .bo-image-preview-area[b-dvwc55b0ps] {
        flex-direction: column;
        align-items: flex-start;
    }

    .bo-image-preview-img[b-dvwc55b0ps] {
        max-width: 100%;
    }

    /* UAA / stat grids: 2 cols */
    .user-activity-alerts .uaa-grid[b-dvwc55b0ps],
    .bo-users-shell .uaa-grid[b-dvwc55b0ps] {
        grid-template-columns: 1fr 1fr;
        gap: 10px;
    }

    /* Pricing table column widths: let them shrink */
    .bo-table-wrap--pricing .quotes-table--pricing td:not(.hw-col-actions-cell)[b-dvwc55b0ps],
    .bo-table-wrap--pricing .quotes-table--pricing th:not(.hw-col-actions-head)[b-dvwc55b0ps] {
        white-space: nowrap;
    }

    /* Orders filter bar: stack */
    .quotes-filters[b-dvwc55b0ps] {
        flex-direction: column;
        align-items: stretch;
        gap: 0.4rem;
    }

        .quotes-filters > *[b-dvwc55b0ps] {
            width: 100%;
        }

    /* RFQ / order review modal: full width */
    .modal-dialog.modal-lg[b-dvwc55b0ps],
    .modal-dialog.modal-xl[b-dvwc55b0ps] {
        margin: 0.5rem;
        max-width: calc(100vw - 1rem);
    }

    /* Form rows: stack labels + inputs */
    .bo-form-row[b-dvwc55b0ps] {
        flex-direction: column;
        gap: 0.5rem;
    }

    /* Action button groups: wrap */
    .bo-action-group[b-dvwc55b0ps],
    .d-flex.gap-2.align-items-center[b-dvwc55b0ps] {
        flex-wrap: wrap;
    }
}


/* ── ≤576px  Phone portrait (extended) ───────────────────── */
@media (max-width: 576px) {

    /* Token: tighter sidebar */
    :root[b-dvwc55b0ps] {
        --sidebar-width: 210px;
    }

    .bo-main[b-dvwc55b0ps] {
        padding: 10px 8px 24px;
    }

    /* Headings */
    .backoffice-heading[b-dvwc55b0ps] {
        font-size: 0.98rem;
    }

    .bo-main-title[b-dvwc55b0ps] {
        font-size: 1.05rem;
    }

    /* Section cards */
    .backoffice-section[b-dvwc55b0ps] {
        padding: 12px 10px;
        margin-bottom: 12px;
        border-radius: var(--radius-sm);
    }

    /* Filter grid: single column */
    .bo-filters-14col[b-dvwc55b0ps] {
        grid-template-columns: 1fr;
    }

    .bo-filters-col-3[b-dvwc55b0ps],
    .bo-filters-col-4[b-dvwc55b0ps],
    .bo-filters-col-4-end[b-dvwc55b0ps] {
        grid-column: span 1;
    }

    /* UAA stat grid: single column */
    .user-activity-alerts .uaa-grid[b-dvwc55b0ps],
    .bo-users-shell .uaa-grid[b-dvwc55b0ps] {
        grid-template-columns: 1fr;
    }

    /* Card-layout tables: slightly tighter label min-width */
    .bo-table:not(.bo-table--scroll-only) tbody td[data-label][b-dvwc55b0ps]::before,
    .users-table:not(.bo-table--scroll-only) tbody td[data-label][b-dvwc55b0ps]::before,
    .quotes-table:not(.bo-table--scroll-only):not(.quotes-table--pricing):not(.quotes-table--hardware):not(.quotes-table--door):not(.quotes-table--windows):not(.quotes-table--shiploose) tbody td[data-label][b-dvwc55b0ps]::before,
    .myquotes-table:not(.bo-table--scroll-only) tbody td[data-label][b-dvwc55b0ps]::before {
        min-width: 80px;
        font-size: 0.65rem;
    }

    /* Scroll-only tables: smaller font on small phones */
    .bo-table--scroll-only td[b-dvwc55b0ps],
    .bo-table--scroll-only th[b-dvwc55b0ps] {
        padding: 5px 5px !important;
        font-size: 0.72rem;
    }

    .bo-table--scroll-only .btn[b-dvwc55b0ps] {
        padding: 2px 5px !important;
        font-size: 0.68rem !important;
        min-height: 26px;
    }

    .bo-table--scroll-only .badge[b-dvwc55b0ps] {
        font-size: 0.62rem;
        padding: 2px 5px;
    }

    /* Users header */
    .bo-users-header[b-dvwc55b0ps] {
        padding: 10px;
    }

    .bo-users-title-text[b-dvwc55b0ps] {
        font-size: 0.88rem;
    }

    .bo-users-controls[b-dvwc55b0ps] {
        flex-direction: column;
        gap: 0.4rem;
    }

    .bo-users-search[b-dvwc55b0ps] {
        width: 100%;
        min-width: 0 !important;
    }

    /* Modals: full screen on phone */
    .modal-dialog[b-dvwc55b0ps],
    .modal-dialog.modal-lg[b-dvwc55b0ps],
    .modal-dialog.modal-xl[b-dvwc55b0ps] {
        margin: 0 !important;
        max-width: 100vw !important;
        width: 100vw !important;
    }

    .modal-content[b-dvwc55b0ps] {
        border-radius: 0 !important;
        min-height: 100dvh;
    }

        /* Modal tabs: tiny text to fit */
        .modal-content .nav-tabs .nav-link[b-dvwc55b0ps] {
            padding: 8px 8px !important;
            font-size: 0.6rem !important;
            letter-spacing: 0;
        }

    /* Preferences pref-card: compact */
    .bo-preferences-shell .pref-card[b-dvwc55b0ps] {
        padding: 12px;
    }

    .bo-preferences-shell .pref-toggle-row[b-dvwc55b0ps] {
        flex-direction: column;
        align-items: flex-start;
        gap: 6px;
    }

    /* Image grid: single column */
    .bo-image-preview-area[b-dvwc55b0ps] {
        flex-direction: column;
    }

    .bo-image-preview-img[b-dvwc55b0ps] {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
    }

    /* Revision list: shorter on phone */
    .bo-revision-list[b-dvwc55b0ps] {
        max-height: 200px;
    }

    /* Revision textarea */
    .bo-revision-textarea[b-dvwc55b0ps] {
        height: 100px;
    }

    /* Pricing table action col: shrink */
    .bo-table-wrap--pricing .quotes-table--pricing .hw-col-actions[b-dvwc55b0ps],
    .bo-table-wrap--pricing .quotes-table--pricing thead th.hw-col-actions-head[b-dvwc55b0ps],
    .bo-table-wrap--pricing .quotes-table--pricing tbody td.hw-col-actions-cell[b-dvwc55b0ps] {
        min-width: 160px;
        width: 160px;
    }

    /* Section header: tighter */
    .bo-section-header[b-dvwc55b0ps] {
        gap: 6px;
        margin-bottom: 8px;
    }

    /* Lookup shell */
    .bo-layout.lookup-shell[b-dvwc55b0ps] {
        padding: 0 0.4rem 0.75rem;
    }

    .lookup-shell .lookup-tablewrap[b-dvwc55b0ps] {
        max-height: 260px;
    }

    /* Toggle button: more prominent on small phone */
    .bo-toggle[b-dvwc55b0ps] {
        padding: 6px 10px !important;
        font-size: 0.75rem !important;
    }

    /* Action dropdowns: full width */
    .bo-action-dropdown .dropdown-menu[b-dvwc55b0ps] {
        width: 100vw;
        left: 0 !important;
        right: 0 !important;
        border-radius: var(--radius-sm);
    }

    /* Inline button groups: stack */
    .btn-group-solid[b-dvwc55b0ps],
    .d-flex.gap-2[b-dvwc55b0ps],
    .d-flex.gap-3[b-dvwc55b0ps] {
        flex-wrap: wrap;
        gap: 0.35rem !important;
    }

    /* Image pagination */
    .bo-image-pagination-wrap[b-dvwc55b0ps] {
        flex-direction: column;
        align-items: stretch;
    }

    .bo-image-pagination[b-dvwc55b0ps] {
        width: 100%;
        justify-content: flex-start;
    }
}


/* ── ≤400px  Small / older phones ────────────────────────── */
@media (max-width: 400px) {

    :root[b-dvwc55b0ps] {
        --sidebar-width: 190px;
    }

    .bo-main[b-dvwc55b0ps] {
        padding: 8px 6px 20px;
    }

    .backoffice-heading[b-dvwc55b0ps] {
        font-size: 0.88rem;
    }

    .backoffice-section[b-dvwc55b0ps] {
        padding: 10px 8px;
    }

    .bo-table td[b-dvwc55b0ps],
    .bo-table th[b-dvwc55b0ps] {
        padding: 4px 4px !important;
        font-size: 0.68rem;
    }

    .bo-table .btn[b-dvwc55b0ps] {
        font-size: 0.65rem !important;
        padding: 2px 4px !important;
        min-height: 24px;
    }

    /* Nav links in sidebar: tighter */
    .backoffice-sidenav .nav-link[b-dvwc55b0ps],
    .backoffice-sidenav .bo-nav-link[b-dvwc55b0ps] {
        padding: 7px 10px !important;
        font-size: 0.75rem !important;
    }

    /* Modal tabs: icon-only if needed */
    .modal-content .nav-tabs .nav-link[b-dvwc55b0ps] {
        padding: 6px 6px !important;
        font-size: 0.58rem !important;
    }

    /* Users header: ultra compact */
    .bo-users-title-text[b-dvwc55b0ps] {
        font-size: 0.8rem;
    }

    /* Revision textarea: minimal */
    .bo-revision-textarea[b-dvwc55b0ps] {
        height: 80px;
    }
}


/* ── Safe-area insets for notched phones ─────────────────── */
@supports (padding: env(safe-area-inset-bottom)) {
    .bo-main[b-dvwc55b0ps] {
        padding-bottom: calc(24px + env(safe-area-inset-bottom));
    }

    .bo-sidenav[b-dvwc55b0ps],
    .lookup-sidebar[b-dvwc55b0ps] {
        padding-bottom: env(safe-area-inset-bottom);
    }
}
/* =========================================
   WARNING TEXT — polished light/dark mode
   Works cleanly on white backgrounds
   ========================================= */

.text-warning[b-dvwc55b0ps] {
    --bs-text-opacity: 1;
    color: #9A6700 !important; /* rich amber-brown for readable contrast on white */
    font-weight: 700;
    letter-spacing: 0.01em;
}

    /* Optional: slightly stronger inside cards / tables / muted UI */
    .text-warning.text-warning--strong[b-dvwc55b0ps] {
        color: #7A5200 !important;
    }

    /* Optional: subtle highlighted warning chip look for inline use */
    .text-warning.text-warning--soft[b-dvwc55b0ps] {
        display: inline-flex;
        align-items: center;
        gap: 0.35rem;
        padding: 0.18rem 0.5rem;
        border-radius: 999px;
        background: rgba(241, 184, 40, 0.14);
        border: 1px solid rgba(241, 184, 40, 0.28);
        color: #8A5C00 !important;
        font-weight: 700;
        line-height: 1.1;
    }

/* DARK MODE */
[data-bs-theme="dark"] .text-warning[b-dvwc55b0ps] {
    color: #F7C95E !important; /* brighter gold that reads well on dark */
    font-weight: 700;
}

    [data-bs-theme="dark"] .text-warning.text-warning--strong[b-dvwc55b0ps] {
        color: #FFD36E !important;
    }

    [data-bs-theme="dark"] .text-warning.text-warning--soft[b-dvwc55b0ps] {
        background: rgba(241, 184, 40, 0.16);
        border: 1px solid rgba(241, 184, 40, 0.34);
        color: #FFD36E !important;
        box-shadow: 0 0 0 1px rgba(255, 211, 110, 0.04) inset;
    }

/* ══════════════════════════════════════════════════════════════
   WINDOW SETTINGS — Limits table, tags, action buttons
   ══════════════════════════════════════════════════════════════ */

/* Compact input used in every limit cell */
.ws-limit-input[b-dvwc55b0ps] {
    min-width: 74px;
    max-width: 110px;
    font-size: .78rem;
    padding: 3px 6px;
}

/* Dim hint text under inputs */
.ws-limit-hint[b-dvwc55b0ps] {
    font-size: .68rem;
    color: #6c757d;
    margin-top: 2px;
    white-space: nowrap;
}

[data-bs-theme="dark"] .ws-limit-hint[b-dvwc55b0ps] {
    color: #8b95a1;
}

/* Pane badge */
.ws-limit-badge[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    padding: 2px 8px;
    border-radius: 4px;
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .04em;
    white-space: nowrap;
}

.ws-limit-badge--double[b-dvwc55b0ps] {
    background: rgba(13,110,253,.13);
    color: #0d6efd;
    border: 1px solid rgba(13,110,253,.28);
}

.ws-limit-badge--single[b-dvwc55b0ps] {
    background: rgba(108,117,125,.12);
    color: #495057;
    border: 1px solid rgba(108,117,125,.26);
}

[data-bs-theme="dark"] .ws-limit-badge--double[b-dvwc55b0ps] {
    background: rgba(13,110,253,.20);
    color: #6ea8fe;
    border-color: rgba(13,110,253,.38);
}

[data-bs-theme="dark"] .ws-limit-badge--single[b-dvwc55b0ps] {
    background: rgba(173,181,189,.12);
    color: #adb5bd;
    border-color: rgba(173,181,189,.28);
}

/* Remove row button */
.ws-limit-remove-btn[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 6px;
    border: 1px solid rgba(239,68,68,.30);
    background: rgba(239,68,68,.08);
    color: #ef4444;
    padding: 0;
    cursor: pointer;
    transition: background .15s, border-color .15s;
    font-size: .72rem;
}

    .ws-limit-remove-btn:hover[b-dvwc55b0ps] {
        background: rgba(239,68,68,.18);
        border-color: rgba(239,68,68,.50);
    }

[data-bs-theme="light"] .ws-limit-remove-btn[b-dvwc55b0ps] {
    color: #dc2626;
}

/* Add STC button */
.ws-add-stc-btn[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 5px 14px;
    border-radius: 8px;
    border: 1px dashed rgba(0,40,85,.35);
    background: rgba(0,40,85,.05);
    color: #002855;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .03em;
    cursor: pointer;
    transition: background .15s, border-color .15s, color .15s;
}

    .ws-add-stc-btn:hover[b-dvwc55b0ps] {
        background: rgba(0,40,85,.10);
        border-color: rgba(0,40,85,.55);
    }

[data-bs-theme="dark"] .ws-add-stc-btn[b-dvwc55b0ps] {
    border-color: rgba(241,184,40,.40);
    background: rgba(241,184,40,.06);
    color: #f1b828;
}

    [data-bs-theme="dark"] .ws-add-stc-btn:hover[b-dvwc55b0ps] {
        background: rgba(241,184,40,.12);
        border-color: rgba(241,184,40,.65);
    }

/* Action buttons (Save / Reset) */
.ws-action-btn[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 18px;
    border-radius: 9px;
    font-size: .80rem;
    font-weight: 700;
    letter-spacing: .03em;
    border: 1px solid transparent;
    cursor: pointer;
    transition: background .15s, border-color .15s, box-shadow .15s;
}

.ws-action-btn--save[b-dvwc55b0ps] {
    background: rgba(25,135,84,.12);
    border-color: rgba(25,135,84,.32);
    color: #198754;
}

    .ws-action-btn--save:hover[b-dvwc55b0ps] {
        background: rgba(25,135,84,.20);
        border-color: rgba(25,135,84,.50);
        box-shadow: 0 0 0 3px rgba(25,135,84,.12);
    }

    .ws-action-btn--save:disabled[b-dvwc55b0ps] {
        opacity: .55;
        cursor: not-allowed;
    }

[data-bs-theme="dark"] .ws-action-btn--save[b-dvwc55b0ps] {
    background: rgba(25,135,84,.18);
    color: #75b798;
    border-color: rgba(25,135,84,.40);
}

.ws-action-btn--reset[b-dvwc55b0ps] {
    background: rgba(108,117,125,.09);
    border-color: rgba(108,117,125,.26);
    color: #495057;
}

    .ws-action-btn--reset:hover[b-dvwc55b0ps] {
        background: rgba(108,117,125,.17);
        border-color: rgba(108,117,125,.40);
    }

[data-bs-theme="dark"] .ws-action-btn--reset[b-dvwc55b0ps] {
    background: rgba(173,181,189,.10);
    color: #adb5bd;
    border-color: rgba(173,181,189,.26);
}

    [data-bs-theme="dark"] .ws-action-btn--reset:hover[b-dvwc55b0ps] {
        background: rgba(173,181,189,.18);
    }

/* Glass type / thickness tag chips */
.ws-tag[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 8px 4px 10px;
    border-radius: 7px;
    font-size: .80rem;
    font-weight: 600;
    background: rgba(0,40,85,.08);
    color: #002855;
    border: 1px solid rgba(0,40,85,.20);
    transition: background .13s;
}

[data-bs-theme="dark"] .ws-tag[b-dvwc55b0ps] {
    background: rgba(241,184,40,.09);
    color: #f1c84a;
    border-color: rgba(241,184,40,.25);
}

.ws-tag--standard[b-dvwc55b0ps] {
    background: rgba(25,135,84,.10);
    color: #157347;
    border-color: rgba(25,135,84,.28);
}

[data-bs-theme="dark"] .ws-tag--standard[b-dvwc55b0ps] {
    background: rgba(25,135,84,.16);
    color: #75b798;
    border-color: rgba(25,135,84,.35);
}

.ws-tag--nonstandard[b-dvwc55b0ps] {
    background: rgba(255,193,7,.10);
    color: #856404;
    border-color: rgba(255,193,7,.30);
}

[data-bs-theme="dark"] .ws-tag--nonstandard[b-dvwc55b0ps] {
    background: rgba(255,193,7,.12);
    color: #ffc107;
    border-color: rgba(255,193,7,.35);
}

.ws-tag__remove[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border-radius: 4px;
    border: none;
    background: transparent;
    color: inherit;
    opacity: .55;
    cursor: pointer;
    padding: 0;
    font-size: .75rem;
    transition: opacity .13s, background .13s;
}

    .ws-tag__remove:hover[b-dvwc55b0ps] {
        opacity: 1;
        background: rgba(0,0,0,.08);
    }

[data-bs-theme="dark"] .ws-tag__remove:hover[b-dvwc55b0ps] {
    background: rgba(255,255,255,.10);
}

.ws-tag__std-toggle[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border-radius: 4px;
    border: none;
    background: transparent;
    color: inherit;
    opacity: .75;
    cursor: pointer;
    padding: 0;
    font-size: .75rem;
    transition: opacity .13s;
}

    .ws-tag__std-toggle:hover[b-dvwc55b0ps] {
        opacity: 1;
    }

/* Add tag button (Add glass type / thickness) */
.ws-add-tag-btn[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 5px 14px;
    border-radius: 7px;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .03em;
    border: 1px solid rgba(0,40,85,.30);
    background: rgba(0,40,85,.07);
    color: #002855;
    cursor: pointer;
    white-space: nowrap;
    transition: background .14s, border-color .14s;
}

    .ws-add-tag-btn:hover[b-dvwc55b0ps] {
        background: rgba(0,40,85,.14);
        border-color: rgba(0,40,85,.50);
    }

    .ws-add-tag-btn:disabled[b-dvwc55b0ps] {
        opacity: .45;
        cursor: not-allowed;
    }

[data-bs-theme="dark"] .ws-add-tag-btn[b-dvwc55b0ps] {
    border-color: rgba(241,184,40,.35);
    background: rgba(241,184,40,.07);
    color: #f1b828;
}

    [data-bs-theme="dark"] .ws-add-tag-btn:hover[b-dvwc55b0ps] {
        background: rgba(241,184,40,.14);
        border-color: rgba(241,184,40,.55);
    }

/* ══════════════════════════════════════════════════════════════
   PRODUCT TYPE BADGES — Order Requests table & Review modal
   ══════════════════════════════════════════════════════════════ */
.bo-product-badge[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    padding: 3px 8px;
    border-radius: 5px;
    font-size: .70rem;
    font-weight: 700;
    letter-spacing: .04em;
    white-space: nowrap;
    text-transform: uppercase;
    border: 1px solid transparent;
}

/* Doors — navy/blue */
.bo-product-badge--doors[b-dvwc55b0ps] {
    background: rgba(0,40,85,.10);
    color: #002855;
    border-color: rgba(0,40,85,.22);
}

[data-bs-theme="dark"] .bo-product-badge--doors[b-dvwc55b0ps] {
    background: rgba(13,110,253,.16);
    color: #6ea8fe;
    border-color: rgba(13,110,253,.30);
}

/* Windows — teal/cyan */
.bo-product-badge--windows[b-dvwc55b0ps] {
    background: rgba(6,182,212,.12);
    color: #0e7490;
    border-color: rgba(6,182,212,.28);
}

[data-bs-theme="dark"] .bo-product-badge--windows[b-dvwc55b0ps] {
    background: rgba(6,182,212,.16);
    color: #22d3ee;
    border-color: rgba(6,182,212,.32);
}

/* Ship Loose — amber */
.bo-product-badge--shipLoose[b-dvwc55b0ps],
.bo-product-badge--shiploose[b-dvwc55b0ps] {
    background: rgba(245,158,11,.12);
    color: #b45309;
    border-color: rgba(245,158,11,.28);
}

[data-bs-theme="dark"] .bo-product-badge--shipLoose[b-dvwc55b0ps],
[data-bs-theme="dark"] .bo-product-badge--shiploose[b-dvwc55b0ps] {
    background: rgba(245,158,11,.16);
    color: #fbbf24;
    border-color: rgba(245,158,11,.32);
}

/* Multi-product — purple */
.bo-product-badge--multi[b-dvwc55b0ps] {
    background: rgba(168,85,247,.11);
    color: #7c3aed;
    border-color: rgba(168,85,247,.25);
}

[data-bs-theme="dark"] .bo-product-badge--multi[b-dvwc55b0ps] {
    background: rgba(168,85,247,.16);
    color: #c084fc;
    border-color: rgba(168,85,247,.32);
}

/* ============================================================
   HELP PAGE CONTENT PANEL
   ============================================================ */

/* Sub-tab bar */
/* ============================================================
   HELP CONTENT PANEL — REDESIGNED
   ============================================================ */

/* Tab bar */
/* ═══════════════════════════════════════════════════════════════
   HELP CONTENT EDITOR  — full redesign
   ═══════════════════════════════════════════════════════════════ */

/* ── Legend banner ── */

/* ═══════════════════════════════════════════════════════════════════════
   HELP CONTENT EDITOR — complete visual overhaul
   Target: modern, high-contrast, card-first, clearly scannable
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Legend strip ── */
.hc-legend-bar[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .4rem .9rem;
    background: linear-gradient(90deg, rgba(0,40,85,.05) 0%, rgba(0,40,85,.01) 100%);
    border: 1px solid rgba(0,40,85,.12);
    border-left: 3px solid var(--iac-blue,#002855);
    border-radius: var(--radius-md,10px);
    padding: .6rem 1rem;
    font-size: .76rem;
    color: var(--text-secondary,#4A5568);
    margin-bottom: 1rem;
}

[data-bs-theme="dark"] .hc-legend-bar[b-dvwc55b0ps] {
    background: linear-gradient(90deg, rgba(241,184,40,.06) 0%, transparent 100%);
    border-color: rgba(241,184,40,.18);
    border-left-color: var(--iac-gold,#F1B828);
    color: rgba(232,237,242,.55);
}

.hc-legend-item[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    gap: .38rem;
}

.hc-legend-sep[b-dvwc55b0ps] {
    width: 1px;
    height: 12px;
    background: var(--border-default);
    flex-shrink: 0;
}

[data-bs-theme="dark"] .hc-legend-sep[b-dvwc55b0ps] {
    background: rgba(255,255,255,.10);
}

/* ── Shared status badges ── */
.hc-badge[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    border-radius: 5px;
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
    padding: .14rem .55rem;
    white-space: nowrap;
}

.hc-badge--saved[b-dvwc55b0ps] {
    color: #0a7c3e;
    background: rgba(18,160,88,.13);
    border: 1px solid rgba(18,160,88,.30);
}

.hc-badge--default[b-dvwc55b0ps] {
    color: #5a6478;
    background: rgba(138,148,166,.12);
    border: 1px solid rgba(138,148,166,.25);
}

.hc-badge--changed[b-dvwc55b0ps] {
    color: #8a5500;
    background: rgba(241,184,40,.15);
    border: 1px solid rgba(241,184,40,.38);
}

[data-bs-theme="dark"] .hc-badge--saved[b-dvwc55b0ps] {
    color: #4ade80;
    background: rgba(74,222,128,.12);
    border-color: rgba(74,222,128,.28);
}

[data-bs-theme="dark"] .hc-badge--default[b-dvwc55b0ps] {
    color: rgba(232,237,242,.45);
    background: rgba(255,255,255,.06);
    border-color: rgba(255,255,255,.11);
}

[data-bs-theme="dark"] .hc-badge--changed[b-dvwc55b0ps] {
    color: #F1B828;
    background: rgba(241,184,40,.12);
    border-color: rgba(241,184,40,.30);
}

/* ── Section nav — large pill tabs ── */
.hc-section-nav[b-dvwc55b0ps] {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
    margin-bottom: 1.5rem;
    padding-bottom: 1.25rem;
    border-bottom: 2px solid var(--border-default);
}

[data-bs-theme="dark"] .hc-section-nav[b-dvwc55b0ps] {
    border-bottom-color: rgba(255,255,255,.08);
}

.hc-snav-btn[b-dvwc55b0ps] {
    position: relative;
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    background: var(--bg-surface,#fff);
    border: 1.5px solid var(--border-default);
    border-radius: 999px;
    padding: .48rem 1.1rem .48rem .85rem;
    font-size: .79rem;
    font-weight: 600;
    color: var(--text-secondary,#4A5568);
    cursor: pointer;
    font-family: inherit;
    transition: all .15s ease;
    white-space: nowrap;
    letter-spacing: .01em;
    box-shadow: 0 1px 3px rgba(0,0,0,.05);
}

    .hc-snav-btn:hover[b-dvwc55b0ps] {
        border-color: var(--iac-blue,#002855);
        color: var(--iac-blue,#002855);
        background: rgba(0,40,85,.04);
        box-shadow: 0 2px 8px rgba(0,40,85,.10);
        transform: translateY(-1px);
    }

.hc-snav-btn--active[b-dvwc55b0ps] {
    border-color: transparent;
    background: var(--iac-blue,#002855);
    color: #fff;
    box-shadow: 0 3px 12px rgba(0,40,85,.28);
}

    .hc-snav-btn--active:hover[b-dvwc55b0ps] {
        background: #003a7a;
        color: #fff;
        transform: translateY(-1px);
    }

[data-bs-theme="dark"] .hc-snav-btn[b-dvwc55b0ps] {
    background: rgba(255,255,255,.05);
    border-color: rgba(255,255,255,.10);
    color: rgba(255,255,255,.55);
}

    [data-bs-theme="dark"] .hc-snav-btn:hover[b-dvwc55b0ps] {
        border-color: rgba(255,255,255,.30);
        color: rgba(255,255,255,.90);
        background: rgba(255,255,255,.09);
    }

[data-bs-theme="dark"] .hc-snav-btn--active[b-dvwc55b0ps] {
    border-color: transparent;
    background: linear-gradient(135deg, rgba(241,184,40,.22) 0%, rgba(241,184,40,.10) 100%);
    color: var(--iac-gold,#F1B828);
    box-shadow: 0 3px 14px rgba(241,184,40,.18);
}

    [data-bs-theme="dark"] .hc-snav-btn--active:hover[b-dvwc55b0ps] {
        background: linear-gradient(135deg, rgba(241,184,40,.30) 0%, rgba(241,184,40,.16) 100%);
        color: #F1B828;
    }

.hc-snav-btn__icon[b-dvwc55b0ps] {
    font-size: .88rem;
    opacity: .8;
}

.hc-snav-btn--active .hc-snav-btn__icon[b-dvwc55b0ps] {
    opacity: 1;
}

.hc-snav-btn__dot[b-dvwc55b0ps] {
    position: absolute;
    top: .22rem;
    right: .22rem;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: #12A058;
    border: 1.5px solid var(--bg-surface,#fff);
    box-shadow: 0 0 0 2px rgba(18,160,88,.25);
}

[data-bs-theme="dark"] .hc-snav-btn__dot[b-dvwc55b0ps] {
    background: #4ade80;
    border-color: var(--bg-surface,#0F1520);
}

/* ── Tab intro banner ── */
.hc-tab-intro[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    gap: 1rem;
    background: linear-gradient(135deg, rgba(0,40,85,.07) 0%, rgba(0,40,85,.02) 100%);
    border: 1.5px solid rgba(0,40,85,.14);
    border-radius: var(--radius-md,10px);
    padding: 1rem 1.25rem;
    margin-bottom: 1.5rem;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.7);
}

[data-bs-theme="dark"] .hc-tab-intro[b-dvwc55b0ps] {
    background: linear-gradient(135deg, rgba(241,184,40,.08) 0%, rgba(241,184,40,.02) 100%);
    border-color: rgba(241,184,40,.18);
    box-shadow: none;
}

.hc-tab-intro__icon[b-dvwc55b0ps] {
    width: 42px;
    height: 42px;
    border-radius: 11px;
    background: var(--iac-blue,#002855);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 1.1rem;
    flex-shrink: 0;
    box-shadow: 0 3px 10px rgba(0,40,85,.25);
}

[data-bs-theme="dark"] .hc-tab-intro__icon[b-dvwc55b0ps] {
    background: rgba(241,184,40,.18);
    color: var(--iac-gold,#F1B828);
    box-shadow: 0 3px 10px rgba(241,184,40,.15);
}

.hc-tab-intro__title[b-dvwc55b0ps] {
    font-size: .92rem;
    font-weight: 800;
    color: var(--iac-blue,#002855);
    line-height: 1.2;
    letter-spacing: .01em;
}

[data-bs-theme="dark"] .hc-tab-intro__title[b-dvwc55b0ps] {
    color: var(--iac-gold,#F1B828);
}

.hc-tab-intro__desc[b-dvwc55b0ps] {
    font-size: .78rem;
    color: var(--text-secondary,#4A5568);
    margin-top: .2rem;
    line-height: 1.5;
}

[data-bs-theme="dark"] .hc-tab-intro__desc[b-dvwc55b0ps] {
    color: rgba(232,237,242,.52);
}

/* ── Loading state ── */
.hc-loading-state[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    padding: 3rem 0;
    font-size: .9rem;
    color: var(--text-muted,#8A94A6);
}

/* ── Editor stack ── */
.hc-editor-stack[b-dvwc55b0ps] {
    display: flex;
    flex-direction: column;
    gap: 1px;
    margin-bottom: 5rem;
    border-radius: var(--radius-md,10px);
    overflow: hidden;
    box-shadow: 0 2px 16px rgba(0,0,0,.07);
    border: 1.5px solid var(--border-default);
}

[data-bs-theme="dark"] .hc-editor-stack[b-dvwc55b0ps] {
    box-shadow: 0 4px 24px rgba(0,0,0,.30);
    border-color: rgba(255,255,255,.08);
}

/* ── Individual field card ── */
.hc-editor-card[b-dvwc55b0ps] {
    background: var(--bg-surface,#fff);
    border: none;
    border-top: 1px solid var(--border-default);
    overflow: hidden;
    transition: background .12s;
}

    .hc-editor-card:first-child[b-dvwc55b0ps] {
        border-top: none;
    }

    .hc-editor-card:hover[b-dvwc55b0ps] {
        background: rgba(0,40,85,.018);
    }

.hc-editor-card--saved[b-dvwc55b0ps] {
    background: rgba(18,160,88,.03);
}

    .hc-editor-card--saved:hover[b-dvwc55b0ps] {
        background: rgba(18,160,88,.055);
    }

[data-bs-theme="dark"] .hc-editor-card[b-dvwc55b0ps] {
    background: rgba(255,255,255,.025);
    border-top-color: rgba(255,255,255,.065);
}

    [data-bs-theme="dark"] .hc-editor-card:hover[b-dvwc55b0ps] {
        background: rgba(255,255,255,.04);
    }

[data-bs-theme="dark"] .hc-editor-card--saved[b-dvwc55b0ps] {
    background: rgba(74,222,128,.04);
}

    [data-bs-theme="dark"] .hc-editor-card--saved:hover[b-dvwc55b0ps] {
        background: rgba(74,222,128,.07);
    }

/* Card header row */
.hc-editor-card__head[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    padding: .7rem 1.1rem .55rem;
    border-bottom: 1px solid var(--border-subtle);
}

.hc-editor-card--saved .hc-editor-card__head[b-dvwc55b0ps] {
    border-left: 3px solid rgba(18,160,88,.55);
}

[data-bs-theme="dark"] .hc-editor-card__head[b-dvwc55b0ps] {
    border-bottom-color: rgba(255,255,255,.05);
}

[data-bs-theme="dark"] .hc-editor-card--saved .hc-editor-card__head[b-dvwc55b0ps] {
    border-left-color: rgba(74,222,128,.45);
}

.hc-editor-card__meta[b-dvwc55b0ps] {
    display: flex;
    flex-direction: column;
    gap: .15rem;
    min-width: 0;
}

.hc-editor-card__name[b-dvwc55b0ps] {
    font-size: .81rem;
    font-weight: 700;
    color: var(--text-primary,#0D1117);
    letter-spacing: .01em;
    line-height: 1.3;
}

[data-bs-theme="dark"] .hc-editor-card__name[b-dvwc55b0ps] {
    color: rgba(255,255,255,.88);
}

.hc-editor-card__hint[b-dvwc55b0ps] {
    font-size: .71rem;
    color: var(--text-muted,#8A94A6);
    line-height: 1.4;
}

[data-bs-theme="dark"] .hc-editor-card__hint[b-dvwc55b0ps] {
    color: rgba(232,237,242,.38);
}

.hc-editor-card__actions[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    gap: .45rem;
    flex-shrink: 0;
}

/* Reset button */
.hc-reset-btn[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    font-size: .7rem;
    font-weight: 600;
    color: var(--text-muted,#8A94A6);
    background: none;
    border: 1px solid var(--border-default);
    border-radius: 5px;
    padding: .2rem .58rem;
    cursor: pointer;
    font-family: inherit;
    transition: all .12s;
    white-space: nowrap;
}

    .hc-reset-btn:hover[b-dvwc55b0ps] {
        color: #b91c1c;
        border-color: rgba(185,28,28,.38);
        background: rgba(185,28,28,.05);
    }

[data-bs-theme="dark"] .hc-reset-btn[b-dvwc55b0ps] {
    color: rgba(255,255,255,.32);
    border-color: rgba(255,255,255,.10);
}

    [data-bs-theme="dark"] .hc-reset-btn:hover[b-dvwc55b0ps] {
        color: #f87171;
        border-color: rgba(248,113,113,.35);
        background: rgba(248,113,113,.07);
    }

/* Default value preview */
.hc-editor-card__default-preview[b-dvwc55b0ps] {
    display: flex;
    align-items: baseline;
    gap: .6rem;
    padding: .45rem 1.1rem;
    background: rgba(138,148,166,.06);
    border-bottom: 1px solid rgba(138,148,166,.10);
    font-size: .76rem;
    line-height: 1.5;
}

[data-bs-theme="dark"] .hc-editor-card__default-preview[b-dvwc55b0ps] {
    background: rgba(255,255,255,.02);
    border-bottom-color: rgba(255,255,255,.04);
}

.hc-editor-card__default-label[b-dvwc55b0ps] {
    font-size: .64rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: var(--text-muted,#8A94A6);
    white-space: nowrap;
    flex-shrink: 0;
}

[data-bs-theme="dark"] .hc-editor-card__default-label[b-dvwc55b0ps] {
    color: rgba(232,237,242,.28);
}

.hc-editor-card__default-text[b-dvwc55b0ps] {
    color: var(--text-secondary,#4A5568);
    font-style: italic;
    overflow: hidden;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}

[data-bs-theme="dark"] .hc-editor-card__default-text[b-dvwc55b0ps] {
    color: rgba(232,237,242,.38);
}

/* Input wrapper */
.hc-editor-card__input-wrap[b-dvwc55b0ps] {
    padding: .65rem 1.1rem .75rem;
    position: relative;
}

.hc-editor-card__charcount[b-dvwc55b0ps] {
    text-align: right;
    font-size: .67rem;
    color: var(--text-muted,#8A94A6);
    margin-top: .28rem;
}

[data-bs-theme="dark"] .hc-editor-card__charcount[b-dvwc55b0ps] {
    color: rgba(255,255,255,.25);
}

/* Inputs */
.hc-editor-input[b-dvwc55b0ps] {
    width: 100%;
    background: var(--bg-surface-2,#F5F7FC);
    border: 1.5px solid rgba(0,0,0,.10);
    border-radius: var(--radius-sm,7px);
    padding: .55rem .85rem;
    font-size: .875rem;
    font-family: inherit;
    color: var(--text-primary,#0D1117);
    transition: border-color .14s, box-shadow .14s, background .14s;
    outline: none;
    resize: vertical;
    line-height: 1.55;
}

    .hc-editor-input:focus[b-dvwc55b0ps] {
        border-color: var(--iac-blue,#002855);
        background: var(--bg-surface,#fff);
        box-shadow: 0 0 0 3px rgba(0,40,85,.09), 0 1px 4px rgba(0,0,0,.06);
    }

.hc-editor-input--area[b-dvwc55b0ps] {
    min-height: 78px;
}

.hc-editor-input--has-value[b-dvwc55b0ps] {
    border-color: rgba(18,160,88,.42);
    background: rgba(18,160,88,.025);
}

    .hc-editor-input--has-value:focus[b-dvwc55b0ps] {
        border-color: #12A058;
        box-shadow: 0 0 0 3px rgba(18,160,88,.10);
        background: var(--bg-surface,#fff);
    }

[data-bs-theme="dark"] .hc-editor-input[b-dvwc55b0ps] {
    background: rgba(255,255,255,.05);
    border-color: rgba(255,255,255,.10);
    color: rgba(255,255,255,.88);
}

    [data-bs-theme="dark"] .hc-editor-input:focus[b-dvwc55b0ps] {
        border-color: var(--iac-gold,#F1B828);
        background: rgba(255,255,255,.07);
        box-shadow: 0 0 0 3px rgba(241,184,40,.11);
    }

[data-bs-theme="dark"] .hc-editor-input--has-value[b-dvwc55b0ps] {
    border-color: rgba(74,222,128,.35);
    background: rgba(74,222,128,.04);
}

    [data-bs-theme="dark"] .hc-editor-input--has-value:focus[b-dvwc55b0ps] {
        border-color: #4ade80;
        box-shadow: 0 0 0 3px rgba(74,222,128,.11);
    }

/* ── Sticky save bar ── */
.hc-sticky-save[b-dvwc55b0ps] {
    position: sticky;
    bottom: 0;
    display: flex;
    align-items: center;
    gap: .75rem;
    background: rgba(255,255,255,.95);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    border-top: 1.5px solid var(--border-default);
    border-radius: 0 0 var(--radius-md,10px) var(--radius-md,10px);
    padding: .8rem 1.25rem;
    box-shadow: 0 -4px 20px rgba(0,0,0,.08);
    z-index: 10;
}

[data-bs-theme="dark"] .hc-sticky-save[b-dvwc55b0ps] {
    background: rgba(12,18,32,.95);
    border-top-color: rgba(255,255,255,.10);
    box-shadow: 0 -4px 24px rgba(0,0,0,.40);
}

/* ── Row count badge on section nav buttons ── */
.hc-snav-count[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 20px;
    background: rgba(0,40,85,.10);
    color: var(--iac-blue,#002855);
    border-radius: 999px;
    font-size: .66rem;
    font-weight: 800;
    padding: 0 .4rem;
}

[data-bs-theme="dark"] .hc-snav-count[b-dvwc55b0ps] {
    background: rgba(241,184,40,.14);
    color: var(--iac-gold,#F1B828);
}

.hc-snav-btn--active .hc-snav-count[b-dvwc55b0ps] {
    background: rgba(255,255,255,.22);
    color: #fff;
}

[data-bs-theme="dark"] .hc-snav-btn--active .hc-snav-count[b-dvwc55b0ps] {
    background: rgba(241,184,40,.25);
    color: #F1B828;
}

/* ═══════════════════════════════════════════════════════════════════════
   ACOUSTIC TEST DATA — split editor + live preview
   ═══════════════════════════════════════════════════════════════════════ */

.stc-split-layout[b-dvwc55b0ps] {
    display: grid;
    grid-template-columns: 1fr 400px;
    gap: 1.5rem;
    align-items: start;
    margin-top: 1.25rem;
}

@media (max-width: 1100px) {
    .stc-split-layout[b-dvwc55b0ps] {
        grid-template-columns: 1fr;
    }
}

/* ── Editor pane ── */
.stc-editor-pane[b-dvwc55b0ps] {
    display: flex;
    flex-direction: column;
    gap: 0;
    min-width: 0;
}

.stc-pane-intro[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    gap: .6rem;
    background: rgba(0,40,85,.04);
    border: 1px solid rgba(0,40,85,.10);
    border-bottom: none;
    border-radius: var(--radius-md,10px) var(--radius-md,10px) 0 0;
    padding: .7rem 1rem;
    font-size: .8rem;
    color: var(--text-secondary,#4A5568);
    line-height: 1.5;
}

[data-bs-theme="dark"] .stc-pane-intro[b-dvwc55b0ps] {
    background: rgba(255,255,255,.03);
    border-color: rgba(255,255,255,.08);
    color: rgba(232,237,242,.55);
}

/* ── Entry cards ── */
.stc-entry-card[b-dvwc55b0ps] {
    border: 1px solid var(--border-default);
    border-top: none;
    overflow: hidden;
    transition: background .12s;
}

    .stc-entry-card:last-of-type[b-dvwc55b0ps] {
        border-radius: 0 0 var(--radius-md,10px) var(--radius-md,10px);
    }

    .stc-entry-card:hover[b-dvwc55b0ps] {
        background: rgba(0,40,85,.015);
    }

[data-bs-theme="dark"] .stc-entry-card[b-dvwc55b0ps] {
    border-color: rgba(255,255,255,.08);
}

    [data-bs-theme="dark"] .stc-entry-card:hover[b-dvwc55b0ps] {
        background: rgba(255,255,255,.025);
    }

.stc-entry-card__head[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    gap: .65rem;
    padding: .6rem 1rem;
    background: var(--bg-surface-2,#EEF2FA);
    border-bottom: 1px solid var(--border-default);
}

[data-bs-theme="dark"] .stc-entry-card__head[b-dvwc55b0ps] {
    background: rgba(255,255,255,.035);
    border-bottom-color: rgba(255,255,255,.07);
}

.stc-entry-card__badge[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .05em;
    border-radius: 6px;
    padding: .18rem .7rem;
    min-width: 56px;
}

.stc-badge--door[b-dvwc55b0ps] {
    background: rgba(0,40,85,.10);
    color: #002855;
    border: 1px solid rgba(0,40,85,.20);
}

.stc-badge--win[b-dvwc55b0ps] {
    background: rgba(13,122,110,.09);
    color: #0D7A6E;
    border: 1px solid rgba(13,122,110,.20);
}

.stc-badge--ref[b-dvwc55b0ps] {
    background: rgba(107,63,160,.09);
    color: #6B3FA0;
    border: 1px solid rgba(107,63,160,.20);
}

[data-bs-theme="dark"] .stc-badge--door[b-dvwc55b0ps] {
    background: rgba(91,155,213,.13);
    color: #5b9bd5;
    border-color: rgba(91,155,213,.25);
}

[data-bs-theme="dark"] .stc-badge--win[b-dvwc55b0ps] {
    background: rgba(42,212,192,.11);
    color: #2ad4c0;
    border-color: rgba(42,212,192,.22);
}

[data-bs-theme="dark"] .stc-badge--ref[b-dvwc55b0ps] {
    background: rgba(179,157,219,.11);
    color: #b39ddb;
    border-color: rgba(179,157,219,.22);
}

.stc-entry-card__sub[b-dvwc55b0ps] {
    font-size: .76rem;
    font-weight: 500;
    color: var(--text-muted,#8A94A6);
}

.stc-delete-btn[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    gap: .28rem;
    font-size: .7rem;
    font-weight: 700;
    color: #dc2626;
    background: rgba(220,38,38,.07);
    border: 1px solid rgba(220,38,38,.22);
    border-radius: 5px;
    padding: .2rem .62rem;
    cursor: pointer;
    font-family: inherit;
    transition: all .12s;
}

    .stc-delete-btn:hover[b-dvwc55b0ps] {
        background: rgba(220,38,38,.14);
        border-color: rgba(220,38,38,.42);
    }

[data-bs-theme="dark"] .stc-delete-btn[b-dvwc55b0ps] {
    color: #f87171;
    background: rgba(248,113,113,.08);
    border-color: rgba(248,113,113,.20);
}

    [data-bs-theme="dark"] .stc-delete-btn:hover[b-dvwc55b0ps] {
        background: rgba(248,113,113,.15);
        border-color: rgba(248,113,113,.38);
    }

.stc-entry-card__body[b-dvwc55b0ps] {
    padding: .9rem 1rem 1rem;
    background: var(--bg-surface,#fff);
}

[data-bs-theme="dark"] .stc-entry-card__body[b-dvwc55b0ps] {
    background: rgba(255,255,255,.02);
}

.stc-entry-row[b-dvwc55b0ps] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .7rem;
}

.stc-entry-row--4[b-dvwc55b0ps] {
    grid-template-columns: repeat(4,1fr);
}

@media (max-width: 900px) {
    .stc-entry-row[b-dvwc55b0ps], .stc-entry-row--4[b-dvwc55b0ps] {
        grid-template-columns: 1fr 1fr;
    }
}

/* TL validation */
.tl-valid[b-dvwc55b0ps] {
    border-color: rgba(18,160,88,.42) !important;
    background: rgba(18,160,88,.025) !important;
}

.tl-invalid[b-dvwc55b0ps] {
    border-color: rgba(220,38,38,.42) !important;
    background: rgba(220,38,38,.025) !important;
}

.tl-count-row[b-dvwc55b0ps] {
    margin-top: .28rem;
    min-height: 1rem;
}

.tl-count-ok[b-dvwc55b0ps] {
    font-size: .71rem;
    font-weight: 700;
    color: #15803d;
}

.tl-count-err[b-dvwc55b0ps] {
    font-size: .71rem;
    font-weight: 700;
    color: #dc2626;
}

[data-bs-theme="dark"] .tl-count-ok[b-dvwc55b0ps] {
    color: #4ade80;
}

[data-bs-theme="dark"] .tl-count-err[b-dvwc55b0ps] {
    color: #f87171;
}

/* Add row strip */
.stc-add-row[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    gap: .9rem;
    padding: .75rem 1rem;
    border: 1px solid var(--border-default);
    border-top: none;
    border-radius: 0 0 var(--radius-md,10px) var(--radius-md,10px);
    background: var(--bg-surface-2,#EEF2FA);
}

[data-bs-theme="dark"] .stc-add-row[b-dvwc55b0ps] {
    background: rgba(255,255,255,.02);
    border-color: rgba(255,255,255,.07);
}

/* ── Preview pane ── */
.stc-preview-pane[b-dvwc55b0ps] {
    position: sticky;
    top: 1.5rem;
    background: var(--bg-surface,#fff);
    border: 1.5px solid var(--border-default);
    border-radius: var(--radius-md,10px);
    overflow: hidden;
    max-height: calc(100vh - 100px);
    overflow-y: auto;
    box-shadow: var(--shadow-md);
}

[data-bs-theme="dark"] .stc-preview-pane[b-dvwc55b0ps] {
    background: rgba(255,255,255,.03);
    border-color: rgba(255,255,255,.09);
    box-shadow: 0 4px 24px rgba(0,0,0,.35);
}

.stc-preview-pane__header[b-dvwc55b0ps] {
    display: flex;
    flex-direction: column;
    gap: .18rem;
    padding: .85rem 1.1rem .75rem;
    background: linear-gradient(135deg, rgba(0,40,85,.07) 0%, rgba(0,40,85,.02) 100%);
    border-bottom: 1.5px solid var(--border-default);
    font-size: .84rem;
    font-weight: 800;
    color: var(--iac-blue,#002855);
    letter-spacing: .01em;
    position: sticky;
    top: 0;
    z-index: 2;
}

[data-bs-theme="dark"] .stc-preview-pane__header[b-dvwc55b0ps] {
    background: linear-gradient(135deg, rgba(241,184,40,.09) 0%, transparent 100%);
    border-bottom-color: rgba(255,255,255,.09);
    color: var(--iac-gold,#F1B828);
}

.stc-preview-pane__sub[b-dvwc55b0ps] {
    font-size: .69rem;
    font-weight: 400;
    color: var(--text-muted,#8A94A6);
}

.stc-preview-section[b-dvwc55b0ps] {
    padding: .9rem 1rem;
    border-bottom: 1px solid var(--border-default);
}

    .stc-preview-section:last-child[b-dvwc55b0ps] {
        border-bottom: none;
    }

[data-bs-theme="dark"] .stc-preview-section[b-dvwc55b0ps] {
    border-bottom-color: rgba(255,255,255,.06);
}

.stc-prev-label[b-dvwc55b0ps] {
    font-size: .68rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: var(--text-muted,#8A94A6);
    margin-bottom: .6rem;
}

[data-bs-theme="dark"] .stc-prev-label[b-dvwc55b0ps] {
    color: rgba(232,237,242,.32);
}

/* Bar preview */
.stc-bar-preview[b-dvwc55b0ps] {
    display: flex;
    flex-direction: column;
    gap: .38rem;
}

.stc-bar-row[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    gap: .5rem;
}

.stc-bar-label[b-dvwc55b0ps] {
    width: 44px;
    font-size: .7rem;
    font-weight: 700;
    color: var(--text-secondary,#4A5568);
    flex-shrink: 0;
}

[data-bs-theme="dark"] .stc-bar-label[b-dvwc55b0ps] {
    color: rgba(232,237,242,.58);
}

.stc-bar-track[b-dvwc55b0ps] {
    flex: 1;
    height: 16px;
    background: rgba(0,40,85,.07);
    border-radius: 4px;
    overflow: hidden;
}

[data-bs-theme="dark"] .stc-bar-track[b-dvwc55b0ps] {
    background: rgba(255,255,255,.06);
}

.stc-bar-fill[b-dvwc55b0ps] {
    height: 100%;
    border-radius: 4px;
    transition: width .35s ease;
}

.stc-bar-fill--door[b-dvwc55b0ps] {
    background: linear-gradient(90deg, var(--iac-blue,#002855), #1E5A9E);
}

.stc-bar-val[b-dvwc55b0ps] {
    width: 22px;
    text-align: right;
    font-size: .68rem;
    color: var(--text-muted);
    flex-shrink: 0;
}

/* TL preview tables */
.stc-tl-table-wrap[b-dvwc55b0ps] {
    overflow-x: auto;
    border-radius: var(--radius-sm,7px);
    border: 1px solid var(--border-default);
}

[data-bs-theme="dark"] .stc-tl-table-wrap[b-dvwc55b0ps] {
    border-color: rgba(255,255,255,.08);
}

.stc-tl-table[b-dvwc55b0ps] {
    width: 100%;
    border-collapse: collapse;
    font-size: .7rem;
    font-family: "Consolas","Courier New",monospace;
    white-space: nowrap;
}

    .stc-tl-table thead tr[b-dvwc55b0ps] {
        background: var(--iac-blue,#002855);
    }

    .stc-tl-table thead th[b-dvwc55b0ps] {
        padding: .32rem .48rem;
        color: #fff;
        font-weight: 700;
        text-align: center;
        font-size: .66rem;
        border: none;
    }

    .stc-tl-table tbody tr[b-dvwc55b0ps] {
        border-bottom: 1px solid var(--border-default);
    }

[data-bs-theme="dark"] .stc-tl-table tbody tr[b-dvwc55b0ps] {
    border-bottom-color: rgba(255,255,255,.05);
}

.stc-tl-table tbody tr:last-child[b-dvwc55b0ps] {
    border-bottom: none;
}

.stc-tl-table tbody tr:nth-child(even)[b-dvwc55b0ps] {
    background: rgba(0,40,85,.03);
}

[data-bs-theme="dark"] .stc-tl-table tbody tr:nth-child(even)[b-dvwc55b0ps] {
    background: rgba(255,255,255,.022);
}

.stc-tl-table td[b-dvwc55b0ps] {
    padding: .3rem .48rem;
    color: var(--text-primary,#0D1117);
    text-align: center;
    font-size: .69rem;
}

[data-bs-theme="dark"] .stc-tl-table td[b-dvwc55b0ps] {
    color: rgba(255,255,255,.80);
}

.stc-tl-num[b-dvwc55b0ps] {
    color: var(--iac-blue,#002855) !important;
    font-weight: 600;
}

[data-bs-theme="dark"] .stc-tl-num[b-dvwc55b0ps] {
    color: #9bc6ff !important;
}

.stc-tl-ellipsis[b-dvwc55b0ps] {
    color: var(--text-muted) !important;
    font-style: italic;
}

.stc-tl-table--ref td:first-child[b-dvwc55b0ps] {
    text-align: left;
}

.stc-ref-group[b-dvwc55b0ps] {
    font-weight: 700;
    font-size: .68rem;
    color: var(--iac-blue,#002855) !important;
    background: rgba(0,40,85,.05);
    text-align: left !important;
    vertical-align: middle;
    writing-mode: vertical-lr;
    transform: rotate(180deg);
    padding: .5rem .24rem !important;
    white-space: nowrap;
    border-right: 2px solid rgba(0,40,85,.14);
}

[data-bs-theme="dark"] .stc-ref-group[b-dvwc55b0ps] {
    color: #9bc6ff !important;
    background: rgba(91,155,213,.07);
    border-right-color: rgba(91,155,213,.18);
}

.stc-ref-divider td[b-dvwc55b0ps] {
    background: var(--iac-blue,#002855) !important;
    color: #fff !important;
    font-weight: 700;
    font-size: .66rem;
    letter-spacing: .06em;
    text-transform: uppercase;
    padding: .28rem .6rem !important;
    text-align: left !important;
    font-family: inherit;
}

.stc-preview-note-sm[b-dvwc55b0ps] {
    font-size: .68rem;
    color: var(--text-muted,#8A94A6);
    line-height: 1.45;
}

[data-bs-theme="dark"] .stc-preview-note-sm[b-dvwc55b0ps] {
    color: rgba(232,237,242,.33);
}

/* Shared hc-field styles (used inside STC editor) */
.hc-field[b-dvwc55b0ps] {
    display: flex;
    flex-direction: column;
    gap: .28rem;
}

.hc-field__label[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    gap: .32rem;
    font-size: .77rem;
    font-weight: 700;
    color: var(--text-primary,#0D1117);
    letter-spacing: .01em;
}

[data-bs-theme="dark"] .hc-field__label[b-dvwc55b0ps] {
    color: rgba(255,255,255,.86);
}

.hc-field__hint[b-dvwc55b0ps] {
    font-size: .7rem;
    color: var(--text-muted,#8A94A6);
    line-height: 1.4;
}

.hc-field__optional[b-dvwc55b0ps] {
    font-size: .68rem;
    font-weight: 500;
    color: var(--text-muted,#8A94A6);
    font-style: italic;
}

.hc-field__input[b-dvwc55b0ps] {
    width: 100%;
    background: var(--bg-surface-2,#F5F7FC);
    border: 1.5px solid var(--border-default);
    border-radius: var(--radius-sm,7px);
    padding: .48rem .72rem;
    font-size: .85rem;
    font-family: inherit;
    color: var(--text-primary,#0D1117);
    transition: border-color .14s, box-shadow .14s;
    outline: none;
    resize: vertical;
    line-height: 1.5;
}

    .hc-field__input:focus[b-dvwc55b0ps] {
        border-color: var(--iac-blue,#002855);
        box-shadow: 0 0 0 3px rgba(0,40,85,.09);
        background: var(--bg-surface,#fff);
    }

[data-bs-theme="dark"] .hc-field__input[b-dvwc55b0ps] {
    background: rgba(255,255,255,.05);
    border-color: rgba(255,255,255,.10);
    color: rgba(255,255,255,.88);
}

    [data-bs-theme="dark"] .hc-field__input:focus[b-dvwc55b0ps] {
        border-color: var(--iac-gold,#F1B828);
        box-shadow: 0 0 0 3px rgba(241,184,40,.11);
        background: rgba(255,255,255,.07);
    }

.hc-field__textarea[b-dvwc55b0ps] {
    min-height: 66px;
}

.hc-field__tl-values[b-dvwc55b0ps] {
    font-family: "Consolas","Courier New",monospace;
    font-size: .81rem;
    letter-spacing: .02em;
}

/* Preview note */
.hc-preview-note[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    gap: .38rem;
    font-size: .76rem;
    color: var(--text-muted,#8A94A6);
    background: var(--bg-surface-2,#EEF2FA);
    border: 1px solid var(--border-subtle);
    border-radius: var(--radius-sm);
    padding: .48rem .9rem;
    line-height: 1.45;
}

[data-bs-theme="dark"] .hc-preview-note[b-dvwc55b0ps] {
    background: rgba(255,255,255,.04);
    border-color: rgba(255,255,255,.07);
    color: rgba(255,255,255,.38);
}

/* ═══════════════════════════════════════════════════════════════════════
   DM / MHR RATE EDITOR
   ═══════════════════════════════════════════════════════════════════════ */
.dm-mhr-editor[b-dvwc55b0ps] {
    border: 1.5px solid rgba(0,40,85,.14);
    border-radius: var(--radius-md,10px);
    overflow: hidden;
    box-shadow: 0 2px 12px rgba(0,40,85,.07);
}

[data-bs-theme="dark"] .dm-mhr-editor[b-dvwc55b0ps] {
    border-color: rgba(241,184,40,.15);
    box-shadow: 0 2px 14px rgba(0,0,0,.25);
}

.dm-mhr-editor__header[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .4rem .8rem;
    padding: .75rem 1.1rem;
    background: linear-gradient(90deg, rgba(0,40,85,.07) 0%, rgba(0,40,85,.02) 100%);
    border-bottom: 1px solid rgba(0,40,85,.10);
}

[data-bs-theme="dark"] .dm-mhr-editor__header[b-dvwc55b0ps] {
    background: linear-gradient(90deg, rgba(241,184,40,.08) 0%, transparent 100%);
    border-bottom-color: rgba(241,184,40,.14);
}

.dm-mhr-editor__title[b-dvwc55b0ps] {
    font-weight: 800;
    color: var(--iac-blue,#002855);
    font-size: .85rem;
    letter-spacing: .01em;
}

[data-bs-theme="dark"] .dm-mhr-editor__title[b-dvwc55b0ps] {
    color: var(--iac-gold,#F1B828);
}

.dm-mhr-editor__sub[b-dvwc55b0ps] {
    font-size: .74rem;
    color: var(--text-muted,#8A94A6);
    font-family: "Consolas","Courier New",monospace;
}

[data-bs-theme="dark"] .dm-mhr-editor__sub[b-dvwc55b0ps] {
    color: rgba(232,237,242,.42);
}

.dm-mhr-editor__body[b-dvwc55b0ps] {
    display: flex;
    align-items: flex-end;
    flex-wrap: wrap;
    gap: 1rem;
    padding: 1.1rem;
    background: var(--bg-surface,#fff);
}

[data-bs-theme="dark"] .dm-mhr-editor__body[b-dvwc55b0ps] {
    background: rgba(255,255,255,.025);
}

.dm-mhr-field[b-dvwc55b0ps] {
    display: flex;
    flex-direction: column;
    gap: .3rem;
    min-width: 160px;
}

.dm-mhr-field--formula[b-dvwc55b0ps] {
    flex: 1;
    min-width: 260px;
}

.dm-mhr-field__label[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    gap: .42rem;
    font-size: .79rem;
    font-weight: 700;
    color: var(--text-primary,#0D1117);
}

[data-bs-theme="dark"] .dm-mhr-field__label[b-dvwc55b0ps] {
    color: rgba(255,255,255,.86);
}

.dm-mhr-field__badge[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .05em;
    border-radius: 5px;
    padding: .12rem .5rem;
}

.dm-mhr-field__badge--mhr[b-dvwc55b0ps] {
    background: rgba(0,40,85,.10);
    color: #002855;
    border: 1px solid rgba(0,40,85,.20);
}

.dm-mhr-field__badge--dm[b-dvwc55b0ps] {
    background: rgba(241,184,40,.15);
    color: #7a5000;
    border: 1px solid rgba(241,184,40,.35);
}

[data-bs-theme="dark"] .dm-mhr-field__badge--mhr[b-dvwc55b0ps] {
    background: rgba(91,155,213,.14);
    color: #5b9bd5;
    border-color: rgba(91,155,213,.28);
}

[data-bs-theme="dark"] .dm-mhr-field__badge--dm[b-dvwc55b0ps] {
    background: rgba(241,184,40,.14);
    color: #F1B828;
    border-color: rgba(241,184,40,.28);
}

.dm-mhr-field__hint[b-dvwc55b0ps] {
    font-size: .69rem;
    color: var(--text-muted,#8A94A6);
    line-height: 1.4;
}

[data-bs-theme="dark"] .dm-mhr-field__hint[b-dvwc55b0ps] {
    color: rgba(232,237,242,.38);
}

.dm-mhr-field__input-wrap[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    border: 1.5px solid var(--border-default);
    border-radius: var(--radius-sm,7px);
    overflow: hidden;
    background: var(--bg-surface-2,#F5F7FC);
    transition: border-color .14s, box-shadow .14s;
}

    .dm-mhr-field__input-wrap:focus-within[b-dvwc55b0ps] {
        border-color: var(--iac-blue,#002855);
        box-shadow: 0 0 0 3px rgba(0,40,85,.09);
        background: var(--bg-surface,#fff);
    }

[data-bs-theme="dark"] .dm-mhr-field__input-wrap[b-dvwc55b0ps] {
    background: rgba(255,255,255,.05);
    border-color: rgba(255,255,255,.10);
}

    [data-bs-theme="dark"] .dm-mhr-field__input-wrap:focus-within[b-dvwc55b0ps] {
        border-color: var(--iac-gold,#F1B828);
        box-shadow: 0 0 0 3px rgba(241,184,40,.11);
        background: rgba(255,255,255,.07);
    }

.dm-mhr-field__prefix[b-dvwc55b0ps], .dm-mhr-field__suffix[b-dvwc55b0ps] {
    padding: .42rem .55rem;
    font-size: .77rem;
    font-weight: 700;
    color: var(--text-muted,#8A94A6);
    background: rgba(0,0,0,.04);
    white-space: nowrap;
    flex-shrink: 0;
}

[data-bs-theme="dark"] .dm-mhr-field__prefix[b-dvwc55b0ps], [data-bs-theme="dark"] .dm-mhr-field__suffix[b-dvwc55b0ps] {
    background: rgba(255,255,255,.05);
    color: rgba(232,237,242,.42);
}

.dm-mhr-field__input[b-dvwc55b0ps] {
    flex: 1;
    border: none;
    outline: none;
    background: transparent;
    padding: .42rem .6rem;
    font-size: .86rem;
    font-family: "Consolas","Courier New",monospace;
    color: var(--text-primary,#0D1117);
    min-width: 0;
}

[data-bs-theme="dark"] .dm-mhr-field__input[b-dvwc55b0ps] {
    color: rgba(255,255,255,.88);
}

.dm-mhr-preview[b-dvwc55b0ps] {
    display: flex;
    flex-direction: column;
    gap: .22rem;
    padding: .55rem .8rem;
    background: rgba(0,40,85,.04);
    border-radius: var(--radius-sm,7px);
    border: 1px solid rgba(0,40,85,.10);
}

[data-bs-theme="dark"] .dm-mhr-preview[b-dvwc55b0ps] {
    background: rgba(255,255,255,.04);
    border-color: rgba(255,255,255,.08);
}

.dm-mhr-preview__eq[b-dvwc55b0ps] {
    font-size: .71rem;
    font-family: "Consolas","Courier New",monospace;
    color: var(--text-secondary,#4A5568);
}

[data-bs-theme="dark"] .dm-mhr-preview__eq[b-dvwc55b0ps] {
    color: rgba(232,237,242,.48);
}

.dm-mhr-preview__result[b-dvwc55b0ps] {
    font-size: .96rem;
    font-weight: 800;
    color: var(--iac-blue,#002855);
    font-family: "Consolas","Courier New",monospace;
}

[data-bs-theme="dark"] .dm-mhr-preview__result[b-dvwc55b0ps] {
    color: var(--iac-gold,#F1B828);
}

.dm-mhr-actions[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    gap: .7rem;
    flex-shrink: 0;
    align-self: flex-end;
}

/* ═══════════════════════════════════════════════════════════════════════
   HARDWARE — locked price + modal redesign
   ═══════════════════════════════════════════════════════════════════════ */
.hw-locked-price[b-dvwc55b0ps] {
    display: inline-flex;
    align-items: center;
    gap: .38rem;
    background: rgba(138,148,166,.08);
    border: 1px solid rgba(138,148,166,.20);
    border-radius: 6px;
    padding: .26rem .62rem;
    font-size: .8rem;
    font-weight: 700;
    font-family: "Consolas","Courier New",monospace;
    color: var(--text-secondary,#4A5568);
    cursor: not-allowed;
    white-space: nowrap;
}

[data-bs-theme="dark"] .hw-locked-price[b-dvwc55b0ps] {
    background: rgba(255,255,255,.04);
    border-color: rgba(255,255,255,.09);
    color: rgba(232,237,242,.48);
}

.hw-locked-price__icon[b-dvwc55b0ps] {
    font-size: .66rem;
    opacity: .50;
}

.hw-col-unitcost[b-dvwc55b0ps] {
    min-width: 110px;
}

.hw-col-mh[b-dvwc55b0ps] {
    min-width: 80px;
}

.hw-col-price-locked[b-dvwc55b0ps] {
    min-width: 120px;
}

.hw-mh-input[b-dvwc55b0ps] {
    max-width: 80px;
}

.hw-modal-context-bar[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .45rem;
    padding: .55rem .75rem;
    background: var(--bg-surface-2,#EEF2FA);
    border-radius: var(--radius-sm,7px);
    margin-bottom: .85rem;
    border: 1px solid var(--border-default);
}

[data-bs-theme="dark"] .hw-modal-context-bar[b-dvwc55b0ps] {
    background: rgba(255,255,255,.03);
    border-color: rgba(255,255,255,.08);
}

.hw-ctx-pill[b-dvwc55b0ps] {
    display: flex;
    flex-direction: column;
    gap: .05rem;
    padding: .18rem .58rem;
    background: var(--bg-surface,#fff);
    border-radius: 5px;
    border: 1px solid var(--border-default);
}

[data-bs-theme="dark"] .hw-ctx-pill[b-dvwc55b0ps] {
    background: rgba(255,255,255,.04);
    border-color: rgba(255,255,255,.09);
}

.hw-ctx-pill__label[b-dvwc55b0ps] {
    font-size: .60rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--text-muted,#8A94A6);
}

[data-bs-theme="dark"] .hw-ctx-pill__label[b-dvwc55b0ps] {
    color: rgba(232,237,242,.32);
}

.hw-ctx-pill__val[b-dvwc55b0ps] {
    font-size: .77rem;
    font-weight: 600;
    color: var(--text-primary,#0D1117);
}

[data-bs-theme="dark"] .hw-ctx-pill__val[b-dvwc55b0ps] {
    color: rgba(255,255,255,.80);
}

.hw-price-banner[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: .7rem;
    padding: .8rem 1.1rem;
    background: linear-gradient(135deg, rgba(0,40,85,.06) 0%, rgba(0,40,85,.02) 100%);
    border: 1.5px solid rgba(0,40,85,.13);
    border-radius: var(--radius-md,10px);
    margin-bottom: .8rem;
}

[data-bs-theme="dark"] .hw-price-banner[b-dvwc55b0ps] {
    background: linear-gradient(135deg, rgba(241,184,40,.08) 0%, transparent 100%);
    border-color: rgba(241,184,40,.18);
}

.hw-price-banner__formula[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .28rem .45rem;
    font-size: .75rem;
    font-family: "Consolas","Courier New",monospace;
    color: var(--text-secondary,#4A5568);
}

[data-bs-theme="dark"] .hw-price-banner__formula[b-dvwc55b0ps] {
    color: rgba(232,237,242,.50);
}

.hw-price-banner__part[b-dvwc55b0ps] {
    background: rgba(0,40,85,.07);
    border: 1px solid rgba(0,40,85,.11);
    border-radius: 4px;
    padding: .09rem .42rem;
    font-weight: 600;
}

[data-bs-theme="dark"] .hw-price-banner__part[b-dvwc55b0ps] {
    background: rgba(255,255,255,.06);
    border-color: rgba(255,255,255,.10);
}

.hw-price-banner__op[b-dvwc55b0ps] {
    color: var(--text-muted);
    font-weight: 700;
}

.hw-price-banner__result[b-dvwc55b0ps] {
    display: flex;
    align-items: center;
    gap: .48rem;
    flex-shrink: 0;
}

.hw-price-banner__result-label[b-dvwc55b0ps] {
    font-size: .67rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--text-muted,#8A94A6);
}

[data-bs-theme="dark"] .hw-price-banner__result-label[b-dvwc55b0ps] {
    color: rgba(232,237,242,.36);
}

.hw-price-banner__result-val[b-dvwc55b0ps] {
    font-size: 1.06rem;
    font-weight: 800;
    font-family: "Consolas","Courier New",monospace;
    color: var(--iac-blue,#002855);
}

[data-bs-theme="dark"] .hw-price-banner__result-val[b-dvwc55b0ps] {
    color: var(--iac-gold,#F1B828);
}

.hw-price-banner__result-note[b-dvwc55b0ps] {
    font-size: .67rem;
    color: var(--text-muted,#8A94A6);
    font-style: italic;
}

[data-bs-theme="dark"] .hw-price-banner__result-note[b-dvwc55b0ps] {
    color: rgba(232,237,242,.30);
}


/* Order Requests type badge readability in both themes */
.myquotes-table .bo-product-badge[b-dvwc55b0ps],
.quotes-table .bo-product-badge[b-dvwc55b0ps] {
    color: inherit;
}

:root:not([data-bs-theme="dark"]) .myquotes-table .bo-product-badge--doors[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .quotes-table .bo-product-badge--doors[b-dvwc55b0ps] {
    color: #002855 !important;
}

:root:not([data-bs-theme="dark"]) .myquotes-table .bo-product-badge--windows[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .quotes-table .bo-product-badge--windows[b-dvwc55b0ps] {
    color: #0e7490 !important;
}

:root:not([data-bs-theme="dark"]) .myquotes-table .bo-product-badge--shipLoose[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .myquotes-table .bo-product-badge--shiploose[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .quotes-table .bo-product-badge--shipLoose[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .quotes-table .bo-product-badge--shiploose[b-dvwc55b0ps] {
    color: #b45309 !important;
}

:root:not([data-bs-theme="dark"]) .myquotes-table .bo-product-badge--multi[b-dvwc55b0ps],
:root:not([data-bs-theme="dark"]) .quotes-table .bo-product-badge--multi[b-dvwc55b0ps] {
    color: #7c3aed !important;
}

/* Order Review grouped sections */
.bo-review-section-head[b-dvwc55b0ps] {
    padding: 0 2px;
}

    .bo-review-section-head .fw-bold[b-dvwc55b0ps] {
        font-size: 0.74rem;
        letter-spacing: 0.08em;
        color: #23476f;
    }

.bo-review-section-table[b-dvwc55b0ps] {
    border: 1px solid rgba(0,40,85,0.10);
    border-radius: 10px;
    overflow: hidden;
}

.bo-review-expand-row > td[b-dvwc55b0ps] {
    background: #eef4fb !important;
}

[data-bs-theme="dark"] .bo-review-section-head .fw-bold[b-dvwc55b0ps],
[data-theme="dark"] .bo-review-section-head .fw-bold[b-dvwc55b0ps],
.dark-mode .bo-review-section-head .fw-bold[b-dvwc55b0ps] {
    color: #9fc4e6;
}

[data-bs-theme="dark"] .bo-review-expand-row > td[b-dvwc55b0ps],
[data-theme="dark"] .bo-review-expand-row > td[b-dvwc55b0ps],
.dark-mode .bo-review-expand-row > td[b-dvwc55b0ps] {
    background: #162235 !important;
}

/* Revision modal light/dark polish */
.modal-content.bo-revision-modal .badge.bg-secondary[b-dvwc55b0ps] {
    background: #e4ecf7 !important;
    color: #173a63 !important;
    border: 1px solid rgba(0,40,85,0.10);
}

[data-bs-theme="dark"] .modal-content.bo-revision-modal .badge.bg-secondary[b-dvwc55b0ps],
[data-theme="dark"] .modal-content.bo-revision-modal .badge.bg-secondary[b-dvwc55b0ps],
.dark-mode .modal-content.bo-revision-modal .badge.bg-secondary[b-dvwc55b0ps] {
    background: rgba(143,181,212,0.16) !important;
    color: #d8e8f7 !important;
    border-color: rgba(143,181,212,0.24);
}

.modal-content.bo-revision-modal .form-check[b-dvwc55b0ps] {
    padding: 10px 12px;
    border-radius: 10px;
    background: rgba(0,40,85,0.035);
    border: 1px solid rgba(0,40,85,0.08);
    margin-bottom: 8px;
}

[data-bs-theme="dark"] .modal-content.bo-revision-modal .form-check[b-dvwc55b0ps],
[data-theme="dark"] .modal-content.bo-revision-modal .form-check[b-dvwc55b0ps],
.dark-mode .modal-content.bo-revision-modal .form-check[b-dvwc55b0ps] {
    background: rgba(143,181,212,0.08);
    border-color: rgba(143,181,212,0.16);
}

.modal-content.bo-revision-modal .bo-revision-textarea[b-dvwc55b0ps],
.modal-content.bo-revision-modal textarea.form-control[b-dvwc55b0ps] {
    background: #ffffff !important;
    color: #1a2e47 !important;
}

[data-bs-theme="dark"] .modal-content.bo-revision-modal .bo-revision-textarea[b-dvwc55b0ps],
[data-theme="dark"] .modal-content.bo-revision-modal .bo-revision-textarea[b-dvwc55b0ps],
.dark-mode .modal-content.bo-revision-modal .bo-revision-textarea[b-dvwc55b0ps],
[data-bs-theme="dark"] .modal-content.bo-revision-modal textarea.form-control[b-dvwc55b0ps],
[data-theme="dark"] .modal-content.bo-revision-modal textarea.form-control[b-dvwc55b0ps],
.dark-mode .modal-content.bo-revision-modal textarea.form-control[b-dvwc55b0ps] {
    background: #141C2C !important;
    color: #e8edf5 !important;
}

/* ============================================================
   DOCUMENT PORTAL — BackOffice dark mode & panel polish
   ============================================================ */

/* ── Panel header ─────────────────────────────────────────────── */
[data-bs-theme="dark"] .bo-panel-title[b-dvwc55b0ps] {
    color: #e2e8f0;
}

/* ── Nav tabs (filter tabs) ───────────────────────────────────── */
[data-bs-theme="dark"] .card .nav-tabs[b-dvwc55b0ps] {
    border-bottom-color: rgba(255,255,255,0.10);
}

    [data-bs-theme="dark"] .card .nav-tabs .nav-link[b-dvwc55b0ps] {
        color: #94a3b8;
        border-color: transparent;
    }

        [data-bs-theme="dark"] .card .nav-tabs .nav-link:hover[b-dvwc55b0ps] {
            color: #e2e8f0;
            border-color: rgba(255,255,255,0.12);
            background: rgba(255,255,255,0.04);
        }

        [data-bs-theme="dark"] .card .nav-tabs .nav-link.active[b-dvwc55b0ps] {
            color: #f1f5f9;
            background: #0f172a;
            border-color: rgba(255,255,255,0.14) rgba(255,255,255,0.14) #0f172a;
            border-top-color: #3b82f6;
        }

/* ── Document table ───────────────────────────────────────────── */
[data-bs-theme="dark"] .table[b-dvwc55b0ps] {
    --bs-table-color: #cbd5e1;
    --bs-table-bg: transparent;
    --bs-table-striped-bg: rgba(255,255,255,0.025);
    --bs-table-hover-bg: rgba(255,255,255,0.04);
    --bs-table-border-color: rgba(255,255,255,0.08);
}

    [data-bs-theme="dark"] .table thead.table-light th[b-dvwc55b0ps] {
        background: #0f172a;
        color: #94a3b8;
        border-color: rgba(255,255,255,0.10);
        font-size: 0.72rem;
        font-weight: 700;
        letter-spacing: 0.06em;
        text-transform: uppercase;
    }

    [data-bs-theme="dark"] .table tbody tr:hover td[b-dvwc55b0ps] {
        background: rgba(255,255,255,0.04);
    }

    [data-bs-theme="dark"] .table tbody td[b-dvwc55b0ps] {
        border-color: rgba(255,255,255,0.06);
        color: #cbd5e1;
    }

    [data-bs-theme="dark"] .table .text-muted[b-dvwc55b0ps] {
        color: #64748b !important;
    }

    /* Inline edit row highlight in dark mode */
    [data-bs-theme="dark"] .table .table-info[b-dvwc55b0ps] {
        --bs-table-color: #e2e8f0;
        --bs-table-bg: rgba(59,130,246,0.10);
        --bs-table-border-color: rgba(59,130,246,0.20);
    }

        [data-bs-theme="dark"] .table .table-info td[b-dvwc55b0ps] {
            color: #e2e8f0;
        }

/* ── Category & product type badges in the table ─────────────── */
[data-bs-theme="dark"] .badge.bg-secondary-subtle[b-dvwc55b0ps] {
    background: rgba(148,163,184,0.12) !important;
    color: #94a3b8 !important;
    border-color: rgba(148,163,184,0.20) !important;
}

/* Product type badges in the admin table */
.doc-product-badge[b-dvwc55b0ps] {
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    padding: 0.25em 0.6em;
    border-radius: 6px;
    border: 1px solid transparent;
}

.doc-product-badge--doors[b-dvwc55b0ps] {
    background: rgba(0,40,85,0.10);
    color: #002855;
    border-color: rgba(0,40,85,0.22);
}

[data-bs-theme="dark"] .doc-product-badge--doors[b-dvwc55b0ps] {
    background: rgba(100,160,255,0.14);
    color: #8fc0ff;
    border-color: rgba(100,160,255,0.26);
}

.doc-product-badge--windows[b-dvwc55b0ps] {
    background: rgba(13,148,136,0.10);
    color: #0d9488;
    border-color: rgba(13,148,136,0.24);
}

[data-bs-theme="dark"] .doc-product-badge--windows[b-dvwc55b0ps] {
    background: rgba(45,212,191,0.12);
    color: #2dd4bf;
    border-color: rgba(45,212,191,0.24);
}

.doc-product-badge--shiploose[b-dvwc55b0ps] {
    background: rgba(217,119,6,0.10);
    color: #b45309;
    border-color: rgba(217,119,6,0.24);
}

[data-bs-theme="dark"] .doc-product-badge--shiploose[b-dvwc55b0ps] {
    background: rgba(251,191,36,0.12);
    color: #fbbf24;
    border-color: rgba(251,191,36,0.24);
}

.doc-product-badge--general[b-dvwc55b0ps] {
    background: rgba(100,116,139,0.10);
    color: #475569;
    border-color: rgba(100,116,139,0.22);
}

[data-bs-theme="dark"] .doc-product-badge--general[b-dvwc55b0ps] {
    background: rgba(148,163,184,0.12);
    color: #94a3b8;
    border-color: rgba(148,163,184,0.20);
}

/* ── Upload zone dark mode ────────────────────────────────────── */
[data-bs-theme="dark"] .bo-upload-zone[b-dvwc55b0ps] {
    border-color: rgba(255,255,255,0.12) !important;
    background: rgba(255,255,255,0.02);
}

[data-bs-theme="dark"] .bo-selected-files-list .border[b-dvwc55b0ps] {
    border-color: rgba(255,255,255,0.10) !important;
    background: rgba(255,255,255,0.03);
}

/* ── Upload card dark mode ────────────────────────────────────── */
[data-bs-theme="dark"] .card.border-primary[b-dvwc55b0ps] {
    border-color: rgba(59,130,246,0.40) !important;
}

    [data-bs-theme="dark"] .card.border-primary .card-header.bg-primary[b-dvwc55b0ps] {
        background: rgba(37,99,235,0.80) !important;
    }

/* ── Form controls inside document portal ────────────────────── */
[data-bs-theme="dark"] .table .form-control[b-dvwc55b0ps],
[data-bs-theme="dark"] .table .form-select[b-dvwc55b0ps] {
    background: #1e293b;
    color: #e2e8f0;
    border-color: rgba(255,255,255,0.15);
}

    [data-bs-theme="dark"] .table .form-control:focus[b-dvwc55b0ps],
    [data-bs-theme="dark"] .table .form-select:focus[b-dvwc55b0ps] {
        background: #1e293b;
        color: #f1f5f9;
        border-color: rgba(59,130,246,0.55);
        box-shadow: 0 0 0 3px rgba(59,130,246,0.15);
    }

[data-bs-theme="dark"] .table .form-check-input[b-dvwc55b0ps] {
    background-color: #334155;
    border-color: rgba(255,255,255,0.25);
}

    [data-bs-theme="dark"] .table .form-check-input:checked[b-dvwc55b0ps] {
        background-color: #3b82f6;
        border-color: #3b82f6;
    }

/* ── Document card (shadow wrapper) in dark mode ─────────────── */
[data-bs-theme="dark"] .card.shadow.p-4[b-dvwc55b0ps] {
    background: #0c1220;
    border-color: rgba(255,255,255,0.08);
}

/* ── action links in table (PDF title link) ──────────────────── */
[data-bs-theme="dark"] .table a.text-decoration-none.fw-semibold[b-dvwc55b0ps] {
    color: #93c5fd;
}

    [data-bs-theme="dark"] .table a.text-decoration-none.fw-semibold:hover[b-dvwc55b0ps] {
        color: #bfdbfe;
    }

/* ── success/danger icons in dark ────────────────────────────── */
[data-bs-theme="dark"] .bi-check-circle-fill.text-success[b-dvwc55b0ps] {
    color: #4ade80 !important;
}

[data-bs-theme="dark"] .bi-x-circle-fill.text-danger[b-dvwc55b0ps] {
    color: #f87171 !important;
}

[data-bs-theme="dark"] .bi-dash-circle-fill.text-muted[b-dvwc55b0ps] {
    color: #475569 !important;
}

/* ── Empty state ─────────────────────────────────────────────── */
[data-bs-theme="dark"] .text-center .bi-folder-x[b-dvwc55b0ps] {
    color: #334155;
}
/* _content/NoiseLockQuoteTool/Pages/Customer/MyQuotes.razor.rz.scp.css */
/* =============================================================
   MyQuotes.razor.css  — updated
   All component-scoped styles for the My Quotes page.
   Covers: page layout, filter panel, timeline, tabs,
   quote cards, status strips, chips, action buttons,
   autocomplete, and modals.
   Full light + dark mode support throughout.
   ============================================================= */


/* ── CSS CUSTOM PROPERTIES (design tokens) ───────────────── */

/* Dark mode (default) */
:root[b-8j2pdipncp],
[data-bs-theme="dark"][b-8j2pdipncp] {
    --nq-accent: #F1B828;
    --nq-accent-dim: rgba(241,184,40,0.12);
    --nq-accent-ring: rgba(241,184,40,0.30);
    --nq-border: rgba(255,255,255,0.09);
    --nq-chip-bg: rgba(255,255,255,0.05);
    --nq-fg: rgba(255,255,255,0.88);
    --nq-muted: rgba(255,255,255,0.45);
    --nq-card-bg: #1e2226;
    --nq-card-shadow: 0 4px 20px rgba(0,0,0,0.60), 0 1px 4px rgba(0,0,0,0.40), inset 0 1px 0 rgba(255,255,255,0.04);
    --nq-panel-bg: #181c1f;
    --nq-dropdown-bg: #1a2236;
    /* Status palette */
    --s-open-bg: rgba(56,189,248,0.13);
    --s-open-fg: #38bdf8;
    --s-open-bd: rgba(56,189,248,0.28);
    --s-open-badge: rgba(56,189,248,0.80);
    --s-open-badge-fg: #082f49;
    --s-ordersubmitted-bg: rgba(251,191,36,0.14);
    --s-ordersubmitted-fg: #fbbf24;
    --s-ordersubmitted-bd: rgba(251,191,36,0.32);
    --s-ordersubmitted-badge: rgba(251,191,36,0.85);
    --s-ordersubmitted-badge-fg: #1a1200;
    --s-lost-bg: rgba(239,68,68,0.12);
    --s-lost-fg: #f87171;
    --s-lost-bd: rgba(239,68,68,0.25);
    --s-lost-badge: rgba(239,68,68,0.78);
    --s-lost-badge-fg: #fff;
    --s-ordered-bg: rgba(52,211,153,0.13);
    --s-ordered-fg: #34d399;
    --s-ordered-bd: rgba(52,211,153,0.28);
    --s-ordered-badge: rgba(52,211,153,0.80);
    --s-ordered-badge-fg: #022c22;
    --s-revise-bg: rgba(239,68,68,0.12);
    --s-revise-fg: #f87171;
    --s-revise-bd: rgba(239,68,68,0.25);
    --s-revise-badge: rgba(239,68,68,0.78);
    --s-revise-badge-fg: #fff;
    --s-rq-bg: rgba(251,146,60,0.13);
    --s-rq-fg: #fb923c;
    --s-rq-bd: rgba(251,146,60,0.28);
    --s-rq-badge: rgba(251,146,60,0.85);
    --s-rq-badge-fg: #3d1a00;
    --s-pending-bg: rgba(168,85,247,0.13);
    --s-pending-fg: #c084fc;
    --s-pending-bd: rgba(168,85,247,0.28);
    --s-pending-badge: rgba(168,85,247,0.80);
    --s-pending-badge-fg: #fff;
    --s-ready-bg: rgba(20,184,166,0.13);
    --s-ready-fg: #2dd4bf;
    --s-ready-bd: rgba(20,184,166,0.28);
    --s-ready-badge: rgba(20,184,166,0.80);
    --s-ready-badge-fg: #022c22;
    --nq-price-color: #34d399;
    --nq-hint-color: #ffe082;
    --nq-hint-bg: linear-gradient(180deg, rgba(241,184,40,0.16), rgba(241,184,40,0.08));
    --nq-hint-border: rgba(241,184,40,0.30);
}

/* Light mode overrides */
[data-bs-theme="light"][b-8j2pdipncp] {
    --nq-accent: #c98000;
    --nq-accent-dim: rgba(201,128,0,0.10);
    --nq-accent-ring: rgba(201,128,0,0.28);
    --nq-border: rgba(0,40,85,0.10);
    --nq-chip-bg: rgba(0,40,85,0.04);
    --nq-fg: #1a2a3a;
    --nq-muted: rgba(15,23,42,0.45);
    --nq-card-bg: #ffffff;
    --nq-card-shadow: 0 4px 16px rgba(0,40,85,0.13), 0 1px 3px rgba(0,40,85,0.08);
    --nq-panel-bg: #ffffff;
    --nq-dropdown-bg: #ffffff;
    --s-open-bg: rgba(14,165,233,0.10);
    --s-open-fg: #0369a1;
    --s-open-bd: rgba(14,165,233,0.25);
    --s-open-badge: rgba(14,165,233,0.85);
    --s-open-badge-fg: #fff;
    --s-ordersubmitted-bg: rgba(217,119,6,0.10);
    --s-ordersubmitted-fg: #b45309;
    --s-ordersubmitted-bd: rgba(217,119,6,0.28);
    --s-ordersubmitted-badge: rgba(217,119,6,0.85);
    --s-ordersubmitted-badge-fg: #fff;
    --s-lost-bg: rgba(239,68,68,0.08);
    --s-lost-fg: #dc2626;
    --s-lost-bd: rgba(239,68,68,0.22);
    --s-lost-badge: rgba(239,68,68,0.78);
    --s-lost-badge-fg: #fff;
    --s-ordered-bg: rgba(16,185,129,0.09);
    --s-ordered-fg: #065f46;
    --s-ordered-bd: rgba(16,185,129,0.22);
    --s-ordered-badge: rgba(16,185,129,0.80);
    --s-ordered-badge-fg: #fff;
    --s-revise-bg: rgba(239,68,68,0.08);
    --s-revise-fg: #dc2626;
    --s-revise-bd: rgba(239,68,68,0.22);
    --s-revise-badge: rgba(239,68,68,0.78);
    --s-revise-badge-fg: #fff;
    --s-rq-bg: rgba(234,88,12,0.09);
    --s-rq-fg: #c2410c;
    --s-rq-bd: rgba(234,88,12,0.25);
    --s-rq-badge: rgba(234,88,12,0.82);
    --s-rq-badge-fg: #fff;
    --s-pending-bg: rgba(124,58,237,0.08);
    --s-pending-fg: #6d28d9;
    --s-pending-bd: rgba(124,58,237,0.22);
    --s-pending-badge: rgba(124,58,237,0.80);
    --s-pending-badge-fg: #fff;
    --s-ready-bg: rgba(13,148,136,0.09);
    --s-ready-fg: #0f766e;
    --s-ready-bd: rgba(13,148,136,0.22);
    --s-ready-badge: rgba(13,148,136,0.80);
    --s-ready-badge-fg: #fff;
    --nq-price-color: #065f46;
    --nq-hint-color: #7a5a00;
    --nq-hint-bg: linear-gradient(180deg, rgba(241,184,40,0.20), rgba(241,184,40,0.11));
    --nq-hint-border: rgba(241,184,40,0.38);
}


/* ── PAGE WRAPPER & LAYOUT ───────────────────────────────── */

.quotes-page-wrapper[b-8j2pdipncp] {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.quotes-page[b-8j2pdipncp] {
    flex: 1;
    padding: 1rem 1.25rem;
}

@media (max-width: 575px) {
    .quotes-page[b-8j2pdipncp] {
        padding: 0.65rem 0.75rem;
    }
}


/* ── FILTER PANEL ────────────────────────────────────────── */

.quotes-panel[b-8j2pdipncp] {
    margin-bottom: 1rem;
}

.quotes-panel-inner[b-8j2pdipncp] {
    background: var(--nq-panel-bg);
    border: 1px solid rgba(255,255,255,0.10);
    border-top: 3px solid var(--nq-accent);
    border-radius: 10px;
    padding: 0.85rem 1.1rem 0.75rem;
    box-shadow: 0 4px 20px rgba(0,0,0,0.35), inset 0 1px 0 rgba(255,255,255,0.04);
}

[data-bs-theme="light"] .quotes-panel-inner[b-8j2pdipncp] {
    border-color: rgba(0,40,85,0.12);
    box-shadow: 0 2px 10px rgba(0,40,85,0.09), inset 0 1px 0 rgba(255,255,255,0.80);
}

.quotes-panel-header[b-8j2pdipncp] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.7rem;
    padding-bottom: 0.6rem;
    border-bottom: 1px solid rgba(255,255,255,0.07);
}

[data-bs-theme="light"] .quotes-panel-header[b-8j2pdipncp] {
    border-bottom-color: rgba(0,40,85,0.08);
}

.quotes-panel-title[b-8j2pdipncp] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
}

    .quotes-panel-title h3[b-8j2pdipncp] {
        font-size: 0.85rem;
        font-weight: 900;
        letter-spacing: 0.12em;
        text-transform: uppercase;
        color: var(--nq-accent);
        margin: 0;
        text-shadow: 0 0 18px rgba(241,184,40,0.35);
    }

[data-bs-theme="light"] .quotes-panel-title h3[b-8j2pdipncp] {
    text-shadow: none;
}

.quotes-count-badge[b-8j2pdipncp] {
    display: inline-flex;
    align-items: center;
    padding: 4px 13px;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    background: #F1B828;
    color: #1a1000;
    border: 1px solid rgba(255,200,50,0.55);
    box-shadow: 0 0 0 1px rgba(241,184,40,0.20), 0 2px 10px rgba(241,184,40,0.45), inset 0 1px 0 rgba(255,255,255,0.28);
}

[data-bs-theme="light"] .quotes-count-badge[b-8j2pdipncp] {
    background: #e6a800;
    border-color: rgba(201,128,0,0.35);
    box-shadow: 0 2px 8px rgba(201,128,0,0.30), inset 0 1px 0 rgba(255,255,255,0.40);
}


/* ── FILTER TOOLBAR ──────────────────────────────────────── */

.quotes-filters[b-8j2pdipncp] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.45rem 0.6rem;
    row-gap: 0.45rem;
}

    .quotes-filters > label[b-8j2pdipncp] {
        font-size: 0.72rem;
        font-weight: 700;
        letter-spacing: 0.07em;
        text-transform: uppercase;
        color: var(--nq-muted);
        white-space: nowrap;
    }

    .quotes-filters .form-select[b-8j2pdipncp],
    .quotes-filters .form-control[b-8j2pdipncp] {
        height: 32px;
        font-size: 0.8rem;
        padding: 0 0.65rem;
        border-radius: 7px;
        border: 1px solid rgba(255,255,255,0.14);
        background: rgba(0,0,0,0.28);
        color: var(--nq-fg);
        min-width: 100px;
        box-shadow: inset 0 2px 5px rgba(0,0,0,0.30), 0 1px 0 rgba(255,255,255,0.05);
        transition: border-color 0.14s, box-shadow 0.14s;
    }

        .quotes-filters .form-select:focus[b-8j2pdipncp],
        .quotes-filters .form-control:focus[b-8j2pdipncp] {
            outline: none;
            border-color: var(--nq-accent);
            box-shadow: inset 0 2px 4px rgba(0,0,0,0.25), 0 0 0 2px var(--nq-accent-dim);
        }

[data-bs-theme="light"] .quotes-filters .form-select[b-8j2pdipncp],
[data-bs-theme="light"] .quotes-filters .form-control[b-8j2pdipncp] {
    border-color: rgba(0,40,85,0.18);
    background: rgba(255,255,255,0.85);
    box-shadow: inset 0 2px 4px rgba(0,40,85,0.08), 0 1px 2px rgba(0,40,85,0.06);
}

    [data-bs-theme="light"] .quotes-filters .form-select:focus[b-8j2pdipncp],
    [data-bs-theme="light"] .quotes-filters .form-control:focus[b-8j2pdipncp] {
        border-color: var(--nq-accent);
        box-shadow: inset 0 1px 3px rgba(0,40,85,0.06), 0 0 0 2px var(--nq-accent-dim);
    }

.quotes-filters .btn-solid.btn-neutral-solid[b-8j2pdipncp] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    height: 34px;
    padding: 0 1.25rem;
    font-size: 0.75rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    border-radius: 7px;
    background: #0ea5e9;
    color: #ffffff;
    border: 1px solid rgba(56,189,248,0.60);
    white-space: nowrap;
    box-shadow: 0 0 0 1px rgba(14,165,233,0.25), 0 3px 12px rgba(14,165,233,0.45), inset 0 1px 0 rgba(255,255,255,0.22);
    transition: filter 0.14s, transform 0.12s, box-shadow 0.14s;
}

    .quotes-filters .btn-solid.btn-neutral-solid:hover[b-8j2pdipncp] {
        filter: brightness(1.12);
        transform: translateY(-1px);
        box-shadow: 0 0 0 1px rgba(14,165,233,0.35), 0 5px 20px rgba(14,165,233,0.55), inset 0 1px 0 rgba(255,255,255,0.22);
    }

    .quotes-filters .btn-solid.btn-neutral-solid:active[b-8j2pdipncp] {
        transform: translateY(0);
        filter: brightness(0.94);
        box-shadow: 0 1px 4px rgba(14,165,233,0.25);
    }

[data-bs-theme="light"] .quotes-filters .btn-solid.btn-neutral-solid[b-8j2pdipncp] {
    background: #0284c7;
    border-color: rgba(2,132,199,0.50);
    box-shadow: 0 2px 10px rgba(2,132,199,0.35), inset 0 1px 0 rgba(255,255,255,0.25);
}

.quotes-filters .btn-outline-secondary.btn-sm[b-8j2pdipncp] {
    height: 28px;
    width: 28px;
    padding: 0;
    font-size: 0.78rem;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255,255,255,0.14);
    color: var(--nq-muted);
    background: rgba(255,255,255,0.05);
    transition: background 0.13s, color 0.13s, border-color 0.13s, transform 0.11s;
}

    .quotes-filters .btn-outline-secondary.btn-sm:hover[b-8j2pdipncp] {
        background: rgba(239,68,68,0.14);
        border-color: rgba(239,68,68,0.35);
        color: #f87171;
        transform: translateY(-1px);
    }

[data-bs-theme="light"] .quotes-filters .btn-outline-secondary.btn-sm[b-8j2pdipncp] {
    border-color: rgba(0,40,85,0.15);
    background: rgba(0,40,85,0.04);
    color: rgba(15,23,42,0.50);
}

    [data-bs-theme="light"] .quotes-filters .btn-outline-secondary.btn-sm:hover[b-8j2pdipncp] {
        background: rgba(239,68,68,0.09);
        border-color: rgba(239,68,68,0.28);
        color: #dc2626;
    }

.quotes-filters .form-check[b-8j2pdipncp] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    margin: 0;
    padding: 0;
    white-space: nowrap;
}

.quotes-filters .form-check-label[b-8j2pdipncp] {
    font-size: 0.78rem;
    color: var(--nq-fg);
    cursor: pointer;
    user-select: none;
}

.quotes-filters .form-check-input[b-8j2pdipncp] {
    cursor: pointer;
    width: 15px;
    height: 15px;
    margin: 0;
    flex-shrink: 0;
    accent-color: var(--nq-accent);
}

@media (max-width: 767px) {
    .quotes-filters[b-8j2pdipncp] {
        flex-direction: column;
        align-items: flex-start;
    }

        .quotes-filters .form-select[b-8j2pdipncp],
        .quotes-filters .form-control[b-8j2pdipncp] {
            width: 100%;
            min-width: 0;
        }

        .quotes-filters .form-check[b-8j2pdipncp] {
            margin-left: 0 !important;
        }
}


/* ── TIMELINE FILTER ─────────────────────────────────────── */

.quotes-timeline-group[b-8j2pdipncp] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    background: rgba(0,0,0,0.25);
    border: 1px solid var(--nq-accent-ring);
    border-radius: 8px;
    padding: 0 0.65rem;
    height: 34px;
    flex-shrink: 0;
    box-shadow: inset 0 2px 6px rgba(0,0,0,0.30), 0 0 0 1px var(--nq-accent-dim), 0 1px 0 rgba(255,255,255,0.04);
    transition: border-color 0.15s, box-shadow 0.15s;
}

    .quotes-timeline-group:focus-within[b-8j2pdipncp] {
        border-color: var(--nq-accent);
        box-shadow: inset 0 2px 5px rgba(0,0,0,0.25), 0 0 0 3px var(--nq-accent-dim);
    }

[data-bs-theme="light"] .quotes-timeline-group[b-8j2pdipncp] {
    background: rgba(255,255,255,0.85);
    box-shadow: inset 0 2px 4px rgba(0,40,85,0.10), 0 1px 0 rgba(201,128,0,0.08);
}

    [data-bs-theme="light"] .quotes-timeline-group:focus-within[b-8j2pdipncp] {
        border-color: var(--nq-accent);
        box-shadow: inset 0 1px 3px rgba(0,40,85,0.08), 0 0 0 3px var(--nq-accent-dim);
    }

.quotes-timeline-label[b-8j2pdipncp] {
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--nq-accent);
    white-space: nowrap;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
}

    .quotes-timeline-label i[b-8j2pdipncp] {
        font-size: 0.80rem;
        filter: drop-shadow(0 0 3px var(--nq-accent-ring));
    }

.quotes-timeline-input[b-8j2pdipncp] {
    border: none !important;
    background: transparent !important;
    height: 28px !important;
    font-size: 0.78rem !important;
    padding: 0 0.3rem !important;
    color: var(--nq-fg) !important;
    min-width: 120px;
    color-scheme: dark;
    box-shadow: none !important;
    outline: none !important;
}

    .quotes-timeline-input[b-8j2pdipncp]::placeholder {
        color: var(--nq-muted);
    }

[data-bs-theme="light"] .quotes-timeline-input[b-8j2pdipncp] {
    color-scheme: light;
}

.quotes-timeline-sep[b-8j2pdipncp] {
    font-size: 0.68rem;
    color: var(--nq-accent);
    opacity: 0.65;
    white-space: nowrap;
    flex-shrink: 0;
    font-weight: 700;
}

.quotes-timeline-clear[b-8j2pdipncp] {
    width: 20px;
    height: 20px;
    border-radius: 4px;
    border: 1px solid var(--nq-border) !important;
    background: transparent;
    color: var(--nq-muted);
    cursor: pointer;
    font-size: 0.65rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    line-height: 1;
    transition: background 0.13s, color 0.13s, border-color 0.13s;
    flex-shrink: 0;
}

    .quotes-timeline-clear:hover[b-8j2pdipncp] {
        background: rgba(239,68,68,0.12);
        border-color: rgba(239,68,68,0.30) !important;
        color: #f87171;
    }

@media (max-width: 767px) {
    .quotes-timeline-group[b-8j2pdipncp] {
        width: 100%;
        flex-wrap: wrap;
        height: auto;
        padding: 0.4rem 0.65rem;
        gap: 0.35rem;
    }

    .quotes-timeline-input[b-8j2pdipncp] {
        min-width: 0;
        flex: 1;
    }
}


/* ── HINT ────────────────────────────────────────────────── */

.quotes-hint[b-8j2pdipncp] {
    margin-top: 0.6rem;
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.55rem 1rem 0.55rem 0.85rem;
    font-size: 0.73rem;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: 0.01em;
    color: #ffe082;
    background: rgba(241,184,40,0.18);
    border: 1px solid rgba(241,184,40,0.35);
    border-left: 3px solid #F1B828;
    border-radius: 8px;
    box-shadow: 0 2px 12px rgba(241,184,40,0.18), inset 0 1px 0 rgba(255,255,255,0.06);
}

    .quotes-hint[b-8j2pdipncp]::before {
        content: "💡";
        font-size: 0.85rem;
        flex-shrink: 0;
        line-height: 1;
    }

    .quotes-hint strong[b-8j2pdipncp] {
        font-weight: 900;
        color: #F1B828;
        text-shadow: 0 0 12px rgba(241,184,40,0.40);
    }

[data-bs-theme="light"] .quotes-hint[b-8j2pdipncp] {
    color: #7a5000;
    background: rgba(241,184,40,0.14);
    border-color: rgba(201,128,0,0.30);
    border-left-color: #c98000;
    box-shadow: 0 2px 8px rgba(201,128,0,0.12);
}

    [data-bs-theme="light"] .quotes-hint strong[b-8j2pdipncp] {
        color: #c98000;
        text-shadow: none;
    }


/* ── AUTOCOMPLETE ────────────────────────────────────────── */

.autocomplete-wrap[b-8j2pdipncp] {
    min-width: 190px;
}

.autocomplete-dropdown[b-8j2pdipncp] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 1050;
    list-style: none;
    margin: 3px 0 0;
    padding: 5px 0;
    background: #1e2840;
    border: 1px solid rgba(255,255,255,0.14);
    border-radius: 10px;
    box-shadow: 0 12px 36px rgba(0,0,0,0.55), 0 2px 8px rgba(0,0,0,0.35);
    max-height: 220px;
    overflow-y: auto;
}

    .autocomplete-dropdown li[b-8j2pdipncp] {
        padding: 0.45rem 0.9rem;
        font-size: 0.8rem;
        font-weight: 500;
        cursor: pointer;
        color: rgba(255,255,255,0.82);
        transition: background 0.12s, color 0.12s;
    }

        .autocomplete-dropdown li:hover[b-8j2pdipncp] {
            background: var(--nq-accent-dim);
            color: var(--nq-accent);
        }

[data-bs-theme="light"] .autocomplete-dropdown[b-8j2pdipncp] {
    background: #ffffff;
    border-color: rgba(0,40,85,0.14);
    box-shadow: 0 10px 30px rgba(0,40,85,0.16), 0 2px 6px rgba(0,40,85,0.08);
}

    [data-bs-theme="light"] .autocomplete-dropdown li[b-8j2pdipncp] {
        color: #1a2a3a;
    }

        [data-bs-theme="light"] .autocomplete-dropdown li:hover[b-8j2pdipncp] {
            background: var(--nq-accent-dim);
            color: var(--nq-accent);
        }


/* ── TABS ────────────────────────────────────────────────── */

.quotes-tabs[b-8j2pdipncp] {
    display: flex;
    align-items: stretch;
    gap: 0.3rem;
    margin-bottom: 0.85rem;
    border-bottom: 2px solid var(--nq-border);
    flex-wrap: wrap;
    padding-bottom: 0;
}

.quotes-tab-btn[b-8j2pdipncp] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.5rem 1.15rem;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    border: 1px solid var(--nq-border);
    border-bottom: 2px solid transparent;
    background: rgba(255,255,255,0.04);
    color: var(--nq-muted);
    cursor: pointer;
    margin-bottom: -2px;
    border-radius: 7px 7px 0 0;
    transition: color 0.15s, border-color 0.15s, background 0.15s, box-shadow 0.15s;
    white-space: nowrap;
    box-shadow: inset 0 -2px 6px rgba(0,0,0,0.18);
}

    .quotes-tab-btn:hover[b-8j2pdipncp] {
        color: var(--nq-fg);
        background: rgba(255,255,255,0.08);
        border-color: rgba(255,255,255,0.14);
    }

[data-bs-theme="light"] .quotes-tab-btn[b-8j2pdipncp] {
    background: rgba(0,40,85,0.05);
    border-color: rgba(0,40,85,0.10);
    box-shadow: inset 0 -2px 5px rgba(0,40,85,0.07);
}

    [data-bs-theme="light"] .quotes-tab-btn:hover[b-8j2pdipncp] {
        background: rgba(0,40,85,0.09);
        border-color: rgba(0,40,85,0.16);
    }

/* ── Active tab base (child 1 — Active: amber/gold) ── */

.quotes-tab-btn.is-active[b-8j2pdipncp] {
    color: var(--nq-accent);
    border-color: var(--nq-border);
    border-bottom-color: var(--nq-card-bg);
    background: var(--nq-card-bg);
    box-shadow: none;
    border-top: 2px solid var(--nq-accent);
    padding-top: calc(0.5rem - 1px);
}

    .quotes-tab-btn.is-active i[b-8j2pdipncp] {
        color: var(--nq-accent);
        filter: drop-shadow(0 0 4px var(--nq-accent-ring));
    }

/* ── Per-tab active colours — class-based (safe with conditional rendering) ── */

/* Needs Action: purple */
.quotes-tabs .quotes-tab-btn.tab--needs-action.is-active[b-8j2pdipncp] {
    color: #c084fc;
    border-top-color: #a855f7;
    background: var(--nq-card-bg);
    border-bottom-color: var(--nq-card-bg);
    box-shadow: none;
}

    .quotes-tabs .quotes-tab-btn.tab--needs-action.is-active i[b-8j2pdipncp] {
        color: #c084fc;
        filter: drop-shadow(0 0 4px rgba(168,85,247,0.55));
    }

/* Awaiting Response: indigo */
.quotes-tabs .quotes-tab-btn.tab--awaiting.is-active[b-8j2pdipncp] {
    color: #818cf8;
    border-top-color: #6366f1;
    background: var(--nq-card-bg);
    border-bottom-color: var(--nq-card-bg);
    box-shadow: none;
}

    .quotes-tabs .quotes-tab-btn.tab--awaiting.is-active i[b-8j2pdipncp] {
        color: #818cf8;
        filter: drop-shadow(0 0 4px rgba(99,102,241,0.55));
    }

/* Complete: green */
.quotes-tabs .quotes-tab-btn.tab--complete.is-active[b-8j2pdipncp] {
    color: #34d399;
    border-top-color: #10b981;
    background: var(--nq-card-bg);
    border-bottom-color: var(--nq-card-bg);
    box-shadow: none;
}

    .quotes-tabs .quotes-tab-btn.tab--complete.is-active i[b-8j2pdipncp] {
        color: #34d399;
        filter: drop-shadow(0 0 4px rgba(52,211,153,0.50));
    }

/* Active tab: gold (already set by base .is-active, just for clarity) */
.quotes-tabs .quotes-tab-btn.tab--active.is-active[b-8j2pdipncp] {
    color: var(--nq-accent);
    border-top-color: var(--nq-accent);
}

/* Inactive icon tints */
.quotes-tabs .quotes-tab-btn.tab--active:not(.is-active) i[b-8j2pdipncp] {
    color: rgba(241,184,40,0.50);
}

.quotes-tabs .quotes-tab-btn.tab--needs-action:not(.is-active) i[b-8j2pdipncp] {
    color: rgba(168,85,247,0.55);
}

.quotes-tabs .quotes-tab-btn.tab--awaiting:not(.is-active) i[b-8j2pdipncp] {
    color: rgba(99,102,241,0.55);
}

.quotes-tabs .quotes-tab-btn.tab--complete:not(.is-active) i[b-8j2pdipncp] {
    color: rgba(52,211,153,0.55);
}

/* ── Light mode per-tab active overrides ── */

[data-bs-theme="light"] .quotes-tabs .quotes-tab-btn.tab--active.is-active[b-8j2pdipncp] {
    color: #c98000;
    border-top-color: #c98000;
    background: var(--nq-card-bg);
    border-bottom-color: var(--nq-card-bg);
    box-shadow: none;
}

    [data-bs-theme="light"] .quotes-tabs .quotes-tab-btn.tab--active.is-active i[b-8j2pdipncp] {
        color: #c98000;
        filter: none;
    }

[data-bs-theme="light"] .quotes-tabs .quotes-tab-btn.tab--needs-action.is-active[b-8j2pdipncp] {
    color: #6d28d9;
    border-top-color: #7c3aed;
    background: var(--nq-card-bg);
    border-bottom-color: var(--nq-card-bg);
    box-shadow: none;
}

    [data-bs-theme="light"] .quotes-tabs .quotes-tab-btn.tab--needs-action.is-active i[b-8j2pdipncp] {
        color: #6d28d9;
        filter: none;
    }

[data-bs-theme="light"] .quotes-tabs .quotes-tab-btn.tab--awaiting.is-active[b-8j2pdipncp] {
    color: #4338ca;
    border-top-color: #4f46e5;
    background: var(--nq-card-bg);
    border-bottom-color: var(--nq-card-bg);
    box-shadow: none;
}

    [data-bs-theme="light"] .quotes-tabs .quotes-tab-btn.tab--awaiting.is-active i[b-8j2pdipncp] {
        color: #4338ca;
        filter: none;
    }

[data-bs-theme="light"] .quotes-tabs .quotes-tab-btn.tab--complete.is-active[b-8j2pdipncp] {
    color: #065f46;
    border-top-color: #10b981;
    background: var(--nq-card-bg);
    border-bottom-color: var(--nq-card-bg);
    box-shadow: none;
}

    [data-bs-theme="light"] .quotes-tabs .quotes-tab-btn.tab--complete.is-active i[b-8j2pdipncp] {
        color: #065f46;
        filter: none;
    }

[data-bs-theme="light"] .quotes-tabs .quotes-tab-btn.tab--active:not(.is-active) i[b-8j2pdipncp] {
    color: rgba(201,128,0,0.45);
}

[data-bs-theme="light"] .quotes-tabs .quotes-tab-btn.tab--needs-action:not(.is-active) i[b-8j2pdipncp] {
    color: rgba(124,58,237,0.45);
}

[data-bs-theme="light"] .quotes-tabs .quotes-tab-btn.tab--awaiting:not(.is-active) i[b-8j2pdipncp] {
    color: rgba(79,70,229,0.45);
}

[data-bs-theme="light"] .quotes-tabs .quotes-tab-btn.tab--complete:not(.is-active) i[b-8j2pdipncp] {
    color: rgba(16,185,129,0.50);
}

/* ── Tab badge ── */

.quotes-tab-badge[b-8j2pdipncp] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 18px;
    padding: 0 5px;
    border-radius: 999px;
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0;
    /* Default: purple — Needs Action */
    background: rgba(168,85,247,0.18);
    color: #c084fc;
    border: 1px solid rgba(168,85,247,0.32);
    transition: background 0.15s, color 0.15s;
}

/* Neutral count badge (Active / Complete tabs) — muted */
.quotes-tab-badge--count[b-8j2pdipncp] {
    background: rgba(255,255,255,0.07);
    color: var(--nq-muted);
    border-color: rgba(255,255,255,0.12);
}

/* Active-tab badge colours are driven by tab-specific classes on the button */

/* Active tab — Needs Action: purple stays */
.quotes-tab-btn.tab--needs-action.is-active .quotes-tab-badge[b-8j2pdipncp] {
    background: rgba(168,85,247,0.22);
    color: #c084fc;
    border-color: rgba(168,85,247,0.40);
}

/* Active tab — Awaiting Response: indigo */
.quotes-tab-btn.tab--awaiting.is-active .quotes-tab-badge[b-8j2pdipncp] {
    background: rgba(99,102,241,0.22);
    color: #818cf8;
    border-color: rgba(99,102,241,0.40);
}

/* Active tab — Active / Complete: gold */
.quotes-tab-btn.tab--active.is-active .quotes-tab-badge--count[b-8j2pdipncp],
.quotes-tab-btn.tab--complete.is-active .quotes-tab-badge--count[b-8j2pdipncp] {
    background: var(--nq-accent-dim);
    color: var(--nq-accent);
    border-color: var(--nq-accent-ring);
}

/* ── Light mode ── */
[data-bs-theme="light"] .quotes-tab-badge[b-8j2pdipncp] {
    background: rgba(124,58,237,0.10);
    color: #6d28d9;
    border-color: rgba(124,58,237,0.25);
}

[data-bs-theme="light"] .quotes-tab-badge--count[b-8j2pdipncp] {
    background: rgba(0,40,85,0.06);
    color: rgba(15,23,42,0.45);
    border-color: rgba(0,40,85,0.14);
}

[data-bs-theme="light"] .quotes-tab-btn.tab--needs-action.is-active .quotes-tab-badge[b-8j2pdipncp] {
    background: rgba(124,58,237,0.12);
    color: #6d28d9;
    border-color: rgba(124,58,237,0.28);
}

[data-bs-theme="light"] .quotes-tab-btn.tab--awaiting.is-active .quotes-tab-badge[b-8j2pdipncp] {
    background: rgba(79,70,229,0.12);
    color: #4338ca;
    border-color: rgba(79,70,229,0.28);
}

[data-bs-theme="light"] .quotes-tab-btn.tab--active.is-active .quotes-tab-badge--count[b-8j2pdipncp],
[data-bs-theme="light"] .quotes-tab-btn.tab--complete.is-active .quotes-tab-badge--count[b-8j2pdipncp] {
    background: rgba(201,128,0,0.12);
    color: #c98000;
    border-color: rgba(201,128,0,0.30);
}

@media (max-width: 575px) {
    .quotes-tab-btn[b-8j2pdipncp] {
        padding: 0.4rem 0.7rem;
        font-size: 0.68rem;
    }
}


/* ── QUOTES LIST — RESPONSIVE CARD GRID ──────────────────── */

.quotes-list[b-8j2pdipncp] {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 0.75rem;
    align-items: stretch;
}

@media (max-width: 1900px) {
    .quotes-list[b-8j2pdipncp] {
        grid-template-columns: repeat(5, minmax(0, 1fr));
    }
}

@media (max-width: 1600px) {
    .quotes-list[b-8j2pdipncp] {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@media (max-width: 1280px) {
    .quotes-list[b-8j2pdipncp] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 992px) {
    .quotes-list[b-8j2pdipncp] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .quotes-list[b-8j2pdipncp] {
        grid-template-columns: 1fr;
    }
}


/* ── QUOTE CARD ──────────────────────────────────────────── */

.quote-card[b-8j2pdipncp] {
    background: var(--nq-card-bg);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 10px;
    overflow: hidden;
    transition: background 0.18s, box-shadow 0.18s, border-color 0.18s, transform 0.15s;
    min-width: 0;
    display: flex;
    flex-direction: column;
    box-shadow: var(--nq-card-shadow);
}

    .quote-card:hover[b-8j2pdipncp] {
        border-color: var(--nq-accent-ring);
        box-shadow: 0 12px 40px rgba(0,0,0,0.70), 0 3px 10px rgba(0,0,0,0.45), 0 0 0 1px var(--nq-accent-dim), inset 0 1px 0 rgba(255,255,255,0.06);
        transform: translateY(-2px);
    }

[data-bs-theme="light"] .quote-card[b-8j2pdipncp] {
    border-color: rgba(0,40,85,0.10);
    box-shadow: var(--nq-card-shadow);
}

    [data-bs-theme="light"] .quote-card:hover[b-8j2pdipncp] {
        box-shadow: 0 8px 28px rgba(0,40,85,0.18), 0 2px 6px rgba(0,40,85,0.10), 0 0 0 1px var(--nq-accent-dim);
        transform: translateY(-2px);
    }

/* Needs-action subtle ring */
.quote-card.needs-action-card[b-8j2pdipncp] {
    border-color: var(--s-pending-bd);
    box-shadow: var(--nq-card-shadow), 0 0 0 1px rgba(168,85,247,0.15);
}

[data-bs-theme="light"] .quote-card.needs-action-card[b-8j2pdipncp] {
    box-shadow: var(--nq-card-shadow), 0 0 0 1px rgba(124,58,237,0.15);
}


/* ── STATUS STRIP ────────────────────────────────────────── */

.quote-status-strip[b-8j2pdipncp] {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    padding: 0.38rem 0.75rem 0.32rem;
    font-size: 0.67rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    user-select: none;
    transition: filter 0.14s;
    position: relative;
}

.qc-strip-top[b-8j2pdipncp] {
    display: flex;
    align-items: center;
    gap: 0.40rem;
    min-width: 0;
}

.qc-strip-bottom[b-8j2pdipncp] {
    display: flex;
    align-items: center;
    gap: 0.30rem;
    margin-top: 0.22rem;
    min-width: 0;
}

.quote-status-strip.is-clickable[b-8j2pdipncp] {
    cursor: pointer;
}

    .quote-status-strip.is-clickable:hover[b-8j2pdipncp] {
        filter: brightness(1.15);
    }

.quote-status-strip.is-locked[b-8j2pdipncp] {
    cursor: default;
}


/* ── STATUS COLORS — bolder, more saturated ──────────────── */

.quote-status-strip.status-open[b-8j2pdipncp] {
    background: linear-gradient(135deg, rgba(56,189,248,0.22) 0%, rgba(56,189,248,0.13) 100%);
    color: var(--s-open-fg);
    border-bottom: 2px solid var(--s-open-bd);
    border-left: 3px solid var(--s-open-fg);
}

.quote-status-strip.status-ordersubmitted[b-8j2pdipncp] {
    background: linear-gradient(135deg, rgba(251,191,36,0.24) 0%, rgba(251,191,36,0.14) 100%);
    color: var(--s-ordersubmitted-fg);
    border-bottom: 2px solid var(--s-ordersubmitted-bd);
    border-left: 3px solid var(--s-ordersubmitted-fg);
}

.quote-status-strip.status-lost[b-8j2pdipncp] {
    background: linear-gradient(135deg, rgba(239,68,68,0.22) 0%, rgba(239,68,68,0.13) 100%);
    color: var(--s-lost-fg);
    border-bottom: 2px solid var(--s-lost-bd);
    border-left: 3px solid var(--s-lost-fg);
}

.quote-status-strip.status-revise-order[b-8j2pdipncp] {
    background: linear-gradient(135deg, rgba(239,68,68,0.22) 0%, rgba(239,68,68,0.13) 100%);
    color: var(--s-lost-fg);
    border-bottom: 2px solid var(--s-lost-bd);
    border-left: 3px solid var(--s-lost-fg);
}

.quote-status-strip.status-ordered[b-8j2pdipncp] {
    background: linear-gradient(135deg, rgba(52,211,153,0.22) 0%, rgba(52,211,153,0.13) 100%);
    color: var(--s-ordered-fg);
    border-bottom: 2px solid var(--s-ordered-bd);
    border-left: 3px solid var(--s-ordered-fg);
}

.quote-status-strip.status-revise[b-8j2pdipncp] {
    background: linear-gradient(135deg, rgba(239,68,68,0.22) 0%, rgba(239,68,68,0.13) 100%);
    color: var(--s-revise-fg);
    border-bottom: 2px solid var(--s-revise-bd);
    border-left: 3px solid var(--s-revise-fg);
}

.quote-status-strip.status-revisequote[b-8j2pdipncp] {
    background: linear-gradient(135deg, rgba(251,146,60,0.22) 0%, rgba(251,146,60,0.13) 100%);
    color: var(--s-rq-fg);
    border-bottom: 2px solid var(--s-rq-bd);
    border-left: 3px solid var(--s-rq-fg);
}

.quote-status-strip.status-pending[b-8j2pdipncp] {
    background: linear-gradient(135deg, rgba(168,85,247,0.22) 0%, rgba(168,85,247,0.13) 100%);
    color: var(--s-pending-fg);
    border-bottom: 2px solid var(--s-pending-bd);
    border-left: 3px solid var(--s-pending-fg);
}

.quote-status-strip.status-ready[b-8j2pdipncp] {
    background: linear-gradient(135deg, rgba(20,184,166,0.22) 0%, rgba(20,184,166,0.13) 100%);
    color: var(--s-ready-fg);
    border-bottom: 2px solid var(--s-ready-bd);
    border-left: 3px solid var(--s-ready-fg);
}

/* Light mode — slightly richer strip backgrounds */
[data-bs-theme="light"] .quote-status-strip.status-open[b-8j2pdipncp] {
    background: linear-gradient(135deg, rgba(14,165,233,0.18) 0%, rgba(14,165,233,0.09) 100%);
    border-left-color: var(--s-open-fg);
}

[data-bs-theme="light"] .quote-status-strip.status-ordersubmitted[b-8j2pdipncp] {
    background: linear-gradient(135deg, rgba(217,119,6,0.18) 0%, rgba(217,119,6,0.09) 100%);
    border-left-color: var(--s-ordersubmitted-fg);
}

[data-bs-theme="light"] .quote-status-strip.status-lost[b-8j2pdipncp],
[data-bs-theme="light"] .quote-status-strip.status-revise[b-8j2pdipncp],
[data-bs-theme="light"] .quote-status-strip.status-revise-order[b-8j2pdipncp] {
    background: linear-gradient(135deg, rgba(239,68,68,0.16) 0%, rgba(239,68,68,0.08) 100%);
    border-left-color: var(--s-lost-fg);
}

[data-bs-theme="light"] .quote-status-strip.status-ordered[b-8j2pdipncp] {
    background: linear-gradient(135deg, rgba(16,185,129,0.16) 0%, rgba(16,185,129,0.08) 100%);
    border-left-color: var(--s-ordered-fg);
}

[data-bs-theme="light"] .quote-status-strip.status-revisequote[b-8j2pdipncp] {
    background: linear-gradient(135deg, rgba(234,88,12,0.16) 0%, rgba(234,88,12,0.08) 100%);
    border-left-color: var(--s-rq-fg);
}

[data-bs-theme="light"] .quote-status-strip.status-pending[b-8j2pdipncp] {
    background: linear-gradient(135deg, rgba(124,58,237,0.14) 0%, rgba(124,58,237,0.07) 100%);
    border-left-color: var(--s-pending-fg);
}

[data-bs-theme="light"] .quote-status-strip.status-ready[b-8j2pdipncp] {
    background: linear-gradient(135deg, rgba(13,148,136,0.16) 0%, rgba(13,148,136,0.08) 100%);
    border-left-color: var(--s-ready-fg);
}


/* ── STATUS INDICATOR — solid pill badge (not dot) ───────── */

.qc-status-dot[b-8j2pdipncp] {
    /* Repurposed: now a solid colored pill badge, not a circle dot */
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: currentColor;
    flex-shrink: 0;
    /* Strong glow ring applied below per-status */
}

/* Dark mode (default :root AND explicit [data-bs-theme="dark"]) */
:root .quote-status-strip.status-open .qc-status-dot[b-8j2pdipncp],
[data-bs-theme="dark"] .quote-status-strip.status-open .qc-status-dot[b-8j2pdipncp] {
    background: #38bdf8;
    box-shadow: 0 0 0 2px rgba(56,189,248,0.30), 0 0 10px 3px rgba(56,189,248,0.65);
}

:root .quote-status-strip.status-ordersubmitted .qc-status-dot[b-8j2pdipncp],
[data-bs-theme="dark"] .quote-status-strip.status-ordersubmitted .qc-status-dot[b-8j2pdipncp] {
    background: #fbbf24;
    box-shadow: 0 0 0 2px rgba(251,191,36,0.30), 0 0 10px 3px rgba(251,191,36,0.65);
}

:root .quote-status-strip.status-ordered .qc-status-dot[b-8j2pdipncp],
[data-bs-theme="dark"] .quote-status-strip.status-ordered .qc-status-dot[b-8j2pdipncp] {
    background: #34d399;
    box-shadow: 0 0 0 2px rgba(52,211,153,0.28), 0 0 10px 3px rgba(52,211,153,0.65);
}

:root .quote-status-strip.status-lost .qc-status-dot[b-8j2pdipncp],
:root .quote-status-strip.status-revise .qc-status-dot[b-8j2pdipncp],
:root .quote-status-strip.status-revise-order .qc-status-dot[b-8j2pdipncp],
[data-bs-theme="dark"] .quote-status-strip.status-lost .qc-status-dot[b-8j2pdipncp],
[data-bs-theme="dark"] .quote-status-strip.status-revise .qc-status-dot[b-8j2pdipncp],
[data-bs-theme="dark"] .quote-status-strip.status-revise-order .qc-status-dot[b-8j2pdipncp] {
    background: #f87171;
    box-shadow: 0 0 0 2px rgba(239,68,68,0.28), 0 0 10px 3px rgba(239,68,68,0.60);
}

:root .quote-status-strip.status-revisequote .qc-status-dot[b-8j2pdipncp],
[data-bs-theme="dark"] .quote-status-strip.status-revisequote .qc-status-dot[b-8j2pdipncp] {
    background: #fb923c;
    box-shadow: 0 0 0 2px rgba(251,146,60,0.28), 0 0 10px 3px rgba(251,146,60,0.65);
}

:root .quote-status-strip.status-pending .qc-status-dot[b-8j2pdipncp],
[data-bs-theme="dark"] .quote-status-strip.status-pending .qc-status-dot[b-8j2pdipncp] {
    background: #c084fc;
    box-shadow: 0 0 0 2px rgba(168,85,247,0.28), 0 0 10px 3px rgba(168,85,247,0.65);
}

:root .quote-status-strip.status-ready .qc-status-dot[b-8j2pdipncp],
[data-bs-theme="dark"] .quote-status-strip.status-ready .qc-status-dot[b-8j2pdipncp] {
    background: #2dd4bf;
    box-shadow: 0 0 0 2px rgba(20,184,166,0.28), 0 0 10px 3px rgba(20,184,166,0.65);
}

/* Light mode — solid color, soft shadow ring, no glow */
[data-bs-theme="light"] .qc-status-dot[b-8j2pdipncp] {
    box-shadow: 0 0 0 2px rgba(0,0,0,0.12), 0 1px 3px rgba(0,0,0,0.15);
}

[data-bs-theme="light"] .quote-status-strip.status-open .qc-status-dot[b-8j2pdipncp] {
    background: #0369a1;
}

[data-bs-theme="light"] .quote-status-strip.status-ordersubmitted .qc-status-dot[b-8j2pdipncp] {
    background: #b45309;
}

[data-bs-theme="light"] .quote-status-strip.status-ordered .qc-status-dot[b-8j2pdipncp] {
    background: #065f46;
}

[data-bs-theme="light"] .quote-status-strip.status-lost .qc-status-dot[b-8j2pdipncp],
[data-bs-theme="light"] .quote-status-strip.status-revise .qc-status-dot[b-8j2pdipncp],
[data-bs-theme="light"] .quote-status-strip.status-revise-order .qc-status-dot[b-8j2pdipncp] {
    background: #dc2626;
}

[data-bs-theme="light"] .quote-status-strip.status-revisequote .qc-status-dot[b-8j2pdipncp] {
    background: #c2410c;
}

[data-bs-theme="light"] .quote-status-strip.status-pending .qc-status-dot[b-8j2pdipncp] {
    background: #6d28d9;
}

[data-bs-theme="light"] .quote-status-strip.status-ready .qc-status-dot[b-8j2pdipncp] {
    background: #0f766e;
}


/* ── STATUS LABEL ────────────────────────────────────────── */

.qc-status-label[b-8j2pdipncp] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
    flex-shrink: 1;
}


/* ── IAC QUOTE NUMBER BADGE ──────────────────────────────── */

.qc-quote-badge[b-8j2pdipncp] {
    font-size: 0.57rem;
    font-weight: 800;
    letter-spacing: 0.01em;
    padding: 2px 7px;
    border-radius: 5px;
    white-space: nowrap;
    border: none;
    background: rgba(255,255,255,0.14);
    color: #fff;
}

[data-bs-theme="light"] .qc-quote-badge[b-8j2pdipncp] {
    background: rgba(0,0,0,0.10);
    color: #1a2a3a;
}

.quote-status-strip.status-open .qc-quote-badge[b-8j2pdipncp] {
    background: var(--s-open-badge);
    color: var(--s-open-badge-fg);
}

.quote-status-strip.status-ordersubmitted .qc-quote-badge[b-8j2pdipncp] {
    background: var(--s-ordersubmitted-badge);
    color: var(--s-ordersubmitted-badge-fg);
}

.quote-status-strip.status-ordered .qc-quote-badge[b-8j2pdipncp] {
    background: var(--s-ordered-badge);
    color: var(--s-ordered-badge-fg);
}

.quote-status-strip.status-lost .qc-quote-badge[b-8j2pdipncp],
.quote-status-strip.status-revise .qc-quote-badge[b-8j2pdipncp],
.quote-status-strip.status-revise-order .qc-quote-badge[b-8j2pdipncp] {
    background: var(--s-lost-badge);
    color: var(--s-lost-badge-fg);
}

.quote-status-strip.status-revisequote .qc-quote-badge[b-8j2pdipncp] {
    background: var(--s-rq-badge);
    color: var(--s-rq-badge-fg);
}

.quote-status-strip.status-pending .qc-quote-badge[b-8j2pdipncp] {
    background: var(--s-pending-badge);
    color: var(--s-pending-badge-fg);
}

.quote-status-strip.status-ready .qc-quote-badge[b-8j2pdipncp] {
    background: var(--s-ready-badge);
    color: var(--s-ready-badge-fg);
}


/* ── REV BADGE ───────────────────────────────────────────── */

.qc-rev-badge[b-8j2pdipncp] {
    font-size: 0.57rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    padding: 1px 6px;
    border-radius: 20px;
    white-space: nowrap;
    background: transparent;
    border: 1.5px dashed rgba(255,255,255,0.35);
    color: rgba(255,255,255,0.65);
}

[data-bs-theme="light"] .qc-rev-badge[b-8j2pdipncp] {
    border-color: rgba(0,0,0,0.22);
    color: rgba(0,0,0,0.52);
}

.quote-status-strip.status-open .qc-rev-badge[b-8j2pdipncp] {
    border-color: var(--s-open-bd);
    color: var(--s-open-fg);
}

.quote-status-strip.status-ordersubmitted .qc-rev-badge[b-8j2pdipncp] {
    border-color: var(--s-ordersubmitted-bd);
    color: var(--s-ordersubmitted-fg);
}

.quote-status-strip.status-ordered .qc-rev-badge[b-8j2pdipncp] {
    border-color: var(--s-ordered-bd);
    color: var(--s-ordered-fg);
}

.quote-status-strip.status-lost .qc-rev-badge[b-8j2pdipncp],
.quote-status-strip.status-revise .qc-rev-badge[b-8j2pdipncp],
.quote-status-strip.status-revise-order .qc-rev-badge[b-8j2pdipncp] {
    border-color: var(--s-lost-bd);
    color: var(--s-lost-fg);
}

.quote-status-strip.status-revisequote .qc-rev-badge[b-8j2pdipncp] {
    border-color: var(--s-rq-bd);
    color: var(--s-rq-fg);
}

.quote-status-strip.status-pending .qc-rev-badge[b-8j2pdipncp] {
    border-color: var(--s-pending-bd);
    color: var(--s-pending-fg);
}

.quote-status-strip.status-ready .qc-rev-badge[b-8j2pdipncp] {
    border-color: var(--s-ready-bd);
    color: var(--s-ready-fg);
}


/* ── CARD BODY ───────────────────────────────────────────── */

.quote-card-body[b-8j2pdipncp] {
    padding: 0.65rem 0.85rem 0.65rem;
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
    flex: 1;
}


/* ── REVISION BANNER ─────────────────────────────────────── */

.qc-revise-banner[b-8j2pdipncp] {
    display: flex;
    align-items: center;
    padding: 0.15rem 0 0.05rem;
}

.qc-revise-info-btn[b-8j2pdipncp] {
    text-decoration: none !important;
    color: inherit !important;
    font-size: 0.80rem;
    line-height: 1;
    opacity: 0.80;
    transition: opacity 0.12s;
    padding: 0 !important;
    background: none !important;
    border: none !important;
}

    .qc-revise-info-btn:hover[b-8j2pdipncp] {
        opacity: 1;
    }

.qc-revise-review-btn[b-8j2pdipncp] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 4px 11px;
    border-radius: 6px;
    font-size: 0.70rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    cursor: pointer;
    border: 1.5px solid transparent;
    transition: background 0.13s, color 0.13s, border-color 0.13s, transform 0.11s;
    white-space: nowrap;
    background: none;
    line-height: 1.3;
}

    .qc-revise-review-btn:hover[b-8j2pdipncp] {
        transform: translateY(-1px);
    }

    .qc-revise-review-btn:active[b-8j2pdipncp] {
        transform: translateY(0);
    }

.qc-revise-review-btn--std[b-8j2pdipncp] {
    background: rgba(239,68,68,0.10);
    color: var(--s-revise-fg);
    border-color: var(--s-revise-bd);
}

    .qc-revise-review-btn--std:hover[b-8j2pdipncp] {
        background: rgba(239,68,68,0.18);
        border-color: rgba(239,68,68,0.45);
    }

.qc-revise-review-btn--rfq[b-8j2pdipncp] {
    background: rgba(251,146,60,0.10);
    color: var(--s-rq-fg);
    border-color: var(--s-rq-bd);
}

    .qc-revise-review-btn--rfq:hover[b-8j2pdipncp] {
        background: rgba(251,146,60,0.18);
        border-color: rgba(251,146,60,0.45);
    }

[data-bs-theme="light"] .qc-revise-review-btn--std[b-8j2pdipncp] {
    background: rgba(239,68,68,0.07);
    color: #dc2626;
    border-color: rgba(239,68,68,0.25);
}

    [data-bs-theme="light"] .qc-revise-review-btn--std:hover[b-8j2pdipncp] {
        background: rgba(239,68,68,0.13);
        border-color: rgba(239,68,68,0.40);
        color: #b91c1c;
    }

[data-bs-theme="light"] .qc-revise-review-btn--rfq[b-8j2pdipncp] {
    background: rgba(234,88,12,0.08);
    color: #c2410c;
    border-color: rgba(234,88,12,0.28);
}

    [data-bs-theme="light"] .qc-revise-review-btn--rfq:hover[b-8j2pdipncp] {
        background: rgba(234,88,12,0.15);
        border-color: rgba(234,88,12,0.42);
        color: #9a3412;
    }


/* ── PROJECT ROW ─────────────────────────────────────────── */

.qc-project-row[b-8j2pdipncp] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
}

.qc-project-block[b-8j2pdipncp] {
    display: flex;
    flex-direction: column;
    gap: 0.08rem;
    flex: 1;
    min-width: 0;
}

/* Price badge inline with project name */
.quote-price.qc-price-inline[b-8j2pdipncp] {
    flex-shrink: 0;
    margin-left: auto;
    font-size: 0.78rem;
}

.qc-project-name[b-8j2pdipncp] {
    font-size: 0.88rem;
    font-weight: 700;
    color: var(--nq-fg);
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}


/* ── FIELD LABEL ─────────────────────────────────────────── */

.qc-field-label[b-8j2pdipncp] {
    font-size: 0.57rem;
    font-weight: 900;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    color: var(--nq-muted);
}


/* ── INFO GROUPS ─────────────────────────────────────────── */

.qc-info-groups[b-8j2pdipncp] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.qc-info-group[b-8j2pdipncp] {
    display: flex;
    flex-direction: column;
    gap: 0.18rem;
}


/* ── CHIPS ───────────────────────────────────────────────── */

.qc-chips-row[b-8j2pdipncp] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.28rem;
}

.qc-chip[b-8j2pdipncp] {
    display: inline-flex;
    align-items: center;
    gap: 0.22rem;
    padding: 2px 7px;
    border-radius: 20px;
    font-size: 0.70rem;
    font-weight: 600;
    background: var(--nq-chip-bg);
    color: var(--nq-fg);
    border: 1px solid var(--nq-border);
    white-space: nowrap;
}

.qc-chip--company[b-8j2pdipncp] {
    background: rgba(148,163,184,0.10);
    color: #94a3b8;
    border-color: rgba(148,163,184,0.22);
}

[data-bs-theme="light"] .qc-chip--company[b-8j2pdipncp] {
    background: rgba(100,116,139,0.09);
    color: #475569;
    border-color: rgba(100,116,139,0.22);
}

.qc-chip--contact[b-8j2pdipncp] {
    background: rgba(161,161,170,0.09);
    color: #a1a1aa;
    border-color: rgba(161,161,170,0.20);
}

[data-bs-theme="light"] .qc-chip--contact[b-8j2pdipncp] {
    background: rgba(113,113,122,0.08);
    color: #52525b;
    border-color: rgba(113,113,122,0.20);
}

.qc-chip--phone[b-8j2pdipncp],
.qc-chip--email[b-8j2pdipncp] {
    background: rgba(96,165,250,0.08);
    color: #7eb8f7;
    border-color: rgba(96,165,250,0.28);
    border-style: dashed;
    text-decoration: none;
    transition: background 0.14s, color 0.14s, border-color 0.14s;
}

    .qc-chip--phone:hover[b-8j2pdipncp],
    .qc-chip--email:hover[b-8j2pdipncp] {
        background: rgba(96,165,250,0.15);
        color: #bfdbfe;
        border-color: rgba(96,165,250,0.50);
    }

[data-bs-theme="light"] .qc-chip--phone[b-8j2pdipncp],
[data-bs-theme="light"] .qc-chip--email[b-8j2pdipncp] {
    background: rgba(59,130,246,0.07);
    color: #1d4ed8;
    border-color: rgba(59,130,246,0.25);
}

    [data-bs-theme="light"] .qc-chip--phone:hover[b-8j2pdipncp],
    [data-bs-theme="light"] .qc-chip--email:hover[b-8j2pdipncp] {
        background: rgba(59,130,246,0.13);
        color: #1e40af;
        border-color: rgba(59,130,246,0.40);
    }

.qc-chip--rep[b-8j2pdipncp] {
    background: rgba(113,128,150,0.10);
    color: #a0aec0;
    border-color: rgba(113,128,150,0.22);
}

[data-bs-theme="light"] .qc-chip--rep[b-8j2pdipncp] {
    background: rgba(71,85,105,0.08);
    color: #475569;
    border-color: rgba(71,85,105,0.20);
}

.qc-chip--same[b-8j2pdipncp] {
    opacity: 0.70;
    font-style: italic;
}


/* ── FOOTER ROW ──────────────────────────────────────────── */

.qc-footer-row[b-8j2pdipncp] {
    display: flex;
    flex-direction: column;
    gap: 0.4rem;
    padding-top: 0.45rem;
    border-top: 1px solid var(--nq-border);
    margin-top: auto;
}

/* Dates sit side-by-side on one line */
.qc-dates-block[b-8j2pdipncp] {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.55rem;
}

.qc-date[b-8j2pdipncp] {
    display: inline-flex;
    align-items: center;
    gap: 0.28rem;
    font-size: 0.67rem;
    color: var(--nq-muted);
    white-space: nowrap;
}

.qc-date-label[b-8j2pdipncp] {
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    font-size: 0.60rem;
}

/* Updated date gets a subtle accent tint to distinguish it */
.qc-date--updated[b-8j2pdipncp] {
    color: rgba(241, 184, 40, 0.65);
}

[data-bs-theme="light"] .qc-date--updated[b-8j2pdipncp] {
    color: rgba(180, 83, 9, 0.70);
}

/* Separator dot between the two dates */
.qc-dates-block .qc-date + .qc-date[b-8j2pdipncp]::before {
    content: "\00B7";
    color: var(--nq-muted);
    opacity: 0.55;
    margin-right: 0.15rem;
    font-size: 0.80rem;
    line-height: 1;
}

/* Buttons row sits below dates, left-aligned */
.qc-actions-row[b-8j2pdipncp] {
    display: flex;
    align-items: center;
    gap: 0.28rem;
    flex-wrap: wrap;
}

.quote-price[b-8j2pdipncp] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.82rem;
    font-weight: 900;
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.02em;
    white-space: nowrap;
    /* Money badge */
    background: rgba(16,185,129,0.16);
    color: #34d399;
    border: 1px solid rgba(52,211,153,0.30);
    border-radius: 7px;
    padding: 3px 10px;
    box-shadow: 0 0 0 1px rgba(52,211,153,0.10), 0 2px 8px rgba(16,185,129,0.20), inset 0 1px 0 rgba(255,255,255,0.05);
}

    .quote-price[b-8j2pdipncp]::before {
        content: "💰";
        font-size: 0.72rem;
        line-height: 1;
        flex-shrink: 0;
    }

[data-bs-theme="light"] .quote-price[b-8j2pdipncp] {
    background: rgba(16,185,129,0.10);
    color: #065f46;
    border-color: rgba(16,185,129,0.25);
    box-shadow: 0 2px 6px rgba(16,185,129,0.15), inset 0 1px 0 rgba(255,255,255,0.60);
}


/* ── ACTION BUTTONS ──────────────────────────────────────── */

.quote-actions[b-8j2pdipncp] {
    display: flex;
    align-items: center;
    gap: 0.28rem;
    flex-shrink: 0;
}

.action-btn[b-8j2pdipncp] {
    width: 30px;
    height: 30px;
    border-radius: 7px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.85rem;
    border: 1px solid rgba(255,255,255,0.11);
    background: rgba(255,255,255,0.06);
    color: rgba(255,255,255,0.55);
    cursor: pointer;
    text-decoration: none;
    transition: background 0.14s, color 0.14s, border-color 0.14s, transform 0.12s, box-shadow 0.14s;
    padding: 0;
    flex-shrink: 0;
    box-shadow: 0 1px 3px rgba(0,0,0,0.25), inset 0 1px 0 rgba(255,255,255,0.06);
}

    .action-btn:hover[b-8j2pdipncp] {
        background: var(--nq-accent-dim);
        color: var(--nq-accent);
        border-color: var(--nq-accent-ring);
        transform: translateY(-1px);
        box-shadow: 0 3px 10px rgba(241,184,40,0.18), inset 0 1px 0 rgba(255,255,255,0.06);
    }

    .action-btn:active[b-8j2pdipncp] {
        transform: translateY(0);
        box-shadow: 0 1px 2px rgba(0,0,0,0.20);
    }

    .action-btn.edit:hover[b-8j2pdipncp] {
        background: rgba(34,197,94,0.12);
        color: #4ade80;
        border-color: rgba(34,197,94,0.28);
        box-shadow: 0 3px 10px rgba(34,197,94,0.15);
    }

    .action-btn.submittal:hover[b-8j2pdipncp] {
        background: rgba(99,102,241,0.12);
        color: #a5b4fc;
        border-color: rgba(99,102,241,0.28);
        box-shadow: 0 3px 10px rgba(99,102,241,0.15);
    }

    .action-btn.pipedrive[b-8j2pdipncp] {
        padding: 4px;
    }

        .action-btn.pipedrive img[b-8j2pdipncp] {
            width: 18px;
            height: 18px;
            object-fit: contain;
            border-radius: 3px;
        }

    .action-btn.more[b-8j2pdipncp] {
        font-size: 0.92rem;
    }

    .action-btn.po-pdf:hover[b-8j2pdipncp] {
        background: var(--nq-accent-dim);
        color: var(--nq-accent);
        border-color: var(--nq-accent-ring);
        box-shadow: 0 3px 10px rgba(241,184,40,0.18);
    }

[data-bs-theme="light"] .action-btn[b-8j2pdipncp] {
    border-color: rgba(0,40,85,0.14);
    background: rgba(0,40,85,0.04);
    color: rgba(15,23,42,0.50);
    box-shadow: 0 1px 3px rgba(0,40,85,0.10), inset 0 1px 0 rgba(255,255,255,0.80);
}

    [data-bs-theme="light"] .action-btn:hover[b-8j2pdipncp] {
        background: var(--nq-accent-dim);
        color: var(--nq-accent);
        border-color: var(--nq-accent-ring);
        box-shadow: 0 2px 8px rgba(201,128,0,0.14);
    }

    [data-bs-theme="light"] .action-btn.edit:hover[b-8j2pdipncp] {
        background: rgba(16,185,129,0.09);
        color: #065f46;
        border-color: rgba(16,185,129,0.25);
        box-shadow: 0 2px 8px rgba(16,185,129,0.12);
    }


/* ── PDF SPLIT-BUTTON ────────────────────────────────────── */

.pdf-split-wrap[b-8j2pdipncp] {
    display: inline-flex;
    position: relative;
}

.action-btn.pdf-split[b-8j2pdipncp] {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    width: auto;
    padding: 0 8px;
}

    .action-btn.pdf-split:hover[b-8j2pdipncp] {
        background: rgba(239,68,68,0.13);
        color: #f87171;
        border-color: rgba(239,68,68,0.30);
        box-shadow: 0 3px 10px rgba(239,68,68,0.14);
    }

[data-bs-theme="light"] .action-btn.pdf-split:hover[b-8j2pdipncp] {
    background: rgba(220,53,69,0.08);
    color: #dc2626;
    border-color: rgba(220,53,69,0.26);
    box-shadow: 0 2px 8px rgba(220,53,69,0.10);
}

.pdf-split__caret[b-8j2pdipncp] {
    font-size: 0.6rem;
    opacity: 0.65;
    margin-top: 1px;
}

.pdf-split-menu[b-8j2pdipncp] {
    min-width: 190px;
    padding: 5px 0;
    border: 1px solid rgba(255,255,255,0.14);
    background: #1e2840;
    border-radius: 10px;
    box-shadow: 0 12px 36px rgba(0,0,0,0.55), 0 2px 8px rgba(0,0,0,0.35);
    overflow: hidden;
}

[data-bs-theme="light"] .pdf-split-menu[b-8j2pdipncp] {
    background: #ffffff;
    border-color: rgba(0,40,85,0.14);
    box-shadow: 0 10px 30px rgba(0,40,85,0.18), 0 2px 6px rgba(0,40,85,0.10);
}

.pdf-split-menu__header[b-8j2pdipncp] {
    font-size: 0.64rem;
    font-weight: 800;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.35);
    padding: 7px 14px 5px;
    pointer-events: none;
    user-select: none;
    border-bottom: 1px solid rgba(255,255,255,0.07);
    margin-bottom: 3px;
}

[data-bs-theme="light"] .pdf-split-menu__header[b-8j2pdipncp] {
    color: rgba(15,23,42,0.40);
    border-bottom-color: rgba(0,40,85,0.08);
}

.pdf-split-menu__item[b-8j2pdipncp] {
    display: flex;
    align-items: center;
    gap: 9px;
    font-size: 0.82rem;
    font-weight: 600;
    color: rgba(255,255,255,0.82);
    padding: 8px 14px;
    transition: background 0.12s, color 0.12s;
    cursor: pointer;
}

    .pdf-split-menu__item:hover[b-8j2pdipncp] {
        background: rgba(239,68,68,0.14);
        color: #fca5a5;
    }

    .pdf-split-menu__item i[b-8j2pdipncp] {
        font-size: 0.88rem;
        opacity: 0.80;
        flex-shrink: 0;
    }

[data-bs-theme="light"] .pdf-split-menu__item[b-8j2pdipncp] {
    color: #1a2a3a;
}

    [data-bs-theme="light"] .pdf-split-menu__item:hover[b-8j2pdipncp] {
        background: rgba(220,53,69,0.08);
        color: #b91c1c;
    }

.pdf-split-menu__item--disabled[b-8j2pdipncp] {
    opacity: 0.45;
    cursor: default;
    pointer-events: none;
}

.pdf-split-menu__badge[b-8j2pdipncp] {
    margin-left: auto;
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    padding: 2px 6px;
    border-radius: 999px;
    background: var(--nq-accent-dim);
    color: var(--nq-accent);
    border: 1px solid var(--nq-accent-ring);
    white-space: nowrap;
}

.pdf-split-menu__item--po[b-8j2pdipncp] {
    color: var(--nq-accent) !important;
}

    .pdf-split-menu__item--po:hover[b-8j2pdipncp] {
        background: var(--nq-accent-dim) !important;
    }

[data-bs-theme="light"] .pdf-split-menu__item--po[b-8j2pdipncp] {
    color: #c98000 !important;
}

    [data-bs-theme="light"] .pdf-split-menu__item--po:hover[b-8j2pdipncp] {
        background: rgba(201,128,0,0.09) !important;
        color: #7a5000 !important;
    }

.action-btn.pdf-split.action-btn--more:hover[b-8j2pdipncp] {
    background: rgba(99,102,241,0.10);
    color: #818cf8;
    border-color: rgba(99,102,241,0.22);
}

[data-bs-theme="light"] .action-btn.pdf-split.action-btn--more:hover[b-8j2pdipncp] {
    background: rgba(79,70,229,0.08);
    color: #4338ca;
    border-color: rgba(79,70,229,0.22);
}


/* ── MODAL BACKDROP & WRAP ───────────────────────────────── */

.nq-modal-backdrop[b-8j2pdipncp] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.60);
    z-index: 1049;
    animation: nqFadeIn-b-8j2pdipncp 0.18s ease;
}

[data-bs-theme="light"] .nq-modal-backdrop[b-8j2pdipncp] {
    background: rgba(15,23,42,0.45);
}

.nq-modal-wrap[b-8j2pdipncp] {
    position: fixed;
    inset: 0;
    z-index: 1050;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    pointer-events: none;
}

@keyframes nqFadeIn-b-8j2pdipncp {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes nqSlideIn-b-8j2pdipncp {
    from {
        opacity: 0;
        transform: translateY(-12px) scale(0.98);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}


/* ── MODAL ───────────────────────────────────────────────── */

.nq-modal[b-8j2pdipncp] {
    pointer-events: all;
    background: #1a2236;
    border: 1px solid var(--nq-border);
    border-top: 3px solid var(--nq-accent);
    border-radius: 14px;
    box-shadow: 0 24px 64px rgba(0,0,0,0.55);
    width: 100%;
    max-width: 420px;
    animation: nqSlideIn-b-8j2pdipncp 0.22s ease;
}

[data-bs-theme="light"] .nq-modal[b-8j2pdipncp] {
    background: #ffffff;
    border-color: rgba(0,40,85,0.10);
    border-top-color: var(--nq-accent);
    box-shadow: 0 20px 50px rgba(2,6,23,0.18);
}

.nq-modal-header[b-8j2pdipncp] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.85rem 1rem 0.75rem;
    border-bottom: 1px solid rgba(255,255,255,0.07);
}

[data-bs-theme="light"] .nq-modal-header[b-8j2pdipncp] {
    border-bottom-color: rgba(0,40,85,0.08);
}

.nq-modal-icon[b-8j2pdipncp] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 8px;
    background: var(--nq-accent-dim);
    color: var(--nq-accent);
    font-size: 0.85rem;
    flex-shrink: 0;
}

.nq-modal-title[b-8j2pdipncp] {
    font-size: 0.80rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.90);
    flex: 1;
}

[data-bs-theme="light"] .nq-modal-title[b-8j2pdipncp] {
    color: #0f172a;
}

.nq-modal-close[b-8j2pdipncp] {
    width: 28px;
    height: 28px;
    border-radius: 7px;
    border: 1px solid var(--nq-border);
    background: var(--nq-chip-bg);
    color: var(--nq-muted);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    cursor: pointer;
    transition: background 0.13s, color 0.13s;
    padding: 0;
    flex-shrink: 0;
}

    .nq-modal-close:hover[b-8j2pdipncp] {
        background: rgba(239,68,68,0.12);
        border-color: rgba(239,68,68,0.25);
        color: #f87171;
    }

[data-bs-theme="light"] .nq-modal-close:hover[b-8j2pdipncp] {
    background: rgba(239,68,68,0.08);
    border-color: rgba(239,68,68,0.20);
    color: #dc2626;
}

.nq-modal-body[b-8j2pdipncp] {
    padding: 1.25rem 1.25rem 0.75rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.65rem;
}

.nq-status-flow[b-8j2pdipncp] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    width: 100%;
    justify-content: center;
}

.nq-status-pill[b-8j2pdipncp] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 5px 13px;
    border-radius: 20px;
    font-size: 0.70rem;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    border: 1px solid var(--nq-border);
    background: var(--nq-chip-bg);
    color: var(--nq-muted);
    white-space: nowrap;
}

/* FROM pill mirrors strip token colors */
.nq-status-from.status-open[b-8j2pdipncp] {
    background: var(--s-open-bg);
    color: var(--s-open-fg);
    border-color: var(--s-open-bd);
}

.nq-status-from.status-ordersubmitted[b-8j2pdipncp] {
    background: var(--s-ordersubmitted-bg);
    color: var(--s-ordersubmitted-fg);
    border-color: var(--s-ordersubmitted-bd);
}

.nq-status-from.status-ordered[b-8j2pdipncp] {
    background: var(--s-ordered-bg);
    color: var(--s-ordered-fg);
    border-color: var(--s-ordered-bd);
}

.nq-status-from.status-lost[b-8j2pdipncp],
.nq-status-from.status-revise[b-8j2pdipncp],
.nq-status-from.status-revise-order[b-8j2pdipncp] {
    background: var(--s-lost-bg);
    color: var(--s-lost-fg);
    border-color: var(--s-lost-bd);
}

.nq-status-from.status-revisequote[b-8j2pdipncp] {
    background: var(--s-rq-bg);
    color: var(--s-rq-fg);
    border-color: var(--s-rq-bd);
}

.nq-status-from.status-pending[b-8j2pdipncp] {
    background: var(--s-pending-bg);
    color: var(--s-pending-fg);
    border-color: var(--s-pending-bd);
}

.nq-status-from.status-ready[b-8j2pdipncp] {
    background: var(--s-ready-bg);
    color: var(--s-ready-fg);
    border-color: var(--s-ready-bd);
}

/* TO pill always red */
.nq-status-to[b-8j2pdipncp] {
    background: rgba(220,53,69,0.14);
    color: #dc3545;
    border-color: rgba(220,53,69,0.34);
}

[data-bs-theme="light"] .nq-status-to[b-8j2pdipncp] {
    background: rgba(220,53,69,0.10);
    color: #b91c1c;
    border-color: rgba(220,53,69,0.28);
}

.nq-status-pill-dot[b-8j2pdipncp] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
    flex-shrink: 0;
}

.nq-status-arrow[b-8j2pdipncp] {
    color: var(--nq-muted);
    font-size: 0.80rem;
    flex-shrink: 0;
}

.nq-modal-hint[b-8j2pdipncp] {
    font-size: 0.70rem;
    color: var(--nq-muted);
    margin: 0;
    text-align: center;
}

.nq-modal-footer[b-8j2pdipncp] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.75rem 1.25rem 1rem;
    justify-content: flex-end;
    border-top: 1px solid rgba(255,255,255,0.06);
}

[data-bs-theme="light"] .nq-modal-footer[b-8j2pdipncp] {
    border-top-color: rgba(0,40,85,0.08);
}

.nq-btn[b-8j2pdipncp] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 8px 18px;
    border-radius: 8px;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    cursor: pointer;
    border: 1px solid transparent;
    transition: filter 0.13s, transform 0.11s, background 0.13s, box-shadow 0.13s;
    white-space: nowrap;
}

    .nq-btn:hover[b-8j2pdipncp] {
        transform: translateY(-1px);
    }

    .nq-btn:active[b-8j2pdipncp] {
        transform: translateY(0);
        filter: brightness(0.94);
    }

.nq-btn-cancel[b-8j2pdipncp] {
    background: rgba(255,255,255,0.07);
    color: rgba(255,255,255,0.60);
    border-color: rgba(255,255,255,0.12);
    box-shadow: 0 1px 3px rgba(0,0,0,0.25), inset 0 1px 0 rgba(255,255,255,0.06);
}

    .nq-btn-cancel:hover[b-8j2pdipncp] {
        background: rgba(239,68,68,0.12);
        color: #f87171;
        border-color: rgba(239,68,68,0.28);
        box-shadow: 0 3px 10px rgba(239,68,68,0.15);
    }

[data-bs-theme="light"] .nq-btn-cancel[b-8j2pdipncp] {
    background: rgba(0,40,85,0.05);
    color: rgba(15,23,42,0.55);
    border-color: rgba(0,40,85,0.14);
    box-shadow: 0 1px 3px rgba(0,40,85,0.10), inset 0 1px 0 rgba(255,255,255,0.80);
}

    [data-bs-theme="light"] .nq-btn-cancel:hover[b-8j2pdipncp] {
        background: rgba(239,68,68,0.08);
        color: #dc2626;
        border-color: rgba(239,68,68,0.22);
        box-shadow: 0 2px 8px rgba(239,68,68,0.12);
    }

.nq-btn-confirm[b-8j2pdipncp] {
    background: #16a34a;
    color: #ffffff;
    border: 1px solid rgba(34,197,94,0.55);
    box-shadow: 0 0 0 1px rgba(22,163,74,0.20), 0 3px 14px rgba(22,163,74,0.45), inset 0 1px 0 rgba(255,255,255,0.18);
}

    .nq-btn-confirm:hover[b-8j2pdipncp] {
        background: #15803d;
        border-color: rgba(34,197,94,0.65);
        box-shadow: 0 0 0 1px rgba(22,163,74,0.30), 0 5px 20px rgba(22,163,74,0.55), inset 0 1px 0 rgba(255,255,255,0.18);
        filter: brightness(1.08);
    }

[data-bs-theme="light"] .nq-btn-confirm[b-8j2pdipncp] {
    background: #15803d;
    border-color: rgba(22,163,74,0.45);
    box-shadow: 0 2px 10px rgba(22,163,74,0.30), inset 0 1px 0 rgba(255,255,255,0.20);
}


/* ── REVISE REQUEST MODAL ────────────────────────────────── */

.revise-request-modal[b-8j2pdipncp] {
    max-width: 480px;
}

.revise-modal-body[b-8j2pdipncp] {
    padding: 1.1rem 1.25rem 0.9rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.revise-modal-loading[b-8j2pdipncp] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    font-size: 0.80rem;
    color: var(--nq-muted);
    padding: 0.5rem 0;
}

.revise-modal-spinner[b-8j2pdipncp] {
    width: 16px;
    height: 16px;
    border: 2px solid var(--nq-border);
    border-top-color: var(--nq-accent);
    border-radius: 50%;
    animation: reviseSpinAnim-b-8j2pdipncp 0.7s linear infinite;
    flex-shrink: 0;
}

@keyframes reviseSpinAnim-b-8j2pdipncp {
    to {
        transform: rotate(360deg);
    }
}

.revise-modal-note-box[b-8j2pdipncp] {
    border-radius: 10px;
    padding: 0.75rem 1rem;
    border: 1px solid var(--nq-border);
    background: var(--nq-chip-bg);
}

.revise-modal-note-box--std[b-8j2pdipncp] {
    border-color: var(--s-revise-bd);
    background: var(--s-revise-bg);
}

.revise-modal-note-box--rfq[b-8j2pdipncp] {
    border-color: var(--s-rq-bd);
    background: var(--s-rq-bg);
}

.revise-modal-note-label[b-8j2pdipncp] {
    font-size: 0.65rem;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    margin-bottom: 0.4rem;
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.revise-modal-note-box--std .revise-modal-note-label[b-8j2pdipncp] {
    color: var(--s-revise-fg);
}

.revise-modal-note-box--rfq .revise-modal-note-label[b-8j2pdipncp] {
    color: var(--s-rq-fg);
}

.revise-modal-note-text[b-8j2pdipncp] {
    font-size: 0.82rem;
    color: var(--nq-fg);
    line-height: 1.55;
    white-space: pre-wrap;
}

.revise-modal-reviewer[b-8j2pdipncp] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.75rem;
}

.revise-modal-reviewer-label[b-8j2pdipncp] {
    color: var(--nq-muted);
    display: flex;
    align-items: center;
    gap: 0.28rem;
    flex-shrink: 0;
}

.revise-modal-reviewer-name[b-8j2pdipncp] {
    font-weight: 700;
    color: var(--nq-fg);
}

.revise-icon--std[b-8j2pdipncp] {
    background: var(--s-revise-bg);
    color: var(--s-revise-fg);
}

.revise-icon--rfq[b-8j2pdipncp] {
    background: var(--s-rq-bg);
    color: var(--s-rq-fg);
}

.revise-modal-footer-wrap[b-8j2pdipncp] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.75rem 1.25rem 1rem;
    justify-content: flex-end;
    border-top: 1px solid var(--nq-border);
    flex-wrap: wrap;
}

[data-bs-theme="light"] .revise-modal-footer-wrap[b-8j2pdipncp] {
    border-top-color: rgba(0,40,85,0.08);
}

.nq-btn-load[b-8j2pdipncp] {
    background: var(--nq-accent);
    color: #1a1200;
    border-color: transparent;
    box-shadow: 0 3px 10px rgba(241,184,40,0.30), inset 0 1px 0 rgba(255,255,255,0.22);
}

    .nq-btn-load:hover[b-8j2pdipncp] {
        background: #f7ca4a;
        box-shadow: 0 5px 16px rgba(241,184,40,0.42), inset 0 1px 0 rgba(255,255,255,0.22);
    }


/* ── MISC ────────────────────────────────────────────────── */

.page-stripe[b-8j2pdipncp] {
    height: 3px;
    background: linear-gradient(90deg, var(--nq-accent) 0%, transparent 100%);
    opacity: 0.18;
}
/* _content/NoiseLockQuoteTool/Pages/Doors.razor.rz.scp.css */
/* =============================================================
   DOORS.RAZOR — COMPONENT STYLESHEET  (scoped)
   Font: DIN 2014 / DIN Pro throughout
   IAC Brand: Navy #002855 · Gold #F1B828 · Green #1a7a4a
   NOTE: Modal styles have been moved to modals.css (global)
         because Bootstrap modals render outside the component tree.
   =============================================================*/

/* =============================================================
   DOORS.RAZOR — COMPLETE PAGE STYLESHEET  (v2 — all fixes)
   Font: DIN 2014 / DIN Pro throughout
   IAC Brand: Navy #002855 · Gold #F1B828 · Green #1a7a4a
   =============================================================*/


/* ─────────────────────────────────────────────
   1. DESIGN TOKENS — LIGHT
   ───────────────────────────────────────────── */
:root[b-qyf2623tsl],
:root[data-bs-theme="light"][b-qyf2623tsl],
[data-theme="light"][b-qyf2623tsl] {
    --iac-navy: #002855;
    --iac-navy-mid: #1a3260;
    --iac-gold: #F1B828;
    --iac-gold-rgb: 241,184,40;
    --iac-navy-rgb: 0,40,85;
    --iac-green: #1a7a4a;
    --iac-green-rgb: 26,122,74;
    --page-bg: #f0f2f5;
    --panel-bg: #eaedf1;
    --panel-bg-alt: #eef0f4;
    --panel-border: rgba(0,40,85,0.10);
    --panel-border-strong: rgba(0,40,85,0.18);
    --header-bg: #d8dde5;
    --header-border: rgba(0,40,85,0.18);
    --text-primary: #0d1f3c;
    --text-secondary: rgba(13,31,60,0.72);
    --text-muted: rgba(13,31,60,0.48);
    --text-dim: rgba(13,31,60,0.36);
    /* Inputs — light uses solid white so selects look clean */
    --input-bg: #ffffff;
    --input-bg-hover: #f4f6f8;
    --input-border: rgba(0,40,85,0.14);
    --input-border-focus: rgba(241,184,40,0.70);
    --input-focus-shadow: rgba(241,184,40,0.18);
    --input-text: #0d1f3c;
    --input-placeholder: rgba(13,31,60,0.38);
    --input-disabled-bg: rgba(0,40,85,0.05);
    --chip-active-bg: rgba(0,40,85,0.07);
    --chip-active-color: #002855;
    --chip-inactive-bg: rgba(0,40,85,0.04);
    --chip-inactive-color: rgba(13,31,60,0.55);
    --divider: rgba(0,40,85,0.08);
    --divider-strong: rgba(0,40,85,0.14);
    --leaf-active-bg: rgba(0,40,85,0.03);
    --leaf-active-border: rgba(0,40,85,0.20);
    --leaf-inactive-bg: rgba(0,40,85,0.015);
    --leaf-inactive-border: rgba(0,40,85,0.10);
    --leaf-active-header: rgba(0,40,85,0.06);
    --leaf-inactive-header: rgba(0,40,85,0.03);
    /* Buttons */
    --btn-success-bg: #1a7a4a;
    --btn-success-hover: #155f39;
    --btn-success-shadow: rgba(26,122,74,0.28);
    --btn-neutral-bg: rgba(0,40,85,0.07);
    --btn-neutral-hover: rgba(0,40,85,0.12);
    --btn-neutral-border: rgba(0,40,85,0.14);
    --btn-neutral-color: rgba(13,31,60,0.78);
    --btn-danger-bg: rgba(220,38,38,0.08);
    --btn-danger-hover: rgba(220,38,38,0.14);
    --btn-danger-border: rgba(220,38,38,0.18);
    --btn-danger-color: #b91c1c;
    --btn-primary-bg: #002855;
    --btn-primary-hover: #001e42;
    --btn-utility-bg: rgba(0,40,85,0.10);
    --btn-utility-border: rgba(0,40,85,0.18);
    --btn-utility-color: #002855;
    /* Table */
    --table-head-bg: #f0f2f5;
    --table-head-border: rgba(0,0,0,0.10);
    --table-row-even: #ffffff;
    --table-row-odd: #f9fafb;
    --table-row-hover: rgba(0,40,85,0.04);
    --table-border: rgba(0,0,0,0.07);
    /* Badge */
    --badge-bg: rgba(0,40,85,0.08);
    --badge-color: #002855;
    /* Hinge badge — IAC green with white text, pops strongly on light backgrounds */
    --badge-hinge-bg: #1a7a4a;
    --badge-hinge-color: #ffffff;
    --badge-hinge-border: #125c37;
    /* Summary pills — solid visible backgrounds in light mode */
    --pill-yellow-bg: rgba(241,184,40,0.18);
    --pill-yellow-color: #7a5800;
    --pill-yellow-border: rgba(241,184,40,0.40);
    --pill-green-bg: rgba(26,122,74,0.14);
    --pill-green-color: #155f39;
    --pill-green-border: rgba(26,122,74,0.30);
    --pill-blue-bg: rgba(0,40,85,0.10);
    --pill-blue-color: #002855;
    --pill-blue-border: rgba(0,40,85,0.20);
    --info-dot-bg: rgba(0,40,85,0.12);
    --info-dot-color: #002855;
    --scrollbar-thumb: rgba(0,40,85,0.18);
    --error-overlay: rgba(0,0,0,0.45);
    --error-card-bg: #ffffff;
    --error-card-border: rgba(0,40,85,0.12);
    --error-card-shadow: 0 20px 60px rgba(0,40,85,0.18);
    /* IAC Offcanvas */
    --iac-footer-height: 20px;
    --iac-surface: #ffffff;
    --iac-surface-2: rgba(0,40,85,0.04);
    --iac-border: rgba(0,40,85,0.12);
    --iac-border-hover: rgba(0,40,85,0.22);
    --iac-accent: var(--iac-gold);
    --iac-accent-glow: rgba(241,184,40,0.22);
    --iac-accent-dim: rgba(241,184,40,0.14);
    --iac-accent-border: rgba(241,184,40,0.30);
    --iac-text-primary: #0d1f3c;
    --iac-text-secondary: rgba(13,31,60,0.72);
    --iac-text-muted: rgba(13,31,60,0.48);
    --iac-success: #1a7a4a;
    --iac-success-text: #ffffff;
    --iac-success-shadow: rgba(26,122,74,0.18);
    --iac-success-hover: rgba(26,122,74,0.28);
    --iac-disabled-bg: rgba(0,40,85,0.05);
    --iac-shadow: 0 20px 60px rgba(0,40,85,0.16), 0 0 0 1px rgba(0,40,85,0.06);
    --iac-close-hover: rgba(0,40,85,0.06);
    --iac-cancel-hover: rgba(0,40,85,0.05);
    --iac-req-note-bg: rgba(241,184,40,0.14);
    --iac-scrollbar: rgba(0,40,85,0.18);
    --iac-select-arrow-stroke: %230d1f3c;
    --iac-select-arrow-alpha: 0.55;
}
    /* Dark mode */
    :root[data-bs-theme="dark"][b-qyf2623tsl] {
        /* Hinge badge — vivid gold with deep navy text, pops on dark surfaces */
        --badge-hinge-bg: #F1B828;
        --badge-hinge-color: #0d1f3c;
        --badge-hinge-border: #f5c842;
    }
    /* ─────────────────────────────────────────────
   1b. DESIGN TOKENS — DARK
   ───────────────────────────────────────────── */
    :root[data-bs-theme="dark"][b-qyf2623tsl],
    [data-theme="dark"][b-qyf2623tsl] {
        --iac-navy: #0d1f3c;
        --iac-navy-mid: #1a3260;
        --iac-gold: #F1B828;
        --iac-gold-rgb: 241,184,40;
        --iac-navy-rgb: 13,31,60;
        --iac-green: #22c55e;
        --iac-green-rgb: 34,197,94;
        --page-bg: #0b0f17;
        --panel-bg: #1a2033;
        --panel-bg-alt: #1d2438;
        --panel-border: rgba(255,255,255,0.10);
        --panel-border-strong: rgba(255,255,255,0.16);
        --header-bg: #090c14;
        --header-border: rgba(255,255,255,0.12);
        --text-primary: rgba(255,255,255,0.92);
        --text-secondary: rgba(255,255,255,0.72);
        --text-muted: rgba(255,255,255,0.48);
        --text-dim: rgba(255,255,255,0.30);
        /* Inputs — near-transparent so selects don't show jarring box */
        --input-bg: rgba(255,255,255,0.06);
        --input-bg-hover: rgba(255,255,255,0.09);
        --input-border: rgba(255,255,255,0.11);
        --input-border-focus: rgba(241,184,40,0.55);
        --input-focus-shadow: rgba(241,184,40,0.14);
        --input-text: rgba(255,255,255,0.90);
        --input-placeholder: rgba(255,255,255,0.32);
        --input-disabled-bg: rgba(255,255,255,0.04);
        --chip-active-bg: rgba(241,184,40,0.12);
        --chip-active-color: rgba(241,184,40,0.92);
        --chip-inactive-bg: rgba(255,255,255,0.05);
        --chip-inactive-color: rgba(255,255,255,0.48);
        --divider: rgba(255,255,255,0.06);
        --divider-strong: rgba(255,255,255,0.10);
        --leaf-active-bg: rgba(241,184,40,0.04);
        --leaf-active-border: rgba(241,184,40,0.22);
        --leaf-inactive-bg: rgba(255,255,255,0.02);
        --leaf-inactive-border: rgba(255,255,255,0.07);
        --leaf-active-header: rgba(241,184,40,0.08);
        --leaf-inactive-header: rgba(255,255,255,0.03);
        --btn-success-bg: #1a7a4a;
        --btn-success-hover: #1d8f56;
        --btn-success-shadow: rgba(26,122,74,0.35);
        --btn-neutral-bg: rgba(255,255,255,0.07);
        --btn-neutral-hover: rgba(255,255,255,0.11);
        --btn-neutral-border: rgba(255,255,255,0.11);
        --btn-neutral-color: rgba(255,255,255,0.78);
        --btn-danger-bg: rgba(239,68,68,0.10);
        --btn-danger-hover: rgba(239,68,68,0.18);
        --btn-danger-border: rgba(239,68,68,0.22);
        --btn-danger-color: #f87171;
        --btn-primary-bg: #1a3260;
        --btn-primary-hover: #1e3a72;
        --btn-utility-bg: rgba(255,255,255,0.07);
        --btn-utility-border: rgba(255,255,255,0.12);
        --btn-utility-color: rgba(255,255,255,0.82);
        --table-head-bg: rgba(255,255,255,0.05);
        --table-head-border: rgba(255,255,255,0.10);
        --table-row-even: rgba(255,255,255,0.02);
        --table-row-odd: rgba(255,255,255,0.01);
        --table-row-hover: rgba(241,184,40,0.04);
        --table-border: rgba(255,255,255,0.06);
        --badge-bg: rgba(255,255,255,0.07);
        --badge-color: rgba(255,255,255,0.78);
        --badge-hinge-bg: #F1B828;
        --badge-hinge-color: #0d1f3c;
        --badge-hinge-border: #f5c842;
        --pill-yellow-bg: rgba(241,184,40,0.14);
        --pill-yellow-color: rgba(241,184,40,0.95);
        --pill-yellow-border: rgba(241,184,40,0.28);
        --pill-green-bg: rgba(34,197,94,0.12);
        --pill-green-color: #4ade80;
        --pill-green-border: rgba(34,197,94,0.24);
        --pill-blue-bg: rgba(255,255,255,0.07);
        --pill-blue-color: rgba(255,255,255,0.82);
        --pill-blue-border: rgba(255,255,255,0.13);
        --info-dot-bg: rgba(255,255,255,0.10);
        --info-dot-color: rgba(255,255,255,0.72);
        --scrollbar-thumb: rgba(255,255,255,0.14);
        --error-overlay: rgba(0,0,0,0.70);
        --error-card-bg: #1a1f2e;
        --error-card-border: rgba(255,255,255,0.10);
        --error-card-shadow: 0 32px 80px rgba(0,0,0,0.60);
        --iac-surface: rgba(13,31,60,0.96);
        --iac-surface-2: rgba(26,50,96,0.42);
        --iac-border: rgba(255,255,255,0.10);
        --iac-border-hover: rgba(255,255,255,0.18);
        --iac-accent: var(--iac-gold);
        --iac-accent-glow: rgba(241,184,40,0.20);
        --iac-accent-dim: rgba(241,184,40,0.12);
        --iac-accent-border: rgba(241,184,40,0.26);
        --iac-text-primary: rgba(255,255,255,0.94);
        --iac-text-secondary: rgba(255,255,255,0.72);
        --iac-text-muted: rgba(255,255,255,0.55);
        --iac-success: #1a7a4a;
        --iac-success-text: #ffffff;
        --iac-success-shadow: rgba(26,122,74,0.25);
        --iac-success-hover: rgba(26,122,74,0.40);
        --iac-disabled-bg: rgba(255,255,255,0.06);
        --iac-shadow: 0 32px 80px rgba(0,0,0,0.60), 0 0 0 1px rgba(255,255,255,0.05);
        --iac-close-hover: rgba(241,184,40,0.10);
        --iac-cancel-hover: rgba(255,255,255,0.06);
        --iac-req-note-bg: rgba(241,184,40,0.06);
        --iac-scrollbar: rgba(255,255,255,0.14);
        --iac-select-arrow-stroke: %23ffffff;
        --iac-select-arrow-alpha: 0.62;
        --iac-footer-height: 20px;
    }

/* ─────────────────────────────────────────────
   2. BASE / RESET
   ───────────────────────────────────────────── */
*[b-qyf2623tsl], *[b-qyf2623tsl]::before, *[b-qyf2623tsl]::after {
    box-sizing: border-box;
}

body[b-qyf2623tsl],
.doors-editor-wrapper[b-qyf2623tsl],
.doors-editor-wrapper *[b-qyf2623tsl] {
    font-family: 'din-2014', 'DIN 2014', 'DIN Pro', 'DM Sans', system-ui, -apple-system, sans-serif !important;
}

[b-qyf2623tsl]::-webkit-scrollbar {
    width: 5px;
    height: 5px;
}

[b-qyf2623tsl]::-webkit-scrollbar-track {
    background: transparent;
}

[b-qyf2623tsl]::-webkit-scrollbar-thumb {
    background: var(--scrollbar-thumb);
    border-radius: 10px;
}

/* ─────────────────────────────────────────────
   3. PAGE SHELL & HEADER
   ───────────────────────────────────────────── */
.page-shell[b-qyf2623tsl] {
    padding: 0 24px;
}

/* .quotes-header — overridden by PATCH block at bottom */
.quotes-header[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}

    /* .quotes-header h3 — overridden by PATCH block at bottom */

    /* Project Details button — ghost on the always-dark navy header */
    .mpl-page-header .btn[b-qyf2623tsl],
    .quotes-header .btn[data-bs-target="#projectOffcanvas"][b-qyf2623tsl],
    .btn-project-details[b-qyf2623tsl] {
        background: transparent !important;
        border: 1px solid rgba(255,255,255,0.30) !important;
        color: rgba(255,255,255,0.80) !important;
        font-size: 11px !important;
        font-weight: 700 !important;
        letter-spacing: 0.05em !important;
        padding: 5px 12px !important;
        border-radius: 6px !important;
        box-shadow: none !important;
        transition: background 0.15s, border-color 0.15s, color 0.15s !important;
        text-shadow: none !important;
    }

        .mpl-page-header .btn:hover[b-qyf2623tsl],
        .quotes-header .btn[data-bs-target="#projectOffcanvas"]:hover[b-qyf2623tsl],
        .btn-project-details:hover[b-qyf2623tsl] {
            background: rgba(255,255,255,0.10) !important;
            border-color: var(--iac-gold) !important;
            color: var(--iac-gold) !important;
            box-shadow: none !important;
            transform: none !important;
        }

[data-bs-theme="dark"] .mpl-page-header .btn[b-qyf2623tsl],
[data-bs-theme="dark"] .quotes-header .btn[data-bs-target="#projectOffcanvas"][b-qyf2623tsl],
[data-bs-theme="dark"] .btn-project-details[b-qyf2623tsl] {
    background: transparent !important;
    border-color: rgba(255,255,255,0.28) !important;
    color: rgba(255,255,255,0.78) !important;
    box-shadow: none !important;
}

.include-hw-toggle[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-left: 4px;
}

.quote-title[b-qyf2623tsl] {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--text-secondary);
}

/* ─────────────────────────────────────────────
   4. DOORS EDITOR LAYOUT
   ───────────────────────────────────────────── */
.doors-editor-wrapper[b-qyf2623tsl] {
    padding: 0 0 32px;
}

.doors-editor.with-hardware[b-qyf2623tsl] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: auto;
    align-items: start;
    padding-left: 20px;
    padding-right: 0px;
}

/* Solo: full width when hardware is hidden, 20px side padding */
.doors-editor.solo-pad[b-qyf2623tsl] {
    display: grid;
    grid-template-columns: 1fr;
    padding-left: 20px;
}

.door-info-col[b-qyf2623tsl],
.hardware-col[b-qyf2623tsl] {
    min-width: 0;
    flex: 1 1 0;
}

/* ─────────────────────────────────────────────
   5. IAC PANEL
   ───────────────────────────────────────────── */
.iac-panel[b-qyf2623tsl] {
    background: #f7f8fb !important;
    --bs-card-bg: #f7f8fb;
    border: 1px solid var(--panel-border);
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 2px 8px rgba(0,40,85,0.14), 0 8px 28px rgba(0,40,85,0.12), 0 20px 50px rgba(0,40,85,0.08);
    transition: background 0.25s, border-color 0.25s;
}

    .iac-panel[b-qyf2623tsl]::before {
        display: none;
    }

    .iac-panel .card-header[b-qyf2623tsl],
    .iac-panel .door-header[b-qyf2623tsl] {
        background: var(--header-bg) !important;
        border-radius: 14px 14px 0 0;
        padding: 12px 18px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 8px;
        transition: background 0.25s;
    }

    .iac-panel .card-body[b-qyf2623tsl] {
        background: #f7f8fb !important;
        padding: 18px;
        transition: background 0.25s;
    }

    .iac-panel .card-footer[b-qyf2623tsl] {
        background: #eef0f4 !important;
        border-top: 1px solid var(--divider);
        padding: 12px 18px;
        transition: background 0.25s;
    }

/* Light mode */
:root[data-bs-theme="light"] .iac-panel[b-qyf2623tsl],
[data-theme="light"] .iac-panel[b-qyf2623tsl] {
    background: #f7f8fb !important;
    --bs-card-bg: #f7f8fb;
}

    :root[data-bs-theme="light"] .card.iac-panel > .card-body[b-qyf2623tsl],
    :root[data-bs-theme="light"] .iac-panel .card-body[b-qyf2623tsl],
    [data-theme="light"] .card.iac-panel > .card-body[b-qyf2623tsl],
    [data-theme="light"] .iac-panel .card-body[b-qyf2623tsl] {
        background: #f7f8fb !important;
        --bs-card-bg: #f7f8fb;
    }

/* Dark mode */
:root[data-bs-theme="dark"] .iac-panel[b-qyf2623tsl],
[data-theme="dark"] .iac-panel[b-qyf2623tsl] {
    background: #1a2236 !important;
    --bs-card-bg: #1a2236;
    border-color: rgba(255,255,255,0.08);
}

    :root[data-bs-theme="dark"] .iac-panel .card-header[b-qyf2623tsl],
    :root[data-bs-theme="dark"] .iac-panel .door-header[b-qyf2623tsl],
    [data-theme="dark"] .iac-panel .card-header[b-qyf2623tsl],
    [data-theme="dark"] .iac-panel .door-header[b-qyf2623tsl] {
        background: #0e1520 !important;
    }

:root[data-bs-theme="dark"] .card-body .card .card-header[b-qyf2623tsl] {
    background: #131c2e !important;
    border-bottom: 1px solid var(--divider);
    padding: 10px 14px;
}

:root[data-bs-theme="dark"] .card.iac-panel > .card-body[b-qyf2623tsl],
:root[data-bs-theme="dark"] .iac-panel .card-body[b-qyf2623tsl],
[data-theme="dark"] .card.iac-panel > .card-body[b-qyf2623tsl],
[data-theme="dark"] .iac-panel .card-body[b-qyf2623tsl] {
    background: #1a2236 !important;
    --bs-card-bg: #1a2236;
}

:root[data-bs-theme="dark"] .iac-panel .card-footer[b-qyf2623tsl],
[data-theme="dark"] .iac-panel .card-footer[b-qyf2623tsl] {
    background: #111827 !important;
    border-top-color: rgba(255,255,255,0.08);
    color: rgba(220,230,245,0.80);
}

/* Dark mode card-footer text/link colors */
:root[data-bs-theme="dark"] .card-footer.d-flex.justify-content-between.align-items-center[b-qyf2623tsl],
:root[data-bs-theme="dark"] .card-footer.d-flex.flex-wrap.justify-content-between.align-items-center[b-qyf2623tsl],
[data-theme="dark"] .card-footer.d-flex.justify-content-between.align-items-center[b-qyf2623tsl],
[data-theme="dark"] .card-footer.d-flex.flex-wrap.justify-content-between.align-items-center[b-qyf2623tsl] {
    background: #111827 !important;
    border-top: 1px solid rgba(255,255,255,0.08);
    color: rgba(200,215,235,0.78);
}

/* ─────────────────────────────────────────────
   6. DOOR HEADER CONTROLS
   ───────────────────────────────────────────── */
.door-header-tools[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.header-group[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    gap: 7px;
}

.header-divider[b-qyf2623tsl] {
    width: 1px;
    height: 20px;
    background: var(--divider-strong);
    margin: 0 4px;
}

.small-label[b-qyf2623tsl] {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    color: #000;
    background: rgba(0,40,85,0.06);
    border-radius: 4px;
    padding: 2px 7px 2px 5px;
    display: inline-flex;
    align-items: center;
}

:root[data-bs-theme="dark"] .small-label[b-qyf2623tsl],
[data-theme="dark"] .small-label[b-qyf2623tsl] {
    color: rgba(255,255,255,0.72);
    background: rgba(255,255,255,0.07);
}

:root[data-bs-theme="dark"] .form-label[b-qyf2623tsl],
[data-theme="dark"] .form-label[b-qyf2623tsl] {
    background: rgba(241,184,40,0.10) !important;
    border-left-color: var(--iac-gold) !important;
    color: rgba(255,255,255,0.90) !important;
}

.header-group .badge[b-qyf2623tsl],
.badge.bg-body-secondary[b-qyf2623tsl] {
    background: var(--badge-bg) !important;
    color: var(--badge-color) !important;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.04em;
    padding: 4px 10px;
    border-radius: 6px;
    border: 1px solid var(--panel-border);
}

/* FIX: Swing select needs proper width */
.header-select--compact[b-qyf2623tsl] {
    font-size: 12px;
    padding: 4px 30px 4px 10px;
    height: 40px;
    border-radius: 7px;
    min-width: 140px;
    max-width: 200px;
    width: auto;
}

.mark-input[b-qyf2623tsl] {
    font-size: 12px;
    padding: 4px 10px;
    height: 30px;
    border-radius: 7px;
    min-width: 80px;
    max-width: 120px;
}

/* ─────────────────────────────────────────────
   7. FORM CONTROLS
   ───────────────────────────────────────────── */
.form-label[b-qyf2623tsl] {
    font-size: 10px !important;
    font-weight: 700 !important;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-secondary) !important;
    margin-bottom: 4px !important;
    display: flex;
    align-items: center;
    gap: 4px;
    background: rgba(0,40,85,0.05);
    border-radius: 4px 4px 0 0;
    padding: 3px 8px 3px 6px !important;
    width: 100%;
    border-left: 3px solid var(--iac-gold);
}

.form-control[b-qyf2623tsl],
.form-select[b-qyf2623tsl] {
    background: var(--input-bg) !important;
    border: 1px solid var(--input-border) !important;
    border-radius: 9px !important;
    padding: 9px 12px !important;
    font-size: 13px !important;
    font-family: 'din-2014', 'DIN Pro', 'DM Sans', sans-serif !important;
    color: var(--input-text) !important;
    box-shadow: none !important;
    transition: border-color 0.15s, box-shadow 0.15s, background 0.2s !important;
    -webkit-appearance: none;
    text-align: left !important;
}

    .form-control[b-qyf2623tsl]::placeholder {
        color: #d0cece !important;
    }

[data-theme="dark"] .form-control[b-qyf2623tsl]::placeholder {
    color: #6c6c6c !important;
}

.form-control:focus[b-qyf2623tsl],
.form-select:focus[b-qyf2623tsl] {
    border-color: var(--input-border-focus) !important;
    box-shadow: 0 0 0 3px var(--input-focus-shadow) !important;
    background: var(--input-bg-hover) !important;
    outline: none !important;
}

.form-control:hover:not(:focus):not(:disabled)[b-qyf2623tsl],
.form-select:hover:not(:focus):not(:disabled)[b-qyf2623tsl] {
    border-color: var(--panel-border-strong) !important;
}

.form-control:disabled[b-qyf2623tsl],
.form-select:disabled[b-qyf2623tsl],
.form-control[readonly][b-qyf2623tsl] {
    background: #e9ecef !important;
    color: rgba(13,31,60,0.50) !important;
    cursor: not-allowed;
    opacity: 1 !important;
}

:root[data-bs-theme="dark"] .form-control:disabled[b-qyf2623tsl],
:root[data-bs-theme="dark"] .form-select:disabled[b-qyf2623tsl],
:root[data-bs-theme="dark"] .form-control[readonly][b-qyf2623tsl],
[data-theme="dark"] .form-control:disabled[b-qyf2623tsl],
[data-theme="dark"] .form-select:disabled[b-qyf2623tsl],
[data-theme="dark"] .form-control[readonly][b-qyf2623tsl] {
    background: rgba(255,255,255,0.06) !important;
    color: rgba(255,255,255,0.35) !important;
    border-color: rgba(255,255,255,0.08) !important;
}

/* Select chevron — light */
.form-select[b-qyf2623tsl] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23002855' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.40'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 10px center !important;
    padding-right: 32px !important;
}

[data-bs-theme="dark"] .form-select[b-qyf2623tsl],
[data-theme="dark"] .form-select[b-qyf2623tsl] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.45'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 10px center !important;
    background-size: 12px 12px !important;
}

/* Small variants */
.form-select-sm[b-qyf2623tsl],
.form-control-sm[b-qyf2623tsl] {
    padding: 5px 10px !important;
    font-size: 12px !important;
    border-radius: 7px !important;
}

/* Inline table input */
.iac-inline-input[b-qyf2623tsl] {
    background: var(--input-bg) !important;
    border: 1px solid var(--input-border) !important;
    font-size: 12px !important;
    padding: 5px 9px !important;
    border-radius: 7px !important;
    min-width: 80px;
    max-width: 110px;
}

    .iac-inline-input:focus[b-qyf2623tsl] {
        border-color: var(--input-border-focus) !important;
        box-shadow: 0 0 0 2px var(--input-focus-shadow) !important;
    }

    .iac-inline-input.border-danger[b-qyf2623tsl] {
        border-color: var(--btn-danger-border) !important;
        box-shadow: 0 0 0 2px var(--btn-danger-bg) !important;
    }

/* FIX: QTY number input right-aligned text */
input[type="number"][b-qyf2623tsl] {
    text-align: right;
}

    input[type="number"].text-center[b-qyf2623tsl] {
        text-align: center;
    }

/* ─────────────────────────────────────────────
   8. FORM SWITCHES — with visible dark-mode fix
   ───────────────────────────────────────────── */
.form-check-input[type="checkbox"].form-check-input[b-qyf2623tsl] {
    width: 36px;
    height: 20px;
    border-radius: 20px;
    background-color: var(--input-bg);
    border: 1px solid var(--input-border);
    cursor: pointer;
    transition: background-color 0.2s, border-color 0.2s;
    flex-shrink: 0;
}

/* Light mode checked: navy */
.form-check-input:checked[b-qyf2623tsl] {
    background-color: var(--iac-navy) !important;
    border-color: var(--iac-navy) !important;
}

/* Dark mode unchecked track: light so you can see it */
[data-bs-theme="dark"] .form-check-input[type="checkbox"].form-check-input[b-qyf2623tsl],
[data-theme="dark"] .form-check-input[type="checkbox"].form-check-input[b-qyf2623tsl] {
    background-color: rgba(255,255,255,0.16) !important;
    border-color: rgba(255,255,255,0.24) !important;
}

/* Dark mode checked: gold, eye-catching */
[data-bs-theme="dark"] .form-check-input:checked[b-qyf2623tsl],
[data-theme="dark"] .form-check-input:checked[b-qyf2623tsl] {
    background-color: #F1B828 !important;
    border-color: #F1B828 !important;
}

/* Light thumb */
.form-switch .form-check-input[b-qyf2623tsl] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(0,40,85,0.40)'/%3E%3C/svg%3E") !important;
}

    .form-switch .form-check-input:checked[b-qyf2623tsl] {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(255,255,255,0.95)'/%3E%3C/svg%3E") !important;
    }

/* Dark mode unchecked: white-ish thumb */
[data-bs-theme="dark"] .form-switch .form-check-input[b-qyf2623tsl],
[data-theme="dark"] .form-switch .form-check-input[b-qyf2623tsl] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(255,255,255,0.70)'/%3E%3C/svg%3E") !important;
}
    /* Dark mode checked on gold: dark thumb for contrast */
    [data-bs-theme="dark"] .form-switch .form-check-input:checked[b-qyf2623tsl],
    [data-theme="dark"] .form-switch .form-check-input:checked[b-qyf2623tsl] {
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(0,0,0,0.70)'/%3E%3C/svg%3E") !important;
    }

.form-check-label[b-qyf2623tsl],
.form-check.mb-0[b-qyf2623tsl] {
    font-size: 12px;
    font-weight: 600;
    color: var(--text-secondary);
    cursor: pointer;
}

.tight-gap[b-qyf2623tsl] {
    gap: 14px;
}

    /* Push label away from toggle pill — scoped to tight-gap containers only */
    .tight-gap .form-check-input[b-qyf2623tsl] {
        margin-right: 10px !important;
        flex-shrink: 0;
    }

/* ─────────────────────────────────────────────
   9. INFO DOT
   ───────────────────────────────────────────── */
.info-dot[b-qyf2623tsl] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: var(--info-dot-bg);
    color: var(--info-dot-color);
    font-size: 9px;
    font-weight: 800;
    cursor: help;
    flex-shrink: 0;
    border: 1px solid var(--panel-border);
    transition: background 0.15s;
    line-height: 1;
}

    .info-dot:hover[b-qyf2623tsl] {
        background: rgba(241,184,40,0.22);
        color: var(--iac-navy);
    }

/* ─────────────────────────────────────────────
   10. HINGE BADGE — prominent gold pill
   ───────────────────────────────────────────── */
/* =============================================================
   HINGES BADGE — improved background (light + dark)
   Uses your existing var names:
   --badge-hinge-bg, --badge-hinge-color, --badge-hinge-border
   ============================================================= */

/* Base structure — shared across both themes */
.badge-iac-hinges[b-qyf2623tsl] {
    font-size: 12px !important;
    font-weight: 700 !important;
    padding: 4px 10px !important;
    border-radius: 20px !important;
    letter-spacing: 0.03em !important;
    display: inline-block !important;
    cursor: default !important;
    pointer-events: none !important;
}

/* ── LIGHT MODE: soft navy pill — clearly a label, not a button ── */
:root[data-bs-theme="light"] .badge-iac-hinges[b-qyf2623tsl],
[data-theme="light"] .badge-iac-hinges[b-qyf2623tsl],
.badge-iac-hinges[b-qyf2623tsl] {
    background: rgba(0,40,85,0.10) !important;
    background-color: rgba(0,40,85,0.10) !important;
    color: #002855 !important;
    border: 1px solid rgba(0,40,85,0.22) !important;
    box-shadow: none !important;
}

/* ── DARK MODE: IAC gold pill — warm and glowing on dark panels ── */
:root[data-bs-theme="dark"] .badge-iac-hinges[b-qyf2623tsl],
[data-theme="dark"] .badge-iac-hinges[b-qyf2623tsl] {
    background: #F1B828 !important;
    background-color: #F1B828 !important;
    color: #0d1f3c !important;
    border: 1px solid #f5c842 !important;
    box-shadow: 0 2px 14px rgba(241,184,40,0.55), 0 1px 3px rgba(0,0,0,0.25) !important;
}
/* ─────────────────────────────────────────────
   11. REQUIRED NOTE
   ───────────────────────────────────────────── */
.required-note[b-qyf2623tsl] {
    font-size: 11px;
    color: var(--text-muted);
    letter-spacing: 0.02em;
}

/* ─────────────────────────────────────────────
   12. TOGGLE STRIP — redesigned as options bar
   ───────────────────────────────────────────── */
.toggle-strip[b-qyf2623tsl] {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 0;
    align-items: stretch;
    background: var(--panel-bg-alt);
    border: 1px solid var(--panel-border-strong);
    border-radius: 10px;
    padding: 0 !important;
    margin: 10px 0 6px !important;
    overflow: hidden;
}

/* ─────────────────────────────────────────────
   13. VENEER / DIVIDERS
   ───────────────────────────────────────────── */
.veneer-details[b-qyf2623tsl] {
    padding-top: 8px;
}

hr.hr\.divider-thick[b-qyf2623tsl],
.divider-thick[b-qyf2623tsl] {
    border: none;
    border-top: 2px solid var(--divider-strong);
    margin: 12px 0;
    opacity: 1;
}

.divider-sm[b-qyf2623tsl] {
    border: none;
    border-top: 1px solid var(--divider);
    margin: 10px 0;
    opacity: 1;
}

/* ─────────────────────────────────────────────
   14. DOOR / HW CARD FOOTERS
   ───────────────────────────────────────────── */
.door-card-footer[b-qyf2623tsl] {
    padding-top: 14px;
    border-top: 1px solid var(--divider);
    margin-top: 8px;
    display: flex;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

/* ─────────────────────────────────────────────
   15. HW STC ROW
   ───────────────────────────────────────────── */
.stc-row[b-qyf2623tsl] {
    margin-bottom: 6px;
}

/* ─────────────────────────────────────────────
   16. DOUBLE LEAF INNER CARDS
   ───────────────────────────────────────────── */
.card-body .card[b-qyf2623tsl] {
    background: var(--panel-bg-alt);
    border: 1px solid var(--panel-border);
    border-radius: 12px;
    overflow: hidden;
}

    .card-body .card .card-header[b-qyf2623tsl] {
        background: var(--header-bg);
        border-bottom: 1px solid var(--divider);
        padding: 10px 14px;
    }

        .card-body .card .card-header h6[b-qyf2623tsl] {
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.08em;
            text-transform: uppercase;
            color: var(--text-secondary);
            margin: 0;
        }

    .card-body .card .card-body[b-qyf2623tsl] {
        padding: 14px;
    }

    .card-body .card .row > .col-md-6:first-child[b-qyf2623tsl] {
        border-right: 1px solid var(--divider);
        padding-right: 18px;
    }

    .card-body .card .row > .col-md-6:last-child[b-qyf2623tsl] {
        padding-left: 18px;
    }

    .card-body .card .row > .col-md-6:first-child h6[b-qyf2623tsl] {
        font-size: 11px;
        font-weight: 800;
        letter-spacing: 0.08em;
        text-transform: uppercase;
        color: var(--iac-navy);
        border-left: 3px solid var(--iac-gold);
        padding-left: 8px;
        margin-bottom: 14px;
    }

[data-bs-theme="dark"] .card-body .card .row > .col-md-6:first-child h6[b-qyf2623tsl] {
    color: rgba(241,184,40,0.90);
}

.card-body .card .row > .col-md-6:last-child h6.text-secondary[b-qyf2623tsl] {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-muted) !important;
    border-left: 3px solid var(--divider-strong);
    padding-left: 8px;
    margin-bottom: 14px;
}

/* ─────────────────────────────────────────────
   17. ALERTS
   ───────────────────────────────────────────── */
.alert[b-qyf2623tsl] {
    border-radius: 9px !important;
    font-size: 12px !important;
    padding: 10px 14px !important;
    border: 1px solid transparent !important;
}

.alert-warning[b-qyf2623tsl] {
    background: rgba(241,184,40,0.12) !important;
    border-color: rgba(241,184,40,0.26) !important;
    color: var(--text-primary) !important;
}

.alert-success[b-qyf2623tsl] {
    background: rgba(26,122,74,0.10) !important;
    border-color: rgba(26,122,74,0.22) !important;
    color: var(--text-primary) !important;
}

.alert-info[b-qyf2623tsl] {
    background: rgba(0,40,85,0.06) !important;
    border-color: rgba(0,40,85,0.14) !important;
    color: var(--text-primary) !important;
}

[data-bs-theme="dark"] .alert-info[b-qyf2623tsl] {
    background: rgba(255,255,255,0.05) !important;
    border-color: rgba(255,255,255,0.10) !important;
    color: rgba(255,255,255,0.85) !important;
}

/* ─────────────────────────────────────────────
   18. BUTTONS
   ───────────────────────────────────────────── */
.btn-solid[b-qyf2623tsl] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-family: 'din-2014', 'DIN Pro', 'DM Sans', sans-serif !important;
    font-weight: 700;
    letter-spacing: 0.03em;
    border-radius: 9px;
    border: 1px solid transparent;
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

    .btn-solid.btn-sm[b-qyf2623tsl] {
        font-size: 12px;
        padding: 0 14px;
        height: 34px;
    }

    .btn-solid:active[b-qyf2623tsl] {
        transform: translateY(1px);
    }

/* SUCCESS — bright green, always visible */
.btn-success-solid[b-qyf2623tsl] {
    background: #1a7a4a !important;
    border-color: transparent !important;
    color: #ffffff !important;
    box-shadow: 0 3px 14px rgba(26,122,74,0.35) !important;
}

    .btn-success-solid:hover:not(:disabled)[b-qyf2623tsl] {
        background: #155f39 !important;
        box-shadow: 0 5px 20px rgba(26,122,74,0.45) !important;
        transform: translateY(0);
        color: #ffffff !important;
    }

[data-bs-theme="dark"] .btn-success-solid[b-qyf2623tsl] {
    background: #1a7a4a !important;
    box-shadow: 0 3px 16px rgba(26,122,74,0.40) !important;
}

/* NEUTRAL */
.btn-neutral-solid[b-qyf2623tsl] {
    background: var(--btn-neutral-bg) !important;
    border-color: var(--btn-neutral-border) !important;
    color: var(--btn-neutral-color) !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08), 0 1px 2px rgba(0,0,0,0.04) !important;
    transition: background .15s, border-color .15s, color .15s, box-shadow .15s, transform .1s !important;
}

    .btn-neutral-solid:hover:not(:disabled)[b-qyf2623tsl] {
        background: var(--btn-neutral-hover) !important;
        color: var(--text-primary) !important;
        border-color: rgba(0,40,85,0.30) !important;
        box-shadow: 0 3px 8px rgba(0,40,85,0.14), 0 1px 3px rgba(0,0,0,0.08) !important;
        transform: translateY(-1px) !important;
    }

    .btn-neutral-solid:active:not(:disabled)[b-qyf2623tsl] {
        transform: translateY(0) !important;
        box-shadow: 0 1px 2px rgba(0,0,0,0.06) !important;
    }

/* DANGER */
.btn-danger-solid[b-qyf2623tsl] {
    background: var(--btn-danger-bg) !important;
    border-color: var(--btn-danger-border) !important;
    color: var(--btn-danger-color) !important;
}

    .btn-danger-solid:hover:not(:disabled)[b-qyf2623tsl] {
        background: var(--btn-danger-hover) !important;
        transform: translateY(0);
    }

    .btn-danger-solid:disabled[b-qyf2623tsl] {
        opacity: 0.45;
        cursor: not-allowed;
        transform: none;
    }

/* PRIMARY (Save Job) — IAC Navy, prominent */
.btn-primary-solid[b-qyf2623tsl] {
    background: #002855 !important;
    border-color: rgba(241,184,40,0.35) !important;
    color: #ffffff !important;
    box-shadow: 0 3px 14px rgba(0,40,85,0.28) !important;
}

    .btn-primary-solid:hover:not(:disabled)[b-qyf2623tsl] {
        background: #001e42 !important;
        border-color: rgba(241,184,40,0.55) !important;
        transform: translateY(0);
        color: #ffffff !important;
        box-shadow: 0 5px 20px rgba(0,40,85,0.38) !important;
    }

[data-bs-theme="dark"] .btn-primary-solid[b-qyf2623tsl] {
    background: rgba(241,184,40,0.14) !important;
    border-color: rgba(241,184,40,0.36) !important;
    color: rgba(241,184,40,0.95) !important;
    box-shadow: 0 3px 14px rgba(0,0,0,0.30) !important;
}

    [data-bs-theme="dark"] .btn-primary-solid:hover:not(:disabled)[b-qyf2623tsl] {
        background: rgba(241,184,40,0.22) !important;
        color: #fff !important;
    }

/* UTILITY (PDF Submittal, Export Quote) — PDF red */
/* Ghost PDF red — subtle, secondary action */
.btn-utility-solid[b-qyf2623tsl] {
    background: rgba(185,28,28,0.08) !important;
    border: 1.5px solid rgba(185,28,28,0.28) !important;
    color: #b91c1c !important;
}

    .btn-utility-solid:hover:not(:disabled)[b-qyf2623tsl] {
        background: rgba(185,28,28,0.15) !important;
        border-color: rgba(185,28,28,0.45) !important;
        transform: translateY(0);
    }

[data-bs-theme="dark"] .btn-utility-solid[b-qyf2623tsl] {
    background: rgba(239,68,68,0.10) !important;
    border: 1.5px solid rgba(239,68,68,0.22) !important;
    color: #fca5a5 !important;
}

    [data-bs-theme="dark"] .btn-utility-solid:hover:not(:disabled)[b-qyf2623tsl] {
        background: rgba(239,68,68,0.18) !important;
        border-color: rgba(239,68,68,0.40) !important;
        transform: translateY(0);
    }

/* Export / primary PDF action — solid filled red, clearly dominant */
.btn-utility-export[b-qyf2623tsl] {
    background: #b91c1c !important;
    border: 1px solid rgba(0,0,0,0.16) !important;
    color: #ffffff !important;
    box-shadow: 0 1px 0 rgba(0,0,0,0.16), 0 3px 10px rgba(185,28,28,0.30) !important;
}

    .btn-utility-export:hover:not(:disabled)[b-qyf2623tsl] {
        background: #991b1b !important;
        border-color: rgba(0,0,0,0.22) !important;
        box-shadow: 0 2px 0 rgba(0,0,0,0.18), 0 6px 18px rgba(185,28,28,0.40) !important;
        transform: translateY(0);
        color: #ffffff !important;
    }

    .btn-utility-export:active:not(:disabled)[b-qyf2623tsl] {
        transform: translateY(0) !important;
        box-shadow: 0 1px 0 rgba(0,0,0,0.16), 0 2px 6px rgba(185,28,28,0.25) !important;
    }

[data-bs-theme="dark"] .btn-utility-export[b-qyf2623tsl] {
    background: #dc2626 !important;
    border: 1px solid rgba(0,0,0,0.28) !important;
    color: #ffffff !important;
    box-shadow: 0 1px 0 rgba(0,0,0,0.30), 0 3px 12px rgba(220,38,38,0.35) !important;
}

    [data-bs-theme="dark"] .btn-utility-export:hover:not(:disabled)[b-qyf2623tsl] {
        background: #b91c1c !important;
        box-shadow: 0 2px 0 rgba(0,0,0,0.35), 0 6px 20px rgba(220,38,38,0.45) !important;
        transform: translateY(0);
        color: #ffffff !important;
    }

.add-icon[b-qyf2623tsl] {
    font-size: 16px;
    font-weight: 300;
    line-height: 1;
}

.spinner-border-sm[b-qyf2623tsl] {
    width: 14px;
    height: 14px;
    border-width: 2px;
}

.icon-btn--preview[b-qyf2623tsl],
.icon-btn--edit[b-qyf2623tsl],
.icon-btn--unassign[b-qyf2623tsl] {
    width: 30px !important;
    height: 30px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 13px !important;
}

/* ─────────────────────────────────────────────
   19. ORDER ACTIONS — centered with PDF red
   ───────────────────────────────────────────── */
/* .order-actions-wrap — overridden by PATCH block at bottom */
.order-actions-wrap[b-qyf2623tsl] {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.btn-group-solid[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: center;
}

/* ─────────────────────────────────────────────
   20. SAVED HARDWARE SETS TABLE
   ───────────────────────────────────────────── */
.section-card[b-qyf2623tsl] {
    border-radius: 14px;
    overflow: hidden;
    margin-left: 20px;
    margin-right: 20px;
    border: 1px solid var(--panel-border) !important;
    box-shadow: 0 2px 8px rgba(0,40,85,0.14), 0 8px 28px rgba(0,40,85,0.12), 0 20px 50px rgba(0,40,85,0.08);
}

.saved-sets-card .card-body[b-qyf2623tsl] {
    padding: 0;
}

.iac-table[b-qyf2623tsl] {
    width: 100%;
    border-collapse: collapse;
    font-size: 12px;
}

    .iac-table thead th[b-qyf2623tsl] {
        background: var(--table-head-bg);
        border-bottom: 2px solid var(--table-head-border);
        border-top: none;
        padding: 10px 12px;
        font-size: 10px;
        font-weight: 800;
        letter-spacing: 0.10em;
        text-transform: uppercase;
        color: var(--text-secondary);
        white-space: nowrap;
    }

    .iac-table tbody tr[b-qyf2623tsl] {
        border-bottom: 1px solid var(--table-border);
        transition: background 0.12s;
    }

        .iac-table tbody tr:nth-child(even) td[b-qyf2623tsl] {
            background: var(--table-row-odd);
        }

        .iac-table tbody tr:nth-child(odd) td[b-qyf2623tsl] {
            background: var(--table-row-even);
        }

        .iac-table tbody tr:hover td[b-qyf2623tsl] {
            background: var(--table-row-hover) !important;
        }

    .iac-table td[b-qyf2623tsl] {
        padding: 9px 12px;
        vertical-align: middle;
        color: var(--text-primary);
    }

        .iac-table td strong[b-qyf2623tsl] {
            font-weight: 700;
        }

    /* FIX: Hardware set status badges — IAC colors */
    .iac-table .badge.bg-success[b-qyf2623tsl] {
        background: rgba(26,122,74,0.16) !important;
        color: #1a7a4a !important;
        border: 1px solid rgba(26,122,74,0.28) !important;
        font-size: 10px;
        font-weight: 700;
        padding: 3px 8px;
        border-radius: 5px;
    }

[data-bs-theme="dark"] .iac-table .badge.bg-success[b-qyf2623tsl] {
    background: rgba(34,197,94,0.14) !important;
    color: #4ade80 !important;
    border-color: rgba(34,197,94,0.26) !important;
}

.iac-table .badge.bg-secondary[b-qyf2623tsl] {
    background: rgba(0,40,85,0.08) !important;
    color: rgba(0,40,85,0.65) !important;
    border: 1px solid rgba(0,40,85,0.14) !important;
    font-size: 10px;
    font-weight: 700;
    padding: 3px 8px;
    border-radius: 5px;
}

[data-bs-theme="dark"] .iac-table .badge.bg-secondary[b-qyf2623tsl] {
    background: rgba(255,255,255,0.07) !important;
    color: rgba(255,255,255,0.50) !important;
    border-color: rgba(255,255,255,0.12) !important;
}

/* ─────────────────────────────────────────────
   IAC-TABLE--PANEL — table rows matched to iac-panel card body
   ───────────────────────────────────────────── */

/* thead: matches the card-header dark strip */
.iac-panel .iac-table thead th[b-qyf2623tsl],
.iac-table--panel thead th[b-qyf2623tsl] {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    padding: 10px 14px;
    white-space: nowrap;
    border-bottom-width: 2px;
}

/* LIGHT MODE */
:root[data-bs-theme="light"] .iac-panel .iac-table thead th[b-qyf2623tsl],
:root[data-bs-theme="light"] .iac-table--panel thead th[b-qyf2623tsl],
[data-theme="light"] .iac-panel .iac-table thead th[b-qyf2623tsl],
[data-theme="light"] .iac-table--panel thead th[b-qyf2623tsl] {
    background: #002855 !important;
    border-bottom-color: var(--iac-gold) !important;
    color: #ffffff !important;
}

:root[data-bs-theme="light"] .iac-panel .iac-table tbody tr:nth-child(odd) td[b-qyf2623tsl],
:root[data-bs-theme="light"] .iac-table--panel tbody tr:nth-child(odd) td[b-qyf2623tsl],
[data-theme="light"] .iac-panel .iac-table tbody tr:nth-child(odd) td[b-qyf2623tsl],
[data-theme="light"] .iac-table--panel tbody tr:nth-child(odd) td[b-qyf2623tsl] {
    background: #ffffff !important;
}

:root[data-bs-theme="light"] .iac-panel .iac-table tbody tr:nth-child(even) td[b-qyf2623tsl],
:root[data-bs-theme="light"] .iac-table--panel tbody tr:nth-child(even) td[b-qyf2623tsl],
[data-theme="light"] .iac-panel .iac-table tbody tr:nth-child(even) td[b-qyf2623tsl],
[data-theme="light"] .iac-table--panel tbody tr:nth-child(even) td[b-qyf2623tsl] {
    background: #f7f8fa !important;
}

:root[data-bs-theme="light"] .iac-panel .iac-table tbody tr:hover td[b-qyf2623tsl],
:root[data-bs-theme="light"] .iac-table--panel tbody tr:hover td[b-qyf2623tsl],
[data-theme="light"] .iac-panel .iac-table tbody tr:hover td[b-qyf2623tsl],
[data-theme="light"] .iac-table--panel tbody tr:hover td[b-qyf2623tsl] {
    background: rgba(0,40,85,0.04) !important;
    color: #0d1f3c !important;
}

    /* Navy left-accent on first td of hovered row */
    :root[data-bs-theme="light"] .iac-panel .iac-table tbody tr:hover td:first-child[b-qyf2623tsl],
    :root[data-bs-theme="light"] .iac-table--panel tbody tr:hover td:first-child[b-qyf2623tsl],
    [data-theme="light"] .iac-panel .iac-table tbody tr:hover td:first-child[b-qyf2623tsl],
    [data-theme="light"] .iac-table--panel tbody tr:hover td:first-child[b-qyf2623tsl] {
        border-left: 3px solid #002855 !important;
        padding-left: 11px !important;
    }

:root[data-bs-theme="light"] .iac-panel .iac-table tbody tr[b-qyf2623tsl],
:root[data-bs-theme="light"] .iac-table--panel tbody tr[b-qyf2623tsl],
[data-theme="light"] .iac-panel .iac-table tbody tr[b-qyf2623tsl],
[data-theme="light"] .iac-table--panel tbody tr[b-qyf2623tsl] {
    border-bottom-color: rgba(0,40,85,0.10) !important;
}

/* DARK MODE */
:root[data-bs-theme="dark"] .iac-panel .iac-table thead th[b-qyf2623tsl],
:root[data-bs-theme="dark"] .iac-table--panel thead th[b-qyf2623tsl],
[data-theme="dark"] .iac-panel .iac-table thead th[b-qyf2623tsl],
[data-theme="dark"] .iac-table--panel thead th[b-qyf2623tsl] {
    background: #0e1520 !important;
    border-bottom: 2px solid rgba(241,184,40,0.55) !important;
    color: rgba(255,255,255,0.88) !important;
}

:root[data-bs-theme="dark"] .iac-panel .iac-table tbody tr:nth-child(odd) td[b-qyf2623tsl],
:root[data-bs-theme="dark"] .iac-table--panel tbody tr:nth-child(odd) td[b-qyf2623tsl],
[data-theme="dark"] .iac-panel .iac-table tbody tr:nth-child(odd) td[b-qyf2623tsl],
[data-theme="dark"] .iac-table--panel tbody tr:nth-child(odd) td[b-qyf2623tsl] {
    background: #1a2236 !important;
}

:root[data-bs-theme="dark"] .iac-panel .iac-table tbody tr:nth-child(even) td[b-qyf2623tsl],
:root[data-bs-theme="dark"] .iac-table--panel tbody tr:nth-child(even) td[b-qyf2623tsl],
[data-theme="dark"] .iac-panel .iac-table tbody tr:nth-child(even) td[b-qyf2623tsl],
[data-theme="dark"] .iac-table--panel tbody tr:nth-child(even) td[b-qyf2623tsl] {
    background: #1e2840 !important;
}

:root[data-bs-theme="dark"] .iac-panel .iac-table tbody tr:hover td[b-qyf2623tsl],
:root[data-bs-theme="dark"] .iac-table--panel tbody tr:hover td[b-qyf2623tsl],
[data-theme="dark"] .iac-panel .iac-table tbody tr:hover td[b-qyf2623tsl],
[data-theme="dark"] .iac-table--panel tbody tr:hover td[b-qyf2623tsl] {
    background: #263250 !important;
    color: rgba(255,255,255,0.92) !important;
}

    /* Gold left-accent on first td of hovered row */
    :root[data-bs-theme="dark"] .iac-panel .iac-table tbody tr:hover td:first-child[b-qyf2623tsl],
    :root[data-bs-theme="dark"] .iac-table--panel tbody tr:hover td:first-child[b-qyf2623tsl],
    [data-theme="dark"] .iac-panel .iac-table tbody tr:hover td:first-child[b-qyf2623tsl],
    [data-theme="dark"] .iac-table--panel tbody tr:hover td:first-child[b-qyf2623tsl] {
        border-left: 3px solid #F1B828 !important;
        padding-left: 11px !important;
    }

:root[data-bs-theme="dark"] .iac-panel .iac-table tbody tr[b-qyf2623tsl],
:root[data-bs-theme="dark"] .iac-table--panel tbody tr[b-qyf2623tsl],
[data-theme="dark"] .iac-panel .iac-table tbody tr[b-qyf2623tsl],
[data-theme="dark"] .iac-table--panel tbody tr[b-qyf2623tsl] {
    border-bottom-color: rgba(255,255,255,0.09) !important;
}

/* card-body padding reset when table sits flush inside panel */
.iac-panel.saved-sets-card > .card-body[b-qyf2623tsl] {
    padding: 0 !important;
}

.iac-panel.saved-sets-card .table-responsive[b-qyf2623tsl] {
    border-radius: 0 0 14px 14px;
    overflow: hidden;
}

/* FIX: Legend dots — IAC brand colors */
.legend-dot[b-qyf2623tsl] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    display: inline-block;
}

    .legend-dot.used[b-qyf2623tsl] {
        background: rgba(26,122,74,0.28);
        box-shadow: 0 0 4px #1a7a4a;
    }

    .legend-dot.available[b-qyf2623tsl] {
        background: rgba(220, 53, 69, 0.35);
        box-shadow: 0 0 4px rgb(132, 32, 41);
    }

/* ─────────────────────────────────────────────
   21. SUMMARY PILLS — solid visible in both modes
   ───────────────────────────────────────────── */
.summary-label[b-qyf2623tsl] {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.sum-pill[b-qyf2623tsl] {
    display: inline-flex;
    align-items: center;
    height: 32px;
    padding: 0 16px;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
    border: 1px solid transparent;
    transition: all 0.15s;
}

/* LIST PRICE — gold, always visible */
.sum-pill--yellow[b-qyf2623tsl] {
    background: var(--pill-yellow-bg) !important;
    color: var(--pill-yellow-color) !important;
    border-color: var(--pill-yellow-border) !important;
}

/* REP PRICE — green, always visible */
.sum-pill--green[b-qyf2623tsl] {
    background: var(--pill-green-bg) !important;
    color: var(--pill-green-color) !important;
    border-color: var(--pill-green-border) !important;
}

/* SURCHARGE */
.sum-pill--blue[b-qyf2623tsl] {
    background: var(--pill-blue-bg) !important;
    color: var(--pill-blue-color) !important;
    border-color: var(--pill-blue-border) !important;
}

/* ── Total Hardware Value strip ─────────────────────────────── */
.hw-total-strip[b-qyf2623tsl] {
    display: inline-flex;
    align-items: center;
    gap: 0;
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid rgba(26,122,74,0.25);
    box-shadow: 0 1px 4px rgba(26,122,74,0.10);
    font-family: inherit;
}

.hw-total-strip__label[b-qyf2623tsl] {
    padding: 5px 12px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    background: rgba(26,122,74,0.07);
    color: rgba(0,40,85,0.65);
    border-right: 1px solid rgba(26,122,74,0.20);
    white-space: nowrap;
}

.hw-total-strip__value[b-qyf2623tsl] {
    padding: 5px 14px;
    font-size: 13px;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
    background: rgba(26,122,74,0.10);
    color: #1a7a4a;
    white-space: nowrap;
    letter-spacing: 0.01em;
}

/* Flush variant (no left margin, aligns to right) */
.hw-total-strip--flush[b-qyf2623tsl] {
    display: flex;
    justify-content: flex-end;
    width: 100%;
    border-radius: 8px;
}

/* Dark mode */
[data-bs-theme="dark"] .hw-total-strip[b-qyf2623tsl] {
    border-color: rgba(52,199,89,0.22);
    box-shadow: 0 1px 6px rgba(0,0,0,0.22);
}

[data-bs-theme="dark"] .hw-total-strip__label[b-qyf2623tsl] {
    background: rgba(52,199,89,0.07);
    color: rgba(200,220,240,0.60);
    border-right-color: rgba(52,199,89,0.18);
}

[data-bs-theme="dark"] .hw-total-strip__value[b-qyf2623tsl] {
    background: rgba(52,199,89,0.12);
    color: #4ade80;
}

/* ── Saved sets card-footer: responsive stacking at ≤843px ─────── */
@media (max-width: 843px) {
    /* Stack legend + strip into a column, tight gap */
    .saved-sets-card .card-footer[b-qyf2623tsl] {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 6px !important;
    }

        /* Keep the three legend items on one stable row —
       prevents the awkward mid-snap where one item moves before the others */
        .saved-sets-card .card-footer > small[b-qyf2623tsl] {
            flex-wrap: nowrap !important;
            gap: 12px !important;
        }

        /* Strip stays compact and right-aligned rather than stretching full width */
        .saved-sets-card .card-footer .hw-total-strip[b-qyf2623tsl] {
            align-self: flex-end;
        }
}

/* ── At very narrow widths let the legend items wrap naturally ──── */
@media (max-width: 480px) {
    .saved-sets-card .card-footer > small[b-qyf2623tsl] {
        flex-wrap: wrap !important;
        gap: 8px 14px !important;
    }
}

/* ─────────────────────────────────────────────
   23. IAC OFFCANVAS
   ───────────────────────────────────────────── */
.iac-offcanvas[b-qyf2623tsl]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--iac-accent), transparent);
    opacity: 0.70;
    pointer-events: none;
    z-index: 1;
}

.iac-offcanvas__header[b-qyf2623tsl] {
    padding: 22px 24px 18px !important;
    border-bottom: 1px solid var(--iac-border) !important;
    background: var(--iac-surface) !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
}

.iac-offcanvas__title-group[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.iac-offcanvas__icon[b-qyf2623tsl] {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: var(--iac-accent-dim);
    border: 1px solid var(--iac-accent-border);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

    .iac-offcanvas__icon svg[b-qyf2623tsl] {
        width: 16px;
        height: 16px;
        color: var(--iac-accent);
    }

.iac-offcanvas__title[b-qyf2623tsl] {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: var(--iac-text-primary) !important;
    letter-spacing: 0.02em;
    line-height: 1.2;
}

.iac-offcanvas__subtitle[b-qyf2623tsl] {
    display: block;
    font-size: 11px;
    color: var(--iac-text-muted);
    letter-spacing: 0.03em;
    margin-top: 2px;
}

.iac-offcanvas__close[b-qyf2623tsl] {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    border: 1px solid var(--iac-border);
    background: transparent;
    color: var(--iac-text-secondary);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s;
    flex-shrink: 0;
    margin-top: 2px;
    padding: 0;
}

    .iac-offcanvas__close:hover[b-qyf2623tsl] {
        background: var(--iac-close-hover);
        border-color: var(--iac-border-hover);
    }

    .iac-offcanvas__close svg[b-qyf2623tsl] {
        width: 14px;
        height: 14px;
    }

.iac-offcanvas__body[b-qyf2623tsl] {
    padding: 22px 24px !important;
    background: var(--iac-surface) !important;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: var(--iac-scrollbar) transparent;
}

    .iac-offcanvas__body[b-qyf2623tsl]::-webkit-scrollbar {
        width: 4px;
    }

    .iac-offcanvas__body[b-qyf2623tsl]::-webkit-scrollbar-thumb {
        background: var(--iac-scrollbar);
        border-radius: 4px;
    }

.iac-offcanvas__req-note[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 11px;
    color: var(--iac-text-muted);
    padding: 8px 12px;
    margin-bottom: 18px;
    background: var(--iac-req-note-bg);
    border: 1px solid var(--iac-border);
    border-radius: 8px;
}

.iac-offcanvas__req-dot[b-qyf2623tsl] {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--iac-accent);
    flex-shrink: 0;
    opacity: 0.85;
}

.iac-offcanvas__label[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: var(--iac-text-secondary) !important;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    margin-bottom: 6px !important;
}

.iac-offcanvas__req-star[b-qyf2623tsl] {
    color: var(--iac-accent);
    font-size: 13px;
    line-height: 1;
    margin-top: -1px;
}

.iac-offcanvas__input.form-control[b-qyf2623tsl] {
    background: #F7F9FC;
    border: 1px solid #D6DFEA;
    border-radius: 10px !important;
    padding: 10px 14px !important;
    font-size: 14px !important;
    color: var(--iac-text-primary) !important;
    box-shadow: none !important;
}

    .iac-offcanvas__input.form-control[b-qyf2623tsl]::placeholder {
        color: var(--iac-text-muted) !important;
    }

    .iac-offcanvas__input.form-control:focus[b-qyf2623tsl] {
        border-color: var(--iac-accent) !important;
        box-shadow: 0 0 0 3px var(--iac-accent-glow) !important;
        background: var(--iac-surface) !important;
    }

    .iac-offcanvas__input--disabled.form-control[b-qyf2623tsl],
    .iac-offcanvas__input.form-control:disabled[b-qyf2623tsl] {
        background: #EEF2F6;
        border: 1px solid #D7DEE8;
        color: #8A97A8;
        cursor: not-allowed;
        opacity: 1;
    }

.iac-offcanvas__select.form-control[b-qyf2623tsl] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%230d1f3c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.50'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
    padding-right: 36px !important;
    cursor: pointer;
}

[data-bs-theme="dark"] .iac-offcanvas__select.form-control[b-qyf2623tsl] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.50'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") !important;
}

.iac-offcanvas__hint[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 11px;
    color: var(--iac-text-muted);
    margin-top: 5px;
}

    .iac-offcanvas__hint svg[b-qyf2623tsl] {
        width: 11px;
        height: 11px;
        flex-shrink: 0;
    }

.iac-offcanvas__divider[b-qyf2623tsl] {
    height: 1px;
    background: var(--iac-border);
    margin: 2px 0;
}

.iac-offcanvas__btn-done[b-qyf2623tsl] {
    flex: 1;
    padding: 11px 20px;
    border-radius: 10px;
    border: 1px solid rgba(26,122,74,0.40);
    background: #1a7a4a;
    color: #ffffff;
    font-family: 'din-2014', 'DIN Pro', sans-serif !important;
    font-size: 14px;
    font-weight: 800;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    box-shadow: 0 3px 12px rgba(26,122,74,0.35), 0 1px 3px rgba(0,0,0,0.14);
    transition: all 0.15s;
    letter-spacing: 0.02em;
}

    .iac-offcanvas__btn-done:hover[b-qyf2623tsl] {
        background: #155f39;
        border-color: rgba(26,122,74,0.60);
        box-shadow: 0 5px 20px rgba(26,122,74,0.45), 0 0 0 3px rgba(26,122,74,0.18);
        transform: translateY(-1px);
        filter: none;
    }

    .iac-offcanvas__btn-done svg[b-qyf2623tsl] {
        width: 15px;
        height: 15px;
    }

:root[data-bs-theme="dark"] .iac-offcanvas__btn-done[b-qyf2623tsl],
[data-theme="dark"] .iac-offcanvas__btn-done[b-qyf2623tsl] {
    background: rgba(26,122,74,0.22);
    border-color: rgba(34,197,94,0.40);
    color: #86efac;
    box-shadow: 0 0 0 1px rgba(34,197,94,0.25), 0 4px 18px rgba(26,122,74,0.50), 0 0 28px rgba(34,197,94,0.18);
    text-shadow: 0 0 10px rgba(34,197,94,0.45);
}

    :root[data-bs-theme="dark"] .iac-offcanvas__btn-done:hover[b-qyf2623tsl],
    [data-theme="dark"] .iac-offcanvas__btn-done:hover[b-qyf2623tsl] {
        background: rgba(26,122,74,0.34);
        border-color: rgba(34,197,94,0.60);
        color: #ffffff;
        box-shadow: 0 0 0 1px rgba(34,197,94,0.45), 0 5px 22px rgba(26,122,74,0.55), 0 0 30px rgba(34,197,94,0.25);
        text-shadow: 0 0 16px rgba(34,197,94,0.65);
        transform: translateY(-1px);
        filter: none;
    }


/* =============================================================
   IAC OFFCANVAS — CANCEL BUTTON (matches Export PDF / btn-utility-solid)
   ============================================================= */
.iac-offcanvas__btn-cancel[b-qyf2623tsl] {
    padding: 11px 16px !important;
    border-radius: 10px !important;
    border: 1px solid rgba(153,27,27,0.50) !important;
    background: #991b1b !important;
    color: #ffffff !important;
    font-family: 'din-2014', 'DIN Pro', sans-serif !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    cursor: pointer !important;
    transition: all 0.15s !important;
    box-shadow: 0 3px 12px rgba(153,27,27,0.35), 0 1px 3px rgba(0,0,0,0.14) !important;
}

    .iac-offcanvas__btn-cancel:hover[b-qyf2623tsl] {
        background: #7f1d1d !important;
        border-color: rgba(153,27,27,0.70) !important;
        color: #ffffff !important;
        box-shadow: 0 5px 20px rgba(153,27,27,0.45), 0 0 0 3px rgba(196,30,30,0.20) !important;
        transform: translateY(-1px) !important;
    }

:root[data-bs-theme="dark"] .iac-offcanvas__btn-cancel[b-qyf2623tsl],
[data-theme="dark"] .iac-offcanvas__btn-cancel[b-qyf2623tsl] {
    background: rgba(220,38,38,0.22) !important;
    border-color: rgba(239,68,68,0.45) !important;
    color: #fca5a5 !important;
    box-shadow: 0 0 0 1px rgba(239,68,68,0.35), 0 4px 18px rgba(220,38,38,0.50), 0 0 28px rgba(239,68,68,0.20) !important;
    text-shadow: 0 0 10px rgba(239,68,68,0.55) !important;
}

    :root[data-bs-theme="dark"] .iac-offcanvas__btn-cancel:hover[b-qyf2623tsl],
    [data-theme="dark"] .iac-offcanvas__btn-cancel:hover[b-qyf2623tsl] {
        background: rgba(220,38,38,0.34) !important;
        border-color: rgba(239,68,68,0.65) !important;
        color: #ffffff !important;
        box-shadow: 0 0 0 1px rgba(239,68,68,0.55), 0 5px 24px rgba(220,38,38,0.60), 0 0 36px rgba(239,68,68,0.30) !important;
        text-shadow: 0 0 16px rgba(239,68,68,0.70) !important;
        transform: translateY(-1px) !important;
    }

/* ─────────────────────────────────────────────
   25. FOOTER
   ───────────────────────────────────────────── */
.iac-login-footer[b-qyf2623tsl],
.iac-login-footer-img[b-qyf2623tsl] {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
}

/* ─────────────────────────────────────────────
   26. RESPONSIVE
   ───────────────────────────────────────────── */
/* ─────────────────────────────────────────────
   RESPONSIVE — TABLET → PHONE
   ───────────────────────────────────────────── */

/* ── Tablet: stack the two-column editor ── */
@media (max-width: 1100px) {
    .doors-editor.with-hardware[b-qyf2623tsl] {
        grid-template-columns: 1fr;
    }
}

/* ── Mobile (≤768px) ── */
@media (max-width: 768px) {
    /* page-shell supplies the 20px side padding for ALL panels at this breakpoint.
       Override Bootstrap's .container-fluid gutters (--bs-gutter-x = 0.75rem = 12px)
       so the wrapper adds zero extra horizontal space. */
    .doors-editor-wrapper[b-qyf2623tsl] {
        padding-left: 20px !important;
        padding-right: 20px !important;
        padding-bottom: 24px;
    }

        /* Kill the .row's Bootstrap negative side-margins and the col gutters so
       panels sit flush inside the wrapper's 20px padding with no extra indent */
        .doors-editor-wrapper > .row[b-qyf2623tsl] {
            margin-left: 0 !important;
            margin-right: 0 !important;
        }

            .doors-editor-wrapper > .row > [class*="col"][b-qyf2623tsl] {
                padding-left: 0 !important;
                padding-right: 0 !important;
            }

    .page-shell[b-qyf2623tsl] {
        padding: 0 20px;
    }

    /* Offcanvas fills screen */
    .iac-offcanvas[b-qyf2623tsl] {
        width: 100vw !important;
        bottom: 0 !important;
    }

    /* Editor columns always stack */
    .doors-editor.with-hardware[b-qyf2623tsl],
    .doors-editor.solo-pad[b-qyf2623tsl] {
        grid-template-columns: 1fr;
        padding-left: 0;
        padding-right: 0;
    }

    /* section-card panels live in the component root with no padding parent —
       give them explicit 20px side margins to match the page-shell header indent */
    .section-card[b-qyf2623tsl] {
        margin-left: 20px;
        margin-right: 20px;
    }

    /* Quotes header wraps tightly */
    .quotes-header[b-qyf2623tsl] {
        margin: 12px 0 16px;
        padding: 12px 14px;
        gap: 10px;
    }

        .quotes-header h3[b-qyf2623tsl] {
            font-size: 13px;
        }

    /* Door header tools: wrap and shrink */
    .door-header-tools[b-qyf2623tsl] {
        gap: 6px;
    }

    .header-select--compact[b-qyf2623tsl] {
        min-width: 110px;
        max-width: 160px;
        font-size: 11px;
        height: 34px;
        padding: 3px 8px;
    }

    .form-select.header-select[b-qyf2623tsl],
    .form-select.header-select--compact[b-qyf2623tsl],
    select.header-select[b-qyf2623tsl],
    select.header-select--compact[b-qyf2623tsl] {
        min-width: 110px !important;
        max-width: 180px !important;
    }

    .mark-input[b-qyf2623tsl] {
        min-width: 68px;
        max-width: 100px;
        height: 28px;
    }

    /* Card body padding */
    .iac-panel .card-body[b-qyf2623tsl] {
        padding: 14px 12px;
    }

    .iac-panel .card-header[b-qyf2623tsl],
    .iac-panel .door-header[b-qyf2623tsl] {
        padding: 10px 12px;
    }

    .iac-panel .card-footer[b-qyf2623tsl] {
        padding: 10px 12px;
    }

    /* Order actions: stack buttons vertically, full-width */
    .order-actions-wrap[b-qyf2623tsl] {
        padding: 10px 0 16px;
    }

        .order-actions-wrap .btn-group-solid[b-qyf2623tsl] {
            flex-direction: column;
            width: 100%;
            align-items: stretch;
        }

            .order-actions-wrap .btn-group-solid .btn[b-qyf2623tsl] {
                width: 100%;
                justify-content: center;
            }

        /* Pricing mode toggles: move below, not absolute-positioned */
        .order-actions-wrap .pricing-mode-toggles[b-qyf2623tsl] {
            position: static !important;
            transform: none !important;
            width: 100% !important;
            max-width: 100% !important;
            justify-content: center !important;
            margin-top: 6px;
        }

    /* Quote table: horizontally scrollable */
    .table-responsive-wrap[b-qyf2623tsl] {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    /* Summary banner: wrap and shrink */
    .order-summary-banner[b-qyf2623tsl] {
        font-size: 0.72rem;
        padding: 0.4rem 0.75rem;
        gap: 0.4rem 0.75rem;
        flex-direction: row;
        flex-wrap: wrap;
        align-items: center;
    }

    .order-summary-val[b-qyf2623tsl] {
        font-size: 0.80rem;
    }

    /* Footer totals: stack */
    .card-footer.d-flex.flex-wrap.justify-content-between[b-qyf2623tsl] {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    /* Double-leaf column borders */
    .card-body .card .row > .col-md-6:first-child[b-qyf2623tsl] {
        border-right: none;
        border-bottom: 1px solid var(--divider);
        padding-right: 14px;
        padding-bottom: 16px;
    }

    .card-body .card .row > .col-md-6:last-child[b-qyf2623tsl] {
        padding-left: 14px;
        padding-top: 16px;
    }

    /* Hardware sets table */
    .iac-panel.saved-sets-card .table-responsive[b-qyf2623tsl] {
        max-height: none;
    }

    /* Comp pills: allow wrapping */
    .comp-grid[b-qyf2623tsl] {
        grid-template-columns: 1fr;
    }

    .comp-pill--wide[b-qyf2623tsl] {
        width: 100%;
    }
}

/* ── Phone (≤575px) ── */
@media (max-width: 575px) {
    /* Same Bootstrap gutter override as 768px block */
    .doors-editor-wrapper[b-qyf2623tsl] {
        padding-left: 20px !important;
        padding-right: 20px !important;
        padding-bottom: 20px;
    }

        .doors-editor-wrapper > .row[b-qyf2623tsl] {
            margin-left: 0 !important;
            margin-right: 0 !important;
        }

            .doors-editor-wrapper > .row > [class*="col"][b-qyf2623tsl] {
                padding-left: 0 !important;
                padding-right: 0 !important;
            }

    .page-shell[b-qyf2623tsl] {
        padding: 0 20px;
    }

    /* Header banner */
    .quotes-header[b-qyf2623tsl] {
        margin: 10px 0 14px;
        padding: 10px 12px;
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
        border-radius: 10px;
    }

        .quotes-header h3[b-qyf2623tsl] {
            font-size: 12px;
        }

    /* Toggles full width */
    .include-hw-toggle[b-qyf2623tsl] {
        width: 100%;
    }

    /* Door header tools: wrap more aggressively */
    .door-header-tools[b-qyf2623tsl] {
        gap: 5px;
        width: 100%;
    }

    .header-group[b-qyf2623tsl] {
        gap: 5px;
    }

    .header-select--compact[b-qyf2623tsl] {
        min-width: 95px;
        max-width: 140px;
        font-size: 11px;
        height: 32px;
    }

    .form-select.header-select[b-qyf2623tsl],
    .form-select.header-select--compact[b-qyf2623tsl],
    select.header-select[b-qyf2623tsl],
    select.header-select--compact[b-qyf2623tsl] {
        min-width: 95px !important;
        max-width: 150px !important;
    }

    .mark-input[b-qyf2623tsl] {
        min-width: 60px;
        max-width: 90px;
        height: 26px;
        font-size: 11px;
    }

    /* Same as 768px — section-cards need their own margins since they have no padding parent */
    .section-card[b-qyf2623tsl] {
        margin-left: 20px;
        margin-right: 20px;
    }

    /* Card body — uniform across all four panels */
    .iac-panel .card-body[b-qyf2623tsl] {
        padding: 12px 10px;
    }

    .iac-panel .card-header[b-qyf2623tsl],
    .iac-panel .door-header[b-qyf2623tsl] {
        padding: 8px 10px;
    }

    .iac-panel .card-footer[b-qyf2623tsl] {
        padding: 8px 10px;
    }

    /* Form labels & controls */
    .form-label[b-qyf2623tsl] {
        font-size: 9px !important;
        padding: 2px 6px !important;
    }

    .form-control[b-qyf2623tsl],
    .form-select[b-qyf2623tsl] {
        font-size: 12px !important;
        padding: 7px 10px !important;
        border-radius: 7px !important;
    }

    /* btn group: full width stacked */
    .btn-group-solid[b-qyf2623tsl] {
        width: 100%;
        flex-direction: column !important;
        gap: 6px;
    }

        .btn-group-solid .btn[b-qyf2623tsl] {
            width: 100%;
            font-size: 12px;
            padding: 9px 12px;
        }

    /* Summary banner: keep horizontal row even on tiny phones, allow wrap */
    .order-summary-banner[b-qyf2623tsl] {
        flex-direction: row !important;
        flex-wrap: wrap;
        align-items: center;
        gap: 0.3rem 0.65rem;
        padding: 0.4rem 0.65rem;
    }

    .order-summary-divider[b-qyf2623tsl] {
        display: inline; /* keep pipe dividers visible */
    }

    /* PDF actions bar */
    .pdf-mobile-panel[b-qyf2623tsl] {
        border-radius: 10px;
    }

    /* comp grid: single col always on phone */
    .comp-grid[b-qyf2623tsl],
    .comp-grid--leaf[b-qyf2623tsl] {
        grid-template-columns: 1fr;
    }

    /* Hardware table: narrower cell padding */
    .table > :not(caption) > * > *[b-qyf2623tsl] {
        padding: 5px 6px;
    }

    /* HW set row: stack assign + unassign */
    .icon-btn--unassign[b-qyf2623tsl] {
        display: block;
        margin-top: 4px;
    }

    /* nq modals: full screen bottom sheet on tiny phones */
    .nq-card[b-qyf2623tsl] {
        max-width: 100%;
        border-radius: 18px 18px 0 0;
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
    }

    .nq-overlay[b-qyf2623tsl] {
        align-items: flex-end;
    }
}

/* ─────────────────────────────────────────────
   27. UTILITY
   ───────────────────────────────────────────── */
.form-text[b-qyf2623tsl],
.text-muted[b-qyf2623tsl] {
    color: var(--text-muted) !important;
    font-size: 11px;
}

.text-danger[b-qyf2623tsl] {
    color: var(--btn-danger-color) !important;
}

.text-success[b-qyf2623tsl] {
    color: var(--iac-green) !important;
}

/* ─────────────────────────────────────────────
   28. PDF CONTENT
   ───────────────────────────────────────────── */
#pdfContent[b-qyf2623tsl],
#pdfContent *[b-qyf2623tsl] {
    font-family: 'din-2014', 'DIN Pro', 'DM Sans', sans-serif !important;
}


/* =============================================================
   PATCH v3 — targeted fixes per feedback
   ============================================================= */

/* ── 1. REMOVE DROPDOWN ARROWS from native <select> elements ──
   The browser-rendered chevron inside the dropdown list itself
   is the OS default and cannot be removed with CSS alone, but we
   strip the custom SVG arrow we injected so the field looks clean
   on the closed state when the user wants no arrow at all.
   If your selects use Bootstrap's .form-select class, override: */
.form-select[b-qyf2623tsl] {
    background-image: none !important;
    padding-right: 12px !important;
}
/* Keep compact header selects clean too */
.header-select--compact.form-select[b-qyf2623tsl] {
    background-image: none !important;
    padding-right: 12px !important;
}

/* ── 2. HEADER SELECT WIDTH — let it grow to fit content ──── */
.form-select.header-select[b-qyf2623tsl],
.form-select.header-select--compact[b-qyf2623tsl],
select.header-select[b-qyf2623tsl],
select.header-select--compact[b-qyf2623tsl] {
    min-width: 160px !important;
    max-width: 260px !important;
    width: auto !important;
}

/* ── 3. INFO DOT — bigger, styled like a modern tooltip trigger */
.info-dot[b-qyf2623tsl] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 18px !important;
    height: 18px !important;
    border-radius: 50% !important;
    background: rgba(0,40,85,0.12) !important;
    color: #002855 !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    font-style: italic !important;
    cursor: help !important;
    flex-shrink: 0 !important;
    border: 1.5px solid rgba(0,40,85,0.28) !important;
    transition: background 0.15s, box-shadow 0.15s, border-color 0.15s !important;
    line-height: 1 !important;
    letter-spacing: -0.01em !important;
    box-shadow: 0 1px 4px rgba(0,40,85,0.12) !important;
}

    .info-dot:hover[b-qyf2623tsl] {
        background: #002855 !important;
        color: #F1B828 !important;
        border-color: rgba(241,184,40,0.55) !important;
        box-shadow: 0 2px 10px rgba(0,40,85,0.25) !important;
    }

[data-bs-theme="dark"] .info-dot[b-qyf2623tsl] {
    background: rgba(255,255,255,0.10) !important;
    color: rgba(255,255,255,0.75) !important;
    border-color: rgba(255,255,255,0.22) !important;
}

    [data-bs-theme="dark"] .info-dot:hover[b-qyf2623tsl] {
        background: #F1B828 !important;
        color: #0d1f3c !important;
        border-color: #F1B828 !important;
        box-shadow: 0 2px 12px rgba(241,184,40,0.30) !important;
    }

/* ── 4. TOGGLE — glowing gold ON state in dark mode ────────── */
[data-bs-theme="dark"] .form-check-input:checked[b-qyf2623tsl],
[data-theme="dark"] .form-check-input:checked[b-qyf2623tsl] {
    background-color: #F1B828 !important;
    border-color: #F1B828 !important;
    box-shadow: 0 0 0 3px rgba(241,184,40,0.22), 0 0 10px rgba(241,184,40,0.30) !important;
}
/* OFF state in dark: visible gray track */
[data-bs-theme="dark"] .form-switch .form-check-input:not(:checked)[b-qyf2623tsl],
[data-theme="dark"] .form-switch .form-check-input:not(:checked)[b-qyf2623tsl] {
    background-color: rgba(255,255,255,0.18) !important;
    border-color: rgba(255,255,255,0.28) !important;
    box-shadow: none !important;
}

/* ── 5. ICON BUTTONS — sleek modern colored variants ────────── */

/* Shared base for all three icon buttons */
.btn.icon-btn--preview[b-qyf2623tsl],
.btn.icon-btn--edit[b-qyf2623tsl],
.btn.icon-btn--unassign[b-qyf2623tsl] {
    width: 32px !important;
    height: 32px !important;
    padding: 0 !important;
    border-radius: 9px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    border: 1px solid transparent !important;
    transition: all 0.15s ease !important;
    cursor: pointer !important;
    box-shadow: none !important;
}

    .btn.icon-btn--preview:active[b-qyf2623tsl],
    .btn.icon-btn--edit:active[b-qyf2623tsl],
    .btn.icon-btn--unassign:active[b-qyf2623tsl] {
        transform: scale(0.94) !important;
    }

/* PREVIEW — teal, clear "view/inspect" signal */
.btn.icon-btn--preview[b-qyf2623tsl] {
    background: rgba(13,148,136,0.10) !important;
    border-color: rgba(13,148,136,0.28) !important;
    color: #0d7a6e !important;
}

    .btn.icon-btn--preview:hover[b-qyf2623tsl],
    .btn.icon-btn--preview:focus-visible[b-qyf2623tsl],
    .btn.icon-btn--preview:active[b-qyf2623tsl] {
        background: #0d9488 !important;
        border-color: #0d9488 !important;
        color: #ffffff !important;
        box-shadow: 0 3px 12px rgba(13,148,136,0.32) !important;
        transform: translateY(0) !important;
    }

        .btn.icon-btn--preview:hover svg[b-qyf2623tsl],
        .btn.icon-btn--preview:focus-visible svg[b-qyf2623tsl],
        .btn.icon-btn--preview:active svg[b-qyf2623tsl] {
            color: currentColor !important;
            fill: currentColor !important;
        }

/* DARK — teal glow */
[data-bs-theme="dark"] .btn.icon-btn--preview[b-qyf2623tsl] {
    background: rgba(20,184,166,0.10) !important;
    border-color: rgba(20,184,166,0.26) !important;
    color: rgba(45,212,191,0.92) !important;
}

    [data-bs-theme="dark"] .btn.icon-btn--preview:hover[b-qyf2623tsl],
    [data-bs-theme="dark"] .btn.icon-btn--preview:focus-visible[b-qyf2623tsl],
    [data-bs-theme="dark"] .btn.icon-btn--preview:active[b-qyf2623tsl] {
        background: rgba(20,184,166,0.22) !important;
        border-color: rgba(20,184,166,0.50) !important;
        color: #ccfbf1 !important;
        box-shadow: 0 3px 12px rgba(20,184,166,0.28) !important;
        transform: translateY(0) !important;
    }


/* EDIT — amber/gold accent → clearly an edit/write action */
.btn.icon-btn--edit[b-qyf2623tsl] {
    background: rgba(241,184,40,0.10) !important;
    border-color: rgba(241,184,40,0.28) !important;
    color: #7a5800 !important;
}

    .btn.icon-btn--edit:hover[b-qyf2623tsl] {
        background: rgba(241,184,40,0.22) !important;
        border-color: rgba(241,184,40,0.50) !important;
        color: #5c4000 !important;
        box-shadow: 0 3px 12px rgba(241,184,40,0.22) !important;
        transform: translateY(0) !important;
    }

[data-bs-theme="dark"] .btn.icon-btn--edit[b-qyf2623tsl] {
    background: rgba(241,184,40,0.10) !important;
    border-color: rgba(241,184,40,0.26) !important;
    color: rgba(241,184,40,0.90) !important;
}

    [data-bs-theme="dark"] .btn.icon-btn--edit:hover[b-qyf2623tsl] {
        background: rgba(241,184,40,0.20) !important;
        border-color: rgba(241,184,40,0.45) !important;
        color: #F1B828 !important;
        box-shadow: 0 3px 14px rgba(241,184,40,0.22) !important;
        transform: translateY(0) !important;
    }

/* UNASSIGN — soft red → clearly a remove/destructive action */
.btn.icon-btn--unassign[b-qyf2623tsl] {
    background: rgba(185,28,28,0.08) !important;
    border-color: rgba(185,28,28,0.20) !important;
    color: #b91c1c !important;
}

    .btn.icon-btn--unassign:hover[b-qyf2623tsl] {
        background: rgba(185,28,28,0.16) !important;
        border-color: rgba(185,28,28,0.38) !important;
        color: #991b1b !important;
        box-shadow: 0 3px 12px rgba(185,28,28,0.18) !important;
        transform: translateY(0) !important;
    }

[data-bs-theme="dark"] .btn.icon-btn--unassign[b-qyf2623tsl] {
    background: rgba(239,68,68,0.10) !important;
    border-color: rgba(239,68,68,0.24) !important;
    color: #f87171 !important;
}

    [data-bs-theme="dark"] .btn.icon-btn--unassign:hover[b-qyf2623tsl] {
        background: rgba(239,68,68,0.20) !important;
        border-color: rgba(239,68,68,0.42) !important;
        color: #fca5a5 !important;
        box-shadow: 0 3px 12px rgba(239,68,68,0.20) !important;
        transform: translateY(0) !important;
    }

/* ── 6. DANGER SOLID (delete row) — same polish ─────────────── */
.btn.btn-danger-solid[b-qyf2623tsl] {
    background: #dc2626 !important;
    border-color: #b91c1c !important;
    color: #ffffff !important;
    border-radius: 9px !important;
    font-weight: 700 !important;
    box-shadow: 0 2px 8px rgba(220,38,38,0.28) !important;
    transition: all 0.15s ease !important;
}

    .btn.btn-danger-solid:hover:not(:disabled)[b-qyf2623tsl] {
        background: #b91c1c !important;
        border-color: #991b1b !important;
        box-shadow: 0 4px 14px rgba(185,28,28,0.38) !important;
        transform: translateY(0) !important;
    }

[data-bs-theme="dark"] .btn.btn-danger-solid[b-qyf2623tsl] {
    background: rgba(239,68,68,0.10) !important;
    border-color: rgba(239,68,68,0.24) !important;
    color: #f87171 !important;
}

    [data-bs-theme="dark"] .btn.btn-danger-solid:hover:not(:disabled)[b-qyf2623tsl] {
        background: rgba(239,68,68,0.20) !important;
        transform: translateY(0) !important;
    }

/* ── 7. BADGE bg-secondary (available legend dot color) ─────── */
/* Match the "available but not used" gold from legend-dot.available */
.badge.bg-secondary[b-qyf2623tsl],
.iac-table .badge.bg-secondary[b-qyf2623tsl] {
    background: rgba(241,184,40,0.14) !important;
    color: #7a5800 !important;
    border: 1px solid rgba(241,184,40,0.32) !important;
    font-size: 10px !important;
    font-weight: 700 !important;
    padding: 3px 8px !important;
    border-radius: 5px !important;
}

[data-bs-theme="dark"] .badge.bg-secondary[b-qyf2623tsl],
[data-bs-theme="dark"] .iac-table .badge.bg-secondary[b-qyf2623tsl] {
    background: rgba(241,184,40,0.12) !important;
    color: rgba(241,184,40,0.90) !important;
    border-color: rgba(241,184,40,0.26) !important;
}

/* ── 8. DOOR TYPE BADGE — colored by Single vs Double ───────── */
/* Add class .badge--single-leaf or .badge--double-leaf in your Razor markup */
.badge--single-leaf[b-qyf2623tsl] {
    background: rgba(0,40,85,0.10) !important;
    color: #002855 !important;
    border: 1px solid rgba(0,40,85,0.22) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 4px 10px !important;
    border-radius: 6px !important;
}

[data-bs-theme="dark"] .badge--single-leaf[b-qyf2623tsl] {
    background: rgba(255,255,255,0.09) !important;
    color: rgba(255,255,255,0.82) !important;
    border-color: rgba(255,255,255,0.18) !important;
}

.badge--double-leaf[b-qyf2623tsl] {
    background: rgba(241,184,40,0.16) !important;
    color: #7a5800 !important;
    border: 1px solid rgba(241,184,40,0.36) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 4px 10px !important;
    border-radius: 6px !important;
}

[data-bs-theme="dark"] .badge--double-leaf[b-qyf2623tsl] {
    background: rgba(241,184,40,0.14) !important;
    color: rgba(241,184,40,0.92) !important;
    border-color: rgba(241,184,40,0.30) !important;
}

/* ── 9. SUM PILLS — bold, always-visible brand colors ───────── */
.sum-pill[b-qyf2623tsl] {
    display: inline-flex !important;
    align-items: center !important;
    height: 34px !important;
    padding: 0 18px !important;
    border-radius: 8px !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    font-variant-numeric: tabular-nums !important;
    letter-spacing: 0.01em !important;
    border: 1px solid transparent !important;
    white-space: nowrap !important;
    transition: box-shadow 0.15s !important;
}

    /* LIST PRICE — gold pill */
    .sum-pill.sum-pill--yellow[b-qyf2623tsl],
    .sum-pill--yellow[b-qyf2623tsl] {
        background: rgba(241,184,40,0.20) !important;
        color: #7a5800 !important;
        border-color: rgba(241,184,40,0.45) !important;
        box-shadow: inset 0 1px 0 rgba(255,255,255,0.35), 0 2px 8px rgba(241,184,40,0.15) !important;
    }

        .sum-pill.sum-pill--yellow:hover[b-qyf2623tsl],
        .sum-pill--yellow:hover[b-qyf2623tsl] {
            box-shadow: inset 0 1px 0 rgba(255,255,255,0.35), 0 4px 14px rgba(241,184,40,0.22) !important;
        }

[data-bs-theme="dark"] .sum-pill.sum-pill--yellow[b-qyf2623tsl],
[data-bs-theme="dark"] .sum-pill--yellow[b-qyf2623tsl] {
    background: rgba(241,184,40,0.16) !important;
    color: rgba(241,184,40,0.97) !important;
    border-color: rgba(241,184,40,0.34) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08), 0 2px 8px rgba(241,184,40,0.14) !important;
}

/* REP PRICE — green pill */
.sum-pill.sum-pill--green[b-qyf2623tsl],
.sum-pill--green[b-qyf2623tsl] {
    background: rgba(26,122,74,0.14) !important;
    color: #155f39 !important;
    border-color: rgba(26,122,74,0.32) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.35), 0 2px 8px rgba(26,122,74,0.12) !important;
}

    .sum-pill.sum-pill--green:hover[b-qyf2623tsl],
    .sum-pill--green:hover[b-qyf2623tsl] {
        box-shadow: inset 0 1px 0 rgba(255,255,255,0.35), 0 4px 14px rgba(26,122,74,0.18) !important;
    }

[data-bs-theme="dark"] .sum-pill.sum-pill--green[b-qyf2623tsl],
[data-bs-theme="dark"] .sum-pill--green[b-qyf2623tsl] {
    background: rgba(34,197,94,0.14) !important;
    color: #4ade80 !important;
    border-color: rgba(34,197,94,0.28) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.06), 0 2px 8px rgba(34,197,94,0.12) !important;
}



/* =============================================================
   PATCH v4 — feedback fixes
   ============================================================= */

/* modal-modern: explicit background-color so Bootstrap transparent default never wins */
.modal-modern .modal-content[b-qyf2623tsl] {
    background-color: var(--mm-bg) !important;
}

.modal-modern .modal-body[b-qyf2623tsl] {
    background-color: var(--mm-bg) !important;
}

[data-bs-theme="light"] .modal-modern .modal-content[b-qyf2623tsl],
[data-bs-theme="light"] .modal-modern .modal-body[b-qyf2623tsl] {
    background-color: #ffffff !important;
}

[data-bs-theme="dark"] .modal-modern .modal-content[b-qyf2623tsl],
[data-bs-theme="dark"] .modal-modern .modal-body[b-qyf2623tsl] {
    background-color: #0c1220 !important;
}


/* ── 2. SAVE JOB → amber/orange (was navy) ──────────────────── */
.btn-primary-solid[b-qyf2623tsl] {
    background: #d97706 !important;
    border-color: rgba(255,255,255,0.18) !important;
    color: #ffffff !important;
    box-shadow: 0 3px 14px rgba(217,119,6,0.35) !important;
}

    .btn-primary-solid:hover:not(:disabled)[b-qyf2623tsl] {
        background: #b45309 !important;
        border-color: rgba(255,255,255,0.22) !important;
        color: #ffffff !important;
        transform: translateY(0) !important;
        box-shadow: 0 5px 20px rgba(217,119,6,0.45) !important;
    }

[data-bs-theme="dark"] .btn-primary-solid[b-qyf2623tsl] {
    background: #d97706 !important;
    border-color: rgba(255,255,255,0.14) !important;
    color: #ffffff !important;
    box-shadow: 0 3px 14px rgba(217,119,6,0.40) !important;
}

    [data-bs-theme="dark"] .btn-primary-solid:hover:not(:disabled)[b-qyf2623tsl] {
        background: #b45309 !important;
        color: #ffffff !important;
    }


/* ── 3. ORDER NOW → solid IAC green ────────────────────────── */
.btn-order-now[b-qyf2623tsl] {
    background: #1a7a4a !important;
    border-color: transparent !important;
    color: #ffffff !important;
    box-shadow: 0 3px 14px rgba(26,122,74,0.35) !important;
}

    .btn-order-now:hover:not(:disabled)[b-qyf2623tsl] {
        background: #155f39 !important;
        transform: translateY(0) !important;
        color: #ffffff !important;
        box-shadow: 0 5px 20px rgba(26,122,74,0.45) !important;
    }

[data-bs-theme="dark"] .btn-order-now[b-qyf2623tsl] {
    background: #1a7a4a !important;
    box-shadow: 0 3px 16px rgba(26,122,74,0.40) !important;
}

    [data-bs-theme="dark"] .btn-order-now:hover:not(:disabled)[b-qyf2623tsl] {
        background: #1d8f56 !important;
        color: #ffffff !important;
    }


/* ── 4. DARK MODE TOGGLE TRACK — colored gold when ON ───────── */
[data-bs-theme="dark"] .form-check-input:checked[b-qyf2623tsl],
[data-theme="dark"] .form-check-input:checked[b-qyf2623tsl] {
    background-color: #F1B828 !important;
    border-color: #c9921a !important;
    box-shadow: 0 0 0 3px rgba(241,184,40,0.22), 0 0 12px rgba(241,184,40,0.35) !important;
}
/* OFF track: visible muted blue-gray so position is clear */
[data-bs-theme="dark"] .form-switch .form-check-input:not(:checked)[b-qyf2623tsl],
[data-theme="dark"] .form-switch .form-check-input:not(:checked)[b-qyf2623tsl] {
    background-color: rgba(255,255,255,0.18) !important;
    border-color: rgba(255,255,255,0.30) !important;
    box-shadow: none !important;
}


/* ── 5. PROJECT DETAILS BUTTON — hover (ghost stays ghost) ──── */
.mpl-page-header .btn:hover[b-qyf2623tsl],
.quotes-header .btn[data-bs-target="#projectOffcanvas"]:hover[b-qyf2623tsl],
.btn-project-details:hover[b-qyf2623tsl] {
    background: rgba(255,255,255,0.10) !important;
    border-color: var(--iac-gold) !important;
    color: var(--iac-gold) !important;
    transform: none !important;
    box-shadow: none !important;
}


/* ── 7. BADGE bg-body-secondary — rich branded color both modes */
.badge.bg-body-secondary[b-qyf2623tsl],
.badge.bg-body-secondary.fw-semibold[b-qyf2623tsl],
span.badge.bg-body-secondary[b-qyf2623tsl] {
    background: rgba(0,40,85,0.12) !important;
    color: #002855 !important;
    border: 1px solid rgba(0,40,85,0.22) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    padding: 4px 10px !important;
    border-radius: 6px !important;
    letter-spacing: 0.03em !important;
}

[data-bs-theme="dark"] .badge.bg-body-secondary[b-qyf2623tsl],
[data-bs-theme="dark"] .badge.bg-body-secondary.fw-semibold[b-qyf2623tsl],
[data-bs-theme="dark"] span.badge.bg-body-secondary[b-qyf2623tsl] {
    background: rgba(241,184,40,0.14) !important;
    color: rgba(241,184,40,0.95) !important;
    border-color: rgba(241,184,40,0.30) !important;
}

/* =============================================================
   PATCH v4 — modal bg restore + button swap + toggles + hovers + qty align + badge bg
   ============================================================= */


/* modal-content bg: handled by --mm-bg token */


/* modal-header bg: handled by --mm-head-bg token */


/* removed panel-bg override */


/* modal-footer bg: handled by --mm-surface token */


/* 2) BUTTONS — swap colors:
      - Save Job (btn-primary-solid) = Order Now color (amber)
      - Order Now (btn-order-now) = Green */
.btn-primary-solid[b-qyf2623tsl] {
    background: #d97706 !important;
    border-color: rgba(217,119,6,0.40) !important;
    color: #ffffff !important;
    box-shadow: 0 3px 14px rgba(217,119,6,0.35) !important;
}

    .btn-primary-solid:hover:not(:disabled)[b-qyf2623tsl] {
        background: #b45309 !important;
        border-color: rgba(217,119,6,0.55) !important;
        box-shadow: 0 5px 20px rgba(217,119,6,0.45) !important;
        transform: translateY(0) !important;
        color: #ffffff !important;
    }

[data-bs-theme="dark"] .btn-primary-solid[b-qyf2623tsl] {
    background: rgba(217,119,6,0.22) !important;
    border-color: rgba(217,119,6,0.42) !important;
    color: rgba(255,255,255,0.95) !important;
    box-shadow: 0 3px 16px rgba(0,0,0,0.34) !important;
}

    [data-bs-theme="dark"] .btn-primary-solid:hover:not(:disabled)[b-qyf2623tsl] {
        background: rgba(217,119,6,0.32) !important;
        border-color: rgba(217,119,6,0.58) !important;
        color: #ffffff !important;
    }

.btn-order-now[b-qyf2623tsl] {
    background: #1a7a4a !important;
    border-color: rgba(26,122,74,0.35) !important;
    color: #ffffff !important;
    box-shadow: 0 3px 14px rgba(26,122,74,0.35) !important;
}

    .btn-order-now:hover:not(:disabled)[b-qyf2623tsl] {
        background: #155f39 !important;
        border-color: rgba(26,122,74,0.55) !important;
        box-shadow: 0 5px 20px rgba(26,122,74,0.45) !important;
        transform: translateY(0) !important;
        color: #ffffff !important;
    }

[data-bs-theme="dark"] .btn-order-now[b-qyf2623tsl] {
    background: rgba(26,122,74,0.26) !important;
    border-color: rgba(26,122,74,0.42) !important;
    color: rgba(255,255,255,0.95) !important;
    box-shadow: 0 3px 16px rgba(0,0,0,0.34) !important;
}

    [data-bs-theme="dark"] .btn-order-now:hover:not(:disabled)[b-qyf2623tsl] {
        background: rgba(26,122,74,0.36) !important;
        border-color: rgba(26,122,74,0.58) !important;
    }


/* 3) TOGGLES — dark mode ON track gets a clear “on” color */
:root[data-bs-theme="dark"] .form-switch .form-check-input:checked[b-qyf2623tsl],
[data-theme="dark"] .form-switch .form-check-input:checked[b-qyf2623tsl] {
    background-color: #F1B828 !important; /* gold track */
    border-color: #F1B828 !important;
    box-shadow: 0 0 0 3px rgba(241,184,40,0.22), 0 0 12px rgba(241,184,40,0.30) !important;
}


/* 4) PROJECT DETAILS hover (LIGHT) — make it pop + stay readable */
:root[data-bs-theme="light"] .quotes-header .btn[data-bs-target="#projectOffcanvas"]:hover[b-qyf2623tsl],
:root[data-bs-theme="light"] .btn-project-details:hover[b-qyf2623tsl],
:root[data-theme="light"] .quotes-header .btn[data-bs-target="#projectOffcanvas"]:hover[b-qyf2623tsl],
:root[data-theme="light"] .btn-project-details:hover[b-qyf2623tsl] {
    background: #F1B828 !important;
    border-color: rgba(0,40,85,0.35) !important;
    color: #002855 !important;
    box-shadow: 0 6px 18px rgba(241,184,40,0.25) !important;
}


/* 6) BADGE bg-body-secondary fw-semibold — nicer background in both modes */
.badge.bg-body-secondary.fw-semibold[b-qyf2623tsl],
.badge.bg-body-secondary[b-qyf2623tsl] {
    background: rgba(0,40,85,0.08) !important;
    color: rgba(0,40,85,0.78) !important;
    border: 1px solid rgba(0,40,85,0.16) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.55);
}

:root[data-bs-theme="dark"] .badge.bg-body-secondary.fw-semibold[b-qyf2623tsl],
:root[data-bs-theme="dark"] .badge.bg-body-secondary[b-qyf2623tsl],
[data-theme="dark"] .badge.bg-body-secondary.fw-semibold[b-qyf2623tsl],
[data-theme="dark"] .badge.bg-body-secondary[b-qyf2623tsl] {
    background: rgba(255,255,255,0.08) !important;
    color: rgba(255,255,255,0.86) !important;
    border: 1px solid rgba(255,255,255,0.14) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.08);
}



/* =============================================================
   PATCH v5 — targeted cleanup (status badge, order button, selects)
   ============================================================= */


/* 1) STATUS: "Not used" badge must match legend-dot.available */
.badge.bg-secondary[b-qyf2623tsl],
.iac-table .badge.bg-secondary[b-qyf2623tsl],
.saved-sets-card .badge.bg-secondary[b-qyf2623tsl] {
    background-color: rgba(220, 53, 69, 0.14) !important; /* muted red */
    color: #842029 !important; /* Bootstrap danger text */
    border: 1px solid rgba(220, 53, 69, 0.35);
    font-weight: 600;
}

:root[data-bs-theme="dark"] .badge.bg-secondary[b-qyf2623tsl],
:root[data-bs-theme="dark"] .iac-table .badge.bg-secondary[b-qyf2623tsl],
[data-theme="dark"] .badge.bg-secondary[b-qyf2623tsl],
[data-theme="dark"] .iac-table .badge.bg-secondary[b-qyf2623tsl] {
    background-color: rgba(220, 53, 69, 0.28) !important;
    color: #f1aeb5 !important; /* soft red text */
    border-color: rgba(220, 53, 69, 0.55);
}


/* 2) ORDER button: btn-success-solid should be GREEN (no amber override) */
.btn.btn-solid.btn-success-solid[b-qyf2623tsl],
.btn-success-solid[b-qyf2623tsl] {
    background: #1a7a4a !important;
    border-color: transparent !important;
    color: #ffffff !important;
    box-shadow: 0 3px 14px rgba(26,122,74,0.35) !important;
}

    .btn.btn-solid.btn-success-solid:hover:not(:disabled)[b-qyf2623tsl],
    .btn-success-solid:hover:not(:disabled)[b-qyf2623tsl] {
        background: #155f39 !important;
        box-shadow: 0 5px 20px rgba(26,122,74,0.45) !important;
        transform: translateY(0);
        color: #ffffff !important;
    }

:root[data-bs-theme="dark"] .btn.btn-solid.btn-success-solid[b-qyf2623tsl],
:root[data-bs-theme="dark"] .btn-success-solid[b-qyf2623tsl],
[data-theme="dark"] .btn.btn-solid.btn-success-solid[b-qyf2623tsl],
[data-theme="dark"] .btn-success-solid[b-qyf2623tsl] {
    background: #1a7a4a !important;
    box-shadow: 0 3px 16px rgba(26,122,74,0.40) !important;
}


/* 3) Selects: remove the injected chevron (fix "chevron pattern" on disabled selects) */
.form-select[b-qyf2623tsl],
select.form-select[b-qyf2623tsl],
.iac-offcanvas__select.form-control[b-qyf2623tsl] {
    background-image: none !important;
    background-repeat: no-repeat !important;
    padding-right: 12px !important;
}

    /* Disabled selects should look clean (no weird pattern) */
    .form-select:disabled[b-qyf2623tsl],
    select.form-select:disabled[b-qyf2623tsl],
    .iac-offcanvas__select.form-control:disabled[b-qyf2623tsl] {
        background-image: none !important;
        background-color: var(--input-disabled-bg) !important;
    }

    /* Header selects: allow more room so text doesn't truncate */
    .form-select.header-select[b-qyf2623tsl],
    .form-select.header-select--compact[b-qyf2623tsl],
    select.header-select[b-qyf2623tsl],
    select.header-select--compact[b-qyf2623tsl] {
        min-width: 220px !important;
        max-width: 340px !important;
        width: auto !important;
    }


/* 4) Leaf-type badge coloring (only applies if markup adds a class OR data attribute) */
.badge.bg-body-secondary.badge--single-leaf[b-qyf2623tsl],
.badge.bg-body-secondary[data-leaf="single"][b-qyf2623tsl],
.badge.bg-body-secondary[data-leaf="Single"][b-qyf2623tsl] {
    background: rgba(0,40,85,0.12) !important;
    color: #002855 !important;
    border-color: rgba(0,40,85,0.22) !important;
}

.badge.bg-body-secondary.badge--double-leaf[b-qyf2623tsl],
.badge.bg-body-secondary[data-leaf="double"][b-qyf2623tsl],
.badge.bg-body-secondary[data-leaf="Double"][b-qyf2623tsl] {
    background: rgba(241,184,40,0.18) !important;
    color: #7a5800 !important;
    border-color: rgba(241,184,40,0.36) !important;
}

:root[data-bs-theme="dark"] .badge.bg-body-secondary.badge--single-leaf[b-qyf2623tsl],
:root[data-bs-theme="dark"] .badge.bg-body-secondary[data-leaf="single"][b-qyf2623tsl],
:root[data-bs-theme="dark"] .badge.bg-body-secondary[data-leaf="Single"][b-qyf2623tsl] {
    background: rgba(255,255,255,0.10) !important;
    color: rgba(255,255,255,0.88) !important;
    border-color: rgba(255,255,255,0.18) !important;
}

:root[data-bs-theme="dark"] .badge.bg-body-secondary.badge--double-leaf[b-qyf2623tsl],
:root[data-bs-theme="dark"] .badge.bg-body-secondary[data-leaf="double"][b-qyf2623tsl],
:root[data-bs-theme="dark"] .badge.bg-body-secondary[data-leaf="Double"][b-qyf2623tsl] {
    background: rgba(241,184,40,0.14) !important;
    color: rgba(241,184,40,0.95) !important;
    border-color: rgba(241,184,40,0.30) !important;
}


/* 5) Info "i" icons: make them clearly interactive, consistent with new-age UI */
.info-dot[b-qyf2623tsl],
i.bi-info-circle[b-qyf2623tsl],
i.fa-info-circle[b-qyf2623tsl],
i.fa-circle-info[b-qyf2623tsl] {
    vertical-align: middle;
}

i.bi-info-circle[b-qyf2623tsl],
i.fa-info-circle[b-qyf2623tsl],
i.fa-circle-info[b-qyf2623tsl] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: var(--info-dot-bg);
    color: var(--info-dot-color);
    border: 1px solid var(--panel-border);
    font-size: 12px;
    line-height: 1;
    cursor: help;
    transition: transform .12s ease, background .12s ease, color .12s ease, border-color .12s ease;
    margin-left: 2px;
}

    i.bi-info-circle:hover[b-qyf2623tsl],
    i.fa-info-circle:hover[b-qyf2623tsl],
    i.fa-circle-info:hover[b-qyf2623tsl] {
        transform: translateY(0);
        background: rgba(241,184,40,0.20);
        border-color: rgba(241,184,40,0.35);
        color: var(--iac-navy);
    }


/* =============================================================
   FINAL PATCH — single chevron for ALL selects + solid modal surfaces
   (keeps ONE arrow, prevents "repeating chevrons" artifact)
   ============================================================= */


/* ---- Select chevron assets (defined as vars so they're always present) ---- */
:root[b-qyf2623tsl],
:root[data-bs-theme="light"][b-qyf2623tsl],
[data-theme="light"][b-qyf2623tsl] {
    --iac-select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%230d1f3c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.55'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
}

    :root[data-bs-theme="dark"][b-qyf2623tsl],
    [data-theme="dark"][b-qyf2623tsl] {
        --iac-select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.62'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    }


/* ---- Normalize ALL single-selects to show exactly ONE chevron ---- */
select.form-select[b-qyf2623tsl],
select.form-control[b-qyf2623tsl],
select.header-select[b-qyf2623tsl],
select.header-select--compact[b-qyf2623tsl],
select.iac-offcanvas__select[b-qyf2623tsl],
.iac-offcanvas__select.form-control[b-qyf2623tsl],
.form-select.header-select[b-qyf2623tsl],
.form-select.header-select--compact[b-qyf2623tsl] {
    /* remove native arrow across browsers */
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
    /* force exactly one background layer + stop any repeat artifacts */
    background-image: var(--iac-select-chevron) !important;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
    background-size: 14px 14px !important;
    /* ensure no leftover gradient layer from Bootstrap */
    background-origin: padding-box !important;
    background-clip: padding-box !important;
    /* solid background-color prevents transparency bleed causing tiling */
    background-color: var(--input-bg) !important;
    padding-right: 40px !important;
}


/* Multi-selects should NOT show a chevron */
select[multiple][b-qyf2623tsl],
select[size]:not([size="1"])[b-qyf2623tsl] {
    background-image: none !important;
    padding-right: 12px !important;
}


/* ---- Disabled selects: keep the ONE chevron, but prevent "busy" look ---- */
select:disabled.form-select[b-qyf2623tsl],
select:disabled.form-control[b-qyf2623tsl] {
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
}

/* =============================================================
   PATCH — Dark mode select: fully explicit background shorthand
   Prevents Bootstrap's gradient from combining with SVG chevron
   and causing the tiling/repeating arrow artifact
   ============================================================= */
:root[data-bs-theme="dark"] select.form-select[b-qyf2623tsl],
:root[data-bs-theme="dark"] .form-select[b-qyf2623tsl],
[data-theme="dark"] select.form-select[b-qyf2623tsl],
[data-theme="dark"] .form-select[b-qyf2623tsl] {
    background: var(--input-bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.55'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 12px center / 12px 12px !important;
}

    :root[data-bs-theme="dark"] select.form-select:disabled[b-qyf2623tsl],
    [data-theme="dark"] select.form-select:disabled[b-qyf2623tsl],
    :root[data-bs-theme="dark"] .form-select:disabled[b-qyf2623tsl],
    [data-theme="dark"] .form-select:disabled[b-qyf2623tsl] {
        background: var(--input-disabled-bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.25'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 12px center / 12px 12px !important;
    }

/* =============================================================
   PATCH v6 — button identity, pill label restyle, dark card header
   ============================================================= */

/* ── 1. btn-success-solid DARK MODE — green glow (not yellow/gold)
        Override every earlier definition that set it to gold/amber  ── */
:root[data-bs-theme="dark"] .btn.btn-solid.btn-success-solid[b-qyf2623tsl],
:root[data-bs-theme="dark"] .btn-success-solid[b-qyf2623tsl],
[data-theme="dark"] .btn.btn-solid.btn-success-solid[b-qyf2623tsl],
[data-theme="dark"] .btn-success-solid[b-qyf2623tsl] {
    background: rgba(26,122,74,0.22) !important;
    border-color: rgba(26,122,74,0.45) !important;
    color: #6ee7a8 !important;
    box-shadow: 0 0 0 1px rgba(26,122,74,0.35), 0 3px 18px rgba(26,122,74,0.38) !important;
}

    :root[data-bs-theme="dark"] .btn.btn-solid.btn-success-solid:hover:not(:disabled)[b-qyf2623tsl],
    :root[data-bs-theme="dark"] .btn-success-solid:hover:not(:disabled)[b-qyf2623tsl],
    [data-theme="dark"] .btn.btn-solid.btn-success-solid:hover:not(:disabled)[b-qyf2623tsl],
    [data-theme="dark"] .btn-success-solid:hover:not(:disabled)[b-qyf2623tsl] {
        background: rgba(26,122,74,0.34) !important;
        border-color: rgba(26,122,74,0.65) !important;
        color: #ffffff !important;
        box-shadow: 0 0 0 1px rgba(26,122,74,0.50), 0 5px 24px rgba(26,122,74,0.52) !important;
        transform: translateY(0) !important;
    }

/* ── 2. SUM PILLS — styled as read-only price labels, not buttons
        Compact, flat, non-interactive. Override all earlier pill blocks. ── */
.sum-pill[b-qyf2623tsl],
.sum-pill.sum-pill--yellow[b-qyf2623tsl],
.sum-pill.sum-pill--green[b-qyf2623tsl],
.sum-pill--yellow[b-qyf2623tsl],
.sum-pill--green[b-qyf2623tsl] {
    /* reset button-like dimensions */
    height: auto !important;
    padding: 2px 9px !important;
    border-radius: 4px !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    letter-spacing: 0.03em !important;
    white-space: nowrap !important;
    /* no interaction */
    cursor: default !important;
    pointer-events: none !important;
    /* no hover lift */
    transition: none !important;
    box-shadow: none !important;
    transform: none !important;
}

/* LIGHT — LIST PRICE (yellow): understated gold label */
:root[data-bs-theme="light"] .sum-pill--yellow[b-qyf2623tsl],
[data-theme="light"] .sum-pill--yellow[b-qyf2623tsl],
.sum-pill--yellow[b-qyf2623tsl] {
    background: rgba(241,184,40,0.13) !important;
    color: #5c3d00 !important;
    border: 1px solid rgba(241,184,40,0.32) !important;
    box-shadow: none !important;
}

/* LIGHT — REP PRICE (green): understated green label */
:root[data-bs-theme="light"] .sum-pill--green[b-qyf2623tsl],
[data-theme="light"] .sum-pill--green[b-qyf2623tsl],
.sum-pill--green[b-qyf2623tsl] {
    background: rgba(26,122,74,0.09) !important;
    color: #0f4a2b !important;
    border: 1px solid rgba(26,122,74,0.20) !important;
    box-shadow: none !important;
}

/* DARK — LIST PRICE */
:root[data-bs-theme="dark"] .sum-pill--yellow[b-qyf2623tsl],
[data-theme="dark"] .sum-pill--yellow[b-qyf2623tsl] {
    background: rgba(241,184,40,0.09) !important;
    color: rgba(241,184,40,0.78) !important;
    border: 1px solid rgba(241,184,40,0.20) !important;
    box-shadow: none !important;
}

/* DARK — REP PRICE */
:root[data-bs-theme="dark"] .sum-pill--green[b-qyf2623tsl],
[data-theme="dark"] .sum-pill--green[b-qyf2623tsl] {
    background: rgba(34,197,94,0.07) !important;
    color: rgba(74,222,128,0.80) !important;
    border: 1px solid rgba(34,197,94,0.16) !important;
    box-shadow: none !important;
}

/* Kill all hover effects on pills (belt-and-suspenders) */
.sum-pill--yellow:hover[b-qyf2623tsl],
.sum-pill--green:hover[b-qyf2623tsl],
.sum-pill.sum-pill--yellow:hover[b-qyf2623tsl],
.sum-pill.sum-pill--green:hover[b-qyf2623tsl] {
    box-shadow: none !important;
    transform: none !important;
}

/* ── 3. icon-btn--edit vs icon-btn--preview — visually distinct in LIGHT mode
        edit  = solid IAC navy (action)
        preview = outlined navy ghost (passive/view)                        ── */

/* EDIT — solid filled navy, signals "modify" */
:root[data-bs-theme="light"] .icon-btn--edit[b-qyf2623tsl],
[data-theme="light"] .icon-btn--edit[b-qyf2623tsl] {
    background: #002855 !important;
    border-color: #001e42 !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(0,40,85,0.22) !important;
}

    :root[data-bs-theme="light"] .icon-btn--edit:hover:not(:disabled)[b-qyf2623tsl],
    [data-theme="light"] .icon-btn--edit:hover:not(:disabled)[b-qyf2623tsl] {
        background: #001e42 !important;
        box-shadow: 0 4px 14px rgba(0,40,85,0.32) !important;
        transform: translateY(0) !important;
    }

/* PREVIEW — solid purple, matches dark mode purple glow personality */
:root[data-bs-theme="light"] .icon-btn--preview[b-qyf2623tsl],
[data-theme="light"] .icon-btn--preview[b-qyf2623tsl] {
    background: #6B4CFF !important;
    border-color: #5a3de8 !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(107,76,255,0.30) !important;
}

    :root[data-bs-theme="light"] .icon-btn--preview:hover:not(:disabled)[b-qyf2623tsl],
    [data-theme="light"] .icon-btn--preview:hover:not(:disabled)[b-qyf2623tsl] {
        background: #5a3de8 !important;
        border-color: #4a2fd4 !important;
        box-shadow: 0 4px 14px rgba(107,76,255,0.42) !important;
        transform: translateY(0) !important;
    }

/* ── 4. icon-btn--unassign — danger/red in LIGHT mode ── */
:root[data-bs-theme="light"] .icon-btn--unassign[b-qyf2623tsl],
[data-theme="light"] .icon-btn--unassign[b-qyf2623tsl] {
    background: #dc2626 !important;
    border-color: #b91c1c !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(220,38,38,0.28) !important;
}

    :root[data-bs-theme="light"] .icon-btn--unassign:hover:not(:disabled)[b-qyf2623tsl],
    [data-theme="light"] .icon-btn--unassign:hover:not(:disabled)[b-qyf2623tsl] {
        background: #b91c1c !important;
        box-shadow: 0 4px 14px rgba(220,38,38,0.38) !important;
        transform: translateY(0) !important;
    }

/* ── 5. DARK MODE card header — match the depth/contrast of light mode
        Light has a clearly distinct darker header strip (#d8dde5).
        Dark should mirror that with a noticeably darker strip vs panel.  ── */

/* iac-panel door-header / card-header in dark */
:root[data-bs-theme="dark"] .iac-panel .card-header[b-qyf2623tsl],
:root[data-bs-theme="dark"] .iac-panel .door-header[b-qyf2623tsl],
[data-theme="dark"] .iac-panel .card-header[b-qyf2623tsl],
[data-theme="dark"] .iac-panel .door-header[b-qyf2623tsl] {
    background: #0b0f1a !important;
    border-bottom: 1px solid rgba(241,184,40,0.28) !important;
    position: relative !important;
}

    /* Bleed: inset shadow on the header itself fades gold downward into the panel */
    :root[data-bs-theme="dark"] .iac-panel .card-header[b-qyf2623tsl]::after,
    :root[data-bs-theme="dark"] .iac-panel .door-header[b-qyf2623tsl]::after,
    [data-theme="dark"] .iac-panel .card-header[b-qyf2623tsl]::after,
    [data-theme="dark"] .iac-panel .door-header[b-qyf2623tsl]::after {
        content: "";
        position: absolute;
        left: 0;
        right: 0;
        bottom: 0;
        height: 1px;
        pointer-events: none;
        box-shadow: 0 6px 14px rgba(241,184,40,0.18);
    }
/* inner double-leaf card headers in dark */
:root[data-bs-theme="dark"] .card-body .card .card-header[b-qyf2623tsl],
[data-theme="dark"] .card-body .card .card-header[b-qyf2623tsl] {
    background: #0e1320 !important;
    border-bottom: 1px solid rgba(255,255,255,0.10) !important;
    color: rgba(255,255,255,0.75) !important;
}

/* door-header title text in dark — echo light mode's contrast */
:root[data-bs-theme="dark"] .iac-panel .card-header h5[b-qyf2623tsl],
:root[data-bs-theme="dark"] .iac-panel .card-header h6[b-qyf2623tsl],
:root[data-bs-theme="dark"] .iac-panel .door-header h5[b-qyf2623tsl],
:root[data-bs-theme="dark"] .iac-panel .door-header h6[b-qyf2623tsl],
:root[data-bs-theme="dark"] .iac-panel .door-header .small-label[b-qyf2623tsl],
[data-theme="dark"] .iac-panel .card-header h5[b-qyf2623tsl],
[data-theme="dark"] .iac-panel .card-header h6[b-qyf2623tsl],
[data-theme="dark"] .iac-panel .door-header h5[b-qyf2623tsl],
[data-theme="dark"] .iac-panel .door-header h6[b-qyf2623tsl],
[data-theme="dark"] .iac-panel .door-header .small-label[b-qyf2623tsl] {
    color: rgba(255,255,255,0.82) !important;
}



/* =============================================================
   PATCH v7 — dark mode pills: more label-like with gentle solid body
   ============================================================= */


/* =========================
   SUM PILLS — make them read as LABELS (not buttons)
   - no “button” border/shape
   - no hover affordance
   - left color stripe + subtle tone only
   ========================= */


/* LIGHT — LIST PRICE (gold label, NOT button) */
:root[data-bs-theme="light"] .sum-pill--yellow[b-qyf2623tsl],
[data-theme="light"] .sum-pill--yellow[b-qyf2623tsl],
.sum-pill--yellow[b-qyf2623tsl] {
    background: rgba(241,184,40,0.10) !important;
    color: rgba(114,84,0,0.98) !important;
    border: 0 !important;
    border-left: 4px solid rgba(241,184,40,0.95) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 2px 10px 2px 10px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.01em !important;
    font-weight: 800 !important;
    cursor: default !important;
    user-select: text !important;
    text-decoration: none !important;
}


/* LIGHT — REP PRICE (green label, NOT button) */
:root[data-bs-theme="light"] .sum-pill--green[b-qyf2623tsl],
[data-theme="light"] .sum-pill--green[b-qyf2623tsl],
.sum-pill--green[b-qyf2623tsl] {
    background: rgba(34,197,94,0.10) !important;
    color: rgba(10,92,49,0.98) !important;
    border: 0 !important;
    border-left: 4px solid rgba(34,197,94,0.95) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 2px 10px 2px 10px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.01em !important;
    font-weight: 800 !important;
    cursor: default !important;
    user-select: text !important;
    text-decoration: none !important;
}


/* DARK — LIST PRICE (gold label, NOT button) */
:root[data-bs-theme="dark"] .sum-pill--yellow[b-qyf2623tsl],
[data-theme="dark"] .sum-pill--yellow[b-qyf2623tsl],
[data-bs-theme="dark"] .sum-pill--yellow[b-qyf2623tsl] {
    background: rgba(241,184,40,0.12) !important;
    color: rgba(255,220,100,0.96) !important;
    border: 0 !important;
    border-left: 4px solid rgba(241,184,40,0.85) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 2px 10px 2px 10px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.01em !important;
    font-weight: 800 !important;
    cursor: default !important;
    user-select: text !important;
    text-decoration: none !important;
}


/* DARK — REP PRICE (green label, NOT button) */
:root[data-bs-theme="dark"] .sum-pill--green[b-qyf2623tsl],
[data-theme="dark"] .sum-pill--green[b-qyf2623tsl],
[data-bs-theme="dark"] .sum-pill--green[b-qyf2623tsl] {
    background: rgba(34,197,94,0.11) !important;
    color: rgba(110,231,183,0.96) !important;
    border: 0 !important;
    border-left: 4px solid rgba(34,197,94,0.78) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    padding: 2px 10px 2px 10px !important;
    line-height: 1.2 !important;
    letter-spacing: 0.01em !important;
    font-weight: 800 !important;
    cursor: default !important;
    user-select: text !important;
    text-decoration: none !important;
}


/* =============================================================
   PATCH — Small Labels, Form Labels, Switches & Badges — pop in both modes
   ============================================================= */

/* ──────────────────────────────────────────────────────────────
   SMALL-LABEL  (used as field caption / section sub-header)
   Light: solid navy text, gold left-bar accent
   Dark:  bright white text, gold left-bar accent
   ────────────────────────────────────────────────────────────── */
.small-label[b-qyf2623tsl] {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    color: #001e42; /* solid dark navy — not faded */
    padding-left: 7px;
    border-left: 3px solid var(--iac-gold);
    line-height: 1.4;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

:root[data-bs-theme="dark"] .small-label[b-qyf2623tsl],
[data-theme="dark"] .small-label[b-qyf2623tsl] {
    color: rgba(255,255,255,0.88) !important;
    border-left-color: var(--iac-gold) !important;
}


/* ──────────────────────────────────────────────────────────────
   FORM-LABEL  (field labels above inputs — mb-0 + small-label combos)
   Light: navy, visible against white/light card body
   Dark:  soft gold-white so labels lift off the dark surface
   ────────────────────────────────────────────────────────────── */
.form-label[b-qyf2623tsl],
.form-label.mb-0[b-qyf2623tsl],
label.form-label[b-qyf2623tsl],
label.small-label[b-qyf2623tsl],
.form-label.small-label[b-qyf2623tsl] {
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: 0.09em !important;
    text-transform: uppercase !important;
    color: #001e42 !important;
    margin-bottom: 4px !important;
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    padding: 3px 8px 3px 7px !important;
    border-left: 3px solid var(--iac-gold) !important;
    border-radius: 4px 4px 0 0 !important;
    background: rgba(0,40,85,0.05) !important;
    width: 100% !important;
    line-height: 1.4 !important;
}

:root[data-bs-theme="dark"] .form-label[b-qyf2623tsl],
:root[data-bs-theme="dark"] .form-label.mb-0[b-qyf2623tsl],
:root[data-bs-theme="dark"] label.form-label[b-qyf2623tsl],
:root[data-bs-theme="dark"] label.small-label[b-qyf2623tsl],
:root[data-bs-theme="dark"] .form-label.small-label[b-qyf2623tsl],
[data-theme="dark"] .form-label[b-qyf2623tsl],
[data-theme="dark"] .form-label.mb-0[b-qyf2623tsl],
[data-theme="dark"] label.form-label[b-qyf2623tsl],
[data-theme="dark"] label.small-label[b-qyf2623tsl],
[data-theme="dark"] .form-label.small-label[b-qyf2623tsl] {
    color: rgba(255,255,255,0.90) !important;
    border-left-color: var(--iac-gold) !important;
    background: rgba(241,184,40,0.10) !important;
}


/* ── d-block on form-label must not override our flex/width styles ── */
label.form-label.d-block[b-qyf2623tsl],
.form-label.d-block[b-qyf2623tsl] {
    display: flex !important;
    width: 100% !important;
}

Slightly larger than field labels[b-qyf2623tsl], readable inline with the toggle
────────────────────────────────────────────────────────────── */
.form-check-label[b-qyf2623tsl],
.form-check.mb-0 .form-check-label[b-qyf2623tsl],
.form-check.form-switch.mb-0 .form-check-label[b-qyf2623tsl] {
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.03em !important;
    color: #001e42 !important;
    cursor: pointer !important;
    padding-left: 10px !important;
}

:root[data-bs-theme="dark"] .form-check-label[b-qyf2623tsl],
:root[data-bs-theme="dark"] .form-check.mb-0 .form-check-label[b-qyf2623tsl],
:root[data-bs-theme="dark"] .form-check.form-switch.mb-0 .form-check-label[b-qyf2623tsl],
[data-theme="dark"] .form-check-label[b-qyf2623tsl],
[data-theme="dark"] .form-check.mb-0 .form-check-label[b-qyf2623tsl],
[data-theme="dark"] .form-check.form-switch.mb-0 .form-check-label[b-qyf2623tsl] {
    color: rgba(255,255,255,0.88) !important;
}


/* ──────────────────────────────────────────────────────────────
   FORM-SWITCH TRACK  (the toggle pill itself)
   Light unchecked: white track, navy thumb — clearly a switch
   Light checked:   navy track, white thumb
   Dark unchecked:  mid-grey track, light thumb — visible on dark card
   Dark checked:    gold track, dark thumb — high contrast
   ────────────────────────────────────────────────────────────── */

/* Unchecked light */
:root[data-bs-theme="light"] .form-switch .form-check-input[b-qyf2623tsl],
[data-theme="light"] .form-switch .form-check-input[b-qyf2623tsl] {
    background-color: #dce2ea !important;
    border-color: rgba(0,40,85,0.25) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(0,40,85,0.55)'/%3E%3C/svg%3E") !important;
}

    /* Checked light */
    :root[data-bs-theme="light"] .form-switch .form-check-input:checked[b-qyf2623tsl],
    [data-theme="light"] .form-switch .form-check-input:checked[b-qyf2623tsl] {
        background-color: #002855 !important;
        border-color: #002855 !important;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(255,255,255,0.97)'/%3E%3C/svg%3E") !important;
        box-shadow: 0 0 0 3px rgba(0,40,85,0.14) !important;
    }

/* Unchecked dark */
:root[data-bs-theme="dark"] .form-switch .form-check-input:not(:checked)[b-qyf2623tsl],
[data-theme="dark"] .form-switch .form-check-input:not(:checked)[b-qyf2623tsl] {
    background-color: rgba(255,255,255,0.18) !important;
    border-color: rgba(255,255,255,0.28) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(255,255,255,0.75)'/%3E%3C/svg%3E") !important;
}

/* Checked dark — gold, max contrast */
:root[data-bs-theme="dark"] .form-switch .form-check-input:checked[b-qyf2623tsl],
[data-theme="dark"] .form-switch .form-check-input:checked[b-qyf2623tsl] {
    background-color: #F1B828 !important;
    border-color: #F1B828 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(0,0,0,0.75)'/%3E%3C/svg%3E") !important;
    box-shadow: 0 0 0 3px rgba(241,184,40,0.24), 0 0 12px rgba(241,184,40,0.28) !important;
}


/* ──────────────────────────────────────────────────────────────
   BADGE  bg-body-secondary / fw-semibold
   Light: solid navy chip — stands out from white card body
   Dark:  gold-tinted chip — pops from dark panel surface
   ────────────────────────────────────────────────────────────── */
.badge.bg-body-secondary[b-qyf2623tsl],
.badge.bg-body-secondary.fw-semibold[b-qyf2623tsl],
span.badge.bg-body-secondary[b-qyf2623tsl] {
    background: #002855 !important;
    color: #ffffff !important;
    border: 1px solid rgba(0,40,85,0.70) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    padding: 4px 10px !important;
    border-radius: 6px !important;
    box-shadow: 0 1px 4px rgba(0,40,85,0.22) !important;
}

:root[data-bs-theme="dark"] .badge.bg-body-secondary[b-qyf2623tsl],
:root[data-bs-theme="dark"] .badge.bg-body-secondary.fw-semibold[b-qyf2623tsl],
:root[data-bs-theme="dark"] span.badge.bg-body-secondary[b-qyf2623tsl],
[data-theme="dark"] .badge.bg-body-secondary[b-qyf2623tsl],
[data-theme="dark"] .badge.bg-body-secondary.fw-semibold[b-qyf2623tsl],
[data-theme="dark"] span.badge.bg-body-secondary[b-qyf2623tsl] {
    background: rgba(241,184,40,0.18) !important;
    color: #ffd54f !important;
    border: 1px solid rgba(241,184,40,0.40) !important;
    box-shadow: 0 1px 6px rgba(241,184,40,0.15) !important;
}


/* =============================================================
   PATCH — Project Info Banner, Action Bar Toggles, Door Card Header
   ============================================================= */

/* ──────────────────────────────────────────────────────────────
   1. QUOTES-HEADER → proper banner strip
   ────────────────────────────────────────────────────────────── */
.quotes-header[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    margin: 18px 0 24px;
    padding: 14px 22px;
    border-radius: 12px;
    border: 1px solid var(--panel-border-strong);
    background: linear-gradient(135deg, #d2d7e0 0%, #cdd2db 100%);
    box-shadow: 0 2px 8px rgba(0,40,85,0.10), 0 6px 24px rgba(0,40,85,0.07);
    transition: background 0.25s, border-color 0.25s, box-shadow 0.25s;
}

    .quotes-header h3[b-qyf2623tsl] {
        font-size: 15px;
        font-weight: 800;
        letter-spacing: 0.05em;
        text-transform: uppercase;
        color: #ffffff !important;
        margin: 0;
        white-space: nowrap;
    }

        .quotes-header h3[b-qyf2623tsl]::after {
            content: "❯❯";
            display: inline-block;
            margin-left: .6rem;
            color: var(--iac-gold);
            font-size: 1.05em;
            letter-spacing: -2px;
            line-height: 1;
            transform: translateY(1px);
        }

/* Light mode banner */
:root[data-bs-theme="light"] .quotes-header[b-qyf2623tsl],
[data-theme="light"] .quotes-header[b-qyf2623tsl] {
    background: linear-gradient(135deg, #d2d7e0 0%, #cdd2db 100%);
    border-color: rgba(0,40,85,0.16);
    box-shadow: 0 2px 8px rgba(0,40,85,0.10), 0 6px 24px rgba(0,40,85,0.07);
}

    :root[data-bs-theme="light"] .quotes-header h3[b-qyf2623tsl],
    [data-theme="light"] .quotes-header h3[b-qyf2623tsl] {
        color: #ffffff;
    }

/* Dark mode banner */
:root[data-bs-theme="dark"] .quotes-header[b-qyf2623tsl],
[data-theme="dark"] .quotes-header[b-qyf2623tsl] {
    background: linear-gradient(135deg, #0e1623 0%, #111a2e 100%);
    border-color: rgba(241,184,40,0.20);
    box-shadow: 0 2px 10px rgba(0,0,0,0.30), 0 0 0 1px rgba(241,184,40,0.08);
}

    :root[data-bs-theme="dark"] .quotes-header h3[b-qyf2623tsl],
    [data-theme="dark"] .quotes-header h3[b-qyf2623tsl] {
        color: rgba(255,255,255,0.90);
    }

        :root[data-bs-theme="dark"] .quotes-header h3[b-qyf2623tsl]::after,
        [data-theme="dark"] .quotes-header h3[b-qyf2623tsl]::after {
            color: var(--iac-gold);
        }


/* ──────────────────────────────────────────────────────────────
   2. ORDER ACTIONS WRAP → buttons centered, toggles below them
   ────────────────────────────────────────────────────────────── */
.order-actions-wrap[b-qyf2623tsl] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    padding: 10px 0 12px;
    position: relative;
}

    .order-actions-wrap .pricing-mode-toggles[b-qyf2623tsl] {
        position: absolute !important;
        right: 20px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        display: inline-flex !important;
        align-items: center;
        gap: 10px;
        width: auto !important;
        max-width: fit-content !important;
        justify-content: flex-end;
    }

        .order-actions-wrap .pricing-mode-toggles .form-check-label[b-qyf2623tsl] {
            font-size: 12px;
            font-weight: 700;
            letter-spacing: 0.03em;
            color: var(--text-secondary);
        }

        .order-actions-wrap .pricing-mode-toggles .badge[b-qyf2623tsl] {
            font-size: 11px;
            font-weight: 700;
            letter-spacing: 0.04em;
        }

:root[data-bs-theme="dark"] .order-actions-wrap .pricing-mode-toggles[b-qyf2623tsl],
[data-theme="dark"] .order-actions-wrap .pricing-mode-toggles[b-qyf2623tsl] {
    border-top-color: rgba(255,255,255,0.08);
}


/* ──────────────────────────────────────────────────────────────
   3. DOOR CARD-HEADER → darker grey in light mode + shadow
   ────────────────────────────────────────────────────────────── */

/* Light mode */
:root[data-bs-theme="light"] .iac-panel .card-header.door-header[b-qyf2623tsl],
:root[data-bs-theme="light"] .iac-panel .door-header[b-qyf2623tsl],
[data-theme="light"] .iac-panel .card-header.door-header[b-qyf2623tsl],
[data-theme="light"] .iac-panel .door-header[b-qyf2623tsl] {
    background: #bec5cf !important;
    border-bottom: 1px solid rgba(0,40,85,0.18) !important;
}

:root[data-bs-theme="light"] .iac-panel[b-qyf2623tsl],
[data-theme="light"] .iac-panel[b-qyf2623tsl] {
    box-shadow: 0 2px 8px rgba(0,40,85,0.14), 0 8px 28px rgba(0,40,85,0.12), 0 24px 56px rgba(0,40,85,0.09) !important;
}

/* Dark mode */
:root[data-bs-theme="dark"] .iac-panel .card-header.door-header[b-qyf2623tsl],
:root[data-bs-theme="dark"] .iac-panel .door-header[b-qyf2623tsl],
[data-theme="dark"] .iac-panel .card-header.door-header[b-qyf2623tsl],
[data-theme="dark"] .iac-panel .door-header[b-qyf2623tsl] {
    background: #080b12 !important;
    border-bottom: 1px solid rgba(241,184,40,0.30) !important;
}

:root[data-bs-theme="dark"] .iac-panel[b-qyf2623tsl],
[data-theme="dark"] .iac-panel[b-qyf2623tsl] {
    box-shadow: 0 4px 16px rgba(0,0,0,0.45), 0 12px 40px rgba(0,0,0,0.35), 0 0 0 1px rgba(255,255,255,0.05) !important;
}


/* ─────────────────────────────────────────────
   MOBILE PDF PANEL
   Shown only on phones (≤575px) — replaces the
   inline download-only buttons with a share sheet.
   ───────────────────────────────────────────── */
.pdf-mobile-panel[b-qyf2623tsl] {
    display: none;
    border: 1.5px solid rgba(0,40,85,0.18);
    border-radius: 14px;
    padding: 14px 14px 12px;
    background: var(--panel-bg);
    margin: 10px 0;
    gap: 0;
    flex-direction: column;
    box-shadow: 0 2px 12px rgba(0,40,85,0.08);
    overflow: hidden;
    position: relative;
}

    /* Gold accent top bar */
    .pdf-mobile-panel[b-qyf2623tsl]::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 3px;
        background: linear-gradient(90deg, #F1B828, rgba(241,184,40,0.4));
    }

[data-bs-theme="dark"] .pdf-mobile-panel[b-qyf2623tsl] {
    border-color: rgba(241,184,40,0.22);
    box-shadow: 0 2px 16px rgba(0,0,0,0.30);
}

/* ── Header row: icon badge + title + subtitle ── */
.pdf-mobile-panel__header[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 12px;
}

.pdf-mobile-panel__icon[b-qyf2623tsl] {
    width: 36px;
    height: 36px;
    border-radius: 9px;
    background: linear-gradient(135deg, #002855, #1a3260);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    font-size: 16px;
    color: #F1B828;
    box-shadow: 0 2px 6px rgba(0,40,85,0.28);
}

.pdf-mobile-panel__text[b-qyf2623tsl] {
    flex: 1;
    min-width: 0;
}

/* Flag-style title — navy left bar accent */
.pdf-mobile-panel__title[b-qyf2623tsl] {
    font-size: 12px;
    font-weight: 900;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: #002855;
    line-height: 1.2;
    padding-left: 8px;
    border-left: 3px solid #F1B828;
    margin-bottom: 3px;
}

[data-bs-theme="dark"] .pdf-mobile-panel__title[b-qyf2623tsl] {
    color: #ddeaff;
    border-left-color: #F1B828;
}

/* Flag-style subtitle */
.pdf-mobile-panel__subtitle[b-qyf2623tsl] {
    font-size: 10.5px;
    color: var(--text-muted);
    line-height: 1.4;
    padding-left: 11px; /* aligns with title text after the border */
    margin-bottom: 0;
}

/* ── Button row ── */
.pdf-mobile-panel__btn-row[b-qyf2623tsl] {
    display: flex;
    gap: 8px;
    flex-wrap: nowrap;
}

/* Base button — compact, desktop-proportioned */
.pdf-mobile-panel__btn[b-qyf2623tsl] {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    border-radius: 10px;
    font-family: inherit;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.03em;
    padding: 10px 8px 9px;
    border: 1.5px solid transparent;
    cursor: pointer;
    transition: filter 0.15s, box-shadow 0.15s, transform 0.1s;
    text-align: center;
    line-height: 1.2;
}

    .pdf-mobile-panel__btn i[b-qyf2623tsl],
    .pdf-mobile-panel__btn .bi[b-qyf2623tsl] {
        font-size: 17px;
        line-height: 1;
        display: block;
    }

    .pdf-mobile-panel__btn:active[b-qyf2623tsl] {
        transform: scale(0.97);
    }

    .pdf-mobile-panel__btn:disabled[b-qyf2623tsl] {
        opacity: 0.45;
        cursor: not-allowed;
        transform: none;
    }

/* Submittal — red PDF style, matches desktop intent */
.pdf-mobile-panel__btn--submittal[b-qyf2623tsl] {
    background: linear-gradient(145deg, #c0152a 0%, #9e0f22 100%);
    border-color: rgba(192,21,42,0.50);
    color: #fff;
    box-shadow: 0 2px 8px rgba(192,21,42,0.25);
}

    .pdf-mobile-panel__btn--submittal:not(:disabled):hover[b-qyf2623tsl] {
        filter: brightness(1.10);
        box-shadow: 0 3px 12px rgba(192,21,42,0.35);
    }

[data-bs-theme="dark"] .pdf-mobile-panel__btn--submittal[b-qyf2623tsl] {
    background: linear-gradient(145deg, #c0152a 0%, #8b0d1e 100%);
    border-color: rgba(240,80,100,0.35);
}

/* Quote PDF — navy/gold brand style */
.pdf-mobile-panel__btn--quote[b-qyf2623tsl] {
    background: linear-gradient(145deg, #002855 0%, #1a3260 100%);
    border-color: rgba(241,184,40,0.45);
    color: #fff;
    box-shadow: 0 2px 8px rgba(0,40,85,0.22);
}

    .pdf-mobile-panel__btn--quote:not(:disabled):hover[b-qyf2623tsl] {
        filter: brightness(1.12);
        box-shadow: 0 3px 14px rgba(0,40,85,0.32);
    }

/* Spinner during generation */
.pdf-mobile-panel__btn .spinner-border[b-qyf2623tsl] {
    width: 16px;
    height: 16px;
    border-width: 2px;
}

/* ── Hint / info bar ── */
.pdf-mobile-panel__hint[b-qyf2623tsl] {
    font-size: 10px;
    color: var(--text-muted);
    text-align: left;
    padding: 9px 10px 0;
    margin-top: 10px;
    border-top: 1px solid rgba(0,40,85,0.08);
    line-height: 1.55;
}

[data-bs-theme="dark"] .pdf-mobile-panel__hint[b-qyf2623tsl] {
    border-top-color: rgba(255,255,255,0.07);
}

/* Warning variant — missing fields: red flag */
.pdf-mobile-panel__hint--warn[b-qyf2623tsl] {
    color: #c0152a;
    font-weight: 600;
    font-size: 10.5px;
}

[data-bs-theme="dark"] .pdf-mobile-panel__hint--warn[b-qyf2623tsl] {
    color: #f87171;
}

/* Only show the mobile panel on phones */
@media (max-width: 575px) {
    .pdf-mobile-panel[b-qyf2623tsl] {
        display: flex;
    }

    /* Hide the desktop button group PDF buttons on small phones */
    .btn-group-solid .btn.btn-utility-export[b-qyf2623tsl],
    .btn-group-solid > div:has(.btn-solid.btn-utility-solid)[b-qyf2623tsl] {
        display: none;
    }
}

/* ── Consistent left/right padding for the mobile actions area ── */
/* Both pdf-mobile-panel and order-actions-wrap live inside this   */
/* wrapper so one rule keeps them pixel-perfect equal on all sides */
@media (max-width: 767.98px) {
    .mob-actions-wrap[b-qyf2623tsl] {
        padding-left: 20px;
        padding-right: 20px;
    }
}

/* On larger screens the btn-group-solid hides the mobile panel (it's already display:none) */

/* =============================================================
   MOBILE FIXES — buttons, toggles, tables, modals
   ============================================================= */

/* ── Hide desktop PDF Submittal on mobile (mobile panel has it) ── */
@media (max-width: 575px) {
    /* Hide the inline PDF Submittal button + its wrapper (error label etc.) */
    .btn-submittal-wrap[b-qyf2623tsl] {
        display: none !important;
    }

    /* Also hide Export Quote PDF from the desktop group — mobile panel covers both */
    .btn-utility-export[b-qyf2623tsl] {
        display: none !important;
    }
}

/* ── Toggles: never overlap buttons, always stack below on mobile ── */
/* Extended to 906px so the toggles drop below the buttons at mid-width too */
@media (max-width: 906px) {
    .order-actions-wrap[b-qyf2623tsl] {
        flex-direction: column;
        align-items: center;
        gap: 10px;
    }

        /* Pull toggles fully out of absolute positioning so they sit below */
        .order-actions-wrap .pricing-mode-toggles[b-qyf2623tsl],
        .pricing-mode-toggles[style][b-qyf2623tsl] {
            position: static !important;
            transform: none !important;
            top: auto !important;
            right: auto !important;
            width: calc(100% - 40px) !important;
            max-width: calc(100% - 40px) !important;
            justify-content: center !important;
            flex-wrap: wrap;
            gap: 12px;
            margin-top: 12px;
            margin-left: 20px;
            margin-right: 20px;
        }
}

/* ── Warning label under btn-submittal-wrap ─────────────────────── */
/* Desktop: absolute below the button — does NOT push siblings in the flex row */
.submittal-warn[b-qyf2623tsl],
.submittal-warn-block[b-qyf2623tsl] {
    position: absolute;
    top: calc(100% + 6px);
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
    pointer-events: none;
    text-align: center;
    /* styled badge */
    display: inline-flex;
    align-items: center;
    gap: 5px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .02em;
    color: #b91c1c;
    background: rgba(185,28,28,0.08);
    border: 1px solid rgba(185,28,28,0.22);
    border-radius: 6px;
    padding: 4px 10px 4px 8px;
    line-height: 1.3;
    z-index: 10;
}

.submittal-warn-icon[b-qyf2623tsl] {
    font-size: 11px;
    color: #b91c1c;
    flex-shrink: 0;
}

[data-bs-theme="dark"] .submittal-warn[b-qyf2623tsl],
[data-bs-theme="dark"] .submittal-warn-block[b-qyf2623tsl] {
    color: #fca5a5;
    background: rgba(239,68,68,0.12);
    border-color: rgba(239,68,68,0.28);
}

[data-bs-theme="dark"] .submittal-warn-icon[b-qyf2623tsl] {
    color: #fca5a5;
}

/* 576px–765px: buttons are in a flex row — reserve space below the button
   so the next sibling (Export PDF) doesn't overlap the warning */
@media (max-width: 765px) {
    .btn-submittal-wrap[b-qyf2623tsl] {
        padding-bottom: 0px;
    }

    .btn-utility-export[b-qyf2623tsl] {
        margin-top: 15px;
    }
}

/* ≤575px: btn-group-solid stacks vertically so Export PDF is already below
   in normal document flow. Switch warning to relative flow so it sits
   naturally between the two buttons with no overlap risk. */
@media (max-width: 575px) {
    .btn-submittal-wrap[b-qyf2623tsl] {
        padding-bottom: 0;
    }

    .submittal-warn[b-qyf2623tsl],
    .submittal-warn-block[b-qyf2623tsl] {
        position: relative;
        top: auto;
        left: auto;
        transform: none;
        display: inline-flex;
        white-space: normal;
        text-align: center;
        margin-top: 6px;
    }
}


.order-summary-table .order-actions-col[b-qyf2623tsl],
.order-summary-table .table-actions-cell[b-qyf2623tsl] {
    width: 1%;
    white-space: nowrap;
}

.order-summary-table .table-actions-group[b-qyf2623tsl] {
    justify-content: center;
    gap: 6px;
}

.order-summary-table .icon-btn--preview[b-qyf2623tsl],
.order-summary-table .icon-btn--edit[b-qyf2623tsl],
.order-summary-table .icon-btn--delete[b-qyf2623tsl] {
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 13px !important;
}

.order-summary-table .inline-value-metric[b-qyf2623tsl] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    flex-wrap: nowrap;
    white-space: nowrap;
}

.order-summary-table td[data-label="Wall Thk"] .inline-value-metric[b-qyf2623tsl] {
    max-width: 100%;
}

/* ── Order summary table: card layout on mobile ── */
@media (max-width: 768px) {
    .order-summary-table[b-qyf2623tsl] {
        /* Let the table scroll horizontally on tablet */
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        font-size: 12px;
        white-space: nowrap;
    }

        .order-summary-table colgroup[b-qyf2623tsl] {
            display: none;
        }
}

@media (max-width: 575px) {
    /* Switch to card-per-row layout on phones */
    .order-summary-table[b-qyf2623tsl],
    .order-summary-table thead[b-qyf2623tsl],
    .order-summary-table tbody[b-qyf2623tsl],
    .order-summary-table th[b-qyf2623tsl],
    .order-summary-table td[b-qyf2623tsl],
    .order-summary-table tr[b-qyf2623tsl] {
        display: block;
        white-space: normal;
    }

        .order-summary-table thead[b-qyf2623tsl] {
            display: none; /* hide column headers — labels shown via data-label */
        }

        .order-summary-table tbody tr[b-qyf2623tsl] {
            background: var(--panel-bg);
            border: 1px solid var(--panel-border-strong);
            border-radius: 10px;
            margin-bottom: 10px;
            padding: 8px 10px;
            overflow: hidden;
        }

        .order-summary-table tbody td[b-qyf2623tsl] {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 5px 4px !important;
            border: none !important;
            border-bottom: 1px solid var(--divider) !important;
            font-size: 12px;
            gap: 8px;
        }

            .order-summary-table tbody td:last-child[b-qyf2623tsl] {
                border-bottom: none !important;
            }

            /* Inline label before each cell value */
            .order-summary-table tbody td[b-qyf2623tsl]::before {
                content: attr(data-label);
                font-size: 10px;
                font-weight: 700;
                letter-spacing: 0.06em;
                text-transform: uppercase;
                color: var(--text-muted);
                flex-shrink: 0;
                min-width: 90px;
            }

            /* Cells with no label (action buttons) — centre them */
            .order-summary-table tbody td:not([data-label])[b-qyf2623tsl] {
                justify-content: center;
                flex-wrap: wrap;
                gap: 6px;
                border-bottom: none !important;
                padding-top: 8px !important;
            }

        /* Make action buttons readable touch targets */
        .order-summary-table .btn[b-qyf2623tsl] {
            min-height: 36px;
            font-size: 12px !important;
            padding: 5px 10px !important;
        }

        /* Wall thickness input in table */
        .order-summary-table .iac-inline-input[b-qyf2623tsl] {
            width: 100% !important;
            max-width: 120px;
            font-size: 12px !important;
        }

        /* Install type select in table */
        .order-summary-table .form-select[b-qyf2623tsl] {
            width: 100% !important;
            max-width: 120px;
            font-size: 12px !important;
        }
}

/* ── Bootstrap modals: full-screen on mobile ── */
@media (max-width: 575px) {
    /* Full-screen modal */
    .modal-dialog[b-qyf2623tsl] {
        margin: 0 !important;
        max-width: 100vw !important;
        width: 100vw !important;
        min-height: 100dvh !important;
        align-items: flex-end !important;
    }

    .modal-content[b-qyf2623tsl] {
        border-radius: 18px 18px 0 0 !important;
        min-height: 50dvh;
        max-height: 92dvh;
        display: flex;
        flex-direction: column;
    }

    .modal-header[b-qyf2623tsl] {
        padding: 14px 16px 12px !important;
        flex-shrink: 0;
    }

    .modal-title[b-qyf2623tsl] {
        font-size: 15px !important;
    }

    .modal-body[b-qyf2623tsl] {
        overflow-y: auto;
        -webkit-overflow-scrolling: touch;
        padding: 12px 14px !important;
        flex: 1 1 auto;
    }

    .modal-footer[b-qyf2623tsl] {
        padding: 10px 14px 16px !important;
        flex-shrink: 0;
        flex-wrap: wrap;
        gap: 8px;
    }

        /* Buttons in modal footer: full width */
        .modal-footer .btn[b-qyf2623tsl] {
            flex: 1 1 auto;
            min-width: 120px;
            justify-content: center;
            min-height: 42px;
        }

    /* Fix margin-top override that pushes modal down */
    .modal.show .modal-dialog[b-qyf2623tsl] {
        margin-top: 0 !important;
    }

    /* Tabs inside modals: smaller + scrollable */
    .modal-body .nav-tabs[b-qyf2623tsl] {
        flex-wrap: nowrap;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        border-bottom: 1px solid var(--panel-border);
        gap: 2px;
        padding-bottom: 0;
    }

        .modal-body .nav-tabs .nav-link[b-qyf2623tsl] {
            white-space: nowrap;
            font-size: 11px !important;
            padding: 7px 10px !important;
        }

    /* Form rows inside modals: stack */
    .modal-body .row > [class*="col-"][b-qyf2623tsl] {
        margin-bottom: 8px;
    }

    /* Hardware selection grid inside modal */
    .modal-body .comp-grid[b-qyf2623tsl] {
        grid-template-columns: 1fr !important;
    }

    /* Inputs/selects inside modal: full width */
    .modal-body .form-control[b-qyf2623tsl],
    .modal-body .form-select[b-qyf2623tsl] {
        font-size: 14px !important; /* prevent iOS zoom on focus */
    }
}

/* ── nq alert modals on tablets too ── */
@media (max-width: 768px) {
    .nq-card[b-qyf2623tsl] {
        width: calc(100vw - 24px);
        max-width: 460px;
        padding: 22px 20px 20px;
    }

    .nq-card__footer[b-qyf2623tsl] {
        flex-direction: column;
        gap: 8px;
    }

        .nq-card__footer .nq-btn[b-qyf2623tsl] {
            width: 100%;
            justify-content: center;
        }
}

/* =============================================================
   ACTION BUTTONS — inline group, both tables
   ============================================================= */
.table-actions-cell[b-qyf2623tsl] {
    white-space: nowrap;
}

.table-actions-group[b-qyf2623tsl] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    flex-wrap: nowrap;
}

/* =============================================================
   SAVED HARDWARE SETS TABLE — mobile card layout
   ============================================================= */
@media (max-width: 575px) {
    .saved-sets[b-qyf2623tsl],
    .saved-sets thead[b-qyf2623tsl],
    .saved-sets tbody[b-qyf2623tsl],
    .saved-sets th[b-qyf2623tsl],
    .saved-sets td[b-qyf2623tsl],
    .saved-sets tr[b-qyf2623tsl] {
        display: block;
        white-space: normal;
    }

        .saved-sets thead[b-qyf2623tsl] {
            display: none;
        }

        .saved-sets tbody tr[b-qyf2623tsl] {
            background: var(--panel-bg);
            border: 1px solid var(--panel-border-strong);
            border-radius: 10px;
            margin-bottom: 10px;
            padding: 8px 10px;
            overflow: hidden;
        }

        .saved-sets tbody td[b-qyf2623tsl] {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 5px 4px !important;
            border: none !important;
            border-bottom: 1px solid var(--divider) !important;
            font-size: 12px;
            gap: 8px;
        }

            .saved-sets tbody td:last-child[b-qyf2623tsl] {
                border-bottom: none !important;
            }

            .saved-sets tbody td[b-qyf2623tsl]::before {
                content: attr(data-label);
                font-size: 10px;
                font-weight: 700;
                letter-spacing: 0.06em;
                text-transform: uppercase;
                color: var(--text-muted);
                flex-shrink: 0;
                min-width: 80px;
            }

            /* Actions cell: centre the button row, no label */
            .saved-sets tbody td.table-actions-cell[b-qyf2623tsl] {
                justify-content: center;
                padding-top: 8px !important;
                border-bottom: none !important;
            }

                .saved-sets tbody td.table-actions-cell[b-qyf2623tsl]::before {
                    display: none;
                }

    /* Also fix order-summary-table actions cell on mobile */
    .order-summary-table tbody td.table-actions-cell[b-qyf2623tsl] {
        justify-content: center;
        padding-top: 8px !important;
        border-bottom: none !important;
    }

        .order-summary-table tbody td.table-actions-cell[b-qyf2623tsl]::before {
            display: none;
        }

    /* Ensure action buttons are decent touch targets */
    .table-actions-group .btn[b-qyf2623tsl] {
        min-height: 36px;
        min-width: 36px;
        padding: 5px 8px !important;
        font-size: 13px !important;
    }
}

/* =============================================================
   FIX: Toggles — side by side on all screen sizes
   ============================================================= */
.toggle-strip[b-qyf2623tsl] {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 0;
    align-items: stretch;
}

    /* Each toggle cell */
    .toggle-strip > [class*="col"][b-qyf2623tsl] {
        flex: 1 1 auto !important;
        max-width: none !important;
        padding: 0 !important;
        display: flex;
        align-items: center;
        justify-content: center;
        border-right: 1px solid var(--panel-border-strong);
        padding: 10px 20px !important;
        min-width: 130px;
    }

        .toggle-strip > [class*="col"]:last-child[b-qyf2623tsl] {
            border-right: none;
        }

    /* Keep each toggle+label on one line */
    .toggle-strip .form-check.form-switch[b-qyf2623tsl],
    .toggle-strip .d-inline-flex[b-qyf2623tsl] {
        white-space: nowrap;
    }

[data-bs-theme="dark"] .toggle-strip[b-qyf2623tsl],
[data-theme="dark"] .toggle-strip[b-qyf2623tsl] {
    background: rgba(255,255,255,0.04);
    border-color: rgba(255,255,255,0.10);
}

    [data-bs-theme="dark"] .toggle-strip > [class*="col"][b-qyf2623tsl],
    [data-theme="dark"] .toggle-strip > [class*="col"][b-qyf2623tsl] {
        border-right-color: rgba(255,255,255,0.08);
    }

/* =============================================================
   FIX: Saved sets table-responsive must not scroll on mobile —
   disable overflow so the card layout can take over
   ============================================================= */
@media (max-width: 575px) {
    .iac-panel.saved-sets-card .table-responsive[b-qyf2623tsl] {
        overflow: visible !important;
    }

    /* Give each card a proper border-radius and padding */
    .saved-sets tbody tr[b-qyf2623tsl] {
        margin: 0 0 10px 0;
        border-radius: 10px;
        overflow: hidden;
        padding: 4px 10px 4px !important;
    }
}

/* =============================================================
   LINE DETAIL MODAL — HEAVY DUTY HINGE BLOCK
   ============================================================= */
.hd-hinge-block[b-qyf2623tsl] {
    display: flex;
    flex-direction: column;
    gap: .3rem;
}

.hd-hinge-badge[b-qyf2623tsl] {
    background: #f59e0b;
    color: #1c1c1e;
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: .03em;
    padding: .28em .65em;
    border-radius: 4px;
    display: inline-flex;
    align-items: center;
}

[data-bs-theme="dark"] .hd-hinge-badge[b-qyf2623tsl] {
    background: #d97706;
    color: #fff;
}

.hd-hinge-block__spec[b-qyf2623tsl] {
    display: flex;
    align-items: baseline;
    gap: .35rem;
    flex-wrap: wrap;
    margin-top: .1rem;
}

.hd-hinge-block__brand[b-qyf2623tsl] {
    font-weight: 700;
    font-size: .88rem;
    color: var(--bs-body-color);
}

.hd-hinge-block__model[b-qyf2623tsl] {
    font-size: .82rem;
    color: var(--bs-secondary-color, #6c757d);
    font-style: italic;
}

.hd-hinge-block__cost[b-qyf2623tsl] {
    display: flex;
    flex-direction: column;
    gap: .1rem;
    margin-top: .05rem;
}

.hd-hinge-block__cost-ea[b-qyf2623tsl] {
    font-size: .8rem;
    font-weight: 600;
    color: var(--bs-body-color);
}

.hd-hinge-block__cost-total[b-qyf2623tsl] {
    font-size: .76rem;
    color: var(--bs-secondary-color, #6c757d);
}

/* =============================================================
   EQUAL-LEAF BANNER — warning strip shown when both leaf COWs
   are equal (user has the Unequal Leaf toggle ON but entered
   matching values).
   ============================================================= */

.equal-leaf-banner[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    background: rgba(241, 184, 40, 0.10);
    border: 1px solid rgba(241, 184, 40, 0.45);
    border-left: 4px solid #F1B828;
    border-radius: 8px;
    padding: 0.6rem 0.9rem;
    font-size: 0.82rem;
    flex-wrap: wrap;
}

.equal-leaf-banner__msg[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    color: var(--bs-body-color);
    font-weight: 500;
    flex: 1 1 auto;
}

.equal-leaf-banner__icon[b-qyf2623tsl] {
    color: #b7791f;
    font-size: 0.95rem;
    flex-shrink: 0;
}

.equal-leaf-banner__actions[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-shrink: 0;
}

/* "Use Equal Leaf" — confirm/accept action (green tinted) */
.equal-leaf-banner__btn-use[b-qyf2623tsl] {
    font-size: 0.78rem;
    font-weight: 600;
    padding: 0.3rem 0.75rem;
    border-radius: 6px;
    background: #1a7a4a;
    color: #fff !important;
    border: 1px solid #15643d;
    white-space: nowrap;
    transition: background 0.15s, box-shadow 0.15s;
    line-height: 1.4;
}

    .equal-leaf-banner__btn-use:hover[b-qyf2623tsl],
    .equal-leaf-banner__btn-use:focus[b-qyf2623tsl] {
        background: #15643d;
        color: #fff !important;
        box-shadow: 0 0 0 3px rgba(26, 122, 74, 0.22);
        outline: none;
    }

/* "Change Input" — matches site's btn-solid / btn-neutral-solid pattern */
.equal-leaf-banner__btn-change[b-qyf2623tsl] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    font-family: 'din-2014', 'DIN Pro', 'DM Sans', sans-serif !important;
    font-size: 0.76rem;
    font-weight: 700;
    letter-spacing: 0.03em;
    padding: 6px 13px;
    height: 30px;
    border-radius: 9px;
    background: rgba(0, 40, 85, 0.07) !important;
    color: #002855 !important;
    border: 1.5px solid rgba(0, 40, 85, 0.28) !important;
    white-space: nowrap;
    cursor: pointer;
    transition: all 0.15s ease;
    line-height: 1;
}

    .equal-leaf-banner__btn-change:hover[b-qyf2623tsl],
    .equal-leaf-banner__btn-change:focus[b-qyf2623tsl] {
        background: rgba(0, 40, 85, 0.15) !important;
        border-color: rgba(0, 40, 85, 0.45) !important;
        color: #002855 !important;
        transform: translateY(-1px);
        box-shadow: 0 3px 10px rgba(0, 40, 85, 0.15);
        outline: none;
    }

    .equal-leaf-banner__btn-change:active[b-qyf2623tsl] {
        transform: translateY(0);
    }

/* Dark-mode overrides */
:root[data-bs-theme="dark"] .equal-leaf-banner[b-qyf2623tsl],
[data-theme="dark"] .equal-leaf-banner[b-qyf2623tsl] {
    background: rgba(241, 184, 40, 0.07);
    border-color: rgba(241, 184, 40, 0.30);
    border-left-color: #F1B828;
}

:root[data-bs-theme="dark"] .equal-leaf-banner__icon[b-qyf2623tsl],
[data-theme="dark"] .equal-leaf-banner__icon[b-qyf2623tsl] {
    color: #F1B828;
}

:root[data-bs-theme="dark"] .equal-leaf-banner__btn-change[b-qyf2623tsl],
[data-theme="dark"] .equal-leaf-banner__btn-change[b-qyf2623tsl] {
    background: rgba(241, 184, 40, 0.10) !important;
    color: rgba(241, 184, 40, 0.95) !important;
    border-color: rgba(241, 184, 40, 0.32) !important;
}

    :root[data-bs-theme="dark"] .equal-leaf-banner__btn-change:hover[b-qyf2623tsl],
    [data-theme="dark"] .equal-leaf-banner__btn-change:hover[b-qyf2623tsl] {
        background: rgba(241, 184, 40, 0.18) !important;
        border-color: rgba(241, 184, 40, 0.55) !important;
        color: #fff !important;
        box-shadow: 0 3px 10px rgba(0, 0, 0, 0.25);
    }

/* =============================================================
   SHARED MPL HEADER — Page header, product tabs, order total pill
   Shared across Doors / Windows / ShipLoose pages.
   ============================================================= */

.compact-header[b-qyf2623tsl] {
    background: var(--bs-body-bg);
    border-bottom: 1px solid var(--bs-border-color);
}

/* ── Multi-Product Tab Bar ──────────────────────────────────────────────────
   Shared across Doors / Windows / ShipLoose. Light + dark via CSS vars.
──────────────────────────────────────────────────────────────────────────── */
:root[b-qyf2623tsl] {
    --mpl-bar-bg: #f0f4f8;
    --mpl-bar-border: #d0dae6;
    --mpl-tab-bg: #ffffff;
    --mpl-tab-border: #cdd5e0;
    --mpl-tab-color: #4a5e72;
    --mpl-tab-hover-bg: #e8eff7;
    --mpl-active-bg: #002855;
    --mpl-active-color: #ffffff;
    --mpl-active-accent: #F1B828;
    --mpl-badge-bg: rgba(241,184,40,.18);
    --mpl-badge-color: #7a5800;
    --mpl-winner-bg: rgba(241,184,40,.12);
    --mpl-winner-border: rgba(241,184,40,.40);
    --mpl-winner-color: #5a4000;
}

[data-bs-theme="dark"][b-qyf2623tsl] {
    --mpl-bar-bg: #161d28;
    --mpl-bar-border: #2a3548;
    --mpl-tab-bg: #1e2a3a;
    --mpl-tab-border: #2a3850;
    --mpl-tab-color: #8aa4bf;
    --mpl-tab-hover-bg: #243044;
    --mpl-active-bg: #0d1e35;
    --mpl-active-color: #ffffff;
    --mpl-active-accent: #F1B828;
    --mpl-badge-bg: rgba(241,184,40,.15);
    --mpl-badge-color: #c8a030;
    --mpl-winner-bg: rgba(241,184,40,.10);
    --mpl-winner-border: rgba(241,184,40,.30);
    --mpl-winner-color: #c8a030;
}

/* ── Unified Page Header ─────────────────────────────────────────────────── */
.mpl-page-header[b-qyf2623tsl] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 16px;
    padding: 10px 10px 14px !important;
    /* Solid navy — always dark like Windows header */
    background: #002855 !important;
    border: none !important;
    border-bottom: 3px solid var(--iac-gold) !important;
    border-radius: 10px !important;
    margin: 8px 0 16px !important;
    min-height: 60px;
    box-shadow: none !important;
    position: sticky;
    top: 8px;
    z-index: 100;
}

[data-bs-theme="dark"] .mpl-page-header[b-qyf2623tsl],
[data-theme="dark"] .mpl-page-header[b-qyf2623tsl] {
    background: #090c14 !important;
    border-bottom-color: var(--iac-gold) !important;
    border-radius: 10px !important;
    margin: 8px 0 16px !important;
    padding: 10px 10px 14px !important;
    box-shadow: none !important;
}

.mpl-page-header__left[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
    min-width: 0;
}

.mpl-page-header__title[b-qyf2623tsl] {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    font-family: 'din-2014', 'DIN 2014', 'DIN Pro', sans-serif !important;
    font-size: 1.45rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #ffffff !important;
    margin: 0;
    white-space: nowrap;
    line-height: 1;
}

[data-bs-theme="dark"] .mpl-page-header__title[b-qyf2623tsl],
[data-theme="dark"] .mpl-page-header__title[b-qyf2623tsl] {
    color: #ffffff !important;
}

.mpl-page-header__title[b-qyf2623tsl]::after {
    content: "»";
    font-family: 'din-2014', 'DIN 2014', 'DIN Pro', sans-serif !important;
    font-size: 1.1em;
    font-weight: 800;
    color: var(--iac-gold);
    letter-spacing: -0.06em;
    transform: translateY(0);
    filter: drop-shadow(0 1px 3px rgba(241,184,40,0.30));
    background: none;
    clip-path: none;
    width: auto;
    height: auto;
    flex: 0 0 auto;
}

[data-bs-theme="dark"] .mpl-page-header__title[b-qyf2623tsl]::after,
[data-theme="dark"] .mpl-page-header__title[b-qyf2623tsl]::after {
    filter: drop-shadow(0 0 8px rgba(241,184,40,0.45));
    color: var(--iac-gold);
}

.mpl-page-header__tabs[b-qyf2623tsl] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    flex: 1 1 auto;
}

.mpl-page-header__winning[b-qyf2623tsl] {
    display: inline-flex;
    align-items: center;
    height: 34px;
    padding: 0 12px;
    border-radius: 8px;
    background: var(--mpl-winner-bg, rgba(241,184,40,.12));
    border: 1.5px solid var(--mpl-winner-border, rgba(241,184,40,.40));
    color: var(--mpl-winner-color, #5a4000);
    font-size: 11.5px;
    font-weight: 700;
    white-space: nowrap;
    flex-shrink: 0;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08);
}

html.dark .mpl-page-header__winning[b-qyf2623tsl],
[data-theme="dark"] .mpl-page-header__winning[b-qyf2623tsl],
.dark .mpl-page-header__winning[b-qyf2623tsl] {
    background: rgba(34, 197, 94, 0.16);
    border: 1px solid rgba(74, 222, 128, 0.30);
    color: #86efac;
}
/* ── Combined order total pill (multi-product header) ── */
.mpl-order-total-pill[b-qyf2623tsl] {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
    padding: 6px 14px;
    border-radius: 8px;
    background: rgba(0,40,85,.08);
    border: 1.5px solid rgba(0,40,85,.22);
    color: #002855;
    flex-shrink: 0;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08);
    gap: 1px;
}

[data-bs-theme="dark"] .mpl-order-total-pill[b-qyf2623tsl] {
    background: rgba(241,184,40,.10);
    border-color: rgba(241,184,40,.30);
    color: #F1B828;
}

.mpl-order-total-pill__top[b-qyf2623tsl] {
    display: flex;
    align-items: baseline;
    gap: 5px;
    line-height: 1.2;
}

.mpl-order-total-pill__label[b-qyf2623tsl] {
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    opacity: .70;
    line-height: 1;
}

.mpl-order-total-pill__value[b-qyf2623tsl] {
    font-size: 13px;
    font-weight: 800;
    line-height: 1.2;
}

.mpl-order-total-pill__prefix[b-qyf2623tsl] {
    font-size: 9px;
    font-weight: 700;
    opacity: .60;
    white-space: nowrap;
    letter-spacing: .03em;
}

.mpl-order-total-pill__breakdown[b-qyf2623tsl] {
    font-size: 9px;
    font-weight: 600;
    opacity: .70;
    line-height: 1;
    margin-top: 1px;
}

.mpl-tab-bar[b-qyf2623tsl] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    background: var(--mpl-bar-bg);
    border: 1px solid var(--mpl-bar-border);
    border-radius: 10px;
}

.mpl-tab-bar__label[b-qyf2623tsl] {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--mpl-tab-color);
    white-space: nowrap;
    flex-shrink: 0;
}

.mpl-tab-bar__tabs[b-qyf2623tsl] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    flex: 1 1 auto;
}

.mpl-tab[b-qyf2623tsl] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 14px;
    height: 36px;
    border-radius: 8px;
    border: 1.5px solid var(--mpl-tab-border);
    background: var(--mpl-tab-bg);
    color: var(--mpl-tab-color);
    font-size: 12.5px;
    font-weight: 700;
    letter-spacing: 0.03em;
    cursor: pointer;
    transition: background .15s, border-color .15s, color .15s, box-shadow .15s, transform .1s;
    white-space: nowrap;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08), 0 1px 2px rgba(0,0,0,0.04);
    user-select: none;
}

    .mpl-tab:hover[b-qyf2623tsl] {
        background: var(--mpl-tab-hover-bg);
        border-color: #002855;
        color: #002855;
        box-shadow: 0 3px 8px rgba(0,40,85,0.16), 0 1px 3px rgba(0,0,0,0.08);
        transform: translateY(-1px);
    }

    .mpl-tab:active[b-qyf2623tsl] {
        transform: translateY(0px);
        box-shadow: 0 1px 2px rgba(0,0,0,0.06);
    }

.mpl-tab--active[b-qyf2623tsl] {
    background: #002855;
    border-color: #002855;
    color: #ffffff;
    cursor: default;
    box-shadow: 0 2px 10px rgba(0,40,85,0.30), 0 1px 3px rgba(0,0,0,0.12);
    transform: none;
}

    .mpl-tab--active:hover[b-qyf2623tsl] {
        background: #002855;
        border-color: rgba(241,184,40,0.50);
        color: #ffffff;
        box-shadow: 0 4px 14px rgba(0,40,85,0.34);
        transform: none;
    }

.mpl-tab__icon[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    opacity: .85;
}

.mpl-tab__count[b-qyf2623tsl] {
    font-size: 10px;
    font-weight: 700;
    padding: 1px 6px;
    border-radius: 10px;
    background: var(--mpl-badge-bg);
    color: var(--mpl-badge-color);
}

.mpl-tab--active .mpl-tab__count[b-qyf2623tsl] {
    background: rgba(241,184,40,.28);
    color: var(--mpl-active-accent);
}

[data-bs-theme="dark"] .mpl-tab:hover[b-qyf2623tsl] {
    background: rgba(26,50,96,0.35);
    border-color: rgba(100,148,255,0.50);
    color: rgba(200,220,255,0.95);
    box-shadow: 0 3px 8px rgba(0,0,0,0.22);
    transform: translateY(-1px);
}

[data-bs-theme="dark"] .mpl-tab--active[b-qyf2623tsl] {
    background: rgba(13,30,53,0.95);
    border-color: rgba(241,184,40,0.45);
    color: #ffffff;
    box-shadow: 0 2px 12px rgba(0,0,0,0.35), 0 0 0 1px rgba(241,184,40,0.22);
    transform: none;
}

    [data-bs-theme="dark"] .mpl-tab--active:hover[b-qyf2623tsl] {
        background: rgba(13,30,53,0.95);
        border-color: rgba(241,184,40,0.65);
        color: #ffffff;
        transform: none;
    }

.mpl-tab__prefix[b-qyf2623tsl] {
    font-size: 10px;
    font-weight: 800;
    opacity: .55;
    letter-spacing: .04em;
}

.mpl-tab-bar__winning[b-qyf2623tsl] {
    font-size: 11.5px;
    font-weight: 600;
    padding: 5px 10px;
    border-radius: 6px;
    background: var(--mpl-winner-bg);
    border: 1px solid var(--mpl-winner-border);
    color: var(--mpl-winner-color);
    white-space: nowrap;
    flex-shrink: 0;
}

    .mpl-tab-bar__winning i[b-qyf2623tsl] {
        color: #F1B828;
    }

.mpl-switch-btn[b-qyf2623tsl] {
    position: relative;
}

.mpl-submit-btn[b-qyf2623tsl] {
    font-weight: 700;
}

@@media (max-width: 640px) {
    .mpl-tab-bar[b-qyf2623tsl] {
        flex-direction: column;
        align-items: flex-start;
    }

    .mpl-tab-bar__winning[b-qyf2623tsl] {
        width: 100%;
    }
}

</style >
/* =============================================================
   MULTI-PRODUCT ORDER ALERT BANNER
   Used in both Doors and Windows offcanvas when in multi-mode.
   ============================================================= */
.multi-product-alert[b-qyf2623tsl] {
    font-size: 12px;
    border-radius: 8px;
    background: rgba(241,184,40,.12);
    border: 1px solid rgba(241,184,40,.40);
    color: #5a4000;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    margin-bottom: 12px;
}

:root[data-bs-theme="dark"] .multi-product-alert[b-qyf2623tsl],
[data-theme="dark"] .multi-product-alert[b-qyf2623tsl] {
    background: rgba(241,184,40,.10);
    border-color: rgba(241,184,40,.35);
    color: rgba(241,184,40,.92);
}

    :root[data-bs-theme="dark"] .multi-product-alert i[b-qyf2623tsl],
    [data-theme="dark"] .multi-product-alert i[b-qyf2623tsl] {
        color: #F1B828 !important;
    }

/* =============================================================
   IAC OFFCANVAS — CANCEL BUTTON (RED / DANGER)
   Cancel should be red in both light and dark mode.
   In dark mode it gets a red glow matching other danger buttons.
   ============================================================= */
.iac-offcanvas__btn-cancel[b-qyf2623tsl] {
    padding: 11px 16px;
    border-radius: 10px;
    border: 1px solid rgba(185,28,28,0.30);
    background: rgba(185,28,28,0.06);
    color: #b91c1c;
    font-family: 'din-2014', sans-serif;
    font-size: 14px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.15s ease;
}

    .iac-offcanvas__btn-cancel:hover[b-qyf2623tsl] {
        background: rgba(185,28,28,0.12);
        border-color: rgba(185,28,28,0.50);
        color: #991b1b;
    }

:root[data-bs-theme="dark"] .iac-offcanvas__btn-cancel[b-qyf2623tsl],
[data-theme="dark"] .iac-offcanvas__btn-cancel[b-qyf2623tsl] {
    background: rgba(239,68,68,0.10);
    border-color: rgba(239,68,68,0.28);
    color: #f87171;
    box-shadow: 0 0 0 0 rgba(239,68,68,0);
}

    :root[data-bs-theme="dark"] .iac-offcanvas__btn-cancel:hover[b-qyf2623tsl],
    [data-theme="dark"] .iac-offcanvas__btn-cancel:hover[b-qyf2623tsl] {
        background: rgba(239,68,68,0.18);
        border-color: rgba(239,68,68,0.50);
        color: #fca5a5;
        box-shadow: 0 4px 16px rgba(239,68,68,0.30), 0 0 20px rgba(239,68,68,0.18);
    }

/* =============================================================
   BTN-NEUTRAL-SOLID — Improved light + dark mode
   Light: solid IAC navy with white text
   Dark:  deep navy glass with blue/teal glow
   Also covers .mpl-switch-btn which inherits this styling.
   ============================================================= */

/* Light mode — soft light blue */
.btn.btn-solid.btn-neutral-solid[b-qyf2623tsl] {
    background: #dbeafe !important;
    border: 1.5px solid #93c5fd !important;
    color: #0f3d75 !important;
    font-weight: 700 !important;
    box-shadow: 0 1px 3px rgba(15,61,117,0.10) !important;
    transition: all 0.15s ease !important;
}

    .btn.btn-solid.btn-neutral-solid:hover:not(:disabled)[b-qyf2623tsl] {
        background: #bfdbfe !important;
        border-color: #60a5fa !important;
        color: #0b315f !important;
        box-shadow: 0 3px 10px rgba(15,61,117,0.16) !important;
        transform: translateY(-1px) !important;
    }

    .btn.btn-solid.btn-neutral-solid:active:not(:disabled)[b-qyf2623tsl] {
        background: #93c5fd !important;
        border-color: #3b82f6 !important;
        color: #08284d !important;
        box-shadow: 0 1px 3px rgba(15,61,117,0.12) !important;
        transform: translateY(0) !important;
    }

/* Dark mode — navy glass with blue glow */
:root[data-bs-theme="dark"] .btn.btn-solid.btn-neutral-solid[b-qyf2623tsl],
[data-theme="dark"] .btn.btn-solid.btn-neutral-solid[b-qyf2623tsl] {
    background: rgba(26,50,96,0.35) !important;
    border-color: rgba(100,148,255,0.28) !important;
    color: rgba(180,210,255,0.92) !important;
    box-shadow: 0 0 0 1px rgba(100,148,255,0.15), 0 2px 8px rgba(0,0,0,0.30) !important;
}

    :root[data-bs-theme="dark"] .btn.btn-solid.btn-neutral-solid:hover:not(:disabled)[b-qyf2623tsl],
    [data-theme="dark"] .btn.btn-solid.btn-neutral-solid:hover:not(:disabled)[b-qyf2623tsl] {
        background: rgba(26,50,96,0.55) !important;
        border-color: rgba(100,148,255,0.50) !important;
        color: #ffffff !important;
        box-shadow: 0 0 0 1px rgba(100,148,255,0.35), 0 4px 18px rgba(26,50,150,0.45), 0 0 24px rgba(100,148,255,0.20) !important;
        transform: translateY(-1px) !important;
    }

    :root[data-bs-theme="dark"] .btn.btn-solid.btn-neutral-solid:active:not(:disabled)[b-qyf2623tsl],
    [data-theme="dark"] .btn.btn-solid.btn-neutral-solid:active:not(:disabled)[b-qyf2623tsl] {
        transform: translateY(0) !important;
    }

/* mpl-switch-btn gets the same treatment as btn-neutral-solid */
.btn.btn-solid.mpl-switch-btn[b-qyf2623tsl] {
    /* inherits btn-neutral-solid — no extra overrides needed in light mode */
}

:root[data-bs-theme="dark"] .btn.btn-solid.mpl-switch-btn[b-qyf2623tsl],
[data-theme="dark"] .btn.btn-solid.mpl-switch-btn[b-qyf2623tsl] {
    background: rgba(26,50,96,0.35) !important;
    border-color: rgba(100,148,255,0.28) !important;
    color: rgba(180,210,255,0.92) !important;
    box-shadow: 0 0 0 1px rgba(100,148,255,0.15), 0 2px 8px rgba(0,0,0,0.30) !important;
}

    :root[data-bs-theme="dark"] .btn.btn-solid.mpl-switch-btn:hover:not(:disabled)[b-qyf2623tsl],
    [data-theme="dark"] .btn.btn-solid.mpl-switch-btn:hover:not(:disabled)[b-qyf2623tsl] {
        background: rgba(26,50,96,0.55) !important;
        border-color: rgba(100,148,255,0.50) !important;
        color: #ffffff !important;
        box-shadow: 0 0 0 1px rgba(100,148,255,0.35), 0 4px 18px rgba(26,50,150,0.45), 0 0 24px rgba(100,148,255,0.20) !important;
        transform: translateY(-1px) !important;
    }

/* =============================================================
   ERROR HIGHLIGHT — Field validation feedback
   ============================================================= */
.error-highlight[b-qyf2623tsl] {
    outline: 2px solid var(--bs-danger);
    box-shadow: 0 0 0 .25rem rgba(220,53,69,.25);
}

/* =============================================================
   ORDER SUMMARY BANNER — restored from original inline styles
   The full banner with background, badge, labels and dark mode.
   ============================================================= */
.order-summary-banner[b-qyf2623tsl] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.6rem 1.1rem;
    background: #f0f4fa;
    color: #002855;
    border-radius: 10px;
    padding: 0.45rem 1rem;
    font-family: 'din-2014', system-ui, sans-serif;
    font-size: 0.78rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    box-shadow: 0 1px 4px rgba(0,40,85,0.10);
    border: 1px solid rgba(0,40,85,0.18);
}

[data-bs-theme="dark"] .order-summary-banner[b-qyf2623tsl] {
    background: linear-gradient(90deg, #0b1e36 0%, #0e2a4a 100%);
    color: #e8edf5;
    border-color: rgba(241,184,40,0.22);
    box-shadow: 0 2px 10px rgba(0,0,0,0.35);
}

.order-summary-badge[b-qyf2623tsl] {
    background: #F1B828;
    color: #002855;
    border-radius: 6px;
    padding: 0.18rem 0.65rem;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    white-space: nowrap;
}

[data-bs-theme="dark"] .order-summary-badge[b-qyf2623tsl] {
    background: linear-gradient(90deg, #F6C84A, #F1B828);
    color: #0e2a4a;
}

.order-summary-stat[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.order-summary-stat--stacked[b-qyf2623tsl] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.15rem;
}

.order-summary-stc-line[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.82rem;
    font-weight: 600;
    color: #002855;
    white-space: nowrap;
}

[data-bs-theme="dark"] .order-summary-stc-line[b-qyf2623tsl] {
    color: #F1B828;
}

.order-summary-stc-badge[b-qyf2623tsl] {
    background: rgba(0,40,85,0.08);
    border-radius: 4px;
    padding: 0.05rem 0.4rem;
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    color: #002855;
    white-space: nowrap;
}

[data-bs-theme="dark"] .order-summary-stc-badge[b-qyf2623tsl] {
    background: rgba(241,184,40,0.15);
    color: #F1B828;
}

.order-summary-key[b-qyf2623tsl] {
    color: rgba(0,40,85,0.55);
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

[data-bs-theme="dark"] .order-summary-key[b-qyf2623tsl] {
    color: rgba(232,237,245,0.55);
}

.order-summary-val[b-qyf2623tsl] {
    color: #002855;
    font-size: 0.88rem;
    font-weight: 700;
}

[data-bs-theme="dark"] .order-summary-val[b-qyf2623tsl] {
    color: #F1B828;
}

.order-summary-divider[b-qyf2623tsl] {
    color: rgba(0,40,85,0.2);
    font-weight: 300;
}

[data-bs-theme="dark"] .order-summary-divider[b-qyf2623tsl] {
    color: rgba(255,255,255,0.18);
}

/* =============================================================
   NQ OVERLAY / NQ CARD — inline alert modal system
   Restored: was removed when the inline style block was stripped.
   ============================================================= */
.nq-overlay[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0,0,0,0.55);
    z-index: 1055;
    padding: 24px;
}

:root[data-bs-theme="light"] .nq-overlay[b-qyf2623tsl],
[data-theme="light"] .nq-overlay[b-qyf2623tsl] {
    background: rgba(0,0,0,0.45);
}

:root[data-bs-theme="dark"] .nq-overlay[b-qyf2623tsl],
[data-theme="dark"] .nq-overlay[b-qyf2623tsl] {
    background: rgba(0,0,0,0.72);
}

.nq-overlay.nq-intent-danger .nq-card[b-qyf2623tsl] {
    border-color: rgba(220,38,38,0.30);
    box-shadow: 0 24px 72px rgba(220,38,38,0.22), 0 0 0 1px rgba(220,38,38,0.14);
}

.nq-card[b-qyf2623tsl] {
    background: #ffffff;
    border: 1px solid rgba(0,40,85,0.12);
    border-radius: 16px;
    box-shadow: 0 20px 60px rgba(0,40,85,0.18);
    width: 100%;
    max-width: 440px;
    padding: 0;
    overflow: hidden;
    animation: nq-card-in-b-qyf2623tsl 0.18s cubic-bezier(0.2, 0, 0, 1) both;
}

:root[data-bs-theme="dark"] .nq-card[b-qyf2623tsl],
[data-theme="dark"] .nq-card[b-qyf2623tsl] {
    background: #1a1f2e !important;
    border-color: rgba(255,255,255,0.10) !important;
    box-shadow: 0 32px 80px rgba(0,0,0,0.65), 0 0 0 1px rgba(255,255,255,0.06) !important;
}

@keyframes nq-card-in-b-qyf2623tsl {
    from {
        opacity: 0;
        transform: scale(0.95) translateY(8px);
    }

    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}

.nq-card__header[b-qyf2623tsl] {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 20px 22px 16px;
    border-bottom: 1px solid rgba(0,40,85,0.10);
    background: rgba(0,40,85,0.02);
}

:root[data-bs-theme="dark"] .nq-card__header[b-qyf2623tsl],
[data-theme="dark"] .nq-card__header[b-qyf2623tsl] {
    background: rgba(255,255,255,0.03) !important;
    border-bottom-color: rgba(255,255,255,0.08) !important;
}

.nq-card__icon[b-qyf2623tsl] {
    font-size: 22px;
    line-height: 1;
    color: #b45309;
    flex-shrink: 0;
    margin-top: 1px;
}

:root[data-bs-theme="dark"] .nq-card__icon[b-qyf2623tsl],
[data-theme="dark"] .nq-card__icon[b-qyf2623tsl] {
    color: #F1B828 !important;
}

.nq-overlay.nq-intent-danger .nq-card__icon[b-qyf2623tsl] {
    color: #b91c1c;
}

:root[data-bs-theme="dark"] .nq-overlay.nq-intent-danger .nq-card__icon[b-qyf2623tsl],
[data-theme="dark"] .nq-overlay.nq-intent-danger .nq-card__icon[b-qyf2623tsl] {
    color: #f87171 !important;
}

.nq-card__title[b-qyf2623tsl] {
    font-size: 15px;
    font-weight: 800;
    letter-spacing: 0.01em;
    color: #0d1f3c;
    line-height: 1.2;
    margin-bottom: 2px;
}

:root[data-bs-theme="dark"] .nq-card__title[b-qyf2623tsl],
[data-theme="dark"] .nq-card__title[b-qyf2623tsl] {
    color: rgba(255,255,255,0.94) !important;
}

.nq-card__subtitle[b-qyf2623tsl] {
    font-size: 11px;
    font-weight: 500;
    color: rgba(13,31,60,0.48);
    letter-spacing: 0.03em;
}

:root[data-bs-theme="dark"] .nq-card__subtitle[b-qyf2623tsl],
[data-theme="dark"] .nq-card__subtitle[b-qyf2623tsl] {
    color: rgba(255,255,255,0.50) !important;
}

.nq-card__body[b-qyf2623tsl] {
    padding: 18px 22px;
    font-size: 13px;
    line-height: 1.55;
    color: #0d1f3c;
    background: #ffffff;
}

:root[data-bs-theme="dark"] .nq-card__body[b-qyf2623tsl],
[data-theme="dark"] .nq-card__body[b-qyf2623tsl] {
    background: #1a1f2e !important;
    color: rgba(255,255,255,0.88) !important;
}

.nq-card__body p[b-qyf2623tsl] {
    margin-bottom: 10px;
}

    .nq-card__body p:last-child[b-qyf2623tsl] {
        margin-bottom: 0;
    }

.nq-card__body strong[b-qyf2623tsl] {
    font-weight: 700;
}

:root[data-bs-theme="dark"] .nq-card__body strong[b-qyf2623tsl],
[data-theme="dark"] .nq-card__body strong[b-qyf2623tsl] {
    color: rgba(255,255,255,0.98) !important;
}

.nq-card__footer[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    padding: 14px 22px;
    border-top: 1px solid rgba(0,40,85,0.10);
    background: rgba(0,40,85,0.02);
}

:root[data-bs-theme="dark"] .nq-card__footer[b-qyf2623tsl],
[data-theme="dark"] .nq-card__footer[b-qyf2623tsl] {
    background: rgba(255,255,255,0.02) !important;
    border-top-color: rgba(255,255,255,0.08) !important;
}

.nq-btn[b-qyf2623tsl] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    font-family: 'din-2014', 'DIN Pro', 'DM Sans', sans-serif !important;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.03em;
    padding: 9px 20px;
    border-radius: 9px;
    border: 1px solid transparent;
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
    line-height: 1;
}

.nq-btn--ok[b-qyf2623tsl] {
    background: #002855;
    border-color: #001e42;
    color: #ffffff;
    box-shadow: 0 2px 8px rgba(0,40,85,0.22);
}

    .nq-btn--ok:hover[b-qyf2623tsl] {
        background: #001e42;
        box-shadow: 0 4px 14px rgba(0,40,85,0.32);
        transform: translateY(-1px);
    }

:root[data-bs-theme="dark"] .nq-btn--ok[b-qyf2623tsl],
[data-theme="dark"] .nq-btn--ok[b-qyf2623tsl] {
    background: rgba(241,184,40,0.14) !important;
    border-color: rgba(241,184,40,0.36) !important;
    color: rgba(241,184,40,0.96) !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.28), 0 0 14px rgba(241,184,40,0.15) !important;
    text-shadow: 0 0 10px rgba(241,184,40,0.40);
}

    :root[data-bs-theme="dark"] .nq-btn--ok:hover[b-qyf2623tsl],
    [data-theme="dark"] .nq-btn--ok:hover[b-qyf2623tsl] {
        background: rgba(241,184,40,0.24) !important;
        border-color: rgba(241,184,40,0.55) !important;
        color: #fff !important;
        box-shadow: 0 4px 18px rgba(0,0,0,0.35), 0 0 22px rgba(241,184,40,0.28) !important;
        text-shadow: 0 0 14px rgba(241,184,40,0.60);
        transform: translateY(-1px);
    }

.nq-btn--neutral[b-qyf2623tsl] {
    background: rgba(0,40,85,0.07);
    border-color: rgba(0,40,85,0.14);
    color: #0d1f3c;
    box-shadow: 0 1px 4px rgba(0,40,85,0.08);
}

    .nq-btn--neutral:hover[b-qyf2623tsl] {
        background: rgba(0,40,85,0.12);
        transform: translateY(-1px);
        box-shadow: 0 3px 10px rgba(0,40,85,0.14);
    }

:root[data-bs-theme="dark"] .nq-btn--neutral[b-qyf2623tsl],
[data-theme="dark"] .nq-btn--neutral[b-qyf2623tsl] {
    background: rgba(255,255,255,0.08) !important;
    border-color: rgba(255,255,255,0.15) !important;
    color: rgba(255,255,255,0.82) !important;
}

    :root[data-bs-theme="dark"] .nq-btn--neutral:hover[b-qyf2623tsl],
    [data-theme="dark"] .nq-btn--neutral:hover[b-qyf2623tsl] {
        background: rgba(255,255,255,0.14) !important;
        border-color: rgba(255,255,255,0.25) !important;
        color: #fff !important;
        box-shadow: 0 4px 14px rgba(0,0,0,0.30) !important;
    }

.nq-btn--danger[b-qyf2623tsl] {
    background: #b91c1c;
    border-color: #991b1b;
    color: #ffffff;
    box-shadow: 0 2px 8px rgba(185,28,28,0.28);
}

    .nq-btn--danger:hover[b-qyf2623tsl] {
        background: #991b1b;
        box-shadow: 0 4px 16px rgba(185,28,28,0.38);
        transform: translateY(-1px);
    }

:root[data-bs-theme="dark"] .nq-btn--danger[b-qyf2623tsl],
[data-theme="dark"] .nq-btn--danger[b-qyf2623tsl] {
    background: rgba(239,68,68,0.15) !important;
    border-color: rgba(239,68,68,0.34) !important;
    color: #fca5a5 !important;
    box-shadow: 0 2px 10px rgba(0,0,0,0.30), 0 0 12px rgba(239,68,68,0.18) !important;
}

    :root[data-bs-theme="dark"] .nq-btn--danger:hover[b-qyf2623tsl],
    [data-theme="dark"] .nq-btn--danger:hover[b-qyf2623tsl] {
        background: rgba(239,68,68,0.26) !important;
        border-color: rgba(239,68,68,0.55) !important;
        color: #ffffff !important;
        box-shadow: 0 4px 18px rgba(0,0,0,0.35), 0 0 22px rgba(239,68,68,0.28) !important;
        transform: translateY(-1px);
    }


/* =============================================================
   REFACTOR — HEADER / UTILITY BUTTONS / EXPORT MENU / MODALS
   ============================================================= */
.mpl-page-header[b-qyf2623tsl] {
    align-items: flex-end;
    justify-content: space-between;
    gap: 10px 16px;
}

.mpl-page-header__left--stacked[b-qyf2623tsl] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    min-width: 0;
}

.mpl-page-header__title-row[b-qyf2623tsl],
.mpl-page-header__controls[b-qyf2623tsl],
.mpl-page-header__meta[b-qyf2623tsl] {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.mpl-page-header__title[b-qyf2623tsl] {
    font-size: 1.45rem;
    letter-spacing: 0.04em;
}

    .mpl-page-header__title[b-qyf2623tsl]::after {
        /* Overridden by the main block above — kept for cascade safety */
        content: "»";
        background: none;
        clip-path: none;
        width: auto;
        height: auto;
        flex: 0 0 auto;
        color: var(--iac-gold);
        font-size: 1em;
        font-weight: 800;
        letter-spacing: -0.06em;
    }

.mpl-page-header__tabs[b-qyf2623tsl] {
    justify-content: center;
    flex: 1 1 360px;
    align-self: flex-end;
}

.mpl-page-header__meta[b-qyf2623tsl] {
    margin-left: auto;
    justify-content: flex-end;
    margin-left: auto;
    align-self: flex-end;
}

.iac-toggle-btn[b-qyf2623tsl] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.35rem;
    height: 34px;
    padding: 0 1rem;
    border-radius: 8px;
    border: 1.5px solid rgba(0,40,85,0.45);
    background: #002855;
    color: #ffffff;
    font-family: 'din-2014', 'DIN 2014', 'DIN Pro', sans-serif !important;
    font-size: 0.73rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    box-shadow: 0 2px 8px rgba(0,40,85,0.22), inset 0 1px 0 rgba(255,255,255,0.08);
    transition: background .15s, border-color .15s, color .15s, box-shadow .15s, transform .1s;
    cursor: pointer;
    white-space: nowrap;
    user-select: none;
}

    .iac-toggle-btn:hover[b-qyf2623tsl] {
        background: #001e42;
        border-color: var(--iac-gold);
        color: var(--iac-gold);
        box-shadow: 0 4px 14px rgba(0,40,85,0.30), 0 0 0 2px rgba(241,184,40,0.14);
        transform: translateY(-1px);
    }

    .iac-toggle-btn:active[b-qyf2623tsl] {
        transform: translateY(0);
        box-shadow: 0 1px 4px rgba(0,40,85,0.18);
    }

    .iac-toggle-btn.is-active[b-qyf2623tsl] {
        background: #001533;
        border-color: var(--iac-gold);
        color: var(--iac-gold);
        box-shadow: 0 2px 8px rgba(0,40,85,0.28), inset 0 1px 3px rgba(0,0,0,0.16), 0 0 0 2px rgba(241,184,40,0.18);
    }

        .iac-toggle-btn.is-active:hover[b-qyf2623tsl] {
            background: #001533;
            border-color: var(--iac-gold);
            color: #ffd56b;
            box-shadow: 0 4px 14px rgba(0,40,85,0.32), 0 0 0 2px rgba(241,184,40,0.24);
            transform: translateY(-1px);
        }

[data-bs-theme="dark"] .iac-toggle-btn[b-qyf2623tsl],
[data-theme="dark"] .iac-toggle-btn[b-qyf2623tsl] {
    background: rgba(0,40,85,0.55);
    border-color: rgba(241,184,40,0.35);
    color: rgba(255,255,255,0.88);
    box-shadow: 0 2px 8px rgba(0,0,0,0.28), inset 0 1px 0 rgba(255,255,255,0.06);
}

    [data-bs-theme="dark"] .iac-toggle-btn.is-active[b-qyf2623tsl],
    [data-theme="dark"] .iac-toggle-btn.is-active[b-qyf2623tsl] {
        background: rgba(0,40,85,0.75);
        border-color: var(--iac-gold);
        color: var(--iac-gold);
        box-shadow: inset 0 1px 3px rgba(0,0,0,0.30), 0 0 10px rgba(241,184,40,0.16);
    }

    [data-bs-theme="dark"] .iac-toggle-btn:hover[b-qyf2623tsl],
    [data-theme="dark"] .iac-toggle-btn:hover[b-qyf2623tsl] {
        background: rgba(0,40,85,0.70);
        border-color: var(--iac-gold);
        color: var(--iac-gold);
        box-shadow: 0 4px 12px rgba(0,0,0,0.32), 0 0 0 2px rgba(241,184,40,0.16);
        transform: translateY(-1px);
    }

    [data-bs-theme="dark"] .iac-toggle-btn.is-active:hover[b-qyf2623tsl],
    [data-theme="dark"] .iac-toggle-btn.is-active:hover[b-qyf2623tsl] {
        background: rgba(0,40,85,0.85);
        border-color: var(--iac-gold);
        color: #ffd56b;
        box-shadow: 0 4px 14px rgba(0,0,0,0.34), 0 0 0 2px rgba(241,184,40,0.24);
        transform: translateY(-1px);
    }

.header-select--compact.form-select[b-qyf2623tsl],
.form-select.header-select--compact[b-qyf2623tsl],
select.header-select--compact[b-qyf2623tsl] {
    min-height: 34px !important;
    height: 34px !important;
    padding-top: 0.35rem !important;
    padding-bottom: 0.35rem !important;
}

.modal-dialog-top-spaced[b-qyf2623tsl] {
    margin-top: 5rem !important;
    margin-bottom: 2rem !important;
}

.modal-dialog-tighter[b-qyf2623tsl] {
    max-width: min(1120px, calc(100vw - 64px));
}

    .modal-dialog-tighter .modal-content[b-qyf2623tsl] {
        min-height: 0;
    }

    .modal-dialog-tighter .modal-body[b-qyf2623tsl] {
        max-height: calc(100vh - 11rem);
    }

#hardwareSetDetails .modal-dialog[b-qyf2623tsl] {
    max-width: min(1080px, calc(100vw - 72px));
}

#hardwareSetDetails .modal-body[b-qyf2623tsl] {
    padding-top: 1rem;
    padding-bottom: 1rem;
}

#hardwareSetDetails .inner-card[b-qyf2623tsl],
[id^="order-details-modal-"] .inner-card[b-qyf2623tsl],
[id^="order-details-modal-"] .modal-body > .row[b-qyf2623tsl],
[id^="order-details-modal-"] .modal-body > div[b-qyf2623tsl] {
    margin-bottom: 0.85rem;
}

.export-menu-wrap[b-qyf2623tsl] {
    position: relative;
    display: inline-flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.45rem;
}

.export-menu-toggle[b-qyf2623tsl] {
    min-width: 168px;
    justify-content: center;
}

.export-menu-list[b-qyf2623tsl] {
    min-width: 240px;
    padding: 0.4rem;
    border-radius: 14px;
    border: 1px solid var(--panel-border-strong);
    box-shadow: 0 18px 48px rgba(0,40,85,0.16);
}

.export-menu-item[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    min-height: 40px;
    border-radius: 10px;
    font-size: 0.84rem;
    font-weight: 700;
    color: var(--text-primary);
}

    .export-menu-item:hover[b-qyf2623tsl],
    .export-menu-item:focus[b-qyf2623tsl] {
        background: rgba(0,40,85,0.06);
        color: var(--iac-navy);
    }

[data-bs-theme="dark"] .export-menu-list[b-qyf2623tsl],
[data-theme="dark"] .export-menu-list[b-qyf2623tsl] {
    background: #131b2a;
    border-color: rgba(255,255,255,0.12);
    box-shadow: 0 22px 56px rgba(0,0,0,0.44);
}

[data-bs-theme="dark"] .export-menu-item[b-qyf2623tsl],
[data-theme="dark"] .export-menu-item[b-qyf2623tsl] {
    color: rgba(255,255,255,0.9);
}

    [data-bs-theme="dark"] .export-menu-item:hover[b-qyf2623tsl],
    [data-theme="dark"] .export-menu-item:focus[b-qyf2623tsl],
    [data-theme="dark"] .export-menu-item:active[b-qyf2623tsl],
    [data-bs-theme="dark"] .export-menu-item:hover[b-qyf2623tsl],
    [data-bs-theme="dark"] .export-menu-item:focus[b-qyf2623tsl],
    [data-bs-theme="dark"] .export-menu-item:active[b-qyf2623tsl] {
        background: rgba(241,184,40,0.12);
        color: var(--iac-gold);
    }

@media (max-width: 991.98px) {
    .mpl-page-header__meta[b-qyf2623tsl] {
        margin-left: auto;
        margin-left: 0;
        justify-content: flex-start;
    }
}

@media (max-width: 767.98px) {
    .mpl-page-header__controls[b-qyf2623tsl],
    .mpl-page-header__meta[b-qyf2623tsl] {
        margin-left: auto;
        width: 100%;
    }

    .mpl-page-header__tabs[b-qyf2623tsl] {
        width: 100%;
        justify-content: flex-start;
    }

    .export-menu-wrap[b-qyf2623tsl],
    .export-menu-toggle[b-qyf2623tsl],
    .export-menu-list[b-qyf2623tsl] {
        width: 100%;
    }

    .modal-dialog-top-spaced[b-qyf2623tsl] {
        margin-top: 1rem !important;
    }
}

/* =============================================================
   EXPORT-MENU DISABLED ITEM — clearly disabled in light + dark
   Used for Door Submittal PDF when CanExportSubmittal is false.
   ============================================================= */
.export-menu-item--disabled[b-qyf2623tsl] {
    opacity: 1 !important;
    pointer-events: none !important;
    cursor: not-allowed !important;
    user-select: none;
    color: #8b95a7 !important;
    background: linear-gradient(180deg, rgba(139,149,167,0.08) 0%, rgba(139,149,167,0.04) 100%);
    border-color: rgba(139,149,167,0.18) !important;
    font-style: italic;
    filter: grayscale(0.2);
}

    .export-menu-item--disabled:hover[b-qyf2623tsl],
    .export-menu-item--disabled:focus[b-qyf2623tsl],
    .export-menu-item--disabled:active[b-qyf2623tsl] {
        color: #8b95a7 !important;
        background: linear-gradient(180deg, rgba(139,149,167,0.08) 0%, rgba(139,149,167,0.04) 100%) !important;
        border-color: rgba(139,149,167,0.18) !important;
        box-shadow: none !important;
        transform: none !important;
    }

    .export-menu-item--disabled .dropdown-item-icon[b-qyf2623tsl],
    .export-menu-item--disabled i[b-qyf2623tsl],
    .export-menu-item--disabled svg[b-qyf2623tsl] {
        opacity: 0.5 !important;
    }

[data-bs-theme="dark"] .export-menu-item--disabled[b-qyf2623tsl],
[data-theme="dark"] .export-menu-item--disabled[b-qyf2623tsl] {
    color: rgba(255,255,255,0.42) !important;
    background: linear-gradient(180deg, rgba(255,255,255,0.05) 0%, rgba(255,255,255,0.025) 100%);
    border-color: rgba(255,255,255,0.08) !important;
}

    [data-bs-theme="dark"] .export-menu-item--disabled:hover[b-qyf2623tsl],
    [data-bs-theme="dark"] .export-menu-item--disabled:focus[b-qyf2623tsl],
    [data-bs-theme="dark"] .export-menu-item--disabled:active[b-qyf2623tsl],
    [data-theme="dark"] .export-menu-item--disabled:hover[b-qyf2623tsl],
    [data-theme="dark"] .export-menu-item--disabled:focus[b-qyf2623tsl],
    [data-theme="dark"] .export-menu-item--disabled:active[b-qyf2623tsl] {
        color: rgba(255,255,255,0.42) !important;
        background: linear-gradient(180deg, rgba(255,255,255,0.05) 0%, rgba(255,255,255,0.025) 100%) !important;
        border-color: rgba(255,255,255,0.08) !important;
        box-shadow: none !important;
        transform: none !important;
    }

    [data-bs-theme="dark"] .export-menu-item--disabled .dropdown-item-icon[b-qyf2623tsl],
    [data-bs-theme="dark"] .export-menu-item--disabled i[b-qyf2623tsl],
    [data-bs-theme="dark"] .export-menu-item--disabled svg[b-qyf2623tsl],
    [data-theme="dark"] .export-menu-item--disabled .dropdown-item-icon[b-qyf2623tsl],
    [data-theme="dark"] .export-menu-item--disabled i[b-qyf2623tsl],
    [data-theme="dark"] .export-menu-item--disabled svg[b-qyf2623tsl] {
        opacity: 0.42 !important;
    }

.export-menu-badge[b-qyf2623tsl] {
    margin-left: auto;
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    background: rgba(220,38,38,0.12);
    color: #b91c1c;
    border: 1px solid rgba(220,38,38,0.22);
    border-radius: 5px;
    padding: 2px 6px;
    white-space: nowrap;
    font-style: normal;
}

[data-bs-theme="dark"] .export-menu-badge[b-qyf2623tsl],
[data-theme="dark"] .export-menu-badge[b-qyf2623tsl] {
    background: rgba(239,68,68,0.14);
    color: #f87171;
    border-color: rgba(239,68,68,0.28);
}

/* =============================================================
   FIELD-WITH-UNIT — stable input layout that reserves mm-label
   space so the select/input box never jumps when the label appears.
   Wrap any col-md that contains a select + dim-mm-label in this.
   ============================================================= */
.field-with-unit[b-qyf2623tsl] {
    display: flex;
    flex-direction: column;
}

    /* The select or input sits normally */
    .field-with-unit .form-select[b-qyf2623tsl],
    .field-with-unit .form-control[b-qyf2623tsl] {
        flex-shrink: 0;
    }

    /* Reserve exactly one line of space for the mm label so the
       layout never shifts — always 16px tall whether or not the
       label is rendered. */
    .field-with-unit .dim-mm-label[b-qyf2623tsl] {
        display: block;
        min-height: 16px;
        margin-left: 0;
        margin-top: 3px;
        line-height: 1;
    }

/* =============================================================
   TOGGLE CARD — polished option bar replacing the old toggle-strip
   ============================================================= */
.door-options-bar[b-qyf2623tsl] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0;
    background: var(--panel-bg-alt);
    border: 1px solid var(--panel-border-strong);
    border-radius: 10px;
    overflow: hidden;
    margin: 10px 0 6px;
}

.door-options-bar__item[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 22px;
    border-right: 1px solid var(--panel-border-strong);
    flex: 1 1 120px;
    min-width: 120px;
    gap: 10px;
}

    .door-options-bar__item:last-child[b-qyf2623tsl] {
        border-right: none;
    }

.door-options-bar__label[b-qyf2623tsl] {
    font-size: 0.80rem;
    font-weight: 600;
    color: var(--text-secondary);
    white-space: nowrap;
    cursor: pointer;
    user-select: none;
}

.door-options-bar__sub[b-qyf2623tsl] {
    font-size: 0.72rem;
    font-weight: 600;
    color: var(--text-muted);
    white-space: nowrap;
    margin-left: 4px;
}

[data-bs-theme="dark"] .door-options-bar[b-qyf2623tsl],
[data-theme="dark"] .door-options-bar[b-qyf2623tsl] {
    background: rgba(255,255,255,0.04);
    border-color: rgba(255,255,255,0.10);
}

[data-bs-theme="dark"] .door-options-bar__item[b-qyf2623tsl],
[data-theme="dark"] .door-options-bar__item[b-qyf2623tsl] {
    border-right-color: rgba(255,255,255,0.08);
}

@media (max-width: 575px) {
    .door-options-bar__item[b-qyf2623tsl] {
        flex: 1 1 100%;
        border-right: none;
        border-bottom: 1px solid var(--panel-border-strong);
        justify-content: flex-start;
        padding: 10px 16px;
    }

        .door-options-bar__item:last-child[b-qyf2623tsl] {
            border-bottom: none;
        }

    [data-bs-theme="dark"] .door-options-bar__item[b-qyf2623tsl],
    [data-theme="dark"] .door-options-bar__item[b-qyf2623tsl] {
        border-bottom-color: rgba(255,255,255,0.08);
    }
}

/* =============================================================
   DOOR CONFIG REMOCK — stable grid + feature cards + attached panels
   ============================================================= */
.door-config-header[b-qyf2623tsl] {
    padding: 0 !important;
}

.door-config-topbar[b-qyf2623tsl] {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(220px, 1.2fr) minmax(0, 2fr);
    gap: 16px;
    align-items: center;
    padding: 16px 18px;
}

.door-config-topbar__titlewrap[b-qyf2623tsl] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.door-config-topbar__eyebrow[b-qyf2623tsl] {
    font-size: 11px;
    line-height: 1.35;
    letter-spacing: 0.03em;
    color: var(--text-muted);
}

.door-config-topbar__controls[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex-wrap: wrap;
}

.door-config-pillgroup[b-qyf2623tsl],
.door-config-markblock[b-qyf2623tsl] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 40px;
    padding: 8px 10px;
    border-radius: 12px;
    background: rgba(255,255,255,0.58);
    border: 1px solid var(--panel-border);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.55);
}

[data-bs-theme="dark"] .door-config-pillgroup[b-qyf2623tsl],
[data-theme="dark"] .door-config-pillgroup[b-qyf2623tsl],
[data-bs-theme="dark"] .door-config-markblock[b-qyf2623tsl],
[data-theme="dark"] .door-config-markblock[b-qyf2623tsl] {
    background: rgba(255,255,255,0.05);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.03);
}

.door-config-pillgroup .form-label.small-label[b-qyf2623tsl],
.door-config-pillgroup label.small-label[b-qyf2623tsl],
.door-config-markblock .form-label.small-label[b-qyf2623tsl],
.door-config-markblock label.small-label[b-qyf2623tsl],
.door-config-markblock .small-label[b-qyf2623tsl] {
    width: auto !important;
    margin: 0 !important;
    border-radius: 4px !important;
}

.door-config-markblock[b-qyf2623tsl] {
    flex-wrap: wrap;
}

.door-config-marktoggle[b-qyf2623tsl] {
    height: 36px;
}

.door-config-markinput[b-qyf2623tsl],
.door-config-markvalue[b-qyf2623tsl] {
    min-width: 110px;
    height: 36px;
}

.door-config-markvalue[b-qyf2623tsl] {
    display: inline-flex !important;
    align-items: center;
    background: rgba(0,40,85,0.05) !important;
    cursor: default;
    pointer-events: none;
}

.door-config-body[b-qyf2623tsl] {
    padding: 18px !important;
}

.door-config-shell[b-qyf2623tsl] {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.door-config-modebar[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    flex-wrap: wrap;
    padding: 12px 14px;
    border-radius: 14px;
    background: linear-gradient(180deg, rgba(0,40,85,0.04) 0%, rgba(0,40,85,0.02) 100%);
    border: 1px solid var(--panel-border);
}

[data-bs-theme="dark"] .door-config-modebar[b-qyf2623tsl],
[data-theme="dark"] .door-config-modebar[b-qyf2623tsl] {
    background: linear-gradient(180deg, rgba(255,255,255,0.04) 0%, rgba(255,255,255,0.02) 100%);
}

.door-config-modebar__main[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
}

.door-config-modebar__hint[b-qyf2623tsl] {
    font-size: 12px;
    color: var(--text-muted);
}

.door-config-coregrid[b-qyf2623tsl] {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 12px;
    align-items: start;
}

.door-config-coregrid--custom[b-qyf2623tsl] {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.door-config-field[b-qyf2623tsl] {
    min-width: 0;
    display: flex;
    flex-direction: column;
}

    .door-config-field .form-select[b-qyf2623tsl],
    .door-config-field .form-control[b-qyf2623tsl],
    .door-config-field .field-with-unit[b-qyf2623tsl] {
        width: 100%;
    }

    .door-config-field .field-with-unit[b-qyf2623tsl] {
        min-height: 62px;
    }

    .door-config-helper[b-qyf2623tsl],
    .door-config-field .dim-mm-label[b-qyf2623tsl] {
        display: flex;
        align-items: center;
        min-height: 18px;
        padding-top: 4px;
        font-size: 11px;
        line-height: 1;
        color: var(--text-muted);
        white-space: nowrap;
    }

.door-config-field--status[b-qyf2623tsl] {
    min-width: 170px;
}

.door-config-statusslot[b-qyf2623tsl] {
    min-height: 44px;
    display: flex;
    align-items: center;
}

.door-config-statusplaceholder[b-qyf2623tsl] {
    display: inline-flex;
    align-items: center;
    min-height: 36px;
    padding: 0 12px;
    border-radius: 999px;
    border: 1px dashed var(--panel-border-strong);
    color: var(--text-muted);
    background: rgba(0,40,85,0.03);
    font-size: 12px;
    font-weight: 600;
}

[data-bs-theme="dark"] .door-config-statusplaceholder[b-qyf2623tsl],
[data-theme="dark"] .door-config-statusplaceholder[b-qyf2623tsl] {
    background: rgba(255,255,255,0.03);
}

.door-config-statusbadge[b-qyf2623tsl] {
    font-size: 11px !important;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    padding: 7px 12px !important;
    border-radius: 999px !important;
}

.door-config-statusbadge--hinges[b-qyf2623tsl] {
    padding: 8px 13px !important;
}

.door-config-statusbadge--warning[b-qyf2623tsl] {
    box-shadow: 0 8px 18px rgba(241,184,40,0.18);
}

.door-config-rfqmeta[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: -2px;
}

.door-config-rfqmeta__text[b-qyf2623tsl] {
    font-size: 12px;
    color: var(--text-muted);
    font-style: italic;
}

.door-config-flagrow[b-qyf2623tsl] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.door-config-flagbadge[b-qyf2623tsl] {
    font-size: 10px !important;
    letter-spacing: 0.06em;
    padding: 5px 8px !important;
    border-radius: 999px !important;
}

.door-config-requirednote[b-qyf2623tsl] {
    display: flex;
    justify-content: flex-end;
    margin-top: -2px;
}

    .door-config-requirednote .required-note[b-qyf2623tsl] {
        margin: 0;
        padding: 5px 10px;
        border-radius: 999px;
        background: rgba(241,184,40,0.10);
        border: 1px solid rgba(241,184,40,0.22);
    }

.door-feature-grid[b-qyf2623tsl] {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.door-feature-card[b-qyf2623tsl] {
    display: grid;
    grid-template-rows: auto 1fr;
    gap: 10px;
    min-height: 112px;
    padding: 14px;
    border-radius: 16px;
    border: 1px solid var(--panel-border);
    background: linear-gradient(180deg, rgba(255,255,255,0.78) 0%, rgba(255,255,255,0.56) 100%);
    box-shadow: 0 8px 24px rgba(0,40,85,0.06);
    transition: border-color .18s ease, box-shadow .18s ease, transform .18s ease, background .18s ease;
}

    .door-feature-card:hover[b-qyf2623tsl] {
        border-color: var(--panel-border-strong);
        transform: translateY(-1px);
    }

    .door-feature-card.is-active[b-qyf2623tsl] {
        border-color: rgba(241,184,40,0.46);
        background: linear-gradient(180deg, rgba(241,184,40,0.16) 0%, rgba(255,255,255,0.72) 100%);
        box-shadow: 0 12px 28px rgba(241,184,40,0.12);
    }

    .door-feature-card.is-disabled[b-qyf2623tsl] {
        opacity: .68;
    }

[data-bs-theme="dark"] .door-feature-card[b-qyf2623tsl],
[data-theme="dark"] .door-feature-card[b-qyf2623tsl] {
    background: linear-gradient(180deg, rgba(255,255,255,0.045) 0%, rgba(255,255,255,0.03) 100%);
    box-shadow: 0 10px 24px rgba(0,0,0,0.22);
}

    [data-bs-theme="dark"] .door-feature-card.is-active[b-qyf2623tsl],
    [data-theme="dark"] .door-feature-card.is-active[b-qyf2623tsl] {
        background: linear-gradient(180deg, rgba(241,184,40,0.14) 0%, rgba(255,255,255,0.03) 100%);
    }

.door-feature-card__switch[b-qyf2623tsl] {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.door-feature-card__title[b-qyf2623tsl] {
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--text-primary);
    cursor: pointer;
}

.door-feature-card__body[b-qyf2623tsl] {
    display: flex;
    flex-direction: column;
    gap: 10px;
    cursor: pointer;
}

.door-feature-card__text[b-qyf2623tsl] {
    font-size: 12px;
    line-height: 1.45;
    color: var(--text-secondary);
}

.door-feature-card__meta[b-qyf2623tsl] {
    margin-top: auto;
    display: inline-flex;
    align-items: center;
    width: fit-content;
    max-width: 100%;
    padding: 5px 10px;
    border-radius: 999px;
    background: rgba(0,40,85,0.07);
    color: var(--chip-active-color);
    border: 1px solid var(--panel-border);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

[data-bs-theme="dark"] .door-feature-card__meta[b-qyf2623tsl],
[data-theme="dark"] .door-feature-card__meta[b-qyf2623tsl] {
    background: rgba(255,255,255,0.08);
    color: rgba(255,255,255,0.86);
}

.door-option-panel[b-qyf2623tsl] {
    margin-top: 14px;
    padding: 16px;
    border-radius: 16px;
    border: 1px solid var(--panel-border-strong);
    background: linear-gradient(180deg, rgba(0,40,85,0.035) 0%, rgba(255,255,255,0.65) 100%);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.55);
}

[data-bs-theme="dark"] .door-option-panel[b-qyf2623tsl],
[data-theme="dark"] .door-option-panel[b-qyf2623tsl] {
    background: linear-gradient(180deg, rgba(255,255,255,0.045) 0%, rgba(255,255,255,0.025) 100%);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}

.door-option-panel__head[b-qyf2623tsl] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    margin-bottom: 14px;
}

.door-option-panel__eyebrow[b-qyf2623tsl] {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.door-option-panel__title[b-qyf2623tsl] {
    font-size: 16px;
    font-weight: 800;
    color: var(--text-primary);
    line-height: 1.2;
}

.door-option-panel .hr\.divider-thick[b-qyf2623tsl],
.door-option-panel .divider-sm[b-qyf2623tsl] {
    display: none;
}

@media (max-width: 1399px) {
    .door-config-coregrid[b-qyf2623tsl] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .door-config-coregrid--custom[b-qyf2623tsl] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 991px) {
    .door-config-topbar[b-qyf2623tsl] {
        grid-template-columns: 1fr;
    }

    .door-config-topbar__controls[b-qyf2623tsl] {
        justify-content: flex-start;
    }

    .door-feature-grid[b-qyf2623tsl] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 767px) {
    .door-config-body[b-qyf2623tsl] {
        padding: 14px !important;
    }

    .door-config-coregrid[b-qyf2623tsl],
    .door-config-coregrid--custom[b-qyf2623tsl] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .door-config-requirednote[b-qyf2623tsl] {
        justify-content: flex-start;
    }
}

@media (max-width: 575px) {
    .door-config-topbar[b-qyf2623tsl],
    .door-config-body[b-qyf2623tsl] {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .door-config-pillgroup[b-qyf2623tsl],
    .door-config-markblock[b-qyf2623tsl] {
        width: 100%;
        justify-content: space-between;
    }

    .door-config-coregrid[b-qyf2623tsl],
    .door-config-coregrid--custom[b-qyf2623tsl] {
        grid-template-columns: 1fr;
    }

    .door-config-modebar[b-qyf2623tsl] {
        padding: 12px;
    }

    .door-option-panel[b-qyf2623tsl] {
        padding: 14px;
    }
}
/* _content/NoiseLockQuoteTool/Pages/Feedback.razor.rz.scp.css */
/* ================================================================
   FEEDBACK.RAZOR.CSS
   IAC Acoustics CPQ Portal — Feedback Page
   Brand: Navy #002855, Gold #F1B828, Font: din-2014
   ================================================================ */

/* ── Shell ───────────────────────────────────────────────────── */
.fb-shell[b-rjzggg6jvy] {
    min-height: calc(100vh - var(--navbar-height, 56px) - var(--footer-h, 30px));
    background: var(--bg-page);
    font-family: 'din-2014', system-ui, sans-serif;
    display: flex;
    flex-direction: column;
}

/* ══════════════════════════════════════════════════════════════
   BANNER HEADER
   Matches the navy gradient header used across the CPQ portal
   (e.g. the user profile banner shown in the reference image).
   ══════════════════════════════════════════════════════════════ */
.fb-banner[b-rjzggg6jvy] {
    position: relative;
    display: flex;
    align-items: center;
    gap: 24px;
    padding: 22px clamp(20px, 4vw, 48px);
    background: linear-gradient(100deg, #002855 0%, #1a3260 55%, #2a4a80 100%);
    overflow: hidden;
    min-height: 110px;
}

/* Subtle grid-line texture identical to the portal's profile banner */
.fb-banner__grid[b-rjzggg6jvy] {
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(255,255,255,0.04) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,0.04) 1px, transparent 1px);
    background-size: 28px 28px;
    pointer-events: none;
}

/* Right-side fade matching the profile banner gradient */
.fb-banner[b-rjzggg6jvy]::after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    width: 35%;
    background: linear-gradient(90deg, transparent, rgba(42,74,128,0.6));
    pointer-events: none;
}

/* Logo — floated to the far right inside the banner */
.fb-banner__logo[b-rjzggg6jvy] {
    position: relative;
    z-index: 1;
    margin-left: auto;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    padding-right: clamp(4px, 2vw, 20px);
}

    .fb-banner__logo img[b-rjzggg6jvy] {
        height: 54px;
        width: auto;
        object-fit: contain;
        opacity: 0.90;
        filter: drop-shadow(0 2px 8px rgba(0,0,0,0.35));
    }

@media (max-width: 575px) {
    .fb-banner__logo img[b-rjzggg6jvy] {
        height: 36px;
    }
}

@media (max-width: 360px) {
    .fb-banner__logo[b-rjzggg6jvy] {
        display: none;
    }
}

/* Avatar badge — gold circle with icon, mirrors the initials circle */
.fb-banner__avatar[b-rjzggg6jvy] {
    position: relative;
    z-index: 1;
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: linear-gradient(145deg, #F1B828, #d49e1a);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 30px;
    color: #002855;
    flex-shrink: 0;
    box-shadow: 0 4px 16px rgba(0,0,0,0.30), 0 0 0 3px rgba(241,184,40,0.25);
}

/* Text block */
.fb-banner__body[b-rjzggg6jvy] {
    position: relative;
    z-index: 1;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.fb-banner__eyebrow[b-rjzggg6jvy] {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #F1B828;
    line-height: 1;
}

.fb-banner__title[b-rjzggg6jvy] {
    font-size: clamp(1.5rem, 3vw, 2.1rem);
    font-weight: 900;
    letter-spacing: -0.01em;
    color: #ffffff;
    line-height: 1.1;
}

.fb-banner__meta[b-rjzggg6jvy] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px 0;
    font-size: 12px;
    font-weight: 600;
    color: rgba(255,255,255,0.72);
    margin-top: 2px;
}

    .fb-banner__meta i[b-rjzggg6jvy] {
        opacity: 0.75;
    }

.fb-banner__sep[b-rjzggg6jvy] {
    margin: 0 10px;
    opacity: 0.35;
}

/* ══════════════════════════════════════════════════════════════
   BODY LAYOUT — two columns
   ══════════════════════════════════════════════════════════════ */
.fb-body[b-rjzggg6jvy] {
    display: grid;
    grid-template-columns: 300px 1fr;
    gap: 32px;
    padding: clamp(24px, 4vw, 48px) clamp(20px, 4vw, 48px);
    align-items: start;
    flex: 1;
}

/* ── Left column ─────────────────────────────────────────────── */
.fb-left[b-rjzggg6jvy] {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.fb-intro[b-rjzggg6jvy] {
    position: relative;
    margin: 0;
    padding: 14px 16px 14px 18px;
    font-size: 13.5px;
    font-weight: 600;
    color: #002855;
    line-height: 1.65;
    background: linear-gradient(135deg, rgba(241,184,40,0.12) 0%, rgba(0,40,85,0.05) 100%);
    border: 1.5px solid rgba(241,184,40,0.40);
    border-left: 4px solid #F1B828;
    border-radius: 10px;
    box-shadow: 0 2px 10px rgba(241,184,40,0.12);
}

    /* Subtle animated shimmer on load to catch the eye */
    .fb-intro[b-rjzggg6jvy]::after {
        content: '';
        position: absolute;
        inset: 0;
        border-radius: 10px;
        background: linear-gradient( 105deg, transparent 34%, rgba(255,255,255,0.00) 42%, rgba(255,255,255,0.72) 49%, rgba(255,248,225,0.65) 52%, rgba(241,184,40,0.22) 56%, rgba(0,40,85,0.10) 60%, transparent 68% );
        background-size: 220% 100%;
        animation: fb-intro-shimmer-b-rjzggg6jvy 2.2s ease-in-out 0.3s 1 forwards;
        pointer-events: none;
    }

@keyframes fb-intro-shimmer-b-rjzggg6jvy {
    0% {
        background-position: 200% 0;
        opacity: 1;
    }

    100% {
        background-position: -200% 0;
        opacity: 0;
    }
}

[data-bs-theme="dark"] .fb-intro[b-rjzggg6jvy] {
    color: #ddeaff;
    background: linear-gradient(135deg, rgba(241,184,40,0.09) 0%, rgba(0,40,85,0.25) 100%);
    border-color: rgba(241,184,40,0.30);
    border-left-color: #F1B828;
    box-shadow: 0 2px 12px rgba(241,184,40,0.08);
}


/* Category list */
.fb-cat-list[b-rjzggg6jvy] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.fb-cat-btn[b-rjzggg6jvy] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 10px 12px;
    border-radius: 9px;
    border: 1.5px solid transparent;
    background: transparent;
    cursor: pointer;
    font-family: inherit;
    font-size: 13px;
    font-weight: 600;
    color: var(--text-muted, #5a6b7a);
    text-align: left;
    transition: all 0.14s;
    width: 100%;
}

    .fb-cat-btn:hover[b-rjzggg6jvy] {
        background: rgba(0,40,85,0.05);
        border-color: rgba(0,40,85,0.12);
        color: #002855;
    }

.fb-cat-btn--active[b-rjzggg6jvy] {
    background: rgba(0,40,85,0.07);
    border-color: rgba(0,40,85,0.20);
    color: #002855;
    font-weight: 700;
}

[data-bs-theme="dark"] .fb-cat-btn:hover[b-rjzggg6jvy] {
    background: rgba(200,220,255,0.06);
    border-color: rgba(200,220,255,0.14);
    color: #ddeaff;
}

[data-bs-theme="dark"] .fb-cat-btn--active[b-rjzggg6jvy] {
    background: rgba(200,220,255,0.08);
    border-color: rgba(200,220,255,0.20);
    color: #ddeaff;
}

.fb-cat-btn__icon[b-rjzggg6jvy] {
    width: 30px;
    height: 30px;
    border-radius: 7px;
    background: rgba(0,40,85,0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    flex-shrink: 0;
    color: #002855;
    transition: background 0.14s;
}

.fb-cat-btn--active .fb-cat-btn__icon[b-rjzggg6jvy] {
    background: #002855;
    color: #F1B828;
}

[data-bs-theme="dark"] .fb-cat-btn__icon[b-rjzggg6jvy] {
    background: rgba(200,220,255,0.08);
    color: #9bc6ff;
}

[data-bs-theme="dark"] .fb-cat-btn--active .fb-cat-btn__icon[b-rjzggg6jvy] {
    background: linear-gradient(135deg, #002855, #1a3260);
    color: #F1B828;
}

.fb-cat-btn__label[b-rjzggg6jvy] {
    flex: 1;
    white-space: nowrap;
}

.fb-cat-btn__arrow[b-rjzggg6jvy] {
    font-size: 11px;
    color: rgba(0,40,85,0.40);
    margin-left: auto;
}

/* Delivery note */
.fb-delivery-note[b-rjzggg6jvy] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    background: rgba(0,40,85,0.04);
    border: 1px solid rgba(0,40,85,0.10);
    border-radius: 10px;
    padding: 12px 14px;
    font-size: 11.5px;
    color: var(--text-muted);
    line-height: 1.55;
}

.fb-delivery-note__icon[b-rjzggg6jvy] {
    font-size: 16px;
    color: #F1B828;
    flex-shrink: 0;
    margin-top: 2px;
}

.fb-delivery-note strong[b-rjzggg6jvy] {
    font-weight: 700;
    color: var(--text-main, #1a1a1a);
    display: block;
    margin-bottom: 2px;
}

[data-bs-theme="dark"] .fb-delivery-note[b-rjzggg6jvy] {
    background: rgba(255,255,255,0.03);
    border-color: rgba(255,255,255,0.07);
}

    [data-bs-theme="dark"] .fb-delivery-note strong[b-rjzggg6jvy] {
        color: #ddeaff;
    }

/* ── Form Card (right column) ────────────────────────────────── */
.fb-right[b-rjzggg6jvy] {
    min-width: 0;
}

.fb-card[b-rjzggg6jvy] {
    background: var(--bg-surface, #fff);
    border: 1.5px solid rgba(0,40,85,0.10);
    border-radius: 16px;
    padding: 28px 28px 26px;
    box-shadow: 0 4px 24px rgba(0,40,85,0.07), 0 1px 4px rgba(0,40,85,0.05);
    position: relative;
    overflow: hidden;
}

    .fb-card[b-rjzggg6jvy]::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 3px;
        background: linear-gradient(90deg, #F1B828 0%, rgba(241,184,40,0.25) 100%);
    }

[data-bs-theme="dark"] .fb-card[b-rjzggg6jvy] {
    background: #151b22;
    border-color: rgba(255,255,255,0.07);
    box-shadow: 0 8px 40px rgba(0,0,0,0.40);
}

.fb-card__header[b-rjzggg6jvy] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 22px;
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(0,40,85,0.07);
}

[data-bs-theme="dark"] .fb-card__header[b-rjzggg6jvy] {
    border-bottom-color: rgba(255,255,255,0.06);
}

.fb-card__header-icon[b-rjzggg6jvy] {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: linear-gradient(135deg, #002855 0%, #1a3260 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #F1B828;
    font-size: 18px;
    flex-shrink: 0;
    box-shadow: 0 2px 8px rgba(0,40,85,0.22);
    transition: background 0.16s;
}

.fb-card__header-title[b-rjzggg6jvy] {
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--text-main, #1a1a1a);
    line-height: 1.2;
}

[data-bs-theme="dark"] .fb-card__header-title[b-rjzggg6jvy] {
    color: #ddeaff;
}

.fb-card__header-sub[b-rjzggg6jvy] {
    font-size: 10.5px;
    color: var(--text-muted);
    margin-top: 2px;
}

/* ── Form Fields ─────────────────────────────────────────────── */
.fb-form[b-rjzggg6jvy] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.fb-field[b-rjzggg6jvy] {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.fb-label[b-rjzggg6jvy] {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: rgba(0,40,85,0.60);
}

[data-bs-theme="dark"] .fb-label[b-rjzggg6jvy] {
    color: rgba(200,220,255,0.50);
}

.fb-label__opt[b-rjzggg6jvy] {
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0;
    font-size: 10px;
    color: var(--text-muted);
    font-style: italic;
}

/* ── Locked name field ───────────────────────────────────────── */
.fb-input--locked[b-rjzggg6jvy] {
    display: flex;
    align-items: center;
    gap: 8px;
    cursor: default;
    user-select: none;
    opacity: 0.80;
    background: rgba(0,40,85,0.04) !important;
    border-style: dashed !important;
}

.fb-input-lock-icon[b-rjzggg6jvy] {
    font-size: 10px;
    color: rgba(0,40,85,0.40);
    flex-shrink: 0;
}

[data-bs-theme="dark"] .fb-input--locked[b-rjzggg6jvy] {
    background: rgba(255,255,255,0.03) !important;
}

[data-bs-theme="dark"] .fb-input-lock-icon[b-rjzggg6jvy] {
    color: rgba(200,220,255,0.30);
}

.fb-char-count[b-rjzggg6jvy] {
    font-size: 10px;
    font-weight: 600;
    color: var(--text-muted);
    letter-spacing: 0;
    text-transform: none;
}

.fb-char-count--warn[b-rjzggg6jvy] {
    color: #c0152a;
}

.fb-input[b-rjzggg6jvy],
.fb-textarea[b-rjzggg6jvy] {
    width: 100%;
    background: var(--input-bg, #fff);
    border: 1.5px solid var(--input-border, rgba(0,0,0,0.13));
    border-radius: 9px;
    padding: 10px 13px;
    font-family: inherit;
    font-size: 13.5px;
    color: var(--text-main, #1a1a1a);
    outline: none;
    resize: none;
    transition: border-color 0.15s, box-shadow 0.15s;
    line-height: 1.5;
}

    .fb-input[b-rjzggg6jvy]::placeholder,
    .fb-textarea[b-rjzggg6jvy]::placeholder {
        color: var(--text-muted);
        opacity: 0.60;
    }

    .fb-input:focus[b-rjzggg6jvy],
    .fb-textarea:focus[b-rjzggg6jvy] {
        border-color: rgba(0,40,85,0.40);
        box-shadow: 0 0 0 3px rgba(0,40,85,0.08);
    }

[data-bs-theme="dark"] .fb-input[b-rjzggg6jvy],
[data-bs-theme="dark"] .fb-textarea[b-rjzggg6jvy] {
    background: #1a1f26;
    border-color: rgba(255,255,255,0.09);
    color: #e8edf2;
}

    [data-bs-theme="dark"] .fb-input:focus[b-rjzggg6jvy],
    [data-bs-theme="dark"] .fb-textarea:focus[b-rjzggg6jvy] {
        border-color: rgba(241,184,40,0.40);
        box-shadow: 0 0 0 3px rgba(241,184,40,0.09);
    }

/* ── Stars ───────────────────────────────────────────────────── */
.fb-stars[b-rjzggg6jvy] {
    display: flex;
    align-items: center;
    gap: 4px;
}

.fb-star[b-rjzggg6jvy] {
    background: none;
    border: none;
    padding: 1px;
    cursor: pointer;
    font-size: 19px;
    color: rgba(0, 40, 85, 0.16);
    transition: color 0.12s ease, transform 0.12s ease, text-shadow 0.12s ease;
    line-height: 1;
    border-radius: 6px;
}

    .fb-star:hover[b-rjzggg6jvy],
    .fb-star--on[b-rjzggg6jvy] {
        color: #F1B828;
        transform: scale(1.15);
        text-shadow: 0 0 10px rgba(241, 184, 40, 0.28);
    }

.fb-stars__label[b-rjzggg6jvy] {
    margin-left: 8px;
    font-size: 12px;
    font-weight: 700;
    color: var(--text-muted);
}

/* dark mode */
[data-bs-theme="dark"] .fb-star[b-rjzggg6jvy] {
    color: rgba(255, 255, 255, 0.24);
}

    [data-bs-theme="dark"] .fb-star:hover[b-rjzggg6jvy],
    [data-bs-theme="dark"] .fb-star--on[b-rjzggg6jvy] {
        color: #F1B828;
        text-shadow: 0 0 12px rgba(241, 184, 40, 0.38);
    }

[data-bs-theme="dark"] .fb-stars__label[b-rjzggg6jvy] {
    color: rgba(255, 255, 255, 0.74);
}

/* ── Validation ──────────────────────────────────────────────── */
.fb-validation[b-rjzggg6jvy] {
    font-size: 12px;
    font-weight: 600;
    color: #c0152a;
    background: rgba(192,21,42,0.06);
    border: 1px solid rgba(192,21,42,0.18);
    border-radius: 8px;
    padding: 8px 12px;
}

[data-bs-theme="dark"] .fb-validation[b-rjzggg6jvy] {
    color: #f87171;
    background: rgba(248,113,113,0.07);
    border-color: rgba(248,113,113,0.18);
}

/* ── Send error ──────────────────────────────────────────────── */
.fb-error[b-rjzggg6jvy] {
    font-size: 13px;
    font-weight: 600;
    color: #c0152a;
    background: rgba(192,21,42,0.05);
    border: 1.5px solid rgba(192,21,42,0.20);
    border-radius: 10px;
    padding: 16px;
    line-height: 1.55;
}

[data-bs-theme="dark"] .fb-error[b-rjzggg6jvy] {
    color: #f87171;
    background: rgba(248,113,113,0.07);
    border-color: rgba(248,113,113,0.22);
}

/* ── Buttons ─────────────────────────────────────────────────── */
.fb-btn[b-rjzggg6jvy] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-family: inherit;
    font-size: 12.5px;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    border-radius: 9px;
    padding: 12px 22px;
    border: none;
    cursor: pointer;
    transition: all 0.15s;
}

.fb-btn--primary[b-rjzggg6jvy] {
    width: 100%;
    background: linear-gradient(135deg, #002855 0%, #1a3260 100%);
    color: #F1B828;
    box-shadow: 0 3px 12px rgba(0,40,85,0.22);
}

    .fb-btn--primary:hover:not(:disabled)[b-rjzggg6jvy] {
        filter: brightness(1.12);
        box-shadow: 0 5px 18px rgba(0,40,85,0.35);
        transform: translateY(-1px);
    }

    .fb-btn--primary:active:not(:disabled)[b-rjzggg6jvy] {
        transform: translateY(0);
    }

    .fb-btn--primary:disabled[b-rjzggg6jvy],
    .fb-btn--busy[b-rjzggg6jvy] {
        opacity: 0.65;
        cursor: not-allowed;
        transform: none !important;
    }

.fb-btn--ghost[b-rjzggg6jvy] {
    background: transparent;
    color: var(--text-muted);
    border: 1.5px solid var(--input-border, rgba(0,0,0,0.13));
    font-size: 11.5px;
    padding: 8px 16px;
}

    .fb-btn--ghost:hover[b-rjzggg6jvy] {
        border-color: rgba(0,40,85,0.35);
        color: #002855;
        background: rgba(0,40,85,0.04);
    }

/* ── Success state ───────────────────────────────────────────── */
.fb-success[b-rjzggg6jvy] {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 20px 8px 8px;
    gap: 10px;
}

.fb-success__icon[b-rjzggg6jvy] {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    background: linear-gradient(135deg, #1a7a4a, #15643d);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 24px;
    box-shadow: 0 4px 16px rgba(26,122,74,0.28);
    animation: fb-pop-b-rjzggg6jvy 0.35s cubic-bezier(0.34,1.56,0.64,1) both;
}

@keyframes fb-pop-b-rjzggg6jvy {
    from {
        transform: scale(0.5);
        opacity: 0;
    }

    to {
        transform: scale(1);
        opacity: 1;
    }
}

.fb-success__title[b-rjzggg6jvy] {
    font-size: 17px;
    font-weight: 900;
    letter-spacing: -0.01em;
    color: var(--text-main, #1a1a1a);
}

[data-bs-theme="dark"] .fb-success__title[b-rjzggg6jvy] {
    color: #ddeaff;
}

.fb-success__body[b-rjzggg6jvy] {
    font-size: 13px;
    color: var(--text-muted);
    line-height: 1.55;
    max-width: 320px;
}

/* ═══════════════════════════════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════════════════════════════ */
@media (max-width: 860px) {
    .fb-body[b-rjzggg6jvy] {
        grid-template-columns: 1fr;
        gap: 20px;
        padding: 20px clamp(16px, 4vw, 32px);
    }

    .fb-cat-list[b-rjzggg6jvy] {
        flex-direction: row;
        flex-wrap: wrap;
        gap: 6px;
    }

    .fb-cat-btn[b-rjzggg6jvy] {
        width: auto;
        flex: 0 0 auto;
        font-size: 12px;
        padding: 8px 11px;
    }

    .fb-cat-btn__arrow[b-rjzggg6jvy] {
        display: none;
    }

    .fb-delivery-note[b-rjzggg6jvy] {
        font-size: 11px;
    }
}

@media (max-width: 575px) {
    .fb-banner[b-rjzggg6jvy] {
        padding: 16px 18px;
        min-height: 90px;
        gap: 16px;
    }

    .fb-banner__avatar[b-rjzggg6jvy] {
        width: 56px;
        height: 56px;
        font-size: 24px;
    }

    .fb-banner__title[b-rjzggg6jvy] {
        font-size: 1.35rem;
    }

    .fb-banner__sep[b-rjzggg6jvy] {
        display: none;
    }

    .fb-banner__meta[b-rjzggg6jvy] {
        flex-direction: column;
        gap: 3px;
        font-size: 11px;
    }

    .fb-card[b-rjzggg6jvy] {
        padding: 18px 16px 16px;
    }
}
/* _content/NoiseLockQuoteTool/Pages/ForgotPassword.razor.rz.scp.css */
/* =============================================================
   ForgotPassword.razor.css — REDESIGNED
   /forgot-password
   Premium IAC Blue/Gold card with real page backdrop (light/dark).
   ============================================================= */

/* ── TOKEN BRIDGE ── */
:root[b-zjvbeybmbc] {
    --fp-blue: #002855;
    --fp-blue-rgb: 0, 40, 85;
    --fp-gold: #F1B828;
    --fp-surface: #ffffff;
    --fp-surface-hi: #f8f9fb;
    --fp-bg: #f0f2f5;
    --fp-border: rgba(0, 40, 85, 0.14);
    --fp-text: #151b28;
    --fp-muted: rgba(21, 27, 40, 0.62);
    --fp-radius-sm: 10px;
    --fp-radius-md: 14px;
    --fp-radius-lg: 18px;
    --fp-shadow: 0 16px 40px rgba(0, 40, 85, 0.12), 0 3px 10px rgba(0, 0, 0, 0.06);
    --fp-transition: 0.18s ease;
}

    :root[data-bs-theme="dark"][b-zjvbeybmbc] {
        --fp-surface: rgba(18, 24, 40, 0.92);
        --fp-surface-hi: rgba(20, 28, 48, 0.92);
        --fp-bg: #070b14;
        --fp-border: rgba(255, 255, 255, 0.14);
        --fp-text: rgba(255, 255, 255, 0.92);
        --fp-muted: rgba(226, 232, 240, 0.70);
        --fp-shadow: 0 22px 60px rgba(0, 0, 0, 0.55), 0 2px 10px rgba(0, 0, 0, 0.30);
    }

/* ── PAGE BACKGROUND (GLOBAL so it actually applies under CSS isolation) ── */
:global(body)[b-zjvbeybmbc] {
    min-height: 100vh;
    background: radial-gradient(1200px 600px at 18% 8%, rgba(80, 144, 232, 0.18), transparent 55%), radial-gradient(900px 520px at 86% 18%, rgba(241, 184, 40, 0.18), transparent 52%), linear-gradient(180deg, rgba(0, 40, 85, 0.03), rgba(255, 255, 255, 0.00));
}

:root[data-bs-theme="dark"] :global(body)[b-zjvbeybmbc] {
    background: radial-gradient(1000px 520px at 18% 10%, rgba(80, 144, 232, 0.18), transparent 55%), radial-gradient(900px 520px at 84% 12%, rgba(241, 184, 40, 0.10), transparent 52%), linear-gradient(180deg, rgba(255, 255, 255, 0.03), rgba(0, 0, 0, 0.00)), var(--fp-bg);
}

/* ── OUTER CONTAINER (CARD) ── */
.container[b-zjvbeybmbc] {
    max-width: 560px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.92));
    border: 1px solid var(--fp-border);
    border-radius: var(--fp-radius-lg);
    box-shadow: var(--fp-shadow);
    padding: 2.6rem 2.2rem !important;
    margin-top: 6vh;
    position: relative;
    overflow: hidden;
}

:root[data-bs-theme="dark"] .container[b-zjvbeybmbc] {
    background: linear-gradient(180deg, rgba(18, 24, 40, 0.92), rgba(14, 18, 30, 0.92));
}

/* subtle “glass” highlight */
.container[b-zjvbeybmbc]::after {
    content: "";
    position: absolute;
    inset: -2px;
    background: radial-gradient(520px 220px at 14% 10%, rgba(255, 255, 255, 0.55), transparent 55%);
    opacity: 0.18;
    pointer-events: none;
}

:root[data-bs-theme="dark"] .container[b-zjvbeybmbc]::after {
    background: radial-gradient(520px 220px at 14% 10%, rgba(255, 255, 255, 0.20), transparent 55%);
    opacity: 0.22;
}

/* ── BRAND ACCENT BAR ── */
.container[b-zjvbeybmbc]::before {
    content: '';
    display: block;
    height: 5px;
    background: linear-gradient(90deg, var(--fp-blue) 0%, var(--fp-gold) 100%);
    border-radius: var(--fp-radius-lg) var(--fp-radius-lg) 0 0;
    margin: -2.6rem -2.2rem 2.1rem;
}

/* ── PAGE HEADING ── */
.container h3[b-zjvbeybmbc] {
    font-size: 1.45rem;
    font-weight: 900;
    color: var(--fp-blue);
    letter-spacing: 0.06em;
    text-transform: uppercase;
    margin-bottom: 0.35rem;
}

:root[data-bs-theme="dark"] .container h3[b-zjvbeybmbc] {
    color: rgba(219, 232, 251, 0.95);
}

/* ── SUBTITLE / MUTED TEXT ── */
.container .text-muted[b-zjvbeybmbc] {
    color: var(--fp-muted) !important;
    font-size: 0.92rem;
    line-height: 1.6;
}

/* ── FORM LABEL ── */
.container .form-label[b-zjvbeybmbc] {
    display: block;
    font-size: 0.74rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--fp-muted);
    margin-bottom: 0.42rem;
}

/* ── FORM INPUT ── */
.container .form-control[b-zjvbeybmbc] {
    display: block;
    width: 100%;
    padding: 0.72rem 0.95rem;
    background: rgba(255, 255, 255, 0.92);
    border: 1.5px solid rgba(0, 40, 85, 0.16);
    border-radius: var(--fp-radius-sm);
    font-size: 0.95rem;
    color: var(--fp-text);
    transition: border-color var(--fp-transition), box-shadow var(--fp-transition), background var(--fp-transition);
    outline: none;
    appearance: none;
}

    .container .form-control[b-zjvbeybmbc]::placeholder {
        color: rgba(21, 27, 40, 0.45);
        opacity: 1;
    }

    .container .form-control:focus[b-zjvbeybmbc] {
        border-color: rgba(0, 40, 85, 0.55);
        box-shadow: 0 0 0 3px rgba(var(--fp-blue-rgb), 0.14);
        background: #fff;
    }

:root[data-bs-theme="dark"] .container .form-control[b-zjvbeybmbc] {
    background: rgba(10, 14, 24, 0.55);
    border-color: rgba(255, 255, 255, 0.16);
    color: var(--fp-text);
}

    :root[data-bs-theme="dark"] .container .form-control[b-zjvbeybmbc]::placeholder {
        color: rgba(226, 232, 240, 0.45);
    }

    :root[data-bs-theme="dark"] .container .form-control:focus[b-zjvbeybmbc] {
        border-color: rgba(125, 211, 252, 0.55);
        box-shadow: 0 0 0 3px rgba(56, 189, 248, 0.20);
        background: rgba(10, 14, 24, 0.70);
    }

/* ── VALIDATION ── */
.container .small.text-danger[b-zjvbeybmbc],
.container .validation-message[b-zjvbeybmbc] {
    font-size: 0.78rem;
    color: #dc3545;
    margin-top: 0.35rem;
}

/* ── ALERT BANNERS ── */
.container .alert[b-zjvbeybmbc] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.95rem 1.05rem;
    border-radius: var(--fp-radius-sm);
    font-size: 0.88rem;
    border: 1px solid transparent;
    margin-bottom: 1rem;
}

.container .alert-success[b-zjvbeybmbc] {
    background: rgba(25, 135, 84, 0.10);
    border-color: rgba(25, 135, 84, 0.25);
    color: #0a5c38;
}

.container .alert-danger[b-zjvbeybmbc] {
    background: rgba(220, 53, 69, 0.09);
    border-color: rgba(220, 53, 69, 0.25);
    color: #9d1a26;
}

:root[data-bs-theme="dark"] .container .alert-success[b-zjvbeybmbc] {
    background: rgba(25, 135, 84, 0.14);
    border-color: rgba(25, 135, 84, 0.30);
    color: #6ee7a8;
}

:root[data-bs-theme="dark"] .container .alert-danger[b-zjvbeybmbc] {
    background: rgba(220, 53, 69, 0.14);
    border-color: rgba(220, 53, 69, 0.30);
    color: #fca5a5;
}

/* ── BUTTONS ── */
.container .btn[b-zjvbeybmbc] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    font-weight: 850;
    font-size: 0.90rem;
    letter-spacing: 0.04em;
    border-radius: 12px;
    padding: 0.68rem 1.25rem;
    border: none;
    cursor: pointer;
    text-decoration: none;
    white-space: nowrap;
    transition: transform var(--fp-transition), box-shadow var(--fp-transition), background var(--fp-transition), color var(--fp-transition);
}

/* Primary — IAC Blue */
.container .btn-solid.btn-primary-solid[b-zjvbeybmbc] {
    background: linear-gradient(180deg, rgba(0, 40, 85, 0.98), rgba(0, 40, 85, 0.88));
    color: #fff;
    box-shadow: 0 10px 22px rgba(0, 40, 85, 0.22);
}

    .container .btn-solid.btn-primary-solid:hover:not(:disabled)[b-zjvbeybmbc] {
        transform: translateY(-1px);
        background: linear-gradient(180deg, rgba(0, 58, 115, 0.98), rgba(0, 40, 85, 0.90));
        box-shadow: 0 14px 28px rgba(0, 40, 85, 0.28);
        color: #fff;
    }

/* Success — Green (Send Reset Link CTA) */
.container .btn-solid.btn-success-solid[b-zjvbeybmbc] {
    background: linear-gradient(180deg, rgba(25, 135, 84, 0.98), rgba(25, 135, 84, 0.88));
    color: #fff;
    box-shadow: 0 10px 22px rgba(25, 135, 84, 0.22);
}

    .container .btn-solid.btn-success-solid:hover:not(:disabled)[b-zjvbeybmbc] {
        transform: translateY(-1px);
        background: linear-gradient(180deg, rgba(21, 115, 71, 0.98), rgba(25, 135, 84, 0.90));
        box-shadow: 0 14px 28px rgba(25, 135, 84, 0.28);
        color: #fff;
    }

    .container .btn-solid.btn-success-solid:disabled[b-zjvbeybmbc] {
        opacity: 0.65;
        cursor: not-allowed;
        transform: none;
    }

/* ── RESPONSIVE ── */
@media (max-width: 540px) {
    .container[b-zjvbeybmbc] {
        margin-top: 3vh;
        padding: 1.85rem 1.25rem !important;
        border-radius: var(--fp-radius-md);
    }

        .container[b-zjvbeybmbc]::before {
            margin: -1.85rem -1.25rem 1.6rem;
            border-radius: var(--fp-radius-md) var(--fp-radius-md) 0 0;
        }
}
/* _content/NoiseLockQuoteTool/Pages/Help.razor.rz.scp.css */
/* ══════════════════════════════════════════════════
                                                               FAQ PAGE — LIGHT + DARK MODE STYLES
                                                            ══════════════════════════════════════════════════ */

/* CSS custom property bridge */
:root[b-1rkpqghxrt] {
    --fq-surface: var(--bg-surface, #fff);
    --fq-surface-hi: var(--bg-surface-hi, #f5f6f8);
    --fq-border: var(--border-color, #d7dde3);
    --fq-text: var(--text-main, #1a1a1a);
    --fq-muted: var(--text-muted, #5a6b7a);
    --fq-blue: var(--iac-blue-hex, #002855);
    --fq-gold: var(--iac-gold, #F1B828);
    --fq-shadow: var(--card-shadow, 0 6px 16px rgba(0,0,0,.06));
    --fq-door-fill: #c8d8ea;
    --fq-door-stroke: #002855;
    --fq-hinge: #8090a8;
    --fq-hinge-dark: #506070;
    --fq-wall: #4a5568;
    --fq-handle: #c8a020;
    --fq-floor-bg: #e8e0d8;
    --fq-room-bg: #f0f4f8;
    --fq-seal-ok: #1a7a3a;
    --fq-seal-gap: #c05000;
    --fq-thresh: #8a7a6a;
    --fq-cam-lobe: #F1B828;
    --fq-arrow-up: #1a7a3a;
    --fq-arrow-down: #9a2020;
    --fq-gap-line: #5a7a9a;
    --fq-label: #3a4a5a;
    --fq-zone-label: #6a7a8a;
    --fq-swing-fill: rgba(0,40,85,.06);
    --fq-swing-str: rgba(0,40,85,.2);
}

    :root[data-bs-theme="dark"][b-1rkpqghxrt] {
        --fq-surface: var(--bg-surface, #151b22);
        --fq-surface-hi: var(--bg-surface-hi, #1a1f26);
        --fq-border: var(--border-color, #2a3440);
        --fq-text: var(--text-main, #e8edf2);
        --fq-muted: var(--text-muted, rgba(232,237,242,.6));
        --fq-blue: #9bc6ff;
        --fq-shadow: var(--card-shadow, 0 8px 20px rgba(0,0,0,.6));
        --fq-door-fill: #1e3050;
        --fq-door-stroke: #9bc6ff;
        --fq-hinge: #4a6080;
        --fq-hinge-dark: #2a3a50;
        --fq-wall: #2a3a50;
        --fq-handle: #d4b030;
        --fq-floor-bg: #1a1410;
        --fq-room-bg: #0e1218;
        --fq-seal-ok: #2aaa5a;
        --fq-seal-gap: #e07030;
        --fq-thresh: #4a6080;
        --fq-arrow-up: #4ade80;
        --fq-arrow-down: #f07070;
        --fq-gap-line: #6090b0;
        --fq-label: #a4c4e7;
        --fq-zone-label: #7090b0;
        --fq-swing-fill: rgba(155,198,255,.05);
        --fq-swing-str: rgba(155,198,255,.18);
    }

/* Page */
.faq-page[b-1rkpqghxrt] {
    font-family: "din-2014","DIN Pro","DINPro",sans-serif;
    color: var(--fq-text);
    max-width: 1880px;
    margin: 0 auto;
    padding-left: .65rem !important;
    padding-right: .65rem !important;
}

/* Hero */
.faq-hero[b-1rkpqghxrt] {
    background: linear-gradient(135deg,#002855 0%,#004a99 100%);
    border-radius: var(--border-radius,.75rem);
    padding: 3rem 2.5rem;
    color: #fff;
    position: relative;
    overflow: hidden;
}

:root[data-bs-theme="dark"] .faq-hero[b-1rkpqghxrt] {
    background: linear-gradient(135deg,#001635 0%,#002855 100%);
}

.faq-hero[b-1rkpqghxrt]::before {
    content: '';
    position: absolute;
    right: -80px;
    top: -80px;
    width: 360px;
    height: 360px;
    background: rgba(241,184,40,.07);
    border-radius: 50%;
}

.faq-hero__inner[b-1rkpqghxrt] {
    position: relative;
    z-index: 1;
    max-width: 680px;
}

.faq-tag[b-1rkpqghxrt] {
    display: inline-flex;
    align-items: center;
    background: rgba(241,184,40,.18);
    color: #F1B828;
    border: 1px solid rgba(241,184,40,.35);
    border-radius: 20px;
    font-size: .78rem;
    font-weight: 700;
    padding: .25rem .75rem;
    letter-spacing: .04em;
    text-transform: uppercase;
    margin-bottom: 1rem;
}

.faq-hero .faq-hero__title[b-1rkpqghxrt] {
    font-size: clamp(1.6rem,3.5vw,2.6rem);
    font-weight: 800;
    line-height: 1.2;
    color: #fff !important;
    margin-bottom: .75rem;
    text-transform: uppercase;
    text-shadow: 0 1px 2px rgba(0,0,0,.22);
}

h3.faq-card__term.mb-2[b-1rkpqghxrt]::after {
    content: "❯❯";
    display: inline-block;
    margin-left: .6rem; /* space after PRM */
    color: var(--iac-gold);
    font-size: 1.05em; /* scales with the h3 */
    letter-spacing: -2px;
    line-height: 1;
    transform: translateY(1px); /* tiny optical align */
}

.faq-hero__accent[b-1rkpqghxrt] {
    color: var(--fq-gold);
}

.faq-hero__sub[b-1rkpqghxrt] {
    color: rgba(255,255,255,.75);
    font-size: 1.05rem;
    margin: 0;
}

/* Search */
.faq-search-wrap[b-1rkpqghxrt] {
    max-width: 600px;
}

.faq-search-row[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    gap: .75rem;
}

.faq-search[b-1rkpqghxrt] {
    position: relative;
    display: flex;
    align-items: center;
    flex: 1;
}

.faq-pdf-btn[b-1rkpqghxrt] {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    /* translucent PDF red glass */
    background: rgba(220, 53, 69, 0.20);
    border: 1px solid rgba(220, 53, 69, 0.45);
    border-radius: 40px;
    padding: .6rem 1.1rem;
    color: #fff;
    font-size: .88rem;
    font-family: inherit;
    font-weight: 700;
    cursor: pointer;
    white-space: nowrap;
    transition: background .2s, border-color .2s, transform .1s, box-shadow .2s;
    text-decoration: none;
    /* subtle “glass” depth */
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.18), inset 0 0 0 1px rgba(255, 255, 255, 0.08);
    backdrop-filter: blur(8px);
}

    .faq-pdf-btn:hover[b-1rkpqghxrt] {
        background: rgba(220, 53, 69, 0.30);
        border-color: rgba(220, 53, 69, 0.65);
        transform: translateY(-1px);
        box-shadow: 0 14px 26px rgba(0, 0, 0, 0.22), inset 0 0 0 1px rgba(255, 255, 255, 0.12);
    }

    .faq-pdf-btn:active[b-1rkpqghxrt] {
        transform: translateY(0);
        background: rgba(220, 53, 69, 0.26);
    }

.faq-search__icon[b-1rkpqghxrt] {
    position: absolute;
    left: 14px;
    color: rgba(255,255,255,.6);
    pointer-events: none;
}

.faq-search__input[b-1rkpqghxrt] {
    width: 100%;
    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.25);
    border-radius: 40px;
    padding: .65rem 2.75rem;
    color: #fff;
    font-size: .95rem;
    font-family: inherit;
    outline: none;
    transition: background .2s,border-color .2s;
}

    .faq-search__input[b-1rkpqghxrt]::placeholder {
        color: rgba(255,255,255,.5);
    }

    .faq-search__input:focus[b-1rkpqghxrt] {
        background: rgba(255,255,255,.18);
        border-color: rgba(255,255,255,.5);
    }

.faq-search__clear[b-1rkpqghxrt] {
    position: absolute;
    right: 12px;
    background: none;
    border: none;
    color: rgba(255,255,255,.6);
    cursor: pointer;
    padding: 0;
    transition: color .15s;
}

    .faq-search__clear:hover[b-1rkpqghxrt] {
        color: #fff;
    }

/* Nav pills */
.faq-nav[b-1rkpqghxrt] {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.faq-nav__pill[b-1rkpqghxrt] {
    appearance: none;
    -webkit-appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .4rem;
    background: linear-gradient(180deg, rgba(0,40,85,0.05), rgba(255,255,255,0.92));
    border: 1px solid rgba(0,40,85,0.14);
    border-radius: 999px;
    color: rgba(0,40,85,0.78);
    font-family: inherit;
    font-size: .85rem;
    font-weight: 750;
    padding: .44rem 1.08rem;
    cursor: pointer;
    text-transform: uppercase;
    letter-spacing: .05em;
    box-shadow: 0 1px 0 rgba(255,255,255,0.85) inset, 0 8px 18px rgba(0,40,85,0.08);
    transition: transform .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease;
}

/* ── Mobile nav: 2-column grid, compact pills ──────────────── */
@media (max-width: 600px) {
    .faq-nav[b-1rkpqghxrt] {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: .45rem;
    }

    .faq-nav__pill[b-1rkpqghxrt] {
        border-radius: 10px;
        padding: .6rem .75rem;
        font-size: .72rem;
        letter-spacing: .04em;
        justify-content: center;
        white-space: normal;
        text-align: center;
        line-height: 1.25;
        min-height: 44px;
    }
}

.faq-nav__pill:hover[b-1rkpqghxrt] {
    transform: translateY(-1px);
    background: linear-gradient(180deg, rgba(80,144,232,0.14), rgba(255,255,255,0.96));
    border-color: rgba(0,40,85,0.20);
    color: rgba(0,40,85,0.92);
    box-shadow: 0 1px 0 rgba(255,255,255,0.9) inset, 0 12px 22px rgba(0,40,85,0.12);
}

/* Active = IAC navy pill */
.faq-nav__pill.active[b-1rkpqghxrt] {
    background: linear-gradient(180deg, rgba(0,40,85,0.98), rgba(0,40,85,0.88));
    border-color: rgba(0,40,85,0.95);
    color: #fff;
    box-shadow: 0 1px 0 rgba(255,255,255,0.10) inset, 0 14px 26px rgba(0,40,85,0.22);
}

.faq-nav__pill:active[b-1rkpqghxrt] {
    transform: translateY(0px);
    box-shadow: 0 1px 0 rgba(255,255,255,0.75) inset, 0 8px 16px rgba(0,40,85,0.10);
}

.faq-nav__pill:focus-visible[b-1rkpqghxrt] {
    outline: none;
    box-shadow: 0 0 0 3px rgba(80,144,232,0.26), 0 0 0 5px rgba(0,40,85,0.14), 0 10px 20px rgba(0,40,85,0.10);
}

/* Dark mode */
[data-bs-theme="dark"] .faq-nav__pill[b-1rkpqghxrt] {
    background: linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.03));
    border: 1px solid rgba(255,255,255,0.14);
    color: rgba(255,255,255,0.80);
    box-shadow: 0 1px 0 rgba(255,255,255,0.08) inset, 0 14px 30px rgba(0,0,0,0.40);
}

    [data-bs-theme="dark"] .faq-nav__pill:hover[b-1rkpqghxrt] {
        background: linear-gradient(180deg, rgba(80,144,232,0.18), rgba(255,255,255,0.05));
        border-color: rgba(80,144,232,0.28);
        color: rgba(255,255,255,0.92);
        box-shadow: 0 1px 0 rgba(255,255,255,0.10) inset, 0 18px 34px rgba(0,0,0,0.52);
    }

    [data-bs-theme="dark"] .faq-nav__pill.active[b-1rkpqghxrt] {
        background: linear-gradient(180deg, rgba(26,74,138,0.98), rgba(26,74,138,0.86));
        border-color: rgba(80,144,232,0.34);
        color: #fff;
        box-shadow: 0 1px 0 rgba(255,255,255,0.10) inset, 0 18px 36px rgba(0,0,0,0.58);
    }

    [data-bs-theme="dark"] .faq-nav__pill:focus-visible[b-1rkpqghxrt] {
        outline: none;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.20), 0 0 0 5px rgba(80,144,232,0.18), 0 14px 30px rgba(0,0,0,0.40);
    }

/* Sections */
.faq-section[b-1rkpqghxrt] {
    margin-bottom: 3rem;
}

.faq-section__header[b-1rkpqghxrt] {
    display: flex;
    align-items: flex-start;
    gap: 1rem;
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 2px solid var(--fq-border);
}

.faq-section__icon-wrap[b-1rkpqghxrt] {
    width: 44px;
    height: 44px;
    background: var(--iac-blue-hex,#002855);
    color: #fff;
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    flex-shrink: 0;
}

.faq-section__title[b-1rkpqghxrt] {
    font-size: 1.4rem;
    font-weight: 800;
    color: var(--iac-blue-hex,#002855);
    text-transform: uppercase;
    letter-spacing: .03em;
    margin: 0 0 .2rem;
}

:root[data-bs-theme="dark"] .faq-section__title[b-1rkpqghxrt] {
    color: var(--text-brand-soft,#a4c4e7);
}

.faq-section__desc[b-1rkpqghxrt] {
    color: var(--fq-muted);
    font-size: .9rem;
    margin: 0;
}

/* Grids */
.faq-grid[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(260px,320px));
    gap: 1.25rem;
    justify-content: center;
}

    .faq-grid > .faq-card[b-1rkpqghxrt] {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
    }

/* Door handing — 2 cards per row so diagrams are taller and wider */
.faq-grid--handing[b-1rkpqghxrt] {
    grid-template-columns: repeat(2, 1fr);
    gap: 1.5rem;
}

    /* Make the DoorSvg inside handing cards larger */
    .faq-grid--handing .dhs-svg[b-1rkpqghxrt] {
        min-height: 280px;
    }

.faq-grid--2col[b-1rkpqghxrt] {
    grid-template-columns: repeat(auto-fit,minmax(380px,560px));
    justify-content: center;
}

.faq-grid--discount[b-1rkpqghxrt] {
    grid-template-columns: 1fr;
    max-width: 900px;
    margin: 0 auto;
    width: 100%;
}

    .faq-grid--discount > .faq-card[b-1rkpqghxrt] {
        max-width: 100%;
        width: 100%;
    }

/* Ratings section — full-width stacked cards */
.faq-ratings-stack[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    gap: 1.25rem;
}

.faq-grid--4col[b-1rkpqghxrt] {
    grid-template-columns: repeat(auto-fit,minmax(200px,300px));
    justify-content: center;
}

/* Cards */
.faq-card.highlight[b-1rkpqghxrt] {
    outline: 2px solid var(--fq-gold);
    outline-offset: 2px;
}

.faq-card--hardware[b-1rkpqghxrt] {
    grid-column: 1/-1;
}

/* Education & Resources grid — 1 col → 2 col */
.faq-grid--edu[b-1rkpqghxrt] {
    display: grid;
    gap: 1.25rem;
    grid-template-columns: 1fr;
}

@media (min-width: 640px) {
    .faq-grid--edu[b-1rkpqghxrt] {
        grid-template-columns: repeat(2, 1fr);
    }
}

/* cards in the edu grid stretch to equal height */
.faq-grid--edu > .faq-card[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
}

    .faq-grid--edu > .faq-card .faq-resource-link[b-1rkpqghxrt] {
        margin-top: auto;
        align-self: flex-start;
    }

/* Badges */
.faq-card__badge[b-1rkpqghxrt] {
    display: inline-block;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    padding: .2rem .7rem;
    border-radius: 20px;
    margin-bottom: .6rem;
}

.faq-badge--blue[b-1rkpqghxrt] {
    background: rgba(0,40,85,.08);
    color: #002855;
    border: 1px solid rgba(0,40,85,.15);
}

.faq-badge--gold[b-1rkpqghxrt] {
    background: rgba(241,184,40,.12);
    color: #7a5000;
    border: 1px solid rgba(241,184,40,.3);
}

.faq-badge--teal[b-1rkpqghxrt] {
    background: rgba(0,128,128,.08);
    color: #005a5a;
    border: 1px solid rgba(0,128,128,.2);
}

.faq-badge--red[b-1rkpqghxrt] {
    background: rgba(192,32,32,.07);
    color: #8a1010;
    border: 1px solid rgba(192,32,32,.2);
}

.faq-badge--purple[b-1rkpqghxrt] {
    background: rgba(88,28,135,.07);
    color: #4b1a7a;
    border: 1px solid rgba(88,28,135,.18);
}

:root[data-bs-theme="dark"] .faq-badge--blue[b-1rkpqghxrt] {
    background: rgba(155,198,255,.1);
    color: #9bc6ff;
    border-color: rgba(155,198,255,.2);
}

:root[data-bs-theme="dark"] .faq-badge--gold[b-1rkpqghxrt] {
    background: rgba(241,184,40,.12);
    color: var(--fq-gold);
    border-color: rgba(241,184,40,.25);
}

:root[data-bs-theme="dark"] .faq-badge--teal[b-1rkpqghxrt] {
    background: rgba(0,200,200,.1);
    color: #4adada;
    border-color: rgba(0,200,200,.2);
}

:root[data-bs-theme="dark"] .faq-badge--red[b-1rkpqghxrt] {
    background: rgba(220,60,60,.1);
    color: #f07070;
    border-color: rgba(220,60,60,.2);
}

:root[data-bs-theme="dark"] .faq-badge--purple[b-1rkpqghxrt] {
    background: rgba(180,100,255,.1);
    color: #c090ff;
    border-color: rgba(180,100,255,.2);
}

.faq-card__term[b-1rkpqghxrt] {
    font-size: 1.1rem;
    font-weight: 800;
    color: var(--iac-blue-hex,#002855);
    margin: 0 0 .6rem;
    text-transform: uppercase;
}

:root[data-bs-theme="dark"] .faq-card__term[b-1rkpqghxrt] {
    color: var(--text-brand-soft,#a4c4e7);
}

.faq-card__def[b-1rkpqghxrt] {
    font-size: .9rem;
    color: var(--fq-text);
    line-height: 1.6;
    margin: 0;
}

/* Code chips */
.faq-code[b-1rkpqghxrt] {
    display: inline-block;
    font-weight: 800;
    font-size: .85rem;
    padding: .15rem .5rem;
    border-radius: 4px;
}

.faq-code--blue[b-1rkpqghxrt] {
    background: rgba(0,40,85,.08);
    color: #002855;
}

.faq-code--gold[b-1rkpqghxrt] {
    background: rgba(241,184,40,.15);
    color: #7a5500;
}

.faq-code--teal[b-1rkpqghxrt] {
    background: rgba(0,128,128,.08);
    color: #005555;
}

.faq-code--purple[b-1rkpqghxrt] {
    background: rgba(88,28,135,.07);
    color: #4b1a7a;
}

:root[data-bs-theme="dark"] .faq-code--blue[b-1rkpqghxrt] {
    background: rgba(155,198,255,.12);
    color: #9bc6ff;
}

:root[data-bs-theme="dark"] .faq-code--gold[b-1rkpqghxrt] {
    background: rgba(241,184,40,.12);
    color: var(--fq-gold);
}

:root[data-bs-theme="dark"] .faq-code--teal[b-1rkpqghxrt] {
    background: rgba(0,200,200,.1);
    color: #4adada;
}

:root[data-bs-theme="dark"] .faq-code--purple[b-1rkpqghxrt] {
    background: rgba(180,100,255,.1);
    color: #c090ff;
}

/* STC interactive bars */
.stc-scale[b-1rkpqghxrt] {
    display: flex;
    gap: 4px;
    align-items: flex-end;
    height: 72px;
}

.stc-bar--btn[b-1rkpqghxrt] {
    flex: 1;
    border: none;
    border-radius: 5px 5px 0 0;
    background: linear-gradient(to top, var(--iac-blue-hex, #002855), #0051b5);
    opacity: .5;
    transition: opacity .2s, transform .18s, box-shadow .18s;
    cursor: pointer;
    padding: 0;
    position: relative;
}

:root[data-bs-theme="dark"] .stc-bar--btn[b-1rkpqghxrt] {
    background: linear-gradient(to top, #1a4080, #3a7ae0);
}

.stc-bar--btn:hover[b-1rkpqghxrt] {
    opacity: .85;
    transform: scaleY(1.06);
    transform-origin: bottom;
}

.stc-bar--btn.stc-bar--active[b-1rkpqghxrt] {
    opacity: 1;
    transform: scaleY(1.09);
    transform-origin: bottom;
    box-shadow: 0 0 0 2px #fff, 0 0 0 4px var(--iac-blue-hex, #002855);
}

    .stc-bar--btn.stc-bar--active[b-1rkpqghxrt]::after {
        content: "";
        position: absolute;
        inset: 2px 2px auto 2px;
        height: 4px;
        border-radius: 3px;
        background: rgba(255,255,255,.9);
    }

:root[data-bs-theme="dark"] .stc-bar--btn.stc-bar--active[b-1rkpqghxrt] {
    box-shadow: 0 0 0 2px #d8ecff, 0 0 0 5px #66a8ff, 0 0 14px rgba(102,168,255,.35);
    opacity: 1;
}

.stc-labels--clickable[b-1rkpqghxrt] {
    display: flex;
    gap: 4px;
    margin-top: 4px;
}

.stc-label-btn[b-1rkpqghxrt] {
    flex: 1;
    background: none;
    border: none;
    font-size: .65rem;
    font-weight: 800;
    color: var(--fq-muted);
    cursor: pointer;
    padding: 2px 0;
    border-radius: 3px;
    transition: color .15s, background .15s;
    text-align: center;
}

    .stc-label-btn:hover[b-1rkpqghxrt] {
        color: var(--iac-blue-hex, #002855);
        background: rgba(0,40,85,.07);
    }

.stc-label-btn--active[b-1rkpqghxrt] {
    color: var(--iac-blue-hex, #002855);
    font-weight: 900;
    background: rgba(0,40,85,.09);
    box-shadow: inset 0 -2px 0 var(--iac-blue-hex, #002855);
}

:root[data-bs-theme="dark"] .stc-label-btn[b-1rkpqghxrt] {
    color: #9eb4cb;
}

    :root[data-bs-theme="dark"] .stc-label-btn:hover[b-1rkpqghxrt] {
        color: #d8ecff;
        background: rgba(102,168,255,.12);
    }

:root[data-bs-theme="dark"] .stc-label-btn--active[b-1rkpqghxrt] {
    color: #dff0ff;
    background: rgba(102,168,255,.16);
    box-shadow: inset 0 -2px 0 #7eb8ff;
}

.stc-note[b-1rkpqghxrt] {
    font-size: .78rem;
    color: var(--fq-muted);
}

/* STC detail panel */
.stc-detail[b-1rkpqghxrt] {
    background: var(--fq-surface-hi);
    border: 1px solid var(--fq-border);
    border-radius: .75rem;
    padding: 1rem;
    animation: stcFadeIn .22s ease;
}

@@keyframes stcFadeIn {
    from[b-1rkpqghxrt] {
        opacity: 0;
        transform: translateY(6px);
    }

    to[b-1rkpqghxrt] {
        opacity: 1;
        transform: translateY(0);
    }
}

.stc-detail__header[b-1rkpqghxrt] {
    margin-bottom: .75rem;
}

.stc-detail__titlerow[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    gap: .6rem;
    flex-wrap: wrap;
    margin-bottom: .5rem;
}

.stc-detail__badge[b-1rkpqghxrt] {
    background: var(--iac-blue-hex, #002855);
    color: #fff;
    font-size: .75rem;
    font-weight: 800;
    border-radius: 4px;
    padding: 2px 8px;
    letter-spacing: .04em;
}

.stc-detail__thickness[b-1rkpqghxrt] {
    font-size: .82rem;
    color: var(--fq-muted);
}

.stc-detail__close[b-1rkpqghxrt] {
    margin-left: auto;
    background: none;
    border: 1px solid var(--fq-border);
    border-radius: 50%;
    width: 26px;
    height: 26px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--fq-muted);
    font-size: .8rem;
    transition: background .15s;
}

    .stc-detail__close:hover[b-1rkpqghxrt] {
        background: var(--fq-surface);
    }

.stc-detail__ratings[b-1rkpqghxrt] {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
}

.stc-detail__chip[b-1rkpqghxrt] {
    font-size: .73rem;
    font-weight: 700;
    border-radius: 4px;
    padding: 2px 8px;
}

.stc-chip--blue[b-1rkpqghxrt] {
    background: #e8f0fb;
    color: #1a3a6e;
    border: 1px solid #b7c8e8;
}

.stc-chip--green[b-1rkpqghxrt] {
    background: #e8f5ed;
    color: #1a5c32;
    border: 1px solid #a8d8b8;
}

:root[data-bs-theme="dark"] .stc-chip--blue[b-1rkpqghxrt] {
    background: rgba(60,100,180,.2);
    color: #8ab0e8;
    border-color: rgba(100,150,220,.3);
}

:root[data-bs-theme="dark"] .stc-chip--green[b-1rkpqghxrt] {
    background: rgba(40,120,70,.2);
    color: #6db88a;
    border-color: rgba(60,150,90,.3);
}

/* TL table */
.stc-tl-wrap[b-1rkpqghxrt] {
    margin-top: .75rem;
}

.stc-tl__label[b-1rkpqghxrt] {
    font-size: .74rem;
    color: var(--fq-muted);
    margin-bottom: .4rem;
}

.stc-tl-scroll[b-1rkpqghxrt] {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

.stc-tl-table[b-1rkpqghxrt] {
    border-collapse: collapse;
    min-width: 100%;
    width: 100%;
    font-size: .72rem;
}

    .stc-tl-table th[b-1rkpqghxrt] {
        background: var(--iac-blue-hex, #002855);
        color: #fff;
        font-weight: 700;
        text-align: center;
        padding: 4px 6px;
        border: 1px solid rgba(255,255,255,.15);
        white-space: nowrap;
        font-size: .68rem;
    }

    .stc-tl-table td[b-1rkpqghxrt] {
        text-align: center;
        padding: 4px 6px;
        border: 1px solid var(--fq-border);
        font-weight: 700;
        color: var(--fq-text);
        background: var(--fq-surface-hi);
    }

    .stc-tl-table tr:nth-child(even) td[b-1rkpqghxrt] {
        background: var(--fq-surface);
    }

/* TL bar chart */
.stc-tl-chart[b-1rkpqghxrt] {
    display: flex;
    align-items: flex-end;
    gap: 2px;
    height: 56px;
    margin-top: .75rem;
    padding: 0 2px;
}

.stc-tl-bar-wrap[b-1rkpqghxrt] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    height: 100%;
    justify-content: flex-end;
}

.stc-tl-bar[b-1rkpqghxrt] {
    width: 100%;
    background: linear-gradient(to top, var(--iac-blue-hex, #002855), #3a7ae0);
    border-radius: 2px 2px 0 0;
    opacity: .72;
    transition: opacity .2s;
    min-height: 2px;
}

.stc-tl-bar-wrap:hover .stc-tl-bar[b-1rkpqghxrt] {
    opacity: 1;
}

.stc-tl-bar-hz[b-1rkpqghxrt] {
    font-size: .55rem;
    color: var(--fq-muted);
    font-weight: 700;
    margin-top: 2px;
    line-height: 1;
}

:root[data-bs-theme="dark"] .stc-tl-bar[b-1rkpqghxrt] {
    background: linear-gradient(to top, #1a4080, #5090e8);
}

/* UL cards */
.ul-rating-grid[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 150px));
    justify-content: center;
    align-items: stretch;
    gap: .75rem;
    margin-left: auto;
    margin-right: auto;
}

/* Subtle “note” card background (light + dark) */
.ul-card[b-1rkpqghxrt] {
    border: 1px solid var(--fq-border);
    border-radius: .5rem;
    overflow: hidden;
    transition: box-shadow .2s;
    /* Light mode default */
    background: linear-gradient(180deg, rgba(0,40,85,0.06), rgba(255,255,255,0.92) );
    box-shadow: 0 6px 18px rgba(0, 40, 85, 0.10);
}

/* Dark mode */
[data-bs-theme="dark"] .ul-card[b-1rkpqghxrt] {
    background: linear-gradient(180deg, rgba(80,144,232,0.10), rgba(15,18,24,0.94) );
    box-shadow: 0 10px 26px rgba(0,0,0,0.35);
}

.ul-card:hover[b-1rkpqghxrt] {
    box-shadow: 0 4px 12px rgba(0,40,85,.1);
}

:root[data-bs-theme="dark"] .ul-card:hover[b-1rkpqghxrt] {
    box-shadow: 0 4px 12px rgba(0,0,0,.4);
}

.ul-card__header[b-1rkpqghxrt] {
    padding: .6rem .75rem;
    background: var(--fq-surface);
    border-bottom: 1px solid var(--fq-border);
}

.ul-card__badge[b-1rkpqghxrt] {
    display: inline-block;
    font-size: .8rem;
    font-weight: 800;
    letter-spacing: .05em;
    padding: .2rem .75rem;
    border-radius: 20px;
}

.ul-20[b-1rkpqghxrt] {
    background: rgba(0,130,0,.1);
    color: #005a00;
    border: 1px solid rgba(0,130,0,.25);
}

.ul-60[b-1rkpqghxrt] {
    background: rgba(200,130,0,.1);
    color: #7a5000;
    border: 1px solid rgba(200,130,0,.3);
}

.ul-90[b-1rkpqghxrt] {
    background: rgba(180,80,0,.1);
    color: #7a3000;
    border: 1px solid rgba(180,80,0,.3);
}

.ul-3hr[b-1rkpqghxrt] {
    background: rgba(160,0,0,.1);
    color: #8a0000;
    border: 1px solid rgba(160,0,0,.3);
}

:root[data-bs-theme="dark"] .ul-20[b-1rkpqghxrt] {
    background: rgba(0,200,0,.1);
    color: #4ade80;
    border-color: rgba(0,200,0,.2);
}

:root[data-bs-theme="dark"] .ul-60[b-1rkpqghxrt] {
    background: rgba(240,160,0,.1);
    color: var(--fq-gold);
    border-color: rgba(240,160,0,.2);
}

:root[data-bs-theme="dark"] .ul-90[b-1rkpqghxrt] {
    background: rgba(220,100,0,.1);
    color: #f09050;
    border-color: rgba(220,100,0,.2);
}

:root[data-bs-theme="dark"] .ul-3hr[b-1rkpqghxrt] {
    background: rgba(220,60,60,.1);
    color: #f07070;
    border-color: rgba(220,60,60,.2);
}

.ul-card__specs[b-1rkpqghxrt] {
    list-style: none;
    padding: .75rem;
    margin: 0;
    font-size: .82rem;
    display: flex;
    flex-direction: column;
    gap: .3rem;
}

    .ul-card__specs li[b-1rkpqghxrt] {
        display: flex;
        align-items: center;
        gap: .4rem;
    }

    .ul-card__specs i[b-1rkpqghxrt] {
        color: var(--iac-blue-hex,#002855);
        opacity: .7;
    }

:root[data-bs-theme="dark"] .ul-card__specs i[b-1rkpqghxrt] {
    color: #9bc6ff;
    opacity: .9;
}

.ul-card--restricted .ul-card__specs[b-1rkpqghxrt] {
    padding-bottom: 0;
}

.ul-card__note[b-1rkpqghxrt] {
    background: rgba(241,184,40,.1);
    border-top: 1px solid rgba(241,184,40,.2);
    color: #7a5500;
    font-size: .75rem;
    font-weight: 600;
    padding: .4rem .75rem;
}

:root[data-bs-theme="dark"] .ul-card__note[b-1rkpqghxrt] {
    color: var(--fq-gold);
    background: rgba(241,184,40,.07);
}

/* UL Glass type note + explainer */
.ul-glass-note[b-1rkpqghxrt] {
    font-size: .8rem;
    color: var(--fq-muted);
    background: var(--fq-surface);
    border: 1px solid var(--fq-border);
    border-radius: .4rem;
    padding: .5rem .75rem;
    line-height: 1.45;
}

.ul-glass-wire[b-1rkpqghxrt] {
    font-weight: 800;
    color: #3A1B64;
    background: rgba(192, 144, 255, 0.12);
    border: 1px solid rgba(192, 144, 255, 0.35); /* optional but looks sharp */
    border-radius: 3px;
    padding: 1px 5px;
}

.ul-glass-fl[b-1rkpqghxrt] {
    font-weight: 800;
    color: #1a4a80;
    background: rgba(0,81,181,.1);
    border-radius: 3px;
    padding: 1px 5px;
}

/* DARK MODE */
:root[data-bs-theme="dark"] .ul-glass-wire[b-1rkpqghxrt] {
    color: #D8B9FF; /* brighter purple for dark bg */
    background: rgba(192, 144, 255, 0.18);
    border: 1px solid rgba(192, 144, 255, 0.45);
}

:root[data-bs-theme="dark"] .ul-glass-fl[b-1rkpqghxrt] {
    color: #7ab0e8;
    background: rgba(60,120,200,.2);
}

.ul-glass-grid[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: .75rem;
}

.ul-glass-card[b-1rkpqghxrt] {
    border-radius: .5rem;
    padding: .75rem;
    font-size: .8rem;
    line-height: 1.4;
    color: var(--fq-text);
}

    .ul-glass-card p[b-1rkpqghxrt] {
        margin: 0;
    }

.ul-glass-card--wire[b-1rkpqghxrt] {
    background: rgba(192, 144, 255, .06);
    border: 1px solid rgba(192, 144, 255, .18);
}

.ul-glass-card--fl[b-1rkpqghxrt] {
    background: rgba(0,81,181,.05);
    border: 1px solid rgba(0,81,181,.15);
}

.ul-glass-card__header[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    font-weight: 800;
    font-size: .82rem;
    margin-bottom: .4rem;
    letter-spacing: .02em;
}

.ul-glass-card--wire .ul-glass-card__header[b-1rkpqghxrt] {
    color: rgba(58.4, 26.7, 100);
}

.ul-glass-card--fl .ul-glass-card__header[b-1rkpqghxrt] {
    color: #002855;
}

:root[data-bs-theme="dark"] .ul-glass-card--wire .ul-glass-card__header[b-1rkpqghxrt] {
    color: #c090FF;
}

:root[data-bs-theme="dark"] .ul-glass-card--fl .ul-glass-card__header[b-1rkpqghxrt] {
    color: #7ab0e8;
}

.ul-glass-diff[b-1rkpqghxrt] {
    /* Light mode: brighter “frosted” panel that reads as a callout */
    background: linear-gradient(180deg, rgba(0,40,85,0.10), rgba(255,255,255,0.96) );
    border: 1px solid rgba(0,40,85,0.14);
    box-shadow: 0 1px 0 rgba(255,255,255,0.85) inset, 0 10px 22px rgba(0,40,85,0.10);
    border-radius: .5rem;
    padding: .75rem;
    font-size: .8rem;
}

[data-bs-theme="dark"] .ul-glass-diff[b-1rkpqghxrt] {
    /* Dark mode: lifted slate panel (distinct from .ul-card) */
    background: linear-gradient(180deg, rgba(255,255,255,0.06), rgba(0,0,0,0.18) );
    border: 1px solid rgba(255,255,255,0.10); /* optional: if --fq-border is too strong in dark */
}

.ul-glass-diff__header[b-1rkpqghxrt] {
    font-size: .82rem;
    font-weight: 700;
    color: var(--fq-text);
    margin-bottom: .5rem;
}

.ul-glass-diff__list[b-1rkpqghxrt] {
    margin: 0;
    padding-left: 1.25rem;
    color: var(--fq-muted);
    line-height: 1.6;
}

    .ul-glass-diff__list li[b-1rkpqghxrt] {
        margin-bottom: .2rem;
    }

@@media (max-width: 600px) {
    .ul-glass-grid[b-1rkpqghxrt] {
        grid-template-columns: 1fr;
    }
}

.glass-preview[b-1rkpqghxrt] {
    display: flex;
    justify-content: center;
    margin: .75rem 0;
}

/* Door frame */
.glass-preview__door[b-1rkpqghxrt] {
    position: relative;
    width: 96px;
    height: 192px;
    /* Cleaner frame + depth */
    border: 3px solid rgba(0,40,85,0.95);
    border-radius: 0;
    /* Subtle “panel” surface so it doesn’t look flat */
    background: linear-gradient(180deg, rgba(255,255,255,0.92), rgba(0,40,85,0.04) );
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 1px 0 rgba(255,255,255,0.75) inset, 0 14px 28px rgba(0,40,85,0.16);
}

    /* Optional inner edge to feel like a real door leaf */
    .glass-preview__door[b-1rkpqghxrt]::after {
        content: none;
    }

:root[data-bs-theme="dark"] .glass-preview__door[b-1rkpqghxrt] {
    border-color: rgba(155,198,255,0.88);
    background: linear-gradient(180deg, rgba(255,255,255,0.06), rgba(0,0,0,0.22) );
    box-shadow: 0 1px 0 rgba(255,255,255,0.08) inset, 0 18px 34px rgba(0,0,0,0.55);
}

    :root[data-bs-theme="dark"] .glass-preview__door[b-1rkpqghxrt]::after {
        border-color: rgba(255,255,255,0.10);
        box-shadow: 0 1px 0 rgba(255,255,255,0.08) inset;
    }

/* Glass lite (the “window”) */
.glass-preview__lite[b-1rkpqghxrt] {
    position: absolute;
    border-radius: 0;
    /* Glass feel: gradient + highlight + mild blur */
    background: linear-gradient(180deg, rgba(140,220,255,0.55), rgba(90,170,255,0.22) );
    border: 1px solid rgba(0,80,180,0.28);
    box-shadow: 0 1px 0 rgba(255,255,255,0.55) inset, 0 10px 18px rgba(0,40,85,0.10);
    backdrop-filter: blur(2px);
}

    /* Glass shine streak */
    .glass-preview__lite[b-1rkpqghxrt]::before {
        content: "";
        position: absolute;
        inset: 2px;
        border-radius: 0;
        background: linear-gradient(90deg, rgba(255,255,255,0.38), rgba(255,255,255,0.08), rgba(255,255,255,0.00) );
        pointer-events: none;
    }

:root[data-bs-theme="dark"] .glass-preview__lite[b-1rkpqghxrt] {
    background: linear-gradient(180deg, rgba(120,200,255,0.22), rgba(80,150,255,0.10) );
    border-color: rgba(155,198,255,0.22);
    box-shadow: 0 1px 0 rgba(255,255,255,0.10) inset, 0 14px 24px rgba(0,0,0,0.35);
}

/* FG = 24×66 on 48×96 door → 50% × 69% → 48×132px but capped, centred */
.glass-preview__lite--fg[b-1rkpqghxrt] {
    width: 76px;
    height: 152px;
    top: 16px;
    left: 6px;
}

/* N = 4×30 on 48×96 door → 8% × 31% */
.glass-preview__lite--n[b-1rkpqghxrt] {
    width: 8px;
    height: 60px;
    left: 18px;
    top: 66px;
}

/* V = 12×12 on 48×96 door → 25% × 12.5% */
.glass-preview__lite--v[b-1rkpqghxrt] {
    width: 24px;
    height: 24px;
}

/* Center the V automatically (so it’s always perfect) */
.glass-preview__lite--v[b-1rkpqghxrt] {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

/* G = 24×36 on 48×96 door → 50% × 37.5% */
.glass-preview__lite--g[b-1rkpqghxrt] {
    width: 76px;
    height: 72px;
    top: 60px;
    left: 6px;
}

.glass-preview__dims[b-1rkpqghxrt] {
    text-align: center;
    font-size: .82rem;
    font-weight: 750;
    letter-spacing: .01em;
    color: rgba(0,40,85,0.62);
}

:root[data-bs-theme="dark"] .glass-preview__dims[b-1rkpqghxrt] {
    color: rgba(255,255,255,0.70);
}

/* Compat & Alert */
.compat[b-1rkpqghxrt] {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    font-size: .78rem;
    font-weight: 600;
    white-space: nowrap;
}

.compat--yes[b-1rkpqghxrt] {
    color: #006600;
}

.compat--no[b-1rkpqghxrt] {
    color: #9a0000;
}

.compat--warn[b-1rkpqghxrt] {
    color: #8a5500;
}

:root[data-bs-theme="dark"] .compat--yes[b-1rkpqghxrt] {
    color: #4ade80;
}

:root[data-bs-theme="dark"] .compat--no[b-1rkpqghxrt] {
    color: #f07070;
}

:root[data-bs-theme="dark"] .compat--warn[b-1rkpqghxrt] {
    color: var(--fq-gold);
}

.faq-alert[b-1rkpqghxrt] {
    display: flex;
    gap: .9rem;
    align-items: flex-start;
    border-radius: .5rem;
    padding: 1rem 1.25rem;
    font-size: .88rem;
    line-height: 1.55;
}

.faq-alert--warning[b-1rkpqghxrt] {
    background: rgba(241,184,40,.1);
    border: 1px solid rgba(241,184,40,.3);
    color: var(--fq-text);
}

:root[data-bs-theme="dark"] .faq-alert--warning[b-1rkpqghxrt] {
    background: rgba(241,184,40,.07);
    border-color: rgba(241,184,40,.18);
}

.faq-alert--info[b-1rkpqghxrt] {
    background: rgba(0, 87, 255, .07);
    border: 1px solid rgba(0, 87, 255, .22);
    color: var(--fq-text);
}

:root[data-bs-theme="dark"] .faq-alert--info[b-1rkpqghxrt] {
    background: rgba(0, 120, 255, .10);
    border-color: rgba(0, 120, 255, .28);
}

.faq-alert--info .faq-alert__icon[b-1rkpqghxrt] {
    color: #0057ff;
}

:root[data-bs-theme="dark"] .faq-alert--info .faq-alert__icon[b-1rkpqghxrt] {
    color: #5b9eff;
}

.faq-alert__icon[b-1rkpqghxrt] {
    color: var(--fq-gold);
    font-size: 1.2rem;
    flex-shrink: 0;
    margin-top: .1rem;
}

/* Table */
.faq-table-wrap[b-1rkpqghxrt] {
    margin-top: 1.5rem;
}

.faq-table__title[b-1rkpqghxrt] {
    font-size: .9rem;
    font-weight: 700;
    color: var(--iac-blue-hex,#002855);
    text-transform: uppercase;
    letter-spacing: .04em;
    margin-bottom: .75rem;
}

:root[data-bs-theme="dark"] .faq-table__title[b-1rkpqghxrt] {
    color: var(--text-brand-soft,#a4c4e7);
}

.faq-ref-table th[b-1rkpqghxrt] {
    text-transform: uppercase;
    font-size: .78rem;
    letter-spacing: .05em;
}

.faq-table__footnote[b-1rkpqghxrt] {
    font-size: .78rem;
    color: var(--fq-muted);
    margin-top: .5rem;
}

:root[data-bs-theme="light"] .faq-table__footnote[b-1rkpqghxrt] {
    color: #4a5f74;
}


.faq-ref-table[b-1rkpqghxrt],
.acoustic-ref-table[b-1rkpqghxrt] {
    font-family: "din-2014","DIN Pro","DINPro",sans-serif;
}

    .faq-ref-table th[b-1rkpqghxrt],
    .faq-ref-table td[b-1rkpqghxrt],
    .acoustic-ref-table th[b-1rkpqghxrt],
    .acoustic-ref-table td[b-1rkpqghxrt] {
        text-align: center;
        vertical-align: middle;
        font-family: inherit;
    }

.faq-part-pill[b-1rkpqghxrt] {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    padding: .2rem .45rem;
    border-radius: 999px;
    font-size: .72rem;
    font-weight: 700;
    line-height: 1;
    color: var(--fq-muted);
    background: rgba(0,40,85,.05);
    border: 1px solid rgba(0,40,85,.10);
    white-space: nowrap;
}

:root[data-bs-theme="dark"] .faq-part-pill[b-1rkpqghxrt] {
    background: rgba(164,196,231,.10);
    border-color: rgba(164,196,231,.18);
    color: #c8dbef;
}


/* ═══════════════════════════════════
                                                               CAM LIFT HINGE SVG — element styles
                                                               All text-anchor set in CSS, never as HTML attributes
                                                            ═══════════════════════════════════ */
.cam-bg-room[b-1rkpqghxrt] {
    fill: var(--fq-room-bg);
}

.cam-bg-floor[b-1rkpqghxrt] {
    fill: var(--fq-floor-bg);
}

.cam-zone-label[b-1rkpqghxrt] {
    font-family: "din-2014","DIN Pro",sans-serif;
    fill: var(--fq-zone-label);
    font-size: 7px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
}
/* Center-aligned zone labels (THRESHOLD) — text-anchor in CSS only */
.cam-txt-center[b-1rkpqghxrt] {
    text-anchor: middle;
}

.cam-wall[b-1rkpqghxrt] {
    fill: var(--fq-wall);
}

.cam-wall-label[b-1rkpqghxrt] {
    font-family: "din-2014","DIN Pro",sans-serif;
    fill: #fff;
    font-size: 6px;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
    text-anchor: middle;
    dominant-baseline: middle;
}

.cam-hinge-frame-leaf[b-1rkpqghxrt] {
    fill: var(--fq-hinge);
    stroke: var(--fq-hinge-dark);
    stroke-width: .8;
}

.cam-hinge-door-leaf[b-1rkpqghxrt] {
    fill: var(--fq-hinge);
    stroke: var(--fq-hinge-dark);
    stroke-width: .8;
}

.cam-hinge-barrel[b-1rkpqghxrt] {
    fill: var(--fq-hinge-dark);
}

.cam-hinge-barrel-line[b-1rkpqghxrt] {
    stroke: rgba(0,0,0,.25);
    stroke-width: 1.5;
}

.cam-screw-x[b-1rkpqghxrt] {
    stroke: rgba(255,255,255,.6);
    stroke-width: 1.2;
    stroke-linecap: round;
}

.cam-cam-lobe[b-1rkpqghxrt] {
    fill: var(--fq-cam-lobe,#F1B828);
    opacity: .95;
}

.cam-screw[b-1rkpqghxrt] {
    fill: var(--fq-hinge-dark);
    opacity: .6;
}

.cam-door-slab[b-1rkpqghxrt] {
    fill: var(--fq-door-fill);
    stroke: var(--fq-door-stroke);
    stroke-width: 2;
}

.cam-door-panel[b-1rkpqghxrt] {
    fill: none;
    stroke: var(--fq-door-stroke);
    stroke-width: .8;
    opacity: .3;
}

.cam-door-rail[b-1rkpqghxrt] {
    stroke: var(--fq-door-stroke);
    stroke-width: .8;
    opacity: .3;
    fill: none;
}

.cam-door-handle[b-1rkpqghxrt] {
    fill: var(--fq-hinge);
    stroke: var(--fq-hinge-dark);
    stroke-width: .8;
}

.cam-door-knob[b-1rkpqghxrt] {
    fill: var(--fq-handle);
    stroke: #907010;
    stroke-width: .8;
}
/* Seal states */
.cam-seal--ok[b-1rkpqghxrt] {
    fill: var(--fq-seal-ok);
    opacity: .9;
}

.cam-seal--gap[b-1rkpqghxrt] {
    fill: var(--fq-seal-gap);
    opacity: .7;
}

.cam-seal--none[b-1rkpqghxrt] {
    fill: transparent;
    opacity: 0;
}
/* Seal text — centered via CSS text-anchor */
.cam-seal-label[b-1rkpqghxrt] {
    font-family: "din-2014","DIN Pro",sans-serif;
    font-size: 8px;
    font-weight: 700;
    text-anchor: middle;
}

.cam-seal-label--ok[b-1rkpqghxrt] {
    fill: var(--fq-seal-ok);
}

.cam-seal-label--gap[b-1rkpqghxrt] {
    fill: var(--fq-seal-gap);
}
/* Threshold */
.cam-threshold[b-1rkpqghxrt] {
    fill: var(--fq-thresh);
}
/* Arrows */
.cam-arrow-shaft[b-1rkpqghxrt] {
    fill: none;
    stroke-width: 1.8;
    stroke-linecap: round;
}

.cam-arrow--up[b-1rkpqghxrt] {
    stroke: var(--fq-arrow-up);
}

.cam-arrow--down[b-1rkpqghxrt] {
    stroke: var(--fq-arrow-down);
}

.cam-arrow-head--up[b-1rkpqghxrt] {
    fill: var(--fq-arrow-up);
}

.cam-arrow-head--down[b-1rkpqghxrt] {
    fill: var(--fq-arrow-down);
}

.cam-arrow-label[b-1rkpqghxrt] {
    font-family: "din-2014","DIN Pro",sans-serif;
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .05em;
}

.cam-arrow-label--up[b-1rkpqghxrt] {
    fill: var(--fq-arrow-up);
}

.cam-arrow-label--down[b-1rkpqghxrt] {
    fill: var(--fq-arrow-down);
}
/* Gap dimension line */
.cam-gap-line[b-1rkpqghxrt] {
    stroke: var(--fq-gap-line);
    stroke-width: 1;
    fill: none;
}

.cam-gap-label[b-1rkpqghxrt] {
    font-family: "din-2014","DIN Pro",sans-serif;
    font-size: 8px;
    fill: var(--fq-gap-line);
    font-style: italic;
}

.cam-door-ghost[b-1rkpqghxrt] {
    opacity: .28;
}

    .cam-door-ghost .cam-door-slab[b-1rkpqghxrt],
    .cam-door-ghost .cam-door-panel[b-1rkpqghxrt],
    .cam-door-ghost .cam-door-rail[b-1rkpqghxrt],
    .cam-door-ghost .cam-hinge-door-leaf[b-1rkpqghxrt] {
        fill: none;
        stroke: var(--fq-muted);
        stroke-width: 1.4;
        stroke-dasharray: 4 3;
    }

.cam-swing-arc[b-1rkpqghxrt] {
    fill: none;
    stroke: var(--fq-border);
    stroke-width: 1.1;
    stroke-dasharray: 4 4;
}

.cam-swing-arrow[b-1rkpqghxrt] {
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    marker-end: url(#camArrowHead);
    opacity: .9;
}

.cam-lift-guide[b-1rkpqghxrt] {
    stroke: var(--fq-arrow-up);
    stroke-width: 1.2;
    stroke-dasharray: 3 2;
}

/* Acoustic reference table polish */
.acoustic-ref-wrap[b-1rkpqghxrt] {
    border: 1px solid var(--fq-border);
    border-radius: .85rem;
    background: linear-gradient(180deg, var(--fq-surface-hi) 0%, var(--fq-surface) 100%);
    padding: .95rem 1rem .8rem;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}

.acoustic-ref-scroll[b-1rkpqghxrt] {
    border: 1px solid var(--fq-border);
    border-radius: .6rem;
    overflow: auto;
    max-height: min(52vh,460px);
    background: var(--fq-surface-hi);
}

.acoustic-ref-table[b-1rkpqghxrt] {
    margin-bottom: 0;
    min-width: 1220px;
    font-size: .76rem;
}

    .acoustic-ref-table thead th[b-1rkpqghxrt] {
        position: sticky;
        top: 0;
        z-index: 3;
        background: linear-gradient(180deg, rgba(0,40,85,.96), rgba(0,40,85,.88));
        color: #fff;
        border-color: rgba(255,255,255,.14) !important;
        text-transform: uppercase;
        letter-spacing: .03em;
        font-size: .72rem;
        white-space: nowrap;
        padding: .46rem .34rem;
    }

    .acoustic-ref-table thead tr:nth-child(2) th[b-1rkpqghxrt] {
        background: linear-gradient(180deg, rgba(7,58,120,.95), rgba(3,45,96,.9));
        font-size: .68rem;
        padding-top: .38rem;
        padding-bottom: .38rem;
    }

.acoustic-ref-table__subhead th[b-1rkpqghxrt] {
    background: rgba(0,40,85,.12) !important;
    color: var(--fq-muted) !important;
    border-top: 1px solid var(--fq-border) !important;
    border-bottom: 1px solid var(--fq-border) !important;
    position: sticky;
    top: 68px;
    z-index: 2;
    font-size: .68rem !important;
    letter-spacing: .08em !important;
}

.acoustic-ref-table td[b-1rkpqghxrt] {
    vertical-align: middle;
    white-space: nowrap;
    border-color: var(--fq-border) !important;
    padding: .4rem .32rem;
}

.acoustic-ref-table tbody tr:nth-child(odd) td[b-1rkpqghxrt] {
    background: rgba(90,120,160,.03);
}

.acoustic-ref-table tbody tr:hover td[b-1rkpqghxrt] {
    background: rgba(102,168,255,.08);
}

.acoustic-ref-table__group[b-1rkpqghxrt] {
    position: sticky;
    left: 0;
    z-index: 2;
    background: linear-gradient(180deg, rgba(0,40,85,.06), rgba(0,40,85,.02));
    font-weight: 800;
    min-width: 120px;
}

.acoustic-ref-table tbody td:nth-child(2)[b-1rkpqghxrt], .acoustic-ref-table tbody td:nth-child(3)[b-1rkpqghxrt] {
    font-weight: 800;
    color: var(--iac-blue-hex,#002855);
}

.acoustic-ref-table__num[b-1rkpqghxrt] {
    text-align: center;
    font-variant-numeric: tabular-nums;
    font-weight: 700;
    min-width: 30px;
    padding-left: .3rem !important;
    padding-right: .3rem !important;
}

.acoustic-ref-row--group-start td[b-1rkpqghxrt] {
    border-top-width: 2px !important;
}

.acoustic-ref-table tbody tr[b-1rkpqghxrt] {
    cursor: pointer;
}

.acoustic-ref-row--active td[b-1rkpqghxrt] {
    background: rgba(0,81,181,.12) !important;
    box-shadow: inset 0 1px 0 rgba(0,81,181,.18), inset 0 -1px 0 rgba(0,81,181,.18);
    font-weight: 800;
}

.acoustic-ref-row--active .acoustic-ref-table__group[b-1rkpqghxrt] {
    background: rgba(0,81,181,.16) !important;
}


:root[data-bs-theme="light"] .acoustic-ref-wrap[b-1rkpqghxrt] {
    background: linear-gradient(180deg, #f8fbff 0%, #eef4fb 100%);
    border-color: #b8cae0;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.85);
}

:root[data-bs-theme="light"] .acoustic-ref-scroll[b-1rkpqghxrt] {
    background: #f7fbff;
    border-color: #b7cae0;
}

:root[data-bs-theme="light"] .acoustic-ref-table thead th[b-1rkpqghxrt] {
    background: linear-gradient(180deg, #2a5fa3, #1f4f8d);
    color: #ffffff;
    border-color: rgba(255,255,255,.18) !important;
    text-shadow: 0 1px 0 rgba(0,0,0,.15);
}

:root[data-bs-theme="light"] .acoustic-ref-table thead tr:nth-child(2) th[b-1rkpqghxrt] {
    background: linear-gradient(180deg, #3a73b8, #2d629f);
}

:root[data-bs-theme="light"] .acoustic-ref-table__subhead th[b-1rkpqghxrt] {
    background: #dfe8f3 !important;
    color: #4f6681 !important;
    border-top-color: #bfd0e2 !important;
    border-bottom-color: #bfd0e2 !important;
}

:root[data-bs-theme="light"] .acoustic-ref-table td[b-1rkpqghxrt] {
    color: #0f2745;
    border-color: #c9d7e6 !important;
}

:root[data-bs-theme="light"] .acoustic-ref-table tbody tr:nth-child(odd) td[b-1rkpqghxrt] {
    background: rgba(42,95,163,.035);
}

:root[data-bs-theme="light"] .acoustic-ref-table tbody tr:hover td[b-1rkpqghxrt] {
    background: rgba(58,115,184,.10);
}

:root[data-bs-theme="light"] .acoustic-ref-table__group[b-1rkpqghxrt] {
    background: linear-gradient(180deg, #eef4fb, #e6eef8);
    color: #08284e;
}

:root[data-bs-theme="light"] .acoustic-ref-table tbody td:nth-child(2)[b-1rkpqghxrt],
:root[data-bs-theme="light"] .acoustic-ref-table tbody td:nth-child(3)[b-1rkpqghxrt] {
    color: #123f78;
}

:root[data-bs-theme="dark"] .acoustic-ref-row--active td[b-1rkpqghxrt] {
    background: rgba(102,168,255,.16) !important;
    box-shadow: inset 0 1px 0 rgba(126,184,255,.30), inset 0 -1px 0 rgba(126,184,255,.30);
    color: #e8f4ff !important;
}

:root[data-bs-theme="dark"] .acoustic-ref-row--active .acoustic-ref-table__group[b-1rkpqghxrt] {
    background: rgba(102,168,255,.20) !important;
}

:root[data-bs-theme="dark"] .stc-bar--btn.stc-bar--active[b-1rkpqghxrt]::after {
    background: #ffffff;
    box-shadow: 0 0 8px rgba(255,255,255,.4);
}

:root[data-bs-theme="dark"] .stc-label-btn--active[b-1rkpqghxrt] {
    color: #fff;
    background: rgba(102,168,255,.26);
    box-shadow: inset 0 -3px 0 #9fd0ff, 0 0 0 1px rgba(159,208,255,.18);
    text-shadow: 0 0 6px rgba(159,208,255,.25);
}

:root[data-bs-theme="dark"] .acoustic-ref-wrap[b-1rkpqghxrt] {
    background: linear-gradient(180deg, rgba(16,24,36,.95), rgba(10,15,22,.95));
}

:root[data-bs-theme="dark"] .acoustic-ref-table thead th[b-1rkpqghxrt] {
    background: linear-gradient(180deg, rgba(31,73,138,.96), rgba(21,53,103,.94));
    color: #edf6ff;
    border-color: rgba(255,255,255,.08) !important;
}

:root[data-bs-theme="dark"] .acoustic-ref-table thead tr:nth-child(2) th[b-1rkpqghxrt] {
    background: linear-gradient(180deg, rgba(45,94,170,.92), rgba(30,70,136,.9));
}

:root[data-bs-theme="dark"] .acoustic-ref-table__subhead th[b-1rkpqghxrt] {
    background: rgba(115,165,240,.10) !important;
    color: #b7cee8 !important;
}

:root[data-bs-theme="dark"] .acoustic-ref-table tbody tr:nth-child(odd) td[b-1rkpqghxrt] {
    background: rgba(255,255,255,.015);
}

:root[data-bs-theme="dark"] .acoustic-ref-table tbody tr:hover td[b-1rkpqghxrt] {
    background: rgba(102,168,255,.10);
}

:root[data-bs-theme="dark"] .acoustic-ref-table__group[b-1rkpqghxrt] {
    background: linear-gradient(180deg, rgba(102,168,255,.08), rgba(102,168,255,.03));
    color: #d8ecff;
}

:root[data-bs-theme="dark"] .acoustic-ref-table tbody td:nth-child(2)[b-1rkpqghxrt], :root[data-bs-theme="dark"] .acoustic-ref-table tbody td:nth-child(3)[b-1rkpqghxrt] {
    color: #9bc6ff;
}

.cam-svg text[b-1rkpqghxrt], .cam-small-label[b-1rkpqghxrt], .cam-center-label[b-1rkpqghxrt] {
    font-family: "din-2014","DIN Pro","Inter",sans-serif;
}

.cam-small-label[b-1rkpqghxrt] {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .03em;
    fill: #d8ecff;
    paint-order: stroke fill;
    stroke: rgba(7,12,20,.72);
    stroke-width: .95px;
    stroke-linejoin: round;
}

.cam-label--muted[b-1rkpqghxrt] {
    fill: #b7cae2;
}

.cam-small-label--tight[b-1rkpqghxrt] {
    font-size: 10px;
    letter-spacing: .01em;
}

.cam-center-label[b-1rkpqghxrt] {
    font-size: 13px;
    font-weight: 900;
    letter-spacing: .04em;
    fill: #e5f0ff;
    text-anchor: middle;
    paint-order: stroke fill;
    stroke: rgba(6,12,20,.82);
    stroke-width: 1px;
}

:root[data-bs-theme="light"] .cam-small-label[b-1rkpqghxrt] {
    fill: #1b3f73;
    stroke: rgba(255,255,255,.88);
    stroke-width: 1.1px;
}

:root[data-bs-theme="light"] .cam-label--muted[b-1rkpqghxrt] {
    fill: #4e6d95;
}

:root[data-bs-theme="light"] .cam-center-label[b-1rkpqghxrt] {
    fill: #204a87;
    stroke: rgba(255,255,255,.92);
}

:root[data-bs-theme="light"] .cam-svg-container[b-1rkpqghxrt] {
    background: #ffffff;
    border-color: rgba(0,40,85,.18);
    border: 1px solid #c8d8ec;
    border-radius: .4rem;
}

media (max-width: 1200px)[b-1rkpqghxrt] {
    .acoustic-ref-scroll {
        max-height: 46vh;
    }
}

.cam-lift-cap[b-1rkpqghxrt] {
    stroke: var(--fq-arrow-up);
    stroke-width: 1.2;
}


/* ═══════════════════════════════════
                                                               CAM EXPLAINER LAYOUT
                                                            ═══════════════════════════════════ */
.cam-explainer[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    gap: 1.5rem;
    margin-top: 1.5rem;
}

/* ── Cam Sync Player ──────────────────────────── */
.cam-sync-player[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    gap: .85rem;
    width: 100%;
}

/* Stage label banner */
.cam-stage-bar[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    gap: .6rem;
    background: #f8fafc;
    border: 1px solid #e2e8f0;
    border-radius: .6rem;
    padding: .55rem 1rem;
    min-height: 2.4rem;
}

:root[data-bs-theme="dark"] .cam-stage-bar[b-1rkpqghxrt] {
    background: #1a2035;
    border-color: #2e3547;
}

.cam-stage-dot[b-1rkpqghxrt] {
    width: .65rem;
    height: .65rem;
    border-radius: 50%;
    background: #94a3b8;
    flex-shrink: 0;
    transition: background .4s ease;
}

.cam-stage-text[b-1rkpqghxrt] {
    font-size: .82rem;
    font-weight: 500;
    color: #374151;
    transition: color .3s ease;
}

:root[data-bs-theme="dark"] .cam-stage-text[b-1rkpqghxrt] {
    color: #cbd5e1;
}

/* Shared play/pause control row */
.cam-controls[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.cam-play-btn[b-1rkpqghxrt] {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    background: #4b6bfb;
    color: #fff;
    border: none;
    border-radius: 2rem;
    padding: .5rem 1.3rem;
    font-size: .85rem;
    font-weight: 600;
    cursor: pointer;
    flex-shrink: 0;
    transition: background .2s, transform .1s;
}

    .cam-play-btn:hover[b-1rkpqghxrt] {
        background: #3b55e6;
    }

    .cam-play-btn:active[b-1rkpqghxrt] {
        transform: scale(.97);
    }

.cam-play-btn--playing[b-1rkpqghxrt] {
    background: #64748b;
}

    .cam-play-btn--playing:hover[b-1rkpqghxrt] {
        background: #475569;
    }

.cam-progress-track[b-1rkpqghxrt] {
    flex: 1;
    height: .45rem;
    background: #e2e8f0;
    border-radius: 1rem;
    overflow: hidden;
}

:root[data-bs-theme="dark"] .cam-progress-track[b-1rkpqghxrt] {
    background: #2e3547;
}

.cam-progress-fill[b-1rkpqghxrt] {
    height: 100%;
    width: 0%;
    background: #22c55e;
    border-radius: 1rem;
    transition: width .25s linear, background .4s ease;
}

/* ── Cam Video Row (two-panel layout) ─────────── */
.cam-video-row[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.25rem;
    width: 100%;
}

.cam-video-panel[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    gap: .6rem;
    background: var(--faq-card-bg, #fff);
    border: 1px solid var(--faq-border, #e5e7eb);
    border-radius: .75rem;
    padding: 1rem;
}

:root[data-bs-theme="dark"] .cam-video-panel[b-1rkpqghxrt] {
    background: #1e2330;
    border-color: #2e3547;
}

.cam-video-label[b-1rkpqghxrt] {
    font-size: .78rem;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: .04em;
    color: #4b6bfb;
}

.cam-video-wrap[b-1rkpqghxrt] {
    width: 100%;
    border-radius: .5rem;
    overflow: hidden;
    background: #000;
    aspect-ratio: 16 / 9;
    position: relative;
}

.cam-video[b-1rkpqghxrt] {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: contain;
    background: #000;
}

.cam-video-iframe[b-1rkpqghxrt] {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: none;
    display: block;
}

.cam-video-caption[b-1rkpqghxrt] {
    font-size: .8rem;
    color: #6b7280;
    margin: 0;
    line-height: 1.5;
}

:root[data-bs-theme="dark"] .cam-video-caption[b-1rkpqghxrt] {
    color: #9ca3af;
}

@@media (max-width: 640px) {
    .cam-video-row[b-1rkpqghxrt] {
        grid-template-columns: 1fr;
    }

    .cam-controls[b-1rkpqghxrt] {
        flex-direction: column;
        align-items: stretch;
    }

    .cam-progress-track[b-1rkpqghxrt] {
        width: 100%;
    }
}

/* ── end cam video ─────────────────────────────── */

.cam-anim-panel[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: .75rem;
    grid-column: 1 / -1; /* span full width of cam-explainer grid */
}

.cam-anim-toprow[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .6rem;
    width: 100%;
}

.cam-views-row[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
    width: 100%;
    align-items: stretch;
}

.cam-view-card[b-1rkpqghxrt] {
    width: 100%;
    border: 1px solid var(--fq-border);
    border-radius: .65rem;
    background: var(--fq-surface-hi);
    padding: .65rem;
    display: flex;
    flex-direction: column;
}

.cam-svg-container[b-1rkpqghxrt] {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.cam-svg[b-1rkpqghxrt] {
    flex: 1;
    width: 100%;
    height: auto;
    overflow: visible;
    display: block;
}

/* ─── New cross-section SVG text classes ─── */
.csx-title[b-1rkpqghxrt] {
    font-family: "din-2014","DIN Pro","Inter",sans-serif;
    font-size: 11px;
    font-weight: 800;
    fill: #d8ecff;
    text-anchor: middle;
    letter-spacing: .04em;
    paint-order: stroke fill;
    stroke: rgba(6,10,18,.75);
    stroke-width: .9px;
}

.csx-sub[b-1rkpqghxrt] {
    font-family: "din-2014","DIN Pro","Inter",sans-serif;
    font-size: 9px;
    font-weight: 600;
    fill: #8ab0d0;
    text-anchor: middle;
    paint-order: stroke fill;
    stroke: rgba(6,10,18,.7);
    stroke-width: .6px;
}

.csx-part-label[b-1rkpqghxrt] {
    font-family: "din-2014","DIN Pro","Inter",sans-serif;
    font-size: 9px;
    font-weight: 800;
    fill: #a8c8e8;
    text-anchor: middle;
    letter-spacing: .06em;
    text-transform: uppercase;
    paint-order: stroke fill;
    stroke: rgba(6,10,18,.8);
    stroke-width: .7px;
}

.csx-thresh-label[b-1rkpqghxrt] {
    font-family: "din-2014","DIN Pro","Inter",sans-serif;
    font-size: 8.5px;
    font-weight: 700;
    fill: #6880a0;
    text-anchor: middle;
    letter-spacing: .05em;
}

.csx-status[b-1rkpqghxrt] {
    font-family: "din-2014","DIN Pro","Inter",sans-serif;
    font-size: 9px;
    font-weight: 700;
    fill: #90b8d8;
    text-anchor: middle;
    paint-order: stroke fill;
    stroke: rgba(6,10,18,.7);
    stroke-width: .6px;
}

.csx-lift-label[b-1rkpqghxrt] {
    font-family: "din-2014","DIN Pro","Inter",sans-serif;
    font-size: 8.5px;
    font-weight: 800;
    fill: #4ade80;
    text-anchor: middle;
    paint-order: stroke fill;
    stroke: rgba(4,10,4,.7);
    stroke-width: .7px;
}

.csx-cam-arrow[b-1rkpqghxrt] {
    font-family: "din-2014","DIN Pro","Inter",sans-serif;
    font-size: 14px;
    font-weight: 900;
    fill: #f1c33f;
    paint-order: stroke fill;
    stroke: rgba(10,8,2,.7);
    stroke-width: .8px;
}

.d3-lift-label[b-1rkpqghxrt] {
    font-family: "din-2014","DIN Pro","Inter",sans-serif;
    font-size: 8.5px;
    font-weight: 800;
    fill: #4ade80;
    text-anchor: middle;
    paint-order: stroke fill;
    stroke: rgba(4,10,4,.7);
    stroke-width: .7px;
}

/* ─── Light mode overrides for SVG text inside cam animations ─── */
:root[data-bs-theme="light"] .cam-svg .csx-title[b-1rkpqghxrt] {
    fill: #0f2d5c;
    stroke: rgba(255,255,255,.92);
    stroke-width: 2px;
}

:root[data-bs-theme="light"] .cam-svg .csx-sub[b-1rkpqghxrt] {
    fill: #3a5880;
    stroke: rgba(255,255,255,.88);
    stroke-width: 1.2px;
}

:root[data-bs-theme="light"] .cam-svg .csx-part-label[b-1rkpqghxrt] {
    fill: #1e4070;
    stroke: rgba(255,255,255,.95);
    stroke-width: 1.4px;
}

:root[data-bs-theme="light"] .cam-svg .csx-thresh-label[b-1rkpqghxrt] {
    fill: #3a5270;
}

:root[data-bs-theme="light"] .cam-svg .csx-status[b-1rkpqghxrt] {
    fill: #2a4a70;
    stroke: rgba(255,255,255,.88);
    stroke-width: 1px;
}

:root[data-bs-theme="light"] .cam-svg .csx-lift-label[b-1rkpqghxrt] {
    fill: #1a8040;
    stroke: rgba(255,255,255,.92);
    stroke-width: 1px;
}

:root[data-bs-theme="light"] .cam-svg .csx-cam-arrow[b-1rkpqghxrt] {
    fill: #c07800;
    stroke: rgba(255,255,255,.88);
    stroke-width: 1px;
}
/* Light mode: SVG background rect override via filter (fallback - handled by SVG defs in light) */
:root[data-bs-theme="light"] .cam-svg-container .cam-svg[b-1rkpqghxrt] {
    /* The SVG uses hard-coded dark fills in defs — CSS can't override gradient fills directly */
    /* We rely on the container background being white and the SVG being transparent */
    background: transparent;
}
/* Override threshold/floor bars in light mode */
:root[data-bs-theme="light"] .cam-seal--ok[b-1rkpqghxrt] {
    fill: #16903a;
}

:root[data-bs-theme="light"] .cam-seal--gap[b-1rkpqghxrt] {
    fill: #c06020;
}

/* Light mode: SVG background fills white */
:root[data-bs-theme="light"] .cam-svg .cam-svg-bg[b-1rkpqghxrt] {
    fill: #ffffff;
    stroke: #d0dcea;
    stroke-width: 1;
}

/* Light mode: SVG structural elements need lightened fills */
:root[data-bs-theme="light"] .cam-svg .cam-floor-rect[b-1rkpqghxrt] {
    fill: #e0e8f0 !important;
    stroke: #b0c0d0 !important;
}

:root[data-bs-theme="light"] .cam-svg .cam-thresh-bar[b-1rkpqghxrt] {
    fill: #c8d8ea !important;
    stroke: #9ab0ca !important;
}

:root[data-bs-theme="light"] .cam-svg .cam-thresh-bar-dark[b-1rkpqghxrt] {
    fill: #b0c4da !important;
}

:root[data-bs-theme="light"] .cam-svg-container[b-1rkpqghxrt] {
    background: #ffffff;
    border: 1px solid #c8d8ec;
    border-radius: .4rem;
}

.cam-view-card__title[b-1rkpqghxrt] {
    font-size: .82rem;
    font-weight: 800;
    color: var(--iac-blue-hex,#002855);
    text-transform: uppercase;
    letter-spacing: .04em;
    margin-bottom: .15rem;
    display: flex;
    align-items: center;
}

:root[data-bs-theme="dark"] .cam-view-card__title[b-1rkpqghxrt] {
    color: #9bc6ff;
}

.cam-view-card__sub[b-1rkpqghxrt] {
    font-size: .76rem;
    color: var(--fq-muted);
    margin: 0 0 .5rem;
    line-height: 1.35;
}

.cam-svg-container--front[b-1rkpqghxrt] {
    max-width: 100%;
}

.cam-svg--front[b-1rkpqghxrt] {
    border-radius: .4rem;
}

.cam-maint[b-1rkpqghxrt] {
    border: 1px solid var(--fq-border);
    background: var(--fq-surface-hi);
    border-radius: .75rem;
    padding: 1rem;
}

.cam-maint__header[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    color: var(--iac-blue-hex,#002855);
    margin-bottom: .35rem;
}

:root[data-bs-theme="dark"] .cam-maint__header[b-1rkpqghxrt] {
    color: #9bc6ff;
}

.cam-maint__title[b-1rkpqghxrt] {
    font-size: .95rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .03em;
}

.cam-maint__intro[b-1rkpqghxrt] {
    font-size: .86rem;
    color: var(--fq-text);
    margin: 0 0 .85rem;
    line-height: 1.5;
}

.cam-maint__grid[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: .75rem;
}

/* ── Tablet: 2-col maintenance grid ── */
@@media (max-width: 860px) {
}

.cam-maint__card[b-1rkpqghxrt] {
    background: var(--fq-surface);
    border: 1px solid var(--fq-border);
    border-radius: .6rem;
    padding: .75rem;
}

    .cam-maint__card h5[b-1rkpqghxrt] {
        font-size: .82rem;
        font-weight: 800;
        color: var(--iac-blue-hex,#002855);
        text-transform: uppercase;
        letter-spacing: .03em;
        margin: 0 0 .45rem;
    }

:root[data-bs-theme="dark"] .cam-maint__card h5[b-1rkpqghxrt] {
    color: #9bc6ff;
}

.cam-maint__card ul[b-1rkpqghxrt] {
    margin: 0;
    padding-left: 1rem;
    display: flex;
    flex-direction: column;
    gap: .35rem;
}

.cam-maint__card li[b-1rkpqghxrt] {
    font-size: .8rem;
    color: var(--fq-text);
    line-height: 1.45;
}

.cam-finish-ref[b-1rkpqghxrt] {
    margin-top: .9rem;
    border: 1px solid var(--fq-border);
    background: linear-gradient(180deg, var(--fq-surface) 0%, var(--fq-surface-hi) 100%);
    border-radius: .65rem;
    padding: .85rem;
}

.cam-finish-ref__header[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    color: var(--iac-blue-hex,#002855);
    margin-bottom: .2rem;
}

    .cam-finish-ref__header h5[b-1rkpqghxrt] {
        font-size: .82rem;
        font-weight: 800;
        text-transform: uppercase;
        letter-spacing: .03em;
        margin: 0;
    }

:root[data-bs-theme="dark"] .cam-finish-ref__header[b-1rkpqghxrt] {
    color: #9bc6ff;
}

.cam-finish-ref__note[b-1rkpqghxrt] {
    margin: 0 0 .65rem;
    font-size: .76rem;
    color: var(--fq-muted);
    line-height: 1.35;
}

.cam-finish-grid[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: repeat(5,minmax(0,1fr));
    gap: .55rem;
}

.cam-finish-chip[b-1rkpqghxrt] {
    border: 1px solid var(--fq-border);
    background: var(--fq-surface-hi);
    border-radius: .55rem;
    padding: .55rem .5rem;
    display: grid;
    gap: .25rem;
    align-content: start;
    min-height: 98px;
}

.cam-finish-chip__swatch[b-1rkpqghxrt] {
    width: 100%;
    height: 26px;
    border-radius: .35rem;
    border: 1px solid rgba(0,0,0,.18);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.35);
    display: block;
}

.cam-finish-chip__code[b-1rkpqghxrt] {
    font-size: .78rem;
    font-weight: 800;
    color: var(--fq-text);
    letter-spacing: .04em;
}

.cam-finish-chip__desc[b-1rkpqghxrt] {
    font-size: .69rem;
    line-height: 1.25;
    color: var(--fq-muted);
}

.cam-finish--us26d[b-1rkpqghxrt] {
    background: linear-gradient(135deg, #b8bfc8 0%, #e4e8ee 45%, #9ea7b2 100%);
}

.cam-finish--us32d[b-1rkpqghxrt] {
    background: linear-gradient(135deg, #9aa2aa 0%, #d0d5db 50%, #7f8791 100%);
}

.cam-finish--us10[b-1rkpqghxrt] {
    background: linear-gradient(135deg, #8b6b4c 0%, #c2a07b 48%, #6b5038 100%);
}

.cam-finish--us10b[b-1rkpqghxrt] {
    background: linear-gradient(135deg, #3d3128 0%, #665545 45%, #221b16 100%);
}

.cam-finish--622[b-1rkpqghxrt] {
    background: linear-gradient(135deg, #212327 0%, #4a4f56 48%, #16181b 100%);
}

:root[data-bs-theme="dark"] .cam-finish-chip__swatch[b-1rkpqghxrt] {
    border-color: rgba(255,255,255,.16);
}


.cam-phase-label[b-1rkpqghxrt] {
    width: 100%;
    background: var(--fq-surface-hi);
    border: 1px solid var(--fq-border);
    border-radius: 8px;
    padding: .55rem 1rem;
    font-size: .85rem;
    font-weight: 500;
    color: var(--fq-text);
    text-align: center;
    min-height: 3.7rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .15rem;
}

.cam-phase-label__detail[b-1rkpqghxrt] {
    display: block;
    font-size: .76rem;
    line-height: 1.25;
    color: var(--fq-muted);
    font-weight: 600;
    max-width: 980px;
}

.cam-phase-note[b-1rkpqghxrt] {
    font-size: .76rem;
    color: var(--fq-muted);
    font-weight: 500;
    margin-left: .25rem;
}

.cam-svg-container[b-1rkpqghxrt] {
    width: 100%;
    max-width: 100%;
    border-radius: .6rem;
    border: 1px solid rgba(100,140,190,.18);
    background: linear-gradient(180deg, rgba(7,13,22,.96), rgba(4,8,14,.98));
    padding: .25rem;
    overflow: hidden;
    flex: 1;
    display: flex;
    flex-direction: column;
}

:root[data-bs-theme="light"] .cam-svg-container[b-1rkpqghxrt] {
    border-color: rgba(0,40,85,.12);
    background: linear-gradient(180deg, #060e1a, #08101e);
}

.cam-svg[b-1rkpqghxrt] {
    width: 100%;
    height: auto;
    overflow: visible;
    display: block;
    flex: 1;
}
/* Seal bar */
.cam-seal-bar-wrap[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    gap: .6rem;
    width: 100%;
    max-width: 100%;
    flex-wrap: wrap;
}

.cam-seal-bar-title[b-1rkpqghxrt] {
    font-size: .75rem;
    font-weight: 700;
    color: var(--fq-muted);
    white-space: nowrap;
}

.cam-seal-bar[b-1rkpqghxrt] {
    flex: 1;
    height: 14px;
    background: var(--fq-border);
    border-radius: 10px;
    overflow: hidden;
    min-width: 80px;
}

.cam-seal-bar__fill[b-1rkpqghxrt] {
    height: 100%;
    border-radius: 10px;
    transition: width .5s ease,background .5s ease;
}

    .cam-seal-bar__fill.bar--ok[b-1rkpqghxrt] {
        background: var(--fq-seal-ok);
    }

    .cam-seal-bar__fill.bar--gap[b-1rkpqghxrt] {
        background: var(--fq-seal-gap);
    }

    .cam-seal-bar__fill.bar--none[b-1rkpqghxrt] {
        background: var(--fq-muted);
    }

.cam-seal-bar-value[b-1rkpqghxrt] {
    font-size: .75rem;
    font-weight: 700;
    white-space: nowrap;
}

    .cam-seal-bar-value.bar--ok[b-1rkpqghxrt] {
        color: var(--fq-seal-ok);
    }

    .cam-seal-bar-value.bar--gap[b-1rkpqghxrt] {
        color: var(--fq-seal-gap);
    }

    .cam-seal-bar-value.bar--none[b-1rkpqghxrt] {
        color: var(--fq-muted);
    }
/* Button */
.cam-btn[b-1rkpqghxrt] {
    display: inline-flex;
    align-items: center;
    background: var(--iac-blue-hex,#002855);
    color: #fff;
    border: none;
    border-radius: 20px;
    padding: .5rem 1.4rem;
    font-size: .88rem;
    font-weight: 700;
    font-family: inherit;
    cursor: pointer;
    transition: background .2s,opacity .2s;
}

    .cam-btn:disabled[b-1rkpqghxrt] {
        opacity: .6;
        cursor: default;
    }

    .cam-btn:not(:disabled):hover[b-1rkpqghxrt] {
        background: #003d80;
    }

:root[data-bs-theme="dark"] .cam-btn[b-1rkpqghxrt] {
    background: #1a4a8a;
}

    :root[data-bs-theme="dark"] .cam-btn:not(:disabled):hover[b-1rkpqghxrt] {
        background: #2a5a9a;
    }
/* Step list */
.cam-steps[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.cam-steps__intro[b-1rkpqghxrt] {
    font-size: .88rem;
    color: var(--fq-text);
    line-height: 1.6;
    margin-bottom: .5rem;
    padding: .75rem;
    background: var(--fq-surface-hi);
    border-radius: .5rem;
    border: 1px solid var(--fq-border);
}

.cam-step[b-1rkpqghxrt] {
    display: flex;
    gap: .75rem;
    align-items: flex-start;
    padding: .75rem;
    border-radius: .5rem;
    border: 1px solid transparent;
    transition: all .35s ease;
}

.cam-step--active[b-1rkpqghxrt] {
    background: rgba(0,40,85,.05);
    border-color: rgba(0,40,85,.12);
}

:root[data-bs-theme="dark"] .cam-step--active[b-1rkpqghxrt] {
    background: rgba(155,198,255,.06);
    border-color: rgba(155,198,255,.12);
}

.cam-step__num[b-1rkpqghxrt] {
    width: 28px;
    height: 28px;
    border-radius: 50%;
    flex-shrink: 0;
    background: var(--fq-border);
    color: var(--fq-muted);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .8rem;
    font-weight: 800;
    transition: all .35s ease;
}

.cam-step__num--active[b-1rkpqghxrt] {
    background: var(--iac-blue-hex,#002855);
    color: #fff;
}

:root[data-bs-theme="dark"] .cam-step__num--active[b-1rkpqghxrt] {
    background: #1a4a8a;
}

.cam-step strong[b-1rkpqghxrt] {
    font-size: .88rem;
    color: var(--fq-text);
    display: block;
    margin-bottom: .2rem;
}

.cam-step p[b-1rkpqghxrt] {
    font-size: .82rem;
    color: var(--fq-muted);
    margin: 0;
    line-height: 1.5;
}

/* Highlights */
.faq-card__highlights[b-1rkpqghxrt] {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.highlight-pill[b-1rkpqghxrt] {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    border-radius: 999px;
    padding: .28rem .85rem;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .01em;
    /* Light mode: stronger contrast + “pill” pop */
    background: rgba(0,40,85,0.08);
    border: 1px solid rgba(0,40,85,0.22);
    color: var(--iac-blue-hex,#002855);
    box-shadow: 0 1px 0 rgba(255,255,255,0.6) inset, 0 6px 16px rgba(0,40,85,0.10);
}

    .highlight-pill[b-1rkpqghxrt]::before {
        content: "";
        width: 7px;
        height: 7px;
        border-radius: 999px;
        background: rgba(241,184,40,0.95); /* IAC gold cue */
        box-shadow: 0 0 0 2px rgba(241,184,40,0.18);
    }

/* DARK MODE: readable + pops without being neon */
:root[data-bs-theme="dark"] .highlight-pill[b-1rkpqghxrt],
[data-bs-theme="dark"] .highlight-pill[b-1rkpqghxrt],
[data-theme="dark"] .highlight-pill[b-1rkpqghxrt] {
    background: rgba(241,184,40,0.16);
    border-color: rgba(241,184,40,0.34);
    color: rgba(255,255,255,0.92);
    box-shadow: 0 1px 0 rgba(255,255,255,0.06) inset, 0 10px 22px rgba(0,0,0,0.40);
}

    :root[data-bs-theme="dark"] .highlight-pill[b-1rkpqghxrt]::before,
    [data-bs-theme="dark"] .highlight-pill[b-1rkpqghxrt]::before,
    [data-theme="dark"] .highlight-pill[b-1rkpqghxrt]::before {
        background: rgba(255,255,255,0.92);
        box-shadow: 0 0 0 2px rgba(255,255,255,0.12);
    }
/* No results */
.faq-no-results[b-1rkpqghxrt] {
    text-align: center;
    padding: 3rem;
    color: var(--fq-muted);
}

.faq-no-results__icon[b-1rkpqghxrt] {
    font-size: 2.5rem;
    display: block;
    margin-bottom: .5rem;
}

/* Responsive */
@@media (max-width:900px) {
    .cam-explainer[b-1rkpqghxrt] {
        grid-template-columns: 1fr;
    }

    .cam-views-row[b-1rkpqghxrt] {
        grid-template-columns: 1fr;
    }
}

@@media (max-width:767px) {
    .faq-hero[b-1rkpqghxrt] {
        padding: 2rem 1.25rem;
    }

    .faq-grid--4col[b-1rkpqghxrt] {
        grid-template-columns: repeat(2,1fr);
    }

    .ul-rating-grid[b-1rkpqghxrt] {
        grid-template-columns: repeat(2,1fr);
    }

    .faq-grid--2col[b-1rkpqghxrt] {
        grid-template-columns: 1fr;
    }
    /* Maintenance section: tighter on mid phones */
    /* Finish chips: horizontal scroll row on tablet/mobile — each chip fixed width */
}

@@media (max-width:480px) {
    .faq-grid--4col[b-1rkpqghxrt] {
        grid-template-columns: 1fr;
    }

    .ul-rating-grid[b-1rkpqghxrt] {
        grid-template-columns: 1fr;
    }
    /* Maintenance cards mobile: moved to end of file to win cascade */
}

/* ── Very small phones mobile rules moved to end of file ── */

.faq-grid--handing-single[b-1rkpqghxrt] {
    grid-template-columns: minmax(0, 1fr);
    max-width: 980px;
    margin: 0 auto;
    justify-items: center;
}

    .faq-grid--handing-single > .faq-card[b-1rkpqghxrt] {
        width: min(100%, 980px);
        margin-inline: auto;
    }

.handing-tabs[b-1rkpqghxrt] {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: .5rem;
    margin: .5rem 0 1rem;
}

.handing-tab[b-1rkpqghxrt] {
    appearance: none;
    -webkit-appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(0,40,85,0.16);
    background: linear-gradient(180deg, rgba(0,40,85,0.06), rgba(255,255,255,0.90));
    color: rgba(0,40,85,0.82);
    border-radius: 999px;
    padding: .42rem .92rem;
    font-weight: 850;
    font-family: "din-2014","DIN Pro","Inter",sans-serif;
    letter-spacing: .06em;
    text-transform: uppercase;
    min-width: 64px;
    cursor: pointer;
    box-shadow: 0 1px 0 rgba(255,255,255,0.85) inset, 0 10px 20px rgba(0,40,85,0.10);
    transition: transform .18s ease, background .18s ease, border-color .18s ease, box-shadow .18s ease, color .18s ease;
}

    .handing-tab:hover[b-1rkpqghxrt] {
        transform: translateY(-1px);
        background: linear-gradient(180deg, rgba(80,144,232,0.14), rgba(255,255,255,0.95));
        border-color: rgba(0,40,85,0.24);
        color: rgba(0,40,85,0.92);
        box-shadow: 0 1px 0 rgba(255,255,255,0.92) inset, 0 14px 26px rgba(0,40,85,0.14);
    }

    .handing-tab:active[b-1rkpqghxrt] {
        transform: translateY(0px);
        box-shadow: 0 1px 0 rgba(255,255,255,0.75) inset, 0 8px 16px rgba(0,40,85,0.10);
    }

    .handing-tab:focus-visible[b-1rkpqghxrt] {
        outline: none;
        box-shadow: 0 0 0 3px rgba(80,144,232,0.26), 0 0 0 5px rgba(0,40,85,0.14), 0 12px 22px rgba(0,40,85,0.10);
    }

    /* Active: IAC navy “selected” */
    .handing-tab.active[b-1rkpqghxrt] {
        background: linear-gradient(180deg, rgba(0,40,85,0.98), rgba(0,40,85,0.86));
        border-color: rgba(0,40,85,0.92);
        color: #ffffff;
        box-shadow: 0 1px 0 rgba(255,255,255,0.10) inset, 0 16px 30px rgba(0,40,85,0.22);
    }

/* Dark mode */
[data-bs-theme="dark"] .handing-tab[b-1rkpqghxrt] {
    background: linear-gradient(180deg, rgba(255,255,255,0.06), rgba(255,255,255,0.03));
    border: 1px solid rgba(255,255,255,0.14);
    color: rgba(255,255,255,0.86);
    box-shadow: 0 1px 0 rgba(255,255,255,0.08) inset, 0 16px 34px rgba(0,0,0,0.45);
}

    [data-bs-theme="dark"] .handing-tab:hover[b-1rkpqghxrt] {
        background: linear-gradient(180deg, rgba(80,144,232,0.18), rgba(255,255,255,0.05));
        border-color: rgba(80,144,232,0.30);
        color: rgba(255,255,255,0.95);
        box-shadow: 0 1px 0 rgba(255,255,255,0.10) inset, 0 20px 40px rgba(0,0,0,0.58);
    }

    [data-bs-theme="dark"] .handing-tab.active[b-1rkpqghxrt] {
        background: linear-gradient(180deg, rgba(26,74,138,0.98), rgba(26,74,138,0.84));
        border-color: rgba(80,144,232,0.34);
        color: #ffffff;
        box-shadow: 0 1px 0 rgba(255,255,255,0.10) inset, 0 22px 44px rgba(0,0,0,0.65);
    }

    [data-bs-theme="dark"] .handing-tab:focus-visible[b-1rkpqghxrt] {
        outline: none;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.20), 0 0 0 5px rgba(80,144,232,0.18), 0 16px 34px rgba(0,0,0,0.45);
    }

.cam-state-strip[b-1rkpqghxrt] {
    position: relative;
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap: .5rem;
    margin: .75rem 0 1rem;
    padding-bottom: .75rem;
}

.cam-state[b-1rkpqghxrt] {
    text-align: center;
    border: 1px solid rgba(102,168,255,.18);
    border-radius: .65rem;
    padding: .35rem .4rem;
    font-weight: 800;
    font-size: .82rem;
    color: var(--fq-muted);
    background: rgba(102,168,255,.03);
    font-family: "din-2014","DIN Pro","Inter",sans-serif;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: .35rem;
}

.cam-state__dot[b-1rkpqghxrt] {
    width: .45rem;
    height: .45rem;
    border-radius: 50%;
    background: currentColor;
    opacity: .45;
}

.cam-state.is-active[b-1rkpqghxrt] {
    color: #0b5ed7;
    border-color: rgba(11,94,215,.35);
    background: rgba(11,94,215,.08);
}

:root[data-bs-theme="dark"] .cam-state[b-1rkpqghxrt] {
    color: #9fb5d1;
    background: rgba(102,168,255,.04);
}

    :root[data-bs-theme="dark"] .cam-state.is-active[b-1rkpqghxrt] {
        color: #dbeaff;
        background: rgba(72,146,255,.18);
        border-color: rgba(122,176,255,.38);
    }

.cam-state-strip__track[b-1rkpqghxrt] {
    grid-column: 1 / -1;
    height: 6px;
    border-radius: 999px;
    background: rgba(102,168,255,.12);
    overflow: hidden;
}

.cam-state-strip__track-fill[b-1rkpqghxrt] {
    height: 100%;
    background: linear-gradient(90deg,#31c76a,#f0b83a,#d9534f,#31c76a);
    transition: width .25s ease;
}

.cam-view-card__title[b-1rkpqghxrt], .cam-view-card__sub[b-1rkpqghxrt], .cam-phase-label[b-1rkpqghxrt], .cam-small-label[b-1rkpqghxrt] {
    font-family: "din-2014","DIN Pro","Inter",sans-serif;
}


/* === Door handing readability + spacing polish === */
.faq-grid--handing-single[b-1rkpqghxrt] {
    max-width: 1080px;
    margin-inline: auto;
}

    .faq-grid--handing-single .faq-card[b-1rkpqghxrt] {
        margin-inline: auto;
    }

.handing-tabs[b-1rkpqghxrt] {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    justify-content: center;
    margin: .35rem auto .85rem;
}

.handing-tab[b-1rkpqghxrt] {
    font-family: "din-2014","DIN Pro","Inter",sans-serif;
    font-weight: 700;
    letter-spacing: .03em;
}

.faq-grid--handing-single .faq-card .dhs-svg[b-1rkpqghxrt] {
    max-height: 560px;
}

:root[data-bs-theme="light"] .faq-grid--handing-single .faq-card .dhs-topnote[b-1rkpqghxrt],
:root[data-bs-theme="light"] .faq-grid--handing-single .faq-card .dhs-topnote2[b-1rkpqghxrt] {
    paint-order: stroke fill;
    stroke: rgba(255,255,255,.98);
    stroke-width: 3.5px;
    stroke-linejoin: round;
}

:root[data-bs-theme="dark"] .faq-grid--handing-single .faq-card .dhs-topnote[b-1rkpqghxrt],
:root[data-bs-theme="dark"] .faq-grid--handing-single .faq-card .dhs-topnote2[b-1rkpqghxrt] {
    paint-order: stroke fill;
    stroke: rgba(6,12,24,.88);
    stroke-width: 2.5px;
}

:root[data-bs-theme="dark"] .faq-grid--handing-single .faq-card .dhs-pt[b-1rkpqghxrt] {
    fill: #000 !important;
    font-weight: 800 !important;
    font-size: 9px !important;
    paint-order: stroke fill;
    stroke: #11263f;
    stroke-width: 1.8px;
}

:root[data-bs-theme="dark"] .faq-grid--handing-single .faq-card .dhs-pill--h[b-1rkpqghxrt] {
    fill: #dbeeff !important;
    stroke: #7fb4ef !important;
    opacity: 1 !important;
}

:root[data-bs-theme="dark"] .faq-grid--handing-single .faq-card .dhs-pill--l[b-1rkpqghxrt] {
    fill: #f6ead8 !important;
    stroke: #d0a56d !important;
    opacity: 1 !important;
}

/* === Cam lift panel readability / less clutter === */
.cam-view-grid[b-1rkpqghxrt] {
    align-items: stretch;
}

.cam-view-card[b-1rkpqghxrt] {
    min-width: 0;
}

.cam-view-card__title[b-1rkpqghxrt],
.cam-anim-toprow[b-1rkpqghxrt],
.cam-phase-strip[b-1rkpqghxrt],
.cam-phase-label[b-1rkpqghxrt],
.cam-state-strip[b-1rkpqghxrt] {
    font-family: "din-2014","DIN Pro","Inter",sans-serif;
}

.cam-view-card__title[b-1rkpqghxrt] {
    line-height: 1.15;
    letter-spacing: .02em;
}

.cam-view-card__sub[b-1rkpqghxrt] {
    max-width: 90ch;
}

.cam-svg-container[b-1rkpqghxrt] {
    padding: 12px !important;
}

.cam-svg-container--front .cam-svg[b-1rkpqghxrt],
.cam-svg-container--closeup .cam-svg[b-1rkpqghxrt] {
    width: 100%;
    height: auto;
}

.cam-phase-strip[b-1rkpqghxrt],
.cam-state-strip[b-1rkpqghxrt] {
    display: flex;
    justify-content: center;
    gap: .5rem;
    flex-wrap: wrap;
    margin-top: .5rem;
}

.cam-phase-pill[b-1rkpqghxrt],
.cam-state-pill[b-1rkpqghxrt] {
    border: 1px solid rgba(110,160,230,.35);
    background: rgba(35,58,94,.18);
    color: var(--bs-body-color);
    border-radius: 999px;
    padding: .3rem .65rem;
    font-size: .82rem;
    font-weight: 700;
}

    .cam-phase-pill.is-active[b-1rkpqghxrt],
    .cam-state-pill.is-active[b-1rkpqghxrt] {
        background: rgba(70,140,255,.22);
        border-color: rgba(120,180,255,.6);
        box-shadow: 0 0 0 1px rgba(120,180,255,.15) inset;
    }

/* ══════════════════════════════════════════════════════════════
   DISCOUNT TABLES — polished, on-brand light + dark
   ══════════════════════════════════════════════════════════════ */

/* ── STC group block wrapper ── */
.discount-stc-block[b-1rkpqghxrt] {
    margin-bottom: 1.5rem;
    position: relative;
}

    .discount-stc-block:last-child[b-1rkpqghxrt] {
        margin-bottom: 0;
    }

/* ── STC group header row ── */
.discount-stc-header[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    gap: .6rem;
    margin-bottom: .55rem;
}

/* ── STC pill — matches the faq-badge family, gold-accented ── */
.discount-stc-pill[b-1rkpqghxrt] {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    padding: .22rem .75rem .22rem .6rem;
    border-radius: 20px;
    font-size: .7rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    font-family: "din-2014","DIN Pro","Inter",sans-serif;
    /* light mode: gold tint matching faq-badge--gold */
    background: rgba(241,184,40,.14);
    color: #6b4200;
    border: 1px solid rgba(241,184,40,.38);
    box-shadow: 0 1px 4px rgba(241,184,40,.12);
}

    .discount-stc-pill[b-1rkpqghxrt]::before {
        content: '';
        display: inline-block;
        width: 6px;
        height: 6px;
        border-radius: 50%;
        background: #F1B828;
        flex-shrink: 0;
    }

:root[data-bs-theme="dark"] .discount-stc-pill[b-1rkpqghxrt] {
    background: rgba(241,184,40,.13);
    color: #F1B828;
    border-color: rgba(241,184,40,.30);
    box-shadow: 0 1px 6px rgba(241,184,40,.08);
}

/* ── The table itself ── */
.discount-ref-table[b-1rkpqghxrt] {
    border-collapse: separate;
    border-spacing: 0;
    width: 100%;
    font-family: "din-2014","DIN Pro","Inter",sans-serif;
    font-size: .88rem;
    /* crisp card-style border */
    border-radius: 12px;
    overflow: hidden;
    border: 1px solid rgba(0,40,85,.13);
    box-shadow: 0 4px 16px rgba(0,40,85,.09), 0 1px 3px rgba(0,40,85,.06);
}

    /* ── Header ── */
    .discount-ref-table thead tr[b-1rkpqghxrt] {
        background: linear-gradient(135deg, #002855 0%, #003d80 100%) !important;
    }

    .discount-ref-table thead th[b-1rkpqghxrt] {
        font-size: .7rem;
        font-weight: 800;
        letter-spacing: .08em;
        text-transform: uppercase;
        padding: .72rem 1rem;
        border: none !important;
        white-space: nowrap;
        /* subtle bottom separator */
        box-shadow: inset 0 -2px 0 rgba(241,184,40,.45);
    }

        /* ── Column alignment ── */
        .discount-ref-table thead th:first-child[b-1rkpqghxrt],
        .discount-ref-table tbody td:first-child[b-1rkpqghxrt] {
            text-align: left;
            padding-left: 1.1rem;
        }

        .discount-ref-table thead th:nth-child(2)[b-1rkpqghxrt],
        .discount-ref-table tbody td:nth-child(2)[b-1rkpqghxrt] {
            text-align: center;
        }

        .discount-ref-table thead th:last-child[b-1rkpqghxrt],
        .discount-ref-table tbody td:last-child[b-1rkpqghxrt] {
            text-align: right;
            padding-right: 1.1rem;
        }

    /* ── Body rows ── */
    .discount-ref-table tbody tr[b-1rkpqghxrt] {
        transition: background .14s ease;
    }

        .discount-ref-table tbody tr:nth-child(odd)[b-1rkpqghxrt] {
            background: #ffffff;
        }

        .discount-ref-table tbody tr:nth-child(even)[b-1rkpqghxrt] {
            background: #f2f6fc;
        }

        .discount-ref-table tbody tr:hover[b-1rkpqghxrt] {
            background: #e4edf9;
        }

    .discount-ref-table tbody td[b-1rkpqghxrt] {
        padding: .62rem 1rem;
        vertical-align: middle;
        border-top: 1px solid #dde6f0;
        border-bottom: none;
        color: #1a2840;
    }

        /* ── Range column: left accent stripe per row ── */
        .discount-ref-table tbody td:first-child[b-1rkpqghxrt] {
            font-size: .85rem;
            font-weight: 600;
            color: #1e3a5a;
            border-left: 3px solid transparent;
            padding-left: calc(1.1rem - 3px);
        }

    /* Gold stripe on every row — intensity steps down */
    .discount-ref-table tbody tr:nth-child(1) td:first-child[b-1rkpqghxrt] {
        border-left-color: #F1B828;
    }

    .discount-ref-table tbody tr:nth-child(2) td:first-child[b-1rkpqghxrt] {
        border-left-color: rgba(241,184,40,.65);
    }

    .discount-ref-table tbody tr:nth-child(3) td:first-child[b-1rkpqghxrt] {
        border-left-color: rgba(241,184,40,.40);
    }

    .discount-ref-table tbody tr:nth-child(4) td:first-child[b-1rkpqghxrt] {
        border-left-color: rgba(241,184,40,.22);
    }

    .discount-ref-table tbody tr:nth-child(n+5) td:first-child[b-1rkpqghxrt] {
        border-left-color: rgba(0,40,85,.12);
    }

    /* ── Multiplier / factor column ── */
    .discount-ref-table tbody td:nth-child(2)[b-1rkpqghxrt] {
        font-variant-numeric: tabular-nums;
    }

        .discount-ref-table tbody td:nth-child(2) strong[b-1rkpqghxrt] {
            display: inline-block;
            font-size: .98rem;
            font-weight: 800;
            color: #002855;
            /* pill treatment so the number pops */
            background: rgba(0,40,85,.07);
            border: 1px solid rgba(0,40,85,.13);
            border-radius: 6px;
            padding: .1rem .5rem;
            letter-spacing: .01em;
        }

    /* ── Example column ── */
    .discount-ref-table tbody td:last-child[b-1rkpqghxrt] {
        color: #6b7f96;
        font-size: .82rem;
        font-style: italic;
    }

/* ── Dark mode ── */
:root[data-bs-theme="dark"] .discount-ref-table[b-1rkpqghxrt] {
    border-color: rgba(80,144,232,.20);
    box-shadow: 0 6px 24px rgba(0,0,0,.45), 0 1px 0 rgba(255,255,255,.04) inset;
}

    :root[data-bs-theme="dark"] .discount-ref-table thead tr[b-1rkpqghxrt] {
        background: linear-gradient(135deg, #001e42 0%, #002d66 100%) !important;
    }

    :root[data-bs-theme="dark"] .discount-ref-table thead th[b-1rkpqghxrt] {
        box-shadow: inset 0 -2px 0 rgba(241,184,40,.50);
    }

    :root[data-bs-theme="dark"] .discount-ref-table tbody tr:nth-child(odd)[b-1rkpqghxrt] {
        background: #0f1d30;
    }

    :root[data-bs-theme="dark"] .discount-ref-table tbody tr:nth-child(even)[b-1rkpqghxrt] {
        background: #0b1626;
    }

    :root[data-bs-theme="dark"] .discount-ref-table tbody tr:hover[b-1rkpqghxrt] {
        background: #152640;
    }

    :root[data-bs-theme="dark"] .discount-ref-table tbody td[b-1rkpqghxrt] {
        border-top-color: rgba(80,144,232,.10);
        color: #c0d4ec;
    }

        :root[data-bs-theme="dark"] .discount-ref-table tbody td:first-child[b-1rkpqghxrt] {
            color: #90b4d8;
        }

    /* Gold stripes in dark mode */
    :root[data-bs-theme="dark"] .discount-ref-table tbody tr:nth-child(1) td:first-child[b-1rkpqghxrt] {
        border-left-color: #F1B828;
    }

    :root[data-bs-theme="dark"] .discount-ref-table tbody tr:nth-child(2) td:first-child[b-1rkpqghxrt] {
        border-left-color: rgba(241,184,40,.60);
    }

    :root[data-bs-theme="dark"] .discount-ref-table tbody tr:nth-child(3) td:first-child[b-1rkpqghxrt] {
        border-left-color: rgba(241,184,40,.35);
    }

    :root[data-bs-theme="dark"] .discount-ref-table tbody tr:nth-child(4) td:first-child[b-1rkpqghxrt] {
        border-left-color: rgba(241,184,40,.18);
    }

    :root[data-bs-theme="dark"] .discount-ref-table tbody tr:nth-child(n+5) td:first-child[b-1rkpqghxrt] {
        border-left-color: rgba(80,144,232,.18);
    }

    :root[data-bs-theme="dark"] .discount-ref-table tbody td:nth-child(2) strong[b-1rkpqghxrt] {
        color: #F1B828;
        background: rgba(241,184,40,.10);
        border-color: rgba(241,184,40,.22);
    }

    :root[data-bs-theme="dark"] .discount-ref-table tbody td:last-child[b-1rkpqghxrt] {
        color: #5a7a98;
    }

/* ── Callout notes ── */
.discount-callouts[b-1rkpqghxrt] {
    margin-top: 1.1rem;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: .85rem;
}

.discount-note[b-1rkpqghxrt] {
    border-radius: 12px;
    padding: .9rem 1rem .9rem 1.1rem;
    background: linear-gradient(145deg, #f0f4fa, #e8eef7);
    border: 1px solid rgba(0,40,85,.12);
    border-left: 3px solid rgba(0,40,85,.22);
    box-shadow: 0 2px 8px rgba(0,40,85,.06);
}

:root[data-bs-theme="dark"] .discount-note[b-1rkpqghxrt] {
    background: linear-gradient(145deg, rgba(16,32,58,.75), rgba(8,18,36,.85));
    border: 1px solid rgba(80,144,232,.18);
    border-left: 3px solid rgba(241,184,40,.45);
    box-shadow: 0 4px 14px rgba(0,0,0,.35);
}

.discount-note h4[b-1rkpqghxrt] {
    margin: 0 0 .4rem 0;
    font-size: .87rem;
    font-weight: 800;
    color: #002855;
    font-family: "din-2014","DIN Pro","Inter",sans-serif;
    letter-spacing: .01em;
}

:root[data-bs-theme="dark"] .discount-note h4[b-1rkpqghxrt] {
    color: #F1B828;
}

.discount-note p[b-1rkpqghxrt] {
    font-size: .84rem;
    color: #2a3f58;
    margin: 0;
    line-height: 1.55;
}

:root[data-bs-theme="dark"] .discount-note p[b-1rkpqghxrt] {
    color: #8cb4d4;
}

.discount-note p strong[b-1rkpqghxrt] {
    color: #002855;
    font-weight: 750;
}

:root[data-bs-theme="dark"] .discount-note p strong[b-1rkpqghxrt] {
    color: #a0c4e8;
}

/* ══════════════════════════════════════════════════════════════
   HINGE SECTION — Dark mode contrast fixes
   The faq-card background in dark = #151b22. Sub-cards that also
   use --fq-surface (#151b22) or --fq-surface-hi (#1a1f26) are
   invisible. These overrides give each layer a distinct step.
   ══════════════════════════════════════════════════════════════ */

/* ── Cam stage status bar ── */
[data-bs-theme="dark"] .cam-stage-bar[b-1rkpqghxrt] {
    background: #1e2b3f;
    border-color: rgba(80,144,232,0.22);
}

/* ── Play button — IAC navy instead of generic indigo ── */
[data-bs-theme="dark"] .cam-play-btn[b-1rkpqghxrt] {
    background: #1a4a8a;
    box-shadow: 0 2px 10px rgba(0,40,85,0.50);
}

    [data-bs-theme="dark"] .cam-play-btn:hover[b-1rkpqghxrt] {
        background: #1e5aa0;
    }

[data-bs-theme="dark"] .cam-play-btn--playing[b-1rkpqghxrt] {
    background: #2e3f55;
}

    [data-bs-theme="dark"] .cam-play-btn--playing:hover[b-1rkpqghxrt] {
        background: #374c66;
    }

/* ── Video panels — clearly visible border + slightly lighter bg ── */
[data-bs-theme="dark"] .cam-video-panel[b-1rkpqghxrt] {
    background: #1c2436;
    border-color: rgba(80,144,232,0.20);
    box-shadow: 0 2px 12px rgba(0,0,0,0.35);
}

[data-bs-theme="dark"] .cam-video-label[b-1rkpqghxrt] {
    color: #7eb8ff;
}

/* ── Progress track ── */
[data-bs-theme="dark"] .cam-progress-track[b-1rkpqghxrt] {
    background: #253045;
}

/* ── Highlight pills (Lifts seal / Drops seal / etc.) ── */
[data-bs-theme="dark"] .highlight-pill[b-1rkpqghxrt] {
    background: #1c2d45;
    border-color: rgba(80,144,232,0.28);
    color: #7eb8ff;
}

/* ── Maintenance outer wrapper ── */
.cam-maint[b-1rkpqghxrt] {
    background: #f0f3f8;
    border: 1px solid rgba(0,40,85,0.14);
    border-radius: 12px;
    box-shadow: 0 2px 10px rgba(0,40,85,0.06);
}

[data-bs-theme="dark"] .cam-maint[b-1rkpqghxrt],
[data-theme="dark"] .cam-maint[b-1rkpqghxrt] {
    background: #111a2a;
    border-color: rgba(80,144,232,0.24);
    box-shadow: 0 10px 26px rgba(0,0,0,0.38);
}

/* ── Maintenance cards (Intervals / Best Practices / Watch For) ── */
.cam-maint__card[b-1rkpqghxrt] {
    background: #ffffff;
    border: 1px solid rgba(0,40,85,0.14);
    border-left: 4px solid rgba(241,184,40,0.70);
    border-radius: 14px;
    box-shadow: 0 6px 18px rgba(0,40,85,0.08);
    transition: transform .14s ease, box-shadow .14s ease, border-color .14s ease;
}

    .cam-maint__card:hover[b-1rkpqghxrt] {
        transform: translateY(-1px);
        border-color: rgba(0,40,85,0.22);
        border-left-color: #F1B828;
        box-shadow: 0 12px 26px rgba(0,40,85,0.12);
    }

[data-bs-theme="dark"] .cam-maint__card[b-1rkpqghxrt],
[data-theme="dark"] .cam-maint__card[b-1rkpqghxrt] {
    background: linear-gradient(180deg, rgba(28,39,64,0.98), rgba(18,26,44,0.98));
    border-color: rgba(80,144,232,0.30);
    border-left: 4px solid rgba(241,184,40,0.70);
    box-shadow: 0 1px 0 rgba(255,255,255,0.05) inset, 0 14px 30px rgba(0,0,0,0.48);
}

    [data-bs-theme="dark"] .cam-maint__card:hover[b-1rkpqghxrt],
    [data-theme="dark"] .cam-maint__card:hover[b-1rkpqghxrt] {
        transform: translateY(-1px);
        border-color: rgba(80,144,232,0.46);
        border-left-color: rgba(241,184,40,0.92);
        box-shadow: 0 1px 0 rgba(255,255,255,0.06) inset, 0 18px 40px rgba(0,0,0,0.58);
    }

/* ── Finish reference section ── */
.cam-finish-ref[b-1rkpqghxrt] {
    background: #f6f8fc;
    border: 1px solid rgba(0,40,85,0.12);
    border-radius: 12px;
    box-shadow: 0 2px 10px rgba(0,40,85,0.06);
}

[data-bs-theme="dark"] .cam-finish-ref[b-1rkpqghxrt],
[data-theme="dark"] .cam-finish-ref[b-1rkpqghxrt] {
    background: #111a2a;
    border-color: rgba(80,144,232,0.24);
    box-shadow: 0 10px 26px rgba(0,0,0,0.38);
}

/* ── Finish chips (US26D / US32D / etc.) ── */
.cam-finish-chip[b-1rkpqghxrt] {
    background: #ffffff;
    border: 1px solid rgba(0,40,85,0.14);
    border-radius: 12px;
    box-shadow: 0 6px 16px rgba(0,40,85,0.10);
    transition: transform .14s ease, box-shadow .14s ease, border-color .14s ease;
}

    .cam-finish-chip:hover[b-1rkpqghxrt] {
        transform: translateY(-1px);
        border-color: rgba(0,40,85,0.22);
        box-shadow: 0 12px 24px rgba(0,40,85,0.14);
    }

[data-bs-theme="dark"] .cam-finish-chip[b-1rkpqghxrt],
[data-theme="dark"] .cam-finish-chip[b-1rkpqghxrt] {
    background: linear-gradient(180deg, rgba(28,39,64,0.98), rgba(18,26,44,0.98));
    border-color: rgba(80,144,232,0.30);
    box-shadow: 0 1px 0 rgba(255,255,255,0.05) inset, 0 14px 28px rgba(0,0,0,0.46);
}

    [data-bs-theme="dark"] .cam-finish-chip:hover[b-1rkpqghxrt],
    [data-theme="dark"] .cam-finish-chip:hover[b-1rkpqghxrt] {
        transform: translateY(-1px);
        border-color: rgba(80,144,232,0.46);
        box-shadow: 0 1px 0 rgba(255,255,255,0.06) inset, 0 18px 36px rgba(0,0,0,0.56);
    }

.cam-finish-chip__code[b-1rkpqghxrt] {
    color: #002855;
    font-weight: 750;
    letter-spacing: .01em;
}

.cam-finish-chip__desc[b-1rkpqghxrt] {
    color: #51657f;
    font-weight: 600;
}

[data-bs-theme="dark"] .cam-finish-chip__code[b-1rkpqghxrt],
[data-theme="dark"] .cam-finish-chip__code[b-1rkpqghxrt] {
    color: rgba(255,255,255,0.92);
}

[data-bs-theme="dark"] .cam-finish-chip__desc[b-1rkpqghxrt],
[data-theme="dark"] .cam-finish-chip__desc[b-1rkpqghxrt] {
    color: rgba(198,216,240,0.72);
}

/* ── Handing tabs — dark mode needs more punch on idle ── */
[data-bs-theme="dark"] .handing-tab[b-1rkpqghxrt],
[data-theme="dark"] .handing-tab[b-1rkpqghxrt] {
    background: linear-gradient(180deg, rgba(255,255,255,0.10), rgba(255,255,255,0.05));
    border-color: rgba(80,144,232,0.26);
    color: rgba(255,255,255,0.92);
    box-shadow: 0 8px 18px rgba(0,0,0,0.34);
}

    [data-bs-theme="dark"] .handing-tab:hover[b-1rkpqghxrt],
    [data-theme="dark"] .handing-tab:hover[b-1rkpqghxrt] {
        border-color: rgba(241,184,40,0.40);
        box-shadow: 0 12px 26px rgba(0,0,0,0.44);
    }
/* Base card polish (applies to all, helps education too) */
.faq-card[b-1rkpqghxrt] {
    border-radius: 14px;
    border: 1px solid rgba(0,40,85,0.12);
    background: #ffffff;
    padding: 1.75rem 1.75rem 1.5rem;
    box-shadow: 0 10px 26px rgba(0,40,85,0.10);
    transition: box-shadow .18s ease, border-color .18s ease, transform .18s ease, background .18s ease;
}

    .faq-card:hover[b-1rkpqghxrt] {
        transform: none; /* no jump */
        border-color: rgba(241,184,40,0.35);
        box-shadow: 0 16px 40px rgba(0,40,85,0.16);
    }

/* Resource link = button-like */
.faq-resource-link[b-1rkpqghxrt] {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    padding: .60rem .85rem;
    border-radius: 10px;
    border: 1px solid rgba(0,40,85,0.16);
    background: rgba(0,40,85,0.04);
    color: #002855;
    font-weight: 750;
    text-decoration: none;
    transition: background .16s ease, border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

    .faq-resource-link:hover[b-1rkpqghxrt] {
        background: rgba(0,40,85,0.07);
        border-color: rgba(0,40,85,0.26);
        box-shadow: 0 10px 22px rgba(0,40,85,0.12);
        transform: none; /* no jump */
    }

/* DARK MODE */
:root[data-bs-theme="dark"] .faq-card[b-1rkpqghxrt],
[data-bs-theme="dark"] .faq-card[b-1rkpqghxrt],
[data-theme="dark"] .faq-card[b-1rkpqghxrt] {
    background: linear-gradient(180deg, rgba(22,32,52,0.98), rgba(14,20,33,0.98));
    border-color: rgba(255,255,255,0.10);
    box-shadow: 0 1px 0 rgba(255,255,255,0.05) inset, 0 18px 44px rgba(0,0,0,0.58);
    color: rgba(255,255,255,0.90);
}

    :root[data-bs-theme="dark"] .faq-card:hover[b-1rkpqghxrt],
    [data-bs-theme="dark"] .faq-card:hover[b-1rkpqghxrt],
    [data-theme="dark"] .faq-card:hover[b-1rkpqghxrt] {
        transform: none; /* no jump */
        border-color: rgba(241,184,40,0.30);
        box-shadow: 0 1px 0 rgba(255,255,255,0.06) inset, 0 26px 60px rgba(0,0,0,0.70);
    }

/* Dark mode term/def readability */
:root[data-bs-theme="dark"] .faq-card__term[b-1rkpqghxrt],
[data-bs-theme="dark"] .faq-card__term[b-1rkpqghxrt],
[data-theme="dark"] .faq-card__term[b-1rkpqghxrt] {
    color: rgba(255,255,255,0.95);
}

:root[data-bs-theme="dark"] .faq-card__def[b-1rkpqghxrt],
[data-bs-theme="dark"] .faq-card__def[b-1rkpqghxrt],
[data-theme="dark"] .faq-card__def[b-1rkpqghxrt] {
    color: rgba(198,216,240,0.72);
}

/* Dark mode resource link button */
:root[data-bs-theme="dark"] .faq-resource-link[b-1rkpqghxrt],
[data-bs-theme="dark"] .faq-resource-link[b-1rkpqghxrt],
[data-theme="dark"] .faq-resource-link[b-1rkpqghxrt] {
    background: rgba(255,255,255,0.06);
    border-color: rgba(255,255,255,0.14);
    color: rgba(255,255,255,0.92);
}

    :root[data-bs-theme="dark"] .faq-resource-link:hover[b-1rkpqghxrt],
    [data-bs-theme="dark"] .faq-resource-link:hover[b-1rkpqghxrt],
    [data-theme="dark"] .faq-resource-link:hover[b-1rkpqghxrt] {
        background: rgba(241,184,40,0.10);
        border-color: rgba(241,184,40,0.26);
        box-shadow: 0 18px 40px rgba(0,0,0,0.60);
        transform: none; /* no jump */
    }

    :root[data-bs-theme="dark"] .faq-resource-link i[b-1rkpqghxrt],
    [data-bs-theme="dark"] .faq-resource-link i[b-1rkpqghxrt],
    [data-theme="dark"] .faq-resource-link i[b-1rkpqghxrt] {
        color: rgba(241,184,40,0.95);
    }

/* ══════════════════════════════════════════════════════════════
   HINGE SECTION — MOBILE RESPONSIVE
   These rules MUST be at the end of the file so they win the
   cascade over the bare .cam-maint__card / .cam-finish-chip
   rules above (which have no media query wrapper).
   ══════════════════════════════════════════════════════════════ */

/* Tablet: 2-col maintenance grid */
@media (max-width: 860px) {
    .cam-maint__grid[b-1rkpqghxrt] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Phablet / large phone: finish chips become a horizontal scroll row */
@@media (max-width: 767px) {
    .cam-maint[b-1rkpqghxrt] {
        padding: 1rem .85rem;
    }

    .cam-finish-grid[b-1rkpqghxrt] {
        display: flex !important;
        flex-wrap: nowrap !important;
        overflow-x: auto;
        gap: .6rem;
        padding-bottom: .4rem;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: thin;
    }

    .cam-finish-chip[b-1rkpqghxrt] {
        flex: 0 0 auto !important;
        width: 110px !important;
        min-height: auto !important;
        padding: .6rem .55rem !important;
    }
}

/* Phone: maintenance cards single column */
@media (max-width: 480px) {
    .cam-maint__grid[b-1rkpqghxrt] {
        grid-template-columns: 1fr !important;
        gap: .6rem;
    }

    .cam-finish-grid[b-1rkpqghxrt] {
        display: grid !important;
        flex-wrap: unset !important;
        overflow-x: unset !important;
        grid-template-columns: repeat(2, 1fr) !important;
        gap: .6rem;
    }

    .cam-finish-chip[b-1rkpqghxrt] {
        flex: unset !important;
        width: auto !important;
        min-height: auto !important;
        padding: .55rem .5rem !important;
    }

    .cam-maint[b-1rkpqghxrt] {
        padding: .85rem .75rem;
    }

    .cam-maint__card[b-1rkpqghxrt] {
        padding: .85rem .8rem !important;
        border-left-width: 3px !important;
    }

        .cam-maint__card h5[b-1rkpqghxrt] {
            font-size: .85rem;
            margin-bottom: .4rem;
        }

        .cam-maint__card li[b-1rkpqghxrt] {
            font-size: .82rem;
            line-height: 1.45;
        }

    .cam-maint__intro[b-1rkpqghxrt] {
        font-size: .84rem;
    }

    .cam-finish-chip__swatch[b-1rkpqghxrt] {
        height: 28px;
    }

    .cam-finish-chip__code[b-1rkpqghxrt] {
        font-size: .8rem;
    }

    .cam-finish-chip__desc[b-1rkpqghxrt] {
        font-size: .72rem;
    }
}

/* Very small phones */
@media (max-width: 360px) {
    .cam-maint[b-1rkpqghxrt] {
        padding: .7rem .6rem;
    }

    .cam-maint__card[b-1rkpqghxrt] {
        padding: .7rem .65rem !important;
    }
}

/* ══════════════════════════════════════════════════════════════
   UPDATES: Knowledge Base tag · Download PDF button ·
            Door Handing & Glazing reference tables
   Light + Dark mode
   ══════════════════════════════════════════════════════════════ */

/* ── 1. Knowledge Base tag — IAC gold/navy accent ─────────── */
/* Tag lives inside the dark blue hero — always use bright gold */
.faq-tag[b-1rkpqghxrt] {
    background: rgba(241,184,40,0.18);
    color: #F1B828;
    border-color: rgba(241,184,40,0.40);
}

:root[data-bs-theme="dark"] .faq-tag[b-1rkpqghxrt] {
    background: rgba(241,184,40,0.14);
    color: #F1B828;
    border-color: rgba(241,184,40,0.32);
}

/* ── 2. Download PDF — solid button, unmistakably clickable ──── */
.faq-pdf-btn[b-1rkpqghxrt] {
    background: linear-gradient(180deg, #e02030 0%, #b8101e 100%);
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-bottom-color: rgba(0, 0, 0, 0.28);
    border-radius: 8px;
    padding: .58rem 1.15rem;
    color: #fff;
    font-size: .84rem;
    font-weight: 750;
    letter-spacing: .025em;
    text-transform: uppercase;
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.18) inset, 0 6px 16px rgba(176, 16, 30, 0.42);
    backdrop-filter: none;
    transition: background .18s ease, box-shadow .18s ease, transform .1s ease, border-color .18s ease;
}

    .faq-pdf-btn:hover[b-1rkpqghxrt] {
        background: linear-gradient(180deg, #f02535 0%, #c81a28 100%);
        border-color: rgba(255, 255, 255, 0.30);
        transform: translateY(-2px);
        box-shadow: 0 1px 0 rgba(255, 255, 255, 0.22) inset, 0 10px 24px rgba(176, 16, 30, 0.52);
    }

    .faq-pdf-btn:active[b-1rkpqghxrt] {
        background: linear-gradient(180deg, #b01020 0%, #8a0c18 100%);
        transform: translateY(0);
        box-shadow: 0 1px 0 rgba(255, 255, 255, 0.10) inset, 0 3px 8px rgba(176, 16, 30, 0.38);
    }

:root[data-bs-theme="dark"] .faq-pdf-btn[b-1rkpqghxrt] {
    background: linear-gradient(180deg, #e82536 0%, #c01828 100%);
    border-color: rgba(255, 255, 255, 0.18);
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.14) inset, 0 6px 20px rgba(200, 24, 40, 0.50);
}

    :root[data-bs-theme="dark"] .faq-pdf-btn:hover[b-1rkpqghxrt] {
        background: linear-gradient(180deg, #f53040 0%, #d82030 100%);
        box-shadow: 0 1px 0 rgba(255, 255, 255, 0.18) inset, 0 12px 28px rgba(200, 24, 40, 0.62);
    }

/* ── 3. faq-ref-table — sleek polished tables (Handing + Glazing) ── */

/* Wrapper: card-like container */
.faq-table-wrap[b-1rkpqghxrt] {
    background: #ffffff;
    border: 1px solid rgba(0, 40, 85, 0.12);
    border-radius: 14px;
    box-shadow: 0 8px 24px rgba(0, 40, 85, 0.09);
    overflow: hidden;
    padding: 0;
}

:root[data-bs-theme="dark"] .faq-table-wrap[b-1rkpqghxrt] {
    background: linear-gradient(180deg, rgba(20, 30, 50, 0.98), rgba(12, 18, 32, 0.98));
    border-color: rgba(80, 144, 232, 0.20);
    box-shadow: 0 1px 0 rgba(255, 255, 255, 0.05) inset, 0 12px 32px rgba(0, 0, 0, 0.55);
}

/* Title bar inside the wrapper */
.faq-table-wrap .faq-table__title[b-1rkpqghxrt] {
    font-size: .78rem;
    font-weight: 750;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: #002855;
    padding: .85rem 1.1rem .65rem;
    margin: 0;
    border-bottom: 1px solid rgba(0, 40, 85, 0.10);
    background: rgba(0, 40, 85, 0.03);
    display: flex;
    align-items: center;
    gap: .4rem;
}

:root[data-bs-theme="dark"] .faq-table-wrap .faq-table__title[b-1rkpqghxrt] {
    color: #a4c4e7;
    border-bottom-color: rgba(80, 144, 232, 0.18);
    background: rgba(80, 144, 232, 0.05);
}

/* Second title inside same wrapper gets a top border separator */
.faq-table-wrap .faq-table__title.mt-3[b-1rkpqghxrt] {
    margin-top: 0 !important;
    border-top: 1px solid rgba(0, 40, 85, 0.10);
}

:root[data-bs-theme="dark"] .faq-table-wrap .faq-table__title.mt-3[b-1rkpqghxrt] {
    border-top-color: rgba(80, 144, 232, 0.18);
}

/* table-responsive inside wrapper */
.faq-table-wrap .table-responsive[b-1rkpqghxrt] {
    margin: 0;
    padding: 0;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
}

/* ─ faq-ref-table core ─ */
.faq-ref-table[b-1rkpqghxrt] {
    border-collapse: collapse;
    width: 100%;
    margin: 0 !important;
    font-size: .84rem;
    font-family: "din-2014","DIN Pro","DINPro",sans-serif;
    border: none;
}

    /* Override Bootstrap cell defaults */
    .faq-ref-table > :not(caption) > * > *[b-1rkpqghxrt] {
        padding: unset;
        background-color: transparent;
        border-bottom-width: 0;
        box-shadow: none;
    }

    /* THEAD */
    .faq-ref-table thead tr[b-1rkpqghxrt] {
        background: linear-gradient(180deg, #002855 0%, #003a78 100%);
    }

    .faq-ref-table thead th[b-1rkpqghxrt] {
        padding: .7rem 1rem;
        font-size: .70rem;
        font-weight: 750;
        letter-spacing: .07em;
        text-transform: uppercase;
        color: rgba(255, 255, 255, 0.90);
        border: none;
        border-right: 1px solid rgba(255, 255, 255, 0.10);
        white-space: nowrap;
        text-align: center;
        vertical-align: middle;
        background: transparent;
    }

        .faq-ref-table thead th:first-child[b-1rkpqghxrt] {
            border-left: 3px solid #F1B828;
        }

        .faq-ref-table thead th:last-child[b-1rkpqghxrt] {
            border-right: none;
        }

:root[data-bs-theme="dark"] .faq-ref-table thead tr[b-1rkpqghxrt] {
    background: linear-gradient(180deg, #0a2040 0%, #112d5a 100%);
}

:root[data-bs-theme="dark"] .faq-ref-table thead th[b-1rkpqghxrt] {
    color: rgba(200, 225, 255, 0.92);
    border-right-color: rgba(80, 144, 232, 0.18);
}

    :root[data-bs-theme="dark"] .faq-ref-table thead th:first-child[b-1rkpqghxrt] {
        border-left-color: #F1B828;
    }

/* TBODY rows */
.faq-ref-table tbody tr[b-1rkpqghxrt] {
    border-bottom: 1px solid rgba(0, 40, 85, 0.07);
    transition: background .14s ease;
}

    .faq-ref-table tbody tr:last-child[b-1rkpqghxrt] {
        border-bottom: none;
    }

    .faq-ref-table tbody tr:nth-child(odd)[b-1rkpqghxrt] {
        background: #ffffff;
    }

    .faq-ref-table tbody tr:nth-child(even)[b-1rkpqghxrt] {
        background: rgba(0, 40, 85, 0.028);
    }

    .faq-ref-table tbody tr:hover[b-1rkpqghxrt] {
        background: rgba(241, 184, 40, 0.08) !important;
    }

:root[data-bs-theme="dark"] .faq-ref-table tbody tr[b-1rkpqghxrt] {
    border-bottom-color: rgba(80, 144, 232, 0.10);
}

    :root[data-bs-theme="dark"] .faq-ref-table tbody tr:nth-child(odd)[b-1rkpqghxrt] {
        background: rgba(255, 255, 255, 0.028);
    }

    :root[data-bs-theme="dark"] .faq-ref-table tbody tr:nth-child(even)[b-1rkpqghxrt] {
        background: rgba(255, 255, 255, 0.048);
    }

    :root[data-bs-theme="dark"] .faq-ref-table tbody tr:hover[b-1rkpqghxrt] {
        background: rgba(241, 184, 40, 0.07) !important;
    }

/* TBODY cells */
.faq-ref-table tbody td[b-1rkpqghxrt] {
    padding: .65rem 1rem;
    color: var(--fq-text);
    border: none;
    border-right: 1px solid rgba(0, 40, 85, 0.06);
    text-align: center;
    vertical-align: middle;
    font-size: .84rem;
    line-height: 1.4;
}

    .faq-ref-table tbody td:last-child[b-1rkpqghxrt] {
        border-right: none;
    }

    /* Gold left accent on first column */
    .faq-ref-table tbody td:first-child[b-1rkpqghxrt] {
        border-left: 3px solid rgba(241, 184, 40, 0.40);
        font-weight: 750;
    }

:root[data-bs-theme="dark"] .faq-ref-table tbody td[b-1rkpqghxrt] {
    color: rgba(220, 234, 250, 0.88);
    border-right-color: rgba(80, 144, 232, 0.08);
}

    :root[data-bs-theme="dark"] .faq-ref-table tbody td:first-child[b-1rkpqghxrt] {
        border-left-color: rgba(241, 184, 40, 0.55);
    }
/* ══════════════════════════════════════════════════════════════════════════════
   Help_razor.css  —  ADDITIONS
   Paste these blocks into the existing Help_razor.css file.
   All existing rules are unchanged.
   ══════════════════════════════════════════════════════════════════════════════ */


/* ── Section icon variant ── */
.faq-section__icon-wrap--teal[b-1rkpqghxrt] {
    background: rgba(13,122,110,.12);
    color: #0D7A6E;
}

[data-bs-theme="dark"] .faq-section__icon-wrap--teal[b-1rkpqghxrt] {
    background: rgba(13,122,110,.22);
    color: #2ad4c0;
}


/* ══════════════════════════════════════════════════════════════════════════════
   SPLASH OVERLAY
   ══════════════════════════════════════════════════════════════════════════════ */

/* ══════════════════════════════════════════════════════════════════════════
   PRODUCT SELECTION SPLASH  (full-page, replaces old overlay)
   ══════════════════════════════════════════════════════════════════════════ */

.faq-select-splash[b-1rkpqghxrt] {
    min-height: calc(100vh - 80px);
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 3.5rem 1.5rem 2rem;
    position: relative;
    overflow: hidden;
}

/* Ambient rings */
.faq-splash-ring[b-1rkpqghxrt] {
    position: absolute;
    border-radius: 50%;
    pointer-events: none;
}

.faq-splash-ring--1[b-1rkpqghxrt] {
    width: 700px;
    height: 700px;
    background: none;
    top: -200px;
    right: -200px;
}

.faq-splash-ring--2[b-1rkpqghxrt] {
    width: 500px;
    height: 500px;
    background: none;
    bottom: -100px;
    left: -100px;
}

:root[data-bs-theme="dark"] .faq-splash-ring--1[b-1rkpqghxrt] {
    background: none;
}

:root[data-bs-theme="dark"] .faq-splash-ring--2[b-1rkpqghxrt] {
    background: none;
}

/* Masthead */
.faq-select-splash__top[b-1rkpqghxrt] {
    text-align: center;
    max-width: 560px;
    margin-bottom: 3rem;
    position: relative;
    z-index: 1;
    animation: splashFadeDown-b-1rkpqghxrt .3s ease both;
}

@keyframes splashFadeDown-b-1rkpqghxrt {
    from {
        opacity: 0;
        transform: translateY(-12px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.faq-select-splash__badge[b-1rkpqghxrt] {
    display: inline-flex;
    align-items: center;
    background: rgba(241,184,40,.14);
    color: #c49000;
    border: 1px solid rgba(241,184,40,.30);
    border-radius: 999px;
    font-size: .75rem;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
    padding: .3rem .9rem;
    margin-bottom: 1rem;
}

:root[data-bs-theme="dark"] .faq-select-splash__badge[b-1rkpqghxrt] {
    color: #F1B828;
    background: rgba(241,184,40,.10);
}

.faq-select-splash__heading[b-1rkpqghxrt] {
    font-size: clamp(1.7rem, 4vw, 2.4rem);
    font-weight: 900;
    color: #002855;
    letter-spacing: -.02em;
    line-height: 1.15;
    margin: 0 0 .75rem;
}

:root[data-bs-theme="dark"] .faq-select-splash__heading[b-1rkpqghxrt] {
    color: #e8edf2;
}

.faq-select-splash__sub[b-1rkpqghxrt] {
    color: var(--fq-muted);
    font-size: .96rem;
    line-height: 1.55;
    margin: 0;
}

/* ── Product cards grid ── */
.faq-select-splash__grid[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 20px;
    width: 100%;
    max-width: 1480px;
    position: relative;
    z-index: 1;
}

/* ── Individual product card ── */
.faq-pcard[b-1rkpqghxrt] {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0;
    background: var(--fq-surface, #fff);
    border: 1.5px solid var(--fq-border, #d7dde3);
    border-radius: 1rem;
    padding: 1.6rem 1.5rem 1.2rem;
    cursor: pointer;
    text-align: left;
    overflow: hidden;
    transition: border-color .2s, box-shadow .22s, transform .18s;
    box-shadow: 0 2px 8px rgba(0,0,0,.05);
    animation: splashCardIn-b-1rkpqghxrt .32s cubic-bezier(.22,.9,.38,1) both;
}

    .faq-pcard:nth-child(1)[b-1rkpqghxrt] {
        animation-delay: .04s;
    }

    .faq-pcard:nth-child(2)[b-1rkpqghxrt] {
        animation-delay: .09s;
    }

    .faq-pcard:nth-child(3)[b-1rkpqghxrt] {
        animation-delay: .14s;
    }

    .faq-pcard:nth-child(4)[b-1rkpqghxrt] {
        animation-delay: .19s;
    }

    .faq-pcard:nth-child(5)[b-1rkpqghxrt] {
        animation-delay: .24s;
    }

@keyframes splashCardIn-b-1rkpqghxrt {
    from {
        opacity: 0;
        transform: translateY(20px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.faq-pcard:hover[b-1rkpqghxrt] {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(0,0,0,.06);
}

/* Per-product accent colors */
.faq-pcard--doors[b-1rkpqghxrt] {
    --pcard-accent: #1E4D78;
    --pcard-glow: rgba(30,77,120,.10);
}

.faq-pcard--windows[b-1rkpqghxrt] {
    --pcard-accent: #c49000;
    --pcard-glow: rgba(196,144,0,.09);
}

.faq-pcard--absorption[b-1rkpqghxrt] {
    --pcard-accent: #c49000;
    --pcard-glow: rgba(196,144,0,.08);
}

.faq-pcard--shiploose[b-1rkpqghxrt] {
    --pcard-accent: #6B3FA0;
    --pcard-glow: rgba(107,63,160,.10);
}

.faq-pcard--edu[b-1rkpqghxrt] {
    --pcard-accent: #0057FF;
    --pcard-glow: rgba(0,87,255,.08);
}

.faq-pcard:hover[b-1rkpqghxrt] {
    border-color: var(--pcard-accent);
}

/* Glow layer */
.faq-pcard__glow[b-1rkpqghxrt] {
    position: absolute;
    inset: 0;
    background: radial-gradient(ellipse at 20% 20%, var(--pcard-glow), transparent 65%);
    opacity: 0;
    transition: opacity .25s;
    pointer-events: none;
}

.faq-pcard:hover .faq-pcard__glow[b-1rkpqghxrt] {
    opacity: 0;
}

/* Icon */
.faq-pcard__icon-wrap[b-1rkpqghxrt] {
    width: 48px;
    height: 48px;
    border-radius: .75rem;
    background: var(--pcard-accent);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 1.35rem;
    margin-bottom: 1rem;
    flex-shrink: 0;
    box-shadow: 0 4px 12px color-mix(in srgb, var(--pcard-accent) 35%, transparent);
}

/* Body */
.faq-pcard__body[b-1rkpqghxrt] {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: .3rem;
}

.faq-pcard__label[b-1rkpqghxrt] {
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: .09em;
    text-transform: uppercase;
    color: var(--fq-muted);
}

.faq-pcard__name[b-1rkpqghxrt] {
    display: block;
    font-size: 1.12rem;
    font-weight: 800;
    color: var(--fq-text);
    line-height: 1.2;
}

.faq-pcard__desc[b-1rkpqghxrt] {
    font-size: .84rem;
    color: var(--fq-muted);
    line-height: 1.5;
    margin: .3rem 0 .6rem;
}

.faq-pcard__tags[b-1rkpqghxrt] {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
    list-style: none;
    padding: 0;
    margin: 0 0 1rem;
}

    .faq-pcard__tags li[b-1rkpqghxrt] {
        font-size: .7rem;
        font-weight: 600;
        letter-spacing: .04em;
        padding: .18rem .6rem;
        border-radius: 999px;
        background: color-mix(in srgb, var(--pcard-accent) 10%, transparent);
        color: var(--pcard-accent);
        border: 1px solid color-mix(in srgb, var(--pcard-accent) 22%, transparent);
    }

/* CTA row */
.faq-pcard__cta[b-1rkpqghxrt] {
    margin-top: auto;
    display: inline-flex;
    align-items: center;
    font-size: .85rem;
    font-weight: 700;
    color: var(--pcard-accent);
    gap: .2rem;
    transition: gap .15s;
}

.faq-pcard:hover .faq-pcard__cta[b-1rkpqghxrt] {
    gap: .45rem;
}

/* Footer */
.faq-select-splash__footer[b-1rkpqghxrt] {
    margin-top: 2rem;
    position: relative;
    z-index: 1;
}

/* ── Dark mode: product card backgrounds, borders, text ── */
:root[data-bs-theme="dark"] .faq-pcard[b-1rkpqghxrt] {
    background: rgba(255,255,255,.04);
    border-color: rgba(255,255,255,.10);
    box-shadow: 0 2px 12px rgba(0,0,0,.35);
}

    :root[data-bs-theme="dark"] .faq-pcard:hover[b-1rkpqghxrt] {
        box-shadow: 0 8px 24px rgba(0,0,0,.22);
        border-color: var(--pcard-accent);
    }

--pcard-accent: #7cb9f4;
--pcard-glow: rgba(124,185,244,.12);[b-1rkpqghxrt]
}

:root[data-bs-theme="dark"] .faq-pcard--windows[b-1rkpqghxrt] {
    --pcard-accent: #F1B828;
    --pcard-glow: rgba(241,184,40,.10);
}

:root[data-bs-theme="dark"] .faq-pcard--absorption[b-1rkpqghxrt] {
    --pcard-accent: #F1B828;
    --pcard-glow: rgba(241,184,40,.10);
}

:root[data-bs-theme="dark"] .faq-pcard--shiploose[b-1rkpqghxrt] {
    --pcard-accent: #b39ddb;
    --pcard-glow: rgba(179,157,219,.12);
}

:root[data-bs-theme="dark"] .faq-pcard--edu[b-1rkpqghxrt] {
    --pcard-accent: #6ca3ff;
    --pcard-glow: rgba(108,163,255,.10);
}

/* Tag chips dark mode — use CSS variables already set per-card */
:root[data-bs-theme="dark"] .faq-pcard__tags li[b-1rkpqghxrt] {
    background: rgba(255,255,255,.06);
    color: var(--pcard-accent);
    border-color: rgba(255,255,255,.10);
}

/* ── Return to menu button (in hero) ── */
.faq-hero__toprow[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: .5rem;
    margin-bottom: .75rem;
}

.faq-return-btn[b-1rkpqghxrt] {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    background: rgba(255,255,255,.14);
    border: 1px solid rgba(255,255,255,.28);
    border-radius: 999px;
    color: rgba(255,255,255,.9);
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .04em;
    padding: .32rem .9rem;
    cursor: pointer;
    transition: background .18s, border-color .18s;
    font-family: inherit;
}

    .faq-return-btn:hover[b-1rkpqghxrt] {
        background: rgba(255,255,255,.22);
        border-color: rgba(255,255,255,.5);
    }

/* ── Top-level nav pill color variants ── */
.faq-nav__pill--teal[b-1rkpqghxrt] {
    color: #002855;
    border-color: rgba(0,40,85,.20);
    background: linear-gradient(180deg, rgba(0,40,85,.06), rgba(255,255,255,.92));
}

    .faq-nav__pill--teal:hover[b-1rkpqghxrt],
    .faq-nav__pill--teal.active[b-1rkpqghxrt] {
        background: #002855;
        color: #F1B828;
        border-color: #002855;
    }

.faq-nav__pill--edu[b-1rkpqghxrt] {
    color: #0057FF;
    border-color: rgba(0,87,255,.22);
    background: linear-gradient(180deg, rgba(0,87,255,.05), rgba(255,255,255,.92));
}

    .faq-nav__pill--edu:hover[b-1rkpqghxrt],
    .faq-nav__pill--edu.active[b-1rkpqghxrt] {
        background: #0057FF;
        color: #fff;
        border-color: #0057FF;
    }

:root[data-bs-theme="dark"] .faq-nav__pill--teal[b-1rkpqghxrt] {
    color: #5b9bd5;
    border-color: rgba(91,155,213,.25);
    background: rgba(91,155,213,.08);
}

    :root[data-bs-theme="dark"] .faq-nav__pill--teal:hover[b-1rkpqghxrt],
    :root[data-bs-theme="dark"] .faq-nav__pill--teal.active[b-1rkpqghxrt] {
        background: #1E4D78;
        color: #F1B828;
        border-color: #1E4D78;
    }

:root[data-bs-theme="dark"] .faq-nav__pill--edu[b-1rkpqghxrt] {
    color: #6ca3ff;
    border-color: rgba(108,163,255,.22);
    background: rgba(108,163,255,.07);
}

    :root[data-bs-theme="dark"] .faq-nav__pill--edu:hover[b-1rkpqghxrt],
    :root[data-bs-theme="dark"] .faq-nav__pill--edu.active[b-1rkpqghxrt] {
        background: #2563eb;
        color: #fff;
        border-color: #2563eb;
    }

/* ── Sub-navigation bar (shared wrapper) ── */
.faq-subnav[b-1rkpqghxrt] {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
    padding: .45rem .55rem;
    background: linear-gradient(90deg, rgba(0,40,85,0.06) 0%, rgba(241,184,40,0.06) 100%);
    border: 1px solid rgba(241,184,40,0.20);
    border-radius: 14px;
}

:root[data-bs-theme="dark"] .faq-subnav[b-1rkpqghxrt] {
    background: linear-gradient(90deg, rgba(0,40,85,0.18) 0%, rgba(241,184,40,0.08) 100%);
    border-color: rgba(241,184,40,0.16);
}

/* ── Subnav pills — shared base ── */
.faq-subnav__pill[b-1rkpqghxrt] {
    appearance: none;
    -webkit-appearance: none;
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    color: rgba(0,40,85,0.80);
    border: 1px solid rgba(241,184,40,0.28);
    background: linear-gradient(180deg, rgba(241,184,40,0.06), rgba(255,255,255,0.92));
    font-family: inherit;
    font-size: .82rem;
    font-weight: 700;
    padding: .38rem .9rem;
    cursor: pointer;
    transition: background .16s, color .16s, border-color .16s, box-shadow .16s;
    white-space: nowrap;
}

    .faq-subnav__pill:hover[b-1rkpqghxrt] {
        background: linear-gradient(180deg, rgba(241,184,40,0.14), rgba(255,255,255,0.96));
        border-color: rgba(241,184,40,0.45);
        color: #002855;
    }

    .faq-subnav__pill.active[b-1rkpqghxrt] {
        background: linear-gradient(180deg, #002855, #003d7a);
        border-color: #002855;
        color: #F1B828;
        box-shadow: 0 2px 8px rgba(0,40,85,0.28);
    }

:root[data-bs-theme="dark"] .faq-subnav__pill[b-1rkpqghxrt] {
    color: rgba(232,237,242,0.80);
    border-color: rgba(241,184,40,0.20);
    background: linear-gradient(180deg, rgba(241,184,40,0.07), rgba(30,40,52,0.80));
}

    :root[data-bs-theme="dark"] .faq-subnav__pill:hover[b-1rkpqghxrt] {
        background: linear-gradient(180deg, rgba(241,184,40,0.14), rgba(30,40,52,0.95));
        border-color: rgba(241,184,40,0.38);
        color: #ffe8a3;
    }

    :root[data-bs-theme="dark"] .faq-subnav__pill.active[b-1rkpqghxrt] {
        background: linear-gradient(180deg, #1e3a6e, #0d1e3a);
        border-color: rgba(241,184,40,0.55);
        color: #F1B828;
        box-shadow: 0 2px 10px rgba(0,0,0,0.40);
    }

/* ── Doors subnav — navy accent ── */
.faq-subnav--doors .faq-subnav__pill--doors:hover[b-1rkpqghxrt] {
    background: rgba(0,40,85,.08);
    color: #002855;
}

.faq-subnav--doors .faq-subnav__pill--doors.active[b-1rkpqghxrt] {
    background: #002855;
    border-color: #002855;
    color: #fff;
    box-shadow: 0 2px 8px rgba(0,40,85,.28);
}

:root[data-bs-theme="dark"] .faq-subnav--doors .faq-subnav__pill--doors:hover[b-1rkpqghxrt] {
    background: rgba(91,155,213,.12);
    color: #5b9bd5;
}

:root[data-bs-theme="dark"] .faq-subnav--doors .faq-subnav__pill--doors.active[b-1rkpqghxrt] {
    background: #1E4D78;
    border-color: #5b9bd5;
    color: #fff;
}

/* ── Windows subnav — IAC navy/gold accent (matches doors) ── */
.faq-subnav--windows[b-1rkpqghxrt] {
    /* Inherits base .faq-subnav navy/gold gradient — no override needed */
}

.faq-subnav__pill--windows[b-1rkpqghxrt] {
    color: rgba(0,40,85,0.80);
    border-color: rgba(241,184,40,0.28);
    background: linear-gradient(180deg, rgba(241,184,40,0.06), rgba(255,255,255,0.92));
}

    .faq-subnav__pill--windows:hover[b-1rkpqghxrt] {
        background: rgba(0,40,85,.08) !important;
        border-color: rgba(0,40,85,0.22) !important;
        color: #002855 !important;
    }

    .faq-subnav__pill--windows.active[b-1rkpqghxrt] {
        background: #002855 !important;
        border-color: #002855 !important;
        color: #F1B828 !important;
        box-shadow: 0 2px 8px rgba(0,40,85,0.28) !important;
    }

:root[data-bs-theme="dark"] .faq-subnav--windows[b-1rkpqghxrt] {
    /* Inherits base dark .faq-subnav — no override needed */
}

:root[data-bs-theme="dark"] .faq-subnav__pill--windows[b-1rkpqghxrt] {
    color: rgba(232,237,242,0.80);
    border-color: rgba(241,184,40,0.20);
    background: linear-gradient(180deg, rgba(241,184,40,0.07), rgba(30,40,52,0.80));
}

    :root[data-bs-theme="dark"] .faq-subnav__pill--windows:hover[b-1rkpqghxrt] {
        background: rgba(91,155,213,.12) !important;
        border-color: rgba(241,184,40,0.38) !important;
        color: #ffe8a3 !important;
    }

    :root[data-bs-theme="dark"] .faq-subnav__pill--windows.active[b-1rkpqghxrt] {
        background: linear-gradient(180deg, #1E4D78, #0d1e3a) !important;
        border-color: rgba(241,184,40,0.55) !important;
        color: #F1B828 !important;
        box-shadow: 0 2px 10px rgba(0,0,0,0.40) !important;
    }

@media (max-width: 600px) {
    .faq-select-splash__grid[b-1rkpqghxrt] {
        grid-template-columns: 1fr;
    }

    .faq-subnav[b-1rkpqghxrt] {
        gap: .3rem;
        overflow-x: auto;
        flex-wrap: nowrap;
        padding: .5rem .6rem;
    }

    .faq-subnav__pill[b-1rkpqghxrt] {
        font-size: .75rem;
        padding: .3rem .7rem;
    }
}


/* ══════════════════════════════════════════════════════════════════════════════
   WINDOWS FAQ — shared card variant
   ══════════════════════════════════════════════════════════════════════════════ */

.faq-card--win[b-1rkpqghxrt] {
    border-top: 3px solid #002855;
}

[data-bs-theme="dark"] .faq-card--win[b-1rkpqghxrt] {
    border-top-color: #5b9bd5;
}

/* Intro row alert */
.faq-win-intro-row .faq-alert[b-1rkpqghxrt] {
    border-left: 4px solid #002855;
}


/* ── Highlight pills for Windows ── */
.faq-win-highlights[b-1rkpqghxrt] {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
}

.faq-win-highlight[b-1rkpqghxrt] {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    background: rgba(0,40,85,.08);
    border: 1px solid rgba(0,40,85,.18);
    border-radius: .45rem;
    padding: .35rem .75rem;
    font-size: .82rem;
}

[data-bs-theme="dark"] .faq-win-highlight[b-1rkpqghxrt] {
    background: rgba(91,155,213,.10);
    border-color: rgba(91,155,213,.22);
}

.faq-win-highlight__label[b-1rkpqghxrt] {
    font-weight: 700;
    color: #002855;
    white-space: nowrap;
}

[data-bs-theme="dark"] .faq-win-highlight__label[b-1rkpqghxrt] {
    color: #5b9bd5;
}

.faq-win-highlight__value[b-1rkpqghxrt] {
    color: var(--fq-text);
}


/* ── C-Class vs All-Con comparison grid ── */
.faq-win-compare-grid[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

@media (max-width: 640px) {
    .faq-win-compare-grid[b-1rkpqghxrt] {
        grid-template-columns: 1fr;
    }
}

.faq-win-compare-col[b-1rkpqghxrt] {
    border-radius: .65rem;
    overflow: hidden;
    border: 1px solid var(--fq-border, #d7dde3);
}

.faq-win-compare__header[b-1rkpqghxrt] {
    padding: .65rem 1rem;
    font-weight: 800;
    font-size: .88rem;
    letter-spacing: .03em;
    color: #fff;
}

.faq-win-compare-col--blue .faq-win-compare__header[b-1rkpqghxrt] {
    background: #002855;
}

.faq-win-compare-col--teal .faq-win-compare__header[b-1rkpqghxrt] {
    background: #002855;
}

.faq-win-compare__list[b-1rkpqghxrt] {
    list-style: none;
    padding: .75rem 1rem;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: .4rem;
}

    .faq-win-compare__list li[b-1rkpqghxrt] {
        font-size: .84rem;
        color: var(--fq-text);
        border-bottom: 1px solid var(--fq-border, #d7dde3);
        padding-bottom: .35rem;
    }

        .faq-win-compare__list li:last-child[b-1rkpqghxrt] {
            border-bottom: none;
        }

.faq-win-compare__ratings[b-1rkpqghxrt] {
    background: var(--fq-surface-hi, #f5f6f8);
    border-radius: .35rem;
    padding: .4rem .6rem !important;
    margin-top: .2rem;
}

.faq-win-yes[b-1rkpqghxrt] {
    color: #1a7a3a;
    font-weight: 700;
}

.faq-win-no[b-1rkpqghxrt] {
    color: #c05000;
    font-weight: 700;
}

[data-bs-theme="dark"] .faq-win-yes[b-1rkpqghxrt] {
    color: #4ade80;
}

[data-bs-theme="dark"] .faq-win-no[b-1rkpqghxrt] {
    color: #f07070;
}


/* ── STC selector tabs (windows) ── */
.faq-win-stc-tabs[b-1rkpqghxrt] {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
}

.faq-win-stc-tab[b-1rkpqghxrt] {
    background: var(--fq-surface-hi, #f5f6f8);
    border: 1px solid var(--fq-border, #d7dde3);
    border-radius: .45rem;
    padding: .35rem .85rem;
    font-size: .84rem;
    font-weight: 700;
    color: var(--fq-muted);
    cursor: pointer;
    transition: background .15s, color .15s, border-color .15s;
}

    .faq-win-stc-tab:hover[b-1rkpqghxrt] {
        background: rgba(0,40,85,.08);
        border-color: #002855;
        color: #002855;
    }

    .faq-win-stc-tab.active[b-1rkpqghxrt] {
        background: #002855;
        border-color: #002855;
        color: #F1B828;
    }

[data-bs-theme="dark"] .faq-win-stc-tab.active[b-1rkpqghxrt] {
    background: #1E4D78;
    border-color: #5b9bd5;
    color: #F1B828;
}

/* win stc detail meta row */
.win-stc-detail__meta[b-1rkpqghxrt] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .55rem .85rem;
    margin-bottom: .75rem;
}

.win-stc-detail__spec[b-1rkpqghxrt] {
    font-size: .82rem;
    color: var(--fq-muted);
    background: var(--fq-surface-hi, #f5f6f8);
    border: 1px solid var(--fq-border, #d7dde3);
    border-radius: .4rem;
    padding: .22rem .65rem;
}

    .win-stc-detail__spec strong[b-1rkpqghxrt] {
        color: var(--fq-text);
    }

/* Navy bar chart variant (windows) */
.stc-tl-bar-wrap--teal .stc-tl-bar--teal[b-1rkpqghxrt] {
    background: linear-gradient(to top, #002855 0%, #1E4D78 100%);
}

[data-bs-theme="dark"] .stc-tl-bar-wrap--teal .stc-tl-bar--teal[b-1rkpqghxrt] {
    background: linear-gradient(to top, #2ad4c0 0%, #0ff 100%);
}


/* ── Glazing options grid ── */
.faq-win-glaze-grid[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: .75rem;
}

.faq-win-glaze-card[b-1rkpqghxrt] {
    background: var(--fq-surface-hi, #f5f6f8);
    border: 1px solid var(--fq-border, #d7dde3);
    border-radius: .65rem;
    padding: 1rem;
}

.faq-win-glaze-card__icon[b-1rkpqghxrt] {
    font-size: 1.4rem;
    color: #0D7A6E;
    margin-bottom: .45rem;
}

[data-bs-theme="dark"] .faq-win-glaze-card__icon[b-1rkpqghxrt] {
    color: #2ad4c0;
}

.faq-win-glaze-card__title[b-1rkpqghxrt] {
    font-weight: 800;
    font-size: .88rem;
    color: var(--fq-text);
    margin-bottom: .35rem;
    display: block;
}

.faq-win-glaze-card p[b-1rkpqghxrt] {
    font-size: .8rem;
    color: var(--fq-muted);
    margin: 0;
    line-height: 1.5;
}


/* ── Application chips ── */
.faq-win-app-grid[b-1rkpqghxrt] {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
}

.faq-win-app-chip[b-1rkpqghxrt] {
    display: inline-flex;
    align-items: center;
    gap: .3rem;
    background: rgba(0,40,85,.06);
    border: 1px solid rgba(0,40,85,.14);
    border-radius: 2rem;
    padding: .32rem .9rem;
    font-size: .8rem;
    font-weight: 600;
    color: var(--fq-text);
}

[data-bs-theme="dark"] .faq-win-app-chip[b-1rkpqghxrt] {
    background: rgba(155,198,255,.08);
    border-color: rgba(155,198,255,.18);
}


/* ── Installation items ── */
.faq-win-install-grid[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
    gap: .85rem;
}

.faq-win-install-item[b-1rkpqghxrt] {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    background: var(--fq-surface-hi, #f5f6f8);
    border: 1px solid var(--fq-border, #d7dde3);
    border-radius: .65rem;
    padding: .85rem 1rem;
}

.faq-win-install-item__icon[b-1rkpqghxrt] {
    font-size: 1.25rem;
    color: #6B3FA0;
    flex-shrink: 0;
    margin-top: .1rem;
}

.faq-win-install-item strong[b-1rkpqghxrt] {
    display: block;
    font-size: .86rem;
    font-weight: 700;
    color: var(--fq-text);
    margin-bottom: .2rem;
}

.faq-win-install-item p[b-1rkpqghxrt] {
    font-size: .8rem;
    color: var(--fq-muted);
    margin: 0;
    line-height: 1.5;
}


/* ── Tip alert variant (if not already in your file) ── */
.faq-alert--tip[b-1rkpqghxrt] {
    background: rgba(13,122,110,.07);
    border-left: 4px solid #0D7A6E;
    border-radius: 0 .55rem .55rem 0;
    display: flex;
    align-items: flex-start;
    gap: .65rem;
    padding: .75rem 1rem;
    font-size: .84rem;
    color: var(--fq-text);
    line-height: 1.5;
}

[data-bs-theme="dark"] .faq-alert--tip[b-1rkpqghxrt] {
    background: rgba(42,212,192,.08);
    border-left-color: #2ad4c0;
}

.faq-alert--tip .faq-alert__icon[b-1rkpqghxrt] {
    color: #0D7A6E;
    font-size: 1.05rem;
    flex-shrink: 0;
    margin-top: .12rem;
}

[data-bs-theme="dark"] .faq-alert--tip .faq-alert__icon[b-1rkpqghxrt] {
    color: #2ad4c0;
}

/* ══════════════════════════════════════════════════════════════════════════════
   COMPREHENSIVE DARK MODE OVERRIDES
   Covers: faq-select-splash page, faq-win-compare, faq-win-glaze-card,
   faq-win-install-item, faq-win-stc-tab idle, win-stc-detail, stc-detail__badge,
   faq-no-results, faq-section__icon-wrap, faq-section__desc, faq-alert base,
   faq-table-wrap alt rows, nav pill variants, subnav, product cards
   ══════════════════════════════════════════════════════════════════════════════ */

/* ── Splash page background in dark mode ── */
:root[data-bs-theme="dark"] .faq-select-splash[b-1rkpqghxrt] {
    background: var(--fq-surface, #0e1218);
}

:root[data-bs-theme="dark"] .faq-select-splash__heading[b-1rkpqghxrt] {
    color: #e8edf2;
}

:root[data-bs-theme="dark"] .faq-select-splash__sub[b-1rkpqghxrt] {
    color: rgba(232,237,242,.60);
}

:root[data-bs-theme="dark"] .faq-select-splash__badge[b-1rkpqghxrt] {
    color: #F1B828;
    background: rgba(241,184,40,.10);
    border-color: rgba(241,184,40,.25);
}

/* ── Section header icon wraps ── */
:root[data-bs-theme="dark"] .faq-section__icon-wrap[b-1rkpqghxrt] {
    background: rgba(155,198,255,.12);
    color: #9bc6ff;
}

:root[data-bs-theme="dark"] .faq-section__icon-wrap--teal[b-1rkpqghxrt] {
    background: rgba(42,212,192,.12);
    color: #2ad4c0;
}

/* ── Section description text ── */
:root[data-bs-theme="dark"] .faq-section__desc[b-1rkpqghxrt] {
    color: rgba(232,237,242,.60);
}

/* ── faq-alert base (background + border) ── */
:root[data-bs-theme="dark"] .faq-alert[b-1rkpqghxrt] {
    background: rgba(255,255,255,.04);
    border-color: rgba(255,255,255,.10);
    color: rgba(232,237,242,.85);
}

/* ── faq-no-results ── */
:root[data-bs-theme="dark"] .faq-no-results[b-1rkpqghxrt] {
    background: rgba(255,255,255,.04);
    border-color: rgba(255,255,255,.08);
    color: rgba(232,237,242,.60);
}

:root[data-bs-theme="dark"] .faq-no-results__icon[b-1rkpqghxrt] {
    color: rgba(232,237,242,.30);
}

/* ── faq-win-stc-tab idle and hover states ── */
:root[data-bs-theme="dark"] .faq-win-stc-tab[b-1rkpqghxrt] {
    background: rgba(255,255,255,.06);
    border-color: rgba(255,255,255,.10);
    color: rgba(232,237,242,.70);
}

    :root[data-bs-theme="dark"] .faq-win-stc-tab:hover[b-1rkpqghxrt] {
        background: rgba(42,212,192,.12);
        border-color: #2ad4c0;
        color: #2ad4c0;
    }

/* ── win-stc-detail meta row ── */
:root[data-bs-theme="dark"] .win-stc-detail__meta[b-1rkpqghxrt] {
    border-color: rgba(255,255,255,.08);
}

:root[data-bs-theme="dark"] .win-stc-detail__spec[b-1rkpqghxrt] {
    background: rgba(255,255,255,.05);
    border-color: rgba(255,255,255,.10);
    color: rgba(232,237,242,.70);
}

    :root[data-bs-theme="dark"] .win-stc-detail__spec strong[b-1rkpqghxrt] {
        color: #e8edf2;
    }

/* ── stc-detail__badge (STC-XX pill inside detail) ── */
:root[data-bs-theme="dark"] .stc-detail__badge[b-1rkpqghxrt] {
    background: rgba(42,212,192,.15);
    color: #2ad4c0;
    border-color: rgba(42,212,192,.30);
}

/* ── faq-win-compare columns ── */
:root[data-bs-theme="dark"] .faq-win-compare-col[b-1rkpqghxrt] {
    border-color: rgba(255,255,255,.10);
    background: rgba(255,255,255,.03);
}

:root[data-bs-theme="dark"] .faq-win-compare-col--blue .faq-win-compare__header[b-1rkpqghxrt] {
    background: #1E4D78;
}

:root[data-bs-theme="dark"] .faq-win-compare-col--teal .faq-win-compare__header[b-1rkpqghxrt] {
    background: #0e9e8e;
}

:root[data-bs-theme="dark"] .faq-win-compare__list li[b-1rkpqghxrt] {
    color: rgba(232,237,242,.85);
    border-bottom-color: rgba(255,255,255,.08);
}

:root[data-bs-theme="dark"] .faq-win-compare__ratings[b-1rkpqghxrt] {
    background: rgba(255,255,255,.06);
}

/* ── faq-win-glaze-card ── */
:root[data-bs-theme="dark"] .faq-win-glaze-card[b-1rkpqghxrt] {
    background: rgba(255,255,255,.04);
    border-color: rgba(255,255,255,.09);
}

:root[data-bs-theme="dark"] .faq-win-glaze-card__title[b-1rkpqghxrt] {
    color: #e8edf2;
}

:root[data-bs-theme="dark"] .faq-win-glaze-card p[b-1rkpqghxrt] {
    color: rgba(232,237,242,.60);
}

/* ── faq-win-install-item ── */
:root[data-bs-theme="dark"] .faq-win-install-item[b-1rkpqghxrt] {
    background: rgba(255,255,255,.04);
    border-color: rgba(255,255,255,.09);
}

:root[data-bs-theme="dark"] .faq-win-install-item__icon[b-1rkpqghxrt] {
    color: #b39ddb;
}

:root[data-bs-theme="dark"] .faq-win-install-item strong[b-1rkpqghxrt] {
    color: #e8edf2;
}

:root[data-bs-theme="dark"] .faq-win-install-item p[b-1rkpqghxrt] {
    color: rgba(232,237,242,.60);
}

/* ── faq-win-app-chip (already has rule, reinforce) ── */
:root[data-bs-theme="dark"] .faq-win-app-chip[b-1rkpqghxrt] {
    background: rgba(155,198,255,.08);
    border-color: rgba(155,198,255,.18);
    color: rgba(232,237,242,.85);
}

/* ── faq-win-highlight (already has rule, reinforce value text) ── */
:root[data-bs-theme="dark"] .faq-win-highlight__value[b-1rkpqghxrt] {
    color: rgba(232,237,242,.85);
}

/* ── Nav pill teal + edu variants ── */
:root[data-bs-theme="dark"] .faq-nav__pill--teal[b-1rkpqghxrt] {
    color: #2ad4c0;
    border-color: rgba(42,212,192,.25);
    background: rgba(42,212,192,.08);
}

    :root[data-bs-theme="dark"] .faq-nav__pill--teal:hover[b-1rkpqghxrt] {
        background: rgba(42,212,192,.15);
        color: #2ad4c0;
    }

    :root[data-bs-theme="dark"] .faq-nav__pill--teal.active[b-1rkpqghxrt] {
        background: #0e9e8e;
        border-color: #0e9e8e;
        color: #fff;
    }

:root[data-bs-theme="dark"] .faq-nav__pill--edu[b-1rkpqghxrt] {
    color: #6ca3ff;
    border-color: rgba(108,163,255,.22);
    background: rgba(108,163,255,.07);
}

    :root[data-bs-theme="dark"] .faq-nav__pill--edu:hover[b-1rkpqghxrt] {
        background: rgba(108,163,255,.14);
    }

    :root[data-bs-theme="dark"] .faq-nav__pill--edu.active[b-1rkpqghxrt] {
        background: #2563eb;
        border-color: #2563eb;
        color: #fff;
    }

/* ── faq-subnav idle pill text ── */
:root[data-bs-theme="dark"] .faq-subnav__pill[b-1rkpqghxrt] {
    color: rgba(232,237,242,.55);
}

    :root[data-bs-theme="dark"] .faq-subnav__pill:hover[b-1rkpqghxrt] {
        background: rgba(42,212,192,.10);
        color: #2ad4c0;
    }

/* ── Doors subnav active ── */
:root[data-bs-theme="dark"] .faq-subnav--doors .faq-subnav__pill--doors.active[b-1rkpqghxrt] {
    background: #1E4D78;
    border-color: #5b9bd5;
    color: #fff;
}

:root[data-bs-theme="dark"] .faq-subnav--doors .faq-subnav__pill--doors:hover[b-1rkpqghxrt] {
    background: rgba(91,155,213,.12);
    color: #5b9bd5;
}

/* ── Product card dark mode ── */
:root[data-bs-theme="dark"] .faq-pcard[b-1rkpqghxrt] {
    background: rgba(255,255,255,.04);
    border-color: rgba(255,255,255,.10);
    box-shadow: 0 2px 12px rgba(0,0,0,.35);
}

    :root[data-bs-theme="dark"] .faq-pcard:hover[b-1rkpqghxrt] {
        box-shadow: 0 8px 24px rgba(0,0,0,.22);
        border-color: var(--pcard-accent);
    }

:root[data-bs-theme="dark"] .faq-pcard__name[b-1rkpqghxrt] {
    color: #e8edf2;
}

:root[data-bs-theme="dark"] .faq-pcard__label[b-1rkpqghxrt] {
    color: rgba(232,237,242,.80);
}

:root[data-bs-theme="dark"] .faq-pcard__desc[b-1rkpqghxrt] {
    color: rgba(232,237,242,.75);
}

:root[data-bs-theme="dark"] .faq-pcard--doors[b-1rkpqghxrt] {
    --pcard-accent: #7cb9f4;
    --pcard-glow: rgba(124,185,244,.12);
}

:root[data-bs-theme="dark"] .faq-pcard--windows[b-1rkpqghxrt] {
    --pcard-accent: #F1B828;
    --pcard-glow: rgba(241,184,40,.10);
}

:root[data-bs-theme="dark"] .faq-pcard--absorption[b-1rkpqghxrt] {
    --pcard-accent: #F1B828;
    --pcard-glow: rgba(241,184,40,.10);
}

:root[data-bs-theme="dark"] .faq-pcard--shiploose[b-1rkpqghxrt] {
    --pcard-accent: #b39ddb;
    --pcard-glow: rgba(179,157,219,.12);
}

:root[data-bs-theme="dark"] .faq-pcard--edu[b-1rkpqghxrt] {
    --pcard-accent: #6ca3ff;
    --pcard-glow: rgba(108,163,255,.10);
}

:root[data-bs-theme="dark"] .faq-pcard__tags li[b-1rkpqghxrt] {
    background: rgba(255,255,255,.06);
    color: var(--pcard-accent);
    border-color: rgba(255,255,255,.10);
}

/* ── faq-ref-table dark mode alternating rows ── */
:root[data-bs-theme="dark"] .faq-ref-table tr:nth-child(even)[b-1rkpqghxrt] {
    background: rgba(255,255,255,.04);
}

:root[data-bs-theme="dark"] .faq-ref-table th[b-1rkpqghxrt] {
    background: rgba(0,40,85,.55);
    color: #e8edf2;
    border-color: rgba(255,255,255,.10);
}

:root[data-bs-theme="dark"] .faq-ref-table td[b-1rkpqghxrt] {
    border-color: rgba(255,255,255,.06);
    color: rgba(232,237,242,.85);
}

/* ── stc-tl-table dark mode ── */
:root[data-bs-theme="dark"] .stc-tl-table[b-1rkpqghxrt] {
    border-color: rgba(255,255,255,.08);
}

    :root[data-bs-theme="dark"] .stc-tl-table th[b-1rkpqghxrt] {
        background: rgba(42,212,192,.18);
        color: #2ad4c0;
        border-color: rgba(255,255,255,.08);
    }

    :root[data-bs-theme="dark"] .stc-tl-table td[b-1rkpqghxrt] {
        color: rgba(232,237,242,.85);
        border-color: rgba(255,255,255,.06);
    }

    :root[data-bs-theme="dark"] .stc-tl-table tr:nth-child(even) td[b-1rkpqghxrt] {
        background: rgba(255,255,255,.04);
    }

/* ── faq-tag (hero Knowledge Base pill) ── */
:root[data-bs-theme="dark"] .faq-tag[b-1rkpqghxrt] {
    background: rgba(241,184,40,.12);
    color: #F1B828;
    border-color: rgba(241,184,40,.25);
}

/* ══════════════════════════════════════════════════════════════════════════════
   EDUCATION SECTION DIVIDER — separates product content from the always-present
   Education & Resources block at the bottom of every section
   ══════════════════════════════════════════════════════════════════════════════ */

.faq-edu-divider[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin: 2.5rem 0 1.5rem;
}

    .faq-edu-divider[b-1rkpqghxrt]::before,
    .faq-edu-divider[b-1rkpqghxrt]::after {
        content: '';
        flex: 1;
        height: 1px;
        background: var(--fq-border, #d7dde3);
    }

    .faq-edu-divider span[b-1rkpqghxrt] {
        display: inline-flex;
        align-items: center;
        white-space: nowrap;
        font-size: .78rem;
        font-weight: 700;
        letter-spacing: .07em;
        text-transform: uppercase;
        color: var(--fq-muted, #5a6b7a);
        background: rgba(0,87,255,.07);
        border: 1px solid rgba(0,87,255,.15);
        border-radius: 999px;
        padding: .3rem .85rem;
    }

:root[data-bs-theme="dark"] .faq-edu-divider[b-1rkpqghxrt]::before,
:root[data-bs-theme="dark"] .faq-edu-divider[b-1rkpqghxrt]::after {
    background: rgba(255,255,255,.09);
}

:root[data-bs-theme="dark"] .faq-edu-divider span[b-1rkpqghxrt] {
    color: rgba(232,237,242,.55);
    background: rgba(108,163,255,.08);
    border-color: rgba(108,163,255,.18);
}

/* ── faq-section--edu variant: slightly muted header icon ── */
.faq-section--edu .faq-section__icon-wrap[b-1rkpqghxrt] {
    background: rgba(0,87,255,.10);
    color: #0057FF;
}

:root[data-bs-theme="dark"] .faq-section--edu .faq-section__icon-wrap[b-1rkpqghxrt] {
    background: rgba(108,163,255,.12);
    color: #6ca3ff;
}

/* ══════════════════════════════════════════════════════════════════════════════
   EDUCATION TAB IN SUBNAV — distinct blue accent to separate it visually
   from the product-specific tabs
   ══════════════════════════════════════════════════════════════════════════════ */

/* Education pill in Windows sub-nav (teal bar) */
.faq-subnav__pill--edu[b-1rkpqghxrt] {
    margin-left: auto; /* push to the right end of the bar */
    color: #0057FF;
    border-color: rgba(0,87,255,.20);
}

    .faq-subnav__pill--edu:hover[b-1rkpqghxrt] {
        background: rgba(0,87,255,.08) !important;
        color: #0057FF !important;
    }

    .faq-subnav__pill--edu.active[b-1rkpqghxrt] {
        background: #0057FF !important;
        border-color: #0057FF !important;
        color: #fff !important;
        box-shadow: 0 2px 8px rgba(0,87,255,.28) !important;
    }

/* Education pill in Doors sub-nav (navy bar) */
.faq-subnav--doors .faq-subnav__pill--edu[b-1rkpqghxrt] {
    color: #0057FF;
    border-color: rgba(0,87,255,.20);
}

    .faq-subnav--doors .faq-subnav__pill--edu:hover[b-1rkpqghxrt] {
        background: rgba(0,87,255,.08) !important;
        color: #0057FF !important;
    }

    .faq-subnav--doors .faq-subnav__pill--edu.active[b-1rkpqghxrt] {
        background: #0057FF !important;
        border-color: #0057FF !important;
        color: #fff !important;
        box-shadow: 0 2px 8px rgba(0,87,255,.28) !important;
    }

/* Dark mode */
:root[data-bs-theme="dark"] .faq-subnav__pill--edu[b-1rkpqghxrt] {
    color: #6ca3ff;
    border-color: rgba(108,163,255,.22);
}

    :root[data-bs-theme="dark"] .faq-subnav__pill--edu:hover[b-1rkpqghxrt] {
        background: rgba(108,163,255,.12) !important;
        color: #6ca3ff !important;
    }

    :root[data-bs-theme="dark"] .faq-subnav__pill--edu.active[b-1rkpqghxrt] {
        background: #2563eb !important;
        border-color: #2563eb !important;
        color: #fff !important;
    }

:root[data-bs-theme="dark"] .faq-subnav--doors .faq-subnav__pill--edu[b-1rkpqghxrt] {
    color: #6ca3ff;
    border-color: rgba(108,163,255,.22);
}

    :root[data-bs-theme="dark"] .faq-subnav--doors .faq-subnav__pill--edu:hover[b-1rkpqghxrt] {
        background: rgba(108,163,255,.12) !important;
        color: #6ca3ff !important;
    }

    :root[data-bs-theme="dark"] .faq-subnav--doors .faq-subnav__pill--edu.active[b-1rkpqghxrt] {
        background: #2563eb !important;
        border-color: #2563eb !important;
        color: #fff !important;
    }


/* ─────────────────────────────────────────────────────────
   Ship Loose Sub-Nav
   Matches the .faq-subnav--doors amber/navy pattern but uses
   the ship-loose gold/navy palette.
───────────────────────────────────────────────────────── */

/* Subnav bar — amber accent strip to match ship-loose brand */
/* .faq-subnav--shiploose inherits the gold/navy gradient from .faq-subnav base */
.faq-subnav--shiploose[b-1rkpqghxrt] {
    /* No overrides needed — base style matches */
}

/* Ship loose pills inherit the base gold/navy style — no overrides needed */

/* Mobile: full-width 2-col grid like other subnavs */
@media (max-width: 600px) {
    .faq-subnav--shiploose[b-1rkpqghxrt] {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: .4rem;
    }
}

/* ─────────────────────────────────────────────────────────
   Ship Loose Hardware
───────────────────────────────────────────────────────── */
.faq-section--shiploose .faq-section__icon-wrap[b-1rkpqghxrt] {
    background: linear-gradient(135deg, rgba(0,40,85,.14), rgba(241,184,40,.18));
}

.faq-shiploose-grid[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

/* Single-card view: stretch the card to a readable max-width and center it */
.faq-shiploose-grid--centered[b-1rkpqghxrt] {
    grid-template-columns: minmax(0, 760px);
    justify-content: center;
}

.faq-shiploose-card[b-1rkpqghxrt] {
    position: relative;
    overflow: hidden;
    border: 1px solid rgba(0,40,85,.10);
    background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(246,249,252,.98));
}

    .faq-shiploose-card[b-1rkpqghxrt]::before {
        content: "";
        position: absolute;
        inset: 0 auto 0 0;
        width: 4px;
        background: linear-gradient(180deg, #002855, #f1b828);
    }

.faq-shiploose-card__eyebrow[b-1rkpqghxrt] {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    padding: .3rem .65rem;
    border-radius: 999px;
    margin-bottom: .8rem;
    background: rgba(0,40,85,.07);
    color: #002855;
    font-size: .74rem;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.faq-shiploose-list[b-1rkpqghxrt] {
    margin: .85rem 0 0;
    padding-left: 1.1rem;
}

    .faq-shiploose-list li[b-1rkpqghxrt] {
        margin-bottom: .55rem;
        color: var(--fq-text);
    }

.faq-shiploose-list--tight li[b-1rkpqghxrt] {
    margin-bottom: .4rem;
}

.faq-shiploose-callout[b-1rkpqghxrt],
.faq-shiploose-note[b-1rkpqghxrt] {
    margin-top: 1rem;
    padding: .9rem 1rem;
    border-radius: 14px;
    border: 1px solid rgba(0,40,85,.10);
}

.faq-shiploose-callout[b-1rkpqghxrt] {
    background: rgba(0,40,85,.05);
    color: #16385f;
}

.faq-shiploose-note[b-1rkpqghxrt] {
    background: rgba(241,184,40,.12);
    color: #5c4200;
}

.faq-shiploose-stack[b-1rkpqghxrt] {
    display: grid;
    gap: .75rem;
    margin-top: 1rem;
}

.faq-shiploose-mini[b-1rkpqghxrt] {
    padding: .95rem 1rem;
    border-radius: 16px;
    background: rgba(0,40,85,.04);
    border: 1px solid rgba(0,40,85,.08);
}

    .faq-shiploose-mini h4[b-1rkpqghxrt] {
        margin: 0 0 .35rem;
        color: #002855;
        font-size: 1rem;
        font-weight: 800;
    }

    .faq-shiploose-mini p[b-1rkpqghxrt] {
        margin: 0;
    }

.faq-shiploose-checks[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .75rem;
    margin-top: 1rem;
}

    .faq-shiploose-checks > div[b-1rkpqghxrt] {
        display: flex;
        align-items: flex-start;
        gap: .6rem;
        padding: .9rem 1rem;
        border-radius: 14px;
        background: rgba(26,122,58,.06);
        border: 1px solid rgba(26,122,58,.14);
    }

    .faq-shiploose-checks i[b-1rkpqghxrt] {
        color: #1a7a3a;
        font-size: 1rem;
        margin-top: .05rem;
    }

:root[data-bs-theme="dark"] .faq-shiploose-card[b-1rkpqghxrt] {
    border-color: rgba(155,198,255,.14);
    background: linear-gradient(180deg, rgba(20,27,34,.98), rgba(15,21,27,.98));
}

:root[data-bs-theme="dark"] .faq-shiploose-card__eyebrow[b-1rkpqghxrt],
:root[data-bs-theme="dark"] .faq-shiploose-mini[b-1rkpqghxrt] {
    background: rgba(155,198,255,.08);
    border-color: rgba(155,198,255,.14);
    color: #cfe5ff;
}

    :root[data-bs-theme="dark"] .faq-shiploose-mini h4[b-1rkpqghxrt],
    :root[data-bs-theme="dark"] .faq-shiploose-callout[b-1rkpqghxrt] {
        color: #dbeafe;
    }

:root[data-bs-theme="dark"] .faq-shiploose-callout[b-1rkpqghxrt] {
    background: rgba(155,198,255,.08);
    border-color: rgba(155,198,255,.14);
}

:root[data-bs-theme="dark"] .faq-shiploose-note[b-1rkpqghxrt] {
    background: rgba(241,184,40,.12);
    border-color: rgba(241,184,40,.18);
    color: #ffe8a3;
}

:root[data-bs-theme="dark"] .faq-shiploose-checks > div[b-1rkpqghxrt] {
    background: rgba(42,170,90,.08);
    border-color: rgba(42,170,90,.16);
}

:root[data-bs-theme="dark"] .faq-shiploose-checks i[b-1rkpqghxrt] {
    color: #4ade80;
}

@media (max-width: 991.98px) {
    .faq-shiploose-grid[b-1rkpqghxrt],
    .faq-shiploose-checks[b-1rkpqghxrt] {
        grid-template-columns: 1fr;
    }
}

/* ============================================================
   DOCUMENT PORTAL — appended styles
   ============================================================ */

/* ── Splash card — docs variant ──────────────────────────────── */
.faq-pcard--docs[b-1rkpqghxrt] {
    --card-accent: #C0392B;
    --card-glow: rgba(192, 57, 43, 0.10);
    --pcard-accent: #C0392B;
    --pcard-glow: rgba(192, 57, 43, 0.09);
}

    .faq-pcard--docs .faq-pcard__glow[b-1rkpqghxrt] {
        background: radial-gradient(ellipse at 60% 40%, var(--card-glow), transparent 70%);
    }

    .faq-pcard--docs .faq-pcard__icon-wrap[b-1rkpqghxrt] {
        background: linear-gradient(135deg, #9b1c0f 0%, #C0392B 60%, #e74c3c 100%);
        box-shadow: 0 6px 20px rgba(192, 57, 43, 0.45);
    }

    .faq-pcard--docs .faq-pcard__label[b-1rkpqghxrt] {
        color: #C0392B;
    }

    .faq-pcard--docs .faq-pcard__cta[b-1rkpqghxrt] {
        color: #C0392B;
    }

    .faq-pcard--docs:hover .faq-pcard__cta[b-1rkpqghxrt] {
        color: #9b1c0f;
    }

:root[data-bs-theme="dark"] .faq-pcard--docs[b-1rkpqghxrt] {
    --pcard-accent: #ff6b5b;
    --pcard-glow: rgba(255, 107, 91, 0.09);
}

    :root[data-bs-theme="dark"] .faq-pcard--docs .faq-pcard__icon-wrap[b-1rkpqghxrt] {
        background: linear-gradient(135deg, #7a1208 0%, #C0392B 60%, #e74c3c 100%);
        box-shadow: 0 6px 20px rgba(192, 57, 43, 0.12);
    }

    :root[data-bs-theme="dark"] .faq-pcard--docs .faq-pcard__label[b-1rkpqghxrt],
    :root[data-bs-theme="dark"] .faq-pcard--docs .faq-pcard__cta[b-1rkpqghxrt] {
        color: #ff6b5b;
    }


/* ── Sub-nav pills — docs variant ────────────────────────────── */
.faq-subnav--docs[b-1rkpqghxrt] {
    --pill-color: #0f4c8a;
    --pill-active-bg: #0f4c8a;
    --pill-active-text: #ffffff;
    --pill-hover-bg: rgba(15, 76, 138, 0.10);
}

.faq-subnav__pill--docs[b-1rkpqghxrt] {
    color: var(--pill-color);
    border-color: rgba(15, 76, 138, 0.25);
}

    .faq-subnav__pill--docs:hover[b-1rkpqghxrt] {
        background: var(--pill-hover-bg);
        border-color: rgba(15, 76, 138, 0.50);
    }

    .faq-subnav__pill--docs.active[b-1rkpqghxrt] {
        background: var(--pill-active-bg);
        color: var(--pill-active-text);
        border-color: var(--pill-active-bg);
        box-shadow: 0 4px 14px rgba(15, 76, 138, 0.35);
    }

/* ── Document portal wrapper ─────────────────────────────────── */
.faq-doc-portal[b-1rkpqghxrt] {
    padding-bottom: 3rem;
}

/* ── Empty state ─────────────────────────────────────────────── */
.faq-doc-portal__empty[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 4rem 1rem;
    color: var(--bs-secondary-color, #6c757d);
    gap: 0.75rem;
}

    .faq-doc-portal__empty i[b-1rkpqghxrt] {
        font-size: 3rem;
        opacity: 0.40;
    }

/* ── Group header ────────────────────────────────────────────── */
.faq-doc-portal__group-title[b-1rkpqghxrt] {
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: #0f4c8a;
    border-bottom: 2px solid rgba(15, 76, 138, 0.18);
    padding-bottom: 0.5rem;
    margin-bottom: 1.25rem;
}

[data-bs-theme="dark"] .faq-doc-portal__group-title[b-1rkpqghxrt] {
    color: #6aadff;
    border-color: rgba(106, 173, 255, 0.20);
}

/* ── Card grid ───────────────────────────────────────────────── */
.faq-doc-portal__grid[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 1rem;
}

/* ── Individual card ─────────────────────────────────────────── */
.faq-doc-portal__card[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    background: var(--bs-body-bg, #fff);
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 14px;
    padding: 1.1rem 1.2rem 1rem;
    gap: 0.65rem;
    transition: box-shadow 0.18s ease, border-color 0.18s ease, transform 0.18s ease;
    position: relative;
    overflow: hidden;
}

    .faq-doc-portal__card[b-1rkpqghxrt]::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 3px;
        background: linear-gradient(90deg, #0f4c8a, #1a6bbf);
        opacity: 0;
        transition: opacity 0.18s ease;
    }

    .faq-doc-portal__card:hover[b-1rkpqghxrt] {
        box-shadow: 0 6px 24px rgba(15, 76, 138, 0.12);
        border-color: rgba(15, 76, 138, 0.30);
        transform: translateY(-2px);
    }

        .faq-doc-portal__card:hover[b-1rkpqghxrt]::before {
            opacity: 1;
        }

[data-bs-theme="dark"] .faq-doc-portal__card[b-1rkpqghxrt] {
    background: #0d1526;
    border-color: rgba(255,255,255,0.09);
}

    [data-bs-theme="dark"] .faq-doc-portal__card:hover[b-1rkpqghxrt] {
        border-color: rgba(106, 173, 255, 0.30);
        box-shadow: 0 6px 24px rgba(0,0,0,0.40);
    }

/* ── Card icon ───────────────────────────────────────────────── */
.faq-doc-portal__card-icon[b-1rkpqghxrt] {
    font-size: 2rem;
    line-height: 1;
}

/* ── Card body ───────────────────────────────────────────────── */
.faq-doc-portal__card-body[b-1rkpqghxrt] {
    flex: 1;
}

.faq-doc-portal__card-title[b-1rkpqghxrt] {
    font-size: 0.95rem;
    font-weight: 700;
    color: var(--bs-body-color);
    line-height: 1.3;
    margin-bottom: 0.35rem;
}

.faq-doc-portal__card-meta[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    flex-wrap: wrap;
}

.faq-doc-portal__badge[b-1rkpqghxrt] {
    font-size: 0.68rem;
    font-weight: 600;
    background: rgba(15, 76, 138, 0.10);
    color: #0f4c8a;
    border: 1px solid rgba(15, 76, 138, 0.20);
    padding: 0.2em 0.55em;
    border-radius: 6px;
}

[data-bs-theme="dark"] .faq-doc-portal__badge[b-1rkpqghxrt] {
    background: rgba(106, 173, 255, 0.12);
    color: #6aadff;
    border-color: rgba(106, 173, 255, 0.22);
}

.faq-doc-portal__size[b-1rkpqghxrt] {
    font-size: 0.72rem;
    color: var(--bs-secondary-color, #6c757d);
}

/* ── Card actions ────────────────────────────────────────────── */
.faq-doc-portal__card-actions[b-1rkpqghxrt] {
    display: flex;
    gap: 0.5rem;
    flex-wrap: wrap;
    padding-top: 0.4rem;
    border-top: 1px solid var(--bs-border-color, #dee2e6);
    margin-top: 0.2rem;
}

[data-bs-theme="dark"] .faq-doc-portal__card-actions[b-1rkpqghxrt] {
    border-color: rgba(255,255,255,0.08);
}

/* ── Action buttons ──────────────────────────────────────────── */
.faq-doc-portal__btn[b-1rkpqghxrt] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.78rem;
    font-weight: 600;
    padding: 0.32rem 0.75rem;
    border-radius: 8px;
    border: 1px solid transparent;
    cursor: pointer;
    text-decoration: none;
    transition: background 0.15s ease, border-color 0.15s ease, color 0.15s ease;
    white-space: nowrap;
}
/* View */
.faq-doc-portal__btn--view[b-1rkpqghxrt] {
    background: rgba(15, 76, 138, 0.08);
    color: #0f4c8a;
    border-color: rgba(15, 76, 138, 0.20);
}

    .faq-doc-portal__btn--view:hover[b-1rkpqghxrt] {
        background: #0f4c8a;
        color: #fff;
        border-color: #0f4c8a;
    }
/* Save */
.faq-doc-portal__btn--save[b-1rkpqghxrt] {
    background: rgba(25, 135, 84, 0.08);
    color: #198754;
    border-color: rgba(25, 135, 84, 0.22);
}

    .faq-doc-portal__btn--save:hover[b-1rkpqghxrt] {
        background: #198754;
        color: #fff;
        border-color: #198754;
    }
/* Print */
.faq-doc-portal__btn--print[b-1rkpqghxrt] {
    background: rgba(108, 117, 125, 0.08);
    color: #495057;
    border-color: rgba(108, 117, 125, 0.22);
}

    .faq-doc-portal__btn--print:hover[b-1rkpqghxrt] {
        background: #495057;
        color: #fff;
        border-color: #495057;
    }
/* Dark mode overrides */
[data-bs-theme="dark"] .faq-doc-portal__btn--view[b-1rkpqghxrt] {
    color: #6aadff;
    border-color: rgba(106,173,255,0.22);
    background: rgba(106,173,255,0.08);
}

[data-bs-theme="dark"] .faq-doc-portal__btn--save[b-1rkpqghxrt] {
    color: #5cb85c;
    border-color: rgba(92,184,92,0.22);
    background: rgba(92,184,92,0.08);
}

[data-bs-theme="dark"] .faq-doc-portal__btn--print[b-1rkpqghxrt] {
    color: #adb5bd;
    border-color: rgba(173,181,189,0.22);
    background: rgba(173,181,189,0.08);
}

[data-bs-theme="dark"] .faq-doc-portal__btn--view:hover[b-1rkpqghxrt] {
    background: #1a6bbf;
    color: #fff;
    border-color: #1a6bbf;
}

[data-bs-theme="dark"] .faq-doc-portal__btn--save:hover[b-1rkpqghxrt] {
    background: #3a8a3a;
    color: #fff;
    border-color: #3a8a3a;
}

[data-bs-theme="dark"] .faq-doc-portal__btn--print:hover[b-1rkpqghxrt] {
    background: #5a6470;
    color: #fff;
    border-color: #5a6470;
}

/* ── Viewer overlay ──────────────────────────────────────────── */
.faq-doc-viewer-overlay[b-1rkpqghxrt] {
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.72);
    backdrop-filter: blur(4px);
    -webkit-backdrop-filter: blur(4px);
    z-index: 1070;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    animation: docViewerIn-b-1rkpqghxrt 0.18s ease both;
}

@keyframes docViewerIn-b-1rkpqghxrt {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

/* ── Viewer modal ────────────────────────────────────────────── */
.faq-doc-viewer-modal[b-1rkpqghxrt] {
    background: var(--bs-body-bg, #fff);
    border-radius: 18px;
    overflow: hidden;
    width: 100%;
    max-width: 920px;
    max-height: 90vh;
    display: flex;
    flex-direction: column;
    box-shadow: 0 32px 80px rgba(0,0,0,0.55), 0 0 0 1px rgba(255,255,255,0.06);
    animation: docModalUp-b-1rkpqghxrt 0.22s cubic-bezier(0.34,1.28,0.64,1) both;
}

@keyframes docModalUp-b-1rkpqghxrt {
    from {
        opacity: 0;
        transform: translateY(20px) scale(0.97);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

[data-bs-theme="dark"] .faq-doc-viewer-modal[b-1rkpqghxrt] {
    background: #0c1220;
    box-shadow: 0 32px 80px rgba(0,0,0,0.80), 0 0 0 1px rgba(255,255,255,0.07);
}

/* ── Viewer header ───────────────────────────────────────────── */
.faq-doc-viewer-header[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.85rem 1.25rem;
    border-bottom: 1px solid var(--bs-border-color, #dee2e6);
    background: rgba(15, 76, 138, 0.05);
    flex-wrap: wrap;
    gap: 0.5rem;
    flex-shrink: 0;
}

[data-bs-theme="dark"] .faq-doc-viewer-header[b-1rkpqghxrt] {
    border-color: rgba(255,255,255,0.08);
    background: rgba(106,173,255,0.05);
}

.faq-doc-viewer-title[b-1rkpqghxrt] {
    font-size: 0.92rem;
    font-weight: 700;
    color: var(--bs-body-color);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 55%;
}

/* ── Viewer close button ─────────────────────────────────────── */
.faq-doc-viewer-close[b-1rkpqghxrt] {
    background: transparent;
    border: 1px solid var(--bs-border-color, #dee2e6);
    border-radius: 8px;
    width: 32px;
    height: 32px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--bs-body-color);
    transition: background 0.14s, color 0.14s, border-color 0.14s;
}

    .faq-doc-viewer-close:hover[b-1rkpqghxrt] {
        background: rgba(239,68,68,0.10);
        color: #ef4444;
        border-color: rgba(239,68,68,0.30);
    }

/* ── Viewer body ─────────────────────────────────────────────── */
.faq-doc-viewer-body[b-1rkpqghxrt] {
    flex: 1;
    overflow: auto;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    min-height: 0;
}

.faq-doc-viewer-iframe[b-1rkpqghxrt] {
    width: 100%;
    height: 76vh;
    border: none;
    display: block;
}

.faq-doc-viewer-img[b-1rkpqghxrt] {
    max-width: 100%;
    height: auto;
    display: block;
    margin: auto;
    padding: 1rem;
}

/* ============================================================
   DOCUMENT PORTAL — Product Type sub-grouping styles
   ============================================================ */

/* ── Product type divider header ─────────────────────────────── */
.faq-doc-portal__product-header[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin-bottom: 0.9rem;
    margin-top: 0.25rem;
}

.faq-doc-portal__product-line[b-1rkpqghxrt] {
    flex: 1;
    height: 1px;
    background: var(--bs-border-color, #dee2e6);
    opacity: 0.6;
}

[data-bs-theme="dark"] .faq-doc-portal__product-line[b-1rkpqghxrt] {
    background: rgba(255,255,255,0.10);
}

/* ── Product type pill (used as sub-group header label) ──────── */
.faq-doc-portal__product-pill[b-1rkpqghxrt] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.72rem;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    padding: 0.28em 0.75em;
    border-radius: 20px;
    border: 1px solid transparent;
    white-space: nowrap;
    flex-shrink: 0;
}
/* Doors — IAC navy */
.faq-doc-portal__product-pill--doors[b-1rkpqghxrt] {
    background: rgba(0, 40, 85, 0.12);
    color: #002855;
    border-color: rgba(0, 40, 85, 0.25);
}

[data-bs-theme="dark"] .faq-doc-portal__product-pill--doors[b-1rkpqghxrt] {
    background: rgba(100, 160, 255, 0.14);
    color: #8fc0ff;
    border-color: rgba(100, 160, 255, 0.28);
}
/* Windows — teal */
.faq-doc-portal__product-pill--windows[b-1rkpqghxrt] {
    background: rgba(13, 148, 136, 0.10);
    color: #0d9488;
    border-color: rgba(13, 148, 136, 0.28);
}

[data-bs-theme="dark"] .faq-doc-portal__product-pill--windows[b-1rkpqghxrt] {
    background: rgba(45, 212, 191, 0.12);
    color: #2dd4bf;
    border-color: rgba(45, 212, 191, 0.25);
}
/* Ship Loose — amber */
.faq-doc-portal__product-pill--shiploose[b-1rkpqghxrt] {
    background: rgba(217, 119, 6, 0.10);
    color: #b45309;
    border-color: rgba(217, 119, 6, 0.28);
}

[data-bs-theme="dark"] .faq-doc-portal__product-pill--shiploose[b-1rkpqghxrt] {
    background: rgba(251, 191, 36, 0.12);
    color: #fbbf24;
    border-color: rgba(251, 191, 36, 0.25);
}
/* General — muted */
.faq-doc-portal__product-pill--general[b-1rkpqghxrt] {
    background: rgba(100, 116, 139, 0.10);
    color: #475569;
    border-color: rgba(100, 116, 139, 0.25);
}

[data-bs-theme="dark"] .faq-doc-portal__product-pill--general[b-1rkpqghxrt] {
    background: rgba(148, 163, 184, 0.12);
    color: #94a3b8;
    border-color: rgba(148, 163, 184, 0.22);
}

/* ── Product type tag (small chip shown on each card) ────────── */
.faq-doc-portal__product-tag[b-1rkpqghxrt] {
    display: inline-flex;
    align-items: center;
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    padding: 0.18em 0.5em;
    border-radius: 5px;
    border: 1px solid transparent;
}

.faq-doc-portal__product-tag--doors[b-1rkpqghxrt] {
    background: rgba(0, 40, 85, 0.10);
    color: #002855;
    border-color: rgba(0, 40, 85, 0.20);
}

[data-bs-theme="dark"] .faq-doc-portal__product-tag--doors[b-1rkpqghxrt] {
    background: rgba(100, 160, 255, 0.12);
    color: #8fc0ff;
    border-color: rgba(100, 160, 255, 0.22);
}

.faq-doc-portal__product-tag--windows[b-1rkpqghxrt] {
    background: rgba(13, 148, 136, 0.09);
    color: #0d9488;
    border-color: rgba(13, 148, 136, 0.22);
}

[data-bs-theme="dark"] .faq-doc-portal__product-tag--windows[b-1rkpqghxrt] {
    background: rgba(45, 212, 191, 0.10);
    color: #2dd4bf;
    border-color: rgba(45, 212, 191, 0.20);
}

.faq-doc-portal__product-tag--shiploose[b-1rkpqghxrt] {
    background: rgba(217, 119, 6, 0.09);
    color: #b45309;
    border-color: rgba(217, 119, 6, 0.22);
}

[data-bs-theme="dark"] .faq-doc-portal__product-tag--shiploose[b-1rkpqghxrt] {
    background: rgba(251, 191, 36, 0.10);
    color: #fbbf24;
    border-color: rgba(251, 191, 36, 0.20);
}

/* =============================================================
   ACOUSTICS REFERENCE — faq-subnav pill + section styles
   ============================================================= */

.faq-subnav__pill--acoustics[b-1rkpqghxrt] {
    background: rgba(13,122,110,0.08) !important;
    border-color: rgba(13,122,110,0.22) !important;
    color: #0D7A6E !important;
}

    .faq-subnav__pill--acoustics:hover[b-1rkpqghxrt] {
        background: rgba(13,122,110,0.15) !important;
        border-color: rgba(13,122,110,0.40) !important;
    }

    .faq-subnav__pill--acoustics.active[b-1rkpqghxrt] {
        background: #0D7A6E !important;
        border-color: #0D7A6E !important;
        color: #ffffff !important;
        box-shadow: 0 2px 10px rgba(13,122,110,0.35);
    }

:root[data-bs-theme="dark"] .faq-subnav__pill--acoustics[b-1rkpqghxrt] {
    background: rgba(13,122,110,0.14) !important;
    border-color: rgba(13,122,110,0.30) !important;
    color: #4ecdc4 !important;
}

    :root[data-bs-theme="dark"] .faq-subnav__pill--acoustics.active[b-1rkpqghxrt] {
        background: rgba(13,122,110,0.55) !important;
        border-color: #4ecdc4 !important;
        color: #ffffff !important;
    }

.faq-section--acoustics .faq-section__icon-wrap--acoustics[b-1rkpqghxrt] {
    background: #0D7A6E;
}

/* ── Banner strip ─────────────────────────────────────────── */
.acref-banner[b-1rkpqghxrt] {
    display: flex;
    align-items: stretch;
    gap: 0;
    background: #002855;
    border-radius: 12px;
    overflow: hidden;
    padding: 0;
}

:root[data-bs-theme="dark"] .acref-banner[b-1rkpqghxrt] {
    background: #0e1a2e;
    border: 1px solid rgba(241,184,40,0.18);
}

.acref-banner__item[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 3px;
    padding: .85rem 1.4rem;
    flex: 1;
}

.acref-banner__sep[b-1rkpqghxrt] {
    width: 1px;
    background: rgba(255,255,255,0.12);
    align-self: stretch;
}

.acref-banner__label[b-1rkpqghxrt] {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.50);
}

.acref-banner__val[b-1rkpqghxrt] {
    font-size: 15px;
    font-weight: 800;
    color: #F1B828;
}

/* ── 2-column card grid ───────────────────────────────────── */
.acref-grid-2[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.25rem;
}

@media (max-width: 767.98px) {
    .acref-grid-2[b-1rkpqghxrt] {
        grid-template-columns: 1fr;
    }
}

/* ── Acoustics card shared ─────────────────────────────────── */
.acref-card[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
}

.acref-card__icon-row[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    gap: .6rem;
    margin-bottom: .75rem;
}

    .acref-card__icon-row > i[b-1rkpqghxrt] {
        font-size: 1.1rem;
        color: #0D7A6E;
        flex-shrink: 0;
    }

:root[data-bs-theme="dark"] .acref-card__icon-row > i[b-1rkpqghxrt] {
    color: #4ecdc4;
}

.acref-card__heading[b-1rkpqghxrt] {
    font-size: 1rem;
    font-weight: 800;
    color: #002855;
    margin: 0;
    text-transform: uppercase;
    letter-spacing: .02em;
}

:root[data-bs-theme="dark"] .acref-card__heading[b-1rkpqghxrt] {
    color: #a4c4e7;
}

/* ── dB bar scale ─────────────────────────────────────────── */
.acref-db-scale[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.acref-db-row[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.acref-db-lbl[b-1rkpqghxrt] {
    font-size: 11px;
    color: var(--fq-muted, #5A6B7A);
    min-width: 140px;
    text-align: right;
    flex-shrink: 0;
}

.acref-db-track[b-1rkpqghxrt] {
    flex: 1;
    background: rgba(0,40,85,0.07);
    border-radius: 4px;
    height: 16px;
    position: relative;
    overflow: hidden;
}

:root[data-bs-theme="dark"] .acref-db-track[b-1rkpqghxrt] {
    background: rgba(255,255,255,0.08);
}

.acref-db-fill[b-1rkpqghxrt] {
    height: 100%;
    border-radius: 4px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding-right: 5px;
    transition: width .5s cubic-bezier(.4,0,.2,1);
}

.acref-bar--low[b-1rkpqghxrt] {
    background: #3B8BD4;
}

.acref-bar--mid[b-1rkpqghxrt] {
    background: #EF9F27;
}

.acref-bar--high[b-1rkpqghxrt] {
    background: #E8593C;
}

.acref-bar--crit[b-1rkpqghxrt] {
    background: #991B1B;
}

.acref-bar--door[b-1rkpqghxrt] {
    background: #1E4D78;
}

.acref-bar--window[b-1rkpqghxrt] {
    background: #0D7A6E;
}

.acref-bar-val[b-1rkpqghxrt] {
    font-size: 10px;
    font-weight: 700;
    color: rgba(255,255,255,0.90);
}

.acref-db-num[b-1rkpqghxrt] {
    font-size: 11px;
    font-weight: 700;
    color: #002855;
    min-width: 36px;
    flex-shrink: 0;
}

:root[data-bs-theme="dark"] .acref-db-num[b-1rkpqghxrt] {
    color: #F1B828;
}

/* ── STC rating rows ──────────────────────────────────────── */
.acref-stc-table[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.acref-stc-row[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 4px 0;
    border-bottom: 1px solid rgba(0,40,85,0.06);
}

:root[data-bs-theme="dark"] .acref-stc-row[b-1rkpqghxrt] {
    border-bottom-color: rgba(255,255,255,0.06);
}

.acref-stc-desc[b-1rkpqghxrt] {
    font-size: 11.5px;
    color: var(--fq-muted, #5A6B7A);
    flex: 1;
}

.acref-stc-ex[b-1rkpqghxrt] {
    font-size: 10.5px;
    color: #002855;
    font-weight: 600;
    flex-shrink: 0;
    text-align: right;
}

:root[data-bs-theme="dark"] .acref-stc-ex[b-1rkpqghxrt] {
    color: #F1B828;
}

/* ── Rating badges ────────────────────────────────────────── */
.acref-badge[b-1rkpqghxrt] {
    display: inline-block;
    font-size: 10.5px;
    font-weight: 800;
    padding: 2px 8px;
    border-radius: 5px;
    white-space: nowrap;
    flex-shrink: 0;
    min-width: 72px;
    text-align: center;
}

.acref-badge--danger[b-1rkpqghxrt] {
    background: #FEE2E2;
    color: #991B1B;
}

.acref-badge--warn[b-1rkpqghxrt] {
    background: #FEF3C7;
    color: #92400E;
}

.acref-badge--ok[b-1rkpqghxrt] {
    background: #D1FAE5;
    color: #065F46;
}

.acref-badge--good[b-1rkpqghxrt] {
    background: #DBEAFE;
    color: #1E40AF;
}

.acref-badge--best[b-1rkpqghxrt] {
    background: #EDE9FE;
    color: #5B21B6;
}

/* ── Product bar rows ─────────────────────────────────────── */
.acref-prod-bars[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

/* ── Weak link rows ───────────────────────────────────────── */
.acref-weaklink[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.acref-weaklink-row[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 5px 8px;
    border-radius: 7px;
    background: rgba(0,40,85,0.03);
    border: 1px solid rgba(0,40,85,0.06);
}

:root[data-bs-theme="dark"] .acref-weaklink-row[b-1rkpqghxrt] {
    background: rgba(255,255,255,0.04);
    border-color: rgba(255,255,255,0.07);
}

.acref-weaklink-row--weak[b-1rkpqghxrt] {
    background: rgba(220,38,38,0.06) !important;
    border-color: rgba(220,38,38,0.18) !important;
}

.acref-weaklink-el[b-1rkpqghxrt] {
    font-size: 12px;
    color: var(--fq-body, #1A1A2E);
    flex: 1;
    font-weight: 600;
}

:root[data-bs-theme="dark"] .acref-weaklink-el[b-1rkpqghxrt] {
    color: rgba(255,255,255,0.88);
}

.acref-weaklink-stc[b-1rkpqghxrt] {
    font-size: 12px;
    font-weight: 800;
    color: #002855;
    flex-shrink: 0;
    min-width: 52px;
}

:root[data-bs-theme="dark"] .acref-weaklink-stc[b-1rkpqghxrt] {
    color: #F1B828;
}

.acref-weaklink-row--weak .acref-weaklink-stc[b-1rkpqghxrt] {
    color: #991B1B;
}

.acref-weaklink-note[b-1rkpqghxrt] {
    font-size: 10.5px;
    color: #991B1B;
    font-style: italic;
    flex-shrink: 0;
}

/* ── Frequency table ──────────────────────────────────────── */
.acref-freq-table[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.acref-freq-header[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: 1fr 1.5fr 1fr;
    gap: 8px;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: var(--fq-muted, #5A6B7A);
    padding-bottom: 4px;
    border-bottom: 1px solid rgba(0,40,85,0.10);
}

:root[data-bs-theme="dark"] .acref-freq-header[b-1rkpqghxrt] {
    border-bottom-color: rgba(255,255,255,0.10);
}

.acref-freq-row[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: 1fr 1.5fr 1fr;
    gap: 8px;
    align-items: center;
    padding: 4px 0;
    border-bottom: 1px solid rgba(0,40,85,0.05);
}

:root[data-bs-theme="dark"] .acref-freq-row[b-1rkpqghxrt] {
    border-bottom-color: rgba(255,255,255,0.05);
}

.acref-freq-hz[b-1rkpqghxrt] {
    font-size: 12px;
    font-weight: 700;
    color: #002855;
}

:root[data-bs-theme="dark"] .acref-freq-hz[b-1rkpqghxrt] {
    color: #F1B828;
}

.acref-freq-src[b-1rkpqghxrt] {
    font-size: 11px;
    color: var(--fq-muted, #5A6B7A);
}

.acref-diff-badge[b-1rkpqghxrt] {
    display: inline-block;
    font-size: 10.5px;
    font-weight: 700;
    padding: 2px 7px;
    border-radius: 5px;
    white-space: nowrap;
    text-align: center;
}

.acref-diff--vhard[b-1rkpqghxrt] {
    background: #FEE2E2;
    color: #991B1B;
}

:root[data-bs-theme="dark"] .acref-diff--vhard[b-1rkpqghxrt] {
    background: rgba(239,68,68,.18);
    color: #fca5a5;
}

.acref-diff--hard[b-1rkpqghxrt] {
    background: #FEF3C7;
    color: #92400E;
}

:root[data-bs-theme="dark"] .acref-diff--hard[b-1rkpqghxrt] {
    background: rgba(245,158,11,.16);
    color: #fcd34d;
}

.acref-diff--mod[b-1rkpqghxrt] {
    background: #FEF9C3;
    color: #713F12;
}

:root[data-bs-theme="dark"] .acref-diff--mod[b-1rkpqghxrt] {
    background: rgba(234,179,8,.14);
    color: #fef08a;
}

.acref-diff--easy[b-1rkpqghxrt] {
    background: #D1FAE5;
    color: #065F46;
}

:root[data-bs-theme="dark"] .acref-diff--easy[b-1rkpqghxrt] {
    background: rgba(16,185,129,.14);
    color: #6ee7b7;
}

.acref-diff--easiest[b-1rkpqghxrt] {
    background: #DBEAFE;
    color: #1E40AF;
}

:root[data-bs-theme="dark"] .acref-diff--easiest[b-1rkpqghxrt] {
    background: rgba(59,130,246,.14);
    color: #93c5fd;
}

/* ── Principles ───────────────────────────────────────────── */
.acref-principle-list[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.acref-principle[b-1rkpqghxrt] {
    display: flex;
    align-items: flex-start;
    gap: 10px;
}

.acref-principle__icon[b-1rkpqghxrt] {
    width: 32px;
    height: 32px;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    flex-shrink: 0;
    color: #fff;
}

.acref-principle__icon--mass[b-1rkpqghxrt] {
    background: #002855;
}

.acref-principle__icon--air[b-1rkpqghxrt] {
    background: #0D7A6E;
}

.acref-principle__icon--seal[b-1rkpqghxrt] {
    background: #1E4D78;
}

.acref-principle strong[b-1rkpqghxrt] {
    display: block;
    font-size: 13px;
    font-weight: 800;
    color: #002855;
    margin-bottom: 2px;
}

:root[data-bs-theme="dark"] .acref-principle strong[b-1rkpqghxrt] {
    color: #a4c4e7;
}

.acref-principle p[b-1rkpqghxrt] {
    font-size: 11.5px;
    color: var(--fq-muted, #5A6B7A);
    margin: 0;
    line-height: 1.5;
}

/* ── STC jump table ───────────────────────────────────────── */
.acref-jump-table[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.acref-jump-row[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 5px 0;
    border-bottom: 1px solid rgba(0,40,85,0.06);
}

:root[data-bs-theme="dark"] .acref-jump-row[b-1rkpqghxrt] {
    border-bottom-color: rgba(255,255,255,0.06);
}

.acref-jump-val[b-1rkpqghxrt] {
    font-size: 12.5px;
    font-weight: 800;
    color: #002855;
    min-width: 60px;
    flex-shrink: 0;
}

:root[data-bs-theme="dark"] .acref-jump-val[b-1rkpqghxrt] {
    color: #F1B828;
}

.acref-jump-feel[b-1rkpqghxrt] {
    font-size: 12px;
    color: var(--fq-body, #1A1A2E);
    flex: 1;
}

:root[data-bs-theme="dark"] .acref-jump-feel[b-1rkpqghxrt] {
    color: rgba(255,255,255,0.80);
}

.acref-jump-ex[b-1rkpqghxrt] {
    font-size: 11px;
    color: var(--fq-muted, #5A6B7A);
    font-style: italic;
    flex-shrink: 0;
    text-align: right;
    min-width: 80px;
}

/* ── Full-width noise reduction table ─────────────────────── */
.acref-nrc-table thead th[b-1rkpqghxrt] {
    background: #002855;
    color: #ffffff;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
    padding: .45rem .6rem;
    white-space: nowrap;
}

.acref-nrc-table tbody td[b-1rkpqghxrt] {
    font-size: 12px;
    padding: .4rem .6rem;
    vertical-align: middle;
}

.acref-cell--great[b-1rkpqghxrt] {
    background: rgba(16,185,129,.14);
    color: #065F46;
    font-weight: 700;
}

.acref-cell--ok[b-1rkpqghxrt] {
    background: rgba(59,130,246,.12);
    color: #1E40AF;
    font-weight: 600;
}

.acref-cell--warn[b-1rkpqghxrt] {
    background: rgba(245,158,11,.12);
    color: #92400E;
    font-weight: 600;
}

.acref-cell--loud[b-1rkpqghxrt] {
    background: rgba(239,68,68,.12);
    color: #991B1B;
    font-weight: 600;
}

:root[data-bs-theme="dark"] .acref-cell--great[b-1rkpqghxrt] {
    background: rgba(16,185,129,.18);
    color: #6ee7b7;
}

:root[data-bs-theme="dark"] .acref-cell--ok[b-1rkpqghxrt] {
    background: rgba(59,130,246,.18);
    color: #93c5fd;
}

:root[data-bs-theme="dark"] .acref-cell--warn[b-1rkpqghxrt] {
    background: rgba(245,158,11,.16);
    color: #fcd34d;
}

:root[data-bs-theme="dark"] .acref-cell--loud[b-1rkpqghxrt] {
    background: rgba(239,68,68,.16);
    color: #fca5a5;
}

/* ── Color legend pills ───────────────────────────────────── */
.acref-legend[b-1rkpqghxrt] {
    display: inline-block;
    padding: 1px 8px;
    border-radius: 5px;
    font-size: 10.5px;
    font-weight: 600;
}

.acref-legend--great[b-1rkpqghxrt] {
    background: rgba(16,185,129,.14);
    color: #065F46;
}

.acref-legend--ok[b-1rkpqghxrt] {
    background: rgba(59,130,246,.12);
    color: #1E40AF;
}

.acref-legend--warn[b-1rkpqghxrt] {
    background: rgba(245,158,11,.12);
    color: #92400E;
}

.acref-legend--loud[b-1rkpqghxrt] {
    background: rgba(239,68,68,.12);
    color: #991B1B;
}

/* ── Legend pills — dark mode overrides ───────────────────── */
:root[data-bs-theme="dark"] .acref-legend--great[b-1rkpqghxrt] {
    background: rgba(16,185,129,.18);
    color: #6ee7b7;
}

:root[data-bs-theme="dark"] .acref-legend--ok[b-1rkpqghxrt] {
    background: rgba(59,130,246,.18);
    color: #93c5fd;
}

:root[data-bs-theme="dark"] .acref-legend--warn[b-1rkpqghxrt] {
    background: rgba(245,158,11,.18);
    color: #fcd34d;
}

:root[data-bs-theme="dark"] .acref-legend--loud[b-1rkpqghxrt] {
    background: rgba(239,68,68,.18);
    color: #fca5a5;
}

/* ── Note callout ─────────────────────────────────────────── */
.acref-note[b-1rkpqghxrt] {
    font-size: 11.5px;
    color: var(--fq-muted, #5A6B7A);
    margin: 0;
    line-height: 1.55;
    padding: 6px 10px;
    background: rgba(0,40,85,0.04);
    border-left: 3px solid rgba(0,40,85,0.18);
    border-radius: 0 6px 6px 0;
}

:root[data-bs-theme="dark"] .acref-note[b-1rkpqghxrt] {
    background: rgba(255,255,255,0.04);
    border-left-color: rgba(241,184,40,0.30);
    color: rgba(255,255,255,0.55);
}

/* ══════════════════════════════════════════════════════════════════════════════
   ACOUSTICS REFERENCE — INTERACTIVE ADDITIONS
   All new styles added below existing rules. Light + dark mode throughout.
   Print/PDF media query at the bottom.
══════════════════════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────────────────────
   SPLASH CARD: Acoustics Reference  (.faq-pcard--acoustics)
───────────────────────────────────────────────────────────────────────────── */
.faq-pcard--acoustics[b-1rkpqghxrt] {
    --card-accent: #0E8C7A;
    --card-glow: rgba(14,140,122,0.10);
    --pcard-accent: #0E8C7A;
    --pcard-glow: rgba(14,140,122,0.09);
}

    .faq-pcard--acoustics .faq-pcard__glow[b-1rkpqghxrt] {
        background: radial-gradient(ellipse at 60% 40%, var(--card-glow), transparent 70%);
    }

    .faq-pcard--acoustics .faq-pcard__icon-wrap[b-1rkpqghxrt] {
        background: linear-gradient(135deg, #076357 0%, #0E8C7A 55%, #19c5ad 100%);
        box-shadow: 0 6px 20px rgba(14,140,122,0.45);
    }

    .faq-pcard--acoustics .faq-pcard__label[b-1rkpqghxrt] {
        color: #0E8C7A;
    }

    .faq-pcard--acoustics .faq-pcard__cta[b-1rkpqghxrt] {
        color: #0E8C7A;
    }

    .faq-pcard--acoustics:hover .faq-pcard__cta[b-1rkpqghxrt] {
        color: #076357;
    }

:root[data-bs-theme="dark"] .faq-pcard--acoustics[b-1rkpqghxrt] {
    --pcard-accent: #3ddcc8;
    --pcard-glow: rgba(61,220,200,0.09);
}



    :root[data-bs-theme="dark"] .faq-pcard--acoustics .faq-pcard__icon-wrap[b-1rkpqghxrt] {
        background: linear-gradient(135deg, #054d3f 0%, #0E8C7A 55%, #19c5ad 100%);
        box-shadow: 0 6px 20px rgba(14,140,122,0.60);
    }

    :root[data-bs-theme="dark"] .faq-pcard--acoustics .faq-pcard__label[b-1rkpqghxrt],
    :root[data-bs-theme="dark"] .faq-pcard--acoustics .faq-pcard__cta[b-1rkpqghxrt] {
        color: #3ddcc8;
    }

/* ─────────────────────────────────────────────────────────────────────────────
   STC COMPARISON TOOL   (.acref-compare-tool)
───────────────────────────────────────────────────────────────────────────── */
.acref-compare-tool[b-1rkpqghxrt] {
    border: 1px solid rgba(13,122,110,.20);
    border-radius: 16px;
    background: var(--fq-surface, #fff);
    box-shadow: var(--fq-shadow, 0 4px 14px rgba(0,0,0,.06));
    overflow: hidden;
}

:root[data-bs-theme="dark"] .acref-compare-tool[b-1rkpqghxrt] {
    background: var(--fq-surface, #151b22);
    border-color: rgba(78,205,196,.18);
    box-shadow: 0 6px 22px rgba(0,0,0,.45);
}

.acref-compare-tool__header[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem;
    cursor: pointer;
    background: linear-gradient(135deg, rgba(13,122,110,.07) 0%, rgba(13,122,110,.03) 100%);
    border-bottom: 1px solid rgba(13,122,110,.12);
    user-select: none;
    transition: background .15s ease;
}

    .acref-compare-tool__header:hover[b-1rkpqghxrt] {
        background: linear-gradient(135deg, rgba(13,122,110,.12) 0%, rgba(13,122,110,.06) 100%);
    }

:root[data-bs-theme="dark"] .acref-compare-tool__header[b-1rkpqghxrt] {
    background: rgba(78,205,196,.07);
    border-bottom-color: rgba(78,205,196,.14);
}

    :root[data-bs-theme="dark"] .acref-compare-tool__header:hover[b-1rkpqghxrt] {
        background: rgba(78,205,196,.12);
    }

.acref-compare-tool__title-row[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    font-size: 1rem;
    font-weight: 800;
    color: #0D7A6E;
    text-transform: uppercase;
    letter-spacing: .04em;
}

:root[data-bs-theme="dark"] .acref-compare-tool__title-row[b-1rkpqghxrt] {
    color: #4ecdc4;
}

.acref-compare-tool__badge[b-1rkpqghxrt] {
    display: inline-block;
    font-size: .65rem;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
    padding: .15rem .55rem;
    border-radius: 20px;
    background: rgba(13,122,110,.12);
    color: #0D7A6E;
    border: 1px solid rgba(13,122,110,.22);
    line-height: 1.4;
}

:root[data-bs-theme="dark"] .acref-compare-tool__badge[b-1rkpqghxrt] {
    background: rgba(78,205,196,.14);
    color: #4ecdc4;
    border-color: rgba(78,205,196,.28);
}

.acref-compare-tool__chevron[b-1rkpqghxrt] {
    font-size: .9rem;
    color: #0D7A6E;
    transition: transform .2s ease;
}

:root[data-bs-theme="dark"] .acref-compare-tool__chevron[b-1rkpqghxrt] {
    color: #4ecdc4;
}

.acref-compare-tool__body[b-1rkpqghxrt] {
    padding: 1.25rem 1.5rem 1.5rem;
    animation: acrefBodyIn-b-1rkpqghxrt .18s ease both;
}

@keyframes acrefBodyIn-b-1rkpqghxrt {
    from {
        opacity: 0;
        transform: translateY(-6px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.acref-compare-tool__intro[b-1rkpqghxrt] {
    font-size: .88rem;
    color: var(--fq-muted, #5a6b7a);
    margin-bottom: 1.25rem;
    line-height: 1.6;
}

.acref-compare-selectors[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: start;
    gap: 1rem;
}

@media (max-width: 640px) {
    .acref-compare-selectors[b-1rkpqghxrt] {
        grid-template-columns: 1fr;
    }

    .acref-compare-vs[b-1rkpqghxrt] {
        display: none;
    }
}

.acref-compare-label[b-1rkpqghxrt] {
    display: block;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: var(--fq-muted, #5a6b7a);
    margin-bottom: .55rem;
}

.acref-compare-vs[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 1.8rem;
    color: var(--fq-muted, #5a6b7a);
    font-size: 1.1rem;
}

.acref-compare-pills[b-1rkpqghxrt] {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
}

.acref-pill[b-1rkpqghxrt] {
    font-size: .78rem;
    font-weight: 700;
    padding: .28rem .65rem;
    border-radius: 8px;
    border: 1px solid rgba(0,40,85,.15);
    background: rgba(0,40,85,.05);
    color: var(--fq-text, #1a1a1a);
    cursor: pointer;
    transition: all .15s ease;
    white-space: nowrap;
}

    .acref-pill:hover[b-1rkpqghxrt] {
        background: rgba(0,40,85,.10);
        border-color: rgba(0,40,85,.28);
    }

:root[data-bs-theme="dark"] .acref-pill[b-1rkpqghxrt] {
    background: rgba(255,255,255,.06);
    border-color: rgba(255,255,255,.12);
    color: rgba(255,255,255,.80);
}

    :root[data-bs-theme="dark"] .acref-pill:hover[b-1rkpqghxrt] {
        background: rgba(255,255,255,.10);
        border-color: rgba(255,255,255,.22);
    }

.acref-pill--a-active[b-1rkpqghxrt] {
    background: #1E4D78 !important;
    border-color: #1E4D78 !important;
    color: #fff !important;
    box-shadow: 0 2px 8px rgba(30,77,120,.35);
}

.acref-pill--b-active[b-1rkpqghxrt] {
    background: #0D7A6E !important;
    border-color: #0D7A6E !important;
    color: #fff !important;
    box-shadow: 0 2px 8px rgba(13,122,110,.35);
}

/* Result bars */
.acref-compare-result__bars[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    gap: .65rem;
    overflow: visible;
}

.acref-compare-bar-row[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    gap: .6rem;
    overflow: visible;
}

.acref-compare-bar-label[b-1rkpqghxrt] {
    font-size: .78rem;
    font-weight: 600;
    color: var(--fq-muted, #5a6b7a);
    min-width: 90px;
    flex-shrink: 0;
    text-align: center;
}

.acref-compare-bar-track[b-1rkpqghxrt] {
    flex: 1;
    background: rgba(0,40,85,.07);
    border-radius: 6px;
    height: 28px;
    overflow: hidden;
    position: relative;
}

:root[data-bs-theme="dark"] .acref-compare-bar-track[b-1rkpqghxrt] {
    background: rgba(255,255,255,.07);
}


.acref-compare-bar-fill[b-1rkpqghxrt] {
    height: 100%;
    border-radius: 6px;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding-right: 0;
    transition: width .5s cubic-bezier(.4,0,.2,1);
    font-size: .75rem;
    font-weight: 700;
    color: #fff;
    min-width: 0;
}

/* Number sits outside the track — always visible */
.acref-compare-bar-num[b-1rkpqghxrt] {
    font-size: .88rem;
    font-weight: 800;
    min-width: 2rem;
    text-align: left;
    color: var(--fq-text, #1a1a1a);
    flex-shrink: 0;
    letter-spacing: .01em;
    font-variant-numeric: tabular-nums;
}

:root[data-bs-theme="dark"] .acref-compare-bar-num[b-1rkpqghxrt] {
    color: rgba(232,237,242,.92);
}

.acref-compare-bar--a[b-1rkpqghxrt] {
    background: linear-gradient(90deg, #1a3a60, #1E4D78);
}

.acref-compare-bar--b[b-1rkpqghxrt] {
    background: linear-gradient(90deg, #0a5c53, #0D7A6E);
}

/* Stat cards */
.acref-compare-result__cards[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: .75rem;
}

@media (max-width: 840px) {
    .acref-compare-result__cards[b-1rkpqghxrt] {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 640px) {
    .acref-compare-result__cards[b-1rkpqghxrt] {
        grid-template-columns: 1fr 1fr;
    }
}

.acref-compare-stat[b-1rkpqghxrt] {
    background: rgba(0,40,85,.04);
    border: 1px solid rgba(0,40,85,.09);
    border-radius: 12px;
    padding: .75rem 1rem;
    display: flex;
    flex-direction: column;
    gap: .25rem;
}

:root[data-bs-theme="dark"] .acref-compare-stat[b-1rkpqghxrt] {
    background: rgba(255,255,255,.04);
    border-color: rgba(255,255,255,.08);
}

.acref-compare-stat__label[b-1rkpqghxrt] {
    font-size: .67rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: var(--fq-muted, #5a6b7a);
}

.acref-compare-stat__val[b-1rkpqghxrt] {
    font-size: .9rem;
    font-weight: 700;
    color: var(--fq-text, #1a1a1a);
    line-height: 1.3;
}

:root[data-bs-theme="dark"] .acref-compare-stat__val[b-1rkpqghxrt] {
    color: rgba(255,255,255,.88);
}

.acref-compare-stat__val--diff[b-1rkpqghxrt] {
    font-size: 1.4rem;
    font-weight: 800;
    color: #0D7A6E;
}

:root[data-bs-theme="dark"] .acref-compare-stat__val--diff[b-1rkpqghxrt] {
    color: #4ecdc4;
}

/* Sub-text under a stat value — plain English explainer */
.acref-compare-stat__sub[b-1rkpqghxrt] {
    font-size: .72rem;
    font-weight: 400;
    color: var(--fq-muted, #5a6b7a);
    line-height: 1.45;
    margin-top: .1rem;
    font-style: italic;
}

:root[data-bs-theme="dark"] .acref-compare-stat__sub[b-1rkpqghxrt] {
    color: rgba(232,237,242,.58);
}

/* Insight callout */
.acref-compare-insight[b-1rkpqghxrt] {
    display: flex;
    align-items: flex-start;
    gap: .5rem;
    background: rgba(13,122,110,.06);
    border: 1px solid rgba(13,122,110,.16);
    border-radius: 10px;
    padding: .75rem 1rem;
    font-size: .85rem;
    color: var(--fq-text, #1a1a1a);
    line-height: 1.55;
}

    .acref-compare-insight i[b-1rkpqghxrt] {
        color: #0D7A6E;
        flex-shrink: 0;
        margin-top: .15rem;
    }

:root[data-bs-theme="dark"] .acref-compare-insight[b-1rkpqghxrt] {
    background: rgba(78,205,196,.07);
    border-color: rgba(78,205,196,.18);
    color: rgba(255,255,255,.80);
}

    :root[data-bs-theme="dark"] .acref-compare-insight i[b-1rkpqghxrt] {
        color: #4ecdc4;
    }

/* Source comparison mini-table */
.acref-compare-src-table[b-1rkpqghxrt] {
    border: 1px solid rgba(0,40,85,.09);
    border-radius: 10px;
    overflow: hidden;
    font-size: .8rem;
}

:root[data-bs-theme="dark"] .acref-compare-src-table[b-1rkpqghxrt] {
    border-color: rgba(255,255,255,.08);
}

.acref-compare-src-table__header[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: 1.6fr .8fr 1fr 1fr .8fr;
    background: #002855;
    color: rgba(255,255,255,.85);
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    padding: .45rem .85rem;
}

:root[data-bs-theme="dark"] .acref-compare-src-table__header[b-1rkpqghxrt] {
    background: #0e1a2e;
}

.acref-compare-src-row[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: 1.6fr .8fr 1fr 1fr .8fr;
    padding: .35rem .85rem;
    border-bottom: 1px solid rgba(0,40,85,.06);
    align-items: center;
}

:root[data-bs-theme="dark"] .acref-compare-src-row[b-1rkpqghxrt] {
    border-bottom-color: rgba(255,255,255,.05);
}

.acref-compare-src-row:last-child[b-1rkpqghxrt] {
    border-bottom: none;
}

.acref-compare-src-row:nth-child(even)[b-1rkpqghxrt] {
    background: rgba(0,40,85,.025);
}

:root[data-bs-theme="dark"] .acref-compare-src-row:nth-child(even)[b-1rkpqghxrt] {
    background: rgba(255,255,255,.025);
}

.acref-src-name[b-1rkpqghxrt] {
    font-weight: 600;
    color: var(--fq-text, #1a1a1a);
}

:root[data-bs-theme="dark"] .acref-src-name[b-1rkpqghxrt] {
    color: rgba(255,255,255,.85);
}

.acref-src-db[b-1rkpqghxrt] {
    text-align: center;
    color: var(--fq-muted, #5a6b7a);
    font-weight: 600;
}

.acref-src-tx[b-1rkpqghxrt] {
    text-align: center;
    font-weight: 600;
    border-radius: 5px;
    padding: .15rem .3rem;
    font-size: .78rem;
}

.acref-src-delta[b-1rkpqghxrt] {
    text-align: center;
    font-size: .78rem;
    color: var(--fq-muted, #5a6b7a);
    font-weight: 600;
}

.acref-src-delta--pos[b-1rkpqghxrt] {
    color: #059669;
    font-weight: 700;
}

:root[data-bs-theme="dark"] .acref-src-delta--pos[b-1rkpqghxrt] {
    color: #34d399;
}

@media (max-width: 640px) {
    .acref-compare-src-table__header[b-1rkpqghxrt],
    .acref-compare-src-row[b-1rkpqghxrt] {
        grid-template-columns: 1.2fr .7fr 1fr 1fr .7fr;
        font-size: .7rem;
        padding-left: .55rem;
        padding-right: .55rem;
    }
}

/* ─────────────────────────────────────────────────────────────────────────────
   ROOM ISOLATION CALCULATOR   (.acref-calc-tool)
───────────────────────────────────────────────────────────────────────────── */
.acref-calc-tool[b-1rkpqghxrt] {
    border: 1px solid rgba(30,77,120,.18);
    border-radius: 16px;
    background: var(--fq-surface, #fff);
    box-shadow: var(--fq-shadow, 0 4px 14px rgba(0,0,0,.06));
    overflow: hidden;
}

:root[data-bs-theme="dark"] .acref-calc-tool[b-1rkpqghxrt] {
    background: var(--fq-surface, #151b22);
    border-color: rgba(155,198,255,.16);
}

.acref-calc-tool__header[b-1rkpqghxrt] {
    background: linear-gradient(135deg, rgba(30,77,120,.08) 0%, rgba(30,77,120,.03) 100%);
    border-bottom: 1px solid rgba(30,77,120,.12);
    padding: 1rem 1.25rem .85rem;
}

:root[data-bs-theme="dark"] .acref-calc-tool__header[b-1rkpqghxrt] {
    background: rgba(155,198,255,.06);
    border-bottom-color: rgba(155,198,255,.12);
}

.acref-calc-tool__title-row[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    font-size: 1rem;
    font-weight: 800;
    color: #1E4D78;
    text-transform: uppercase;
    letter-spacing: .04em;
    margin-bottom: .35rem;
}

:root[data-bs-theme="dark"] .acref-calc-tool__title-row[b-1rkpqghxrt] {
    color: #9bc6ff;
}

.acref-calc-tool__sub[b-1rkpqghxrt] {
    font-size: .84rem;
    color: var(--fq-muted, #5a6b7a);
    line-height: 1.5;
}

.acref-calc-tool__body[b-1rkpqghxrt] {
    padding: 1.25rem 1.5rem 1.5rem;
}

.acref-calc-inputs[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem;
}

@media (max-width: 600px) {
    .acref-calc-inputs[b-1rkpqghxrt] {
        grid-template-columns: 1fr;
    }
}

.acref-calc-field[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    gap: .4rem;
}

.acref-calc-label[b-1rkpqghxrt] {
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: var(--fq-muted, #5a6b7a);
}

.acref-calc-select[b-1rkpqghxrt] {
    width: 100%;
    padding: .55rem .85rem;
    border-radius: 10px;
    border: 1px solid rgba(0,40,85,.18);
    background: var(--fq-surface-hi, #f5f6f8);
    color: var(--fq-text, #1a1a1a);
    font-size: .88rem;
    font-weight: 600;
    font-family: inherit;
    appearance: auto;
    cursor: pointer;
    transition: border-color .15s ease, box-shadow .15s ease;
}

    .acref-calc-select:focus[b-1rkpqghxrt] {
        outline: none;
        border-color: #1E4D78;
        box-shadow: 0 0 0 3px rgba(30,77,120,.14);
    }

:root[data-bs-theme="dark"] .acref-calc-select[b-1rkpqghxrt] {
    background: #1a2333;
    border-color: rgba(155,198,255,.22);
    color: rgba(232,237,242,.92);
    color-scheme: dark;
}

    :root[data-bs-theme="dark"] .acref-calc-select:focus[b-1rkpqghxrt] {
        border-color: #9bc6ff;
        box-shadow: 0 0 0 3px rgba(155,198,255,.18);
    }

    /* Force option elements to match dark background — prevents OS white flash */
    :root[data-bs-theme="dark"] .acref-calc-select option[b-1rkpqghxrt] {
        background: #1a2333;
        color: rgba(232,237,242,.92);
    }

        :root[data-bs-theme="dark"] .acref-calc-select option:checked[b-1rkpqghxrt],
        :root[data-bs-theme="dark"] .acref-calc-select option:hover[b-1rkpqghxrt] {
            background: #1E4D78;
            color: #F1B828;
        }

.acref-calc-readout[b-1rkpqghxrt] {
    font-size: .78rem;
    font-weight: 700;
    color: #1E4D78;
    background: rgba(30,77,120,.08);
    border: 1px solid rgba(30,77,120,.15);
    border-radius: 6px;
    padding: .18rem .65rem;
    display: inline-block;
    align-self: flex-start;
}

:root[data-bs-theme="dark"] .acref-calc-readout[b-1rkpqghxrt] {
    color: #9bc6ff;
    background: rgba(155,198,255,.10);
    border-color: rgba(155,198,255,.20);
}

.acref-calc-result[b-1rkpqghxrt] {
    background: rgba(0,40,85,.03);
    border: 1px solid rgba(0,40,85,.10);
    border-radius: 12px;
    padding: 1rem 1.25rem;
}

:root[data-bs-theme="dark"] .acref-calc-result[b-1rkpqghxrt] {
    background: rgba(255,255,255,.03);
    border-color: rgba(255,255,255,.08);
}

.acref-calc-result__stc-badge[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: .75rem;
}

.acref-calc-result__label[b-1rkpqghxrt] {
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: var(--fq-muted, #5a6b7a);
}

.acref-calc-result__val[b-1rkpqghxrt] {
    font-size: 1.5rem;
    font-weight: 900;
    color: #002855;
    letter-spacing: -.01em;
    line-height: 1;
}

:root[data-bs-theme="dark"] .acref-calc-result__val[b-1rkpqghxrt] {
    color: #F1B828;
}

.acref-calc-detail-row[b-1rkpqghxrt] {
    display: flex;
    align-items: flex-start;
    gap: .3rem;
    font-size: .85rem;
    color: var(--fq-text, #1a1a1a);
    line-height: 1.5;
}

    .acref-calc-detail-row i[b-1rkpqghxrt] {
        color: #0D7A6E;
        flex-shrink: 0;
        margin-top: .1rem;
    }

:root[data-bs-theme="dark"] .acref-calc-detail-row[b-1rkpqghxrt] {
    color: rgba(255,255,255,.80);
}

    :root[data-bs-theme="dark"] .acref-calc-detail-row i[b-1rkpqghxrt] {
        color: #4ecdc4;
    }

.acref-calc-result__note[b-1rkpqghxrt] {
    font-size: .75rem;
    color: var(--fq-muted, #5a6b7a);
    background: rgba(241,184,40,.06);
    border: 1px solid rgba(241,184,40,.16);
    border-radius: 8px;
    padding: .55rem .75rem;
    line-height: 1.55;
}

:root[data-bs-theme="dark"] .acref-calc-result__note[b-1rkpqghxrt] {
    background: rgba(241,184,40,.08);
    border-color: rgba(241,184,40,.20);
    color: rgba(255,255,255,.55);
}

/* ─────────────────────────────────────────────────────────────────────────────
   CLICKABLE STC BAR ROWS   (.acref-db-row--clickable)
───────────────────────────────────────────────────────────────────────────── */
.acref-db-row--clickable[b-1rkpqghxrt] {
    cursor: pointer;
    border-radius: 8px;
    padding: .2rem .35rem;
    margin: 0 -.35rem;
    transition: background .14s ease;
}

    .acref-db-row--clickable:hover[b-1rkpqghxrt] {
        background: rgba(0,40,85,.05);
    }

:root[data-bs-theme="dark"] .acref-db-row--clickable:hover[b-1rkpqghxrt] {
    background: rgba(255,255,255,.06);
}

.acref-db-row--open[b-1rkpqghxrt] {
    background: rgba(0,40,85,.06) !important;
    border-radius: 8px 8px 0 0;
}

:root[data-bs-theme="dark"] .acref-db-row--open[b-1rkpqghxrt] {
    background: rgba(255,255,255,.07) !important;
}

.acref-bar-chevron[b-1rkpqghxrt] {
    font-size: .75rem;
    color: var(--fq-muted, #5a6b7a);
    flex-shrink: 0;
    margin-left: .25rem;
}

/* Expanded TL detail panel */
.acref-stc-detail-panel[b-1rkpqghxrt] {
    background: rgba(0,40,85,.03);
    border: 1px solid rgba(0,40,85,.10);
    border-top: none;
    border-radius: 0 0 10px 10px;
    padding: .85rem 1rem .9rem;
    margin: 0 -.35rem .4rem;
    animation: acrefBodyIn-b-1rkpqghxrt .15s ease both;
}

.acref-stc-detail-panel--window[b-1rkpqghxrt] {
    border-color: rgba(13,122,110,.14);
    background: rgba(13,122,110,.03);
}

:root[data-bs-theme="dark"] .acref-stc-detail-panel[b-1rkpqghxrt] {
    background: rgba(255,255,255,.03);
    border-color: rgba(255,255,255,.08);
}

:root[data-bs-theme="dark"] .acref-stc-detail-panel--window[b-1rkpqghxrt] {
    border-color: rgba(78,205,196,.12);
    background: rgba(78,205,196,.03);
}

.acref-stc-detail-note[b-1rkpqghxrt] {
    font-size: .83rem;
    color: var(--fq-muted, #5a6b7a);
    margin-bottom: .6rem;
    line-height: 1.55;
}

.acref-stc-detail-label[b-1rkpqghxrt] {
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--fq-muted, #5a6b7a);
    margin-bottom: .35rem;
}

/* Chip row */
.acref-stc-chips[b-1rkpqghxrt] {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
}

.acref-stc-chip[b-1rkpqghxrt] {
    display: inline-block;
    font-size: .68rem;
    font-weight: 700;
    padding: .18rem .6rem;
    border-radius: 6px;
    white-space: nowrap;
}

.acref-stc-chip--blue[b-1rkpqghxrt] {
    background: rgba(30,77,120,.10);
    color: #1E4D78;
    border: 1px solid rgba(30,77,120,.20);
}

.acref-stc-chip--green[b-1rkpqghxrt] {
    background: rgba(5,150,105,.09);
    color: #065f46;
    border: 1px solid rgba(5,150,105,.18);
}

.acref-stc-chip--teal[b-1rkpqghxrt] {
    background: rgba(13,122,110,.10);
    color: #0D7A6E;
    border: 1px solid rgba(13,122,110,.20);
}

.acref-stc-chip--muted[b-1rkpqghxrt] {
    background: rgba(0,40,85,.05);
    color: var(--fq-muted, #5a6b7a);
    border: 1px solid rgba(0,40,85,.09);
}

:root[data-bs-theme="dark"] .acref-stc-chip--blue[b-1rkpqghxrt] {
    background: rgba(155,198,255,.12);
    color: #9bc6ff;
    border-color: rgba(155,198,255,.22);
}

:root[data-bs-theme="dark"] .acref-stc-chip--green[b-1rkpqghxrt] {
    background: rgba(52,211,153,.10);
    color: #34d399;
    border-color: rgba(52,211,153,.20);
}

:root[data-bs-theme="dark"] .acref-stc-chip--teal[b-1rkpqghxrt] {
    background: rgba(78,205,196,.12);
    color: #4ecdc4;
    border-color: rgba(78,205,196,.22);
}

:root[data-bs-theme="dark"] .acref-stc-chip--muted[b-1rkpqghxrt] {
    background: rgba(255,255,255,.05);
    color: rgba(255,255,255,.50);
    border-color: rgba(255,255,255,.09);
}

/* TL compact table */
.acref-stc-tl-scroll[b-1rkpqghxrt] {
    overflow-x: auto;
    margin-bottom: .35rem;
}

.acref-stc-tl-table[b-1rkpqghxrt] {
    width: 100%;
    min-width: 560px;
    border-collapse: separate;
    border-spacing: 2px;
    font-size: .75rem;
}

    .acref-stc-tl-table thead th[b-1rkpqghxrt] {
        background: rgba(0,40,85,.08);
        color: var(--fq-muted, #5a6b7a);
        font-weight: 700;
        padding: .25rem .3rem;
        text-align: center;
        border-radius: 4px;
        font-size: .68rem;
    }

:root[data-bs-theme="dark"] .acref-stc-tl-table thead th[b-1rkpqghxrt] {
    background: rgba(255,255,255,.07);
    color: rgba(255,255,255,.50);
}

.acref-stc-tl-table tbody td[b-1rkpqghxrt] {
    text-align: center;
    font-weight: 700;
    color: #002855;
    background: rgba(30,77,120,.06);
    padding: .22rem .3rem;
    border-radius: 4px;
    font-size: .78rem;
}

:root[data-bs-theme="dark"] .acref-stc-tl-table tbody td[b-1rkpqghxrt] {
    color: #F1B828;
    background: rgba(241,184,40,.07);
}

/* Mini bar chart */
.acref-stc-minichart[b-1rkpqghxrt] {
    display: flex;
    align-items: flex-end;
    gap: 3px;
    height: 50px;
    padding: 0 2px;
    border-bottom: 1px solid rgba(0,40,85,.10);
}

:root[data-bs-theme="dark"] .acref-stc-minichart[b-1rkpqghxrt] {
    border-bottom-color: rgba(255,255,255,.08);
}

.acref-stc-minibar-wrap[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex: 1;
    height: 100%;
    justify-content: flex-end;
    gap: 2px;
}

.acref-stc-minibar[b-1rkpqghxrt] {
    width: 100%;
    border-radius: 3px 3px 0 0;
    min-height: 3px;
    transition: height .3s ease;
}

.acref-stc-minibar--door[b-1rkpqghxrt] {
    background: #1E4D78;
}

.acref-stc-minibar--window[b-1rkpqghxrt] {
    background: #0D7A6E;
}

:root[data-bs-theme="dark"] .acref-stc-minibar--door[b-1rkpqghxrt] {
    background: #5b8fc2;
}

:root[data-bs-theme="dark"] .acref-stc-minibar--window[b-1rkpqghxrt] {
    background: #4ecdc4;
}

.acref-stc-minibar-hz[b-1rkpqghxrt] {
    font-size: .58rem;
    color: var(--fq-muted, #5a6b7a);
    white-space: nowrap;
}

/* ─────────────────────────────────────────────────────────────────────────────
   WINDOW COLUMN HIGHLIGHT in the noise reduction table
───────────────────────────────────────────────────────────────────────────── */
.acref-thead--window[b-1rkpqghxrt] {
    background: #0D7A6E !important;
}

.acref-cell--window-col[b-1rkpqghxrt] {
    border-left: 2px solid rgba(13,122,110,.20) !important;
}

.acref-legend--window[b-1rkpqghxrt] {
    background: rgba(13,122,110,.12);
    color: #0D7A6E;
}

:root[data-bs-theme="dark"] .acref-legend--window[b-1rkpqghxrt] {
    background: rgba(78,205,196,.12);
    color: #4ecdc4;
}

/* ─────────────────────────────────────────────────────────────────────────────
   PRINT / PDF STYLES
───────────────────────────────────────────────────────────────────────────── */
@media print {
    /* Hide interactive chrome */
    .faq-hero[b-1rkpqghxrt],
    .faq-subnav[b-1rkpqghxrt],
    .faq-search-wrap[b-1rkpqghxrt],
    .faq-pdf-btn[b-1rkpqghxrt],
    .faq-return-btn[b-1rkpqghxrt],
    .faq-select-splash[b-1rkpqghxrt],
    .acref-compare-tool__chevron[b-1rkpqghxrt],
    .acref-bar-chevron[b-1rkpqghxrt],
    .acref-calc-select[b-1rkpqghxrt] {
        display: none !important;
    }

    /* Force white backgrounds */
    body[b-1rkpqghxrt],
    .faq-page[b-1rkpqghxrt],
    .faq-card[b-1rkpqghxrt],
    .acref-compare-tool[b-1rkpqghxrt],
    .acref-calc-tool[b-1rkpqghxrt],
    .acref-compare-result[b-1rkpqghxrt],
    .acref-stc-detail-panel[b-1rkpqghxrt],
    .acref-calc-result[b-1rkpqghxrt] {
        background: #fff !important;
        color: #000 !important;
        box-shadow: none !important;
    }

    /* Force tool bodies open */
    .acref-compare-tool__body[b-1rkpqghxrt],
    .acref-calc-tool__body[b-1rkpqghxrt] {
        display: block !important;
    }

    /* Force expand all detail panels */
    .acref-stc-detail-panel[b-1rkpqghxrt] {
        display: block !important;
    }

    /* Banner + bars keep color */
    .acref-banner[b-1rkpqghxrt] {
        background: #002855 !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .acref-bar--door[b-1rkpqghxrt], .acref-compare-bar--a[b-1rkpqghxrt], .acref-stc-minibar--door[b-1rkpqghxrt] {
        background: #1E4D78 !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    .acref-bar--window[b-1rkpqghxrt], .acref-compare-bar--b[b-1rkpqghxrt], .acref-stc-minibar--window[b-1rkpqghxrt] {
        background: #0D7A6E !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    /* Table cells keep color */
    .acref-cell--great[b-1rkpqghxrt], .acref-cell--ok[b-1rkpqghxrt], .acref-cell--warn[b-1rkpqghxrt], .acref-cell--loud[b-1rkpqghxrt] {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }

    /* Page breaks */
    .acref-grid-2[b-1rkpqghxrt] {
        page-break-inside: avoid;
    }

    .acref-compare-tool[b-1rkpqghxrt] {
        page-break-before: always;
    }

    /* Stat cards in full row */
    .acref-compare-result__cards[b-1rkpqghxrt] {
        grid-template-columns: repeat(3, 1fr) !important;
    }

    .acref-compare-src-table__header[b-1rkpqghxrt],
    .acref-compare-src-row[b-1rkpqghxrt] {
        grid-template-columns: 1.6fr .8fr 1fr 1fr .8fr !important;
    }

    /* Hide footer watermark */
    .iac-login-footer[b-1rkpqghxrt] {
        display: none !important;
    }
}

/* ─────────────────────────────────────────────────────────────────────────────
   RESPONSIVE — small screens
───────────────────────────────────────────────────────────────────────────── */
@media (max-width: 767.98px) {
    .acref-compare-tool__body[b-1rkpqghxrt],
    .acref-calc-tool__body[b-1rkpqghxrt] {
        padding: 1rem;
    }

    .acref-compare-result__cards[b-1rkpqghxrt] {
        grid-template-columns: 1fr 1fr;
    }

    .acref-stc-tl-table[b-1rkpqghxrt] {
        min-width: 420px;
    }
}

/* ══════════════════════════════════════════════════════════════════════════════
   ACOUSTICS REFERENCE PAGE — ADDITIONAL STYLES (Round 2)
══════════════════════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────────────────────
   ACOUSTICS REFERENCE SUBNAV  (.faq-subnav--acoustics)
   Teal/green accent to match the acoustics brand color
───────────────────────────────────────────────────────────────────────────── */
/* Acoustics subnav matches site navy/gold style exactly like doors/windows */
.faq-subnav--acoustics[b-1rkpqghxrt] {
    /* Inherits base .faq-subnav navy/gold gradient */
}

.faq-subnav__pill--acoustics[b-1rkpqghxrt] {
    color: rgba(0,40,85,0.80);
    border-color: rgba(241,184,40,0.28);
    background: linear-gradient(180deg, rgba(241,184,40,0.06), rgba(255,255,255,0.92));
}

    .faq-subnav__pill--acoustics:hover[b-1rkpqghxrt] {
        background: rgba(0,40,85,.08) !important;
        border-color: rgba(0,40,85,.22) !important;
        color: #002855 !important;
    }

    .faq-subnav__pill--acoustics.active[b-1rkpqghxrt] {
        background: #002855 !important;
        border-color: #002855 !important;
        color: #F1B828 !important;
        box-shadow: 0 2px 8px rgba(0,40,85,.28) !important;
    }

:root[data-bs-theme="dark"] .faq-subnav__pill--acoustics[b-1rkpqghxrt] {
    color: rgba(232,237,242,0.80);
    border-color: rgba(241,184,40,0.20);
    background: linear-gradient(180deg, rgba(241,184,40,0.07), rgba(30,40,52,0.80));
}

    :root[data-bs-theme="dark"] .faq-subnav__pill--acoustics:hover[b-1rkpqghxrt] {
        background: rgba(91,155,213,.12) !important;
        border-color: rgba(241,184,40,0.38) !important;
        color: #ffe8a3 !important;
    }

    :root[data-bs-theme="dark"] .faq-subnav__pill--acoustics.active[b-1rkpqghxrt] {
        background: linear-gradient(180deg, #1E4D78, #0d1e3a) !important;
        border-color: rgba(241,184,40,0.55) !important;
        color: #F1B828 !important;
        box-shadow: 0 2px 10px rgba(0,0,0,0.40) !important;
    }

/* Education pill on the Acoustics subnav — gold accent, pushed right */
.faq-subnav--acoustics .faq-subnav__pill--edu[b-1rkpqghxrt] {
    color: #002855 !important;
    border-color: rgba(241,184,40,.50) !important;
    background: linear-gradient(180deg, rgba(241,184,40,.15), rgba(255,255,255,.92)) !important;
    margin-left: auto;
}

    .faq-subnav--acoustics .faq-subnav__pill--edu:hover[b-1rkpqghxrt] {
        background: linear-gradient(180deg, rgba(241,184,40,.28), rgba(255,255,255,.96)) !important;
        border-color: rgba(241,184,40,.70) !important;
        color: #002855 !important;
    }

    .faq-subnav--acoustics .faq-subnav__pill--edu.active[b-1rkpqghxrt] {
        background: #002855 !important;
        border-color: #F1B828 !important;
        color: #F1B828 !important;
        box-shadow: 0 2px 8px rgba(0,40,85,.28) !important;
    }

:root[data-bs-theme="dark"] .faq-subnav--acoustics .faq-subnav__pill--edu[b-1rkpqghxrt] {
    color: #F1B828 !important;
    border-color: rgba(241,184,40,.35) !important;
    background: rgba(241,184,40,.10) !important;
}

    :root[data-bs-theme="dark"] .faq-subnav--acoustics .faq-subnav__pill--edu:hover[b-1rkpqghxrt] {
        background: rgba(241,184,40,.20) !important;
        border-color: rgba(241,184,40,.55) !important;
    }

    :root[data-bs-theme="dark"] .faq-subnav--acoustics .faq-subnav__pill--edu.active[b-1rkpqghxrt] {
        background: linear-gradient(180deg, #1E4D78, #0d1e3a) !important;
        border-color: #F1B828 !important;
        color: #F1B828 !important;
    }

/* ─────────────────────────────────────────────────────────────────────────────
   WINDOW BAR GROUP LABELS  (.acref-win-group-label)
───────────────────────────────────────────────────────────────────────────── */
.acref-win-group-label[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    gap: .6rem;
    margin: .85rem 0 .45rem;
    padding-bottom: .4rem;
    border-bottom: 2px solid rgba(0,40,85,.08);
}

:root[data-bs-theme="dark"] .acref-win-group-label[b-1rkpqghxrt] {
    border-bottom-color: rgba(255,255,255,.07);
}

.acref-win-group-label:first-child[b-1rkpqghxrt] {
    margin-top: 0;
}

.acref-win-group-badge[b-1rkpqghxrt] {
    display: inline-block;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
    padding: .2rem .65rem;
    border-radius: 6px;
    flex-shrink: 0;
}

.acref-win-group-badge--cclass[b-1rkpqghxrt] {
    background: rgba(30,77,120,.12);
    color: #1E4D78;
    border: 1px solid rgba(30,77,120,.22);
}

:root[data-bs-theme="dark"] .acref-win-group-badge--cclass[b-1rkpqghxrt] {
    background: rgba(155,198,255,.12);
    color: #9bc6ff;
    border-color: rgba(155,198,255,.22);
}

.acref-win-group-badge--allcon[b-1rkpqghxrt] {
    background: rgba(13,122,110,.12);
    color: #0D7A6E;
    border: 1px solid rgba(13,122,110,.22);
}

:root[data-bs-theme="dark"] .acref-win-group-badge--allcon[b-1rkpqghxrt] {
    background: rgba(78,205,196,.12);
    color: #4ecdc4;
    border-color: rgba(78,205,196,.22);
}

.acref-win-group-desc[b-1rkpqghxrt] {
    font-size: .75rem;
    color: var(--fq-muted, #5a6b7a);
    font-style: italic;
}

/* ─────────────────────────────────────────────────────────────────────────────
   WINDOW BAR FILL COLORS — C-Class vs ALL-CON
───────────────────────────────────────────────────────────────────────────── */
.acref-bar--cclass[b-1rkpqghxrt] {
    background: linear-gradient(90deg, #1a3a60, #1E4D78);
}

.acref-bar--allcon[b-1rkpqghxrt] {
    background: linear-gradient(90deg, #0a5c53, #0D7A6E);
}

/* ─────────────────────────────────────────────────────────────────────────────
   C-CLASS INFO BLOCK (no per-frequency data available)
───────────────────────────────────────────────────────────────────────────── */
.acref-cclass-info-block[b-1rkpqghxrt] {
    padding: .65rem .85rem;
    background: rgba(30,77,120,.04);
    border-radius: 8px;
    border: 1px solid rgba(30,77,120,.10);
    margin-bottom: .35rem;
}

:root[data-bs-theme="dark"] .acref-cclass-info-block[b-1rkpqghxrt] {
    background: rgba(155,198,255,.04);
    border-color: rgba(155,198,255,.10);
}

/* ─────────────────────────────────────────────────────────────────────────────
   TABLE PADDING FIXES — text no longer hugs table edges
   Applies to all .iac-table, .faq-ref-table, acref-nrc-table cells
───────────────────────────────────────────────────────────────────────────── */
.iac-table th[b-1rkpqghxrt],
.iac-table td[b-1rkpqghxrt],
.faq-ref-table th[b-1rkpqghxrt],
.faq-ref-table td[b-1rkpqghxrt] {
    padding: .55rem .85rem !important;
}

/* Compact variant — slightly tighter but still breathing room */
.faq-ref-table--compact th[b-1rkpqghxrt],
.faq-ref-table--compact td[b-1rkpqghxrt] {
    padding: .4rem .7rem !important;
}

/* Acoustic reference table — wide table, balanced padding */
.acoustic-ref-table th[b-1rkpqghxrt],
.acoustic-ref-table td[b-1rkpqghxrt] {
    padding: .45rem .6rem !important;
}

/* NRC noise reduction table */
.acref-nrc-table thead th[b-1rkpqghxrt] {
    padding: .5rem .75rem !important;
    white-space: nowrap;
}

.acref-nrc-table tbody td[b-1rkpqghxrt] {
    padding: .45rem .6rem !important;
}

/* STC TL table inside detail panels */
.acref-stc-tl-table thead th[b-1rkpqghxrt] {
    padding: .3rem .45rem !important;
}

.acref-stc-tl-table tbody td[b-1rkpqghxrt] {
    padding: .3rem .35rem !important;
}

/* STC comparison source table — needs breathing room */
.acref-compare-src-table__header > span[b-1rkpqghxrt],
.acref-compare-src-row > span[b-1rkpqghxrt] {
    padding: .2rem .35rem;
}

/* Window STC performance table on the windows FAQ page */
.faq-win-stc-tabs[b-1rkpqghxrt] {
    gap: .45rem;
    flex-wrap: wrap;
}

/* Discount table */
.discount-ref-table th[b-1rkpqghxrt],
.discount-ref-table td[b-1rkpqghxrt] {
    padding: .45rem .75rem !important;
}

/* ─────────────────────────────────────────────────────────────────────────────
   STC COMPARISON TABLE header spacing (was grid with tight padding)
───────────────────────────────────────────────────────────────────────────── */
.acref-compare-src-table__header[b-1rkpqghxrt] {
    padding: .5rem 1rem !important;
    gap: .5rem;
}

.acref-compare-src-row[b-1rkpqghxrt] {
    padding: .4rem 1rem !important;
    gap: .5rem;
}

/* ─────────────────────────────────────────────────────────────────────────────
   GENERAL TABLE WRAPPER improvements — padding inside the table wrap
───────────────────────────────────────────────────────────────────────────── */
.faq-table-wrap[b-1rkpqghxrt] {
    padding: 1.1rem 1.25rem 1rem;
    background: var(--fq-surface, #fff);
    border: 1px solid var(--fq-border, #d7dde3);
    border-radius: 14px;
    box-shadow: var(--fq-shadow, 0 4px 14px rgba(0,0,0,.05));
}

:root[data-bs-theme="dark"] .faq-table-wrap[b-1rkpqghxrt] {
    background: var(--fq-surface, #151b22);
    border-color: rgba(255,255,255,.08);
}

.faq-table__title[b-1rkpqghxrt] {
    font-size: .9rem;
    font-weight: 800;
    color: #002855;
    margin-bottom: .4rem;
    display: flex;
    align-items: center;
}

:root[data-bs-theme="dark"] .faq-table__title[b-1rkpqghxrt] {
    color: #9bc6ff;
}

.faq-table__footnote[b-1rkpqghxrt] {
    font-size: .78rem;
    color: var(--fq-muted, #5a6b7a);
    margin: .4rem 0 0;
    line-height: 1.55;
}

/* Acoustic reference table wrapper — scrollable, with inner padding */
.acoustic-ref-scroll[b-1rkpqghxrt] {
    border-radius: 8px;
    overflow: auto;
}

.acoustic-ref-wrap[b-1rkpqghxrt] {
    padding: 1rem 1.1rem !important;
}

/* ─────────────────────────────────────────────────────────────────────────────
   PRINT ADDITIONS — also suppress Acoustics subnav chrome
───────────────────────────────────────────────────────────────────────────── */
@media print {
    .faq-subnav--acoustics[b-1rkpqghxrt],
    .acref-win-group-label[b-1rkpqghxrt] {
        display: none !important;
    }

    .acref-win-group-badge[b-1rkpqghxrt],
    .acref-win-group-desc[b-1rkpqghxrt] {
        display: none !important;
    }
}

/* ══════════════════════════════════════════════════════════════════════════════
   ACOUSTICS REFERENCE — FUTURISTIC REDESIGN (Round 3)
   Full light + dark mode. All new classes layered on top of existing rules.
══════════════════════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────────────────────
   FUTURISTIC HERO HEADER  (.acref-hero)
   Animated waveform rings + grid backdrop, works in both modes
───────────────────────────────────────────────────────────────────────────── */
.acref-hero[b-1rkpqghxrt] {
    position: relative;
    border-radius: 20px;
    overflow: hidden;
    padding: 2.75rem 2rem 2.5rem;
    background: #002855;
    min-height: 220px;
    display: flex;
    align-items: center;
}

:root[data-bs-theme="dark"] .acref-hero[b-1rkpqghxrt] {
    background: #060d18;
    box-shadow: 0 0 0 1px rgba(78,205,196,.15), 0 20px 60px rgba(0,0,0,.6);
}

/* Grid backdrop */
.acref-hero__grid[b-1rkpqghxrt] {
    position: absolute;
    inset: 0;
    background-image: linear-gradient(rgba(78,205,196,.06) 1px, transparent 1px), linear-gradient(90deg, rgba(78,205,196,.06) 1px, transparent 1px);
    background-size: 32px 32px;
    mask-image: radial-gradient(ellipse 80% 80% at 50% 50%, black 40%, transparent 100%);
    -webkit-mask-image: radial-gradient(ellipse 80% 80% at 50% 50%, black 40%, transparent 100%);
}

:root[data-bs-theme="dark"] .acref-hero__grid[b-1rkpqghxrt] {
    background-image: linear-gradient(rgba(78,205,196,.10) 1px, transparent 1px), linear-gradient(90deg, rgba(78,205,196,.10) 1px, transparent 1px);
}

/* Animated wave rings */
.acref-hero__bg[b-1rkpqghxrt] {
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.acref-hero__wave[b-1rkpqghxrt] {
    position: absolute;
    border-radius: 50%;
    border: 1px solid rgba(78,205,196,.18);
    animation: acrefWaveExpand-b-1rkpqghxrt 4s ease-out infinite;
    top: 50%;
    right: -60px;
    transform: translate(0, -50%);
}

.acref-hero__wave--1[b-1rkpqghxrt] {
    width: 220px;
    height: 220px;
    margin-top: -110px;
    margin-right: -110px;
    animation-delay: 0s;
}

.acref-hero__wave--2[b-1rkpqghxrt] {
    width: 360px;
    height: 360px;
    margin-top: -180px;
    margin-right: -180px;
    animation-delay: 1.3s;
}

.acref-hero__wave--3[b-1rkpqghxrt] {
    width: 500px;
    height: 500px;
    margin-top: -250px;
    margin-right: -250px;
    animation-delay: 2.6s;
}

@keyframes acrefWaveExpand-b-1rkpqghxrt {
    0% {
        opacity: .7;
        transform: translate(0, -50%) scale(.6);
    }

    100% {
        opacity: 0;
        transform: translate(0, -50%) scale(1);
    }
}

.acref-hero__content[b-1rkpqghxrt] {
    position: relative;
    z-index: 1;
    max-width: 760px;
}

.acref-hero__eyebrow[b-1rkpqghxrt] {
    display: inline-flex;
    align-items: center;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #4ecdc4;
    background: rgba(78,205,196,.12);
    border: 1px solid rgba(78,205,196,.25);
    border-radius: 20px;
    padding: .25rem .85rem;
    margin-bottom: 1rem;
}

.acref-hero__title[b-1rkpqghxrt] {
    font-size: 2.1rem;
    font-weight: 900;
    color: #fff;
    margin: 0 0 .65rem;
    line-height: 1.1;
    letter-spacing: -.02em;
}

.acref-hero__title-accent[b-1rkpqghxrt] {
    color: #F1B828;
    position: relative;
}

.acref-hero__sub[b-1rkpqghxrt] {
    font-size: .93rem;
    color: rgba(255,255,255,.65);
    line-height: 1.65;
    margin-bottom: 1.5rem;
    max-width: 640px;
}

.acref-hero__stats[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    gap: 0;
    flex-wrap: wrap;
    row-gap: .75rem;
}

.acref-hero__stat[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    gap: .15rem;
    padding: .5rem 1.25rem;
}

    .acref-hero__stat:first-child[b-1rkpqghxrt] {
        padding-left: 0;
    }

.acref-hero__stat-val[b-1rkpqghxrt] {
    font-size: 1.05rem;
    font-weight: 800;
    color: #F1B828;
    font-variant-numeric: tabular-nums;
}

.acref-hero__stat-lbl[b-1rkpqghxrt] {
    font-size: .68rem;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: rgba(255,255,255,.45);
}

.acref-hero__stat-div[b-1rkpqghxrt] {
    width: 1px;
    height: 32px;
    background: rgba(255,255,255,.12);
    align-self: center;
}

@media (max-width: 640px) {
    .acref-hero[b-1rkpqghxrt] {
        padding: 1.75rem 1.25rem;
    }

    .acref-hero__title[b-1rkpqghxrt] {
        font-size: 1.5rem;
    }

    .acref-hero__wave--3[b-1rkpqghxrt] {
        display: none;
    }

    .acref-hero__stat-div[b-1rkpqghxrt] {
        display: none;
    }

    .acref-hero__stat[b-1rkpqghxrt] {
        padding: .25rem .6rem;
    }
}

/* ─────────────────────────────────────────────────────────────────────────────
   "DID YOU KNOW" STRIP  (.acref-dyk-strip)
───────────────────────────────────────────────────────────────────────────── */
.acref-dyk-strip[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: 1fr auto 1fr auto 1fr;
    align-items: center;
    background: linear-gradient(135deg, rgba(30,77,120,.07) 0%, rgba(13,122,110,.06) 100%);
    border: 1px solid rgba(30,77,120,.14);
    border-radius: 14px;
    padding: .85rem 1.25rem;
    gap: 0;
}

:root[data-bs-theme="dark"] .acref-dyk-strip[b-1rkpqghxrt] {
    background: linear-gradient(135deg, rgba(78,205,196,.07) 0%, rgba(241,184,40,.04) 100%);
    border-color: rgba(78,205,196,.15);
}

.acref-dyk-item[b-1rkpqghxrt] {
    display: flex;
    align-items: flex-start;
    gap: .65rem;
    padding: .25rem .5rem;
    font-size: .83rem;
    color: var(--fq-text, #1a1a2e);
    line-height: 1.55;
}

:root[data-bs-theme="dark"] .acref-dyk-item[b-1rkpqghxrt] {
    color: rgba(255,255,255,.78);
}

.acref-dyk-icon[b-1rkpqghxrt] {
    font-size: 1rem;
    color: #F1B828;
    flex-shrink: 0;
    margin-top: .1rem;
}

.acref-dyk-sep[b-1rkpqghxrt] {
    width: 1px;
    height: 48px;
    background: rgba(0,40,85,.10);
    align-self: center;
}

:root[data-bs-theme="dark"] .acref-dyk-sep[b-1rkpqghxrt] {
    background: rgba(255,255,255,.08);
}

@media (max-width: 767.98px) {
    .acref-dyk-strip[b-1rkpqghxrt] {
        grid-template-columns: 1fr;
    }

    .acref-dyk-sep[b-1rkpqghxrt] {
        width: 100%;
        height: 1px;
    }
}

/* ─────────────────────────────────────────────────────────────────────────────
   LOUDNESS VISUALIZER  (.acref-loud-viz)
───────────────────────────────────────────────────────────────────────────── */
.acref-loud-viz[b-1rkpqghxrt] {
    background: rgba(0,40,85,.04);
    border: 1px solid rgba(0,40,85,.10);
    border-radius: 14px;
    padding: 1rem 1.1rem;
}

:root[data-bs-theme="dark"] .acref-loud-viz[b-1rkpqghxrt] {
    background: rgba(255,255,255,.03);
    border-color: rgba(255,255,255,.08);
}

.acref-loud-viz__label[b-1rkpqghxrt] {
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .07em;
    text-transform: uppercase;
    color: var(--fq-muted, #5a6b7a);
    margin-bottom: .65rem;
    display: flex;
    align-items: center;
    gap: .3rem;
}

/* Range slider */
.acref-loud-slider[b-1rkpqghxrt] {
    -webkit-appearance: none;
    appearance: none;
    width: 100%;
    height: 6px;
    border-radius: 3px;
    background: rgba(0,40,85,.12);
    outline: none;
    cursor: pointer;
    margin-bottom: .9rem;
}

:root[data-bs-theme="dark"] .acref-loud-slider[b-1rkpqghxrt] {
    background: rgba(255,255,255,.10);
}

.acref-loud-slider[b-1rkpqghxrt]::-webkit-slider-thumb {
    -webkit-appearance: none;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #1E4D78;
    border: 2px solid #fff;
    box-shadow: 0 2px 6px rgba(30,77,120,.4);
    cursor: pointer;
    transition: background .15s;
}

:root[data-bs-theme="dark"] .acref-loud-slider[b-1rkpqghxrt]::-webkit-slider-thumb {
    background: #4ecdc4;
    border-color: #151b22;
}

.acref-loud-slider[b-1rkpqghxrt]::-moz-range-thumb {
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #1E4D78;
    border: 2px solid #fff;
    cursor: pointer;
}

/* Scene layout */
.acref-loud-viz__scene[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .75rem;
    margin-bottom: .85rem;
    min-height: 90px;
}

/* Source node with pulsing rings */
.acref-loud-source[b-1rkpqghxrt] {
    position: relative;
    width: 60px;
    height: 60px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.acref-loud-source__rings[b-1rkpqghxrt] {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.acref-loud-ring[b-1rkpqghxrt] {
    position: absolute;
    border-radius: 50%;
    border: 2px solid rgba(30,77,120, var(--ring-opacity, .3));
    width: calc(20px * (1 + var(--ring-idx, 0) * 0.7));
    height: calc(20px * (1 + var(--ring-idx, 0) * 0.7));
    animation: acrefRingPulse-b-1rkpqghxrt 1.8s ease-out infinite;
    animation-delay: calc(var(--ring-idx, 0) * 0.45s);
}

:root[data-bs-theme="dark"] .acref-loud-ring[b-1rkpqghxrt] {
    border-color: rgba(78,205,196, var(--ring-opacity, .3));
}

@keyframes acrefRingPulse-b-1rkpqghxrt {
    0% {
        opacity: 1;
        transform: scale(1);
    }

    100% {
        opacity: 0;
        transform: scale(1.5);
    }
}

.acref-loud-source__icon[b-1rkpqghxrt] {
    position: relative;
    z-index: 1;
    width: 36px;
    height: 36px;
    border-radius: 50%;
    background: #1E4D78;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: .95rem;
    box-shadow: 0 4px 12px rgba(30,77,120,.35);
}

:root[data-bs-theme="dark"] .acref-loud-source__icon[b-1rkpqghxrt] {
    background: #0D7A6E;
    box-shadow: 0 4px 12px rgba(13,122,110,.50);
}

/* Wall node */
.acref-loud-wall[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .35rem;
    flex-shrink: 0;
}

.acref-loud-wall__label[b-1rkpqghxrt] {
    font-size: .65rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .06em;
    color: var(--fq-muted, #5a6b7a);
    white-space: nowrap;
}

.acref-loud-wall__body[b-1rkpqghxrt] {
    width: 16px;
    height: 64px;
    border-radius: 4px;
    background: repeating-linear-gradient( 0deg, rgba(0,40,85,.55) 0px, rgba(0,40,85,.55) 6px, rgba(30,77,120,.30) 6px, rgba(30,77,120,.30) 12px );
    border: 1px solid rgba(0,40,85,.25);
}

:root[data-bs-theme="dark"] .acref-loud-wall__body[b-1rkpqghxrt] {
    background: repeating-linear-gradient( 0deg, rgba(155,198,255,.40) 0px, rgba(155,198,255,.40) 6px, rgba(78,205,196,.18) 6px, rgba(78,205,196,.18) 12px );
    border-color: rgba(155,198,255,.20);
}

/* Arrows between source / wall / receiver */
.acref-loud-viz__scene > div:not(.acref-loud-source):not(.acref-loud-wall):not(.acref-loud-recv)[b-1rkpqghxrt] {
    flex: 1;
    height: 2px;
    background: rgba(0,40,85,.15);
    position: relative;
}

/* Receiver node */
.acref-loud-recv[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .3rem;
    flex-shrink: 0;
}

.acref-loud-recv__icon[b-1rkpqghxrt] {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: .95rem;
    transition: background .3s, color .3s;
}

.acref-loud-recv--quiet[b-1rkpqghxrt] {
    background: rgba(16,185,129,.15);
    color: #065F46;
}

.acref-loud-recv--moderate[b-1rkpqghxrt] {
    background: rgba(245,158,11,.15);
    color: #92400E;
}

.acref-loud-recv--loud[b-1rkpqghxrt] {
    background: rgba(239,68,68,.15);
    color: #991B1B;
}

:root[data-bs-theme="dark"] .acref-loud-recv--quiet[b-1rkpqghxrt] {
    background: rgba(16,185,129,.20);
    color: #6ee7b7;
}

:root[data-bs-theme="dark"] .acref-loud-recv--moderate[b-1rkpqghxrt] {
    background: rgba(245,158,11,.20);
    color: #fcd34d;
}

:root[data-bs-theme="dark"] .acref-loud-recv--loud[b-1rkpqghxrt] {
    background: rgba(239,68,68,.20);
    color: #fca5a5;
}

.acref-loud-recv__label[b-1rkpqghxrt] {
    font-size: .7rem;
    font-weight: 700;
    color: var(--fq-muted, #5a6b7a);
    white-space: nowrap;
}

/* Readout bar */
.acref-loud-readout[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    gap: .65rem;
    font-size: .82rem;
    flex-wrap: wrap;
}

.acref-loud-readout__src[b-1rkpqghxrt] {
    color: var(--fq-muted, #5a6b7a);
}

.acref-loud-readout__recv[b-1rkpqghxrt] {
    color: var(--fq-muted, #5a6b7a);
}

.acref-loud-readout__arrow[b-1rkpqghxrt] {
    color: rgba(0,40,85,.25);
}

:root[data-bs-theme="dark"] .acref-loud-readout__arrow[b-1rkpqghxrt] {
    color: rgba(255,255,255,.15);
}

:root[data-bs-theme="dark"] .acref-loud-readout__src[b-1rkpqghxrt],
:root[data-bs-theme="dark"] .acref-loud-readout__recv[b-1rkpqghxrt] {
    color: rgba(255,255,255,.55);
}

/* ─────────────────────────────────────────────────────────────────────────────
   SOUND SCENARIO CARD  (.acref-scenario)
───────────────────────────────────────────────────────────────────────────── */
.acref-scenario[b-1rkpqghxrt] {
    background: rgba(0,40,85,.03);
    border: 1px solid rgba(0,40,85,.09);
    border-radius: 12px;
    overflow: hidden;
}

:root[data-bs-theme="dark"] .acref-scenario[b-1rkpqghxrt] {
    background: rgba(255,255,255,.03);
    border-color: rgba(255,255,255,.07);
}

.acref-scenario__header[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    font-size: .78rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: #1E4D78;
    background: rgba(30,77,120,.06);
    border-bottom: 1px solid rgba(30,77,120,.09);
    padding: .55rem .85rem;
}

:root[data-bs-theme="dark"] .acref-scenario__header[b-1rkpqghxrt] {
    color: #9bc6ff;
    background: rgba(155,198,255,.06);
    border-bottom-color: rgba(155,198,255,.09);
}

.acref-scenario__rows[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
}

.acref-scenario__row[b-1rkpqghxrt] {
    display: flex;
    align-items: baseline;
    gap: .75rem;
    padding: .55rem .85rem;
    border-bottom: 1px solid rgba(0,40,85,.05);
    font-size: .83rem;
    line-height: 1.55;
}

:root[data-bs-theme="dark"] .acref-scenario__row[b-1rkpqghxrt] {
    border-bottom-color: rgba(255,255,255,.05);
}

.acref-scenario__row:last-child[b-1rkpqghxrt] {
    border-bottom: none;
}

.acref-scenario__stc[b-1rkpqghxrt] {
    display: inline-block;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .04em;
    white-space: nowrap;
    flex-shrink: 0;
    background: #002855;
    color: #F1B828;
    padding: .2rem .6rem;
    border-radius: 6px;
    min-width: 54px;
    text-align: center;
}

:root[data-bs-theme="dark"] .acref-scenario__stc[b-1rkpqghxrt] {
    background: rgba(241,184,40,.14);
    color: #F1B828;
}

.acref-scenario__desc[b-1rkpqghxrt] {
    color: var(--fq-muted, #5a6b7a);
}

:root[data-bs-theme="dark"] .acref-scenario__desc[b-1rkpqghxrt] {
    color: rgba(255,255,255,.60);
}

/* ─────────────────────────────────────────────────────────────────────────────
   HOW SOUND TRAVELS  (.acref-path-card)
───────────────────────────────────────────────────────────────────────────── */
.acref-path-card[b-1rkpqghxrt] {
    background: var(--fq-surface, #fff);
    border: 1px solid var(--fq-border, #d7dde3);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: var(--fq-shadow, 0 4px 14px rgba(0,0,0,.05));
}

:root[data-bs-theme="dark"] .acref-path-card[b-1rkpqghxrt] {
    background: var(--fq-surface, #151b22);
    border-color: rgba(255,255,255,.08);
}

.acref-path-card__header[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    font-size: .8rem;
    font-weight: 800;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: #1E4D78;
    background: rgba(30,77,120,.05);
    border-bottom: 1px solid rgba(30,77,120,.10);
    padding: .7rem 1.25rem;
}

:root[data-bs-theme="dark"] .acref-path-card__header[b-1rkpqghxrt] {
    color: #9bc6ff;
    background: rgba(155,198,255,.05);
    border-bottom-color: rgba(155,198,255,.10);
}

.acref-path-diagram[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1.5rem 2rem;
    gap: .75rem;
    flex-wrap: wrap;
}

/* Node */
.acref-path-node[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .4rem;
    flex-shrink: 0;
    min-width: 90px;
}

.acref-path-node__icon[b-1rkpqghxrt] {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.3rem;
    box-shadow: 0 4px 14px rgba(0,0,0,.10);
}

.acref-path-node--source .acref-path-node__icon[b-1rkpqghxrt] {
    background: linear-gradient(135deg, #1a3a60, #1E4D78);
    color: #fff;
}

.acref-path-node--door .acref-path-node__icon[b-1rkpqghxrt] {
    background: linear-gradient(135deg, #003d2e, #0D7A6E);
    color: #fff;
}

.acref-path-node--recv .acref-path-node__icon[b-1rkpqghxrt] {
    background: linear-gradient(135deg, #2e4a00, #5B8B2F);
    color: #fff;
}

:root[data-bs-theme="dark"] .acref-path-node--recv .acref-path-node__icon[b-1rkpqghxrt] {
    background: linear-gradient(135deg, #1a4000, #3a6b1a);
}

.acref-path-node__label[b-1rkpqghxrt] {
    font-size: .78rem;
    font-weight: 800;
    color: var(--fq-text, #1a1a2e);
    text-align: center;
}

:root[data-bs-theme="dark"] .acref-path-node__label[b-1rkpqghxrt] {
    color: rgba(255,255,255,.85);
}

.acref-path-node__sub[b-1rkpqghxrt] {
    font-size: .68rem;
    color: var(--fq-muted, #5a6b7a);
    text-align: center;
    max-width: 90px;
    line-height: 1.4;
}

/* Animated arrow connector */
.acref-path-arrow[b-1rkpqghxrt] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .3rem;
    position: relative;
    min-width: 50px;
}

.acref-path-arrow__line[b-1rkpqghxrt] {
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg, rgba(30,77,120,.3), rgba(30,77,120,.6));
    position: relative;
    overflow: hidden;
    border-radius: 1px;
}

.acref-path-arrow--reduced .acref-path-arrow__line[b-1rkpqghxrt] {
    background: linear-gradient(90deg, rgba(13,122,110,.2), rgba(13,122,110,.4));
}

.acref-path-arrow__line[b-1rkpqghxrt]::after {
    content: '';
    position: absolute;
    top: -2px;
    left: -20%;
    width: 20%;
    height: 6px;
    background: linear-gradient(90deg, transparent, rgba(30,77,120,.8), transparent);
    animation: acrefArrowFlow-b-1rkpqghxrt 1.6s linear infinite;
}

.acref-path-arrow--reduced .acref-path-arrow__line[b-1rkpqghxrt]::after {
    background: linear-gradient(90deg, transparent, rgba(13,122,110,.5), transparent);
    animation-duration: 2.2s;
}

@keyframes acrefArrowFlow-b-1rkpqghxrt {
    from {
        left: -20%;
    }

    to {
        left: 120%;
    }
}

:root[data-bs-theme="dark"] .acref-path-arrow__line[b-1rkpqghxrt] {
    background: linear-gradient(90deg, rgba(155,198,255,.25), rgba(155,198,255,.50));
}

:root[data-bs-theme="dark"] .acref-path-arrow--reduced .acref-path-arrow__line[b-1rkpqghxrt] {
    background: linear-gradient(90deg, rgba(78,205,196,.15), rgba(78,205,196,.35));
}

.acref-path-arrow__particles[b-1rkpqghxrt] {
    display: flex;
    gap: 4px;
}

    .acref-path-arrow__particles span[b-1rkpqghxrt] {
        display: inline-block;
        width: 5px;
        height: 5px;
        border-radius: 50%;
        background: rgba(30,77,120,.5);
        animation: acrefParticleFade-b-1rkpqghxrt 1.2s ease-in-out infinite alternate;
    }

        .acref-path-arrow__particles span:nth-child(2)[b-1rkpqghxrt] {
            animation-delay: .4s;
        }

        .acref-path-arrow__particles span:nth-child(3)[b-1rkpqghxrt] {
            animation-delay: .8s;
        }

.acref-path-arrow--reduced .acref-path-arrow__particles span[b-1rkpqghxrt] {
    background: rgba(13,122,110,.4);
}

.acref-path-arrow__particles--few span:not(:first-child)[b-1rkpqghxrt] {
    display: none;
}

@keyframes acrefParticleFade-b-1rkpqghxrt {
    0% {
        opacity: .2;
        transform: scale(.7);
    }

    100% {
        opacity: .9;
        transform: scale(1);
    }
}

:root[data-bs-theme="dark"] .acref-path-arrow__particles span[b-1rkpqghxrt] {
    background: rgba(155,198,255,.5);
}

.acref-path-arrow__label[b-1rkpqghxrt] {
    font-size: .62rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .07em;
    color: var(--fq-muted, #5a6b7a);
    white-space: nowrap;
}

/* Flanking paths warning */
.acref-path-flanking[b-1rkpqghxrt] {
    display: flex;
    align-items: flex-start;
    gap: .65rem;
    margin: 0;
    padding: .85rem 1.25rem 1rem;
    background: rgba(239,68,68,.05);
    border-top: 1px solid rgba(239,68,68,.12);
    font-size: .83rem;
    color: var(--fq-text, #1a1a2e);
    line-height: 1.55;
}

    .acref-path-flanking i[b-1rkpqghxrt] {
        color: #dc2626;
        flex-shrink: 0;
        margin-top: .15rem;
    }

:root[data-bs-theme="dark"] .acref-path-flanking[b-1rkpqghxrt] {
    background: rgba(239,68,68,.07);
    border-top-color: rgba(239,68,68,.15);
    color: rgba(255,255,255,.72);
}

    :root[data-bs-theme="dark"] .acref-path-flanking i[b-1rkpqghxrt] {
        color: #f87171;
    }

@media (max-width: 640px) {
    .acref-path-diagram[b-1rkpqghxrt] {
        flex-direction: column;
    }

    .acref-path-arrow[b-1rkpqghxrt] {
        width: 2px;
        height: 40px;
        min-width: unset;
        flex: unset;
    }

    .acref-path-arrow__line[b-1rkpqghxrt] {
        width: 2px;
        height: 100%;
    }

    .acref-path-arrow__particles[b-1rkpqghxrt] {
        flex-direction: column;
    }
}

/* ─────────────────────────────────────────────────────────────────────────────
   REDESIGNED CARD BASE  — richer borders, glow on hover, futuristic feel
───────────────────────────────────────────────────────────────────────────── */
.acref-card[b-1rkpqghxrt] {
    border: 1px solid rgba(30,77,120,.12) !important;
    border-radius: 16px !important;
    background: var(--fq-surface, #fff);
    box-shadow: 0 2px 10px rgba(0,40,85,.05);
    transition: box-shadow .2s ease, border-color .2s ease;
    padding: 1.25rem 1.35rem !important;
}

    .acref-card:hover[b-1rkpqghxrt] {
        box-shadow: 0 6px 24px rgba(30,77,120,.10);
        border-color: rgba(30,77,120,.22) !important;
    }

:root[data-bs-theme="dark"] .acref-card[b-1rkpqghxrt] {
    background: rgba(20,28,40,.85) !important;
    border-color: rgba(78,205,196,.12) !important;
    box-shadow: 0 2px 12px rgba(0,0,0,.35);
}

    :root[data-bs-theme="dark"] .acref-card:hover[b-1rkpqghxrt] {
        border-color: rgba(78,205,196,.28) !important;
        box-shadow: 0 0 0 1px rgba(78,205,196,.10), 0 8px 28px rgba(0,0,0,.45);
    }

/* Upgraded icon row — larger icon with circle bg */
.acref-card__icon-row > i[b-1rkpqghxrt] {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    background: rgba(13,122,110,.10);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem !important;
    flex-shrink: 0;
    color: #0D7A6E;
}

:root[data-bs-theme="dark"] .acref-card__icon-row > i[b-1rkpqghxrt] {
    background: rgba(78,205,196,.12);
    color: #4ecdc4;
}

/* Card heading — slightly larger */
.acref-card__heading[b-1rkpqghxrt] {
    font-size: 1.05rem !important;
    letter-spacing: .01em !important;
}

/* ─────────────────────────────────────────────────────────────────────────────
   REDESIGNED STC COMPARE TOOL — more dramatic
───────────────────────────────────────────────────────────────────────────── */
.acref-compare-tool[b-1rkpqghxrt] {
    border-radius: 18px !important;
    border-width: 1px !important;
    border-style: solid !important;
}

:root[data-bs-theme="dark"] .acref-compare-tool[b-1rkpqghxrt] {
    background: rgba(14,26,46,.90) !important;
}

/* More visible compare bar tracks */
.acref-compare-bar-track[b-1rkpqghxrt] {
    height: 30px !important;
    border-radius: 8px !important;
    background: rgba(0,40,85,.08) !important;
    overflow: hidden !important;
    position: relative !important;
}

:root[data-bs-theme="dark"] .acref-compare-bar-track[b-1rkpqghxrt] {
    background: rgba(255,255,255,.06) !important;
    overflow: hidden !important;
}

.acref-compare-bar-fill[b-1rkpqghxrt] {
    border-radius: 8px !important;
    font-size: .82rem !important;
    font-weight: 800 !important;
    letter-spacing: .02em;
    min-width: 0 !important;
}

.acref-compare-bar--a[b-1rkpqghxrt] {
    background: linear-gradient(90deg, #0f2744 0%, #1E4D78 60%, #2a6ea8 100%) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.15);
}

.acref-compare-bar--b[b-1rkpqghxrt] {
    background: linear-gradient(90deg, #062920 0%, #0D7A6E 60%, #14b8a6 100%) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.15);
}

/* Stat cards — glassy */
.acref-compare-stat[b-1rkpqghxrt] {
    border-radius: 14px !important;
    padding: .85rem 1rem !important;
    backdrop-filter: blur(4px);
}

:root[data-bs-theme="dark"] .acref-compare-stat[b-1rkpqghxrt] {
    background: rgba(255,255,255,.05) !important;
    border-color: rgba(255,255,255,.09) !important;
}

/* Diff value — bigger, more dramatic */
.acref-compare-stat__val--diff[b-1rkpqghxrt] {
    font-size: 1.65rem !important;
    background: linear-gradient(135deg, #0D7A6E, #14b8a6);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

:root[data-bs-theme="dark"] .acref-compare-stat__val--diff[b-1rkpqghxrt] {
    background: linear-gradient(135deg, #4ecdc4, #a3f0eb);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* ─────────────────────────────────────────────────────────────────────────────
   REDESIGNED NRC TABLE — dark header with colored window cols
───────────────────────────────────────────────────────────────────────────── */
.acref-nrc-table thead th[b-1rkpqghxrt] {
    font-size: .73rem !important;
    padding: .6rem .75rem !important;
    letter-spacing: .05em !important;
    background: #001f44 !important;
}

:root[data-bs-theme="dark"] .acref-nrc-table thead th[b-1rkpqghxrt] {
    background: #0a1628 !important;
}

.acref-thead--window[b-1rkpqghxrt] {
    background: #074d44 !important;
}

:root[data-bs-theme="dark"] .acref-thead--window[b-1rkpqghxrt] {
    background: #053d36 !important;
}

/* Improved cell colors in dark mode */
:root[data-bs-theme="dark"] .acref-cell--great[b-1rkpqghxrt] {
    background: rgba(16,185,129,.22) !important;
    color: #6ee7b7 !important;
}

:root[data-bs-theme="dark"] .acref-cell--ok[b-1rkpqghxrt] {
    background: rgba(59,130,246,.20) !important;
    color: #93c5fd !important;
}

:root[data-bs-theme="dark"] .acref-cell--warn[b-1rkpqghxrt] {
    background: rgba(245,158,11,.18) !important;
    color: #fcd34d !important;
}

:root[data-bs-theme="dark"] .acref-cell--loud[b-1rkpqghxrt] {
    background: rgba(239,68,68,.20) !important;
    color: #fca5a5 !important;
}

/* ─────────────────────────────────────────────────────────────────────────────
   UPGRADED faq-section--acoustics — subtle ambient glow on the section
───────────────────────────────────────────────────────────────────────────── */
.faq-section--acoustics[b-1rkpqghxrt] {
    position: relative;
}

    .faq-section--acoustics[b-1rkpqghxrt]::before {
        content: '';
        position: absolute;
        top: -2px;
        left: 50%;
        transform: translateX(-50%);
        width: 60%;
        height: 3px;
        background: linear-gradient(90deg, transparent, #0D7A6E, #F1B828, #0D7A6E, transparent);
        border-radius: 0 0 4px 4px;
        opacity: .7;
    }

:root[data-bs-theme="dark"] .faq-section--acoustics[b-1rkpqghxrt]::before {
    opacity: .9;
}

/* ─────────────────────────────────────────────────────────────────────────────
   PRINCIPLES CARDS — upgraded icons
───────────────────────────────────────────────────────────────────────────── */
.acref-principle__icon[b-1rkpqghxrt] {
    width: 38px !important;
    height: 38px !important;
    border-radius: 11px !important;
    box-shadow: 0 3px 10px rgba(0,0,0,.18);
}

.acref-principle__icon--mass[b-1rkpqghxrt] {
    background: linear-gradient(135deg, #001d40, #1E4D78) !important;
}

.acref-principle__icon--air[b-1rkpqghxrt] {
    background: linear-gradient(135deg, #034030, #0D7A6E) !important;
}

.acref-principle__icon--seal[b-1rkpqghxrt] {
    background: linear-gradient(135deg, #2a1a5e, #5B21B6) !important;
}

.acref-principle strong[b-1rkpqghxrt] {
    font-size: 14px !important;
    color: #002855 !important;
}

:root[data-bs-theme="dark"] .acref-principle strong[b-1rkpqghxrt] {
    color: #e0edff !important;
}

/* ─────────────────────────────────────────────────────────────────────────────
   ACREF CALC TOOL — improved dark mode visibility
───────────────────────────────────────────────────────────────────────────── */
:root[data-bs-theme="dark"] .acref-calc-tool[b-1rkpqghxrt] {
    background: rgba(14,26,46,.90) !important;
    border-color: rgba(155,198,255,.18) !important;
}

:root[data-bs-theme="dark"] .acref-calc-result[b-1rkpqghxrt] {
    background: rgba(255,255,255,.04) !important;
    border-color: rgba(155,198,255,.12) !important;
}

:root[data-bs-theme="dark"] .acref-calc-result__val[b-1rkpqghxrt] {
    color: #F1B828 !important;
    text-shadow: 0 0 20px rgba(241,184,40,.35);
}

/* ─────────────────────────────────────────────────────────────────────────────
   CLICKABLE BARS — upgraded active state glow
───────────────────────────────────────────────────────────────────────────── */
.acref-db-row--clickable:hover[b-1rkpqghxrt] {
    background: rgba(0,40,85,.06) !important;
}

.acref-db-row--open[b-1rkpqghxrt] {
    background: rgba(0,40,85,.08) !important;
}

:root[data-bs-theme="dark"] .acref-db-row--open[b-1rkpqghxrt] {
    background: rgba(78,205,196,.08) !important;
}

.acref-bar--door[b-1rkpqghxrt] {
    background: linear-gradient(90deg, #0f2744 0%, #1E4D78 70%, #2a6ea8 100%) !important;
}

.acref-bar--cclass[b-1rkpqghxrt] {
    background: linear-gradient(90deg, #0f2744 0%, #1E4D78 70%, #2a6ea8 100%) !important;
}

.acref-bar--allcon[b-1rkpqghxrt] {
    background: linear-gradient(90deg, #062920 0%, #0D7A6E 70%, #14b8a6 100%) !important;
}

:root[data-bs-theme="dark"] .acref-bar--door[b-1rkpqghxrt],
:root[data-bs-theme="dark"] .acref-bar--cclass[b-1rkpqghxrt] {
    background: linear-gradient(90deg, #162d50 0%, #2563a8 70%, #3b82f6 100%) !important;
}

:root[data-bs-theme="dark"] .acref-bar--allcon[b-1rkpqghxrt] {
    background: linear-gradient(90deg, #0a3830 0%, #0D7A6E 70%, #14b8a6 100%) !important;
}

/* ─────────────────────────────────────────────────────────────────────────────
   DETAIL PANEL — improved dark mode
───────────────────────────────────────────────────────────────────────────── */
:root[data-bs-theme="dark"] .acref-stc-detail-panel[b-1rkpqghxrt] {
    background: rgba(14,26,46,.60) !important;
    border-color: rgba(155,198,255,.10) !important;
}

:root[data-bs-theme="dark"] .acref-stc-detail-panel--window[b-1rkpqghxrt] {
    background: rgba(7,40,35,.50) !important;
    border-color: rgba(78,205,196,.14) !important;
}

:root[data-bs-theme="dark"] .acref-stc-tl-table tbody td[b-1rkpqghxrt] {
    background: rgba(241,184,40,.09) !important;
    color: #fcd34d !important;
}

/* ─────────────────────────────────────────────────────────────────────────────
   BADGE IMPROVEMENTS — dark mode
───────────────────────────────────────────────────────────────────────────── */
:root[data-bs-theme="dark"] .acref-badge--danger[b-1rkpqghxrt] {
    background: rgba(239,68,68,.18);
    color: #fca5a5;
}

:root[data-bs-theme="dark"] .acref-badge--warn[b-1rkpqghxrt] {
    background: rgba(245,158,11,.16);
    color: #fcd34d;
}

:root[data-bs-theme="dark"] .acref-badge--ok[b-1rkpqghxrt] {
    background: rgba(16,185,129,.14);
    color: #6ee7b7;
}

:root[data-bs-theme="dark"] .acref-badge--good[b-1rkpqghxrt] {
    background: rgba(59,130,246,.16);
    color: #93c5fd;
}

:root[data-bs-theme="dark"] .acref-badge--best[b-1rkpqghxrt] {
    background: rgba(139,92,246,.16);
    color: #c4b5fd;
}

/* ─────────────────────────────────────────────────────────────────────────────
   JUMP TABLE — improved dark mode + visual weight
───────────────────────────────────────────────────────────────────────────── */
.acref-jump-val[b-1rkpqghxrt] {
    min-width: 70px !important;
    font-size: 13.5px !important;
}

:root[data-bs-theme="dark"] .acref-jump-val[b-1rkpqghxrt] {
    color: #4ecdc4 !important;
}

:root[data-bs-theme="dark"] .acref-jump-feel[b-1rkpqghxrt] {
    color: rgba(255,255,255,.78) !important;
}

/* ─────────────────────────────────────────────────────────────────────────────
   WEAKEST LINK — improved visuals
───────────────────────────────────────────────────────────────────────────── */
.acref-weaklink-row--weak[b-1rkpqghxrt] {
    background: rgba(220,38,38,.07) !important;
    border-color: rgba(220,38,38,.22) !important;
    position: relative;
}

    .acref-weaklink-row--weak[b-1rkpqghxrt]::before {
        content: '⚠';
        position: absolute;
        right: 8px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 11px;
        color: #dc2626;
        opacity: .6;
    }

:root[data-bs-theme="dark"] .acref-weaklink-row--weak[b-1rkpqghxrt] {
    background: rgba(239,68,68,.10) !important;
    border-color: rgba(239,68,68,.28) !important;
}

:root[data-bs-theme="dark"] .acref-weaklink-note[b-1rkpqghxrt] {
    color: #f87171 !important;
}

/* ─────────────────────────────────────────────────────────────────────────────
   FREQUENCY TABLE — improved dark mode rows
───────────────────────────────────────────────────────────────────────────── */
:root[data-bs-theme="dark"] .acref-freq-hz[b-1rkpqghxrt] {
    color: #9bc6ff !important;
}

:root[data-bs-theme="dark"] .acref-freq-src[b-1rkpqghxrt] {
    color: rgba(255,255,255,.55) !important;
}

/* ─────────────────────────────────────────────────────────────────────────────
   ACREF NOTE — improved dark mode
───────────────────────────────────────────────────────────────────────────── */
:root[data-bs-theme="dark"] .acref-note[b-1rkpqghxrt] {
    background: rgba(255,255,255,.04) !important;
    border-left-color: rgba(241,184,40,.35) !important;
    color: rgba(255,255,255,.52) !important;
}

/* ─────────────────────────────────────────────────────────────────────────────
   WINDOW GROUP LABELS — dark mode
───────────────────────────────────────────────────────────────────────────── */
:root[data-bs-theme="dark"] .acref-win-group-label[b-1rkpqghxrt] {
    border-bottom-color: rgba(255,255,255,.08);
}

/* ─────────────────────────────────────────────────────────────────────────────
   RESPONSIVE — small screen tweaks for new components
───────────────────────────────────────────────────────────────────────────── */
@media (max-width: 767.98px) {
    .acref-hero__stats[b-1rkpqghxrt] {
        gap: 0;
    }

    .acref-hero__stat[b-1rkpqghxrt] {
        padding: .35rem .65rem;
    }

    .acref-path-diagram[b-1rkpqghxrt] {
        padding: 1rem;
    }

    .acref-loud-viz__scene[b-1rkpqghxrt] {
        gap: .4rem;
    }

    .acref-loud-readout[b-1rkpqghxrt] {
        font-size: .76rem;
    }

    .acref-scenario__row[b-1rkpqghxrt] {
        flex-direction: column;
        gap: .4rem;
    }

    .acref-scenario__stc[b-1rkpqghxrt] {
        align-self: flex-start;
    }
}

/* ─────────────────────────────────────────────────────────────────────────────
   PRINT — suppress new visual-only components
───────────────────────────────────────────────────────────────────────────── */
@media print {
    .acref-hero__bg[b-1rkpqghxrt],
    .acref-hero__wave[b-1rkpqghxrt],
    .acref-loud-slider[b-1rkpqghxrt],
    .acref-loud-ring[b-1rkpqghxrt],
    .acref-loud-viz[b-1rkpqghxrt],
    .acref-path-arrow__particles[b-1rkpqghxrt],
    .acref-dyk-strip[b-1rkpqghxrt] {
        display: none !important;
    }

    .acref-hero[b-1rkpqghxrt] {
        background: #002855 !important;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
}

/* ══════════════════════════════════════════════════════════════════════════════
   STC SOUND WAVE DEMO  (.acref-wave-demo)
   Full interactive scene — source → barrier → receiver
   Light + dark mode throughout.
══════════════════════════════════════════════════════════════════════════════ */

/* ─── Wrapper card ─── */
.acref-wave-demo[b-1rkpqghxrt] {
    background: var(--fq-surface, #fff);
    border: 1px solid rgba(30,77,120,.15);
    border-radius: 18px;
    overflow: hidden;
    box-shadow: 0 4px 18px rgba(0,40,85,.07);
}

:root[data-bs-theme="dark"] .acref-wave-demo[b-1rkpqghxrt] {
    background: rgba(10,18,32,.92);
    border-color: rgba(155,198,255,.12);
    box-shadow: 0 6px 24px rgba(0,0,0,.45);
}

.acref-wave-demo__header[b-1rkpqghxrt] {
    background: linear-gradient(135deg, #002855 0%, #1E4D78 100%);
    padding: .9rem 1.25rem .8rem;
    border-bottom: 1px solid rgba(241,184,40,.20);
}

:root[data-bs-theme="dark"] .acref-wave-demo__header[b-1rkpqghxrt] {
    background: linear-gradient(135deg, #0d1e3a 0%, #1E4D78 100%);
    border-bottom-color: rgba(241,184,40,.25);
}

.acref-wave-demo__title-row[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    font-size: .9rem;
    font-weight: 800;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: .05em;
    margin-bottom: .3rem;
}

.acref-wave-demo__sub[b-1rkpqghxrt] {
    font-size: .8rem;
    color: rgba(255,255,255,.60);
    line-height: 1.5;
}

.acref-wave-demo__body[b-1rkpqghxrt] {
    padding: 1.1rem 1.25rem 1.25rem;
}

/* ─── Controls ─── */
.acref-wave-demo__controls[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    gap: .85rem;
    margin-bottom: 1.25rem;
}

.acref-wave-ctrl-group[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    gap: .4rem;
}

.acref-wave-source-pills[b-1rkpqghxrt],
.acref-wave-prod-pills[b-1rkpqghxrt] {
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
}

/* Source level pills */
.acref-wave-src-pill[b-1rkpqghxrt] {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: .1rem;
    font-size: .72rem;
    font-weight: 700;
    padding: .3rem .7rem;
    border-radius: 10px;
    border: 1px solid rgba(0,40,85,.14);
    background: rgba(0,40,85,.04);
    color: var(--fq-text, #1a1a2e);
    cursor: pointer;
    transition: all .14s ease;
}

    .acref-wave-src-pill:hover[b-1rkpqghxrt] {
        background: rgba(0,40,85,.09);
        border-color: rgba(0,40,85,.25);
    }

:root[data-bs-theme="dark"] .acref-wave-src-pill[b-1rkpqghxrt] {
    background: rgba(255,255,255,.05);
    border-color: rgba(255,255,255,.11);
    color: rgba(255,255,255,.78);
}

    :root[data-bs-theme="dark"] .acref-wave-src-pill:hover[b-1rkpqghxrt] {
        background: rgba(255,255,255,.09);
        border-color: rgba(255,255,255,.20);
    }

.acref-wave-src-pill--active[b-1rkpqghxrt] {
    background: #002855 !important;
    border-color: #002855 !important;
    color: #F1B828 !important;
    box-shadow: 0 2px 8px rgba(0,40,85,.35);
}

:root[data-bs-theme="dark"] .acref-wave-src-pill--active[b-1rkpqghxrt] {
    background: #1E4D78 !important;
    border-color: rgba(241,184,40,.55) !important;
    color: #F1B828 !important;
}

.acref-wave-src-db[b-1rkpqghxrt] {
    font-size: .67rem;
    font-weight: 600;
    opacity: .65;
}

/* Product pills */
.acref-wave-prod-pill[b-1rkpqghxrt] {
    font-size: .72rem;
    font-weight: 700;
    padding: .3rem .8rem;
    border-radius: 10px;
    border: 1px solid rgba(0,40,85,.14);
    background: rgba(0,40,85,.04);
    color: var(--fq-text, #1a1a2e);
    cursor: pointer;
    transition: all .14s ease;
}

    .acref-wave-prod-pill:hover[b-1rkpqghxrt] {
        background: rgba(0,40,85,.09);
        border-color: rgba(0,40,85,.25);
    }

:root[data-bs-theme="dark"] .acref-wave-prod-pill[b-1rkpqghxrt] {
    background: rgba(255,255,255,.05);
    border-color: rgba(255,255,255,.11);
    color: rgba(255,255,255,.78);
}

.acref-wave-prod-pill--door[b-1rkpqghxrt] {
    border-left: 3px solid rgba(30,77,120,.30);
}

.acref-wave-prod-pill--window[b-1rkpqghxrt] {
    border-left: 3px solid rgba(13,122,110,.30);
}

.acref-wave-prod-pill--none[b-1rkpqghxrt] {
    border-style: dashed;
}

.acref-wave-prod-pill--active[b-1rkpqghxrt] {
    background: #002855 !important;
    border-color: #002855 !important;
    color: #F1B828 !important;
    box-shadow: 0 2px 8px rgba(0,40,85,.35);
    border-left-color: #F1B828 !important;
}

:root[data-bs-theme="dark"] .acref-wave-prod-pill--active[b-1rkpqghxrt] {
    background: #1E4D78 !important;
    border-color: rgba(241,184,40,.55) !important;
    color: #F1B828 !important;
}

/* ─── Scene container ─── */
.acref-wave-scene[b-1rkpqghxrt] {
    display: flex;
    align-items: stretch;
    gap: 0;
    background: linear-gradient(180deg, #0f2540 0%, #162e50 100%);
    border-radius: 14px;
    overflow: hidden;
    min-height: 200px;
    margin-bottom: 1rem;
    border: 1px solid rgba(241,184,40,.20);
    position: relative;
}

/* Source side */
.acref-wave-side[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .5rem;
    flex: 1;
    padding: 1.25rem .75rem;
    position: relative;
    min-height: 180px;
}

.acref-wave-side--src[b-1rkpqghxrt] {
    background: linear-gradient(135deg, rgba(30,77,120,.35) 0%, rgba(30,77,120,.12) 100%);
}

.acref-wave-label[b-1rkpqghxrt] {
    font-size: .62rem;
    font-weight: 700;
    letter-spacing: .09em;
    text-transform: uppercase;
    color: rgba(255,255,255,.40);
    position: absolute;
    top: .65rem;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
}

/* Speaker icon */
.acref-wave-source-icon[b-1rkpqghxrt] {
    width: 44px;
    height: 44px;
    border-radius: 12px;
    background: linear-gradient(135deg, #1E4D78, #2a6ea8);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 1.2rem;
    box-shadow: 0 4px 16px rgba(30,77,120,.6);
    z-index: 1;
    position: relative;
}

/* Animated wave arcs — source */
.acref-wave-emitter[b-1rkpqghxrt] {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
}

.acref-wave-arc[b-1rkpqghxrt] {
    position: absolute;
    border-radius: 50%;
    border: 1.5px solid rgba(30,77,120,.50);
    animation: waveExpand-b-1rkpqghxrt 2.2s ease-out infinite;
    animation-delay: calc(var(--wi, 0) * (2.2s / var(--wn, 5)));
    width: 20px;
    height: 20px;
}

.acref-wave-arc--src[b-1rkpqghxrt] {
    border-color: rgba(91,155,213, calc(.65 - var(--wi, 0) * .08));
    width: 20px;
    height: 20px;
}

.acref-wave-arc--recv[b-1rkpqghxrt] {
    border-color: rgba(239,68,68, calc(.55 - var(--wi, 0) * .08));
}

@keyframes waveExpand-b-1rkpqghxrt {
    0% {
        opacity: 1;
        width: 20px;
        height: 20px;
    }

    100% {
        opacity: 0;
        width: 160px;
        height: 160px;
    }
}

/* dB badge */
.acref-wave-db-badge[b-1rkpqghxrt] {
    font-size: .85rem;
    font-weight: 900;
    border-radius: 8px;
    padding: .25rem .65rem;
    position: absolute;
    bottom: .75rem;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
    letter-spacing: .02em;
    z-index: 2;
}

.acref-wave-db-badge--src[b-1rkpqghxrt] {
    background: rgba(30,77,120,.60);
    color: #9bc6ff;
    border: 1px solid rgba(155,198,255,.25);
}

.acref-wave-db-badge--recv[b-1rkpqghxrt] {
    background: rgba(16,185,129,.20);
    color: #6ee7b7;
    border: 1px solid rgba(52,211,153,.30);
}

    .acref-wave-db-badge--recv.wv-recv--loud[b-1rkpqghxrt] {
        background: rgba(245,158,11,.20);
        color: #fcd34d;
        border-color: rgba(253,211,77,.30);
    }

    .acref-wave-db-badge--recv.wv-recv--danger[b-1rkpqghxrt] {
        background: rgba(239,68,68,.25);
        color: #fca5a5;
        border-color: rgba(252,165,165,.30);
        animation: dangerPulse-b-1rkpqghxrt 1s ease-in-out infinite alternate;
    }

@keyframes dangerPulse-b-1rkpqghxrt {
    from {
        box-shadow: 0 0 0 0 rgba(239,68,68,.0);
    }

    to {
        box-shadow: 0 0 12px 3px rgba(239,68,68,.50);
    }
}

/* Barrier */
.acref-wave-barrier[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .35rem;
    width: 80px;
    flex-shrink: 0;
    background: linear-gradient(180deg, rgba(0,40,85,.75) 0%, rgba(0,40,85,.95) 100%);
    border-left: 2px solid rgba(241,184,40,.35);
    border-right: 2px solid rgba(241,184,40,.35);
    position: relative;
    overflow: hidden;
}

.acref-wave-barrier--none[b-1rkpqghxrt] {
    background: repeating-linear-gradient( 45deg, rgba(255,255,255,.03) 0px, rgba(255,255,255,.03) 4px, transparent 4px, transparent 12px );
    border-left-color: rgba(255,255,255,.10);
    border-right-color: rgba(255,255,255,.10);
}

.acref-wave-barrier--window[b-1rkpqghxrt] {
    background: linear-gradient(180deg, rgba(13,122,110,.45) 0%, rgba(0,40,85,.75) 100%);
    border-left-color: rgba(78,205,196,.30);
    border-right-color: rgba(78,205,196,.30);
}

/* Barrier strength fill bar (vertical progress from bottom) */
.acref-wave-barrier__strength[b-1rkpqghxrt] {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 100%;
    display: flex;
    align-items: flex-end;
    pointer-events: none;
}

.acref-wave-barrier__strength-fill[b-1rkpqghxrt] {
    width: 100%;
    background: linear-gradient(0deg, rgba(241,184,40,.12) 0%, transparent 100%);
    transition: height .5s cubic-bezier(.4,0,.2,1);
}

.acref-wave-barrier__fill[b-1rkpqghxrt] {
    width: 100%;
    height: var(--barrier-pct, 60%);
    background: repeating-linear-gradient( 0deg, rgba(241,184,40,.08) 0px, rgba(241,184,40,.08) 4px, rgba(0,40,85,.60) 4px, rgba(0,40,85,.60) 14px );
    border-radius: 4px;
    transition: height .5s cubic-bezier(.4,0,.2,1);
}

.acref-wave-barrier--window .acref-wave-barrier__fill[b-1rkpqghxrt] {
    background: repeating-linear-gradient( 0deg, rgba(78,205,196,.10) 0px, rgba(78,205,196,.10) 4px, rgba(0,40,85,.50) 4px, rgba(0,40,85,.50) 14px );
}

.acref-wave-barrier__stc[b-1rkpqghxrt] {
    font-size: .72rem;
    font-weight: 900;
    color: #F1B828;
    letter-spacing: .04em;
    z-index: 1;
    text-shadow: 0 1px 4px rgba(0,0,0,.60);
}

.acref-wave-barrier__type[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .2rem;
    font-size: .62rem;
    font-weight: 700;
    color: rgba(255,255,255,.55);
    z-index: 1;
    letter-spacing: .05em;
    text-transform: uppercase;
}

.acref-wave-barrier__type--win[b-1rkpqghxrt] {
    color: rgba(78,205,196,.75);
}

.acref-wave-barrier__none-label[b-1rkpqghxrt] {
    font-size: .65rem;
    font-weight: 700;
    color: rgba(255,255,255,.25);
    text-transform: uppercase;
    letter-spacing: .07em;
    text-align: center;
}

/* Receiver side */
.acref-wave-side--recv[b-1rkpqghxrt] {
    background: linear-gradient(135deg, rgba(30,77,120,.18) 0%, rgba(30,77,120,.06) 100%);
    transition: background .4s ease;
}

    .acref-wave-side--recv.wv-recv--moderate[b-1rkpqghxrt] {
        background: linear-gradient(135deg, rgba(245,158,11,.12) 0%, rgba(245,158,11,.03) 100%);
    }

    .acref-wave-side--recv.wv-recv--loud[b-1rkpqghxrt],
    .acref-wave-side--recv.wv-recv--danger[b-1rkpqghxrt] {
        background: linear-gradient(135deg, rgba(239,68,68,.14) 0%, rgba(239,68,68,.04) 100%);
    }

/* Person icon */
.acref-wave-recv-icon[b-1rkpqghxrt] {
    width: 42px;
    height: 42px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.1rem;
    z-index: 1;
    position: relative;
    transition: background .4s, color .4s;
    box-shadow: 0 4px 14px rgba(0,0,0,.30);
}

    .acref-wave-recv-icon.wv-recv--silent[b-1rkpqghxrt],
    .acref-wave-recv-icon.wv-recv--quiet[b-1rkpqghxrt] {
        background: rgba(16,185,129,.22);
        color: #6ee7b7;
    }

    .acref-wave-recv-icon.wv-recv--moderate[b-1rkpqghxrt] {
        background: rgba(245,158,11,.22);
        color: #fcd34d;
    }

    .acref-wave-recv-icon.wv-recv--loud[b-1rkpqghxrt] {
        background: rgba(239,68,68,.20);
        color: #fca5a5;
    }

    .acref-wave-recv-icon.wv-recv--danger[b-1rkpqghxrt] {
        background: rgba(239,68,68,.35);
        color: #fca5a5;
        animation: dangerPulse-b-1rkpqghxrt 0.9s ease-in-out infinite alternate;
    }

/* Recv emitter (smaller/fewer waves) */
.acref-wave-emitter--recv[b-1rkpqghxrt] {
    opacity: .8;
}

/* ─── Results row ─── */
.acref-wave-results[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    gap: .75rem;
    align-items: center;
    margin-bottom: .85rem;
}

@media (max-width: 600px) {
    .acref-wave-results[b-1rkpqghxrt] {
        grid-template-columns: 1fr;
    }

    .acref-wave-result-sep[b-1rkpqghxrt] {
        transform: rotate(90deg);
    }
}

.acref-wave-result-card[b-1rkpqghxrt] {
    background: rgba(0,40,85,.04);
    border: 1px solid rgba(0,40,85,.09);
    border-radius: 12px;
    padding: .75rem 1rem;
    display: flex;
    flex-direction: column;
    gap: .2rem;
}

:root[data-bs-theme="dark"] .acref-wave-result-card[b-1rkpqghxrt] {
    background: rgba(255,255,255,.04);
    border-color: rgba(255,255,255,.08);
}

.acref-wave-result-card--recv.wv-recv--moderate[b-1rkpqghxrt] {
    border-color: rgba(245,158,11,.30);
    background: rgba(245,158,11,.07);
}

.acref-wave-result-card--recv.wv-recv--loud[b-1rkpqghxrt],
.acref-wave-result-card--recv.wv-recv--danger[b-1rkpqghxrt] {
    border-color: rgba(239,68,68,.30);
    background: rgba(239,68,68,.07);
}

.acref-wave-result-card--recv.wv-recv--silent[b-1rkpqghxrt],
.acref-wave-result-card--recv.wv-recv--quiet[b-1rkpqghxrt] {
    border-color: rgba(16,185,129,.25);
    background: rgba(16,185,129,.06);
}

.acref-wave-result-label[b-1rkpqghxrt] {
    font-size: .65rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--fq-muted, #5a6b7a);
}

.acref-wave-result-val[b-1rkpqghxrt] {
    font-size: 1.35rem;
    font-weight: 900;
    color: #002855;
    letter-spacing: -.01em;
    line-height: 1;
}

:root[data-bs-theme="dark"] .acref-wave-result-val[b-1rkpqghxrt] {
    color: #F1B828;
}

.acref-wave-result-card--recv .acref-wave-result-val[b-1rkpqghxrt] {
    transition: color .3s;
}

.acref-wave-result-card--recv.wv-recv--silent .acref-wave-result-val[b-1rkpqghxrt],
.acref-wave-result-card--recv.wv-recv--quiet .acref-wave-result-val[b-1rkpqghxrt] {
    color: #065F46;
}

:root[data-bs-theme="dark"] .acref-wave-result-card--recv.wv-recv--silent .acref-wave-result-val[b-1rkpqghxrt],
:root[data-bs-theme="dark"] .acref-wave-result-card--recv.wv-recv--quiet .acref-wave-result-val[b-1rkpqghxrt] {
    color: #6ee7b7;
}

.acref-wave-result-card--recv.wv-recv--loud .acref-wave-result-val[b-1rkpqghxrt],
.acref-wave-result-card--recv.wv-recv--danger .acref-wave-result-val[b-1rkpqghxrt] {
    color: #991B1B;
}

:root[data-bs-theme="dark"] .acref-wave-result-card--recv.wv-recv--loud .acref-wave-result-val[b-1rkpqghxrt],
:root[data-bs-theme="dark"] .acref-wave-result-card--recv.wv-recv--danger .acref-wave-result-val[b-1rkpqghxrt] {
    color: #fca5a5;
}

.acref-wave-result-sub[b-1rkpqghxrt] {
    font-size: .75rem;
    color: var(--fq-muted, #5a6b7a);
    line-height: 1.4;
}

.acref-wave-result-sep[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    justify-content: center;
}

.acref-wave-result-sep__line[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .2rem;
    font-size: .82rem;
    font-weight: 800;
    color: #0D7A6E;
    white-space: nowrap;
}

:root[data-bs-theme="dark"] .acref-wave-result-sep__line[b-1rkpqghxrt] {
    color: #4ecdc4;
}

.acref-wave-result-sep__line--none[b-1rkpqghxrt] {
    color: var(--fq-muted, #5a6b7a);
    font-weight: 600;
}

/* ─── Hearing risk banner ─── */
.acref-wave-hearing[b-1rkpqghxrt] {
    display: flex;
    align-items: flex-start;
    gap: .5rem;
    font-size: .82rem;
    line-height: 1.55;
    padding: .65rem .9rem;
    border-radius: 10px;
    transition: background .4s, border-color .4s, color .4s;
}

.acref-wave-hearing--safe[b-1rkpqghxrt] {
    background: rgba(16,185,129,.07);
    border: 1px solid rgba(16,185,129,.18);
    color: #065F46;
}

:root[data-bs-theme="dark"] .acref-wave-hearing--safe[b-1rkpqghxrt] {
    background: rgba(16,185,129,.10);
    border-color: rgba(16,185,129,.22);
    color: #6ee7b7;
}

.acref-wave-hearing--caution[b-1rkpqghxrt] {
    background: rgba(245,158,11,.08);
    border: 1px solid rgba(245,158,11,.25);
    color: #92400E;
}

:root[data-bs-theme="dark"] .acref-wave-hearing--caution[b-1rkpqghxrt] {
    background: rgba(245,158,11,.10);
    border-color: rgba(245,158,11,.28);
    color: #fcd34d;
}

.acref-wave-hearing--danger[b-1rkpqghxrt] {
    background: rgba(239,68,68,.09);
    border: 1px solid rgba(239,68,68,.28);
    color: #991B1B;
    animation: dangerBorderPulse-b-1rkpqghxrt 1.2s ease-in-out infinite alternate;
}

:root[data-bs-theme="dark"] .acref-wave-hearing--danger[b-1rkpqghxrt] {
    background: rgba(239,68,68,.12);
    border-color: rgba(239,68,68,.35);
    color: #fca5a5;
}

@keyframes dangerBorderPulse-b-1rkpqghxrt {
    from {
        border-color: rgba(239,68,68,.28);
    }

    to {
        border-color: rgba(239,68,68,.65);
    }
}

/* ══════════════════════════════════════════════════════════════════════════════
   HEARING DAMAGE THRESHOLD — dB scale additions
══════════════════════════════════════════════════════════════════════════════ */
.acref-db-row--danger .acref-db-lbl[b-1rkpqghxrt] {
    color: rgba(185,28,28,.80);
    font-weight: 700;
}

:root[data-bs-theme="dark"] .acref-db-row--danger .acref-db-lbl[b-1rkpqghxrt] {
    color: rgba(252,165,165,.80);
}

.acref-db-num--danger[b-1rkpqghxrt] {
    color: #991B1B !important;
    font-weight: 800 !important;
}

:root[data-bs-theme="dark"] .acref-db-num--danger[b-1rkpqghxrt] {
    color: #fca5a5 !important;
}

.acref-db-danger-tag[b-1rkpqghxrt] {
    display: inline-block;
    font-size: .60rem;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
    background: rgba(220,38,38,.12);
    color: #dc2626;
    border: 1px solid rgba(220,38,38,.25);
    border-radius: 5px;
    padding: .1rem .4rem;
    flex-shrink: 0;
    white-space: nowrap;
}

:root[data-bs-theme="dark"] .acref-db-danger-tag[b-1rkpqghxrt] {
    background: rgba(239,68,68,.16);
    color: #fca5a5;
    border-color: rgba(239,68,68,.28);
}

/* Fix the db-row to accommodate the danger tag */
.acref-db-row[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.acref-hearing-warning[b-1rkpqghxrt] {
    display: flex;
    align-items: flex-start;
    gap: .55rem;
    font-size: .78rem;
    line-height: 1.55;
    padding: .6rem .85rem;
    background: rgba(220,38,38,.06);
    border: 1px solid rgba(220,38,38,.18);
    border-radius: 9px;
    color: #7f1d1d;
}

    .acref-hearing-warning i[b-1rkpqghxrt] {
        color: #dc2626;
        flex-shrink: 0;
        margin-top: .15rem;
        font-size: .95rem;
    }

:root[data-bs-theme="dark"] .acref-hearing-warning[b-1rkpqghxrt] {
    background: rgba(239,68,68,.10);
    border-color: rgba(239,68,68,.22);
    color: #fca5a5;
}

/* ══════════════════════════════════════════════════════════════════════════════
   LIGHT MODE LABEL FIX — acref-db-lbl readability
   (Image 1 shows labels barely visible in light mode)
══════════════════════════════════════════════════════════════════════════════ */
.acref-db-lbl[b-1rkpqghxrt] {
    font-size: 11.5px !important;
    color: #374151 !important;
    min-width: 145px;
    text-align: right;
    flex-shrink: 0;
    font-weight: 600;
}

:root[data-bs-theme="dark"] .acref-db-lbl[b-1rkpqghxrt] {
    color: rgba(255,255,255,.65) !important;
}

/* ══════════════════════════════════════════════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════════════════════════════════════════════ */
@media (max-width: 767.98px) {
    .acref-wave-scene[b-1rkpqghxrt] {
        min-height: 160px;
    }

    .acref-wave-barrier[b-1rkpqghxrt] {
        width: 56px;
    }

    .acref-wave-source-icon[b-1rkpqghxrt] {
        width: 36px;
        height: 36px;
        font-size: 1rem;
    }

    .acref-wave-demo__body[b-1rkpqghxrt] {
        padding: .85rem;
    }

    .acref-wave-result-val[b-1rkpqghxrt] {
        font-size: 1.1rem;
    }
}

/* ══════════════════════════════════════════════════════════════════════════════
   PRINT — hide interactive scene
══════════════════════════════════════════════════════════════════════════════ */
@media print {
    .acref-wave-demo[b-1rkpqghxrt] {
        display: none !important;
    }

    .acref-hearing-warning[b-1rkpqghxrt] {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
    }
}

/* ══════════════════════════════════════════════════════════════════════════════
   ACOUSTICS REFERENCE — INNER TAB NAVIGATION  (.acref-inner-tabs)
   Four tabs breaking the long page into sections: Tools / Basics / Data / Science
   Matches the site's navy + gold palette. Light + dark mode.
══════════════════════════════════════════════════════════════════════════════ */

.acref-inner-tabs[b-1rkpqghxrt] {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
    background: linear-gradient(90deg, rgba(0,40,85,.05) 0%, rgba(241,184,40,.05) 100%);
    border: 1px solid rgba(241,184,40,.18);
    border-radius: 16px;
    padding: .45rem .5rem;
}

:root[data-bs-theme="dark"] .acref-inner-tabs[b-1rkpqghxrt] {
    background: linear-gradient(90deg, rgba(0,40,85,.22) 0%, rgba(241,184,40,.07) 100%);
    border-color: rgba(241,184,40,.14);
}

.acref-inner-tab[b-1rkpqghxrt] {
    display: inline-flex;
    align-items: center;
    border-radius: 11px;
    font-family: inherit;
    font-size: .82rem;
    font-weight: 700;
    padding: .5rem 1.1rem;
    cursor: pointer;
    border: 1px solid transparent;
    color: rgba(0,40,85,.70);
    background: transparent;
    transition: background .15s, color .15s, border-color .15s, box-shadow .15s;
    white-space: nowrap;
    letter-spacing: .01em;
}

    .acref-inner-tab:hover[b-1rkpqghxrt] {
        background: rgba(0,40,85,.07);
        color: #002855;
        border-color: rgba(0,40,85,.12);
    }

.acref-inner-tab--active[b-1rkpqghxrt] {
    background: #002855 !important;
    color: #F1B828 !important;
    border-color: #002855 !important;
    box-shadow: 0 2px 10px rgba(0,40,85,.30);
}

    .acref-inner-tab--active i[b-1rkpqghxrt] {
        color: #F1B828;
    }

:root[data-bs-theme="dark"] .acref-inner-tab[b-1rkpqghxrt] {
    color: rgba(232,237,242,.70);
    background: transparent;
    border-color: transparent;
}

    :root[data-bs-theme="dark"] .acref-inner-tab:hover[b-1rkpqghxrt] {
        background: rgba(255,255,255,.07);
        color: rgba(255,255,255,.88);
        border-color: rgba(241,184,40,.22);
    }

:root[data-bs-theme="dark"] .acref-inner-tab--active[b-1rkpqghxrt] {
    background: linear-gradient(180deg, #1E4D78, #0d1e3a) !important;
    color: #F1B828 !important;
    border-color: rgba(241,184,40,.50) !important;
    box-shadow: 0 2px 10px rgba(0,0,0,.40);
}

/* Tab panel fade-in */
.acref-tab-panel[b-1rkpqghxrt] {
    animation: acrefTabIn-b-1rkpqghxrt .18s ease both;
}

@keyframes acrefTabIn-b-1rkpqghxrt {
    from {
        opacity: 0;
        transform: translateY(6px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Responsive — stack tabs on small screens */
@media (max-width: 600px) {
    .acref-inner-tabs[b-1rkpqghxrt] {
        border-radius: 12px;
        padding: .35rem .4rem;
    }

    .acref-inner-tab[b-1rkpqghxrt] {
        font-size: .76rem;
        padding: .42rem .75rem;
    }
}

@media print {
    .acref-inner-tabs[b-1rkpqghxrt] {
        display: none !important;
    }

    .acref-tab-panel[b-1rkpqghxrt] {
        display: block !important;
    }
}

/* ══════════════════════════════════════════════════════════════════════════════
   COMPREHENSIVE UPGRADE — v2
   • Hero stats bar (acoustics inline stats)
   • Subnav pill contrast & cohesion improvements (all tabs)
   • Section header refinements
   • faq-tag/return-btn polish
   • faq-card & table micro-improvements
   • Dark/light mode consistency pass
══════════════════════════════════════════════════════════════════════════════ */

/* ── Hero stats bar ─────────────────────────────────────────────────────── */
.faq-hero__stats-bar[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: .1rem;
}

.faq-hero__stat-item[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    gap: .1rem;
    padding: .4rem .9rem;
}

    .faq-hero__stat-item:first-child[b-1rkpqghxrt] {
        padding-left: 0;
    }

.faq-hero__stat-val[b-1rkpqghxrt] {
    font-size: 1.05rem;
    font-weight: 800;
    color: #F1B828;
    line-height: 1.1;
    letter-spacing: .01em;
}

.faq-hero__stat-lbl[b-1rkpqghxrt] {
    font-size: .68rem;
    font-weight: 600;
    color: rgba(255,255,255,.55);
    text-transform: uppercase;
    letter-spacing: .06em;
}

.faq-hero__stat-sep[b-1rkpqghxrt] {
    width: 1px;
    height: 28px;
    background: rgba(255,255,255,.18);
    flex-shrink: 0;
    margin: 0 .1rem;
}

@media (max-width: 500px) {
    .faq-hero__stats-bar[b-1rkpqghxrt] {
        gap: 0;
    }

    .faq-hero__stat-item[b-1rkpqghxrt] {
        padding: .35rem .6rem;
    }

    .faq-hero__stat-val[b-1rkpqghxrt] {
        font-size: .92rem;
    }
}

/* ── Subnav: unified contrast improvements (all tabs, light mode) ────────── */
/* Base pill — bump idle text contrast from 0.80 to full #002855 */
.faq-subnav__pill[b-1rkpqghxrt] {
    color: rgba(0,40,85,0.88);
}

    /* Active pill — sharper navy fill with gold text, consistent across all tabs */
    .faq-subnav__pill.active[b-1rkpqghxrt],
    .faq-subnav--doors .faq-subnav__pill--doors.active[b-1rkpqghxrt],
    .faq-subnav--windows .faq-subnav__pill--windows.active[b-1rkpqghxrt],
    .faq-subnav--shiploose .faq-subnav__pill--shiploose.active[b-1rkpqghxrt],
    .faq-subnav--docs .faq-subnav__pill--docs.active[b-1rkpqghxrt],
    .faq-subnav--acoustics .faq-subnav__pill--acoustics.active[b-1rkpqghxrt] {
        background: linear-gradient(180deg, #003a7a, #002050) !important;
        border-color: #002855 !important;
        color: #F1B828 !important;
        box-shadow: 0 2px 10px rgba(0,40,85,.32), inset 0 1px 0 rgba(255,255,255,.08) !important;
    }

    /* Hover — warmer, more responsive */
    .faq-subnav__pill:hover[b-1rkpqghxrt] {
        background: linear-gradient(180deg, rgba(0,40,85,.10), rgba(255,255,255,.97)) !important;
        border-color: rgba(0,40,85,.28) !important;
        color: #002855 !important;
    }

/* Subnav container — slightly more definition */
.faq-subnav[b-1rkpqghxrt] {
    border-radius: 12px;
    box-shadow: 0 1px 4px rgba(0,40,85,.06);
}

/* ── Section header improvements ─────────────────────────────────────────── */
.faq-section__header[b-1rkpqghxrt] {
    border-bottom-color: rgba(0,40,85,.10);
}

:root[data-bs-theme="dark"] .faq-section__header[b-1rkpqghxrt] {
    border-bottom-color: rgba(255,255,255,.08);
}

.faq-section__icon-wrap[b-1rkpqghxrt] {
    background: linear-gradient(135deg, #003a7a, #002050);
    box-shadow: 0 2px 8px rgba(0,40,85,.28);
    border-radius: 11px;
}

:root[data-bs-theme="dark"] .faq-section__icon-wrap[b-1rkpqghxrt] {
    background: linear-gradient(135deg, #1e4d78, #0d1e3a);
    box-shadow: 0 2px 8px rgba(0,0,0,.40);
}

.faq-section__title[b-1rkpqghxrt] {
    color: #002050;
}

:root[data-bs-theme="dark"] .faq-section__title[b-1rkpqghxrt] {
    color: #bed6f5;
}

/* ── faq-hero enhancements ────────────────────────────────────────────────── */
/* Slightly richer gradient stop & a very subtle diagonal texture overlay */
.faq-hero[b-1rkpqghxrt] {
    background: linear-gradient(140deg, #001f52 0%, #003d8c 60%, #005cb5 100%);
}

:root[data-bs-theme="dark"] .faq-hero[b-1rkpqghxrt] {
    background: linear-gradient(140deg, #00102a 0%, #001f52 60%, #002a70 100%);
}

/* Second decorative ring in hero */
.faq-hero[b-1rkpqghxrt]::after {
    content: '';
    position: absolute;
    right: 180px;
    bottom: -120px;
    width: 280px;
    height: 280px;
    background: rgba(0,92,181,.18);
    border-radius: 50%;
    pointer-events: none;
}

/* ── faq-return-btn — polish ─────────────────────────────────────────────── */
.faq-return-btn[b-1rkpqghxrt] {
    background: rgba(255,255,255,.12);
    border-color: rgba(255,255,255,.25);
    text-transform: uppercase;
    letter-spacing: .04em;
    font-size: .76rem;
    transition: background .18s, border-color .18s, transform .1s;
}

    .faq-return-btn:hover[b-1rkpqghxrt] {
        background: rgba(255,255,255,.20);
        border-color: rgba(255,255,255,.45);
        transform: translateY(-1px);
    }

/* ── Acoustics inner tabs — light mode text contrast fix ─────────────────── */
.acref-inner-tab[b-1rkpqghxrt] {
    color: rgba(0,40,85,.82);
}

    .acref-inner-tab:hover[b-1rkpqghxrt] {
        background: rgba(0,40,85,.08);
        color: #002050;
        border-color: rgba(0,40,85,.15);
    }

/* ── faq-card polish ─────────────────────────────────────────────────────── */
.faq-card[b-1rkpqghxrt] {
    transition: box-shadow .2s ease, transform .2s ease;
}

    .faq-card:hover[b-1rkpqghxrt] {
        transform: translateY(-2px);
        box-shadow: 0 8px 24px rgba(0,40,85,.12);
    }

:root[data-bs-theme="dark"] .faq-card:hover[b-1rkpqghxrt] {
    box-shadow: 0 8px 24px rgba(0,0,0,.45);
}

/* ── faq-subnav education pill — better light mode visibility ─────────────── */
.faq-subnav--acoustics .faq-subnav__pill--edu[b-1rkpqghxrt] {
    color: #002855 !important;
    font-weight: 700;
}

    .faq-subnav--acoustics .faq-subnav__pill--edu.active[b-1rkpqghxrt] {
        background: linear-gradient(180deg, #003a7a, #002050) !important;
        border-color: #F1B828 !important;
        color: #F1B828 !important;
    }

/* ── Table refinements ───────────────────────────────────────────────────── */
.iac-table thead th[b-1rkpqghxrt] {
    font-size: .78rem;
    letter-spacing: .04em;
}

/* ── PDF button — more premium look ─────────────────────────────────────── */
.faq-pdf-btn[b-1rkpqghxrt] {
    letter-spacing: .04em;
    font-size: .82rem;
}

/* ── Splash product cards — subtle hover lift ────────────────────────────── */
.faq-pcard[b-1rkpqghxrt] {
    transition: transform .22s ease, box-shadow .22s ease;
}

    .faq-pcard:hover[b-1rkpqghxrt] {
        transform: translateY(-3px);
    }

/* ── Responsive: stack stats bar on small screens ────────────────────────── */
@media (max-width: 480px) {
    .faq-hero__stat-sep[b-1rkpqghxrt] {
        display: none;
    }

    .faq-hero__stats-bar[b-1rkpqghxrt] {
        gap: .4rem 0;
    }

    .faq-hero__stat-item[b-1rkpqghxrt] {
        padding: .3rem .5rem;
    }
}

/* Print: hide stats bar */
@media print {
    .faq-hero__stats-bar[b-1rkpqghxrt] {
        display: none !important;
    }
}

/* ══════════════════════════════════════════════════════════════════════════════
   ENHANCED INTERACTIVE TOOLS — New-age redesign (Round 4)
   All classes are additive — no existing styles overridden
══════════════════════════════════════════════════════════════════════════════ */

/* ─────────────────────────────────────────────────────────────────────────────
   STC COMPARISON TOOL — Always-open, full-bleed header, enhanced stats
───────────────────────────────────────────────────────────────────────────── */

/* Static (non-collapsible) header variant */
.acref-compare-tool__header--static[b-1rkpqghxrt] {
    cursor: default;
    border-bottom: 1px solid rgba(0,40,85,.08);
    padding-bottom: 1rem;
    margin-bottom: 1.25rem;
    display: flex;
    flex-direction: column;
    gap: .35rem;
}

:root[data-bs-theme="dark"] .acref-compare-tool__header--static[b-1rkpqghxrt] {
    border-bottom-color: rgba(255,255,255,.07);
}

.acref-compare-tool__sub-inline[b-1rkpqghxrt] {
    font-size: .87rem;
    color: var(--fq-muted, #5a6b7a);
    line-height: 1.55;
}

/* Label dot — color-coded A vs B */
.acref-compare-label[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    gap: .4rem;
}

.acref-compare-label__dot[b-1rkpqghxrt] {
    display: inline-block;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    flex-shrink: 0;
}

.acref-compare-label__dot--a[b-1rkpqghxrt] {
    background: #1E4D78;
}

.acref-compare-label__dot--b[b-1rkpqghxrt] {
    background: #0D7A6E;
}

:root[data-bs-theme="dark"] .acref-compare-label__dot--a[b-1rkpqghxrt] {
    background: #9bc6ff;
}

:root[data-bs-theme="dark"] .acref-compare-label__dot--b[b-1rkpqghxrt] {
    background: #4ecdc4;
}

/* Enhanced selector layout */
.acref-compare-selectors--enhanced[b-1rkpqghxrt] {
    background: rgba(0,40,85,.025);
    border: 1px solid rgba(0,40,85,.07);
    border-radius: 14px;
    padding: 1.1rem 1.25rem;
}

:root[data-bs-theme="dark"] .acref-compare-selectors--enhanced[b-1rkpqghxrt] {
    background: rgba(255,255,255,.025);
    border-color: rgba(255,255,255,.06);
}

/* Enhanced VS badge */
.acref-compare-vs--enhanced[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .15rem;
    padding-top: 1.6rem;
    color: var(--fq-muted, #5a6b7a);
    font-size: 1.1rem;
}

.acref-compare-vs__label[b-1rkpqghxrt] {
    font-size: .65rem;
    font-weight: 800;
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--fq-muted, #5a6b7a);
    display: block;
}

/* Enhanced bars */
.acref-compare-result__bars--enhanced[b-1rkpqghxrt] {
    gap: .7rem;
}

.acref-compare-bar-row--enhanced[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: 70px 1fr 64px;
    align-items: center;
    gap: .75rem;
}

.acref-compare-bar-label--a[b-1rkpqghxrt] {
    font-size: .8rem;
    font-weight: 700;
    color: #1E4D78;
    text-align: center;
}

.acref-compare-bar-label--b[b-1rkpqghxrt] {
    font-size: .8rem;
    font-weight: 700;
    color: #0D7A6E;
    text-align: center;
}

:root[data-bs-theme="dark"] .acref-compare-bar-label--a[b-1rkpqghxrt] {
    color: #9bc6ff;
}

:root[data-bs-theme="dark"] .acref-compare-bar-label--b[b-1rkpqghxrt] {
    color: #4ecdc4;
}

.acref-compare-bar-track--enhanced[b-1rkpqghxrt] {
    height: 28px;
    border-radius: 8px;
    overflow: hidden;
}

.acref-compare-bar-val[b-1rkpqghxrt] {
    font-size: .8rem;
    font-weight: 800;
}

.acref-compare-bar-side-label[b-1rkpqghxrt] {
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: var(--fq-muted, #5a6b7a);
}

/* Enhanced stat cards — 4-up grid */
.acref-compare-result__cards--enhanced[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: .85rem;
}

@media (max-width: 900px) {
    .acref-compare-result__cards--enhanced[b-1rkpqghxrt] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 480px) {
    .acref-compare-result__cards--enhanced[b-1rkpqghxrt] {
        grid-template-columns: 1fr 1fr;
    }
}

.acref-compare-stat--hero[b-1rkpqghxrt] {
    background: linear-gradient(145deg, rgba(0,40,85,.04), rgba(0,40,85,.02));
    border: 1px solid rgba(0,40,85,.10);
    border-radius: 14px;
    padding: 1rem 1.1rem;
    display: flex;
    flex-direction: column;
    gap: .2rem;
    transition: box-shadow .2s ease, transform .2s ease;
}

    .acref-compare-stat--hero:hover[b-1rkpqghxrt] {
        box-shadow: 0 4px 16px rgba(0,40,85,.10);
        transform: translateY(-1px);
    }

:root[data-bs-theme="dark"] .acref-compare-stat--hero[b-1rkpqghxrt] {
    background: linear-gradient(145deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
    border-color: rgba(255,255,255,.08);
}

    :root[data-bs-theme="dark"] .acref-compare-stat--hero:hover[b-1rkpqghxrt] {
        box-shadow: 0 4px 20px rgba(0,0,0,.4);
    }

/* Unique accent colors per stat card */
.acref-compare-stat--ear[b-1rkpqghxrt] {
    border-top: 3px solid #0D7A6E;
}

.acref-compare-stat--energy[b-1rkpqghxrt] {
    border-top: 3px solid #F1B828;
}

.acref-compare-stat--pct[b-1rkpqghxrt] {
    border-top: 3px solid #059669;
}

:root[data-bs-theme="dark"] .acref-compare-stat--ear[b-1rkpqghxrt] {
    border-top-color: #4ecdc4;
}

:root[data-bs-theme="dark"] .acref-compare-stat--energy[b-1rkpqghxrt] {
    border-top-color: #F1B828;
}

:root[data-bs-theme="dark"] .acref-compare-stat--pct[b-1rkpqghxrt] {
    border-top-color: #34d399;
}

.acref-compare-stat__val--ear[b-1rkpqghxrt] {
    font-size: .88rem;
    font-weight: 700;
    color: #0D7A6E;
    line-height: 1.35;
}

:root[data-bs-theme="dark"] .acref-compare-stat__val--ear[b-1rkpqghxrt] {
    color: #4ecdc4;
}

.acref-compare-stat__val--energy[b-1rkpqghxrt] {
    font-size: 1.5rem;
    font-weight: 900;
    color: #c28800;
    line-height: 1;
}

:root[data-bs-theme="dark"] .acref-compare-stat__val--energy[b-1rkpqghxrt] {
    color: #F1B828;
}

.acref-compare-stat__val--pct[b-1rkpqghxrt] {
    font-size: 1.5rem;
    font-weight: 900;
    color: #059669;
    line-height: 1;
}

:root[data-bs-theme="dark"] .acref-compare-stat__val--pct[b-1rkpqghxrt] {
    color: #34d399;
}

/* Enhanced insight banner */
.acref-compare-insight--enhanced[b-1rkpqghxrt] {
    background: linear-gradient(135deg, rgba(13,122,110,.07), rgba(0,40,85,.04));
    border: 1px solid rgba(13,122,110,.18);
    border-left: 4px solid #0D7A6E;
    border-radius: 0 12px 12px 0;
}

:root[data-bs-theme="dark"] .acref-compare-insight--enhanced[b-1rkpqghxrt] {
    background: linear-gradient(135deg, rgba(78,205,196,.08), rgba(155,198,255,.04));
    border-color: rgba(78,205,196,.20);
    border-left-color: #4ecdc4;
}

/* ─────────────────────────────────────────────────────────────────────────────
   ROOM ISOLATION CALCULATOR — Pill-grid redesign
───────────────────────────────────────────────────────────────────────────── */

.acref-calc-tool--enhanced .acref-calc-tool__body--enhanced[b-1rkpqghxrt] {
    padding: 1.5rem 1.75rem;
}

/* Step label with numbered badge */
.acref-calc-step__label[b-1rkpqghxrt] {
    display: flex;
    align-items: center;
    gap: .65rem;
    font-size: .82rem;
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--fq-muted, #5a6b7a);
    margin-bottom: .85rem;
}

.acref-calc-step__num[b-1rkpqghxrt] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #1E4D78;
    color: #fff;
    font-size: .72rem;
    font-weight: 900;
    flex-shrink: 0;
}

:root[data-bs-theme="dark"] .acref-calc-step__num[b-1rkpqghxrt] {
    background: #4ecdc4;
    color: #081a1a;
}

/* Pill grid for source/target selection */
.acref-calc-pill-grid[b-1rkpqghxrt] {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: .6rem;
}

.acref-calc-pill-grid--target[b-1rkpqghxrt] {
    grid-template-columns: repeat(3, 1fr);
}

@media (max-width: 720px) {
    .acref-calc-pill-grid[b-1rkpqghxrt],
    .acref-calc-pill-grid--target[b-1rkpqghxrt] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 440px) {
    .acref-calc-pill-grid[b-1rkpqghxrt],
    .acref-calc-pill-grid--target[b-1rkpqghxrt] {
        grid-template-columns: 1fr 1fr;
    }
}

/* Individual pill button */
.acref-calc-pill[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: .3rem;
    padding: .75rem .5rem .65rem;
    border-radius: 12px;
    border: 1.5px solid rgba(0,40,85,.12);
    background: rgba(0,40,85,.03);
    cursor: pointer;
    transition: all .18s ease;
    text-align: center;
    min-height: 80px;
}

    .acref-calc-pill:hover[b-1rkpqghxrt] {
        background: rgba(30,77,120,.08);
        border-color: rgba(30,77,120,.28);
        transform: translateY(-2px);
        box-shadow: 0 4px 12px rgba(0,40,85,.10);
    }

:root[data-bs-theme="dark"] .acref-calc-pill[b-1rkpqghxrt] {
    background: rgba(255,255,255,.04);
    border-color: rgba(255,255,255,.09);
}

    :root[data-bs-theme="dark"] .acref-calc-pill:hover[b-1rkpqghxrt] {
        background: rgba(155,198,255,.09);
        border-color: rgba(155,198,255,.22);
    }

/* Active source pill — navy */
.acref-calc-pill--active[b-1rkpqghxrt] {
    background: linear-gradient(145deg, #1E4D78, #0f3356) !important;
    border-color: #1E4D78 !important;
    color: #fff !important;
    box-shadow: 0 4px 14px rgba(30,77,120,.30);
    transform: translateY(-2px);
}

    .acref-calc-pill--active .acref-calc-pill__db[b-1rkpqghxrt] {
        color: rgba(255,255,255,.75) !important;
    }

/* Active target pill — teal */
.acref-calc-pill--target-active[b-1rkpqghxrt] {
    background: linear-gradient(145deg, #0D7A6E, #085e54) !important;
    border-color: #0D7A6E !important;
    color: #fff !important;
    box-shadow: 0 4px 14px rgba(13,122,110,.30);
    transform: translateY(-2px);
}

    .acref-calc-pill--target-active .acref-calc-pill__db[b-1rkpqghxrt] {
        color: rgba(255,255,255,.75) !important;
    }

.acref-calc-pill__icon[b-1rkpqghxrt] {
    font-size: 1.3rem;
    color: #1E4D78;
    transition: color .18s;
}

.acref-calc-pill--target .acref-calc-pill__icon[b-1rkpqghxrt] {
    color: #0D7A6E;
}

.acref-calc-pill--active .acref-calc-pill__icon[b-1rkpqghxrt],
.acref-calc-pill--target-active .acref-calc-pill__icon[b-1rkpqghxrt] {
    color: rgba(255,255,255,.90) !important;
}

:root[data-bs-theme="dark"] .acref-calc-pill__icon[b-1rkpqghxrt] {
    color: #9bc6ff;
}

:root[data-bs-theme="dark"] .acref-calc-pill--target .acref-calc-pill__icon[b-1rkpqghxrt] {
    color: #4ecdc4;
}

.acref-calc-pill__name[b-1rkpqghxrt] {
    font-size: .73rem;
    font-weight: 700;
    color: var(--fq-text, #1a1a1a);
    line-height: 1.25;
    transition: color .18s;
}

.acref-calc-pill--active .acref-calc-pill__name[b-1rkpqghxrt],
.acref-calc-pill--target-active .acref-calc-pill__name[b-1rkpqghxrt] {
    color: #fff !important;
}

:root[data-bs-theme="dark"] .acref-calc-pill__name[b-1rkpqghxrt] {
    color: rgba(255,255,255,.85);
}

.acref-calc-pill__db[b-1rkpqghxrt] {
    font-size: .67rem;
    font-weight: 800;
    letter-spacing: .04em;
    color: var(--fq-muted, #5a6b7a);
    font-variant-numeric: tabular-nums;
    transition: color .18s;
}

:root[data-bs-theme="dark"] .acref-calc-pill__db[b-1rkpqghxrt] {
    color: rgba(255,255,255,.45);
}

/* Enhanced result area */
.acref-calc-result--enhanced[b-1rkpqghxrt] {
    background: linear-gradient(145deg, rgba(0,40,85,.04), rgba(13,122,110,.03));
    border: 1px solid rgba(0,40,85,.10);
    border-radius: 16px;
    padding: 1.25rem 1.5rem;
}

:root[data-bs-theme="dark"] .acref-calc-result--enhanced[b-1rkpqghxrt] {
    background: linear-gradient(145deg, rgba(155,198,255,.04), rgba(78,205,196,.03));
    border-color: rgba(255,255,255,.08);
}

.acref-calc-result__header[b-1rkpqghxrt] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    flex-wrap: wrap;
}

.acref-calc-result__stc-hero[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    gap: .15rem;
}

.acref-calc-result__quality-badge[b-1rkpqghxrt] {
    display: inline-flex;
    align-items: center;
    font-size: .78rem;
    font-weight: 700;
    padding: .35rem .85rem;
    border-radius: 20px;
    background: rgba(13,122,110,.10);
    border: 1px solid rgba(13,122,110,.20);
    color: #0D7A6E;
    white-space: nowrap;
}

:root[data-bs-theme="dark"] .acref-calc-result__quality-badge[b-1rkpqghxrt] {
    background: rgba(78,205,196,.12);
    border-color: rgba(78,205,196,.22);
    color: #4ecdc4;
}

/* STC meter */
.acref-calc-meter[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    gap: .35rem;
}

.acref-calc-meter__track[b-1rkpqghxrt] {
    height: 32px;
    background: rgba(0,40,85,.07);
    border-radius: 8px;
    overflow: hidden;
}

:root[data-bs-theme="dark"] .acref-calc-meter__track[b-1rkpqghxrt] {
    background: rgba(255,255,255,.07);
}

.acref-calc-meter__fill[b-1rkpqghxrt] {
    height: 100%;
    border-radius: 8px;
    background: linear-gradient(90deg, #002855, #1E4D78, #0D7A6E);
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding-right: 10px;
    transition: width .6s cubic-bezier(.4,0,.2,1);
    min-width: 60px;
}

:root[data-bs-theme="dark"] .acref-calc-meter__fill[b-1rkpqghxrt] {
    background: linear-gradient(90deg, #0e3a6e, #1E4D78, #4ecdc4);
}

.acref-calc-meter__label[b-1rkpqghxrt] {
    font-size: .78rem;
    font-weight: 800;
    color: #fff;
    white-space: nowrap;
}

.acref-calc-meter__scale[b-1rkpqghxrt] {
    display: flex;
    justify-content: space-between;
    font-size: .62rem;
    color: var(--fq-muted, #5a6b7a);
    font-weight: 600;
    letter-spacing: .03em;
    padding: 0 2px;
}

/* Product detail card in result */
.acref-calc-detail-row--card[b-1rkpqghxrt] {
    display: flex;
    align-items: flex-start;
    gap: .85rem;
    background: rgba(255,255,255,.6);
    border: 1px solid rgba(0,40,85,.08);
    border-radius: 10px;
    padding: .85rem 1rem;
}

:root[data-bs-theme="dark"] .acref-calc-detail-row--card[b-1rkpqghxrt] {
    background: rgba(255,255,255,.04);
    border-color: rgba(255,255,255,.07);
}

.acref-calc-detail-row--card > i[b-1rkpqghxrt] {
    font-size: 1.3rem;
    color: #1E4D78;
    flex-shrink: 0;
    margin-top: .1rem;
}

:root[data-bs-theme="dark"] .acref-calc-detail-row--card > i[b-1rkpqghxrt] {
    color: #9bc6ff;
}

.acref-calc-detail-row--card strong[b-1rkpqghxrt] {
    display: block;
    font-size: .72rem;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
    color: var(--fq-muted, #5a6b7a);
    margin-bottom: .2rem;
}

.acref-calc-detail-row--card p[b-1rkpqghxrt] {
    font-size: .87rem;
    color: var(--fq-text, #1a1a1a);
    line-height: 1.5;
}

:root[data-bs-theme="dark"] .acref-calc-detail-row--card p[b-1rkpqghxrt] {
    color: rgba(255,255,255,.82);
}

/* ─────────────────────────────────────────────────────────────────────────────
   TL LABEL SUB-TEXT  (.stc-tl__label-sub)
───────────────────────────────────────────────────────────────────────────── */
.stc-tl__label[b-1rkpqghxrt] {
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .05em;
    text-transform: uppercase;
    color: var(--fq-muted, #5a6b7a);
    margin-bottom: .4rem;
}

.stc-tl__label-sub[b-1rkpqghxrt] {
    font-size: .68rem;
    font-weight: 400;
    font-style: italic;
    letter-spacing: 0;
    text-transform: none;
    color: var(--fq-muted, #5a6b7a);
}

/* ─────────────────────────────────────────────────────────────────────────────
   WAVE DEMO — enhanced controls layout
───────────────────────────────────────────────────────────────────────────── */
.acref-wave-demo__controls[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.acref-wave-ctrl-group[b-1rkpqghxrt] {
    display: flex;
    flex-direction: column;
    gap: .55rem;
}

.acref-wave-source-pills[b-1rkpqghxrt],
.acref-wave-prod-pills[b-1rkpqghxrt] {
    display: flex;
    flex-wrap: wrap;
    gap: .4rem;
}

.acref-wave-src-pill[b-1rkpqghxrt] {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    gap: .1rem;
    padding: .4rem .75rem;
    border-radius: 10px;
    border: 1.5px solid rgba(0,40,85,.13);
    background: rgba(0,40,85,.04);
    cursor: pointer;
    font-size: .75rem;
    font-weight: 700;
    color: var(--fq-text, #1a1a1a);
    transition: all .16s ease;
    white-space: nowrap;
}

    .acref-wave-src-pill:hover[b-1rkpqghxrt] {
        background: rgba(30,77,120,.10);
        border-color: rgba(30,77,120,.26);
        transform: translateY(-1px);
    }

:root[data-bs-theme="dark"] .acref-wave-src-pill[b-1rkpqghxrt] {
    background: rgba(255,255,255,.05);
    border-color: rgba(255,255,255,.10);
    color: rgba(255,255,255,.80);
}

.acref-wave-src-pill--active[b-1rkpqghxrt] {
    background: linear-gradient(145deg, #1E4D78, #0f3356) !important;
    border-color: #1E4D78 !important;
    color: #fff !important;
    box-shadow: 0 3px 10px rgba(30,77,120,.28);
}

.acref-wave-src-db[b-1rkpqghxrt] {
    font-size: .63rem;
    font-weight: 600;
    color: rgba(255,255,255,.65);
    letter-spacing: .02em;
}

.acref-wave-src-pill:not(.acref-wave-src-pill--active) .acref-wave-src-db[b-1rkpqghxrt] {
    color: var(--fq-muted, #5a6b7a);
}

.acref-wave-prod-pill[b-1rkpqghxrt] {
    padding: .35rem .7rem;
    border-radius: 8px;
    border: 1.5px solid rgba(0,40,85,.12);
    background: rgba(0,40,85,.04);
    cursor: pointer;
    font-size: .73rem;
    font-weight: 700;
    color: var(--fq-text, #1a1a1a);
    transition: all .16s ease;
    white-space: nowrap;
}

    .acref-wave-prod-pill:hover[b-1rkpqghxrt] {
        background: rgba(0,40,85,.09);
        border-color: rgba(0,40,85,.24);
        transform: translateY(-1px);
    }

:root[data-bs-theme="dark"] .acref-wave-prod-pill[b-1rkpqghxrt] {
    background: rgba(255,255,255,.04);
    border-color: rgba(255,255,255,.09);
    color: rgba(255,255,255,.80);
}

.acref-wave-prod-pill--active[b-1rkpqghxrt] {
    background: #002855 !important;
    border-color: #002855 !important;
    color: #F1B828 !important;
    box-shadow: 0 2px 8px rgba(0,40,85,.30);
}

:root[data-bs-theme="dark"] .acref-wave-prod-pill--active[b-1rkpqghxrt] {
    background: #0e3a6e !important;
    border-color: #4ecdc4 !important;
    color: #4ecdc4 !important;
}

/* ─────────────────────────────────────────────────────────────────────────────
   PRINT — suppress new pill grids in print view
───────────────────────────────────────────────────────────────────────────── */
@media print {
    .acref-calc-pill-grid[b-1rkpqghxrt],
    .acref-calc-pill-grid--target[b-1rkpqghxrt],
    .acref-wave-demo[b-1rkpqghxrt] {
        display: none !important;
    }

    .acref-calc-tool--enhanced[b-1rkpqghxrt] {
        page-break-inside: avoid;
    }
}


/* ── Acoustics reference education banner ───────────────────────────── */
.acref-edu-banner[b-1rkpqghxrt] {
    display: flex;
    align-items: flex-start;
    gap: .9rem;
    padding: 1rem 1.15rem;
    border-radius: 16px;
    border: 1px solid rgba(157,182,223,.95);
    background: linear-gradient(180deg, #eef4fd 0%, #e5edf9 100%);
    color: #0f172a;
    box-shadow: 0 10px 24px rgba(0,40,85,.08);
}

.acref-edu-banner__icon[b-1rkpqghxrt] {
    flex: 0 0 auto;
    width: 24px;
    height: 24px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    margin-top: 1px;
    background: #1d4ed8;
    color: #fff;
    font-size: .82rem;
}

.acref-edu-banner__text[b-1rkpqghxrt] {
    font-size: .95rem;
    line-height: 1.6;
    color: inherit;
}

:root[data-bs-theme="dark"] .acref-edu-banner[b-1rkpqghxrt] {
    border-color: rgba(74,108,156,.95);
    background: linear-gradient(180deg, rgba(22,31,45,.98) 0%, rgba(16,24,36,.98) 100%);
    color: rgba(232,237,242,.92);
    box-shadow: 0 12px 28px rgba(0,0,0,.35);
}

:root[data-bs-theme="dark"] .acref-edu-banner__icon[b-1rkpqghxrt] {
    background: #3b82f6;
    color: #f8fbff;
}

@media (max-width: 640px) {
    .acref-edu-banner[b-1rkpqghxrt] {
        padding: .9rem 1rem;
        gap: .75rem;
    }

    .acref-edu-banner__text[b-1rkpqghxrt] {
        font-size: .9rem;
    }
}
/* _content/NoiseLockQuoteTool/Pages/Index.razor.rz.scp.css */
/* ==========================================================================
   INDEX.RAZOR — SCOPED PAGE CSS
   All classes prefixed idx- — zero collision with site.css.
   NOTE: CSS custom properties (--idx-*) are declared in site.css :root
   because Blazor CSS isolation transforms :root to :root[b-hash] which
   never matches, silently breaking all var() references.
   ========================================================================== */

/* --------------------------------------------------------------------------
   PAGE SAFETY — lock scroll at the page level.

   site.css contains three rules that cause scroll on this page even when
   overflow:hidden is set. All three are countered here via :global so
   Blazor CSS isolation cannot scope these away.

   The :has(.idx-hero) scope ensures every override ONLY fires while the
   Index page is mounted — zero side-effects on any other page.

   Conflicts neutralised:
     1. html/body:not(.iac-login-page) { height:100% !important }
        — fine on its own, but combined with rule #2 below it creates scroll.

     2. body:not(.iac-login-page) { padding-bottom: calc(40px + ...) }
        — Adds 40px+ of space below the hero, pushing height past 100dvh.

     3. body:not(.iac-login-page) main { min-height: calc(100dvh - 56px) }
        — Forces <main> taller than the viewport, creating inner scroll.
   -------------------------------------------------------------------------- */

/* Lock html */
:global(html)[b-3705a48411] {
    overflow: hidden !important;
    height: 100% !important;
}

/* Lock body + zero out the stripe padding-bottom site.css injects */
:global(body:has(.idx-hero))[b-3705a48411] {
    overflow: hidden !important;
    height: 100% !important;
    padding-bottom: 0 !important;
}

/* Prevent Blazor's <main> wrapper from being taller than the viewport */
:global(body:has(.idx-hero) main)[b-3705a48411] {
    min-height: 0 !important;
    height: 100% !important;
    overflow: hidden !important;
}

/* --------------------------------------------------------------------------
   FULL-BLEED HEADER + FOOTER (no right gap with scrollbars)
   -------------------------------------------------------------------------- */
:global(header)[b-3705a48411],
:global(footer)[b-3705a48411],
:global(.app-header)[b-3705a48411],
:global(.app-footer)[b-3705a48411],
:global(.site-header)[b-3705a48411],
:global(.site-footer)[b-3705a48411],
:global(.navbar)[b-3705a48411],
:global(.footer)[b-3705a48411] {
    width: 100vw;
    max-width: 100vw;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    box-sizing: border-box;
}

:global(header.fixed-top)[b-3705a48411],
:global(header.sticky-top)[b-3705a48411],
:global(footer.fixed-bottom)[b-3705a48411] {
    left: 0;
    right: 0;
}


/* --------------------------------------------------------------------------
   HERO SHELL — fills exactly the space between navbar and footer, no scroll
   -------------------------------------------------------------------------- */
.idx-hero[b-3705a48411] {
    display: flex;
    flex-direction: row;
    width: 100%;
    height: calc(100dvh - 56px - 40px);
    min-height: calc(100dvh - 56px - 40px);
    max-height: calc(100dvh - 56px - 40px);
    overflow: hidden;
    background-color: var(--idx-hero-bg);
    margin: 0;
    padding: 0;
    position: relative;
    transition: background-color 0.3s ease;
}

/* --------------------------------------------------------------------------
   PHOTO PANEL — LEFT
   -------------------------------------------------------------------------- */
.idx-photo[b-3705a48411] {
    flex: 0 0 clamp(30%, 34vw, 40%);
    width: clamp(30%, 34vw, 40%);
    height: 100%;
    align-self: stretch;
    flex-shrink: 0;
    position: relative;
    overflow: hidden;
    background-image: var(--img-index-bg);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    margin: 3px 0 47px 0;
}

    .idx-photo[b-3705a48411]::after {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(to right, rgba(0,0,0,.10) 0%, transparent 55%), linear-gradient(to top, rgba(0,40,85,.40) 0%, transparent 50%);
        pointer-events: none;
    }

/* --------------------------------------------------------------------------
   CONTENT PANEL — RIGHT
   -------------------------------------------------------------------------- */
:root[data-bs-theme="light"] .idx-content-panel[b-3705a48411] {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    height: 100%;
    min-height: 0;
    align-self: stretch;
    position: relative;
    background-color: #ffffff;
    overflow: hidden;
    transition: background-color 0.3s ease;
}

:root[data-bs-theme="dark"] .idx-content-panel[b-3705a48411] {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    justify-content: center;
    height: 100%;
    min-height: 0;
    align-self: stretch;
    position: relative;
    background-color: #0e1216;
    overflow: hidden;
    transition: background-color 0.3s ease;
}

/* --------------------------------------------------------------------------
   HEADLINE BAND
   -------------------------------------------------------------------------- */
.idx-band[b-3705a48411] {
    flex-shrink: 0;
    background-color: var(--idx-band-bg);
    border-left: 4px solid var(--idx-gold);
    border-top: 1px solid var(--idx-gold);
    border-bottom: 1px solid var(--idx-gold);
    padding: clamp(2.5rem, 5vh, 4rem) clamp(2.5rem, 6vw, 5rem);
    transition: background-color 0.3s ease;
}

:root[data-bs-theme="dark"] .idx-band[b-3705a48411] {
    flex-shrink: 0;
    background-color: #16202b;
    border-left: 4px solid var(--idx-gold);
    border-top: 1px solid var(--idx-band-border);
    border-bottom: 1px solid var(--idx-band-border);
    padding: clamp(2.5rem, 5vh, 4rem) clamp(2.5rem, 6vw, 5rem);
    transition: background-color 0.3s ease;
}

/* --------------------------------------------------------------------------
   CONTENT INNER — bullets & CTA
   -------------------------------------------------------------------------- */
.idx-content-inner[b-3705a48411] {
    padding: clamp(1.5rem, 2.5vh, 2rem) clamp(2.5rem, 6vw, 5rem);
    text-align: left;
}

/* --------------------------------------------------------------------------
   TITLE
   -------------------------------------------------------------------------- */
.idx-title[b-3705a48411] {
    font-family: "din-2014", "DIN Pro", sans-serif;
    font-size: clamp(2.2rem, 4.2vw, 4.4rem);
    font-weight: 700;
    line-height: 1.0;
    letter-spacing: 0.04em;
    color: var(--idx-title-clr);
    text-transform: uppercase;
    margin: 0 0 0.4rem 0;
    padding: 0;
    transition: color 0.3s ease;
}

/* --------------------------------------------------------------------------
   SUBTITLE
   -------------------------------------------------------------------------- */
.idx-sub[b-3705a48411] {
    font-family: "din-2014", "DIN Pro", sans-serif;
    font-size: clamp(0.95rem, 1.45vw, 1.25rem);
    font-weight: 400;
    letter-spacing: 0.10em;
    color: var(--idx-sub-clr);
    text-transform: uppercase;
    margin: 0;
    padding: 0;
    transition: color 0.3s ease;
}

/* --------------------------------------------------------------------------
   BULLET LIST
   -------------------------------------------------------------------------- */
.idx-bullets[b-3705a48411] {
    list-style: none;
    margin: 0 0 clamp(1rem, 2vh, 1.5rem) 0;
    padding: 0;
    padding-inline-start: 0;
}

    .idx-bullets li[b-3705a48411] {
        position: relative;
        font-family: "din-2014", "DIN Pro", sans-serif;
        font-size: clamp(0.88rem, 1.0vw, 1.0rem);
        font-weight: 400;
        color: var(--idx-bullet-text);
        margin-bottom: 0.85rem;
        padding-left: 1.35rem;
        line-height: 1.6;
        transition: color 0.3s ease;
    }

        .idx-bullets li[b-3705a48411]::before {
            content: "";
            display: block;
            position: absolute;
            left: 0;
            top: 0.52em;
            width: 8px;
            height: 8px;
            background-color: var(--idx-bullet-dot);
            border-radius: 50%;
        }

        .idx-bullets li a[b-3705a48411] {
            color: var(--idx-link);
            text-decoration: none;
            font-weight: 600;
            border-bottom: 1px solid transparent;
            transition: color 0.18s ease, border-color 0.18s ease;
        }

            .idx-bullets li a:hover[b-3705a48411] {
                color: var(--idx-link-hover);
                border-bottom-color: var(--idx-gold);
            }

/* --------------------------------------------------------------------------
   REQUEST ACCESS ROW
   -------------------------------------------------------------------------- */
.idx-cta-row[b-3705a48411] {
    display: flex;
    justify-content: flex-start;
    margin: 0.25rem 0 0 0;
}

/* --------------------------------------------------------------------------
   CTA BUTTON
   -------------------------------------------------------------------------- */
.idx-cta-btn[b-3705a48411] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.55rem;
    padding: 0.72rem 1.6rem;
    min-height: 46px;
    border-radius: 6px;
    border: 1px solid rgba(241,184,40,0.75);
    color: #ffffff;
    background: linear-gradient(175deg, rgba(255,255,255,.10) 0%, rgba(255,255,255,.00) 40%), linear-gradient(175deg, #1a4f87 0%, #002855 100%);
    box-shadow: 0 10px 24px rgba(0,40,85,.22), inset 0 1px 0 rgba(255,255,255,.14);
    font-family: "din-2014", "DIN Pro", sans-serif;
    font-size: 0.78rem;
    font-weight: 700;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    overflow: hidden;
    cursor: pointer;
    transition: transform 0.14s ease, box-shadow 0.16s ease, filter 0.16s ease;
}

    .idx-cta-btn[b-3705a48411]::before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(105deg, transparent 0%, rgba(255,255,255,.09) 48%, transparent 52%);
        pointer-events: none;
    }

    .idx-cta-btn:hover[b-3705a48411] {
        transform: translateY(-2px);
        filter: brightness(1.07);
        border-color: rgba(241,184,40,0.95);
        box-shadow: 0 16px 36px rgba(0,40,85,.28), inset 0 1px 0 rgba(255,255,255,.18);
    }

    .idx-cta-btn:active[b-3705a48411] {
        transform: translateY(0) scale(0.985);
        filter: brightness(0.97);
    }

    .idx-cta-btn:focus-visible[b-3705a48411] {
        outline: none;
        box-shadow: 0 0 0 3px rgba(241,184,40,.30), 0 10px 24px rgba(0,40,85,.22);
    }
/* --------------------------------------------------------------------------
   FOOTER STRIPE
   -------------------------------------------------------------------------- */
.iac-login-footer[b-3705a48411] {
    position: fixed;
    inset: auto 0 0 0;
    height: 38px;
    z-index: 9999;
    background: linear-gradient(180deg, rgba(255,255,255,0.10), rgba(0,0,0,0.00)), var(--iac-blue-hex, #002855);
    border-top: 1px solid rgba(255,255,255,0.12);
}

    .iac-login-footer.iac-login-footer-img[b-3705a48411] {
        background: #002855 var(--img-bottom-blue-bar, url("/images/BottomBlueBar.png")) center bottom / cover no-repeat;
        border-top: 0;
        border-right: 0;
    }

:root[data-bs-theme="dark"] .iac-login-footer[b-3705a48411] {
    background: linear-gradient(180deg, rgba(255,255,255,0.04), rgba(0,0,0,0.00)), #050d18;
    border-top-color: rgba(255,255,255,0.08);
}

    :root[data-bs-theme="dark"] .iac-login-footer.iac-login-footer-img[b-3705a48411] {
        background-color: #050d18;
        background-image: var(--img-bottom-blue-bar, url("/images/BottomBlueBar.png"));
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center bottom;
        border-top: 0;
    }

/* --------------------------------------------------------------------------
   DARK MODE
   -------------------------------------------------------------------------- */
:global(:root[data-bs-theme="dark"]) .idx-hero[b-3705a48411] {
    background-color: #0e1216;
}

:global(:root[data-bs-theme="dark"]) .idx-content-panel[b-3705a48411] {
    background-color: #0e1216;
}

:global(:root[data-bs-theme="dark"]) .idx-band[b-3705a48411] {
    background-color: rgba(255,255,255,.045);
    border-top-color: rgba(255,255,255,.10);
    border-bottom-color: rgba(255,255,255,.10);
}

/* --------------------------------------------------------------------------
   RESPONSIVE — TABLET (≤ 1199px)
   Hide the photo panel entirely — do NOT stack it on top.
   Content panel expands to fill full width.
   -------------------------------------------------------------------------- */
@media (max-width: 1199px) {
    /* Re-allow scroll on small screens so content isn't cut off.
       Scoped to :has(.idx-hero) so this only fires on the Index page. */
    :global(html)[b-3705a48411] {
        overflow: auto !important;
    }

    :global(body:has(.idx-hero))[b-3705a48411] {
        overflow: auto !important;
        overflow-x: hidden !important;
        padding-bottom: calc(40px + env(safe-area-inset-bottom, 0px)) !important; /* restore stripe gap */
    }

    :global(body:has(.idx-hero) main)[b-3705a48411] {
        min-height: calc(100dvh - 56px) !important;
        height: auto !important;
        overflow: visible !important;
    }

    .idx-hero[b-3705a48411] {
        flex-direction: row; /* keep row — photo just disappears */
        height: auto;
        min-height: calc(100dvh - 56px - 40px);
        max-height: none;
        overflow: visible;
    }

    /* Hide photo — no stacking, no reflow */
    .idx-photo[b-3705a48411] {
        display: none;
    }

    /* Content panel fills the full width */
    .idx-content-panel[b-3705a48411],
    :root[data-bs-theme="light"] .idx-content-panel[b-3705a48411],
    :root[data-bs-theme="dark"] .idx-content-panel[b-3705a48411] {
        flex: 1 1 100%;
        width: 100%;
        height: auto;
        min-height: calc(100dvh - 56px - 40px);
        overflow: visible;
        justify-content: center;
    }

    .idx-band[b-3705a48411],
    .idx-content-inner[b-3705a48411] {
        padding-left: clamp(1.5rem, 4vw, 2.5rem);
        padding-right: clamp(1.5rem, 4vw, 2.5rem);
    }
}

/* --------------------------------------------------------------------------
   RESPONSIVE — MOBILE (≤ 767px)
   -------------------------------------------------------------------------- */
@media (max-width: 767px) {
    .idx-title[b-3705a48411] {
        font-size: clamp(1.9rem, 7.5vw, 2.6rem);
    }

    .idx-sub[b-3705a48411] {
        font-size: 0.82rem;
    }

    .idx-bullets li[b-3705a48411] {
        font-size: 0.88rem;
    }

    .idx-cta-row[b-3705a48411] {
        justify-content: center;
    }
}

/* --------------------------------------------------------------------------
   WIDESCREEN (≥ 2560px)
   -------------------------------------------------------------------------- */
@media (min-width: 2560px) {
    .idx-photo[b-3705a48411] {
        background-size: contain;
        background-position: left center;
    }
}
/* _content/NoiseLockQuoteTool/Pages/Login.razor.rz.scp.css */
/* ==========================================================================
   LOGIN.RAZOR — SCOPED PAGE CSS
   IAC Acoustics | Quoting & Pricing Portal
   Font: din-2014  |  Themes: light + dark
   Responsive strategy:
     ≥ 992px  → two-column: hero image left, form right
     < 992px  → single-column, image hidden, centred form
   ========================================================================== */

/* --------------------------------------------------------------------------
   SCROLL LOCK — only active on large screens where layout is fixed
   -------------------------------------------------------------------------- */
@media (min-width: 1024px) {
    :global(html:has(.iac-login-bg))[b-ouyrq9nv0w] {
        overflow: hidden !important;
        height: 100% !important;
    }

    :global(body:has(.iac-login-bg))[b-ouyrq9nv0w] {
        overflow: hidden !important;
        height: 100% !important;
        padding-bottom: 0 !important;
    }

    :global(body:has(.iac-login-bg) main)[b-ouyrq9nv0w] {
        min-height: 0 !important;
        height: 100% !important;
        overflow: hidden !important;
    }
}

/* --------------------------------------------------------------------------
   TOPBAR — 4px gold accent strip
   -------------------------------------------------------------------------- */
.iac-login-topbar[b-ouyrq9nv0w] {
    position: fixed;
    inset: 0 0 auto 0;
    height: 4px;
    z-index: 1000;
    background: linear-gradient( 90deg, var(--iac-gold, #F1B828) 0%, rgba(var(--iac-gold-rgb, 241,184,40), 0.35) 35%, transparent 75% );
}

/* --------------------------------------------------------------------------
   FOOTER STRIPE — fixed blue bar at bottom
   -------------------------------------------------------------------------- */
.iac-login-footer[b-ouyrq9nv0w] {
    position: fixed;
    inset: auto 0 0 0;
    height: 38px;
    z-index: 999;
    background: linear-gradient(180deg, rgba(255,255,255,0.10), rgba(0,0,0,0.00)), var(--iac-blue-hex, #002855);
    border-top: 1px solid rgba(255,255,255,0.12);
}

    .iac-login-footer.iac-login-footer-img[b-ouyrq9nv0w] {
        background: #002855 var(--img-bottom-blue-bar, url("/images/BottomBlueBar.png")) center bottom / cover no-repeat;
        border-top: 0;
    }

:root[data-bs-theme="dark"] .iac-login-footer[b-ouyrq9nv0w] {
    background: linear-gradient(180deg, rgba(255,255,255,0.04), rgba(0,0,0,0.00)), #050d18;
    border-top-color: rgba(255,255,255,0.08);
}

    :root[data-bs-theme="dark"] .iac-login-footer.iac-login-footer-img[b-ouyrq9nv0w] {
        background-color: #050d18;
        background-image: var(--img-bottom-blue-bar, url("/images/BottomBlueBar.png"));
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center bottom;
        border-top: 0;
    }

/* --------------------------------------------------------------------------
   ROOT CONTAINER
   iac-login-fixed wraps everything; iac-login-bg is the two-column grid.
   -------------------------------------------------------------------------- */
.iac-login-fixed[b-ouyrq9nv0w] {
    display: contents; /* transparent wrapper — grid lives on iac-login-bg */
}

/* --------------------------------------------------------------------------
   LARGE SCREENS (≥ 992px) — two-column fixed layout
   Left column  = hero image
   Right column = form, centred vertically
   -------------------------------------------------------------------------- */
@media (min-width: 1024px) {
    .iac-login-bg[b-ouyrq9nv0w] {
        position: fixed;
        inset: 4px 0 38px 0; /* below topbar, above footer */
        display: grid;
        grid-template-columns: minmax(33.333%, clamp(380px, 40vw, 640px)) 1fr;
        grid-template-rows: 1fr;
        overflow: hidden;
        background: radial-gradient( 1200px 800px at 70% 20%, rgba(var(--iac-blue-rgb), 0.10), transparent 55% ), radial-gradient( 900px 600px at 30% 70%, rgba(var(--iac-gold-rgb), 0.10), transparent 55% ), var(--bg-page, #f4f6f9);
    }

    :root[data-bs-theme="dark"] .iac-login-bg[b-ouyrq9nv0w] {
        background-color: #08111d;
    }

    /* Hero image pane — left column */
    .iac-login-bg[b-ouyrq9nv0w]::before {
        content: "";
        grid-column: 1;
        grid-row: 1;
        display: block;
        width: 100%;
        height: 100%;
        background-image: linear-gradient(180deg, rgba(0,0,0,0.22), rgba(0,0,0,0.08)), var(--img-login-bg, url("/img/login-bg-iac.png"));
        background-position: center center;
        background-repeat: no-repeat;
        background-size: cover;
        border-right: 1px solid rgba(0,0,0,0.10);
        box-shadow: 4px 0 20px rgba(0,0,0,0.20);
    }

    /* Form pane — right column */
    .iac-login-wrap[b-ouyrq9nv0w] {
        grid-column: 2;
        grid-row: 1;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-start;
        gap: clamp(10px, 1.6vh, 20px);
        padding: clamp(32px, 4vw, 72px) clamp(32px, 4vw, 80px);
        overflow-y: auto; /* scroll if viewport is extremely short */
        overflow-x: hidden;
    }
}

/* --------------------------------------------------------------------------
   SMALL SCREENS (< 992px) — single-column, scrollable
   Image is hidden; form is centred on a subtle gradient background.
   -------------------------------------------------------------------------- */
@media (max-width: 1023.98px) {
    .iac-login-bg[b-ouyrq9nv0w] {
        position: relative;
        min-height: calc(100dvh - 4px - 38px); /* full viewport minus bars */
        padding-top: 4px; /* space for topbar */
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        background: radial-gradient(900px 520px at 50% 10%, rgba(var(--iac-blue-rgb, 0,40,85), 0.10), transparent 62% ), var(--bg-page, #f4f6f9);
        overflow: visible;
    }

    :root[data-bs-theme="dark"] .iac-login-bg[b-ouyrq9nv0w] {
        background-color: #08111d;
    }

    /* Hide hero image entirely */
    .iac-login-bg[b-ouyrq9nv0w]::before {
        display: none;
    }

    .iac-login-wrap[b-ouyrq9nv0w] {
        width: 100%;
        max-width: 520px;
        display: flex;
        flex-direction: column;
        align-items: center;
        gap: clamp(10px, 2vh, 20px);
        padding: clamp(24px, 5vw, 48px) clamp(16px, 5vw, 40px);
        padding-bottom: calc(38px + clamp(24px, 5vw, 48px)); /* clear fixed footer */
    }
}

/* --------------------------------------------------------------------------
   HEADING BLOCK
   -------------------------------------------------------------------------- */
.iac-login-head[b-ouyrq9nv0w] {
    width: 100%;
    max-width: 420px;
    margin: 0 0 1.5rem;
}

    .iac-login-head h1[b-ouyrq9nv0w] {
        font-family: "din-2014", "DIN Pro", sans-serif;
        font-weight: 800;
        letter-spacing: 0.055em;
        text-transform: uppercase;
        color: #0d2f5f;
        font-size: clamp(3rem, 5.5vw, 7rem);
        margin: 0 0 0.25rem;
        line-height: 0.92;
    }

    .iac-login-head h2[b-ouyrq9nv0w] {
        font-family: "din-2014", "DIN Pro", sans-serif;
        font-weight: 400;
        letter-spacing: 0.09em;
        text-transform: uppercase;
        color: #304766;
        font-size: clamp(0.85rem, 1.6vw, 1.75rem);
        margin: 0;
        line-height: 1.3;
        white-space: nowrap;
    }

:root[data-bs-theme="dark"] .iac-login-head h1[b-ouyrq9nv0w] {
    color: #9dc2ea;
}

:root[data-bs-theme="dark"] .iac-login-head h2[b-ouyrq9nv0w] {
    color: #bfd1e5;
}

/* On mobile, centre the heading */
@media (max-width: 1023.98px) {
    .iac-login-head[b-ouyrq9nv0w] {
        text-align: center;
        max-width: 100%;
    }

        .iac-login-head h1[b-ouyrq9nv0w] {
            font-size: clamp(2.2rem, 9vw, 3.5rem);
        }

        .iac-login-head h2[b-ouyrq9nv0w] {
            font-size: clamp(0.68rem, 2.5vw, 0.95rem);
            white-space: normal;
        }
}

@media (max-width: 480px) {
    .iac-login-head h1[b-ouyrq9nv0w] {
        font-size: clamp(1.4rem, 8vw, 2rem);
    }
}

/* --------------------------------------------------------------------------
   LOGIN CARD
   -------------------------------------------------------------------------- */
.iac-login-card[b-ouyrq9nv0w] {
    font-family: "din-2014", "DIN Pro", sans-serif;
    width: min(420px, 100%) !important;
    margin: 0 !important;
    border-radius: 12px;
    border: 0 !important;
    background: #d8dce2 !important;
    box-shadow: 0 8px 26px rgba(0,40,85,0.10) !important;
    color: #002855;
}

    .iac-login-card .card-body[b-ouyrq9nv0w] {
        padding: 1.35rem 1.5rem 1.25rem !important;
    }

:root[data-bs-theme="dark"] .iac-login-card[b-ouyrq9nv0w] {
    border-color: #21406a !important;
    background: #0d2340 !important;
    box-shadow: 0 12px 40px rgba(0,0,0,0.42) !important;
    color: #dde6f2;
}

/* Card full-width on mobile */
@media (max-width: 1023.98px) {
    .iac-login-card[b-ouyrq9nv0w] {
        width: min(420px, 100%) !important;
    }
}

/* --------------------------------------------------------------------------
   CARD TITLE
   -------------------------------------------------------------------------- */
.iac-login-card-title[b-ouyrq9nv0w] {
    font-family: "din-2014", "DIN Pro", sans-serif;
    font-weight: 800;
    font-size: 0.98rem;
    line-height: 1.1;
    color: #12376a;
    margin: 0 0 1rem;
}

:root[data-bs-theme="dark"] .iac-login-card-title[b-ouyrq9nv0w] {
    color: #d8e8fb;
}

/* --------------------------------------------------------------------------
   FORM LABELS
   -------------------------------------------------------------------------- */
.iac-login-card .form-label[b-ouyrq9nv0w] {
    font-family: "din-2014", sans-serif;
    font-weight: 700;
    letter-spacing: 0.02em;
    color: var(--panel-label-color, var(--text-main, #002855));
    margin-bottom: 0.25rem;
}

/* --------------------------------------------------------------------------
   INPUTS
   -------------------------------------------------------------------------- */
.iac-login-card .form-control[b-ouyrq9nv0w] {
    font-family: "din-2014", sans-serif;
    border-radius: 12px;
    border: 1.5px solid var(--input-border, #d0d9e8);
    background: var(--input-bg, #ffffff);
    padding: 0.65rem 0.85rem;
    min-height: 44px;
    font-size: 0.9rem;
    color: var(--text-main, #002855);
    transition: border-color .15s ease, box-shadow .15s ease, background-color .15s ease;
}

    .iac-login-card .form-control:hover:not(:focus)[b-ouyrq9nv0w] {
        border-color: #a0b4c8;
    }

    .iac-login-card .form-control:focus[b-ouyrq9nv0w] {
        border-color: var(--input-focus-border, #002855);
        box-shadow: 0 0 0 0.22rem var(--input-focus-ring, rgba(0,40,85,0.15));
        outline: 0;
    }

:root[data-bs-theme="dark"] .iac-login-card .form-control[b-ouyrq9nv0w] {
    background: var(--input-bg, #0a1624);
    border-color: #1e3050;
    color: #dde6f2;
}

    :root[data-bs-theme="dark"] .iac-login-card .form-control:focus[b-ouyrq9nv0w] {
        border-color: #a4c4e7;
        box-shadow: 0 0 0 0.2rem rgba(164,196,231,0.25);
    }

/* --------------------------------------------------------------------------
   ACTIONS ROW — sign in button + forgot link
   -------------------------------------------------------------------------- */
.iac-login-actions[b-ouyrq9nv0w] {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 0.5rem;
}

/* --------------------------------------------------------------------------
   SIGN IN BUTTON
   -------------------------------------------------------------------------- */
.iac-login-card .btn-solid[b-ouyrq9nv0w] {
    width: 100%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 0.75rem 1rem;
    min-height: 44px;
    border-radius: 12px;
    font-family: "din-2014", sans-serif;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    border: none;
    cursor: pointer;
    transition: transform .12s ease, box-shadow .15s ease, filter .15s ease;
}

.iac-login-card .btn-login-solid[b-ouyrq9nv0w] {
    background: linear-gradient( 135deg, var(--iac-gold, #F1B828) 0%, rgba(var(--iac-gold-rgb, 241,184,40), 0.92) 55%, rgba(var(--iac-gold-rgb, 241,184,40), 0.80) 100% );
    border: 1px solid rgba(var(--iac-gold-rgb, 241,184,40), 0.75);
    color: var(--iac-blue-hex, #002855);
    box-shadow: 0 10px 22px rgba(var(--iac-gold-rgb, 241,184,40), 0.28);
}

    .iac-login-card .btn-login-solid:hover:not(:disabled)[b-ouyrq9nv0w] {
        filter: brightness(1.04);
        transform: translateY(-1px);
        box-shadow: 0 14px 28px rgba(var(--iac-gold-rgb, 241,184,40), 0.36);
    }

    .iac-login-card .btn-login-solid:disabled[b-ouyrq9nv0w] {
        opacity: 0.70;
        transform: none;
        box-shadow: none;
        cursor: not-allowed;
    }

/* --------------------------------------------------------------------------
   FORGOT PASSWORD LINK
   -------------------------------------------------------------------------- */
.iac-login-link-forgot[b-ouyrq9nv0w] {
    display: block;
    text-align: center;
    font-family: "din-2014", sans-serif;
    font-size: 0.8rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    color: var(--iac-blue-hex, #002855);
    text-decoration: none;
    opacity: 0.65;
    transition: opacity .15s ease, color .15s ease;
}

    .iac-login-link-forgot:hover[b-ouyrq9nv0w] {
        opacity: 1;
        color: var(--iac-gold, #F1B828);
        text-decoration: underline;
    }

:root[data-bs-theme="dark"] .iac-login-link-forgot[b-ouyrq9nv0w] {
    color: #8fa3ba;
}

    :root[data-bs-theme="dark"] .iac-login-link-forgot:hover[b-ouyrq9nv0w] {
        color: var(--iac-gold, #F1B828);
    }

/* --------------------------------------------------------------------------
   VALIDATION / ERROR TEXT
   -------------------------------------------------------------------------- */
.iac-login-card .validation-message[b-ouyrq9nv0w],
.iac-login-card .text-danger[b-ouyrq9nv0w] {
    color: #d83a4d;
    font-size: 0.82rem;
}

:root[data-bs-theme="dark"] .iac-login-card .validation-message[b-ouyrq9nv0w],
:root[data-bs-theme="dark"] .iac-login-card .text-danger[b-ouyrq9nv0w] {
    color: #ff6b7a;
}

/* --------------------------------------------------------------------------
   VERY SHORT VIEWPORTS (e.g. landscape phone with software keyboard open)
   Relax vertical centring so content isn't clipped.
   -------------------------------------------------------------------------- */
@media (max-height: 560px) {
    .iac-login-wrap[b-ouyrq9nv0w] {
        justify-content: flex-start !important;
        padding-top: clamp(12px, 3vh, 24px) !important;
    }
}
/* _content/NoiseLockQuoteTool/Pages/MultiOrderReview.razor.rz.scp.css */
/* ================================================================
   REVIEW & ORDER — v6
   IAC Acoustics NoiseLock · Scoped to .review-page
   Fonts: DIN 2014 / DIN Pro throughout.
   Tables: dark head/foot in dark mode only — light-appropriate in light.
================================================================ */
/* ── Reset Bootstrap pollution inside our page ── */
.review-page *[b-hsvmsdry53],
.review-page *[b-hsvmsdry53]::before,
.review-page *[b-hsvmsdry53]::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

/* Kill Bootstrap utility overrides we must defeat */
.review-page .mb-4[b-hsvmsdry53] {
    margin-bottom: 20px !important;
}

.review-page .fw-semibold[b-hsvmsdry53] {
    font-weight: inherit !important;
}

.review-page .text-end[b-hsvmsdry53] {
    text-align: right;
}

.review-page .text-center[b-hsvmsdry53] {
    text-align: center;
}

.review-page .text-muted[b-hsvmsdry53] {
    color: var(--rv-muted) !important;
}

.review-page .d-flex[b-hsvmsdry53] {
    display: flex !important;
}

.review-page .align-items-center[b-hsvmsdry53] {
    align-items: center !important;
}

.review-page .gap-2[b-hsvmsdry53] {
    gap: 8px !important;
}

.review-page .py-5[b-hsvmsdry53] {
    padding-block: 48px !important;
}

.review-page .mt-3[b-hsvmsdry53] {
    margin-top: 12px !important;
}

.review-page .alert[b-hsvmsdry53] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 20px;
    border-radius: 10px;
    font-size: 14px;
    font-weight: 600;
}

.review-page .alert-danger[b-hsvmsdry53] {
    background: #fff0f0;
    color: #991b1b;
    border: 1px solid #fecaca;
}

.review-page .alert-warning[b-hsvmsdry53] {
    background: #fffbeb;
    color: #92400e;
    border: 1px solid #fde68a;
}

.review-page .fs-5[b-hsvmsdry53] {
    font-size: 1.2rem !important;
}

.review-page .me-1[b-hsvmsdry53] {
    margin-right: 4px !important;
}

.review-page .spinner-border[b-hsvmsdry53] {
    display: inline-block;
    border-radius: 50%;
    animation: spin-b-hsvmsdry53 .75s linear infinite;
}

.review-page .spinner-border-sm[b-hsvmsdry53] {
    width: 16px !important;
    height: 16px !important;
    border-width: 2px !important;
}

/* Dark mode alert overrides */
[data-bs-theme="dark"] .review-page .alert-danger[b-hsvmsdry53] {
    background: rgba(153,27,27,.15);
    color: #fca5a5;
    border-color: rgba(153,27,27,.35);
}

[data-bs-theme="dark"] .review-page .alert-warning[b-hsvmsdry53] {
    background: rgba(146,64,14,.15);
    color: #fcd34d;
    border-color: rgba(146,64,14,.35);
}

@keyframes spin-b-hsvmsdry53 {
    to {
        transform: rotate(360deg);
    }
}

/* ================================================================
   TOKENS
================================================================ */
.review-page[b-hsvmsdry53] {
    /* Gold */
    --rv-gold: #F1B828;
    --rv-gold-rich: #e6a800;
    --rv-gold-dim: rgba(241,184,40,.12);
    --rv-gold-border: rgba(241,184,40,.40);
    --rv-gold-text: #7a4500;
    /* Doors — electric blue */
    --rv-door: #1d5bd4;
    --rv-door-light: #3b7cf4;
    --rv-door-dim: rgba(29,91,212,.10);
    --rv-door-border: rgba(29,91,212,.30);
    /* Windows — emerald */
    --rv-win: #0e7c4a;
    --rv-win-light: #1fac68;
    --rv-win-dim: rgba(14,124,74,.10);
    --rv-win-border: rgba(14,124,74,.28);
    /* Ship Loose — amber */
    --rv-sl: #b45309;
    --rv-sl-light: #d97706;
    --rv-sl-dim: rgba(180,83,9,.10);
    --rv-sl-border: rgba(180,83,9,.28);
    /* Surfaces — LIGHT */
    --rv-page: #f1f4fa;
    --rv-surf: #ffffff;
    --rv-surf2: #f5f7fc;
    --rv-surf3: #eaeff8;
    --rv-border: rgba(14,40,80,.12);
    --rv-border-s: rgba(14,40,80,.20);
    --rv-navy: #002855;
    --rv-navy-deep: #001535;
    /* Text */
    --rv-text: #0c1c30;
    --rv-text2: #2a4464;
    --rv-muted: #6882a0;
    /* Table — light mode: soft blue-grey head/foot */
    --rv-th-bg: #e4ecf8;
    --rv-th-text: #002855;
    --rv-td-stripe: #f7f9fe;
    --rv-td-hover: #eaf2ff;
    --rv-tbl-line: rgba(14,40,80,.09);
    --rv-foot-bg: #dde6f5;
    --rv-foot-text: #001c42;
    /* Elevation */
    --rv-s1: 0 2px 8px rgba(0,20,60,.08);
    --rv-s2: 0 6px 20px rgba(0,16,52,.10);
    --rv-s3: 0 16px 44px rgba(0,12,42,.13);
    /* Radius */
    --rv-r: 12px;
    --rv-rL: 18px;
    font-family: 'din-2014', 'DIN Pro', 'DIN Alternate', 'Arial Narrow', system-ui, sans-serif;
    color: var(--rv-text);
    background: var(--rv-page);
    min-height: 100vh;
    max-width: 100%;
    padding: 36px 20px 100px;
}

/* ── DARK OVERRIDES ── */
[data-bs-theme="dark"] .review-page[b-hsvmsdry53] {
    --rv-page: #060d1a;
    --rv-surf: #0c1829;
    --rv-surf2: #101e30;
    --rv-surf3: #152638;
    --rv-border: rgba(255,255,255,.09);
    --rv-border-s: rgba(255,255,255,.15);
    --rv-text: rgba(220,235,255,.95);
    --rv-text2: rgba(190,215,250,.72);
    --rv-muted: rgba(155,190,235,.50);
    --rv-th-bg: #0a1f3a;
    --rv-th-text: #7ab8ff;
    --rv-td-stripe: rgba(255,255,255,.025);
    --rv-td-hover: rgba(80,140,255,.09);
    --rv-tbl-line: rgba(255,255,255,.07);
    --rv-foot-bg: #0a1f3a;
    --rv-foot-text: #7ab8ff;
    --rv-door: #5d9aff;
    --rv-door-light: #7cb4ff;
    --rv-door-dim: rgba(93,154,255,.14);
    --rv-door-border: rgba(93,154,255,.30);
    --rv-win: #3cd68a;
    --rv-win-light: #5ae89e;
    --rv-win-dim: rgba(60,214,138,.13);
    --rv-win-border: rgba(60,214,138,.28);
    --rv-sl: #f59e0b;
    --rv-sl-light: #fbbf24;
    --rv-sl-dim: rgba(245,158,11,.13);
    --rv-sl-border: rgba(245,158,11,.28);
    --rv-s1: 0 2px 10px rgba(0,0,0,.35);
    --rv-s2: 0 8px 24px rgba(0,0,0,.44);
    --rv-s3: 0 20px 52px rgba(0,0,0,.58);
}

/* ================================================================
   PAGE HEADER
================================================================ */
.review-page-header[b-hsvmsdry53] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    padding-bottom: 28px;
    margin-bottom: 32px;
    border-bottom: 2px solid var(--rv-border-s);
    position: relative;
}

    /* Gold accent streak under border */
    .review-page-header[b-hsvmsdry53]::after {
        content: '';
        position: absolute;
        bottom: -2px;
        left: 0;
        width: 120px;
        height: 2px;
        background: var(--rv-gold);
    }

.review-page-header__left[b-hsvmsdry53] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    flex: 1;
}

.review-page-header__title[b-hsvmsdry53] {
    font-family: 'din-2014', 'DIN Pro', 'DIN Alternate', sans-serif;
    font-size: clamp(1.6rem, 1.2rem + 1.2vw, 2.2rem);
    font-weight: 800;
    letter-spacing: -.01em;
    line-height: 1;
    color: var(--rv-text);
    display: inline-flex;
    align-items: center;
    gap: 10px;
}

    /* IAC gold double-chevron after the title */
    .review-page-header__title[b-hsvmsdry53]::after {
        content: '❯❯';
        font-size: .55em;
        font-weight: 700;
        color: var(--rv-gold);
        letter-spacing: -.12em;
        opacity: .90;
        flex-shrink: 0;
        margin-left: 2px;
    }

.review-page-header__subtitle[b-hsvmsdry53] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.review-page-header__quote-number[b-hsvmsdry53] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 4px 12px;
    border-radius: 5px;
    font-family: 'din-2014', 'DIN Pro', 'DIN Alternate', sans-serif;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .04em;
    color: var(--rv-gold-text);
    background: var(--rv-gold-dim);
    border: 1px solid var(--rv-gold-border);
}

[data-bs-theme="dark"] .review-page-header__quote-number[b-hsvmsdry53] {
    color: #ffd56d;
}

/* "Quote #:" muted prefix inside the pill */
.review-page-header__quote-label[b-hsvmsdry53] {
    font-size: 9px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .12em;
    opacity: .65;
}

.review-page-header__quote-pending[b-hsvmsdry53] {
    display: inline-flex;
    align-items: center;
    padding: 3px 10px;
    border-radius: 5px;
    font-size: 11px;
    font-weight: 600;
    color: var(--rv-muted);
    background: var(--rv-surf3);
    border: 1px solid var(--rv-border-s);
}

.review-page-header__actions[b-hsvmsdry53] {
    display: flex;
    align-items: center;
}

/* Badge */
.review-badge[b-hsvmsdry53] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 5px 12px;
    border-radius: 6px;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .10em;
    text-transform: uppercase;
    white-space: nowrap;
    border: 1px solid transparent;
    font-family: 'din-2014', 'DIN Pro', 'DIN Alternate', sans-serif;
}

.review-badge--multi[b-hsvmsdry53] {
    background: var(--rv-gold-dim);
    color: var(--rv-gold-text);
    border-color: var(--rv-gold-border);
}

[data-bs-theme="dark"] .review-badge--multi[b-hsvmsdry53] {
    color: #ffd56d;
}

.review-badge--single[b-hsvmsdry53] {
    background: var(--rv-surf3);
    color: var(--rv-text2);
    border-color: var(--rv-border-s);
}

/* Saved chip */
.rev-saved-chip[b-hsvmsdry53] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 6px 14px;
    border-radius: 8px;
    font-size: 12px;
    font-weight: 700;
    background: rgba(16,122,74,.12);
    border: 1px solid rgba(16,122,74,.28);
    color: #0a5e38;
    animation: rv-pop-b-hsvmsdry53 .3s cubic-bezier(.34,1.56,.64,1) both;
}

[data-bs-theme="dark"] .rev-saved-chip[b-hsvmsdry53] {
    background: rgba(60,214,138,.12);
    border-color: rgba(60,214,138,.28);
    color: #6ee7a8;
}

@keyframes rv-pop-b-hsvmsdry53 {
    from {
        opacity: 0;
        transform: scale(.88) translateY(-4px);
    }

    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}

/* ================================================================
   PROJECT INFO CARD
================================================================ */
.review-summary-card[b-hsvmsdry53] {
    background: var(--rv-surf);
    border: 1px solid var(--rv-border-s);
    border-radius: var(--rv-rL);
    overflow: hidden;
    box-shadow: var(--rv-s2);
    margin-bottom: 20px;
}

    /* ── THICK gold top bar ── */
    .review-summary-card[b-hsvmsdry53]::before {
        content: '';
        display: block;
        height: 5px;
        background: linear-gradient(90deg, var(--rv-gold) 0%, var(--rv-gold-rich) 40%, rgba(241,184,40,.08) 100%);
    }

/* Grid of fields */
.review-summary-card__grid[b-hsvmsdry53] {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
}

.review-summary-card__field[b-hsvmsdry53] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 22px 20px;
    border-right: 1px solid var(--rv-border);
    transition: background .12s ease;
    position: relative;
}

    .review-summary-card__field:hover[b-hsvmsdry53] {
        background: var(--rv-surf2);
    }

    .review-summary-card__field:last-child[b-hsvmsdry53] {
        border-right: none;
    }

/* Label — small caps treatment */
.review-summary-card__label[b-hsvmsdry53] {
    font-family: 'din-2014', 'DIN Pro', 'DIN Alternate', sans-serif;
    font-size: 9px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .14em;
    color: var(--rv-muted);
}

/* Value — bold and prominent */
.review-summary-card__value[b-hsvmsdry53] {
    font-size: 15px;
    font-weight: 700;
    color: var(--rv-text);
    line-height: 1.35;
    word-break: break-word;
}

/* ── Totals strip ── */
.review-totals-strip[b-hsvmsdry53] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    padding: 16px 22px;
    background: var(--rv-surf2);
    border-top: 1px solid var(--rv-border);
}

.review-totals-strip__pill[b-hsvmsdry53] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 14px;
    border-radius: 8px;
    font-size: 12.5px;
    font-weight: 700;
    border: 1px solid transparent;
    white-space: nowrap;
}

.review-totals-strip__pill-label[b-hsvmsdry53] {
    display: flex;
    align-items: center;
    gap: 6px;
    opacity: .85;
}

.review-totals-strip__pill-value[b-hsvmsdry53] {
    font-weight: 800;
    font-variant-numeric: tabular-nums;
}

.review-totals-strip__pill--door[b-hsvmsdry53] {
    background: var(--rv-door-dim);
    color: var(--rv-door);
    border-color: var(--rv-door-border);
}

.review-totals-strip__pill--window[b-hsvmsdry53] {
    background: var(--rv-win-dim);
    color: var(--rv-win);
    border-color: var(--rv-win-border);
}

.review-totals-strip__pill--shiploose[b-hsvmsdry53] {
    background: var(--rv-sl-dim);
    color: var(--rv-sl);
    border-color: var(--rv-sl-border);
}

.review-totals-strip__total[b-hsvmsdry53] {
    margin-left: auto;
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 18px;
    border-radius: 8px;
    border: 1px solid var(--rv-border-s);
    background: var(--rv-surf);
    font-size: 13px;
    font-weight: 700;
    color: var(--rv-text2);
    white-space: nowrap;
    box-shadow: var(--rv-s1);
}

    .review-totals-strip__total strong[b-hsvmsdry53] {
        font-family: 'din-2014', 'DIN Pro', 'DIN Alternate', sans-serif;
        font-size: 24px;
        font-weight: 900;
        color: var(--rv-text);
        font-variant-numeric: tabular-nums;
        letter-spacing: -.02em;
    }

.review-totals-strip__prefix[b-hsvmsdry53] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 14px;
    border-radius: 8px;
    background: var(--rv-gold-dim);
    border: 1px solid var(--rv-gold-border);
    color: var(--rv-gold-text);
    font-size: 10.5px;
    font-weight: 800;
    letter-spacing: .07em;
    text-transform: uppercase;
    white-space: nowrap;
}

[data-bs-theme="dark"] .review-totals-strip__prefix[b-hsvmsdry53] {
    color: #ffd56d;
}

/* ================================================================
   PRODUCT SECTIONS  (Doors / Windows / Ship Loose)
================================================================ */
.review-section[b-hsvmsdry53] {
    background: var(--rv-surf);
    border: 1px solid var(--rv-border-s);
    border-radius: var(--rv-rL);
    overflow: hidden;
    box-shadow: var(--rv-s2);
    margin-bottom: 20px;
}

/* ── Section header — full dark band ── */
.review-section__header[b-hsvmsdry53] {
    display: flex;
    align-items: center;
    gap: 0;
    height: 58px;
    position: relative;
    overflow: hidden;
}

/* Icon square — full height flush left */
.review-section__icon[b-hsvmsdry53] {
    width: 58px;
    height: 58px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Each product type gets its own deep gradient */
.review-section__icon--door[b-hsvmsdry53] {
    background: linear-gradient(160deg, #1d5bd4 0%, #0b2f7a 100%);
}

.review-section__icon--window[b-hsvmsdry53] {
    background: linear-gradient(160deg, #0e8c54 0%, #04451f 100%);
}

.review-section__icon--shiploose[b-hsvmsdry53] {
    background: linear-gradient(160deg, #c97b10 0%, #6b3600 100%);
}

/* Header bg — light mode: soft surface with border, dark mode: deep navy */
.review-section__header[b-hsvmsdry53] {
    background: var(--rv-surf2);
    border-bottom: 1px solid var(--rv-border-s);
}

[data-bs-theme="dark"] .review-section__header[b-hsvmsdry53] {
    background: #0a1929;
    border-bottom-color: rgba(255,255,255,.08);
}

/* Title text — product color in light, white in dark */
.review-section__title[b-hsvmsdry53] {
    font-family: 'din-2014', 'DIN Pro', 'DIN Alternate', sans-serif;
    font-size: 13px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .12em;
    margin-left: 18px;
}

/* Light mode — title takes product color */
.review-section:has(.review-section__icon--door) .review-section__title[b-hsvmsdry53] {
    color: var(--rv-door);
}

.review-section:has(.review-section__icon--window) .review-section__title[b-hsvmsdry53] {
    color: var(--rv-win);
}

.review-section:has(.review-section__icon--shiploose) .review-section__title[b-hsvmsdry53] {
    color: var(--rv-sl);
}

/* Dark mode — white titles */
[data-bs-theme="dark"] .review-section__title[b-hsvmsdry53] {
    color: #ffffff !important;
}

.review-section__count[b-hsvmsdry53] {
    flex: 1;
    font-size: 12px;
    font-weight: 600;
    color: var(--rv-muted);
    margin-left: 12px;
}

[data-bs-theme="dark"] .review-section__count[b-hsvmsdry53] {
    color: rgba(255,255,255,.55);
}

.review-section__prefix[b-hsvmsdry53] {
    display: inline-flex;
    align-items: center;
    margin-right: 20px;
    padding: 4px 10px;
    border-radius: 5px;
    background: var(--rv-surf3);
    color: var(--rv-text2);
    border: 1px solid var(--rv-border-s);
    font-family: 'din-2014', 'DIN Pro', 'DIN Alternate', monospace;
    font-size: 9.5px;
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
}

[data-bs-theme="dark"] .review-section__prefix[b-hsvmsdry53] {
    background: rgba(255,255,255,.10);
    color: rgba(255,255,255,.80);
    border-color: rgba(255,255,255,.16);
}

/* Colored left edge for each product type */
.review-section:has(.review-section__icon--door)[b-hsvmsdry53] {
    border-top: 3px solid var(--rv-door);
}

.review-section:has(.review-section__icon--window)[b-hsvmsdry53] {
    border-top: 3px solid var(--rv-win);
}

.review-section:has(.review-section__icon--shiploose)[b-hsvmsdry53] {
    border-top: 3px solid var(--rv-sl);
}

/* ================================================================
   TABLES — complete rewrite, no Bootstrap
================================================================ */
.review-page .table-responsive[b-hsvmsdry53] {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    background: var(--rv-surf);
}

.review-table[b-hsvmsdry53] {
    width: 100%;
    border-collapse: collapse;
    font-size: 13px;
    color: var(--rv-text);
    font-family: 'din-2014', 'DIN Pro', 'DIN Alternate', sans-serif;
}

    /* ── HEAD — uses token, light in light mode / dark in dark mode ── */
    .review-table thead[b-hsvmsdry53] {
        background: var(--rv-th-bg);
    }

[data-bs-theme="dark"] .review-table thead[b-hsvmsdry53] {
    background: #081828;
}

.review-table th[b-hsvmsdry53] {
    padding: 12px 16px;
    font-family: 'din-2014', 'DIN Pro', 'DIN Alternate', sans-serif;
    font-size: 9px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .15em;
    color: var(--rv-th-text);
    background: transparent;
    white-space: nowrap;
    border-right: 1px solid rgba(0,40,85,.12);
    border-bottom: 2px solid rgba(0,40,85,.16);
    text-align: left;
}

[data-bs-theme="dark"] .review-table th[b-hsvmsdry53] {
    color: #a8d0ff;
    border-right-color: rgba(255,255,255,.07);
    border-bottom-color: rgba(255,255,255,.12);
}

.review-table th:last-child[b-hsvmsdry53] {
    border-right: none;
}

.review-table th.text-end[b-hsvmsdry53] {
    text-align: right;
}

/* ── BODY ── */
.review-table tbody tr[b-hsvmsdry53] {
    border-bottom: 1px solid var(--rv-tbl-line);
}

    .review-table tbody tr:last-child[b-hsvmsdry53] {
        border-bottom: none;
    }

.review-table td[b-hsvmsdry53] {
    padding: 13px 16px;
    vertical-align: middle;
    background: var(--rv-surf);
    font-weight: 500;
    color: var(--rv-text);
    border-right: 1px solid var(--rv-tbl-line);
    transition: background .1s ease;
}

    .review-table td:last-child[b-hsvmsdry53] {
        border-right: none;
    }

/* Even row stripe */
.review-table tbody tr:nth-child(even) td[b-hsvmsdry53] {
    background: var(--rv-td-stripe);
}

/* Hover */
.review-table tbody tr:hover td[b-hsvmsdry53] {
    background: var(--rv-td-hover) !important;
}

/* Mark number — monospace + product color */
.review-table td:first-child[b-hsvmsdry53] {
    font-family: 'din-2014', 'DIN Pro', 'DIN Alternate', monospace;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .02em;
}

.review-section:has(.review-section__icon--door) .review-table td:first-child[b-hsvmsdry53] {
    color: var(--rv-door);
}

.review-section:has(.review-section__icon--window) .review-table td:first-child[b-hsvmsdry53] {
    color: var(--rv-win);
}

.review-section:has(.review-section__icon--shiploose) .review-table td:first-child[b-hsvmsdry53] {
    color: var(--rv-sl);
}

/* fw-semibold override for price cells */
.review-table td.fw-semibold[b-hsvmsdry53] {
    font-weight: 700 !important;
}

/* text-end override */
.review-table td.text-end[b-hsvmsdry53] {
    text-align: right;
    font-variant-numeric: tabular-nums;
}

/* ── RFQ rows ── */
.review-table__row--rfq td[b-hsvmsdry53] {
    background: rgba(241,184,40,.07) !important;
    font-style: italic;
    color: #8a5800;
}

[data-bs-theme="dark"] .review-table__row--rfq td[b-hsvmsdry53] {
    background: rgba(241,184,40,.09) !important;
    color: #fbbf24;
}

.review-table__row--rfq td:first-child[b-hsvmsdry53] {
    font-style: normal;
}

/* ── FOOT — token-driven, matches head ── */
.review-table tfoot[b-hsvmsdry53] {
    background: var(--rv-foot-bg);
}

[data-bs-theme="dark"] .review-table tfoot[b-hsvmsdry53] {
    background: #081828;
}

.review-table tfoot tr[b-hsvmsdry53] {
    border-top: none;
}

.review-table__foot td[b-hsvmsdry53] {
    padding: 13px 16px;
    font-family: 'din-2014', 'DIN Pro', 'DIN Alternate', sans-serif;
    font-size: 13px;
    font-weight: 800;
    font-variant-numeric: tabular-nums;
    color: var(--rv-foot-text) !important;
    background: transparent !important;
    border-right: 1px solid rgba(0,40,85,.12);
    border-top: 2px solid rgba(0,40,85,.16);
}

[data-bs-theme="dark"] .review-table__foot td[b-hsvmsdry53] {
    color: #c8e0ff !important;
    border-right-color: rgba(255,255,255,.07);
    border-top-color: rgba(255,255,255,.12);
}

.review-table__foot td:last-child[b-hsvmsdry53] {
    border-right: none;
    color: var(--rv-door) !important;
    font-size: 15px;
}

/* In dark mode, the last foot cell (totals) uses gold */
[data-bs-theme="dark"] .review-table__foot td:last-child[b-hsvmsdry53] {
    color: var(--rv-gold) !important;
}

/* ================================================================
   BOTTOM ACTION BAR
================================================================ */
.review-bottom-bar[b-hsvmsdry53] {
    display: grid;
    grid-template-columns: 1fr auto;
    align-items: center;
    gap: 28px;
    margin-top: 36px;
    padding: 26px 30px;
    border: 1px solid var(--rv-border-s);
    border-radius: var(--rv-rL);
    background: var(--rv-surf);
    box-shadow: var(--rv-s2);
    position: relative;
    overflow: hidden;
}

    /* Gold top stripe */
    .review-bottom-bar[b-hsvmsdry53]::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 4px;
        background: linear-gradient(90deg, var(--rv-gold) 0%, var(--rv-gold-rich) 30%, rgba(241,184,40,.10) 100%);
    }

.review-bottom-bar__left[b-hsvmsdry53] {
    display: flex;
    flex-direction: column;
    gap: 5px;
    min-width: 0;
}

.review-bottom-bar__eyebrow[b-hsvmsdry53] {
    font-family: 'din-2014', 'DIN Pro', 'DIN Alternate', sans-serif;
    font-size: 9px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .16em;
    color: var(--rv-muted);
}

.review-bottom-bar__copy[b-hsvmsdry53] {
    font-size: 13.5px;
    font-weight: 500;
    line-height: 1.5;
    color: var(--rv-text2);
    max-width: 380px;
}

/* Back button — bottom left of left column */
.review-bottom-bar__back[b-hsvmsdry53] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-top: 14px;
    padding: 9px 18px;
    border-radius: var(--rv-r);
    font-family: 'din-2014', 'DIN Pro', 'DIN Alternate', sans-serif;
    font-size: 13px;
    font-weight: 700;
    color: var(--rv-text2);
    background: var(--rv-surf2);
    border: 1px solid var(--rv-border-s);
    cursor: pointer;
    transition: background .12s ease, color .12s ease, box-shadow .12s ease;
    align-self: flex-start;
    letter-spacing: .01em;
    outline: none;
}

    .review-bottom-bar__back:hover[b-hsvmsdry53] {
        background: var(--rv-surf3);
        color: var(--rv-text);
        box-shadow: var(--rv-s1);
    }

[data-bs-theme="dark"] .review-bottom-bar__back[b-hsvmsdry53] {
    background: var(--rv-surf2);
    border-color: var(--rv-border-s);
    color: var(--rv-text2);
}

    [data-bs-theme="dark"] .review-bottom-bar__back:hover[b-hsvmsdry53] {
        background: var(--rv-surf3);
        color: var(--rv-text);
    }

.review-bottom-bar__right[b-hsvmsdry53] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}

/* Total block */
.review-bottom-bar__total[b-hsvmsdry53] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 3px;
    padding: 12px 20px;
    border-radius: var(--rv-r);
    border: 1px solid var(--rv-border-s);
    background: var(--rv-surf2);
    min-width: 200px;
    box-shadow: var(--rv-s1);
}

.review-bottom-bar__total-label[b-hsvmsdry53] {
    font-family: 'din-2014', 'DIN Pro', 'DIN Alternate', sans-serif;
    font-size: 8.5px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: .15em;
    color: var(--rv-muted);
}

.review-bottom-bar__total-amount[b-hsvmsdry53] {
    font-family: 'din-2014', 'DIN Pro', 'DIN Alternate', sans-serif;
    font-size: 32px;
    font-weight: 900;
    color: var(--rv-text);
    line-height: 1;
    font-variant-numeric: tabular-nums;
    letter-spacing: -.02em;
}

/* ================================================================
   BUTTONS
================================================================ */
.rev-btn[b-hsvmsdry53] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 46px;
    padding: 11px 24px;
    border-radius: var(--rv-r);
    font-family: 'din-2014', 'DIN Pro', 'DIN Alternate', sans-serif;
    font-size: 13.5px;
    font-weight: 700;
    letter-spacing: .02em;
    cursor: pointer;
    border: 1px solid transparent;
    transition: background .12s ease, border-color .12s ease, box-shadow .12s ease, color .12s ease;
    white-space: nowrap;
    line-height: 1.2;
    user-select: none;
    outline: none;
}

    .rev-btn:focus-visible[b-hsvmsdry53] {
        outline: 3px solid var(--rv-gold);
        outline-offset: 3px;
    }

    .rev-btn:disabled[b-hsvmsdry53] {
        opacity: .42;
        cursor: not-allowed;
    }

/* Save Draft — clean ghost */
.rev-btn--save[b-hsvmsdry53] {
    background: var(--rv-surf2);
    border-color: var(--rv-border-s);
    color: var(--rv-text);
    box-shadow: var(--rv-s1);
}

    .rev-btn--save:hover:not(:disabled)[b-hsvmsdry53] {
        background: var(--rv-surf3);
        border-color: var(--rv-navy);
        box-shadow: var(--rv-s2);
    }

[data-bs-theme="dark"] .rev-btn--save[b-hsvmsdry53] {
    background: rgba(255,255,255,.07);
    border-color: rgba(255,255,255,.14);
    color: var(--rv-text);
}

    [data-bs-theme="dark"] .rev-btn--save:hover:not(:disabled)[b-hsvmsdry53] {
        background: rgba(255,255,255,.12);
        border-color: rgba(255,255,255,.24);
    }

/* Place Order — GOLD FILL, not navy */
.rev-btn--order[b-hsvmsdry53] {
    background: var(--rv-gold);
    border-color: var(--rv-gold-rich);
    color: #0c1c30;
    font-weight: 800;
    font-family: 'din-2014', 'DIN Pro', 'DIN Alternate', sans-serif;
    font-size: 14px;
    letter-spacing: .06em;
    text-transform: uppercase;
    padding-inline: 32px;
    box-shadow: 0 4px 18px rgba(241,184,40,.35);
}

    .rev-btn--order:hover:not(:disabled)[b-hsvmsdry53] {
        background: #f5c030;
        border-color: #d4970a;
        box-shadow: 0 6px 26px rgba(241,184,40,.50);
    }

[data-bs-theme="dark"] .rev-btn--order[b-hsvmsdry53] {
    background: var(--rv-gold);
    border-color: var(--rv-gold-rich);
    color: #0a1520;
    box-shadow: 0 4px 20px rgba(241,184,40,.30);
}

    [data-bs-theme="dark"] .rev-btn--order:hover:not(:disabled)[b-hsvmsdry53] {
        background: #f5c030;
        box-shadow: 0 6px 28px rgba(241,184,40,.45);
    }

/* Submit RFQ — amber */
.rev-btn--rfq[b-hsvmsdry53] {
    background: var(--rv-sl);
    border-color: #8a3d00;
    color: #ffffff;
    font-weight: 800;
    font-family: 'din-2014', 'DIN Pro', 'DIN Alternate', sans-serif;
    font-size: 14px;
    letter-spacing: .06em;
    text-transform: uppercase;
    padding-inline: 32px;
    box-shadow: 0 4px 16px rgba(180,83,9,.30);
}

    .rev-btn--rfq:hover:not(:disabled)[b-hsvmsdry53] {
        background: #9a4200;
        box-shadow: 0 6px 22px rgba(180,83,9,.42);
    }

[data-bs-theme="dark"] .rev-btn--rfq[b-hsvmsdry53] {
    background: rgba(245,158,11,.22);
    border-color: rgba(245,158,11,.36);
    color: #fcd34d;
    box-shadow: 0 4px 18px rgba(0,0,0,.40);
}

    [data-bs-theme="dark"] .rev-btn--rfq:hover:not(:disabled)[b-hsvmsdry53] {
        background: rgba(245,158,11,.34);
        color: #fff;
    }

/* ================================================================
   MODAL
================================================================ */
.nq-overlay[b-hsvmsdry53] {
    z-index: 10200;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(2,6,14,.82);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
    padding: 20px;
    position: fixed;
    inset: 0;
}

.nq-card[b-hsvmsdry53] {
    width: 100%;
    max-width: 480px;
    overflow: hidden;
    background: var(--rv-surf);
    border: 1px solid var(--rv-border-s);
    border-radius: var(--rv-rL);
    box-shadow: var(--rv-s3);
    animation: nqIn-b-hsvmsdry53 .2s cubic-bezier(.34,1.28,.64,1) both;
    font-family: 'din-2014', 'DIN Pro', 'DIN Alternate', sans-serif;
}

@keyframes nqIn-b-hsvmsdry53 {
    from {
        opacity: 0;
        transform: translateY(16px) scale(.96);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}

.nq-card__header[b-hsvmsdry53] {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 20px 24px 16px;
    border-bottom: 1px solid var(--rv-border);
    background: var(--rv-gold-dim);
}

.nq-card__icon[b-hsvmsdry53] {
    width: 42px;
    height: 42px;
    border-radius: 10px;
    background: rgba(241,184,40,.20);
    border: 1px solid var(--rv-gold-border);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1.2rem;
    color: #9a6200;
    flex-shrink: 0;
}

.nq-card__icon--success[b-hsvmsdry53] {
    background: rgba(14,124,74,.14);
    border-color: rgba(14,124,74,.28);
    color: #0e7c4a;
}

[data-bs-theme="dark"] .nq-card__icon--success[b-hsvmsdry53] {
    background: rgba(60,214,138,.12);
    border-color: rgba(60,214,138,.26);
    color: #6ee7a8;
}

.nq-card__title[b-hsvmsdry53] {
    margin: 0;
    font-family: 'din-2014', 'DIN Pro', 'DIN Alternate', sans-serif;
    font-size: 15px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: var(--rv-gold-text);
}

[data-bs-theme="dark"] .nq-card__title[b-hsvmsdry53] {
    color: #ffd56d;
}

.nq-card__title--success[b-hsvmsdry53] {
    color: #0a5e38 !important;
}

[data-bs-theme="dark"] .nq-card__title--success[b-hsvmsdry53] {
    color: #6ee7a8 !important;
}

.nq-card__subtitle[b-hsvmsdry53] {
    font-size: 12px;
    color: var(--rv-muted);
    margin-top: 3px;
    font-weight: 600;
}

.nq-card__body[b-hsvmsdry53] {
    padding: 20px 24px;
    font-size: 14px;
    line-height: 1.65;
    color: var(--rv-text);
}

.nq-card__footer[b-hsvmsdry53] {
    padding: 14px 24px 18px;
    border-top: 1px solid var(--rv-border);
    background: var(--rv-surf2);
    display: flex;
    justify-content: flex-end;
    gap: 10px;
}

.nq-btn[b-hsvmsdry53] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 40px;
    padding: 9px 20px;
    border-radius: var(--rv-r);
    font-family: 'din-2014', 'DIN Pro', 'DIN Alternate', sans-serif;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .06em;
    border: 1px solid transparent;
    cursor: pointer;
    transition: background .12s ease, box-shadow .12s ease;
    text-transform: uppercase;
    outline: none;
}

.nq-btn--ok[b-hsvmsdry53] {
    background: var(--rv-navy);
    border-color: var(--rv-navy-deep);
    color: #fff;
    box-shadow: var(--rv-s1);
}

    .nq-btn--ok:hover[b-hsvmsdry53] {
        background: #001c3e;
        box-shadow: var(--rv-s2);
    }

[data-bs-theme="dark"] .nq-btn--ok[b-hsvmsdry53] {
    background: rgba(241,184,40,.22);
    border-color: rgba(241,184,40,.38);
    color: #ffe49a;
}

    [data-bs-theme="dark"] .nq-btn--ok:hover[b-hsvmsdry53] {
        background: rgba(241,184,40,.32);
        color: #fff;
    }

/* ================================================================
   SPINNER
================================================================ */
.rev-spinner[b-hsvmsdry53] {
    width: 2.6rem !important;
    height: 2.6rem !important;
    border: 3px solid rgba(0,40,85,.15) !important;
    border-top-color: var(--rv-navy) !important;
    animation: spin-b-hsvmsdry53 .75s linear infinite;
}

[data-bs-theme="dark"] .rev-spinner[b-hsvmsdry53] {
    border-color: rgba(241,184,40,.15) !important;
    border-top-color: var(--rv-gold) !important;
}

.review-page .spinner-border[b-hsvmsdry53] {
    border: 2px solid rgba(255,255,255,.25) !important;
    border-top-color: currentColor !important;
}

/* ================================================================
   RESPONSIVE
================================================================ */
@media (max-width: 1280px) {
    .review-summary-card__grid[b-hsvmsdry53] {
        grid-template-columns: repeat(3, 1fr);
    }

    .review-summary-card__field:nth-child(3n)[b-hsvmsdry53] {
        border-right: none;
    }

    .review-summary-card__field[b-hsvmsdry53] {
        border-bottom: 1px solid var(--rv-border);
    }

        .review-summary-card__field:nth-last-child(-n+3)[b-hsvmsdry53] {
            border-bottom: none;
        }

        .review-summary-card__field:last-child[b-hsvmsdry53] {
            border-bottom: none;
        }
}

@media (max-width: 900px) {
    .review-bottom-bar[b-hsvmsdry53] {
        grid-template-columns: 1fr;
        gap: 20px;
    }

    .review-bottom-bar__right[b-hsvmsdry53] {
        justify-content: stretch;
        flex-direction: column;
    }

    .review-bottom-bar__total[b-hsvmsdry53] {
        align-items: flex-start;
        width: 100%;
        min-width: 0;
    }

    .review-totals-strip__total[b-hsvmsdry53] {
        margin-left: 0;
        width: 100%;
        justify-content: space-between;
    }

    .review-bottom-bar__back[b-hsvmsdry53] {
        align-self: auto;
        width: 100%;
        justify-content: center;
    }
}

@media (max-width: 768px) {
    .review-page[b-hsvmsdry53] {
        padding: 22px 20px 80px;
    }

    .review-page-header[b-hsvmsdry53] {
        flex-direction: column;
        gap: 14px;
    }

    .review-summary-card__grid[b-hsvmsdry53] {
        grid-template-columns: repeat(2, 1fr);
    }

    .review-summary-card__field:nth-child(3n)[b-hsvmsdry53] {
        border-right: 1px solid var(--rv-border);
    }

    .review-summary-card__field:nth-child(2n)[b-hsvmsdry53] {
        border-right: none;
    }

    .review-summary-card__field[b-hsvmsdry53] {
        border-bottom: 1px solid var(--rv-border);
    }

        .review-summary-card__field:nth-last-child(-n+2)[b-hsvmsdry53] {
            border-bottom: none;
        }

    .review-section__header[b-hsvmsdry53] {
        flex-wrap: wrap;
        height: auto;
        min-height: 56px;
        padding-right: 14px;
    }

    .review-section__count[b-hsvmsdry53] {
        order: 3;
        padding: 4px 14px 12px 72px;
        width: 100%;
        margin-left: 0;
        flex-basis: 100%;
    }

    .rev-btn[b-hsvmsdry53] {
        width: 100%;
    }
}

@media (max-width: 480px) {
    .review-summary-card__grid[b-hsvmsdry53] {
        grid-template-columns: 1fr;
    }

    .review-summary-card__field[b-hsvmsdry53] {
        border-right: none !important;
    }

    .review-page-header__title[b-hsvmsdry53] {
        font-size: 1.5rem;
    }
}
/* _content/NoiseLockQuoteTool/Pages/MyProfile.razor.rz.scp.css */
/* ==========================================================================
   MYPROFILE.RAZOR.CSS
   Class names match exactly what MyProfile.razor uses.
   ========================================================================== */

/* ── Tokens ──────────────────────────────────────────────────────────────── */
:root[b-jsw98sbm9w] {
    --mp-navy: #002855;
    --mp-navy-2: #0d3a6e;
    --mp-navy-3: #1a4f87;
    --mp-gold: #F1B828;
    --mp-gold-dim: rgba(241,184,40,.18);
    --mp-gold-glow: rgba(241,184,40,.35);
    --mp-bg: #f0f3f8;
    --mp-surface: #ffffff;
    --mp-surface-2: #f7f9fc;
    --mp-surface-3: #eaecf2;
    --mp-border: rgba(0,40,85,.10);
    --mp-border-2: rgba(0,40,85,.18);
    --mp-text: #0f1e2e;
    --mp-text-2: #3a5270;
    --mp-text-3: #7a90a8;
    --mp-radius: 12px;
    --mp-radius-sm: 7px;
    --mp-shadow: 0 4px 24px rgba(0,40,85,.10), 0 1px 4px rgba(0,0,0,.04);
    --mp-shadow-lift: 0 12px 48px rgba(0,40,85,.18), 0 2px 8px rgba(0,0,0,.08);
    --mp-ease: .2s cubic-bezier(.4,0,.2,1);
    /* Card body background */
    --mp-card-body-bg: #f2f4f7;
    /* Nav-link background & active highlight */
    --mp-nav-link-bg: rgba(0,40,85,.05);
    --mp-nav-link-active-bg: rgba(241,184,40,.13);
    --mp-nav-link-hover-bg: rgba(0,40,85,.08);
    /* Table striping — contacts, coworkers & tool-access */
    --mp-tbl-row-odd: #eef2f9; /* soft blue-tinted, distinct from white card */
    --mp-tbl-row-even: #c8d4e8; /* strong blue-grey band                      */
    --mp-tbl-row-hover: #fde8e4; /* warm red tint on hover                     */
    --mp-tbl-accent: #c0392b; /* IAC red accent bar              */
    --mp-tbl-accent-dim: rgba(192,57,43,.08); /* subtle red row tint        */
}

    :root[data-bs-theme="dark"][b-jsw98sbm9w] {
        --mp-bg: #080e18;
        --mp-surface: #111a28;
        --mp-surface-2: #172032;
        --mp-surface-3: #1e2a3a;
        --mp-border: rgba(255,255,255,.07);
        --mp-border-2: rgba(241,184,40,.20);
        --mp-text: #d8e8f8;
        --mp-text-2: #7a9ab8;
        --mp-text-3: #3a5a78;
        --mp-shadow: 0 4px 32px rgba(0,0,0,.55), 0 1px 4px rgba(0,0,0,.35);
        --mp-shadow-lift: 0 16px 56px rgba(0,0,0,.70), 0 2px 10px rgba(0,0,0,.45);
        /* Card body background — dark */
        --mp-card-body-bg: #19243a;
        /* Nav-link background & active highlight — dark */
        --mp-nav-link-bg: rgba(255,255,255,.04);
        --mp-nav-link-active-bg: rgba(241,184,40,.14);
        --mp-nav-link-hover-bg: rgba(255,255,255,.07);
        /* Table striping — dark */
        --mp-tbl-row-odd: #1e2d47; /* lifted above dark card bg #111a28 */
        --mp-tbl-row-even: #263550; /* distinctly deeper blue band        */
        --mp-tbl-row-hover: rgba(192,57,43,.22);
        --mp-tbl-accent: #e05a4a;
        --mp-tbl-accent-dim: rgba(192,57,43,.10);
    }

/* ── Page wrapper ─────────────────────────────────────────────────────────── */
.profile-page-wrap[b-jsw98sbm9w] {
    margin: 0 auto;
    padding: 2rem 20px 3.5rem;
}

/* ── Toast ────────────────────────────────────────────────────────────────── */
.profile-status-toast[b-jsw98sbm9w] {
    position: fixed;
    top: 70px;
    right: 1.5rem;
    z-index: 9000;
    min-width: 280px;
    max-width: 400px;
    padding: .85rem 1.25rem;
    border-radius: var(--mp-radius-sm);
    font-family: "din-2014", sans-serif;
    font-size: .82rem;
    font-weight: 700;
    letter-spacing: .04em;
    background: var(--mp-surface);
    border: 1px solid var(--mp-gold);
    border-left: 5px solid var(--mp-gold);
    box-shadow: var(--mp-shadow-lift);
    color: var(--mp-navy);
    animation: mp-toast-in-b-jsw98sbm9w .28s cubic-bezier(.34,1.56,.64,1) forwards;
}

:root[data-bs-theme="dark"] .profile-status-toast[b-jsw98sbm9w] {
    color: var(--mp-gold);
}

.profile-status-toast--danger[b-jsw98sbm9w] {
    border-color: #dc3545 !important;
    border-left-color: #dc3545 !important;
    color: #b01020;
}

.profile-status-toast--warning[b-jsw98sbm9w] {
    border-color: var(--mp-gold) !important;
    border-left-color: var(--mp-gold) !important;
    color: #7a5000;
}

:root[data-bs-theme="dark"] .profile-status-toast--danger[b-jsw98sbm9w] {
    color: #f08090;
}

:root[data-bs-theme="dark"] .profile-status-toast--warning[b-jsw98sbm9w] {
    color: #f1c840;
}

@keyframes mp-toast-in-b-jsw98sbm9w {
    from {
        opacity: 0;
        transform: translateX(28px);
    }

    to {
        opacity: 1;
        transform: translateX(0);
    }
}

/* ── HERO ─────────────────────────────────────────────────────────────────── */
.mp-hero[b-jsw98sbm9w] {
    position: relative;
    background: linear-gradient(135deg, #002855 0%, #0d3a6e 55%, #1a4f87 100%);
    border-radius: var(--mp-radius);
    padding: 2.5rem 2.5rem 2rem;
    margin-bottom: 2rem;
    overflow: hidden;
    box-shadow: var(--mp-shadow-lift);
}

    .mp-hero[b-jsw98sbm9w]::before {
        content: "";
        position: absolute;
        top: -30px;
        right: -60px;
        width: 340px;
        height: 340px;
        background: conic-gradient(from 200deg, transparent 0deg, rgba(241,184,40,.08) 40deg, transparent 80deg);
        border-radius: 50%;
        pointer-events: none;
    }

    .mp-hero[b-jsw98sbm9w]::after {
        content: "";
        position: absolute;
        inset: 0;
        background-image: linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px);
        background-size: 32px 32px;
        pointer-events: none;
    }

.mp-hero__inner[b-jsw98sbm9w] {
    position: relative;
    z-index: 1;
    display: flex;
    align-items: center;
    gap: 2rem;
    flex-wrap: wrap;
}

.mp-hero__info[b-jsw98sbm9w] {
    flex: 1;
    min-width: 200px;
}

.mp-hero__role[b-jsw98sbm9w] {
    font-family: "din-2014", sans-serif;
    font-size: .82rem;
    font-weight: 700;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: #F1B828 !important;
    margin-bottom: .6rem;
}

.mp-hero__name[b-jsw98sbm9w] {
    font-family: "din-2014", sans-serif;
    font-size: clamp(1.8rem, 4vw, 2.8rem);
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: #ffffff !important;
    line-height: 1;
    margin-bottom: .3rem;
}

.mp-hero__meta[b-jsw98sbm9w] {
    display: flex;
    gap: 1.5rem;
    flex-wrap: wrap;
}

.mp-hero__meta-item[b-jsw98sbm9w] {
    font-family: "din-2014", sans-serif;
    font-size: .78rem;
    color: rgba(255,255,255,.60) !important;
    display: flex;
    align-items: center;
    gap: .4rem;
}

    .mp-hero__meta-item strong[b-jsw98sbm9w] {
        color: rgba(255,255,255,.90) !important;
        font-weight: 600;
    }

/* ── Hero avatar (gold circle) ────────────────────────────────────────────── */
.mp-avatar[b-jsw98sbm9w] {
    width: 80px;
    height: 80px;
    border-radius: 50%;
    background: linear-gradient(135deg, #F1B828 0%, #d9a020 100%) !important;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "din-2014", sans-serif;
    font-size: 2rem;
    font-weight: 900;
    color: #002855 !important;
    box-shadow: 0 0 0 4px rgba(241,184,40,.30), 0 8px 24px rgba(0,0,0,.30);
    flex-shrink: 0;
    transition: transform var(--mp-ease);
    cursor: default;
}

    .mp-avatar:hover[b-jsw98sbm9w] {
        transform: scale(1.06);
    }

/* ── Completion widget ────────────────────────────────────────────────────── */
.mp-completion[b-jsw98sbm9w] {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: .5rem;
    flex-shrink: 0;
}

.mp-completion__label[b-jsw98sbm9w] {
    font-family: "din-2014", sans-serif;
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: rgba(255,255,255,.55) !important;
}

.mp-completion__number[b-jsw98sbm9w] {
    font-family: "din-2014", sans-serif;
    font-size: 2.2rem;
    font-weight: 900;
    color: #F1B828 !important;
    line-height: 1;
    text-shadow: 0 0 20px rgba(241,184,40,.35);
}

.mp-completion__track[b-jsw98sbm9w] {
    width: 120px;
    height: 5px;
    background: rgba(255,255,255,.15);
    border-radius: 3px;
    overflow: hidden;
}

.mp-completion__fill[b-jsw98sbm9w] {
    height: 100%;
    background: linear-gradient(90deg, #F1B828 0%, #ffe080 100%);
    border-radius: 3px;
    box-shadow: 0 0 10px rgba(241,184,40,.60);
    transition: width .7s cubic-bezier(.4,0,.2,1);
}

/* ── Hero divider ─────────────────────────────────────────────────────────── */
.mp-hero-divider[b-jsw98sbm9w] {
    height: 3px;
    background: linear-gradient(90deg, #F1B828 0%, rgba(241,184,40,.20) 50%, transparent 100%);
    border-radius: 2px;
    margin: 0 0 2rem;
}

/* ── Completion slab (incomplete profile banner) ─────────────────────────── */
.slab-card[b-jsw98sbm9w] {
    background: var(--mp-surface);
    border: 1px solid var(--mp-border-2);
    border-radius: var(--mp-radius);
    box-shadow: var(--mp-shadow);
    overflow: hidden;
    margin-bottom: 1.5rem;
}

    .slab-card[b-jsw98sbm9w]::before {
        content: "";
        display: block;
        height: 4px;
        background: linear-gradient(90deg, #F1B828 0%, rgba(241,184,40,.25) 100%);
    }

    .slab-card .card-body[b-jsw98sbm9w] {
        padding: 1.25rem 1.5rem;
    }

.pg-completion-title[b-jsw98sbm9w] {
    font-family: "din-2014", sans-serif;
    font-size: .66rem;
    font-weight: 700;
    letter-spacing: .14em;
    text-transform: uppercase;
    color: var(--mp-text-3);
    margin-bottom: .2rem;
}

.pg-completion-sub[b-jsw98sbm9w] {
    font-family: "din-2014", sans-serif;
    font-size: 1.05rem;
    font-weight: 700;
    color: #002855;
}

:root[data-bs-theme="dark"] .pg-completion-sub[b-jsw98sbm9w] {
    color: #F1B828;
}

/* ── Avatar picker ────────────────────────────────────────────────────────── */
.mp-avatar-picker[b-jsw98sbm9w] {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
    margin-top: .4rem;
}

.mp-avatar-option[b-jsw98sbm9w] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .4rem;
    cursor: pointer;
}

.mp-avatar-swatch[b-jsw98sbm9w] {
    width: 44px;
    height: 44px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: "din-2014", sans-serif;
    font-size: 1.1rem;
    font-weight: 900;
    border: 2.5px solid transparent;
    transition: all var(--mp-ease);
    box-shadow: 0 2px 8px rgba(0,0,0,.12);
}

.mp-avatar-option:hover .mp-avatar-swatch[b-jsw98sbm9w] {
    transform: scale(1.10);
}

.mp-avatar-option.active .mp-avatar-swatch[b-jsw98sbm9w] {
    border-color: #F1B828;
    box-shadow: 0 0 0 4px rgba(241,184,40,.18), 0 4px 12px rgba(0,0,0,.18);
}

.mp-avatar-swatch--neutral[b-jsw98sbm9w] {
    background: linear-gradient(135deg, #8a9aaa, #6a7a8a);
    color: #fff !important;
}

.mp-avatar-swatch--female[b-jsw98sbm9w] {
    background: linear-gradient(135deg, #e878a8, #c85888);
    color: #fff !important;
}

.mp-avatar-swatch--blue[b-jsw98sbm9w] {
    background: linear-gradient(135deg, #4a8ae8, #2a5ac8);
    color: #fff !important;
}

.mp-avatar-option__label[b-jsw98sbm9w] {
    font-family: "din-2014", sans-serif;
    font-size: .62rem;
    font-weight: 700;
    letter-spacing: .10em;
    text-transform: uppercase;
    color: var(--mp-text-3);
}

/* ── Contact method chips ─────────────────────────────────────────────────── */
.mp-contact-chip[b-jsw98sbm9w] {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    background: var(--mp-surface-3);
    border: 1.5px solid var(--mp-border-2);
    border-radius: 30px;
    padding: .35rem .9rem;
    font-family: "din-2014", sans-serif;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .10em;
    text-transform: uppercase;
    color: var(--mp-text-2);
    cursor: pointer;
    transition: all var(--mp-ease);
    user-select: none;
}

    .mp-contact-chip.active[b-jsw98sbm9w] {
        background: var(--mp-gold-dim);
        border-color: #F1B828;
        color: #002855;
    }

:root[data-bs-theme="dark"] .mp-contact-chip.active[b-jsw98sbm9w] {
    color: #F1B828;
}

.mp-contact-chip:hover[b-jsw98sbm9w] {
    border-color: #F1B828;
}

.mp-contact-chip__dot[b-jsw98sbm9w] {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: 2px solid currentColor;
    transition: background var(--mp-ease);
}

.mp-contact-chip.active .mp-contact-chip__dot[b-jsw98sbm9w] {
    background: #F1B828;
    border-color: #F1B828;
    box-shadow: 0 0 6px rgba(241,184,40,.35);
}

/* ── Theme chips ──────────────────────────────────────────────────────────── */
.mp-theme-chip[b-jsw98sbm9w] {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    background: var(--mp-surface-3);
    border: 1.5px solid var(--mp-border-2);
    border-radius: 30px;
    padding: .35rem .9rem;
    font-family: "din-2014", sans-serif;
    font-size: .70rem;
    font-weight: 700;
    letter-spacing: .10em;
    text-transform: uppercase;
    color: var(--mp-text-2);
    cursor: pointer;
    transition: all var(--mp-ease);
    user-select: none;
}

    .mp-theme-chip.active[b-jsw98sbm9w] {
        background: var(--mp-gold-dim);
        border-color: #F1B828;
        color: #002855;
    }

:root[data-bs-theme="dark"] .mp-theme-chip.active[b-jsw98sbm9w] {
    color: #F1B828;
}

.mp-theme-chip:hover[b-jsw98sbm9w] {
    border-color: #F1B828;
}

.mp-chip-dot[b-jsw98sbm9w] {
    display: inline-block;
    width: 7px;
    height: 7px;
    border-radius: 50%;
    border: 2px solid currentColor;
    transition: background var(--mp-ease), box-shadow var(--mp-ease);
}

.mp-theme-chip.active .mp-chip-dot[b-jsw98sbm9w] {
    background: #F1B828;
    border-color: #F1B828;
    box-shadow: 0 0 6px rgba(241,184,40,.35);
}

/* ── Bootstrap nav-tabs override (scoped) ──────────────────────────────────── */
/*
   PROFILE TABS — Structural rules shared by both themes.
   Light-mode colours are pinned to :root / [data-bs-theme="light"] so they
   always win when switching FROM dark → light (equal specificity to the dark
   overrides below, so last-match wins correctly).
*/

/* ── Shared structure (layout / typography only, no colours) ─────────────── */
.profile-page-wrap .nav-tabs[b-jsw98sbm9w] {
    padding: .25rem .25rem 0 !important;
    margin-bottom: 0 !important;
    gap: .25rem;
}

    .profile-page-wrap .nav-tabs .nav-link[b-jsw98sbm9w] {
        padding: .78rem 1.15rem;
        border: 1px solid transparent !important;
        border-bottom: 0 !important;
        border-radius: var(--mp-radius-sm) var(--mp-radius-sm) 0 0 !important;
        font-family: "din-2014", sans-serif;
        font-size: .78rem;
        font-weight: 800;
        letter-spacing: .12em;
        text-transform: uppercase;
        position: relative;
        margin-bottom: -1px;
        cursor: pointer;
        transition: background .16s ease, color .16s ease, border-color .16s ease, box-shadow .16s ease, filter .16s ease;
        will-change: background, box-shadow;
    }

        /* Gold underline on active tab — both themes */
        .profile-page-wrap .nav-tabs .nav-link.active[b-jsw98sbm9w]::after {
            content: "";
            position: absolute;
            left: 12px;
            right: 12px;
            bottom: -2px;
            height: 3px;
            background: #F1B828;
            border-radius: 999px;
            box-shadow: 0 0 14px rgba(241,184,40,0.35);
            animation: mp-tab-in-b-jsw98sbm9w .2s ease forwards;
        }

/* ── LIGHT MODE — three selectors for equal specificity vs. the dark block ─────── */
:root .profile-page-wrap .nav-tabs[b-jsw98sbm9w],
:root[data-bs-theme="light"] .profile-page-wrap .nav-tabs[b-jsw98sbm9w],
[data-bs-theme="light"] .profile-page-wrap .nav-tabs[b-jsw98sbm9w] {
    background: rgba(255,255,255,0.88) !important;
    border-color: rgba(0,40,85,0.14) !important;
    box-shadow: 0 1px 0 rgba(255,255,255,0.85) inset, 0 8px 18px rgba(0,40,85,0.08);
}

    :root .profile-page-wrap .nav-tabs .nav-link[b-jsw98sbm9w],
    :root[data-bs-theme="light"] .profile-page-wrap .nav-tabs .nav-link[b-jsw98sbm9w],
    [data-bs-theme="light"] .profile-page-wrap .nav-tabs .nav-link[b-jsw98sbm9w] {
        background: rgba(255,255,255,0.88) !important;
        border-color: rgba(0,40,85,0.14) !important;
        color: rgba(0,40,85,0.78) !important;
        box-shadow: 0 1px 0 rgba(255,255,255,0.85) inset, 0 8px 18px rgba(0,40,85,0.08);
    }

        :root .profile-page-wrap .nav-tabs .nav-link:hover:not(.active)[b-jsw98sbm9w],
        :root[data-bs-theme="light"] .profile-page-wrap .nav-tabs .nav-link:hover:not(.active)[b-jsw98sbm9w],
        [data-bs-theme="light"] .profile-page-wrap .nav-tabs .nav-link:hover:not(.active)[b-jsw98sbm9w] {
            background: rgba(255,255,255,0.96) !important;
            border-color: rgba(0,40,85,0.20) !important;
            color: rgba(0,40,85,0.92) !important;
            box-shadow: 0 1px 0 rgba(255,255,255,0.90) inset, 0 12px 22px rgba(0,40,85,0.10);
        }

        :root .profile-page-wrap .nav-tabs .nav-link.active[b-jsw98sbm9w],
        :root[data-bs-theme="light"] .profile-page-wrap .nav-tabs .nav-link.active[b-jsw98sbm9w],
        [data-bs-theme="light"] .profile-page-wrap .nav-tabs .nav-link.active[b-jsw98sbm9w] {
            color: #002855 !important;
            background: rgba(255,255,255,0.92) !important;
            border-color: rgba(0,40,85,0.18) !important;
            box-shadow: 0 1px 0 rgba(255,255,255,0.85) inset, 0 14px 26px rgba(0,40,85,0.10);
            z-index: 2;
        }

        :root .profile-page-wrap .nav-tabs .nav-link:focus-visible[b-jsw98sbm9w],
        :root[data-bs-theme="light"] .profile-page-wrap .nav-tabs .nav-link:focus-visible[b-jsw98sbm9w],
        [data-bs-theme="light"] .profile-page-wrap .nav-tabs .nav-link:focus-visible[b-jsw98sbm9w] {
            outline: none;
            box-shadow: 0 1px 0 rgba(255,255,255,0.70) inset, 0 10px 18px rgba(0,40,85,0.10), 0 0 0 3px rgba(241,184,40,0.28);
        }

/* ─────────────────────
   DARK MODE OVERRIDES
   ───────────────────── */

:root[data-bs-theme="dark"] .profile-page-wrap .nav-tabs[b-jsw98sbm9w],
[data-bs-theme="dark"] .profile-page-wrap .nav-tabs[b-jsw98sbm9w],
[data-theme="dark"] .profile-page-wrap .nav-tabs[b-jsw98sbm9w] {
    border-bottom: 1px solid rgba(255,255,255,0.10) !important;
    border-top: 1px solid rgba(255,255,255,0.10) !important;
    background: linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.00)) !important;
}

    :root[data-bs-theme="dark"] .profile-page-wrap .nav-tabs .nav-link[b-jsw98sbm9w],
    [data-bs-theme="dark"] .profile-page-wrap .nav-tabs .nav-link[b-jsw98sbm9w],
    [data-theme="dark"] .profile-page-wrap .nav-tabs .nav-link[b-jsw98sbm9w] {
        background: rgba(255,255,255,0.06) !important;
        color: rgba(255,255,255,0.78) !important;
        box-shadow: 0 1px 0 rgba(255,255,255,0.05) inset, 0 14px 26px rgba(0,0,0,0.42);
    }

        :root[data-bs-theme="dark"] .profile-page-wrap .nav-tabs .nav-link:hover:not(.active)[b-jsw98sbm9w],
        [data-bs-theme="dark"] .profile-page-wrap .nav-tabs .nav-link:hover:not(.active)[b-jsw98sbm9w],
        [data-theme="dark"] .profile-page-wrap .nav-tabs .nav-link:hover:not(.active)[b-jsw98sbm9w] {
            background: rgba(255,255,255,0.09) !important;
            color: rgba(255,255,255,0.92) !important;
            border-color: rgba(241,184,40,0.18) !important;
            box-shadow: 0 1px 0 rgba(255,255,255,0.06) inset, 0 18px 34px rgba(0,0,0,0.52);
        }

        :root[data-bs-theme="dark"] .profile-page-wrap .nav-tabs .nav-link:active:not(.active)[b-jsw98sbm9w],
        [data-bs-theme="dark"] .profile-page-wrap .nav-tabs .nav-link:active:not(.active)[b-jsw98sbm9w],
        [data-theme="dark"] .profile-page-wrap .nav-tabs .nav-link:active:not(.active)[b-jsw98sbm9w] {
            filter: brightness(0.98);
            box-shadow: 0 1px 0 rgba(255,255,255,0.05) inset, 0 14px 26px rgba(0,0,0,0.44);
        }

        :root[data-bs-theme="dark"] .profile-page-wrap .nav-tabs .nav-link.active[b-jsw98sbm9w],
        [data-bs-theme="dark"] .profile-page-wrap .nav-tabs .nav-link.active[b-jsw98sbm9w],
        [data-theme="dark"] .profile-page-wrap .nav-tabs .nav-link.active[b-jsw98sbm9w] {
            background: linear-gradient(180deg, rgba(241,184,40,0.14), rgba(255,255,255,0.05)) !important;
            color: #F1B828 !important;
            border-color: rgba(241,184,40,0.20) !important;
            box-shadow: 0 1px 0 rgba(255,255,255,0.06) inset, 0 22px 44px rgba(0,0,0,0.58);
        }

            /* Keep your gold underline but make it slightly brighter in dark mode */
            :root[data-bs-theme="dark"] .profile-page-wrap .nav-tabs .nav-link.active[b-jsw98sbm9w]::after,
            [data-bs-theme="dark"] .profile-page-wrap .nav-tabs .nav-link.active[b-jsw98sbm9w]::after,
            [data-theme="dark"] .profile-page-wrap .nav-tabs .nav-link.active[b-jsw98sbm9w]::after {
                box-shadow: 0 0 16px rgba(241,184,40,0.45);
            }

@keyframes mp-tab-in-b-jsw98sbm9w {
    from {
        transform: scaleX(0);
    }

    to {
        transform: scaleX(1);
    }
}

.profile-page-wrap .nav-tabs .badge[b-jsw98sbm9w] {
    font-size: .54rem !important;
    padding: .15rem .4rem !important;
    border-radius: 3px !important;
    font-weight: 800;
}

    .profile-page-wrap .nav-tabs .badge.bg-warning[b-jsw98sbm9w] {
        background: #F1B828 !important;
        color: #002855 !important;
    }

    .profile-page-wrap .nav-tabs .badge.bg-danger[b-jsw98sbm9w] {
        background: #dc3545 !important;
        color: #fff !important;
    }

/* ── Tab content ──────────────────────────────────────────────────────────── */
.profile-page-wrap .tab-content[b-jsw98sbm9w] {
    background: transparent !important;
    border: none !important;
    padding: 1.5rem 0 0 !important;
}

/* ── Bootstrap cards (scoped) ─────────────────────────────────────────────── */
.profile-page-wrap .card.quotes-page[b-jsw98sbm9w] {
    background: var(--mp-surface) !important;
    border: 1px solid var(--mp-border) !important;
    border-radius: var(--mp-radius) !important;
    box-shadow: var(--mp-shadow) !important;
    overflow: hidden;
    position: relative;
    transition: box-shadow var(--mp-ease), transform var(--mp-ease);
}

    .profile-page-wrap .card.quotes-page:hover[b-jsw98sbm9w] {
        box-shadow: var(--mp-shadow-lift) !important;
        transform: none;
    }

    .profile-page-wrap .card.quotes-page[b-jsw98sbm9w]::before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 4px;
        height: 100%;
        background: linear-gradient(180deg, #F1B828 0%, rgba(241,184,40,.20) 100%);
        z-index: 1;
        pointer-events: none;
    }

:root[data-bs-theme="dark"] .profile-page-wrap .card.quotes-page[b-jsw98sbm9w] {
    background: var(--mp-surface) !important;
    border-color: var(--mp-border) !important;
}

.profile-page-wrap .card-body[b-jsw98sbm9w] {
    padding: 1.4rem 1.4rem 1.4rem 1.75rem;
    background: #f7f7f7 !important;
}
/* Dark mode — Profile card body */
:root[data-bs-theme="dark"] .profile-page-wrap .card-body[b-jsw98sbm9w],
[data-bs-theme="dark"] .profile-page-wrap .card-body[b-jsw98sbm9w],
[data-theme="dark"] .profile-page-wrap .card-body[b-jsw98sbm9w] {
    background: linear-gradient(180deg, rgba(20,28,43,0.98), rgba(14,20,33,0.98)) !important;
    border-top: 1px solid rgba(255,255,255,0.06);
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
    color: rgba(255,255,255,0.88);
}

/* ── Headings (scoped — beats site.css global h-tag colour) ──────────────── */
.profile-page-wrap h3[b-jsw98sbm9w] {
    font-family: "din-2014", sans-serif !important;
    font-size: clamp(.9rem, 1.3vw, 1.05rem) !important;
    font-weight: 900 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    color: #002855 !important;
    margin: 0 0 1.25rem !important;
    padding-bottom: .7rem !important;
    border-bottom: 2px solid var(--mp-border) !important;
    display: flex !important;
    align-items: center !important;
    gap: .6rem !important;
    line-height: 1.2 !important;
}

    .profile-page-wrap h3[b-jsw98sbm9w]::before {
        content: "" !important;
        display: inline-block !important;
        width: 7px !important;
        height: 7px !important;
        min-width: 7px !important;
        background: #F1B828 !important;
        border-radius: 50% !important;
        box-shadow: 0 0 8px rgba(241,184,40,.35) !important;
        flex-shrink: 0 !important;
    }

:root[data-bs-theme="dark"] .profile-page-wrap h3[b-jsw98sbm9w] {
    color: var(--mp-text) !important;
    border-bottom-color: var(--mp-border) !important;
}

.profile-page-wrap h5[b-jsw98sbm9w] {
    font-family: "din-2014", sans-serif !important;
    font-size: .72rem !important;
    font-weight: 700 !important;
    letter-spacing: .14em !important;
    text-transform: uppercase !important;
    color: var(--mp-text-2) !important;
    margin: 0 0 1rem !important;
    line-height: 1.2 !important;
    display: flex !important;
    align-items: center !important;
    gap: .5rem !important;
    padding-bottom: .5rem !important;
    border-bottom: 1px solid var(--mp-border) !important;
}

    .profile-page-wrap h5[b-jsw98sbm9w]::before {
        content: "" !important;
        display: inline-block !important;
        width: 5px !important;
        height: 5px !important;
        min-width: 5px !important;
        background: #c0392b !important;
        border-radius: 50% !important;
        box-shadow: 0 0 6px rgba(192,57,43,.40) !important;
        flex-shrink: 0 !important;
    }

:root[data-bs-theme="dark"] .profile-page-wrap h5[b-jsw98sbm9w] {
    color: var(--mp-text-2) !important;
    border-bottom-color: var(--mp-border) !important;
}

    :root[data-bs-theme="dark"] .profile-page-wrap h5[b-jsw98sbm9w]::before {
        background: #e05a4a !important;
        box-shadow: 0 0 8px rgba(224,90,74,.45) !important;
    }

/* ── Form labels ──────────────────────────────────────────────────────────── */
.profile-page-wrap .form-label[b-jsw98sbm9w] {
    font-family: "din-2014", sans-serif;
    font-size: .66rem;
    font-weight: 700;
    letter-spacing: .13em;
    text-transform: uppercase;
    color: var(--mp-text-3);
    margin-bottom: .38rem;
    display: block;
}

/* ── Form controls ────────────────────────────────────────────────────────── */
.profile-page-wrap .form-control[b-jsw98sbm9w] {
    background: #ffffff !important;
    border: 1.5px solid #a0b4cc !important;
    border-left: 3px solid #002855 !important;
    border-radius: var(--mp-radius-sm) !important;
    color: var(--mp-text) !important;
    font-family: "din-2014", sans-serif;
    font-size: .88rem;
    padding: .55rem .9rem;
    transition: border-color var(--mp-ease), box-shadow var(--mp-ease), background var(--mp-ease);
    outline: none;
    width: 100%;
    box-shadow: 0 1px 3px rgba(0,40,85,.06);
}

    .profile-page-wrap .form-control:focus[b-jsw98sbm9w] {
        border-color: #a0b4cc !important;
        border-left-color: #F1B828 !important;
        box-shadow: 0 0 0 3px rgba(0,40,85,.10) !important;
        background: #fffef8 !important;
    }

    /* Disabled: clearly muted — no left accent, washed out */
    .profile-page-wrap .form-control:disabled[b-jsw98sbm9w],
    .profile-page-wrap .form-control[disabled][b-jsw98sbm9w] {
        background: #eceef2 !important;
        border: 1.5px solid #d0d5dd !important;
        border-left: 3px solid #d0d5dd !important;
        color: #9aa5b4 !important;
        cursor: not-allowed !important;
        box-shadow: none !important;
        opacity: 1 !important;
    }

        .profile-page-wrap .form-control:disabled[b-jsw98sbm9w]::placeholder,
        .profile-page-wrap .form-control[disabled][b-jsw98sbm9w]::placeholder {
            color: #b0bac5 !important;
            opacity: 1 !important;
        }

:root[data-bs-theme="dark"] .profile-page-wrap .form-control[b-jsw98sbm9w] {
    background: rgba(255,255,255,.08) !important;
    border-color: rgba(255,255,255,.15) !important;
    border-left-color: #4a7ab8 !important;
    color: var(--mp-text) !important;
}

    :root[data-bs-theme="dark"] .profile-page-wrap .form-control:focus[b-jsw98sbm9w] {
        border-color: rgba(255,255,255,.20) !important;
        border-left-color: #F1B828 !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,.14) !important;
        background: rgba(255,255,255,.11) !important;
    }

    :root[data-bs-theme="dark"] .profile-page-wrap .form-control:disabled[b-jsw98sbm9w],
    :root[data-bs-theme="dark"] .profile-page-wrap .form-control[disabled][b-jsw98sbm9w] {
        background: rgba(255,255,255,.03) !important;
        border-color: rgba(255,255,255,.07) !important;
        border-left-color: rgba(255,255,255,.07) !important;
        color: rgba(255,255,255,.28) !important;
    }

.profile-page-wrap .form-control[b-jsw98sbm9w]::placeholder {
    color: var(--mp-text-3);
    opacity: .65;
}

.profile-page-wrap .setup-required-field[b-jsw98sbm9w] {
    border-color: #dc3545 !important;
    background: rgba(220,53,69,.04) !important;
}

.profile-page-wrap .is-invalid[b-jsw98sbm9w] {
    border-color: #dc3545 !important;
}

.profile-page-wrap .valid.modified:not([type=checkbox])[b-jsw98sbm9w] {
    border-color: #198754 !important;
}

/* ── Form checks ──────────────────────────────────────────────────────────── */
.profile-page-wrap .form-check[b-jsw98sbm9w] {
    display: flex;
    align-items: center;
    gap: .5rem;
    padding-left: 0;
    margin-bottom: 0;
}

.profile-page-wrap input[type="radio"].form-input[b-jsw98sbm9w],
.profile-page-wrap input[type="checkbox"].form-input[b-jsw98sbm9w] {
    width: 16px;
    height: 16px;
    border: 2px solid var(--mp-border-2);
    border-radius: 3px;
    cursor: pointer;
    accent-color: #002855;
    flex-shrink: 0;
}

:root[data-bs-theme="dark"] .profile-page-wrap input[type="radio"].form-input[b-jsw98sbm9w],
:root[data-bs-theme="dark"] .profile-page-wrap input[type="checkbox"].form-input[b-jsw98sbm9w] {
    accent-color: #F1B828;
}

/* ── Bootstrap progress (scoped) ─────────────────────────────────────────── */
.profile-page-wrap .progress[b-jsw98sbm9w] {
    height: 6px;
    background: rgba(0,40,85,.08);
    border-radius: 3px;
    overflow: hidden;
    margin-top: .6rem;
}

.profile-page-wrap .progress-bar[b-jsw98sbm9w] {
    background: linear-gradient(90deg, #002855 0%, #0d3a6e 50%, #F1B828 100%);
    border-radius: 3px;
    box-shadow: 0 0 8px rgba(241,184,40,.35);
    transition: width .6s cubic-bezier(.4,0,.2,1);
}

/* ── Bootstrap alerts (scoped) ────────────────────────────────────────────── */
.profile-page-wrap .alert[b-jsw98sbm9w] {
    border: none;
    border-left: 4px solid;
    border-radius: var(--mp-radius-sm);
    font-family: "din-2014", sans-serif;
    font-size: .84rem;
    padding: .9rem 1.1rem;
}

.profile-page-wrap .alert-warning[b-jsw98sbm9w] {
    background: rgba(241,184,40,.10);
    border-color: #F1B828;
    color: #7a5000;
}

.profile-page-wrap .alert-info[b-jsw98sbm9w] {
    background: rgba(13,110,253,.08);
    border-color: #0d6efd;
    color: #0a3a7a;
}

.profile-page-wrap .alert-success[b-jsw98sbm9w] {
    background: rgba(25,135,84,.08);
    border-color: #198754;
    color: #0a4a2a;
}

.profile-page-wrap .alert-danger[b-jsw98sbm9w] {
    background: rgba(220,53,69,.08);
    border-color: #dc3545;
    color: #7d1a23;
}

:root[data-bs-theme="dark"] .profile-page-wrap .alert-warning[b-jsw98sbm9w] {
    background: rgba(241,184,40,.10);
    color: #f1c840;
}

:root[data-bs-theme="dark"] .profile-page-wrap .alert-info[b-jsw98sbm9w] {
    background: rgba(13,110,253,.12);
    color: #7ab4f8;
}

:root[data-bs-theme="dark"] .profile-page-wrap .alert-success[b-jsw98sbm9w] {
    background: rgba(25,135,84,.12);
    color: #5de8a8;
}

:root[data-bs-theme="dark"] .profile-page-wrap .alert-danger[b-jsw98sbm9w] {
    background: rgba(220,53,69,.12);
    color: #f08090;
}

/* ── Bootstrap badges (scoped) ────────────────────────────────────────────── */
.profile-page-wrap .badge[b-jsw98sbm9w] {
    font-family: "din-2014", sans-serif;
    font-size: .60rem;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    padding: .22rem .55rem;
    border-radius: 4px;
}

    .profile-page-wrap .badge.bg-warning[b-jsw98sbm9w] {
        background: #F1B828 !important;
        color: #002855 !important;
    }

    .profile-page-wrap .badge.bg-success[b-jsw98sbm9w] {
        background: linear-gradient(135deg, #1a9e5c, #128040) !important;
        color: #fff !important;
    }

    .profile-page-wrap .badge.bg-danger[b-jsw98sbm9w] {
        background: linear-gradient(135deg, #e03450, #b82040) !important;
        color: #fff !important;
    }

    .profile-page-wrap .badge.bg-secondary[b-jsw98sbm9w] {
        background: rgba(100,120,140,.14) !important;
        color: var(--mp-text-3) !important;
    }

/* ── Tables ───────────────────────────────────────────────────────────────── */
.profile-page-wrap .table-wrap[b-jsw98sbm9w] {
    border-radius: var(--mp-radius-sm);
    overflow: hidden;
    border: 1px solid var(--mp-border);
}

.profile-page-wrap .table-wrap--flush[b-jsw98sbm9w] {
    border-radius: var(--mp-radius-sm);
    border: 2px solid var(--mp-border-2);
    overflow-x: auto;
    box-shadow: 0 2px 10px rgba(0,40,85,.08);
}

:root[data-bs-theme="dark"] .profile-page-wrap .table-wrap--flush[b-jsw98sbm9w] {
    border-color: rgba(255,255,255,.12);
    box-shadow: 0 2px 12px rgba(0,0,0,.35);
}

.profile-page-wrap .quotes-table[b-jsw98sbm9w] {
    width: 100%;
    border-collapse: collapse;
    font-family: "din-2014", sans-serif;
    font-size: .82rem;
}

    .profile-page-wrap .quotes-table thead tr[b-jsw98sbm9w] {
        background: #002855 !important;
    }

:root[data-bs-theme="dark"] .profile-page-wrap .quotes-table thead tr[b-jsw98sbm9w] {
    background: #0a1828 !important;
}

.profile-page-wrap .quotes-table thead th[b-jsw98sbm9w] {
    font-family: "din-2014", sans-serif;
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: rgba(255,255,255,.75) !important;
    padding: .55rem .9rem;
    white-space: nowrap;
    border: none;
    border-right: 1px solid rgba(255,255,255,.06);
}

    .profile-page-wrap .quotes-table thead th:last-child[b-jsw98sbm9w] {
        border-right: none;
    }

    .profile-page-wrap .quotes-table thead th:first-child[b-jsw98sbm9w] {
        border-left: 3px solid var(--mp-tbl-accent, #c0392b);
        padding-left: .75rem;
    }


.profile-page-wrap .quotes-table tbody tr[b-jsw98sbm9w] {
    border-bottom: 1px solid var(--mp-border);
    border-left: 3px solid transparent;
    transition: background var(--mp-ease), border-color var(--mp-ease);
}

    .profile-page-wrap .quotes-table tbody tr:last-child[b-jsw98sbm9w] {
        border-bottom: none;
    }

    .profile-page-wrap .quotes-table tbody tr:hover td[b-jsw98sbm9w] {
        background: var(--mp-tbl-row-hover) !important;
    }

    .profile-page-wrap .quotes-table tbody tr:hover[b-jsw98sbm9w] {
        border-left-color: var(--mp-tbl-accent);
    }

:root[data-bs-theme="dark"] .profile-page-wrap .quotes-table tbody tr:hover td[b-jsw98sbm9w] {
    background: var(--mp-tbl-row-hover) !important;
}

.profile-page-wrap .quotes-table tbody td[b-jsw98sbm9w] {
    padding: .65rem .9rem;
    color: var(--mp-text-2);
    vertical-align: middle;
}

.profile-page-wrap .quotes-table--tight thead th[b-jsw98sbm9w],
.profile-page-wrap .quotes-table--tight tbody td[b-jsw98sbm9w] {
    padding: .5rem .75rem;
}

.profile-page-wrap .needs-fix[b-jsw98sbm9w] {
    border-color: #dc3545 !important;
    background: rgba(220,53,69,.05) !important;
}

.profile-page-wrap .icon-warning[b-jsw98sbm9w] {
    color: #F1B828;
    margin-left: .3rem;
}

.profile-page-wrap .fix-banner[b-jsw98sbm9w] {
    background: rgba(241,184,40,.10);
    border: 1px solid rgba(241,184,40,.35);
    border-left: 4px solid #F1B828;
    border-radius: var(--mp-radius-sm);
    padding: .75rem 1rem;
    font-family: "din-2014", sans-serif;
    font-size: .82rem;
    color: #7a5000;
    margin-bottom: 1rem;
}

:root[data-bs-theme="dark"] .profile-page-wrap .fix-banner[b-jsw98sbm9w] {
    color: #f1c840;
}

.profile-page-wrap .contacts-body[b-jsw98sbm9w] {
    padding: 0;
}

.profile-page-wrap .contacts-body-pad[b-jsw98sbm9w] {
    padding: 1rem 1.25rem 0;
}

/* ── Contacts table striping ─────────────────────────────────────────────── */
.profile-page-wrap .contacts-table[b-jsw98sbm9w] {
    width: 100%;
    border-collapse: collapse;
    font-family: "din-2014", sans-serif;
    font-size: .84rem;
}

    .profile-page-wrap .contacts-table thead tr[b-jsw98sbm9w] {
        background: #002855 !important;
    }

:root[data-bs-theme="dark"] .profile-page-wrap .contacts-table thead tr[b-jsw98sbm9w] {
    background: #0a1828 !important;
}

.profile-page-wrap .contacts-table thead th[b-jsw98sbm9w] {
    font-family: "din-2014", sans-serif;
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: rgba(255,255,255,.80) !important;
    padding: .6rem 1rem;
    white-space: nowrap;
    border: none;
    border-right: 1px solid rgba(255,255,255,.06);
}

    .profile-page-wrap .contacts-table thead th:last-child[b-jsw98sbm9w] {
        border-right: none;
    }

    .profile-page-wrap .contacts-table thead th:first-child[b-jsw98sbm9w] {
        border-left: 3px solid var(--mp-tbl-accent, #c0392b);
        padding-left: .85rem;
    }



.profile-page-wrap .contacts-table tbody tr[b-jsw98sbm9w] {
    border-bottom: 1px solid var(--mp-border);
    border-left: 3px solid transparent;
    transition: background var(--mp-ease), border-color var(--mp-ease);
}

    .profile-page-wrap .contacts-table tbody tr:last-child[b-jsw98sbm9w] {
        border-bottom: none;
    }

    .profile-page-wrap .contacts-table tbody tr:hover td[b-jsw98sbm9w] {
        background: var(--mp-tbl-row-hover) !important;
    }

    .profile-page-wrap .contacts-table tbody tr:hover[b-jsw98sbm9w] {
        border-left-color: var(--mp-tbl-accent);
    }

:root[data-bs-theme="dark"] .profile-page-wrap .contacts-table tbody tr:hover td[b-jsw98sbm9w] {
    background: var(--mp-tbl-row-hover) !important;
}

.profile-page-wrap .contacts-table tbody td[b-jsw98sbm9w] {
    padding: .65rem 1rem;
    color: var(--mp-text-2);
    vertical-align: middle;
}

/* ── Tool-access table striping ──────────────────────────────────────────── */
.profile-page-wrap .tool-access-table[b-jsw98sbm9w] {
    width: 100%;
    border-collapse: collapse;
    font-family: "din-2014", sans-serif;
    font-size: .84rem;
}

    .profile-page-wrap .tool-access-table thead tr[b-jsw98sbm9w] {
        background: #002855 !important;
    }

:root[data-bs-theme="dark"] .profile-page-wrap .tool-access-table thead tr[b-jsw98sbm9w] {
    background: #0a1828 !important;
}

.profile-page-wrap .tool-access-table thead th[b-jsw98sbm9w] {
    font-family: "din-2014", sans-serif;
    font-size: .64rem;
    font-weight: 800;
    letter-spacing: .16em;
    text-transform: uppercase;
    color: rgba(255,255,255,.80) !important;
    padding: .6rem 1rem;
    white-space: nowrap;
    border: none;
    border-right: 1px solid rgba(255,255,255,.06);
}

    .profile-page-wrap .tool-access-table thead th:last-child[b-jsw98sbm9w] {
        border-right: none;
    }

    .profile-page-wrap .tool-access-table thead th:first-child[b-jsw98sbm9w] {
        border-left: 3px solid var(--mp-tbl-accent, #c0392b);
        padding-left: .85rem;
    }


.profile-page-wrap .tool-access-table tbody tr:nth-child(even) td[b-jsw98sbm9w] {
    background: var(--mp-tbl-row-even) !important;
}

.profile-page-wrap .tool-access-table tbody tr[b-jsw98sbm9w] {
    border-bottom: 1px solid var(--mp-border);
    border-left: 3px solid transparent;
    transition: background var(--mp-ease), border-color var(--mp-ease);
}

    .profile-page-wrap .tool-access-table tbody tr:last-child[b-jsw98sbm9w] {
        border-bottom: none;
    }

    .profile-page-wrap .tool-access-table tbody tr:hover td[b-jsw98sbm9w] {
        background: var(--mp-tbl-row-hover) !important;
    }

    .profile-page-wrap .tool-access-table tbody tr:hover[b-jsw98sbm9w] {
        border-left-color: var(--mp-tbl-accent);
    }

:root[data-bs-theme="dark"] .profile-page-wrap .tool-access-table tbody tr:hover td[b-jsw98sbm9w] {
    background: var(--mp-tbl-row-hover) !important;
}

.profile-page-wrap .tool-access-table tbody td[b-jsw98sbm9w] {
    padding: .65rem 1rem;
    color: var(--mp-text-2);
    vertical-align: middle;
}

/* ── Buttons ──────────────────────────────────────────────────────────────── */
.profile-page-wrap .btn.btn-success-solid[b-jsw98sbm9w] {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    font-family: "din-2014", sans-serif;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    padding: .6rem 1.6rem;
    border-radius: var(--mp-radius-sm);
    border: 1px solid rgba(241,184,40,.50) !important;
    color: #ffffff !important;
    background: linear-gradient(175deg, #1a4f87 0%, #002855 100%) !important;
    box-shadow: 0 4px 14px rgba(0,40,85,.20);
    cursor: pointer;
    transition: filter var(--mp-ease), transform var(--mp-ease);
}

    .profile-page-wrap .btn.btn-success-solid:hover[b-jsw98sbm9w] {
        filter: brightness(1.12);
        transform: translateY(-1px);
    }

:root[data-bs-theme="dark"] .profile-page-wrap .btn.btn-success-solid[b-jsw98sbm9w] {
    background: linear-gradient(135deg, #F1B828 0%, #c89010 100%) !important;
    color: #002855 !important;
    border-color: transparent !important;
}

.profile-page-wrap .btn.btn-neutral-solid[b-jsw98sbm9w] {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    font-family: "din-2014", sans-serif;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .10em;
    text-transform: uppercase;
    padding: .55rem 1.3rem;
    border-radius: var(--mp-radius-sm);
    border: 1.5px solid rgba(0,40,85,.30) !important;
    color: #002855 !important;
    background: linear-gradient(175deg, #e8edf5 0%, #d8e0ec 100%) !important;
    box-shadow: 0 2px 6px rgba(0,40,85,.12);
    cursor: pointer;
    transition: background var(--mp-ease), border-color var(--mp-ease), box-shadow var(--mp-ease), transform var(--mp-ease);
}

    .profile-page-wrap .btn.btn-neutral-solid:hover[b-jsw98sbm9w] {
        background: linear-gradient(175deg, #dce4f0 0%, #c8d4e8 100%) !important;
        border-color: #002855 !important;
        box-shadow: 0 4px 12px rgba(0,40,85,.20);
        transform: translateY(-1px);
    }

    .profile-page-wrap .btn.btn-neutral-solid:active[b-jsw98sbm9w] {
        transform: translateY(0);
        box-shadow: 0 1px 4px rgba(0,40,85,.12);
    }

:root[data-bs-theme="dark"] .profile-page-wrap .btn.btn-neutral-solid[b-jsw98sbm9w] {
    background: linear-gradient(175deg, rgba(255,255,255,.10) 0%, rgba(255,255,255,.06) 100%) !important;
    border-color: rgba(255,255,255,.20) !important;
    color: var(--mp-text) !important;
    box-shadow: 0 2px 6px rgba(0,0,0,.25);
}

    :root[data-bs-theme="dark"] .profile-page-wrap .btn.btn-neutral-solid:hover[b-jsw98sbm9w] {
        background: linear-gradient(175deg, rgba(255,255,255,.15) 0%, rgba(255,255,255,.10) 100%) !important;
        border-color: rgba(255,255,255,.35) !important;
    }

.profile-page-wrap .btn.btn-primary-solid[b-jsw98sbm9w] {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    font-family: "din-2014", sans-serif;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .10em;
    text-transform: uppercase;
    padding: .6rem 1.6rem;
    border-radius: var(--mp-radius-sm);
    border: none !important;
    color: #ffffff !important;
    background: linear-gradient(135deg, #0d3a6e 0%, #002855 100%) !important;
    box-shadow: 0 3px 10px rgba(0,40,85,.18);
    cursor: pointer;
    transition: filter var(--mp-ease);
}

    .profile-page-wrap .btn.btn-primary-solid:hover[b-jsw98sbm9w] {
        filter: brightness(1.12);
    }

.profile-page-wrap .btn.btn-danger-solid[b-jsw98sbm9w] {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    font-family: "din-2014", sans-serif;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .10em;
    text-transform: uppercase;
    padding: .6rem 1.6rem;
    border-radius: var(--mp-radius-sm);
    border: none !important;
    color: #ffffff !important;
    background: linear-gradient(135deg, #e03450 0%, #b82040 100%) !important;
    cursor: pointer;
    transition: filter var(--mp-ease);
}

    .profile-page-wrap .btn.btn-danger-solid:hover[b-jsw98sbm9w] {
        filter: brightness(1.10);
    }

.profile-page-wrap .btn.btn-utility-solid[b-jsw98sbm9w] {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    font-family: "din-2014", sans-serif;
    font-size: .78rem;
    font-weight: 600;
    letter-spacing: .08em;
    text-transform: uppercase;
    padding: .55rem 1.3rem;
    border-radius: var(--mp-radius-sm);
    border: 1px solid var(--mp-border-2) !important;
    color: #002855 !important;
    background: rgba(0,40,85,.06) !important;
    cursor: pointer;
    transition: background var(--mp-ease);
}

    .profile-page-wrap .btn.btn-utility-solid:hover[b-jsw98sbm9w] {
        background: rgba(0,40,85,.12) !important;
    }

:root[data-bs-theme="dark"] .profile-page-wrap .btn.btn-utility-solid[b-jsw98sbm9w] {
    background: rgba(255,255,255,.06) !important;
    color: var(--mp-text) !important;
    border-color: rgba(255,255,255,.12) !important;
}

.profile-page-wrap .btn-sm[b-jsw98sbm9w] {
    font-size: .70rem !important;
    padding: .42rem 1rem !important;
}

/* ── Utilities ────────────────────────────────────────────────────────────── */
.profile-page-wrap .text-muted[b-jsw98sbm9w] {
    color: var(--mp-text-3) !important;
}

.profile-page-wrap small[b-jsw98sbm9w], .profile-page-wrap .small[b-jsw98sbm9w] {
    font-size: .78rem;
    color: var(--mp-text-3);
}

/* ── Table row striping — target td directly so nothing can override ────────── */


/* explicit class-based stripes for C#-loop rows (tool access table) */
.profile-page-wrap .quotes-table tbody tr.mp-tr-odd td[b-jsw98sbm9w] {
    background-color: var(--mp-tbl-row-odd) !important;
}

.profile-page-wrap .quotes-table tbody tr.mp-tr-even td[b-jsw98sbm9w] {
    background-color: var(--mp-tbl-row-even) !important;
}

/* dark mode hover */
:root[data-bs-theme="dark"] .profile-page-wrap .quotes-table tbody tr:hover td[b-jsw98sbm9w] {
    background-color: var(--mp-tbl-row-hover) !important;
}

/* left accent bar */
.profile-page-wrap .quotes-table tbody tr[b-jsw98sbm9w] {
    border-left: 3px solid transparent;
    transition: border-color var(--mp-ease);
}

    .profile-page-wrap .quotes-table tbody tr:hover[b-jsw98sbm9w] {
        border-left-color: var(--mp-tbl-accent);
    }

/* ── Hero company badge ───────────────────────────────────────────────────── */
.mp-hero__company-badge[b-jsw98sbm9w] {
    display: inline-flex;
    align-items: center;
    gap: .35rem;
    background: rgba(241,184,40,.15);
    border: 1px solid rgba(241,184,40,.35);
    border-radius: 20px;
    padding: .2rem .7rem;
    font-family: "din-2014", sans-serif;
    font-size: .70rem;
    font-weight: 700;
    letter-spacing: .10em;
    text-transform: uppercase;
    color: rgba(255,255,255,.90) !important;
}

    .mp-hero__company-badge .bi[b-jsw98sbm9w] {
        font-size: .72rem;
        color: #F1B828;
        flex-shrink: 0;
    }


/* ── Hint labels (mp-hint) ────────────────────────────────────────────────── */
.mp-hint[b-jsw98sbm9w] {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    background: rgba(0,40,85,.05);
    border: 1px solid rgba(0,40,85,.10);
    border-left: 3px solid #F1B828;
    border-radius: 5px;
    padding: .28rem .65rem;
    font-family: "din-2014", sans-serif;
    font-size: .72rem;
    font-weight: 600;
    color: var(--mp-text-2);
    line-height: 1.35;
    margin-top: .4rem;
}

    .mp-hint i[b-jsw98sbm9w] {
        color: #F1B828;
        font-size: .78rem;
        flex-shrink: 0;
    }

/* Security / warning variant */
.mp-hint--warn[b-jsw98sbm9w] {
    background: rgba(192,57,43,.05);
    border-color: rgba(192,57,43,.15);
    border-left-color: #c0392b;
}

    .mp-hint--warn i[b-jsw98sbm9w] {
        color: #c0392b;
    }

:root[data-bs-theme="dark"] .mp-hint[b-jsw98sbm9w] {
    background: rgba(255,255,255,.04);
    border-color: rgba(255,255,255,.08);
    border-left-color: #F1B828;
    color: var(--mp-text-2);
}

:root[data-bs-theme="dark"] .mp-hint--warn[b-jsw98sbm9w] {
    background: rgba(192,57,43,.08);
    border-color: rgba(192,57,43,.20);
    border-left-color: #e05a4a;
}

    :root[data-bs-theme="dark"] .mp-hint--warn i[b-jsw98sbm9w] {
        color: #e05a4a;
    }

/* ── Contacts tip banner ───────────────────────────────────────────────────── */
.mp-contacts-tip[b-jsw98sbm9w] {
    display: flex;
    align-items: flex-start;
    gap: .9rem;
    padding: .75rem 1rem .75rem 1rem;
    margin-bottom: 1rem;
    background: linear-gradient(135deg, rgba(0,40,85,.05) 0%, rgba(0,40,85,.03) 100%);
    border: 1px solid rgba(0,40,85,.10);
    border-left: 4px solid var(--mp-gold);
    border-radius: 0 var(--mp-radius-sm) var(--mp-radius-sm) 0;
    box-shadow: 0 2px 8px rgba(0,40,85,.07);
}

.mp-contacts-tip__icon[b-jsw98sbm9w] {
    flex-shrink: 0;
    width: 34px;
    height: 34px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: var(--mp-gold-dim);
    border: 1px solid var(--mp-gold-glow);
    border-radius: 8px;
    color: #a07800;
    font-size: 1.1rem;
    margin-top: .05rem;
}

.mp-contacts-tip__body[b-jsw98sbm9w] {
    display: flex;
    flex-direction: column;
    gap: .2rem;
}

    .mp-contacts-tip__body strong[b-jsw98sbm9w] {
        font-size: .72rem;
        font-weight: 800;
        letter-spacing: .07em;
        text-transform: uppercase;
        color: var(--mp-navy);
    }

    .mp-contacts-tip__body span[b-jsw98sbm9w] {
        font-size: .82rem;
        font-weight: 500;
        color: var(--mp-text-2);
        line-height: 1.45;
    }

/* Dark mode */
:root[data-bs-theme="dark"] .mp-contacts-tip[b-jsw98sbm9w] {
    background: linear-gradient(135deg, rgba(241,184,40,.06) 0%, rgba(241,184,40,.03) 100%);
    border-color: rgba(255,255,255,.07);
    border-left-color: var(--mp-gold);
    box-shadow: 0 2px 12px rgba(0,0,0,.25);
}

:root[data-bs-theme="dark"] .mp-contacts-tip__icon[b-jsw98sbm9w] {
    background: rgba(241,184,40,.12);
    border-color: rgba(241,184,40,.25);
    color: var(--mp-gold);
}

:root[data-bs-theme="dark"] .mp-contacts-tip__body strong[b-jsw98sbm9w] {
    color: rgba(255,255,255,.90);
}

:root[data-bs-theme="dark"] .mp-contacts-tip__body span[b-jsw98sbm9w] {
    color: var(--mp-text-2);
}

/* ── Responsive ───────────────────────────────────────────────────────────── */
@media (max-width: 991.98px) {
    .mp-hero[b-jsw98sbm9w] {
        padding: 1.75rem 1.5rem 1.5rem;
    }

    .mp-completion[b-jsw98sbm9w] {
        display: none;
    }
}

@media (max-width: 767.98px) {
    .profile-page-wrap[b-jsw98sbm9w] {
        padding: 1rem 20px 2rem;
    }

    .mp-hero__name[b-jsw98sbm9w] {
        font-size: 1.6rem !important;
    }

    .mp-hero__meta[b-jsw98sbm9w] {
        gap: .8rem;
    }

    /* ── Tabs: horizontally scrollable strip on mobile ────────────────────
       Prevents tabs from wrapping or getting micro-tiny.
       Add -webkit-overflow-scrolling for iOS momentum.
    ────────────────────────────────────────────────────────────────────── */
    .profile-page-wrap .nav-tabs[b-jsw98sbm9w] {
        flex-wrap: nowrap !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch;
        /* Hide scrollbar visually but keep it functional */
        scrollbar-width: none;
        padding-bottom: 1px !important; /* keep bottom border visible */
        /* Fade edges to hint at more tabs */
        -webkit-mask-image: linear-gradient(to right, transparent 0, black 16px, black calc(100% - 16px), transparent 100%);
        mask-image: linear-gradient(to right, transparent 0, black 16px, black calc(100% - 16px), transparent 100%);
    }

        .profile-page-wrap .nav-tabs[b-jsw98sbm9w]::-webkit-scrollbar {
            display: none;
        }

        .profile-page-wrap .nav-tabs .nav-link[b-jsw98sbm9w] {
            flex-shrink: 0; /* prevent individual tabs from squishing */
            font-size: .72rem;
            padding: .72rem .95rem;
            white-space: nowrap;
        }

    .profile-page-wrap .card-body[b-jsw98sbm9w] {
        padding: 1rem 1rem 1rem 1.4rem;
    }
}

@media (max-width: 575.98px) {
    .profile-page-wrap[b-jsw98sbm9w] {
        padding: .75rem 12px 1.5rem;
    }

        .profile-page-wrap .nav-tabs .nav-link[b-jsw98sbm9w]::after {
            display: none; /* hide gold underline on tiny phones — saves vertical space */
        }

        .profile-page-wrap .nav-tabs .nav-link[b-jsw98sbm9w] {
            font-size: .64rem;
            padding: .6rem .75rem;
        }

        /* ── TABLE CARD LAYOUT ON PHONES ─────────────────────────────────────
       quotes-table rows become stacked cards.
       Add data-label="Column Name" to each <td> in your Razor markup.
    ─────────────────────────────────────────────────────────────────────── */
        .profile-page-wrap .quotes-table thead[b-jsw98sbm9w] {
            position: absolute;
            width: 1px;
            height: 1px;
            overflow: hidden;
            clip: rect(0,0,0,0);
            white-space: nowrap;
        }

        .profile-page-wrap .quotes-table tbody tr[b-jsw98sbm9w] {
            display: block;
            background: var(--mp-surface) !important;
            border: 1px solid var(--mp-border-2) !important;
            border-radius: var(--mp-radius-sm) !important;
            margin-bottom: 10px !important;
            padding: 10px 12px !important;
            box-shadow: var(--mp-shadow);
            border-left: 3px solid var(--mp-tbl-accent) !important;
        }

    :root[data-bs-theme="dark"] .profile-page-wrap .quotes-table tbody tr[b-jsw98sbm9w] {
        background: var(--mp-surface-2) !important;
    }

    .profile-page-wrap .quotes-table tbody td[b-jsw98sbm9w] {
        display: flex !important;
        align-items: baseline;
        gap: 8px;
        padding: 4px 0 !important;
        font-size: .82rem !important;
        border: none !important;
        /* Reset striping */
        background-color: transparent !important;
        white-space: normal !important;
    }

        /* Label prefix from data-label attribute */
        .profile-page-wrap .quotes-table tbody td[data-label][b-jsw98sbm9w]::before {
            content: attr(data-label);
            flex-shrink: 0;
            min-width: 85px;
            font-size: .65rem;
            font-weight: 700;
            letter-spacing: .08em;
            text-transform: uppercase;
            color: var(--mp-text-3);
        }

        /* Last cell = action buttons row */
        .profile-page-wrap .quotes-table tbody td:last-child[b-jsw98sbm9w] {
            padding-top: 8px !important;
            border-top: 1px solid var(--mp-border) !important;
            margin-top: 4px;
            flex-wrap: wrap;
            gap: 6px;
        }

    /* Hero: tighter on small phones */
    .mp-hero[b-jsw98sbm9w] {
        padding: 1.25rem 1rem 1rem;
    }

    .mp-hero__inner[b-jsw98sbm9w] {
        gap: 1rem;
    }

    .mp-avatar[b-jsw98sbm9w] {
        width: 60px;
        height: 60px;
        font-size: 1.4rem;
    }

    .mp-hero__name[b-jsw98sbm9w] {
        font-size: 1.35rem !important;
    }
}


/* ── Prefs row: Avatar · Theme · Preferred Contact side-by-side ────────────── */
.mp-prefs-row[b-jsw98sbm9w] {
    display: flex;
    align-items: flex-start;
    gap: 0;
    background: var(--mp-surface-2);
    border: 1px solid var(--mp-border);
    border-radius: var(--mp-radius-sm);
    padding: .9rem 1rem;
    flex-wrap: wrap;
}

.mp-prefs-cell[b-jsw98sbm9w] {
    flex: 1 1 0;
    min-width: 140px;
    padding: 0 .75rem;
}

    .mp-prefs-cell:first-child[b-jsw98sbm9w] {
        padding-left: 0;
    }

    .mp-prefs-cell:last-child[b-jsw98sbm9w] {
        padding-right: 0;
    }

.mp-prefs-divider[b-jsw98sbm9w] {
    width: 1px;
    align-self: stretch;
    background: var(--mp-border);
    flex-shrink: 0;
    margin: 0;
}

:root[data-bs-theme="dark"] .mp-prefs-row[b-jsw98sbm9w] {
    background: var(--mp-surface-3);
    border-color: var(--mp-border);
}

:root[data-bs-theme="dark"] .mp-prefs-divider[b-jsw98sbm9w] {
    background: var(--mp-border);
}

/* Collapse to stacked on small screens */
@media (max-width: 575.98px) {
    .mp-prefs-row[b-jsw98sbm9w] {
        flex-direction: column;
        gap: 1rem;
    }

    .mp-prefs-cell[b-jsw98sbm9w] {
        padding: 0;
        width: 100%;
        min-width: 0;
    }

    .mp-prefs-divider[b-jsw98sbm9w] {
        width: 100%;
        height: 1px;
        align-self: auto;
    }
}

/* ── Contacts tab header layout ─────────────────────────────────────────────── */
.mp-contacts-header[b-jsw98sbm9w] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 1.5rem; /* solid gap between heading and buttons */
    padding-bottom: .75rem;
    border-bottom: 1px solid var(--mp-border);
    margin-bottom: .25rem;
}

    .mp-contacts-header h3[b-jsw98sbm9w] {
        margin-bottom: 0 !important;
        border-bottom: none !important;
        padding-bottom: 0 !important;
    }

.mp-contacts-header__actions[b-jsw98sbm9w] {
    display: flex;
    align-items: flex-start;
    gap: .75rem;
    flex-wrap: wrap;
    flex: 1;
}

/* ═══════════════════════════════════════════════════════════════════════════
   FIRST-TIME SETUP WIZARD
   ═══════════════════════════════════════════════════════════════════════════ */

.mp-wizard-wrap[b-jsw98sbm9w] {
    background: var(--bs-body-bg, #fff);
    border: 1px solid #e4e7ec;
    border-radius: 10px;
    padding: 1.5rem 1.75rem 1.25rem;
    box-shadow: 0 1px 4px rgba(0,0,0,.06);
}

/* ── Step progress bar ─────────────────────────────────────────────────── */
.mp-wizard-stepper[b-jsw98sbm9w] {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0;
    margin-bottom: 1.25rem;
    flex-wrap: nowrap;
    overflow-x: auto;
}

.mp-wz-step[b-jsw98sbm9w] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: .35rem;
    flex-shrink: 0;
}

.mp-wz-circle[b-jsw98sbm9w] {
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    border: 2px solid #d0d5dd;
    background: #f4f5f7;
    color: #8e95a2;
    transition: background .25s, border-color .25s, color .25s;
}

.mp-wz-label[b-jsw98sbm9w] {
    font-size: .7rem;
    font-weight: 600;
    color: #8e95a2;
    letter-spacing: .03em;
    text-transform: uppercase;
    white-space: nowrap;
    transition: color .25s;
}

/* Active step */
.mp-wz-step--active .mp-wz-circle[b-jsw98sbm9w] {
    border-color: #F1B828;
    background: #F1B828;
    color: #fff;
}

.mp-wz-step--active .mp-wz-label[b-jsw98sbm9w] {
    color: #c8940d;
}

/* Completed step */
.mp-wz-step--done .mp-wz-circle[b-jsw98sbm9w] {
    border-color: #22c55e;
    background: #22c55e;
    color: #fff;
}

.mp-wz-step--done .mp-wz-label[b-jsw98sbm9w] {
    color: #16a34a;
}

/* Connector line between steps */
.mp-wz-connector[b-jsw98sbm9w] {
    flex: 1;
    height: 2px;
    background: #e4e7ec;
    min-width: 2rem;
    max-width: 5rem;
    margin-bottom: 1.15rem; /* vertically center with circle */
    transition: background .3s;
}

.mp-wz-connector--done[b-jsw98sbm9w] {
    background: #22c55e;
}

/* ── Hint row below stepper ────────────────────────────────────────────── */
.mp-wizard-hint[b-jsw98sbm9w] {
    display: flex;
    align-items: center;
    gap: .5rem;
    padding: .65rem 1rem;
    background: #fffbee;
    border-left: 3px solid #F1B828;
    border-radius: 0 6px 6px 0;
    font-size: .875rem;
    color: #6b5e0e;
}

/* ── Completion state ──────────────────────────────────────────────────── */
.mp-wizard-done[b-jsw98sbm9w] {
    text-align: center;
    padding: .5rem 0 .25rem;
}

.mp-wizard-done__icon[b-jsw98sbm9w] {
    font-size: 2.5rem;
    color: #22c55e;
    line-height: 1;
}

.mp-wizard-done__title[b-jsw98sbm9w] {
    font-size: 1.25rem;
    font-weight: 700;
    margin-top: .5rem;
    color: #16a34a;
}

.mp-wizard-done__sub[b-jsw98sbm9w] {
    font-size: .875rem;
    color: #6b7280;
    margin-top: .25rem;
}

/* ── Dark-mode adjustments ─────────────────────────────────────────────── */
[data-bs-theme="dark"] .mp-wizard-wrap[b-jsw98sbm9w] {
    background: var(--bs-body-bg);
    border-color: rgba(255,255,255,.1);
}

[data-bs-theme="dark"] .mp-wizard-hint[b-jsw98sbm9w] {
    background: rgba(241,184,40,.08);
    color: #f1c868;
}

[data-bs-theme="dark"] .mp-wz-circle[b-jsw98sbm9w] {
    background: #2a2d35;
    border-color: #444;
    color: #9ca3af;
}

[data-bs-theme="dark"] .mp-wz-label[b-jsw98sbm9w] {
    color: #9ca3af;
}
/* _content/NoiseLockQuoteTool/Pages/OrderNow.razor.rz.scp.css */
/* =============================================================
   MyQuotes.razor.css  — updated
   All component-scoped styles for the My Quotes page.
   Covers: page layout, filter panel, timeline, tabs,
   quote cards, status strips, chips, action buttons,
   autocomplete, and modals.
   Full light + dark mode support throughout.
   ============================================================= */


/* ── CSS CUSTOM PROPERTIES (design tokens) ───────────────── */

/* Dark mode (default) */
:root[b-mrl3frzbfu],
[data-bs-theme="dark"][b-mrl3frzbfu] {
    --nq-accent: #F1B828;
    --nq-accent-dim: rgba(241,184,40,0.12);
    --nq-accent-ring: rgba(241,184,40,0.30);
    --nq-border: rgba(255,255,255,0.09);
    --nq-chip-bg: rgba(255,255,255,0.05);
    --nq-fg: rgba(255,255,255,0.88);
    --nq-muted: rgba(255,255,255,0.45);
    --nq-card-bg: #1e2226;
    --nq-card-shadow: 0 4px 20px rgba(0,0,0,0.60), 0 1px 4px rgba(0,0,0,0.40), inset 0 1px 0 rgba(255,255,255,0.04);
    --nq-panel-bg: #181c1f;
    --nq-dropdown-bg: #1a2236;
    /* Status palette */
    --s-open-bg: rgba(56,189,248,0.13);
    --s-open-fg: #38bdf8;
    --s-open-bd: rgba(56,189,248,0.28);
    --s-open-badge: rgba(56,189,248,0.80);
    --s-open-badge-fg: #082f49;
    --s-ordersubmitted-bg: rgba(251,191,36,0.14);
    --s-ordersubmitted-fg: #fbbf24;
    --s-ordersubmitted-bd: rgba(251,191,36,0.32);
    --s-ordersubmitted-badge: rgba(251,191,36,0.85);
    --s-ordersubmitted-badge-fg: #1a1200;
    --s-lost-bg: rgba(239,68,68,0.12);
    --s-lost-fg: #f87171;
    --s-lost-bd: rgba(239,68,68,0.25);
    --s-lost-badge: rgba(239,68,68,0.78);
    --s-lost-badge-fg: #fff;
    --s-ordered-bg: rgba(52,211,153,0.13);
    --s-ordered-fg: #34d399;
    --s-ordered-bd: rgba(52,211,153,0.28);
    --s-ordered-badge: rgba(52,211,153,0.80);
    --s-ordered-badge-fg: #022c22;
    --s-revise-bg: rgba(239,68,68,0.12);
    --s-revise-fg: #f87171;
    --s-revise-bd: rgba(239,68,68,0.25);
    --s-revise-badge: rgba(239,68,68,0.78);
    --s-revise-badge-fg: #fff;
    --s-rq-bg: rgba(251,146,60,0.13);
    --s-rq-fg: #fb923c;
    --s-rq-bd: rgba(251,146,60,0.28);
    --s-rq-badge: rgba(251,146,60,0.85);
    --s-rq-badge-fg: #3d1a00;
    --s-pending-bg: rgba(168,85,247,0.13);
    --s-pending-fg: #c084fc;
    --s-pending-bd: rgba(168,85,247,0.28);
    --s-pending-badge: rgba(168,85,247,0.80);
    --s-pending-badge-fg: #fff;
    --s-ready-bg: rgba(20,184,166,0.13);
    --s-ready-fg: #2dd4bf;
    --s-ready-bd: rgba(20,184,166,0.28);
    --s-ready-badge: rgba(20,184,166,0.80);
    --s-ready-badge-fg: #022c22;
    --nq-price-color: #34d399;
    --nq-hint-color: #ffe082;
    --nq-hint-bg: linear-gradient(180deg, rgba(241,184,40,0.16), rgba(241,184,40,0.08));
    --nq-hint-border: rgba(241,184,40,0.30);
}

/* Light mode overrides */
[data-bs-theme="light"][b-mrl3frzbfu] {
    --nq-accent: #c98000;
    --nq-accent-dim: rgba(201,128,0,0.10);
    --nq-accent-ring: rgba(201,128,0,0.28);
    --nq-border: rgba(0,40,85,0.10);
    --nq-chip-bg: rgba(0,40,85,0.04);
    --nq-fg: #1a2a3a;
    --nq-muted: rgba(15,23,42,0.45);
    --nq-card-bg: #ffffff;
    --nq-card-shadow: 0 4px 16px rgba(0,40,85,0.13), 0 1px 3px rgba(0,40,85,0.08);
    --nq-panel-bg: #ffffff;
    --nq-dropdown-bg: #ffffff;
    --s-open-bg: rgba(14,165,233,0.10);
    --s-open-fg: #0369a1;
    --s-open-bd: rgba(14,165,233,0.25);
    --s-open-badge: rgba(14,165,233,0.85);
    --s-open-badge-fg: #fff;
    --s-ordersubmitted-bg: rgba(217,119,6,0.10);
    --s-ordersubmitted-fg: #b45309;
    --s-ordersubmitted-bd: rgba(217,119,6,0.28);
    --s-ordersubmitted-badge: rgba(217,119,6,0.85);
    --s-ordersubmitted-badge-fg: #fff;
    --s-lost-bg: rgba(239,68,68,0.08);
    --s-lost-fg: #dc2626;
    --s-lost-bd: rgba(239,68,68,0.22);
    --s-lost-badge: rgba(239,68,68,0.78);
    --s-lost-badge-fg: #fff;
    --s-ordered-bg: rgba(16,185,129,0.09);
    --s-ordered-fg: #065f46;
    --s-ordered-bd: rgba(16,185,129,0.22);
    --s-ordered-badge: rgba(16,185,129,0.80);
    --s-ordered-badge-fg: #fff;
    --s-revise-bg: rgba(239,68,68,0.08);
    --s-revise-fg: #dc2626;
    --s-revise-bd: rgba(239,68,68,0.22);
    --s-revise-badge: rgba(239,68,68,0.78);
    --s-revise-badge-fg: #fff;
    --s-rq-bg: rgba(234,88,12,0.09);
    --s-rq-fg: #c2410c;
    --s-rq-bd: rgba(234,88,12,0.25);
    --s-rq-badge: rgba(234,88,12,0.82);
    --s-rq-badge-fg: #fff;
    --s-pending-bg: rgba(124,58,237,0.08);
    --s-pending-fg: #6d28d9;
    --s-pending-bd: rgba(124,58,237,0.22);
    --s-pending-badge: rgba(124,58,237,0.80);
    --s-pending-badge-fg: #fff;
    --s-ready-bg: rgba(13,148,136,0.09);
    --s-ready-fg: #0f766e;
    --s-ready-bd: rgba(13,148,136,0.22);
    --s-ready-badge: rgba(13,148,136,0.80);
    --s-ready-badge-fg: #fff;
    --nq-price-color: #065f46;
    --nq-hint-color: #7a5a00;
    --nq-hint-bg: linear-gradient(180deg, rgba(241,184,40,0.20), rgba(241,184,40,0.11));
    --nq-hint-border: rgba(241,184,40,0.38);
}


/* ── PAGE WRAPPER & LAYOUT ───────────────────────────────── */

.quotes-page-wrapper[b-mrl3frzbfu] {
    min-height: 100vh;
    display: flex;
    flex-direction: column;
}

.quotes-page[b-mrl3frzbfu] {
    flex: 1;
    padding: 1rem 1.25rem;
}

@media (max-width: 575px) {
    .quotes-page[b-mrl3frzbfu] {
        padding: 0.65rem 0.75rem;
    }
}


/* ── FILTER PANEL ────────────────────────────────────────── */

.quotes-panel[b-mrl3frzbfu] {
    margin-bottom: 1rem;
}

.quotes-panel-inner[b-mrl3frzbfu] {
    background: var(--nq-panel-bg);
    border: 1px solid rgba(255,255,255,0.10);
    border-top: 3px solid var(--nq-accent);
    border-radius: 10px;
    padding: 0.85rem 1.1rem 0.75rem;
    box-shadow: 0 4px 20px rgba(0,0,0,0.35), inset 0 1px 0 rgba(255,255,255,0.04);
}

[data-bs-theme="light"] .quotes-panel-inner[b-mrl3frzbfu] {
    border-color: rgba(0,40,85,0.12);
    box-shadow: 0 2px 10px rgba(0,40,85,0.09), inset 0 1px 0 rgba(255,255,255,0.80);
}

.quotes-panel-header[b-mrl3frzbfu] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.7rem;
    padding-bottom: 0.6rem;
    border-bottom: 1px solid rgba(255,255,255,0.07);
}

[data-bs-theme="light"] .quotes-panel-header[b-mrl3frzbfu] {
    border-bottom-color: rgba(0,40,85,0.08);
}

.quotes-panel-title[b-mrl3frzbfu] {
    display: flex;
    align-items: center;
    gap: 0.6rem;
}

    .quotes-panel-title h3[b-mrl3frzbfu] {
        font-size: 0.85rem;
        font-weight: 900;
        letter-spacing: 0.12em;
        text-transform: uppercase;
        color: var(--nq-accent);
        margin: 0;
        text-shadow: 0 0 18px rgba(241,184,40,0.35);
    }

[data-bs-theme="light"] .quotes-panel-title h3[b-mrl3frzbfu] {
    text-shadow: none;
}

.quotes-count-badge[b-mrl3frzbfu] {
    display: inline-flex;
    align-items: center;
    padding: 4px 13px;
    border-radius: 999px;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0.06em;
    background: #F1B828;
    color: #1a1000;
    border: 1px solid rgba(255,200,50,0.55);
    box-shadow: 0 0 0 1px rgba(241,184,40,0.20), 0 2px 10px rgba(241,184,40,0.45), inset 0 1px 0 rgba(255,255,255,0.28);
}

[data-bs-theme="light"] .quotes-count-badge[b-mrl3frzbfu] {
    background: #e6a800;
    border-color: rgba(201,128,0,0.35);
    box-shadow: 0 2px 8px rgba(201,128,0,0.30), inset 0 1px 0 rgba(255,255,255,0.40);
}


/* ── FILTER TOOLBAR ──────────────────────────────────────── */

.quotes-filters[b-mrl3frzbfu] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.45rem 0.6rem;
    row-gap: 0.45rem;
}

    .quotes-filters > label[b-mrl3frzbfu] {
        font-size: 0.72rem;
        font-weight: 700;
        letter-spacing: 0.07em;
        text-transform: uppercase;
        color: var(--nq-muted);
        white-space: nowrap;
    }

    .quotes-filters .form-select[b-mrl3frzbfu],
    .quotes-filters .form-control[b-mrl3frzbfu] {
        height: 32px;
        font-size: 0.8rem;
        padding: 0 0.65rem;
        border-radius: 7px;
        border: 1px solid rgba(255,255,255,0.14);
        background: rgba(0,0,0,0.28);
        color: var(--nq-fg);
        min-width: 100px;
        box-shadow: inset 0 2px 5px rgba(0,0,0,0.30), 0 1px 0 rgba(255,255,255,0.05);
        transition: border-color 0.14s, box-shadow 0.14s;
    }

        .quotes-filters .form-select:focus[b-mrl3frzbfu],
        .quotes-filters .form-control:focus[b-mrl3frzbfu] {
            outline: none;
            border-color: var(--nq-accent);
            box-shadow: inset 0 2px 4px rgba(0,0,0,0.25), 0 0 0 2px var(--nq-accent-dim);
        }

[data-bs-theme="light"] .quotes-filters .form-select[b-mrl3frzbfu],
[data-bs-theme="light"] .quotes-filters .form-control[b-mrl3frzbfu] {
    border-color: rgba(0,40,85,0.18);
    background: rgba(255,255,255,0.85);
    box-shadow: inset 0 2px 4px rgba(0,40,85,0.08), 0 1px 2px rgba(0,40,85,0.06);
}

    [data-bs-theme="light"] .quotes-filters .form-select:focus[b-mrl3frzbfu],
    [data-bs-theme="light"] .quotes-filters .form-control:focus[b-mrl3frzbfu] {
        border-color: var(--nq-accent);
        box-shadow: inset 0 1px 3px rgba(0,40,85,0.06), 0 0 0 2px var(--nq-accent-dim);
    }

.quotes-filters .btn-solid.btn-neutral-solid[b-mrl3frzbfu] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    height: 34px;
    padding: 0 1.25rem;
    font-size: 0.75rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    border-radius: 7px;
    background: #0ea5e9;
    color: #ffffff;
    border: 1px solid rgba(56,189,248,0.60);
    white-space: nowrap;
    box-shadow: 0 0 0 1px rgba(14,165,233,0.25), 0 3px 12px rgba(14,165,233,0.45), inset 0 1px 0 rgba(255,255,255,0.22);
    transition: filter 0.14s, transform 0.12s, box-shadow 0.14s;
}

    .quotes-filters .btn-solid.btn-neutral-solid:hover[b-mrl3frzbfu] {
        filter: brightness(1.12);
        transform: translateY(-1px);
        box-shadow: 0 0 0 1px rgba(14,165,233,0.35), 0 5px 20px rgba(14,165,233,0.55), inset 0 1px 0 rgba(255,255,255,0.22);
    }

    .quotes-filters .btn-solid.btn-neutral-solid:active[b-mrl3frzbfu] {
        transform: translateY(0);
        filter: brightness(0.94);
        box-shadow: 0 1px 4px rgba(14,165,233,0.25);
    }

[data-bs-theme="light"] .quotes-filters .btn-solid.btn-neutral-solid[b-mrl3frzbfu] {
    background: #0284c7;
    border-color: rgba(2,132,199,0.50);
    box-shadow: 0 2px 10px rgba(2,132,199,0.35), inset 0 1px 0 rgba(255,255,255,0.25);
}

.quotes-filters .btn-outline-secondary.btn-sm[b-mrl3frzbfu] {
    height: 28px;
    width: 28px;
    padding: 0;
    font-size: 0.78rem;
    border-radius: 6px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid rgba(255,255,255,0.14);
    color: var(--nq-muted);
    background: rgba(255,255,255,0.05);
    transition: background 0.13s, color 0.13s, border-color 0.13s, transform 0.11s;
}

    .quotes-filters .btn-outline-secondary.btn-sm:hover[b-mrl3frzbfu] {
        background: rgba(239,68,68,0.14);
        border-color: rgba(239,68,68,0.35);
        color: #f87171;
        transform: translateY(-1px);
    }

[data-bs-theme="light"] .quotes-filters .btn-outline-secondary.btn-sm[b-mrl3frzbfu] {
    border-color: rgba(0,40,85,0.15);
    background: rgba(0,40,85,0.04);
    color: rgba(15,23,42,0.50);
}

    [data-bs-theme="light"] .quotes-filters .btn-outline-secondary.btn-sm:hover[b-mrl3frzbfu] {
        background: rgba(239,68,68,0.09);
        border-color: rgba(239,68,68,0.28);
        color: #dc2626;
    }

.quotes-filters .form-check[b-mrl3frzbfu] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    margin: 0;
    padding: 0;
    white-space: nowrap;
}

.quotes-filters .form-check-label[b-mrl3frzbfu] {
    font-size: 0.78rem;
    color: var(--nq-fg);
    cursor: pointer;
    user-select: none;
}

.quotes-filters .form-check-input[b-mrl3frzbfu] {
    cursor: pointer;
    width: 15px;
    height: 15px;
    margin: 0;
    flex-shrink: 0;
    accent-color: var(--nq-accent);
}

@media (max-width: 767px) {
    .quotes-filters[b-mrl3frzbfu] {
        flex-direction: column;
        align-items: flex-start;
    }

        .quotes-filters .form-select[b-mrl3frzbfu],
        .quotes-filters .form-control[b-mrl3frzbfu] {
            width: 100%;
            min-width: 0;
        }

        .quotes-filters .form-check[b-mrl3frzbfu] {
            margin-left: 0 !important;
        }
}


/* ── TIMELINE FILTER ─────────────────────────────────────── */

.quotes-timeline-group[b-mrl3frzbfu] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    background: rgba(0,0,0,0.25);
    border: 1px solid var(--nq-accent-ring);
    border-radius: 8px;
    padding: 0 0.65rem;
    height: 34px;
    flex-shrink: 0;
    box-shadow: inset 0 2px 6px rgba(0,0,0,0.30), 0 0 0 1px var(--nq-accent-dim), 0 1px 0 rgba(255,255,255,0.04);
    transition: border-color 0.15s, box-shadow 0.15s;
}

    .quotes-timeline-group:focus-within[b-mrl3frzbfu] {
        border-color: var(--nq-accent);
        box-shadow: inset 0 2px 5px rgba(0,0,0,0.25), 0 0 0 3px var(--nq-accent-dim);
    }

[data-bs-theme="light"] .quotes-timeline-group[b-mrl3frzbfu] {
    background: rgba(255,255,255,0.85);
    box-shadow: inset 0 2px 4px rgba(0,40,85,0.10), 0 1px 0 rgba(201,128,0,0.08);
}

    [data-bs-theme="light"] .quotes-timeline-group:focus-within[b-mrl3frzbfu] {
        border-color: var(--nq-accent);
        box-shadow: inset 0 1px 3px rgba(0,40,85,0.08), 0 0 0 3px var(--nq-accent-dim);
    }

.quotes-timeline-label[b-mrl3frzbfu] {
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--nq-accent);
    white-space: nowrap;
    flex-shrink: 0;
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
}

    .quotes-timeline-label i[b-mrl3frzbfu] {
        font-size: 0.80rem;
        filter: drop-shadow(0 0 3px var(--nq-accent-ring));
    }

.quotes-timeline-input[b-mrl3frzbfu] {
    border: none !important;
    background: transparent !important;
    height: 28px !important;
    font-size: 0.78rem !important;
    padding: 0 0.3rem !important;
    color: var(--nq-fg) !important;
    min-width: 120px;
    color-scheme: dark;
    box-shadow: none !important;
    outline: none !important;
}

    .quotes-timeline-input[b-mrl3frzbfu]::placeholder {
        color: var(--nq-muted);
    }

[data-bs-theme="light"] .quotes-timeline-input[b-mrl3frzbfu] {
    color-scheme: light;
}

.quotes-timeline-sep[b-mrl3frzbfu] {
    font-size: 0.68rem;
    color: var(--nq-accent);
    opacity: 0.65;
    white-space: nowrap;
    flex-shrink: 0;
    font-weight: 700;
}

.quotes-timeline-clear[b-mrl3frzbfu] {
    width: 20px;
    height: 20px;
    border-radius: 4px;
    border: 1px solid var(--nq-border) !important;
    background: transparent;
    color: var(--nq-muted);
    cursor: pointer;
    font-size: 0.65rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    line-height: 1;
    transition: background 0.13s, color 0.13s, border-color 0.13s;
    flex-shrink: 0;
}

    .quotes-timeline-clear:hover[b-mrl3frzbfu] {
        background: rgba(239,68,68,0.12);
        border-color: rgba(239,68,68,0.30) !important;
        color: #f87171;
    }

@media (max-width: 767px) {
    .quotes-timeline-group[b-mrl3frzbfu] {
        width: 100%;
        flex-wrap: wrap;
        height: auto;
        padding: 0.4rem 0.65rem;
        gap: 0.35rem;
    }

    .quotes-timeline-input[b-mrl3frzbfu] {
        min-width: 0;
        flex: 1;
    }
}


/* ── HINT ────────────────────────────────────────────────── */

.quotes-hint[b-mrl3frzbfu] {
    margin-top: 0.6rem;
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.55rem 1rem 0.55rem 0.85rem;
    font-size: 0.73rem;
    font-weight: 600;
    line-height: 1.4;
    letter-spacing: 0.01em;
    color: #ffe082;
    background: rgba(241,184,40,0.18);
    border: 1px solid rgba(241,184,40,0.35);
    border-left: 3px solid #F1B828;
    border-radius: 8px;
    box-shadow: 0 2px 12px rgba(241,184,40,0.18), inset 0 1px 0 rgba(255,255,255,0.06);
}

    .quotes-hint[b-mrl3frzbfu]::before {
        content: "💡";
        font-size: 0.85rem;
        flex-shrink: 0;
        line-height: 1;
    }

    .quotes-hint strong[b-mrl3frzbfu] {
        font-weight: 900;
        color: #F1B828;
        text-shadow: 0 0 12px rgba(241,184,40,0.40);
    }

[data-bs-theme="light"] .quotes-hint[b-mrl3frzbfu] {
    color: #7a5000;
    background: rgba(241,184,40,0.14);
    border-color: rgba(201,128,0,0.30);
    border-left-color: #c98000;
    box-shadow: 0 2px 8px rgba(201,128,0,0.12);
}

    [data-bs-theme="light"] .quotes-hint strong[b-mrl3frzbfu] {
        color: #c98000;
        text-shadow: none;
    }


/* ── AUTOCOMPLETE ────────────────────────────────────────── */

.autocomplete-wrap[b-mrl3frzbfu] {
    min-width: 190px;
}

.autocomplete-dropdown[b-mrl3frzbfu] {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: 1050;
    list-style: none;
    margin: 3px 0 0;
    padding: 5px 0;
    background: #1e2840;
    border: 1px solid rgba(255,255,255,0.14);
    border-radius: 10px;
    box-shadow: 0 12px 36px rgba(0,0,0,0.55), 0 2px 8px rgba(0,0,0,0.35);
    max-height: 220px;
    overflow-y: auto;
}

    .autocomplete-dropdown li[b-mrl3frzbfu] {
        padding: 0.45rem 0.9rem;
        font-size: 0.8rem;
        font-weight: 500;
        cursor: pointer;
        color: rgba(255,255,255,0.82);
        transition: background 0.12s, color 0.12s;
    }

        .autocomplete-dropdown li:hover[b-mrl3frzbfu] {
            background: var(--nq-accent-dim);
            color: var(--nq-accent);
        }

[data-bs-theme="light"] .autocomplete-dropdown[b-mrl3frzbfu] {
    background: #ffffff;
    border-color: rgba(0,40,85,0.14);
    box-shadow: 0 10px 30px rgba(0,40,85,0.16), 0 2px 6px rgba(0,40,85,0.08);
}

    [data-bs-theme="light"] .autocomplete-dropdown li[b-mrl3frzbfu] {
        color: #1a2a3a;
    }

        [data-bs-theme="light"] .autocomplete-dropdown li:hover[b-mrl3frzbfu] {
            background: var(--nq-accent-dim);
            color: var(--nq-accent);
        }


/* ── TABS ────────────────────────────────────────────────── */

.quotes-tabs[b-mrl3frzbfu] {
    display: flex;
    align-items: stretch;
    gap: 0.3rem;
    margin-bottom: 0.85rem;
    border-bottom: 2px solid var(--nq-border);
    flex-wrap: wrap;
    padding-bottom: 0;
}

.quotes-tab-btn[b-mrl3frzbfu] {
    display: inline-flex;
    align-items: center;
    gap: 0.4rem;
    padding: 0.5rem 1.15rem;
    font-size: 0.75rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    border: 1px solid var(--nq-border);
    border-bottom: 2px solid transparent;
    background: rgba(255,255,255,0.04);
    color: var(--nq-muted);
    cursor: pointer;
    margin-bottom: -2px;
    border-radius: 7px 7px 0 0;
    transition: color 0.15s, border-color 0.15s, background 0.15s, box-shadow 0.15s;
    white-space: nowrap;
    box-shadow: inset 0 -2px 6px rgba(0,0,0,0.18);
}

    .quotes-tab-btn:hover[b-mrl3frzbfu] {
        color: var(--nq-fg);
        background: rgba(255,255,255,0.08);
        border-color: rgba(255,255,255,0.14);
    }

[data-bs-theme="light"] .quotes-tab-btn[b-mrl3frzbfu] {
    background: rgba(0,40,85,0.05);
    border-color: rgba(0,40,85,0.10);
    box-shadow: inset 0 -2px 5px rgba(0,40,85,0.07);
}

    [data-bs-theme="light"] .quotes-tab-btn:hover[b-mrl3frzbfu] {
        background: rgba(0,40,85,0.09);
        border-color: rgba(0,40,85,0.16);
    }

/* ── Active tab base (child 1 — Active: amber/gold) ── */

.quotes-tab-btn.is-active[b-mrl3frzbfu] {
    color: var(--nq-accent);
    border-color: var(--nq-border);
    border-bottom-color: var(--nq-card-bg);
    background: var(--nq-card-bg);
    box-shadow: none;
    border-top: 2px solid var(--nq-accent);
    padding-top: calc(0.5rem - 1px);
}

    .quotes-tab-btn.is-active i[b-mrl3frzbfu] {
        color: var(--nq-accent);
        filter: drop-shadow(0 0 4px var(--nq-accent-ring));
    }

/* child 2 — Needs Action: purple */
.quotes-tabs .quotes-tab-btn.is-active:nth-child(2)[b-mrl3frzbfu] {
    color: #c084fc;
    border-top-color: #a855f7;
    background: var(--nq-card-bg);
    border-bottom-color: var(--nq-card-bg);
    box-shadow: none;
}

    .quotes-tabs .quotes-tab-btn.is-active:nth-child(2) i[b-mrl3frzbfu] {
        color: #c084fc;
        filter: drop-shadow(0 0 4px rgba(168,85,247,0.55));
    }

/* child 3 — Awaiting Response: sky indigo */
.quotes-tabs .quotes-tab-btn.is-active:nth-child(3)[b-mrl3frzbfu] {
    color: #818cf8;
    border-top-color: #6366f1;
    background: var(--nq-card-bg);
    border-bottom-color: var(--nq-card-bg);
    box-shadow: none;
}

    .quotes-tabs .quotes-tab-btn.is-active:nth-child(3) i[b-mrl3frzbfu] {
        color: #818cf8;
        filter: drop-shadow(0 0 4px rgba(99,102,241,0.55));
    }

/* child 4 — Complete: green */
.quotes-tabs .quotes-tab-btn.is-active:nth-child(4)[b-mrl3frzbfu] {
    color: #34d399;
    border-top-color: #10b981;
    background: var(--nq-card-bg);
    border-bottom-color: var(--nq-card-bg);
    box-shadow: none;
}

    .quotes-tabs .quotes-tab-btn.is-active:nth-child(4) i[b-mrl3frzbfu] {
        color: #34d399;
        filter: drop-shadow(0 0 4px rgba(52,211,153,0.50));
    }

/* Inactive icon tints */
.quotes-tabs .quotes-tab-btn:not(.is-active):nth-child(1) i[b-mrl3frzbfu] {
    color: rgba(241,184,40,0.50);
}

.quotes-tabs .quotes-tab-btn:not(.is-active):nth-child(2) i[b-mrl3frzbfu] {
    color: rgba(168,85,247,0.55);
}

.quotes-tabs .quotes-tab-btn:not(.is-active):nth-child(3) i[b-mrl3frzbfu] {
    color: rgba(99,102,241,0.55);
}

.quotes-tabs .quotes-tab-btn:not(.is-active):nth-child(4) i[b-mrl3frzbfu] {
    color: rgba(52,211,153,0.55);
}

/* ── Light mode per-tab active overrides ── */

[data-bs-theme="light"] .quotes-tabs .quotes-tab-btn.is-active:nth-child(1)[b-mrl3frzbfu] {
    color: #c98000;
    border-top-color: #c98000;
    background: var(--nq-card-bg);
    border-bottom-color: var(--nq-card-bg);
    box-shadow: none;
}

    [data-bs-theme="light"] .quotes-tabs .quotes-tab-btn.is-active:nth-child(1) i[b-mrl3frzbfu] {
        color: #c98000;
        filter: none;
    }

[data-bs-theme="light"] .quotes-tabs .quotes-tab-btn.is-active:nth-child(2)[b-mrl3frzbfu] {
    color: #6d28d9;
    border-top-color: #7c3aed;
    background: var(--nq-card-bg);
    border-bottom-color: var(--nq-card-bg);
    box-shadow: none;
}

    [data-bs-theme="light"] .quotes-tabs .quotes-tab-btn.is-active:nth-child(2) i[b-mrl3frzbfu] {
        color: #6d28d9;
        filter: none;
    }

[data-bs-theme="light"] .quotes-tabs .quotes-tab-btn.is-active:nth-child(3)[b-mrl3frzbfu] {
    color: #4338ca;
    border-top-color: #4f46e5;
    background: var(--nq-card-bg);
    border-bottom-color: var(--nq-card-bg);
    box-shadow: none;
}

    [data-bs-theme="light"] .quotes-tabs .quotes-tab-btn.is-active:nth-child(3) i[b-mrl3frzbfu] {
        color: #4338ca;
        filter: none;
    }

[data-bs-theme="light"] .quotes-tabs .quotes-tab-btn.is-active:nth-child(4)[b-mrl3frzbfu] {
    color: #065f46;
    border-top-color: #10b981;
    background: var(--nq-card-bg);
    border-bottom-color: var(--nq-card-bg);
    box-shadow: none;
}

    [data-bs-theme="light"] .quotes-tabs .quotes-tab-btn.is-active:nth-child(4) i[b-mrl3frzbfu] {
        color: #065f46;
        filter: none;
    }

[data-bs-theme="light"] .quotes-tabs .quotes-tab-btn:not(.is-active):nth-child(1) i[b-mrl3frzbfu] {
    color: rgba(201,128,0,0.45);
}

[data-bs-theme="light"] .quotes-tabs .quotes-tab-btn:not(.is-active):nth-child(2) i[b-mrl3frzbfu] {
    color: rgba(124,58,237,0.45);
}

[data-bs-theme="light"] .quotes-tabs .quotes-tab-btn:not(.is-active):nth-child(3) i[b-mrl3frzbfu] {
    color: rgba(79,70,229,0.45);
}

[data-bs-theme="light"] .quotes-tabs .quotes-tab-btn:not(.is-active):nth-child(4) i[b-mrl3frzbfu] {
    color: rgba(16,185,129,0.50);
}

/* ── Tab badge ── */

.quotes-tab-badge[b-mrl3frzbfu] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 20px;
    height: 18px;
    padding: 0 5px;
    border-radius: 999px;
    font-size: 0.62rem;
    font-weight: 900;
    letter-spacing: 0;
    background: rgba(168,85,247,0.18);
    color: #c084fc;
    border: 1px solid rgba(168,85,247,0.32);
    transition: background 0.15s, color 0.15s;
}

/* Active badge: child 1 (Active) uses gold */
.quotes-tab-btn.is-active .quotes-tab-badge[b-mrl3frzbfu] {
    background: var(--nq-accent-dim);
    color: var(--nq-accent);
    border-color: var(--nq-accent-ring);
}

/* Needs Action active badge stays purple */
.quotes-tabs .quotes-tab-btn.is-active:nth-child(2) .quotes-tab-badge[b-mrl3frzbfu] {
    background: rgba(168,85,247,0.22);
    color: #c084fc;
    border-color: rgba(168,85,247,0.40);
}

/* Awaiting Response active badge: indigo */
.quotes-tabs .quotes-tab-btn.is-active:nth-child(3) .quotes-tab-badge[b-mrl3frzbfu] {
    background: rgba(99,102,241,0.22);
    color: #818cf8;
    border-color: rgba(99,102,241,0.40);
}

[data-bs-theme="light"] .quotes-tab-badge[b-mrl3frzbfu] {
    background: rgba(124,58,237,0.10);
    color: #6d28d9;
    border-color: rgba(124,58,237,0.25);
}

[data-bs-theme="light"] .quotes-tab-btn.is-active .quotes-tab-badge[b-mrl3frzbfu] {
    background: rgba(201,128,0,0.12);
    color: #c98000;
    border-color: rgba(201,128,0,0.30);
}

[data-bs-theme="light"] .quotes-tabs .quotes-tab-btn.is-active:nth-child(2) .quotes-tab-badge[b-mrl3frzbfu] {
    background: rgba(124,58,237,0.12);
    color: #6d28d9;
    border-color: rgba(124,58,237,0.28);
}

[data-bs-theme="light"] .quotes-tabs .quotes-tab-btn.is-active:nth-child(3) .quotes-tab-badge[b-mrl3frzbfu] {
    background: rgba(79,70,229,0.12);
    color: #4338ca;
    border-color: rgba(79,70,229,0.28);
}

@media (max-width: 575px) {
    .quotes-tab-btn[b-mrl3frzbfu] {
        padding: 0.4rem 0.7rem;
        font-size: 0.68rem;
    }
}


/* ── QUOTES LIST — RESPONSIVE CARD GRID ──────────────────── */

.quotes-list[b-mrl3frzbfu] {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
    gap: 0.75rem;
    align-items: stretch;
}

@media (min-width: 576px) and (max-width: 991px) {
    .quotes-list[b-mrl3frzbfu] {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 575px) {
    .quotes-list[b-mrl3frzbfu] {
        grid-template-columns: 1fr;
        gap: 0.6rem;
    }
}


/* ── QUOTE CARD ──────────────────────────────────────────── */

.quote-card[b-mrl3frzbfu] {
    background: var(--nq-card-bg);
    border: 1px solid rgba(255,255,255,0.08);
    border-radius: 10px;
    overflow: hidden;
    transition: background 0.18s, box-shadow 0.18s, border-color 0.18s, transform 0.15s;
    min-width: 0;
    display: flex;
    flex-direction: column;
    box-shadow: var(--nq-card-shadow);
}

    .quote-card:hover[b-mrl3frzbfu] {
        border-color: var(--nq-accent-ring);
        box-shadow: 0 12px 40px rgba(0,0,0,0.70), 0 3px 10px rgba(0,0,0,0.45), 0 0 0 1px var(--nq-accent-dim), inset 0 1px 0 rgba(255,255,255,0.06);
        transform: translateY(-2px);
    }

[data-bs-theme="light"] .quote-card[b-mrl3frzbfu] {
    border-color: rgba(0,40,85,0.10);
    box-shadow: var(--nq-card-shadow);
}

    [data-bs-theme="light"] .quote-card:hover[b-mrl3frzbfu] {
        box-shadow: 0 8px 28px rgba(0,40,85,0.18), 0 2px 6px rgba(0,40,85,0.10), 0 0 0 1px var(--nq-accent-dim);
        transform: translateY(-2px);
    }

/* Needs-action subtle ring */
.quote-card.needs-action-card[b-mrl3frzbfu] {
    border-color: var(--s-pending-bd);
    box-shadow: var(--nq-card-shadow), 0 0 0 1px rgba(168,85,247,0.15);
}

[data-bs-theme="light"] .quote-card.needs-action-card[b-mrl3frzbfu] {
    box-shadow: var(--nq-card-shadow), 0 0 0 1px rgba(124,58,237,0.15);
}


/* ── STATUS STRIP ────────────────────────────────────────── */

.quote-status-strip[b-mrl3frzbfu] {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    padding: 0.38rem 0.75rem 0.32rem;
    font-size: 0.67rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    user-select: none;
    transition: filter 0.14s;
    position: relative;
}

.qc-strip-top[b-mrl3frzbfu] {
    display: flex;
    align-items: center;
    gap: 0.40rem;
    min-width: 0;
}

.qc-strip-bottom[b-mrl3frzbfu] {
    display: flex;
    align-items: center;
    gap: 0.30rem;
    margin-top: 0.22rem;
    min-width: 0;
}

.quote-status-strip.is-clickable[b-mrl3frzbfu] {
    cursor: pointer;
}

    .quote-status-strip.is-clickable:hover[b-mrl3frzbfu] {
        filter: brightness(1.15);
    }

.quote-status-strip.is-locked[b-mrl3frzbfu] {
    cursor: default;
}


/* ── STATUS COLORS — bolder, more saturated ──────────────── */

.quote-status-strip.status-open[b-mrl3frzbfu] {
    background: linear-gradient(135deg, rgba(56,189,248,0.22) 0%, rgba(56,189,248,0.13) 100%);
    color: var(--s-open-fg);
    border-bottom: 2px solid var(--s-open-bd);
    border-left: 3px solid var(--s-open-fg);
}

.quote-status-strip.status-ordersubmitted[b-mrl3frzbfu] {
    background: linear-gradient(135deg, rgba(251,191,36,0.24) 0%, rgba(251,191,36,0.14) 100%);
    color: var(--s-ordersubmitted-fg);
    border-bottom: 2px solid var(--s-ordersubmitted-bd);
    border-left: 3px solid var(--s-ordersubmitted-fg);
}

.quote-status-strip.status-lost[b-mrl3frzbfu] {
    background: linear-gradient(135deg, rgba(239,68,68,0.22) 0%, rgba(239,68,68,0.13) 100%);
    color: var(--s-lost-fg);
    border-bottom: 2px solid var(--s-lost-bd);
    border-left: 3px solid var(--s-lost-fg);
}

.quote-status-strip.status-revise-order[b-mrl3frzbfu] {
    background: linear-gradient(135deg, rgba(239,68,68,0.22) 0%, rgba(239,68,68,0.13) 100%);
    color: var(--s-lost-fg);
    border-bottom: 2px solid var(--s-lost-bd);
    border-left: 3px solid var(--s-lost-fg);
}

.quote-status-strip.status-ordered[b-mrl3frzbfu] {
    background: linear-gradient(135deg, rgba(52,211,153,0.22) 0%, rgba(52,211,153,0.13) 100%);
    color: var(--s-ordered-fg);
    border-bottom: 2px solid var(--s-ordered-bd);
    border-left: 3px solid var(--s-ordered-fg);
}

.quote-status-strip.status-revise[b-mrl3frzbfu] {
    background: linear-gradient(135deg, rgba(239,68,68,0.22) 0%, rgba(239,68,68,0.13) 100%);
    color: var(--s-revise-fg);
    border-bottom: 2px solid var(--s-revise-bd);
    border-left: 3px solid var(--s-revise-fg);
}

.quote-status-strip.status-revisequote[b-mrl3frzbfu] {
    background: linear-gradient(135deg, rgba(251,146,60,0.22) 0%, rgba(251,146,60,0.13) 100%);
    color: var(--s-rq-fg);
    border-bottom: 2px solid var(--s-rq-bd);
    border-left: 3px solid var(--s-rq-fg);
}

.quote-status-strip.status-pending[b-mrl3frzbfu] {
    background: linear-gradient(135deg, rgba(168,85,247,0.22) 0%, rgba(168,85,247,0.13) 100%);
    color: var(--s-pending-fg);
    border-bottom: 2px solid var(--s-pending-bd);
    border-left: 3px solid var(--s-pending-fg);
}

.quote-status-strip.status-ready[b-mrl3frzbfu] {
    background: linear-gradient(135deg, rgba(20,184,166,0.22) 0%, rgba(20,184,166,0.13) 100%);
    color: var(--s-ready-fg);
    border-bottom: 2px solid var(--s-ready-bd);
    border-left: 3px solid var(--s-ready-fg);
}

/* Light mode — slightly richer strip backgrounds */
[data-bs-theme="light"] .quote-status-strip.status-open[b-mrl3frzbfu] {
    background: linear-gradient(135deg, rgba(14,165,233,0.18) 0%, rgba(14,165,233,0.09) 100%);
    border-left-color: var(--s-open-fg);
}

[data-bs-theme="light"] .quote-status-strip.status-ordersubmitted[b-mrl3frzbfu] {
    background: linear-gradient(135deg, rgba(217,119,6,0.18) 0%, rgba(217,119,6,0.09) 100%);
    border-left-color: var(--s-ordersubmitted-fg);
}

[data-bs-theme="light"] .quote-status-strip.status-lost[b-mrl3frzbfu],
[data-bs-theme="light"] .quote-status-strip.status-revise[b-mrl3frzbfu],
[data-bs-theme="light"] .quote-status-strip.status-revise-order[b-mrl3frzbfu] {
    background: linear-gradient(135deg, rgba(239,68,68,0.16) 0%, rgba(239,68,68,0.08) 100%);
    border-left-color: var(--s-lost-fg);
}

[data-bs-theme="light"] .quote-status-strip.status-ordered[b-mrl3frzbfu] {
    background: linear-gradient(135deg, rgba(16,185,129,0.16) 0%, rgba(16,185,129,0.08) 100%);
    border-left-color: var(--s-ordered-fg);
}

[data-bs-theme="light"] .quote-status-strip.status-revisequote[b-mrl3frzbfu] {
    background: linear-gradient(135deg, rgba(234,88,12,0.16) 0%, rgba(234,88,12,0.08) 100%);
    border-left-color: var(--s-rq-fg);
}

[data-bs-theme="light"] .quote-status-strip.status-pending[b-mrl3frzbfu] {
    background: linear-gradient(135deg, rgba(124,58,237,0.14) 0%, rgba(124,58,237,0.07) 100%);
    border-left-color: var(--s-pending-fg);
}

[data-bs-theme="light"] .quote-status-strip.status-ready[b-mrl3frzbfu] {
    background: linear-gradient(135deg, rgba(13,148,136,0.16) 0%, rgba(13,148,136,0.08) 100%);
    border-left-color: var(--s-ready-fg);
}


/* ── STATUS INDICATOR — solid pill badge (not dot) ───────── */

.qc-status-dot[b-mrl3frzbfu] {
    /* Repurposed: now a solid colored pill badge, not a circle dot */
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: currentColor;
    flex-shrink: 0;
    /* Strong glow ring applied below per-status */
}

/* Dark mode (default :root AND explicit [data-bs-theme="dark"]) */
:root .quote-status-strip.status-open .qc-status-dot[b-mrl3frzbfu],
[data-bs-theme="dark"] .quote-status-strip.status-open .qc-status-dot[b-mrl3frzbfu] {
    background: #38bdf8;
    box-shadow: 0 0 0 2px rgba(56,189,248,0.30), 0 0 10px 3px rgba(56,189,248,0.65);
}

:root .quote-status-strip.status-ordersubmitted .qc-status-dot[b-mrl3frzbfu],
[data-bs-theme="dark"] .quote-status-strip.status-ordersubmitted .qc-status-dot[b-mrl3frzbfu] {
    background: #fbbf24;
    box-shadow: 0 0 0 2px rgba(251,191,36,0.30), 0 0 10px 3px rgba(251,191,36,0.65);
}

:root .quote-status-strip.status-ordered .qc-status-dot[b-mrl3frzbfu],
[data-bs-theme="dark"] .quote-status-strip.status-ordered .qc-status-dot[b-mrl3frzbfu] {
    background: #34d399;
    box-shadow: 0 0 0 2px rgba(52,211,153,0.28), 0 0 10px 3px rgba(52,211,153,0.65);
}

:root .quote-status-strip.status-lost .qc-status-dot[b-mrl3frzbfu],
:root .quote-status-strip.status-revise .qc-status-dot[b-mrl3frzbfu],
:root .quote-status-strip.status-revise-order .qc-status-dot[b-mrl3frzbfu],
[data-bs-theme="dark"] .quote-status-strip.status-lost .qc-status-dot[b-mrl3frzbfu],
[data-bs-theme="dark"] .quote-status-strip.status-revise .qc-status-dot[b-mrl3frzbfu],
[data-bs-theme="dark"] .quote-status-strip.status-revise-order .qc-status-dot[b-mrl3frzbfu] {
    background: #f87171;
    box-shadow: 0 0 0 2px rgba(239,68,68,0.28), 0 0 10px 3px rgba(239,68,68,0.60);
}

:root .quote-status-strip.status-revisequote .qc-status-dot[b-mrl3frzbfu],
[data-bs-theme="dark"] .quote-status-strip.status-revisequote .qc-status-dot[b-mrl3frzbfu] {
    background: #fb923c;
    box-shadow: 0 0 0 2px rgba(251,146,60,0.28), 0 0 10px 3px rgba(251,146,60,0.65);
}

:root .quote-status-strip.status-pending .qc-status-dot[b-mrl3frzbfu],
[data-bs-theme="dark"] .quote-status-strip.status-pending .qc-status-dot[b-mrl3frzbfu] {
    background: #c084fc;
    box-shadow: 0 0 0 2px rgba(168,85,247,0.28), 0 0 10px 3px rgba(168,85,247,0.65);
}

:root .quote-status-strip.status-ready .qc-status-dot[b-mrl3frzbfu],
[data-bs-theme="dark"] .quote-status-strip.status-ready .qc-status-dot[b-mrl3frzbfu] {
    background: #2dd4bf;
    box-shadow: 0 0 0 2px rgba(20,184,166,0.28), 0 0 10px 3px rgba(20,184,166,0.65);
}

/* Light mode — solid color, soft shadow ring, no glow */
[data-bs-theme="light"] .qc-status-dot[b-mrl3frzbfu] {
    box-shadow: 0 0 0 2px rgba(0,0,0,0.12), 0 1px 3px rgba(0,0,0,0.15);
}

[data-bs-theme="light"] .quote-status-strip.status-open .qc-status-dot[b-mrl3frzbfu] {
    background: #0369a1;
}

[data-bs-theme="light"] .quote-status-strip.status-ordersubmitted .qc-status-dot[b-mrl3frzbfu] {
    background: #b45309;
}

[data-bs-theme="light"] .quote-status-strip.status-ordered .qc-status-dot[b-mrl3frzbfu] {
    background: #065f46;
}

[data-bs-theme="light"] .quote-status-strip.status-lost .qc-status-dot[b-mrl3frzbfu],
[data-bs-theme="light"] .quote-status-strip.status-revise .qc-status-dot[b-mrl3frzbfu],
[data-bs-theme="light"] .quote-status-strip.status-revise-order .qc-status-dot[b-mrl3frzbfu] {
    background: #dc2626;
}

[data-bs-theme="light"] .quote-status-strip.status-revisequote .qc-status-dot[b-mrl3frzbfu] {
    background: #c2410c;
}

[data-bs-theme="light"] .quote-status-strip.status-pending .qc-status-dot[b-mrl3frzbfu] {
    background: #6d28d9;
}

[data-bs-theme="light"] .quote-status-strip.status-ready .qc-status-dot[b-mrl3frzbfu] {
    background: #0f766e;
}


/* ── STATUS LABEL ────────────────────────────────────────── */

.qc-status-label[b-mrl3frzbfu] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    min-width: 0;
    flex-shrink: 1;
}


/* ── IAC QUOTE NUMBER BADGE ──────────────────────────────── */

.qc-quote-badge[b-mrl3frzbfu] {
    font-size: 0.57rem;
    font-weight: 800;
    letter-spacing: 0.01em;
    padding: 2px 7px;
    border-radius: 5px;
    white-space: nowrap;
    border: none;
    background: rgba(255,255,255,0.14);
    color: #fff;
}

[data-bs-theme="light"] .qc-quote-badge[b-mrl3frzbfu] {
    background: rgba(0,0,0,0.10);
    color: #1a2a3a;
}

.quote-status-strip.status-open .qc-quote-badge[b-mrl3frzbfu] {
    background: var(--s-open-badge);
    color: var(--s-open-badge-fg);
}

.quote-status-strip.status-ordersubmitted .qc-quote-badge[b-mrl3frzbfu] {
    background: var(--s-ordersubmitted-badge);
    color: var(--s-ordersubmitted-badge-fg);
}

.quote-status-strip.status-ordered .qc-quote-badge[b-mrl3frzbfu] {
    background: var(--s-ordered-badge);
    color: var(--s-ordered-badge-fg);
}

.quote-status-strip.status-lost .qc-quote-badge[b-mrl3frzbfu],
.quote-status-strip.status-revise .qc-quote-badge[b-mrl3frzbfu],
.quote-status-strip.status-revise-order .qc-quote-badge[b-mrl3frzbfu] {
    background: var(--s-lost-badge);
    color: var(--s-lost-badge-fg);
}

.quote-status-strip.status-revisequote .qc-quote-badge[b-mrl3frzbfu] {
    background: var(--s-rq-badge);
    color: var(--s-rq-badge-fg);
}

.quote-status-strip.status-pending .qc-quote-badge[b-mrl3frzbfu] {
    background: var(--s-pending-badge);
    color: var(--s-pending-badge-fg);
}

.quote-status-strip.status-ready .qc-quote-badge[b-mrl3frzbfu] {
    background: var(--s-ready-badge);
    color: var(--s-ready-badge-fg);
}


/* ── REV BADGE ───────────────────────────────────────────── */

.qc-rev-badge[b-mrl3frzbfu] {
    font-size: 0.57rem;
    font-weight: 700;
    letter-spacing: 0.07em;
    padding: 1px 6px;
    border-radius: 20px;
    white-space: nowrap;
    background: transparent;
    border: 1.5px dashed rgba(255,255,255,0.35);
    color: rgba(255,255,255,0.65);
}

[data-bs-theme="light"] .qc-rev-badge[b-mrl3frzbfu] {
    border-color: rgba(0,0,0,0.22);
    color: rgba(0,0,0,0.52);
}

.quote-status-strip.status-open .qc-rev-badge[b-mrl3frzbfu] {
    border-color: var(--s-open-bd);
    color: var(--s-open-fg);
}

.quote-status-strip.status-ordersubmitted .qc-rev-badge[b-mrl3frzbfu] {
    border-color: var(--s-ordersubmitted-bd);
    color: var(--s-ordersubmitted-fg);
}

.quote-status-strip.status-ordered .qc-rev-badge[b-mrl3frzbfu] {
    border-color: var(--s-ordered-bd);
    color: var(--s-ordered-fg);
}

.quote-status-strip.status-lost .qc-rev-badge[b-mrl3frzbfu],
.quote-status-strip.status-revise .qc-rev-badge[b-mrl3frzbfu],
.quote-status-strip.status-revise-order .qc-rev-badge[b-mrl3frzbfu] {
    border-color: var(--s-lost-bd);
    color: var(--s-lost-fg);
}

.quote-status-strip.status-revisequote .qc-rev-badge[b-mrl3frzbfu] {
    border-color: var(--s-rq-bd);
    color: var(--s-rq-fg);
}

.quote-status-strip.status-pending .qc-rev-badge[b-mrl3frzbfu] {
    border-color: var(--s-pending-bd);
    color: var(--s-pending-fg);
}

.quote-status-strip.status-ready .qc-rev-badge[b-mrl3frzbfu] {
    border-color: var(--s-ready-bd);
    color: var(--s-ready-fg);
}


/* ── CARD BODY ───────────────────────────────────────────── */

.quote-card-body[b-mrl3frzbfu] {
    padding: 0.65rem 0.85rem 0.65rem;
    display: flex;
    flex-direction: column;
    gap: 0.45rem;
    flex: 1;
}


/* ── REVISION BANNER ─────────────────────────────────────── */

.qc-revise-banner[b-mrl3frzbfu] {
    display: flex;
    align-items: center;
    padding: 0.15rem 0 0.05rem;
}

.qc-revise-info-btn[b-mrl3frzbfu] {
    text-decoration: none !important;
    color: inherit !important;
    font-size: 0.80rem;
    line-height: 1;
    opacity: 0.80;
    transition: opacity 0.12s;
    padding: 0 !important;
    background: none !important;
    border: none !important;
}

    .qc-revise-info-btn:hover[b-mrl3frzbfu] {
        opacity: 1;
    }

.qc-revise-review-btn[b-mrl3frzbfu] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 4px 11px;
    border-radius: 6px;
    font-size: 0.70rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    cursor: pointer;
    border: 1.5px solid transparent;
    transition: background 0.13s, color 0.13s, border-color 0.13s, transform 0.11s;
    white-space: nowrap;
    background: none;
    line-height: 1.3;
}

    .qc-revise-review-btn:hover[b-mrl3frzbfu] {
        transform: translateY(-1px);
    }

    .qc-revise-review-btn:active[b-mrl3frzbfu] {
        transform: translateY(0);
    }

.qc-revise-review-btn--std[b-mrl3frzbfu] {
    background: rgba(239,68,68,0.10);
    color: var(--s-revise-fg);
    border-color: var(--s-revise-bd);
}

    .qc-revise-review-btn--std:hover[b-mrl3frzbfu] {
        background: rgba(239,68,68,0.18);
        border-color: rgba(239,68,68,0.45);
    }

.qc-revise-review-btn--rfq[b-mrl3frzbfu] {
    background: rgba(251,146,60,0.10);
    color: var(--s-rq-fg);
    border-color: var(--s-rq-bd);
}

    .qc-revise-review-btn--rfq:hover[b-mrl3frzbfu] {
        background: rgba(251,146,60,0.18);
        border-color: rgba(251,146,60,0.45);
    }

[data-bs-theme="light"] .qc-revise-review-btn--std[b-mrl3frzbfu] {
    background: rgba(239,68,68,0.07);
    color: #dc2626;
    border-color: rgba(239,68,68,0.25);
}

    [data-bs-theme="light"] .qc-revise-review-btn--std:hover[b-mrl3frzbfu] {
        background: rgba(239,68,68,0.13);
        border-color: rgba(239,68,68,0.40);
        color: #b91c1c;
    }

[data-bs-theme="light"] .qc-revise-review-btn--rfq[b-mrl3frzbfu] {
    background: rgba(234,88,12,0.08);
    color: #c2410c;
    border-color: rgba(234,88,12,0.28);
}

    [data-bs-theme="light"] .qc-revise-review-btn--rfq:hover[b-mrl3frzbfu] {
        background: rgba(234,88,12,0.15);
        border-color: rgba(234,88,12,0.42);
        color: #9a3412;
    }


/* ── PROJECT ROW ─────────────────────────────────────────── */

.qc-project-row[b-mrl3frzbfu] {
    display: flex;
    align-items: flex-start;
}

.qc-project-block[b-mrl3frzbfu] {
    display: flex;
    flex-direction: column;
    gap: 0.08rem;
    flex: 1;
    min-width: 0;
}

.qc-project-name[b-mrl3frzbfu] {
    font-size: 0.88rem;
    font-weight: 700;
    color: var(--nq-fg);
    line-height: 1.2;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}


/* ── FIELD LABEL ─────────────────────────────────────────── */

.qc-field-label[b-mrl3frzbfu] {
    font-size: 0.57rem;
    font-weight: 900;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    color: var(--nq-muted);
}


/* ── INFO GROUPS ─────────────────────────────────────────── */

.qc-info-groups[b-mrl3frzbfu] {
    display: flex;
    flex-direction: column;
    gap: 0.35rem;
}

.qc-info-group[b-mrl3frzbfu] {
    display: flex;
    flex-direction: column;
    gap: 0.18rem;
}


/* ── CHIPS ───────────────────────────────────────────────── */

.qc-chips-row[b-mrl3frzbfu] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.28rem;
}

.qc-chip[b-mrl3frzbfu] {
    display: inline-flex;
    align-items: center;
    gap: 0.22rem;
    padding: 2px 7px;
    border-radius: 20px;
    font-size: 0.70rem;
    font-weight: 600;
    background: var(--nq-chip-bg);
    color: var(--nq-fg);
    border: 1px solid var(--nq-border);
    white-space: nowrap;
}

.qc-chip--company[b-mrl3frzbfu] {
    background: rgba(148,163,184,0.10);
    color: #94a3b8;
    border-color: rgba(148,163,184,0.22);
}

[data-bs-theme="light"] .qc-chip--company[b-mrl3frzbfu] {
    background: rgba(100,116,139,0.09);
    color: #475569;
    border-color: rgba(100,116,139,0.22);
}

.qc-chip--contact[b-mrl3frzbfu] {
    background: rgba(161,161,170,0.09);
    color: #a1a1aa;
    border-color: rgba(161,161,170,0.20);
}

[data-bs-theme="light"] .qc-chip--contact[b-mrl3frzbfu] {
    background: rgba(113,113,122,0.08);
    color: #52525b;
    border-color: rgba(113,113,122,0.20);
}

.qc-chip--phone[b-mrl3frzbfu],
.qc-chip--email[b-mrl3frzbfu] {
    background: rgba(96,165,250,0.08);
    color: #7eb8f7;
    border-color: rgba(96,165,250,0.28);
    border-style: dashed;
    text-decoration: none;
    transition: background 0.14s, color 0.14s, border-color 0.14s;
}

    .qc-chip--phone:hover[b-mrl3frzbfu],
    .qc-chip--email:hover[b-mrl3frzbfu] {
        background: rgba(96,165,250,0.15);
        color: #bfdbfe;
        border-color: rgba(96,165,250,0.50);
    }

[data-bs-theme="light"] .qc-chip--phone[b-mrl3frzbfu],
[data-bs-theme="light"] .qc-chip--email[b-mrl3frzbfu] {
    background: rgba(59,130,246,0.07);
    color: #1d4ed8;
    border-color: rgba(59,130,246,0.25);
}

    [data-bs-theme="light"] .qc-chip--phone:hover[b-mrl3frzbfu],
    [data-bs-theme="light"] .qc-chip--email:hover[b-mrl3frzbfu] {
        background: rgba(59,130,246,0.13);
        color: #1e40af;
        border-color: rgba(59,130,246,0.40);
    }

.qc-chip--rep[b-mrl3frzbfu] {
    background: rgba(113,128,150,0.10);
    color: #a0aec0;
    border-color: rgba(113,128,150,0.22);
}

[data-bs-theme="light"] .qc-chip--rep[b-mrl3frzbfu] {
    background: rgba(71,85,105,0.08);
    color: #475569;
    border-color: rgba(71,85,105,0.20);
}

.qc-chip--same[b-mrl3frzbfu] {
    opacity: 0.70;
    font-style: italic;
}


/* ── FOOTER ROW ──────────────────────────────────────────── */

.qc-footer-row[b-mrl3frzbfu] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.45rem;
    padding-top: 0.45rem;
    border-top: 1px solid var(--nq-border);
    margin-top: auto;
}

.qc-date[b-mrl3frzbfu] {
    display: inline-flex;
    align-items: center;
    gap: 0.28rem;
    font-size: 0.68rem;
    color: var(--nq-muted);
    min-width: 0;
    flex-shrink: 1;
}

.quote-price[b-mrl3frzbfu] {
    display: inline-flex;
    align-items: center;
    gap: 0.3rem;
    font-size: 0.82rem;
    font-weight: 900;
    font-variant-numeric: tabular-nums;
    letter-spacing: 0.02em;
    margin-left: auto;
    white-space: nowrap;
    /* Money badge */
    background: rgba(16,185,129,0.16);
    color: #34d399;
    border: 1px solid rgba(52,211,153,0.30);
    border-radius: 7px;
    padding: 3px 10px;
    box-shadow: 0 0 0 1px rgba(52,211,153,0.10), 0 2px 8px rgba(16,185,129,0.20), inset 0 1px 0 rgba(255,255,255,0.05);
}

    .quote-price[b-mrl3frzbfu]::before {
        content: "💰";
        font-size: 0.72rem;
        line-height: 1;
        flex-shrink: 0;
    }

[data-bs-theme="light"] .quote-price[b-mrl3frzbfu] {
    background: rgba(16,185,129,0.10);
    color: #065f46;
    border-color: rgba(16,185,129,0.25);
    box-shadow: 0 2px 6px rgba(16,185,129,0.15), inset 0 1px 0 rgba(255,255,255,0.60);
}


/* ── ACTION BUTTONS ──────────────────────────────────────── */

.quote-actions[b-mrl3frzbfu] {
    display: flex;
    align-items: center;
    gap: 0.28rem;
    flex-shrink: 0;
}

.action-btn[b-mrl3frzbfu] {
    width: 30px;
    height: 30px;
    border-radius: 7px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 0.85rem;
    border: 1px solid rgba(255,255,255,0.11);
    background: rgba(255,255,255,0.06);
    color: rgba(255,255,255,0.55);
    cursor: pointer;
    text-decoration: none;
    transition: background 0.14s, color 0.14s, border-color 0.14s, transform 0.12s, box-shadow 0.14s;
    padding: 0;
    flex-shrink: 0;
    box-shadow: 0 1px 3px rgba(0,0,0,0.25), inset 0 1px 0 rgba(255,255,255,0.06);
}

    .action-btn:hover[b-mrl3frzbfu] {
        background: var(--nq-accent-dim);
        color: var(--nq-accent);
        border-color: var(--nq-accent-ring);
        transform: translateY(-1px);
        box-shadow: 0 3px 10px rgba(241,184,40,0.18), inset 0 1px 0 rgba(255,255,255,0.06);
    }

    .action-btn:active[b-mrl3frzbfu] {
        transform: translateY(0);
        box-shadow: 0 1px 2px rgba(0,0,0,0.20);
    }

    .action-btn.edit:hover[b-mrl3frzbfu] {
        background: rgba(34,197,94,0.12);
        color: #4ade80;
        border-color: rgba(34,197,94,0.28);
        box-shadow: 0 3px 10px rgba(34,197,94,0.15);
    }

    .action-btn.submittal:hover[b-mrl3frzbfu] {
        background: rgba(99,102,241,0.12);
        color: #a5b4fc;
        border-color: rgba(99,102,241,0.28);
        box-shadow: 0 3px 10px rgba(99,102,241,0.15);
    }

    .action-btn.pipedrive[b-mrl3frzbfu] {
        padding: 4px;
    }

        .action-btn.pipedrive img[b-mrl3frzbfu] {
            width: 18px;
            height: 18px;
            object-fit: contain;
            border-radius: 3px;
        }

    .action-btn.more[b-mrl3frzbfu] {
        font-size: 0.92rem;
    }

    .action-btn.po-pdf:hover[b-mrl3frzbfu] {
        background: var(--nq-accent-dim);
        color: var(--nq-accent);
        border-color: var(--nq-accent-ring);
        box-shadow: 0 3px 10px rgba(241,184,40,0.18);
    }

[data-bs-theme="light"] .action-btn[b-mrl3frzbfu] {
    border-color: rgba(0,40,85,0.14);
    background: rgba(0,40,85,0.04);
    color: rgba(15,23,42,0.50);
    box-shadow: 0 1px 3px rgba(0,40,85,0.10), inset 0 1px 0 rgba(255,255,255,0.80);
}

    [data-bs-theme="light"] .action-btn:hover[b-mrl3frzbfu] {
        background: var(--nq-accent-dim);
        color: var(--nq-accent);
        border-color: var(--nq-accent-ring);
        box-shadow: 0 2px 8px rgba(201,128,0,0.14);
    }

    [data-bs-theme="light"] .action-btn.edit:hover[b-mrl3frzbfu] {
        background: rgba(16,185,129,0.09);
        color: #065f46;
        border-color: rgba(16,185,129,0.25);
        box-shadow: 0 2px 8px rgba(16,185,129,0.12);
    }


/* ── PDF SPLIT-BUTTON ────────────────────────────────────── */

.pdf-split-wrap[b-mrl3frzbfu] {
    display: inline-flex;
    position: relative;
}

.action-btn.pdf-split[b-mrl3frzbfu] {
    display: inline-flex;
    align-items: center;
    gap: 3px;
    width: auto;
    padding: 0 8px;
}

    .action-btn.pdf-split:hover[b-mrl3frzbfu] {
        background: rgba(239,68,68,0.13);
        color: #f87171;
        border-color: rgba(239,68,68,0.30);
        box-shadow: 0 3px 10px rgba(239,68,68,0.14);
    }

[data-bs-theme="light"] .action-btn.pdf-split:hover[b-mrl3frzbfu] {
    background: rgba(220,53,69,0.08);
    color: #dc2626;
    border-color: rgba(220,53,69,0.26);
    box-shadow: 0 2px 8px rgba(220,53,69,0.10);
}

.pdf-split__caret[b-mrl3frzbfu] {
    font-size: 0.6rem;
    opacity: 0.65;
    margin-top: 1px;
}

.pdf-split-menu[b-mrl3frzbfu] {
    min-width: 190px;
    padding: 5px 0;
    border: 1px solid rgba(255,255,255,0.14);
    background: #1e2840;
    border-radius: 10px;
    box-shadow: 0 12px 36px rgba(0,0,0,0.55), 0 2px 8px rgba(0,0,0,0.35);
    overflow: hidden;
}

[data-bs-theme="light"] .pdf-split-menu[b-mrl3frzbfu] {
    background: #ffffff;
    border-color: rgba(0,40,85,0.14);
    box-shadow: 0 10px 30px rgba(0,40,85,0.18), 0 2px 6px rgba(0,40,85,0.10);
}

.pdf-split-menu__header[b-mrl3frzbfu] {
    font-size: 0.64rem;
    font-weight: 800;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.35);
    padding: 7px 14px 5px;
    pointer-events: none;
    user-select: none;
    border-bottom: 1px solid rgba(255,255,255,0.07);
    margin-bottom: 3px;
}

[data-bs-theme="light"] .pdf-split-menu__header[b-mrl3frzbfu] {
    color: rgba(15,23,42,0.40);
    border-bottom-color: rgba(0,40,85,0.08);
}

.pdf-split-menu__item[b-mrl3frzbfu] {
    display: flex;
    align-items: center;
    gap: 9px;
    font-size: 0.82rem;
    font-weight: 600;
    color: rgba(255,255,255,0.82);
    padding: 8px 14px;
    transition: background 0.12s, color 0.12s;
    cursor: pointer;
}

    .pdf-split-menu__item:hover[b-mrl3frzbfu] {
        background: rgba(239,68,68,0.14);
        color: #fca5a5;
    }

    .pdf-split-menu__item i[b-mrl3frzbfu] {
        font-size: 0.88rem;
        opacity: 0.80;
        flex-shrink: 0;
    }

[data-bs-theme="light"] .pdf-split-menu__item[b-mrl3frzbfu] {
    color: #1a2a3a;
}

    [data-bs-theme="light"] .pdf-split-menu__item:hover[b-mrl3frzbfu] {
        background: rgba(220,53,69,0.08);
        color: #b91c1c;
    }

.pdf-split-menu__item--disabled[b-mrl3frzbfu] {
    opacity: 0.45;
    cursor: default;
    pointer-events: none;
}

.pdf-split-menu__badge[b-mrl3frzbfu] {
    margin-left: auto;
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    padding: 2px 6px;
    border-radius: 999px;
    background: var(--nq-accent-dim);
    color: var(--nq-accent);
    border: 1px solid var(--nq-accent-ring);
    white-space: nowrap;
}

.pdf-split-menu__item--po[b-mrl3frzbfu] {
    color: var(--nq-accent) !important;
}

    .pdf-split-menu__item--po:hover[b-mrl3frzbfu] {
        background: var(--nq-accent-dim) !important;
    }

[data-bs-theme="light"] .pdf-split-menu__item--po[b-mrl3frzbfu] {
    color: #c98000 !important;
}

    [data-bs-theme="light"] .pdf-split-menu__item--po:hover[b-mrl3frzbfu] {
        background: rgba(201,128,0,0.09) !important;
        color: #7a5000 !important;
    }

.action-btn.pdf-split.action-btn--more:hover[b-mrl3frzbfu] {
    background: rgba(99,102,241,0.10);
    color: #818cf8;
    border-color: rgba(99,102,241,0.22);
}

[data-bs-theme="light"] .action-btn.pdf-split.action-btn--more:hover[b-mrl3frzbfu] {
    background: rgba(79,70,229,0.08);
    color: #4338ca;
    border-color: rgba(79,70,229,0.22);
}


/* ── MODAL BACKDROP & WRAP ───────────────────────────────── */

.nq-modal-backdrop[b-mrl3frzbfu] {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.60);
    z-index: 1049;
    animation: nqFadeIn-b-mrl3frzbfu 0.18s ease;
}

[data-bs-theme="light"] .nq-modal-backdrop[b-mrl3frzbfu] {
    background: rgba(15,23,42,0.45);
}

.nq-modal-wrap[b-mrl3frzbfu] {
    position: fixed;
    inset: 0;
    z-index: 1050;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
    pointer-events: none;
}

@keyframes nqFadeIn-b-mrl3frzbfu {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes nqSlideIn-b-mrl3frzbfu {
    from {
        opacity: 0;
        transform: translateY(-12px) scale(0.98);
    }

    to {
        opacity: 1;
        transform: translateY(0) scale(1);
    }
}


/* ── MODAL ───────────────────────────────────────────────── */

.nq-modal[b-mrl3frzbfu] {
    pointer-events: all;
    background: #1a2236;
    border: 1px solid var(--nq-border);
    border-top: 3px solid var(--nq-accent);
    border-radius: 14px;
    box-shadow: 0 24px 64px rgba(0,0,0,0.55);
    width: 100%;
    max-width: 420px;
    animation: nqSlideIn-b-mrl3frzbfu 0.22s ease;
}

[data-bs-theme="light"] .nq-modal[b-mrl3frzbfu] {
    background: #ffffff;
    border-color: rgba(0,40,85,0.10);
    border-top-color: var(--nq-accent);
    box-shadow: 0 20px 50px rgba(2,6,23,0.18);
}

.nq-modal-header[b-mrl3frzbfu] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.85rem 1rem 0.75rem;
    border-bottom: 1px solid rgba(255,255,255,0.07);
}

[data-bs-theme="light"] .nq-modal-header[b-mrl3frzbfu] {
    border-bottom-color: rgba(0,40,85,0.08);
}

.nq-modal-icon[b-mrl3frzbfu] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    border-radius: 8px;
    background: var(--nq-accent-dim);
    color: var(--nq-accent);
    font-size: 0.85rem;
    flex-shrink: 0;
}

.nq-modal-title[b-mrl3frzbfu] {
    font-size: 0.80rem;
    font-weight: 900;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.90);
    flex: 1;
}

[data-bs-theme="light"] .nq-modal-title[b-mrl3frzbfu] {
    color: #0f172a;
}

.nq-modal-close[b-mrl3frzbfu] {
    width: 28px;
    height: 28px;
    border-radius: 7px;
    border: 1px solid var(--nq-border);
    background: var(--nq-chip-bg);
    color: var(--nq-muted);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 1rem;
    cursor: pointer;
    transition: background 0.13s, color 0.13s;
    padding: 0;
    flex-shrink: 0;
}

    .nq-modal-close:hover[b-mrl3frzbfu] {
        background: rgba(239,68,68,0.12);
        border-color: rgba(239,68,68,0.25);
        color: #f87171;
    }

[data-bs-theme="light"] .nq-modal-close:hover[b-mrl3frzbfu] {
    background: rgba(239,68,68,0.08);
    border-color: rgba(239,68,68,0.20);
    color: #dc2626;
}

.nq-modal-body[b-mrl3frzbfu] {
    padding: 1.25rem 1.25rem 0.75rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.65rem;
}

.nq-status-flow[b-mrl3frzbfu] {
    display: flex;
    align-items: center;
    gap: 0.65rem;
    width: 100%;
    justify-content: center;
}

.nq-status-pill[b-mrl3frzbfu] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 5px 13px;
    border-radius: 20px;
    font-size: 0.70rem;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    border: 1px solid var(--nq-border);
    background: var(--nq-chip-bg);
    color: var(--nq-muted);
    white-space: nowrap;
}

/* FROM pill mirrors strip token colors */
.nq-status-from.status-open[b-mrl3frzbfu] {
    background: var(--s-open-bg);
    color: var(--s-open-fg);
    border-color: var(--s-open-bd);
}

.nq-status-from.status-ordersubmitted[b-mrl3frzbfu] {
    background: var(--s-ordersubmitted-bg);
    color: var(--s-ordersubmitted-fg);
    border-color: var(--s-ordersubmitted-bd);
}

.nq-status-from.status-ordered[b-mrl3frzbfu] {
    background: var(--s-ordered-bg);
    color: var(--s-ordered-fg);
    border-color: var(--s-ordered-bd);
}

.nq-status-from.status-lost[b-mrl3frzbfu],
.nq-status-from.status-revise[b-mrl3frzbfu],
.nq-status-from.status-revise-order[b-mrl3frzbfu] {
    background: var(--s-lost-bg);
    color: var(--s-lost-fg);
    border-color: var(--s-lost-bd);
}

.nq-status-from.status-revisequote[b-mrl3frzbfu] {
    background: var(--s-rq-bg);
    color: var(--s-rq-fg);
    border-color: var(--s-rq-bd);
}

.nq-status-from.status-pending[b-mrl3frzbfu] {
    background: var(--s-pending-bg);
    color: var(--s-pending-fg);
    border-color: var(--s-pending-bd);
}

.nq-status-from.status-ready[b-mrl3frzbfu] {
    background: var(--s-ready-bg);
    color: var(--s-ready-fg);
    border-color: var(--s-ready-bd);
}

/* TO pill always red */
.nq-status-to[b-mrl3frzbfu] {
    background: rgba(220,53,69,0.14);
    color: #dc3545;
    border-color: rgba(220,53,69,0.34);
}

[data-bs-theme="light"] .nq-status-to[b-mrl3frzbfu] {
    background: rgba(220,53,69,0.10);
    color: #b91c1c;
    border-color: rgba(220,53,69,0.28);
}

.nq-status-pill-dot[b-mrl3frzbfu] {
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: currentColor;
    flex-shrink: 0;
}

.nq-status-arrow[b-mrl3frzbfu] {
    color: var(--nq-muted);
    font-size: 0.80rem;
    flex-shrink: 0;
}

.nq-modal-hint[b-mrl3frzbfu] {
    font-size: 0.70rem;
    color: var(--nq-muted);
    margin: 0;
    text-align: center;
}

.nq-modal-footer[b-mrl3frzbfu] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.75rem 1.25rem 1rem;
    justify-content: flex-end;
    border-top: 1px solid rgba(255,255,255,0.06);
}

[data-bs-theme="light"] .nq-modal-footer[b-mrl3frzbfu] {
    border-top-color: rgba(0,40,85,0.08);
}

.nq-btn[b-mrl3frzbfu] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    padding: 8px 18px;
    border-radius: 8px;
    font-size: 0.75rem;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    cursor: pointer;
    border: 1px solid transparent;
    transition: filter 0.13s, transform 0.11s, background 0.13s, box-shadow 0.13s;
    white-space: nowrap;
}

    .nq-btn:hover[b-mrl3frzbfu] {
        transform: translateY(-1px);
    }

    .nq-btn:active[b-mrl3frzbfu] {
        transform: translateY(0);
        filter: brightness(0.94);
    }

.nq-btn-cancel[b-mrl3frzbfu] {
    background: rgba(255,255,255,0.07);
    color: rgba(255,255,255,0.60);
    border-color: rgba(255,255,255,0.12);
    box-shadow: 0 1px 3px rgba(0,0,0,0.25), inset 0 1px 0 rgba(255,255,255,0.06);
}

    .nq-btn-cancel:hover[b-mrl3frzbfu] {
        background: rgba(239,68,68,0.12);
        color: #f87171;
        border-color: rgba(239,68,68,0.28);
        box-shadow: 0 3px 10px rgba(239,68,68,0.15);
    }

[data-bs-theme="light"] .nq-btn-cancel[b-mrl3frzbfu] {
    background: rgba(0,40,85,0.05);
    color: rgba(15,23,42,0.55);
    border-color: rgba(0,40,85,0.14);
    box-shadow: 0 1px 3px rgba(0,40,85,0.10), inset 0 1px 0 rgba(255,255,255,0.80);
}

    [data-bs-theme="light"] .nq-btn-cancel:hover[b-mrl3frzbfu] {
        background: rgba(239,68,68,0.08);
        color: #dc2626;
        border-color: rgba(239,68,68,0.22);
        box-shadow: 0 2px 8px rgba(239,68,68,0.12);
    }

.nq-btn-confirm[b-mrl3frzbfu] {
    background: #16a34a;
    color: #ffffff;
    border: 1px solid rgba(34,197,94,0.55);
    box-shadow: 0 0 0 1px rgba(22,163,74,0.20), 0 3px 14px rgba(22,163,74,0.45), inset 0 1px 0 rgba(255,255,255,0.18);
}

    .nq-btn-confirm:hover[b-mrl3frzbfu] {
        background: #15803d;
        border-color: rgba(34,197,94,0.65);
        box-shadow: 0 0 0 1px rgba(22,163,74,0.30), 0 5px 20px rgba(22,163,74,0.55), inset 0 1px 0 rgba(255,255,255,0.18);
        filter: brightness(1.08);
    }

[data-bs-theme="light"] .nq-btn-confirm[b-mrl3frzbfu] {
    background: #15803d;
    border-color: rgba(22,163,74,0.45);
    box-shadow: 0 2px 10px rgba(22,163,74,0.30), inset 0 1px 0 rgba(255,255,255,0.20);
}


/* ── REVISE REQUEST MODAL ────────────────────────────────── */

.revise-request-modal[b-mrl3frzbfu] {
    max-width: 480px;
}

.revise-modal-body[b-mrl3frzbfu] {
    padding: 1.1rem 1.25rem 0.9rem;
    display: flex;
    flex-direction: column;
    gap: 0.75rem;
}

.revise-modal-loading[b-mrl3frzbfu] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    font-size: 0.80rem;
    color: var(--nq-muted);
    padding: 0.5rem 0;
}

.revise-modal-spinner[b-mrl3frzbfu] {
    width: 16px;
    height: 16px;
    border: 2px solid var(--nq-border);
    border-top-color: var(--nq-accent);
    border-radius: 50%;
    animation: reviseSpinAnim-b-mrl3frzbfu 0.7s linear infinite;
    flex-shrink: 0;
}

@keyframes reviseSpinAnim-b-mrl3frzbfu {
    to {
        transform: rotate(360deg);
    }
}

.revise-modal-note-box[b-mrl3frzbfu] {
    border-radius: 10px;
    padding: 0.75rem 1rem;
    border: 1px solid var(--nq-border);
    background: var(--nq-chip-bg);
}

.revise-modal-note-box--std[b-mrl3frzbfu] {
    border-color: var(--s-revise-bd);
    background: var(--s-revise-bg);
}

.revise-modal-note-box--rfq[b-mrl3frzbfu] {
    border-color: var(--s-rq-bd);
    background: var(--s-rq-bg);
}

.revise-modal-note-label[b-mrl3frzbfu] {
    font-size: 0.65rem;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    margin-bottom: 0.4rem;
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.revise-modal-note-box--std .revise-modal-note-label[b-mrl3frzbfu] {
    color: var(--s-revise-fg);
}

.revise-modal-note-box--rfq .revise-modal-note-label[b-mrl3frzbfu] {
    color: var(--s-rq-fg);
}

.revise-modal-note-text[b-mrl3frzbfu] {
    font-size: 0.82rem;
    color: var(--nq-fg);
    line-height: 1.55;
    white-space: pre-wrap;
}

.revise-modal-reviewer[b-mrl3frzbfu] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-size: 0.75rem;
}

.revise-modal-reviewer-label[b-mrl3frzbfu] {
    color: var(--nq-muted);
    display: flex;
    align-items: center;
    gap: 0.28rem;
    flex-shrink: 0;
}

.revise-modal-reviewer-name[b-mrl3frzbfu] {
    font-weight: 700;
    color: var(--nq-fg);
}

.revise-icon--std[b-mrl3frzbfu] {
    background: var(--s-revise-bg);
    color: var(--s-revise-fg);
}

.revise-icon--rfq[b-mrl3frzbfu] {
    background: var(--s-rq-bg);
    color: var(--s-rq-fg);
}

.revise-modal-footer-wrap[b-mrl3frzbfu] {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    padding: 0.75rem 1.25rem 1rem;
    justify-content: flex-end;
    border-top: 1px solid var(--nq-border);
    flex-wrap: wrap;
}

[data-bs-theme="light"] .revise-modal-footer-wrap[b-mrl3frzbfu] {
    border-top-color: rgba(0,40,85,0.08);
}

.nq-btn-load[b-mrl3frzbfu] {
    background: var(--nq-accent);
    color: #1a1200;
    border-color: transparent;
    box-shadow: 0 3px 10px rgba(241,184,40,0.30), inset 0 1px 0 rgba(255,255,255,0.22);
}

    .nq-btn-load:hover[b-mrl3frzbfu] {
        background: #f7ca4a;
        box-shadow: 0 5px 16px rgba(241,184,40,0.42), inset 0 1px 0 rgba(255,255,255,0.22);
    }


/* ── MISC ────────────────────────────────────────────────── */

.page-stripe[b-mrl3frzbfu] {
    height: 3px;
    background: linear-gradient(90deg, var(--nq-accent) 0%, transparent 100%);
    opacity: 0.18;
}
/* _content/NoiseLockQuoteTool/Pages/PriceLookup.razor.rz.scp.css */
/* ================================================================
PriceLookup.razor.css · IAC CPQ · Price Lookup

Design: precision-industrial data tool
· Dark chromatic sidebar · Warm-white content panels
· Gold accent thread · Tables as clean scrollable data grids
· NO thick borders · NO stretched tables · Center-aligned data
Font: DIN 2014 via Adobe Fonts
================================================================ */

/* ── 1. Design Tokens ─────────────────────────────────────────── */
:root[b-wuyx4u9x75] {
    /* Brand */
    --iac-navy: #002855;
    --iac-navy-dark: #001731;
    --iac-gold: #F1B828;
    --iac-gold-rgb: 241, 184, 40;
    --iac-accent: #2563EB;
    --iac-accent-hover: #1D4ED8;
    --iac-accent-muted: rgba(37,99,235,0.10);
    /* Navbar height — main content pads below this */
    --navbar-h: 58px;
    /* Canvas / surfaces */
    --bg-canvas: #EEF2F8;
    --bg-surface: #FFFFFF;
    --bg-surface-2: #F5F7FC;
    --bg-surface-3: #E8EDF6;
    /* Panels / cards (subtle separation from canvas) */
    --panel-surface: #F1F4F9; /* slightly deeper than canvas for hierarchy */
    --panel-surface-2: #FAFBFE; /* table wrappers / inner surfaces */
    --panel-surface-3: #FFFFFF; /* true white reserved for table cells */
    --panel-border: rgba(0, 0, 0, 0.075);
    --panel-shadow: 0 1px 4px rgba(0,0,0,0.05), 0 10px 28px rgba(0,40,85,0.06);
    /* Note flags (guidance) */
    --note-flag-bg: rgba(241,184,40,0.24);
    --note-flag-border: rgba(241,184,40,0.34);
    --note-flag-icon: rgba(241,184,40,0.95);
    --note-flag-text: #253247;
    --note-flag-hw-bg: rgba(37,99,235,0.18);
    --note-flag-hw-border: rgba(37,99,235,0.26);
    --note-flag-hw-icon: rgba(37,99,235,0.92);
    /* Export PDF button (light mode looks like a PDF action) */
    --pdf-red: #C81E1E;
    --pdf-red-2: #9B1111;
    --pdf-ink: #8F0F0F;
    --pdf-bg: linear-gradient(180deg, #FFFFFF 0%, #FFF5F5 100%);
    --pdf-bg-hover: linear-gradient(180deg, #FFF9F9 0%, rgba(200,30,30,0.08) 100%);
    --pdf-border: rgba(200,30,30,0.55);
    --pdf-ring: rgba(200, 30, 30, 0.22);
    /* Sidebar */
    --sidebar-bg: #090D16;
    --sidebar-text: #6E7E92;
    --sidebar-text-hi: #B8C8D8;
    --sidebar-active-bg: rgba(37,99,235,0.15);
    --sidebar-hover-bg: rgba(255,255,255,0.04);
    --sidebar-section: #283244;
    --sidebar-width: 60px;
    --sidebar-gold-bar: rgba(241,184,40,0.32);
    /* Text */
    --text-primary: #0C1220;
    --text-secondary: #4A5568;
    --text-muted: #6E7B8F;
    --text-price: #002855;
    /* Borders — deliberately subtle, nothing navy/thick */
    --border-subtle: rgba(0, 0, 0, 0.055);
    --border-default: rgba(0, 0, 0, 0.09);
    /* Table — ALL opaque hex, never rgba on sticky backgrounds */
    --thead-bg: #E6EEF8; /* solid opaque light */
    --thead-color: #001C40;
    --thead-border: #C0D2E8;
    --thead-bg-dark: #111E2E; /* solid opaque dark */
    --thead-color-dark: #6DAAD4;
    --thead-border-dark: #1E3050;
    --row-hover: rgba(37,99,235,0.028);
    --row-alt: rgba(0,40,85,0.016);
    --row-border: rgba(0,0,0,0.05);
    /* Inputs */
    --input-bg: #FFFFFF;
    --input-border: rgba(0,0,0,0.12);
    --input-focus-ring: rgba(37,99,235,0.32);
    /* Radii */
    --r-xs: 4px;
    --r-sm: 8px;
    --r-md: 13px;
    --r-lg: 18px;
    --r-pill: 9999px;
    /* Shadows */
    --sh-xs: 0 1px 3px rgba(0,0,0,0.06);
    --sh-sm: 0 2px 12px rgba(0,0,0,0.07);
    --sh-panel: 0 1px 4px rgba(0,0,0,0.05), 0 6px 24px rgba(0,40,85,0.07);
    /* Motion */
    --ease: cubic-bezier(0.4, 0, 0.2, 1);
    --t-fast: 110ms;
    --t-base: 200ms;
    /* Typography */
    --font: "din-2014", "DIN Pro", "DIN Next", "Helvetica Neue", Arial, sans-serif;
}

/* ── Dark mode overrides ──────────────────────────────────────── */
[data-bs-theme="dark"][b-wuyx4u9x75], [data-theme="dark"][b-wuyx4u9x75] {
    --bg-canvas: #080C14;
    --bg-surface: #0D1420;
    --bg-surface-2: #111A2A;
    --bg-surface-3: #162030;
    --panel-surface: #0F1726;
    --panel-surface-2: #0D1420;
    --panel-surface-3: #0B1220;
    --text-primary: #DDE8F4;
    --text-secondary: #8898B0;
    --text-muted: #55657E;
    --text-price: #7AACD4;
    --border-subtle: rgba(255,255,255,0.045);
    --border-default: rgba(255,255,255,0.08);
    --row-hover: rgba(37,99,235,0.07);
    --row-alt: rgba(255,255,255,0.016);
    --row-border: rgba(255,255,255,0.055);
    --sh-panel: 0 2px 16px rgba(0,0,0,0.50);
    --input-bg: #111A2A;
    --input-border: rgba(255,255,255,0.10);
    --panel-border: rgba(255,255,255,0.075);
    --panel-shadow: 0 10px 34px rgba(0,0,0,0.55);
    --note-flag-bg: rgba(241,184,40,0.18);
    --note-flag-border: rgba(241,184,40,0.28);
    --note-flag-icon: rgba(241,184,40,0.92);
    --note-flag-text: rgba(210,225,240,0.92);
    --note-flag-hw-bg: rgba(37,99,235,0.20);
    --note-flag-hw-border: rgba(109,170,212,0.26);
    --note-flag-hw-icon: rgba(122,172,212,0.92);
    /* Export PDF button in dark mode stays strong + intentional */
    --pdf-ink: #0B0F16;
    --pdf-bg: linear-gradient(180deg, #E34B4B 0%, #C03535 100%);
    --pdf-bg-hover: linear-gradient(180deg, #EC5B5B 0%, #C83A3A 100%);
    --pdf-border: rgba(255,255,255,0.10);
    --pdf-ring: rgba(227, 75, 75, 0.22);
}

/* ── Base reset ───────────────────────────────────────────────── */
.bo-layout.lookup-shell *[b-wuyx4u9x75],
.bo-layout.lookup-shell *[b-wuyx4u9x75]::before,
.bo-layout.lookup-shell *[b-wuyx4u9x75]::after {
    box-sizing: border-box;
    font-family: var(--font);
    -webkit-font-smoothing: antialiased;
}

/* ================================================================
1b. GLOBAL NAVBAR SPACING (layout/header is outside this page)
Fix: right-side content too close to edge (esp. with scrollbar)
================================================================ */
:global(.navbar)[b-wuyx4u9x75],
:global(.navbar.navbar-expand)[b-wuyx4u9x75],
:global(.navbar.fixed-top)[b-wuyx4u9x75],
:global(.navbar.sticky-top)[b-wuyx4u9x75] {
    width: 100%;
}

:global(.navbar .container)[b-wuyx4u9x75],
:global(.navbar .container-fluid)[b-wuyx4u9x75] {
    max-width: 100%;
    padding-left: clamp(14px, 2.2vw, 28px);
    padding-right: clamp(24px, 3.2vw, 44px);
}

:global(.navbar .navbar-nav)[b-wuyx4u9x75] {
    gap: 10px;
}

:global(.navbar .navbar-text)[b-wuyx4u9x75],
:global(.navbar .nav-link)[b-wuyx4u9x75],
:global(.navbar .navbar-brand)[b-wuyx4u9x75] {
    white-space: nowrap;
}

/* Ensure right utilities (buttons/profile) have breathing room */
:global(.navbar .ms-auto)[b-wuyx4u9x75] {
    margin-left: auto;
    padding-right: 8px;
}

/* Tabs (if used anywhere in the app) — active highlight in both themes */
:global(.nav-tabs)[b-wuyx4u9x75] {
    border-bottom: 1px solid rgba(0,0,0,0.08);
}

:global(.nav-tabs .nav-link)[b-wuyx4u9x75] {
    border: 1px solid transparent;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    padding: 10px 14px;
    font-weight: 700;
    letter-spacing: 0.01em;
    color: rgba(0,40,85,0.72);
    transition: background var(--t-fast) var(--ease), color var(--t-fast) var(--ease), box-shadow var(--t-fast) var(--ease);
}

:global(.nav-tabs .nav-link:hover)[b-wuyx4u9x75] {
    color: rgba(0,40,85,0.92);
    background: rgba(0,40,85,0.05);
}

:global(.nav-tabs .nav-link.active)[b-wuyx4u9x75] {
    background: rgba(241,184,40,0.20);
    border-color: rgba(241,184,40,0.45);
    color: #002855;
    box-shadow: 0 2px 10px rgba(241,184,40,0.14);
}

:global([data-bs-theme="dark"] .nav-tabs)[b-wuyx4u9x75],
:global([data-theme="dark"] .nav-tabs)[b-wuyx4u9x75] {
    border-bottom-color: rgba(255,255,255,0.08);
}

:global([data-bs-theme="dark"] .nav-tabs .nav-link)[b-wuyx4u9x75],
:global([data-theme="dark"] .nav-tabs .nav-link)[b-wuyx4u9x75] {
    color: rgba(200,220,240,0.78);
}

:global([data-bs-theme="dark"] .nav-tabs .nav-link:hover)[b-wuyx4u9x75],
:global([data-theme="dark"] .nav-tabs .nav-link:hover)[b-wuyx4u9x75] {
    background: rgba(255,255,255,0.05);
    color: rgba(220,235,250,0.92);
}

:global([data-bs-theme="dark"] .nav-tabs .nav-link.active)[b-wuyx4u9x75],
:global([data-theme="dark"] .nav-tabs .nav-link.active)[b-wuyx4u9x75] {
    background: rgba(241,184,40,0.18);
    border-color: rgba(241,184,40,0.30);
    color: #F0D888;
    box-shadow: 0 10px 26px rgba(0,0,0,0.45);
}

/* Mobile — avoid oversized padding */
@media (max-width: 575.98px) {
    :global(.navbar .container)[b-wuyx4u9x75],
    :global(.navbar .container-fluid)[b-wuyx4u9x75] {
        padding-left: 12px;
        padding-right: 16px;
    }
}

/* ================================================================
2. PAGE SHELL
================================================================ */

.bo-layout.lookup-shell[b-wuyx4u9x75] {
    display: flex;
    align-items: stretch;
    width: 100%;
    min-height: calc(100dvh - var(--navbar-h));
    margin: 0;
    padding: 0;
    background: var(--bg-canvas);
    color: var(--text-primary);
    transition: background var(--t-base) var(--ease);
}

    /* bo-main must NOT scroll — it would trap position:sticky thead */
    .bo-layout.lookup-shell > .bo-main[b-wuyx4u9x75] {
        flex: 1 1 0;
        min-width: 0;
        overflow-y: visible;
        overflow-x: visible;
        min-height: unset;
        /* Door Pricing Container Spacing:
           - extra top padding so content doesn't kiss navbar
           - ensure at least 10px L/R */
        padding: calc(var(--navbar-h) + 48px) clamp(10px, 2.2vw, 32px) 34px clamp(10px, 2.2vw, 32px);
        display: flex;
        flex-direction: column;
        align-items: stretch;
    }

.lookup-main[b-wuyx4u9x75] {
    width: 100%;
    flex: 1 1 auto;
    min-height: 0;
}

/* ================================================================
3. SIDEBAR
================================================================ */

.bo-sidenav.lookup-sidebar[b-wuyx4u9x75] {
    min-width: 185px;
    max-width: 185px;
    flex-shrink: 0;
    min-height: 100vh;
    min-height: 100dvh;
    height: auto;
    /* relative so ::after gold bar positions correctly;
       the page shell (lookup-shell) handles scroll containment */
    position: relative;
    top: 0;
    align-self: stretch;
    max-height: none;
    background: #EEF3FA !important;
    overflow-y: hidden;
    overflow-x: hidden;
    scrollbar-width: thin;
    scrollbar-color: rgba(255,255,255,0.08) transparent;
    margin: 0 !important;
    padding: 0 !important;
    box-sizing: border-box;
    z-index: 100;
    transition: width var(--t-base) var(--ease), min-width var(--t-base) var(--ease), transform var(--t-base) var(--ease);
    display: flex;
    flex-direction: column;
}

    /* Gold right-edge bar */
    .bo-sidenav.lookup-sidebar[b-wuyx4u9x75]::after {
        content: "";
        position: absolute;
        right: 0;
        top: 0;
        bottom: 0;
        width: 2px;
        background: var(--iac-gold);
        pointer-events: none;
    }

    .bo-sidenav.lookup-sidebar[b-wuyx4u9x75]::-webkit-scrollbar {
        width: 5px;
    }

    .bo-sidenav.lookup-sidebar[b-wuyx4u9x75]::-webkit-scrollbar-track {
        background: transparent;
    }

    .bo-sidenav.lookup-sidebar[b-wuyx4u9x75]::-webkit-scrollbar-thumb {
        background: rgba(0,40,85,0.18);
        border-radius: 8px;
    }

[data-bs-theme="dark"] .bo-sidenav.lookup-sidebar[b-wuyx4u9x75]::-webkit-scrollbar-thumb,
[data-theme="dark"] .bo-sidenav.lookup-sidebar[b-wuyx4u9x75]::-webkit-scrollbar-thumb {
    background: rgba(255,255,255,0.08);
}

[data-bs-theme="dark"] .bo-sidenav.lookup-sidebar[b-wuyx4u9x75],
[data-theme="dark"] .bo-sidenav.lookup-sidebar[b-wuyx4u9x75] {
    background: #050810 !important;
    border-right-color: rgba(241,184,40,0.28) !important;
}




.bo-sidenav.lookup-sidebar.collapsed[b-wuyx4u9x75] {
    width: 0;
    min-width: 0;
    overflow: hidden;
}

/* ── 3a. Sidebar brand / title ────────────────────────────────── */

.lookup-title[b-wuyx4u9x75] {
    padding: 18px 16px 14px;
    border-bottom: 1px solid rgba(241,184,40,0.22);
    margin-bottom: 4px;
}

    .lookup-title h3[b-wuyx4u9x75] {
        font-size: 17px !important;
        font-weight: 900 !important;
        letter-spacing: 0.08em !important;
        text-transform: uppercase !important;
        color: #002855 !important;
        margin: 0 !important;
        line-height: 1.2;
        display: flex;
        align-items: center;
        gap: 0;
    }

[data-bs-theme="dark"] .lookup-title h3[b-wuyx4u9x75],
[data-theme="dark"] .lookup-title h3[b-wuyx4u9x75] {
    color: var(--iac-gold) !important;
}

.lookup-title h3[b-wuyx4u9x75]::before {
    display: none;
}

.lookup-title h3[b-wuyx4u9x75]::after {
    content: " »";
    color: rgba(241,184,40,0.65);
    font-size: 0.9em;
    line-height: 1;
    font-weight: 900;
    margin-left: 4px;
}

/* ── 3b. Show / hide toggles ──────────────────────────────────── */


.lookup-show-toggle[b-wuyx4u9x75] {
    padding: 14px 12px 16px 12px;
    box-sizing: border-box;
    width: 100%;
    /* Flex child of .backoffice-sidenav — must not grow wider than sidebar */
    align-self: stretch;
    min-width: 0;
}

    /* Ensure guidance note wraps inside the sidebar toggles */
    .lookup-show-toggle .lookup-guidance[b-wuyx4u9x75] {
        display: block;
        width: 100%;
        min-width: 0;
        max-width: 100%;
        box-sizing: border-box;
        white-space: normal;
        overflow-wrap: anywhere;
        word-break: break-word;
    }



    .lookup-show-toggle .form-check[b-wuyx4u9x75] {
        display: flex;
        align-items: center;
        gap: 9px;
        padding: 0;
        padding-left: 20px !important;
        margin: 0;
    }

    .lookup-show-toggle .form-check-sm[b-wuyx4u9x75] {
        padding: 2px 0;
    }

    /* Gold checkbox */
    .lookup-show-toggle .form-check-input[type="checkbox"][b-wuyx4u9x75] {
        width: 15px;
        height: 15px;
        flex-shrink: 0;
        border: 1.5px solid #374E62;
        border-radius: 3px;
        background-color: transparent;
        appearance: none;
        -webkit-appearance: none;
        cursor: pointer;
        transition: background var(--t-fast), border-color var(--t-fast);
        vertical-align: middle;
    }

        .lookup-show-toggle .form-check-input[type="checkbox"]:hover[b-wuyx4u9x75] {
            border-color: rgba(241,184,40,0.70);
        }

        .lookup-show-toggle .form-check-input[type="checkbox"]:checked[b-wuyx4u9x75] {
            background-color: var(--iac-gold);
            border-color: var(--iac-gold);
            background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23002855' stroke-width='2.8' stroke-linecap='round' stroke-linejoin='round' d='M3 8l3.5 3.5L13 4'/%3E%3C/svg%3E");
            background-repeat: no-repeat;
            background-position: center;
            background-size: 9px;
        }

    .lookup-show-toggle .form-label[b-wuyx4u9x75] {
        font-size: 12px;
        font-weight: 650;
        /* Light mode: navy text on eggshell */
        color: #3A4E6A;
        margin: 0;
        cursor: pointer;
        line-height: 1.3;
    }

[data-bs-theme="dark"] .lookup-show-toggle .form-label[b-wuyx4u9x75],
[data-theme="dark"] .lookup-show-toggle .form-label[b-wuyx4u9x75] {
    color: var(--sidebar-text-hi);
}

/* ── 3c. Guidance note (.lookup-guidance) ────────────────────────
Shown when Door Pricing or Hardware Pricing is hidden.
Needs wrap + clear "note flag" indicator.
*/
.lookup-guidance[b-wuyx4u9x75] {
    display: block;
    margin-top: 11px;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
    position: relative;
    /* Clear note-card styling */
    padding: 30px 14px 12px 16px;
    border-radius: var(--r-sm);
    border: 1px solid rgba(241, 184, 40, 0.55);
    border-left: 6px solid rgba(241, 184, 40, 0.95);
    background: rgba(241, 184, 40, 0.22);
    color: var(--note-flag-text);
    font-size: 11.5px;
    font-weight: 650;
    line-height: 1.55;
    /* Force normal reading flow */
    text-align: left;
    text-align-last: left;
    text-indent: 0;
    letter-spacing: normal;
    word-spacing: normal;
    hyphens: none;
    /* Wrapping */
    white-space: normal;
    overflow-wrap: anywhere;
    word-break: break-word;
    /* Note card depth */
    box-shadow: 0 12px 26px rgba(0, 0, 0, 0.14);
}

    .lookup-guidance[b-wuyx4u9x75]::after {
        content: "NOTE";
        position: absolute;
        left: 10px;
        top: 8px;
        display: inline-flex;
        align-items: center;
        justify-content: center;
        padding: 3px 7px;
        border-radius: 999px;
        font-size: 9px;
        font-weight: 950;
        letter-spacing: 0.14em;
        text-transform: uppercase;
        color: #1B2233;
        background: rgba(241, 184, 40, 0.96);
        box-shadow: 0 1px 0 rgba(255, 255, 255, 0.35) inset;
        line-height: 1.1;
    }

    .lookup-guidance i.fas[b-wuyx4u9x75],
    .lookup-guidance i.fa[b-wuyx4u9x75] {
        color: var(--iac-gold);
        margin-right: 6px;
        font-size: 10.5px;
        opacity: 0.92;
        vertical-align: baseline;
    }

    .lookup-guidance strong[b-wuyx4u9x75] {
        color: rgba(120, 84, 0, 0.98);
        font-weight: 850;
    }

    /* Ensure nested text does not inherit odd alignment */
    .lookup-guidance *[b-wuyx4u9x75],
    .lookup-guidance p[b-wuyx4u9x75],
    .lookup-guidance span[b-wuyx4u9x75],
    .lookup-guidance div[b-wuyx4u9x75] {
        text-align: left;
        text-indent: 0;
        letter-spacing: normal;
        word-spacing: normal;
    }

/* Hardware variant — cooler blue tint */
.lookup-guidance--hardware[b-wuyx4u9x75] {
    border-color: rgba(122, 172, 212, 0.48);
    border-left-color: rgba(122, 172, 212, 0.9);
    background: rgba(122, 172, 212, 0.14);
}

    .lookup-guidance--hardware[b-wuyx4u9x75]::before {
        background: var(--note-flag-hw-icon);
        box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.12);
    }

    .lookup-guidance--hardware[b-wuyx4u9x75]::after {
        color: rgba(220, 235, 250, 0.98);
        background: rgba(37, 99, 235, 0.72);
        box-shadow: 0 1px 0 rgba(255, 255, 255, 0.10) inset;
    }

    .lookup-guidance--hardware i.fas[b-wuyx4u9x75],
    .lookup-guidance--hardware i.fa[b-wuyx4u9x75] {
        color: #7AACD4;
    }

    .lookup-guidance--hardware strong[b-wuyx4u9x75] {
        color: #2B5FB8;
    }

[data-bs-theme="dark"] .lookup-guidance strong[b-wuyx4u9x75],
[data-theme="dark"] .lookup-guidance strong[b-wuyx4u9x75] {
    color: rgba(255, 210, 90, 0.98);
}

[data-bs-theme="dark"] .lookup-guidance[b-wuyx4u9x75]::after,
[data-theme="dark"] .lookup-guidance[b-wuyx4u9x75]::after {
    color: rgba(15, 18, 24, 0.98);
    background: rgba(241, 184, 40, 0.92);
}

[data-bs-theme="dark"] .lookup-show-toggle .lookup-guidance[b-wuyx4u9x75],
[data-theme="dark"] .lookup-show-toggle .lookup-guidance[b-wuyx4u9x75] {
    box-shadow: 0 14px 30px rgba(0, 0, 0, 0.45);
}

[data-bs-theme="dark"] .lookup-guidance[b-wuyx4u9x75],
[data-theme="dark"] .lookup-guidance[b-wuyx4u9x75] {
    background: rgba(241, 184, 40, 0.16);
    border: 1px solid rgba(241, 184, 40, 0.44);
    border-left: 6px solid rgba(241, 184, 40, 0.92);
    box-shadow: 0 14px 30px rgba(0, 0, 0, 0.45);
}

[data-bs-theme="dark"] .lookup-guidance--hardware[b-wuyx4u9x75],
[data-theme="dark"] .lookup-guidance--hardware[b-wuyx4u9x75] {
    background: rgba(122, 172, 212, 0.12);
    border: 1px solid rgba(122, 172, 212, 0.34);
    border-left: 6px solid rgba(122, 172, 212, 0.86);
}
/* ── 3d. Sidebar navigation ───────────────────────────────────── */

/* Desktop: chip-row wrappers provide group separation */
.sidenav-chip-row-wrap[b-wuyx4u9x75] {
    display: block;
}

    /* Gap + divider between Door Pricing and Hardware Pricing groups */
    .sidenav-chip-row-wrap + .sidenav-chip-row-wrap[b-wuyx4u9x75] {
        margin-top: 8px;
        padding-top: 8px;
        border-top: 1px solid rgba(0, 40, 85, 0.12);
    }

[data-bs-theme="dark"] .sidenav-chip-row-wrap + .sidenav-chip-row-wrap[b-wuyx4u9x75],
[data-theme="dark"] .sidenav-chip-row-wrap + .sidenav-chip-row-wrap[b-wuyx4u9x75] {
    border-top-color: rgba(255, 255, 255, 0.08);
}

.sidenav-chip-row[b-wuyx4u9x75] {
    display: block; /* normal vertical flow on desktop */
}

.sidenav-row-label[b-wuyx4u9x75] {
    display: block;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #2E4A70;
    padding: 14px 18px 5px 18px;
    user-select: none;
}

[data-bs-theme="dark"] .sidenav-row-label[b-wuyx4u9x75],
[data-theme="dark"] .sidenav-row-label[b-wuyx4u9x75] {
    color: #5A7A9E;
}

.backoffice-sidenav[b-wuyx4u9x75] {
    padding: 4px 0 32px;
    display: flex;
    flex: 1 1 auto;
    min-height: 100%;
    flex-direction: column;
}

.bo-nav-heading[b-wuyx4u9x75],
.quote-title[b-wuyx4u9x75] {
    font-size: 11px !important;
    font-weight: 900 !important;
    letter-spacing: 0.18em !important;
    text-transform: uppercase !important;
    color: #2E4A70 !important;
    padding: 16px 18px 6px 18px !important;
    user-select: none;
    margin-bottom: 1px;
    margin-top: 0 !important;
    display: block !important;
    border: none !important;
    box-shadow: none !important;
    background: transparent !important;
}

[data-bs-theme="dark"] .bo-nav-heading[b-wuyx4u9x75],
[data-theme="dark"] .bo-nav-heading[b-wuyx4u9x75],
[data-bs-theme="dark"] .quote-title[b-wuyx4u9x75],
[data-theme="dark"] .quote-title[b-wuyx4u9x75] {
    color: #5A7A9E !important;
}

.bo-sidenav .backoffice-sidenav .nav-link[b-wuyx4u9x75],
.lookup-sidebar .backoffice-sidenav .nav-link[b-wuyx4u9x75],
.backoffice-sidenav button.nav-link[b-wuyx4u9x75] {
    appearance: none !important;
    -webkit-appearance: none !important;
    font-family: var(--font) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    letter-spacing: 0.01em !important;
    line-height: 1.45 !important;
    color: #3A4E6A !important;
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    margin: 0 !important;
    text-align: left !important;
    padding: 9px 16px 9px 14px !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    cursor: pointer !important;
    background: transparent !important;
    border: none !important;
    border-left: 3px solid transparent !important;
    border-radius: 0 6px 6px 0 !important;
    box-shadow: none !important;
    outline: none !important;
    transition: color 120ms ease, background 120ms ease, border-color 120ms ease !important;
}

    .bo-sidenav .backoffice-sidenav .nav-link:hover[b-wuyx4u9x75],
    .lookup-sidebar .backoffice-sidenav .nav-link:hover[b-wuyx4u9x75],
    .backoffice-sidenav button.nav-link:hover[b-wuyx4u9x75] {
        color: #0A1C35 !important;
        background: rgba(0,40,85,0.08) !important;
        border-left-color: rgba(0,40,85,0.45) !important;
        box-shadow: none !important;
    }

[data-bs-theme="dark"] .bo-sidenav .backoffice-sidenav .nav-link:hover[b-wuyx4u9x75],
[data-theme="dark"] .bo-sidenav .backoffice-sidenav .nav-link:hover[b-wuyx4u9x75],
[data-bs-theme="dark"] .lookup-sidebar .backoffice-sidenav .nav-link:hover[b-wuyx4u9x75],
[data-theme="dark"] .lookup-sidebar .backoffice-sidenav .nav-link:hover[b-wuyx4u9x75] {
    color: #E8F0FA !important;
    background: rgba(255,255,255,0.08) !important;
    border-left-color: rgba(241,184,40,0.60) !important;
}

.bo-sidenav .backoffice-sidenav .nav-link:focus[b-wuyx4u9x75],
.lookup-sidebar .backoffice-sidenav .nav-link:focus[b-wuyx4u9x75],
.backoffice-sidenav button.nav-link:focus[b-wuyx4u9x75],
.backoffice-sidenav button.nav-link:focus-visible[b-wuyx4u9x75] {
    color: #E8F0FA !important;
    background: rgba(255,255,255,0.07) !important;
    border-left-color: rgba(241,184,40,0.40) !important;
    box-shadow: none !important;
    outline: none !important;
}

.bo-sidenav .backoffice-sidenav .nav-link.active[b-wuyx4u9x75],
.lookup-sidebar .backoffice-sidenav .nav-link.active[b-wuyx4u9x75],
.backoffice-sidenav button.nav-link.active[b-wuyx4u9x75] {
    color: #FFFFFF !important;
    background: linear-gradient(90deg, #1A4A8A 0%, #0E3268 100%) !important;
    border-left-color: var(--iac-gold) !important;
    font-weight: 700 !important;
    box-shadow: 0 1px 6px rgba(0,40,85,0.22) !important;
}

    .bo-sidenav .backoffice-sidenav .nav-link.active:hover[b-wuyx4u9x75],
    .lookup-sidebar .backoffice-sidenav .nav-link.active:hover[b-wuyx4u9x75],
    .backoffice-sidenav button.nav-link.active:hover[b-wuyx4u9x75] {
        background: linear-gradient(90deg, #1F5499 0%, #123A7A 100%) !important;
        border-left-color: var(--iac-gold) !important;
    }

.bo-sidenav.collapsed .backoffice-sidenav .nav-link[b-wuyx4u9x75],
.lookup-sidebar.collapsed .backoffice-sidenav .nav-link[b-wuyx4u9x75] {
    padding: 10px !important;
    text-align: center !important;
    border-radius: 0 !important;
    margin-right: 0 !important;
}

[data-bs-theme="dark"] .bo-sidenav .backoffice-sidenav .nav-link[b-wuyx4u9x75],
[data-theme="dark"] .bo-sidenav .backoffice-sidenav .nav-link[b-wuyx4u9x75],
[data-bs-theme="dark"] .lookup-sidebar .backoffice-sidenav .nav-link[b-wuyx4u9x75],
[data-theme="dark"] .lookup-sidebar .backoffice-sidenav .nav-link[b-wuyx4u9x75] {
    color: #7A8EA8 !important;
}

    [data-bs-theme="dark"] .bo-sidenav .backoffice-sidenav .nav-link.active[b-wuyx4u9x75],
    [data-theme="dark"] .bo-sidenav .backoffice-sidenav .nav-link.active[b-wuyx4u9x75],
    [data-bs-theme="dark"] .lookup-sidebar .backoffice-sidenav .nav-link.active[b-wuyx4u9x75],
    [data-theme="dark"] .lookup-sidebar .backoffice-sidenav .nav-link.active[b-wuyx4u9x75] {
        color: #fff !important;
        background: linear-gradient(90deg, rgba(0,87,255,0.40) 0%, rgba(0,87,255,0.14) 100%) !important;
        border-left-color: var(--iac-gold) !important;
    }

/* ================================================================
4. CONTENT PANEL (.card.lookup-panel)
================================================================ */

.card.lookup-panel[b-wuyx4u9x75] {
    /* Light grey card in light mode for stronger separation from page background */
    background: #F2F4F7;
    border: 1px solid rgba(0,40,85,0.13);
    border-radius: var(--r-lg);
    box-shadow: 0 2px 14px rgba(0,20,60,0.09), 0 1px 3px rgba(0,0,0,0.06);
    /* MUST NOT clip — overflow:hidden kills sticky thead */
    overflow: visible;
    margin: 0 20px 24px;
    transition: background var(--t-base) var(--ease), box-shadow var(--t-base) var(--ease);
}

    .card.lookup-panel > .card-body[b-wuyx4u9x75] {
        /* 10px L/R padding as requested — tables breathe without wasting space */
        padding: 22px 10px 16px;
    }

/* Ensure first panel isn't tight to navbar even if layout changes */
.lookup-main > .card.lookup-panel:first-child[b-wuyx4u9x75] {
    margin-top: 14px;
}

:root:not([data-bs-theme="dark"]) .card.lookup-panel[b-wuyx4u9x75] {
    background: #F2F4F7;
    border-color: rgba(0,40,85,0.13);
}

[data-bs-theme="dark"] .card.lookup-panel[b-wuyx4u9x75],
[data-theme="dark"] .card.lookup-panel[b-wuyx4u9x75] {
    background: var(--bg-surface);
    border-color: rgba(255,255,255,0.07);
    box-shadow: 0 2px 16px rgba(0,0,0,0.50);
}

/* ── Panel heading — "Door Pricing – STC 51" ──────────────────── */
.card.lookup-panel .card-body > .d-flex.justify-content-between.align-items-center[b-wuyx4u9x75] {
    margin-bottom: 16px;
    padding-bottom: 14px;
    border-bottom: 1px solid var(--border-subtle);
}

.card.lookup-panel .card-body h3[b-wuyx4u9x75] {
    font-size: 1.15rem;
    font-weight: 860;
    letter-spacing: -0.01em;
    color: var(--text-primary);
    margin: 0 0 4px;
    line-height: 1.2;
    position: relative;
    padding-left: 14px;
}

    .card.lookup-panel .card-body h3[b-wuyx4u9x75]::before {
        content: "";
        position: absolute;
        left: 0;
        top: 2px;
        bottom: 2px;
        width: 3px;
        border-radius: var(--r-pill);
        background: linear-gradient(180deg, var(--iac-gold) 0%, rgba(241,184,40,0.50) 100%);
    }

/* Subtitle / description line */
.card.lookup-panel .card-body .text-muted.small[b-wuyx4u9x75] {
    font-size: 11.5px;
    color: var(--text-muted);
    padding-left: 14px;
    margin-top: 1px;
    letter-spacing: 0.01em;
}

/* ================================================================
5. TABLE SCROLL WRAPPER (.lookup-tablewrap)
================================================================ */

.lookup-tablewrap[b-wuyx4u9x75] {
    position: relative;
    overflow-y: auto;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    /* Tight to the table — no padding so header/row edges are flush */
    max-height: 460px;
    background: #FFFFFF;
    border: 1px solid rgba(0,40,85,0.16);
    border-radius: var(--r-md);
    box-shadow: 0 2px 10px rgba(0,20,60,0.09), 0 1px 3px rgba(0,0,0,0.05);
    /* Zero internal padding so the table fills edge-to-edge */
    margin-top: 10px;
    padding: 0;
    scrollbar-width: thin;
    scrollbar-color: rgba(0,40,85,0.15) transparent;
}

    .lookup-tablewrap.lookup-tablewrap--door[b-wuyx4u9x75] {
        max-height: 490px;
    }

    .lookup-tablewrap[b-wuyx4u9x75]::-webkit-scrollbar {
        width: 6px;
        height: 6px;
    }

    .lookup-tablewrap[b-wuyx4u9x75]::-webkit-scrollbar-track {
        background: transparent;
    }

    .lookup-tablewrap[b-wuyx4u9x75]::-webkit-scrollbar-thumb {
        background: rgba(0,40,85,0.14);
        border-radius: var(--r-pill);
    }

[data-bs-theme="dark"] .lookup-tablewrap[b-wuyx4u9x75]::-webkit-scrollbar-thumb {
    background: rgba(255,255,255,0.12);
}

[data-bs-theme="dark"] .lookup-tablewrap[b-wuyx4u9x75],
[data-theme="dark"] .lookup-tablewrap[b-wuyx4u9x75] {
    border-color: rgba(255,255,255,0.08);
    background: var(--panel-surface-2);
}

/* Table must not have overflow:hidden (Bootstrap sometimes adds it) */
.lookup-tablewrap > table[b-wuyx4u9x75],
.lookup-tablewrap--door > table[b-wuyx4u9x75] {
    overflow: visible;
}

/* ================================================================
6. TABLE BASE
================================================================ */

.lookup-tablewrap .lookup-table[b-wuyx4u9x75],
.lookup-tablewrap .iac-table[b-wuyx4u9x75] {
    width: 100%;
    margin: 0;
    border-collapse: collapse;
    font-size: 13px;
    color: var(--text-primary);
    table-layout: auto;
    /* Odd rows: clean white */
    background: #FFFFFF;
}

/* Kill any global iac-table blue frame / box-shadow */
.lookup-tablewrap .iac-table[b-wuyx4u9x75] {
    border: none;
    box-shadow: none;
    text-align: center;
}

    /* ── Sticky thead — IAC navy/gold brand design ─────────────────── */
    .lookup-tablewrap .lookup-table thead th[b-wuyx4u9x75],
    .lookup-tablewrap .iac-table thead th[b-wuyx4u9x75],
    .lookup-tablewrap .lookup-table--sticky thead th[b-wuyx4u9x75] {
        position: sticky;
        top: 0;
        z-index: 20;
        /* Navy header — consistent with BackOffice design system */
        background: #1a3260;
        color: #ddeaff;
        font-size: 0.72rem;
        font-weight: 800;
        letter-spacing: 0.10em;
        text-transform: uppercase;
        text-align: center;
        vertical-align: middle;
        padding: 11px 14px;
        border-bottom: 2px solid rgba(241,184,40,0.52);
        white-space: nowrap;
        user-select: none;
        box-shadow: 0 2px 8px rgba(0,15,50,0.30);
    }

        /* First column header: center-aligned, gold left accent bar */
        .lookup-tablewrap .lookup-table thead th:first-child[b-wuyx4u9x75],
        .lookup-tablewrap .iac-table thead th:first-child[b-wuyx4u9x75],
        .lookup-tablewrap .lookup-table--sticky thead th:first-child[b-wuyx4u9x75] {
            text-align: center;
            border-left: 4px solid var(--iac-gold);
        }

        /* Column dividers */
        .lookup-tablewrap .lookup-table thead th + th[b-wuyx4u9x75],
        .lookup-tablewrap .iac-table thead th + th[b-wuyx4u9x75],
        .lookup-tablewrap .lookup-table--sticky thead th + th[b-wuyx4u9x75] {
            border-left: 1px solid rgba(255,255,255,0.07);
        }

[data-bs-theme="dark"] .lookup-tablewrap .lookup-table thead th[b-wuyx4u9x75],
[data-bs-theme="dark"] .lookup-tablewrap .iac-table thead th[b-wuyx4u9x75],
[data-bs-theme="dark"] .lookup-tablewrap .lookup-table--sticky thead th[b-wuyx4u9x75],
[data-theme="dark"] .lookup-tablewrap .lookup-table thead th[b-wuyx4u9x75],
[data-theme="dark"] .lookup-tablewrap .iac-table thead th[b-wuyx4u9x75],
[data-theme="dark"] .lookup-tablewrap .lookup-table--sticky thead th[b-wuyx4u9x75] {
    background: #0d1e3a;
    color: #7aacd4;
    border-bottom-color: rgba(241,184,40,0.35);
    box-shadow: 0 2px 8px rgba(0,0,0,0.55);
    border-left: rgba(241,184,40,0.35);
}

/* Dark mode: stronger header dividers (left/right) */
[data-bs-theme="dark"] .lookup-tablewrap .lookup-table thead th[b-wuyx4u9x75],
[data-bs-theme="dark"] .lookup-tablewrap .iac-table thead th[b-wuyx4u9x75],
[data-bs-theme="dark"] .lookup-tablewrap .lookup-table--sticky thead th[b-wuyx4u9x75],
[data-theme="dark"] .lookup-tablewrap .lookup-table thead th[b-wuyx4u9x75],
[data-theme="dark"] .lookup-tablewrap .iac-table thead th[b-wuyx4u9x75],
[data-theme="dark"] .lookup-tablewrap .lookup-table--sticky thead th[b-wuyx4u9x75] {
    border-right: 1px solid rgba(241,184,40,0.35);
}

    [data-bs-theme="dark"] .lookup-tablewrap .lookup-table thead th:last-child[b-wuyx4u9x75],
    [data-bs-theme="dark"] .lookup-tablewrap .iac-table thead th:last-child[b-wuyx4u9x75],
    [data-bs-theme="dark"] .lookup-tablewrap .lookup-table--sticky thead th:last-child[b-wuyx4u9x75],
    [data-theme="dark"] .lookup-tablewrap .lookup-table thead th:last-child[b-wuyx4u9x75],
    [data-theme="dark"] .lookup-tablewrap .iac-table thead th:last-child[b-wuyx4u9x75],
    [data-theme="dark"] .lookup-tablewrap .lookup-table--sticky thead th:last-child[b-wuyx4u9x75] {
        border-right: none;
    }

    [data-bs-theme="dark"] .lookup-tablewrap .lookup-table thead th + th[b-wuyx4u9x75],
    [data-bs-theme="dark"] .lookup-tablewrap .iac-table thead th + th[b-wuyx4u9x75],
    [data-bs-theme="dark"] .lookup-tablewrap .lookup-table--sticky thead th + th[b-wuyx4u9x75],
    [data-theme="dark"] .lookup-tablewrap .lookup-table thead th + th[b-wuyx4u9x75],
    [data-theme="dark"] .lookup-tablewrap .iac-table thead th + th[b-wuyx4u9x75],
    [data-theme="dark"] .lookup-tablewrap .lookup-table--sticky thead th + th[b-wuyx4u9x75] {
        border-left: 1px solid rgba(241,184,40,0.20);
    }

/* ── Alternating row tint — clearly visible stripe ───────────── */
.lookup-tablewrap .lookup-table tbody tr:nth-child(odd)[b-wuyx4u9x75],
.lookup-tablewrap .iac-table tbody tr:nth-child(odd)[b-wuyx4u9x75] {
    background: #FFFFFF;
}

.lookup-tablewrap .lookup-table tbody tr:nth-child(even)[b-wuyx4u9x75],
.lookup-tablewrap .iac-table tbody tr:nth-child(even)[b-wuyx4u9x75] {
    /* Blue-grey tint — visible against white but not distracting */
    background: #EEF3FA;
}

[data-bs-theme="dark"] .lookup-tablewrap .lookup-table tbody tr:nth-child(odd)[b-wuyx4u9x75],
[data-theme="dark"] .lookup-tablewrap .iac-table tbody tr:nth-child(odd)[b-wuyx4u9x75] {
    background-color: #0F1520 !important;
}

[data-bs-theme="dark"] .lookup-tablewrap .lookup-table tbody tr:nth-child(even)[b-wuyx4u9x75],
[data-theme="dark"] .lookup-tablewrap .iac-table tbody tr:nth-child(even)[b-wuyx4u9x75] {
    background-color: #141C2C !important;
}

/* ── Row dividers + hover ─────────────────────────────────────── */
.lookup-tablewrap .lookup-table tbody tr[b-wuyx4u9x75],
.lookup-tablewrap .iac-table tbody tr[b-wuyx4u9x75] {
    border-bottom: 1px solid var(--row-border);
    transition: background var(--t-fast) var(--ease);
}

    .lookup-tablewrap .lookup-table tbody tr:last-child[b-wuyx4u9x75],
    .lookup-tablewrap .iac-table tbody tr:last-child[b-wuyx4u9x75] {
        border-bottom: none;
    }

    .lookup-tablewrap .lookup-table tbody tr:hover[b-wuyx4u9x75],
    .lookup-tablewrap .iac-table tbody tr:hover[b-wuyx4u9x75] {
        background: var(--row-hover);
    }

/* ── Cells — all center-aligned, flush edge padding ──────────── */
.lookup-tablewrap .lookup-table td[b-wuyx4u9x75],
.lookup-tablewrap .iac-table td[b-wuyx4u9x75] {
    padding: 9px 12px;
    font-size: 13px;
    vertical-align: middle;
    color: var(--text-primary);
    text-align: center;
    /* NO border-bottom here — row border is on <tr> only so .trim-row--no-border works */
    border-bottom: none;
}

    /* First column: center-aligned, slightly bolder */
    .lookup-tablewrap .lookup-table td:first-child[b-wuyx4u9x75],
    .lookup-tablewrap .iac-table td:first-child[b-wuyx4u9x75] {
        text-align: center;
        font-weight: 600;
        color: var(--text-primary);
    }

/* Dark mode: readable cell text */
[data-bs-theme="dark"] .lookup-tablewrap .lookup-table td[b-wuyx4u9x75],
[data-bs-theme="dark"] .lookup-tablewrap .iac-table td[b-wuyx4u9x75],
[data-theme="dark"] .lookup-tablewrap .lookup-table td[b-wuyx4u9x75],
[data-theme="dark"] .lookup-tablewrap .iac-table td[b-wuyx4u9x75] {
    color: rgba(235,243,252,0.86);
}

    [data-bs-theme="dark"] .lookup-tablewrap .lookup-table td:first-child[b-wuyx4u9x75],
    [data-bs-theme="dark"] .lookup-tablewrap .iac-table td:first-child[b-wuyx4u9x75],
    [data-theme="dark"] .lookup-tablewrap .lookup-table td:first-child[b-wuyx4u9x75],
    [data-theme="dark"] .lookup-tablewrap .iac-table td:first-child[b-wuyx4u9x75] {
        color: rgba(235,243,252,0.92);
    }

/* ── Price column (.text-end) ─────────────────────────────────── */
/* td: price data styling — tabular, weighted, price color */
.lookup-tablewrap .lookup-table td.text-end[b-wuyx4u9x75],
.lookup-tablewrap .iac-table td.text-end[b-wuyx4u9x75] {
    text-align: right;
    font-variant-numeric: tabular-nums;
    font-weight: 780;
    color: var(--text-price);
    letter-spacing: 0.01em;
    font-size: 13.5px;
}

/* th.text-end (Price header) on hardware tables:
   must stay readable on the navy (#1a3260) header background.
   Use the same #ddeaff header text color — NOT text-price (#002855) */
.lookup-tablewrap .lookup-table th.text-end[b-wuyx4u9x75],
.lookup-tablewrap .iac-table th.text-end[b-wuyx4u9x75] {
    text-align: right;
    color: #ddeaff; /* matches the rest of the header text — readable on navy */
    font-variant-numeric: tabular-nums;
}

/* Dark mode td price */
[data-bs-theme="dark"] .lookup-tablewrap .lookup-table td.text-end[b-wuyx4u9x75],
[data-bs-theme="dark"] .lookup-tablewrap .iac-table td.text-end[b-wuyx4u9x75],
[data-theme="dark"] .lookup-tablewrap .lookup-table td.text-end[b-wuyx4u9x75],
[data-theme="dark"] .lookup-tablewrap .iac-table td.text-end[b-wuyx4u9x75] {
    color: #7AACD4;
}

/* Dark mode th price header — readable on dark navy (#0d1e3a) */
[data-bs-theme="dark"] .lookup-tablewrap .lookup-table th.text-end[b-wuyx4u9x75],
[data-bs-theme="dark"] .lookup-tablewrap .iac-table th.text-end[b-wuyx4u9x75],
[data-theme="dark"] .lookup-tablewrap .lookup-table th.text-end[b-wuyx4u9x75],
[data-theme="dark"] .lookup-tablewrap .iac-table th.text-end[b-wuyx4u9x75] {
    color: #7aacd4; /* matches dark-mode header text */
}

/* ================================================================
7. COLUMN WIDTH HELPERS
================================================================ */

.lookup-tablewrap .col-narrow[b-wuyx4u9x75],
.lookup-tablewrap th.col-narrow[b-wuyx4u9x75],
.lookup-tablewrap td.col-narrow[b-wuyx4u9x75] {
    width: 100px;
    min-width: 100px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.lookup-tablewrap .col-comments[b-wuyx4u9x75],
.lookup-tablewrap th.col-comments[b-wuyx4u9x75],
.lookup-tablewrap td.col-comments[b-wuyx4u9x75] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    line-height: 1.45;
    text-align: center;
}

/* ── Snapped tight columns for Door Accessories / Cylinders / Trim / Locksets ── */
/*
   Strategy: table-layout: auto + white-space: nowrap on every column.
   The browser measures each cell's content and assigns exactly that width.
   No column stretches; none collapses below its content.
*/

/* Type column */
.lookup-tablewrap .col-type-tight[b-wuyx4u9x75],
.lookup-tablewrap th.col-type-tight[b-wuyx4u9x75],
.lookup-tablewrap td.col-type-tight[b-wuyx4u9x75] {
    white-space: nowrap;
    padding-left: 12px;
    padding-right: 10px;
    text-align: center;
    font-weight: 600;
}

/* Brand column */
.lookup-tablewrap .col-brand-tight[b-wuyx4u9x75],
.lookup-tablewrap th.col-brand-tight[b-wuyx4u9x75],
.lookup-tablewrap td.col-brand-tight[b-wuyx4u9x75] {
    white-space: nowrap;
    padding-left: 8px;
    padding-right: 10px;
    text-align: center;
}

/* Model column — truncates in fixed layout */
.lookup-tablewrap .col-model-left[b-wuyx4u9x75],
.lookup-tablewrap th.col-model-left[b-wuyx4u9x75],
.lookup-tablewrap td.col-model-left[b-wuyx4u9x75] {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    padding-left: 8px;
    text-align: center;
}

/* All hardware section tables: fill container width */
.lookup-tablewrap[data-section="DoorAccessories"] .lookup-table[b-wuyx4u9x75],
.lookup-tablewrap[data-section="DoorAccessories"] .iac-table[b-wuyx4u9x75],
.lookup-tablewrap[data-section="Trim"] .lookup-table[b-wuyx4u9x75],
.lookup-tablewrap[data-section="Trim"] .iac-table[b-wuyx4u9x75],
.lookup-tablewrap[data-section="Locksets"] .lookup-table[b-wuyx4u9x75],
.lookup-tablewrap[data-section="Locksets"] .iac-table[b-wuyx4u9x75],
.lookup-tablewrap[data-section="Cylinders"] .lookup-table[b-wuyx4u9x75],
.lookup-tablewrap[data-section="Cylinders"] .iac-table[b-wuyx4u9x75] {
    table-layout: fixed;
    width: 100%;
}

/* Swing Compat column */
.lookup-tablewrap .col-swing-compat[b-wuyx4u9x75],
.lookup-tablewrap th.col-swing-compat[b-wuyx4u9x75],
.lookup-tablewrap td.col-swing-compat[b-wuyx4u9x75] {
    white-space: nowrap;
    text-align: center;
    min-width: 90px;
}

/* STC column for Trim — wider to accommodate "51 & 53" format */
.lookup-tablewrap .col-stc-trim[b-wuyx4u9x75],
.lookup-tablewrap th.col-stc-trim[b-wuyx4u9x75],
.lookup-tablewrap td.col-stc-trim[b-wuyx4u9x75] {
    white-space: nowrap;
    text-align: center;
    font-variant-numeric: tabular-nums;
    font-size: 11px;
    padding-left: 8px;
    padding-right: 8px;
}

/* Trim rows that should show no bottom border (door-thickness grouping rows) */
.lookup-tablewrap .lookup-table tbody tr.trim-row--no-border[b-wuyx4u9x75],
.lookup-tablewrap .iac-table tbody tr.trim-row--no-border[b-wuyx4u9x75] {
    border-bottom: none !important;
}

    .lookup-tablewrap .lookup-table tbody tr.trim-row--no-border td[b-wuyx4u9x75],
    .lookup-tablewrap .iac-table tbody tr.trim-row--no-border td[b-wuyx4u9x75] {
        border-bottom: none !important;
    }

/* ================================================================
8. SORT INDICATOR
================================================================ */

.sort-indicator[b-wuyx4u9x75] {
    display: inline-block;
    margin-left: 4px;
    font-size: 0.80em;
    color: var(--iac-gold);
    vertical-align: middle;
    opacity: 0.78;
    transition: opacity var(--t-fast) var(--ease);
}

th:hover .sort-indicator[b-wuyx4u9x75] {
    opacity: 1;
}

/* ================================================================
9. SORT CONTROLS BAR — see section 11b below
================================================================ */

/* ================================================================
10. SHIP LOOSE FILTER (.shiploose-filter)
Segmented control — navy active, ghost inactive
================================================================ */

.shiploose-filter[b-wuyx4u9x75] {
    display: inline-flex;
    flex-wrap: nowrap;
    margin-bottom: 18px;
    border-radius: var(--r-sm);
    /* Stronger border — clearly visible on white card */
    border: 1.5px solid rgba(0,40,85,0.30);
    overflow: hidden;
    background: var(--bg-surface-3);
    box-shadow: var(--sh-xs);
}

    .shiploose-filter .btn[b-wuyx4u9x75] {
        font-size: 12px;
        font-weight: 700;
        padding: 6px 16px;
        border: none;
        border-radius: 0;
        border-right: 1px solid rgba(0,40,85,0.10);
        letter-spacing: 0.02em;
        white-space: nowrap;
        transition: background var(--t-fast) var(--ease), color var(--t-fast) var(--ease);
    }

        .shiploose-filter .btn:last-child[b-wuyx4u9x75] {
            border-right: none;
        }

        /* Active segment */
        .shiploose-filter .btn.btn-primary[b-wuyx4u9x75] {
            background: #002855;
            color: #FFFFFF;
            box-shadow: none;
        }

            .shiploose-filter .btn.btn-primary:hover[b-wuyx4u9x75] {
                background: #001E40;
            }

        /* Inactive segment */
        .shiploose-filter .btn.btn-outline-primary[b-wuyx4u9x75] {
            background: transparent;
            color: #435875;
            box-shadow: none;
        }

            .shiploose-filter .btn.btn-outline-primary:hover[b-wuyx4u9x75] {
                background: rgba(0,40,85,0.06);
                color: #002855;
            }

        /* Round outer corners only */
        .shiploose-filter .btn:first-child[b-wuyx4u9x75] {
            border-radius: calc(var(--r-sm) - 2px) 0 0 calc(var(--r-sm) - 2px);
        }

        .shiploose-filter .btn:last-child[b-wuyx4u9x75] {
            border-radius: 0 calc(var(--r-sm) - 2px) calc(var(--r-sm) - 2px) 0;
        }

        .shiploose-filter .btn:only-child[b-wuyx4u9x75] {
            border-radius: calc(var(--r-sm) - 2px);
        }

/* Dark mode */
[data-bs-theme="dark"] .shiploose-filter[b-wuyx4u9x75],
[data-theme="dark"] .shiploose-filter[b-wuyx4u9x75] {
    background: var(--bg-surface-3);
    border-color: rgba(255,255,255,0.08);
}

    [data-bs-theme="dark"] .shiploose-filter .btn[b-wuyx4u9x75],
    [data-theme="dark"] .shiploose-filter .btn[b-wuyx4u9x75] {
        border-right-color: rgba(255,255,255,0.06);
    }

        [data-bs-theme="dark"] .shiploose-filter .btn.btn-primary[b-wuyx4u9x75],
        [data-theme="dark"] .shiploose-filter .btn.btn-primary[b-wuyx4u9x75] {
            background: rgba(241,184,40,0.17);
            color: #F0D888;
        }

            [data-bs-theme="dark"] .shiploose-filter .btn.btn-primary:hover[b-wuyx4u9x75],
            [data-theme="dark"] .shiploose-filter .btn.btn-primary:hover[b-wuyx4u9x75] {
                background: rgba(241,184,40,0.25);
            }

        [data-bs-theme="dark"] .shiploose-filter .btn.btn-outline-primary[b-wuyx4u9x75],
        [data-theme="dark"] .shiploose-filter .btn.btn-outline-primary[b-wuyx4u9x75] {
            color: #7A98B4;
        }

            [data-bs-theme="dark"] .shiploose-filter .btn.btn-outline-primary:hover[b-wuyx4u9x75],
            [data-theme="dark"] .shiploose-filter .btn.btn-outline-primary:hover[b-wuyx4u9x75] {
                background: rgba(255,255,255,0.05);
                color: #A8C4DC;
            }


/* ================================================================
11. BUTTON STYLES
Copies the btn-solid family from Doors_razor.css so the scoped
stylesheet has everything it needs without relying on cascade order.
================================================================ */

.btn-solid[b-wuyx4u9x75] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    font-family: 'din-2014', 'DIN Pro', 'DM Sans', sans-serif !important;
    font-weight: 700;
    letter-spacing: 0.03em;
    border-radius: 9px;
    border: 1px solid transparent;
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
}

    .btn-solid.btn-sm[b-wuyx4u9x75] {
        font-size: 12px;
        padding: 0 14px;
        height: 34px;
    }

    .btn-solid:active[b-wuyx4u9x75] {
        transform: translateY(1px);
    }

/* NEUTRAL — translucent navy */
.btn-neutral-solid[b-wuyx4u9x75] {
    background: var(--btn-neutral-bg, rgba(0,40,85,0.07)) !important;
    border-color: var(--btn-neutral-border, rgba(0,40,85,0.14)) !important;
    color: var(--btn-neutral-color, rgba(13,31,60,0.78)) !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08) !important;
}

    .btn-neutral-solid:hover:not(:disabled)[b-wuyx4u9x75] {
        background: var(--btn-neutral-hover, rgba(0,40,85,0.12)) !important;
        color: var(--text-primary) !important;
        border-color: rgba(0,40,85,0.30) !important;
        box-shadow: 0 3px 8px rgba(0,40,85,0.14) !important;
        transform: translateY(-1px) !important;
    }

    .btn-neutral-solid:active:not(:disabled)[b-wuyx4u9x75] {
        transform: translateY(0) !important;
        box-shadow: 0 1px 2px rgba(0,0,0,0.06) !important;
    }

/* NEUTRAL dark mode — brighter so inactive buttons are clearly readable */
[data-bs-theme="dark"] .btn-neutral-solid[b-wuyx4u9x75],
[data-theme="dark"] .btn-neutral-solid[b-wuyx4u9x75] {
    background: rgba(255,255,255,0.10) !important;
    border-color: rgba(255,255,255,0.18) !important;
    color: rgba(255,255,255,0.82) !important;
    box-shadow: 0 1px 3px rgba(0,0,0,0.20) !important;
}

    [data-bs-theme="dark"] .btn-neutral-solid:hover:not(:disabled)[b-wuyx4u9x75],
    [data-theme="dark"] .btn-neutral-solid:hover:not(:disabled)[b-wuyx4u9x75] {
        background: rgba(255,255,255,0.16) !important;
        border-color: rgba(255,255,255,0.28) !important;
        color: rgba(255,255,255,0.96) !important;
        box-shadow: 0 3px 8px rgba(0,0,0,0.30) !important;
        transform: translateY(-1px) !important;
    }

/* PRIMARY — solid navy fill */
.btn-primary-solid[b-wuyx4u9x75] {
    background: #002855 !important;
    border-color: rgba(241,184,40,0.35) !important;
    color: #ffffff !important;
    box-shadow: 0 3px 14px rgba(0,40,85,0.28) !important;
}

    .btn-primary-solid:hover:not(:disabled)[b-wuyx4u9x75] {
        background: #001e42 !important;
        border-color: rgba(241,184,40,0.55) !important;
        color: #ffffff !important;
        box-shadow: 0 5px 20px rgba(0,40,85,0.38) !important;
    }

[data-bs-theme="dark"] .btn-primary-solid[b-wuyx4u9x75],
[data-theme="dark"] .btn-primary-solid[b-wuyx4u9x75] {
    background: rgba(241,184,40,0.14) !important;
    border-color: rgba(241,184,40,0.36) !important;
    color: rgba(241,184,40,0.95) !important;
    box-shadow: 0 3px 14px rgba(0,0,0,0.30) !important;
}

    [data-bs-theme="dark"] .btn-primary-solid:hover:not(:disabled)[b-wuyx4u9x75],
    [data-theme="dark"] .btn-primary-solid:hover:not(:disabled)[b-wuyx4u9x75] {
        background: rgba(241,184,40,0.22) !important;
        color: #fff !important;
    }

/* UTILITY EXPORT — solid red PDF action */
.btn-utility-export[b-wuyx4u9x75] {
    background: #b91c1c !important;
    border: 1px solid rgba(0,0,0,0.16) !important;
    color: #ffffff !important;
    box-shadow: 0 1px 0 rgba(0,0,0,0.16), 0 3px 10px rgba(185,28,28,0.30) !important;
}

    .btn-utility-export:hover:not(:disabled)[b-wuyx4u9x75] {
        background: #991b1b !important;
        border-color: rgba(0,0,0,0.22) !important;
        box-shadow: 0 2px 0 rgba(0,0,0,0.18), 0 6px 18px rgba(185,28,28,0.40) !important;
        color: #ffffff !important;
    }

    .btn-utility-export:active:not(:disabled)[b-wuyx4u9x75] {
        transform: translateY(1px);
        box-shadow: 0 1px 0 rgba(0,0,0,0.16), 0 2px 6px rgba(185,28,28,0.25) !important;
    }

[data-bs-theme="dark"] .btn-utility-export[b-wuyx4u9x75],
[data-theme="dark"] .btn-utility-export[b-wuyx4u9x75] {
    background: #dc2626 !important;
    border: 1px solid rgba(0,0,0,0.28) !important;
    color: #ffffff !important;
    box-shadow: 0 1px 0 rgba(0,0,0,0.30), 0 3px 12px rgba(220,38,38,0.35) !important;
}

    [data-bs-theme="dark"] .btn-utility-export:hover:not(:disabled)[b-wuyx4u9x75],
    [data-theme="dark"] .btn-utility-export:hover:not(:disabled)[b-wuyx4u9x75] {
        background: #b91c1c !important;
        box-shadow: 0 2px 0 rgba(0,0,0,0.35), 0 6px 20px rgba(220,38,38,0.45) !important;
        color: #ffffff !important;
    }

/* ================================================================
11b. SORT CONTROLS BAR
================================================================ */

.sort-controls-bar[b-wuyx4u9x75] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 16px;
    padding: 8px 12px;
    background: var(--panel-bg, #eaedf1);
    border: 1px solid var(--panel-border, rgba(0,40,85,0.10));
    border-radius: 10px;
}

[data-bs-theme="dark"] .sort-controls-bar[b-wuyx4u9x75],
[data-theme="dark"] .sort-controls-bar[b-wuyx4u9x75] {
    background: var(--panel-bg, #1a2033);
    border-color: var(--panel-border, rgba(255,255,255,0.10));
}

.sort-controls-divider[b-wuyx4u9x75] {
    width: 1px;
    height: 24px;
    background: var(--divider-strong, rgba(0,40,85,0.14));
    margin: 0 4px;
    flex-shrink: 0;
}

[data-bs-theme="dark"] .sort-controls-divider[b-wuyx4u9x75],
[data-theme="dark"] .sort-controls-divider[b-wuyx4u9x75] {
    background: var(--divider-strong, rgba(255,255,255,0.10));
}

.sort-control-group[b-wuyx4u9x75] {
    display: flex;
    align-items: center;
    gap: 8px;
}

.sort-control-label[b-wuyx4u9x75] {
    font-size: 10.5px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: var(--text-muted);
    white-space: nowrap;
    flex-shrink: 0;
}

.sort-btn-group[b-wuyx4u9x75] {
    display: inline-flex;
    gap: 4px;
}

/* Responsive */
@media (max-width: 767.98px) {
    .sort-controls-bar[b-wuyx4u9x75] {
        padding: 7px 10px;
        gap: 6px;
    }

    .sort-controls-divider[b-wuyx4u9x75] {
        margin: 0 4px;
    }

    .sort-control-label[b-wuyx4u9x75] {
        font-size: 10px;
    }
}

@media (max-width: 575.98px) {
    .sort-controls-bar[b-wuyx4u9x75] {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    .sort-controls-divider[b-wuyx4u9x75] {
        display: none;
    }

    .sort-control-group[b-wuyx4u9x75] {
        width: 100%;
    }

    .sort-btn-group[b-wuyx4u9x75] {
        width: 100%;
    }

        .sort-btn-group .btn[b-wuyx4u9x75] {
            flex: 1;
            justify-content: center;
        }
}

.bo-layout.lookup-shell .alert[b-wuyx4u9x75] {
    font-size: 13px;
    border-radius: var(--r-md);
    padding: 14px 18px;
    border: 1px solid transparent;
    margin: 24px 32px;
}

.bo-layout.lookup-shell .alert-info[b-wuyx4u9x75] {
    background: #D4EDFF;
    color: #00467A;
    border-color: #80C8F8;
}

.bo-layout.lookup-shell .alert-warning[b-wuyx4u9x75] {
    background: #FFF3CE;
    color: #794800;
    border-color: #F0C840;
}

[data-bs-theme="dark"] .bo-layout.lookup-shell .alert-info[b-wuyx4u9x75],
[data-theme="dark"] .bo-layout.lookup-shell .alert-info[b-wuyx4u9x75] {
    background: rgba(14,165,233,0.13);
    color: #55CCFF;
    border-color: rgba(14,165,233,0.30);
}

[data-bs-theme="dark"] .bo-layout.lookup-shell .alert-warning[b-wuyx4u9x75],
[data-theme="dark"] .bo-layout.lookup-shell .alert-warning[b-wuyx4u9x75] {
    background: rgba(255,193,7,0.11);
    color: #FFD456;
    border-color: rgba(255,193,7,0.30);
}
/* ================================================================
13. IAC LOGIN FOOTER
================================================================ */
/* --------------------------------------------------------------------------
   FOOTER STRIPE
   -------------------------------------------------------------------------- */
.iac-login-footer[b-wuyx4u9x75] {
    position: fixed;
    inset: auto 0 0 0;
    height: 38px;
    z-index: 9999;
    background: linear-gradient(180deg, rgba(255,255,255,0.10), rgba(0,0,0,0.00)), var(--iac-blue-hex, #002855);
    border-top: 1px solid rgba(255,255,255,0.12);
}

    .iac-login-footer.iac-login-footer-img[b-wuyx4u9x75] {
        background: #002855 var(--img-bottom-blue-bar, url("/images/BottomBlueBar.png")) center bottom / cover no-repeat;
        border-top: 0;
        border-right: 0;
    }

:root[data-bs-theme="dark"] .iac-login-footer[b-wuyx4u9x75] {
    background: linear-gradient(180deg, rgba(255,255,255,0.04), rgba(0,0,0,0.00)), #050d18;
    border-top-color: rgba(255,255,255,0.08);
}

    :root[data-bs-theme="dark"] .iac-login-footer.iac-login-footer-img[b-wuyx4u9x75] {
        background-color: #050d18;
        background-image: var(--img-bottom-blue-bar, url("/images/BottomBlueBar.png"));
        background-repeat: no-repeat;
        background-size: cover;
        background-position: center bottom;
        border-top: 0;
    }
/* ================================================================
14. RESPONSIVE — FULL MOBILE-FIRST OVERHAUL
================================================================ */
/* ── Column visibility classes — used in both door & hardware tables ── */
/* col-swing: Leaf Type (door) / Swing (hardware) */
/* col-stc:   STC column (door & hardware)         */
/* col-type:  Type column (DoorAccessories)        */
/* ── Tablet (≤991px) ─────────────────────────────────────────── */
@media (max-width: 991.98px) {
    .bo-layout.lookup-shell > .bo-main[b-wuyx4u9x75] {
        /* bottom padding must exceed the 38px fixed footer */
        padding: calc(var(--navbar-h) + 34px) clamp(10px, 2.2vw, 20px) 58px clamp(10px, 2.2vw, 20px);
    }

    .bo-sidenav.lookup-sidebar[b-wuyx4u9x75] {
        width: 204px;
        min-width: 204px;
        padding-right: 10px;
    }

    .lookup-tablewrap[b-wuyx4u9x75],
    .lookup-tablewrap.lookup-tablewrap--door[b-wuyx4u9x75] {
        max-height: 380px;
        margin-right: 0;
    }

    .card.lookup-panel > .card-body[b-wuyx4u9x75] {
        padding: 16px 10px 12px;
    }

    .backoffice-sidenav .nav-link[b-wuyx4u9x75] {
        font-size: 14px;
        padding-left: 20px;
    }

    .bo-nav-heading[b-wuyx4u9x75] {
        padding-left: 20px;
    }

    .lookup-title[b-wuyx4u9x75] {
        padding-left: 20px;
    }
}
/* ── Landscape mobile (≤767px) — sidebar goes horizontal ─────── */
@media (max-width: 767.98px) {
    .bo-layout.lookup-shell[b-wuyx4u9x75] {
        flex-direction: column;
    }
    /* ── Mobile Sidebar: collapses to a stacked chip-bar ─────────── */
    .bo-sidenav.lookup-sidebar[b-wuyx4u9x75] {
        width: 100%;
        min-width: 100%;
        max-height: none;
        min-height: unset;
        height: auto;
        position: static;
        border-right: none;
        border-bottom: 2px solid rgba(241,184,40,0.35);
        padding: 0 0 6px;
        overflow: visible;
        background: #EEF3FA !important;
        flex-shrink: 0;
    }

        .bo-sidenav.lookup-sidebar[b-wuyx4u9x75]::after {
            display: none;
        }
    /* Title row: compact on mobile */
    .lookup-title[b-wuyx4u9x75] {
        padding: 10px 16px 8px;
        border-bottom: 1px solid rgba(241,184,40,0.18);
        margin-bottom: 0;
    }

        .lookup-title h3[b-wuyx4u9x75] {
            font-size: 14px !important;
        }
    /* Show/hide toggles: horizontal row, with proper left indent */
    .lookup-show-toggle[b-wuyx4u9x75] {
        padding: 8px 16px 6px 16px;
        display: flex;
        flex-direction: row;
        gap: 20px;
        flex-wrap: wrap;
        align-items: center;
    }

        .lookup-show-toggle .form-check[b-wuyx4u9x75] {
            display: inline-flex !important;
            align-items: center;
            gap: 8px;
            padding-left: 0 !important;
            margin: 0 !important;
            white-space: nowrap;
        }

        .lookup-show-toggle .form-check-input[b-wuyx4u9x75] {
            margin: 0 !important;
            flex-shrink: 0;
        }
        /* Guidance notes: hide on mobile to save space */
        .lookup-show-toggle .lookup-guidance[b-wuyx4u9x75] {
            display: none;
        }
    /* backoffice-sidenav: stacks two chip rows vertically */
    .backoffice-sidenav[b-wuyx4u9x75] {
        display: flex !important;
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        padding: 4px 0 2px !important;
        gap: 0 !important;
        min-height: unset;
        flex: none;
        overflow: visible;
    }
    /* Each chip row is one independently scrollable horizontal strip */
    .sidenav-chip-row[b-wuyx4u9x75] {
        display: flex;
        flex-direction: row;
        flex-wrap: nowrap;
        align-items: center;
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
        padding: 4px 12px 5px 12px;
        gap: 6px;
        position: relative;
    }

        .sidenav-chip-row[b-wuyx4u9x75]::-webkit-scrollbar {
            display: none;
        }
    /* Subtle divider between the two rows */
    .sidenav-chip-row--hardware[b-wuyx4u9x75] {
        border-top: 1px solid rgba(0,40,85,0.08);
    }
    /* Scroll hint: right-edge fade + chevron pointing right */
    .sidenav-chip-row-wrap[b-wuyx4u9x75] {
        position: relative;
        overflow: hidden; /* clips the ::after fade */
    }

        .sidenav-chip-row-wrap[b-wuyx4u9x75]::after {
            content: "›";
            position: absolute;
            right: 0;
            top: 0;
            bottom: 0;
            width: 32px;
            display: flex;
            align-items: center;
            justify-content: flex-end;
            padding-right: 6px;
            font-size: 16px;
            font-weight: 700;
            color: rgba(0,40,85,0.45);
            background: linear-gradient(to right, transparent 0%, #EEF3FA 60%);
            pointer-events: none;
            z-index: 2;
        }

    [data-bs-theme="dark"] .sidenav-chip-row-wrap[b-wuyx4u9x75]::after,
    [data-theme="dark"] .sidenav-chip-row-wrap[b-wuyx4u9x75]::after {
        background: linear-gradient(to right, transparent 0%, #080C14 60%);
        color: rgba(180,200,220,0.50);
    }
    /* Row label — "Door Pricing" / "Hardware" — left-anchored, non-shrinking */
    .sidenav-row-label[b-wuyx4u9x75] {
        flex-shrink: 0;
        font-size: 9px;
        font-weight: 900;
        letter-spacing: 0.18em;
        text-transform: uppercase;
        color: #2E4A70;
        white-space: nowrap;
        padding-right: 8px;
        border-right: 1px solid rgba(0,40,85,0.15);
        margin-right: 2px;
        align-self: center;
        line-height: 1.4;
        user-select: none;
    }
    /* Desktop: sidenav-chip-row and sidenav-row-label are invisible — just flat flow */
    /* (overridden back to normal in the desktop rule set at the end of this block) */
    /* Nav chips */
    .bo-sidenav .backoffice-sidenav .nav-link[b-wuyx4u9x75],
    .lookup-sidebar .backoffice-sidenav .nav-link[b-wuyx4u9x75],
    .backoffice-sidenav button.nav-link[b-wuyx4u9x75] {
        flex-shrink: 0 !important;
        width: auto !important;
        white-space: nowrap !important;
        padding: 5px 13px !important;
        font-size: 11.5px !important;
        font-weight: 650 !important;
        border-radius: 999px !important;
        border: 1.5px solid rgba(0,40,85,0.15) !important;
        border-left: 1.5px solid rgba(0,40,85,0.15) !important;
        border-bottom: 1.5px solid rgba(0,40,85,0.15) !important;
        background: rgba(255,255,255,0.72) !important;
        color: #3A4E6A !important;
        box-shadow: 0 1px 3px rgba(0,0,0,0.07) !important;
        transition: background 120ms ease, border-color 120ms ease, color 120ms ease !important;
    }

        .bo-sidenav .backoffice-sidenav .nav-link:hover[b-wuyx4u9x75],
        .lookup-sidebar .backoffice-sidenav .nav-link:hover[b-wuyx4u9x75],
        .backoffice-sidenav button.nav-link:hover[b-wuyx4u9x75] {
            background: rgba(0,40,85,0.08) !important;
            border-color: rgba(0,40,85,0.30) !important;
            color: #001A3A !important;
        }

        .bo-sidenav .backoffice-sidenav .nav-link.active[b-wuyx4u9x75],
        .lookup-sidebar .backoffice-sidenav .nav-link.active[b-wuyx4u9x75],
        .backoffice-sidenav button.nav-link.active[b-wuyx4u9x75] {
            background: linear-gradient(135deg, #1a3260 0%, #0e2050 100%) !important;
            border-color: rgba(241,184,40,0.55) !important;
            color: #FFFFFF !important;
            font-weight: 750 !important;
            box-shadow: 0 2px 8px rgba(0,20,80,0.22) !important;
        }
    /* Dark mode */
    [data-bs-theme="dark"] .bo-sidenav.lookup-sidebar[b-wuyx4u9x75],
    [data-theme="dark"] .bo-sidenav.lookup-sidebar[b-wuyx4u9x75] {
        background: #080C14 !important;
        border-bottom-color: rgba(241,184,40,0.28) !important;
    }

    [data-bs-theme="dark"] .sidenav-row-label[b-wuyx4u9x75],
    [data-theme="dark"] .sidenav-row-label[b-wuyx4u9x75] {
        color: #5A7A9E;
        border-right-color: rgba(255,255,255,0.08);
    }

    [data-bs-theme="dark"] .sidenav-chip-row--hardware[b-wuyx4u9x75],
    [data-theme="dark"] .sidenav-chip-row--hardware[b-wuyx4u9x75] {
        border-top-color: rgba(255,255,255,0.06);
    }

    [data-bs-theme="dark"] .bo-sidenav .backoffice-sidenav .nav-link[b-wuyx4u9x75],
    [data-theme="dark"] .bo-sidenav .backoffice-sidenav .nav-link[b-wuyx4u9x75],
    [data-bs-theme="dark"] .lookup-sidebar .backoffice-sidenav .nav-link[b-wuyx4u9x75],
    [data-theme="dark"] .lookup-sidebar .backoffice-sidenav .nav-link[b-wuyx4u9x75] {
        background: rgba(255,255,255,0.05) !important;
        border-color: rgba(255,255,255,0.10) !important;
        color: #8898B0 !important;
    }

        [data-bs-theme="dark"] .bo-sidenav .backoffice-sidenav .nav-link.active[b-wuyx4u9x75],
        [data-theme="dark"] .lookup-sidebar .backoffice-sidenav .nav-link.active[b-wuyx4u9x75] {
            background: linear-gradient(135deg, rgba(0,87,255,0.45) 0%, rgba(0,60,200,0.22) 100%) !important;
            border-color: rgba(241,184,40,0.50) !important;
            color: #FFFFFF !important;
        }

    .bo-layout.lookup-shell > .bo-main[b-wuyx4u9x75] {
        padding: 22px clamp(10px, 3.2vw, 16px) 100px clamp(10px, 3.2vw, 16px);
    }

    .lookup-tablewrap[b-wuyx4u9x75],
    .lookup-tablewrap.lookup-tablewrap--door[b-wuyx4u9x75] {
        max-height: 320px;
        margin-right: 0;
    }

    .shiploose-filter[b-wuyx4u9x75] {
        flex-wrap: wrap;
    }

    .card.lookup-panel > .card-body[b-wuyx4u9x75] {
        padding: 14px 10px 10px;
    }
    /* DOOR TABLE: drop Swing (Leaf Type) at ≤767px */
    .lookup-tablewrap--door .col-swing[b-wuyx4u9x75] {
        display: none;
    }
}
/* ── Small mobile (≤575px) — aggressive column dropping ──────── */
@media (max-width: 575.98px) {
    .card.lookup-panel > .card-body[b-wuyx4u9x75] {
        padding: 12px 8px 8px;
    }

    .lookup-tablewrap[b-wuyx4u9x75] {
        max-height: 300px;
    }

    .card.lookup-panel .card-body h3[b-wuyx4u9x75] {
        font-size: 0.95rem;
    }

    .backoffice-sidenav .nav-link[b-wuyx4u9x75] {
        font-size: 13.75px;
    }
    /* Tighter cell padding on phones */
    .lookup-tablewrap .lookup-table td[b-wuyx4u9x75],
    .lookup-tablewrap .iac-table td[b-wuyx4u9x75] {
        padding: 7px 8px;
        font-size: 12px;
    }

    .lookup-tablewrap .lookup-table thead th[b-wuyx4u9x75],
    .lookup-tablewrap .iac-table thead th[b-wuyx4u9x75],
    .lookup-tablewrap .lookup-table--sticky thead th[b-wuyx4u9x75] {
        padding: 9px 8px;
        font-size: 0.65rem;
    }
    /* ── Locksets mobile: shrink model column slightly ── */
    .lookup-tablewrap[data-section="Locksets"] .col-model-left[b-wuyx4u9x75],
    .lookup-tablewrap[data-section="Locksets"] th.col-model-left[b-wuyx4u9x75] {
        font-size: 11px;
        padding-left: 6px;
        padding-right: 6px;
    }
    /* ── Door Accessories mobile: shrink brand + model ── */
    .lookup-tablewrap[data-section="DoorAccessories"] .col-brand-tight[b-wuyx4u9x75],
    .lookup-tablewrap[data-section="DoorAccessories"] th.col-brand-tight[b-wuyx4u9x75] {
        font-size: 11px;
        padding-left: 6px;
        padding-right: 6px;
    }

    .lookup-tablewrap[data-section="DoorAccessories"] .col-model-left[b-wuyx4u9x75],
    .lookup-tablewrap[data-section="DoorAccessories"] th.col-model-left[b-wuyx4u9x75] {
        font-size: 11px;
        padding-left: 6px;
        padding-right: 6px;
    }

    .lookup-tablewrap[data-section="DoorAccessories"] .col-type-tight[b-wuyx4u9x75],
    .lookup-tablewrap[data-section="DoorAccessories"] th.col-type-tight[b-wuyx4u9x75] {
        font-size: 11px;
        padding-left: 6px;
        padding-right: 6px;
    }
    /* ── Ship Loose mobile: shrink description on Hinges + Sill Plate ── */
    .lookup-tablewrap[data-section="ShipLoose"] td:first-child[b-wuyx4u9x75],
    .lookup-tablewrap[data-section="ShipLoose"] th:first-child[b-wuyx4u9x75] {
        font-size: 11px;
        padding-left: 6px;
        padding-right: 6px;
        white-space: normal;
        word-break: break-word;
        text-align: center;
        max-width: 140px;
    }
    /* ── Ship Loose Seals mobile: shrink UOM column slightly ── */
    /* UOM is the 2nd column when Seals filter is active (Description | UOM | Price) */
    /* We can't know the filter state in CSS, so we target col-narrow in ShipLoose context */
    .lookup-tablewrap[data-section="ShipLoose"] .col-narrow[b-wuyx4u9x75] {
        font-size: 11px;
        padding-left: 5px;
        padding-right: 5px;
        min-width: unset;
        width: auto;
    }
    /* DOOR TABLE: drop STC at ≤575px */
    .lookup-tablewrap--door .col-stc[b-wuyx4u9x75] {
        display: none;
    }
    /* Ship Loose filter: full-width row */
    .shiploose-filter[b-wuyx4u9x75] {
        width: 100%;
        display: flex;
    }

        .shiploose-filter .btn[b-wuyx4u9x75] {
            flex: 1;
            font-size: 11px;
            padding: 6px 8px;
        }
    /* Sorting controls: stack */
    .lookup-main .row.mb-3[b-wuyx4u9x75] {
        flex-direction: column;
        gap: 8px;
    }

        .lookup-main .row.mb-3 > div[b-wuyx4u9x75] {
            width: 100%;
        }
    /* Card panel: edge-to-edge on phone */
    .card.lookup-panel[b-wuyx4u9x75] {
        margin: 0 4px 16px;
        border-radius: var(--r-md);
    }
}
/* ── Extra-small phone (≤400px) — combine/further drop ───────── */
@media (max-width: 400px) {
    .lookup-tablewrap .lookup-table td[b-wuyx4u9x75],
    .lookup-tablewrap .iac-table td[b-wuyx4u9x75] {
        padding: 6px 6px;
        font-size: 11.5px;
    }

    .lookup-tablewrap .lookup-table thead th[b-wuyx4u9x75],
    .lookup-tablewrap .iac-table thead th[b-wuyx4u9x75],
    .lookup-tablewrap .lookup-table--sticky thead th[b-wuyx4u9x75] {
        padding: 8px 6px;
        font-size: 0.60rem;
        letter-spacing: 0.06em;
    }
    /* Door Accessories: also hide Type col at tiny screens */
    .lookup-tablewrap[data-section="DoorAccessories"] .col-type-tight[b-wuyx4u9x75] {
        display: none;
    }

    .card.lookup-panel[b-wuyx4u9x75] {
        margin: 0 0 12px;
        border-radius: var(--r-sm);
    }

    .bo-sidenav .backoffice-sidenav .nav-link[b-wuyx4u9x75],
    .lookup-sidebar .backoffice-sidenav .nav-link[b-wuyx4u9x75],
    .backoffice-sidenav button.nav-link[b-wuyx4u9x75] {
        padding: 5px 10px !important;
        font-size: 11.5px !important;
    }
}
/* ── Intermediate breakpoints for hardware col drops ─────────────
   New simplified tables: Locksets, DoorAccessories, Cylinders, Trim
   only show Brand/Model/Price (+ Type for DoorAcc, STC for Trim).
   col-stc-trim is NEVER hidden — Trim STC must always show.
   col-type-tight drops for DoorAccessories at very small screens.
─────────────────────────────────────────────────────────────── */
/* At 400px: DoorAccessories can drop Type column */
@media (max-width: 400px) {
    .lookup-tablewrap[data-section="DoorAccessories"] .col-type-tight[b-wuyx4u9x75] {
        display: none;
    }
}
/* Hide Door Thickness (Comments) column for Trim — data lives in model but not needed in the table view */
.lookup-tablewrap[data-section="Trim"] .col-comments[b-wuyx4u9x75] {
    display: none;
}
/* col-stc-trim is intentionally NOT hidden at any breakpoint */
/* ================================================================
15. PRINT
================================================================ */

@media print {
    .bo-sidenav.lookup-sidebar[b-wuyx4u9x75] {
        display: none;
    }

    .bo-layout.lookup-shell > .bo-main[b-wuyx4u9x75] {
        padding: 0;
    }

    .lookup-tablewrap[b-wuyx4u9x75] {
        max-height: none;
        overflow: visible;
        border: none;
        box-shadow: none;
        margin-right: 0;
        padding-right: 0;
    }

        .lookup-tablewrap thead th[b-wuyx4u9x75] {
            background: var(--thead-bg);
            color: var(--thead-color);
            -webkit-print-color-adjust: exact;
            print-color-adjust: exact;
        }
    /* Restore all hidden columns for print */
    .col-swing[b-wuyx4u9x75],
    .col-stc[b-wuyx4u9x75],
    .col-type[b-wuyx4u9x75],
    .col-type-tight[b-wuyx4u9x75],
    .col-brand-tight[b-wuyx4u9x75],
    .col-stc-trim[b-wuyx4u9x75] {
        display: table-cell !important;
    }

    .btn-utility-export[b-wuyx4u9x75],
    .btn-export-pdf[b-wuyx4u9x75],
    .shiploose-filter[b-wuyx4u9x75],
    .lookup-show-toggle[b-wuyx4u9x75],
    .sort-controls-bar[b-wuyx4u9x75] {
        display: none;
    }
}
/* _content/NoiseLockQuoteTool/Pages/ProductManagement.razor.rz.scp.css */
/* ═══════════════════════════════════════════════════════════════════
   PRODUCTMANAGEMENT.RAZOR — COMPONENT STYLESHEET
   IAC Acoustics · Engineering Design System · 2026
   Font: DIN 2014 / DIN Pro
   Brand: Navy #002855 · Gold #F1B828 · Green #1a7a4a
   ═══════════════════════════════════════════════════════════════════ */


/* ─────────────────────────────────────────────────────────────────
   1. DESIGN TOKENS — LIGHT
   ───────────────────────────────────────────────────────────────── */
:root[b-5ntgunhjqm],
:root[data-bs-theme="light"][b-5ntgunhjqm],
[data-theme="light"][b-5ntgunhjqm] {
    --iac-navy: #002855;
    --iac-navy-mid: #1a3260;
    --iac-navy-deep: #001535;
    --iac-gold: #F1B828;
    --iac-gold-dim: rgba(241,184,40,0.50);
    --iac-gold-rgb: 241,184,40;
    --iac-navy-rgb: 0,40,85;
    --iac-green: #1a7a4a;
    --iac-green-rgb: 26,122,74;
    /* Surfaces */
    --page-bg: #dde3ee;
    --panel-bg: #ffffff;
    --panel-bg-alt: #edf0f7;
    --panel-border: rgba(0,40,85,0.15);
    --panel-border-strong: rgba(0,40,85,0.26);
    /* Header */
    --header-bg: #002855;
    --header-text: #ffffff;
    /* Text */
    --text-primary: #001e42;
    --text-secondary: rgba(0,30,66,0.72);
    --text-muted: rgba(0,30,66,0.50);
    --text-dim: rgba(0,30,66,0.32);
    /* Inputs */
    --input-bg: #ffffff;
    --input-bg-hover: #f0f4fb;
    --input-border: rgba(0,40,85,0.22);
    --input-border-focus: #F1B828;
    --input-focus-shadow: rgba(241,184,40,0.22);
    --input-text: #001e42;
    --input-placeholder: rgba(0,30,66,0.38);
    --input-disabled-bg: rgba(0,40,85,0.06);
    /* Dividers */
    --divider: rgba(0,40,85,0.10);
    --divider-strong: rgba(0,40,85,0.18);
    /* Tables */
    --table-head-bg: #002855;
    --table-head-text: #ffffff;
    --table-row-even: #ffffff;
    --table-row-odd: #f0f4fb;
    --table-row-hover: rgba(0,40,85,0.06);
    --table-border: rgba(0,40,85,0.10);
    /* Scrollbar */
    --scrollbar-thumb: rgba(0,40,85,0.22);
    /* Buttons */
    --btn-primary-bg: #002855;
    --btn-primary-text: #ffffff;
    --btn-primary-hover: #001e42;
    --btn-ghost-bg: rgba(0,40,85,0.07);
    --btn-ghost-border: rgba(0,40,85,0.22);
    --btn-ghost-text: #002855;
    --btn-ghost-hover: rgba(0,40,85,0.13);
    /* Tabs */
    --tab-strip-bg: #e8ecf5;
    --tab-active-bg: #002855;
    --tab-active-text: #ffffff;
    --tab-hover-bg: rgba(0,40,85,0.09);
    --tab-hover-text: #002855;
    --tab-border: rgba(0,40,85,0.18);
    --tab-inactive-text: rgba(0,40,85,0.60);
    /* Alerts */
    --warn-bg: rgba(241,184,40,0.12);
    --warn-border: rgba(241,184,40,0.45);
    --warn-text: #5c3d00;
    --info-bg: rgba(0,40,85,0.06);
    --info-border: rgba(0,40,85,0.20);
    --info-text: #001e42;
    --success-bg: rgba(26,122,74,0.09);
    --success-text: #0d4a26;
    /* Section labels */
    --section-label-bg: rgba(0,40,85,0.07);
    --section-label-text: #002855;
    --section-label-border: #F1B828;
    /* Badges */
    --override-bg: rgba(241,184,40,0.14);
    --override-text: #6b3e00;
    --override-border: rgba(241,184,40,0.50);
    --inherited-bg: rgba(26,122,74,0.10);
    --inherited-text: #0b4024;
    --inherited-border: rgba(26,122,74,0.30);
    /* Misc */
    --config-card-bg: #ffffff;
    --dxf-bg: #0d1a2e;
    --dxf-text: #a8d8ea;
    /* Modal */
    --modal-overlay: rgba(0,20,50,0.82);
    --modal-bg: #ffffff;
    --modal-border: rgba(0,40,85,0.18);
    --modal-shadow: 0 20px 60px rgba(0,20,50,0.32), 0 4px 16px rgba(0,20,50,0.18);
    /* NQ Modal */
    --nq-overlay-bg: rgba(2,6,14,.82);
    --nq-card-bg: #ffffff;
    --nq-card-border: rgba(14,40,80,.18);
    --nq-header-bg: rgba(241,184,40,.10);
    --nq-header-border: rgba(14,40,80,.12);
    --nq-icon-bg: rgba(241,184,40,.18);
    --nq-icon-border: rgba(241,184,40,.42);
    --nq-icon-color: #7a4500;
    --nq-title-color: #7a4500;
    --nq-subtitle-color: #5a6e88;
    --nq-body-color: #0c1c30;
    --nq-footer-bg: #f0f4fb;
    --nq-footer-border: rgba(14,40,80,.12);
    --nq-btn-ok-bg: #002855;
    --nq-btn-ok-border: #001535;
    --nq-btn-ok-color: #ffffff;
    --nq-btn-ok-hover-bg: #001c3e;
}


    /* ─────────────────────────────────────────────────────────────────
   1b. DESIGN TOKENS — DARK
   ───────────────────────────────────────────────────────────────── */
    :root[data-bs-theme="dark"][b-5ntgunhjqm],
    [data-theme="dark"][b-5ntgunhjqm] {
        --iac-navy: #0d1f3c;
        --iac-navy-mid: #1a3260;
        --iac-navy-deep: #060c18;
        --iac-gold: #F1B828;
        --iac-gold-dim: rgba(241,184,40,0.50);
        --iac-gold-rgb: 241,184,40;
        --iac-navy-rgb: 13,31,60;
        --iac-green: #22c55e;
        --iac-green-rgb: 34,197,94;
        --page-bg: #080d16;
        --panel-bg: #101828;
        --panel-bg-alt: #141e2e;
        --panel-border: rgba(255,255,255,0.08);
        --panel-border-strong: rgba(255,255,255,0.14);
        --header-bg: #07101e;
        --header-text: rgba(255,255,255,0.93);
        --text-primary: rgba(255,255,255,0.92);
        --text-secondary: rgba(255,255,255,0.68);
        --text-muted: rgba(255,255,255,0.44);
        --text-dim: rgba(255,255,255,0.26);
        --input-bg: rgba(255,255,255,0.06);
        --input-bg-hover: rgba(255,255,255,0.09);
        --input-border: rgba(255,255,255,0.12);
        --input-border-focus: rgba(241,184,40,0.65);
        --input-focus-shadow: rgba(241,184,40,0.16);
        --input-text: rgba(255,255,255,0.90);
        --input-placeholder: rgba(255,255,255,0.30);
        --input-disabled-bg: rgba(255,255,255,0.03);
        --divider: rgba(255,255,255,0.07);
        --divider-strong: rgba(255,255,255,0.12);
        --table-head-bg: #0b1520;
        --table-head-text: #F1B828;
        --table-row-even: rgba(255,255,255,0.022);
        --table-row-odd: rgba(255,255,255,0.013);
        --table-row-hover: rgba(241,184,40,0.06);
        --table-border: rgba(255,255,255,0.07);
        --scrollbar-thumb: rgba(255,255,255,0.16);
        --btn-primary-bg: #F1B828;
        --btn-primary-text: #001535;
        --btn-primary-hover: #ffc93d;
        --btn-ghost-bg: rgba(255,255,255,0.07);
        --btn-ghost-border: rgba(255,255,255,0.14);
        --btn-ghost-text: rgba(255,255,255,0.78);
        --btn-ghost-hover: rgba(255,255,255,0.12);
        --tab-strip-bg: rgba(255,255,255,0.04);
        --tab-active-bg: #F1B828;
        --tab-active-text: #001535;
        --tab-hover-bg: rgba(255,255,255,0.07);
        --tab-hover-text: rgba(255,255,255,0.90);
        --tab-border: rgba(255,255,255,0.12);
        --tab-inactive-text: rgba(255,255,255,0.50);
        --warn-bg: rgba(241,184,40,0.10);
        --warn-border: rgba(241,184,40,0.28);
        --warn-text: rgba(241,184,40,0.92);
        --info-bg: rgba(96,165,250,0.08);
        --info-border: rgba(96,165,250,0.22);
        --info-text: rgba(147,197,253,0.90);
        --success-bg: rgba(34,197,94,0.09);
        --success-text: #4ade80;
        --section-label-bg: rgba(255,255,255,0.05);
        --section-label-text: rgba(241,184,40,0.90);
        --section-label-border: #F1B828;
        --override-bg: rgba(241,184,40,0.11);
        --override-text: rgba(241,184,40,0.90);
        --override-border: rgba(241,184,40,0.30);
        --inherited-bg: rgba(34,197,94,0.09);
        --inherited-text: #4ade80;
        --inherited-border: rgba(34,197,94,0.24);
        --config-card-bg: #141e2e;
        --dxf-bg: #060d16;
        --dxf-text: #93c5fd;
        --modal-overlay: rgba(0,4,14,0.88);
        --modal-bg: #101828;
        --modal-border: rgba(255,255,255,0.10);
        --modal-shadow: 0 24px 80px rgba(0,0,0,0.60), 0 4px 20px rgba(0,0,0,0.40);
        --nq-overlay-bg: rgba(2,6,14,.90);
        --nq-card-bg: #0c1829;
        --nq-card-border: rgba(255,255,255,.09);
        --nq-header-bg: rgba(241,184,40,.08);
        --nq-header-border: rgba(255,255,255,.07);
        --nq-icon-bg: rgba(241,184,40,.14);
        --nq-icon-border: rgba(241,184,40,.28);
        --nq-icon-color: #ffd56d;
        --nq-title-color: #ffd56d;
        --nq-subtitle-color: rgba(155,190,235,.55);
        --nq-body-color: rgba(220,235,255,.92);
        --nq-footer-bg: #101e30;
        --nq-footer-border: rgba(255,255,255,.07);
        --nq-btn-ok-bg: #F1B828;
        --nq-btn-ok-border: #d4a020;
        --nq-btn-ok-color: #001535;
        --nq-btn-ok-hover-bg: #ffc93d;
    }


/* ─────────────────────────────────────────────────────────────────
   2. RESET & BASE
   ───────────────────────────────────────────────────────────────── */
*[b-5ntgunhjqm], *[b-5ntgunhjqm]::before, *[b-5ntgunhjqm]::after {
    box-sizing: border-box;
}

body[b-5ntgunhjqm],
.container-fluid[b-5ntgunhjqm] {
    font-family: 'din-2014','DIN 2014','DIN Pro','DM Sans',system-ui,-apple-system,sans-serif !important;
    background: var(--page-bg);
    color: var(--text-primary);
}

[b-5ntgunhjqm]::-webkit-scrollbar {
    width: 5px;
    height: 5px;
}

[b-5ntgunhjqm]::-webkit-scrollbar-track {
    background: transparent;
}

[b-5ntgunhjqm]::-webkit-scrollbar-thumb {
    background: var(--scrollbar-thumb);
    border-radius: 10px;
}


/* ─────────────────────────────────────────────────────────────────
   3. PAGE SHELL & HEADING
   ───────────────────────────────────────────────────────────────── */
.pm-page-shell[b-5ntgunhjqm] {
    padding: 1.5rem 1.75rem;
    min-height: 100vh;
}

h2[b-5ntgunhjqm] {
    font-size: 1.35rem;
    font-weight: 800;
    letter-spacing: -0.02em;
    color: var(--text-primary);
    padding-left: 12px;
    border-left: 4px solid var(--iac-gold);
    margin-bottom: 1.25rem;
}


/* ─────────────────────────────────────────────────────────────────
   4. TAB STRIP
   ───────────────────────────────────────────────────────────────── */
.pm-tab-strip[b-5ntgunhjqm] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 3px;
    padding: 5px;
    background: var(--tab-strip-bg);
    border: 1px solid var(--panel-border);
    border-radius: 12px;
    margin-bottom: 1.5rem;
}

.pm-tab[b-5ntgunhjqm] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 0.44rem 0.90rem;
    border-radius: 8px;
    font-size: 0.72rem;
    font-weight: 700;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--tab-inactive-text);
    background: transparent;
    border: 1px solid transparent;
    cursor: pointer;
    white-space: nowrap;
    transition: color .13s, background .13s, border-color .13s;
}

    .pm-tab:hover:not(.pm-tab--active)[b-5ntgunhjqm] {
        color: var(--tab-hover-text);
        background: var(--tab-hover-bg);
        border-color: var(--tab-border);
    }

.pm-tab--active[b-5ntgunhjqm] {
    background: var(--tab-active-bg) !important;
    color: var(--tab-active-text) !important;
    border-color: transparent !important;
    box-shadow: 0 2px 10px rgba(0,0,0,0.20), 0 0 0 1.5px rgba(241,184,40,0.60) inset;
    font-weight: 800;
    position: relative;
}

    /* Gold underline bar on active tab */
    .pm-tab--active[b-5ntgunhjqm]::after {
        content: "";
        position: absolute;
        bottom: -1px;
        left: 20%;
        right: 20%;
        height: 2.5px;
        border-radius: 2px;
        background: var(--iac-gold);
        opacity: 0.85;
    }

.pm-tab-sep[b-5ntgunhjqm] {
    width: 1px;
    height: 18px;
    background: var(--panel-border);
    flex-shrink: 0;
    margin: 0 3px;
    border-radius: 2px;
}


/* ─────────────────────────────────────────────────────────────────
   5. PM CARDS
   ───────────────────────────────────────────────────────────────── */
.pm-card[b-5ntgunhjqm] {
    background: var(--panel-bg);
    border: 1px solid var(--panel-border);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 1px 4px rgba(0,40,85,0.06);
}

.pm-card--mb[b-5ntgunhjqm] {
    margin-bottom: 1rem;
}

.pm-card-head[b-5ntgunhjqm] {
    background: var(--table-head-bg);
    padding: 10px 16px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    border-bottom: 2px solid var(--iac-gold);
}

.pm-card-title[b-5ntgunhjqm] {
    font-size: 0.72rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.09em;
    color: var(--table-head-text);
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 0;
}

.pm-card-icon[b-5ntgunhjqm] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 22px;
    height: 22px;
    border-radius: 5px;
    background: rgba(241,184,40,0.20);
    color: var(--iac-gold);
    font-size: 0.75rem;
    flex-shrink: 0;
}

.pm-card-body[b-5ntgunhjqm] {
    padding: 18px;
}

.pm-card-body--flush[b-5ntgunhjqm] {
    padding: 0;
}

/* Inset card */
.pm-inset-card[b-5ntgunhjqm] {
    background: var(--panel-bg-alt);
    border: 1px solid var(--panel-border);
    border-radius: 10px;
    padding: 12px 14px;
    border-left: 3px solid var(--iac-gold);
}

.pm-inset-card--sm[b-5ntgunhjqm] {
    padding: 9px 12px;
}

.pm-inset-card-title[b-5ntgunhjqm] {
    font-size: 0.68rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.09em;
    color: var(--section-label-text);
    margin-bottom: 10px;
    display: flex;
    align-items: center;
}

[data-bs-theme="dark"] .pm-inset-card[b-5ntgunhjqm],
[data-theme="dark"] .pm-inset-card[b-5ntgunhjqm] {
    background: rgba(255,255,255,0.04);
    border-color: rgba(255,255,255,0.09);
}


/* ─────────────────────────────────────────────────────────────────
   6. SECTION HEADERS
   ───────────────────────────────────────────────────────────────── */
.pm-section-header[b-5ntgunhjqm] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 1.1rem;
}

.pm-section-eyebrow[b-5ntgunhjqm] {
    font-size: 0.64rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.14em;
    color: var(--iac-gold);
    margin-bottom: 2px;
}

.pm-section-title[b-5ntgunhjqm] {
    font-size: 1.10rem;
    font-weight: 800;
    letter-spacing: -0.02em;
    color: var(--text-primary);
    line-height: 1.25;
}

.pm-section-sub[b-5ntgunhjqm] {
    font-size: 0.78rem;
    color: var(--text-muted);
    margin-top: 3px;
}

h6.fw-bold[b-5ntgunhjqm] {
    font-size: 0.67rem;
    text-transform: uppercase;
    letter-spacing: 0.10em;
    color: var(--section-label-text);
    margin-bottom: 0.55rem;
    background: var(--section-label-bg);
    display: inline-block;
    border-radius: 3px;
    padding: 0.14rem 0.50rem;
    border-left: 3px solid var(--iac-gold);
    font-weight: 800;
}

.pm-form-section-title[b-5ntgunhjqm] {
    font-size: 0.67rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.10em;
    color: var(--section-label-text);
    padding: 6px 0 6px 10px;
    border-left: 3px solid var(--iac-gold);
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 8px;
}


/* ─────────────────────────────────────────────────────────────────
   7. FORM LABELS — Readable in both light and dark
   ───────────────────────────────────────────────────────────────── */
.form-label[b-5ntgunhjqm] {
    font-size: 0.68rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.07em !important;
    text-transform: uppercase !important;
    color: var(--text-primary) !important;
    margin-bottom: 5px !important;
    display: block !important;
    line-height: 1.4 !important;
}

.pm-field-label[b-5ntgunhjqm],
.pm-label[b-5ntgunhjqm] {
    display: block;
    font-size: 0.68rem;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: var(--text-primary) !important;
    margin-bottom: 5px;
    line-height: 1.4;
}

/* Dark mode: all labels go bright gold-white so they're never invisible */
[data-bs-theme="dark"] .form-label[b-5ntgunhjqm],
[data-theme="dark"] .form-label[b-5ntgunhjqm] {
    color: rgba(241,184,40,0.92) !important;
}

[data-bs-theme="dark"] .pm-label[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-field-label[b-5ntgunhjqm],
[data-theme="dark"] .pm-label[b-5ntgunhjqm],
[data-theme="dark"] .pm-field-label[b-5ntgunhjqm] {
    color: rgba(241,184,40,0.92) !important;
}

/* small labels (e.g. "Face", "Cover" sub-labels in pricing test) */
[data-bs-theme="dark"] label.pm-label[b-5ntgunhjqm],
[data-bs-theme="dark"] label.form-label[b-5ntgunhjqm],
[data-theme="dark"] label.pm-label[b-5ntgunhjqm],
[data-theme="dark"] label.form-label[b-5ntgunhjqm] {
    color: rgba(241,184,40,0.92) !important;
}

/* Don't over-style labels in body content — reset box model only */
.pm-modal-body .form-label[b-5ntgunhjqm],
.pm-card-body .form-label[b-5ntgunhjqm] {
    padding: 0 !important;
    background: none !important;
    border: none !important;
    border-radius: 0 !important;
    width: auto !important;
}

/* Override inside card-header */
.card-header .form-label[b-5ntgunhjqm] {
    background: none !important;
    border-left: none !important;
    padding: 0 !important;
    width: auto !important;
    border-radius: 0 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
    margin-bottom: 0 !important;
}

/* text-muted small helper text — always readable */
.pm-hint[b-5ntgunhjqm],
.pm-input-hint[b-5ntgunhjqm] {
    font-size: 0.72rem;
    color: rgba(0,30,66,0.55);
    margin-top: 5px;
    line-height: 1.45;
}

[data-bs-theme="dark"] .pm-hint[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-input-hint[b-5ntgunhjqm],
[data-theme="dark"] .pm-hint[b-5ntgunhjqm],
[data-theme="dark"] .pm-input-hint[b-5ntgunhjqm] {
    color: rgba(255,255,255,0.48) !important;
}

/* Global text-muted override for dark */
[data-bs-theme="dark"] .text-muted[b-5ntgunhjqm],
[data-theme="dark"] .text-muted[b-5ntgunhjqm] {
    color: rgba(255,255,255,0.48) !important;
}

/* form-check-label always readable */
.form-check-label[b-5ntgunhjqm] {
    color: var(--text-primary);
    font-size: 0.86rem;
}

[data-bs-theme="dark"] .form-check-label[b-5ntgunhjqm],
[data-theme="dark"] .form-check-label[b-5ntgunhjqm] {
    color: rgba(255,255,255,0.88) !important;
}


/* ─────────────────────────────────────────────────────────────────
   8. FORM CONTROLS & SELECTS
   ───────────────────────────────────────────────────────────────── */
select.form-select[b-5ntgunhjqm],
select.form-control[b-5ntgunhjqm] {
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
}

.form-control[b-5ntgunhjqm],
.form-select[b-5ntgunhjqm],
.pm-input[b-5ntgunhjqm],
.pm-select[b-5ntgunhjqm] {
    display: block;
    width: 100%;
    background: linear-gradient(170deg, #ffffff 0%, #f5f9ff 100%) !important;
    border: 1.5px solid var(--input-border) !important;
    border-radius: 10px !important;
    color: var(--input-text) !important;
    font-family: 'din-2014','DIN 2014','DIN Pro','DM Sans',system-ui,sans-serif !important;
    font-size: 0.86rem !important;
    font-weight: 500 !important;
    padding: 9px 13px !important;
    line-height: 1.4 !important;
    transition: border-color .14s, box-shadow .14s, background .12s !important;
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.04), 0 1px 0 rgba(255,255,255,0.90) !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
}

    .form-control[b-5ntgunhjqm]::placeholder,
    .pm-input[b-5ntgunhjqm]::placeholder {
        color: var(--input-placeholder) !important;
        font-style: italic;
        font-weight: 400;
    }

    .form-control:hover[b-5ntgunhjqm],
    .form-select:hover[b-5ntgunhjqm],
    .pm-input:hover[b-5ntgunhjqm],
    .pm-select:hover[b-5ntgunhjqm] {
        background: linear-gradient(170deg, #f0f6ff 0%, #e8f0fb 100%) !important;
        border-color: rgba(0,40,85,0.38) !important;
    }

    .form-control:focus[b-5ntgunhjqm],
    .form-select:focus[b-5ntgunhjqm],
    .pm-input:focus[b-5ntgunhjqm],
    .pm-select:focus[b-5ntgunhjqm] {
        background: #ffffff !important;
        border-color: var(--input-border-focus) !important;
        box-shadow: 0 0 0 3px var(--input-focus-shadow), inset 0 1px 2px rgba(0,0,0,0.02) !important;
        outline: none !important;
    }

    .form-control:disabled[b-5ntgunhjqm],
    .form-select:disabled[b-5ntgunhjqm],
    .pm-input:disabled[b-5ntgunhjqm],
    .pm-select:disabled[b-5ntgunhjqm] {
        background: var(--input-disabled-bg) !important;
        border-color: var(--input-border) !important;
        opacity: .55 !important;
        cursor: not-allowed !important;
        box-shadow: none !important;
    }

textarea.form-control[b-5ntgunhjqm] {
    resize: vertical;
    min-height: 74px;
    line-height: 1.55 !important;
}

/* Select chevron — light */
.form-select[b-5ntgunhjqm],
.pm-select[b-5ntgunhjqm] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23002855' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' d='M2 5l6 6 6-6'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 11px center !important;
    background-size: 11px !important;
    padding-right: 34px !important;
}

/* Dark mode controls — use background-color NOT background shorthand
   so that background-image (chevron svg) is preserved on selects */
[data-bs-theme="dark"] .form-control[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-input[b-5ntgunhjqm],
[data-theme="dark"] .form-control[b-5ntgunhjqm],
[data-theme="dark"] .pm-input[b-5ntgunhjqm] {
    background: linear-gradient(170deg, rgba(255,255,255,0.09) 0%, rgba(255,255,255,0.05) 100%) !important;
    border-color: var(--input-border) !important;
    color: var(--input-text) !important;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.30) !important;
}

/* Selects separately — background-color only so chevron svg survives */
[data-bs-theme="dark"] .form-select[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-select[b-5ntgunhjqm],
[data-theme="dark"] .form-select[b-5ntgunhjqm],
[data-theme="dark"] .pm-select[b-5ntgunhjqm] {
    background-color: rgba(13, 25, 50, 0.85) !important;
    border-color: var(--input-border) !important;
    color: var(--input-text) !important;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.30) !important;
}

[data-bs-theme="dark"] .form-control[b-5ntgunhjqm]::placeholder,
[data-bs-theme="dark"] .pm-input[b-5ntgunhjqm]::placeholder,
[data-theme="dark"] .form-control[b-5ntgunhjqm]::placeholder,
[data-theme="dark"] .pm-input[b-5ntgunhjqm]::placeholder {
    color: var(--input-placeholder) !important;
}

[data-bs-theme="dark"] .form-control:hover[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-input:hover[b-5ntgunhjqm],
[data-theme="dark"] .form-control:hover[b-5ntgunhjqm],
[data-theme="dark"] .pm-input:hover[b-5ntgunhjqm] {
    background: linear-gradient(170deg, rgba(255,255,255,0.13) 0%, rgba(255,255,255,0.08) 100%) !important;
    border-color: rgba(255,255,255,0.22) !important;
}

[data-bs-theme="dark"] .form-select:hover[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-select:hover[b-5ntgunhjqm],
[data-theme="dark"] .form-select:hover[b-5ntgunhjqm],
[data-theme="dark"] .pm-select:hover[b-5ntgunhjqm] {
    background-color: rgba(16, 30, 58, 0.92) !important;
    border-color: rgba(255,255,255,0.22) !important;
}

[data-bs-theme="dark"] .form-control:focus[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-input:focus[b-5ntgunhjqm],
[data-theme="dark"] .form-control:focus[b-5ntgunhjqm],
[data-theme="dark"] .pm-input:focus[b-5ntgunhjqm] {
    border-color: var(--input-border-focus) !important;
    box-shadow: 0 0 0 3px var(--input-focus-shadow), inset 0 1px 3px rgba(0,0,0,0.28) !important;
}

[data-bs-theme="dark"] .form-select:focus[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-select:focus[b-5ntgunhjqm],
[data-theme="dark"] .form-select:focus[b-5ntgunhjqm],
[data-theme="dark"] .pm-select:focus[b-5ntgunhjqm] {
    background-color: rgba(16, 30, 58, 0.95) !important;
    border-color: var(--input-border-focus) !important;
    box-shadow: 0 0 0 3px var(--input-focus-shadow), inset 0 1px 3px rgba(0,0,0,0.28) !important;
}

[data-bs-theme="dark"] .form-control:disabled[b-5ntgunhjqm],
[data-bs-theme="dark"] .form-select:disabled[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-input:disabled[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-select:disabled[b-5ntgunhjqm],
[data-theme="dark"] .form-control:disabled[b-5ntgunhjqm],
[data-theme="dark"] .form-select:disabled[b-5ntgunhjqm],
[data-theme="dark"] .pm-input:disabled[b-5ntgunhjqm],
[data-theme="dark"] .pm-select:disabled[b-5ntgunhjqm] {
    background: var(--input-disabled-bg) !important;
    color: rgba(255,255,255,0.40) !important;
    border-color: var(--input-border) !important;
}

/* Select chevron — dark: re-apply image on top of background-color */
[data-bs-theme="dark"] .form-select[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-select[b-5ntgunhjqm],
[data-theme="dark"] .form-select[b-5ntgunhjqm],
[data-theme="dark"] .pm-select[b-5ntgunhjqm] {
    background-color: rgba(13, 25, 50, 0.85) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23F1B828' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' d='M2 5l6 6 6-6'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 11px center !important;
    background-size: 11px !important;
    color: rgba(255,255,255,0.90) !important;
}

/* sm variants */
.form-control-sm[b-5ntgunhjqm],
.form-select-sm[b-5ntgunhjqm] {
    font-size: 0.80rem !important;
    padding: 6px 10px !important;
    border-radius: 6px !important;
}

/* Thickness sub-table inputs */
.thickness-override-table .form-select[b-5ntgunhjqm],
.thickness-override-table .form-control[b-5ntgunhjqm] {
    font-size: 0.76rem !important;
    padding: 0.20rem 0.42rem !important;
    height: auto;
    border-radius: 5px !important;
}

/* Remove number spinners */
input[type="number"].form-control[b-5ntgunhjqm],
input[type="number"].pm-input[b-5ntgunhjqm] {
    -moz-appearance: textfield !important;
}

    input[type="number"].form-control[b-5ntgunhjqm]::-webkit-inner-spin-button,
    input[type="number"].form-control[b-5ntgunhjqm]::-webkit-outer-spin-button,
    input[type="number"].pm-input[b-5ntgunhjqm]::-webkit-inner-spin-button,
    input[type="number"].pm-input[b-5ntgunhjqm]::-webkit-outer-spin-button {
        -webkit-appearance: none !important;
        margin: 0 !important;
    }

/* Checkboxes */

.form-check-input[b-5ntgunhjqm] {
    width: 1.05rem;
    height: 1.05rem;
    border: 1.5px solid var(--input-border);
    background-color: var(--input-bg);
    transition: background .12s, border-color .12s;
    cursor: pointer;
    flex-shrink: 0;
}

    .form-check-input:checked[b-5ntgunhjqm] {
        background-color: var(--iac-navy) !important;
        border-color: var(--iac-navy) !important;
        box-shadow: 0 0 0 2px rgba(241,184,40,0.28) !important;
    }

[data-bs-theme="dark"] .form-check-input[b-5ntgunhjqm],
[data-theme="dark"] .form-check-input[b-5ntgunhjqm] {
    background-color: rgba(255,255,255,0.08);
    border-color: rgba(255,255,255,0.22);
}

    [data-bs-theme="dark"] .form-check-input:checked[b-5ntgunhjqm],
    [data-theme="dark"] .form-check-input:checked[b-5ntgunhjqm] {
        background-color: var(--iac-gold) !important;
        border-color: var(--iac-gold) !important;
    }

/* Form grid */
.pm-form-group[b-5ntgunhjqm] {
    margin-bottom: 1rem;
}

.pm-form-row[b-5ntgunhjqm] {
    display: grid;
    gap: 12px;
    margin-bottom: 1rem;
}

.pm-form-row--2[b-5ntgunhjqm] {
    grid-template-columns: 1fr 1fr;
}

.pm-form-row--3[b-5ntgunhjqm] {
    grid-template-columns: 1fr 1fr 1fr;
}

.pm-form-row--4[b-5ntgunhjqm] {
    grid-template-columns: repeat(4, 1fr);
}

.pm-form-cell[b-5ntgunhjqm] {
    display: flex;
    flex-direction: column;
}

/* Hints */
.pm-input-hint[b-5ntgunhjqm],
.pm-hint[b-5ntgunhjqm] {
    font-size: 0.72rem;
    color: var(--text-muted);
    margin-top: 5px;
    padding-left: 1px;
    line-height: 1.45;
}

.pm-hint--loose[b-5ntgunhjqm] {
    margin-top: 9px;
}


/* ─────────────────────────────────────────────────────────────────
   9. TABLES
   ───────────────────────────────────────────────────────────────── */
.table[b-5ntgunhjqm] {
    color: var(--text-primary);
    border-color: var(--table-border);
}

    .table thead th[b-5ntgunhjqm],
    .pm-table thead th[b-5ntgunhjqm] {
        background: var(--table-head-bg) !important;
        color: var(--table-head-text) !important;
        border-bottom: 2px solid var(--iac-gold) !important;
        border-top: none !important;
        font-size: 0.68rem;
        font-weight: 800;
        text-transform: uppercase;
        letter-spacing: 0.10em;
        white-space: nowrap;
        padding: 10px 14px;
    }

    .table tbody tr:nth-child(even) > td[b-5ntgunhjqm],
    .pm-table tbody tr:nth-child(even) > td[b-5ntgunhjqm] {
        background-color: var(--table-row-even);
    }

    .table tbody tr:nth-child(odd) > td[b-5ntgunhjqm],
    .pm-table tbody tr:nth-child(odd) > td[b-5ntgunhjqm] {
        background-color: var(--table-row-odd);
    }

    .table tbody td[b-5ntgunhjqm],
    .pm-table tbody td[b-5ntgunhjqm] {
        vertical-align: middle;
        font-size: 0.84rem;
        padding: 0.52rem 0.88rem;
        border-color: var(--table-border);
        color: var(--text-primary);
        border-bottom: 1px solid var(--table-border);
    }

.table-hover tbody tr:hover > td[b-5ntgunhjqm],
.pm-table-hover tbody tr:hover > td[b-5ntgunhjqm] {
    background-color: var(--table-row-hover) !important;
}

.table-hover tbody tr:hover td:first-child[b-5ntgunhjqm] {
    border-left: 3px solid var(--iac-gold);
    padding-left: 11px !important;
}

.pm-table[b-5ntgunhjqm] {
    width: 100%;
    border-collapse: collapse;
}

.text-secondary-cell[b-5ntgunhjqm] {
    color: var(--text-secondary) !important;
}

/* Tables: remove Bootstrap's internal border conflicts */
.table > :not(caption) > * > *[b-5ntgunhjqm] {
    border-color: var(--table-border);
}

/* Thickness sub-table */
.thickness-override-table[b-5ntgunhjqm] {
    font-size: 0.79rem;
    border-radius: 8px;
    overflow: hidden;
    border: 1px solid var(--panel-border-strong);
    background: var(--panel-bg);
}

    .thickness-override-table thead th[b-5ntgunhjqm] {
        background: var(--table-head-bg) !important;
        color: var(--table-head-text) !important;
        border-bottom: 2px solid var(--iac-gold) !important;
        font-size: 0.67rem;
        padding: 0.36rem 0.54rem;
    }

    .thickness-override-table tbody td[b-5ntgunhjqm] {
        padding: 0.30rem 0.54rem;
        border-color: var(--table-border);
    }


/* ─────────────────────────────────────────────────────────────────
   10. BADGES
   ───────────────────────────────────────────────────────────────── */
.pm-badge[b-5ntgunhjqm] {
    display: inline-flex;
    align-items: center;
    padding: 0.20rem 0.60rem;
    border-radius: 999px;
    font-size: 0.70rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    line-height: 1;
}

.pm-badge--neutral[b-5ntgunhjqm] {
    background: var(--section-label-bg);
    color: var(--section-label-text);
    border: 1px solid var(--panel-border);
}

.badge[b-5ntgunhjqm] {
    font-size: 0.70rem;
    font-weight: 700;
    letter-spacing: 0.02em;
}

    .badge.bg-primary[b-5ntgunhjqm] {
        background: var(--iac-navy) !important;
        color: #fff !important;
    }

    .badge.bg-secondary[b-5ntgunhjqm] {
        background: rgba(0,40,85,0.52) !important;
        color: #fff !important;
    }

    .badge.bg-success[b-5ntgunhjqm] {
        background: #1a7a4a !important;
        color: #fff !important;
    }

    .badge.bg-info[b-5ntgunhjqm] {
        background: rgba(0,70,180,0.75) !important;
        color: #fff !important;
    }

    .badge.bg-warning[b-5ntgunhjqm] {
        background: var(--iac-gold) !important;
        color: #3d2900 !important;
    }

    .badge.bg-danger[b-5ntgunhjqm] {
        background: #c81c1c !important;
        color: #fff !important;
    }

[data-bs-theme="dark"] .badge.bg-secondary[b-5ntgunhjqm],
[data-theme="dark"] .badge.bg-secondary[b-5ntgunhjqm] {
    background: rgba(255,255,255,0.15) !important;
    color: rgba(255,255,255,0.90) !important;
}

[data-bs-theme="dark"] .badge.bg-info[b-5ntgunhjqm],
[data-theme="dark"] .badge.bg-info[b-5ntgunhjqm] {
    background: rgba(96,165,250,0.80) !important;
    color: #001535 !important;
}

.pm-override-badge[b-5ntgunhjqm] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 0.15rem 0.56rem;
    border-radius: 999px;
    font-size: 0.64rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    background: var(--override-bg);
    color: var(--override-text);
    border: 1px solid var(--override-border);
}

.pm-inherited-badge[b-5ntgunhjqm] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 0.15rem 0.56rem;
    border-radius: 999px;
    font-size: 0.64rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    background: var(--inherited-bg);
    color: var(--inherited-text);
    border: 1px solid var(--inherited-border);
}


/* ─────────────────────────────────────────────────────────────────
   11. BUTTONS — Complete overhaul
   ───────────────────────────────────────────────────────────────── */

/* ── Base pm-btn ── */
.pm-btn[b-5ntgunhjqm] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    font-family: 'din-2014','DIN 2014','DIN Pro','DM Sans',system-ui,sans-serif;
    font-weight: 800;
    font-size: 0.79rem;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    padding: 0.52rem 1.10rem;
    border-radius: 7px;
    border: 1.5px solid transparent;
    cursor: pointer;
    white-space: nowrap;
    line-height: 1;
    text-decoration: none;
    transition: background .13s, color .13s, border-color .13s, box-shadow .13s, transform .09s;
}

    .pm-btn:active:not(:disabled)[b-5ntgunhjqm] {
        transform: translateY(1px) scale(0.98);
    }

    .pm-btn:disabled[b-5ntgunhjqm] {
        opacity: .42;
        cursor: not-allowed;
        pointer-events: none;
    }

.pm-btn--block[b-5ntgunhjqm] {
    width: 100%;
}

/* Primary: Navy in light, Gold in dark */
.pm-btn--primary[b-5ntgunhjqm] {
    background: var(--btn-primary-bg);
    color: var(--btn-primary-text);
    border-color: transparent;
    box-shadow: 0 1px 0 rgba(0,0,0,0.12), 0 2px 6px rgba(0,0,0,0.14);
}

    .pm-btn--primary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: var(--btn-primary-hover);
        box-shadow: 0 1px 0 rgba(0,0,0,0.16), 0 3px 10px rgba(0,0,0,0.20);
        transform: translateY(-1px);
    }

/* Ghost */
.pm-btn--ghost[b-5ntgunhjqm] {
    background: var(--btn-ghost-bg);
    border-color: var(--btn-ghost-border);
    color: var(--btn-ghost-text);
    box-shadow: 0 1px 0 rgba(0,0,0,0.06);
}

    .pm-btn--ghost:hover:not(:disabled)[b-5ntgunhjqm] {
        background: var(--btn-ghost-hover);
        border-color: var(--btn-ghost-border);
        color: var(--section-label-text);
        transform: translateY(-1px);
    }

.pm-btn--xs[b-5ntgunhjqm] {
    font-size: 0.68rem;
    padding: 0.28rem 0.70rem;
    border-radius: 5px;
    letter-spacing: 0.05em;
}

.pm-btn--sm[b-5ntgunhjqm] {
    font-size: 0.74rem;
    padding: 0.38rem 0.85rem;
    border-radius: 6px;
}

/* ── Base btn (Bootstrap) ── */
.btn[b-5ntgunhjqm] {
    font-family: 'din-2014','DIN 2014','DIN Pro','DM Sans',system-ui,sans-serif;
    font-weight: 800;
    font-size: 0.80rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    line-height: 1;
    border-radius: 7px;
    border-width: 1.5px;
    transition: background .13s, color .13s, border-color .13s, box-shadow .13s, transform .09s;
}

    .btn:active:not(:disabled)[b-5ntgunhjqm] {
        transform: translateY(1px) scale(0.98);
    }

.btn-sm[b-5ntgunhjqm] {
    font-size: 0.73rem;
    padding: 0.34rem 0.78rem;
    border-radius: 6px;
}

.btn:disabled[b-5ntgunhjqm], .btn[disabled][b-5ntgunhjqm] {
    opacity: .40;
    cursor: not-allowed;
    pointer-events: none;
}

/* Primary */
.btn-primary[b-5ntgunhjqm] {
    background: var(--btn-primary-bg) !important;
    color: var(--btn-primary-text) !important;
    border-color: transparent !important;
    box-shadow: 0 1px 0 rgba(0,0,0,0.12), 0 2px 6px rgba(0,0,0,0.14);
}

    .btn-primary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: var(--btn-primary-hover) !important;
        box-shadow: 0 1px 0 rgba(0,0,0,0.16), 0 3px 10px rgba(0,0,0,0.22);
        transform: translateY(-1px);
    }

/* Secondary / Ghost */
.btn-secondary[b-5ntgunhjqm] {
    background: var(--btn-ghost-bg) !important;
    border-color: var(--btn-ghost-border) !important;
    color: var(--btn-ghost-text) !important;
    box-shadow: 0 1px 0 rgba(0,0,0,0.06);
}

    .btn-secondary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: var(--btn-ghost-hover) !important;
        color: var(--section-label-text) !important;
        transform: translateY(-1px);
    }

/* Outline variants */
.btn-outline-primary[b-5ntgunhjqm] {
    background: transparent !important;
    border-color: var(--btn-primary-bg) !important;
    color: var(--btn-primary-bg) !important;
}

    .btn-outline-primary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: var(--btn-primary-bg) !important;
        color: #fff !important;
        transform: translateY(-1px);
    }

[data-bs-theme="dark"] .btn-outline-primary[b-5ntgunhjqm],
[data-theme="dark"] .btn-outline-primary[b-5ntgunhjqm] {
    border-color: var(--iac-gold) !important;
    color: var(--iac-gold) !important;
}

    [data-bs-theme="dark"] .btn-outline-primary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .btn-outline-primary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: var(--iac-gold) !important;
        color: #001535 !important;
    }

.btn-outline-danger[b-5ntgunhjqm] {
    background: transparent !important;
    border-color: rgba(200,28,28,0.50) !important;
    color: #c81c1c !important;
}

    .btn-outline-danger:hover:not(:disabled)[b-5ntgunhjqm] {
        background: rgba(200,28,28,0.08) !important;
        border-color: rgba(200,28,28,0.80) !important;
        color: #9e1515 !important;
        transform: translateY(-1px);
    }

[data-bs-theme="dark"] .btn-outline-danger[b-5ntgunhjqm],
[data-theme="dark"] .btn-outline-danger[b-5ntgunhjqm] {
    border-color: rgba(248,113,113,0.45) !important;
    color: #f87171 !important;
}

    [data-bs-theme="dark"] .btn-outline-danger:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .btn-outline-danger:hover:not(:disabled)[b-5ntgunhjqm] {
        background: rgba(248,113,113,0.12) !important;
        border-color: rgba(248,113,113,0.75) !important;
        color: #fca5a5 !important;
    }

.btn-outline-info[b-5ntgunhjqm] {
    background: transparent !important;
    border-color: rgba(0,70,180,0.40) !important;
    color: #0042ad !important;
}

    .btn-outline-info:hover:not(:disabled)[b-5ntgunhjqm] {
        background: rgba(0,70,180,0.07) !important;
        border-color: rgba(0,70,180,0.70) !important;
        transform: translateY(-1px);
    }

[data-bs-theme="dark"] .btn-outline-info[b-5ntgunhjqm],
[data-theme="dark"] .btn-outline-info[b-5ntgunhjqm] {
    border-color: rgba(96,165,250,0.40) !important;
    color: #60a5fa !important;
}

    [data-bs-theme="dark"] .btn-outline-info:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .btn-outline-info:hover:not(:disabled)[b-5ntgunhjqm] {
        background: rgba(96,165,250,0.12) !important;
        border-color: rgba(96,165,250,0.65) !important;
        color: #93c5fd !important;
    }

.btn-success[b-5ntgunhjqm] {
    background: #1a7a4a !important;
    border-color: #135c37 !important;
    color: #fff !important;
    box-shadow: 0 1px 0 rgba(0,0,0,0.12), 0 2px 6px rgba(0,0,0,0.14);
}

    .btn-success:hover:not(:disabled)[b-5ntgunhjqm] {
        background: #1f9058 !important;
        transform: translateY(-1px);
    }

/* Button group radio override */
.btn-group .btn-outline-primary[b-5ntgunhjqm] {
    border-radius: 6px !important;
}

.btn-check:checked + .btn-outline-primary[b-5ntgunhjqm] {
    background: var(--btn-primary-bg) !important;
    color: var(--btn-primary-text) !important;
    border-color: var(--btn-primary-bg) !important;
}

[data-bs-theme="dark"] .btn-check:checked + .btn-outline-primary[b-5ntgunhjqm],
[data-theme="dark"] .btn-check:checked + .btn-outline-primary[b-5ntgunhjqm] {
    background: var(--iac-gold) !important;
    color: #001535 !important;
    border-color: var(--iac-gold) !important;
}


/* ─────────────────────────────────────────────────────────────────
   12. ICON BUTTONS
   ───────────────────────────────────────────────────────────────── */
.pm-icon-btn[b-5ntgunhjqm] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 32px;
    height: 32px;
    border-radius: 7px;
    font-size: 0.84rem;
    border: 1.5px solid transparent;
    cursor: pointer;
    transition: background .12s, color .12s, border-color .12s, transform .09s;
    background: transparent;
    padding: 0;
    flex-shrink: 0;
}

    .pm-icon-btn:hover[b-5ntgunhjqm] {
        transform: translateY(-1px);
    }

    .pm-icon-btn:active[b-5ntgunhjqm] {
        transform: scale(0.92);
    }

.pm-icon-btn--edit[b-5ntgunhjqm] {
    color: var(--section-label-text);
    background: var(--section-label-bg);
    border-color: var(--panel-border-strong);
}

    .pm-icon-btn--edit:hover[b-5ntgunhjqm] {
        background: rgba(0,40,85,0.14);
        border-color: rgba(0,40,85,0.30);
    }

.pm-icon-btn--delete[b-5ntgunhjqm] {
    color: #c81c1c;
    background: rgba(200,28,28,0.06);
    border-color: rgba(200,28,28,0.22);
}

    .pm-icon-btn--delete:hover[b-5ntgunhjqm] {
        background: rgba(200,28,28,0.12);
        border-color: rgba(200,28,28,0.44);
    }

    .pm-icon-btn--delete:disabled[b-5ntgunhjqm] {
        opacity: .24;
        cursor: not-allowed;
        pointer-events: none;
    }

.pm-icon-btn--xs[b-5ntgunhjqm] {
    width: 26px;
    height: 26px;
    font-size: 0.75rem;
    border-radius: 5px;
}

[data-bs-theme="dark"] .pm-icon-btn--edit[b-5ntgunhjqm],
[data-theme="dark"] .pm-icon-btn--edit[b-5ntgunhjqm] {
    color: rgba(255,255,255,0.75);
    background: rgba(255,255,255,0.07);
    border-color: rgba(255,255,255,0.12);
}

[data-bs-theme="dark"] .pm-icon-btn--delete[b-5ntgunhjqm],
[data-theme="dark"] .pm-icon-btn--delete[b-5ntgunhjqm] {
    color: #f87171;
    background: rgba(248,113,113,0.08);
    border-color: rgba(248,113,113,0.22);
}

.pm-row-actions[b-5ntgunhjqm] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    flex-shrink: 0;
    white-space: nowrap;
}

.pm-action-btn[b-5ntgunhjqm] {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 0.32rem 0.76rem !important;
    border-radius: 6px !important;
    font-size: 0.70rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    line-height: 1 !important;
    white-space: nowrap;
    border-width: 1.5px !important;
}

    .pm-action-btn i[b-5ntgunhjqm] {
        font-size: 0.78rem;
        line-height: 1;
    }


/* ─────────────────────────────────────────────────────────────────
   13. MODALS — Solid backdrop, proper stacking
   ───────────────────────────────────────────────────────────────── */
.pm-modal-shell[b-5ntgunhjqm] {
    position: fixed;
    inset: 0;
    z-index: 1050;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    padding: 2rem 1rem 1rem;
    overflow-y: auto;
    /* Shell itself is transparent — backdrop is the separate element */
}

/* !! CRITICAL FIX: backdrop must be solid, opaque, and non-clickthrough !! */
.pm-modal-backdrop[b-5ntgunhjqm] {
    position: fixed;
    inset: 0;
    z-index: 0; /* behind the dialog (z-index: 1) */
    background: var(--modal-overlay);
    /* NO backdrop-filter on backdrop — it causes transparency issues in some browsers */
}

.pm-modal-dialog[b-5ntgunhjqm] {
    position: relative;
    z-index: 1;
    background: var(--modal-bg);
    border: 1px solid var(--modal-border);
    border-radius: 14px;
    width: 100%;
    max-width: 560px;
    box-shadow: var(--modal-shadow);
    overflow: hidden;
    /* Ensure the dialog is fully opaque over the backdrop */
    isolation: isolate;
}

.pm-modal-dialog--lg[b-5ntgunhjqm] {
    max-width: 700px;
}

.pm-modal-dialog--xl[b-5ntgunhjqm] {
    max-width: 880px;
}

.pm-modal-header[b-5ntgunhjqm] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 13px 20px;
    background: var(--table-head-bg);
    border-bottom: 2px solid var(--iac-gold);
    flex-shrink: 0;
}

.pm-modal-title[b-5ntgunhjqm] {
    font-size: 0.76rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.09em;
    color: var(--table-head-text);
    display: flex;
    align-items: center;
    gap: 8px;
}

.pm-modal-close[b-5ntgunhjqm] {
    background: rgba(255,255,255,0.12);
    border: 1.5px solid rgba(255,255,255,0.18);
    color: rgba(255,255,255,0.82);
    border-radius: 6px;
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.88rem;
    cursor: pointer;
    transition: background .12s, color .12s, border-color .12s;
    flex-shrink: 0;
    padding: 0;
}

    .pm-modal-close:hover[b-5ntgunhjqm] {
        background: rgba(220,38,38,0.28);
        border-color: rgba(220,38,38,0.44);
        color: #fff;
    }

.pm-modal-body[b-5ntgunhjqm] {
    padding: 22px 22px 0;
    overflow-y: auto;
    max-height: 72vh;
}

.pm-modal-body--scroll[b-5ntgunhjqm] {
    overflow-y: auto;
    max-height: calc(100vh - 180px);
    padding-bottom: 0;
}

.pm-modal-footer[b-5ntgunhjqm] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 9px;
    padding: 14px 22px;
    border-top: 1px solid var(--divider);
    background: var(--panel-bg-alt);
    margin-top: 18px;
}


/* ─────────────────────────────────────────────────────────────────
   14. LAYOUT HELPERS
   ───────────────────────────────────────────────────────────────── */
.pm-split-layout[b-5ntgunhjqm] {
    position: relative;
}

.pm-split-main[b-5ntgunhjqm] {
    flex: 1 1 auto;
    min-width: 0;
}

.pm-split-main--full[b-5ntgunhjqm] {
    width: 100%;
}

.pm-split-side[b-5ntgunhjqm] {
    display: none;
}

.pm-content-area[b-5ntgunhjqm] {
    animation: pm-fade-in-b-5ntgunhjqm .18s ease;
}

@keyframes pm-fade-in-b-5ntgunhjqm {
    from {
        opacity: 0;
        transform: translateY(6px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}


/* ─────────────────────────────────────────────────────────────────
   15. EMPTY STATES
   ───────────────────────────────────────────────────────────────── */
.pm-empty[b-5ntgunhjqm] {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2.5rem 1.5rem;
    text-align: center;
    gap: 6px;
}

.pm-empty--tall[b-5ntgunhjqm] {
    padding: 4rem 1.5rem;
}

.pm-empty-icon[b-5ntgunhjqm] {
    font-size: 2.2rem;
    color: var(--text-dim);
    margin-bottom: 8px;
    line-height: 1;
}

.pm-empty-title[b-5ntgunhjqm] {
    font-size: 0.92rem;
    font-weight: 700;
    color: var(--text-muted);
}

.pm-empty-sub[b-5ntgunhjqm] {
    font-size: 0.78rem;
    color: var(--text-dim);
}


/* ─────────────────────────────────────────────────────────────────
   16. TOGGLE ROWS
   ───────────────────────────────────────────────────────────────── */
.pm-toggle-row[b-5ntgunhjqm] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 0;
}

.pm-toggle-label[b-5ntgunhjqm] {
    font-size: 0.84rem;
    color: var(--text-primary);
    font-weight: 600;
    cursor: pointer;
    line-height: 1.4;
    flex: 1;
}

.pm-td-muted[b-5ntgunhjqm] {
    color: var(--text-muted);
}


/* ─────────────────────────────────────────────────────────────────
   17. ALERTS
   ───────────────────────────────────────────────────────────────── */
.alert[b-5ntgunhjqm] {
    font-size: 0.83rem;
    border-radius: 8px;
    padding: 0.65rem 1rem;
    line-height: 1.5;
    border-width: 1px;
}

.alert-warning[b-5ntgunhjqm] {
    background: var(--warn-bg) !important;
    border-color: var(--warn-border) !important;
    color: var(--warn-text) !important;
}

.alert-info[b-5ntgunhjqm] {
    background: var(--info-bg) !important;
    border-color: var(--info-border) !important;
    color: var(--info-text) !important;
}

.alert-success[b-5ntgunhjqm] {
    background: var(--success-bg) !important;
    color: var(--success-text) !important;
}

[data-bs-theme="dark"] .alert-warning[b-5ntgunhjqm],
[data-theme="dark"] .alert-warning[b-5ntgunhjqm] {
    background: var(--warn-bg) !important;
    border-color: var(--warn-border) !important;
    color: var(--warn-text) !important;
}

[data-bs-theme="dark"] .alert-info[b-5ntgunhjqm],
[data-theme="dark"] .alert-info[b-5ntgunhjqm] {
    background: var(--info-bg) !important;
    border-color: var(--info-border) !important;
    color: var(--info-text) !important;
}


/* ─────────────────────────────────────────────────────────────────
   18. CONFIG ROW
   ───────────────────────────────────────────────────────────────── */
.pm-config-row[b-5ntgunhjqm] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 16px;
    border-bottom: 1px solid var(--divider);
    transition: background .12s;
}

    .pm-config-row:last-child[b-5ntgunhjqm] {
        border-bottom: none;
    }

    .pm-config-row:hover[b-5ntgunhjqm] {
        background: var(--table-row-hover);
    }

.pm-config-row__name[b-5ntgunhjqm] {
    display: flex;
    align-items: center;
    gap: 6px;
    flex-wrap: wrap;
    font-size: 0.86rem;
    min-width: 0;
}

.pm-config-row__actions[b-5ntgunhjqm] {
    display: flex;
    align-items: center;
    gap: 7px;
    flex-shrink: 0;
}


/* ─────────────────────────────────────────────────────────────────
   19. PRICING TEST LAYOUT
   ───────────────────────────────────────────────────────────────── */
.pm-pricing-layout[b-5ntgunhjqm] {
    display: grid;
    grid-template-columns: 340px 1fr;
    gap: 1.5rem;
    align-items: start;
}

.pm-pricing-inputs[b-5ntgunhjqm] {
    position: sticky;
    top: 1rem;
}

    /* Inputs panel: more breathing room */
    .pm-pricing-inputs .pm-card-body[b-5ntgunhjqm] {
        padding: 20px;
    }

    .pm-pricing-inputs .pm-form-group[b-5ntgunhjqm] {
        margin-bottom: 1.1rem;
    }

/* inputs inherit the global .form-control sizing — no extra override needed */

@media (max-width: 900px) {
    .pm-pricing-layout[b-5ntgunhjqm] {
        grid-template-columns: 1fr;
    }

    .pm-pricing-inputs[b-5ntgunhjqm] {
        position: static;
    }
}

/* Summary card */
.pricing-summary-card[b-5ntgunhjqm] {
    background: var(--panel-bg);
    border: 1px solid var(--panel-border);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 1px 4px rgba(0,40,85,0.06);
}

.pricing-summary-card__head[b-5ntgunhjqm] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 10px;
    padding: 12px 16px;
    background: var(--table-head-bg);
    border-bottom: 2px solid var(--iac-gold);
    flex-wrap: wrap;
}

    .pricing-summary-card__head h6[b-5ntgunhjqm] {
        font-size: 0.72rem;
        font-weight: 800;
        text-transform: uppercase;
        letter-spacing: 0.09em;
        color: var(--table-head-text);
        margin: 0;
        background: none;
        border: none;
        padding: 0;
    }

.pricing-summary-subtitle[b-5ntgunhjqm] {
    font-size: 0.74rem;
    color: rgba(255,255,255,0.70);
    font-weight: 500;
}

.pricing-summary-card__title-wrap[b-5ntgunhjqm] {
    flex: 1 1 auto;
}

.pricing-summary-card__badges[b-5ntgunhjqm] {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    align-items: center;
}

.pricing-summary-chip[b-5ntgunhjqm] {
    font-size: 0.64rem !important;
    padding: 0.14rem 0.52rem !important;
    border-radius: 999px !important;
}

.pricing-summary-metrics[b-5ntgunhjqm] {
    display: grid;
    gap: 0;
}

.pricing-summary-metrics--five[b-5ntgunhjqm] {
    grid-template-columns: repeat(5, 1fr);
}

.pricing-summary-metrics--four[b-5ntgunhjqm] {
    grid-template-columns: repeat(4, 1fr);
}

@media (max-width: 1100px) {
    .pricing-summary-metrics--five[b-5ntgunhjqm] {
        grid-template-columns: repeat(3, 1fr);
    }

    .pricing-summary-metrics--four[b-5ntgunhjqm] {
        grid-template-columns: repeat(2, 1fr);
    }
}

.pricing-summary-metric[b-5ntgunhjqm] {
    display: flex;
    flex-direction: column;
    gap: 3px;
    padding: 13px 15px;
    border-right: 1px solid var(--divider);
}

    .pricing-summary-metric:last-child[b-5ntgunhjqm] {
        border-right: none;
    }

    .pricing-summary-metric span[b-5ntgunhjqm] {
        font-size: 0.63rem;
        font-weight: 800;
        text-transform: uppercase;
        letter-spacing: 0.09em;
        color: var(--text-muted);
    }

    .pricing-summary-metric strong[b-5ntgunhjqm] {
        font-size: 0.95rem;
        font-weight: 800;
        color: var(--text-primary);
        line-height: 1.25;
    }

    .pricing-summary-metric small[b-5ntgunhjqm] {
        font-size: 0.70rem;
        color: var(--text-muted);
        line-height: 1.35;
    }

.pm-pricing-remock[b-5ntgunhjqm] {
    display: grid;
    gap: 0.75rem;
}


/* ─────────────────────────────────────────────────────────────────
   20. PRICING BREAKDOWN CARDS
   ───────────────────────────────────────────────────────────────── */
.pricing-breakdown-card[b-5ntgunhjqm] {
    background: var(--panel-bg);
    border: 1px solid var(--panel-border);
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 0.75rem;
    box-shadow: 0 1px 4px rgba(0,40,85,0.05);
}

.pricing-breakdown-card__header[b-5ntgunhjqm] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 9px 15px;
    background: var(--table-head-bg);
    border-bottom: 1px solid rgba(241,184,40,0.35);
}

.pricing-breakdown-card__label[b-5ntgunhjqm] {
    font-size: 0.68rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.09em;
    color: var(--table-head-text);
    display: flex;
    align-items: center;
    gap: 6px;
}

.pricing-breakdown-card__amount[b-5ntgunhjqm] {
    font-size: 0.90rem;
    font-weight: 800;
    color: var(--iac-gold);
    white-space: nowrap;
}

.pricing-breakdown-card__subtext[b-5ntgunhjqm] {
    font-size: 0.68rem;
    color: rgba(255,255,255,0.62);
}

.pricing-breakdown-card__body[b-5ntgunhjqm] {
    padding: 0;
}

.pricing-breakdown-row[b-5ntgunhjqm] {
    display: grid;
    grid-template-columns: 150px 1fr minmax(68px, auto);
    gap: 10px;
    align-items: start;
    padding: 8px 15px;
    border-bottom: 1px solid var(--divider);
    font-size: 0.78rem;
}

    .pricing-breakdown-row:last-child[b-5ntgunhjqm] {
        border-bottom: none;
    }

    .pricing-breakdown-row:hover[b-5ntgunhjqm] {
        background: var(--table-row-hover);
    }

.pricing-breakdown-row__qty[b-5ntgunhjqm] {
    color: var(--text-muted);
    font-weight: 600;
    font-size: 0.72rem;
    word-break: break-word;
    line-height: 1.4;
}

.pricing-breakdown-row__detail[b-5ntgunhjqm] {
    color: var(--text-secondary);
    font-size: 0.73rem;
    line-height: 1.48;
    word-break: break-word;
}

.pricing-breakdown-row__cost[b-5ntgunhjqm] {
    text-align: right;
    font-weight: 700;
    color: var(--text-primary);
    white-space: nowrap;
    font-size: 0.80rem;
}


/* ─────────────────────────────────────────────────────────────────
   21. SHEET OPTIMIZATION
   ───────────────────────────────────────────────────────────────── */
.sheet-opt-card[b-5ntgunhjqm] {
    background: var(--panel-bg);
    border: 1px solid var(--panel-border);
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 0.75rem;
}

.sheet-opt-card__header[b-5ntgunhjqm] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 8px 15px;
    background: var(--table-head-bg);
    border-bottom: 1px solid rgba(241,184,40,0.30);
}

.sheet-opt-card__title[b-5ntgunhjqm] {
    font-size: 0.67rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.09em;
    color: var(--table-head-text);
}

.sheet-opt-card__badge[b-5ntgunhjqm] {
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    padding: 0.15rem 0.50rem;
    border-radius: 999px;
}

.sheet-opt-card__body[b-5ntgunhjqm] {
    padding: 12px 15px;
}

.sheet-opt-primary[b-5ntgunhjqm] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(110px, 1fr));
    gap: 8px;
    margin-bottom: 10px;
}

.sheet-opt-stat[b-5ntgunhjqm] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

    .sheet-opt-stat span[b-5ntgunhjqm] {
        font-size: 0.62rem;
        font-weight: 800;
        text-transform: uppercase;
        letter-spacing: 0.07em;
        color: var(--text-muted);
    }

    .sheet-opt-stat strong[b-5ntgunhjqm] {
        font-size: 0.88rem;
        font-weight: 800;
        color: var(--text-primary);
    }

.sheet-opt-alt-label[b-5ntgunhjqm] {
    font-size: 0.64rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.09em;
    color: var(--text-muted);
    border-top: 1px solid var(--divider);
    padding-top: 8px;
    margin-top: 4px;
    margin-bottom: 6px;
}

.sheet-opt-alt-row[b-5ntgunhjqm] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(80px, 1fr));
    gap: 5px;
    padding: 6px 9px;
    border-radius: 6px;
    margin-bottom: 4px;
    font-size: 0.73rem;
    border: 1px solid var(--panel-border);
    background: var(--panel-bg-alt);
}

.sheet-opt-alt-row--best[b-5ntgunhjqm] {
    background: rgba(26,122,74,0.07);
    border-color: rgba(26,122,74,0.22);
}

.sheet-opt-alt-row--current[b-5ntgunhjqm] {
    background: rgba(0,40,85,0.06);
    border-color: rgba(0,40,85,0.16);
}

[data-bs-theme="dark"] .sheet-opt-alt-row--current[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-alt-row--current[b-5ntgunhjqm] {
    background: rgba(96,165,250,0.07);
    border-color: rgba(96,165,250,0.18);
}

.sheet-opt-why[b-5ntgunhjqm] {
    font-size: 0.65rem;
    font-style: italic;
    color: var(--text-muted);
    margin-top: 2px;
}


/* ─────────────────────────────────────────────────────────────────
   22. LABOR TABLE
   ───────────────────────────────────────────────────────────────── */
.pm-labor-table[b-5ntgunhjqm] {
    width: 100%;
    border-collapse: collapse;
    font-size: 0.82rem;
}

    .pm-labor-table thead th[b-5ntgunhjqm] {
        background: var(--table-head-bg) !important;
        color: var(--table-head-text) !important;
        border-bottom: 2px solid var(--iac-gold) !important;
        font-size: 0.67rem;
        font-weight: 800;
        text-transform: uppercase;
        letter-spacing: 0.09em;
        padding: 8px 13px;
        white-space: nowrap;
    }

    .pm-labor-table tbody td[b-5ntgunhjqm] {
        padding: 8px 13px;
        border-bottom: 1px solid var(--divider);
        color: var(--text-primary);
        vertical-align: middle;
    }

    .pm-labor-table tbody tr:last-child td[b-5ntgunhjqm] {
        border-bottom: none;
    }

    .pm-labor-table tbody tr:hover > td[b-5ntgunhjqm] {
        background: var(--table-row-hover);
    }

.pm-labor-total[b-5ntgunhjqm] {
    font-weight: 800;
    color: var(--iac-gold);
    font-size: 0.94rem;
}


/* ─────────────────────────────────────────────────────────────────
   23. PRICING SETTINGS GRID
   ───────────────────────────────────────────────────────────────── */
.pm-pricing-settings-grid[b-5ntgunhjqm] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(340px, 1fr));
    gap: 1.25rem;
}

    /* Pricing settings inputs: more space */
    .pm-pricing-settings-grid .pm-form-group[b-5ntgunhjqm] {
        margin-bottom: 1.2rem;
    }

    .pm-pricing-settings-grid .pm-card-body[b-5ntgunhjqm] {
        padding: 22px;
    }

    .pm-pricing-settings-grid .form-control[b-5ntgunhjqm],
    .pm-pricing-settings-grid .pm-input[b-5ntgunhjqm] {
        font-size: 0.92rem !important;
        padding: 10px 14px !important;
        font-weight: 600 !important;
    }

    .pm-pricing-settings-grid .pm-label[b-5ntgunhjqm],
    .pm-pricing-settings-grid .pm-field-label[b-5ntgunhjqm] {
        margin-bottom: 6px;
        font-size: 0.69rem;
    }


/* ─────────────────────────────────────────────────────────────────
   24. BEND TABLE
   ───────────────────────────────────────────────────────────────── */
.pm-bend-section[b-5ntgunhjqm] {
    background: var(--panel-bg-alt);
    border: 1px solid var(--panel-border);
    border-radius: 8px;
    padding: 12px 14px;
    margin-bottom: 10px;
}

.pm-bend-section-label[b-5ntgunhjqm] {
    font-size: 0.67rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.10em;
    color: var(--section-label-text);
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 6px;
}


/* ─────────────────────────────────────────────────────────────────
   25. PROFILE EDITOR
   ───────────────────────────────────────────────────────────────── */
.pm-profile-editor[b-5ntgunhjqm] {
    background: var(--panel-bg);
    border: 1px solid var(--panel-border);
    border-radius: 10px;
    overflow: hidden;
}

.pm-profile-section[b-5ntgunhjqm] {
    padding: 14px 16px;
    border-bottom: 1px solid var(--divider);
}

    .pm-profile-section:last-child[b-5ntgunhjqm] {
        border-bottom: none;
    }

.pm-profile-section-title[b-5ntgunhjqm] {
    font-size: 0.67rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.10em;
    color: var(--section-label-text);
    margin-bottom: 10px;
    display: flex;
    align-items: center;
    gap: 6px;
}

.pm-profile-section--example[b-5ntgunhjqm] {
    background: var(--panel-bg-alt);
}

.pm-profile-example[b-5ntgunhjqm] {
    font-size: 0.80rem;
    color: var(--text-secondary);
    line-height: 1.55;
    padding: 9px 11px;
    border-left: 2px solid var(--iac-gold);
    background: var(--section-label-bg);
    border-radius: 0 6px 6px 0;
}

.pm-profile-help-strip[b-5ntgunhjqm] {
    background: var(--section-label-bg);
    border: 1px solid var(--panel-border);
    border-radius: 6px;
    padding: 9px 13px;
    font-size: 0.78rem;
    color: var(--text-secondary);
    line-height: 1.52;
    margin-bottom: 10px;
}

.pm-profile-advanced[b-5ntgunhjqm] {
    background: var(--panel-bg-alt);
    border: 1px solid var(--panel-border);
    border-radius: 8px;
    overflow: hidden;
}

    .pm-profile-advanced > summary[b-5ntgunhjqm] {
        list-style: none;
        cursor: pointer;
        padding: 9px 14px;
        font-size: 0.67rem;
        font-weight: 800;
        text-transform: uppercase;
        letter-spacing: 0.10em;
        color: var(--section-label-text);
        display: flex;
        align-items: center;
        justify-content: space-between;
        user-select: none;
    }

        .pm-profile-advanced > summary[b-5ntgunhjqm]::-webkit-details-marker {
            display: none;
        }

        .pm-profile-advanced > summary[b-5ntgunhjqm]::after {
            content: '▸';
            font-size: 0.70rem;
            color: var(--text-muted);
        }

    .pm-profile-advanced[open] > summary[b-5ntgunhjqm]::after {
        content: '▾';
    }

.pm-profile-advanced-body[b-5ntgunhjqm] {
    padding: 12px 14px;
}

.pm-profile-custom-stack[b-5ntgunhjqm] {
    display: grid;
    gap: 10px;
}

[data-bs-theme="dark"] .pm-profile-editor[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-profile-section[b-5ntgunhjqm],
[data-theme="dark"] .pm-profile-editor[b-5ntgunhjqm],
[data-theme="dark"] .pm-profile-section[b-5ntgunhjqm] {
    border-color: rgba(255,255,255,0.08);
}

[data-bs-theme="dark"] .pm-profile-help-strip[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-profile-advanced[b-5ntgunhjqm],
[data-theme="dark"] .pm-profile-help-strip[b-5ntgunhjqm],
[data-theme="dark"] .pm-profile-advanced[b-5ntgunhjqm] {
    background: rgba(255,255,255,0.04);
    border-color: rgba(255,255,255,0.09);
}


/* ─────────────────────────────────────────────────────────────────
   26. CUSTOM CHANNEL EDITOR
   ───────────────────────────────────────────────────────────────── */
.custom-channel-editor[b-5ntgunhjqm] {
    background: var(--panel-bg-alt);
    border: 1px solid var(--panel-border);
    border-left: 3px solid var(--iac-gold);
    border-radius: 8px;
    overflow: hidden;
}

.custom-channel-editor__head[b-5ntgunhjqm] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    padding: 8px 14px;
    background: var(--section-label-bg);
    border-bottom: 1px solid var(--panel-border);
    font-size: 0.67rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.10em;
    color: var(--section-label-text);
}

.custom-channel-editor__meta[b-5ntgunhjqm] {
    font-size: 0.65rem;
    font-weight: 500;
    text-transform: none;
    letter-spacing: 0;
    color: var(--text-muted);
}

.custom-channel-editor__summary[b-5ntgunhjqm] {
    background: var(--section-label-bg);
    border-top: 1px solid var(--panel-border);
    padding: 8px 14px;
    font-size: 0.77rem;
    color: var(--text-secondary);
    line-height: 1.5;
}

.custom-channel-editor .row[b-5ntgunhjqm] {
    padding: 12px 14px;
}


/* ─────────────────────────────────────────────────────────────────
   27. PROFILE INTERPRETATION TRACE
   ───────────────────────────────────────────────────────────────── */
.pricing-profile-trace-card[b-5ntgunhjqm] {
    border: 1px solid var(--panel-border);
    background: var(--panel-bg);
    border-radius: 12px;
    overflow: hidden;
}

.pricing-profile-trace-card__header[b-5ntgunhjqm] {
    padding: 9px 15px;
    background: var(--table-head-bg);
    border-bottom: 1px solid rgba(241,184,40,0.32);
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

    .pricing-profile-trace-card__header .pricing-breakdown-card__subtext[b-5ntgunhjqm] {
        display: block;
        margin-top: 3px;
        color: rgba(255,255,255,0.68);
    }

.pricing-profile-trace-card__body[b-5ntgunhjqm] {
    padding: 12px 15px;
}

.pricing-profile-trace[b-5ntgunhjqm] {
    border: 1px solid var(--panel-border);
    border-radius: 10px;
    background: var(--panel-bg-alt);
    overflow: hidden;
}

.pricing-profile-trace__summary[b-5ntgunhjqm] {
    list-style: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 9px 14px;
    font-size: 0.67rem;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: var(--section-label-text);
    background: var(--section-label-bg);
    border-bottom: 1px solid var(--panel-border);
    user-select: none;
}

    .pricing-profile-trace__summary[b-5ntgunhjqm]::after {
        content: 'Hide';
        font-size: 0.60rem;
        color: var(--text-muted);
        letter-spacing: 0.08em;
    }

.pricing-profile-trace:not([open]) .pricing-profile-trace__summary[b-5ntgunhjqm]::after {
    content: 'Show';
}

.pricing-profile-trace__summary[b-5ntgunhjqm]::-webkit-details-marker {
    display: none;
}

.pricing-profile-trace__grid[b-5ntgunhjqm] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 10px;
    padding: 10px;
}

.pricing-profile-trace__item[b-5ntgunhjqm] {
    border: 1px solid var(--panel-border);
    border-radius: 10px;
    background: var(--panel-bg);
    padding: 11px 12px;
}

.pricing-profile-trace__title[b-5ntgunhjqm] {
    font-size: 0.67rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--section-label-text);
    margin-bottom: 8px;
}

.pricing-profile-trace__row[b-5ntgunhjqm] {
    display: grid;
    grid-template-columns: 100px minmax(0, 1fr);
    gap: 8px;
    align-items: start;
    font-size: 0.78rem;
    padding: 5px 0;
    border-top: 1px dashed var(--divider);
}

    .pricing-profile-trace__row:first-of-type[b-5ntgunhjqm] {
        border-top: none;
        padding-top: 0;
    }

    .pricing-profile-trace__row span[b-5ntgunhjqm] {
        color: var(--text-muted);
        font-weight: 800;
        text-transform: uppercase;
        letter-spacing: 0.06em;
        font-size: 0.62rem;
        line-height: 1.4;
    }

    .pricing-profile-trace__row strong[b-5ntgunhjqm] {
        color: var(--text-primary);
        font-weight: 700;
        line-height: 1.48;
    }

.pricing-profile-trace__note[b-5ntgunhjqm],
.pricing-profile-trace__final[b-5ntgunhjqm],
.pricing-profile-trace__stock[b-5ntgunhjqm],
.pricing-profile-trace__foot[b-5ntgunhjqm] {
    margin-top: 8px;
    padding: 8px 10px;
    border-radius: 8px;
    border: 1px solid var(--panel-border);
    font-size: 0.77rem;
    line-height: 1.5;
}

.pricing-profile-trace__note[b-5ntgunhjqm] {
    background: var(--panel-bg-alt);
    color: var(--text-secondary);
}

.pricing-profile-trace__final[b-5ntgunhjqm] {
    background: rgba(0,40,85,0.06);
    border-color: rgba(0,40,85,0.15);
    color: var(--text-primary);
    font-weight: 700;
}

.pricing-profile-trace__stock[b-5ntgunhjqm] {
    background: rgba(241,184,40,0.09);
    border-color: rgba(241,184,40,0.22);
    color: var(--text-primary);
}

.pricing-profile-trace__foot[b-5ntgunhjqm] {
    background: rgba(26,122,74,0.07);
    border-color: rgba(26,122,74,0.18);
    color: var(--text-primary);
}

[data-bs-theme="dark"] .pricing-profile-trace-card[b-5ntgunhjqm],
[data-theme="dark"] .pricing-profile-trace-card[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-profile-trace[b-5ntgunhjqm],
[data-theme="dark"] .pricing-profile-trace[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-profile-trace__item[b-5ntgunhjqm],
[data-theme="dark"] .pricing-profile-trace__item[b-5ntgunhjqm] {
    background: var(--panel-bg);
    border-color: var(--panel-border);
}

[data-bs-theme="dark"] .pricing-profile-trace__summary[b-5ntgunhjqm],
[data-theme="dark"] .pricing-profile-trace__summary[b-5ntgunhjqm] {
    background: rgba(255,255,255,0.04);
    color: rgba(241,184,40,0.90);
}

[data-bs-theme="dark"] .pricing-profile-trace__note[b-5ntgunhjqm],
[data-theme="dark"] .pricing-profile-trace__note[b-5ntgunhjqm] {
    background: rgba(255,255,255,0.03);
    color: rgba(255,255,255,0.72);
}

[data-bs-theme="dark"] .pricing-profile-trace__final[b-5ntgunhjqm],
[data-theme="dark"] .pricing-profile-trace__final[b-5ntgunhjqm] {
    background: rgba(96,165,250,0.10);
    border-color: rgba(96,165,250,0.18);
    color: rgba(255,255,255,0.90);
}

[data-bs-theme="dark"] .pricing-profile-trace__stock[b-5ntgunhjqm],
[data-theme="dark"] .pricing-profile-trace__stock[b-5ntgunhjqm] {
    background: rgba(241,184,40,0.11);
    border-color: rgba(241,184,40,0.22);
    color: rgba(255,255,255,0.90);
}

[data-bs-theme="dark"] .pricing-profile-trace__foot[b-5ntgunhjqm],
[data-theme="dark"] .pricing-profile-trace__foot[b-5ntgunhjqm] {
    background: rgba(34,197,94,0.09);
    border-color: rgba(34,197,94,0.18);
    color: rgba(255,255,255,0.88);
}


/* ─────────────────────────────────────────────────────────────────
   28. DXF PREVIEW
   ───────────────────────────────────────────────────────────────── */
.pm-dxf-viewer[b-5ntgunhjqm] {
    background: var(--dxf-bg);
    border-radius: 10px;
    padding: 14px;
    font-family: 'Fira Code','Courier New',monospace;
    font-size: 0.72rem;
    color: var(--dxf-text);
    max-height: 300px;
    overflow-y: auto;
    border: 1px solid rgba(168,216,234,0.14);
}


/* ─────────────────────────────────────────────────────────────────
   29. NQ MODAL
   ───────────────────────────────────────────────────────────────── */
.nq-modal-overlay[b-5ntgunhjqm] {
    position: fixed;
    inset: 0;
    z-index: 1100;
    background: var(--nq-overlay-bg);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1rem;
}

.nq-modal-card[b-5ntgunhjqm] {
    background: var(--nq-card-bg);
    border: 1px solid var(--nq-card-border);
    border-radius: 16px;
    max-width: 520px;
    width: 100%;
    box-shadow: 0 24px 70px rgba(0,0,0,0.32);
    overflow: hidden;
}

.nq-modal-header[b-5ntgunhjqm] {
    padding: 16px 20px;
    background: var(--nq-header-bg);
    border-bottom: 1px solid var(--nq-header-border);
    display: flex;
    align-items: center;
    gap: 12px;
}

.nq-modal-icon[b-5ntgunhjqm] {
    width: 40px;
    height: 40px;
    background: var(--nq-icon-bg);
    border: 1px solid var(--nq-icon-border);
    border-radius: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.15rem;
    color: var(--nq-icon-color);
    flex-shrink: 0;
}

.nq-modal-title[b-5ntgunhjqm] {
    font-size: 0.90rem;
    font-weight: 800;
    color: var(--nq-title-color);
}

.nq-modal-subtitle[b-5ntgunhjqm] {
    font-size: 0.73rem;
    color: var(--nq-subtitle-color);
    margin-top: 2px;
}

.nq-modal-body[b-5ntgunhjqm] {
    padding: 18px 22px;
    font-size: 0.85rem;
    color: var(--nq-body-color);
    line-height: 1.58;
}

.nq-modal-footer[b-5ntgunhjqm] {
    padding: 13px 22px;
    background: var(--nq-footer-bg);
    border-top: 1px solid var(--nq-footer-border);
    display: flex;
    justify-content: flex-end;
    gap: 9px;
}

.nq-btn-ok[b-5ntgunhjqm] {
    background: var(--nq-btn-ok-bg);
    border: 1.5px solid var(--nq-btn-ok-border);
    color: var(--nq-btn-ok-color);
    font-family: 'din-2014','DIN 2014','DIN Pro','DM Sans',system-ui,sans-serif;
    font-weight: 800;
    font-size: 0.80rem;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    padding: 0.44rem 1.10rem;
    border-radius: 7px;
    cursor: pointer;
    transition: background .12s, transform .09s;
}

    .nq-btn-ok:hover[b-5ntgunhjqm] {
        background: var(--nq-btn-ok-hover-bg);
        transform: translateY(-1px);
    }


/* ─────────────────────────────────────────────────────────────────
   30. MISC UTILITY
   ───────────────────────────────────────────────────────────────── */
code[b-5ntgunhjqm] {
    font-size: 0.81em;
    padding: 0.12rem 0.40rem;
    border-radius: 4px;
    background: var(--section-label-bg);
    color: var(--section-label-text);
    font-family: 'Fira Code','Courier New',monospace;
    border: 1px solid var(--panel-border);
}

[data-bs-theme="dark"] code[b-5ntgunhjqm],
[data-theme="dark"] code[b-5ntgunhjqm] {
    background: rgba(241,184,40,0.10);
    color: rgba(241,184,40,0.88);
    border-color: rgba(241,184,40,0.20);
}

hr[b-5ntgunhjqm] {
    border-color: var(--divider);
    opacity: 1;
    margin: 1rem 0;
}

.text-muted[b-5ntgunhjqm] {
    color: var(--text-muted) !important;
}

.text-secondary[b-5ntgunhjqm] {
    color: var(--text-secondary) !important;
}

small[b-5ntgunhjqm] {
    font-size: 0.79em;
}

/* Spinners */
.spinner-border[b-5ntgunhjqm] {
    color: var(--iac-gold);
}


/* ─────────────────────────────────────────────────────────────────
   31. RESPONSIVE
   ───────────────────────────────────────────────────────────────── */
@media (max-width: 900px) {
    .pm-page-shell[b-5ntgunhjqm] {
        padding: 1rem;
    }

    .pm-form-row--2[b-5ntgunhjqm],
    .pm-form-row--3[b-5ntgunhjqm],
    .pm-form-row--4[b-5ntgunhjqm] {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 600px) {
    .pm-tab-strip[b-5ntgunhjqm] {
        border-radius: 8px;
        padding: 3px;
    }

    .pm-tab[b-5ntgunhjqm] {
        font-size: 0.68rem;
        padding: 0.38rem 0.66rem;
    }

        .pm-tab span[b-5ntgunhjqm] {
            display: none;
        }

    .pm-form-row--2[b-5ntgunhjqm],
    .pm-form-row--3[b-5ntgunhjqm],
    .pm-form-row--4[b-5ntgunhjqm] {
        grid-template-columns: 1fr;
    }

    .pm-modal-dialog[b-5ntgunhjqm],
    .pm-modal-dialog--lg[b-5ntgunhjqm],
    .pm-modal-dialog--xl[b-5ntgunhjqm] {
        max-width: 100%;
        border-radius: 12px 12px 0 0;
    }

    .pm-modal-shell[b-5ntgunhjqm] {
        align-items: flex-end;
        padding: 0;
    }

    .pricing-profile-trace__grid[b-5ntgunhjqm] {
        grid-template-columns: 1fr;
    }

    .pricing-profile-trace__row[b-5ntgunhjqm] {
        grid-template-columns: 1fr;
        gap: 3px;
    }

    .pm-pricing-layout[b-5ntgunhjqm] {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .pricing-summary-metrics--five[b-5ntgunhjqm],
    .pricing-summary-metrics--four[b-5ntgunhjqm] {
        grid-template-columns: 1fr 1fr;
    }
}


/* ─────────────────────────────────────────────────────────────────
   32. FINAL PRODUCT MANAGEMENT OVERHAUL OVERRIDES
   ───────────────────────────────────────────────────────────────── */

.pm-page-shell[b-5ntgunhjqm],
.pm-content-area[b-5ntgunhjqm],
.pm-pricing-results[b-5ntgunhjqm],
.pm-pricing-inputs[b-5ntgunhjqm],
.pricing-summary-card[b-5ntgunhjqm],
.pricing-breakdown-card[b-5ntgunhjqm],
.sheet-opt-card[b-5ntgunhjqm],
.pricing-profile-trace-card[b-5ntgunhjqm],
.pm-card[b-5ntgunhjqm],
.pm-inset-card[b-5ntgunhjqm],
.pm-profile-editor[b-5ntgunhjqm],
.custom-channel-editor[b-5ntgunhjqm],
.pm-bend-section[b-5ntgunhjqm] {
    overflow: visible;
}

.pm-card[b-5ntgunhjqm],
.pricing-summary-card[b-5ntgunhjqm],
.pricing-breakdown-card[b-5ntgunhjqm],
.sheet-opt-card[b-5ntgunhjqm],
.pricing-profile-trace-card[b-5ntgunhjqm],
.pm-profile-editor[b-5ntgunhjqm],
.custom-channel-editor[b-5ntgunhjqm],
.pm-bend-section[b-5ntgunhjqm],
.pm-inset-card[b-5ntgunhjqm] {
    border-radius: 16px;
    box-shadow: 0 16px 40px rgba(0, 25, 60, 0.08), 0 2px 8px rgba(0, 25, 60, 0.05);
}

[data-bs-theme="dark"] .pm-card[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-summary-card[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-breakdown-card[b-5ntgunhjqm],
[data-bs-theme="dark"] .sheet-opt-card[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-profile-trace-card[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-profile-editor[b-5ntgunhjqm],
[data-bs-theme="dark"] .custom-channel-editor[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-bend-section[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-inset-card[b-5ntgunhjqm],
[data-theme="dark"] .pm-card[b-5ntgunhjqm],
[data-theme="dark"] .pricing-summary-card[b-5ntgunhjqm],
[data-theme="dark"] .pricing-breakdown-card[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-card[b-5ntgunhjqm],
[data-theme="dark"] .pricing-profile-trace-card[b-5ntgunhjqm],
[data-theme="dark"] .pm-profile-editor[b-5ntgunhjqm],
[data-theme="dark"] .custom-channel-editor[b-5ntgunhjqm],
[data-theme="dark"] .pm-bend-section[b-5ntgunhjqm],
[data-theme="dark"] .pm-inset-card[b-5ntgunhjqm] {
    box-shadow: 0 18px 48px rgba(0, 0, 0, 0.38), 0 2px 10px rgba(0, 0, 0, 0.24);
}

.pm-card-head[b-5ntgunhjqm],
.pricing-summary-card__head[b-5ntgunhjqm],
.pricing-breakdown-card__header[b-5ntgunhjqm],
.sheet-opt-card__header[b-5ntgunhjqm],
.pricing-profile-trace-card__header[b-5ntgunhjqm],
.pm-modal-header[b-5ntgunhjqm],
.mat-detail-modal-header[b-5ntgunhjqm],
.sheet-opt-modal-header[b-5ntgunhjqm] {
    background: var(--table-head-bg);
}

[data-bs-theme="dark"] .pm-card-head[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-summary-card__head[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-breakdown-card__header[b-5ntgunhjqm],
[data-bs-theme="dark"] .sheet-opt-card__header[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-profile-trace-card__header[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-modal-header[b-5ntgunhjqm],
[data-bs-theme="dark"] .mat-detail-modal-header[b-5ntgunhjqm],
[data-bs-theme="dark"] .sheet-opt-modal-header[b-5ntgunhjqm],
[data-theme="dark"] .pm-card-head[b-5ntgunhjqm],
[data-theme="dark"] .pricing-summary-card__head[b-5ntgunhjqm],
[data-theme="dark"] .pricing-breakdown-card__header[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-card__header[b-5ntgunhjqm],
[data-theme="dark"] .pricing-profile-trace-card__header[b-5ntgunhjqm],
[data-theme="dark"] .pm-modal-header[b-5ntgunhjqm],
[data-theme="dark"] .mat-detail-modal-header[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-modal-header[b-5ntgunhjqm] {
    background: var(--table-head-bg);
}

.pm-card-body[b-5ntgunhjqm],
.pricing-summary-card[b-5ntgunhjqm],
.pricing-breakdown-card__body[b-5ntgunhjqm],
.sheet-opt-card__body[b-5ntgunhjqm],
.pricing-profile-trace-card__body[b-5ntgunhjqm],
.pm-profile-section[b-5ntgunhjqm],
.pm-bend-section[b-5ntgunhjqm],
.custom-channel-editor__summary[b-5ntgunhjqm] {
    line-height: 1.5;
}

.pm-pricing-layout[b-5ntgunhjqm] {
    grid-template-columns: minmax(360px, 420px) minmax(0, 1fr);
    gap: 1.75rem;
}

.pm-pricing-inputs .pm-card[b-5ntgunhjqm],
.pm-pricing-inputs .pricing-summary-card[b-5ntgunhjqm],
.pm-pricing-inputs .pm-inset-card[b-5ntgunhjqm] {
    position: relative;
}

.pm-pricing-inputs .pm-card-body[b-5ntgunhjqm] {
    padding: 1.35rem 1.35rem 1.5rem;
}

.pm-pricing-inputs .pm-form-group + .pm-form-group[b-5ntgunhjqm],
.pm-pricing-settings-grid .pm-form-group + .pm-form-group[b-5ntgunhjqm] {
    margin-top: 0.1rem;
}

.pm-pricing-settings-grid[b-5ntgunhjqm] {
    gap: 1.5rem;
}

.pm-form-cell[b-5ntgunhjqm],
.pm-form-group[b-5ntgunhjqm] {
    min-width: 0;
}

    .pm-form-cell > .text-muted[b-5ntgunhjqm],
    .pm-form-group > .text-muted[b-5ntgunhjqm],
    .pm-form-cell > small[b-5ntgunhjqm],
    .pm-form-group > small[b-5ntgunhjqm] {
        margin-top: 0.45rem;
        line-height: 1.45;
    }

/* Better input shell */
.form-control[b-5ntgunhjqm],
.form-select[b-5ntgunhjqm],
.pm-input[b-5ntgunhjqm],
.pm-select[b-5ntgunhjqm] {
    min-height: 44px !important;
    border-radius: 12px !important;
    border-width: 1.5px !important;
    box-shadow: 0 1px 0 rgba(255,255,255,0.5), inset 0 1px 2px rgba(0,0,0,0.03) !important;
}

[data-bs-theme="dark"] .form-control[b-5ntgunhjqm],
[data-bs-theme="dark"] .form-select[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-input[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-select[b-5ntgunhjqm],
[data-theme="dark"] .form-control[b-5ntgunhjqm],
[data-theme="dark"] .form-select[b-5ntgunhjqm],
[data-theme="dark"] .pm-input[b-5ntgunhjqm],
[data-theme="dark"] .pm-select[b-5ntgunhjqm] {
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.32) !important;
}

.form-select[b-5ntgunhjqm],
.pm-select[b-5ntgunhjqm] {
    background-origin: border-box !important;
    background-clip: padding-box, border-box !important;
}

/* Kill duplicate native arrows harder */
select[b-5ntgunhjqm],
select.form-select[b-5ntgunhjqm],
select.form-control[b-5ntgunhjqm],
.pm-select[b-5ntgunhjqm] {
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    text-indent: 0.01px;
    text-overflow: '';
}

    select[b-5ntgunhjqm]::-ms-expand {
        display: none !important;
    }

    .pm-select[b-5ntgunhjqm]::-webkit-calendar-picker-indicator,
    .form-select[b-5ntgunhjqm]::-webkit-calendar-picker-indicator {
        opacity: 0;
        display: none !important;
    }

/* Better button polish */
.pm-btn[b-5ntgunhjqm],
.btn[b-5ntgunhjqm],
.pm-action-btn[b-5ntgunhjqm] {
    min-height: 40px;
    border-radius: 12px !important;
}

.pm-btn--primary[b-5ntgunhjqm],
.btn-primary[b-5ntgunhjqm] {
    background: var(--btn-primary-bg) !important;
    color: var(--btn-primary-text) !important;
    border-color: rgba(0, 21, 53, 0.14) !important;
}

    .pm-btn--primary:hover:not(:disabled)[b-5ntgunhjqm],
    .btn-primary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: var(--btn-primary-hover) !important;
    }

[data-bs-theme="dark"] .pm-btn--primary[b-5ntgunhjqm],
[data-bs-theme="dark"] .btn-primary[b-5ntgunhjqm],
[data-theme="dark"] .pm-btn--primary[b-5ntgunhjqm],
[data-theme="dark"] .btn-primary[b-5ntgunhjqm] {
    background: var(--btn-primary-bg) !important;
    color: var(--btn-primary-text) !important;
    border-color: rgba(241, 184, 40, 0.5) !important;
}

    [data-bs-theme="dark"] .pm-btn--primary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-bs-theme="dark"] .btn-primary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .pm-btn--primary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .btn-primary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: var(--btn-primary-hover) !important;
    }

.pm-btn--ghost[b-5ntgunhjqm],
.btn-secondary[b-5ntgunhjqm],
.btn-outline-secondary[b-5ntgunhjqm],
.btn-outline-primary[b-5ntgunhjqm],
.btn-outline-info[b-5ntgunhjqm],
.btn-outline-danger[b-5ntgunhjqm] {
    backdrop-filter: none;
}

.btn-outline-secondary[b-5ntgunhjqm] {
    background: var(--btn-ghost-bg) !important;
    border-color: var(--btn-ghost-border) !important;
    color: var(--btn-ghost-text) !important;
}

    .btn-outline-secondary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: var(--btn-ghost-hover) !important;
        color: var(--text-primary) !important;
    }

/* Tables */
.table[b-5ntgunhjqm],
.pm-table[b-5ntgunhjqm],
.pm-labor-table[b-5ntgunhjqm],
.thickness-override-table[b-5ntgunhjqm] {
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid var(--table-border);
}

    .table thead th[b-5ntgunhjqm],
    .pm-table thead th[b-5ntgunhjqm],
    .pm-labor-table thead th[b-5ntgunhjqm],
    .thickness-override-table thead th[b-5ntgunhjqm] {
        position: sticky;
        top: 0;
        z-index: 1;
    }

    .table tbody td[b-5ntgunhjqm],
    .pm-table tbody td[b-5ntgunhjqm],
    .pm-labor-table tbody td[b-5ntgunhjqm] {
        line-height: 1.45;
    }

/* Pricing summary blank stacks */
.pricing-summary-metric--blank[b-5ntgunhjqm] {
    align-items: flex-start;
}

.pricing-summary-metric__stack[b-5ntgunhjqm] {
    display: grid;
    gap: 0.32rem;
    width: 100%;
    margin-top: 0.55rem;
}

.pricing-summary-note[b-5ntgunhjqm] {
    display: block;
    font-size: 0.73rem;
    line-height: 1.45;
    color: var(--text-secondary);
}

.pricing-summary-note--emphasis[b-5ntgunhjqm] {
    color: var(--text-primary);
    font-weight: 700;
}

[data-bs-theme="dark"] .pricing-summary-note[b-5ntgunhjqm],
[data-theme="dark"] .pricing-summary-note[b-5ntgunhjqm] {
    color: rgba(255,255,255,0.72);
}

/* More readable interpretation / trace */
.pricing-profile-trace__note[b-5ntgunhjqm],
.pricing-profile-trace__final[b-5ntgunhjqm],
.pricing-profile-trace__stock[b-5ntgunhjqm],
.pricing-profile-trace__foot[b-5ntgunhjqm] {
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.28);
}

[data-bs-theme="dark"] .pricing-profile-trace__note[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-profile-trace__final[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-profile-trace__stock[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-profile-trace__foot[b-5ntgunhjqm],
[data-theme="dark"] .pricing-profile-trace__note[b-5ntgunhjqm],
[data-theme="dark"] .pricing-profile-trace__final[b-5ntgunhjqm],
[data-theme="dark"] .pricing-profile-trace__stock[b-5ntgunhjqm],
[data-theme="dark"] .pricing-profile-trace__foot[b-5ntgunhjqm] {
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}

/* Material detail modal */
.mat-detail-modal-backdrop[b-5ntgunhjqm],
.sheet-opt-modal-backdrop[b-5ntgunhjqm] {
    position: fixed;
    inset: 0;
    z-index: 1085;
    background: rgba(0, 20, 50, 0.78);
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 1.25rem;
}

[data-bs-theme="dark"] .mat-detail-modal-backdrop[b-5ntgunhjqm],
[data-bs-theme="dark"] .sheet-opt-modal-backdrop[b-5ntgunhjqm],
[data-theme="dark"] .mat-detail-modal-backdrop[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-modal-backdrop[b-5ntgunhjqm] {
    background: rgba(2, 8, 18, 0.88);
}

.mat-detail-modal-card[b-5ntgunhjqm],
.sheet-opt-modal-card[b-5ntgunhjqm] {
    width: min(920px, calc(100vw - 2rem));
    max-height: min(82vh, 920px);
    overflow: hidden;
    display: grid;
    grid-template-rows: auto minmax(0, 1fr);
    background: var(--modal-bg);
    border: 1px solid var(--modal-border);
    border-radius: 20px;
    box-shadow: var(--modal-shadow);
    position: relative;
}

.mat-detail-modal-card[b-5ntgunhjqm] {
    width: min(760px, calc(100vw - 2rem));
}

.mat-detail-modal-header[b-5ntgunhjqm],
.sheet-opt-modal-header[b-5ntgunhjqm] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    padding: 1rem 1.25rem;
    border-bottom: 2px solid var(--iac-gold);
}

.mat-detail-modal-title[b-5ntgunhjqm] {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    color: var(--table-head-text);
    font-size: 0.78rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.09em;
}

.mat-detail-modal-body[b-5ntgunhjqm],
.sheet-opt-modal-body[b-5ntgunhjqm] {
    overflow: auto;
    padding: 1.2rem 1.25rem 1.35rem;
    background: var(--modal-bg);
    color: var(--text-primary);
}

.mat-detail-content[b-5ntgunhjqm] {
    display: grid;
    gap: 0.7rem;
}

.mat-detail-line[b-5ntgunhjqm] {
    display: grid;
    grid-template-columns: 18px minmax(0, 1fr);
    align-items: start;
    gap: 0.65rem;
    padding: 0.85rem 0.9rem;
    border: 1px solid var(--panel-border);
    border-radius: 12px;
    background: var(--panel-bg-alt);
}

.mat-detail-bullet[b-5ntgunhjqm] {
    color: var(--iac-gold);
    font-size: 1.05rem;
    line-height: 1;
    margin-top: 0.05rem;
}

.mat-detail-empty[b-5ntgunhjqm] {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    padding: 1rem;
    border-radius: 12px;
    background: var(--panel-bg-alt);
    border: 1px solid var(--panel-border);
    color: var(--text-secondary);
}

/* Sheet optimization modal polish */
.sheet-opt-inline-grid--modal[b-5ntgunhjqm] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 1rem;
}

.sheet-opt-block[b-5ntgunhjqm] {
    background: var(--panel-bg-alt);
    border: 1px solid var(--panel-border);
    border-radius: 16px;
    overflow: hidden;
}

.sheet-opt-block__title[b-5ntgunhjqm] {
    display: grid;
    gap: 0.18rem;
    padding: 0.9rem 1rem;
    background: rgba(var(--iac-navy-rgb), 0.06);
    border-bottom: 1px solid var(--panel-border);
    font-weight: 800;
    color: var(--text-primary);
}

.sheet-opt-block__part[b-5ntgunhjqm] {
    font-size: 0.73rem;
    color: var(--text-secondary);
}

[data-bs-theme="dark"] .sheet-opt-block__title[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-block__title[b-5ntgunhjqm] {
    background: rgba(241,184,40,0.08);
}

.sheet-opt-row[b-5ntgunhjqm] {
    padding: 0.95rem 1rem;
    border-top: 1px solid var(--divider);
    display: grid;
    gap: 0.6rem;
}

    .sheet-opt-row:first-child[b-5ntgunhjqm] {
        border-top: 0;
    }

.sheet-opt-row__top[b-5ntgunhjqm] {
    display: grid;
    grid-template-columns: auto 1fr auto;
    gap: 0.65rem;
    align-items: start;
}

.sheet-opt-row__badge[b-5ntgunhjqm] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 60px;
    padding: 0.18rem 0.45rem;
    border-radius: 999px;
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.sheet-opt-row__badge--best[b-5ntgunhjqm] {
    background: rgba(26,122,74,0.12);
    color: #0d5c31;
    border: 1px solid rgba(26,122,74,0.26);
}

.sheet-opt-row__badge--current[b-5ntgunhjqm] {
    background: rgba(0,40,85,0.10);
    color: #002855;
    border: 1px solid rgba(0,40,85,0.18);
}

.sheet-opt-row__badge--alt[b-5ntgunhjqm] {
    background: rgba(241,184,40,0.14);
    color: #7a4500;
    border: 1px solid rgba(241,184,40,0.28);
}

[data-bs-theme="dark"] .sheet-opt-row__badge--best[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-row__badge--best[b-5ntgunhjqm] {
    background: rgba(34,197,94,0.12);
    color: #6ee7a1;
    border-color: rgba(34,197,94,0.28);
}

[data-bs-theme="dark"] .sheet-opt-row__badge--current[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-row__badge--current[b-5ntgunhjqm] {
    background: rgba(96,165,250,0.14);
    color: #bfdbfe;
    border-color: rgba(96,165,250,0.24);
}

[data-bs-theme="dark"] .sheet-opt-row__badge--alt[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-row__badge--alt[b-5ntgunhjqm] {
    background: rgba(241,184,40,0.12);
    color: #ffd56d;
    border-color: rgba(241,184,40,0.24);
}

.sheet-opt-row__info[b-5ntgunhjqm] {
    display: grid;
    gap: 0.18rem;
}

.sheet-opt-partid[b-5ntgunhjqm] {
    font-weight: 800;
    color: var(--text-primary);
    word-break: break-word;
}

.sheet-opt-dims[b-5ntgunhjqm],
.sheet-opt-row__desc[b-5ntgunhjqm],
.sheet-opt-row__why[b-5ntgunhjqm],
.sheet-opt-drop[b-5ntgunhjqm],
.pricing-sheet-opt-subtitle[b-5ntgunhjqm] {
    color: var(--text-secondary);
}

.sheet-opt-row__cost[b-5ntgunhjqm] {
    white-space: nowrap;
    font-weight: 800;
    color: var(--text-primary);
}

.sheet-opt-row__stats[b-5ntgunhjqm] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.55rem;
}

.sheet-opt-stat[b-5ntgunhjqm] {
    min-width: 72px;
    padding: 0.45rem 0.6rem;
    border-radius: 12px;
    background: var(--panel-bg);
    border: 1px solid var(--panel-border);
}

.sheet-opt-stat--warn[b-5ntgunhjqm] {
    background: var(--warn-bg);
    border-color: var(--warn-border);
}

.sheet-opt-stat--good[b-5ntgunhjqm] {
    background: var(--success-bg);
    border-color: rgba(26,122,74,0.22);
}

.sheet-opt-stat--cost[b-5ntgunhjqm] {
    background: rgba(241,184,40,0.12);
    border-color: rgba(241,184,40,0.22);
}

/* Info buttons */
.pm-detail-info-btn[b-5ntgunhjqm] {
    width: 34px;
    height: 34px;
    border-radius: 10px;
    border: 1px solid var(--panel-border);
    background: var(--panel-bg-alt);
    color: var(--section-label-text);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: transform .12s ease, border-color .12s ease, background .12s ease, color .12s ease;
}

    .pm-detail-info-btn:hover[b-5ntgunhjqm] {
        transform: translateY(-1px);
        border-color: var(--iac-gold);
        background: rgba(241,184,40,0.12);
        color: var(--text-primary);
    }

[data-bs-theme="dark"] .pm-detail-info-btn[b-5ntgunhjqm],
[data-theme="dark"] .pm-detail-info-btn[b-5ntgunhjqm] {
    background: rgba(255,255,255,0.05);
    border-color: rgba(255,255,255,0.1);
    color: rgba(241,184,40,0.92);
}

/* Close buttons inside dark headers */
.pm-modal-close[b-5ntgunhjqm],
.sheet-opt-modal-header .btn[b-5ntgunhjqm],
.mat-detail-modal-header .pm-modal-close[b-5ntgunhjqm] {
    flex-shrink: 0;
}

/* Responsive cleanup */
@media (max-width: 980px) {
    .pm-pricing-layout[b-5ntgunhjqm] {
        grid-template-columns: 1fr;
    }

    .mat-detail-modal-card[b-5ntgunhjqm],
    .sheet-opt-modal-card[b-5ntgunhjqm] {
        width: min(100%, calc(100vw - 1rem));
        max-height: 88vh;
    }
}

@media (max-width: 640px) {
    .mat-detail-modal-backdrop[b-5ntgunhjqm],
    .sheet-opt-modal-backdrop[b-5ntgunhjqm] {
        padding: 0.5rem;
    }

    .mat-detail-modal-card[b-5ntgunhjqm],
    .sheet-opt-modal-card[b-5ntgunhjqm] {
        border-radius: 16px;
        width: 100%;
    }

    .sheet-opt-row__top[b-5ntgunhjqm] {
        grid-template-columns: 1fr;
    }

    .sheet-opt-row__cost[b-5ntgunhjqm] {
        white-space: normal;
    }

    .pricing-summary-metric__stack[b-5ntgunhjqm] {
        gap: 0.25rem;
    }
}


/* ─────────────────────────────────────────────────────────────────
   33. PRODUCT MANAGEMENT PREMIUM POLISH PASS
   ───────────────────────────────────────────────────────────────── */
.pm-page-title[b-5ntgunhjqm] {
    position: relative;
    display: flex;
    align-items: center;
    gap: 0.85rem;
    min-height: 82px;
    margin-bottom: 1.4rem !important;
    padding: 1.1rem 1.35rem 1.1rem 1.1rem;
    border: 1px solid rgba(0,40,85,0.14);
    border-left: 0;
    border-radius: 18px;
    color: #fff;
    background: linear-gradient(135deg, #002855 0%, #0f3a73 58%, #184c90 100%);
    box-shadow: 0 18px 40px rgba(0,30,66,0.14), inset 0 1px 0 rgba(255,255,255,0.16);
    overflow: hidden;
}

    /* Gold vertical bar on the left */
    .pm-page-title[b-5ntgunhjqm]::before {
        content: "";
        width: 4px;
        align-self: stretch;
        border-radius: 999px;
        background: linear-gradient(180deg, #f1b828 0%, #ffd56d 100%);
        box-shadow: 0 0 0 1px rgba(255,255,255,0.08);
        flex-shrink: 0;
    }

    /* No ::after box — removed entirely */
    .pm-page-title[b-5ntgunhjqm]::after {
        content: none;
        display: none;
    }

[data-bs-theme="dark"] .pm-page-title[b-5ntgunhjqm],
[data-theme="dark"] .pm-page-title[b-5ntgunhjqm] {
    border-color: rgba(255,255,255,0.08);
    background: linear-gradient(135deg, #091220 0%, #102039 58%, #17345d 100%);
    box-shadow: 0 22px 48px rgba(0,0,0,0.44), inset 0 1px 0 rgba(255,255,255,0.05);
}

/* Force all custom modals to be fully opaque over the page */
.pm-modal-shell[b-5ntgunhjqm],
.mat-detail-modal-backdrop[b-5ntgunhjqm],
.sheet-opt-modal-backdrop[b-5ntgunhjqm] {
    position: fixed !important;
    inset: 0 !important;
}

.pm-modal-shell[b-5ntgunhjqm] {
    z-index: 2000 !important;
    background: rgba(0, 16, 40, 0.76) !important;
}

    .pm-modal-shell .pm-modal-backdrop[b-5ntgunhjqm] {
        z-index: 0 !important;
        background: rgba(0, 18, 46, 0.84) !important;
        opacity: 1 !important;
    }

    .pm-modal-shell .pm-modal-dialog[b-5ntgunhjqm],
    .mat-detail-modal-card[b-5ntgunhjqm],
    .sheet-opt-modal-card[b-5ntgunhjqm] {
        position: relative;
        z-index: 1;
        background: var(--modal-bg) !important;
        opacity: 1 !important;
    }

.mat-detail-modal-backdrop[b-5ntgunhjqm],
.sheet-opt-modal-backdrop[b-5ntgunhjqm] {
    z-index: 2100 !important;
    background: rgba(0, 18, 46, 0.84) !important;
    backdrop-filter: blur(2px);
}

[data-bs-theme="dark"] .pm-modal-shell[b-5ntgunhjqm],
[data-theme="dark"] .pm-modal-shell[b-5ntgunhjqm],
[data-bs-theme="dark"] .mat-detail-modal-backdrop[b-5ntgunhjqm],
[data-bs-theme="dark"] .sheet-opt-modal-backdrop[b-5ntgunhjqm],
[data-theme="dark"] .mat-detail-modal-backdrop[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-modal-backdrop[b-5ntgunhjqm] {
    background: rgba(2, 8, 18, 0.9) !important;
}

.pm-modal-body[b-5ntgunhjqm],
.mat-detail-modal-body[b-5ntgunhjqm],
.sheet-opt-modal-body[b-5ntgunhjqm],
.pm-modal-footer[b-5ntgunhjqm] {
    background: var(--modal-bg) !important;
}

.mat-detail-modal-card[b-5ntgunhjqm],
.sheet-opt-modal-card[b-5ntgunhjqm] {
    border-radius: 22px;
    border-width: 1px;
    overflow: hidden;
}

.mat-detail-line[b-5ntgunhjqm] {
    background: linear-gradient(180deg, rgba(var(--iac-navy-rgb), 0.045), rgba(255,255,255,0.82));
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.55);
}

[data-bs-theme="dark"] .mat-detail-line[b-5ntgunhjqm],
[data-theme="dark"] .mat-detail-line[b-5ntgunhjqm] {
    background: linear-gradient(180deg, rgba(255,255,255,0.045), rgba(255,255,255,0.02));
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}

/* Inputs and left pricing panel makeover */
.pm-pricing-inputs .pm-card[b-5ntgunhjqm],
.pm-pricing-inputs .pm-inset-card[b-5ntgunhjqm],
.pm-pricing-inputs .pricing-summary-card[b-5ntgunhjqm] {
    background: linear-gradient(180deg, rgba(255,255,255,0.98), rgba(244,248,253,0.96));
}

[data-bs-theme="dark"] .pm-pricing-inputs .pm-card[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-inputs .pm-inset-card[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-inputs .pricing-summary-card[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-inputs .pm-card[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-inputs .pm-inset-card[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-inputs .pricing-summary-card[b-5ntgunhjqm] {
    background: linear-gradient(180deg, rgba(16,24,40,0.98), rgba(18,30,48,0.96));
}

.pm-pricing-inputs .pm-label[b-5ntgunhjqm],
.pm-pricing-inputs .form-label[b-5ntgunhjqm],
.pm-pricing-settings-grid .pm-label[b-5ntgunhjqm],
.pm-pricing-settings-grid .form-label[b-5ntgunhjqm] {
    color: var(--text-primary) !important;
    font-size: 0.70rem !important;
    letter-spacing: 0.11em !important;
}

[data-bs-theme="dark"] .pm-pricing-inputs .pm-label[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-inputs .form-label[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-settings-grid .pm-label[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-settings-grid .form-label[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-inputs .pm-label[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-inputs .form-label[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-settings-grid .pm-label[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-settings-grid .form-label[b-5ntgunhjqm] {
    color: rgba(241,184,40,0.92) !important;
}

/* Pricing Test & Settings inputs: match the standard modal/bend-table input style */
/* (No size or shadow overrides — inherits from the global .form-control / .form-select rules) */

/* Pricing summary upgrade */
.pricing-summary-card--results[b-5ntgunhjqm] {
    border: 1px solid rgba(0,40,85,0.12);
    box-shadow: 0 22px 52px rgba(0,31,72,0.10), 0 2px 12px rgba(0,31,72,0.06);
}

.pricing-summary-card__head[b-5ntgunhjqm] {
    padding: 1rem 1.2rem;
}

    .pricing-summary-card__head h6[b-5ntgunhjqm] {
        font-size: 0.78rem;
        letter-spacing: 0.12em;
    }

.pricing-summary-subtitle[b-5ntgunhjqm] {
    font-size: 0.8rem;
    opacity: 0.88;
}

.pricing-summary-card__badges[b-5ntgunhjqm] {
    gap: 0.45rem;
}

.pricing-summary-chip[b-5ntgunhjqm] {
    padding: 0.28rem 0.7rem !important;
    font-size: 0.67rem !important;
    font-weight: 800 !important;
    border-radius: 999px !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.25), 0 3px 10px rgba(0,0,0,0.10);
}

.pricing-summary-metrics[b-5ntgunhjqm] {
    gap: 0;
    background: linear-gradient(180deg, rgba(var(--iac-navy-rgb),0.018), rgba(var(--iac-navy-rgb),0));
}

.pricing-summary-metric[b-5ntgunhjqm] {
    position: relative;
    min-height: 132px;
    padding: 1rem 1rem 1.1rem;
    border-right: 1px solid rgba(0,40,85,0.08);
    border-bottom: 1px solid rgba(0,40,85,0.08);
}

    .pricing-summary-metric[b-5ntgunhjqm]::before {
        content: "";
        position: absolute;
        left: 0.9rem;
        top: 0.85rem;
        width: 30px;
        height: 3px;
        border-radius: 999px;
        background: linear-gradient(90deg, #f1b828 0%, rgba(241,184,40,0.18) 100%);
    }

    .pricing-summary-metric span[b-5ntgunhjqm] {
        margin-top: 0.55rem;
        color: var(--text-secondary);
    }

    .pricing-summary-metric strong[b-5ntgunhjqm] {
        font-size: 1.08rem;
        line-height: 1.22;
    }

    .pricing-summary-metric small[b-5ntgunhjqm],
    .pricing-summary-note[b-5ntgunhjqm] {
        font-size: 0.74rem;
    }

[data-bs-theme="dark"] .pricing-summary-metrics[b-5ntgunhjqm],
[data-theme="dark"] .pricing-summary-metrics[b-5ntgunhjqm] {
    background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0));
}

[data-bs-theme="dark"] .pricing-summary-metric[b-5ntgunhjqm],
[data-theme="dark"] .pricing-summary-metric[b-5ntgunhjqm] {
    border-right-color: rgba(255,255,255,0.07);
    border-bottom-color: rgba(255,255,255,0.07);
}

    [data-bs-theme="dark"] .pricing-summary-metric span[b-5ntgunhjqm],
    [data-theme="dark"] .pricing-summary-metric span[b-5ntgunhjqm] {
        color: rgba(191,219,254,0.78);
    }

/* Material and labor cards/tables */
.pricing-cost-card-body[b-5ntgunhjqm] {
    padding: 0.8rem 0.95rem 1rem !important;
    background: linear-gradient(180deg, rgba(var(--iac-navy-rgb),0.018), rgba(255,255,255,0));
}

.pricing-cost-table[b-5ntgunhjqm] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    border: 1px solid var(--table-border);
    border-radius: 16px;
    overflow: hidden;
}

    .pricing-cost-table thead th[b-5ntgunhjqm] {
        background: var(--table-head-bg) !important;
        color: var(--table-head-text) !important;
        font-size: 0.67rem;
        letter-spacing: 0.11em;
        text-transform: uppercase;
        padding: 0.9rem 0.9rem;
        border-bottom: 2px solid var(--iac-gold);
    }

    .pricing-cost-table tbody td[b-5ntgunhjqm] {
        padding: 0.88rem 0.9rem;
        border-bottom: 1px solid rgba(0,40,85,0.08);
        background: rgba(255,255,255,0.96);
        vertical-align: middle;
    }

    .pricing-cost-table tbody tr:nth-child(even) td[b-5ntgunhjqm] {
        background: #f5f8fc;
    }

    .pricing-cost-table tbody tr:hover td[b-5ntgunhjqm] {
        background: rgba(241,184,40,0.08);
    }

    .pricing-cost-table tfoot td[b-5ntgunhjqm] {
        padding: 0.95rem 0.9rem;
        background: linear-gradient(180deg, rgba(0,40,85,0.07), rgba(0,40,85,0.04));
        font-weight: 800;
        border-top: 1px solid rgba(0,40,85,0.12);
    }

.pricing-cost-name[b-5ntgunhjqm],
.pricing-labor-resource[b-5ntgunhjqm] {
    font-weight: 800;
    color: var(--text-primary);
}

.pricing-cost-partid[b-5ntgunhjqm] {
    color: #204c84;
    font-weight: 700;
}

.pricing-cost-unit[b-5ntgunhjqm],
.pricing-cost-qty[b-5ntgunhjqm],
.pricing-labor-hours[b-5ntgunhjqm],
.pricing-labor-rate[b-5ntgunhjqm] {
    color: var(--text-secondary);
    font-weight: 600;
}

.pricing-cost-value[b-5ntgunhjqm],
.pricing-cost-value-col[b-5ntgunhjqm],
.pricing-cost-total-row td:last-child[b-5ntgunhjqm],
.pricing-cost-table .fw-bold[b-5ntgunhjqm] {
    font-weight: 800 !important;
    color: #002855;
}

.pricing-cost-info-col[b-5ntgunhjqm] {
    width: 62px;
}

.pricing-cost-badge[b-5ntgunhjqm] {
    display: inline-flex;
    align-items: center;
    gap: 0.25rem;
    padding: 0.16rem 0.42rem;
    border-radius: 999px;
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.pricing-cost-badge--neo[b-5ntgunhjqm] {
    background: rgba(241,184,40,0.14);
    color: #7a4500;
    border: 1px solid rgba(241,184,40,0.28);
}

[data-bs-theme="dark"] .pricing-cost-card-body[b-5ntgunhjqm],
[data-theme="dark"] .pricing-cost-card-body[b-5ntgunhjqm] {
    background: linear-gradient(180deg, rgba(255,255,255,0.02), rgba(255,255,255,0));
}

[data-bs-theme="dark"] .pricing-cost-table[b-5ntgunhjqm],
[data-theme="dark"] .pricing-cost-table[b-5ntgunhjqm] {
    border-color: rgba(255,255,255,0.08);
}

    [data-bs-theme="dark"] .pricing-cost-table thead th[b-5ntgunhjqm],
    [data-theme="dark"] .pricing-cost-table thead th[b-5ntgunhjqm] {
        background: linear-gradient(135deg, #0b1322 0%, #16233b 100%) !important;
        color: #ffd56d !important;
    }

    [data-bs-theme="dark"] .pricing-cost-table tbody td[b-5ntgunhjqm],
    [data-theme="dark"] .pricing-cost-table tbody td[b-5ntgunhjqm] {
        background: rgba(255,255,255,0.028);
        border-bottom-color: rgba(255,255,255,0.07);
    }

    [data-bs-theme="dark"] .pricing-cost-table tbody tr:nth-child(even) td[b-5ntgunhjqm],
    [data-theme="dark"] .pricing-cost-table tbody tr:nth-child(even) td[b-5ntgunhjqm] {
        background: rgba(255,255,255,0.04);
    }

    [data-bs-theme="dark"] .pricing-cost-table tbody tr:hover td[b-5ntgunhjqm],
    [data-theme="dark"] .pricing-cost-table tbody tr:hover td[b-5ntgunhjqm] {
        background: rgba(241,184,40,0.08);
    }

    [data-bs-theme="dark"] .pricing-cost-table tfoot td[b-5ntgunhjqm],
    [data-theme="dark"] .pricing-cost-table tfoot td[b-5ntgunhjqm] {
        background: linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.03));
        border-top-color: rgba(255,255,255,0.08);
    }

[data-bs-theme="dark"] .pricing-cost-partid[b-5ntgunhjqm],
[data-theme="dark"] .pricing-cost-partid[b-5ntgunhjqm] {
    color: #93c5fd;
}

[data-bs-theme="dark"] .pricing-cost-value[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-cost-value-col[b-5ntgunhjqm],
[data-theme="dark"] .pricing-cost-value[b-5ntgunhjqm],
[data-theme="dark"] .pricing-cost-value-col[b-5ntgunhjqm] {
    color: #ffd56d;
}

/* KPI strip with more flash */
.pricing-total-grid[b-5ntgunhjqm] {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 0.95rem;
}

.pricing-kpi[b-5ntgunhjqm] {
    position: relative;
    overflow: hidden;
    min-height: 126px;
    padding: 1rem 1rem 1.05rem;
    border-radius: 18px;
    border: 1px solid rgba(0,40,85,0.12);
    background: linear-gradient(180deg, #ffffff 0%, #eef4fb 100%);
    box-shadow: 0 16px 36px rgba(0,31,72,0.08), inset 0 1px 0 rgba(255,255,255,0.85);
}

    .pricing-kpi[b-5ntgunhjqm]::before {
        content: "";
        position: absolute;
        inset: 0 auto auto 0;
        width: 100%;
        height: 4px;
        background: linear-gradient(90deg, #002855 0%, #f1b828 100%);
    }

    .pricing-kpi span[b-5ntgunhjqm] {
        display: block;
        margin-bottom: 0.45rem;
        font-size: 0.67rem;
        font-weight: 800;
        letter-spacing: 0.11em;
        text-transform: uppercase;
        color: #31537f;
    }

    .pricing-kpi strong[b-5ntgunhjqm] {
        display: block;
        font-size: 1.34rem;
        line-height: 1.1;
        color: #002855;
        margin-bottom: 0.45rem;
    }

    .pricing-kpi small[b-5ntgunhjqm] {
        display: block;
        font-size: 0.76rem;
        line-height: 1.45;
        color: var(--text-secondary);
    }

.pricing-kpi--accent[b-5ntgunhjqm] {
    background: linear-gradient(180deg, rgba(241,184,40,0.22), rgba(255,255,255,0.96));
}

.pricing-kpi--final[b-5ntgunhjqm] {
    background: linear-gradient(180deg, rgba(0,40,85,0.98), rgba(15,58,115,0.96));
    border-color: rgba(0,40,85,0.4);
    box-shadow: 0 22px 44px rgba(0,31,72,0.20);
}

    .pricing-kpi--final[b-5ntgunhjqm]::before {
        background: linear-gradient(90deg, #ffd56d 0%, #ffffff 100%);
    }

    .pricing-kpi--final span[b-5ntgunhjqm],
    .pricing-kpi--final small[b-5ntgunhjqm],
    .pricing-kpi--final strong[b-5ntgunhjqm] {
        color: #fff;
    }

    .pricing-kpi--final strong[b-5ntgunhjqm] {
        color: #ffd56d;
    }

[data-bs-theme="dark"] .pricing-kpi[b-5ntgunhjqm],
[data-theme="dark"] .pricing-kpi[b-5ntgunhjqm] {
    border-color: rgba(255,255,255,0.08);
    background: linear-gradient(180deg, rgba(255,255,255,0.045), rgba(255,255,255,0.02));
    box-shadow: 0 18px 42px rgba(0,0,0,0.32), inset 0 1px 0 rgba(255,255,255,0.04);
}

    [data-bs-theme="dark"] .pricing-kpi span[b-5ntgunhjqm],
    [data-theme="dark"] .pricing-kpi span[b-5ntgunhjqm] {
        color: rgba(191,219,254,0.78);
    }

    [data-bs-theme="dark"] .pricing-kpi strong[b-5ntgunhjqm],
    [data-theme="dark"] .pricing-kpi strong[b-5ntgunhjqm] {
        color: #f8fbff;
    }

    [data-bs-theme="dark"] .pricing-kpi small[b-5ntgunhjqm],
    [data-theme="dark"] .pricing-kpi small[b-5ntgunhjqm] {
        color: rgba(255,255,255,0.72);
    }

[data-bs-theme="dark"] .pricing-kpi--accent[b-5ntgunhjqm],
[data-theme="dark"] .pricing-kpi--accent[b-5ntgunhjqm] {
    background: linear-gradient(180deg, rgba(241,184,40,0.14), rgba(255,255,255,0.03));
}

[data-bs-theme="dark"] .pricing-kpi--final[b-5ntgunhjqm],
[data-theme="dark"] .pricing-kpi--final[b-5ntgunhjqm] {
    background: linear-gradient(180deg, #132644 0%, #0b1830 100%);
    border-color: rgba(241,184,40,0.18);
}

/* Sheet optimization refresh */
.pricing-sheet-opt-shell[b-5ntgunhjqm] {
    border: 1px solid rgba(0,40,85,0.12);
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 18px 42px rgba(0,31,72,0.08);
}

.pricing-sheet-opt-header[b-5ntgunhjqm] {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1rem;
    padding: 1rem 1.2rem;
    border-bottom: 2px solid var(--iac-gold);
    background: linear-gradient(135deg, #002855 0%, #1a3260 100%);
}

    .pricing-sheet-opt-header h5[b-5ntgunhjqm] {
        margin: 0;
        color: #fff;
        font-size: 0.82rem;
        font-weight: 800;
        letter-spacing: 0.11em;
        text-transform: uppercase;
    }

.pricing-sheet-opt-subtitle[b-5ntgunhjqm] {
    display: block;
    margin-top: 0.22rem;
    font-size: 0.75rem;
    color: rgba(255,255,255,0.72);
}

.sheet-opt-inline-grid[b-5ntgunhjqm] {
    display: grid;
    gap: 1rem;
}

.sheet-opt-inline-grid--summary[b-5ntgunhjqm] {
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.sheet-opt-block[b-5ntgunhjqm] {
    border-radius: 18px;
    border: 1px solid rgba(0,40,85,0.12);
    background: linear-gradient(180deg, #ffffff 0%, #f6f9fd 100%);
    box-shadow: 0 14px 32px rgba(0,31,72,0.07);
}

.sheet-opt-block__title[b-5ntgunhjqm] {
    padding: 0.95rem 1rem;
    background: linear-gradient(180deg, rgba(0,40,85,0.06), rgba(255,255,255,0.65));
}

    .sheet-opt-block__title > span:first-child[b-5ntgunhjqm] {
        font-size: 0.72rem;
        font-weight: 800;
        text-transform: uppercase;
        letter-spacing: 0.10em;
        color: #103a71;
    }

.sheet-opt-block__part[b-5ntgunhjqm],
.sheet-opt-partid[b-5ntgunhjqm] {
    color: #204c84;
    font-weight: 800;
}

.sheet-opt-row[b-5ntgunhjqm] {
    gap: 0.7rem;
    padding: 1rem;
}

.sheet-opt-row--summary[b-5ntgunhjqm] {
    border-top: 1px solid rgba(0,40,85,0.08);
}

.sheet-opt-row__top[b-5ntgunhjqm] {
    grid-template-columns: auto 1fr auto;
    align-items: center;
}

.sheet-opt-row__badge[b-5ntgunhjqm] {
    min-width: 68px;
    padding: 0.26rem 0.55rem;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.42);
}

.sheet-opt-row__cost[b-5ntgunhjqm] {
    color: #002855;
}

.sheet-opt-row__stats[b-5ntgunhjqm] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(88px, 1fr));
    gap: 0.55rem;
}

.sheet-opt-stat[b-5ntgunhjqm] {
    display: grid;
    gap: 0.2rem;
    padding: 0.65rem 0.7rem;
    border: 1px solid rgba(0,40,85,0.10);
    border-radius: 14px;
    background: rgba(0,40,85,0.035);
}

    .sheet-opt-stat strong[b-5ntgunhjqm] {
        font-size: 1rem;
        color: #002855;
    }

    .sheet-opt-stat small[b-5ntgunhjqm],
    .sheet-opt-row__desc[b-5ntgunhjqm],
    .sheet-opt-row__why[b-5ntgunhjqm],
    .sheet-opt-drop[b-5ntgunhjqm] {
        font-size: 0.74rem;
        line-height: 1.45;
    }

.sheet-opt-row__why[b-5ntgunhjqm] {
    padding: 0.7rem 0.8rem;
    border-radius: 12px;
    background: rgba(26,122,74,0.08);
    border: 1px solid rgba(26,122,74,0.18);
}

.sheet-opt-drop[b-5ntgunhjqm] {
    padding: 0.55rem 0.75rem;
    border-radius: 12px;
    background: rgba(241,184,40,0.10);
    border: 1px solid rgba(241,184,40,0.20);
    color: #6b3e00;
}

[data-bs-theme="dark"] .pricing-sheet-opt-shell[b-5ntgunhjqm],
[data-theme="dark"] .pricing-sheet-opt-shell[b-5ntgunhjqm] {
    border-color: rgba(255,255,255,0.08);
    box-shadow: 0 20px 46px rgba(0,0,0,0.34);
}

[data-bs-theme="dark"] .pricing-sheet-opt-header[b-5ntgunhjqm],
[data-theme="dark"] .pricing-sheet-opt-header[b-5ntgunhjqm] {
    background: linear-gradient(135deg, #0b1322 0%, #16233b 100%);
}

[data-bs-theme="dark"] .sheet-opt-block[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-block[b-5ntgunhjqm] {
    border-color: rgba(255,255,255,0.08);
    background: linear-gradient(180deg, rgba(255,255,255,0.045), rgba(255,255,255,0.02));
    box-shadow: 0 16px 34px rgba(0,0,0,0.26);
}

[data-bs-theme="dark"] .sheet-opt-block__title[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-block__title[b-5ntgunhjqm] {
    background: linear-gradient(180deg, rgba(241,184,40,0.08), rgba(255,255,255,0.02));
}

    [data-bs-theme="dark"] .sheet-opt-block__title > span:first-child[b-5ntgunhjqm],
    [data-theme="dark"] .sheet-opt-block__title > span:first-child[b-5ntgunhjqm],
    [data-bs-theme="dark"] .sheet-opt-block__part[b-5ntgunhjqm],
    [data-theme="dark"] .sheet-opt-block__part[b-5ntgunhjqm],
    [data-bs-theme="dark"] .sheet-opt-partid[b-5ntgunhjqm],
    [data-theme="dark"] .sheet-opt-partid[b-5ntgunhjqm] {
        color: #dbeafe;
    }

[data-bs-theme="dark"] .sheet-opt-stat[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-stat[b-5ntgunhjqm] {
    border-color: rgba(255,255,255,0.08);
    background: rgba(255,255,255,0.035);
}

    [data-bs-theme="dark"] .sheet-opt-stat strong[b-5ntgunhjqm],
    [data-theme="dark"] .sheet-opt-stat strong[b-5ntgunhjqm],
    [data-bs-theme="dark"] .sheet-opt-row__cost[b-5ntgunhjqm],
    [data-theme="dark"] .sheet-opt-row__cost[b-5ntgunhjqm] {
        color: #f8fbff;
    }

[data-bs-theme="dark"] .sheet-opt-row__why[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-row__why[b-5ntgunhjqm] {
    background: rgba(34,197,94,0.10);
    border-color: rgba(34,197,94,0.18);
}

[data-bs-theme="dark"] .sheet-opt-drop[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-drop[b-5ntgunhjqm] {
    background: rgba(241,184,40,0.10);
    border-color: rgba(241,184,40,0.18);
    color: #ffd56d;
}

@media (max-width: 1200px) {
    .pricing-total-grid[b-5ntgunhjqm] {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (max-width: 980px) {
    .pricing-summary-metric[b-5ntgunhjqm] {
        min-height: 118px;
    }

    .pricing-total-grid[b-5ntgunhjqm] {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 640px) {
    .pm-page-title[b-5ntgunhjqm] {
        min-height: 74px;
        padding-right: 1rem;
    }

        .pm-page-title[b-5ntgunhjqm]::after {
            display: none;
        }

    .pricing-total-grid[b-5ntgunhjqm] {
        grid-template-columns: 1fr;
    }

    .pricing-summary-metric[b-5ntgunhjqm] {
        min-height: auto;
    }
}


/* ─────────────────────────────────────────────────────────────────
   33. FINAL MODAL + BUTTON POLISH PASS
   ───────────────────────────────────────────────────────────────── */

:root[b-5ntgunhjqm],
:root[data-bs-theme="light"][b-5ntgunhjqm],
[data-theme="light"][b-5ntgunhjqm] {
    --pm-btn-primary-grad-start: #0b3b79;
    --pm-btn-primary-grad-end: #002855;
    --pm-btn-primary-glow: rgba(0, 40, 85, 0.24);
    --pm-btn-secondary-bg: #ffffff;
    --pm-btn-secondary-border: rgba(0, 40, 85, 0.16);
    --pm-btn-secondary-text: #0b376d;
    --pm-btn-secondary-hover: #eef4fb;
    --pm-btn-outline-bg: rgba(0, 40, 85, 0.03);
    --pm-btn-outline-border: rgba(0, 40, 85, 0.22);
    --pm-btn-outline-text: #002855;
    --pm-btn-danger-start: #d13b45;
    --pm-btn-danger-end: #9f1f2d;
    --pm-btn-success-start: #238a57;
    --pm-btn-success-end: #16663f;
    --pm-overlay-solid: rgba(6, 25, 56, 0.82);
    --pm-overlay-blur: blur(7px) saturate(0.8);
}

    :root[data-bs-theme="dark"][b-5ntgunhjqm],
    [data-theme="dark"][b-5ntgunhjqm] {
        --pm-btn-primary-grad-start: #ffd56d;
        --pm-btn-primary-grad-end: #f1b828;
        --pm-btn-primary-glow: rgba(241, 184, 40, 0.24);
        --pm-btn-secondary-bg: rgba(255,255,255,0.06);
        --pm-btn-secondary-border: rgba(255,255,255,0.12);
        --pm-btn-secondary-text: rgba(255,255,255,0.88);
        --pm-btn-secondary-hover: rgba(255,255,255,0.11);
        --pm-btn-outline-bg: rgba(255,255,255,0.04);
        --pm-btn-outline-border: rgba(255,255,255,0.16);
        --pm-btn-outline-text: rgba(255,255,255,0.90);
        --pm-btn-danger-start: #ef6b73;
        --pm-btn-danger-end: #c73b46;
        --pm-btn-success-start: #34c77a;
        --pm-btn-success-end: #1f9556;
        --pm-overlay-solid: rgba(2, 8, 18, 0.92);
        --pm-overlay-blur: blur(8px) saturate(0.9);
    }

.pm-modal-backdrop[b-5ntgunhjqm],
.mat-detail-modal-backdrop[b-5ntgunhjqm],
.sheet-opt-modal-backdrop[b-5ntgunhjqm],
.nq-modal-overlay[b-5ntgunhjqm] {
    background: var(--pm-overlay-solid) !important;
    -webkit-backdrop-filter: var(--pm-overlay-blur);
    backdrop-filter: var(--pm-overlay-blur);
}

.pm-modal-shell[b-5ntgunhjqm] {
    z-index: 1400 !important;
    isolation: isolate;
}

.pm-modal-backdrop[b-5ntgunhjqm] {
    z-index: 0 !important;
    opacity: 1 !important;
}

.pm-modal-dialog[b-5ntgunhjqm],
.mat-detail-modal-card[b-5ntgunhjqm],
.sheet-opt-modal-card[b-5ntgunhjqm],
.nq-modal-card[b-5ntgunhjqm] {
    background: var(--modal-bg) !important;
    opacity: 1 !important;
    isolation: isolate;
    overflow: hidden !important;
    border-color: var(--modal-border) !important;
    box-shadow: 0 30px 90px rgba(0, 10, 26, 0.42), 0 6px 24px rgba(0, 10, 26, 0.22) !important;
}

    .pm-modal-dialog[b-5ntgunhjqm]::before,
    .mat-detail-modal-card[b-5ntgunhjqm]::before,
    .sheet-opt-modal-card[b-5ntgunhjqm]::before,
    .nq-modal-card[b-5ntgunhjqm]::before {
        content: "";
        position: absolute;
        inset: 0;
        background: var(--modal-bg);
        z-index: -1;
        opacity: 1;
    }

.pm-modal-body[b-5ntgunhjqm],
.pm-modal-footer[b-5ntgunhjqm],
.mat-detail-modal-body[b-5ntgunhjqm],
.sheet-opt-modal-body[b-5ntgunhjqm],
.nq-modal-body[b-5ntgunhjqm],
.nq-modal-footer[b-5ntgunhjqm] {
    background: var(--modal-bg) !important;
    opacity: 1 !important;
}

.sheet-opt-modal-body[b-5ntgunhjqm] {
    background: linear-gradient(180deg, var(--modal-bg) 0%, color-mix(in srgb, var(--modal-bg) 88%, var(--panel-bg-alt) 12%) 100%) !important;
}

.sheet-opt-block[b-5ntgunhjqm],
.mat-detail-line[b-5ntgunhjqm],
.mat-detail-empty[b-5ntgunhjqm] {
    background: var(--panel-bg) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.55), 0 10px 24px rgba(0, 24, 58, 0.08);
}

[data-bs-theme="dark"] .sheet-opt-block[b-5ntgunhjqm],
[data-bs-theme="dark"] .mat-detail-line[b-5ntgunhjqm],
[data-bs-theme="dark"] .mat-detail-empty[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-block[b-5ntgunhjqm],
[data-theme="dark"] .mat-detail-line[b-5ntgunhjqm],
[data-theme="dark"] .mat-detail-empty[b-5ntgunhjqm] {
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.04), 0 12px 26px rgba(0,0,0,0.28);
}

.sheet-opt-row[b-5ntgunhjqm] {
    background: linear-gradient(180deg, color-mix(in srgb, var(--panel-bg) 94%, transparent 6%) 0%, color-mix(in srgb, var(--panel-bg-alt) 92%, transparent 8%) 100%);
}

.sheet-opt-row--best[b-5ntgunhjqm] {
    background: linear-gradient(180deg, rgba(26,122,74,0.08) 0%, rgba(26,122,74,0.04) 100%);
}

.sheet-opt-row--current[b-5ntgunhjqm] {
    background: linear-gradient(180deg, rgba(0,40,85,0.08) 0%, rgba(0,40,85,0.04) 100%);
}

.sheet-opt-row--alt[b-5ntgunhjqm] {
    background: linear-gradient(180deg, rgba(241,184,40,0.09) 0%, rgba(241,184,40,0.04) 100%);
}

[data-bs-theme="dark"] .sheet-opt-row--best[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-row--best[b-5ntgunhjqm] {
    background: linear-gradient(180deg, rgba(34,197,94,0.12) 0%, rgba(34,197,94,0.06) 100%);
}

[data-bs-theme="dark"] .sheet-opt-row--current[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-row--current[b-5ntgunhjqm] {
    background: linear-gradient(180deg, rgba(96,165,250,0.12) 0%, rgba(96,165,250,0.06) 100%);
}

[data-bs-theme="dark"] .sheet-opt-row--alt[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-row--alt[b-5ntgunhjqm] {
    background: linear-gradient(180deg, rgba(241,184,40,0.12) 0%, rgba(241,184,40,0.06) 100%);
}

.pm-btn[b-5ntgunhjqm],
.btn[b-5ntgunhjqm],
.pm-action-btn[b-5ntgunhjqm],
.nq-btn-ok[b-5ntgunhjqm],
.pricing-sheet-opt-toggle[b-5ntgunhjqm],
.pm-icon-btn[b-5ntgunhjqm] {
    position: relative;
    overflow: hidden;
    border-radius: 14px !important;
    font-weight: 800 !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase;
    box-shadow: 0 10px 24px rgba(0, 24, 58, 0.10), 0 2px 8px rgba(0, 24, 58, 0.08);
    transition: transform .16s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease, color .18s ease !important;
}

    .pm-btn[b-5ntgunhjqm]::before,
    .btn[b-5ntgunhjqm]::before,
    .pm-action-btn[b-5ntgunhjqm]::before,
    .nq-btn-ok[b-5ntgunhjqm]::before,
    .pricing-sheet-opt-toggle[b-5ntgunhjqm]::before,
    .pm-icon-btn[b-5ntgunhjqm]::before {
        content: "";
        position: absolute;
        inset: 0;
        background: linear-gradient(180deg, rgba(255,255,255,0.22) 0%, rgba(255,255,255,0.02) 45%, rgba(255,255,255,0) 100%);
        pointer-events: none;
    }

    .pm-btn:hover[b-5ntgunhjqm],
    .btn:hover[b-5ntgunhjqm],
    .pm-action-btn:hover[b-5ntgunhjqm],
    .nq-btn-ok:hover[b-5ntgunhjqm],
    .pricing-sheet-opt-toggle:hover[b-5ntgunhjqm],
    .pm-icon-btn:hover[b-5ntgunhjqm] {
        transform: translateY(-2px);
        box-shadow: 0 16px 34px rgba(0, 24, 58, 0.16), 0 4px 12px rgba(0, 24, 58, 0.10);
    }

    .pm-btn:active[b-5ntgunhjqm],
    .btn:active[b-5ntgunhjqm],
    .pm-action-btn:active[b-5ntgunhjqm],
    .nq-btn-ok:active[b-5ntgunhjqm],
    .pricing-sheet-opt-toggle:active[b-5ntgunhjqm],
    .pm-icon-btn:active[b-5ntgunhjqm] {
        transform: translateY(0) scale(0.985);
    }

.pm-btn--primary[b-5ntgunhjqm],
.btn-primary[b-5ntgunhjqm],
.nq-btn-ok[b-5ntgunhjqm] {
    background: linear-gradient(135deg, var(--pm-btn-primary-grad-start) 0%, var(--pm-btn-primary-grad-end) 100%) !important;
    border: 1px solid color-mix(in srgb, var(--pm-btn-primary-grad-end) 72%, #ffffff 28%) !important;
    color: var(--btn-primary-text) !important;
    box-shadow: 0 14px 34px var(--pm-btn-primary-glow), 0 4px 12px rgba(0, 24, 58, 0.12) !important;
}

    .pm-btn--primary:hover[b-5ntgunhjqm],
    .btn-primary:hover[b-5ntgunhjqm],
    .nq-btn-ok:hover[b-5ntgunhjqm] {
        filter: saturate(1.05) brightness(1.02);
        box-shadow: 0 18px 40px var(--pm-btn-primary-glow), 0 6px 14px rgba(0, 24, 58, 0.16) !important;
    }

.pm-btn--ghost[b-5ntgunhjqm],
.btn-secondary[b-5ntgunhjqm],
.btn-outline-secondary[b-5ntgunhjqm] {
    background: linear-gradient(180deg, color-mix(in srgb, var(--pm-btn-secondary-bg) 82%, #ffffff 18%) 0%, var(--pm-btn-secondary-bg) 100%) !important;
    border: 1px solid var(--pm-btn-secondary-border) !important;
    color: var(--pm-btn-secondary-text) !important;
}

    .pm-btn--ghost:hover[b-5ntgunhjqm],
    .btn-secondary:hover[b-5ntgunhjqm],
    .btn-outline-secondary:hover[b-5ntgunhjqm] {
        background: linear-gradient(180deg, var(--pm-btn-secondary-hover) 0%, color-mix(in srgb, var(--pm-btn-secondary-hover) 88%, var(--pm-btn-secondary-bg) 12%) 100%) !important;
        color: var(--text-primary) !important;
    }

.btn-outline-primary[b-5ntgunhjqm],
.btn-outline-info[b-5ntgunhjqm],
.btn-outline-danger[b-5ntgunhjqm],
.pm-action-btn[b-5ntgunhjqm],
.pricing-sheet-opt-toggle[b-5ntgunhjqm] {
    background: linear-gradient(180deg, color-mix(in srgb, var(--pm-btn-outline-bg) 82%, #ffffff 18%) 0%, var(--pm-btn-outline-bg) 100%) !important;
    border-width: 1px !important;
}

.btn-outline-primary[b-5ntgunhjqm] {
    border-color: var(--pm-btn-outline-border) !important;
    color: var(--pm-btn-outline-text) !important;
}

    .btn-outline-primary:hover[b-5ntgunhjqm] {
        background: linear-gradient(135deg, var(--pm-btn-primary-grad-start) 0%, var(--pm-btn-primary-grad-end) 100%) !important;
        border-color: transparent !important;
        color: var(--btn-primary-text) !important;
    }

.btn-outline-info[b-5ntgunhjqm] {
    border-color: rgba(25, 102, 196, 0.24) !important;
    color: #0d4c93 !important;
}

    .btn-outline-info:hover[b-5ntgunhjqm] {
        background: linear-gradient(135deg, #1d6fd7 0%, #0d4c93 100%) !important;
        border-color: transparent !important;
        color: #ffffff !important;
    }

.btn-outline-danger[b-5ntgunhjqm] {
    border-color: rgba(191, 44, 62, 0.24) !important;
    color: #a52333 !important;
}

    .btn-outline-danger:hover[b-5ntgunhjqm] {
        background: linear-gradient(135deg, var(--pm-btn-danger-start) 0%, var(--pm-btn-danger-end) 100%) !important;
        border-color: transparent !important;
        color: #ffffff !important;
    }

.btn-success[b-5ntgunhjqm] {
    background: linear-gradient(135deg, var(--pm-btn-success-start) 0%, var(--pm-btn-success-end) 100%) !important;
    border: 1px solid rgba(20, 94, 56, 0.24) !important;
    color: #ffffff !important;
}

    .btn-success:hover[b-5ntgunhjqm] {
        filter: brightness(1.03);
    }

.pm-icon-btn[b-5ntgunhjqm],
.pm-modal-close[b-5ntgunhjqm],
.pricing-sheet-opt-toggle[b-5ntgunhjqm] {
    min-width: 42px;
    min-height: 42px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
}

.pm-modal-close[b-5ntgunhjqm] {
    background: linear-gradient(180deg, rgba(255,255,255,0.18) 0%, rgba(255,255,255,0.08) 100%) !important;
    border: 1px solid rgba(255,255,255,0.16) !important;
    color: rgba(255,255,255,0.92) !important;
    box-shadow: 0 10px 20px rgba(0,0,0,0.12) !important;
}

    .pm-modal-close:hover[b-5ntgunhjqm] {
        background: linear-gradient(135deg, #f16b75 0%, #c03946 100%) !important;
        border-color: transparent !important;
        color: #fff !important;
    }

[data-bs-theme="dark"] .pm-btn[b-5ntgunhjqm],
[data-bs-theme="dark"] .btn[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-action-btn[b-5ntgunhjqm],
[data-bs-theme="dark"] .nq-btn-ok[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-sheet-opt-toggle[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-icon-btn[b-5ntgunhjqm],
[data-theme="dark"] .pm-btn[b-5ntgunhjqm],
[data-theme="dark"] .btn[b-5ntgunhjqm],
[data-theme="dark"] .pm-action-btn[b-5ntgunhjqm],
[data-theme="dark"] .nq-btn-ok[b-5ntgunhjqm],
[data-theme="dark"] .pricing-sheet-opt-toggle[b-5ntgunhjqm],
[data-theme="dark"] .pm-icon-btn[b-5ntgunhjqm] {
    box-shadow: 0 14px 28px rgba(0,0,0,0.30), 0 3px 12px rgba(0,0,0,0.22);
}

[data-bs-theme="dark"] .btn-outline-primary[b-5ntgunhjqm],
[data-theme="dark"] .btn-outline-primary[b-5ntgunhjqm] {
    color: #f5d274 !important;
    border-color: rgba(241,184,40,0.30) !important;
}

[data-bs-theme="dark"] .btn-outline-info[b-5ntgunhjqm],
[data-theme="dark"] .btn-outline-info[b-5ntgunhjqm] {
    color: #9fd2ff !important;
    border-color: rgba(96,165,250,0.28) !important;
}

[data-bs-theme="dark"] .btn-outline-danger[b-5ntgunhjqm],
[data-theme="dark"] .btn-outline-danger[b-5ntgunhjqm] {
    color: #ffb4bc !important;
    border-color: rgba(248,113,113,0.28) !important;
}

[data-bs-theme="dark"] .pm-modal-close[b-5ntgunhjqm],
[data-theme="dark"] .pm-modal-close[b-5ntgunhjqm] {
    background: linear-gradient(180deg, rgba(255,255,255,0.10) 0%, rgba(255,255,255,0.04) 100%) !important;
    border-color: rgba(255,255,255,0.10) !important;
}

@supports not ((backdrop-filter: blur(2px))) {
    .pm-modal-backdrop[b-5ntgunhjqm],
    .mat-detail-modal-backdrop[b-5ntgunhjqm],
    .sheet-opt-modal-backdrop[b-5ntgunhjqm],
    .nq-modal-overlay[b-5ntgunhjqm] {
        background: rgba(4, 17, 38, 0.93) !important;
    }
}


/* ═══════════════════════════════════════════════════════════════════
   34. TARGETED FIXES — Modal backgrounds, light-mode buttons,
       plus sign weight, input vs dropdown distinction
   ═══════════════════════════════════════════════════════════════════ */

/* ── FIX 1: Modal backdrops — always solid, never transparent ─── */
/*
   Root cause: backdrop-filter: blur() on the overlay element can make
   it appear semi-transparent or invisible on certain GPU compositing
   paths. We separate concerns: the shell/backdrop carries the dim color
   at full opacity; blur is applied only as an enhancement where supported.
*/
.pm-modal-shell[b-5ntgunhjqm] {
    background: transparent !important; /* shell is just a scroll container */
    isolation: isolate;
}

.pm-modal-backdrop[b-5ntgunhjqm],
.mat-detail-modal-backdrop[b-5ntgunhjqm],
.sheet-opt-modal-backdrop[b-5ntgunhjqm],
.nq-modal-overlay[b-5ntgunhjqm] {
    background: rgba(6, 22, 52, 0.86) !important;
    -webkit-backdrop-filter: blur(6px) saturate(0.75);
    backdrop-filter: blur(6px) saturate(0.75);
    opacity: 1 !important;
}

/* Fallback: if backdrop-filter is unsupported, go fully opaque */
@supports not (backdrop-filter: blur(1px)) {
    .pm-modal-backdrop[b-5ntgunhjqm],
    .mat-detail-modal-backdrop[b-5ntgunhjqm],
    .sheet-opt-modal-backdrop[b-5ntgunhjqm],
    .nq-modal-overlay[b-5ntgunhjqm] {
        background: rgba(4, 14, 36, 0.95) !important;
    }
}

[data-bs-theme="dark"] .pm-modal-backdrop[b-5ntgunhjqm],
[data-bs-theme="dark"] .mat-detail-modal-backdrop[b-5ntgunhjqm],
[data-bs-theme="dark"] .sheet-opt-modal-backdrop[b-5ntgunhjqm],
[data-bs-theme="dark"] .nq-modal-overlay[b-5ntgunhjqm],
[data-theme="dark"] .pm-modal-backdrop[b-5ntgunhjqm],
[data-theme="dark"] .mat-detail-modal-backdrop[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-modal-backdrop[b-5ntgunhjqm],
[data-theme="dark"] .nq-modal-overlay[b-5ntgunhjqm] {
    background: rgba(1, 5, 14, 0.92) !important;
}

/* Ensure modal dialogs/cards are always fully opaque over the backdrop */
.pm-modal-dialog[b-5ntgunhjqm],
.mat-detail-modal-card[b-5ntgunhjqm],
.sheet-opt-modal-card[b-5ntgunhjqm],
.nq-modal-card[b-5ntgunhjqm] {
    background: var(--modal-bg) !important;
    opacity: 1 !important;
}

/* Modal body + footer: force solid background, never inherit transparency */
.pm-modal-body[b-5ntgunhjqm],
.pm-modal-footer[b-5ntgunhjqm],
.mat-detail-modal-body[b-5ntgunhjqm],
.sheet-opt-modal-body[b-5ntgunhjqm],
.nq-modal-body[b-5ntgunhjqm],
.nq-modal-footer[b-5ntgunhjqm],
.nq-modal-header[b-5ntgunhjqm] {
    background: var(--modal-bg) !important;
    opacity: 1 !important;
}

.sheet-opt-modal-body[b-5ntgunhjqm] {
    background: var(--modal-bg) !important;
}


/* ── FIX 2: Light-mode buttons — more contrast & presence ──────── */

/* Primary buttons: richer navy gradient, visible border */
:root .pm-btn--primary[b-5ntgunhjqm],
:root .btn-primary[b-5ntgunhjqm],
[data-theme="light"] .pm-btn--primary[b-5ntgunhjqm],
[data-theme="light"] .btn-primary[b-5ntgunhjqm] {
    background: linear-gradient(160deg, #0b3b79 0%, #002855 55%, #001e42 100%) !important;
    color: #ffffff !important;
    border: 1.5px solid rgba(0, 15, 40, 0.32) !important;
    box-shadow: 0 2px 0 rgba(0,0,0,0.18), 0 4px 14px rgba(0,30,72,0.22), inset 0 1px 0 rgba(255,255,255,0.14) !important;
    text-shadow: 0 1px 2px rgba(0,0,0,0.28);
}

    :root .pm-btn--primary:hover:not(:disabled)[b-5ntgunhjqm],
    :root .btn-primary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="light"] .pm-btn--primary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="light"] .btn-primary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(160deg, #0f4a96 0%, #003370 55%, #00244f 100%) !important;
        box-shadow: 0 3px 0 rgba(0,0,0,0.22), 0 6px 18px rgba(0,30,72,0.30), inset 0 1px 0 rgba(255,255,255,0.16) !important;
    }

/* Ghost / secondary buttons: clearly visible in light mode */
:root .pm-btn--ghost[b-5ntgunhjqm],
:root .btn-secondary[b-5ntgunhjqm],
:root .btn-outline-secondary[b-5ntgunhjqm],
[data-theme="light"] .pm-btn--ghost[b-5ntgunhjqm],
[data-theme="light"] .btn-secondary[b-5ntgunhjqm],
[data-theme="light"] .btn-outline-secondary[b-5ntgunhjqm] {
    background: linear-gradient(160deg, #ffffff 0%, #eef3fb 100%) !important;
    border: 1.5px solid rgba(0, 40, 85, 0.30) !important;
    color: #002855 !important;
    box-shadow: 0 1px 0 rgba(0,0,0,0.10), 0 2px 8px rgba(0,30,72,0.08), inset 0 1px 0 rgba(255,255,255,0.90) !important;
    text-shadow: none;
}

    :root .pm-btn--ghost:hover:not(:disabled)[b-5ntgunhjqm],
    :root .btn-secondary:hover:not(:disabled)[b-5ntgunhjqm],
    :root .btn-outline-secondary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="light"] .pm-btn--ghost:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="light"] .btn-secondary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="light"] .btn-outline-secondary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(160deg, #e6edf8 0%, #d8e5f4 100%) !important;
        border-color: rgba(0, 40, 85, 0.44) !important;
        color: #001e42 !important;
        box-shadow: 0 2px 0 rgba(0,0,0,0.12), 0 4px 10px rgba(0,30,72,0.12) !important;
    }

/* Outline-primary: visible in light mode */
:root .btn-outline-primary[b-5ntgunhjqm],
[data-theme="light"] .btn-outline-primary[b-5ntgunhjqm] {
    background: linear-gradient(160deg, rgba(0,40,85,0.04) 0%, rgba(0,40,85,0.08) 100%) !important;
    border: 1.5px solid rgba(0, 40, 85, 0.40) !important;
    color: #002855 !important;
    box-shadow: 0 1px 0 rgba(0,0,0,0.08), inset 0 1px 0 rgba(255,255,255,0.75) !important;
}

    :root .btn-outline-primary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="light"] .btn-outline-primary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(160deg, #0b3b79 0%, #002855 100%) !important;
        border-color: transparent !important;
        color: #ffffff !important;
        box-shadow: 0 2px 0 rgba(0,0,0,0.16), 0 4px 12px rgba(0,30,72,0.20) !important;
    }

/* Outline-danger light mode */
:root .btn-outline-danger[b-5ntgunhjqm],
[data-theme="light"] .btn-outline-danger[b-5ntgunhjqm] {
    background: rgba(200,28,28,0.04) !important;
    border: 1.5px solid rgba(200,28,28,0.40) !important;
    color: #b91c1c !important;
    box-shadow: 0 1px 0 rgba(0,0,0,0.06), inset 0 1px 0 rgba(255,255,255,0.70) !important;
}

/* Icon buttons light mode — edit */
:root .pm-icon-btn--edit[b-5ntgunhjqm],
[data-theme="light"] .pm-icon-btn--edit[b-5ntgunhjqm] {
    background: linear-gradient(160deg, #ffffff 0%, #eef3fb 100%);
    border-color: rgba(0,40,85,0.28);
    color: #002855;
    box-shadow: 0 1px 0 rgba(0,0,0,0.08), inset 0 1px 0 rgba(255,255,255,0.90);
}

    :root .pm-icon-btn--edit:hover[b-5ntgunhjqm],
    [data-theme="light"] .pm-icon-btn--edit:hover[b-5ntgunhjqm] {
        background: linear-gradient(160deg, #e6edf8 0%, #d8e5f4 100%);
        border-color: rgba(0,40,85,0.44);
    }

/* Action buttons in light mode */
:root .pm-action-btn.btn-outline-primary[b-5ntgunhjqm],
[data-theme="light"] .pm-action-btn.btn-outline-primary[b-5ntgunhjqm] {
    color: #002855 !important;
    border-color: rgba(0,40,85,0.36) !important;
}


/* ── FIX 3: Plus icon — bolder weight ─────────────────────────── */
/*
   bi-plus-lg is a thin SVG icon. We boost visual weight with
   stroke-like text-shadow and a slightly larger size.
*/
.pm-btn .bi-plus-lg[b-5ntgunhjqm],
.pm-btn .bi-plus[b-5ntgunhjqm],
.btn .bi-plus-lg[b-5ntgunhjqm],
.btn .bi-plus[b-5ntgunhjqm] {
    font-size: 1.05em;
    font-weight: 900;
    -webkit-text-stroke: 0.6px currentColor;
    filter: drop-shadow(0 0 0.4px currentColor);
    line-height: 1;
}

/* For primary buttons the icon should stay white */
.pm-btn--primary .bi-plus-lg[b-5ntgunhjqm],
.pm-btn--primary .bi-plus[b-5ntgunhjqm],
.btn-primary .bi-plus-lg[b-5ntgunhjqm],
.btn-primary .bi-plus[b-5ntgunhjqm] {
    -webkit-text-stroke: 0.5px rgba(255,255,255,0.85);
}


/* ── FIX 4: Pricing test & Pricing settings text inputs ────────── */
/*
   Goal: text inputs look like the dropdowns (same size, border-radius,
   shadow, background gradient) but are clearly distinguishable as
   typeable — achieved via a left-side accent bar, a slightly warmer
   background tint, and an edit cursor hint in the placeholder.
*/

/* Light mode — pricing test inputs */
.pm-pricing-inputs .form-control:not(.form-select)[b-5ntgunhjqm],
.pm-pricing-inputs input.pm-input[b-5ntgunhjqm],
.pm-pricing-inputs input[type="number"][b-5ntgunhjqm],
.pm-pricing-inputs input[type="text"][b-5ntgunhjqm],
.pm-pricing-inputs input[type="email"][b-5ntgunhjqm] {
    min-height: 48px !important;
    padding: 0.8rem 0.95rem 0.8rem 1.1rem !important;
    border: 1.5px solid rgba(0,40,85,0.22) !important;
    border-left: 3.5px solid rgba(0,40,85,0.32) !important;
    background: linear-gradient(160deg, #f7faff 0%, #eef4fb 100%) !important;
    box-shadow: 0 10px 24px rgba(0,40,85,0.05), inset 0 1px 0 rgba(255,255,255,0.90) !important;
    border-radius: 12px !important;
    color: var(--input-text) !important;
}

    .pm-pricing-inputs .form-control:not(.form-select):hover[b-5ntgunhjqm],
    .pm-pricing-inputs input.pm-input:hover[b-5ntgunhjqm],
    .pm-pricing-inputs input[type="number"]:hover[b-5ntgunhjqm],
    .pm-pricing-inputs input[type="text"]:hover[b-5ntgunhjqm] {
        border-color: rgba(0,40,85,0.32) !important;
        border-left-color: #F1B828 !important;
        background: linear-gradient(160deg, #f0f6ff 0%, #e5eef9 100%) !important;
        box-shadow: 0 12px 28px rgba(0,40,85,0.08), inset 0 1px 0 rgba(255,255,255,0.95) !important;
    }

    .pm-pricing-inputs .form-control:not(.form-select):focus[b-5ntgunhjqm],
    .pm-pricing-inputs input.pm-input:focus[b-5ntgunhjqm],
    .pm-pricing-inputs input[type="number"]:focus[b-5ntgunhjqm],
    .pm-pricing-inputs input[type="text"]:focus[b-5ntgunhjqm] {
        border-left-color: #F1B828 !important;
        border-color: rgba(241,184,40,0.60) !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.18), 0 12px 28px rgba(0,40,85,0.07), inset 0 1px 0 rgba(255,255,255,0.95) !important;
        background: #ffffff !important;
    }

/* Light mode — pricing settings inputs */
.pm-pricing-settings-grid .form-control:not(.form-select)[b-5ntgunhjqm],
.pm-pricing-settings-grid input.pm-input[b-5ntgunhjqm],
.pm-pricing-settings-grid input[type="number"][b-5ntgunhjqm],
.pm-pricing-settings-grid input[type="text"][b-5ntgunhjqm] {
    min-height: 48px !important;
    padding: 0.8rem 0.95rem 0.8rem 1.1rem !important;
    border: 1.5px solid rgba(0,40,85,0.22) !important;
    border-left: 3.5px solid rgba(0,40,85,0.32) !important;
    background: linear-gradient(160deg, #f7faff 0%, #eef4fb 100%) !important;
    box-shadow: 0 10px 24px rgba(0,40,85,0.05), inset 0 1px 0 rgba(255,255,255,0.90) !important;
    border-radius: 12px !important;
    color: var(--input-text) !important;
}

    .pm-pricing-settings-grid .form-control:not(.form-select):hover[b-5ntgunhjqm],
    .pm-pricing-settings-grid input.pm-input:hover[b-5ntgunhjqm],
    .pm-pricing-settings-grid input[type="number"]:hover[b-5ntgunhjqm],
    .pm-pricing-settings-grid input[type="text"]:hover[b-5ntgunhjqm] {
        border-color: rgba(0,40,85,0.32) !important;
        border-left-color: #F1B828 !important;
        background: linear-gradient(160deg, #f0f6ff 0%, #e5eef9 100%) !important;
        box-shadow: 0 12px 28px rgba(0,40,85,0.08), inset 0 1px 0 rgba(255,255,255,0.95) !important;
    }

    .pm-pricing-settings-grid .form-control:not(.form-select):focus[b-5ntgunhjqm],
    .pm-pricing-settings-grid input.pm-input:focus[b-5ntgunhjqm],
    .pm-pricing-settings-grid input[type="number"]:focus[b-5ntgunhjqm],
    .pm-pricing-settings-grid input[type="text"]:focus[b-5ntgunhjqm] {
        border-left-color: #F1B828 !important;
        border-color: rgba(241,184,40,0.60) !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.18), 0 12px 28px rgba(0,40,85,0.07), inset 0 1px 0 rgba(255,255,255,0.95) !important;
        background: #ffffff !important;
    }

/* Dark mode — pricing test inputs */
[data-bs-theme="dark"] .pm-pricing-inputs .form-control:not(.form-select)[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-inputs input.pm-input[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-inputs input[type="number"][b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-inputs input[type="text"][b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-inputs .form-control:not(.form-select)[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-inputs input.pm-input[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-inputs input[type="number"][b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-inputs input[type="text"][b-5ntgunhjqm] {
    border: 1.5px solid rgba(255,255,255,0.14) !important;
    border-left: 3.5px solid rgba(241,184,40,0.40) !important;
    background: linear-gradient(160deg, rgba(255,255,255,0.09) 0%, rgba(255,255,255,0.05) 100%) !important;
    box-shadow: 0 12px 28px rgba(0,0,0,0.24), inset 0 1px 0 rgba(255,255,255,0.05) !important;
}

    [data-bs-theme="dark"] .pm-pricing-inputs .form-control:not(.form-select):hover[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-pricing-inputs input[type="number"]:hover[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-pricing-inputs input[type="text"]:hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-inputs .form-control:not(.form-select):hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-inputs input[type="number"]:hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-inputs input[type="text"]:hover[b-5ntgunhjqm] {
        border-left-color: rgba(241,184,40,0.65) !important;
        background: linear-gradient(160deg, rgba(255,255,255,0.12) 0%, rgba(255,255,255,0.07) 100%) !important;
    }

    [data-bs-theme="dark"] .pm-pricing-inputs .form-control:not(.form-select):focus[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-pricing-inputs input[type="number"]:focus[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-pricing-inputs input[type="text"]:focus[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-inputs .form-control:not(.form-select):focus[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-inputs input[type="number"]:focus[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-inputs input[type="text"]:focus[b-5ntgunhjqm] {
        border-left-color: #F1B828 !important;
        border-color: rgba(241,184,40,0.55) !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.14), 0 12px 28px rgba(0,0,0,0.28), inset 0 1px 0 rgba(255,255,255,0.04) !important;
        background: rgba(255,255,255,0.10) !important;
    }

/* Dark mode — pricing settings inputs */
[data-bs-theme="dark"] .pm-pricing-settings-grid .form-control:not(.form-select)[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-settings-grid input.pm-input[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-settings-grid input[type="number"][b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-settings-grid input[type="text"][b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-settings-grid .form-control:not(.form-select)[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-settings-grid input.pm-input[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-settings-grid input[type="number"][b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-settings-grid input[type="text"][b-5ntgunhjqm] {
    border: 1.5px solid rgba(255,255,255,0.14) !important;
    border-left: 3.5px solid rgba(241,184,40,0.40) !important;
    background: linear-gradient(160deg, rgba(255,255,255,0.09) 0%, rgba(255,255,255,0.05) 100%) !important;
    box-shadow: 0 12px 28px rgba(0,0,0,0.24), inset 0 1px 0 rgba(255,255,255,0.05) !important;
}

    [data-bs-theme="dark"] .pm-pricing-settings-grid .form-control:not(.form-select):hover[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-pricing-settings-grid input[type="number"]:hover[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-pricing-settings-grid input[type="text"]:hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-settings-grid .form-control:not(.form-select):hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-settings-grid input[type="number"]:hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-settings-grid input[type="text"]:hover[b-5ntgunhjqm] {
        border-left-color: rgba(241,184,40,0.65) !important;
        background: linear-gradient(160deg, rgba(255,255,255,0.12) 0%, rgba(255,255,255,0.07) 100%) !important;
    }

    [data-bs-theme="dark"] .pm-pricing-settings-grid .form-control:not(.form-select):focus[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-pricing-settings-grid input[type="number"]:focus[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-pricing-settings-grid input[type="text"]:focus[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-settings-grid .form-control:not(.form-select):focus[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-settings-grid input[type="number"]:focus[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-settings-grid input[type="text"]:focus[b-5ntgunhjqm] {
        border-left-color: #F1B828 !important;
        border-color: rgba(241,184,40,0.55) !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.14), 0 12px 28px rgba(0,0,0,0.28), inset 0 1px 0 rgba(255,255,255,0.04) !important;
        background: rgba(255,255,255,0.10) !important;
    }

/* Dropdowns (selects) in pricing areas keep the original right-chevron look — no left border accent */
.pm-pricing-inputs .form-select[b-5ntgunhjqm],
.pm-pricing-inputs select.pm-select[b-5ntgunhjqm],
.pm-pricing-settings-grid .form-select[b-5ntgunhjqm],
.pm-pricing-settings-grid select.pm-select[b-5ntgunhjqm] {
    border-left-width: 1.5px !important; /* override — selects stay uniform border */
}


/* ═══════════════════════════════════════════════════════════════════
   35. COMPREHENSIVE REDESIGN — 2026 POLISH PASS
   Fixes: modal transparency, button remake (light+dark), plus sign,
   table headers, input vs dropdown distinction, panel config cleanup
   ═══════════════════════════════════════════════════════════════════ */


/* ─────────────────────────────────────────────────────────────────
   A. MODAL BACKGROUNDS — Nuclear fix: nothing is transparent
   ───────────────────────────────────────────────────────────────── */

/* The shell is a layout wrapper only. All dimming on backdrop. */
.pm-modal-shell[b-5ntgunhjqm] {
    background: transparent !important;
    isolation: isolate;
    z-index: 2200 !important;
}

/* Backdrop: single, solid, reliable dark overlay */
.pm-modal-backdrop[b-5ntgunhjqm],
.mat-detail-modal-backdrop[b-5ntgunhjqm],
.sheet-opt-modal-backdrop[b-5ntgunhjqm],
.nq-modal-overlay[b-5ntgunhjqm] {
    position: fixed !important;
    inset: 0 !important;
    background: rgba(5, 18, 45, 0.88) !important;
    -webkit-backdrop-filter: blur(5px) saturate(0.80);
    backdrop-filter: blur(5px) saturate(0.80);
    opacity: 1 !important;
    z-index: 2199 !important;
}

@supports not (backdrop-filter: blur(1px)) {
    .pm-modal-backdrop[b-5ntgunhjqm],
    .mat-detail-modal-backdrop[b-5ntgunhjqm],
    .sheet-opt-modal-backdrop[b-5ntgunhjqm],
    .nq-modal-overlay[b-5ntgunhjqm] {
        background: rgba(3, 12, 30, 0.96) !important;
    }
}

[data-bs-theme="dark"] .pm-modal-backdrop[b-5ntgunhjqm],
[data-bs-theme="dark"] .mat-detail-modal-backdrop[b-5ntgunhjqm],
[data-bs-theme="dark"] .sheet-opt-modal-backdrop[b-5ntgunhjqm],
[data-bs-theme="dark"] .nq-modal-overlay[b-5ntgunhjqm],
[data-theme="dark"] .pm-modal-backdrop[b-5ntgunhjqm],
[data-theme="dark"] .mat-detail-modal-backdrop[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-modal-backdrop[b-5ntgunhjqm],
[data-theme="dark"] .nq-modal-overlay[b-5ntgunhjqm] {
    background: rgba(0, 3, 10, 0.93) !important;
}

/* Dialog cards: always fully opaque solid white/dark backgrounds */
.pm-modal-dialog[b-5ntgunhjqm],
.mat-detail-modal-card[b-5ntgunhjqm],
.sheet-opt-modal-card[b-5ntgunhjqm],
.nq-modal-card[b-5ntgunhjqm] {
    position: relative !important;
    z-index: 1 !important;
    background: var(--modal-bg) !important;
    opacity: 1 !important;
    isolation: isolate;
}

/* Every interior section of the modal: solid background */
.pm-modal-body[b-5ntgunhjqm],
.pm-modal-footer[b-5ntgunhjqm],
.mat-detail-modal-body[b-5ntgunhjqm],
.sheet-opt-modal-body[b-5ntgunhjqm],
.nq-modal-body[b-5ntgunhjqm],
.nq-modal-footer[b-5ntgunhjqm],
.nq-modal-header[b-5ntgunhjqm] {
    background: var(--modal-bg) !important;
    opacity: 1 !important;
}

/* Light mode: true white */
:root .pm-modal-dialog[b-5ntgunhjqm],
:root .mat-detail-modal-card[b-5ntgunhjqm],
:root .sheet-opt-modal-card[b-5ntgunhjqm],
:root .nq-modal-card[b-5ntgunhjqm],
[data-theme="light"] .pm-modal-dialog[b-5ntgunhjqm],
[data-theme="light"] .mat-detail-modal-card[b-5ntgunhjqm],
[data-theme="light"] .sheet-opt-modal-card[b-5ntgunhjqm],
[data-theme="light"] .nq-modal-card[b-5ntgunhjqm] {
    background: #ffffff !important;
}

:root .pm-modal-body[b-5ntgunhjqm],
:root .pm-modal-footer[b-5ntgunhjqm],
:root .mat-detail-modal-body[b-5ntgunhjqm],
:root .sheet-opt-modal-body[b-5ntgunhjqm],
:root .nq-modal-body[b-5ntgunhjqm],
:root .nq-modal-footer[b-5ntgunhjqm],
:root .nq-modal-header[b-5ntgunhjqm],
[data-theme="light"] .pm-modal-body[b-5ntgunhjqm],
[data-theme="light"] .pm-modal-footer[b-5ntgunhjqm],
[data-theme="light"] .mat-detail-modal-body[b-5ntgunhjqm],
[data-theme="light"] .sheet-opt-modal-body[b-5ntgunhjqm],
[data-theme="light"] .nq-modal-body[b-5ntgunhjqm],
[data-theme="light"] .nq-modal-footer[b-5ntgunhjqm],
[data-theme="light"] .nq-modal-header[b-5ntgunhjqm] {
    background: #ffffff !important;
}

:root .pm-modal-footer[b-5ntgunhjqm],
[data-theme="light"] .pm-modal-footer[b-5ntgunhjqm] {
    background: #f4f7fc !important;
}

/* Dark mode modal: deep solid dark */
[data-bs-theme="dark"] .pm-modal-dialog[b-5ntgunhjqm],
[data-bs-theme="dark"] .mat-detail-modal-card[b-5ntgunhjqm],
[data-bs-theme="dark"] .sheet-opt-modal-card[b-5ntgunhjqm],
[data-bs-theme="dark"] .nq-modal-card[b-5ntgunhjqm],
[data-theme="dark"] .pm-modal-dialog[b-5ntgunhjqm],
[data-theme="dark"] .mat-detail-modal-card[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-modal-card[b-5ntgunhjqm],
[data-theme="dark"] .nq-modal-card[b-5ntgunhjqm] {
    background: #101828 !important;
}

[data-bs-theme="dark"] .pm-modal-body[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-modal-footer[b-5ntgunhjqm],
[data-bs-theme="dark"] .mat-detail-modal-body[b-5ntgunhjqm],
[data-bs-theme="dark"] .sheet-opt-modal-body[b-5ntgunhjqm],
[data-bs-theme="dark"] .nq-modal-body[b-5ntgunhjqm],
[data-bs-theme="dark"] .nq-modal-footer[b-5ntgunhjqm],
[data-bs-theme="dark"] .nq-modal-header[b-5ntgunhjqm],
[data-theme="dark"] .pm-modal-body[b-5ntgunhjqm],
[data-theme="dark"] .pm-modal-footer[b-5ntgunhjqm],
[data-theme="dark"] .mat-detail-modal-body[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-modal-body[b-5ntgunhjqm],
[data-theme="dark"] .nq-modal-body[b-5ntgunhjqm],
[data-theme="dark"] .nq-modal-footer[b-5ntgunhjqm],
[data-theme="dark"] .nq-modal-header[b-5ntgunhjqm] {
    background: #101828 !important;
}

[data-bs-theme="dark"] .pm-modal-footer[b-5ntgunhjqm],
[data-theme="dark"] .pm-modal-footer[b-5ntgunhjqm] {
    background: #0d1520 !important;
}


/* ─────────────────────────────────────────────────────────────────
   B. BUTTON REDESIGN — Complete remake, light + dark
   ───────────────────────────────────────────────────────────────── */

/* === BASE BUTTON RESET === */
.pm-btn[b-5ntgunhjqm],
.btn[b-5ntgunhjqm],
.pm-action-btn[b-5ntgunhjqm],
.nq-btn-ok[b-5ntgunhjqm] {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    font-family: 'din-2014','DIN 2014','DIN Pro','DM Sans',system-ui,sans-serif;
    font-weight: 800;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    cursor: pointer;
    white-space: nowrap;
    line-height: 1;
    text-decoration: none;
    border-radius: 10px !important;
    overflow: visible !important; /* Don't clip glow */
    transition: transform 0.14s ease, box-shadow 0.16s ease, filter 0.14s ease, background 0.14s ease !important;
}

    .pm-btn:active:not(:disabled)[b-5ntgunhjqm],
    .btn:active:not(:disabled)[b-5ntgunhjqm],
    .pm-action-btn:active:not(:disabled)[b-5ntgunhjqm] {
        transform: translateY(1px) scale(0.98) !important;
    }

    .pm-btn:disabled[b-5ntgunhjqm],
    .btn:disabled[b-5ntgunhjqm] {
        opacity: 0.40;
        cursor: not-allowed;
        pointer-events: none;
    }

/* === PRIMARY BUTTON — LIGHT MODE === */
/* Rich navy with subtle highlight stripe — reads clearly on all light backgrounds */
:root .pm-btn--primary[b-5ntgunhjqm],
:root .btn-primary[b-5ntgunhjqm],
:root .nq-btn-ok[b-5ntgunhjqm],
[data-theme="light"] .pm-btn--primary[b-5ntgunhjqm],
[data-theme="light"] .btn-primary[b-5ntgunhjqm],
[data-theme="light"] .nq-btn-ok[b-5ntgunhjqm] {
    background: linear-gradient(170deg, #0e4080 0%, #002855 50%, #001535 100%) !important;
    color: #ffffff !important;
    border: 1.5px solid rgba(0, 10, 30, 0.35) !important;
    box-shadow: 0 1px 0 rgba(255,255,255,0.10) inset, 0 -1px 0 rgba(0,0,0,0.24) inset, 0 2px 0 rgba(0,0,0,0.22), 0 6px 16px rgba(0,28,72,0.28) !important;
    text-shadow: 0 1px 2px rgba(0,0,0,0.30);
    min-height: 40px;
    padding: 0.52rem 1.10rem;
}

    :root .pm-btn--primary:hover:not(:disabled)[b-5ntgunhjqm],
    :root .btn-primary:hover:not(:disabled)[b-5ntgunhjqm],
    :root .nq-btn-ok:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="light"] .pm-btn--primary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="light"] .btn-primary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="light"] .nq-btn-ok:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(170deg, #1050a0 0%, #003370 50%, #001e50 100%) !important;
        box-shadow: 0 1px 0 rgba(255,255,255,0.12) inset, 0 -1px 0 rgba(0,0,0,0.28) inset, 0 2px 0 rgba(0,0,0,0.26), 0 8px 22px rgba(0,28,72,0.36) !important;
        transform: translateY(-2px) !important;
    }

/* === PRIMARY BUTTON — DARK MODE === */
/* Warm gold gradient, dark text — the gold pops on dark backgrounds */
[data-bs-theme="dark"] .pm-btn--primary[b-5ntgunhjqm],
[data-bs-theme="dark"] .btn-primary[b-5ntgunhjqm],
[data-bs-theme="dark"] .nq-btn-ok[b-5ntgunhjqm],
[data-theme="dark"] .pm-btn--primary[b-5ntgunhjqm],
[data-theme="dark"] .btn-primary[b-5ntgunhjqm],
[data-theme="dark"] .nq-btn-ok[b-5ntgunhjqm] {
    background: linear-gradient(160deg, #ffd056 0%, #f1b828 55%, #d4960e 100%) !important;
    color: #001535 !important;
    border: 1.5px solid rgba(180,130,0,0.40) !important;
    box-shadow: 0 1px 0 rgba(255,255,255,0.30) inset, 0 -1px 0 rgba(0,0,0,0.18) inset, 0 2px 0 rgba(0,0,0,0.30), 0 6px 20px rgba(241,184,40,0.28) !important;
    text-shadow: 0 1px 1px rgba(255,255,255,0.14);
}

    [data-bs-theme="dark"] .pm-btn--primary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-bs-theme="dark"] .btn-primary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-bs-theme="dark"] .nq-btn-ok:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .pm-btn--primary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .btn-primary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .nq-btn-ok:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(160deg, #ffda70 0%, #f8c43c 55%, #dcab24 100%) !important;
        box-shadow: 0 1px 0 rgba(255,255,255,0.36) inset, 0 -1px 0 rgba(0,0,0,0.20) inset, 0 2px 0 rgba(0,0,0,0.34), 0 10px 28px rgba(241,184,40,0.38) !important;
        transform: translateY(-2px) !important;
    }

/* === GHOST / SECONDARY BUTTON — LIGHT MODE === */
/* Crisp white pill with strong navy border — stands out against light pages */
:root .pm-btn--ghost[b-5ntgunhjqm],
:root .btn-secondary[b-5ntgunhjqm],
:root .btn-outline-secondary[b-5ntgunhjqm],
[data-theme="light"] .pm-btn--ghost[b-5ntgunhjqm],
[data-theme="light"] .btn-secondary[b-5ntgunhjqm],
[data-theme="light"] .btn-outline-secondary[b-5ntgunhjqm] {
    background: linear-gradient(170deg, #ffffff 0%, #edf2fa 100%) !important;
    border: 1.5px solid rgba(0, 40, 85, 0.35) !important;
    color: #002855 !important;
    box-shadow: 0 1px 0 rgba(255,255,255,1.00) inset, 0 -1px 0 rgba(0,0,0,0.08) inset, 0 1px 0 rgba(0,0,0,0.10), 0 3px 8px rgba(0,30,72,0.10) !important;
    text-shadow: none;
}

    :root .pm-btn--ghost:hover:not(:disabled)[b-5ntgunhjqm],
    :root .btn-secondary:hover:not(:disabled)[b-5ntgunhjqm],
    :root .btn-outline-secondary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="light"] .pm-btn--ghost:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="light"] .btn-secondary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="light"] .btn-outline-secondary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(170deg, #e6eef9 0%, #d6e4f4 100%) !important;
        border-color: rgba(0, 40, 85, 0.50) !important;
        color: #001e42 !important;
        box-shadow: 0 1px 0 rgba(255,255,255,0.90) inset, 0 -1px 0 rgba(0,0,0,0.10) inset, 0 2px 0 rgba(0,0,0,0.12), 0 5px 12px rgba(0,30,72,0.14) !important;
        transform: translateY(-2px) !important;
    }

/* === GHOST / SECONDARY BUTTON — DARK MODE === */
[data-bs-theme="dark"] .pm-btn--ghost[b-5ntgunhjqm],
[data-bs-theme="dark"] .btn-secondary[b-5ntgunhjqm],
[data-bs-theme="dark"] .btn-outline-secondary[b-5ntgunhjqm],
[data-theme="dark"] .pm-btn--ghost[b-5ntgunhjqm],
[data-theme="dark"] .btn-secondary[b-5ntgunhjqm],
[data-theme="dark"] .btn-outline-secondary[b-5ntgunhjqm] {
    background: linear-gradient(170deg, rgba(255,255,255,0.10) 0%, rgba(255,255,255,0.05) 100%) !important;
    border: 1.5px solid rgba(255,255,255,0.16) !important;
    color: rgba(255,255,255,0.88) !important;
    box-shadow: 0 1px 0 rgba(255,255,255,0.08) inset, 0 -1px 0 rgba(0,0,0,0.22) inset, 0 2px 6px rgba(0,0,0,0.28) !important;
}

    [data-bs-theme="dark"] .pm-btn--ghost:hover:not(:disabled)[b-5ntgunhjqm],
    [data-bs-theme="dark"] .btn-secondary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-bs-theme="dark"] .btn-outline-secondary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .pm-btn--ghost:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .btn-secondary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .btn-outline-secondary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(170deg, rgba(255,255,255,0.15) 0%, rgba(255,255,255,0.09) 100%) !important;
        border-color: rgba(255,255,255,0.24) !important;
        color: #ffffff !important;
        transform: translateY(-2px) !important;
    }

/* === OUTLINE PRIMARY — LIGHT === */
:root .btn-outline-primary[b-5ntgunhjqm],
[data-theme="light"] .btn-outline-primary[b-5ntgunhjqm] {
    background: linear-gradient(170deg, rgba(0,40,85,0.04) 0%, rgba(0,40,85,0.09) 100%) !important;
    border: 1.5px solid rgba(0, 40, 85, 0.42) !important;
    color: #002855 !important;
    box-shadow: 0 1px 0 rgba(255,255,255,0.80) inset, 0 2px 6px rgba(0,30,72,0.07) !important;
}

    :root .btn-outline-primary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="light"] .btn-outline-primary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(170deg, #0e4080 0%, #002855 100%) !important;
        border-color: transparent !important;
        color: #ffffff !important;
        box-shadow: 0 2px 0 rgba(0,0,0,0.20), 0 6px 16px rgba(0,28,72,0.28) !important;
        transform: translateY(-2px) !important;
    }

/* === OUTLINE PRIMARY — DARK === */
[data-bs-theme="dark"] .btn-outline-primary[b-5ntgunhjqm],
[data-theme="dark"] .btn-outline-primary[b-5ntgunhjqm] {
    background: linear-gradient(170deg, rgba(255,255,255,0.05) 0%, rgba(255,255,255,0.02) 100%) !important;
    border: 1.5px solid rgba(241,184,40,0.38) !important;
    color: #f5d274 !important;
}

    [data-bs-theme="dark"] .btn-outline-primary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .btn-outline-primary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(160deg, #ffd056 0%, #f1b828 100%) !important;
        border-color: transparent !important;
        color: #001535 !important;
        transform: translateY(-2px) !important;
    }

/* === OUTLINE DANGER === */
:root .btn-outline-danger[b-5ntgunhjqm],
[data-theme="light"] .btn-outline-danger[b-5ntgunhjqm] {
    background: linear-gradient(170deg, rgba(200,28,28,0.04) 0%, rgba(200,28,28,0.08) 100%) !important;
    border: 1.5px solid rgba(200, 28, 28, 0.42) !important;
    color: #a51c1c !important;
    box-shadow: 0 1px 0 rgba(255,255,255,0.75) inset, 0 2px 6px rgba(180,20,20,0.06) !important;
}

    :root .btn-outline-danger:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="light"] .btn-outline-danger:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(170deg, #c01c1c 0%, #8b1010 100%) !important;
        border-color: transparent !important;
        color: #ffffff !important;
        box-shadow: 0 2px 0 rgba(0,0,0,0.20), 0 6px 16px rgba(160,20,20,0.28) !important;
        transform: translateY(-2px) !important;
    }

[data-bs-theme="dark"] .btn-outline-danger[b-5ntgunhjqm],
[data-theme="dark"] .btn-outline-danger[b-5ntgunhjqm] {
    background: linear-gradient(170deg, rgba(248,113,113,0.06) 0%, rgba(248,113,113,0.03) 100%) !important;
    border: 1.5px solid rgba(248,113,113,0.36) !important;
    color: #ffb4bc !important;
}

    [data-bs-theme="dark"] .btn-outline-danger:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .btn-outline-danger:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(170deg, #d93c4a 0%, #a82232 100%) !important;
        border-color: transparent !important;
        color: #fff !important;
        transform: translateY(-2px) !important;
    }

/* === OUTLINE INFO === */
:root .btn-outline-info[b-5ntgunhjqm],
[data-theme="light"] .btn-outline-info[b-5ntgunhjqm] {
    background: linear-gradient(170deg, rgba(0,70,180,0.04) 0%, rgba(0,70,180,0.08) 100%) !important;
    border: 1.5px solid rgba(0,70,180,0.40) !important;
    color: #0042ad !important;
    box-shadow: 0 1px 0 rgba(255,255,255,0.75) inset !important;
}

    :root .btn-outline-info:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="light"] .btn-outline-info:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(170deg, #1d6fd7 0%, #0d4c93 100%) !important;
        border-color: transparent !important;
        color: #fff !important;
        transform: translateY(-2px) !important;
    }

[data-bs-theme="dark"] .btn-outline-info[b-5ntgunhjqm],
[data-theme="dark"] .btn-outline-info[b-5ntgunhjqm] {
    border-color: rgba(96,165,250,0.36) !important;
    color: #9fd2ff !important;
}

/* === SUCCESS BUTTON === */
.btn-success[b-5ntgunhjqm] {
    background: linear-gradient(160deg, #23a060 0%, #1a7a4a 55%, #13593a 100%) !important;
    border: 1.5px solid rgba(10,80,42,0.36) !important;
    color: #ffffff !important;
    box-shadow: 0 1px 0 rgba(255,255,255,0.18) inset, 0 -1px 0 rgba(0,0,0,0.22) inset, 0 2px 0 rgba(0,0,0,0.20), 0 5px 14px rgba(20,110,60,0.24) !important;
}

    .btn-success:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(160deg, #27b46c 0%, #1f9058 55%, #165e42 100%) !important;
        transform: translateY(-2px) !important;
    }

/* === ICON BUTTONS LIGHT MODE === */
:root .pm-icon-btn--edit[b-5ntgunhjqm],
[data-theme="light"] .pm-icon-btn--edit[b-5ntgunhjqm] {
    background: linear-gradient(160deg, #ffffff 0%, #edf2fa 100%);
    border: 1.5px solid rgba(0, 40, 85, 0.32);
    color: #002855;
    box-shadow: 0 1px 0 rgba(255,255,255,1) inset, 0 2px 6px rgba(0,30,72,0.08);
}

    :root .pm-icon-btn--edit:hover[b-5ntgunhjqm],
    [data-theme="light"] .pm-icon-btn--edit:hover[b-5ntgunhjqm] {
        background: linear-gradient(160deg, #dce8f8 0%, #c8d9f0 100%);
        border-color: rgba(0,40,85,0.50);
        transform: translateY(-2px);
    }

/* === MODAL CLOSE BUTTON === */
.pm-modal-close[b-5ntgunhjqm] {
    background: linear-gradient(180deg, rgba(255,255,255,0.20) 0%, rgba(255,255,255,0.08) 100%) !important;
    border: 1.5px solid rgba(255,255,255,0.22) !important;
    color: rgba(255,255,255,0.90) !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.16) !important;
    min-width: 34px !important;
    min-height: 34px !important;
    border-radius: 8px !important;
}

    .pm-modal-close:hover[b-5ntgunhjqm] {
        background: linear-gradient(135deg, #e53e3e 0%, #9b1c1c 100%) !important;
        border-color: rgba(200,40,40,0.60) !important;
        color: #fff !important;
        transform: translateY(-1px) !important;
    }


/* === PLUS ICON — BOLD, WEIGHTY === */
.pm-btn .bi-plus-lg[b-5ntgunhjqm],
.pm-btn .bi-plus[b-5ntgunhjqm],
.btn .bi-plus-lg[b-5ntgunhjqm],
.btn .bi-plus[b-5ntgunhjqm],
.pm-action-btn .bi-plus-lg[b-5ntgunhjqm],
.pm-action-btn .bi-plus[b-5ntgunhjqm] {
    font-size: 1.15em !important;
    font-weight: 900 !important;
    -webkit-text-stroke: 1.2px currentColor !important;
    filter: drop-shadow(0 0 0px currentColor) !important;
    line-height: 1 !important;
    display: inline-block;
    transform: scaleX(1.05);
}

/* On navy primary buttons, the plus stays bright white */
:root .pm-btn--primary .bi-plus-lg[b-5ntgunhjqm],
:root .pm-btn--primary .bi-plus[b-5ntgunhjqm],
:root .btn-primary .bi-plus-lg[b-5ntgunhjqm],
:root .btn-primary .bi-plus[b-5ntgunhjqm],
[data-theme="light"] .pm-btn--primary .bi-plus-lg[b-5ntgunhjqm],
[data-theme="light"] .pm-btn--primary .bi-plus[b-5ntgunhjqm],
[data-theme="light"] .btn-primary .bi-plus-lg[b-5ntgunhjqm],
[data-theme="light"] .btn-primary .bi-plus[b-5ntgunhjqm] {
    -webkit-text-stroke: 1.0px #ffffff !important;
    color: #ffffff !important;
}

/* On gold primary buttons in dark mode, plus is dark navy */
[data-bs-theme="dark"] .pm-btn--primary .bi-plus-lg[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-btn--primary .bi-plus[b-5ntgunhjqm],
[data-bs-theme="dark"] .btn-primary .bi-plus-lg[b-5ntgunhjqm],
[data-bs-theme="dark"] .btn-primary .bi-plus[b-5ntgunhjqm],
[data-theme="dark"] .pm-btn--primary .bi-plus-lg[b-5ntgunhjqm],
[data-theme="dark"] .pm-btn--primary .bi-plus[b-5ntgunhjqm],
[data-theme="dark"] .btn-primary .bi-plus-lg[b-5ntgunhjqm],
[data-theme="dark"] .btn-primary .bi-plus[b-5ntgunhjqm] {
    -webkit-text-stroke: 1.0px #001535 !important;
    color: #001535 !important;
}


/* ─────────────────────────────────────────────────────────────────
   C. TABLE HEADERS — Light mode: match page header, no weird box
   ───────────────────────────────────────────────────────────────── */

/* Light mode: rich navy gradient matching the app header */
:root .table thead th[b-5ntgunhjqm],
:root .pm-table thead th[b-5ntgunhjqm],
[data-theme="light"] .table thead th[b-5ntgunhjqm],
[data-theme="light"] .pm-table thead th[b-5ntgunhjqm] {
    background: linear-gradient(135deg, #002855 0%, #0f3a73 58%, #184c90 100%) !important;
    color: #ffffff !important;
    border-bottom: 2px solid #F1B828 !important;
    border-top: none !important;
    font-size: 0.68rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 0.10em;
    white-space: nowrap;
    padding: 10px 14px;
    box-shadow: none;
}

    /* Remove any ::before / ::after pseudo-element boxes on th */
    :root .table thead th[b-5ntgunhjqm]::before,
    :root .pm-table thead th[b-5ntgunhjqm]::before,
    :root .table thead th[b-5ntgunhjqm]::after,
    :root .pm-table thead th[b-5ntgunhjqm]::after,
    [data-theme="light"] .table thead th[b-5ntgunhjqm]::before,
    [data-theme="light"] .pm-table thead th[b-5ntgunhjqm]::before,
    [data-theme="light"] .table thead th[b-5ntgunhjqm]::after,
    [data-theme="light"] .pm-table thead th[b-5ntgunhjqm]::after {
        display: none !important;
        content: none !important;
    }

/* Card heads: same treatment */
:root .pm-card-head[b-5ntgunhjqm],
:root .pricing-summary-card__head[b-5ntgunhjqm],
:root .pricing-breakdown-card__header[b-5ntgunhjqm],
:root .sheet-opt-card__header[b-5ntgunhjqm],
:root .pricing-profile-trace-card__header[b-5ntgunhjqm],
:root .pm-modal-header[b-5ntgunhjqm],
:root .mat-detail-modal-header[b-5ntgunhjqm],
:root .sheet-opt-modal-header[b-5ntgunhjqm],
[data-theme="light"] .pm-card-head[b-5ntgunhjqm],
[data-theme="light"] .pricing-summary-card__head[b-5ntgunhjqm],
[data-theme="light"] .pricing-breakdown-card__header[b-5ntgunhjqm],
[data-theme="light"] .sheet-opt-card__header[b-5ntgunhjqm],
[data-theme="light"] .pricing-profile-trace-card__header[b-5ntgunhjqm],
[data-theme="light"] .pm-modal-header[b-5ntgunhjqm],
[data-theme="light"] .mat-detail-modal-header[b-5ntgunhjqm],
[data-theme="light"] .sheet-opt-modal-header[b-5ntgunhjqm] {
    background: linear-gradient(135deg, #002855 0%, #0f3a73 60%, #184c90 100%) !important;
    color: #ffffff;
}

/* Dark mode: stays as existing deep dark */
[data-bs-theme="dark"] .pm-card-head[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-summary-card__head[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-breakdown-card__header[b-5ntgunhjqm],
[data-bs-theme="dark"] .sheet-opt-card__header[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-profile-trace-card__header[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-modal-header[b-5ntgunhjqm],
[data-bs-theme="dark"] .mat-detail-modal-header[b-5ntgunhjqm],
[data-bs-theme="dark"] .sheet-opt-modal-header[b-5ntgunhjqm],
[data-theme="dark"] .pm-card-head[b-5ntgunhjqm],
[data-theme="dark"] .pricing-summary-card__head[b-5ntgunhjqm],
[data-theme="dark"] .pricing-breakdown-card__header[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-card__header[b-5ntgunhjqm],
[data-theme="dark"] .pricing-profile-trace-card__header[b-5ntgunhjqm],
[data-theme="dark"] .pm-modal-header[b-5ntgunhjqm],
[data-theme="dark"] .mat-detail-modal-header[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-modal-header[b-5ntgunhjqm] {
    background: linear-gradient(135deg, #0b1322 0%, #16233b 100%) !important;
}

/* Pricing cost table headers light mode */
:root .pricing-cost-table thead th[b-5ntgunhjqm],
[data-theme="light"] .pricing-cost-table thead th[b-5ntgunhjqm] {
    background: linear-gradient(135deg, #002855 0%, #0f3a73 58%, #184c90 100%) !important;
    color: #ffffff !important;
}

/* Labor table headers light mode */
:root .pm-labor-table thead th[b-5ntgunhjqm],
[data-theme="light"] .pm-labor-table thead th[b-5ntgunhjqm] {
    background: linear-gradient(135deg, #002855 0%, #0f3a73 58%, #184c90 100%) !important;
    color: #ffffff !important;
}

/* Thickness override table light mode */
:root .thickness-override-table thead th[b-5ntgunhjqm],
[data-theme="light"] .thickness-override-table thead th[b-5ntgunhjqm] {
    background: linear-gradient(135deg, #002855 0%, #0f3a73 58%, #184c90 100%) !important;
    color: #ffffff !important;
}


/* ─────────────────────────────────────────────────────────────────
   D. PRICING INPUTS — Same shell as dropdowns, typeable accent
      Applies to: .pm-pricing-inputs and .pm-pricing-settings-grid
   ───────────────────────────────────────────────────────────────── */

/* === LIGHT MODE — Typeable inputs === */
/* Same height/radius/shadow as the dropdowns, but:
   - slightly warmer tinted background (vs pure white of dropdowns)
   - 3px left accent stripe = "you can type here" visual cue
   - cursor indicator baked into placeholder text color
*/
:root .pm-pricing-inputs input[type="text"][b-5ntgunhjqm],
:root .pm-pricing-inputs input[type="number"][b-5ntgunhjqm],
:root .pm-pricing-inputs input[type="email"][b-5ntgunhjqm],
:root .pm-pricing-inputs .form-control:not(select):not(.form-select)[b-5ntgunhjqm],
:root .pm-pricing-settings-grid input[type="text"][b-5ntgunhjqm],
:root .pm-pricing-settings-grid input[type="number"][b-5ntgunhjqm],
:root .pm-pricing-settings-grid input[type="email"][b-5ntgunhjqm],
:root .pm-pricing-settings-grid .form-control:not(select):not(.form-select)[b-5ntgunhjqm],
[data-theme="light"] .pm-pricing-inputs input[type="text"][b-5ntgunhjqm],
[data-theme="light"] .pm-pricing-inputs input[type="number"][b-5ntgunhjqm],
[data-theme="light"] .pm-pricing-inputs input[type="email"][b-5ntgunhjqm],
[data-theme="light"] .pm-pricing-inputs .form-control:not(select):not(.form-select)[b-5ntgunhjqm],
[data-theme="light"] .pm-pricing-settings-grid input[type="text"][b-5ntgunhjqm],
[data-theme="light"] .pm-pricing-settings-grid input[type="number"][b-5ntgunhjqm],
[data-theme="light"] .pm-pricing-settings-grid input[type="email"][b-5ntgunhjqm],
[data-theme="light"] .pm-pricing-settings-grid .form-control:not(select):not(.form-select)[b-5ntgunhjqm] {
    min-height: 48px !important;
    padding: 0.8rem 0.95rem 0.8rem 0.85rem !important;
    border: 1.5px solid rgba(0,40,85,0.22) !important;
    border-left: 4px solid rgba(0,40,85,0.38) !important;
    background: linear-gradient(160deg, #f8fbff 0%, #eef4fb 100%) !important;
    box-shadow: 0 8px 20px rgba(0,40,85,0.06), inset 0 1px 0 rgba(255,255,255,0.95) !important;
    border-radius: 12px !important;
    color: var(--input-text) !important;
    transition: border-color 0.14s, box-shadow 0.14s, background 0.12s !important;
}

    :root .pm-pricing-inputs input[type="text"]:hover[b-5ntgunhjqm],
    :root .pm-pricing-inputs input[type="number"]:hover[b-5ntgunhjqm],
    :root .pm-pricing-inputs .form-control:not(select):not(.form-select):hover[b-5ntgunhjqm],
    :root .pm-pricing-settings-grid input[type="text"]:hover[b-5ntgunhjqm],
    :root .pm-pricing-settings-grid input[type="number"]:hover[b-5ntgunhjqm],
    :root .pm-pricing-settings-grid .form-control:not(select):not(.form-select):hover[b-5ntgunhjqm],
    [data-theme="light"] .pm-pricing-inputs input[type="text"]:hover[b-5ntgunhjqm],
    [data-theme="light"] .pm-pricing-inputs input[type="number"]:hover[b-5ntgunhjqm],
    [data-theme="light"] .pm-pricing-inputs .form-control:not(select):not(.form-select):hover[b-5ntgunhjqm],
    [data-theme="light"] .pm-pricing-settings-grid input[type="text"]:hover[b-5ntgunhjqm],
    [data-theme="light"] .pm-pricing-settings-grid input[type="number"]:hover[b-5ntgunhjqm],
    [data-theme="light"] .pm-pricing-settings-grid .form-control:not(select):not(.form-select):hover[b-5ntgunhjqm] {
        border-color: rgba(0,40,85,0.32) !important;
        border-left-color: #F1B828 !important;
        background: linear-gradient(160deg, #f0f6ff 0%, #e6eef9 100%) !important;
        box-shadow: 0 10px 24px rgba(0,40,85,0.09), inset 0 1px 0 rgba(255,255,255,0.98) !important;
    }

    :root .pm-pricing-inputs input[type="text"]:focus[b-5ntgunhjqm],
    :root .pm-pricing-inputs input[type="number"]:focus[b-5ntgunhjqm],
    :root .pm-pricing-inputs .form-control:not(select):not(.form-select):focus[b-5ntgunhjqm],
    :root .pm-pricing-settings-grid input[type="text"]:focus[b-5ntgunhjqm],
    :root .pm-pricing-settings-grid input[type="number"]:focus[b-5ntgunhjqm],
    :root .pm-pricing-settings-grid .form-control:not(select):not(.form-select):focus[b-5ntgunhjqm],
    [data-theme="light"] .pm-pricing-inputs input[type="text"]:focus[b-5ntgunhjqm],
    [data-theme="light"] .pm-pricing-inputs input[type="number"]:focus[b-5ntgunhjqm],
    [data-theme="light"] .pm-pricing-inputs .form-control:not(select):not(.form-select):focus[b-5ntgunhjqm],
    [data-theme="light"] .pm-pricing-settings-grid input[type="text"]:focus[b-5ntgunhjqm],
    [data-theme="light"] .pm-pricing-settings-grid input[type="number"]:focus[b-5ntgunhjqm],
    [data-theme="light"] .pm-pricing-settings-grid .form-control:not(select):not(.form-select):focus[b-5ntgunhjqm] {
        border-left-color: #F1B828 !important;
        border-color: rgba(241,184,40,0.65) !important;
        background: #ffffff !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.20), 0 10px 26px rgba(0,40,85,0.08), inset 0 1px 0 rgba(255,255,255,1) !important;
        outline: none !important;
    }

/* Dropdowns in pricing areas keep uniform border (no left accent) */
:root .pm-pricing-inputs .form-select[b-5ntgunhjqm],
:root .pm-pricing-inputs select[b-5ntgunhjqm],
:root .pm-pricing-settings-grid .form-select[b-5ntgunhjqm],
:root .pm-pricing-settings-grid select[b-5ntgunhjqm],
[data-theme="light"] .pm-pricing-inputs .form-select[b-5ntgunhjqm],
[data-theme="light"] .pm-pricing-inputs select[b-5ntgunhjqm],
[data-theme="light"] .pm-pricing-settings-grid .form-select[b-5ntgunhjqm],
[data-theme="light"] .pm-pricing-settings-grid select[b-5ntgunhjqm] {
    border-left-width: 1.5px !important;
    padding-left: 0.95rem !important;
}

/* === DARK MODE — Typeable inputs === */
[data-bs-theme="dark"] .pm-pricing-inputs input[type="text"][b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-inputs input[type="number"][b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-inputs input[type="email"][b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-inputs .form-control:not(select):not(.form-select)[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-settings-grid input[type="text"][b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-settings-grid input[type="number"][b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-settings-grid input[type="email"][b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-settings-grid .form-control:not(select):not(.form-select)[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-inputs input[type="text"][b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-inputs input[type="number"][b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-inputs input[type="email"][b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-inputs .form-control:not(select):not(.form-select)[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-settings-grid input[type="text"][b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-settings-grid input[type="number"][b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-settings-grid input[type="email"][b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-settings-grid .form-control:not(select):not(.form-select)[b-5ntgunhjqm] {
    min-height: 48px !important;
    padding: 0.8rem 0.95rem 0.8rem 0.85rem !important;
    border: 1.5px solid rgba(255,255,255,0.14) !important;
    border-left: 4px solid rgba(241,184,40,0.45) !important;
    background: linear-gradient(160deg, rgba(255,255,255,0.09) 0%, rgba(255,255,255,0.05) 100%) !important;
    box-shadow: 0 10px 26px rgba(0,0,0,0.26), inset 0 1px 0 rgba(255,255,255,0.04) !important;
    border-radius: 12px !important;
    color: rgba(255,255,255,0.90) !important;
}

    [data-bs-theme="dark"] .pm-pricing-inputs input[type="text"]:hover[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-pricing-inputs input[type="number"]:hover[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-pricing-inputs .form-control:not(select):not(.form-select):hover[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-pricing-settings-grid input[type="text"]:hover[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-pricing-settings-grid input[type="number"]:hover[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-pricing-settings-grid .form-control:not(select):not(.form-select):hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-inputs input[type="text"]:hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-inputs input[type="number"]:hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-inputs .form-control:not(select):not(.form-select):hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-settings-grid input[type="text"]:hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-settings-grid input[type="number"]:hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-settings-grid .form-control:not(select):not(.form-select):hover[b-5ntgunhjqm] {
        border-left-color: rgba(241,184,40,0.72) !important;
        background: linear-gradient(160deg, rgba(255,255,255,0.12) 0%, rgba(255,255,255,0.07) 100%) !important;
    }

    [data-bs-theme="dark"] .pm-pricing-inputs input[type="text"]:focus[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-pricing-inputs input[type="number"]:focus[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-pricing-inputs .form-control:not(select):not(.form-select):focus[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-pricing-settings-grid input[type="text"]:focus[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-pricing-settings-grid input[type="number"]:focus[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-pricing-settings-grid .form-control:not(select):not(.form-select):focus[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-inputs input[type="text"]:focus[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-inputs input[type="number"]:focus[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-inputs .form-control:not(select):not(.form-select):focus[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-settings-grid input[type="text"]:focus[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-settings-grid input[type="number"]:focus[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-settings-grid .form-control:not(select):not(.form-select):focus[b-5ntgunhjqm] {
        border-left-color: #F1B828 !important;
        border-color: rgba(241,184,40,0.60) !important;
        background: rgba(255,255,255,0.11) !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.16), 0 12px 28px rgba(0,0,0,0.30), inset 0 1px 0 rgba(255,255,255,0.04) !important;
        outline: none !important;
    }

/* Selects in dark pricing areas keep uniform border */
[data-bs-theme="dark"] .pm-pricing-inputs .form-select[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-inputs select[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-settings-grid .form-select[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-settings-grid select[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-inputs .form-select[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-inputs select[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-settings-grid .form-select[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-settings-grid select[b-5ntgunhjqm] {
    border-left-width: 1.5px !important;
}


/* ─────────────────────────────────────────────────────────────────
   E. PANEL CONFIGURATIONS — Cleaner, more structured layout
   ───────────────────────────────────────────────────────────────── */

/* Config rows: cleaner with better visual separation */
.pm-config-row[b-5ntgunhjqm] {
    padding: 11px 18px !important;
    border-bottom: 1px solid var(--divider) !important;
    transition: background 0.12s, border-left-color 0.12s !important;
    border-left: 3px solid transparent !important;
}

    .pm-config-row:hover[b-5ntgunhjqm] {
        background: var(--table-row-hover) !important;
        border-left-color: var(--iac-gold) !important;
    }

    .pm-config-row:last-child[b-5ntgunhjqm] {
        border-bottom: none !important;
    }

/* Config name: stronger typography */
.pm-config-row__name[b-5ntgunhjqm] {
    font-size: 0.88rem !important;
    font-weight: 600 !important;
    gap: 8px !important;
}

/* Config action group spacing */
.pm-config-row__actions[b-5ntgunhjqm] {
    gap: 8px !important;
}

/* Card body in panel config list: no extra padding waste */
.pm-card-body--flush .pm-config-row:first-child[b-5ntgunhjqm] {
    border-top: 1px solid var(--divider);
}

/* Form section titles inside panel modal: cleaner left border */
.pm-form-section-title[b-5ntgunhjqm] {
    background: var(--section-label-bg) !important;
    padding: 7px 10px 7px 12px !important;
    border-radius: 0 6px 6px 0 !important;
    margin-bottom: 12px !important;
    font-size: 0.67rem !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.10em !important;
    color: var(--section-label-text) !important;
    border-left: 3px solid var(--iac-gold) !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

/* Inset cards: cleaner visual hierarchy */
.pm-inset-card[b-5ntgunhjqm] {
    background: var(--panel-bg-alt) !important;
    border: 1px solid var(--panel-border) !important;
    border-left: 3px solid var(--iac-gold) !important;
    border-radius: 10px !important;
    padding: 13px 15px !important;
}

[data-bs-theme="dark"] .pm-inset-card[b-5ntgunhjqm],
[data-theme="dark"] .pm-inset-card[b-5ntgunhjqm] {
    background: rgba(255,255,255,0.035) !important;
    border-color: rgba(255,255,255,0.08) !important;
    border-left-color: var(--iac-gold) !important;
}

/* Panel config form rows: tighter grid */
.pm-form-row[b-5ntgunhjqm] {
    gap: 10px !important;
    margin-bottom: 0.9rem !important;
}

/* Form group labels: slightly tighter */
.pm-form-group[b-5ntgunhjqm] {
    margin-bottom: 0.9rem !important;
}

/* Modal body inputs: styled same as dropdown for consistency */
.pm-modal-body .form-control[b-5ntgunhjqm],
.pm-modal-body .pm-input[b-5ntgunhjqm] {
    min-height: 44px !important;
    border-radius: 10px !important;
    border: 1.5px solid var(--input-border) !important;
    background: var(--input-bg) !important;
    color: var(--input-text) !important;
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.04), 0 1px 0 rgba(255,255,255,0.40) !important;
    font-size: 0.88rem !important;
    padding: 9px 13px !important;
}

    .pm-modal-body .form-control:focus[b-5ntgunhjqm],
    .pm-modal-body .pm-input:focus[b-5ntgunhjqm] {
        border-color: var(--input-border-focus) !important;
        box-shadow: 0 0 0 3px var(--input-focus-shadow), inset 0 1px 2px rgba(0,0,0,0.04) !important;
        outline: none !important;
    }

/* Thickness & special sub-inputs: consistent look */
.pm-modal-body .form-select[b-5ntgunhjqm] {
    min-height: 44px !important;
    border-radius: 10px !important;
    border: 1.5px solid var(--input-border) !important;
    background: var(--input-bg) !important;
    color: var(--input-text) !important;
    font-size: 0.88rem !important;
}

/* Channel type display row: subtle info card */
.custom-channel-editor__summary[b-5ntgunhjqm] {
    background: var(--panel-bg-alt);
    border-radius: 10px;
    padding: 10px 14px;
    border: 1px solid var(--panel-border);
    font-size: 0.82rem;
    color: var(--text-secondary);
}

/* Card page title area: no stray box artifact */
.pm-section-header[b-5ntgunhjqm]::after,
.pm-card-head[b-5ntgunhjqm]::after {
    display: none !important;
    content: none !important;
}

/* Top-right area of section headers: clean */
.pm-card-head[b-5ntgunhjqm] {
    padding: 11px 18px !important;
}

.pm-card-title[b-5ntgunhjqm] {
    font-size: 0.70rem !important;
    letter-spacing: 0.10em !important;
}

/* Remove Bootstrap's focus outline box that appears on some button groups */
.btn:focus[b-5ntgunhjqm],
.pm-btn:focus[b-5ntgunhjqm],
.btn-check + .btn:focus[b-5ntgunhjqm] {
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(241,184,40,0.30) !important;
}

/* Light mode: section header does not get a blue box background */
:root .pm-section-header[b-5ntgunhjqm],
[data-theme="light"] .pm-section-header[b-5ntgunhjqm] {
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}


/* ═══════════════════════════════════════════════════════════════════
   36. TARGETED PATCH — Round 2
   Issues: card-head too dark light mode, header blur box, page-title
   chevron, pricing-settings inputs, checkbox, bend edit visible,
   all-buttons dark mode, panel-config cleanliness
   ═══════════════════════════════════════════════════════════════════ */


/* ─────────────────────────────────────────────────────────────────
   A. PAGE TITLE — Remove the ::after blur box, add gold chevron
   ───────────────────────────────────────────────────────────────── */

/* Kill the translucent white box on the right of the header */
.pm-page-title[b-5ntgunhjqm]::after {
    display: none !important;
    content: none !important;
}

/* Replace with a gold chevron › separator after the slash */
/* We inject it via the ::before on a wrapper span — but since
   the h2 text is static, we use a CSS content trick on ::after
   placed on the gold rule ::before sibling pseudo, keeping layout.
   Cleanest approach: add a gold right-chevron symbol after the title
   using a generated content block that doesn't box-shadow. */
.pm-page-title[b-5ntgunhjqm] {
    /* remove the right-hand glow box for good */
    overflow: hidden;
}

    /* Gold ❯ chevron injected after the title text via CSS */
    .pm-page-title[b-5ntgunhjqm]::after {
        content: "❯";
        position: absolute;
        right: 1.4rem;
        top: 50%;
        transform: translateY(-50%);
        font-size: 1.35rem;
        color: var(--iac-gold);
        opacity: 0.70;
        pointer-events: none;
        text-shadow: 0 0 12px rgba(241,184,40,0.50);
        display: block !important; /* override the none from above */
        background: none !important;
        width: auto !important;
        height: auto !important;
        border-radius: 0 !important;
        box-shadow: none !important;
    }

/* Dark mode chevron slightly brighter */
[data-bs-theme="dark"] .pm-page-title[b-5ntgunhjqm]::after,
[data-theme="dark"] .pm-page-title[b-5ntgunhjqm]::after {
    opacity: 0.55;
}


/* ─────────────────────────────────────────────────────────────────
   B. CARD HEAD / TABLE HEADERS — Lighter in light mode
      The deep navy was correct for dark mode but too heavy for light.
      Light mode: use a softer navy tint with white text.
   ───────────────────────────────────────────────────────────────── */

:root .pm-card-head[b-5ntgunhjqm],
:root .pricing-summary-card__head[b-5ntgunhjqm],
:root .pricing-breakdown-card__header[b-5ntgunhjqm],
:root .sheet-opt-card__header[b-5ntgunhjqm],
:root .pricing-profile-trace-card__header[b-5ntgunhjqm],
[data-theme="light"] .pm-card-head[b-5ntgunhjqm],
[data-theme="light"] .pricing-summary-card__head[b-5ntgunhjqm],
[data-theme="light"] .pricing-breakdown-card__header[b-5ntgunhjqm],
[data-theme="light"] .sheet-opt-card__header[b-5ntgunhjqm],
[data-theme="light"] .pricing-profile-trace-card__header[b-5ntgunhjqm] {
    background: linear-gradient(135deg, #002855 0%, #1a4a8a 65%, #2260a8 100%) !important;
    color: #ffffff !important;
}

/* Table column headers — light mode: same gradient as card head */
:root .table thead th[b-5ntgunhjqm],
:root .pm-table thead th[b-5ntgunhjqm],
:root .pm-labor-table thead th[b-5ntgunhjqm],
:root .pricing-cost-table thead th[b-5ntgunhjqm],
:root .thickness-override-table thead th[b-5ntgunhjqm],
[data-theme="light"] .table thead th[b-5ntgunhjqm],
[data-theme="light"] .pm-table thead th[b-5ntgunhjqm],
[data-theme="light"] .pm-labor-table thead th[b-5ntgunhjqm],
[data-theme="light"] .pricing-cost-table thead th[b-5ntgunhjqm],
[data-theme="light"] .thickness-override-table thead th[b-5ntgunhjqm] {
    background: linear-gradient(135deg, #002855 0%, #1a4a8a 65%, #2260a8 100%) !important;
    color: #ffffff !important;
    border-bottom: 2px solid #F1B828 !important;
}

/* Modal header stays the same bold navy — it's a header bar */
:root .pm-modal-header[b-5ntgunhjqm],
:root .mat-detail-modal-header[b-5ntgunhjqm],
:root .sheet-opt-modal-header[b-5ntgunhjqm],
[data-theme="light"] .pm-modal-header[b-5ntgunhjqm],
[data-theme="light"] .mat-detail-modal-header[b-5ntgunhjqm],
[data-theme="light"] .sheet-opt-modal-header[b-5ntgunhjqm] {
    background: linear-gradient(135deg, #002855 0%, #1a4a8a 65%, #2260a8 100%) !important;
}


/* ─────────────────────────────────────────────────────────────────
   C. PRICING SETTINGS INPUTS — Full styled inputs matching modals
   ───────────────────────────────────────────────────────────────── */

/* Light mode — all pm-input fields everywhere */
:root .pm-input[b-5ntgunhjqm],
[data-theme="light"] .pm-input[b-5ntgunhjqm] {
    min-height: 44px !important;
    padding: 9px 14px !important;
    background: linear-gradient(170deg, #ffffff 0%, #f5f9ff 100%) !important;
    border: 1.5px solid rgba(0,40,85,0.24) !important;
    border-radius: 10px !important;
    color: #001e42 !important;
    font-size: 0.88rem !important;
    font-weight: 500 !important;
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.04), 0 1px 0 rgba(255,255,255,0.90) !important;
    transition: border-color 0.14s, box-shadow 0.14s, background 0.12s !important;
}

    :root .pm-input:hover[b-5ntgunhjqm],
    [data-theme="light"] .pm-input:hover[b-5ntgunhjqm] {
        border-color: rgba(0,40,85,0.38) !important;
        background: linear-gradient(170deg, #f0f6ff 0%, #e8f0fb 100%) !important;
    }

    :root .pm-input:focus[b-5ntgunhjqm],
    [data-theme="light"] .pm-input:focus[b-5ntgunhjqm] {
        border-color: #F1B828 !important;
        background: #ffffff !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.22), inset 0 1px 2px rgba(0,0,0,0.02) !important;
        outline: none !important;
    }

/* Dark mode — pm-input */
[data-bs-theme="dark"] .pm-input[b-5ntgunhjqm],
[data-theme="dark"] .pm-input[b-5ntgunhjqm] {
    min-height: 44px !important;
    padding: 9px 14px !important;
    background: linear-gradient(170deg, rgba(255,255,255,0.09) 0%, rgba(255,255,255,0.05) 100%) !important;
    border: 1.5px solid rgba(255,255,255,0.14) !important;
    border-radius: 10px !important;
    color: rgba(255,255,255,0.90) !important;
    font-size: 0.88rem !important;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.28) !important;
}

    [data-bs-theme="dark"] .pm-input:hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-input:hover[b-5ntgunhjqm] {
        border-color: rgba(255,255,255,0.24) !important;
        background: linear-gradient(170deg, rgba(255,255,255,0.12) 0%, rgba(255,255,255,0.07) 100%) !important;
    }

    [data-bs-theme="dark"] .pm-input:focus[b-5ntgunhjqm],
    [data-theme="dark"] .pm-input:focus[b-5ntgunhjqm] {
        border-color: rgba(241,184,40,0.65) !important;
        background: rgba(255,255,255,0.11) !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.18), inset 0 1px 3px rgba(0,0,0,0.24) !important;
        outline: none !important;
    }

/* Pricing settings: slightly larger, more premium feel */
.pm-pricing-settings-grid .pm-input[b-5ntgunhjqm] {
    min-height: 48px !important;
    padding: 0.82rem 1rem !important;
    font-size: 0.96rem !important;
    font-weight: 600 !important;
}


/* ─────────────────────────────────────────────────────────────────
   D. CHECKBOX — Move label close to checkbox, fix light mode check
   ───────────────────────────────────────────────────────────────── */

/* Toggle row: checkbox right next to label, no wide gap */
.pm-toggle-row[b-5ntgunhjqm] {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 8px 0 !important;
}

    .pm-toggle-row .form-check-input[b-5ntgunhjqm] {
        order: -1; /* checkbox before label */
        margin: 0 !important;
        flex-shrink: 0;
    }

    .pm-toggle-row .pm-toggle-label[b-5ntgunhjqm] {
        order: 0;
        flex: 1;
    }

/* All form-check-input — light mode: navy bg when checked, gold ring */
:root .form-check-input[b-5ntgunhjqm],
[data-theme="light"] .form-check-input[b-5ntgunhjqm] {
    width: 1.10rem !important;
    height: 1.10rem !important;
    border: 2px solid rgba(0,40,85,0.42) !important;
    background-color: #ffffff !important;
    cursor: pointer;
    flex-shrink: 0;
    border-radius: 4px !important;
    transition: background 0.12s, border-color 0.12s, box-shadow 0.12s !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

    :root .form-check-input:checked[b-5ntgunhjqm],
    [data-theme="light"] .form-check-input:checked[b-5ntgunhjqm] {
        background-color: #002855 !important;
        border-color: #002855 !important;
        box-shadow: 0 0 0 2px rgba(241,184,40,0.35) !important;
        /* Crisp white checkmark SVG */
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23ffffff' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' d='M2.5 8l4 4 7-7'/%3E%3C/svg%3E") !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: 68% !important;
    }

    :root .form-check-input:focus[b-5ntgunhjqm],
    [data-theme="light"] .form-check-input:focus[b-5ntgunhjqm] {
        box-shadow: 0 0 0 3px rgba(241,184,40,0.30) !important;
        outline: none !important;
    }

/* Dark mode: gold check */
[data-bs-theme="dark"] .form-check-input[b-5ntgunhjqm],
[data-theme="dark"] .form-check-input[b-5ntgunhjqm] {
    border: 2px solid rgba(255,255,255,0.30) !important;
    background-color: rgba(255,255,255,0.07) !important;
    border-radius: 4px !important;
}

    [data-bs-theme="dark"] .form-check-input:checked[b-5ntgunhjqm],
    [data-theme="dark"] .form-check-input:checked[b-5ntgunhjqm] {
        background-color: #F1B828 !important;
        border-color: #F1B828 !important;
        box-shadow: 0 0 0 2px rgba(241,184,40,0.30) !important;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23001535' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' d='M2.5 8l4 4 7-7'/%3E%3C/svg%3E") !important;
        background-repeat: no-repeat !important;
        background-position: center !important;
        background-size: 68% !important;
    }


/* ─────────────────────────────────────────────────────────────────
   E. BEND TABLE — Edit form visible as inline side panel
   ───────────────────────────────────────────────────────────────── */

/* When bend table is active, make the split layout a real side-by-side */
.pm-content-area--bend-table .pm-split-layout[b-5ntgunhjqm] {
    display: grid !important;
    grid-template-columns: 1fr 340px !important;
    gap: 1.25rem !important;
    align-items: start !important;
}

.pm-content-area--bend-table .pm-split-main[b-5ntgunhjqm] {
    min-width: 0 !important;
}

/* The pm-split-side is now visible and used */
.pm-content-area--bend-table .pm-split-side[b-5ntgunhjqm] {
    display: block !important;
    min-width: 0 !important;
}

    /* When the form is not visible, collapse the side */
    .pm-content-area--bend-table .pm-split-side:empty[b-5ntgunhjqm] {
        display: none !important;
    }

/* On narrow screens collapse back to single column */
@media (max-width: 860px) {
    .pm-content-area--bend-table .pm-split-layout[b-5ntgunhjqm] {
        grid-template-columns: 1fr !important;
    }

    .pm-content-area--bend-table .pm-split-side[b-5ntgunhjqm] {
        display: block !important;
    }
}


/* ─────────────────────────────────────────────────────────────────
   F. ALL BUTTONS — Consistent dark mode styling
      The dark-mode primary should always be gold; secondary is
      frosted glass. Ensure no light-mode styles leak into dark.
   ───────────────────────────────────────────────────────────────── */

/* Ensure all primary buttons in dark mode always get gold gradient */
[data-bs-theme="dark"] .pm-btn--primary[b-5ntgunhjqm],
[data-bs-theme="dark"] .btn-primary[b-5ntgunhjqm],
[data-theme="dark"] .pm-btn--primary[b-5ntgunhjqm],
[data-theme="dark"] .btn-primary[b-5ntgunhjqm] {
    background: linear-gradient(155deg, #ffd056 0%, #f1b828 55%, #c99610 100%) !important;
    color: #001535 !important;
    border: 1.5px solid rgba(210,160,0,0.45) !important;
    box-shadow: 0 1px 0 rgba(255,255,255,0.28) inset, 0 -1px 0 rgba(0,0,0,0.18) inset, 0 3px 0 rgba(0,0,0,0.32), 0 8px 22px rgba(241,184,40,0.30) !important;
    text-shadow: 0 1px 1px rgba(255,255,255,0.15) !important;
}

    [data-bs-theme="dark"] .pm-btn--primary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-bs-theme="dark"] .btn-primary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .pm-btn--primary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .btn-primary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(155deg, #ffe080 0%, #f8c43c 55%, #d9a824 100%) !important;
        box-shadow: 0 1px 0 rgba(255,255,255,0.32) inset, 0 -1px 0 rgba(0,0,0,0.20) inset, 0 3px 0 rgba(0,0,0,0.36), 0 12px 30px rgba(241,184,40,0.40) !important;
        transform: translateY(-2px) !important;
    }

/* Dark mode ghost/secondary */
[data-bs-theme="dark"] .pm-btn--ghost[b-5ntgunhjqm],
[data-bs-theme="dark"] .btn-secondary[b-5ntgunhjqm],
[data-theme="dark"] .pm-btn--ghost[b-5ntgunhjqm],
[data-theme="dark"] .btn-secondary[b-5ntgunhjqm] {
    background: linear-gradient(170deg, rgba(255,255,255,0.11) 0%, rgba(255,255,255,0.05) 100%) !important;
    border: 1.5px solid rgba(255,255,255,0.18) !important;
    color: rgba(255,255,255,0.90) !important;
    box-shadow: 0 1px 0 rgba(255,255,255,0.06) inset, 0 -1px 0 rgba(0,0,0,0.24) inset, 0 4px 10px rgba(0,0,0,0.26) !important;
}

    [data-bs-theme="dark"] .pm-btn--ghost:hover:not(:disabled)[b-5ntgunhjqm],
    [data-bs-theme="dark"] .btn-secondary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .pm-btn--ghost:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .btn-secondary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(170deg, rgba(255,255,255,0.16) 0%, rgba(255,255,255,0.09) 100%) !important;
        border-color: rgba(255,255,255,0.28) !important;
        color: #ffffff !important;
        transform: translateY(-2px) !important;
    }

/* Dark mode action buttons — outline variants */
[data-bs-theme="dark"] .pm-action-btn[b-5ntgunhjqm],
[data-theme="dark"] .pm-action-btn[b-5ntgunhjqm] {
    background: linear-gradient(170deg, rgba(255,255,255,0.08) 0%, rgba(255,255,255,0.03) 100%) !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    color: rgba(255,255,255,0.88) !important;
}

    [data-bs-theme="dark"] .pm-action-btn:hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-action-btn:hover[b-5ntgunhjqm] {
        background: linear-gradient(170deg, rgba(255,255,255,0.14) 0%, rgba(255,255,255,0.08) 100%) !important;
        border-color: rgba(255,255,255,0.30) !important;
        color: #ffffff !important;
    }

/* Test pricing button specifically */
[data-bs-theme="dark"] .pm-action-btn--test[b-5ntgunhjqm],
[data-theme="dark"] .pm-action-btn--test[b-5ntgunhjqm] {
    border-color: rgba(96,165,250,0.38) !important;
    color: #93c5fd !important;
}

/* Edit button dark mode */
[data-bs-theme="dark"] .pm-action-btn--edit[b-5ntgunhjqm],
[data-theme="dark"] .pm-action-btn--edit[b-5ntgunhjqm] {
    border-color: rgba(241,184,40,0.38) !important;
    color: #ffd56d !important;
}

/* Icon buttons dark mode */
[data-bs-theme="dark"] .pm-icon-btn--edit[b-5ntgunhjqm],
[data-theme="dark"] .pm-icon-btn--edit[b-5ntgunhjqm] {
    background: linear-gradient(160deg, rgba(255,255,255,0.10) 0%, rgba(255,255,255,0.05) 100%) !important;
    border: 1.5px solid rgba(255,255,255,0.18) !important;
    color: rgba(255,255,255,0.80) !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.24) !important;
}

    [data-bs-theme="dark"] .pm-icon-btn--edit:hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-icon-btn--edit:hover[b-5ntgunhjqm] {
        background: linear-gradient(160deg, rgba(241,184,40,0.20) 0%, rgba(241,184,40,0.10) 100%) !important;
        border-color: rgba(241,184,40,0.50) !important;
        color: #ffd56d !important;
    }

[data-bs-theme="dark"] .pm-icon-btn--delete[b-5ntgunhjqm],
[data-theme="dark"] .pm-icon-btn--delete[b-5ntgunhjqm] {
    background: linear-gradient(160deg, rgba(248,113,113,0.10) 0%, rgba(248,113,113,0.05) 100%) !important;
    border: 1.5px solid rgba(248,113,113,0.32) !important;
    color: #fca5a5 !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.24) !important;
}

    [data-bs-theme="dark"] .pm-icon-btn--delete:hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-icon-btn--delete:hover[b-5ntgunhjqm] {
        background: linear-gradient(135deg, rgba(248,113,113,0.22) 0%, rgba(220,40,40,0.16) 100%) !important;
        border-color: rgba(248,113,113,0.60) !important;
        color: #fecaca !important;
    }

/* btn-check (radio/toggle groups) dark mode */
[data-bs-theme="dark"] .btn-check:checked + .btn-outline-primary[b-5ntgunhjqm],
[data-theme="dark"] .btn-check:checked + .btn-outline-primary[b-5ntgunhjqm] {
    background: linear-gradient(155deg, #ffd056 0%, #f1b828 100%) !important;
    color: #001535 !important;
    border-color: rgba(241,184,40,0.50) !important;
}

/* Add Row / Add* primary buttons in dark mode (catch-all) */
[data-bs-theme="dark"] button.pm-btn--primary[b-5ntgunhjqm],
[data-theme="dark"] button.pm-btn--primary[b-5ntgunhjqm] {
    background: linear-gradient(155deg, #ffd056 0%, #f1b828 55%, #c99610 100%) !important;
    color: #001535 !important;
}


/* ─────────────────────────────────────────────────────────────────
   G. PANEL CONFIGURATIONS — Cleaner card-based list
   ───────────────────────────────────────────────────────────────── */

/* The card body holding config rows: no padding, flush rows */
.pm-content-area--configurations .pm-card-body[b-5ntgunhjqm] {
    padding: 0 !important;
}

/* Each config row: clean two-column layout, generous breathing room */
.pm-content-area--configurations .pm-config-row[b-5ntgunhjqm] {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 14px !important;
    padding: 12px 18px !important;
    border-bottom: 1px solid var(--divider) !important;
    border-left: 3px solid transparent !important;
    transition: background 0.11s, border-left-color 0.11s !important;
    min-height: 52px !important;
}

    .pm-content-area--configurations .pm-config-row:last-child[b-5ntgunhjqm] {
        border-bottom: none !important;
    }

    .pm-content-area--configurations .pm-config-row:hover[b-5ntgunhjqm] {
        background: var(--table-row-hover) !important;
        border-left-color: var(--iac-gold) !important;
    }

/* Name column */
.pm-content-area--configurations .pm-config-row__name[b-5ntgunhjqm] {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 6px !important;
    font-size: 0.90rem !important;
    min-width: 0 !important;
    flex: 1 !important;
}

    .pm-content-area--configurations .pm-config-row__name strong[b-5ntgunhjqm] {
        font-weight: 700;
        color: var(--text-primary);
    }

    .pm-content-area--configurations .pm-config-row__name .text-muted[b-5ntgunhjqm] {
        font-size: 0.80rem;
        color: var(--text-muted) !important;
    }

/* Badges in config rows: compact pill style */
.pm-content-area--configurations .badge[b-5ntgunhjqm] {
    font-size: 0.60rem !important;
    padding: 0.14rem 0.48rem !important;
    border-radius: 999px !important;
    font-weight: 800 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
}

    /* F+C badge: navy */
    .pm-content-area--configurations .badge.bg-primary[b-5ntgunhjqm] {
        background: #002855 !important;
        color: #ffffff !important;
    }

    /* Profile badges: subtle teal */
    .pm-content-area--configurations .badge.bg-info[b-5ntgunhjqm] {
        background: rgba(0,112,200,0.14) !important;
        color: #0060b0 !important;
        border: 1px solid rgba(0,112,200,0.30) !important;
    }

    /* Cover profile badge: muted */
    .pm-content-area--configurations .badge.bg-secondary[b-5ntgunhjqm] {
        background: rgba(0,40,85,0.10) !important;
        color: #002855 !important;
        border: 1px solid rgba(0,40,85,0.22) !important;
    }

    /* SDEC badge: amber/warning */
    .pm-content-area--configurations .badge.bg-danger[b-5ntgunhjqm] {
        background: rgba(220,60,30,0.12) !important;
        color: #b02010 !important;
        border: 1px solid rgba(220,60,30,0.30) !important;
    }

/* Dark mode badge overrides for configurations */
[data-bs-theme="dark"] .pm-content-area--configurations .badge.bg-primary[b-5ntgunhjqm],
[data-theme="dark"] .pm-content-area--configurations .badge.bg-primary[b-5ntgunhjqm] {
    background: rgba(0,40,85,0.70) !important;
    color: #dbeafe !important;
    border: 1px solid rgba(96,165,250,0.25) !important;
}

[data-bs-theme="dark"] .pm-content-area--configurations .badge.bg-info[b-5ntgunhjqm],
[data-theme="dark"] .pm-content-area--configurations .badge.bg-info[b-5ntgunhjqm] {
    background: rgba(96,165,250,0.16) !important;
    color: #93c5fd !important;
    border: 1px solid rgba(96,165,250,0.28) !important;
}

[data-bs-theme="dark"] .pm-content-area--configurations .badge.bg-secondary[b-5ntgunhjqm],
[data-theme="dark"] .pm-content-area--configurations .badge.bg-secondary[b-5ntgunhjqm] {
    background: rgba(255,255,255,0.10) !important;
    color: rgba(255,255,255,0.75) !important;
    border: 1px solid rgba(255,255,255,0.16) !important;
}

[data-bs-theme="dark"] .pm-content-area--configurations .badge.bg-danger[b-5ntgunhjqm],
[data-theme="dark"] .pm-content-area--configurations .badge.bg-danger[b-5ntgunhjqm] {
    background: rgba(248,113,113,0.14) !important;
    color: #fca5a5 !important;
    border: 1px solid rgba(248,113,113,0.26) !important;
}

/* Actions column: always right-aligned, no wrap */
.pm-content-area--configurations .pm-config-row__actions[b-5ntgunhjqm] {
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
    flex-shrink: 0 !important;
    white-space: nowrap !important;
}

/* Action buttons in config rows: consistent sizing */
.pm-content-area--configurations .pm-action-btn[b-5ntgunhjqm] {
    font-size: 0.68rem !important;
    padding: 0.30rem 0.72rem !important;
    border-radius: 8px !important;
    min-height: 32px !important;
}

/* Card head for config groups: show count badge cleanly */
.pm-content-area--configurations .pm-card-head[b-5ntgunhjqm] {
    padding: 10px 18px !important;
    min-height: 44px !important;
}

.pm-content-area--configurations .pm-card[b-5ntgunhjqm] {
    margin-bottom: 1rem !important;
    border-radius: 14px !important;
    overflow: hidden !important;
}

/* Card head count badge */
.pm-content-area--configurations .pm-badge--neutral[b-5ntgunhjqm] {
    background: rgba(255,255,255,0.20) !important;
    color: rgba(255,255,255,0.90) !important;
    border: 1px solid rgba(255,255,255,0.22) !important;
    font-size: 0.62rem !important;
    padding: 0.12rem 0.50rem !important;
    border-radius: 999px !important;
    font-weight: 800 !important;
}

/* "No configurations" text: centered and styled */
.pm-content-area--configurations .text-muted[b-5ntgunhjqm] {
    padding: 18px 18px !important;
    font-style: italic;
    font-size: 0.82rem;
}



/* ═══════════════════════════════════════════════════════════════════
   37. PATCH 2B — Bend edit sticky, orphaned selectors, final polish
   ═══════════════════════════════════════════════════════════════════ */


/* ─────────────────────────────────────────────────────────────────
   A. BEND TABLE — Robust side-panel display fix
      Blazor renders @if content as comment nodes when false, so
      :empty won't work. We always show the side column and let
      the inner card provide visual presence only when rendered.
   ───────────────────────────────────────────────────────────────── */

/* Always use grid layout for bend table — side col collapses when empty */
.pm-content-area--bend-table .pm-split-layout[b-5ntgunhjqm] {
    display: grid !important;
    grid-template-columns: 1fr !important; /* default 1 col */
    gap: 1.25rem !important;
    align-items: start !important;
}

    /* When the side panel has content, switch to 2-col */
    .pm-content-area--bend-table .pm-split-layout:has(.pm-split-side .pm-card)[b-5ntgunhjqm] {
        grid-template-columns: 1fr 340px !important;
    }

/* Side panel: always block, zero height when empty */
.pm-content-area--bend-table .pm-split-side[b-5ntgunhjqm] {
    display: block !important;
    min-width: 0 !important;
}

    /* Sticky edit panel so it doesn't scroll away */
    .pm-content-area--bend-table .pm-split-side .pm-card[b-5ntgunhjqm] {
        position: sticky !important;
        top: 1rem !important;
    }

/* Fallback for browsers without :has — show the column via a JS class
   added by Blazor when showBendAllowanceForm is true.
   We set the grid immediately via the more specific rule above,
   and the fallback just keeps the column visible. */

@media (max-width: 860px) {
    .pm-content-area--bend-table .pm-split-layout[b-5ntgunhjqm],
    .pm-content-area--bend-table .pm-split-layout:has(.pm-split-side .pm-card)[b-5ntgunhjqm] {
        grid-template-columns: 1fr !important;
    }

    .pm-content-area--bend-table .pm-split-side[b-5ntgunhjqm] {
        display: block !important;
    }

        .pm-content-area--bend-table .pm-split-side .pm-card[b-5ntgunhjqm] {
            position: static !important;
        }
}


/* ─────────────────────────────────────────────────────────────────
   B. PRICING TEST INPUTS — better styled in light mode
      The inputs in the "Inputs" left panel were unstyled plain boxes.
      Make them consistent with modal inputs.
   ───────────────────────────────────────────────────────────────── */

/* Light mode: all form-control inputs in pricing inputs panel */
:root .pm-pricing-inputs .form-control[b-5ntgunhjqm],
:root .pm-pricing-inputs input.pm-input[b-5ntgunhjqm],
[data-theme="light"] .pm-pricing-inputs .form-control[b-5ntgunhjqm],
[data-theme="light"] .pm-pricing-inputs input.pm-input[b-5ntgunhjqm] {
    background: linear-gradient(170deg, #ffffff 0%, #f5f9ff 100%) !important;
    border: 1.5px solid rgba(0,40,85,0.24) !important;
    border-radius: 10px !important;
    color: #001e42 !important;
    font-size: 0.92rem !important;
    min-height: 44px !important;
    padding: 9px 13px !important;
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.04), 0 1px 0 rgba(255,255,255,0.90) !important;
}

    :root .pm-pricing-inputs .form-control:focus[b-5ntgunhjqm],
    :root .pm-pricing-inputs input.pm-input:focus[b-5ntgunhjqm],
    [data-theme="light"] .pm-pricing-inputs .form-control:focus[b-5ntgunhjqm],
    [data-theme="light"] .pm-pricing-inputs input.pm-input:focus[b-5ntgunhjqm] {
        border-color: #F1B828 !important;
        background: #ffffff !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.22), inset 0 1px 2px rgba(0,0,0,0.02) !important;
        outline: none !important;
    }

    /* Locked / disabled inputs in pricing test (gauge locked, etc.) */
    :root .pm-pricing-inputs .form-control:disabled[b-5ntgunhjqm],
    [data-theme="light"] .pm-pricing-inputs .form-control:disabled[b-5ntgunhjqm] {
        background: rgba(0,40,85,0.05) !important;
        color: rgba(0,30,66,0.55) !important;
        border-color: rgba(0,40,85,0.14) !important;
        box-shadow: none !important;
        cursor: not-allowed !important;
    }

/* Dark mode pricing inputs */
[data-bs-theme="dark"] .pm-pricing-inputs .form-control[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-inputs .form-control[b-5ntgunhjqm] {
    background: linear-gradient(170deg, rgba(255,255,255,0.09) 0%, rgba(255,255,255,0.05) 100%) !important;
    border: 1.5px solid rgba(255,255,255,0.14) !important;
    border-radius: 10px !important;
    color: rgba(255,255,255,0.90) !important;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.28) !important;
}

    [data-bs-theme="dark"] .pm-pricing-inputs .form-control:focus[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-inputs .form-control:focus[b-5ntgunhjqm] {
        border-color: rgba(241,184,40,0.65) !important;
        background: rgba(255,255,255,0.11) !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.18), inset 0 1px 3px rgba(0,0,0,0.24) !important;
        outline: none !important;
    }

/* Selects in pricing test inputs */
:root .pm-pricing-inputs .form-select[b-5ntgunhjqm],
[data-theme="light"] .pm-pricing-inputs .form-select[b-5ntgunhjqm] {
    background-color: linear-gradient(170deg, #ffffff 0%, #f5f9ff 100%) !important;
    border: 1.5px solid rgba(0,40,85,0.24) !important;
    border-radius: 10px !important;
    min-height: 44px !important;
    color: #001e42 !important;
    font-size: 0.92rem !important;
}


/* ─────────────────────────────────────────────────────────────────
   C. HEADER — Remove the blurred/frosted box to the right
      The h2.pm-page-title has a ::after pseudo that shows as a
      glassy rounded rect in the right corner. Killed here cleanly.
   ───────────────────────────────────────────────────────────────── */

/* The ::after is now purely a chevron character — see patch 36A.
   But some browsers might still render an old cached rule.
   Guarantee: no box, just the ❯ character. */
h2.pm-page-title[b-5ntgunhjqm]::after,
.pm-page-title[b-5ntgunhjqm]::after {
    /* Reset all box properties */
    content: "❯" !important;
    background: transparent !important;
    background-image: none !important;
    border: none !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    /* Position as decorative chevron */
    position: absolute !important;
    right: 1.4rem !important;
    top: 50% !important;
    left: auto !important;
    width: auto !important;
    height: auto !important;
    transform: translateY(-50%) !important;
    font-size: 1.30rem !important;
    font-weight: 400 !important;
    color: var(--iac-gold) !important;
    opacity: 0.65 !important;
    pointer-events: none !important;
    display: block !important;
    text-shadow: 0 0 14px rgba(241,184,40,0.45) !important;
    padding: 0 !important;
}

[data-bs-theme="dark"] h2.pm-page-title[b-5ntgunhjqm]::after,
[data-bs-theme="dark"] .pm-page-title[b-5ntgunhjqm]::after,
[data-theme="dark"] h2.pm-page-title[b-5ntgunhjqm]::after,
[data-theme="dark"] .pm-page-title[b-5ntgunhjqm]::after {
    opacity: 0.50 !important;
}

@media (max-width: 640px) {
    h2.pm-page-title[b-5ntgunhjqm]::after,
    .pm-page-title[b-5ntgunhjqm]::after {
        display: none !important;
    }
}


/* ─────────────────────────────────────────────────────────────────
   D. PRICING SETTINGS CHECKBOX — Tighter layout, inline with label
   ───────────────────────────────────────────────────────────────── */

/* The "Include Mount Cost" toggle row */
.pm-pricing-settings-grid .pm-toggle-row[b-5ntgunhjqm] {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 10px 0 6px !important;
    margin-top: 4px !important;
}

    /* Checkbox sits before the label text */
    .pm-pricing-settings-grid .pm-toggle-row .form-check-input[b-5ntgunhjqm] {
        order: -1 !important;
        margin: 0 !important;
        width: 1.10rem !important;
        height: 1.10rem !important;
        flex-shrink: 0 !important;
        position: static !important;
        float: none !important;
    }

    .pm-pricing-settings-grid .pm-toggle-row .pm-toggle-label[b-5ntgunhjqm] {
        font-size: 0.86rem;
        font-weight: 600;
        color: var(--text-primary);
        cursor: pointer;
        user-select: none;
    }

/* Hint text below toggle */
.pm-pricing-settings-grid .pm-hint--loose[b-5ntgunhjqm] {
    margin-top: 4px !important;
    padding-left: 0 !important;
}


/* ─────────────────────────────────────────────────────────────────
   E. MATERIAL COSTS / LABOR COSTS — card headers in light mode
      These breakdown card headers were appearing too dark.
      They use .pricing-breakdown-card__header and 
      pricing-summary-card__head — already handled in patch 36B,
      but the specific light-mode gradient needs the right value.
   ───────────────────────────────────────────────────────────────── */

/* Softer, slightly lighter navy for body content card headers */
:root .pricing-breakdown-card__header[b-5ntgunhjqm],
[data-theme="light"] .pricing-breakdown-card__header[b-5ntgunhjqm] {
    background: linear-gradient(135deg, #002855 0%, #1a4a8a 65%, #2260a8 100%) !important;
}

/* Profile interpretation trace header */
:root .pricing-profile-trace-card__header[b-5ntgunhjqm],
[data-theme="light"] .pricing-profile-trace-card__header[b-5ntgunhjqm] {
    background: linear-gradient(135deg, #002855 0%, #1a4a8a 65%, #2260a8 100%) !important;
}

/* The summary/total bar in pricing */
:root .pricing-summary-card__head[b-5ntgunhjqm],
[data-theme="light"] .pricing-summary-card__head[b-5ntgunhjqm] {
    background: linear-gradient(135deg, #002855 0%, #1a4a8a 65%, #2260a8 100%) !important;
    color: #ffffff !important;
}

/* Sub-text in the pricing summary header */
:root .pricing-summary-subtitle[b-5ntgunhjqm],
[data-theme="light"] .pricing-summary-subtitle[b-5ntgunhjqm] {
    color: rgba(255,255,255,0.75) !important;
}

/* Sheet opt card header */
:root .sheet-opt-card__header[b-5ntgunhjqm],
[data-theme="light"] .sheet-opt-card__header[b-5ntgunhjqm] {
    background: linear-gradient(135deg, #002855 0%, #1a4a8a 65%, #2260a8 100%) !important;
}

/* Profile interpretation trace summary */
:root .pricing-profile-trace__summary[b-5ntgunhjqm],
[data-theme="light"] .pricing-profile-trace__summary[b-5ntgunhjqm] {
    background: rgba(0,40,85,0.06) !important;
    color: #002855 !important;
}


/* ─────────────────────────────────────────────────────────────────
   F. PANEL CONFIGURATIONS — Category header row cleanup
      The group headers (ABSORPTIVE PANEL, BARRIER PANEL, etc.) use
      pm-card-head. Make them cleaner and consistent.
   ───────────────────────────────────────────────────────────────── */

/* Panel type group card heads */
.pm-content-area--configurations .pm-card-head[b-5ntgunhjqm] {
    background: linear-gradient(135deg, #002855 0%, #1a4a8a 65%, #2260a8 100%) !important;
    padding: 11px 18px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    min-height: 46px !important;
}

[data-bs-theme="dark"] .pm-content-area--configurations .pm-card-head[b-5ntgunhjqm],
[data-theme="dark"] .pm-content-area--configurations .pm-card-head[b-5ntgunhjqm] {
    background: linear-gradient(135deg, #0b1322 0%, #16233b 100%) !important;
}

/* Panel type name in card head: crisp uppercase label */
.pm-content-area--configurations .pm-card-title[b-5ntgunhjqm] {
    font-size: 0.72rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    color: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

/* Count badge in header */
.pm-content-area--configurations .pm-card-head .pm-badge--neutral[b-5ntgunhjqm] {
    background: rgba(255,255,255,0.18) !important;
    color: rgba(255,255,255,0.95) !important;
    border: 1px solid rgba(255,255,255,0.20) !important;
    font-size: 0.62rem !important;
    padding: 0.10rem 0.48rem !important;
    border-radius: 999px !important;
    font-weight: 800 !important;
    letter-spacing: 0.04em !important;
}

/* Gold bottom border on panel group card heads */
.pm-content-area--configurations .pm-card[b-5ntgunhjqm] {
    border: 1px solid var(--panel-border) !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    margin-bottom: 1rem !important;
    box-shadow: 0 2px 12px rgba(0,30,66,0.07), 0 1px 3px rgba(0,30,66,0.04) !important;
}

[data-bs-theme="dark"] .pm-content-area--configurations .pm-card[b-5ntgunhjqm],
[data-theme="dark"] .pm-content-area--configurations .pm-card[b-5ntgunhjqm] {
    box-shadow: 0 4px 18px rgba(0,0,0,0.28), 0 1px 4px rgba(0,0,0,0.18) !important;
}

/* Remove inner card body padding so rows go edge-to-edge */
.pm-content-area--configurations .pm-card > .pm-card-body[b-5ntgunhjqm] {
    padding: 0 !important;
}

/* Add a subtle gold bottom border to the card head */
.pm-content-area--configurations .pm-card-head[b-5ntgunhjqm] {
    border-bottom: 2px solid var(--iac-gold) !important;
}

/* Zebra stripe for the config rows */
.pm-content-area--configurations .pm-config-row:nth-child(even)[b-5ntgunhjqm] {
    background: var(--table-row-even) !important;
}

.pm-content-area--configurations .pm-config-row:nth-child(odd)[b-5ntgunhjqm] {
    background: var(--table-row-odd) !important;
}

.pm-content-area--configurations .pm-config-row:hover[b-5ntgunhjqm] {
    background: var(--table-row-hover) !important;
    border-left-color: var(--iac-gold) !important;
}


/* ─────────────────────────────────────────────────────────────────
   G. DARK MODE — Remove residual light-mode leaks on all buttons
   ───────────────────────────────────────────────────────────────── */

/* Prevent the :root (light) primary gradient from overriding dark */
[data-bs-theme="dark"] .btn-primary[b-5ntgunhjqm],
[data-theme="dark"] .btn-primary[b-5ntgunhjqm] {
    background: linear-gradient(155deg, #ffd056 0%, #f1b828 55%, #c99610 100%) !important;
    color: #001535 !important;
    border-color: rgba(210,160,0,0.45) !important;
}

    /* Plus icon on gold primary buttons stays dark */
    [data-bs-theme="dark"] .btn-primary .bi-plus-lg[b-5ntgunhjqm],
    [data-bs-theme="dark"] .btn-primary .bi-plus[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-btn--primary .bi-plus-lg[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-btn--primary .bi-plus[b-5ntgunhjqm],
    [data-theme="dark"] .btn-primary .bi-plus-lg[b-5ntgunhjqm],
    [data-theme="dark"] .btn-primary .bi-plus[b-5ntgunhjqm],
    [data-theme="dark"] .pm-btn--primary .bi-plus-lg[b-5ntgunhjqm],
    [data-theme="dark"] .pm-btn--primary .bi-plus[b-5ntgunhjqm] {
        color: #001535 !important;
        -webkit-text-stroke: 1.0px #001535 !important;
    }

    /* Checkmark icon on gold buttons */
    [data-bs-theme="dark"] .btn-primary .bi-check-lg[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-btn--primary .bi-check-lg[b-5ntgunhjqm],
    [data-theme="dark"] .btn-primary .bi-check-lg[b-5ntgunhjqm],
    [data-theme="dark"] .pm-btn--primary .bi-check-lg[b-5ntgunhjqm] {
        color: #001535 !important;
    }

/* Ensure ghost buttons never look like primary in dark */
[data-bs-theme="dark"] .pm-btn--ghost:not(:hover)[b-5ntgunhjqm],
[data-theme="dark"] .pm-btn--ghost:not(:hover)[b-5ntgunhjqm] {
    background: linear-gradient(170deg, rgba(255,255,255,0.10) 0%, rgba(255,255,255,0.05) 100%) !important;
    color: rgba(255,255,255,0.88) !important;
}

/* btn-outline-primary dark: gold outline, not filled */
[data-bs-theme="dark"] .btn-outline-primary:not(:hover)[b-5ntgunhjqm],
[data-theme="dark"] .btn-outline-primary:not(:hover)[b-5ntgunhjqm] {
    background: rgba(255,255,255,0.03) !important;
    border-color: rgba(241,184,40,0.40) !important;
    color: #fad668 !important;
}

/* Add Row button specifically (has pm-btn--primary in dark) */
[data-bs-theme="dark"] button.btn.pm-btn--primary[b-5ntgunhjqm],
[data-bs-theme="dark"] button.pm-btn.pm-btn--primary[b-5ntgunhjqm],
[data-theme="dark"] button.btn.pm-btn--primary[b-5ntgunhjqm],
[data-theme="dark"] button.pm-btn.pm-btn--primary[b-5ntgunhjqm] {
    background: linear-gradient(155deg, #ffd056 0%, #f1b828 55%, #c99610 100%) !important;
    color: #001535 !important;
}


/* ─────────────────────────────────────────────────────────────────
   H. FORM ACTIONS — Consistent button row alignment
   ───────────────────────────────────────────────────────────────── */

.pm-form-actions[b-5ntgunhjqm] {
    display: flex !important;
    align-items: center !important;
    gap: 9px !important;
    margin-top: 1.1rem !important;
    flex-wrap: wrap !important;
}

/* Bend edit form actions: right-aligned */
.pm-content-area--bend-table .pm-form-actions[b-5ntgunhjqm] {
    justify-content: flex-end !important;
    border-top: 1px solid var(--divider) !important;
    padding-top: 12px !important;
    margin-top: 12px !important;
}


/* ═══════════════════════════════════════════════════════════════════
   38. FINAL TARGETED FIXES — Token-level input/header/tab/chevron
   ═══════════════════════════════════════════════════════════════════ */


/* ─────────────────────────────────────────────────────────────────
   A. PAGE TITLE CHEVRON — Inline gold ❯ right after the text
   ───────────────────────────────────────────────────────────────── */

/* The span sits inline, immediately after the title text */
.pm-page-title__chevron[b-5ntgunhjqm] {
    display: inline-block;
    color: #F1B828;
    font-size: 1.10rem;
    font-weight: 400;
    line-height: 1;
    margin-left: 0.55rem;
    opacity: 0.85;
    text-shadow: 0 0 10px rgba(241,184,40,0.50);
    vertical-align: middle;
    flex-shrink: 0;
    /* Not at the far right — sits right next to the text in flex row */
    position: static;
    transform: none;
}

/* Ensure the ::after from previous patches is fully dead */
.pm-page-title[b-5ntgunhjqm]::after,
h2.pm-page-title[b-5ntgunhjqm]::after {
    content: none !important;
    display: none !important;
}

/* Dark mode chevron */
[data-bs-theme="dark"] .pm-page-title__chevron[b-5ntgunhjqm],
[data-theme="dark"] .pm-page-title__chevron[b-5ntgunhjqm] {
    opacity: 0.65;
}

@media (max-width: 480px) {
    .pm-page-title__chevron[b-5ntgunhjqm] {
        display: none;
    }
}


/* ─────────────────────────────────────────────────────────────────
   B. CARD / TABLE HEADERS — Fix via :root override on the token rule
      The --table-head-bg is now a gradient in the token, but rules
      using `background: var(--table-head-bg)` without !important
      need the gradient to propagate. The ones with !important
      need an explicit override here at highest specificity.
   ───────────────────────────────────────────────────────────────── */

/* All card heads in light mode — explicit gradient, beats token */
html:not([data-bs-theme="dark"]) .pm-card-head[b-5ntgunhjqm],
html:not([data-bs-theme="dark"]) .pricing-summary-card__head[b-5ntgunhjqm],
html:not([data-bs-theme="dark"]) .pricing-breakdown-card__header[b-5ntgunhjqm],
html:not([data-bs-theme="dark"]) .sheet-opt-card__header[b-5ntgunhjqm],
html:not([data-bs-theme="dark"]) .pricing-profile-trace-card__header[b-5ntgunhjqm],
html:not([data-bs-theme="dark"]) .pm-modal-header[b-5ntgunhjqm],
html:not([data-bs-theme="dark"]) .mat-detail-modal-header[b-5ntgunhjqm],
html:not([data-bs-theme="dark"]) .sheet-opt-modal-header[b-5ntgunhjqm] {
    background: linear-gradient(135deg, #002855 0%, #1a4a8a 65%, #2260a8 100%) !important;
    color: #ffffff !important;
    border-bottom: 2px solid #F1B828 !important;
}

/* All table th in light mode */
html:not([data-bs-theme="dark"]) .table thead th[b-5ntgunhjqm],
html:not([data-bs-theme="dark"]) .pm-table thead th[b-5ntgunhjqm],
html:not([data-bs-theme="dark"]) .pm-labor-table thead th[b-5ntgunhjqm],
html:not([data-bs-theme="dark"]) .pricing-cost-table thead th[b-5ntgunhjqm],
html:not([data-bs-theme="dark"]) .thickness-override-table thead th[b-5ntgunhjqm] {
    background: linear-gradient(135deg, #002855 0%, #1a4a8a 65%, #2260a8 100%) !important;
    color: #ffffff !important;
    border-bottom: 2px solid #F1B828 !important;
    border-top: none !important;
}

/* Dark mode heads stay deep */
[data-bs-theme="dark"] .pm-card-head[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-summary-card__head[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-breakdown-card__header[b-5ntgunhjqm],
[data-bs-theme="dark"] .sheet-opt-card__header[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-profile-trace-card__header[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-modal-header[b-5ntgunhjqm],
[data-bs-theme="dark"] .mat-detail-modal-header[b-5ntgunhjqm],
[data-bs-theme="dark"] .sheet-opt-modal-header[b-5ntgunhjqm],
[data-theme="dark"] .pm-card-head[b-5ntgunhjqm],
[data-theme="dark"] .pricing-summary-card__head[b-5ntgunhjqm],
[data-theme="dark"] .pricing-breakdown-card__header[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-card__header[b-5ntgunhjqm],
[data-theme="dark"] .pricing-profile-trace-card__header[b-5ntgunhjqm],
[data-theme="dark"] .pm-modal-header[b-5ntgunhjqm],
[data-theme="dark"] .mat-detail-modal-header[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-modal-header[b-5ntgunhjqm] {
    background: linear-gradient(135deg, #0b1322 0%, #16233b 100%) !important;
    border-bottom: 2px solid #F1B828 !important;
}

[data-bs-theme="dark"] .table thead th[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-table thead th[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-labor-table thead th[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-cost-table thead th[b-5ntgunhjqm],
[data-bs-theme="dark"] .thickness-override-table thead th[b-5ntgunhjqm],
[data-theme="dark"] .table thead th[b-5ntgunhjqm],
[data-theme="dark"] .pm-table thead th[b-5ntgunhjqm],
[data-theme="dark"] .pm-labor-table thead th[b-5ntgunhjqm],
[data-theme="dark"] .pricing-cost-table thead th[b-5ntgunhjqm],
[data-theme="dark"] .thickness-override-table thead th[b-5ntgunhjqm] {
    background: linear-gradient(135deg, #0b1322 0%, #16233b 100%) !important;
    color: #F1B828 !important;
    border-bottom: 2px solid #F1B828 !important;
}


/* ─────────────────────────────────────────────────────────────────
   C. INPUTS — Token-level fix + overhaul section override
      The "Better input shell" at ~line 2817 re-applies border-radius
      and box-shadow. Override here to guarantee gradient background.
   ───────────────────────────────────────────────────────────────── */

/* Light mode — force gradient on ALL inputs regardless of prior rules */
html:not([data-bs-theme="dark"]) .form-control[b-5ntgunhjqm],
html:not([data-bs-theme="dark"]) .pm-input[b-5ntgunhjqm] {
    background: linear-gradient(170deg, #ffffff 0%, #f3f7ff 100%) !important;
    border: 1.5px solid rgba(0,40,85,0.22) !important;
    border-radius: 10px !important;
    color: #001e42 !important;
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.04), 0 1px 0 rgba(255,255,255,0.95) !important;
}

    html:not([data-bs-theme="dark"]) .form-control:hover[b-5ntgunhjqm],
    html:not([data-bs-theme="dark"]) .pm-input:hover[b-5ntgunhjqm] {
        background: linear-gradient(170deg, #edf4ff 0%, #e2ecf8 100%) !important;
        border-color: rgba(0,40,85,0.36) !important;
    }

    html:not([data-bs-theme="dark"]) .form-control:focus[b-5ntgunhjqm],
    html:not([data-bs-theme="dark"]) .pm-input:focus[b-5ntgunhjqm] {
        background: #ffffff !important;
        border-color: #F1B828 !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.22), inset 0 1px 2px rgba(0,0,0,0.02) !important;
        outline: none !important;
    }

    html:not([data-bs-theme="dark"]) .form-control:disabled[b-5ntgunhjqm],
    html:not([data-bs-theme="dark"]) .pm-input:disabled[b-5ntgunhjqm] {
        background: rgba(0,40,85,0.05) !important;
        border-color: rgba(0,40,85,0.14) !important;
        color: rgba(0,30,66,0.50) !important;
        box-shadow: none !important;
    }

/* Selects keep the same treatment */
html:not([data-bs-theme="dark"]) .form-select[b-5ntgunhjqm] {
    background-color: #f5f9ff !important;
    border: 1.5px solid rgba(0,40,85,0.22) !important;
    border-radius: 10px !important;
    color: #001e42 !important;
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.04), 0 1px 0 rgba(255,255,255,0.95) !important;
}

    html:not([data-bs-theme="dark"]) .form-select:hover[b-5ntgunhjqm] {
        background-color: #edf4ff !important;
        border-color: rgba(0,40,85,0.36) !important;
    }

    html:not([data-bs-theme="dark"]) .form-select:focus[b-5ntgunhjqm] {
        background-color: #ffffff !important;
        border-color: #F1B828 !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.22) !important;
    }

/* Dark mode inputs */
[data-bs-theme="dark"] .form-control[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-input[b-5ntgunhjqm],
[data-theme="dark"] .form-control[b-5ntgunhjqm],
[data-theme="dark"] .pm-input[b-5ntgunhjqm] {
    background: linear-gradient(170deg, rgba(255,255,255,0.09) 0%, rgba(255,255,255,0.05) 100%) !important;
    border: 1.5px solid rgba(255,255,255,0.14) !important;
    border-radius: 10px !important;
    color: rgba(255,255,255,0.90) !important;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.30) !important;
}

    [data-bs-theme="dark"] .form-control:hover[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-input:hover[b-5ntgunhjqm],
    [data-theme="dark"] .form-control:hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-input:hover[b-5ntgunhjqm] {
        background: linear-gradient(170deg, rgba(255,255,255,0.13) 0%, rgba(255,255,255,0.08) 100%) !important;
        border-color: rgba(255,255,255,0.24) !important;
    }

    [data-bs-theme="dark"] .form-control:focus[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-input:focus[b-5ntgunhjqm],
    [data-theme="dark"] .form-control:focus[b-5ntgunhjqm],
    [data-theme="dark"] .pm-input:focus[b-5ntgunhjqm] {
        background: rgba(255,255,255,0.12) !important;
        border-color: rgba(241,184,40,0.65) !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.18), inset 0 1px 3px rgba(0,0,0,0.24) !important;
        outline: none !important;
    }

[data-bs-theme="dark"] .form-select[b-5ntgunhjqm],
[data-theme="dark"] .form-select[b-5ntgunhjqm] {
    background-color: rgba(13, 25, 50, 0.85) !important;
    border: 1.5px solid rgba(255,255,255,0.14) !important;
    border-radius: 10px !important;
    color: rgba(255,255,255,0.90) !important;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.30) !important;
}

    [data-bs-theme="dark"] .form-select:hover[b-5ntgunhjqm],
    [data-theme="dark"] .form-select:hover[b-5ntgunhjqm] {
        background-color: rgba(16, 30, 58, 0.92) !important;
        border-color: rgba(255,255,255,0.24) !important;
    }

    [data-bs-theme="dark"] .form-select:focus[b-5ntgunhjqm],
    [data-theme="dark"] .form-select:focus[b-5ntgunhjqm] {
        background-color: rgba(16, 30, 58, 0.95) !important;
        border-color: rgba(241,184,40,0.65) !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.18) !important;
    }

/* Pricing settings grid inputs — taller, slightly larger text */
.pm-pricing-settings-grid .pm-input[b-5ntgunhjqm],
.pm-pricing-settings-grid .form-control[b-5ntgunhjqm] {
    min-height: 48px !important;
    padding: 0.82rem 1rem !important;
    font-size: 0.94rem !important;
    font-weight: 600 !important;
}


/* ─────────────────────────────────────────────────────────────────
   D. ACTIVE TAB — Strong gold indicator, always visible
   ───────────────────────────────────────────────────────────────── */

/* Light mode: navy background with gold underline */
html:not([data-bs-theme="dark"]) .pm-tab--active[b-5ntgunhjqm] {
    background: #002855 !important;
    color: #ffffff !important;
    border-color: transparent !important;
    box-shadow: 0 3px 12px rgba(0,40,85,0.28), 0 0 0 1.5px rgba(241,184,40,0.55) !important;
    font-weight: 800;
}

    /* Gold bottom bar on active tab in light mode */
    html:not([data-bs-theme="dark"]) .pm-tab--active[b-5ntgunhjqm]::after {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        bottom: 2px !important;
        left: 15% !important;
        right: 15% !important;
        height: 2px !important;
        border-radius: 2px !important;
        background: #F1B828 !important;
        opacity: 1 !important;
        color: transparent !important;
        font-size: 0 !important;
    }

/* Dark mode: gold background, dark text — already good */
[data-bs-theme="dark"] .pm-tab--active[b-5ntgunhjqm],
[data-theme="dark"] .pm-tab--active[b-5ntgunhjqm] {
    background: #F1B828 !important;
    color: #001535 !important;
    border-color: transparent !important;
    box-shadow: 0 3px 14px rgba(241,184,40,0.35), 0 0 0 1.5px rgba(241,184,40,0.50) !important;
    font-weight: 800;
}

    [data-bs-theme="dark"] .pm-tab--active[b-5ntgunhjqm]::after,
    [data-theme="dark"] .pm-tab--active[b-5ntgunhjqm]::after {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        bottom: 2px !important;
        left: 15% !important;
        right: 15% !important;
        height: 2px !important;
        border-radius: 2px !important;
        background: rgba(0,21,53,0.40) !important;
        opacity: 1 !important;
        color: transparent !important;
        font-size: 0 !important;
    }

/* Inactive tabs: clearer in light mode */
html:not([data-bs-theme="dark"]) .pm-tab:not(.pm-tab--active)[b-5ntgunhjqm] {
    color: rgba(0,40,85,0.65) !important;
}

    html:not([data-bs-theme="dark"]) .pm-tab:not(.pm-tab--active):hover[b-5ntgunhjqm] {
        color: #002855 !important;
        background: rgba(0,40,85,0.09) !important;
    }


/* ─────────────────────────────────────────────────────────────────
   E. FIXED CUT LENGTH — Visible in dark mode
   ───────────────────────────────────────────────────────────────── */

/* The "—" and "calc from legs" text in mount types table */
[data-bs-theme="dark"] td .text-muted[b-5ntgunhjqm],
[data-theme="dark"] td .text-muted[b-5ntgunhjqm] {
    color: rgba(255,255,255,0.52) !important;
}

    /* Small text in table cells — readable in dark */
    [data-bs-theme="dark"] td .text-muted.small[b-5ntgunhjqm],
    [data-bs-theme="dark"] td small.text-muted[b-5ntgunhjqm],
    [data-theme="dark"] td .text-muted.small[b-5ntgunhjqm],
    [data-theme="dark"] td small.text-muted[b-5ntgunhjqm] {
        color: rgba(255,255,255,0.55) !important;
        font-size: 0.82rem !important;
    }

/* Specifically the — dash used for N/A values */
[data-bs-theme="dark"] .pm-table td span.text-muted[b-5ntgunhjqm],
[data-theme="dark"] .pm-table td span.text-muted[b-5ntgunhjqm] {
    color: rgba(255,255,255,0.55) !important;
}

/* "Fixed" badge in Leg B → Thickness column (bg-secondary dark) */
[data-bs-theme="dark"] .badge.bg-secondary[b-5ntgunhjqm],
[data-theme="dark"] .badge.bg-secondary[b-5ntgunhjqm] {
    background: rgba(255,255,255,0.18) !important;
    color: rgba(255,255,255,0.92) !important;
    border: 1px solid rgba(255,255,255,0.22) !important;
}

/* "No" badge */
[data-bs-theme="dark"] td .badge.bg-secondary[b-5ntgunhjqm],
[data-theme="dark"] td .badge.bg-secondary[b-5ntgunhjqm] {
    background: rgba(255,255,255,0.14) !important;
    color: rgba(255,255,255,0.88) !important;
}

/* pm-td-muted — used in some cells as direct class */
[data-bs-theme="dark"] .pm-td-muted[b-5ntgunhjqm],
[data-theme="dark"] .pm-td-muted[b-5ntgunhjqm] {
    color: rgba(255,255,255,0.55) !important;
}


/* ─────────────────────────────────────────────────────────────────
   F. PRICING TEST INPUTS — Height/style in the left panel
   ───────────────────────────────────────────────────────────────── */

.pm-pricing-inputs .form-control[b-5ntgunhjqm],
.pm-pricing-inputs .pm-input[b-5ntgunhjqm] {
    min-height: 44px !important;
    font-size: 0.90rem !important;
}

.pm-pricing-inputs .form-select[b-5ntgunhjqm] {
    min-height: 44px !important;
    font-size: 0.90rem !important;
}

/* Locked/disabled inputs in pricing test */
html:not([data-bs-theme="dark"]) .pm-pricing-inputs .form-control:disabled[b-5ntgunhjqm] {
    background: rgba(0,40,85,0.04) !important;
    color: rgba(0,30,66,0.55) !important;
    border-color: rgba(0,40,85,0.12) !important;
}


/* ═══════════════════════════════════════════════════════════════════
   39. COMPREHENSIVE FINAL PASS
   ═══════════════════════════════════════════════════════════════════ */


/* ─────────────────────────────────────────────────────────────────
   A. DROPDOWN DARK MODE — Nuclear fix using option element bg
      Browsers inherit option bg from the OS. Force dark bg on
      the select element itself so open state is dark too.
   ───────────────────────────────────────────────────────────────── */

[data-bs-theme="dark"] select.form-select[b-5ntgunhjqm],
[data-bs-theme="dark"] select.pm-select[b-5ntgunhjqm],
[data-theme="dark"] select.form-select[b-5ntgunhjqm],
[data-theme="dark"] select.pm-select[b-5ntgunhjqm] {
    background-color: #0d1932 !important;
    color: rgba(255,255,255,0.90) !important;
}

    [data-bs-theme="dark"] select.form-select option[b-5ntgunhjqm],
    [data-bs-theme="dark"] select.pm-select option[b-5ntgunhjqm],
    [data-theme="dark"] select.form-select option[b-5ntgunhjqm],
    [data-theme="dark"] select.pm-select option[b-5ntgunhjqm] {
        background-color: #0d1932 !important;
        color: rgba(255,255,255,0.90) !important;
    }

/* Also catch plain <select> tags that don't have form-select class */
[data-bs-theme="dark"] select[b-5ntgunhjqm],
[data-theme="dark"] select[b-5ntgunhjqm] {
    background-color: #0d1932 !important;
    color: rgba(255,255,255,0.90) !important;
}

    [data-bs-theme="dark"] select option[b-5ntgunhjqm],
    [data-theme="dark"] select option[b-5ntgunhjqm] {
        background-color: #0d1932 !important;
        color: rgba(255,255,255,0.90) !important;
    }


/* ─────────────────────────────────────────────────────────────────
   B. INPUT STYLE — Match the bend allowance form-control style
      Goal: white bg with slight inset shadow, clear border,
      generous padding, 10px radius, gold focus ring.
      Applied everywhere: pricing settings, pricing test, modals.
   ───────────────────────────────────────────────────────────────── */

/* The canonical "form-control inside pm-card-body" look */
.pm-card-body .form-control[b-5ntgunhjqm],
.pm-card-body .pm-input[b-5ntgunhjqm],
.pm-card-body input[type="number"][b-5ntgunhjqm],
.pm-card-body input[type="text"][b-5ntgunhjqm],
.pm-card-body input[type="email"][b-5ntgunhjqm] {
    min-height: 46px !important;
    padding: 10px 14px !important;
    background: #ffffff !important;
    border: 1.5px solid rgba(0,40,85,0.20) !important;
    border-radius: 10px !important;
    color: #001e42 !important;
    font-size: 0.90rem !important;
    font-weight: 500 !important;
    box-shadow: inset 0 2px 4px rgba(0,40,85,0.06), 0 1px 0 rgba(255,255,255,1) !important;
    transition: border-color .14s, box-shadow .14s !important;
}

    .pm-card-body .form-control:hover[b-5ntgunhjqm],
    .pm-card-body .pm-input:hover[b-5ntgunhjqm],
    .pm-card-body input[type="number"]:hover[b-5ntgunhjqm],
    .pm-card-body input[type="text"]:hover[b-5ntgunhjqm] {
        border-color: rgba(0,40,85,0.36) !important;
        background: #fafcff !important;
    }

    .pm-card-body .form-control:focus[b-5ntgunhjqm],
    .pm-card-body .pm-input:focus[b-5ntgunhjqm],
    .pm-card-body input[type="number"]:focus[b-5ntgunhjqm],
    .pm-card-body input[type="text"]:focus[b-5ntgunhjqm] {
        border-color: #F1B828 !important;
        background: #ffffff !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.22), inset 0 2px 4px rgba(0,40,85,0.04) !important;
        outline: none !important;
    }

    .pm-card-body .form-control:disabled[b-5ntgunhjqm],
    .pm-card-body .pm-input:disabled[b-5ntgunhjqm] {
        background: rgba(0,40,85,0.04) !important;
        color: rgba(0,30,66,0.45) !important;
        border-color: rgba(0,40,85,0.12) !important;
        box-shadow: none !important;
        cursor: not-allowed !important;
    }

/* Dark mode card-body inputs */
[data-bs-theme="dark"] .pm-card-body .form-control[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-card-body .pm-input[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-card-body input[type="number"][b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-card-body input[type="text"][b-5ntgunhjqm],
[data-theme="dark"] .pm-card-body .form-control[b-5ntgunhjqm],
[data-theme="dark"] .pm-card-body .pm-input[b-5ntgunhjqm],
[data-theme="dark"] .pm-card-body input[type="number"][b-5ntgunhjqm],
[data-theme="dark"] .pm-card-body input[type="text"][b-5ntgunhjqm] {
    background: rgba(255,255,255,0.07) !important;
    border-color: rgba(255,255,255,0.16) !important;
    color: rgba(255,255,255,0.90) !important;
    box-shadow: inset 0 2px 4px rgba(0,0,0,0.22) !important;
}

    [data-bs-theme="dark"] .pm-card-body .form-control:hover[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-card-body .pm-input:hover[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-card-body input[type="number"]:hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-card-body .form-control:hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-card-body .pm-input:hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-card-body input[type="number"]:hover[b-5ntgunhjqm] {
        background: rgba(255,255,255,0.10) !important;
        border-color: rgba(255,255,255,0.26) !important;
    }

    [data-bs-theme="dark"] .pm-card-body .form-control:focus[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-card-body .pm-input:focus[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-card-body input[type="number"]:focus[b-5ntgunhjqm],
    [data-theme="dark"] .pm-card-body .form-control:focus[b-5ntgunhjqm],
    [data-theme="dark"] .pm-card-body .pm-input:focus[b-5ntgunhjqm],
    [data-theme="dark"] .pm-card-body input[type="number"]:focus[b-5ntgunhjqm] {
        background: rgba(255,255,255,0.12) !important;
        border-color: rgba(241,184,40,0.70) !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.18), inset 0 2px 4px rgba(0,0,0,0.18) !important;
        outline: none !important;
    }

    [data-bs-theme="dark"] .pm-card-body .form-control:disabled[b-5ntgunhjqm],
    [data-theme="dark"] .pm-card-body .form-control:disabled[b-5ntgunhjqm] {
        background: rgba(255,255,255,0.03) !important;
        color: rgba(255,255,255,0.35) !important;
        border-color: rgba(255,255,255,0.08) !important;
        box-shadow: none !important;
    }

/* Pricing settings specifics — slightly taller */
.pm-pricing-settings-grid .pm-card-body .pm-input[b-5ntgunhjqm],
.pm-pricing-settings-grid .pm-card-body .form-control[b-5ntgunhjqm] {
    min-height: 50px !important;
    padding: 11px 14px !important;
    font-size: 0.94rem !important;
    font-weight: 600 !important;
}

/* Pricing test inputs — same height as bend form */
.pm-pricing-inputs .pm-card-body .pm-input[b-5ntgunhjqm],
.pm-pricing-inputs .pm-card-body .form-control[b-5ntgunhjqm] {
    min-height: 46px !important;
    font-size: 0.90rem !important;
}


/* ─────────────────────────────────────────────────────────────────
   C. PANEL CONFIGURATIONS — Complete visual redesign
      Goal: clean table-like list, no messy card-body padding,
      clear type grouping, sharp row actions.
   ───────────────────────────────────────────────────────────────── */

/* Reset card structure for config section */
.pm-content-area--configurations .pm-card[b-5ntgunhjqm] {
    border-radius: 14px !important;
    overflow: hidden !important;
    margin-bottom: 1.25rem !important;
    border: 1px solid var(--panel-border) !important;
    box-shadow: 0 2px 12px rgba(0,30,66,0.07), 0 1px 3px rgba(0,30,66,0.04) !important;
}

[data-bs-theme="dark"] .pm-content-area--configurations .pm-card[b-5ntgunhjqm],
[data-theme="dark"] .pm-content-area--configurations .pm-card[b-5ntgunhjqm] {
    box-shadow: 0 4px 20px rgba(0,0,0,0.30), 0 1px 4px rgba(0,0,0,0.18) !important;
    border-color: rgba(255,255,255,0.08) !important;
}

/* Card head — panel type group label */
.pm-content-area--configurations .pm-card-head[b-5ntgunhjqm] {
    background: linear-gradient(135deg, #002855 0%, #1a4a8a 60%, #2260a8 100%) !important;
    border-bottom: 2px solid #F1B828 !important;
    padding: 0 !important;
    min-height: 0 !important;
    display: block !important;
}

[data-bs-theme="dark"] .pm-content-area--configurations .pm-card-head[b-5ntgunhjqm],
[data-theme="dark"] .pm-content-area--configurations .pm-card-head[b-5ntgunhjqm] {
    background: linear-gradient(135deg, #0b1322 0%, #162236 100%) !important;
}

/* Inner header row with type name + count */
.pm-content-area--configurations .pm-card-head .pm-card-title[b-5ntgunhjqm] {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
    padding: 10px 18px !important;
    font-size: 0.70rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.13em !important;
    text-transform: uppercase !important;
    color: #ffffff !important;
}

/* Count badge in header */
.pm-content-area--configurations .pm-badge--neutral[b-5ntgunhjqm] {
    background: rgba(255,255,255,0.16) !important;
    color: rgba(255,255,255,0.92) !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    font-size: 0.60rem !important;
    padding: 0.12rem 0.52rem !important;
    border-radius: 999px !important;
    font-weight: 800 !important;
    letter-spacing: 0.04em !important;
}

/* Flush card body — no padding, rows go edge to edge */
.pm-content-area--configurations .pm-card > .pm-card-body[b-5ntgunhjqm] {
    padding: 0 !important;
}

/* ── Each configuration row ── */
.pm-content-area--configurations .pm-config-row[b-5ntgunhjqm] {
    display: grid !important;
    grid-template-columns: 1fr auto !important;
    align-items: center !important;
    gap: 16px !important;
    padding: 11px 18px !important;
    border-bottom: 1px solid var(--divider) !important;
    border-left: 3px solid transparent !important;
    min-height: 50px !important;
    transition: background 0.10s ease, border-left-color 0.10s ease !important;
}

    .pm-content-area--configurations .pm-config-row:last-child[b-5ntgunhjqm] {
        border-bottom: none !important;
    }

    .pm-content-area--configurations .pm-config-row:nth-child(even)[b-5ntgunhjqm] {
        background: var(--table-row-odd) !important;
    }

    .pm-content-area--configurations .pm-config-row:nth-child(odd)[b-5ntgunhjqm] {
        background: var(--table-row-even) !important;
    }

    .pm-content-area--configurations .pm-config-row:hover[b-5ntgunhjqm] {
        background: var(--table-row-hover) !important;
        border-left-color: #F1B828 !important;
    }

/* Name column */
.pm-content-area--configurations .pm-config-row__name[b-5ntgunhjqm] {
    display: flex !important;
    align-items: center !important;
    flex-wrap: wrap !important;
    gap: 5px !important;
    min-width: 0 !important;
}

    .pm-content-area--configurations .pm-config-row__name strong[b-5ntgunhjqm] {
        font-size: 0.88rem !important;
        font-weight: 700 !important;
        color: var(--text-primary) !important;
        white-space: nowrap !important;
    }

    .pm-content-area--configurations .pm-config-row__name .text-muted[b-5ntgunhjqm] {
        font-size: 0.78rem !important;
        color: var(--text-muted) !important;
    }

    /* Pill badges — compact and clean */
    .pm-content-area--configurations .pm-config-row__name .badge[b-5ntgunhjqm] {
        font-size: 0.58rem !important;
        font-weight: 800 !important;
        letter-spacing: 0.05em !important;
        text-transform: uppercase !important;
        padding: 0.16rem 0.50rem !important;
        border-radius: 999px !important;
        line-height: 1.4 !important;
    }

/* F+C badge: solid navy */
.pm-content-area--configurations .badge.bg-primary[b-5ntgunhjqm] {
    background: #002855 !important;
    color: #ffffff !important;
    border: none !important;
}

/* Profile badge: teal-blue tint */
.pm-content-area--configurations .badge.bg-info[b-5ntgunhjqm] {
    background: rgba(0,100,200,0.12) !important;
    color: #004ea0 !important;
    border: 1px solid rgba(0,100,200,0.28) !important;
}

/* Cover badge: muted grey-blue */
.pm-content-area--configurations .badge.bg-secondary[b-5ntgunhjqm] {
    background: rgba(0,40,85,0.10) !important;
    color: #003572 !important;
    border: 1px solid rgba(0,40,85,0.20) !important;
}

/* SDEC badge: red-orange */
.pm-content-area--configurations .badge.bg-danger[b-5ntgunhjqm] {
    background: rgba(200,40,40,0.10) !important;
    color: #a01818 !important;
    border: 1px solid rgba(200,40,40,0.28) !important;
}

/* Dark mode badge overrides */
[data-bs-theme="dark"] .pm-content-area--configurations .badge.bg-primary[b-5ntgunhjqm],
[data-theme="dark"] .pm-content-area--configurations .badge.bg-primary[b-5ntgunhjqm] {
    background: rgba(30,80,160,0.45) !important;
    color: #bfdbfe !important;
    border: 1px solid rgba(96,165,250,0.25) !important;
}

[data-bs-theme="dark"] .pm-content-area--configurations .badge.bg-info[b-5ntgunhjqm],
[data-theme="dark"] .pm-content-area--configurations .badge.bg-info[b-5ntgunhjqm] {
    background: rgba(96,165,250,0.16) !important;
    color: #93c5fd !important;
    border: 1px solid rgba(96,165,250,0.28) !important;
}

[data-bs-theme="dark"] .pm-content-area--configurations .badge.bg-secondary[b-5ntgunhjqm],
[data-theme="dark"] .pm-content-area--configurations .badge.bg-secondary[b-5ntgunhjqm] {
    background: rgba(255,255,255,0.10) !important;
    color: rgba(255,255,255,0.78) !important;
    border: 1px solid rgba(255,255,255,0.16) !important;
}

[data-bs-theme="dark"] .pm-content-area--configurations .badge.bg-danger[b-5ntgunhjqm],
[data-theme="dark"] .pm-content-area--configurations .badge.bg-danger[b-5ntgunhjqm] {
    background: rgba(248,113,113,0.14) !important;
    color: #fca5a5 !important;
    border: 1px solid rgba(248,113,113,0.26) !important;
}

/* Actions column */
.pm-content-area--configurations .pm-config-row__actions[b-5ntgunhjqm] {
    display: flex !important;
    align-items: center !important;
    gap: 6px !important;
    flex-shrink: 0 !important;
    white-space: nowrap !important;
}

/* Action buttons — tight and consistent */
.pm-content-area--configurations .pm-action-btn[b-5ntgunhjqm] {
    min-height: 34px !important;
    font-size: 0.67rem !important;
    padding: 0.28rem 0.68rem !important;
    border-radius: 8px !important;
    gap: 4px !important;
}

/* Test pricing: blue-tinted outline */
.pm-content-area--configurations .pm-action-btn--test[b-5ntgunhjqm] {
    border-color: rgba(0,80,200,0.36) !important;
    color: #0050c8 !important;
    background: rgba(0,80,200,0.05) !important;
}

    .pm-content-area--configurations .pm-action-btn--test:hover[b-5ntgunhjqm] {
        background: #0050c8 !important;
        color: #ffffff !important;
        border-color: transparent !important;
    }

/* Edit: navy outline */
.pm-content-area--configurations .pm-action-btn--edit[b-5ntgunhjqm] {
    border-color: rgba(0,40,85,0.36) !important;
    color: #002855 !important;
    background: rgba(0,40,85,0.05) !important;
}

    .pm-content-area--configurations .pm-action-btn--edit:hover[b-5ntgunhjqm] {
        background: #002855 !important;
        color: #ffffff !important;
        border-color: transparent !important;
    }

/* Dark action buttons */
[data-bs-theme="dark"] .pm-content-area--configurations .pm-action-btn--test[b-5ntgunhjqm],
[data-theme="dark"] .pm-content-area--configurations .pm-action-btn--test[b-5ntgunhjqm] {
    border-color: rgba(96,165,250,0.36) !important;
    color: #93c5fd !important;
    background: rgba(96,165,250,0.07) !important;
}

    [data-bs-theme="dark"] .pm-content-area--configurations .pm-action-btn--test:hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-content-area--configurations .pm-action-btn--test:hover[b-5ntgunhjqm] {
        background: rgba(96,165,250,0.22) !important;
        color: #dbeafe !important;
        border-color: rgba(96,165,250,0.55) !important;
    }

[data-bs-theme="dark"] .pm-content-area--configurations .pm-action-btn--edit[b-5ntgunhjqm],
[data-theme="dark"] .pm-content-area--configurations .pm-action-btn--edit[b-5ntgunhjqm] {
    border-color: rgba(241,184,40,0.36) !important;
    color: #ffd56d !important;
    background: rgba(241,184,40,0.07) !important;
}

    [data-bs-theme="dark"] .pm-content-area--configurations .pm-action-btn--edit:hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-content-area--configurations .pm-action-btn--edit:hover[b-5ntgunhjqm] {
        background: rgba(241,184,40,0.20) !important;
        color: #ffe89f !important;
        border-color: rgba(241,184,40,0.55) !important;
    }

/* "No configurations" empty state */
.pm-content-area--configurations .pm-card-body > .text-muted[b-5ntgunhjqm] {
    display: block !important;
    padding: 16px 18px !important;
    font-size: 0.82rem !important;
    font-style: italic !important;
    color: var(--text-muted) !important;
}


/* ─────────────────────────────────────────────────────────────────
   D. LABELS — All contexts covered, both modes
   ───────────────────────────────────────────────────────────────── */

/* Eyebrow labels above section titles */
.pm-section-eyebrow[b-5ntgunhjqm] {
    font-size: 0.64rem !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    color: var(--iac-gold) !important;
    margin-bottom: 2px !important;
}

/* Section title */
.pm-section-title[b-5ntgunhjqm] {
    font-size: 1.10rem !important;
    font-weight: 800 !important;
    color: var(--text-primary) !important;
}

/* Section subtitle */
.pm-section-sub[b-5ntgunhjqm] {
    font-size: 0.78rem !important;
    color: var(--text-muted) !important;
    margin-top: 3px !important;
}

[data-bs-theme="dark"] .pm-section-sub[b-5ntgunhjqm],
[data-theme="dark"] .pm-section-sub[b-5ntgunhjqm] {
    color: rgba(255,255,255,0.48) !important;
}

/* Form section titles with gold left border */
.pm-form-section-title[b-5ntgunhjqm] {
    font-size: 0.67rem !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.10em !important;
    color: var(--section-label-text) !important;
    padding: 5px 0 5px 10px !important;
    border-left: 3px solid #F1B828 !important;
    margin-bottom: 10px !important;
}

[data-bs-theme="dark"] .pm-form-section-title[b-5ntgunhjqm],
[data-theme="dark"] .pm-form-section-title[b-5ntgunhjqm] {
    color: rgba(241,184,40,0.90) !important;
}

/* All pm-label in dark mode */
[data-bs-theme="dark"] .pm-label[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-field-label[b-5ntgunhjqm],
[data-theme="dark"] .pm-label[b-5ntgunhjqm],
[data-theme="dark"] .pm-field-label[b-5ntgunhjqm] {
    color: rgba(241,184,40,0.88) !important;
}

/* form-label in dark mode (catches bend table, modal forms, etc.) */
[data-bs-theme="dark"] .form-label[b-5ntgunhjqm],
[data-theme="dark"] .form-label[b-5ntgunhjqm] {
    color: rgba(241,184,40,0.88) !important;
}

/* small labels in pricing test ("Face", "Cover") */
[data-bs-theme="dark"] label.pm-label[b-5ntgunhjqm],
[data-bs-theme="dark"] label.form-label[b-5ntgunhjqm],
[data-theme="dark"] label.pm-label[b-5ntgunhjqm],
[data-theme="dark"] label.form-label[b-5ntgunhjqm] {
    color: rgba(241,184,40,0.88) !important;
}

/* "small" text throughout — dark mode */
[data-bs-theme="dark"] .text-muted[b-5ntgunhjqm],
[data-bs-theme="dark"] small.text-muted[b-5ntgunhjqm],
[data-theme="dark"] .text-muted[b-5ntgunhjqm],
[data-theme="dark"] small.text-muted[b-5ntgunhjqm] {
    color: rgba(255,255,255,0.48) !important;
}

/* Hint text */
[data-bs-theme="dark"] .pm-hint[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-input-hint[b-5ntgunhjqm],
[data-theme="dark"] .pm-hint[b-5ntgunhjqm],
[data-theme="dark"] .pm-input-hint[b-5ntgunhjqm] {
    color: rgba(255,255,255,0.44) !important;
}


/* ═══════════════════════════════════════════════════════════════════
   39. MOCKUP CANONICAL OVERRIDE — FINAL AUTHORITY
   Matches the approved interactive mockup exactly.
   This block is last in the file and wins all cascade conflicts.
   ═══════════════════════════════════════════════════════════════════ */


/* ─────────────────────────────────────────────────────────────────
   A. DESIGN TOKENS — Mockup-accurate values
   ───────────────────────────────────────────────────────────────── */
:root[b-5ntgunhjqm],
:root[data-bs-theme="light"][b-5ntgunhjqm],
[data-theme="light"][b-5ntgunhjqm] {
    --table-head-bg: #002855;
    --table-head-text: #ffffff;
    --table-row-odd: #f3f6fb;
    --table-row-even: #ffffff;
    --table-row-hover: rgba(241,184,40,0.06);
    --panel-border: rgba(0,40,85,0.13);
    --divider: rgba(0,40,85,0.09);
    --tab-strip-bg: #e4e9f4;
    --tab-inactive-text: rgba(0,40,85,0.52);
    --tab-active-bg: #002855;
    --tab-active-text: #ffffff;
    /* Button gradient tokens */
    --pm-btn-primary-start: #0e4080;
    --pm-btn-primary-mid: #002855;
    --pm-btn-primary-end: #001535;
}

    :root[data-bs-theme="dark"][b-5ntgunhjqm],
    [data-theme="dark"][b-5ntgunhjqm] {
        --table-head-bg: linear-gradient(135deg,#0b1322 0%,#16233b 100%);
        --table-head-text: #F1B828;
        --panel-border: rgba(255,255,255,0.08);
        --divider: rgba(255,255,255,0.07);
        --tab-strip-bg: rgba(255,255,255,0.04);
        --tab-inactive-text: rgba(255,255,255,0.46);
        --tab-active-bg: #F1B828;
        --tab-active-text: #001535;
    }


/* ─────────────────────────────────────────────────────────────────
   B. PAGE TITLE — Gradient banner with gold left bar
   ───────────────────────────────────────────────────────────────── */
h2.pm-page-title[b-5ntgunhjqm],
.pm-page-title[b-5ntgunhjqm] {
    position: relative !important;
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    min-height: 72px !important;
    margin-bottom: 20px !important;
    padding: 14px 20px 14px 16px !important;
    border: 1px solid rgba(0,40,85,0.14) !important;
    border-left: 0 !important;
    border-radius: 18px !important;
    color: #ffffff !important;
    background: linear-gradient(135deg,#002855 0%,#0f3a73 58%,#184c90 100%) !important;
    box-shadow: 0 18px 40px rgba(0,30,66,0.14),inset 0 1px 0 rgba(255,255,255,0.16) !important;
    overflow: hidden !important;
    font-size: 1.15rem !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
}

    h2.pm-page-title[b-5ntgunhjqm]::before,
    .pm-page-title[b-5ntgunhjqm]::before {
        content: "" !important;
        width: 4px !important;
        align-self: stretch !important;
        border-radius: 999px !important;
        background: linear-gradient(180deg,#f1b828 0%,#ffd56d 100%) !important;
        flex-shrink: 0 !important;
    }

    h2.pm-page-title[b-5ntgunhjqm]::after,
    .pm-page-title[b-5ntgunhjqm]::after {
        content: none !important;
        display: none !important;
    }

[data-bs-theme="dark"] h2.pm-page-title[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-page-title[b-5ntgunhjqm],
[data-theme="dark"] h2.pm-page-title[b-5ntgunhjqm],
[data-theme="dark"] .pm-page-title[b-5ntgunhjqm] {
    background: linear-gradient(135deg,#091220 0%,#102039 58%,#17345d 100%) !important;
    box-shadow: 0 22px 48px rgba(0,0,0,0.44),inset 0 1px 0 rgba(255,255,255,0.05) !important;
    border-color: rgba(255,255,255,0.08) !important;
}

.pm-page-title__chevron[b-5ntgunhjqm] {
    display: inline-block !important;
    color: #F1B828 !important;
    font-size: 0.85em !important;
    font-weight: 400 !important;
    opacity: 0.75 !important;
    margin-left: 4px !important;
    text-shadow: 0 0 10px rgba(241,184,40,0.50) !important;
    flex-shrink: 0 !important;
    position: static !important;
    transform: none !important;
}


/* ─────────────────────────────────────────────────────────────────
   C. TAB STRIP — Exact mockup spec
   ───────────────────────────────────────────────────────────────── */
.pm-tab-strip[b-5ntgunhjqm] {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: 3px !important;
    padding: 5px !important;
    background: var(--tab-strip-bg) !important;
    border: 1px solid var(--panel-border) !important;
    border-radius: 12px !important;
    margin-bottom: 20px !important;
}

.pm-tab[b-5ntgunhjqm] {
    display: inline-flex !important;
    align-items: center !important;
    gap: 5px !important;
    padding: 7px 14px !important;
    border-radius: 8px !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-transform: uppercase !important;
    color: var(--tab-inactive-text) !important;
    background: transparent !important;
    border: 1px solid transparent !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    transition: color .14s, background .14s, border-color .14s !important;
    position: relative !important;
}

    .pm-tab:hover:not(.pm-tab--active)[b-5ntgunhjqm] {
        background: rgba(0,40,85,0.08) !important;
        border-color: rgba(0,40,85,0.14) !important;
        color: #002855 !important;
    }

[data-bs-theme="dark"] .pm-tab:hover:not(.pm-tab--active)[b-5ntgunhjqm],
[data-theme="dark"] .pm-tab:hover:not(.pm-tab--active)[b-5ntgunhjqm] {
    background: rgba(255,255,255,0.07) !important;
    border-color: rgba(255,255,255,0.12) !important;
    color: rgba(255,255,255,0.92) !important;
}

.pm-tab--active[b-5ntgunhjqm],
html:not([data-bs-theme="dark"]) .pm-tab--active[b-5ntgunhjqm] {
    background: #002855 !important;
    color: #ffffff !important;
    border-color: transparent !important;
    font-weight: 800 !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.18), 0 0 0 1.5px rgba(241,184,40,0.50) inset !important;
}

    .pm-tab--active[b-5ntgunhjqm]::after,
    html:not([data-bs-theme="dark"]) .pm-tab--active[b-5ntgunhjqm]::after {
        content: "" !important;
        display: block !important;
        position: absolute !important;
        bottom: 2px !important;
        left: 15% !important;
        right: 15% !important;
        height: 2px !important;
        border-radius: 2px !important;
        background: #F1B828 !important;
        opacity: 1 !important;
        font-size: 0 !important;
        color: transparent !important;
    }

[data-bs-theme="dark"] .pm-tab--active[b-5ntgunhjqm],
[data-theme="dark"] .pm-tab--active[b-5ntgunhjqm] {
    background: #F1B828 !important;
    color: #001535 !important;
    border-color: transparent !important;
    box-shadow: 0 2px 8px rgba(241,184,40,0.26), 0 0 0 1.5px rgba(241,184,40,0.50) !important;
}

    [data-bs-theme="dark"] .pm-tab--active[b-5ntgunhjqm]::after,
    [data-theme="dark"] .pm-tab--active[b-5ntgunhjqm]::after {
        display: none !important;
    }

.pm-tab-sep[b-5ntgunhjqm] {
    width: 1px !important;
    height: 18px !important;
    background: var(--panel-border) !important;
    flex-shrink: 0 !important;
    margin: 0 3px !important;
}


/* ─────────────────────────────────────────────────────────────────
   D. SECTION HEADER — Clean, no box artefacts
   ───────────────────────────────────────────────────────────────── */
.pm-section-header[b-5ntgunhjqm] {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 12px !important;
    margin-bottom: 16px !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
}

.pm-section-eyebrow[b-5ntgunhjqm] {
    font-size: 10px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.14em !important;
    color: var(--iac-gold) !important;
    margin-bottom: 2px !important;
}

.pm-section-title[b-5ntgunhjqm] {
    font-size: 17px !important;
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    color: var(--text-primary) !important;
    line-height: 1.2 !important;
}

.pm-section-sub[b-5ntgunhjqm] {
    font-size: 12.5px !important;
    font-weight: 400 !important;
    color: var(--text-muted) !important;
    margin-top: 3px !important;
}

[data-bs-theme="dark"] .pm-section-sub[b-5ntgunhjqm],
[data-theme="dark"] .pm-section-sub[b-5ntgunhjqm] {
    color: rgba(255,255,255,0.42) !important;
}


/* ─────────────────────────────────────────────────────────────────
   E. CARDS — Rounded, shadowed, gold-accented headers
   ───────────────────────────────────────────────────────────────── */
.pm-card[b-5ntgunhjqm] {
    background: var(--panel-bg) !important;
    border: 1px solid var(--panel-border) !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    box-shadow: 0 16px 40px rgba(0,25,60,0.08), 0 2px 8px rgba(0,25,60,0.05) !important;
}

[data-bs-theme="dark"] .pm-card[b-5ntgunhjqm],
[data-theme="dark"] .pm-card[b-5ntgunhjqm] {
    box-shadow: 0 18px 48px rgba(0,0,0,0.38), 0 2px 10px rgba(0,0,0,0.24) !important;
}

.pm-card-head[b-5ntgunhjqm] {
    background: linear-gradient(135deg,#002855 0%,#0f3a73 58%,#184c90 100%) !important;
    padding: 10px 16px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 8px !important;
    border-bottom: 2px solid #F1B828 !important;
}

[data-bs-theme="dark"] .pm-card-head[b-5ntgunhjqm],
[data-theme="dark"] .pm-card-head[b-5ntgunhjqm] {
    background: linear-gradient(135deg,#0b1322 0%,#16233b 100%) !important;
    border-bottom: 2px solid #F1B828 !important;
}

.pm-card-head[b-5ntgunhjqm]::after {
    content: none !important;
    display: none !important;
}

.pm-card-title[b-5ntgunhjqm] {
    font-size: 11px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.09em !important;
    color: #ffffff !important;
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
}

.pm-card-icon[b-5ntgunhjqm] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 22px !important;
    height: 22px !important;
    border-radius: 5px !important;
    background: rgba(241,184,40,0.22) !important;
    color: var(--iac-gold) !important;
    font-size: 12px !important;
    flex-shrink: 0 !important;
}

.pm-card-body[b-5ntgunhjqm] {
    padding: 18px !important;
}

.pm-card-body--flush[b-5ntgunhjqm] {
    padding: 0 !important;
}

/* Pricing, breakdown, sheet-opt card heads get same gradient */
.pricing-summary-card__head[b-5ntgunhjqm],
.pricing-breakdown-card__header[b-5ntgunhjqm],
.sheet-opt-card__header[b-5ntgunhjqm],
.pricing-profile-trace-card__header[b-5ntgunhjqm],
.pm-modal-header[b-5ntgunhjqm],
.mat-detail-modal-header[b-5ntgunhjqm],
.sheet-opt-modal-header[b-5ntgunhjqm] {
    background: linear-gradient(135deg,#002855 0%,#0f3a73 58%,#184c90 100%) !important;
    border-bottom: 2px solid #F1B828 !important;
}

[data-bs-theme="dark"] .pricing-summary-card__head[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-breakdown-card__header[b-5ntgunhjqm],
[data-bs-theme="dark"] .sheet-opt-card__header[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-profile-trace-card__header[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-modal-header[b-5ntgunhjqm],
[data-bs-theme="dark"] .mat-detail-modal-header[b-5ntgunhjqm],
[data-bs-theme="dark"] .sheet-opt-modal-header[b-5ntgunhjqm],
[data-theme="dark"] .pricing-summary-card__head[b-5ntgunhjqm],
[data-theme="dark"] .pricing-breakdown-card__header[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-card__header[b-5ntgunhjqm],
[data-theme="dark"] .pricing-profile-trace-card__header[b-5ntgunhjqm],
[data-theme="dark"] .pm-modal-header[b-5ntgunhjqm],
[data-theme="dark"] .mat-detail-modal-header[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-modal-header[b-5ntgunhjqm] {
    background: linear-gradient(135deg,#0b1322 0%,#16233b 100%) !important;
    border-bottom: 2px solid #F1B828 !important;
}

/* Inset card */
.pm-inset-card[b-5ntgunhjqm] {
    background: var(--panel-bg-alt) !important;
    border: 1px solid var(--panel-border) !important;
    border-left: 3px solid var(--iac-gold) !important;
    border-radius: 10px !important;
    padding: 12px 14px !important;
}

[data-bs-theme="dark"] .pm-inset-card[b-5ntgunhjqm],
[data-theme="dark"] .pm-inset-card[b-5ntgunhjqm] {
    background: rgba(255,255,255,0.04) !important;
    border-color: rgba(255,255,255,0.08) !important;
    border-left-color: var(--iac-gold) !important;
}


/* ─────────────────────────────────────────────────────────────────
   F. TABLE HEADERS — Gradient matching card heads
   ───────────────────────────────────────────────────────────────── */
.table thead th[b-5ntgunhjqm],
.pm-table thead th[b-5ntgunhjqm],
.pm-labor-table thead th[b-5ntgunhjqm],
.pricing-cost-table thead th[b-5ntgunhjqm],
.thickness-override-table thead th[b-5ntgunhjqm] {
    background: linear-gradient(135deg,#002855 0%,#0f3a73 58%,#184c90 100%) !important;
    color: #ffffff !important;
    border-bottom: 2px solid #F1B828 !important;
    border-top: none !important;
    font-size: 10.5px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.10em !important;
    white-space: nowrap !important;
    padding: 10px 14px !important;
}

    .table thead th[b-5ntgunhjqm]::before,
    .pm-table thead th[b-5ntgunhjqm]::before,
    .table thead th[b-5ntgunhjqm]::after,
    .pm-table thead th[b-5ntgunhjqm]::after {
        content: none !important;
        display: none !important;
    }

[data-bs-theme="dark"] .table thead th[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-table thead th[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-labor-table thead th[b-5ntgunhjqm],
[data-bs-theme="dark"] .pricing-cost-table thead th[b-5ntgunhjqm],
[data-bs-theme="dark"] .thickness-override-table thead th[b-5ntgunhjqm],
[data-theme="dark"] .table thead th[b-5ntgunhjqm],
[data-theme="dark"] .pm-table thead th[b-5ntgunhjqm],
[data-theme="dark"] .pm-labor-table thead th[b-5ntgunhjqm],
[data-theme="dark"] .pricing-cost-table thead th[b-5ntgunhjqm],
[data-theme="dark"] .thickness-override-table thead th[b-5ntgunhjqm] {
    background: linear-gradient(135deg,#0b1322 0%,#16233b 100%) !important;
    color: #F1B828 !important;
    border-bottom: 2px solid #F1B828 !important;
}

.table tbody tr:nth-child(odd) > td[b-5ntgunhjqm],
.pm-table tbody tr:nth-child(odd) > td[b-5ntgunhjqm] {
    background-color: var(--table-row-odd) !important;
}

.table tbody tr:nth-child(even) > td[b-5ntgunhjqm],
.pm-table tbody tr:nth-child(even) > td[b-5ntgunhjqm] {
    background-color: var(--table-row-even) !important;
}

.table tbody td[b-5ntgunhjqm],
.pm-table tbody td[b-5ntgunhjqm] {
    vertical-align: middle !important;
    font-size: 13.5px !important;
    padding: 10px 14px !important;
    border-color: var(--divider) !important;
    color: var(--text-primary) !important;
    border-bottom: 1px solid var(--divider) !important;
    line-height: 1.45 !important;
}

.table-hover tbody tr:hover > td[b-5ntgunhjqm],
.pm-table-hover tbody tr:hover > td[b-5ntgunhjqm],
.pm-table tbody tr:hover > td[b-5ntgunhjqm] {
    background-color: var(--table-row-hover) !important;
}

.table-hover tbody tr:hover td:first-child[b-5ntgunhjqm] {
    border-left: 3px solid var(--iac-gold) !important;
    padding-left: 11px !important;
}


/* ─────────────────────────────────────────────────────────────────
   G. FORM LABELS — Readable, not heavy
   ───────────────────────────────────────────────────────────────── */
.form-label[b-5ntgunhjqm],
.pm-label[b-5ntgunhjqm],
.pm-field-label[b-5ntgunhjqm] {
    display: block !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em !important;
    text-transform: uppercase !important;
    color: rgba(0,30,66,0.60) !important;
    margin-bottom: 5px !important;
    line-height: 1.4 !important;
}

[data-bs-theme="dark"] .form-label[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-label[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-field-label[b-5ntgunhjqm],
[data-theme="dark"] .form-label[b-5ntgunhjqm],
[data-theme="dark"] .pm-label[b-5ntgunhjqm],
[data-theme="dark"] .pm-field-label[b-5ntgunhjqm] {
    color: rgba(190,215,248,0.80) !important;
}

[data-bs-theme="dark"] label.form-label[b-5ntgunhjqm],
[data-bs-theme="dark"] label.pm-label[b-5ntgunhjqm],
[data-theme="dark"] label.form-label[b-5ntgunhjqm],
[data-theme="dark"] label.pm-label[b-5ntgunhjqm] {
    color: rgba(190,215,248,0.80) !important;
}

/* Pricing panels — labels should be readable, consistent */
.pm-pricing-inputs .form-label[b-5ntgunhjqm],
.pm-pricing-inputs .pm-label[b-5ntgunhjqm],
.pm-pricing-settings-grid .form-label[b-5ntgunhjqm],
.pm-pricing-settings-grid .pm-label[b-5ntgunhjqm] {
    color: rgba(0,30,66,0.60) !important;
}

[data-bs-theme="dark"] .pm-pricing-inputs .form-label[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-inputs .pm-label[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-settings-grid .form-label[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-settings-grid .pm-label[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-inputs .form-label[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-inputs .pm-label[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-settings-grid .form-label[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-settings-grid .pm-label[b-5ntgunhjqm] {
    color: rgba(190,215,248,0.80) !important;
}

/* Context resets */
.pm-modal-body .form-label[b-5ntgunhjqm],
.pm-card-body .form-label[b-5ntgunhjqm] {
    padding: 0 !important;
    background: none !important;
    border: none !important;
    border-radius: 0 !important;
    width: auto !important;
}

.form-check-label[b-5ntgunhjqm] {
    color: var(--text-primary) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}

[data-bs-theme="dark"] .form-check-label[b-5ntgunhjqm],
[data-theme="dark"] .form-check-label[b-5ntgunhjqm] {
    color: rgba(255,255,255,0.88) !important;
}

/* Form section title (gold left bar) */
.pm-form-section-title[b-5ntgunhjqm] {
    font-size: 10.5px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.10em !important;
    color: var(--section-label-text) !important;
    padding: 5px 10px 5px 10px !important;
    border-left: 3px solid var(--iac-gold) !important;
    margin-bottom: 10px !important;
    margin-top: 14px !important;
    display: flex !important;
    align-items: center !important;
    gap: 7px !important;
    background: none !important;
    border-radius: 0 !important;
}

[data-bs-theme="dark"] .pm-form-section-title[b-5ntgunhjqm],
[data-theme="dark"] .pm-form-section-title[b-5ntgunhjqm] {
    color: rgba(241,184,40,0.90) !important;
}


/* ─────────────────────────────────────────────────────────────────
   H. FORM CONTROLS — Clean, consistent, mockup-accurate
   ───────────────────────────────────────────────────────────────── */
.form-control[b-5ntgunhjqm],
.form-select[b-5ntgunhjqm],
.pm-input[b-5ntgunhjqm],
.pm-select[b-5ntgunhjqm] {
    display: block !important;
    width: 100% !important;
    background: linear-gradient(170deg,#ffffff 0%,#f3f7ff 100%) !important;
    border: 1.5px solid rgba(0,40,85,0.22) !important;
    border-radius: 10px !important;
    color: #001e42 !important;
    font-family: 'din-2014','DIN 2014','DIN Pro','DM Sans',system-ui,sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    padding: 9px 12px !important;
    line-height: 1.4 !important;
    min-height: 44px !important;
    transition: border-color .15s, box-shadow .15s, background .12s !important;
    box-shadow: inset 0 1px 2px rgba(0,0,0,0.04), 0 1px 0 rgba(255,255,255,0.95) !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
}

    .form-control:hover:not(:disabled):not(:focus)[b-5ntgunhjqm],
    .pm-input:hover:not(:disabled):not(:focus)[b-5ntgunhjqm] {
        background: linear-gradient(170deg,#edf4ff 0%,#e2ecf8 100%) !important;
        border-color: rgba(0,40,85,0.36) !important;
    }

    .form-control:focus[b-5ntgunhjqm],
    .pm-input:focus[b-5ntgunhjqm] {
        background: #ffffff !important;
        border-color: #F1B828 !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.22), inset 0 1px 2px rgba(0,0,0,0.02) !important;
        outline: none !important;
    }

    .form-control:disabled[b-5ntgunhjqm],
    .pm-input:disabled[b-5ntgunhjqm] {
        background: rgba(0,40,85,0.05) !important;
        border-color: rgba(0,40,85,0.14) !important;
        color: rgba(0,30,66,0.50) !important;
        box-shadow: none !important;
        opacity: 1 !important;
        cursor: not-allowed !important;
    }

textarea.form-control[b-5ntgunhjqm] {
    min-height: 74px !important;
    resize: vertical !important;
    line-height: 1.55 !important;
}

/* Selects: preserve chevron, same shape as inputs */
.form-select[b-5ntgunhjqm],
.pm-select[b-5ntgunhjqm] {
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23002855' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' d='M2 5l6 6 6-6'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 11px center !important;
    background-size: 11px !important;
    padding-right: 34px !important;
    background-color: #f5f9ff !important;
}

    .form-select:hover:not(:disabled):not(:focus)[b-5ntgunhjqm] {
        background-color: #edf4ff !important;
        border-color: rgba(0,40,85,0.36) !important;
    }

    .form-select:focus[b-5ntgunhjqm] {
        background-color: #ffffff !important;
        border-color: #F1B828 !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.22) !important;
        outline: none !important;
    }

/* Pricing-area inputs: left accent bar to show "typeable" */
.pm-pricing-inputs .form-control:not(.form-select)[b-5ntgunhjqm],
.pm-pricing-inputs input[type="number"][b-5ntgunhjqm],
.pm-pricing-inputs input[type="text"][b-5ntgunhjqm],
.pm-pricing-settings-grid .form-control:not(.form-select)[b-5ntgunhjqm],
.pm-pricing-settings-grid input[type="number"][b-5ntgunhjqm],
.pm-pricing-settings-grid input[type="text"][b-5ntgunhjqm] {
    border-left: 3.5px solid rgba(0,40,85,0.30) !important;
    min-height: 48px !important;
}

    .pm-pricing-inputs .form-control:not(.form-select):hover[b-5ntgunhjqm],
    .pm-pricing-inputs input[type="number"]:hover[b-5ntgunhjqm],
    .pm-pricing-inputs input[type="text"]:hover[b-5ntgunhjqm],
    .pm-pricing-settings-grid .form-control:not(.form-select):hover[b-5ntgunhjqm],
    .pm-pricing-settings-grid input[type="number"]:hover[b-5ntgunhjqm],
    .pm-pricing-settings-grid input[type="text"]:hover[b-5ntgunhjqm] {
        border-left-color: #F1B828 !important;
    }

    .pm-pricing-inputs .form-control:not(.form-select):focus[b-5ntgunhjqm],
    .pm-pricing-inputs input[type="number"]:focus[b-5ntgunhjqm],
    .pm-pricing-inputs input[type="text"]:focus[b-5ntgunhjqm],
    .pm-pricing-settings-grid .form-control:not(.form-select):focus[b-5ntgunhjqm],
    .pm-pricing-settings-grid input[type="number"]:focus[b-5ntgunhjqm],
    .pm-pricing-settings-grid input[type="text"]:focus[b-5ntgunhjqm] {
        border-left-color: #F1B828 !important;
    }

/* Selects in pricing areas stay uniform */
.pm-pricing-inputs .form-select[b-5ntgunhjqm],
.pm-pricing-settings-grid .form-select[b-5ntgunhjqm] {
    border-left-width: 1.5px !important;
}

/* Dark mode controls */
[data-bs-theme="dark"] .form-control[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-input[b-5ntgunhjqm],
[data-theme="dark"] .form-control[b-5ntgunhjqm],
[data-theme="dark"] .pm-input[b-5ntgunhjqm] {
    background: linear-gradient(170deg,rgba(255,255,255,0.09) 0%,rgba(255,255,255,0.05) 100%) !important;
    border: 1.5px solid rgba(255,255,255,0.14) !important;
    border-radius: 10px !important;
    color: rgba(255,255,255,0.90) !important;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.30) !important;
}

    [data-bs-theme="dark"] .form-control:hover:not(:disabled):not(:focus)[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-input:hover:not(:disabled):not(:focus)[b-5ntgunhjqm],
    [data-theme="dark"] .form-control:hover:not(:disabled):not(:focus)[b-5ntgunhjqm],
    [data-theme="dark"] .pm-input:hover:not(:disabled):not(:focus)[b-5ntgunhjqm] {
        background: linear-gradient(170deg,rgba(255,255,255,0.13) 0%,rgba(255,255,255,0.08) 100%) !important;
        border-color: rgba(255,255,255,0.24) !important;
    }

    [data-bs-theme="dark"] .form-control:focus[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-input:focus[b-5ntgunhjqm],
    [data-theme="dark"] .form-control:focus[b-5ntgunhjqm],
    [data-theme="dark"] .pm-input:focus[b-5ntgunhjqm] {
        background: rgba(255,255,255,0.12) !important;
        border-color: rgba(241,184,40,0.65) !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.18), inset 0 1px 3px rgba(0,0,0,0.24) !important;
        outline: none !important;
    }

[data-bs-theme="dark"] .form-select[b-5ntgunhjqm],
[data-theme="dark"] .form-select[b-5ntgunhjqm] {
    background-color: rgba(13,25,50,0.85) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='none' stroke='%23F1B828' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round' d='M2 5l6 6 6-6'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-position: right 11px center !important;
    background-size: 11px !important;
    border: 1.5px solid rgba(255,255,255,0.14) !important;
    border-radius: 10px !important;
    color: rgba(255,255,255,0.90) !important;
    box-shadow: inset 0 1px 3px rgba(0,0,0,0.30) !important;
}

    [data-bs-theme="dark"] .form-select:hover[b-5ntgunhjqm],
    [data-theme="dark"] .form-select:hover[b-5ntgunhjqm] {
        background-color: rgba(16,30,58,0.92) !important;
        border-color: rgba(255,255,255,0.24) !important;
    }

    [data-bs-theme="dark"] .form-select:focus[b-5ntgunhjqm],
    [data-theme="dark"] .form-select:focus[b-5ntgunhjqm] {
        background-color: rgba(16,30,58,0.95) !important;
        border-color: rgba(241,184,40,0.65) !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.18) !important;
    }

/* Dark pricing left accent */
[data-bs-theme="dark"] .pm-pricing-inputs .form-control:not(.form-select)[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-inputs input[type="number"][b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-inputs input[type="text"][b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-settings-grid .form-control:not(.form-select)[b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-settings-grid input[type="number"][b-5ntgunhjqm],
[data-bs-theme="dark"] .pm-pricing-settings-grid input[type="text"][b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-inputs .form-control:not(.form-select)[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-inputs input[type="number"][b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-inputs input[type="text"][b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-settings-grid .form-control:not(.form-select)[b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-settings-grid input[type="number"][b-5ntgunhjqm],
[data-theme="dark"] .pm-pricing-settings-grid input[type="text"][b-5ntgunhjqm] {
    border-left: 3.5px solid rgba(241,184,40,0.42) !important;
}

    [data-bs-theme="dark"] .pm-pricing-inputs .form-control:not(.form-select):hover[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-pricing-inputs input[type="number"]:hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-inputs .form-control:not(.form-select):hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-pricing-inputs input[type="number"]:hover[b-5ntgunhjqm] {
        border-left-color: rgba(241,184,40,0.65) !important;
    }

/* Modal inputs match global style */
.pm-modal-body .form-control[b-5ntgunhjqm],
.pm-modal-body .pm-input[b-5ntgunhjqm],
.pm-modal-body .form-select[b-5ntgunhjqm] {
    min-height: 44px !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    padding: 9px 13px !important;
}

/* Pricing settings inputs — taller */
.pm-pricing-settings-grid .pm-input[b-5ntgunhjqm],
.pm-pricing-settings-grid .form-control[b-5ntgunhjqm] {
    min-height: 48px !important;
    padding: 0.82rem 1rem !important;
    font-size: 15px !important;
    font-weight: 600 !important;
}

/* Checkboxes */
.form-check-input[b-5ntgunhjqm] {
    width: 1.05rem !important;
    height: 1.05rem !important;
    border: 1.5px solid rgba(0,40,85,0.22) !important;
    background-color: var(--input-bg) !important;
    cursor: pointer !important;
    flex-shrink: 0 !important;
    accent-color: var(--iac-gold) !important;
}

    .form-check-input:checked[b-5ntgunhjqm] {
        background-color: var(--iac-navy) !important;
        border-color: var(--iac-navy) !important;
        box-shadow: 0 0 0 2px rgba(241,184,40,0.26) !important;
    }

[data-bs-theme="dark"] .form-check-input:checked[b-5ntgunhjqm],
[data-theme="dark"] .form-check-input:checked[b-5ntgunhjqm] {
    background-color: var(--iac-gold) !important;
    border-color: var(--iac-gold) !important;
}


/* ─────────────────────────────────────────────────────────────────
   I. BUTTONS — Gradient, shadow, lift-on-hover
   ───────────────────────────────────────────────────────────────── */
.pm-btn[b-5ntgunhjqm],
.btn[b-5ntgunhjqm] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 6px !important;
    font-family: 'din-2014','DIN 2014','DIN Pro','DM Sans',system-ui,sans-serif !important;
    font-weight: 800 !important;
    font-size: 12.5px !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
    border-radius: 10px !important;
    border: 1.5px solid transparent !important;
    cursor: pointer !important;
    white-space: nowrap !important;
    line-height: 1 !important;
    text-decoration: none !important;
    min-height: 40px !important;
    padding: 9px 18px !important;
    transition: transform 0.14s ease, box-shadow 0.14s ease, background 0.14s ease, filter 0.14s ease !important;
    position: relative !important;
    overflow: hidden !important;
}

    .pm-btn:active:not(:disabled)[b-5ntgunhjqm],
    .btn:active:not(:disabled)[b-5ntgunhjqm] {
        transform: translateY(1px) scale(0.98) !important;
    }

    .pm-btn:disabled[b-5ntgunhjqm],
    .btn:disabled[b-5ntgunhjqm],
    .btn[disabled][b-5ntgunhjqm] {
        opacity: 0.40 !important;
        cursor: not-allowed !important;
        pointer-events: none !important;
    }

/* PRIMARY — light mode: navy gradient */
.pm-btn--primary[b-5ntgunhjqm],
.btn-primary[b-5ntgunhjqm] {
    background: linear-gradient(170deg,#0e4080 0%,#002855 50%,#001535 100%) !important;
    color: #ffffff !important;
    border: 1.5px solid rgba(0,10,30,0.35) !important;
    box-shadow: 0 1px 0 rgba(255,255,255,0.10) inset, 0 -1px 0 rgba(0,0,0,0.24) inset, 0 2px 0 rgba(0,0,0,0.22), 0 6px 16px rgba(0,28,72,0.28) !important;
    text-shadow: 0 1px 2px rgba(0,0,0,0.28) !important;
}

    .pm-btn--primary:hover:not(:disabled)[b-5ntgunhjqm],
    .btn-primary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(170deg,#1050a0 0%,#003370 50%,#001e50 100%) !important;
        box-shadow: 0 1px 0 rgba(255,255,255,0.12) inset, 0 -1px 0 rgba(0,0,0,0.28) inset, 0 2px 0 rgba(0,0,0,0.26), 0 8px 22px rgba(0,28,72,0.36) !important;
        transform: translateY(-2px) !important;
    }

/* PRIMARY — dark mode: gold gradient */
[data-bs-theme="dark"] .pm-btn--primary[b-5ntgunhjqm],
[data-bs-theme="dark"] .btn-primary[b-5ntgunhjqm],
[data-theme="dark"] .pm-btn--primary[b-5ntgunhjqm],
[data-theme="dark"] .btn-primary[b-5ntgunhjqm] {
    background: linear-gradient(160deg,#ffd056 0%,#f1b828 55%,#d4960e 100%) !important;
    color: #001535 !important;
    border: 1.5px solid rgba(180,130,0,0.40) !important;
    box-shadow: 0 1px 0 rgba(255,255,255,0.30) inset, 0 -1px 0 rgba(0,0,0,0.18) inset, 0 2px 0 rgba(0,0,0,0.30), 0 6px 20px rgba(241,184,40,0.28) !important;
    text-shadow: 0 1px 1px rgba(255,255,255,0.14) !important;
}

    [data-bs-theme="dark"] .pm-btn--primary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-bs-theme="dark"] .btn-primary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .pm-btn--primary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .btn-primary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(160deg,#ffda70 0%,#f8c43c 55%,#dcab24 100%) !important;
        transform: translateY(-2px) !important;
    }

    /* Dark mode plus/check icons on gold button */
    [data-bs-theme="dark"] .pm-btn--primary .bi-plus-lg[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-btn--primary .bi-plus[b-5ntgunhjqm],
    [data-bs-theme="dark"] .btn-primary .bi-plus-lg[b-5ntgunhjqm],
    [data-bs-theme="dark"] .btn-primary .bi-plus[b-5ntgunhjqm],
    [data-bs-theme="dark"] .pm-btn--primary .bi-check-lg[b-5ntgunhjqm],
    [data-bs-theme="dark"] .btn-primary .bi-check-lg[b-5ntgunhjqm],
    [data-theme="dark"] .pm-btn--primary .bi-plus-lg[b-5ntgunhjqm],
    [data-theme="dark"] .pm-btn--primary .bi-plus[b-5ntgunhjqm],
    [data-theme="dark"] .btn-primary .bi-plus-lg[b-5ntgunhjqm],
    [data-theme="dark"] .btn-primary .bi-plus[b-5ntgunhjqm],
    [data-theme="dark"] .pm-btn--primary .bi-check-lg[b-5ntgunhjqm],
    [data-theme="dark"] .btn-primary .bi-check-lg[b-5ntgunhjqm] {
        color: #001535 !important;
        -webkit-text-stroke: 1.0px #001535 !important;
    }

/* GHOST / SECONDARY — light mode */
.pm-btn--ghost[b-5ntgunhjqm],
.btn-secondary[b-5ntgunhjqm],
.btn-outline-secondary[b-5ntgunhjqm] {
    background: linear-gradient(170deg,#ffffff 0%,#edf2fa 100%) !important;
    border: 1.5px solid rgba(0,40,85,0.35) !important;
    color: #002855 !important;
    box-shadow: 0 1px 0 rgba(255,255,255,1) inset, 0 -1px 0 rgba(0,0,0,0.08) inset, 0 1px 0 rgba(0,0,0,0.10), 0 3px 8px rgba(0,30,72,0.10) !important;
    text-shadow: none !important;
}

    .pm-btn--ghost:hover:not(:disabled)[b-5ntgunhjqm],
    .btn-secondary:hover:not(:disabled)[b-5ntgunhjqm],
    .btn-outline-secondary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(170deg,#e6eef9 0%,#d6e4f4 100%) !important;
        border-color: rgba(0,40,85,0.50) !important;
        color: #001e42 !important;
        transform: translateY(-2px) !important;
    }

/* GHOST — dark mode */
[data-bs-theme="dark"] .pm-btn--ghost[b-5ntgunhjqm],
[data-bs-theme="dark"] .btn-secondary[b-5ntgunhjqm],
[data-bs-theme="dark"] .btn-outline-secondary[b-5ntgunhjqm],
[data-theme="dark"] .pm-btn--ghost[b-5ntgunhjqm],
[data-theme="dark"] .btn-secondary[b-5ntgunhjqm],
[data-theme="dark"] .btn-outline-secondary[b-5ntgunhjqm] {
    background: linear-gradient(170deg,rgba(255,255,255,0.10) 0%,rgba(255,255,255,0.05) 100%) !important;
    border: 1.5px solid rgba(255,255,255,0.18) !important;
    color: rgba(255,255,255,0.88) !important;
    box-shadow: 0 1px 0 rgba(255,255,255,0.06) inset, 0 -1px 0 rgba(0,0,0,0.22) inset, 0 2px 6px rgba(0,0,0,0.28) !important;
}

    [data-bs-theme="dark"] .pm-btn--ghost:hover:not(:disabled)[b-5ntgunhjqm],
    [data-bs-theme="dark"] .btn-secondary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .pm-btn--ghost:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .btn-secondary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(170deg,rgba(255,255,255,0.16) 0%,rgba(255,255,255,0.09) 100%) !important;
        border-color: rgba(255,255,255,0.28) !important;
        color: #ffffff !important;
        transform: translateY(-2px) !important;
    }

/* OUTLINE PRIMARY */
.btn-outline-primary[b-5ntgunhjqm] {
    background: linear-gradient(170deg,rgba(0,40,85,0.04) 0%,rgba(0,40,85,0.09) 100%) !important;
    border: 1.5px solid rgba(0,40,85,0.42) !important;
    color: #002855 !important;
    box-shadow: 0 1px 0 rgba(255,255,255,0.80) inset !important;
}

    .btn-outline-primary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(170deg,#0e4080 0%,#002855 100%) !important;
        border-color: transparent !important;
        color: #ffffff !important;
        transform: translateY(-2px) !important;
    }

[data-bs-theme="dark"] .btn-outline-primary[b-5ntgunhjqm],
[data-theme="dark"] .btn-outline-primary[b-5ntgunhjqm] {
    background: linear-gradient(170deg,rgba(255,255,255,0.05) 0%,rgba(255,255,255,0.02) 100%) !important;
    border: 1.5px solid rgba(241,184,40,0.38) !important;
    color: #f5d274 !important;
}

    [data-bs-theme="dark"] .btn-outline-primary:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .btn-outline-primary:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(160deg,#ffd056 0%,#f1b828 100%) !important;
        border-color: transparent !important;
        color: #001535 !important;
        transform: translateY(-2px) !important;
    }

/* OUTLINE DANGER */
.btn-outline-danger[b-5ntgunhjqm] {
    background: linear-gradient(170deg,rgba(200,28,28,0.04) 0%,rgba(200,28,28,0.08) 100%) !important;
    border: 1.5px solid rgba(200,28,28,0.42) !important;
    color: #a51c1c !important;
    box-shadow: 0 1px 0 rgba(255,255,255,0.75) inset !important;
}

    .btn-outline-danger:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(170deg,#c01c1c 0%,#8b1010 100%) !important;
        border-color: transparent !important;
        color: #ffffff !important;
        transform: translateY(-2px) !important;
    }

[data-bs-theme="dark"] .btn-outline-danger[b-5ntgunhjqm],
[data-theme="dark"] .btn-outline-danger[b-5ntgunhjqm] {
    background: linear-gradient(170deg,rgba(248,113,113,0.06) 0%,rgba(248,113,113,0.03) 100%) !important;
    border: 1.5px solid rgba(248,113,113,0.36) !important;
    color: #ffb4bc !important;
}

    [data-bs-theme="dark"] .btn-outline-danger:hover:not(:disabled)[b-5ntgunhjqm],
    [data-theme="dark"] .btn-outline-danger:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(170deg,#d93c4a 0%,#a82232 100%) !important;
        border-color: transparent !important;
        color: #fff !important;
        transform: translateY(-2px) !important;
    }

/* OUTLINE INFO */
.btn-outline-info[b-5ntgunhjqm] {
    background: linear-gradient(170deg,rgba(0,70,180,0.04) 0%,rgba(0,70,180,0.08) 100%) !important;
    border: 1.5px solid rgba(0,70,180,0.40) !important;
    color: #0042ad !important;
}

    .btn-outline-info:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(170deg,#1d6fd7 0%,#0d4c93 100%) !important;
        border-color: transparent !important;
        color: #fff !important;
        transform: translateY(-2px) !important;
    }

[data-bs-theme="dark"] .btn-outline-info[b-5ntgunhjqm],
[data-theme="dark"] .btn-outline-info[b-5ntgunhjqm] {
    border-color: rgba(96,165,250,0.36) !important;
    color: #9fd2ff !important;
}

/* SUCCESS */
.btn-success[b-5ntgunhjqm] {
    background: linear-gradient(160deg,#23a060 0%,#1a7a4a 55%,#13593a 100%) !important;
    border: 1.5px solid rgba(10,80,42,0.36) !important;
    color: #ffffff !important;
    box-shadow: 0 1px 0 rgba(255,255,255,0.18) inset, 0 -1px 0 rgba(0,0,0,0.22) inset, 0 2px 0 rgba(0,0,0,0.20), 0 5px 14px rgba(20,110,60,0.24) !important;
}

    .btn-success:hover:not(:disabled)[b-5ntgunhjqm] {
        background: linear-gradient(160deg,#27b46c 0%,#1f9058 55%,#165e42 100%) !important;
        transform: translateY(-2px) !important;
    }

/* Button sizes */
.pm-btn--sm[b-5ntgunhjqm],
.btn-sm[b-5ntgunhjqm] {
    font-size: 11px !important;
    padding: 6px 14px !important;
    min-height: 32px !important;
    border-radius: 8px !important;
}

.pm-btn--xs[b-5ntgunhjqm] {
    font-size: 10px !important;
    padding: 4px 10px !important;
    min-height: 26px !important;
    border-radius: 6px !important;
}

.pm-btn--block[b-5ntgunhjqm] {
    width: 100% !important;
}

/* Plus icon — bold */
.pm-btn .bi-plus-lg[b-5ntgunhjqm],
.pm-btn .bi-plus[b-5ntgunhjqm],
.btn .bi-plus-lg[b-5ntgunhjqm],
.btn .bi-plus[b-5ntgunhjqm] {
    font-size: 1.10em !important;
    font-weight: 900 !important;
    -webkit-text-stroke: 0.8px currentColor !important;
    line-height: 1 !important;
}

/* btn-check radio */
.btn-check:checked + .btn-outline-primary[b-5ntgunhjqm] {
    background: linear-gradient(170deg,#0e4080 0%,#002855 100%) !important;
    color: #ffffff !important;
    border-color: transparent !important;
}

[data-bs-theme="dark"] .btn-check:checked + .btn-outline-primary[b-5ntgunhjqm],
[data-theme="dark"] .btn-check:checked + .btn-outline-primary[b-5ntgunhjqm] {
    background: linear-gradient(155deg,#ffd056 0%,#f1b828 100%) !important;
    color: #001535 !important;
    border-color: rgba(241,184,40,0.50) !important;
}

/* Focus ring — gold */
.btn:focus[b-5ntgunhjqm],
.pm-btn:focus[b-5ntgunhjqm] {
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(241,184,40,0.30) !important;
}


/* ─────────────────────────────────────────────────────────────────
   J. ICON BUTTONS
   ───────────────────────────────────────────────────────────────── */
.pm-icon-btn[b-5ntgunhjqm] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    min-height: 32px !important;
    border-radius: 7px !important;
    font-size: 14px !important;
    border: 1.5px solid transparent !important;
    cursor: pointer !important;
    transition: all .12s !important;
    padding: 0 !important;
    flex-shrink: 0 !important;
}

.pm-icon-btn--edit[b-5ntgunhjqm] {
    color: #002855 !important;
    background: linear-gradient(160deg,#ffffff 0%,#edf2fa 100%) !important;
    border-color: rgba(0,40,85,0.32) !important;
    box-shadow: 0 1px 0 rgba(255,255,255,1) inset, 0 2px 6px rgba(0,30,72,0.08) !important;
}

    .pm-icon-btn--edit:hover[b-5ntgunhjqm] {
        background: linear-gradient(160deg,#dce8f8 0%,#c8d9f0 100%) !important;
        border-color: rgba(0,40,85,0.50) !important;
        transform: translateY(-1px) !important;
    }

.pm-icon-btn--delete[b-5ntgunhjqm] {
    color: #b91c1c !important;
    background: rgba(200,28,28,0.06) !important;
    border-color: rgba(200,28,28,0.28) !important;
}

    .pm-icon-btn--delete:hover[b-5ntgunhjqm] {
        background: rgba(200,28,28,0.12) !important;
        border-color: rgba(200,28,28,0.50) !important;
        transform: translateY(-1px) !important;
    }

    .pm-icon-btn--delete:disabled[b-5ntgunhjqm] {
        opacity: 0.24 !important;
        cursor: not-allowed !important;
        pointer-events: none !important;
    }

[data-bs-theme="dark"] .pm-icon-btn--edit[b-5ntgunhjqm],
[data-theme="dark"] .pm-icon-btn--edit[b-5ntgunhjqm] {
    color: rgba(255,255,255,0.80) !important;
    background: linear-gradient(160deg,rgba(255,255,255,0.10) 0%,rgba(255,255,255,0.05) 100%) !important;
    border: 1.5px solid rgba(255,255,255,0.18) !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.24) !important;
}

    [data-bs-theme="dark"] .pm-icon-btn--edit:hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-icon-btn--edit:hover[b-5ntgunhjqm] {
        background: linear-gradient(160deg,rgba(241,184,40,0.20) 0%,rgba(241,184,40,0.10) 100%) !important;
        border-color: rgba(241,184,40,0.50) !important;
        color: #ffd56d !important;
    }

[data-bs-theme="dark"] .pm-icon-btn--delete[b-5ntgunhjqm],
[data-theme="dark"] .pm-icon-btn--delete[b-5ntgunhjqm] {
    color: #fca5a5 !important;
    background: linear-gradient(160deg,rgba(248,113,113,0.10) 0%,rgba(248,113,113,0.05) 100%) !important;
    border: 1.5px solid rgba(248,113,113,0.32) !important;
}

    [data-bs-theme="dark"] .pm-icon-btn--delete:hover[b-5ntgunhjqm],
    [data-theme="dark"] .pm-icon-btn--delete:hover[b-5ntgunhjqm] {
        background: linear-gradient(135deg,rgba(248,113,113,0.22) 0%,rgba(220,40,40,0.16) 100%) !important;
        border-color: rgba(248,113,113,0.60) !important;
        color: #fecaca !important;
    }


/* ─────────────────────────────────────────────────────────────────
   K. MODALS — Solid, never transparent
   ───────────────────────────────────────────────────────────────── */
.pm-modal-shell[b-5ntgunhjqm] {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2200 !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;
    padding: 2rem 1rem 1rem !important;
    overflow-y: auto !important;
    background: transparent !important;
    isolation: isolate !important;
}

.pm-modal-backdrop[b-5ntgunhjqm],
.mat-detail-modal-backdrop[b-5ntgunhjqm],
.sheet-opt-modal-backdrop[b-5ntgunhjqm],
.nq-modal-overlay[b-5ntgunhjqm] {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2199 !important;
    background: rgba(5,18,45,0.88) !important;
    -webkit-backdrop-filter: blur(5px) saturate(0.80) !important;
    backdrop-filter: blur(5px) saturate(0.80) !important;
    opacity: 1 !important;
}

@supports not (backdrop-filter: blur(1px)) {
    .pm-modal-backdrop[b-5ntgunhjqm],
    .mat-detail-modal-backdrop[b-5ntgunhjqm],
    .sheet-opt-modal-backdrop[b-5ntgunhjqm],
    .nq-modal-overlay[b-5ntgunhjqm] {
        background: rgba(3,12,30,0.96) !important;
    }
}

[data-bs-theme="dark"] .pm-modal-backdrop[b-5ntgunhjqm],
[data-bs-theme="dark"] .mat-detail-modal-backdrop[b-5ntgunhjqm],
[data-bs-theme="dark"] .sheet-opt-modal-backdrop[b-5ntgunhjqm],
[data-bs-theme="dark"] .nq-modal-overlay[b-5ntgunhjqm],
[data-theme="dark"] .pm-modal-backdrop[b-5ntgunhjqm],
[data-theme="dark"] .mat-detail-modal-backdrop[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-modal-backdrop[b-5ntgunhjqm],
[data-theme="dark"] .nq-modal-overlay[b-5ntgunhjqm] {
    background: rgba(0,3,10,0.93) !important;
}

.pm-modal-dialog[b-5ntgunhjqm],
.mat-detail-modal-card[b-5ntgunhjqm],
.sheet-opt-modal-card[b-5ntgunhjqm],
.nq-modal-card[b-5ntgunhjqm] {
    position: relative !important;
    z-index: 1 !important;
    background: #ffffff !important;
    border: 1px solid rgba(0,40,85,0.16) !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    isolation: isolate !important;
    opacity: 1 !important;
    box-shadow: 0 30px 90px rgba(0,10,26,0.42), 0 6px 24px rgba(0,10,26,0.22) !important;
}

[data-bs-theme="dark"] .pm-modal-dialog[b-5ntgunhjqm],
[data-bs-theme="dark"] .mat-detail-modal-card[b-5ntgunhjqm],
[data-bs-theme="dark"] .sheet-opt-modal-card[b-5ntgunhjqm],
[data-bs-theme="dark"] .nq-modal-card[b-5ntgunhjqm],
[data-theme="dark"] .pm-modal-dialog[b-5ntgunhjqm],
[data-theme="dark"] .mat-detail-modal-card[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-modal-card[b-5ntgunhjqm],
[data-theme="dark"] .nq-modal-card[b-5ntgunhjqm] {
    background: #101828 !important;
    border-color: rgba(255,255,255,0.10) !important;
}

.pm-modal-body[b-5ntgunhjqm],
.mat-detail-modal-body[b-5ntgunhjqm],
.sheet-opt-modal-body[b-5ntgunhjqm],
.nq-modal-body[b-5ntgunhjqm] {
    background: #ffffff !important;
    opacity: 1 !important;
    padding: 20px 20px 0 !important;
    overflow-y: auto !important;
    max-height: 72vh !important;
}

.pm-modal-footer[b-5ntgunhjqm],
.nq-modal-footer[b-5ntgunhjqm] {
    background: #f4f7fc !important;
    opacity: 1 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 9px !important;
    padding: 14px 20px !important;
    border-top: 1px solid rgba(0,40,85,0.09) !important;
    margin-top: 18px !important;
}

.nq-modal-header[b-5ntgunhjqm] {
    background: #ffffff !important;
}

[data-bs-theme="dark"] .pm-modal-body[b-5ntgunhjqm],
[data-bs-theme="dark"] .mat-detail-modal-body[b-5ntgunhjqm],
[data-bs-theme="dark"] .sheet-opt-modal-body[b-5ntgunhjqm],
[data-bs-theme="dark"] .nq-modal-body[b-5ntgunhjqm],
[data-theme="dark"] .pm-modal-body[b-5ntgunhjqm],
[data-theme="dark"] .mat-detail-modal-body[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-modal-body[b-5ntgunhjqm],
[data-theme="dark"] .nq-modal-body[b-5ntgunhjqm] {
    background: #101828 !important;
}

[data-bs-theme="dark"] .pm-modal-footer[b-5ntgunhjqm],
[data-bs-theme="dark"] .nq-modal-footer[b-5ntgunhjqm],
[data-theme="dark"] .pm-modal-footer[b-5ntgunhjqm],
[data-theme="dark"] .nq-modal-footer[b-5ntgunhjqm] {
    background: #0d1520 !important;
    border-top-color: rgba(255,255,255,0.07) !important;
}

[data-bs-theme="dark"] .nq-modal-header[b-5ntgunhjqm],
[data-theme="dark"] .nq-modal-header[b-5ntgunhjqm] {
    background: #101828 !important;
}

/* Modal close button */
.pm-modal-close[b-5ntgunhjqm] {
    background: linear-gradient(180deg,rgba(255,255,255,0.20) 0%,rgba(255,255,255,0.08) 100%) !important;
    border: 1.5px solid rgba(255,255,255,0.22) !important;
    color: rgba(255,255,255,0.90) !important;
    border-radius: 8px !important;
    min-width: 34px !important;
    min-height: 34px !important;
    width: 34px !important;
    height: 34px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 14px !important;
    cursor: pointer !important;
    transition: all .12s !important;
    flex-shrink: 0 !important;
    box-shadow: 0 2px 8px rgba(0,0,0,0.16) !important;
}

    .pm-modal-close:hover[b-5ntgunhjqm] {
        background: linear-gradient(135deg,#e53e3e 0%,#9b1c1c 100%) !important;
        border-color: rgba(200,40,40,0.60) !important;
        color: #fff !important;
        transform: translateY(-1px) !important;
    }


/* ─────────────────────────────────────────────────────────────────
   L. CONFIG ROWS — Gold left border on hover
   ───────────────────────────────────────────────────────────────── */
.pm-config-row[b-5ntgunhjqm] {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    padding: 11px 18px !important;
    border-bottom: 1px solid var(--divider) !important;
    border-left: 3px solid transparent !important;
    transition: background 0.12s, border-left-color 0.12s !important;
    min-height: 52px !important;
}

    .pm-config-row:last-child[b-5ntgunhjqm] {
        border-bottom: none !important;
    }

    .pm-config-row:hover[b-5ntgunhjqm] {
        background: var(--table-row-hover) !important;
        border-left-color: var(--iac-gold) !important;
    }

    .pm-config-row:nth-child(odd)[b-5ntgunhjqm] {
        background: var(--table-row-odd) !important;
    }

    .pm-config-row:nth-child(even)[b-5ntgunhjqm] {
        background: var(--table-row-even) !important;
    }

    .pm-config-row:hover[b-5ntgunhjqm] {
        background: var(--table-row-hover) !important;
    }


/* ─────────────────────────────────────────────────────────────────
   M. PRICING LAYOUT — Exact mockup column sizing
   ───────────────────────────────────────────────────────────────── */
.pm-pricing-layout[b-5ntgunhjqm] {
    display: grid !important;
    grid-template-columns: minmax(360px,420px) minmax(0,1fr) !important;
    gap: 20px !important;
    align-items: start !important;
}

.pm-pricing-inputs[b-5ntgunhjqm] {
    position: sticky !important;
    top: 1rem !important;
}

    .pm-pricing-inputs .pm-card-body[b-5ntgunhjqm] {
        padding: 18px 18px 22px !important;
    }

@media (max-width: 980px) {
    .pm-pricing-layout[b-5ntgunhjqm] {
        grid-template-columns: 1fr !important;
    }

    .pm-pricing-inputs[b-5ntgunhjqm] {
        position: static !important;
    }
}


/* ─────────────────────────────────────────────────────────────────
   N. KPI STRIP — Metric cells with gold accent bar
   ───────────────────────────────────────────────────────────────── */
.pricing-summary-metric[b-5ntgunhjqm] {
    position: relative !important;
    min-height: 120px !important;
    padding: 14px 16px 16px !important;
    border-right: 1px solid var(--divider) !important;
    border-bottom: 1px solid var(--divider) !important;
}

    .pricing-summary-metric[b-5ntgunhjqm]::before {
        content: "" !important;
        position: absolute !important;
        left: 14px !important;
        top: 12px !important;
        width: 28px !important;
        height: 3px !important;
        border-radius: 999px !important;
        background: linear-gradient(90deg,#f1b828 0%,rgba(241,184,40,0.18) 100%) !important;
    }

    .pricing-summary-metric:last-child[b-5ntgunhjqm] {
        border-right: none !important;
    }

    .pricing-summary-metric span[b-5ntgunhjqm] {
        display: block !important;
        margin-top: 16px !important;
        font-size: 10px !important;
        font-weight: 800 !important;
        text-transform: uppercase !important;
        letter-spacing: 0.10em !important;
        color: var(--text-secondary) !important;
    }

    .pricing-summary-metric strong[b-5ntgunhjqm] {
        display: block !important;
        font-size: 17px !important;
        font-weight: 800 !important;
        color: var(--text-primary) !important;
        margin-top: 4px !important;
        line-height: 1.2 !important;
    }

    .pricing-summary-metric small[b-5ntgunhjqm] {
        display: block !important;
        font-size: 11px !important;
        color: var(--text-muted) !important;
        margin-top: 3px !important;
    }

[data-bs-theme="dark"] .pricing-summary-metric[b-5ntgunhjqm],
[data-theme="dark"] .pricing-summary-metric[b-5ntgunhjqm] {
    border-right-color: rgba(255,255,255,0.07) !important;
    border-bottom-color: rgba(255,255,255,0.07) !important;
}

    [data-bs-theme="dark"] .pricing-summary-metric span[b-5ntgunhjqm],
    [data-theme="dark"] .pricing-summary-metric span[b-5ntgunhjqm] {
        color: rgba(191,219,254,0.78) !important;
    }

/* KPI accent cell (cost/panel) */
.pricing-kpi--accent[b-5ntgunhjqm] {
    background: linear-gradient(180deg,rgba(241,184,40,0.18),rgba(255,255,255,0.96)) !important;
}

[data-bs-theme="dark"] .pricing-kpi--accent[b-5ntgunhjqm],
[data-theme="dark"] .pricing-kpi--accent[b-5ntgunhjqm] {
    background: linear-gradient(180deg,rgba(241,184,40,0.14),rgba(255,255,255,0.03)) !important;
}

/* KPI final cell (list price) */
.pricing-kpi--final[b-5ntgunhjqm] {
    background: linear-gradient(180deg,#002855 0%,#0f3a73 100%) !important;
    border-color: rgba(0,40,85,0.4) !important;
}

    .pricing-kpi--final span[b-5ntgunhjqm],
    .pricing-kpi--final strong[b-5ntgunhjqm],
    .pricing-kpi--final small[b-5ntgunhjqm] {
        color: rgba(255,255,255,0.90) !important;
    }

    .pricing-kpi--final[b-5ntgunhjqm]::before {
        background: linear-gradient(90deg,#ffd56d 0%,rgba(255,213,109,0.15) 100%) !important;
    }

    .pricing-kpi--final strong[b-5ntgunhjqm] {
        color: #ffd56d !important;
    }

[data-bs-theme="dark"] .pricing-kpi--final[b-5ntgunhjqm],
[data-theme="dark"] .pricing-kpi--final[b-5ntgunhjqm] {
    background: linear-gradient(180deg,#132644 0%,#0b1830 100%) !important;
    border-color: rgba(241,184,40,0.18) !important;
}


/* ─────────────────────────────────────────────────────────────────
   O. SHEET OPTIMIZATION BLOCK
   ───────────────────────────────────────────────────────────────── */
.pricing-sheet-opt-shell[b-5ntgunhjqm] {
    border: 1px solid var(--panel-border) !important;
    border-radius: 20px !important;
    overflow: hidden !important;
    box-shadow: 0 18px 42px rgba(0,31,72,0.08) !important;
}

.pricing-sheet-opt-header[b-5ntgunhjqm] {
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
    gap: 12px !important;
    padding: 14px 18px !important;
    border-bottom: 2px solid var(--iac-gold) !important;
    background: linear-gradient(135deg,#002855 0%,#0f3a73 58%,#184c90 100%) !important;
}

    .pricing-sheet-opt-header h5[b-5ntgunhjqm] {
        margin: 0 !important;
        color: #fff !important;
        font-size: 12.5px !important;
        font-weight: 800 !important;
        letter-spacing: 0.11em !important;
        text-transform: uppercase !important;
    }

.pricing-sheet-opt-subtitle[b-5ntgunhjqm] {
    display: block !important;
    margin-top: 3px !important;
    font-size: 11.5px !important;
    color: rgba(255,255,255,0.68) !important;
}

[data-bs-theme="dark"] .pricing-sheet-opt-shell[b-5ntgunhjqm],
[data-theme="dark"] .pricing-sheet-opt-shell[b-5ntgunhjqm] {
    border-color: rgba(255,255,255,0.08) !important;
    box-shadow: 0 20px 46px rgba(0,0,0,0.34) !important;
}

[data-bs-theme="dark"] .pricing-sheet-opt-header[b-5ntgunhjqm],
[data-theme="dark"] .pricing-sheet-opt-header[b-5ntgunhjqm] {
    background: linear-gradient(135deg,#0b1322 0%,#16233b 100%) !important;
}

.sheet-opt-row[b-5ntgunhjqm] {
    padding: 14px 16px !important;
    border-top: 1px solid var(--divider) !important;
    display: grid !important;
    gap: 8px !important;
}

    .sheet-opt-row:first-child[b-5ntgunhjqm] {
        border-top: none !important;
    }

.sheet-opt-row--best[b-5ntgunhjqm] {
    background: linear-gradient(180deg,rgba(26,122,74,0.08) 0%,rgba(26,122,74,0.04) 100%) !important;
}

.sheet-opt-row--current[b-5ntgunhjqm] {
    background: linear-gradient(180deg,rgba(0,40,85,0.08) 0%,rgba(0,40,85,0.04) 100%) !important;
}

.sheet-opt-row--alt[b-5ntgunhjqm] {
    background: linear-gradient(180deg,rgba(241,184,40,0.09) 0%,rgba(241,184,40,0.04) 100%) !important;
}

[data-bs-theme="dark"] .sheet-opt-row--best[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-row--best[b-5ntgunhjqm] {
    background: linear-gradient(180deg,rgba(34,197,94,0.12) 0%,rgba(34,197,94,0.06) 100%) !important;
}

[data-bs-theme="dark"] .sheet-opt-row--current[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-row--current[b-5ntgunhjqm] {
    background: linear-gradient(180deg,rgba(96,165,250,0.12) 0%,rgba(96,165,250,0.06) 100%) !important;
}

.sheet-opt-stat[b-5ntgunhjqm] {
    display: grid !important;
    gap: 3px !important;
    padding: 10px 12px !important;
    border-radius: 14px !important;
    background: rgba(0,40,85,0.04) !important;
    border: 1px solid rgba(0,40,85,0.10) !important;
}

    .sheet-opt-stat strong[b-5ntgunhjqm] {
        font-size: 15px !important;
        font-weight: 800 !important;
        color: #002855 !important;
    }

    .sheet-opt-stat small[b-5ntgunhjqm],
    .sheet-opt-stat span[b-5ntgunhjqm] {
        font-size: 10.5px !important;
        color: var(--text-muted) !important;
        font-weight: 400 !important;
        text-transform: none !important;
        letter-spacing: normal !important;
    }

[data-bs-theme="dark"] .sheet-opt-stat[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-stat[b-5ntgunhjqm] {
    background: rgba(255,255,255,0.035) !important;
    border-color: rgba(255,255,255,0.08) !important;
}

    [data-bs-theme="dark"] .sheet-opt-stat strong[b-5ntgunhjqm],
    [data-theme="dark"] .sheet-opt-stat strong[b-5ntgunhjqm] {
        color: #f8fbff !important;
    }

.sheet-opt-row__why[b-5ntgunhjqm] {
    padding: 8px 12px !important;
    border-radius: 12px !important;
    background: rgba(26,122,74,0.08) !important;
    border: 1px solid rgba(26,122,74,0.18) !important;
    font-size: 11.5px !important;
    color: var(--text-secondary) !important;
}

[data-bs-theme="dark"] .sheet-opt-row__why[b-5ntgunhjqm],
[data-theme="dark"] .sheet-opt-row__why[b-5ntgunhjqm] {
    background: rgba(34,197,94,0.08) !important;
    border-color: rgba(34,197,94,0.18) !important;
}


/* ─────────────────────────────────────────────────────────────────
   P. FAMILY CARDS (Mount Families)
   ───────────────────────────────────────────────────────────────── */
.pm-mounting-family-card[b-5ntgunhjqm],
.pm-family-card[b-5ntgunhjqm] {
    background: var(--panel-bg) !important;
    border: 1px solid var(--panel-border) !important;
    border-radius: 12px !important;
    margin-bottom: 10px !important;
    overflow: hidden !important;
}


/* ─────────────────────────────────────────────────────────────────
   Q. BEND STAT CELLS
   ───────────────────────────────────────────────────────────────── */
.pm-bend-stat[b-5ntgunhjqm] {
    background: var(--panel-bg-alt) !important;
    border: 1px solid var(--panel-border) !important;
    border-radius: 8px !important;
    padding: 10px 12px !important;
}

.pm-bend-stat__label[b-5ntgunhjqm] {
    font-size: 10px !important;
    font-weight: 800 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    color: var(--text-muted) !important;
    margin-bottom: 4px !important;
}

.pm-bend-stat__value[b-5ntgunhjqm] {
    font-size: 18px !important;
    font-weight: 800 !important;
    color: var(--text-primary) !important;
}

.pm-bend-stat__sub[b-5ntgunhjqm] {
    font-size: 11px !important;
    color: var(--text-muted) !important;
}


/* ─────────────────────────────────────────────────────────────────
   R. RESPONSIVE
   ───────────────────────────────────────────────────────────────── */
@media (max-width: 900px) {
    .pm-page-shell[b-5ntgunhjqm] {
        padding: 1rem !important;
    }

    .pm-form-row--2[b-5ntgunhjqm],
    .pm-form-row--3[b-5ntgunhjqm],
    .pm-form-row--4[b-5ntgunhjqm] {
        grid-template-columns: 1fr 1fr !important;
    }

    .pm-tab[b-5ntgunhjqm] {
        font-size: 10.5px !important;
        padding: 6px 10px !important;
    }
}

@media (max-width: 600px) {
    .pm-form-row--2[b-5ntgunhjqm],
    .pm-form-row--3[b-5ntgunhjqm],
    .pm-form-row--4[b-5ntgunhjqm] {
        grid-template-columns: 1fr !important;
    }

    .pm-section-header[b-5ntgunhjqm] {
        flex-direction: column !important;
        align-items: stretch !important;
    }

    .pm-tab span[b-5ntgunhjqm] {
        display: none !important;
    }

    .pm-modal-dialog[b-5ntgunhjqm],
    .pm-modal-dialog--lg[b-5ntgunhjqm],
    .pm-modal-dialog--xl[b-5ntgunhjqm] {
        max-width: 100% !important;
        border-radius: 12px 12px 0 0 !important;
    }

    .pm-modal-shell[b-5ntgunhjqm] {
        align-items: flex-end !important;
        padding: 0 !important;
    }

    .pm-page-title__chevron[b-5ntgunhjqm] {
        display: none !important;
    }
}

@media (max-width: 480px) {
    .pricing-summary-metrics--five[b-5ntgunhjqm],
    .pricing-summary-metrics--four[b-5ntgunhjqm] {
        grid-template-columns: 1fr 1fr !important;
    }

    .pricing-total-grid[b-5ntgunhjqm] {
        grid-template-columns: 1fr !important;
    }
}
/* _content/NoiseLockQuoteTool/Pages/ResetPassword.razor.rz.scp.css */
/* =============================================================
   ResetPassword.razor.css — REDESIGNED
   /reset-password
   Matches ForgotPassword polish, adds stronger success state.
   ============================================================= */

/* ── TOKEN BRIDGE ── */
:root[b-4nmu8fb2c0] {
    --rp-blue: #002855;
    --rp-blue-rgb: 0, 40, 85;
    --rp-gold: #F1B828;
    --rp-surface: #ffffff;
    --rp-surface-hi: #f8f9fb;
    --rp-bg: #f0f2f5;
    --rp-border: rgba(0, 40, 85, 0.14);
    --rp-text: #151b28;
    --rp-muted: rgba(21, 27, 40, 0.62);
    --rp-radius-sm: 10px;
    --rp-radius-md: 14px;
    --rp-radius-lg: 18px;
    --rp-shadow: 0 16px 40px rgba(0, 40, 85, 0.12), 0 3px 10px rgba(0, 0, 0, 0.06);
    --rp-transition: 0.18s ease;
}

    :root[data-bs-theme="dark"][b-4nmu8fb2c0] {
        --rp-surface: rgba(18, 24, 40, 0.92);
        --rp-surface-hi: rgba(20, 28, 48, 0.92);
        --rp-bg: #070b14;
        --rp-border: rgba(255, 255, 255, 0.14);
        --rp-text: rgba(255, 255, 255, 0.92);
        --rp-muted: rgba(226, 232, 240, 0.70);
        --rp-shadow: 0 22px 60px rgba(0, 0, 0, 0.55), 0 2px 10px rgba(0, 0, 0, 0.30);
    }

/* ── PAGE BACKGROUND (GLOBAL) ── */
:global(body)[b-4nmu8fb2c0] {
    min-height: 100vh;
    background: radial-gradient(1200px 600px at 18% 8%, rgba(80, 144, 232, 0.18), transparent 55%), radial-gradient(900px 520px at 86% 18%, rgba(241, 184, 40, 0.16), transparent 52%), linear-gradient(180deg, rgba(0, 40, 85, 0.03), rgba(255, 255, 255, 0.00));
}

:root[data-bs-theme="dark"] :global(body)[b-4nmu8fb2c0] {
    background: radial-gradient(1000px 520px at 18% 10%, rgba(80, 144, 232, 0.18), transparent 55%), radial-gradient(900px 520px at 84% 12%, rgba(241, 184, 40, 0.10), transparent 52%), linear-gradient(180deg, rgba(255, 255, 255, 0.03), rgba(0, 0, 0, 0.00)), var(--rp-bg);
}

/* ── OUTER CONTAINER (CARD) ── */
.container[b-4nmu8fb2c0] {
    max-width: 600px;
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.92));
    border: 1px solid var(--rp-border);
    border-radius: var(--rp-radius-lg);
    box-shadow: var(--rp-shadow);
    padding: 2.6rem 2.2rem !important;
    margin-top: 6vh;
    position: relative;
    overflow: hidden;
}

:root[data-bs-theme="dark"] .container[b-4nmu8fb2c0] {
    background: linear-gradient(180deg, rgba(18, 24, 40, 0.92), rgba(14, 18, 30, 0.92));
}

/* subtle “glass” highlight */
.container[b-4nmu8fb2c0]::after {
    content: "";
    position: absolute;
    inset: -2px;
    background: radial-gradient(520px 220px at 14% 10%, rgba(255, 255, 255, 0.55), transparent 55%);
    opacity: 0.18;
    pointer-events: none;
}

:root[data-bs-theme="dark"] .container[b-4nmu8fb2c0]::after {
    background: radial-gradient(520px 220px at 14% 10%, rgba(255, 255, 255, 0.20), transparent 55%);
    opacity: 0.22;
}

/* ── BRAND ACCENT BAR ── */
.container[b-4nmu8fb2c0]::before {
    content: '';
    display: block;
    height: 5px;
    background: linear-gradient(90deg, var(--rp-blue) 0%, var(--rp-gold) 100%);
    border-radius: var(--rp-radius-lg) var(--rp-radius-lg) 0 0;
    margin: -2.6rem -2.2rem 2.1rem;
}

/* ── PAGE HEADING ── */
.container h3[b-4nmu8fb2c0] {
    font-size: 1.45rem;
    font-weight: 900;
    color: var(--rp-blue);
    letter-spacing: 0.06em;
    text-transform: uppercase;
    margin-bottom: 0.35rem;
}

:root[data-bs-theme="dark"] .container h3[b-4nmu8fb2c0] {
    color: rgba(219, 232, 251, 0.95);
}

/* ── SUBTITLE ── */
.container .text-muted[b-4nmu8fb2c0] {
    color: var(--rp-muted) !important;
    font-size: 0.92rem;
    line-height: 1.6;
}

/* ── FORM LABEL ── */
.container .form-label[b-4nmu8fb2c0] {
    display: block;
    font-size: 0.74rem;
    font-weight: 850;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--rp-muted);
    margin-bottom: 0.42rem;
}

/* ── FORM INPUT ── */
.container .form-control[b-4nmu8fb2c0] {
    display: block;
    width: 100%;
    padding: 0.72rem 0.95rem;
    background: rgba(255, 255, 255, 0.92);
    border: 1.5px solid rgba(0, 40, 85, 0.16);
    border-radius: var(--rp-radius-sm);
    font-size: 0.95rem;
    color: var(--rp-text);
    transition: border-color var(--rp-transition), box-shadow var(--rp-transition), background var(--rp-transition);
    outline: none;
    appearance: none;
}

    .container .form-control:focus[b-4nmu8fb2c0] {
        border-color: rgba(0, 40, 85, 0.55);
        box-shadow: 0 0 0 3px rgba(var(--rp-blue-rgb), 0.14);
        background: #fff;
    }

:root[data-bs-theme="dark"] .container .form-control[b-4nmu8fb2c0] {
    background: rgba(10, 14, 24, 0.55);
    border-color: rgba(255, 255, 255, 0.16);
    color: var(--rp-text);
}

    :root[data-bs-theme="dark"] .container .form-control:focus[b-4nmu8fb2c0] {
        border-color: rgba(125, 211, 252, 0.55);
        box-shadow: 0 0 0 3px rgba(56, 189, 248, 0.20);
        background: rgba(10, 14, 24, 0.70);
    }

/* ── VALIDATION ── */
.container .small.text-danger[b-4nmu8fb2c0],
.container .validation-message[b-4nmu8fb2c0] {
    font-size: 0.78rem;
    color: #dc3545;
    margin-top: 0.35rem;
}

/* ── ALERT BANNERS ── */
.container .alert[b-4nmu8fb2c0] {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    padding: 0.95rem 1.05rem;
    border-radius: var(--rp-radius-sm);
    font-size: 0.88rem;
    border: 1px solid transparent;
    margin-bottom: 1rem;
}

/* Success state feels “done” + confident */
.container .alert-success[b-4nmu8fb2c0] {
    background: rgba(25, 135, 84, 0.10);
    border-color: rgba(25, 135, 84, 0.25);
    color: #0a5c38;
}

.container .alert-danger[b-4nmu8fb2c0] {
    background: rgba(220, 53, 69, 0.09);
    border-color: rgba(220, 53, 69, 0.25);
    color: #9d1a26;
}

:root[data-bs-theme="dark"] .container .alert-success[b-4nmu8fb2c0] {
    background: rgba(25, 135, 84, 0.14);
    border-color: rgba(25, 135, 84, 0.30);
    color: #6ee7a8;
}

:root[data-bs-theme="dark"] .container .alert-danger[b-4nmu8fb2c0] {
    background: rgba(220, 53, 69, 0.14);
    border-color: rgba(220, 53, 69, 0.30);
    color: #fca5a5;
}

/* Stronger success cue */
.container .alert-success[b-4nmu8fb2c0]::before {
    content: '🔒';
    font-size: 1.15rem;
    line-height: 1.2;
    flex-shrink: 0;
    margin-top: 0.05rem;
}

/* ── BUTTONS ── */
.container .btn[b-4nmu8fb2c0] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    font-weight: 850;
    font-size: 0.90rem;
    letter-spacing: 0.04em;
    border-radius: 12px;
    padding: 0.68rem 1.25rem;
    border: none;
    cursor: pointer;
    text-decoration: none;
    white-space: nowrap;
    transition: transform var(--rp-transition), box-shadow var(--rp-transition), background var(--rp-transition), color var(--rp-transition);
}

/* Primary — IAC Blue (Back to Sign In) */
.container .btn-solid.btn-primary-solid[b-4nmu8fb2c0] {
    background: linear-gradient(180deg, rgba(0, 40, 85, 0.98), rgba(0, 40, 85, 0.88));
    color: #fff;
    box-shadow: 0 10px 22px rgba(0, 40, 85, 0.22);
}

    .container .btn-solid.btn-primary-solid:hover:not(:disabled)[b-4nmu8fb2c0] {
        transform: translateY(-1px);
        background: linear-gradient(180deg, rgba(0, 58, 115, 0.98), rgba(0, 40, 85, 0.90));
        box-shadow: 0 14px 28px rgba(0, 40, 85, 0.28);
        color: #fff;
    }

/* Success — Green (Update Password CTA) */
.container .btn-solid.btn-success-solid[b-4nmu8fb2c0] {
    background: linear-gradient(180deg, rgba(25, 135, 84, 0.98), rgba(25, 135, 84, 0.88));
    color: #fff;
    box-shadow: 0 10px 22px rgba(25, 135, 84, 0.22);
}

    .container .btn-solid.btn-success-solid:hover:not(:disabled)[b-4nmu8fb2c0] {
        transform: translateY(-1px);
        background: linear-gradient(180deg, rgba(21, 115, 71, 0.98), rgba(25, 135, 84, 0.90));
        box-shadow: 0 14px 28px rgba(25, 135, 84, 0.28);
        color: #fff;
    }

    .container .btn-solid.btn-success-solid:disabled[b-4nmu8fb2c0] {
        opacity: 0.65;
        cursor: not-allowed;
        transform: none;
    }

/* Danger — ghost red (Cancel) */
.container .btn-solid.btn-danger-solid[b-4nmu8fb2c0] {
    background: rgba(220, 53, 69, 0.09);
    color: #dc3545;
    border: 1.5px solid rgba(220, 53, 69, 0.24);
}

    .container .btn-solid.btn-danger-solid:hover:not(:disabled)[b-4nmu8fb2c0] {
        background: #dc3545;
        color: #fff;
        border-color: #dc3545;
        transform: translateY(-1px);
    }

:root[data-bs-theme="dark"] .container .btn-solid.btn-danger-solid[b-4nmu8fb2c0] {
    background: rgba(220, 53, 69, 0.12);
    color: #fca5a5;
    border-color: rgba(220, 53, 69, 0.32);
}

    :root[data-bs-theme="dark"] .container .btn-solid.btn-danger-solid:hover:not(:disabled)[b-4nmu8fb2c0] {
        background: #dc3545;
        color: #fff;
    }

/* ── RESPONSIVE ── */
@media (max-width: 540px) {
    .container[b-4nmu8fb2c0] {
        margin-top: 3vh;
        padding: 1.85rem 1.25rem !important;
        border-radius: var(--rp-radius-md);
    }

        .container[b-4nmu8fb2c0]::before {
            margin: -1.85rem -1.25rem 1.6rem;
            border-radius: var(--rp-radius-md) var(--rp-radius-md) 0 0;
        }
}
/* _content/NoiseLockQuoteTool/Pages/ShipLoose.razor.rz.scp.css */
/* =============================================================
   SHIPLOOSE.RAZOR — COMPLETE PAGE STYLESHEET
   Font: DIN 2014 / DIN Pro throughout
   IAC Brand: Navy #002855 · Gold #F1B828 · Green #1a7a4a
   Mirrors Windows_razor.css token system exactly.
   =============================================================*/

/* ─────────────────────────────────────────────
   1. DESIGN TOKENS — LIGHT
   ───────────────────────────────────────────── */
:root[b-1x6km6yadt],
:root[data-bs-theme="light"][b-1x6km6yadt],
[data-theme="light"][b-1x6km6yadt] {
    --iac-navy: #002855;
    --iac-navy-mid: #1a3260;
    --iac-gold: #F1B828;
    --iac-gold-rgb: 241,184,40;
    --iac-navy-rgb: 0,40,85;
    --iac-green: #1a7a4a;
    --iac-green-rgb: 26,122,74;
    --page-bg: #f0f2f5;
    --panel-bg: #f7f8fb;
    --panel-bg-alt: #eef0f4;
    --panel-border: rgba(0,40,85,0.10);
    --panel-border-strong: rgba(0,40,85,0.18);
    --header-bg: #d8dde5;
    --header-border: rgba(0,40,85,0.18);
    --text-primary: #0d1f3c;
    --text-secondary: rgba(13,31,60,0.72);
    --text-muted: rgba(13,31,60,0.48);
    --text-dim: rgba(13,31,60,0.36);
    --input-bg: #ffffff;
    --input-bg-hover: #f4f6f8;
    --input-border: rgba(0,40,85,0.14);
    --input-border-focus: rgba(241,184,40,0.70);
    --input-focus-shadow: rgba(241,184,40,0.18);
    --input-text: #0d1f3c;
    --input-placeholder: rgba(13,31,60,0.38);
    --input-disabled-bg: rgba(0,40,85,0.05);
    --divider: rgba(0,40,85,0.08);
    --divider-strong: rgba(0,40,85,0.14);
    /* Buttons — Light */
    --btn-primary-bg: #b45309;
    --btn-primary-hover: #92400e;
    --btn-primary-border: #92400e;
    --btn-primary-shadow: 0 2px 6px rgba(180,83,9,0.30), 0 1px 2px rgba(0,0,0,0.12);
    --btn-primary-glow: 0 0 0 3px rgba(217,119,6,0.22);
    --btn-primary-text: #ffffff;
    --btn-success-bg: #155f39;
    --btn-success-hover: #0f4a2c;
    --btn-success-border: #0f4a2c;
    --btn-success-shadow: 0 2px 6px rgba(21,95,57,0.30), 0 1px 2px rgba(0,0,0,0.12);
    --btn-success-glow: 0 0 0 3px rgba(26,122,74,0.22);
    --btn-success-text: #ffffff;
    --btn-add-bg: #155f39;
    --btn-add-hover: #0f4a2c;
    --btn-add-border: #0f4a2c;
    --btn-add-shadow: 0 2px 6px rgba(21,95,57,0.30), 0 1px 2px rgba(0,0,0,0.12);
    --btn-add-glow: 0 0 0 3px rgba(26,122,74,0.22);
    --btn-add-text: #ffffff;
    --btn-utility-bg: #991b1b;
    --btn-utility-hover: #7f1d1d;
    --btn-utility-border: #7f1d1d;
    --btn-utility-shadow: 0 2px 6px rgba(153,27,27,0.30), 0 1px 2px rgba(0,0,0,0.12);
    --btn-utility-glow: 0 0 0 3px rgba(196,30,30,0.20);
    --btn-utility-text: #ffffff;
    --btn-neutral-bg: #002855;
    --btn-neutral-hover: #001e42;
    --btn-neutral-border: #001e42;
    --btn-neutral-text: #ffffff;
    --btn-neutral-shadow: 0 2px 6px rgba(0,40,85,0.22), 0 1px 2px rgba(0,0,0,0.10);
    --btn-danger-bg: rgba(220,38,38,0.08);
    --btn-danger-hover: rgba(220,38,38,0.14);
    --btn-danger-border: rgba(220,38,38,0.18);
    --btn-danger-text: #b91c1c;
    --btn-danger-shadow: 0 2px 6px rgba(220,38,38,0.10);
    /* Table */
    --table-head-bg: #e2e6ec;
    --table-head-border: #002855;
    --table-head-text: #002855;
    --table-row-even: #ffffff;
    --table-row-odd: #f5f7fa;
    --table-row-hover: rgba(241,184,40,0.08);
    --table-border: rgba(0,40,85,0.10);
    /* Summary pills */
    --pill-yellow-bg: rgba(241,184,40,0.13);
    --pill-yellow-color: #5c3d00;
    --pill-yellow-border: rgba(241,184,40,0.32);
    --pill-green-bg: rgba(26,122,74,0.09);
    --pill-green-color: #0f4a2b;
    --pill-green-border: rgba(26,122,74,0.20);
    /* Offcanvas */
    --iac-footer-height: 20px;
    --iac-surface: #ffffff;
    --iac-surface-2: rgba(0,40,85,0.04);
    --iac-border: rgba(0,40,85,0.12);
    --iac-border-hover: rgba(0,40,85,0.22);
    --iac-accent: var(--iac-gold);
    --iac-accent-glow: rgba(241,184,40,0.22);
    --iac-accent-dim: rgba(241,184,40,0.14);
    --iac-accent-border: rgba(241,184,40,0.30);
    --iac-text-primary: #0d1f3c;
    --iac-text-secondary: rgba(13,31,60,0.72);
    --iac-text-muted: rgba(13,31,60,0.48);
    --iac-success: #1a7a4a;
    --iac-success-text: #ffffff;
    --iac-success-shadow: rgba(26,122,74,0.18);
    --iac-success-hover: rgba(26,122,74,0.28);
    --iac-disabled-bg: rgba(0,40,85,0.05);
    --iac-shadow: 0 20px 60px rgba(0,40,85,0.16), 0 0 0 1px rgba(0,40,85,0.06);
    --iac-close-hover: rgba(0,40,85,0.06);
    --iac-cancel-hover: rgba(0,40,85,0.05);
    --iac-req-note-bg: rgba(241,184,40,0.14);
    --iac-scrollbar: rgba(0,40,85,0.18);
    --scrollbar-thumb: rgba(0,40,85,0.18);
    /* Select chevron — light mode (dark) */
    --iac-select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%230d1f3c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.55'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    /* Modal — Light */
    --modal-bg: #ffffff;
    --modal-header-bg: #f8f9fc;
    --modal-footer-bg: #f8f9fc;
    --modal-border: rgba(0,40,85,0.12);
    /* Error overlay — Light */
    --error-overlay: rgba(0,0,0,0.45);
    --error-card-bg: #ffffff;
    --error-card-border: rgba(0,40,85,0.12);
    --error-card-shadow: 0 20px 60px rgba(0,40,85,0.18);
    /* Quick-summary panel */
    --summary-panel-bg: #f0f4fb;
    --summary-panel-border: rgba(0,40,85,0.12);
    --summary-key-color: rgba(13,31,60,0.55);
    --summary-value-color: #0d1f3c;
}

    /* ─────────────────────────────────────────────
   1b. DESIGN TOKENS — DARK
   ───────────────────────────────────────────── */
    :root[data-bs-theme="dark"][b-1x6km6yadt],
    [data-theme="dark"][b-1x6km6yadt] {
        --iac-navy: #0d1f3c;
        --iac-navy-mid: #1a3260;
        --iac-gold: #F1B828;
        --iac-gold-rgb: 241,184,40;
        --iac-navy-rgb: 13,31,60;
        --iac-green: #22c55e;
        --iac-green-rgb: 34,197,94;
        --page-bg: #0b0f17;
        --panel-bg: #1a2033;
        --panel-bg-alt: #1d2438;
        --panel-border: rgba(255,255,255,0.10);
        --panel-border-strong: rgba(255,255,255,0.16);
        --header-bg: #090c14;
        --header-border: rgba(255,255,255,0.12);
        --text-primary: rgba(255,255,255,0.92);
        --text-secondary: rgba(255,255,255,0.72);
        --text-muted: rgba(255,255,255,0.48);
        --text-dim: rgba(255,255,255,0.30);
        --input-bg: rgba(255,255,255,0.06);
        --input-bg-hover: rgba(255,255,255,0.09);
        --input-border: rgba(255,255,255,0.11);
        --input-border-focus: rgba(241,184,40,0.55);
        --input-focus-shadow: rgba(241,184,40,0.14);
        --input-text: rgba(255,255,255,0.90);
        --input-placeholder: rgba(255,255,255,0.32);
        --input-disabled-bg: rgba(255,255,255,0.04);
        --divider: rgba(255,255,255,0.06);
        --divider-strong: rgba(255,255,255,0.10);
        /* Buttons — Dark glow */
        --btn-primary-bg: #d97706;
        --btn-primary-hover: #f59e0b;
        --btn-primary-border: #d97706;
        --btn-primary-shadow: 0 4px 18px rgba(217,119,6,0.55), 0 0 32px rgba(217,119,6,0.22), 0 1px 3px rgba(0,0,0,0.30);
        --btn-primary-glow: 0 0 0 3px rgba(217,119,6,0.35), 0 0 20px rgba(217,119,6,0.25);
        --btn-primary-text: #ffffff;
        --btn-success-bg: #1a7a4a;
        --btn-success-hover: #22c55e;
        --btn-success-border: #22c55e;
        --btn-success-shadow: 0 4px 18px rgba(26,122,74,0.55), 0 0 32px rgba(34,197,94,0.22), 0 1px 3px rgba(0,0,0,0.30);
        --btn-success-glow: 0 0 0 3px rgba(34,197,94,0.30), 0 0 20px rgba(34,197,94,0.20);
        --btn-success-text: #ffffff;
        --btn-add-bg: #1a7a4a;
        --btn-add-hover: #22c55e;
        --btn-add-border: #22c55e;
        --btn-add-shadow: 0 4px 18px rgba(26,122,74,0.55), 0 0 32px rgba(34,197,94,0.22), 0 1px 3px rgba(0,0,0,0.30);
        --btn-add-glow: 0 0 0 3px rgba(34,197,94,0.30), 0 0 20px rgba(34,197,94,0.20);
        --btn-add-text: #ffffff;
        --btn-utility-bg: #dc2626;
        --btn-utility-hover: #ef4444;
        --btn-utility-border: #dc2626;
        --btn-utility-shadow: 0 4px 18px rgba(220,38,38,0.55), 0 0 32px rgba(239,68,68,0.22), 0 1px 3px rgba(0,0,0,0.30);
        --btn-utility-glow: 0 0 0 3px rgba(239,68,68,0.32), 0 0 20px rgba(239,68,68,0.20);
        --btn-utility-text: #ffffff;
        --btn-neutral-bg: rgba(255,255,255,0.08);
        --btn-neutral-hover: rgba(255,255,255,0.14);
        --btn-neutral-border: rgba(255,255,255,0.18);
        --btn-neutral-text: rgba(255,255,255,0.90);
        --btn-neutral-shadow: 0 4px 14px rgba(0,0,0,0.30), 0 0 0 1px rgba(255,255,255,0.10);
        --btn-danger-bg: rgba(239,68,68,0.10);
        --btn-danger-hover: rgba(239,68,68,0.20);
        --btn-danger-border: rgba(239,68,68,0.28);
        --btn-danger-text: #f87171;
        --btn-danger-shadow: 0 2px 12px rgba(239,68,68,0.25), 0 0 18px rgba(239,68,68,0.15);
        /* Table — Dark */
        --table-head-bg: #0e1520;
        --table-head-border: #F1B828;
        --table-head-text: #F1B828;
        --table-row-even: #1a2236;
        --table-row-odd: #1e2840;
        --table-row-hover: #263250;
        --table-border: rgba(255,255,255,0.06);
        /* Summary pills — Dark vibrant */
        --pill-yellow-bg: rgba(241,184,40,0.09);
        --pill-yellow-color: rgba(241,184,40,0.78);
        --pill-yellow-border: rgba(241,184,40,0.20);
        --pill-green-bg: rgba(34,197,94,0.07);
        --pill-green-color: rgba(74,222,128,0.80);
        --pill-green-border: rgba(34,197,94,0.16);
        /* Offcanvas — Dark */
        --iac-surface: #1a2236;
        --iac-surface-2: #1e2840;
        --iac-border: rgba(255,255,255,0.10);
        --iac-border-hover: rgba(255,255,255,0.18);
        --iac-accent: var(--iac-gold);
        --iac-accent-glow: rgba(241,184,40,0.20);
        --iac-accent-dim: rgba(241,184,40,0.12);
        --iac-accent-border: rgba(241,184,40,0.26);
        --iac-text-primary: rgba(255,255,255,0.94);
        --iac-text-secondary: rgba(255,255,255,0.72);
        --iac-text-muted: rgba(255,255,255,0.55);
        --iac-success: #1a7a4a;
        --iac-success-text: #ffffff;
        --iac-success-shadow: rgba(26,122,74,0.25);
        --iac-success-hover: rgba(26,122,74,0.40);
        --iac-disabled-bg: rgba(255,255,255,0.06);
        --iac-shadow: 0 32px 80px rgba(0,0,0,0.60), 0 0 0 1px rgba(255,255,255,0.05);
        --iac-close-hover: rgba(241,184,40,0.10);
        --iac-cancel-hover: rgba(255,255,255,0.06);
        --iac-req-note-bg: rgba(241,184,40,0.06);
        --iac-scrollbar: rgba(255,255,255,0.14);
        --scrollbar-thumb: rgba(255,255,255,0.14);
        /* Select chevron — dark mode (white) */
        --iac-select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.62'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
        /* Modal — Dark */
        --modal-bg: #1a2236;
        --modal-header-bg: #0e1520;
        --modal-footer-bg: #0e1520;
        --modal-border: rgba(255,255,255,0.10);
        /* Error overlay — Dark */
        --error-overlay: rgba(0,0,0,0.72);
        --error-card-bg: #1a1f2e;
        --error-card-border: rgba(255,255,255,0.10);
        --error-card-shadow: 0 32px 80px rgba(0,0,0,0.60);
        /* Quick-summary panel — Dark */
        --summary-panel-bg: rgba(255,255,255,0.04);
        --summary-panel-border: rgba(255,255,255,0.10);
        --summary-key-color: rgba(255,255,255,0.48);
        --summary-value-color: rgba(255,255,255,0.92);
    }

/* ─────────────────────────────────────────────
   2. BASE / RESET
   ───────────────────────────────────────────── */
*[b-1x6km6yadt], *[b-1x6km6yadt]::before, *[b-1x6km6yadt]::after {
    box-sizing: border-box;
}

.quotes-page[b-1x6km6yadt],
.quotes-page *[b-1x6km6yadt] {
    font-family: 'din-2014', 'DIN 2014', 'DIN Pro', 'DM Sans', system-ui, -apple-system, sans-serif !important;
}

[b-1x6km6yadt]::-webkit-scrollbar {
    width: 5px;
    height: 5px;
}

[b-1x6km6yadt]::-webkit-scrollbar-track {
    background: transparent;
}

[b-1x6km6yadt]::-webkit-scrollbar-thumb {
    background: var(--scrollbar-thumb);
    border-radius: 10px;
}

/* ─────────────────────────────────────────────
   3. PAGE SHELL & QUOTES HEADER
   ───────────────────────────────────────────── */
.quotes-page[b-1x6km6yadt] {
    background: var(--page-bg);
    min-height: 100vh;
    transition: background 0.25s;
}

.quotes-header[b-1x6km6yadt] {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    margin: 0 0 20px;
    padding: 14px 22px;
    border-radius: 12px;
    border: 1px solid var(--panel-border-strong);
    background: linear-gradient(135deg, #d2d7e0 0%, #cdd2db 100%);
    box-shadow: 0 2px 8px rgba(0,40,85,0.10), 0 6px 24px rgba(0,40,85,0.07);
    transition: background 0.25s, border-color 0.25s, box-shadow 0.25s;
}

    .quotes-header h3[b-1x6km6yadt] {
        font-size: 15px;
        font-weight: 800;
        letter-spacing: 0.05em;
        text-transform: uppercase;
        color: var(--iac-navy);
        margin: 0;
        white-space: nowrap;
    }

        .quotes-header h3[b-1x6km6yadt]::after {
            content: "❯❯";
            display: inline-block;
            margin-left: .6rem;
            color: var(--iac-gold);
            font-size: 1.05em;
            letter-spacing: -2px;
            line-height: 1;
            transform: translateY(1px);
        }

/* Light mode banner */
:root[data-bs-theme="light"] .quotes-header[b-1x6km6yadt],
[data-theme="light"] .quotes-header[b-1x6km6yadt] {
    background: linear-gradient(135deg, #d2d7e0 0%, #cdd2db 100%);
    border-color: rgba(0,40,85,0.16);
}

/* Dark mode banner */
:root[data-bs-theme="dark"] .quotes-header[b-1x6km6yadt],
[data-theme="dark"] .quotes-header[b-1x6km6yadt] {
    background: linear-gradient(135deg, #0e1623 0%, #111a2e 100%);
    border-color: rgba(241,184,40,0.20);
    box-shadow: 0 2px 10px rgba(0,0,0,0.30), 0 0 0 1px rgba(241,184,40,0.08);
}

    :root[data-bs-theme="dark"] .quotes-header h3[b-1x6km6yadt],
    [data-theme="dark"] .quotes-header h3[b-1x6km6yadt] {
        color: rgba(255,255,255,0.90);
    }

        :root[data-bs-theme="dark"] .quotes-header h3[b-1x6km6yadt]::after,
        [data-theme="dark"] .quotes-header h3[b-1x6km6yadt]::after {
            color: var(--iac-gold);
        }

/* Project Details button — ghost on the always-dark navy header */
.mpl-page-header .btn[b-1x6km6yadt],
.quotes-header .btn[data-bs-target="#projectOffcanvas"][b-1x6km6yadt],
.quotes-header .btn[data-bs-target="#projectOffcanvas"]:not(:hover)[b-1x6km6yadt],
.btn-project-details[b-1x6km6yadt] {
    background: transparent !important;
    border: 1px solid rgba(255,255,255,0.30) !important;
    color: rgba(255,255,255,0.80) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
    padding: 5px 12px !important;
    border-radius: 6px !important;
    box-shadow: none !important;
    transition: background 0.15s, border-color 0.15s, color 0.15s !important;
    text-shadow: none !important;
}

    .mpl-page-header .btn:hover[b-1x6km6yadt],
    .quotes-header .btn[data-bs-target="#projectOffcanvas"]:hover[b-1x6km6yadt],
    .btn-project-details:hover[b-1x6km6yadt] {
        background: rgba(255,255,255,0.10) !important;
        border-color: var(--iac-gold) !important;
        color: var(--iac-gold) !important;
        box-shadow: none !important;
        transform: none !important;
    }

[data-bs-theme="dark"] .mpl-page-header .btn[b-1x6km6yadt],
[data-bs-theme="dark"] .quotes-header .btn[data-bs-target="#projectOffcanvas"][b-1x6km6yadt],
[data-bs-theme="dark"] .btn-project-details[b-1x6km6yadt] {
    background: transparent !important;
    border-color: rgba(255,255,255,0.28) !important;
    color: rgba(255,255,255,0.78) !important;
    box-shadow: none !important;
}

    [data-bs-theme="dark"] .mpl-page-header .btn:hover[b-1x6km6yadt],
    [data-bs-theme="dark"] .quotes-header .btn[data-bs-target="#projectOffcanvas"]:hover[b-1x6km6yadt],
    [data-bs-theme="dark"] .btn-project-details:hover[b-1x6km6yadt] {
        background: rgba(255,255,255,0.10) !important;
        border-color: var(--iac-gold) !important;
        color: var(--iac-gold) !important;
        box-shadow: none !important;
    }

/* ─────────────────────────────────────────────
   4. IAC PANEL / CARD
   ───────────────────────────────────────────── */
.card.border-0.shadow-sm[b-1x6km6yadt] {
    background: var(--panel-bg) !important;
    border: 1px solid var(--panel-border) !important;
    border-radius: 14px !important;
    box-shadow: 0 2px 8px rgba(0,40,85,0.10), 0 8px 28px rgba(0,40,85,0.08), 0 20px 50px rgba(0,40,85,0.06) !important;
    transition: background 0.25s, border-color 0.25s;
    overflow: hidden;
}

    .card.border-0.shadow-sm .card-body[b-1x6km6yadt] {
        background: var(--panel-bg) !important;
        padding: 20px 22px !important;
    }

:root[data-bs-theme="dark"] .card.border-0.shadow-sm[b-1x6km6yadt],
[data-theme="dark"] .card.border-0.shadow-sm[b-1x6km6yadt] {
    background: #1a2236 !important;
    border-color: rgba(255,255,255,0.08) !important;
    box-shadow: 0 4px 16px rgba(0,0,0,0.45), 0 12px 40px rgba(0,0,0,0.35), 0 0 0 1px rgba(255,255,255,0.05) !important;
}

    :root[data-bs-theme="dark"] .card.border-0.shadow-sm .card-body[b-1x6km6yadt],
    [data-theme="dark"] .card.border-0.shadow-sm .card-body[b-1x6km6yadt] {
        background: #1a2236 !important;
    }

/* Border divider between left and right panels */
.border-end[b-1x6km6yadt] {
    border-color: var(--divider-strong) !important;
}

/* ─────────────────────────────────────────────
   5. FORM LABELS
   ───────────────────────────────────────────── */
.form-label[b-1x6km6yadt] {
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: 0.09em !important;
    text-transform: uppercase !important;
    color: #001e42 !important;
    margin-bottom: 4px !important;
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    padding: 3px 8px 3px 7px !important;
    border-left: 3px solid var(--iac-gold) !important;
    border-radius: 4px 4px 0 0 !important;
    background: rgba(0,40,85,0.05) !important;
    width: 100% !important;
    line-height: 1.4 !important;
}

:root[data-bs-theme="dark"] .form-label[b-1x6km6yadt],
[data-theme="dark"] .form-label[b-1x6km6yadt] {
    color: rgba(255,255,255,0.90) !important;
    border-left-color: var(--iac-gold) !important;
    background: rgba(241,184,40,0.10) !important;
}

/* ─────────────────────────────────────────────
   6. FORM CONTROLS & SELECTS
   ───────────────────────────────────────────── */
.form-control[b-1x6km6yadt],
.form-select[b-1x6km6yadt] {
    background: var(--input-bg) !important;
    border: 1px solid var(--input-border) !important;
    border-radius: 0 0 8px 8px !important;
    color: var(--input-text) !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    padding: 8px 12px !important;
    transition: border-color 0.18s, box-shadow 0.18s, background 0.18s !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}

    .form-control[b-1x6km6yadt]::placeholder {
        color: var(--input-placeholder) !important;
    }

    .form-control:focus[b-1x6km6yadt],
    .form-select:focus[b-1x6km6yadt] {
        border-color: var(--input-border-focus) !important;
        box-shadow: 0 0 0 3px var(--input-focus-shadow) !important;
        background: var(--input-bg-hover) !important;
        outline: none !important;
    }

    .form-control:disabled[b-1x6km6yadt],
    .form-select:disabled[b-1x6km6yadt] {
        background: var(--input-disabled-bg) !important;
        color: var(--text-muted) !important;
        cursor: not-allowed;
        opacity: 1 !important;
    }

/* Select chevron — uses token that flips light/dark automatically */
.form-select[b-1x6km6yadt] {
    background-image: var(--iac-select-chevron) !important;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
    background-size: 14px 14px !important;
    padding-right: 36px !important;
}

:root[data-bs-theme="dark"] .form-select[b-1x6km6yadt],
[data-theme="dark"] .form-select[b-1x6km6yadt] {
    background-color: var(--input-bg) !important;
}

/* Unit-price and description read-only plaintext */
.form-control-plaintext[b-1x6km6yadt] {
    color: var(--text-primary) !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    padding: 8px 12px !important;
    background: var(--input-disabled-bg) !important;
    border-radius: 0 0 8px 8px !important;
    border: 1px dashed var(--input-border) !important;
    line-height: 1.5 !important;
}

/* ─────────────────────────────────────────────
   7. QUICK SUMMARY PANEL (right column)
   ───────────────────────────────────────────── */
.col-lg-4.ps-lg-4 h6[b-1x6km6yadt] {
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    color: var(--iac-navy) !important;
    margin-bottom: 12px !important;
    padding-left: 10px !important;
    border-left: 3px solid var(--iac-gold);
}

:root[data-bs-theme="dark"] .col-lg-4.ps-lg-4 h6[b-1x6km6yadt],
[data-theme="dark"] .col-lg-4.ps-lg-4 h6[b-1x6km6yadt] {
    color: rgba(241,184,40,0.90) !important;
}

/* Summary stats box */
.sl-summary-box[b-1x6km6yadt] {
    background: var(--summary-panel-bg);
    border: 1px solid var(--summary-panel-border);
    border-radius: 10px;
    padding: 14px 16px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.sl-summary-stat[b-1x6km6yadt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 8px;
    padding: 6px 0;
    border-bottom: 1px solid var(--divider);
}

    .sl-summary-stat:last-child[b-1x6km6yadt] {
        border-bottom: none;
    }

.sl-summary-stat__key[b-1x6km6yadt] {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    color: var(--summary-key-color);
}

.sl-summary-stat__val[b-1x6km6yadt] {
    font-size: 13px;
    font-weight: 800;
    color: var(--summary-value-color);
    text-align: right;
}

/* Fallback: the small.text-muted quick summary uses bootstrap classes — style them */
.col-lg-4.ps-lg-4 .small.text-muted[b-1x6km6yadt] {
    background: var(--summary-panel-bg);
    border: 1px solid var(--summary-panel-border);
    border-radius: 10px;
    padding: 12px 16px;
    font-size: 12px !important;
    color: var(--text-secondary) !important;
    line-height: 1.8;
}

    .col-lg-4.ps-lg-4 .small.text-muted strong[b-1x6km6yadt] {
        color: var(--text-primary) !important;
        font-weight: 700;
    }

/* ─────────────────────────────────────────────
   8. SLAB CARD (Order Lines section)
   ───────────────────────────────────────────── */
.slab-card[b-1x6km6yadt] {
    background: var(--panel-bg-alt);
    border: 1px solid var(--panel-border);
    border-radius: 14px;
    overflow: hidden;
}

.slab-card__head[b-1x6km6yadt] {
    background: #e8ebf0;
    border-bottom: 1px solid var(--header-border);
    padding: 12px 18px;
    position: relative;
}

    .slab-card__head[b-1x6km6yadt]::before {
        display: none;
    }

.slab-card__title[b-1x6km6yadt] {
    font-size: 13px !important;
    font-weight: 800 !important;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #0d1f3c !important;
    margin: 0;
    padding-left: 0;
}

.slab-card__body[b-1x6km6yadt] {
    padding: 16px 18px;
    background: var(--panel-bg-alt);
}

:root[data-bs-theme="dark"] .slab-card[b-1x6km6yadt],
[data-theme="dark"] .slab-card[b-1x6km6yadt] {
    background: #1d2438;
    border-color: rgba(255,255,255,0.08);
}

:root[data-bs-theme="dark"] .slab-card__head[b-1x6km6yadt],
[data-theme="dark"] .slab-card__head[b-1x6km6yadt] {
    background: #0e1520 !important;
    border-bottom-color: rgba(241,184,40,0.28) !important;
}

:root[data-bs-theme="dark"] .slab-card__body[b-1x6km6yadt],
[data-theme="dark"] .slab-card__body[b-1x6km6yadt] {
    background: #1d2438;
}

.slab-card__body .text-muted[b-1x6km6yadt] {
    color: var(--text-muted) !important;
    font-size: 13px;
    font-style: italic;
}

/* ─────────────────────────────────────────────
   9. ORDER TABLE
   ───────────────────────────────────────────── */
.order-table-wrap[b-1x6km6yadt] {
    overflow-x: auto;
    border-radius: 10px;
    border: 1px solid var(--panel-border);
    -webkit-overflow-scrolling: touch;
}

.order-table[b-1x6km6yadt] {
    width: 100%;
    border-collapse: collapse;
    font-size: 12.5px;
    margin: 0 !important;
}

    /* Head */
    .order-table thead tr[b-1x6km6yadt] {
        background: var(--table-head-bg) !important;
    }

    .order-table thead th[b-1x6km6yadt] {
        background: #002855 !important;
        color: #ffffff !important;
        border-bottom: 2px solid var(--iac-gold) !important;
        border-top: none !important;
        padding: 10px 12px !important;
        font-size: 10px !important;
        font-weight: 800 !important;
        letter-spacing: 0.10em !important;
        text-transform: uppercase !important;
        white-space: nowrap;
    }

    /* Body rows */
    .order-table tbody tr:nth-child(odd) td[b-1x6km6yadt] {
        background: var(--table-row-odd) !important;
    }

    .order-table tbody tr:nth-child(even) td[b-1x6km6yadt] {
        background: var(--table-row-even) !important;
    }

    .order-table tbody tr[b-1x6km6yadt] {
        border-bottom: 1px solid var(--table-border);
        transition: background 0.12s;
    }

        .order-table tbody tr:hover td[b-1x6km6yadt] {
            background: var(--table-row-hover) !important;
        }

            .order-table tbody tr:hover td:first-child[b-1x6km6yadt] {
                border-left: 3px solid var(--iac-navy);
                padding-left: 9px !important;
            }

:root[data-bs-theme="dark"] .order-table tbody tr:hover td:first-child[b-1x6km6yadt],
[data-theme="dark"] .order-table tbody tr:hover td:first-child[b-1x6km6yadt] {
    border-left-color: var(--iac-gold);
}

.order-table td[b-1x6km6yadt] {
    padding: 9px 12px !important;
    vertical-align: middle !important;
    color: var(--text-primary) !important;
    border-bottom: 1px solid var(--table-border) !important;
}

/* Summary footer row */
.order-summary-row th[b-1x6km6yadt] {
    background: var(--table-head-bg) !important;
    color: var(--table-head-text) !important;
    border-top: 2px solid var(--table-head-border) !important;
    padding: 10px 12px !important;
    font-size: 11px !important;
    font-weight: 700 !important;
}

.summary-key-cell[b-1x6km6yadt] {
    font-size: 10px !important;
    font-weight: 900 !important;
    letter-spacing: 0.10em !important;
    text-transform: uppercase !important;
    color: var(--iac-navy) !important;
}

:root[data-bs-theme="dark"] .summary-key-cell[b-1x6km6yadt],
[data-theme="dark"] .summary-key-cell[b-1x6km6yadt] {
    color: var(--iac-gold) !important;
}

/* ─────────────────────────────────────────────
   10. BUTTONS — SOLID VARIANTS
   ───────────────────────────────────────────── */
.btn[b-1x6km6yadt] {
    font-family: 'din-2014', 'DIN 2014', 'DIN Pro', 'DM Sans', system-ui, -apple-system, sans-serif !important;
}

.btn-solid[b-1x6km6yadt] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    font-weight: 700;
    letter-spacing: 0.04em;
    border-radius: 8px;
    border: 1px solid transparent;
    cursor: pointer;
    transition: all 0.18s cubic-bezier(0.2, 0, 0, 1);
    white-space: nowrap;
    text-decoration: none;
    position: relative;
    overflow: hidden;
}

    .btn-solid.btn-sm[b-1x6km6yadt] {
        font-size: 12px;
        padding: 8px 16px;
        height: 36px;
        min-width: 80px;
    }

    .btn-solid:active[b-1x6km6yadt] {
        transform: translateY(1px);
    }

    .btn-solid:disabled[b-1x6km6yadt] {
        opacity: 0.50;
        cursor: not-allowed;
        pointer-events: none;
    }

/* ── Primary (Save Quote / Save Ship Loose) — Amber ── */
.btn-primary-solid[b-1x6km6yadt] {
    background: #002855 !important;
    border-color: rgba(241,184,40,0.35) !important;
    color: #ffffff !important;
    box-shadow: 0 3px 14px rgba(0,40,85,0.28) !important;
    font-weight: 800 !important;
}

    .btn-primary-solid:hover:not(:disabled)[b-1x6km6yadt] {
        background: #001e42 !important;
        border-color: rgba(241,184,40,0.55) !important;
        color: #ffffff !important;
        box-shadow: 0 5px 20px rgba(0,40,85,0.38) !important;
        transform: translateY(-2px);
    }

[data-bs-theme="dark"] .btn-primary-solid[b-1x6km6yadt] {
    background: rgba(217,119,6,0.22) !important;
    border-color: rgba(217,119,6,0.42) !important;
    color: rgba(255,255,255,0.95) !important;
    box-shadow: 0 3px 16px rgba(0,0,0,0.34) !important;
    text-shadow: 0 0 10px rgba(255,180,40,0.40);
}

    [data-bs-theme="dark"] .btn-primary-solid:hover:not(:disabled)[b-1x6km6yadt] {
        background: rgba(217,119,6,0.32) !important;
        border-color: rgba(217,119,6,0.58) !important;
        color: #ffffff !important;
        text-shadow: 0 0 16px rgba(255,180,40,0.60);
        transform: translateY(-2px);
    }

/* ── Success (Order Now / Submit All) — Green ── */
.btn.btn-solid.btn-success-solid[b-1x6km6yadt],
.btn-success-solid[b-1x6km6yadt] {
    background: #1a7a4a !important;
    border-color: transparent !important;
    color: #ffffff !important;
    box-shadow: 0 3px 14px rgba(26,122,74,0.35) !important;
    font-weight: 800 !important;
}

    .btn.btn-solid.btn-success-solid:hover:not(:disabled)[b-1x6km6yadt],
    .btn-success-solid:hover:not(:disabled)[b-1x6km6yadt] {
        background: #155f39 !important;
        box-shadow: 0 5px 20px rgba(26,122,74,0.45) !important;
        transform: translateY(-2px);
        color: #ffffff !important;
    }

[data-bs-theme="dark"] .btn.btn-solid.btn-success-solid[b-1x6km6yadt],
[data-bs-theme="dark"] .btn-success-solid[b-1x6km6yadt] {
    background: rgba(26,122,74,0.22) !important;
    border-color: rgba(26,122,74,0.45) !important;
    color: #6ee7a8 !important;
    box-shadow: 0 0 0 1px rgba(26,122,74,0.35), 0 3px 18px rgba(26,122,74,0.38) !important;
}

    [data-bs-theme="dark"] .btn.btn-solid.btn-success-solid:hover:not(:disabled)[b-1x6km6yadt],
    [data-bs-theme="dark"] .btn-success-solid:hover:not(:disabled)[b-1x6km6yadt] {
        background: rgba(26,122,74,0.34) !important;
        border-color: rgba(26,122,74,0.65) !important;
        color: #ffffff !important;
        box-shadow: 0 0 0 1px rgba(26,122,74,0.50), 0 5px 24px rgba(26,122,74,0.52) !important;
        transform: translateY(-2px) !important;
    }

/* ── Neutral (Add / Switch tabs / Edit) — Navy ── */
.btn-neutral-solid[b-1x6km6yadt] {
    background: #002855 !important;
    border-color: rgba(0,40,85,0.22) !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(0,40,85,0.22), 0 1px 2px rgba(0,0,0,0.10) !important;
    font-weight: 700 !important;
}

    .btn-neutral-solid:hover:not(:disabled)[b-1x6km6yadt] {
        background: #001e42 !important;
        border-color: rgba(241,184,40,0.40) !important;
        color: #F1B828 !important;
        box-shadow: 0 4px 14px rgba(0,40,85,0.32) !important;
        transform: translateY(-1px);
    }

[data-bs-theme="dark"] .btn-neutral-solid[b-1x6km6yadt] {
    background: rgba(255,255,255,0.08) !important;
    border-color: rgba(255,255,255,0.18) !important;
    color: rgba(255,255,255,0.90) !important;
    box-shadow: 0 4px 14px rgba(0,0,0,0.30), 0 0 0 1px rgba(255,255,255,0.10) !important;
}

    [data-bs-theme="dark"] .btn-neutral-solid:hover:not(:disabled)[b-1x6km6yadt] {
        background: rgba(255,255,255,0.14) !important;
        border-color: rgba(255,255,255,0.28) !important;
        color: #ffffff !important;
        box-shadow: 0 5px 18px rgba(0,0,0,0.38) !important;
        transform: translateY(-1px);
    }

/* ── Utility (Export to PDF) — Red ── */
.btn-utility-solid[b-1x6km6yadt] {
    background: #991b1b !important;
    border-color: rgba(153,27,27,0.40) !important;
    color: #ffffff !important;
    box-shadow: 0 3px 14px rgba(153,27,27,0.30) !important;
    font-weight: 800 !important;
}

    .btn-utility-solid:hover:not(:disabled)[b-1x6km6yadt] {
        background: #7f1d1d !important;
        border-color: rgba(153,27,27,0.60) !important;
        color: #ffffff !important;
        box-shadow: 0 5px 20px rgba(153,27,27,0.40) !important;
        transform: translateY(-2px);
    }

[data-bs-theme="dark"] .btn-utility-solid[b-1x6km6yadt] {
    background: rgba(220,38,38,0.18) !important;
    border-color: rgba(239,68,68,0.30) !important;
    color: #fca5a5 !important;
    box-shadow: 0 3px 14px rgba(0,0,0,0.30) !important;
    text-shadow: 0 0 10px rgba(239,68,68,0.50);
}

    [data-bs-theme="dark"] .btn-utility-solid:hover:not(:disabled)[b-1x6km6yadt] {
        background: rgba(220,38,38,0.30) !important;
        border-color: rgba(239,68,68,0.50) !important;
        color: #ffffff !important;
        box-shadow: 0 0 0 1px rgba(239,68,68,0.40), 0 5px 22px rgba(220,38,38,0.35) !important;
        text-shadow: 0 0 16px rgba(239,68,68,0.70);
        transform: translateY(-2px);
    }

/* ── Danger (Delete / Remove) ── */
.btn-danger-solid[b-1x6km6yadt] {
    background: rgba(220,38,38,0.09) !important;
    border-color: rgba(220,38,38,0.22) !important;
    color: #b91c1c !important;
    box-shadow: none !important;
    font-weight: 700 !important;
}

    .btn-danger-solid:hover:not(:disabled)[b-1x6km6yadt] {
        background: #dc2626 !important;
        border-color: #b91c1c !important;
        color: #ffffff !important;
        box-shadow: 0 3px 10px rgba(185,28,28,0.30) !important;
        transform: translateY(-1px);
    }

[data-bs-theme="dark"] .btn-danger-solid[b-1x6km6yadt] {
    background: rgba(239,68,68,0.10) !important;
    border-color: rgba(239,68,68,0.28) !important;
    color: #f87171 !important;
}

    [data-bs-theme="dark"] .btn-danger-solid:hover:not(:disabled)[b-1x6km6yadt] {
        background: rgba(239,68,68,0.22) !important;
        border-color: rgba(239,68,68,0.50) !important;
        color: #ffffff !important;
        box-shadow: 0 3px 12px rgba(239,68,68,0.30) !important;
        transform: translateY(-1px);
    }

/* ─────────────────────────────────────────────
   11. ORDER ACTIONS (button group below table)
   ───────────────────────────────────────────── */
.order-actions-wrap[b-1x6km6yadt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 18px 0 4px;
    border-top: 1px solid var(--divider);
    margin-top: 16px;
}

.btn-group-solid[b-1x6km6yadt] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
    justify-content: center;
}

/* ─────────────────────────────────────────────
   12. ALERTS
   ───────────────────────────────────────────── */
.alert[b-1x6km6yadt] {
    border-radius: 9px !important;
    font-size: 12px !important;
    padding: 10px 14px !important;
    border: 1px solid transparent !important;
}

.alert-warning[b-1x6km6yadt] {
    background: rgba(241,184,40,0.12) !important;
    border-color: rgba(241,184,40,0.26) !important;
    color: var(--text-primary) !important;
}

.alert-success[b-1x6km6yadt] {
    background: rgba(26,122,74,0.10) !important;
    border-color: rgba(26,122,74,0.22) !important;
    color: var(--text-primary) !important;
}

[data-bs-theme="dark"] .alert-warning[b-1x6km6yadt] {
    background: rgba(241,184,40,0.10) !important;
    border-color: rgba(241,184,40,0.22) !important;
    color: rgba(255,255,255,0.85) !important;
}

[data-bs-theme="dark"] .alert-success[b-1x6km6yadt] {
    background: rgba(26,122,74,0.14) !important;
    border-color: rgba(26,122,74,0.28) !important;
    color: rgba(255,255,255,0.85) !important;
}

/* ─────────────────────────────────────────────
   13. IAC OFFCANVAS (Project Details panel)
   ───────────────────────────────────────────── */
.iac-offcanvas[b-1x6km6yadt] {
    font-family: 'din-2014', 'DIN Pro', 'DM Sans', sans-serif !important;
    width: 420px !important;
    background: var(--iac-surface) !important;
    border-left: 1px solid var(--iac-border) !important;
    box-shadow: var(--iac-shadow) !important;
    top: 0 !important;
    bottom: var(--iac-footer-height, 20px) !important;
    height: auto !important;
    display: flex !important;
    flex-direction: column !important;
    transition: background 0.3s, border-color 0.3s !important;
}

    .iac-offcanvas[b-1x6km6yadt]::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 2px;
        background: linear-gradient(90deg, transparent, var(--iac-gold), transparent);
        opacity: 0.70;
        pointer-events: none;
        z-index: 1;
    }

.iac-offcanvas__header[b-1x6km6yadt] {
    padding: 22px 24px 18px !important;
    border-bottom: 1px solid var(--iac-border) !important;
    background: var(--iac-surface) !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
}

/* offcanvas-title class (Bootstrap uses this on the h5) */
.offcanvas-title[b-1x6km6yadt] {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: var(--iac-text-primary) !important;
    letter-spacing: 0.02em;
    line-height: 1.2;
}

/* Also target the h5 directly inside the header for backward compat */
.iac-offcanvas__header h5[b-1x6km6yadt] {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: var(--iac-text-primary) !important;
    letter-spacing: 0.02em;
    margin: 0 !important;
    line-height: 1.2;
}

/* btn-close — light mode: navy X */
.btn-close[b-1x6km6yadt] {
    background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23002855'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat !important;
    opacity: 0.7;
    transition: all 0.15s ease;
}

    .btn-close:hover[b-1x6km6yadt] {
        background-color: var(--iac-close-hover) !important;
        border-radius: 8px;
        opacity: 1;
    }

/* btn-close — dark mode: white X */
:root[data-bs-theme="dark"] .btn-close[b-1x6km6yadt],
[data-bs-theme="dark"] .btn-close[b-1x6km6yadt] {
    background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat !important;
    filter: none !important;
}

.iac-offcanvas__body[b-1x6km6yadt] {
    padding: 22px 24px !important;
    background: var(--iac-surface) !important;
    overflow-y: auto;
    flex: 1 1 auto;
    scrollbar-width: thin;
    scrollbar-color: var(--iac-scrollbar) transparent;
}

    .iac-offcanvas__body[b-1x6km6yadt]::-webkit-scrollbar {
        width: 4px;
    }

    .iac-offcanvas__body[b-1x6km6yadt]::-webkit-scrollbar-thumb {
        background: var(--iac-scrollbar);
        border-radius: 4px;
    }

    /* Offcanvas form controls */
    .iac-offcanvas__body .form-control[b-1x6km6yadt],
    .iac-offcanvas__body .form-select[b-1x6km6yadt] {
        background: var(--input-bg) !important;
        border: 1px solid var(--input-border) !important;
    }

:root[data-bs-theme="dark"] .iac-offcanvas__body .form-control[b-1x6km6yadt],
:root[data-bs-theme="dark"] .iac-offcanvas__body .form-select[b-1x6km6yadt],
[data-bs-theme="dark"] .iac-offcanvas__body .form-control[b-1x6km6yadt],
[data-bs-theme="dark"] .iac-offcanvas__body .form-select[b-1x6km6yadt] {
    background: rgba(255,255,255,0.08) !important;
    border-color: rgba(255,255,255,0.15) !important;
    color: rgba(255,255,255,0.95) !important;
}

:root[data-bs-theme="dark"] .iac-offcanvas__body .form-label[b-1x6km6yadt],
[data-bs-theme="dark"] .iac-offcanvas__body .form-label[b-1x6km6yadt] {
    background: rgba(241,184,40,0.12) !important;
    color: rgba(255,255,255,0.95) !important;
}

.required-note[b-1x6km6yadt] {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 11px;
    color: var(--iac-text-muted);
    padding: 8px 12px;
    margin-bottom: 18px;
    background: var(--iac-req-note-bg);
    border: 1px solid var(--iac-border);
    border-radius: 8px;
    letter-spacing: 0.02em;
}

/* ── Final patch: Bootstrap offcanvas bg override (light + dark) ── */
.offcanvas.iac-offcanvas[b-1x6km6yadt],
.offcanvas.offcanvas-end.iac-offcanvas[b-1x6km6yadt] {
    background-color: #ffffff !important;
    --bs-offcanvas-bg: #ffffff !important;
}

:root[data-bs-theme="dark"] .offcanvas.iac-offcanvas[b-1x6km6yadt],
:root[data-bs-theme="dark"] .offcanvas.offcanvas-end.iac-offcanvas[b-1x6km6yadt],
[data-bs-theme="dark"] .offcanvas.iac-offcanvas[b-1x6km6yadt],
[data-bs-theme="dark"] .offcanvas.offcanvas-end.iac-offcanvas[b-1x6km6yadt] {
    background-color: #1a2236 !important;
    --bs-offcanvas-bg: #1a2236 !important;
}

.iac-offcanvas .offcanvas-header[b-1x6km6yadt],
.iac-offcanvas .iac-offcanvas__header[b-1x6km6yadt] {
    background-color: #ffffff !important;
}

:root[data-bs-theme="dark"] .iac-offcanvas .offcanvas-header[b-1x6km6yadt],
:root[data-bs-theme="dark"] .iac-offcanvas .iac-offcanvas__header[b-1x6km6yadt],
[data-bs-theme="dark"] .iac-offcanvas .offcanvas-header[b-1x6km6yadt],
[data-bs-theme="dark"] .iac-offcanvas .iac-offcanvas__header[b-1x6km6yadt] {
    background-color: #0e1520 !important;
    border-bottom-color: rgba(255,255,255,0.10) !important;
}

.iac-offcanvas .offcanvas-body[b-1x6km6yadt],
.iac-offcanvas .iac-offcanvas__body[b-1x6km6yadt] {
    background-color: #ffffff !important;
}

:root[data-bs-theme="dark"] .iac-offcanvas .offcanvas-body[b-1x6km6yadt],
:root[data-bs-theme="dark"] .iac-offcanvas .iac-offcanvas__body[b-1x6km6yadt],
[data-bs-theme="dark"] .iac-offcanvas .offcanvas-body[b-1x6km6yadt],
[data-bs-theme="dark"] .iac-offcanvas .iac-offcanvas__body[b-1x6km6yadt] {
    background-color: #1a2236 !important;
}

/* Offcanvas title color in dark */
:root[data-bs-theme="dark"] .iac-offcanvas .offcanvas-title[b-1x6km6yadt],
[data-bs-theme="dark"] .iac-offcanvas .offcanvas-title[b-1x6km6yadt] {
    color: rgba(255,255,255,0.92) !important;
}

/* ─────────────────────────────────────────────
   14. MULTI-PRODUCT TAB BAR
   ───────────────────────────────────────────── */
:root[b-1x6km6yadt] {
    --mpl-bar-bg: #f0f4f8;
    --mpl-bar-border: #d0dae6;
    --mpl-tab-bg: #ffffff;
    --mpl-tab-border: #cdd5e0;
    --mpl-tab-color: #4a5e72;
    --mpl-tab-hover-bg: #e8eff7;
    --mpl-active-bg: #002855;
    --mpl-active-color: #ffffff;
    --mpl-active-accent: #F1B828;
    --mpl-badge-bg: rgba(241,184,40,.18);
    --mpl-badge-color: #7a5800;
    --mpl-winner-bg: rgba(241,184,40,.12);
    --mpl-winner-border: rgba(241,184,40,.40);
    --mpl-winner-color: #5a4000;
}

[data-bs-theme="dark"][b-1x6km6yadt] {
    --mpl-bar-bg: #161d28;
    --mpl-bar-border: #2a3548;
    --mpl-tab-bg: #1e2a3a;
    --mpl-tab-border: #2a3850;
    --mpl-tab-color: #8aa4bf;
    --mpl-tab-hover-bg: #243044;
    --mpl-active-bg: #0d1e35;
    --mpl-active-color: #ffffff;
    --mpl-active-accent: #F1B828;
    --mpl-badge-bg: rgba(241,184,40,.15);
    --mpl-badge-color: #c8a030;
    --mpl-winner-bg: rgba(241,184,40,.10);
    --mpl-winner-border: rgba(241,184,40,.30);
    --mpl-winner-color: #c8a030;
}

.mpl-tab-bar[b-1x6km6yadt] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    background: var(--mpl-bar-bg);
    border: 1px solid var(--mpl-bar-border);
    border-radius: 10px;
}

.mpl-tab-bar__label[b-1x6km6yadt] {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--mpl-tab-color);
    white-space: nowrap;
    flex-shrink: 0;
}

.mpl-tab-bar__tabs[b-1x6km6yadt] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    flex: 1 1 auto;
}

.mpl-tab[b-1x6km6yadt] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    border-radius: 7px;
    border: 1.5px solid var(--mpl-tab-border);
    background: var(--mpl-tab-bg);
    color: var(--mpl-tab-color);
    font-size: 12px;
    font-weight: 600;
    cursor: pointer;
    transition: background .15s, border-color .15s, color .15s;
    white-space: nowrap;
}

    .mpl-tab:hover[b-1x6km6yadt] {
        background: var(--mpl-tab-hover-bg);
        border-color: var(--mpl-active-bg);
        color: var(--mpl-tab-color);
    }

[data-bs-theme="dark"] .mpl-tab:hover[b-1x6km6yadt] {
    background: var(--mpl-tab-hover-bg);
    border-color: #4a6280;
    color: #c8daf0;
}

.mpl-tab--active[b-1x6km6yadt] {
    background: var(--mpl-active-bg);
    border-color: var(--mpl-active-bg);
    color: var(--mpl-active-color);
    cursor: default;
    box-shadow: 0 2px 8px rgba(0,40,85,.22);
}

    .mpl-tab--active:hover[b-1x6km6yadt] {
        background: var(--mpl-active-bg);
        border-color: var(--mpl-active-bg);
        color: var(--mpl-active-color);
    }

.mpl-tab__icon[b-1x6km6yadt] {
    display: flex;
    align-items: center;
    opacity: .85;
}

.mpl-tab__count[b-1x6km6yadt] {
    font-size: 10px;
    font-weight: 700;
    padding: 1px 6px;
    border-radius: 10px;
    background: var(--mpl-badge-bg);
    color: var(--mpl-badge-color);
}

.mpl-tab--active .mpl-tab__count[b-1x6km6yadt] {
    background: rgba(241,184,40,.28);
    color: var(--mpl-active-accent);
}

.mpl-tab__prefix[b-1x6km6yadt] {
    font-size: 10px;
    font-weight: 800;
    opacity: .55;
    letter-spacing: .04em;
}

.mpl-tab-bar__winning[b-1x6km6yadt] {
    font-size: 11.5px;
    font-weight: 600;
    padding: 5px 10px;
    border-radius: 6px;
    background: var(--mpl-winner-bg);
    border: 1px solid var(--mpl-winner-border);
    color: var(--mpl-winner-color);
    white-space: nowrap;
    flex-shrink: 0;
}

    .mpl-tab-bar__winning i[b-1x6km6yadt] {
        color: #F1B828;
    }

.mpl-switch-btn[b-1x6km6yadt] {
    position: relative;
}

.mpl-submit-btn[b-1x6km6yadt] {
    font-weight: 700;
}

/* ─────────────────────────────────────────────
   15. MPL PAGE HEADER (mirrors Doors_razor.css)
   ───────────────────────────────────────────── */
.mpl-page-header[b-1x6km6yadt] {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
    padding: 10px 10px 14px !important;
    margin: 8px 0 16px !important;
    /* Solid navy — always dark like Windows header */
    background: #002855 !important;
    border: none !important;
    border-bottom: 3px solid var(--iac-gold) !important;
    border-radius: 10px !important;
    min-height: 60px;
    box-shadow: none !important;
    position: sticky;
    top: 8px;
    z-index: 100;
}

.mpl-page-header__left[b-1x6km6yadt] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    flex-shrink: 0;
}

.mpl-page-header__left--stacked[b-1x6km6yadt] {
    min-width: 0;
}

.mpl-page-header__title-row[b-1x6km6yadt] {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.mpl-page-header__title[b-1x6km6yadt] {
    font-size: 18px;
    font-weight: 900;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: #ffffff !important;
    margin: 0;
    white-space: nowrap;
    font-family: 'din-2014', 'DIN Pro', system-ui, sans-serif;
}

.mpl-page-header__chevron[b-1x6km6yadt] {
    color: var(--iac-gold);
    font-size: 20px;
    font-weight: 400;
    letter-spacing: 0;
    opacity: 0.90;
    vertical-align: middle;
}

/* Tabs sit in the center — flex: 1 so they fill space between title and pill */
.mpl-page-header__tabs[b-1x6km6yadt] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    flex: 1 1 auto;
    justify-content: center;
}

/* Order total pill pins to the right */
.mpl-page-header__meta[b-1x6km6yadt] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
    margin-left: auto;
}

/* Dark mode overrides */
[data-bs-theme="dark"] .mpl-page-header[b-1x6km6yadt],
[data-theme="dark"] .mpl-page-header[b-1x6km6yadt] {
    background: #090c14 !important;
    border-bottom-color: var(--iac-gold) !important;
    border-radius: 10px !important;
    margin: 8px 0 16px !important;
    padding: 10px 10px 14px !important;
    box-shadow: none !important;
}

[data-bs-theme="dark"] .mpl-page-header__title[b-1x6km6yadt],
[data-theme="dark"] .mpl-page-header__title[b-1x6km6yadt] {
    color: #ffffff !important;
}

/* ─────────────────────────────────────────────
   16. ORDER SUMMARY BAR (Doors-style dark footer)
   ───────────────────────────────────────────── */
.sl-order-summary-bar[b-1x6km6yadt] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
    padding: 11px 16px;
    background: #002855;
    border-top: 2px solid var(--iac-gold);
}

[data-bs-theme="dark"] .sl-order-summary-bar[b-1x6km6yadt] {
    background: #0d1829;
    border-top-color: var(--iac-gold);
}

.sl-summary-left[b-1x6km6yadt] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.sl-summary-badge[b-1x6km6yadt] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    background: var(--iac-gold);
    color: #1a1000;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    padding: 4px 10px;
    border-radius: 6px;
    white-space: nowrap;
}

[data-bs-theme="dark"] .sl-summary-badge[b-1x6km6yadt] {
    background: rgba(241,184,40,0.18);
    color: var(--iac-gold);
    border: 1px solid rgba(241,184,40,0.30);
}

.sl-summary-pipe[b-1x6km6yadt] {
    color: rgba(255,255,255,0.30);
    font-size: 13px;
    opacity: 1;
    user-select: none;
}

.sl-summary-stat[b-1x6km6yadt] {
    display: inline-flex;
    align-items: baseline;
    gap: 5px;
}

.sl-stat-key[b-1x6km6yadt] {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.09em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.60);
}

.sl-stat-val[b-1x6km6yadt] {
    font-size: 13px;
    font-weight: 700;
    color: rgba(255,255,255,0.92);
}

[data-bs-theme="dark"] .sl-stat-key[b-1x6km6yadt] {
    color: rgba(255,255,255,0.45);
}

[data-bs-theme="dark"] .sl-stat-val[b-1x6km6yadt] {
    color: rgba(255,255,255,0.90);
}

.sl-summary-right[b-1x6km6yadt] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-shrink: 0;
}

.sl-price-label[b-1x6km6yadt] {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.60);
}

[data-bs-theme="dark"] .sl-price-label[b-1x6km6yadt] {
    color: rgba(255,255,255,0.45);
}

.sl-price-bar[b-1x6km6yadt] {
    display: inline-flex;
    align-items: center;
    padding: 4px 14px;
    border-radius: 6px;
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0.02em;
    white-space: nowrap;
    border: 1.5px solid transparent;
}

.sl-price-bar--gold[b-1x6km6yadt] {
    background: rgba(241,184,40,0.18);
    color: #ffffff;
    border-color: rgba(241,184,40,0.50);
}

[data-bs-theme="dark"] .sl-price-bar--gold[b-1x6km6yadt] {
    background: rgba(241,184,40,0.16);
    color: var(--iac-gold);
    border-color: rgba(241,184,40,0.35);
}

/* ─────────────────────────────────────────────
   17. FORM TOGGLE SWITCH (if used)
   ───────────────────────────────────────────── */
.form-check-input[type="checkbox"].form-check-input[b-1x6km6yadt] {
    width: 36px;
    height: 20px;
    border-radius: 20px;
    background-color: var(--input-bg);
    border: 1px solid var(--input-border);
    cursor: pointer;
    transition: background-color 0.2s, border-color 0.2s;
    flex-shrink: 0;
}

:root[data-bs-theme="light"] .form-switch .form-check-input[b-1x6km6yadt] {
    background-color: #dce2ea !important;
    border-color: rgba(0,40,85,0.25) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(0,40,85,0.55)'/%3E%3C/svg%3E") !important;
}

    :root[data-bs-theme="light"] .form-switch .form-check-input:checked[b-1x6km6yadt] {
        background-color: #002855 !important;
        border-color: #002855 !important;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(255,255,255,0.97)'/%3E%3C/svg%3E") !important;
        box-shadow: 0 0 0 3px rgba(0,40,85,0.14) !important;
    }

:root[data-bs-theme="dark"] .form-switch .form-check-input:not(:checked)[b-1x6km6yadt] {
    background-color: rgba(255,255,255,0.18) !important;
    border-color: rgba(255,255,255,0.28) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(255,255,255,0.75)'/%3E%3C/svg%3E") !important;
}

:root[data-bs-theme="dark"] .form-switch .form-check-input:checked[b-1x6km6yadt] {
    background-color: #F1B828 !important;
    border-color: #F1B828 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(0,0,0,0.75)'/%3E%3C/svg%3E") !important;
    box-shadow: 0 0 0 3px rgba(241,184,40,0.24), 0 0 12px rgba(241,184,40,0.28) !important;
}

.form-check-label[b-1x6km6yadt] {
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.03em !important;
    color: #001e42 !important;
    cursor: pointer !important;
    padding-left: 10px !important;
}

:root[data-bs-theme="dark"] .form-check-label[b-1x6km6yadt],
[data-theme="dark"] .form-check-label[b-1x6km6yadt] {
    color: rgba(255,255,255,0.88) !important;
}

/* ─────────────────────────────────────────────
   16. RESPONSIVE — TABLET → PHONE
   ───────────────────────────────────────────── */
@media (max-width: 991.98px) {
    /* Stack left/right columns */
    .border-end[b-1x6km6yadt] {
        border-right: none !important;
        border-bottom: 1px solid var(--divider-strong) !important;
        padding-bottom: 20px !important;
        margin-bottom: 20px !important;
    }

    .col-lg-4.ps-lg-4[b-1x6km6yadt] {
        padding-left: 0 !important;
    }
}

@media (max-width: 767.98px) {
    .quotes-header[b-1x6km6yadt] {
        padding: 12px 16px;
        margin-bottom: 16px;
    }

        .quotes-header h3[b-1x6km6yadt] {
            font-size: 13px;
        }

    .card.border-0.shadow-sm .card-body[b-1x6km6yadt] {
        padding: 14px !important;
    }

    .slab-card__head[b-1x6km6yadt] {
        padding: 10px 14px;
    }

    .slab-card__body[b-1x6km6yadt] {
        padding: 12px 14px;
    }

    .form-label[b-1x6km6yadt] {
        font-size: 9px !important;
        padding: 2px 6px !important;
    }

    .form-control[b-1x6km6yadt],
    .form-select[b-1x6km6yadt] {
        font-size: 12px !important;
        padding: 7px 10px !important;
        border-radius: 0 0 7px 7px !important;
    }

    /* Mobile: stack buttons full-width */
    .btn-group-solid[b-1x6km6yadt] {
        width: 100%;
        flex-direction: column !important;
        gap: 8px;
    }

        .btn-group-solid .btn[b-1x6km6yadt] {
            width: 100%;
            font-size: 12px;
            padding: 10px 12px;
            height: 42px;
        }

    /* Mobile: table becomes card layout */
    .order-table[b-1x6km6yadt],
    .order-table thead[b-1x6km6yadt],
    .order-table tbody[b-1x6km6yadt],
    .order-table th[b-1x6km6yadt],
    .order-table td[b-1x6km6yadt],
    .order-table tr[b-1x6km6yadt] {
        display: block;
        white-space: normal;
    }

        .order-table thead[b-1x6km6yadt] {
            display: none;
        }

        .order-table tbody tr[b-1x6km6yadt] {
            background: var(--panel-bg);
            border: 1px solid var(--panel-border-strong);
            border-radius: 12px;
            margin-bottom: 12px;
            padding: 12px 12px 8px;
            overflow: hidden;
            box-shadow: 0 2px 6px rgba(0,0,0,0.04);
        }

        .order-table tbody td[b-1x6km6yadt] {
            display: flex;
            justify-content: space-between;
            align-items: center;
            padding: 6px 0 !important;
            border: none !important;
            border-bottom: 1px solid var(--divider) !important;
            font-size: 12px;
            gap: 12px;
            background: transparent !important;
        }

            .order-table tbody td:last-child[b-1x6km6yadt] {
                border-bottom: none !important;
                padding-top: 10px !important;
                justify-content: flex-start;
                gap: 8px;
                flex-wrap: wrap;
            }

            .order-table tbody td[b-1x6km6yadt]::before {
                content: attr(data-label);
                font-size: 10px;
                font-weight: 700;
                letter-spacing: 0.06em;
                text-transform: uppercase;
                color: var(--text-muted);
                flex-shrink: 0;
                min-width: 80px;
            }

    .order-summary-row td[b-1x6km6yadt],
    .order-summary-row th[b-1x6km6yadt] {
        display: block;
        width: 100% !important;
        padding: 8px 0 !important;
        border-top: 2px solid var(--divider-strong) !important;
    }

    /* Offcanvas full-width on mobile */
    .iac-offcanvas[b-1x6km6yadt] {
        width: 100vw !important;
    }

    /* MPL tab bar stacks on small screens */
    .mpl-tab-bar[b-1x6km6yadt] {
        flex-direction: column;
        align-items: flex-start;
    }

    .mpl-tab-bar__winning[b-1x6km6yadt] {
        width: 100%;
    }
}

/* ─────────────────────────────────────────────
   17. TEXT UTILITIES
   ───────────────────────────────────────────── */
.text-muted[b-1x6km6yadt] {
    color: var(--text-muted) !important;
    font-size: 11px;
}

.text-nowrap[b-1x6km6yadt] {
    white-space: nowrap;
}

.fw-semibold[b-1x6km6yadt] {
    font-weight: 600 !important;
}

.fw-bold[b-1x6km6yadt] {
    font-weight: 700 !important;
}

/* ─────────────────────────────────────────────
   18. IAC TABLE — Matches Windows / Doors panel table
   ───────────────────────────────────────────── */
.iac-table thead th[b-1x6km6yadt],
.iac-table--panel thead th[b-1x6km6yadt] {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.07em;
    text-transform: uppercase;
    padding: 10px 8px;
    border-bottom: 2px solid var(--table-head-border);
    background: var(--table-head-bg);
    color: var(--table-head-text);
    white-space: nowrap;
}

:root[data-bs-theme="light"] .iac-table thead th[b-1x6km6yadt],
:root[data-bs-theme="light"] .iac-table--panel thead th[b-1x6km6yadt],
[data-theme="light"] .iac-table thead th[b-1x6km6yadt] {
    background: #002855 !important;
    color: #ffffff !important;
    border-bottom-color: var(--iac-gold) !important;
}

:root[data-bs-theme="light"] .iac-table tbody tr:nth-child(odd) td[b-1x6km6yadt],
:root[data-bs-theme="light"] .iac-table--panel tbody tr:nth-child(odd) td[b-1x6km6yadt] {
    background: var(--table-row-odd);
}

:root[data-bs-theme="light"] .iac-table tbody tr:nth-child(even) td[b-1x6km6yadt],
:root[data-bs-theme="light"] .iac-table--panel tbody tr:nth-child(even) td[b-1x6km6yadt] {
    background: var(--table-row-even);
}

:root[data-bs-theme="light"] .iac-table tbody tr:hover td[b-1x6km6yadt],
:root[data-bs-theme="light"] .iac-table--panel tbody tr:hover td[b-1x6km6yadt] {
    background: var(--table-row-hover);
}

:root[data-bs-theme="dark"] .iac-table thead th[b-1x6km6yadt],
:root[data-bs-theme="dark"] .iac-table--panel thead th[b-1x6km6yadt],
[data-theme="dark"] .iac-table thead th[b-1x6km6yadt] {
    background: var(--table-head-bg);
    color: var(--table-head-text);
    border-bottom-color: var(--table-head-border);
}

:root[data-bs-theme="dark"] .iac-table tbody tr:nth-child(odd) td[b-1x6km6yadt],
:root[data-bs-theme="dark"] .iac-table--panel tbody tr:nth-child(odd) td[b-1x6km6yadt] {
    background: var(--table-row-odd);
}

:root[data-bs-theme="dark"] .iac-table tbody tr:nth-child(even) td[b-1x6km6yadt],
:root[data-bs-theme="dark"] .iac-table--panel tbody tr:nth-child(even) td[b-1x6km6yadt] {
    background: var(--table-row-even);
}

:root[data-bs-theme="dark"] .iac-table tbody tr:hover td[b-1x6km6yadt],
:root[data-bs-theme="dark"] .iac-table--panel tbody tr:hover td[b-1x6km6yadt] {
    background: var(--table-row-hover);
}

/* Dark mode order-table overrides */
:root[data-bs-theme="dark"] .order-table thead th[b-1x6km6yadt] {
    background: #0e1520 !important;
    border-bottom-color: #F1B828 !important;
    color: #F1B828 !important;
}

:root[data-bs-theme="dark"] .order-table tbody tr:nth-child(odd) td[b-1x6km6yadt] {
    background: #1a2236 !important;
}

:root[data-bs-theme="dark"] .order-table tbody tr:nth-child(even) td[b-1x6km6yadt] {
    background: #1e2840 !important;
}

:root[data-bs-theme="dark"] .order-table tbody tr:hover td[b-1x6km6yadt] {
    background: #263250 !important;
}

    :root[data-bs-theme="dark"] .order-table tbody tr:hover td:first-child[b-1x6km6yadt] {
        border-left-color: #F1B828 !important;
    }

:root[data-bs-theme="dark"] .order-table td[b-1x6km6yadt] {
    border-bottom-color: rgba(255,255,255,0.06);
}

.order-table tbody td[b-1x6km6yadt] {
    border-top: 1px solid var(--table-border) !important;
    border-bottom: 1px solid var(--table-border) !important;
}

.order-table tbody tr + tr td[b-1x6km6yadt] {
    border-top-color: rgba(0,40,85,0.12) !important;
}

[data-bs-theme="dark"] .order-table tbody tr + tr td[b-1x6km6yadt],
[data-theme="dark"] .order-table tbody tr + tr td[b-1x6km6yadt] {
    border-top-color: rgba(255,255,255,0.08) !important;
}

/* ─────────────────────────────────────────────
   19. CARD FOOTER — Summary + Totals band
   ───────────────────────────────────────────── */
.iac-panel .card-footer[b-1x6km6yadt] {
    background: var(--panel-bg);
    border-top: 1px solid var(--panel-border-strong);
    padding: 12px 20px;
}

:root[data-bs-theme="dark"] .iac-panel .card-footer[b-1x6km6yadt],
[data-theme="dark"] .iac-panel .card-footer[b-1x6km6yadt] {
    background: var(--panel-bg-alt);
    border-top-color: var(--panel-border-strong);
}

/* ─────────────────────────────────────────────
   20. ORDER SUMMARY BANNER — Inside card footer
   ───────────────────────────────────────────── */
.order-summary-banner[b-1x6km6yadt] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.6rem 1.1rem;
    background: #f0f4fa;
    color: #002855;
    border-radius: 10px;
    padding: 0.45rem 1rem;
    font-family: 'din-2014', system-ui, sans-serif;
    font-size: 0.78rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    box-shadow: 0 1px 4px rgba(0,40,85,0.10);
    border: 1px solid rgba(0,40,85,0.18);
}

[data-bs-theme="dark"] .order-summary-banner[b-1x6km6yadt] {
    background: linear-gradient(90deg, #0b1e36 0%, #0e2a4a 100%);
    color: #e8edf5;
    border-color: rgba(241,184,40,0.22);
    box-shadow: 0 2px 10px rgba(0,0,0,0.35);
}

.order-summary-badge[b-1x6km6yadt] {
    background: #F1B828;
    color: #002855;
    border-radius: 6px;
    padding: 0.18rem 0.65rem;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    white-space: nowrap;
}

[data-bs-theme="dark"] .order-summary-badge[b-1x6km6yadt] {
    background: linear-gradient(90deg, #F6C84A, #F1B828);
    color: #0e2a4a;
}

.order-summary-stat[b-1x6km6yadt] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.order-summary-key[b-1x6km6yadt] {
    color: rgba(0,40,85,0.55);
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

[data-bs-theme="dark"] .order-summary-key[b-1x6km6yadt] {
    color: rgba(232,237,245,0.55);
}

.order-summary-val[b-1x6km6yadt] {
    color: #002855;
    font-size: 0.88rem;
    font-weight: 700;
}

[data-bs-theme="dark"] .order-summary-val[b-1x6km6yadt] {
    color: #F1B828;
}

.order-summary-divider[b-1x6km6yadt] {
    color: rgba(0,40,85,0.2);
    font-weight: 300;
}

[data-bs-theme="dark"] .order-summary-divider[b-1x6km6yadt] {
    color: rgba(255,255,255,0.18);
}

/* ─────────────────────────────────────────────
   21. SUMMARY LABEL + SUM PILLS
   ───────────────────────────────────────────── */
.summary-label[b-1x6km6yadt] {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.sum-pill[b-1x6km6yadt] {
    display: inline-flex !important;
    align-items: center !important;
    height: 34px !important;
    padding: 0 18px 0 16px !important;
    border-radius: 6px !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    letter-spacing: 0.02em !important;
    white-space: nowrap !important;
    cursor: default !important;
    pointer-events: none !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.1) !important;
    line-height: 1 !important;
    user-select: text !important;
    border: 1px solid transparent !important;
    margin-left: 8px;
}

    /* Gold pill — Ship Loose uses list price only (no rep/mult) */
    .sum-pill--yellow[b-1x6km6yadt],
    .sum-pill.sum-pill--yellow[b-1x6km6yadt] {
        background: #002855 !important;
        color: #ffffff !important;
        border: 1px solid rgba(0,40,85,0.30) !important;
        box-shadow: 0 2px 8px rgba(0,40,85,0.20) !important;
    }

:root[data-bs-theme="dark"] .sum-pill--yellow[b-1x6km6yadt],
:root[data-bs-theme="dark"] .sum-pill.sum-pill--yellow[b-1x6km6yadt],
[data-theme="dark"] .sum-pill--yellow[b-1x6km6yadt] {
    background: #F1B828 !important;
    color: #0d1f3c !important;
    border: 1px solid #F1B828 !important;
    box-shadow: 0 2px 12px rgba(241,184,40,0.4) !important;
}

/* ─────────────────────────────────────────────
   22. MPL ORDER TOTAL PILL
   ───────────────────────────────────────────── */
.mpl-order-total-pill[b-1x6km6yadt] {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
    padding: 6px 14px;
    border-radius: 8px;
    background: rgba(0,40,85,.08);
    border: 1.5px solid rgba(0,40,85,.22);
    color: #002855;
    flex-shrink: 0;
    align-self: flex-end;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08);
    gap: 1px;
}

[data-bs-theme="dark"] .mpl-order-total-pill[b-1x6km6yadt] {
    background: rgba(241,184,40,.10);
    border-color: rgba(241,184,40,.30);
    color: #F1B828;
}

.mpl-order-total-pill__top[b-1x6km6yadt] {
    display: flex;
    align-items: baseline;
    gap: 5px;
    line-height: 1.2;
}

.mpl-order-total-pill__label[b-1x6km6yadt] {
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    opacity: .70;
    line-height: 1;
}

.mpl-order-total-pill__value[b-1x6km6yadt] {
    font-size: 13px;
    font-weight: 800;
    line-height: 1.2;
}

.mpl-order-total-pill__prefix[b-1x6km6yadt] {
    font-size: 9px;
    font-weight: 700;
    opacity: .60;
    white-space: nowrap;
    letter-spacing: .03em;
}

.mpl-order-total-pill__breakdown[b-1x6km6yadt] {
    font-size: 9px;
    font-weight: 600;
    opacity: .70;
    line-height: 1;
    margin-top: 1px;
}

/* ─────────────────────────────────────────────
   23. EXPORT PDF DROPDOWN MENU
   ───────────────────────────────────────────── */
.export-menu-wrap[b-1x6km6yadt] {
    position: relative;
    display: inline-flex;
}

.export-menu-toggle[b-1x6km6yadt] {
    min-width: 164px;
    justify-content: center;
}

.export-menu-list[b-1x6km6yadt] {
    min-width: 230px;
    padding: 0.4rem;
    border-radius: 14px;
    border: 1px solid var(--panel-border-strong);
    box-shadow: 0 18px 48px rgba(0,40,85,0.16);
}

.export-menu-item[b-1x6km6yadt] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    min-height: 40px;
    border-radius: 10px;
    font-size: 0.84rem;
    font-weight: 700;
    color: var(--text-primary);
}

    .export-menu-item:hover[b-1x6km6yadt],
    .export-menu-item:focus[b-1x6km6yadt] {
        background: rgba(0,40,85,0.06);
        color: var(--iac-navy);
    }

[data-bs-theme="dark"] .export-menu-list[b-1x6km6yadt],
[data-theme="dark"] .export-menu-list[b-1x6km6yadt] {
    background: #131b2a;
    border-color: rgba(255,255,255,0.12);
    box-shadow: 0 22px 56px rgba(0,0,0,0.44);
}

[data-bs-theme="dark"] .export-menu-item[b-1x6km6yadt],
[data-theme="dark"] .export-menu-item[b-1x6km6yadt] {
    color: rgba(255,255,255,0.9);
}

    [data-bs-theme="dark"] .export-menu-item:hover[b-1x6km6yadt],
    [data-bs-theme="dark"] .export-menu-item:focus[b-1x6km6yadt],
    [data-bs-theme="dark"] .export-menu-item:active[b-1x6km6yadt] {
        background: rgba(241,184,40,0.12);
        color: var(--iac-gold);
    }

@media (max-width: 767.98px) {
    .export-menu-wrap[b-1x6km6yadt],
    .export-menu-toggle[b-1x6km6yadt],
    .export-menu-list[b-1x6km6yadt] {
        width: 100%;
    }
}

/* ─────────────────────────────────────────────
   24. ORDER ACTIONS WRAP — Gold divider
   ───────────────────────────────────────────── */
.order-actions-wrap[b-1x6km6yadt] {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 12px;
    margin: 24px 0 16px;
    position: relative;
}

    .order-actions-wrap[b-1x6km6yadt]::before {
        content: '';
        display: block;
        width: 80px;
        height: 2px;
        background: linear-gradient(90deg, transparent, var(--iac-gold), transparent);
        margin-bottom: 12px;
        border-radius: 2px;
    }

.btn-group-solid[b-1x6km6yadt] {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
    justify-content: center;
}

/* ─────────────────────────────────────────────
   25. SLAB CARD — Matches Windows panel card
   ───────────────────────────────────────────── */
.slab-card[b-1x6km6yadt] {
    background: var(--panel-bg);
    border: 1px solid var(--panel-border-strong);
    border-radius: 14px;
    overflow: hidden;
    box-shadow: 0 2px 10px rgba(0,40,85,0.07);
}

.slab-card__head[b-1x6km6yadt] {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 12px 18px;
    background: var(--header-bg);
    border-bottom: 1px solid var(--header-border);
    position: relative;
}

    .slab-card__head[b-1x6km6yadt]::before {
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        width: 3px;
        background: var(--iac-gold);
        border-radius: 0 2px 2px 0;
    }

.slab-card__title[b-1x6km6yadt] {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: var(--text-primary);
}

.slab-card__body[b-1x6km6yadt] {
    padding: 18px;
}

:root[data-bs-theme="dark"] .slab-card__head[b-1x6km6yadt],
[data-theme="dark"] .slab-card__head[b-1x6km6yadt] {
    background: var(--header-bg);
    border-bottom-color: var(--header-border);
}

    :root[data-bs-theme="dark"] .slab-card__head[b-1x6km6yadt]::before {
        background: var(--iac-gold);
    }
/* _content/NoiseLockQuoteTool/Pages/Splash.razor.rz.scp.css */
/* ==========================================================================
   SPLASH.RAZOR.CSS
   NOTE: ::before pseudo-elements are NOT used for layout — Blazor scoped CSS
   adds [b-xxxxx] attribute selectors which break pseudo-element matching.
   All layout uses real DOM elements instead.
   ========================================================================== */

/* --------------------------------------------------------------------------
   TOKENS
   -------------------------------------------------------------------------- */
:root[b-1j899gbvi8] {
    --spl-card-bg: #e8ecf1;
    --spl-card-border: #cdd4dc;
    --spl-card-hover-border: rgba(0,40,85,.22);
    --spl-badge-tool-bg: #F1B828;
    --spl-badge-tool-clr: #002855;
    --spl-title-clr: #002855;
    --spl-muted: #7a90a8;
    --spl-divider: #dce3ec;
    --spl-text: #4a5e72;
    --spl-gold: #F1B828;
}

    :root[data-bs-theme="dark"][b-1j899gbvi8] {
        --spl-card-bg: #1e2530;
        --spl-card-border: #354252;
        --spl-card-hover-border: rgba(241,184,40,.30);
        --spl-badge-tool-bg: rgba(241,184,40,.15);
        --spl-badge-tool-clr: #c8a030;
        --spl-title-clr: #e8edf3;
        --spl-muted: #5a7a96;
        --spl-divider: #354252;
        --spl-text: rgba(176,200,220,.75);
        --spl-gold: #F1B828;
    }


/* --------------------------------------------------------------------------
   SHELL RESET
   -------------------------------------------------------------------------- */
.splash-page[b-1j899gbvi8] {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    /* Do NOT set overflow:hidden here — that creates a containing block for
       position:fixed children on iOS Safari, which would trap the modal overlay
       behind the footer. overflow-x:hidden is enough to suppress stray scrollbars. */
    overflow-x: hidden;
}

.content:has(.splash-page)[b-1j899gbvi8],
.main:has(.splash-page)[b-1j899gbvi8],
article:has(.splash-page)[b-1j899gbvi8] {
    padding-top: 0 !important;
    margin-top: 0 !important;
    /* overflow:hidden would trap position:fixed children (modal overlay) on iOS.
       Remove it entirely — the splash page manages its own scrolling. */
    overflow: visible !important;
}


/* --------------------------------------------------------------------------
   HERO CONTAINER
   -------------------------------------------------------------------------- */
.splash-hero[b-1j899gbvi8] {
    position: relative;
    height: calc(100vh - 56px);
    height: calc(100dvh - 56px);
    min-height: 480px;
    width: 100vw;
    max-width: 100vw;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden;
    background: #ffffff;
    transition: background-color .3s ease;
}

:root[data-bs-theme="dark"] .splash-hero[b-1j899gbvi8] {
    background: #0e1216;
}


/* --------------------------------------------------------------------------
   PHOTO COLUMN — real div, positioned left
   -------------------------------------------------------------------------- */
.splash-hero__photo[b-1j899gbvi8] {
    position: absolute;
    top: 3px;
    left: 0;
    bottom: 47px; /* thin gap above footer stripe */
    width: var(--hero-w);
    background-image: url("/img/portal-hero.png");
    background-repeat: no-repeat;
    background-position: left center;
    background-size: cover;
    z-index: 0;
}


/* --------------------------------------------------------------------------
   TITLE BAND
   -------------------------------------------------------------------------- */
.title-band[b-1j899gbvi8] {
    position: absolute;
    top: calc(var(--band-h) + 64px);
    left: 35vw;
    right: 0;
    height: calc(var(--band-h) + 30px);
    display: flex;
    align-items: center;
    padding: 0 var(--band-pad-x);
    background-color: #dce4f0;
    border-left: 4px solid #F1B828;
    border-top: 1px solid #F1B828;
    border-bottom: 1px solid #F1B828;
    border-right: 0;
    z-index: 2;
    overflow: hidden;
    transition: background-color .3s ease, border-color .3s ease;
}

    .title-band[b-1j899gbvi8]::before,
    .title-band[b-1j899gbvi8]::after {
        content: none !important;
        display: none !important;
    }

:root[data-bs-theme="dark"] .title-band[b-1j899gbvi8] {
    background-color: #0c1e32;
    border-left-color: #F1B828;
    border-top-color: rgba(241,184,40,.35);
    border-bottom-color: rgba(241,184,40,.25);
}

.splash-hero__title[b-1j899gbvi8] {
    font-family: "din-2014", "DIN Pro", sans-serif;
    font-size: clamp(1.4rem, 2.4vw, 2.6rem);
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: #002855;
    line-height: 1;
    margin: 0;
    padding: 0;
    white-space: nowrap;
}

:root[data-bs-theme="dark"] .splash-hero__title[b-1j899gbvi8] {
    color: #b9d6f2;
}


/* --------------------------------------------------------------------------
   RIGHT PANE
   -------------------------------------------------------------------------- */
.splash-right-pane[b-1j899gbvi8] {
    position: absolute;
    top: calc(var(--band-h) + 64px * 2.6);
    left: calc(var(--hero-w) - 40px);
    right: 0;
    bottom: 44px;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 2rem var(--band-pad-x);
    z-index: 1;
    transition: background-color .3s ease;
}


.splash-tools-scroll[b-1j899gbvi8] {
    max-height: none !important;
    overflow-x: hidden;
    scrollbar-width: thin;
    scrollbar-color: rgba(0,40,85,.18) transparent;
}

    .splash-tools-scroll[b-1j899gbvi8]::-webkit-scrollbar {
        width: 5px;
    }

    .splash-tools-scroll[b-1j899gbvi8]::-webkit-scrollbar-track {
        background: transparent;
    }

    .splash-tools-scroll[b-1j899gbvi8]::-webkit-scrollbar-thumb {
        background: rgba(0,40,85,.18);
        border-radius: 3px;
    }


/* --------------------------------------------------------------------------
   FEATURE CARDS
   -------------------------------------------------------------------------- */
.splash-feature[b-1j899gbvi8] {
    position: relative;
    display: flex;
    flex-direction: column;
    border-radius: 12px;
    background: #e8ecf1 !important;
    border: 1px solid var(--spl-card-border);
    box-shadow: 0 2px 10px rgba(0,40,85,.07), 0 1px 3px rgba(0,0,0,.04);
    overflow: hidden;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

    .splash-feature:hover[b-1j899gbvi8] {
        transform: none;
        border-color: var(--spl-card-hover-border);
        box-shadow: 0 8px 28px rgba(0,40,85,.13), 0 2px 6px rgba(0,0,0,.06);
    }
/* DARK MODE */
:root[data-bs-theme="dark"] .splash-feature[b-1j899gbvi8],
[data-bs-theme="dark"] .splash-feature[b-1j899gbvi8],
[data-theme="dark"] .splash-feature[b-1j899gbvi8] {
    background: linear-gradient(180deg, rgba(22,32,52,0.98), rgba(14,22,38,0.98)) !important;
    border-color: rgba(255,255,255,0.10);
    box-shadow: 0 1px 0 rgba(255,255,255,0.06) inset, 0 10px 26px rgba(0,0,0,0.48);
}

    /* Hover: NO “jump” — keep transform the same as base (no translateY change) */
    :root[data-bs-theme="dark"] .splash-feature:hover[b-1j899gbvi8],
    [data-bs-theme="dark"] .splash-feature:hover[b-1j899gbvi8],
    [data-theme="dark"] .splash-feature:hover[b-1j899gbvi8] {
        transform: none;
        border-color: rgba(241,184,40,0.35);
        box-shadow: 0 1px 0 rgba(255,255,255,0.07) inset, 0 14px 34px rgba(0,0,0,0.58);
    }

    /* Optional: keyboard focus matches hover without moving */
    :root[data-bs-theme="dark"] .splash-feature:focus-within[b-1j899gbvi8],
    [data-bs-theme="dark"] .splash-feature:focus-within[b-1j899gbvi8],
    [data-theme="dark"] .splash-feature:focus-within[b-1j899gbvi8] {
        transform: none;
        border-color: rgba(241,184,40,0.40);
        box-shadow: 0 1px 0 rgba(255,255,255,0.07) inset, 0 0 0 3px rgba(241,184,40,0.20), 0 14px 34px rgba(0,0,0,0.58);
    }

.sf-header[b-1j899gbvi8] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1rem .75rem;
}

.sf-icon[b-1j899gbvi8] {
    width: 44px;
    height: 44px;
    border-radius: 10px;
    background: linear-gradient(135deg, #002855 0%, #1a4a8a 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 3px 10px rgba(0,40,85,.22);
}

    .sf-icon svg[b-1j899gbvi8],
    .sf-icon i[b-1j899gbvi8] {
        width: 38px;
        height: 38px;
        color: #ffffff;
    }

.sf-badge[b-1j899gbvi8] {
    font-family: "din-2014", "DIN Pro", sans-serif;
    font-size: .60rem;
    font-weight: 700;
    letter-spacing: .10em;
    text-transform: uppercase;
    padding: .22rem .6rem;
    border-radius: 4px;
    border: 1px solid rgba(0,40,85,.10);
}

.sf-badge--tool[b-1j899gbvi8] {
    background: #F1B828;
    color: #002855;
}

.sf-badge--category[b-1j899gbvi8] {
    background: rgba(241,184,40,.12);
    color: #7a5500;
    border-color: rgba(241,184,40,.28);
}

:root[data-bs-theme="dark"] .sf-badge--category[b-1j899gbvi8] {
    background: rgba(241,184,40,.10);
    color: #c8a030;
    border-color: rgba(241,184,40,.20);
}

.sf-title-block[b-1j899gbvi8] {
    padding: 0 1rem .5rem;
}

.sf-title[b-1j899gbvi8] {
    font-family: "din-2014", "DIN Pro", sans-serif;
    font-size: clamp(.9rem, 1.05vw, 1rem);
    font-weight: 700;
    color: var(--spl-title-clr);
    letter-spacing: .01em;
    margin: 0 0 .15rem;
}

.sf-subtitle[b-1j899gbvi8] {
    font-family: "din-2014", "DIN Pro", sans-serif;
    font-size: .70rem;
    font-weight: 500;
    color: var(--spl-muted);
    letter-spacing: .06em;
    text-transform: uppercase;
}

.sf-divider[b-1j899gbvi8] {
    height: 1px;
    margin: 0 1rem .75rem;
    background: linear-gradient(90deg, var(--spl-divider) 0%, transparent 100%);
}

.sf-description[b-1j899gbvi8] {
    font-family: "din-2014", "DIN Pro", sans-serif;
    font-size: clamp(.80rem, .92vw, .88rem);
    color: var(--spl-text);
    line-height: 1.6;
    padding: 0 1rem;
    margin: 0 0 .75rem;
    flex: 1;
}

.sf-footer[b-1j899gbvi8] {
    padding: .75rem 1rem 1rem;
}

.sf-btn-arrow[b-1j899gbvi8] {
    font-size: 1.1em;
    line-height: 1;
    color: var(--spl-gold);
}

.sf-back-bar[b-1j899gbvi8] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .85rem 1rem;
}

.sf-back-label[b-1j899gbvi8] {
    font-family: "din-2014", "DIN Pro", sans-serif;
    font-size: .65rem;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: var(--spl-gold);
    margin-bottom: .15rem;
}

.sf-back-title[b-1j899gbvi8] {
    font-family: "din-2014", "DIN Pro", sans-serif;
    font-size: 1rem;
    font-weight: 700;
    color: var(--spl-title-clr);
}


/* --------------------------------------------------------------------------
   CTA BUTTONS
   -------------------------------------------------------------------------- */
.splash-feature .btn.btn-success-solid[b-1j899gbvi8] {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    width: 100%;
    justify-content: center;
    font-family: "din-2014", "DIN Pro", sans-serif;
    font-size: .74rem;
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
    padding: .55rem 1rem;
    border-radius: 6px;
    border: 1px solid rgba(241,184,40,.60);
    color: #ffffff;
    background: linear-gradient(175deg, #1a4f87 0%, #002855 100%);
    box-shadow: 0 3px 10px rgba(0,40,85,.20);
    transition: transform .14s ease, box-shadow .14s ease, filter .14s ease;
    cursor: pointer;
}

    .splash-feature .btn.btn-success-solid:hover[b-1j899gbvi8] {
        transform: translateY(-1px);
        filter: brightness(1.08);
        box-shadow: 0 6px 18px rgba(0,40,85,.28);
    }

.splash-feature .btn.btn-neutral-solid[b-1j899gbvi8] {
    display: inline-flex;
    align-items: center;
    gap: .4rem;
    font-family: "din-2014", "DIN Pro", sans-serif;
    font-size: .74rem;
    font-weight: 600;
    letter-spacing: .06em;
    text-transform: uppercase;
    padding: .50rem 1rem;
    border-radius: 6px;
    border: 1px solid rgba(0,40,85,.18);
    color: var(--spl-title-clr);
    background: transparent;
    transition: background .14s ease, border-color .14s ease;
    cursor: pointer;
}

    .splash-feature .btn.btn-neutral-solid:hover[b-1j899gbvi8] {
        background: rgba(0,40,85,.06);
        border-color: rgba(0,40,85,.30);
    }

:root[data-bs-theme="dark"] .splash-feature .btn.btn-success-solid[b-1j899gbvi8] {
    background: linear-gradient(135deg, #F1B828 0%, #d9a020 100%);
    color: #001a36;
    border: none;
    box-shadow: 0 3px 12px rgba(241,184,40,.35);
}

:root[data-bs-theme="dark"] .splash-feature .btn.btn-neutral-solid[b-1j899gbvi8] {
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(255,255,255,.14);
    color: rgba(210,228,248,.85);
}


/* --------------------------------------------------------------------------
   DARK MODE CARD OVERRIDES
   -------------------------------------------------------------------------- */
:root[data-bs-theme="dark"] .splash-feature[b-1j899gbvi8] {
    box-shadow: 0 4px 20px rgba(0,0,0,.45), inset 0 1px 0 rgba(241,184,40,.06);
}

:root[data-bs-theme="dark"] .sf-icon[b-1j899gbvi8] {
    background: linear-gradient(135deg, #1a3f6f 0%, #0d2a50 100%);
}

:root[data-bs-theme="dark"] .sf-description[b-1j899gbvi8] {
    color: rgba(176,200,220,.75) !important;
}

:root[data-bs-theme="dark"] .sf-divider[b-1j899gbvi8] {
    background: linear-gradient(90deg, #354252 0%, transparent 100%);
}


/* --------------------------------------------------------------------------
   FOOTER STRIPE
   -------------------------------------------------------------------------- */
.iac-login-footer[b-1j899gbvi8] {
    position: fixed;
    inset: auto 0 0 0;
    height: 44px;
    z-index: 9999;
    background: linear-gradient(180deg, rgba(255,255,255,.10), rgba(0,0,0,.00)), #002855;
    border-top: 1px solid rgba(255,255,255,.12);
}

    .iac-login-footer.iac-login-footer-img[b-1j899gbvi8] {
        background: #002855 url("/images/BottomBlueBar.png") center bottom / cover no-repeat;
        border-top: 0;
    }


/* --------------------------------------------------------------------------
   RESPONSIVE — TABLET <= 991px
   -------------------------------------------------------------------------- */
@media (max-width: 991.98px) {
    .splash-hero[b-1j899gbvi8] {
        height: calc(100dvh - 52px);
    }

    .splash-hero__photo[b-1j899gbvi8] {
        display: none;
    }

    .title-band[b-1j899gbvi8] {
        left: 0;
        top: 0;
        position: relative;
        width: 100%;
        height: auto;
        padding: 1rem 1.5rem;
    }

    .splash-right-pane[b-1j899gbvi8] {
        position: relative;
        left: 0;
        top: 0;
        right: 0;
        bottom: 0;
        padding: 1.25rem 1.5rem 88px; /* 88px > 44px footer — ensures last card is never obscured */
        overflow-y: auto;
    }

    /* Switch hero to vertical flow on tablet */
    .splash-hero[b-1j899gbvi8] {
        display: flex;
        flex-direction: column;
        height: auto;
        min-height: calc(100dvh - 52px);
        overflow-y: auto;
    }
}

/* --------------------------------------------------------------------------
   RESPONSIVE — MOBILE <= 767px
   -------------------------------------------------------------------------- */
@media (max-width: 767.98px) {
    .splash-hero[b-1j899gbvi8] {
        min-height: calc(100dvh - 48px);
    }

    .title-band[b-1j899gbvi8] {
        padding: .85rem 1.1rem;
    }

    .splash-hero__title[b-1j899gbvi8] {
        font-size: clamp(1rem, 5.5vw, 1.35rem);
        white-space: normal;
        line-height: 1.2;
    }

    .sf-title[b-1j899gbvi8] {
        font-size: .92rem !important;
    }

    .splash-right-pane[b-1j899gbvi8] {
        padding: 1rem 1rem 80px;
    }

    /* Cards: single column on mobile */
    .splash-feature[b-1j899gbvi8] {
        border-radius: 10px;
    }

    .sf-header[b-1j899gbvi8] {
        padding: .85rem .85rem .65rem;
    }

    .sf-title-block[b-1j899gbvi8] {
        padding: 0 .85rem .4rem;
    }

    .sf-description[b-1j899gbvi8] {
        padding: 0 .85rem;
        font-size: .82rem;
    }

    .sf-footer[b-1j899gbvi8] {
        padding: .6rem .85rem .85rem;
    }

    .sf-icon[b-1j899gbvi8] {
        width: 38px;
        height: 38px;
    }
}

/* --------------------------------------------------------------------------
   RESPONSIVE — SMALL PHONE <= 576px
   -------------------------------------------------------------------------- */
@media (max-width: 576px) {
    .splash-hero[b-1j899gbvi8] {
        min-height: calc(100dvh - 44px);
    }

    .title-band[b-1j899gbvi8] {
        padding: .7rem .9rem;
        border-left-width: 3px;
    }

    .splash-hero__title[b-1j899gbvi8] {
        font-size: clamp(.92rem, 5vw, 1.15rem);
    }

    .splash-right-pane[b-1j899gbvi8] {
        padding: .75rem .75rem 80px;
    }

    /* Feature cards: tighter on tiny screens */
    .sf-header[b-1j899gbvi8] {
        padding: .75rem .75rem .55rem;
    }

    .sf-icon[b-1j899gbvi8] {
        width: 34px;
        height: 34px;
        border-radius: 8px;
    }

    .sf-badge[b-1j899gbvi8] {
        font-size: .55rem;
        padding: .18rem .5rem;
    }

    .sf-title[b-1j899gbvi8] {
        font-size: .88rem !important;
    }

    .sf-subtitle[b-1j899gbvi8] {
        font-size: .65rem;
    }

    .sf-description[b-1j899gbvi8] {
        font-size: .80rem;
        padding: 0 .75rem;
        margin-bottom: .5rem;
    }

    .sf-footer[b-1j899gbvi8] {
        padding: .5rem .75rem .75rem;
    }

    /* Back bar tighter */
    .sf-back-bar[b-1j899gbvi8] {
        padding: .65rem .75rem;
    }

    .sf-back-title[b-1j899gbvi8] {
        font-size: .9rem;
    }
}
/* _content/NoiseLockQuoteTool/Pages/Windows.razor.rz.scp.css */
/* =============================================================
   WINDOWS.RAZOR — COMPLETE PAGE STYLESHEET
   Font: DIN 2014 / DIN Pro throughout
   IAC Brand: Navy #002855 · Gold #F1B828 · Green #1a7a4a
   =============================================================*/

/* ─────────────────────────────────────────────
   1. DESIGN TOKENS — LIGHT — ENHANCED
   ───────────────────────────────────────────── */
:root[b-vtj2why5f2],
:root[data-bs-theme="light"][b-vtj2why5f2],
[data-theme="light"][b-vtj2why5f2] {
    --iac-navy: #002855;
    --iac-navy-mid: #1a3260;
    --iac-gold: #F1B828;
    --iac-gold-rgb: 241,184,40;
    --iac-navy-rgb: 0,40,85;
    --iac-green: #1a7a4a;
    --iac-green-rgb: 26,122,74;
    --page-bg: #f0f2f5;
    --panel-bg: #f7f8fb;
    --panel-bg-alt: #eef0f4;
    --panel-border: rgba(0,40,85,0.10);
    --panel-border-strong: rgba(0,40,85,0.18);
    --header-bg: #d8dde5;
    --header-border: rgba(0,40,85,0.18);
    --text-primary: #0d1f3c;
    --text-secondary: rgba(13,31,60,0.72);
    --text-muted: rgba(13,31,60,0.48);
    --text-dim: rgba(13,31,60,0.36);
    --input-bg: #ffffff;
    --info-dot-bg: rgba(0,40,85,0.12);
    --info-dot-color: #002855;
    --info-dot-bg: rgba(255,255,255,0.10);
    --info-dot-color: rgba(255,255,255,0.72);
    --input-bg-hover: #f4f6f8;
    --input-border: rgba(0,40,85,0.14);
    --input-border-focus: rgba(241,184,40,0.70);
    --input-focus-shadow: rgba(241,184,40,0.18);
    --input-text: #0d1f3c;
    --input-placeholder: rgba(13,31,60,0.38);
    --input-disabled-bg: rgba(0,40,85,0.05);
    --divider: rgba(0,40,85,0.08);
    --divider-strong: rgba(0,40,85,0.14);
    /* Buttons - Primary Action (Save Job) — SOLID LIGHT MODE */
    --btn-primary-bg: #b45309;
    --btn-primary-hover: #92400e;
    --btn-primary-border: #92400e;
    --btn-primary-shadow: 0 2px 6px rgba(180,83,9,0.30), 0 1px 2px rgba(0,0,0,0.12);
    --btn-primary-glow: 0 0 0 3px rgba(217,119,6,0.22);
    --btn-primary-text: #ffffff;
    /* Buttons - Success (Order Now) — SOLID LIGHT MODE */
    --btn-success-bg: #155f39;
    --btn-success-hover: #0f4a2c;
    --btn-success-border: #0f4a2c;
    --btn-success-shadow: 0 2px 6px rgba(21,95,57,0.30), 0 1px 2px rgba(0,0,0,0.12);
    --btn-success-glow: 0 0 0 3px rgba(26,122,74,0.22);
    --btn-success-text: #ffffff;
    /* Buttons - Add Button — SOLID LIGHT MODE */
    --btn-add-bg: #155f39;
    --btn-add-hover: #0f4a2c;
    --btn-add-border: #0f4a2c;
    --btn-add-shadow: 0 2px 6px rgba(21,95,57,0.30), 0 1px 2px rgba(0,0,0,0.12);
    --btn-add-glow: 0 0 0 3px rgba(26,122,74,0.22);
    --btn-add-text: #ffffff;
    /* Buttons - Utility (PDF Export) — SOLID LIGHT MODE */
    --btn-utility-bg: #991b1b;
    --btn-utility-hover: #7f1d1d;
    --btn-utility-border: #7f1d1d;
    --btn-utility-shadow: 0 2px 6px rgba(153,27,27,0.30), 0 1px 2px rgba(0,0,0,0.12);
    --btn-utility-glow: 0 0 0 3px rgba(196,30,30,0.20);
    --btn-utility-text: #ffffff;
    /* Buttons - Neutral (Secondary) — SOLID LIGHT MODE */
    --btn-neutral-bg: #002855;
    --btn-neutral-hover: #001e42;
    --btn-neutral-border: #001e42;
    --btn-neutral-text: #ffffff;
    --btn-neutral-shadow: 0 2px 6px rgba(0,40,85,0.22), 0 1px 2px rgba(0,0,0,0.10);
    /* Buttons - Danger (Delete) */
    --btn-danger-bg: rgba(220,38,38,0.08);
    --btn-danger-hover: rgba(220,38,38,0.14);
    --btn-danger-border: rgba(220,38,38,0.18);
    --btn-danger-text: #b91c1c;
    --btn-danger-shadow: 0 2px 6px rgba(220,38,38,0.1);
    /* Modal */
    --modal-bg: #ffffff;
    --modal-header-bg: #f8f9fc;
    --modal-footer-bg: #f8f9fc;
    --modal-border: rgba(0,40,85,0.12);
    /* Table - ENHANCED */
    --table-head-bg: #e2e6ec;
    --table-head-border: #002855;
    --table-head-text: #002855;
    --table-row-even: #ffffff;
    --table-row-odd: #f5f7fa;
    --table-row-hover: rgba(241,184,40,0.08);
    --table-row-hover-accent: #002855;
    --table-border: rgba(0,40,85,0.1);
    --table-stripe-accent: rgba(0,40,85,0.02);
    /* Badge */
    --badge-bg: rgba(0,40,85,0.08);
    --badge-color: #002855;
    --badge-border: rgba(0,40,85,0.16);
    /* Summary pills — match Doors: tinted bg, dark legible text in light mode */
    --pill-yellow-bg: rgba(241,184,40,0.18);
    --pill-yellow-color: #7a5800;
    --pill-yellow-border: rgba(241,184,40,0.40);
    --pill-green-bg: rgba(26,122,74,0.14);
    --pill-green-color: #155f39;
    --pill-green-border: rgba(26,122,74,0.30);
    /* Program summary chips */
    --program-chip-bg: #ffffff;
    --program-chip-border: rgba(0,40,85,0.15);
    --program-chip-text: #0d1f3c;
    --program-chip-accent: #F1B828;
    --program-chip-shadow: 0 2px 6px rgba(0,0,0,0.03);
    --info-dot-bg: rgba(0,40,85,0.12);
    --info-dot-color: #002855;
    --scrollbar-thumb: rgba(0,40,85,0.18);
    /* IAC Offcanvas */
    --iac-footer-height: 20px;
    --iac-surface: #ffffff;
    --iac-surface-2: rgba(0,40,85,0.04);
    --iac-border: rgba(0,40,85,0.12);
    --iac-border-hover: rgba(0,40,85,0.22);
    --iac-accent: var(--iac-gold);
    --iac-accent-glow: rgba(241,184,40,0.22);
    --iac-accent-dim: rgba(241,184,40,0.14);
    --iac-accent-border: rgba(241,184,40,0.30);
    --iac-text-primary: #0d1f3c;
    --iac-text-secondary: rgba(13,31,60,0.72);
    --iac-text-muted: rgba(13,31,60,0.48);
    --iac-success: #1a7a4a;
    --iac-success-text: #ffffff;
    --iac-success-shadow: rgba(26,122,74,0.18);
    --iac-success-hover: rgba(26,122,74,0.28);
    --iac-disabled-bg: rgba(0,40,85,0.05);
    --iac-shadow: 0 20px 60px rgba(0,40,85,0.16), 0 0 0 1px rgba(0,40,85,0.06);
    --iac-close-hover: rgba(0,40,85,0.06);
    --iac-cancel-hover: rgba(0,40,85,0.05);
    --iac-req-note-bg: rgba(241,184,40,0.14);
    --iac-scrollbar: rgba(0,40,85,0.18);
    /* Select chevron */
    --iac-select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%230d1f3c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.55'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    /* Error / modal overlay */
    --error-overlay: rgba(0,0,0,0.45);
    --error-card-bg: #ffffff;
    --error-card-border: rgba(0,40,85,0.12);
    --error-card-shadow: 0 20px 60px rgba(0,40,85,0.18);
}

    /* ─────────────────────────────────────────────
   1b. DESIGN TOKENS — DARK — ENHANCED with GLOW
   ───────────────────────────────────────────── */
    :root[data-bs-theme="dark"][b-vtj2why5f2],
    [data-theme="dark"][b-vtj2why5f2] {
        --iac-navy: #0d1f3c;
        --iac-navy-mid: #1a3260;
        --iac-gold: #F1B828;
        --iac-gold-rgb: 241,184,40;
        --iac-navy-rgb: 13,31,60;
        --iac-green: #22c55e;
        --iac-green-rgb: 34,197,94;
        --page-bg: #0b0f17;
        --panel-bg: #1a2033;
        --panel-bg-alt: #1d2438;
        --panel-border: rgba(255,255,255,0.10);
        --panel-border-strong: rgba(255,255,255,0.16);
        --header-bg: #090c14;
        --header-border: rgba(255,255,255,0.12);
        --text-primary: rgba(255,255,255,0.92);
        --text-secondary: rgba(255,255,255,0.72);
        --text-muted: rgba(255,255,255,0.48);
        --text-dim: rgba(255,255,255,0.30);
        --input-bg: rgba(255,255,255,0.06);
        --input-bg-hover: rgba(255,255,255,0.09);
        --input-border: rgba(255,255,255,0.11);
        --input-border-focus: rgba(241,184,40,0.55);
        --input-focus-shadow: rgba(241,184,40,0.14);
        --input-text: rgba(255,255,255,0.90);
        --input-placeholder: rgba(255,255,255,0.32);
        --input-disabled-bg: rgba(255,255,255,0.04);
        --divider: rgba(255,255,255,0.06);
        --divider-strong: rgba(255,255,255,0.10);
        /* Buttons - Dark Mode — DEEP GLOW */
        --btn-primary-bg: #d97706;
        --btn-primary-hover: #f59e0b;
        --btn-primary-border: #d97706;
        --btn-primary-shadow: 0 4px 18px rgba(217,119,6,0.55), 0 0 32px rgba(217,119,6,0.22), 0 1px 3px rgba(0,0,0,0.30);
        --btn-primary-glow: 0 0 0 3px rgba(217,119,6,0.35), 0 0 20px rgba(217,119,6,0.25);
        --btn-primary-text: #ffffff;
        --btn-success-bg: #1a7a4a;
        --btn-success-hover: #22c55e;
        --btn-success-border: #22c55e;
        --btn-success-shadow: 0 4px 18px rgba(26,122,74,0.55), 0 0 32px rgba(34,197,94,0.22), 0 1px 3px rgba(0,0,0,0.30);
        --btn-success-glow: 0 0 0 3px rgba(34,197,94,0.30), 0 0 20px rgba(34,197,94,0.20);
        --btn-success-text: #ffffff;
        --btn-add-bg: #1a7a4a;
        --btn-add-hover: #22c55e;
        --btn-add-border: #22c55e;
        --btn-add-shadow: 0 4px 18px rgba(26,122,74,0.55), 0 0 32px rgba(34,197,94,0.22), 0 1px 3px rgba(0,0,0,0.30);
        --btn-add-glow: 0 0 0 3px rgba(34,197,94,0.30), 0 0 20px rgba(34,197,94,0.20);
        --btn-add-text: #ffffff;
        --btn-utility-bg: #dc2626;
        --btn-utility-hover: #ef4444;
        --btn-utility-border: #dc2626;
        --btn-utility-shadow: 0 4px 18px rgba(220,38,38,0.55), 0 0 32px rgba(239,68,68,0.22), 0 1px 3px rgba(0,0,0,0.30);
        --btn-utility-glow: 0 0 0 3px rgba(239,68,68,0.32), 0 0 20px rgba(239,68,68,0.20);
        --btn-utility-text: #ffffff;
        --btn-neutral-bg: rgba(255,255,255,0.08);
        --btn-neutral-hover: rgba(255,255,255,0.14);
        --btn-neutral-border: rgba(255,255,255,0.18);
        --btn-neutral-text: rgba(255,255,255,0.90);
        --btn-neutral-shadow: 0 4px 14px rgba(0,0,0,0.30), 0 0 0 1px rgba(255,255,255,0.10);
        --btn-danger-bg: rgba(239,68,68,0.10);
        --btn-danger-hover: rgba(239,68,68,0.20);
        --btn-danger-border: rgba(239,68,68,0.28);
        --btn-danger-text: #f87171;
        --btn-danger-shadow: 0 2px 12px rgba(239,68,68,0.25), 0 0 18px rgba(239,68,68,0.15);
        /* Modal - Dark Mode */
        --modal-bg: #1a2236;
        --modal-header-bg: #0e1520;
        --modal-footer-bg: #0e1520;
        --modal-border: rgba(255,255,255,0.10);
        /* Table - Dark Mode - ENHANCED */
        --table-head-bg: #0e1520;
        --table-head-border: #F1B828;
        --table-head-text: #F1B828;
        --table-row-even: #1a2236;
        --table-row-odd: #1e2840;
        --table-row-hover: #263250;
        --table-row-hover-accent: #F1B828;
        --table-border: rgba(255,255,255,0.06);
        --table-stripe-accent: rgba(255,255,255,0.02);
        /* Badge - Dark Mode */
        --badge-bg: rgba(255,255,255,0.07);
        --badge-color: rgba(255,255,255,0.78);
        --badge-border: rgba(255,255,255,0.14);
        /* Pills - Dark Mode - VIBRANT */
        --pill-yellow-bg: #F1B828;
        --pill-yellow-color: #0d1f3c;
        --pill-yellow-border: #F1B828;
        --pill-green-bg: #22c55e;
        --pill-green-color: #ffffff;
        --pill-green-border: #22c55e;
        /* Program summary chips - Dark Mode */
        --program-chip-bg: rgba(255,255,255,0.05);
        --program-chip-border: rgba(255,255,255,0.15);
        --program-chip-text: rgba(255,255,255,0.9);
        --program-chip-accent: #F1B828;
        --program-chip-shadow: 0 2px 8px rgba(0,0,0,0.2);
        --info-dot-bg: rgba(255,255,255,0.10);
        --info-dot-color: rgba(255,255,255,0.75);
        --scrollbar-thumb: rgba(255,255,255,0.14);
        --iac-surface: #1a2236;
        --iac-surface-2: #1e2840;
        --iac-border: rgba(255,255,255,0.10);
        --iac-border-hover: rgba(255,255,255,0.18);
        --iac-accent: var(--iac-gold);
        --iac-accent-glow: rgba(241,184,40,0.20);
        --iac-accent-dim: rgba(241,184,40,0.12);
        --iac-accent-border: rgba(241,184,40,0.26);
        --iac-text-primary: rgba(255,255,255,0.94);
        --iac-text-secondary: rgba(255,255,255,0.72);
        --iac-text-muted: rgba(255,255,255,0.55);
        --iac-success: #1a7a4a;
        --iac-success-text: #ffffff;
        --iac-success-shadow: rgba(26,122,74,0.25);
        --iac-success-hover: rgba(26,122,74,0.40);
        --iac-disabled-bg: rgba(255,255,255,0.06);
        --iac-shadow: 0 32px 80px rgba(0,0,0,0.60), 0 0 0 1px rgba(255,255,255,0.05);
        --iac-close-hover: rgba(241,184,40,0.10);
        --iac-cancel-hover: rgba(255,255,255,0.06);
        --iac-req-note-bg: rgba(241,184,40,0.06);
        --iac-scrollbar: rgba(255,255,255,0.14);
        --iac-select-chevron: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.62'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
        /* Error / modal overlay */
        --error-overlay: rgba(0,0,0,0.72);
        --error-card-bg: #1a1f2e;
        --error-card-border: rgba(255,255,255,0.10);
        --error-card-shadow: 0 32px 80px rgba(0,0,0,0.60);
    }

/* ─────────────────────────────────────────────
   2. BASE / RESET
   ───────────────────────────────────────────── */
*[b-vtj2why5f2], *[b-vtj2why5f2]::before, *[b-vtj2why5f2]::after {
    box-sizing: border-box;
}

.quotes-page[b-vtj2why5f2],
.quotes-page *[b-vtj2why5f2],
.page-shell[b-vtj2why5f2],
.page-shell *[b-vtj2why5f2] {
    font-family: 'din-2014', 'DIN 2014', 'DIN Pro', 'DM Sans', system-ui, -apple-system, sans-serif !important;
}

[b-vtj2why5f2]::-webkit-scrollbar {
    width: 5px;
    height: 5px;
}

[b-vtj2why5f2]::-webkit-scrollbar-track {
    background: transparent;
}

[b-vtj2why5f2]::-webkit-scrollbar-thumb {
    background: var(--scrollbar-thumb);
    border-radius: 10px;
}

/* ─────────────────────────────────────────────
   3. PAGE SHELL & HEADER
   ───────────────────────────────────────────── */
.page-shell[b-vtj2why5f2] {
    padding: 0;
}

.windows-editor-wrapper[b-vtj2why5f2] {
    padding: 0 0 100px; /* space for sticky footer */
    display: flex;
    flex-direction: column;
    gap: 0;
}

/* ── Page top bar (replaces old quotes-header) ── */
.mpl-page-header[b-vtj2why5f2] {
    background: #002855 !important;
    border-bottom: 3px solid var(--iac-gold) !important;
    border-left: none !important;
    border-top: none !important;
    border-right: none !important;
    border-radius: 10px !important;
    margin: 8px 10px 12px !important;
    padding: 0 24px !important;
    box-shadow: none !important;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0;
    min-height: 60px;
    position: sticky;
    top: 8px;
    z-index: 100;
}

:root[data-bs-theme="dark"] .mpl-page-header[b-vtj2why5f2],
[data-theme="dark"] .mpl-page-header[b-vtj2why5f2],
[data-bs-theme="dark"] .mpl-page-header[b-vtj2why5f2] {
    background: #090c14 !important;
    border-bottom-color: var(--iac-gold) !important;
    border-left: none !important;
    border-radius: 10px !important;
    margin: 8px 10px 12px !important;
    box-shadow: none !important;
}

.mpl-page-header__title-row[b-vtj2why5f2] {
    display: flex;
    align-items: center;
    gap: 14px;
    height: 60px;
    flex-wrap: wrap;
}

.mpl-page-header__title[b-vtj2why5f2] {
    font-size: 20px !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    color: #ffffff !important;
    margin: 0 !important;
}

.mpl-page-header__title-row .btn[b-vtj2why5f2] {
    height: 30px !important;
    font-size: 11px !important;
    padding: 0 12px !important;
    min-width: unset !important;
}

/* Page content area */
.win-page-body[b-vtj2why5f2] {
    padding: 20px 24px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

/* ── New clean panel system ── */
.win-panel[b-vtj2why5f2] {
    background: var(--panel-bg-alt);
    border: 1px solid var(--panel-border);
    border-radius: 10px;
    overflow: hidden;
}

:root[data-bs-theme="dark"] .win-panel[b-vtj2why5f2],
[data-theme="dark"] .win-panel[b-vtj2why5f2] {
    background: #1a2033;
    border-color: rgba(255,255,255,0.08);
}

.win-panel__head[b-vtj2why5f2] {
    background: var(--header-bg);
    border-bottom: 1px solid var(--header-border);
    padding: 12px 18px;
    display: flex;
    align-items: center;
    gap: 9px;
    position: relative;
}

    .win-panel__head[b-vtj2why5f2]::before {
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        width: 3px;
        background: var(--iac-gold);
        border-radius: 0;
    }

:root[data-bs-theme="dark"] .win-panel__head[b-vtj2why5f2],
[data-theme="dark"] .win-panel__head[b-vtj2why5f2] {
    background: #0e1520 !important;
    border-bottom-color: rgba(241,184,40,0.22) !important;
}

.win-panel__title[b-vtj2why5f2] {
    font-size: 11px !important;
    font-weight: 800 !important;
    letter-spacing: 0.1em !important;
    text-transform: uppercase !important;
    color: var(--text-primary) !important;
    margin: 0 !important;
    padding-bottom: 0 !important;
}

    .win-panel__title[b-vtj2why5f2]::after {
        display: none !important;
    }

.win-panel__sub[b-vtj2why5f2] {
    font-size: 11px;
    color: var(--text-hint, rgba(13,31,60,0.36));
    margin-left: auto;
    font-weight: 500;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 50%;
}

:root[data-bs-theme="dark"] .win-panel__sub[b-vtj2why5f2],
[data-theme="dark"] .win-panel__sub[b-vtj2why5f2] {
    color: rgba(255,255,255,0.30);
}

.win-panel__body[b-vtj2why5f2] {
    padding: 18px;
}

/* ── Two-column config layout ── */
.win-config-grid[b-vtj2why5f2] {
    display: grid;
    grid-template-columns: 1fr 280px;
    gap: 18px;
    align-items: start;
}

/* ── Summary bar ── */
.win-summary-bar[b-vtj2why5f2] {
    background: var(--header-bg);
    border-radius: 10px;
    padding: 14px 20px;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 12px;
}

:root[data-bs-theme="dark"] .win-summary-bar[b-vtj2why5f2],
[data-theme="dark"] .win-summary-bar[b-vtj2why5f2] {
    background: #0e1520;
    border: 1px solid rgba(255,255,255,0.07);
}

.win-summary-bar__badge[b-vtj2why5f2] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 5px 12px;
    background: var(--iac-gold);
    border-radius: 5px;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #002855;
    flex-shrink: 0;
    white-space: nowrap;
}

.win-summary-bar__meta[b-vtj2why5f2] {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    flex: 1;
}

.win-summary-bar__item[b-vtj2why5f2] {
    display: flex;
    flex-direction: column;
    gap: 1px;
}

.win-summary-bar__item-label[b-vtj2why5f2] {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.38);
}

.win-summary-bar__item-val[b-vtj2why5f2] {
    font-size: 13px;
    font-weight: 700;
    color: rgba(255,255,255,0.88);
}

.win-summary-bar__prices[b-vtj2why5f2] {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-left: auto;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.win-price-block[b-vtj2why5f2] {
    text-align: right;
}

.win-price-block__label[b-vtj2why5f2] {
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: rgba(255,255,255,0.38);
}

.win-price-block__val[b-vtj2why5f2] {
    font-size: 17px;
    font-weight: 800;
    letter-spacing: -0.01em;
}

.win-price-block__val--list[b-vtj2why5f2] {
    color: rgba(255,255,255,0.60);
}

.win-price-block__val--rep[b-vtj2why5f2] {
    color: var(--iac-gold);
}

.win-price-divider[b-vtj2why5f2] {
    width: 0.5px;
    height: 28px;
    background: rgba(255,255,255,0.14);
    flex-shrink: 0;
}

/* ── Sticky footer action bar ── */
.win-footer-bar[b-vtj2why5f2] {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 200;
    background: var(--page-bg);
    border-top: 1px solid var(--divider-strong);
    padding: 12px 24px 16px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    flex-wrap: wrap;
}

:root[data-bs-theme="dark"] .win-footer-bar[b-vtj2why5f2],
[data-theme="dark"] .win-footer-bar[b-vtj2why5f2] {
    background: #0b0f17;
    border-top-color: rgba(255,255,255,0.09);
}

/* Legacy panel_kicker — keep for compat */
.panel-kicker[b-vtj2why5f2] {
    margin-bottom: 16px;
    font-size: 12px;
    color: var(--text-muted);
    letter-spacing: 0.02em;
}

.section-header--flush[b-vtj2why5f2] {
    margin-bottom: 0;
    padding-left: 0;
    border-left: 0;
}

    .section-header--flush h5[b-vtj2why5f2] {
        font-size: 14px;
        font-weight: 800;
        letter-spacing: 0.05em;
        text-transform: uppercase;
        color: var(--text-primary);
    }

    .section-header--flush small[b-vtj2why5f2] {
        display: block;
        margin-top: 2px;
    }

/* In dark mode, card-header is very dark (#0e1520) — make text pop clearly */
:root[data-bs-theme="dark"] .iac-panel .card-header .section-header--flush h5[b-vtj2why5f2],
:root[data-bs-theme="dark"] .iac-panel .door-header .section-header--flush h5[b-vtj2why5f2],
[data-theme="dark"] .iac-panel .card-header .section-header--flush h5[b-vtj2why5f2],
[data-theme="dark"] .iac-panel .door-header .section-header--flush h5[b-vtj2why5f2] {
    color: rgba(255,255,255,0.95) !important;
    letter-spacing: 0.06em;
}

:root[data-bs-theme="dark"] .iac-panel .card-header .section-header--flush small[b-vtj2why5f2],
:root[data-bs-theme="dark"] .iac-panel .door-header .section-header--flush small[b-vtj2why5f2],
[data-theme="dark"] .iac-panel .card-header .section-header--flush small[b-vtj2why5f2],
[data-theme="dark"] .iac-panel .door-header .section-header--flush small[b-vtj2why5f2] {
    color: rgba(255,255,255,0.50) !important;
}

.windows-sizing-grid[b-vtj2why5f2] {
    display: block;
}

.windows-config-card[b-vtj2why5f2],
.windows-sizing-card[b-vtj2why5f2] {
    height: 100%;
}

/* ── Legacy .quotes-header kept for compatibility ── */
.quotes-header[b-vtj2why5f2] {
    display: flex;
    align-items: center;
    gap: 14px;
    flex-wrap: wrap;
    margin: 0;
    padding: 0 24px;
    background: var(--header-bg);
    min-height: 52px;
}

    .quotes-header h3[b-vtj2why5f2] {
        font-size: 13px;
        font-weight: 800;
        letter-spacing: 0.1em;
        text-transform: uppercase;
        color: #ffffff;
        margin: 0;
        white-space: nowrap;
    }

/* mpl-page-header Project Details button — ghost style on the always-dark header */
.mpl-page-header .btn[b-vtj2why5f2],
.mpl-page-header .btn[data-bs-target="#projectOffcanvas"][b-vtj2why5f2],
.btn-project-details[b-vtj2why5f2] {
    background: transparent !important;
    border: 1px solid rgba(255,255,255,0.30) !important;
    color: rgba(255,255,255,0.80) !important;
    font-size: 11px !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
    padding: 5px 12px !important;
    border-radius: 6px !important;
    transition: background 0.15s, border-color 0.15s, color 0.15s !important;
    text-shadow: none !important;
    box-shadow: none !important;
}

    .mpl-page-header .btn:hover[b-vtj2why5f2],
    .mpl-page-header .btn[data-bs-target="#projectOffcanvas"]:hover[b-vtj2why5f2],
    .btn-project-details:hover[b-vtj2why5f2] {
        background: rgba(255,255,255,0.10) !important;
        border-color: var(--iac-gold) !important;
        color: var(--iac-gold) !important;
        box-shadow: none !important;
    }

/* ─────────────────────────────────────────────
   4. IAC PANEL
   ───────────────────────────────────────────── */
.iac-panel[b-vtj2why5f2] {
    background: var(--panel-bg-alt) !important;
    --bs-card-bg: var(--panel-bg-alt);
    border: 1px solid var(--panel-border);
    border-radius: 10px;
    overflow: hidden;
    box-shadow: none;
    transition: background 0.25s, border-color 0.25s;
}

    .iac-panel[b-vtj2why5f2]::before {
        display: none;
    }

    .iac-panel .card-header[b-vtj2why5f2],
    .iac-panel .door-header[b-vtj2why5f2] {
        background: #e8ebf0 !important;
        border-radius: 0;
        padding: 12px 18px;
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-wrap: wrap;
        gap: 8px;
        border-bottom: 1px solid var(--header-border);
        border-left: none;
        transition: background 0.25s;
    }

    .iac-panel .card-body[b-vtj2why5f2],
    .windows-main-card__body[b-vtj2why5f2],
    .windows-lines-card__body[b-vtj2why5f2] {
        background: #f7f8fb !important;
        padding: 18px;
        transition: background 0.25s;
    }

    .iac-panel .card-footer[b-vtj2why5f2] {
        background: #eef0f4 !important;
        border-top: 1px solid var(--divider);
        padding: 12px 18px;
        transition: background 0.25s;
    }

.windows-main-card__body[b-vtj2why5f2] {
    padding: 18px !important;
}

/* Light mode */
:root[data-bs-theme="light"] .iac-panel[b-vtj2why5f2],
[data-theme="light"] .iac-panel[b-vtj2why5f2] {
    background: #f7f8fb !important;
    --bs-card-bg: #f7f8fb;
}

    :root[data-bs-theme="light"] .card.iac-panel > .card-body[b-vtj2why5f2],
    :root[data-bs-theme="light"] .iac-panel .card-body[b-vtj2why5f2],
    [data-theme="light"] .card.iac-panel > .card-body[b-vtj2why5f2],
    [data-theme="light"] .iac-panel .card-body[b-vtj2why5f2] {
        background: #f7f8fb !important;
        --bs-card-bg: #f7f8fb;
    }

/* Dark mode */
:root[data-bs-theme="dark"] .iac-panel[b-vtj2why5f2],
[data-theme="dark"] .iac-panel[b-vtj2why5f2] {
    background: #1a2236 !important;
    --bs-card-bg: #1a2236;
    border-color: rgba(255,255,255,0.08);
}

    :root[data-bs-theme="dark"] .iac-panel .card-header[b-vtj2why5f2],
    :root[data-bs-theme="dark"] .iac-panel .door-header[b-vtj2why5f2],
    [data-theme="dark"] .iac-panel .card-header[b-vtj2why5f2],
    [data-theme="dark"] .iac-panel .door-header[b-vtj2why5f2] {
        background: #0e1520 !important;
        border-bottom: 1px solid rgba(241,184,40,0.30) !important;
        border-left: 4px solid var(--iac-gold) !important;
    }

    :root[data-bs-theme="dark"] .card.iac-panel > .card-body[b-vtj2why5f2],
    :root[data-bs-theme="dark"] .iac-panel .card-body[b-vtj2why5f2],
    [data-theme="dark"] .card.iac-panel > .card-body[b-vtj2why5f2],
    [data-theme="dark"] .iac-panel .card-body[b-vtj2why5f2] {
        background: #1a2236 !important;
        --bs-card-bg: #1a2236;
    }

    :root[data-bs-theme="dark"] .iac-panel .card-footer[b-vtj2why5f2],
    [data-theme="dark"] .iac-panel .card-footer[b-vtj2why5f2] {
        background: #111827 !important;
        border-top-color: rgba(255,255,255,0.08);
        color: rgba(220,230,245,0.80);
    }

/* Section cards */
.section-card[b-vtj2why5f2] {
    border-radius: 14px;
    overflow: hidden;
    border: 1px solid var(--panel-border) !important;
    box-shadow: 0 2px 8px rgba(0,40,85,0.14), 0 8px 28px rgba(0,40,85,0.12), 0 20px 50px rgba(0,40,85,0.08);
}

.windows-top-grid[b-vtj2why5f2] {
    align-items: start;
}

.windows-pane--left[b-vtj2why5f2],
.windows-pane--right[b-vtj2why5f2] {
    min-width: 0;
}

.border-end[b-vtj2why5f2] {
    border-color: var(--divider-strong) !important;
}

/* Card titles - ENHANCED */
.card-title[b-vtj2why5f2],
.slab-card__title[b-vtj2why5f2] {
    color: var(--text-primary);
    font-weight: 800 !important;
    letter-spacing: 0.01em;
    position: relative;
    display: inline-block;
    padding-bottom: 8px;
    margin-bottom: 8px;
}

    .card-title[b-vtj2why5f2]::after,
    .slab-card__title[b-vtj2why5f2]::after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 40px;
        height: 3px;
        background: var(--iac-gold);
        border-radius: 2px;
    }

/* Section headers with gold left border */
.section-header[b-vtj2why5f2] {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
    padding-left: 12px;
    border-left: 4px solid var(--iac-gold);
}

/* No gold accent on section headers that live inside an iac-panel card-header */
.iac-panel .card-header .section-header[b-vtj2why5f2],
.iac-panel .door-header .section-header[b-vtj2why5f2] {
    border-left: none;
    padding-left: 0;
}

.section-header h5[b-vtj2why5f2] {
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0.05em;
    text-transform: uppercase;
    color: var(--text-primary);
    margin: 0;
}

.section-header small[b-vtj2why5f2] {
    color: var(--text-muted);
    font-size: 11px;
    font-weight: 500;
}

.slab-card[b-vtj2why5f2] {
    background: var(--panel-bg-alt);
    border: 1px solid var(--panel-border);
    border-radius: 14px;
    overflow: hidden;
}

.slab-card__head[b-vtj2why5f2] {
    background: var(--header-bg);
    border-bottom: 1px solid var(--header-border);
    padding: 14px 18px;
    position: relative;
}

    .slab-card__head[b-vtj2why5f2]::before {
        content: '';
        position: absolute;
        left: 0;
        top: 0;
        bottom: 0;
        width: 4px;
    }

.slab-card__title[b-vtj2why5f2] {
    font-size: 13px !important;
    margin: 0;
}

:root[data-bs-theme="dark"] .slab-card__head[b-vtj2why5f2],
[data-theme="dark"] .slab-card__head[b-vtj2why5f2] {
    background: #0e1520 !important;
    border-bottom: 1px solid rgba(241,184,40,0.28) !important;
}



/* ─────────────────────────────────────────────
   5. FORM CONTROLS
   ───────────────────────────────────────────── */
.form-label[b-vtj2why5f2] {
    font-size: 10px !important;
    font-weight: 800 !important;
    letter-spacing: 0.09em !important;
    text-transform: uppercase !important;
    color: #001e42 !important;
    margin-bottom: 4px !important;
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    padding: 3px 8px 3px 7px !important;
    border-left: 3px solid var(--iac-gold) !important;
    border-radius: 4px 4px 0 0 !important;
    background: rgba(0,40,85,0.05) !important;
    width: 100% !important;
    line-height: 1.4 !important;
}

    .form-label.small-label[b-vtj2why5f2] {
        font-size: 10px !important;
    }

:root[data-bs-theme="dark"] .form-label[b-vtj2why5f2],
[data-theme="dark"] .form-label[b-vtj2why5f2] {
    color: rgba(255,255,255,0.90) !important;
    border-left-color: var(--iac-gold) !important;
    background: rgba(241,184,40,0.10) !important;
}

.small-label[b-vtj2why5f2] {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    color: #001e42;
    padding-left: 7px;
    border-left: 3px solid var(--iac-gold);
    line-height: 1.4;
    display: inline-flex;
    align-items: center;
    gap: 4px;
}

:root[data-bs-theme="dark"] .small-label[b-vtj2why5f2],
[data-theme="dark"] .small-label[b-vtj2why5f2] {
    color: rgba(255,255,255,0.88) !important;
    border-left-color: var(--iac-gold) !important;
}

/* Form controls — base */
.form-control[b-vtj2why5f2],
.form-select[b-vtj2why5f2],
select.form-select[b-vtj2why5f2] {
    background: var(--input-bg) !important;
    border: 1px solid var(--input-border) !important;
    border-radius: 9px !important;
    padding: 9px 12px !important;
    font-size: 13px !important;
    color: var(--input-text) !important;
    box-shadow: none !important;
    transition: border-color 0.15s, box-shadow 0.15s, background 0.2s !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    appearance: none !important;
}

/* Chevron only on selects, not plain text/number inputs */
.form-select[b-vtj2why5f2],
select.form-select[b-vtj2why5f2] {
    background-image: var(--iac-select-chevron) !important;
    background-repeat: no-repeat !important;
    background-position: right 12px center !important;
    background-size: 14px 14px !important;
    padding-right: 40px !important;
}

    .form-control:focus[b-vtj2why5f2],
    .form-select:focus[b-vtj2why5f2],
    select.form-select:focus[b-vtj2why5f2] {
        border-color: var(--input-border-focus) !important;
        box-shadow: 0 0 0 3px var(--input-focus-shadow) !important;
        background: var(--input-bg-hover) !important;
        outline: none !important;
    }

    .form-control:hover:not(:focus):not(:disabled)[b-vtj2why5f2],
    .form-select:hover:not(:focus):not(:disabled)[b-vtj2why5f2] {
        border-color: var(--panel-border-strong) !important;
    }

    /* Disabled / readonly — light mode: use a visible grey, not near-transparent */
    .form-control:disabled[b-vtj2why5f2],
    .form-select:disabled[b-vtj2why5f2],
    .form-control[readonly][b-vtj2why5f2] {
        background: #e9ecef !important;
        color: rgba(13,31,60,0.50) !important;
        cursor: not-allowed;
        opacity: 1 !important;
    }

/* Disabled — dark mode */
:root[data-bs-theme="dark"] .form-control:disabled[b-vtj2why5f2],
:root[data-bs-theme="dark"] .form-select:disabled[b-vtj2why5f2],
:root[data-bs-theme="dark"] .form-control[readonly][b-vtj2why5f2],
[data-theme="dark"] .form-control:disabled[b-vtj2why5f2],
[data-theme="dark"] .form-select:disabled[b-vtj2why5f2],
[data-theme="dark"] .form-control[readonly][b-vtj2why5f2] {
    background: rgba(255,255,255,0.06) !important;
    color: rgba(255,255,255,0.35) !important;
    border-color: rgba(255,255,255,0.08) !important;
}

/* Disabled selects: clean chevron, no tiling */
.form-select:disabled[b-vtj2why5f2],
select.form-select:disabled[b-vtj2why5f2] {
    background-image: none !important;
    background-color: #e9ecef !important;
}

/* Multi-selects: no chevron */
select[multiple][b-vtj2why5f2],
select[size]:not([size="1"])[b-vtj2why5f2] {
    background-image: none !important;
    padding-right: 12px !important;
}

/* =============================================================
   PATCH — Dark mode select: fully explicit background shorthand
   Prevents Bootstrap's gradient combining with SVG chevron
   and causing the tiling/repeating arrow artifact
   ============================================================= */
:root[data-bs-theme="dark"] select.form-select[b-vtj2why5f2],
:root[data-bs-theme="dark"] .form-select[b-vtj2why5f2],
[data-theme="dark"] select.form-select[b-vtj2why5f2],
[data-theme="dark"] .form-select[b-vtj2why5f2] {
    background: var(--input-bg) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.55'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 12px center / 12px 12px !important;
}

    :root[data-bs-theme="dark"] select.form-select:disabled[b-vtj2why5f2],
    [data-theme="dark"] select.form-select:disabled[b-vtj2why5f2],
    :root[data-bs-theme="dark"] .form-select:disabled[b-vtj2why5f2],
    [data-theme="dark"] .form-select:disabled[b-vtj2why5f2] {
        background: rgba(255,255,255,0.06) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.25'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 12px center / 12px 12px !important;
        color: rgba(255,255,255,0.35) !important;
        border-color: rgba(255,255,255,0.08) !important;
    }

.form-control-plaintext[b-vtj2why5f2] {
    padding: 9px 2px !important;
    font-size: 20px;
    color: var(--text-primary) !important;
}

/* Fix for number inputs */
input[type="number"][b-vtj2why5f2] {
    text-align: right;
}

    input[type="number"].text-center[b-vtj2why5f2] {
        text-align: center;
    }

/* Section slab */
.section-slab[b-vtj2why5f2] {
    background: var(--panel-bg-alt);
    border: 1px solid var(--panel-border);
    border-radius: 12px;
    padding: 16px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,0.10);
}

/* ─────────────────────────────────────────────
   6. ALERTS
   ───────────────────────────────────────────── */
.alert[b-vtj2why5f2] {
    border-radius: 9px !important;
    font-size: 12px !important;
    padding: 10px 14px !important;
    border: 1px solid transparent !important;
}

.alert-warning[b-vtj2why5f2] {
    background: rgba(241,184,40,0.12) !important;
    border-color: rgba(241,184,40,0.26) !important;
    color: var(--text-primary) !important;
}

.alert-success[b-vtj2why5f2] {
    background: rgba(26,122,74,0.10) !important;
    border-color: rgba(26,122,74,0.22) !important;
    color: var(--text-primary) !important;
}

/* ─────────────────────────────────────────────
   IAC-TABLE--PANEL — table rows matched to iac-panel card body
   ───────────────────────────────────────────── */
.iac-panel .iac-table thead th[b-vtj2why5f2],
.iac-table--panel thead th[b-vtj2why5f2] {
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.10em;
    text-transform: uppercase;
    padding: 10px 14px;
    white-space: nowrap;
    border-bottom-width: 2px;
}

:root[data-bs-theme="light"] .iac-panel .iac-table thead th[b-vtj2why5f2],
:root[data-bs-theme="light"] .iac-table--panel thead th[b-vtj2why5f2],
[data-theme="light"] .iac-panel .iac-table thead th[b-vtj2why5f2],
[data-theme="light"] .iac-table--panel thead th[b-vtj2why5f2] {
    background: #002855 !important;
    border-bottom-color: var(--iac-gold) !important;
    color: #ffffff !important;
}

:root[data-bs-theme="light"] .iac-panel .iac-table tbody tr:nth-child(odd) td[b-vtj2why5f2],
:root[data-bs-theme="light"] .iac-table--panel tbody tr:nth-child(odd) td[b-vtj2why5f2],
[data-theme="light"] .iac-panel .iac-table tbody tr:nth-child(odd) td[b-vtj2why5f2],
[data-theme="light"] .iac-table--panel tbody tr:nth-child(odd) td[b-vtj2why5f2] {
    background: #ffffff !important;
}

:root[data-bs-theme="light"] .iac-panel .iac-table tbody tr:nth-child(even) td[b-vtj2why5f2],
:root[data-bs-theme="light"] .iac-table--panel tbody tr:nth-child(even) td[b-vtj2why5f2],
[data-theme="light"] .iac-panel .iac-table tbody tr:nth-child(even) td[b-vtj2why5f2],
[data-theme="light"] .iac-table--panel tbody tr:nth-child(even) td[b-vtj2why5f2] {
    background: #f7f8fa !important;
}

:root[data-bs-theme="light"] .iac-panel .iac-table tbody tr:hover td[b-vtj2why5f2],
:root[data-bs-theme="light"] .iac-table--panel tbody tr:hover td[b-vtj2why5f2],
[data-theme="light"] .iac-panel .iac-table tbody tr:hover td[b-vtj2why5f2],
[data-theme="light"] .iac-table--panel tbody tr:hover td[b-vtj2why5f2] {
    background: rgba(0,40,85,0.04) !important;
    color: #0d1f3c !important;
}

    :root[data-bs-theme="light"] .iac-panel .iac-table tbody tr:hover td:first-child[b-vtj2why5f2],
    :root[data-bs-theme="light"] .iac-table--panel tbody tr:hover td:first-child[b-vtj2why5f2],
    [data-theme="light"] .iac-panel .iac-table tbody tr:hover td:first-child[b-vtj2why5f2],
    [data-theme="light"] .iac-table--panel tbody tr:hover td:first-child[b-vtj2why5f2] {
        border-left: 3px solid #002855 !important;
        padding-left: 11px !important;
    }

:root[data-bs-theme="light"] .iac-panel .iac-table tbody tr[b-vtj2why5f2],
:root[data-bs-theme="light"] .iac-table--panel tbody tr[b-vtj2why5f2],
[data-theme="light"] .iac-panel .iac-table tbody tr[b-vtj2why5f2],
[data-theme="light"] .iac-table--panel tbody tr[b-vtj2why5f2] {
    border-bottom-color: rgba(0,40,85,0.10) !important;
}

:root[data-bs-theme="dark"] .iac-panel .iac-table thead th[b-vtj2why5f2],
:root[data-bs-theme="dark"] .iac-table--panel thead th[b-vtj2why5f2],
[data-theme="dark"] .iac-panel .iac-table thead th[b-vtj2why5f2],
[data-theme="dark"] .iac-table--panel thead th[b-vtj2why5f2] {
    background: #0e1520 !important;
    border-bottom-color: rgba(255,255,255,0.12) !important;
    color: rgba(255,255,255,0.55) !important;
}

:root[data-bs-theme="dark"] .iac-panel .iac-table tbody tr:nth-child(odd) td[b-vtj2why5f2],
:root[data-bs-theme="dark"] .iac-table--panel tbody tr:nth-child(odd) td[b-vtj2why5f2],
[data-theme="dark"] .iac-panel .iac-table tbody tr:nth-child(odd) td[b-vtj2why5f2],
[data-theme="dark"] .iac-table--panel tbody tr:nth-child(odd) td[b-vtj2why5f2] {
    background: #1a2236 !important;
}

:root[data-bs-theme="dark"] .iac-panel .iac-table tbody tr:nth-child(even) td[b-vtj2why5f2],
:root[data-bs-theme="dark"] .iac-table--panel tbody tr:nth-child(even) td[b-vtj2why5f2],
[data-theme="dark"] .iac-panel .iac-table tbody tr:nth-child(even) td[b-vtj2why5f2],
[data-theme="dark"] .iac-table--panel tbody tr:nth-child(even) td[b-vtj2why5f2] {
    background: #1e2840 !important;
}

:root[data-bs-theme="dark"] .iac-panel .iac-table tbody tr:hover td[b-vtj2why5f2],
:root[data-bs-theme="dark"] .iac-table--panel tbody tr:hover td[b-vtj2why5f2],
[data-theme="dark"] .iac-panel .iac-table tbody tr:hover td[b-vtj2why5f2],
[data-theme="dark"] .iac-table--panel tbody tr:hover td[b-vtj2why5f2] {
    background: #263250 !important;
    color: rgba(255,255,255,0.92) !important;
}

    :root[data-bs-theme="dark"] .iac-panel .iac-table tbody tr:hover td:first-child[b-vtj2why5f2],
    :root[data-bs-theme="dark"] .iac-table--panel tbody tr:hover td:first-child[b-vtj2why5f2],
    [data-theme="dark"] .iac-panel .iac-table tbody tr:hover td:first-child[b-vtj2why5f2],
    [data-theme="dark"] .iac-table--panel tbody tr:hover td:first-child[b-vtj2why5f2] {
        border-left: 3px solid #F1B828 !important;
        padding-left: 11px !important;
    }

:root[data-bs-theme="dark"] .iac-panel .iac-table tbody tr[b-vtj2why5f2],
:root[data-bs-theme="dark"] .iac-table--panel tbody tr[b-vtj2why5f2],
[data-theme="dark"] .iac-panel .iac-table tbody tr[b-vtj2why5f2],
[data-theme="dark"] .iac-table--panel tbody tr[b-vtj2why5f2] {
    border-bottom-color: rgba(255,255,255,0.09) !important;
}

.iac-panel.saved-sets-card > .card-body[b-vtj2why5f2] {
    padding: 0 !important;
}

.iac-panel.saved-sets-card .table-responsive[b-vtj2why5f2] {
    border-radius: 0 0 14px 14px;
    overflow: hidden;
}

.summary-label[b-vtj2why5f2] {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--text-muted);
}

.icon-btn--edit[b-vtj2why5f2],
.icon-btn--delete[b-vtj2why5f2] {
    min-width: 36px !important;
    width: 36px;
    padding: 0 !important;
}

.windows-order-table td.text-center[b-vtj2why5f2],
.windows-order-table th.text-center[b-vtj2why5f2] {
    text-align: center !important;
}

.windows-order-table td:last-child[b-vtj2why5f2] {
    min-width: 100px;
}

/* ─────────────────────────────────────────────
   7. ORDER TABLE — ENHANCED for LIGHT & DARK
   ───────────────────────────────────────────── */
.order-table-wrap[b-vtj2why5f2] {
    border-radius: 12px;
    overflow: auto;
    margin-top: 8px;
    border: 1px solid var(--table-border);
    background: var(--panel-bg);
}

.order-table[b-vtj2why5f2] {
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    font-size: 12px;
    margin: 0;
}

    /* Table Header */
    .order-table thead th[b-vtj2why5f2] {
        background: #002855 !important;
        border-bottom: 2px solid var(--iac-gold) !important;
        border-top: none;
        padding: 14px 12px;
        font-size: 11px;
        font-weight: 800;
        letter-spacing: 0.10em;
        text-transform: uppercase;
        color: #ffffff !important;
        white-space: nowrap;
        position: sticky;
        top: 0;
        z-index: 10;
    }

        .order-table thead th:first-child[b-vtj2why5f2] {
            border-top-left-radius: 12px;
        }

        .order-table thead th:last-child[b-vtj2why5f2] {
            border-top-right-radius: 12px;
        }

    /* Table Body Rows */
    .order-table tbody tr[b-vtj2why5f2] {
        transition: all 0.2s ease;
        cursor: default;
    }

        .order-table tbody tr:nth-child(even) td[b-vtj2why5f2] {
            background: var(--table-row-even);
        }

        .order-table tbody tr:nth-child(odd) td[b-vtj2why5f2] {
            background: var(--table-row-odd);
        }

        .order-table tbody tr:hover td[b-vtj2why5f2] {
            background: var(--table-row-hover) !important;
        }

            .order-table tbody tr:hover td:first-child[b-vtj2why5f2] {
                border-left: 3px solid var(--table-row-hover-accent) !important;
                padding-left: 9px !important;
            }

    /* Table Cells */
    .order-table td[b-vtj2why5f2] {
        padding: 12px 12px;
        vertical-align: middle;
        color: var(--text-primary);
        border-bottom: 1px solid var(--table-border);
        transition: all 0.2s ease;
        font-size: 12px;
    }

        .order-table td strong[b-vtj2why5f2] {
            font-weight: 700;
        }

        .order-table td.text-end[b-vtj2why5f2] {
            font-variant-numeric: tabular-nums;
            font-weight: 600;
        }

        .order-table td.text-nowrap[b-vtj2why5f2] {
            white-space: nowrap;
        }

        /* MN Column - Make it stand out */
        .order-table td:first-child[b-vtj2why5f2] {
            font-weight: 700;
            color: var(--iac-navy);
            border-left: 3px solid transparent;
            background: linear-gradient(90deg, rgba(0,40,85,0.02), transparent);
        }

:root[data-bs-theme="dark"] .order-table td:first-child[b-vtj2why5f2] {
    color: #F1B828;
    background: linear-gradient(90deg, rgba(241,184,40,0.05), transparent);
}

/* Price Columns */
.order-table td:nth-child(8)[b-vtj2why5f2],
.order-table td:nth-child(9)[b-vtj2why5f2],
.order-table td:nth-child(11)[b-vtj2why5f2] {
    font-weight: 600;
    color: var(--iac-navy);
}

:root[data-bs-theme="dark"] .order-table td:nth-child(8)[b-vtj2why5f2],
:root[data-bs-theme="dark"] .order-table td:nth-child(9)[b-vtj2why5f2],
:root[data-bs-theme="dark"] .order-table td:nth-child(11)[b-vtj2why5f2] {
    color: #F1B828;
}

/* Actions Column */
.order-table td:last-child[b-vtj2why5f2] {
    min-width: 148px;
    text-align: center;
}

/* Table Footer / Summary Row */
.order-summary-row th[b-vtj2why5f2],
.order-summary-row td[b-vtj2why5f2] {
    background: transparent !important;
    border-top: 2px solid var(--divider-strong) !important;
    padding: 16px 12px 12px !important;
    color: var(--text-primary) !important;
    font-weight: 600;
}

.order-summary-row:hover td[b-vtj2why5f2] {
    background: transparent !important;
}

.order-summary-row .summary-key-cell[b-vtj2why5f2] {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: var(--text-muted) !important;
}

/* Program summary chips - ENHANCED */
.order-summary-row .text-start div[b-vtj2why5f2] {
    font-size: 11px;
    margin-bottom: 6px;
    color: var(--program-chip-text);
    display: inline-flex;
    align-items: center;
    background: var(--program-chip-bg);
    border: 1px solid var(--program-chip-border);
    border-left: 3px solid var(--program-chip-accent);
    padding: 5px 14px 5px 10px;
    border-radius: 20px;
    font-weight: 600;
    letter-spacing: 0.02em;
    margin-right: 8px;
    box-shadow: var(--program-chip-shadow);
}

    .order-summary-row .text-start div strong[b-vtj2why5f2] {
        color: var(--iac-navy);
        margin-right: 2px;
        font-weight: 700;
    }

:root[data-bs-theme="dark"] .order-summary-row .text-start div strong[b-vtj2why5f2] {
    color: var(--iac-gold);
}

/* =============================================================
   ORDER SUMMARY BANNER — matches Doors.razor pill/chip style
   ============================================================= */
.order-summary-banner[b-vtj2why5f2] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.6rem 1.1rem;
    background: #f0f4fa;
    color: #002855;
    border-radius: 10px;
    padding: 0.45rem 1rem;
    font-family: 'din-2014', system-ui, sans-serif;
    font-size: 0.78rem;
    font-weight: 600;
    letter-spacing: 0.03em;
    box-shadow: 0 1px 4px rgba(0,40,85,0.10);
    border: 1px solid rgba(0,40,85,0.18);
}

[data-bs-theme="dark"] .order-summary-banner[b-vtj2why5f2] {
    background: linear-gradient(90deg, #0b1e36 0%, #0e2a4a 100%);
    color: #e8edf5;
    border-color: rgba(241,184,40,0.22);
    box-shadow: 0 2px 10px rgba(0,0,0,0.35);
}

.order-summary-badge[b-vtj2why5f2] {
    background: #F1B828;
    color: #002855;
    border-radius: 6px;
    padding: 0.18rem 0.65rem;
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.06em;
    white-space: nowrap;
}

[data-bs-theme="dark"] .order-summary-badge[b-vtj2why5f2] {
    background: linear-gradient(90deg, #F6C84A, #F1B828);
    color: #0e2a4a;
}

.order-summary-stat[b-vtj2why5f2] {
    display: flex;
    align-items: center;
    gap: 0.35rem;
}

.order-summary-stat--stacked[b-vtj2why5f2] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 0.15rem;
}

.order-summary-stc-line[b-vtj2why5f2] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    font-size: 0.82rem;
    font-weight: 600;
    color: #002855;
    white-space: nowrap;
}

[data-bs-theme="dark"] .order-summary-stc-line[b-vtj2why5f2] {
    color: #F1B828;
}

.order-summary-stc-badge[b-vtj2why5f2] {
    background: rgba(0,40,85,0.08);
    border-radius: 4px;
    padding: 0.05rem 0.4rem;
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    color: #002855;
    white-space: nowrap;
}

[data-bs-theme="dark"] .order-summary-stc-badge[b-vtj2why5f2] {
    background: rgba(241,184,40,0.15);
    color: #F1B828;
}

.order-summary-key[b-vtj2why5f2] {
    color: rgba(0,40,85,0.55);
    font-size: 0.72rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

[data-bs-theme="dark"] .order-summary-key[b-vtj2why5f2] {
    color: rgba(232,237,245,0.55);
}

.order-summary-val[b-vtj2why5f2] {
    color: #002855;
    font-size: 0.88rem;
    font-weight: 700;
}

[data-bs-theme="dark"] .order-summary-val[b-vtj2why5f2] {
    color: #F1B828;
}

.order-summary-divider[b-vtj2why5f2] {
    color: rgba(0,40,85,0.2);
    font-weight: 300;
}

[data-bs-theme="dark"] .order-summary-divider[b-vtj2why5f2] {
    color: rgba(255,255,255,0.18);
}

/* Dark mode table enhancements */
:root[data-bs-theme="dark"] .order-table thead th[b-vtj2why5f2] {
    background: #0e1520 !important;
    border-bottom-color: #F1B828 !important;
    color: #F1B828 !important;
}

:root[data-bs-theme="dark"] .order-table tbody tr:nth-child(odd) td[b-vtj2why5f2] {
    background: #1a2236 !important;
}

:root[data-bs-theme="dark"] .order-table tbody tr:nth-child(even) td[b-vtj2why5f2] {
    background: #1e2840 !important;
}

:root[data-bs-theme="dark"] .order-table tbody tr:hover td[b-vtj2why5f2] {
    background: #263250 !important;
}

    :root[data-bs-theme="dark"] .order-table tbody tr:hover td:first-child[b-vtj2why5f2] {
        border-left-color: #F1B828 !important;
    }

:root[data-bs-theme="dark"] .order-table td[b-vtj2why5f2] {
    border-bottom-color: rgba(255,255,255,0.06);
}

/* ─────────────────────────────────────────────
   8. SUMMARY PILLS — VIBRANT for LIGHT & DARK
   ───────────────────────────────────────────── */
.sum-pill[b-vtj2why5f2] {
    display: inline-flex !important;
    align-items: center !important;
    height: 34px !important;
    padding: 0 18px 0 16px !important;
    border-radius: 6px !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    letter-spacing: 0.02em !important;
    white-space: nowrap !important;
    cursor: default !important;
    pointer-events: none !important;
    transition: all 0.2s ease !important;
    box-shadow: 0 2px 6px rgba(0,0,0,0.1) !important;
    transform: none !important;
    line-height: 1 !important;
    user-select: text !important;
    text-decoration: none !important;
    border: 1px solid transparent !important;
    margin-left: 8px;
    position: relative;
}

    /* LIST PRICE — Vibrant Gold Pill */
    .sum-pill--yellow[b-vtj2why5f2],
    .sum-pill.sum-pill--yellow[b-vtj2why5f2] {
        background: var(--pill-yellow-bg) !important;
        color: var(--pill-yellow-color) !important;
        border: 1px solid var(--pill-yellow-border) !important;
        box-shadow: 0 2px 8px rgba(241,184,40,0.3) !important;
    }

    /* REP PRICE — Vibrant Green Pill */
    .sum-pill--green[b-vtj2why5f2],
    .sum-pill.sum-pill--green[b-vtj2why5f2] {
        background: var(--pill-green-bg) !important;
        color: var(--pill-green-color) !important;
        border: 1px solid var(--pill-green-border) !important;
        box-shadow: 0 2px 8px rgba(26,122,74,0.3) !important;
    }

/* Dark mode pills - already vibrant from tokens */
:root[data-bs-theme="dark"] .sum-pill--yellow[b-vtj2why5f2],
:root[data-bs-theme="dark"] .sum-pill.sum-pill--yellow[b-vtj2why5f2],
[data-theme="dark"] .sum-pill--yellow[b-vtj2why5f2],
[data-theme="dark"] .sum-pill.sum-pill--yellow[b-vtj2why5f2] {
    background: #F1B828 !important;
    color: #0d1f3c !important;
    border: 1px solid #F1B828 !important;
    box-shadow: 0 2px 12px rgba(241,184,40,0.4) !important;
}

:root[data-bs-theme="dark"] .sum-pill--green[b-vtj2why5f2],
:root[data-bs-theme="dark"] .sum-pill.sum-pill--green[b-vtj2why5f2],
[data-theme="dark"] .sum-pill--green[b-vtj2why5f2],
[data-theme="dark"] .sum-pill.sum-pill--green[b-vtj2why5f2] {
    background: #22c55e !important;
    color: #ffffff !important;
    border: 1px solid #22c55e !important;
    box-shadow: 0 2px 12px rgba(34,197,94,0.4) !important;
}

/* ─────────────────────────────────────────────
   9. BUTTONS — VIBRANT with GLOW for LIGHT & DARK
   ───────────────────────────────────────────── */
.btn[b-vtj2why5f2] {
    font-family: 'din-2014', 'DIN 2014', 'DIN Pro', 'DM Sans', system-ui, -apple-system, sans-serif !important;
}

.btn-solid[b-vtj2why5f2] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    font-weight: 700;
    letter-spacing: 0.04em;
    border-radius: 8px;
    border: 1px solid transparent;
    cursor: pointer;
    transition: all 0.2s cubic-bezier(0.2, 0, 0, 1);
    white-space: nowrap;
    text-decoration: none;
    box-shadow: 0 2px 4px rgba(0,0,0,0.05);
    position: relative;
    overflow: hidden;
}

    .btn-solid.btn-sm[b-vtj2why5f2] {
        font-size: 12px;
        padding: 8px 16px;
        height: 36px;
        min-width: 80px;
    }

    .btn-solid:active[b-vtj2why5f2] {
        transform: none;
        box-shadow: 0 1px 2px rgba(0,0,0,0.05);
    }

    .btn-solid:disabled[b-vtj2why5f2] {
        opacity: 0.5;
        cursor: not-allowed;
        pointer-events: none;
    }

/* ── Light mode: PRIMARY — IAC Navy, matches Doors ── */
.btn-primary-solid[b-vtj2why5f2] {
    background: #002855 !important;
    border-color: rgba(241,184,40,0.35) !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(0,40,85,0.22) !important;
    font-weight: 800 !important;
    letter-spacing: 0.04em;
}

    .btn-primary-solid:hover:not(:disabled)[b-vtj2why5f2] {
        background: #001e42 !important;
        border-color: rgba(241,184,40,0.55) !important;
        color: #ffffff !important;
        box-shadow: 0 4px 14px rgba(0,40,85,0.32) !important;
        transform: none;
    }

/* ── Light mode: SUCCESS — Solid Deep Green ── */
.btn-success-solid[b-vtj2why5f2] {
    background: #1a7a4a !important;
    border-color: transparent !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(26,122,74,0.28) !important;
    font-weight: 800 !important;
    letter-spacing: 0.04em;
}

    .btn-success-solid:hover:not(:disabled)[b-vtj2why5f2] {
        background: #155f39 !important;
        box-shadow: 0 4px 14px rgba(26,122,74,0.38) !important;
        transform: none;
        color: #ffffff !important;
    }

/* ── DARK MODE: all buttons get deep glow ── */
:root[data-bs-theme="dark"] .btn-primary-solid[b-vtj2why5f2],
[data-theme="dark"] .btn-primary-solid[b-vtj2why5f2] {
    background: rgba(241,184,40,0.14) !important;
    border-color: rgba(241,184,40,0.36) !important;
    color: rgba(241,184,40,0.95) !important;
    box-shadow: 0 3px 14px rgba(0,0,0,0.30) !important;
    text-shadow: 0 0 10px rgba(255,200,80,0.50);
}

    :root[data-bs-theme="dark"] .btn-primary-solid:hover:not(:disabled)[b-vtj2why5f2],
    [data-theme="dark"] .btn-primary-solid:hover:not(:disabled)[b-vtj2why5f2] {
        background: rgba(241,184,40,0.22) !important;
        border-color: rgba(241,184,40,0.55) !important;
        color: #fff !important;
        box-shadow: 0 4px 18px rgba(0,0,0,0.35), 0 0 22px rgba(241,184,40,0.28) !important;
        text-shadow: 0 0 16px rgba(255,200,80,0.70);
        transform: none;
    }

:root[data-bs-theme="dark"] .btn-success-solid[b-vtj2why5f2],
[data-theme="dark"] .btn-success-solid[b-vtj2why5f2] {
    background: #1a7a4a !important;
    border-color: #22c55e !important;
    color: #ffffff !important;
    box-shadow: 0 4px 18px rgba(26,122,74,0.55), 0 0 32px rgba(34,197,94,0.22) !important;
    text-shadow: 0 0 10px rgba(34,197,94,0.50);
}

    :root[data-bs-theme="dark"] .btn-success-solid:hover:not(:disabled)[b-vtj2why5f2],
    [data-theme="dark"] .btn-success-solid:hover:not(:disabled)[b-vtj2why5f2] {
        background: #22c55e !important;
        border-color: #22c55e !important;
        box-shadow: 0 0 0 3px rgba(34,197,94,0.30), 0 5px 22px rgba(26,122,74,0.55) !important;
        text-shadow: 0 0 16px rgba(34,197,94,0.70);
        transform: none;
    }

/* Table Action Buttons (Edit/Delete) */
.table-action-btn[b-vtj2why5f2] {
    width: 32px !important;
    height: 32px !important;
    padding: 0 !important;
    border-radius: 6px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    font-size: 14px !important;
    margin: 0 2px;
    background: transparent !important;
    border: 1px solid var(--btn-neutral-border) !important;
    color: var(--text-secondary) !important;
    transition: all 0.15s ease !important;
}

    .table-action-btn:hover[b-vtj2why5f2] {
        background: var(--btn-neutral-hover) !important;
        border-color: var(--panel-border-strong) !important;
        color: var(--iac-navy) !important;
        transform: none;
        box-shadow: 0 2px 6px rgba(0,0,0,0.1);
    }

    .table-action-btn.delete-btn:hover[b-vtj2why5f2] {
        background: var(--btn-danger-bg) !important;
        border-color: var(--btn-danger-border) !important;
        color: var(--btn-danger-text) !important;
    }

:root[data-bs-theme="dark"] .table-action-btn[b-vtj2why5f2] {
    color: rgba(255,255,255,0.65);
    border-color: rgba(255,255,255,0.15);
}

    :root[data-bs-theme="dark"] .table-action-btn:hover[b-vtj2why5f2] {
        background: rgba(255,255,255,0.1);
        color: rgba(255,255,255,0.95);
    }

    :root[data-bs-theme="dark"] .table-action-btn.delete-btn:hover[b-vtj2why5f2] {
        background: rgba(239,68,68,0.2);
        color: #f87171;
    }

/* ─────────────────────────────────────────────
   10. ORDER ACTIONS — sticky footer bar
   ───────────────────────────────────────────── */
.order-actions-wrap[b-vtj2why5f2] {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 200;
    background: var(--page-bg);
    border-top: 1px solid var(--divider-strong);
    padding: 14px 24px 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
}

:root[data-bs-theme="dark"] .order-actions-wrap[b-vtj2why5f2],
[data-theme="dark"] .order-actions-wrap[b-vtj2why5f2] {
    background: #0b0f17;
    border-top-color: rgba(255,255,255,0.09);
}

/* The footer bar itself is .win-footer-bar defined in section 3 above */

.btn-group-solid[b-vtj2why5f2] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    max-width: 900px;
}

/* Remove old gold divider */
.order-actions-wrap[b-vtj2why5f2]::before {
    display: none;
}

/* ─────────────────────────────────────────────
   11. IAC OFFCANVAS — stretches to page bottom
   ───────────────────────────────────────────── */
.iac-offcanvas[b-vtj2why5f2] {
    font-family: 'din-2014', 'DIN Pro', 'DM Sans', sans-serif !important;
    width: 420px !important;
    background: var(--iac-surface) !important;
    border-left: 1px solid var(--iac-border) !important;
    box-shadow: var(--iac-shadow) !important;
    /* Stretch to bottom, leave footer gap */
    top: 0 !important;
    bottom: var(--iac-footer-height, 20px) !important;
    height: auto !important;
    display: flex !important;
    flex-direction: column !important;
    transition: background 0.3s, border-color 0.3s !important;
}

    .iac-offcanvas[b-vtj2why5f2]::before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        height: 2px;
        background: linear-gradient(90deg, transparent, var(--iac-accent), transparent);
        opacity: 0.70;
        pointer-events: none;
        z-index: 1;
    }

.iac-offcanvas__header[b-vtj2why5f2] {
    padding: 22px 24px 18px !important;
    border-bottom: 1px solid var(--iac-border) !important;
    background: var(--iac-surface) !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
}

.offcanvas-title[b-vtj2why5f2] {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: var(--iac-text-primary) !important;
    letter-spacing: 0.02em;
    line-height: 1.2;
}

.btn-close[b-vtj2why5f2] {
    background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23002855'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat !important;
    opacity: 0.7;
    transition: all 0.15s ease;
}

    .btn-close:hover[b-vtj2why5f2] {
        background-color: var(--iac-close-hover) !important;
        border-radius: 8px;
        opacity: 1;
    }

:root[data-bs-theme="dark"] .btn-close[b-vtj2why5f2] {
    background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat !important;
}

.iac-offcanvas__body[b-vtj2why5f2] {
    padding: 22px 24px !important;
    background: var(--iac-surface) !important;
    overflow-y: auto;
    flex: 1 1 auto;
    scrollbar-width: thin;
    scrollbar-color: var(--iac-scrollbar) transparent;
}

.required-note[b-vtj2why5f2] {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 11px;
    color: var(--iac-text-muted);
    padding: 8px 12px;
    margin-bottom: 18px;
    background: var(--iac-req-note-bg);
    border: 1px solid var(--iac-border);
    border-radius: 8px;
}

/* Offcanvas form controls are handled by .iac-offcanvas__input rules below */

/* ─────────────────────────────────────────────
   12. MODAL STYLES
   Modal background, header, body, footer, and backdrop
   are fully defined in site.css — no overrides needed here.
   Only the .btn-close icons are scoped to Windows.
   ───────────────────────────────────────────── */
.modal-header .btn-close[b-vtj2why5f2] {
    background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23002855'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat !important;
    opacity: 0.7;
}

:root[data-bs-theme="dark"] .modal-header .btn-close[b-vtj2why5f2] {
    background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23ffffff'%3e%3cpath d='M.293.293a1 1 0 011.414 0L8 6.586 14.293.293a1 1 0 111.414 1.414L9.414 8l6.293 6.293a1 1 0 01-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 01-1.414-1.414L6.586 8 .293 1.707a1 1 0 010-1.414z'/%3e%3c/svg%3e") center/1em auto no-repeat !important;
}

/* ─────────────────────────────────────────────
   12b. NQ INLINE MODAL SYSTEM
   (matches Doors.razor nq-overlay / nq-card pattern)
   ───────────────────────────────────────────── */
.nq-overlay[b-vtj2why5f2] {
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(0,0,0,0.55);
    z-index: 1055;
    padding: 24px;
}

/* Light mode backdrop */
:root[data-bs-theme="light"] .nq-overlay[b-vtj2why5f2],
[data-theme="light"] .nq-overlay[b-vtj2why5f2] {
    background: rgba(0,0,0,0.45);
}

/* Dark mode backdrop — deeper */
:root[data-bs-theme="dark"] .nq-overlay[b-vtj2why5f2],
[data-theme="dark"] .nq-overlay[b-vtj2why5f2] {
    background: rgba(0,0,0,0.72);
}

.nq-overlay.nq-intent-danger .nq-card[b-vtj2why5f2] {
    border-color: rgba(220,38,38,0.30);
    box-shadow: 0 24px 72px rgba(220,38,38,0.22), 0 0 0 1px rgba(220,38,38,0.14);
}

/* ── Card shell ─────────────────────────────── */
.nq-card[b-vtj2why5f2] {
    background: #ffffff;
    border: 1px solid rgba(0,40,85,0.12);
    border-radius: 16px;
    box-shadow: 0 20px 60px rgba(0,40,85,0.18);
    width: 100%;
    max-width: 440px;
    padding: 0;
    overflow: hidden;
    animation: nq-card-in-b-vtj2why5f2 0.18s cubic-bezier(0.2, 0, 0, 1) both;
}

/* DARK MODE — card shell */
:root[data-bs-theme="dark"] .nq-card[b-vtj2why5f2],
[data-theme="dark"] .nq-card[b-vtj2why5f2] {
    background: #1a1f2e !important;
    border-color: rgba(255,255,255,0.10) !important;
    box-shadow: 0 32px 80px rgba(0,0,0,0.65), 0 0 0 1px rgba(255,255,255,0.06) !important;
}

@keyframes nq-card-in-b-vtj2why5f2 {
    from {
        opacity: 0;
        transform: scale(0.95) translateY(8px);
    }

    to {
        opacity: 1;
        transform: scale(1) translateY(0);
    }
}

/* ── Header ─────────────────────────────────── */
.nq-card__header[b-vtj2why5f2] {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 20px 22px 16px;
    border-bottom: 1px solid rgba(0,40,85,0.10);
    background: rgba(0,40,85,0.02);
}

:root[data-bs-theme="dark"] .nq-card__header[b-vtj2why5f2],
[data-theme="dark"] .nq-card__header[b-vtj2why5f2] {
    background: rgba(255,255,255,0.03) !important;
    border-bottom-color: rgba(255,255,255,0.08) !important;
}

/* ── Icon ───────────────────────────────────── */
.nq-card__icon[b-vtj2why5f2] {
    font-size: 22px;
    line-height: 1;
    color: #b45309;
    flex-shrink: 0;
    margin-top: 1px;
}

:root[data-bs-theme="dark"] .nq-card__icon[b-vtj2why5f2],
[data-theme="dark"] .nq-card__icon[b-vtj2why5f2] {
    color: #F1B828 !important;
}

.nq-overlay.nq-intent-danger .nq-card__icon[b-vtj2why5f2] {
    color: #b91c1c;
}

:root[data-bs-theme="dark"] .nq-overlay.nq-intent-danger .nq-card__icon[b-vtj2why5f2],
[data-theme="dark"] .nq-overlay.nq-intent-danger .nq-card__icon[b-vtj2why5f2] {
    color: #f87171 !important;
}

/* ── Title ──────────────────────────────────── */
.nq-card__title[b-vtj2why5f2] {
    font-size: 15px;
    font-weight: 800;
    letter-spacing: 0.01em;
    color: #0d1f3c;
    line-height: 1.2;
    margin-bottom: 2px;
}

:root[data-bs-theme="dark"] .nq-card__title[b-vtj2why5f2],
[data-theme="dark"] .nq-card__title[b-vtj2why5f2] {
    color: rgba(255,255,255,0.94) !important;
}

/* ── Subtitle ───────────────────────────────── */
.nq-card__subtitle[b-vtj2why5f2] {
    font-size: 11px;
    font-weight: 500;
    color: rgba(13,31,60,0.48);
    letter-spacing: 0.03em;
}

:root[data-bs-theme="dark"] .nq-card__subtitle[b-vtj2why5f2],
[data-theme="dark"] .nq-card__subtitle[b-vtj2why5f2] {
    color: rgba(255,255,255,0.50) !important;
}

/* ── Body ───────────────────────────────────── */
.nq-card__body[b-vtj2why5f2] {
    padding: 18px 22px;
    font-size: 13px;
    line-height: 1.55;
    color: #0d1f3c;
    background: #ffffff;
}

:root[data-bs-theme="dark"] .nq-card__body[b-vtj2why5f2],
[data-theme="dark"] .nq-card__body[b-vtj2why5f2] {
    background: #1a1f2e !important;
    color: rgba(255,255,255,0.88) !important;
}

.nq-card__body p[b-vtj2why5f2] {
    margin-bottom: 10px;
}

    .nq-card__body p:last-child[b-vtj2why5f2] {
        margin-bottom: 0;
    }

.nq-card__body strong[b-vtj2why5f2] {
    font-weight: 700;
}

:root[data-bs-theme="dark"] .nq-card__body strong[b-vtj2why5f2],
[data-theme="dark"] .nq-card__body strong[b-vtj2why5f2] {
    color: rgba(255,255,255,0.98) !important;
}

/* ── Footer ─────────────────────────────────── */
.nq-card__footer[b-vtj2why5f2] {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    padding: 14px 22px;
    border-top: 1px solid rgba(0,40,85,0.10);
    background: rgba(0,40,85,0.02);
}

:root[data-bs-theme="dark"] .nq-card__footer[b-vtj2why5f2],
[data-theme="dark"] .nq-card__footer[b-vtj2why5f2] {
    background: rgba(255,255,255,0.02) !important;
    border-top-color: rgba(255,255,255,0.08) !important;
}

/* ── NQ Buttons ─────────────────────────────── */
.nq-btn[b-vtj2why5f2] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    font-family: 'din-2014', 'DIN Pro', 'DM Sans', sans-serif !important;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.03em;
    padding: 9px 20px;
    border-radius: 9px;
    border: 1px solid transparent;
    cursor: pointer;
    transition: all 0.15s ease;
    white-space: nowrap;
    line-height: 1;
}

/* OK button — solid navy (light) / glow amber (dark) */
.nq-btn--ok[b-vtj2why5f2] {
    background: #002855;
    border-color: #001e42;
    color: #ffffff;
    box-shadow: 0 2px 8px rgba(0,40,85,0.22);
}

    .nq-btn--ok:hover[b-vtj2why5f2] {
        background: #001e42;
        box-shadow: 0 4px 14px rgba(0,40,85,0.32);
        transform: translateY(-1px);
    }

:root[data-bs-theme="dark"] .nq-btn--ok[b-vtj2why5f2],
[data-theme="dark"] .nq-btn--ok[b-vtj2why5f2] {
    background: rgba(241,184,40,0.14) !important;
    border-color: rgba(241,184,40,0.36) !important;
    color: rgba(241,184,40,0.96) !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.28), 0 0 14px rgba(241,184,40,0.15) !important;
    text-shadow: 0 0 10px rgba(241,184,40,0.40);
}

    :root[data-bs-theme="dark"] .nq-btn--ok:hover[b-vtj2why5f2],
    [data-theme="dark"] .nq-btn--ok:hover[b-vtj2why5f2] {
        background: rgba(241,184,40,0.24) !important;
        border-color: rgba(241,184,40,0.55) !important;
        color: #fff !important;
        box-shadow: 0 4px 18px rgba(0,0,0,0.35), 0 0 22px rgba(241,184,40,0.28) !important;
        text-shadow: 0 0 14px rgba(241,184,40,0.60);
        transform: translateY(-1px);
    }

/* Neutral button */
.nq-btn--neutral[b-vtj2why5f2] {
    background: rgba(0,40,85,0.07);
    border-color: rgba(0,40,85,0.14);
    color: #0d1f3c;
    box-shadow: 0 1px 4px rgba(0,40,85,0.08);
}

    .nq-btn--neutral:hover[b-vtj2why5f2] {
        background: rgba(0,40,85,0.12);
        transform: translateY(-1px);
        box-shadow: 0 3px 10px rgba(0,40,85,0.14);
    }

:root[data-bs-theme="dark"] .nq-btn--neutral[b-vtj2why5f2],
[data-theme="dark"] .nq-btn--neutral[b-vtj2why5f2] {
    background: rgba(255,255,255,0.08) !important;
    border-color: rgba(255,255,255,0.15) !important;
    color: rgba(255,255,255,0.82) !important;
}

    :root[data-bs-theme="dark"] .nq-btn--neutral:hover[b-vtj2why5f2],
    [data-theme="dark"] .nq-btn--neutral:hover[b-vtj2why5f2] {
        background: rgba(255,255,255,0.14) !important;
        border-color: rgba(255,255,255,0.25) !important;
        color: #fff !important;
        box-shadow: 0 4px 14px rgba(0,0,0,0.30) !important;
    }

/* Danger button */
.nq-btn--danger[b-vtj2why5f2] {
    background: #b91c1c;
    border-color: #991b1b;
    color: #ffffff;
    box-shadow: 0 2px 8px rgba(185,28,28,0.28);
}

    .nq-btn--danger:hover[b-vtj2why5f2] {
        background: #991b1b;
        box-shadow: 0 4px 16px rgba(185,28,28,0.38);
        transform: translateY(-1px);
    }

:root[data-bs-theme="dark"] .nq-btn--danger[b-vtj2why5f2],
[data-theme="dark"] .nq-btn--danger[b-vtj2why5f2] {
    background: rgba(239,68,68,0.15) !important;
    border-color: rgba(239,68,68,0.34) !important;
    color: #f87171 !important;
    box-shadow: 0 2px 12px rgba(0,0,0,0.28), 0 0 14px rgba(239,68,68,0.15) !important;
    text-shadow: 0 0 10px rgba(239,68,68,0.35);
}

    :root[data-bs-theme="dark"] .nq-btn--danger:hover[b-vtj2why5f2],
    [data-theme="dark"] .nq-btn--danger:hover[b-vtj2why5f2] {
        background: rgba(239,68,68,0.25) !important;
        border-color: rgba(239,68,68,0.50) !important;
        color: #fca5a5 !important;
        box-shadow: 0 4px 18px rgba(239,68,68,0.30), 0 0 22px rgba(239,68,68,0.18) !important;
        transform: translateY(-1px);
    }

/* Small phone: bottom sheet */
@media (max-width: 575px) {
    .nq-overlay[b-vtj2why5f2] {
        align-items: flex-end;
        padding: 0;
    }

    .nq-card[b-vtj2why5f2] {
        max-width: 100%;
        border-radius: 18px 18px 0 0;
    }

    .nq-card__footer[b-vtj2why5f2] {
        flex-direction: column;
    }

        .nq-card__footer .nq-btn[b-vtj2why5f2] {
            width: 100%;
            justify-content: center;
        }
}

/* ─────────────────────────────────────────────
   13. TEXT UTILITIES
   ───────────────────────────────────────────── */
.text-muted[b-vtj2why5f2] {
    color: var(--text-muted) !important;
}

.form-text[b-vtj2why5f2] {
    color: var(--text-muted) !important;
    font-size: 11px;
}

/* ─────────────────────────────────────────────
   14. PDF CONTENT
   ───────────────────────────────────────────── */
#pdfContent[b-vtj2why5f2] {
    --page-w: 1584px;
    --page-h: 1110px;
    --rail-w: 248px;
    --edge: 18px;
    --hdr-h: 156px;
    --navy: #002855;
    --navy-2: #0b3b6f;
    --gold: #F1B828;
    --paper: #ffffff;
    --line: #d7dee7;
    --ink: #002855;
    --text: #1f2933;
    --muted: #5b6773;
    position: relative;
    box-sizing: border-box;
    width: var(--page-w);
    height: var(--page-h);
    overflow: hidden;
    color: var(--text);
    background: var(--paper);
    display: grid;
    grid-template-rows: var(--hdr-h) 1fr auto auto;
    row-gap: 8px;
    font-family: 'din-2014', 'DIN Pro', 'DM Sans', sans-serif !important;
}

    #pdfContent[b-vtj2why5f2],
    #pdfContent *[b-vtj2why5f2] {
        box-sizing: border-box;
        page-break-inside: avoid;
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact;
        font-family: inherit !important;
    }

        #pdfContent .hdr[b-vtj2why5f2] {
            grid-row: 1;
            height: var(--hdr-h);
            margin: var(--edge) var(--edge) 0 var(--edge);
            padding: 20px 22px 16px 22px;
            display: flex;
            align-items: center;
            color: #ffffff;
            border-bottom: 4px solid var(--gold);
            background-color: var(--navy);
            background-image: linear-gradient(90deg, rgba(255,255,255,0.04) 0%, rgba(255,255,255,0) 48%, rgba(241,184,40,0.10) 100%), url('/img/iac-swirl.png');
            background-repeat: no-repeat, no-repeat;
            background-position: center, top left;
            background-size: cover, 100% auto;
        }

            #pdfContent .hdr h3[b-vtj2why5f2] {
                margin: 0;
                color: #fff;
                font-size: 40px;
                line-height: 1;
                font-weight: 900;
                text-transform: uppercase;
            }

        #pdfContent .stage[b-vtj2why5f2] {
            grid-row: 2;
            display: grid;
            grid-template-columns: minmax(0, 1fr) var(--rail-w);
            column-gap: 14px;
            padding: 4px var(--edge) 0 var(--edge);
            min-height: 0;
            align-items: stretch;
        }

        #pdfContent table.grid[b-vtj2why5f2] {
            width: 100%;
            border-collapse: collapse;
            font-size: 10.5px;
        }

        #pdfContent .grid thead[b-vtj2why5f2] {
            background: linear-gradient(180deg,#e8edf3 0%,#dde5ee 100%);
            color: var(--ink);
        }

        #pdfContent .grid th[b-vtj2why5f2], #pdfContent .grid td[b-vtj2why5f2] {
            padding: 6px;
            text-align: center;
            vertical-align: middle;
            border: 1px solid var(--line);
        }

        #pdfContent .rail[b-vtj2why5f2] {
            background: linear-gradient(180deg,#f8fafc 0%,#f2f5f9 100%);
            border: 1px solid var(--line);
            border-top: 3px solid var(--gold);
            padding: 10px 12px;
        }

            #pdfContent .rail h3[b-vtj2why5f2] {
                margin: 0 0 8px 0;
                padding-bottom: 6px;
                color: var(--ink);
                font-size: 13px;
                font-weight: 900;
                text-transform: uppercase;
                border-bottom: 1px solid var(--line);
            }

        #pdfContent .sumlist[b-vtj2why5f2] {
            list-style: none;
            margin: 0;
            padding: 0;
            font-size: 12.25px;
            line-height: 1.45;
        }

            #pdfContent .sumlist li[b-vtj2why5f2] {
                display: flex;
                gap: 7px;
                margin: 0 0 4px 0;
            }

                #pdfContent .sumlist li[b-vtj2why5f2]::before {
                    content: "•";
                    color: var(--gold);
                    font-weight: 900;
                    width: 12px;
                    text-align: center;
                }

        #pdfContent .footnote[b-vtj2why5f2] {
            grid-row: 3;
            display: flex;
            align-items: center;
            gap: 8px;
            margin: 0 var(--edge);
            font-size: 9px;
            color: var(--muted);
        }

            #pdfContent .footnote img.footlogo[b-vtj2why5f2] {
                height: 58px;
                width: auto;
            }

        #pdfContent .footerbar[b-vtj2why5f2] {
            grid-row: 4;
            height: 30px;
            margin: 0 var(--edge) var(--edge) var(--edge);
            background: linear-gradient(90deg,var(--navy) 0%,var(--navy-2) 78%,var(--gold) 100%);
        }

/* ─────────────────────────────────────────────
   15. RESPONSIVE — mobile first, all the way to phone
   ───────────────────────────────────────────── */

/* ── Tablet: 768–991px ── */
@media (max-width: 991.98px) {
    .win-page-body[b-vtj2why5f2] {
        padding: 16px;
    }

    .win-config-grid[b-vtj2why5f2] {
        grid-template-columns: 1fr;
    }

    .mpl-page-header[b-vtj2why5f2] {
        padding: 0 16px;
    }

    .border-end[b-vtj2why5f2] {
        border-right: none !important;
        border-bottom: 1px solid var(--divider-strong) !important;
        padding-bottom: 1rem;
        margin-bottom: 1rem;
    }

    .win-footer-bar[b-vtj2why5f2] {
        padding: 10px 16px;
    }

    .win-summary-bar[b-vtj2why5f2] {
        flex-direction: column;
        align-items: flex-start;
        gap: 10px;
    }

    .win-summary-bar__prices[b-vtj2why5f2] {
        margin-left: 0;
        width: 100%;
        justify-content: flex-start;
    }
}

/* ── Mobile: ≤767px ── */
@media (max-width: 767.98px) {
    .win-page-body[b-vtj2why5f2] {
        padding: 12px;
        gap: 12px;
    }

    .mpl-page-header[b-vtj2why5f2] {
        padding: 0 12px;
        min-height: 48px;
        flex-wrap: nowrap;
        gap: 8px;
    }

    .mpl-page-header__title-row[b-vtj2why5f2] {
        height: 52px;
        gap: 8px;
    }

    .mpl-page-header__title[b-vtj2why5f2] {
        font-size: 16px !important;
    }

    .win-panel__body[b-vtj2why5f2] {
        padding: 14px;
    }

    .win-panel__sub[b-vtj2why5f2] {
        display: none;
    }

    .iac-offcanvas[b-vtj2why5f2] {
        width: 100vw !important;
        bottom: 0 !important;
    }

    .section-card .card-body[b-vtj2why5f2],
    .windows-main-card__body[b-vtj2why5f2],
    .windows-lines-card__body[b-vtj2why5f2] {
        padding: 14px !important;
    }

    /* Summary bar on mobile */
    .win-summary-bar[b-vtj2why5f2] {
        padding: 12px 14px;
        border-radius: 8px;
    }

    .win-summary-bar__badge[b-vtj2why5f2] {
        font-size: 9px;
        padding: 4px 10px;
    }

    .win-summary-bar__meta[b-vtj2why5f2] {
        gap: 12px;
    }

    .win-summary-bar__item-val[b-vtj2why5f2] {
        font-size: 12px;
    }

    .win-price-block__val[b-vtj2why5f2] {
        font-size: 15px;
    }

    /* Footer bar on mobile: full width stacked buttons */
    .win-footer-bar[b-vtj2why5f2] {
        padding: 10px 12px;
        gap: 8px;
    }

    .btn-group-solid[b-vtj2why5f2] {
        width: 100%;
        flex-direction: column;
        gap: 8px;
    }

        .btn-group-solid .btn[b-vtj2why5f2],
        .btn-group-solid .dropdown[b-vtj2why5f2] {
            width: 100%;
        }

        .btn-group-solid .btn[b-vtj2why5f2] {
            justify-content: center;
            height: 42px;
            font-size: 12px;
        }

        .btn-group-solid .export-menu-toggle[b-vtj2why5f2],
        .btn-group-solid .dropdown .btn[b-vtj2why5f2] {
            width: 100%;
            justify-content: center;
        }

    .order-table-wrap[b-vtj2why5f2] {
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
        margin: 0 -4px;
        padding: 0 4px;
    }

    .order-actions-wrap[b-vtj2why5f2] {
        padding: 10px 12px 16px;
        justify-content: center;
    }

    /* Sum pills shrink */
    .sum-pill[b-vtj2why5f2] {
        height: 30px !important;
        font-size: 12px !important;
        padding: 0 12px 0 10px !important;
    }
}

/* ── Small phone: ≤575px ── */
@media (max-width: 575px) {
    .win-page-body[b-vtj2why5f2] {
        padding: 10px;
        gap: 10px;
    }

    .mpl-page-header[b-vtj2why5f2] {
        padding: 0 10px;
    }

    .mpl-page-header__title[b-vtj2why5f2] {
        font-size: 14px !important;
    }

    .win-panel__body[b-vtj2why5f2] {
        padding: 12px 10px;
    }

    .section-card .card-body[b-vtj2why5f2],
    .windows-main-card__body[b-vtj2why5f2],
    .windows-lines-card__body[b-vtj2why5f2] {
        padding: 12px 10px !important;
    }

    .form-label[b-vtj2why5f2] {
        font-size: 9px !important;
        padding: 2px 6px !important;
    }

    .form-control[b-vtj2why5f2],
    .form-select[b-vtj2why5f2] {
        font-size: 12px !important;
        padding: 7px 10px !important;
        border-radius: 7px !important;
    }

    /* Quote lines table: card layout on phone */
    .order-table[b-vtj2why5f2],
    .windows-order-table[b-vtj2why5f2],
    .order-table thead[b-vtj2why5f2],
    .order-table tbody[b-vtj2why5f2],
    .order-table th[b-vtj2why5f2],
    .order-table td[b-vtj2why5f2],
    .order-table tr[b-vtj2why5f2],
    .windows-order-table thead[b-vtj2why5f2],
    .windows-order-table tbody[b-vtj2why5f2],
    .windows-order-table th[b-vtj2why5f2],
    .windows-order-table td[b-vtj2why5f2],
    .windows-order-table tr[b-vtj2why5f2] {
        display: block;
        white-space: normal;
    }

        .order-table thead[b-vtj2why5f2],
        .windows-order-table thead[b-vtj2why5f2] {
            display: none;
        }

        .order-table tbody tr[b-vtj2why5f2],
        .windows-order-table tbody tr[b-vtj2why5f2] {
            background: var(--panel-bg);
            border: 1px solid var(--panel-border-strong);
            border-radius: 10px;
            margin-bottom: 10px;
            padding: 12px 12px 8px;
            overflow: hidden;
        }

    :root[data-bs-theme="dark"] .order-table tbody tr[b-vtj2why5f2],
    :root[data-bs-theme="dark"] .windows-order-table tbody tr[b-vtj2why5f2] {
        background: #1a2236;
        border-color: rgba(255,255,255,0.10);
    }

    .order-table tbody td[b-vtj2why5f2],
    .windows-order-table tbody td[b-vtj2why5f2] {
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 5px 0 !important;
        border: none !important;
        border-bottom: 1px solid var(--divider) !important;
        font-size: 12px;
        gap: 10px;
        background: transparent !important;
    }

        .order-table tbody td:last-child[b-vtj2why5f2],
        .windows-order-table tbody td:last-child[b-vtj2why5f2] {
            border-bottom: none !important;
            padding-top: 10px !important;
            justify-content: flex-start;
            gap: 8px;
            flex-wrap: wrap;
        }

        .order-table tbody td[b-vtj2why5f2]::before,
        .windows-order-table tbody td[b-vtj2why5f2]::before {
            content: attr(data-label);
            font-size: 10px;
            font-weight: 700;
            letter-spacing: 0.06em;
            text-transform: uppercase;
            color: var(--text-muted);
            flex-shrink: 0;
            min-width: 80px;
        }

        .order-table tbody td:last-child[b-vtj2why5f2]::before,
        .windows-order-table tbody td:last-child[b-vtj2why5f2]::before {
            content: "Actions";
        }

        .order-table tbody td:last-child .btn[b-vtj2why5f2],
        .windows-order-table tbody td:last-child .btn[b-vtj2why5f2] {
            flex: 1 1 auto;
            min-width: 70px;
            max-width: 110px;
            min-height: 36px;
            font-size: 12px !important;
            padding: 6px 10px !important;
        }

    /* Summary row */
    .order-summary-row td[b-vtj2why5f2],
    .order-summary-row th[b-vtj2why5f2] {
        display: block;
        width: 100% !important;
        padding: 8px 0 !important;
        border-top: 2px solid var(--divider-strong) !important;
    }

    .order-summary-banner[b-vtj2why5f2] {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
        padding: 10px 12px;
    }

    .win-summary-bar__prices[b-vtj2why5f2] {
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
    }

    .win-price-divider[b-vtj2why5f2] {
        display: none;
    }

    /* Footer buttons full width on small phones */
    .btn-group-solid .btn[b-vtj2why5f2] {
        height: 44px;
        font-size: 13px;
    }

    /* modal bottom sheet */
    .nq-overlay[b-vtj2why5f2] {
        align-items: flex-end;
        padding: 0;
    }

    .nq-card[b-vtj2why5f2] {
        max-width: 100%;
        border-radius: 18px 18px 0 0;
    }

    .nq-card__footer[b-vtj2why5f2] {
        flex-direction: column;
    }

        .nq-card__footer .nq-btn[b-vtj2why5f2] {
            width: 100%;
            justify-content: center;
        }

    .modal-dialog[b-vtj2why5f2] {
        margin: 0 !important;
        max-width: 100vw !important;
        width: 100vw !important;
        min-height: 100dvh !important;
        align-items: flex-end !important;
    }

    .modal-content[b-vtj2why5f2] {
        border-radius: 18px 18px 0 0 !important;
        min-height: 60dvh;
        max-height: 92dvh;
        display: flex;
        flex-direction: column;
    }
}

/* ─────────────────────────────────────────────
   16. TOGGLE STRIP (for future use)
   ───────────────────────────────────────────── */
.toggle-strip[b-vtj2why5f2] {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap;
    justify-content: center;
    gap: 16px 24px;
    align-items: center;
    padding: 12px 0 8px;
    border-top: 1px solid var(--divider);
    border-bottom: 1px solid var(--divider);
    margin: 12px 0;
}

    .toggle-strip > [class*="col"][b-vtj2why5f2] {
        width: auto !important;
        flex: 0 0 auto !important;
        max-width: none !important;
        padding: 0 !important;
    }

    .toggle-strip .form-check.form-switch[b-vtj2why5f2],
    .toggle-strip .d-inline-flex[b-vtj2why5f2] {
        white-space: nowrap;
    }

/* Form switch styling */
.form-check-input[type="checkbox"].form-check-input[b-vtj2why5f2] {
    width: 36px;
    height: 20px;
    border-radius: 20px;
    background-color: var(--input-bg);
    border: 1px solid var(--input-border);
    cursor: pointer;
    transition: background-color 0.2s, border-color 0.2s;
    flex-shrink: 0;
}

/* Light mode switch */
:root[data-bs-theme="light"] .form-switch .form-check-input[b-vtj2why5f2] {
    background-color: #dce2ea !important;
    border-color: rgba(0,40,85,0.25) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(0,40,85,0.55)'/%3E%3C/svg%3E") !important;
}

    :root[data-bs-theme="light"] .form-switch .form-check-input:checked[b-vtj2why5f2] {
        background-color: #002855 !important;
        border-color: #002855 !important;
        background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(255,255,255,0.97)'/%3E%3C/svg%3E") !important;
        box-shadow: 0 0 0 3px rgba(0,40,85,0.14) !important;
    }

/* Dark mode switch */
:root[data-bs-theme="dark"] .form-switch .form-check-input:not(:checked)[b-vtj2why5f2] {
    background-color: rgba(255,255,255,0.18) !important;
    border-color: rgba(255,255,255,0.28) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(255,255,255,0.75)'/%3E%3C/svg%3E") !important;
}

:root[data-bs-theme="dark"] .form-switch .form-check-input:checked[b-vtj2why5f2] {
    background-color: #F1B828 !important;
    border-color: #F1B828 !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3E%3Ccircle r='3' fill='rgba(0,0,0,0.75)'/%3E%3C/svg%3E") !important;
    box-shadow: 0 0 0 3px rgba(241,184,40,0.24), 0 0 12px rgba(241,184,40,0.28) !important;
}


.form-check-label[b-vtj2why5f2] {
    font-size: 12px !important;
    font-weight: 700 !important;
    letter-spacing: 0.03em !important;
    color: #001e42 !important;
    cursor: pointer !important;
    padding-left: 10px !important;
}

:root[data-bs-theme="dark"] .form-check-label[b-vtj2why5f2],
[data-theme="dark"] .form-check-label[b-vtj2why5f2] {
    color: rgba(255,255,255,0.88) !important;
}

/* =============================================================
   PATCH — Not Pricebook Bar, Warning Button, Sum-Pill Labels,
           Button polish (light + dark)
   ============================================================= */

/* ── Not-Pricebook toggle bar ─────────────────────────────── */
.not-pricebook-bar[b-vtj2why5f2] {
    padding: 8px 12px;
    border-radius: 8px;
    background: rgba(241,184,40,0.07);
    border: 1px solid rgba(241,184,40,0.22);
    transition: background 0.2s, border-color 0.2s;
}

[data-bs-theme="dark"] .not-pricebook-bar[b-vtj2why5f2] {
    background: rgba(241,184,40,0.08);
    border-color: rgba(241,184,40,0.24);
}

.not-pricebook-bar .form-check-label[b-vtj2why5f2] {
    color: #5c3d00 !important;
}

[data-bs-theme="dark"] .not-pricebook-bar .form-check-label[b-vtj2why5f2] {
    color: rgba(241,184,40,0.90) !important;
}

/* ── WARNING / RFQ button ─────────────────────────────────── */
.btn-warning-solid[b-vtj2why5f2] {
    background: #d97706 !important;
    border-color: rgba(217,119,6,0.40) !important;
    color: #ffffff !important;
    box-shadow: 0 3px 14px rgba(217,119,6,0.35) !important;
    font-weight: 800 !important;
    letter-spacing: 0.04em;
}

    .btn-warning-solid:hover:not(:disabled)[b-vtj2why5f2] {
        background: #b45309 !important;
        border-color: rgba(217,119,6,0.55) !important;
        color: #ffffff !important;
        box-shadow: 0 4px 14px rgba(217,119,6,0.38) !important;
        transform: none;
    }

[data-bs-theme="dark"] .btn-warning-solid[b-vtj2why5f2] {
    background: rgba(217,119,6,0.22) !important;
    border-color: rgba(217,119,6,0.44) !important;
    color: rgba(255,255,255,0.95) !important;
    box-shadow: 0 3px 16px rgba(0,0,0,0.32) !important;
    text-shadow: 0 0 10px rgba(255,180,40,0.40);
}

    [data-bs-theme="dark"] .btn-warning-solid:hover:not(:disabled)[b-vtj2why5f2] {
        background: rgba(217,119,6,0.34) !important;
        border-color: rgba(217,119,6,0.60) !important;
        color: #ffffff !important;
        box-shadow: 0 0 0 1px rgba(217,119,6,0.45), 0 5px 24px rgba(217,119,6,0.40) !important;
        text-shadow: 0 0 16px rgba(255,180,40,0.60);
        transform: none;
    }

/* ── Primary (Save Quote) — light & dark ─────────────────── */
.btn-primary-solid[b-vtj2why5f2] {
    background: #002855 !important;
    border-color: rgba(241,184,40,0.35) !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(0,40,85,0.22) !important;
    font-weight: 800 !important;
}

    .btn-primary-solid:hover:not(:disabled)[b-vtj2why5f2] {
        background: #001e42 !important;
        border-color: rgba(241,184,40,0.55) !important;
        color: #ffffff !important;
        box-shadow: 0 4px 14px rgba(0,40,85,0.32) !important;
        transform: none;
    }

[data-bs-theme="dark"] .btn-primary-solid[b-vtj2why5f2] {
    background: rgba(241,184,40,0.14) !important;
    border-color: rgba(241,184,40,0.36) !important;
    color: rgba(241,184,40,0.95) !important;
    box-shadow: 0 3px 16px rgba(0,0,0,0.34) !important;
    text-shadow: 0 0 10px rgba(255,180,40,0.40);
}

    [data-bs-theme="dark"] .btn-primary-solid:hover:not(:disabled)[b-vtj2why5f2] {
        background: rgba(241,184,40,0.22) !important;
        border-color: rgba(241,184,40,0.55) !important;
        color: #ffffff !important;
        box-shadow: 0 4px 18px rgba(0,0,0,0.35), 0 0 22px rgba(241,184,40,0.28) !important;
        text-shadow: 0 0 16px rgba(255,180,40,0.60);
        transform: none;
    }

/* ── Success (Order Now) — light & dark ──────────────────── */
.btn.btn-solid.btn-success-solid[b-vtj2why5f2],
.btn-success-solid[b-vtj2why5f2] {
    background: #1a7a4a !important;
    border-color: transparent !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(26,122,74,0.28) !important;
    font-weight: 800 !important;
}

    .btn.btn-solid.btn-success-solid:hover:not(:disabled)[b-vtj2why5f2],
    .btn-success-solid:hover:not(:disabled)[b-vtj2why5f2] {
        background: #155f39 !important;
        box-shadow: 0 4px 14px rgba(26,122,74,0.38) !important;
        transform: none;
        color: #ffffff !important;
    }

[data-bs-theme="dark"] .btn.btn-solid.btn-success-solid[b-vtj2why5f2],
[data-bs-theme="dark"] .btn-success-solid[b-vtj2why5f2] {
    background: rgba(26,122,74,0.22) !important;
    border-color: rgba(26,122,74,0.45) !important;
    color: #6ee7a8 !important;
    box-shadow: 0 0 0 1px rgba(26,122,74,0.35), 0 3px 18px rgba(26,122,74,0.38) !important;
}

    [data-bs-theme="dark"] .btn.btn-solid.btn-success-solid:hover:not(:disabled)[b-vtj2why5f2],
    [data-bs-theme="dark"] .btn-success-solid:hover:not(:disabled)[b-vtj2why5f2] {
        background: rgba(26,122,74,0.34) !important;
        border-color: rgba(26,122,74,0.65) !important;
        color: #ffffff !important;
        box-shadow: 0 0 0 1px rgba(26,122,74,0.50), 0 5px 24px rgba(26,122,74,0.52) !important;
        transform: none !important;
    }

/* ── SUM PILLS — read-only label style (like Doors.razor) ─── */
.sum-pill[b-vtj2why5f2],
.sum-pill.sum-pill--yellow[b-vtj2why5f2],
.sum-pill.sum-pill--green[b-vtj2why5f2],
.sum-pill--yellow[b-vtj2why5f2],
.sum-pill--green[b-vtj2why5f2] {
    height: auto !important;
    padding: 2px 9px !important;
    border-radius: 4px !important;
    font-size: 11.5px !important;
    font-weight: 700 !important;
    letter-spacing: 0.03em !important;
    white-space: nowrap !important;
    cursor: default !important;
    pointer-events: none !important;
    transition: none !important;
    box-shadow: none !important;
    transform: none !important;
}

/* LIGHT — List Price (yellow): understated gold label */
:root[data-bs-theme="light"] .sum-pill--yellow[b-vtj2why5f2],
[data-theme="light"] .sum-pill--yellow[b-vtj2why5f2],
.sum-pill--yellow[b-vtj2why5f2] {
    background: rgba(241,184,40,0.13) !important;
    color: #5c3d00 !important;
    border: 1px solid rgba(241,184,40,0.32) !important;
    box-shadow: none !important;
}

/* LIGHT — Rep Price (green): understated green label */
:root[data-bs-theme="light"] .sum-pill--green[b-vtj2why5f2],
[data-theme="light"] .sum-pill--green[b-vtj2why5f2],
.sum-pill--green[b-vtj2why5f2] {
    background: rgba(26,122,74,0.09) !important;
    color: #0f4a2b !important;
    border: 1px solid rgba(26,122,74,0.20) !important;
    box-shadow: none !important;
}

/* DARK — List Price */
:root[data-bs-theme="dark"] .sum-pill--yellow[b-vtj2why5f2],
[data-theme="dark"] .sum-pill--yellow[b-vtj2why5f2] {
    background: rgba(241,184,40,0.09) !important;
    color: rgba(241,184,40,0.78) !important;
    border: 1px solid rgba(241,184,40,0.20) !important;
    box-shadow: none !important;
}

/* DARK — Rep Price */
:root[data-bs-theme="dark"] .sum-pill--green[b-vtj2why5f2],
[data-theme="dark"] .sum-pill--green[b-vtj2why5f2] {
    background: rgba(34,197,94,0.07) !important;
    color: rgba(74,222,128,0.80) !important;
    border: 1px solid rgba(34,197,94,0.16) !important;
    box-shadow: none !important;
}

/* Kill hover lift on pills (belt-and-suspenders) */
.sum-pill--yellow:hover[b-vtj2why5f2],
.sum-pill--green:hover[b-vtj2why5f2],
.sum-pill.sum-pill--yellow:hover[b-vtj2why5f2],
.sum-pill.sum-pill--green:hover[b-vtj2why5f2] {
    box-shadow: none !important;
    transform: none !important;
}

/* =============================================================
   FINAL PATCH — Offcanvas background, button glows
   ============================================================= */

/* ── 1. Offcanvas background — light AND dark ─────────────────
   Bootstrap's .offcanvas sets background-color via a variable
   that ignores our --iac-surface token. Override directly.    ── */
.offcanvas.iac-offcanvas[b-vtj2why5f2],
.offcanvas.offcanvas-end.iac-offcanvas[b-vtj2why5f2] {
    background-color: #ffffff !important;
    --bs-offcanvas-bg: #ffffff !important;
}

:root[data-bs-theme="dark"] .offcanvas.iac-offcanvas[b-vtj2why5f2],
:root[data-bs-theme="dark"] .offcanvas.offcanvas-end.iac-offcanvas[b-vtj2why5f2],
[data-bs-theme="dark"] .offcanvas.iac-offcanvas[b-vtj2why5f2],
[data-bs-theme="dark"] .offcanvas.offcanvas-end.iac-offcanvas[b-vtj2why5f2] {
    background-color: #1a2236 !important;
    --bs-offcanvas-bg: #1a2236 !important;
}

/* Also make the header and body match exactly */
.iac-offcanvas .offcanvas-header[b-vtj2why5f2],
.iac-offcanvas .iac-offcanvas__header[b-vtj2why5f2] {
    background-color: #ffffff !important;
}

:root[data-bs-theme="dark"] .iac-offcanvas .offcanvas-header[b-vtj2why5f2],
:root[data-bs-theme="dark"] .iac-offcanvas .iac-offcanvas__header[b-vtj2why5f2],
[data-bs-theme="dark"] .iac-offcanvas .offcanvas-header[b-vtj2why5f2],
[data-bs-theme="dark"] .iac-offcanvas .iac-offcanvas__header[b-vtj2why5f2] {
    background-color: #0e1520 !important;
    border-bottom-color: rgba(255,255,255,0.10) !important;
}

.iac-offcanvas .offcanvas-body[b-vtj2why5f2],
.iac-offcanvas .iac-offcanvas__body[b-vtj2why5f2] {
    background-color: #ffffff !important;
}

:root[data-bs-theme="dark"] .iac-offcanvas .offcanvas-body[b-vtj2why5f2],
:root[data-bs-theme="dark"] .iac-offcanvas .iac-offcanvas__body[b-vtj2why5f2],
[data-bs-theme="dark"] .iac-offcanvas .offcanvas-body[b-vtj2why5f2],
[data-bs-theme="dark"] .iac-offcanvas .iac-offcanvas__body[b-vtj2why5f2] {
    background-color: #1a2236 !important;
}

/* Offcanvas title and close button text color in dark */
:root[data-bs-theme="dark"] .iac-offcanvas .offcanvas-title[b-vtj2why5f2],
[data-bs-theme="dark"] .iac-offcanvas .offcanvas-title[b-vtj2why5f2] {
    color: rgba(255,255,255,0.92) !important;
}

/* ── 2. Export to PDF (btn-utility-solid) — rich glow ─────────
   Light mode: deep red with shadow glow
   Dark mode:  bright red halo glow matching success/primary    ── */
.btn.btn-solid.btn-utility-solid[b-vtj2why5f2],
.btn-utility-solid[b-vtj2why5f2] {
    background: #991b1b !important;
    border-color: rgba(153,27,27,0.50) !important;
    color: #ffffff !important;
    box-shadow: 0 3px 12px rgba(153,27,27,0.35), 0 1px 3px rgba(0,0,0,0.14) !important;
    font-weight: 800 !important;
}

    .btn.btn-solid.btn-utility-solid:hover:not(:disabled)[b-vtj2why5f2],
    .btn-utility-solid:hover:not(:disabled)[b-vtj2why5f2] {
        background: #7f1d1d !important;
        border-color: rgba(153,27,27,0.70) !important;
        color: #ffffff !important;
        box-shadow: 0 4px 14px rgba(153,27,27,0.38), 0 0 0 3px rgba(196,30,30,0.18) !important;
        transform: none;
    }

:root[data-bs-theme="dark"] .btn.btn-solid.btn-utility-solid[b-vtj2why5f2],
:root[data-bs-theme="dark"] .btn-utility-solid[b-vtj2why5f2],
[data-theme="dark"] .btn.btn-solid.btn-utility-solid[b-vtj2why5f2],
[data-theme="dark"] .btn-utility-solid[b-vtj2why5f2] {
    background: rgba(220,38,38,0.22) !important;
    border-color: rgba(239,68,68,0.45) !important;
    color: #fca5a5 !important;
    box-shadow: 0 0 0 1px rgba(239,68,68,0.35), 0 4px 18px rgba(220,38,38,0.50), 0 0 28px rgba(239,68,68,0.20) !important;
    text-shadow: 0 0 10px rgba(239,68,68,0.55);
}

    :root[data-bs-theme="dark"] .btn.btn-solid.btn-utility-solid:hover:not(:disabled)[b-vtj2why5f2],
    :root[data-bs-theme="dark"] .btn-utility-solid:hover:not(:disabled)[b-vtj2why5f2],
    [data-theme="dark"] .btn.btn-solid.btn-utility-solid:hover:not(:disabled)[b-vtj2why5f2],
    [data-theme="dark"] .btn-utility-solid:hover:not(:disabled)[b-vtj2why5f2] {
        background: rgba(220,38,38,0.34) !important;
        border-color: rgba(239,68,68,0.65) !important;
        color: #ffffff !important;
        box-shadow: 0 0 0 1px rgba(239,68,68,0.55), 0 5px 24px rgba(220,38,38,0.60), 0 0 36px rgba(239,68,68,0.30) !important;
        text-shadow: 0 0 16px rgba(239,68,68,0.70);
        transform: none;
    }

/* ── 3. Save Quote (btn-primary-solid) — IAC Navy, matches Doors ──────
   Light mode: solid deep navy with subtle amber ring
   Dark mode:  gold glass halo matching Doors.razor Save Job   ── */
.btn.btn-solid.btn-primary-solid[b-vtj2why5f2],
.btn-primary-solid[b-vtj2why5f2] {
    background: #002855 !important;
    border-color: rgba(241,184,40,0.35) !important;
    color: #ffffff !important;
    box-shadow: 0 2px 8px rgba(0,40,85,0.22) !important;
    font-weight: 800 !important;
}

    .btn.btn-solid.btn-primary-solid:hover:not(:disabled)[b-vtj2why5f2],
    .btn-primary-solid:hover:not(:disabled)[b-vtj2why5f2] {
        background: #001e42 !important;
        border-color: rgba(241,184,40,0.55) !important;
        color: #ffffff !important;
        box-shadow: 0 4px 14px rgba(0,40,85,0.32) !important;
        transform: none;
    }

:root[data-bs-theme="dark"] .btn.btn-solid.btn-primary-solid[b-vtj2why5f2],
:root[data-bs-theme="dark"] .btn-primary-solid[b-vtj2why5f2],
[data-theme="dark"] .btn.btn-solid.btn-primary-solid[b-vtj2why5f2],
[data-theme="dark"] .btn-primary-solid[b-vtj2why5f2] {
    background: rgba(241,184,40,0.14) !important;
    border-color: rgba(241,184,40,0.36) !important;
    color: rgba(241,184,40,0.95) !important;
    box-shadow: 0 0 0 1px rgba(241,184,40,0.22), 0 4px 18px rgba(0,0,0,0.34) !important;
    text-shadow: 0 0 10px rgba(255,180,40,0.50);
}

    :root[data-bs-theme="dark"] .btn.btn-solid.btn-primary-solid:hover:not(:disabled)[b-vtj2why5f2],
    :root[data-bs-theme="dark"] .btn-primary-solid:hover:not(:disabled)[b-vtj2why5f2],
    [data-theme="dark"] .btn.btn-solid.btn-primary-solid:hover:not(:disabled)[b-vtj2why5f2],
    [data-theme="dark"] .btn-primary-solid:hover:not(:disabled)[b-vtj2why5f2] {
        background: rgba(241,184,40,0.22) !important;
        border-color: rgba(241,184,40,0.55) !important;
        color: #ffffff !important;
        box-shadow: 0 0 0 1px rgba(241,184,40,0.40), 0 5px 24px rgba(0,0,0,0.38), 0 0 28px rgba(241,184,40,0.22) !important;
        text-shadow: 0 0 16px rgba(255,180,40,0.70);
        transform: none;
    }

/* =============================================================
   SHARED MPL HEADER — Page header, product tabs, order total pill
   Moved from inline <style> block.
   ============================================================= */
/* ── Unified Page Header ─────────────────────────────────────────────────── */
/* Shared page header style — applies to non-Windows pages.
   Windows overrides this above with !important navy background. */
:not(.windows-editor-wrapper) .mpl-page-header[b-vtj2why5f2] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 16px;
    padding: 12px 20px;
    margin-top: 16px;
    /* Banner background — light */
    background: #eef1f6;
    border: 1px solid #cdd5e0;
    border-left: 4px solid #002855;
    border-radius: 10px;
    margin-bottom: 16px;
    box-shadow: 0 2px 8px rgba(0,40,85,0.07);
}

[data-bs-theme="dark"] :not(.windows-editor-wrapper) .mpl-page-header[b-vtj2why5f2],
[data-theme="dark"] :not(.windows-editor-wrapper) .mpl-page-header[b-vtj2why5f2] {
    background: #0f1a2a;
    border-color: #243044;
    border-left-color: #F1B828;
    box-shadow: 0 2px 12px rgba(0,0,0,0.28);
}

.mpl-page-header__left[b-vtj2why5f2] {
    display: flex;
    align-items: center;
    gap: 8px;
    flex-shrink: 0;
    min-width: 0;
}

.mpl-page-header__title[b-vtj2why5f2] {
    display: inline-flex;
    align-items: center;
    gap: 0.55rem;
    font-family: 'din-2014', 'DIN 2014', 'DIN Pro', sans-serif !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    color: #ffffff !important;
    margin: 0 !important;
    white-space: nowrap;
    line-height: 1;
}

[data-bs-theme="dark"] .mpl-page-header__title[b-vtj2why5f2],
[data-theme="dark"] .mpl-page-header__title[b-vtj2why5f2] {
    color: #ffffff !important;
}

.mpl-page-header__title[b-vtj2why5f2]::after {
    content: "»";
    font-family: 'din-2014', 'DIN 2014', 'DIN Pro', sans-serif !important;
    font-size: 1.1em;
    font-weight: 800;
    color: #F1B828;
    letter-spacing: -0.06em;
    transform: translateY(0);
    filter: drop-shadow(0 1px 3px rgba(241,184,40,0.30));
    background: none;
    clip-path: none;
    width: auto;
    height: auto;
    flex: 0 0 auto;
}

.card.iac-panel.section-card.windows-main-card.mb-4[b-vtj2why5f2] {
    margin-left: 20px !important;
    margin-right: 20px !important;
}

[data-bs-theme="dark"] .mpl-page-header__title[b-vtj2why5f2]::after,
[data-theme="dark"] .mpl-page-header__title[b-vtj2why5f2]::after {
    filter: drop-shadow(0 0 8px rgba(241,184,40,0.45));
    color: #F1B828;
}

.mpl-page-header__tabs[b-vtj2why5f2] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    flex: 1 1 auto;
    align-self: flex-end;
}

.mpl-page-header__winning[b-vtj2why5f2] {
    display: inline-flex;
    align-items: center;
    height: 34px;
    padding: 0 12px;
    border-radius: 8px;
    background: var(--mpl-winner-bg, rgba(241,184,40,.12));
    border: 1.5px solid var(--mpl-winner-border, rgba(241,184,40,.40));
    color: var(--mpl-winner-color, #5a4000);
    font-size: 11.5px;
    font-weight: 700;
    white-space: nowrap;
    flex-shrink: 0;
    align-self: flex-end;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08);
}

html.dark .mpl-page-header__winning[b-vtj2why5f2],
[data-theme="dark"] .mpl-page-header__winning[b-vtj2why5f2],
.dark .mpl-page-header__winning[b-vtj2why5f2] {
    background: rgba(34, 197, 94, 0.16);
    border: 1px solid rgba(74, 222, 128, 0.30);
    color: #86efac;
}

/* ── Combined order total pill (multi-product header) ── */
.mpl-order-total-pill[b-vtj2why5f2] {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-end;
    justify-content: center;
    padding: 6px 14px;
    border-radius: 8px;
    background: rgba(0,40,85,.08);
    border: 1.5px solid rgba(0,40,85,.22);
    color: #002855;
    flex-shrink: 0;
    align-self: flex-end;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08);
    gap: 1px;
}

[data-bs-theme="dark"] .mpl-order-total-pill[b-vtj2why5f2] {
    background: rgba(241,184,40,.10);
    border-color: rgba(241,184,40,.30);
    color: #F1B828;
}

.mpl-order-total-pill__top[b-vtj2why5f2] {
    display: flex;
    align-items: baseline;
    gap: 5px;
    line-height: 1.2;
}

.mpl-order-total-pill__label[b-vtj2why5f2] {
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    opacity: .70;
    line-height: 1;
}

.mpl-order-total-pill__value[b-vtj2why5f2] {
    font-size: 13px;
    font-weight: 800;
    line-height: 1.2;
}

.mpl-order-total-pill__prefix[b-vtj2why5f2] {
    font-size: 9px;
    font-weight: 700;
    opacity: .60;
    white-space: nowrap;
    letter-spacing: .03em;
}

.mpl-order-total-pill__breakdown[b-vtj2why5f2] {
    font-size: 9px;
    font-weight: 600;
    opacity: .70;
    line-height: 1;
    margin-top: 1px;
}

/* ── Multi-Product Tab Bar ─────────────────────────────────────────────────
   Shared across Doors / Windows / ShipLoose. Light + dark via CSS vars.
──────────────────────────────────────────────────────────────────────────── */
:root[b-vtj2why5f2] {
    --mpl-bar-bg: #f0f4f8;
    --mpl-bar-border: #d0dae6;
    --mpl-tab-bg: #ffffff;
    --mpl-tab-border: #cdd5e0;
    --mpl-tab-color: #4a5e72;
    --mpl-tab-hover-bg: #e8eff7;
    --mpl-active-bg: #002855;
    --mpl-active-color: #ffffff;
    --mpl-active-accent: #F1B828;
    --mpl-badge-bg: rgba(241,184,40,.18);
    --mpl-badge-color: #7a5800;
    --mpl-winner-bg: rgba(241,184,40,.12);
    --mpl-winner-border: rgba(241,184,40,.40);
    --mpl-winner-color: #5a4000;
}

[data-bs-theme="dark"][b-vtj2why5f2] {
    --mpl-bar-bg: #161d28;
    --mpl-bar-border: #2a3548;
    --mpl-tab-bg: #1e2a3a;
    --mpl-tab-border: #2a3850;
    --mpl-tab-color: #8aa4bf;
    --mpl-tab-hover-bg: #243044;
    --mpl-active-bg: #0d1e35;
    --mpl-active-color: #ffffff;
    --mpl-active-accent: #F1B828;
    --mpl-badge-bg: rgba(241,184,40,.15);
    --mpl-badge-color: #c8a030;
    --mpl-winner-bg: rgba(241,184,40,.10);
    --mpl-winner-border: rgba(241,184,40,.30);
    --mpl-winner-color: #c8a030;
}

.mpl-tab-bar[b-vtj2why5f2] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px;
    padding: 10px 14px;
    background: var(--mpl-bar-bg);
    border: 1px solid var(--mpl-bar-border);
    border-radius: 10px;
}

.mpl-tab-bar__label[b-vtj2why5f2] {
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--mpl-tab-color);
    white-space: nowrap;
    flex-shrink: 0;
}

.mpl-tab-bar__tabs[b-vtj2why5f2] {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    flex: 1 1 auto;
}

.mpl-tab[b-vtj2why5f2] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 14px;
    height: 36px;
    border-radius: 8px;
    border: 1.5px solid var(--mpl-tab-border);
    background: var(--mpl-tab-bg);
    color: var(--mpl-tab-color);
    font-size: 12.5px;
    font-weight: 700;
    letter-spacing: 0.03em;
    cursor: pointer;
    transition: background .15s, border-color .15s, color .15s, box-shadow .15s, transform .1s;
    white-space: nowrap;
    box-shadow: 0 1px 3px rgba(0,0,0,0.08), 0 1px 2px rgba(0,0,0,0.04);
    user-select: none;
}

    .mpl-tab:hover[b-vtj2why5f2] {
        background: var(--mpl-tab-hover-bg);
        border-color: #002855;
        color: #002855;
        box-shadow: 0 3px 8px rgba(0,40,85,0.16), 0 1px 3px rgba(0,0,0,0.08);
        transform: translateY(-1px);
    }

    .mpl-tab:active[b-vtj2why5f2] {
        transform: translateY(0px);
        box-shadow: 0 1px 2px rgba(0,0,0,0.06);
    }

.mpl-tab--active[b-vtj2why5f2] {
    background: #002855;
    border-color: #002855;
    color: #ffffff;
    cursor: default;
    box-shadow: 0 2px 10px rgba(0,40,85,0.30), 0 1px 3px rgba(0,0,0,0.12);
    transform: none;
}

    .mpl-tab--active:hover[b-vtj2why5f2] {
        background: #002855;
        border-color: rgba(241,184,40,0.50);
        color: #ffffff;
        box-shadow: 0 4px 14px rgba(0,40,85,0.34);
        transform: none;
    }

.mpl-tab__icon[b-vtj2why5f2] {
    display: flex;
    align-items: center;
    opacity: .85;
}

.mpl-tab__count[b-vtj2why5f2] {
    font-size: 10px;
    font-weight: 700;
    padding: 1px 6px;
    border-radius: 10px;
    background: var(--mpl-badge-bg);
    color: var(--mpl-badge-color);
}

.mpl-tab--active .mpl-tab__count[b-vtj2why5f2] {
    background: rgba(241,184,40,.28);
    color: var(--mpl-active-accent);
}

.mpl-tab__prefix[b-vtj2why5f2] {
    font-size: 10px;
    font-weight: 800;
    opacity: .55;
    letter-spacing: .04em;
}

.mpl-tab-bar__winning[b-vtj2why5f2] {
    font-size: 11.5px;
    font-weight: 600;
    padding: 5px 10px;
    border-radius: 6px;
    background: var(--mpl-winner-bg);
    border: 1px solid var(--mpl-winner-border);
    color: var(--mpl-winner-color);
    white-space: nowrap;
    flex-shrink: 0;
}

    .mpl-tab-bar__winning i[b-vtj2why5f2] {
        color: #F1B828;
    }

.mpl-switch-btn[b-vtj2why5f2] {
    position: relative;
}

.mpl-submit-btn[b-vtj2why5f2] {
    font-weight: 700;
}

@@media (max-width: 640px) {
    .mpl-tab-bar[b-vtj2why5f2] {
        flex-direction: column;
        align-items: flex-start;
    }

    .mpl-tab-bar__winning[b-vtj2why5f2] {
        width: 100%;
    }
}

/* =============================================================
   MULTI-PRODUCT ORDER ALERT BANNER
   ============================================================= */
.multi-product-alert[b-vtj2why5f2] {
    font-size: 12px;
    border-radius: 8px;
    background: rgba(241,184,40,.12);
    border: 1px solid rgba(241,184,40,.40);
    color: #5a4000;
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 8px 12px;
    margin-bottom: 12px;
}

:root[data-bs-theme="dark"] .multi-product-alert[b-vtj2why5f2],
[data-theme="dark"] .multi-product-alert[b-vtj2why5f2] {
    background: rgba(241,184,40,.10);
    border-color: rgba(241,184,40,.35);
    color: rgba(241,184,40,.92);
}

    :root[data-bs-theme="dark"] .multi-product-alert i[b-vtj2why5f2],
    [data-theme="dark"] .multi-product-alert i[b-vtj2why5f2] {
        color: #F1B828 !important;
    }

/* =============================================================
   BTN-NEUTRAL-SOLID — Matches Doors.razor: soft tinted light mode
   Covers both regular neutral buttons and .mpl-switch-btn
   ============================================================= */
/* Light mode — soft navy tint, legible dark text */
.btn.btn-solid.btn-neutral-solid[b-vtj2why5f2],
.btn-neutral-solid[b-vtj2why5f2] {
    font-weight: 700 !important;
    background: #dbeafe !important;
    border: 1px solid #93c5fd !important;
    color: #0f3d75 !important;
    box-shadow: 0 1px 3px rgba(15,61,117,0.10), 0 1px 2px rgba(0,0,0,0.04) !important;
    transition: all 0.15s ease !important;
}

    .btn.btn-solid.btn-neutral-solid:hover:not(:disabled)[b-vtj2why5f2],
    .btn-neutral-solid:hover:not(:disabled)[b-vtj2why5f2] {
        background: #bfdbfe !important;
        border-color: #60a5fa !important;
        color: #0b315f !important;
        box-shadow: 0 3px 10px rgba(15,61,117,0.16), 0 1px 3px rgba(0,0,0,0.08) !important;
        transform: none !important;
    }

    .btn.btn-solid.btn-neutral-solid:active:not(:disabled)[b-vtj2why5f2],
    .btn-neutral-solid:active:not(:disabled)[b-vtj2why5f2] {
        background: #93c5fd !important;
        border-color: #3b82f6 !important;
        color: #08284d !important;
        box-shadow: 0 1px 3px rgba(15,61,117,0.12) !important;
        transform: none !important;
    }

/* Dark mode — navy glass with blue glow */
:root[data-bs-theme="dark"] .btn.btn-solid.btn-neutral-solid[b-vtj2why5f2],
:root[data-bs-theme="dark"] .btn-neutral-solid[b-vtj2why5f2],
[data-theme="dark"] .btn.btn-solid.btn-neutral-solid[b-vtj2why5f2],
[data-theme="dark"] .btn-neutral-solid[b-vtj2why5f2] {
    background: rgba(26,50,96,0.35) !important;
    border-color: rgba(100,148,255,0.28) !important;
    color: rgba(180,210,255,0.92) !important;
    box-shadow: 0 0 0 1px rgba(100,148,255,0.15), 0 2px 8px rgba(0,0,0,0.30) !important;
}

    :root[data-bs-theme="dark"] .btn.btn-solid.btn-neutral-solid:hover:not(:disabled)[b-vtj2why5f2],
    :root[data-bs-theme="dark"] .btn-neutral-solid:hover:not(:disabled)[b-vtj2why5f2],
    [data-theme="dark"] .btn.btn-solid.btn-neutral-solid:hover:not(:disabled)[b-vtj2why5f2],
    [data-theme="dark"] .btn-neutral-solid:hover:not(:disabled)[b-vtj2why5f2] {
        background: rgba(26,50,96,0.55) !important;
        border-color: rgba(100,148,255,0.50) !important;
        color: #ffffff !important;
        box-shadow: 0 0 0 1px rgba(100,148,255,0.35), 0 4px 18px rgba(26,50,150,0.45), 0 0 24px rgba(100,148,255,0.20) !important;
        transform: none !important;
    }

/* mpl-switch-btn — same treatment */
:root[data-bs-theme="dark"] .btn.btn-solid.mpl-switch-btn[b-vtj2why5f2],
[data-theme="dark"] .btn.btn-solid.mpl-switch-btn[b-vtj2why5f2] {
    background: rgba(26,50,96,0.35) !important;
    border-color: rgba(100,148,255,0.28) !important;
    color: rgba(180,210,255,0.92) !important;
    box-shadow: 0 0 0 1px rgba(100,148,255,0.15), 0 2px 8px rgba(0,0,0,0.30) !important;
}

    :root[data-bs-theme="dark"] .btn.btn-solid.mpl-switch-btn:hover:not(:disabled)[b-vtj2why5f2],
    [data-theme="dark"] .btn.btn-solid.mpl-switch-btn:hover:not(:disabled)[b-vtj2why5f2] {
        background: rgba(26,50,96,0.55) !important;
        border-color: rgba(100,148,255,0.50) !important;
        color: #ffffff !important;
        box-shadow: 0 0 0 1px rgba(100,148,255,0.35), 0 4px 18px rgba(26,50,150,0.45), 0 0 24px rgba(100,148,255,0.20) !important;
        transform: none !important;
    }

/* =============================================================
   ADD-WINDOW-BTN — Light mode (green, matches Doors success style)
                    Dark mode glow (improved)
   ============================================================= */
.add-window-btn[b-vtj2why5f2] {
    background: rgba(26,122,74,0.10) !important;
    border: 1.5px solid rgba(26,122,74,0.28) !important;
    color: #155f39 !important;
    font-weight: 700 !important;
    box-shadow: 0 1px 4px rgba(26,122,74,0.12) !important;
    transition: all 0.15s ease !important;
}

    .add-window-btn:hover:not(:disabled)[b-vtj2why5f2] {
        background: rgba(26,122,74,0.18) !important;
        border-color: rgba(26,122,74,0.45) !important;
        color: #0f4a2c !important;
        box-shadow: 0 3px 10px rgba(26,122,74,0.22) !important;
        transform: none !important;
    }

:root[data-bs-theme="dark"] .add-window-btn[b-vtj2why5f2],
[data-theme="dark"] .add-window-btn[b-vtj2why5f2] {
    background: rgba(26,122,74,0.22) !important;
    border-color: rgba(34,197,94,0.40) !important;
    color: #86efac !important;
    box-shadow: 0 0 0 1px rgba(34,197,94,0.25), 0 3px 14px rgba(26,122,74,0.40), 0 0 20px rgba(34,197,94,0.15) !important;
    text-shadow: 0 0 10px rgba(34,197,94,0.45);
}

    :root[data-bs-theme="dark"] .add-window-btn:hover:not(:disabled)[b-vtj2why5f2],
    [data-theme="dark"] .add-window-btn:hover:not(:disabled)[b-vtj2why5f2] {
        background: rgba(26,122,74,0.34) !important;
        border-color: rgba(34,197,94,0.60) !important;
        color: #ffffff !important;
        box-shadow: 0 0 0 1px rgba(34,197,94,0.45), 0 5px 22px rgba(26,122,74,0.55), 0 0 30px rgba(34,197,94,0.25) !important;
        text-shadow: 0 0 16px rgba(34,197,94,0.65);
        transform: none;
    }

/* =============================================================
   BTN-DANGER-SOLID — Consolidated (replaces duplicate definitions)
   Light: ghost red, dark: red glow
   ============================================================= */
.btn.btn-solid.btn-danger-solid[b-vtj2why5f2],
.btn-danger-solid[b-vtj2why5f2] {
    background: rgba(220,38,38,0.08) !important;
    border-color: rgba(220,38,38,0.22) !important;
    color: #b91c1c !important;
    box-shadow: 0 1px 3px rgba(220,38,38,0.08) !important;
    font-weight: 700 !important;
    transition: all 0.15s ease !important;
}

    .btn.btn-solid.btn-danger-solid:hover:not(:disabled)[b-vtj2why5f2],
    .btn-danger-solid:hover:not(:disabled)[b-vtj2why5f2] {
        background: #dc2626 !important;
        border-color: #b91c1c !important;
        color: #ffffff !important;
        box-shadow: 0 3px 12px rgba(185,28,28,0.32) !important;
        transform: none !important;
    }

:root[data-bs-theme="dark"] .btn.btn-solid.btn-danger-solid[b-vtj2why5f2],
:root[data-bs-theme="dark"] .btn-danger-solid[b-vtj2why5f2],
[data-theme="dark"] .btn.btn-solid.btn-danger-solid[b-vtj2why5f2],
[data-theme="dark"] .btn-danger-solid[b-vtj2why5f2] {
    background: rgba(239,68,68,0.10) !important;
    border-color: rgba(239,68,68,0.28) !important;
    color: #f87171 !important;
    box-shadow: none !important;
}

    :root[data-bs-theme="dark"] .btn.btn-solid.btn-danger-solid:hover:not(:disabled)[b-vtj2why5f2],
    :root[data-bs-theme="dark"] .btn-danger-solid:hover:not(:disabled)[b-vtj2why5f2],
    [data-theme="dark"] .btn.btn-solid.btn-danger-solid:hover:not(:disabled)[b-vtj2why5f2],
    [data-theme="dark"] .btn-danger-solid:hover:not(:disabled)[b-vtj2why5f2] {
        background: rgba(239,68,68,0.22) !important;
        border-color: rgba(239,68,68,0.50) !important;
        color: #fca5a5 !important;
        box-shadow: 0 3px 14px rgba(239,68,68,0.35), 0 0 20px rgba(239,68,68,0.18) !important;
        transform: none !important;
    }

.iac-offcanvas[b-vtj2why5f2]::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, transparent, var(--iac-accent), transparent);
    opacity: 0.70;
    pointer-events: none;
    z-index: 1;
}

.iac-offcanvas__header[b-vtj2why5f2] {
    padding: 22px 24px 18px !important;
    border-bottom: 1px solid var(--iac-border) !important;
    background: var(--iac-surface) !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
}

.iac-offcanvas__title-group[b-vtj2why5f2] {
    display: flex;
    align-items: center;
    gap: 12px;
}

.iac-offcanvas__icon[b-vtj2why5f2] {
    width: 36px;
    height: 36px;
    border-radius: 10px;
    background: var(--iac-accent-dim);
    border: 1px solid var(--iac-accent-border);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

    .iac-offcanvas__icon svg[b-vtj2why5f2] {
        width: 16px;
        height: 16px;
        color: var(--iac-accent);
    }

.iac-offcanvas__title[b-vtj2why5f2] {
    font-size: 15px !important;
    font-weight: 700 !important;
    color: var(--iac-text-primary) !important;
    letter-spacing: 0.02em;
    line-height: 1.2;
}

.iac-offcanvas__subtitle[b-vtj2why5f2] {
    display: block;
    font-size: 11px;
    color: var(--iac-text-muted);
    letter-spacing: 0.03em;
    margin-top: 2px;
}

.iac-offcanvas__close[b-vtj2why5f2] {
    width: 30px;
    height: 30px;
    border-radius: 8px;
    border: 1px solid var(--iac-border);
    background: transparent;
    color: var(--iac-text-secondary);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.15s;
    flex-shrink: 0;
    margin-top: 2px;
    padding: 0;
}

    .iac-offcanvas__close:hover[b-vtj2why5f2] {
        background: var(--iac-close-hover);
        border-color: var(--iac-border-hover);
    }

    .iac-offcanvas__close svg[b-vtj2why5f2] {
        width: 14px;
        height: 14px;
    }

.iac-offcanvas__body[b-vtj2why5f2] {
    padding: 22px 24px !important;
    background: var(--iac-surface) !important;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: var(--iac-scrollbar) transparent;
}

    .iac-offcanvas__body[b-vtj2why5f2]::-webkit-scrollbar {
        width: 4px;
    }

    .iac-offcanvas__body[b-vtj2why5f2]::-webkit-scrollbar-thumb {
        background: var(--iac-scrollbar);
        border-radius: 4px;
    }

.iac-offcanvas__req-note[b-vtj2why5f2] {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: 11px;
    color: var(--iac-text-muted);
    padding: 8px 12px;
    margin-bottom: 18px;
    background: var(--iac-req-note-bg);
    border: 1px solid var(--iac-border);
    border-radius: 8px;
}

.iac-offcanvas__req-dot[b-vtj2why5f2] {
    width: 5px;
    height: 5px;
    border-radius: 50%;
    background: var(--iac-accent);
    flex-shrink: 0;
    opacity: 0.85;
}

.iac-offcanvas__label[b-vtj2why5f2] {
    display: flex;
    align-items: center;
    gap: 4px;
    font-size: 11px !important;
    font-weight: 700 !important;
    color: var(--iac-text-secondary) !important;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    margin-bottom: 6px !important;
}

.iac-offcanvas__req-star[b-vtj2why5f2] {
    color: var(--iac-accent);
    font-size: 13px;
    line-height: 1;
    margin-top: -1px;
}

.iac-offcanvas__input.form-control[b-vtj2why5f2] {
    background: #F7F9FC !important;
    border: 1px solid #D6DFEA !important;
    border-radius: 10px !important;
    padding: 10px 14px !important;
    font-size: 14px !important;
    color: var(--iac-text-primary) !important;
    box-shadow: none !important;
}

    .iac-offcanvas__input.form-control[b-vtj2why5f2]::placeholder {
        color: var(--iac-text-muted) !important;
    }

    .iac-offcanvas__input.form-control:focus[b-vtj2why5f2] {
        border-color: var(--iac-accent) !important;
        box-shadow: 0 0 0 3px var(--iac-accent-glow) !important;
        background: #ffffff !important;
    }

    .iac-offcanvas__input--disabled.form-control[b-vtj2why5f2],
    .iac-offcanvas__input.form-control:disabled[b-vtj2why5f2] {
        background: #EEF2F6 !important;
        border-color: #D7DEE8 !important;
        color: #8A97A8 !important;
        cursor: not-allowed !important;
        opacity: 1 !important;
    }

/* Dark mode offcanvas inputs */
:root[data-bs-theme="dark"] .iac-offcanvas__input.form-control[b-vtj2why5f2],
[data-bs-theme="dark"] .iac-offcanvas__input.form-control[b-vtj2why5f2],
[data-theme="dark"] .iac-offcanvas__input.form-control[b-vtj2why5f2] {
    background: rgba(255,255,255,0.07) !important;
    border-color: rgba(255,255,255,0.14) !important;
    color: rgba(255,255,255,0.92) !important;
}

    :root[data-bs-theme="dark"] .iac-offcanvas__input.form-control[b-vtj2why5f2]::placeholder,
    [data-bs-theme="dark"] .iac-offcanvas__input.form-control[b-vtj2why5f2]::placeholder,
    [data-theme="dark"] .iac-offcanvas__input.form-control[b-vtj2why5f2]::placeholder {
        color: rgba(255,255,255,0.35) !important;
    }

    :root[data-bs-theme="dark"] .iac-offcanvas__input.form-control:focus[b-vtj2why5f2],
    [data-bs-theme="dark"] .iac-offcanvas__input.form-control:focus[b-vtj2why5f2],
    [data-theme="dark"] .iac-offcanvas__input.form-control:focus[b-vtj2why5f2] {
        background: rgba(255,255,255,0.10) !important;
        border-color: var(--iac-accent) !important;
        box-shadow: 0 0 0 3px rgba(241,184,40,0.20) !important;
    }

    :root[data-bs-theme="dark"] .iac-offcanvas__input--disabled.form-control[b-vtj2why5f2],
    :root[data-bs-theme="dark"] .iac-offcanvas__input.form-control:disabled[b-vtj2why5f2],
    [data-bs-theme="dark"] .iac-offcanvas__input--disabled.form-control[b-vtj2why5f2],
    [data-bs-theme="dark"] .iac-offcanvas__input.form-control:disabled[b-vtj2why5f2],
    [data-theme="dark"] .iac-offcanvas__input--disabled.form-control[b-vtj2why5f2],
    [data-theme="dark"] .iac-offcanvas__input.form-control:disabled[b-vtj2why5f2] {
        background: rgba(255,255,255,0.04) !important;
        border-color: rgba(255,255,255,0.08) !important;
        color: rgba(255,255,255,0.30) !important;
    }

.iac-offcanvas__select.form-control[b-vtj2why5f2] {
    background: #F7F9FC url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%230d1f3c' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.50'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 12px center / 12px 12px !important;
    border-color: #D6DFEA !important;
    padding-right: 36px !important;
    cursor: pointer;
}

:root[data-bs-theme="dark"] .iac-offcanvas__select.form-control[b-vtj2why5f2],
[data-bs-theme="dark"] .iac-offcanvas__select.form-control[b-vtj2why5f2],
[data-theme="dark"] .iac-offcanvas__select.form-control[b-vtj2why5f2] {
    background: rgba(255,255,255,0.07) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23ffffff' stroke-width='2' stroke-linecap='round' stroke-linejoin='round' opacity='0.50'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E") no-repeat right 12px center / 12px 12px !important;
    border-color: rgba(255,255,255,0.14) !important;
    color: rgba(255,255,255,0.92) !important;
}

.iac-offcanvas__hint[b-vtj2why5f2] {
    display: flex;
    align-items: center;
    gap: 5px;
    font-size: 11px;
    color: var(--iac-text-muted);
    margin-top: 5px;
}

    .iac-offcanvas__hint svg[b-vtj2why5f2] {
        width: 11px;
        height: 11px;
        flex-shrink: 0;
    }

.iac-offcanvas__divider[b-vtj2why5f2] {
    height: 1px;
    background: var(--iac-border);
    margin: 2px 0;
}

.iac-offcanvas__btn-done[b-vtj2why5f2] {
    flex: 1;
    padding: 11px 20px;
    border-radius: 10px;
    border: 1px solid rgba(26,122,74,0.40);
    background: #1a7a4a;
    color: #ffffff;
    font-family: 'din-2014', 'DIN Pro', sans-serif !important;
    font-size: 14px;
    font-weight: 800;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    box-shadow: 0 3px 12px rgba(26,122,74,0.35), 0 1px 3px rgba(0,0,0,0.14);
    transition: all 0.15s;
    letter-spacing: 0.02em;
}

    .iac-offcanvas__btn-done:hover[b-vtj2why5f2] {
        background: #155f39;
        border-color: rgba(26,122,74,0.60);
        box-shadow: 0 5px 20px rgba(26,122,74,0.45), 0 0 0 3px rgba(26,122,74,0.18);
        transform: none;
        filter: none;
    }

    .iac-offcanvas__btn-done svg[b-vtj2why5f2] {
        width: 15px;
        height: 15px;
    }

:root[data-bs-theme="dark"] .iac-offcanvas__btn-done[b-vtj2why5f2],
[data-theme="dark"] .iac-offcanvas__btn-done[b-vtj2why5f2] {
    background: rgba(26,122,74,0.22);
    border-color: rgba(34,197,94,0.40);
    color: #86efac;
    box-shadow: 0 0 0 1px rgba(34,197,94,0.25), 0 4px 18px rgba(26,122,74,0.50), 0 0 28px rgba(34,197,94,0.18);
    text-shadow: 0 0 10px rgba(34,197,94,0.45);
}

    :root[data-bs-theme="dark"] .iac-offcanvas__btn-done:hover[b-vtj2why5f2],
    [data-theme="dark"] .iac-offcanvas__btn-done:hover[b-vtj2why5f2] {
        background: rgba(26,122,74,0.34);
        border-color: rgba(34,197,94,0.60);
        color: #ffffff;
        box-shadow: 0 0 0 1px rgba(34,197,94,0.45), 0 5px 22px rgba(26,122,74,0.55), 0 0 30px rgba(34,197,94,0.25);
        text-shadow: 0 0 16px rgba(34,197,94,0.65);
        transform: none;
        filter: none;
    }


/* =============================================================
   IAC OFFCANVAS — CANCEL BUTTON (matches Export PDF / btn-utility-solid)
   ============================================================= */
.iac-offcanvas__btn-cancel[b-vtj2why5f2] {
    padding: 11px 16px !important;
    border-radius: 10px !important;
    border: 1px solid rgba(153,27,27,0.50) !important;
    background: #991b1b !important;
    color: #ffffff !important;
    font-family: 'din-2014', 'DIN Pro', sans-serif !important;
    font-size: 14px !important;
    font-weight: 800 !important;
    cursor: pointer !important;
    transition: all 0.15s !important;
    box-shadow: 0 3px 12px rgba(153,27,27,0.35), 0 1px 3px rgba(0,0,0,0.14) !important;
}

    .iac-offcanvas__btn-cancel:hover[b-vtj2why5f2] {
        background: #7f1d1d !important;
        border-color: rgba(153,27,27,0.70) !important;
        color: #ffffff !important;
        box-shadow: 0 5px 20px rgba(153,27,27,0.45), 0 0 0 3px rgba(196,30,30,0.20) !important;
        transform: none !important;
    }

:root[data-bs-theme="dark"] .iac-offcanvas__btn-cancel[b-vtj2why5f2],
[data-theme="dark"] .iac-offcanvas__btn-cancel[b-vtj2why5f2] {
    background: rgba(220,38,38,0.22) !important;
    border-color: rgba(239,68,68,0.45) !important;
    color: #fca5a5 !important;
    box-shadow: 0 0 0 1px rgba(239,68,68,0.35), 0 4px 18px rgba(220,38,38,0.50), 0 0 28px rgba(239,68,68,0.20) !important;
    text-shadow: 0 0 10px rgba(239,68,68,0.55) !important;
}

    :root[data-bs-theme="dark"] .iac-offcanvas__btn-cancel:hover[b-vtj2why5f2],
    [data-theme="dark"] .iac-offcanvas__btn-cancel:hover[b-vtj2why5f2] {
        background: rgba(220,38,38,0.34) !important;
        border-color: rgba(239,68,68,0.65) !important;
        color: #ffffff !important;
        box-shadow: 0 0 0 1px rgba(239,68,68,0.55), 0 5px 24px rgba(220,38,38,0.60), 0 0 36px rgba(239,68,68,0.30) !important;
        text-shadow: 0 0 16px rgba(239,68,68,0.70) !important;
        transform: none !important;
    }

/* =============================================================
   MPL-TAB DARK MODE OVERRIDES — same as Doors_razor.css
   ============================================================= */
[data-bs-theme="dark"] .mpl-tab:hover[b-vtj2why5f2] {
    background: rgba(26,50,96,0.35);
    border-color: rgba(100,148,255,0.50);
    color: rgba(200,220,255,0.95);
    box-shadow: 0 3px 8px rgba(0,0,0,0.22);
    transform: translateY(-1px);
}

[data-bs-theme="dark"] .mpl-tab--active[b-vtj2why5f2] {
    background: rgba(13,30,53,0.95);
    border-color: rgba(241,184,40,0.45);
    color: #ffffff;
    box-shadow: 0 2px 12px rgba(0,0,0,0.35), 0 0 0 1px rgba(241,184,40,0.22);
    transform: none;
}

    [data-bs-theme="dark"] .mpl-tab--active:hover[b-vtj2why5f2] {
        background: rgba(13,30,53,0.95);
        border-color: rgba(241,184,40,0.65);
        color: #ffffff;
        transform: none;
    }

/* --------------------------------------------------------------------------
   FOOTER STRIPE
   -------------------------------------------------------------------------- */
.iac-login-footer[b-vtj2why5f2] {
    position: fixed;
    inset: auto 0 0 0;
    height: 44px;
    z-index: 9999;
    background: linear-gradient(180deg, rgba(255,255,255,.10), rgba(0,0,0,.00)), #002855;
    border-top: 1px solid rgba(255,255,255,.12);
}

    .iac-login-footer.iac-login-footer-img[b-vtj2why5f2] {
        background: #002855 url("/images/BottomBlueBar.png") center bottom / cover no-repeat;
        border-top: 0;
    }

.saved-sets-card .card-footer[b-vtj2why5f2] {
    padding: 14px 18px;
}


/* =============================================================
   REFACTOR — HEADER / EXPORT MENU / TABLE / SPACING
   ============================================================= */
.page-shell[b-vtj2why5f2] {
    padding-left: 20px;
    padding-right: 20px;
}

.windows-editor-wrapper[b-vtj2why5f2] {
    background: var(--page-bg);
    padding-bottom: 40px;
}

.card.iac-panel.section-card.windows-main-card.mb-4[b-vtj2why5f2] {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.mpl-page-header[b-vtj2why5f2] {
    align-items: flex-end;
    justify-content: space-between;
    gap: 10px 16px;
}

.mpl-page-header__left--stacked[b-vtj2why5f2] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    min-width: 0;
}

.mpl-page-header__title-row[b-vtj2why5f2] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}

.mpl-page-header__controls[b-vtj2why5f2],
.mpl-page-header__meta[b-vtj2why5f2] {
    margin-left: auto;
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.mpl-page-header__title[b-vtj2why5f2]::after {
    content: "»";
    width: auto;
    height: auto;
    flex: 0 0 auto;
    background: none;
    clip-path: none;
    color: var(--iac-gold);
    font-size: 1em;
    font-weight: 800;
    letter-spacing: -0.06em;
}

.mpl-page-header__tabs[b-vtj2why5f2] {
    justify-content: center;
    flex: 1 1 360px;
    align-self: flex-end;
}

.mpl-page-header__meta[b-vtj2why5f2] {
    margin-left: auto;
    justify-content: flex-end;
    margin-left: auto;
    align-self: flex-end;
}

.export-menu-wrap[b-vtj2why5f2] {
    position: relative;
    display: inline-flex;
}

.export-menu-toggle[b-vtj2why5f2] {
    min-width: 164px;
    justify-content: center;
}

.export-menu-list[b-vtj2why5f2] {
    min-width: 230px;
    padding: 0.4rem;
    border-radius: 14px;
    border: 1px solid var(--panel-border-strong);
    box-shadow: 0 18px 48px rgba(0,40,85,0.16);
}

.export-menu-item[b-vtj2why5f2] {
    display: flex;
    align-items: center;
    gap: 0.4rem;
    min-height: 40px;
    border-radius: 10px;
    font-size: 0.84rem;
    font-weight: 700;
    color: var(--text-primary);
}

    .export-menu-item:hover[b-vtj2why5f2],
    .export-menu-item:focus[b-vtj2why5f2] {
        background: rgba(0,40,85,0.06);
        color: var(--iac-navy);
    }

[data-bs-theme="dark"] .export-menu-list[b-vtj2why5f2],
[data-theme="dark"] .export-menu-list[b-vtj2why5f2] {
    background: #131b2a;
    border-color: rgba(255,255,255,0.12);
    box-shadow: 0 22px 56px rgba(0,0,0,0.44);
}

[data-bs-theme="dark"] .export-menu-item[b-vtj2why5f2],
[data-theme="dark"] .export-menu-item[b-vtj2why5f2] {
    color: rgba(255,255,255,0.9);
}

    [data-bs-theme="dark"] .export-menu-item:hover[b-vtj2why5f2],
    [data-bs-theme="dark"] .export-menu-item:focus[b-vtj2why5f2],
    [data-bs-theme="dark"] .export-menu-item:active[b-vtj2why5f2],
    [data-bs-theme="dark"] .export-menu-item:hover[b-vtj2why5f2],
    [data-bs-theme="dark"] .export-menu-item:focus[b-vtj2why5f2],
    [data-bs-theme="dark"] .export-menu-item:active[b-vtj2why5f2] {
        background: rgba(241,184,40,0.12);
        color: var(--iac-gold);
    }

.order-actions-wrap[b-vtj2why5f2] {
    margin-bottom: 28px;
}

.order-table tbody td[b-vtj2why5f2] {
    border-top: 1px solid var(--table-border) !important;
    border-bottom: 1px solid var(--table-border) !important;
}

.order-table tbody tr + tr td[b-vtj2why5f2] {
    border-top-color: rgba(0,40,85,0.12) !important;
}

[data-bs-theme="dark"] .order-table tbody tr + tr td[b-vtj2why5f2],
[data-theme="dark"] .order-table tbody tr + tr td[b-vtj2why5f2] {
    border-top-color: rgba(255,255,255,0.08) !important;
}

@media (max-width: 991.98px) {
    .mpl-page-header__meta[b-vtj2why5f2] {
        margin-left: auto;
        margin-left: 0;
        justify-content: flex-start;
    }
}

@media (max-width: 767.98px) {
    .mpl-page-header__controls[b-vtj2why5f2],
    .mpl-page-header__meta[b-vtj2why5f2],
    .export-menu-wrap[b-vtj2why5f2],
    .export-menu-toggle[b-vtj2why5f2],
    .export-menu-list[b-vtj2why5f2] {
        width: 100%;
    }

    .mpl-page-header__tabs[b-vtj2why5f2] {
        width: 100%;
        justify-content: flex-start;
    }
}


/* ══════════════════════════════════════════════════════════════
   WINDOW SETTINGS — Limits table, tags, action buttons
   ══════════════════════════════════════════════════════════════ */

/* Compact input used in every limit cell */
.ws-limit-input[b-vtj2why5f2] {
    min-width: 74px;
    max-width: 110px;
    font-size: .78rem;
    padding: 3px 6px;
}

/* Dim hint text under inputs */
.ws-limit-hint[b-vtj2why5f2] {
    font-size: .68rem;
    color: #6c757d;
    margin-top: 2px;
    white-space: nowrap;
}

[data-bs-theme="dark"] .ws-limit-hint[b-vtj2why5f2] {
    color: #8b95a1;
}

/* Pane badge */
.ws-limit-badge[b-vtj2why5f2] {
    display: inline-flex;
    align-items: center;
    padding: 2px 8px;
    border-radius: 4px;
    font-size: .68rem;
    font-weight: 700;
    letter-spacing: .04em;
    white-space: nowrap;
}

.ws-limit-badge--double[b-vtj2why5f2] {
    background: rgba(13,110,253,.13);
    color: #0d6efd;
    border: 1px solid rgba(13,110,253,.28);
}

.ws-limit-badge--single[b-vtj2why5f2] {
    background: rgba(108,117,125,.12);
    color: #495057;
    border: 1px solid rgba(108,117,125,.26);
}

[data-bs-theme="dark"] .ws-limit-badge--double[b-vtj2why5f2] {
    background: rgba(13,110,253,.20);
    color: #6ea8fe;
    border-color: rgba(13,110,253,.38);
}

[data-bs-theme="dark"] .ws-limit-badge--single[b-vtj2why5f2] {
    background: rgba(173,181,189,.12);
    color: #adb5bd;
    border-color: rgba(173,181,189,.28);
}

/* Remove row button */
.ws-limit-remove-btn[b-vtj2why5f2] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 6px;
    border: 1px solid rgba(239,68,68,.30);
    background: rgba(239,68,68,.08);
    color: #ef4444;
    padding: 0;
    cursor: pointer;
    transition: background .15s, border-color .15s;
    font-size: .72rem;
}

    .ws-limit-remove-btn:hover[b-vtj2why5f2] {
        background: rgba(239,68,68,.18);
        border-color: rgba(239,68,68,.50);
    }

[data-bs-theme="light"] .ws-limit-remove-btn[b-vtj2why5f2] {
    color: #dc2626;
}

/* Add STC button */
.ws-add-stc-btn[b-vtj2why5f2] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 5px 14px;
    border-radius: 8px;
    border: 1px dashed rgba(0,40,85,.35);
    background: rgba(0,40,85,.05);
    color: #002855;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .03em;
    cursor: pointer;
    transition: background .15s, border-color .15s, color .15s;
}

    .ws-add-stc-btn:hover[b-vtj2why5f2] {
        background: rgba(0,40,85,.10);
        border-color: rgba(0,40,85,.55);
    }

[data-bs-theme="dark"] .ws-add-stc-btn[b-vtj2why5f2] {
    border-color: rgba(241,184,40,.40);
    background: rgba(241,184,40,.06);
    color: #f1b828;
}

    [data-bs-theme="dark"] .ws-add-stc-btn:hover[b-vtj2why5f2] {
        background: rgba(241,184,40,.12);
        border-color: rgba(241,184,40,.65);
    }

/* Action buttons (Save / Reset) */
.ws-action-btn[b-vtj2why5f2] {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    padding: 6px 18px;
    border-radius: 9px;
    font-size: .80rem;
    font-weight: 700;
    letter-spacing: .03em;
    border: 1px solid transparent;
    cursor: pointer;
    transition: background .15s, border-color .15s, box-shadow .15s;
}

.ws-action-btn--save[b-vtj2why5f2] {
    background: rgba(25,135,84,.12);
    border-color: rgba(25,135,84,.32);
    color: #198754;
}

    .ws-action-btn--save:hover[b-vtj2why5f2] {
        background: rgba(25,135,84,.20);
        border-color: rgba(25,135,84,.50);
        box-shadow: 0 0 0 3px rgba(25,135,84,.12);
    }

    .ws-action-btn--save:disabled[b-vtj2why5f2] {
        opacity: .55;
        cursor: not-allowed;
    }

[data-bs-theme="dark"] .ws-action-btn--save[b-vtj2why5f2] {
    background: rgba(25,135,84,.18);
    color: #75b798;
    border-color: rgba(25,135,84,.40);
}

.ws-action-btn--reset[b-vtj2why5f2] {
    background: rgba(108,117,125,.09);
    border-color: rgba(108,117,125,.26);
    color: #495057;
}

    .ws-action-btn--reset:hover[b-vtj2why5f2] {
        background: rgba(108,117,125,.17);
        border-color: rgba(108,117,125,.40);
    }

[data-bs-theme="dark"] .ws-action-btn--reset[b-vtj2why5f2] {
    background: rgba(173,181,189,.10);
    color: #adb5bd;
    border-color: rgba(173,181,189,.26);
}

    [data-bs-theme="dark"] .ws-action-btn--reset:hover[b-vtj2why5f2] {
        background: rgba(173,181,189,.18);
    }

/* Glass type / thickness tag chips */
.ws-tag[b-vtj2why5f2] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 4px 8px 4px 10px;
    border-radius: 7px;
    font-size: .80rem;
    font-weight: 600;
    background: rgba(0,40,85,.08);
    color: #002855;
    border: 1px solid rgba(0,40,85,.20);
    transition: background .13s;
}

[data-bs-theme="dark"] .ws-tag[b-vtj2why5f2] {
    background: rgba(241,184,40,.09);
    color: #f1c84a;
    border-color: rgba(241,184,40,.25);
}

.ws-tag--standard[b-vtj2why5f2] {
    background: rgba(25,135,84,.10);
    color: #157347;
    border-color: rgba(25,135,84,.28);
}

[data-bs-theme="dark"] .ws-tag--standard[b-vtj2why5f2] {
    background: rgba(25,135,84,.16);
    color: #75b798;
    border-color: rgba(25,135,84,.35);
}

.ws-tag--nonstandard[b-vtj2why5f2] {
    background: rgba(255,193,7,.10);
    color: #856404;
    border-color: rgba(255,193,7,.30);
}

[data-bs-theme="dark"] .ws-tag--nonstandard[b-vtj2why5f2] {
    background: rgba(255,193,7,.12);
    color: #ffc107;
    border-color: rgba(255,193,7,.35);
}

.ws-tag__remove[b-vtj2why5f2] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border-radius: 4px;
    border: none;
    background: transparent;
    color: inherit;
    opacity: .55;
    cursor: pointer;
    padding: 0;
    font-size: .75rem;
    transition: opacity .13s, background .13s;
}

    .ws-tag__remove:hover[b-vtj2why5f2] {
        opacity: 1;
        background: rgba(0,0,0,.08);
    }

[data-bs-theme="dark"] .ws-tag__remove:hover[b-vtj2why5f2] {
    background: rgba(255,255,255,.10);
}

.ws-tag__std-toggle[b-vtj2why5f2] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    border-radius: 4px;
    border: none;
    background: transparent;
    color: inherit;
    opacity: .75;
    cursor: pointer;
    padding: 0;
    font-size: .75rem;
    transition: opacity .13s;
}

    .ws-tag__std-toggle:hover[b-vtj2why5f2] {
        opacity: 1;
    }

/* Add tag button (Add glass type / thickness) */
.ws-add-tag-btn[b-vtj2why5f2] {
    display: inline-flex;
    align-items: center;
    gap: 4px;
    padding: 5px 14px;
    border-radius: 7px;
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .03em;
    border: 1px solid rgba(0,40,85,.30);
    background: rgba(0,40,85,.07);
    color: #002855;
    cursor: pointer;
    white-space: nowrap;
    transition: background .14s, border-color .14s;
}

    .ws-add-tag-btn:hover[b-vtj2why5f2] {
        background: rgba(0,40,85,.14);
        border-color: rgba(0,40,85,.50);
    }

    .ws-add-tag-btn:disabled[b-vtj2why5f2] {
        opacity: .45;
        cursor: not-allowed;
    }

[data-bs-theme="dark"] .ws-add-tag-btn[b-vtj2why5f2] {
    border-color: rgba(241,184,40,.35);
    background: rgba(241,184,40,.07);
    color: #f1b828;
}

    [data-bs-theme="dark"] .ws-add-tag-btn:hover[b-vtj2why5f2] {
        background: rgba(241,184,40,.14);
        border-color: rgba(241,184,40,.55);
    }
/* ─────────────────────────────────────────────
   9. INFO DOT
   ───────────────────────────────────────────── */
.info-dot[b-vtj2why5f2] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: var(--info-dot-bg);
    color: var(--info-dot-color);
    font-size: 9px;
    font-weight: 800;
    cursor: help;
    flex-shrink: 0;
    border: 1px solid var(--panel-border);
    transition: background 0.15s;
    line-height: 1;
}

    .info-dot:hover[b-vtj2why5f2] {
        background: rgba(241,184,40,0.22);
        color: var(--iac-navy);
    }
/* ── 3. INFO DOT — bigger, styled like a modern tooltip trigger */
.info-dot[b-vtj2why5f2] {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 18px !important;
    height: 18px !important;
    border-radius: 50% !important;
    background: rgba(0,40,85,0.12) !important;
    color: #002855 !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    font-style: italic !important;
    cursor: help !important;
    flex-shrink: 0 !important;
    border: 1.5px solid rgba(0,40,85,0.28) !important;
    transition: background 0.15s, box-shadow 0.15s, border-color 0.15s !important;
    line-height: 1 !important;
    letter-spacing: -0.01em !important;
    box-shadow: 0 1px 4px rgba(0,40,85,0.12) !important;
}

    .info-dot:hover[b-vtj2why5f2] {
        background: #002855 !important;
        color: #F1B828 !important;
        border-color: rgba(241,184,40,0.55) !important;
        box-shadow: 0 2px 10px rgba(0,40,85,0.25) !important;
    }

[data-bs-theme="dark"] .info-dot[b-vtj2why5f2] {
    background: rgba(255,255,255,0.10) !important;
    color: rgba(255,255,255,0.75) !important;
    border-color: rgba(255,255,255,0.22) !important;
}

    [data-bs-theme="dark"] .info-dot:hover[b-vtj2why5f2] {
        background: #F1B828 !important;
        color: #0d1f3c !important;
        border-color: #F1B828 !important;
        box-shadow: 0 2px 12px rgba(241,184,40,0.30) !important;
    }

/* =============================================================
   WIN-DIM-CELL — COW / COH columns
   Light: IAC navy (readable). Dark: gold (matches table accent).
   ============================================================= */
.win-dim-cell[b-vtj2why5f2] {
    color: #002855;
}

[data-bs-theme="dark"] .win-dim-cell[b-vtj2why5f2],
[data-theme="dark"] .win-dim-cell[b-vtj2why5f2] {
    color: #F1B828;
}

/* =============================================================
   EXPORT-MENU DISABLED ITEM — grayed-out / non-interactive
   Used for Door Submittal PDF when CanExportSubmittal is false.
   ============================================================= */
.export-menu-item--disabled[b-vtj2why5f2] {
    opacity: 0.45;
    cursor: not-allowed !important;
    pointer-events: none;
    color: var(--text-muted) !important;
    font-style: italic;
}

[data-bs-theme="dark"] .export-menu-item--disabled[b-vtj2why5f2],
[data-theme="dark"] .export-menu-item--disabled[b-vtj2why5f2] {
    color: rgba(255,255,255,0.35) !important;
}

.export-menu-badge[b-vtj2why5f2] {
    margin-left: auto;
    font-size: 0.62rem;
    font-weight: 800;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    background: rgba(220,38,38,0.12);
    color: #b91c1c;
    border: 1px solid rgba(220,38,38,0.22);
    border-radius: 5px;
    padding: 2px 6px;
    white-space: nowrap;
    font-style: normal;
}

[data-bs-theme="dark"] .export-menu-badge[b-vtj2why5f2],
[data-theme="dark"] .export-menu-badge[b-vtj2why5f2] {
    background: rgba(239,68,68,0.14);
    color: #f87171;
    border-color: rgba(239,68,68,0.28);
}
