@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/8715d2ed531152f4-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/393d45a2251e223a-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/8715d2ed531152f4-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/c48b38fe8bb532f3-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/48410f3df60da620-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Cormorant Garamond;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/7b89a4fd5e90ede0-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Cormorant Garamond Fallback;src:local("Times New Roman");ascent-override:95.27%;descent-override:29.59%;line-gap-override:0.00%;size-adjust:96.98%}.__className_1a89e6{font-family:Cormorant Garamond,Cormorant Garamond Fallback;font-style:normal}.__variable_1a89e6{--font-display-loaded:"Cormorant Garamond","Cormorant Garamond Fallback"}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/3131c862d4942660-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Nunito;font-style:normal;font-weight:400;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/3131c862d4942660-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Nunito;font-style:normal;font-weight:600;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/3131c862d4942660-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Nunito;font-style:normal;font-weight:700;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/3131c862d4942660-s.p.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Nunito;font-style:normal;font-weight:800;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}@font-face{font-family:Nunito Fallback;src:local("Arial");ascent-override:99.71%;descent-override:34.82%;line-gap-override:0.00%;size-adjust:101.39%}.__className_bd9350{font-family:Nunito,Nunito Fallback;font-style:normal}.__variable_bd9350{--font-body-loaded:"Nunito","Nunito Fallback"}:root{--bg-1:#ffe6ef;--bg-2:#fff5e8;--bg-3:#ffd6e7;--bg-wolf-1:#3b2a4a;--bg-wolf-2:#6b4a7a;--bg-wolf-3:#2a1f38;--text:#4a2c3a;--text-soft:#7a5364;--accent:#e85a7a;--accent-deep:#c43d62;--card:rgba(255,255,255,0.78);--shadow:0 10px 28px rgba(196,61,98,0.14);--radius:18px;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--font-display:var(--font-display-loaded),"Cormorant Garamond","Times New Roman",serif;--font-body:var(--font-body-loaded),"Nunito","Segoe UI",sans-serif}*,:after,:before{box-sizing:border-box}body,html{margin:0;padding:0;max-width:100%;overflow-x:hidden}html{-webkit-text-size-adjust:100%}body{min-height:100dvh;font-family:var(--font-body);font-size:16px;line-height:1.45;color:var(--text);background:linear-gradient(165deg,var(--bg-1),var(--bg-2) 45%,var(--bg-3));background-attachment:fixed}body.theme-wolf{background:linear-gradient(165deg,var(--bg-wolf-1),var(--bg-wolf-2) 50%,var(--bg-wolf-3));color:#ffe9f2}body.theme-wolf .panel,body.theme-wolf .speech-bubble{background:rgba(40,24,52,.72);color:#ffe9f2}img{max-width:100%;height:auto;display:block;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none;background:transparent}.basket-cell,.basket-cell img,.envelope-stage,.envelope-stage img,.wolf-btn,.wolf-btn img{background:transparent!important}button{font-family:inherit;font-size:16px;cursor:pointer;border:none;-webkit-appearance:none;-moz-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed;opacity:.55}a{color:inherit}.app-shell{position:relative;min-height:100dvh;min-height:100svh;width:100%;max-width:480px;margin:0 auto;padding:calc(44px + var(--safe-top)) calc(14px + var(--safe-right)) calc(18px + var(--safe-bottom)) calc(14px + var(--safe-left));display:flex;flex-direction:column;gap:10px;z-index:1}.hearts-badge{position:fixed;top:calc(8px + var(--safe-top));right:max(10px,calc(50% - 240px + 10px));z-index:50;display:inline-flex;align-items:center;gap:5px;min-height:36px;padding:6px 10px 6px 8px;border-radius:999px;background:rgba(255,248,252,.92);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 6px 16px rgba(196,61,98,.16);border:1px solid rgba(232,90,122,.2);pointer-events:none;font-weight:800;font-size:15px;color:var(--text);line-height:1}body.theme-wolf .hearts-badge{background:rgba(40,24,52,.82);color:#ffe9f2;border-color:rgba(255,233,242,.28)}.hearts-badge img{width:20px;height:20px;object-fit:contain;flex-shrink:0}.hearts-badge-count{display:inline-block;min-width:1.1ch;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hearts-badge-count.pulse{color:var(--accent-deep)}body.theme-wolf .hearts-badge-count.pulse{color:#ffb3cc}.hearts-badge-delta{position:absolute;right:12px;top:-10px;font-size:12px;font-weight:800;animation:heartsDelta .7s ease forwards;pointer-events:none}.hearts-badge-delta.plus{color:#c43d62}.hearts-badge-delta.minus{color:#8a5a6a}@keyframes heartsDelta{0%{opacity:0;transform:translateY(4px) scale(.9)}25%{opacity:1}to{opacity:0;transform:translateY(-12px) scale(1)}}@media (prefers-reduced-motion:reduce){.hearts-badge-delta{display:none}}.step-title{margin:4px 0 0;font-family:var(--font-display);font-size:clamp(1.45rem,6vw,1.9rem);font-weight:700;letter-spacing:.01em;line-height:1.15}.panel{background:var(--card);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;width:100%;padding:12px 16px;border-radius:14px;font-weight:800;transition:transform .15s ease,box-shadow .15s ease,background .2s ease}.btn:active:not(:disabled){transform:scale(.98)}.btn-primary{background:linear-gradient(135deg,#ff7aa2,#e85a7a 55%,#c43d62);color:#fff;box-shadow:0 8px 18px rgba(196,61,98,.28)}.btn-secondary{background:rgba(255,255,255,.7);color:var(--accent-deep);border:1.5px solid rgba(232,90,122,.35)}body.theme-wolf .btn-secondary{background:rgba(255,255,255,.12);color:#ffe9f2;border-color:rgba(255,233,242,.35)}.btn-ghost{background:transparent;color:var(--text-soft);text-decoration:underline;min-height:44px}.actions{display:flex;flex-direction:column;gap:10px;margin-top:12px;padding-bottom:4px}.reward-chip{display:inline-flex;align-items:center;gap:6px;margin-top:10px;padding:10px 12px;border-radius:12px;background:rgba(232,90,122,.12);font-weight:700}.hint{color:var(--text-soft);font-size:15px}.rabbit-dialog{display:grid;grid-template-columns:1fr;grid-gap:10px;gap:10px;align-items:center}@media (min-width:380px){.rabbit-dialog.side{grid-template-columns:118px 1fr}}.rabbit-figure{width:min(42vw,160px);margin:0 auto;animation:rabbitSway 3.8s ease-in-out infinite}.rabbit-figure.happy{animation:rabbitHop .7s ease}.rabbit-figure img{width:100%;height:auto;object-fit:contain;background:transparent}.speech-bubble{position:relative;display:grid;background:rgba(255,255,255,.88);border-radius:18px;padding:12px 14px;box-shadow:var(--shadow);white-space:pre-wrap;font-size:13px;line-height:1.45;cursor:pointer}.speech-text{position:relative;z-index:1;grid-area:1/1}.speech-measure{grid-area:1/1;visibility:hidden;pointer-events:none;white-space:pre-wrap;z-index:0}.speech-caret{display:inline-block;width:.55ch;height:1em;margin-left:1px;vertical-align:-.1em;background:var(--accent);animation:caretBlink .9s steps(1) infinite;border-radius:1px}@keyframes caretBlink{0%,45%{opacity:1}46%,to{opacity:0}}.speech-bubble:after{content:"";position:absolute;left:28px;top:-8px;width:16px;height:16px;background:inherit;transform:rotate(45deg);border-radius:3px}@media (min-width:380px){.rabbit-dialog.side .speech-bubble:after{left:-7px;top:28px}}.bg-layer{position:fixed;inset:0;pointer-events:none;overflow:hidden;z-index:0}.cloud,.float-heart,.sparkle{position:absolute;opacity:.35}.float-heart{color:#ff7aa2;font-size:18px;animation:floatUp linear infinite}.sparkle{width:6px;height:6px;border-radius:50%;background:#fff6c8;box-shadow:0 0 8px #ffe28a;animation:twinkle 2.8s ease-in-out infinite}.cloud{width:70px;height:28px;border-radius:40px;background:rgba(255,255,255,.35);filter:blur(.2px);animation:drift 28s linear infinite}.burst-heart{position:fixed;pointer-events:none;z-index:80;font-size:14px;animation:burst .7s ease-out forwards}.debug-reset{position:fixed;right:8px;bottom:calc(8px + var(--safe-bottom));z-index:100;min-height:36px;padding:6px 10px;font-size:12px;border-radius:10px;background:rgba(0,0,0,.45);color:#fff}.basket-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:10px;gap:10px;margin-top:12px}.basket-cell{position:relative;aspect-ratio:1;border-radius:14px;background:rgba(255,255,255,.55);border:none;padding:6px;min-height:0}.basket-cell img{width:100%;height:100%;object-fit:contain}.basket-cell .carrot-pop{position:absolute;inset:8% 18% auto;width:64%;height:auto;object-fit:contain;animation:popIn .35s ease}.riddle-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px;margin-top:12px}.riddle-option{min-height:56px;border-radius:14px;padding:10px;background:rgba(255,255,255,.8);border:2px solid transparent;font-weight:700;color:var(--text)}.riddle-option.correct{border-color:#4caf7a;background:rgba(76,175,122,.18)}.riddle-option.wrong{border-color:#e57373;animation:shake .35s ease}.month-list{display:flex;flex-direction:column;gap:10px;margin-top:12px}.month-card{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:56px;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.82);border:2px solid transparent;font-weight:800;color:var(--text);text-align:left}.month-card.locked{opacity:.55;filter:grayscale(.25)}.month-card.selected{border-color:var(--accent)}.wolf-arena{position:relative;display:flex;flex-direction:column;align-items:center;gap:10px;margin-top:8px;min-height:280px}.wolf-btn{position:relative;width:min(78vw,320px);background:transparent;border:none;padding:0;touch-action:manipulation}.wolf-btn img{width:100%;height:auto;object-fit:contain;transition:transform .08s ease}.wolf-btn.hit img{transform:translateX(6px) scale(.98)}.wolf-btn.flee img{animation:wolfFlee 1.1s ease-in forwards}.hp-bar{width:100%;height:14px;border-radius:999px;background:rgba(255,255,255,.25);overflow:hidden}.hp-fill{height:100%;background:linear-gradient(90deg,#ff6b8a,#ffb347);transition:width .12s linear}.dmg-float{position:absolute;left:50%;top:18%;transform:translateX(-50%);color:#fff;font-weight:900;text-shadow:0 2px 6px rgba(0,0,0,.45);animation:floatDamage .55s ease-out forwards;pointer-events:none}.dust-cloud{position:absolute;right:8%;bottom:18%;width:54px;height:28px;border-radius:50%;background:rgba(230,210,240,.55);filter:blur(2px);animation:dust .9s ease-out forwards}.roulette-wrap{position:relative;width:min(86vw,320px);margin:18px auto 8px;display:flex;flex-direction:column;align-items:center;gap:10px}.roulette-stage{position:relative;width:100%;aspect-ratio:1;filter:drop-shadow(0 12px 22px rgba(196,61,98,.22))}.roulette-pointer{position:absolute;top:-10px;left:50%;transform:translateX(-50%);z-index:3;filter:drop-shadow(0 3px 4px rgba(0,0,0,.22));pointer-events:none}.roulette-svg{width:100%;height:100%;display:block;transform-origin:50% 50%;will-change:transform}.roulette-num{font-family:var(--font-body);font-size:11px;font-weight:800;fill:#5a3044;pointer-events:none}.roulette-num.win{font-size:15px;fill:#ffffff;paint-order:stroke;stroke:#c43d62;stroke-width:.8px}.roulette-win-seg{filter:drop-shadow(0 0 6px rgba(255,107,154,.9))}.roulette-hub-label{position:absolute;inset:36%;border-radius:50%;display:grid;place-items:center;font-weight:900;font-size:1.35rem;color:var(--accent-deep);pointer-events:none;z-index:2;text-shadow:0 1px 0 rgba(255,255,255,.8)}.roulette-wrap.landed .roulette-hub-label{color:#c43d62;animation:hubPulse .9s ease}.roulette-badge{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:999px;background:linear-gradient(135deg,#fff0f5,#ffd6e7);border:1.5px solid rgba(232,90,122,.45);font-weight:700;font-size:15px;box-shadow:var(--shadow);animation:badgePop .45s ease}.roulette-badge strong{font-size:1.25rem;color:#c43d62}@keyframes hubPulse{0%{transform:scale(.9)}50%{transform:scale(1.08)}to{transform:scale(1)}}@keyframes badgePop{0%{transform:scale(.7);opacity:0}to{transform:scale(1);opacity:1}}.catch-score{margin:10px 0 0;text-align:center;font-size:1.2rem;font-weight:800;letter-spacing:.02em;color:var(--accent-deep);padding:8px 12px;border-radius:14px;background:rgba(255,255,255,.7);box-shadow:var(--shadow)}.catch-field{position:relative;width:100%;height:min(46.8dvh,378px);min-height:252px;margin-top:10px;border-radius:18px;overflow:hidden;background:linear-gradient(180deg,rgba(255,255,255,.35),rgba(255,214,231,.45));touch-action:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.falling-heart{position:absolute;width:28px;height:28px;object-fit:contain;pointer-events:none}.catch-basket{position:absolute;bottom:8px;width:92px;height:64px;transform:translateX(-50%);touch-action:none}.catch-basket img{width:100%;height:100%;object-fit:contain}.restaurant-swiper{width:100%;overflow:hidden;margin:8px 0 4px;touch-action:pan-y}.restaurant-swiper .swiper{overflow:visible}.restaurant-card{border-radius:18px;overflow:hidden;background:transparent;transform:scale(.94);opacity:.9;transition:transform .25s ease,opacity .25s ease;filter:none}.swiper-slide-active .restaurant-card{transform:scale(1);opacity:1}.restaurant-card img{width:100%;height:auto;max-height:min(58dvh,460px);object-fit:contain;background:transparent;filter:none;opacity:1}.time-wheel-wrap{position:relative;height:220px;margin:12px 0;border-radius:16px;overflow:hidden;background:rgba(255,255,255,.5)}.time-wheel{height:100%;overflow-y:auto;scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch;padding:88px 0;scrollbar-width:none}.time-wheel::-webkit-scrollbar{display:none}.time-option{height:44px;display:flex;align-items:center;justify-content:center;scroll-snap-align:center;font-size:22px;font-weight:700;color:rgba(74,44,58,.35);transition:color .15s ease,transform .15s ease}.time-option.active{color:var(--accent-deep);transform:scale(1.12)}.time-frame{position:absolute;left:12px;right:12px;top:50%;height:44px;margin-top:-22px;border-radius:12px;border:2px solid rgba(232,90,122,.55);pointer-events:none;box-shadow:inset 0 0 0 999px rgba(255,255,255,.08)}.rose-hero{display:flex;flex-direction:column;align-items:center;gap:8px;margin:10px auto 4px}.rose-hero img{width:min(42vw,168px);height:auto;max-height:220px;object-fit:contain;filter:drop-shadow(0 10px 18px rgba(196,61,98,.22));animation:rabbitSway 4s ease-in-out infinite}.rose-hero-count{margin:0;font-weight:800;font-size:1.05rem;color:var(--accent-deep);text-align:center}.final-card{position:relative;margin:10px auto 0;width:min(100%,360px);padding:16px 16px 14px;border-radius:18px;background:linear-gradient(165deg,rgba(255,255,255,.95),rgba(255,236,244,.92) 55%,rgba(255,228,238,.9));box-shadow:var(--shadow);border:1px solid rgba(232,90,122,.18);text-align:center;overflow:hidden}.final-card:before{content:"♥";position:absolute;right:12px;top:8px;font-size:14px;color:rgba(232,90,122,.28);pointer-events:none}.final-card h2{font-family:var(--font-display);margin:0 0 10px;font-size:1.35rem;line-height:1.2;color:var(--text)}.final-meta{display:grid;grid-gap:6px;gap:6px;text-align:left;margin:0 0 10px;font-size:15px}.final-meta-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:6px 8px;border-radius:10px;background:rgba(255,255,255,.55)}.final-meta-row span{color:var(--text-soft);font-weight:600;font-size:14px}.final-meta-row strong{color:var(--accent-deep);font-weight:800;text-align:right}.final-accepted{margin:0;padding-top:2px;font-weight:800;font-size:14px;color:#c43d62}.rabbit-figure.clickable{cursor:pointer;-webkit-tap-highlight-color:transparent}.rabbit-figure.clickable:active{transform:scale(.96)}.envelope-stage{width:min(70vw,260px);margin:10px auto}.envelope-stage img{width:100%;object-fit:contain}.modal-backdrop{position:fixed;inset:0;z-index:90;background:rgba(40,20,30,.45);display:grid;place-items:end center;padding:16px;padding-bottom:calc(16px + var(--safe-bottom))}.modal-sheet{width:min(100%,420px);background:#fff8fb;border-radius:20px;padding:18px;box-shadow:var(--shadow)}@keyframes floatUp{0%{transform:translateY(20px);opacity:0}15%{opacity:.4}to{transform:translateY(-110vh);opacity:0}}@keyframes twinkle{0%,to{opacity:.15;transform:scale(.7)}50%{opacity:.8;transform:scale(1.2)}}@keyframes drift{0%{transform:translateX(-20vw)}to{transform:translateX(120vw)}}@keyframes rabbitSway{0%,to{transform:rotate(-1.5deg) translateY(0)}50%{transform:rotate(1.5deg) translateY(-3px)}}@keyframes rabbitHop{0%,to{transform:translateY(0)}40%{transform:translateY(-10px) scale(1.03)}}@keyframes popIn{0%{transform:scale(.4);opacity:0}to{transform:scale(1);opacity:1}}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-5px)}75%{transform:translateX(5px)}}@keyframes burst{0%{transform:translate(0) scale(.6);opacity:1}to{transform:translate(var(--dx),var(--dy)) scale(1.1);opacity:0}}@keyframes floatDamage{0%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(-50%,-28px)}}@keyframes wolfFlee{to{transform:translateX(120%) scaleX(-1);opacity:0}}@keyframes dust{0%{opacity:.7;transform:scale(.6)}to{opacity:0;transform:scale(1.6) translateX(20px)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}