*{box-sizing:border-box}body{margin:0;background:#063b4e;color:#f0ffe9;font-family:system-ui,-apple-system,'Apple SD Gothic Neo',sans-serif;overflow:hidden}#sea{display:block;width:100%;height:100dvh;touch-action:none}button{font:inherit;cursor:pointer;color:inherit;border:1px solid #d8fbe43d;background:#103d4bbd;border-radius:40px;touch-action:manipulation}header{position:absolute;top:max(22px,env(safe-area-inset-top));left:28px;right:28px;display:flex;justify-content:space-between;align-items:center;pointer-events:none;z-index:8}header button{pointer-events:auto;width:42px;height:42px}.eyebrow{font-size:9px;letter-spacing:2px;color:#c9e8d5}h1{margin:7px 0;font-size:24px;text-shadow:0 2px 15px #002934}h1 small{font-size:11px;font-weight:400;margin-left:10px;color:#c1dcd4}.stats{position:absolute;left:28px;top:110px;width:250px;background:#063744a8;backdrop-filter:blur(8px);padding:15px 18px;border:1px solid #d8fff21a;border-radius:16px;pointer-events:none}.stats>span{font-size:12px;color:#d9ecb9}.stats strong{display:block;font-size:28px;margin:6px 0}.stats strong small{font-size:10px;font-weight:400;opacity:.7}.track{height:4px;background:#ffffff25;border-radius:5px}.track i{display:block;height:100%;width:0;background:#d9f6a7;transition:width .3s}.stats p{font-size:11px;margin:9px 0;color:#d9eccc}#steps{display:flex;justify-content:space-between;font-size:8px;opacity:.7}#steps .done{color:#efff97;opacity:1}#mission{position:absolute;right:28px;top:118px;display:grid;gap:7px;text-align:right;font-size:11px;text-shadow:0 2px 6px #001c25;pointer-events:none}#mission b{font-size:17px}#mission small{font-size:10px;color:#c8e9c5}#minimap{position:absolute;right:28px;bottom:85px;width:144px;height:88px;border:1px solid #d6f6cd55;border-radius:12px;opacity:.85}#toast{position:absolute;left:50%;top:35%;transform:translateX(-50%);font-size:12px;max-width:90%;text-align:center;pointer-events:none;background:#063444d9;padding:10px 18px;border-radius:30px;opacity:0;transition:opacity .3s}#dash{position:absolute;right:28px;bottom:185px;background:#d4ecb9;color:#183d3c;padding:13px 24px;font-weight:700}#dash:disabled{opacity:.5}footer{position:absolute;left:28px;right:28px;bottom:max(16px,env(safe-area-inset-bottom));display:flex;align-items:center;justify-content:space-between;font-size:10px;color:#d1e4d6;text-shadow:0 2px 5px #002b33}#reset{border:0;padding:9px;background:#05344090}#joystick{position:absolute;bottom:95px;left:30px;width:104px;height:104px;border:1px solid #dbffdf66;border-radius:50%;background:#0e46547d;touch-action:none;display:none;user-select:none}#joystick i{position:absolute;left:31px;top:31px;width:40px;height:40px;border-radius:50%;background:#d2eebda6;box-shadow:0 0 20px #b6ffc233}#joystick span{position:absolute;top:110px;width:100%;text-align:center;font-size:10px;color:#d1e9d2}.overlay{position:absolute;inset:0;display:grid;place-items:center;background:#032d3abe;backdrop-filter:blur(10px);z-index:10}.welcome{text-align:center;padding:24px;max-width:530px}.welcome h2{font-size:40px;font-weight:600;letter-spacing:-1.8px;line-height:1.25;margin:14px 0}.welcome p{font-size:13px;line-height:1.9;color:#c4ded6}.welcome button{display:block;background:#d4ecb9;color:#163c37;width:270px;max-width:90vw;padding:17px;margin:25px auto 15px;border:0}.welcome small{font-size:10px;color:#b5d8c9}.portrait{height:170px;width:190px;margin:0 auto;background-image:url('assets/creatures.png');background-size:200% 200%;background-repeat:no-repeat;filter:drop-shadow(0 0 23px #9bece68c);animation:float 3s ease-in-out infinite}.p0{background-position:0 0}.p1{background-position:100% 0}.p2{background-position:0 100%}.p3{background-position:100% 100%}#evolution{background:radial-gradient(circle,#236266e8,#061d34ed)}#evolution .portrait{width:230px;height:230px}#belly{background:#482134eb}#bellyTime{font-size:28px;color:#ffdfa9}#belly .track{margin:18px auto;width:240px}#escape{font-size:24px;user-select:none}#escape span{font-size:12px}#paused{z-index:12}body.playing header{z-index:11}[hidden]{display:none!important}@keyframes float{50%{transform:translateY(-8px)}}@media(max-width:600px){header{left:18px;right:18px;top:max(17px,env(safe-area-inset-top))}.eyebrow{font-size:7px;letter-spacing:1.5px}h1{font-size:20px}h1 small{font-size:10px}.stats{top:88px;left:16px;width:205px;padding:11px 13px}.stats strong{font-size:22px}.stats p{font-size:10px}#steps{font-size:7px}#mission{top:228px;left:20px;right:auto;text-align:left;gap:4px;font-size:10px}#mission b{font-size:13px}#mission small{font-size:9px}#joystick{display:block;left:22px;bottom:85px}#dash{right:20px;bottom:100px;padding:16px 22px}#minimap{width:100px;height:62px;top:93px;right:16px;bottom:auto}footer{left:18px;right:18px}#hint{max-width:240px;font-size:9px}#toast{top:44%;font-size:11px;width:max-content;max-width:85%}.welcome h2{font-size:32px}.portrait{width:165px;height:165px}.welcome p{font-size:12px}}@media(pointer:coarse){#joystick{display:block}}
/* Minimal play screen: detail panels only appear on request. */
header.minimal{top:max(14px,env(safe-area-inset-top));left:16px;right:16px;align-items:flex-start}header.minimal .growth{pointer-events:auto;position:relative;width:155px;height:42px;border-radius:22px;background:#06364488;backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:space-between;padding:9px 15px;font-size:11px;overflow:hidden}.growth b{font-size:13px;font-weight:500}.growth .track{position:absolute;bottom:0;left:0;right:0;height:2px;border-radius:0;background:#d2ecc322}.growth .track i{background:#cde5b9}header.minimal nav{display:flex;gap:7px}header.minimal nav button{height:34px;width:34px;font-size:14px;background:#093e4c80;border:1px solid #d0f5dc2b}#minimap{right:17px;bottom:20px;top:auto;width:74px;height:45px;opacity:.55;border-radius:8px;pointer-events:none}#dash{bottom:99px;right:23px;width:55px;height:55px;padding:0;font-size:20px;background:#cfe7b8a3;border:1px solid #e1fbdc44}#joystick{opacity:.48;bottom:95px;width:96px;height:96px}#joystick i{left:27px;top:27px}#toast{top:20%;background:#093644bb;font-size:11px;padding:8px 14px}.portrait{background-image:url('assets/foodweb.png');background-size:300% 300%;filter:drop-shadow(0 0 15px #b6eacb33)}.p0{background-position:0 0}.p1{background-position:50% 0}.p2{background-position:100% 0}.p3{background-position:0 50%}.p4{background-position:50% 50%}.p5{background-position:100% 50%}.details{max-width:560px;max-height:95dvh;overflow:auto}.details h2{font-size:25px}.details #steps{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;font-size:11px;opacity:1}.details #steps span{background:#d5eec01a;border-radius:9px;padding:10px}.details #steps .done{color:#e6ffc0;background:#d5eec030}.details .explain{font-size:11px;line-height:1.9}.details #reset{background:transparent;color:#adc8bf;font-size:11px;padding:7px;margin:0 auto}.details small{display:block;font-size:9px}#details{z-index:12}@media(max-width:600px){header.minimal .growth{width:143px;height:36px;font-size:10px}header.minimal nav{gap:5px}header.minimal nav button{height:32px;width:32px}#minimap{top:auto;bottom:18px;right:18px;width:70px;height:43px}#joystick{bottom:75px;left:22px}#dash{bottom:94px;right:23px}#toast{top:17%;font-size:10px}.welcome h2{font-size:29px}.details #steps{font-size:10px}.details p{font-size:11px}}
/* One slim classic-game HUD; everything else lives in the details panel. */
header.minimal{top:auto!important;bottom:0;left:0;right:0;height:calc(54px + env(safe-area-inset-bottom));padding:8px 18px calc(8px + env(safe-area-inset-bottom));align-items:center;background:linear-gradient(0deg,#072d39ea,#163b43b8);border-top:1px solid #c6dcb32b;backdrop-filter:blur(7px);pointer-events:none}header.minimal .growth{width:180px;height:32px;padding:6px 13px;border-radius:7px;border-color:#c0d3ab45;background:#061e28a3;font-size:11px}.growth .track{height:3px;box-shadow:0 0 7px #b8efa31c}header.minimal nav{gap:8px}header.minimal nav button{width:31px;height:31px;border-radius:7px;font-size:14px;background:#122d34c4;border-color:#c0d3ab45}#minimap{position:static!important;display:block;width:180px!important;height:110px!important;opacity:.9;margin:10px auto 16px;border-radius:8px}.details{padding-top:18px;padding-bottom:18px}.details h2{margin:10px 0;font-size:21px}.details #steps{gap:5px}.details #steps span{padding:7px}.details .explain{margin:10px 0;font-size:10px}.details #closeInfo{margin:15px auto 5px;padding:12px}#joystick{bottom:85px}#dash{bottom:100px}#toast{top:12%}@media(max-width:600px){header.minimal{height:calc(50px + env(safe-area-inset-bottom));padding-left:14px;padding-right:14px}header.minimal .growth{width:153px;height:31px;font-size:10px}header.minimal nav{gap:6px}header.minimal nav button{height:29px;width:29px}#joystick{bottom:82px}#dash{bottom:96px}#minimap{width:148px!important;height:90px!important}.details #steps{font-size:9px}.details h2{font-size:20px}}
header.minimal{gap:12px}.quickstats{display:flex;gap:8px;margin-right:auto;pointer-events:auto}.quickstats button{display:flex;gap:7px;align-items:center;justify-content:center;min-width:48px;width:auto;height:31px;padding:4px 9px;border-radius:7px;background:#122d34c4;border-color:#c0d3ab45;font-size:12px}.quickstats span{color:#d6eab6;font-size:14px}.quickstats b{font-size:11px;font-weight:500}header.minimal .growth{width:230px;flex-shrink:0}.growth b{font-size:11px}#shortStage{font-size:10px}@media(max-width:600px){header.minimal{gap:6px;padding-left:10px;padding-right:10px}header.minimal .growth{width:auto;flex:1;min-width:123px;padding-left:9px;padding-right:9px;gap:5px}#shortStage{font-size:8px}.growth b{font-size:9px}.quickstats{gap:4px;margin:0}.quickstats button{min-width:32px;gap:3px;padding:3px 4px;height:29px}.quickstats b{font-size:9px}.quickstats span{font-size:11px}header.minimal nav{gap:4px}header.minimal nav button{width:27px;height:29px}}

/* Original character evolution portraits. */
.portrait{background-image:url("assets/hero-v2.png");background-size:300% 200%}.portrait.p0{background-position:0 0}.portrait.p1{background-position:50% 0}.portrait.p2{background-position:100% 0}.portrait.p3{background-position:0 100%}.portrait.p4{background-position:50% 100%}.portrait.p5{background-position:100% 100%}
