.badges-rewards-shell{--badges-rewards-section-gap:clamp(28px, 5vw, 56px);--badges-rewards-page-gap:clamp(22px, 3.5vw, 36px);--app-shell-row-gap:var(--badges-rewards-page-gap);--badges-rewards-sticky-top:calc(var(--topbar-sticky-height,calc(72px + env(safe-area-inset-top))) + var(--member-tabs-sticky-height,0px) + var(--navigation-stack-gap,8px) + var(--navigation-stack-gap,8px));gap:var(--app-shell-row-gap);width:min(100%,1120px);padding-bottom:clamp(64px,9vw,110px);display:grid}.badges-rewards-shell [hidden]{display:none!important}.badges-rewards-hero{gap:12px;max-width:760px;padding:clamp(44px,8vw,86px) 0 0;display:grid}.badges-rewards-hero h1,.badges-rewards-hero p{margin:0}.badges-rewards-hero h1{color:var(--text);letter-spacing:-.055em;font-size:clamp(2.7rem,9vw,6rem);line-height:.94}.badges-rewards-hero .lead{max-width:62ch;color:var(--text-muted);font-size:clamp(1rem,2.2vw,1.2rem);line-height:1.65}.badges-rewards-tabs{top:var(--badges-rewards-sticky-top);z-index:110;border:1px solid var(--border);background:color-mix(in srgb, var(--background) 88%, transparent);-webkit-backdrop-filter:blur(18px);border-radius:999px;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:6px;transition:border-color .18s,background .18s,box-shadow .18s;display:grid;position:sticky}.badges-rewards-tabs.secondary-tabs-scrolled{border-color:color-mix(in srgb, var(--accent) 24%, var(--border));background:color-mix(in srgb, var(--background) 94%, transparent);box-shadow:0 12px 32px color-mix(in srgb, var(--shadow-color) 22%, transparent)}.badges-rewards-share-action{width:min(100%,760px);display:grid}.badges-rewards-share-action .share-entry-button{width:100%}.rewards-game-summary{scroll-margin-top:calc(var(--badges-rewards-sticky-top) + var(--secondary-tabs-sticky-height,0px) + 14px)}.badges-rewards-tab{min-height:44px;color:var(--text-muted);background:0 0;border:0;border-radius:999px;font-size:.82rem;font-weight:950}.badges-rewards-tab.active{background:var(--accent);color:var(--button-primary-text)}.badges-rewards-tab:focus-visible{outline:3px solid color-mix(in srgb, var(--accent) 42%, transparent);outline-offset:2px}.badges-rewards-panel{gap:var(--badges-rewards-section-gap);display:none}.badges-rewards-panel.active{display:grid}.reward-unlock-notice{border-left:4px solid var(--success);background:color-mix(in srgb, var(--success) 10%, var(--surface));grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;padding:18px;display:grid}.reward-unlock-notice[hidden]{display:none}.reward-unlock-notice p,.reward-unlock-notice strong{margin:0}.reward-unlock-notice strong{color:var(--text);margin-top:4px;font-size:1.1rem;display:block}.reward-unlock-notice div>p:last-child{color:var(--text-muted);margin-top:4px;line-height:1.45}.reward-unlock-thumbnail{object-fit:contain;background:#f4f4f2;border-radius:10px;width:64px;max-height:80px}.reward-unlock-thumbnail[hidden]{display:none}.reward-next-panel{border:1px solid color-mix(in srgb, var(--accent) 38%, var(--border));background:radial-gradient(circle at 100% 0%, color-mix(in srgb, var(--accent) 17%, transparent), transparent 38%), color-mix(in srgb, var(--surface-elevated) 88%, var(--surface));box-shadow:inset 0 1px 0 #ffffff1a, var(--shadow);border-radius:24px;gap:18px;padding:clamp(22px,4vw,38px);display:grid}.reward-next-heading,.badges-rewards-section-heading{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:14px 24px;display:flex}.reward-next-heading h2,.reward-next-heading p,.reward-next-panel>p,.badges-rewards-section-heading h2,.badges-rewards-section-heading p{margin:0}.reward-next-heading h2,.badges-rewards-section-heading h2{color:var(--text);letter-spacing:-.025em;margin-top:5px;font-size:clamp(1.6rem,4vw,2.5rem);line-height:1.08}#rewardTotalPoints,.badges-rewards-section-heading>span{border:1px solid color-mix(in srgb, var(--accent) 32%, var(--border));min-height:34px;color:var(--accent-strong);background:color-mix(in srgb, var(--accent) 9%, transparent);letter-spacing:.04em;white-space:nowrap;border-radius:999px;align-items:center;padding:0 12px;font-size:.72rem;font-weight:900;display:inline-flex}.reward-next-panel>p{color:var(--text-muted);line-height:1.55}.reward-next-progress,.reward-row-progress{border:1px solid color-mix(in srgb, var(--accent) 20%, var(--border));background:color-mix(in srgb, var(--background) 76%, transparent);border-radius:999px;height:11px;overflow:hidden}.reward-next-progress>span,.reward-row-progress>span{width:var(--reward-progress,0%);border-radius:inherit;background:linear-gradient(90deg, var(--accent), var(--accent-strong), var(--success));height:100%;transition:width .42s cubic-bezier(.16,1,.3,1);display:block}.rewards-catalog-section,.badges-gallery-section{border-top:1px solid var(--border);gap:22px;padding-top:clamp(24px,5vw,46px);display:grid}.badges-rewards-feedback{min-height:1.25rem;color:var(--text-muted);margin:-10px 0 0;font-size:.85rem}.rewards-list{display:grid}.reward-row{border-bottom:1px solid var(--border);grid-template-columns:auto minmax(0,1fr);gap:16px;padding:clamp(20px,4vw,30px) 0;display:grid;position:relative}.reward-row:first-child{border-top:1px solid var(--border)}.reward-row.is-next{border:1px solid color-mix(in srgb, var(--accent) 48%, var(--border));background:color-mix(in srgb, var(--accent) 7%, transparent);border-radius:20px;margin:10px 0;padding:clamp(20px,4vw,30px)}.reward-row-icon{color:var(--accent-strong)}.reward-row-thumbnail{aspect-ratio:1/1.2;border:1px solid color-mix(in srgb, var(--text) 18%, var(--border));object-fit:contain;object-position:center;background:#f4f4f2;border-radius:14px;align-self:start;width:76px}.reward-row.is-completed .reward-row-icon,.reward-row.is-owned .reward-row-icon{color:var(--success)}.reward-row-main{min-width:0}.reward-row-topline,.reward-row-footer,.badge-gallery-meta{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 16px;display:flex}.reward-row-topline>span:first-child,.reward-status,.badge-gallery-meta>span{color:var(--accent-strong);letter-spacing:.1em;text-transform:uppercase;font-size:.66rem;font-weight:950}.reward-status{color:var(--text-muted)}.reward-row h3,.reward-row p{margin:0}.reward-row h3{color:var(--text);margin-top:7px;font-size:clamp(1.25rem,3vw,1.75rem);line-height:1.15}.reward-row p{max-width:68ch;color:var(--text-muted);margin-top:8px;line-height:1.55}.reward-row-progress{height:8px;margin-top:16px}.reward-row-footer{align-items:flex-end;margin-top:14px}.reward-card-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;margin-left:auto;display:flex}.reward-row-footer small{max-width:62ch;color:var(--text-muted);font-weight:750;line-height:1.45}.reward-action-button,.reward-action-link{border:1px solid var(--accent-strong);color:#211600;background:var(--accent-strong);min-height:44px;font:inherit;cursor:pointer;border-radius:12px;justify-content:center;align-items:center;padding:0 15px;font-size:.78rem;font-weight:950;text-decoration:none;display:inline-flex}.reward-action-button:disabled{cursor:wait;opacity:.62}.reward-progress-action{border-color:color-mix(in srgb, var(--accent) 42%, var(--border));color:var(--text);background:color-mix(in srgb, var(--accent) 9%, var(--surface-elevated))}.reward-progress-action:hover{border-color:color-mix(in srgb, var(--accent) 68%, var(--border));background:color-mix(in srgb, var(--accent) 15%, var(--surface-elevated))}.reward-action-button:focus-visible,.reward-action-link:focus-visible{outline:3px solid color-mix(in srgb, var(--accent-strong) 60%, transparent);outline-offset:3px}.reward-next-marker,.reward-inactive-marker{color:#211600;background:var(--accent-strong);letter-spacing:.08em;text-transform:uppercase;border-radius:999px;padding:5px 8px;font-size:.6rem;font-weight:950;position:absolute;top:13px;right:13px}.reward-inactive-marker{color:var(--text-muted);background:var(--surface-elevated)}.badges-gallery-section{border:1px solid color-mix(in srgb, var(--accent) 22%, var(--border));background:color-mix(in srgb, var(--surface) 76%, transparent);border-radius:24px;padding:clamp(24px,5vw,42px)}.badges-gallery{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:14px;display:grid}.badge-gallery-card{--badge-color:#c08b55;border:1px solid color-mix(in srgb, var(--badge-color) 38%, var(--border));background:color-mix(in srgb, var(--badge-color) 7%, var(--surface-elevated));border-radius:18px;grid-template-columns:auto minmax(0,1fr);gap:14px;padding:17px;display:grid}.badge-gallery-card.silver{--badge-color:#bfc5cc}.badge-gallery-card.gold{--badge-color:var(--accent-strong)}.badge-gallery-icon,.badge-gallery-meta>span{color:var(--badge-color)}.badge-gallery-meta{align-items:flex-start}.badge-gallery-meta small{color:var(--text-muted);font-size:.68rem;font-weight:750;line-height:1.35}.badge-gallery-card h3,.badge-gallery-card p{margin:0}.badge-gallery-card h3{color:var(--text);margin-top:7px;font-size:1.05rem;line-height:1.2}.badge-gallery-card p{color:var(--text-muted);margin-top:6px;font-size:.82rem;line-height:1.5}.badges-rewards-empty{border:1px dashed color-mix(in srgb, var(--accent) 30%, var(--border));min-height:92px;color:var(--text-muted);border-radius:16px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;margin:0;padding:18px;display:grid}.badges-rewards-empty strong,.badges-rewards-empty span{display:block}.badges-rewards-empty strong{color:var(--text)}.badges-rewards-empty span{margin-top:4px;line-height:1.45}.badges-rewards-error{border-left:4px solid var(--danger);background:color-mix(in srgb, var(--danger) 10%, var(--surface));justify-items:start;gap:10px;padding:20px;display:grid}.badges-rewards-error[hidden]{display:none}.badges-rewards-error p{color:var(--text-muted);margin:0}.reward-detail-dialog{border:1px solid color-mix(in srgb, var(--accent) 38%, var(--border));width:min(100% - 24px,620px);max-height:min(88dvh,760px);color:var(--text);background:var(--surface);box-shadow:var(--shadow);border-radius:24px;margin:auto;padding:0;overflow:hidden}.reward-detail-dialog::backdrop{background:var(--overlay-background,#000000c2);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.reward-detail-dialog-inner{overscroll-behavior:contain;gap:14px;max-height:min(88dvh,760px);padding:clamp(22px,5vw,36px);display:grid;position:relative;overflow-y:auto}.reward-detail-dialog h2,.reward-detail-dialog p{margin:0}.reward-detail-dialog h2{color:var(--text);letter-spacing:-.035em;padding-right:44px;font-size:clamp(1.7rem,6vw,2.6rem);line-height:1.05}.reward-detail-close{border:1px solid var(--border);width:44px;min-height:44px;color:var(--text);background:var(--surface-elevated);border-radius:999px;place-items:center;padding:0;font-size:1.6rem;line-height:1;display:grid;position:absolute;top:14px;right:14px}.reward-detail-description,.reward-detail-message,.reward-detail-feedback{color:var(--text-muted);line-height:1.55}.reward-detail-content{gap:14px;display:grid}.reward-detail-content[aria-busy=true]{opacity:.68;min-height:88px}.reward-detail-thumbnail{border:1px solid color-mix(in srgb, var(--text) 18%, var(--border));object-fit:contain;background:#f4f4f2;border-radius:18px;justify-self:center;width:min(100%,300px);max-height:330px}.reward-detail-progress{border:1px solid var(--border);background:var(--progress-track);border-radius:999px;height:10px;overflow:hidden}.reward-detail-progress span{width:var(--reward-progress,0%);background:linear-gradient(90deg, var(--progress-fill-start), var(--progress-fill-end));height:100%;display:block}.reward-detail-state{border:1px solid color-mix(in srgb, var(--accent) 28%, var(--border));background:color-mix(in srgb, var(--accent) 7%, var(--surface-elevated));border-radius:14px;gap:7px;padding:14px;display:grid}.reward-detail-state>div{justify-content:space-between;align-items:center;gap:12px;display:flex}.reward-detail-state span{color:var(--text-muted);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:900}.reward-detail-state strong{color:var(--accent-strong)}.reward-detail-state p{color:var(--text-muted);font-size:.84rem;line-height:1.45}.reward-detail-encouragement{border-left:3px solid var(--accent);background:color-mix(in srgb, var(--accent) 9%, var(--surface-elevated));border-radius:12px;padding:14px}.reward-detail-encouragement p{color:var(--text-muted);margin-top:5px}.reward-detail-facts{border-top:1px solid var(--border);display:grid}.reward-detail-facts p{border-bottom:1px solid var(--border);grid-template-columns:minmax(90px,.45fr) 1fr;gap:12px;padding:11px 0;display:grid}.reward-detail-facts span{color:var(--text-muted);overflow-wrap:anywhere}.reward-code{border:1px solid color-mix(in srgb, var(--accent) 48%, var(--border));background:color-mix(in srgb, var(--accent) 8%, var(--surface-elevated));border-radius:14px;gap:7px;padding:15px;display:grid}.reward-code span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:850}.reward-code code{color:var(--text);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;font-size:1rem;font-weight:850}.reward-detail-feedback{min-height:1.4rem}.reward-detail-actions{flex-wrap:wrap;gap:10px;display:flex}.reward-detail-actions>*{flex:160px;min-height:44px}:root[data-theme=light] .reward-next-panel,:root[data-theme=light] .badges-gallery-section,:root[data-theme=light] .badge-gallery-card{box-shadow:inset 0 1px #fff,0 18px 42px #30261717}:root[data-theme=dominion-night] .badges-rewards-tabs{background:color-mix(in srgb, var(--background-soft) 88%, transparent)}@media (width>=720px){.reward-row{grid-template-columns:76px minmax(0,1fr)}.reward-row.is-next{padding-right:120px}}@media (width<=520px){.badges-rewards-tabs{border-radius:22px}.badges-rewards-tab{border-radius:16px;padding-inline:5px;font-size:.7rem}.reward-row-footer{align-items:stretch}.reward-card-actions{width:100%;margin-left:0}.reward-action-button,.reward-action-link{width:100%}.reward-row-thumbnail{width:58px}.reward-detail-dialog-inner{padding:24px 18px}.reward-detail-facts p{grid-template-columns:1fr;gap:4px}.reward-next-marker,.reward-inactive-marker{grid-column:2;place-self:start;position:static}}@media (prefers-reduced-motion:reduce){.badges-rewards-tabs,.reward-next-progress>span,.reward-row-progress>span{transition:none}}
