:root{
  --ink:#17323a;
  --ink-soft:#536b70;
  --paper:#fffaf0;
  --cream:#fff1ce;
  --yellow:#ffc83d;
  --orange:#f68a36;
  --red:#e84d43;
  --green:#42a764;
  --green-deep:#257448;
  --blue:#4e9fd8;
  --purple:#8363c7;
  --line:#d8d4c8;
  --shadow:0 12px 30px rgba(26,51,58,.16);
  --hard-shadow:0 6px 0 rgba(54,48,38,.18);
  font-family:ui-rounded,"Pretendard","Noto Sans KR","Apple SD Gothic Neo",system-ui,sans-serif;
  color:var(--ink);
  background:#d9f1ee;
  font-synthesis:none;
}
*{box-sizing:border-box}
html{min-height:100%;background:#d9f1ee}
body{margin:0;min-height:100vh;background:linear-gradient(#bfe6ee,#eaf6e7 72%);overflow-x:hidden}
button,input{font:inherit}
button{cursor:pointer;-webkit-tap-highlight-color:transparent}
button:disabled{cursor:not-allowed;filter:saturate(.55);opacity:.55}
.hidden{display:none!important}

/* AUTH */
.auth-view{min-height:100vh;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);overflow:hidden;background:#bde3eb}
.auth-world{position:relative;min-height:100vh;overflow:hidden;background:linear-gradient(#7ed3ef 0 53%,#6fc761 53% 100%)}
.auth-world:after{content:"";position:absolute;left:-10%;right:-10%;bottom:-95px;height:260px;border-radius:50% 50% 0 0;background:repeating-linear-gradient(90deg,#e3b56a 0 28px,#cd9951 28px 56px);transform:rotate(-2deg);box-shadow:0 -12px 0 #78b85b}
.auth-sun{position:absolute;left:10%;top:10%;width:116px;height:116px;border-radius:50%;background:#ffe970;box-shadow:0 0 0 18px #fff3a64a,0 0 80px #fff8b8;animation:sunPulse 3s ease-in-out infinite}
.auth-cloud,.world-cloud{position:absolute;width:130px;height:38px;border-radius:999px;background:#fff;filter:drop-shadow(0 5px 0 rgba(46,114,135,.10));opacity:.94}
.auth-cloud:before,.auth-cloud:after,.world-cloud:before,.world-cloud:after{content:"";position:absolute;bottom:8px;border-radius:50%;background:inherit}
.auth-cloud:before,.world-cloud:before{left:22px;width:51px;height:51px}
.auth-cloud:after,.world-cloud:after{right:18px;width:66px;height:66px}
.cloud-a{left:33%;top:13%;animation:cloudFloat 18s linear infinite}
.cloud-b{left:70%;top:27%;transform:scale(.72);animation:cloudFloat 22s linear infinite reverse}
.auth-hill{position:absolute;border-radius:50% 50% 0 0}
.hill-back{left:-15%;right:20%;bottom:34%;height:260px;background:#58ae5a;transform:rotate(4deg)}
.hill-front{left:23%;right:-22%;bottom:27%;height:320px;background:#3f9653;transform:rotate(-5deg)}
.auth-barn{position:absolute;left:9%;bottom:20%;z-index:3;width:250px;height:202px;border:9px solid #5d362d;border-radius:10px 10px 6px 6px;background:#cf4e41;box-shadow:0 18px 0 #2c653d55}
.auth-barn-roof{position:absolute;left:-35px;top:-92px;width:302px;height:103px;background:#6b3932;clip-path:polygon(50% 0,100% 100%,0 100%);filter:drop-shadow(0 8px 0 #4c2c28)}
.auth-barn-door{position:absolute;left:50%;bottom:0;width:96px;height:130px;transform:translateX(-50%);border:7px solid #f0d19b;border-bottom:0;background:linear-gradient(90deg,#804136 49%,#5e302c 50%);box-shadow:inset 0 0 0 5px #632f2c}
.auth-barn-door:after{content:"X";position:absolute;inset:4px;display:grid;place-items:center;color:#e9c991;font-size:77px;font-weight:200}
.auth-barn-window{position:absolute;left:25px;top:48px;width:50px;height:50px;border:6px solid #f0d19b;background:#78caed;box-shadow:inset 0 0 0 3px #fff8}
.auth-chicken-wrap{position:absolute;right:3%;bottom:4%;z-index:5;width:min(50vw,500px);height:min(66vw,610px);display:grid;place-items:end center;animation:heroFloat 2.8s ease-in-out infinite}
.auth-chicken{width:100%;max-height:100%;overflow:visible;filter:drop-shadow(0 25px 18px rgba(25,54,45,.26))}
.auth-impact{position:absolute;right:4%;top:8%;padding:10px 16px;color:#fff;background:#ec5549;border:5px solid #4d3a2f;border-radius:15px;box-shadow:6px 7px 0 #4d3a2f;transform:rotate(8deg);font-weight:1000;font-size:clamp(1rem,2vw,1.8rem);letter-spacing:.04em;animation:impactPop 1.5s ease-in-out infinite}
.auth-card{position:relative;z-index:10;align-self:center;width:min(520px,calc(100% - 40px));margin:auto;padding:42px;border:2px solid #fff;background:rgba(255,251,239,.95);border-radius:32px;box-shadow:0 28px 75px rgba(32,70,75,.22);backdrop-filter:blur(14px)}
.eyebrow,.panel-kicker{font-weight:1000;letter-spacing:.16em;color:#2b8752;font-size:.68rem}
.auth-card h1{margin:8px 0 9px;font-size:clamp(2.4rem,5vw,4rem);line-height:.95;letter-spacing:-.07em}
.auth-card h1 span{color:#ed5145;text-shadow:0 4px 0 #f8c46d}
.auth-card>p{margin:0;color:#65777a;line-height:1.7;font-size:.9rem;font-weight:700}
.auth-tabs{display:grid;grid-template-columns:1fr 1fr;margin:27px 0 18px;padding:5px;border-radius:15px;background:#e9e5d9}
.auth-tab{min-height:44px;border:0;border-radius:11px;background:transparent;color:#7a7b72;font-weight:900}
.auth-tab.active{background:#fff;color:#244f42;box-shadow:0 5px 13px #3e52491c}
.auth-form{display:grid;gap:13px}
.auth-form label{display:grid;gap:6px;color:#48615e;font-weight:900;font-size:.73rem}
.auth-form input{width:100%;min-height:50px;padding:0 15px;border:2px solid #dbd8ca;border-radius:13px;background:#fff;color:#17323a;outline:none;transition:.2s}
.auth-form input:focus{border-color:#4ca96a;box-shadow:0 0 0 4px #4ca96a1f}
.auth-submit{min-height:55px;margin-top:3px;border:0;border-radius:14px;color:#fff;background:linear-gradient(180deg,#ef6a4b,#db403a);box-shadow:0 6px 0 #9e322f,0 11px 24px #d84c4138;font-weight:1000;font-size:.92rem;transition:transform .12s,box-shadow .12s}
.auth-submit:hover{transform:translateY(-2px);box-shadow:0 8px 0 #9e322f,0 15px 28px #d84c4140}
.auth-submit:active{transform:translateY(5px);box-shadow:0 1px 0 #9e322f}
.auth-submit b{float:right;font-size:1.1rem}
.auth-message{min-height:20px!important;margin:12px 0 0!important;color:#bd3d36!important;text-align:center;font-size:.75rem!important}
.auth-rule{display:flex;justify-content:center;gap:16px;margin-top:13px;color:#8b918b;font-size:.63rem;font-weight:800}
.auth-rule span:before{content:"✓";margin-right:5px;color:#36985b}

/* GAME SHELL */
.game-view{min-height:100vh;padding:12px 12px 22px;background:linear-gradient(#b7e6ef,#e7f5df);overflow-x:hidden}
.hud-top{position:relative;z-index:50;display:grid;grid-template-columns:minmax(215px,1fr) minmax(380px,1.5fr) minmax(105px,1fr);align-items:center;gap:12px;width:min(1420px,100%);margin:0 auto 10px}
.profile-chip{justify-self:start;display:flex;align-items:center;gap:10px;max-width:100%;min-height:58px;padding:6px 13px 6px 7px;border:2px solid #fff;border-radius:18px;background:rgba(255,255,255,.88);box-shadow:0 7px 20px #32656f26;color:var(--ink);text-align:left}
.profile-avatar{display:grid;place-items:center;width:43px;height:43px;border-radius:13px;background:linear-gradient(#ffe887,#ffb33e);border:2px solid #a8792f;font-size:1.45rem;box-shadow:inset 0 3px 0 #fff9}
.profile-chip b,.profile-chip small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.profile-chip b{font-size:.83rem}.profile-chip small{max-width:170px;margin-top:2px;color:#718184;font-size:.62rem;font-weight:800}
.resource-hud{justify-self:center;display:flex;gap:7px;min-width:0;padding:6px;border:2px solid #fff;border-radius:21px;background:rgba(22,57,65,.90);box-shadow:0 9px 22px #234b5340;backdrop-filter:blur(8px)}
.hud-pill{display:flex;align-items:center;gap:7px;min-width:116px;padding:4px 13px 4px 5px;border-right:1px solid #ffffff25;color:#fff}
.hud-pill:last-child{border-right:0}.hud-icon{display:grid;place-items:center;width:37px;height:37px;border-radius:12px;color:#6f4a0b;background:linear-gradient(#ffe36b,#f4a82d);border:2px solid #ffeea7;box-shadow:0 3px 0 #9d6f22;font-weight:1000}
.feed-icon{color:#fff;background:linear-gradient(#6bc66e,#339b55);border-color:#a4e594;box-shadow:0 3px 0 #216b3b}.egg-icon{color:#a66d22;background:linear-gradient(#fffdf1,#f2dca8);border-color:#fff;box-shadow:0 3px 0 #ae8b51}
.hud-pill small,.hud-pill b{display:block;white-space:nowrap}.hud-pill small{color:#b9d3d5;font-size:.55rem;font-weight:850}.hud-pill b{margin-top:1px;font-size:.82rem;letter-spacing:-.02em}
.hud-actions{justify-self:end;display:flex;gap:7px}.round-button{display:grid;place-items:center;width:48px;height:48px;border:2px solid #fff;border-radius:16px;background:rgba(255,255,255,.89);box-shadow:0 6px 15px #32656f26;font-size:1.1rem}.logout-button{color:#fff;background:#e75a4c;border-color:#ffb3a9;font-weight:1000}

/* FARM WORLD */
.farm-world{position:relative;width:min(1420px,100%);height:clamp(480px,58vh,690px);margin:auto;overflow:hidden;border:4px solid #fff;border-radius:28px;background:linear-gradient(#74cdeb 0 50%,#75bd55 50% 100%);box-shadow:0 17px 42px rgba(34,77,79,.25),inset 0 0 0 2px #2d6b7240;isolation:isolate}
.farm-world:after{content:"";position:absolute;inset:0;z-index:40;pointer-events:none;border-radius:24px;box-shadow:inset 0 -50px 70px #274b2638,inset 0 50px 70px #ffffff19}
.sky-layer{position:absolute;inset:0 0 45%;overflow:hidden;background:linear-gradient(#5fc1e8,#a8e5ee);z-index:-10}
.world-sun{position:absolute;right:12%;top:13%;width:86px;height:86px;border-radius:50%;background:#ffeb70;box-shadow:0 0 0 14px #fff4a73e,0 0 55px #fff6a2}
.wc1{left:8%;top:19%;animation:worldCloud 31s linear infinite}.wc2{left:46%;top:10%;transform:scale(.7);animation:worldCloud 43s linear infinite reverse}.wc3{left:73%;top:29%;transform:scale(.48);animation:worldCloud 34s linear infinite}
.mountain-layer{position:absolute;z-index:-8;bottom:42%;width:70%;height:37%;border-radius:50% 50% 0 0;filter:drop-shadow(0 -5px 0 rgba(255,255,255,.10))}
.mountain-one{left:-18%;background:#66ad59;transform:rotate(5deg)}
.mountain-two{right:-19%;background:#3e9656;transform:rotate(-6deg)}
.field-stripe{position:absolute;z-index:-7;left:-8%;right:-8%;height:105px;border-radius:50%;transform:rotate(-2deg)}
.stripe-one{bottom:32%;background:#8fd35f;box-shadow:0 12px 0 #65b34c}.stripe-two{bottom:20%;background:#5ba84c;transform:rotate(3deg);box-shadow:0 12px 0 #448b42}
.ground-layer{position:absolute;z-index:-3;left:-5%;right:-5%;bottom:-17%;height:47%;border-radius:45% 45% 0 0;background:repeating-linear-gradient(100deg,#79bd4d 0 22px,#72b548 22px 44px);box-shadow:inset 0 16px 0 #9ad26a}
.dirt-path{position:absolute;z-index:-2;left:41%;bottom:-13%;width:34%;height:58%;border-radius:46% 46% 0 0;background:repeating-linear-gradient(120deg,#d6a05c 0 26px,#c68e4d 26px 52px);transform:perspective(480px) rotateX(20deg);box-shadow:inset 0 10px 0 #e9be7d}
.fence-line{position:absolute;z-index:0;left:-2%;right:-2%;bottom:25%;height:44px;border-top:11px solid #f4dfb2;border-bottom:11px solid #f4dfb2;box-shadow:0 7px 0 #947546;opacity:.92}
.fence-line:before{content:"";position:absolute;left:5%;right:5%;top:-35px;height:85px;background:repeating-linear-gradient(90deg,transparent 0 92px,#f4dfb2 92px 109px,transparent 109px 168px);filter:drop-shadow(4px 5px 0 #947546)}
.farm-building{position:absolute;z-index:1;left:8%;bottom:26%;width:245px;height:172px;filter:drop-shadow(0 18px 0 #31593b48);transform-origin:bottom left;transition:transform .4s}
.building-face{position:absolute;inset:0;border:7px solid #663931;border-radius:8px;background:repeating-linear-gradient(90deg,#c94d43 0 34px,#b6423a 34px 38px);box-shadow:inset 0 0 0 4px #e86a59}
.building-roof{position:absolute;z-index:2;left:-30px;top:-78px;width:305px;height:85px;background:#693a35;clip-path:polygon(50% 0,100% 100%,0 100%);filter:drop-shadow(0 8px 0 #4e2c29)}
.building-loft{position:absolute;z-index:3;left:92px;top:17px;width:62px;height:47px;border:6px solid #f1cf91;background:#81c9e7;box-shadow:inset 0 0 0 3px #fff8}
.building-loft:after{content:"";position:absolute;left:50%;top:0;bottom:0;border-left:4px solid #f1cf91}.building-door{position:absolute;z-index:3;bottom:0;width:61px;height:87px;border:6px solid #f1cf91;border-bottom:0;background:#743a33}.building-door.left{left:49px}.building-door.right{right:49px}.building-sign{position:absolute;z-index:4;left:50%;top:-30px;transform:translateX(-50%);padding:5px 13px;border:4px solid #5d392d;border-radius:8px;color:#5d392d;background:#ffdf79;box-shadow:0 4px 0 #5d392d;font-size:.62rem;font-weight:1000;letter-spacing:.12em}
.silo{position:absolute;z-index:0;left:28%;bottom:27%;width:76px;height:151px;border:6px solid #60757a;border-radius:32px 32px 7px 7px;background:repeating-linear-gradient(#d7e0db 0 19px,#bac8c5 19px 23px);box-shadow:9px 12px 0 #31593b3b}.silo:before{content:"";position:absolute;left:-9px;top:-30px;width:82px;height:43px;border:6px solid #60757a;border-radius:50%;background:#e7eeeb}.silo span{position:absolute;left:50%;top:34px;bottom:-17px;width:7px;background:#798b8c;box-shadow:-23px 0 0 #798b8c,23px 0 0 #798b8c}
.windmill{position:absolute;z-index:-1;right:9%;bottom:31%;width:135px;height:195px}.windmill-tower{position:absolute;left:50%;bottom:0;width:66px;height:150px;transform:translateX(-50%);clip-path:polygon(35% 0,65% 0,100% 100%,0 100%);background:repeating-linear-gradient(90deg,#e7d7bd 0 13px,#a98661 13px 17px);border-bottom:8px solid #735d45}.windmill-blades{position:absolute;left:50%;top:29px;width:124px;height:124px;transform:translate(-50%,-50%);animation:spin 8s linear infinite}.windmill-blades:before{content:"";position:absolute;left:50%;top:50%;z-index:3;width:24px;height:24px;border:5px solid #72543f;border-radius:50%;background:#efbd4e;transform:translate(-50%,-50%)}.windmill-blades i{position:absolute;left:55px;top:1px;width:15px;height:58px;border:4px solid #72543f;background:repeating-linear-gradient(#f1e1c2 0 9px,#a48661 9px 12px);transform-origin:50% 61px}.windmill-blades i:nth-child(2){transform:rotate(90deg)}.windmill-blades i:nth-child(3){transform:rotate(180deg)}.windmill-blades i:nth-child(4){transform:rotate(270deg)}
.farm-level-2 .farm-building{transform:scale(1.06)}.farm-level-3 .farm-building{transform:scale(1.12)}.farm-level-4 .farm-building{transform:scale(1.18)}.farm-level-5 .farm-building{transform:scale(1.24);filter:drop-shadow(0 18px 0 #31593b48) drop-shadow(0 0 18px #ffe36f)}
.scene-status{position:absolute;z-index:30;left:18px;top:18px;display:flex;align-items:center;gap:7px}.market-chip{display:flex;align-items:center;gap:10px;max-width:430px;padding:9px 13px 9px 8px;border:2px solid #fff;border-radius:16px;background:rgba(22,57,65,.88);box-shadow:0 8px 22px #1f4d5544;color:#fff;backdrop-filter:blur(8px)}.status-icon{display:grid;place-items:center;width:39px;height:39px;border-radius:11px;background:#fff0c5;font-size:1.15rem}.market-chip small,.market-chip b,.market-chip em{display:block}.market-chip small{color:#a6c9cc;font-size:.53rem;font-weight:850}.market-chip b{font-size:.78rem}.market-chip em{max-width:300px;margin-top:1px;color:#d6e8e9;font-size:.56rem;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.scene-refresh{min-height:43px;padding:0 13px;border:2px solid #fff;border-radius:14px;color:#285f53;background:#eaffd4;box-shadow:0 5px 0 #5e9f66;font-weight:950;font-size:.67rem}

.chicken-field{position:absolute;z-index:10;left:30%;right:5%;top:29%;bottom:13%;pointer-events:none}.roaming-chicken{position:absolute;left:var(--x);bottom:var(--y);width:clamp(92px,9vw,145px);height:clamp(118px,12vw,178px);border:0;background:transparent;pointer-events:auto;filter:drop-shadow(0 13px 7px rgba(27,58,34,.25));transform-origin:50% 100%;animation:chickenBob var(--bob,1.7s) ease-in-out infinite,roam var(--walk,13s) ease-in-out infinite alternate;transition:filter .2s}.roaming-chicken:nth-child(even){animation-direction:alternate-reverse}.roaming-chicken:hover,.roaming-chicken.selected{filter:drop-shadow(0 0 4px #fff) drop-shadow(0 0 13px #ffe15e) drop-shadow(0 13px 7px rgba(27,58,34,.25))}.roaming-chicken.selected:before{content:"";position:absolute;left:50%;bottom:-4px;width:85%;height:19px;border:4px solid #ffe26c;border-radius:50%;background:#fff7ab42;transform:translateX(-50%);animation:selectedRing 1.2s ease-in-out infinite}.roaming-chicken.hop{animation:chickenHop .55s ease-out!important}.roaming-chicken .scene-name{position:absolute;left:50%;top:-11px;z-index:5;min-width:78px;padding:4px 8px;border:2px solid #fff;border-radius:999px;color:#fff;background:#183d45df;box-shadow:0 4px 8px #17363d3d;transform:translateX(-50%);font-size:.55rem;font-weight:1000;white-space:nowrap}.roaming-chicken .scene-level{position:absolute;right:2px;top:16px;z-index:5;display:grid;place-items:center;width:32px;height:32px;border:3px solid #fff;border-radius:50%;color:#604316;background:#ffd75c;box-shadow:0 3px 0 #98722d;font-size:.52rem;font-weight:1000}.roaming-chicken svg{width:100%;height:100%;overflow:visible}.roaming-chicken[data-facing="left"] svg{transform:scaleX(-1)}
.chicken-svg .chicken-body,.chicken-svg .chicken-wing,.chicken-svg .chicken-leg,.chicken-svg .muscle-line{transform-box:fill-box;transform-origin:center;transition:.3s}.chicken-svg .muscle-line,.chicken-svg .vein-line{opacity:0}.chicken-svg.stage-2 .chicken-body{transform:scale(1.04)}.chicken-svg.stage-2 .muscle-line{opacity:.35}.chicken-svg.stage-3 .chicken-body{transform:scale(1.08,1.05)}.chicken-svg.stage-3 .chicken-wing{transform:scale(1.13) rotate(-5deg)}.chicken-svg.stage-3 .muscle-line{opacity:.7}.chicken-svg.stage-4 .chicken-body{transform:scale(1.13,1.08)}.chicken-svg.stage-4 .chicken-wing{transform:scale(1.24) rotate(-8deg)}.chicken-svg.stage-4 .muscle-line,.chicken-svg.stage-4 .vein-line{opacity:.88}.chicken-svg.stage-5 .chicken-body{transform:scale(1.19,1.12)}.chicken-svg.stage-5 .chicken-wing{transform:scale(1.34) rotate(-10deg)}.chicken-svg.stage-5 .muscle-line,.chicken-svg.stage-5 .vein-line{opacity:1}.chicken-svg.stage-5{filter:drop-shadow(0 0 10px #ffe26e)}
.scene-effects{position:absolute;inset:0;z-index:35;pointer-events:none;overflow:hidden}.fx-coin,.fx-egg,.fx-star,.fx-heart,.fx-text{position:absolute;left:var(--left,50%);top:var(--top,50%);font-size:var(--size,1.5rem);font-weight:1000;animation:fxBurst 1.15s ease-out forwards}.fx-coin{display:grid;place-items:center;width:34px;height:34px;border:4px solid #a76a1c;border-radius:50%;color:#8a5515;background:#ffd954;box-shadow:inset 0 3px 0 #fff8}.fx-text{color:#fff;text-shadow:0 3px 0 #2b4b3e,0 0 8px #2b4b3e;font-size:1rem}.fx-heart{color:#f35658}.fx-star{color:#ffe34f}.fx-egg{filter:drop-shadow(0 3px 0 #6f5b3f)}
.selected-chicken-card{position:absolute;z-index:32;left:50%;bottom:14px;display:grid;grid-template-columns:56px minmax(130px,1fr) 105px auto;align-items:center;gap:9px;width:min(535px,calc(100% - 34px));min-height:70px;padding:7px 12px 7px 7px;border:3px solid #fff;border-radius:20px;color:#fff;background:rgba(18,54,61,.92);box-shadow:0 12px 25px #17394050;transform:translateX(-50%);backdrop-filter:blur(10px);text-align:left}.selected-mini-avatar{display:grid;place-items:center;width:54px;height:54px;border:3px solid #fff;border-radius:16px;background:linear-gradient(#ffe67a,#f29f31);font-size:1.7rem}.selected-copy small,.selected-copy b,.selected-copy em{display:block}.selected-copy small{color:#a9c9cc;font-size:.52rem;font-weight:900}.selected-copy b{font-size:.84rem}.selected-copy em{margin-top:2px;color:#fff1a8;font-size:.56rem;font-style:normal;font-weight:850}.selected-progress{height:10px;border-radius:99px;background:#ffffff24;overflow:hidden}.selected-progress i{display:block;height:100%;width:0;border-radius:inherit;background:linear-gradient(90deg,#5dd077,#ffe052);transition:width .4s}.selected-arrow{color:#ffe778;font-size:.68rem;font-weight:1000;white-space:nowrap}.world-tip{position:absolute;z-index:31;left:18px;bottom:18px;padding:7px 10px;border:2px solid #fff;border-radius:12px;color:#345e46;background:#f8ffd9dc;box-shadow:0 5px 0 #6e9d56;font-size:.57rem;font-weight:900;animation:tipBounce 2s ease-in-out infinite}

/* BOTTOM PANELS */
.panel-dock{position:relative;z-index:45;width:min(1420px,100%);margin:-2px auto 0;padding-top:68px}.bottom-nav{position:absolute;z-index:5;left:50%;top:0;display:grid;grid-template-columns:repeat(4,1fr);width:min(570px,calc(100% - 20px));padding:7px;border:3px solid #fff;border-radius:24px 24px 15px 15px;background:#173b43;box-shadow:0 10px 25px #173b4347;transform:translateX(-50%)}.nav-button{position:relative;display:grid;place-items:center;gap:2px;min-height:55px;border:0;border-radius:15px;color:#a8c4c7;background:transparent;transition:.18s}.nav-button span{font-size:1.25rem;filter:grayscale(.45)}.nav-button b{font-size:.58rem}.nav-button.active{color:#2f5848;background:linear-gradient(#fff4b0,#ffd35c);box-shadow:0 4px 0 #9d772a;transform:translateY(-2px)}.nav-button.active span{filter:none;transform:scale(1.12)}.nav-button i{position:absolute;right:20%;top:5px;display:grid;place-items:center;min-width:18px;height:18px;padding:0 4px;border:2px solid #fff;border-radius:999px;color:#fff;background:#e94c43;font-size:.48rem;font-style:normal;font-weight:1000}.nav-button i:empty{display:none}.nav-button .ready-dot{right:28%;top:7px;min-width:11px;width:11px;height:11px;padding:0;border-width:2px;background:#64d96c;box-shadow:0 0 0 3px #64d96c42;animation:readyPulse 1.2s infinite}
.panel-stack{position:relative}.game-panel{display:none;min-height:350px;padding:25px 24px 28px;border:3px solid #fff;border-radius:25px;background:rgba(255,251,239,.97);box-shadow:0 15px 38px #31596126}.game-panel.active{display:block;animation:panelIn .28s ease-out}.panel-heading{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-bottom:18px}.panel-heading h2{margin:2px 0 0;font-size:1.35rem;letter-spacing:-.05em}.capacity-chip{padding:7px 10px;border:2px solid #c8d6cb;border-radius:999px;color:#456657;background:#eef8e9;font-size:.62rem;font-weight:1000}.capacity-chip.gold{color:#775314;border-color:#e9cc7f;background:#fff3c7}.capacity-chip.purple{color:#65408c;border-color:#ceb7e4;background:#f3e7ff}
.chicken-roster{display:flex;gap:10px;margin:0 -2px 17px;padding:2px 2px 10px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin}.roster-card{flex:0 0 180px;display:grid;grid-template-columns:65px 1fr;gap:8px;align-items:center;min-height:91px;padding:9px;border:2px solid #dedbcf;border-radius:17px;background:#fff;box-shadow:0 5px 0 #d3cec0;text-align:left;scroll-snap-align:start}.roster-card.selected{border-color:#e7b638;background:#fff9d9;box-shadow:0 5px 0 #bd8e28}.roster-avatar{position:relative;display:grid;place-items:center;height:70px;border-radius:13px;background:linear-gradient(#9dddff 0 54%,#87c964 54%);overflow:hidden}.roster-avatar svg{width:63px;height:72px;filter:drop-shadow(0 7px 4px #32513e4a)}.roster-copy b,.roster-copy small,.roster-copy em{display:block}.roster-copy b{font-size:.75rem}.roster-copy small{margin-top:2px;color:#738179;font-size:.53rem;font-weight:850}.roster-copy em{margin-top:6px;padding:3px 5px;border-radius:7px;color:#5f5124;background:#fff0aa;font-size:.49rem;font-style:normal;font-weight:950}.action-card-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:11px}.action-card{display:grid;grid-template-columns:76px 1fr;grid-template-rows:auto auto;gap:10px;padding:14px;border:2px solid #dfddd2;border-radius:19px;background:#fff;box-shadow:0 6px 0 #d5d1c5}.action-art{grid-row:1/3;align-self:center;display:grid;place-items:center;width:72px;height:72px;border:3px solid #fff;border-radius:19px;box-shadow:0 5px 0 #a68235;font-size:2rem}.feed-sack{position:relative;color:#75531e;background:linear-gradient(#ffd662,#e8a62f);font-size:.58rem;font-weight:1000}.feed-sack:before{content:"";position:absolute;top:9px;width:45px;height:9px;border:3px solid #7b5723;border-radius:50%;background:#f9e496}.feed-sack:after{content:"🌽";position:absolute;font-size:1.6rem;top:27px}.feed-sack span{position:absolute;bottom:5px}.chick-crate{background:linear-gradient(#ffea96,#efb64b)}.blueprint{color:#fff;background:linear-gradient(#70b9e5,#3989c7);box-shadow:0 5px 0 #28658f;font-size:2.2rem}.action-copy{min-width:0}.action-copy small{color:#7b8b83;font-size:.53rem;font-weight:950}.action-copy h3{margin:2px 0 4px;font-size:.86rem}.action-copy p{margin:0;color:#71807b;font-size:.57rem;line-height:1.45;font-weight:700}.dual-actions{grid-column:2;display:grid;grid-template-columns:1fr 1fr;gap:6px}.game-button{min-height:39px;padding:0 10px;border:2px solid #fff;border-radius:12px;color:#fff;box-shadow:0 4px 0 #684b25;font-size:.61rem;font-weight:1000;text-shadow:0 1px 0 #0003;transition:.1s}.game-button:active:not(:disabled){transform:translateY(4px);box-shadow:0 0 0 transparent}.game-button span,.game-button b{display:block}.game-button span{font-size:.49rem;opacity:.86}.game-button.yellow{color:#634515;background:linear-gradient(#ffe66f,#f1b834);box-shadow:0 4px 0 #a77825;text-shadow:none}.game-button.orange{background:linear-gradient(#ffa14d,#df6433);box-shadow:0 4px 0 #933b2c}.game-button.green{background:linear-gradient(#64cb75,#339954);box-shadow:0 4px 0 #226c3d}.game-button.blue{background:linear-gradient(#65bae8,#3686c2);box-shadow:0 4px 0 #275f89}.game-button.wide{grid-column:2;width:100%}
.market-summary{display:grid;grid-template-columns:1fr 1fr 2fr;align-items:center;gap:13px;margin-bottom:14px;padding:14px;border:2px solid #e0d7bd;border-radius:17px;background:linear-gradient(100deg,#fff6d8,#fffdf4)}.market-summary small,.market-summary b{display:block}.market-summary small{color:#897a5d;font-size:.55rem;font-weight:900}.market-summary b{margin-top:2px;color:#5f471f;font-size:.85rem}.warehouse-meter{height:13px;border:3px solid #78694e;border-radius:999px;background:#d9d0bc;overflow:hidden}.warehouse-meter i{display:block;height:100%;width:0;background:linear-gradient(90deg,#61bd61,#ffd657,#ed6546);transition:width .4s}.egg-market-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.egg-market-card{position:relative;display:grid;align-content:start;min-height:218px;padding:14px;border:2px solid #ddd8ca;border-radius:19px;background:#fff;box-shadow:0 6px 0 #d1ccbf;overflow:hidden}.egg-market-card:before{content:"";position:absolute;left:-20%;right:-20%;top:-47px;height:125px;border-radius:50%;background:var(--egg-bg,#f1eee2)}.egg-market-card.rainbow{--egg-bg:linear-gradient(90deg,#f5b6ca,#f8da8c,#b9e5bc,#b9ccef)}.egg-market-card.golden{--egg-bg:linear-gradient(90deg,#ffe676,#f0b72b);box-shadow:0 6px 0 #c3942f,0 0 22px #ffd94e4d}.market-egg-art{position:relative;z-index:1;display:grid;place-items:center;width:76px;height:90px;margin:0 auto 9px}.egg-shape{display:grid;place-items:center;width:62px;height:78px;border:4px solid #8d7554;border-radius:50% 50% 47% 47%;background:linear-gradient(145deg,#fff,#e5d4b4);box-shadow:inset -9px -11px 0 #c9b48d40,0 8px 0 #765c3430;font-size:1.55rem}.large .egg-shape{transform:scale(1.07);background:linear-gradient(145deg,#fff7d4,#deb764)}.fertile .egg-shape{background:linear-gradient(145deg,#f0dfbd,#ac7a4c)}.rainbow .egg-shape{background:linear-gradient(140deg,#ffb7c1,#ffe878 34%,#afe2b6 65%,#acbfff)}.golden .egg-shape{background:linear-gradient(140deg,#fff79b,#e2a31f);box-shadow:inset -9px -11px 0 #9d681c36,0 0 15px #ffd43f}.egg-market-card h3{margin:0;text-align:center;font-size:.8rem}.egg-owned{text-align:center;color:#6a7a75;font-size:.57rem;font-weight:850}.egg-price{display:flex;justify-content:center;align-items:center;gap:5px;margin:10px 0 4px;color:#5e4626;font-size:.75rem;font-weight:1000}.price-change{display:block;text-align:center;font-size:.53rem;font-weight:950}.price-change.up{color:#d14b3f}.price-change.down{color:#3e80b5}.sell-button{align-self:end;min-height:39px;margin-top:10px;border:2px solid #fff;border-radius:12px;color:#fff;background:linear-gradient(#f5a448,#d36a2f);box-shadow:0 4px 0 #8a4725;font-size:.6rem;font-weight:1000}
.tiny-button{min-height:35px;padding:0 11px;border:2px solid #d5d7cc;border-radius:11px;color:#53665d;background:#fff;font-size:.6rem;font-weight:950}.training-layout{display:grid;grid-template-columns:minmax(260px,.85fr) minmax(310px,1.15fr);gap:15px}.training-hero{position:relative;min-height:260px;display:grid;place-items:center;overflow:hidden;border:3px solid #fff;border-radius:22px;background:linear-gradient(#79cff1 0 55%,#77bd55 55%);box-shadow:0 6px 0 #c5c1b6}.training-burst{position:absolute;width:310px;height:310px;background:repeating-conic-gradient(#ffe777 0 11deg,transparent 11deg 23deg);opacity:.6;animation:slowSpin 18s linear infinite}.training-chicken{position:relative;z-index:2;width:190px;height:220px;filter:drop-shadow(0 16px 10px #2c573942)}.training-chicken svg{width:100%;height:100%;overflow:visible}.training-level{position:absolute;z-index:3;left:12px;right:12px;bottom:10px;display:grid;grid-template-columns:1fr auto;align-items:end;padding:8px 10px;border:2px solid #fff;border-radius:13px;color:#fff;background:#173c45d9;backdrop-filter:blur(6px)}.training-level span,.training-level b{display:block}.training-level span{grid-column:1;color:#b8d6d8;font-size:.53rem;font-weight:900}.training-level b{font-size:.86rem}.training-level small{grid-row:1/3;grid-column:2;color:#ffe570;font-weight:1000}.training-info{padding:17px;border:2px solid #ddd9cc;border-radius:20px;background:#fff;box-shadow:0 6px 0 #d0ccc0}.xp-line{display:flex;justify-content:space-between;color:#60736c;font-size:.61rem;font-weight:950}.xp-meter{height:14px;margin:8px 0 16px;border:3px solid #60736c;border-radius:99px;background:#e2e3db;overflow:hidden}.xp-meter i{display:block;height:100%;width:0;background:linear-gradient(90deg,#55bd69,#ffe14f);transition:width .4s}.stat-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.stat-item{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:7px;padding:8px;border-radius:13px;background:#f5f5ec}.stat-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#fff4bd;font-size:1rem}.stat-item small,.stat-item b{display:block}.stat-item small{color:#7a877f;font-size:.5rem;font-weight:900}.stat-item b{font-size:.74rem}.stat-item em{color:#4b755c;font-size:.58rem;font-style:normal;font-weight:1000}.upgrade-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-top:14px}.upgrade-card{position:relative;display:grid;grid-template-rows:auto auto 1fr auto;min-height:157px;padding:12px;border:2px solid #ddd8cb;border-radius:17px;background:#fff;box-shadow:0 5px 0 #d0cabd}.upgrade-card .upgrade-icon{display:grid;place-items:center;width:41px;height:41px;border:2px solid #fff;border-radius:12px;background:linear-gradient(#ffed9a,#f1bb3c);box-shadow:0 3px 0 #a77b29;font-size:1.15rem}.upgrade-card h3{margin:7px 0 2px;font-size:.72rem}.upgrade-card p{margin:0;color:#77847d;font-size:.5rem;line-height:1.4;font-weight:700}.upgrade-buy{min-height:35px;margin-top:9px;border:2px solid #fff;border-radius:10px;color:#fff;background:linear-gradient(#55bb6a,#318d50);box-shadow:0 4px 0 #236a3d;font-size:.55rem;font-weight:1000}.rare-feed-zone{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-top:14px;padding:13px 15px;border:2px solid #d5c6e0;border-radius:18px;background:linear-gradient(100deg,#f7efff,#fff)}.rare-feed-zone small{color:#7c6b89;font-size:.52rem;font-weight:900}.rare-feed-zone h3{margin:2px 0 0;font-size:.78rem}.rare-inventory{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:6px}.rare-item-button{min-height:37px;padding:0 9px;border:2px solid #fff;border-radius:11px;color:#563b6c;background:#ead8f9;box-shadow:0 3px 0 #a98ebc;font-size:.54rem;font-weight:950}.rare-item-button span{margin-right:4px;font-size:.9rem}
.forage-stage{position:relative;min-height:270px;overflow:hidden;border:3px solid #fff;border-radius:22px;background:linear-gradient(#72c8ea 0 52%,#4a9d4d 52%);box-shadow:0 7px 0 #c8c4b7}.forage-sky:before{content:"";position:absolute;right:12%;top:12%;width:72px;height:72px;border-radius:50%;background:#ffe477;box-shadow:0 0 0 12px #fff4aa45}.forage-tree{position:absolute;bottom:36px;width:105px;height:185px;background:#6f4b2e;border:7px solid #4b3528;border-radius:50% 50% 8px 8px}.forage-tree:before,.forage-tree:after{content:"";position:absolute;border:7px solid #315e37;border-radius:50%;background:#3c8c47;box-shadow:30px -12px 0 #4a9c50,-25px 9px 0 #337d41}.forage-tree:before{left:-55px;top:-68px;width:140px;height:115px}.forage-tree:after{right:-55px;top:-35px;width:120px;height:100px}.tree-left{left:6%}.tree-right{right:6%;transform:scale(.88)}.forage-bush{position:absolute;bottom:30px;width:190px;height:105px;border:7px solid #315e37;border-radius:50% 50% 12% 12%;background:#3e9146;box-shadow:45px -12px 0 #4ba052,-45px -4px 0 #378341}.bush-left{left:21%}.bush-right{right:21%}.forage-hole{position:absolute;left:50%;bottom:26px;width:130px;height:65px;border:7px solid #4d3529;border-radius:50%;background:#2b251f;box-shadow:inset 0 13px 0 #181511,0 -13px 0 #8b633b;transform:translateX(-50%)}.forage-hole span{position:absolute;left:50%;top:-72px;color:#fff0a0;font-size:4rem;font-weight:1000;text-shadow:0 6px 0 #345930,0 0 16px #fff45b;transform:translateX(-50%);animation:questionBob 1.4s ease-in-out infinite}.forage-spark{position:absolute;color:#fff77d;font-size:1.35rem;animation:sparkle 1.5s ease-in-out infinite}.s1{left:40%;top:18%}.s2{right:39%;top:27%;animation-delay:.5s}.s3{left:52%;top:12%;animation-delay:.9s}.forage-copy{display:grid;grid-template-columns:1fr minmax(245px,.45fr);gap:12px;align-items:center;margin-top:13px;padding:14px 16px;border:2px solid #ddd8cb;border-radius:18px;background:#fff;box-shadow:0 6px 0 #d0cabd}.forage-copy h3{margin:0;font-size:.9rem}.forage-copy p{margin:4px 0 0;color:#718079;font-size:.58rem;line-height:1.55;font-weight:700}.forage-button{grid-column:2;grid-row:1/3;display:grid;grid-template-columns:42px 1fr;align-items:center;min-height:65px;padding:7px 13px;border:3px solid #fff;border-radius:17px;color:#fff;background:linear-gradient(#8c69cf,#6846aa);box-shadow:0 6px 0 #483078;font-weight:1000;text-align:left}.forage-button>span{grid-row:1/3;font-size:1.7rem}.forage-button b,.forage-button small{display:block}.forage-button b{font-size:.72rem}.forage-button small{color:#ded0ff;font-size:.51rem}

/* MODAL / TOAST */
.toast{position:fixed;left:50%;bottom:22px;z-index:100;width:min(480px,calc(100% - 24px));padding:14px 18px;border:3px solid #fff;border-radius:17px;color:#fff;background:#173c45;box-shadow:0 8px 0 #0c252b,0 18px 45px #17333a59;opacity:0;transform:translate(-50%,30px) scale(.96);pointer-events:none;text-align:center;font-size:.73rem;font-weight:1000;transition:.25s}.toast.show{opacity:1;transform:translate(-50%,0) scale(1)}.toast.rare{background:#724aac;box-shadow:0 8px 0 #482c72,0 18px 45px #462b6c59}.toast.error{background:#c94940;box-shadow:0 8px 0 #7d2d2a,0 18px 45px #6c292559}
.modal{width:min(390px,calc(100% - 24px));padding:25px;border:3px solid #fff;border-radius:24px;background:#fffaf0;box-shadow:0 13px 0 #b8b1a3,0 30px 80px #172b2e6b}.modal::backdrop{background:#17363d9a;backdrop-filter:blur(5px)}.modal-icon{display:grid;place-items:center;width:52px;height:52px;margin:-3px auto 8px;border:3px solid #fff;border-radius:16px;color:#fff;background:#4aa365;box-shadow:0 5px 0 #287344;font-size:1.3rem}.modal h3,.modal p{text-align:center}.modal h3{margin:0;font-size:1.05rem}.modal p{margin:5px 0 14px;color:#718079;font-size:.65rem}.modal input{width:100%;min-height:49px;padding:0 14px;border:2px solid #d8d5c9;border-radius:13px;outline:none}.modal input:focus{border-color:#4aa365;box-shadow:0 0 0 4px #4aa36522}.modal-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:13px}.modal-actions button{min-height:43px;border:2px solid #fff;border-radius:12px;font-weight:950}.modal-cancel{color:#60706a;background:#e7e8e1;box-shadow:0 4px 0 #bfc1b8}.modal-save{color:#fff;background:#4aa365;box-shadow:0 4px 0 #287344}

/* ANIMATION */
@keyframes sunPulse{50%{transform:scale(1.06);box-shadow:0 0 0 25px #fff3a62a,0 0 95px #fff8b8}}
@keyframes cloudFloat{50%{transform:translateX(35px)}}
@keyframes heroFloat{50%{transform:translateY(-10px) rotate(-1deg)}}
@keyframes impactPop{0%,100%{transform:rotate(8deg) scale(1)}50%{transform:rotate(4deg) scale(1.08)}}
@keyframes worldCloud{0%{translate:-180px 0}100%{translate:calc(100vw + 200px) 0}}
@keyframes spin{to{transform:translate(-50%,-50%) rotate(360deg)}}
@keyframes slowSpin{to{transform:rotate(360deg)}}
@keyframes chickenBob{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-6px) rotate(1deg)}}
@keyframes roam{0%{translate:-30px 0}100%{translate:55px 0}}
@keyframes chickenHop{0%{transform:translateY(0) scale(1)}35%{transform:translateY(-46px) scale(1.08,.94)}65%{transform:translateY(-10px) scale(.97,1.04)}100%{transform:translateY(0) scale(1)}}
@keyframes selectedRing{50%{transform:translateX(-50%) scale(1.14);opacity:.55}}
@keyframes fxBurst{0%{opacity:0;transform:translate(-50%,-20%) scale(.3) rotate(0)}20%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--dx,0px)),calc(-50% + var(--dy,-120px))) scale(1.2) rotate(var(--rot,20deg))}}
@keyframes tipBounce{50%{transform:translateY(-5px)}}
@keyframes readyPulse{50%{transform:scale(1.3);opacity:.7}}

@keyframes panelIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes questionBob{50%{transform:translateX(-50%) translateY(-11px) rotate(5deg)}}
@keyframes sparkle{0%,100%{transform:scale(.5) rotate(0);opacity:.35}50%{transform:scale(1.25) rotate(90deg);opacity:1}}

/* TABLET */
@media(max-width:1050px){
  .auth-view{grid-template-columns:1fr}.auth-world{position:absolute;inset:0}.auth-world:before{content:"";position:absolute;inset:0;z-index:8;background:#17363d38;backdrop-filter:blur(2px)}.auth-card{margin:30px auto}
  .hud-top{grid-template-columns:1fr auto}.resource-hud{grid-row:2;grid-column:1/3;width:100%;justify-content:center}.hud-pill{flex:1}.profile-chip{grid-column:1}.hud-actions{grid-column:2}
  .farm-world{height:620px}.farm-building{left:4%;transform:scale(.9)}.silo{left:24%;transform:scale(.9)}.windmill{right:4%;transform:scale(.85)}
  .action-card-grid{grid-template-columns:1fr 1fr}.feed-card{grid-column:1/3}.egg-market-grid{grid-template-columns:repeat(3,1fr)}.upgrade-grid{grid-template-columns:repeat(3,1fr)}
}

/* MOBILE */
@media(max-width:680px){
  body{background:#b8e2e6}.auth-view{display:block;padding:12px}.auth-world{position:fixed;min-height:100vh}.auth-sun{width:82px;height:82px}.auth-barn{left:-40px;bottom:16%;transform:scale(.72)}.auth-chicken-wrap{right:-52px;bottom:4%;width:330px;height:400px;opacity:.88}.auth-card{width:100%;margin:18px auto;padding:28px 21px;border-radius:25px}.auth-card h1{font-size:2.65rem}.auth-card>p{font-size:.77rem}.auth-rule{flex-direction:column;align-items:center;gap:4px}
  .game-view{padding:7px 6px 16px}.hud-top{display:grid;grid-template-columns:1fr auto;gap:6px;margin-bottom:6px}.profile-chip{min-height:49px;padding:4px 8px 4px 5px;border-radius:14px}.profile-avatar{width:38px;height:38px;border-radius:10px;font-size:1.2rem}.profile-chip b{font-size:.72rem}.profile-chip small{max-width:138px;font-size:.52rem}.round-button{width:42px;height:42px;border-radius:13px}.resource-hud{grid-column:1/3;gap:2px;padding:4px;border-radius:15px}.hud-pill{min-width:0;padding:3px 5px;border-right:1px solid #ffffff1f}.hud-icon{width:31px;height:31px;border-radius:9px}.hud-pill small{font-size:.46rem}.hud-pill b{font-size:.65rem}
  .farm-world{height:540px;border-width:3px;border-radius:22px}.scene-status{left:9px;top:9px}.market-chip{max-width:230px;padding:6px 8px 6px 5px;border-radius:12px}.status-icon{width:32px;height:32px;border-radius:9px}.market-chip b{max-width:150px;font-size:.63rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.market-chip em{display:none}.scene-refresh{min-height:36px;padding:0 8px;border-radius:10px;font-size:.53rem}.farm-building{left:-35px;bottom:31%;transform:scale(.68)!important}.silo{left:23%;bottom:32%;transform:scale(.66)}.windmill{right:-30px;bottom:36%;transform:scale(.64)}.fence-line{bottom:28%}.ground-layer{bottom:-11%;height:48%}.dirt-path{left:37%;width:45%;height:52%}.chicken-field{left:2%;right:1%;top:39%;bottom:15%}.roaming-chicken{width:94px;height:119px}.roaming-chicken .scene-name{top:-6px;min-width:65px;padding:3px 6px;font-size:.47rem}.roaming-chicken .scene-level{width:27px;height:27px;font-size:.45rem}.selected-chicken-card{grid-template-columns:46px 1fr 62px;gap:7px;bottom:8px;min-height:59px;padding:5px 8px 5px 5px;border-radius:16px}.selected-mini-avatar{width:44px;height:44px;border-radius:12px;font-size:1.35rem}.selected-copy small{font-size:.45rem}.selected-copy b{font-size:.69rem}.selected-copy em{font-size:.48rem}.selected-progress{height:8px}.selected-arrow{display:none}.world-tip{left:9px;bottom:76px;padding:5px 7px;font-size:.46rem}
  .panel-dock{padding-top:62px}.bottom-nav{width:calc(100% - 12px);padding:5px;border-radius:20px 20px 13px 13px}.nav-button{min-height:50px}.nav-button span{font-size:1.12rem}.game-panel{min-height:340px;padding:19px 12px 22px;border-radius:20px}.panel-heading{margin-bottom:13px}.panel-heading h2{font-size:1.08rem}.panel-kicker{font-size:.54rem}.capacity-chip{padding:5px 7px;font-size:.5rem}.chicken-roster{gap:7px}.roster-card{flex-basis:154px;grid-template-columns:57px 1fr;min-height:80px;padding:7px}.roster-avatar{height:62px}.roster-avatar svg{width:57px;height:65px}.action-card-grid{grid-template-columns:1fr}.feed-card{grid-column:auto}.action-card{grid-template-columns:63px 1fr;padding:11px}.action-art{width:60px;height:60px;border-radius:15px}.dual-actions{grid-column:2}.egg-market-grid{grid-template-columns:repeat(2,1fr);gap:7px}.egg-market-card{min-height:205px;padding:10px}.market-summary{grid-template-columns:1fr 1fr;gap:7px;padding:10px}.warehouse-meter{grid-column:1/3}.training-layout{grid-template-columns:1fr}.training-hero{min-height:235px}.training-info{padding:12px}.upgrade-grid{grid-template-columns:repeat(2,1fr);gap:7px}.upgrade-card{min-height:148px;padding:10px}.rare-feed-zone{display:block}.rare-inventory{justify-content:flex-start;margin-top:10px}.forage-stage{min-height:235px}.forage-tree{transform:scale(.75);transform-origin:bottom}.tree-left{left:-20px}.tree-right{right:-20px;transform:scale(.68)}.forage-bush{transform:scale(.75);transform-origin:bottom}.bush-left{left:4%}.bush-right{right:4%}.forage-copy{display:block;padding:12px}.forage-button{margin-top:12px;width:100%}.toast{bottom:12px;font-size:.63rem}
}

@media(max-width:390px){
  .profile-chip small{max-width:110px}.hud-pill{gap:3px}.hud-pill b{font-size:.57rem}.hud-icon{width:28px;height:28px}.farm-world{height:520px}.selected-chicken-card{grid-template-columns:43px 1fr 50px}.selected-mini-avatar{width:41px;height:41px}.egg-market-card{min-height:195px}.upgrade-grid{grid-template-columns:1fr 1fr}
}

@media(prefers-reduced-motion:reduce){
  *,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}
}

/* =========================================================
   KOKKO FARM V3 · FEVER / WEATHER / DECORATION OVERRIDES
   ========================================================= */
:root{
  --v3-panel:#fffaf0;
  --v3-ink:#17343b;
  --v3-red:#ff4d3d;
  --v3-gold:#ffc52c;
  --v3-blue:#42a9e4;
  --v3-green:#42ad65;
  --v3-purple:#865ee8;
}
html,body{overscroll-behavior:none}
body{touch-action:pan-y;background:#b8e2e6}
.game-view{padding-bottom:max(22px,env(safe-area-inset-bottom))}
.profile-chip{position:relative;padding-right:52px}
.profile-chip em{position:absolute;right:8px;top:50%;translate:0 -50%;padding:5px 7px;border-radius:9px;color:#fff;background:linear-gradient(#ff764e,#e94b3f);box-shadow:0 3px 0 #a8332e;font-size:.55rem;font-style:normal;font-weight:1000}

/* Login scene */
.auth-rays{position:absolute;left:-5%;top:-20%;width:70%;aspect-ratio:1;border-radius:50%;background:repeating-conic-gradient(from 0deg,#fff5 0 8deg,transparent 8deg 18deg);animation:slowSpin 25s linear infinite;opacity:.45}
.auth-barn{display:grid;place-items:center;background:#d85343}
.auth-barn:before{content:"";position:absolute;left:-34px;right:-34px;top:-92px;height:103px;background:#62362f;clip-path:polygon(50% 0,100% 100%,0 100%);filter:drop-shadow(0 8px 0 #4a2824)}
.auth-barn>span{position:absolute;left:50%;bottom:0;width:96px;height:126px;translate:-50% 0;border:7px solid #f0d19b;border-bottom:0;background:linear-gradient(90deg,#804136 49%,#5e302c 50%)}
.auth-barn>i{position:absolute;left:25px;top:48px;width:50px;height:50px;border:6px solid #f0d19b;background:#78caed}
.auth-barn>b{position:absolute;top:22px;color:#fff4ce;font-size:.8rem;letter-spacing:.14em}
.auth-chicken-wrap{align-items:center;justify-items:center}
.auth-chicken{display:grid;place-items:center;width:340px!important;height:340px;max-height:none!important;border:12px solid #52392d;border-radius:48% 52% 46% 54%;background:radial-gradient(circle at 50% 34%,#fffdf1 0 32%,#ffe9ad 33% 68%,#edb84b 69%);font-size:10rem;filter:drop-shadow(0 28px 18px rgba(25,54,45,.28));transform:rotate(-5deg)}
.auth-eggs{position:absolute;left:7%;bottom:7%;display:flex;gap:10px;font-size:2rem;animation:chickenBob 1.3s ease-in-out infinite}
.auth-eggs i{font-style:normal;filter:drop-shadow(0 6px 3px #31564050)}
.auth-feature-row{display:flex;flex-wrap:wrap;gap:6px;margin:17px 0 -12px}
.auth-feature-row span{padding:6px 8px;border-radius:999px;background:#e7f6e8;color:#29704a;font-size:.6rem;font-weight:950}

/* Real-time world phases */
.farm-world{touch-action:manipulation;transition:background 1.4s ease,filter 1.4s ease;transform-origin:center center}
.sky-layer{transition:background 1.4s ease,filter 1.4s ease}
.celestial{position:absolute;display:block;width:86px;height:86px;border-radius:50%;transition:opacity 1.2s ease,transform 1.2s ease,top 1.2s ease}
.celestial.sun{right:12%;top:13%;background:#ffed72;box-shadow:0 0 0 14px #fff4a73e,0 0 65px #fff4a2;animation:sunPulse 3.2s ease-in-out infinite}
.celestial.moon{right:12%;top:12%;display:grid;place-items:center;color:#fffce0;background:#e9edca;box-shadow:0 0 0 12px #dfe9ff1f,0 0 55px #cfdfff9c;font-size:4rem;opacity:0;transform:translateY(35px) scale(.7)}
.star-field{position:absolute;inset:0;opacity:0;background-image:radial-gradient(circle,#fff 0 1px,transparent 1.6px),radial-gradient(circle,#fff8c9 0 1.2px,transparent 1.8px),radial-gradient(circle,#fff 0 1px,transparent 1.5px);background-size:83px 67px,119px 97px,151px 131px;background-position:7px 12px,46px 2px,14px 51px;transition:opacity 1.2s ease;animation:starTwinkle 3s ease-in-out infinite alternate}
.phase-dawn .sky-layer{background:linear-gradient(#566da3,#ffab87 68%,#ffd69f)}
.phase-dawn .celestial.sun{top:35%;transform:scale(.84)}
.phase-dusk .sky-layer{background:linear-gradient(#665d99,#f79070 62%,#ffd08b)}
.phase-dusk .celestial.sun{top:34%;background:#ffbc4c;box-shadow:0 0 0 16px #ffbf6740,0 0 80px #ff9c5f}
.phase-night .sky-layer{background:linear-gradient(#101e4a,#243a68 63%,#4e6080)}
.phase-night .celestial.sun{opacity:0;transform:translateY(60px) scale(.55)}
.phase-night .celestial.moon{opacity:1;transform:none}
.phase-night .star-field{opacity:.8}
.phase-night .mountain-layer{filter:brightness(.55) saturate(.75)}
.phase-night .field-stripe,.phase-night .ground-layer{filter:brightness(.60) saturate(.8)}
.phase-night .farm-building,.phase-night .silo,.phase-night .windmill{filter:brightness(.78) saturate(.85)}
.phase-night .building-light{position:absolute;left:50%;top:66%;width:78px;height:78px;translate:-50% -50%;border-radius:50%;background:#ffd86b;filter:blur(23px);opacity:.62;z-index:-1;animation:lampPulse 2.5s ease-in-out infinite}
.phase-night .decoration-item[data-item-id="lantern"],.phase-night .decoration-item[data-item-id="moonLamp"],.phase-night .decoration-item[data-item-id="neonSign"]{filter:drop-shadow(0 0 13px #ffe072) drop-shadow(0 0 25px #ff8f5d)}
.phase-dawn:before,.phase-dusk:before,.phase-night:before{content:"";position:absolute;inset:0;z-index:38;pointer-events:none;mix-blend-mode:multiply;transition:background 1.2s ease}
.phase-dawn:before{background:#ff92630c}
.phase-dusk:before{background:#923c5b18}
.phase-night:before{background:#08133838}

/* Weather */
.weather-layer{position:absolute;inset:0;z-index:24;pointer-events:none;overflow:hidden}
.weather-drop,.weather-flake{position:absolute;top:-12%;pointer-events:none}
.weather-drop{width:2px;height:31px;border-radius:10px;background:linear-gradient(transparent,#dff8ff);opacity:.55;transform:rotate(12deg);animation:rainFall var(--speed,1s) linear infinite;animation-delay:var(--delay,0s)}
.weather-flake{color:#fff;font-size:var(--size,15px);text-shadow:0 0 8px #fff;opacity:.85;animation:snowFall var(--speed,6s) linear infinite;animation-delay:var(--delay,0s)}
.heat-haze{position:absolute;inset:0;z-index:23;pointer-events:none;opacity:0;background:repeating-linear-gradient(90deg,transparent 0 25px,#fff2 26px 27px,transparent 28px 55px);mix-blend-mode:overlay;filter:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='w'%3E%3CfeTurbulence baseFrequency='.012 .06' numOctaves='2' seed='2'/%3E%3CfeDisplacementMap in='SourceGraphic' scale='18'/%3E%3C/filter%3E%3C/svg%3E#w");animation:heatWave 2s linear infinite}
.weather-rain .sky-layer{filter:brightness(.78) saturate(.72)}
.weather-rain .farm-world:before{background:#35536815}
.weather-snow .sky-layer{filter:brightness(1.07) saturate(.58)}
.weather-snow .ground-layer{box-shadow:inset 0 65px 0 #eef8f2a6}
.weather-heatwave .sky-layer{filter:saturate(1.18) brightness(1.06)}
.weather-heatwave .heat-haze{opacity:.34}
.weather-heatwave .farm-world{filter:sepia(.08) saturate(1.12)}

/* Status row */
.scene-status{right:10px;display:grid;grid-template-columns:minmax(250px,1fr) auto auto;align-items:start;gap:8px}
.market-chip{max-width:430px}
.market-chip strong{align-self:center;padding:5px 7px;border-radius:9px;background:#193b42;color:#fff;font-size:.58rem;white-space:nowrap}
.weather-chip{display:flex;align-items:center;gap:7px;min-height:52px;padding:6px 10px;border:2px solid #fff;border-radius:15px;background:#173a43e8;color:#fff;box-shadow:0 6px 0 #122d32,0 9px 24px #16363b4b;backdrop-filter:blur(8px)}
.weather-chip>span:first-child{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:#ffffff1c;font-size:1.35rem}
.weather-chip small,.weather-chip b,.weather-chip em{display:block;white-space:nowrap}.weather-chip small{color:#b5d8dc;font-size:.48rem}.weather-chip b{font-size:.68rem}.weather-chip em{color:#ffdd6d;font-size:.48rem;font-style:normal;font-weight:900}

/* Central gameplay layers */
.decoration-layer{position:absolute;inset:17% 2% 10%;z-index:8;pointer-events:none}
.chicken-field{z-index:13}
.scene-effects{z-index:45}
.decoration-item{position:absolute;display:grid;place-items:center;width:78px;height:78px;border:0;background:transparent;filter:drop-shadow(0 10px 5px #24432c4d);font-size:3.5rem;line-height:1;translate:-50% -50%;transform:rotate(var(--rotation,0deg)) scale(var(--scale,1));transform-origin:center bottom;pointer-events:auto;user-select:none;-webkit-user-select:none;touch-action:none;transition:filter .15s,opacity .15s}
.decoration-item:before{content:"";position:absolute;left:50%;bottom:0;width:58%;height:14%;translate:-50% 30%;border-radius:50%;background:#203e2d45;filter:blur(4px);z-index:-1}
.decoration-item.selected{filter:drop-shadow(0 0 0 #fff) drop-shadow(0 0 9px #fff) drop-shadow(0 0 18px #ffcf38);z-index:30}
.decoration-item.selected:after{content:"";position:absolute;inset:-12px;border:3px dashed #fff;border-radius:50%;animation:slowSpin 5s linear infinite}
.decoration-layer.editing{pointer-events:auto;background:linear-gradient(#ffffff09,#ffffff03);outline:2px dashed #fff8;outline-offset:-9px}
.decoration-layer.editing:after{content:"배치 가능 영역";position:absolute;left:50%;top:5%;translate:-50% 0;padding:5px 9px;border-radius:999px;color:#fff;background:#173b43b8;font-size:.55rem;font-weight:1000}
.decoration-item.dragging{transition:none;filter:drop-shadow(0 20px 8px #213b2959) drop-shadow(0 0 12px #fff);z-index:35}
.decor-toolbar{position:absolute;left:50%;bottom:82px;z-index:55;display:flex;align-items:center;gap:5px;translate:-50% 0;padding:7px;border:2px solid #fff;border-radius:15px;background:#173b43ee;box-shadow:0 7px 0 #102c32,0 16px 30px #16343b66;color:#fff;backdrop-filter:blur(9px)}
.decor-toolbar b{max-width:110px;padding:0 7px;font-size:.62rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.decor-toolbar button{min-height:34px;padding:0 9px;border:1px solid #ffffff66;border-radius:9px;color:#fff;background:#ffffff14;font-size:.55rem;font-weight:950}
.decor-toolbar button:last-child{color:#18373f;background:#ffdc54;border-color:#fff0a6}
.world-tip{z-index:33}

/* Fever */
.fever-overlay{position:absolute;inset:0;z-index:39;pointer-events:none;opacity:0;visibility:hidden;background:radial-gradient(circle at 50% 58%,transparent 0 25%,#ff481b18 54%,#cf180f4d 100%);transition:opacity .22s}
.fever-overlay.active{opacity:1;visibility:visible}
.fever-rays{position:absolute;left:50%;top:54%;width:130%;aspect-ratio:1;translate:-50% -50%;border-radius:50%;background:repeating-conic-gradient(#ffe56250 0 7deg,transparent 7deg 16deg,#ff592d42 16deg 22deg,transparent 22deg 31deg);animation:feverSpin 7s linear infinite;mix-blend-mode:screen}
.fever-title{position:absolute;left:50%;top:13%;display:grid;justify-items:center;translate:-50% 0;filter:drop-shadow(0 9px 0 #7e1815) drop-shadow(0 17px 17px #44110d7d);animation:feverTitle .5s cubic-bezier(.16,1.5,.45,1) both}
.fever-title span{margin-bottom:-8px;padding:4px 14px;border:3px solid #fff;border-radius:999px;color:#70221c;background:#ffe95f;font-size:.75rem;font-weight:1000;letter-spacing:.18em;transform:rotate(-4deg)}
.fever-title b{color:#fff3a1;font-size:clamp(3rem,8vw,7rem);line-height:.85;letter-spacing:-.08em;-webkit-text-stroke:5px #ff3f24;text-shadow:0 6px 0 #a51c17,0 0 22px #fff353}
.fever-title em{margin-top:12px;padding:7px 13px;border:2px solid #fff;border-radius:999px;color:#fff;background:#b51f19db;font-size:.66rem;font-style:normal;font-weight:1000;letter-spacing:.05em}
.fever-timer{position:absolute;left:50%;top:37%;width:min(370px,70%);height:22px;translate:-50% 0;border:4px solid #fff;border-radius:999px;background:#74211e;box-shadow:0 5px 0 #571310;overflow:visible}
.fever-timer i{display:block;width:100%;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ffe32c,#ff8b24,#ff3f31);box-shadow:inset 0 3px 0 #fff9;transition:width .08s linear}
.fever-timer b{position:absolute;left:50%;top:50%;translate:-50% -50%;color:#fff;text-shadow:0 2px 0 #70211d;font-size:.63rem}
.fever-combo{position:absolute;right:4%;top:43%;display:grid;justify-items:center;transform:rotate(4deg);animation:comboPulse .35s ease-in-out infinite alternate}
.fever-combo small{color:#fff3a3;font-size:.7rem;font-weight:1000;letter-spacing:.15em;text-shadow:0 3px 0 #8d241d}
.fever-combo b{color:#fff;font-size:clamp(2.4rem,6vw,5.2rem);line-height:.85;-webkit-text-stroke:3px #e23b24;text-shadow:0 5px 0 #871f18}
.fever-combo em{padding:4px 8px;border:2px solid #fff;border-radius:9px;color:#75301f;background:#ffe468;font-size:.64rem;font-style:normal;font-weight:1000}
.fever-active{animation:feverWorldShake .14s linear infinite}
.fever-active .chicken-field{filter:drop-shadow(0 0 13px #ffeb65)}
.fever-active .roaming-chicken{animation-duration:.35s!important}
.fever-active .world-tip{color:#7a251c;background:#ffe95e;border-color:#fff;text-transform:uppercase}
.fever-ready{position:absolute;right:12px;bottom:76px;z-index:34;display:flex;align-items:center;gap:6px;padding:6px 9px;border:2px solid #fff;border-radius:13px;color:#fff;background:#8e3428d9;box-shadow:0 5px 0 #5f211c;backdrop-filter:blur(6px)}
.fever-ready>span{font-size:1.25rem;animation:flamePulse .7s ease-in-out infinite alternate}.fever-ready small,.fever-ready b{display:block;white-space:nowrap}.fever-ready small{font-size:.43rem;color:#ffd7c7}.fever-ready b{font-size:.57rem}
.fever-ready.imminent{background:#d43f2b;animation:readyRumble .25s linear infinite}

/* Panels / navigation */
.bottom-nav{grid-template-columns:repeat(6,1fr)}
.panel-dock{position:relative;z-index:60}
.game-panel{background:linear-gradient(180deg,#fffdf7,#fff8e9)}
.farm-progress-card{display:grid;grid-template-columns:1fr minmax(180px,45%);align-items:center;gap:18px;margin-bottom:13px;padding:12px 15px;border:2px solid #fff;border-radius:17px;background:linear-gradient(135deg,#173d45,#295d58);box-shadow:0 6px 0 #102e34;color:#fff}
.farm-progress-card small,.farm-progress-card b,.farm-progress-card em{display:block}.farm-progress-card small{color:#a9d3d3;font-size:.53rem}.farm-progress-card b{font-size:.85rem}.farm-progress-card em{color:#ffdb65;font-size:.55rem;font-style:normal;font-weight:900}.farm-progress-meter{height:13px;padding:2px;border-radius:99px;background:#102d33}.farm-progress-meter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#63d77d,#ffdb49,#ff7d48);box-shadow:0 0 10px #ffdc5f80;transition:width .5s cubic-bezier(.2,.8,.2,1)}
.late-game-note,.decor-guide{display:flex;align-items:center;gap:10px;margin:12px 0;padding:10px 13px;border:2px solid #fff;border-radius:15px;background:#fff0c8;box-shadow:0 4px 0 #dac58f}.late-game-note>span,.decor-guide>span{font-size:1.7rem}.late-game-note p,.decor-guide p{margin:0;color:#72572c;font-size:.6rem;line-height:1.55}.late-game-note b,.decor-guide b{display:block;color:#3f432f;font-size:.67rem}
.capacity-chip.cyan{color:#1b6573;background:#d8f6fb}.tiny-button.accent{color:#fff;background:#865ee8;box-shadow:0 4px 0 #5c3f9f}

.facility-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:14px}
.facility-summary>div{padding:12px;border:2px solid #fff;border-radius:15px;background:#173b43;color:#fff;box-shadow:0 5px 0 #102b31;text-align:center}.facility-summary small,.facility-summary b{display:block}.facility-summary small{color:#add2d4;font-size:.52rem}.facility-summary b{margin-top:3px;color:#ffdc63;font-size:.82rem}
.facility-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.facility-card{position:relative;overflow:hidden;min-height:220px;padding:15px;border:2px solid #fff;border-radius:19px;background:linear-gradient(155deg,#e9fbf4,#fff3d5);box-shadow:0 6px 0 #c6c1ad,0 12px 22px #29474d16}
.facility-card:before{content:"";position:absolute;right:-35px;top:-40px;width:110px;height:110px;border-radius:50%;background:#4fb97618}
.facility-icon{display:grid;place-items:center;width:60px;height:60px;border:3px solid #fff;border-radius:18px;background:linear-gradient(#72db8a,#39a85f);box-shadow:0 5px 0 #267544;font-size:2rem}.facility-card:nth-child(2) .facility-icon{background:linear-gradient(#77c9ef,#438fd1);box-shadow:0 5px 0 #286696}.facility-card:nth-child(3) .facility-icon{background:linear-gradient(#ffd866,#f5a83d);box-shadow:0 5px 0 #aa6b28}.facility-card:nth-child(4) .facility-icon{background:linear-gradient(#ab8ff3,#7454cc);box-shadow:0 5px 0 #4f3792}.facility-card small{display:block;margin-top:12px;color:#5f7674;font-size:.54rem;font-weight:900}.facility-card h3{margin:2px 0 5px;font-size:.86rem}.facility-card p{min-height:36px;margin:0;color:#75817d;font-size:.56rem;line-height:1.5}.facility-level{display:flex;justify-content:space-between;align-items:center;margin:11px 0 7px;font-size:.55rem;font-weight:950}.facility-level b{color:#e64d3e}.facility-meter{height:8px;border-radius:99px;background:#d7ded7;overflow:hidden}.facility-meter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#53bd70,#ffcf46);transition:width .4s}.facility-upgrade{width:100%;min-height:40px;margin-top:11px;border:2px solid #fff;border-radius:11px;color:#fff;background:#42a764;box-shadow:0 4px 0 #277345;font-size:.61rem;font-weight:1000}.facility-upgrade:active{translate:0 3px;box-shadow:0 1px 0 #277345}

.sub-tabs{display:flex;gap:5px;margin:12px 0;padding:5px;border-radius:14px;background:#e7e4db}.sub-tab{flex:1;min-height:38px;border:0;border-radius:10px;color:#6d746f;background:transparent;font-size:.62rem;font-weight:950}.sub-tab.active{color:#fff;background:#4a9e63;box-shadow:0 3px 0 #2d7144}.decor-subpanel{display:none}.decor-subpanel.active{display:block;animation:panelIn .25s ease}
.decor-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:9px}
.decor-card{position:relative;min-height:194px;padding:12px;border:2px solid #fff;border-radius:17px;background:linear-gradient(#fff,#f6f0df);box-shadow:0 5px 0 #c9c4b5;text-align:center;overflow:hidden}.decor-card.locked{filter:grayscale(.7);opacity:.68}.decor-card .decor-art{display:grid;place-items:center;width:72px;height:72px;margin:0 auto 7px;border-radius:22px;background:radial-gradient(circle,#fff8d4,#dff0d4);font-size:3rem;filter:drop-shadow(0 7px 3px #35513b38)}.decor-card small{display:block;color:#78908a;font-size:.5rem;font-weight:900;text-transform:uppercase}.decor-card h3{margin:3px 0;font-size:.72rem}.decor-card p{margin:0;color:#7b847f;font-size:.52rem;line-height:1.4}.decor-count{position:absolute;right:8px;top:8px;display:grid;place-items:center;min-width:28px;height:28px;padding:0 5px;border:2px solid #fff;border-radius:10px;color:#fff;background:#e55345;box-shadow:0 3px 0 #a93631;font-size:.55rem;font-weight:1000}.decor-action{width:100%;min-height:37px;margin-top:9px;border:2px solid #fff;border-radius:10px;color:#fff;background:#4fa869;box-shadow:0 4px 0 #2e7445;font-size:.57rem;font-weight:1000}.decor-action.buy{background:#ef9f32;box-shadow:0 4px 0 #a66420}.decor-source{display:inline-block;margin-top:4px;padding:3px 6px;border-radius:999px;color:#745e22;background:#fff0aa;font-size:.45rem;font-weight:950}
.achievement-list{display:grid;gap:8px}.achievement-card{display:grid;grid-template-columns:54px 1fr auto;align-items:center;gap:11px;padding:11px;border:2px solid #fff;border-radius:16px;background:#f1eee4;box-shadow:0 4px 0 #cac5b8}.achievement-card.unlocked{background:linear-gradient(135deg,#fff6bf,#e7f7d7);box-shadow:0 4px 0 #d2bb65,0 0 20px #ffdf5d38}.achievement-reward{display:grid;place-items:center;width:52px;height:52px;border-radius:15px;background:#173b43;font-size:1.7rem}.achievement-card h3{margin:0;font-size:.7rem}.achievement-card p{margin:2px 0 6px;color:#77827d;font-size:.52rem}.achievement-progress{height:8px;border-radius:99px;background:#d5d7d0;overflow:hidden}.achievement-progress i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#46af68,#ffcf42)}.achievement-state{min-width:65px;text-align:right}.achievement-state b,.achievement-state small{display:block}.achievement-state b{color:#e05a3e;font-size:.6rem}.achievement-state small{color:#78827d;font-size:.47rem}

/* Feedback */
.achievement-toast{position:fixed;left:50%;top:max(15px,env(safe-area-inset-top));z-index:200;display:flex;align-items:center;gap:10px;min-width:290px;padding:11px 15px;border:3px solid #fff;border-radius:18px;color:#fff;background:linear-gradient(135deg,#6745c7,#ea4d75);box-shadow:0 7px 0 #462a8f,0 18px 45px #3f236a62;opacity:0;visibility:hidden;translate:-50% -25px;transition:.3s cubic-bezier(.2,.9,.2,1)}.achievement-toast.show{opacity:1;visibility:visible;translate:-50% 0}.achievement-toast>span{font-size:2rem}.achievement-toast small,.achievement-toast b,.achievement-toast em{display:block}.achievement-toast small{color:#ffe38a;font-size:.5rem;font-weight:1000;letter-spacing:.12em}.achievement-toast b{font-size:.75rem}.achievement-toast em{font-size:.52rem;font-style:normal;color:#f6dbff}
.game-button,.upgrade-buy,.facility-upgrade,.decor-action,.forage-button,.auth-submit{touch-action:manipulation}
.game-button.pressed,.upgrade-buy.pressed,.facility-upgrade.pressed,.decor-action.pressed{transform:translateY(4px)!important;filter:brightness(.96)}

/* V3 animations */
@keyframes starTwinkle{from{opacity:.55}to{opacity:.9}}
@keyframes lampPulse{50%{opacity:.85;transform:scale(1.12)}}
@keyframes rainFall{to{translate:-65px 820px}}
@keyframes snowFall{0%{translate:0 -20px;rotate:0deg}50%{translate:25px 380px;rotate:180deg}100%{translate:-20px 760px;rotate:360deg}}
@keyframes heatWave{to{background-position:55px 0}}
@keyframes feverSpin{to{rotate:360deg}}
@keyframes feverTitle{0%{transform:scale(.2) rotate(-16deg);opacity:0}70%{transform:scale(1.12) rotate(3deg)}100%{transform:none;opacity:1}}
@keyframes comboPulse{to{transform:rotate(1deg) scale(1.06)}}
@keyframes feverWorldShake{0%{transform:translate(0,0) rotate(0)}25%{transform:translate(-1.5px,1px) rotate(-.08deg)}50%{transform:translate(1.5px,-1px) rotate(.08deg)}75%{transform:translate(-1px,-.5px)}100%{transform:none}}
@keyframes flamePulse{to{transform:scale(1.2) rotate(5deg);filter:drop-shadow(0 0 7px #ffdf56)}}
@keyframes readyRumble{25%{transform:translateX(-1px)}75%{transform:translateX(1px)}}
@keyframes tapImpact{0%{opacity:1;transform:translate(-50%,-50%) scale(.3) rotate(-12deg)}45%{opacity:1;transform:translate(-50%,-70%) scale(1.18) rotate(4deg)}100%{opacity:0;transform:translate(-50%,-130%) scale(.8) rotate(-5deg)}}
@keyframes giantEggPop{0%{opacity:0;transform:translate(-50%,-50%) scale(.2) rotate(-25deg)}25%{opacity:1;transform:translate(-50%,-75%) scale(1.4) rotate(8deg)}100%{opacity:0;transform:translate(-50%,-190%) scale(.65) rotate(22deg)}}

@media(max-width:1050px){
  .scene-status{grid-template-columns:minmax(230px,1fr) auto auto}.weather-chip em{display:none}.facility-grid,.decor-grid{grid-template-columns:repeat(2,1fr)}
  .facility-summary{grid-template-columns:repeat(2,1fr)}
}

@media(max-width:680px){
  .auth-chicken{width:260px!important;height:260px;font-size:7rem}.auth-feature-row{margin-top:13px}.auth-feature-row span{font-size:.52rem}.auth-rule{flex-direction:row;flex-wrap:wrap}
  .profile-chip{padding-right:45px}.profile-chip em{font-size:.45rem}
  .farm-world{height:min(62vh,570px);min-height:500px}
  .scene-status{left:7px;right:7px;top:7px;grid-template-columns:1fr auto;gap:5px}.market-chip{max-width:none}.market-chip strong{font-size:.48rem}.weather-chip{grid-column:1/2;grid-row:2;justify-self:start;min-height:39px;padding:3px 7px;border-radius:11px}.weather-chip>span:first-child{width:29px;height:29px;font-size:1rem}.weather-chip em{display:block;font-size:.41rem}.weather-chip small{font-size:.4rem}.weather-chip b{font-size:.57rem}.scene-refresh{grid-column:2;grid-row:1/3;height:100%}
  .decoration-layer{inset:20% 0 10%}.decoration-item{width:58px;height:58px;font-size:2.55rem}
  .fever-title{top:14%}.fever-title b{-webkit-text-stroke:3px #ff3f24;font-size:3.5rem}.fever-title span{font-size:.55rem}.fever-title em{font-size:.52rem}.fever-timer{top:35%;height:19px}.fever-combo{right:3%;top:43%}.fever-combo b{-webkit-text-stroke:2px #e23b24;font-size:2.8rem}.fever-ready{right:7px;bottom:74px}.fever-ready>span{font-size:1rem}.fever-ready b{font-size:.49rem}
  .decor-toolbar{bottom:76px;width:calc(100% - 14px);justify-content:center;flex-wrap:wrap;padding:5px}.decor-toolbar b{width:100%;max-width:none;text-align:center}.decor-toolbar button{flex:1;padding:0 5px;font-size:.48rem}
  .bottom-nav{display:flex;overflow-x:auto;scrollbar-width:none;justify-content:flex-start}.bottom-nav::-webkit-scrollbar{display:none}.nav-button{flex:0 0 16.666%;min-width:58px}
  .panel-dock{padding-top:62px}.farm-progress-card{grid-template-columns:1fr;gap:7px}.farm-progress-meter{height:11px}
  .facility-grid,.decor-grid{grid-template-columns:repeat(2,1fr);gap:7px}.facility-card{min-height:204px;padding:11px}.facility-icon{width:50px;height:50px;font-size:1.55rem}.facility-card p{min-height:34px}.facility-summary{gap:5px}.facility-summary>div{padding:8px}.facility-summary b{font-size:.68rem}
  .decor-card{min-height:184px;padding:9px}.decor-card .decor-art{width:62px;height:62px;font-size:2.5rem}.achievement-card{grid-template-columns:46px 1fr}.achievement-reward{width:44px;height:44px}.achievement-state{grid-column:2;text-align:left;display:flex;gap:7px}.achievement-toast{min-width:0;width:calc(100% - 18px)}
}

@media(max-width:390px){
  .auth-feature-row span{padding:5px 6px}.market-chip strong{display:none}.weather-chip em{display:none}.fever-title b{font-size:3.1rem}.fever-title em{font-size:.46rem}.facility-grid,.decor-grid{grid-template-columns:1fr 1fr}.decor-card h3{font-size:.65rem}
}

/* Small V3 utility styles */
.scene-effects .fx-particle{position:absolute;z-index:80;display:block;pointer-events:none;color:#fff;font-size:1.15rem;font-weight:1000;text-shadow:0 2px 0 #703d24,0 0 7px #fff;animation:fxBurst 1.25s ease-out forwards}
.scene-effects .fx-particle.coin{display:grid;place-items:center;width:24px;height:24px;border:2px solid #fff;border-radius:50%;color:#774c14;background:#ffd84e;box-shadow:0 3px 0 #a66c1d}
.scene-effects .fx-particle.heart{color:#ff5c68;text-shadow:0 2px 0 #9d2833,0 0 7px #fff}
.scene-effects .tap-impact{position:absolute;z-index:90;pointer-events:none;translate:-50% -50%;color:#fff8a8;font-size:clamp(.85rem,2.5vw,1.45rem);font-style:italic;font-weight:1000;letter-spacing:-.04em;-webkit-text-stroke:2px #e83c25;text-shadow:0 4px 0 #8b2019,0 0 12px #fff15c;white-space:nowrap;animation:tapImpact .68s ease-out forwards}
.upgrade-meter{height:7px;margin:7px 0;border-radius:999px;background:#d9d9cf;overflow:hidden}.upgrade-meter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#4fb96c,#ffcf45,#f26443)}
.empty-note{grid-column:1/-1;margin:0;padding:25px;border:2px dashed #c9c4b5;border-radius:16px;color:#77817d;text-align:center;font-size:.65rem;font-weight:850}
.selected-mini-avatar svg{width:100%;height:100%}.training-chicken svg{width:100%;height:100%;overflow:visible}.roster-avatar svg{width:100%;height:100%;overflow:visible}
.egg-market-card.hot{outline:4px solid #ffcf35;box-shadow:0 7px 0 #c28a27,0 0 25px #ffd33a7a;animation:impactPop 1.3s ease-in-out infinite}
.toast.fever{background:#d9452e;box-shadow:0 8px 0 #85261d,0 18px 45px #75201959}.toast.weather{background:#397ea7;box-shadow:0 8px 0 #245573,0 18px 45px #1f4e6a59}.toast.decor{background:#7652c7;box-shadow:0 8px 0 #4e368d,0 18px 45px #3d296a59}.toast.market{background:#be7f21;box-shadow:0 8px 0 #805214,0 18px 45px #76501959}
.farm-world.weather-heatwave{filter:sepia(.08) saturate(1.12)}
.farm-world.weather-rain:before{background:#35536815}

.fever-end-pop{position:absolute;left:50%;top:54%;z-index:110;display:grid;justify-items:center;pointer-events:none;translate:-50% -50%;animation:feverClearPop 1.45s cubic-bezier(.16,.85,.2,1) forwards}.fever-end-pop span{font-size:6rem;filter:drop-shadow(0 12px 5px #49261f66)}.fever-end-pop b{margin-top:-17px;color:#fff8a4;font-size:clamp(1.25rem,4vw,2.5rem);font-style:italic;letter-spacing:-.05em;-webkit-text-stroke:3px #e8452d;text-shadow:0 5px 0 #8d281f,0 0 18px #fff}.fever-end-pop em{margin-top:4px;padding:5px 12px;border:3px solid #fff;border-radius:999px;color:#fff;background:#183b43e8;box-shadow:0 4px 0 #0d252b;font-size:.7rem;font-style:normal;font-weight:1000}
@keyframes feverClearPop{0%{opacity:0;transform:scale(.18) rotate(-18deg)}28%{opacity:1;transform:scale(1.18) rotate(4deg)}70%{opacity:1;transform:scale(1) rotate(-2deg)}100%{opacity:0;transform:translateY(-130px) scale(.72) rotate(8deg)}}

/* ===== KOKKO FARM v4 · 부화/품종/편안한 피버 패치 ===== */
.bottom-nav{grid-template-columns:repeat(7,1fr);width:min(690px,calc(100% - 20px))}
@media(max-width:760px){.nav-button{flex:0 0 14.285%;min-width:54px}.nav-button b{font-size:.52rem}}

/* 피버는 화면 전체 번쩍임 대신 캐릭터 주변의 부드러운 에너지로 표현합니다. */
.fever-overlay{background:radial-gradient(circle at 50% 58%,transparent 0 34%,#ffb44312 62%,#a8362528 100%);transition:opacity .28s ease}
.fever-rays{width:118%;background:repeating-conic-gradient(#ffe98b20 0 7deg,transparent 7deg 18deg,#ff8a5620 18deg 23deg,transparent 23deg 34deg);animation:feverSpin 18s linear infinite;mix-blend-mode:normal;opacity:.55}
.fever-title{filter:drop-shadow(0 7px 0 #7e1815aa) drop-shadow(0 12px 10px #44110d45)}
.fever-title b{text-shadow:0 5px 0 #a51c17,0 0 7px #ffe46b66}
.fever-active{animation:none!important}
.fever-starting{animation:feverStartNudge .58s cubic-bezier(.2,.8,.25,1) 1!important}
.fever-active .chicken-field{filter:drop-shadow(0 0 5px #ffdc5f88)}
.fever-active .roaming-chicken{animation-duration:.55s!important}
.fever-ready.imminent{animation:softReadyPulse 1s ease-in-out infinite alternate}
@keyframes feverStartNudge{0%{transform:scale(.992)}40%{transform:scale(1.006)}100%{transform:none}}
@keyframes softReadyPulse{from{filter:saturate(1);transform:translateY(0)}to{filter:saturate(1.08);transform:translateY(-1px)}}

.roaming-chicken.is-chick{width:clamp(72px,9vw,118px)}
.roaming-chicken.is-chick .scene-name{background:#ffdf5f;color:#5c411f}
.chicken-svg.chick-svg{filter:drop-shadow(0 6px 3px #254a3030)}
.chicken-svg.type-golden{filter:drop-shadow(0 0 7px #ffc52f72)}
.chicken-svg.type-brazil{filter:drop-shadow(0 5px 4px #217b7540)}
.chicken-svg.type-silkie{filter:drop-shadow(0 6px 4px #11182755)}
.roster-card:has(.type-golden){background:linear-gradient(145deg,#fff9c9,#ffe27a)}

.hatch-guide{display:flex;align-items:center;gap:12px;margin-bottom:16px;padding:13px 15px;border:2px solid #d9c7ec;border-radius:18px;background:linear-gradient(135deg,#f7edff,#fff9e9)}
.hatch-guide>span{font-size:2rem}.hatch-guide p{margin:0;color:#6a5675;font-size:.68rem;line-height:1.55}.hatch-guide b{display:block;margin-bottom:2px;color:#523963;font-size:.76rem}
.incubator-card{display:grid;grid-template-columns:150px 1fr auto;align-items:center;gap:17px;margin-bottom:20px;padding:16px;border:3px solid #fff;border-radius:23px;background:linear-gradient(135deg,#ecfbff,#d9eff7);box-shadow:0 8px 0 #9bbcc8,0 16px 30px #31596120}
.incubator-card.active{background:linear-gradient(135deg,#fff8d6,#e9f7ff)}
.incubator-card.ready{background:linear-gradient(135deg,#fff4b4,#e7ffd6);box-shadow:0 8px 0 #a9bd69,0 16px 32px #6d8d3840}
.incubator-art{position:relative;display:grid;place-items:center;width:145px;height:125px;border:3px solid #b4d5df;border-radius:24px;background:linear-gradient(#dff7ff,#b7dfec);box-shadow:inset 0 8px 18px #fff8,0 5px 0 #81aebb;overflow:hidden}
.incubator-art:before{content:"";position:absolute;inset:12px 22px 32px;border:4px solid #fff;border-radius:50% 50% 42% 42%;background:#ffffff66;box-shadow:inset 0 0 18px #6bc7e64d}
.incubator-art>span{position:relative;z-index:2;font-size:3.6rem;animation:incubatorFloat 1.8s ease-in-out infinite alternate}
.incubator-art>i{position:absolute;left:18px;right:18px;bottom:29px;height:8px;border-radius:99px;background:#7ab6c9;box-shadow:0 0 13px #72d4ef}
.incubator-art>b{position:absolute;bottom:8px;color:#356978;font-size:.55rem;letter-spacing:.15em}
@keyframes incubatorFloat{from{transform:translateY(2px) rotate(-2deg)}to{transform:translateY(-4px) rotate(2deg)}}
.incubator-copy small{color:#68858e;font-size:.6rem;font-weight:900}.incubator-copy h3{margin:2px 0 4px;font-size:1.05rem}.incubator-copy p{margin:0 0 10px;color:#6f7f82;font-size:.64rem;line-height:1.45}
.hatch-meter{height:14px;border:3px solid #fff;border-radius:999px;background:#799da8;box-shadow:0 3px 0 #547783;overflow:hidden}.hatch-meter i{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#78d1ef,#ffe069,#77dd82);transition:width .25s linear}
.incubator-copy strong{display:block;margin-top:6px;color:#315c65;font-size:.7rem}
.hatch-claim{min-width:145px;padding:13px 15px;border:0;border-radius:16px;color:#fff;background:linear-gradient(#78d85f,#43a83e);box-shadow:0 6px 0 #2b7b2e;font-size:.68rem;font-weight:1000}.hatch-claim:disabled{color:#82969b;background:#c8d6d9;box-shadow:0 5px 0 #9eafb3}
.section-mini-heading{display:flex;justify-content:space-between;align-items:end;margin:20px 2px 10px}.section-mini-heading small{color:#8d75a0;font-size:.51rem;font-weight:1000;letter-spacing:.14em}.section-mini-heading h3{margin:2px 0 0;font-size:1rem}.section-mini-heading>span{padding:5px 8px;border:2px solid #d6dfd7;border-radius:999px;color:#617268;background:#f5faf4;font-size:.52rem;font-weight:900}
.hatch-egg-grid,.chicken-shop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:11px}
.hatch-egg-card,.chicken-shop-card{position:relative;display:flex;flex-direction:column;min-height:250px;padding:13px;border:2px solid #eadfca;border-radius:19px;background:linear-gradient(#fffdf7,#fff5df);box-shadow:0 5px 0 #dccba8}
.hatch-egg-card.rainbow{background:linear-gradient(145deg,#fff3fa,#edf7ff,#f1ffe8)}.hatch-egg-card.golden{background:linear-gradient(145deg,#fff7c5,#ffe08c)}
.hatch-egg-art{display:grid;place-items:center;height:68px;font-size:2.7rem;filter:drop-shadow(0 5px 3px #64491d35)}
.hatch-egg-card small,.chicken-shop-card small{color:#9b7d55;font-size:.56rem;font-weight:1000}.hatch-egg-card h3,.chicken-shop-card h3{margin:3px 0 5px;font-size:.88rem}.hatch-egg-card p,.chicken-shop-card p{margin:0;color:#7a6d5f;font-size:.57rem;line-height:1.4}
.hatch-odds{display:flex;flex-wrap:wrap;gap:4px;margin:10px 0}.hatch-odds .odds{padding:3px 5px;border-radius:999px;background:#fff;border:1px solid #e2d6c4;color:#705d49;font-size:.44rem;font-weight:900}.hatch-odds .rarity-전설{color:#8b5e00;background:#fff0a8}.hatch-odds .rarity-영웅{color:#593891;background:#eee0ff}.hatch-odds .rarity-희귀{color:#1c6f86;background:#dff7ff}
.hatch-egg-card button,.chicken-shop-card button{margin-top:auto;padding:9px 8px;border:0;border-radius:12px;color:#fff;background:#7651bd;box-shadow:0 4px 0 #4f3584;font-size:.56rem;font-weight:1000}.hatch-egg-card button:disabled,.chicken-shop-card button:disabled{color:#8b918c;background:#d7ddd8;box-shadow:0 4px 0 #b3bbb5}
.shop-chicken-icon{display:grid;place-items:center;height:65px;font-size:2.6rem}.chicken-shop-card em{margin:8px 0;color:#6e6a63;font-size:.53rem;font-style:normal;font-weight:900}.chicken-shop-card.rarity-전설{border-color:#e3bd45;background:linear-gradient(#fff7c2,#ffe58a)}.chicken-shop-card.rarity-영웅{border-color:#c9a9e9;background:linear-gradient(#fbf3ff,#eee1ff)}.chicken-shop-card.rarity-희귀{border-color:#9fd6e3;background:linear-gradient(#f0fcff,#ddf3f8)}
.hatch-history{display:flex;gap:8px;overflow-x:auto;padding:3px 1px 8px}.hatch-history-item{display:flex;align-items:center;gap:8px;flex:0 0 155px;padding:9px;border:2px solid #dfd7c9;border-radius:14px;background:#fff}.hatch-history-item>span{font-size:1.5rem}.hatch-history-item b,.hatch-history-item small{display:block}.hatch-history-item b{font-size:.65rem}.hatch-history-item small{margin-top:2px;color:#85786d;font-size:.48rem}
.chick-growth-card{grid-column:1/-1;display:flex;align-items:center;gap:14px;padding:17px;border:2px solid #efcf5c;border-radius:18px;background:linear-gradient(135deg,#fff7c3,#fffdf0)}.chick-growth-card>span{font-size:2.8rem}.chick-growth-card div{flex:1}.chick-growth-card small{color:#8a6d27;font-size:.54rem;font-weight:1000}.chick-growth-card h3{margin:3px 0;font-size:.95rem}.chick-growth-card p{margin:0;color:#796d51;font-size:.59rem;line-height:1.4}.chick-growth-card>b{padding:7px 9px;border-radius:999px;color:#65501b;background:#ffe078;font-size:.55rem}

@media(max-width:760px){
  .incubator-card{grid-template-columns:92px 1fr;gap:10px;padding:11px}.incubator-art{width:88px;height:96px}.incubator-art>span{font-size:2.6rem}.incubator-art:before{inset:10px 13px 28px}.hatch-claim{grid-column:1/3;width:100%}
  .hatch-egg-grid,.chicken-shop-grid{grid-template-columns:repeat(2,1fr);gap:7px}.hatch-egg-card,.chicken-shop-card{min-height:232px;padding:10px}.hatch-guide{padding:10px}.hatch-guide p{font-size:.57rem}
}
@media(max-width:390px){.hatch-egg-grid,.chicken-shop-grid{grid-template-columns:1fr 1fr}.nav-button{min-width:50px}.nav-button b{font-size:.48rem}}

@media(prefers-reduced-motion:reduce){
  .fever-rays,.fever-title,.fever-combo,.fever-starting,.fever-ready.imminent,.incubator-art>span{animation:none!important}
  .fever-active .roaming-chicken{animation-duration:1.2s!important}
}
