.recharge-workspace { max-width: 1120px; margin: 0 auto; color: #25323b; }
.recharge-benefit { display:flex; align-items:center; gap:16px; padding:20px; margin:20px 0 0; background:#edf5ff; border-left:3px solid #3874bc; }
.recharge-benefit-icon { flex:0 0 40px; display:grid; place-items:center; color:#d52d43; }
.recharge-benefit-icon .ws-icon { width:28px; height:28px; }
.recharge-benefit>div { flex:1; min-width:0; }
.recharge-benefit strong { display:block; font-size:15px; line-height:1.5; }
.recharge-benefit p { margin:5px 0 0; font-size:13px; line-height:1.6; color:#526578; }
.recharge-benefit .membership-promo-link { display:inline-flex; width:auto; margin:0; flex-shrink:0; align-items:center; justify-content:center; gap:8px; padding:10px 14px; min-height:42px; border:1px solid #b5cceb; border-radius:6px; background:white; color:#245992; font-size:13px; cursor:pointer; }
@media(max-width:560px) { .recharge-benefit { flex-wrap:wrap; padding:16px; gap:12px; } .recharge-benefit>div { flex-basis:calc(100% - 52px); } .recharge-benefit .membership-promo-link { margin-left:52px; } }
.recharge-balance { display:flex; align-items:center; gap:16px; padding:22px 0 28px; border-bottom:1px solid #dde4e8; }
.recharge-wallet { width:44px; height:44px; display:grid; place-items:center; border-radius:8px; background:#eaf5ee; color:#176b4e; }
.recharge-wallet .ws-icon { width:24px; height:24px; }
.recharge-balance span { font-size:13px; }
.recharge-balance strong { display:block; margin-top:6px; font-size:28px; font-weight:600; }
.recharge-balance strong small { font-size:13px; font-weight:400; color:#677681; }
.recharge-balance button { margin-left:auto; display:inline-flex; align-items:center; gap:8px; }
.recharge-layout { display:grid; grid-template-columns:minmax(0,1fr) 300px; gap:40px; padding-top:30px; }
.recharge-workspace h3 { font-size:17px; font-weight:600; margin:0 0 14px; }
.recharge-rate { color:#62727b; font-size:13px; margin:0 0 20px; }
.recharge-packages { border:0; margin:0 0 28px; padding:0; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.recharge-packages legend { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.recharge-packages label { position:relative; display:flex; align-items:center; gap:10px; padding:18px; min-height:88px; border:1px solid #d7e0e6; border-radius:8px; background:white; cursor:pointer; }
.recharge-packages label:has(input:checked) { border-color:#176b4e; box-shadow:0 0 0 1px #176b4e; background:#f5faf7; }
.recharge-packages strong { display:block; font-size:19px; font-weight:600; overflow-wrap:anywhere; }
.recharge-packages small { display:block; margin-top:7px; font-size:12px; color:#64747f; }
.recharge-workspace input[type=radio], .payment-method-choice input { width:16px; height:16px; flex:0 0 16px; margin:0; accent-color:#176b4e; }
.recharge-custom { margin:0 0 28px; }
.recharge-custom label { display:block; font-size:13px; margin-bottom:9px; }
.recharge-custom input { width:100%; box-sizing:border-box; min-height:46px; border:1px solid #bdcbd4; border-radius:6px; padding:12px; font:inherit; background:#fff; }
.recharge-custom input:focus { outline:2px solid #80b29a; outline-offset:2px; }
.recharge-custom p { font-size:12px; color:#6a7984; margin:8px 0; }
.recharge-custom #recharge-error { color:#b33134; }
.recharge-methods label { display:flex; align-items:center; gap:10px; padding:16px 0; border-bottom:1px solid #e4e9ed; color:#687680; font-size:14px; }
.recharge-methods small { margin-left:auto; font-size:11px; }
.recharge-summary { padding-left:28px; border-left:1px solid #e0e7eb; }
.recharge-summary dl { margin:20px 0 26px; }
.recharge-summary dl>div { display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; padding:13px 0; }
.recharge-summary dt { font-size:12px; color:#62727f; }
.recharge-summary dd { margin:0; font-size:14px; font-weight:600; overflow-wrap:anywhere; }
.recharge-summary button { display:flex; align-items:center; justify-content:center; gap:8px; width:100%; min-height:44px; white-space:normal; }
.recharge-summary button:disabled { background:#e4e9e6; border:1px solid #dce4df; color:#687d71; opacity:1; cursor:not-allowed; }
.recharge-summary .recharge-availability { font-size:12px; line-height:1.7; color:#697984; margin-top:16px; }
.payment-method-choice { border:0; padding:0; margin:20px 0; display:flex; gap:12px; flex-wrap:wrap; }
.payment-method-choice legend { font-size:13px; font-weight:600; margin-bottom:10px; }
.payment-method-choice label { display:flex; align-items:center; gap:8px; padding:12px 14px; border:1px solid #d5dfe5; border-radius:6px; font-size:13px; cursor:pointer; }
.payment-method-choice label:has(input:checked) { border-color:#176b4e; background:#f0f8f3; }
.payment-online-status { background:#f5f7fa; padding:14px; border:1px solid #e0e6ec; border-radius:6px; font-size:13px; line-height:1.7; }
@media(max-width:800px) { .recharge-layout { grid-template-columns:1fr; gap:28px; } .recharge-summary { border-left:0; border-top:1px solid #e0e7eb; padding:24px 0 0; } }
@media(max-width:480px) { .recharge-balance { flex-wrap:wrap; } .recharge-balance strong { font-size:24px; } .recharge-balance button { margin-left:60px; } .recharge-packages { grid-template-columns:1fr; } .recharge-packages label { padding:14px; min-height:76px; } .recharge-packages strong { font-size:17px; } }
