@font-face{font-family:Pretendard;src:url(/fonts/Pretendard-Regular.woff) format("woff");font-weight:400;font-display:swap}@font-face{font-family:CookieRun;src:url(/fonts/CookieRun-Regular.woff) format("woff");font-weight:400;font-display:swap}:root{--ink: #6E5A50;--ink-soft: #A2938B;--card: #FFFDF8;--card-edge: #F0E2D2;--accent: #F19FB0;--gold: #F3C74F;--leaf: #7FB77E;--leaf-dark: #4E8F52;--glass: rgba(255, 255, 255, .52);--glass-edge: rgba(255, 255, 255, .78)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden;touch-action:manipulation;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;color:var(--ink);font-family:Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}#app{width:100%;height:100%;position:relative;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}#sky{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;background:url(/assets/bg.png) center top / cover no-repeat}#sky:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#fffaf400,#fffaf40a 22%,#fffaf46b,#fff9f2ad 78%,#fff9f2d1)}#game-ui{position:relative;z-index:1;height:100%;display:flex;flex-direction:column}#hud{padding:16px 20px 6px;text-align:center}.petal-count{display:inline-flex;align-items:center;gap:9px;font-family:CookieRun,Pretendard,sans-serif;font-size:38px;color:var(--ink);text-shadow:0 2px 10px rgba(255,255,255,.9),0 1px 0 rgba(255,255,255,.9)}.petal-icon{width:26px;height:26px;display:inline-block;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1));background:radial-gradient(circle at 50% 22%,var(--accent) 22%,transparent 23%),radial-gradient(circle at 78% 46%,var(--accent) 22%,transparent 23%),radial-gradient(circle at 66% 82%,var(--accent) 22%,transparent 23%),radial-gradient(circle at 34% 82%,var(--accent) 22%,transparent 23%),radial-gradient(circle at 22% 46%,var(--accent) 22%,transparent 23%),radial-gradient(circle at 50% 50%,var(--gold) 18%,transparent 19%)}#pps{margin-top:2px;font-size:14px;font-weight:600;color:var(--ink);text-shadow:0 1px 8px rgba(255,255,255,.9)}#pps-value{font-family:CookieRun,Pretendard,sans-serif}#boost-tag{display:inline-block;margin-top:8px;background:var(--gold);color:#7a5a12;padding:4px 14px;border-radius:20px;font-size:12px;font-weight:700;box-shadow:0 3px 10px #f3c74f8c;animation:pulse 1.4s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.06)}}.hidden{display:none!important}#garden-scroll{flex:1;overflow-y:auto;padding:8px 16px 14px}#garden{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;max-width:460px;margin:0 auto}#hint{text-align:center;color:var(--ink);font-size:12px;font-weight:600;margin:16px 0 6px;text-shadow:0 1px 8px rgba(255,255,255,.9)}.plot{position:relative;aspect-ratio:1 / 1;background:var(--glass);-webkit-backdrop-filter:blur(8px) saturate(1.15);backdrop-filter:blur(8px) saturate(1.15);border:1.5px solid var(--glass-edge);border-radius:26px;overflow:hidden;cursor:pointer;box-shadow:0 10px 22px #785a4629,inset 0 1px #ffffffb3}.plot.empty,.plot.add-plot{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border-style:dashed;border-color:#e2d2bee6;background:#ffffff57;color:var(--ink-soft)}.empty-mark{font-size:42px;font-weight:300;line-height:1;color:var(--accent)}.empty-text,.add-cost{font-size:14px;font-weight:700}.add-plot .add-cost{font-family:CookieRun,Pretendard,sans-serif;color:var(--ink-soft)}.add-plot.affordable{border-color:var(--leaf);color:var(--leaf-dark);background:#e6f3e780}.add-plot.affordable .empty-mark{color:var(--leaf-dark)}.flower-wrap{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:flex-end;justify-content:center;padding:12% 10% 7%}.flower{max-width:100%;max-height:100%;object-fit:contain;object-position:bottom;transform-origin:center bottom;transform:scale(.5);transition:transform .55s cubic-bezier(.34,1.56,.64,1);filter:drop-shadow(0 7px 5px rgba(80,60,40,.2))}.plot[data-stage="1"] .flower{transform:scale(.72)}.plot[data-stage="2"] .flower{transform:scale(.9)}.plot[data-stage="3"] .flower{transform:scale(1)}.plot.bloomed .flower{filter:drop-shadow(0 7px 5px rgba(80,60,40,.2)) drop-shadow(0 0 12px color-mix(in srgb,var(--tone) 42%,transparent))}.plot.bloomed .flower-wrap{animation:sway 3.6s ease-in-out infinite;transform-origin:center bottom}@keyframes sway{0%,to{transform:rotate(-2.2deg)}50%{transform:rotate(2.2deg)}}.plot.watered .flower{animation:squash .36s ease}@keyframes squash{0%{transform:scale(1)}40%{transform:scale(1.1,.9)}to{transform:scale(1)}}.float-petal{position:absolute;bottom:42%;width:12px;height:12px;border-radius:50% 0 50% 50%;background:var(--tone, var(--accent));pointer-events:none;animation:float-up .9s ease-out forwards}@keyframes float-up{0%{transform:translateY(0) rotate(0);opacity:1}to{transform:translateY(-64px) rotate(150deg);opacity:0}}.grow-bar{position:absolute;bottom:9px;left:14%;width:72%;height:6px;background:#6e5a5024;border-radius:6px;overflow:hidden}.grow-fill{height:100%;width:0%;border-radius:6px;background:linear-gradient(90deg,var(--leaf),var(--leaf-dark));transition:width .3s linear}.lv-badge{position:absolute;top:9px;right:9px;background:var(--card);color:var(--ink);border:1.5px solid var(--card-edge);border-radius:14px;padding:3px 10px;font-size:12px;font-weight:700;cursor:pointer;box-shadow:0 2px 6px #96785a33}.lv-badge:active{transform:scale(.92)}#bottom-nav{display:flex;justify-content:space-around;background:#fffdf8d1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-top:1.5px solid var(--glass-edge);padding:9px 10px calc(8px + env(safe-area-inset-bottom));border-radius:24px 24px 0 0;box-shadow:0 -6px 20px #785a461f}.nav-btn{flex:1;background:none;border:none;cursor:pointer;font-family:inherit;display:flex;flex-direction:column;align-items:center;gap:5px;color:var(--ink-soft);font-size:11px;font-weight:700;padding:4px}.nav-btn:active{transform:scale(.94)}#nav-boost{color:#d9a21f}.nav-ico{width:24px;height:24px;position:relative}.ico-can{background:var(--gold);border-radius:6px 6px 9px 9px;transform:rotate(-8deg)}.ico-can:before{content:"";position:absolute;top:6px;right:-8px;width:12px;height:4px;background:var(--gold);border-radius:3px;transform:rotate(20deg)}.ico-book{background:var(--accent);border-radius:3px 6px 6px 3px}.ico-book:before{content:"";position:absolute;left:4px;top:3px;bottom:3px;width:2px;background:#ffffffbf}.ico-gear{background:var(--ink-soft);border-radius:50%;box-shadow:0 0 0 3px var(--card),0 0 0 5px var(--ink-soft)}.ico-gear:after{content:"";position:absolute;top:34%;right:34%;bottom:34%;left:34%;background:var(--card);border-radius:50%}#popup-container{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;pointer-events:none}#popup-container:not(:empty){pointer-events:auto}.popup-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#503c326b;display:flex;align-items:center;justify-content:center;padding:24px;animation:fade-in .2s ease}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.popup-box{background:var(--card);color:var(--ink);border-radius:26px;padding:22px;width:100%;max-width:340px;max-height:82vh;overflow-y:auto;box-shadow:0 20px 54px #785a4652;animation:pop-in .3s cubic-bezier(.34,1.56,.64,1)}@keyframes pop-in{0%{transform:scale(.85);opacity:0}to{transform:scale(1);opacity:1}}.popup-title{font-family:CookieRun,Pretendard,sans-serif;font-size:21px;text-align:center;margin-bottom:16px;color:var(--ink)}.thumb{width:46px;height:46px;object-fit:contain;flex:none}.row-list{display:flex;flex-direction:column;gap:8px}.row{display:flex;align-items:center;gap:10px;background:#fbf4e8;border:2px solid var(--card-edge);border-radius:18px;padding:8px 14px 8px 8px;cursor:pointer;font-family:inherit;text-align:left}.row:active{transform:scale(.98)}.row.locked{opacity:.5}.row-main{flex:1;display:flex;flex-direction:column}.row-name{font-size:15px;font-weight:700;color:var(--ink)}.row-sub{font-size:12px;color:var(--ink-soft)}.row-cost{font-family:CookieRun,Pretendard,sans-serif;font-size:15px;color:var(--accent)}.plot-info{text-align:center}.info-swatch{display:flex;justify-content:center;margin-bottom:8px}.info-swatch .thumb{width:108px;height:108px}.info-line{font-size:15px;color:var(--ink-soft);font-weight:600}.info-line.big{font-family:CookieRun,Pretendard,sans-serif;font-size:22px;color:var(--ink);margin:4px 0 16px}.primary-btn,.menu-btn{width:100%;border:none;cursor:pointer;font-family:inherit;border-radius:16px;padding:14px;font-size:15px;font-weight:700}.primary-btn{background:var(--accent);color:#fff;box-shadow:0 4px 12px #f19fb080}.primary-btn:active{transform:scale(.97)}.menu-btn{background:#fbf4e8;color:var(--ink);margin-bottom:10px}.menu-btn.on{background:#e6f3e7;color:var(--leaf-dark);box-shadow:inset 0 0 0 2px var(--leaf)}.menu-btn.danger{color:#c6564e}.collection-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.collect-cell{aspect-ratio:1;border-radius:18px;background:#fbf4e8;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;font-size:11px;font-weight:700;color:var(--ink);text-align:center;padding:4px}.collect-cell.unknown{background:#efe6d6;color:var(--ink-soft)}.collect-cell.unknown .q{font-size:26px}.collect-cell .thumb{width:62px;height:62px}.offline{text-align:center}.offline-text{font-size:15px;line-height:1.6;color:var(--ink)}.toast{position:fixed;top:calc(env(safe-area-inset-top) + 78px);left:50%;transform:translate(-50%,-12px);opacity:0;background:var(--ink);color:#fff;padding:10px 20px;border-radius:22px;font-size:14px;font-weight:600;z-index:1200;transition:all .3s ease;pointer-events:none;box-shadow:0 8px 20px #00000038}.toast.show{opacity:1;transform:translate(-50%)}#demo-banner{position:fixed;top:calc(env(safe-area-inset-top) + 8px);left:50%;transform:translate(-50%);background:#ffc800e6;color:#000;padding:4px 16px;border-radius:20px;font-size:12px;font-weight:700;z-index:500;pointer-events:none}#ota-loading{position:fixed;top:0;right:0;bottom:0;left:0;background:#f7dce6;display:flex;align-items:center;justify-content:center;z-index:9999}.ota-spinner{width:40px;height:40px;border:3px solid rgba(110,90,80,.2);border-top-color:var(--accent);border-radius:50%;animation:ota-spin .8s linear infinite}@keyframes ota-spin{to{transform:rotate(360deg)}}
