/* chat78 — extracted from resources/views/subscription-pay.blade.php (was an inline block) */
  .pay-plan-card{display:flex;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1.2rem;
    background:linear-gradient(135deg,#fffbeb,#fef3c7);border:1px solid #f59e0b;padding:1.1rem 1.4rem}
  .pay-plan-card .plan-icon{font-size:2rem;color:#f59e0b;background:rgba(245,158,11,.12);
    width:56px;height:56px;border-radius:50%;display:flex;align-items:center;justify-content:center}
  .pay-plan-info{flex:1;min-width:180px}
  .pay-plan-info h3{margin:.1rem 0 .2rem}
  .pay-plan-price b{font-size:1.6rem;color:var(--primary);font-weight:800}
  .payment-methods{display:flex;flex-direction:column;gap:.6rem;margin-bottom:.8rem}
  /* chat61 — standard radio-option anatomy: radio pinned to the start edge,
     icon + title/hint fill the rest. Previously site.css `input{width:100%}`
     stretched the radio into a full-width box and the bullet floated mid-row. */
  .payment-method{display:flex;align-items:center;gap:.8rem;padding:.85rem 1rem;border:1px solid var(--border,#e5e7eb);border-radius:10px;cursor:pointer;transition:border-color .15s,background .15s}
  .payment-method:has(input:checked){border-color:var(--accent,#f59e0b);background:#fff7ed}
  .payment-method:has(input:focus-visible){box-shadow:0 0 0 3px rgba(168,85,247,.15)}
  .payment-method.payment-disabled{opacity:.65;cursor:not-allowed}
  .payment-method input[type=radio]{width:18px;height:18px;margin:0;padding:0;flex:0 0 auto;transform:none;accent-color:var(--primary,#a855f7)}
  .payment-method-content{display:flex;align-items:flex-start;gap:.65rem;flex:1;min-width:0}
  .payment-method-content i{font-size:1.35rem;color:#6b7280;margin-top:.1rem;flex:0 0 auto}
  .payment-method-content b{display:block;font-size:.98rem}
  .payment-method-content small{display:block;font-size:.8rem;color:#6b7280;margin-top:.15rem;line-height:1.5}
  .text-error{color:#dc2626}
  /* chat33 — guest password pair + notes textarea */
  .form-row-2{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
  @media (max-width:560px){.form-row-2{grid-template-columns:1fr}}
  textarea[name="notes"]{resize:vertical;min-height:84px}
  .pay-plan-approx{display:block;font-size:.8rem;color:#6b7280;margin-top:.15rem}

  /* chat65 — coin picker grid with official coin icons (WooCommerce-plugin style) */
  .coin-picker{display:grid;grid-template-columns:repeat(auto-fill,minmax(185px,1fr));gap:.5rem}
  .coin-option{display:flex;align-items:center;gap:.55rem;padding:.55rem .7rem;border:1px solid var(--border,#e5e7eb);border-radius:10px;cursor:pointer;transition:border-color .15s,background .15s}
  .coin-option:hover{border-color:#d1d5db}
  .coin-option:has(input:checked){border-color:var(--accent,#f59e0b);background:#fff7ed}
  .coin-option input[type=radio]{width:16px;height:16px;margin:0;padding:0;flex:0 0 auto;accent-color:var(--primary,#a855f7)}
  .coin-option img{width:24px;height:24px;border-radius:50%;flex:0 0 auto}
  .coin-option-name{display:flex;flex-direction:column;min-width:0;line-height:1.25}
  .coin-option-name b{font-size:.85rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .coin-option-name small{font-size:.72rem;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}


  /* chat120 — below-minimum coins: visible but unpickable, with the coin's
     minimum transaction amount shown on the tile (greyed + struck label). */
  .coin-option.coin-disabled{opacity:.55;cursor:not-allowed;background:#fafafa}
  .coin-option.coin-disabled:hover{border-color:var(--border,#e5e7eb)}
  .coin-option.coin-disabled:has(input:checked){border-color:var(--border,#e5e7eb);background:#fafafa}
  .coin-option.coin-disabled .coin-option-name b{color:#9ca3af;text-decoration:line-through;text-decoration-color:#9ca3af66}
  .coin-min{font-size:.7rem;font-weight:600;color:#b45309;margin-top:.12rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

  /* ── sub1 (2026-10-11) — quote breakdown card (loyalty + proration) ── */
  .pay-quote-card{margin-bottom:1.2rem;border:1px solid #10b981}
  .pay-quote-card h3{display:flex;align-items:center;gap:.45rem;color:#047857}
  .pay-quote-lines{display:flex;flex-direction:column;gap:.5rem;margin:.6rem 0 .2rem}
  .pay-quote-line{display:flex;align-items:baseline;justify-content:space-between;gap:.8rem;padding:.45rem .7rem;border-radius:8px;background:var(--bg,#f9fafb);flex-wrap:wrap}
  .pay-quote-line span{font-size:.9rem;color:var(--muted,#6b7280)}
  .pay-quote-line span small{display:block;font-size:.78rem;opacity:.85}
  .pay-quote-line b{font-variant-numeric:tabular-nums;white-space:nowrap}
  .pay-quote-line.discount b{color:#059669}
  .pay-quote-line.discount{background:rgba(16,185,129,.07)}
  .pay-quote-line.total{background:rgba(16,185,129,.14);border-top:1px dashed #10b981;font-weight:800}
  .pay-quote-line.total span{color:var(--text,#111827);font-weight:700}
  .pay-quote-line.total b{color:#047857;font-size:1.08rem}
  .pay-quote-note{display:flex;align-items:center;gap:.4rem;margin:.55rem 0 0;line-height:1.7}
  .pay-quote-note i{color:#047857;flex:0 0 auto}
