@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(./cormorant-garamond-italic-500-cyrillic-B-aY-B7E.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Cormorant Garamond;font-style:italic;font-weight:500;font-display:swap;src:url(./cormorant-garamond-italic-500-latin-HsFx-x_a.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Lora;font-style:italic;font-weight:400;font-display:swap;src:url(./lora-italic-400-cyrillic-DXChqROK.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Lora;font-style:italic;font-weight:400;font-display:swap;src:url(./lora-italic-400-latin-CJHaBEzm.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color:#624b4f;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--care-rose:#895563;background:#f8f2ef;font-family:Lora,Georgia,Times New Roman,serif}*{box-sizing:border-box}body{min-width:240px;margin:0}button{font:inherit}.card-page{isolation:isolate;min-height:100svh}.page-background{z-index:-1;object-fit:cover;pointer-events:none;width:100%;height:100%;position:fixed;inset:0}.page-background[hidden]{display:none}.intro,.finale-screen,.scene-viewport{min-height:100svh;padding:24px 16px;padding-top:max(24px, env(safe-area-inset-top));padding-right:max(16px, env(safe-area-inset-right));padding-bottom:max(24px, env(safe-area-inset-bottom));padding-left:max(16px, env(safe-area-inset-left));justify-content:center;align-items:center;display:flex}.intro-content{text-align:center;background:#f8f2efb8;border-radius:32px;width:min(100%,560px);padding:32px 20px;animation:.65s ease-out both arrive}.small-heart{color:#ae7685;font-family:Georgia,serif;font-size:34px;line-height:1;display:block}.intro-heart{margin-bottom:26px}.intro h1{text-wrap:balance;max-width:520px;margin:0 auto;font-family:Cormorant Garamond,Georgia,Times New Roman,serif;font-size:clamp(46px,7vw,68px);font-style:italic;font-weight:500;line-height:1.03}.intro p{text-wrap:pretty;max-width:380px;margin:26px auto 34px;font-size:17px;font-style:italic;line-height:1.8}.care-button{background:var(--care-rose);color:#fffaf7;cursor:pointer;border:1px solid #0000;border-radius:999px;min-height:48px;padding:13px 30px 15px;font-size:16px;font-style:italic;line-height:1.3;transition:background-color .16s,box-shadow .16s;box-shadow:0 6px 22px #89556314}@media (hover:hover){.care-button:hover{background:#784654;box-shadow:0 8px 25px #89556324}}.care-button:focus-visible{outline-offset:5px;outline:3px solid #624b4f}.scene-viewport:focus{outline:none}.scene-viewport[hidden]{display:none}.scene-viewport[data-finale=true]{pointer-events:none;width:100%;animation:.42s both depart;position:fixed}.scene-viewport:has(.room-finale-link){flex-direction:column;gap:20px}.room-finale-link{flex:none;font-size:14px}.scene-viewport:has(.room-finale-link) .scene-frame{flex:none}.finale-screen{background:radial-gradient(#f8f2efc2,#f8f2ef30 70%,#0000)}.finale-content{text-align:center;width:min(100%,760px);padding:40px 12px;animation:.8s both finale-arrive}.finale-heart{color:#b58291;width:30px;height:30px;margin:0 auto 30px;display:block}.finale-content h1{text-wrap:balance;margin:0 auto;font:italic 500 clamp(42px,5vw,68px)/1.1 Cormorant Garamond,Georgia,serif}.finale-content h1:focus{outline:none}.finale-content p{white-space:pre-line;text-wrap:pretty;max-width:620px;margin:28px auto;font:italic 400 clamp(17px,1.6vw,21px)/1.8 Lora,Georgia,serif}.finale-content .care-button{max-width:100%;margin-top:22px;padding-inline:22px;font-size:14px}@keyframes depart{to{opacity:0}}@keyframes finale-arrive{0%,40%{opacity:0}to{opacity:1}}.scene-frame{flex:0 600px;width:100%;min-width:0;max-width:600px}.scene-canvas,.scene-placeholder{aspect-ratio:2/3;width:100%;position:relative}.scene-canvas{isolation:isolate;animation:.5s ease-out both arrive;overflow:clip;box-shadow:0 14px 56px #8a65501a;container-type:inline-size}.scene-background{width:100%;transition:filter .24s}.scene-background-blurred{filter:blur(5px)brightness(.92)}.scene-image{width:100%;height:auto;display:block}.scene-foreground,.scene-hotspots{pointer-events:none;position:absolute;inset:0}.scene-hotspots[hidden]{display:none}.gift-hotspot{left:calc(var(--hit-x) + var(--hit-width) / 2);top:calc(var(--hit-y) + var(--hit-height) / 2);width:max(44px, var(--hit-width));height:max(44px, var(--hit-height));pointer-events:auto;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:12px;padding:0;position:absolute;transform:translate(-50%,-50%)}.gift-hotspot:focus-visible{outline-offset:2px;outline:2px solid #fff5d9;box-shadow:0 0 0 3px #76515e}.gift-glow{pointer-events:none;width:100%;height:100%;animation:2.8s ease-in-out infinite gift-breathe;position:absolute;inset:0}.gift-lit-surface{filter:brightness(1.14)saturate(1.06)}.gift-marker{pointer-events:none;background:radial-gradient(circle at 35% 30%,#ffec86,#efb82a 75%);border:1.5px solid #fff8cb;border-radius:50%;width:clamp(20px,1.4vw,26px);height:clamp(20px,1.4vw,26px);position:absolute;transform:translate(-50%,-50%);box-shadow:0 2px 7px #50371b99,0 0 13px 3px #ffda6880}@keyframes gift-breathe{0%,to{opacity:.88}50%{opacity:1}}.gift-dialog{width:100%;max-width:none;height:100%;max-height:none;padding:max(24px, env(safe-area-inset-top)) max(16px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(16px, env(safe-area-inset-left));color:inherit;overscroll-behavior:contain;background:0 0;border:0;margin:0;position:fixed;inset:0;overflow-y:auto}.gift-dialog[open]{display:flex}.gift-dialog::backdrop{background:#49313924}.gift-dialog-layout{flex-shrink:0;gap:16px;width:min(100%,560px);margin:auto;transition:opacity .18s;display:grid}.gift-dialog[data-closing=true] .gift-dialog-layout{opacity:0;pointer-events:none}.gift-dialog[data-finishing=true]{pointer-events:none;animation:.42s both depart}.gift-image-stage{aspect-ratio:3/2;place-items:center;width:100%;display:grid;position:relative}.gift-image{object-fit:contain;width:100%;height:auto;display:block}.gift-image-status{text-align:center;padding:12px;font-style:italic}.gift-image-status p,p.gift-image-status{margin:12px;font-size:16px}.care-button:disabled{cursor:default;opacity:.7}@media (width>=900px){.gift-dialog-layout-with-image{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:center;gap:36px;width:min(100%,1160px)}}@media (width<=599px){.gift-dialog{padding-top:max(16px, env(safe-area-inset-top));padding-bottom:max(16px, env(safe-area-inset-bottom))}.gift-dialog-layout{gap:12px}}.gift-dialog-content{text-align:center;background:#fff9f2e8;border-radius:24px;width:100%;min-width:0;margin:auto;padding:clamp(22px,3vw,36px);animation:.3s ease-out both arrive;box-shadow:0 16px 64px #624b4f26}.gift-dialog h2{margin:0;font:italic 500 clamp(34px,5vw,44px)/1.15 Cormorant Garamond,Georgia,serif}.gift-dialog h2:first-letter{text-transform:uppercase}.gift-dialog p{white-space:pre-line;margin:24px 0 30px;font-size:18px;font-style:italic;line-height:1.8}.gift-dialog-actions{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.gift-dialog-actions .care-button{max-width:100%}.care-button-secondary{color:var(--care-rose);box-shadow:none;background:0 0;border-color:#89556366}@media (hover:hover){.care-button-secondary:hover{box-shadow:none;background:#89556310}}.scene-placeholder{background:radial-gradient(#f4e6e3,#f9f0eb 72%);place-items:center;display:grid}.scene-status{text-align:center;padding:24px}.scene-status p{margin:20px 0;font-size:16px;font-style:italic;line-height:1.7}.loading-heart{animation:1.8s ease-in-out infinite alternate breathe}.visually-hidden{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width>=768px){.scene-frame{flex-basis:calc((100svh - max(24px, env(safe-area-inset-top)) - max(24px, env(safe-area-inset-bottom))) * 2 / 3);max-width:calc((100svh - max(24px, env(safe-area-inset-top)) - max(24px, env(safe-area-inset-bottom))) * 2 / 3)}}@keyframes arrive{0%{opacity:0}to{opacity:1}}@keyframes breathe{0%{opacity:.45}to{opacity:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.gift-dialog-letter .gift-dialog-layout{width:min(100%,680px)}.gift-dialog-letter .gift-dialog-content{text-align:left;color:#59454a;background-color:#fff8e9;background-image:repeating-linear-gradient(7deg,#795d3710 0,#0000 1px 5px),radial-gradient(at 20% 10%,#fffdf5,#0000 70%);border-radius:3px;padding:clamp(26px,5vw,64px);box-shadow:0 18px 65px #49313930,inset 0 0 60px #c9a77c10}.gift-dialog-letter .gift-text p{margin:0 0 1.5em;font-size:clamp(18px,2vw,20px);line-height:1.85}.gift-dialog-letter .gift-dialog-actions{margin-top:32px}.voice-player{margin:20px 0 28px}.voice-player audio{display:none}.voice-status{min-height:3em;font-size:16px;font-style:italic;line-height:1.5}.voice-progress{font-variant-numeric:tabular-nums;gap:10px;margin:0 0 26px;font-size:15px;display:grid}.voice-progress progress{width:100%;height:5px;accent-color:var(--care-rose);background:#e7d5ce;border:0;border-radius:10px;overflow:hidden}.voice-progress progress::-webkit-progress-bar{background:#e7d5ce}.voice-progress progress::-webkit-progress-value{background:var(--care-rose)}.voice-progress progress::-moz-progress-bar{background:var(--care-rose)}@media (hover:hover){.gift-hotspot-replay:hover{background:#fff8e51c}}
