/* =========================================================
   SMS Command Center shared shell styles
   Version: 23.1-nav-css-split

   Keep this file focused on layout, navigation, and shared UI styling.
   Page logic and BigCommerce/Pricing helpers stay in shared.py.
   ========================================================= */

:root {
    /* Command Center design tokens. These are the sitewide source of truth for
       typography, colors, and standard form-control sizing. Page rules should
       consume these variables instead of introducing new literal values. */
    --cc-font-family: "proxima-nova", "Inter", "Segoe UI", Arial, sans-serif;
    --cc-color-brand-primary: var(--brand-primary);
    --cc-color-brand-accent: var(--brand-accent);
    --cc-color-page: #ffffff;
    --cc-color-field-text: #0f172a;
    --cc-color-field-muted: #6b7280;
    --cc-color-field-border: rgba(126, 200, 255, .58);
    --cc-color-field-focus: var(--cc-color-brand-accent);
    --cc-field-background: linear-gradient(180deg, #ffffff 0%, #f3f8fd 100%);
    --cc-field-readonly-background: linear-gradient(180deg, #f8fafc 0%, #edf2f7 100%);
    --cc-field-height: 36px;
    --cc-field-height-compact: 32px;
    --cc-field-height-touch: 44px;
    --cc-field-padding-inline: 11px;
    --cc-field-font-size: 14px;
    --cc-field-radius: 9px;

    --brand-primary: #082944;
    --brand-accent: #0B5E8E;
    --brand-primary-rgb: 8, 41, 68;
    --brand-accent-rgb: 11, 94, 142;
    --sms-app-font-family: var(--cc-font-family);

    --sms-shell-sidebar: 300px;
    --sms-shell-topbar: 72px;

    --sms-page-bg: var(--cc-color-page);
    --sms-dark-blue: #082944;
    --sms-dark-blue-2: #06233A;
    --sms-medium-blue: #163A58;
    --sms-medium-blue-2: #102E49;
    --sms-medium-blue-3: #1D4668;
    --sms-light-blue: #7EC8FF;
    --sms-line-blue: #2695C1;

    --sms-white: #ffffff;
    --sms-soft-white: rgba(255, 255, 255, .82);
    --sms-muted-white: rgba(255, 255, 255, .64);
    --sms-field-text: var(--cc-color-field-text);
    --sms-field-muted: var(--cc-color-field-muted);

    --sms-dark-border: rgba(126, 200, 255, .30);
    --sms-dark-border-strong: rgba(126, 200, 255, .52);
    --sms-shadow: 0 22px 52px rgba(8, 41, 68, .18);
    --sms-card-shadow: 0 16px 36px rgba(0, 0, 0, .18), inset 0 1px 0 rgba(255,255,255,.04);

    /* Product Load Manager theme aliases. Keep these near the shared theme colors. */
    --plm-bg: var(--sms-dark-blue);
    --plm-bg-deep: var(--sms-dark-blue-2);
    --plm-panel: var(--sms-medium-blue);
    --plm-panel-deep: var(--sms-medium-blue-2);
    --plm-panel-strong: var(--sms-medium-blue-3);
    --plm-text: var(--sms-white);
    --plm-text-soft: var(--sms-soft-white);
    --plm-accent: var(--sms-light-blue);
    --plm-line: var(--sms-line-blue);
    --plm-border: var(--sms-dark-border);
    --plm-border-strong: var(--sms-dark-border-strong);

    /* PLM detailed theme defaults. Keep these near the top so PLM colors are easy to adjust. */
    --plm-page-bg-top: var(--sms-dark-blue);
    --plm-page-bg-bottom: var(--sms-dark-blue-2);
    --plm-panel-bg: var(--sms-medium-blue);
    --plm-panel-bg-2: var(--sms-medium-blue-2);
    --plm-panel-bg-soft: rgba(8, 41, 68, .46);
    --plm-panel-border: var(--sms-dark-border);
    --plm-panel-border-strong: var(--sms-dark-border-strong);
    --plm-divider: rgba(126, 200, 255, .18);
    --plm-text-muted: var(--sms-muted-white);
    --plm-accent-bright: var(--sms-light-blue);
    --plm-accent-line: var(--sms-line-blue);
    --plm-warning: #DCA24A;
    --plm-success: #2dcc70;
    --plm-danger: #ef4444;
    --plm-tab-active-bg: #11658f;
    --plm-table-header-bg: #0b3f5f;
    --plm-card-radius: 16px;
    --plm-section-radius: 18px;
    --plm-field-radius: 10px;
    --plm-shadow-card: var(--sms-card-shadow);
    --plm-card-text-size: clamp(1rem, 1.15vw, 1.22rem);
    --plm-card-text-line-height: 1.25;
    --plm-card-step-text-size: clamp(1.05rem, 1.35vw, 1.45rem);

    /* Product Performance / workbench aliases. These intentionally inherit the CC theme. */
    --cc-scoreboard-panel-bg: linear-gradient(145deg, var(--plm-panel-bg), var(--plm-panel-bg-2));
    --cc-scoreboard-panel-border: var(--plm-panel-border-strong);
    --cc-scoreboard-panel-text: var(--plm-text);
    --cc-scoreboard-panel-muted: var(--plm-text-soft);
    --cc-scoreboard-chip-bg: rgba(126, 200, 255, .12);
    --cc-scoreboard-chip-border: var(--plm-panel-border-strong);

    --sms-sidebar-bg: #082944;
    --sms-sidebar-hover-bg: rgba(255, 255, 255, .10);
    --sms-sidebar-text: #ffffff;
    --sms-sidebar-muted-text: rgba(255, 255, 255, .64);
    --sms-sidebar-accent-text: #7EC8FF;
    --sms-sidebar-border: rgba(255, 255, 255, .14);
    --sms-sidebar-radius: 10px;
    --sms-sidebar-item-radius: 6px;
    --sms-sidebar-font-family: var(--sms-app-font-family);
    --sms-sidebar-group-font-size: 11px;
    --sms-sidebar-link-font-size: 13px;
    --sms-sidebar-brand-font-size: 15px;
    --sms-sidebar-group-font-weight: 700;
    --sms-sidebar-link-font-weight: 700;
    --sms-sidebar-brand-font-weight: 700;
    --sms-sidebar-shadow: 0 18px 42px rgba(8, 41, 68, .28);
}

/* Final desktop override: the shared pipeline table declares an 1180px floor
   later in this stylesheet. Operational PO tables must fit their content panel. */
@media (min-width: 821px) {
    .container.fsq-page.dso-operational-order .fsq-pipeline-table-wrap {
        overflow-x: hidden;
    }
    .container.fsq-page.dso-operational-order table.fsq-pipeline-table.dso-operational-table {
        min-width: 0;
        table-layout: fixed;
        width: 100%;
    }
    .container.fsq-page.dso-operational-order .dso-operational-table th,
    .container.fsq-page.dso-operational-order .dso-operational-table td {
        padding: 7px 5px;
    }
    .container.fsq-page.dso-operational-order .dso-operational-table th:nth-child(1) { width: 28%; }
    .container.fsq-page.dso-operational-order .dso-operational-table th:nth-child(2) { width: 4%; }
    .container.fsq-page.dso-operational-order .dso-operational-table th:nth-child(3),
    .container.fsq-page.dso-operational-order .dso-operational-table th:nth-child(4),
    .container.fsq-page.dso-operational-order .dso-operational-table th:nth-child(5),
    .container.fsq-page.dso-operational-order .dso-operational-table th:nth-child(6) { width: 11%; }
    .container.fsq-page.dso-operational-order .dso-operational-table th:nth-child(7) { width: 24%; }
}

/* Dropship operational order: familiar compact Duoplane working surface. */
.container.dso-operational-order .dso-operational-head,
.container.dso-operational-order .dso-operational-actions,
.container.dso-operational-order .dso-operational-po-head,
.container.dso-operational-order .dso-operational-po-tools {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: space-between;
}
.container.dso-operational-order .dso-operational-head h1 { margin: 0; }
.container.dso-operational-order .dso-operational-head p { margin: 4px 0 0; }
.container.dso-operational-order .dso-operational-layout {
    display: grid;
    gap: 18px;
    grid-template-columns: minmax(0, 1fr) minmax(220px, 260px);
    margin-top: 18px;
}
.container.dso-operational-order .dso-operational-main,
.container.dso-operational-order .dso-operational-items,
.container.dso-operational-order .dso-operational-po { min-width: 0; }
.container.dso-operational-order .dso-operational-items,
.container.dso-operational-order .dso-notes,
.container.dso-operational-order .dso-order-facts {
    background: var(--plm-surface);
    border: 1px solid var(--plm-border);
    border-radius: 10px;
    margin-top: 16px;
    padding: 14px;
}
.container.dso-operational-order .dso-operational-po { border-top: 1px solid var(--plm-border); padding: 16px 0; }
.container.dso-operational-order .dso-operational-po-head a { color: var(--plm-accent-bright); font-size: 18px; font-weight: 800; }
.container.dso-operational-order .dso-operational-po-head p { margin: 5px 0; }
.container.dso-operational-order .dso-po-alerts span {
    background: #9aa0a6;
    border-radius: 4px;
    color: #fff;
    display: inline-block;
    font-size: 12px;
    font-weight: 800;
    margin-left: 4px;
    padding: 3px 7px;
}
.container.dso-operational-order .dso-po-alerts .dso-alert-not-sent { background: #f59e0b; }
.container.dso-operational-order .dso-operational-table {
    min-width: 0;
    table-layout: fixed;
}
.container.dso-operational-order .dso-operational-table th,
.container.dso-operational-order .dso-operational-table td {
    padding: 8px 7px;
}
.container.dso-operational-order .dso-operational-table th:nth-child(1) { width: 29%; }
.container.dso-operational-order .dso-operational-table th:nth-child(2) { width: 7%; }
.container.dso-operational-order .dso-operational-table th:nth-child(3),
.container.dso-operational-order .dso-operational-table th:nth-child(4),
.container.dso-operational-order .dso-operational-table th:nth-child(5),
.container.dso-operational-order .dso-operational-table th:nth-child(6) { width: 12%; }
.container.dso-operational-order .dso-operational-table th:nth-child(7) { width: 16%; }
.container.dso-operational-order .dso-operational-table td { vertical-align: top; }
.container.dso-operational-order .dso-operational-table td > span { display: block; font-size: 12px; margin-top: 3px; }
.container.dso-operational-order details.dso-inline-edit { margin-top: 8px; position: relative; }
.container.dso-operational-order details.dso-inline-edit > summary,
.container.dso-operational-order .dso-operational-po-tools summary {
    color: var(--plm-accent-bright);
    cursor: pointer;
    font-weight: 700;
    list-style: none;
}
.container.dso-operational-order details.dso-inline-popover[open] form {
    background: var(--plm-surface-strong);
    border: 1px solid var(--plm-border);
    border-radius: 9px;
    box-shadow: 0 10px 25px rgba(0,0,0,.3);
    min-width: 230px;
    padding: 12px;
    position: absolute;
    z-index: 20;
}
.container.dso-operational-order details form input,
.container.dso-operational-order details form select,
.container.dso-operational-order details form textarea { margin: 6px 0; width: 100%; }
.container.dso-operational-order .dso-routing-repair-list {
    display: grid;
    gap: 8px;
    margin: 10px 0;
}
.container.dso-operational-order .dso-routing-repair {
    background: var(--plm-surface-strong);
    border: 1px solid var(--plm-border);
    border-radius: 9px;
    color: var(--plm-text);
    padding: 10px;
}
.container.dso-operational-order .dso-routing-repair label {
    display: grid;
    gap: 3px;
    font-size: 12px;
    font-weight: 800;
}
.container.dso-operational-order .dso-order-routing-repair {
    align-items: end;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}
.container.dso-operational-order .dso-order-routing-repair > strong { min-width: 14rem; }
.container.dso-operational-order .dso-order-routing-repair > span { color: var(--plm-text-muted); }
.container.dso-operational-order .dso-po-routing-edit { width: 100%; }
.container.dso-operational-order .dso-po-routing-editor {
    align-items: end;
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(140px, .75fr) minmax(180px, 1fr) minmax(140px, .75fr) auto;
    margin-top: 8px;
    width: 100%;
}
.container.dso-operational-order .dso-po-routing-editor .fsq-btn { margin: 6px 0; }
@media (max-width: 720px) {
    .container.dso-operational-order .dso-order-routing-repair,
    .container.dso-operational-order .dso-po-routing-editor {
        align-items: stretch;
        grid-template-columns: 1fr;
    }
    .container.dso-operational-order .dso-order-routing-repair > strong { min-width: 100%; }
    .container.dso-operational-order .dso-po-routing-editor .fsq-btn { width: 100%; }
}
.container.dso-operational-order .dso-order-facts { margin-top: 0; }
.container.dso-operational-order .dso-delete-order { display: flex; justify-content: flex-end; margin: 28px 0 10px; }
.container.dso-operational-order details.dso-operational-shipments {
    border: 1px solid var(--plm-border);
    border-radius: 10px;
    margin-top: 14px;
    overflow: hidden;
}
.container.dso-operational-order details.dso-operational-shipments > summary {
    align-items: center;
    background: var(--plm-surface-strong);
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    list-style: none;
    padding: 12px 14px;
}
.container.dso-operational-order details.dso-operational-shipments > summary::-webkit-details-marker { display: none; }
.container.dso-operational-order details.dso-operational-shipments > summary span { color: var(--plm-text-muted); font-size: 12px; }
.container.dso-operational-order .dso-shipment-disclosure { display: grid; gap: 14px; padding: 14px; }
.container.dso-operational-order .dso-shipment-card { border-top: 1px solid var(--plm-border); padding-top: 14px; }
.container.dso-operational-order .dso-shipment-card:first-child { border-top: 0; padding-top: 0; }
.container.dso-operational-order .dso-shipment-card > header { align-items: flex-start; display: flex; gap: 12px; justify-content: space-between; }
.container.dso-operational-order .dso-shipment-card > header span { display: block; font-size: 12px; margin-top: 3px; }
.container.dso-operational-order .dso-shipment-facts,
.container.dso-operational-order .dso-invoice-totals { display: grid; gap: 8px; margin: 12px 0; }
.container.dso-operational-order .dso-shipment-facts { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.container.dso-operational-order .dso-invoice-totals { grid-template-columns: repeat(5, minmax(0, 1fr)); }
.container.dso-operational-order .dso-shipment-facts div,
.container.dso-operational-order .dso-invoice-totals div { background: var(--plm-surface-strong); border-radius: 7px; padding: 9px; }
.container.dso-operational-order .dso-shipment-facts dt,
.container.dso-operational-order .dso-invoice-totals dt { color: var(--plm-text-muted); font-size: 11px; font-weight: 800; text-transform: uppercase; }
.container.dso-operational-order .dso-shipment-facts dd,
.container.dso-operational-order .dso-invoice-totals dd { font-weight: 800; margin: 4px 0 0; overflow-wrap: anywhere; }
.container.dso-operational-order .dso-invoice-grand-total { border: 1px solid var(--plm-accent-bright); }
.container.dso-operational-order .dso-shipment-lines { min-width: 0; width: 100%; }
.container.dso-operational-order .dso-shipment-lines td > span { display: block; font-size: 12px; margin-top: 3px; }
.container.dso-operational-order .dso-shipment-review { background: rgba(224, 173, 56, .12); border-left: 4px solid #e0ad38; padding: 10px 12px; }
.container.dso-operational-order .dso-shipment-review ul { margin: 6px 0 0; }
.container.dso-operational-order .dso-empty-operational-facts { color: var(--plm-text-muted); margin: 0; }
@media (max-width: 820px) {
    .container.dso-operational-order .dso-operational-layout { grid-template-columns: 1fr; }
    .container.dso-operational-order .dso-order-facts { grid-row: 1; }
    .container.dso-operational-order .dso-operational-actions,
    .container.dso-operational-order .dso-operational-actions form,
    .container.dso-operational-order .dso-operational-actions button { width: 100%; }
    .container.dso-operational-order .dso-shipment-facts,
    .container.dso-operational-order .dso-invoice-totals { grid-template-columns: 1fr; }
}
@media (min-width: 901px) {
    .container.dso-operational-order .dso-operational-table-wrap,
    .container.dso-operational-order .fsq-pipeline-table-wrap { overflow-x: visible; }
}

/* Dropship Operations: scoped Tammy testing workspace. */
.dso-page .dso-testing-workspace{margin-top:1rem}
.dso-page .dso-testing-workspace fieldset{border:1px solid #34799d;border-radius:12px;margin:1rem 0;padding:1rem}
.dso-page .dso-testing-workspace legend{font-size:1.1rem;font-weight:800;padding:0 .4rem;color:#fff}
.dso-page .dso-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem 1rem}
.dso-page .dso-testing-workspace label,.dso-page .dso-store-template label{display:grid;gap:.35rem;font-weight:700;margin:.65rem 0}
.dso-page .dso-testing-workspace input,.dso-page .dso-testing-workspace select,.dso-page .dso-testing-workspace textarea,.dso-page .dso-store-template input{width:100%;max-width:100%;box-sizing:border-box}
.dso-page .dso-testing-workspace .dso-check{display:flex;align-items:flex-start;gap:.55rem}
.dso-page .dso-testing-workspace .dso-check input{width:auto;margin-top:.2rem}
.dso-page .dso-testing-items textarea{min-width:18rem}
.dso-page .dso-testing-items input{min-width:8rem}
.dso-page .dso-draft-meta{color:#9ed8ff}
.dso-page .dso-disabled-actions{margin-top:1rem;padding:.8rem;border-left:4px solid #e0ad38;background:rgba(224,173,56,.12)}
@media (max-width:700px){.dso-page .dso-form-grid{grid-template-columns:1fr}.dso-page .dso-testing-items textarea{min-width:12rem}}

.dso-page .dso-config-section { margin-top: 20px; padding: 18px; border: 1px solid var(--fsq-line); border-radius: 12px; background: rgba(7, 49, 77, .35); }
.dso-page .dso-config-section form { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 12px; align-items: end; margin: 12px 0; }
.dso-page .dso-config-section label { display: grid; gap: 6px; font-weight: 700; }
.dso-page .dso-config-section input, .dso-page .dso-config-section textarea { width: 100%; }
.dso-page .dso-config-section .dso-template-editor { grid-column: 1 / -1; min-height: 260px; }
.dso-page .dso-config-section .dso-template-form { display: block; }
.dso-page .dso-template-form .dso-template-subject,
.dso-page .dso-template-form .dso-template-message { display: block; width: 100%; margin: 12px 0; }
.dso-page .dso-template-form .catalog-rich-editor-shell,
.dso-page .dso-store-template .catalog-rich-editor-shell { display: block; width: 100%; margin-top: 6px; }
.dso-page .dso-template-form .dso-template-footer { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; margin-top: 12px; }
.dso-page .dso-template-form .dso-template-active { display: flex; align-items: center; gap: 8px; margin: 0; }
.dso-page .dso-template-form .dso-template-active input { width: auto; }
.dso-page .dso-provider-contact { align-items: center; border-bottom: 1px solid var(--fsq-line); display: grid; gap: 8px; grid-template-columns: minmax(140px, 1fr) minmax(220px, 1.4fr) minmax(120px, .8fr) auto; padding: 10px 0; }
.dso-page .dso-cc-contact { border-bottom: 1px solid var(--fsq-line); padding: 10px 0; }
.dso-page .dso-cc-contact > div { align-items: center; display: flex; flex-wrap: wrap; gap: 8px; }
.dso-page .dso-cc-contact > form:last-child { margin-top: -4px; }
.dso-page .dso-contact-section .dso-contact-summary { margin-bottom: 4px; }
.dso-page .dso-contact-section .dso-contact-editor { align-items: end; display: grid; gap: 8px; grid-template-columns: minmax(0, 1fr) auto; }
.container.dso-page .dso-contact-section .dso-contact-form { gap: 8px; grid-template-columns: repeat(4, minmax(110px, 1fr)) 70px auto; margin: 0; padding: 4px 0; }
.container.dso-page .dso-contact-section .dso-contact-add-form { grid-template-columns: repeat(4, minmax(110px, 1fr)) 58px auto; margin-bottom: 0; }
.container.dso-page .dso-contact-section .dso-contact-check { align-items: center; align-self: stretch; display: flex; flex-direction: column; font-size: 10px; justify-content: center; margin: 0; text-align: center; }
.container.dso-page .dso-contact-section .dso-contact-check input { min-height: auto; width: auto; }
.container.dso-page .dso-contact-section .dso-contact-retire { display: block; margin: 0 0 4px; }
.container.dso-page .dso-contact-section .dso-contact-retire .fsq-btn { white-space: nowrap; }
.container.dso-page .dso-contact-section .fsq-filter-actions .fsq-btn { min-height: 34px; white-space: nowrap; }
.container.dso-page .dso-delete-vendor-section form { display: block; margin-bottom: 0; }
.dso-page .dso-store-template form { display: block; }
.dso-page .dso-store-template label { margin: 12px 0; }
@media (max-width: 1000px) { .container.dso-page .dso-contact-section .dso-contact-form, .container.dso-page .dso-contact-section .dso-contact-add-form { grid-template-columns: repeat(2, minmax(140px, 1fr)) 58px 58px; } .dso-page .dso-contact-section .dso-contact-editor { grid-template-columns: 1fr; } .container.dso-page .dso-contact-section .dso-contact-retire { margin: 0 0 8px; } }
@media (max-width: 700px) { .dso-page .dso-provider-contact { grid-template-columns: 1fr; } .dso-page .dso-template-form .dso-template-footer { align-items: stretch; flex-direction: column; } .container.dso-page .dso-contact-section .dso-contact-form, .container.dso-page .dso-contact-section .dso-contact-add-form { grid-template-columns: 1fr 1fr; } }

/* Dropship Phase 12A: read-only vendor, report, and settings surfaces. */
.dso-page .dso-vendor-filter { grid-template-columns: minmax(18rem, 1fr) auto; }
.dso-page .dso-brand-link-form { grid-template-columns: minmax(18rem, 1fr) minmax(18rem, 1fr) auto; align-items: end; }
.dso-page .dso-brand-link-form label { min-width: 0; }
.dso-page .dso-brand-link-form select { width: 100%; }
.dso-page .dso-report-grid,
.dso-page .dso-settings-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin: 1rem 0 1.25rem; }
.dso-page .dso-report-grid > a,
.dso-page .dso-settings-grid > article { display: flex; flex-direction: column; gap: .35rem; padding: 1rem; border: 1px solid #3d789d; border-radius: 12px; background: #153f5a; color: #fff; text-decoration: none; }
.dso-page .dso-report-grid > a:hover { border-color: #68c9ff; background: #184a68; }
.dso-page .dso-report-grid strong { font-size: 1.8rem; color: #fff; }
.dso-page .dso-report-grid span { font-weight: 800; }
.dso-page .dso-report-grid small { color: #c4e4f7; }
.dso-page .dso-settings-grid h3 { margin: .1rem 0 .6rem; }
.dso-page .dso-settings-grid ol,
.dso-page .dso-settings-grid ul { margin: .25rem 0; padding-left: 1.4rem; }
.dso-page .dso-settings-grid li { margin: .4rem 0; }
.dso-page .dso-settings-grid code { color: #e5f6ff; overflow-wrap: anywhere; }
.dso-page .dso-vendor-detail .dso-settings-grid { margin-top: .25rem; }
@media (max-width: 720px) {
    .dso-page .dso-report-grid,
    .dso-page .dso-settings-grid { grid-template-columns: 1fr; }
    .dso-page .dso-vendor-filter,
    .dso-page .dso-brand-link-form { grid-template-columns: 1fr; }
}

html,
body {
    margin: 0 !important;
    padding: 0 !important;
    background: var(--sms-page-bg) !important;
}

body,
.container,
input,
select,
textarea,
button,
.button-link,
table,
th,
td,
label,
p,
div,
span {
    font-family: var(--cc-font-family) !important;
}

body {
    color: var(--sms-field-text) !important;
}

/* Sitewide page transition indicator for slower server refreshes. */
.sms-page-working {
    align-items: center;
    background: rgba(6, 35, 58, .42);
    bottom: 0;
    display: none;
    justify-content: center;
    left: 0;
    pointer-events: none;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 5000;
}

.sms-page-working.is-visible {
    display: flex;
}

.sms-page-working-card {
    align-items: center;
    background: rgba(8, 41, 68, .96);
    border: 1px solid rgba(126, 200, 255, .55);
    border-radius: 12px;
    box-shadow: 0 24px 60px rgba(0, 0, 0, .28);
    color: #ffffff;
    display: inline-flex;
    gap: 12px;
    min-height: 52px;
    padding: 0 18px;
}

.sms-page-working-spinner {
    animation: smsWorkingSpin .72s linear infinite;
    border: 3px solid rgba(126, 200, 255, .28);
    border-top-color: #7EC8FF;
    border-radius: 999px;
    flex: 0 0 auto;
    height: 22px;
    width: 22px;
}

.sms-page-working-text {
    font-size: 14px;
    font-weight: 900;
    letter-spacing: .02em;
}

@keyframes smsWorkingSpin {
    to {
        transform: rotate(360deg);
    }
}

/* Main content shell */
.container {
    width: auto !important;
    max-width: none !important;
    min-height: calc(100vh - 42px);
    margin: 18px 18px 18px calc(var(--sms-shell-sidebar) + 18px) !important;
    padding: calc(var(--sms-shell-topbar) + 26px) 28px 32px !important;
    box-sizing: border-box !important;
    border-radius: 16px !important;
    background: linear-gradient(180deg, var(--sms-dark-blue), var(--sms-dark-blue-2)) !important;
    border: 1px solid var(--sms-dark-border) !important;
    box-shadow: var(--sms-shadow) !important;
    color: var(--sms-white) !important;
}

.container h1,
.container h2,
.container h3,
.container h4,
.container h5,
.container h6 {
    color: var(--sms-white) !important;
    letter-spacing: -.025em;
}

.container p,
.container li,
.container td,
.container label,
.container .small,
.container .sub,
.container .help,
.container .sales-help,
.container .source-meta,
.container .section-note,
.container .form-note,
.container .description-note,
.container .price-note,
.container .gp-note,
.container .tiny-note,
.container [style*="color: #333"],
.container [style*="color:#333"],
.container [style*="color: rgb(51, 51, 51)"],
.container [style*="color: #555"],
.container [style*="color:#555"] {
    color: var(--sms-soft-white) !important;
    opacity: 1 !important;
}

.container strong,
.container b,
.container .value,
.container .summary-value,
.container .metric-value,
.container .stat-value,
.container .kpi-value,
.container .status-percent,
.container [id*="statusPercent"],
.container [id*="StatusPercent"] {
    color: var(--sms-white) !important;
}

.container a {
    color: var(--sms-light-blue) !important;
}

/* Hide old top-tab deck after the sidebar shell is active. */
.tabs,
.nav-deck {
    display: none !important;
}

/* Sidebar */
.sms-cc-sidebar {
    position: fixed;
    left: 16px;
    top: 16px;
    bottom: 16px;
    width: calc(var(--sms-shell-sidebar) - 32px);
    z-index: 999;
    display: flex;
    flex-direction: column;
    background: var(--sms-sidebar-bg);
    color: var(--sms-sidebar-text);
    font-family: var(--sms-sidebar-font-family);
    border: 1px solid var(--sms-sidebar-border);
    border-radius: var(--sms-sidebar-radius);
    box-shadow: var(--sms-sidebar-shadow);
    overflow: hidden;
}

.sms-cc-brand {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
    padding: 14px 13px 10px;
    min-height: 72px;
    border-bottom: 1px solid var(--sms-sidebar-border);
    background: transparent;
}

.sms-cc-logo {
    width: 190px;
    max-width: 100%;
    height: auto;
    object-fit: contain;
    display: block;
    background: transparent;
    border-radius: 0;
}

.sms-cc-brand-title {
    margin-left: 34px;
    font-size: var(--sms-sidebar-brand-font-size);
    line-height: 1.15;
    font-weight: var(--sms-sidebar-brand-font-weight);
    letter-spacing: -.01em;
    color: var(--sms-sidebar-text);
    white-space: nowrap;
}

.sms-cc-nav {
    flex: 1 1 auto;
    padding: 8px 10px 14px;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: rgba(126, 200, 255, .42) transparent;
}

.sms-cc-nav::-webkit-scrollbar {
    width: 7px;
}

.sms-cc-nav::-webkit-scrollbar-thumb {
    background: rgba(126, 200, 255, .34);
    border-radius: 999px;
}

.sms-cc-dashboard-link {
    margin-bottom: 2px;
}

.sms-cc-nav-divider {
    height: 1px;
    margin: 7px 4px 10px;
    background: var(--sms-sidebar-border);
}

.sms-cc-nav-group {
    margin-bottom: 9px;
    border-radius: 14px;
}

.sms-cc-nav-summary {
    list-style: none;
    cursor: pointer;
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    min-height: 34px;
    padding: 8px 9px;
    border-radius: var(--sms-sidebar-item-radius);
    color: var(--sms-sidebar-accent-text);
    font-size: var(--sms-sidebar-group-font-size);
    font-weight: var(--sms-sidebar-group-font-weight);
    letter-spacing: .08em;
    text-transform: uppercase;
    border: 1px solid transparent;
    background: transparent;
    user-select: none;
    transition: background .15s ease, color .15s ease, border-color .15s ease, box-shadow .15s ease;
}

.sms-cc-nav-summary::-webkit-details-marker {
    display: none;
}

.sms-cc-nav-summary:hover,
.sms-cc-nav-group.active > .sms-cc-nav-summary:hover,
.sms-cc-nav-group[open] > .sms-cc-nav-summary:hover {
    background: var(--sms-sidebar-hover-bg) !important;
    border-color: var(--sms-sidebar-border) !important;
    color: var(--sms-sidebar-text) !important;
    box-shadow: none !important;
}

.sms-cc-nav-group.active > .sms-cc-nav-summary,
.sms-cc-nav-group[open] > .sms-cc-nav-summary {
    background: transparent;
    border-color: transparent;
    color: var(--sms-sidebar-accent-text);
    box-shadow: none;
}

.sms-cc-summary-icon,
.sms-cc-nav-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: currentColor;
}

.sms-cc-summary-icon {
    width: 22px;
    height: 22px;
    color: var(--sms-sidebar-accent-text);
}

.sms-cc-summary-icon svg {
    width: 18px;
    height: 18px;
    display: block;
    fill: currentColor;
}

.sms-cc-nav-summary:hover .sms-cc-summary-icon {
    color: var(--sms-sidebar-text);
}

.sms-cc-summary-title {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.sms-cc-summary-arrow {
    font-size: 16px;
    line-height: 1;
    transform: rotate(-90deg);
    transition: transform .15s ease;
    opacity: .85;
}

.sms-cc-nav-group[open] .sms-cc-summary-arrow {
    transform: rotate(0deg);
}

.sms-cc-nav-items {
    display: grid;
    gap: 4px;
    padding: 8px 0 0 22px;
}

.sms-cc-nav-link {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr) auto;
    align-items: center;
    gap: 8px;
    min-height: 34px;
    padding: 6px 8px;
    border-radius: var(--sms-sidebar-item-radius);
    color: var(--sms-sidebar-text) !important;
    text-decoration: none !important;
    font-size: var(--sms-sidebar-link-font-size);
    font-weight: var(--sms-sidebar-link-font-weight);
    border: 1px solid transparent;
    background: transparent;
    transition: background .14s ease, color .14s ease, transform .14s ease, box-shadow .14s ease, border-color .14s ease;
}

.sms-cc-nav-items .sms-cc-nav-link {
    min-height: 32px;
    padding-left: 4px;
}

.sms-cc-nav-link:hover {
    background: var(--sms-sidebar-hover-bg);
    border-color: var(--sms-sidebar-border);
    transform: translateY(-1px);
}

.sms-cc-nav-link.active {
    color: var(--sms-sidebar-text) !important;
    background: rgba(126, 200, 255, .12);
    border-color: rgba(126, 200, 255, .34);
    box-shadow: none;
}

.sms-cc-nav-link.disabled {
    opacity: .54;
    cursor: not-allowed;
}

.sms-cc-nav-link.disabled:hover {
    transform: none;
    box-shadow: none;
    background: transparent;
    border-color: transparent;
}

.sms-cc-nav-icon {
    width: 24px;
    height: 24px;
    border-radius: 6px;
    background: transparent;
    border: 1px solid transparent;
    color: var(--sms-sidebar-text);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .02em;
}

.sms-cc-nav-icon svg,
.sms-cc-nav-icon svg path,
.sms-cc-summary-icon svg path {
    fill: currentColor !important;
    color: currentColor !important;
    stroke: none !important;
}

.sms-cc-nav-icon svg {
    width: 15px !important;
    height: 15px !important;
    display: block !important;
    flex: 0 0 auto;
    overflow: visible;
}

.sms-cc-nav-label {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-transform: none;
}

.sms-cc-dashboard-link .sms-cc-nav-label,
.sms-cc-nav-summary .sms-cc-summary-title {
    text-transform: uppercase;
}

.sms-cc-nav-items .sms-cc-nav-link .sms-cc-nav-label {
    text-transform: none !important;
}

.sms-cc-coming-soon {
    font-size: 9px;
    text-transform: uppercase;
    letter-spacing: .08em;
    color: var(--sms-sidebar-muted-text);
    background: transparent;
    border-radius: 999px;
    padding: 3px 0;
    font-weight: 700;
}

.sms-cc-icon-fallback {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 15px !important;
    height: 15px !important;
    color: currentColor !important;
    font-family: "Segoe UI Symbol", "Arial Unicode MS", var(--sms-app-font-family) !important;
    font-size: 15px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
}

/* Top bar */
.sms-cc-topbar {
    position: fixed;
    left: calc(var(--sms-shell-sidebar) + 18px);
    right: 18px;
    top: 18px;
    height: var(--sms-shell-topbar);
    z-index: 998;
    display: grid;
    grid-template-columns: minmax(240px, 1fr) auto auto;
    gap: 14px;
    align-items: center;
    padding: 0 18px;
    box-sizing: border-box;
    background: linear-gradient(180deg, var(--sms-dark-blue), var(--sms-dark-blue-2)) !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-radius: 16px;
    box-shadow: 0 18px 38px rgba(8, 41, 68, .22) !important;
    backdrop-filter: blur(10px);
}

.sms-cc-search {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 0;
}

.sms-cc-search input,
.sms-cc-topbar input[type="search"] {
    margin: 0 !important;
    height: 42px;
    font-size: 14px !important;
    background: var(--cc-field-background) !important;
    color: var(--cc-color-field-text) !important;
    -webkit-text-fill-color: var(--cc-color-field-text) !important;
    border: 1px solid var(--cc-color-field-border) !important;
    border-radius: var(--cc-field-radius) !important;
    box-shadow: inset 0 1px 2px rgba(15,23,42,.06), 0 1px 0 rgba(255,255,255,.80) !important;
}

.sms-cc-search input::placeholder,
.sms-cc-topbar input[type="search"]::placeholder {
    color: var(--sms-field-muted) !important;
    opacity: 1 !important;
    -webkit-text-fill-color: var(--sms-field-muted) !important;
}

.sms-cc-status-pill {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    min-height: 38px;
    padding: 0 13px;
    border-radius: 999px;
    background: rgba(255,255,255,.08) !important;
    border: 1px solid var(--sms-dark-border) !important;
    color: var(--sms-white) !important;
    font-size: 12px;
    font-weight: 850;
    white-space: nowrap;
}

.sms-cc-status-dot {
    width: 9px;
    height: 9px;
    border-radius: 999px;
    background: #22c55e;
    box-shadow: 0 0 0 4px rgba(34,197,94,.14);
}

.sms-cc-store-switcher {
    display: grid;
    grid-template-columns: auto 150px;
    gap: 10px;
    align-items: center;
    margin: 0;
    padding: 7px 9px;
    border-radius: 13px;
    background: linear-gradient(180deg, #dff1ff 0%, #bfe3fb 100%) !important;
    border: 1px solid rgba(126,200,255,.86) !important;
    color: #0f2f4a !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.60), 0 8px 18px rgba(8,41,68,.16) !important;
}

.sms-cc-store-switcher label {
    margin: 0;
    font-size: 11px;
    color: #0f2f4a !important;
    letter-spacing: .08em;
    text-transform: uppercase;
    font-weight: 900;
    opacity: 1 !important;
}

.sms-cc-store-switcher select {
    margin: 0 !important;
    height: 36px;
    padding: 0 10px !important;
    font-weight: 900;
    background: #ffffff !important;
    color: var(--sms-field-text) !important;
    -webkit-text-fill-color: var(--sms-field-text) !important;
    border: 1px solid rgba(126,200,255,.72) !important;
    border-radius: 10px !important;
    box-shadow: inset 0 1px 2px rgba(15,23,42,.06) !important;
}

/* Shared field styling. Editable fields stay light unless explicitly styled as dark helper bubbles. */
input,
select,
textarea,
.container input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.container select,
.container textarea,
.container .wysiwyg,
.container [contenteditable="true"] {
    background: var(--cc-field-background) !important;
    color: var(--cc-color-field-text) !important;
    -webkit-text-fill-color: var(--cc-color-field-text) !important;
    border: 1px solid var(--cc-color-field-border) !important;
    border-radius: var(--cc-field-radius) !important;
    box-shadow: inset 0 1px 2px rgba(15,23,42,.06), 0 1px 0 rgba(255,255,255,.80) !important;
    transition: box-shadow .16s ease, border-color .16s ease, transform .16s ease;
}

.container input::placeholder,
.container textarea::placeholder {
    color: var(--cc-color-field-muted) !important;
    opacity: 1 !important;
    -webkit-text-fill-color: var(--cc-color-field-muted) !important;
}

input:focus,
select:focus,
textarea:focus {
    outline: none !important;
    border-color: var(--cc-color-field-focus) !important;
    box-shadow: 0 0 0 4px rgba(var(--brand-accent-rgb), .18), inset 0 1px 2px rgba(15,23,42,.06) !important;
}

.container input:disabled,
.container select:disabled,
.container textarea:disabled,
.container input[readonly],
.container textarea[readonly] {
    background: var(--cc-field-readonly-background) !important;
    color: #475569 !important;
    -webkit-text-fill-color: #475569 !important;
    opacity: 1 !important;
}

input[type="checkbox"],
input[type="radio"],
.container input[type="checkbox"],
.container input[type="radio"] {
    width: auto !important;
    min-width: 0 !important;
    height: auto !important;
    margin: 0 7px 0 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    accent-color: var(--sms-line-blue);
}

select option,
.container select option {
    color: var(--sms-field-text) !important;
    background: #ffffff !important;
}

/* Buttons */
button,
.button-link,
input[type=submit],
input[type=button] {
    background: linear-gradient(135deg, var(--brand-primary) 0%, var(--brand-accent) 62%, var(--sms-line-blue) 100%) !important;
    color: #ffffff !important;
    border: 1px solid rgba(126,200,255,.18) !important;
    border-radius: 10px !important;
    box-shadow: 0 12px 26px rgba(8,41,68,.25) !important;
    font-family: var(--sms-app-font-family) !important;
    transition: transform .14s ease, box-shadow .14s ease;
}

button:hover,
.button-link:hover,
input[type=submit]:hover,
input[type=button]:hover {
    transform: translateY(-1px);
    box-shadow: 0 14px 28px rgba(var(--brand-primary-rgb), .24) !important;
}

.button-secondary {
    background: linear-gradient(135deg, #475569, #64748b) !important;
}

/* Price comparison subtabs */
.price-mode-tabs {
    display: flex;
    gap: 10px;
    margin: -6px 0 24px;
    flex-wrap: wrap;
}

.price-mode-tab,
.tab {
    padding: 10px 16px;
    border-radius: 12px;
    border: 1px solid var(--sms-dark-border) !important;
    background: rgba(255,255,255,.08) !important;
    color: var(--sms-white) !important;
    text-decoration: none !important;
    font-weight: 900;
    box-shadow: 0 5px 12px rgba(15,23,42,.06);
}

.price-mode-tab.active,
.tab.active,
.category-toggle {
    background: linear-gradient(135deg, var(--brand-primary), var(--brand-accent)) !important;
    color: #fff !important;
    border-color: transparent !important;
}

.price-mode-tab:hover,
.tab:hover {
    background: rgba(255,255,255,.14) !important;
    box-shadow: 0 10px 24px rgba(8,41,68,.22) !important;
}

/* Dark cards and panels */
.container .card:not(.warning):not(.success):not(.error),
.container .summary-card:not(.warning):not(.success):not(.error),
.container .metric-card:not(.warning):not(.success):not(.error),
.container .stat-card:not(.warning):not(.success):not(.error),
.container .kpi-card:not(.warning):not(.success):not(.error),
.container .dashboard-card:not(.warning):not(.success):not(.error),
.container .site-sales-panel,
.container .site-sales-mini,
.container .detail-panel:not(.warning):not(.success):not(.error),
.container .result:not(.warning):not(.success):not(.error),
.container .quote-card:not(.warning):not(.success):not(.error),
.container .price-card:not(.warning):not(.success):not(.error),
.container .utility-card:not(.warning):not(.success):not(.error),
.container .snapshot-card:not(.warning):not(.success):not(.error),
.container .money-card:not(.warning):not(.success):not(.error),
.container .overview-card:not(.warning):not(.success):not(.error),
.container .revenue-card:not(.warning):not(.success):not(.error),
.container .lookup-card:not(.warning):not(.success):not(.error),
.container .summary-box:not(.warning):not(.success):not(.error),
.container .status-card:not(.warning):not(.success):not(.error),
.container .status-box:not(.warning):not(.success):not(.error),
.container .run-status:not(.warning):not(.success):not(.error),
.container .progress-card:not(.warning):not(.success):not(.error),
.container .progress-panel:not(.warning):not(.success):not(.error),
.container .editor-card:not(.warning):not(.success):not(.error),
.container .editor-panel:not(.warning):not(.success):not(.error),
.container .content-card:not(.warning):not(.success):not(.error),
.container .content-panel:not(.warning):not(.success):not(.error),
.container .data-card:not(.warning):not(.success):not(.error),
.container .data-panel:not(.warning):not(.success):not(.error),
.container .info-card:not(.warning):not(.success):not(.error),
.container .info-box:not(.warning):not(.success):not(.error),
.container > section,
.container > article,
.container > fieldset,
.container > details {
    position: relative;
    overflow: hidden;
    background: linear-gradient(145deg, var(--sms-medium-blue) 0%, var(--sms-medium-blue-2) 100%) !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-radius: 18px !important;
    color: var(--sms-white) !important;
    box-shadow: var(--sms-card-shadow) !important;
}

.container .card:not(.warning):not(.success):not(.error)::after,
.container .summary-card:not(.warning):not(.success):not(.error)::after,
.container .metric-card:not(.warning):not(.success):not(.error)::after,
.container .stat-card:not(.warning):not(.success):not(.error)::after,
.container .kpi-card:not(.warning):not(.success):not(.error)::after,
.container .dashboard-card:not(.warning):not(.success):not(.error)::after,
.container .site-sales-mini::after,
.container .detail-panel:not(.warning):not(.success):not(.error)::after,
.container .result:not(.warning):not(.success):not(.error)::after,
.container .quote-card:not(.warning):not(.success):not(.error)::after,
.container .price-card:not(.warning):not(.success):not(.error)::after,
.container .utility-card:not(.warning):not(.success):not(.error)::after,
.container .snapshot-card:not(.warning):not(.success):not(.error)::after,
.container .money-card:not(.warning):not(.success):not(.error)::after,
.container .overview-card:not(.warning):not(.success):not(.error)::after,
.container .revenue-card:not(.warning):not(.success):not(.error)::after,
.container .lookup-card:not(.warning):not(.success):not(.error)::after,
.container .summary-box:not(.warning):not(.success):not(.error)::after,
.container .status-card:not(.warning):not(.success):not(.error)::after,
.container .status-box:not(.warning):not(.success):not(.error)::after,
.container .run-status:not(.warning):not(.success):not(.error)::after,
.container .progress-card:not(.warning):not(.success):not(.error)::after,
.container .progress-panel:not(.warning):not(.success):not(.error)::after,
.container .editor-card:not(.warning):not(.success):not(.error)::after,
.container .editor-panel:not(.warning):not(.success):not(.error)::after,
.container .content-card:not(.warning):not(.success):not(.error)::after,
.container .content-panel:not(.warning):not(.success):not(.error)::after,
.container .data-card:not(.warning):not(.success):not(.error)::after,
.container .data-panel:not(.warning):not(.success):not(.error)::after,
.container .info-card:not(.warning):not(.success):not(.error)::after,
.container .info-box:not(.warning):not(.success):not(.error)::after,
.container > section::after,
.container > article::after,
.container > fieldset::after,
.container > details::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 0;
    height: 3px;
    border-radius: 999px 999px 0 0;
    background: linear-gradient(90deg, var(--brand-accent) 0%, var(--sms-light-blue) 58%, var(--sms-line-blue) 100%);
    opacity: .98;
    pointer-events: none;
}

.container .label,
.container .summary-label,
.container .metric-label,
.container .stat-label,
.container .kpi-label,
.container .card-label,
.container .site-sales-heading,
.container .section-label,
.container .eyebrow,
.container [class*="label"],
.container [class*="heading"] {
    color: var(--sms-light-blue) !important;
    letter-spacing: .08em;
    text-transform: uppercase;
    font-weight: 800;
}

/* Run/status cards: force all text white/readable. */
.container .run-status,
.container .run-status *,
.container .status-card,
.container .status-card *,
.container .status-box,
.container .status-box *,
.container .progress-card,
.container .progress-card *,
.container .progress-panel,
.container .progress-panel *,
.container [id*="RunStatus"],
.container [id*="RunStatus"] *,
.container [id*="runStatus"],
.container [id*="runStatus"] *,
.container [id*="Status"] *,
.container [id*="status"] * {
    color: var(--sms-white) !important;
    opacity: 1 !important;
}

/* Utilities tabs should read like white buttons. */
.container .utility-tabs,
.container .api-tabs,
.container .feed-tabs {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.container .utility-tabs .utility-tab,
.container .api-tabs .api-tab,
.container .feed-tabs .feed-tab,
.container a.utility-tab,
.container button.utility-tab,
.container a.api-tab,
.container button.api-tab {
    background: #ffffff !important;
    color: #1687bd !important;
    -webkit-text-fill-color: #1687bd !important;
    border: 1px solid rgba(126,200,255,.62) !important;
    border-radius: 12px !important;
    box-shadow: 0 8px 18px rgba(8,41,68,.12) !important;
}

.container .utility-tabs .utility-tab.active,
.container .api-tabs .api-tab.active,
.container .feed-tabs .feed-tab.active,
.container a.utility-tab.active,
.container button.utility-tab.active,
.container a.api-tab.active,
.container button.api-tab.active {
    background: #ffffff !important;
    color: #0f6091 !important;
    -webkit-text-fill-color: #0f6091 !important;
    border-left: 4px solid var(--sms-line-blue) !important;
}

/* BC API Pulls helper/filter bubbles and product scope bubbles. */
.container .filter-help > div,
.container .filter-help .filter-bubble,
.container .filter-strip > div,
.container .api-filter-strip > div,
.container .api-filter-row > div,
.container .scope-grid > div,
.container .scope-grid > label,
.container .big-check,
.container .all-check-panel,
.container .mode-pill,
.container .upload-skip-container,
.container .bc-api-bubble,
.container .utility-bubble {
    background: linear-gradient(145deg, var(--sms-medium-blue-3), var(--sms-medium-blue)) !important;
    border: 1px solid rgba(126,200,255,.40) !important;
    border-radius: 14px !important;
    color: var(--sms-white) !important;
    box-shadow: 0 10px 24px rgba(8,41,68,.18) !important;
}

.container .filter-help > div *,
.container .filter-help .filter-bubble *,
.container .filter-strip > div *,
.container .api-filter-strip > div *,
.container .api-filter-row > div *,
.container .scope-grid > div *,
.container .scope-grid > label *,
.container .big-check *,
.container .all-check-panel *,
.container .mode-pill *,
.container .upload-skip-container * {
    color: var(--sms-white) !important;
    opacity: 1 !important;
}

/* If the BC API helper bubbles are actual filter fields, keep them dark with readable text. */
.container .filter-help input,
.container .filter-help select,
.container .filter-strip input,
.container .api-filter-strip input,
.container .api-filter-row input {
    background: linear-gradient(145deg, var(--sms-medium-blue-3), var(--sms-medium-blue)) !important;
    color: var(--sms-white) !important;
    -webkit-text-fill-color: var(--sms-white) !important;
    border: 1px solid rgba(126,200,255,.40) !important;
    box-shadow: none !important;
}

.container .filter-help input::placeholder,
.container .filter-strip input::placeholder,
.container .api-filter-strip input::placeholder,
.container .api-filter-row input::placeholder {
    color: rgba(255,255,255,.78) !important;
    -webkit-text-fill-color: rgba(255,255,255,.78) !important;
    opacity: 1 !important;
}

.container .filter-help code {
    color: var(--sms-white) !important;
    background: rgba(255,255,255,.12) !important;
    border: 1px solid rgba(255,255,255,.14) !important;
    border-radius: 6px !important;
    padding: 1px 4px !important;
}

/* Export field cards in Utilities / API Pulls. */
.container .api-field-card,
.container .upload-api-field-card,
.container .export-field-card,
.container .field-export-card {
    position: relative;
    overflow: hidden;
    background: linear-gradient(145deg, var(--sms-medium-blue-3), var(--sms-medium-blue)) !important;
    color: var(--sms-white) !important;
    border: 1px solid rgba(126,200,255,.42) !important;
    border-radius: 14px !important;
    box-shadow: 0 10px 24px rgba(8,41,68,.16) !important;
}

.container .api-field-card *,
.container .upload-api-field-card *,
.container .export-field-card *,
.container .field-export-card * {
    color: var(--sms-white) !important;
    opacity: 1 !important;
}

.container .api-field-title,
.container .api-include-row,
.container .api-include-row span,
.container .advanced-fields-panel summary,
.container .upload-api-field-card label,
.container .api-field-card label {
    color: var(--sms-white) !important;
    opacity: 1 !important;
}

.container .api-field-card input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.container .api-field-card select,
.container .upload-api-field-card input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.container .upload-api-field-card select,
.container .export-field-card input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.container .export-field-card select,
.container .field-export-card input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.container .field-export-card select {
    background: linear-gradient(180deg, #ffffff 0%, #f3f8fd 100%) !important;
    color: var(--sms-field-text) !important;
    -webkit-text-fill-color: var(--sms-field-text) !important;
    border: 1px solid rgba(126, 200, 255, .58) !important;
    box-shadow: inset 0 1px 2px rgba(15,23,42,.06), 0 1px 0 rgba(255,255,255,.80) !important;
}

.container .api-field-card input::placeholder,
.container .upload-api-field-card input::placeholder,
.container .export-field-card input::placeholder,
.container .field-export-card input::placeholder {
    color: var(--sms-field-muted) !important;
    -webkit-text-fill-color: var(--sms-field-muted) !important;
    opacity: 1 !important;
}

/* Tables */
.container table {
    background: rgba(255,255,255,.04) !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-radius: 14px;
    overflow: hidden;
}

.container th {
    background: linear-gradient(135deg, #082944, #0B5E8E) !important;
    color: #ffffff !important;
    border-bottom: 1px solid var(--sms-dark-border) !important;
}

.container td {
    background: rgba(255,255,255,.035) !important;
    border-bottom: 1px solid rgba(126,200,255,.14) !important;
    color: var(--sms-soft-white) !important;
}

.container tr:hover td {
    background: rgba(126,200,255,.08) !important;
}

/* Progress bars */
.container .bar,
.container .progress,
.container .progress-track {
    background: rgba(255,255,255,.15) !important;
    border-radius: 999px !important;
}

.container .bar-fill,
.container .progress-fill {
    background: linear-gradient(90deg, #0B5E8E, #7EC8FF) !important;
    border-radius: 999px !important;
}

/* Alerts / notes: readable, not white-on-yellow.
   Keep these styles on the alert container only. Do not apply background/border
   to child elements, or dark card pages like B2B Quotes get cream blocks behind text. */
.container .warning {
    background-color: #fff8eb !important;
    border-color: #f0d19a !important;
    border-left-color: #b36b00 !important;
    color: #331f00 !important;
}

.container .success {
    background-color: #eef9f0 !important;
    border-color: #b8dfbf !important;
    border-left-color: #1f7a33 !important;
    color: #0f351a !important;
}

.container .error {
    background-color: #fff5f5 !important;
    border-color: #f0b8b8 !important;
    border-left-color: #b00020 !important;
    color: #3b0a0a !important;
}

.container .warning *,
.container .success *,
.container .error * {
    background-color: transparent !important;
    border-color: inherit;
}

.container .notice:not(.warning):not(.success):not(.error),
.container .alert:not(.warning):not(.success):not(.error) {
    background: linear-gradient(145deg, var(--sms-medium-blue) 0%, var(--sms-medium-blue-2) 100%) !important;
    color: var(--sms-white) !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-radius: 14px !important;
}

/* Sales lookup layout helpers retained from the older inline CSS. */
.grid-2 { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.grid-3 { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 14px; }
.grid-4 { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-top: 20px; }
.sales-form-grid { display: grid; grid-template-columns: minmax(260px, 1.3fr) minmax(220px, .85fr) minmax(200px, .8fr) auto; gap: 14px; align-items: end; }
.sales-button-cell { align-self: end; padding-bottom: 15px; }
.sales-button-cell button { height: 46px; white-space: nowrap; }
.lookup-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; align-items: start; }
.lookup-grid input { margin-bottom: 0; }
.lookup-grid .small { margin-top: 8px; }
.lookup-button-cell { align-self: start; padding-top: 28px; }
.lookup-button-cell button { height: 46px; margin: 0; white-space: nowrap; }
.sales-table-wrap { overflow-x: auto; }
.sales-orders-table { min-width: 1160px; }
.sales-breakdown-table { max-width: 900px; }
.nowrap { white-space: nowrap; }
.custom-date-grid { display: none; }
.custom-date-grid.show { display: grid; }



/* =========================================================
   PERFORMANCE PAGE STYLES
   Controls /performance and the modules rendered by
   dashboard/tabs/performance/template.py.

   The template no longer has its own <style> block. Keep all
   Performance page colors, cards, tabs, status boxes, charts,
   score pills, and tables here.

   Quick edits:
   - Main Performance bubble color: --sms-medium-blue / --sms-medium-blue-2
   - Performance tab buttons: .perf-tab
   - Date buttons: .date-range-button
   - Metric cards: .perf-card
   - Insight cards: .insight-card
   - Chart/table panels: .chart-card / .perf-table
   ========================================================= */

/* Performance top tab row: Overview, GA4, Search Console, etc. */
.container .perf-tabs {
    display: flex;
    gap: 10px;
    margin: 14px 0 24px;
    flex-wrap: wrap;
}

/* Inactive Performance module tabs stay white so they look clickable. */
.container .perf-tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 16px;
    border-radius: 12px;
    background: #ffffff !important;
    color: #1687bd !important;
    -webkit-text-fill-color: #1687bd !important;
    border: 1px solid rgba(126,200,255,.62) !important;
    box-shadow: 0 8px 18px rgba(8,41,68,.12) !important;
    text-decoration: none !important;
    font-weight: 900;
    cursor: pointer;
}

/* Active Performance module tab uses the SMS dark-blue gradient. */
.container .perf-tab.active {
    background: linear-gradient(135deg, var(--brand-primary), var(--brand-accent)) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border-color: rgba(126,200,255,.30) !important;
}

/* Performance tab content sections. JS toggles .active. */
.container .perf-section { display: none; }
.container .perf-section.active { display: block; }

/* Main Performance module bubble/card. This is the big dashboard bubble under the H1. */
.container .option-card {
    position: relative;
    overflow: hidden;
    background: linear-gradient(145deg, var(--sms-medium-blue) 0%, var(--sms-medium-blue-2) 100%) !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-radius: 18px !important;
    color: var(--sms-white) !important;
    box-shadow: var(--sms-card-shadow) !important;
    padding: 16px;
    margin-bottom: 18px;
}

.container .option-card::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 0;
    height: 3px;
    border-radius: 999px 999px 0 0;
    background: linear-gradient(90deg, var(--brand-accent) 0%, var(--sms-light-blue) 58%, var(--sms-line-blue) 100%);
    opacity: .98;
    pointer-events: none;
}

.container .option-card h1,
.container .option-card h2,
.container .option-card h3,
.container .option-card h4,
.container .option-card label,
.container .option-card strong,
.container .option-card b,
.container .option-card .perf-status-title,
.container .option-card .perf-card-value {
    color: var(--sms-white) !important;
}

.container .option-card p,
.container .option-card li,
.container .option-card .small,
.container .option-card .tiny-note,
.container .option-card .perf-card-sub,
.container .option-card .legend,
.container .option-card .legend-item {
    color: var(--sms-soft-white) !important;
    opacity: 1 !important;
}

/* Gold/notice note inside Performance cards. Keeps the warning accent without the white/yellow washout. */
.container .section-note {
    background: rgba(255, 183, 77, .10) !important;
    border: 1px solid rgba(255, 183, 77, .48) !important;
    border-left: 5px solid #DCA24A !important;
    color: var(--sms-white) !important;
    padding: 10px 12px;
    border-radius: 10px;
    margin: 10px 0;
    font-size: 13px;
}

.container .section-note * {
    color: var(--sms-white) !important;
}

/* Tiny helper text under controls and tables. */
.container .tiny-note {
    font-size: 11px;
    color: var(--sms-soft-white) !important;
    margin-top: 4px;
    font-weight: 500;
}

/* Date range control row: 7 Days, 30 Days, 90 Days. */
.container .date-range-buttons {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 8px;
}

/* Inactive date range buttons are white/clickable. */
.container .date-range-button {
    padding: 10px 14px !important;
    border-radius: 10px !important;
    border: 1px solid rgba(126,200,255,.62) !important;
    background: #ffffff !important;
    color: var(--brand-primary) !important;
    -webkit-text-fill-color: var(--brand-primary) !important;
    font-weight: 900 !important;
    box-shadow: 0 5px 12px rgba(15,23,42,.08) !important;
    min-width: 88px;
    cursor: pointer;
}

/* Active date range button uses the Command Center gradient. */
.container .date-range-button.active {
    background: linear-gradient(135deg, var(--brand-primary), var(--brand-accent)) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border-color: transparent !important;
}

/* Layout grid used by the top Performance controls. */
.container .perf-control-grid {
    display: grid;
    grid-template-columns: minmax(320px, 380px) minmax(260px, 1fr);
    gap: 14px;
    align-items: end;
    margin: 12px 0;
}

/* Generic row used for run/refresh buttons. */
.container .top-run-row {
    margin: 10px 0 12px;
    display: flex;
    justify-content: flex-start;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
}

.container .run-performance-button { min-width: 320px; }

/* Run status box shown while the Performance refresh job runs. */
.container .perf-status {
    display: none;
    margin: 18px 0;
    padding: 14px;
    border: 1px solid var(--sms-dark-border) !important;
    border-left: 5px solid var(--sms-light-blue) !important;
    border-radius: 12px;
    background: rgba(255,255,255,.08) !important;
    color: var(--sms-white) !important;
    box-shadow: 0 8px 22px rgba(0,0,0,.12);
}
.container .perf-status.active { display: block; }

/* Progress bar inside the run status box. */
.container .perf-progress-track {
    height: 12px;
    background: rgba(255,255,255,.16) !important;
    border-radius: 999px;
    overflow: hidden;
}
.container .perf-progress-fill {
    height: 100%;
    width: 0%;
    background: linear-gradient(90deg, var(--brand-accent), var(--sms-light-blue)) !important;
    border-radius: 999px;
    transition: width .25s ease;
}

/* Metric card grid used throughout Performance. */
.container .perf-card-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(165px, 1fr));
    gap: 12px;
    margin: 14px 0;
}

/* Individual metric card. */
.container .perf-card {
    position: relative;
    overflow: hidden;
    background: rgba(255,255,255,.08) !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-radius: 14px;
    padding: 14px;
    box-shadow: 0 8px 18px rgba(0,0,0,.12);
    color: var(--sms-white) !important;
}

/* Metric-card top accent line. */
.container .perf-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 5px;
    background: linear-gradient(90deg, var(--brand-accent), var(--sms-line-blue));
}
.container .perf-card.good::before { background: linear-gradient(90deg,#16a34a,#22c55e); }
.container .perf-card.warn::before { background: linear-gradient(90deg,#f59e0b,#fbbf24); }
.container .perf-card.bad::before { background: linear-gradient(90deg,#dc2626,#f97316); }
.container .perf-card.purple::before { background: linear-gradient(90deg,#7c3aed,#a855f7); }

.container .perf-card-label {
    color: var(--sms-light-blue) !important;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .03em;
}
.container .perf-card-value {
    color: var(--sms-white) !important;
    font-size: 28px;
    font-weight: 950;
    margin-top: 4px;
}
.container .perf-card-sub {
    color: var(--sms-soft-white) !important;
    font-size: 12px;
    margin-top: 4px;
}

/* Main Performance two-column and even-grid layouts. */
.container .perf-grid {
    display: grid;
    grid-template-columns: minmax(320px, 1.2fr) minmax(280px, .8fr);
    gap: 16px;
    align-items: start;
    margin-top: 12px;
}
.container .perf-grid-even {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(320px,1fr));
    gap: 16px;
    align-items: start;
    margin-top: 12px;
}

/* Chart/table panel card. */
.container .chart-card {
    min-width: 0;
    overflow-x: auto;
    position: relative;
    background: rgba(255,255,255,.08) !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-radius: 14px;
    padding: 14px;
    color: var(--sms-white) !important;
    box-shadow: 0 8px 18px rgba(0,0,0,.12);
}
.container .chart-card h3 {
    margin-top: 0;
    color: var(--sms-white) !important;
}

/* Insight cards used for quick-read text boxes. */
.container .insight-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 12px;
    margin: 14px 0 18px;
}
.container .insight-card {
    background: rgba(255,255,255,.08) !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-left: 5px solid var(--sms-light-blue) !important;
    border-radius: 12px;
    padding: 12px;
    color: var(--sms-soft-white) !important;
    box-shadow: 0 6px 16px rgba(0,0,0,.12);
}
.container .insight-card.good { border-left-color:#16a34a !important; }
.container .insight-card.warn { border-left-color:#f59e0b !important; }
.container .insight-card.bad { border-left-color:#dc2626 !important; }
.container .insight-card.purple { border-left-color:#7c3aed !important; }
.container .insight-card strong {
    color: var(--sms-white) !important;
    display: block;
    margin-bottom: 4px;
}

/* Bar-list mini chart components. */
.container .bar-list { display: flex; flex-direction: column; gap: 10px; }
.container .bar-row {
    display: grid;
    grid-template-columns: minmax(120px, 240px) 1fr minmax(70px, auto);
    gap: 10px;
    align-items: center;
    font-size: 12px;
}
.container .bar-label {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    color: var(--sms-soft-white) !important;
}
.container .bar-track {
    height: 14px;
    border-radius: 999px;
    background: rgba(255,255,255,.16) !important;
    overflow: hidden;
}
.container .bar-fill {
    height: 100%;
    border-radius: 999px;
    background: linear-gradient(90deg,var(--brand-accent),var(--sms-line-blue)) !important;
    min-width: 2px;
}
.container .bar-fill.green { background:linear-gradient(90deg,#16a34a,#22c55e) !important; }
.container .bar-fill.orange { background:linear-gradient(90deg,#f59e0b,#fbbf24) !important; }
.container .bar-fill.red { background:linear-gradient(90deg,#dc2626,#f97316) !important; }
.container .bar-fill.purple { background:linear-gradient(90deg,#7c3aed,#a855f7) !important; }

/* Merchant Center stacked status bar. */
.container .stacked-bar {
    display: flex;
    height: 22px;
    border-radius: 999px;
    overflow: hidden;
    background: rgba(255,255,255,.16) !important;
    margin: 12px 0 8px;
}
.container .stack-seg { height: 100%; min-width: 2px; }
.container .stack-approved { background:#16a34a; }
.container .stack-limited { background:#f59e0b; }
.container .stack-disapproved { background:#dc2626; }
.container .stack-pending { background:#7c3aed; }
.container .legend {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    font-size: 12px;
    color: var(--sms-soft-white) !important;
    margin-top: 8px;
}
.container .legend-item { display:flex; gap:5px; align-items:center; }
.container .legend-swatch { width:11px; height:11px; border-radius:3px; display:inline-block; }

/* Export/action row inside Performance modules. */
.container .export-row {
    display: flex;
    gap: 10px;
    align-items: center;
    flex-wrap: wrap;
    margin: 8px 0 10px;
}
.container .small-action-button,
.container .section-refresh-button {
    min-width: 0 !important;
    padding: 8px 12px !important;
    font-size: 13px !important;
}
.container .section-refresh-row {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: center;
    flex-wrap: wrap;
    margin: 0 0 12px;
}
.container .section-refresh-row h2 { margin: 0; }

/* Placeholder boxes before data loads. */
.container .coming-soon {
    background: rgba(255,255,255,.08) !important;
    border: 1px dashed var(--sms-dark-border-strong) !important;
    border-radius: 14px;
    padding: 18px;
    color: var(--sms-soft-white) !important;
}
.container .coming-soon strong { color: var(--sms-white) !important; }

/* Small status/score pills used by CWV and schema checks. */
.container .score-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 48px;
    padding: 4px 8px;
    border-radius: 999px;
    font-weight: 900;
    font-size: 12px;
    background: rgba(126,200,255,.18) !important;
    color: var(--sms-white) !important;
}
.container .score-pill.good { background:#dcfce7 !important; color:#166534 !important; }
.container .score-pill.warn { background:#fef3c7 !important; color:#92400e !important; }
.container .score-pill.bad { background:#fee2e2 !important; color:#991b1b !important; }

/* URL list boxes used by CWV/Rich Results. */
.container .url-list-box {
    background: rgba(255,255,255,.08) !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-radius: 12px;
    padding: 10px;
    margin: 10px 0;
    font-size: 12px;
    color: var(--sms-soft-white) !important;
}
.container .url-list-box strong { color: var(--sms-white) !important; }

/* Performance tables. */
.container .perf-table {
    width: 100%;
    border-collapse: collapse;
    background: rgba(255,255,255,.04) !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-radius: 12px;
    overflow: hidden;
}
.container .perf-table th,
.container .perf-table td {
    padding: 8px 10px;
    border-bottom: 1px solid rgba(126,200,255,.14) !important;
    font-size: 12px;
    vertical-align: top;
    overflow-wrap: break-word;
}
.container .perf-table th {
    background: linear-gradient(135deg, var(--brand-primary), var(--brand-accent)) !important;
    color: #fff !important;
    text-align: left;
    font-weight: 900;
}
.container .perf-table td {
    background: rgba(255,255,255,.035) !important;
    color: var(--sms-soft-white) !important;
}
.container .perf-table td.num {
    white-space: nowrap;
    text-align: right;
    font-variant-numeric: tabular-nums;
}
.container .perf-path {
    word-break: break-word;
    max-width: 560px;
}

/* Google Ads term bucket grid. */
.container .ads-term-bucket-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit,minmax(520px,1fr));
    gap: 16px;
    align-items: start;
    margin-top: 12px;
}
.container .ads-term-bucket-grid .chart-card { overflow-x: auto; }
.container .ads-term-bucket-grid .perf-table { min-width: 620px; table-layout: fixed; }
.container .ads-term-bucket-grid .perf-table th:nth-child(1),
.container .ads-term-bucket-grid .perf-table td:nth-child(1) { width: 22%; }
.container .ads-term-bucket-grid .perf-table th:nth-child(2),
.container .ads-term-bucket-grid .perf-table td:nth-child(2) { width: 18%; }
.container .ads-term-bucket-grid .perf-table th:nth-child(3),
.container .ads-term-bucket-grid .perf-table td:nth-child(3) { width: 12%; }
.container .ads-term-bucket-grid .perf-table th:nth-child(4),
.container .ads-term-bucket-grid .perf-table td:nth-child(4) { width: 10%; }
.container .ads-term-bucket-grid .perf-table th:nth-child(5),
.container .ads-term-bucket-grid .perf-table td:nth-child(5) { width: 10%; }
.container .ads-term-bucket-grid .perf-table th:nth-child(6),
.container .ads-term-bucket-grid .perf-table td:nth-child(6) { width: 28%; }

/* Performance responsive layout. */
@media (max-width: 1150px) {
    .container .ads-term-bucket-grid { grid-template-columns: 1fr; }
}

@media (max-width: 1000px) {
    .container .perf-control-grid,
    .container .perf-grid,
    .container .perf-grid-even { grid-template-columns: 1fr; }
    .container .bar-row { grid-template-columns: 1fr; gap: 4px; }
}

@media (max-width: 1100px) {
    :root { --sms-shell-sidebar: 94px; }
    .sms-cc-sidebar { width: 76px; }
    .sms-cc-brand { align-items: center; padding: 15px 10px; }
    .sms-cc-logo { width: 52px; border-radius: 6px; }
    .sms-cc-brand-title,
    .sms-cc-summary-title,
    .sms-cc-coming-soon,
    .sms-cc-nav-label { display: none; }
    .sms-cc-nav-summary { grid-template-columns: 1fr; justify-items: center; padding: 10px 7px; }
    .sms-cc-nav-link { grid-template-columns: 1fr; justify-items: center; padding: 8px 7px; }
    .grid-2,
    .grid-3,
    .grid-4,
    .sales-form-grid,
    .sales-hero {
        grid-template-columns: 1fr;
    }
}

.container.plm-pricing-update-page .plm-button,
.container.plm-pricing-update-page a.plm-button,
.container.plm-pricing-update-page button.plm-button,
.container.plm-pricing-update-page .plm-actions-row .plm-button,
.container.plm-pricing-update-page .plm-filter-actions .plm-button {
    font-size: .875rem !important;
    height: 36px !important;
    max-height: 36px !important;
    max-width: max-content !important;
    min-height: 36px !important;
    padding: 0 12px !important;
    width: auto !important;
}

@media (max-width: 900px) {
    .lookup-grid { grid-template-columns: 1fr; }
    .lookup-button-cell { padding-top: 0; }
}

@media (max-width: 760px) {
    .sms-cc-sidebar {
        position: static;
        width: auto;
        margin: 12px;
        max-height: none;
    }

    .sms-cc-topbar {
        position: static;
        margin: 12px;
        height: auto;
        grid-template-columns: 1fr;
        padding: 12px;
    }

    .container {
        margin: 12px !important;
        padding: 20px !important;
    }

    .sms-cc-brand { align-items: flex-start; }
    .sms-cc-logo { width: 176px; }
    .sms-cc-brand-title,
    .sms-cc-summary-title,
    .sms-cc-nav-label { display: block; }
    .sms-cc-nav-link { grid-template-columns: 34px minmax(0, 1fr) auto; justify-items: stretch; }
}

/* Dropship Phase 15: guarded test-order workflow and PO execution. */
.container.dso-page .dso-order-actions {
    background: rgba(4, 67, 81, .62);
    border: 1px solid rgba(52, 211, 153, .55);
    border-radius: 10px;
    margin: 0 0 16px;
    padding: 14px 16px;
}

.container.dso-page .dso-order-actions form,
.container.dso-page .dso-order-state-actions,
.container.dso-page .dso-po-card-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.container.dso-page .dso-confirm-remove {
    align-items: center;
    display: inline-flex;
    gap: 7px;
    margin-left: auto;
}

.container.dso-page .fsq-btn-danger {
    background: #9f2630 !important;
    border-color: #e56b75 !important;
    color: #fff !important;
}

.container.dso-page .dso-po-sidebar-section form {
    margin-top: 8px;
}

.container.dso-page .dso-po-sidebar-section .fsq-btn {
    max-width: 100%;
    white-space: normal;
    width: 100%;
}

@media (max-width: 760px) {
    .container.dso-page .dso-confirm-remove {
        margin-left: 0;
        width: 100%;
    }
}

/* =========================================================
   SAFE UNIVERSAL MODULE BUTTON OVERRIDES
   Added after the Performance page cleanup.

   Purpose:
   - Inactive module buttons use medium blue.
   - Active/selected module buttons use the brighter SMS gradient.
   - This only affects tab/date/filter-style controls, not the page bubbles.
   ========================================================= */
.container .perf-tab:not(.active),
.container .date-range-button:not(.active),
.container .price-mode-tab:not(.active),
.container .utility-tab:not(.active),
.container .api-tab:not(.active),
.container .feed-tab:not(.active),
.container .module-tab:not(.active),
.container .section-tab:not(.active) {
    background: linear-gradient(145deg, var(--sms-medium-blue-3), var(--sms-medium-blue)) !important;
    color: var(--sms-white) !important;
    -webkit-text-fill-color: var(--sms-white) !important;
    border: 1px solid rgba(126,200,255,.42) !important;
    box-shadow: 0 8px 18px rgba(8,41,68,.18) !important;
}

.container .perf-tab.active,
.container .date-range-button.active,
.container .price-mode-tab.active,
.container .utility-tab.active,
.container .api-tab.active,
.container .feed-tab.active,
.container .module-tab.active,
.container .section-tab.active {
    background: linear-gradient(135deg, var(--brand-primary), var(--brand-accent), var(--sms-line-blue)) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border: 1px solid rgba(126,200,255,.55) !important;
    box-shadow: 0 10px 22px rgba(8,41,68,.24) !important;
}

.container .perf-tab:hover,
.container .date-range-button:hover,
.container .price-mode-tab:hover,
.container .utility-tab:hover,
.container .api-tab:hover,
.container .feed-tab:hover,
.container .module-tab:hover,
.container .section-tab:hover {
    transform: translateY(-1px);
    box-shadow: 0 12px 24px rgba(8,41,68,.26) !important;
}



/* =========================================================
   QUICK READ SUMMARY METRICS
   Used by Performance > Overview quick-read cards.
   Keeps Search Console summary values compact so cards do not overlap.
   ========================================================= */
.container .insight-card {
    min-width: 0;
    overflow: hidden;
    overflow-wrap: anywhere;
    word-break: normal;
    line-height: 1.28;
}

.container .insight-card .insight-title,
.container .insight-card .insight-reason {
    display: block;
    min-width: 0;
    overflow-wrap: anywhere;
    word-break: normal;
}

.container .insight-metrics {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 6px;
    margin-top: 8px;
}

.container .insight-metrics span {
    display: block;
    min-width: 0;
    padding: 6px 7px;
    border-radius: 8px;
    background: rgba(255,255,255,.08);
    color: var(--sms-white) !important;
    overflow: hidden;
}

.container .insight-metrics b {
    display: block;
    color: var(--sms-light-blue) !important;
    font-size: 9px;
    line-height: 1;
    margin-bottom: 3px;
    letter-spacing: .05em;
    text-transform: uppercase;
}


/* =========================================================
   COMPARE PRICING PAGE CLEANUP
   Formerly named Price Check in the UI.
   Keep all Compare Pricing visual styling here, not inside page templates.
   ========================================================= */

/* Rename/template note: the page HTML may still use price-mode classes.
   These styles make that page match the newer Command Center layout. */

.container .price-mode-tabs {
    display: flex;
    gap: 10px;
    margin: -6px 0 24px;
    flex-wrap: wrap;
}

.container .price-mode-tab,
.container a.price-mode-tab,
.container button.price-mode-tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 10px 16px !important;
    border-radius: 12px !important;
    background: linear-gradient(145deg, var(--sms-medium-blue-3), var(--sms-medium-blue)) !important;
    color: var(--sms-white) !important;
    -webkit-text-fill-color: var(--sms-white) !important;
    border: 1px solid rgba(126,200,255,.42) !important;
    box-shadow: 0 8px 18px rgba(8,41,68,.18) !important;
    text-decoration: none !important;
    font-weight: 900 !important;
    cursor: pointer;
}

.container .price-mode-tab.active,
.container a.price-mode-tab.active,
.container button.price-mode-tab.active {
    background: linear-gradient(135deg, var(--brand-primary), var(--brand-accent), var(--sms-line-blue)) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border: 1px solid rgba(126,200,255,.55) !important;
    box-shadow: 0 10px 22px rgba(8,41,68,.24) !important;
}

/* Main Compare Pricing form area. This intentionally targets the legacy
   compare-pricing screen by its known controls without requiring a template edit. */
.container:has(.price-mode-tabs) > form,
.container:has(.price-mode-tabs) .price-compare-form,
.container:has(.price-mode-tabs) .compare-pricing-form {
    position: relative;
    overflow: visible;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

/* Inputs/selects are intentionally light so editable fields are immediately visible. */
.container:has(.price-mode-tabs) input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.container:has(.price-mode-tabs) select,
.container:has(.price-mode-tabs) textarea {
    background: linear-gradient(180deg, #ffffff 0%, #f3f8fd 100%) !important;
    color: var(--sms-field-text) !important;
    -webkit-text-fill-color: var(--sms-field-text) !important;
    border: 1px solid rgba(126, 200, 255, .62) !important;
    border-radius: 10px !important;
    box-shadow: inset 0 1px 2px rgba(15,23,42,.06), 0 1px 0 rgba(255,255,255,.80) !important;
}

.container:has(.price-mode-tabs) input::placeholder,
.container:has(.price-mode-tabs) textarea::placeholder {
    color: var(--sms-field-muted) !important;
    -webkit-text-fill-color: var(--sms-field-muted) !important;
    opacity: 1 !important;
}

/* Price/check comparison helper panels and result cards should use the same card language as Performance. */
.container:has(.price-mode-tabs) .result:not(.warning):not(.success):not(.error),
.container:has(.price-mode-tabs) .price-card:not(.warning):not(.success):not(.error),
.container:has(.price-mode-tabs) .comparison-card:not(.warning):not(.success):not(.error),
.container:has(.price-mode-tabs) .competitor-card:not(.warning):not(.success):not(.error),
.container:has(.price-mode-tabs) .run-status:not(.warning):not(.success):not(.error),
.container:has(.price-mode-tabs) .status-box:not(.warning):not(.success):not(.error) {
    position: relative;
    overflow: hidden;
    background: linear-gradient(145deg, var(--sms-medium-blue) 0%, var(--sms-medium-blue-2) 100%) !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-radius: 18px !important;
    color: var(--sms-white) !important;
    box-shadow: var(--sms-card-shadow) !important;
}

.container:has(.price-mode-tabs) .run-status,
.container:has(.price-mode-tabs) .run-status *,
.container:has(.price-mode-tabs) .status-box,
.container:has(.price-mode-tabs) .status-box *,
.container:has(.price-mode-tabs) [id*="runStatus"],
.container:has(.price-mode-tabs) [id*="runStatus"] *,
.container:has(.price-mode-tabs) [id*="RunStatus"],
.container:has(.price-mode-tabs) [id*="RunStatus"] * {
    color: var(--sms-white) !important;
    opacity: 1 !important;
}

/* Small notes on the Compare Pricing page were previously dark gray on dark blue. */
.container:has(.price-mode-tabs) .small,
.container:has(.price-mode-tabs) .tiny-note,
.container:has(.price-mode-tabs) .gp-note,
.container:has(.price-mode-tabs) .price-note,
.container:has(.price-mode-tabs) .muted,
.container:has(.price-mode-tabs) p {
    color: var(--sms-soft-white) !important;
    opacity: 1 !important;
}

/* Labels and main headings stay bright white/readable. */
.container:has(.price-mode-tabs) label,
.container:has(.price-mode-tabs) h1,
.container:has(.price-mode-tabs) h2,
.container:has(.price-mode-tabs) h3,
.container:has(.price-mode-tabs) strong,
.container:has(.price-mode-tabs) b {
    color: var(--sms-white) !important;
}

/* Keep the run-status/progress bubble compact like the Performance status card. */
.container:has(.price-mode-tabs) .run-status,
.container:has(.price-mode-tabs) .status-box,
.container:has(.price-mode-tabs) [id*="runStatus"],
.container:has(.price-mode-tabs) [id*="RunStatus"] {
    padding: 14px !important;
    border-left: 5px solid var(--sms-light-blue) !important;
}

/* Legacy progress bars on Compare Pricing. */
.container:has(.price-mode-tabs) progress {
    width: 100%;
    height: 10px;
    accent-color: var(--sms-line-blue);
}

.container:has(.price-mode-tabs) .progress-track,
.container:has(.price-mode-tabs) .run-progress,
.container:has(.price-mode-tabs) .bar {
    background: rgba(255,255,255,.16) !important;
    border-radius: 999px !important;
    overflow: hidden;
}

.container:has(.price-mode-tabs) .progress-fill,
.container:has(.price-mode-tabs) .run-bar-fill,
.container:has(.price-mode-tabs) .bar-fill {
    background: linear-gradient(90deg, var(--brand-accent), var(--sms-light-blue)) !important;
    border-radius: 999px !important;
}

@media (max-width: 1000px) {
    .container:has(.price-mode-tabs) .grid-2,
    .container:has(.price-mode-tabs) .grid-3,
    .container:has(.price-mode-tabs) .lookup-grid {
        grid-template-columns: 1fr !important;
    }
}

/* =========================================================
   FilingSupplies Custom Quote Manager
   Scoped to .fsq-* so this workflow follows the shared Command Center theme.
   ========================================================= */
.container.fsq-page .fsq-head,
.container.fsq-page .fsq-detail-head,
.container.fsq-page .fsq-form-head {
    align-items: flex-start;
    display: flex;
    gap: 22px;
    justify-content: space-between;
    margin-bottom: 22px;
}

.container.fsq-page .fsq-sync-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.container.fsq-page .fsq-sync-actions form {
    margin: 0;
}

.container.fsq-page .fsq-kicker,
.container.fsq-page .fsq-type-code {
    color: var(--sms-light-blue) !important;
    display: block;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.container.fsq-page .fsq-title,
.container.fsq-page .fsq-form-head h1,
.container.fsq-page .fsq-detail-head h1 {
    font-size: clamp(26px, 3vw, 38px);
    line-height: 1.08;
    margin: 5px 0 7px;
}

.container.fsq-page .fsq-sub,
.container.fsq-page .fsq-form-head p,
.container.fsq-page .fsq-detail-head p {
    color: var(--sms-soft-white) !important;
    margin: 0;
    max-width: 850px;
}

.container.fsq-page .fsq-btn {
    align-items: center;
    background: linear-gradient(135deg, var(--sms-line-blue), var(--brand-accent));
    border: 1px solid var(--sms-dark-border-strong);
    border-radius: 10px;
    box-shadow: 0 8px 18px rgba(0, 0, 0, .2);
    color: var(--sms-white) !important;
    cursor: pointer;
    display: inline-flex;
    font-size: 14px;
    font-weight: 900;
    justify-content: center;
    min-height: 42px;
    padding: 0 16px;
    text-decoration: none;
}

.container.fsq-page .fsq-btn:hover {
    filter: brightness(1.08);
    transform: translateY(-1px);
}

.container.fsq-page .fsq-btn-secondary {
    background: rgba(126, 200, 255, .12);
    border-color: var(--sms-dark-border-strong);
    color: var(--sms-light-blue) !important;
}

.container.fsq-page .fsq-btn-small {
    font-size: 12px;
    min-height: 34px;
    padding: 0 11px;
}

.container.fsq-page .fsq-notice {
    background: rgba(22, 163, 74, .2);
    border: 1px solid rgba(134, 239, 172, .55);
    border-radius: 12px;
    color: #dcfce7;
    margin-bottom: 18px;
    padding: 12px 14px;
}

.container.fsq-page .fsq-notice.fsq-error {
    background: rgba(185, 28, 28, .22);
    border-color: rgba(252, 165, 165, .58);
    color: #fee2e2;
}

.container.fsq-page .fsq-type-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 20px;
}

.container.fsq-page .fsq-type-grid-three {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.container.fsq-page .fsq-type-card {
    background: linear-gradient(145deg, var(--sms-medium-blue-3), var(--sms-medium-blue-2));
    border: 1px solid var(--sms-dark-border);
    border-radius: 15px;
    box-shadow: var(--sms-card-shadow);
    color: var(--sms-white) !important;
    display: flex;
    flex-direction: column;
    min-height: 158px;
    padding: 17px;
    position: relative;
    text-decoration: none;
    transition: border-color .15s ease, transform .15s ease;
}

.container.fsq-page .fsq-type-card:hover {
    border-color: var(--sms-dark-border-strong);
    transform: translateY(-2px);
}

.container.fsq-page .fsq-type-card strong {
    font-size: 19px;
    margin: 8px 0 5px;
}

.container.fsq-page .fsq-type-card > span:not(.fsq-type-code):not(.fsq-type-action):not(.fsq-type-count) {
    color: var(--sms-soft-white) !important;
    font-size: 13px;
    line-height: 1.4;
}

.container.fsq-page .fsq-type-action {
    color: var(--sms-light-blue) !important;
    font-size: 13px;
    font-weight: 900;
    margin-top: auto;
    padding-top: 13px;
}

.container.fsq-page .fsq-type-count {
    background: rgba(8, 41, 68, .72);
    border: 1px solid var(--sms-dark-border);
    border-radius: 999px;
    color: var(--sms-soft-white) !important;
    font-size: 11px;
    padding: 4px 8px;
    position: absolute;
    right: 13px;
    top: 13px;
}

.container.fsq-page .fsq-metrics {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(4, minmax(130px, 1fr));
    margin-bottom: 20px;
}

.container.fsq-page .fsq-metric {
    background: rgba(22, 58, 88, .82);
    border: 1px solid var(--sms-dark-border);
    border-radius: 13px;
    padding: 14px 16px;
}

.container.fsq-page .fsq-metric-link {
    text-decoration: none;
}

.container.fsq-page .fsq-metric strong {
    display: block;
    font-size: 25px;
}

.container.fsq-page .fsq-metric span {
    color: var(--sms-muted-white) !important;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.container.fsq-page .fsq-board {
    align-items: start;
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(4, minmax(250px, 1fr));
    overflow-x: auto;
    padding-bottom: 8px;
}

.container.fsq-page .fsq-column {
    background: rgba(6, 35, 58, .52);
    border: 1px solid rgba(126, 200, 255, .16);
    border-radius: 14px;
    min-height: 210px;
    padding: 12px;
}

.container.fsq-page .fsq-column-head {
    align-items: center;
    display: flex;
    font-weight: 900;
    gap: 10px;
    justify-content: space-between;
    margin-bottom: 10px;
}

.container.fsq-page .fsq-count,
.container.fsq-page .fsq-badge {
    background: rgba(126, 200, 255, .14);
    border: 1px solid var(--sms-dark-border);
    border-radius: 999px;
    color: var(--sms-light-blue) !important;
    font-size: 12px;
    font-weight: 900;
    padding: 5px 9px;
}

.container.fsq-page .fsq-card {
    background: linear-gradient(145deg, var(--sms-medium-blue), var(--sms-medium-blue-2));
    border: 1px solid var(--sms-dark-border);
    border-radius: 11px;
    box-shadow: 0 8px 18px rgba(0, 0, 0, .16);
    color: var(--sms-white) !important;
    display: block;
    margin-bottom: 10px;
    padding: 13px;
    text-decoration: none;
}

.container.fsq-page .fsq-card:hover {
    border-color: var(--sms-dark-border-strong);
}

.container.fsq-page .fsq-card-top,
.container.fsq-page .fsq-file {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: space-between;
}

.container.fsq-page .fsq-quote,
.container.fsq-page .fsq-card-type {
    color: var(--sms-light-blue) !important;
    font-size: 12px;
    font-weight: 900;
}

.container.fsq-page .fsq-card-type {
    margin-top: 8px;
}

.container.fsq-page .fsq-type-grid-compact {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.container.fsq-page .fsq-type-grid-compact .fsq-type-card {
    min-height: 108px;
}

.container.fsq-page .fsq-stage-summary {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 14px;
}

.container.fsq-page .fsq-stage-chip {
    align-items: center;
    background: rgba(22, 58, 88, .76);
    border: 1px solid var(--sms-dark-border);
    border-radius: 999px;
    color: var(--sms-soft-white) !important;
    display: inline-flex;
    font-size: 12px;
    font-weight: 800;
    gap: 8px;
    min-height: 36px;
    padding: 5px 8px 5px 13px;
    text-decoration: none;
}

.container.fsq-page .fsq-stage-chip strong {
    align-items: center;
    background: rgba(126, 200, 255, .16);
    border-radius: 999px;
    color: var(--sms-light-blue) !important;
    display: inline-flex;
    justify-content: center;
    min-height: 24px;
    min-width: 24px;
    padding: 0 6px;
}

.container.fsq-page .fsq-stage-chip.active,
.container.fsq-page .fsq-stage-chip:hover {
    background: rgba(26, 117, 178, .4);
    border-color: var(--sms-light-blue);
}

.container.fsq-page .fsq-pipeline-panel {
    background: rgba(6, 35, 58, .52);
    border: 1px solid rgba(126, 200, 255, .22);
    border-radius: 15px;
    overflow: hidden;
}

.container.fsq-page .fsq-pipeline-filters {
    align-items: end;
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    padding: 14px;
}

.container.fsq-page .fsq-pipeline-filters label {
    color: var(--sms-muted-white) !important;
    display: block;
    font-size: 10px;
    font-weight: 900;
    letter-spacing: .06em;
    margin-bottom: 5px;
    text-transform: uppercase;
}

.container.fsq-page .fsq-pipeline-filters input,
.container.fsq-page .fsq-pipeline-filters select {
    background: rgba(4, 31, 52, .9) !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-radius: 8px !important;
    color: var(--sms-white) !important;
    min-height: 40px;
    width: 100%;
}

.container.fsq-page .fsq-filter-search {
    grid-column: span 2;
}

.container.fsq-page .fsq-filter-actions,
.container.fsq-page .fsq-pagination-actions {
    display: flex;
    gap: 8px;
}

.container.fsq-page .fsq-filter-actions .fsq-btn {
    flex: 1;
    min-height: 40px;
    padding: 0 10px;
}

.container.fsq-page .fsq-pagination-bar {
    align-items: center;
    border-top: 1px solid rgba(126, 200, 255, .18);
    color: var(--sms-soft-white) !important;
    display: flex;
    gap: 12px;
    justify-content: space-between;
    padding: 11px 14px;
}

.container.fsq-page .fsq-pagination-top {
    border-bottom: 1px solid rgba(126, 200, 255, .18);
}

.container.fsq-page .fsq-page-link {
    background: rgba(126, 200, 255, .12);
    border: 1px solid var(--sms-dark-border);
    border-radius: 8px;
    color: var(--sms-light-blue) !important;
    font-size: 12px;
    font-weight: 900;
    padding: 7px 11px;
    text-decoration: none;
}

.container.fsq-page .fsq-page-link.disabled {
    opacity: .38;
    pointer-events: none;
}

.container.fsq-page .fsq-pipeline-table-wrap {
    overflow-x: auto;
    width: 100%;
}

.container.fsq-page .fsq-pipeline-table {
    border-collapse: collapse;
    min-width: 1180px;
    table-layout: fixed;
    width: 100%;
}

.container.fsq-page .fsq-pipeline-table th {
    background: rgba(7, 91, 139, .78);
    box-sizing: border-box;
    color: var(--sms-white) !important;
    font-size: 11px;
    letter-spacing: .03em;
    padding: 10px 11px;
    text-align: left;
    text-transform: uppercase;
}

.container.fsq-page .fsq-pipeline-table th:nth-child(1) { width: 130px; }
.container.fsq-page .fsq-pipeline-table th:nth-child(2) { width: 155px; }
.container.fsq-page .fsq-pipeline-table th:nth-child(3) { width: 130px; }
.container.fsq-page .fsq-pipeline-table th:nth-child(4) { width: 170px; }
.container.fsq-page .fsq-pipeline-table th:nth-child(5) { width: 130px; }
.container.fsq-page .fsq-pipeline-table th:nth-child(6) { width: 130px; }
.container.fsq-page .fsq-pipeline-table th:nth-child(7) { width: 155px; }
.container.fsq-page .fsq-pipeline-table th:nth-child(8) { width: 180px; }

.container.fsq-page .fsq-pipeline-table td {
    border-bottom: 1px solid rgba(126, 200, 255, .18);
    box-sizing: border-box;
    color: var(--sms-soft-white) !important;
    font-size: 12px;
    line-height: 1.3;
    overflow-wrap: anywhere;
    padding: 11px;
    vertical-align: top;
}

.container.fsq-page .fsq-pipeline-table tbody tr:nth-child(odd) {
    background: rgba(33, 76, 110, .5);
}

.container.fsq-page .fsq-pipeline-table tbody tr:hover {
    background: rgba(46, 105, 148, .58);
}

.container.fsq-page .fsq-pipeline-table td > strong,
.container.fsq-page .fsq-pipeline-table td > span,
.container.fsq-page .fsq-pipeline-table td > small {
    display: block;
    margin-bottom: 4px;
}

.container.fsq-page .fsq-pipeline-table td > small {
    color: var(--sms-muted-white) !important;
    font-size: 10px;
}

.container.fsq-page .fsq-row-primary {
    color: var(--sms-light-blue) !important;
    display: inline-block;
    font-size: 13px;
    font-weight: 900;
    margin-bottom: 4px;
}

.container.fsq-page .fsq-pipeline-table .fsq-status,
.container.fsq-page .fsq-pipeline-table .fsq-priority {
    display: table;
    margin-bottom: 6px;
    max-width: 100%;
    white-space: normal;
}

.container.fsq-page .fsq-due {
    color: var(--sms-muted-white) !important;
    font-size: 11px;
}

.container.fsq-page .fsq-due-overdue {
    color: #fecaca !important;
    font-weight: 900;
}

.container.fsq-page .fsq-muted {
    color: var(--sms-muted-white) !important;
}

.container.fsq-page .fsq-table-empty {
    padding: 38px !important;
    text-align: center;
}

.container.fsq-page .fsq-sr-only {
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
}

.container.fsq-page .fsq-priority {
    background: rgba(255, 255, 255, .09);
    border-radius: 999px;
    color: var(--sms-soft-white) !important;
    font-size: 10px;
    padding: 4px 7px;
}

.container.fsq-page .fsq-priority.high {
    background: rgba(245, 158, 11, .2);
    color: #fde68a !important;
}

.container.fsq-page .fsq-priority.urgent {
    background: rgba(239, 68, 68, .22);
    color: #fecaca !important;
}

.container.fsq-page .fsq-company {
    font-size: 16px;
    font-weight: 900;
    margin: 4px 0;
}

.container.fsq-page .fsq-contact,
.container.fsq-page .fsq-next,
.container.fsq-page .fsq-empty,
.container.fsq-page .fsq-footer {
    color: var(--sms-muted-white) !important;
    font-size: 12px;
}

.container.fsq-page .fsq-next {
    border-top: 1px solid rgba(126, 200, 255, .14);
    margin-top: 9px;
    padding-top: 9px;
}

.container.fsq-page .fsq-empty {
    padding: 20px 5px;
}

.container.fsq-page .fsq-footer {
    margin-top: 18px;
}

.container.fsq-page .fsq-back {
    color: var(--sms-light-blue) !important;
    display: inline-block;
    font-weight: 900;
    margin-bottom: 17px;
    text-decoration: none;
}

.container.fsq-page .fsq-type-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 18px;
}

.container.fsq-page .fsq-type-tab {
    background: rgba(126, 200, 255, .08);
    border: 1px solid var(--sms-dark-border);
    border-radius: 999px;
    color: var(--sms-soft-white) !important;
    font-size: 12px;
    font-weight: 900;
    padding: 8px 12px;
    text-decoration: none;
}

.container.fsq-page .fsq-type-tab.active {
    background: var(--sms-line-blue);
    color: var(--sms-white) !important;
}

.container.fsq-page .fsq-panel {
    background: linear-gradient(145deg, rgba(29, 70, 104, .92), rgba(16, 46, 73, .94));
    border: 1px solid var(--sms-dark-border);
    border-radius: 15px;
    box-shadow: var(--sms-card-shadow);
    margin-bottom: 15px;
    padding: 20px;
}

.container.fsq-page .fsq-panel h2 {
    font-size: 20px;
    margin: 0 0 15px;
}

.container.fsq-page .fsq-panel-heading {
    align-items: flex-start;
    display: flex;
    gap: 16px;
    justify-content: space-between;
    margin-bottom: 15px;
}

.container.fsq-page .fsq-panel-heading h2 {
    margin-bottom: 5px;
}

.container.fsq-page .fsq-panel-heading p,
.container.fsq-page .fsq-safe-note,
.container.fsq-page .fsq-lookup-status {
    color: var(--sms-muted-white) !important;
    font-size: 12px;
    margin: 0;
}

.container.fsq-page .fsq-status {
    background: rgba(126, 200, 255, .12);
    border: 1px solid var(--sms-dark-border);
    border-radius: 999px;
    color: var(--sms-light-blue) !important;
    font-size: 11px;
    font-weight: 900;
    padding: 6px 9px;
    white-space: nowrap;
}

.container.fsq-page .fsq-status.fsq-status-success {
    background: #328147;
    border-color: #54a769;
    color: #fff !important;
}

.container.fsq-page .fsq-status.fsq-status-danger {
    background: #bd4545;
    border-color: #e07070;
    color: #fff !important;
}

.container.fsq-page .fsq-status.fsq-status-muted {
    background: #78848c;
    border-color: #a7b0b6;
    color: #fff !important;
}

.container.fsq-page .fsq-status.fsq-status-warning {
    background: #e98c0c;
    border-color: #ffb43b;
    color: #fff !important;
}

.container.fsq-page .fsq-lookup-row {
    align-items: end;
    background: rgba(6, 35, 58, .5);
    border: 1px solid rgba(126, 200, 255, .16);
    border-radius: 12px;
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(260px, 1fr) auto minmax(180px, 1fr);
    margin-bottom: 16px;
    padding: 14px;
}

.container.fsq-page .fsq-draft-row {
    align-items: center;
    border-bottom: 1px solid rgba(126, 200, 255, .16);
    color: var(--sms-light-blue) !important;
    display: flex;
    gap: 18px;
    justify-content: space-between;
    padding: 13px 2px;
    text-decoration: none;
}

.container.fsq-page .fsq-draft-row small {
    color: var(--sms-muted-white) !important;
    display: block;
    margin-top: 4px;
}

.container.fsq-page .fsq-detail-actions {
    margin-bottom: 15px;
}

.container.fsq-page .fsq-margin,
.container.fsq-page .fsq-tier-total {
    color: var(--sms-light-blue) !important;
    font-weight: 900;
    min-width: 86px;
    text-align: right !important;
}

.container.fsq-page .fsq-form-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.container.fsq-page .fsq-wide {
    grid-column: 1 / -1;
}

.container.fsq-page .fsq-field label {
    display: block;
    font-size: 12px;
    font-weight: 900;
    margin-bottom: 6px;
}

.container.fsq-page .fsq-field input,
.container.fsq-page .fsq-field select,
.container.fsq-page .fsq-field textarea {
    box-sizing: border-box;
    width: 100%;
}

.container.fsq-page .fsq-field textarea {
    min-height: 110px;
    resize: vertical;
}

.container.fsq-page .fsq-table-wrap {
    overflow-x: auto;
}

.container.fsq-page .fsq-tiers {
    border-collapse: collapse;
    min-width: 720px;
    width: 100%;
}

.container.fsq-page .fsq-tiers th,
.container.fsq-page .fsq-tiers td {
    border-bottom: 1px solid rgba(126, 200, 255, .16);
    padding: 9px 7px;
    text-align: left;
}

.container.fsq-page .fsq-tiers th {
    color: var(--sms-light-blue) !important;
    font-size: 11px;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.container.fsq-page .fsq-tiers input {
    box-sizing: border-box;
    min-width: 105px;
    width: 100%;
}

.container.fsq-page .fsq-pricing td:not(:first-child),
.container.fsq-page .fsq-pricing th:not(:first-child) {
    text-align: right;
}

.container.fsq-page .fsq-actions,
.container.fsq-page .fsq-action-row {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.container.fsq-page .fsq-detail-grid {
    display: grid;
    gap: 16px;
    grid-template-columns: minmax(0, 2fr) minmax(280px, 1fr);
}

.container.fsq-page .fsq-description {
    color: var(--sms-soft-white) !important;
    line-height: 1.55;
    white-space: pre-wrap;
}

.container.fsq-page .fsq-kv,
.container.fsq-page .fsq-spec-list {
    display: grid;
    gap: 8px 12px;
    grid-template-columns: minmax(120px, .65fr) minmax(0, 1.35fr);
    margin: 0;
}

.container.fsq-page .fsq-kv dt,
.container.fsq-page .fsq-spec-list dt {
    color: var(--sms-light-blue) !important;
    font-weight: 900;
}

.container.fsq-page .fsq-kv dd,
.container.fsq-page .fsq-spec-list dd {
    color: var(--sms-soft-white) !important;
    margin: 0;
    overflow-wrap: anywhere;
    white-space: pre-wrap;
}

.container.fsq-page .fsq-file {
    border-bottom: 1px solid rgba(126, 200, 255, .16);
    padding: 10px 0;
}

.container.fsq-page .fsq-file span {
    color: var(--sms-muted-white) !important;
    display: block;
    font-size: 12px;
    margin-top: 3px;
}

.container.fsq-page .fsq-activity {
    border-left: 3px solid var(--sms-line-blue);
    margin-bottom: 10px;
    padding: 3px 0 12px 12px;
}

.container.fsq-page .fsq-activity small {
    color: var(--sms-muted-white) !important;
}

.container.fsq-page .fsq-vendor-card {
    border-bottom: 1px solid rgba(126, 200, 255, .16);
    margin-bottom: 14px;
    padding-bottom: 14px;
}

.container.fsq-page .fsq-vendor-card:last-child {
    border-bottom: 0;
    margin-bottom: 0;
    padding-bottom: 0;
}

.container.fsq-page .fsq-order-ready {
    border-color: var(--sms-line-blue);
}

.container.fsq-page .fsq-confirm {
    align-items: flex-start;
    background: rgba(9, 48, 76, .76);
    border: 1px solid rgba(126, 200, 255, .26);
    border-radius: 8px;
    color: var(--sms-soft-white) !important;
    display: flex;
    gap: 10px;
    line-height: 1.45;
    margin: 14px 0;
    padding: 12px;
}

.container.fsq-page .fsq-confirm input {
    flex: 0 0 auto;
    margin-top: 3px;
}

.container.fsq-page .fsq-email-preview,
.container.fsq-page .fsq-email-body {
    background: rgba(7, 35, 56, .72);
    border: 1px solid rgba(126, 200, 255, .18);
    border-radius: 8px;
    margin: 16px 0;
    padding: 14px;
}

.container.fsq-page .fsq-email-preview pre,
.container.fsq-page .fsq-email-body {
    color: var(--sms-soft-white) !important;
    font: inherit;
    overflow-wrap: anywhere;
    white-space: pre-wrap;
}

.container.fsq-page .fsq-step-list {
    color: var(--sms-soft-white) !important;
    line-height: 1.55;
    padding-left: 22px;
}

.container.fsq-page .fsq-notice.fsq-warning {
    background: rgba(151, 109, 13, .24) !important;
    border-color: rgba(255, 203, 94, .52) !important;
    color: #ffe6a6 !important;
}

.fsq-form-page .fsq-product-lines {
    display: grid;
    gap: 16px;
}

.fsq-form-page .fsq-product-line {
    background: rgba(7, 49, 77, .18);
    border: 1px solid var(--fsq-line, #bfd3e1);
    border-radius: 12px;
    margin: 0;
    padding: 16px;
    position: relative;
}

.fsq-form-page .fsq-product-line legend {
    color: #0b5cab;
    font-size: 1rem;
    font-weight: 800;
    padding: 0 8px;
}

.fsq-form-page .fsq-product-remove {
    background: transparent;
    border: 0;
    color: #9b2c2c;
    cursor: pointer;
    font-weight: 700;
    position: absolute;
    right: 14px;
    top: 10px;
}

.fsq-form-page .fsq-product-line output {
    display: block;
    font-weight: 800;
    padding: 10px 0;
}

.fsq-form-page .fsq-product-grand-total,
.container.fsq-page .fsq-product-grand-total {
    align-items: center;
    background: #eaf3f9;
    border: 1px solid #b9ccda;
    border-radius: 10px;
    color: #0b3553;
    display: flex;
    font-size: 1.05rem;
    justify-content: space-between;
    margin-top: 16px;
    padding: 14px 16px;
}

.fsq-form-page .fsq-product-grand-total strong,
.container.fsq-page .fsq-product-grand-total strong {
    font-size: 1.25rem;
}

/* Dropship Operations uses the shared .qe-tabs/.qe-tab navigation styles. */
.container.fsq-page.dso-page .dso-store-switch { display:flex; align-items:end; gap:10px; margin:0 0 18px auto; max-width:300px; }
.container.fsq-page.dso-page .dso-store-switch label { color:#7fcef7; font-weight:900; }
.container.fsq-page.dso-page .dso-store-switch select { min-width:180px; }
.container.fsq-page.dso-page .fsq-pipeline-filters select { color-scheme: light; }
.container.fsq-page.dso-page .fsq-pipeline-filters select option {
    background: #fff !important;
    color: var(--sms-field-text) !important;
    -webkit-text-fill-color: var(--sms-field-text) !important;
}
.container.fsq-page.dso-page .dso-overview-metrics a.fsq-metric,
.container.fsq-page.dso-page .dso-overview-metrics .fsq-metric > a { color:inherit; text-decoration:none; }
.container.fsq-page.dso-page .dso-overview-metrics .fsq-metric small a { color:#7fcef7; text-decoration:underline; text-underline-offset:2px; }
.container.fsq-page.dso-page .fsq-metric small {
    display: block;
    margin-top: 7px;
    color: #b6d8ed;
}
.container.fsq-page.dso-page .dso-overview-metrics {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}
.container.fsq-page.dso-page .dso-dashboard-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(300px, .65fr);
    gap: 16px;
    margin-top: 16px;
}
.container.fsq-page.dso-page .dso-panel-head,
.container.fsq-page.dso-page .dso-order-head,
.container.fsq-page.dso-page .dso-po-card > header {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 16px;
    padding: 16px;
}
.container.fsq-page.dso-page .dso-panel-head h2,
.container.fsq-page.dso-page .dso-order-head h2,
.container.fsq-page.dso-page .dso-po-card h3 { margin: 0; }
.container.fsq-page.dso-page .dso-aging {
    display: grid;
    grid-template-columns: repeat(9, minmax(56px, 1fr));
    gap: 6px;
    padding: 0 16px 18px;
}
.container.fsq-page.dso-page .dso-aging div,
.container.fsq-page.dso-page .dso-aging a {
    text-align: center;
    border: 1px solid #3e799c;
    border-radius: 6px;
    padding: 10px 5px;
    background: #16415e;
}
.container.fsq-page.dso-page .dso-aging a { color:inherit; text-decoration:none; }
.container.fsq-page.dso-page .dso-aging div.late,
.container.fsq-page.dso-page .dso-aging a.late { border-color: #d7786f; background: #592f36; }
.container.fsq-page.dso-page .dso-aging strong,
.container.fsq-page.dso-page .dso-aging span { display: block; }
.container.fsq-page.dso-page .dso-aging strong { font-size: 1.35rem; }
.container.fsq-page.dso-page .dso-aging span { margin-top: 4px; font-size: .72rem; }
.container.fsq-page.dso-page .dso-promise-shortcut { display:block; width:max-content; margin:0 16px 22px auto; color:#7fcef7; font-weight:900; }
.container.fsq-page.dso-page .dso-dashboard-grid h3 { padding: 0 16px; }
.container.fsq-page.dso-page .dso-alert-list { padding: 0 16px 16px; }
.container.fsq-page.dso-page .dso-alert-list > div,
.container.fsq-page.dso-page .dso-alert-list > a {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 8px;
    border-bottom: 1px solid #356c8c;
    color: #eaf8ff;
    text-decoration: none;
}
.container.fsq-page.dso-page .dso-alert-list strong {
    min-width: 30px;
    text-align: center;
    border-radius: 999px;
    background: #247cae;
}
.container.fsq-page.dso-page .dso-po-filters { grid-template-columns: minmax(280px, 1fr) minmax(160px, .45fr) minmax(160px, .45fr) auto; }
.container.fsq-page.dso-page .dso-po-cards { display: grid; gap: 16px; padding: 16px; }
.container.fsq-page.dso-page .dso-po-card { border: 1px solid #3f7899; border-radius: 8px; overflow: hidden; background: #153f5c; }
.container.fsq-page.dso-page .dso-po-card p,
.container.fsq-page.dso-page .dso-order-head p { margin: 5px 0 0; color: #b9d9ec; }
.container.fsq-page.dso-page .dso-po-facts { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; padding: 0 16px 16px; }
.container.fsq-page.dso-page .dso-po-facts span { border: 1px solid #387696; border-radius: 6px; padding: 9px; overflow-wrap: anywhere; }
.container.fsq-page.dso-page .dso-po-facts small,
.container.fsq-page.dso-page .dso-po-facts strong { display: block; }
.container.fsq-page.dso-page .fsq-pipeline-table a { color: #8fd7ff; }
.container.fsq-page.dso-page .dso-orders-table .fsq-status { display: table; margin: 0 0 4px; white-space: normal; }
.container.fsq-page.dso-page .dso-orders-table .dso-bc-status {
    border-radius: 3px;
    color: #fff !important;
    line-height: 1.15;
    padding: 4px 7px;
}
.container.fsq-page.dso-page .dso-bc-status-processing { background: #0e6685; border-color: #55c6e9; }
.container.fsq-page.dso-page .dso-bc-status-awaiting-shipment { background: #c63b12; border-color: #f06a40; }
.container.fsq-page.dso-page .dso-bc-status-awaiting-fulfillment { background: #2f8243; border-color: #59ad6d; }
.container.fsq-page.dso-page .dso-bc-status-partially-shipped { background: #307d52; border-color: #62ad7d; }
.container.fsq-page.dso-page .dso-bc-status-completed { background: #7ea922; border-color: #b7dc55; color: #102000 !important; }
.container.fsq-page.dso-page .dso-bc-status-partially-refunded,
.container.fsq-page.dso-page .dso-bc-status-awaiting-payment,
.container.fsq-page.dso-page .dso-bc-status-manual-verification { background: #c88700; border-color: #ffc23b; color: #1d1600 !important; }
.container.fsq-page.dso-page .dso-bc-status-refunded,
.container.fsq-page.dso-page .dso-bc-status-disputed { background: #9344a7; border-color: #c578d7; }
.container.fsq-page.dso-page .dso-bc-status-cancelled { background: #a83d45; border-color: #dc6f76; }
.container.fsq-page.dso-page .dso-bc-status-pending,
.container.fsq-page.dso-page .dso-bc-status-neutral { background: #5f707c; border-color: #91a1ab; }
.container.fsq-page.dso-page .dso-planned-po { display: block; margin-top: 5px; }
.container.fsq-page.dso-page .dso-planned-po small { color: #b9d9ec; display: block; font-size: .72rem; margin-top: 2px; }
.container.fsq-page.dso-page .dso-bc-items-card { margin: 16px; }
.container.fsq-page.dso-page .dso-primary-link {
    display: inline-block;
    color: #8fd7ff;
    font-size: 1rem;
    font-weight: 900;
    text-decoration: none;
}
.container.fsq-page.dso-page .dso-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }
.container.fsq-page.dso-page .dso-po-link {
    display: inline;
    color: #8fd7ff;
    margin: 0 0 5px;
    font-weight: 750;
    text-decoration: none;
}
.container.fsq-page.dso-page .dso-po-entry { display: block; margin: 0 0 5px; }
.container.fsq-page.dso-page .dso-po-entry .fsq-status { display: inline-block; margin: 0 0 0 6px; padding: 2px 6px; }
.container.fsq-page.dso-page .dso-detail-shell { overflow: visible; }
.container.fsq-page.dso-page .dso-order-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 260px;
    gap: 18px;
    padding: 0 16px 18px;
}
.container.fsq-page.dso-page .dso-order-main { min-width: 0; }
.container.fsq-page.dso-page .dso-address-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}
.container.fsq-page.dso-page .dso-address-grid article,
.container.fsq-page.dso-page .dso-order-facts,
.container.fsq-page.dso-page .dso-notes {
    border: 1px solid #3f7899;
    border-radius: 8px;
    background: #153f5c;
    padding: 14px;
}
.container.fsq-page.dso-page .dso-address-grid h3,
.container.fsq-page.dso-page .dso-notes h3 { margin: -14px -14px 12px; padding: 9px 14px; background: #205878; }
.container.fsq-page.dso-page .dso-address-grid span,
.container.fsq-page.dso-page .dso-address-grid strong { display: block; line-height: 1.45; }
.container.fsq-page.dso-page .dso-items-section > h3 { margin: 18px 16px 0; }
.container.fsq-page.dso-page .dso-items-section > p { margin: 5px 16px 0; color: #b9d9ec; }
.container.fsq-page.dso-page .dso-order-facts { align-self: start; position: sticky; top: 12px; }
.container.fsq-page.dso-page .dso-order-state { display: block; padding: 9px; margin-bottom: 12px; text-align: center; background: #327d48; border-radius: 5px; }
.container.fsq-page.dso-page .dso-order-facts dl { margin: 0; }
.container.fsq-page.dso-page .dso-order-facts dt { float: left; width: 46%; clear: left; padding: 8px 0; font-weight: 800; }
.container.fsq-page.dso-page .dso-order-facts dd { margin-left: 48%; padding: 8px 0; border-bottom: 1px solid #356c8c; overflow-wrap: anywhere; }
.container.fsq-page.dso-page .dso-items-table { min-width: 980px; }
.container.fsq-page.dso-page .dso-items-table td span { display: block; margin-top: 3px; color: #b9d9ec; font-size: .78rem; }
.container.fsq-page.dso-page .dso-shipment-card { margin: 0 16px 16px; border: 1px solid #397694; border-radius: 7px; padding: 12px; background: #123a55; }
.container.fsq-page.dso-page .dso-shipment-card h4 { margin: 0 0 8px; }
.container.fsq-page.dso-page .dso-shipment-card > div { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; }
.container.fsq-page.dso-page .dso-shipment-card span { display: block; }
.container.fsq-page.dso-page .dso-shipment-card small,
.container.fsq-page.dso-page .dso-shipment-card strong { display: block; overflow-wrap: anywhere; }
.container.fsq-page.dso-page .dso-notes { margin: 0 16px 16px; }
.container.fsq-page.dso-page .dso-po-head-actions { display: flex; gap: 8px; flex-wrap: wrap; justify-content: flex-end; }
.container.fsq-page.dso-page .dso-disabled-action,
.container.fsq-page.dso-page .dso-disabled-link { opacity: .64; cursor: not-allowed; }
.container.fsq-page.dso-page .dso-disabled-link { display: block; padding: 5px 0; color: #b9d9ec; }
.container.fsq-page.dso-page .dso-source-notice { margin: 0 16px 16px; }
.container.fsq-page.dso-page .dso-source-notice a,
.container.fsq-page.dso-page .dso-po-detail-shell a { color: #8fd7ff; }
.container.fsq-page.dso-page .dso-po-summary-grid { margin-bottom: 16px; }
.container.fsq-page.dso-page .dso-inline-facts { margin: 0; display: grid; grid-template-columns: auto 1fr; gap: 10px 18px; }
.container.fsq-page.dso-page .dso-inline-facts dt { font-weight: 800; }
.container.fsq-page.dso-page .dso-inline-facts dd { margin: 0; }
.container.fsq-page.dso-page .dso-detail-tabs { display: flex; gap: 0; margin: 16px; border-bottom: 1px solid #3f7899; }
.container.fsq-page.dso-page .dso-detail-tabs a { padding: 10px 14px; border: 1px solid #3f7899; border-bottom: 0; border-radius: 7px 7px 0 0; text-decoration: none; background: #153f5c; }
.container.fsq-page.dso-page .dso-detail-tabs a + a { margin-left: 5px; }
.container.fsq-page.dso-page .dso-po-shipment-list,
.container.fsq-page.dso-page .dso-all-items { margin: 0 16px 16px; }
.container.fsq-page.dso-page .dso-shipment-detail { border: 1px solid #397694; border-radius: 8px; background: #123a55; overflow: hidden; margin-bottom: 16px; }
.container.fsq-page.dso-page .dso-shipment-detail > h4,
.container.fsq-page.dso-page .dso-all-items > h4 { margin: 0; padding: 12px 14px; background: #205878; }
.container.fsq-page.dso-page .dso-shipment-summary { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; padding: 14px; }
.container.fsq-page.dso-page .dso-shipment-summary dl { display: grid; grid-template-columns: minmax(105px, .55fr) 1fr; gap: 8px 12px; margin: 0; }
.container.fsq-page.dso-page .dso-shipment-summary dt { font-weight: 800; }
.container.fsq-page.dso-page .dso-shipment-summary dd { margin: 0; overflow-wrap: anywhere; }
.container.fsq-page.dso-page .dso-po-items-table { min-width: 760px; }
.container.fsq-page.dso-page .dso-po-items-table td span { display: block; margin-top: 3px; color: #b9d9ec; font-size: .78rem; }
.container.fsq-page.dso-page .dso-product-link { display: inline-block; font-weight: 800; text-decoration: none; }
.container.fsq-page.dso-page .dso-po-attachments,
.container.fsq-page.dso-page .dso-plain-text { margin: 0 16px 16px; border: 1px solid #3f7899; border-radius: 8px; background: #153f5c; padding: 14px; }
.container.fsq-page.dso-page .dso-po-attachments h3 { margin: -14px -14px 12px; padding: 9px 14px; background: #205878; }
.container.fsq-page.dso-page .dso-plain-text summary { color: #8fd7ff; cursor: pointer; font-weight: 800; }
.container.fsq-page.dso-page .dso-plain-text pre { white-space: pre-wrap; overflow-wrap: anywhere; color: #eaf8ff; }
.container.fsq-page.dso-page .dso-po-sidebar-section { border-top: 1px solid #356c8c; margin-top: 14px; padding-top: 12px; }
.container.fsq-page.dso-page .dso-po-sidebar-section h3 { margin: 0 0 6px; font-size: .78rem; letter-spacing: .06em; text-transform: uppercase; color: #b9d9ec; }
.container.fsq-page.dso-page .dso-orders-table th:nth-child(n),
.container.fsq-page.dso-page .dso-po-table th:nth-child(n),
.container.fsq-page.dso-page .dso-shipment-table th:nth-child(n),
.container.fsq-page.dso-page .dso-items-table th:nth-child(n) { width: auto; }

@media (max-width: 1100px) {
    .container.fsq-page.dso-page .dso-dashboard-grid { grid-template-columns: 1fr; }
    .container.fsq-page.dso-page .dso-aging { grid-template-columns: repeat(5, minmax(56px, 1fr)); }
    .container.fsq-page.dso-page .dso-po-facts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .container.fsq-page.dso-page .dso-po-filters { grid-template-columns: 1fr 1fr; }
    .container.fsq-page.dso-page .dso-order-layout { grid-template-columns: 1fr; }
    .container.fsq-page.dso-page .dso-order-facts { position: static; }
}
@media (max-width: 700px) {
    .container.fsq-page.dso-page .dso-overview-metrics,
    .container.fsq-page.dso-page .dso-po-facts { grid-template-columns: 1fr; }
    .container.fsq-page.dso-page .dso-aging { grid-template-columns: repeat(3, minmax(56px, 1fr)); }
    .container.fsq-page.dso-page .dso-panel-head,
    .container.fsq-page.dso-page .dso-order-head,
    .container.fsq-page.dso-page .dso-po-card > header { display: block; }
    .container.fsq-page.dso-page .dso-po-filters { grid-template-columns: 1fr; }
    .container.fsq-page.dso-page .dso-address-grid,
    .container.fsq-page.dso-page .dso-shipment-card > div,
    .container.fsq-page.dso-page .dso-shipment-summary { grid-template-columns: 1fr; }
    .container.fsq-page.dso-page .dso-po-head-actions { justify-content: flex-start; margin-top: 10px; }
}

@media (max-width: 1180px) {
    .container.fsq-page .fsq-type-grid,
    .container.fsq-page .fsq-board {
        grid-template-columns: repeat(2, minmax(260px, 1fr));
    }
}

@media (max-width: 900px) {
    .container.fsq-page .fsq-pipeline-table,
    .container.fsq-page .fsq-pipeline-table tbody {
        display: block;
        min-width: 0;
        width: 100%;
    }

    .container.fsq-page .fsq-pipeline-table thead {
        height: 1px;
        overflow: hidden;
        position: absolute;
        width: 1px;
    }

    .container.fsq-page .fsq-pipeline-table tbody tr {
        border-bottom: 1px solid var(--sms-dark-border);
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        padding: 8px;
    }

    .container.fsq-page .fsq-pipeline-table td {
        border: 0;
        min-width: 0;
        padding: 9px;
    }

    .container.fsq-page .fsq-pipeline-table td::before {
        color: var(--sms-muted-white) !important;
        content: attr(data-label);
        display: block;
        font-size: 9px;
        font-weight: 900;
        letter-spacing: .07em;
        margin-bottom: 6px;
        text-transform: uppercase;
    }
}

@media (max-width: 760px) {
    .container.fsq-page .fsq-head,
    .container.fsq-page .fsq-detail-head,
    .container.fsq-page .fsq-form-head {
        display: block;
    }

    .container.fsq-page .fsq-head form,
    .container.fsq-page .fsq-badge {
        display: inline-flex;
        margin-top: 14px;
    }

    .container.fsq-page .fsq-type-grid,
    .container.fsq-page .fsq-board,
    .container.fsq-page .fsq-form-grid,
    .container.fsq-page .fsq-detail-grid {
        grid-template-columns: 1fr;
    }

    .container.fsq-page .fsq-lookup-row {
        align-items: stretch;
        grid-template-columns: 1fr;
    }

    .container.fsq-page .fsq-metrics {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .container.fsq-page .fsq-filter-search {
        grid-column: auto;
    }

    .container.fsq-page .fsq-pagination-bar {
        align-items: flex-start;
        flex-direction: column;
    }

    .container.fsq-page .fsq-pipeline-table tbody tr {
        grid-template-columns: 1fr;
    }

    .container.fsq-page .fsq-wide {
        grid-column: auto;
    }
}

@media print {
    body:has(.fsq-print-quote) {
        background: #fff !important;
    }

    .container.fsq-page.fsq-print-quote {
        color: #172b3a !important;
        margin: 0 !important;
        max-width: none !important;
        padding: 0 !important;
    }

    .container.fsq-page.fsq-print-quote .fsq-panel,
    .container.fsq-page.fsq-print-quote .fsq-detail-head {
        background: #fff !important;
        border-color: #b9c8d3 !important;
        box-shadow: none !important;
        color: #172b3a !important;
        break-inside: avoid;
    }

    .container.fsq-page.fsq-print-quote * {
        color: #172b3a !important;
    }
}

.container.fsq-page.fsq-print-quote .fsq-print-brand {
    align-items: flex-start;
    display: flex;
    justify-content: space-between;
    gap: 24px;
    margin-bottom: 18px;
}

.container.fsq-page.fsq-print-quote .fsq-print-brand img {
    height: auto;
    max-width: 340px;
    width: 42%;
}

.container.fsq-page.fsq-print-quote .fsq-print-brand > div {
    font-size: .86rem;
    line-height: 1.45;
    text-align: right;
}

.container.fsq-page.fsq-print-quote .fsq-print-customer {
    line-height: 1.45;
    margin-bottom: 14px;
}

.container.fsq-page.fsq-print-quote .fsq-print-terms p {
    font-size: .78rem;
    line-height: 1.45;
}

@media (max-width: 640px) {
    .container.fsq-page.fsq-print-quote .fsq-print-brand {
        flex-direction: column;
    }

    .container.fsq-page.fsq-print-quote .fsq-print-brand img {
        width: min(100%, 340px);
    }

    .container.fsq-page.fsq-print-quote .fsq-print-brand > div {
        text-align: left;
    }
}

/* =========================================================
   COMPARE PRICING LAYOUT FIX
   Added after moving SKU/Category inline styles into CSS.
   This restores the two-column form layout and keeps the run
   status card docked on the right.
   ========================================================= */

/* Topbar search should fill the available topbar space without relying on page-level input width rules. */
.sms-cc-search {
    width: 100%;
}
.sms-cc-search input,
.sms-cc-topbar input[type="search"] {
    width: 100% !important;
    min-width: 240px !important;
    box-sizing: border-box !important;
}

/* Header row used on Compare Pricing SKU and Category pages. */
.container:has(.price-mode-tabs) .top-row {
    display: grid !important;
    grid-template-columns: minmax(360px, 1fr) 300px !important;
    gap: 22px !important;
    align-items: start !important;
    margin: 0 0 18px !important;
}

.container:has(.price-mode-tabs) .top-row > div:first-child {
    min-width: 0 !important;
}

.container:has(.price-mode-tabs) .top-row h1 {
    margin: 0 0 18px !important;
    font-size: 28px !important;
    line-height: 1.15 !important;
}

.container:has(.price-mode-tabs) .top-row p {
    margin: 0 0 20px !important;
    font-size: 15px !important;
    line-height: 1.45 !important;
}

/* Run Status card belongs in the top-right, not stretched across the page. */
.container:has(.price-mode-tabs) .status-box {
    width: 260px !important;
    min-width: 260px !important;
    justify-self: end !important;
    padding: 14px !important;
    box-sizing: border-box !important;
}

.container:has(.price-mode-tabs) .status-title {
    font-size: 12px !important;
    line-height: 1.1 !important;
    letter-spacing: .04em !important;
    text-transform: uppercase !important;
    font-weight: 900 !important;
    color: var(--sms-white) !important;
    margin: 0 0 4px !important;
}

.container:has(.price-mode-tabs) .status-percent {
    font-size: 24px !important;
    line-height: 1 !important;
    font-weight: 950 !important;
    color: var(--sms-white) !important;
    margin: 0 0 8px !important;
}

.container:has(.price-mode-tabs) .status-sub {
    font-size: 12px !important;
    line-height: 1.25 !important;
    color: var(--sms-white) !important;
    margin: 7px 0 0 !important;
}

.container:has(.price-mode-tabs) .bar-wrap {
    width: 100% !important;
    height: 10px !important;
    background: rgba(255,255,255,.16) !important;
    border-radius: 999px !important;
    overflow: hidden !important;
    margin: 8px 0 0 !important;
}

.container:has(.price-mode-tabs) .bar-fill {
    height: 100% !important;
    background: linear-gradient(90deg, var(--brand-accent), var(--sms-light-blue)) !important;
    border-radius: 999px !important;
}

/* SKU search form: product field + competitor group row. */
.container:has(.price-mode-tabs) .lookup-grid {
    display: grid !important;
    grid-template-columns: minmax(360px, 1fr) minmax(260px, 1fr) !important;
    gap: 16px !important;
    align-items: end !important;
    margin: 10px 0 14px !important;
}

/* SKU search form: current price + cost + note row. */
.container:has(.price-mode-tabs) .pricing-grid {
    display: grid !important;
    grid-template-columns: minmax(180px, 300px) minmax(180px, 300px) minmax(360px, 1fr) !important;
    gap: 16px !important;
    align-items: end !important;
    margin: 0 0 12px !important;
}

.container:has(.price-mode-tabs) .lookup-grid label,
.container:has(.price-mode-tabs) .pricing-grid label,
.container:has(.price-mode-tabs) .category-controls label,
.container:has(.price-mode-tabs) .batch-controls label {
    display: block !important;
    margin: 0 0 8px !important;
    font-weight: 900 !important;
    color: var(--sms-white) !important;
}

.container:has(.price-mode-tabs) .lookup-grid input,
.container:has(.price-mode-tabs) .lookup-grid select,
.container:has(.price-mode-tabs) .pricing-grid input,
.container:has(.price-mode-tabs) .pricing-grid select,
.container:has(.price-mode-tabs) .category-controls input,
.container:has(.price-mode-tabs) .category-controls select,
.container:has(.price-mode-tabs) .batch-controls input,
.container:has(.price-mode-tabs) .batch-controls select {
    width: 100% !important;
    height: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 0 14px !important;
    font-size: 15px !important;
    box-sizing: border-box !important;
}

.container:has(.price-mode-tabs) .field-help,
.container:has(.price-mode-tabs) .category-help,
.container:has(.price-mode-tabs) .category-count,
.container:has(.price-mode-tabs) .summary-sub {
    color: var(--sms-soft-white) !important;
    opacity: 1 !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
}

.container:has(.price-mode-tabs) .field-help {
    margin: 0 0 12px !important;
}

.container:has(.price-mode-tabs) .button-row,
.container:has(.price-mode-tabs) .batch-button-row {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    align-items: center !important;
    margin-top: 8px !important;
}

.container:has(.price-mode-tabs) .button-row button,
.container:has(.price-mode-tabs) .button-row .button-link,
.container:has(.price-mode-tabs) .batch-button-row button,
.container:has(.price-mode-tabs) .batch-button-row .button-link {
    margin: 0 !important;
    min-height: 42px !important;
}

/* Category mode layout. */
.container:has(.price-mode-tabs) .category-controls {
    display: grid !important;
    grid-template-columns: minmax(420px, 1fr) minmax(160px, 220px) minmax(140px, 180px) !important;
    gap: 16px !important;
    align-items: start !important;
    margin: 14px 0 14px !important;
}

.container:has(.price-mode-tabs) .batch-controls {
    display: grid !important;
    grid-template-columns: minmax(240px, 300px) minmax(150px, 190px) auto !important;
    gap: 16px !important;
    align-items: start !important;
    margin: 18px 0 0 !important;
}

.container:has(.price-mode-tabs) .readonly-field {
    height: 46px !important;
    display: flex !important;
    align-items: center !important;
    padding: 0 14px !important;
    border: 1px solid rgba(126, 200, 255, .62) !important;
    border-radius: 10px !important;
    background: linear-gradient(180deg, #ffffff 0%, #f3f8fd 100%) !important;
    color: var(--sms-field-text) !important;
    box-sizing: border-box !important;
    font-weight: 900 !important;
}

@media (max-width: 1000px) {
    .container:has(.price-mode-tabs) .top-row,
    .container:has(.price-mode-tabs) .lookup-grid,
    .container:has(.price-mode-tabs) .pricing-grid,
    .container:has(.price-mode-tabs) .category-controls,
    .container:has(.price-mode-tabs) .batch-controls {
        grid-template-columns: 1fr !important;
    }

    .container:has(.price-mode-tabs) .status-box {
        width: 100% !important;
        min-width: 0 !important;
        justify-self: stretch !important;
    }
}

/* =========================================================
   COMPARE PRICING CATEGORY MODE
   Added after moving category_tab.py inline styles into CSS.
   ========================================================= */
.container:has(.price-mode-tabs) .note {
    margin-top: 15px !important;
    padding: 14px !important;
    background: rgba(255, 183, 77, .10) !important;
    border: 1px solid rgba(255, 183, 77, .48) !important;
    border-left: 5px solid #DCA24A !important;
    border-radius: 12px !important;
    color: var(--sms-white) !important;
}

.container:has(.price-mode-tabs) .pill {
    display: inline-block !important;
    background: rgba(126,200,255,.14) !important;
    border: 1px solid rgba(126,200,255,.38) !important;
    color: var(--sms-white) !important;
    padding: 4px 8px !important;
    border-radius: 999px !important;
    margin: 2px 0 !important;
    font-size: 12px !important;
    font-weight: 800 !important;
}

.container:has(.price-mode-tabs) .pill-leaf {
    background: rgba(34,197,94,.16) !important;
    border-color: rgba(34,197,94,.42) !important;
}

.container:has(.price-mode-tabs) .muted,
.container:has(.price-mode-tabs) .small {
    color: var(--sms-soft-white) !important;
    opacity: 1 !important;
}

.container:has(.price-mode-tabs) .summary-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin-top: 20px !important;
}

.container:has(.price-mode-tabs) .summary-card,
.container:has(.price-mode-tabs) .decision-card {
    background: rgba(255,255,255,.08) !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-radius: 14px !important;
    padding: 14px !important;
    color: var(--sms-white) !important;
}

.container:has(.price-mode-tabs) .summary-label {
    font-size: 12px !important;
    color: var(--sms-light-blue) !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
    font-weight: 900 !important;
}

.container:has(.price-mode-tabs) .summary-value {
    font-size: 20px !important;
    font-weight: 950 !important;
    color: var(--sms-white) !important;
    margin-top: 4px !important;
}

.container:has(.price-mode-tabs) .category-result-table {
    table-layout: fixed !important;
    min-width: 1180px !important;
}

.container:has(.price-mode-tabs) .category-result-table th:nth-child(1) { width: 15%; }
.container:has(.price-mode-tabs) .category-result-table th:nth-child(2) { width: 13%; }
.container:has(.price-mode-tabs) .category-result-table th:nth-child(3) { width: 10%; }
.container:has(.price-mode-tabs) .category-result-table th:nth-child(4) { width: 7%; }
.container:has(.price-mode-tabs) .category-result-table th:nth-child(5) { width: 6%; }
.container:has(.price-mode-tabs) .category-result-table th:nth-child(6) { width: 10%; }
.container:has(.price-mode-tabs) .category-result-table th:nth-child(7) { width: 8%; }
.container:has(.price-mode-tabs) .category-result-table th:nth-child(8) { width: 6%; }
.container:has(.price-mode-tabs) .category-result-table th:nth-child(9) { width: 11%; }
.container:has(.price-mode-tabs) .category-result-table th:nth-child(10) { width: 5%; }
.container:has(.price-mode-tabs) .category-result-table th:nth-child(11) { width: 9%; }

.container:has(.price-mode-tabs) .category-result-table td,
.container:has(.price-mode-tabs) .competitor-detail-table td {
    overflow-wrap: anywhere !important;
    word-break: normal !important;
}

.container:has(.price-mode-tabs) .category-result-table td:nth-child(10),
.container:has(.price-mode-tabs) .category-result-table td:nth-child(11) {
    text-align: center !important;
    white-space: nowrap !important;
}

.container:has(.price-mode-tabs) .product-cell { line-height: 1.25 !important; }
.container:has(.price-mode-tabs) .sku-cell,
.container:has(.price-mode-tabs) .search-cell { font-size: 13px !important; overflow-wrap: anywhere !important; }

.container:has(.price-mode-tabs) .action-pill {
    display: inline-block !important;
    padding: 4px 8px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    white-space: nowrap !important;
}

.container:has(.price-mode-tabs) .action-raise { background: #dcfce7 !important; color: #166534 !important; border: 1px solid #86efac !important; }
.container:has(.price-mode-tabs) .action-keep { background: #dbeafe !important; color: #1e40af !important; border: 1px solid #93c5fd !important; }
.container:has(.price-mode-tabs) .action-lower { background: #ffedd5 !important; color: #9a3412 !important; border: 1px solid #fdba74 !important; }
.container:has(.price-mode-tabs) .action-review { background: #f1f5f9 !important; color: #334155 !important; border: 1px solid #cbd5e1 !important; }

.container:has(.price-mode-tabs) .detail-row td {
    background: rgba(255,255,255,.035) !important;
    padding: 0 !important;
}

.container:has(.price-mode-tabs) .detail-panel {
    padding: 18px !important;
    border-left: 5px solid var(--sms-light-blue) !important;
}

.container:has(.price-mode-tabs) .detail-title {
    font-size: 16px !important;
    font-weight: 900 !important;
    color: var(--sms-white) !important;
    margin-bottom: 12px !important;
}

.container:has(.price-mode-tabs) .detail-subtitle {
    font-weight: 900 !important;
    color: var(--sms-white) !important;
    margin-top: 16px !important;
}

.container:has(.price-mode-tabs) .detail-summary-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    margin-top: 10px !important;
}

.container:has(.price-mode-tabs) .competitor-detail-table {
    margin-top: 10px !important;
    font-size: 13px !important;
    table-layout: fixed !important;
    min-width: 980px !important;
}

.container:has(.price-mode-tabs) .competitor-detail-table th { position: static !important; }
.container:has(.price-mode-tabs) .competitor-detail-table th:nth-child(1) { width: 20%; }
.container:has(.price-mode-tabs) .competitor-detail-table th:nth-child(2) { width: 10%; }
.container:has(.price-mode-tabs) .competitor-detail-table th:nth-child(3) { width: 14%; }
.container:has(.price-mode-tabs) .competitor-detail-table th:nth-child(4) { width: 13%; }
.container:has(.price-mode-tabs) .competitor-detail-table th:nth-child(5) { width: 11%; }
.container:has(.price-mode-tabs) .competitor-detail-table th:nth-child(6) { width: 32%; }

.container:has(.price-mode-tabs) .button-small {
    min-width: 78px !important;
    padding: 8px 12px !important;
    font-size: 13px !important;
    border-radius: 8px !important;
    white-space: nowrap !important;
    text-align: center !important;
}

.container:has(.price-mode-tabs) .likely,
.container:has(.price-mode-tabs) .opened { color: #86efac !important; font-weight: 900 !important; }
.container:has(.price-mode-tabs) .review,
.container:has(.price-mode-tabs) .blocked { color: #fbbf24 !important; font-weight: 900 !important; }
.container:has(.price-mode-tabs) .notfound,
.container:has(.price-mode-tabs) .no { color: rgba(255,255,255,.72) !important; font-weight: 900 !important; }
.container:has(.price-mode-tabs) .error { color: #fecaca !important; font-weight: 900 !important; }

@media (max-width: 1000px) {
    .container:has(.price-mode-tabs) .summary-grid,
    .container:has(.price-mode-tabs) .detail-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

/* =========================================================
   COMPARE PRICING READABILITY PASS
   Keeps the completed SKU results easier for the team to scan.
   ========================================================= */
.container:has(.price-mode-tabs) #liveMessage,
.container:has(.price-mode-tabs) #liveBC,
.container:has(.price-mode-tabs) #liveSummary,
.container:has(.price-mode-tabs) #liveTable {
    margin-top: 14px !important;
}

.container:has(.price-mode-tabs) .compare-run-message,
.container:has(.price-mode-tabs) .bc-card,
.container:has(.price-mode-tabs) .compare-product-card {
    padding: 16px !important;
    border-radius: 16px !important;
    line-height: 1.35 !important;
}

.container:has(.price-mode-tabs) .compare-run-title,
.container:has(.price-mode-tabs) .compare-product-title {
    color: var(--sms-light-blue) !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    text-transform: uppercase !important;
    letter-spacing: .06em !important;
    margin: 0 0 8px !important;
}

.container:has(.price-mode-tabs) .compare-run-note,
.container:has(.price-mode-tabs) .compare-product-note {
    margin-top: 10px !important;
    color: var(--sms-soft-white) !important;
    line-height: 1.45 !important;
}

.container:has(.price-mode-tabs) .compare-product-name {
    color: var(--sms-white) !important;
    font-size: 17px !important;
    font-weight: 900 !important;
    margin: 0 0 12px !important;
    overflow-wrap: anywhere !important;
}

.container:has(.price-mode-tabs) .compare-run-grid,
.container:has(.price-mode-tabs) .compare-product-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)) !important;
    gap: 10px !important;
    margin-top: 8px !important;
}

.container:has(.price-mode-tabs) .compare-run-grid > div,
.container:has(.price-mode-tabs) .compare-product-grid > div {
    min-width: 0 !important;
    padding: 10px 12px !important;
    border-radius: 12px !important;
    background: rgba(255,255,255,.075) !important;
    border: 1px solid rgba(126,200,255,.24) !important;
}

.container:has(.price-mode-tabs) .compare-run-grid span,
.container:has(.price-mode-tabs) .compare-product-grid span {
    display: block !important;
    color: var(--sms-light-blue) !important;
    font-size: 10px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .05em !important;
    margin-bottom: 4px !important;
}

.container:has(.price-mode-tabs) .compare-run-grid strong,
.container:has(.price-mode-tabs) .compare-product-grid strong {
    display: block !important;
    color: var(--sms-white) !important;
    font-size: 14px !important;
    line-height: 1.25 !important;
    overflow-wrap: anywhere !important;
}

/* Decision cards below the 4-card market summary should also be real cards,
   not full-width horizontal bands. */
.container:has(.price-mode-tabs) .decision-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(235px, 1fr)) !important;
    gap: 12px !important;
    margin-top: 14px !important;
}

.container:has(.price-mode-tabs) .decision-card {
    min-height: 102px !important;
    overflow: hidden !important;
}

.container:has(.price-mode-tabs) .decision-card .summary-value {
    font-size: 24px !important;
    line-height: 1.1 !important;
}

.container:has(.price-mode-tabs) .decision-card .summary-value.review,
.container:has(.price-mode-tabs) .decision-card .summary-value.blocked,
.container:has(.price-mode-tabs) .summary-value.review,
.container:has(.price-mode-tabs) .summary-value.blocked {
    color: #fbbf24 !important;
}

/* SKU result table rules that were previously only in sku_tab.py. */
.container:has(.price-mode-tabs) .table-wrap {
    width: 100% !important;
    overflow-x: auto !important;
    margin-top: 16px !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-radius: 14px !important;
    box-shadow: 0 10px 24px rgba(0,0,0,.10) !important;
}

.container:has(.price-mode-tabs) .result-table {
    table-layout: fixed !important;
    min-width: 1120px !important;
    margin-top: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
}

.container:has(.price-mode-tabs) .result-table th:nth-child(1) { width: 15%; }
.container:has(.price-mode-tabs) .result-table th:nth-child(2) { width: 9%; }
.container:has(.price-mode-tabs) .result-table th:nth-child(3) { width: 12%; }
.container:has(.price-mode-tabs) .result-table th:nth-child(4) { width: 11%; }
.container:has(.price-mode-tabs) .result-table th:nth-child(5),
.container:has(.price-mode-tabs) .result-table th:nth-child(6),
.container:has(.price-mode-tabs) .result-table th:nth-child(7) { width: 10%; }
.container:has(.price-mode-tabs) .result-table th:nth-child(8) { width: 12%; }
.container:has(.price-mode-tabs) .result-table th:nth-child(9) { width: 26%; }

.container:has(.price-mode-tabs) .result-table th,
.container:has(.price-mode-tabs) .result-table td {
    padding: 10px 12px !important;
    line-height: 1.32 !important;
    vertical-align: top !important;
}

.container:has(.price-mode-tabs) .result-table td {
    overflow-wrap: anywhere !important;
}

.container:has(.price-mode-tabs) .result-table .link-title,
.container:has(.price-mode-tabs) .result-table a {
    color: var(--sms-light-blue) !important;
    font-weight: 800 !important;
}

.container:has(.price-mode-tabs) .nowrap {
    white-space: nowrap !important;
}

@media (max-width: 1000px) {
    .container:has(.price-mode-tabs) .decision-grid,
    .container:has(.price-mode-tabs) .compare-run-grid,
    .container:has(.price-mode-tabs) .compare-product-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 650px) {
    .container:has(.price-mode-tabs) .decision-grid,
    .container:has(.price-mode-tabs) .summary-grid,
    .container:has(.price-mode-tabs) .compare-run-grid,
    .container:has(.price-mode-tabs) .compare-product-grid {
        grid-template-columns: 1fr !important;
    }
}

/* =========================================================
   COMPARE PRICING - SKU lookup cleanup
   Removes editable price/cost inputs from the SKU form and
   improves the BigCommerce lookup confirmation bubble.
   ========================================================= */
.container .compare-form-note {
    max-width: 820px;
    margin: 10px 0 14px;
    color: var(--sms-soft-white) !important;
    font-size: 12px;
    line-height: 1.35;
}

.container .compare-lookup-result {
    margin-top: 18px !important;
    padding: 18px 24px 18px 28px !important;
    border-left: 5px solid var(--sms-light-blue) !important;
    border-radius: 16px !important;
    background: linear-gradient(145deg, var(--sms-medium-blue) 0%, var(--sms-medium-blue-2) 100%) !important;
    color: var(--sms-white) !important;
}

.container .compare-lookup-result::after {
    left: 24px !important;
    right: 24px !important;
}

.container .compare-lookup-title {
    color: var(--sms-white) !important;
    font-size: 17px;
    font-weight: 950;
    line-height: 1.2;
    margin-bottom: 4px;
}

.container .compare-lookup-sub {
    color: var(--sms-soft-white) !important;
    font-size: 13px;
    line-height: 1.35;
}

/* =========================================================
   COMPARE PRICING RESULT READABILITY TWEAKS
   Keeps Compare Pricing aligned with the shared Command Center font
   and turns long result titles into compact "Result Link" cells.
   ========================================================= */
.container:has(.price-mode-tabs),
.container:has(.price-mode-tabs) *,
.sms-cc-sidebar,
.sms-cc-sidebar *,
.sms-cc-topbar,
.sms-cc-topbar * {
    font-family: var(--sms-app-font-family) !important;
}

.container:has(.price-mode-tabs) .compare-run-message {
    padding: 18px 20px !important;
    margin: 16px 0 18px !important;
}

.container:has(.price-mode-tabs) .compare-run-message-start {
    max-width: none !important;
}

.container:has(.price-mode-tabs) .compare-run-message-start .compare-run-grid {
    grid-template-columns: repeat(3, minmax(180px, 1fr)) !important;
}

.container:has(.price-mode-tabs) .result-table {
    min-width: 1040px !important;
}

.container:has(.price-mode-tabs) .result-table th:nth-child(1) { width: 16% !important; }
.container:has(.price-mode-tabs) .result-table th:nth-child(2) { width: 9% !important; }
.container:has(.price-mode-tabs) .result-table th:nth-child(3) { width: 12% !important; }
.container:has(.price-mode-tabs) .result-table th:nth-child(4) { width: 11% !important; }
.container:has(.price-mode-tabs) .result-table th:nth-child(5) { width: 10% !important; }
.container:has(.price-mode-tabs) .result-table th:nth-child(6) { width: 10% !important; }
.container:has(.price-mode-tabs) .result-table th:nth-child(7) { width: 10% !important; }
.container:has(.price-mode-tabs) .result-table th:nth-child(8) { width: 12% !important; }
.container:has(.price-mode-tabs) .result-table th:nth-child(9) { width: 10% !important; }

.container:has(.price-mode-tabs) .result-table td:nth-child(9) {
    text-align: center !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
}

.container:has(.price-mode-tabs) .result-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 86px !important;
    max-width: 100% !important;
    padding: 6px 9px !important;
    border-radius: 999px !important;
    background: rgba(126, 200, 255, .13) !important;
    border: 1px solid rgba(126, 200, 255, .34) !important;
    color: var(--sms-light-blue) !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    line-height: 1.1 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

.container:has(.price-mode-tabs) .result-link:hover {
    background: rgba(126, 200, 255, .22) !important;
    color: var(--sms-white) !important;
}

@media (max-width: 900px) {
    .container:has(.price-mode-tabs) .compare-run-message-start .compare-run-grid {
        grid-template-columns: 1fr !important;
    }
}

/* =========================================================
   COMPARE PRICING CATEGORY READABILITY PASS
   Aligns category controls, trims product/result tables, and
   uses compact result links like the SKU comparison page.
   ========================================================= */
.container:has(.price-mode-tabs) .category-controls {
    align-items: start !important;
    margin-top: 22px !important;
}

.container:has(.price-mode-tabs) .category-help,
.container:has(.price-mode-tabs) .category-count {
    display: block !important;
    margin: 5px 0 0 !important;
    padding-left: 0 !important;
    max-width: 100% !important;
    line-height: 1.25 !important;
}

.container:has(.price-mode-tabs) .category-count {
    margin-top: 2px !important;
}

.container:has(.price-mode-tabs) .batch-controls {
    align-items: start !important;
    margin-top: 20px !important;
}

.container:has(.price-mode-tabs) .batch-button-row {
    align-self: start !important;
    padding-top: 28px !important;
    margin-top: 0 !important;
    align-items: flex-start !important;
}

.container:has(.price-mode-tabs) .batch-button-row button {
    height: 46px !important;
    min-height: 46px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.container:has(.price-mode-tabs) .compare-category-message,
.container:has(.price-mode-tabs) .compare-category-run-message,
.container:has(.price-mode-tabs) .compare-category-summary-intro {
    padding: 18px 20px !important;
    margin: 16px 0 18px !important;
    line-height: 1.38 !important;
}

.container:has(.price-mode-tabs) .compare-category-selected-name {
    color: var(--sms-white) !important;
    font-size: 15px !important;
    font-weight: 850 !important;
    line-height: 1.35 !important;
    margin: 4px 0 10px !important;
    overflow-wrap: anywhere !important;
}

.container:has(.price-mode-tabs) .compare-category-meta-grid {
    grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)) !important;
    margin-top: 10px !important;
}

.container:has(.price-mode-tabs) .category-products-wrap,
.container:has(.price-mode-tabs) .category-results-wrap,
.container:has(.price-mode-tabs) .category-subcategory-wrap {
    margin-top: 18px !important;
}

.container:has(.price-mode-tabs) .category-products-table,
.container:has(.price-mode-tabs) .category-subcategory-table {
    table-layout: fixed !important;
    min-width: 1040px !important;
    margin-top: 0 !important;
    border: 0 !important;
}

.container:has(.price-mode-tabs) .category-products-table th:nth-child(1) { width: 6% !important; }
.container:has(.price-mode-tabs) .category-products-table th:nth-child(2) { width: 8% !important; }
.container:has(.price-mode-tabs) .category-products-table th:nth-child(3) { width: 31% !important; }
.container:has(.price-mode-tabs) .category-products-table th:nth-child(4) { width: 22% !important; }
.container:has(.price-mode-tabs) .category-products-table th:nth-child(5) { width: 16% !important; }
.container:has(.price-mode-tabs) .category-products-table th:nth-child(6) { width: 7% !important; }
.container:has(.price-mode-tabs) .category-products-table th:nth-child(7) { width: 7% !important; }
.container:has(.price-mode-tabs) .category-products-table th:nth-child(8) { width: 7% !important; }

.container:has(.price-mode-tabs) .category-products-table th,
.container:has(.price-mode-tabs) .category-products-table td,
.container:has(.price-mode-tabs) .category-result-table th,
.container:has(.price-mode-tabs) .category-result-table td,
.container:has(.price-mode-tabs) .competitor-detail-table th,
.container:has(.price-mode-tabs) .competitor-detail-table td {
    padding: 10px 12px !important;
    line-height: 1.28 !important;
    vertical-align: top !important;
}

.container:has(.price-mode-tabs) .category-products-table td,
.container:has(.price-mode-tabs) .category-result-table td,
.container:has(.price-mode-tabs) .competitor-detail-table td {
    overflow-wrap: anywhere !important;
    word-break: normal !important;
}

.container:has(.price-mode-tabs) .category-products-table .search-cell,
.container:has(.price-mode-tabs) .category-result-table .sku-cell .small {
    color: var(--sms-soft-white) !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
}

.container:has(.price-mode-tabs) .category-result-table {
    min-width: 1200px !important;
    table-layout: fixed !important;
    margin-top: 0 !important;
    border: 0 !important;
}

.container:has(.price-mode-tabs) .category-result-table th:nth-child(1) { width: 18% !important; }
.container:has(.price-mode-tabs) .category-result-table th:nth-child(2) { width: 19% !important; }
.container:has(.price-mode-tabs) .category-result-table th:nth-child(3) { width: 8% !important; }
.container:has(.price-mode-tabs) .category-result-table th:nth-child(4) { width: 7% !important; }
.container:has(.price-mode-tabs) .category-result-table th:nth-child(5) { width: 10% !important; }
.container:has(.price-mode-tabs) .category-result-table th:nth-child(6) { width: 10% !important; }
.container:has(.price-mode-tabs) .category-result-table th:nth-child(7) { width: 9% !important; }
.container:has(.price-mode-tabs) .category-result-table th:nth-child(8) { width: 12% !important; }
.container:has(.price-mode-tabs) .category-result-table th:nth-child(9) { width: 5% !important; }
.container:has(.price-mode-tabs) .category-result-table th:nth-child(10) { width: 6% !important; }

.container:has(.price-mode-tabs) .category-result-table td:nth-child(9),
.container:has(.price-mode-tabs) .category-result-table td:nth-child(10) {
    text-align: center !important;
    white-space: nowrap !important;
}

.container:has(.price-mode-tabs) .detail-row > td {
    padding: 0 !important;
    background: rgba(255,255,255,.035) !important;
}

.container:has(.price-mode-tabs) .compare-category-detail-panel {
    padding: 18px 22px 22px !important;
    border-left: 5px solid var(--sms-light-blue) !important;
}

.container:has(.price-mode-tabs) .detail-title,
.container:has(.price-mode-tabs) .detail-subtitle {
    color: var(--sms-white) !important;
    font-weight: 950 !important;
    line-height: 1.3 !important;
}

.container:has(.price-mode-tabs) .detail-title {
    font-size: 16px !important;
    margin-bottom: 14px !important;
}

.container:has(.price-mode-tabs) .detail-subtitle {
    font-size: 15px !important;
    margin: 18px 0 10px !important;
}

.container:has(.price-mode-tabs) .detail-summary-grid {
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
    gap: 12px !important;
}

.container:has(.price-mode-tabs) .competitor-detail-table {
    min-width: 1120px !important;
    table-layout: fixed !important;
    margin-top: 0 !important;
}

.container:has(.price-mode-tabs) .competitor-detail-table th:nth-child(1) { width: 16% !important; }
.container:has(.price-mode-tabs) .competitor-detail-table th:nth-child(2) { width: 9% !important; }
.container:has(.price-mode-tabs) .competitor-detail-table th:nth-child(3) { width: 12% !important; }
.container:has(.price-mode-tabs) .competitor-detail-table th:nth-child(4) { width: 12% !important; }
.container:has(.price-mode-tabs) .competitor-detail-table th:nth-child(5) { width: 10% !important; }
.container:has(.price-mode-tabs) .competitor-detail-table th:nth-child(6) { width: 11% !important; }
.container:has(.price-mode-tabs) .competitor-detail-table th:nth-child(7) { width: 9% !important; }
.container:has(.price-mode-tabs) .competitor-detail-table th:nth-child(8) { width: 12% !important; }
.container:has(.price-mode-tabs) .competitor-detail-table th:nth-child(9) { width: 9% !important; }

.container:has(.price-mode-tabs) .competitor-detail-table td:nth-child(9) {
    text-align: center !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
}

.container:has(.price-mode-tabs) .action-pill {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 999px !important;
    padding: 5px 8px !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
}

@media (max-width: 1000px) {
    .container:has(.price-mode-tabs) .batch-button-row {
        padding-top: 0 !important;
    }
}

/* =========================================================
   COMPETITORS TAB
   Keep competitor maintenance screen aligned with Command Center styling.
   ========================================================= */
.container:has(.competitors-table) {
    font-family: var(--sms-app-font-family, "proxima-nova", "Inter", "Segoe UI", Arial, sans-serif) !important;
}

.container:has(.competitors-table) > p {
    color: var(--sms-soft-white) !important;
    max-width: 980px !important;
    line-height: 1.55 !important;
    margin: 0 0 16px !important;
}

.container:has(.competitors-table) .summary-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin: 18px 0 16px !important;
}

.container:has(.competitors-table) .summary-card {
    min-width: 0 !important;
}

.container:has(.competitors-table) .competitors-help-note,
.container:has(.competitors-table) .result {
    margin: 14px 0 16px !important;
    padding: 14px 16px !important;
    background: rgba(255, 183, 77, .10) !important;
    border: 1px solid rgba(255, 183, 77, .48) !important;
    border-left: 5px solid #DCA24A !important;
    border-radius: 12px !important;
    color: var(--sms-white) !important;
    line-height: 1.5 !important;
}

.container:has(.competitors-table) .success {
    margin: 14px 0 16px !important;
    padding: 14px 16px !important;
    background: rgba(34,197,94,.12) !important;
    border: 1px solid rgba(34,197,94,.38) !important;
    border-left: 5px solid #38B247 !important;
    border-radius: 12px !important;
    color: var(--sms-white) !important;
}

.container:has(.competitors-table) .button-row {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
    margin: 16px 0 18px !important;
}

.container:has(.competitors-table) .competitors-table-wrap {
    overflow-x: visible !important;
    width: 100% !important;
    max-width: 100% !important;
}

.container:has(.competitors-table) .competitors-table {
    width: 100% !important;
    min-width: 0 !important;
    table-layout: fixed !important;
    border-collapse: separate !important;
    border-spacing: 0 !important;
    margin-top: 16px !important;
    border: 1px solid rgba(126,200,255,.28) !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    background: rgba(255,255,255,.045) !important;
}

.container:has(.competitors-table) .competitors-table th,
.container:has(.competitors-table) .competitors-table td {
    padding: 8px 8px !important;
    vertical-align: middle !important;
    border-bottom: 1px solid rgba(0,0,0,.20) !important;
    border-right: 1px solid rgba(0,0,0,.20) !important;
    color: var(--sms-white) !important;
    overflow: hidden !important;
}

.container:has(.competitors-table) .competitors-table th {
    background: linear-gradient(180deg, rgba(13, 97, 141, .95), rgba(8, 74, 112, .95)) !important;
    color: var(--sms-white) !important;
    font-weight: 900 !important;
    position: sticky !important;
    top: var(--sms-shell-topbar, 72px) !important;
    z-index: 2 !important;
}

.container:has(.competitors-table) .competitors-table th:nth-child(1) { width: 6.5% !important; }
.container:has(.competitors-table) .competitors-table th:nth-child(2) { width: 12% !important; }
.container:has(.competitors-table) .competitors-table th:nth-child(3) { width: 17% !important; }
.container:has(.competitors-table) .competitors-table th:nth-child(4) { width: 20% !important; }
.container:has(.competitors-table) .competitors-table th:nth-child(5) { width: 13% !important; }
.container:has(.competitors-table) .competitors-table th:nth-child(6) { width: 25% !important; }
.container:has(.competitors-table) .competitors-table th:nth-child(7) { width: 6.5% !important; text-align: center !important; }

.container:has(.competitors-table) .competitors-table input,
.container:has(.competitors-table) .competitors-table select {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    height: 36px !important;
    margin: 0 !important;
    padding: 7px 9px !important;
    border-radius: 9px !important;
    font-size: 13px !important;
    color: #0f172a !important;
    background: #f8fbff !important;
    border: 1px solid rgba(126,200,255,.42) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.90) !important;
    box-sizing: border-box !important;
}

.container:has(.competitors-table) .competitors-table .name-input {
    font-weight: 900 !important;
}

.container:has(.competitors-table) .delete-cell {
    text-align: center !important;
}

.container:has(.competitors-table) .delete-cell input[type="checkbox"] {
    width: 16px !important;
    height: 16px !important;
    min-width: 16px !important;
    margin: 0 auto !important;
    transform: none !important;
    accent-color: var(--brand-accent, #2695C1) !important;
}

.container:has(.competitors-table) .delete-cell .small {
    color: var(--sms-soft-white) !important;
    font-weight: 800 !important;
}

.container:has(.competitors-table) .button-secondary {
    background: rgba(148, 163, 184, .55) !important;
    color: var(--sms-soft-white) !important;
}

@media (max-width: 1200px) {
    .container:has(.competitors-table) .summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    .container:has(.competitors-table) .competitors-table th,
    .container:has(.competitors-table) .competitors-table td {
        padding: 7px 6px !important;
    }
    .container:has(.competitors-table) .competitors-table input,
    .container:has(.competitors-table) .competitors-table select {
        font-size: 12px !important;
        padding-left: 7px !important;
        padding-right: 7px !important;
    }
}


/* =========================================================
   COMPETITORS TAB - table alignment polish
   ========================================================= */
.container:has(.competitors-table) .button-row {
    margin: 18px 0 18px !important;
}

.container:has(.competitors-table) .button-row button,
.container:has(.competitors-table) .button-row .button-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 42px !important;
    padding: 10px 18px !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    font-weight: 850 !important;
    line-height: 1.15 !important;
    text-decoration: none !important;
    box-shadow: 0 8px 18px rgba(0, 0, 0, .16) !important;
}

.container:has(.competitors-table) .button-row .button-secondary {
    background: rgba(148, 163, 184, .56) !important;
    color: var(--sms-white) !important;
    border: 1px solid rgba(226, 232, 240, .28) !important;
}

.container:has(.competitors-table) .competitors-table-wrap {
    overflow-x: hidden !important;
}

.container:has(.competitors-table) .competitors-table th {
    position: static !important;
    top: auto !important;
    z-index: auto !important;
}

.container:has(.competitors-table) .competitors-table thead th {
    height: 42px !important;
    vertical-align: middle !important;
}

.container:has(.competitors-table) .competitors-table th:nth-child(1) { width: 5% !important; }
.container:has(.competitors-table) .competitors-table th:nth-child(2) { width: 16% !important; }
.container:has(.competitors-table) .competitors-table th:nth-child(3) { width: 17% !important; }
.container:has(.competitors-table) .competitors-table th:nth-child(4) { width: 20% !important; }
.container:has(.competitors-table) .competitors-table th:nth-child(5) { width: 14% !important; }
.container:has(.competitors-table) .competitors-table th:nth-child(6) { width: 21% !important; }
.container:has(.competitors-table) .competitors-table th:nth-child(7) { width: 7% !important; text-align: center !important; }

.container:has(.competitors-table) .competitors-table td:nth-child(1),
.container:has(.competitors-table) .competitors-table th:nth-child(1),
.container:has(.competitors-table) .competitors-table td:nth-child(7),
.container:has(.competitors-table) .competitors-table th:nth-child(7) {
    text-align: center !important;
}

.container:has(.competitors-table) .competitors-table .active-select {
    padding-left: 6px !important;
    padding-right: 6px !important;
    text-align: center !important;
}

.container:has(.competitors-table) .competitors-table .template-input,
.container:has(.competitors-table) .competitors-table input[name^="template_"] {
    text-overflow: ellipsis !important;
}

.container:has(.competitors-table) .competitors-table input.name-input {
    font-size: 13px !important;
}

/* =========================================================
   GLOBAL SHELL POLISH - topbar scrolls with page
   ========================================================= */
.sms-cc-topbar {
    position: static !important;
    left: auto !important;
    right: auto !important;
    top: auto !important;
    width: 100% !important;
    margin: 0 0 28px !important;
}

.container {
    padding-top: 18px !important;
}

/* Keep the search field full width after switching the topbar out of fixed mode. */
.sms-cc-topbar .sms-cc-search,
.sms-cc-topbar .sms-cc-search input[type="search"] {
    width: 100% !important;
}

/* =========================================================
   COMPETITORS TAB - summary cards and action buttons polish
   ========================================================= */
.container:has(.competitors-table) .summary-grid {
    align-items: stretch !important;
    gap: 14px !important;
    margin: 20px 0 18px !important;
}

.container:has(.competitors-table) .summary-card {
    min-height: 78px !important;
    padding: 15px 18px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    overflow: visible !important;
}

.container:has(.competitors-table) .summary-label {
    font-size: 12px !important;
    line-height: 1.25 !important;
    letter-spacing: .08em !important;
    margin: 0 0 5px !important;
    color: var(--sms-light-blue) !important;
}

.container:has(.competitors-table) .summary-value {
    font-size: 24px !important;
    line-height: 1.05 !important;
    margin: 0 !important;
    color: var(--sms-white) !important;
}

.container:has(.competitors-table) .button-row {
    margin: 18px 0 22px !important;
    gap: 10px !important;
}

.container:has(.competitors-table) .button-row button,
.container:has(.competitors-table) .button-row .button-link {
    min-height: 40px !important;
    padding: 9px 16px !important;
    border-radius: 10px !important;
    font-size: 14px !important;
    font-weight: 900 !important;
}

.container:has(.competitors-table) .button-row .button-secondary,
.container:has(.competitors-table) .button-row a.button-secondary {
    background: rgba(8, 41, 68, .42) !important;
    color: var(--sms-light-blue) !important;
    border: 1px solid rgba(126, 200, 255, .38) !important;
    box-shadow: none !important;
}

.container:has(.competitors-table) .button-row .button-secondary:hover,
.container:has(.competitors-table) .button-row a.button-secondary:hover {
    background: rgba(126, 200, 255, .12) !important;
    color: var(--sms-white) !important;
}

/* =========================================================
   REVENUE TAB - Command Center dark style cleanup
   ========================================================= */
.container:has(.revenue-tabs),
.container:has(.revenue-tabs) * {
    font-family: var(--sms-app-font-family) !important;
}

.container:has(.revenue-tabs) .revenue-hero {
    display: grid !important;
    grid-template-columns: minmax(360px, 1fr) minmax(440px, 620px) !important;
    gap: 22px !important;
    align-items: stretch !important;
    margin: 0 0 18px !important;
}

.container:has(.revenue-tabs) .revenue-hero h1 {
    margin: 0 0 10px !important;
    color: var(--sms-white) !important;
}

.container:has(.revenue-tabs) .revenue-subtitle {
    max-width: 780px !important;
    color: var(--sms-soft-white) !important;
    font-size: 16px !important;
    line-height: 1.42 !important;
}

.container:has(.revenue-tabs) .revenue-subtitle strong {
    color: var(--sms-white) !important;
}

.container:has(.revenue-tabs) .revenue-snapshot-panel {
    background: linear-gradient(135deg, var(--sms-medium-blue-3), #1473bd) !important;
    color: var(--sms-white) !important;
    border: 1px solid rgba(126, 200, 255, .42) !important;
    border-radius: 18px !important;
    padding: 18px !important;
    box-shadow: 0 18px 38px rgba(0, 0, 0, .18), inset 0 1px 0 rgba(255,255,255,.08) !important;
}

.container:has(.revenue-tabs) .revenue-snapshot-heading {
    color: var(--sms-light-blue) !important;
    text-transform: uppercase !important;
    letter-spacing: .08em !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    margin-bottom: 10px !important;
}

.container:has(.revenue-tabs) .revenue-snapshot-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

.container:has(.revenue-tabs) .revenue-mini {
    min-height: 88px !important;
    padding: 12px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(201, 232, 255, .34) !important;
    background: linear-gradient(180deg, rgba(126, 200, 255, .25), rgba(38, 149, 193, .20)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08) !important;
}

.container:has(.revenue-tabs) .revenue-mini span {
    display: block !important;
    color: rgba(255,255,255,.82) !important;
    text-transform: uppercase !important;
    font-size: 11px !important;
    font-weight: 900 !important;
    letter-spacing: .06em !important;
}

.container:has(.revenue-tabs) .revenue-mini strong {
    display: block !important;
    color: var(--sms-white) !important;
    font-size: clamp(20px, 1.6vw, 27px) !important;
    line-height: 1.05 !important;
    margin: 5px 0 3px !important;
    font-weight: 950 !important;
}

.container:has(.revenue-tabs) .revenue-mini em,
.container:has(.revenue-tabs) .revenue-mini .source-lines,
.container:has(.revenue-tabs) .revenue-mini .source-lines b {
    color: var(--sms-white) !important;
    font-style: normal !important;
    opacity: .96 !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
}

.container:has(.revenue-tabs) .revenue-snapshot-footer {
    color: rgba(255,255,255,.88) !important;
    text-align: right !important;
    font-size: 11px !important;
    margin-top: 10px !important;
}

.container:has(.revenue-tabs) .revenue-tabs {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    margin: 16px 0 22px !important;
}

.container:has(.revenue-tabs) .revenue-tab {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 42px !important;
    padding: 10px 16px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(126, 200, 255, .44) !important;
    background: #ffffff !important;
    color: var(--sms-light-blue) !important;
    -webkit-text-fill-color: var(--sms-light-blue) !important;
    text-decoration: none !important;
    font-weight: 900 !important;
    cursor: pointer !important;
    box-shadow: 0 7px 15px rgba(8, 41, 68, .16) !important;
}

.container:has(.revenue-tabs) .revenue-tab.active {
    background: linear-gradient(135deg, var(--brand-primary), var(--brand-accent)) !important;
    color: var(--sms-white) !important;
    -webkit-text-fill-color: var(--sms-white) !important;
    border-color: rgba(126, 200, 255, .60) !important;
}

.container:has(.revenue-tabs) .revenue-section {
    display: none !important;
}

.container:has(.revenue-tabs) .revenue-section.active {
    display: block !important;
}

.container:has(.revenue-tabs) .revenue-card,
.container:has(.revenue-tabs) .chart-card {
    position: relative !important;
    background: linear-gradient(180deg, rgba(29, 70, 104, .94), rgba(16, 46, 73, .96)) !important;
    color: var(--sms-white) !important;
    border: 1px solid var(--sms-dark-border-strong) !important;
    border-radius: 14px !important;
    box-shadow: var(--sms-card-shadow) !important;
}

.container:has(.revenue-tabs) .revenue-card {
    padding: 18px !important;
    margin-bottom: 18px !important;
}

.container:has(.revenue-tabs) .chart-card {
    padding: 16px !important;
}

.container:has(.revenue-tabs) .revenue-card h2,
.container:has(.revenue-tabs) .chart-card h3 {
    color: var(--sms-white) !important;
    margin-top: 0 !important;
}

.container:has(.revenue-tabs) .revenue-note {
    background: rgba(255, 245, 225, .94) !important;
    border: 1px solid #f0d8a8 !important;
    border-left: 5px solid #f0a737 !important;
    color: #33210a !important;
    padding: 11px 13px !important;
    border-radius: 10px !important;
    margin: 10px 0 14px !important;
    font-size: 13px !important;
    line-height: 1.38 !important;
}

.container:has(.revenue-tabs) .revenue-note *,
.container:has(.revenue-tabs) .revenue-note .source-meta {
    color: #33210a !important;
}

.container:has(.revenue-tabs) .revenue-kpi-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(185px, 1fr)) !important;
    gap: 12px !important;
    margin: 14px 0 !important;
}

.container:has(.revenue-tabs) .revenue-kpi {
    min-width: 0 !important;
    min-height: 96px !important;
    padding: 14px !important;
    border-radius: 14px !important;
    border: 1px solid rgba(126, 200, 255, .44) !important;
    background: linear-gradient(180deg, rgba(29, 70, 104, .96), rgba(16, 46, 73, .94)) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.05) !important;
    border-top: 4px solid var(--sms-line-blue) !important;
}

.container:has(.revenue-tabs) .revenue-kpi.green { border-top-color: #38B247 !important; }
.container:has(.revenue-tabs) .revenue-kpi.orange { border-top-color: #f59e0b !important; }
.container:has(.revenue-tabs) .revenue-kpi.purple { border-top-color: #8b5cf6 !important; }
.container:has(.revenue-tabs) .revenue-kpi.red { border-top-color: #ef4444 !important; }

.container:has(.revenue-tabs) .revenue-kpi .label,
.container:has(.revenue-tabs) .revenue-kpi .summary-label,
.container:has(.revenue-tabs) .revenue-kpi .metric-label {
    color: var(--sms-light-blue) !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    text-transform: uppercase !important;
    letter-spacing: .07em !important;
    margin: 0 0 6px !important;
}

.container:has(.revenue-tabs) .revenue-kpi .value {
    color: var(--sms-white) !important;
    font-size: clamp(22px, 1.65vw, 30px) !important;
    line-height: 1.05 !important;
    font-weight: 950 !important;
    margin: 0 !important;
    overflow-wrap: anywhere !important;
}

.container:has(.revenue-tabs) .revenue-kpi .sub,
.container:has(.revenue-tabs) .source-meta,
.container:has(.revenue-tabs) .sales-help,
.container:has(.revenue-tabs) .small {
    color: var(--sms-soft-white) !important;
}

.container:has(.revenue-tabs) .chart-grid {
    display: grid !important;
    grid-template-columns: minmax(320px, 1fr) minmax(320px, 1fr) !important;
    gap: 16px !important;
    margin-top: 16px !important;
}

.container:has(.revenue-tabs) .bar-row {
    display: grid !important;
    grid-template-columns: minmax(165px, 300px) minmax(160px, 1fr) minmax(84px, auto) !important;
    gap: 10px !important;
    align-items: center !important;
    margin: 10px 0 !important;
    color: var(--sms-white) !important;
    font-size: 13px !important;
}

.container:has(.revenue-tabs) .bar-label {
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}

.container:has(.revenue-tabs) .bar-label strong,
.container:has(.revenue-tabs) .nowrap strong {
    color: var(--sms-white) !important;
}

.container:has(.revenue-tabs) .bar-track {
    height: 14px !important;
    background: rgba(201, 232, 255, .22) !important;
    border-radius: 999px !important;
    overflow: hidden !important;
}

.container:has(.revenue-tabs) .bar-fill {
    height: 100% !important;
    background: linear-gradient(90deg, var(--brand-accent), var(--sms-line-blue)) !important;
    border-radius: 999px !important;
}

.container:has(.revenue-tabs) .source-sales-rep .bar-fill { background: linear-gradient(90deg,#0f766e,#14b8a6) !important; }
.container:has(.revenue-tabs) .source-direct .bar-fill { background: linear-gradient(90deg,#0B5E8E,#2695C1) !important; }
.container:has(.revenue-tabs) .source-quote .bar-fill { background: linear-gradient(90deg,#8b5cf6,#a78bfa) !important; }
.container:has(.revenue-tabs) .source-other .bar-fill { background: linear-gradient(90deg,#64748b,#94a3b8) !important; }

.container:has(.revenue-tabs) .coming-soon,
.container:has(.revenue-tabs) .revenue-status {
    background: rgba(16, 46, 73, .92) !important;
    border: 1px dashed rgba(126, 200, 255, .44) !important;
    color: var(--sms-white) !important;
    border-radius: 14px !important;
    padding: 16px !important;
}

.container:has(.revenue-tabs) .revenue-status.active {
    display: block !important;
}

.container:has(.revenue-tabs) .revenue-progress-track {
    height: 12px !important;
    background: rgba(201, 232, 255, .22) !important;
    border-radius: 999px !important;
    overflow: hidden !important;
}

.container:has(.revenue-tabs) .revenue-progress-fill {
    height: 100% !important;
    width: 0%;
    background: linear-gradient(135deg,var(--brand-primary),var(--brand-accent)) !important;
    border-radius: 999px !important;
    transition: width .25s ease !important;
}

.container:has(.revenue-tabs) .sales-form-grid {
    display: grid !important;
    grid-template-columns: minmax(300px, 1.35fr) minmax(230px, .8fr) minmax(230px, .8fr) auto !important;
    gap: 14px !important;
    align-items: end !important;
}

.container:has(.revenue-tabs) .sales-form-grid input,
.container:has(.revenue-tabs) .sales-form-grid select,
.container:has(.revenue-tabs) .top-products-control select {
    margin-bottom: 0 !important;
}

.container:has(.revenue-tabs) .top-products-control {
    display: flex !important;
    gap: 10px !important;
    align-items: end !important;
    flex-wrap: wrap !important;
    margin: 12px 0 !important;
}

.container:has(.revenue-tabs) .top-products-control select {
    width: 180px !important;
}

.container:has(.revenue-tabs) .sales-table-wrap {
    overflow-x: auto !important;
}

.container:has(.revenue-tabs) .sales-orders-table,
.container:has(.revenue-tabs) .sales-breakdown-table,
.container:has(.revenue-tabs) .revenue-table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin-top: 16px !important;
    background: rgba(16, 46, 73, .72) !important;
    border: 1px solid rgba(126, 200, 255, .28) !important;
    border-radius: 12px !important;
    overflow: hidden !important;
}

.container:has(.revenue-tabs) .sales-orders-table th,
.container:has(.revenue-tabs) .sales-breakdown-table th,
.container:has(.revenue-tabs) .revenue-table th {
    background: #0B5E8E !important;
    color: var(--sms-white) !important;
    text-align: left !important;
    padding: 10px !important;
    position: static !important;
}

.container:has(.revenue-tabs) .sales-orders-table td,
.container:has(.revenue-tabs) .sales-breakdown-table td,
.container:has(.revenue-tabs) .revenue-table td {
    border-bottom: 1px solid rgba(126, 200, 255, .18) !important;
    color: var(--sms-white) !important;
    padding: 10px !important;
    vertical-align: top !important;
}

.container:has(.revenue-tabs) .quote-opportunities-table {
    table-layout: fixed !important;
}

.container:has(.revenue-tabs) .lookup-result-title {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
}

.container:has(.revenue-tabs) .custom-date-grid {
    display: none !important;
    margin-top: 10px !important;
}

.container:has(.revenue-tabs) .custom-date-grid.show {
    display: grid !important;
}

.container:has(.revenue-tabs) .result {
    background: rgba(16, 46, 73, .92) !important;
    border: 1px solid rgba(126, 200, 255, .42) !important;
    border-left: 5px solid var(--sms-line-blue) !important;
    color: var(--sms-white) !important;
    border-radius: 12px !important;
}

.container:has(.revenue-tabs) .result.warning {
    background: rgba(255, 250, 240, .94) !important;
    border-color: #f0d8a8 !important;
    border-left-color: #f0a737 !important;
    color: #33210a !important;
}

.container:has(.revenue-tabs) .result.error {
    background: rgba(255, 245, 245, .96) !important;
    border-color: #f0b8b8 !important;
    border-left-color: #b00020 !important;
    color: #3b0a0a !important;
}

@media (max-width: 1100px) {
    .container:has(.revenue-tabs) .revenue-hero,
    .container:has(.revenue-tabs) .chart-grid,
    .container:has(.revenue-tabs) .sales-form-grid {
        grid-template-columns: 1fr !important;
    }
    .container:has(.revenue-tabs) .revenue-snapshot-grid {
        grid-template-columns: 1fr !important;
    }
}

/* =========================================================
   REVENUE TAB - dark Command Center styling
   ========================================================= */
.container:has(.revenue-hero),
.container:has(.revenue-hero) * {
    font-family: var(--sms-app-font-family) !important;
}

.container:has(.revenue-hero) .revenue-hero {
    display: grid !important;
    grid-template-columns: minmax(360px, 1fr) minmax(440px, 620px) !important;
    gap: 22px !important;
    align-items: stretch !important;
    margin: 0 0 18px !important;
}

.container:has(.revenue-hero) .revenue-hero h1 {
    margin: 0 0 8px !important;
    color: var(--sms-white) !important;
}

.container:has(.revenue-hero) .revenue-subtitle {
    max-width: 780px !important;
    margin: 0 !important;
    font-size: 16px !important;
    line-height: 1.38 !important;
    color: var(--sms-soft-white) !important;
}

.container:has(.revenue-hero) .revenue-snapshot-panel {
    position: relative !important;
    overflow: hidden !important;
    min-height: 165px !important;
    padding: 18px !important;
    border-radius: 18px !important;
    color: var(--sms-white) !important;
    background: linear-gradient(145deg, var(--sms-medium-blue-3) 0%, #125C92 100%) !important;
    border: 1px solid var(--sms-dark-border-strong) !important;
    box-shadow: var(--sms-card-shadow) !important;
}

.container:has(.revenue-hero) .revenue-snapshot-panel::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 0;
    height: 3px;
    border-radius: 999px 999px 0 0;
    background: linear-gradient(90deg, var(--brand-accent), var(--sms-light-blue), var(--sms-line-blue));
}

.container:has(.revenue-hero) .revenue-snapshot-heading {
    margin: 0 0 10px !important;
    color: var(--sms-light-blue) !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
}

.container:has(.revenue-hero) .revenue-snapshot-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

.container:has(.revenue-hero) .revenue-mini {
    min-height: 86px !important;
    padding: 12px !important;
    border-radius: 12px !important;
    color: var(--sms-white) !important;
    background: linear-gradient(145deg, rgba(126, 200, 255, .24), rgba(38, 149, 193, .18)) !important;
    border: 1px solid rgba(218, 239, 255, .34) !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.08) !important;
}

.container:has(.revenue-hero) .revenue-mini span,
.container:has(.revenue-hero) .revenue-mini .source-lines,
.container:has(.revenue-hero) .revenue-mini em {
    color: var(--sms-white) !important;
}

.container:has(.revenue-hero) .revenue-mini span {
    display: block !important;
    font-size: 11px !important;
    font-weight: 950 !important;
    letter-spacing: .08em !important;
    text-transform: uppercase !important;
    opacity: .92 !important;
}

.container:has(.revenue-hero) .revenue-mini strong {
    display: block !important;
    margin: 5px 0 2px !important;
    color: var(--sms-white) !important;
    font-size: clamp(20px, 1.6vw, 27px) !important;
    line-height: 1.02 !important;
    font-weight: 950 !important;
    letter-spacing: -.02em !important;
}

.container:has(.revenue-hero) .revenue-mini em,
.container:has(.revenue-hero) .revenue-mini .source-lines {
    display: block !important;
    font-style: normal !important;
    font-size: 12px !important;
    line-height: 1.32 !important;
    opacity: .95 !important;
}

.container:has(.revenue-hero) .revenue-snapshot-footer {
    margin-top: 10px !important;
    color: rgba(255,255,255,.88) !important;
    text-align: right !important;
    font-size: 11px !important;
}

.container:has(.revenue-hero) .revenue-tabs {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    margin: 18px 0 22px !important;
}

.container:has(.revenue-hero) .revenue-tab {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 40px !important;
    padding: 10px 16px !important;
    border-radius: 12px !important;
    border: 1px solid var(--sms-dark-border) !important;
    background: rgba(255,255,255,.08) !important;
    color: var(--sms-light-blue) !important;
    text-decoration: none !important;
    font-weight: 950 !important;
    cursor: pointer !important;
    box-shadow: 0 5px 12px rgba(15,23,42,.06) !important;
}

.container:has(.revenue-hero) .revenue-tab.active {
    background: linear-gradient(135deg,var(--brand-primary),var(--brand-accent)) !important;
    color: var(--sms-white) !important;
    border-color: transparent !important;
}

.container:has(.revenue-hero) .revenue-tab:hover {
    color: var(--sms-white) !important;
    background: rgba(255,255,255,.14) !important;
}

.container:has(.revenue-hero) .revenue-section {
    display: none !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    overflow: visible !important;
    padding: 0 !important;
}

.container:has(.revenue-hero) .revenue-section::after {
    display: none !important;
}

.container:has(.revenue-hero) .revenue-section.active {
    display: block !important;
}

.container:has(.revenue-hero) .revenue-card,
.container:has(.revenue-hero) .chart-card,
.container:has(.revenue-hero) .coming-soon,
.container:has(.revenue-hero) .revenue-status {
    position: relative !important;
    overflow: hidden !important;
    border-radius: 18px !important;
    background: linear-gradient(145deg, var(--sms-medium-blue) 0%, var(--sms-medium-blue-2) 100%) !important;
    border: 1px solid var(--sms-dark-border) !important;
    color: var(--sms-white) !important;
    box-shadow: var(--sms-card-shadow) !important;
}

.container:has(.revenue-hero) .revenue-card {
    padding: 16px !important;
    margin-bottom: 18px !important;
}

.container:has(.revenue-hero) .chart-card,
.container:has(.revenue-hero) .coming-soon {
    padding: 14px !important;
}

.container:has(.revenue-hero) .revenue-card::after,
.container:has(.revenue-hero) .chart-card::after,
.container:has(.revenue-hero) .coming-soon::after,
.container:has(.revenue-hero) .revenue-status::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 0;
    height: 3px;
    border-radius: 999px 999px 0 0;
    background: linear-gradient(90deg, var(--brand-accent), var(--sms-light-blue), var(--sms-line-blue));
    pointer-events: none;
}

.container:has(.revenue-hero) .revenue-card h2,
.container:has(.revenue-hero) .chart-card h3 {
    margin-top: 0 !important;
    color: var(--sms-white) !important;
}

.container:has(.revenue-hero) .revenue-note {
    margin: 10px 0 !important;
    padding: 10px 12px !important;
    border-radius: 10px !important;
    color: var(--sms-white) !important;
    background: rgba(255, 250, 240, .08) !important;
    border: 1px solid rgba(240, 216, 168, .60) !important;
    border-left: 5px solid #d69a2d !important;
}

.container:has(.revenue-hero) .revenue-kpi-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(185px, 1fr)) !important;
    gap: 12px !important;
    margin: 14px 0 !important;
}

.container:has(.revenue-hero) .revenue-kpi {
    position: relative !important;
    overflow: hidden !important;
    min-width: 0 !important;
    min-height: 92px !important;
    padding: 14px !important;
    border-radius: 14px !important;
    background: linear-gradient(145deg, rgba(29,70,104,.96), rgba(16,46,73,.98)) !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-top: 4px solid var(--brand-accent) !important;
    color: var(--sms-white) !important;
    box-shadow: 0 8px 18px rgba(0,0,0,.10), inset 0 1px 0 rgba(255,255,255,.04) !important;
}

.container:has(.revenue-hero) .revenue-kpi::after {
    content: "";
    position: absolute;
    left: 14px;
    right: 14px;
    bottom: 0;
    height: 3px;
    border-radius: 999px 999px 0 0;
    background: linear-gradient(90deg, var(--brand-accent), var(--sms-light-blue));
}

.container:has(.revenue-hero) .revenue-kpi.green { border-top-color: #16a34a !important; }
.container:has(.revenue-hero) .revenue-kpi.orange { border-top-color: #f59e0b !important; }
.container:has(.revenue-hero) .revenue-kpi.purple { border-top-color: #8b5cf6 !important; }
.container:has(.revenue-hero) .revenue-kpi.red { border-top-color: #ef4444 !important; }

.container:has(.revenue-hero) .revenue-kpi .label,
.container:has(.revenue-hero) .quote-summary-label {
    color: var(--sms-light-blue) !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    text-transform: uppercase !important;
    letter-spacing: .06em !important;
}

.container:has(.revenue-hero) .revenue-kpi .value,
.container:has(.revenue-hero) .quote-summary-value {
    color: var(--sms-white) !important;
    font-size: clamp(20px, 1.6vw, 28px) !important;
    line-height: 1.05 !important;
    font-weight: 950 !important;
    margin-top: 4px !important;
    letter-spacing: -.02em !important;
    overflow-wrap: anywhere !important;
}

.container:has(.revenue-hero) .revenue-kpi .sub,
.container:has(.revenue-hero) .source-meta,
.container:has(.revenue-hero) .sales-help,
.container:has(.revenue-hero) .coming-soon,
.container:has(.revenue-hero) .quote-summary-sub {
    color: var(--sms-soft-white) !important;
}

.container:has(.revenue-hero) .chart-grid {
    display: grid !important;
    grid-template-columns: minmax(320px, 1fr) minmax(320px, 1fr) !important;
    gap: 16px !important;
    margin-top: 14px !important;
}

.container:has(.revenue-hero) .bar-row {
    display: grid !important;
    grid-template-columns: minmax(150px, 300px) minmax(160px, 1fr) minmax(78px, auto) !important;
    gap: 10px !important;
    align-items: center !important;
    margin: 10px 0 !important;
    font-size: 13px !important;
}

.container:has(.revenue-hero) .bar-label {
    min-width: 0 !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
    color: var(--sms-white) !important;
}

.container:has(.revenue-hero) .bar-track,
.container:has(.revenue-hero) .revenue-progress-track {
    height: 14px !important;
    overflow: hidden !important;
    border-radius: 999px !important;
    background: rgba(226,232,240,.28) !important;
}

.container:has(.revenue-hero) .bar-fill,
.container:has(.revenue-hero) .revenue-progress-fill {
    height: 100% !important;
    width: 0%;
    border-radius: 999px !important;
    background: linear-gradient(90deg, var(--brand-accent), var(--sms-line-blue)) !important;
}

.container:has(.revenue-hero) .source-sales-rep .bar-fill { background: linear-gradient(90deg,#0f766e,#14b8a6) !important; }
.container:has(.revenue-hero) .source-direct .bar-fill { background: linear-gradient(90deg,var(--brand-primary),var(--brand-accent)) !important; }
.container:has(.revenue-hero) .source-quote .bar-fill { background: linear-gradient(90deg,#8b5cf6,#a78bfa) !important; }
.container:has(.revenue-hero) .source-other .bar-fill { background: linear-gradient(90deg,#64748b,#94a3b8) !important; }

.container:has(.revenue-hero) .sales-form-grid {
    display: grid !important;
    grid-template-columns: minmax(300px, 1.35fr) minmax(230px, .8fr) minmax(230px, .8fr) auto !important;
    gap: 14px !important;
    align-items: end !important;
}

.container:has(.revenue-hero) .sales-form-grid input,
.container:has(.revenue-hero) .sales-form-grid select,
.container:has(.revenue-hero) .top-products-control select {
    margin-bottom: 0 !important;
}

.container:has(.revenue-hero) .sales-button-cell button,
.container:has(.revenue-hero) #refreshTopProductsButton,
.container:has(.revenue-hero) #refreshFunnelButton,
.container:has(.revenue-hero) #refreshQuotesPipelineButton {
    min-height: 46px !important;
    white-space: nowrap !important;
}

.container:has(.revenue-hero) .custom-date-grid {
    display: none !important;
    margin-top: 10px !important;
}

.container:has(.revenue-hero) .custom-date-grid.show {
    display: grid !important;
}

.container:has(.revenue-hero) .lookup-result-title {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
}

.container:has(.revenue-hero) .top-products-control {
    display: flex !important;
    gap: 10px !important;
    align-items: end !important;
    flex-wrap: wrap !important;
    margin: 12px 0 !important;
}

.container:has(.revenue-hero) .top-products-control select {
    width: 180px !important;
}

.container:has(.revenue-hero) .revenue-status {
    display: none !important;
    margin: 14px 0 !important;
    padding: 12px !important;
}

.container:has(.revenue-hero) .revenue-status.active {
    display: block !important;
}

.container:has(.revenue-hero) .sales-table-wrap {
    overflow-x: auto !important;
}

.container:has(.revenue-hero) .sales-orders-table,
.container:has(.revenue-hero) .sales-breakdown-table,
.container:has(.revenue-hero) .revenue-table {
    width: 100% !important;
    margin-top: 16px !important;
    border-collapse: collapse !important;
    border-radius: 14px !important;
    overflow: hidden !important;
    background: rgba(29,70,104,.76) !important;
}

.container:has(.revenue-hero) .sales-orders-table th,
.container:has(.revenue-hero) .sales-breakdown-table th,
.container:has(.revenue-hero) .revenue-table th {
    position: static !important;
    padding: 10px !important;
    color: var(--sms-white) !important;
    background: linear-gradient(180deg, #0D5E88, #0A4B70) !important;
    border-bottom: 1px solid rgba(126,200,255,.26) !important;
}

.container:has(.revenue-hero) .sales-orders-table td,
.container:has(.revenue-hero) .sales-breakdown-table td,
.container:has(.revenue-hero) .revenue-table td {
    padding: 10px !important;
    vertical-align: top !important;
    color: var(--sms-white) !important;
    border-bottom: 1px solid rgba(126,200,255,.18) !important;
}

.container:has(.revenue-hero) .quote-opportunities-table {
    table-layout: fixed !important;
}

.container:has(.revenue-hero) .quote-opportunities-table th:nth-child(1) { width:24% !important; }
.container:has(.revenue-hero) .quote-opportunities-table th:nth-child(2) { width:20% !important; }
.container:has(.revenue-hero) .quote-opportunities-table th:nth-child(3) { width:13% !important; }
.container:has(.revenue-hero) .quote-opportunities-table th:nth-child(4) { width:15% !important; }
.container:has(.revenue-hero) .quote-opportunities-table th:nth-child(5) { width:12% !important; }
.container:has(.revenue-hero) .quote-opportunities-table th:nth-child(6) { width:16% !important; }

.container:has(.revenue-hero) .quote-opportunities-table td {
    overflow-wrap: anywhere !important;
    word-break: break-word !important;
}

.container:has(.revenue-hero) .nowrap {
    white-space: nowrap !important;
}

@media (max-width: 1100px) {
    .container:has(.revenue-hero) .revenue-hero,
    .container:has(.revenue-hero) .chart-grid,
    .container:has(.revenue-hero) .sales-form-grid {
        grid-template-columns: 1fr !important;
    }
    .container:has(.revenue-hero) .revenue-snapshot-grid {
        grid-template-columns: 1fr !important;
    }
}


/* --------------------------------------------------------------------------
   Revenue polish pass - snapshot sizing, lookup spacing, and table widths
   -------------------------------------------------------------------------- */
.container:has(.revenue-hero) .revenue-hero {
    grid-template-columns: minmax(320px, .78fr) minmax(650px, 1.22fr) !important;
}

.container:has(.revenue-hero) .revenue-snapshot-panel {
    min-width: 650px !important;
}

.container:has(.revenue-hero) .revenue-snapshot-grid {
    grid-template-columns: minmax(0, 1.02fr) minmax(0, 1.22fr) minmax(0, 1.06fr) !important;
}

.container:has(.revenue-hero) .revenue-mini strong {
    font-size: clamp(21px, 1.42vw, 27px) !important;
    white-space: nowrap !important;
}

.container:has(.revenue-hero) .revenue-mini .source-lines {
    font-size: 11.5px !important;
    line-height: 1.34 !important;
}

.container:has(.revenue-hero) .sales-help {
    margin: 12px 0 14px !important;
    line-height: 1.42 !important;
}

.container:has(.revenue-hero) #revenue-top-products .revenue-table {
    table-layout: fixed !important;
}

.container:has(.revenue-hero) #revenue-top-products .revenue-table th:nth-child(1),
.container:has(.revenue-hero) #revenue-top-products .revenue-table td:nth-child(1) { width: 18% !important; }
.container:has(.revenue-hero) #revenue-top-products .revenue-table th:nth-child(2),
.container:has(.revenue-hero) #revenue-top-products .revenue-table td:nth-child(2) { width: 35% !important; }
.container:has(.revenue-hero) #revenue-top-products .revenue-table th:nth-child(3),
.container:has(.revenue-hero) #revenue-top-products .revenue-table td:nth-child(3) { width: 11% !important; }
.container:has(.revenue-hero) #revenue-top-products .revenue-table th:nth-child(4),
.container:has(.revenue-hero) #revenue-top-products .revenue-table td:nth-child(4) { width: 5% !important; }
.container:has(.revenue-hero) #revenue-top-products .revenue-table th:nth-child(5),
.container:has(.revenue-hero) #revenue-top-products .revenue-table td:nth-child(5) { width: 6% !important; }
.container:has(.revenue-hero) #revenue-top-products .revenue-table th:nth-child(6),
.container:has(.revenue-hero) #revenue-top-products .revenue-table td:nth-child(6) { width: 9% !important; }
.container:has(.revenue-hero) #revenue-top-products .revenue-table th:nth-child(7),
.container:has(.revenue-hero) #revenue-top-products .revenue-table td:nth-child(7) { width: 16% !important; }

.container:has(.revenue-hero) #revenue-top-products .revenue-table td:nth-child(2),
.container:has(.revenue-hero) #revenue-top-products .revenue-table td:nth-child(7) {
    overflow-wrap: anywhere !important;
    word-break: normal !important;
}

.container:has(.revenue-hero) .quote-opportunities-table th:nth-child(1) { width: 23% !important; }
.container:has(.revenue-hero) .quote-opportunities-table th:nth-child(2) { width: 19% !important; }
.container:has(.revenue-hero) .quote-opportunities-table th:nth-child(3) { width: 12% !important; }
.container:has(.revenue-hero) .quote-opportunities-table th:nth-child(4) { width: 15% !important; }
.container:has(.revenue-hero) .quote-opportunities-table th:nth-child(5) { width: 14% !important; }
.container:has(.revenue-hero) .quote-opportunities-table th:nth-child(6) { width: 17% !important; }

.container:has(.revenue-hero) .quote-opportunities-table th:nth-child(5),
.container:has(.revenue-hero) .quote-opportunities-table td:nth-child(5) {
    padding-right: 20px !important;
    white-space: nowrap !important;
}

.container:has(.revenue-hero) .quote-opportunities-table th:nth-child(6),
.container:has(.revenue-hero) .quote-opportunities-table td:nth-child(6) {
    padding-left: 18px !important;
}

@media (max-width: 1300px) {
    .container:has(.revenue-hero) .revenue-hero {
        grid-template-columns: 1fr !important;
    }
    .container:has(.revenue-hero) .revenue-snapshot-panel {
        min-width: 0 !important;
    }
}

/* Product Modifiers & linked accessories
   Page markup stays structural; all modifier presentation belongs here. */
.container .modifier-manager {
    --modifier-blue: #32b8f4;
    --modifier-blue-deep: #0b5f94;
    --modifier-border: rgba(104, 190, 235, .34);
    --modifier-panel: rgba(8, 45, 72, .52);
    --modifier-panel-soft: rgba(255, 255, 255, .045);
}
.container .modifier-manager .section-header-row {
    align-items: flex-start;
    gap: 24px;
}
.container .modifier-eyebrow {
    color: #76d4ff !important;
    font-size: 12px;
    font-weight: 800;
    letter-spacing: .11em;
    margin: 0 0 5px;
    text-transform: uppercase;
}
.container .modifier-header-badge {
    background: linear-gradient(135deg, rgba(39, 171, 230, .2), rgba(23, 110, 164, .32));
    border: 1px solid rgba(90, 205, 255, .58);
    border-radius: 14px;
    display: grid;
    flex: 0 0 285px;
    gap: 2px;
    padding: 13px 16px;
}
.container .modifier-header-badge strong { color: #eaf9ff !important; font-size: 14px; }
.container .modifier-header-badge span { color: #b9deef; font-size: 12px; line-height: 1.35; }
.container .modifier-workflow-grid {
    display: grid;
    gap: 16px;
    margin-top: 20px;
}
.container .modifier-step-card,
.container .modifier-history-card,
.container .modifier-legacy-card {
    background: var(--modifier-panel);
    border: 1px solid var(--modifier-border);
    border-radius: 16px;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .035);
    padding: 18px;
}
.container .modifier-step-heading {
    align-items: flex-start;
    display: flex;
    gap: 12px;
    margin-bottom: 16px;
}
.container .modifier-step-heading h3 {
    font-size: 17px !important;
    margin: 0 0 3px !important;
}
.container .modifier-step-heading p {
    color: #afd1e1 !important;
    font-size: 13px;
    line-height: 1.45;
    margin: 0;
}
.container .modifier-step-number {
    align-items: center;
    background: linear-gradient(180deg, #39c2ff, #167ab1);
    border-radius: 50%;
    box-shadow: 0 4px 12px rgba(0, 0, 0, .22);
    color: #fff;
    display: inline-flex;
    flex: 0 0 30px;
    font-size: 14px;
    font-weight: 900;
    height: 30px;
    justify-content: center;
    width: 30px;
}
.container .modifier-form-grid {
    align-items: end;
    display: grid;
    gap: 14px;
}
.container .modifier-form-grid--targets { grid-template-columns: minmax(360px, 1.4fr) minmax(240px, .7fr); }
.container .modifier-form-grid--search { grid-template-columns: minmax(260px, 1fr) minmax(240px, 1fr) auto; }
.container .modifier-form-grid--settings { grid-template-columns: repeat(2, minmax(260px, 1fr)); }
.container .modifier-field { min-width: 0; }
.container .modifier-field--wide { grid-column: 1 / -1; }
.container .modifier-field > label {
    display: block;
    font-size: 13px;
    font-weight: 800;
    margin-bottom: 6px;
}
.container .modifier-field > small,
.container .modifier-check-card small {
    color: #9fc5d7;
    display: block;
    font-size: 11px;
    line-height: 1.4;
    margin-top: 5px;
}
.container .modifier-field input,
.container .modifier-field select,
.container .modifier-field textarea,
.container .modifier-inline-control input {
    background: rgba(4, 31, 53, .78) !important;
    border: 1px solid rgba(111, 188, 227, .42) !important;
    border-radius: 10px !important;
    box-sizing: border-box !important;
    color: #f4fbff !important;
    font-family: inherit !important;
    font-size: 14px !important;
    min-height: 44px !important;
    padding: 10px 12px !important;
    width: 100% !important;
}
.container .modifier-field textarea { min-height: 92px !important; resize: vertical; }
.container .modifier-field input:focus,
.container .modifier-field select:focus,
.container .modifier-field textarea:focus,
.container .modifier-inline-control input:focus {
    border-color: #4bcaff !important;
    box-shadow: 0 0 0 3px rgba(40, 185, 246, .16) !important;
    outline: 0 !important;
}
.container .modifier-inline-control {
    align-items: stretch;
    display: grid;
    gap: 9px;
    grid-template-columns: minmax(0, 1fr) auto;
}
.container .modifier-manager button.button,
.container .modifier-manager .button {
    align-items: center;
    border-radius: 10px !important;
    display: inline-flex;
    font-size: 13px !important;
    font-weight: 800 !important;
    justify-content: center;
    min-height: 42px !important;
    padding: 9px 15px !important;
}
.container .modifier-manager button.button:disabled { cursor: not-allowed; opacity: .48; }
.container .modifier-check-card {
    align-items: flex-start;
    background: var(--modifier-panel-soft);
    border: 1px solid rgba(109, 181, 219, .26);
    border-radius: 12px;
    display: flex;
    gap: 10px;
    min-height: 72px;
    padding: 12px;
}
.container .modifier-check-card input {
    flex: 0 0 auto;
    height: 18px !important;
    margin: 2px 0 0 !important;
    width: 18px !important;
}
.container .modifier-check-card strong { display: block; font-size: 13px; }
.container .modifier-check-card--warning { border-color: rgba(242, 173, 53, .45); }
.container .modifier-chip-list {
    display: flex;
    flex-wrap: wrap;
    gap: 7px;
    margin-top: 9px;
    min-height: 28px;
}
.container .modifier-chip {
    align-items: center;
    background: rgba(36, 152, 207, .18);
    border: 1px solid rgba(80, 197, 247, .4);
    border-radius: 999px;
    color: #e6f8ff;
    display: inline-flex;
    font-size: 12px;
    gap: 7px;
    max-width: 100%;
    padding: 5px 8px 5px 11px;
}
.container .modifier-chip--product { border-radius: 10px; }
.container .modifier-chip > span { min-width: 0; overflow-wrap: anywhere; }
.container .modifier-chip button {
    background: transparent !important;
    border: 0 !important;
    color: #bde9fb !important;
    cursor: pointer;
    font-size: 18px !important;
    line-height: 1 !important;
    min-height: 20px !important;
    padding: 0 2px !important;
}
.container .modifier-empty-note { color: #8fb4c7; font-size: 12px; padding: 4px 0; }
.container .modifier-product-results {
    display: grid;
    gap: 9px;
    grid-template-columns: repeat(auto-fill, minmax(310px, 1fr));
    margin-top: 14px;
    max-height: 540px;
    overflow: auto;
    padding-right: 4px;
}
.container .modifier-product-card {
    align-items: center;
    background: rgba(3, 29, 50, .68);
    border: 1px solid rgba(101, 177, 215, .3);
    border-radius: 13px;
    cursor: pointer;
    display: grid;
    gap: 11px;
    grid-template-columns: auto 64px minmax(0, 1fr);
    padding: 10px;
    transition: border-color .15s ease, background .15s ease;
}
.container .modifier-product-card:hover { background: rgba(10, 59, 91, .72); border-color: rgba(65, 196, 248, .72); }
.container .modifier-product-card:has(input:checked) { background: rgba(16, 103, 147, .31); border-color: #42c6fb; }
.container .modifier-product-card > input { height: 18px !important; margin: 0 !important; width: 18px !important; }
.container .modifier-product-image {
    align-items: center;
    background: #fff;
    border-radius: 9px;
    display: flex;
    height: 60px;
    justify-content: center;
    overflow: hidden;
    width: 60px;
}
.container .modifier-product-image img { height: 100%; object-fit: contain; width: 100%; }
.container .modifier-product-placeholder { color: #577080; font-size: 10px; text-align: center; }
.container .modifier-product-copy { display: grid; gap: 4px; min-width: 0; }
.container .modifier-product-copy strong { font-size: 13px; line-height: 1.3; overflow-wrap: anywhere; }
.container .modifier-product-copy > span { color: #a8cede; font-size: 11px; overflow-wrap: anywhere; }
.container .modifier-product-meta { align-items: center; display: flex; flex-wrap: wrap; gap: 10px; }
.container .modifier-product-meta b { color: #7fe1a5 !important; font-size: 13px; }
.container .modifier-selected-panel {
    background: rgba(14, 76, 111, .28);
    border: 1px dashed rgba(105, 195, 235, .38);
    border-radius: 12px;
    margin-top: 13px;
    padding: 12px;
}
.container .modifier-selected-panel > div:first-child { align-items: center; display: flex; gap: 10px; justify-content: space-between; }
.container .modifier-selected-panel > div:first-child span { color: #9fc9dc; font-size: 12px; }
.container .modifier-action-row {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}
.container .modifier-live-button { background: linear-gradient(180deg, #0f9d58, #087640) !important; border-color: #3dd681 !important; }
.container .modifier-manager .button--danger { background: rgba(163, 43, 55, .32) !important; border: 1px solid rgba(247, 112, 124, .65) !important; color: #ffd9dc !important; }
.container .modifier-status {
    background: rgba(11, 50, 77, .62);
    border-left: 4px solid #70b7d8;
    border-radius: 9px;
    color: #d7edf7;
    font-size: 13px;
    margin-top: 13px;
    padding: 11px 13px;
}
.container .modifier-status--working { border-left-color: #47c8ff; }
.container .modifier-status--success { border-left-color: #55db8d; }
.container .modifier-status--error { background: rgba(95, 25, 34, .42); border-left-color: #ff6b78; color: #ffe0e3; }
.container .modifier-summary-grid {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(4, minmax(150px, 1fr));
    margin-top: 13px;
}
.container .modifier-summary-card {
    background: rgba(255, 255, 255, .045);
    border: 1px solid rgba(110, 183, 221, .25);
    border-radius: 11px;
    display: grid;
    gap: 3px;
    padding: 11px;
}
.container .modifier-summary-card span { color: #9ec3d5; font-size: 11px; }
.container .modifier-summary-card strong { font-size: 18px; }
.container .modifier-preview-warning { color: #ffd07b; font-size: 12px; grid-column: 1 / -1; }
.container .modifier-preview-table { margin-top: 13px; }
.container .modifier-result-download { display: flex; justify-content: flex-end; margin-bottom: 9px; }
.container .modifier-table-scroll { border: 1px solid rgba(104, 178, 215, .26); border-radius: 11px; max-width: 100%; overflow-x: auto; }
.container .modifier-preview-table table { border-collapse: collapse; min-width: 760px; width: 100%; }
.container .modifier-preview-table th,
.container .modifier-preview-table td { border-bottom: 1px solid rgba(111, 176, 210, .2); padding: 10px 12px; text-align: left; vertical-align: top; }
.container .modifier-preview-table th { background: rgba(4, 39, 65, .92); color: #bcecff; font-size: 11px; letter-spacing: .045em; text-transform: uppercase; }
.container .modifier-preview-table td { color: #e5f4fa; font-size: 12px; line-height: 1.45; }
.container .modifier-preview-table td span { color: #a9c9d8; }
.container .modifier-result-pill { border: 1px solid rgba(115, 192, 229, .4); border-radius: 999px; display: inline-block; font-size: 10px; font-weight: 800; padding: 3px 7px; text-transform: uppercase; }
.container .modifier-result-pill--applied,
.container .modifier-result-pill--dry-run-ok,
.container .modifier-result-pill--already-current { border-color: rgba(84, 220, 140, .58); color: #8aefb4; }
.container .modifier-result-pill--conflict { border-color: rgba(255, 178, 59, .64); color: #ffd07c; }
.container .modifier-history-card,
.container .modifier-legacy-card { margin-top: 16px; }
.container .modifier-history-card > summary,
.container .modifier-legacy-card > summary { color: #dff5ff; cursor: pointer; font-size: 14px; font-weight: 850; }
.container .modifier-history-card[open] > summary,
.container .modifier-legacy-card[open] > summary { border-bottom: 1px solid rgba(105, 184, 224, .25); margin-bottom: 14px; padding-bottom: 12px; }
.container .modifier-history-toolbar { align-items: center; display: flex; gap: 12px; justify-content: space-between; }
.container .modifier-history-toolbar span { color: #a5c8d8; font-size: 12px; }
.container .modifier-empty-state { background: rgba(255, 255, 255, .035); border: 1px dashed rgba(119, 183, 215, .28); border-radius: 11px; color: #9ec1d2; font-size: 12px; padding: 18px; text-align: center; }
.container .modifier-empty-state--error { border-color: rgba(255, 104, 119, .5); color: #ffcbd0; }

@media (max-width: 980px) {
    .container .modifier-manager .section-header-row { display: grid; }
    .container .modifier-header-badge { flex-basis: auto; width: auto; }
    .container .modifier-form-grid--targets,
    .container .modifier-form-grid--search,
    .container .modifier-form-grid--settings { grid-template-columns: 1fr; }
    .container .modifier-field--wide { grid-column: auto; }
    .container .modifier-summary-grid { grid-template-columns: repeat(2, minmax(140px, 1fr)); }
    .container .modifier-search-button { width: 100%; }
}

@media (max-width: 620px) {
    .container .modifier-step-card,
    .container .modifier-history-card,
    .container .modifier-legacy-card { padding: 14px; }
    .container .modifier-inline-control { grid-template-columns: 1fr; }
    .container .modifier-summary-grid { grid-template-columns: 1fr; }
    .container .modifier-action-row > button { width: 100%; }
    .container .modifier-product-results { grid-template-columns: 1fr; }
    .container .modifier-product-card { grid-template-columns: auto 52px minmax(0, 1fr); }
    .container .modifier-product-image { height: 48px; width: 48px; }
}

/* v0.9cz Images, Documentation, Brochures, and Lifestyle workspace */
.container.plm-images-docs-page .plm-asset-workflow-form {
    display: grid;
    gap: 18px;
    margin-top: 18px;
}
.container.plm-images-docs-page .plm-asset-workflow-section {
    margin: 0;
}
.container.plm-images-docs-page .plm-asset-workflow-section .plm-section-head {
    align-items: center;
    margin-bottom: 16px;
}
.container.plm-images-docs-page .plm-asset-workflow-section .plm-section-head h2,
.container.plm-images-docs-page .plm-lifestyle-brief-copy h2 {
    font-size: 22px;
    margin: 0 0 3px;
}
.container.plm-images-docs-page .plm-workflow-chip {
    border: 1px solid rgba(92, 194, 235, .62);
    color: #8edcff;
    display: inline-flex;
    font-size: 12px;
    font-weight: 800;
    padding: 6px 10px;
    text-transform: uppercase;
}
.container.plm-images-docs-page .plm-workflow-control-grid {
    display: grid;
    gap: 12px;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}
.container.plm-images-docs-page .plm-workflow-choice {
    align-items: stretch;
    border-left: 3px solid #56c6ef;
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-height: 138px;
    padding: 12px 14px;
}
.container.plm-images-docs-page .plm-workflow-choice strong { font-size: 17px; }
.container.plm-images-docs-page .plm-workflow-choice-copy {
    color: #c2d3df;
    line-height: 1.4;
}
.container.plm-images-docs-page .plm-workflow-choice-actions {
    align-items: stretch;
    display: grid;
    gap: 8px;
    margin-top: auto;
}
.container.plm-images-docs-page .plm-workflow-choice-actions .plm-button {
    justify-self: start;
}
.container.plm-images-docs-page .plm-workflow-notes-field { margin-top: 14px; }
.container.plm-images-docs-page .plm-workflow-notes-field textarea { min-height: 88px; }
.container.plm-images-docs-page .plm-inline-source-row {
    align-items: end;
    border-top: 1px solid rgba(136, 199, 232, .22);
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(280px, 1.6fr) minmax(220px, .8fr) auto;
    margin-top: 16px;
    padding-top: 14px;
}
.container.plm-images-docs-page .plm-inline-source-grow { min-width: 0; }
.container.plm-images-docs-page .plm-local-image-intake {
    align-items: center;
    border-top: 1px solid rgba(136, 199, 232, .22);
    display: grid;
    gap: 12px;
    grid-template-columns: minmax(340px, 1.4fr) auto minmax(280px, .9fr);
    margin-top: 16px;
    padding-top: 14px;
}
.container.plm-images-docs-page .plm-local-image-dropzone {
    background: rgba(5, 39, 65, .46);
    border: 2px dashed rgba(112, 202, 240, .7);
    border-radius: 6px;
    cursor: pointer;
    display: grid;
    gap: 4px;
    min-width: 0;
    padding: 12px 14px;
    transition: background-color .15s ease, border-color .15s ease;
}
.container.plm-images-docs-page .plm-local-image-dropzone > span {
    color: #bcd0dd;
    font-size: 13px;
}
.container.plm-images-docs-page .plm-local-image-dropzone input[type="file"] {
    cursor: pointer;
    margin-top: 6px;
    max-width: 100%;
}
.container.plm-images-docs-page .plm-local-image-dropzone.is-dragover {
    background: rgba(19, 116, 157, .32);
    border-color: #8fe2ff;
}
.container.plm-images-docs-page .plm-brochure-intake-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.container.plm-images-docs-page .plm-local-brochure-intake {
    grid-template-columns: minmax(300px, 1fr) minmax(170px, 230px) minmax(250px, auto);
}
.container.plm-images-docs-page .plm-local-brochure-intake > .plm-mini-note {
    grid-column: 1 / -1;
}
.container.plm-images-docs-page .plm-document-type-field { min-width: 0; }
.container.plm-images-docs-page .plm-document-controls,
.container.plm-images-docs-page .plm-brochure-controls {
    align-items: end;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.container.plm-images-docs-page .plm-document-controls .plm-filter-field,
.container.plm-images-docs-page .plm-brochure-controls .plm-filter-field {
    min-width: 230px;
}
.container.plm-images-docs-page .plm-lifestyle-workflow-section .plm-lifestyle-choice-grid { margin-top: 16px; }
.container.plm-images-docs-page .plm-images-docs-grid-table th:nth-child(1),
.container.plm-images-docs-page .plm-images-docs-grid-table td:nth-child(1) { width: 4% !important; }
.container.plm-images-docs-page .plm-images-docs-grid-table th:nth-child(2),
.container.plm-images-docs-page .plm-images-docs-grid-table td:nth-child(2) { width: 20% !important; }
.container.plm-images-docs-page .plm-images-docs-grid-table th:nth-child(3),
.container.plm-images-docs-page .plm-images-docs-grid-table td:nth-child(3) { width: 14% !important; }
.container.plm-images-docs-page .plm-images-docs-grid-table th:nth-child(4),
.container.plm-images-docs-page .plm-images-docs-grid-table td:nth-child(4) { width: 18% !important; }
.container.plm-images-docs-page .plm-images-docs-grid-table th:nth-child(5),
.container.plm-images-docs-page .plm-images-docs-grid-table td:nth-child(5) { width: 16% !important; }
.container.plm-images-docs-page .plm-images-docs-grid-table th:nth-child(6),
.container.plm-images-docs-page .plm-images-docs-grid-table td:nth-child(6) { width: 16% !important; }
.container.plm-images-docs-page .plm-images-docs-grid-table th:nth-child(7),
.container.plm-images-docs-page .plm-images-docs-grid-table td:nth-child(7) { width: 12% !important; }

.container.plm-images-docs-page .plm-hubspot-folder-cell code {
    display: block;
    font-size: 12px;
    line-height: 1.4;
    overflow-wrap: anywhere;
    white-space: normal;
}
@media (max-width: 980px) {
    .container.plm-images-docs-page .plm-workflow-control-grid { grid-template-columns: 1fr; }
    .container.plm-images-docs-page .plm-workflow-choice { min-height: 0; }
    .container.plm-images-docs-page .plm-inline-source-row { grid-template-columns: 1fr; }
    .container.plm-images-docs-page .plm-inline-source-row .plm-button { justify-self: start; }
    .container.plm-images-docs-page .plm-local-image-intake { grid-template-columns: 1fr; }
    .container.plm-images-docs-page .plm-local-image-intake .plm-button { justify-self: start; }
    .container.plm-images-docs-page .plm-local-brochure-intake > .plm-mini-note { grid-column: auto; }
}


/* =========================================================
   B2B Quotes Page
   Keep all B2B Quotes visual styling in shared CSS.
   ========================================================= */
.quotes-page,
.quotes-page * {
    font-family: var(--sms-app-font-family, "proxima-nova", "Inter", "Segoe UI", Arial, sans-serif) !important;
}

.quotes-page .quotes-top {
    display: block;
    margin-bottom: 18px;
}

.quotes-page .quotes-top-title {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 18px;
    margin-bottom: 16px;
}

.quotes-page .quotes-top-title h1 {
    margin: 0;
    color: #ffffff;
    font-size: 30px;
    line-height: 1.1;
}

.quotes-page .snapshot-range-form {
    display: flex;
    justify-content: flex-end;
    align-items: flex-end;
    min-width: 210px;
}

.quotes-page .snapshot-range-form label {
    display: block;
    margin-bottom: 8px;
    color: #bfe6ff;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .07em;
}

.quotes-page .snapshot-range-form select {
    width: 205px;
    min-width: 205px;
    height: 46px;
    margin: 0;
    padding: 0 16px;
    border-radius: 10px;
    border: 1px solid rgba(147, 197, 253, .65);
    background: #f8fbff;
    color: #0f172a;
    font-weight: 800;
}

.quotes-page .quote-summary-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin-top: 10px;
}

.quotes-page .quote-summary-card,
.quotes-page .quote-status-mini {
    position: relative;
    min-height: 92px;
    padding: 14px 16px;
    border-radius: 14px;
    overflow: hidden;
    background: rgba(20, 61, 91, .92) !important;
    border: 1px solid rgba(96, 165, 250, .46) !important;
    color: #ffffff !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.05), 0 10px 24px rgba(0,0,0,.10);
}

.quotes-page .quote-summary-card::after,
.quotes-page .quote-status-mini::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 0;
    height: 4px;
    border-radius: 999px;
    background: linear-gradient(90deg, #38bdf8, #0ea5e9);
    opacity: .95;
}

.quotes-page .quote-summary-card.warning::after,
.quotes-page .quote-status-mini.warning-card::after {
    background: linear-gradient(90deg, #f59e0b, #fbbf24);
}

.quotes-page .quote-summary-card.success-card::after,
.quotes-page .quote-status-mini.success-card::after {
    background: linear-gradient(90deg, #22c55e, #86efac);
}

.quotes-page .quote-summary-card.highlight::after,
.quotes-page .quote-status-mini.last-month-mini::after {
    background: linear-gradient(90deg, #60a5fa, #38bdf8);
}

.quotes-page .quote-summary-label,
.quotes-page .quote-status-mini span {
    display: block;
    color: #7dccff !important;
    font-size: 12px;
    font-weight: 950;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.quotes-page .quote-summary-value,
.quotes-page .quote-status-mini b {
    display: block;
    margin-top: 6px;
    color: #ffffff !important;
    font-size: clamp(21px, 1.75vw, 28px);
    line-height: 1.05;
    font-weight: 950;
    letter-spacing: -.02em;
}

.quotes-page .quote-summary-sub,
.quotes-page .quote-muted {
    color: rgba(255,255,255,.84) !important;
    font-size: 12px;
    line-height: 1.35;
}

.quotes-page .quote-status-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 10px;
    margin-top: 12px;
}

.quotes-page .quote-status-mini {
    min-height: 78px;
    padding: 12px 14px;
}

.quotes-page .result,
.quotes-page .quote-pagination {
    position: relative;
    margin-top: 18px;
    padding: 16px 18px;
    border-radius: 14px;
    background: rgba(20, 61, 91, .92) !important;
    border: 1px solid rgba(96, 165, 250, .46) !important;
    color: #ffffff !important;
    overflow: hidden;
}

.quotes-page .result::after,
.quotes-page .quote-pagination::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 0;
    height: 4px;
    border-radius: 999px;
    background: linear-gradient(90deg, #38bdf8, #0ea5e9);
}

.quotes-page .result.success::after {
    background: linear-gradient(90deg, #22c55e, #86efac);
}

.quotes-page .result.warning::after {
    background: linear-gradient(90deg, #f59e0b, #fbbf24);
}

.quotes-page .result.error::after {
    background: linear-gradient(90deg, #ef4444, #f87171);
}

.quotes-page .quote-filters {
    display: grid;
    grid-template-columns: minmax(320px, 1fr) 190px 150px auto;
    gap: 14px;
    align-items: end;
    margin-top: 18px;
}

.quotes-page .quote-filters label {
    color: #ffffff;
    font-size: 16px;
    font-weight: 900;
    margin-bottom: 8px;
}

.quotes-page .quote-filters input,
.quotes-page .quote-filters select {
    height: 50px;
    margin: 0;
    padding: 0 14px;
    border-radius: 10px;
    border: 1px solid rgba(147, 197, 253, .65);
    background: #f8fbff;
    color: #0f172a;
    font-size: 15px;
}

.quotes-page .quote-filters button {
    height: 50px;
    white-space: nowrap;
}

.quotes-page .table-wrap {
    width: 100%;
    overflow-x: hidden;
    margin-top: 18px;
}

.quotes-page .quote-table,
.quotes-page .quote-products-table {
    width: 100%;
    min-width: 0;
    border-collapse: collapse;
    table-layout: fixed;
    overflow: hidden;
    border-radius: 14px;
}

.quotes-page .quote-table th,
.quotes-page .quote-products-table th {
    position: static !important;
    padding: 12px 10px;
    background: linear-gradient(180deg, #0b638e, #064b76) !important;
    color: #ffffff;
    border-right: 1px solid rgba(4, 31, 52, .8);
    font-size: 13px;
    text-align: left;
}

.quotes-page .quote-table td,
.quotes-page .quote-products-table td {
    padding: 12px 10px;
    background: rgba(26, 64, 93, .95);
    color: #ffffff;
    border-bottom: 1px solid rgba(125, 211, 252, .16);
    border-right: 1px solid rgba(4, 31, 52, .48);
    vertical-align: top;
    overflow-wrap: anywhere;
}

.quotes-page .quote-table th:nth-child(1),
.quotes-page .quote-table td:nth-child(1) { width: 17%; }
.quotes-page .quote-table th:nth-child(2),
.quotes-page .quote-table td:nth-child(2) { width: 15%; }
.quotes-page .quote-table th:nth-child(3),
.quotes-page .quote-table td:nth-child(3) { width: 12%; }
.quotes-page .quote-table th:nth-child(4),
.quotes-page .quote-table td:nth-child(4) { width: 11%; }
.quotes-page .quote-table th:nth-child(5),
.quotes-page .quote-table td:nth-child(5) { width: 12%; }
.quotes-page .quote-table th:nth-child(6),
.quotes-page .quote-table td:nth-child(6) { width: 10%; }
.quotes-page .quote-table th:nth-child(7),
.quotes-page .quote-table td:nth-child(7) { width: 8%; }
.quotes-page .quote-table th:nth-child(8),
.quotes-page .quote-table td:nth-child(8) { width: 12%; }
.quotes-page .quote-table th:nth-child(9),
.quotes-page .quote-table td:nth-child(9) { width: 6%; text-align: center; }

.quotes-page .status-pill {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 76px;
    padding: 6px 10px;
    border-radius: 8px;
    color: #ffffff;
    font-size: 12px;
    font-weight: 950;
    letter-spacing: .03em;
    text-transform: uppercase;
}

.quotes-page .status-new { background: #ef4444; }
.quotes-page .status-opened { background: #2f86c9; }
.quotes-page .status-ordered { background: #16a34a; }
.quotes-page .status-cancelled { background: #64748b; }
.quotes-page .status-draft { background: #f59e0b; }
.quotes-page .status-unknown { background: #475569; }

.quotes-page .response-time-cell strong,
.quotes-page .response-ok,
.quotes-page .response-late,
.quotes-page .response-warning,
.quotes-page .response-estimated,
.quotes-page .response-missing {
    display: block;
    font-size: 14px;
    font-weight: 950 !important;
}

.quotes-page .response-ok { color: #6ee7a5 !important; }
.quotes-page .response-late,
.quotes-page .response-warning,
.quotes-page .response-missing { color: #ff6b6b !important; }
.quotes-page .response-estimated { color: #fbbf24 !important; }

.quotes-page .likely-ordered { color: #6ee7a5 !important; font-weight: 950; }
.quotes-page .possible-ordered { color: #fbbf24 !important; font-weight: 950; }
.quotes-page .not-ordered { color: #e2e8f0 !important; font-weight: 950; }

.quotes-page .quote-action-link {
    color: #6bc7ff !important;
    font-weight: 950;
    text-decoration: none;
}

.quotes-page .quote-action-link:hover {
    text-decoration: underline;
}

.quotes-page .quote-pagination {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 14px;
    min-height: 62px;
}

.quotes-page .quote-pagination-actions {
    display: flex;
    gap: 10px;
    align-items: center;
}

.quotes-page .quote-pagination .button-link {
    min-width: 110px;
    text-align: center;
    color: #ffffff !important;
}

.quotes-page .quote-pagination .disabled {
    opacity: .42;
    pointer-events: none;
}

.quotes-page .quote-loading-overlay {
    position: fixed;
    inset: 0;
    z-index: 99999;
    display: none;
    align-items: center;
    justify-content: center;
    background: rgba(3, 20, 34, .72);
    backdrop-filter: blur(2px);
}

.quotes-page .quote-loading-box {
    width: min(360px, 92vw);
    background: rgba(20, 61, 91, .96);
    border: 1px solid rgba(96, 165, 250, .46);
    border-radius: 16px;
    padding: 22px;
    box-shadow: 0 20px 55px rgba(0,0,0,.28);
    text-align: center;
    color: #ffffff;
}

.quotes-page .quote-spinner {
    width: 44px;
    height: 44px;
    margin: 0 auto 12px;
    border-radius: 999px;
    border: 5px solid rgba(255,255,255,.2);
    border-top-color: #38bdf8;
    animation: quoteSpin .8s linear infinite;
}

.quotes-page .quote-loading-title {
    font-weight: 950;
    color: #ffffff;
    font-size: 18px;
}

.quotes-page .quote-loading-sub {
    color: rgba(255,255,255,.78);
    font-size: 13px;
    margin-top: 5px;
    line-height: 1.35;
}

.quotes-page .quote-detail-grid {
    display: grid;
    grid-template-columns: 1.1fr 1fr;
    gap: 16px;
    margin-top: 16px;
}

.quotes-page .quote-detail-card {
    background: rgba(20, 61, 91, .92);
    border: 1px solid rgba(96, 165, 250, .46);
    border-radius: 14px;
    padding: 16px;
    color: #ffffff;
}

.quotes-page .quote-kv {
    display: grid;
    grid-template-columns: 150px minmax(0, 1fr);
    gap: 8px 12px;
    margin-top: 8px;
}

.quotes-page .quote-kv div:nth-child(odd) {
    color: #7dccff;
    font-weight: 900;
}

.quotes-page pre.raw-json {
    white-space: pre-wrap;
    overflow: auto;
    background: #0f172a;
    color: #e2e8f0;
    padding: 14px;
    border-radius: 10px;
    max-height: 500px;
}

@keyframes quoteSpin { to { transform: rotate(360deg); } }

@media (max-width: 1100px) {
    .quotes-page .quotes-top-title,
    .quotes-page .quote-pagination {
        display: block;
    }
    .quotes-page .snapshot-range-form,
    .quotes-page .quote-pagination-actions {
        margin-top: 12px;
    }
    .quotes-page .quote-summary-grid,
    .quotes-page .quote-status-grid,
    .quotes-page .quote-filters,
    .quotes-page .quote-detail-grid {
        grid-template-columns: 1fr;
    }
}

/* =========================================================
   Catalog Editor cleanup
   ========================================================= */
.catalog-card {
    margin: 22px 0 22px;
    padding: 20px;
    color: #ffffff;
    background: rgba(18, 61, 93, 0.92);
    border: 1px solid rgba(96, 175, 226, 0.42);
    border-radius: 18px;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 16px 34px rgba(0,0,0,.14);
    position: relative;
    overflow: hidden;
}
.catalog-card::after,
.catalog-panel::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 0;
    height: 4px;
    border-radius: 999px 999px 0 0;
    background: linear-gradient(90deg, rgba(38,149,193,.95), rgba(96,195,255,.7));
}
.catalog-card h2 {
    margin: 0 0 12px;
    color: #ffffff;
    font-size: 22px;
    line-height: 1.15;
}
.catalog-note {
    margin: 12px 0 16px;
    padding: 12px 14px;
    color: #ffffff;
    background: rgba(255, 175, 55, 0.08);
    border: 1px solid rgba(245, 180, 72, 0.78);
    border-left: 5px solid #f5b448;
    border-radius: 10px;
    font-size: 14px;
    line-height: 1.35;
}
.catalog-tabs {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin: 14px 0 0;
}
.catalog-tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 116px;
    padding: 12px 20px;
    border-radius: 12px;
    border: 1px solid rgba(96, 175, 226, 0.55);
    background: rgba(18, 61, 93, 0.9);
    color: #7cc7ff !important;
    text-decoration: none;
    font-weight: 900;
    box-shadow: 0 8px 18px rgba(0,0,0,.14);
}
.catalog-tab:hover {
    transform: translateY(-1px);
    color: #ffffff !important;
}
.catalog-tab.active {
    color: #ffffff !important;
    border-color: rgba(110, 205, 255, 0.9);
    background: linear-gradient(135deg, #064f7c, #1f98ca);
    box-shadow: 0 12px 28px rgba(5, 78, 155, 0.24);
}
.catalog-panel {
    margin-top: 18px;
    color: #ffffff;
    background: rgba(18, 61, 93, 0.92);
    border: 1px solid rgba(96, 175, 226, 0.42);
    border-radius: 18px;
    overflow: visible;
    position: relative;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 16px 34px rgba(0,0,0,.14);
}
.catalog-panel-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    padding: 16px 18px;
    border-bottom: 1px solid rgba(96, 175, 226, 0.26);
    background: rgba(7, 42, 70, 0.45);
    border-radius: 18px 18px 0 0;
}
.catalog-panel-title {
    color: #ffffff;
    font-size: 17px;
    font-weight: 950;
}
.catalog-panel-header a {
    color: #7cc7ff !important;
    font-weight: 800;
}
.catalog-panel-body {
    padding: 22px 24px 30px;
    color: #ffffff;
}
.catalog-panel-body > h1:first-child {
    display: none;
}
.catalog-panel-body p,
.catalog-panel-body li,
.catalog-panel-body .small,
.catalog-panel-body .source-meta {
    color: rgba(255,255,255,.88);
}
.catalog-panel-body h2,
.catalog-panel-body h3 {
    color: #ffffff;
}
.catalog-panel-body ul {
    margin-top: 8px;
    margin-bottom: 18px;
}
.catalog-panel-body .tabs,
.catalog-panel-body .store-switcher,
.catalog-panel-body .top-nav,
.catalog-panel-body nav {
    display: none !important;
}
.catalog-panel-body .container {
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
}
.catalog-panel-body .lookup-grid {
    display: grid;
    grid-template-columns: minmax(280px, 1fr) auto;
    gap: 14px;
    align-items: end;
    margin-top: 14px;
}
.catalog-panel-body .lookup-button-cell {
    padding-top: 0;
}
.catalog-panel-body label {
    color: #ffffff;
    font-weight: 900;
}
.catalog-panel-body input,
.catalog-panel-body select,
.catalog-panel-body textarea {
    max-width: 100%;
}
.catalog-panel-body button,
.catalog-panel-body .button-link {
    color: #ffffff !important;
}
.catalog-panel-body .button-secondary {
    color: #ffffff !important;
    background: rgba(71, 95, 120, 0.95) !important;
}
.catalog-panel-body .result {
    background: rgba(18, 61, 93, 0.9);
    border: 1px solid rgba(96, 175, 226, 0.42);
    border-left: 5px solid #35b8ee;
    color: #ffffff;
    border-radius: 12px;
}
.catalog-panel-body .toolbar {
    background: rgba(7, 42, 70, 0.62);
    border: 1px solid rgba(96, 175, 226, 0.32);
    border-bottom: 0;
}
.catalog-panel-body .wysiwyg,
.catalog-panel-body .bc-wysiwyg-shell {
    color: #111827;
}
.catalog-panel-body .wysiwyg {
    background: #ffffff;
    min-height: 220px;
}
.catalog-panel-body .grid-2,
.catalog-panel-body .grid-3,
.catalog-panel-body .grid-4 {
    gap: 14px;
}
@media (max-width: 900px) {
    .catalog-panel-header { display: block; }
    .catalog-panel-header a { display: inline-block; margin-top: 8px; }
    .catalog-panel-body { padding: 18px; }
    .catalog-panel-body .lookup-grid { grid-template-columns: 1fr; }
}


/* Catalog Editor lookup alignment + embedded editor polish */
.catalog-panel-body .lookup-grid {
    display: grid !important;
    grid-template-columns: minmax(280px, 1fr) auto !important;
    gap: 14px !important;
    align-items: end !important;
}
.catalog-panel-body .lookup-button-cell {
    align-self: end !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}
.catalog-panel-body .lookup-button-cell button {
    min-height: 46px !important;
    height: 46px !important;
    margin: 0 !important;
    white-space: nowrap !important;
}
.catalog-panel-body form:first-of-type input[type="text"],
.catalog-panel-body form:first-of-type input:not([type]),
.catalog-panel-body form:first-of-type input[name="query"],
.catalog-panel-body form:first-of-type input[name="category_search"] {
    margin-bottom: 0 !important;
}
.catalog-panel-body .bc-wysiwyg-shell {
    margin-top: 10px !important;
}
.catalog-panel-body .toolbar {
    margin-top: 10px !important;
}
@media (max-width: 900px) {
    .catalog-panel-body .lookup-grid {
        grid-template-columns: 1fr !important;
    }
    .catalog-panel-body .lookup-button-cell button {
        width: 100% !important;
    }
}


/* Catalog Editor tightening - lookup first, guidelines after lookup */
.catalog-card {
    padding: 16px 20px !important;
    margin-bottom: 16px !important;
}
.catalog-card .catalog-note {
    display: none !important;
}
.catalog-tabs {
    margin: 12px 0 0 !important;
}
.catalog-panel-header {
    padding: 14px 18px !important;
}
.catalog-panel-header a {
    display: none !important;
}
.catalog-panel-body {
    padding: 22px 24px 28px !important;
}
.catalog-panel-body .catalog-lookup-form {
    margin: 0 0 16px !important;
}
.catalog-panel-body .lookup-grid {
    display: grid !important;
    grid-template-columns: minmax(360px, 1fr) auto !important;
    gap: 14px !important;
    align-items: end !important;
}
.catalog-panel-body .lookup-button-cell {
    align-self: end !important;
    padding: 0 !important;
    margin: 0 !important;
}
.catalog-panel-body .lookup-button-cell button {
    height: 46px !important;
    margin: 0 !important;
    white-space: nowrap !important;
}
.catalog-panel-body .editor-guidelines {
    margin: 12px 0 22px !important;
    padding: 14px 16px !important;
    border: 1px solid rgba(126, 199, 255, .35) !important;
    border-radius: 14px !important;
    background: rgba(21, 63, 93, .46) !important;
    color: rgba(255,255,255,.86) !important;
}
.catalog-panel-body .editor-guidelines p {
    margin: 0 0 8px !important;
}
.catalog-panel-body .editor-guidelines ul {
    margin: 8px 0 0 20px !important;
}
.catalog-panel-body .editor-guidelines strong {
    color: #fff !important;
}
@media (max-width: 900px) {
    .catalog-panel-body .lookup-grid {
        grid-template-columns: 1fr !important;
    }
}


/* Catalog Editor: align lookup buttons with the input itself, not the helper text below it. */
.catalog-panel-body .catalog-lookup-form .lookup-button-cell,
.catalog-panel-body form:first-of-type .lookup-button-cell {
    align-self: start !important;
    padding-top: 28px !important;
    margin: 0 !important;
}
.catalog-panel-body .catalog-lookup-form .lookup-button-cell button,
.catalog-panel-body form:first-of-type .lookup-button-cell button {
    height: 46px !important;
    min-height: 46px !important;
    margin-top: 0 !important;
}

/* Catalog Editor: let inline WYSIWYG colors render in visual mode.
   The shared editable-field rule sets -webkit-text-fill-color on all
   contenteditable areas, which makes inline styles like color:#054E9B
   look black in Chrome even though the HTML is correct. */
.container .bc-wysiwyg-shell .bc-editor-body,
.container .bc-wysiwyg-shell .bc-editor-body * {
    -webkit-text-fill-color: currentColor !important;
}
.container .bc-wysiwyg-shell .bc-editor-body {
    color: #111827 !important;
}

/* Catalog Editor: align lookup action buttons with the input control. */
.catalog-panel-body .catalog-lookup-form .lookup-button-cell,
.catalog-panel-body form:first-of-type .lookup-button-cell {
    align-self: start !important;
    padding-top: 0 !important;
    margin: 0 !important;
}
.catalog-panel-body .catalog-lookup-form .lookup-button-cell button,
.catalog-panel-body form:first-of-type .lookup-button-cell button {
    height: 46px !important;
}

/* ---------------------------------------------------------------------------
   Catalog Editor final root fixes
   ---------------------------------------------------------------------------
   The lookup buttons should align with the input control, not the top of the
   grid cell. The WYSIWYG visual editor must be a light editing canvas and must
   respect inline HTML colors such as color:#054E9B. These rules deliberately
   target only the BigCommerce editor canvas so the rest of the dark app chrome
   keeps the Command Center styling.
*/
.catalog-panel-body .catalog-lookup-form .lookup-button-cell,
.catalog-panel-body form:first-of-type .lookup-button-cell {
    align-self: start !important;
    padding-top: 28px !important;
    padding-bottom: 0 !important;
    margin: 0 !important;
}
.catalog-panel-body .catalog-lookup-form .lookup-button-cell button,
.catalog-panel-body form:first-of-type .lookup-button-cell button {
    height: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
    white-space: nowrap !important;
}
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body {
    background: #ffffff !important;
    color: #111827 !important;
    -webkit-text-fill-color: currentColor !important;
    caret-color: #111827 !important;
}
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body p,
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body div,
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body span,
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body strong,
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body em,
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body b,
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body i,
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body u,
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body ul,
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body ol,
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body li,
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body blockquote,
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body table,
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body td,
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body th {
    color: #111827;
    -webkit-text-fill-color: currentColor !important;
}
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body [style*="color"],
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body [style*="COLOR"] {
    -webkit-text-fill-color: currentColor !important;
}
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body a {
    color: #1f6feb;
    -webkit-text-fill-color: currentColor !important;
}
.catalog-panel-body .bc-source-mode .bc-source-editor {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    caret-color: #111827 !important;
}
@media (max-width: 900px) {
    .catalog-panel-body .catalog-lookup-form .lookup-button-cell,
    .catalog-panel-body form:first-of-type .lookup-button-cell {
        padding-top: 0 !important;
    }
    .catalog-panel-body .catalog-lookup-form .lookup-button-cell button,
    .catalog-panel-body form:first-of-type .lookup-button-cell button {
        width: 100% !important;
    }
}

/* ---------------------------------------------------------------------------
   Catalog Editor WYSIWYG hard reset
   ---------------------------------------------------------------------------
   Keep the editor canvas independent from the dark Catalog Editor shell.
   The shell intentionally uses white text, but the WYSIWYG body must behave
   like a normal white BigCommerce editor: dark default text, visible links,
   and visible inline brand colors.
*/
.catalog-panel-body .bc-wysiwyg-shell {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
}
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body,
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body * {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    text-shadow: none !important;
}
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body {
    background: #ffffff !important;
    caret-color: #111827 !important;
}
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body a,
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body a * {
    color: #1f6feb !important;
    -webkit-text-fill-color: #1f6feb !important;
}
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body [style*="#054E9B"],
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body [style*="#054e9b"],
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body [style*="rgb(5, 78, 155)"],
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body [style*="rgb(5,78,155)"] {
    color: #054E9B !important;
    -webkit-text-fill-color: #054E9B !important;
}
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body [style*="#2695C1"],
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body [style*="#2695c1"],
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body [style*="rgb(38, 149, 193)"],
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body [style*="rgb(38,149,193)"] {
    color: #2695C1 !important;
    -webkit-text-fill-color: #2695C1 !important;
}
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body [style*="#38B247"],
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body [style*="#38b247"],
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body [style*="rgb(56, 178, 71)"],
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body [style*="rgb(56,178,71)"] {
    color: #38B247 !important;
    -webkit-text-fill-color: #38B247 !important;
}
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body [style*="#000000"],
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body [style*="#111827"],
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body [style*="color: black"],
.catalog-panel-body .bc-wysiwyg-shell .bc-editor-body [style*="color:black"] {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
}
.catalog-panel-body .bc-wysiwyg-shell .bc-source-editor {
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    background: #fbfbfc !important;
    caret-color: #111827 !important;
}

/* Align lookup buttons with the white lookup input on Product and Category. */
.catalog-panel-body .catalog-lookup-form .lookup-button-cell,
.catalog-panel-body form:first-of-type .lookup-button-cell {
    align-self: start !important;
    padding-top: 29px !important;
    margin: 0 !important;
}
.catalog-panel-body .catalog-lookup-form .lookup-button-cell button,
.catalog-panel-body form:first-of-type .lookup-button-cell button {
    height: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
}

.catalog-builder-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(260px, 1fr)) !important;
    gap: 16px !important;
    margin: 16px 0 !important;
}
.catalog-builder-card {
    border: 1px solid rgba(126, 199, 255, .36) !important;
    border-radius: 16px !important;
    background: rgba(7, 42, 70, .36) !important;
    padding: 16px !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.05) !important;
}
.catalog-builder-card-full {
    margin-top: 16px !important;
}
.catalog-builder-card h2 {
    margin: 0 0 14px !important;
    font-size: 19px !important;
    line-height: 1.2 !important;
}
.catalog-builder-card textarea {
    min-height: 112px !important;
}
.catalog-select-lookup-grid {
    align-items: start !important;
}
.catalog-native-select {
    cursor: pointer !important;
}
.catalog-image-source-panel[hidden] {
    display: none !important;
}
[data-bottom-target-panel][hidden] {
    display: none !important;
}
.catalog-image-source-note {
    margin: 8px 0 12px !important;
    color: #d6e8f7 !important;
    -webkit-text-fill-color: #d6e8f7 !important;
    font-weight: 800 !important;
    line-height: 1.35 !important;
}
.catalog-selected-image-preview {
    display: grid !important;
    gap: 8px !important;
    margin: 10px 0 14px !important;
}
.catalog-selected-image-preview span {
    color: var(--brand-light) !important;
    -webkit-text-fill-color: var(--brand-light) !important;
    font-size: 12px !important;
    font-weight: 900 !important;
    letter-spacing: .04em !important;
    text-transform: uppercase !important;
}
.catalog-selected-image-preview img {
    display: block !important;
    width: min(240px, 100%) !important;
    aspect-ratio: 16 / 9 !important;
    object-fit: cover !important;
    border: 1px solid rgba(126, 199, 255, .42) !important;
    border-radius: 8px !important;
    background: rgba(255,255,255,.08) !important;
}
.catalog-check-row {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin-top: 12px !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}
.catalog-check-row input[type="checkbox"] {
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    accent-color: var(--brand-accent) !important;
}
.catalog-bubble-option-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
    gap: 10px !important;
}
.catalog-bubble-option {
    min-height: 46px !important;
    margin: 0 !important;
    padding: 10px 12px !important;
    border: 1px solid rgba(126, 199, 255, .28) !important;
    border-radius: 8px !important;
    background: rgba(7, 42, 70, .28) !important;
}
.catalog-bubble-option span {
    line-height: 1.25 !important;
}
.catalog-rich-preview {
    min-height: 180px !important;
    margin: 8px 0 16px !important;
    padding: 14px !important;
    border: 1px solid rgba(126, 199, 255, .36) !important;
    border-radius: 16px !important;
    background: #ffffff !important;
    color: #111827 !important;
    -webkit-text-fill-color: initial !important;
    overflow: auto !important;
}
.catalog-rich-preview * {
    -webkit-text-fill-color: currentColor;
}
.catalog-rich-preview .sms-bottom-rich {
    color: #102033 !important;
    -webkit-text-fill-color: #102033 !important;
}
.catalog-rich-preview .sms-bottom-rich .sms-br-kicker,
.catalog-rich-preview .sms-bottom-rich .sms-br-section-head span,
.catalog-rich-preview .sms-bottom-rich .sms-br-card span {
    color: #054e9b !important;
    -webkit-text-fill-color: #054e9b !important;
}
.catalog-rich-preview .sms-bottom-rich .sms-br-hero h2,
.catalog-rich-preview .sms-bottom-rich .sms-br-section-head h2,
.catalog-rich-preview .sms-bottom-rich .sms-br-card h3,
.catalog-rich-preview .sms-bottom-rich summary,
.catalog-rich-preview .sms-bottom-rich .sms-br-product-card strong,
.catalog-rich-preview .sms-bottom-rich .sms-br-related-link strong {
    color: #082944 !important;
    -webkit-text-fill-color: #082944 !important;
}
.catalog-rich-preview .sms-bottom-rich .sms-br-hero p,
.catalog-rich-preview .sms-bottom-rich .sms-br-card p,
.catalog-rich-preview .sms-bottom-rich details p,
.catalog-rich-preview .sms-bottom-rich .sms-br-product-card small,
.catalog-rich-preview .sms-bottom-rich .sms-br-related-link small {
    color: #5d6b7a !important;
    -webkit-text-fill-color: #5d6b7a !important;
}
.catalog-rich-preview .sms-bottom-rich .sms-br-cta,
.catalog-rich-preview .sms-bottom-rich .sms-br-cta h2,
.catalog-rich-preview .sms-bottom-rich .sms-br-cta p {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}
.catalog-rich-preview .sms-bottom-rich .sms-br-cta a {
    color: #082944 !important;
    -webkit-text-fill-color: #082944 !important;
}
.catalog-empty-preview {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 150px !important;
    border: 1px dashed rgba(11, 94, 142, .35) !important;
    border-radius: 12px !important;
    color: #334155 !important;
    -webkit-text-fill-color: #334155 !important;
    font-weight: 800 !important;
    background: #f8fbfe !important;
}
#top_generated_html,
#bottom_generated_html {
    font-family: Consolas, "Courier New", monospace !important;
    font-size: 12px !important;
    line-height: 1.45 !important;
    min-height: 260px !important;
}
@media (max-width: 1000px) {
    .catalog-builder-grid {
        grid-template-columns: 1fr !important;
    }
}

/* =========================================================
   Utilities / BC API Tools cleanup
   Keeps Utilities visual styling in sms_command_center.css.
   ========================================================= */
.container .utility-tabs {
    display: flex !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
    margin: -2px 0 22px !important;
}
.container .utility-section { display: none !important; }
.container .utility-section.active { display: block !important; }

.container .utility-tabs .utility-tab,
.container a.utility-tab {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 44px !important;
    padding: 10px 18px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(126,200,255,.42) !important;
    background: linear-gradient(145deg, var(--sms-medium-blue-3), var(--sms-medium-blue)) !important;
    color: var(--sms-light-blue) !important;
    -webkit-text-fill-color: var(--sms-light-blue) !important;
    text-decoration: none !important;
    font-weight: 900 !important;
    box-shadow: 0 8px 18px rgba(8,41,68,.14) !important;
}
.container .utility-tabs .utility-tab.active,
.container a.utility-tab.active {
    background: linear-gradient(135deg, var(--brand-primary), var(--brand-accent)) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border-color: rgba(126,200,255,.62) !important;
}

.container .field-scroll {
    overflow: visible !important;
    max-width: 100% !important;
    padding: 10px !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-radius: 16px !important;
    background: rgba(255,255,255,.04) !important;
    box-sizing: border-box !important;
    box-shadow: inset 0 1px 0 rgba(255,255,255,.03) !important;
}
.container .field-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(132px, 1fr)) !important;
    grid-auto-rows: minmax(96px, auto) !important;
    gap: 8px !important;
    align-items: stretch !important;
    width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
}

.container .advanced-fields-panel,
.container .field-expander {
    margin-top: 10px !important;
    border: 1px dashed rgba(126,200,255,.50) !important;
    border-radius: 12px !important;
    background: rgba(255,255,255,.035) !important;
    padding: 8px !important;
    color: var(--sms-white) !important;
}
.container .advanced-fields-panel summary,
.container .field-expander summary {
    cursor: pointer !important;
    font-weight: 900 !important;
    color: var(--sms-white) !important;
    -webkit-text-fill-color: var(--sms-white) !important;
    padding: 8px 10px !important;
    border-radius: 10px !important;
    background: rgba(255,255,255,.04) !important;
}
.container .advanced-fields-panel summary::marker,
.container .field-expander summary::marker {
    color: var(--sms-light-blue) !important;
}

/* Prevent checkbox action panels from turning into large white blocks. */
.container .header-actions .big-check,
.container .all-check-panel,
.container .all-check-panel label,
.container .upload-mode-row .mode-pill,
.container .upload-skip-container .big-check,
.container .scope-grid > .big-check {
    background: linear-gradient(145deg, var(--sms-medium-blue-3), var(--sms-medium-blue)) !important;
    color: var(--sms-white) !important;
    -webkit-text-fill-color: var(--sms-white) !important;
    border: 1px solid rgba(126,200,255,.42) !important;
    border-radius: 14px !important;
    box-shadow: 0 10px 24px rgba(8,41,68,.16) !important;
}
.container .header-actions .big-check *,
.container .all-check-panel *,
.container .upload-mode-row .mode-pill *,
.container .upload-skip-container .big-check *,
.container .scope-grid > .big-check * {
    color: var(--sms-white) !important;
    -webkit-text-fill-color: var(--sms-white) !important;
    opacity: 1 !important;
}
.container .big-check input[type="checkbox"],
.container .big-check input[type="radio"],
.container .all-check-panel input[type="checkbox"],
.container .mode-pill input[type="radio"] {
    width: auto !important;
    min-width: 13px !important;
    height: 13px !important;
    margin-top: 3px !important;
    accent-color: var(--brand-accent) !important;
}

/* Utility field cards stay dark, while their filter inputs stay light/readable. */
.container .api-field-card,
.container .upload-api-field-card {
    min-width: 0 !important;
    min-height: 96px !important;
    background: linear-gradient(145deg, var(--sms-medium-blue-3), var(--sms-medium-blue)) !important;
    border: 1px solid rgba(126,200,255,.42) !important;
    border-radius: 14px !important;
    padding: 8px !important;
    box-shadow: 0 10px 24px rgba(8,41,68,.16) !important;
    box-sizing: border-box !important;
}
.container .api-field-card .api-field-title,
.container .upload-api-field-card .api-field-title {
    min-height: 28px !important;
    font-size: 11.5px !important;
    line-height: 1.18 !important;
    font-weight: 900 !important;
    color: var(--sms-white) !important;
    -webkit-text-fill-color: var(--sms-white) !important;
    overflow-wrap: anywhere !important;
}
.container .api-include-row {
    display: flex !important;
    gap: 5px !important;
    align-items: center !important;
    margin: 5px 0 !important;
    font-size: 11px !important;
    color: var(--sms-white) !important;
    -webkit-text-fill-color: var(--sms-white) !important;
    font-weight: 800 !important;
}
.container .api-include-row input[type="checkbox"] {
    width: auto !important;
    margin: 0 !important;
    transform: scale(.9) !important;
    accent-color: var(--brand-accent) !important;
}
.container .api-filter-input,
.container .api-field-card input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.container .api-field-card select,
.container .upload-api-field-card input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.container .upload-api-field-card select {
    width: 100% !important;
    height: 30px !important;
    min-height: 30px !important;
    padding: 4px 7px !important;
    font-size: 11.5px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
    background: linear-gradient(180deg, #ffffff 0%, #f3f8fd 100%) !important;
    color: var(--sms-field-text) !important;
    -webkit-text-fill-color: var(--sms-field-text) !important;
    border: 1px solid rgba(126,200,255,.58) !important;
}
.container .api-field-card input::placeholder,
.container .upload-api-field-card input::placeholder {
    color: var(--sms-field-muted) !important;
    -webkit-text-fill-color: var(--sms-field-muted) !important;
    opacity: 1 !important;
}
.container .tiny-note,
.container .muted,
.container .source-meta {
    color: var(--sms-soft-white) !important;
    opacity: 1 !important;
}

.container .filter-help {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)) !important;
    gap: 8px !important;
    margin-top: 10px !important;
}
.container .filter-help > div {
    padding: 9px 10px !important;
    min-height: 48px !important;
}
.container .filter-help code {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    background: rgba(255,255,255,.16) !important;
    border: 1px solid rgba(255,255,255,.18) !important;
    border-radius: 6px !important;
    padding: 1px 5px !important;
}

.container .top-run-row {
    display: flex !important;
    justify-content: flex-start !important;
    align-items: center !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
    margin: 6px 0 14px !important;
    padding: 8px 0 2px !important;
}
.container .run-utility-button,
.container .run-upload-button,
.container .run-google-feed-button {
    min-width: 230px !important;
}

.container .utility-status {
    display: none !important;
    margin: 18px 0 !important;
    padding: 14px !important;
    border: 1px solid rgba(126,200,255,.42) !important;
    border-left: 5px solid var(--brand-accent) !important;
    border-radius: 14px !important;
    background: linear-gradient(145deg, var(--sms-medium-blue-3), var(--sms-medium-blue)) !important;
    color: var(--sms-white) !important;
    box-shadow: 0 10px 24px rgba(8,41,68,.16) !important;
}
.container .utility-status.active { display: block !important; }
.container .utility-status * {
    color: var(--sms-white) !important;
    -webkit-text-fill-color: var(--sms-white) !important;
}
.container .utility-progress-track {
    height: 12px !important;
    background: rgba(255,255,255,.20) !important;
    border-radius: 999px !important;
    overflow: hidden !important;
}
.container .utility-progress-fill {
    height: 100% !important;
    width: 0%;
    background: linear-gradient(135deg, var(--brand-accent), var(--sms-light-blue)) !important;
    border-radius: 999px !important;
    transition: width .25s ease !important;
}

.container .file-drop-zone,
.container .file-name-display,
.container .completion-modal {
    background: linear-gradient(145deg, var(--sms-medium-blue-3), var(--sms-medium-blue)) !important;
    border: 1px solid rgba(126,200,255,.42) !important;
    color: var(--sms-white) !important;
}
.container .file-drop-zone *,
.container .file-name-display *,
.container .completion-modal * {
    color: var(--sms-white) !important;
    -webkit-text-fill-color: var(--sms-white) !important;
}
.container .file-choose-button {
    background: linear-gradient(135deg, var(--brand-primary), var(--brand-accent)) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.container .exports-table,
.container .google-perf-table {
    width: 100% !important;
    border-collapse: collapse !important;
}
.container .exports-table .button-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 92px !important;
    white-space: nowrap !important;
    word-break: normal !important;
    padding: 9px 14px !important;
}

@media (max-width: 1000px) {
    .container .scope-grid,
    .container .google-master-grid,
    .container .filter-help,
    .container .upload-grid,
    .container .google-perf-control-grid,
    .container .google-perf-grid {
        grid-template-columns: 1fr !important;
    }
    .container .header-actions { justify-content: flex-start !important; }
    .container .field-grid { grid-template-columns: repeat(auto-fit, minmax(120px, 1fr)) !important; }
}

/* =========================================================
   BigCommerce Categories Tree Page
   Read-only category structure overview at /bc-categories.
   ========================================================= */
.container.bc-categories-page,
.container.bc-categories-page * {
    font-family: var(--sms-app-font-family) !important;
}

.bc-categories-hero {
    display: grid;
    grid-template-columns: minmax(340px, 1fr) auto;
    gap: 18px;
    align-items: start;
    margin: 0 0 18px;
}

.bc-categories-hero h1 {
    margin: 0 0 8px !important;
}

.bc-categories-hero p {
    max-width: 940px;
    margin: 0 !important;
    color: var(--sms-soft-white) !important;
    line-height: 1.45;
}

.bc-categories-actions {
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
}

.bc-categories-refresh-form {
    margin: 0 !important;
}

.bc-category-stats-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 12px;
    margin: 16px 0 18px;
}

.bc-category-stat-card {
    min-height: 86px;
    padding: 14px 16px;
    border-radius: 14px;
    color: var(--sms-white) !important;
    background: linear-gradient(145deg, var(--sms-medium-blue-3), var(--sms-medium-blue)) !important;
    border: 1px solid rgba(126,200,255,.42) !important;
    box-shadow: 0 10px 24px rgba(8,41,68,.16) !important;
    position: relative;
    overflow: hidden;
}

.bc-category-stat-card::after,
.bc-category-tree-panel::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 0;
    height: 3px;
    border-radius: 999px 999px 0 0;
    background: linear-gradient(90deg, var(--brand-accent), var(--sms-light-blue), var(--sms-line-blue));
}

.bc-category-stat-label {
    color: var(--sms-light-blue) !important;
    font-size: 12px;
    font-weight: 950;
    text-transform: uppercase;
    letter-spacing: .08em;
}

.bc-category-stat-value {
    margin-top: 6px;
    color: var(--sms-white) !important;
    font-size: clamp(24px, 2vw, 34px);
    line-height: 1;
    font-weight: 950;
}

.bc-category-tree-panel {
    position: relative;
    overflow: hidden;
    padding: 16px;
    border-radius: 18px;
    background: linear-gradient(145deg, var(--sms-medium-blue) 0%, var(--sms-medium-blue-2) 100%) !important;
    border: 1px solid var(--sms-dark-border) !important;
    color: var(--sms-white) !important;
    box-shadow: var(--sms-card-shadow) !important;
}

.bc-category-toolbar {
    display: grid;
    grid-template-columns: minmax(320px, 1fr) auto;
    gap: 14px;
    align-items: end;
    margin-bottom: 12px;
}

.bc-category-toolbar label {
    display: block;
    margin: 0 0 8px !important;
    color: var(--sms-white) !important;
    font-weight: 900 !important;
}

.bc-category-toolbar input[type="search"] {
    width: 100% !important;
    height: 46px !important;
    margin: 0 !important;
}

.bc-category-toolbar-buttons {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.bc-category-toolbar-buttons button {
    min-height: 42px !important;
    margin: 0 !important;
}

.bc-category-note {
    margin: 10px 0 14px;
    padding: 12px 14px;
    border-radius: 12px;
    background: rgba(255, 183, 77, .10) !important;
    border: 1px solid rgba(255, 183, 77, .48) !important;
    border-left: 5px solid #DCA24A !important;
    color: var(--sms-white) !important;
    line-height: 1.38;
}

.bc-category-note strong {
    color: var(--sms-white) !important;
}

.bc-category-table-wrap {
    overflow-x: auto;
    border: 1px solid rgba(126,200,255,.30);
    border-radius: 14px;
    background: rgba(255,255,255,.035);
}

.bc-category-tree-table {
    width: 100%;
    min-width: 1120px;
    margin: 0 !important;
    border-collapse: collapse !important;
    table-layout: fixed;
    border: 0 !important;
    border-radius: 0 !important;
}

.bc-category-tree-table th {
    position: static !important;
    padding: 11px 12px !important;
    background: linear-gradient(180deg, #0D5E88, #0A4B70) !important;
    color: var(--sms-white) !important;
    font-size: 13px;
    font-weight: 950;
    text-align: left;
    border-bottom: 1px solid rgba(126,200,255,.26) !important;
}

.bc-category-tree-table td {
    padding: 10px 12px !important;
    color: var(--sms-white) !important;
    background: rgba(255,255,255,.035) !important;
    border-bottom: 1px solid rgba(126,200,255,.16) !important;
    vertical-align: middle;
}

.bc-category-tree-table th:nth-child(1) { width: 38%; }
.bc-category-tree-table th:nth-child(2) { width: 9%; }
.bc-category-tree-table th:nth-child(3) { width: 8%; }
.bc-category-tree-table th:nth-child(4) { width: 10%; }
.bc-category-tree-table th:nth-child(5) { width: 10%; }
.bc-category-tree-table th:nth-child(6) { width: 15%; }
.bc-category-tree-table th:nth-child(7) { width: 10%; }

.bc-category-name-inner {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
}

.bc-category-toggle,
.bc-category-toggle-spacer {
    width: 26px !important;
    height: 26px !important;
    min-width: 26px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 7px !important;
    line-height: 1 !important;
}

.bc-category-toggle {
    background: rgba(126,200,255,.16) !important;
    border: 1px solid rgba(126,200,255,.34) !important;
    color: var(--sms-white) !important;
    box-shadow: none !important;
}

.bc-category-toggle:hover {
    background: rgba(126,200,255,.26) !important;
    transform: none !important;
}

.bc-category-folder {
    color: var(--sms-light-blue) !important;
    font-size: 13px;
}

.bc-category-name {
    color: var(--sms-white) !important;
    font-weight: 950;
    line-height: 1.2;
    overflow-wrap: anywhere;
}

.bc-category-path {
    margin-top: 3px;
    color: var(--sms-soft-white) !important;
    font-size: 12px;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.bc-category-url-cell span {
    display: block;
    color: var(--sms-soft-white) !important;
    font-size: 12px;
    overflow-wrap: anywhere;
}

.bc-category-empty-value {
    color: rgba(255,255,255,.42) !important;
}

.bc-category-visibility {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 76px;
    padding: 5px 8px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
    letter-spacing: .04em;
}

.bc-category-visibility.visible {
    background: rgba(34,197,94,.18) !important;
    color: #86efac !important;
    border: 1px solid rgba(34,197,94,.42);
}

.bc-category-visibility.hidden {
    background: rgba(148,163,184,.18) !important;
    color: #e2e8f0 !important;
    border: 1px solid rgba(148,163,184,.38);
}

.bc-category-action-cell {
    display: table-cell;
}

.bc-category-action-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 54px;
    margin: 2px 4px 2px 0;
    padding: 6px 9px;
    border-radius: 999px;
    background: rgba(126, 200, 255, .13) !important;
    border: 1px solid rgba(126, 200, 255, .34) !important;
    color: var(--sms-light-blue) !important;
    font-size: 12px;
    font-weight: 950;
    text-decoration: none !important;
}

.bc-category-action-link.secondary {
    color: var(--sms-soft-white) !important;
    background: rgba(255,255,255,.07) !important;
}

.bc-category-action-link:hover {
    background: rgba(126, 200, 255, .22) !important;
    color: var(--sms-white) !important;
}

@media (max-width: 1100px) {
    .bc-categories-hero,
    .bc-category-toolbar,
    .bc-category-stats-grid {
        grid-template-columns: 1fr !important;
    }
    .bc-categories-actions,
    .bc-category-toolbar-buttons {
        justify-content: flex-start;
    }
}

.bc-category-row.depth-1 .bc-category-name-inner { padding-left: 0; }
.bc-category-row.depth-2 .bc-category-name-inner { padding-left: 22px; }
.bc-category-row.depth-3 .bc-category-name-inner { padding-left: 44px; }
.bc-category-row.depth-4 .bc-category-name-inner { padding-left: 66px; }
.bc-category-row.depth-5 .bc-category-name-inner { padding-left: 88px; }
.bc-category-row.depth-6 .bc-category-name-inner { padding-left: 110px; }
.bc-category-row.depth-7 .bc-category-name-inner { padding-left: 132px; }
.bc-category-row.depth-8 .bc-category-name-inner { padding-left: 154px; }
.bc-category-row.depth-9 .bc-category-name-inner { padding-left: 176px; }
.bc-category-row.depth-10 .bc-category-name-inner { padding-left: 198px; }

/* =========================================================
   BC Categories Tree tweak
   - Replaces the empty Products column with Level.
   - Gives the action buttons enough room so View is not cut off.
   - Allows 6 stat cards to wrap cleanly.
   ========================================================= */
.bc-category-stats-grid {
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)) !important;
}

.bc-category-tree-table {
    min-width: 1200px !important;
}

.bc-category-tree-table th:nth-child(1) { width: 39% !important; }
.bc-category-tree-table th:nth-child(2) { width: 9% !important; }
.bc-category-tree-table th:nth-child(3) { width: 6% !important; }
.bc-category-tree-table th:nth-child(4) { width: 10% !important; }
.bc-category-tree-table th:nth-child(5) { width: 10% !important; }
.bc-category-tree-table th:nth-child(6) { width: 14% !important; }
.bc-category-tree-table th:nth-child(7) { width: 12% !important; }

.bc-category-action-cell {
    white-space: nowrap !important;
}

.bc-category-action-link {
    min-width: 58px !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
}

/* =========================================================
   BigCommerce Orders page
   Read-only order list for Command Center.
   ========================================================= */
.orders-page,
.orders-page * {
    font-family: var(--sms-app-font-family) !important;
}
.orders-page .orders-hero {
    display: grid !important;
    grid-template-columns: minmax(360px, 1fr) auto !important;
    gap: 18px !important;
    align-items: start !important;
    margin-bottom: 18px !important;
}
.orders-page .orders-hero h1 {
    margin: 0 0 8px !important;
    color: var(--sms-white) !important;
}
.orders-page .orders-hero p {
    max-width: 920px !important;
    margin: 0 !important;
    color: var(--sms-soft-white) !important;
    font-size: 15px !important;
    line-height: 1.42 !important;
}
.orders-page .orders-refresh-form {
    margin: 0 !important;
}
.orders-page .orders-filter-card,
.orders-page .orders-table-card,
.orders-page .orders-summary-card,
.orders-page .orders-detail-panel {
    position: relative !important;
    overflow: hidden !important;
    background: linear-gradient(145deg, var(--sms-medium-blue) 0%, var(--sms-medium-blue-2) 100%) !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-radius: 18px !important;
    color: var(--sms-white) !important;
    box-shadow: var(--sms-card-shadow) !important;
}
.orders-page .orders-filter-card,
.orders-page .orders-table-card {
    padding: 16px !important;
    margin-bottom: 18px !important;
}
.orders-page .orders-summary-card {
    min-height: 96px !important;
    padding: 14px 16px !important;
}
.orders-page .orders-filter-card::after,
.orders-page .orders-table-card::after,
.orders-page .orders-summary-card::after,
.orders-page .orders-detail-panel::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 0;
    height: 3px;
    border-radius: 999px 999px 0 0;
    background: linear-gradient(90deg, var(--brand-accent), var(--sms-light-blue), var(--sms-line-blue));
    pointer-events: none;
}
.orders-page .orders-filter-grid {
    display: grid !important;
    grid-template-columns: minmax(170px, 220px) minmax(210px, 260px) minmax(280px, 1fr) auto !important;
    gap: 14px !important;
    align-items: end !important;
}
.orders-page .orders-filter-grid label {
    display: block !important;
    margin: 0 0 8px !important;
    color: var(--sms-white) !important;
    font-weight: 900 !important;
}
.orders-page .orders-filter-grid input,
.orders-page .orders-filter-grid select {
    height: 46px !important;
    margin: 0 !important;
}
.orders-page .orders-filter-actions {
    display: flex !important;
    gap: 8px !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
}
.orders-page .orders-filter-actions button,
.orders-page .orders-filter-actions .button-link {
    height: 46px !important;
    min-height: 46px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    white-space: nowrap !important;
    margin: 0 !important;
}
.orders-page .orders-note {
    margin-top: 12px !important;
    padding: 10px 12px !important;
    border-radius: 10px !important;
    background: rgba(255, 183, 77, .10) !important;
    border: 1px solid rgba(255, 183, 77, .48) !important;
    border-left: 5px solid #DCA24A !important;
    color: var(--sms-white) !important;
    font-size: 13px !important;
}
.orders-page .orders-summary-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin: 0 0 18px !important;
}
.orders-page .orders-summary-label,
.orders-page .orders-detail-label {
    color: var(--sms-light-blue) !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    text-transform: uppercase !important;
    letter-spacing: .07em !important;
}
.orders-page .orders-summary-value {
    color: var(--sms-white) !important;
    font-size: clamp(22px, 1.7vw, 31px) !important;
    line-height: 1.05 !important;
    font-weight: 950 !important;
    margin: 5px 0 4px !important;
}
.orders-page .orders-summary-sub,
.orders-page .orders-table-sub,
.orders-page .orders-small {
    color: var(--sms-soft-white) !important;
    font-size: 12px !important;
    line-height: 1.32 !important;
}
.orders-page .orders-table-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 14px !important;
    margin-bottom: 14px !important;
}
.orders-page .orders-table-header h2 {
    margin: 0 0 4px !important;
    color: var(--sms-white) !important;
}
.orders-page .orders-pagination {
    display: flex !important;
    gap: 8px !important;
    align-items: center !important;
    flex-wrap: wrap !important;
}
.orders-page .orders-table-wrap {
    overflow-x: auto !important;
    border-radius: 14px !important;
    border: 1px solid rgba(126,200,255,.28) !important;
}
.orders-page .orders-table {
    width: 100% !important;
    min-width: 1080px !important;
    table-layout: fixed !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    border-collapse: collapse !important;
}
.orders-page .orders-table th {
    position: static !important;
    background: linear-gradient(180deg, #0D5E88, #0A4B70) !important;
    color: var(--sms-white) !important;
    padding: 11px 12px !important;
    font-size: 13px !important;
    font-weight: 950 !important;
    text-align: left !important;
}
.orders-page .orders-table td {
    padding: 11px 12px !important;
    color: var(--sms-white) !important;
    background: rgba(255,255,255,.035) !important;
    border-bottom: 1px solid rgba(126,200,255,.16) !important;
    vertical-align: top !important;
    overflow-wrap: anywhere !important;
}
.orders-page .orders-table th:nth-child(1) { width: 9% !important; }
.orders-page .orders-table th:nth-child(2) { width: 10% !important; }
.orders-page .orders-table th:nth-child(3) { width: 13% !important; }
.orders-page .orders-table th:nth-child(4) { width: 22% !important; }
.orders-page .orders-table th:nth-child(5) { width: 18% !important; }
.orders-page .orders-table th:nth-child(6) { width: 7% !important; }
.orders-page .orders-table th:nth-child(7) { width: 10% !important; }
.orders-page .orders-table th:nth-child(8) { width: 11% !important; }
.orders-page .order-status-pill {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 92px !important;
    padding: 5px 9px !important;
    border-radius: 999px !important;
    font-size: 11px !important;
    font-weight: 950 !important;
    text-transform: uppercase !important;
    letter-spacing: .04em !important;
    white-space: nowrap !important;
}
.orders-page .order-status-good { background: rgba(34,197,94,.18) !important; color: #86efac !important; border: 1px solid rgba(34,197,94,.44) !important; }
.orders-page .order-status-warn { background: rgba(245,158,11,.18) !important; color: #fbbf24 !important; border: 1px solid rgba(245,158,11,.48) !important; }
.orders-page .order-status-bad { background: rgba(239,68,68,.18) !important; color: #fecaca !important; border: 1px solid rgba(239,68,68,.48) !important; }
.orders-page .order-status-neutral { background: rgba(126,200,255,.14) !important; color: var(--sms-white) !important; border: 1px solid rgba(126,200,255,.36) !important; }
.orders-page .orders-detail-button {
    min-width: 72px !important;
    min-height: 34px !important;
    padding: 7px 12px !important;
    margin: 0 !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    font-weight: 950 !important;
}
.orders-page .orders-detail-row td {
    padding: 0 !important;
    background: rgba(255,255,255,.035) !important;
}
.orders-page .orders-detail-panel {
    margin: 0 !important;
    padding: 18px 20px 22px !important;
    border-left: 5px solid var(--sms-light-blue) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
}
.orders-page .orders-detail-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 14px !important;
}
.orders-page .orders-detail-grid div {
    color: var(--sms-soft-white) !important;
    line-height: 1.4 !important;
}
.orders-page .orders-detail-grid strong {
    color: var(--sms-white) !important;
}
.orders-page .orders-empty {
    padding: 18px !important;
    border: 1px dashed rgba(126,200,255,.44) !important;
    border-radius: 14px !important;
    color: var(--sms-soft-white) !important;
    background: rgba(255,255,255,.05) !important;
}
@media (max-width: 1250px) {
    .orders-page .orders-summary-grid,
    .orders-page .orders-detail-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
    .orders-page .orders-filter-grid {
        grid-template-columns: 1fr 1fr !important;
    }
}
@media (max-width: 760px) {
    .orders-page .orders-hero,
    .orders-page .orders-summary-grid,
    .orders-page .orders-detail-grid,
    .orders-page .orders-filter-grid {
        grid-template-columns: 1fr !important;
    }
    .orders-page .orders-table-header {
        display: block !important;
    }
    .orders-page .orders-pagination {
        margin-top: 10px !important;
    }
}


/* =========================================================
   BIGCOMMERCE CUSTOMERS PAGE
   First read-only customer lookup page for Command Center.
   ========================================================= */
.customers-page,
.customers-page * {
    font-family: var(--sms-app-font-family) !important;
}
.customers-hero {
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: flex-start;
    margin-bottom: 18px;
}
.customers-hero h1 {
    margin: 0 0 8px !important;
    color: var(--sms-white) !important;
    font-size: 30px !important;
}
.customers-hero p {
    max-width: 980px;
    margin: 0 !important;
    color: var(--sms-soft-white) !important;
    line-height: 1.45;
}
.customers-refresh-form button {
    min-width: 130px !important;
    min-height: 34px !important;
    padding: 7px 12px !important;
    font-size: 12px !important;
    border-radius: 999px !important;
}
.customers-filter-card,
.customers-summary-card,
.customers-table-card,
.customer-detail-panel {
    position: relative;
    overflow: hidden;
    background: linear-gradient(145deg, var(--sms-medium-blue) 0%, var(--sms-medium-blue-2) 100%) !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-radius: 18px !important;
    color: var(--sms-white) !important;
    box-shadow: var(--sms-card-shadow) !important;
}
.customers-filter-card,
.customers-table-card,
.customer-detail-panel {
    padding: 16px !important;
    margin-bottom: 18px !important;
}
.customers-filter-card::after,
.customers-summary-card::after,
.customers-table-card::after,
.customer-detail-panel::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 0;
    height: 3px;
    border-radius: 999px 999px 0 0;
    background: linear-gradient(90deg, var(--brand-accent), var(--sms-light-blue), var(--sms-line-blue));
}
.customers-filter-grid {
    display: grid !important;
    grid-template-columns: minmax(420px, 1fr) auto !important;
    gap: 14px !important;
    align-items: end !important;
}
.customers-filter-grid label {
    color: var(--sms-white) !important;
    font-weight: 950 !important;
    margin-bottom: 8px !important;
}
.customers-filter-grid input {
    width: 100% !important;
    height: 46px !important;
    margin: 0 !important;
}
.customers-filter-actions {
    display: flex;
    gap: 8px;
    align-items: center;
    white-space: nowrap;
}
.customers-filter-actions button,
.customers-filter-actions .button-link {
    min-height: 42px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
}
.customers-note {
    margin-top: 12px;
    padding: 10px 12px;
    border-radius: 10px;
    background: rgba(255,183,77,.10);
    border: 1px solid rgba(255,183,77,.48);
    border-left: 5px solid #DCA24A;
    color: var(--sms-white) !important;
    line-height: 1.35;
    font-size: 13px;
}
.customers-summary-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
    margin: 18px 0 !important;
}
.customers-summary-card {
    min-height: 98px;
    padding: 16px !important;
}
.customers-summary-label {
    color: var(--sms-light-blue) !important;
    font-size: 12px;
    font-weight: 950;
    letter-spacing: .08em;
    text-transform: uppercase;
}
.customers-summary-value {
    margin-top: 5px;
    color: var(--sms-white) !important;
    font-size: 28px;
    line-height: 1.05;
    font-weight: 950;
}
.customers-summary-sub,
.customers-table-sub {
    color: var(--sms-soft-white) !important;
    font-size: 12px;
    line-height: 1.35;
}
.customers-table-header {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    align-items: flex-start;
    margin-bottom: 12px;
}
.customers-table-header h2 {
    margin: 0 0 4px !important;
    color: var(--sms-white) !important;
}
.customers-page-links {
    display: flex;
    gap: 8px;
    align-items: center;
}
.customers-page-links a {
    display: inline-flex;
    min-height: 30px;
    align-items: center;
    justify-content: center;
    padding: 5px 9px;
    border-radius: 999px;
    background: rgba(126,200,255,.12);
    border: 1px solid rgba(126,200,255,.35);
    color: var(--sms-light-blue) !important;
    font-weight: 900;
    text-decoration: none !important;
}
.customers-table-wrap {
    overflow-x: auto;
    border: 1px solid rgba(126,200,255,.24);
    border-radius: 14px;
}
.customers-table {
    width: 100% !important;
    min-width: 1120px !important;
    table-layout: fixed !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
}
.customers-table th {
    position: static !important;
    background: linear-gradient(180deg, #0D5E88, #0A4B70) !important;
    color: var(--sms-white) !important;
    padding: 10px 12px !important;
    font-weight: 950 !important;
}
.customers-table td {
    padding: 11px 12px !important;
    color: var(--sms-white) !important;
    background: rgba(255,255,255,.035) !important;
    border-bottom: 1px solid rgba(126,200,255,.16) !important;
    vertical-align: top !important;
    overflow-wrap: anywhere !important;
}
.customers-table th:nth-child(1) { width: 17%; }
.customers-table th:nth-child(2) { width: 21%; }
.customers-table th:nth-child(3) { width: 24%; }
.customers-table th:nth-child(4) { width: 9%; }
.customers-table th:nth-child(5) { width: 10%; }
.customers-table th:nth-child(6) { width: 10%; }
.customers-table th:nth-child(7) { width: 9%; text-align:center; }
.customers-table td:nth-child(7) { text-align:center; }
.customers-table span {
    color: var(--sms-soft-white) !important;
    font-size: 12px;
}
.customer-group-pill {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 70px !important;
    padding: 5px 9px !important;
    border-radius: 999px !important;
    background: rgba(126,200,255,.12) !important;
    border: 1px solid rgba(126,200,255,.35) !important;
    color: var(--sms-white) !important;
    font-size: 12px !important;
    font-weight: 900 !important;
}
.customer-view-button {
    min-width: 74px !important;
    min-height: 34px !important;
    padding: 7px 12px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
}
.customer-detail-row td {
    padding: 0 !important;
}
.customer-detail-panel {
    margin: 0 !important;
    border-radius: 0 !important;
    border-left: 5px solid var(--sms-light-blue) !important;
}
.customer-detail-title {
    color: var(--sms-white) !important;
    font-weight: 950;
    font-size: 16px;
    margin-bottom: 12px;
}
.customer-detail-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}
.customer-detail-card {
    padding: 12px;
    border-radius: 12px;
    background: rgba(255,255,255,.075);
    border: 1px solid rgba(126,200,255,.24);
    color: var(--sms-white) !important;
    line-height: 1.45;
}
.customer-detail-label {
    color: var(--sms-light-blue) !important;
    font-size: 11px;
    font-weight: 950;
    letter-spacing: .07em;
    text-transform: uppercase;
    margin-bottom: 6px;
}
.customer-notes {
    margin-top: 12px;
    padding: 12px;
    border-radius: 12px;
    background: rgba(255,255,255,.06);
    border: 1px solid rgba(126,200,255,.22);
    color: var(--sms-white) !important;
}
@media (max-width: 1100px) {
    .customers-hero,
    .customers-table-header { display: block; }
    .customers-refresh-form,
    .customers-page-links { margin-top: 12px; }
    .customers-filter-grid,
    .customers-summary-grid,
    .customer-detail-grid { grid-template-columns: 1fr !important; }
    .customers-filter-actions { justify-content: flex-start; }
}


/* =========================================================
   CRM Contacts Page - HighLevel / Local Titans
   First read-only Command Center CRM list view.
   ========================================================= */
.crm-contacts-page,
.crm-contacts-page * {
    font-family: var(--sms-app-font-family) !important;
}
.crm-page-heading-row {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 18px !important;
    margin: 0 0 18px !important;
}
.crm-page-heading-row h1 { margin: 0 0 8px !important; }
.crm-page-heading-row p {
    max-width: 980px !important;
    margin: 0 !important;
    color: var(--sms-soft-white) !important;
    line-height: 1.42 !important;
}
.crm-refresh-button {
    white-space: nowrap !important;
    align-self: flex-start !important;
}
.crm-filter-card,
.crm-list-card {
    position: relative !important;
    overflow: hidden !important;
    margin: 18px 0 !important;
    padding: 18px !important;
    border-radius: 18px !important;
    background: linear-gradient(145deg, var(--sms-medium-blue) 0%, var(--sms-medium-blue-2) 100%) !important;
    border: 1px solid var(--sms-dark-border) !important;
    color: var(--sms-white) !important;
    box-shadow: var(--sms-card-shadow) !important;
}
.crm-filter-card::after,
.crm-list-card::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 0;
    height: 3px;
    border-radius: 999px 999px 0 0;
    background: linear-gradient(90deg, var(--brand-accent), var(--sms-light-blue), var(--sms-line-blue));
}
.crm-filter-grid {
    display: grid !important;
    grid-template-columns: minmax(360px, 1fr) minmax(110px, 140px) auto !important;
    gap: 14px !important;
    align-items: end !important;
}
.crm-filter-grid label {
    display: block !important;
    margin: 0 0 7px !important;
    color: var(--sms-white) !important;
    font-weight: 950 !important;
}
.crm-filter-grid input,
.crm-filter-grid select {
    width: 100% !important;
    height: 48px !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}
.crm-filter-actions {
    display: flex !important;
    gap: 8px !important;
    align-items: center !important;
}
.crm-filter-actions button,
.crm-filter-actions .button-link {
    height: 48px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    white-space: nowrap !important;
}
.crm-note {
    margin-top: 12px !important;
    padding: 11px 13px !important;
    border-radius: 10px !important;
    background: rgba(255, 183, 77, .10) !important;
    border: 1px solid rgba(255, 183, 77, .48) !important;
    border-left: 5px solid #DCA24A !important;
    color: var(--sms-white) !important;
    line-height: 1.35 !important;
}
.crm-summary-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 14px !important;
    margin: 18px 0 !important;
}
.crm-list-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-start !important;
    gap: 14px !important;
    margin-bottom: 14px !important;
}
.crm-list-header h2 { margin: 0 0 4px !important; }
.crm-pagination {
    display: flex !important;
    gap: 8px !important;
    align-items: center !important;
}
.crm-table-wrap {
    width: 100% !important;
    overflow-x: auto !important;
    border: 1px solid rgba(126,200,255,.28) !important;
    border-radius: 14px !important;
}
.crm-contacts-table {
    width: 100% !important;
    min-width: 1180px !important;
    table-layout: fixed !important;
    border-collapse: collapse !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
}
.crm-contacts-table th,
.crm-contacts-table td {
    padding: 11px 12px !important;
    vertical-align: top !important;
    line-height: 1.28 !important;
    overflow-wrap: anywhere !important;
}
.crm-contacts-table th:nth-child(1) { width: 17% !important; }
.crm-contacts-table th:nth-child(2) { width: 19% !important; }
.crm-contacts-table th:nth-child(3) { width: 22% !important; }
.crm-contacts-table th:nth-child(4) { width: 14% !important; }
.crm-contacts-table th:nth-child(5) { width: 12% !important; }
.crm-contacts-table th:nth-child(6) { width: 10% !important; }
.crm-contacts-table th:nth-child(7) { width: 6% !important; text-align: center !important; }
.crm-contacts-table td:nth-child(7) { text-align: center !important; }
.crm-tag-pill {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 54px !important;
    padding: 5px 10px !important;
    border-radius: 999px !important;
    background: rgba(126,200,255,.14) !important;
    border: 1px solid rgba(126,200,255,.42) !important;
    color: var(--sms-white) !important;
    font-weight: 950 !important;
}
.crm-detail-row > td {
    padding: 0 !important;
    background: rgba(255,255,255,.035) !important;
}
.crm-detail-panel {
    padding: 18px 22px 22px !important;
    border-left: 5px solid var(--sms-light-blue) !important;
    background: linear-gradient(145deg, var(--sms-medium-blue-3), var(--sms-medium-blue)) !important;
    color: var(--sms-white) !important;
}
.crm-detail-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)) !important;
    gap: 12px !important;
    margin-top: 12px !important;
}
.detail-value-small {
    font-size: 15px !important;
    line-height: 1.18 !important;
    overflow-wrap: anywhere !important;
}
.crm-detail-notes {
    margin-top: 14px !important;
    padding: 12px 14px !important;
    border-radius: 12px !important;
    background: rgba(255,255,255,.08) !important;
    border: 1px solid rgba(126,200,255,.28) !important;
    color: var(--sms-soft-white) !important;
}
.crm-detail-notes strong { color: var(--sms-white) !important; }
@media (max-width: 1100px) {
    .crm-page-heading-row,
    .crm-list-header { display: block !important; }
    .crm-refresh-button,
    .crm-pagination { margin-top: 12px !important; }
    .crm-filter-grid,
    .crm-summary-grid { grid-template-columns: 1fr !important; }
    .crm-filter-actions { align-items: stretch !important; }
}


/* =========================================================
   CRM Contacts quick polish
   Keeps the demo message concise and fixes Details button wrapping.
   ========================================================= */
.crm-contacts-page .crm-page-heading-row,
.crm-contacts-page .crm-page-heading-row * {
    text-transform: none !important;
    letter-spacing: normal !important;
}
.crm-contacts-page .crm-page-heading-row h1 {
    font-size: 30px !important;
    line-height: 1.12 !important;
    margin-bottom: 8px !important;
    color: var(--sms-white) !important;
}
.crm-contacts-page .crm-page-heading-row .crm-intro,
.crm-contacts-page .crm-page-heading-row p {
    max-width: 1060px !important;
    color: var(--sms-soft-white) !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1.42 !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}
.crm-contacts-page .crm-refresh-button {
    min-height: 42px !important;
    padding: 10px 18px !important;
    font-size: 13px !important;
    letter-spacing: .04em !important;
    text-transform: uppercase !important;
}
.crm-contacts-page .crm-note {
    font-size: 13px !important;
    line-height: 1.36 !important;
}
.crm-contacts-page .crm-note strong {
    color: var(--sms-white) !important;
}
.crm-contacts-table {
    min-width: 1240px !important;
}
.crm-contacts-table th:nth-child(1) { width: 17% !important; }
.crm-contacts-table th:nth-child(2) { width: 18% !important; }
.crm-contacts-table th:nth-child(3) { width: 22% !important; }
.crm-contacts-table th:nth-child(4) { width: 13% !important; }
.crm-contacts-table th:nth-child(5) { width: 10% !important; }
.crm-contacts-table th:nth-child(6) { width: 12% !important; }
.crm-contacts-table th:nth-child(7) { width: 8% !important; min-width: 96px !important; text-align: center !important; }
.crm-contacts-table td:nth-child(7) {
    text-align: center !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
}
.crm-contacts-page .button-small.crm-detail-toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 72px !important;
    width: 72px !important;
    height: 38px !important;
    padding: 0 12px !important;
    white-space: nowrap !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    line-height: 1 !important;
}
.crm-contacts-page .summary-card .summary-value {
    line-height: 1.05 !important;
}


/* =========================================================
   CRM Companies Page
   Reuses CRM contact cards/table styling with company-specific widths.
   ========================================================= */
.crm-companies-page .crm-page-heading-row h1 {
    font-size: 30px !important;
    line-height: 1.12 !important;
    margin: 0 !important;
}
.crm-companies-page .crm-companies-table {
    min-width: 1240px !important;
}
.crm-companies-page .crm-companies-table th:nth-child(1) { width: 17% !important; }
.crm-companies-page .crm-companies-table th:nth-child(2) { width: 21% !important; }
.crm-companies-page .crm-companies-table th:nth-child(3) { width: 17% !important; }
.crm-companies-page .crm-companies-table th:nth-child(4) { width: 14% !important; }
.crm-companies-page .crm-companies-table th:nth-child(5) { width: 10% !important; text-align: center !important; }
.crm-companies-page .crm-companies-table th:nth-child(6) { width: 13% !important; }
.crm-companies-page .crm-companies-table th:nth-child(7) { width: 8% !important; min-width: 96px !important; text-align: center !important; }
.crm-companies-page .crm-companies-table td:nth-child(5),
.crm-companies-page .crm-companies-table td:nth-child(7) {
    text-align: center !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
}
.crm-gm-pill {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 86px !important;
    padding: 5px 10px !important;
    border-radius: 999px !important;
    color: var(--sms-white) !important;
    font-weight: 950 !important;
    font-size: 12px !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    border: 1px solid rgba(126,200,255,.36) !important;
    background: rgba(126,200,255,.14) !important;
}
.crm-gm-pill.gm-good {
    background: rgba(34,197,94,.18) !important;
    border-color: rgba(34,197,94,.46) !important;
    color: #86efac !important;
}
.crm-gm-pill.gm-warn {
    background: rgba(245,158,11,.16) !important;
    border-color: rgba(245,158,11,.48) !important;
    color: #fbbf24 !important;
}
.crm-gm-pill.gm-muted {
    background: rgba(148,163,184,.16) !important;
    border-color: rgba(148,163,184,.36) !important;
    color: rgba(255,255,255,.82) !important;
}
.crm-companies-page .button-small.crm-detail-toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 72px !important;
    width: 72px !important;
    height: 38px !important;
    padding: 0 12px !important;
    white-space: nowrap !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
    line-height: 1 !important;
}


/* =========================================================
   CRM Projects Page
   First read-only HighLevel / Local Titans project-opportunity view.
   ========================================================= */
.container.crm-projects-page .crm-project-summary-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
}

.container.crm-projects-page .crm-filter-grid {
    grid-template-columns: minmax(420px, 1fr) minmax(180px, 240px) minmax(120px, 160px) auto !important;
}

.container.crm-projects-page .crm-projects-table {
    table-layout: fixed !important;
    min-width: 1220px !important;
}

.container.crm-projects-page .crm-projects-table th:nth-child(1),
.container.crm-projects-page .crm-projects-table td:nth-child(1) { width: 22% !important; }
.container.crm-projects-page .crm-projects-table th:nth-child(2),
.container.crm-projects-page .crm-projects-table td:nth-child(2) { width: 15% !important; }
.container.crm-projects-page .crm-projects-table th:nth-child(3),
.container.crm-projects-page .crm-projects-table td:nth-child(3) { width: 25% !important; }
.container.crm-projects-page .crm-projects-table th:nth-child(4),
.container.crm-projects-page .crm-projects-table td:nth-child(4) { width: 11% !important; }
.container.crm-projects-page .crm-projects-table th:nth-child(5),
.container.crm-projects-page .crm-projects-table td:nth-child(5) { width: 11% !important; }
.container.crm-projects-page .crm-projects-table th:nth-child(6),
.container.crm-projects-page .crm-projects-table td:nth-child(6) { width: 12% !important; }
.container.crm-projects-page .crm-projects-table th:nth-child(7),
.container.crm-projects-page .crm-projects-table td:nth-child(7) { width: 8% !important; text-align:center !important; }

.container.crm-projects-page .crm-status-pill {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 82px !important;
    padding: 5px 10px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    line-height: 1.1 !important;
    text-transform: uppercase !important;
    border: 1px solid rgba(126,200,255,.36) !important;
    background: rgba(126,200,255,.16) !important;
    color: var(--sms-white) !important;
}
.container.crm-projects-page .crm-status-pill.status-good {
    background: rgba(34,197,94,.18) !important;
    border-color: rgba(34,197,94,.45) !important;
    color: #86efac !important;
}
.container.crm-projects-page .crm-status-pill.status-bad {
    background: rgba(239,68,68,.16) !important;
    border-color: rgba(239,68,68,.45) !important;
    color: #fecaca !important;
}
.container.crm-projects-page .crm-status-pill.status-open {
    background: rgba(14,165,233,.16) !important;
    border-color: rgba(14,165,233,.45) !important;
    color: var(--sms-light-blue) !important;
}
.container.crm-projects-page .crm-status-pill.status-warn {
    background: rgba(245,158,11,.14) !important;
    border-color: rgba(245,158,11,.50) !important;
    color: #fbbf24 !important;
}
.container.crm-projects-page .crm-status-pill.status-muted {
    background: rgba(148,163,184,.14) !important;
    border-color: rgba(148,163,184,.36) !important;
    color: rgba(255,255,255,.76) !important;
}

.container.crm-projects-page .crm-projects-table .button-small,
.container.crm-projects-page .crm-projects-table .crm-detail-toggle {
    min-width: 74px !important;
    width: auto !important;
    padding: 8px 14px !important;
    white-space: nowrap !important;
    word-break: normal !important;
}

@media (max-width: 1300px) {
    .container.crm-projects-page .crm-project-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 1000px) {
    .container.crm-projects-page .crm-filter-grid {
        grid-template-columns: 1fr !important;
    }
}


/* =========================================================
   CRM Tasks and Activity quick demo pages
   ========================================================= */
.container.crm-tasks-page .crm-tasks-table th:nth-child(1) { width: 25%; }
.container.crm-tasks-page .crm-tasks-table th:nth-child(2) { width: 18%; }
.container.crm-tasks-page .crm-tasks-table th:nth-child(3) { width: 22%; }
.container.crm-tasks-page .crm-tasks-table th:nth-child(4) { width: 12%; }
.container.crm-tasks-page .crm-tasks-table th:nth-child(5) { width: 14%; }
.container.crm-tasks-page .crm-tasks-table th:nth-child(6) { width: 9%; }
.container.crm-activity-page .crm-activity-table th:nth-child(1) { width: 16%; }
.container.crm-activity-page .crm-activity-table th:nth-child(2) { width: 26%; }
.container.crm-activity-page .crm-activity-table th:nth-child(3) { width: 21%; }
.container.crm-activity-page .crm-activity-table th:nth-child(4) { width: 13%; }
.container.crm-activity-page .crm-activity-table th:nth-child(5) { width: 15%; }
.container.crm-activity-page .crm-activity-table th:nth-child(6) { width: 9%; }
.container .crm-status-pill.status-open,
.container .crm-status-pill.status-good,
.container .crm-status-pill.status-warn,
.container .crm-status-pill.status-bad,
.container .crm-status-pill.status-muted {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 86px !important;
    padding: 6px 10px !important;
    border-radius: 999px !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    line-height: 1.1 !important;
    text-transform: uppercase !important;
}
.container .crm-status-pill.status-good { background: rgba(34,197,94,.20) !important; border: 1px solid rgba(34,197,94,.42) !important; color: #86efac !important; }
.container .crm-status-pill.status-open { background: rgba(14,165,233,.18) !important; border: 1px solid rgba(56,189,248,.44) !important; color: #7dd3fc !important; }
.container .crm-status-pill.status-warn { background: rgba(245,158,11,.18) !important; border: 1px solid rgba(245,158,11,.44) !important; color: #fbbf24 !important; }
.container .crm-status-pill.status-bad { background: rgba(239,68,68,.18) !important; border: 1px solid rgba(239,68,68,.44) !important; color: #fecaca !important; }
.container .crm-status-pill.status-muted { background: rgba(148,163,184,.18) !important; border: 1px solid rgba(148,163,184,.42) !important; color: #e2e8f0 !important; }
.container .crm-message-preview {
    max-width: 520px;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
}

/* =========================================================
   CRM Tasks / Activity quick polish before demo
   - Keep filter actions on the same row
   - Make Reset compact and Command Center styled
   - Keep summary cards in one row on wide screens
   ========================================================= */
.container.crm-tasks-page .crm-filter-grid,
.container.crm-activity-page .crm-filter-grid {
    grid-template-columns: minmax(460px, 1fr) minmax(150px, 190px) minmax(100px, 135px) auto !important;
    gap: 14px !important;
    align-items: end !important;
}

.container.crm-tasks-page .crm-filter-actions,
.container.crm-activity-page .crm-filter-actions {
    justify-content: flex-end !important;
    align-items: center !important;
    gap: 8px !important;
    flex-wrap: nowrap !important;
}

.container.crm-tasks-page .crm-filter-actions button,
.container.crm-activity-page .crm-filter-actions button {
    min-width: 132px !important;
    height: 48px !important;
    padding: 0 16px !important;
}

.container.crm-tasks-page .crm-filter-actions .button-secondary,
.container.crm-activity-page .crm-filter-actions .button-secondary,
.container.crm-tasks-page .crm-filter-actions a.button-link.button-secondary,
.container.crm-activity-page .crm-filter-actions a.button-link.button-secondary {
    min-width: 72px !important;
    width: auto !important;
    height: 48px !important;
    padding: 0 14px !important;
    border-radius: 10px !important;
    background: rgba(126, 200, 255, .12) !important;
    border: 1px solid rgba(126, 200, 255, .35) !important;
    color: var(--sms-light-blue) !important;
    box-shadow: none !important;
    font-weight: 900 !important;
    text-decoration: none !important;
}

.container.crm-tasks-page .crm-filter-actions .button-secondary:hover,
.container.crm-activity-page .crm-filter-actions .button-secondary:hover {
    background: rgba(126, 200, 255, .20) !important;
    color: var(--sms-white) !important;
}

.container.crm-tasks-page .crm-summary-grid,
.container.crm-activity-page .crm-summary-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
}

.container.crm-tasks-page .crm-tasks-table,
.container.crm-activity-page .crm-activity-table {
    width: 100% !important;
    min-width: 1180px !important;
    table-layout: fixed !important;
}

.container.crm-tasks-page .crm-tasks-table th:nth-child(6),
.container.crm-tasks-page .crm-tasks-table td:nth-child(6),
.container.crm-activity-page .crm-activity-table th:nth-child(6),
.container.crm-activity-page .crm-activity-table td:nth-child(6) {
    width: 110px !important;
    text-align: center !important;
}

.container.crm-tasks-page .crm-tasks-table .button-small,
.container.crm-tasks-page .crm-tasks-table .crm-detail-toggle,
.container.crm-activity-page .crm-activity-table .button-small,
.container.crm-activity-page .crm-activity-table .crm-detail-toggle {
    min-width: 72px !important;
    padding: 8px 14px !important;
    white-space: nowrap !important;
    word-break: normal !important;
}

@media (max-width: 1300px) {
    .container.crm-tasks-page .crm-summary-grid,
    .container.crm-activity-page .crm-summary-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 1000px) {
    .container.crm-tasks-page .crm-filter-grid,
    .container.crm-activity-page .crm-filter-grid {
        grid-template-columns: 1fr !important;
    }
    .container.crm-tasks-page .crm-filter-actions,
    .container.crm-activity-page .crm-filter-actions {
        justify-content: flex-start !important;
    }
}


/* =========================================================
   QUOTE ENGINE BUTTON READABILITY FIX
   Added after Phase 2A/2B Quote Engine testing.
   Problem: shared .container a color rules were stronger than .button-link
   color rules, making working quote action buttons look greyed out.
   ========================================================= */
.container a.button-link,
.container a.button-link:link,
.container a.button-link:visited,
.container .action-row a.button-link,
.container .edit-toolbar a.button-link,
.container .send-card a.button-link,
.container .quote-preview-shell + .action-row a.button-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 42px !important;
    padding: 10px 18px !important;
    border-radius: 10px !important;
    background: linear-gradient(135deg, var(--brand-primary) 0%, var(--brand-accent) 62%, var(--sms-line-blue) 100%) !important;
    border: 1px solid rgba(126,200,255,.34) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
    text-decoration: none !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
    box-shadow: 0 12px 26px rgba(8,41,68,.25) !important;
    cursor: pointer !important;
}

.container a.button-link:hover,
.container .action-row a.button-link:hover,
.container .edit-toolbar a.button-link:hover,
.container .send-card a.button-link:hover {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
    transform: translateY(-1px);
    box-shadow: 0 14px 28px rgba(var(--brand-primary-rgb), .24) !important;
}

.container a.button-link.button-quiet,
.container a.button-link.button-secondary,
.container a.button-link.button-secondary-link {
    background: linear-gradient(135deg, #0B5E8E, #2695C1) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    opacity: 1 !important;
    border-color: rgba(126,200,255,.46) !important;
}

/* True disabled actions should still look disabled. */
.container a.button-link.disabled,
.container button:disabled,
.container .button-link[aria-disabled="true"] {
    background: rgba(148, 163, 184, .38) !important;
    color: rgba(255,255,255,.62) !important;
    -webkit-text-fill-color: rgba(255,255,255,.62) !important;
    border-color: rgba(148,163,184,.30) !important;
    box-shadow: none !important;
    cursor: not-allowed !important;
    transform: none !important;
    pointer-events: none !important;
}

/* Quote Engine inline cards: keep links/buttons visually active inside dark cards. */
.container .send-shell a.button-link,
.container .edit-shell a.button-link,
.container .option-card a.button-link {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}


/* =========================================================
   QUOTE ENGINE
   Quote Dashboard / New Quote / Edit / Preview / Send Workflow

   Moved out of dashboard/tabs/quote_engine/page.py so visual
   editing stays centralized in sms_command_center.css.

   Note: QUOTE_PRINT_PAGE keeps standalone print CSS in page.py so
   clean print/PDF output works independently of the app shell.
   ========================================================= */

/* ---- Quote Engine page styles moved from page.py ---- */
.qe-tabs { display:flex; gap:10px; margin: -6px 0 24px; flex-wrap:wrap; }
        .qe-tab { padding:10px 16px; border-radius:12px; border:1px solid rgba(125,202,255,.55); background:rgba(255,255,255,.06); color:inherit; text-decoration:none; font-weight:900; }
        .qe-tab.active { background:linear-gradient(135deg,rgba(13,104,155,.95),rgba(38,149,193,.95)); color:#fff; border-color:transparent; }
        .option-card { background:rgba(255,255,255,.055); border:1px solid rgba(125,202,255,.45); border-radius:18px; padding:18px; margin:18px 0; }
        .section-note { border:1px solid rgba(251,191,36,.7); border-left:5px solid #f59e0b; border-radius:10px; padding:10px 12px; margin:10px 0; background:rgba(251,191,36,.10); }
        .quote-grid { display:grid; grid-template-columns:repeat(4, minmax(160px, 1fr)); gap:14px; align-items:end; }
        .quote-grid-2 { grid-column:span 2; }
        .quote-grid-4 { grid-column:span 4; }
        .item-row-grid { display:grid; grid-template-columns:minmax(120px,.45fr) minmax(260px,1fr) minmax(90px,.25fr); gap:12px; align-items:end; margin-bottom:10px; }
        .rate-table { width:100%; border-collapse:collapse; margin-top:12px; }
        .rate-table th, .rate-table td { padding:10px; border-bottom:1px solid rgba(125,202,255,.25); vertical-align:top; }
        .rate-table th { text-align:left; background:rgba(14,116,144,.35); }
        .small-muted { font-size:12px; opacity:.78; }
        .pill { display:inline-flex; align-items:center; border:1px solid rgba(125,202,255,.4); border-radius:999px; padding:5px 10px; font-weight:900; background:rgba(255,255,255,.06); }
        .status-Draft { color:#93c5fd; }
        .status-Ready { color:#22c55e; }
        .status-Sent { color:#a78bfa; }
        .status-Submitted { color:#22c55e; }
        .status-Printed { color:#fbbf24; }
        .status-Emailed { color:#a78bfa; }
        .action-row { display:flex; gap:10px; flex-wrap:wrap; margin-top:14px; }
        .button-quiet { background:linear-gradient(135deg,#0B5E8E,#2695C1) !important; color:#fff !important; opacity:1 !important; }
        .button-secondary-link { background:linear-gradient(135deg,#0B5E8E,#2695C1) !important; color:#fff !important; opacity:1 !important; }
        .button-secondary-link:hover, .button-quiet:hover { filter:brightness(1.08); }
        .edit-select-note { margin-top:-7px; margin-bottom:12px; color:#94a3b8; font-size:12px; }

        .quote-preview-shell { max-width:980px; margin-top:16px; }
        .quote-preview { background:#fff; color:#111827 !important; border-radius:14px; padding:30px 42px 36px; margin-top:16px; max-width:920px; box-shadow:0 18px 48px rgba(0,0,0,.20); font-family:Arial, Helvetica, sans-serif; }
        .quote-preview, .quote-preview * { color:#111827 !important; -webkit-text-fill-color:initial !important; opacity:1 !important; visibility:visible !important; box-sizing:border-box; }
        .sms-template-header { display:grid; grid-template-columns:1fr .72fr; align-items:start; gap:24px; border-bottom:1px solid #d5dbe3; padding-bottom:10px; }
        .sms-template-logo { width:210px; max-height:58px; object-fit:contain; display:block; }
        .sms-template-meta { text-align:right; color:#444 !important; }
        .sms-template-quote-no { font-size:20px; font-weight:900; color:#666 !important; line-height:1.1; }
        .sms-template-date { font-size:12px; color:#666 !important; margin-top:4px; }
        .sms-thank-you { text-align:center; color:#777 !important; font-size:13px; font-style:italic; line-height:1.35; padding:12px 30px; border-bottom:1px solid #e2e8f0; }
        .sms-info-grid { display:grid; grid-template-columns:1fr 1fr; gap:42px; padding:13px 8px 16px; }
        .sms-info-block { font-size:12px; line-height:1.22; }
        .sms-info-block strong, .sms-info-label { font-weight:900; color:#111827 !important; }
        .sms-info-section { margin-bottom:6px; }
        .sms-products-table { width:100%; border-collapse:collapse; margin-top:24px; font-size:11px; table-layout:fixed; }
        .sms-products-table th { font-size:8px; color:#111827 !important; background:#fff !important; border-bottom:1px solid #d1d5db; padding:3px 4px; text-align:right; }
        .sms-products-table th.product-head { text-align:left; }
        .sms-products-table td { vertical-align:top; padding:8px 5px; border-bottom:1px solid #e5e7eb; color:#111827 !important; background:#fff !important; }
        .sms-product-cell { width:64%; }
        .sms-unit-cell { width:13%; text-align:right; white-space:nowrap; }
        .sms-qty-cell { width:8%; text-align:center; white-space:nowrap; }
        .sms-extended-cell { width:15%; text-align:right; white-space:nowrap; }
        .sms-product-wrap { display:grid; grid-template-columns:64px 1fr; gap:9px; align-items:start; }
        .sms-product-img { width:58px; max-height:58px; object-fit:contain; border:0; display:block; }
        .sms-product-title { color:#2b78a6 !important; font-weight:900; line-height:1.18; font-size:12px; }
        .sms-product-sku { color:#111827 !important; font-weight:800; font-size:10px; margin-top:2px; }
        .sms-product-extra { font-size:10px; color:#555 !important; margin-top:2px; }
        .sms-summary-table { width:100%; border-collapse:collapse; margin-top:14px; font-size:11px; }
        .sms-summary-table td { padding:3px 5px; color:#111827 !important; }
        .sms-summary-label { text-align:right; font-weight:800; border-top:1px solid #111; }
        .sms-summary-dollar { width:20px; text-align:center; border-top:1px solid #111; }
        .sms-summary-value { width:110px; text-align:right; border-top:1px solid #111; }
        .sms-total-row td { font-size:14px; font-style:italic; font-weight:950; background:#f3f4f6 !important; border-top:1px solid #111; border-bottom:1px solid #111; }
        .sms-checkout-row { text-align:right; padding:22px 2px 18px; border-bottom:1px solid #e5e7eb; }
        .sms-checkout-button { display:inline-block; background:#d94242; color:#fff !important; -webkit-text-fill-color:#fff !important; padding:18px 34px; border-radius:3px; font-weight:900; font-size:18px; text-decoration:none; }
        .sms-footer-bullets { margin:14px 42px 16px; color:#666 !important; font-size:12px; line-height:1.24; }
        .sms-footer-bullets li { margin:2px 0; color:#666 !important; }
        .sms-footer-contact { color:#88b7d6 !important; text-decoration:underline; }
        .sms-footer-brand { border-top:1px solid #e5e7eb; margin-top:20px; padding-top:12px; text-align:center; color:#8a8a8a !important; font-size:12px; font-weight:700; }
        .screen-only-note { margin-top:10px; color:#94a3b8 !important; font-size:12px; }


        /* Phase 2A quote edit screen */
        .edit-shell { display:grid; grid-template-columns:minmax(0, 1.6fr) minmax(320px, .75fr); gap:16px; align-items:start; }
        .edit-card { background:rgba(255,255,255,.055); border:1px solid rgba(125,202,255,.45); border-radius:18px; padding:18px; margin:0 0 16px; }
        .edit-card h2, .edit-card h3 { margin-top:0; }
        .edit-grid { display:grid; grid-template-columns:repeat(4, minmax(150px,1fr)); gap:12px; align-items:end; }
        .edit-grid-2 { grid-column:span 2; }
        .edit-grid-4 { grid-column:span 4; }
        .edit-table-wrap { overflow-x:visible; border-radius:14px; border:1px solid rgba(125,202,255,.28); }
        .edit-line-table { width:100%; min-width:0; table-layout:fixed; border-collapse:collapse; font-size:13px; }
        .edit-line-items-full { width:100%; }
        .edit-line-table th:nth-child(1), .edit-line-table td:nth-child(1) { width:42px; }
        .edit-line-table th:nth-child(2), .edit-line-table td:nth-child(2) { width:82px; }
        .edit-line-table th:nth-child(3), .edit-line-table td:nth-child(3) { width:170px; }
        .edit-line-table th:nth-child(4), .edit-line-table td:nth-child(4) { width:auto; }
        .edit-line-table th:nth-child(5), .edit-line-table td:nth-child(5) { width:76px; }
        .edit-line-table th:nth-child(6), .edit-line-table td:nth-child(6) { width:96px; }
        .edit-line-table th:nth-child(7), .edit-line-table td:nth-child(7) { width:110px; }
        .edit-line-table th:nth-child(8), .edit-line-table td:nth-child(8) { width:98px; }
        .edit-line-table th:nth-child(9), .edit-line-table td:nth-child(9) { width:110px; }
        .edit-line-table th:nth-child(10), .edit-line-table td:nth-child(10) { width:82px; }
        .edit-line-table td, .edit-line-table th { overflow:hidden; }
        .edit-line-table input, .edit-line-table textarea { max-width:100%; }
        /* Live quote edit totals */
        .edit-line-table .cost-col,
        .edit-line-table th.cost-col {
            display: none !important;
        }
        .edit-line-total-display {
            color: #ffffff !important;
            font-weight: 900 !important;
            white-space: nowrap !important;
        }
        .edit-line-remove-btn {
            padding:7px 10px !important;
            border-radius:8px !important;
            border:1px solid rgba(248,113,113,.85) !important;
            background:rgba(239,68,68,.18) !important;
            color:#fecaca !important;
            font-size:12px !important;
            font-weight:900 !important;
            cursor:pointer !important;
        }
        .edit-line-remove-btn:hover { background:rgba(239,68,68,.32) !important; color:#fff !important; }
        .edit-summary-row strong.live-total-value {
            color: #ffffff !important;
        }

        .edit-no-image-box { color:#94a3b8; font-size:12px; }
        .edit-line-table input[name^="item_name_"] { min-width:100%; }
        .edit-line-table th { background:rgba(14,116,144,.42); color:#fff; padding:9px 8px; text-align:left; white-space:nowrap; }
        .edit-line-table td { padding:8px; border-bottom:1px solid rgba(125,202,255,.18); vertical-align:top; }
        .edit-line-table input, .edit-line-table textarea { margin-bottom:0; font-size:13px; padding:9px; }
        .edit-line-table textarea { min-height:54px; resize:vertical; }
        .edit-num { text-align:right; }
        .edit-small { color:#94a3b8; font-size:12px; line-height:1.35; }
        .edit-summary-row { display:flex; justify-content:space-between; gap:12px; padding:8px 0; border-bottom:1px solid rgba(125,202,255,.2); }
        .edit-summary-row strong { font-size:18px; }
        .edit-toolbar { display:flex; flex-wrap:wrap; gap:10px; margin-top:12px; }
        .edit-danger { color:#fecaca; font-weight:800; }
        .edit-section-title { display:flex; justify-content:space-between; align-items:center; gap:12px; }
        @media (max-width: 1150px) {
            .edit-shell { grid-template-columns:1fr; }
            .edit-grid { grid-template-columns:1fr 1fr; }
            .edit-grid-2, .edit-grid-4 { grid-column:span 2; }
        }
        @media (max-width: 720px) {
            .edit-grid { grid-template-columns:1fr; }
            .edit-grid-2, .edit-grid-4 { grid-column:span 1; }
        }


        /* Phase 2B send workflow */
        .send-shell { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(340px,.85fr); gap:16px; align-items:start; }
        .send-card { background:rgba(255,255,255,.055); border:1px solid rgba(125,202,255,.45); border-radius:18px; padding:18px; margin:0 0 16px; }
        .send-card h2, .send-card h3 { margin-top:0; }
        .send-grid { display:grid; grid-template-columns:repeat(2,minmax(180px,1fr)); gap:12px; align-items:end; }
        .send-grid-2 { grid-column:span 2; }
        .send-card textarea { min-height:220px; }
        .send-preview-box { border:1px solid rgba(125,202,255,.35); border-radius:14px; padding:14px; background:rgba(255,255,255,.045); white-space:pre-wrap; line-height:1.45; }
        .send-warning { border:1px solid rgba(251,191,36,.7); border-left:5px solid #f59e0b; border-radius:10px; padding:10px 12px; margin:10px 0; background:rgba(251,191,36,.10); }
        .send-success { border:1px solid rgba(34,197,94,.7); border-left:5px solid #22c55e; border-radius:10px; padding:10px 12px; margin:10px 0; background:rgba(34,197,94,.10); }
        .event-list { margin:0; padding:0; list-style:none; }
        .event-list li { border-bottom:1px solid rgba(125,202,255,.18); padding:9px 0; }
        .event-time { color:#94a3b8; font-size:12px; }
        .event-type { font-weight:900; color:#7dd3fc; }
        @media (max-width: 1050px) {
            .send-shell { grid-template-columns:1fr; }
            .send-grid { grid-template-columns:1fr; }
            .send-grid-2 { grid-column:span 1; }
        }

        @media (max-width: 1000px) {
            .quote-grid, .item-row-grid { grid-template-columns:1fr; }
            .quote-grid-2, .quote-grid-4 { grid-column:span 1; }
            .sms-template-header, .sms-info-grid { grid-template-columns:1fr; }
            .sms-template-meta { text-align:left; }
            .sms-thank-you { padding-left:0; padding-right:0; }
        }

        @media print {
            @page { size: letter; margin: 0.45in; }
            html, body { background:#fff !important; color:#111827 !important; margin:0 !important; padding:0 !important; -webkit-print-color-adjust:exact; print-color-adjust:exact; }
            .sms-cc-sidebar, .sms-cc-topbar, .qe-tabs, .option-card, .container > h1, button, .button-link, .screen-only-note { display:none !important; }
            .container { max-width:none !important; width:auto !important; margin:0 !important; padding:0 !important; background:#fff !important; border:0 !important; box-shadow:none !important; }
            .quote-preview { max-width:none !important; width:auto !important; margin:0 !important; padding:0 !important; background:#fff !important; border:0 !important; border-radius:0 !important; box-shadow:none !important; font-size:10.5px !important; }
            .sms-template-logo { width:180px !important; }
            .sms-products-table { font-size:9.5px !important; margin-top:18px !important; }
            .sms-products-table td { padding:5px !important; }
            .sms-product-wrap { grid-template-columns:48px 1fr !important; gap:7px !important; }
            .sms-product-img { width:44px !important; max-height:44px !important; }
            .sms-product-title { font-size:10.5px !important; }
            .sms-checkout-button { padding:12px 24px !important; font-size:14px !important; }
            .sms-footer-bullets { margin-left:38px !important; font-size:10.5px !important; }
        }
/* ---- Quote preview screen fix moved from page.py ---- */
/* Loaded after the shared Command Center CSS from app_tabs().
           This prevents the app shell stylesheet from washing out quote labels,
           unit prices, quantities, extended prices, and totals on the screen view. */
        .quote-preview,
        .quote-preview * {
            opacity: 1 !important;
            visibility: visible !important;
        }

        .quote-preview {
            background: #ffffff !important;
            color: #111827 !important;
            -webkit-text-fill-color: initial !important;
        }

        .quote-preview .sms-info-block,
        .quote-preview .sms-info-block div,
        .quote-preview .sms-info-block span,
        .quote-preview .sms-info-block strong,
        .quote-preview .sms-info-label,
        .quote-preview .sms-info-section,
        .quote-preview .sms-product-title,
        .quote-preview .sms-product-sku,
        .quote-preview .sms-product-extra,
        .quote-preview .sms-products-table,
        .quote-preview .sms-products-table td,
        .quote-preview .sms-products-table td *,
        .quote-preview .sms-summary-table,
        .quote-preview .sms-summary-table td,
        .quote-preview .sms-summary-table td *,
        .quote-preview .sms-footer-bullets,
        .quote-preview .sms-footer-bullets li,
        .quote-preview .sms-footer-contact,
        .quote-preview .sms-footer-contact a {
            color: #111827 !important;
            -webkit-text-fill-color: #111827 !important;
            opacity: 1 !important;
            visibility: visible !important;
        }

        .quote-preview .sms-info-block strong,
        .quote-preview .sms-info-label {
            display: inline !important;
            font-weight: 900 !important;
            color: #111827 !important;
            -webkit-text-fill-color: #111827 !important;
        }

        .quote-preview .sms-info-label {
            display: block !important;
            color: #79c2ff !important;
            -webkit-text-fill-color: #79c2ff !important;
            text-transform: uppercase !important;
            letter-spacing: .04em !important;
        }

        .quote-preview .sms-info-block div {
            text-align: left !important;
            line-height: 1.22 !important;
        }

        .quote-preview .sms-products-table {
            width: 100% !important;
            border-collapse: collapse !important;
            table-layout: fixed !important;
            background: #ffffff !important;
        }

        .quote-preview .sms-products-table th {
            color: #111827 !important;
            -webkit-text-fill-color: #111827 !important;
            background: #ffffff !important;
            opacity: 1 !important;
            visibility: visible !important;
        }

        .quote-preview .sms-products-table td {
            background: #ffffff !important;
            color: #111827 !important;
            -webkit-text-fill-color: #111827 !important;
        }

        .quote-preview .sms-unit-cell,
        .quote-preview .sms-qty-cell,
        .quote-preview .sms-extended-cell,
        .quote-preview td.sms-unit-cell,
        .quote-preview td.sms-qty-cell,
        .quote-preview td.sms-extended-cell {
            color: #111827 !important;
            -webkit-text-fill-color: #111827 !important;
            font-weight: 700 !important;
            opacity: 1 !important;
            visibility: visible !important;
        }

        .quote-preview .sms-unit-cell { width: 13% !important; text-align: right !important; white-space: nowrap !important; }
        .quote-preview .sms-qty-cell { width: 8% !important; text-align: center !important; white-space: nowrap !important; }
        .quote-preview .sms-extended-cell { width: 15% !important; text-align: right !important; white-space: nowrap !important; }

        .quote-preview .sms-summary-label,
        .quote-preview .sms-summary-dollar,
        .quote-preview .sms-summary-value,
        .quote-preview .sms-total-row td {
            color: #111827 !important;
            -webkit-text-fill-color: #111827 !important;
            opacity: 1 !important;
            visibility: visible !important;
        }

        .quote-preview .sms-summary-label {
            font-weight: 900 !important;
            text-align: right !important;
        }

        .quote-preview .sms-summary-value {
            font-weight: 800 !important;
            text-align: right !important;
            white-space: nowrap !important;
        }

        .quote-preview .sms-total-row td {
            background: #f3f4f6 !important;
            font-weight: 950 !important;
        }

        .quote-preview .sms-checkout-button {
            color: #ffffff !important;
            -webkit-text-fill-color: #ffffff !important;
        }

        .quote-preview .sms-thank-you {
            color: #777777 !important;
            -webkit-text-fill-color: #777777 !important;
        }

        .quote-preview .sms-quote-title,
        .quote-preview .sms-quote-date {
            color: #555555 !important;
            -webkit-text-fill-color: #555555 !important;
        }

        @media print {
            .quote-preview .sms-products-table th,
            .quote-preview .sms-products-table td,
            .quote-preview .sms-summary-table td {
                color: #111827 !important;
                -webkit-text-fill-color: #111827 !important;
            }
            .quote-preview .sms-checkout-button {
                color: #ffffff !important;
                -webkit-text-fill-color: #ffffff !important;
            }
        }



/* =========================================================
   QUOTE MANAGER CLOUD REFINEMENTS
   Rep-facing cleanup: white logo, no search bar, centered brand,
   solid buttons/tabs, and medium-solid table headers.
   ========================================================= */
.sms-cc-brand {
    align-items: center;
}

.sms-cc-brand-logo-wrap {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 0 6px 0;
}

.sms-cc-logo-quote-engine {
    width: 214px;
    max-width: 100%;
}

.sms-cc-logo-fallback {
    color: #ffffff;
    font-weight: 950;
    font-size: 18px;
    letter-spacing: -.03em;
    line-height: 1.05;
    text-align: center;
}

.sms-cc-brand-title {
    margin-left: 0;
    width: 100%;
    text-align: center;
}

.sms-cc-topbar.sms-cc-topbar-quote-engine {
    grid-template-columns: 1fr auto auto auto;
}

.sms-cc-topbar-spacer {
    min-width: 0;
}

.sms-cc-user-pill {
    display: flex;
    align-items: center;
    gap: 10px;
    min-width: 170px;
    padding: 7px 14px;
}

.sms-cc-user-display {
    font-weight: 950;
    color: #0f2f4a;
    white-space: nowrap;
}

.sms-cc-store-switcher.sms-cc-user-pill label {
    margin: 0;
}

button,
.button-link,
input[type=submit],
input[type=button] {
    background: var(--sms-light-blue) !important;
    color: var(--sms-dark-blue) !important;
    -webkit-text-fill-color: var(--sms-dark-blue) !important;
    border: 1px solid rgba(126,200,255,.48) !important;
    box-shadow: 0 12px 24px rgba(8,41,68,.18) !important;
}

button:hover,
.button-link:hover,
input[type=submit]:hover,
input[type=button]:hover {
    background: #a5d9ff !important;
    color: var(--sms-dark-blue) !important;
    -webkit-text-fill-color: var(--sms-dark-blue) !important;
    box-shadow: 0 14px 28px rgba(8,41,68,.22) !important;
}

.button-secondary {
    background: var(--sms-medium-blue-3) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.container a.button-link,
.container a.button-link:link,
.container a.button-link:visited,
.container .action-row a.button-link,
.container .edit-toolbar a.button-link,
.container .send-card a.button-link,
.container .quote-preview-shell + .action-row a.button-link {
    background: var(--sms-light-blue) !important;
    border: 1px solid rgba(126,200,255,.48) !important;
    color: var(--sms-dark-blue) !important;
    -webkit-text-fill-color: var(--sms-dark-blue) !important;
    box-shadow: 0 12px 24px rgba(8,41,68,.18) !important;
}

.container a.button-link:hover,
.container .action-row a.button-link:hover,
.container .edit-toolbar a.button-link:hover,
.container .send-card a.button-link:hover {
    background: #a5d9ff !important;
    color: var(--sms-dark-blue) !important;
    -webkit-text-fill-color: var(--sms-dark-blue) !important;
    box-shadow: 0 14px 28px rgba(8,41,68,.22) !important;
}

.container a.button-link.button-quiet,
.container a.button-link.button-secondary,
.container a.button-link.button-secondary-link {
    background: var(--sms-medium-blue-3) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border-color: rgba(126,200,255,.40) !important;
}

.qe-tab {
    background: var(--sms-medium-blue-3) !important;
    color: #ffffff !important;
    border: 1px solid rgba(126,200,255,.40) !important;
}

.qe-tab.active {
    background: var(--sms-light-blue) !important;
    color: var(--sms-dark-blue) !important;
    border-color: rgba(126,200,255,.52) !important;
}

.rate-table th {
    background: var(--sms-medium-blue-3) !important;
    color: #ffffff !important;
}


/* =========================================================
   QUOTE ENGINE CLOUD POLISH PASS 2
   Tighter top area, compact forms, bordered light buttons, and
   add-item row support for quote/shipping line items.
   ========================================================= */
.sms-cc-topbar.sms-cc-topbar-quote-engine {
    min-height: 46px !important;
    height: 46px !important;
    margin: 0 0 14px !important;
    padding: 0 14px !important;
    border-radius: 14px !important;
}

.sms-cc-status-pill {
    min-height: 32px !important;
    height: 32px !important;
    padding: 0 12px !important;
}

.sms-cc-user-pill {
    min-height: 32px !important;
    height: 32px !important;
    padding: 0 13px !important;
}

.container {
    padding-top: 14px !important;
}

.container > h1 {
    margin-top: 4px !important;
    margin-bottom: 14px !important;
}

.qe-tabs {
    margin: -2px 0 18px !important;
}

button,
.button-link,
input[type=submit],
input[type=button],
.container a.button-link,
.container a.button-link:link,
.container a.button-link:visited,
.container .action-row a.button-link,
.container .edit-toolbar a.button-link,
.container .send-card a.button-link,
.container .quote-preview-shell + .action-row a.button-link {
    border: 2px solid var(--sms-medium-blue-3) !important;
}

.qe-tab.active,
button:not(:disabled),
.container a.button-link {
    border-color: var(--sms-medium-blue-3) !important;
}

.qe-tab {
    border: 1px solid rgba(126,200,255,.46) !important;
}

.option-card {
    padding: 16px !important;
    margin: 16px 0 !important;
}

.option-card h2,
.option-card h3 {
    margin-top: 0 !important;
    margin-bottom: 12px !important;
}

.section-note {
    margin: 8px 0 12px !important;
    padding: 9px 12px !important;
}

.quote-grid {
    gap: 11px 14px !important;
}

.quote-grid-3 {
    grid-column: span 3;
}

.qe-settings-daily-report {
    margin-top: 18px !important;
}

.qe-settings-daily-report .qe-daily-report-actions {
    align-items: center !important;
    display: flex !important;
    gap: 12px !important;
}

.qe-settings-daily-report .qe-daily-report-actions .mini-note {
    margin: 0 !important;
}

.item-row-grid {
    gap: 10px 12px !important;
    margin-bottom: 10px !important;
}

.quote-grid label,
.item-row-grid label,
.container label {
    margin-bottom: 6px !important;
}

.quote-grid input,
.quote-grid select,
.item-row-grid input,
.item-row-grid select,
.container textarea {
    min-height: 40px !important;
}

.qe-add-row-action {
    margin: 4px 0 14px !important;
}

.qe-add-row-action button {
    min-height: 38px !important;
    padding: 8px 14px !important;
}

.rate-table th {
    background: var(--sms-medium-blue-3) !important;
}

.sms-shipping-add-row {
    margin-top: 8px !important;
}


/* =========================================================
   QUOTE MANAGER POLISH PASS 3
   Name update, tighter form cards, stronger active-tab border,
   and rep-friendly section bubbles.
   ========================================================= */
.container {
    padding-top: 12px !important;
}

.sms-cc-topbar.sms-cc-topbar-quote-engine {
    min-height: 48px !important;
    height: 48px !important;
    margin-bottom: 16px !important;
}

.container > h1 {
    margin-top: 4px !important;
    margin-bottom: 14px !important;
}

.qe-tabs {
    margin: 0 0 18px !important;
}

.qe-tab,
.qe-tab:link,
.qe-tab:visited {
    border: 1px solid rgba(126,200,255,.58) !important;
}

.qe-tab.active,
.qe-tab.active:link,
.qe-tab.active:visited {
    border: 2px solid var(--sms-medium-blue-3) !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.22), 0 8px 18px rgba(8,41,68,.18) !important;
}

button,
.button-link,
input[type=submit],
input[type=button],
.container a.button-link,
.container a.button-link:link,
.container a.button-link:visited,
.container .action-row a.button-link,
.container .edit-toolbar a.button-link,
.container .send-card a.button-link,
.container .quote-preview-shell + .action-row a.button-link {
    border: 2px solid var(--sms-medium-blue-3) !important;
}

.qe-page-intro {
    margin-bottom: 14px !important;
}

.qe-form-shell {
    display: grid;
    gap: 14px;
    margin: 0 0 18px;
    min-width: 0;
}

.qe-form-section {
    position: relative;
    overflow: hidden;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
    background: linear-gradient(145deg, var(--sms-medium-blue) 0%, var(--sms-medium-blue-2) 100%) !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-radius: 18px !important;
    color: var(--sms-white) !important;
    box-shadow: var(--sms-card-shadow) !important;
    padding: 16px 18px 18px !important;
}

.qe-form-section::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 0;
    height: 3px;
    border-radius: 999px 999px 0 0;
    background: linear-gradient(90deg, var(--brand-accent), var(--sms-light-blue), var(--sms-line-blue));
    pointer-events: none;
}

.qe-form-section h3 {
    margin: 0 0 12px !important;
    color: var(--sms-white) !important;
}

.qe-form-section label {
    display: block;
    margin-bottom: 5px !important;
    line-height: 1.15 !important;
}

.qe-form-section input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.qe-form-section select,
.qe-form-section textarea {
    min-height: 40px !important;
    height: 40px !important;
    width: 100% !important;
    box-sizing: border-box;
    display: block;
    margin-bottom: 8px !important;
    padding: 8px 12px !important;
    border-radius: 9px !important;
    font-size: 14px !important;
}

.qe-form-section textarea {
    height: 82px !important;
    min-height: 82px !important;
}

.qe-form-section .quote-grid {
    gap: 10px 14px !important;
    min-width: 0;
}

.qe-form-section .quote-grid > * {
    min-width: 0;
}

.qe-form-section .table-wrap {
    min-width: 0;
    max-width: 100%;
    overflow-x: auto;
}

.qe-form-section .item-row-grid {
    gap: 10px 12px !important;
    margin-bottom: 8px !important;
}

.qe-section-heading-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 8px;
}

.qe-section-heading-row h3 {
    margin: 0 !important;
}

.qe-inline-add-button {
    min-height: 34px !important;
    padding: 7px 14px !important;
    margin: 0 !important;
}

.qe-submit-section {
    display: flex;
    justify-content: flex-start;
}

.qe-submit-section button {
    min-height: 42px !important;
}

.shipping-rates-page .option-card,
.shipping-rates-page .qe-form-section {
    max-width: none;
}

/* =========================================================
   SHIPPING RATES SKU-FIRST POLISH
   ========================================================= */
.shipping-rates-page .shipping-sku-grid {
    display: grid !important;
    grid-template-columns: minmax(260px, .95fr) minmax(420px, 1.8fr) minmax(110px, .35fr) !important;
    gap: 12px !important;
    align-items: end !important;
}

.shipping-rates-page .shipping-item-card {
    margin-bottom: 12px !important;
}

.shipping-rates-page .shipping-title-input[readonly] {
    background: linear-gradient(180deg, #f8fbff 0%, #edf6ff 100%) !important;
    color: #0f2f4a !important;
    -webkit-text-fill-color: #0f2f4a !important;
}

.shipping-rates-page .shipping-zip-grid {
    grid-template-columns: minmax(180px, .65fr) minmax(160px, .55fr) minmax(190px, .65fr) minmax(0, 1fr) !important;
}

.shipping-rates-page .shipping-optional-address {
    margin-top: 12px !important;
    padding: 0 !important;
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
}

.shipping-rates-page .shipping-optional-address::after {
    display: none !important;
}

.shipping-rates-page .shipping-optional-address summary {
    cursor: pointer !important;
    display: inline-flex !important;
    align-items: center !important;
    min-height: 36px !important;
    padding: 8px 12px !important;
    border-radius: 10px !important;
    background: var(--sms-medium-blue-3) !important;
    border: 1px solid rgba(126,200,255,.40) !important;
    color: #ffffff !important;
    font-weight: 900 !important;
}

.qe-tab.active {
    border: 2px solid var(--sms-medium-blue-3) !important;
}

@media (max-width: 1000px) {
    .shipping-rates-page .shipping-sku-grid,
    .shipping-rates-page .shipping-zip-grid {
        grid-template-columns: 1fr !important;
    }
}


/* =========================================================
   QUOTE MANAGER LINE ITEM BUTTON POLISH
   Add Item stays light-blue with medium border. Delete clears and hides rows.
   ========================================================= */
.qe-inline-add-button,
button.qe-inline-add-button {
    background: var(--sms-light-blue) !important;
    color: var(--sms-dark-blue) !important;
    -webkit-text-fill-color: var(--sms-dark-blue) !important;
    border: 2px solid var(--sms-medium-blue-3) !important;
    box-shadow: 0 10px 20px rgba(8,41,68,.18) !important;
    font-weight: 950 !important;
}

.qe-inline-add-button:hover,
button.qe-inline-add-button:hover {
    background: #a5d9ff !important;
    color: var(--sms-dark-blue) !important;
    -webkit-text-fill-color: var(--sms-dark-blue) !important;
}

.qe-delete-cell {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.qe-delete-line-button,
button.qe-delete-line-button {
    min-height: 40px !important;
    padding: 8px 12px !important;
    margin: 0 !important;
    border-radius: 10px !important;
    background: var(--sms-medium-blue-3) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border: 1px solid rgba(126,200,255,.48) !important;
    box-shadow: none !important;
    font-weight: 900 !important;
}

.qe-delete-line-button:hover,
button.qe-delete-line-button:hover {
    background: #23577f !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.qe-delete-line-button:disabled,
button.qe-delete-line-button:disabled {
    opacity: .35 !important;
    cursor: not-allowed !important;
}

.qe-form-section .item-row-grid {
    grid-template-columns: minmax(150px, .5fr) minmax(260px, 1fr) minmax(90px, .25fr) minmax(88px, .22fr) !important;
}

.shipping-rates-page .shipping-sku-grid {
    grid-template-columns: minmax(260px, .95fr) minmax(420px, 1.8fr) minmax(110px, .35fr) minmax(88px, .22fr) !important;
}

@media (max-width: 1000px) {
    .qe-form-section .item-row-grid,
    .shipping-rates-page .shipping-sku-grid {
        grid-template-columns: 1fr !important;
    }
}


/* =========================================================
   SHIPPING RATES SKU DROPDOWN + DYNAMIC ROW FIX
   Starts with one row, adds rows on demand, and shows SKU-only menu.
   ========================================================= */
.shipping-rates-page .shipping-sku-field {
    position: relative !important;
}

.shipping-rates-page .shipping-sku-menu {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    top: calc(100% + 6px);
    z-index: 10050;
    max-height: 265px;
    overflow-y: auto;
    background: #ffffff;
    border: 1px solid rgba(126,200,255,.72);
    border-radius: 12px;
    box-shadow: 0 18px 42px rgba(8,41,68,.30);
    padding: 6px;
}

.shipping-rates-page .shipping-sku-menu.open {
    display: block;
}

.shipping-rates-page .shipping-sku-menu-item,
.shipping-rates-page button.shipping-sku-menu-item {
    display: block !important;
    width: 100% !important;
    min-height: 34px !important;
    margin: 0 !important;
    padding: 8px 10px !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: #ffffff !important;
    box-shadow: none !important;
    color: var(--sms-field-text) !important;
    -webkit-text-fill-color: var(--sms-field-text) !important;
    text-align: left !important;
    font-size: 13px !important;
    font-weight: 850 !important;
    line-height: 1.2 !important;
    cursor: pointer !important;
}

.shipping-rates-page .shipping-sku-menu-item:hover,
.shipping-rates-page button.shipping-sku-menu-item:hover {
    background: #edf6ff !important;
    color: var(--sms-dark-blue) !important;
    -webkit-text-fill-color: var(--sms-dark-blue) !important;
    transform: none !important;
}

.qe-delete-cell-empty {
    visibility: hidden !important;
    pointer-events: none !important;
}

.qe-inline-add-button,
button.qe-inline-add-button {
    border: 2px solid var(--sms-medium-blue-3) !important;
}


/* =========================================================
   QUOTE MANAGER SHIPPING DROPDOWN VISIBILITY FIX
   Keeps SKU suggestions from being clipped by dark card overflow.
   ========================================================= */
.shipping-rates-page .qe-form-shell,
.shipping-rates-page .qe-form-section,
.shipping-rates-page #shippingRateItems,
.shipping-rates-page .shipping-item-card,
.shipping-rates-page .shipping-sku-grid,
.shipping-rates-page .shipping-sku-field-wrap,
.shipping-rates-page .shipping-sku-field {
    overflow: visible !important;
}

.shipping-rates-page .qe-form-section:first-of-type {
    z-index: 40 !important;
}

.shipping-rates-page .shipping-sku-field-wrap {
    position: relative !important;
    z-index: 60 !important;
}

.shipping-rates-page .shipping-sku-field-wrap:focus-within {
    z-index: 5000 !important;
}

.shipping-rates-page .shipping-sku-menu {
    z-index: 99999 !important;
    min-height: 0 !important;
    max-height: 320px !important;
    overflow-y: auto !important;
    overscroll-behavior: contain !important;
}

/* Top-right signed-in pill alignment cleanup. */
.sms-cc-topbar.sms-cc-topbar-quote-engine {
    align-items: center !important;
}

.sms-cc-user-pill {
    min-height: 38px !important;
    height: 38px !important;
    box-sizing: border-box !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 12px !important;
    padding: 0 16px !important;
}

.sms-cc-user-pill label {
    line-height: 1 !important;
}

.sms-cc-user-display {
    display: inline-flex !important;
    align-items: center !important;
    line-height: 1 !important;
}

.sms-qm-store-select-form {
    display: block !important;
    float: right;
    position: static !important;
    width: 190px !important;
    max-width: 100%;
    min-height: 0 !important;
    margin: 0 0 8px 16px !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

.sms-qm-store-select-form select {
    width: 100% !important;
    min-height: 38px;
    margin: 0 !important;
    padding: 4px 28px 4px 8px !important;
    border-radius: 8px !important;
}

/* =========================================================
   QUOTE MANAGER NEW QUOTE SKU LOOKUP + TBD SHIPPING
   Aligns New Quote line items with the Shipping Rates SKU/title pattern.
   ========================================================= */
.qe-form-section {
    overflow: visible !important;
}

#qeQuoteItems .item-row-grid,
#qeQuoteItems .qe-line-item-row {
    display: grid !important;
    grid-template-columns: minmax(240px, .8fr) minmax(420px, 1.5fr) minmax(90px, .25fr) minmax(96px, .22fr) !important;
    gap: 12px !important;
    align-items: end !important;
    margin-bottom: 10px !important;
    position: relative !important;
    overflow: visible !important;
}

#qeQuoteItems .shipping-sku-field-wrap,
#qeQuoteItems .shipping-sku-field {
    position: relative !important;
    overflow: visible !important;
}

#qeQuoteItems .shipping-sku-menu {
    position: absolute !important;
    left: 0 !important;
    top: calc(100% + 6px) !important;
    width: 100% !important;
    max-height: 320px !important;
    overflow-y: auto !important;
    display: none !important;
    z-index: 2147483000 !important;
    background: #ffffff !important;
    color: #0f172a !important;
    border: 1px solid rgba(126,200,255,.70) !important;
    border-radius: 12px !important;
    box-shadow: 0 22px 46px rgba(0,0,0,.28) !important;
}

#qeQuoteItems .shipping-sku-menu.open {
    display: block !important;
}

#qeQuoteItems .shipping-sku-menu-item,
#qeQuoteItems button.shipping-sku-menu-item {
    display: block !important;
    width: 100% !important;
    min-height: 34px !important;
    padding: 8px 12px !important;
    margin: 0 !important;
    border: 0 !important;
    border-bottom: 1px solid #e5edf5 !important;
    border-radius: 0 !important;
    background: #ffffff !important;
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
    box-shadow: none !important;
    text-align: left !important;
    font-size: 13px !important;
    font-weight: 850 !important;
    line-height: 1.25 !important;
}

#qeQuoteItems .shipping-sku-menu-item:hover,
#qeQuoteItems button.shipping-sku-menu-item:hover {
    background: #e8f5ff !important;
    color: #082944 !important;
    -webkit-text-fill-color: #082944 !important;
    transform: none !important;
}

#qeQuoteItems .qe-delete-line-button:not(:disabled) {
    background: var(--sms-medium-blue-3) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border: 1px solid rgba(126,200,255,.45) !important;
}

@media (max-width: 1000px) {
    #qeQuoteItems .item-row-grid,
    #qeQuoteItems .qe-line-item-row {
        grid-template-columns: 1fr !important;
    }
}

/* =========================================================
   QUOTE MANAGER HIDDEN ROW FIX
   Keep pre-rendered line item rows hidden until Add Item is clicked.
   Earlier grid !important rules overrode the hidden/style attributes.
   ========================================================= */
#qeQuoteItems .qe-line-item-row[hidden],
#qeQuoteItems .item-row-grid[hidden],
.shipping-rates-page .shipping-line-item-row[hidden],
.shipping-rates-page .shipping-sku-grid[hidden] {
    display: none !important;
}

/* =========================================================
   QUOTE MANAGER CLOUD IMPORT + ACTION BUTTON POLISH
   2026-05-27
   ========================================================= */
.qe-action-toolbar,
.container .action-row {
    align-items: center !important;
}

.qe-action-button,
.container .edit-toolbar .qe-action-button,
.container .action-row .qe-action-button,
.container a.qe-action-button,
.container a.qe-action-button:link,
.container a.qe-action-button:visited {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 42px !important;
    padding: 10px 16px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(126,200,255,.58) !important;
    background: rgba(255,255,255,.06) !important;
    color: var(--sms-light-blue) !important;
    -webkit-text-fill-color: var(--sms-light-blue) !important;
    text-decoration: none !important;
    font-weight: 900 !important;
    line-height: 1.15 !important;
    box-shadow: none !important;
    cursor: pointer !important;
}

.qe-action-button:hover,
.container .edit-toolbar .qe-action-button:hover,
.container .action-row .qe-action-button:hover,
.container a.qe-action-button:hover {
    background: rgba(125,202,255,.16) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    transform: translateY(-1px);
}

.qe-danger-button,
.container .edit-toolbar .qe-danger-button,
.container .action-row .qe-danger-button {
    border-color: rgba(248,113,113,.70) !important;
    color: #fecaca !important;
    -webkit-text-fill-color: #fecaca !important;
}

.qe-danger-button:hover,
.container .edit-toolbar .qe-danger-button:hover,
.container .action-row .qe-danger-button:hover {
    background: rgba(185,28,28,.32) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.qe-inline-delete-form {
    display: inline-flex;
    margin: 0;
}

.import-action-grid {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    align-items: center;
    margin-top: 14px;
}

.import-action-grid form {
    margin: 0;
}

.import-action-grid button {
    min-height: 42px !important;
    border-radius: 12px !important;
    border: 1px solid rgba(126,200,255,.58) !important;
    background: rgba(255,255,255,.06) !important;
    color: var(--sms-light-blue) !important;
    -webkit-text-fill-color: var(--sms-light-blue) !important;
    font-weight: 900 !important;
    box-shadow: none !important;
}

.import-action-grid button:hover {
    background: rgba(125,202,255,.16) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}


/* =========================================================
   QUOTE MANAGER ACTION BUTTON SIZE FIX
   Keep edit toolbar buttons consistent with top tab button sizing.
   ========================================================= */
.qe-action-toolbar {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 16px !important;
    align-items: center !important;
}

.qe-action-toolbar .qe-action-button,
.qe-action-toolbar a.qe-action-button,
.qe-action-toolbar button.qe-action-button,
.container .edit-toolbar .qe-action-button,
.container .edit-toolbar a.qe-action-button,
.container .edit-toolbar button.qe-action-button {
    width: auto !important;
    min-width: 118px !important;
    max-width: none !important;
    min-height: 42px !important;
    height: 42px !important;
    padding: 10px 16px !important;
    margin: 0 !important;
    font-size: 15px !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
    flex: 0 0 auto !important;
}

.qe-action-toolbar .qe-danger-button,
.container .edit-toolbar .qe-danger-button {
    min-width: 130px !important;
}

/* =========================================================
   QUOTE MANAGER B2B IMPORT POLISH PASS
   - Compact edit toolbar action buttons
   - Overview now includes assigned rep and time-to-send columns
   ========================================================= */
.qe-action-toolbar .qe-action-button,
.qe-action-toolbar a.qe-action-button,
.qe-action-toolbar button.qe-action-button,
.container .edit-toolbar .qe-action-button,
.container .edit-toolbar a.qe-action-button,
.container .edit-toolbar button.qe-action-button {
    min-width: 116px !important;
    width: auto !important;
    height: 42px !important;
    min-height: 42px !important;
    padding: 8px 14px !important;
    font-size: 14px !important;
    line-height: 1 !important;
    border-radius: 12px !important;
}

.qe-action-toolbar a.qe-action-button[href*="/send"],
.qe-action-toolbar a.qe-action-button[href$="?store_key=SMS"],
.qe-action-toolbar a.qe-action-button[href*="/quote-engine?"] {
    min-width: 116px !important;
}

.qe-action-toolbar .qe-danger-button,
.container .edit-toolbar .qe-danger-button {
    min-width: 126px !important;
}

.qe-overview-table {
    table-layout: auto !important;
    width: 100% !important;
}

.qe-overview-table th,
.qe-overview-table td {
    padding: 9px 8px !important;
    font-size: 14px !important;
}

.qe-overview-table th:nth-child(1),
.qe-overview-table td:nth-child(1) { width: 12%; }
.qe-overview-table th:nth-child(2),
.qe-overview-table td:nth-child(2) { width: 7%; }
.qe-overview-table th:nth-child(3),
.qe-overview-table td:nth-child(3) { width: 12%; }
.qe-overview-table th:nth-child(4),
.qe-overview-table td:nth-child(4) { width: 12%; }
.qe-overview-table th:nth-child(5),
.qe-overview-table td:nth-child(5) { width: 13%; }
.qe-overview-table th:nth-child(6),
.qe-overview-table td:nth-child(6) { width: 11%; }
.qe-overview-table th:nth-child(7),
.qe-overview-table td:nth-child(7) { width: 12%; }
.qe-overview-table th:nth-child(8),
.qe-overview-table td:nth-child(8) { width: 8%; white-space: nowrap; }
.qe-overview-table th:nth-child(9),
.qe-overview-table td:nth-child(9),
.qe-overview-table th:nth-child(10),
.qe-overview-table td:nth-child(10),
.qe-overview-table th:nth-child(11),
.qe-overview-table td:nth-child(11) { width: 7%; white-space: nowrap; }


/* =========================================================
   QUOTE MANAGER EDIT TOOLBAR FINAL SIZE OVERRIDE
   2026-05-27
   Keeps edit-page action buttons compact like the top quote tabs.
   ========================================================= */
.container .option-card .edit-toolbar.qe-action-toolbar {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 14px !important;
    align-items: center !important;
}

.container .option-card .edit-toolbar.qe-action-toolbar > .qe-action-button,
.container .option-card .edit-toolbar.qe-action-toolbar > a.qe-action-button,
.container .option-card .edit-toolbar.qe-action-toolbar > button.qe-action-button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    min-width: 118px !important;
    height: 42px !important;
    min-height: 42px !important;
    padding: 9px 16px !important;
    margin: 0 !important;
    border-radius: 12px !important;
    border: 1px solid rgba(126,200,255,.58) !important;
    background: rgba(255,255,255,.06) !important;
    color: var(--sms-light-blue) !important;
    -webkit-text-fill-color: var(--sms-light-blue) !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

.container .option-card .edit-toolbar.qe-action-toolbar > .qe-action-button:hover,
.container .option-card .edit-toolbar.qe-action-toolbar > a.qe-action-button:hover,
.container .option-card .edit-toolbar.qe-action-toolbar > button.qe-action-button:hover {
    background: rgba(125,202,255,.16) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    box-shadow: none !important;
}

.container .option-card .edit-toolbar.qe-action-toolbar > .qe-danger-button,
.container .option-card .edit-toolbar.qe-action-toolbar > button.qe-danger-button {
    min-width: 126px !important;
    border-color: rgba(248,113,113,.70) !important;
    color: #fecaca !important;
    -webkit-text-fill-color: #fecaca !important;
}


/* =========================================================
   QUOTE MANAGER STATUS + RESPONSE TIME POLISH
   2026-05-27
   ========================================================= */
.container .pill.status-New,
.container .qe-overview-table .pill.status-New {
    color: #fecaca !important;
    -webkit-text-fill-color: #fecaca !important;
    border-color: rgba(239,68,68,.70) !important;
    background: rgba(239,68,68,.22) !important;
}
.container .pill.status-Printed,
.container .qe-overview-table .pill.status-Printed {
    color: #fbbf24 !important;
    -webkit-text-fill-color: #fbbf24 !important;
    border-color: rgba(251,191,36,.65) !important;
    background: rgba(251,191,36,.18) !important;
}
.container .pill.status-Sent,
.container .qe-overview-table .pill.status-Sent {
    color: #c4b5fd !important;
    -webkit-text-fill-color: #c4b5fd !important;
    border-color: rgba(167,139,250,.62) !important;
    background: rgba(124,58,237,.18) !important;
}
.container .pill.status-Purchased,
.container .pill.status-Ordered,
.container .qe-overview-table .pill.status-Purchased,
.container .qe-overview-table .pill.status-Ordered {
    color: #bbf7d0 !important;
    -webkit-text-fill-color: #bbf7d0 !important;
    border-color: rgba(34,197,94,.72) !important;
    background: rgba(34,197,94,.22) !important;
}
.container .pill.status-Rejected,
.container .pill.status-Expired,
.container .qe-overview-table .pill.status-Rejected,
.container .qe-overview-table .pill.status-Expired {
    color: #fecaca !important;
    -webkit-text-fill-color: #fecaca !important;
    border-color: rgba(239,68,68,.52) !important;
    background: rgba(239,68,68,.16) !important;
}
.container .pill.status-Archived,
.container .qe-overview-table .pill.status-Archived {
    color: #d1d5db !important;
    -webkit-text-fill-color: #d1d5db !important;
    border-color: rgba(148,163,184,.45) !important;
    background: rgba(148,163,184,.14) !important;
}
.container .qe-time-to-send {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 58px !important;
    padding: 4px 8px !important;
    border-radius: 999px !important;
    font-weight: 900 !important;
    font-size: 13px !important;
    border: 1px solid rgba(148,163,184,.32) !important;
}
.container .qe-time-to-send.response-ok {
    color: #bbf7d0 !important;
    -webkit-text-fill-color: #bbf7d0 !important;
    background: rgba(34,197,94,.20) !important;
    border-color: rgba(34,197,94,.58) !important;
}
.container .qe-time-to-send.response-late {
    color: #fecaca !important;
    -webkit-text-fill-color: #fecaca !important;
    background: rgba(239,68,68,.20) !important;
    border-color: rgba(239,68,68,.58) !important;
}
.container .qe-time-to-send.response-missing,
.container .qe-time-to-send:empty {
    display: none !important;
}

/* Quote Manager attribution dashboard polish - 2026-07-09 */
.container .qe-dashboard-hero .qe-summary-card-total {
    grid-column: span 2 !important;
    min-height: 94px !important;
}
.container .qe-dashboard-hero .qe-summary-card-total .qe-summary-value {
    font-size: clamp(30px, 2.4vw, 38px) !important;
    letter-spacing: 0 !important;
    white-space: nowrap !important;
}
.container .qe-dashboard-hero .qe-summary-card-total .qe-summary-sub {
    max-width: 94% !important;
}
.container .pill.status-Sold,
.container .qe-overview-table .pill.status-Sold {
    color: #bbf7d0 !important;
    -webkit-text-fill-color: #bbf7d0 !important;
    background: rgba(34,197,94,.22) !important;
    border-color: rgba(34,197,94,.62) !important;
}
.container .qe-time-to-send.success {
    color: #bbf7d0 !important;
    -webkit-text-fill-color: #bbf7d0 !important;
    background: rgba(34,197,94,.20) !important;
    border-color: rgba(34,197,94,.58) !important;
}
.container .qe-time-to-send.warning {
    color: #fde68a !important;
    -webkit-text-fill-color: #fde68a !important;
    background: rgba(245,158,11,.20) !important;
    border-color: rgba(245,158,11,.58) !important;
}
.container .qe-time-to-send.pending {
    color: #dbeafe !important;
    -webkit-text-fill-color: #dbeafe !important;
    background: rgba(125,202,255,.12) !important;
    border-color: rgba(125,202,255,.35) !important;
}
.container .qe-time-to-send.error {
    color: #fecaca !important;
    -webkit-text-fill-color: #fecaca !important;
    background: rgba(239,68,68,.18) !important;
    border-color: rgba(239,68,68,.48) !important;
}
.container .qe-attribution-table {
    table-layout: fixed !important;
}
.container .qe-attribution-table th,
.container .qe-attribution-table td {
    font-size: 13px !important;
    vertical-align: top !important;
    overflow-wrap: anywhere !important;
}
.container .qe-attribution-table th:nth-child(1),
.container .qe-attribution-table td:nth-child(1) { width: 6% !important; }
.container .qe-attribution-table th:nth-child(2),
.container .qe-attribution-table td:nth-child(2) { width: 7% !important; }
.container .qe-attribution-table th:nth-child(3),
.container .qe-attribution-table td:nth-child(3) { width: 8% !important; }
.container .qe-attribution-table th:nth-child(4),
.container .qe-attribution-table td:nth-child(4) { width: 8% !important; }
.container .qe-attribution-table th:nth-child(5),
.container .qe-attribution-table td:nth-child(5) { width: 9% !important; }
.container .qe-attribution-table th:nth-child(6),
.container .qe-attribution-table td:nth-child(6) { width: 10% !important; }
.container .qe-attribution-table th:nth-child(7),
.container .qe-attribution-table td:nth-child(7) { width: 10% !important; }
.container .qe-attribution-table th:nth-child(8),
.container .qe-attribution-table td:nth-child(8) { width: 11% !important; white-space: normal !important; }
.container .qe-attribution-table th:nth-child(9),
.container .qe-attribution-table td:nth-child(9) { width: 9% !important; white-space: nowrap !important; }
.container .qe-attribution-table th:nth-child(10),
.container .qe-attribution-table td:nth-child(10) { width: 22% !important; white-space: normal !important; }

@media (max-width: 1200px) and (min-width: 901px) {
    .container .qe-attribution-table th,
    .container .qe-attribution-table td {
        padding: 8px 6px !important;
        font-size: 12px !important;
    }
}

.container .qe-missing-gm-table {
    table-layout: fixed !important;
}
.container .qe-missing-gm-table th,
.container .qe-missing-gm-table td {
    font-size: 13px !important;
    line-height: 1.28 !important;
    vertical-align: top !important;
    padding-top: 13px !important;
    padding-bottom: 13px !important;
}
.container .qe-missing-gm-table th:nth-child(1),
.container .qe-missing-gm-table td:nth-child(1) { width: 7% !important; }
.container .qe-missing-gm-table th:nth-child(2),
.container .qe-missing-gm-table td:nth-child(2) { width: 8% !important; }
.container .qe-missing-gm-table th:nth-child(3),
.container .qe-missing-gm-table td:nth-child(3) { width: 12% !important; }
.container .qe-missing-gm-table th:nth-child(4),
.container .qe-missing-gm-table td:nth-child(4) { width: 10% !important; }
.container .qe-missing-gm-table th:nth-child(5),
.container .qe-missing-gm-table td:nth-child(5) { width: 10% !important; }
.container .qe-missing-gm-table th:nth-child(6),
.container .qe-missing-gm-table td:nth-child(6) { width: 11% !important; }
.container .qe-missing-gm-table th:nth-child(7),
.container .qe-missing-gm-table td:nth-child(7) { width: 24% !important; }
.container .qe-missing-gm-table th:nth-child(8),
.container .qe-missing-gm-table td:nth-child(8) { width: 18% !important; white-space: normal !important; }
.container .qe-missing-gm-table .mini-note {
    line-height: 1.28 !important;
    margin-top: 4px !important;
}

/* Force compact edit action buttons after older button rules. */
.container .option-card .edit-toolbar.qe-action-toolbar > .qe-action-button,
.container .option-card .edit-toolbar.qe-action-toolbar > a.qe-action-button,
.container .option-card .edit-toolbar.qe-action-toolbar > button.qe-action-button {
    min-width: 112px !important;
    height: 40px !important;
    min-height: 40px !important;
    padding: 8px 14px !important;
    font-size: 14px !important;
}
.container .option-card .edit-toolbar.qe-action-toolbar > .qe-danger-button,
.container .option-card .edit-toolbar.qe-action-toolbar > button.qe-danger-button {
    min-width: 120px !important;
}

/* =========================================================
   QUOTE MANAGER FINAL BUTTON/PAGINATION OVERRIDES
   2026-05-27
   Makes quote action buttons and pagination buttons match the compact top tabs.
   ========================================================= */
.container .option-card .action-row,
.container .quote-manager-page .action-row,
.container .qe-action-toolbar,
.container .edit-toolbar {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 12px !important;
    align-items: center !important;
}

.container .option-card .action-row > a.button-link,
.container .option-card .action-row > button,
.container .option-card .action-row > form > button,
.container .option-card .action-row > .qe-action-button,
.container .qe-action-toolbar > a,
.container .qe-action-toolbar > button,
.container .edit-toolbar > a,
.container .edit-toolbar > button,
.container .edit-toolbar > form > button {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    min-width: 112px !important;
    height: 42px !important;
    min-height: 42px !important;
    padding: 9px 16px !important;
    margin: 0 !important;
    border-radius: 12px !important;
    border: 1px solid rgba(126,200,255,.58) !important;
    background: rgba(255,255,255,.06) !important;
    color: var(--sms-light-blue) !important;
    -webkit-text-fill-color: var(--sms-light-blue) !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    text-align: center !important;
}

.container .option-card .action-row > a.button-link:hover,
.container .option-card .action-row > button:hover,
.container .option-card .action-row > form > button:hover,
.container .qe-action-toolbar > a:hover,
.container .qe-action-toolbar > button:hover,
.container .edit-toolbar > a:hover,
.container .edit-toolbar > button:hover,
.container .edit-toolbar > form > button:hover {
    background: rgba(125,202,255,.16) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    box-shadow: none !important;
}

.container .option-card .action-row .qe-danger-button,
.container .option-card .action-row form .qe-danger-button,
.container .edit-toolbar .qe-danger-button,
.container .qe-action-toolbar .qe-danger-button {
    min-width: 118px !important;
    border-color: rgba(248,113,113,.70) !important;
    color: #fecaca !important;
    -webkit-text-fill-color: #fecaca !important;
    background: rgba(127,29,29,.08) !important;
}

.container .option-card .action-row .qe-danger-button:hover,
.container .option-card .action-row form .qe-danger-button:hover,
.container .edit-toolbar .qe-danger-button:hover,
.container .qe-action-toolbar .qe-danger-button:hover {
    background: rgba(239,68,68,.18) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

/* Keep longer labels readable without making giant buttons. */
.container .option-card .action-row a.button-link[href*="/print"],
.container .option-card .action-row a.button-link[href*="/send"],
.container .option-card .action-row a.button-link.button-quiet,
.container .option-card .action-row button[onclick*="print"] {
    min-width: 132px !important;
}

/* Overview pagination controls: match the quote tab button style and keep layout tidy. */
.container .qe-pagination,
.container .qe-pagination-top,
.container .qe-pagination-bottom,
.container .quote-pagination,
.container .pagination-row,
.container .qe-overview-pagination {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    flex-wrap: wrap !important;
    margin: 10px 0 14px 0 !important;
}

.container .qe-page-link,
.container a.qe-page-link,
.container .quote-pagination .button-link,
.container .pagination-row .button-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: 92px !important;
    height: 38px !important;
    min-height: 38px !important;
    padding: 8px 14px !important;
    margin: 0 !important;
    border-radius: 12px !important;
    border: 1px solid rgba(126,200,255,.58) !important;
    background: rgba(255,255,255,.06) !important;
    color: var(--sms-light-blue) !important;
    -webkit-text-fill-color: var(--sms-light-blue) !important;
    box-shadow: none !important;
    font-size: 14px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
}

.container .qe-page-link:hover,
.container a.qe-page-link:hover,
.container .quote-pagination .button-link:hover,
.container .pagination-row .button-link:hover {
    background: rgba(125,202,255,.16) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.container .qe-page-link.disabled,
.container a.qe-page-link.disabled,
.container .quote-pagination .button-link.disabled,
.container .pagination-row .button-link.disabled {
    opacity: .42 !important;
    cursor: not-allowed !important;
    pointer-events: none !important;
}

.container .qe-per-page-select,
.container select[name="per_page"],
.container .quote-pagination select {
    max-width: 190px !important;
    height: 42px !important;
    min-height: 42px !important;
    padding: 8px 12px !important;
    border-radius: 10px !important;
}

/* =========================================================
   QUOTE MANAGER DASHBOARD SUMMARY + DAILY REPORT
   2026-05-28
   ========================================================= */
.container .qe-dashboard-hero-content {
    display: grid !important;
    grid-template-columns: minmax(340px, 1.1fr) minmax(420px, .9fr) !important;
    gap: 18px !important;
    align-items: stretch !important;
}

.container .qe-summary-grid,
.container .qe-report-card-grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(160px, 1fr)) !important;
    gap: 12px !important;
    align-items: stretch !important;
}

.container .qe-report-card-grid {
    grid-template-columns: repeat(4, minmax(150px, 1fr)) !important;
    margin-top: 14px !important;
}

.container .qe-summary-card {
    position: relative !important;
    overflow: hidden !important;
    border-radius: 16px !important;
    border: 1px solid rgba(126,200,255,.48) !important;
    background: linear-gradient(145deg, rgba(255,255,255,.08), rgba(125,202,255,.06)) !important;
    padding: 16px 16px 14px !important;
    box-shadow: 0 12px 30px rgba(0,0,0,.14) !important;
}

.container .qe-summary-card::after {
    content: "";
    position: absolute;
    inset: auto -34px -42px auto;
    width: 94px;
    height: 94px;
    border-radius: 999px;
    background: rgba(125,202,255,.10);
    pointer-events: none;
}

.container .qe-summary-card-today {
    border-color: rgba(34,197,94,.62) !important;
    background: linear-gradient(145deg, rgba(34,197,94,.13), rgba(125,202,255,.06)) !important;
}

.container .qe-summary-card-drilldown {
    padding-top: 16px !important;
    padding-bottom: 34px !important;
}

.container .qe-summary-card .qe-summary-action {
    position: absolute !important;
    z-index: 2 !important;
    top: auto !important;
    bottom: 10px !important;
    right: 12px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 22px !important;
    padding: 2px 8px !important;
    border-radius: 999px !important;
    border: 1px solid rgba(126,200,255,.45) !important;
    background: rgba(8,41,68,.68) !important;
    color: #bfe8ff !important;
    -webkit-text-fill-color: #bfe8ff !important;
    text-decoration: none !important;
    font-size: 10px !important;
    font-weight: 950 !important;
    letter-spacing: .02em !important;
    line-height: 1 !important;
    box-shadow: 0 6px 16px rgba(0,0,0,.16) !important;
}


.container .qe-report-scope-note {
    margin: 10px 0 6px !important;
}

.container .qe-summary-card .qe-summary-action:hover,
.container .qe-summary-card .qe-summary-action:focus {
    border-color: rgba(126,200,255,.85) !important;
    background: rgba(125,202,255,.20) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.container .qe-summary-label {
    color: var(--sms-light-blue) !important;
    -webkit-text-fill-color: var(--sms-light-blue) !important;
    font-size: 12px !important;
    font-weight: 950 !important;
    letter-spacing: .03em !important;
    text-transform: uppercase !important;
    margin-bottom: 7px !important;
}

.container .qe-summary-value {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: 28px !important;
    font-weight: 950 !important;
    line-height: 1.05 !important;
    letter-spacing: -.03em !important;
}

.container .qe-summary-sub {
    color: var(--sms-soft-white) !important;
    -webkit-text-fill-color: var(--sms-soft-white) !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    margin-top: 6px !important;
}

.container .qe-dashboard-actions {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    align-items: center !important;
    margin-top: 14px !important;
}

.container .qe-report-title-row,
.container .qe-report-quote-top,
.container .qe-report-customer-row {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 14px !important;
    align-items: flex-start !important;
    justify-content: space-between !important;
}

.container .qe-report-date-form {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    align-items: end !important;
    margin-top: 14px !important;
}

.container .qe-report-date-form input[type="date"] {
    max-width: 210px !important;
}

.container .qe-report-filter-row {
    display: grid !important;
    grid-template-columns: minmax(96px, .55fr) minmax(180px, 1.2fr) minmax(120px, .8fr) minmax(120px, .8fr) auto !important;
    gap: 10px !important;
    align-items: end !important;
}

.container .qe-report-filter-row label {
    display: flex !important;
    flex-direction: column !important;
    gap: 5px !important;
    margin: 0 !important;
    min-width: 0 !important;
}

.container .qe-report-filter-row label span {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-weight: 900 !important;
    font-size: 13px !important;
}

.container .qe-report-filter-row input,
.container .qe-report-filter-row select {
    width: 100% !important;
    min-width: 0 !important;
}

.container .qe-report-search-row {
    grid-template-columns: minmax(96px, .45fr) minmax(170px, .8fr) minmax(260px, 1.4fr) minmax(120px, .65fr) minmax(120px, .65fr) auto !important;
}

.container .qe-report-menu-date-form.qe-report-search-row {
    grid-template-columns: minmax(96px, 140px) minmax(170px, 220px) minmax(260px, 360px) minmax(120px, 160px) auto !important;
}

.container .qe-report-filter-row-compact {
    grid-template-columns: repeat(4, minmax(120px, 180px)) auto !important;
    justify-content: start !important;
}

.container .qe-report-filter-row-compact label {
    max-width: 180px !important;
}

.container .qe-report-filter-row-compact input,
.container .qe-report-filter-row-compact select {
    height: 42px !important;
    min-height: 42px !important;
    max-width: 180px !important;
    margin: 0 !important;
}

.container .qe-report-filter-row-compact button {
    width: auto !important;
    white-space: nowrap !important;
}

.container .qe-product-report-filter-row {
    grid-template-columns: minmax(86px, .45fr) minmax(210px, 1.35fr) minmax(130px, .75fr) minmax(150px, .8fr) minmax(110px, .6fr) auto !important;
}

.container .qe-report-quote-block {
    border: 1px solid rgba(126,200,255,.36) !important;
    border-radius: 16px !important;
    background: rgba(255,255,255,.045) !important;
    margin: 0 0 18px !important;
    padding: 14px !important;
}

.container .qe-report-quote-total {
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    font-size: 22px !important;
    font-weight: 950 !important;
    white-space: nowrap !important;
}

.container .qe-report-customer-row {
    justify-content: flex-start !important;
    margin: 10px 0 12px !important;
    color: var(--sms-soft-white) !important;
}

.container .qe-report-products-table {
    margin-top: 8px !important;
}

.container .qe-report-products-table th,
.container .qe-report-products-table td {
    vertical-align: middle !important;
}

.container .qe-report-image-cell {
    width: 80px !important;
    text-align: center !important;
}

.container .qe-report-product-img {
    width: 58px !important;
    height: 58px !important;
    object-fit: contain !important;
    background: #ffffff !important;
    border-radius: 10px !important;
    padding: 4px !important;
    border: 1px solid rgba(126,200,255,.45) !important;
}

@media (max-width: 1100px) {
    .container .qe-dashboard-hero-content,
    .container .qe-summary-grid,
    .container .qe-report-card-grid {
        grid-template-columns: 1fr !important;
    }
    .container .qe-report-filter-row {
        grid-template-columns: repeat(2, minmax(140px, 1fr)) !important;
    }
    .container .qe-report-filter-row button {
        width: 100% !important;
    }
}

@media print {
    .container .qe-report-header .qe-dashboard-actions,
    .container .qe-report-date-form,
    .sms-cc-sidebar,
    .sms-cc-topbar,
    .qe-tabs,
    .container > h1 {
        display: none !important;
    }
    .container .qe-report-quote-block {
        break-inside: avoid !important;
        page-break-inside: avoid !important;
    }
}


/* =========================================================
   DAILY QUOTE REPORT PRINT FIX
   Keep report content visible when quote-preview print CSS hides .option-card.
   ========================================================= */
@media print {
    @page { size: letter; margin: 0.35in; }
    html, body {
        background: #ffffff !important;
        color: #111827 !important;
        -webkit-print-color-adjust: exact !important;
        print-color-adjust: exact !important;
    }
    .sms-cc-sidebar,
    .sms-cc-topbar,
    .qe-tabs,
    .container > h1,
    .container .qe-report-header .qe-dashboard-actions,
    .container .qe-report-date-form {
        display: none !important;
    }
    .container,
    .container .option-card.qe-report-header,
    .container .option-card.qe-daily-report-card {
        display: block !important;
        max-width: none !important;
        width: auto !important;
        margin: 0 0 12px 0 !important;
        padding: 0 !important;
        background: #ffffff !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        color: #111827 !important;
        -webkit-text-fill-color: #111827 !important;
    }
    .container .option-card.qe-report-header *,
    .container .option-card.qe-daily-report-card * {
        color: #111827 !important;
        -webkit-text-fill-color: #111827 !important;
        text-shadow: none !important;
    }
    .container .qe-report-card-grid {
        display: grid !important;
        grid-template-columns: repeat(4, 1fr) !important;
        gap: 8px !important;
        margin: 10px 0 14px !important;
    }
    .container .qe-summary-card {
        display: block !important;
        background: #ffffff !important;
        border: 1px solid #cbd5e1 !important;
        box-shadow: none !important;
        padding: 8px 10px !important;
        break-inside: avoid !important;
    }
    .container .qe-summary-card::after { display: none !important; }
    .container .qe-summary-label { font-size: 8.5px !important; color: #475569 !important; -webkit-text-fill-color:#475569 !important; }
    .container .qe-summary-value { font-size: 16px !important; color: #111827 !important; -webkit-text-fill-color:#111827 !important; }
    .container .qe-summary-sub { font-size: 8.5px !important; color: #475569 !important; -webkit-text-fill-color:#475569 !important; }
    .container .qe-report-quote-block {
        display: block !important;
        background: #ffffff !important;
        border: 1px solid #cbd5e1 !important;
        border-radius: 8px !important;
        padding: 9px !important;
        margin: 0 0 10px !important;
        break-inside: avoid !important;
        page-break-inside: avoid !important;
    }
    .container .qe-report-title-row,
    .container .qe-report-quote-top,
    .container .qe-report-customer-row {
        display: flex !important;
        justify-content: space-between !important;
        gap: 8px !important;
        flex-wrap: wrap !important;
    }
    .container .qe-report-customer-row { justify-content: flex-start !important; margin: 6px 0 !important; }
    .container .qe-report-products-table,
    .container .qe-report-products-table th,
    .container .qe-report-products-table td {
        background: #ffffff !important;
        color: #111827 !important;
        -webkit-text-fill-color:#111827 !important;
        border-color: #cbd5e1 !important;
        font-size: 8.5px !important;
    }
    .container .qe-report-products-table th,
    .container .qe-report-products-table td { padding: 4px 5px !important; }
    .container .qe-report-product-img {
        width: 36px !important;
        height: 36px !important;
        object-fit: contain !important;
        background: #ffffff !important;
        border: 1px solid #cbd5e1 !important;
        border-radius: 5px !important;
        padding: 2px !important;
    }
    .container .qe-report-image-cell { width: 46px !important; }
    .container a { color: #111827 !important; -webkit-text-fill-color:#111827 !important; text-decoration: none !important; }
    .container .pill {
        border: 1px solid #94a3b8 !important;
        background: #ffffff !important;
        color: #111827 !important;
        -webkit-text-fill-color:#111827 !important;
    }
}

/* =========================================================
   QUOTE MANAGER REPORTS + SEARCH + COMPACT PAGINATION
   2026-05-29
   ========================================================= */
.container .qe-list-toolbar {
    display: grid !important;
    grid-template-columns: minmax(360px, 1fr) auto !important;
    gap: 16px !important;
    align-items: end !important;
    margin: 10px 0 12px !important;
}

.container .qe-search-form,
.container .qe-pagination-form-compact {
    margin: 0 !important;
}

.container .qe-search-form label,
.container .qe-pagination-form-compact label {
    display: block !important;
    margin: 0 0 6px !important;
    font-size: 14px !important;
    font-weight: 950 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.container .qe-search-row {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
}

.container .qe-search-row input[name="q"] {
    flex: 1 1 420px !important;
    min-width: 260px !important;
    height: 42px !important;
    margin: 0 !important;
}

.container .qe-search-row button,
.container .qe-report-menu-date-form button {
    width: auto !important;
    min-width: 94px !important;
    height: 42px !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 8px 16px !important;
    border-radius: 12px !important;
    line-height: 1 !important;
}

.container .qe-pagination-form-compact {
    display: flex !important;
    align-items: end !important;
    gap: 8px !important;
    justify-content: flex-end !important;
    white-space: nowrap !important;
}

.container .qe-pagination-form-compact label {
    margin: 0 0 12px !important;
}

.container .qe-pagination-form-compact span {
    margin: 0 0 12px !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.container .qe-pagination-form-compact select[name="per_page"],
.container select[name="per_page"] {
    width: 82px !important;
    min-width: 82px !important;
    max-width: 82px !important;
    height: 42px !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 7px 10px !important;
}

.container .qe-list-toolbar-filters {
    grid-template-columns: minmax(520px, 1fr) auto !important;
    align-items: start !important;
}

.container .qe-search-filter-form {
    display: grid !important;
    gap: 10px !important;
}

.container .qe-filter-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(145px, 1fr)) !important;
    gap: 10px !important;
    align-items: end !important;
}

.container .qe-filter-grid label {
    display: grid !important;
    gap: 4px !important;
    margin: 0 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.container .qe-filter-grid label span {
    font-size: 12px !important;
    font-weight: 900 !important;
    letter-spacing: .02em !important;
    text-transform: uppercase !important;
    color: #8bd0ff !important;
    -webkit-text-fill-color: #8bd0ff !important;
}

.container .qe-filter-grid select,
.container .qe-filter-grid input[type="date"] {
    width: 100% !important;
    min-width: 0 !important;
    height: 42px !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 7px 10px !important;
}

.container .qe-list-side-actions {
    display: grid !important;
    gap: 10px !important;
    justify-items: end !important;
}

.container .qe-export-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 42px !important;
    padding: 8px 16px !important;
}

.container .qe-pagination-clean {
    align-items: center !important;
    justify-content: space-between !important;
    margin: 8px 0 12px !important;
}

.container .qe-page-actions {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 8px !important;
    flex-wrap: nowrap !important;
}

.container .qe-page-link,
.container a.qe-page-link,
.container .qe-clear-search {
    min-width: 74px !important;
    height: 36px !important;
    min-height: 36px !important;
    padding: 8px 12px !important;
    font-size: 13px !important;
    border-radius: 11px !important;
}

.container .qe-clear-search {
    min-width: 62px !important;
}

.container .qe-report-menu-card {
    padding: 18px !important;
}

.container .qe-report-menu-row {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 18px !important;
    flex-wrap: wrap !important;
    margin-bottom: 16px !important;
}

.container .qe-report-menu-row h2 {
    margin-bottom: 5px !important;
}

.container .qe-report-menu-date-form {
    display: flex !important;
    align-items: end !important;
    gap: 10px !important;
    flex-wrap: wrap !important;
    margin: 0 !important;
}

.container .qe-report-menu-date-form label {
    margin: 0 0 9px !important;
}

.container .qe-report-menu-date-form.qe-report-filter-row {
    display: grid !important;
    margin: 0 !important;
}

.container .qe-report-menu-date-form.qe-report-filter-row label {
    margin: 0 !important;
}

.container .qe-report-menu-date-form.qe-report-filter-row-compact {
    grid-template-columns: repeat(4, minmax(120px, 180px)) auto !important;
    justify-content: start !important;
    align-items: end !important;
}

.container .qe-report-menu-date-form.qe-report-filter-row-compact label {
    max-width: 180px !important;
}

.container .qe-report-menu-date-form.qe-report-filter-row-compact input,
.container .qe-report-menu-date-form.qe-report-filter-row-compact select {
    width: 100% !important;
    max-width: 180px !important;
    height: 42px !important;
    min-height: 42px !important;
    margin: 0 !important;
}

.container .qe-report-menu-date-form.qe-report-filter-row-compact button {
    width: auto !important;
    white-space: nowrap !important;
}

.container .qe-report-menu-date-form input[type="date"] {
    width: 180px !important;
    max-width: 180px !important;
    height: 42px !important;
    min-height: 42px !important;
    margin: 0 !important;
}

@media (max-width: 900px) {
    .container .qe-list-toolbar,
    .container .qe-list-toolbar-filters {
        grid-template-columns: 1fr !important;
    }
    .container .qe-filter-grid {
        grid-template-columns: repeat(2, minmax(140px, 1fr)) !important;
    }
    .container .qe-list-side-actions {
        justify-items: start !important;
    }
    .container .qe-pagination-form-compact {
        justify-content: flex-start !important;
    }
    .container .qe-pagination-clean,
    .container .qe-page-actions {
        justify-content: flex-start !important;
        flex-wrap: wrap !important;
    }
}

/* =========================================================
   QUOTE MANAGER BUTTON SYSTEM NORMALIZATION
   2026-05-29
   Uses the three SMS blues consistently:
   - dark blue: page/card surroundings
   - medium blue: normal button fill
   - light blue: normal button border/text and active fill
   ========================================================= */
:root {
    --sms-ui-blue-dark: var(--sms-dark-blue);
    --sms-ui-blue-medium: var(--sms-medium-blue-3);
    --sms-ui-blue-light: var(--sms-light-blue);
    --sms-button-height: 42px;
    --sms-button-radius: 12px;
    --sms-button-border-width: 1px;
    --sms-button-font-size: 14px;
    --sms-button-font-weight: 900;
    --sms-button-pad-x: 16px;
}

/* Standard button/tab look: medium fill, light border and light text. */
.container button:not(:disabled):not(.qe-delete-line-button),
.container input[type="submit"]:not(:disabled),
.container input[type="button"]:not(:disabled),
.container a.button-link,
.container a.button-link:link,
.container a.button-link:visited,
.container .button-link,
.container .qe-tab,
.container .qe-tab:link,
.container .qe-tab:visited,
.container .qe-page-link,
.container a.qe-page-link,
.container .qe-action-button,
.container a.qe-action-button,
.container .qe-inline-add-button,
.container button.qe-inline-add-button,
.container .small-action-button,
.container .section-refresh-button,
.container .utility-tab,
.container .api-tab,
.container .feed-tab,
.container .date-range-button,
.container .perf-tab,
.container .price-mode-tab,
.container .button-small {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
    width: auto !important;
    max-width: none !important;
    height: var(--sms-button-height) !important;
    min-height: var(--sms-button-height) !important;
    padding: 0 var(--sms-button-pad-x) !important;
    margin: 0 !important;
    border-radius: var(--sms-button-radius) !important;
    border: var(--sms-button-border-width) solid rgba(126, 200, 255, .64) !important;
    background: var(--sms-ui-blue-medium) !important;
    color: var(--sms-ui-blue-light) !important;
    -webkit-text-fill-color: var(--sms-ui-blue-light) !important;
    box-shadow: none !important;
    font-size: var(--sms-button-font-size) !important;
    font-weight: var(--sms-button-font-weight) !important;
    line-height: 1 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
    text-align: center !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
    cursor: pointer !important;
    transform: none !important;
}

/* Active/highlighted state: light fill, medium border/text. */
.container .qe-tab.active,
.container .qe-tab.active:link,
.container .qe-tab.active:visited,
.container .tab.active,
.container .price-mode-tab.active,
.container .date-range-button.active,
.container .perf-tab.active,
.container .utility-tab.active,
.container .api-tab.active,
.container .feed-tab.active,
.container .category-toggle,
.container .button-highlight,
.container button.button-highlight,
.container a.button-highlight {
    background: var(--sms-ui-blue-light) !important;
    color: var(--sms-ui-blue-medium) !important;
    -webkit-text-fill-color: var(--sms-ui-blue-medium) !important;
    border-color: var(--sms-ui-blue-medium) !important;
    box-shadow: none !important;
}

/* Hover state stays within the same three-blue system. */
.container button:not(:disabled):not(.qe-delete-line-button):hover,
.container input[type="submit"]:not(:disabled):hover,
.container input[type="button"]:not(:disabled):hover,
.container a.button-link:hover,
.container .button-link:hover,
.container .qe-tab:hover,
.container .qe-page-link:hover,
.container a.qe-page-link:hover,
.container .qe-action-button:hover,
.container a.qe-action-button:hover,
.container .qe-inline-add-button:hover,
.container button.qe-inline-add-button:hover,
.container .small-action-button:hover,
.container .section-refresh-button:hover,
.container .utility-tab:hover,
.container .api-tab:hover,
.container .feed-tab:hover,
.container .date-range-button:hover,
.container .perf-tab:hover,
.container .price-mode-tab:hover,
.container .button-small:hover {
    background: rgba(126, 200, 255, .16) !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    border-color: var(--sms-ui-blue-light) !important;
    box-shadow: none !important;
    transform: none !important;
}

.container .qe-tab.active:hover,
.container .tab.active:hover,
.container .price-mode-tab.active:hover,
.container .date-range-button.active:hover,
.container .perf-tab.active:hover,
.container .utility-tab.active:hover,
.container .api-tab.active:hover,
.container .feed-tab.active:hover,
.container .category-toggle:hover,
.container .button-highlight:hover,
.container button.button-highlight:hover,
.container a.button-highlight:hover {
    background: var(--sms-ui-blue-light) !important;
    color: var(--sms-ui-blue-medium) !important;
    -webkit-text-fill-color: var(--sms-ui-blue-medium) !important;
    border-color: var(--sms-ui-blue-medium) !important;
}

/* Keep destructive actions distinct, but compact and same height. */
.container .qe-danger-button,
.container button.qe-danger-button,
.container a.qe-danger-button,
.container .action-row .qe-danger-button,
.container .edit-toolbar .qe-danger-button,
.container .qe-action-toolbar .qe-danger-button {
    height: var(--sms-button-height) !important;
    min-height: var(--sms-button-height) !important;
    padding: 0 var(--sms-button-pad-x) !important;
    border-radius: var(--sms-button-radius) !important;
    border: 1px solid rgba(248, 113, 113, .70) !important;
    background: rgba(127, 29, 29, .10) !important;
    color: #fecaca !important;
    -webkit-text-fill-color: #fecaca !important;
    box-shadow: none !important;
    font-size: var(--sms-button-font-size) !important;
    font-weight: var(--sms-button-font-weight) !important;
    line-height: 1 !important;
}

/* Disabled buttons should read disabled, not active. */
.container button:disabled,
.container input[type="submit"]:disabled,
.container input[type="button"]:disabled,
.container .button-link.disabled,
.container a.button-link.disabled,
.container .qe-page-link.disabled,
.container a.qe-page-link.disabled,
.container .button-link[aria-disabled="true"] {
    height: var(--sms-button-height) !important;
    min-height: var(--sms-button-height) !important;
    background: rgba(148, 163, 184, .28) !important;
    color: rgba(255, 255, 255, .52) !important;
    -webkit-text-fill-color: rgba(255, 255, 255, .52) !important;
    border-color: rgba(148, 163, 184, .32) !important;
    box-shadow: none !important;
    cursor: not-allowed !important;
    pointer-events: none !important;
    transform: none !important;
}

/* Compact utility rows. */
.container .qe-tabs,
.container .action-row,
.container .qe-action-toolbar,
.container .edit-toolbar,
.container .qe-page-actions,
.container .utility-tabs,
.container .api-tabs,
.container .feed-tabs,
.container .date-range-buttons,
.container .perf-tabs,
.container .price-mode-tabs {
    gap: 10px !important;
    align-items: center !important;
}

/* Small delete icons inside line items stay small by design. */
.container .qe-delete-line-button,
.container button.qe-delete-line-button {
    height: 34px !important;
    min-height: 34px !important;
    width: 34px !important;
    min-width: 34px !important;
    padding: 0 !important;
    border-radius: 10px !important;
}

/* Quote abandonment report polish */
.pill.status-abandoned {
    background: rgba(245, 158, 11, 0.16) !important;
    border-color: #f59e0b !important;
    color: #fbbf24 !important;
}
.pill.status-browsing {
    background: rgba(148, 163, 184, 0.14) !important;
    border-color: #94a3b8 !important;
    color: #cbd5e1 !important;
}
.pill.status-printed {
    background: rgba(245, 158, 11, 0.16) !important;
    border-color: #f59e0b !important;
    color: #fbbf24 !important;
}
.pill.status-submitted {
    background: rgba(34, 197, 94, 0.16) !important;
    border-color: #22c55e !important;
    color: #86efac !important;
}
.qe-abandonment-table td,
.qe-abandonment-table th {
    vertical-align: top;
}
.qe-event-trail {
    font-size: 11px;
    line-height: 1.35;
    max-width: 260px;
    overflow-wrap: anywhere;
}


/* =========================================================
   QUOTE MANAGER DASHBOARD COMPACT METRICS
   2026-06-04
   ========================================================= */
.container .qe-dashboard-hero-content {
    grid-template-columns: minmax(260px, 0.55fr) minmax(720px, 1.45fr) !important;
    gap: 16px !important;
    align-items: stretch !important;
}
.container .qe-dashboard-hero .qe-dashboard-note {
    max-width: 760px !important;
    padding: 11px 14px !important;
    line-height: 1.25 !important;
}
.container .qe-dashboard-hero .qe-dashboard-actions {
    margin-top: 12px !important;
}
.container .qe-dashboard-quick-reports {
    display: grid !important;
    gap: 7px !important;
    margin-top: 14px !important;
    max-width: 360px !important;
}
.container .qe-dashboard-quick-reports a {
    display: block !important;
    border: 1px solid rgba(125,202,255,.34) !important;
    border-radius: 8px !important;
    background: rgba(255,255,255,.055) !important;
    color: #bfe6ff !important;
    -webkit-text-fill-color: #bfe6ff !important;
    font-size: 12px !important;
    font-weight: 850 !important;
    line-height: 1.2 !important;
    padding: 9px 10px !important;
    text-decoration: none !important;
}
.container .qe-dashboard-quick-reports a:hover {
    background: rgba(125,202,255,.13) !important;
    border-color: rgba(125,202,255,.62) !important;
}
.container .qe-gm-sales-table {
    table-layout: fixed !important;
}
.container .qe-gm-sales-table th:nth-child(1),
.container .qe-gm-sales-table td:nth-child(1) { width: 8% !important; }
.container .qe-gm-sales-table th:nth-child(2),
.container .qe-gm-sales-table td:nth-child(2) { width: 8% !important; }
.container .qe-gm-sales-table th:nth-child(3),
.container .qe-gm-sales-table td:nth-child(3) { width: 13% !important; }
.container .qe-gm-sales-table th:nth-child(4),
.container .qe-gm-sales-table td:nth-child(4) { width: 21% !important; }
.container .qe-gm-sales-table th:nth-child(5),
.container .qe-gm-sales-table td:nth-child(5) { width: 8% !important; }
.container .qe-gm-sales-table th:nth-child(6),
.container .qe-gm-sales-table td:nth-child(6) { width: 19% !important; }
.container .qe-gm-sales-table th:nth-child(7),
.container .qe-gm-sales-table td:nth-child(7) { width: 8% !important; }
.container .qe-gm-sales-table th:nth-child(8),
.container .qe-gm-sales-table td:nth-child(8) { width: 15% !important; }
.container .qe-gm-sales-table td:nth-child(8) .qe-time-to-send {
    display: block !important;
    max-width: 100% !important;
    white-space: normal !important;
    text-align: center !important;
    line-height: 1.12 !important;
    overflow-wrap: anywhere !important;
}
.container .qe-product-trail-table {
    table-layout: fixed !important;
}
.container .qe-product-trail-table th:nth-child(1),
.container .qe-product-trail-table td:nth-child(1) { width: 8% !important; }
.container .qe-product-trail-table th:nth-child(2),
.container .qe-product-trail-table td:nth-child(2) { width: 8% !important; }
.container .qe-product-trail-table th:nth-child(3),
.container .qe-product-trail-table td:nth-child(3) { width: 13% !important; }
.container .qe-product-trail-table th:nth-child(4),
.container .qe-product-trail-table td:nth-child(4) { width: 21% !important; }
.container .qe-product-trail-table th:nth-child(5),
.container .qe-product-trail-table td:nth-child(5) { width: 8% !important; }
.container .qe-product-trail-table th:nth-child(6),
.container .qe-product-trail-table td:nth-child(6) { width: 19% !important; }
.container .qe-product-trail-table th:nth-child(7),
.container .qe-product-trail-table td:nth-child(7) { width: 8% !important; }
.container .qe-product-trail-table th:nth-child(8),
.container .qe-product-trail-table td:nth-child(8) { width: 15% !important; }
.container .qe-product-trail-table td:nth-child(8) .qe-time-to-send {
    display: block !important;
    max-width: 100% !important;
    white-space: normal !important;
    text-align: center !important;
    line-height: 1.12 !important;
    overflow-wrap: anywhere !important;
}
.container .qe-gm-sales-product {
    display: grid !important;
    grid-template-columns: 54px 1fr !important;
    gap: 9px !important;
    align-items: start !important;
    margin: 0 0 8px !important;
}
.container .qe-gm-sales-product img,
.container .qe-gm-sales-no-image {
    width: 54px !important;
    height: 54px !important;
    border-radius: 7px !important;
    border: 1px solid rgba(125,202,255,.28) !important;
    background: rgba(255,255,255,.92) !important;
    object-fit: contain !important;
}
.container .qe-gm-sales-no-image {
    background: rgba(255,255,255,.08) !important;
}
.container .qe-dashboard-hero .qe-summary-grid {
    grid-template-columns: repeat(5, minmax(140px, 1fr)) !important;
    gap: 10px !important;
}
.container .qe-dashboard-hero .qe-summary-card {
    min-height: 76px !important;
    padding: 12px 13px 10px !important;
    border-radius: 14px !important;
}
.container .qe-dashboard-hero .qe-summary-label {
    font-size: 11px !important;
    margin-bottom: 5px !important;
}
.container .qe-dashboard-hero .qe-summary-value {
    font-size: clamp(20px, 1.7vw, 28px) !important;
    letter-spacing: -.025em !important;
}
.container .qe-dashboard-hero .qe-summary-sub {
    font-size: 11px !important;
    line-height: 1.2 !important;
    margin-top: 5px !important;
}
@media (max-width: 1400px) {
    .container .qe-dashboard-hero-content { grid-template-columns: 1fr !important; }
    .container .qe-dashboard-hero .qe-summary-grid { grid-template-columns: repeat(4, minmax(140px, 1fr)) !important; }
}
@media (max-width: 900px) {
    .container .qe-dashboard-hero .qe-summary-grid { grid-template-columns: repeat(2, minmax(140px, 1fr)) !important; }
}


/* =========================================================
   QUOTE MANAGER MOBILE APP / PWA PASS
   2026-06-05 Patch 4

   Targets phone/tablet use for the internal Quote Manager without changing
   quote, shipping, storage, or reporting logic.
   ========================================================= */
@media (max-width: 900px) {
    html,
    body {
        overflow-x: hidden !important;
    }

    body {
        background: var(--sms-dark-blue) !important;
    }

    .container {
        min-height: 100svh !important;
        margin: 8px !important;
        padding: 14px !important;
        border-radius: 14px !important;
        overflow-x: hidden !important;
    }

    .container h1 {
        font-size: clamp(28px, 8vw, 38px) !important;
        line-height: 1.05 !important;
        margin: 10px 0 14px !important;
    }

    input,
    select,
    textarea,
    button,
    .button-link,
    .container input,
    .container select,
    .container textarea,
    .container button {
        font-size: 16px !important;
    }

    .sms-cc-sidebar {
        position: sticky !important;
        top: 0 !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;
        width: auto !important;
        margin: 0 !important;
        border-radius: 0 0 16px 16px !important;
        max-height: none !important;
        z-index: 1200 !important;
        box-shadow: 0 12px 28px rgba(0,0,0,.24) !important;
    }

    .sms-cc-brand {
        min-height: 0 !important;
        padding: 10px 12px 8px !important;
        flex-direction: row !important;
        align-items: center !important;
        justify-content: space-between !important;
        gap: 10px !important;
    }

    .sms-cc-logo {
        width: 150px !important;
        max-height: 34px !important;
        object-fit: contain !important;
    }

    .sms-cc-brand-title {
        display: block !important;
        margin: 0 !important;
        font-size: 12px !important;
        color: var(--sms-soft-white) !important;
        -webkit-text-fill-color: var(--sms-soft-white) !important;
    }

    .sms-cc-nav {
        display: flex !important;
        flex-direction: row !important;
        align-items: stretch !important;
        gap: 8px !important;
        padding: 8px 10px 10px !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        scrollbar-width: thin !important;
        -webkit-overflow-scrolling: touch !important;
    }

    .sms-cc-nav-divider {
        display: none !important;
    }

    .sms-cc-nav-link {
        display: inline-flex !important;
        grid-template-columns: none !important;
        justify-items: center !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 6px !important;
        min-width: max-content !important;
        min-height: 42px !important;
        padding: 9px 12px !important;
        border-radius: 999px !important;
        border-color: rgba(126,200,255,.34) !important;
        background: rgba(255,255,255,.055) !important;
        flex: 0 0 auto !important;
    }

    .sms-cc-nav-link.active {
        background: rgba(126,200,255,.18) !important;
        border-color: rgba(126,200,255,.64) !important;
    }

    .sms-cc-nav-icon {
        width: 22px !important;
        height: 22px !important;
    }

    .sms-cc-nav-label {
        display: inline !important;
        white-space: nowrap !important;
        font-size: 12px !important;
    }

    .sms-cc-topbar {
        position: static !important;
        height: auto !important;
        margin: 8px !important;
        padding: 8px !important;
        grid-template-columns: 1fr auto !important;
        gap: 8px !important;
        border-radius: 14px !important;
    }

    .sms-cc-topbar-spacer {
        display: none !important;
    }

    .sms-cc-status-pill {
        min-height: 34px !important;
        padding: 0 10px !important;
        font-size: 11px !important;
    }

    .sms-cc-user-pill,
    .sms-cc-store-switcher {
        grid-template-columns: auto !important;
        min-height: 34px !important;
        padding: 6px 9px !important;
    }

    .sms-cc-user-pill label,
    .sms-cc-store-switcher label {
        display: none !important;
    }

    .sms-cc-user-display {
        font-size: 13px !important;
        line-height: 1 !important;
    }

    .qe-tabs {
        display: flex !important;
        flex-wrap: nowrap !important;
        gap: 8px !important;
        overflow-x: auto !important;
        margin: 0 0 12px !important;
        padding: 0 0 6px !important;
        -webkit-overflow-scrolling: touch !important;
    }

    .qe-tab {
        flex: 0 0 auto !important;
        min-height: 40px !important;
        padding: 9px 12px !important;
        font-size: 13px !important;
        border-radius: 999px !important;
        white-space: nowrap !important;
    }

    .option-card {
        margin: 12px 0 !important;
        padding: 14px !important;
        border-radius: 16px !important;
    }

    .container .qe-dashboard-hero-content {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    .container .qe-dashboard-hero .qe-summary-grid,
    .container .qe-summary-grid,
    .container .qe-report-card-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 8px !important;
    }

    .container .qe-dashboard-hero .qe-summary-card,
    .container .qe-summary-card {
        min-height: 74px !important;
        padding: 11px 12px !important;
        border-radius: 14px !important;
    }

    .container .qe-dashboard-hero .qe-summary-label,
    .container .qe-summary-label {
        font-size: 10px !important;
        line-height: 1.15 !important;
        margin-bottom: 5px !important;
    }

    .container .qe-dashboard-hero .qe-summary-value,
    .container .qe-summary-value {
        font-size: clamp(22px, 8vw, 30px) !important;
    }

    .container .qe-dashboard-hero .qe-summary-sub,
    .container .qe-summary-sub {
        font-size: 10px !important;
        line-height: 1.2 !important;
        overflow-wrap: anywhere !important;
    }

    .container .qe-list-toolbar {
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    .container .qe-search-row {
        display: grid !important;
        grid-template-columns: 1fr auto !important;
        gap: 8px !important;
    }

    .container .qe-search-row input[name="q"] {
        min-width: 0 !important;
        width: 100% !important;
        flex-basis: auto !important;
    }

    .container .qe-search-row button {
        min-width: 86px !important;
    }

    .container .qe-pagination-form-compact,
    .container .qe-pagination-clean,
    .container .qe-page-actions,
    .container .qe-pagination-bottom {
        justify-content: flex-start !important;
        flex-wrap: wrap !important;
    }

    .container .qe-overview-table,
    .container .qe-report-products-table,
    .container .qe-abandonment-table,
    .container .rate-table {
        width: 100% !important;
    }

    .container .qe-abandonment-table {
        display: block !important;
        overflow-x: auto !important;
        min-width: 760px !important;
        -webkit-overflow-scrolling: touch !important;
    }

    .container .qe-overview-table th,
    .container .qe-overview-table td {
        font-size: 13px !important;
        padding: 8px 7px !important;
    }

    .container .qe-overview-table:not(.qe-abandonment-table) th:nth-child(3),
    .container .qe-overview-table:not(.qe-abandonment-table) td:nth-child(3),
    .container .qe-overview-table:not(.qe-abandonment-table) th:nth-child(5),
    .container .qe-overview-table:not(.qe-abandonment-table) td:nth-child(5),
    .container .qe-overview-table:not(.qe-abandonment-table) th:nth-child(6),
    .container .qe-overview-table:not(.qe-abandonment-table) td:nth-child(6),
    .container .qe-overview-table:not(.qe-abandonment-table) th:nth-child(7),
    .container .qe-overview-table:not(.qe-abandonment-table) td:nth-child(7),
    .container .qe-overview-table:not(.qe-abandonment-table) th:nth-child(8),
    .container .qe-overview-table:not(.qe-abandonment-table) td:nth-child(8),
    .container .qe-overview-table:not(.qe-abandonment-table) th:nth-child(9),
    .container .qe-overview-table:not(.qe-abandonment-table) td:nth-child(9),
    .container .qe-overview-table:not(.qe-abandonment-table) th:nth-child(10),
    .container .qe-overview-table:not(.qe-abandonment-table) td:nth-child(10) {
        display: none !important;
    }

    .container .qe-overview-table:not(.qe-abandonment-table) th:nth-child(1),
    .container .qe-overview-table:not(.qe-abandonment-table) td:nth-child(1) { width: 31% !important; }
    .container .qe-overview-table:not(.qe-abandonment-table) th:nth-child(2),
    .container .qe-overview-table:not(.qe-abandonment-table) td:nth-child(2) { width: 20% !important; }
    .container .qe-overview-table:not(.qe-abandonment-table) th:nth-child(4),
    .container .qe-overview-table:not(.qe-abandonment-table) td:nth-child(4) { width: 29% !important; }
    .container .qe-overview-table:not(.qe-abandonment-table) th:nth-child(11),
    .container .qe-overview-table:not(.qe-abandonment-table) td:nth-child(11) { width: 20% !important; white-space: nowrap !important; }

    .container .pill,
    .container .qe-time-to-send {
        font-size: 12px !important;
        padding: 4px 7px !important;
        min-width: 0 !important;
    }

    .quote-grid,
    .item-row-grid,
    .edit-grid,
    .send-grid,
    .shipping-zip-grid {
        grid-template-columns: 1fr !important;
    }

    .quote-grid-2,
    .quote-grid-3,
    .quote-grid-4,
    .edit-grid-2,
    .edit-grid-4,
    .send-grid-2 {
        grid-column: span 1 !important;
    }

    .edit-shell,
    .send-shell {
        grid-template-columns: 1fr !important;
    }

    .edit-table-wrap,
    .quote-preview-shell,
    .container .table-wrap,
    .container .qe-abandonment-table {
        overflow-x: auto !important;
        -webkit-overflow-scrolling: touch !important;
    }

    .edit-line-table {
        min-width: 860px !important;
    }

    .quote-preview {
        width: 920px !important;
        max-width: none !important;
        padding: 24px 28px !important;
    }

    .action-row,
    .edit-toolbar,
    .qe-action-toolbar,
    .container .qe-dashboard-actions {
        display: grid !important;
        grid-template-columns: 1fr 1fr !important;
        gap: 8px !important;
    }

    .action-row > *,
    .edit-toolbar > *,
    .qe-action-toolbar > *,
    .container .qe-dashboard-actions > *,
    .container .option-card .action-row > a.button-link,
    .container .option-card .action-row > button,
    .container .option-card .action-row > form > button,
    .container .qe-action-toolbar > a,
    .container .qe-action-toolbar > button,
    .container .edit-toolbar > a,
    .container .edit-toolbar > button,
    .container .edit-toolbar > form > button {
        width: 100% !important;
        min-width: 0 !important;
        max-width: none !important;
        justify-content: center !important;
    }
}

@media (max-width: 520px) {
    .sms-cc-logo {
        width: 132px !important;
    }

    .sms-cc-brand-title {
        font-size: 11px !important;
    }

    .sms-cc-nav-link {
        min-height: 40px !important;
        padding: 8px 10px !important;
    }

    .sms-cc-nav-label {
        font-size: 11px !important;
    }

    .container {
        margin: 6px !important;
        padding: 12px !important;
        border-radius: 12px !important;
    }

    .container .qe-dashboard-hero .qe-summary-grid,
    .container .qe-summary-grid,
    .container .qe-report-card-grid {
        grid-template-columns: 1fr 1fr !important;
    }

    .container .qe-dashboard-note {
        font-size: 13px !important;
    }

    .container .qe-overview-table:not(.qe-abandonment-table) th:nth-child(4),
    .container .qe-overview-table:not(.qe-abandonment-table) td:nth-child(4) {
        display: none !important;
    }

    .container .qe-overview-table:not(.qe-abandonment-table) th:nth-child(1),
    .container .qe-overview-table:not(.qe-abandonment-table) td:nth-child(1) { width: 40% !important; }
    .container .qe-overview-table:not(.qe-abandonment-table) th:nth-child(2),
    .container .qe-overview-table:not(.qe-abandonment-table) td:nth-child(2) { width: 25% !important; }
    .container .qe-overview-table:not(.qe-abandonment-table) th:nth-child(11),
    .container .qe-overview-table:not(.qe-abandonment-table) td:nth-child(11) { width: 35% !important; }

    .action-row,
    .edit-toolbar,
    .qe-action-toolbar,
    .container .qe-dashboard-actions {
        grid-template-columns: 1fr !important;
    }
}


/* Recent Quotes filters/export polish - Patch 10 */
@media (max-width: 520px) {
    .container .qe-filter-grid {
        grid-template-columns: 1fr !important;
    }
    .container .qe-list-side-actions {
        justify-items: stretch !important;
    }
    .container .qe-export-link {
        width: 100% !important;
    }
}

/* Rep Fixes 004 - New quote totals/send workflow */
.new-quote-workspace {
    display: grid;
    grid-template-columns: minmax(280px, 420px) minmax(320px, 1fr);
    gap: 16px;
    margin-top: 18px;
}
.new-quote-totals-card label,
.new-quote-send-card label {
    margin-top: 10px;
}
.new-quote-send-card .action-row {
    align-items: stretch;
}
.quote-tax-calculator {
    display: grid;
    grid-template-columns: minmax(90px, .65fr) minmax(130px, 1fr) auto;
    gap: 10px;
    align-items: end;
    margin-top: 10px;
}
.quote-tax-calculator label {
    margin-top: 0;
}
.quote-tax-button-cell {
    min-width: 0;
}
.quote-tax-button-spacer {
    visibility: hidden;
}
.container .quote-tax-calculator .quote-tax-button-cell .quote-tax-calculate-button {
    height: var(--cc-field-height) !important;
    margin: 0 !important;
    min-height: var(--cc-field-height) !important;
    white-space: nowrap;
    width: 100% !important;
}
@media (max-width: 900px) {
    .new-quote-workspace {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 520px) {
    .quote-tax-calculator {
        grid-template-columns: 1fr 1fr;
    }
    .quote-tax-button-cell {
        grid-column: 1 / -1;
    }
    .quote-tax-button-spacer {
        display: none;
    }
}



/* =========================================================
   Product Load Manager module styles
   Version: PLM v0.1b

   Append this block to dashboard/static/sms_command_center.css.
   The PLM routes intentionally contain no inline <style> block; all module
   styling lives in the shared Quote Manager / Command Center stylesheet.
   ========================================================= */

.container.plm-page {
    color: var(--sms-white) !important;
}

.container.plm-page .plm-subtitle {
    color: var(--sms-soft-white) !important;
    line-height: 1.45;
    max-width: 1500px;
    margin: 0 0 18px;
}

.container.plm-page .plm-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: 12px;
    margin: 16px 0 20px;
}

.container.plm-page .plm-card {
    background: linear-gradient(145deg, var(--sms-medium-blue) 0%, var(--sms-medium-blue-2) 100%) !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-radius: 16px !important;
    box-shadow: var(--sms-card-shadow) !important;
    padding: 14px 16px;
    color: var(--sms-white) !important;
    min-height: 72px;
}

.container.plm-page .plm-card-label {
    color: var(--sms-light-blue) !important;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .08em;
    text-transform: uppercase;
    line-height: 1.2;
}

.container.plm-page .plm-card-value {
    color: var(--sms-white) !important;
    font-size: 28px;
    font-weight: 950;
    line-height: 1.05;
    margin-top: 8px;
}

.container.plm-page .plm-card-bc-products {
    min-width: 290px;
}

.container.plm-page .plm-bc-product-metrics {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.55rem;
    margin-top: 0.75rem;
}

.container.plm-page .plm-bc-product-metrics span {
    display: grid;
    gap: 0.15rem;
    min-width: 0;
}

.container.plm-page .plm-bc-product-metrics strong {
    color: var(--sms-white, #fff);
    font-size: 1.55rem;
    font-weight: 950;
    line-height: 1;
}

.container.plm-page .plm-bc-product-metrics small {
    color: var(--sms-soft-white, #d3e9f8);
    font-size: 0.72rem;
    font-weight: 850;
    line-height: 1.1;
}

.container.plm-page .plm-section {
    position: relative;
    overflow-x: auto;
    background: linear-gradient(145deg, var(--sms-medium-blue) 0%, var(--sms-medium-blue-2) 100%) !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-radius: 18px !important;
    box-shadow: var(--sms-card-shadow) !important;
    padding: 16px;
    margin: 16px 0;
    color: var(--sms-white) !important;
}

.container.plm-page .plm-section::after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 0;
    height: 3px;
    border-radius: 999px 999px 0 0;
    background: linear-gradient(90deg, var(--brand-accent) 0%, var(--sms-light-blue) 58%, var(--sms-line-blue) 100%);
    opacity: .95;
    pointer-events: none;
}

.container.plm-page .plm-section h2 {
    color: var(--sms-white) !important;
    margin: 0 0 12px;
    font-size: 20px;
}

.container.plm-page .plm-table {
    width: 100%;
    border-collapse: collapse;
    background: rgba(255,255,255,.04) !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-radius: 14px !important;
    overflow: hidden;
}

.container.plm-page .plm-table th,
.container.plm-page .plm-table td {
    padding: 8px 10px;
    border-bottom: 1px solid rgba(126,200,255,.14) !important;
    font-size: 12px;
    line-height: 1.35;
    vertical-align: top;
    overflow-wrap: anywhere;
}

.container.plm-page .plm-table th {
    background: linear-gradient(135deg, var(--brand-primary), var(--brand-accent)) !important;
    color: #ffffff !important;
    text-align: left;
    font-weight: 900;
}

.container.plm-page .plm-table td {
    background: rgba(255,255,255,.035) !important;
    color: var(--sms-soft-white) !important;
}

.container.plm-page .plm-table tr:hover td {
    background: rgba(126,200,255,.08) !important;
}

.container.plm-page .plm-table td a,
.container.plm-page .plm-link {
    color: var(--sms-light-blue) !important;
    font-weight: 900;
    text-decoration: none !important;
}

.container.plm-page .plm-table td a:hover,
.container.plm-page .plm-link:hover {
    text-decoration: underline !important;
}

.container.plm-page .plm-alert {
    background: rgba(255, 183, 77, .10) !important;
    border: 1px solid rgba(255, 183, 77, .52) !important;
    border-left: 5px solid #DCA24A !important;
    color: var(--sms-white) !important;
    border-radius: 12px;
    padding: 12px 14px;
    margin: 14px 0;
    line-height: 1.45;
}

.container.plm-page .plm-alert * {
    color: var(--sms-white) !important;
}

.container.plm-page .plm-error {
    background: rgba(220, 38, 38, .16) !important;
    border-color: rgba(248, 113, 113, .55) !important;
    border-left-color: #ef4444 !important;
}

.container.plm-page .plm-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 20px;
    padding: 2px 8px;
    border-radius: 999px;
    font-weight: 900;
    font-size: 11px;
    line-height: 1;
    white-space: nowrap;
    background: rgba(126,200,255,.18) !important;
    border: 1px solid rgba(126,200,255,.38) !important;
    color: var(--sms-white) !important;
}

.container.plm-page .plm-badge-ok {
    background: #dcfce7 !important;
    border-color: #86efac !important;
    color: #166534 !important;
}

.container.plm-page .plm-badge-warning {
    background: #fef3c7 !important;
    border-color: #fbbf24 !important;
    color: #3a2600 !important;
    -webkit-text-fill-color: #3a2600 !important;
}

.container.plm-page .plm-table td a.plm-badge-warning,
.container.plm-page a.plm-badge-warning,
.container.plm-page .plm-table td a.plm-badge-warning:hover,
.container.plm-page a.plm-badge-warning:hover {
    color: #3a2600 !important;
    -webkit-text-fill-color: #3a2600 !important;
    text-decoration: none !important;
}

.container.plm-page .plm-badge-error {
    background: #fee2e2 !important;
    border-color: #fca5a5 !important;
    color: #991b1b !important;
}

.container.plm-page .plm-issue-list {
    margin: 0;
    padding-left: 18px;
}

.container.plm-page .plm-issue-list li {
    color: var(--sms-soft-white) !important;
    margin: 0 0 4px;
}

.container.plm-page .plm-issue-list strong {
    color: var(--sms-white) !important;
}

.container.plm-page .plm-muted {
    color: var(--sms-muted-white) !important;
}

.container.plm-page .plm-nowrap {
    white-space: nowrap;
}

.container.plm-page .plm-status-sub {
    margin-top: 4px;
}

.container.plm-page .plm-footer-note {
    margin: 22px 0 6px;
}

@media (max-width: 900px) {
    .container.plm-page .plm-table {
        min-width: 950px;
    }
}


/* =========================================================
   Product Load Manager module styles
   Version: PLM v0.2

   Append this block after the PLM v0.1b block in
   dashboard/static/sms_command_center.css.
   This block only affects .container.plm-page pages.
   ========================================================= */

.container.plm-page .plm-section-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
    margin: 0 0 12px;
}

.container.plm-page .plm-section-head h2 {
    margin: 0 !important;
}

.container.plm-page .plm-mini-note {
    color: var(--sms-muted-white) !important;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.35;
    max-width: 520px;
    text-align: right;
}

.container.plm-page .plm-dashboard-batch-table th:nth-child(1),
.container.plm-page .plm-dashboard-batch-table td:nth-child(1) {
    min-width: 360px;
}

.container.plm-page .plm-review-section {
    overflow-x: visible;
}

.container.plm-page .plm-item-card {
    background: rgba(6, 78, 126, .36) !important;
    border: 1px solid rgba(126,200,255,.25) !important;
    border-left: 5px solid rgba(126,200,255,.55) !important;
    border-radius: 16px;
    box-shadow: 0 10px 28px rgba(0,0,0,.16);
    color: var(--sms-white) !important;
    padding: 14px;
    margin: 12px 0;
}

.container.plm-page .plm-item-card-warning {
    border-left-color: #DCA24A !important;
}

.container.plm-page .plm-item-card-error {
    border-left-color: #ef4444 !important;
}

.container.plm-page .plm-item-head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 16px;
    margin-bottom: 12px;
}

.container.plm-page .plm-item-eyebrow {
    color: var(--sms-light-blue) !important;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
    margin-bottom: 5px;
}

.container.plm-page .plm-item-head h3 {
    color: var(--sms-white) !important;
    font-size: 18px;
    line-height: 1.28;
    margin: 0;
}

.container.plm-page .plm-item-statuses {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    justify-content: flex-end;
    min-width: 150px;
}

.container.plm-page .plm-field-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(145px, 1fr));
    gap: 8px;
    margin: 10px 0 12px;
}

.container.plm-page .plm-field {
    background: rgba(255,255,255,.055) !important;
    border: 1px solid rgba(126,200,255,.15) !important;
    border-radius: 12px;
    min-height: 58px;
    padding: 9px 10px;
}

.container.plm-page .plm-field-wide {
    grid-column: span 2;
}

.container.plm-page .plm-field span {
    display: block;
    color: var(--sms-light-blue) !important;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .06em;
    line-height: 1.2;
    text-transform: uppercase;
    margin-bottom: 5px;
}

.container.plm-page .plm-field strong {
    display: block;
    color: var(--sms-white) !important;
    font-size: 13px;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.container.plm-page .plm-issues-box {
    background: rgba(0,0,0,.15) !important;
    border: 1px solid rgba(126,200,255,.13) !important;
    border-radius: 12px;
    padding: 11px 12px;
}

.container.plm-page .plm-issues-box-ok {
    color: var(--sms-soft-white) !important;
}

.container.plm-page .plm-issues-title {
    color: var(--sms-light-blue) !important;
    font-size: 12px;
    font-weight: 950;
    letter-spacing: .06em;
    text-transform: uppercase;
    margin-bottom: 7px;
}

.container.plm-page .plm-issue-list-rich {
    list-style: none;
    margin: 0;
    padding: 0;
}

.container.plm-page .plm-issue-list-rich li {
    border-top: 1px solid rgba(126,200,255,.12);
    padding: 8px 0;
}

.container.plm-page .plm-issue-list-rich li:first-child {
    border-top: 0;
    padding-top: 0;
}

.container.plm-page .plm-issue-line {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 5px;
}

.container.plm-page .plm-issue-values {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    color: var(--sms-muted-white) !important;
    font-size: 11px;
    margin-top: 4px;
}

.container.plm-page .plm-compact-items-table {
    min-width: 1180px;
}

.container.plm-page .plm-compact-items-table th:nth-child(5),
.container.plm-page .plm-compact-items-table td:nth-child(5) {
    min-width: 300px;
}

@media (max-width: 900px) {
    .container.plm-page .plm-section-head,
    .container.plm-page .plm-item-head {
        display: block;
    }

    .container.plm-page .plm-mini-note {
        text-align: left;
        margin-top: 6px;
    }

    .container.plm-page .plm-item-statuses {
        justify-content: flex-start;
        margin-top: 10px;
    }

    .container.plm-page .plm-field-wide {
        grid-column: span 1;
    }
}


/* =========================================================
   Product Load Manager module styles
   Version: PLM v0.3

   Append this block after the PLM v0.2 block in
   dashboard/static/sms_command_center.css.
   This block only affects .container.plm-page pages.
   ========================================================= */

.container.plm-page .plm-actions-row,
.container.plm-page .plm-pagination-row {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 10px;
    margin: 12px 0 14px;
}

.container.plm-page .plm-pagination-bottom {
    margin-top: 14px;
    margin-bottom: 0;
}

.container.plm-page .plm-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 36px;
    padding: 8px 14px;
    border-radius: 11px;
    border: 1px solid rgba(126,200,255,.42) !important;
    background: linear-gradient(135deg, var(--brand-primary), var(--brand-accent)) !important;
    color: #ffffff !important;
    font-weight: 900;
    text-decoration: none !important;
    cursor: pointer;
    box-shadow: 0 6px 16px rgba(0,0,0,.16);
}

.container.plm-page .plm-button:hover {
    filter: brightness(1.08);
    text-decoration: none !important;
}

.container.plm-page .plm-button-secondary {
    background: rgba(255,255,255,.06) !important;
    color: var(--sms-light-blue) !important;
}

.container.plm-page .plm-filter-form {
    display: grid;
    grid-template-columns: minmax(260px, 2fr) repeat(4, minmax(150px, 1fr)) minmax(90px, .6fr) auto;
    gap: 10px;
    align-items: end;
}

.container.plm-page .plm-filter-field {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.container.plm-page .plm-filter-field span {
    color: var(--sms-light-blue) !important;
    font-size: 11px;
    font-weight: 950;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.container.plm-page .plm-filter-field input,
.container.plm-page .plm-filter-field select {
    width: 100%;
    min-height: 38px;
    border-radius: 11px;
    border: 1px solid rgba(126,200,255,.35) !important;
    background: rgba(255,255,255,.95) !important;
    color: #0f172a !important;
    font-weight: 700;
    padding: 7px 10px;
}

.container.plm-page .plm-filter-actions {
    display: flex;
    gap: 8px;
    align-items: center;
}

.container.plm-page .plm-batch-history-search {
    display: grid;
    grid-template-columns: minmax(240px, 1fr) minmax(220px, 0.8fr) auto auto;
    gap: 10px;
    align-items: end;
    margin: 14px 0 10px;
}

.container.plm-page .plm-batch-history-pagination {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 10px;
    margin: 0 0 14px;
}

.container.plm-page .plm-batch-history-pagination .plm-actions-row {
    margin: 0;
}

@media (max-width: 760px) {
    .container.plm-page .plm-batch-history-search {
        grid-template-columns: 1fr;
    }
}

.container.plm-page .plm-vendor-browser-table {
    min-width: 1320px;
}

.container.plm-page .plm-vendor-browser-table th:nth-child(5),
.container.plm-page .plm-vendor-browser-table td:nth-child(5) {
    min-width: 290px;
}

.container.plm-page .plm-vendor-browser-table th:nth-child(6),
.container.plm-page .plm-vendor-browser-table td:nth-child(6) {
    min-width: 210px;
}

.container.plm-page .plm-detail-field-grid {
    grid-template-columns: repeat(auto-fit, minmax(165px, 1fr));
}

.container.plm-page .plm-description-box {
    background: rgba(0,0,0,.15) !important;
    border: 1px solid rgba(126,200,255,.14) !important;
    border-radius: 14px;
    color: var(--sms-soft-white) !important;
    line-height: 1.45;
    padding: 12px 14px;
    margin-top: 12px;
}

.container.plm-page .plm-chip-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.container.plm-page .plm-two-col {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

.container.plm-page .plm-two-col h3 {
    color: var(--sms-white) !important;
    margin: 0 0 10px;
    font-size: 16px;
}

.container.plm-page .plm-link-list {
    margin: 0;
    padding-left: 18px;
}

.container.plm-page .plm-link-list li {
    color: var(--sms-soft-white) !important;
    margin: 0 0 7px;
    overflow-wrap: anywhere;
}

.container.plm-page .plm-key-value-table,
.container.plm-page .plm-source-history-table,
.container.plm-page .plm-change-log-table {
    min-width: 760px;
}

.container.plm-page .plm-key-value-table th:first-child,
.container.plm-page .plm-key-value-table td:first-child {
    width: 220px;
    font-weight: 900;
    color: var(--sms-white) !important;
}

@media (max-width: 1200px) {
    .container.plm-page .plm-filter-form {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .container.plm-page .plm-filter-actions {
        grid-column: 1 / -1;
    }
}

@media (max-width: 900px) {
    .container.plm-page .plm-filter-form,
    .container.plm-page .plm-two-col {
        grid-template-columns: 1fr;
    }
}


/* =========================================================
   Product Load Manager module layout polish
   Version: PLM v0.3a

   Append this block after the PLM v0.3 block in
   dashboard/static/sms_command_center.css.
   This block only affects .container.plm-page pages.
   ========================================================= */

.container.plm-page {
    overflow-x: hidden;
}

.container.plm-page h1 {
    line-height: 1.12;
    max-width: 1240px;
}

.container.plm-page .plm-section {
    overflow-x: auto;
}

.container.plm-page .plm-filter-section {
    overflow-x: visible !important;
}

.container.plm-page .plm-filter-form {
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-end;
    gap: 12px;
}

.container.plm-page .plm-filter-field {
    flex: 1 1 165px;
    min-width: 0;
}

.container.plm-page .plm-filter-field-wide {
    flex: 2 1 320px;
}

.container.plm-page .plm-filter-small {
    flex: 0 0 95px;
}

.container.plm-page .plm-filter-actions {
    flex: 0 0 auto;
    min-width: 170px;
    display: flex;
    gap: 8px;
    justify-content: flex-start;
}

.container.plm-page .plm-filter-field input,
.container.plm-page .plm-filter-field select {
    min-width: 0;
}

.container.plm-page .plm-table {
    table-layout: auto;
}

.container.plm-page .plm-table th {
    white-space: nowrap;
    word-break: normal;
    overflow-wrap: normal;
    line-height: 1.15;
}

.container.plm-page .plm-table td {
    vertical-align: top;
    line-height: 1.35;
    word-break: normal;
    overflow-wrap: anywhere;
}

.container.plm-page .plm-vendor-browser-table {
    min-width: 1120px;
}

.container.plm-page .plm-vendor-browser-table th:nth-child(1),
.container.plm-page .plm-vendor-browser-table td:nth-child(1) {
    min-width: 72px;
    width: 72px;
    white-space: nowrap;
}

.container.plm-page .plm-vendor-browser-table th:nth-child(2),
.container.plm-page .plm-vendor-browser-table td:nth-child(2) {
    min-width: 105px;
    width: 105px;
}

.container.plm-page .plm-vendor-browser-table th:nth-child(3),
.container.plm-page .plm-vendor-browser-table td:nth-child(3),
.container.plm-page .plm-vendor-browser-table th:nth-child(4),
.container.plm-page .plm-vendor-browser-table td:nth-child(4) {
    min-width: 105px;
    width: 105px;
}

.container.plm-page .plm-vendor-browser-table th:nth-child(5),
.container.plm-page .plm-vendor-browser-table td:nth-child(5) {
    min-width: 330px;
}

.container.plm-page .plm-vendor-browser-table th:nth-child(6),
.container.plm-page .plm-vendor-browser-table td:nth-child(6) {
    min-width: 190px;
}

.container.plm-page .plm-vendor-browser-table th:nth-child(7),
.container.plm-page .plm-vendor-browser-table td:nth-child(7),
.container.plm-page .plm-vendor-browser-table th:nth-child(8),
.container.plm-page .plm-vendor-browser-table td:nth-child(8),
.container.plm-page .plm-vendor-browser-table th:nth-child(9),
.container.plm-page .plm-vendor-browser-table td:nth-child(9) {
    min-width: 85px;
    white-space: nowrap;
}

.container.plm-page .plm-vendor-browser-table th:nth-child(10),
.container.plm-page .plm-vendor-browser-table td:nth-child(10) {
    min-width: 105px;
}

.container.plm-page .plm-vendor-browser-table th:nth-child(11),
.container.plm-page .plm-vendor-browser-table td:nth-child(11) {
    min-width: 130px;
    white-space: nowrap;
}

.container.plm-page .plm-vendor-detail-page h1,
.container.plm-page.plm-vendor-detail-page h1 {
    max-width: 1100px;
}

.container.plm-page .plm-detail-field-grid {
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}

.container.plm-page.plm-vendor-detail-page .plm-field strong,
.container.plm-page .plm-vendor-detail-page .plm-field strong {
    overflow-wrap: anywhere;
}

.container.plm-page .plm-two-col {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: start;
}

.container.plm-page .plm-key-value-table {
    min-width: 0 !important;
    width: 100%;
    table-layout: fixed;
}

.container.plm-page .plm-key-value-table th:first-child,
.container.plm-page .plm-key-value-table td:first-child {
    width: 38%;
    min-width: 130px;
}

.container.plm-page .plm-source-history-table,
.container.plm-page .plm-change-log-table {
    min-width: 980px;
}

.container.plm-page .plm-link-list {
    list-style: none;
    margin: 0;
    padding-left: 0;
}

.container.plm-page .plm-link-list li {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 8px;
}

.container.plm-page .plm-pill-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 28px;
    padding: 5px 10px;
    border-radius: 999px;
    background: rgba(126, 200, 255, .14);
    border: 1px solid rgba(126, 200, 255, .28);
    font-size: 12px;
    font-weight: 900;
}

.container.plm-page .plm-url-host {
    color: rgba(232, 246, 255, .72);
    font-size: 12px;
    overflow-wrap: anywhere;
}

.container.plm-page .plm-nowrap {
    white-space: nowrap;
}

@media (max-width: 1100px) {
    .container.plm-page .plm-two-col {
        grid-template-columns: 1fr;
    }

    .container.plm-page .plm-filter-actions {
        flex: 1 1 100%;
    }
}


/* --------------------------------------------------------------------------
   Product Load Manager module styles
   Version: PLM v0.4 - five-tab shell and master-data dropdown status
   Appends to dashboard/static/sms_command_center.css
   -------------------------------------------------------------------------- */

.plm-top-tabs {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    align-items: center;
    margin: 10px 0 22px;
    padding: 8px;
    border: 1px solid rgba(112, 195, 255, 0.28);
    background: rgba(8, 38, 62, 0.72);
    border-radius: 16px;
}

.plm-top-tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 9px 14px;
    border: 1px solid rgba(112, 195, 255, 0.35);
    border-radius: 12px;
    color: #8ed0ff;
    text-decoration: none;
    font-weight: 900;
    letter-spacing: 0.02em;
    background: rgba(13, 63, 96, 0.62);
}

.plm-top-tab:hover,
.plm-top-tab:focus {
    color: #ffffff;
    border-color: rgba(141, 212, 255, 0.82);
    background: rgba(20, 91, 135, 0.84);
    text-decoration: none;
}

.plm-top-tab.active {
    color: #03243b;
    background: #8ed0ff;
    border-color: #8ed0ff;
    box-shadow: 0 0 0 1px rgba(142, 208, 255, 0.28), 0 10px 24px rgba(0, 0, 0, 0.16);
}

.plm-button-secondary {
    background: rgba(13, 63, 96, 0.62) !important;
    color: #8ed0ff !important;
    border-color: rgba(112, 195, 255, 0.42) !important;
}

.plm-button-disabled,
.plm-button-disabled:hover,
.plm-button-disabled:focus {
    opacity: 0.72;
    cursor: not-allowed;
    color: rgba(255, 255, 255, 0.72) !important;
    border-color: rgba(255, 255, 255, 0.20) !important;
    background: rgba(255, 255, 255, 0.08) !important;
}

.plm-bullet-list {
    margin: 12px 0 0 22px;
    padding: 0;
    color: #ffffff;
    line-height: 1.55;
}

.plm-bullet-list li {
    margin: 8px 0;
}

.plm-master-data-page .plm-two-col {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
}

.plm-master-table th,
.plm-master-table td {
    vertical-align: top;
}

.plm-placeholder-page .plm-section,
.plm-master-data-page .plm-section {
    overflow: visible;
}

@media (max-width: 980px) {
    .plm-master-data-page .plm-two-col {
        grid-template-columns: 1fr;
    }

    .plm-top-tabs {
        gap: 8px;
    }

    .plm-top-tab {
        flex: 1 1 180px;
    }
}


/* Product Load Manager module styles
   Version: PLM v0.5
   Vendor upload preview workflow. Keep styles in shared Quote Manager stylesheet. */

.container.plm-vendor-upload-page .plm-upload-form {
    margin-top: 8px;
}

.container.plm-vendor-upload-page .plm-upload-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 14px;
    align-items: end;
}

.container.plm-vendor-upload-page input[type="file"] {
    width: 100%;
    border: 1px solid rgba(127, 199, 255, 0.55);
    background: rgba(255, 255, 255, 0.96);
    color: #062842;
    border-radius: 12px;
    padding: 13px 14px;
    font-weight: 800;
}


/* Product Load Manager module styles
   Version: PLM v0.5a
   Vendor upload preview layout polish + drag/drop file picker. */

.container.plm-vendor-upload-page .plm-upload-section {
    overflow: visible;
}

.container.plm-vendor-upload-page .plm-upload-form {
    margin-top: 10px;
}

.container.plm-vendor-upload-page .plm-upload-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(180px, 1fr));
    gap: 16px;
    align-items: end;
}

.container.plm-vendor-upload-page .plm-upload-span-all {
    grid-column: 1 / -1;
}

.container.plm-vendor-upload-page .plm-upload-drop-field {
    display: flex;
    flex-direction: column;
    gap: 7px;
}

.container.plm-vendor-upload-page .plm-upload-label {
    color: var(--sms-light-blue, #7fc7ff);
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    font-weight: 900;
}

.container.plm-vendor-upload-page .plm-upload-drop-zone {
    border: 2px dashed rgba(127, 199, 255, 0.7);
    background: rgba(9, 49, 80, 0.72);
    border-radius: 18px;
    padding: 22px;
    min-height: 116px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(220px, 0.38fr);
    gap: 16px;
    align-items: center;
    cursor: pointer;
    transition: border-color 0.15s ease, background 0.15s ease, transform 0.15s ease;
}

.container.plm-vendor-upload-page .plm-upload-drop-zone:hover,
.container.plm-vendor-upload-page .plm-upload-drop-zone:focus,
.container.plm-vendor-upload-page .plm-upload-drop-zone.is-dragover {
    outline: none;
    border-color: rgba(145, 210, 255, 1);
    background: rgba(13, 67, 108, 0.88);
}

.container.plm-vendor-upload-page .plm-upload-drop-zone.is-dragover {
    transform: translateY(-1px);
}

.container.plm-vendor-upload-page .plm-upload-drop-title {
    color: #ffffff;
    font-size: 1.22rem;
    font-weight: 900;
    line-height: 1.2;
}

.container.plm-vendor-upload-page .plm-upload-drop-help {
    color: rgba(220, 239, 255, 0.82);
    font-size: 0.95rem;
    margin-top: 4px;
}

.container.plm-vendor-upload-page .plm-upload-file-input {
    width: 100%;
    border: 1px solid rgba(127, 199, 255, 0.45);
    background: rgba(255, 255, 255, 0.96);
    color: #062842;
    border-radius: 12px;
    padding: 12px;
    font-weight: 800;
}

.container.plm-vendor-upload-page .plm-selected-file {
    grid-column: 1 / -1;
    border-top: 1px solid rgba(127, 199, 255, 0.22);
    padding-top: 10px;
    color: rgba(220, 239, 255, 0.88);
    font-weight: 800;
    word-break: break-word;
}

.container.plm-vendor-upload-page .plm-upload-drop-zone.has-file .plm-selected-file {
    color: #bfffd6;
}

.container.plm-vendor-upload-page .plm-upload-summary-grid {
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
}

.container.plm-vendor-upload-page .plm-card-value-small {
    font-size: 0.95rem;
    line-height: 1.25;
    word-break: break-word;
    color: #ffffff;
    font-weight: 900;
}

.container.plm-vendor-upload-page .plm-hash {
    font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
    font-size: 0.82rem;
}

.container.plm-vendor-upload-page .plm-preview-sheet-card {
    margin-top: 18px;
}

.container.plm-vendor-upload-page .plm-preview-sheet-card h3 {
    margin: 0;
    font-size: 1.25rem;
}

.container.plm-vendor-upload-page .plm-pill-row {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 8px 0 14px;
}

.container.plm-vendor-upload-page .plm-upload-mapping-table th:nth-child(1),
.container.plm-vendor-upload-page .plm-upload-mapping-table td:nth-child(1) {
    min-width: 180px;
}

.container.plm-vendor-upload-page .plm-upload-mapping-table th:nth-child(2),
.container.plm-vendor-upload-page .plm-upload-mapping-table td:nth-child(2) {
    min-width: 150px;
}

.container.plm-vendor-upload-page .plm-upload-mapping-table th:nth-child(4),
.container.plm-vendor-upload-page .plm-upload-mapping-table td:nth-child(4) {
    min-width: 340px;
}

.container.plm-vendor-upload-page .plm-alert-info {
    border-color: rgba(84, 190, 255, 0.8);
    background: rgba(11, 69, 109, 0.55);
}

@media (max-width: 1100px) {
    .container.plm-vendor-upload-page .plm-upload-grid {
        grid-template-columns: repeat(2, minmax(180px, 1fr));
    }
}

@media (max-width: 720px) {
    .container.plm-vendor-upload-page .plm-upload-grid,
    .container.plm-vendor-upload-page .plm-upload-drop-zone {
        grid-template-columns: 1fr;
    }
}


/* Product Load Manager module styles
   Version: PLM v0.6 approved vendor import additions */

.plm-import-approval-box {
    border-left: 4px solid #f2b84b;
}

.plm-import-approval-form {
    margin-top: 12px;
}

.plm-import-grid {
    display: grid;
    grid-template-columns: minmax(220px, 320px) minmax(220px, 320px);
    gap: 14px;
    align-items: start;
    margin: 12px 0;
}

.plm-button-danger {
    border-color: #f2b84b !important;
    color: #fff !important;
    background: rgba(242, 184, 75, 0.18) !important;
}

.plm-button-danger:hover {
    background: rgba(242, 184, 75, 0.28) !important;
}

.plm-alert-ok {
    border-color: #74f0a7 !important;
    background: rgba(116, 240, 167, 0.10) !important;
}

.plm-code-label {
    color: #8bd0ff;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
    font-size: 12px;
    margin: 10px 0 6px;
}

.plm-code-block {
    display: block;
    max-height: 420px;
    overflow: auto;
    white-space: pre-wrap;
    word-break: break-word;
    padding: 14px;
    border-radius: 12px;
    border: 1px solid rgba(111, 189, 245, 0.35);
    background: rgba(1, 20, 35, 0.55);
    color: #dff3ff;
    font-size: 12px;
    line-height: 1.45;
}

.plm-code-error {
    border-color: rgba(255, 120, 120, 0.55);
    color: #ffd0d0;
}

.plm-safe-list {
    margin: 8px 0 0 20px;
    padding: 0;
}

.plm-safe-list li {
    margin: 6px 0;
}

@media (max-width: 800px) {
    .plm-import-grid {
        grid-template-columns: 1fr;
    }
}



/* Product Load Manager module styles
   Version: PLM v0.6c
   Import-mode safety and running-state helpers. */
.container.plm-page .plm-mode-summary {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.75rem;
}
.container.plm-page .plm-mini-list {
  margin: 0.6rem 0 0;
  padding-left: 1.4rem;
}
.container.plm-page .plm-import-running {
  margin-top: 0.85rem;
  padding: 0.85rem 1rem;
  border: 1px solid rgba(255, 190, 84, 0.85);
  border-left: 5px solid rgba(255, 190, 84, 0.95);
  border-radius: 12px;
  background: rgba(255, 190, 84, 0.12);
  color: #ffffff;
  font-weight: 800;
}

/* PLM Vendor Upload layout cleanup.
   Scoped to the upload page only: form alignment, file picker/drop zone,
   preview summary, and approved-import confirmation layout. */
.container.plm-vendor-upload-page .plm-upload-form {
  max-width: 1280px;
}

.container.plm-vendor-upload-page .plm-upload-grid {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 18px 20px;
  align-items: start;
}

.container.plm-vendor-upload-page .plm-upload-grid > .plm-filter-field {
  grid-column: span 3;
  min-width: 0;
}

.container.plm-vendor-upload-page .plm-upload-grid > .plm-field-vendor,
.container.plm-vendor-upload-page .plm-upload-grid > .plm-upload-span-all {
  grid-column: 1 / -1;
}

.container.plm-vendor-upload-page .plm-upload-grid > .plm-field-vendor {
  max-width: 760px;
}

.container.plm-vendor-upload-page .plm-upload-grid > .plm-filter-field span,
.container.plm-vendor-upload-page .plm-upload-label {
  display: block;
  margin-bottom: 7px;
}

.container.plm-vendor-upload-page .plm-upload-grid > .plm-filter-field select,
.container.plm-vendor-upload-page .plm-upload-grid > .plm-filter-field input {
  width: 100%;
  min-height: 44px;
}

.container.plm-vendor-upload-page .plm-upload-drop-zone {
  grid-template-columns: minmax(0, 1fr);
  gap: 12px;
  min-height: 142px;
  padding: 24px;
}

.container.plm-vendor-upload-page .plm-upload-drop-main {
  max-width: 780px;
}

.container.plm-vendor-upload-page .plm-upload-file-input {
  max-width: 520px;
}

.container.plm-vendor-upload-page .plm-selected-file {
  border: 1px solid rgba(127, 199, 255, 0.22);
  border-radius: 12px;
  background: rgba(1, 20, 35, 0.28);
  padding: 10px 12px;
}

.container.plm-vendor-upload-page .plm-upload-summary-grid {
  gap: 14px;
}

.container.plm-vendor-upload-page .plm-upload-result-section {
  margin-top: 24px;
}

/* PLM Vendor Upload approved-import panel. */
.container.plm-vendor-upload-page .plm-import-approval-box {
  margin-top: 18px;
  padding: 20px;
  border-radius: 14px;
  background: rgba(1, 20, 35, 0.2);
}

.container.plm-vendor-upload-page .plm-import-approval-box .plm-section-head {
  align-items: flex-start;
  gap: 10px;
}

.container.plm-vendor-upload-page .plm-import-approval-box p.plm-muted {
  max-width: 1080px;
  line-height: 1.55;
}

.container.plm-vendor-upload-page .plm-import-grid {
  grid-template-columns: repeat(2, minmax(260px, 360px));
  gap: 10px 14px;
  margin: 14px 0 16px;
}

.container.plm-vendor-upload-page .plm-import-grid .plm-filter-field input {
  box-sizing: border-box;
  width: 100%;
  height: 42px !important;
  min-height: 42px !important;
  padding: 0 12px !important;
  line-height: 1.2 !important;
  border-radius: 10px !important;
}

.container.plm-vendor-upload-page .plm-import-grid .plm-filter-field span {
  margin-bottom: 4px;
  line-height: 1.05;
}

.container.plm-vendor-upload-page .plm-import-grid .plm-filter-field small {
  margin-top: 5px;
  line-height: 1.25;
}

.container.plm-vendor-upload-page .plm-import-approval-form .plm-actions-row {
  align-items: center;
  gap: 12px 16px;
}

.container.plm-vendor-upload-page .plm-import-approval-form .plm-mini-note {
  max-width: 720px;
  line-height: 1.45;
}

@media (max-width: 1180px) {
  .container.plm-vendor-upload-page .plm-upload-grid > .plm-filter-field {
    grid-column: span 4;
  }
}

@media (max-width: 920px) {
  .container.plm-vendor-upload-page .plm-upload-grid > .plm-filter-field {
    grid-column: span 6;
  }

  .container.plm-vendor-upload-page .plm-import-grid {
    grid-template-columns: repeat(2, minmax(220px, 1fr));
  }
}

@media (max-width: 680px) {
  .container.plm-vendor-upload-page .plm-upload-grid {
    grid-template-columns: 1fr;
  }

  .container.plm-vendor-upload-page .plm-upload-grid > .plm-filter-field,
  .container.plm-vendor-upload-page .plm-upload-grid > .plm-field-vendor,
  .container.plm-vendor-upload-page .plm-upload-grid > .plm-upload-span-all,
  .container.plm-vendor-upload-page .plm-import-grid {
    grid-column: 1 / -1;
  }

  .container.plm-vendor-upload-page .plm-import-grid {
    grid-template-columns: 1fr;
  }

  .container.plm-vendor-upload-page .plm-upload-drop-zone,
  .container.plm-vendor-upload-page .plm-import-approval-box {
    padding: 18px;
  }
}
.container.plm-page .plm-button.is-disabled,
.container.plm-page .plm-button:disabled {
  opacity: 0.65;
  cursor: wait;
}


/* Product Load Manager module styles
   Version: PLM v0.6d
   Vendor layout cleanup before Product Load Batches workflow. */

/* Keep PLM workflow tabs aligned with the same module-tab styling used elsewhere
   in Quote Manager. Earlier PLM tab CSS is intentionally overridden here. */
.container.plm-page .plm-top-tabs {
  gap: 10px;
  align-items: center;
  margin: 10px 0 22px;
  padding: 8px;
  border: 1px solid rgba(126, 200, 255, 0.28);
  background: rgba(8, 38, 62, 0.72);
  border-radius: 16px;
  overflow-x: auto;
}

.container.plm-page .plm-top-tab,
.container.plm-page a.plm-top-tab {
  min-height: 42px;
  padding: 10px 16px;
  border-radius: 12px;
  text-decoration: none !important;
  font-weight: 900;
  letter-spacing: 0.01em;
  white-space: nowrap;
}

.container.plm-page .plm-top-tab:not(.active) {
  background: linear-gradient(145deg, var(--sms-medium-blue-3), var(--sms-medium-blue)) !important;
  color: var(--sms-white) !important;
  -webkit-text-fill-color: var(--sms-white) !important;
  border: 1px solid rgba(126, 200, 255, .42) !important;
  box-shadow: 0 8px 18px rgba(8, 41, 68, .18) !important;
}

.container.plm-page .plm-top-tab.active {
  background: linear-gradient(135deg, var(--brand-primary), var(--brand-accent), var(--sms-line-blue)) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border: 1px solid rgba(126, 200, 255, .55) !important;
  box-shadow: 0 10px 22px rgba(8, 41, 68, .24) !important;
}

/* Vendor Library search form: use a real grid instead of the older flex rule so
   labels/controls do not overlap at laptop widths. */
.container.plm-page.plm-vendor-library-page .plm-filter-section {
  overflow: visible !important;
}

.container.plm-page.plm-vendor-library-page .plm-filter-form {
  display: grid !important;
  grid-template-columns: repeat(12, minmax(0, 1fr));
  gap: 14px;
  align-items: end;
}

.container.plm-page.plm-vendor-library-page .plm-filter-form .plm-filter-field {
  min-width: 0;
  flex: none !important;
}

.container.plm-page.plm-vendor-library-page .plm-filter-form .plm-upload-span-all {
  grid-column: 1 / -1;
}

.container.plm-page.plm-vendor-library-page .plm-filter-form label:nth-of-type(2) { grid-column: span 2; }
.container.plm-page.plm-vendor-library-page .plm-filter-form label:nth-of-type(3) { grid-column: span 3; }
.container.plm-page.plm-vendor-library-page .plm-filter-form label:nth-of-type(4) { grid-column: span 2; }
.container.plm-page.plm-vendor-library-page .plm-filter-form label:nth-of-type(5) { grid-column: span 2; }
.container.plm-page.plm-vendor-library-page .plm-filter-form label:nth-of-type(6) { grid-column: span 1; }

.container.plm-page.plm-vendor-library-page .plm-filter-form .plm-filter-actions {
  grid-column: span 2;
  min-width: 0;
  display: flex;
  gap: 10px;
  justify-content: flex-start;
  align-items: center;
}

.container.plm-page.plm-vendor-library-page .plm-filter-form input,
.container.plm-page.plm-vendor-library-page .plm-filter-form select {
  width: 100%;
  min-width: 0 !important;
}

.container.plm-page.plm-vendor-library-page .plm-filter-form .plm-button {
  white-space: nowrap;
}

/* Keep action rows from stretching and repeating text awkwardly. */
.container.plm-page .plm-actions-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}

.container.plm-page .plm-actions-row .plm-muted {
  flex: 1 1 360px;
  min-width: 260px;
}

@media (max-width: 1100px) {
  .container.plm-page.plm-vendor-library-page .plm-filter-form label:nth-of-type(n),
  .container.plm-page.plm-vendor-library-page .plm-filter-form .plm-filter-actions {
    grid-column: span 6;
  }
  .container.plm-page.plm-vendor-library-page .plm-filter-form .plm-upload-span-all {
    grid-column: 1 / -1;
  }
}

@media (max-width: 720px) {
  .container.plm-page.plm-vendor-library-page .plm-filter-form label:nth-of-type(n),
  .container.plm-page.plm-vendor-library-page .plm-filter-form .plm-filter-actions {
    grid-column: 1 / -1;
  }
}


/* Product Load Manager module styles
   Version: PLM v0.7
   Adds legacy SKU reference master-data sections and Images & Documents tab support.
   Appended to dashboard/static/sms_command_center.css.
*/

.container.plm-page .plm-sku-reference-section .plm-grid-tight {
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 12px;
}

.container.plm-page .plm-sku-reference-section h3 {
  margin: 12px 0 8px;
  color: var(--sms-ice, #eaf7ff);
  font-size: 1.05rem;
}

.container.plm-page .plm-sku-reference-section .plm-master-table th,
.container.plm-page .plm-sku-reference-section .plm-master-table td {
  font-size: 0.88rem;
  vertical-align: top;
}

.container.plm-page .plm-top-tabs {
  gap: 10px;
  flex-wrap: wrap;
}

.container.plm-page .plm-top-tab {
  white-space: nowrap;
}


/* Product Load Manager module styles
   Version: PLM v0.8
   Batch workspace / select vendor records / assembly-line tab layout. */
.container.plm-page .plm-batch-builder-page,
.container.plm-page.plm-batch-builder-page {
  max-width: 100%;
}
.container.plm-page .plm-batch-filter-form {
  grid-template-columns: minmax(220px, 1fr) minmax(320px, 2fr) minmax(220px, 1fr) minmax(340px, 2fr) minmax(110px, .5fr);
  align-items: end;
}
.container.plm-page .plm-filter-wide {
  min-width: 280px;
}
.container.plm-page .plm-filter-check {
  display: flex;
  gap: .45rem;
  align-items: center;
  min-height: 42px;
  color: var(--sms-text, #fff);
  font-weight: 700;
}
.container.plm-page .plm-create-batch-controls {
  display: grid;
  grid-template-columns: minmax(260px, 1.2fr) minmax(300px, 1.8fr) minmax(180px, .8fr);
  gap: .75rem;
  margin-bottom: .9rem;
  align-items: end;
}
.container.plm-page .plm-table-wrap {
  overflow-x: auto;
  width: 100%;
  border-radius: 12px;
}
.container.plm-page .plm-batch-candidate-table th,
.container.plm-page .plm-batch-candidate-table td,
.container.plm-page .plm-workflow-table th,
.container.plm-page .plm-workflow-table td {
  white-space: normal;
  vertical-align: top;
}
.container.plm-page .plm-batch-candidate-table td:first-child,
.container.plm-page .plm-batch-candidate-table th:first-child {
  text-align: center;
  width: 54px;
}
.container.plm-page .plm-workflow-tab-page .plm-grid-tight {
  margin-bottom: 1rem;
}
.container.plm-page .plm-workflow-table td {
  min-width: 90px;
}
.container.plm-page .plm-code-block {
  white-space: pre-wrap;
  overflow-x: auto;
  max-height: 420px;
}
@media (max-width: 1100px) {
  .container.plm-page .plm-batch-filter-form,
  .container.plm-page .plm-create-batch-controls {
    grid-template-columns: 1fr;
  }
}


/* Product Load Manager module styles
   Version: PLM v0.8a
   Batch workspace alignment and vendor dropdown de-dup display.
   Keep PLM styling in the shared sms_command_center.css file. */

/* Make PLM workflow tabs behave like the Quote Manager module tabs instead of oversized cards. */
.container.plm-page .plm-top-tabs {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  align-items: center !important;
  margin: 0 0 24px !important;
  padding: 10px !important;
  border: 1px solid var(--sms-dark-border) !important;
  border-radius: 16px !important;
  background: rgba(8, 41, 68, .34) !important;
}
.container.plm-page .plm-top-tabs .plm-top-tab.module-tab {
  width: auto !important;
  min-width: 0 !important;
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 18px !important;
  border-radius: 12px !important;
  font-size: 14px !important;
  line-height: 1 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  white-space: nowrap !important;
  flex: 0 0 auto !important;
}
.container.plm-page .plm-top-tabs .plm-top-tab.module-tab.active {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

/* Batch builder search form alignment. */
.container.plm-page .plm-batch-filter-form {
  display: grid !important;
  grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  gap: 14px !important;
  align-items: end !important;
  overflow: visible !important;
}
.container.plm-page .plm-batch-filter-form .plm-filter-field,
.container.plm-page .plm-batch-filter-form .plm-filter-wide,
.container.plm-page .plm-batch-filter-form .plm-filter-check,
.container.plm-page .plm-batch-filter-form .plm-actions-row {
  min-width: 0 !important;
  width: 100% !important;
}
.container.plm-page .plm-batch-filter-form .plm-filter-field select,
.container.plm-page .plm-batch-filter-form .plm-filter-field input {
  width: 100% !important;
  box-sizing: border-box !important;
}
.container.plm-page .plm-batch-filter-form .plm-field-vendor { grid-column: span 3 !important; }
.container.plm-page .plm-batch-filter-form .plm-field-search { grid-column: span 4 !important; }
.container.plm-page .plm-batch-filter-form .plm-field-category { grid-column: span 3 !important; }
.container.plm-page .plm-batch-filter-form .plm-field-target-category { grid-column: span 4 !important; }
.container.plm-page .plm-batch-filter-form .plm-field-rows { grid-column: span 2 !important; }
.container.plm-page .plm-batch-filter-form .plm-filter-check { grid-column: span 2 !important; }
.container.plm-page .plm-batch-filter-form .plm-field-batch-name { grid-column: span 7 !important; }
.container.plm-page .plm-batch-filter-form .plm-actions-row { grid-column: span 5 !important; align-self: end !important; margin: 0 !important; }
.container.plm-page .plm-batch-filter-form .plm-actions-row .plm-button { min-height: 44px !important; }

.container.plm-page .plm-create-batch-controls {
  display: grid !important;
  grid-template-columns: minmax(240px, 2fr) minmax(240px, 2fr) minmax(170px, 1fr) !important;
  gap: 14px !important;
  align-items: end !important;
}

.container.plm-page .plm-batch-candidate-table th,
.container.plm-page .plm-batch-candidate-table td {
  vertical-align: top !important;
}
.container.plm-page .plm-batch-candidate-table th:nth-child(5),
.container.plm-page .plm-batch-candidate-table td:nth-child(5) {
  min-width: 260px !important;
}
.container.plm-page .plm-batch-candidate-table th:nth-child(11),
.container.plm-page .plm-batch-candidate-table td:nth-child(11) {
  min-width: 210px !important;
}

@media (max-width: 1250px) {
  .container.plm-page .plm-batch-filter-form {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }
  .container.plm-page .plm-batch-filter-form .plm-field-vendor,
  .container.plm-page .plm-batch-filter-form .plm-field-category,
  .container.plm-page .plm-batch-filter-form .plm-field-target-category,
  .container.plm-page .plm-batch-filter-form .plm-field-search,
  .container.plm-page .plm-batch-filter-form .plm-field-batch-name,
  .container.plm-page .plm-batch-filter-form .plm-actions-row { grid-column: span 6 !important; }
  .container.plm-page .plm-batch-filter-form .plm-field-rows,
  .container.plm-page .plm-batch-filter-form .plm-filter-check { grid-column: span 3 !important; }
}
@media (max-width: 760px) {
  .container.plm-page .plm-batch-filter-form,
  .container.plm-page .plm-create-batch-controls {
    grid-template-columns: 1fr !important;
  }
  .container.plm-page .plm-batch-filter-form .plm-filter-field,
  .container.plm-page .plm-batch-filter-form .plm-filter-check,
  .container.plm-page .plm-batch-filter-form .plm-actions-row { grid-column: 1 / -1 !important; }
}


/* Product Load Manager module styles
   Version: PLM v0.8b
   Batch builder usability cleanup: visible create controls, choose-all, category filtering, and tighter workflow tabs.
   Keep PLM styling in the shared sms_command_center.css file. */

.container.plm-page .plm-top-tabs {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  align-items: center !important;
  margin: 6px 0 22px !important;
  padding: 8px !important;
  border: 1px solid rgba(126, 200, 255, 0.28) !important;
  background: rgba(8, 38, 62, 0.72) !important;
  border-radius: 14px !important;
  overflow-x: auto !important;
}

.container.plm-page .plm-top-tab.module-tab,
.container.plm-page a.plm-top-tab.module-tab {
  width: auto !important;
  min-width: 0 !important;
  min-height: 38px !important;
  padding: 9px 15px !important;
  border-radius: 10px !important;
  font-size: 0.94rem !important;
  line-height: 1.15 !important;
  letter-spacing: 0 !important;
  text-decoration: none !important;
  text-transform: none !important;
  white-space: nowrap !important;
  flex: 0 0 auto !important;
}

.container.plm-page .plm-top-tab.module-tab.active {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

.container.plm-page.plm-batch-builder-page .plm-batch-filter-form {
  display: grid !important;
  grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  gap: 14px !important;
  align-items: end !important;
  overflow: visible !important;
}

.container.plm-page.plm-batch-builder-page .plm-batch-filter-form .plm-filter-field,
.container.plm-page.plm-batch-builder-page .plm-batch-filter-form .plm-filter-check,
.container.plm-page.plm-batch-builder-page .plm-batch-filter-form .plm-actions-row,
.container.plm-page .plm-create-batch-controls-v08b .plm-filter-field,
.container.plm-page .plm-create-batch-controls-v08b .plm-filter-check {
  min-width: 0 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

.container.plm-page.plm-batch-builder-page input,
.container.plm-page.plm-batch-builder-page select {
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.container.plm-page.plm-batch-builder-page .plm-batch-filter-form .plm-field-vendor { grid-column: span 3 !important; }
.container.plm-page.plm-batch-builder-page .plm-batch-filter-form .plm-field-search { grid-column: span 4 !important; }
.container.plm-page.plm-batch-builder-page .plm-batch-filter-form .plm-field-category { grid-column: span 3 !important; }
.container.plm-page.plm-batch-builder-page .plm-batch-filter-form .plm-field-rows { grid-column: span 2 !important; }
.container.plm-page.plm-batch-builder-page .plm-batch-filter-form .plm-filter-check { grid-column: span 2 !important; min-height: 42px !important; }
.container.plm-page.plm-batch-builder-page .plm-batch-filter-form .plm-field-batch-name { grid-column: span 7 !important; }
.container.plm-page.plm-batch-builder-page .plm-batch-filter-form .plm-actions-row { grid-column: span 5 !important; align-self: end !important; justify-content: flex-start !important; margin: 0 !important; }

.container.plm-page .plm-batch-summary-grid {
  margin-top: 16px !important;
}

.container.plm-page .plm-create-batch-sticky-panel {
  border-left: 5px solid var(--sms-warn, #f4b84a) !important;
}

.container.plm-page .plm-create-batch-controls-v08b {
  display: grid !important;
  grid-template-columns: repeat(12, minmax(0, 1fr)) !important;
  gap: 14px !important;
  align-items: end !important;
}

.container.plm-page .plm-create-batch-controls-v08b .plm-create-category-search { grid-column: span 3 !important; }
.container.plm-page .plm-create-batch-controls-v08b .plm-create-category-select { grid-column: span 5 !important; }
.container.plm-page .plm-create-batch-controls-v08b .plm-pending-category-check { grid-column: span 4 !important; align-self: center !important; }
.container.plm-page .plm-create-batch-controls-v08b .plm-filter-wide { grid-column: span 4 !important; }
.container.plm-page .plm-create-batch-controls-v08b .plm-confirm-create-field { grid-column: span 2 !important; }
.container.plm-page .plm-create-batch-controls-v08b .plm-create-actions-main { grid-column: span 3 !important; display: flex !important; flex-direction: column !important; gap: 8px !important; }
.container.plm-page .plm-create-batch-controls-v08b .plm-create-actions-secondary { grid-column: span 3 !important; display: flex !important; flex-wrap: wrap !important; gap: 8px !important; align-items: center !important; }

.container.plm-page .plm-confirm-create-field input::placeholder {
  color: transparent !important;
}

.container.plm-page .plm-candidate-head {
  margin-top: 22px !important;
}

.container.plm-page .plm-batch-candidate-table th,
.container.plm-page .plm-batch-candidate-table td {
  vertical-align: top !important;
}

.container.plm-page .plm-batch-candidate-table th:nth-child(5),
.container.plm-page .plm-batch-candidate-table td:nth-child(5) {
  min-width: 290px !important;
}

.container.plm-page .plm-batch-candidate-table th:nth-child(11),
.container.plm-page .plm-batch-candidate-table td:nth-child(11) {
  min-width: 220px !important;
}

@media (max-width: 1350px) {
  .container.plm-page.plm-batch-builder-page .plm-batch-filter-form,
  .container.plm-page .plm-create-batch-controls-v08b {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
  }
  .container.plm-page.plm-batch-builder-page .plm-batch-filter-form > *,
  .container.plm-page .plm-create-batch-controls-v08b > * {
    grid-column: span 6 !important;
  }
}

@media (max-width: 760px) {
  .container.plm-page.plm-batch-builder-page .plm-batch-filter-form,
  .container.plm-page .plm-create-batch-controls-v08b {
    grid-template-columns: 1fr !important;
  }
  .container.plm-page.plm-batch-builder-page .plm-batch-filter-form > *,
  .container.plm-page .plm-create-batch-controls-v08b > * {
    grid-column: 1 / -1 !important;
  }
}


/* Product Load Manager module styles
   Version: PLM v0.8d
   Batch builder submit-state fix and top create rail. Keep PLM styling in the shared sms_command_center.css file. */

.container.plm-page .plm-create-batch-controls-v08c {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 16px !important;
  align-items: stretch !important;
}

.container.plm-page .plm-batch-create-rail {
  display: grid !important;
  grid-template-columns: minmax(280px, 1.4fr) minmax(300px, 1.1fr) minmax(220px, .75fr) !important;
  gap: 14px !important;
  align-items: end !important;
  padding: 14px !important;
  border: 1px solid rgba(126, 200, 255, 0.28) !important;
  border-radius: 16px !important;
  background: rgba(8, 41, 68, 0.38) !important;
}

.container.plm-page .plm-batch-create-rail-copy h3 {
  margin: 0 0 6px !important;
  color: var(--sms-ice, #eaf7ff) !important;
  font-size: 1.05rem !important;
}

.container.plm-page .plm-batch-create-rail-copy p {
  margin: 0 0 8px !important;
}

.container.plm-page .plm-create-confirm-group {
  display: grid !important;
  grid-template-columns: minmax(190px, 1fr) auto !important;
  gap: 10px !important;
  align-items: end !important;
}

.container.plm-page .plm-create-confirm-group .plm-confirm-create-field {
  min-width: 0 !important;
  margin: 0 !important;
}

.container.plm-page .plm-create-confirm-group .plm-confirm-create-field input {
  min-height: 44px !important;
  font-weight: 900 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
}

.container.plm-page .plm-create-primary-button {
  min-height: 44px !important;
  padding: 10px 18px !important;
  white-space: nowrap !important;
}

.container.plm-page .plm-create-primary-button:disabled {
  opacity: .72 !important;
  cursor: wait !important;
  transform: none !important;
}

.container.plm-page .plm-selection-tools {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

.container.plm-page .plm-selection-tools .plm-button {
  min-height: 40px !important;
}

.container.plm-page .plm-category-control-grid {
  display: grid !important;
  grid-template-columns: minmax(240px, 1fr) minmax(420px, 2fr) minmax(240px, .9fr) !important;
  gap: 14px !important;
  align-items: end !important;
}

.container.plm-page .plm-category-control-grid .plm-filter-field,
.container.plm-page .plm-batch-notes-grid .plm-filter-field {
  min-width: 0 !important;
  width: 100% !important;
}

.container.plm-page .plm-category-control-grid select,
.container.plm-page .plm-category-control-grid input,
.container.plm-page .plm-batch-notes-grid input {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.container.plm-page .plm-pending-category-check {
  min-height: 44px !important;
  align-self: center !important;
}

.container.plm-page .plm-batch-notes-grid {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(260px, 1fr)) !important;
  gap: 14px !important;
  align-items: end !important;
}

.container.plm-page .plm-proposed-sku-pending {
  color: var(--sms-muted, #b7c9d8) !important;
  font-style: italic !important;
}

.container.plm-page .plm-confirm-create-field input::placeholder {
  color: transparent !important;
}

@media (max-width: 1250px) {
  .container.plm-page .plm-batch-create-rail,
  .container.plm-page .plm-category-control-grid,
  .container.plm-page .plm-batch-notes-grid,
  .container.plm-page .plm-create-confirm-group {
    grid-template-columns: 1fr !important;
  }
}

/* Product Load Manager module styles
   Version: PLM v0.8f
   Background Vendor Product Library import progress page. */
.container.plm-vendor-import-progress-page .plm-import-progress-shell {
  border-left: 4px solid rgba(84, 190, 255, 0.9);
}

.container.plm-vendor-import-progress-page .plm-import-progress-meter {
  display: block;
  width: 100%;
  height: 24px;
  margin: 10px 0 6px;
  border: 1px solid rgba(111, 189, 245, 0.45);
  border-radius: 999px;
  background: rgba(1, 20, 35, 0.58);
  overflow: hidden;
}

.container.plm-vendor-import-progress-page .plm-import-progress-meter::-webkit-progress-bar {
  background: rgba(1, 20, 35, 0.58);
  border-radius: 999px;
}

.container.plm-vendor-import-progress-page .plm-import-progress-meter::-webkit-progress-value {
  background: linear-gradient(90deg, rgba(84, 190, 255, 0.82), rgba(116, 240, 167, 0.82));
  border-radius: 999px;
}

.container.plm-vendor-import-progress-page .plm-import-progress-meter::-moz-progress-bar {
  background: linear-gradient(90deg, rgba(84, 190, 255, 0.82), rgba(116, 240, 167, 0.82));
  border-radius: 999px;
}

.container.plm-vendor-import-progress-page .plm-import-progress-percent {
  color: #dff3ff;
  font-weight: 800;
  text-align: right;
  margin-bottom: 12px;
}

.container.plm-vendor-import-progress-page .plm-import-progress-grid {
  grid-template-columns: repeat(5, minmax(120px, 1fr));
  margin-top: 12px;
}

.container.plm-vendor-import-progress-page .plm-import-count-grid {
  grid-template-columns: repeat(5, minmax(120px, 1fr));
}

.container.plm-vendor-import-progress-page .plm-import-progress-safe {
  margin-top: 16px;
}

.container.plm-vendor-import-progress-page .plm-import-progress-log {
  max-height: 260px;
}

@media (max-width: 1050px) {
  .container.plm-vendor-import-progress-page .plm-import-progress-grid,
  .container.plm-vendor-import-progress-page .plm-import-count-grid {
    grid-template-columns: repeat(2, minmax(160px, 1fr));
  }
}

@media (max-width: 650px) {
  .container.plm-vendor-import-progress-page .plm-import-progress-grid,
  .container.plm-vendor-import-progress-page .plm-import-count-grid {
    grid-template-columns: 1fr;
  }
}

/* Product Load Manager module styles
   Version: PLM v0.8g
   Batch builder category keyword chooser and create-rail layout cleanup. */
.container.plm-page .plm-create-batch-controls-v08c .plm-batch-create-rail {
  grid-template-columns: minmax(280px, 1.25fr) minmax(360px, .95fr) !important;
  align-items: start !important;
}

.container.plm-page .plm-create-batch-controls-v08c .plm-selection-tools {
  grid-column: 1 / -1 !important;
  justify-content: flex-start !important;
  border-top: 1px solid rgba(126, 200, 255, 0.18) !important;
  padding-top: 10px !important;
}

.container.plm-page .plm-create-batch-controls-v08c .plm-create-confirm-group {
  grid-template-columns: minmax(220px, 1fr) minmax(220px, auto) !important;
  align-items: start !important;
}

.container.plm-page .plm-create-batch-controls-v08c .plm-create-primary-button {
  margin-top: 20px !important;
  max-width: 100% !important;
  white-space: normal !important;
  line-height: 1.15 !important;
}

.container.plm-page .plm-category-control-grid-v08g {
  display: grid !important;
  grid-template-columns: minmax(520px, 1fr) minmax(210px, .28fr) !important;
  gap: 16px !important;
  align-items: start !important;
}

.container.plm-page .plm-category-finder-v08g {
  min-width: 0 !important;
}

.container.plm-page .plm-category-search-input {
  min-height: 48px !important;
  font-size: 1rem !important;
  font-weight: 800 !important;
}

.container.plm-page .plm-category-choice-list {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 6px !important;
  max-height: 260px !important;
  overflow: auto !important;
  margin-top: 8px !important;
  padding: 8px !important;
  border: 1px solid rgba(126, 200, 255, 0.28) !important;
  border-radius: 14px !important;
  background: rgba(4, 28, 47, 0.50) !important;
}

.container.plm-page .plm-category-choice {
  display: grid !important;
  grid-template-columns: 22px 1fr !important;
  gap: 8px !important;
  align-items: start !important;
  padding: 8px 10px !important;
  border: 1px solid rgba(126, 200, 255, 0.16) !important;
  border-radius: 12px !important;
  background: rgba(10, 54, 86, 0.36) !important;
  color: var(--sms-ice, #eaf7ff) !important;
  cursor: pointer !important;
}

.container.plm-page .plm-category-choice:hover,
.container.plm-page .plm-category-choice:focus-within {
  border-color: rgba(91, 190, 255, 0.65) !important;
  background: rgba(13, 92, 139, 0.44) !important;
}

.container.plm-page .plm-category-choice input[type="radio"] {
  margin-top: 3px !important;
}

.container.plm-page .plm-category-choice-main {
  min-width: 0 !important;
  line-height: 1.22 !important;
  overflow-wrap: anywhere !important;
}

.container.plm-page .plm-category-choice-hidden {
  display: none !important;
}

.container.plm-page .plm-pending-category-check {
  align-self: start !important;
  margin-top: 27px !important;
  padding: 10px 12px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(126, 200, 255, 0.22) !important;
  background: rgba(8, 41, 68, 0.38) !important;
}

@media (max-width: 1250px) {
  .container.plm-page .plm-create-batch-controls-v08c .plm-batch-create-rail,
  .container.plm-page .plm-category-control-grid-v08g,
  .container.plm-page .plm-create-batch-controls-v08c .plm-create-confirm-group {
    grid-template-columns: 1fr !important;
  }
  .container.plm-page .plm-create-batch-controls-v08c .plm-create-primary-button,
  .container.plm-page .plm-pending-category-check {
    margin-top: 0 !important;
  }
}


/* ==========================================
   Version: PLM v0.9c Product Info active-batch Jinja fix
   ========================================== */
.plm-product-info-summary .plm-card-text { font-size: clamp(1.05rem, 1.5vw, 1.35rem); line-height: 1.25; }
.plm-sop-panel textarea.plm-sop-textarea { min-height: 16rem; font-family: ui-monospace, SFMono-Regular, Consolas, monospace; font-size: .9rem; }
.plm-form-actions, .plm-product-info-row-actions { display:flex; align-items:center; gap:.9rem; flex-wrap:wrap; margin-top:1rem; }
.plm-generate-grid { display:grid; grid-template-columns:minmax(220px, 320px) minmax(220px, 1fr) minmax(180px, 240px) auto; gap:1rem; align-items:end; }
.plm-checkbox-card { border:1px solid rgba(105,183,255,.45); background:rgba(6,38,65,.55); border-radius:12px; padding:.9rem; font-weight:700; display:flex; gap:.6rem; align-items:center; min-height:3.2rem; }
.plm-generate-submit { display:flex; align-items:end; }
.plm-product-info-card { border:1px solid rgba(105,183,255,.35); background:rgba(8,45,75,.72); border-radius:16px; padding:1rem; margin:1rem 0; box-shadow: inset 0 0 0 1px rgba(255,255,255,.02); }
.plm-product-info-card-head { display:flex; justify-content:space-between; align-items:flex-start; gap:1rem; margin-bottom:1rem; }
.plm-product-info-card-head h3 { margin:.1rem 0 .25rem; }
.plm-product-info-card-actions { display:flex; align-items:center; gap:.65rem; flex-wrap:wrap; justify-content:flex-end; }
.plm-product-info-edit-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }
.plm-product-info-html-editor { grid-column:1 / -1; }
.plm-html-textarea { font-family:ui-monospace, SFMono-Regular, Consolas, monospace; min-height:10rem; }
.plm-source-facts-box { border:1px solid rgba(105,183,255,.25); border-radius:12px; padding:.75rem; background:rgba(2,29,49,.55); color:#d7ecff; font-size:.9rem; line-height:1.45; min-height:8rem; }
.plm-preview-modal[hidden] { display:none; }
.plm-preview-modal { position:fixed; inset:0; z-index:9999; display:flex; align-items:center; justify-content:center; padding:2rem; }
.plm-preview-modal-backdrop { position:absolute; inset:0; background:rgba(0,10,25,.78); backdrop-filter:blur(4px); }
.plm-preview-modal-card { position:relative; width:min(980px, 96vw); max-height:88vh; overflow:auto; border:1px solid rgba(105,183,255,.55); border-radius:18px; background:#f8fbff; color:#102235; box-shadow:0 24px 80px rgba(0,0,0,.45); }
.plm-preview-modal-head { position:sticky; top:0; z-index:1; display:flex; justify-content:space-between; align-items:center; gap:1rem; padding:1rem 1.2rem; background:#092f52; color:#fff; }
.plm-preview-modal-head h2 { margin:0; }
.plm-preview-render { padding:1.25rem; font-size:1rem; line-height:1.55; }
.plm-preview-render p { margin:0 0 1rem; }
.plm-preview-render ul { margin:.5rem 0 1rem 1.3rem; }
.plm-preview-render hr { border:0; border-top:1px solid #d7e3ef; margin:1.2rem 0; }
.plm-log-box { width:100%; max-height:18rem; overflow:auto; border:1px solid rgba(105,183,255,.35); border-radius:10px; padding:.85rem; background:#041e33; color:#e4f4ff; }
.plm-log-error { border-color:rgba(255,100,100,.65); }
body.plm-modal-open { overflow:hidden; }
@media (max-width: 900px) {
  .plm-generate-grid, .plm-product-info-edit-grid { grid-template-columns:1fr; }
  .plm-product-info-card-head { flex-direction:column; }
  .plm-product-info-card-actions { justify-content:flex-start; }
}

/* ==========================================
   Version: PLM v0.9g Product Info grid + Global TSV/TXT intake
   ========================================== */
.plm-product-info-grid-section .plm-section-head { align-items:flex-start; }
.plm-table-top-scroll { width:100%; overflow-x:auto; overflow-y:hidden; height:18px; border:1px solid rgba(105,183,255,.24); border-bottom:0; border-radius:14px 14px 0 0; background:rgba(4,30,51,.55); }
.container.plm-page .plm-table-top-scroll { position:sticky; top:0; z-index:24; background:#082f4c; box-shadow:0 4px 10px rgba(2,20,34,.32); }
.container.plm-page { overflow-x:clip; overflow-y:visible; }
.container.plm-product-info-page .plm-product-info-grid-section,
.container.plm-publish-preview-page .plm-product-info-grid-section,
.container.plm-spec-sheet-page .plm-spec-edit-grid-section,
.container.plm-images-docs-page .plm-images-docs-section { overflow:visible !important; }
.plm-table-top-scroll-inner { height:1px; min-width:100%; }
.plm-product-info-grid-wrap { width:100%; overflow:auto; border-radius:0 0 14px 14px; border:1px solid rgba(105,183,255,.24); }
.plm-product-info-draft-grid { min-width: 1500px; table-layout: fixed; margin:0; }
.plm-product-info-draft-grid th,
.plm-product-info-draft-grid td { vertical-align:top; }
.plm-product-info-draft-grid .plm-pi-col-item { width:105px; }
.plm-product-info-draft-grid .plm-pi-col-sku { width:210px; }
.plm-product-info-draft-grid .plm-pi-col-name { width:250px; }
.plm-product-info-draft-grid .plm-pi-col-title { width:250px; }
.plm-product-info-draft-grid .plm-pi-col-meta { width:280px; }
.plm-product-info-draft-grid .plm-pi-col-html { width:330px; }
.plm-product-info-draft-grid .plm-pi-col-notes { width:190px; }
.plm-product-info-draft-grid .plm-pi-col-actions { width:145px; }
.plm-pi-item-cell, .plm-pi-sku-cell, .plm-pi-notes-cell, .plm-pi-actions-cell { font-size:.87rem; line-height:1.35; }
.plm-pi-grid-cell { cursor:pointer; position:relative; background:rgba(10,47,78,.58); transition:background .15s ease, box-shadow .15s ease; }
.plm-pi-grid-cell:hover { background:rgba(19,82,126,.72); box-shadow: inset 0 0 0 1px rgba(126,200,255,.45); }
.plm-pi-grid-cell:after { content:'click to open'; position:absolute; right:.45rem; bottom:.3rem; color:#8fd2ff; font-size:.65rem; opacity:.72; text-transform:uppercase; letter-spacing:.04em; }
.plm-pi-cell-preview { max-height:5.8rem; overflow:hidden; white-space:normal; line-height:1.35; color:#eef8ff; padding-bottom:1rem; }
.plm-pi-html-preview { font-family:ui-monospace, SFMono-Regular, Consolas, monospace; font-size:.78rem; color:#d8efff; }
.plm-pi-cell-edited { box-shadow: inset 0 0 0 2px rgba(106,218,153,.7) !important; }
.plm-cell-editor-card { width:min(1050px, 96vw); }
.plm-cell-editor-body { padding:1.2rem; background:#f8fbff; color:#102235; }
.plm-cell-editor-textarea { width:100%; min-height:24rem; font-family:ui-monospace, SFMono-Regular, Consolas, monospace; font-size:.95rem; color:#102235 !important; background:#fff !important; border:1px solid #bfd4e8 !important; }
.plm-pi-actions-cell .plm-button { white-space:nowrap; padding:.7rem .85rem; }
.plm-log-box { white-space:pre-wrap; overflow-wrap:anywhere; word-break:break-word; }
.plm-product-info-progress-page .plm-log-box { white-space:pre-wrap; overflow-wrap:anywhere; }
@media (max-width: 900px) {
  .plm-product-info-draft-grid { min-width: 1250px; }
  .plm-cell-editor-textarea { min-height:18rem; }
}
.plm-sop-form { display:grid; grid-template-columns:minmax(220px, 360px) 1fr; gap:.7rem 1rem; align-items:start; }
.plm-sop-form .plm-label { align-self:center; }
.plm-sop-form .plm-sop-textarea { width:100%; }
.plm-sop-form .plm-form-actions { grid-column:1 / -1; }
@media (max-width: 900px) { .plm-sop-form { grid-template-columns:1fr; } }

/* ==========================================
   Version: PLM v0.9g Spec Sheet grid + Claude staging
   ========================================== */
.plm-spec-grid-wrap {
  overflow-x: auto;
}
.plm-spec-grid-table {
  min-width: 1400px;
  table-layout: fixed;
}
.plm-spec-grid-table th:nth-child(1),
.plm-spec-grid-table td:nth-child(1) { width: 110px; }
.plm-spec-grid-table th:nth-child(2),
.plm-spec-grid-table td:nth-child(2) { width: 190px; }
.plm-spec-grid-table th:nth-child(3),
.plm-spec-grid-table td:nth-child(3) { width: 260px; }
.plm-spec-grid-table th:last-child,
.plm-spec-grid-table td:last-child { width: 140px; }
.plm-spec-grid-cell {
  min-width: 135px;
  max-width: 180px;
  cursor: pointer;
  vertical-align: top;
  position: relative;
}
.plm-spec-cell-preview {
  min-height: 3.6rem;
  max-height: 5.2rem;
  overflow: hidden;
  line-height: 1.25;
  white-space: normal;
}
.plm-spec-grid-cell::after {
  content: "click to edit";
  display: block;
  margin-top: .55rem;
  color: #79caff;
  opacity: .75;
  font-size: .68rem;
  text-transform: uppercase;
  letter-spacing: .07em;
}
.plm-spec-cell-edited {
  outline: 2px solid rgba(105, 220, 180, .55);
  outline-offset: -2px;
}
.plm-spec-warning-cell {
  width: 240px;
  max-width: 260px;
  vertical-align: top;
  font-size: .84rem;
}
.plm-spec-preview-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 1rem;
}
.plm-spec-preview-table th,
.plm-spec-preview-table td {
  border-bottom: 1px solid rgba(5, 78, 155, .18);
  padding: .65rem .75rem;
  vertical-align: top;
  text-align: left;
}
.plm-spec-preview-table th {
  width: 220px;
  color: #054e9b;
}
.plm-spec-generate-section .plm-inline-form-grid {
  align-items: center;
}
.plm-spec-sheet-progress-page .plm-log-box,
.plm-product-info-progress-page .plm-log-box {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  overflow-x: hidden;
}

/* ==========================================
   Version: PLM v0.9g Spec Sheet reserved-field cleanup + compact grid
   ========================================== */
.plm-spec-grid-wrap {
  width: 100%;
  overflow: auto;
  max-height: 70vh;
  border-radius: 14px;
}
.plm-spec-grid-table {
  min-width: 1650px;
  table-layout: fixed;
  margin: 0;
}
.plm-spec-grid-table th,
.plm-spec-grid-table td {
  vertical-align: top;
  line-height: 1.28;
  padding: .55rem .65rem;
  white-space: normal;
  overflow-wrap: normal;
  word-break: normal;
}
.plm-spec-grid-table tbody tr {
  height: auto !important;
}
.plm-spec-grid-table .plm-spec-col-item,
.plm-spec-grid-table .plm-spec-item-cell { width: 120px; }
.plm-spec-grid-table .plm-spec-col-sku,
.plm-spec-grid-table .plm-spec-sku-cell { width: 190px; }
.plm-spec-grid-table .plm-spec-col-product,
.plm-spec-grid-table .plm-spec-product-cell { width: 260px; }
.plm-spec-grid-table .plm-spec-col-field,
.plm-spec-grid-table .plm-spec-grid-cell { width: 150px; min-width: 150px; max-width: 150px; }
.plm-spec-grid-table .plm-spec-col-warnings,
.plm-spec-grid-table .plm-spec-warning-cell { width: 260px; }
.plm-spec-grid-table .plm-spec-col-preview,
.plm-spec-grid-table .plm-pi-actions-cell { width: 140px; }
.plm-spec-static-cell,
.plm-spec-grid-cell,
.plm-spec-warning-cell,
.plm-pi-actions-cell {
  font-size: .82rem;
}
.plm-spec-static-preview,
.plm-spec-cell-preview,
.plm-spec-warning-cell {
  max-height: 4.8rem;
  overflow: hidden;
}
.plm-spec-cell-preview {
  min-height: 1.35rem;
  line-height: 1.28;
  padding-bottom: .85rem;
}
.plm-spec-grid-cell::after {
  position: absolute;
  right: .45rem;
  bottom: .25rem;
  margin-top: 0;
  font-size: .62rem;
  letter-spacing: .05em;
}
.plm-spec-grid-cell {
  background: rgba(10, 47, 78, .42);
  position: relative;
  padding-bottom: 1.3rem !important;
}
.plm-spec-grid-cell:hover {
  background: rgba(19, 82, 126, .72);
  box-shadow: inset 0 0 0 1px rgba(126,200,255,.45);
}
.plm-spec-preview-btn {
  white-space: nowrap;
  padding: .65rem .85rem !important;
}
.plm-spec-grid-table thead th {
  position: sticky;
  top: 0;
  z-index: 2;
}

/* ==========================================
   Version: PLM v0.9h Spec Sheet compact spreadsheet rows
   Purpose: Make Spec Sheet grid rows compact like Product Info grid.
   Data behavior changed: none. CSS only.
   ========================================== */
.container.plm-page .plm-spec-grid-wrap {
  width: 100% !important;
  overflow: auto !important;
  max-height: none !important;
  border-radius: 14px !important;
}

.container.plm-page .plm-spec-grid-table {
  table-layout: fixed !important;
  min-width: 1650px !important;
  width: max-content !important;
  margin: 0 !important;
}

.container.plm-page .plm-spec-grid-table thead th {
  height: auto !important;
  max-height: none !important;
  padding: .48rem .58rem !important;
  line-height: 1.12 !important;
  position: sticky !important;
  top: 0 !important;
  z-index: 2 !important;
}

.container.plm-page .plm-spec-grid-table tbody tr {
  height: 92px !important;
  max-height: 92px !important;
}

.container.plm-page .plm-spec-grid-table tbody td {
  height: 92px !important;
  max-height: 92px !important;
  padding: .42rem .58rem !important;
  line-height: 1.2 !important;
  vertical-align: top !important;
  overflow: hidden !important;
}

.container.plm-page .plm-spec-grid-table .plm-spec-col-item,
.container.plm-page .plm-spec-grid-table .plm-spec-item-cell { width: 115px !important; min-width:115px !important; max-width:115px !important; }
.container.plm-page .plm-spec-grid-table .plm-spec-col-sku,
.container.plm-page .plm-spec-grid-table .plm-spec-sku-cell { width: 185px !important; min-width:185px !important; max-width:185px !important; }
.container.plm-page .plm-spec-grid-table .plm-spec-col-product,
.container.plm-page .plm-spec-grid-table .plm-spec-product-cell { width: 260px !important; min-width:260px !important; max-width:260px !important; }
.container.plm-page .plm-spec-grid-table .plm-spec-col-field,
.container.plm-page .plm-spec-grid-table .plm-spec-grid-cell { width: 150px !important; min-width:150px !important; max-width:150px !important; }
.container.plm-page .plm-spec-grid-table .plm-spec-col-warnings,
.container.plm-page .plm-spec-grid-table .plm-spec-warning-cell { width: 260px !important; min-width:260px !important; max-width:260px !important; }
.container.plm-page .plm-spec-grid-table .plm-spec-col-preview,
.container.plm-page .plm-spec-grid-table .plm-pi-actions-cell { width: 135px !important; min-width:135px !important; max-width:135px !important; }

.container.plm-page .plm-spec-static-cell,
.container.plm-page .plm-spec-grid-cell,
.container.plm-page .plm-spec-warning-cell,
.container.plm-page .plm-spec-grid-table .plm-pi-actions-cell {
  font-size: .78rem !important;
  line-height: 1.2 !important;
}

.container.plm-page .plm-spec-static-preview,
.container.plm-page .plm-spec-cell-preview {
  display: -webkit-box !important;
  -webkit-box-orient: vertical !important;
  -webkit-line-clamp: 3 !important;
  overflow: hidden !important;
  max-height: 3.6rem !important;
  min-height: 0 !important;
  line-height: 1.2 !important;
  padding-bottom: 0 !important;
  white-space: normal !important;
}

.container.plm-page .plm-spec-sku-cell strong,
.container.plm-page .plm-spec-sku-cell .plm-mini-note,
.container.plm-page .plm-spec-item-cell strong,
.container.plm-page .plm-spec-item-cell .plm-status-badge,
.container.plm-page .plm-spec-item-cell .badge,
.container.plm-page .plm-spec-warning-cell {
  line-height: 1.18 !important;
}

.container.plm-page .plm-spec-grid-cell {
  position: relative !important;
  padding-bottom: 1.1rem !important;
  cursor: pointer !important;
}

.container.plm-page .plm-spec-grid-cell::after {
  content: "click to edit" !important;
  position: absolute !important;
  right: .42rem !important;
  bottom: .18rem !important;
  margin: 0 !important;
  color: #79caff !important;
  opacity: .72 !important;
  font-size: .58rem !important;
  line-height: 1 !important;
  letter-spacing: .045em !important;
  text-transform: uppercase !important;
}

.container.plm-page .plm-spec-warning-cell {
  display: table-cell !important;
  overflow: hidden !important;
}

.container.plm-page .plm-spec-preview-btn {
  padding: .55rem .72rem !important;
  white-space: nowrap !important;
  line-height: 1.1 !important;
}


/* =========================================================
   Version: PLM v0.9i Batch builder asset filters + Image workflow notes
   ========================================================= */
.plm-batch-name-filter-row {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: minmax(260px, 0.55fr) minmax(360px, 1fr);
    gap: 14px;
    align-items: end;
}

.plm-batch-name-compact input {
    width: 100%;
}

.plm-batch-asset-filter-checks {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 10px 16px;
    padding: 8px 0 4px;
}

.plm-batch-asset-filter-checks .plm-filter-check {
    margin: 0;
    min-height: 40px;
    white-space: nowrap;
}

@media (max-width: 900px) {
    .plm-batch-name-filter-row {
        grid-template-columns: 1fr;
    }
    .plm-batch-asset-filter-checks {
        align-items: stretch;
        flex-direction: column;
    }
}


/* =========================================================
   Version: PLM v0.9i Thumbnail previews + batch asset filters
   ========================================================= */
.plm-thumb-cell {
    width: 92px;
    min-width: 92px;
    max-width: 92px;
    text-align: center;
    vertical-align: middle !important;
}
.plm-thumb-button {
    display: inline-flex;
    width: 64px;
    height: 64px;
    align-items: center;
    justify-content: center;
    padding: 2px;
    border-radius: 10px;
    border: 1px solid rgba(105,183,255,.55);
    background: rgba(4,30,51,.7);
    cursor: zoom-in;
}
.plm-thumb-button:hover {
    border-color: rgba(126,220,255,.9);
    box-shadow: 0 0 0 2px rgba(126,220,255,.18);
}
.plm-thumb-button img {
    max-width: 58px;
    max-height: 58px;
    object-fit: contain;
    display: block;
    border-radius: 6px;
    background: #fff;
}
.plm-thumb-button-filecamp {
    position: relative;
    overflow: hidden;
    background: #ffffff;
    flex: 0 0 64px;
    min-width: 64px;
    max-width: 64px;
}
.plm-thumb-button-filecamp iframe {
    position: relative;
    z-index: 2;
    width: 180px;
    height: 180px;
    border: 0;
    pointer-events: none;
    transform: scale(.34);
    transform-origin: top left;
    background: #ffffff;
}
.plm-thumb-button-filecamp .plm-thumb-bad-link {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 4px;
    color: #fecaca;
    -webkit-text-fill-color: #fecaca;
    font-size: .72rem;
    font-weight: 900;
    line-height: 1.05;
    text-align: center;
    background: rgba(127,29,29,.62);
}
.plm-thumb-button-filecamp.is-bad-link {
    border-color: rgba(248,113,113,.72);
    background: rgba(127,29,29,.62);
}
.plm-thumb-button-filecamp.is-bad-link iframe {
    display: none;
}
.container.plm-page .plm-thumb-cell .plm-thumb-button-filecamp,
.container.plm-page .plm-product-info-draft-grid .plm-thumb-button-filecamp {
    box-sizing: border-box !important;
    display: inline-flex !important;
    flex: 0 0 64px !important;
    width: 64px !important;
    min-width: 64px !important;
    max-width: 64px !important;
    height: 64px !important;
    min-height: 64px !important;
    max-height: 64px !important;
    padding: 2px !important;
}
.container.plm-page .plm-thumb-button-filecamp.is-bad-link {
    background: #4b1f2a !important;
    background-image: none !important;
    border-color: rgba(248, 113, 113, .78) !important;
    box-shadow: none !important;
    cursor: pointer;
    transform: none !important;
}
.container.plm-page .plm-thumb-button-filecamp.is-bad-link:hover {
    background: #602534 !important;
    background-image: none !important;
    transform: none !important;
}
.container.plm-page .plm-thumb-button-filecamp.is-bad-link .plm-thumb-bad-link {
    border-radius: 8px;
    background: transparent !important;
    color: #fecaca !important;
    -webkit-text-fill-color: #fecaca !important;
    font-size: .64rem !important;
    line-height: 1.12 !important;
    overflow-wrap: anywhere;
}
.plm-thumb-empty {
    display: inline-flex;
    min-width: 62px;
    min-height: 40px;
    align-items: center;
    justify-content: center;
    color: #a7cde6;
    font-size: .72rem;
    border: 1px dashed rgba(167,205,230,.45);
    border-radius: 8px;
}
.plm-product-info-draft-grid .plm-pi-col-image,
.plm-product-info-draft-grid .plm-pi-image-cell { width:92px; min-width:92px; max-width:92px; }
.plm-product-info-draft-grid { min-width: 1595px; }
.plm-spec-grid-table .plm-spec-col-image,
.plm-spec-grid-table .plm-spec-image-cell { width:92px !important; min-width:92px !important; max-width:92px !important; }
.container.plm-page .plm-spec-grid-table { min-width: max-content !important; }
.plm-image-preview-card {
    width: min(920px, 96vw);
    height: min(88vh, 1000px);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}
.plm-image-preview-body {
    padding: 1rem;
    background: #f8fbff;
    display: flex;
    flex: 1 1 auto;
    min-height: 0;
    overflow: auto;
    align-items: flex-start;
    justify-content: center;
}
.plm-image-preview-body img {
    max-width: 100%;
    height: auto;
    object-fit: contain;
    background: #fff;
    border-radius: 12px;
}
.plm-image-preview-body iframe {
    width: 100%;
    height: 100%;
    min-height: 68vh;
    border: 0;
    background: #fff;
}


/* Version: PLM v0.9j Spec Sheet thumbnail renderer hotfix */


/* ==========================================
   Version: PLM v0.9m Images & Documents HubSpot BC category folder path
   ========================================== */
.plm-images-docs-page .plm-asset-rules-section .plm-card-value-small {
  font-size: 1.05rem;
  line-height: 1.25;
}
.plm-images-docs-grid-wrap {
  max-height: 68vh;
  overflow: auto;
}
.plm-images-docs-grid-table {
  min-width: 1500px;
  table-layout: fixed;
}
.plm-images-docs-grid-table th,
.plm-images-docs-grid-table td {
  vertical-align: top;
  padding: 0.6rem 0.65rem;
  line-height: 1.25;
}
.plm-images-docs-grid-table th:nth-child(1),
.plm-images-docs-grid-table td:nth-child(1) { width: 74px; }
.plm-images-docs-grid-table th:nth-child(2),
.plm-images-docs-grid-table td:nth-child(2) { width: 90px; }
.plm-images-docs-grid-table th:nth-child(3),
.plm-images-docs-grid-table td:nth-child(3) { width: 170px; }
.plm-images-docs-grid-table th:nth-child(4),
.plm-images-docs-grid-table td:nth-child(4) { width: 210px; }
.plm-images-docs-grid-table th:nth-child(5),
.plm-images-docs-grid-table td:nth-child(5) { width: 190px; }
.plm-images-docs-grid-table th:nth-child(6),
.plm-images-docs-grid-table td:nth-child(6) { width: 210px; }
.plm-images-docs-grid-table th:nth-child(7),
.plm-images-docs-grid-table td:nth-child(7) { width: 160px; }
.plm-images-docs-grid-table th:nth-child(8),
.plm-images-docs-grid-table td:nth-child(8) { width: 210px; }
.plm-images-docs-grid-table th:nth-child(9),
.plm-images-docs-grid-table td:nth-child(9) { width: 190px; }
.plm-images-docs-grid-table th:nth-child(10),
.plm-images-docs-grid-table td:nth-child(10) { width: 170px; }
.plm-source-thumb-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  align-items: center;
  margin-bottom: 0.25rem;
}
.plm-source-thumb-strip .plm-thumb-button {
  width: 48px;
  height: 48px;
}
.plm-asset-plan-cell code,
.plm-asset-folder-cell code {
  color: #eaf7ff;
  white-space: normal;
  overflow-wrap: anywhere;
}
.plm-asset-product-cell,
.plm-asset-source-cell,
.plm-asset-plan-cell,
.plm-asset-folder-cell,
.plm-asset-ready-cell {
  font-size: 0.9rem;
}


/* ==========================================
   Version: PLM v0.9m Images & Documents HubSpot BC category folder path
   ========================================== */
.plm-images-docs-grid-table {
  min-width: 1320px;
}
.plm-images-docs-grid-table th:nth-child(1),
.plm-images-docs-grid-table td:nth-child(1) { width: 95px; }
.plm-images-docs-grid-table th:nth-child(2),
.plm-images-docs-grid-table td:nth-child(2) { width: 90px; }
.plm-images-docs-grid-table th:nth-child(3),
.plm-images-docs-grid-table td:nth-child(3) { width: 175px; }
.plm-images-docs-grid-table th:nth-child(4),
.plm-images-docs-grid-table td:nth-child(4) { width: 230px; }
.plm-images-docs-grid-table th:nth-child(5),
.plm-images-docs-grid-table td:nth-child(5) { width: 220px; }
.plm-images-docs-grid-table th:nth-child(6),
.plm-images-docs-grid-table td:nth-child(6) { width: 165px; }
.plm-images-docs-grid-table th:nth-child(7),
.plm-images-docs-grid-table td:nth-child(7) { width: 210px; }
.plm-images-docs-grid-table th:nth-child(8),
.plm-images-docs-grid-table td:nth-child(8) { width: 220px; }
.plm-images-docs-grid-table th:nth-child(9),
.plm-images-docs-grid-table td:nth-child(9) { width: 180px; }
.plm-images-docs-grid-table .plm-thumb-cell {
  text-align: center;
}
.plm-images-docs-grid-table .plm-thumb-count {
  display: block;
  margin-top: 0.25rem;
  line-height: 1.15;
}


/* ==========================================
   Version: PLM v0.9p Images & Documents category-master alias hotfix
   Fixes duplicate SQL alias cm on the Images & Documents active-batch query.
   No visual styling changes in this patch.
   ========================================== */

/* ==========================================================
   Version: PLM v0.9p HubSpot last-two BC category folder path
   Notes: HubSpot path planning now strips Products and broad BC department
   folders, keeping StoreMoreStore/{parent-category}/{child-category}.
   ========================================================== */

/* ==========================================================
   Version: PLM v0.9s html import hotfix Image fit and HubSpot public URL patch HubSpot folder case/link display
   ========================================================== */
.plm-hubspot-upload-section .plm-hubspot-upload-form {
  grid-template-columns: minmax(180px, 0.8fr) minmax(180px, 0.8fr) minmax(220px, 1fr) minmax(220px, 1fr);
  align-items: end;
  gap: 0.75rem;
}
.plm-hubspot-upload-section .plm-actions-row {
  grid-column: 1 / -1;
}
.plm-asset-folder-cell .plm-mini-note {
  display: none;
}
.plm-asset-ready-cell .plm-badge-ok {
  white-space: nowrap;
}
.plm-hubspot-image-progress-page .plm-log-box {
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}


/* Version: PLM v0.9s html import hotfix Image fit and HubSpot public URL patch HubSpot folder case/link display */
.plm-hubspot-uploaded-links { margin-top: .35rem; display: grid; gap: .18rem; }
.plm-hubspot-uploaded-links a { font-size: .76rem; font-weight: 800; }
.plm-hubspot-folder-case-note { display:block; margin-top:.25rem; }


/* ==========================================================
   Version: PLM v0.9t Images & Documents compact HubSpot upload controls
   Notes: Restores compact, aligned upload controls after v0.9s restore.
   Safety gates unchanged: HubSpot staged asset URLs only, no BC publish.
   ========================================================== */
.container.plm-page .plm-hubspot-upload-section .plm-hubspot-upload-form {
  display: grid !important;
  grid-template-columns: minmax(120px, .55fr) minmax(170px, .75fr) minmax(150px, .65fr) minmax(220px, 1fr) auto;
  align-items: end !important;
  column-gap: .75rem !important;
  row-gap: .65rem !important;
}
.container.plm-page .plm-hubspot-upload-section .plm-upload-field,
.container.plm-page .plm-hubspot-upload-section .plm-upload-confirm {
  margin: 0 !important;
  min-width: 0 !important;
}
.container.plm-page .plm-hubspot-upload-section .plm-upload-field span,
.container.plm-page .plm-hubspot-upload-section .plm-upload-confirm span {
  display: block !important;
  margin-bottom: .28rem !important;
  color: var(--sms-light-blue) !important;
  font-size: .78rem !important;
  font-weight: 900 !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
}
.container.plm-page .plm-hubspot-upload-section .plm-input {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 36px !important;
}
.container.plm-page .plm-hubspot-upload-section .plm-upload-check {
  display: inline-flex !important;
  align-items: center !important;
  gap: .45rem !important;
  min-height: 36px !important;
  margin: 0 !important;
  white-space: nowrap !important;
  color: rgba(255,255,255,.92) !important;
  font-weight: 800 !important;
}
.container.plm-page .plm-hubspot-upload-section .plm-upload-check input {
  width: 15px !important;
  height: 15px !important;
  margin: 0 !important;
}
.container.plm-page .plm-hubspot-upload-section .plm-hubspot-upload-actions {
  grid-column: auto !important;
  margin: 0 !important;
  justify-content: flex-start !important;
  align-self: end !important;
  gap: .55rem !important;
}
.container.plm-page .plm-hubspot-upload-section .plm-button-compact {
  min-height: 36px !important;
  padding: .55rem .9rem !important;
  border-radius: 10px !important;
  white-space: nowrap !important;
  box-shadow: 0 5px 12px rgba(0,0,0,.14) !important;
}
.container.plm-page .plm-hubspot-upload-section .plm-hubspot-upload-actions .plm-muted {
  display: block !important;
  flex: 1 1 190px !important;
  min-width: 180px !important;
  font-size: .84rem !important;
  line-height: 1.22 !important;
}
@media (max-width: 1200px) {
  .container.plm-page .plm-hubspot-upload-section .plm-hubspot-upload-form {
    grid-template-columns: repeat(2, minmax(180px, 1fr)) !important;
  }
  .container.plm-page .plm-hubspot-upload-section .plm-hubspot-upload-actions {
    grid-column: 1 / -1 !important;
  }
}
@media (max-width: 760px) {
  .container.plm-page .plm-hubspot-upload-section .plm-hubspot-upload-form {
    grid-template-columns: 1fr !important;
  }
}


/* ==========================================
   Version: PLM v0.9x compact batch review + selected Product Info generation
   ========================================== */
.container.plm-page .plm-info-soft {
    background: rgba(8, 50, 82, .45) !important;
    border-left-color: #69b7ff !important;
    margin: .65rem 0 1rem;
}
.container.plm-page .plm-batch-review-grid {
    min-width: 1320px;
    table-layout: fixed;
    margin: 0;
}
.container.plm-page .plm-batch-review-grid th,
.container.plm-page .plm-batch-review-grid td {
    vertical-align: top;
    padding: .55rem .65rem;
    font-size: .83rem;
    line-height: 1.28;
}
.container.plm-page .plm-batch-review-grid .plm-br-col-item { width: 105px; }
.container.plm-page .plm-batch-review-grid .plm-br-col-sku { width: 190px; }
.container.plm-page .plm-batch-review-grid .plm-br-col-name { width: 275px; }
.container.plm-page .plm-batch-review-grid .plm-br-col-cost { width: 105px; }
.container.plm-page .plm-batch-review-grid .plm-br-col-list { width: 115px; }
.container.plm-page .plm-batch-review-grid .plm-br-col-sell { width: 135px; }
.container.plm-page .plm-batch-review-grid .plm-br-col-category { width: 245px; }
.container.plm-page .plm-batch-review-grid .plm-br-col-status { width: 120px; }
.container.plm-page .plm-batch-review-grid .plm-br-col-issues { width: 310px; }
.container.plm-page .plm-batch-review-grid .plm-row-warning td { background: rgba(255, 201, 92, .055); }
.container.plm-page .plm-batch-review-grid .plm-row-error td { background: rgba(255, 98, 98, .08); }
.container.plm-page .plm-issue-chipline {
    border-bottom: 1px solid rgba(126, 200, 255, .16);
    padding: .35rem 0;
}
.container.plm-page .plm-issue-chipline:last-child { border-bottom: 0; }
.container.plm-page .plm-issue-chipline .plm-badge { transform: scale(.88); transform-origin: left center; margin-right: .25rem; }
.plm-ai-generate-form-compact .plm-generate-compact-row {
    display: flex;
    align-items: center;
    gap: .9rem;
    flex-wrap: wrap;
}
.plm-selection-count {
    display: inline-flex;
    align-items: center;
    min-height: 2.35rem;
    padding: .35rem .75rem;
    border: 1px solid rgba(105,183,255,.35);
    border-radius: 999px;
    background: rgba(6,38,65,.55);
    color: #dff4ff;
    font-weight: 800;
}
.plm-product-info-select-actions {
    display:flex;
    align-items:center;
    gap:.65rem;
    flex-wrap:wrap;
    margin:.8rem 0 .8rem;
}
.plm-product-info-draft-grid .plm-pi-col-select,
.plm-product-info-draft-grid .plm-pi-select-cell {
    width: 72px;
    min-width: 72px;
    max-width: 72px;
    text-align: center;
}
.plm-pi-select-cell input[type="checkbox"] {
    width: 1.15rem;
    height: 1.15rem;
    cursor: pointer;
}
.plm-product-info-draft-grid .plm-pi-col-image,
.plm-product-info-draft-grid .plm-pi-image-cell { width: 92px; min-width: 92px; max-width: 92px; }
.plm-product-info-draft-grid { min-width: 1665px; }
@media (max-width: 900px) {
    .container.plm-page .plm-batch-review-grid { min-width: 1120px; }
    .plm-ai-generate-form-compact .plm-generate-compact-row { align-items: stretch; }
}


/* PLM v0.9x BC match label and vendor data wording cleanup. */
.plm-batch-review-grid .plm-br-col-status { min-width: 112px; }
.plm-vendor-browser-table td:nth-child(4) { color: rgba(255,255,255,.70); }


/* PLM v0.9y Spec Sheet selected-row generation + compact grid polish */
.plm-spec-select-cell,
.plm-pi-select-cell { text-align:center; min-width:42px; width:42px; }
.plm-spec-selected-controls { display:flex; align-items:center; gap:.65rem; flex-wrap:wrap; }
.plm-spec-selected-controls .plm-muted { margin-left:.25rem; }
.plm-spec-grid-table .plm-spec-static-cell,
.plm-spec-grid-table .plm-spec-grid-cell { vertical-align:top; }
.plm-spec-generate-section .plm-inline-form-grid { align-items:end; }

/* PLM v0.9aa combined Product Info + Spec Sheet draft generation. */


/* PLM v0.9aa speed/category/spec cleanup */
.plm-warning-pill {
  display:inline-flex; align-items:center; border-radius:999px; padding:.15rem .45rem;
  font-size:.72rem; font-weight:900; color:#472900; background:#fff1a6; border:1px solid #f0b43c; margin-right:.35rem;
}
.plm-spec-warning-cell { line-height:1.25; }
.plm-batch-review-grid .plm-issue-chipline { margin-bottom:.45rem; }

/* PLM v0.9ae AI Draft Jobs / bulk draft queue */
.plm-bulk-draft-form {
    margin-top: 0.65rem;
    padding-top: 0.65rem;
    border-top: 1px solid rgba(148, 163, 184, 0.25);
}
.plm-ai-jobs-table th,
.plm-ai-jobs-table td {
    vertical-align: top;
}
.plm-ai-job-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    min-width: 220px;
}
.plm-ai-job-actions form {
    margin: 0;
}
.plm-compact-table td,
.plm-compact-table th {
    padding-top: 0.45rem;
    padding-bottom: 0.45rem;
}
.plm-error-text {
    color: #991b1b;
    font-size: 0.85rem;
}
.plm-ai-draft-jobs-page .plm-card-text {
    font-size: 0.95rem;
    line-height: 1.25;
}


/* PLM v0.9al HubSpot existing-image check */
.plm-hubspot-check-section .plm-section-head h2 { margin-bottom: 0; }
.plm-hubspot-check-form { align-items: end; }
.plm-hubspot-existing-links { margin-top: .35rem; display: grid; gap: .15rem; }

/* PLM v0.9al Images & Documents selected-row HubSpot existing-image check */
.plm-images-docs-head {
    align-items: flex-start;
    gap: 1rem;
}
.plm-images-docs-actions {
    display: flex;
    flex-wrap: wrap;
    gap: .55rem;
    justify-content: flex-end;
    align-items: center;
}
.plm-images-docs-select-col,
.plm-images-docs-select-cell {
    width: 4.5rem;
    text-align: center;
}
.plm-images-docs-select-cell input[type="checkbox"] {
    width: 1.05rem;
    height: 1.05rem;
}
.plm-compact-note {
    margin-top: -.35rem;
    margin-bottom: .75rem;
}
.plm-hubspot-uploaded-links {
    margin-top: .35rem;
    display: grid;
    gap: .15rem;
}

/* PLM v0.9al Images & Documents row-selected HubSpot check/upload controls */

/* PLM v0.9al HubSpot image diagnostics */
.plm-hubspot-debug-section { margin-top: 1rem; }
.plm-hubspot-debug-wrap { max-height: 560px; overflow: auto; }
.plm-hubspot-debug-table th,
.plm-hubspot-debug-table td { vertical-align: top; min-width: 220px; }
.plm-hubspot-debug-table td:first-child { min-width: 150px; }
.plm-debug-asset-line,
.plm-debug-url-line {
  border-top: 1px solid rgba(124, 191, 255, .18);
  padding: .45rem 0;
  line-height: 1.35;
}
.plm-debug-asset-line:first-child,
.plm-debug-url-line:first-child { border-top: 0; padding-top: 0; }
.plm-warning-text { color: #ffd27a; }

/* PLM team-ready UI cleanup pass.
   Scope: Product Load Manager presentation only. Keeps existing form names,
   routes, JavaScript hooks, and operational behavior unchanged. */
.container.plm-page {
    max-width: 1480px;
    padding-bottom: 48px;
}

.container.plm-page > h1 {
    margin-bottom: 0.35rem;
    line-height: 1.08;
}

.container.plm-page .plm-subtitle {
    max-width: 1080px;
    margin-bottom: 1.05rem;
    line-height: 1.5;
}

.container.plm-page .plm-top-tabs {
    margin: 1rem 0 1.15rem;
    gap: 0.45rem;
}

.container.plm-page .plm-top-tab,
.container.plm-page a.plm-top-tab {
    min-height: 42px;
    align-items: center;
}

.container.plm-page .plm-section {
    margin-top: 1.15rem;
    padding: 1.15rem;
}

.container.plm-page .plm-section + .plm-section {
    margin-top: 1.25rem;
}

.container.plm-page .plm-section-head {
    gap: 0.65rem 1rem;
    margin-bottom: 0.9rem;
}

.container.plm-page .plm-section-head h2,
.container.plm-page .plm-section-head h3 {
    line-height: 1.18;
}

.container.plm-page .plm-mini-note,
.container.plm-page .plm-muted {
    line-height: 1.45;
}

.container.plm-page .plm-alert {
    margin: 0.95rem 0;
    padding: 0.95rem 1rem;
    line-height: 1.5;
}

.container.plm-page .plm-alert strong:first-child {
    display: inline-block;
    margin-bottom: 0.12rem;
}

.container.plm-page .plm-lifestyle-brief-panel {
    margin: 0.9rem 0 1rem;
    padding: 1rem;
    border: 1px solid rgba(127, 199, 255, 0.28);
    border-left: 5px solid rgba(42, 163, 211, 0.9);
    border-radius: 8px;
    background: rgba(9, 45, 68, 0.72);
    display: grid;
    gap: 0.8rem;
}

.container.plm-page .plm-lifestyle-brief-copy h3 {
    margin: 0 0 0.18rem;
    font-size: 1.05rem;
    line-height: 1.2;
}

.container.plm-page .plm-lifestyle-brief-field {
    width: 100%;
}

.container.plm-page .plm-lifestyle-choice-grid {
    display: grid;
    grid-template-columns: minmax(190px, 0.34fr) minmax(230px, 0.42fr) minmax(260px, 1fr);
    gap: 0.8rem;
    align-items: stretch;
}

.container.plm-page .plm-lifestyle-count-field,
.container.plm-page .plm-lifestyle-family-field {
    min-width: 0;
}

.container.plm-page .plm-lifestyle-run-preview {
    border: 1px solid rgba(127, 199, 255, 0.24);
    border-radius: 8px;
    background: rgba(2, 25, 43, 0.42);
    padding: 0.72rem 0.85rem;
    display: grid;
    gap: 0.25rem;
}

.container.plm-page .plm-lifestyle-run-preview span,
.container.plm-page .plm-lifestyle-run-preview small,
.container.plm-page .plm-lifestyle-cost-metric span {
    color: rgba(223, 240, 255, 0.72);
    font-size: 0.82rem;
    line-height: 1.35;
}

.container.plm-page .plm-lifestyle-run-preview strong {
    color: #ffffff;
    font-size: 1.05rem;
    line-height: 1.25;
}

.container.plm-page .plm-lifestyle-brief-textarea {
    width: 100%;
    min-height: 118px;
    resize: vertical;
}

.container.plm-page .plm-lifestyle-brief-actions {
    display: flex;
    align-items: center;
    gap: 0.7rem;
    flex-wrap: wrap;
}

.container.plm-page .plm-lifestyle-cost-reference {
    border-left: 5px solid rgba(42, 163, 211, 0.9);
}

.container.plm-page .plm-lifestyle-cost-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(150px, 1fr));
    gap: 0.75rem;
}

.container.plm-page .plm-lifestyle-cost-metric {
    border: 1px solid rgba(127, 199, 255, 0.2);
    border-radius: 8px;
    background: rgba(2, 25, 43, 0.32);
    padding: 0.75rem 0.85rem;
    display: grid;
    gap: 0.22rem;
    min-width: 0;
}

.container.plm-page .plm-lifestyle-cost-metric strong {
    color: #ffffff;
    font-size: 1rem;
    line-height: 1.25;
    word-break: break-word;
}

.container.plm-page .plm-lifestyle-cost-examples {
    margin-top: 0.85rem;
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
}

.container.plm-page .plm-lifestyle-cost-examples span {
    border: 1px solid rgba(127, 199, 255, 0.22);
    border-radius: 999px;
    background: rgba(2, 25, 43, 0.34);
    color: rgba(235, 246, 255, 0.9);
    padding: 0.42rem 0.62rem;
    font-size: 0.86rem;
    line-height: 1.2;
}

@media (max-width: 760px) {
    .container.plm-page .plm-lifestyle-choice-grid,
    .container.plm-page .plm-lifestyle-cost-grid {
        grid-template-columns: 1fr;
    }
}

.container.plm-page .plm-alert:not(.plm-error) {
    border-left: 5px solid rgba(127, 199, 255, 0.75);
}

.container.plm-page .plm-error {
    border-left-width: 5px;
}

.container.plm-page .plm-filter-form,
.container.plm-page .plm-form,
.container.plm-page .plm-form-grid {
    gap: 0.9rem 1rem;
}

.container.plm-page .plm-filter-field,
.container.plm-page .plm-filter-check,
.container.plm-page .plm-upload-field,
.container.plm-page .plm-upload-confirm {
    min-width: 0;
}

.container.plm-page .plm-filter-field span,
.container.plm-page .plm-filter-check span,
.container.plm-page .plm-upload-field span,
.container.plm-page .plm-upload-confirm span {
    line-height: 1.25;
}

.container.plm-page .plm-filter-field input,
.container.plm-page .plm-filter-field select,
.container.plm-page .plm-filter-field textarea,
.container.plm-page .plm-input,
.container.plm-page .plm-textarea {
    min-height: 42px;
}

.container.plm-page .plm-filter-field textarea,
.container.plm-page .plm-textarea {
    min-height: 96px;
}

.container.plm-page .plm-actions-row,
.container.plm-page .plm-filter-actions,
.container.plm-page .plm-form-actions,
.container.plm-page .plm-pagination-row {
    gap: 0.55rem 0.7rem;
    align-items: center;
}

.container.plm-page .plm-actions-row {
    margin-top: 0.9rem;
}

.container.plm-page .plm-button {
    min-height: 40px;
    line-height: 1.2;
    white-space: normal;
}

.container.plm-page .plm-button-secondary {
    opacity: 0.96;
}

.container.plm-page .plm-section {
    border-color: rgba(220, 162, 74, 0.72) !important;
}

.container.plm-page .plm-table-scroll,
.container.plm-page .plm-table-wrap,
.container.plm-page .plm-product-info-grid-wrap,
.container.plm-page .plm-spec-grid-wrap,
.container.plm-page .plm-images-docs-grid-wrap,
.container.plm-page .plm-card,
.container.plm-page .plm-lifestyle-brief-panel,
.container.plm-images-docs-page .plm-manual-source-panel,
.container.plm-images-docs-page .plm-images-docs-final-actions,
.container.plm-images-docs-page .plm-images-docs-grid-actions {
    border-color: rgba(220, 162, 74, 0.58) !important;
}

.container.plm-images-docs-page .plm-manual-source-panel {
    border: 1px solid rgba(220, 162, 74, 0.58);
    border-radius: 12px;
    background: rgba(4, 43, 69, 0.36);
    padding: 0.85rem 0.9rem;
    margin: 0.85rem 0 0.45rem;
}

.container.plm-images-docs-page .plm-manual-source-grid {
    display: flex;
    align-items: flex-end;
    gap: 0.55rem;
    flex-wrap: wrap;
}

.container.plm-images-docs-page .plm-manual-source-grid .plm-filter-field {
    margin: 0;
}

.container.plm-images-docs-page .plm-manual-source-url-field {
    flex: 1 1 420px;
    min-width: 260px;
}

.container.plm-images-docs-page .plm-manual-source-grid .plm-button {
    min-height: 42px;
    padding: 0.7rem 1rem;
}

/* Risk-bearing PLM actions stay visually grouped without changing form behavior. */
.container.plm-page .plm-button-danger,
.container.plm-page button[formaction*="/publish-preview/publish"],
.container.plm-page button[data-plm-imgdoc-action="upload"],
.container.plm-page button[type="submit"][formaction*="/images-documents/upload-images"] {
    box-shadow: 0 0 0 1px rgba(252, 165, 165, 0.22), 0 10px 26px rgba(0, 0, 0, 0.18);
}

.container.plm-page .plm-table-scroll,
.container.plm-page .plm-table-wrap,
.container.plm-page .plm-product-info-grid-wrap,
.container.plm-page .plm-spec-grid-wrap,
.container.plm-page .plm-images-docs-grid-wrap {
    margin-top: 0.85rem;
    border: 1px solid rgba(127, 199, 255, 0.16);
    border-radius: 12px;
    background: rgba(1, 20, 35, 0.18);
}

.container.plm-page .plm-images-docs-top-scroll {
    margin-top: 0.85rem;
    border-color: rgba(220, 162, 74, 0.58);
    border-radius: 12px 12px 0 0;
}

.container.plm-page .plm-spec-top-scroll {
    margin-top: 0.85rem;
    border-color: rgba(220, 162, 74, 0.58);
    border-radius: 12px 12px 0 0;
}

.container.plm-page .plm-images-docs-grid-wrap[data-plm-scroll-sync-body] {
    margin-top: 0;
    border-top: 0;
    border-radius: 0 0 12px 12px;
}

.container.plm-page .plm-spec-grid-wrap[data-plm-scroll-sync-body] {
    margin-top: 0;
    border-top: 0;
    border-radius: 0 0 12px 12px;
}

.container.plm-page .plm-table {
    font-size: 0.9rem;
    line-height: 1.42;
}

.container.plm-page .plm-table th {
    position: sticky;
    top: 0;
    z-index: 2;
    line-height: 1.25;
}

.container.plm-page .plm-table th,
.container.plm-page .plm-table td {
    padding: 0.72rem 0.78rem;
    vertical-align: top;
}

.container.plm-page .plm-table tbody tr:nth-child(even) td {
    background-color: rgba(255, 255, 255, 0.018);
}

.container.plm-page .plm-table code {
    white-space: normal;
    word-break: break-word;
}

.container.plm-page .plm-card {
    min-width: 0;
}

.container.plm-page .plm-grid {
    gap: 0.85rem;
}

.container.plm-page .plm-chip-row,
.container.plm-page .plm-pill-row,
.container.plm-page .plm-mode-summary {
    gap: 0.45rem;
}

.container.plm-page .plm-code-block {
    line-height: 1.45;
}

.container.plm-vendor-library-page .plm-filter-form,
.container.plm-batch-builder-page .plm-batch-filter-form {
    align-items: end;
}

.container.plm-product-info-page .plm-ai-panel,
.container.plm-spec-sheet-page .plm-spec-generate-section,
.container.plm-images-docs-page .plm-images-docs-section,
.container.plm-publish-preview-page .plm-product-info-grid-section {
    border-left: 5px solid rgba(127, 199, 255, 0.42);
}

.container.plm-product-info-page .plm-product-info-save-form > .plm-actions-row,
.container.plm-spec-sheet-page .plm-actions-row.bottom {
    padding-top: 0.25rem;
}

.container.plm-publish-preview-page .plm-product-info-save-form > .plm-actions-row {
    align-items: flex-start;
}

.container.plm-publish-preview-page .plm-product-info-save-form > .plm-actions-row .plm-muted {
    max-width: 760px;
}

.container.plm-ai-draft-jobs-page .plm-ai-job-actions {
    gap: 0.45rem;
}

.container.plm-ai-draft-jobs-page .plm-ai-job-actions .plm-button {
    width: 100%;
}

.container.plm-vendor-import-progress-page .plm-import-progress-shell,
.container.plm-product-info-progress-page .plm-section,
.container.plm-spec-sheet-progress-page .plm-section,
.container.plm-hubspot-upload-progress-page .plm-section {
    max-width: 1180px;
}

@media (max-width: 1180px) {
    .container.plm-page {
        padding-left: 18px;
        padding-right: 18px;
    }

    .container.plm-page .plm-section {
        padding: 1rem;
    }

    .container.plm-page .plm-table th,
    .container.plm-page .plm-table td {
        padding: 0.62rem 0.65rem;
    }
}

@media (max-width: 760px) {
    .container.plm-page {
        padding-left: 12px;
        padding-right: 12px;
    }

    .container.plm-page .plm-section-head,
    .container.plm-page .plm-actions-row,
    .container.plm-page .plm-filter-actions,
    .container.plm-page .plm-form-actions,
    .container.plm-page .plm-pagination-row,
    .container.plm-images-docs-page .plm-images-docs-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .container.plm-page .plm-button,
    .container.plm-page .plm-actions-row .plm-button,
    .container.plm-page .plm-filter-actions .plm-button {
        width: 100%;
        justify-content: center;
    }

    .container.plm-page .plm-alert {
        padding: 0.85rem;
    }
}


/* ==========================================================
   PLM POST-CODEX STYLE RESTORE v23
   Restores team layout blocks for Batch Builder, Product Info, Spec Sheet,
   Images & Documents, and AI Draft Jobs after the Codex CSS cleanup.
   ========================================================== */
/* PLM Create Batch - force Batch Name + asset filter checkboxes onto one row */
.plm-batch-name-filter-row {
  display: grid !important;
  grid-template-columns: minmax(420px, 1fr) auto !important;
  align-items: end !important;
  gap: 1rem !important;
  width: 100% !important;
}

.plm-batch-name-filter-row .plm-field-batch-name,
.plm-batch-name-filter-row .plm-batch-name-compact {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}

.plm-batch-name-filter-row .plm-field-batch-name input {
  width: 100% !important;
}

.plm-batch-asset-filter-checks {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 1.25rem !important;
  flex-wrap: nowrap !important;
  margin: 0 0 0.35rem 0 !important;
  padding: 0 !important;
  width: auto !important;
  max-width: none !important;
  white-space: nowrap !important;
}

.plm-batch-asset-filter-checks .plm-filter-check {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  gap: 0.45rem !important;
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  max-width: none !important;
  white-space: nowrap !important;
}

.plm-batch-asset-filter-checks .plm-filter-check input[type="checkbox"] {
  margin: 0 !important;
  flex: 0 0 auto !important;
}

/* Mobile/tablet fallback */
@media (max-width: 900px) {
  .plm-batch-name-filter-row {
    grid-template-columns: 1fr !important;
  }

  .plm-batch-asset-filter-checks {
    flex-wrap: wrap !important;
    margin-top: 0.25rem !important;
  }
}


/* ==========================================================
   PLM v0.9bz table headers + batch category creator
   Fixes tables that render <th> directly in the first row instead of inside <thead>.
   ========================================================== */
.container.plm-page table.plm-table tr:first-child > th,
.container.plm-page table.plm-table thead tr > th,
.container.plm-page table.plm-batch-candidate-table tr:first-child > th,
.container.plm-page table.plm-batch-candidate-table thead tr > th,
.container.plm-page table.plm-product-info-draft-grid tr:first-child > th,
.container.plm-page table.plm-spec-grid-table tr:first-child > th,
.container.plm-page table.plm-images-docs-grid-table tr:first-child > th {
  background: #0d4566 !important;
  background-image: none !important;
  background-color: #0d4566 !important;
  color: #ffffff !important;
  border-bottom: 1px solid rgba(126, 200, 255, 0.35) !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

.container.plm-page table.plm-table tr:first-child > th::before,
.container.plm-page table.plm-table tr:first-child > th::after,
.container.plm-page table.plm-table thead tr > th::before,
.container.plm-page table.plm-table thead tr > th::after {
  background: none !important;
  background-image: none !important;
  box-shadow: none !important;
}

.container.plm-batch-builder-page .plm-new-category-panel {
  margin: 0.75rem 0 1rem;
  padding: 1rem;
  border: 1px solid rgba(126, 200, 255, 0.24);
  border-radius: 14px;
  background: rgba(8, 48, 78, 0.42);
}

.container.plm-batch-builder-page .plm-new-category-head {
  margin-bottom: 0.8rem !important;
}

.container.plm-batch-builder-page .plm-new-category-head h3 {
  margin: 0 0 0.25rem;
}

.container.plm-batch-builder-page .plm-bc-category-create-form {
  display: grid;
  grid-template-columns: minmax(280px, 1.35fr) minmax(220px, 1fr) minmax(120px, 0.42fr) minmax(160px, 0.55fr) minmax(220px, 0.85fr) auto;
  gap: 0.8rem;
  align-items: end;
}

.container.plm-batch-builder-page .plm-new-cat-visible-check {
  min-height: 42px;
  align-items: center;
  margin: 0;
  padding-bottom: 0.2rem;
  white-space: nowrap;
}

.container.plm-batch-builder-page .plm-new-cat-button {
  white-space: nowrap;
}

.container.plm-batch-builder-page .plm-success {
  border-left-color: rgba(34, 197, 94, 0.82) !important;
}

@media (max-width: 1250px) {
  .container.plm-batch-builder-page .plm-bc-category-create-form {
    grid-template-columns: repeat(2, minmax(220px, 1fr));
  }
}

@media (max-width: 760px) {
  .container.plm-batch-builder-page .plm-bc-category-create-form {
    grid-template-columns: 1fr;
  }
  .container.plm-batch-builder-page .plm-new-cat-button {
    width: 100%;
  }
}

/* ==========================================================
   PLM v0.9ca / v12 Batch Builder team layout cleanup
   - removes old pending-category checkbox workflow
   - makes category creation compact and part of step 2
   - removes harsh gradients from PLM table headers and active tabs
   ========================================================== */
.container.plm-page .plm-top-tabs .plm-top-tab.module-tab.active,
.container.plm-page a.plm-top-tab.module-tab.active,
.container.plm-page .module-tab.plm-top-tab.active {
  background: #11658f !important;
  background-image: none !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border-color: rgba(126, 200, 255, 0.60) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08), 0 8px 18px rgba(0,0,0,.16) !important;
  text-shadow: none !important;
}

.container.plm-page .plm-top-tabs .plm-top-tab.module-tab:not(.active),
.container.plm-page a.plm-top-tab.module-tab:not(.active) {
  background-image: none !important;
}

.container.plm-page table.plm-table tr:first-child > th,
.container.plm-page table.plm-table thead tr > th,
.container.plm-page table[class*="plm-"] tr:first-child > th,
.container.plm-page table[class*="plm-"] thead tr > th {
  background: #0b3f5f !important;
  background-image: none !important;
  background-color: #0b3f5f !important;
  color: #ffffff !important;
  border-bottom: 1px solid rgba(126, 200, 255, 0.30) !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

.container.plm-page table.plm-table tr:first-child > th::before,
.container.plm-page table.plm-table tr:first-child > th::after,
.container.plm-page table.plm-table thead tr > th::before,
.container.plm-page table.plm-table thead tr > th::after,
.container.plm-page table[class*="plm-"] tr:first-child > th::before,
.container.plm-page table[class*="plm-"] tr:first-child > th::after {
  background: none !important;
  background-image: none !important;
  box-shadow: none !important;
}

.container.plm-batch-builder-page .plm-batch-builder-v12 {
  overflow-x: visible !important;
}

.container.plm-batch-builder-page .plm-category-setup-grid-v12 {
  display: grid !important;
  grid-template-columns: minmax(520px, 1.35fr) minmax(360px, .85fr) !important;
  gap: 16px !important;
  align-items: start !important;
}

.container.plm-batch-builder-page .plm-setup-card-v12,
.container.plm-batch-builder-page .plm-final-create-panel-v12 {
  border: 1px solid rgba(126, 200, 255, 0.25) !important;
  border-radius: 16px !important;
  background: rgba(7, 36, 60, 0.42) !important;
  padding: 14px !important;
  min-width: 0 !important;
}

.container.plm-batch-builder-page .plm-card-head-v12 {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  margin-bottom: 10px !important;
}

.container.plm-batch-builder-page .plm-card-head-v12 h3,
.container.plm-batch-builder-page .plm-final-create-panel-v12 h3 {
  margin: 0 !important;
  color: var(--sms-ice, #eaf7ff) !important;
  font-size: 1.05rem !important;
  line-height: 1.2 !important;
}

.container.plm-batch-builder-page .plm-card-head-v12 p,
.container.plm-batch-builder-page .plm-final-create-panel-v12 p {
  margin: 0 !important;
}

.container.plm-batch-builder-page .plm-category-choice-list {
  max-height: 260px !important;
}

.container.plm-batch-builder-page .plm-new-category-fields-v12 {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(130px, .46fr) !important;
  gap: 10px !important;
  align-items: end !important;
}

.container.plm-batch-builder-page .plm-new-category-fields-v12 .plm-filter-field,
.container.plm-batch-builder-page .plm-new-category-fields-v12 .plm-filter-check {
  min-width: 0 !important;
  width: 100% !important;
  margin: 0 !important;
}

.container.plm-batch-builder-page .plm-new-cat-parent-field,
.container.plm-batch-builder-page .plm-new-cat-name-field,
.container.plm-batch-builder-page .plm-new-cat-confirm-field,
.container.plm-batch-builder-page .plm-new-cat-button {
  grid-column: 1 / -1 !important;
}

.container.plm-batch-builder-page .plm-new-category-fields-v12 select,
.container.plm-batch-builder-page .plm-new-category-fields-v12 input,
.container.plm-batch-builder-page .plm-batch-notes-grid-v12 input {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.container.plm-batch-builder-page .plm-new-cat-visible-check {
  display: inline-flex !important;
  gap: 8px !important;
  align-items: center !important;
  justify-content: flex-start !important;
  min-height: 44px !important;
  white-space: normal !important;
  color: var(--sms-ice, #eaf7ff) !important;
  font-weight: 850 !important;
}

.container.plm-batch-builder-page .plm-new-cat-visible-check input[type="checkbox"] {
  flex: 0 0 auto !important;
}

.container.plm-batch-builder-page .plm-safe-note-v12 {
  display: block !important;
  margin-top: 10px !important;
  padding-top: 10px !important;
  border-top: 1px solid rgba(126, 200, 255, 0.16) !important;
}

.container.plm-batch-builder-page .plm-batch-notes-grid-v12 {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 14px !important;
  margin-top: 16px !important;
}

.container.plm-batch-builder-page .plm-final-step-head-v12 {
  margin-top: 22px !important;
}

.container.plm-batch-builder-page .plm-final-create-panel-v12 {
  display: grid !important;
  grid-template-columns: minmax(260px, 1.1fr) minmax(220px, .8fr) minmax(360px, 1.05fr) !important;
  gap: 14px !important;
  align-items: end !important;
  margin-bottom: 14px !important;
}

.container.plm-batch-builder-page .plm-final-create-panel-v12 .plm-selection-tools {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 8px !important;
  align-items: center !important;
  justify-content: flex-start !important;
}

.container.plm-batch-builder-page .plm-final-create-panel-v12 .plm-create-confirm-group {
  display: grid !important;
  grid-template-columns: minmax(180px, 1fr) minmax(190px, auto) !important;
  gap: 10px !important;
  align-items: end !important;
}

.container.plm-batch-builder-page .plm-final-create-panel-v12 .plm-create-primary-button,
.container.plm-batch-builder-page .plm-new-cat-button {
  min-height: 44px !important;
  white-space: normal !important;
  line-height: 1.15 !important;
}

.container.plm-batch-builder-page .plm-proposed-sku-pending {
  color: rgba(234, 247, 255, .74) !important;
  font-style: italic !important;
}

.container.plm-batch-builder-page .plm-pending-category-check {
  display: none !important;
}

@media (max-width: 1250px) {
  .container.plm-batch-builder-page .plm-category-setup-grid-v12,
  .container.plm-batch-builder-page .plm-final-create-panel-v12,
  .container.plm-batch-builder-page .plm-final-create-panel-v12 .plm-create-confirm-group {
    grid-template-columns: 1fr !important;
  }
}

@media (max-width: 760px) {
  .container.plm-batch-builder-page .plm-batch-notes-grid-v12,
  .container.plm-batch-builder-page .plm-new-category-fields-v12 {
    grid-template-columns: 1fr !important;
  }
  .container.plm-batch-builder-page .plm-new-cat-code-field,
  .container.plm-batch-builder-page .plm-new-cat-visible-check {
    grid-column: 1 / -1 !important;
  }
}

/* ==========================================================
   PLM v0.9cb / v13 Batch Builder category creator cleanup
   - no manual SKU category number in UI
   - new categories are created live/visible by default
   - parent category list can be filtered
   - active PLM tabs and table headers use calm solid colors
   ========================================================== */
.container.plm-page .plm-top-tabs .plm-top-tab.module-tab.active,
.container.plm-page .plm-top-tabs a.plm-top-tab.module-tab.active,
.container.plm-page a.plm-top-tab.module-tab.active,
.container.plm-page .module-tab.plm-top-tab.active,
.container.plm-page .module-tab.active.plm-top-tab {
  background: #11658f !important;
  background-color: #11658f !important;
  background-image: none !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border-color: rgba(126, 200, 255, 0.62) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08), 0 8px 18px rgba(0,0,0,.16) !important;
  text-shadow: none !important;
}

.container.plm-page .plm-top-tabs .plm-top-tab.module-tab:not(.active),
.container.plm-page .plm-top-tabs a.plm-top-tab.module-tab:not(.active),
.container.plm-page a.plm-top-tab.module-tab:not(.active) {
  background-image: none !important;
}

.container.plm-page table.plm-table tr:first-child > th,
.container.plm-page table.plm-table thead tr > th,
.container.plm-page table[class*="plm-"] tr:first-child > th,
.container.plm-page table[class*="plm-"] thead tr > th {
  background: #0b3f5f !important;
  background-color: #0b3f5f !important;
  background-image: none !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

.container.plm-batch-builder-page .plm-new-category-fields-v12,
.container.plm-batch-builder-page .plm-new-category-fields-v13 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
  align-items: end !important;
}

.container.plm-batch-builder-page .plm-new-cat-parent-filter-field,
.container.plm-batch-builder-page .plm-new-cat-parent-field,
.container.plm-batch-builder-page .plm-new-cat-name-field,
.container.plm-batch-builder-page .plm-new-cat-confirm-field,
.container.plm-batch-builder-page .plm-new-cat-button,
.container.plm-batch-builder-page .plm-parent-category-actions-v13 {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  min-width: 0 !important;
}

.container.plm-batch-builder-page .plm-new-cat-code-field,
.container.plm-batch-builder-page .plm-new-cat-visible-check {
  display: none !important;
}

.container.plm-batch-builder-page .plm-parent-category-actions-v13 {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) auto !important;
  gap: 10px !important;
  align-items: center !important;
  padding: 6px 0 2px !important;
}

.container.plm-batch-builder-page .plm-refresh-category-button {
  min-height: 38px !important;
  padding: 8px 12px !important;
  font-size: .9rem !important;
  white-space: nowrap !important;
}

.container.plm-batch-builder-page .plm-new-category-fields-v12 select,
.container.plm-batch-builder-page .plm-new-category-fields-v12 input,
.container.plm-batch-builder-page .plm-new-category-fields-v13 select,
.container.plm-batch-builder-page .plm-new-category-fields-v13 input {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.container.plm-batch-builder-page .plm-safe-note-v12 {
  color: rgba(234, 247, 255, .78) !important;
}

@media (max-width: 900px) {
  .container.plm-batch-builder-page .plm-parent-category-actions-v13 {
    grid-template-columns: 1fr !important;
  }
  .container.plm-batch-builder-page .plm-refresh-category-button {
    width: 100% !important;
  }
}


/* ==========================================================
   PLM v0.9cc / v14 Batch Builder category creator simplification
   - all BC categories available in Create Under dropdown
   - no parent-filter field or explanatory copy in the create card
   ========================================================== */
.container.plm-batch-builder-page .plm-new-category-panel-v14 .plm-card-head-v12 p,
.container.plm-batch-builder-page .plm-new-category-panel-v14 .plm-safe-note-v12,
.container.plm-batch-builder-page .plm-new-category-panel-v14 .plm-new-cat-parent-filter-field {
  display: none !important;
}

.container.plm-batch-builder-page .plm-new-category-fields-v14 {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 12px !important;
}

.container.plm-batch-builder-page .plm-new-category-fields-v14 .plm-filter-field,
.container.plm-batch-builder-page .plm-new-category-fields-v14 .plm-new-cat-button,
.container.plm-batch-builder-page .plm-new-category-fields-v14 .plm-parent-category-actions-v14 {
  grid-column: 1 / -1 !important;
  width: 100% !important;
}

.container.plm-batch-builder-page .plm-new-category-fields-v14 select,
.container.plm-batch-builder-page .plm-new-category-fields-v14 input {
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box !important;
}

.container.plm-batch-builder-page .plm-parent-category-actions-v14 {
  display: flex !important;
  justify-content: flex-end !important;
  align-items: center !important;
  margin-top: -2px !important;
}

.container.plm-batch-builder-page .plm-parent-category-actions-v14 .plm-refresh-category-button {
  min-height: 34px !important;
  padding: 7px 12px !important;
  font-size: .85rem !important;
}

.container.plm-batch-builder-page .plm-new-category-panel-v14 .plm-card-head-v12 {
  margin-bottom: 8px !important;
}

.container.plm-batch-builder-page .plm-new-category-panel-v14 .plm-new-cat-button {
  margin-top: 2px !important;
}

/* ==========================================================
   PLM v0.9cd / v16 shared polish
   - Central PLM color variables live at the top of this stylesheet
   - Solid active tab and table header colors use those variables
   - Vendor/brand creator card is responsive and does not overflow
   ========================================================== */
.container.plm-page {
  background: linear-gradient(180deg, var(--plm-page-bg-top), var(--plm-page-bg-bottom)) !important;
}

.container.plm-page .plm-top-tabs .plm-top-tab.module-tab.active,
.container.plm-page .plm-top-tabs a.plm-top-tab.module-tab.active,
.container.plm-page a.plm-top-tab.module-tab.active,
.container.plm-page .module-tab.plm-top-tab.active,
.container.plm-page .module-tab.active.plm-top-tab {
  background: var(--plm-tab-active-bg) !important;
  background-color: var(--plm-tab-active-bg) !important;
  background-image: none !important;
  color: var(--plm-text) !important;
  -webkit-text-fill-color: var(--plm-text) !important;
  border-color: var(--plm-panel-border-strong) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08), 0 8px 18px rgba(0,0,0,.16) !important;
  text-shadow: none !important;
}

.container.plm-page .plm-top-tabs .plm-top-tab.module-tab:not(.active),
.container.plm-page .plm-top-tabs a.plm-top-tab.module-tab:not(.active),
.container.plm-page a.plm-top-tab.module-tab:not(.active) {
  background-image: none !important;
}

.container.plm-page table.plm-table tr:first-child > th,
.container.plm-page table.plm-table thead tr > th,
.container.plm-page table[class*="plm-"] tr:first-child > th,
.container.plm-page table[class*="plm-"] thead tr > th {
  background: var(--plm-table-header-bg) !important;
  background-color: var(--plm-table-header-bg) !important;
  background-image: none !important;
  box-shadow: none !important;
  text-shadow: none !important;
  color: var(--plm-text) !important;
}

.container.plm-page .plm-alert.plm-success {
  border-left-color: var(--plm-success) !important;
  background: rgba(26, 92, 69, 0.28) !important;
}

/* Vendor Upload - create missing BigCommerce brand/vendor */
.container.plm-vendor-upload-page .plm-create-brand-card {
  margin: 0 0 22px !important;
  padding: 18px 20px !important;
  border: 1px solid var(--plm-panel-border) !important;
  border-radius: var(--plm-card-radius) !important;
  background: var(--plm-panel-bg-soft) !important;
  box-shadow: var(--plm-shadow-card) !important;
  display: block !important;
  overflow: hidden !important;
}

.container.plm-vendor-upload-page .plm-create-brand-copy {
  display: flex !important;
  align-items: baseline !important;
  justify-content: space-between !important;
  gap: 14px !important;
  margin: 0 0 14px !important;
  padding-bottom: 12px !important;
  border-bottom: 1px solid var(--plm-divider) !important;
}

.container.plm-vendor-upload-page .plm-create-brand-card h3 {
  margin: 0 !important;
  font-size: 1.15rem !important;
  color: var(--plm-text) !important;
  white-space: nowrap !important;
}

.container.plm-vendor-upload-page .plm-create-brand-card p {
  margin: 0 !important;
  color: var(--plm-text-soft) !important;
  line-height: 1.35 !important;
  text-align: right !important;
  max-width: 720px !important;
}

.container.plm-vendor-upload-page .plm-create-brand-form {
  display: grid !important;
  grid-template-columns: minmax(280px, 1.35fr) minmax(240px, 1fr) minmax(210px, auto) !important;
  gap: 12px !important;
  align-items: end !important;
  width: 100% !important;
}

.container.plm-vendor-upload-page .plm-create-brand-form .plm-filter-field {
  min-width: 0 !important;
  margin: 0 !important;
}

.container.plm-vendor-upload-page .plm-create-brand-form input {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 44px !important;
  box-sizing: border-box !important;
}

.container.plm-vendor-upload-page .plm-create-brand-form .plm-button {
  min-height: 44px !important;
  white-space: normal !important;
  line-height: 1.15 !important;
  padding-left: 16px !important;
  padding-right: 16px !important;
}

@media (max-width: 1250px) {
  .container.plm-vendor-upload-page .plm-create-brand-form {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  }
  .container.plm-vendor-upload-page .plm-create-brand-form .plm-button {
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }
}

@media (max-width: 820px) {
  .container.plm-vendor-upload-page .plm-create-brand-copy {
    display: block !important;
  }
  .container.plm-vendor-upload-page .plm-create-brand-card h3 {
    white-space: normal !important;
    margin-bottom: 6px !important;
  }
  .container.plm-vendor-upload-page .plm-create-brand-card p {
    text-align: left !important;
  }
  .container.plm-vendor-upload-page .plm-create-brand-form {
    grid-template-columns: 1fr !important;
  }
}


/* PLM Product Info - simple 3-across create actions and move SOP lower on page */
.container.plm-product-info-page .plm-create-product-info-panel {
  border-left: 5px solid var(--plm-accent-line, #2695C1) !important;
}

.container.plm-product-info-page .plm-pi-action-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
  align-items: stretch;
}

.container.plm-product-info-page .plm-description-mode {
  display: inline-grid;
  grid-template-columns: repeat(2, minmax(220px, 1fr));
  gap: 0;
  width: min(720px, 100%);
  margin: 0 0 1rem 0;
  padding: 0;
  border: 1px solid var(--plm-panel-border, rgba(126, 200, 255, .30));
  border-radius: 8px;
  overflow: hidden;
}

.container.plm-product-info-page .plm-description-mode legend {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}

.container.plm-product-info-page .plm-description-mode-option {
  position: relative;
  display: block;
  min-width: 0;
  cursor: pointer;
}

.container.plm-product-info-page .plm-description-mode-option + .plm-description-mode-option {
  border-left: 1px solid var(--plm-panel-border, rgba(126, 200, 255, .30));
}

.container.plm-product-info-page .plm-description-mode-option input {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}

.container.plm-product-info-page .plm-description-mode-option span {
  display: grid;
  gap: .2rem;
  min-height: 62px;
  padding: .7rem .9rem;
  background: rgba(7, 36, 60, .44);
  color: var(--plm-text, #fff);
}

.container.plm-product-info-page .plm-description-mode-option small {
  color: var(--plm-muted, #b8cce0);
  font-size: .78rem;
  line-height: 1.2;
}

.container.plm-product-info-page .plm-description-mode-option input:checked + span {
  background: #0b6fa4;
  box-shadow: inset 0 -3px 0 #67c7f3;
}

.container.plm-product-info-page .plm-description-mode-option input:focus-visible + span {
  outline: 2px solid #fff;
  outline-offset: -3px;
}

.container.plm-product-info-page .plm-pi-action-card {
  display: flex;
  flex-direction: column;
  gap: .6rem;
  min-height: 132px;
  padding: 1rem;
  border: 1px solid var(--plm-panel-border, rgba(126, 200, 255, .30));
  border-radius: var(--plm-card-radius, 16px);
  background: var(--plm-panel-bg-soft, rgba(8, 41, 68, .46));
  box-shadow: inset 0 1px 0 rgba(255,255,255,.04);
}

.container.plm-product-info-page .plm-pi-action-card-primary {
  border-color: var(--plm-panel-border-strong, rgba(126, 200, 255, .52));
}

.container.plm-product-info-page .plm-pi-action-button {
  width: 100%;
  justify-content: center;
  text-align: center;
  min-height: 46px;
  font-size: 1rem;
}

.container.plm-product-info-page .plm-pi-action-copy {
  color: var(--plm-text, #fff);
  font-size: 1.02rem;
  line-height: 1.35;
  font-weight: 650;
}

.container.plm-product-info-page .plm-pi-action-card .plm-selection-count,
.container.plm-product-info-page .plm-pi-action-card .plm-mini-note {
  margin-top: auto;
  align-self: flex-start;
}

.container.plm-product-info-page .plm-sop-panel {
  margin-top: 1.25rem;
}

@media (max-width: 980px) {
  .container.plm-product-info-page .plm-pi-action-grid {
    grid-template-columns: 1fr;
  }
}

/* PLM Product Info v18 - cleaner intro and action cards */
.container.plm-product-info-page > .plm-subtitle {
  display: none !important;
}

.container.plm-product-info-page .plm-product-info-intro {
  margin-top: .65rem !important;
  font-size: 1.02rem !important;
  line-height: 1.45 !important;
  color: var(--plm-text, #fff) !important;
}

.container.plm-product-info-page .plm-create-product-info-panel .plm-section-head {
  align-items: center !important;
  gap: 1rem !important;
  margin-bottom: 1rem !important;
}

.container.plm-product-info-page .plm-create-product-info-panel .plm-section-head h2 {
  margin-bottom: 0 !important;
}

.container.plm-product-info-page .plm-pi-action-grid {
  gap: 1.15rem !important;
}

.container.plm-product-info-page .plm-pi-action-card {
  min-height: 150px !important;
  padding: 1rem 1.1rem !important;
  justify-content: flex-start !important;
  gap: .78rem !important;
}

.container.plm-product-info-page .plm-pi-action-button {
  min-height: 52px !important;
  border-radius: 12px !important;
  font-size: 1.03rem !important;
  font-weight: 800 !important;
}

.container.plm-product-info-page .plm-pi-action-copy {
  font-size: 1.06rem !important;
  line-height: 1.35 !important;
  font-weight: 800 !important;
  color: var(--plm-text, #fff) !important;
  margin: .1rem 0 0 0 !important;
}

.container.plm-product-info-page .plm-pi-action-card .plm-selection-count {
  margin-top: auto !important;
  align-self: flex-start !important;
  min-height: 40px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: .45rem .9rem !important;
  border-radius: 999px !important;
  font-size: .95rem !important;
  font-weight: 800 !important;
}

.container.plm-product-info-page .plm-pi-action-card .plm-mini-note {
  display: none !important;
}

.container.plm-product-info-page .plm-sop-panel {
  margin-top: 1.5rem !important;
}

/* PLM Product Info v19 - resolve action-card CSS conflicts and tighten 3-card layout */
.container.plm-product-info-page .plm-create-product-info-panel {
  padding: 1.25rem 1.35rem 1.35rem !important;
  overflow: hidden !important;
}

.container.plm-product-info-page .plm-create-product-info-panel .plm-section-head {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 1rem !important;
  margin: 0 0 1rem 0 !important;
  padding: 0 !important;
}

.container.plm-product-info-page .plm-create-product-info-panel .plm-section-head .plm-mini-note {
  max-width: 520px !important;
  text-align: right !important;
  opacity: .82 !important;
  line-height: 1.25 !important;
}

.container.plm-product-info-page .plm-pi-action-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1rem !important;
  align-items: stretch !important;
  width: 100% !important;
}

.container.plm-product-info-page .plm-pi-action-card {
  position: relative !important;
  display: grid !important;
  grid-template-rows: auto auto 1fr !important;
  align-content: start !important;
  min-height: 126px !important;
  height: auto !important;
  padding: .95rem 1rem !important;
  gap: .65rem !important;
  border: 1px solid var(--plm-panel-border, rgba(126, 200, 255, .30)) !important;
  border-radius: 14px !important;
  background: rgba(7, 36, 60, .44) !important;
  box-shadow: none !important;
  overflow: hidden !important;
}

.container.plm-product-info-page .plm-pi-action-card form,
.container.plm-product-info-page form.plm-pi-action-card {
  margin: 0 !important;
}

.container.plm-product-info-page .plm-pi-action-button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100% !important;
  min-height: 42px !important;
  height: 42px !important;
  padding: .55rem .9rem !important;
  margin: 0 !important;
  border-radius: 12px !important;
  font-size: .98rem !important;
  font-weight: 800 !important;
  line-height: 1.1 !important;
  white-space: nowrap !important;
}

.container.plm-product-info-page .plm-pi-action-copy {
  margin: 0 !important;
  padding: 0 !important;
  color: var(--plm-text, #fff) !important;
  font-size: 1rem !important;
  font-weight: 800 !important;
  line-height: 1.28 !important;
}

.container.plm-product-info-page .plm-pi-action-card .plm-selection-count {
  position: static !important;
  align-self: start !important;
  justify-self: start !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  min-width: 0 !important;
  min-height: 0 !important;
  height: auto !important;
  margin: .15rem 0 0 0 !important;
  padding: .38rem .75rem !important;
  border-radius: 999px !important;
  font-size: .9rem !important;
  line-height: 1.1 !important;
  font-weight: 800 !important;
  background: rgba(4, 29, 52, .60) !important;
  border: 1px solid var(--plm-panel-border, rgba(126, 200, 255, .30)) !important;
  color: var(--plm-text, #fff) !important;
}

.container.plm-product-info-page .plm-pi-action-card .plm-mini-note {
  display: none !important;
}

@media (max-width: 980px) {
  .container.plm-product-info-page .plm-pi-action-grid {
    grid-template-columns: 1fr !important;
  }

  .container.plm-product-info-page .plm-create-product-info-panel .plm-section-head {
    align-items: flex-start !important;
    flex-direction: column !important;
  }

  .container.plm-product-info-page .plm-create-product-info-panel .plm-section-head .plm-mini-note {
    max-width: none !important;
    text-align: left !important;
  }

  .container.plm-product-info-page .plm-description-mode {
    grid-template-columns: 1fr;
  }

  .container.plm-product-info-page .plm-description-mode-option + .plm-description-mode-option {
    border-left: 0;
    border-top: 1px solid var(--plm-panel-border, rgba(126, 200, 255, .30));
  }
}

/* PLM Spec Sheet v20 - simplify page workflow and move selection controls to the grid */
.container.plm-spec-sheet-page .plm-team-intro {
  margin-top: .75rem !important;
  font-size: 1rem !important;
  line-height: 1.45 !important;
}

.container.plm-spec-sheet-page .plm-spec-workflow-section {
  padding: 1.2rem 1.35rem !important;
}

.container.plm-spec-sheet-page .plm-spec-workflow-section .plm-section-head {
  margin-bottom: .85rem !important;
}

.container.plm-spec-sheet-page .plm-spec-workflow-help {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: .85rem !important;
  color: var(--plm-text-soft, rgba(223, 240, 255, .78)) !important;
  font-size: 1rem !important;
  line-height: 1.4 !important;
}

.container.plm-spec-sheet-page .plm-spec-rebuild-form {
  display: flex !important;
  align-items: center !important;
  gap: .9rem !important;
  margin: 1rem 0 0 !important;
  padding-top: 1rem !important;
  border-top: 1px solid rgba(126, 200, 255, .18) !important;
}

.container.plm-spec-sheet-page .plm-spec-rebuild-form .plm-button {
  min-width: 250px !important;
}

.container.plm-spec-sheet-page .plm-spec-edit-grid-section {
  margin-top: 1.1rem !important;
}

.container.plm-spec-sheet-page .plm-spec-grid-toolbar {
  display: flex !important;
  align-items: center !important;
  gap: .75rem !important;
  flex-wrap: wrap !important;
  margin: .9rem 0 1rem !important;
  padding: .85rem !important;
  border: 1px solid rgba(126, 200, 255, .18) !important;
  border-radius: 14px !important;
  background: rgba(5, 32, 55, .38) !important;
}

.container.plm-spec-sheet-page .plm-spec-grid-toolbar .plm-selection-count {
  min-height: 38px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: .45rem .85rem !important;
  border-radius: 999px !important;
  border: 1px solid var(--plm-panel-border, rgba(126, 200, 255, .30)) !important;
  background: rgba(4, 29, 52, .62) !important;
  color: var(--plm-text, #fff) !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
}

.container.plm-spec-sheet-page .plm-spec-grid-toolbar .plm-button[type="submit"] {
  margin-left: auto !important;
}

@media (max-width: 980px) {
  .container.plm-spec-sheet-page .plm-spec-workflow-help {
    grid-template-columns: 1fr !important;
  }

  .container.plm-spec-sheet-page .plm-spec-rebuild-form {
    align-items: stretch !important;
    flex-direction: column !important;
  }

  .container.plm-spec-sheet-page .plm-spec-rebuild-form .plm-button,
  .container.plm-spec-sheet-page .plm-spec-grid-toolbar .plm-button[type="submit"] {
    width: 100% !important;
    min-width: 0 !important;
    margin-left: 0 !important;
  }
}

/* ==========================================================
   PLM v21 - Images & Documents team workflow cleanup
   Keeps page copy short, moves row selection controls left,
   and separates safe row-selection actions from HubSpot actions.
   ========================================================== */
.container.plm-images-docs-page > .plm-subtitle {
    display: none !important;
}

.container.plm-images-docs-page .plm-alert:first-of-type {
    margin-top: 0.7rem;
}

.container.plm-images-docs-page .plm-asset-rules-section .plm-section-head {
    margin-bottom: 0.85rem;
}

.container.plm-images-docs-page .plm-asset-rules-section .plm-muted {
    margin-top: 0.8rem;
    margin-bottom: 0;
    max-width: 980px;
}

.container.plm-images-docs-page .plm-images-docs-section {
    border-left-color: var(--plm-accent, #2ba8d8) !important;
}

.container.plm-images-docs-page .plm-images-docs-head {
    align-items: flex-start !important;
    margin-bottom: 0.75rem;
}

.container.plm-images-docs-page .plm-images-docs-head h2 {
    margin-bottom: 0.2rem;
}

.container.plm-images-docs-page .plm-images-docs-toolbar {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 0.85rem;
    flex-wrap: wrap;
    padding: 0.8rem 0.9rem;
    margin: 0.65rem 0 0.85rem;
    border: 1px solid rgba(220, 162, 74, 0.58);
    border-radius: 13px;
    background: rgba(4, 43, 69, 0.42);
}

.container.plm-images-docs-page .plm-images-docs-select-actions,
.container.plm-images-docs-page .plm-images-docs-main-actions {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    flex-wrap: wrap;
}

.container.plm-images-docs-page .plm-images-docs-select-actions {
    justify-content: flex-start;
}

.container.plm-images-docs-page .plm-images-docs-main-actions {
    justify-content: flex-start;
    margin-left: 0;
    width: 100%;
}

.container.plm-images-docs-page .plm-document-reuse-field {
    flex: 1 1 300px;
    min-width: 240px;
    margin: 0;
}

.container.plm-images-docs-page .plm-document-reuse-field span {
    color: #bfe8ff;
    font-size: 0.72rem;
    font-weight: 900;
    letter-spacing: 0;
    text-transform: uppercase;
}

.container.plm-images-docs-page .plm-document-reuse-field select,
.container.plm-images-docs-page .plm-document-reuse-field input {
    min-height: 42px;
}

.container.plm-images-docs-page .plm-images-docs-toolbar .plm-button {
    min-height: 42px;
    padding: 0.7rem 1rem;
}

.container.plm-images-docs-page .plm-images-docs-grid-actions {
    display: flex;
    align-items: center;
    gap: 0.55rem;
    flex-wrap: wrap;
    padding: 0.65rem 0.75rem;
    margin: 0.8rem 0 0.45rem;
    border: 1px solid rgba(220, 162, 74, 0.58);
    border-radius: 12px;
    background: rgba(1, 21, 36, 0.22);
}

.container.plm-images-docs-page .plm-images-docs-final-actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.85rem;
    flex-wrap: wrap;
    padding: 0.8rem 0.9rem;
    margin: 0.8rem 0 0.45rem;
    border: 1px solid rgba(220, 162, 74, 0.58);
    border-radius: 12px;
    background: rgba(4, 43, 69, 0.36);
}

.container.plm-images-docs-page .plm-images-docs-final-actions h3 {
    margin: 0 0 0.2rem;
}

.container.plm-images-docs-page .plm-images-docs-final-buttons {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 0.55rem;
    flex-wrap: wrap;
}

.container.plm-images-docs-page #plmImagesDocsSelectionCount {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0.45rem 0.85rem;
    border: 1px solid rgba(127, 199, 255, 0.24);
    border-radius: 999px;
    color: #eaf7ff;
    font-weight: 800;
    background: rgba(1, 21, 36, 0.35);
    white-space: nowrap;
}

.container.plm-images-docs-page .plm-images-docs-grid-wrap {
    margin-top: 0.7rem !important;
}

.container.plm-images-docs-page .plm-images-docs-grid-table th {
    white-space: nowrap;
}

.container.plm-images-docs-page .plm-images-docs-grid-table .plm-mini-note {
    line-height: 1.25;
}

.container.plm-images-docs-page .plm-lifestyle-draft-review-line {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 0.35rem;
    margin-top: 0.35rem;
}

.container.plm-images-docs-page .plm-lifestyle-draft-review-line .plm-inline-button {
    min-height: 30px !important;
    padding: 0.35rem 0.6rem !important;
    font-size: 0.74rem !important;
}

.container.plm-images-docs-page .plm-images-docs-grid-table th:nth-child(6),
.container.plm-images-docs-page .plm-images-docs-grid-table td:nth-child(6) { width: 235px; }

.container.plm-images-docs-page .plm-images-docs-grid-table th:nth-child(8),
.container.plm-images-docs-page .plm-images-docs-grid-table td:nth-child(8) { width: 245px; }

.container.plm-images-docs-page .plm-images-docs-grid-table th:nth-child(10),
.container.plm-images-docs-page .plm-images-docs-grid-table td:nth-child(10) { width: 145px; }

.container.plm-images-docs-page .plm-asset-ready-cell .plm-mini-note {
    margin-top: 0.35rem;
}

@media (max-width: 900px) {
    .container.plm-images-docs-page .plm-images-docs-toolbar,
    .container.plm-images-docs-page .plm-images-docs-main-actions,
    .container.plm-images-docs-page .plm-images-docs-select-actions,
    .container.plm-images-docs-page .plm-images-docs-grid-actions,
    .container.plm-images-docs-page .plm-images-docs-final-actions,
    .container.plm-images-docs-page .plm-images-docs-final-buttons {
        align-items: stretch;
        flex-direction: column;
        width: 100%;
    }

    .container.plm-images-docs-page .plm-images-docs-main-actions {
        margin-left: 0;
    }

    .container.plm-images-docs-page .plm-images-docs-toolbar .plm-button,
    .container.plm-images-docs-page #plmImagesDocsSelectionCount {
        width: 100%;
    }
}

/* PLM AI Draft Jobs - cleaner top intro */
.plm-ai-draft-jobs-page .plm-page-intro {
  margin-top: 0.75rem !important;
  margin-bottom: 1.15rem !important;
  font-size: 1.02rem !important;
  line-height: 1.55 !important;
}
.plm-ai-draft-jobs-page .plm-section-head h2 {
  margin-bottom: 0 !important;
}
.plm-ai-draft-jobs-page .plm-ai-job-actions {
  display: flex !important;
  align-items: center !important;
  gap: 0.55rem !important;
  flex-wrap: wrap !important;
}
.plm-ai-draft-jobs-page .plm-ai-job-actions form {
  margin: 0 !important;
}

/* =========================================================
   PLM Kits & G-Manager v25
   SQL-only GM/Kit Manager upload, BC-relevant working set,
   and planned kit builder shell.
   ========================================================= */
.plm-kits-page .plm-page-intro {
    margin-top: 14px;
}

.plm-kits-upload-form {
    display: grid;
    gap: 12px;
}

.plm-kits-upload-grid {
    grid-template-columns: minmax(320px, 1fr) auto;
    align-items: end;
}

.plm-kits-upload-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 12px;
    flex-wrap: wrap;
}

.plm-kits-note {
    margin-top: 2px;
}

.plm-kits-metric-grid {
    grid-template-columns: repeat(5, minmax(150px, 1fr));
}

.plm-kits-table th,
.plm-kits-table td {
    vertical-align: top;
}

.plm-kits-table td:nth-child(2) {
    min-width: 260px;
}

.plm-kits-builder-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(180px, 1fr));
    gap: 14px;
}

@media (max-width: 1100px) {
    .plm-kits-upload-grid,
    .plm-kits-metric-grid,
    .plm-kits-builder-grid {
        grid-template-columns: 1fr;
    }

    .plm-kits-upload-actions {
        justify-content: flex-start;
    }
}

/* PLM v0.9bz Kits & G-Manager cleanup: shared readable card text and drag/drop upload */
.container.plm-page .plm-card-value.plm-card-text {
    font-size: var(--plm-card-text-size) !important;
    line-height: var(--plm-card-text-line-height) !important;
    font-weight: 850 !important;
}

.container.plm-kits-page .plm-kits-builder-grid .plm-card-value.plm-card-text {
    font-size: var(--plm-card-step-text-size) !important;
    line-height: 1.18 !important;
    letter-spacing: -0.01em;
}

.container.plm-kits-page .plm-kits-upload-section {
    overflow: visible !important;
}

.container.plm-kits-page .plm-kits-upload-form {
    display: grid;
    gap: 1rem;
}

.container.plm-kits-page .plm-kits-upload-drop-field {
    display: grid;
    gap: 0.45rem;
}

.container.plm-kits-page .plm-upload-label {
    color: var(--plm-accent-bright, #7ec8ff);
    font-size: 0.78rem;
    text-transform: uppercase;
    letter-spacing: 0.07em;
    font-weight: 900;
}

.container.plm-kits-page .plm-kits-upload-drop-zone {
    border: 2px dashed rgba(127, 199, 255, 0.7);
    background: rgba(9, 49, 80, 0.72);
    border-radius: 18px;
    padding: 22px;
    min-height: 112px;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(260px, 0.42fr);
    gap: 16px;
    align-items: center;
    cursor: pointer;
    transition: border-color 0.15s ease, background 0.15s ease, transform 0.15s ease;
}

.container.plm-kits-page .plm-kits-upload-drop-zone:hover,
.container.plm-kits-page .plm-kits-upload-drop-zone:focus,
.container.plm-kits-page .plm-kits-upload-drop-zone.is-dragover {
    outline: none;
    border-color: rgba(145, 210, 255, 1);
    background: rgba(13, 67, 108, 0.88);
}

.container.plm-kits-page .plm-kits-upload-drop-zone.is-dragover {
    transform: translateY(-1px);
}

.container.plm-kits-page .plm-upload-drop-title {
    color: #fff;
    font-size: 1.15rem;
    font-weight: 900;
    line-height: 1.2;
}

.container.plm-kits-page .plm-upload-drop-help {
    color: rgba(220, 239, 255, 0.82);
    font-size: 0.95rem;
    margin-top: 4px;
}

.container.plm-kits-page .plm-upload-file-input {
    width: 100%;
    border: 1px solid rgba(127, 199, 255, 0.45);
    background: rgba(255, 255, 255, 0.96);
    color: #062842;
    border-radius: 12px;
    padding: 12px;
    font-weight: 800;
}

.container.plm-kits-page .plm-selected-file {
    grid-column: 1 / -1;
    border-top: 1px solid rgba(127, 199, 255, 0.22);
    padding-top: 10px;
    color: rgba(220, 239, 255, 0.88);
    font-weight: 800;
    word-break: break-word;
}

.container.plm-kits-page .plm-kits-upload-drop-zone.has-file .plm-selected-file {
    color: #bfffd6;
}

.container.plm-kits-page .plm-kits-upload-actions {
    display: flex;
    justify-content: flex-end;
    gap: 0.75rem;
    flex-wrap: wrap;
}

.container.plm-kits-page .plm-kits-note {
    margin-top: 0;
}

@media (max-width: 900px) {
    .container.plm-kits-page .plm-kits-upload-drop-zone {
        grid-template-columns: 1fr;
    }
    .container.plm-kits-page .plm-kits-upload-actions {
        justify-content: flex-start;
    }
}


/* PLM Kits & G-Manager v27 - import status and diagnostics */
.container.plm-kits-page .plm-kits-submit-status {
    border: 1px solid rgba(249, 177, 66, 0.45);
    border-left: 4px solid #f9b142;
    background: rgba(249, 177, 66, 0.12);
    color: rgba(255, 255, 255, 0.96);
    border-radius: 14px;
    padding: 0.85rem 1rem;
    font-weight: 750;
}

.container.plm-kits-page .plm-kits-submit-status[hidden] {
    display: none !important;
}

.container.plm-kits-page .plm-kits-import-details {
    margin-top: 1rem;
    border: 1px solid rgba(127, 199, 255, 0.28);
    border-radius: 14px;
    background: rgba(7, 38, 64, 0.55);
    padding: 0.9rem 1rem;
}

.container.plm-kits-page .plm-kits-import-details summary {
    cursor: pointer;
    color: var(--plm-accent-bright, #7ec8ff);
    font-weight: 900;
}

.container.plm-kits-page .plm-debug-table {
    margin-top: 0.75rem;
}

.container.plm-kits-page .plm-debug-chip {
    display: inline-flex;
    align-items: center;
    margin: 0.15rem 0.25rem 0.15rem 0;
    padding: 0.2rem 0.45rem;
    border-radius: 999px;
    background: rgba(127, 199, 255, 0.14);
    border: 1px solid rgba(127, 199, 255, 0.26);
    color: rgba(232, 245, 255, 0.96);
    font-size: 0.78rem;
    font-weight: 800;
}


/* Kits & G-Manager v30 - Kit Manager upload workbook controls */
.plm-kits-upload-workbook-section .plm-kits-export-summary {
  margin-bottom: 1rem;
}

.plm-kits-export-form {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(220px, 1fr) minmax(220px, 1fr) auto;
  gap: 1rem;
  align-items: end;
}

.plm-kits-export-form .plm-button {
  min-height: 3rem;
  white-space: nowrap;
}

@media (max-width: 1100px) {
  .plm-kits-export-form {
    grid-template-columns: 1fr 1fr;
  }
}

@media (max-width: 720px) {
  .plm-kits-export-form {
    grid-template-columns: 1fr;
  }
}

/* Kits & G-Manager v32 - upload workbook mode cards */
.plm-kits-upload-mode-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 1rem;
  align-items: stretch;
  margin-top: 1rem;
}

.plm-kits-upload-mode-card {
  border: 1px solid rgba(122, 203, 255, 0.28);
  border-radius: 1rem;
  padding: 1rem;
  background: rgba(8, 43, 68, 0.45);
}

.plm-kits-upload-mode-card h3 {
  margin: 0 0 0.35rem;
  font-size: 1.05rem;
}

.plm-kits-upload-mode-card .plm-kits-export-form {
  margin-top: 0.9rem;
}

.plm-kits-mini-metrics {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.6rem;
  margin: 0.75rem 0;
}

.plm-kits-mini-metrics .plm-card {
  min-height: auto;
  padding: 0.8rem;
}

.plm-kits-mini-metrics .plm-card-value {
  font-size: 1.5rem;
}

.plm-kits-plm-batch-form {
  grid-template-columns: minmax(280px, 1fr) auto;
}

@media (max-width: 980px) {
  .plm-kits-upload-mode-grid,
  .plm-kits-plm-batch-form {
    grid-template-columns: 1fr;
  }
}

/* Kits & G-Manager v33 - simpler workflow layout and faster on-demand sections */
.container.plm-kits-page .plm-section {
  scroll-margin-top: 1.25rem;
}

.plm-kits-section-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin: 0.9rem 0 1.1rem;
  padding: 0.75rem;
  border: 1px solid rgba(122, 203, 255, 0.24);
  border-radius: 1rem;
  background: rgba(7, 37, 61, 0.55);
}

.plm-kits-section-nav a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.35rem;
  padding: 0.45rem 0.85rem;
  border: 1px solid rgba(122, 203, 255, 0.38);
  border-radius: 0.8rem;
  color: var(--plm-accent-bright, #7ec8ff);
  background: rgba(12, 67, 103, 0.45);
  font-weight: 900;
  text-decoration: none;
}

.plm-kits-section-nav a:hover,
.plm-kits-section-nav a:focus {
  background: rgba(20, 116, 164, 0.62);
  color: #fff;
}

.container.plm-kits-page .plm-section-instruction {
  margin: 0.75rem 0 1rem;
  padding: 0.8rem 1rem;
  font-size: 0.98rem;
  line-height: 1.45;
}

.plm-kits-upload-mode-grid-primary {
  grid-template-columns: minmax(0, 1.08fr) minmax(0, 0.92fr);
}

.plm-kits-primary-card {
  border-color: rgba(47, 178, 236, 0.62);
  box-shadow: inset 4px 0 0 rgba(47, 178, 236, 0.9);
}

.plm-kits-upload-mode-card > p.plm-muted {
  min-height: 2.8rem;
}

.plm-kits-export-fields {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 0.85rem;
}

.plm-kits-price-fix-form,
.plm-kits-plm-batch-form {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 0.85rem !important;
  align-items: stretch !important;
}

.plm-kits-wide-field {
  width: 100%;
}

.plm-kits-form-actions {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0.75rem;
  flex-wrap: wrap;
  width: 100%;
}

.plm-kits-form-actions .plm-button {
  min-width: 230px;
  max-width: 100%;
}

/* Kits & G-Manager v36 - app-owned kit draft editor layout */
.container.plm-kits-page .plm-kits-search-form,
.container.plm-kits-page .plm-kits-draft-editor-form,
.container.plm-kits-page .plm-kits-draft-download-form,
.container.plm-kits-page .plm-kits-new-draft-form {
  display: grid !important;
  align-items: stretch !important;
}

.container.plm-kits-page .plm-kits-search-form {
  grid-template-columns: minmax(240px, 1fr) minmax(180px, 230px) !important;
  gap: 0.9rem 1rem !important;
  align-items: end !important;
}

.container.plm-kits-page .plm-kits-search-form .plm-kits-form-actions {
  align-self: end;
  padding-bottom: 0.05rem;
}

.container.plm-kits-page .plm-kits-search-form .plm-kits-form-actions .plm-button {
  width: 100%;
  min-width: 0;
}

.container.plm-kits-page .plm-kits-draft-editor-card {
  margin-top: 1rem;
}

.container.plm-kits-page .plm-kits-draft-editor-form,
.container.plm-kits-page .plm-kits-new-draft-form {
  grid-template-columns: 1fr !important;
  gap: 1rem !important;
}

.container.plm-kits-page .plm-kits-draft-download-form {
  grid-template-columns: minmax(220px, 260px) !important;
  gap: 0 !important;
  margin-top: 0.85rem;
}

.container.plm-kits-page .plm-kits-draft-parent-fields,
.container.plm-kits-page .plm-kits-new-draft-fields {
  grid-template-columns: repeat(12, minmax(0, 1fr));
  column-gap: 2rem;
  row-gap: 1.35rem;
  align-items: end;
}

.container.plm-kits-page .plm-kits-draft-parent-fields .plm-filter-field,
.container.plm-kits-page .plm-kits-new-draft-fields .plm-filter-field {
  min-width: 0;
}

.container.plm-kits-page .plm-filter-field input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.container.plm-kits-page .plm-filter-field select {
  box-sizing: border-box !important;
  height: 43px !important;
  min-height: 43px !important;
  padding: 0 12px !important;
  line-height: 1.2 !important;
}

.container.plm-kits-page .plm-kits-identity-field {
  grid-column: span 3;
  justify-self: start;
  max-width: 330px;
  width: 100%;
}

.container.plm-kits-page .plm-kits-money-field {
  grid-column: span 2;
  justify-self: start;
  max-width: 150px;
  width: 100%;
}

.container.plm-kits-page .plm-kits-money-field input {
  text-align: right;
}

.container.plm-kits-page .plm-kits-description-field {
  grid-column: span 6;
  max-width: 760px;
  width: 100%;
}

.container.plm-kits-page .plm-kits-notes-field {
  grid-column: span 6;
  max-width: 760px;
  width: 100%;
}

.container.plm-kits-page .plm-kits-new-component-block {
  display: grid;
  gap: 0.95rem;
  margin-top: 0.25rem;
  max-width: 1040px;
}

.container.plm-kits-page .plm-kits-new-component-block h3 {
  margin: 0;
  font-size: 1rem;
}

.container.plm-kits-page .plm-kits-add-component-fields,
.container.plm-kits-page .plm-kits-new-component-fields {
  grid-template-columns: minmax(280px, 330px) minmax(90px, 110px) minmax(90px, 110px) minmax(96px, 116px) minmax(110px, 128px) minmax(110px, 128px);
  max-width: 980px;
  column-gap: 1.75rem;
  row-gap: 1.15rem;
  align-items: end;
}

.container.plm-kits-page .plm-kits-new-component-rows {
  display: grid;
  gap: 0.95rem;
}

.container.plm-kits-page .plm-kits-new-component-fields {
  max-width: 980px;
}

.container.plm-kits-page .plm-kits-add-component-fields {
  grid-template-columns: minmax(280px, 330px) minmax(90px, 110px) minmax(90px, 110px) minmax(110px, 128px) minmax(110px, 128px);
  max-width: 840px;
}

.container.plm-kits-page .plm-kits-add-component-row,
.container.plm-kits-page .plm-kits-remove-component-row {
  align-self: end;
  min-width: 0;
  width: 116px;
  height: 43px;
  padding: 0 0.7rem;
}

.container.plm-kits-page .plm-kits-readonly-price-field {
  max-width: 128px;
}

.container.plm-kits-page .plm-kits-readonly-price-field input {
  text-align: right;
}

.container.plm-kits-page .plm-kits-component-wrap {
  overflow-x: auto;
}

.container.plm-kits-page .plm-kits-component-table {
  min-width: 1280px;
  table-layout: fixed;
}

.container.plm-kits-page .plm-kits-component-table th,
.container.plm-kits-page .plm-kits-component-table td {
  vertical-align: top;
}

.container.plm-kits-page .plm-kits-component-table th:nth-child(1) { width: 74px; }
.container.plm-kits-page .plm-kits-component-table th:nth-child(2) { width: 100px; }
.container.plm-kits-page .plm-kits-component-table th:nth-child(3) { width: 230px; }
.container.plm-kits-page .plm-kits-component-table th:nth-child(4) { width: 180px; }
.container.plm-kits-page .plm-kits-component-table th:nth-child(6) { width: 170px; }
.container.plm-kits-page .plm-kits-component-table th:nth-child(7) { width: 90px; }
.container.plm-kits-page .plm-kits-component-table th:nth-child(8) { width: 110px; }
.container.plm-kits-page .plm-kits-component-table th:nth-child(9) { width: 82px; }

.container.plm-kits-page .plm-kits-seq-input,
.container.plm-kits-page .plm-kits-qty-input,
.container.plm-kits-page .plm-kits-sku-input {
  width: 100%;
}

.container.plm-kits-page .plm-kits-seq-input {
  max-width: 64px;
}

.container.plm-kits-page .plm-kits-qty-input {
  max-width: 90px;
}

.container.plm-kits-page .plm-kits-remove-cell {
  text-align: center;
}

.container.plm-kits-page .plm-kits-draft-list-table {
  min-width: 640px;
}

.container.plm-kits-page .plm-kits-draft-list-table .plm-button {
  min-width: 68px;
  white-space: nowrap;
}

@media (max-width: 1200px) {
  .container.plm-kits-page .plm-kits-draft-parent-fields,
  .container.plm-kits-page .plm-kits-new-draft-fields {
    grid-template-columns: repeat(6, minmax(0, 1fr));
  }
}

@media (max-width: 760px) {
  .container.plm-kits-page .plm-kits-search-form,
  .container.plm-kits-page .plm-kits-draft-parent-fields,
  .container.plm-kits-page .plm-kits-new-draft-fields,
  .container.plm-kits-page .plm-kits-add-component-fields,
  .container.plm-kits-page .plm-kits-new-component-fields {
    grid-template-columns: 1fr !important;
  }

  .container.plm-kits-page .plm-kits-identity-field,
  .container.plm-kits-page .plm-kits-money-field,
  .container.plm-kits-page .plm-kits-description-field,
  .container.plm-kits-page .plm-kits-notes-field {
    grid-column: auto;
    max-width: none;
  }
}

.plm-kits-on-demand-panel {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  flex-wrap: wrap;
  margin-top: 0.9rem;
  padding: 1rem;
  border: 1px dashed rgba(122, 203, 255, 0.42);
  border-radius: 1rem;
  background: rgba(6, 36, 58, 0.48);
  color: rgba(221, 239, 255, 0.9);
  font-weight: 800;
}

.container.plm-kits-page .plm-kits-builder-grid .plm-card-value.plm-card-text {
  font-size: 1.05rem !important;
  line-height: 1.22 !important;
  letter-spacing: 0 !important;
}

.plm-kits-workbench-filters {
  display: grid;
  grid-template-columns: minmax(220px, 1.2fr) minmax(210px, 0.9fr) minmax(130px, 0.35fr) auto;
  gap: 0.85rem;
  align-items: end;
  margin: 0.85rem 0 1rem;
}

.plm-kits-gp-field input {
  max-width: 160px;
}

.plm-kits-workbench-summary {
  margin-top: 0.85rem;
}

.plm-kits-workbench-table {
  margin-top: 1rem;
}

.plm-kits-workbench-table th:nth-child(1) { width: 18%; }
.plm-kits-workbench-table th:nth-child(2) { width: 12%; }
.plm-kits-workbench-table th:nth-child(3) { width: 13%; }
.plm-kits-workbench-table th:nth-child(8) { width: 13%; }
.plm-kits-workbench-table th:nth-child(9) { width: 20%; }

.plm-kits-workbench-table td {
  vertical-align: top;
}

@media (max-width: 1100px) {
  .plm-kits-upload-mode-grid-primary,
  .plm-kits-export-fields,
  .plm-kits-workbench-filters {
    grid-template-columns: 1fr;
  }
}

/* ==========================================
   PLM v34 - Product Info warranty workflow
   ========================================== */
.plm-product-info-draft-grid .plm-pi-col-warranty { width: 250px; }
.plm-pi-warranty-cell .plm-pi-cell-preview {
  min-height: 2.2rem;
}
.plm-status-pill {
  display: inline-flex;
  align-items: center;
  width: fit-content;
  max-width: 100%;
  border-radius: 999px;
  padding: .18rem .55rem;
  margin: .25rem .35rem .05rem 0;
  font-size: .72rem;
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: .02em;
  text-transform: lowercase;
  border: 1px solid rgba(255,255,255,.25);
}
.plm-status-pill-warn {
  background: rgba(245, 158, 11, .20);
  border-color: rgba(245, 158, 11, .55);
  color: #ffd08a;
}
.plm-product-info-summary {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}
@media (max-width: 900px) {
  .plm-product-info-draft-grid { min-width: 1550px; }
}

/* PLM v35 - Warranty belongs on Spec Sheet / custom-field workflow */
.plm-warranty-bulk-section {
  margin-top: 1rem;
}

.plm-warranty-bulk-grid {
  display: grid;
  grid-template-columns: minmax(320px, 1.4fr) minmax(190px, 0.6fr);
  gap: 1rem;
  align-items: end;
}

.plm-warranty-bulk-grid .plm-warranty-value-field {
  min-width: 0;
}

.plm-warranty-presets {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.65rem;
}

.plm-warranty-presets .plm-button {
  min-height: 2.4rem;
  padding: 0.55rem 0.85rem;
}

.plm-warranty-actions {
  grid-column: 1 / -1;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 0.75rem;
}

.plm-section-instruction {
  margin: 0.75rem 0 1rem 0;
}

@media (max-width: 900px) {
  .plm-warranty-bulk-grid {
    grid-template-columns: 1fr;
  }
}

/* PLM v36 - Spec Sheet generic bulk-fill controls */
.plm-spec-bulk-fill-row {
  display: grid;
  grid-template-columns: minmax(180px, 0.8fr) minmax(320px, 1.4fr) minmax(180px, 0.8fr) auto;
  gap: 1rem;
  align-items: end;
  margin: 1rem 0 0.75rem;
}

.plm-spec-bulk-value-field input {
  width: 100%;
}

.plm-spec-bulk-presets {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  margin: 0 0 1rem;
}

@media (max-width: 1000px) {
  .plm-spec-bulk-fill-row {
    grid-template-columns: 1fr;
  }
}


/* PLM Publish Preview v40 - separate optional GP/Revit controls from publish workflow */
.plm-publish-control-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 1rem;
  align-items: stretch;
}

.plm-publish-preview-page .plm-gp-override-section,
.plm-publish-preview-page .plm-revit-section {
  margin-top: 1rem;
}

.plm-gp-override-row,
.plm-revit-override-row {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) auto;
  gap: 0.85rem;
  align-items: end;
}

.plm-gp-override-row .plm-muted {
  grid-column: 1 / -1;
}

.plm-publish-gp-control input,
.plm-publish-revit-control input {
  max-width: 100%;
}

.plm-publish-gp-control small,
.plm-publish-revit-control small {
  display: block;
  margin-top: 0.35rem;
  color: var(--plm-text-soft, #b7c9da);
  font-size: 0.82rem;
  line-height: 1.25;
}

.plm-publish-top-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.75rem;
  margin: 0 0 1rem;
}

.plm-bc-publish-progress-bar {
  width: 100%;
  height: 1rem;
  margin: 0.35rem 0 1rem;
  accent-color: #55d7ad;
}

.plm-button-danger {
  background: #9f1d24 !important;
  border-color: #fca5a5 !important;
  color: #fff !important;
}

.plm-button-danger:hover {
  background: #b91c1c !important;
}

.plm-publish-price-preview {
  font-weight: 800;
}

.plm-publish-bottom-actions {
  margin-top: 1rem;
}

@media (max-width: 1100px) {
  .plm-publish-control-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 720px) {
  .plm-gp-override-row,
  .plm-revit-override-row {
    grid-template-columns: 1fr;
  }

  .plm-publish-top-actions .plm-button {
    flex: 1 1 100%;
  }
}

/* PLM v51 vendor upload cleanup: primary workflow first, missing-brand creation secondary. */
.container.plm-vendor-upload-page .plm-step-note {
  margin: 0 0 1.1rem 0;
}
.container.plm-vendor-upload-page .plm-create-brand-card {
  margin-top: .35rem !important;
  padding: 0 !important;
  background: rgba(7, 45, 72, 0.48) !important;
  border: 1px solid rgba(122, 203, 255, 0.28) !important;
  border-radius: 14px !important;
}
.container.plm-vendor-upload-page .plm-create-brand-card details {
  padding: .95rem 1rem !important;
}
.container.plm-vendor-upload-page .plm-create-brand-card summary {
  cursor: pointer;
  color: var(--plm-text, #fff);
  font-weight: 900;
  font-size: 1rem;
}
.container.plm-vendor-upload-page .plm-create-brand-card p {
  margin: .7rem 0 1rem 0 !important;
  max-width: 980px;
}
.container.plm-vendor-upload-page .plm-create-brand-form-inline {
  display: grid !important;
  grid-template-columns: minmax(260px, 1fr) minmax(220px, .8fr) auto !important;
  gap: .9rem !important;
  align-items: end !important;
}
.container.plm-vendor-upload-page .plm-create-brand-form-inline .plm-button {
  min-height: 46px !important;
  white-space: nowrap;
}
.container.plm-vendor-upload-page .plm-section-head h2 {
  margin-bottom: 0;
}
@media (max-width: 1000px) {
  .container.plm-vendor-upload-page .plm-create-brand-form-inline {
    grid-template-columns: 1fr !important;
  }
  .container.plm-vendor-upload-page .plm-create-brand-form-inline .plm-button {
    width: 100%;
  }
}

/* =========================================================
   PLM v52 polish: calmer workflow tabs, compact secondary buttons,
   and simpler Spec Sheet review layout.
   ========================================================= */
.container.plm-page .plm-top-tabs {
  background: rgba(8, 41, 68, 0.48) !important;
  border-color: rgba(127, 199, 255, 0.28) !important;
}

.container.plm-page .plm-top-tabs .plm-top-tab,
.container.plm-page .plm-top-tabs .plm-top-tab.module-tab,
.container.plm-page a.plm-top-tab {
  background: rgba(18, 74, 110, 0.72) !important;
  background-image: none !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border-color: rgba(127, 199, 255, 0.42) !important;
  box-shadow: none !important;
}

.container.plm-page .plm-top-tabs .plm-top-tab:hover,
.container.plm-page .plm-top-tabs .plm-top-tab.module-tab:hover,
.container.plm-page a.plm-top-tab:hover {
  background: rgba(26, 103, 145, 0.86) !important;
  border-color: rgba(142, 208, 255, 0.75) !important;
}

.container.plm-page .plm-top-tabs .plm-top-tab.active,
.container.plm-page .plm-top-tabs .plm-top-tab.module-tab.active,
.container.plm-page a.plm-top-tab.active {
  background: linear-gradient(180deg, #1a789f, #126286) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  border-color: rgba(142, 208, 255, 0.9) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.09) !important;
}

/* Keep secondary/cancel buttons from becoming large blocky buttons. */
.container.plm-page .plm-actions-row .plm-button-secondary,
.container.plm-page .plm-form-actions .plm-button-secondary,
.container.plm-page a.plm-button-secondary[href*="vendor-library"],
.container.plm-page a.plm-button-secondary[href*="/product-load-manager"] {
  min-height: 36px !important;
  padding: 0.55rem 0.9rem !important;
  border-radius: 10px !important;
  flex: 0 0 auto !important;
  width: auto !important;
  max-width: max-content !important;
}

.container.plm-page .plm-button,
.container.plm-page button.plm-button,
.container.plm-page a.plm-button {
  max-width: 100%;
}

.container.plm-page .plm-grid {
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)) !important;
}

.container.plm-page .plm-spec-team-summary {
  padding: 1rem 1.05rem !important;
}

.container.plm-page .plm-optional-tool {
  margin-top: 0.75rem;
  border: 1px solid rgba(127, 199, 255, 0.20);
  border-radius: 12px;
  padding: 0.75rem 0.9rem;
  background: rgba(4, 24, 40, 0.18);
}

.container.plm-page .plm-optional-tool summary {
  cursor: pointer;
  color: var(--sms-light-blue, #8ed0ff);
  font-weight: 900;
}

.container.plm-page .plm-optional-tool .plm-spec-rebuild-form {
  margin-top: 0.75rem !important;
}

.container.plm-page .plm-spec-edit-grid-section .plm-section-head {
  align-items: flex-start !important;
}

.container.plm-page .plm-spec-bulk-fill-row {
  display: grid !important;
  grid-template-columns: minmax(190px, 0.8fr) minmax(300px, 1.55fr) minmax(190px, 0.85fr) auto !important;
  gap: 0.8rem !important;
  align-items: end !important;
}

.container.plm-page .plm-spec-bulk-presets {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0.55rem !important;
  margin: 0.7rem 0 0.9rem !important;
}

.container.plm-page .plm-spec-bulk-presets .plm-button {
  min-height: 34px !important;
  padding: 0.45rem 0.75rem !important;
  border-radius: 10px !important;
}

.container.plm-page .plm-spec-grid-toolbar {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 0.7rem !important;
  padding: 0.7rem 0.8rem !important;
  border: 1px solid rgba(127, 199, 255, 0.16);
  border-radius: 13px;
  background: rgba(3, 27, 46, 0.22);
}

.container.plm-page .plm-spec-grid-toolbar .plm-muted {
  flex: 1 1 260px !important;
}

.container.plm-page .plm-spec-grid-toolbar .plm-button,
.container.plm-page .plm-spec-grid-toolbar .plm-selection-count {
  min-height: 36px !important;
}

.container.plm-page .plm-spec-grid-table tbody td {
  padding-top: 0.8rem !important;
  padding-bottom: 0.8rem !important;
}

.container.plm-page .plm-spec-grid-table .plm-spec-cell-preview,
.container.plm-page .plm-spec-grid-table .plm-spec-static-preview {
  line-height: 1.28 !important;
}

.container.plm-page .plm-spec-cell-source {
  margin-top: 0.35rem;
}

.container.plm-page .plm-spec-suggestion-actions {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  margin-top: 0.45rem;
}

.container.plm-page .plm-spec-suggestion-actions .plm-button {
  min-width: 0 !important;
  min-height: 30px !important;
  padding: 0.3rem 0.4rem !important;
  font-size: 0.78rem !important;
}

.container.plm-page .plm-spec-column-actions {
  margin-top: 0.45rem;
}

.container.plm-page .plm-spec-column-label-input {
  width: 100%;
  min-width: 0;
  height: 34px;
  padding: 0.35rem 0.45rem;
  font-size: 0.82rem;
  font-weight: 700;
  text-align: center;
}

.container.plm-page .plm-spec-column-actions + .plm-mini-note {
  display: block;
  margin-top: 0.3rem;
  line-height: 1.2;
}

.container.plm-page .plm-spec-excluded-columns {
  margin: 0.8rem 0;
}

.container.plm-page .plm-spec-excluded-column-list {
  display: grid;
  gap: 0.5rem;
  margin-top: 0.7rem;
}

.container.plm-page .plm-spec-excluded-column-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
}

@media (max-width: 1100px) {
  .container.plm-page .plm-spec-bulk-fill-row {
    grid-template-columns: 1fr !important;
  }
}

/* PLM dashboard and pricing-update cleanup */
.container.plm-page .plm-card-bc-products {
  min-height: 112px !important;
}

.container.plm-page .plm-card-bc-products > .plm-mini-note,
.container.plm-page .plm-card-bc-products > .plm-bc-count-meta {
  display: none !important;
}

.container.plm-page .plm-bc-product-metrics {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 10px !important;
  margin-top: 10px !important;
}

.container.plm-page .plm-bc-product-metrics span {
  display: grid !important;
  min-width: 0 !important;
  gap: 3px !important;
}

.container.plm-page .plm-bc-product-metrics small {
  color: rgba(222, 240, 255, .78) !important;
  font-size: 10px !important;
  font-weight: 900 !important;
  line-height: 1.05 !important;
}

.container.plm-page .plm-bc-product-metrics strong {
  color: #ffffff !important;
  font-size: 25px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
}

.container.plm-pricing-update-page .plm-pricing-filter-form {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-end !important;
  gap: 12px 16px !important;
  max-width: 980px !important;
  justify-content: flex-start !important;
}

.container.plm-pricing-update-page .plm-pricing-filter-form > .plm-filter-field:first-of-type {
  flex: 0 1 520px !important;
  max-width: 520px !important;
  min-width: 320px !important;
}

.container.plm-pricing-update-page .plm-pricing-filter-form > .plm-filter-small {
  flex: 0 0 120px !important;
  max-width: 120px !important;
  min-width: 120px !important;
}

.container.plm-pricing-update-page .plm-pricing-filter-form .plm-filter-field input,
.container.plm-pricing-update-page .plm-pricing-filter-form .plm-filter-field select {
  box-sizing: border-box !important;
  width: 100% !important;
}

.container.plm-pricing-update-page .plm-pricing-filter-form .plm-filter-actions {
  flex: 0 0 auto !important;
  min-width: 0 !important;
  justify-content: flex-start !important;
  align-self: flex-end !important;
  gap: 10px !important;
}

.container.plm-pricing-update-page .plm-pricing-filter-form .plm-filter-actions .plm-button {
  box-sizing: border-box !important;
  height: 40px !important;
  min-height: 40px !important;
  padding: 0 14px !important;
  border-radius: 10px !important;
  font-size: 14px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
  width: auto !important;
  max-width: none !important;
}

.container.plm-pricing-update-page .plm-pricing-filter-form .plm-pricing-clear-button {
  flex: 0 0 64px !important;
  width: 64px !important;
  min-width: 64px !important;
  max-width: 64px !important;
  padding: 0 !important;
}

.container.plm-page .plm-filter-actions .plm-button-secondary {
  box-sizing: border-box !important;
  height: 40px !important;
  min-height: 40px !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  width: auto !important;
}

.container.plm-pricing-update-page .plm-pricing-apply-bar {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px 14px !important;
  align-items: flex-end !important;
  margin-bottom: 12px !important;
  padding: 12px 14px !important;
  border: 1px solid rgba(126, 200, 255, .20) !important;
  border-radius: 12px !important;
  background: rgba(3, 24, 41, .26) !important;
}

.container.plm-pricing-update-page .plm-pricing-apply-bar .plm-pricing-confirm {
  flex: 0 0 300px !important;
  min-width: 260px !important;
  max-width: 300px !important;
}

.container.plm-pricing-update-page .plm-pricing-confirm input {
  box-sizing: border-box !important;
  height: 40px !important;
  min-height: 40px !important;
  padding: 0 12px !important;
  width: 100% !important;
  font-size: 13px !important;
  line-height: 1 !important;
}

.container.plm-pricing-update-page .plm-pricing-apply-button {
  box-sizing: border-box !important;
  flex: 0 0 auto !important;
  height: 40px !important;
  min-height: 40px !important;
  max-width: 100% !important;
  padding: 0 14px !important;
  border-radius: 10px !important;
  font-size: 14px !important;
  line-height: 1 !important;
  white-space: nowrap !important;
}

.container.plm-pricing-update-page .plm-pricing-apply-bar > .plm-muted {
  flex: 1 1 360px !important;
  line-height: 1.25 !important;
  padding-bottom: 8px !important;
}

.container.plm-pricing-update-page .plm-pricing-apply-form .plm-table th:first-child,
.container.plm-pricing-update-page .plm-pricing-apply-form .plm-table td:first-child {
  width: 72px !important;
  text-align: center !important;
}

.container.plm-pricing-update-page .plm-pricing-apply-form input[type="checkbox"] {
  width: 18px !important;
  height: 18px !important;
}

@media (max-width: 980px) {
  .container.plm-pricing-update-page .plm-pricing-filter-form,
  .container.plm-pricing-update-page .plm-pricing-apply-bar {
    grid-template-columns: 1fr !important;
    max-width: none !important;
  }
}

/* PLM batch builder: separate vendor-scoped SKU and text search fields. */
.container.plm-page.plm-batch-builder-page .plm-batch-filter-form .plm-field-sku-search {
  grid-column: span 3 !important;
}

.container.plm-page.plm-batch-builder-page .plm-batch-filter-form .plm-field-text-search {
  grid-column: span 3 !important;
}

.container.plm-page.plm-batch-builder-page .plm-batch-filter-form .plm-field-category {
  grid-column: span 2 !important;
}

.container.plm-page.plm-batch-builder-page .plm-batch-filter-form .plm-field-rows {
  grid-column: span 1 !important;
}

.container.plm-batch-builder-page .plm-select-all-matching-check {
  align-items: center !important;
  align-self: end !important;
  display: flex !important;
  min-height: 40px !important;
  padding: 8px 10px !important;
}

.container.plm-batch-builder-page .plm-batch-pagination {
  align-items: center !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 12px !important;
  justify-content: space-between !important;
  margin: 10px 0 12px !important;
}

.container.plm-batch-builder-page .plm-batch-pagination .plm-actions-row {
  margin: 0 !important;
}

.container.plm-batch-builder-page .plm-batch-pagination .plm-button[disabled] {
  opacity: .45 !important;
  pointer-events: none !important;
}

/* PLM batch builder: make full-result selection and final create controls read as one step. */
.container.plm-batch-builder-page .plm-final-create-panel-v12 {
  grid-template-columns: minmax(260px, 1fr) minmax(300px, auto) minmax(300px, auto) !important;
  align-items: start !important;
}

.container.plm-batch-builder-page .plm-select-all-matching-wrap {
  align-self: start !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  min-width: 280px !important;
}

.container.plm-batch-builder-page .plm-select-all-matching-check {
  align-items: center !important;
  align-self: auto !important;
  display: flex !important;
  margin: 0 !important;
  min-height: 22px !important;
  padding: 0 !important;
}

.container.plm-batch-builder-page .plm-select-all-matching-button {
  justify-content: center !important;
  min-height: 44px !important;
  white-space: normal !important;
}

.container.plm-batch-builder-page .plm-button-active {
  background: linear-gradient(180deg, rgba(13, 117, 164, .98), rgba(7, 87, 132, .98)) !important;
  border-color: rgba(126, 218, 255, .78) !important;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .08), 0 0 0 3px rgba(36, 185, 226, .16) !important;
  color: #fff !important;
}

.container.plm-batch-builder-page .plm-final-create-panel-v12 .plm-create-confirm-group {
  grid-column: 1 / -1 !important;
  grid-template-columns: minmax(240px, 320px) minmax(220px, auto) minmax(0, 1fr) !important;
  align-items: end !important;
  justify-content: start !important;
}

.container.plm-batch-builder-page .plm-final-create-panel-v12 .plm-create-confirm-group .plm-filter-field {
  margin: 0 !important;
}

.container.plm-batch-builder-page .plm-final-create-panel-v12 .plm-create-primary-button {
  align-self: end !important;
  justify-self: start !important;
  min-width: 220px !important;
}

@media (max-width: 1180px) {
  .container.plm-page.plm-batch-builder-page .plm-batch-filter-form .plm-field-sku-search,
  .container.plm-page.plm-batch-builder-page .plm-batch-filter-form .plm-field-text-search,
  .container.plm-page.plm-batch-builder-page .plm-batch-filter-form .plm-field-category {
    grid-column: span 6 !important;
  }

  .container.plm-page.plm-batch-builder-page .plm-batch-filter-form .plm-field-rows {
    grid-column: span 3 !important;
  }
}

/* PLM batch builder: final create area and compact row-selection controls. */
.container.plm-batch-builder-page .plm-final-create-panel-v12 {
  align-items: end !important;
  display: grid !important;
  gap: 18px !important;
  grid-template-columns: minmax(300px, 1fr) minmax(520px, auto) !important;
}

.container.plm-batch-builder-page .plm-final-create-panel-v12 .plm-create-confirm-group {
  align-items: end !important;
  display: grid !important;
  gap: 10px !important;
  grid-column: auto !important;
  grid-template-columns: minmax(260px, 320px) minmax(220px, auto) !important;
  justify-content: end !important;
}

.container.plm-batch-builder-page .plm-final-create-panel-v12 .plm-confirm-create-field {
  margin: 0 !important;
}

.container.plm-batch-builder-page .plm-final-create-panel-v12 .plm-confirm-create-field input {
  height: 44px !important;
}

.container.plm-batch-builder-page .plm-final-create-panel-v12 .plm-create-primary-button {
  align-self: end !important;
  height: 44px !important;
  justify-self: start !important;
  min-height: 44px !important;
}

.container.plm-batch-builder-page .plm-create-required-note {
  grid-column: 1 / -1 !important;
  line-height: 1.2 !important;
  margin-top: -2px !important;
}

.container.plm-batch-builder-page .plm-result-selection-row {
  align-items: center !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
}

.container.plm-batch-builder-page .plm-small-check {
  align-items: center !important;
  color: rgba(234, 247, 255, .86) !important;
  display: inline-flex !important;
  font-size: .82rem !important;
  font-weight: 800 !important;
  gap: 6px !important;
  line-height: 1.2 !important;
  min-height: 24px !important;
  white-space: nowrap !important;
}

.container.plm-batch-builder-page .plm-small-check input {
  height: 14px !important;
  margin: 0 !important;
  width: 14px !important;
}

.container.plm-batch-builder-page .plm-small-text-button {
  background: transparent !important;
  border: 0 !important;
  color: var(--sms-cyan, #6ecbff) !important;
  cursor: pointer !important;
  font-size: .82rem !important;
  font-weight: 850 !important;
  line-height: 1.2 !important;
  padding: 2px 4px !important;
}

.container.plm-batch-builder-page .plm-small-text-button:hover {
  color: #fff !important;
  text-decoration: underline !important;
}

@media (max-width: 1180px) {
  .container.plm-batch-builder-page .plm-final-create-panel-v12,
  .container.plm-batch-builder-page .plm-final-create-panel-v12 .plm-create-confirm-group {
    grid-template-columns: 1fr !important;
    justify-content: stretch !important;
  }
}

/* =========================================================
   BigCommerce API Import / Export page
   ========================================================= */
.container .download-setup-card {
  padding-bottom: 16px !important;
}

.container .download-heading-row {
  align-items: flex-start !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 16px !important;
  justify-content: space-between !important;
  margin-bottom: 12px !important;
}

.container .download-heading-row h2 {
  margin-bottom: 4px !important;
}

.container .export-folder-pill {
  background: rgba(255, 255, 255, .045) !important;
  border: 1px solid rgba(125, 202, 255, .45) !important;
  border-radius: 12px !important;
  font-size: 12px !important;
  font-weight: 900 !important;
  max-width: min(620px, 100%) !important;
  padding: 9px 12px !important;
}

.container .export-folder-pill span {
  display: block !important;
  font-weight: 700 !important;
  margin-top: 3px !important;
  opacity: .86 !important;
  word-break: break-all !important;
}

.container .download-type-grid {
  display: grid !important;
  gap: 12px !important;
  grid-template-columns: repeat(3, minmax(190px, 1fr)) !important;
  margin: 12px 0 8px !important;
}

.container .download-type-card {
  align-items: flex-start !important;
  background: rgba(255, 255, 255, .045) !important;
  border: 1px solid rgba(125, 202, 255, .50) !important;
  border-radius: 12px !important;
  cursor: pointer !important;
  display: flex !important;
  font-weight: 900 !important;
  gap: 8px !important;
  min-height: 86px !important;
  padding: 14px 14px 14px 42px !important;
  position: relative !important;
  transition: border-color .18s ease, background .18s ease, box-shadow .18s ease, transform .18s ease !important;
}

.container .download-type-card:hover {
  background: rgba(125, 211, 252, .08) !important;
  border-color: rgba(125, 211, 252, .9) !important;
  transform: translateY(-1px) !important;
}

.container .download-type-card.selected,
.container .download-type-card:has(input[type="radio"]:checked) {
  background: linear-gradient(135deg, rgba(13, 104, 155, .82), rgba(38, 149, 193, .45)) !important;
  border-color: #7dd3fc !important;
  box-shadow: 0 10px 26px rgba(2, 132, 199, .16) !important;
}

.container .download-type-card input[type="radio"] {
  left: 16px !important;
  margin: 0 !important;
  position: absolute !important;
  top: 17px !important;
  width: auto !important;
}

.container .download-type-card .tiny-note {
  display: block !important;
  font-weight: 600 !important;
}

.container .download-priority-note {
  background: rgba(255, 255, 255, .04) !important;
  border: 1px solid rgba(125, 202, 255, .35) !important;
  border-radius: 10px !important;
  margin-top: 10px !important;
  opacity: .94 !important;
  padding: 8px 10px !important;
}

.container .product-scope-grid {
  grid-template-columns: minmax(280px, 1fr) minmax(220px, .72fr) minmax(280px, .95fr) !important;
}

.container .scope-card {
  background: rgba(255, 255, 255, .04) !important;
  border: 1px solid rgba(125, 202, 255, .38) !important;
  border-radius: 12px !important;
  box-sizing: border-box !important;
  min-height: 100% !important;
  padding: 12px !important;
}

.container .scope-card label:not(.inline-check) {
  display: block !important;
  margin-bottom: 8px !important;
  margin-top: 0 !important;
}

.container .scope-card input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.container .scope-card textarea,
.container .scope-card select {
  background: linear-gradient(180deg, #ffffff 0%, #f3f8fd 100%) !important;
  border: 1px solid rgba(126, 200, 255, .58) !important;
  border-radius: 8px !important;
  box-sizing: border-box !important;
  color: var(--sms-field-text) !important;
  display: block !important;
  margin-bottom: 4px !important;
  min-height: 44px !important;
  padding: 10px 12px !important;
  width: 100% !important;
}

.container .inline-check {
  align-items: flex-start !important;
  background: rgba(255, 255, 255, .045) !important;
  border: 1px solid rgba(125, 202, 255, .35) !important;
  border-radius: 10px !important;
  display: flex !important;
  font-weight: 900 !important;
  gap: 8px !important;
  margin-top: 10px !important;
  padding: 9px 10px !important;
}

.container .inline-check input[type="checkbox"] {
  margin-top: 2px !important;
  width: auto !important;
}

.container .primary-download-row {
  align-items: center !important;
  background: rgba(15, 118, 170, .13) !important;
  border: 1px solid rgba(125, 202, 255, .38) !important;
  border-radius: 12px !important;
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
  justify-content: space-between !important;
  margin: 16px 0 6px !important;
  padding: 12px !important;
}

.container .primary-download-row .tiny-note {
  margin: 0 !important;
  max-width: 680px !important;
}

.container .run-utility-button {
  min-height: 44px !important;
}

.container .columns-details {
  background: rgba(255, 255, 255, .035) !important;
  border: 1px solid rgba(125, 202, 255, .38) !important;
  border-radius: 12px !important;
  margin-top: 16px !important;
  overflow: hidden !important;
}

.container .columns-details > summary {
  align-items: center !important;
  cursor: pointer !important;
  display: flex !important;
  font-weight: 950 !important;
  gap: 12px !important;
  justify-content: space-between !important;
  list-style: none !important;
  padding: 13px 14px !important;
}

.container .columns-details > summary::-webkit-details-marker {
  display: none !important;
}

.container .columns-details > summary::after {
  align-items: center !important;
  border: 1px solid rgba(125, 202, 255, .55) !important;
  border-radius: 50% !important;
  content: "+" !important;
  display: inline-flex !important;
  flex: 0 0 auto !important;
  height: 28px !important;
  justify-content: center !important;
  width: 28px !important;
}

.container .columns-details[open] > summary::after {
  content: "-" !important;
}

.container .columns-details-body {
  padding: 0 12px 12px !important;
}

.container .columns-title-note {
  font-size: 12px !important;
  font-weight: 700 !important;
  opacity: .82 !important;
}

.container .utility-status-percent {
  float: right !important;
}

.container .utility-status-sub,
.container .result-saved-folder,
.container .completion-message {
  margin-top: 8px !important;
}

.container .utility-progress-track .utility-progress-fill {
  appearance: none !important;
  border: 0 !important;
  display: block !important;
  height: 12px !important;
  width: 100% !important;
}

.container .utility-progress-track .utility-progress-fill::-webkit-progress-bar {
  background: rgba(255, 255, 255, .20) !important;
  border-radius: 999px !important;
  overflow: hidden !important;
}

.container .utility-progress-track .utility-progress-fill::-webkit-progress-value {
  background: linear-gradient(135deg, var(--brand-accent), var(--sms-light-blue)) !important;
  border-radius: 999px !important;
}

.container .utility-progress-track .utility-progress-fill::-moz-progress-bar {
  background: linear-gradient(135deg, var(--brand-accent), var(--sms-light-blue)) !important;
  border-radius: 999px !important;
}

.container .utility-dynamic-result,
.container .completion-file {
  margin-top: 12px !important;
}

.container .completion-overlay.active {
  display: flex !important;
}

.container .completion-actions-left {
  justify-content: flex-start !important;
}

.container .upload-all-field-toggle {
  min-width: 220px !important;
}

.container .upload-workbench {
  grid-template-columns: minmax(320px, 520px) minmax(260px, 1fr) !important;
}

.container .upload-side-actions {
  align-items: flex-start !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
  padding-top: 28px !important;
}

.container .upload-side-actions .top-run-row {
  margin-top: 0 !important;
}

.container .file-drop-zone {
  border: 2px dashed rgba(125, 202, 255, .65) !important;
  border-radius: 16px !important;
  cursor: pointer !important;
  outline: none !important;
  padding: 18px !important;
  position: relative !important;
  transition: border-color .18s ease, background .18s ease, box-shadow .18s ease !important;
}

.container .file-drop-zone:hover,
.container .file-drop-zone:focus,
.container .file-drop-zone.drag-over {
  background: rgba(125, 211, 252, .12) !important;
  border-color: #7dd3fc !important;
  box-shadow: 0 8px 22px rgba(0, 0, 0, .12) !important;
}

.container .file-drop-input {
  border: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
  height: 1px !important;
  margin: -1px !important;
  opacity: 0 !important;
  overflow: hidden !important;
  padding: 0 !important;
  pointer-events: none !important;
  position: absolute !important;
  white-space: nowrap !important;
  width: 1px !important;
}

.container .file-drop-title {
  font-size: 16px !important;
  font-weight: 950 !important;
  margin-bottom: 4px !important;
}

.container .file-drop-subtitle {
  font-size: 13px !important;
  margin-bottom: 10px !important;
  opacity: .86 !important;
}

.container .file-choose-button {
  align-items: center !important;
  border: 1px solid rgba(125, 202, 255, .75) !important;
  border-radius: 10px !important;
  display: inline-flex !important;
  font-weight: 900 !important;
  justify-content: center !important;
  padding: 8px 12px !important;
}

.container .file-name-display {
  border-radius: 8px !important;
  font-size: 12px !important;
  margin-top: 10px !important;
  padding: 7px 8px !important;
  word-break: break-all !important;
}

.container .file-name-display.has-file {
  border-color: #7dd3fc !important;
  font-weight: 900 !important;
}

.container .completion-overlay {
  align-items: center !important;
  background: rgba(0, 0, 0, .55) !important;
  display: none !important;
  inset: 0 !important;
  justify-content: center !important;
  padding: 24px !important;
  position: fixed !important;
  z-index: 10000 !important;
}

.container .completion-modal {
  border-radius: 16px !important;
  box-shadow: 0 24px 70px rgba(0, 0, 0, .35) !important;
  max-height: 88vh !important;
  overflow: auto !important;
  padding: 20px !important;
  width: min(780px, 96vw) !important;
}

.container .completion-modal.success {
  border-top: 8px solid #22c55e !important;
}

.container .completion-modal.failed {
  border-top: 8px solid #ef4444 !important;
}

.container .completion-title {
  font-size: 24px !important;
  margin: 0 0 8px !important;
}

.container .completion-path {
  background: rgba(255, 255, 255, .08) !important;
  border: 1px solid rgba(125, 202, 255, .45) !important;
  border-radius: 8px !important;
  margin-top: 6px !important;
  padding: 8px !important;
  word-break: break-all !important;
}

.container .completion-actions {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 10px !important;
  justify-content: flex-end !important;
  margin-top: 14px !important;
}

.container .category-autocomplete-menu {
  background: #fff !important;
  border: 1px solid #bcd8f2 !important;
  border-radius: 12px !important;
  box-shadow: 0 18px 45px rgba(15, 23, 42, .18) !important;
  color: #0f172a !important;
  font-size: 13px !important;
  margin-top: 6px !important;
  max-height: 300px !important;
  overflow: auto !important;
  padding: 6px !important;
  position: relative !important;
  z-index: 20 !important;
}

.container .category-autocomplete-item {
  border-radius: 8px !important;
  color: #0f172a !important;
  cursor: pointer !important;
  line-height: 1.25 !important;
  padding: 9px 11px !important;
  white-space: normal !important;
}

.container .category-autocomplete-item:hover,
.container .category-autocomplete-item.active {
  background: #eef7ff !important;
  color: #054E9B !important;
}

.container .category-autocomplete-empty {
  color: #64748b !important;
  padding: 9px 11px !important;
}

.container .tiny-note-spaced {
  margin-bottom: 8px !important;
}

.container .section-spaced-heading {
  margin-top: 24px !important;
}

.container .perf-meter-row {
  align-items: center !important;
  display: flex !important;
  gap: 10px !important;
}

.container .perf-meter {
  flex: 1 1 auto !important;
  height: 12px !important;
}

.container .perf-meter::-webkit-progress-bar {
  background: #e5e7eb !important;
  border-radius: 999px !important;
  overflow: hidden !important;
}

.container .perf-meter::-webkit-progress-value {
  background: linear-gradient(135deg, var(--brand-primary, #054E9B), var(--brand-accent, #2695C1)) !important;
  border-radius: 999px !important;
}

.container .perf-meter::-moz-progress-bar {
  background: linear-gradient(135deg, var(--brand-primary, #054E9B), var(--brand-accent, #2695C1)) !important;
  border-radius: 999px !important;
}

.container .perf-meter-value {
  font-weight: 900 !important;
  min-width: 72px !important;
  text-align: right !important;
}

@media (max-width: 1000px) {
  .container .download-type-grid,
  .container .product-scope-grid,
  .container .category-scope-grid,
  .container .upload-workbench {
    grid-template-columns: 1fr !important;
  }

  .container .primary-download-row {
    align-items: flex-start !important;
  }
}

body .container form.utility-section:not(.active) {
  display: none !important;
}

body .container form.utility-section.active {
  display: block !important;
}

body .container [hidden] {
  display: none !important;
}

/* Restored Product Submissions public/review styles from command-center backup. */
.container.plm-intake-public-page {
    max-width: 1180px;
    overflow-x: hidden;
}

.container.plm-intake-public-page .plm-section,
.container.plm-intake-review-page .plm-section {
    box-sizing: border-box;
    overflow-x: hidden;
}

.container.plm-intake-public-page .plm-intake-choice-section,
.container.plm-intake-public-page .plm-intake-form,
.container.plm-intake-review-page .plm-intake-team-actions {
    margin-top: 1rem;
}

.container.plm-intake-public-page .plm-section-head {
    align-items: flex-start;
    gap: .65rem 1rem;
    justify-content: flex-start;
}

.container.plm-intake-public-page .plm-section-head .plm-mini-note {
    max-width: 520px;
    line-height: 1.45;
    text-align: left;
}

.container.plm-intake-public-page .plm-intake-method-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.container.plm-intake-public-page .plm-intake-method-card {
    display: block;
    min-height: 116px;
    text-decoration: none;
    cursor: pointer;
    transition: transform .15s ease, border-color .15s ease, background .15s ease;
}

.container.plm-intake-public-page .plm-intake-method-card:hover,
.container.plm-intake-public-page .plm-intake-method-card:focus-visible {
    transform: translateY(-1px);
    text-decoration: none;
}

.container.plm-intake-public-page .plm-intake-form {
    scroll-margin-top: 1.25rem;
}

.container.plm-intake-public-page .plm-intake-contact-grid,
.container.plm-intake-public-page .plm-intake-product-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(260px, 1fr));
    gap: 1rem 1.1rem;
    align-items: start;
}

.container.plm-intake-public-page .plm-intake-contact-grid .plm-filter-field,
.container.plm-intake-public-page .plm-intake-product-grid .plm-filter-field {
    min-width: 0;
}

.container.plm-intake-public-page .plm-intake-contact-grid .plm-upload-span-all,
.container.plm-intake-public-page .plm-intake-product-grid .plm-upload-span-all {
    grid-column: 1 / -1;
}

.container.plm-intake-public-page .plm-intake-field-with-upload {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: .45rem;
    min-width: 0;
}

.container.plm-intake-public-page .plm-filter-field input,
.container.plm-intake-public-page .plm-filter-field textarea,
.container.plm-intake-public-page .plm-filter-field select {
    width: 100%;
    box-sizing: border-box;
}

.container.plm-intake-public-page .plm-filter-field input,
.container.plm-intake-public-page .plm-filter-field select {
    min-height: 44px;
}

.container.plm-intake-public-page .plm-filter-field textarea {
    min-height: 96px;
    resize: vertical;
}

.container.plm-intake-public-page .plm-intake-field-group {
    margin-top: 1.25rem;
    padding-top: 1.1rem;
    border-top: 1px solid rgba(127, 199, 255, .18);
}

.container.plm-intake-public-page .plm-intake-field-group h3 {
    margin: 0 0 .85rem;
    color: var(--plm-text);
    font-size: 1rem;
}

.container.plm-intake-public-page .plm-filter-field small {
    display: block;
    margin-top: .35rem;
    color: rgba(219, 237, 255, .74);
    font-size: .8rem;
    line-height: 1.35;
}

.container.plm-intake-public-page .plm-filter-field em {
    color: rgba(219, 237, 255, .78);
    font-style: normal;
    font-weight: 800;
}

.container.plm-intake-public-page input[type="file"] {
    min-height: auto;
    padding: .9rem;
    border: 1px dashed rgba(127, 199, 255, .42);
    border-radius: 10px;
    background: rgba(6, 31, 53, .42);
    color: var(--plm-text);
}

.container.plm-intake-public-page input[type="file"]::file-selector-button {
    margin-right: .8rem;
    border: 1px solid rgba(127, 199, 255, .45);
    border-radius: 8px;
    background: rgba(15, 78, 117, .92);
    color: #fff;
    font-weight: 850;
    padding: .55rem .85rem;
}

.container.plm-intake-review-page {
    max-width: 1440px;
}

.container.plm-intake-review-page .plm-intake-queue-table th,
.container.plm-intake-review-page .plm-intake-queue-table td,
.container.plm-intake-review-page .plm-intake-detail-table th,
.container.plm-intake-review-page .plm-intake-detail-table td,
.container.plm-intake-public-page .plm-intake-result-table th,
.container.plm-intake-public-page .plm-intake-result-table td {
    vertical-align: top;
}

.container.plm-intake-review-page .plm-intake-team-actions .plm-filter-field {
    display: grid;
    gap: .4rem;
}

.container.plm-intake-review-page .plm-intake-team-actions .plm-actions-row {
    justify-content: flex-start;
}

.container.plm-intake-review-page .plm-intake-selection-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: .75rem 1rem;
    margin: .85rem 0 1rem;
    padding: .8rem;
    border: 1px solid rgba(127, 199, 255, .3);
    border-radius: 10px;
    background: rgba(6, 31, 53, .3);
}

.container.plm-intake-review-page .plm-intake-select-all {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    font-weight: 850;
}

.container.plm-intake-review-page .plm-intake-select-all input,
.container.plm-intake-review-page .plm-intake-row-select {
    width: 18px;
    height: 18px;
    accent-color: var(--plm-accent);
}

.container.plm-intake-review-page .plm-intake-detail-grid {
    grid-template-columns: minmax(320px, .9fr) minmax(360px, 1.1fr);
    align-items: stretch;
    margin-top: 1rem;
}

.container.plm-intake-review-page .plm-intake-data-list {
    display: grid;
    gap: .65rem;
    margin: 0;
}

.container.plm-intake-review-page .plm-intake-data-list div {
    display: grid;
    grid-template-columns: 110px minmax(0, 1fr);
    gap: .75rem;
    padding: .55rem .65rem;
    border: 1px solid rgba(127, 199, 255, .16);
    border-radius: 8px;
    background: rgba(6, 31, 53, .25);
}

.container.plm-intake-review-page .plm-intake-data-list dt {
    color: var(--plm-accent);
    font-size: .76rem;
    font-weight: 900;
    letter-spacing: .02em;
    text-transform: uppercase;
}

.container.plm-intake-review-page .plm-intake-data-list dd {
    margin: 0;
    min-width: 0;
    overflow-wrap: anywhere;
}

.container.plm-intake-review-page .plm-intake-create-batch-form {
    display: grid;
    gap: .8rem;
}

.container.plm-intake-review-page .plm-intake-products-workbench {
    margin-top: 1rem;
}

.container.plm-intake-review-page .plm-intake-receipt-note {
    max-width: 100%;
    overflow-wrap: anywhere;
    text-align: left;
}

.container.plm-intake-review-page .plm-intake-submitter-section {
    margin-top: 1rem;
}

.container.plm-intake-review-page .plm-intake-submitter-columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.container.plm-intake-review-page .plm-intake-handoff-note {
    margin-top: .75rem;
    padding-top: .65rem;
    border-top: 1px solid rgba(127, 199, 255, .18);
    color: rgba(219, 237, 255, .76);
    font-size: .82rem;
    line-height: 1.4;
}

.container.plm-intake-review-page .plm-intake-workflow-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    align-items: stretch;
    margin-top: 1rem;
}

.container.plm-intake-review-page .plm-intake-product-cards {
    display: grid;
    gap: 1rem;
    margin-bottom: 1.2rem;
}

.container.plm-intake-review-page .plm-intake-product-card {
    display: grid;
    grid-template-columns: minmax(180px, 240px) minmax(0, 1fr);
    gap: 1rem;
    padding: 1rem;
    border: 1px solid rgba(127, 199, 255, .28);
    border-radius: 10px;
    background: rgba(6, 31, 53, .28);
}

.container.plm-intake-review-page .plm-intake-product-media {
    min-height: 180px;
    border: 1px dashed rgba(127, 199, 255, .32);
    border-radius: 8px;
    background: rgba(1, 17, 32, .36);
    overflow: hidden;
}

.container.plm-intake-review-page .plm-intake-product-media a,
.container.plm-intake-review-page .plm-intake-product-media img,
.container.plm-intake-review-page .plm-intake-image-empty {
    display: flex;
    width: 100%;
    height: 100%;
}

.container.plm-intake-review-page .plm-intake-product-media img {
    object-fit: contain;
    background: rgba(255,255,255,.92);
}

.container.plm-intake-review-page .plm-intake-image-empty {
    align-items: center;
    justify-content: center;
    color: rgba(219, 237, 255, .7);
    font-weight: 900;
}

.container.plm-intake-review-page .plm-intake-product-main h3 {
    margin: 0 0 .25rem;
    color: var(--plm-text);
}

.container.plm-intake-review-page .plm-intake-match-alert {
    display: grid;
    gap: .55rem;
    margin: .8rem 0;
    padding: .8rem;
    border: 1px solid rgba(250, 176, 55, .7);
    border-left: 5px solid #fab037;
    border-radius: 9px;
    background: rgba(250, 176, 55, .11);
}

.container.plm-intake-review-page .plm-intake-match-alert strong,
.container.plm-intake-review-page .plm-intake-match-row span {
    min-width: 0;
    overflow-wrap: anywhere;
}

.container.plm-intake-review-page .plm-intake-match-row {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: .55rem 1rem;
    padding-top: .5rem;
    border-top: 1px solid rgba(250, 176, 55, .28);
    font-size: .85rem;
}

.container.plm-intake-review-page .plm-intake-description {
    margin: .75rem 0;
    color: rgba(235, 247, 255, .9);
    line-height: 1.45;
}

.container.plm-intake-review-page .plm-intake-checklist {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
    margin: .75rem 0 1rem;
}

.container.plm-intake-review-page .plm-intake-check {
    display: inline-flex;
    align-items: center;
    min-height: 28px;
    padding: .28rem .55rem;
    border-radius: 999px;
    border: 1px solid rgba(127, 199, 255, .28);
    background: rgba(127, 199, 255, .1);
    color: var(--plm-text);
    font-size: .78rem;
    font-weight: 850;
}

.container.plm-intake-review-page .plm-intake-check.is-ok {
    border-color: rgba(134, 239, 172, .44);
    background: rgba(34, 197, 94, .12);
}

.container.plm-intake-review-page .plm-intake-check.is-missing {
    border-color: rgba(248, 113, 113, .52);
    background: rgba(248, 113, 113, .13);
}

.container.plm-intake-review-page .plm-intake-uploaded-files {
    display: grid;
    gap: .35rem;
    margin: .75rem 0;
    padding: .7rem;
    border: 1px solid rgba(127, 199, 255, .22);
    border-radius: 8px;
    background: rgba(1, 17, 32, .22);
}

.container.plm-intake-review-page .plm-intake-uploaded-files strong {
    color: var(--plm-accent);
    font-size: .78rem;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.container.plm-intake-review-page .plm-intake-fix-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: .9rem;
    margin-top: .8rem;
}

.container.plm-intake-review-page .plm-intake-field-details {
    margin-top: 1rem;
}

.container.plm-intake-review-page .plm-intake-field-details summary {
    color: var(--plm-accent);
    cursor: pointer;
    font-weight: 900;
}

.container.plm-intake-review-page .plm-intake-field-details h4 {
    margin: 1rem 0 .5rem;
    color: var(--plm-text);
}

.container.plm-intake-review-page .plm-intake-field-review-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
    gap: .55rem;
}

.container.plm-intake-review-page .plm-intake-field-review-grid div {
    padding: .55rem .65rem;
    border: 1px solid rgba(127, 199, 255, .15);
    border-radius: 8px;
    background: rgba(1, 17, 32, .25);
    min-width: 0;
}

.container.plm-intake-review-page .plm-intake-field-review-grid span {
    display: block;
    color: var(--plm-accent);
    font-size: .74rem;
    font-weight: 900;
    text-transform: uppercase;
}

.container.plm-intake-review-page .plm-intake-field-review-grid strong {
    display: block;
    margin-top: .25rem;
    overflow-wrap: anywhere;
    font-size: .9rem;
}

.container.plm-intake-review-page .plm-intake-acknowledgement {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: .6rem;
    align-items: start;
    padding: .75rem;
    border: 1px solid rgba(250, 176, 55, .55);
    border-radius: 8px;
    background: rgba(250, 176, 55, .09);
    font-weight: 800;
    line-height: 1.35;
}

.container.plm-intake-review-page .plm-intake-acknowledgement input {
    width: 18px;
    height: 18px;
    margin: .1rem 0 0;
}

.container.plm-intake-review-page .plm-intake-submitter-details {
    margin-top: 1rem;
}

.container.plm-intake-review-page .plm-intake-submitter-details summary {
    margin-bottom: 1rem;
    color: var(--plm-accent);
    cursor: pointer;
    font-size: 1rem;
    font-weight: 900;
}

@media (max-width: 900px) {
    .container.plm-intake-review-page .plm-intake-workflow-grid,
    .container.plm-intake-review-page .plm-intake-submitter-columns,
    .container.plm-intake-review-page .plm-intake-product-card,
    .container.plm-intake-review-page .plm-intake-match-row {
        grid-template-columns: minmax(0, 1fr);
    }

    .container.plm-intake-review-page .plm-intake-product-media {
        min-height: 260px;
    }
}

/* PLM batch setup editor on /product-load-manager/batches/<id>. */
.container.plm-batch-page .plm-batch-setup-panel {
    border-left: 5px solid rgba(127, 199, 255, 0.62);
}

.container.plm-batch-page .plm-batch-setup-current {
    display: grid;
    grid-template-columns: repeat(2, minmax(260px, 1fr));
    gap: 0.8rem;
    margin-bottom: 1rem;
}

.container.plm-batch-page .plm-batch-setup-current > div {
    min-width: 0;
    border: 1px solid rgba(127, 199, 255, 0.22);
    border-radius: 8px;
    background: rgba(2, 25, 43, 0.28);
    padding: 0.82rem 0.9rem;
}

.container.plm-batch-page .plm-batch-setup-current span,
.container.plm-batch-page .plm-batch-setup-form .plm-filter-field span {
    display: block;
    color: var(--sms-light-blue);
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.07em;
    line-height: 1.25;
    text-transform: uppercase;
}

.container.plm-batch-page .plm-batch-setup-current strong {
    display: block;
    color: #fff;
    font-size: 1rem;
    line-height: 1.3;
    margin-top: 0.28rem;
    overflow-wrap: anywhere;
}

.container.plm-batch-page .plm-batch-setup-current small,
.container.plm-batch-page .plm-batch-setup-form small {
    display: block;
    margin-top: 0.3rem;
    line-height: 1.35;
}

.container.plm-batch-page .plm-batch-setup-form {
    display: grid;
    grid-template-columns: minmax(280px, 0.95fr) minmax(360px, 1.25fr);
    gap: 1rem 1.55rem;
    align-items: start;
}

.container.plm-batch-page .plm-batch-setup-form .plm-filter-field {
    margin: 0;
}

.container.plm-batch-page .plm-batch-setup-form input,
.container.plm-batch-page .plm-batch-setup-form select {
    width: 100%;
    min-width: 0;
}

.container.plm-batch-page .plm-batch-setup-category-field {
    grid-column: 1 / -1;
    max-width: 900px;
}

.container.plm-batch-page .plm-batch-category-tools {
    grid-column: 1 / -1;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 1rem;
}

.container.plm-batch-page .plm-batch-category-existing,
.container.plm-batch-page .plm-batch-category-create {
    min-width: 0;
    border: 1px solid rgba(127, 199, 255, 0.28);
    border-radius: 12px;
    background: rgba(2, 25, 43, 0.34);
    padding: 1rem;
}

.container.plm-batch-page .plm-batch-category-existing h3,
.container.plm-batch-page .plm-batch-category-create h3 {
    margin: 0 0 0.8rem;
    color: #fff;
}

.container.plm-batch-page .plm-batch-category-existing .plm-filter-field + .plm-filter-field,
.container.plm-batch-page .plm-batch-category-create .plm-filter-field,
.container.plm-batch-page .plm-batch-category-create .plm-button {
    margin-top: 0.75rem;
}

.container.plm-batch-page .plm-batch-category-create .plm-refresh-category-button {
    display: block;
    margin-left: auto;
}

.container.plm-batch-page .plm-batch-setup-actions {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    gap: 0.7rem;
    flex-wrap: wrap;
    padding-top: 0.35rem;
}

.container.plm-batch-page .plm-batch-setup-form .plm-filter-field small {
    min-height: 2.55em;
}

@media (max-width: 900px) {
    .container.plm-intake-public-page {
        max-width: 100%;
    }

    .container.plm-intake-public-page .plm-intake-method-grid,
    .container.plm-intake-public-page .plm-intake-contact-grid,
    .container.plm-intake-public-page .plm-intake-product-grid {
        grid-template-columns: 1fr;
    }

    .container.plm-intake-public-page .plm-section-head {
        flex-direction: column;
    }

    .container.plm-intake-review-page .plm-intake-detail-grid,
    .container.plm-intake-review-page .plm-intake-product-card,
    .container.plm-intake-review-page .plm-intake-fix-grid {
        grid-template-columns: 1fr;
    }

    .container.plm-batch-page .plm-batch-setup-form,
    .container.plm-batch-page .plm-batch-setup-current,
    .container.plm-batch-page .plm-batch-category-tools {
        grid-template-columns: 1fr;
    }
}

/* PLM Product Submissions public shell.
   This is the forward-facing StoreMoreStore submission page only.
   It intentionally overrides the internal Command Center sidebar container so
   /product-intake can run full screen without affecting protected PLM tabs. */
body.plm-intake-public-body {
    --plm-intake-public-blue: #004898;
    --plm-intake-public-blue-dark: #003d80;
    --plm-intake-public-blue-deep: #002f63;
    --plm-intake-public-blue-light: #2090C0;
    --plm-intake-public-blue-pale: #B0C8E0;
    --plm-intake-public-soft: #F4F9FC;
    background: var(--plm-intake-public-soft) !important;
    color: #0f172a !important;
    min-height: 100vh;
    overflow-x: hidden;
}

body.plm-intake-public-body .plm-intake-public-shell {
    min-height: 100vh;
    background:
        linear-gradient(180deg, rgba(0, 72, 152, .08), rgba(32, 144, 192, .10) 34%, rgba(244, 249, 252, 1) 68%),
        var(--plm-intake-public-soft);
}

body.plm-intake-public-body .plm-intake-public-header {
    align-items: center;
    background: #fff;
    border-bottom: 4px solid var(--plm-intake-public-blue-light);
    box-shadow: 0 12px 30px rgba(0, 72, 152, .14);
    box-sizing: border-box;
    display: grid;
    gap: 18px;
    grid-template-columns: minmax(230px, 320px) minmax(0, 1fr) minmax(230px, 320px);
    min-height: 92px;
    padding: 16px 36px;
    position: sticky;
    top: 0;
    z-index: 30;
}

body.plm-intake-public-body .plm-intake-public-logo-link {
    align-items: center;
    display: inline-flex;
    min-width: 0;
    text-decoration: none;
}

body.plm-intake-public-body .plm-intake-public-logo {
    display: block;
    height: auto;
    max-height: 62px;
    max-width: 292px;
    object-fit: contain;
    width: 100%;
}

body.plm-intake-public-body .plm-intake-public-header h1 {
    color: var(--plm-intake-public-blue) !important;
    font-size: 2rem;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1.12;
    margin: 0;
    text-align: center;
}

body.plm-intake-public-body .container.plm-intake-public-page {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    box-sizing: border-box;
    color: #fff !important;
    margin: 0 !important;
    max-width: none !important;
    min-height: auto !important;
    overflow-x: hidden;
    padding: 34px 44px 64px !important;
    width: 100% !important;
}

body.plm-intake-public-body .container.plm-intake-public-page > * {
    margin-left: auto;
    margin-right: auto;
    max-width: 1440px;
}

body.plm-intake-public-body .container.plm-intake-public-page h1,
body.plm-intake-public-body .container.plm-intake-public-page h2,
body.plm-intake-public-body .container.plm-intake-public-page h3 {
    letter-spacing: 0;
}

body.plm-intake-public-body .plm-intake-public-hero {
    background: linear-gradient(135deg, var(--plm-intake-public-blue), var(--plm-intake-public-blue-dark));
    border: 1px solid rgba(32, 144, 192, .52);
    border-radius: 8px;
    box-shadow: 0 22px 48px rgba(0, 72, 152, .20);
    box-sizing: border-box;
    color: #fff;
    margin-bottom: 20px;
    padding: 30px 34px;
}

body.plm-intake-public-body .plm-intake-public-hero-compact {
    padding-bottom: 22px;
    padding-top: 22px;
}

body.plm-intake-public-body .plm-intake-public-kicker {
    color: #BFEAFF !important;
    font-size: .78rem;
    font-weight: 900;
    letter-spacing: .08em;
    margin: 0 0 10px;
    text-transform: uppercase;
}

body.plm-intake-public-body .plm-intake-public-hero h2 {
    color: #fff !important;
    font-size: 2rem;
    font-weight: 900;
    line-height: 1.15;
    margin: 0 0 10px;
}

body.plm-intake-public-body .plm-intake-public-hero p:last-child {
    color: rgba(255, 255, 255, .88) !important;
    font-size: 1rem;
    line-height: 1.55;
    margin: 0;
    max-width: 820px;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-section,
body.plm-intake-public-body .container.plm-intake-public-page .plm-alert {
    border-radius: 8px;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-section {
    background: linear-gradient(180deg, var(--plm-intake-public-blue), var(--plm-intake-public-blue-dark)) !important;
    border: 1px solid rgba(32, 144, 192, .45) !important;
    border-top: 4px solid var(--plm-intake-public-blue-light) !important;
    box-shadow: 0 18px 40px rgba(0, 72, 152, .18);
    padding: 24px !important;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-public-alert {
    background: #fff !important;
    border: 1px solid rgba(32, 144, 192, .36) !important;
    border-left: 6px solid var(--plm-intake-public-blue-light) !important;
    box-shadow: 0 14px 32px rgba(0, 72, 152, .10);
    color: #12324f !important;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-public-alert strong {
    color: var(--plm-intake-public-blue) !important;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-alert,
body.plm-intake-public-body .container.plm-intake-public-page .plm-alert *,
body.plm-intake-public-body .container.plm-intake-public-page .plm-alert-ok,
body.plm-intake-public-body .container.plm-intake-public-page .plm-alert-ok * {
    color: #111827 !important;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-alert strong,
body.plm-intake-public-body .container.plm-intake-public-page .plm-alert-ok strong {
    color: var(--plm-intake-public-blue) !important;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-card {
    background: rgba(255, 255, 255, .08) !important;
    border: 1px solid rgba(126, 200, 255, .40) !important;
    border-radius: 8px !important;
    box-shadow: none !important;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-result-summary-grid .plm-card {
    background: #ffffff !important;
    border: 1px solid rgba(32, 144, 192, .38) !important;
    color: #111827 !important;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-result-summary-grid .plm-card *,
body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-result-summary-grid .plm-card-label {
    color: #111827 !important;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-result-summary-grid .plm-card-label {
    color: var(--plm-intake-public-blue) !important;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-card-label,
body.plm-intake-public-body .container.plm-intake-public-page .plm-filter-field span {
    color: #BFEAFF !important;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-required-star {
    color: #ff3b30 !important;
    font-size: 1.3em;
    font-weight: 1000;
    line-height: 0;
    vertical-align: -0.08em;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-section-head .plm-required-star {
    font-size: 1.45em;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-method-list {
    align-items: center;
    display: grid;
    gap: .8rem;
    grid-template-columns: minmax(240px, 310px) 58px minmax(260px, 360px);
    justify-content: start;
    margin: .7rem 0 1rem;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-method-link {
    align-items: flex-start;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(176, 200, 224, .46);
    border-radius: 8px;
    color: #ffffff !important;
    display: grid;
    gap: .2rem;
    min-height: 0;
    min-width: min(100%, 260px);
    padding: .85rem 1rem;
    text-decoration: none !important;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-method-link:hover,
body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-method-link:focus-visible {
    background: rgba(255, 255, 255, .14);
    border-color: rgba(32, 144, 192, .85);
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-method-link strong {
    color: #ffffff !important;
    font-size: 1rem;
    font-weight: 900;
    line-height: 1.2;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-method-link span {
    color: rgba(235, 247, 255, .82) !important;
    font-size: .9rem;
    line-height: 1.35;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-method-or {
    align-items: center;
    background: #ffffff;
    border: 3px solid var(--plm-intake-public-blue-light);
    border-radius: 999px;
    box-shadow: 0 10px 24px rgba(0, 47, 99, .22);
    color: var(--plm-intake-public-blue) !important;
    display: inline-flex;
    font-size: 1.05rem;
    font-weight: 1000;
    height: 58px;
    justify-content: center;
    letter-spacing: 0;
    line-height: 1;
    width: 58px;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-template-instructions {
    align-items: center;
    background: rgba(255, 255, 255, .10);
    border: 1px solid rgba(176, 200, 224, .42);
    border-left: 5px solid var(--plm-intake-public-blue-light);
    border-radius: 8px;
    display: grid;
    gap: .9rem;
    grid-template-columns: minmax(0, 1fr) auto;
    margin: .8rem 0 1.15rem;
    padding: .95rem 1rem;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-template-instructions strong {
    color: #ffffff !important;
    display: block;
    font-size: 1rem;
    font-weight: 950;
    margin-bottom: .2rem;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-template-instructions span {
    color: rgba(235, 247, 255, .86) !important;
    display: block;
    font-size: .92rem;
    line-height: 1.4;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-filter-field input,
body.plm-intake-public-body .container.plm-intake-public-page .plm-filter-field textarea,
body.plm-intake-public-body .container.plm-intake-public-page .plm-filter-field select {
    border: 1px solid rgba(32, 144, 192, .48) !important;
    border-radius: 8px !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .74);
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-button {
    background: var(--plm-intake-public-blue) !important;
    border: 1px solid var(--plm-intake-public-blue-light) !important;
    border-radius: 8px !important;
    box-shadow: 0 12px 26px rgba(3, 46, 89, .24);
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-button:hover {
    background: var(--plm-intake-public-blue-light) !important;
    color: #fff !important;
}

body.plm-intake-public-body .container.plm-intake-public-page input[type="file"]:not(.plm-file-drop-input) {
    background: rgba(255, 255, 255, .94) !important;
    border: 2px dashed rgba(32, 144, 192, .55) !important;
    color: #0f172a !important;
}

body.plm-intake-public-body .container.plm-intake-public-page input[type="file"]:not(.plm-file-drop-input)::file-selector-button {
    background: var(--plm-intake-public-blue) !important;
    border-color: var(--plm-intake-public-blue-light) !important;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-human-check {
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(157, 222, 255, .34);
    border-radius: 8px;
    margin-top: 1.2rem;
    max-width: 420px;
    padding: 1rem;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-human-check .plm-filter-field {
    margin: 0;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-human-check input[name="plm_human_answer"] {
    max-width: 180px;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-bot-trap {
    height: 1px !important;
    left: -10000px !important;
    opacity: 0 !important;
    position: absolute !important;
    top: auto !important;
    width: 1px !important;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-inline-file-drop,
body.plm-intake-public-body .container.plm-intake-public-page .plm-template-file-drop {
    background: rgba(255, 255, 255, .08);
    border: 1px dashed rgba(157, 222, 255, .46);
    border-radius: 8px;
    cursor: pointer;
    display: grid;
    gap: .45rem .65rem;
    grid-template-columns: 170px minmax(320px, 1fr) minmax(118px, auto);
    align-items: center;
    min-width: 0;
    padding: .55rem .65rem;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-inline-file-drop:hover,
body.plm-intake-public-body .container.plm-intake-public-page .plm-inline-file-drop:focus-visible,
body.plm-intake-public-body .container.plm-intake-public-page .plm-inline-file-drop.drag-over,
body.plm-intake-public-body .container.plm-intake-public-page .plm-template-file-drop:hover,
body.plm-intake-public-body .container.plm-intake-public-page .plm-template-file-drop:focus-visible,
body.plm-intake-public-body .container.plm-intake-public-page .plm-template-file-drop.drag-over {
    border-color: rgba(157, 222, 255, .9);
    outline: none;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-inline-file-title {
    color: #9DDEFF !important;
    font-size: .78rem;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
    white-space: nowrap;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-file-drop-input {
    height: 1px !important;
    margin: 0 !important;
    opacity: 0 !important;
    overflow: hidden !important;
    padding: 0 !important;
    pointer-events: none;
    position: absolute !important;
    width: 1px !important;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-file-drop-prompt {
    align-items: center;
    background: rgba(255, 255, 255, .94);
    border: 2px dashed rgba(32, 144, 192, .55);
    border-radius: 8px;
    box-sizing: border-box;
    color: #12324f !important;
    display: flex;
    gap: .65rem;
    justify-content: space-between;
    min-height: 44px;
    min-width: 0;
    padding: .55rem .75rem;
    width: 100%;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-file-drop-prompt strong {
    color: var(--plm-intake-public-blue) !important;
    font-size: .88rem;
    font-weight: 900;
    line-height: 1.2;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-file-drop-prompt em {
    color: #506780 !important;
    font-size: .78rem;
    font-style: normal;
    font-weight: 800;
    white-space: nowrap;
}

body.plm-intake-public-body .container.plm-intake-public-page .drag-over .plm-file-drop-prompt {
    background: #eaf8ff;
    border-color: var(--plm-intake-public-blue-light);
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-selected-file {
    color: rgba(235, 247, 255, .78);
    font-size: .78rem;
    line-height: 1.25;
    margin: 0;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.plm-intake-public-body .container.plm-intake-public-page .has-file .plm-selected-file {
    color: #ffffff;
    font-weight: 800;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-template-upload-field {
    align-items: stretch;
    display: grid;
    gap: .35rem;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-template-file-drop {
    grid-template-columns: minmax(300px, 1fr) minmax(118px, auto);
    max-width: 620px;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-links-grid {
    display: grid;
    gap: 1rem;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-source-row {
    align-items: start;
    display: grid;
    gap: .75rem;
    grid-template-columns: minmax(320px, 1fr) auto minmax(520px, 1fr);
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-source-row-product-url {
    display: block;
    max-width: none;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-source-row-product-url .plm-filter-field {
    max-width: min(50%, 690px);
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-source-or {
    align-self: start;
    background: rgba(255, 255, 255, .16);
    border: 1px solid rgba(157, 222, 255, .34);
    border-radius: 999px;
    color: #ffffff !important;
    font-size: .78rem;
    font-weight: 900;
    line-height: 1;
    padding: .45rem .55rem;
    text-align: center;
    margin-top: 1.75rem;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-source-row .plm-inline-file-drop {
    align-self: start;
    margin-top: 1.55rem;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-dimensions-grid {
    grid-template-columns: repeat(4, minmax(150px, 1fr));
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-required-strip {
    align-items: center;
    background: rgba(255, 255, 255, .08);
    border: 1px solid rgba(255, 255, 255, .28);
    border-radius: 8px;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 0 0 18px;
    padding: 12px;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-required-strip strong {
    color: #ffffff !important;
    margin-right: 4px;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-required-strip span {
    align-items: center;
    background: rgba(255, 255, 255, .14);
    border-radius: 999px;
    color: #ffffff !important;
    display: inline-flex;
    font-size: 12px;
    font-weight: 800;
    min-height: 26px;
    padding: 4px 9px;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-advanced-details {
    background: rgba(255, 255, 255, .06);
    border: 1px solid rgba(255, 255, 255, .22);
    border-radius: 8px;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-advanced-details > summary {
    color: #ffffff !important;
    cursor: pointer;
    font-weight: 900;
    letter-spacing: 0;
    padding: 12px 14px;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-advanced-details[open] > summary {
    border-bottom: 1px solid rgba(255, 255, 255, .16);
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-advanced-details > .plm-intake-contact-grid,
body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-advanced-details > .plm-intake-product-grid {
    padding: 14px;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-advanced-details > .plm-intake-product-grid.plm-intake-dimensions-grid {
    padding: 14px;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-result-section {
    background: #ffffff !important;
    border: 1px solid rgba(32, 144, 192, .34) !important;
    border-top: 4px solid var(--plm-intake-public-blue-light) !important;
    color: #12324f !important;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-result-section h2,
body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-result-section .plm-mini-note {
    color: #12324f !important;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-result-table {
    border-collapse: separate !important;
    border-spacing: 0 !important;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-result-table th {
    background: var(--plm-intake-public-blue-dark) !important;
    color: #ffffff !important;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-result-table td {
    background: #f8fbff !important;
    border-bottom: 1px solid rgba(0, 72, 152, .14) !important;
    color: #12324f !important;
    vertical-align: top !important;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-result-table tr:hover td {
    background: #eef7ff !important;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-result-fix-pill,
body.plm-intake-public-body .container.plm-intake-public-page .plm-result-warning-pill {
    border-radius: 8px;
    display: block;
    font-size: .92rem;
    font-weight: 800;
    line-height: 1.35;
    margin: 0 0 .4rem;
    padding: .48rem .62rem;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-result-fix-pill {
    background: #fff1f2;
    border: 1px solid #f87171;
    color: #7f1d1d;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-result-warning-pill {
    background: #fffbeb;
    border: 1px solid #f59e0b;
    color: #78350f;
}

@media (max-width: 900px) {
    body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-method-list {
        display: grid;
        grid-template-columns: 1fr;
    }

    body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-method-or {
        height: 50px;
        justify-self: center;
        width: 50px;
    }

    body.plm-intake-public-body .container.plm-intake-public-page .plm-template-instructions {
        grid-template-columns: 1fr;
    }

    body.plm-intake-public-body .container.plm-intake-public-page .plm-template-instructions .plm-button {
        justify-self: start;
    }

    body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-source-row,
    body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-dimensions-grid {
        grid-template-columns: 1fr;
    }

    body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-source-row-product-url {
        max-width: none;
    }

    body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-source-row-product-url .plm-filter-field {
        max-width: none;
    }

    body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-source-or {
        justify-self: start;
        margin-top: 0;
    }

    body.plm-intake-public-body .container.plm-intake-public-page .plm-intake-source-row .plm-inline-file-drop {
        margin-top: 0;
    }
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-result-ok-text {
    color: #166534 !important;
    font-weight: 800;
}

body.plm-intake-public-body .container.plm-intake-public-page .plm-button-small {
    display: inline-flex;
    font-size: .88rem;
    min-height: 0;
    padding: .55rem .75rem !important;
    white-space: nowrap;
}

@media (max-width: 1100px) {
    body.plm-intake-public-body .plm-intake-public-header {
        grid-template-columns: 220px minmax(0, 1fr) 36px;
        padding-left: 24px;
        padding-right: 24px;
    }

    body.plm-intake-public-body .plm-intake-public-header h1 {
        font-size: 1.55rem;
    }

    body.plm-intake-public-body .container.plm-intake-public-page {
        padding: 26px 24px 52px !important;
    }

}

@media (max-width: 720px) {
    body.plm-intake-public-body .plm-intake-public-header {
        gap: 10px;
        grid-template-columns: 1fr;
        justify-items: center;
        min-height: auto;
        padding: 14px 18px 16px;
        position: relative;
    }

    body.plm-intake-public-body .plm-intake-public-logo {
        max-width: 220px;
    }

    body.plm-intake-public-body .plm-intake-public-header h1 {
        font-size: 1.35rem;
    }

    body.plm-intake-public-body .plm-intake-public-header-spacer {
        display: none;
    }

    body.plm-intake-public-body .container.plm-intake-public-page {
        padding: 18px 14px 42px !important;
    }

    body.plm-intake-public-body .plm-intake-public-hero,
    body.plm-intake-public-body .container.plm-intake-public-page .plm-section {
        padding: 18px !important;
    }

    body.plm-intake-public-body .plm-intake-public-hero h2 {
        font-size: 1.45rem;
    }

    body.plm-intake-public-body .container.plm-intake-public-page .plm-inline-file-drop {
        align-items: stretch;
        grid-template-columns: 1fr;
    }

    body.plm-intake-public-body .container.plm-intake-public-page .plm-template-file-drop {
        grid-template-columns: 1fr;
        max-width: none;
    }

    body.plm-intake-public-body .container.plm-intake-public-page .plm-file-drop-prompt {
        align-items: flex-start;
        flex-direction: column;
        justify-content: center;
    }
}

/* Catalog Editor final TinyMCE isolation.
   This lives at the end because later shared app button rules should never
   repaint TinyMCE menus/toolbars as Command Center action buttons. */
.catalog-editor-page textarea.catalog-rich-editor[aria-hidden="true"] {
    display: none !important;
    min-height: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

.catalog-editor-page .tox.tox-tinymce {
    border: 1px solid #bfc7d1 !important;
    border-radius: 2px !important;
    box-shadow: none !important;
}

.catalog-editor-page .tox .tox-menubar,
.catalog-editor-page .tox .tox-toolbar-overlord,
.catalog-editor-page .tox .tox-toolbar,
.catalog-editor-page .tox .tox-toolbar__primary,
.catalog-editor-page .tox .tox-toolbar__overflow,
.catalog-editor-page .tox .tox-statusbar {
    background: #ffffff !important;
    color: #1f2937 !important;
    -webkit-text-fill-color: #1f2937 !important;
}

.catalog-editor-page .tox button,
.catalog-editor-page .tox .tox-mbtn,
.catalog-editor-page .tox .tox-tbtn,
.catalog-editor-page .tox .tox-button,
.catalog-editor-page .tox .tox-split-button {
    box-sizing: border-box !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: 34px !important;
    margin: 0 1px !important;
    padding: 0 7px !important;
    border: 0 !important;
    border-radius: 3px !important;
    background: transparent !important;
    background-image: none !important;
    color: #1f2937 !important;
    -webkit-text-fill-color: #1f2937 !important;
    box-shadow: none !important;
    text-shadow: none !important;
    transform: none !important;
    filter: none !important;
}

.catalog-editor-page .tox button:hover,
.catalog-editor-page .tox button:focus,
.catalog-editor-page .tox .tox-mbtn:hover,
.catalog-editor-page .tox .tox-tbtn:hover,
.catalog-editor-page .tox .tox-mbtn--active,
.catalog-editor-page .tox .tox-tbtn--enabled,
.catalog-editor-page .tox .tox-split-button:hover {
    background: #e8eef5 !important;
    background-image: none !important;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    box-shadow: none !important;
    transform: none !important;
    filter: none !important;
}

.catalog-editor-page .tox .tox-tbtn svg,
.catalog-editor-page .tox .tox-mbtn svg,
.catalog-editor-page .tox button svg {
    fill: currentColor !important;
}

.catalog-editor-page .tox .tox-tbtn__select-label,
.catalog-editor-page .tox .tox-mbtn__select-label,
.catalog-editor-page .tox .tox-icon,
.catalog-editor-page .tox .tox-collection__item-label,
.catalog-editor-page .tox .tox-statusbar__path-item,
.catalog-editor-page .tox .tox-statusbar__wordcount {
    color: #1f2937 !important;
    -webkit-text-fill-color: #1f2937 !important;
}

/* TinyMCE hard reset for every runtime placement.
   TinyMCE can create its main chrome and auxiliary menus outside the original
   form tree, so this intentionally targets TinyMCE classes directly instead
   of relying only on .catalog-editor-page ancestry. */
.tox.tox-tinymce,
.tox-tinymce-aux {
    color: #1f2937 !important;
    -webkit-text-fill-color: #1f2937 !important;
}

.tox.tox-tinymce {
    border: 1px solid #bfc7d1 !important;
    border-radius: 2px !important;
    box-shadow: none !important;
}

.tox .tox-menubar,
.tox .tox-toolbar-overlord,
.tox .tox-toolbar,
.tox .tox-toolbar__primary,
.tox .tox-toolbar__overflow,
.tox .tox-statusbar,
.tox .tox-editor-header,
.tox .tox-edit-area {
    background: #ffffff !important;
    background-image: none !important;
    color: #1f2937 !important;
    -webkit-text-fill-color: #1f2937 !important;
}

.tox button,
.tox .tox-mbtn,
.tox .tox-tbtn,
.tox .tox-button,
.tox .tox-split-button {
    box-sizing: border-box !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: 34px !important;
    margin: 0 1px !important;
    padding: 0 7px !important;
    border: 0 !important;
    border-radius: 3px !important;
    background: transparent !important;
    background-image: none !important;
    color: #1f2937 !important;
    -webkit-text-fill-color: #1f2937 !important;
    box-shadow: none !important;
    text-shadow: none !important;
    transform: none !important;
    filter: none !important;
    opacity: 1 !important;
}

.tox button:hover,
.tox button:focus,
.tox .tox-mbtn:hover,
.tox .tox-tbtn:hover,
.tox .tox-mbtn--active,
.tox .tox-tbtn--enabled,
.tox .tox-split-button:hover {
    background: #e8eef5 !important;
    background-image: none !important;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    box-shadow: none !important;
    transform: none !important;
    filter: none !important;
}

.tox .tox-tbtn svg,
.tox .tox-mbtn svg,
.tox button svg,
.tox .tox-icon svg {
    fill: currentColor !important;
}

.tox .tox-tbtn__select-label,
.tox .tox-mbtn__select-label,
.tox .tox-collection__item-label,
.tox .tox-statusbar__path-item,
.tox .tox-statusbar__wordcount,
.tox .tox-mbtn__select-chevron,
.tox .tox-tbtn__select-chevron {
    color: #1f2937 !important;
    -webkit-text-fill-color: #1f2937 !important;
}

/* BigCommerce catalog editor rich-text clean room.
   These selectors intentionally outrank the shared .container button rules so
   TinyMCE keeps its native white toolbar with dark menu text/icons. */
.container.catalog-editor-page .catalog-rich-editor-shell {
    display: block;
    width: 100%;
    margin: 8px 0 22px;
}

.container.catalog-editor-page .catalog-rich-editor-shell textarea.catalog-rich-editor[aria-hidden="true"] {
    display: none !important;
    min-height: 0 !important;
    height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
}

.container.catalog-editor-page .catalog-rich-editor-shell .tox.tox-tinymce {
    width: 100% !important;
    margin: 0 !important;
    border: 1px solid #bfc7d1 !important;
    border-radius: 2px !important;
    background: #ffffff !important;
    box-shadow: none !important;
    overflow: hidden !important;
}

.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-menubar,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-toolbar-overlord,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-toolbar,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-toolbar__primary,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-toolbar__overflow,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-editor-header,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-edit-area,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-statusbar {
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
    color: #1f2937 !important;
    -webkit-text-fill-color: #1f2937 !important;
}

.container.catalog-editor-page .catalog-rich-editor-shell .tox button:not(:disabled):not(.qe-delete-line-button),
.container.catalog-editor-page .catalog-rich-editor-shell .tox button.tox-mbtn:not(:disabled):not(.qe-delete-line-button),
.container.catalog-editor-page .catalog-rich-editor-shell .tox button.tox-tbtn:not(:disabled):not(.qe-delete-line-button),
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-mbtn,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-tbtn,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-button,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-split-button {
    box-sizing: border-box !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: 34px !important;
    margin: 0 1px !important;
    padding: 0 7px !important;
    border: 0 !important;
    border-radius: 3px !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    color: #1f2937 !important;
    -webkit-text-fill-color: #1f2937 !important;
    box-shadow: none !important;
    text-shadow: none !important;
    transform: none !important;
    filter: none !important;
    opacity: 1 !important;
}

.container.catalog-editor-page .catalog-rich-editor-shell .tox button:not(:disabled):not(.qe-delete-line-button):hover,
.container.catalog-editor-page .catalog-rich-editor-shell .tox button:not(:disabled):not(.qe-delete-line-button):focus,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-mbtn:hover,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-tbtn:hover,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-mbtn--active,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-tbtn--enabled,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-split-button:hover {
    background: #e8eef5 !important;
    background-color: #e8eef5 !important;
    background-image: none !important;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    box-shadow: none !important;
    transform: none !important;
    filter: none !important;
}

.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-tbtn svg,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-mbtn svg,
.container.catalog-editor-page .catalog-rich-editor-shell .tox button svg,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-icon svg {
    fill: currentColor !important;
}

.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-tbtn__select-label,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-mbtn__select-label,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-collection__item-label,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-statusbar__path-item,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-statusbar__wordcount,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-mbtn__select-chevron,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-tbtn__select-chevron {
    color: #1f2937 !important;
    -webkit-text-fill-color: #1f2937 !important;
}

.container.catalog-editor-page .catalog-rich-editor-shell .tox,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-menubar,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-toolbar,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-mbtn,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-tbtn,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-button,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-split-button,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-tbtn__select-label,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-mbtn__select-label {
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    line-height: normal !important;
    text-transform: none !important;
}

.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-tbtn svg,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-mbtn svg,
.container.catalog-editor-page .catalog-rich-editor-shell .tox button svg,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-icon svg {
    letter-spacing: 0 !important;
    text-transform: none !important;
}

/* Shared rich-text editor chrome. Dropship email editors use the same clean,
   readable TinyMCE treatment as the Category Editor instead of inheriting the
   dark application action-button system. */
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox.tox-tinymce {
    width: 100% !important;
    margin: 0 !important;
    border: 1px solid #bfc7d1 !important;
    border-radius: 2px !important;
    background: #ffffff !important;
    box-shadow: none !important;
    overflow: hidden !important;
}

.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-menubar,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-toolbar-overlord,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-toolbar,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-toolbar__primary,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-toolbar__overflow,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-editor-header,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-edit-area,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-statusbar {
    background: #ffffff !important;
    background-color: #ffffff !important;
    background-image: none !important;
    color: #1f2937 !important;
    -webkit-text-fill-color: #1f2937 !important;
}

.container.fsq-page.dso-page .catalog-rich-editor-shell .tox button:not(:disabled),
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-mbtn,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-tbtn,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-button,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-split-button {
    display: inline-flex !important;
    box-sizing: border-box !important;
    width: auto !important;
    min-width: 0 !important;
    max-width: none !important;
    height: 34px !important;
    min-height: 34px !important;
    margin: 0 1px !important;
    padding: 0 7px !important;
    border: 0 !important;
    border-radius: 3px !important;
    background: transparent !important;
    background-color: transparent !important;
    background-image: none !important;
    color: #1f2937 !important;
    -webkit-text-fill-color: #1f2937 !important;
    box-shadow: none !important;
    text-shadow: none !important;
    transform: none !important;
    filter: none !important;
    opacity: 1 !important;
    font-family: Arial, Helvetica, sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    letter-spacing: 0 !important;
    line-height: normal !important;
    text-transform: none !important;
}

.container.fsq-page.dso-page .catalog-rich-editor-shell .tox button:not(:disabled):hover,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox button:not(:disabled):focus,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-mbtn:hover,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-tbtn:hover,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-mbtn--active,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-tbtn--enabled,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-split-button:hover {
    background: #e8eef5 !important;
    background-color: #e8eef5 !important;
    background-image: none !important;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
    border: 0 !important;
    box-shadow: none !important;
    transform: none !important;
    filter: none !important;
}

.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-tbtn svg,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-mbtn svg,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox button svg,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-icon svg {
    fill: currentColor !important;
}

.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-tbtn__select-label,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-mbtn__select-label,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-collection__item-label,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-statusbar__path-item,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-statusbar__wordcount,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-mbtn__select-chevron,
.container.fsq-page.dso-page .catalog-rich-editor-shell .tox .tox-tbtn__select-chevron {
    color: #1f2937 !important;
    -webkit-text-fill-color: #1f2937 !important;
}

/* =========================================================
   SMS flat action buttons and table headers
   2026-07-05
   App action buttons use solid medium blue; hover uses solid light blue.
   Header rows use one flat blue so they read as table structure, not status.
   ========================================================= */
:root {
    --sms-flat-button-bg: var(--brand-accent, #0B5E8E);
    --sms-flat-button-hover-bg: var(--sms-light-blue, #7EC8FF);
    --sms-flat-button-text: #ffffff;
    --sms-flat-button-hover-text: var(--sms-dark-blue, #082944);
    --sms-flat-table-header-bg: #0B4F76;
}

.container:not(.catalog-editor-page) button:not(:disabled):not(.qe-delete-line-button):not(.plm-small-text-button):not(.tox-button):not(.tox-tbtn):not(.tox-mbtn):not(.tox-split-button),
.container:not(.catalog-editor-page) input[type="submit"]:not(:disabled),
.container:not(.catalog-editor-page) input[type="button"]:not(:disabled),
.container a.button-link,
.container .button-link,
.container .plm-button:not(.plm-button-danger),
.container a.plm-button:not(.plm-button-danger),
.container button.plm-button:not(.plm-button-danger),
.container .plm-top-tab,
.container a.plm-top-tab,
.container .module-tab,
.container .qe-tab,
.container .qe-action-button,
.container a.qe-action-button,
.container .qe-page-link,
.container a.qe-page-link,
.container .qe-inline-add-button,
.container button.qe-inline-add-button,
.container .small-action-button,
.container .section-refresh-button,
.container .utility-tab,
.container .api-tab,
.container .feed-tab,
.container .date-range-button,
.container .perf-tab,
.container .price-mode-tab,
.container .button-small,
.container .file-choose-button,
.container input[type="file"]::file-selector-button {
    background: var(--sms-flat-button-bg) !important;
    background-color: var(--sms-flat-button-bg) !important;
    background-image: none !important;
    border-color: rgba(126, 200, 255, .64) !important;
    color: var(--sms-flat-button-text) !important;
    -webkit-text-fill-color: var(--sms-flat-button-text) !important;
    box-shadow: none !important;
    text-shadow: none !important;
    transform: none !important;
    filter: none !important;
}

.container:not(.catalog-editor-page) button:not(:disabled):not(.qe-delete-line-button):not(.plm-small-text-button):not(.tox-button):not(.tox-tbtn):not(.tox-mbtn):not(.tox-split-button):hover,
.container:not(.catalog-editor-page) input[type="submit"]:not(:disabled):hover,
.container:not(.catalog-editor-page) input[type="button"]:not(:disabled):hover,
.container a.button-link:hover,
.container .button-link:hover,
.container .plm-button:not(.plm-button-danger):hover,
.container a.plm-button:not(.plm-button-danger):hover,
.container button.plm-button:not(.plm-button-danger):hover,
.container .plm-top-tab:hover,
.container a.plm-top-tab:hover,
.container .module-tab:hover,
.container .qe-tab:hover,
.container .qe-action-button:hover,
.container a.qe-action-button:hover,
.container .qe-page-link:hover,
.container a.qe-page-link:hover,
.container .qe-inline-add-button:hover,
.container button.qe-inline-add-button:hover,
.container .small-action-button:hover,
.container .section-refresh-button:hover,
.container .utility-tab:hover,
.container .api-tab:hover,
.container .feed-tab:hover,
.container .date-range-button:hover,
.container .perf-tab:hover,
.container .price-mode-tab:hover,
.container .button-small:hover,
.container .file-choose-button:hover,
.container input[type="file"]::file-selector-button:hover {
    background: var(--sms-flat-button-hover-bg) !important;
    background-color: var(--sms-flat-button-hover-bg) !important;
    background-image: none !important;
    border-color: var(--sms-flat-button-hover-bg) !important;
    color: var(--sms-flat-button-hover-text) !important;
    -webkit-text-fill-color: var(--sms-flat-button-hover-text) !important;
    box-shadow: none !important;
    text-shadow: none !important;
    transform: none !important;
    filter: none !important;
}

.container .plm-button-danger,
.container button.plm-button-danger,
.container a.plm-button-danger,
.container .qe-danger-button,
.container button.qe-danger-button,
.container a.qe-danger-button {
    background: #9f1d24 !important;
    background-image: none !important;
    border-color: #fca5a5 !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.container .plm-button-danger:hover,
.container button.plm-button-danger:hover,
.container a.plm-button-danger:hover,
.container .qe-danger-button:hover,
.container button.qe-danger-button:hover,
.container a.qe-danger-button:hover {
    background: #b91c1c !important;
    background-image: none !important;
    border-color: #fecaca !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
}

.container table:not(.sms-products-table) thead tr > th,
.container table:not(.sms-products-table) tr:first-child > th,
.container .plm-table th,
.container .plm-compact-table th,
.container .plm-kits-table th,
.container .plm-kits-component-table th,
.container .plm-kits-draft-list-table th,
.container .plm-kits-workbench-table th,
.container .rate-table th,
.container .perf-table th,
.container .competitors-table th,
.container .revenue-table th,
.container .quote-products-table th,
.container .orders-table th,
.container .customers-table th,
.container .bc-category-tree-table th,
.container .qe-abandonment-table th {
    background: var(--sms-flat-table-header-bg) !important;
    background-color: var(--sms-flat-table-header-bg) !important;
    background-image: none !important;
    color: #ffffff !important;
    -webkit-text-fill-color: #ffffff !important;
    box-shadow: none !important;
    text-shadow: none !important;
}

.container.catalog-editor-page .catalog-rich-editor-shell .tox button,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-button,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-tbtn,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-mbtn,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-split-button {
    background: transparent !important;
    background-image: none !important;
    color: #1f2937 !important;
    -webkit-text-fill-color: #1f2937 !important;
}

.container .bc-wysiwyg-shell .bc-editor-body th,
.container.catalog-editor-page .catalog-rich-editor-shell .tox .tox-edit-area th {
    background: transparent !important;
    background-image: none !important;
    color: #111827 !important;
    -webkit-text-fill-color: #111827 !important;
}

/* PLM v53 control sizing standard: keep action buttons and fields consistent sitewide. */
.container.plm-page .plm-button,
.container.plm-page a.plm-button,
.container.plm-page button.plm-button,
.container.plm-page .plm-actions-row .plm-button,
.container.plm-page .plm-filter-actions .plm-button,
.container.plm-page .plm-top-tabs .plm-top-tab,
.container.plm-page a.plm-top-tab {
    min-height: 42px !important;
    height: auto !important;
    padding: 0 15px !important;
    border-radius: 10px !important;
    font-size: 0.95rem !important;
    line-height: 1.1 !important;
    width: auto !important;
    max-width: max-content !important;
    flex: 0 0 auto !important;
}

.container.plm-page .plm-filter-field input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
.container.plm-page .plm-filter-field select,
.container.plm-page .plm-mapping-select {
    min-height: 42px !important;
    height: 42px !important;
    padding: 0 12px !important;
    border-radius: 9px !important;
    box-sizing: border-box !important;
}

.container.plm-vendor-upload-page .plm-create-brand-card {
    margin: 0 0 16px !important;
}

.container.plm-vendor-upload-page .plm-create-brand-form-inline {
    grid-template-columns: minmax(240px, 1fr) minmax(220px, 0.85fr) max-content !important;
    align-items: end !important;
}

.container.plm-vendor-upload-page .plm-create-brand-form-inline .plm-filter-field {
    min-width: 0 !important;
}

.container.plm-vendor-upload-page .plm-create-brand-form-inline .plm-button {
    white-space: nowrap !important;
}

.container.plm-page .plm-upload-mapping-table .plm-mapping-select {
    width: min(100%, 320px) !important;
    max-width: 320px !important;
}

@media (max-width: 1000px) {
    .container.plm-vendor-upload-page .plm-create-brand-form-inline {
        grid-template-columns: 1fr !important;
    }
    .container.plm-page .plm-button,
    .container.plm-page a.plm-button,
    .container.plm-page button.plm-button {
        max-width: 100% !important;
    }
}

/* PLM v54 action button height guard: prevents link buttons like Cancel from drifting taller. */
.container.plm-page .plm-actions-row > .plm-button,
.container.plm-page .plm-actions-row > a.plm-button,
.container.plm-page .plm-actions-row > button.plm-button,
.container.plm-page .plm-filter-actions > .plm-button,
.container.plm-page .plm-filter-actions > a.plm-button,
.container.plm-page .plm-filter-actions > button.plm-button,
.container.plm-page .plm-form-actions > .plm-button,
.container.plm-page .plm-form-actions > a.plm-button,
.container.plm-page .plm-form-actions > button.plm-button {
    align-items: center !important;
    box-sizing: border-box !important;
    display: inline-flex !important;
    flex: 0 0 auto !important;
    height: 42px !important;
    justify-content: center !important;
    line-height: 1 !important;
    max-height: 42px !important;
    min-height: 42px !important;
    padding: 0 15px !important;
    white-space: nowrap !important;
    width: auto !important;
}

.container.plm-vendor-info-page .plm-mapping-editor-table th:nth-child(1),
.container.plm-vendor-info-page .plm-mapping-editor-table td:nth-child(1) {
    width: 42% !important;
}

.container.plm-vendor-info-page .plm-mapping-editor-table th:nth-child(2),
.container.plm-vendor-info-page .plm-mapping-editor-table td:nth-child(2) {
    width: 58% !important;
}

.container.plm-vendor-info-page .plm-mapping-header-input,
.container.plm-vendor-info-page .plm-mapping-editor-table .plm-mapping-select {
    box-sizing: border-box !important;
    height: 42px !important;
    min-height: 42px !important;
    padding: 0 12px !important;
    width: min(100%, 420px) !important;
}

.container.plm-vendor-info-page .plm-mapping-editor-details > summary {
    align-items: center !important;
    cursor: pointer !important;
    display: flex !important;
    gap: 16px !important;
    justify-content: space-between !important;
    list-style-position: inside !important;
}

.container.plm-vendor-info-page .plm-mapping-editor-details > summary > span:first-child {
    font-size: 1.2rem !important;
    font-weight: 900 !important;
}

.container.plm-vendor-info-page .plm-mapping-editor-details .plm-mapping-editor-form {
    margin-top: 16px !important;
}

/* Pricing reconciliation: keep the clean state quiet and make exceptions obvious. */
.container.plm-pricing-update-page .plm-reconciliation-grid,
.container.plm-pricing-update-page .plm-pricing-action-grid {
    align-items: stretch;
    display: flex !important;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.container.plm-pricing-update-page .plm-reconciliation-grid > .plm-card,
.container.plm-pricing-update-page .plm-pricing-action-grid > .plm-card {
    flex: 0 1 auto;
    min-width: 280px;
    width: max-content;
    max-width: min(100%, 520px);
}

.container.plm-pricing-update-page .plm-total-products-card {
    border-color: rgba(126, 200, 255, .58) !important;
    min-width: 320px !important;
}

.container.plm-pricing-update-page .plm-product-type-breakdown {
    display: grid;
    gap: 4px;
    margin-top: 10px;
}

.container.plm-pricing-update-page .plm-product-type-breakdown span {
    align-items: center;
    color: #d9edf9;
    display: flex;
    font-size: .9rem;
    justify-content: space-between;
}

.container.plm-pricing-update-page .plm-product-type-breakdown strong {
    color: #ffffff;
    font-size: 1rem;
}

.container.plm-pricing-update-page .plm-score-problem {
    border-color: #f05f68 !important;
    box-shadow: inset 0 0 0 1px rgba(240, 95, 104, .18), var(--sms-card-shadow) !important;
}

.container.plm-pricing-update-page .plm-score-problem .plm-card-label,
.container.plm-pricing-update-page .plm-score-problem .plm-score-link {
    color: #ffb1b6 !important;
}

.container.plm-pricing-update-page .plm-problem-breakdown {
    display: grid;
    gap: 5px;
    margin: 8px 0 10px;
    max-width: 460px;
}

.container.plm-pricing-update-page .plm-problem-breakdown span {
    color: #d9edf9;
    font-size: .84rem;
    line-height: 1.3;
}

.container.plm-pricing-update-page .plm-problem-breakdown strong {
    color: #ffffff;
}

.container.plm-pricing-update-page .plm-score-ready {
    border-color: #41c98b !important;
    box-shadow: inset 0 0 0 1px rgba(65, 201, 139, .14), var(--sms-card-shadow) !important;
}

.container.plm-pricing-update-page .plm-score-ready .plm-card-label,
.container.plm-pricing-update-page .plm-score-ready .plm-score-link {
    color: #8ff0bd !important;
}

.container.plm-pricing-update-page .plm-gp-change-form {
    grid-template-columns: minmax(170px, .65fr) minmax(220px, 1fr) minmax(220px, 1fr) minmax(140px, .55fr) auto;
}

@media (max-width: 1100px) {
    .container.plm-pricing-update-page .plm-gp-change-form {
        grid-template-columns: repeat(2, minmax(220px, 1fr));
    }
}

@media (max-width: 640px) {
    .container.plm-pricing-update-page .plm-reconciliation-grid > .plm-card,
    .container.plm-pricing-update-page .plm-pricing-action-grid > .plm-card {
        min-width: 100%;
        width: 100%;
    }
}

/* PLM v55 Spec Sheet edit grid compact height polish. */
.container.plm-spec-sheet-page .plm-spec-grid-table thead th {
    padding: 0.3rem 0.45rem !important;
    line-height: 1.08 !important;
}

.container.plm-spec-sheet-page .plm-spec-column-label-input {
    border-radius: 8px !important;
    font-size: 0.74rem !important;
    height: 28px !important;
    line-height: 1 !important;
    min-height: 28px !important;
    padding: 0 0.35rem !important;
}

.container.plm-spec-sheet-page .plm-spec-column-actions {
    margin-top: 0.22rem !important;
}

.container.plm-spec-sheet-page .plm-spec-suggestion-actions {
    gap: 0.24rem !important;
    line-height: 1 !important;
}

.container.plm-spec-sheet-page .plm-spec-column-actions .plm-mini-note {
    font-size: 0.66rem !important;
    line-height: 1 !important;
}

.container.plm-spec-sheet-page .plm-spec-grid-table .plm-spec-suggestion-actions .plm-button {
    align-items: center !important;
    border-radius: 7px !important;
    display: inline-flex !important;
    font-size: 0.68rem !important;
    height: 24px !important;
    justify-content: center !important;
    line-height: 1 !important;
    max-height: 24px !important;
    min-height: 24px !important;
    padding: 0 0.36rem !important;
}

.container.plm-spec-sheet-page .plm-spec-grid-table tbody tr {
    height: 76px !important;
    max-height: 76px !important;
}

.container.plm-spec-sheet-page .plm-spec-grid-table tbody td {
    font-size: 0.76rem !important;
    height: 76px !important;
    line-height: 1.14 !important;
    max-height: 76px !important;
    padding: 0.34rem 0.48rem 0.85rem !important;
}

.container.plm-spec-sheet-page .plm-spec-grid-cell {
    padding-bottom: 0.85rem !important;
}

.container.plm-spec-sheet-page .plm-spec-grid-table .plm-spec-cell-preview,
.container.plm-spec-sheet-page .plm-spec-grid-table .plm-spec-static-preview {
    -webkit-line-clamp: 2 !important;
    line-height: 1.14 !important;
    max-height: 1.75rem !important;
}

.container.plm-spec-sheet-page .plm-spec-cell-source {
    line-height: 1.05 !important;
    margin-top: 0.12rem !important;
    max-height: 0.85rem !important;
    overflow: hidden !important;
}

.container.plm-spec-sheet-page .plm-spec-grid-cell::after {
    bottom: 0.14rem !important;
    font-size: 0.54rem !important;
    letter-spacing: 0.035em !important;
}

.container.plm-spec-sheet-page .plm-spec-preview-btn {
    border-radius: 8px !important;
    font-size: 0.72rem !important;
    height: 28px !important;
    line-height: 1 !important;
    max-height: 28px !important;
    min-height: 28px !important;
    padding: 0 0.52rem !important;
}

/* PLM Spec Sheet batch columns and synchronized sticky review grid. */
.container.plm-spec-sheet-page .plm-spec-add-column-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.container.plm-spec-sheet-page .plm-spec-add-column-choice {
    background: rgba(4, 43, 69, 0.36);
    border: 1px solid rgba(126, 200, 255, 0.2);
    border-radius: 12px;
    padding: 0.9rem;
}

.container.plm-spec-sheet-page .plm-spec-add-column-choice h3 {
    margin: 0 0 0.7rem;
}

.container.plm-spec-sheet-page .plm-spec-add-column-choice .plm-spec-add-column-form {
    margin-bottom: 0.55rem;
}

.container.plm-spec-sheet-page .plm-spec-sticky-grid-head {
    position: sticky !important;
    top: 0 !important;
    z-index: 30 !important;
    margin-top: 0.85rem;
}

.container.plm-spec-sheet-page .plm-spec-sticky-grid-head .plm-spec-top-scroll {
    margin-top: 0 !important;
    position: static !important;
}

.container.plm-spec-sheet-page .plm-spec-header-scroll {
    background: #0d4566;
    border-left: 1px solid rgba(220, 162, 74, 0.58);
    border-right: 1px solid rgba(220, 162, 74, 0.58);
    overflow-x: auto !important;
    overflow-y: hidden !important;
    width: 100%;
}

.container.plm-spec-sheet-page .plm-spec-header-table {
    margin: 0 !important;
}

.container.plm-spec-sheet-page .plm-spec-header-table thead th {
    position: static !important;
}

.container.plm-spec-sheet-page .plm-spec-grid-wrap[data-plm-grid-scroll-body] {
    max-height: calc(100vh - 92px) !important;
    margin-top: 0 !important;
    border-top: 0 !important;
    overflow-x: auto !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
}

@media (max-width: 900px) {
    .container.plm-spec-sheet-page .plm-spec-add-column-grid {
        grid-template-columns: 1fr;
    }
}

/* PLM Publish Preview: one sticky horizontal controller and an internally scrolling grid. */
.container.plm-publish-preview-page .plm-product-info-top-scroll {
    position: sticky !important;
    top: 0 !important;
    z-index: 30 !important;
}

.container.plm-publish-preview-page .plm-product-info-grid-wrap[data-plm-grid-scroll-body="publish-preview"] {
    max-height: calc(100vh - 92px) !important;
    margin-top: 0 !important;
    overflow-x: auto !important;
    overflow-y: auto !important;
    overscroll-behavior: contain;
}

.container.plm-publish-preview-page .plm-publish-preview-sheet thead th {
    background: #0d4566 !important;
    position: sticky !important;
    top: 0 !important;
    z-index: 12 !important;
}

.container.plm-spec-sheet-page [data-plm-grid-scroll-header]::-webkit-scrollbar,
.container.plm-spec-sheet-page [data-plm-grid-scroll-body]::-webkit-scrollbar:horizontal,
.container.plm-publish-preview-page [data-plm-grid-scroll-body]::-webkit-scrollbar:horizontal {
    height: 0 !important;
}

.container.plm-spec-sheet-page .plm-grid-scroll-stage,
.container.plm-publish-preview-page .plm-grid-scroll-stage {
    display: block;
    min-width: 100%;
    width: max-content;
}

/* Publish Preview uses the same detached sticky-header pattern as Spec Sheet. */
.container.plm-publish-preview-page .plm-publish-sticky-grid-head {
    position: sticky;
    top: 0;
    z-index: 30;
    width: 100%;
    background: #082f4c;
    box-shadow: 0 4px 10px rgba(2,20,34,.32);
}

.container.plm-publish-preview-page .plm-publish-sticky-grid-head .plm-product-info-top-scroll {
    position: static !important;
    box-shadow: none;
}

.container.plm-publish-preview-page .plm-publish-header-scroll {
    width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    border: 1px solid rgba(105,183,255,.24);
    border-top: 0;
    background: #0d4566;
}

.container.plm-publish-preview-page .plm-publish-header-scroll::-webkit-scrollbar,
.container.plm-publish-preview-page [data-plm-grid-scroll-body="publish-preview"]::-webkit-scrollbar:horizontal {
    height: 0;
}

.container.plm-publish-preview-page .plm-product-info-grid-wrap[data-plm-grid-scroll-body="publish-preview"] {
    max-height: calc(100vh - 142px) !important;
}

.container.plm-publish-preview-page .plm-publish-preview-sheet {
    width: 5590px !important;
    min-width: 5590px !important;
    table-layout: fixed !important;
}

.container.plm-publish-preview-page .plm-publish-header-scroll .plm-publish-preview-sheet {
    margin: 0;
}

.container.plm-publish-preview-page .plm-publish-header-scroll th {
    background: #0d4566 !important;
}

.container.plm-publish-preview-page .plm-grid-body-table thead {
    display: none;
}

.container.plm-publish-preview-page .plm-publish-preview-sheet th,
.container.plm-publish-preview-page .plm-publish-preview-sheet td {
    box-sizing: border-box !important;
    overflow: hidden;
}

.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(1),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(1) {
    min-width: 90px !important;
    max-width: 90px !important;
}

.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(2),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(2) {
    min-width: 150px !important;
    max-width: 150px !important;
}

.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(27),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(27) {
    min-width: 210px !important;
    max-width: 210px !important;
}

.container.plm-publish-preview-page .plm-publish-preview-sheet .plm-pi-cell-preview {
    max-width: 100%;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(1),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(1) { width:90px; }
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(2),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(2) { width:150px; }
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(3),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(3) { width:95px; }
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(4),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(4) { width:110px; }
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(5),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(5) { width:90px; }
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(6),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(6) { width:210px; }
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(7),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(7),
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(8),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(8) { width:180px; }
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(9),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(9),
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(10),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(10),
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(11),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(11),
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(12),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(12) { width:210px; }
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(13),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(13) { width:150px; }
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(14),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(14) { width:120px; }
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(15),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(15) { width:100px; }
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(16),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(16),
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(17),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(17),
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(18),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(18) { width:115px; }
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(19),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(19),
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(21),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(21),
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(26),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(26),
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(31),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(31),
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(34),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(34) { width:180px; }
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(20),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(20) { width:130px; }
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(22),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(22),
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(24),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(24),
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(27),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(27),
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(28),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(28),
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(29),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(29),
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(30),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(30),
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(32),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(32),
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(33),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(33) { width:210px; }
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(23),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(23) { width:120px; }
.container.plm-publish-preview-page .plm-publish-preview-sheet th:nth-child(25),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(25) { width:100px; }

.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(7),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(24),
.container.plm-publish-preview-page .plm-publish-preview-sheet td:nth-child(26) {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

/* v0.9cy Images & Documents asset library */
.container.plm-images-docs-page .plm-images-docs-grid-wrap {
    overflow-x: hidden !important;
}

.container.plm-images-docs-page table.plm-images-docs-grid-table {
    min-width: 0 !important;
    table-layout: fixed !important;
    width: 100% !important;
}

.container.plm-images-docs-page .plm-images-docs-grid-table th:nth-child(1),
.container.plm-images-docs-page .plm-images-docs-grid-table td:nth-child(1) { width: 4% !important; }
.container.plm-images-docs-page .plm-images-docs-grid-table th:nth-child(2),
.container.plm-images-docs-page .plm-images-docs-grid-table td:nth-child(2) { width: 20% !important; }
.container.plm-images-docs-page .plm-images-docs-grid-table th:nth-child(3),
.container.plm-images-docs-page .plm-images-docs-grid-table td:nth-child(3) { width: 14% !important; }
.container.plm-images-docs-page .plm-images-docs-grid-table th:nth-child(4),
.container.plm-images-docs-page .plm-images-docs-grid-table td:nth-child(4) { width: 18% !important; }
.container.plm-images-docs-page .plm-images-docs-grid-table th:nth-child(5),
.container.plm-images-docs-page .plm-images-docs-grid-table td:nth-child(5) { width: 16% !important; }
.container.plm-images-docs-page .plm-images-docs-grid-table th:nth-child(6),
.container.plm-images-docs-page .plm-images-docs-grid-table td:nth-child(6) { width: 16% !important; }
.container.plm-images-docs-page .plm-images-docs-grid-table th:nth-child(7),
.container.plm-images-docs-page .plm-images-docs-grid-table td:nth-child(7) { width: 12% !important; }

.container.plm-images-docs-page .plm-images-docs-grid-table td { vertical-align: top !important; }
.container.plm-images-docs-page .plm-asset-product-summary {
    align-items: flex-start;
    display: grid;
    gap: 12px;
    grid-template-columns: 82px minmax(0, 1fr);
}
.container.plm-images-docs-page .plm-asset-product-summary .plm-thumb-cell {
    padding: 0 !important;
    width: 82px !important;
}
.container.plm-images-docs-page .plm-asset-product-name { line-height: 1.35; margin-top: 8px; }
.container.plm-images-docs-page .plm-asset-library-head,
.container.plm-images-docs-page .plm-asset-library-row {
    align-items: flex-start;
    display: flex;
    gap: 10px;
    justify-content: space-between;
}
.container.plm-images-docs-page .plm-asset-library-head { align-items: center; margin-bottom: 4px; }
.container.plm-images-docs-page .plm-asset-library-row {
    border-top: 1px solid rgba(136, 199, 232, .18);
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    padding: 9px 0;
}
.container.plm-images-docs-page .plm-asset-library-row-selectable {
    grid-template-columns: 20px minmax(0, 1fr);
}
.container.plm-images-docs-page .plm-asset-library-row > div:not(.plm-asset-library-actions) {
    grid-column: 1;
    min-width: 0;
}
.container.plm-images-docs-page .plm-asset-library-row-selectable > div:not(.plm-asset-library-actions) {
    grid-column: 2;
}
.container.plm-images-docs-page .plm-asset-select-control {
    align-items: flex-start;
    display: flex;
    grid-column: 1;
    grid-row: 1 / span 2;
    justify-content: center;
    padding-top: 2px;
}
.container.plm-images-docs-page .plm-asset-select-control input {
    height: 16px;
    margin: 0;
    width: 16px;
}
.container.plm-images-docs-page .plm-asset-library-row .plm-link {
    overflow-wrap: break-word;
    word-break: normal;
}
.container.plm-images-docs-page .plm-asset-title-line {
    align-items: baseline;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}
.container.plm-images-docs-page .plm-asset-title-line .plm-asset-main-badge {
    font-size: 10px;
    min-height: 0;
    padding: 1px 5px;
}
.container.plm-images-docs-page .plm-asset-library-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    grid-column: 1;
    justify-content: flex-start;
    margin-top: 7px;
}
.container.plm-images-docs-page .plm-asset-library-row-selectable .plm-asset-library-actions {
    grid-column: 2;
}
.container.plm-images-docs-page .plm-asset-library-cell .plm-inline-button {
    min-height: 32px !important;
    padding: 5px 9px !important;
}
.container.plm-images-docs-page .plm-danger-button {
    border-color: #e87079 !important;
    color: #ffb6bc !important;
}
.container.plm-images-docs-page .plm-danger-button:disabled {
    border-color: rgba(232, 112, 121, .38) !important;
    color: rgba(255, 182, 188, .55) !important;
}
.container.plm-images-docs-page .plm-asset-ready-cell { line-height: 1.4; }

@media (max-width: 1300px) {
    .container.plm-images-docs-page .plm-images-docs-grid-table thead { display: none; }
    .container.plm-images-docs-page .plm-images-docs-grid-table,
    .container.plm-images-docs-page .plm-images-docs-grid-table tbody,
    .container.plm-images-docs-page .plm-images-docs-grid-table tr,
    .container.plm-images-docs-page .plm-images-docs-grid-table td {
        box-sizing: border-box !important;
        display: block !important;
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-wrap: anywhere;
        width: 100% !important;
    }
    .container.plm-images-docs-page .plm-images-docs-grid-table tr {
        border: 1px solid rgba(136, 199, 232, .28);
        margin-bottom: 14px;
    }
    .container.plm-images-docs-page .plm-images-docs-grid-table tr > td:nth-child(1),
    .container.plm-images-docs-page .plm-images-docs-grid-table tr > td:nth-child(2),
    .container.plm-images-docs-page .plm-images-docs-grid-table tr > td:nth-child(3),
    .container.plm-images-docs-page .plm-images-docs-grid-table tr > td:nth-child(4),
    .container.plm-images-docs-page .plm-images-docs-grid-table tr > td:nth-child(5),
    .container.plm-images-docs-page .plm-images-docs-grid-table tr > td:nth-child(6) {
        width: 100% !important;
    }
    .container.plm-images-docs-page .plm-images-docs-grid-table td:first-child {
        padding-bottom: 0 !important;
        width: 100% !important;
    }
    .container.plm-images-docs-page .plm-asset-product-summary { grid-template-columns: 68px minmax(0, 1fr); }
}

/* =========================================================
   Global Industrial integration
   Version: Global Industrial v1.3 publishing workspace
   All presentation for the integration page lives here so it follows the
   Command Center theme and does not depend on route-level inline CSS.
   ========================================================= */
.container.plm-page.global-industrial-page {
    box-sizing: border-box;
    color: var(--sms-white) !important;
    background: linear-gradient(155deg, var(--sms-dark-blue) 0%, var(--sms-dark-blue-2) 100%) !important;
    border: 1px solid var(--sms-dark-border) !important;
    border-radius: 18px !important;
    box-shadow: var(--sms-shadow) !important;
}

.container.global-industrial-page .gi-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
}

.container.global-industrial-page .gi-title {
    margin: 4px 0 6px;
    color: var(--sms-white) !important;
    font-size: clamp(1.85rem, 3vw, 2.55rem);
    line-height: 1.05;
}

.container.global-industrial-page .gi-label {
    color: var(--sms-light-blue) !important;
    font-size: 0.76rem;
    font-weight: 900;
    line-height: 1.2;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.container.global-industrial-page .gi-muted {
    color: var(--sms-muted-white) !important;
    line-height: 1.45;
}

.container.global-industrial-page .gi-status {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 38px;
    padding: 0 14px;
    border: 1px solid #86efac;
    border-radius: 999px;
    background: #dcfce7;
    color: #166534 !important;
    font-weight: 900;
    line-height: 1;
    white-space: nowrap;
}

.container.global-industrial-page .gi-status.bad {
    border-color: #fca5a5;
    background: #fee2e2;
    color: #991b1b !important;
}

.container.global-industrial-page .gi-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
    gap: 13px;
    margin: 18px 0;
}

.container.global-industrial-page .gi-card,
.container.global-industrial-page .gi-panel {
    color: var(--sms-white) !important;
    background: linear-gradient(145deg, var(--sms-medium-blue) 0%, var(--sms-medium-blue-2) 100%) !important;
    border: 1px solid rgba(220, 162, 74, 0.58) !important;
    box-shadow: var(--sms-card-shadow) !important;
}

.container.global-industrial-page .gi-card {
    min-width: 0;
    min-height: 78px;
    padding: 15px 16px;
    border-radius: 16px !important;
}

.container.global-industrial-page .gi-value {
    margin-top: 7px;
    color: var(--sms-white) !important;
    font-size: 1.65rem;
    font-weight: 950;
    line-height: 1.05;
}

.container.global-industrial-page .gi-value.gi-small {
    font-size: 0.98rem;
    line-height: 1.28;
    overflow-wrap: anywhere;
}

.container.global-industrial-page .gi-panel {
    position: relative;
    overflow-x: auto;
    margin-top: 18px;
    padding: clamp(15px, 1.7vw, 20px);
    border-radius: 18px !important;
}

.container.global-industrial-page .gi-panel::after {
    content: "";
    position: absolute;
    right: 18px;
    bottom: 0;
    left: 18px;
    height: 3px;
    border-radius: 999px 999px 0 0;
    background: linear-gradient(90deg, var(--brand-accent) 0%, var(--sms-light-blue) 58%, var(--sms-line-blue) 100%);
    pointer-events: none;
}

.container.global-industrial-page .gi-panel h2,
.container.global-industrial-page .gi-subheading {
    color: var(--sms-white) !important;
}

.container.global-industrial-page .gi-panel h2 {
    margin: 0 0 10px;
    font-size: 1.35rem;
}

.container.global-industrial-page .gi-subheading {
    margin: 18px 0 9px;
    font-size: 1.05rem;
}

.container.global-industrial-page .gi-table {
    width: 100%;
    min-width: 850px;
    margin-top: 12px;
    overflow: hidden;
    border: 1px solid var(--sms-dark-border) !important;
    border-collapse: separate;
    border-spacing: 0;
    border-radius: 12px;
    background: rgba(1, 20, 35, 0.18) !important;
}

.container.global-industrial-page .gi-table th,
.container.global-industrial-page .gi-table td {
    padding: 10px 11px;
    border-bottom: 1px solid rgba(126, 200, 255, 0.14) !important;
    text-align: left;
    vertical-align: top;
    line-height: 1.38;
    overflow-wrap: anywhere;
}

.container.global-industrial-page .gi-table th {
    position: sticky;
    top: 0;
    z-index: 2;
    background: var(--sms-flat-table-header-bg, #0B4F76) !important;
    color: var(--sms-white) !important;
    font-size: 0.74rem;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.container.global-industrial-page .gi-table td {
    background: rgba(255, 255, 255, 0.025) !important;
    color: var(--sms-soft-white) !important;
}

.container.global-industrial-page .gi-table tbody tr:nth-child(even) td {
    background: rgba(255, 255, 255, 0.045) !important;
}

.container.global-industrial-page .gi-table tbody tr:hover td {
    background: rgba(126, 200, 255, 0.09) !important;
}

.container.global-industrial-page .gi-code {
    font-family: Consolas, "Courier New", monospace !important;
    font-size: 0.8rem;
    overflow-wrap: anywhere;
}

.container.global-industrial-page .gi-error {
    max-width: 430px;
    color: #fecaca !important;
    white-space: pre-wrap;
}

.container.global-industrial-page .gi-alert {
    margin: 14px 0;
    padding: 12px 14px;
    border: 1px solid rgba(126, 200, 255, 0.52) !important;
    border-left: 5px solid var(--sms-light-blue) !important;
    border-radius: 12px;
    background: rgba(11, 94, 142, 0.26) !important;
    color: var(--sms-white) !important;
    line-height: 1.45;
}

.container.global-industrial-page .gi-pricing-alert {
    border-color: rgba(220, 162, 74, 0.7) !important;
    border-left-color: #DCA24A !important;
    background: rgba(220, 162, 74, 0.12) !important;
}

.container.global-industrial-page .gi-search {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
    margin: 15px 0 12px;
}

.container.global-industrial-page .gi-input {
    box-sizing: border-box;
    min-width: 105px;
    min-height: 40px;
    padding: 8px 10px;
    border: 1px solid #b8cee0 !important;
    border-radius: 9px;
    background: #ffffff !important;
    color: var(--sms-field-text) !important;
}

.container.global-industrial-page .gi-input::placeholder {
    color: var(--sms-field-muted) !important;
}

.container.global-industrial-page .gi-search .gi-input {
    flex: 1 1 330px;
    min-width: min(330px, 100%);
}

.container.global-industrial-page .gi-button,
.container.global-industrial-page a.gi-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    min-height: 40px;
    padding: 9px 14px;
    border: 1px solid rgba(126, 200, 255, 0.64) !important;
    border-radius: 9px;
    background: var(--sms-flat-button-bg, var(--brand-accent)) !important;
    color: var(--sms-white) !important;
    font-weight: 850;
    line-height: 1.1;
    text-decoration: none !important;
    cursor: pointer;
}

.container.global-industrial-page .gi-button:hover,
.container.global-industrial-page a.gi-button:hover {
    border-color: var(--sms-light-blue) !important;
    background: var(--sms-light-blue) !important;
    color: var(--sms-dark-blue) !important;
}

.container.global-industrial-page .gi-button-secondary,
.container.global-industrial-page a.gi-button-secondary {
    background: #475569 !important;
}

.container.global-industrial-page .gi-button:disabled {
    border-color: rgba(126, 200, 255, 0.24) !important;
    background: #475569 !important;
    color: #cbd5e1 !important;
    cursor: not-allowed;
    opacity: 0.72;
}

.container.global-industrial-page .gi-migration-form {
    display: grid;
    grid-template-columns: minmax(260px, 1fr) auto auto;
    gap: 12px;
    align-items: end;
    margin: 16px 0 12px;
}

.container.global-industrial-page .gi-migration-field {
    display: grid;
    gap: 7px;
    min-width: 0;
    margin: 0;
    color: var(--sms-white) !important;
    font-weight: 850;
}

.container.global-industrial-page .gi-migration-field .gi-input {
    width: 100%;
}

.container.global-industrial-page .gi-category-search-field {
    grid-column: 1 / -1;
}

.container.global-industrial-page .gi-category-search-status {
    min-height: 1.2em;
    color: var(--sms-light-blue) !important;
    font-size: 0.82rem;
    font-weight: 750;
}

.container.global-industrial-page .gi-process-status:not(:empty) {
    margin: -2px 0 12px;
    color: var(--sms-light-blue) !important;
    font-weight: 800;
}

.container.global-industrial-page .gi-migration-safety {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr) auto minmax(0, 1fr);
    gap: 8px 12px;
    align-items: start;
    margin: 0 0 14px;
    padding: 12px 14px;
    border: 1px solid rgba(126, 200, 255, 0.3);
    border-radius: 10px;
    background: rgba(1, 20, 35, 0.22);
    color: var(--sms-soft-white) !important;
    line-height: 1.4;
}

.container.global-industrial-page .gi-migration-safety strong {
    color: var(--sms-light-blue) !important;
}

.container.global-industrial-page .gi-migration-table {
    min-width: 920px;
}

.container.global-industrial-page .gi-check {
    display: flex;
    align-items: center;
    gap: 6px;
    margin: 3px 0;
    color: var(--sms-soft-white) !important;
    white-space: nowrap;
}

.container.global-industrial-page .gi-check input {
    width: 17px;
    height: 17px;
    margin: 0;
}

.container.global-industrial-page .gi-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 20px;
    margin: 2px 0;
    padding: 2px 8px;
    border: 1px solid rgba(126, 200, 255, 0.38) !important;
    border-radius: 999px;
    background: rgba(126, 200, 255, 0.18) !important;
    color: var(--sms-white) !important;
    font-size: 0.72rem;
    font-weight: 900;
    line-height: 1;
    white-space: nowrap;
}

.container.global-industrial-page .gi-badge.good {
    border-color: #86efac !important;
    background: #dcfce7 !important;
    color: #166534 !important;
}

.container.global-industrial-page .gi-badge.warn {
    border-color: #fbbf24 !important;
    background: #fef3c7 !important;
    color: #3a2600 !important;
}

.container.global-industrial-page .gi-save {
    padding: 8px 11px;
}

.container.global-industrial-page .gi-note {
    min-width: 190px;
}

.container.global-industrial-page .gi-buffer-input {
    width: 84px;
}

.container.global-industrial-page .gi-history-copy {
    margin-bottom: 10px;
}

.container.global-industrial-page .gi-footer-note {
    margin-top: 16px;
    font-size: 0.78rem;
    text-align: right;
}

.container.global-industrial-page .gi-workflow-copy {
    margin-top: 8px;
    color: var(--sms-soft-white) !important;
    font-size: 0.9rem;
    line-height: 1.4;
}

.container.global-industrial-page .gi-workflow-steps {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 16px;
}

.container.global-industrial-page .gi-workflow-table {
    min-width: 1050px;
}

.container.global-industrial-page .gi-actions {
    margin-top: 9px;
}

.container.global-industrial-page .gi-workflow-note {
    margin-top: 13px;
}

.container.global-industrial-page .gi-refresh-panel {
    border-color: rgba(126, 200, 255, 0.72) !important;
}

.container.global-industrial-page .gi-refresh-grid {
    grid-template-columns: repeat(6, minmax(135px, 1fr));
    margin-bottom: 12px;
}

.container.global-industrial-page .gi-api-grid {
    grid-template-columns: repeat(5, minmax(145px, 1fr));
    margin-bottom: 0;
}

.container.global-industrial-page .gi-refresh-history {
    margin-top: 14px;
    border-top: 1px solid rgba(126, 200, 255, 0.22);
    padding-top: 12px;
}

.container.global-industrial-page .gi-refresh-history summary {
    color: var(--sms-white) !important;
    font-weight: 850;
    cursor: pointer;
}

.container.global-industrial-page .gi-table-scroll {
    max-width: 100%;
    overflow-x: auto;
}

.container.global-industrial-page .gi-review-category {
    display: grid;
    grid-template-columns: minmax(180px, 260px) minmax(0, 1fr);
    gap: 20px;
    align-items: start;
}

.container.global-industrial-page .gi-review-category.no-image {
    grid-template-columns: 1fr;
}

.container.global-industrial-page .gi-review-category-image {
    display: block;
    width: 100%;
    max-width: 260px;
    aspect-ratio: 1;
    object-fit: contain;
    border: 1px solid rgba(126, 200, 255, 0.35);
    border-radius: 8px;
    background: #fff;
}

.container.global-industrial-page .gi-review-samples {
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
}

.container.global-industrial-page .gi-review-sample {
    display: grid;
    grid-template-columns: 88px minmax(280px, 1fr) minmax(150px, 0.34fr);
    gap: 12px;
    align-items: center;
    min-width: 0;
    padding: 10px;
    border: 1px solid rgba(126, 200, 255, 0.28);
    border-radius: 7px;
    background: rgba(3, 34, 58, 0.3);
}

.container.global-industrial-page .gi-review-product-image {
    display: block;
    width: 88px;
    height: 88px;
    object-fit: contain;
    border: 1px solid rgba(126, 200, 255, 0.35);
    border-radius: 6px;
    background: #fff;
}

.container.global-industrial-page .gi-review-product-summary {
    min-width: 0;
}

.container.global-industrial-page .gi-review-product-summary h3 {
    margin: 3px 0;
}

.container.global-industrial-page .gi-review-product-facts {
    display: grid;
    gap: 3px;
    color: var(--sms-soft-white) !important;
    font-size: 0.84rem;
}

.container.global-industrial-page .gi-review-row-details {
    grid-column: 2 / -1;
    padding-top: 7px;
    border-top: 1px solid rgba(126, 200, 255, 0.22);
}

.container.global-industrial-page .gi-review-row-details summary {
    color: var(--sms-light-blue) !important;
    font-weight: 850;
    cursor: pointer;
}

.container.global-industrial-page .gi-review-copy {
    overflow-wrap: anywhere;
}

.container.global-industrial-page .gi-review-meta,
.container.global-industrial-page .gi-review-price {
    margin-top: 10px;
}

.container.global-industrial-page .gi-review-price {
    display: flex;
    flex-wrap: wrap;
    gap: 8px 16px;
    color: var(--sms-soft-white) !important;
    font-weight: 800;
}

@media (max-width: 760px) {
    .container.global-industrial-page .gi-head {
        align-items: stretch;
        flex-direction: column;
    }

    .container.global-industrial-page .gi-status {
        align-self: flex-start;
    }

    .container.global-industrial-page .gi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .container.global-industrial-page .gi-search .gi-input,
    .container.global-industrial-page .gi-search .gi-button {
        flex: 1 1 100%;
        width: 100%;
    }

    .container.global-industrial-page .gi-migration-form,
    .container.global-industrial-page .gi-migration-safety {
        grid-template-columns: 1fr;
    }

    .container.global-industrial-page .gi-migration-form .gi-button {
        width: 100%;
    }

    .container.global-industrial-page .gi-review-category {
        grid-template-columns: 1fr;
    }

    .container.global-industrial-page .gi-review-category-image {
        max-width: 200px;
    }

    .container.global-industrial-page .gi-review-sample {
        grid-template-columns: 72px minmax(0, 1fr);
        align-items: start;
    }

    .container.global-industrial-page .gi-review-product-image {
        width: 72px;
        height: 72px;
    }

    .container.global-industrial-page .gi-review-product-facts,
    .container.global-industrial-page .gi-review-row-details {
        grid-column: 1 / -1;
    }
}

@media (max-width: 480px) {
    .container.global-industrial-page .gi-grid {
        grid-template-columns: 1fr;
    }

    .container.global-industrial-page .gi-api-grid,
    .container.global-industrial-page .gi-refresh-grid {
        grid-template-columns: 1fr;
    }
}

.plm-vendor-detail-page .plm-image-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
    gap: 12px;
    margin: 0 0 16px;
}

.plm-vendor-detail-page .plm-image-card {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 10px;
    border: 1px solid rgba(91, 192, 235, 0.45);
    border-radius: 12px;
    background: rgba(3, 36, 59, 0.42);
    color: var(--sms-link-blue);
    text-decoration: none;
}

.plm-vendor-detail-page .plm-image-card img {
    width: 100%;
    height: 150px;
    object-fit: contain;
    border-radius: 8px;
    background: #fff;
}

.plm-vendor-detail-page .plm-image-card span {
    overflow-wrap: anywhere;
    font-size: 0.82rem;
    line-height: 1.3;
}

/* Tank-Mart public-price monitor.
   Shell placement deliberately comes from the shared Command Center rules;
   integration pages must not move the sidebar or top bar independently. */

/* Integration pages share one shell: the navigation starts below the compact
   header instead of covering its left edge. Global and Tank-Mart both opt in
   through the same body class. */
body.sms-integration-page-body .sms-cc-sidebar {
    top: 66px;
}

.tm-page .gi-actions {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.tm-page .gi-actions form {
    margin: 0;
}

.container.global-industrial-page.tm-page .tm-summary-grid {
    grid-template-columns: repeat(auto-fit, minmax(185px, 1fr));
}

.container.global-industrial-page.tm-page .tm-card-good {
    border-color: rgba(134, 239, 172, 0.72) !important;
}

.container.global-industrial-page.tm-page .tm-card-neutral {
    border-color: rgba(125, 211, 252, 0.68) !important;
}

.container.global-industrial-page.tm-page .tm-card-warning {
    border-color: rgba(251, 191, 36, 0.92) !important;
    background: linear-gradient(145deg, #4b3a20 0%, #2f3544 100%) !important;
}

.container.global-industrial-page.tm-page .tm-panel-good {
    border-color: rgba(134, 239, 172, 0.58) !important;
}

.container.global-industrial-page.tm-page .tm-panel-warning {
    border-color: rgba(251, 191, 36, 0.92) !important;
}

.container.global-industrial-page.tm-page .tm-explainer-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
    margin-top: 12px;
}

.container.global-industrial-page.tm-page .tm-explainer-item {
    display: flex;
    min-width: 0;
    padding: 14px 15px;
    border: 1px solid var(--sms-dark-border);
    border-left-width: 5px;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.04);
    flex-direction: column;
    gap: 6px;
}

.container.global-industrial-page.tm-page .tm-explainer-item strong {
    color: var(--sms-white);
    font-size: 1rem;
}

.container.global-industrial-page.tm-page .tm-explainer-item span {
    color: var(--sms-soft-white);
    line-height: 1.42;
}

.container.global-industrial-page.tm-page .tm-explainer-item.good {
    border-left-color: #86efac;
}

.container.global-industrial-page.tm-page .tm-explainer-item.warning {
    border-color: rgba(251, 191, 36, 0.92) !important;
    background: linear-gradient(145deg, #4b3a20 0%, #2f3544 100%) !important;
    color: var(--sms-white) !important;
}

.container.global-industrial-page.tm-page .tm-explainer-item.neutral {
    border-left-color: var(--sms-light-blue);
}

.container.global-industrial-page.tm-page .tm-empty-state {
    margin-top: 12px;
    padding: 18px;
    border: 1px solid rgba(134, 239, 172, 0.48);
    border-radius: 12px;
    background: rgba(22, 101, 52, 0.18);
    color: #dcfce7;
    font-weight: 800;
}

.container.global-industrial-page.tm-page .tm-product-progress {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 10px;
    margin-top: 14px;
}

.container.global-industrial-page.tm-page .tm-product-progress > div {
    display: flex;
    min-width: 0;
    padding: 13px 15px;
    border: 1px solid var(--sms-dark-border);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.04);
    flex-direction: column;
    gap: 5px;
}

.container.global-industrial-page.tm-page .tm-product-progress span {
    color: var(--sms-soft-white);
    font-size: 0.88rem;
    font-weight: 800;
}

.container.global-industrial-page.tm-page .tm-product-progress strong {
    color: var(--sms-white);
    font-size: 1.65rem;
    line-height: 1;
}

.container.global-industrial-page.tm-page .tm-product-progress .ready {
    border-color: rgba(134, 239, 172, 0.72);
    background: rgba(22, 101, 52, 0.18);
}

.container.global-industrial-page.tm-page .tm-product-progress .attention {
    border-color: rgba(251, 191, 36, 0.92);
    background: rgba(120, 53, 15, 0.24);
}

.container.global-industrial-page.tm-page .tm-review-launch-list {
    display: grid;
    gap: 10px;
    margin-top: 12px;
}

.container.global-industrial-page.tm-page .tm-review-launch,
.container.global-industrial-page.tm-page .tm-preparing-state {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 16px 18px;
    border: 1px solid var(--sms-dark-border);
    border-radius: 12px;
    background: rgba(3, 36, 59, 0.42);
}

.container.global-industrial-page.tm-page .tm-review-launch.ready {
    border-color: rgba(134, 239, 172, 0.72);
}

.container.global-industrial-page.tm-page .tm-review-launch.attention {
    border-color: rgba(251, 191, 36, 0.92);
}

.container.global-industrial-page.tm-page .tm-review-launch-copy,
.container.global-industrial-page.tm-page .tm-preparing-state {
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
}

.container.global-industrial-page.tm-page .tm-review-launch-copy {
    display: flex;
    gap: 5px;
}

.container.global-industrial-page.tm-page .tm-review-launch-copy strong,
.container.global-industrial-page.tm-page .tm-preparing-state strong {
    color: var(--sms-white);
}

.container.global-industrial-page.tm-page .tm-review-launch-copy span,
.container.global-industrial-page.tm-page .tm-preparing-state span {
    color: var(--sms-soft-white);
    line-height: 1.42;
}

.container.global-industrial-page.tm-page .tm-review-button {
    flex: 0 0 auto;
    text-decoration: none;
}

.container.global-industrial-page.tm-page .tm-review-actions {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 10px;
    flex: 0 0 auto;
}

.container.global-industrial-page.tm-page .tm-review-retry-form {
    margin: 0;
}

.container.global-industrial-page.tm-page .tm-details > summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    color: var(--sms-white);
    cursor: pointer;
    font-size: 1.15rem;
    font-weight: 900;
    list-style: none;
}

.container.global-industrial-page.tm-page .tm-details > summary::-webkit-details-marker {
    display: none;
}

.container.global-industrial-page.tm-page .tm-details > summary::before {
    content: "+";
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border: 1px solid var(--sms-dark-border-strong);
    border-radius: 50%;
    color: var(--sms-light-blue);
    flex: 0 0 24px;
}

.container.global-industrial-page.tm-page .tm-details[open] > summary::before {
    content: "−";
}

.container.global-industrial-page.tm-page .tm-details > summary > span:first-of-type {
    margin-right: auto;
}

.container.global-industrial-page.tm-page a {
    color: var(--sms-light-blue);
}

.container.global-industrial-page.tm-page .tm-action-table {
    min-width: 900px;
}

.tm-table-scroll {
    overflow-x: auto;
    width: 100%;
}

.tm-table-scroll .gi-table {
    min-width: 980px;
}

.container.global-industrial-page.tm-page .tm-price-up {
    color: #fecaca !important;
    font-weight: 800;
}

.container.global-industrial-page.tm-page .tm-price-down {
    color: #bbf7d0 !important;
    font-weight: 800;
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
    margin-top: 20px;
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-card {
    display: grid;
    grid-template-columns: minmax(190px, 240px) minmax(260px, 0.8fr) minmax(340px, 1.2fr) minmax(160px, 200px);
    align-items: stretch;
    overflow: hidden;
    border: 1px solid var(--sms-dark-border);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.045);
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-media {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 230px;
    padding: 16px;
    background: #fff;
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-media img {
    display: block;
    width: 100%;
    max-height: 240px;
    object-fit: contain;
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-image-missing {
    color: #7f1d1d;
    font-weight: 900;
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-copy {
    display: flex;
    min-width: 0;
    padding: 18px;
    flex-direction: column;
    gap: 11px;
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-overview,
.container.global-industrial-page.tm-storefront-review .tm-storefront-content,
.container.global-industrial-page.tm-storefront-review .tm-storefront-outcome {
    border-left: 1px solid rgba(125, 211, 252, 0.18);
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-outcome {
    justify-content: center;
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-review-summary {
    display: flex;
    align-items: baseline;
    gap: 12px;
    margin-top: 18px;
    padding: 13px 16px;
    border: 1px solid rgba(125, 211, 252, 0.34);
    border-radius: 12px;
    background: rgba(14, 116, 144, 0.14);
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-review-summary span {
    color: var(--sms-soft-white);
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-copy h2 {
    margin: 0;
    color: var(--sms-white);
    font-size: 1.35rem;
    line-height: 1.25;
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-sku,
.container.global-industrial-page.tm-storefront-review .tm-storefront-meta dd {
    color: var(--sms-soft-white);
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-price {
    color: #86efac;
    font-size: 1.65rem;
    font-weight: 950;
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-description summary {
    color: var(--sms-light-blue);
    cursor: pointer;
    font-weight: 850;
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-description-body {
    margin-top: 10px;
    color: var(--sms-white);
    line-height: 1.5;
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-meta {
    display: grid;
    gap: 8px;
    margin: 0;
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-content {
    justify-content: center;
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-meta div {
    display: grid;
    gap: 2px;
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-meta dt {
    color: var(--sms-light-blue);
    font-size: 0.78rem;
    font-weight: 900;
    letter-spacing: 0.04em;
    text-transform: uppercase;
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-meta dd {
    margin: 0;
    line-height: 1.35;
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-errors,
.container.global-industrial-page.tm-storefront-review .tm-storefront-ready {
    padding: 11px 13px;
    border-radius: 10px;
    font-weight: 850;
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-errors {
    border: 1px solid rgba(248, 113, 113, 0.78);
    background: rgba(127, 29, 29, 0.3);
    color: #fee2e2;
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-errors ul {
    margin: 7px 0 0 18px;
    padding: 0;
}

.container.global-industrial-page.tm-storefront-review .tm-storefront-ready {
    border: 1px solid rgba(134, 239, 172, 0.72);
    background: rgba(22, 101, 52, 0.24);
    color: #dcfce7;
}

.container.global-industrial-page.tm-storefront-review .tm-publish-launch {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-top: 22px;
    padding: 18px 20px;
    border: 1px solid rgba(134, 239, 172, 0.72);
    border-radius: 14px;
    background: rgba(22, 101, 52, 0.18);
}

.container.global-industrial-page.tm-storefront-review .tm-publish-launch div {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.container.global-industrial-page.tm-storefront-review .tm-publish-launch span {
    color: var(--sms-soft-white);
}

@media (max-width: 1400px) {
    .container.global-industrial-page.tm-storefront-review .tm-storefront-card {
        grid-template-columns: minmax(180px, 220px) minmax(0, 1fr);
    }

    .container.global-industrial-page.tm-storefront-review .tm-storefront-content,
    .container.global-industrial-page.tm-storefront-review .tm-storefront-outcome {
        grid-column: 2;
    }

    .container.global-industrial-page.tm-storefront-review .tm-storefront-outcome {
        justify-content: flex-start;
    }
}

@media (max-width: 980px) {
    .container.global-industrial-page.tm-page .tm-explainer-grid {
        grid-template-columns: 1fr;
    }

    .container.global-industrial-page.tm-page .tm-product-progress {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

}

@media (max-width: 760px) {
    body.sms-integration-page-body .sms-cc-sidebar {
        top: 0;
    }

    .container.global-industrial-page.tm-page .tm-product-progress {
        grid-template-columns: 1fr;
    }

    .container.global-industrial-page.tm-page .tm-review-launch {
        align-items: stretch;
        flex-direction: column;
    }

    .container.global-industrial-page.tm-page .tm-review-button {
        text-align: center;
    }

    .container.global-industrial-page.tm-page .tm-review-actions {
        align-items: stretch;
        flex-direction: column;
    }

    .container.global-industrial-page.tm-storefront-review .tm-storefront-grid,
    .container.global-industrial-page.tm-storefront-review .tm-storefront-card {
        grid-template-columns: 1fr;
    }

    .container.global-industrial-page.tm-storefront-review .tm-storefront-content,
    .container.global-industrial-page.tm-storefront-review .tm-storefront-outcome {
        grid-column: auto;
    }

    .container.global-industrial-page.tm-storefront-review .tm-storefront-overview,
    .container.global-industrial-page.tm-storefront-review .tm-storefront-content,
    .container.global-industrial-page.tm-storefront-review .tm-storefront-outcome {
        border-top: 1px solid rgba(125, 211, 252, 0.18);
        border-left: 0;
    }

    .container.global-industrial-page.tm-storefront-review .tm-storefront-review-summary {
        align-items: flex-start;
        flex-direction: column;
        gap: 4px;
    }

    .container.global-industrial-page.tm-storefront-review .tm-publish-launch {
        align-items: stretch;
        flex-direction: column;
    }
}

/* =========================================================
   Product Performance
   Uses the shared Command Center theme variables above.
   ========================================================= */

.container.cc-scoreboard-page .cc-scoreboard-head {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    justify-content: space-between;
}

.container.cc-scoreboard-page,
.container.cc-scoreboard-page * {
    box-sizing: border-box;
}

.container.cc-scoreboard-page .cc-scoreboard-actions,
.container.cc-scoreboard-page .cc-scoreboard-owner-form,
.container.cc-scoreboard-page .cc-scoreboard-review-form {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.container.cc-scoreboard-page .cc-scoreboard-filters {
    align-items: end;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.container.cc-scoreboard-page .cc-scoreboard-filters label,
.container.cc-scoreboard-page .cc-workbench-review label,
.container.cc-scoreboard-page .cc-workbench-task-form label {
    color: var(--cc-scoreboard-panel-muted) !important;
    display: flex;
    flex-direction: column;
    font-size: 12px;
    font-weight: 700;
    gap: 4px;
}

.container.cc-scoreboard-page .cc-scoreboard-filters select,
.container.cc-scoreboard-page .cc-scoreboard-filters input,
.container.cc-scoreboard-page .cc-workbench-review input,
.container.cc-scoreboard-page .cc-workbench-task-form input,
.container.cc-scoreboard-page .cc-workbench-task-form select {
    min-height: 36px;
}

.container.cc-scoreboard-page .cc-scoreboard-filters .cc-filter-search {
    min-width: 220px;
}

.container.cc-scoreboard-page .cc-scoreboard-rank {
    font-size: 18px;
    font-weight: 800;
    width: 56px;
}

.container.cc-scoreboard-page .cc-scoreboard-owner,
.container.cc-scoreboard-page .cc-scoreboard-money {
    font-weight: 800;
}

.container.cc-scoreboard-page .cc-scoreboard-money {
    white-space: nowrap;
}

.container.cc-scoreboard-page .cc-scoreboard-product-cell {
    min-width: 280px;
}

.container.cc-scoreboard-page .cc-scoreboard-review-form {
    min-width: 260px;
}

.container.cc-scoreboard-page .cc-scoreboard-review-form input[type="text"] {
    min-width: 160px;
}

.container.cc-scoreboard-page .cc-scoreboard-owner-form {
    min-width: 210px;
}

.container.cc-scoreboard-page .cc-scoreboard-status-grid,
.container.cc-scoreboard-page .cc-workbench-metrics {
    display: grid;
    gap: 10px;
    grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
}

.container.cc-scoreboard-page .cc-scoreboard-status,
.container.cc-scoreboard-page .cc-workbench-metric,
.container.cc-scoreboard-page .cc-workbench-issue-list li {
    background: var(--cc-scoreboard-panel-bg) !important;
    border: 1px solid var(--cc-scoreboard-panel-border) !important;
    border-radius: 8px;
    color: var(--cc-scoreboard-panel-text) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04);
}

.container.cc-scoreboard-page .cc-scoreboard-status,
.container.cc-scoreboard-page .cc-workbench-metric {
    padding: 10px 12px;
}

.container.cc-scoreboard-page .cc-scoreboard-status strong,
.container.cc-scoreboard-page .cc-workbench-metric strong,
.container.cc-scoreboard-page .cc-workbench-issue-list strong {
    color: var(--cc-scoreboard-panel-text) !important;
}

.container.cc-scoreboard-page .cc-scoreboard-status strong {
    display: block;
    margin-bottom: 8px;
}

.container.cc-scoreboard-page .cc-scoreboard-status .plm-mini-note,
.container.cc-scoreboard-page .cc-workbench-metric .plm-mini-note,
.container.cc-scoreboard-page .cc-workbench-issue-list .plm-mini-note {
    color: var(--cc-scoreboard-panel-muted) !important;
}

.container.cc-scoreboard-page .cc-scoreboard-status .plm-mini-note {
    margin-top: 8px;
}

.container.cc-scoreboard-page .cc-scoreboard-scroll {
    overflow-x: auto;
}

.container.cc-scoreboard-page .cc-scoreboard-muted-row {
    color: var(--cc-scoreboard-panel-muted) !important;
}

.container.cc-scoreboard-page .cc-scoreboard-filter-note {
    margin-top: 8px;
}

.container.cc-scoreboard-page .cc-workbench-detail {
    border-color: var(--plm-accent-line) !important;
    max-width: 100%;
    min-width: 0;
}

.container.cc-scoreboard-page .cc-workbench-title {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    justify-content: space-between;
}

.container.cc-scoreboard-page .cc-workbench-metrics {
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    margin-top: 12px;
}

.container.cc-scoreboard-page .cc-workbench-metric small {
    color: var(--plm-accent-bright) !important;
    display: block;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0;
    margin-bottom: 4px;
    text-transform: uppercase;
}

.container.cc-scoreboard-page .cc-workbench-metric strong {
    display: block;
    font-size: 18px;
}

.container.cc-scoreboard-page .cc-workbench-detail-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(280px, 1.2fr) minmax(260px, .8fr);
    margin-top: 14px;
    max-width: 100%;
    min-width: 0;
}

.container.cc-scoreboard-page .cc-workbench-detail-grid > *,
.container.cc-scoreboard-page .cc-workbench-issue-list,
.container.cc-scoreboard-page .cc-workbench-issue-list li,
.container.cc-scoreboard-page .cc-workbench-review,
.container.cc-scoreboard-page .cc-workbench-review label,
.container.cc-scoreboard-page .cc-workbench-review input,
.container.cc-scoreboard-page .cc-workbench-task-form,
.container.cc-scoreboard-page .cc-workbench-task-form label,
.container.cc-scoreboard-page .cc-workbench-task-form input,
.container.cc-scoreboard-page .cc-workbench-task-form select {
    max-width: 100%;
    min-width: 0;
}

.container.cc-scoreboard-page .cc-workbench-issue-list {
    display: flex;
    flex-direction: column;
    gap: 8px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.container.cc-scoreboard-page .cc-workbench-issue-list li {
    overflow-wrap: anywhere;
    padding: 10px 12px;
    width: 100%;
}

.container.cc-scoreboard-page .cc-task-summary {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: space-between;
    margin-bottom: 8px;
}

.container.cc-scoreboard-page .cc-workbench-task-form {
    align-items: end;
    display: grid;
    gap: 8px;
    grid-template-columns: minmax(110px, .8fr) minmax(90px, .7fr) minmax(95px, .7fr) minmax(125px, .75fr) minmax(180px, 1.4fr) auto;
    margin-top: 12px;
}

.container.cc-scoreboard-page .cc-task-note-field {
    min-width: 180px;
}

.container.cc-scoreboard-page .cc-task-link-row {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: 8px;
}

.container.cc-scoreboard-page .cc-workbench-review {
    align-items: end;
    display: grid;
    gap: 8px;
    grid-template-columns: 1fr 150px auto;
    margin-top: 12px;
}

.container.cc-scoreboard-page .cc-scoreboard-chip {
    align-items: center;
    background: var(--cc-scoreboard-chip-bg) !important;
    border: 1px solid var(--cc-scoreboard-chip-border) !important;
    border-radius: 999px;
    color: var(--plm-accent-bright) !important;
    display: inline-flex;
    font-size: 12px;
    font-weight: 700;
    gap: 4px;
    padding: 3px 8px;
}

@media (max-width: 760px) {
    .container.cc-scoreboard-page .cc-scoreboard-head {
        display: block;
    }

    .container.cc-scoreboard-page .cc-scoreboard-filters,
    .container.cc-scoreboard-page .cc-scoreboard-actions,
    .container.cc-scoreboard-page .cc-scoreboard-owner-form,
    .container.cc-scoreboard-page .cc-scoreboard-review-form {
        width: 100%;
    }

    .container.cc-scoreboard-page .cc-scoreboard-filters label,
    .container.cc-scoreboard-page .cc-scoreboard-filters select,
    .container.cc-scoreboard-page .cc-scoreboard-filters input,
    .container.cc-scoreboard-page .cc-scoreboard-actions .plm-button {
        width: 100%;
    }

    .container.cc-scoreboard-page .cc-workbench-detail-grid,
    .container.cc-scoreboard-page .cc-workbench-review,
    .container.cc-scoreboard-page .cc-workbench-task-form {
        grid-template-columns: 1fr;
    }

    .container.cc-scoreboard-page .cc-workbench-detail,
    .container.cc-scoreboard-page .cc-workbench-detail-grid,
    .container.cc-scoreboard-page .cc-workbench-detail-grid > *,
    .container.cc-scoreboard-page .cc-workbench-issue-list,
    .container.cc-scoreboard-page .cc-workbench-issue-list li {
        width: 100%;
    }
}
/* Compact Quote Manager call workflow (kept inside the existing Customer cell). */
.qe-call-customer,
.qe-call-state {
    appearance: none;
    border: 0;
    background: transparent;
    padding: 0;
    text-align: left;
    font: inherit;
    cursor: pointer;
}
.qe-call-customer { color: #075b98; font-weight: 850; display: inline-flex; align-items: center; gap: 5px; text-decoration: underline; text-underline-offset: 2px; }
.qe-call-customer:hover span:first-child,
.qe-call-customer:focus-visible span:first-child,
.qe-call-state:hover,
.qe-call-state:focus-visible { text-decoration: underline; }
.qe-call-customer:focus-visible,
.qe-call-state:focus-visible,
.qe-call-close:focus-visible { outline: 3px solid #7cc4f5; outline-offset: 2px; border-radius: 3px; }
.qe-call-phone-icon { font-size: 13px; line-height: 1; color: #397596; }
.qe-call-state { display: block; width: max-content; max-width: 100%; margin-top: 3px; font-size: 11px; line-height: 1.25; font-weight: 800; text-decoration: none; }
.container .qe-call-state-needed {
    color: #ef4444 !important;
    -webkit-text-fill-color: #ef4444 !important;
    text-transform: uppercase;
    letter-spacing: .035em;
    font-weight: 950;
}
.qe-call-state-calling { color: #075b98; }
.qe-call-state-called { color: #287044; }
.qe-call-state-history { color: #637381; }

.qe-call-dialog { width: min(680px, calc(100vw - 28px)); max-height: min(88vh, 820px); padding: 0; border: 0; border-radius: 16px; color: #172b3a; box-shadow: 0 24px 80px rgba(3, 29, 48, .32); }
.qe-call-dialog::backdrop { background: rgba(3, 29, 48, .58); backdrop-filter: blur(2px); }
.qe-call-dialog-shell { padding: 22px; overflow: auto; max-height: min(88vh, 820px); }
.qe-call-dialog-head { display: flex; justify-content: space-between; gap: 18px; align-items: flex-start; padding-bottom: 14px; border-bottom: 1px solid #dce5eb; }
.container .qe-call-dialog-head h2 { margin: 2px 0 0; color: #082f4d !important; -webkit-text-fill-color: #082f4d !important; font-size: 23px; }
.qe-call-kicker { color: #527083; font-size: 11px; text-transform: uppercase; letter-spacing: .1em; font-weight: 900; }
.qe-call-close { appearance: none; border: 0; background: #edf3f6; color: #21465d; border-radius: 50%; width: 38px; height: 38px; font-size: 26px; line-height: 1; cursor: pointer; }
.qe-call-loading { padding: 28px 4px; color: #527083; }
.qe-call-facts { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; margin: 16px 0; }
.qe-call-fact { min-width: 0; background: #f5f8fa; border: 1px solid #e0e8ed; border-radius: 9px; padding: 9px 11px; }
.container .qe-call-fact span { display: block; color: #34566a !important; -webkit-text-fill-color: #34566a !important; font-size: 11px; font-weight: 800; }
.container .qe-call-fact strong { display: block; margin-top: 2px; overflow-wrap: anywhere; color: #082f4d !important; -webkit-text-fill-color: #082f4d !important; }
.qe-call-fact.warning { background: #fff8eb; border-color: #edc783; }
.container .qe-call-reason { background: #f2f7fb; border-left: 4px solid #397ca5; border-radius: 8px; padding: 11px 13px; color: #173d54 !important; -webkit-text-fill-color: #173d54 !important; }
.container .qe-call-reason strong { color: #082f4d !important; -webkit-text-fill-color: #082f4d !important; }
.qe-call-reason ul { margin: 6px 0 0 18px; padding: 0; }
.container .qe-call-reason li { margin: 3px 0; color: #173d54 !important; -webkit-text-fill-color: #173d54 !important; }
.qe-call-notice { min-height: 0; margin: 11px 0; color: #486675; font-size: 13px; }
.qe-call-notice.error { background: #fff0f0; border: 1px solid #efb3b3; color: #912b2b; border-radius: 8px; padding: 9px 11px; }
.qe-call-button-row { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 12px 0; }
.qe-call-actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin: 0; }
.qe-call-actions button,
.qe-call-form button { border: 0; border-radius: 8px; padding: 10px 14px; font-weight: 850; cursor: pointer; }
.qe-call-actions button:disabled { opacity: .45; cursor: not-allowed; }
.qe-call-primary { background: #075b98; color: #fff; }
.qe-call-actions .button-secondary,
.qe-call-form .button-secondary { background: #e8f0f5; color: #16445f; }
.qe-call-owner { font-weight: 850; color: #176341; margin-right: 4px; }
.qe-call-owner.busy { color: #9a450d; }
.qe-call-form { display: grid; gap: 9px; margin: 14px 0; padding: 13px; border: 1px solid #dce5eb; border-radius: 10px; background: #fff; }
.qe-call-save-form { border-color: #b8cedb; background: #f7fbfd; }
.container .qe-call-form label { display: grid; gap: 5px; font-size: 12px; font-weight: 800; color: #34566a !important; -webkit-text-fill-color: #34566a !important; }
.qe-call-form select,
.qe-call-form textarea { width: 100%; box-sizing: border-box; border: 1px solid #b9cbd6; border-radius: 7px; padding: 9px; font: inherit; color: #172b3a; background: #fff; }
.qe-call-form button { justify-self: start; background: #176b48; color: #fff; }
.container .qe-call-save-button { border: 0; border-radius: 8px; padding: 10px 14px; font-weight: 850; cursor: pointer; }
.qe-call-history { border-top: 1px solid #dce5eb; margin-top: 17px; padding-top: 14px; }
.container .qe-call-history h3 { font-size: 16px; color: #173d54 !important; -webkit-text-fill-color: #173d54 !important; margin: 0 0 9px; }
.qe-call-history-row { display: grid; grid-template-columns: 1fr auto; gap: 3px 12px; padding: 9px 0; border-bottom: 1px solid #e7edf1; }
.container .qe-call-history-row strong { color: #173d54 !important; -webkit-text-fill-color: #173d54 !important; text-transform: capitalize; }
.container .qe-call-history-row time { color: #6b7f8b !important; -webkit-text-fill-color: #6b7f8b !important; font-size: 12px; }
.container .qe-call-history-row p { color: #173d54 !important; -webkit-text-fill-color: #173d54 !important; grid-column: 1 / -1; margin: 3px 0 0; white-space: pre-wrap; overflow-wrap: anywhere; }
@media (max-width: 600px) {
    .qe-call-dialog { width: calc(100vw - 12px); max-height: calc(100vh - 12px); border-radius: 12px; }
    .qe-call-dialog-shell { padding: 16px; max-height: calc(100vh - 12px); }
    .qe-call-facts { grid-template-columns: 1fr; }
    .qe-call-button-row,
    .qe-call-actions { width: 100%; }
    .qe-call-actions button,
    .qe-call-save-button { flex: 1 1 auto; min-height: 44px; }
    .qe-call-history-row { grid-template-columns: 1fr; }
}
.container.fsq-page.dso-page .dso-ack-row {
    display: flex;
    justify-content: flex-end;
    width: 100%;
}
.container.fsq-page.dso-page .dso-operational-actions {
    align-items: flex-end;
    flex-direction: column;
    flex-wrap: nowrap;
}
.container.fsq-page.dso-page .dso-action-buttons {
    align-items: flex-start;
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    justify-content: flex-end;
}
.container.fsq-page.dso-page .dso-manage-po-actions {
    display: inline-flex;
    margin-top: .65rem;
    width: fit-content;
}
.container.fsq-page.dso-page details.dso-resend-control { position: relative; }
.container.fsq-page.dso-page details.dso-resend-control > summary { list-style: none; }
.container.fsq-page.dso-page details.dso-resend-control > summary::-webkit-details-marker { display: none; }
.container.fsq-page.dso-page details.dso-resend-control > form {
    background: #fff;
    border: 1px solid #9bc9a8;
    border-radius: 10px;
    box-shadow: 0 12px 30px rgba(11, 45, 65, .2);
    display: grid;
    gap: 10px;
    padding: 14px;
    position: absolute;
    right: 0;
    top: calc(100% + 8px);
    width: min(360px, calc(100vw - 40px));
    z-index: 20;
}
.container.fsq-page.dso-page details.dso-resend-control textarea { box-sizing: border-box; width: 100%; }
.container.fsq-page.dso-page details.dso-resend-control p { color: #416b4d; margin: 0; }
.container.fsq-page.dso-page .dso-ack-control {
    align-items: center;
    border: 1px solid var(--sms-dark-border-strong);
    border-radius: 10px;
    box-shadow: 0 8px 18px rgba(0, 0, 0, .2);
    display: flex;
    min-height: 42px;
    padding: 0 14px;
    width: auto;
}
.container.fsq-page.dso-page .dso-ack-control-unchecked {
    background: linear-gradient(135deg, var(--brand-accent), var(--brand-primary));
}
.container.fsq-page.dso-page .dso-ack-control-checked {
    background: #1f7a3f;
    border-color: #53c878;
}
.container.fsq-page.dso-page .dso-ack-control label {
    align-items: center;
    cursor: pointer;
    display: flex;
    gap: 9px;
    margin: 0;
}
.container.fsq-page.dso-page .dso-ack-control input {
    accent-color: #53c878;
    margin: 0;
}
.container.fsq-page.dso-page .dso-ack-copy {
    display: grid;
    gap: 1px;
    line-height: 1.12;
    white-space: nowrap;
}
.container.fsq-page.dso-page .dso-ack-copy strong,
.container.fsq-page.dso-page .dso-ack-copy small {
    color: #fff !important;
    -webkit-text-fill-color: #fff !important;
}
.container.fsq-page.dso-page .dso-ack-copy strong { font-size: 14px; }
.container.fsq-page.dso-page .dso-ack-copy small { font-size: 11px; }
.container.fsq-page.dso-page .dso-ack-control-checked .dso-ack-copy small {
    color: #e5f8ea !important;
    -webkit-text-fill-color: #e5f8ea !important;
}
.container.fsq-page.dso-page .dso-ack-control:focus-within {
    outline: 3px solid rgba(126, 200, 255, .48);
    outline-offset: 2px;
}
.container.fsq-page.dso-page .dso-ack-control-locked label,
.container.fsq-page.dso-page .dso-ack-control-disabled label { cursor: default; }
.container.fsq-page.dso-page details.dso-manual-operation {
    background: #f4fbf6;
    border: 1px solid #8bc39a;
    border-radius: 10px;
    margin: 14px 0;
    overflow: hidden;
}
.container.fsq-page.dso-page details.dso-shipment-correction {
    background: #f7fbfd;
    border: 1px solid #7aa8be;
    border-radius: 8px;
    margin-top: 14px;
    overflow: hidden;
}
.container.fsq-page.dso-page details.dso-shipment-correction > summary {
    align-items: center;
    color: #173d54;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    padding: .7rem .85rem;
}
.container.fsq-page.dso-page details.dso-shipment-correction > summary span {
    color: #4e7184;
    font-size: 12px;
}
.container.fsq-page.dso-page details.dso-manual-operation > summary {
    align-items: center;
    color: #174c2a;
    cursor: pointer;
    display: flex;
    justify-content: space-between;
    padding: .75rem .9rem;
}
.container.fsq-page.dso-page details.dso-manual-operation > summary span {
    color: #416b4d;
    font-size: 12px;
}
.container.fsq-page.dso-page .dso-manual-operation-form {
    border-top: 1px solid #b8d9c1;
    display: grid;
    gap: 14px;
    padding: .9rem;
}
.container.fsq-page.dso-page .dso-manual-operation-form .dso-form-wide { grid-column: 1 / -1; }
.container.fsq-page.dso-page .dso-manual-operation-form input,
.container.fsq-page.dso-page .dso-manual-operation-form textarea,
.container.fsq-page.dso-page .dso-manual-operation-form select { box-sizing: border-box; width: 100%; }
.container.fsq-page.dso-page .dso-manual-lines td > span { display: block; font-size: 12px; margin-top: 3px; }
.container.fsq-page.dso-page .dso-manual-operation-note { color: #416b4d; margin: 0; }

/* Compact shared shipment view/editor for sales-order and focused-PO detail. */
.container.fsq-page.dso-page .dso-shipment-panel {
    background: #0f3855;
    border: 1px solid #397694;
    border-radius: 8px;
    margin: 14px 0;
    overflow: hidden;
}
.container.fsq-page.dso-page .dso-shipment-panel-title {
    align-items: center;
    background: #155276;
    color: #fff;
    display: flex;
    gap: .75rem;
    justify-content: space-between;
    padding: .65rem .85rem;
}
.container.fsq-page.dso-page .dso-shipment-panel-title span {
    color: #d7efff;
    font-size: .8rem;
    font-weight: 700;
}
.container.fsq-page.dso-page .dso-shipment-panel .dso-shipment-disclosure {
    gap: .75rem;
    padding: .75rem;
}
.container.fsq-page.dso-page .dso-shipment-panel .dso-shipment-card {
    background: #123f5d;
    border: 1px solid #397694;
    border-radius: 7px;
    color: #f4fbff;
    margin: 0;
    padding: .75rem;
}
.container.fsq-page.dso-page .dso-shipment-panel .dso-shipment-card + .dso-shipment-card {
    border-top: 1px solid #397694;
}
.container.fsq-page.dso-page .dso-shipment-panel .dso-shipment-facts {
    gap: 0;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin: .65rem 0;
}
.container.fsq-page.dso-page .dso-shipment-panel .dso-shipment-facts div {
    background: #19587d;
    border-left: 1px solid #397694;
    border-radius: 0;
    min-width: 0;
    padding: .55rem .65rem;
}
.container.fsq-page.dso-page .dso-shipment-panel .dso-shipment-facts div:first-child {
    border-left: 0;
    border-radius: 5px 0 0 5px;
}
.container.fsq-page.dso-page .dso-shipment-panel .dso-shipment-facts div:last-child { border-radius: 0 5px 5px 0; }
.container.fsq-page.dso-page .dso-shipment-panel .dso-shipment-facts dt,
.container.fsq-page.dso-page .dso-shipment-panel .dso-invoice-totals dt { color: #c7e8fb; }
.container.fsq-page.dso-page .dso-shipment-panel .dso-shipment-facts dd,
.container.fsq-page.dso-page .dso-shipment-panel .dso-invoice-totals dd { color: #fff; }
.container.fsq-page.dso-page details.dso-manual-operation,
.container.fsq-page.dso-page details.dso-shipment-correction {
    background: #0f3855;
    border: 1px solid #397694;
    border-radius: 7px;
    color: #f4fbff;
    margin: .75rem 0 0;
}
.container.fsq-page.dso-page details.dso-manual-operation > summary,
.container.fsq-page.dso-page details.dso-shipment-correction > summary {
    background: #19587d;
    color: #fff;
    font-weight: 800;
    padding: .6rem .75rem;
}
.container.fsq-page.dso-page details.dso-manual-operation > summary span,
.container.fsq-page.dso-page details.dso-shipment-correction > summary span { color: #d7efff; }
.container.fsq-page.dso-page .dso-manual-operation-form {
    border-top: 1px solid #397694;
    gap: .7rem;
    padding: .75rem;
}
.container.fsq-page.dso-page .dso-manual-operation-note { color: #d7efff; }
.container.fsq-page.dso-page .dso-shipment-panel .dso-invoice-totals div { background: #19587d; }
.container.fsq-page.dso-page .dso-editor-actions { display: inline-flex; flex-wrap: wrap; gap: .75rem; margin-top: .25rem; }
.container.fsq-page.dso-page .dso-editor-cancel { background: #244b63; border-color: #79b9d8; color: #fff; }
.container.fsq-page.dso-page .dso-status-context { color: #4e7184; display: block; font-size: .8rem; margin-top: .2rem; }
.container.fsq-page.dso-page .dso-po-entry { align-items: flex-start; display: flex; flex-direction: column; gap: .3rem; }
.container.fsq-page.dso-page .dso-po-line { align-items: baseline; display: flex; gap: .3rem; max-width: 100%; min-width: 0; }
.container.fsq-page.dso-page .dso-po-line .dso-po-link { min-width: 0; }
.container.fsq-page.dso-page .dso-po-line .dso-po-lifecycle { flex: 0 0 auto; white-space: nowrap; }
.container.fsq-page.dso-page details.dso-shipment-field-edit { display: inline-block; margin: 0; position: relative; }
.container.fsq-page.dso-page details.dso-shipment-field-edit > summary {
    color: #fff;
    cursor: pointer;
    font-weight: 800;
    list-style: none;
    text-decoration: underline;
    text-decoration-color: #79c7ef;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
}
.container.fsq-page.dso-page details.dso-shipment-field-edit > summary::-webkit-details-marker { display: none; }
.container.fsq-page.dso-page details.dso-shipment-field-edit[open] > form {
    background: #0f3855;
    border: 1px solid #79b9d8;
    border-radius: 8px;
    box-shadow: 0 12px 28px rgba(0, 0, 0, .38);
    color: #fff;
    display: grid;
    gap: .55rem;
    left: 0;
    min-width: 250px;
    padding: .7rem;
    position: absolute;
    top: calc(100% + .3rem);
    z-index: 40;
}
.container.fsq-page.dso-page details.dso-shipment-field-edit[open] > form label { display: grid; gap: .3rem; }
.container.fsq-page.dso-page details.dso-shipment-field-edit[open] > form small { color: #d7efff; line-height: 1.35; }
.container.fsq-page.dso-page .dso-empty-shipment-value { color: #fff; display: inline-block; font-weight: 800; min-width: 2rem; }
.container.fsq-page.dso-page .dso-shipment-card-empty > header { align-items: center; }
.container.fsq-page.dso-page input.dso-derived-field { background: #d9e8f1; color: #27495d; cursor: not-allowed; }
@media (max-width: 820px) {
    .container.fsq-page.dso-page .dso-shipment-panel .dso-shipment-facts { grid-template-columns: 1fr; }
    .container.fsq-page.dso-page .dso-shipment-panel .dso-shipment-facts div { border-left: 0; border-top: 1px solid #397694; border-radius: 0; }
    .container.fsq-page.dso-page .dso-shipment-panel .dso-shipment-facts div:first-child { border-top: 0; border-radius: 5px 5px 0 0; }
    .container.fsq-page.dso-page .dso-shipment-panel .dso-shipment-facts div:last-child { border-radius: 0 0 5px 5px; }
    .container.fsq-page.dso-page details.dso-shipment-field-edit { display: block; }
    .container.fsq-page.dso-page details.dso-shipment-field-edit[open] > form { min-width: 0; position: static; width: auto; }
}
@media (max-width: 820px) {
    .container.fsq-page.dso-page .dso-action-buttons { width: 100%; }
    .container.fsq-page.dso-page details.dso-resend-control { width: 100%; }
    .container.fsq-page.dso-page details.dso-resend-control > summary { text-align: center; }
    .container.fsq-page.dso-page details.dso-resend-control > form {
        position: static;
        width: auto;
    }
    .container.fsq-page.dso-page .dso-manual-operation-form .dso-form-wide { grid-column: auto; }
}

/* Vendor Library direct editor */
.container.plm-page.plm-vendor-detail-page .plm-vendor-price-grid {
    grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)) !important;
}

.container.plm-page.plm-vendor-detail-page .plm-detail-field-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

.container.plm-page.plm-vendor-detail-page button.plm-vendor-edit-field {
    align-items: initial !important;
    appearance: none !important;
    background: rgba(7, 53, 82, .78) !important;
    border: 1px solid rgba(111, 196, 245, .45) !important;
    border-radius: 12px !important;
    color: inherit !important;
    cursor: pointer !important;
    display: block !important;
    font: inherit !important;
    height: auto !important;
    justify-content: initial !important;
    min-height: 92px !important;
    padding: 14px 14px 30px !important;
    position: relative !important;
    text-align: left !important;
    white-space: normal !important;
    width: 100% !important;
}

.container.plm-page.plm-vendor-detail-page button.plm-vendor-edit-field:hover,
.container.plm-page.plm-vendor-detail-page button.plm-vendor-edit-field:focus-visible {
    background: rgba(10, 79, 119, .9) !important;
    border-color: #74c9ff !important;
    box-shadow: 0 0 0 2px rgba(116, 201, 255, .18) !important;
    outline: none !important;
    transform: none !important;
}

.container.plm-page.plm-vendor-detail-page button.plm-vendor-edit-field::after {
    bottom: 9px !important;
    color: #8ed4ff !important;
    content: "click to edit" !important;
    font-size: 11px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    position: absolute !important;
    right: 11px !important;
    top: auto !important;
}

.container.plm-page.plm-vendor-detail-page button.plm-vendor-edit-field span {
    color: #9ed7fb !important;
    display: block !important;
    font-size: 12px !important;
    font-weight: 800 !important;
    letter-spacing: .02em !important;
    line-height: 1.2 !important;
    padding: 0 !important;
    position: static !important;
    text-align: left !important;
}

.container.plm-page.plm-vendor-detail-page button.plm-vendor-edit-field strong {
    color: #fff !important;
    display: block !important;
    font-size: 15px !important;
    font-weight: 800 !important;
    line-height: 1.38 !important;
    margin: 10px 0 0 !important;
    max-width: 100% !important;
    overflow-wrap: anywhere !important;
    padding: 0 !important;
    position: static !important;
    text-align: left !important;
    white-space: pre-wrap !important;
    word-break: normal !important;
}

.container.plm-page.plm-vendor-detail-page .plm-vendor-edit-wide {
    grid-column: 1 / -1 !important;
}

.container.plm-page.plm-vendor-detail-page .plm-vendor-price-grid button.plm-vendor-edit-field {
    min-height: 100px !important;
}

.container.plm-page.plm-vendor-detail-page .plm-section > button.plm-vendor-edit-field {
    margin-top: 12px !important;
}

.plm-vendor-edit-dialog {
    background: #123d5a;
    border: 1px solid #64bdec;
    border-radius: 16px;
    color: #fff;
    max-width: min(720px, calc(100vw - 32px));
    padding: 0;
    width: 100%;
}

.plm-vendor-edit-dialog::backdrop {
    background: rgba(0, 18, 32, .72);
}

.plm-vendor-edit-dialog form {
    padding: 22px;
}

.plm-vendor-edit-dialog h2 {
    margin: 0 0 8px;
}

.plm-vendor-edit-dialog p {
    color: #b9e2fb;
    margin: 0 0 15px;
}

.plm-vendor-edit-dialog textarea {
    background: #fff;
    border: 2px solid transparent;
    border-radius: 10px;
    box-sizing: border-box;
    color: #112;
    font: inherit;
    min-height: 76px;
    padding: 10px 12px;
    resize: vertical;
    width: 100%;
}

.plm-vendor-edit-dialog textarea:focus {
    border-color: #67c5f5;
    outline: none;
}

.plm-vendor-edit-dialog .plm-actions-row {
    justify-content: flex-end;
    margin: 16px 0 0;
}

@media (max-width: 900px) {
    .container.plm-page.plm-vendor-detail-page .plm-detail-field-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 620px) {
    .container.plm-page.plm-vendor-detail-page .plm-detail-field-grid {
        grid-template-columns: 1fr !important;
    }

    .container.plm-page.plm-vendor-detail-page .plm-vendor-edit-wide {
        grid-column: auto !important;
    }
}

/* =========================================================
   COMMAND CENTER GLOBAL FORM CONTRACT
   Stage 1: one desktop height and one visual treatment for ordinary fields.
   This block intentionally comes after legacy page rules while they are being
   consolidated. It does not set widths or alter page/grid layout.
   ========================================================= */
html body .container input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]):not([type="file"]):not([type="range"]):not([type="color"]):not([type="submit"]):not([type="button"]),
html body .container select {
    box-sizing: border-box !important;
    height: var(--cc-field-height) !important;
    min-height: var(--cc-field-height) !important;
    padding-block: 0 !important;
    padding-inline: var(--cc-field-padding-inline) !important;
    border-color: var(--cc-color-field-border) !important;
    border-radius: var(--cc-field-radius) !important;
    background: var(--cc-field-background) !important;
    color: var(--cc-color-field-text) !important;
    -webkit-text-fill-color: var(--cc-color-field-text) !important;
    font-family: var(--cc-font-family) !important;
    font-size: var(--cc-field-font-size) !important;
    line-height: 1.2 !important;
}

html body .container textarea,
html body .container [contenteditable="true"] {
    border-color: var(--cc-color-field-border) !important;
    border-radius: var(--cc-field-radius) !important;
    background: var(--cc-field-background) !important;
    color: var(--cc-color-field-text) !important;
    -webkit-text-fill-color: var(--cc-color-field-text) !important;
    font-family: var(--cc-font-family) !important;
    font-size: var(--cc-field-font-size) !important;
}

html body .container input:disabled,
html body .container select:disabled,
html body .container textarea:disabled,
html body .container input[readonly],
html body .container textarea[readonly] {
    background: var(--cc-field-readonly-background) !important;
    color: #475569 !important;
    -webkit-text-fill-color: #475569 !important;
}
.dso-qb-lock {
  border-left-color: #62d6a5;
}

.dso-qb-status-grid article {
  min-width: 0;
}

.dso-qb-setup {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(16rem, 1fr);
  gap: 1.25rem;
  align-items: start;
}

.dso-qb-setup ol {
  margin: .65rem 0 0;
  padding-left: 1.25rem;
}

@media (max-width: 800px) {
  .dso-qb-setup {
    grid-template-columns: 1fr;
  }
}

.container.global-industrial-page .gi-image-workflow-form {
  align-items: end;
}

.container.global-industrial-page .gi-image-workflow-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.container.global-industrial-page .gi-image-workflow-table td {
  vertical-align: top;
}

@media (max-width: 900px) {
  .container.global-industrial-page .gi-image-workflow-actions,
  .container.global-industrial-page .gi-image-workflow-actions .gi-button {
    width: 100%;
  }
}
