/* Drukorz Zamówienia – strona "Dziękujemy", szczegóły zamówienia w koncie,
   strona "Wgraj poprawiony plik" i wydruk potwierdzenia.
   Przeniesione 17.10.2026 z drukorz-kalkulator-nowy/assets/css/drukorz-cart.css. */

/* --- Strona po zamówieniu ("Dziękujemy") ----------------------------------
   WooCommerce ma jako "Kasę" ustawioną stronę 11 (/kasa/), ale po złożeniu
   zamówienia Elementor pokazuje osobną stronę 1041 (/dziekujemy-za-zakupy/)
   z widgetem "Purchase Summary" (inna klasa niż widget "Checkout" na /kasa/,
   ten sam markup WooCommerce w środku). Dlatego cała ta sekcja celuje w OBA
   widgety na raz przez :is(...) - inaczej style działałyby tylko na /kasa/,
   której klient po zamówieniu w ogóle nie widzi.
   Trzeci widget w :is(...) to "Moje konto": szczegóły zamówienia w koncie używają
   tych samych bloków (templates/myaccount/view-order.php), a ich układ w koncie
   nadpisuje assets/css/drukorz-account.css (sekcja "Szczegóły zamówienia").
   Wariant A: baner + trzy kolumny: 1 Co dalej | 2 Twoje zamówienie | 3 Dostawa i dane.
   Markup: includes/class-order-received.php. Układ działa, gdy jest baner (nieudana
   płatność zostaje w domyślnym widoku WooCommerce).
   Priorytety: szablon strony 1041 (post-1041.css) i widget dają sekcjom, tabeli,
   kolumnom i adresom własne tła, ramki i szerokości. Selektory tej sekcji mają
   dlatego ".woocommerce .woocommerce-order.woocommerce-order" (podwójna klasa to
   celowe podniesienie priorytetu), a gdzie szablon używa !important, tam my też.
   Kolory paneli i bloków wewnętrznych są w zmiennych --drukorz-ty-* poniżej. */

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) {
    --links-normal-color: #171717;
    --links-hover-color: #232323;
    /* panele (3 kolumny + "Masz pytanie?") i bloki wewnątrz nich (dane przelewu, parametry) */
    --drukorz-ty-panel: #FAFAFA;
    --drukorz-ty-inner: #FFFFFF;
    --drukorz-ty-line: #E5E5E5;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce-order:has(.drukorz-ty-hero) {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px 24px;
    align-items: start;
    font-family: Inter, sans-serif;
}

/* domyślny komunikat i lista "Numer zamówienia / Data / ..." zastępuje baner.
   !important: strona 1041 (widget "Purchase Summary") ma własną regułę
   post-1041.css ustawiającą tej liście display:flex też z !important.
   Blok wtyczki Paynow "Potwierdź płatność BLIK" (nagłówek + obrazek telefonu) zastępuje
   krok 1 w "Co dalej" (OrderReceived::is_awaiting_blik). Chowamy tylko wygląd: skrypt
   wtyczki obok bloku dalej sprawdza status i przeładowuje stronę po potwierdzeniu. */
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce-order:has(.drukorz-ty-hero) > .woocommerce-notice,
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce-order:has(.drukorz-ty-hero) > ul.woocommerce-order-overview,
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce-order:has(.drukorz-ty-hero) > .paynow-confirm-blik {
    display: none !important;
}

/* strona 1041: osobny nagłówek "Dziękujemy że nas wybrałeś" (widget heading #d2a6ddb)
   dubluje teraz nasz baner - chowamy go tylko na stronach, które mają nasz baner. */
body:has(.drukorz-ty-hero) .elementor-element-d2a6ddb {
    display: none !important;
}

@media (min-width: 1200px) {
    :is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce-order:has(.drukorz-ty-hero) {
        grid-template-columns: minmax(0, 0.95fr) minmax(0, 1.15fr) minmax(0, 0.9fr);
    }
}

/* ---- baner ---- */
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-ty-hero {
    grid-column: 1 / -1;
    display: flex;
    align-items: center;
    gap: 16px;
    padding-bottom: 8px;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-ty-tick {
    flex: none;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: #171717;
    color: #FFFFFF;
    font: 400 24px/48px Inter, sans-serif;
    text-align: center;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .drukorz-ty-hero h2 {
    margin: 0;
    font: 700 30px/38px Inter, sans-serif;
    color: #171717;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .drukorz-ty-hero p {
    margin: 2px 0 0;
    font: 400 16px/24px Inter, sans-serif;
    color: #737373;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .drukorz-ty-hero p strong {
    color: #171717;
    font-weight: 600;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 10px;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-chip {
    padding: 4px 10px;
    border-radius: 999px;
    background: #F5F5F5;
    color: #232323;
    font: 400 12px/16px Inter, sans-serif;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-chip--dark {
    background: #171717;
    color: #FFFFFF;
}

/* ---- karty ---- */
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order .drukorz-ty-box,
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order section.woocommerce-order-details,
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order section.woocommerce-customer-details {
    margin: 0;
    padding: 20px !important;
    border: 1px solid var(--drukorz-ty-line) !important;
    border-radius: 12px;
    background: var(--drukorz-ty-panel);
    box-shadow: none;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-ty-next {
    display: grid;
    gap: 16px;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order .drukorz-ty-heading,
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order h2.woocommerce-order-details__title {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0 0 14px;
    font: 600 18px/28px Inter, sans-serif;
    color: #171717;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-n,
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order h2.woocommerce-order-details__title::before {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 26px;
    height: 26px;
    border-radius: 50%;
    background: #171717;
    color: #FFFFFF;
    font: 600 13px/1 Inter, sans-serif;
    flex: none;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order h2.woocommerce-order-details__title::before {
    content: "2";
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-muted {
    color: #737373;
}

/* ---- Co dalej ---- */
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-steps {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 14px;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-step {
    display: grid;
    grid-template-columns: 28px minmax(0, 1fr);
    gap: 12px;
    align-items: start;
    margin: 0;
    font: 400 14px/20px Inter, sans-serif;
    color: #232323;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-step strong {
    color: #171717;
    font-weight: 600;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-step__no {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 24px;
    height: 24px;
    border: 1px solid #D4D4D4;
    border-radius: 50%;
    font: 600 12px/1 Inter, sans-serif;
    color: #171717;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-step.is-done .drukorz-step__no {
    border-color: #171717;
    background: #171717;
    color: #FFFFFF;
}

/* czekamy na potwierdzenie BLIK w aplikacji banku: kręcące się kółko zamiast numeru */
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-step.is-waiting .drukorz-step__no {
    border: 2px solid #D4D4D4;
    border-top-color: #171717;
    animation: drukorz-spin 0.9s linear infinite;
}

@keyframes drukorz-spin {
    to { transform: rotate(360deg); }
}

@media (prefers-reduced-motion: reduce) {
    :is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-step.is-waiting .drukorz-step__no {
        animation-duration: 2.5s;
    }
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-bank {
    display: grid;
    gap: 8px;
    margin-top: 10px;
    padding: 12px 14px;
    border: 1px solid var(--drukorz-ty-line);
    border-radius: 8px;
    background: var(--drukorz-ty-inner);
    font: 400 13px/18px Inter, sans-serif;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-bank__row {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    gap: 12px;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-bank__row span {
    flex: none;
    color: #737373;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-bank__row strong {
    color: #171717;
    font-weight: 600;
    text-align: right;
    word-break: break-word;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-copy {
    margin: 0 0 0 8px;
    padding: 0;
    border: 0;
    background: none;
    color: #171717;
    font: 400 12px/18px Inter, sans-serif;
    text-decoration: underline;
    cursor: pointer;
}

/* Motyw (hello-elementor) barwi przyciski po najechaniu i kliknięciu na różowo. */
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-copy:is(:hover, :focus, :active) {
    background: none;
    color: #171717;
    text-decoration: underline;
    outline: none;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-copy:focus-visible {
    outline: 2px solid #171717;
    outline-offset: 2px;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-ty-help {
    font: 400 14px/20px Inter, sans-serif;
    color: #232323;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-ty-help a {
    color: #171717;
    text-decoration: none;
}

/* ---- przyciski ---- */
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-btn {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    margin-top: 8px;
    padding: 12px 20px;
    border: 1px solid #171717;
    border-radius: 8px;
    background: #171717;
    color: #FFFFFF !important;
    font: 600 15px/24px Inter, sans-serif;
    text-decoration: none;
    cursor: pointer;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-btn--secondary {
    border-color: #D4D4D4;
    background: #FFFFFF;
    color: #171717 !important;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-ty-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-top: 18px;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-ty-actions .drukorz-btn {
    margin-top: 0;
}

/* ---- Twoje zamówienie: tabela jako bloki (jak w kasie) ---- */
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order table.woocommerce-table--order-details,
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order table.woocommerce-table--order-details tbody,
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order table.woocommerce-table--order-details tfoot {
    display: block;
    width: 100%;
    margin: 0;
    border: 0;
    background: transparent;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order table.woocommerce-table--order-details thead {
    display: none;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order table.woocommerce-table--order-details tbody tr.order_item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    column-gap: 12px;
    width: 100%;
    padding: 0 0 16px;
    border-bottom: 1px solid var(--drukorz-ty-line);
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order table.woocommerce-table--order-details td,
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order table.woocommerce-table--order-details th {
    display: block;
    width: auto;           /* post-1041.css daje .product-name width:70% - tu pełna szerokość */
    max-width: none;
    padding: 0;
    border: 0 !important;  /* post-1041.css rysuje ramkę wokół każdej komórki (też z zaokrągleniem na pierwszej) */
    border-radius: 0 !important;
    background: transparent;
    font: 400 14px/20px Inter, sans-serif;
    color: #232323;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order table.woocommerce-table--order-details td.product-name {
    font-weight: 600;
    color: #171717;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order table.woocommerce-table--order-details td.product-name a {
    color: #171717;
    text-decoration: none;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order table.woocommerce-table--order-details .product-quantity {
    font-weight: 400;
    color: #737373;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order table.woocommerce-table--order-details td.product-total {
    text-align: right;
    font-weight: 700;
    white-space: nowrap;
    color: #171717;
}

/* parametry z kalkulatora: biały blok z ramką na panelu (inline style z maila przebijamy) */
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order .drukorz-order-item-params {
    display: grid !important;
    grid-template-columns: max-content minmax(0, 1fr);
    column-gap: 12px;
    row-gap: 2px;
    margin: 8px 0 0 !important;
    padding: 10px 12px;
    border: 1px solid var(--drukorz-ty-line);
    border-radius: 8px;
    background: var(--drukorz-ty-inner);
    font: 400 12px/16px Inter, sans-serif !important;
    font-weight: 400;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order .drukorz-order-param {
    display: contents;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order .drukorz-order-param__key {
    font-weight: 400;
    color: #737373;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order .drukorz-order-param__value {
    font-weight: 400;
    color: #232323;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order .drukorz-order-param__value a {
    color: #232323;
    text-decoration: underline;
}

/* sumy */
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order table.woocommerce-table--order-details tfoot tr {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    padding: 10px 0;
    border-bottom: 1px solid var(--drukorz-ty-line);
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order table.woocommerce-table--order-details tfoot td {
    text-align: right;
    font-weight: 600;
    color: #171717;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order table.woocommerce-table--order-details tfoot tr:has(.drukorz-net--total) {
    margin-top: 8px;
    padding: 14px 0 0;
    border-top: 2px solid #171717;
    border-bottom: 0;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order table.woocommerce-table--order-details tfoot tr:has(+ tr .drukorz-net--total) {
    border-bottom: 0;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order table.woocommerce-table--order-details tfoot tr:has(.drukorz-net--total) td strong .woocommerce-Price-amount {
    font-size: 22px;
    line-height: 28px;
    font-weight: 700;
}

/* ---- Dostawa i dane ---- */
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order section.woocommerce-customer-details {
    display: flex;
    flex-direction: column;
    font: 400 14px/20px Inter, sans-serif;
    color: #232323;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order .drukorz-ty-heading--customer {
    order: -2;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-ty-block--delivery {
    order: -1;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-ty-block--invoice {
    order: 2;
}

/* bloki w panelu "Dostawa i dane": tekst rozdzielony cienkimi liniami. Widget
   Purchase Summary rysuje tu ramki i tła na sekcji, kolumnach i adresie
   (post-1041.css) - zerujemy je, żeby nie powstawały ramki w ramkach. */
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order .drukorz-ty-block--invoice,
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order section.woocommerce-columns--addresses {
    margin: 18px 0 0;
    padding: 18px 0 0;
    border: 0;
    border-top: 1px solid var(--drukorz-ty-line);
    border-radius: 0;
    background: transparent;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order section.woocommerce-columns--addresses {
    display: block;
}

/* Odbiór osobisty: bez adresu dostawy WooCommerce pokazuje sam nagłówek "Dane zamawiającego"
   i adres, bez kolumn - ten sam odstęp i linia co między pozostałymi blokami. */
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order section.woocommerce-customer-details > h2.woocommerce-column__title {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid var(--drukorz-ty-line);
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order section.woocommerce-columns--addresses .woocommerce-column {
    float: none;
    width: 100%;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order section.woocommerce-columns--addresses .woocommerce-column + .woocommerce-column {
    margin-top: 18px;
    padding-top: 18px;
    border-top: 1px solid var(--drukorz-ty-line);
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order .drukorz-ty-label,
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order h2.woocommerce-column__title {
    margin: 0 0 6px;
    font: 400 12px/16px Inter, sans-serif;
    letter-spacing: 0.04em;
    text-transform: uppercase;
    color: #737373;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order section.woocommerce-customer-details address {
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    font: 400 14px/20px Inter, sans-serif;
    font-style: normal;
    color: #232323;
}

:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order section.woocommerce-customer-details address p {
    margin: 0;
    padding: 0;
}

/* ikony telefonu i e-maila rysuje WooCommerce absolutnie z ujemnym marginesem -
   tekst musi mieć wcięcie, inaczej ikona wychodzi poza panel */
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order section.woocommerce-customer-details address p.woocommerce-customer-details--phone,
:is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order section.woocommerce-customer-details address p.woocommerce-customer-details--email {
    padding-left: 1.5em;
}

@media (max-width: 767px) {
    :is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-ty-hero {
        align-items: flex-start;
    }
    :is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .drukorz-ty-hero h2 {
        font-size: 24px;
        line-height: 32px;
    }
    :is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .drukorz-ty-tick {
        width: 40px;
        height: 40px;
        font-size: 20px;
        line-height: 40px;
    }
    :is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order .drukorz-ty-box,
    :is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order section.woocommerce-order-details,
    :is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order section.woocommerce-customer-details {
        padding: 16px !important;
    }

    /* na wąskim ekranie nazwa (z parametrami) i kwota nie mieszczą się obok
       siebie bez łamania tekstu - cena schodzi pod spód, na całą szerokość */
    :is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order table.woocommerce-table--order-details tbody tr.order_item {
        grid-template-columns: 1fr;
        row-gap: 8px;
    }
    :is(.elementor-widget-woocommerce-checkout-page, .elementor-widget-woocommerce-purchase-summary, .elementor-widget-woocommerce-my-account) .woocommerce .woocommerce-order.woocommerce-order table.woocommerce-table--order-details td.product-total {
        text-align: left;
    }
}

/* --- Strona "Wgraj poprawiony plik" (/popraw-plik/) ---------------------------
   Shortcode [drukorz_popraw_plik], markup: FileVerification::render_fix_page.
   Pole plików ma style z drukorz-kalkulator.css (sekcja "PLIKI DO DRUKU"). */
.drukorz-fix-page {
    max-width: 760px;
    margin: 32px auto 48px;
    font: 400 15px/1.55 Inter, sans-serif;
    color: #232323;
}

.drukorz-fix-hero {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 24px;
}

.drukorz-fix-hero__icon {
    flex: none;
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background: #171717;
    color: #FFFFFF;
    font: 600 22px/48px Inter, sans-serif;
    text-align: center;
}

.drukorz-fix-hero h1 {
    margin: 0 0 4px;
    font: 600 28px/1.2 Inter, sans-serif;
    color: #171717;
}

.drukorz-fix-hero p {
    margin: 0 0 8px;
    font-size: 14px;
    color: #737373;
}

.drukorz-fix-page .drukorz-chips {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.drukorz-fix-page .drukorz-chip {
    display: inline-block;
    padding: 3px 10px;
    border-radius: 999px;
    background: #F5F5F5;
    font-size: 12px;
    color: #232323;
}

.drukorz-fix-page .drukorz-chip--dark {
    background: #171717;
    color: #FFFFFF;
}

.drukorz-fix-panel {
    margin-bottom: 16px;
    padding: 20px;
    border: 1px solid #E5E5E5;
    border-radius: 12px;
    background: #FAFAFA;
}

.drukorz-fix-panel--ok {
    padding: 14px 20px;
    font-size: 14px;
}

.drukorz-fix-panel h2 {
    margin: 0 0 4px;
    font: 600 18px/1.3 Inter, sans-serif;
    color: #171717;
}

.drukorz-fix-panel h2 span {
    font-weight: 400;
    color: #737373;
}

.drukorz-fix-label {
    margin: 14px 0 6px;
    font-weight: 600;
    color: #171717;
}

.drukorz-fix-reason {
    margin-bottom: 18px;
    padding: 12px 14px;
    border: 1px solid #E5E5E5;
    border-left: 3px solid #171717;
    border-radius: 6px;
    background: #FFFFFF;
}

.drukorz-fix-small {
    margin: 0 0 8px;
    font-size: 13px;
    color: #525252;
}

.drukorz-fix-small a {
    color: #171717;
}

.drukorz-fix-notice {
    margin-bottom: 16px;
    padding: 12px 16px;
    border-radius: 8px;
    background: #F5F5F5;
    font-size: 14px;
}

.drukorz-fix-error {
    margin-bottom: 14px;
    padding: 12px 16px;
    border-radius: 8px;
    background: #FBEAE8;
    font-size: 14px;
    color: #8A1F11;
}

.drukorz-fix-page .drukorz-btn {
    display: inline-block;
    margin-top: 14px;
    padding: 12px 22px;
    border: 0;
    border-radius: 6px;
    background: #171717;
    color: #FFFFFF;
    font: 600 15px/1.2 Inter, sans-serif;
    text-decoration: none;
    cursor: pointer;
}

.drukorz-fix-page .drukorz-btn.is-sending {
    opacity: .6;
    pointer-events: none;
}

@media (max-width: 767px) {
    .drukorz-fix-page {
        margin: 20px 0 32px;
    }

    .drukorz-fix-hero h1 {
        font-size: 22px;
    }

    .drukorz-fix-panel {
        padding: 16px;
    }
}

@media print {
    #wpadminbar,
    .elementor-location-header,
    .elementor-location-footer,
    .drukorz-ty-actions,
    .drukorz-copy,
    .cky-btn-revisit-wrapper {
        display: none !important;
    }
}
