/* ===== Gen pricing ===== */
.gp-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:64px;align-items:start}
.gp-how{font-size:16px;line-height:24px;color:var(--ink-2)}
.gp-how p + p{margin-top:12px}
.gp-how b{font-weight:600;color:var(--ink)}
.cost{background:var(--surface);border:1px solid var(--border);border-radius:16px;overflow:hidden}
.cost .table td:last-child,.cost .table th:last-child{text-align:right}
.cost .table td small{display:block;font-size:12px;line-height:16px;color:var(--muted)}
.cost .table .grp td{text-align:left!important;background:var(--surface-2);font-weight:600;padding-top:10px;padding-bottom:10px}
.cr{font:500 14px/20px var(--mono);font-variant-numeric:tabular-nums;color:var(--ink)}

/* packs */
.packs{border-top:1px solid var(--ink)}
.pack{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) minmax(0,1fr) auto;gap:24px;align-items:center;padding:24px 0;border-bottom:1px solid var(--border);transition:background .4s var(--expo)}
.pack .n{font:500 24px/32px var(--mono);font-variant-numeric:tabular-nums}
.pack .n small{font:400 14px/20px var(--font);color:var(--muted);margin-left:6px}
.pack .buys{font-size:14px;line-height:20px;color:var(--muted)}
.pack .pp{font:500 20px/28px var(--mono);font-variant-numeric:tabular-nums}
.pack .pp small{display:block;font:400 12px/16px var(--font);color:var(--muted)}
.pack .rec{display:inline-block;font-size:12px;line-height:16px;color:var(--coral-hover);margin-top:4px;opacity:0;transform:translateY(-2px);transition:opacity .35s var(--expo),transform .45s var(--expo)}
.pack.is-rec .rec{opacity:1;transform:none}
.pack.is-rec .btn{background:var(--ink);border-color:var(--ink);color:#fff}
.pack .btn{min-width:120px}
.packs-note{font-size:14px;line-height:20px;color:var(--muted);margin-top:16px}

/* estimator */
.est{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);background:var(--surface);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);overflow:hidden}
.est-in{padding:32px;display:grid;gap:28px}
.est-out{padding:32px;background:var(--surface-2);border-left:1px solid var(--border);display:flex;flex-direction:column}
.rng-top{display:flex;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:12px}
.rng-top .num{width:96px;height:32px;text-align:right;font:500 14px/20px var(--mono);font-variant-numeric:tabular-nums}
.rng-sub{display:flex;justify-content:space-between;font-size:12px;line-height:16px;color:var(--muted);margin-top:8px}
input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:20px;margin:0;background:transparent;cursor:pointer;--p:0%}
input[type=range]::-webkit-slider-runnable-track{height:2px;border-radius:2px;background:linear-gradient(90deg,var(--ink) var(--p),var(--border-2) var(--p))}
input[type=range]::-moz-range-track{height:2px;border-radius:2px;background:linear-gradient(90deg,var(--ink) var(--p),var(--border-2) var(--p))}
input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;margin-top:-7px;border-radius:50%;background:var(--surface);border:1.5px solid var(--ink);box-shadow:0 1px 3px rgba(26,25,23,.15);transition:transform .3s var(--expo)}
input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:var(--surface);border:1.5px solid var(--ink)}
input[type=range]:active::-webkit-slider-thumb{transform:scale(1.15)}
input[type=range]:focus-visible{outline:none}
input[type=range]:focus-visible::-webkit-slider-thumb{outline:2px solid var(--coral);outline-offset:2px}
.res-row{display:grid;grid-template-columns:1fr auto;gap:8px;padding:10px 0;border-bottom:1px solid var(--border);font-size:14px;line-height:20px;color:var(--ink-2)}
.res-row .v{font-family:var(--mono);font-variant-numeric:tabular-nums;color:var(--ink)}
.res-total{display:flex;justify-content:space-between;align-items:baseline;padding:16px 0 4px}
.res-total > span:first-child{font-size:14px;line-height:20px;font-weight:600}
.res-total .stat-value{font-size:30px;line-height:36px}
.res-rec{margin-top:auto;padding-top:24px}
.res-rec p{font-size:14px;line-height:20px;color:var(--ink-2)}
.res-rec p b{font-weight:600;color:var(--ink)}
.res-rec .btn{margin-top:16px}

.gp-faq{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:80px}
.gp-faq .lead{margin-top:8px}

@media (max-width:1024px){
  .gp-top,.gp-faq{grid-template-columns:1fr;gap:32px}
  .est{grid-template-columns:1fr}
  .est-out{border-left:0;border-top:1px solid var(--border)}
}
@media (max-width:720px){
  .pack{grid-template-columns:1fr auto;gap:8px 16px}
  .pack .buys{grid-column:1/-1;grid-row:2}
  .pack .pp{text-align:right}
  .pack .btn{grid-column:1/-1;width:100%}
  .est-in,.est-out{padding:24px}
}

/* WordPress: subscription plans in the pack rows, limits table, promo notice */
.promo{display:flex;align-items:flex-start;gap:12px;padding:16px 20px;border:1px solid var(--border);border-radius:12px;background:var(--surface);font-size:14px;line-height:20px;color:var(--ink-2)}
.promo .tag{flex:none}
.cost-scroll{overflow-x:auto}
.cost .table td.cr,.cost .table th:not(:first-child){text-align:right;white-space:nowrap}
.cost .table .no{color:var(--muted)}
.pack .n small{display:block;margin:4px 0 0}
.pack .n{font-family:var(--font);font-weight:600;font-size:20px;line-height:28px}
.pack .rec{display:block}
.pack .is-disabled{opacity:.55;pointer-events:none}
@media (max-width:720px){.promo{flex-direction:column;gap:8px}}
@media (max-width:560px){.cost .table td small{display:none}.cost .table th,.cost .table td{padding-left:10px;padding-right:10px}.cost .table td.cr{font-size:13px}}
