:root{--rose:#b7472a;--rose-soft:#f0c48d;--font-script:"Playfair Display",Georgia,serif}.tribute-intro-text{font-family:var(--font-d);font-style:italic;line-height:1.15;color:#f0c48d;text-shadow:none;font-size:clamp(36px,6vw,66px)}.tribute-intro-button{background:#b7472a;border-color:#d99069;border-radius:6px;box-shadow:none;letter-spacing:.03em}.tribute-intro-button:hover{background:#92341f;box-shadow:none}.brand-name{font-family:var(--font-d);font-size:26px}.brand-name b{font-family:var(--font-b);font-size:20px;font-weight:700!important}.brand-name em{color:#f0c48d}.retro-live-screen .caption-text{font-size:20px;line-height:1.5}.retro-live-screen .final-content{max-height:100%;overflow:auto;width:100%;padding:26px}.retro-live-screen .final-greeting{font-family:var(--font-d);font-size:32px;line-height:1.35;color:#f7e8cd;text-shadow:none;overflow-wrap:anywhere}.retro-live-screen .special-date-duration{font-family:var(--font-d);font-size:42px;line-height:1.2;color:#f7e8cd}.retro-model-controls button{min-height:44px;font-size:13px;color:#f7e8cd;border-color:#d6ba8966}.progress-dot{min-width:24px;min-height:24px;background-clip:content-box;padding:7px}button:focus-visible,a:focus-visible,[tabindex]:focus-visible{outline:3px solid #edc083;outline-offset:4px}@media(max-width:640px){.brand-name{font-size:22px}.brand-name b{font-size:17px}.tribute-intro-text{font-size:36px}.retro-live-screen .final-greeting{font-size:34px}}.retro-live-screen{--photo-safe-top:0px!important;--photo-safe-bottom:0px!important}.retro-live-screen .memory-photo-frame{top:0;right:0;bottom:0;left:0}.retro-live-screen .final-content{pointer-events:auto}.progress-dot{box-sizing:content-box;width:8px;height:8px;min-width:0;min-height:0;border-radius:50%}.progress-dot.active{width:20px;border-radius:12px}.retro-live-screen .caption-bar{left:0;right:0;bottom:0;padding:42px 22px 18px;background:linear-gradient(transparent,#000b);border-radius:0}.retro-live-screen .caption-text{max-height:4.5em;overflow:auto;pointer-events:auto}.stage:has(.retro-model-ready){display:flex;flex-direction:column;justify-content:center;padding:54px 12px 44px;height:100dvh;box-sizing:border-box;overflow:auto}.tribute-tv-stage:has(.retro-model-ready){flex:0 0 auto;min-height:0;padding:0;width:100%}.tv-container:has(.retro-model-ready){width:100%;height:auto}.stage .tribute-scene-wrap.retro-model-ready{max-width:1400px;padding:0;flex:none;overflow:visible}.stage .tribute-scene-wrap.retro-model-ready .retro-model-host{height:calc(100dvh - 245px);min-height:220px;max-height:900px}.retro-model-ready .retro-model-controls{padding-bottom:8px}.gift-presentation-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;padding:0 12px 8px}.gift-presentation-actions button,.gift-viewer-toolbar button{min-height:44px;padding:10px 16px;border:1px solid #d6ba8977;border-radius:6px;background:#ffffff0a;color:#f7e8cd;font:500 14px var(--font-b);cursor:pointer}.gift-presentation-actions button:first-child{background:#b7472a;border-color:#d99069}.stage:has(.retro-model-ready) .progress-wrap{position:static;transform:none;width:100%;max-width:none;display:flex;flex-wrap:wrap;gap:10px;padding:4px 12px}.stage:has(.retro-model-ready) .progress-label{display:block;flex:none;margin:0;color:#d5c3a9;font-size:10px;letter-spacing:.08em}.retro-live-screen .slide-final{top:0;right:0;bottom:0;left:0;align-items:stretch}.retro-live-screen .final-content{max-height:none;height:100%;box-sizing:border-box;padding:28px 24px;overflow:auto;overscroll-behavior:contain}.retro-live-screen .final-greeting{font-size:25px;line-height:1.4;margin:0}.retro-live-screen .final-heart{font-size:18px;margin:0 0 8px}.retro-live-screen .special-date-duration{font-size:32px}.retro-live-screen .slide-special-date{top:0;right:0;bottom:0;left:0}.retro-live-screen .screen-hud,.retro-live-screen .slide-label{pointer-events:none;opacity:.65}.gift-screen-viewer{position:fixed;top:0;right:0;bottom:0;left:0;width:100vw;height:100dvh;max-width:none;max-height:none;border:0;padding:0;margin:0;background:#080705;color:#f7e8cd;overflow:hidden}.gift-screen-viewer:not([open]){display:none}.gift-screen-viewer[open]{display:flex;flex-direction:column}.gift-viewer-toolbar{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;flex:none;padding:max(12px,env(safe-area-inset-top)) 12px 12px;background:#1c160f}.gift-viewer-screen{position:relative;flex:1;min-height:0;width:100%;overflow:hidden}.gift-viewer-screen #tv-screen{position:absolute!important;top:0!important;right:0!important;bottom:0!important;left:0!important;width:100%!important;height:100%!important;border-radius:0!important}.gift-viewer-screen .final-content{max-width:1000px;margin:auto;padding:clamp(24px,5vw,72px)}.gift-viewer-screen .final-greeting{font-size:clamp(26px,4vw,48px);line-height:1.5}.gift-viewer-screen .special-date-duration{font-size:clamp(32px,6vw,72px)}.gift-viewer-screen .caption-text{font-size:clamp(20px,3vw,32px)}.gift-viewer-screen .caption-bar{padding:54px 24px 24px;text-align:center}.gift-viewer-screen .slide-label,.gift-viewer-screen .screen-hud{display:none}.tribute-wheel-overlay{margin:0;width:100vw;height:100dvh;max-width:none;max-height:none;border:0;padding:max(24px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right));box-sizing:border-box;color:#f7e8cd;overflow:auto;overscroll-behavior:contain;contain:none;transition:none}.tribute-wheel-overlay:not([open]){display:none}.tribute-wheel-overlay[open]{display:flex;opacity:1;visibility:visible;pointer-events:auto;align-items:flex-start}.tribute-wheel-overlay::backdrop,.gift-screen-viewer::backdrop{background:#080705}.tribute-wheel-shell{width:min(100%,960px);height:auto;min-height:0;max-height:none;margin:auto;gap:20px}.tribute-wheel-title{margin:0;font-size:clamp(30px,4vw,52px);line-height:1.15;min-height:0;text-shadow:none;text-wrap:balance}.wheel-layout{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:32px;width:100%}.tribute-wheel-overlay .wheel-dial-outer{width:min(100%,420px);margin:0 auto}.wheel-label{width:36px;height:36px;min-height:0;max-height:none;background:#fff5df;color:#292017;border:2px solid #e3bf80;border-radius:50%;font-size:18px;line-height:1;text-shadow:none;transform:translate(-50%,-50%) rotate(calc(-1 * var(--wheel-dial-angle,0deg)));transition:none}.wheel-label.is-selected{background:#fff5df;color:#292017;box-shadow:0 0 0 4px #e3bf8066;transform:translate(-50%,-50%) rotate(calc(-1 * var(--wheel-dial-angle,0deg)))}.wheel-options{text-align:left;list-style:none;counter-reset:place;display:flex;flex-direction:column;gap:8px;margin:0 0 20px;padding:0}.wheel-options li{counter-increment:place;display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid #d6ba8933;border-radius:6px;font:16px/1.4 var(--font-b);overflow-wrap:anywhere}.wheel-options li:before{content:counter(place);display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;background:#f0c48d;color:#292017;font-weight:700}.wheel-options li.is-selected{border-color:#f0c48d;background:#f0c48d18}.tribute-wheel-overlay .wheel-result{width:100%;min-height:100px;height:auto;margin:0;display:block;font:16px/1.5 var(--font-b);color:#ddceb4}.wheel-result-line{color:#f0c48d;margin-bottom:6px}.tribute-wheel-overlay .wheel-result-place{font-size:clamp(26px,3vw,40px);line-height:1.2;text-shadow:none;color:#f7e8cd;margin:0 0 8px;overflow-wrap:anywhere}.wheel-result-note{font-size:14px;color:#ddceb4}.tribute-wheel-button{border-radius:6px;letter-spacing:.02em;font-size:14px;background:#b7472a;border-color:#d99069;box-shadow:none}.tribute-wheel-button--ghost{background:#ffffff08;border-color:#d6ba8977}.tribute-wheel-button:disabled{cursor:wait;opacity:.65}@media(max-width:640px){.stage:has(.retro-model-ready){padding:58px 4px max(16px,env(safe-area-inset-bottom))}.stage .tribute-scene-wrap.retro-model-ready .retro-model-host{height:calc(100dvh - 260px);min-height:210px;max-height:650px}.retro-model-ready .retro-model-controls{max-width:360px;margin:auto}.retro-model-controls button{font-size:12px}.wheel-layout{grid-template-columns:1fr;gap:20px}.tribute-wheel-overlay .wheel-dial-outer{width:min(78vw,330px)}.wheel-options{margin-bottom:16px}.wheel-options li{padding:8px 12px;font-size:15px}.tribute-wheel-shell{gap:18px;padding:0 0 max(8px,env(safe-area-inset-bottom))}.tribute-wheel-overlay .wheel-result{min-height:80px}.tribute-wheel-actions{flex-direction:row;width:100%;position:sticky;bottom:0;padding:12px 0;background:#100d09}}@media(max-height:520px){.stage:has(.retro-model-ready){justify-content:flex-start}.stage .tribute-scene-wrap.retro-model-ready .retro-model-host{height:310px}.gift-viewer-toolbar button{min-height:40px;padding:8px 12px}}.tribute-started .tv-container:has(.retro-model-ready){animation:none;opacity:1;transform:none}.retro-live-screen .memory-photo-frame+span{display:none}@media(max-width:640px){.tribute-wheel-actions .tribute-wheel-button{flex:1;min-width:0;padding:0 10px;font-size:12px}}.retro-live-screen .final-heart{color:#f0c48d}.gift-viewer-screen #tv-screen{--photo-safe-top:0px!important;--photo-safe-bottom:0px!important;padding:0!important;margin:0!important;border:0!important;transform:none!important;animation:none!important}.gift-viewer-screen .slide-final{top:0;right:0;bottom:0;left:0;align-items:stretch}.gift-viewer-screen .final-content{height:100%;box-sizing:border-box;overflow:auto;overscroll-behavior:contain}.gift-viewer-screen .memory-photo-frame{top:0;right:0;bottom:0;left:0}.gift-viewer-screen .memory-photo-frame+span{display:none}@media(max-height:520px){.bottom-cta{display:none}.stage:has(.retro-model-ready){padding-bottom:16px}}.gift-viewer-screen #tv-screen:after{display:none}@media(max-width:360px){.top-signal{display:none}.gift-presentation-actions button{font-size:12px;padding:10px 12px}}.stage:not(:has(.retro-model-ready))>.gift-presentation-actions{position:fixed;bottom:52px;left:0;right:0;z-index:250;padding:8px 12px;background:#100d09d9}.intro-envelope{position:relative;width:112px;height:76px;margin:0 auto 10px;border:1px solid #d6b295;border-radius:5px;background:linear-gradient(145deg,#f2e4ce,#d6b89a);box-shadow:0 12px 32px #0004;overflow:hidden;flex:none}.intro-envelope:before{content:"";position:absolute;width:80px;height:80px;border-right:1px solid #b98e6b;border-bottom:1px solid #b98e6b;background:#eedbc1;top:-48px;left:15px;transform:rotate(45deg)}.intro-envelope span{position:absolute;bottom:4px;left:0;right:0;color:#92443c;font:36px Georgia,serif;text-align:center}.tribute-intro-panel{max-width:600px}.tribute-intro-text{color:#f1c9b6;text-wrap:balance;overflow-wrap:anywhere;font-size:clamp(32px,5vw,56px)}.tribute-intro-note{font:15px/1.65 var(--font-b);color:#dbc8b9;max-width:400px;overflow-wrap:anywhere}.tribute-intro-button{background:#a34339;border-color:#d69b7f}.retro-live-screen .final-recipient{margin:0 0 10px;font:500 13px/1.5 var(--font-b);color:#edc8ac;overflow-wrap:anywhere}.retro-live-screen .final-signature{margin:14px 0 0;color:#e8b6a0}.final-signature span{display:block;font:12px/1.5 var(--font-b)}.final-signature strong{display:block;font:italic 21px/1.4 var(--font-d);font-weight:400;overflow-wrap:anywhere}.gift-viewer-screen .final-recipient{margin:0 0 20px;font:500 18px/1.5 var(--font-b);color:#edc8ac}.gift-viewer-screen .final-signature{margin:24px 0 0;color:#e8b6a0}.gift-viewer-screen .final-signature span{font-size:16px}.gift-viewer-screen .final-signature strong{font-size:30px}@media(max-width:640px){.tribute-intro-note{font-size:14px}.tribute-intro-panel{gap:16px}}
