/* Elementy spoza makiety: podstrony, formularze, koszyk, zgody cookies. */
.pd-site [hidden] {display: none !important;}
.pd-site .bd-footer-links {flex-wrap: wrap; row-gap: 4px;}
.pd-site .bd-footer-links a,
.pd-site .bd-footer-links button {background: none; border: 0; padding: 5px 0; font-size: 14px; color: #43637f; cursor: pointer;}
.pd-site .bd-footer-links a:hover,
.pd-site .bd-footer-links button:hover {color: var(--bd-accent);}
.pd-site .bd-faq-item p a,
.pd-site .pd-prose a,
.pd-site .pd-muted a {color: var(--bd-accent); text-decoration: underline; text-underline-offset: 2px;}
.pd-site .bd-price-caption s {color: #8a97a3;}
.pd-site .bd-offer a.bd-action {width: 100%; margin-top: 20px; justify-content: space-between;}

/* Podstrony */
.pd-site .pd-page {padding-block: 56px 80px;}
.pd-site .pd-page-narrow {max-width: 720px;}
.pd-site .pd-page h1 {font-size: clamp(32px, 4cqw, 44px); letter-spacing: -1.5px; margin-top: 14px;}
.pd-site .pd-lead {font-size: 17px; line-height: 1.75; color: var(--bd-body); margin-top: 16px; max-width: 600px;}
.pd-site .pd-muted {font-size: 14px; line-height: 1.7; color: var(--bd-body);}
.pd-site .pd-card {background: var(--bd-white); border: 1px solid var(--bd-line); border-radius: 14px; padding: 32px;}
.pd-site .pd-card + .pd-card {margin-top: 20px;}
.pd-site .pd-grid-2 > .pd-card {margin-top: 0;}
.pd-site .pd-card h2 {font-size: 22px; letter-spacing: -.5px; margin-top: 0;}
.pd-site .pd-grid-2 {display: grid; grid-template-columns: 1.15fr .85fr; gap: 28px; align-items: start; margin-top: 34px;}

/* Formularze */
.pd-site .pd-form {display: grid; gap: 18px;}
.pd-site .pd-field label {display: block; font-size: 14px; font-weight: 650; margin-bottom: 7px;}
.pd-site .pd-field input,
.pd-site .pd-field textarea {width: 100%; font: inherit; font-size: 16px; color: var(--bd-ink); padding: 13px 15px; border: 1px solid #c3d4e3; border-radius: 8px; background: #fff; transition: border-color .15s, box-shadow .15s;}
.pd-site .pd-field textarea {min-height: 160px; resize: vertical;}
.pd-site .pd-field input:focus,
.pd-site .pd-field textarea:focus {outline: none; border-color: #6f97ba; box-shadow: 0 0 0 3px #dbe8f4;}
.pd-site .pd-field .pd-hint {font-size: 13px; color: var(--bd-body); margin-top: 6px;}
.pd-site .pd-field-error input,
.pd-site .pd-field-error textarea {border-color: #c0573c;}
.pd-site .pd-error {font-size: 13px; color: #a8452c; margin-top: 6px; line-height: 1.5;}
.pd-site .pd-check {display: flex; gap: 12px; align-items: flex-start; font-size: 14px; line-height: 1.6; color: var(--bd-body); cursor: pointer;}
.pd-site .pd-check input {width: 18px; height: 18px; margin: 2px 0 0; flex-shrink: 0; accent-color: var(--bd-accent);}
.pd-site .pd-check strong {color: var(--bd-ink);}
.pd-site .pd-check a {color: var(--bd-accent); text-decoration: underline;}
.pd-site .pd-checks {display: grid; gap: 12px; padding-top: 4px;}
.pd-site .pd-required {color: #a8452c;}
.pd-site .pd-hp {position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden;}
.pd-site .pd-form .bd-action {width: 100%; justify-content: space-between; cursor: pointer;}
.pd-site .pd-form .bd-action:disabled {opacity: .7;}

/* Komunikaty */
.pd-site .pd-alert {display: flex; gap: 12px; align-items: flex-start; padding: 15px 18px; border-radius: 10px; font-size: 15px; line-height: 1.6; margin-bottom: 20px;}
.pd-site .pd-alert .lucide {width: 20px !important; height: 20px !important; flex-shrink: 0; margin-top: 2px;}
.pd-site .pd-alert-error {background: #fbeee9; color: #8a3a24; border: 1px solid #efcfc3;}
.pd-site .pd-alert-success {background: #edf2e7; color: #4d6440; border: 1px solid #cddbbf;}
.pd-site .pd-alert-info {background: #eaf2fa; color: #34597a; border: 1px solid #cfe0ef;}

/* Podsumowanie zamówienia */
.pd-site .pd-summary {position: sticky; top: 24px; background: #e3eff9; border-color: #bfd5e7;}
.pd-site .pd-summary-product {display: flex; gap: 18px; align-items: center;}
.pd-site .pd-mini-book {width: 74px; height: 104px; flex-shrink: 0; border-radius: 2px 4px 4px 2px; background: #f3f8fc var(--bd-cover-art) center 80% / cover no-repeat; box-shadow: -4px 0 0 #3f6a8d, 6px 8px 14px #2e4d712b; position: relative;}
.pd-site .pd-mini-book span {position: absolute; top: 9px; left: 9px; right: 6px; font-size: 9px; line-height: 1.15; font-weight: 750; color: var(--bd-ink);}
.pd-site .pd-summary-product strong {display: block; font-size: 17px; line-height: 1.35;}
.pd-site .pd-summary-rows {margin-top: 22px; border-top: 1px solid #c7dbeb;}
.pd-site .pd-summary-rows div {display: flex; justify-content: space-between; gap: 16px; padding-block: 12px; border-bottom: 1px solid #c7dbeb; font-size: 15px;}
.pd-site .pd-summary-total {font-weight: 750; font-size: 18px !important;}
.pd-site .pd-summary .bd-offer-includes {margin-top: 18px;}
.pd-site .pd-secure {display: flex; gap: 8px; align-items: center; justify-content: center; font-size: 13px; color: var(--bd-body); margin-top: 4px;}
.pd-site .pd-secure .lucide {width: 14px !important; height: 14px !important;}

/* Status zamówienia / pobieranie */
.pd-site .pd-status {text-align: center; padding: 44px 36px;}
.pd-site .pd-status-icon {width: 72px; height: 72px; margin: 0 auto 20px; border-radius: 50%; display: grid; place-items: center; background: #e7f0f8; color: #4f7ea5;}
.pd-site .pd-status-icon .lucide {width: 34px !important; height: 34px !important; stroke-width: 1.5;}
.pd-site .pd-status-icon.is-success {background: #edf2e7; color: #6d855d;}
.pd-site .pd-status-icon.is-warning {background: #faf1e3; color: #b08447;}
.pd-site .pd-status h1 {margin-top: 0;}
.pd-site .pd-status .pd-lead {margin-inline: auto;}
.pd-site .pd-status .bd-action {margin-top: 26px; cursor: pointer;}
.pd-site .pd-order-number {display: inline-block; margin-top: 18px; padding: 8px 16px; border-radius: 8px; background: var(--bd-mist); font-size: 15px;}
.pd-site .pd-order-number strong {letter-spacing: 1.5px;}
.pd-site .pd-spinner {width: 28px; height: 28px; margin: 22px auto 0; border: 3px solid #d4e0eb; border-top-color: #5b86ab; border-radius: 50%; animation: pd-spin 1s linear infinite;}
@keyframes pd-spin {to {transform: rotate(360deg);}}
.pd-site .pd-steps {text-align: left; margin: 28px auto 0; max-width: 460px; display: grid; gap: 12px; padding: 0; list-style: none;}
.pd-site .pd-steps li {display: flex; gap: 12px; font-size: 15px; line-height: 1.6; color: var(--bd-body);}
.pd-site .pd-steps .lucide {width: 20px !important; height: 20px !important; color: #6d855d; flex-shrink: 0; margin-top: 2px;}

/* Treści prawne */
.pd-site .pd-prose {font-size: 16px; line-height: 1.8; color: var(--bd-body);}
.pd-site .pd-prose h2 {font-size: 24px; color: var(--bd-ink); margin: 34px 0 10px;}
.pd-site .pd-prose h3 {color: var(--bd-ink); margin: 24px 0 8px;}
.pd-site .pd-prose p, .pd-site .pd-prose ul, .pd-site .pd-prose ol {margin: 0 0 14px;}
.pd-site .pd-company dl {display: grid; grid-template-columns: auto 1fr; gap: 8px 18px; margin: 16px 0 0; font-size: 15px;}
.pd-site .pd-company dt {color: var(--bd-body);}
.pd-site .pd-company dd {margin: 0; font-weight: 600;}

/* Baner zgód cookies */
.pd-site.pd-consent-host {container-type: normal; width: auto; background: none; overflow: visible;}
.pd-site .pd-consent {position: fixed; z-index: 50; left: 16px; right: 16px; bottom: calc(16px + env(safe-area-inset-bottom, 0px)); display: flex; justify-content: center;}
.pd-site .pd-consent[hidden] {display: none;}
.pd-site .pd-consent-inner {max-width: 760px; width: 100%; background: var(--bd-white); border: 1px solid var(--bd-line); border-radius: 14px; box-shadow: 0 18px 50px #1d3c5a2e; padding: 22px 24px;}
.pd-site .pd-consent h2 {font-size: 18px; letter-spacing: -.3px; margin: 0;}
.pd-site .pd-consent p {font-size: 14px; line-height: 1.65; color: var(--bd-body); margin-top: 8px;}
.pd-site .pd-consent p a {color: var(--bd-accent); text-decoration: underline;}
.pd-site .pd-consent-options {display: grid; gap: 10px; margin-top: 14px;}
.pd-site .pd-consent-options[hidden] {display: none;}
.pd-site .pd-consent-actions {display: flex; flex-wrap: wrap; gap: 10px; align-items: center; margin-top: 16px;}
.pd-site .pd-consent-actions .bd-action {cursor: pointer;}
.pd-site .pd-link-button {background: none; border: 0; padding: 8px 4px; font-size: 14px; font-weight: 600; color: var(--bd-ink); text-decoration: underline; cursor: pointer;}

@container (max-width: 760px) {
  .pd-site .pd-page {padding-block: 38px 56px;}
  .pd-site .pd-grid-2 {grid-template-columns: 1fr; margin-top: 24px;}
  .pd-site .pd-summary {position: static; order: -1;}
  .pd-site .pd-card {padding: 22px 18px;}
  .pd-site .pd-status {padding: 32px 20px;}
  .pd-site .pd-consent-actions .bd-action {flex: 1 1 auto;}
}
