@import"https://fonts.googleapis.com/css2?family=Playfair+Display:wght@600;700;800&family=Manrope:wght@400;600;700&display=swap";:root{font-family:Manrope,Segoe UI,Tahoma,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:#382228;background:radial-gradient(circle at top left,#ffd6df,#ffd7c2 45%,#ffe7de)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}h1,h2,h3{font-family:Playfair Display,Georgia,serif}.page{min-height:100vh;display:grid;place-items:center;padding:1.5rem;position:relative;overflow:hidden}.media-layer{position:absolute;inset:0;width:100%;height:100%;z-index:0;overflow:hidden}.scene{display:grid;width:100%;height:100%;gap:.55rem;padding:.55rem}.scene-1{grid-template-columns:1fr;grid-template-rows:1fr;gap:0;padding:0}.scene-2{grid-template-columns:1fr 1fr;grid-template-rows:1fr}.scene-3{grid-template-columns:1.1fr .9fr;grid-template-rows:1fr 1fr}.scene-cell{position:relative;overflow:hidden;border-radius:20px}.scene-1 .scene-cell{border-radius:0}.scene-cell-3-1{grid-row:1 / 3}.scene-3-left .scene-cell-3-1{grid-column:1;grid-row:1 / 3}.scene-3-left .scene-cell-3-2{grid-column:2;grid-row:1}.scene-3-left .scene-cell-3-3{grid-column:2;grid-row:2}.scene-3-right .scene-cell-3-1{grid-column:2;grid-row:1 / 3}.scene-3-right .scene-cell-3-2{grid-column:1;grid-row:1}.scene-3-right .scene-cell-3-3{grid-column:1;grid-row:2}.media-tile{position:absolute;inset:0;width:100%;height:100%}.media-tile-in{animation:media-fade-in 2.8s ease both}.media-tile-out{animation:media-fade-out 2.8s ease both;pointer-events:none}.photo-bg,.video-bg{position:absolute;inset:-2%;width:104%;height:104%}.photo-bg,.video-bg{object-fit:cover}.photo-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,var(--overlay-top) 0%,var(--overlay-bottom) 100%),radial-gradient(circle at top right,var(--glow-left) 0%,rgba(245,121,146,0) 45%)}.glow{position:absolute;width:24rem;height:24rem;border-radius:999px;filter:blur(40px);opacity:.45;z-index:2;animation:drift 8s ease-in-out infinite}.glow-left{background:var(--glow-left);top:-8rem;left:-6rem}.glow-right{background:var(--glow-right);right:-7rem;bottom:-8rem;animation-delay:1.2s}.interaction-layer{position:fixed;inset:0;pointer-events:none;z-index:6}.trail-heart,.burst-heart{position:fixed;left:0;top:0;transform:translate(-50%,-50%);will-change:transform,opacity}.trail-heart{animation:trail-rise var(--trail-duration) ease-out forwards}.burst-heart{animation:burst-fly var(--burst-duration) cubic-bezier(.16,.84,.32,1) forwards;animation-delay:var(--burst-delay)}.foreground{width:min(680px,100%);display:flex;flex-direction:column;align-items:center;gap:0;z-index:3}.card{width:100%;background:var(--card-bg);border:1px solid var(--card-border);border-radius:28px;padding:clamp(1.5rem,4vw,3rem);text-align:center;box-shadow:0 20px 60px #55262933;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);animation:float-in .5s ease-out}.card-toggle-btn{border:1px solid var(--countdown-border);background:color-mix(in hsl,var(--chip-bg) 85%,transparent);color:var(--text-primary);width:2.35rem;height:2.35rem;border-radius:9999px;padding:0;display:grid;place-items:center;font-weight:700;font-size:1rem;line-height:1;cursor:pointer;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);transition:transform .2s ease,background-color .2s ease;position:fixed;left:50%;bottom:1rem;transform:translate(-50%);z-index:4}.card-toggle-btn:hover{transform:translate(-50%) translateY(-2px);background:color-mix(in hsl,var(--chip-bg) 100%,transparent)}.card-toggle-icon{width:1.05rem;height:1.05rem;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;transform-origin:center;transition:transform .2s ease}.card-toggle-icon-up{transform:rotate(0)}.card-toggle-icon-down{transform:rotate(180deg)}.eyebrow{margin:0;letter-spacing:.2em;text-transform:uppercase;font-size:.72rem;color:var(--text-muted);font-weight:700}h1{margin:.75rem 0;font-size:clamp(2rem,7vw,3.7rem);line-height:1.05;color:var(--text-primary)}.message{margin:0 auto;max-width:46ch;font-size:clamp(1rem,2.5vw,1.2rem);color:var(--text-secondary)}.countdown{margin:1.2rem auto 0;padding:1rem;max-width:28rem;border-radius:14px;background:var(--countdown-bg);border:1px solid var(--countdown-border)}.countdown-toggle{display:flex;flex-direction:column;align-items:center;width:100%;margin-inline:auto;-webkit-appearance:none;appearance:none;font:inherit;color:inherit;cursor:pointer;text-align:center;transition:transform .18s ease,background-color .18s ease,box-shadow .22s ease;animation:countdown-idle-glow 2.8s ease-in-out infinite}.countdown-toggle:hover{transform:translateY(-1px);animation-play-state:paused;box-shadow:0 0 0 1px color-mix(in hsl,var(--accent) 22%,transparent),0 0 18px color-mix(in hsl,var(--accent) 24%,transparent)}.countdown-toggle:focus-visible{outline:2px solid color-mix(in hsl,var(--accent) 65%,white);outline-offset:2px}.countdown-label{margin:0 auto;font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);font-weight:700;text-align:center}.countdown-time{margin:.35rem auto 0;font-size:clamp(1.1rem,2.8vw,1.5rem);font-weight:800;color:var(--text-primary);max-width:24ch;text-align:center}.actions{margin-top:2rem;display:flex;justify-content:center;gap:.8rem;flex-wrap:wrap}.btn{border:0;border-radius:999px;padding:.82rem 1.25rem;font-size:1rem;font-weight:700;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}.btn:hover{transform:translateY(-2px)}.btn-yes{color:#fff;background:linear-gradient(135deg,var(--accent),var(--accent-strong));box-shadow:0 10px 24px color-mix(in hsl,var(--accent-strong) 60%,transparent)}.btn-no{color:var(--chip-text);background:var(--chip-bg);border:1px solid var(--countdown-border)}.success{margin-top:1.6rem;background:var(--success-bg);border:1px solid var(--success-border);border-radius:14px;padding:1rem;color:var(--text-secondary);animation:pop .32s ease}.success-title{margin:0;font-size:1.35rem;color:var(--success-title)}.success p{margin:.4rem 0 0}@keyframes drift{0%,to{transform:translateY(0) scale(1)}50%{transform:translateY(10px) scale(1.05)}}@keyframes float-in{0%{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes pop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes media-fade-in{0%{opacity:0}to{opacity:1}}@keyframes media-fade-out{0%{opacity:1}to{opacity:0}}@keyframes trail-rise{0%{opacity:.9;transform:translate(-50%,-50%) translate(0) rotate(0) scale(.95)}to{opacity:0;transform:translate(-50%,-50%) translate(var(--trail-x),-96px) rotate(var(--trail-rotate)) scale(1.2)}}@keyframes burst-fly{0%{opacity:0;transform:translate(-50%,-50%) scale(.7)}12%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) translate(var(--burst-x),var(--burst-y)) rotate(var(--burst-rotate)) scale(.9)}}@keyframes countdown-idle-glow{0%,to{box-shadow:0 0 color-mix(in hsl,var(--accent) 0%,transparent),0 0 color-mix(in hsl,var(--accent) 0%,transparent)}50%{box-shadow:0 0 0 1px color-mix(in hsl,var(--accent) 16%,transparent),0 0 14px color-mix(in hsl,var(--accent) 18%,transparent)}}@media(max-width:520px){.scene{gap:.35rem;padding:.35rem}.scene-cell{border-radius:14px}.scene-1 .scene-cell{border-radius:0}.card{border-radius:22px;padding:1.2rem}.btn{width:100%}}
