/* ============================================================
   SATELLITE V4 — Homestead treatment for laggard utility pages
   Loaded last and scoped by body class so no rule leaks elsewhere.
   ============================================================ */

:is(.satv4-register, .satv4-legal, .satv4-processor, .satv4-stripe, .satv4-b2b, .satv4-processing, .satv4-preorder) {
    color: var(--text-primary);
    background-color: var(--surface-primary) !important;
    background-image: none !important;
    font-family: var(--font-body);
}

:is(.satv4-register, .satv4-legal, .satv4-processor, .satv4-stripe, .satv4-b2b, .satv4-processing, .satv4-preorder) :is(h1, h2, h3),
:is(.satv4-b2b, .satv4-processing) :is(.b2b-price-chip, [id*="total"], [id*="subtotal"]) {
    font-family: var(--font-display);
    letter-spacing: 0;
}

:is(.satv4-register, .satv4-legal, .satv4-processor, .satv4-stripe, .satv4-b2b, .satv4-processing, .satv4-preorder) a:hover {
    text-decoration-color: var(--honey-500);
    text-underline-offset: 3px;
}

:is(.satv4-register, .satv4-processor, .satv4-preorder) :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea),
.satv4-b2b .b2b-input {
    background: var(--text-inverse) !important;
    color: var(--text-primary) !important;
    border-color: var(--border-warm) !important;
    border-radius: var(--radius-md) !important;
    box-shadow: none !important;
    font-family: var(--font-body);
}

:is(.satv4-register, .satv4-processor, .satv4-preorder) :is(input:not([type="checkbox"]):not([type="radio"]), select, textarea):focus,
.satv4-b2b .b2b-input:focus {
    outline: none;
    border-color: var(--green-600) !important;
    box-shadow: var(--shadow-glow-green) !important;
}

:is(.satv4-register, .satv4-processor, .satv4-stripe, .satv4-b2b, .satv4-processing, .satv4-preorder) :is(.btn, button, .b2b-btn-primary, .b2b-btn-secondary) {
    font-family: var(--font-body);
}

:is(.satv4-register, .satv4-processor, .satv4-stripe) :is(.btn-primary, button[type="submit"], #go-to-dashboard-btn),
.satv4-stripe main button,
.satv4-b2b .b2b-btn-primary {
    background: var(--green-700) !important;
    color: var(--text-inverse) !important;
    border: 0 !important;
    border-radius: var(--radius-sm) !important;
    box-shadow: inset 0 -1px 0 var(--green-800), 0 1px 2px rgba(45, 42, 38, 0.22) !important;
    transition: background-color 150ms var(--ease-out), box-shadow 150ms var(--ease-out), transform 100ms var(--ease-out) !important;
}

:is(.satv4-register, .satv4-processor, .satv4-stripe) :is(.btn-primary, button[type="submit"], #go-to-dashboard-btn):hover,
.satv4-stripe main button:hover,
.satv4-b2b .b2b-btn-primary:hover {
    background: var(--green-600) !important;
    transform: none !important;
}

:is(.satv4-register, .satv4-processor, .satv4-stripe) :is(.btn-primary, button[type="submit"], #go-to-dashboard-btn):active,
.satv4-stripe main button:active,
.satv4-b2b .b2b-btn-primary:active {
    transform: translateY(1px) !important;
    box-shadow: inset 0 -1px 0 var(--green-800) !important;
}

/* Registration applications */
.satv4-register {
    align-items: flex-start !important;
    padding: 34px 16px 56px !important;
}

.satv4-register > .glass-card,
.satv4-register > div > .glass-card {
    width: 100%;
    max-width: 46rem !important;
    padding: 34px 38px !important;
    background: var(--surface-card) !important;
    border: 1px solid var(--border-warm) !important;
    border-radius: var(--radius-md) !important;
    box-shadow: var(--shadow-sm) !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    overflow: visible;
}

.satv4-register > .glass-card:hover,
.satv4-register > div > .glass-card:hover {
    transform: none !important;
    border-color: var(--border-warm) !important;
    box-shadow: var(--shadow-sm) !important;
}

.satv4-register .text-center:first-child {
    text-align: left !important;
    padding-bottom: 22px;
    border-bottom: 1px solid rgba(139, 125, 107, 0.3);
}

.satv4-register .text-center:first-child > .flex.justify-center {
    justify-content: flex-start !important;
    min-height: 92px !important;
    margin-bottom: 22px !important;
}

.satv4-register .logo-login {
    height: 92px !important;
    width: auto !important;
}

.satv4-register .text-center:first-child :is(h1, h2) {
    color: var(--text-primary) !important;
    font-size: clamp(1.9rem, 4vw, 2.35rem) !important;
    font-weight: 600 !important;
    line-height: 1.12;
}

.satv4-register .text-center:first-child p {
    color: var(--text-secondary) !important;
    line-height: 1.55;
}

.satv4-register label.block {
    color: var(--text-secondary) !important;
    font-size: 0.75rem !important;
    font-weight: 700 !important;
    letter-spacing: 0.055em;
    text-transform: uppercase;
}

.satv4-register .form-section-divider {
    display: block;
    margin: 2rem 0 1rem;
    padding-bottom: 8px;
    border-bottom: 2px solid var(--honey-500);
}

.satv4-register .form-section-divider::before,
.satv4-register .form-section-divider::after {
    display: none;
}

.satv4-register .form-section-divider span {
    color: var(--green-700);
    font-family: var(--font-display);
    font-size: 0.74rem;
    font-weight: 700;
    letter-spacing: 0.11em;
}

.satv4-register .product-grid {
    gap: 0;
    border-top: 1px solid var(--border-warm);
    border-left: 1px solid var(--border-warm);
}

.satv4-register .product-chip {
    min-height: 40px;
    margin: -1px 0 0 -1px;
    padding: 8px 10px;
    background: var(--text-inverse);
    border-color: var(--border-warm);
    border-radius: 0;
    color: var(--text-secondary);
}

.satv4-register .product-chip:hover,
.satv4-register .product-chip.selected {
    transform: none;
    background: var(--green-100);
    border-color: var(--green-600);
    color: var(--green-800);
}

.satv4-register .approval-notice {
    background: var(--surface-linen) !important;
    border: 1px solid var(--border-warm) !important;
    border-left: 4px solid var(--green-700) !important;
    border-radius: var(--radius-sm) !important;
}

.satv4-register .approval-notice :is(i, .text-blue-800, .text-blue-700, .text-blue-600) {
    color: var(--green-700) !important;
}

.satv4-register input[type="file"] {
    padding: 8px !important;
    border: 1px dashed var(--border-warm) !important;
    background: var(--surface-linen) !important;
}

.satv4-register input[type="file"]::file-selector-button {
    margin-right: 10px;
    padding: 7px 10px;
    background: var(--surface-card);
    color: var(--green-700);
    border: 1px solid var(--border-warm);
    border-radius: var(--radius-sm);
    font-weight: 700;
}

.satv4-register .success-screen {
    text-align: left;
}

.satv4-register .success-icon {
    margin-left: 0;
    width: 52px;
    height: 52px;
    background: var(--surface-linen);
    border: 2px solid var(--green-700);
}

.satv4-register .dashboard-tabs-list {
    border-top: 1px solid var(--border-warm);
}

.satv4-register .dashboard-tab-item {
    padding: 12px 0;
    border-bottom-color: rgba(139, 125, 107, 0.28);
}

.satv4-register .dashboard-tab-item .tab-icon {
    background: var(--surface-linen) !important;
    color: var(--green-700) !important;
    border: 1px solid var(--border-faint);
    border-radius: var(--radius-sm);
}

.satv4-register .dashboard-tab-item .tab-info h4 { color: var(--text-primary); }
.satv4-register .dashboard-tab-item .tab-info p { color: var(--text-secondary); }
.satv4-register #error-msg:not(.hidden) {
    background: var(--terra-100);
    border-left: 4px solid var(--terra-500);
    border-radius: 0;
}

/* Legal editorial pages */
.satv4-legal :is(.terms-header, .privacy-header, .policy-header, .sms-header) {
    background: var(--green-800) !important;
    box-shadow: none !important;
    border-bottom: 3px solid var(--green-700);
}

.satv4-legal :is(.terms-header, .privacy-header, .policy-header, .sms-header) > div {
    max-width: 880px !important;
}

.satv4-legal :is(.terms-header, .privacy-header, .policy-header, .sms-header) h1 {
    max-width: 760px;
    font-size: clamp(2rem, 5vw, 3rem) !important;
    font-weight: 600 !important;
    line-height: 1.08;
}

.satv4-legal .sms-header {
    height: auto !important;
}

.satv4-legal > main {
    max-width: 880px !important;
    padding-top: 44px !important;
}

.satv4-legal :is(.section-card, .policy-card) {
    position: relative;
    padding: 30px 0 34px !important;
    background: transparent !important;
    border: 0 !important;
    border-top: 1px solid var(--border-warm) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    transition: none !important;
}

.satv4-legal :is(.section-card, .policy-card):hover {
    transform: none !important;
    box-shadow: none !important;
}

.satv4-legal > main > :is(.section-card, .policy-card):first-child {
    padding: 24px !important;
    background: var(--surface-card) !important;
    border: 1px solid var(--border-warm) !important;
    border-left: 4px solid var(--green-700) !important;
    border-radius: var(--radius-sm) !important;
}

.satv4-legal > main > section:first-child .grid.md\:grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    column-gap: 28px;
}

.satv4-legal :is(.section-card, .policy-card) > .flex > div:first-child:not(.flex-1),
.satv4-legal .policy-card > .flex.items-center > div:first-child {
    width: 4px !important;
    min-width: 4px;
    align-self: stretch;
    margin: 0 18px 0 0 !important;
    padding: 0 !important;
    background: var(--honey-500) !important;
    border-radius: 0 !important;
    overflow: hidden;
}

.satv4-legal :is(.section-card, .policy-card) > .flex > div:first-child:not(.flex-1) > *,
.satv4-legal .policy-card > .flex.items-center > div:first-child > * {
    display: none !important;
}

.satv4-legal :is(.section-card, .policy-card) h2 {
    color: var(--text-primary) !important;
    font-weight: 600 !important;
    line-height: 1.2;
}

.satv4-legal :is(.section-card, .policy-card) :is(h3, h4, strong) { color: var(--text-primary) !important; }
.satv4-legal :is(.text-gray-800, .text-gray-900) { color: var(--text-primary) !important; }
.satv4-legal :is(.text-gray-500, .text-gray-600, .text-gray-700) { color: var(--text-secondary) !important; }

.satv4-legal :is(.bg-gray-50, .bg-green-50, .bg-yellow-50, .bg-red-50) {
    background: var(--surface-linen) !important;
    border-color: var(--border-warm) !important;
    border-radius: var(--radius-sm) !important;
}

.satv4-legal .grid > :is(.bg-gray-50, .bg-white) {
    padding: 16px !important;
    background: transparent !important;
    border: 0 !important;
    border-left: 1px solid var(--border-warm) !important;
    border-radius: 0 !important;
}

.satv4-legal :is(.bg-purple-100, .bg-orange-100, .bg-teal-100, .bg-yellow-100, .bg-red-100, .bg-green-100, .bg-gray-100) {
    background: var(--surface-linen) !important;
}

.satv4-legal :is(.text-purple-600, .text-teal-600, .text-blue-600) { color: var(--green-700) !important; }
.satv4-legal :is(.text-orange-600, .text-red-600) { color: var(--terra-500) !important; }
.satv4-legal .toc-link { color: var(--green-700) !important; }
.satv4-legal .toc-link:hover { padding-left: 0 !important; text-decoration: underline; }

.satv4-legal .data-table {
    min-width: 680px;
    background: var(--surface-card);
    border: 1px solid var(--border-warm);
}

.satv4-legal .data-table th {
    background: var(--surface-linen);
    color: var(--text-primary);
    font-family: var(--font-display);
}

.satv4-legal .data-table td { border-top-color: var(--border-warm); }

.satv4-legal section:last-child .text-center { text-align: left !important; }
.satv4-legal section:last-child .grid.md\:grid-cols-3 {
    display: block;
    border-top: 1px solid var(--border-warm);
}

.satv4-legal section:last-child .grid.md\:grid-cols-3 > div {
    display: grid;
    grid-template-columns: 28px minmax(90px, 0.35fr) 1fr;
    align-items: center;
    gap: 12px;
    padding: 13px 0 !important;
    border: 0 !important;
    border-bottom: 1px solid var(--border-warm) !important;
    background: transparent !important;
    border-radius: 0 !important;
}

.satv4-legal section:last-child .grid.md\:grid-cols-3 svg { margin: 0 !important; width: 18px; height: 18px; }
.satv4-legal footer { background: var(--surface-card) !important; border-color: var(--border-warm) !important; }

/* Processor setup application sheet */
.satv4-processor > header,
.satv4-preorder > header {
    background: var(--surface-card) !important;
    border-bottom: 3px solid var(--green-700) !important;
    box-shadow: none !important;
}

.satv4-processor > header h1,
.satv4-preorder > header h1 {
    font-family: var(--font-display);
    font-weight: 600 !important;
}

.satv4-processor > main {
    max-width: 50rem !important;
    margin-top: 28px;
    padding: 32px !important;
    background: var(--surface-card);
    border: 1px solid var(--border-warm);
    border-top: 4px solid var(--green-700);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-sm);
}

.satv4-processor :is(#loading-state, #error-state, #success-state) {
    background: var(--surface-card);
    border-top: 4px solid var(--green-700);
    padding: 48px 24px !important;
}

.satv4-processor #setup-content > div:first-child {
    background: var(--surface-linen) !important;
    border: 1px solid var(--border-warm) !important;
    border-left: 4px solid var(--green-700) !important;
    border-radius: var(--radius-sm) !important;
}

.satv4-processor #upload-strip {
    background: var(--surface-linen) !important;
    border-color: var(--border-warm) !important;
    border-radius: var(--radius-md) !important;
}

.satv4-processor #upload-strip:hover,
.satv4-processor #upload-strip.drag-over { background: var(--green-100) !important; transform: none; }
.satv4-processor #upload-strip.processing { background: var(--honey-100) !important; border-color: var(--honey-500) !important; }
.satv4-processor .species-card,
.satv4-processor .review-section,
.satv4-processor .review-modal,
.satv4-processor .extraction-checklist {
    background: var(--surface-card) !important;
    border-color: var(--border-warm) !important;
    border-radius: var(--radius-md) !important;
    box-shadow: var(--shadow-sm) !important;
}

.satv4-processor .species-card:hover { transform: none; box-shadow: none; }
.satv4-processor .species-card-header,
.satv4-processor .review-section-header { border-radius: var(--radius-sm) !important; }
.satv4-processor .review-section-header { background: var(--surface-linen) !important; }
.satv4-processor .diff-tag { border-radius: var(--radius-sm); background: var(--surface-linen); color: var(--text-secondary); }
.satv4-processor .ai-populated { border-left-color: var(--honey-500) !important; background: var(--honey-100) !important; }
.satv4-processor .ai-badge { background: var(--green-700); }
.satv4-processor #success-state > div { border-color: var(--border-warm) !important; border-radius: var(--radius-md) !important; }
.satv4-processor > footer { border-top-color: var(--border-warm) !important; }

/* Stripe completion docket */
.satv4-stripe > header {
    background: var(--surface-card) !important;
    border-bottom-color: var(--border-warm) !important;
    box-shadow: none !important;
}

.satv4-stripe main { max-width: 48rem !important; }
.satv4-stripe main > .glass-card {
    position: relative;
    padding: 38px !important;
    text-align: left !important;
    background: var(--surface-card) !important;
    border: 1px solid var(--border-warm) !important;
    border-top: 4px solid var(--green-700) !important;
    border-radius: var(--radius-md) !important;
    box-shadow: var(--shadow-sm) !important;
    backdrop-filter: none !important;
}

.satv4-stripe main > .glass-card:hover { transform: none !important; box-shadow: var(--shadow-sm) !important; }
.satv4-stripe main > .glass-card > .rounded-full {
    margin-left: 0 !important;
    width: 54px !important;
    height: 54px !important;
    background: transparent !important;
    border: 3px double var(--green-700);
}

.satv4-stripe main h1 { font-weight: 600 !important; color: var(--text-primary) !important; }
.satv4-stripe main > .glass-card > p { color: var(--text-secondary) !important; max-width: 58ch; }
.satv4-stripe #status-check,
.satv4-stripe #status-check[class] {
    background: var(--surface-linen) !important;
    border: 1px solid var(--border-warm) !important;
    border-left: 4px solid var(--green-700) !important;
    border-radius: var(--radius-sm) !important;
    text-align: left;
}

.satv4-stripe #status-check * { border-radius: var(--radius-sm) !important; }
.satv4-stripe #status-check .bg-white { background: var(--surface-card) !important; border: 1px solid var(--border-warm); }
.satv4-stripe main > .glass-card > .text-left.bg-gray-50 {
    padding: 20px 0 !important;
    background: transparent !important;
    border: 0 !important;
    border-top: 1px solid var(--border-warm) !important;
    border-bottom: 1px solid var(--border-warm) !important;
    border-radius: 0 !important;
}

.satv4-stripe main ul li {
    padding: 10px 0;
    border-bottom: 1px solid rgba(139, 125, 107, 0.24);
}
.satv4-stripe main ul li:last-child { border-bottom: 0; }
.satv4-stripe main > .glass-card > .flex:last-child { justify-content: flex-start !important; }

/* B2B receipt and ledger surfaces */
.satv4-b2b.b2b-page-narrow { background: var(--surface-primary) !important; }
.satv4-b2b .b2b-header { border-bottom: 1px solid var(--border-warm); box-shadow: none; }
.satv4-b2b .b2b-header-accent { height: 3px; background: var(--honey-500); }

.satv4-b2b :is(.b2b-card, .b2b-item-card, .b2b-method-card, .b2b-card-inset) {
    background: var(--surface-card);
    border-color: var(--border-warm);
    border-radius: var(--radius-md);
    box-shadow: none;
}

.satv4-b2b :is(.b2b-item-card, .b2b-method-card):hover {
    transform: none;
    box-shadow: none;
    border-color: var(--green-600);
}

.satv4-b2b .b2b-method-card.selected { background: var(--green-100); border-color: var(--green-700); }
.satv4-b2b .b2b-card-inset { background: var(--surface-linen); }
.satv4-b2b .b2b-category-header {
    padding: 0 0 7px;
    border-left: 0;
    border-bottom: 2px solid var(--honey-500);
    color: var(--green-800);
    font-family: var(--font-display);
    font-size: 0.76rem;
    letter-spacing: 0.1em;
}

.satv4-b2b .b2b-price-chip {
    padding: 0;
    background: transparent;
    color: var(--green-800);
    border-radius: 0;
    font-size: 1rem;
}

.satv4-b2b .b2b-item-thumb,
.satv4-b2b .b2b-item-thumb-placeholder { border-radius: var(--radius-sm); border-color: var(--border-warm); }
.satv4-b2b .b2b-item-thumb-placeholder { background: var(--surface-linen); }
.satv4-b2b :is(.b2b-btn-primary, .b2b-btn-secondary, .b2b-btn-ghost) { border-radius: var(--radius-sm); }
.satv4-b2b .b2b-btn-secondary { background: var(--surface-card); border-color: var(--border-warm); box-shadow: none; }
.satv4-b2b .b2b-btn-secondary:hover { background: var(--surface-linen); }
.satv4-b2b .b2b-hint { background: var(--surface-linen); border-color: var(--border-warm); border-radius: var(--radius-sm); }
.satv4-b2b .b2b-drawer-panel { box-shadow: -8px 0 24px rgba(45, 42, 38, 0.12); }
.satv4-b2b #request-modal > div[role="dialog"],
.satv4-b2b #success-modal > div.relative { border: 1px solid var(--border-warm); border-radius: var(--radius-md) !important; }
.satv4-b2b #request-modal > div[role="dialog"] > div:first-child { background: var(--surface-linen) !important; }
.satv4-b2b.b2b-page-narrow .b2b-card { border-top: 4px solid var(--green-700); }
.satv4-b2b.b2b-page-narrow .b2b-card.text-center { text-align: left !important; }
.satv4-b2b.b2b-page-narrow .b2b-card.text-center > .rounded-full { margin-left: 0 !important; }
.satv4-b2b #receipt-card :is(#receipt-total, #receipt-subtotal, #receipt-fee),
.satv4-b2b :is(#card-total-display, #ach-total-display, #subtotal-display) { font-variant-numeric: tabular-nums; }
.satv4-b2b #receipt-card [class*="font-bold"],
.satv4-b2b .b2b-card [id*="total"] { font-family: var(--font-display); }
.satv4-b2b .b2b-success-icon { animation: none; }

/* Processing-day report */
.satv4-processing .no-print {
    background: var(--surface-card) !important;
    border-bottom: 3px solid var(--green-700) !important;
    box-shadow: none !important;
}

.satv4-processing .no-print span { font-family: var(--font-display); }
.satv4-processing #toggle-view-btn { background: var(--surface-card) !important; color: var(--green-700) !important; border: 1px solid var(--border-warm); }
.satv4-processing :is(#loading-state, #error-state) {
    margin-top: 32px;
    padding: 48px 24px !important;
    background: var(--surface-card);
    border: 1px solid var(--border-warm);
    border-top: 4px solid var(--green-700);
}

.satv4-processing .print-container {
    margin-top: 28px;
    padding: 30px !important;
    background: var(--surface-card);
    border: 1px solid var(--border-warm);
    box-shadow: var(--shadow-sm);
}

.satv4-processing .print-container > div:first-child { border-bottom-color: var(--border-warm) !important; }
.satv4-processing .print-container h1 { font-size: 1.8rem !important; font-weight: 600 !important; }
.satv4-processing :is(.section-table, table) { border-color: var(--border-warm) !important; }
.satv4-processing :is(th, thead) { background: var(--surface-linen) !important; }

/* Pre-order shell and existing panels; breadcrumb geometry remains untouched. */
.satv4-preorder #wizard-loading,
.satv4-preorder #wizard-error {
    margin-top: 28px;
    padding: 48px 24px !important;
    background: var(--surface-card);
    border: 1px solid var(--border-warm);
    border-top: 4px solid var(--green-700);
}

.satv4-preorder #wizard-main {
    padding: 28px;
    background: var(--surface-card);
    border: 1px solid var(--border-warm);
    border-radius: var(--radius-md);
    box-shadow: var(--shadow-sm);
}

.satv4-preorder .wizard-steps::before { background: var(--border-warm); }
.satv4-preorder .wizard-step-circle { background: var(--surface-linen); color: var(--text-secondary); border: 1px solid var(--border-warm); }
.satv4-preorder .wizard-step.active .wizard-step-circle,
.satv4-preorder .wizard-step.completed .wizard-step-circle { background: var(--green-700); border-color: var(--green-700); color: var(--text-inverse); }
.satv4-preorder .wizard-step-label { color: var(--text-secondary); }

.satv4-preorder :is(.portion-card, .profile-card, .profile-card-v2, .section-card, .cut-section, .toggle-card, .profile-options-panel, .yield-bar-full, .summary-card, .fee-breakdown, .step5-fee-section) {
    background: var(--surface-card);
    border-color: var(--border-warm);
    border-radius: var(--radius-md);
    box-shadow: none;
}

.satv4-preorder :is(.portion-card, .profile-card, .profile-card-v2):hover { transform: none; box-shadow: none; }
.satv4-preorder :is(.portion-card, .profile-card, .profile-card-v2).selected { background: var(--green-100); border-color: var(--green-700); }
.satv4-preorder :is(.section-card-header, .cut-section-header, .toggle-card-options, .sticky-bottom-bar) { background: var(--surface-linen); border-color: var(--border-warm); }
.satv4-preorder :is(.fee-breakdown, .step5-fee-section) { background: var(--honey-100); border-color: var(--honey-500); }
.satv4-preorder .summary-card { background: var(--surface-linen); }
.satv4-preorder .sticky-bottom-bar { border-top-color: var(--border-warm); }

@media (max-width: 640px) {
    .satv4-register { padding: 12px 10px 36px !important; }
    .satv4-register > .glass-card,
    .satv4-register > div > .glass-card { padding: 24px 18px !important; }
    .satv4-register .text-center:first-child > .flex.justify-center { min-height: 78px !important; }
    .satv4-register .logo-login { height: 78px !important; }
    .satv4-register .product-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }

    .satv4-legal > main { padding: 28px 18px !important; }
    .satv4-legal :is(.terms-header, .privacy-header, .policy-header, .sms-header) > div { padding-left: 18px !important; padding-right: 18px !important; }
    .satv4-legal > main > section:first-child .grid.md\:grid-cols-2 { grid-template-columns: 1fr; }
    .satv4-legal :is(.section-card, .policy-card) { padding: 24px 0 28px !important; }
    .satv4-legal > main > :is(.section-card, .policy-card):first-child { padding: 20px !important; }
    .satv4-legal :is(.section-card, .policy-card) > .flex { gap: 0 !important; }
    .satv4-legal .grid > :is(.bg-gray-50, .bg-white) { border-left: 0 !important; border-top: 1px solid var(--border-warm) !important; }
    .satv4-legal section:last-child .grid.md\:grid-cols-3 > div { grid-template-columns: 24px 1fr; }
    .satv4-legal section:last-child .grid.md\:grid-cols-3 > div > :last-child { grid-column: 2; }

    .satv4-processor > main { margin: 14px 10px 0; padding: 22px 16px !important; }
    .satv4-stripe main { padding: 28px 14px !important; }
    .satv4-stripe main > .glass-card { padding: 26px 20px !important; }
    .satv4-stripe main > .glass-card > .flex:last-child { align-items: stretch; }

    .satv4-processing .no-print > div { gap: 10px; flex-wrap: wrap; }
    .satv4-processing .print-container { margin: 14px 10px 0; padding: 20px 16px !important; }
    .satv4-preorder #wizard-content { padding-left: 10px; padding-right: 10px; }
    .satv4-preorder #wizard-main { padding: 20px 14px; }
}

@media print {
    .satv4-processing::before { display: none !important; }
    .satv4-processing .print-container {
        margin: 0;
        padding: 16px !important;
        background: white;
        border: 0;
        box-shadow: none;
    }
}

@media (prefers-reduced-motion: reduce) {
    :is(.satv4-register, .satv4-processor, .satv4-stripe, .satv4-b2b, .satv4-processing, .satv4-preorder) * {
        scroll-behavior: auto !important;
    }
}
