/* Anniversary entrance: native modal dialogs keep the page inert and contain focus. */
body.pop-lock{overflow:hidden}
.cr-dialog{color:#fff4df;background:#100a1c;border:1px solid #e7bd65;border-radius:22px;padding:0;margin:auto;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);box-shadow:0 0 0 5px #e9bd6414,0 0 70px #b83ee33b,0 32px 100px #000b}
.cr-dialog::backdrop{background:#08040ee8;backdrop-filter:blur(7px)}
.cr-dialog[open]{animation:cr-arrive .6s cubic-bezier(.16,1,.3,1) both}
.cr-dialog :focus-visible{outline:3px solid #65f2e5;outline-offset:4px}
.cr-close{position:absolute;right:12px;top:12px;z-index:3;display:grid;place-items:center;width:44px;height:44px;border:1px solid #f8d37c80;border-radius:50%;background:#100a1cee;color:#fff3d4;font:400 28px/1 Arial,sans-serif;cursor:pointer}
.cr-anniversary{width:1120px;overflow:auto}
.cr-anniversary-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,1fr);min-height:0}
.cr-poster-link{display:flex;align-items:center;justify-content:center;background:#050408;min-height:0}
.cr-poster{display:block;width:100%;height:auto;max-height:calc(100dvh - 26px);object-fit:contain}
.cr-invite{position:relative;display:flex;flex-direction:column;justify-content:center;padding:66px 34px 34px;background:radial-gradient(ellipse at top right,#68265a55,transparent 70%)}
.cr-kicker{margin:0 0 18px;color:#eec578;font:700 11px/1.5 'Space Mono',monospace;letter-spacing:.18em;text-transform:uppercase}
.cr-invite h2{font:400 clamp(34px,4vw,56px)/1.08 'Rye',serif;letter-spacing:-.025em;text-transform:none;margin:0 0 20px;color:#fff0cb}
.cr-invite p.cr-details{font:400 16px/1.65 Archivo,sans-serif;color:#d6cce4;margin:0 0 22px}
.cr-details strong{color:#fff3d4}
.cr-event-time{border-block:1px solid #eed18730;padding:16px 0;margin:0 0 24px;font:500 14px/1.7 Archivo,sans-serif;color:#e9ddf0}
.cr-event-time strong{display:block;color:#f0ce83;font-size:17px}
.cr-action{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 18px;border:1px solid #f9da88;border-radius:9px;background:linear-gradient(135deg,#ffe29b,#e9ad47);color:#21102a;text-align:center;text-decoration:none;font:800 15px/1.3 Archivo,sans-serif;cursor:pointer}
.cr-action:hover{background:#ffe8ac}
.cr-secondary{display:inline-flex;align-items:center;justify-content:center;min-height:44px;margin-top:10px;color:#d6cce4;font:500 13px/1.4 Archivo,sans-serif;text-underline-offset:4px}
.cr-sparkles{position:absolute;inset:0;overflow:hidden;pointer-events:none;border-radius:inherit;z-index:2}
.cr-sparkles i{position:absolute;left:var(--x);top:-20px;width:8px;height:12px;background:var(--c);opacity:0;animation:cr-confetti 2.4s ease-out var(--delay) both}
.cr-sparkles i:nth-child(3n){width:15px;height:15px;clip-path:polygon(50% 0,62% 37%,100% 50%,62% 63%,50% 100%,38% 63%,0 50%,38% 37%)}
.cr-battle{width:min(1240px,94vw);height:min(850px,92dvh);overflow:hidden}
.cr-battle-shell{height:100%;display:flex;flex-direction:column;min-height:0}
.cr-battle-header{padding:20px 68px 16px 24px;border-bottom:1px solid #eec57840;background:linear-gradient(100deg,#35213f,#151020)}
.cr-battle-header .cr-kicker{margin-bottom:5px;font-size:10px}
.cr-battle-header h2{margin:0;color:#fff0cb;font:400 clamp(22px,3vw,32px)/1.15 'Rye',serif;text-transform:none;letter-spacing:0}
.cr-battle-header p:last-child{margin:8px 0 0;font:400 14px/1.5 Archivo,sans-serif;color:#ded1e8}
.cr-battle iframe{flex:1 1 auto;width:100%;border:0;min-height:0;background:#0a0611}
.cr-battle-footer{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:12px 20px;border-top:1px solid #eec57840;background:#171020}
.cr-hide{border:0;background:none;color:#cec0dc;font:400 12px/1.4 Archivo,sans-serif;text-decoration:underline;text-underline-offset:3px;min-height:44px;padding:6px;cursor:pointer}
.cr-battle-footer .cr-action{min-height:44px;font-size:14px}
@keyframes cr-arrive{from{opacity:0;transform:translateY(24px) scale(.94)}to{opacity:1;transform:none}}
@keyframes cr-confetti{0%{opacity:0;transform:translateY(0) rotate(0)}10%{opacity:1}80%{opacity:1}100%{opacity:0;transform:translateY(85dvh) rotate(310deg)}}
@media(max-width:700px){
 .cr-anniversary{width:480px}
 .cr-anniversary-grid{grid-template-columns:1fr}
 .cr-poster{max-height:52dvh;width:100%;object-fit:contain}
 .cr-invite{padding:20px 22px 18px}
 .cr-kicker{font-size:9px;margin-bottom:8px}
 .cr-invite h2{font-size:29px;margin-bottom:12px}
 .cr-invite p.cr-details{font-size:14px;line-height:1.5;margin-bottom:14px}
 .cr-event-time{font-size:12px;margin-bottom:16px;padding:10px 0}
 .cr-event-time strong{font-size:14px}
 .cr-battle{width:calc(100vw - 20px);height:calc(100dvh - 20px);max-width:calc(100vw - 20px);max-height:calc(100dvh - 20px)}
 .cr-battle-header{padding:16px 66px 12px 16px}
 .cr-battle-header p:last-child{font-size:12px}
 .cr-battle-footer{padding:8px 12px}
}
@media(max-width:700px) and (max-height:760px){
 .cr-poster{max-height:42dvh}
 .cr-invite{padding:14px 18px}
 .cr-invite h2{font-size:24px;margin-bottom:8px}
 .cr-invite p.cr-details{display:none}
 .cr-event-time{font-size:11px;line-height:1.4;padding:8px 0;margin-bottom:10px}
 .cr-event-time strong{font-size:12px}
 .cr-secondary{min-height:32px;margin-top:6px}
}
@media(min-width:701px) and (max-height:650px){
 .cr-invite{padding:42px 20px 14px}
 .cr-invite .cr-kicker{font-size:9px;margin-bottom:8px}
 .cr-invite h2{font-size:28px;line-height:1.05;margin-bottom:12px}
 .cr-invite p.cr-details{display:none}
 .cr-event-time{font-size:12px;line-height:1.4;padding:8px 0;margin-bottom:12px}
 .cr-event-time strong{font-size:13px}
 .cr-secondary{min-height:32px;margin-top:6px}
}
@media(prefers-reduced-motion:reduce){.cr-dialog[open],.cr-sparkles i{animation:none}.cr-sparkles{display:none}}
