:root{font-family:"Arial Rounded MT Bold","Trebuchet MS",Arial,sans-serif;background:#b8e4df;color:#253735;--ink:#253735;--teal:#168378;--line:#253735;--pink:#e05b86}
body{background:#b8e4df}button{border:2px solid #253735;box-shadow:0 4px 0 #253735;border-radius:8px;transition:transform .15s,box-shadow .15s;background:#fffdf8;font-size:13px}
button:hover{background:#fff;transform:translateY(-2px);box-shadow:0 6px 0 #253735}button:active{transform:translateY(3px);box-shadow:0 1px 0 #253735}button:disabled{transform:none;box-shadow:0 3px 0 #253735;opacity:.5}svg.lucide{stroke-width:2.5}
.header{height:76px;padding:0 28px;background:#fffdf8;color:var(--ink);border-bottom:3px solid var(--ink);position:relative;z-index:12}.brand{color:var(--ink);font-size:28px;gap:10px}.brand img{width:48px;height:48px;border:2px solid var(--ink)}.brand small{color:#c84a73;font-size:8px}.balances{gap:12px}.balance{min-width:80px;justify-content:center;gap:8px;border:2px solid var(--ink);padding:9px 12px;border-radius:8px;background:#ffe175;color:var(--ink);box-shadow:0 3px 0 #253735;font-size:17px}.balance.water{color:var(--ink);background:#9be0ee}.header button{color:var(--ink);background:#f4bbd0;border:2px solid var(--ink);width:42px;height:40px;padding:8px}.header #shop{background:#b6eec5}.header #settings{background:#fffdf8}.header button:hover{background:#fff}
main{max-width:none;padding:0;position:relative}.game-layout{display:block}.room-area{position:relative}.stage{height:max(640px,calc(100svh - 110px));width:100%;aspect-ratio:auto;border-radius:0}.room-art{inset:0;background-size:200% 200%}.pet-heading{position:absolute;top:26px;left:28px;right:28px;z-index:6;pointer-events:none;align-items:flex-start;margin:0}.pet-heading .eyebrow{color:#253735;background:#ffe175;padding:5px 8px;display:inline-block;border:2px solid #253735;transform:rotate(-2deg);font-size:9px}h1{font-size:25px;margin:9px 0 0;color:white;text-shadow:2px 2px 0 #253735,-1px -1px 0 #253735,1px -1px 0 #253735,-1px 1px 0 #253735}.level{width:105px;position:relative;background:#fffdf8;border:2px solid var(--ink);border-radius:8px;padding:10px 10px 8px;box-shadow:3px 4px 0 #253735;font-size:10px;text-align:center}.level>svg{position:absolute;left:-16px;top:-13px;width:31px;height:31px;fill:#ffe175;color:#253735;transform:rotate(-12deg)}.level small{color:#516760}.level progress{height:7px;margin:7px 0 5px}
.needs{position:absolute;top:26px;left:50%;transform:translateX(-50%);width:450px;z-index:6;padding:0;border:0;gap:12px;margin:0}.need{background:#fffdf8;border:2px solid #253735;border-radius:8px;box-shadow:0 4px 0 #253735;padding:9px 10px 10px}.need-label{font-size:10px;gap:4px;flex-wrap:wrap;margin-bottom:8px}.need-label>svg{width:22px;height:22px;stroke:var(--ink);background:var(--meter);border-radius:50%;padding:3px}.need-label b{width:100%;font-size:11px;font-weight:900;margin:0;text-align:right}.need progress{height:9px;border:1px solid #253735;border-radius:5px;overflow:hidden}.need:nth-child(1){transform:rotate(-2deg)}.need:nth-child(4){transform:rotate(2deg)}
.rooms{position:absolute;left:24px;top:180px;z-index:8;display:grid;gap:13px;border:0;margin:0;width:94px}.rooms button{flex:none;flex-direction:column;white-space:normal;border:2px solid #253735;border-radius:8px;background:#fffdf8;box-shadow:0 4px 0 #253735;padding:12px 5px;font-size:10px;min-height:76px;gap:8px}.rooms svg{width:29px;height:29px}.rooms button:nth-child(1){background:#b8efd0}.rooms button:nth-child(2){background:#ffe175}.rooms button:nth-child(3){background:#9de3ef}.rooms button:nth-child(4){background:#f5bcd5}.rooms button.active{color:var(--ink);border-color:var(--ink);outline:3px solid white;outline-offset:3px;transform:rotate(-4deg)}
.room-label{display:none}.mood{right:160px;top:42px;border:2px solid #253735;background:#fffdf8;font-size:11px;padding:8px 12px;transform:rotate(2deg)}.speech{top:23%;max-width:40%;font-size:15px;padding:12px 19px;box-shadow:4px 5px 0 #253735;border-width:3px}.pet{height:88%;width:65%;left:17.5%;bottom:4%;box-shadow:none!important;transition:transform .25s;filter:drop-shadow(0 8px 0 #25373520)}.pet:hover{transform:translateY(-5px)}.pet.sleeping{transform:rotate(-8deg)}.pet>img{animation:breathe 2.6s ease-in-out infinite}.plant{left:13%;height:25%;width:12%;bottom:9%;box-shadow:none!important}.plant:hover{transform:rotate(-5deg)}.plant-badge{border:2px solid #253735;background:#ffe175;font-size:11px;box-shadow:0 3px 0 #253735;padding:5px 8px}.poster{top:20%}.float{font-size:32px;color:#ffe175;text-shadow:2px 3px #253735;left:58%}.play-hud{bottom:150px;background:#fffdf8;color:var(--ink);border:2px solid #253735;box-shadow:0 4px 0 #253735;font-size:15px}.play-hud button{box-shadow:none;color:var(--ink)}.toy{box-shadow:3px 4px 0 #253735}
aside{padding:0;border:0;position:static}.care-menu{position:absolute;z-index:9;bottom:66px;left:50%;transform:translateX(-50%);width:470px;text-align:center}.care-menu>.eyebrow,.care-copy{display:none}.care-menu h2{font-size:16px;color:white;text-shadow:1px 2px #253735;margin-bottom:12px}.actions{display:grid;grid-template-columns:1fr 1fr;gap:16px}.actions button{min-height:72px;display:grid;grid-template-columns:32px 1fr;text-align:left;gap:3px 10px;background:#ffe175;padding:11px 16px;font-size:15px}.actions button:nth-child(2){background:#f5b1cd}.actions button>svg{width:30px;height:30px;grid-row:1/3}.actions button small{margin:0;font-size:10px;font-weight:700;opacity:.7}.pantry{width:270px;margin:0 auto 12px;gap:9px}.food-choice{background:#fffdf8;font-size:11px;min-height:65px;padding:6px;gap:4px}.food-choice.active{background:#ffe175;border-color:#253735;padding:6px}.food-choice>svg{width:23px;height:23px}.food-choice small{color:var(--ink)}
.room-bottom{position:absolute;bottom:16px;left:24px;right:24px;z-index:8;color:#fff;font-weight:700;text-shadow:1px 1px #253735;margin:0}.room-bottom button{background:#fffdf8;color:var(--ink);padding:6px;box-shadow:0 3px 0 #253735}.room-bottom>span:not(.saved){font-size:11px}.saved{font-size:10px}.saved svg{stroke:white}
#journal-panel{position:absolute;z-index:11;right:24px;top:130px;width:285px;border:3px solid #253735;background:#fffdf8;box-shadow:5px 6px 0 #253735;border-radius:8px;padding:20px}.daily{margin:0;padding:0;border:0}.section-title h2{font-size:18px}.section-title>span{background:#ffe175;border:2px solid #253735;padding:5px;font-weight:bold;color:var(--ink)}.task{font-size:12px;padding:16px 0;border-bottom:1px dashed #bccac3}.task>svg{color:#168378}.task small{color:#66766c}.task button{background:#ffe175;padding:6px}.garden-summary{padding-top:18px;border-top:0}.garden-summary b{font-size:12px}.garden-summary button{background:#b8efd0}.garden-summary span{color:#66766c}
footer{margin:0;padding:10px 24px;border:0;background:#fffdf8;color:#66766c;font-size:8px;min-height:34px}dialog{background:#fffdf8;border:3px solid #253735;box-shadow:7px 8px 0 #253735;max-height:90svh}dialog::backdrop{background:#183b3675}dialog h2{font-size:27px}.close{box-shadow:none;border:0}.shop-item{border:2px solid #253735;background:#f0f5e9}.shop-item:nth-child(2){background:#fff0c4}.shop-item:nth-child(3){background:#fce1e9}.shop-item>svg{width:48px;height:48px;color:#253735}.shop-item>button{background:#ffe175}.shop-tabs button{box-shadow:none}.shop-tabs button.active{background:#b8efd0;border:2px solid #253735;border-radius:8px}.dialog-actions button{background:#b8efd0}.dialog-actions .primary{background:#ffe175;color:#253735;border-color:#253735}
@media(min-width:1600px){main{padding:0}.game-layout{display:block}.stage{max-height:none}}
@media(max-width:1100px){.pet-heading{top:18px;left:18px;right:18px}.pet-heading>div:first-child{display:none}.level{margin-left:auto}.needs{top:18px;width:410px}.mood{top:124px;right:20px}.rooms{left:18px;width:80px;top:170px}.speech{top:25%;font-size:13px}.pet{height:83%;bottom:8%}.plant{left:13%}.stage{height:max(620px,calc(100svh - 110px))}}
@media(max-width:600px){.header{height:64px;padding:0 12px}.brand{font-size:20px;gap:6px}.brand img{width:34px;height:34px}.brand small{font-size:6px}.balances{gap:6px}.balance{min-width:0;padding:6px;font-size:12px;gap:3px}.balance>svg{width:14px;height:14px}.header button{width:30px;height:30px;padding:5px}.header button>svg{width:15px;height:15px}.header #settings{display:none}.stage{height:max(670px,calc(100svh - 94px))}.room-art{inset:0 -55%;background-size:200% 200%}.needs{top:17px;width:calc(100% - 24px);gap:7px}.need{padding:6px 6px 8px}.need-label{font-size:8px;gap:3px}.need-label>svg{width:20px;height:20px}.need-label b{margin:0;font-size:10px}.need progress{height:8px}.pet-heading{top:121px;left:auto;right:14px}.level{width:84px;padding:6px;font-size:9px}.level progress{margin:5px 0;height:5px}.level small{font-size:8px}.level>svg{width:25px;height:25px;left:-13px;top:-10px}.mood{left:15px;right:auto;top:125px;font-size:9px;padding:6px 8px}.speech{top:28%;font-size:12px;max-width:76%;padding:10px 12px}.pet{width:120%;height:64%;left:-10%;bottom:18%;outline-offset:-60px}.plant{left:5%;width:21%;height:20%;bottom:20%}.plant-badge{font-size:9px;padding:4px}.rooms{top:auto;bottom:17px;left:13px;right:13px;width:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:9px}.rooms button{min-height:57px;padding:7px 3px;font-size:8px;gap:3px}.rooms svg{width:23px;height:23px}.rooms button.active{transform:rotate(-3deg);outline-width:2px;outline-offset:2px}.care-menu{width:calc(100% - 34px);bottom:110px}.care-menu h2{font-size:14px;margin-bottom:8px}.actions{gap:12px}.actions button{min-height:59px;padding:9px 10px;font-size:12px;grid-template-columns:25px 1fr;gap:3px 6px;flex-wrap:nowrap}.actions button>svg{width:25px;height:25px}.actions button small{width:auto;margin:0;font-size:9px}.pantry{margin-bottom:10px;width:235px}.food-choice{min-height:60px}.room-bottom{display:none}.play-hud{bottom:210px;font-size:12px}.poster{top:22%}.rug{bottom:22%}#journal-panel{right:12px;top:115px;width:min(285px,calc(100% - 24px));padding:17px}footer{padding:9px 12px;font-size:7px}dialog h2{font-size:22px}.shop-grid{gap:10px}.shop-item>button{font-size:11px}}
@media(max-width:360px){.brand img{display:none}.brand{font-size:19px}.balances{gap:5px}.header #settings{display:flex}.header button{width:28px}.needs{gap:6px}.need-label{font-size:7px}.need-label>svg{width:17px;height:17px}.speech{font-size:11px}}
.speech{top:15%}
@media(max-width:1100px){.speech{top:23%}}
@media(max-width:600px){.speech{top:24%}.pet{height:60%}.care-menu{bottom:122px}.header #settings{display:flex}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
