.anniversary{--ink:#292a25;--red:#b73e31;--paper:#f8f5ee;background:var(--paper);color:var(--ink);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;min-height:100svh;padding:0 24px 40px;font-family:Arial,Helvetica,sans-serif}.anniversary *{box-sizing:border-box}.anniversary-inner{max-width:720px;margin:auto}.anniversary button,.anniversary a{-webkit-tap-highlight-color:transparent}.anniversary button{cursor:pointer;font:inherit}.anniversary button:focus-visible,.anniversary a:focus-visible,.anniversary summary:focus-visible{outline:3px solid var(--red);outline-offset:5px}.anniversary-top{border-bottom:1px solid #292a2520;justify-content:space-between;align-items:center;height:76px;display:flex}.anniversary-top a{color:var(--red);letter-spacing:-1.5px;font:26px Georgia,serif;text-decoration:none}.anniversary-top>span{color:#707067;font-size:12px}.anniversary-hero{text-align:center;padding:42px 0}.anniversary h1{letter-spacing:-2.5px;margin:0;font:clamp(42px,7vw,68px)/1.1 Georgia,serif}.anniversary h1 span{color:var(--red);font-style:italic}.anniversary-hero p{color:#707067;margin:14px 0 0;font-size:13px}.anniversary h2{margin:0;font:25px/1.2 Georgia,serif}.briefcase-intro{justify-content:space-between;align-items:center;margin-bottom:28px;display:flex}.gift-counter{color:#707067;font-variant-numeric:tabular-nums;font-size:12px}.briefcases{grid-template-columns:repeat(4,1fr);gap:26px 22px;display:grid}.briefcase{color:var(--ink);background:0 0;border:0;padding:0;transition:transform .2s,filter .2s;animation:.45s both case-arrive}.briefcase:not(:disabled):hover{filter:drop-shadow(0 6px 4px #292a2510);transform:translateY(-5px)rotate(-2deg)}.briefcase:not(:disabled):active{transform:scale(.94)rotate(2deg)}.case-handle{border:1.5px solid;border-bottom:none;border-radius:6px 6px 0 0;width:36px;height:14px;margin:auto;display:block}.case-body{background:#eeeadf;border:1.5px solid;border-radius:8px;place-items:center;height:120px;transition:background .2s;display:grid;position:relative;box-shadow:0 3px #292a2510}.briefcase:not(:disabled):hover .case-body{background:#e7e0cf}.case-line{border-top:1px solid #292a2545;width:100%;position:absolute;top:28px}.case-number{background:var(--paper);border:1px solid #292a2545;border-radius:4px;place-items:center;width:44px;height:40px;font:25px Georgia,serif;display:grid;position:relative}.case-latch{background:#e2d9c5;border:1px solid;border-radius:2px;width:8px;height:14px;position:absolute;top:23px}.case-latch-left{left:15px}.case-latch-right{right:15px}.briefcase:disabled{cursor:default}.case-lid{transform-origin:top;background:#eeeadf;border-radius:7px;transition:transform .45s,background .2s;position:absolute;inset:0}.case-lid .case-line{left:0}.briefcase:not(:disabled):hover .case-lid{background:#e7e0cf}.briefcase-opened .case-body{background:#f1e7d6;box-shadow:inset 0 2px 8px #6c4c2820,0 3px #292a2510}.briefcase-opened .case-lid{background:#e2d5bf;border:1px solid #292a2555;height:18px;top:-7px;transform:perspective(250px)rotateX(32deg)}.briefcase-opened .case-lid .case-line,.briefcase-opened .case-latch{display:none}.briefcase-opened .case-handle{transform:translateY(-5px)}.case-gift{flex-direction:column;align-items:center;gap:5px;padding:17px 6px 8px;display:flex;position:relative}.case-gift>svg{color:var(--red)}.case-gift-name{font-size:12px;line-height:1.15}.case-gift-owner{color:#81705b;font-size:10px}.replay-button{color:var(--red);background:0 0;border:0;align-items:center;gap:10px;margin:20px auto;display:flex;font-size:13px!important}.save-note{color:#707067;font-size:12px}.player-picker{text-align:center;padding:6px 0 40px}.player-picker>div{justify-content:center;gap:14px;margin-top:24px;display:flex}.player-picker a{color:var(--ink);border:1px solid #292a2530;border-radius:6px;align-items:center;gap:24px;padding:17px 22px;text-decoration:none;display:flex}.player-picker a:hover{border-color:var(--red);color:var(--red)}.gift-dialog{background:var(--paper);color:var(--ink);border:0;border-radius:16px;width:min(390px,100vw - 32px);max-height:90svh;margin:auto;padding:42px 24px 24px;box-shadow:0 20px 100px #0003}.gift-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#24231f70}.dialog-close{color:#77776b;background:0 0;border:0;place-items:center;width:40px;height:40px;display:grid;position:absolute;top:8px;right:8px}.reveal-content{text-align:center}.revealed-gift{padding:10px 0 28px;animation:.55s cubic-bezier(.2,.9,.3,1.2) gift-pop}.revealed-gift>svg{color:var(--red);margin:0 auto 20px;display:block}.revealed-gift h2{letter-spacing:-1px;text-wrap:balance;font-size:34px;line-height:1.15}.gift-recipient{color:var(--red);margin:12px 0 0;font-size:14px}.gift-detail{color:#707067;margin:7px 0 0;font-size:12px;line-height:1.5}.scratch-area{background:#eeeadf;border-radius:8px;height:180px;margin:6px 0 20px;overflow:hidden}.scratch-area canvas{touch-action:none;cursor:crosshair;width:100%;height:100%;display:block}.reveal-button{background:var(--red);width:100%;color:var(--paper);border:0;border-radius:7px;justify-content:center;align-items:center;gap:12px;min-height:50px;padding:15px;transition:transform .18s,background .18s;display:flex;font-size:15px!important}.reveal-button:hover{background:#973227}.reveal-button:active{transform:scale(.96)}.reveal-button:hover>svg{transform:translate(4px)}.reveal-button>svg{transition:transform .2s}.reveal-secondary{color:#707067;background:0 0;margin-top:6px}.reveal-secondary:hover{background:#eeeadf}.gift-handoff p{color:var(--red);margin:12px 0;font-size:12px}.gift-handoff a{overflow-wrap:anywhere;color:var(--red);margin:10px 0;font-size:11px;display:block}.gift-dialog[open]{animation:.3s cubic-bezier(.2,.8,.3,1) case-open}.gift-dialog[open]::backdrop{animation:.2s ease-out backdrop-in}.case-landed .case-gift{animation:.6s cubic-bezier(.2,.8,.3,1) gift-land}.case-landed .case-lid{animation:.6s ease-out lid-flip}.confetti{pointer-events:none;border-radius:inherit;z-index:2;position:absolute;inset:0;overflow:hidden}.confetti i{background:var(--color);opacity:0;width:7px;height:11px;animation:confetti-burst 1.1s var(--delay) ease-out both;position:absolute;top:26%;left:50%}.confetti i:nth-child(3n){border-radius:50%;width:7px;height:7px}@keyframes case-arrive{0%{opacity:0;translate:0 15px}to{opacity:1;translate:0}}@keyframes case-open{0%{opacity:0;transform:translateY(16px)scale(.92)rotate(-2deg)}to{opacity:1;transform:none}}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}@keyframes gift-pop{0%{opacity:0;transform:scale(.75)rotate(-5deg)}65%{opacity:1;transform:scale(1.05)rotate(2deg)}to{transform:none}}@keyframes gift-land{0%{opacity:0;transform:translateY(-22px)scale(.8)}65%{opacity:1;transform:translateY(3px)scale(1.04)}to{transform:none}}@keyframes lid-flip{0%{transform:perspective(250px)rotateX(0)}to{transform:perspective(250px)rotateX(32deg)}}@keyframes confetti-burst{0%{opacity:1;transform:translate(0)scale(.3)}20%{opacity:1}to{opacity:0;transform:translate(var(--x), var(--y)) rotate(var(--spin))}}@media (max-width:600px){.anniversary{padding:0 22px 30px}.anniversary-top{height:64px}.anniversary-hero{padding:34px 0}.anniversary h1{letter-spacing:-1.8px;font-size:clamp(36px,10vw,56px)}.anniversary-hero p{font-size:12px}.briefcase-intro{margin-bottom:22px}.briefcase-intro h2{font-size:23px}.briefcases{grid-template-columns:repeat(2,1fr);gap:22px}.case-body{height:112px}}@media (prefers-reduced-motion:reduce){.anniversary *,.anniversary :before,.anniversary :after{transition:none!important;animation:none!important}.confetti{display:none}}.couple-characters{justify-content:center;align-items:center;gap:20px;height:136px;margin:18px 0 6px;display:flex}.couple-characters>span:nth-child(2){color:var(--red);font-size:20px;animation:2s ease-in-out infinite heart-beat}.character{isolation:isolate;flex-shrink:0;width:96px;height:136px;display:inline-block;position:relative}.character:after{content:"";z-index:-1;background:#292a2510;border-radius:50%;width:50px;height:5px;position:absolute;bottom:-2px;left:23px}.character-face{z-index:3;transform-origin:50% 90%;filter:drop-shadow(0 2px 2px #292a2515);background:url(/anniversary/portraits-v2.png) 0 0/192px 96px no-repeat;width:96px;height:96px;animation:5s ease-in-out infinite head-sway;position:absolute;inset:0 auto auto 0}.character-neetu .character-face{background-position:100% 0;animation-delay:-2s}.character-body{z-index:1;background:#386f99;border-radius:11px 11px 7px 7px;width:42px;height:31px;position:absolute;top:84px;left:27px;box-shadow:inset -6px 0 #27577e}.character-body:after{content:"";border-left:1px solid #d9e4dfaa;height:22px;position:absolute;top:8px;left:20px}.character-neetu .character-body{background:#c44b68;border-radius:9px 9px 5px 5px;box-shadow:inset -6px 0 #a73051}.character-neetu .character-body:after{background:#dfbb70;border:0;width:8px;height:35px;top:-3px;left:21px;rotate:32deg}.character-arm{transform-origin:50% 5px;z-index:0;background:#386f99;border-radius:7px;width:10px;height:28px;position:absolute;top:87px}.character-arm:after{content:"";background:#ba8b70;border-radius:5px;width:10px;height:9px;position:absolute;bottom:-2px}.character-neetu .character-arm{background:#c44b68}.arm-left{left:20px;transform:rotate(22deg)}.arm-right{right:20px;transform:rotate(-22deg)}.character-leg{transform-origin:top;background:#3a3b39;border-radius:0 0 3px 3px;width:10px;height:22px;position:absolute;top:111px}.character-leg:after{content:"";background:#fefefe;border-radius:4px;width:15px;height:6px;position:absolute;bottom:-2px;left:-2px;box-shadow:0 2px #c8bda9}.leg-left{left:32px}.leg-right{right:32px}.character:hover,button:hover>.character,button:active>.character{animation:.35s infinite alternate character-bounce}.character:hover .character-face,button:hover .character-face{animation:.6s ease-in-out infinite alternate head-happy}.character:hover .character-leg,button:hover .character-leg,.pointer-runner .character-leg{animation:.24s infinite alternate run-legs}.character:hover .leg-right,button:hover .leg-right,.pointer-runner .leg-right{animation-delay:-.24s}.character:hover .character-arm,button:hover .character-arm,.pointer-runner .character-arm{animation:.24s infinite alternate-reverse run-legs}.character:hover .arm-left,button:hover .arm-left,.pointer-runner .arm-left{animation-delay:-.24s}@keyframes head-sway{0%,to{rotate:-2deg}50%{rotate:2deg}}@keyframes head-happy{0%{translate:0;rotate:-6deg}to{translate:0 -3px;rotate:6deg}}.pointer-runner{pointer-events:none;z-index:5;transform-origin:0 0;display:none;position:fixed;top:0;left:0;transform:scale(.48)}.pointer-runner .character{animation:.2s infinite alternate character-bounce}@media (hover:hover) and (pointer:fine){.pointer-runner[data-visible=true]{display:block}}.turn-picker{justify-content:center;align-items:center;gap:12px;margin:-10px 0 28px;display:flex}.turn-picker>span{color:#707067;font-size:12px}.turn-picker button{background:0 0;border:1px solid #292a2530;border-radius:30px;align-items:center;gap:6px;padding:5px 14px 5px 5px;font-size:13px;display:flex}.turn-picker button[aria-pressed=true]{border-color:var(--red);color:var(--red);background:#b73e3110}.turn-picker .character{zoom:.44;width:96px;height:96px}.turn-picker .character:after,.turn-picker .character-body,.turn-picker .character-leg,.turn-picker .character-arm{display:none}.turn-picker .character-face{left:0}.waiting-turn .briefcase{opacity:.55}.player-picker .shared-link{color:var(--red);border:0;margin-top:14px;padding:10px;font-size:13px;display:inline-block}.family-album{border-top:1px solid #292a2520;margin-top:35px;padding-top:20px}.album-heading{justify-content:space-between;align-items:center;display:flex}.album-heading>span{font:20px Georgia,serif}.album-heading button{color:#79776b;background:0 0;border:0;align-items:center;gap:7px;padding:10px 0 10px 10px;font-size:12px;display:flex}.photo-strip{scrollbar-width:thin;scroll-snap-type:x proximity;gap:12px;padding:14px 3px 12px;display:flex;overflow-x:auto}.photo-strip button{scroll-snap-align:start;background:#fff;border:0;flex:0 0 94px;padding:4px 4px 13px;transition:transform .2s;transform:rotate(-3deg);box-shadow:0 2px 4px #292a2515}.photo-strip button:nth-child(2n){transform:rotate(3deg)}.photo-strip button:hover{transform:translateY(-5px)rotate(0)}.photo-strip img{object-fit:cover;width:86px;height:92px;display:block}.photo-dialog{background:var(--paper);border:0;border-radius:12px;width:min(90vw,800px);max-height:92svh;margin:auto;padding:8px;position:fixed}.photo-stage{touch-action:pan-y;place-items:center;height:min(72svh,680px);display:grid}.photo-stage img{object-fit:contain;-webkit-user-select:none;user-select:none;border-radius:6px;width:auto;max-width:100%;max-height:min(72svh,680px);animation:.2s ease-out photo-in;display:block}.photo-controls{justify-content:space-between;align-items:center;padding:6px 10px 0;display:flex}.photo-controls button{width:44px;height:44px;color:var(--ink);background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.photo-controls button:hover{background:#eeeadf}.photo-controls span{color:#79776b;font-variant-numeric:tabular-nums;font-size:12px}.photo-dialog .dialog-close{background:var(--paper);z-index:1;border-radius:50%}.photo-dialog::backdrop{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#24231fb0}@keyframes photo-in{0%{opacity:.3;transform:scale(.98)}to{opacity:1;transform:none}}@keyframes character-bounce{0%{translate:0;rotate:-4deg}to{translate:0 -5px;rotate:4deg}}@keyframes run-legs{0%{transform:rotate(-40deg)}to{transform:rotate(40deg)}}@keyframes heart-beat{50%{transform:scale(1.2)}}@media (prefers-reduced-motion:reduce){.anniversary .pointer-runner{display:none}}.couple-characters{height:150px;position:relative}.couple-characters>.couple-heart{align-self:center;margin-bottom:16px}.character-active:before{content:"";z-index:-1;background:#d6a54817;border-radius:50%;height:88px;animation:.3s ease-out active-arrive;position:absolute;top:4px;left:10px;right:6px;box-shadow:0 0 0 1px #d6a54844}.hero-character{color:inherit;background:0 0;border:0;border-radius:14px;padding:0}.hero-character:hover .character{animation:.35s infinite alternate character-bounce}.hero-character:hover .character-arm,.hero-character:hover .character-leg{animation:.24s infinite alternate run-legs}.hero-character:hover .leg-right,.hero-character:hover .arm-left{animation-delay:-.24s}.character [class^=equipped-]{animation:.5s cubic-bezier(.2,.9,.3,1.2) both gear-arrive;position:absolute}.equipped-outfit{z-index:2;clip-path:polygon(0 0,100% 0,100% 100%,55% 100%,50% 35%,45% 100%,0 100%);width:36px;height:12px;top:109px;left:30px}.outfit-shorts{background:#d6c7ae;border-top:2px solid #b3a58f}.outfit-joggers{background:#192c46;border-top:2px solid #30445b}.wearing-shorts .character-leg{background:#ba8b70;height:14px;top:118px}.wearing-joggers .character-leg{background:#192c46}.equipped-towel{z-index:2;background:repeating-linear-gradient(90deg,#707b96 0 3px,#8792aa 3px 5px);border-radius:2px 2px 5px 5px;width:13px;height:30px;top:86px;left:26px;box-shadow:1px 2px 2px #0002}.equipped-towel:after{content:"";border-top:2px solid #adb6c6;position:absolute;bottom:4px;left:1px;right:1px}.equipped-ipad{color:#3d3c50;z-index:4;background:#b3adc4;border:1px solid #666175;border-radius:4px;padding:3px 1px;top:94px;left:69px;transform:rotate(-10deg);box-shadow:1px 2px 2px #0002}.equipped-ipad svg{display:block}.equipped-cable{z-index:3;width:24px;height:22px;top:124px;left:76px;rotate:-8deg}.equipped-cable svg{fill:none;stroke:#333b42;stroke-width:1.8px}.equipped-trunks{color:#fff;text-align:center;z-index:4;background:#24354e;border:1px solid #35465f;border-radius:3px;width:24px;height:25px;padding-top:2px;font-size:10px;top:118px;left:3px;rotate:8deg}.equipped-trunks span{font-size:5px;line-height:1;display:block}.equipped-ticket{color:#694420;z-index:4;background:#f1d997;border:1px dashed #bc9952;border-radius:2px;width:29px;height:19px;padding:3px 2px;font-size:5px;font-weight:700;line-height:1.15;top:99px;left:-1px;rotate:-12deg}.shared-charger{color:#52565e;justify-items:center;gap:2px;animation:.5s both gear-arrive;display:grid;position:absolute;bottom:-7px;left:50%;translate:-50%}.shared-charger>svg{color:#e7f2fa;background:#353941;border-radius:4px;width:26px;height:26px;padding:3px}.shared-charger>span{font-size:8px}.gift-equip-scene{justify-content:center;gap:24px;min-height:155px;margin:-5px 0 14px;display:flex;position:relative}.gift-type-icon{color:var(--red);place-items:center;margin-bottom:10px;display:inline-grid}.equip-sparkles{color:#c2943a;opacity:0;pointer-events:none;font-size:22px;position:absolute;top:32px;right:19%}.just-equipped .equip-sparkles{animation:.9s .2s both equip-sparkle}.just-equipped .character{animation:.6s cubic-bezier(.2,.9,.3,1.2) gift-pop}.reveal-charger{color:#e7f2fa;z-index:4;background:#353941;border-radius:7px;padding:7px;animation:.5s both gear-arrive;position:absolute;bottom:0;left:50%;translate:-50%}.couple-complete .character{animation:.3s 6 alternate character-bounce}@keyframes gear-arrive{0%{opacity:0;scale:.4}to{opacity:1;scale:1}}@keyframes equip-sparkle{0%{opacity:0;rotate:-30deg;scale:.4}40%{opacity:1;scale:1.3}to{opacity:0;rotate:40deg;scale:.6}}@keyframes active-arrive{0%{opacity:0;scale:.8}to{opacity:1;scale:1}}@media (prefers-reduced-motion:reduce){.anniversary .equip-sparkles{display:none}}.case-lid{overflow:hidden}.case-memory-hint{object-fit:cover;filter:blur(6px)saturate(.55);opacity:.22;width:calc(100% + 16px);height:calc(100% + 16px);position:absolute;inset:-8px}.case-memory-kept{object-fit:cover;background:#fff;width:28px;height:25px;padding:2px 2px 4px;position:absolute;top:17px;right:7px;rotate:8deg;box-shadow:0 1px 3px #292a2530}.case-memory-kept+.case-gift{padding-left:22px;padding-right:22px}.memory-reveal{transform-origin:50%;background:#fff;border-radius:3px;margin:4px 0 20px;padding:7px 7px 38px;position:relative;transform:rotate(-2deg);box-shadow:0 3px 14px #292a2518}.memory-photo{aspect-ratio:600/520;background:#ded6c6;border:0;width:100%;padding:0;display:block;overflow:hidden}.memory-photo img{object-fit:cover;-webkit-user-select:none;user-select:none;width:100%;height:100%;display:block}.memory-photo:disabled{cursor:default}.memory-reveal canvas{touch-action:none;cursor:crosshair;width:calc(100% - 14px);height:calc(100% - 45px);position:absolute;top:7px;left:7px}.memory-caption{color:#707067;pointer-events:none;font-size:12px;position:absolute;bottom:12px;left:7px;right:7px}.memory-clear{animation:.35s ease-out memory-focus}.memory-clear .memory-photo:hover img{transition:transform .25s;transform:scale(1.025)}.memory-flipping{pointer-events:none;animation:.22s ease-in forwards memory-flip-out}.gift-flipped-in{animation:.35s ease-out memory-gift-in}.reveal-button:disabled{cursor:default;opacity:.7}@keyframes memory-focus{0%{opacity:.8;transform:rotate(-2deg)scale(.97)}to{opacity:1;transform:rotate(-2deg)scale(1)}}@keyframes memory-flip-out{0%{opacity:1;transform:perspective(800px)rotateY(0)rotate(-2deg)}to{opacity:.4;transform:perspective(800px)rotateY(90deg)rotate(-2deg)}}@keyframes memory-gift-in{0%{opacity:.4;transform:perspective(800px)rotateY(-90deg)}to{opacity:1;transform:perspective(800px)rotateY(0)}}
