/* Pricing table builder (tokens and base classes come from site.css) */
.pt{padding-top:20px}
.pt .wrap>*+*{margin-top:24px}
.pt-card{min-width:0;padding:20px 16px;border-radius:28px;border:1px solid var(--line);background:var(--glass);box-shadow:var(--shadow);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
.pt-checks{scroll-margin-top:16px}
.pt-card h2{font-size:1.5rem;margin:0 0 6px}
.pt-h2b{margin-top:32px!important}
.pt-lead{color:var(--muted);margin:0 0 18px}
.pt-card .lbl{display:block;font-weight:700;font-size:1.0625rem;margin-bottom:8px}
.pt-card .row{margin-bottom:16px;min-width:0}
.pt-card .hint{font-size:.875rem;color:var(--muted);margin:6px 0 0}
.pt-card select.field{appearance:auto;padding-right:12px}
.pt-ta{padding:12px 16px;min-height:140px;line-height:1.5;resize:vertical}
.pt-card .field{overflow-wrap:anywhere}

/* start row */
.pt-start{display:grid;gap:12px;align-items:end;margin-bottom:8px}
.pt-start .row{margin-bottom:0}
.pt-start .btn{width:100%}
.pt-undo{display:flex;flex-wrap:wrap;align-items:center;gap:4px 8px;margin:8px 0 0;padding:10px 14px;border-radius:16px;background:rgba(63,224,192,.1);border:1px solid rgba(63,224,192,.35);color:var(--ink);font-weight:600}
.pt-undo span{margin:0}
.pt-linkbtn{min-height:44px;min-width:44px;padding:0 12px;border:0;background:none;color:#c9c0ff;font-weight:800;text-decoration:underline;text-underline-offset:4px;cursor:pointer;border-radius:12px}
.pt-linkbtn:hover{color:#fff}

/* settings */
.pt-set-grid{display:grid;gap:4px 20px;margin-top:20px;grid-template-columns:minmax(0,1fr)}
.pt-pills{min-width:0;margin:0 0 16px;padding:0;border:0}
.pt-pills legend{font-weight:700;font-size:1.0625rem;padding:0;margin-bottom:8px}
.pt-pill-row{display:flex;flex-wrap:wrap;gap:8px}
.pt-pill-row label{position:relative;flex:1 1 4.5rem;min-width:0}
.pt-pill-row input{position:absolute;opacity:0;inset:0;width:100%;height:100%;margin:0;cursor:pointer}
.pt-pill-row span{display:flex;align-items:center;justify-content:center;min-height:48px;padding:0 14px;border-radius:999px;border:1px solid var(--line);font-weight:700;color:var(--muted);background:rgba(8,12,30,.5);text-align:center}
.pt-pill-row input:checked+span{color:var(--ink);border-color:var(--violet);background:rgba(139,123,255,.25)}
.pt-pill-row input:focus-visible+span{outline:3px solid var(--violet);outline-offset:2px}
.pt-pill-row label:hover input:not(:checked)+span{background:rgba(139,123,255,.14)}
.pt-colorrow{display:flex;align-items:center;gap:12px}
.pt-color{width:6rem;min-width:6rem;padding:4px;cursor:pointer}
.pt-hex{font-weight:700;font-variant-numeric:tabular-nums;color:var(--muted)}

/* tiers */
.pt-tiers{display:grid;gap:16px;grid-template-columns:minmax(0,1fr)}
.pt-tier{min-width:0;margin:0;padding:6px 16px 4px;border:1px solid var(--line);border-radius:22px;background:rgba(8,12,30,.35)}
.pt-tier legend{padding:0 10px;font-weight:800;font-size:1.0625rem}
.pt-tier.is-pop{border-color:var(--violet);box-shadow:0 0 0 1px var(--violet),0 0 28px -10px rgba(139,123,255,.7)}
.pt-tier.is-pop legend::after{content:" \00b7 most popular";font-weight:600;color:#c4baff}
.pt-tier .field-err{margin:8px 0 0}

/* preview */
.pt-prev-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.pt-prev-head h2{margin:0}
.pt-prev-tools{display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.pt-pills-sm{margin:0}
.pt-pills-sm .pt-pill-row{flex-wrap:nowrap}
.pt-pills-sm .pt-pill-row label{flex:0 0 auto}
.pt-pills-sm .pt-pill-row span{min-height:44px;padding:0 16px;font-size:.9375rem}
.pt-sm{min-height:44px;padding:0 20px;font-size:.9375rem}
.pt-stage{padding:28px 14px;border-radius:22px;border:1px solid var(--line);background:#f3f4fa;overflow:hidden;-webkit-print-color-adjust:exact;print-color-adjust:exact}
.pt-stage[data-mode="dark"]{background:#0b1020;border-color:rgba(180,190,255,.3)}
.pt-stage-in{margin:0 auto;min-width:0}
.pt-stage[data-width="phone"] .pt-stage-in{max-width:22.5rem}
.pt-empty{margin:0;padding:40px 12px;text-align:center;font-weight:600;color:#4b5263}
.pt-stage[data-mode="dark"] .pt-empty{color:#b9bfe0}
.pt-pv-note{margin:12px 0 0;font-size:.9375rem;color:var(--muted);min-height:1.5em}

/* checks */
.pt-sum{font-weight:800;font-size:1.125rem;margin:4px 0 0;display:flex;align-items:center;gap:10px}
.pt-sum::before{content:"";flex:none;width:12px;height:12px;border-radius:50%;background:var(--mint);box-shadow:0 0 0 4px rgba(63,224,192,.22)}
.pt-sum.mid::before{background:var(--peach);box-shadow:0 0 0 4px rgba(255,185,137,.22)}
.pt-sum.bad::before{background:var(--rose);box-shadow:0 0 0 4px rgba(245,143,180,.25)}
.pt-issues{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:8px}
.pt-issues li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 12px;align-items:start;padding:12px 14px;border-radius:16px;background:rgba(255,255,255,.05);border:1px solid var(--line)}
.pt-issues li.error{border-color:rgba(245,143,180,.5);background:rgba(245,143,180,.08)}
.pt-issues li.warn{border-color:rgba(255,185,137,.4);background:rgba(255,185,137,.07)}
.pt-issues p{margin:0;color:var(--ink);overflow-wrap:anywhere}
.pt-tag{font-size:.875rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase;padding:4px 10px;border-radius:999px;color:#0B1020;white-space:nowrap}
.pt-tag.error{background:var(--rose)}.pt-tag.warn{background:var(--peach)}.pt-tag.tip{background:var(--sky)}

/* output */
.pt-block{margin-top:24px;min-width:0}
.pt-block+.pt-block{margin-top:32px}
.pt-block-head{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:4px 12px;margin-bottom:10px}
.pt-block-head h3{font-size:1.25rem}
.pt-size{font-size:.9375rem;color:var(--muted)}
.pt-code{max-height:24rem;overflow:auto}
.pt-code:focus-visible{outline:3px solid var(--violet);outline-offset:2px}
.pt-code code{overflow-wrap:normal}
.pt-block .cta-row .btn{flex:1 1 14rem}
.pt-status{min-height:1.5em;margin:18px 0 0;font-weight:600;color:var(--muted);overflow-wrap:anywhere}
.pt-status.ok{color:var(--mint)}
.pt-status.warn{color:var(--peach)}
.pt-status.bad{color:var(--rose)}
.pt-out .trust{margin-top:8px}
.pt-pill{display:inline-flex;align-items:center;min-height:44px;min-width:44px;padding:0 18px;border-radius:999px;background:rgba(139,123,255,.16);color:#d4ccff!important;font-weight:700;text-decoration:none!important}
.pt-pill:hover{background:rgba(139,123,255,.3)}
.pt .after{max-width:60rem}
.pt .after .btn{width:100%}
.btn[disabled]{cursor:not-allowed}
.sticky-cta.away{display:none}
.sticky-cta[aria-disabled="true"]{filter:saturate(.7)}

@media (min-width:480px){
  .pt-card{padding:24px 22px}
  .pt .after .btn{width:auto}
}
@media (min-width:720px){
  .pt-card{padding:32px 32px}
  .pt-start{grid-template-columns:minmax(0,1fr) auto auto}
  .pt-start .btn{width:auto}
  .pt-set-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pt-tiers[data-n="2"],.pt-tiers[data-n="3"],.pt-tiers[data-n="4"]{grid-template-columns:repeat(2,minmax(0,1fr))}
  .pt-tiers[data-n="1"]{max-width:28rem}
  .pt-stage{padding:36px 28px}
  .pt-issues li{padding:14px 18px}
}
@media (min-width:1100px){
  .pt-set-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .pt-tiers[data-n="3"]{grid-template-columns:repeat(3,minmax(0,1fr))}
  .pt-tiers[data-n="4"]{grid-template-columns:repeat(4,minmax(0,1fr))}
  .pt-stage{padding:44px 40px}
}
@media (prefers-reduced-motion:reduce){
  .pt-pill-row span{transition:none}
}

/* print: the preview table only */
@media print{
  html,body{background:#fff!important;min-height:0;overflow:visible!important}
  .skip,.site-head,.site-foot,.sticky-cta,.consent,.page-top,.pt-noprint{display:none!important}
  main,.article,.wrap,.pt{display:block!important;padding:0!important;margin:0!important;max-width:none!important;width:100%!important}
  .pt-card{background:none!important;border:0!important;box-shadow:none!important;padding:0!important;backdrop-filter:none!important}
  .pt-prev-head{display:none!important}
  .pt-stage{border:0;border-radius:0;padding:12px 0}
}
