/* An illuminated collectible: hold, uncover, settle, then a little discovery. */
dialog.trophy-reveal {
  --reveal-ink:#263e34; --reveal-teal:#31564a; --reveal-gold:#a17a3f;
  --reveal-paper:#fbf8ef; --reveal-ease:cubic-bezier(.19,1,.22,1);
  box-sizing:border-box; width:min(568px,calc(100% - 32px)); max-width:568px;
  max-height:calc(100dvh - 32px); margin:auto; padding:0; overflow:hidden;
  border:1px solid #fffdf9; border-radius:28px; color:var(--reveal-ink);
  background:var(--reveal-paper); box-shadow:0 32px 110px #0b201d59,0 2px 6px #0b201d12;
  font-family:Figtree,system-ui,sans-serif; isolation:isolate;
}
dialog.trophy-reveal[open]{display:flex;flex-direction:column}
dialog.trophy-reveal::backdrop{background:#132b25a3;backdrop-filter:blur(10px) saturate(.7)}
.trophy-reveal *{box-sizing:border-box}
.trophy-reveal-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;flex:none;padding:14px 18px 0 28px;position:relative;z-index:3}
.trophy-reveal-brand{font:500 15px/1.2 Fraunces,Georgia,serif;letter-spacing:-.4px;color:#647163}
.trophy-reveal-brand>span{font-size:11px;margin-left:4px;color:#a17a3f}
.trophy-reveal-dismissals{display:flex;align-items:center;gap:2px}
.trophy-reveal button{font-family:inherit;cursor:pointer;border:0;box-shadow:none;transition:background .16s ease;color:var(--reveal-ink)}
.trophy-reveal button:focus-visible,.trophy-reveal a:focus-visible{outline:3px solid #967037;outline-offset:3px}
.trophy-reveal .trophy-reveal-close{font-size:25px;line-height:1;font-weight:400;padding:0;width:44px;height:44px;min-height:44px;border-radius:50%;background:transparent;color:#657363}
.trophy-reveal .trophy-reveal-close:hover,.trophy-reveal .trophy-reveal-skip:hover{background:#ececde}
.trophy-reveal .trophy-reveal-skip{font-size:11px;font-weight:500;min-height:44px;padding:8px 11px;border-radius:12px;background:transparent;color:#63705f}
.trophy-reveal[data-phase=earned] .trophy-reveal-skip{visibility:hidden}
.trophy-reveal-scroll{min-height:0;overflow:auto;overscroll-behavior:contain;padding:0 38px 26px;scrollbar-width:thin;scrollbar-color:#cdd1c0 transparent}
.trophy-reveal-heading{text-align:center;margin:9px 0 0;position:relative;z-index:2}
.trophy-reveal p.trophy-reveal-eyebrow{margin:0;color:#6d765c;font-size:10px;line-height:1.6;letter-spacing:1.9px;font-weight:600}
.trophy-reveal-heading .trophy-reveal-eyebrow>span{display:inline-grid;place-items:center;width:19px;height:19px;margin-right:6px;border:1px solid #a5b099;border-radius:50%;font-size:11px;letter-spacing:0}
.trophy-reveal .trophy-reveal-heading h2{padding:0;margin:13px 0 8px;font:500 clamp(30px,5.3vw,38px)/1.15 Fraunces,Georgia,serif;letter-spacing:-1.3px;color:var(--reveal-ink)}
.trophy-reveal-heading>p:last-child{margin:0;font-size:13px;line-height:1.5;color:#717966}
.trophy-reveal-stage{position:relative;display:grid;place-items:center;height:310px;margin:3px -24px 0;isolation:isolate;contain:layout style;overflow:hidden}
.trophy-reveal-halo{position:absolute;width:370px;height:294px;border-radius:50%;background:radial-gradient(ellipse at 50% 54%,#f0dcab99 0%,#efe5c34d 40%,#f9f5e900 72%);transform:scale(.72);opacity:.2}
.trophy-reveal-rays{position:absolute;inset:0;background:linear-gradient(120deg,transparent 30%,#fff7d282 48%,transparent 66%);opacity:0;mask-image:radial-gradient(ellipse at center,#000,transparent 64%);pointer-events:none}
.trophy-reveal-ring{display:none;position:absolute;width:256px;height:256px;border:1px solid #ad915030;border-radius:50%;pointer-events:none;opacity:.55}
.trophy-reveal-ring-outer{transform:scale(.92);border-color:#ad915021}
.trophy-reveal-ring-inner{width:244px;height:244px;transform:scale(.92);border-color:#ad91500e}
.trophy-reveal-art{position:relative;z-index:2;width:354px;height:354px;transform:translateY(0) scale(.88);mix-blend-mode:darken}
.trophy-reveal-art>img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;mask-size:contain;mask-position:center;mask-repeat:no-repeat;-webkit-mask-size:contain;-webkit-mask-position:center;-webkit-mask-repeat:no-repeat}
.trophy-reveal-art>img[hidden]{display:none!important}
.trophy-reveal-silhouette{opacity:.4;filter:sepia(1) saturate(.3)}
.trophy-reveal-derived-silhouette{filter:brightness(0) saturate(0);opacity:.19}
.trophy-reveal-earned-art{opacity:0;filter:brightness(1.025) contrast(1.025)}
.trophy-reveal-fallback{position:absolute;inset:28px 48px;color:#78836c;opacity:.5;transition:color .5s ease}
.trophy-reveal-fallback svg{display:block;width:100%;height:100%}
.trophy-reveal-art[data-silhouette-ready] .trophy-reveal-fallback{opacity:0}
.trophy-reveal-glint{position:absolute;inset:0;z-index:3;mask-image:radial-gradient(ellipse,#000 18%,transparent 68%);background:linear-gradient(115deg,transparent 29%,#fff8d694 45%,#fffdecbd 49%,transparent 64%) no-repeat;opacity:0;mask-size:contain;mask-position:center;mask-repeat:no-repeat;-webkit-mask-size:contain;-webkit-mask-position:center;-webkit-mask-repeat:no-repeat;pointer-events:none}
.trophy-reveal-pedestal{position:absolute;bottom:12px;width:268px;height:34px;border-radius:50%;background:radial-gradient(ellipse at 50% 40%,#9e9f7952 0%,#d6d3b641 36%,#e7e3ca21 57%,transparent 73%);transform:scale(.8);opacity:.35;z-index:0}
.trophy-reveal-stage::before{content:"";position:absolute;bottom:18px;width:84%;height:1px;background:linear-gradient(90deg,transparent,#b9ad851a 25%,#b9ad8540 50%,#b9ad851a 75%,transparent);opacity:.8;z-index:0}
.trophy-reveal-particles{position:absolute;inset:0;pointer-events:none}
.trophy-reveal-particle{position:absolute;left:50%;top:46%;width:3px;height:3px;background:#c49b50;border-radius:50%;opacity:0;--angle:calc(var(--particle)*60deg + 18deg);transform:rotate(var(--angle)) translateY(-90px)}
.trophy-reveal-particle:nth-child(2n){width:2px;height:2px;background:#f5df9e;box-shadow:0 0 7px #d1ad6680}
.trophy-reveal-identity{text-align:center;position:relative;z-index:2;margin:-4px 0 24px;opacity:0;transform:translateY(8px)}
.trophy-reveal p.trophy-reveal-earned-label{display:flex;align-items:center;justify-content:center;gap:10px;font-size:9px;line-height:1.6;letter-spacing:2.5px;font-weight:600;color:#95703b;margin:0 0 9px}
.trophy-reveal-earned-label>span{display:block;width:24px;height:1px;background:linear-gradient(90deg,transparent,#ad8b4966);font-size:0}
.trophy-reveal-earned-label>span:last-child{transform:rotate(180deg)}
.trophy-reveal .trophy-reveal-title{margin:0;color:#2d4538;font:500 28px/1.16 Fraunces,Georgia,serif;letter-spacing:-.7px;overflow-wrap:anywhere;text-wrap:balance}
.trophy-reveal p.trophy-reveal-edition{font-size:11px;line-height:1.5;color:#727b65;margin:8px 0 0;min-height:17px;overflow-wrap:anywhere}
.trophy-reveal-fact{display:grid;grid-template-columns:minmax(0,1fr);border:1px solid #dbe0cf;border-radius:16px;background:linear-gradient(120deg,#edf0e2bb,#f5f4e8b3);padding:19px 22px;visibility:hidden;opacity:0;transform:translateY(10px)}
.trophy-reveal-fact-icon{display:none}
.trophy-reveal-fact .trophy-reveal-eyebrow{font-size:9px;letter-spacing:1.7px;color:#728064}
.trophy-reveal .trophy-reveal-fact h4{font:500 19px/1.27 Fraunces,Georgia,serif;letter-spacing:-.3px;color:#344b39;margin:8px 0 7px;overflow-wrap:anywhere}
.trophy-reveal p.trophy-reveal-fact-text{font-size:13px;line-height:1.65;color:#5f6b55;margin:0;overflow-wrap:anywhere}
.trophy-reveal .trophy-reveal-source{display:inline-block;color:#506747;font-size:12px;line-height:1.5;text-decoration:underline;text-decoration-color:#abb499;text-underline-offset:3px;margin-top:10px;overflow-wrap:anywhere}
.trophy-reveal .trophy-reveal-source[hidden]{display:none!important}
.trophy-reveal-actions{display:flex;align-items:center;gap:12px;justify-content:space-between;margin:0;padding:17px 28px 21px;border-top:1px solid #e0e4d5;background:var(--reveal-paper);flex:none}
.trophy-reveal .trophy-reveal-calendar{font-size:12px;font-weight:500;text-align:left;line-height:1.4;padding:10px 8px;min-height:46px;background:transparent;color:#5b6d55;border-radius:10px}
.trophy-reveal-calendar span{margin-left:6px}
.trophy-reveal .trophy-reveal-calendar:hover{background:#edeedf}
.trophy-reveal .trophy-reveal-calendar[hidden]{display:none!important}
.trophy-reveal .trophy-reveal-continue{display:flex;justify-content:center;align-items:center;gap:29px;min-width:152px;min-height:48px;margin-left:auto;padding:13px 19px;border:1px solid #234637;border-radius:13px;background:linear-gradient(180deg,#3a6051,#2e5144);color:#fffdf2;font-size:13px;font-weight:600;box-shadow:inset 0 1px #ffffff15,0 2px 4px #2846340b}
.trophy-reveal .trophy-reveal-continue:hover{background:#254b3c}
.trophy-reveal-continue span{font-size:19px;line-height:1;font-weight:400}
.trophy-reveal .trophy-reveal-announcement{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;margin:0;padding:0}
/* Keep the 2.8-second contract. A 500ms hold makes the unveiling feel intentional. */
.trophy-reveal[data-phase=revealing] .trophy-reveal-art{animation:trophy-reveal-lift 2.8s var(--reveal-ease) both}
.trophy-reveal[data-phase=revealing] .trophy-reveal-silhouette{animation:trophy-reveal-shadow 2.8s var(--reveal-ease) both}
.trophy-reveal[data-phase=revealing] .trophy-reveal-earned-art{animation:trophy-reveal-color 2.8s var(--reveal-ease) both}
.trophy-reveal[data-phase=revealing] .trophy-reveal-halo{animation:trophy-reveal-light 2.8s ease both}
.trophy-reveal[data-phase=revealing] .trophy-reveal-rays{animation:trophy-reveal-rays 1.5s .45s ease both}
.trophy-reveal[data-phase=revealing] .trophy-reveal-ring{animation:trophy-reveal-orbit 2.8s var(--reveal-ease) both}
.trophy-reveal[data-phase=revealing] .trophy-reveal-glint{animation:trophy-reveal-glint 1.25s .78s ease both}
.trophy-reveal[data-phase=revealing] .trophy-reveal-particle{animation:trophy-reveal-particle 1.25s calc(.95s + var(--particle)*.045s) ease-out both}
.trophy-reveal[data-phase=revealing] .trophy-reveal-pedestal{animation:trophy-reveal-ground 2.8s ease both}
.trophy-reveal[data-phase=revealing] .trophy-reveal-identity{animation:trophy-reveal-identity .65s 1.7s var(--reveal-ease) both}
.trophy-reveal[data-phase=revealing] .trophy-reveal-fallback{color:#b38b43}
.trophy-reveal[data-phase=earned] .trophy-reveal-art{transform:translateY(-8px)}
.trophy-reveal[data-phase=earned] .trophy-reveal-earned-art{opacity:1;transform:none;clip-path:none}
.trophy-reveal[data-phase=earned] .trophy-reveal-silhouette{opacity:0}
.trophy-reveal[data-phase=earned] .trophy-reveal-fallback{color:#b38b43;opacity:1}
.trophy-reveal[data-phase=earned] .trophy-reveal-art[data-art-ready] .trophy-reveal-fallback{opacity:0}
.trophy-reveal[data-phase=earned] .trophy-reveal-halo{opacity:.65;transform:scale(1)}
.trophy-reveal[data-phase=earned] .trophy-reveal-ring{opacity:.3;transform:scale(1)}
.trophy-reveal[data-phase=earned] .trophy-reveal-pedestal{opacity:1;transform:scale(1)}
.trophy-reveal[data-phase=earned] .trophy-reveal-identity{opacity:1;transform:none}
.trophy-reveal[data-phase=earned] .trophy-reveal-fact{visibility:visible;opacity:1;transform:none;transition:opacity .4s ease,transform .55s var(--reveal-ease)}
@keyframes trophy-reveal-lift{0%,18%{transform:translateY(0) scale(.88)}63%{transform:translateY(-11px) scale(1.015)}82%,100%{transform:translateY(-8px)}}
@keyframes trophy-reveal-shadow{0%,16%{opacity:.4}26%,100%{opacity:0}}
@keyframes trophy-reveal-color{0%,23%{opacity:0}52%,100%{opacity:1}}
@keyframes trophy-reveal-light{0%,12%{opacity:.2;transform:scale(.72)}47%{opacity:1;transform:scale(1.08)}85%,100%{opacity:.65;transform:scale(1)}}
@keyframes trophy-reveal-rays{0%{opacity:0;transform:translateX(-100px)}45%{opacity:.72}100%{opacity:0;transform:translateX(100px)}}
@keyframes trophy-reveal-orbit{0%,18%{opacity:.35;transform:scale(.92)}48%{opacity:.75}100%{opacity:.3;transform:scale(1)}}
@keyframes trophy-reveal-glint{0%{opacity:0;background-position:-110px 0}38%{opacity:.45}100%{opacity:0;background-position:110px 0}}
@keyframes trophy-reveal-particle{0%{opacity:0;transform:rotate(var(--angle)) translateY(-90px) scale(.6)}25%{opacity:.8}100%{opacity:0;transform:rotate(var(--angle)) translateY(-144px) scale(.35)}}
@keyframes trophy-reveal-ground{0%,18%{opacity:.5;transform:scale(.8)}70%,100%{opacity:1;transform:scale(1)}}
@keyframes trophy-reveal-identity{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:480px){
 dialog.trophy-reveal{width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-radius:23px}
 .trophy-reveal-toolbar{padding:9px 10px 0 22px}.trophy-reveal-brand{font-size:14px}
 .trophy-reveal-scroll{padding:0 23px 22px}.trophy-reveal-heading{margin-top:8px}
 .trophy-reveal-stage{height:274px;margin-top:3px}.trophy-reveal-art{width:328px;height:328px}
 .trophy-reveal-ring{width:226px;height:226px}.trophy-reveal-ring-inner{width:216px;height:216px}
 .trophy-reveal-identity{margin-bottom:22px}.trophy-reveal .trophy-reveal-title{font-size:26px}
 .trophy-reveal-fact{padding:17px 18px}.trophy-reveal .trophy-reveal-fact h4{font-size:18px}
 .trophy-reveal-actions{padding:14px 19px 17px;gap:8px}.trophy-reveal .trophy-reveal-continue{min-width:130px;gap:19px}
 .trophy-reveal .trophy-reveal-calendar{font-size:11px;max-width:155px;padding-left:4px;padding-right:4px}
}
@media(max-height:760px){
 .trophy-reveal-stage{height:232px;margin-top:1px}.trophy-reveal-art{width:284px;height:284px}
 .trophy-reveal-ring{width:204px;height:204px}.trophy-reveal-ring-inner{width:194px;height:194px}
 .trophy-reveal-heading{margin-top:2px}.trophy-reveal .trophy-reveal-heading h2{font-size:32px;margin-top:10px}
 .trophy-reveal-identity{margin-bottom:19px}.trophy-reveal-fact{padding-top:16px;padding-bottom:16px}.trophy-reveal-scroll{padding-bottom:20px}
}
@media(max-height:620px){
 .trophy-reveal-stage{height:198px}.trophy-reveal-art{width:246px;height:246px}.trophy-reveal-pedestal{width:216px;height:26px;bottom:8px}
 .trophy-reveal-ring{width:174px;height:174px}.trophy-reveal-ring-inner{width:164px;height:164px}
 .trophy-reveal .trophy-reveal-heading h2{font-size:28px}.trophy-reveal-heading>p:last-child{font-size:12px}
 .trophy-reveal .trophy-reveal-title{font-size:24px}.trophy-reveal-toolbar{padding-top:6px}.trophy-reveal-actions{padding-top:11px;padding-bottom:13px}
}
@media(prefers-reduced-motion:reduce){
 .trophy-reveal *,.trophy-reveal *::before,.trophy-reveal *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 .trophy-reveal-rays,.trophy-reveal-particles,.trophy-reveal-glint{display:none}
 .trophy-reveal .trophy-reveal-art{transform:translateY(-8px)}
 .trophy-reveal .trophy-reveal-earned-art{opacity:1;transform:none;clip-path:none}.trophy-reveal .trophy-reveal-silhouette{opacity:0}
 .trophy-reveal-identity,.trophy-reveal-fact{visibility:visible;opacity:1;transform:none}.trophy-reveal .trophy-reveal-skip{visibility:hidden}
}
/* The app's general header and modal branding rules must not paint this scene. */
body dialog.trophy-reveal::before{content:none;display:none}
dialog.trophy-reveal .trophy-reveal-heading{background:transparent;color:var(--reveal-ink);border:0;box-shadow:none}
dialog.trophy-reveal .trophy-reveal-actions{flex-direction:row}
@media(min-width:481px) and (min-height:761px) and (max-height:860px){
 .trophy-reveal-stage{height:264px}.trophy-reveal-art{width:316px;height:316px}
}
