.pn-order-form,
.pn-checkout {
  width:100%;
  max-width:1180px;
  box-sizing:border-box;
  font-family:inherit;
  color:#000;
}
.pn-order-form{max-width:760px}
.pn-order-form *, .pn-order-form *::before, .pn-order-form *::after,
.pn-checkout *, .pn-checkout *::before, .pn-checkout *::after{box-sizing:border-box}

.pn-order-price-block{margin:0 0 8px}
.pn-order-product-label{margin:0 0 6px;font-size:14px;line-height:1.2;font-weight:700;letter-spacing:.05em;text-transform:uppercase}
.pn-order-price-main{margin:0;font-size:32px;line-height:1.15;font-weight:700}
.pn-order-section{margin:0 0 28px}
.pn-order-label-row{margin:0 0 14px}
.pn-order-label{font-size:20px;line-height:1.2;font-weight:700}
.pn-order-label-small{font-size:17px}
.pn-order-options{display:flex;flex-wrap:wrap;gap:12px}
.pn-option{display:inline-block;cursor:pointer}
.pn-option input[type="radio"]{position:absolute!important;opacity:0!important;width:1px!important;height:1px!important;pointer-events:none!important}
.pn-option input[type="radio"]+span{display:inline-flex;align-items:center;justify-content:center;min-height:49px;padding:12px 24px;border:1px solid #111;background:#fff;color:#000;font-size:17px;line-height:1.2;cursor:pointer;transition:.18s ease}
.pn-option input[type="radio"]:checked+span{background:#000;color:#fff}
.pn-option input[type="radio"]+span:hover{background:#f2f2f2}
.pn-option input[type="radio"]:checked+span:hover{background:#000;color:#fff}
.pn-option.pn-option-disabled{cursor:not-allowed}
.pn-option.pn-option-disabled input[type="radio"]+span{border-color:#d7d7d7;background:#f7f7f7;color:#aaa;cursor:not-allowed;opacity:.7}
.pn-option.pn-option-disabled input[type="radio"]+span:hover{background:#f7f7f7;color:#aaa}
.pn-visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}

.pn-frame-addon-section{margin-top:34px}
.pn-frame-addon-toggle{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:20px!important;width:100%!important;margin:0!important;padding:14px 0!important;border:0!important;border-top:1px solid #111!important;border-bottom:1px solid #111!important;border-radius:0!important;background:transparent!important;color:#000!important;font:inherit!important;font-size:16px!important;line-height:1.25!important;font-weight:600!important;text-align:left!important;box-shadow:none!important;cursor:pointer!important}
.pn-frame-addon-toggle:hover,.pn-frame-addon-toggle:focus{background:transparent!important;color:#000!important}
.pn-frame-addon-meta{display:inline-flex;align-items:center;gap:16px;white-space:nowrap;font-weight:600}
.pn-frame-addon-chevron{display:inline-block;width:10px;height:10px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-2px);transition:transform .18s ease}
.pn-frame-addon-toggle[aria-expanded="true"] .pn-frame-addon-chevron{transform:rotate(225deg) translate(-2px,-2px)}
.pn-frame-addon-panel{padding:20px 0 2px}
.pn-frame-addon-panel[hidden],.pn-frame-addon-section[hidden],.pn-order-total-row[hidden]{display:none!important}
.pn-print-only-action{display:inline-block!important;margin:10px 0 0!important;padding:0!important;border:0!important;background:transparent!important;color:#000!important;font:inherit!important;font-size:14px!important;line-height:1.4!important;text-decoration:underline!important;text-underline-offset:3px!important;box-shadow:none!important;cursor:pointer!important}
.pn-print-only-action[hidden]{display:none!important}
.pn-print-only-action:hover,.pn-print-only-action:focus{background:transparent!important;color:#555!important}
.pn-order-total-row{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 26px;padding:14px 0;border-top:1px solid #ddd;border-bottom:1px solid #ddd;font-size:18px;line-height:1.2}
.pn-order-total-row strong{font-size:22px}

.pn-order-submit-section{margin-top:30px}
.pn-order-submit,.pn-checkout-button{display:flex!important;align-items:center!important;justify-content:center!important;width:100%;max-width:420px;min-height:54px!important;margin:0!important;padding:0 24px!important;border:1px solid #000!important;background:#000!important;color:#fff!important;font-family:inherit;font-size:22px;line-height:1!important;font-weight:600;cursor:pointer;border-radius:0!important;box-shadow:none!important}
.pn-order-submit:hover,.pn-order-submit:focus,.pn-checkout-button:hover,.pn-checkout-button:focus{background:#222!important;color:#fff!important}

.pn-checkout{margin:0 auto}
.pn-checkout>h1{margin:0 0 38px}
.pn-checkout-layout{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:64px;align-items:start}
.pn-checkout h2{margin:0 0 24px;font-size:24px}
.pn-checkout-summary{margin:0 0 28px}
.pn-checkout-summary>div{display:grid;grid-template-columns:minmax(120px,180px) 1fr;gap:20px;padding:14px 0;border-bottom:1px solid #e5e5e5}
.pn-checkout-summary dt{font-weight:600}
.pn-checkout-summary dd{margin:0}

.pn-field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.pn-field{margin:0 0 18px}
.pn-field label{display:block;margin:0 0 7px;font-weight:600}
.pn-field label span,.pn-field label small{color:#666;font-weight:400}
.pn-field input,.pn-field select{width:100%;min-height:50px;padding:10px 12px;border:1px solid #bbb;border-radius:0;background:#fff;color:#000;font:inherit}
.pn-field input:focus,.pn-field select:focus{border-color:#000;outline:1px solid #000}
.pn-field-short{max-width:260px}
.pn-checkout-button{margin-top:10px!important;max-width:100%;font-size:18px}

.pn-checkout-errors{margin:0 0 22px;padding:14px 18px;border:1px solid #b00020}
.pn-checkout-errors ul{margin:0;padding-left:20px}
.pn-prototype-note,.pn-checkout-note{padding:14px 16px;background:#f5f5f5;line-height:1.5}
.pn-checkout-note{margin:0 0 24px}
.pn-status-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;max-width:640px;margin:30px 0}
.pn-status-grid>div{padding:16px;border:1px solid #ddd}
.pn-status-grid span,.pn-status-grid strong{display:block}
.pn-status-grid span{margin-bottom:4px;color:#666}
.pn-order-created{max-width:760px}
.pn-payment-block{margin:28px 0}
.pn-payment-success{padding:16px;border:1px solid #0a7a35;background:#f2fff6;font-weight:600}
.pn-payment-processing{padding:16px;border:1px solid #999;background:#fafafa;line-height:1.5}
.pn-refresh-status{margin:12px 0 0}
.pn-payment-note{margin:12px 0 0;color:#666;font-size:14px;line-height:1.5}

@media(max-width:760px){
  .pn-order-price-main{font-size:28px}
  .pn-frame-addon-toggle{font-size:15px!important}
  .pn-frame-addon-meta{gap:12px}
  .pn-order-total-row{font-size:16px}
  .pn-order-total-row strong{font-size:20px}
  .pn-order-label{font-size:18px}
  .pn-order-options{gap:10px}
  .pn-option input[type="radio"]+span{min-height:46px;padding:11px 18px;font-size:14px}
  .pn-order-submit{max-width:100%;min-height:52px!important;font-size:20px}
  .pn-checkout-layout{grid-template-columns:1fr;gap:42px}
  .pn-checkout-summary-column{order:-1}
  .pn-field-row{grid-template-columns:1fr;gap:0}
  .pn-checkout-summary>div{grid-template-columns:1fr;gap:6px}
  .pn-status-grid{grid-template-columns:1fr}
}

/* 0.8.2 — provider-independent Free Shipping */
.pn-free-shipping-badge{
  display:inline-block;
  margin:0 0 28px;
  padding:6px 10px;
  border:1px solid #111;
  font-size:14px;
  line-height:1.2;
  font-weight:600;
}
.pn-free-shipping-text{letter-spacing:.02em}
.pn-free-shipping-checkout-note{
  display:flex;
  flex-direction:column;
  gap:4px;
  margin:4px 0 18px;
  padding:14px 16px;
  border:1px solid #ddd;
  background:#fafafa;
  line-height:1.45;
}
.pn-free-shipping-checkout-note span{color:#666;font-size:14px}
/* 0.8.2 — Checkout / order flow polish */
.pn-checkout-edit-link{margin:-12px 0 28px;font-size:14px}
.pn-checkout-edit-link a{text-underline-offset:3px}
.pn-order-created-intro{max-width:640px;margin:10px 0 0;color:#555;line-height:1.5}



/* 0.8.5 — quieter legal notices below the primary checkout action */
.pn-checkout-legal-notices{
  margin:13px 0 0;
  padding-top:0;
  border-top:0;
  color:#777;
  font-size:12px;
  line-height:1.45;
}
.pn-checkout-legal-notices p{margin:0 0 7px}
.pn-checkout-legal-notices p:last-child{margin-bottom:0}
.pn-checkout-legal-notices strong{color:#666;font-weight:600}
