:root{--cream: #f7efe0;--card: #fffdf8;--ink: #3e342a;--muted: #9a8c79;--sage: #5e9c5a;--sage-deep: #3f7e4a;--grass: #5fb85c;--sun: #ffb627;--sun-glow: #ffd36b;--coral: #f1795e;--teal: #3fb8af;--berry: #b5547e;--slate: #8893a0;--line: #e7dcc6;--shadow: 0 10px 26px rgba(62, 52, 42, .16);--shadow-sm: 0 3px 0 rgba(62, 52, 42, .1);--radius-sm: 12px;--radius-md: 16px;--radius-lg: 20px;--disp: "Shantell Sans", "Gaegu", cursive;--body: "Nunito", "Gowun Dodum", system-ui, sans-serif;--tier-1: #8893a0;--tier-2: #b3ad93;--tier-3: #d9c27e;--tier-4: #7fc46a;--tier-5: #5fb85c}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%}body{margin:0;font-family:var(--body);font-size:16px;color:var(--ink);background:#2e2620}.frame{height:100%;display:flex;align-items:center;justify-content:center}.screen{width:min(100vw,56.25dvh);height:100dvh;max-height:100dvh;background:linear-gradient(180deg,#ffe9b8 0%,var(--cream) 55%);display:flex;flex-direction:column;gap:10px;padding:14px;overflow:hidden;position:relative}@media (min-aspect-ratio: 9/16){.screen{border-radius:24px;height:min(100dvh,96vh);box-shadow:0 0 60px #0006}}.topbar{display:flex;gap:8px;align-items:stretch}.mood{flex:1;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-md);padding:8px 12px;box-shadow:var(--shadow-sm)}.mood-caption{font-size:12px;color:var(--muted);display:flex;justify-content:space-between;font-weight:700}.mood-caption b{color:var(--ink);font-weight:900}.caption-right{display:inline-flex;align-items:center;gap:8px}.streak-chip{font-size:11px;font-weight:900;color:#b8542e;background:#ffe6c7;border:1px solid #ffcaa0;border-radius:999px;padding:1px 7px;line-height:1.4}.streak-toast{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 0 8px;padding:8px 12px;border-radius:var(--radius-sm);background:linear-gradient(180deg,#fff2d6,#ffe3b0);border:1px solid var(--sun);color:#8a4b1f;font-size:13px;font-weight:800;animation:fade-in .3s ease-out}.streak-toast b{color:var(--sage-deep);font-weight:900;white-space:nowrap}.mood-bar{height:11px;border-radius:7px;background:var(--line);margin-top:6px;overflow:hidden}.mood-fill{display:block;height:100%;background:linear-gradient(90deg,var(--grass),var(--sage));box-shadow:0 0 10px #5fb85c99;transition:width .4s ease-out}.tier-badge{min-width:86px;min-height:44px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-md);padding:5px 10px;text-align:center;box-shadow:var(--shadow-sm);cursor:pointer;font-family:var(--body)}.tier-badge .tier-label{font-size:10px;color:var(--muted)}.tier-badge .tier-name{font-family:var(--disp);font-weight:700;font-size:14px;color:var(--tier-color, var(--slate))}.tier-badge .tier-dots{font-size:9px;letter-spacing:2px;color:var(--tier-color, var(--slate))}.tier-badge .tier-points{font-size:11px;font-weight:900;color:var(--sage-deep)}.tier-badge .tier-cta{font-size:10px;font-weight:900;color:#5a3d00}.tier-badge.ready-up{border-color:var(--sun);background:linear-gradient(180deg,#fff6df,#ffe9b8);animation:badge-glow 1.3s ease-in-out infinite}@keyframes badge-glow{0%,to{box-shadow:var(--shadow-sm)}50%{box-shadow:0 0 0 5px #ffb62766}}.stage{flex:1;position:relative;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;overflow:hidden;box-shadow:inset 0 0 30px #7864461f}.stage.tier-1{background:linear-gradient(180deg,#1b1e25,#23262e 55%,#181a20);box-shadow:inset 0 0 70px #0000008c}.stage.tier-2{background:linear-gradient(180deg,#232730,#2c303a 55%,#1f222a);box-shadow:inset 0 0 60px #00000073}.stage.tier-3{background:radial-gradient(120% 90% at 50% 20%,#faf0d8,#e8d9ae)}.stage.tier-4{background:radial-gradient(120% 90% at 50% 20%,#eaf5dc,#c2e3ad)}.stage.tier-5{background:radial-gradient(120% 90% at 50% 15%,#f3fce9,#a8dd8c 80%)}.stage.tier-1:before,.stage.tier-2:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(150px 95px at 50% 9%,rgba(255,228,170,.5),transparent 70%),radial-gradient(48% 62% at 50% 56%,rgba(255,222,160,.18),transparent 72%)}.stage.tier-2:before{background:radial-gradient(160px 100px at 50% 9%,rgba(255,228,170,.55),transparent 70%),radial-gradient(52% 64% at 50% 56%,rgba(255,224,165,.22),transparent 74%)}.hang-bulb{position:absolute;top:0;left:50%;width:2px;height:44px;margin-left:-1px;background:#3a3d44;z-index:0}.hang-bulb:after{content:"";position:absolute;bottom:-18px;left:50%;width:16px;height:20px;margin-left:-8px;border-radius:50% 50% 46% 46%;background:radial-gradient(circle at 50% 38%,#fff3d0,#ffd36b 62%,#c98e2b);box-shadow:0 0 26px 9px #ffd26b73}.stage.tier-1 .stage-caption,.stage.tier-2 .stage-caption{color:#b9b2a6}.stage.tier-3:after,.stage.tier-4:after,.stage.tier-5:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(60% 40% at 50% 30%,rgba(255,210,107,.35),transparent 70%);pointer-events:none}.barn-scene{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none}.barn-scene svg{width:100%;height:100%;display:block}.barn-wall{position:absolute;left:0;right:0;top:0;height:calc(50% + 62px)}.barn-floor{position:absolute;left:0;right:0;top:calc(50% + 62px);bottom:0}.range-scene{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none}.range-scene svg{width:100%;height:100%;display:block}.range-sky{position:absolute;left:0;right:0;top:0;height:calc(50% + 62px)}.range-ground{position:absolute;left:0;right:0;top:calc(50% + 62px);bottom:0}.range-sun-core,.pasture-sun-core{transform-box:fill-box;transform-origin:center;animation:sun-pulse 5s ease-in-out infinite}@keyframes sun-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.06);opacity:.92}}.pasture-scene{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;pointer-events:none}.pasture-scene svg{width:100%;height:100%;display:block}.pasture-sky{position:absolute;left:0;right:0;top:0;height:calc(50% + 62px)}.pasture-ground{position:absolute;left:0;right:0;top:calc(50% + 62px);bottom:0}.pasture-flowers{transform-box:fill-box;transform-origin:50% 100%;animation:flower-sway 4.5s ease-in-out infinite}@keyframes flower-sway{0%,to{transform:rotate(-2.5deg)}50%{transform:rotate(2.5deg)}}.hen-walker[data-foraging] .hen-rig .bone-head{animation:rig-peck 1.3s ease-in-out infinite}.forage-peck{position:absolute;left:50%;bottom:8px;width:5px;height:5px;margin-left:-2px;border-radius:50%;background:#9c7a33;animation:seed-hop 1.3s ease-in-out infinite;z-index:2;pointer-events:none}.forage-peck:before,.forage-peck:after{content:"";position:absolute;width:4px;height:4px;border-radius:50%;background:#b08c41}.forage-peck:before{left:-10px;bottom:1px;animation:seed-hop 1.3s ease-in-out infinite;animation-delay:.45s}.forage-peck:after{left:9px;bottom:0;animation:seed-hop 1.3s ease-in-out infinite;animation-delay:.8s}@keyframes seed-hop{0%,60%,to{transform:translateY(0) scale(1);opacity:.9}30%{transform:translateY(-9px) scale(1.1);opacity:1}}.hen-walker[data-bathing] .hen-rig{animation:rig-bathe .45s ease-in-out infinite}@keyframes rig-bathe{0%,to{transform:translateY(5px) scaleX(var(--dir, 1)) rotate(-7deg) scaleY(.94)}50%{transform:translateY(7px) scaleX(var(--dir, 1)) rotate(7deg) scaleY(.9)}}.bath-dust{position:absolute;left:50%;bottom:4px;width:14px;height:14px;margin-left:-7px;border-radius:50%;background:radial-gradient(circle,#e8d49ad9,#e8d49a00 70%);animation:bath-puff .9s ease-out infinite;z-index:2;pointer-events:none}.bath-dust:before,.bath-dust:after{content:"";position:absolute;width:12px;height:12px;border-radius:50%;background:radial-gradient(circle,#e8d49ad9,#e8d49a00 70%);animation:bath-puff .9s ease-out infinite}.bath-dust:before{left:-36px;bottom:-2px;animation-delay:.3s}.bath-dust:after{left:32px;bottom:-1px;animation-delay:.55s}@keyframes bath-puff{0%{transform:translateY(0) scale(.5);opacity:.8}to{transform:translateY(-22px) scale(1.4);opacity:0}}.barn-feather{transform-box:fill-box;transform-origin:center;animation:feather-drift 7s ease-in-out infinite}.barn-feather.f2{animation-duration:9s;animation-delay:3.5s}@keyframes feather-drift{0%,to{transform:translate(0) rotate(0)}25%{transform:translate(-6px,10px) rotate(-12deg)}50%{transform:translate(4px,20px) rotate(8deg)}75%{transform:translate(-3px,9px) rotate(-6deg)}}.cage-scene{position:absolute;left:50%;top:50%;width:172px;height:206px;margin-left:-86px;margin-top:-97px;pointer-events:none}.cage-scene.wide{width:204px;margin-left:-102px}.cage-back,.cage-front{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.cage-back{z-index:0}.cage-front{z-index:2}.hen-walker{z-index:1;transition:transform 1s ease-in-out;will-change:transform}.hen{display:block;filter:drop-shadow(0 6px 8px rgba(0,0,0,.18));-webkit-user-select:none;user-select:none}.hen.bounce{animation:hen-bounce .5s ease-out}@keyframes hen-bounce{0%{transform:scale(1)}30%{transform:scale(1.15,.85)}60%{transform:scale(.92,1.08)}to{transform:scale(1)}}.hen.droop{filter:grayscale(.4) drop-shadow(0 6px 8px rgba(0,0,0,.18));transform:scaleY(.92)}.stage-caption{position:absolute;bottom:8px;left:0;right:0;text-align:center;font-size:11px;color:var(--muted);z-index:1;font-weight:700}.egg-corner{position:absolute;top:8px;right:8px;z-index:2;display:flex;flex-direction:column;align-items:center;gap:2px}.egg-slot{position:relative;min-width:56px;min-height:56px;border:none;background:transparent;cursor:pointer;font-size:44px;line-height:1;filter:drop-shadow(0 3px 4px rgba(0,0,0,.15))}.egg-count{position:absolute;top:-2px;right:-2px;min-width:18px;height:18px;padding:0 4px;border-radius:999px;background:var(--coral);color:#fff;font-size:11px;font-weight:900;line-height:18px;text-align:center;box-shadow:var(--shadow-sm)}.egg-slot:disabled{cursor:default;opacity:.85}.egg-slot.ready{animation:egg-pulse 1.2s ease-in-out infinite}.egg-hint{background:var(--sun);color:#5a3d00;font-weight:900;font-size:10px;padding:3px 8px;border-radius:999px;white-space:nowrap;box-shadow:var(--shadow-sm);animation:hint-bob 1.2s ease-in-out infinite}@keyframes hint-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-2px)}}.loop-guide{position:absolute;left:12px;right:12px;bottom:32px;z-index:2;background:#fffdf8f2;border:1px solid var(--line);border-radius:var(--radius-sm);padding:8px 10px;font-size:11px;font-weight:700;color:var(--ink);text-align:center;box-shadow:var(--shadow-sm)}.loop-guide b{color:var(--sage-deep)}@keyframes egg-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.15)}}.egg-reveal{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:radial-gradient(ellipse at center,#fff8e6f5,#fff8e6d9);z-index:3;animation:fade-in .3s ease-out}.egg-reveal .egg-art{font-size:64px;animation:egg-pop .6s ease-out}.egg-reveal .egg-3d{width:200px;height:240px;display:flex;align-items:center;justify-content:center;animation:fade-in .4s ease-out}.egg-reveal.q2 .egg-art{filter:drop-shadow(0 0 18px rgba(201,167,240,.9))}.egg-reveal.rare{background:radial-gradient(ellipse at center,#fff6d6f7,#ffebbee6)}.egg-reveal.rare .egg-art{filter:drop-shadow(0 0 22px rgba(255,196,74,.95))}.egg-reveal.rare .egg-label{color:#c98a17;text-shadow:0 1px 0 rgba(255,255,255,.6)}@keyframes egg-pop{0%{transform:scale(.4)}60%{transform:scale(1.2)}to{transform:scale(1)}}.egg-reveal .egg-label{font-family:var(--disp);font-weight:700;font-size:22px}.egg-reveal .egg-points{font-weight:900;color:var(--sage-deep);font-size:14px}.fact-card{background:linear-gradient(180deg,#fff6df,#fbefd0);border:1px solid var(--sun);border-radius:var(--radius-sm);padding:9px 12px;font-size:12px;color:#7a5d2c;font-weight:700}.care-row{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.care-btn{min-height:64px;background:var(--card);border:1px solid var(--line);border-radius:var(--radius-md);padding:8px 2px;text-align:center;box-shadow:var(--shadow-sm);cursor:pointer;font-family:var(--body);position:relative}.care-btn:active{transform:translateY(2px);box-shadow:none}.care-btn .icon{font-size:24px;display:block}.care-btn .label{font-size:10px;color:var(--muted);font-weight:700}.care-btn .level{display:block;height:4px;border-radius:2px;background:var(--line);margin:4px 6px 0;overflow:hidden}.care-btn .level i{display:block;height:100%;background:var(--grass)}.care-btn.cooldown:after{content:"방금 줬어요";position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#fffdf8eb;border-radius:var(--radius-md);font-size:11px;font-weight:800;color:var(--muted);animation:fade-in .15s ease-out}.care-btn.pulse{animation:btn-pulse 1.4s ease-in-out infinite;border-color:var(--sun)}@keyframes btn-pulse{0%,to{box-shadow:var(--shadow-sm)}50%{box-shadow:0 0 0 6px #ffb62759}}.overlay-backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:#2e26208c;display:flex;align-items:center;justify-content:center;z-index:10;animation:fade-in .2s ease-out}.overlay{width:calc(100% - 40px);max-width:340px;background:var(--card);border-radius:var(--radius-lg);padding:20px;box-shadow:var(--shadow);text-align:center}.overlay h2{font-family:var(--disp);font-weight:800;font-size:22px;margin:0 0 4px;background:linear-gradient(120deg,var(--sage-deep),var(--sun));-webkit-background-clip:text;background-clip:text;color:transparent}.tier-preview{display:flex;align-items:center;justify-content:center;gap:10px;margin:14px 0;font-weight:800;font-size:14px}.tier-chip{padding:14px 12px;border-radius:var(--radius-sm);color:#fff;font-family:var(--disp);font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.25);box-shadow:var(--shadow-sm)}.tier-chip.next{transform:scale(1.12)}.cost-bar{height:12px;border-radius:7px;background:var(--line);overflow:hidden;margin:6px 0 2px}.cost-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--sun-glow),var(--sun))}.cost-caption{font-size:12px;color:var(--muted);font-weight:700}.btn-primary{width:100%;margin-top:14px;min-height:48px;border:none;border-radius:15px;font-family:var(--body);font-weight:900;font-size:16px;color:#5a3d00;background:linear-gradient(180deg,var(--sun-glow),var(--sun));box-shadow:0 6px 18px #ffb62780,var(--shadow-sm);cursor:pointer}.btn-primary:disabled{opacity:.45;cursor:default;box-shadow:none}.btn-ghost{width:100%;margin-top:8px;min-height:44px;background:transparent;border:2px solid var(--line);border-radius:15px;font-family:var(--body);font-weight:800;color:var(--ink);cursor:pointer}.liberation-fx{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;display:flex;align-items:center;justify-content:center;pointer-events:none;animation:fade-out 1.4s ease-in forwards;background:radial-gradient(ellipse at center,rgba(255,230,150,.9),transparent 70%);font-size:40px}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-out{0%{opacity:1}70%{opacity:1}to{opacity:0}}.banner{background:#fdeeea;border:1px solid var(--coral);border-radius:var(--radius-sm);padding:8px 12px;font-size:12px;font-weight:700;color:#8a4433}.hen-rig{width:138px;height:auto;display:block;overflow:visible;transform:scaleX(var(--dir, 1));transition:transform .25s ease-out}.hen-walker[data-walking] .hen-rig{animation:rig-walk-hop .32s ease-in-out infinite}@keyframes rig-walk-hop{0%,to{transform:translateY(0) scaleX(var(--dir, 1))}50%{transform:translateY(-4px) scaleX(var(--dir, 1))}}.hen-rig .bone-root,.hen-rig .bone-body,.hen-rig .bone-head,.hen-rig .bone-tail,.hen-rig .bone-wing,.hen-rig .bone-eyelid,.hen-rig .rig-comb,.hen-rig .rig-eye{transform-box:fill-box}.hen-rig .bone-body{transform-origin:50% 100%;animation:rig-breathe 3.4s ease-in-out infinite}.hen-rig .bone-head{transform-origin:50% 95%;animation:rig-head-bob 3.4s ease-in-out infinite}.hen-rig .bone-tail{transform-origin:95% 65%;animation:rig-tail-wag 2.6s ease-in-out infinite}.hen-rig .bone-wing.wing-l{transform-origin:85% 10%}.hen-rig .bone-wing.wing-r{transform-origin:15% 10%}.hen-rig .bone-eyelid{transform-origin:50% 0%;transform:scaleY(0);animation:rig-blink 4.6s infinite}@keyframes rig-breathe{0%,to{transform:scaleY(1)}50%{transform:scaleY(1.035)}}@keyframes rig-head-bob{0%,to{transform:rotate(0)}50%{transform:rotate(-3deg)}}@keyframes rig-tail-wag{0%,to{transform:rotate(-4deg)}50%{transform:rotate(5deg)}}@keyframes rig-blink{0%,91%,97%,to{transform:scaleY(0)}94%{transform:scaleY(1)}}.hen.bounce .bone-wing.wing-l{animation:rig-flap-l .5s ease-out}.hen.bounce .bone-wing.wing-r{animation:rig-flap-r .5s ease-out}@keyframes rig-flap-l{0%,to{transform:rotate(0)}30%{transform:rotate(-35deg)}60%{transform:rotate(8deg)}}@keyframes rig-flap-r{0%,to{transform:rotate(0)}30%{transform:rotate(35deg)}60%{transform:rotate(-8deg)}}.hen-rig[data-expression=hungry] .bone-head{animation:rig-peck 1.7s ease-in-out infinite}@keyframes rig-peck{0%,55%,to{transform:translateY(2px) rotate(4deg)}68%{transform:translateY(9px) rotate(10deg)}78%{transform:translateY(4px) rotate(6deg)}86%{transform:translateY(8px) rotate(9deg)}}.hen-rig[data-expression=anxious] .bone-root{animation:rig-tremble .4s linear infinite}.hen-rig[data-expression=anxious] .rig-eye{transform-origin:center;transform:scale(1.18)}@keyframes rig-tremble{0%,to{transform:translate(0)}25%{transform:translate(-1px)}75%{transform:translate(1px)}}.hen-rig[data-expression=sick] .bone-head{animation:none;transform:translateY(5px) rotate(7deg)}.hen-rig[data-expression=sick] .bone-eyelid{animation:none;transform:scaleY(.6)}.hen-rig[data-expression=sick] .bone-tail{animation:none;transform:rotate(-10deg)}.hen-rig[data-expression=sick] .bone-body{animation-duration:5.5s}.hen-rig[data-expression=sick] .rig-comb{transform-origin:20% 100%;transform:rotate(9deg)}@media (prefers-reduced-motion: reduce){.hen.bounce,.egg-slot.ready,.care-btn.pulse,.egg-reveal .egg-art,.hen-rig .bone-body,.hen-rig .bone-head,.hen-rig .bone-tail,.hen-rig .bone-eyelid,.hen.bounce .bone-wing.wing-l,.hen.bounce .bone-wing.wing-r,.hen-rig[data-expression=hungry] .bone-head,.hen-rig[data-expression=anxious] .bone-root,.hen-walker[data-walking] .hen-rig,.hen-walker[data-bathing] .hen-rig,.hen-walker[data-foraging] .hen-rig .bone-head,.bath-dust,.bath-dust:before,.bath-dust:after,.forage-peck,.forage-peck:before,.forage-peck:after,.range-sun-core,.pasture-sun-core,.pasture-flowers,.barn-feather{animation:none}.hen-walker{transition:none}}
