@import "https://fonts.googleapis.com/css2?family=Great+Vibes&display=swap";html,body,#root{min-height:100%;margin:0}body{font-family:Inter,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*,:before,:after{box-sizing:border-box}.page{background:radial-gradient(circle at top,#ffe4ef 0%,#fff7fb 45%,#fefefe 100%);place-items:center;min-height:100svh;padding:clamp(84px,14svh,128px) clamp(12px,4vw,24px) clamp(16px,4svh,32px);display:grid;position:relative}.center-stack{z-index:3;flex-direction:column;align-items:center;gap:10px;width:100%;max-width:560px;display:flex;position:relative}.for-radima{z-index:2;pointer-events:none;text-align:center;white-space:nowrap;color:#b2336f;text-shadow:0 6px 18px #b2336f40;margin:0;font-family:Great Vibes,Brush Script MT,cursive;font-size:clamp(2.1rem,8vw,4rem);line-height:1;position:fixed;top:10px;left:50%;transform:translate(-50%)}.card{text-align:center;background:#fff;border:1px solid #e57ca840;border-radius:24px;width:100%;max-width:560px;padding:clamp(18px,4vw,34px) clamp(14px,4vw,30px) clamp(20px,4.5vw,34px);position:relative;overflow:hidden;box-shadow:0 14px 40px #d65b8e33}.subtitle{color:#9d4a73;margin:0;font-size:.95rem;font-weight:600}h1{color:#53273d;margin:10px 0 0;font-size:clamp(1.4rem,5.5vw,2rem);line-height:1.25}.name-highlight{color:#d63c84;text-shadow:0 3px 10px #d63c8447;margin-right:2px;font-family:Great Vibes,Brush Script MT,cursive;font-size:1.25em;line-height:.95;display:inline-block}.play-area{background:#ffe1ef57;border:1px dashed #b14e7c66;border-radius:16px;height:clamp(220px,36svh,290px);min-height:220px;margin-top:clamp(16px,4vw,24px);position:relative}button{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;border:none;border-radius:999px;padding:clamp(10px,2.6vw,12px) clamp(20px,6vw,26px);font-size:clamp(.94rem,3.7vw,1rem);font-weight:700}.yes-btn{color:#fff;background:linear-gradient(120deg,#ff5ca8,#e7408c);margin-top:clamp(20px,5vw,34px);box-shadow:0 8px 20px #e7408c59}.yes-btn:active{transform:scale(.97)}.no-btn{color:#a3416e;touch-action:none;background:#fff;border:2px solid #c753845c;transition:transform .2s;position:absolute;top:0;left:0}.accepted .play-area{display:none}.result{background:#ffe6f18c;border-radius:14px;width:100%;margin-top:22px;padding:18px 12px}.result-title{color:#8c2f58;margin:0;font-size:clamp(1.1rem,4.5vw,1.45rem);font-weight:800}.result-text{color:#6f3450;max-width:38ch;margin:10px auto 0}.confetti-layer{pointer-events:none;z-index:4;position:fixed;inset:0;overflow:hidden}.confetti-piece{opacity:0;border-radius:3px;width:10px;height:18px;animation-name:confetti-fall;animation-timing-function:ease-out;animation-fill-mode:forwards;position:absolute;top:-12%}@keyframes confetti-fall{0%{opacity:0;transform:translate(0,0)rotate(0)}10%{opacity:1}to{transform:translate3d(var(--drift), 120svh, 0) rotate(var(--spin));opacity:0}}.hearts{pointer-events:none;z-index:1;position:fixed;inset:0;overflow:hidden}.heart{opacity:0;font-size:clamp(18px,4vw,28px);animation-name:float-heart;animation-timing-function:ease-in;animation-iteration-count:infinite;position:absolute;bottom:-8%}@keyframes float-heart{0%{opacity:0;transform:translateY(0)translate(0)scale(.8)}15%{opacity:1}70%{opacity:1}to{opacity:0;transform:translateY(-120svh)translate(24px)scale(1.1)}}@media (width<=480px){.for-radima{font-size:clamp(1.8rem,11vw,2.5rem);top:6px}.card{border-radius:18px}.result-text{max-width:30ch;font-size:.95rem}}@media (height<=700px){.page{place-items:start center;padding-top:clamp(76px,12svh,108px)}}@media (width>=768px){.play-area{height:280px}}
