:root{--award-atlas:url('../assets/atlases/achievement-ui.png');--award-ink:#191716;--award-ivory:#f4e8d1;--award-red:#b5242d}
.hero-actions button,.action-row button,.page-card button,.modal button,.award-detail button{position:relative;isolation:isolate;background:transparent;border:0;color:var(--award-ink);border-radius:0;font-family:var(--serif);font-weight:700;min-height:52px;padding:14px 24px}
.hero-actions button:before,.action-row button:before,.page-card button:before,.modal button:before,.award-detail button:before{content:'';position:absolute;inset:0;z-index:-1;background-image:var(--award-atlas);background-size:var(--award-paper-size);background-position:var(--award-paper-position);background-repeat:no-repeat}
.hero-actions .button-red,.action-row .action-divide,.page-card .button-red,.modal .button-red,.award-detail .button-red{color:var(--award-ivory)}
.hero-actions .button-red:before,.action-row .action-divide:before,.page-card .button-red:before,.modal .button-red:before,.award-detail .button-red:before{background-size:var(--award-red-size);background-position:var(--award-red-position)}
.action-row button{min-height:82px;font-size:27px;padding:17px 20px}.action-row small{font-weight:500}
.hero-actions button{min-width:155px;font-size:18px}.hero-actions{gap:12px}
button:hover:not(:disabled){filter:brightness(1.07)}button:active:not(:disabled){filter:brightness(.94)}
button:focus-visible{outline:2px solid #e6c59e;outline-offset:4px}
.player-score{display:grid;grid-template-columns:auto auto;gap:4px 9px;align-items:center}.player-score .score{grid-column:1/-1}
.player-score small{font-size:12px}.equipped-title{display:inline-flex;align-items:center;gap:8px;position:relative;isolation:isolate;padding:7px 12px;color:var(--award-ink);font-family:var(--serif);font-size:13px;font-weight:700;line-height:1.4}
.equipped-title:before{content:'';position:absolute;inset:0;z-index:-1;background-image:var(--award-atlas);background-size:var(--award-paper-size);background-position:var(--award-paper-position)}
.equipped-title i{font-style:normal;border:1px solid var(--award-red);color:var(--award-red);font-size:10px;padding:1px}
.awards-shell{background:linear-gradient(180deg,#080b10b0,#101116 440px),url('../assets/artwork/landscape.png') center top / auto 620px no-repeat,#101116}
.awards-header{position:relative;z-index:1}.awards-header>span{font:24px var(--serif)}.awards-header button{border:0;background:transparent;font:17px var(--serif);padding-left:0}
.awards-page{max-width:1040px;margin:auto;padding:28px 26px 48px}.awards-intro{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:15px;position:relative}.awards-intro h1{font:700 clamp(28px,5vw,44px) var(--serif);letter-spacing:.1em}.eyebrow{font:10px system-ui;letter-spacing:.28em;color:#c1b8a9;margin-bottom:7px}
.collection-count{font:24px var(--serif);color:#bcb5a9;white-space:nowrap}.collection-count b{font-size:60px;color:var(--award-ivory);font-weight:500}.awards-page progress{display:block;width:100%;height:8px;border:1px solid #8b8275;background:#403d39;border-radius:0;accent-color:var(--award-red)}progress::-webkit-progress-bar{background:#55504a}progress::-webkit-progress-value{background:linear-gradient(90deg,#a51e26,#d54b40)}progress::-moz-progress-bar{background:#b5242d}
.equipped-slot{display:flex;align-items:center;gap:14px;margin:22px 0 17px;min-height:46px}.equipped-slot>span{font:12px var(--serif);color:#cfc7bb;white-space:nowrap}.equipped-slot>strong{font-size:14px;font-weight:400;color:#b5afa6}.equipped-slot .equipped-title{font-size:19px;padding:11px 22px}
.award-filters{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid #69615b;margin:12px 0 24px}.award-filters button{position:relative;border:0;border-radius:0;background:transparent;min-height:49px;font:18px var(--serif);color:#c6c1b9}.award-filters button[aria-pressed=true]{color:var(--award-ivory)}.award-filters button[aria-pressed=true]:after{content:'';position:absolute;bottom:-2px;left:12%;right:12%;height:4px;background:var(--award-red)}
.award-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:22px;align-items:start}.award-list{display:grid;gap:12px}.award-row{position:relative;isolation:isolate;display:grid;grid-template-columns:48px minmax(0,1fr) 74px;align-items:center;gap:14px;text-align:left;min-height:112px;width:100%;padding:19px 16px;border:1px solid #655f54;border-radius:0;background:#262628da;color:#f2eade;font-weight:400}
.award-row.earned{background:transparent;color:var(--award-ink);border-color:transparent}.award-row.earned:before,.award-detail:before,.result-award:before,.award-toast:before{content:'';position:absolute;inset:0;z-index:-1;background-image:var(--award-atlas);background-size:var(--award-panel-size);background-position:var(--award-panel-position);background-repeat:no-repeat}
.award-row.selected{outline:2px solid #f0dbb8;outline-offset:3px}.award-row.locked:after{content:'';position:absolute;inset:5px;pointer-events:none;border:1px solid #9d938144}
.award-seal{display:flex;align-items:center;justify-content:center;flex:none;width:48px;height:48px;font:700 30px var(--serif);color:var(--award-red);background-image:var(--award-atlas);background-size:var(--award-seal-size);background-position:var(--award-seal-position);line-height:1;position:relative}.award-seal.small-glyph{font-size:19px}.locked .award-seal{filter:grayscale(1);opacity:.68}
.award-copy{display:flex;flex-direction:column;gap:7px;min-width:0}.award-copy>strong{font:700 21px var(--serif);line-height:1.4}.award-copy>span{font:12px/1.6 system-ui}.award-state{text-align:right;font:14px var(--serif);white-space:nowrap}.award-state em{font:14px var(--serif);font-style:normal;border:1px solid currentColor;display:inline-block;padding:3px 4px}.earned .award-state{color:#8e272b}.award-state progress{height:5px;margin-top:10px}
.award-detail{position:sticky;top:18px;isolation:isolate;padding:28px 26px;color:var(--award-ink);min-height:320px;scroll-margin-top:12px}.detail-heading{display:flex;align-items:center;gap:14px;margin-bottom:15px}.detail-heading h2{font:700 25px/1.4 var(--serif)}.award-tier{font-size:12px;color:#62544a;margin:8px 0 18px}.award-detail h3{display:inline-block;font-size:12px;font-weight:400;background:#514b43;color:#f7eedc;padding:4px 10px;margin-bottom:10px}.award-detail>p:not(.award-tier){font:14px/1.8 var(--serif)}.award-detail progress{margin:18px 0 8px}.award-detail .detail-progress{color:#95242a}.award-detail button{width:100%;margin:15px 0;font-size:17px}.award-detail .award-hint{font-size:11px!important;color:#665c50;margin-top:22px}.award-detail:focus{outline:2px solid #d4bea0;outline-offset:4px}.award-empty{padding:32px 12px;color:#d6cdbd;font-size:14px}
.card-mastery{display:flex;gap:8px;margin:12px 0 3px;flex-wrap:wrap}.card-mastery span{display:inline-flex;justify-content:center;align-items:center;width:30px;height:30px;border:1px solid #898078;color:#aaa399;font:15px var(--serif)}.card-mastery .complete{background:#f7ecd5;color:#a5232b;border-color:#b5242d}.award-storage{font-size:12px;color:#b5aba0;text-align:center;margin-top:32px}
.award-toast{position:fixed;z-index:12;left:50%;bottom:max(18px,env(safe-area-inset-bottom));transform:translateX(-50%);isolation:isolate;display:flex;gap:16px;align-items:center;width:min(540px,calc(100vw - 28px));padding:20px 25px;color:var(--award-ink);filter:drop-shadow(0 5px 18px #000b);pointer-events:none;animation:award-appear .22s ease-out}.award-toast[hidden]{display:none}.award-toast>div{display:flex;flex-direction:column;gap:4px;min-width:0}.award-toast small{font:12px var(--serif);color:#8e282b}.award-toast strong{font:700 23px var(--serif)}.award-toast span:not(.award-seal){font:12px/1.5 system-ui}
.result-awards{margin:25px 0}.result-awards h2{font-size:20px;margin-bottom:16px}.result-award{position:relative;isolation:isolate;width:100%;display:flex;gap:14px;align-items:center;text-align:left;margin:10px 0!important;padding:17px 24px!important}.result-award:before{background-size:var(--award-panel-size)!important;background-position:var(--award-panel-position)!important}.result-award>span:not(.award-seal){flex:1;font-size:19px}.result-award small{font:11px system-ui}.storage-error{position:relative;z-index:20;background:#481b21;color:#ffe5cd;padding:14px;margin:10px;font-size:13px}
@keyframes award-appear{from{opacity:0;transform:translate(-50%,7px)}to{opacity:1;transform:translate(-50%,0)}}
@media(max-width:759px){.awards-page{padding:20px 14px 36px}.award-layout{grid-template-columns:1fr}.award-detail{position:relative;top:auto;padding:30px;min-height:0}.award-row{min-height:100px;padding:17px 15px;gap:10px;grid-template-columns:43px minmax(0,1fr) 65px}.award-seal{width:43px;height:43px;font-size:27px}.award-copy>strong{font-size:19px}.award-state{font-size:13px}.award-state em{font-size:12px}.collection-count b{font-size:48px}.equipped-slot .equipped-title{font-size:16px}.award-copy>span{font-size:11px}.player-score .equipped-title{font-size:10px;padding:5px 8px;max-width:150px}.player-score{gap:2px 6px}.player-score small{font-size:10px}.equipped-title i{display:none}.action-row button{font-size:22px;padding:14px 12px;min-height:76px}.award-toast{padding:17px 22px;gap:12px}.award-toast strong{font-size:20px}.award-filters{margin-bottom:20px}.result-award{padding:15px!important}.result-award>span:not(.award-seal){font-size:16px}.result-award small{display:none}}
@media(prefers-reduced-motion:reduce){.award-toast{animation:none}}
.locked .award-seal{filter:grayscale(1) brightness(3);opacity:.85}
.equipped-slot>.equipped-title{color:var(--award-ink);font-weight:700}
@media(max-width:759px){.award-list{max-height:53dvh;overflow-y:auto;padding:5px;overscroll-behavior:contain;scrollbar-color:#927767 #29272a}}
