.rewards-panel { margin-top: 12px; color: #173d34; }
.rewards-panel *, .rewards-panel *::before, .rewards-panel *::after { box-sizing: border-box; }
.rewards-heading, .rewards-section, .rewards-policy { border: 1px solid rgba(39,137,104,.18); border-radius: 22px; background: rgba(255,255,255,.86); box-shadow: 0 10px 26px rgba(20,93,69,.08); }
.rewards-heading { display:flex; align-items:center; justify-content:space-between; min-height:100px; padding:16px; }
.rewards-heading p, .rewards-heading h2, .rewards-heading small, .rewards-policy, .rewards-section h3, .rewards-section p { margin:0; }
.rewards-heading p { color:#129368; font-size:12px; font-weight:750; }.rewards-heading h2 { margin-top:3px; font-size:18px; }.rewards-heading h2 strong { color:#0b9665; font-size:27px; }.rewards-heading small { color:#5b766d; font-size:12px; }.rewards-heading > img { width:76px; height:76px; object-fit:contain; }
.rewards-policy { margin-top:8px; padding:11px 14px; color:#5b766d; font-size:12px; line-height:1.5; }
.rewards-section { margin-top:12px; padding:16px; }.rewards-section-title { display:flex; justify-content:space-between; gap:8px; align-items:baseline; }.rewards-section-title h3 { font-size:15px; }.rewards-section-title span { color:#6d8a80; font-size:11px; }
.rewards-ledger ul { margin:9px 0 0; padding:0; list-style:none; }.rewards-ledger li { display:flex; justify-content:space-between; gap:12px; padding:9px 0; border-top:1px solid #e2efe9; }.rewards-ledger li div { min-width:0; }.rewards-ledger li strong,.rewards-ledger li small { display:block; }.rewards-ledger li strong { font-size:13px; }.rewards-ledger li small { margin-top:2px; color:#6d8a80; font-size:11px; }.rewards-ledger b { align-self:center; color:#0c9562; font-size:14px; white-space:nowrap; }.rewards-ledger b.minus { color:#be5353; }.rewards-ledger b.zero { color:#748b83; }
.rewards-more,.rewards-reload { width:100%; min-height:39px; margin-top:10px; border:1px solid #9bcfb9; border-radius:12px; color:#0d8058; background:#f1fff7; font:inherit; font-size:13px; font-weight:700; cursor:pointer; }.rewards-more:disabled { opacity:.65; cursor:wait; }
.rewards-badges { display:grid; gap:8px; margin-top:10px; }.reward-badge { display:flex; gap:10px; align-items:center; padding:10px; border-radius:13px; background:#f4fbf7; }.reward-badge > span { display:grid; flex:0 0 28px; width:28px; height:28px; place-items:center; border-radius:50%; background:#d8f4e6; color:#07835a; font-size:17px; }.reward-badge.locked { opacity:.62; background:#f5f8f6; }.reward-badge.locked > span { background:#e7ece9; color:#799087; }.reward-badge strong,.reward-badge p,.reward-badge small { display:block; }.reward-badge strong { font-size:13px; }.reward-badge p,.reward-badge small { margin-top:2px!important; color:#607b71; font-size:11px; line-height:1.4; }
.rewards-avatars { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; margin-top:10px; }.reward-avatar { min-width:0; padding:9px 5px; border:1px solid #cce8dc; border-radius:14px; background:#fff; color:#41645a; font:inherit; cursor:pointer; }.reward-avatar img,.reward-avatar-fallback { display:block; width:48px; height:48px; margin:0 auto 5px; object-fit:contain; }.reward-avatar-fallback { display:grid; place-items:center; font-size:27px; }.reward-avatar strong,.reward-avatar small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.reward-avatar strong { font-size:12px; }.reward-avatar small { margin-top:3px; color:#6d8a80; font-size:10px; }.reward-avatar.selected { border-color:#14a36f; background:#e7f8ef; color:#087b53; box-shadow:inset 0 0 0 1px #14a36f; }.reward-avatar.locked { cursor:not-allowed; opacity:.57; filter:grayscale(.6); }.rewards-save { width:100%; min-height:44px; margin-top:10px; border:0; border-radius:13px; color:#fff; background:#149c6a; font:inherit; font-weight:750; cursor:pointer; }.rewards-save:disabled { cursor:wait; opacity:.65; }
.rewards-empty { margin-top:10px!important; color:#6d8a80; font-size:12px; }.rewards-error { margin:8px 0 0!important; color:#c64040; font-size:12px; }
.rewards-panel :focus-visible { outline:2px solid #087b53; outline-offset:3px; }
@media (max-width:360px) { .rewards-section { padding:13px; }.rewards-heading > img { width:62px; height:62px; }.reward-avatar strong { font-size:11px; } }
