.instruction-overlay{position:absolute;left:18px;right:18px;bottom:18px;z-index:3;display:grid;gap:4px;justify-items:center;text-align:center;pointer-events:none}.instruction-overlay__label,.instruction-overlay__copy{margin:0}.instruction-overlay__label{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:#4c403885}.instruction-overlay__copy{max-width:22rem;font-size:.95rem;color:#4c4038d1}@media (max-width: 767px){.instruction-overlay{left:12px;right:12px;bottom:14px}}.sound-control{border:1px solid rgba(255,255,255,.72);border-radius:999px;background:#ffffff85;min-height:46px;padding:0 18px;color:#4c4038db;cursor:pointer;white-space:nowrap;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}.spring-background{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;z-index:0}.spring-background__glow{position:absolute;border-radius:999px;filter:blur(18px);opacity:.54}.spring-background__glow--left{top:-12%;left:-6%;width:44vw;height:44vw;min-width:240px;min-height:240px;background:radial-gradient(circle,#fff7ecbd,#fff7ec00 72%)}.spring-background__glow--right{right:-10%;bottom:6%;width:34vw;height:34vw;min-width:200px;min-height:200px;background:radial-gradient(circle,#f1e3e08a,#f1e3e000 72%)}.spring-background__petal{position:absolute;top:-8%;left:var(--petal-left);width:10px;height:16px;border-radius:70% 70% 70% 18%;background:linear-gradient(180deg,#f6dde0ad,#e6bec457);opacity:.42;animation:ambientPetal var(--petal-duration) ease-in-out infinite;animation-delay:var(--petal-delay)}@keyframes ambientPetal{0%{transform:translateZ(0) rotate(0);opacity:0}10%{opacity:.4}50%{transform:translate3d(10px,42vh,0) rotate(16deg)}to{transform:translate3d(-8px,94vh,0) rotate(-10deg);opacity:0}}.wish-result-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at top,rgba(255,248,244,.12),transparent 34%),#40332c38;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.wish-result-modal__card{position:relative;width:min(100%,420px);padding:28px 24px 24px;border-radius:28px;border:1px solid rgba(255,255,255,.72);background:radial-gradient(circle at top,rgba(255,255,255,.82),transparent 44%),linear-gradient(180deg,#ffffffe6,#fff8f6cc),#fffc;box-shadow:0 24px 72px #543d3324,inset 0 1px #ffffff80;transform-origin:center;overflow:hidden}.wish-result-modal__card:before{position:absolute;inset:0 auto auto 0;width:100%;height:54%;content:"";background:linear-gradient(180deg,rgba(255,255,255,.26),transparent);pointer-events:none}.wish-result-modal__eyebrow,.wish-result-modal__title,.wish-result-modal__message{margin:0}.wish-result-modal__eyebrow{font-size:.76rem;letter-spacing:.18em;text-transform:uppercase;color:#4c40388f}.wish-result-modal__title{margin-top:10px;font-family:Iowan Old Style,Palatino Linotype,Times New Roman,serif;font-size:2rem;line-height:1.02}.wish-result-modal__message{margin-top:16px;line-height:1.72;color:#4c4038d1}.wish-result-modal__actions{display:flex;gap:10px;margin-top:24px}.wish-result-modal__button{flex:1;min-height:48px;border:0;border-radius:999px;background:linear-gradient(180deg,#d5b0b5f0,#cca3a9e0);color:#fffaf7;cursor:pointer;transition:transform .16s ease,box-shadow .16s ease,background .16s ease;box-shadow:0 12px 28px #af8d8a24}.wish-result-modal__button--ghost{background:#ffffffbd;color:#4c4038e6;border:1px solid rgba(213,192,185,.8);box-shadow:none}.wish-result-modal__button:not(:disabled):active{transform:translateY(1px) scale(.99)}.wish-result-modal__button:disabled{opacity:.54;cursor:default}@media (max-width: 767px){.wish-result-modal{padding:16px}.wish-result-modal__card{padding:26px 20px 20px;border-radius:24px}.wish-result-modal__actions{flex-direction:column}.wish-result-modal__button{min-height:52px}}.wish-tree-scene{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.wish-tree-scene__host{position:absolute;top:0;right:0;bottom:0;left:0;user-select:none;-webkit-user-select:none}.wish-tree-scene__host canvas{display:block;width:100%;height:100%;touch-action:manipulation;-webkit-user-drag:none;user-select:none;-webkit-user-select:none}.wish-tree-scene__canopy-button{position:absolute;border:0;border-radius:999px;background:transparent;cursor:pointer;touch-action:manipulation;-webkit-user-drag:none;user-select:none;-webkit-user-select:none}.wish-tree-scene__canopy-button:before{position:absolute;top:12%;right:8%;bottom:12%;left:8%;content:"";border:1px solid rgba(255,255,255,.22);border-radius:999px;opacity:.78;box-shadow:0 0 0 8px #ffffff0a;animation:canopyPulse 4.2s ease-in-out infinite}.wish-tree-scene__canopy-button:disabled{pointer-events:none}.wish-tree-scene__canopy-button:disabled:before{opacity:0}.wish-tree-scene__hint-shell{position:absolute;left:50%;bottom:10%;transform:translate(-50%) translateY(8px);opacity:0;pointer-events:none;transition:opacity .18s ease-out,transform .22s ease-out}.wish-tree-scene__hint-shell.is-visible{opacity:1;transform:translate(-50%) translateY(0)}.wish-tree-scene__hint{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 16px;border-radius:999px;background:#ffffff85;border:1px solid rgba(255,255,255,.6);color:#4c4038c7;font-size:.84rem;white-space:nowrap;box-shadow:0 12px 24px #7d63550f;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@keyframes canopyPulse{0%,to{transform:scale(.985);opacity:.24}50%{transform:scale(1.015);opacity:.52}}@media (max-width: 767px){.wish-tree-scene__hint-shell{bottom:11%}.wish-tree-scene__hint{min-height:42px;padding:0 14px;font-size:.8rem}}.cherry-page{position:relative;min-height:100dvh;overflow:hidden;-webkit-tap-highlight-color:transparent}.cherry-page__shell{position:relative;z-index:2;display:grid;min-height:100dvh;padding:24px 18px 28px;grid-template-rows:auto 1fr auto;gap:18px}.cherry-page__hero{display:grid;gap:12px;justify-items:center;text-align:center;padding-top:max(12px,env(safe-area-inset-top))}.cherry-page__eyebrow{margin:0;letter-spacing:.18em;text-transform:uppercase;font-size:.74rem;color:var(--text-secondary)}.cherry-page__title{margin:0;font-family:Iowan Old Style,Palatino Linotype,Times New Roman,serif;font-size:clamp(2.2rem,8vw,4.2rem);font-weight:600;letter-spacing:-.03em;line-height:.98}.cherry-page__description{margin:0;max-width:28rem;font-size:.98rem;line-height:1.62;color:var(--text-secondary)}.cherry-page__main{display:flex;align-items:stretch}.cherry-page__stage{position:relative;width:min(100%,960px);margin:0 auto;border:1px solid var(--panel-border);border-radius:32px;background:radial-gradient(circle at top,rgba(255,255,255,.36),transparent 48%),linear-gradient(180deg,#ffffff5c,#ffffff14),var(--panel-surface);box-shadow:0 28px 70px #9179601a,inset 0 1px #ffffff70;overflow:hidden;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);touch-action:manipulation;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.cherry-page__footer{display:flex;align-items:center;justify-content:space-between;gap:16px;width:min(100%,960px);margin:0 auto;padding-bottom:max(4px,env(safe-area-inset-bottom))}.cherry-page__footer-copy{margin:0;max-width:34rem;color:var(--text-secondary);font-size:.95rem;line-height:1.55}@media (max-width: 767px){.cherry-page__shell{padding:18px 14px 20px;gap:14px}.cherry-page__stage{border-radius:28px}.cherry-page__footer{align-items:flex-end;flex-direction:column;gap:0}.cherry-page__footer-copy{width:100%;font-size:.92rem}}:root{color-scheme:light;font-family:Avenir Next,Pretendard,Noto Sans KR,sans-serif;line-height:1.5;font-weight:400;--page-bg-top: #f8f3ea;--page-bg-middle: #edf5fb;--page-bg-bottom: #f7eee7;--text-primary: #4c4038;--text-secondary: rgba(76, 64, 56, .74);--panel-border: rgba(255, 255, 255, .7);--panel-surface: rgba(255, 252, 249, .58);--panel-shadow: 0 24px 60px rgba(145, 121, 96, .12);--accent-blush: #dfa8ad;--accent-branch: #835d4c;--accent-sky: #daeaf8;--button-surface: rgba(255, 255, 255, .8)}*{box-sizing:border-box}html,body,#root{min-height:100%}body{margin:0;min-width:320px;background:radial-gradient(circle at top,rgba(255,247,238,.92),transparent 40%),linear-gradient(180deg,var(--page-bg-top) 0%,var(--page-bg-middle) 48%,var(--page-bg-bottom) 100%);color:var(--text-primary)}button,input,textarea,select{font:inherit}button,a{color:inherit}
