.redeem-page { margin:0; background:#090909; color:#fff; font-family:Nunito,Arial,sans-serif; }
.redeem-page .sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.redeem-topbar { min-height:82px; padding:12px max(24px,calc((100vw - 1200px)/2)); display:flex; align-items:center; justify-content:space-between; gap:20px; background:#050505; }
.redeem-topbar img { width:150px; display:block; }
.redeem-actions { display:flex; gap:14px; align-items:center; }
.redeem-actions a { color:#fff; text-decoration:none; font-weight:900; }
.redeem-main { min-height:calc(100svh - 82px); padding:clamp(64px,12vh,150px) 20px 80px; background:linear-gradient(#0008,#000a),url('img/wallpaper-back.png') center/cover; text-align:center; }
.redeem-content { max-width:800px; margin:auto; }
.redeem-content h1 { font:900 clamp(30px,4vw,52px)/1.15 Nunito,Arial,sans-serif; text-shadow:3px 3px 0 #000,-2px -2px 0 #000,2px -2px 0 #000,-2px 2px 0 #000; margin:0 0 30px; }
.redeem-form { width:min(100%,560px); margin:auto; display:grid; gap:18px; }
.redeem-input { width:100%; box-sizing:border-box; min-height:74px; padding:18px; border:2px solid #ddd; border-radius:7px; background:#fff; color:#222; text-align:center; font:800 22px Nunito,Arial,sans-serif; }
.redeem-input:focus-visible { outline:3px solid #ff2868; outline-offset:3px; }
.redeem-button { min-height:68px; border:0; border-bottom:4px solid #94143d; border-radius:7px; background:#ff2868; color:#fff; cursor:pointer; font:900 21px Nunito,Arial,sans-serif; padding:14px 20px; }
.redeem-button:disabled { background:#20232b; border-color:#383b42; color:#92959e; cursor:default; }
.redeem-help { max-width:560px; margin:22px auto 0; padding:16px 20px; background:#000b; border-radius:24px; color:#eee; font-size:16px; }
.redeem-help a { color:#fff; font-weight:900; }
.redeem-status { max-width:560px; margin:18px auto; padding:14px; background:#17191fe8; border-radius:8px; white-space:pre-line; }
.redeem-status:empty { display:none; }
.account-panel { width:min(100%,560px); margin:0 auto; padding:26px; box-sizing:border-box; background:#101218ed; border:1px solid #ffffff30; border-radius:12px; text-align:left; }
.account-panel h2 { margin:0 0 16px; }
.account-panel form { display:grid; gap:14px; }
.account-panel label { display:grid; gap:6px; font-weight:800; }
.account-panel input { min-height:48px; padding:12px; border:1px solid #ccc; border-radius:6px; font:inherit; width:100%; box-sizing:border-box; }
.account-panel select[data-country-select] {appearance:none;min-height:48px;width:100%;padding:12px 42px 12px 14px;border:1px solid #ccc;border-radius:6px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6' fill='none' stroke='%2325252e' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 14px center;color:#222;font:inherit;cursor:pointer;box-sizing:border-box;}
.account-panel select[data-country-select]:focus-visible {outline:3px solid #ffd128;outline-offset:3px;}
.account-panel select[data-country-select] option {background:#fff;color:#222;}
#profilePanel #countryForm {grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:12px;margin:22px 0;padding:18px;background:#ffffff08;border:1px solid #ffffff20;border-radius:10px;}
#countryForm label {min-width:0;}
#countryForm button {min-height:48px;padding:12px 18px;border:0;border-bottom:3px solid #94143d;border-radius:6px;background:#ff2868;color:#fff;font:800 16px Nunito,Arial,sans-serif;cursor:pointer;}
#countryForm button:hover {background:#e91c59;}
#countryForm button:disabled {opacity:.6;cursor:wait;}
@media(max-width:540px) {#profilePanel #countryForm {grid-template-columns:minmax(0,1fr);}#countryForm button {width:100%;}}
.account-panel button { font:800 16px Nunito,Arial,sans-serif; }
.account-switch { background:transparent; border:0; color:#fff; text-decoration:underline; cursor:pointer; margin-top:18px; }
.reward-card { margin:16px 0; padding:18px; border:1px solid #ffffff30; border-radius:8px; background:#ffffff08; overflow-wrap:anywhere; }
.profile-settings {margin-top:24px;padding:18px 0;border-top:1px solid #ffffff30;border-bottom:1px solid #ffffff30;}
.profile-settings summary {cursor:pointer;font-weight:900;}
.profile-settings h3 {margin:20px 0 12px;}
.password-status:empty {display:none;}
.password-status {overflow-wrap:anywhere;}
.reward-card h3 { margin:0 0 8px; }
.reward-card code { display:block; font-size:20px; padding:12px 0; user-select:all; }
.reward-badge { color:#8af2b0; font-weight:900; }
.reward-card p { margin:8px 0; }
.account-panel [hidden],.redeem-page [hidden] { display:none !important; }
@media(max-width:540px) { .redeem-topbar { padding:12px 16px; } .redeem-topbar img { width:110px; } .redeem-actions { gap:10px; } .redeem-actions a { font-size:14px; } .redeem-main { padding-top:72px; } .account-panel { padding:20px; } }

@media(max-width:420px) {.redeem-topbar {padding:12px 16px;gap:12px;}.redeem-topbar>a img {width:110px;}.redeem-actions>a {display:none;}}

#profilePanel .profile-orders-link, #profilePanel .profile-orders-link:visited, #profilePanel .profile-orders-link:hover {color:#fff;text-decoration:none;}
#profilePanel .profile-orders-link:focus-visible {outline:2px solid #fff;outline-offset:4px;}
