/* =========================================================================
   CRUJIENTE - sklep (WooCommerce): listing, karta produktu, koszyk, checkout,
   potwierdzenie, moje konto, komunikaty. Tokeny i komponenty bazowe: main.css.
   ========================================================================= */

/* ---------- 0. Wspolne ---------- */
.crj-wc-page [hidden], .crj-shop [hidden], .crj-product [hidden] { display: none !important; }
.crj-wc-title { font-family: var(--font-display); font-weight: 850; font-size: clamp(42px, 5vw, 72px); line-height: 1.03; letter-spacing: -.01em; }
.crj-wc-plain__content { margin-top: 32px; }
.crj-wc-plain__content .crj-login__card--single { max-width: 560px; }
.crj-wc-plain__content .woocommerce-notices-wrapper, .crj-wc-plain__content .woocommerce-info, .crj-wc-plain__content .crj-notice { max-width: 560px; margin-bottom: 20px; }
.crj-wc-plain__content .woocommerce-form, .crj-wc-plain__content .woocommerce-ResetPassword, .crj-wc-plain__content .lost_reset_password { background: var(--biel); border: 2px solid var(--atrament); border-radius: var(--r-card); padding: 30px; display: flex; flex-direction: column; gap: 18px; max-width: 560px; }
.crj-wc-plain__content .woocommerce-form p { margin: 0; }
.crj-wc-plain__content .button { display: inline-flex; align-self: flex-start; }
.crj-container.crj-shop__notices:empty, .crj-container.crj-checkout__notices:empty { display: none; }

/* Blad WC pola formularza */
.woocommerce-invalid input.input-text, .woocommerce-invalid select { border-color: var(--terakota) !important; }

/* Etapy zamowienia (bazowe style w main.css) */
.crj-steps { gap: 14px; }
.crj-steps__item { text-decoration: none; color: inherit; }
.crj-steps__item.is-current { color: var(--terakota-ciemna); font-weight: 700; }
.crj-steps__item.is-current .crj-steps__num { background: var(--terakota-ciemna); border-color: var(--terakota-ciemna); }
.crj-steps__item.is-done .crj-steps__num { background: transparent; }
.crj-steps__item.is-done .crj-icon { display: block; }
.crj-steps__num { width: 26px; height: 26px; }
.crj-steps__sep { width: 34px; }
a.crj-steps__item:hover { color: var(--terakota-ciemna); }
.crj-bg-terra-dark .crj-steps__item.is-current { color: inherit; }
.crj-bg-terra-dark .crj-steps__item.is-current .crj-steps__num { background: var(--kremowy); border-color: var(--kremowy); }
.crj-bg-terra-dark .crj-steps__item.is-current .crj-steps__num span { color: var(--terakota-ciemna); }
.crj-bg-terra-dark .crj-steps__item { opacity: .7; }
.crj-bg-terra-dark .crj-steps__item.is-current { opacity: 1; }
.crj-bg-terra-dark .crj-steps__sep { background: var(--cream-40); opacity: 1; }

/* Komunikaty WC */
.crj-notice { display: flex; align-items: flex-start; gap: 12px; margin: 0 0 24px; padding: 16px 22px; border-radius: 18px; border: 2px solid var(--atrament); background: var(--biel); font-size: 15.5px; line-height: 1.5; list-style: none; }
.crj-notice a { font-weight: 600; }
.crj-notice--error { border-color: var(--terakota); background: var(--kremowy); color: var(--terakota-ciemna); flex-direction: column; gap: 6px; }
.crj-notice--error li { list-style: none; }
.crj-notice--success { border-color: var(--c-pistacja); }
.crj-notice--success .crj-notice__icon { flex: none; margin-top: 3px; color: var(--c-pistacja); }
.crj-notice--info { border-style: dashed; border-color: var(--ink-35); font-family: var(--font-mono); font-size: 13.5px; }
.crj-notice__link, .crj-notice .button { font-family: var(--font-mono); font-size: 12.5px; letter-spacing: .1em; text-transform: uppercase; font-weight: 700; text-decoration: none; margin-left: 6px; }
.crj-notice .button { color: var(--terakota-ciemna); }
.woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-notices-wrapper { padding-top: 22px; }
.crj-shop__notices .woocommerce-notices-wrapper, .crj-cart .woocommerce-notices-wrapper, .crj-checkout .woocommerce-notices-wrapper, .crj-account .woocommerce-notices-wrapper { padding-top: 0; }
.crj-product > .woocommerce-notices-wrapper { max-width: calc(var(--container) + 2 * var(--gutter)); margin: 0 auto; padding: 22px var(--gutter) 0; }
.crj-product > .woocommerce-notices-wrapper .crj-notice { margin-bottom: 0; }

/* Stepper ilosci */
.crj-qty { display: inline-flex; align-items: center; gap: 2px; border: 2px solid var(--atrament); border-radius: var(--r-pill); padding: 4px; background: var(--biel); }
.crj-qty__btn { width: 40px; height: 40px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; color: var(--atrament); transition: background var(--t-fast); }
.crj-qty__btn:hover { background: var(--kremowy); }
.crj-qty__input { width: 44px; text-align: center; border: 0; background: transparent; font-family: var(--font-mono); font-weight: 700; font-size: 16px; padding: 0; -moz-appearance: textfield; appearance: textfield; outline: none; }
.crj-qty__input::-webkit-outer-spin-button, .crj-qty__input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
.crj-qty--fixed { display: none; }

/* Pola formularzy WC (woocommerce_form_field) */
.crj-fields__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.crj-fields__grid > .form-row, .crj-fields > .form-row { margin: 0; }
.form-row.form-row-first, .form-row.form-row-last { grid-column: span 1; }
.form-row.form-row-wide, .form-row.notes { grid-column: 1 / -1; }
.crj-fields .form-row label, .crj-fields__grid .form-row label:not(.checkbox), .crj-fields .crj-field__label { display: block; font-family: var(--font-mono); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; margin-bottom: 7px; }
.crj-fields .form-row .required, .crj-field .required { color: var(--terakota-ciemna); text-decoration: none; }
.crj-fields .form-row .optional { display: none; }
.crj-fields .input-text, .crj-fields select, .crj-fields textarea, .crj-login__card .input-text, .crj-review-form .input-text, .crj-review-form input:not([type=checkbox]):not([type=submit]), .crj-review-form textarea, .crj-review-form select, .woocommerce-EditAccountForm .input-text, .woocommerce-address-fields .input-text, .woocommerce-address-fields select, .crj-wc-plain__content .input-text {
  width: 100%; font-family: var(--font-text); font-size: 15.5px; border: 2px solid var(--atrament); border-radius: 14px; padding: 13px 16px; background: var(--kremowy); color: var(--atrament); outline: none; transition: border-color var(--t-fast), background var(--t-fast);
}
.crj-fields .input-text:focus, .crj-fields select:focus, .crj-fields textarea:focus, .crj-login__card .input-text:focus, .woocommerce-EditAccountForm .input-text:focus, .woocommerce-address-fields .input-text:focus, .crj-review-form textarea:focus, .crj-review-form input:focus { border-color: var(--terakota-ciemna); background: var(--biel); }
.crj-fields textarea { min-height: 96px; resize: vertical; background: var(--biel); }
.crj-fields select, .woocommerce-address-fields select { appearance: none; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231E2136' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right 16px center; background-size: 18px; padding-right: 44px; }
.crj-fields .select2-container .select2-selection--single { height: auto; border: 2px solid var(--atrament); border-radius: 14px; background: var(--kremowy); }
.crj-fields .select2-container .select2-selection--single .select2-selection__rendered { padding: 12px 40px 12px 16px; line-height: 1.4; font-size: 15.5px; color: var(--atrament); }
.crj-fields .select2-container .select2-selection--single .select2-selection__arrow { height: 100%; right: 10px; }
.crj-fields .form-row.crj-field--country strong { display: block; font-size: 15.5px; padding: 6px 0; }
.crj-fields .form-row.crj-field--hidden { display: none !important; }
.crj-fields .form-row .checkbox, .crj-check { display: flex; align-items: center; gap: 12px; font-family: var(--font-text); font-size: 14.5px; letter-spacing: 0; text-transform: none; cursor: pointer; line-height: 1.5; margin: 0; }
.crj-fields .form-row .checkbox input, .crj-check input { width: 20px; height: 20px; accent-color: var(--terakota-ciemna); flex: none; margin: 0; }
.crj-check--sm { font-size: 14px; }
.crj-check--sm input { width: 18px; height: 18px; }
.crj-fields .form-row.crj-firma-field { display: none; }
.crj-fields.is-firma .form-row.crj-firma-field { display: block; }
.crj-fields--shipping { margin-top: 18px; padding-top: 18px; border-top: 1.5px dashed var(--ink-35); }
.crj-fields__toggle { font-size: 14.5px; font-family: var(--font-text); font-weight: 400; margin: 0 0 12px; }
.crj-fields--shipping .shipping_address { margin-top: 14px; }
.crj-fields--notes { margin-top: 18px; }
.crj-fields--account { margin-top: 16px; }
.crj-fields--account .create-account { margin-top: 12px; }
.crj-fields .woocommerce-password-strength, .crj-fields .woocommerce-password-hint { font-family: var(--font-mono); font-size: 12px; margin-top: 6px; display: block; }
.crj-fields .form-row .woocommerce-input-wrapper { display: block; }
.crj-fields .form-row.woocommerce-invalid label { color: var(--terakota-ciemna); }

/* Metody dostawy / platnosci - karty-radio */
.crj-methods { display: flex; flex-direction: column; gap: 10px; }
.crj-methods__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; }
.crj-methods__package { font-family: var(--font-mono); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; opacity: .7; }
.crj-methods__empty, .crj-methods__empty .crj-notice { font-family: var(--font-mono); font-size: 13px; line-height: 1.6; background: var(--kremowy); border: 1.5px dashed var(--ink-35); border-radius: 14px; padding: 14px 18px; margin: 0; }
.crj-method { list-style: none; margin: 0; }
.crj-method__input { position: absolute; opacity: 0; width: 1px; height: 1px; pointer-events: none; }
.crj-method__label { display: flex; align-items: center; gap: 14px; text-align: left; border: 2px solid var(--ink-35); background: transparent; border-radius: 16px; padding: 15px 18px; cursor: pointer; transition: border-color var(--t-fast), background var(--t-fast); }
.crj-method__label:hover { border-color: var(--terakota-ciemna); }
.crj-method__input:checked + .crj-method__label { border-color: var(--terakota-ciemna); background: var(--kremowy); }
.crj-method__input:focus-visible + .crj-method__label { outline: 3px solid var(--terakota); outline-offset: 3px; }
.crj-method__dot { width: 20px; height: 20px; border-radius: 50%; border: 2px solid var(--atrament); flex: none; background: transparent; transition: background var(--t-fast), box-shadow var(--t-fast); }
.crj-method__input:checked + .crj-method__label .crj-method__dot { background: var(--terakota-ciemna); box-shadow: inset 0 0 0 3.5px var(--kremowy); }
.crj-method__body { display: flex; flex-direction: column; gap: 3px; flex: 1; min-width: 0; }
.crj-method__name { font-weight: 600; font-size: 15.5px; }
.crj-method__desc { font-family: var(--font-mono); font-size: 12px; opacity: .7; }
.crj-method__price { font-family: var(--font-mono); font-weight: 700; font-size: 14.5px; flex: none; }
.crj-method__icon { flex: none; display: flex; align-items: center; gap: 6px; }
.crj-method__icon img { max-height: 24px; width: auto; }
.crj-method__box { margin: 8px 6px 4px; padding: 14px 18px; background: var(--kremowy); border: 1.5px dashed var(--ink-35); border-radius: 14px; font-size: 14.5px; line-height: 1.6; }
.crj-method__box p { margin: 0 0 8px; }
.crj-method__box p:last-child { margin: 0; }
.crj-method__box fieldset { border: 0; padding: 0; margin: 0; }
.crj-method__box .form-row { margin: 0 0 12px; }
.crj-method__box .form-row label { display: block; font-family: var(--font-mono); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; margin-bottom: 6px; }
.crj-method__box .input-text { width: 100%; font-size: 15.5px; border: 2px solid var(--atrament); border-radius: 12px; padding: 11px 14px; background: var(--biel); }
/* Woo dodaje przy metodach wysylki elementy po li (np. InPost geowidget) */
.crj-methods__list .crj-method > *:not(input):not(label) { margin-top: 8px; }
.crj-methods__list .crj-method .button { display: inline-flex; font-family: var(--font-mono); font-size: 12.5px; letter-spacing: .1em; text-transform: uppercase; font-weight: 700; padding: 10px 18px; border-radius: var(--r-pill); border: 2px solid var(--atrament); background: transparent; color: var(--atrament); text-decoration: none; }

/* Fieldsety checkoutu */
.crj-fieldset { border: 2px solid var(--atrament); border-radius: var(--r-card); background: var(--biel); padding: 26px; margin: 0; min-width: 0; display: flex; flex-direction: column; gap: 16px; }
.crj-fieldset__legend { font-family: var(--font-mono); font-weight: 700; font-size: 13px; letter-spacing: .16em; text-transform: uppercase; padding: 0 12px; margin-left: -12px; float: none; }
.crj-fieldset > .crj-fields + .crj-fields { margin-top: 0; }

/* Podsumowanie (koszyk / checkout / potwierdzenie) */
.crj-summary { background: var(--biel); border: 2px solid var(--atrament); border-radius: var(--r-card); padding: 26px; display: flex; flex-direction: column; gap: 16px; }
.crj-summary__title { font-family: var(--font-mono); font-weight: 700; font-size: 13px; letter-spacing: .16em; text-transform: uppercase; margin: 0; }
.crj-summary__rows { display: flex; flex-direction: column; gap: 11px; font-family: var(--font-mono); font-size: 14px; border-top: 1.5px dashed var(--ink-35); padding-top: 16px; }
.crj-summary__rows--items { font-size: 13.5px; gap: 12px; }
.crj-summary__row { display: flex; justify-content: space-between; gap: 16px; align-items: flex-start; }
.crj-summary__row--coupon { color: var(--terakota-ciemna); }
.crj-summary__row--ship { border-top: 1.5px dashed var(--ink-35); padding-top: 12px; }
.crj-summary__val { font-weight: 700; text-align: right; white-space: nowrap; }
.crj-summary__val .woocommerce-Price-amount { font-weight: 700; }
.crj-summary__val .tax_label, .crj-summary__val small { display: block; font-weight: 400; font-size: 11px; opacity: .7; }
.crj-summary__sub { font-weight: 400; opacity: .8; }
.crj-summary__row .woocommerce-remove-coupon { font-size: 11px; letter-spacing: .06em; text-transform: uppercase; margin-left: 8px; text-decoration: none; }
.crj-summary__total { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; border-top: 2px solid var(--atrament); padding-top: 16px; }
.crj-summary__total-label { font-family: var(--font-mono); font-weight: 700; font-size: 14px; letter-spacing: .1em; text-transform: uppercase; }
.crj-summary__total-val { font-family: var(--font-display); font-weight: 850; font-size: 34px; line-height: 1; }
.crj-summary__total-val small, .crj-summary__total-val .includes_tax { font-family: var(--font-mono); font-weight: 400; font-size: 11px; display: block; text-align: right; opacity: .7; }
.crj-summary__cta { margin: 0; }
.crj-summary__cta .crj-btn { font-size: 14px; padding: 16px 24px; }
.crj-summary__note { font-family: var(--font-mono); font-size: 11.5px; line-height: 1.7; opacity: .7; text-align: center; }
.crj-summary__meta { display: flex; flex-direction: column; gap: 4px; font-family: var(--font-mono); font-size: 12.5px; line-height: 1.7; border-top: 1.5px dashed var(--ink-35); padding-top: 16px; opacity: .85; overflow-wrap: anywhere; }
.crj-summary__link { font-family: var(--font-mono); font-weight: 700; font-size: 12.5px; letter-spacing: .1em; text-transform: uppercase; text-align: center; text-decoration: none; }
.crj-summary__link:hover { text-decoration: underline; }

/* Pasek darmowej dostawy */
.crj-freeship { display: flex; flex-direction: column; gap: 8px; }
.crj-freeship__text { font-family: var(--font-mono); font-size: 12px; line-height: 1.5; }
.crj-freeship__bar { display: block; height: 10px; background: var(--kremowy); border: 1.5px solid var(--atrament); border-radius: var(--r-pill); overflow: hidden; }
.crj-freeship__fill { display: block; height: 100%; background: var(--terakota); border-radius: var(--r-pill); transition: width .4s ease; }
.crj-freeship--done { display: flex; align-items: center; gap: 8px; font-family: var(--font-mono); font-size: 12.5px; font-weight: 700; color: var(--terakota-ciemna); }

/* Kupon */
.crj-coupon { display: flex; gap: 10px; align-items: center; }
.crj-coupon__input { font-family: var(--font-mono); font-size: 13px; border: 2px solid var(--atrament); border-radius: var(--r-pill); padding: 11px 18px; background: var(--biel); color: var(--atrament); outline: none; width: 160px; }
.crj-coupon__input:focus { border-color: var(--terakota-ciemna); }
.crj-coupon__btn { font-family: var(--font-mono); font-weight: 700; font-size: 12.5px; letter-spacing: .1em; text-transform: uppercase; border: 2px solid var(--atrament); background: none; color: var(--atrament); border-radius: var(--r-pill); padding: 11px 20px; transition: background var(--t-fast), color var(--t-fast); }
.crj-coupon__btn:hover { background: var(--atrament); color: var(--kremowy); }
.crj-coupon-toggle .crj-notice { margin-bottom: 12px; }
.crj-coupon--checkout { margin: 0 0 20px; }

/* Okruszki */
.crj-crumbs { padding: 22px 0 0; }
.crj-crumbs__inner { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; font-family: var(--font-mono); font-size: 12.5px; letter-spacing: .08em; text-transform: uppercase; }
.crj-crumbs__inner a { color: var(--terakota-ciemna); text-decoration: none; }
.crj-crumbs__inner a:hover { text-decoration: underline; }
.crj-crumbs__sep { opacity: .5; }
.crj-crumbs__inner > :last-child:not(a) { opacity: .75; }

/* =========================================================================
   1. SKLEP (listing)
   ========================================================================= */
.crj-shop { background: var(--kremowy); }
.crj-shop__filters { padding: 34px 0 10px; }
.crj-shop__filters-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
.crj-filters { display: flex; gap: 10px; flex-wrap: wrap; }
.crj-filter { font-family: var(--font-mono); font-weight: 700; font-size: 12.5px; letter-spacing: .1em; text-transform: uppercase; border: 2px solid var(--atrament); border-radius: var(--r-pill); padding: 10px 20px; cursor: pointer; background: transparent; color: var(--atrament); text-decoration: none; transition: border-color var(--t-fast), color var(--t-fast), background var(--t-fast); white-space: nowrap; }
.crj-filter:hover { border-color: var(--terakota-ciemna); color: var(--terakota-ciemna); }
.crj-filter.is-active { background: var(--atrament); color: var(--kremowy); border-color: var(--atrament); }
.crj-shop__count { font-family: var(--font-mono); font-size: 13px; letter-spacing: .12em; text-transform: uppercase; }
.crj-shop__pastas { padding: 36px 0 30px; }
.crj-shop__sets { padding: 30px 0 60px; }
.crj-shop__sets-inner { display: flex; flex-direction: column; gap: 24px; }
.crj-shop__sets .crj-eyebrow-line { font-weight: 700; }
.crj-shop__empty { font-family: var(--font-mono); font-size: 14px; padding: 20px var(--gutter) 60px; }
.crj-shop__after:empty { display: none; }
.crj-shop__after { padding-bottom: 40px; }
.crj-shop__none { padding: 60px 0 90px; }
.crj-shop__none-inner { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
/* Karta zestawu w sklepie: zdjecie 42% / min 220, tytul 26px */
.crj-scard--shop { gap: 22px; }
.crj-scard--shop .crj-scard__media { width: 42%; }
.crj-scard--shop .crj-scard__media img { width: 100%; min-height: 220px; height: 100%; }
.crj-scard--shop .crj-scard__title { font-size: 26px; }
.crj-scard--shop .crj-scard__body { overflow-wrap: anywhere; }
/* Paginacja WC */
.woocommerce-pagination ul.page-numbers { list-style: none; margin: 0; padding: 0; display: flex; gap: 8px; flex-wrap: wrap; justify-content: center; }
.woocommerce-pagination .page-numbers { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; height: 44px; padding: 0 14px; border: 2px solid var(--atrament); border-radius: var(--r-pill); font-family: var(--font-mono); font-weight: 700; font-size: 13px; letter-spacing: .08em; text-decoration: none; color: var(--atrament); }
.woocommerce-pagination .page-numbers.current { background: var(--atrament); color: var(--kremowy); }
.woocommerce-pagination .page-numbers.dots { border-color: transparent; }
/* Sekcja dostawy */
.crj-delivery { padding: 72px 0 88px; }
.crj-delivery__inner { display: grid; grid-template-columns: 1fr 1.1fr; gap: 56px; align-items: stretch; }
.crj-delivery__content { display: flex; flex-direction: column; gap: 18px; }
.crj-delivery__title { font-family: var(--font-display); font-weight: 850; font-size: clamp(36px, 3.8vw, 54px); line-height: 1.05; }
.crj-delivery__text { font-size: 18px; line-height: 1.65; max-width: 48ch; }
.crj-delivery__pill { font-weight: 700; font-size: 13px; letter-spacing: .14em; padding: 12px 22px; align-self: flex-start; }
.crj-delivery__table { display: flex; flex-direction: column; border: 2px solid var(--kremowy); border-radius: var(--r-box); overflow: hidden; font-family: var(--font-mono); font-size: 14px; }
.crj-delivery__row { flex: 1; display: flex; align-items: center; justify-content: space-between; gap: 16px; padding: 16px 24px; border-bottom: 1.5px dashed var(--cream-40); }
.crj-delivery__row:last-child { border-bottom: 0; }
.crj-delivery__price { font-weight: 700; white-space: nowrap; }
@media (max-width: 1023px) {
  .crj-scard--shop .crj-scard__title { font-size: 22px; }
  .crj-delivery__inner { grid-template-columns: 1fr; gap: 32px; }
}
@media (max-width: 767px) {
  .crj-shop__filters { padding: 24px 0 6px; }
  .crj-filters { flex-wrap: nowrap; overflow-x: auto; margin: 0 calc(-1 * var(--gutter)); padding: 4px var(--gutter); scrollbar-width: none; -webkit-overflow-scrolling: touch; }
  .crj-filters::-webkit-scrollbar { display: none; }
  .crj-filter { font-size: 11.5px; padding: 9px 16px; }
  .crj-shop__filters-inner { gap: 12px; }
  .crj-shop__count { font-size: 12px; }
  .crj-shop__pastas { padding: 24px 0 20px; }
  .crj-shop__grid { gap: 16px; }
  .crj-shop__sets { padding: 20px 0 48px; }
  .crj-shop__sets-grid { gap: 14px; }
  .crj-delivery { padding: 52px 0 60px; }
  .crj-delivery__text { font-size: 17px; }
  .crj-delivery__row { padding: 14px 18px; font-size: 13px; }
}
@media (max-width: 639px) {
  .crj-scard--shop .crj-scard__media { width: 84px; }
  .crj-scard--shop .crj-scard__media img { min-height: 0; height: 84px; }
  .crj-scard--shop .crj-scard__title { font-size: 17px; }
}

/* =========================================================================
   2. KARTA PRODUKTU
   ========================================================================= */
.crj-product__main { padding: 30px 0 64px; background: var(--kremowy); }
.crj-product__grid { display: grid; grid-template-columns: 1.05fr 1fr; gap: 56px; align-items: start; }
.crj-product__gallery { display: flex; flex-direction: column; gap: 16px; position: sticky; top: calc(var(--header-h) + var(--topbar-h) + 14px); }
.crj-product__stage { position: relative; height: 520px; }
.crj-product__blob { inset: 14px; }
.crj-product__img { position: relative; display: none; width: 100%; height: 520px; object-fit: cover; border-radius: 40% 60% 55% 45% / 48% 44% 56% 52%; }
.crj-product__img.is-active { display: block; }
.crj-product__stage-badge { position: absolute; top: 8px; left: 8px; background: var(--atrament); color: var(--kremowy); font-family: var(--font-mono); font-size: 11.5px; letter-spacing: .12em; padding: 7px 14px; border-radius: var(--r-pill); transform: rotate(-3deg); }
.crj-product__stamp { position: absolute; right: 6px; bottom: 6px; }
.crj-product__thumbs { display: flex; gap: 12px; flex-wrap: wrap; }
.crj-product__thumb { padding: 0; border: 2.5px solid var(--atrament); border-radius: 18px; overflow: hidden; line-height: 0; background: var(--biel); transition: border-color var(--t-fast); }
.crj-product__thumb img { width: 96px; height: 80px; object-fit: cover; display: block; }
.crj-product__thumb:hover { border-color: var(--terakota); }
.crj-product__thumb.is-active { border-color: var(--terakota-ciemna); }
.crj-product__summary { display: flex; flex-direction: column; gap: 20px; min-width: 0; }
.crj-product__head { display: flex; flex-direction: column; gap: 12px; }
.crj-product__pills { display: flex; gap: 10px; flex-wrap: wrap; align-items: center; }
.crj-product__pills .crj-badge { font-size: 11.5px; padding: 5px 13px; }
.crj-product__pill-outline { font-family: var(--font-mono); font-size: 11.5px; letter-spacing: .12em; border: 1.5px solid var(--terakota-ciemna); color: var(--terakota-ciemna); border-radius: var(--r-pill); padding: 5px 13px; white-space: nowrap; }
.crj-product__title { display: flex; align-items: flex-start; gap: 12px; font-family: var(--font-display); font-weight: 850; font-size: clamp(38px, 4vw, 56px); line-height: 1.04; letter-spacing: -.01em; }
.crj-product__title .crj-dot { width: 16px; height: 16px; margin-top: .42em; }
.crj-product__sklad { font-family: var(--font-mono); font-size: 13px; opacity: .85; }
.crj-product__rating { font-family: var(--font-mono); font-size: 13px; color: var(--terakota-ciemna); text-decoration: none; align-self: flex-start; }
.crj-product__rating:hover { text-decoration: underline; }
.crj-product__short { font-size: 17px; line-height: 1.65; }
.crj-product__short p { margin: 0 0 .6em; }
.crj-product__short p:last-child { margin: 0; }
/* warianty */
.crj-buy { display: flex; flex-direction: column; gap: 20px; margin: 0; }
.crj-variant { display: flex; flex-direction: column; gap: 10px; }
.crj-variant__label { font-family: var(--font-mono); font-weight: 700; font-size: 12.5px; letter-spacing: .16em; text-transform: uppercase; }
.crj-variant__opts { display: flex; gap: 10px; flex-wrap: wrap; }
.crj-opt { font-family: var(--font-mono); font-weight: 700; font-size: 13px; letter-spacing: .08em; border: 2px solid var(--atrament); border-radius: var(--r-pill); padding: 12px 22px; background: transparent; color: var(--atrament); transition: border-color var(--t-fast), background var(--t-fast), color var(--t-fast), opacity var(--t-fast); }
.crj-opt:hover { border-color: var(--terakota-ciemna); }
.crj-opt.is-active { background: var(--atrament); color: var(--kremowy); }
.crj-opt.is-disabled { opacity: .35; border-style: dashed; cursor: not-allowed; }
.crj-variant--texture .crj-opt { text-transform: uppercase; }
.crj-variant__hint { font-family: var(--font-mono); font-size: 12px; opacity: .7; min-height: 1.2em; }
.crj-variant__hint:empty { display: none; }
.crj-buy__selects { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.crj-buy__box { background: var(--biel); border: 2px solid var(--atrament); border-radius: var(--r-box); padding: 22px; display: flex; flex-direction: column; gap: 16px; }
.crj-buy__price-row { display: flex; justify-content: space-between; align-items: baseline; gap: 16px; flex-wrap: wrap; }
.crj-buy__chosen { font-family: var(--font-mono); font-size: 13px; letter-spacing: .06em; opacity: .8; }
.crj-buy__price { font-family: var(--font-display); font-weight: 850; font-size: 36px; line-height: 1; }
.crj-buy__price del { opacity: .5; font-size: .6em; margin-right: 8px; }
.crj-buy__price ins { text-decoration: none; }
.crj-buy .single_variation:empty { display: none; }
.crj-buy__vdesc:empty, .crj-buy__avail:empty { display: none; }
.crj-buy__vdesc { font-size: 14.5px; line-height: 1.55; }
.crj-buy__vdesc p, .crj-buy__avail p { margin: 0; }
.crj-buy__avail .stock { font-family: var(--font-mono); font-size: 12px; letter-spacing: .06em; }
.crj-buy__avail .out-of-stock, .crj-buy__unavailable { font-family: var(--font-mono); font-size: 12.5px; color: var(--terakota-ciemna); margin: 0; }
.crj-buy__actions { display: flex; gap: 14px; align-items: stretch; flex-wrap: wrap; }
.crj-buy__actions .crj-qty { flex: none; }
.crj-buy__btn { flex: 1; font-size: 14px; padding: 14px 24px; min-width: 200px; }
.crj-buy__btn.is-added { background: var(--c-pistacja); border-color: var(--c-pistacja); color: var(--atrament); }
.crj-buy__btn.disabled, .crj-buy__btn.wc-variation-selection-needed, .crj-buy__btn.wc-variation-is-unavailable { opacity: .55; cursor: not-allowed; }
.crj-buy__note { font-family: var(--font-mono); font-size: 12px; line-height: 1.7; opacity: .75; }
.crj-buy__oos { font-family: var(--font-mono); font-size: 13px; color: var(--terakota-ciemna); margin: 0; }
.crj-notify { display: flex; flex-direction: column; gap: 12px; }
.crj-notify__form { display: flex; flex-direction: column; gap: 6px; }
.crj-notify__row { display: flex; gap: 10px; flex-wrap: wrap; }
.crj-notify__row .crj-input { flex: 1; min-width: 200px; }
.crj-notify .crj-form-msg { color: var(--terakota-ciemna); margin: 0; }
.crj-product__summary .crj-attention { margin-top: 6px; }
.crj-product__summary .crj-attention p { font-size: 15px; }
.crj-product__meta { display: flex; flex-direction: column; gap: 8px; font-family: var(--font-mono); font-size: 12.5px; letter-spacing: .04em; opacity: .75; border-top: 1.5px dashed var(--ink-35); padding-top: 16px; }
.crj-product__meta a { color: var(--terakota-ciemna); }
/* zakladki */
.crj-product__tabs { padding: 48px 0 72px; }
.crj-tabs { display: flex; flex-direction: column; gap: 32px; }
.crj-tabs__list { display: flex; gap: 10px; flex-wrap: wrap; }
.crj-tab { font-family: var(--font-mono); font-weight: 700; font-size: 13px; letter-spacing: .12em; text-transform: uppercase; border: 2px solid var(--atrament); border-radius: var(--r-pill); padding: 12px 24px; background: transparent; color: var(--atrament); transition: border-color var(--t-fast), color var(--t-fast), background var(--t-fast); }
.crj-tab:hover { border-color: var(--terakota-ciemna); color: var(--terakota-ciemna); }
.crj-tab.is-active { background: var(--atrament); color: var(--kremowy); border-color: var(--atrament); }
.crj-tabs__panel--opis { display: grid; grid-template-columns: 1.2fr 1fr; gap: 48px; align-items: start; }
.crj-product__desc { font-size: 17px; line-height: 1.7; max-width: 62ch; }
.crj-product__desc > * + * { margin-top: 1em; }
.crj-product__aside { display: flex; flex-direction: column; gap: 28px; }
.crj-brief { background: var(--kremowy); border: 2px solid var(--atrament); border-radius: var(--r-box); padding: 24px; display: flex; flex-direction: column; gap: 14px; }
.crj-brief__title { font-family: var(--font-mono); font-weight: 700; font-size: 12.5px; letter-spacing: .16em; text-transform: uppercase; }
.crj-brief__list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 10px; font-family: var(--font-mono); font-size: 13.5px; line-height: 1.5; }
.crj-brief__list li { display: flex; gap: 10px; align-items: flex-start; }
.crj-brief__list .crj-icon { flex: none; margin-top: 3px; color: var(--terakota-ciemna); }
.crj-tabs__panel--sklad { display: grid; grid-template-columns: 1fr 1.2fr; gap: 48px; align-items: start; }
.crj-product__ingredients { display: flex; flex-direction: column; gap: 18px; }
.crj-product__ingredients-text { font-size: 17px; line-height: 1.7; }
.crj-product__ingredients-note { font-size: 15px; line-height: 1.7; opacity: .8; }
.crj-nutrition { display: flex; flex-direction: column; border: 2px solid var(--atrament); border-radius: var(--r-box); overflow: hidden; font-family: var(--font-mono); font-size: 14px; }
.crj-nutrition__head { display: flex; justify-content: space-between; gap: 16px; padding: 14px 24px; background: var(--atrament); color: var(--kremowy); font-weight: 700; letter-spacing: .08em; }
.crj-nutrition__row { display: flex; justify-content: space-between; gap: 16px; padding: 13px 24px; border-bottom: 1.5px dashed var(--ink-35); }
.crj-nutrition__row:last-child { border-bottom: 0; }
.crj-nutrition__row.is-sub > :first-child { padding-left: 18px; }
.crj-nutrition__val { font-weight: 700; white-space: nowrap; }
/* opinie */
.crj-reviews { display: flex; flex-direction: column; gap: 32px; }
.crj-reviews__list-wrap { display: flex; flex-direction: column; gap: 24px; }
.crj-reviews__head { display: flex; align-items: baseline; gap: 18px; flex-wrap: wrap; }
.crj-reviews__avg { font-family: var(--font-display); font-weight: 850; font-size: 44px; line-height: 1; }
.crj-reviews__sub { font-family: var(--font-mono); font-size: 14px; color: var(--terakota-ciemna); }
.crj-reviews__title { font-family: var(--font-display); font-weight: 800; font-size: 26px; }
.crj-reviews__grid { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.crj-reviews__grid .children { list-style: none; padding: 0; margin: 12px 0 0; }
.crj-review { margin: 0; }
.crj-review__box { background: var(--kremowy); border: 2px solid var(--atrament); border-radius: var(--r-box); padding: 22px; display: flex; flex-direction: column; gap: 12px; height: 100%; }
.crj-review__stars { font-family: var(--font-mono); font-size: 12.5px; color: var(--terakota-ciemna); }
.crj-review__text { font-size: 15.5px; line-height: 1.6; }
.crj-review__text p { margin: 0 0 .5em; }
.crj-review__text p:last-child { margin: 0; }
.crj-review__pending { font-family: var(--font-mono); font-size: 12px; }
.crj-review__meta { font-family: var(--font-mono); font-size: 12px; opacity: .7; margin-top: auto; }
.crj-reviews__note, .crj-reviews__login { font-family: var(--font-mono); font-size: 12.5px; opacity: .7; margin: 0; }
.crj-reviews__form-wrap { max-width: 640px; }
.crj-review-form { display: flex; flex-direction: column; gap: 16px; }
.crj-review-form__title { display: block; font-family: var(--font-display); font-weight: 800; font-size: 26px; margin-bottom: 8px; }
.crj-review-form .crj-field { margin: 0; }
.crj-review-form .crj-field label { font-size: 12px; letter-spacing: .08em; }
.crj-review-form textarea { min-height: 130px; resize: vertical; }
.crj-review-form .form-submit { margin: 0; }
.crj-review-form .comment-form-cookies-consent { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; }
.crj-review-form .comment-form-cookies-consent input { margin-top: 4px; accent-color: var(--terakota-ciemna); }
.crj-review-form .comment-form-cookies-consent label { font-family: var(--font-text); text-transform: none; letter-spacing: 0; font-size: 14px; }
.crj-review-form p.stars { display: flex; gap: 4px; margin: 0; }
.crj-review-form p.stars a { display: inline-block; width: 24px; height: 24px; font-size: 0; position: relative; color: var(--terakota-ciemna); text-decoration: none; }
.crj-review-form p.stars a::before { content: '☆'; font-size: 24px; line-height: 1; position: absolute; inset: 0; }
.crj-review-form p.stars.selected a.active::before, .crj-review-form p.stars.selected a.active ~ a::before { content: '☆'; }
.crj-review-form p.stars.selected a:not(.active)::before, .crj-review-form p.stars.selected a.active::before, .crj-review-form p.stars:hover a::before { content: '★'; }
.crj-review-form p.stars.selected a.active ~ a::before, .crj-review-form p.stars a:hover ~ a::before { content: '☆'; }
.crj-review-form #rating { display: none; }
.crj-review-form select#rating { max-width: 240px; }
/* powiazane */
.crj-related { padding: 60px 0 40px; background: var(--kremowy); }
.crj-related__inner { display: flex; flex-direction: column; gap: 24px; }
.crj-related .crj-eyebrow-line { font-weight: 700; }
.crj-related .crj-pcard__media { height: 190px; }
.crj-related .crj-pcard__title { font-size: 22px; }
.crj-product .crj-newsletter { padding-top: 20px; }
@media (max-width: 1023px) {
  .crj-product__grid { grid-template-columns: 1fr; gap: 36px; }
  .crj-product__gallery { position: static; }
  .crj-product__stage, .crj-product__img { height: 420px; }
  .crj-tabs__panel--opis, .crj-tabs__panel--sklad { grid-template-columns: 1fr; gap: 32px; }
  .crj-reviews__grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 767px) {
  .crj-crumbs { padding-top: 16px; }
  .crj-crumbs__inner { font-size: 11.5px; gap: 8px; }
  .crj-product__main { padding: 22px 0 48px; }
  .crj-product__stage, .crj-product__img { height: 320px; }
  .crj-product__blob { inset: 10px; }
  .crj-product__stamp { width: 84px; height: 84px; }
  .crj-product__thumb img { width: 72px; height: 60px; }
  .crj-product__thumb { border-radius: 14px; }
  .crj-product__title { font-size: 34px; }
  .crj-product__title .crj-dot { width: 13px; height: 13px; }
  .crj-buy__box { padding: 18px; }
  .crj-buy__price { font-size: 30px; }
  .crj-buy__actions { flex-direction: column; }
  .crj-buy__actions .crj-qty { align-self: flex-start; }
  .crj-buy__btn { width: 100%; }
  .crj-opt { padding: 11px 18px; font-size: 12.5px; }
  .crj-product__tabs { padding: 36px 0 52px; }
  .crj-tabs { gap: 24px; }
  .crj-tab { font-size: 12px; padding: 11px 18px; }
  .crj-tabs__list { flex-wrap: nowrap; overflow-x: auto; margin: 0 calc(-1 * var(--gutter)); padding: 4px var(--gutter); scrollbar-width: none; }
  .crj-tabs__list::-webkit-scrollbar { display: none; }
  .crj-tab { white-space: nowrap; }
  .crj-reviews__grid { grid-template-columns: 1fr; }
  .crj-reviews__avg { font-size: 36px; }
  .crj-nutrition__head, .crj-nutrition__row { padding-left: 16px; padding-right: 16px; }
  .crj-related { padding: 40px 0 24px; }
  .crj-related__grid { display: flex; gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; margin: 0 calc(-1 * var(--gutter)); padding: 14px var(--gutter) 10px; scrollbar-width: none; }
  .crj-related__grid::-webkit-scrollbar { display: none; }
  .crj-related__grid > * { scroll-snap-align: start; flex: 0 0 264px; }
}

/* =========================================================================
   3. KOSZYK
   ========================================================================= */
.crj-cart { background: var(--kremowy); padding: 44px 0 72px; }
.crj-cart__head { display: flex; flex-direction: column; gap: 22px; margin-bottom: 34px; }
.crj-cart__grid { display: grid; grid-template-columns: 1.5fr 1fr; gap: 40px; align-items: start; }
.crj-cart__form { min-width: 0; }
.crj-cart__items { display: flex; flex-direction: column; gap: 16px; }
.crj-cart-item { background: var(--biel); border: 2px solid var(--atrament); border-radius: var(--r-box); padding: 18px; display: grid; grid-template-columns: 96px 1fr auto auto auto; gap: 18px; align-items: center; }
.crj-cart-item__thumb img, .crj-cart-item__img { width: 96px; height: 96px; object-fit: cover; border-radius: 18px; display: block; }
.crj-cart-item__info { display: flex; flex-direction: column; gap: 5px; min-width: 0; }
.crj-cart-item__name { font-family: var(--font-display); font-weight: 800; font-size: 19px; line-height: 1.2; color: var(--atrament); text-decoration: none; }
.crj-cart-item__name:hover { color: var(--terakota-ciemna); }
.crj-cart-item__variant, .crj-cart-item__unit { font-family: var(--font-mono); font-size: 12.5px; opacity: .75; }
.crj-cart-item__unit .woocommerce-Price-amount { font-weight: 400; }
.crj-cart-item__qty .crj-qty { padding: 3px; }
.crj-cart-item__qty .crj-qty__btn { width: 36px; height: 36px; }
.crj-cart-item__qty .crj-qty__input { font-size: 15px; width: 40px; }
.crj-cart-item__total { font-family: var(--font-mono); font-weight: 700; font-size: 16px; min-width: 74px; text-align: right; }
.crj-cart-item__remove-btn { width: 38px; height: 38px; border: 2px solid var(--ink-20); border-radius: 50%; color: var(--atrament); display: flex; align-items: center; justify-content: center; text-decoration: none; transition: border-color var(--t-fast), color var(--t-fast); }
.crj-cart-item__remove-btn:hover { border-color: var(--terakota-ciemna); color: var(--terakota-ciemna); }
.backorder_notification { font-family: var(--font-mono); font-size: 12px; color: var(--terakota-ciemna); margin: 0; }
.crj-cart__actions { display: flex; justify-content: space-between; align-items: center; gap: 16px; flex-wrap: wrap; padding-top: 6px; }
.crj-cart__continue { font-family: var(--font-mono); font-weight: 700; font-size: 13px; letter-spacing: .1em; text-transform: uppercase; color: var(--terakota-ciemna); text-decoration: none; }
.crj-cart__continue:hover { text-decoration: underline; }
.crj-cart__update { order: 3; }
.crj-cart__update[disabled] { opacity: .35; cursor: default; }
html:not(.no-js) .crj-cart__update { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); opacity: 0; pointer-events: none; }
.crj-cart__aside { position: sticky; top: calc(var(--header-h) + var(--topbar-h) + 14px); }
.crj-cart__empty { display: flex; flex-direction: column; align-items: center; gap: 16px; text-align: center; background: var(--biel); border: 2px dashed var(--ink-35); border-radius: var(--r-box); padding: 48px 32px; margin: 0; }
.crj-cart__empty-title { font-family: var(--font-display); font-weight: 800; font-size: 26px; }
.crj-cart__empty-text { font-size: 15.5px; max-width: 46ch; }
.crj-cart .blockUI.blockOverlay { border-radius: var(--r-box); }
@media (max-width: 1023px) {
  .crj-cart__grid { grid-template-columns: 1fr; gap: 32px; }
  .crj-cart__aside { position: static; }
}
@media (max-width: 767px) {
  .crj-cart { padding: 32px 0 56px; }
  .crj-cart__head { gap: 16px; margin-bottom: 24px; }
  .crj-cart-item { grid-template-columns: 72px 1fr auto; grid-template-areas: "thumb info remove" "qty qty total"; gap: 12px 14px; padding: 14px; }
  .crj-cart-item__thumb { grid-area: thumb; }
  .crj-cart-item__thumb img, .crj-cart-item__img { width: 72px; height: 72px; border-radius: 14px; }
  .crj-cart-item__info { grid-area: info; }
  .crj-cart-item__name { font-size: 17px; }
  .crj-cart-item__remove { grid-area: remove; align-self: start; }
  .crj-cart-item__qty { grid-area: qty; }
  .crj-cart-item__total { grid-area: total; align-self: center; }
  .crj-cart__actions { flex-direction: column; align-items: stretch; }
  .crj-coupon { width: 100%; }
  .crj-coupon__input { flex: 1; width: auto; min-width: 0; }
  .crj-cart__update { align-self: flex-start; }
  .crj-summary { padding: 20px; }
  .crj-summary__total-val { font-size: 30px; }
}

/* =========================================================================
   4. CHECKOUT
   ========================================================================= */
.crj-checkout { background: var(--kremowy); padding: 44px 0 72px; }
.crj-checkout__head { display: flex; flex-direction: column; gap: 22px; margin-bottom: 34px; }
.crj-checkout__notices { margin-bottom: 8px; }
.crj-checkout__notices .crj-notice { margin-bottom: 14px; }
.crj-checkout__form { margin: 0; }
.crj-checkout__grid { display: grid; grid-template-columns: 1.5fr 1fr; gap: 40px; align-items: start; }
.crj-checkout__main { display: flex; flex-direction: column; gap: 28px; min-width: 0; }
.crj-checkout__details { display: flex; flex-direction: column; gap: 28px; }
.crj-checkout__virtual { display: flex; flex-direction: column; }
.crj-payment { display: flex; flex-direction: column; gap: 28px; }
.crj-place { display: flex; flex-direction: column; gap: 18px; margin: 0; }
.crj-place noscript { font-family: var(--font-mono); font-size: 12.5px; }
.crj-terms { display: flex; flex-direction: column; gap: 12px; }
.crj-terms__row { margin: 0; }
.crj-terms .crj-check { align-items: flex-start; line-height: 1.55; }
.crj-terms .crj-check input { margin-top: 2px; }
.crj-terms .woocommerce-privacy-policy-text { font-size: 13.5px; line-height: 1.6; opacity: .8; }
.crj-terms .woocommerce-privacy-policy-text p { margin: 0; }
.crj-terms .woocommerce-terms-and-conditions { max-height: 200px; overflow: auto; background: var(--biel); border: 1.5px dashed var(--ink-35); border-radius: 14px; padding: 16px; font-size: 14px; }
.crj-place__btn { font-size: 15px; padding: 18px 28px; }
.crj-place__note { font-family: var(--font-mono); font-size: 11.5px; line-height: 1.7; opacity: .7; text-align: center; }
.crj-checkout__aside { position: sticky; top: calc(var(--header-h) + var(--topbar-h) + 14px); }
.crj-checkout__summary { background: var(--biel); border: 2px solid var(--atrament); border-radius: var(--r-card); padding: 26px; display: flex; flex-direction: column; gap: 16px; }
.crj-review { display: flex; flex-direction: column; gap: 16px; }
.crj-review__items { display: flex; flex-direction: column; gap: 14px; border-top: 1.5px dashed var(--ink-35); padding-top: 16px; }
.crj-review__item { display: flex; gap: 14px; align-items: center; }
.crj-review__thumb img { width: 56px; height: 56px; object-fit: cover; border-radius: 14px; flex: none; display: block; }
.crj-review__body { display: flex; flex-direction: column; gap: 2px; flex: 1; min-width: 0; font-size: 14.5px; }
.crj-review__variant { font-family: var(--font-mono); font-size: 11.5px; opacity: .7; }
.crj-review__total { font-family: var(--font-mono); font-weight: 700; font-size: 14px; white-space: nowrap; }
.crj-next { background: var(--kremowy); border: 1.5px dashed var(--ink-35); border-radius: 16px; padding: 16px 18px; display: flex; flex-direction: column; gap: 8px; font-family: var(--font-mono); font-size: 12px; line-height: 1.7; }
.crj-next__title { font-weight: 700; letter-spacing: .1em; text-transform: uppercase; }
.crj-checkout .woocommerce-form-login { background: var(--biel); border: 2px solid var(--atrament); border-radius: var(--r-box); padding: 22px; margin: 0 0 20px; display: flex; flex-direction: column; gap: 14px; }
.crj-checkout .woocommerce-form-login p { margin: 0; }
.crj-checkout .woocommerce-form-login .form-row label:not(.checkbox) { display: block; font-family: var(--font-mono); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; margin-bottom: 7px; }
.crj-checkout .woocommerce-form-login .input-text { width: 100%; font-size: 15.5px; border: 2px solid var(--atrament); border-radius: 14px; padding: 13px 16px; background: var(--kremowy); }
.crj-checkout .woocommerce-form-login .button { display: inline-flex; font-family: var(--font-mono); font-weight: 700; font-size: 13px; letter-spacing: .12em; text-transform: uppercase; background: var(--terakota-ciemna); color: var(--kremowy); border: 2px solid var(--terakota-ciemna); border-radius: var(--r-pill); padding: 13px 24px; }
.crj-checkout .woocommerce-form-login .lost_password a { font-family: var(--font-mono); font-size: 12.5px; }
.crj-checkout .blockUI.blockOverlay { border-radius: var(--r-card); }
@media (max-width: 1023px) {
  .crj-checkout__grid { grid-template-columns: 1fr; gap: 32px; }
  .crj-checkout__aside { position: static; }
}
@media (max-width: 767px) {
  .crj-checkout { padding: 32px 0 56px; }
  .crj-checkout__head { gap: 16px; margin-bottom: 24px; }
  .crj-fieldset { padding: 20px 16px; border-radius: 22px; }
  .crj-fieldset__legend { font-size: 12px; margin-left: -8px; padding: 0 8px; }
  .crj-fields__grid { grid-template-columns: 1fr; gap: 12px; }
  .form-row.form-row-first, .form-row.form-row-last { grid-column: 1 / -1; }
  .crj-method__label { padding: 13px 14px; gap: 12px; }
  .crj-method__name { font-size: 15px; }
  .crj-checkout__summary { padding: 20px; }
  .crj-checkout__main, .crj-checkout__details, .crj-payment { gap: 20px; }
}

/* =========================================================================
   5. POTWIERDZENIE
   ========================================================================= */
.crj-thanks__inner { align-items: center; padding-bottom: 64px; }
.crj-thanks__inner.has-aside { grid-template-columns: 1.2fr 1fr; }
.crj-thanks__title { font-size: clamp(48px, 5.5vw, 84px); }
.crj-thanks__pills { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 4px; }
.crj-thanks__pills .crj-pill { font-weight: 700; font-size: 13px; letter-spacing: .12em; padding: 12px 22px; }
.crj-thanks__pills .crj-pill--dashed { font-weight: 400; letter-spacing: .08em; text-transform: none; border-style: dashed; border-color: var(--cream-50); }
.crj-thanks__media { position: relative; height: 380px; width: 100%; max-width: 520px; justify-self: end; padding: 0; align-self: center; }
.crj-thanks__media .crj-blob { inset: 10px; }
.crj-thanks__img { position: relative; width: 100%; height: 380px; object-fit: cover; border-radius: 40% 60% 55% 45% / 48% 44% 56% 52%; }
.crj-thanks__badge { position: absolute; bottom: 14px; left: 14px; background: var(--atrament); color: var(--kremowy); font-family: var(--font-mono); font-size: 11.5px; letter-spacing: .12em; padding: 7px 14px; border-radius: var(--r-pill); transform: rotate(-3deg); }
.crj-thanks__details { padding: 48px 0 72px; background: var(--kremowy); }
.crj-thanks__grid { display: grid; grid-template-columns: 1.5fr 1fr; gap: 40px; align-items: start; }
.crj-thanks__next { display: flex; flex-direction: column; gap: 20px; min-width: 0; }
.crj-thanks__next .crj-eyebrow-line { font-weight: 700; }
.crj-thanks__cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.crj-thanks__card { background: var(--biel); border: 2px solid var(--atrament); border-radius: var(--r-box); padding: 22px; display: flex; flex-direction: column; gap: 10px; }
.crj-thanks__num { font-family: var(--font-display); font-weight: 850; font-size: 30px; color: var(--terakota-ciemna); line-height: 1; }
.crj-thanks__card-title { font-weight: 600; font-size: 16px; }
.crj-thanks__card-text { font-family: var(--font-mono); font-size: 12.5px; line-height: 1.6; opacity: .75; }
.crj-thanks__cta { background: var(--biel); border: 2px solid var(--atrament); border-radius: var(--r-box); padding: 24px; display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
.crj-thanks__cta > span { flex: 1; min-width: 240px; font-size: 15.5px; line-height: 1.6; }
.crj-thanks__hooks:empty { display: none; }
.crj-thanks__hooks { display: flex; flex-direction: column; gap: 16px; font-size: 15.5px; }
.crj-thanks__hooks h2, .crj-thanks__hooks h3 { margin: 0 0 10px; font-family: var(--font-mono); font-weight: 700; font-size: 13px; letter-spacing: .14em; text-transform: uppercase; line-height: 1.5; }
.crj-thanks__hooks h3 { font-size: 15px; letter-spacing: .04em; text-transform: none; font-family: var(--font-text); font-weight: 600; margin-top: 14px; }
.crj-thanks__hooks h2 + h3 { margin-top: 0; }
.crj-thanks__hooks ul.wc-bacs-bank-details, .crj-thanks__hooks ul.order_details { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 6px; font-family: var(--font-mono); font-size: 13.5px; line-height: 1.6; }
.crj-thanks__hooks ul.wc-bacs-bank-details li { display: flex; flex-wrap: wrap; gap: 4px 10px; justify-content: space-between; border-top: 1.5px dashed var(--ink-35); padding-top: 6px; }
.crj-thanks__hooks ul.wc-bacs-bank-details li:first-child { border-top: 0; padding-top: 0; }
.crj-thanks__hooks ul.wc-bacs-bank-details li strong { font-weight: 700; }
.crj-thanks__hooks section, .crj-thanks__hooks .woocommerce-bacs-bank-details, .crj-thanks__hooks .woocommerce-order-details, .crj-thanks__hooks .woocommerce-customer-details { background: var(--biel); border: 2px solid var(--atrament); border-radius: var(--r-box); padding: 22px 24px; overflow: hidden; }
.crj-thanks__hooks p { margin: 0 0 8px; }
.crj-thanks__hooks p:last-child { margin-bottom: 0; }
.crj-thanks__aside { align-self: start; }
@media (max-width: 1023px) {
  .crj-thanks__inner.has-aside { grid-template-columns: 1fr; }
  .crj-thanks__media { display: block; max-width: none; height: 300px; }
  .crj-thanks__img { height: 300px; }
  .crj-thanks__grid { grid-template-columns: 1fr; gap: 32px; }
}
@media (max-width: 767px) {
  .crj-thanks__media { display: none; }
  .crj-thanks__cards { grid-template-columns: 1fr; }
  .crj-thanks__details { padding: 32px 0 56px; }
  .crj-thanks__pills .crj-pill { font-size: 11.5px; padding: 10px 16px; }
}

/* =========================================================================
   6. MOJE KONTO
   ========================================================================= */
.crj-account { background: var(--kremowy); padding: 56px 0 80px; }
.crj-account__inner { display: flex; flex-direction: column; gap: 30px; }
.crj-account--login .crj-account__inner { gap: 36px; }
.crj-account__notices:empty { display: none; }
.crj-account__notices { margin: -12px 0 -12px; }
.crj-account__head { display: flex; justify-content: space-between; align-items: flex-end; gap: 24px; flex-wrap: wrap; }
.crj-account__hello { display: flex; flex-direction: column; gap: 8px; }
.crj-account__eyebrow { color: var(--terakota-ciemna); font-size: 13px; letter-spacing: .18em; }
.crj-account__grid { display: grid; grid-template-columns: 260px 1fr; gap: 36px; align-items: start; }
.crj-account__nav { position: sticky; top: calc(var(--header-h) + var(--topbar-h) + 14px); }
.crj-account__nav ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.crj-account__navlink { display: flex; align-items: center; justify-content: space-between; gap: 12px; font-family: var(--font-mono); font-weight: 700; font-size: 13px; letter-spacing: .1em; text-transform: uppercase; border: 2px solid var(--atrament); background: transparent; color: var(--atrament); border-radius: var(--r-pill); padding: 13px 22px; text-decoration: none; transition: border-color var(--t-fast), background var(--t-fast), color var(--t-fast); }
.crj-account__navlink:hover { border-color: var(--terakota-ciemna); color: var(--terakota-ciemna); }
.crj-account__nav .is-active .crj-account__navlink, .crj-account__navlink[aria-current="page"] { background: var(--terakota-ciemna); border-color: var(--terakota-ciemna); color: var(--kremowy); }
.crj-account__navlink--logout { border-style: dashed; border-color: var(--ink-35); font-weight: 400; }
.crj-account__content { min-width: 0; display: flex; flex-direction: column; gap: 20px; font-size: 15.5px; }
.crj-account__content .woocommerce-notices-wrapper:empty { display: none; }
/* logowanie */
.crj-login { display: grid; grid-template-columns: 1fr; gap: 40px; align-items: start; max-width: 600px; }
.crj-login--two { grid-template-columns: 1fr 1fr; max-width: none; }
.crj-login__card { background: var(--biel); border: 2px solid var(--atrament); border-radius: var(--r-card); padding: 30px; display: flex; flex-direction: column; gap: 18px; margin: 0; }
.crj-login__card p { margin: 0; }
.crj-login__card .crj-field label { display: block; margin-bottom: 7px; font-size: 12px; letter-spacing: .08em; }
.crj-login__card--register { background: var(--terakota-ciemna); color: var(--kremowy); }
.crj-login__card--register .crj-field label { color: var(--kremowy); }
.crj-login__card--register .input-text:focus { border-color: var(--atrament); }
.crj-login__card--register .required { color: var(--kremowy); }
.crj-login__card--register a { color: var(--kremowy); }
.crj-login__card--register .crj-check input { accent-color: var(--atrament); }
.crj-login__title { font-family: var(--font-display); font-weight: 800; font-size: 28px; }
.crj-login__text { font-size: 15px; line-height: 1.6; opacity: .95; }
.crj-login__hint { font-family: var(--font-mono); font-size: 12px; line-height: 1.7; opacity: .9; }
.crj-login__row { display: flex; justify-content: space-between; align-items: center; gap: 14px; flex-wrap: wrap; }
.crj-login__lost { font-family: var(--font-mono); font-size: 12.5px; letter-spacing: .06em; }
.crj-login__terms { align-items: flex-start; font-size: 13.5px; line-height: 1.55; }
.crj-login__terms input { margin-top: 2px; }
.crj-login__card .woocommerce-privacy-policy-text { font-size: 13px; line-height: 1.6; opacity: .9; }
.crj-login__card .woocommerce-privacy-policy-text p { margin: 0; }
/* kokpit */
.crj-dash { display: flex; flex-direction: column; gap: 20px; }
.crj-dash__last { background: var(--terakota-ciemna); color: var(--kremowy); border: 2px solid var(--atrament); border-radius: var(--r-card); padding: 26px; display: flex; align-items: center; gap: 24px; flex-wrap: wrap; }
.crj-dash__last a:not(.crj-btn) { color: inherit; }
.crj-dash__last-body { display: flex; flex-direction: column; gap: 8px; flex: 1; min-width: 260px; }
.crj-dash__eyebrow { font-family: var(--font-mono); font-size: 12px; letter-spacing: .16em; text-transform: uppercase; opacity: .85; }
.crj-dash__headline { font-family: var(--font-display); font-weight: 800; font-size: 26px; line-height: 1.2; }
.crj-dash__status { font-family: var(--font-mono); font-size: 12.5px; line-height: 1.7; opacity: .9; }
.crj-dash__track { display: flex; align-items: center; gap: 10px; font-family: var(--font-mono); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; flex-wrap: wrap; }
.crj-track { border: 1.5px dashed var(--cream-50); border-radius: var(--r-pill); padding: 7px 14px; opacity: .7; display: inline-flex; align-items: center; gap: 6px; }
.crj-track.is-current { border-style: solid; border-color: var(--kremowy); font-weight: 700; opacity: 1; }
.crj-track.is-done { background: var(--kremowy); color: var(--terakota-ciemna); border-color: var(--kremowy); font-weight: 700; opacity: 1; }
.crj-track__sep { opacity: .6; }
.crj-dash__stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }
.crj-dash__stat { background: var(--biel); border: 2px solid var(--atrament); border-radius: var(--r-box); padding: 22px; display: flex; flex-direction: column; gap: 6px; }
.crj-dash__stat-num { font-family: var(--font-display); font-weight: 850; font-size: 34px; color: var(--terakota-ciemna); line-height: 1.1; }
.crj-dash__stat-num--text { font-size: 28px; overflow-wrap: anywhere; }
.crj-dash__stat-label { font-family: var(--font-mono); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; opacity: .75; }
.crj-dash__reorder { background: var(--biel); border: 2px solid var(--atrament); border-radius: var(--r-box); padding: 24px; display: flex; align-items: center; gap: 20px; flex-wrap: wrap; }
.crj-dash__img { width: 72px; height: 72px; object-fit: cover; border-radius: 16px; flex: none; }
.crj-dash__reorder-text { flex: 1; min-width: 240px; font-size: 15.5px; line-height: 1.6; }
/* zamowienia */
.crj-orders { display: flex; flex-direction: column; gap: 16px; }
.crj-order { background: var(--biel); border: 2px solid var(--atrament); border-radius: var(--r-box); padding: 22px; display: grid; grid-template-columns: auto 1fr auto auto; gap: 18px; align-items: center; }
.crj-order__num { font-family: var(--font-mono); font-weight: 700; font-size: 14px; }
.crj-order__body { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.crj-order__items { font-size: 15px; font-weight: 600; }
.crj-order__meta { font-family: var(--font-mono); font-size: 12px; opacity: .7; }
.crj-order__meta .woocommerce-Price-amount { font-weight: 400; }
.crj-status { font-family: var(--font-mono); font-size: 11px; letter-spacing: .08em; text-transform: uppercase; font-weight: 700; border: 1.5px solid var(--atrament); border-radius: var(--r-pill); padding: 6px 14px; white-space: nowrap; }
.crj-status.is-processing { background: var(--c-ziemny); }
.crj-status.is-completed { background: var(--c-pistacja); color: var(--kremowy); }
.crj-status.is-hold { background: transparent; }
.crj-status.is-muted { border-style: dashed; border-color: var(--ink-35); color: var(--ink-45); font-weight: 400; }
.crj-order__actions { display: flex; gap: 14px; flex-wrap: wrap; justify-content: flex-end; }
.crj-order__link { font-family: var(--font-mono); font-weight: 700; font-size: 12px; letter-spacing: .08em; text-transform: uppercase; color: var(--terakota-ciemna); text-decoration: none; }
.crj-order__link:hover { text-decoration: underline; }
.crj-orders__end { display: block; font-family: var(--font-mono); font-size: 12px; opacity: .6; text-align: center; padding-top: 6px; }
.crj-orders__pagination { display: flex; justify-content: space-between; gap: 12px; }
.crj-orders__empty { background: var(--biel); border: 2px dashed var(--ink-35); border-radius: var(--r-box); padding: 40px 28px; display: flex; flex-direction: column; align-items: center; gap: 16px; text-align: center; }
.crj-orders__empty-title { font-family: var(--font-display); font-weight: 800; font-size: 24px; }
/* domyslne szablony WC w koncie: adresy, dane konta, szczegoly zamowienia */
.crj-account__content h2, .crj-account__content h3 { font-family: var(--font-mono); font-weight: 700; font-size: 12.5px; letter-spacing: .16em; text-transform: uppercase; }
.crj-account__content .woocommerce-Addresses { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.crj-account__content .woocommerce-Address { background: var(--biel); border: 2px solid var(--atrament); border-radius: var(--r-box); padding: 24px; display: flex; flex-direction: column; gap: 12px; }
.crj-account__content .woocommerce-Address-title { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.crj-account__content .woocommerce-Address address { font-style: normal; font-size: 15.5px; line-height: 1.7; }
.crj-account__content .woocommerce-Address .edit, .crj-account__content .woocommerce-Address-title a { font-family: var(--font-mono); font-weight: 700; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; border: 2px solid var(--atrament); color: var(--atrament); border-radius: var(--r-pill); padding: 8px 18px; text-decoration: none; }
.crj-account__content .woocommerce-Address .edit:hover { background: var(--atrament); color: var(--kremowy); }
.crj-account__content .woocommerce-EditAccountForm, .crj-account__content .woocommerce-address-fields, .crj-account__content form.edit-account { background: var(--biel); border: 2px solid var(--atrament); border-radius: var(--r-box); padding: 26px; display: flex; flex-direction: column; gap: 16px; max-width: 640px; }
.crj-account__content .woocommerce-address-fields__field-wrapper, .crj-account__content .woocommerce-EditAccountForm { }
.crj-account__content .form-row { margin: 0; }
.crj-account__content .form-row label { display: block; font-family: var(--font-mono); font-size: 12px; letter-spacing: .08em; text-transform: uppercase; margin-bottom: 7px; }
.crj-account__content .form-row .required { color: var(--terakota-ciemna); text-decoration: none; }
.crj-account__content .form-row .optional { display: none; }
.crj-account__content .form-row-first, .crj-account__content .form-row-last { width: calc(50% - 7px); display: inline-block; vertical-align: top; }
.crj-account__content .form-row-first { margin-right: 14px; }
.crj-account__content fieldset { border: 0; padding: 18px 0 0; margin: 0; border-top: 1.5px dashed var(--ink-35); display: flex; flex-direction: column; gap: 14px; }
.crj-account__content legend { font-family: var(--font-mono); font-weight: 700; font-size: 12.5px; letter-spacing: .16em; text-transform: uppercase; padding: 0 0 6px; }
.crj-account__content .woocommerce-Button, .crj-account__content button.button { display: inline-flex; align-self: flex-start; font-family: var(--font-mono); font-weight: 700; font-size: 13px; letter-spacing: .12em; text-transform: uppercase; background: var(--terakota-ciemna); color: var(--kremowy); border: 2px solid var(--terakota-ciemna); border-radius: var(--r-pill); padding: 14px 26px; }
.crj-account__content .woocommerce-Button:hover, .crj-account__content button.button:hover { background: var(--atrament); border-color: var(--atrament); }
.crj-account__content .show-password-input { top: 50%; transform: translateY(-50%); right: 14px; }
.crj-account__content .woocommerce-password-strength, .crj-account__content .woocommerce-password-hint { font-family: var(--font-mono); font-size: 12px; margin-top: 6px; }
.crj-account__content .woocommerce-address-fields .select2-container .select2-selection--single { height: auto; border: 2px solid var(--atrament); border-radius: 14px; background: var(--kremowy); }
.crj-account__content .woocommerce-address-fields .select2-container .select2-selection--single .select2-selection__rendered { padding: 12px 40px 12px 16px; line-height: 1.4; }
.crj-account__content .woocommerce-address-fields .select2-container .select2-selection--single .select2-selection__arrow { height: 100%; right: 10px; }
/* view-order: domyslna tabela WC */
.crj-account__content .woocommerce-order-details, .crj-account__content .woocommerce-customer-details { background: var(--biel); border: 2px solid var(--atrament); border-radius: var(--r-box); padding: 24px; margin: 0; }
.crj-account__content .woocommerce-customer-details { margin-top: 20px; }
.crj-account__content .woocommerce-customer-details .woocommerce-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
.crj-account__content .woocommerce-customer-details address { font-style: normal; line-height: 1.7; }
.crj-account__content .woocommerce-column__title { margin-bottom: 8px; }
.crj-account__content .shop_table { width: 100%; border-collapse: collapse; font-size: 15px; }
.crj-account__content .shop_table th, .crj-account__content .shop_table td { text-align: left; padding: 12px 8px; border-bottom: 1.5px dashed var(--ink-35); vertical-align: top; }
.crj-account__content .shop_table th { font-family: var(--font-mono); font-size: 12px; letter-spacing: .1em; text-transform: uppercase; }
.crj-account__content .shop_table td:last-child, .crj-account__content .shop_table th:last-child { text-align: right; }
.crj-account__content .shop_table tfoot tr:last-child th, .crj-account__content .shop_table tfoot tr:last-child td { border-bottom: 0; font-weight: 700; }
.crj-account__content .shop_table .wc-item-meta { list-style: none; margin: 4px 0 0; padding: 0; font-family: var(--font-mono); font-size: 12px; opacity: .75; }
.crj-account__content .shop_table .wc-item-meta li { display: inline; }
.crj-account__content .shop_table .wc-item-meta li + li::before { content: ' · '; }
.crj-account__content .shop_table .wc-item-meta p { display: inline; margin: 0; }
.crj-account__content .order-again .button, .crj-account__content .woocommerce-order-details .button { display: inline-flex; margin-top: 16px; }
.crj-account__content mark { background: none; font-weight: 700; }
.crj-account__content .woocommerce-message .button, .crj-account__content .woocommerce-info .button { margin-left: 0; margin-right: 10px; }
@media (max-width: 1023px) {
  .crj-account__grid { grid-template-columns: 1fr; gap: 24px; }
  .crj-account__nav { position: static; }
  .crj-account__nav ul { flex-direction: row; flex-wrap: wrap; }
  .crj-login--two { grid-template-columns: 1fr; gap: 24px; }
  .crj-dash__stats { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 767px) {
  .crj-account { padding: 36px 0 60px; }
  .crj-account__inner { gap: 22px; }
  .crj-account__nav ul { flex-wrap: nowrap; overflow-x: auto; margin: 0 calc(-1 * var(--gutter)); padding: 4px var(--gutter); scrollbar-width: none; }
  .crj-account__nav ul::-webkit-scrollbar { display: none; }
  .crj-account__navlink { white-space: nowrap; font-size: 12px; padding: 11px 18px; }
  .crj-account__navlink span:last-child { display: none; }
  .crj-login__card { padding: 22px; border-radius: 22px; }
  .crj-dash__stats { grid-template-columns: 1fr; gap: 12px; }
  .crj-dash__last { padding: 20px; }
  .crj-order { grid-template-columns: auto 1fr; gap: 10px 14px; padding: 18px; }
  .crj-order__body { grid-column: 1 / -1; }
  .crj-order__actions { justify-content: flex-start; }
  .crj-order .crj-status { justify-self: end; }
  .crj-account__content .woocommerce-Addresses, .crj-account__content .woocommerce-customer-details .woocommerce-columns { grid-template-columns: 1fr; }
  .crj-account__content .form-row-first, .crj-account__content .form-row-last { width: 100%; display: block; margin-right: 0; }
  .crj-account__content .woocommerce-EditAccountForm, .crj-account__content .woocommerce-address-fields, .crj-account__content .woocommerce-order-details, .crj-account__content .woocommerce-customer-details { padding: 18px; }
}
