:root{color-scheme:dark;--ink:#102d32;--paper:#f9f6e9;--muted:#a7b9b6;--mint:#d5efac;--coral:#efb6a2;--line:#ffffff1a;font-family:ui-rounded,"Avenir Next","Trebuchet MS",system-ui,sans-serif}
*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body{margin:0;background:#0c2228;color:var(--paper);overscroll-behavior:none}button,a{touch-action:manipulation}button{font:inherit;cursor:pointer;color:inherit;border:0}button:focus-visible,a:focus-visible{outline:3px solid #efd49a;outline-offset:4px}button:disabled{cursor:default;opacity:.45}a{color:inherit;text-decoration:none}.hidden{display:none!important}.app{height:100svh;min-height:480px;max-width:1800px;margin:auto;padding:0 36px;display:flex;flex-direction:column}.topbar{height:95px;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.brand{display:flex;gap:12px;align-items:center}.brand img{width:47px;height:47px}.brand>span{font-size:23px;letter-spacing:-1px;font-weight:500;line-height:1.03}.brand b{font-weight:800}.brand small{display:block;font-size:8px;letter-spacing:2.2px;font-weight:600;color:#b0c6bd;margin-top:9px}.top-actions{display:flex;align-items:center;gap:15px}.quiet{background:transparent;font-size:12px;color:#cad5cb;display:flex;gap:12px;align-items:center}.quiet>span{border:1px solid #698482;border-radius:50%;width:20px;height:20px;line-height:18px}.icon-button{position:relative;background:#ffffff08;border:1px solid #ffffff1c;border-radius:50%;width:38px;height:38px;font-size:21px}.icon-button i{position:absolute;width:22px;height:1px;background:#edc3b3;transform:rotate(-48deg);left:8px;top:18px}.arena{flex:1;position:relative;overflow:hidden;min-height:0;background:#17383b;border:1px solid #496862;border-radius:20px;isolation:isolate}.arena canvas{width:100%;height:100%;display:block;outline:0;touch-action:none}.overlay{position:absolute;inset:0}.home{display:flex;align-items:center;overflow:hidden}.hero-art{position:absolute;inset:0;background:radial-gradient(ellipse at 78% 65%,#6b7064,#1d4f49 45%,#102d32);background-size:cover;background-position:center}.art-loaded .hero-art{background-image:url('assets/panda-garden.webp')}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#0b282cf2 0%,#0b282cc9 25%,#102d3280 45%,transparent 73%),linear-gradient(0deg,#0a292b9c,transparent 24%)}.home-content{z-index:1;width:63%;padding:32px 5.5% 65px}.eyebrow{font-size:10px;letter-spacing:2.7px;font-weight:700;display:flex;align-items:center;gap:8px;color:#d6e6ba}.eyebrow i{height:6px;width:6px;background:var(--mint);border-radius:50%;box-shadow:0 0 12px #c3ed9f}h1{font-family:Georgia,"Times New Roman",serif;font-size:clamp(43px,5.4vw,83px);line-height:1.04;font-weight:400;letter-spacing:-3px;margin:24px 0}h1 em{font-style:italic;color:#d9edbc;white-space:nowrap}.home p{font-size:14px;color:#d0dbcd;line-height:1.9;margin-bottom:29px}.primary{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:17px 25px;background:#d8edb1;color:#193c33;border-radius:50px;font-weight:800;font-size:15px;box-shadow:0 6px 22px #091d2938;transition:transform .2s,background .2s}.primary:hover{background:#e7f7c6;transform:translateY(-2px)}.primary span{font-size:24px;line-height:20px}.continue{display:block;background:transparent;padding:14px 0 0;font-size:12px;color:#e2cbb7}.home-details{display:flex;gap:12px;align-items:center;margin-top:24px;color:#b4c5ba;font-size:10px}.home-details b{color:#8f9c80}.hero-caption{position:absolute;bottom:27px;left:5.5%;font-size:9px;letter-spacing:2px;color:#b2c6bd;display:flex;align-items:center;gap:14px}.hero-caption span{font-size:10px;letter-spacing:1px;border:1px solid #a9bc8e4a;border-radius:20px;padding:7px 9px}.hero-caption i{color:#e9d190;font-style:normal}.garden-link{position:absolute;right:28px;bottom:28px;display:flex;gap:16px;background:#0c292996;padding:12px 18px;border:1px solid #ffffff29;border-radius:30px;font-size:11px;backdrop-filter:blur(8px)}footer{height:58px;display:flex;align-items:center;justify-content:space-between;color:#91aaa4;font-size:10px;flex-shrink:0}.key{border:1px solid #47615e;padding:3px 5px;border-radius:4px;margin:0 2px;color:#bacdbf;font-size:10px}.wide{margin-left:13px;font-size:8px;letter-spacing:1px;padding:4px 7px}.footer-motto{font-size:10px}.footer-motto b{color:#d3cf97;margin-left:9px}.hud{position:absolute;left:22px;right:22px;top:18px;display:flex;justify-content:space-between;align-items:flex-start;pointer-events:none;gap:10px}.level-chip,.build-chip,.lives-chip{background:#102c32c9;border:1px solid #bdd9b028;border-radius:14px;padding:10px 14px;backdrop-filter:blur(8px)}.level-chip span{display:block;font-size:9px;letter-spacing:2px;color:#adcbaf}.level-chip strong{display:block;font-size:13px;margin-top:4px;font-weight:600}.build-chip{display:flex;gap:16px;font-size:16px;color:#d4ecb2;align-items:center}.build-chip span:last-child{color:#ffc2b2}.divider{height:20px;width:1px;background:#a4c8ad29}.lives-chip{text-align:right;color:#f2bdac;letter-spacing:3px;font-size:16px}.lives-chip small{display:block;font-size:9px;letter-spacing:1px;color:#bfd3c5;margin-top:4px}.objective{position:absolute;top:93px;left:50%;transform:translateX(-50%);border:1px solid #f5dfad30;color:#e7e5c9;background:#102c32bf;border-radius:30px;font-size:12px;padding:9px 17px;white-space:nowrap;pointer-events:none;max-width:90%;text-align:center}.toast{position:absolute;bottom:24px;left:50%;transform:translate(-50%,14px);opacity:0;transition:opacity .25s,transform .25s;background:#123d3ded;border:1px solid #c6e2b451;padding:12px 22px;border-radius:30px;color:#e8efd2;font-size:12px;pointer-events:none;text-align:center;max-width:90%;width:max-content}.toast.show{opacity:1;transform:translate(-50%,0)}.launch-button{position:absolute;bottom:25px;left:50%;transform:translateX(-50%);padding:16px 26px;color:#213c36;background:#f2d695;font-weight:800;border-radius:30px;box-shadow:0 0 40px #eac67655;white-space:nowrap}.modal{background:#061e25a8;backdrop-filter:blur(9px);display:flex;align-items:center;justify-content:center;z-index:10;padding:20px}.modal-card{width:min(480px,100%);max-height:100%;overflow-y:auto;border-radius:22px;border:1px solid #96b29942;background:linear-gradient(145deg,#234749,#142e36);box-shadow:0 25px 100px #06182080;padding:35px;position:relative;text-align:center}.close-button{position:absolute;right:13px;top:9px;background:none;font-size:28px;color:#a3bab4;padding:0 6px}.modal h2{font-family:Georgia,serif;font-size:33px;line-height:1.15;font-weight:400;color:#eef0d5;margin:12px 0 16px}.modal p{color:#bfd0c7;font-size:13px;line-height:1.7}.modal .eyebrow{justify-content:center;font-size:9px}.modal .primary{margin-top:12px;justify-content:center}.instructions{display:grid;gap:16px;text-align:left;margin:24px 0}.instruction{display:flex;align-items:center;gap:15px}.instruction>span{font-size:26px;width:42px;height:42px;background:#ffffff09;border-radius:12px;display:grid;place-items:center;flex-shrink:0;color:#d8e8b5}.instruction div{font-size:12px;color:#b8ccc0;line-height:1.5}.instruction b{display:block;color:#f3ebd8;font-size:13px;margin-bottom:3px}.modes{display:flex;gap:7px;margin:20px 0 7px}.mode{flex:1;background:#ffffff08;border:1px solid #ffffff21;padding:12px 8px;border-radius:12px;color:#b9cec4;font-size:12px}.mode.selected{border-color:#b7d695;background:#b5d89619;color:#e6f4cf}.mode small{display:block;font-size:10px;font-weight:400;margin-top:4px;color:#abc0b4}.secondary{display:block;margin:16px auto 0;padding:8px 16px;background:transparent;color:#c3d6bf;font-size:12px}.garden-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-top:24px}.garden{min-height:76px;border:1px solid #afd19f2e;background:#ffffff08;border-radius:12px;padding:12px;color:#e1e9d3}.garden b{display:block;font-size:12px;font-weight:600;margin-top:8px}.garden small{font-size:10px;color:#dcce95;letter-spacing:3px}.stars{font-size:37px;letter-spacing:9px;color:#f2d294;margin:18px 0}.result-stats{display:flex;justify-content:center;gap:30px;margin:20px 0}.result-stats b{display:block;font-size:24px;color:#edf2d7;font-weight:500}.result-stats span{font-size:9px;letter-spacing:2px;color:#a7c4b6}.touch-controls{display:none;flex-shrink:0;align-items:center;justify-content:space-between;padding:12px 5px max(12px,env(safe-area-inset-bottom));height:98px}.direction-pad{display:flex;gap:10px}.touch-controls button{height:65px;width:65px;border:1px solid #7a9b8d60;background:#294746;color:#e1edcb;border-radius:20px;font-size:29px;touch-action:none;user-select:none;-webkit-user-select:none}.touch-controls button.pressed{background:#69937b;transform:scale(.94)}.touch-controls .fly-control{width:100px;background:#d7e8a9;color:#203e35;display:flex;align-items:center;justify-content:center;gap:9px}.fly-control span{font-size:13px;font-weight:900;letter-spacing:1px}.touch-tip{font-size:8px;letter-spacing:1.2px;color:#7f9d91;margin:0 8px}.playing .touch-controls:not(.hidden){display:flex}.modal .install-note{font-size:10px;color:#90ada3;border-top:1px solid #ffffff16;margin-top:22px;padding-top:15px}.reduced-motion *{scroll-behavior:auto!important;transition:none!important}
@media(min-width:900px){.playing .touch-controls{display:none!important}}
@media(max-width:900px){.app{padding:0 20px}.topbar{height:80px}.home-content{width:75%;padding-left:6%}.home h1{font-size:56px}.home p{font-size:12px}.footer-motto{display:none}.hero-art{background-position:60% center}.home-details{font-size:9px}.quiet{font-size:11px}.hud{left:13px;right:13px}}
@media(pointer:coarse){.playing .touch-controls:not(.hidden){display:flex!important}.playing footer{display:none}.auto-pick{display:none}}
@media(max-width:600px){.app{padding:0 12px;min-height:540px}.topbar{height:72px}.brand{gap:8px}.brand img{width:39px;height:39px}.brand>span{font-size:19px}.brand small{font-size:6px;letter-spacing:1.7px;margin-top:6px}.top-actions{gap:7px}.quiet{font-size:0;gap:0}.quiet>span{font-size:12px;width:29px;height:29px;line-height:27px}.icon-button{width:32px;height:32px;font-size:19px}.icon-button i{left:5px;top:15px}.arena{border-radius:16px}.home{align-items:flex-start}.home-content{width:100%;padding:32px 25px 0}.eyebrow{font-size:8px;letter-spacing:2px}.home h1{font-size:43px;letter-spacing:-1.8px;margin:19px 0 14px}.home p{font-size:11px;line-height:1.7;max-width:280px;margin:0 0 20px}.home .primary{padding:13px 20px;font-size:13px;gap:28px}.home-details{font-size:8px;gap:8px;margin-top:14px}.hero-art{background-position:68% center;top:20%;background-size:auto 100%}.hero-shade{background:linear-gradient(180deg,#0e2c30 0%,#0e2c30ed 28%,#0e2c3070 53%,transparent 75%,#0e2c3070 100%)}.hero-caption{left:22px;bottom:21px;gap:8px;font-size:7px;letter-spacing:1px}.hero-caption span{font-size:8px}.garden-link{right:16px;bottom:21px;font-size:0;padding:9px 13px}.garden-link span{font-size:17px}.hero-caption i{display:none}footer{height:42px;font-size:9px}.key{font-size:8px}.hud{top:12px;left:9px;right:9px;gap:5px}.level-chip,.build-chip,.lives-chip{padding:8px 9px;border-radius:11px}.level-chip strong{font-size:10px}.level-chip span{font-size:8px;letter-spacing:1px}.build-chip{font-size:13px;gap:7px}.lives-chip{font-size:12px;letter-spacing:1px}.lives-chip small{font-size:7px}.objective{font-size:10px;padding:8px 12px;top:78px;white-space:normal;min-width:200px}.modal{padding:13px}.modal-card{padding:28px 22px}.modal h2{font-size:28px}.modal p{font-size:12px}.touch-tip{display:none}.toast{font-size:10px;bottom:13px}.launch-button{font-size:12px;padding:13px 20px;bottom:16px}}
@media(max-height:550px) and (orientation:landscape){.app{min-height:300px;padding:0 15px}.topbar{height:48px}.brand img{width:30px;height:30px}.brand>span{font-size:17px}.brand small{display:none}.home-content{padding:15px 5% 42px;width:70%}.home h1{font-size:39px;margin:12px 0}.home p{font-size:10px;margin:0 0 12px}.home .primary{padding:10px 17px;font-size:12px}.home .eyebrow{font-size:8px}.home-details{display:none}.hero-caption{bottom:13px}.garden-link{bottom:12px;padding:8px 15px}footer{height:30px}.playing .touch-controls:not(.hidden){position:absolute;left:25px;right:25px;bottom:15px;pointer-events:none;padding:0;height:60px;z-index:5}.touch-controls button{pointer-events:auto;height:52px;width:56px;background:#294746b8}.touch-controls .fly-control{width:78px;background:#d7e8a9cc}.touch-tip{display:none}.hud{top:9px}.level-chip,.lives-chip{padding:7px 11px}.objective{top:64px;font-size:10px}.toast{bottom:10px}.launch-button{bottom:12px}.modal-card{max-width:530px;padding:23px}.modal h2{font-size:25px;margin:9px 0}.instructions{gap:8px;margin:14px 0}.instruction>span{height:30px;width:34px;font-size:20px}.instruction div{font-size:10px}.instruction b{font-size:11px}.modal .install-note{display:none}.modal .primary{padding:11px 23px}.garden-grid{grid-template-columns:repeat(4,1fr);gap:7px;margin:13px 0}.garden{min-height:57px;padding:8px}.garden b{font-size:10px}}

.brand img.official-logo{width:67px;object-fit:contain;background:white;padding:2px;border-radius:8px;height:51px}
@media(max-width:600px){.brand img.official-logo{width:50px;height:40px}}
@media(max-height:550px) and (orientation:landscape){.brand img.official-logo{width:42px;height:33px}}
.sound-control{position:relative;display:inline-flex;align-items:center}.sound-status{position:absolute;top:calc(100% + 4px);left:50%;transform:translateX(-50%);white-space:nowrap;font-size:9px;line-height:1;color:#c7d7bd;pointer-events:none}
@media(max-height:550px) and (orientation:landscape){.sound-status{top:calc(100% + 1px);font-size:7px}.sound-control .icon-button{width:30px;height:30px;font-size:18px}}

/* Three distinct build ingredients remain legible on narrow phones. */
.build-chip{gap:15px}.build-chip>span{display:flex;flex-direction:column;align-items:center;gap:4px}.build-chip small{font-size:7px;letter-spacing:.6px;color:#bdd0bc}.build-chip strong{font-size:15px;font-weight:600;white-space:nowrap}.build-chip>span:nth-child(2){color:#ffc2b2}.build-chip>span:last-child{color:#e7c68d}
@media(max-width:600px){.build-chip{gap:8px;padding:8px}.build-chip small{font-size:6px;letter-spacing:.15px}.build-chip strong{font-size:12px}.level-chip{max-width:95px}.level-chip strong{line-height:1.25}.lives-chip{padding-left:7px;padding-right:7px}}

/* The renamed game stays readable beside touch/audio buttons on small phones. */
@media(max-width:600px){.brand>span{font-size:17px;letter-spacing:-.65px}.brand b{display:block}.brand small{margin-top:4px}}

/* A separate total makes the active six-supply build and whole party unambiguous. */
.build-chip{display:grid;grid-template-columns:repeat(3,1fr);column-gap:15px;row-gap:6px;padding-top:8px}.build-progress{grid-column:1/-1;text-align:center;font-size:8px;letter-spacing:.9px;color:#f4e4b2;white-space:nowrap}.garden em{display:block;font-style:normal;font-size:10px;color:#b5cec1;margin-top:5px}.objective{top:98px}
@media(max-width:600px){.build-chip{column-gap:8px;row-gap:5px;padding-top:7px}.build-progress{font-size:7px;letter-spacing:.35px}.objective{top:85px;font-size:9px;max-width:94%;min-width:190px}.level-chip{max-width:86px}.level-chip strong{font-size:9px}}
@media(max-height:550px) and (orientation:landscape){.build-chip{padding:5px 10px;row-gap:3px}.build-chip>span{gap:2px}.build-chip strong{font-size:12px}.build-chip small{font-size:6px}.build-progress{font-size:7px}.objective{top:74px}}
