.account-page .payment-checkout { max-width: 760px; margin-inline: auto; }
.account-page:has(.payment-checkout) .auth-wrap { max-width: 880px; }
.checkout-products, .checkout-methods, #checkout-company { min-width: 0; padding: 0; margin: 24px 0; border: 0; }
.checkout-products legend, .checkout-methods legend, #checkout-company legend { font-weight: 650; }
.payment-checkout .checkout-single-product .checkout-product { padding: 0; border: 0; background: transparent; }
.checkout-single-product .checkout-product input { display: none; }
.checkout-product strong { font-size: 20px; line-height: 1.45; }
.checkout-total { padding: 18px 0; border-block: 1px solid var(--line); }
.checkout-total span, .checkout-total output { display: block; }
.checkout-total output { color: var(--accent); font-size: 30px; font-weight: 650; }
.checkout-methods { display: grid; gap: 12px; }
.auth-card .checkout-method { display: flex; align-items: center; gap: 12px; margin: 0; padding: 14px 16px; border: 1px solid var(--line); border-radius: 6px; cursor: pointer; }
.checkout-method:has(input:checked) { border-color: var(--accent); background: #edf4f1; }
.checkout-method:has(input:disabled) { color: var(--muted); cursor: default; }
.checkout-method input { flex: 0 0 18px; width: 18px; height: 18px; margin: 0; accent-color: var(--accent); }
.checkout-method span { min-width: 0; }
.checkout-method small { display: block; font-weight: 400; color: var(--muted); }
#checkout-company { display: none; padding-top: 20px; border-top: 1px solid var(--line); }
.payment-checkout:has(input[name="method"][value="bank"]:checked) #checkout-company { display: block; }
.payment-checkout > button { width: 100%; }
.payment-orders-table { min-width: 1420px; }
.payment-orders-table th, .payment-orders-table td:nth-child(4) { white-space: nowrap; }
.checkout-products { min-width: 0; padding: 0; margin: 20px 0; border: 0; }
.checkout-products legend { font-size: 14px; font-weight: 650; }
.auth-card .checkout-product { display: flex; gap: 12px; padding: 14px; margin-block: 12px; border: 1px solid #a5b8b3; border-radius: 6px; background: var(--paper); font-weight: 400; }
.checkout-product input { flex: 0 0 18px; width: 18px; height: 18px; margin: 4px 0 0; accent-color: var(--accent); }
.checkout-product span { min-width: 0; }
.checkout-product strong, .checkout-product small, .checkout-product b { display: block; }
.checkout-product small { color: var(--muted); margin-block: 6px; }
.checkout-product b { color: var(--accent); font-size: 22px; }
.payment-checkout select { display: block; width: 100%; max-width: 100%; min-width: 0; height: 54px; border: 1px solid #a5b8b3; border-radius: 6px; padding: 11px 12px; color: var(--ink); background: var(--paper); font: inherit; }
.admin-filters { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr) minmax(0, 1fr) auto; gap: 16px; align-items: end; }
.admin-filters label, .admin-filters button { margin-top: 0; }
.payment-actions { display: flex; flex-wrap: wrap; gap: 12px 24px; align-items: center; margin-block: 24px; }
.payment-actions button { margin: 0; }
.payment-details { display: grid; grid-template-columns: minmax(140px, 200px) minmax(0, 1fr); gap: 12px 24px; margin-block: 24px; }
.payment-details dt { color: var(--muted); }
.payment-details dd { margin: 0; overflow-wrap: anywhere; }
.payment-settings .admin-panel { align-self: start; }
.payment-settings .check-label { display: flex; align-items: center; gap: 12px; }
.payment-settings .check-label input { width: auto; }
.invoice-paper { max-width: 190mm; margin: 24px auto; color: #111; background: #fff; line-height: 1.5; font-size: 14px; overflow-wrap: anywhere; }
.invoice-bank { display: grid; grid-template-columns: 1fr 1fr; border: 1px solid #333; }
.invoice-bank p { padding: 10px; margin: 0; border: 1px solid #999; }
.invoice-paper h2 { font-size: 21px; border-bottom: 2px solid #111; padding-bottom: 12px; }
.invoice-scroll { overflow: auto; }
.invoice-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.invoice-table td, .invoice-table th { padding: 8px; border: 1px solid #333; text-align: left; }
.invoice-total { text-align: right; }
.invoice-signature { margin-top: 48px; }
@media (max-width: 560px) {
    .admin-filters { grid-template-columns: minmax(0, 1fr); }
    .payment-details { grid-template-columns: minmax(0, 1fr); gap: 5px; }
    .payment-details dd { margin-bottom: 12px; }
    .invoice-bank { grid-template-columns: minmax(0, 1fr); }
}
@page { size: A4 portrait; margin: 12mm; }
@media print {
    body, .auth-page { background: #fff; color: #000; }
    .topbar, .auth-links, .invoice-controls, .auth-card > h1 { display: none !important; }
    .account-page .wrap, .auth-wrap { width: auto; max-width: none; margin: 0; padding: 0; }
    .account-page .auth-card, .auth-card { border: 0; padding: 0; box-shadow: none; }
    .invoice-paper { margin: 0; max-width: none; width: auto; font-size: 11pt; }
    .invoice-bank { grid-template-columns: 1fr 1fr; }
    .invoice-scroll { overflow: visible; }
    .invoice-table { width: 100%; font-size: 10pt; }
    .invoice-table tr, .invoice-bank, .invoice-signature { break-inside: avoid; }
    a { color: #000; text-decoration: none; }
}
