/**
 * Prepaid Wallet & Store Credit Pro - front office (base / Classic)
 * @author MyPresta.eu
 */

/* ---- "My wallet" page ---- */
.prepaid-wallet-page{--pp-accent:#1d4ed8;--pp-accent-2:#2563eb;--pp-ink:#1f2937;--pp-soft:#6b7280;--pp-line:#e5e7eb;color:var(--pp-ink)}
.prepaid-wallet-page .prepaid-hero{display:flex;flex-wrap:wrap;align-items:stretch;gap:18px;margin:0 0 26px}
.prepaid-hero-left{flex:1 1 260px;display:flex;flex-direction:column;gap:18px}

.prepaid-balance-card{flex:0 0 auto;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center;gap:6px;min-height:160px;padding:26px 28px;border-radius:18px;color:#fff;background:linear-gradient(135deg,#1d4ed8 0%,#3b82f6 55%,#22d3ee 100%);box-shadow:0 14px 30px rgba(29,78,216,.25)}
.prepaid-balance-card .prepaid-balance-label{font-size:13px;text-transform:uppercase;letter-spacing:.08em;opacity:.85}
.prepaid-balance-card .prepaid-balance-value{font-size:40px;font-weight:800;line-height:1.05}
.prepaid-balance-card .prepaid-balance-foot{font-size:13px;opacity:.85;margin-top:4px}
.prepaid-balance-card .prepaid-balance-pending{display:inline-flex;align-items:center;gap:6px;align-self:flex-start;margin-top:8px;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.18);font-size:13px;font-weight:600}
.prepaid-balance-card .prepaid-balance-pending .material-icons{font-size:16px}

/* ---- Pending top-ups ---- */
.prepaid-pending-card{margin:0 0 26px;padding:18px 22px;border:1px solid #fde68a;border-radius:16px;background:#fffbeb;box-shadow:0 4px 14px rgba(180,120,10,.06)}
.prepaid-pending-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.prepaid-pending-head .material-icons{font-size:28px;color:#b45309}
.prepaid-pending-head h2{margin:0;font-size:17px;font-weight:800;color:#92400e}
.prepaid-pending-head p{margin:2px 0 0;font-size:13px;color:#a16207}
.prepaid-pending-list{list-style:none;margin:0;padding:0}
.prepaid-pending-item{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid #fde68a}
.prepaid-pending-item:first-child{border-top:none}
.prepaid-pending-info{display:flex;flex-direction:column;gap:2px}
.prepaid-pending-info a{font-weight:700;color:#1d4ed8}
.prepaid-pending-meta{font-size:12px;color:#a16207}
.prepaid-pending-amt{font-weight:800;color:#b45309;white-space:nowrap}
.prepaid-balance-card .prepaid-wallet-ico{position:absolute;right:-10px;bottom:-18px;font-size:140px;opacity:.12;line-height:1}

.prepaid-topup-card{flex:1 1 320px;padding:24px 26px;border:1px solid var(--pp-line);border-radius:18px;background:#fff;box-shadow:0 6px 18px rgba(17,24,39,.05)}
.prepaid-topup-card h2{margin:0 0 4px;font-size:20px;font-weight:800}
.prepaid-topup-card .prepaid-topup-sub{margin:0 0 16px;color:var(--pp-soft);font-size:14px}

.prepaid-dest{display:flex;flex-direction:column;gap:8px;margin:0 0 14px}
.prepaid-dest-option{display:block;margin:0;cursor:pointer}
.prepaid-dest-option input{position:absolute;opacity:0;pointer-events:none}
.prepaid-dest-card{display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:12px 14px;border:1px solid var(--pp-line);border-radius:12px;background:#fafbfc;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}
.prepaid-dest-card .material-icons{font-size:22px;color:var(--pp-accent)}
.prepaid-dest-card strong{flex:1 1 140px;font-size:14px;font-weight:700;color:var(--pp-ink)}
.prepaid-dest-card em{flex:1 1 100%;font-style:normal;font-size:12px;color:var(--pp-soft);line-height:1.35}
.prepaid-dest-option input:checked + .prepaid-dest-card{border-color:var(--pp-accent);background:#f4f7ff;box-shadow:0 0 0 1px var(--pp-accent)}
.prepaid-dest-option:hover .prepaid-dest-card{border-color:#c7d2fe}

.prepaid-bought-card{margin:0 0 26px;padding:18px 22px;border:1px solid #c7d2fe;border-radius:16px;background:#eef2ff;box-shadow:0 4px 14px rgba(29,78,216,.06)}
.prepaid-bought-head{display:flex;align-items:center;gap:12px;margin-bottom:12px}
.prepaid-bought-head .material-icons{font-size:28px;color:#1d4ed8}
.prepaid-bought-head h2{margin:0;font-size:17px;font-weight:800;color:#1e3a8a}
.prepaid-bought-head p{margin:2px 0 0;font-size:13px;color:#4338ca}
.prepaid-bought-list{list-style:none;margin:0;padding:0}
.prepaid-bought-item{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 12px;padding:10px 0;border-top:1px solid #c7d2fe}
.prepaid-bought-item:first-child{border-top:none}
.prepaid-bought-code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-weight:800;font-size:15px;padding:4px 10px;border-radius:6px;background:#fff;color:#1e3a8a}
.prepaid-bought-meta{font-size:13px;color:#4338ca}
.prepaid-bought-meta a{font-weight:700;color:#1d4ed8}

/* ---- Public buy page ---- */
.prepaid-buycode-page{max-width:560px;margin:0 auto 40px}
.prepaid-buycode-card{padding:28px 30px;border:1px solid var(--pp-line);border-radius:18px;background:#fff;box-shadow:0 6px 18px rgba(17,24,39,.05)}
.prepaid-buycode-brand{margin:0 0 8px;font-size:28px;font-weight:800;line-height:1.15;color:var(--pp-ink)}
.prepaid-buycode-alt{margin:16px 0 0;text-align:center;font-size:14px}
.prepaid-buycode-alt a{color:var(--pp-accent);font-weight:600}

.prepaid-quick{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px}
.prepaid-quick button{flex:0 0 auto;border:1px solid #cdd7f0;background:#f4f7ff;color:var(--pp-accent);font-weight:700;border-radius:999px;padding:8px 16px;cursor:pointer;transition:all .15s ease}
.prepaid-quick button:hover,.prepaid-quick button.is-active{background:var(--pp-accent);border-color:var(--pp-accent);color:#fff}

/* ---- Bonus ladder + live hint ---- */
.prepaid-bonus-ladder{margin:0 0 14px;padding:12px 14px;border:1px dashed #fcd34d;border-radius:14px;background:linear-gradient(135deg,#fffbeb 0,#fff7ed 100%)}
.prepaid-bonus-ladder-title{display:flex;align-items:center;gap:7px;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;color:#b45309;margin-bottom:9px}
.prepaid-bonus-ladder-title .material-icons{font-size:18px}
.prepaid-bonus-ladder-chips{display:flex;flex-wrap:wrap;gap:8px}
.prepaid-bonus-chip{display:inline-flex;align-items:center;gap:7px;padding:6px 11px;border:1px solid #fcd34d;border-radius:999px;background:#fff;cursor:pointer;transition:transform .12s ease,box-shadow .15s ease,border-color .15s ease}
.prepaid-bonus-chip:hover{transform:translateY(-1px);box-shadow:0 5px 14px rgba(180,120,10,.18);border-color:#f59e0b}
.prepaid-bonus-chip.is-active{background:#f59e0b;border-color:#f59e0b;box-shadow:0 5px 14px rgba(245,158,11,.32)}
.prepaid-bonus-chip-th{font-size:13px;font-weight:700;color:#92400e}
.prepaid-bonus-chip-plus{font-size:12px;font-weight:800;color:#fff;background:#16a34a;border-radius:999px;padding:2px 8px}
.prepaid-bonus-chip.is-active .prepaid-bonus-chip-th{color:#fff}

.prepaid-bonus-hint{display:flex;align-items:center;gap:9px;margin:0 0 14px;padding:11px 14px;border-radius:12px;font-size:14px;font-weight:600;animation:prepaidBonusPop .25s ease}
.prepaid-bonus-hint .material-icons{font-size:22px;flex-shrink:0}
.prepaid-bonus-hint.is-earned{background:#dcfce7;color:#166534;border:1px solid #86efac}
.prepaid-bonus-hint.is-earned .material-icons{color:#16a34a}
.prepaid-bonus-hint.is-next{background:#fff7ed;color:#9a3412;border:1px solid #fdba74}
.prepaid-bonus-hint.is-next .material-icons{color:#ea580c}
.prepaid-bonus-hint strong{font-weight:800}
@keyframes prepaidBonusPop{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}

.prepaid-amount-field{position:relative;margin-bottom:14px}
.prepaid-amount-field .prepaid-cur{position:absolute;left:14px;top:50%;transform:translateY(-50%);font-weight:700;color:var(--pp-soft)}
.prepaid-amount-field input{width:100%;height:54px;padding:0 16px 0 34px;font-size:22px;font-weight:700;border:2px solid var(--pp-line);border-radius:12px;transition:border-color .15s ease,box-shadow .15s ease}
.prepaid-amount-field input:focus{outline:none;border-color:var(--pp-accent);box-shadow:0 0 0 4px rgba(29,78,216,.12)}
.prepaid-limits{font-size:12px;color:var(--pp-soft);margin-bottom:16px}

.prepaid-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;height:52px;border:none;border-radius:12px;background:linear-gradient(135deg,#1d4ed8,#2563eb);color:#fff;font-size:16px;font-weight:800;cursor:pointer;transition:transform .12s ease,box-shadow .15s ease}
.prepaid-btn:hover{transform:translateY(-1px);box-shadow:0 10px 22px rgba(29,78,216,.3);color:#fff}
.prepaid-btn .material-icons{font-size:20px}

/* ---- Redeem code ---- */
.prepaid-redeem-ok{display:flex;align-items:center;gap:10px;margin:0 0 18px;padding:14px 18px;border-radius:12px;background:#dcfce7;color:#166534;font-weight:700;border:1px solid #86efac}
.prepaid-redeem-ok .material-icons{font-size:22px}
.prepaid-redeem-card{margin:0 0 26px;padding:20px 24px;border:1px solid var(--pp-line);border-radius:16px;background:#fbfdff;box-shadow:0 4px 14px rgba(17,24,39,.04)}
.prepaid-hero-left .prepaid-redeem-card{margin:0;flex:1 1 auto;display:flex;flex-direction:column;justify-content:center}
.prepaid-redeem-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}
.prepaid-redeem-head .material-icons{font-size:30px;color:var(--pp-accent)}
.prepaid-redeem-head h2{margin:0;font-size:17px;font-weight:800}
.prepaid-redeem-head p{margin:2px 0 0;color:var(--pp-soft);font-size:13px}
.prepaid-redeem-form{display:flex;gap:10px;flex-wrap:wrap}
.prepaid-redeem-input{flex:1 1 240px;height:48px;padding:0 16px;font-size:16px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;border:2px solid var(--pp-line);border-radius:12px}
.prepaid-redeem-input:focus{outline:none;border-color:var(--pp-accent);box-shadow:0 0 0 4px rgba(29,78,216,.12)}
.prepaid-btn--ghost{width:auto;flex:0 0 auto;padding:0 22px;background:#fff;color:var(--pp-accent);border:2px solid var(--pp-accent)}
.prepaid-btn--ghost:hover{background:var(--pp-accent);color:#fff}

/* ---- History ---- */
.prepaid-history-head{display:flex;align-items:center;gap:10px;margin:6px 0 12px}
.prepaid-history-head h2{margin:0;font-size:18px;font-weight:800}
.prepaid-history-wrap{border:1px solid var(--pp-line);border-radius:16px;overflow:hidden;background:#fff}
.prepaid-history{width:100%;border-collapse:collapse;margin:0}
.prepaid-history th{background:#f8fafc;color:var(--pp-soft);font-size:12px;text-transform:uppercase;letter-spacing:.04em;padding:12px 16px;text-align:left;border-bottom:1px solid var(--pp-line)}
.prepaid-history td{padding:12px 16px;border-bottom:1px solid #f1f5f9;vertical-align:middle}
.prepaid-history tr:last-child td{border-bottom:none}
.prepaid-history .text-right{text-align:right}
.prepaid-amt-pos{color:#15803d;font-weight:700}
.prepaid-amt-neg{color:#b91c1c;font-weight:700}

.prepaid-badge{display:inline-flex;align-items:center;gap:5px;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:700;text-transform:capitalize}
.prepaid-badge.t-credit{background:#dcfce7;color:#166534}
.prepaid-badge.t-bonus{background:#fef3c7;color:#92400e}
.prepaid-badge.t-refund{background:#e0f2fe;color:#075985}
.prepaid-badge.t-debit{background:#fee2e2;color:#991b1b}
.prepaid-badge.t-expire{background:#f3f4f6;color:#4b5563}
.prepaid-badge.t-adjust{background:#ede9fe;color:#5b21b6}

.prepaid-empty{padding:26px;text-align:center;color:var(--pp-soft);background:#fff;border:1px dashed var(--pp-line);border-radius:16px}

/* ---- Account tile (displayCustomerAccount) ---- */
#prepaidpayment_link .link-item small.prepaid-account-balance{display:block;color:#1d4ed8;font-weight:700}
#prepaidpayment_link .prepaid-account-balance,
.account-menu__link#prepaidpayment_link .prepaid-account-balance{display:inline-block;margin-left:6px;padding:1px 9px;border-radius:999px;background:#eef2ff;color:#1d4ed8;font-weight:700;font-size:12px}

/* ---- Header wallet pill (displayNav2 / displayTop) ---- */
.prepaid-nav-widget{display:inline-flex;align-items:center;vertical-align:middle;margin:0 6px}
.prepaid-nav-link{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border:1px solid #dbe1ee;border-radius:999px;background:#f4f7ff;color:#1d4ed8;text-decoration:none;line-height:1;transition:background .15s ease,box-shadow .15s ease,border-color .15s ease}
.prepaid-nav-link:hover,.prepaid-nav-link:focus{background:#1d4ed8;border-color:#1d4ed8;color:#fff;box-shadow:0 3px 10px rgba(29,78,216,.25);text-decoration:none}
.prepaid-nav-link .material-icons{font-size:20px;line-height:1}
.prepaid-nav-text{display:flex;flex-direction:column;align-items:flex-start}
.prepaid-nav-label{font-size:10px;text-transform:uppercase;letter-spacing:.05em;opacity:.75}
.prepaid-nav-balance{font-size:14px;font-weight:700}

/* ---- Checkout payment option block ---- */
.prepaid-checkout{--pp-c-accent:#1d4ed8;--pp-c-accent-soft:#eff6ff;--pp-c-ink:#1f2937;--pp-c-muted:#6b7280;--pp-c-line:#e5e7eb;margin-top:6px;max-width:420px;color:var(--pp-c-ink)}
.prepaid-checkout-card{padding:16px 18px;border:1px solid var(--pp-c-line);border-radius:14px;background:linear-gradient(165deg,#ffffff 0%,#f8faff 100%);box-shadow:0 4px 16px rgba(29,78,216,.06)}
.prepaid-checkout-card--applied{border-color:#86efac;background:linear-gradient(165deg,#ffffff 0%,#f0fdf4 100%);box-shadow:0 4px 16px rgba(22,163,74,.08)}
.prepaid-checkout-head{display:flex;align-items:flex-start;gap:12px;margin:0 0 14px}
.prepaid-checkout-ico{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:var(--pp-c-accent-soft);color:var(--pp-c-accent)}
.prepaid-checkout-ico .material-icons{font-size:22px;line-height:1}
.prepaid-checkout-card--applied .prepaid-checkout-ico{background:#dcfce7;color:#16a34a}
.prepaid-checkout-title{display:block;font-size:15px;font-weight:800;line-height:1.25;color:var(--pp-c-ink)}
.prepaid-checkout-hint{margin:4px 0 0;font-size:13px;line-height:1.45;color:var(--pp-c-muted)}
.prepaid-checkout-hint--ok{color:#15803d;font-weight:600}
.prepaid-checkout-status{display:flex;align-items:center;gap:12px;margin:0 0 10px}
.prepaid-checkout-status-body{display:flex;flex-direction:column;gap:2px;min-width:0}
.prepaid-checkout-label{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--pp-c-muted)}
.prepaid-checkout-amount{font-size:22px;font-weight:800;line-height:1.1;color:var(--pp-c-accent)}
.prepaid-checkout-card--applied .prepaid-checkout-amount{color:#15803d}
.prepaid-checkout-meta{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 8px;padding:10px 12px;border-radius:10px;background:rgba(29,78,216,.06);font-size:13px}
.prepaid-checkout-meta strong{color:var(--pp-c-accent);font-weight:800}
.prepaid-checkout-form{display:flex;flex-direction:column;gap:10px}
.prepaid-checkout-field{display:flex;flex-direction:column;gap:6px;margin:0}
.prepaid-checkout-field-label{font-size:12px;font-weight:700;color:var(--pp-c-muted)}
.prepaid-checkout-input{width:100%;height:46px;padding:0 14px;font-size:15px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--pp-c-ink);border:2px solid var(--pp-c-line);border-radius:11px;background:#fff;transition:border-color .15s ease,box-shadow .15s ease}
.prepaid-checkout-input::placeholder{font-weight:600;letter-spacing:.03em;text-transform:none;color:#9ca3af}
.prepaid-checkout-input:focus{outline:none;border-color:var(--pp-c-accent);box-shadow:0 0 0 4px rgba(29,78,216,.12)}
.prepaid-checkout-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;height:46px;padding:0 16px;border:none;border-radius:11px;background:linear-gradient(135deg,#1d4ed8,#2563eb);color:#fff;font-size:14px;font-weight:800;cursor:pointer;text-decoration:none;transition:transform .12s ease,box-shadow .15s ease,background .15s ease}
.prepaid-checkout-btn .material-icons{font-size:18px;line-height:1}
.prepaid-checkout-btn:hover{transform:translateY(-1px);box-shadow:0 8px 18px rgba(29,78,216,.28);color:#fff;text-decoration:none}
.prepaid-checkout-btn--ghost{width:auto;align-self:flex-start;height:40px;padding:0 14px;background:#fff;color:#b91c1c;border:1px solid #fecaca;box-shadow:none}
.prepaid-checkout-btn--ghost:hover{background:#fef2f2;color:#991b1b;box-shadow:none;transform:none}
.prepaid-checkout-btn--secondary{margin-top:12px;background:#fff;color:var(--pp-c-accent);border:2px solid #bfdbfe;box-shadow:none}
.prepaid-checkout-btn--secondary:hover{background:var(--pp-c-accent-soft);color:var(--pp-c-accent);box-shadow:none}
.prepaid-checkout-actions{margin-top:12px}
.prepaid-checkout-card .prepaid-checkout-hint + .prepaid-checkout-actions{margin-top:10px}
.prepaid-checkout-card .prepaid-checkout-hint + .prepaid-checkout-btn--secondary{margin-top:12px}

.prepaid-payment-top{margin:0 0 1.25rem;max-width:100%}
.prepaid-payment-top-card{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px 20px;padding:16px 18px;border:1px solid #86efac;border-radius:14px;background:linear-gradient(165deg,#fff 0%,#f0fdf4 100%);box-shadow:0 4px 16px rgba(22,163,74,.08)}
.prepaid-payment-top-main{display:flex;align-items:flex-start;gap:12px;min-width:0;flex:1 1 260px}
.prepaid-payment-top-ico{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:12px;background:#dcfce7;color:#16a34a}
.prepaid-payment-top-ico .material-icons{font-size:22px;line-height:1}
.prepaid-payment-top-title{font-size:14px;font-weight:800;color:#14532d;display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.prepaid-payment-top-code{display:inline-block;padding:2px 8px;border-radius:6px;background:#fff;border:1px solid #bbf7d0;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;font-weight:700;letter-spacing:.04em;color:#166534}
.prepaid-payment-top-amt{margin-top:4px;font-size:22px;font-weight:800;line-height:1.1;color:#15803d}
.prepaid-payment-top-split{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:6px;font-size:12px;color:#3f6212}
.prepaid-payment-top-hint{margin:6px 0 0;font-size:13px;line-height:1.4;color:#4b5563}
.prepaid-payment-top-actions{flex:0 0 auto}

@media (max-width:767px){
    .prepaid-nav-label{display:none}
    .prepaid-nav-link{padding:6px 10px}
    .prepaid-balance-card .prepaid-balance-value{font-size:32px}
    .prepaid-checkout{max-width:none}
}
