:root{--ink:#594b42;--muted:#72596b;--pink:#b54776;--pink-light:#f7e1e7;--cream:#fffaf3;--sage:#728b74;--line:#e8ded0;--shadow:0 14px 40px #76513b0c}*{box-sizing:border-box}body{margin:0;background:#f7f1e8;color:var(--ink);font-family:'Trebuchet MS',Arial,sans-serif;font-size:16px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer;color:inherit;touch-action:manipulation}button:disabled{cursor:default;opacity:.55}button:focus-visible,a:focus-visible{outline:3px solid #a56880;outline-offset:4px}button{border:0}header{height:108px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:16px}.app{max-width:1420px;margin:auto;padding:0 46px}.brand{display:flex;flex-direction:column;align-items:center;text-decoration:none;color:var(--muted)}.brand img{width:125px;height:50px;object-fit:contain}.brand span{font-size:12px;letter-spacing:2px;margin-top:6px}.top-controls{display:flex;align-items:center;gap:12px}.icon-button{width:43px;height:43px;border-radius:50%;background:#eee6dc;font-size:21px}.wallet{background:#fff7f4;border:1px solid #ead3d7;border-radius:24px;padding:12px 22px;min-width:100px;display:flex;gap:12px}.wallet span{color:var(--pink)}.intro{display:flex;justify-content:space-between;align-items:center;padding:38px 0 27px;gap:20px}.eyebrow{font-size:12px;letter-spacing:2.4px;color:var(--muted);font-weight:bold;margin:0 0 13px}h1,h2,h3{font-family:Georgia,serif;font-weight:normal}h1{font-size:37px;letter-spacing:-1px;margin:0 0 12px}h1 span{font-family:Arial;color:var(--pink);font-size:24px;margin-left:15px}.intro p:last-child{color:var(--muted);font-size:14px;margin:0}.mission-button{display:flex;gap:16px;text-align:left;align-items:center;background:#eee7d8;border-radius:17px;padding:19px 22px;font-size:13px;min-width:235px}.mission-button>span:first-child{color:#b59450;font-size:28px}.mission-button small{display:block;margin-top:5px;color:var(--muted);font-size:11px}.game-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:24px}.house{border-radius:24px;overflow:hidden;background:var(--cream);border:1px solid var(--line);box-shadow:var(--shadow)}.room-bar{display:flex;justify-content:space-between;align-items:center;padding:18px 24px}.room-bar>div{display:flex;align-items:center;gap:10px}.room-bar h2{font-size:20px;margin:0}.day-button{border-radius:20px;background:#f0eadf;padding:10px 14px;font-size:12px}.scene{aspect-ratio:1.6;position:relative;background-image:url('assets/rooms.webp');background-size:200% 200%;background-position:0 0;overflow:hidden;isolation:isolate}.scene-shade{position:absolute;inset:0;background:linear-gradient(transparent 65%,#51382413)}.characters{position:absolute;inset:0;pointer-events:none}.character{position:absolute;bottom:10%;transition:left 900ms ease,transform 350ms;pointer-events:auto}.girl{width:26%;height:69%;left:44%;pointer-events:none}.girl #girl-art{width:100%;height:100%;filter:drop-shadow(0 10px 6px #60482b22)}.girl svg{width:100%;height:100%;overflow:visible}.cat{width:19%;left:26%;padding:0;background:none;transform-origin:50% 90%;filter:drop-shadow(0 8px 4px #60482b25)}.cat img{width:100%;display:block}.cat:hover{transform:rotate(-4deg)}.cat.bounce{animation:bounce .6s}.character-name{display:block;position:absolute;left:50%;transform:translateX(-50%);bottom:-20px;background:#fff9edda;border-radius:12px;padding:4px 13px;font-size:12px;color:#776454}.speech{position:absolute;top:14%;left:40%;max-width:52%;background:#fffdf6f0;border-radius:18px 18px 18px 3px;padding:12px 18px;font-size:13px;box-shadow:0 4px 16px #633f3312;transition:opacity .3s}.hotspot{position:absolute;border:2px solid #fff8ea;box-shadow:0 3px 14px #5c3e242a;background:#fff9e9eb;border-radius:50%;width:55px;height:55px;font-size:25px;animation:float 4s infinite}.hotspot span{position:absolute;top:54px;left:50%;transform:translateX(-50%);border-radius:11px;white-space:nowrap;background:#fffaf1ed;font-size:12px;padding:4px 9px}.hotspot:hover{background:#fff;transform:scale(1.12)}.rooms{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;padding:18px 20px 10px}.rooms button{border:1px solid transparent;border-radius:14px;background:transparent;padding:12px 6px;font-size:11px;color:var(--muted);display:flex;align-items:center;justify-content:center;gap:7px}.rooms button span{font-size:22px}.rooms button.active{background:#e9eedf;color:#617358;border-color:#d8e0cc}.hint{display:flex;align-items:center;justify-content:center;gap:8px;font-size:12px;color:var(--muted);padding:10px 10px 19px}.hint>span{line-height:1.5}.care-panel{padding:26px 23px;border-radius:23px;background:#fffbf5;border:1px solid var(--line)}.care-panel h2{font-size:24px;margin:0 0 25px}.need{margin-bottom:19px;display:grid;grid-template-columns:28px 1fr;align-items:center;gap:10px}.need>span{font-size:21px}.need label{display:flex;justify-content:space-between;font-size:11px;margin-bottom:7px}.need label small{font-size:12px;color:var(--muted)}.meter{height:6px;border-radius:8px;background:#eee8dc;overflow:hidden}.meter i{display:block;height:100%;background:var(--sage);border-radius:8px;transition:width .5s}.need:nth-child(2) .meter i{background:#dbab68}.need:nth-child(3) .meter i{background:#ce92a3}.care-note{font-size:12px;color:var(--muted);margin:25px 0 0;text-align:center}.wardrobe-card{display:flex;align-items:center;gap:13px;padding:24px 18px;border-radius:20px;background:#f3dfe5;width:100%;margin-top:18px;text-align:left}.wardrobe-icon{font-size:31px}.wardrobe-card strong{display:block;font:20px Georgia,serif}.wardrobe-card small{display:block;font-size:12px;margin-top:7px;color:#8a4561}.adventure-card{margin-top:18px;padding:23px;border-radius:22px;background:#ecefdf;text-align:center}.adventure-card>span{font-size:30px}.adventure-card h3{font-size:21px;margin:12px 0}.adventure-card p{font-size:11px;line-height:1.9;color:#60704e}.adventure-card button{font-size:11px;background:none;color:#52683f;padding:10px}footer{display:flex;justify-content:space-between;color:#756052;font-size:12px;padding:26px 0;gap:15px}footer span:last-child{font-size:12px;letter-spacing:1px}dialog{border:1px solid #e3d3c3;border-radius:27px;background:var(--cream);color:var(--ink);padding:32px;width:min(840px,94vw);max-height:90dvh;box-shadow:0 25px 100px #46302533}dialog::backdrop{background:#40302265;backdrop-filter:blur(6px)}.close{position:absolute;right:13px;top:12px;width:40px;height:40px;border-radius:50%;background:#eee5dc;font-size:25px;z-index:3}dialog h2{font-size:31px;margin:4px 35px 10px 0}dialog p{font-size:14px;line-height:1.7;color:var(--muted)}.primary{border-radius:16px;background:var(--pink);color:#fff;padding:15px 25px;min-height:48px}.secondary{border-radius:14px;background:#e8eadb;padding:14px 20px;min-height:48px}.modal-title{margin-bottom:22px}.choices{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;margin:20px 0}.choice{background:#f1e7d9;border-radius:18px;padding:20px;font-size:40px;min-width:84px;min-height:84px}.game-board{background:#eee9dc;border-radius:20px;padding:22px;min-height:240px;text-align:center;position:relative}.progress-dots{display:flex;justify-content:center;gap:8px;margin:18px}.progress-dots i{width:13px;height:13px;background:#ded3c4;border-radius:50%}.progress-dots i.done{background:var(--pink)}.big-emoji{font-size:80px;display:block;margin:20px}.reward{text-align:center;padding:20px}.reward h2{margin-right:0}.reward .amount{font-size:28px;color:var(--pink);margin:20px}.memory-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;max-width:440px;margin:auto}.memory-card{font-size:32px;border-radius:14px;min-height:78px;background:#dba2ae;color:#fff}.memory-card.open,.memory-card.matched{background:#fff9f0}.memory-card.matched{opacity:.7}.hidden-board{height:320px;background:url('assets/rooms.webp') 0 0/200% 200%;position:relative;border-radius:15px}.hidden-object{position:absolute;background:#fff9eddd;border-radius:50%;width:46px;height:46px;font-size:25px}.garden-pots{display:flex;justify-content:center;gap:16px;padding:20px 0}.pot{font-size:50px;background:#fff9ec;border-radius:15px;padding:15px}.wardrobe-layout{display:grid;grid-template-columns:210px 1fr;gap:22px}.dress-preview{border-radius:22px;background:radial-gradient(ellipse,#fffdf6,#f2e4d5);min-height:330px;display:flex;align-items:center;justify-content:center}.dress-preview svg{width:175px;height:300px}.shop-tabs{display:flex;gap:7px;margin-bottom:15px}.shop-tabs button{background:#ede5d9;border-radius:12px;padding:10px 15px;font-size:12px}.shop-tabs button.active{background:#e9c9d3}.shop-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.shop-item{background:#fffdf7;border:1px solid #e6dacb;border-radius:16px;padding:13px 6px;min-height:113px;text-align:center;font-size:11px}.shop-item.selected{border:2px solid var(--pink);background:#fff0f3}.shop-item .swatch{display:block;font-size:31px;margin-bottom:7px}.shop-item strong{display:block;font-size:11px;margin-bottom:6px}.shop-item small{color:var(--pink)}.shop-status{font-size:12px;min-height:22px}.mission-list{display:grid;gap:13px}.mission-row{padding:17px;background:#eee9dc;border-radius:15px;display:flex;justify-content:space-between;align-items:center;gap:15px}.mission-row.done{background:#e7eddc}.album-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.album-item{background:#eee6d9;border-radius:18px;padding:18px;text-align:center}.album-item span{font-size:37px}.album-item small{display:block;font-size:11px;margin-top:10px}.album-item.locked{filter:grayscale(1);opacity:.5}#toast{position:fixed;left:50%;bottom:25px;transform:translate(-50%,25px);opacity:0;pointer-events:none;background:#65574b;color:#fff;border-radius:20px;padding:14px 24px;font-size:14px;z-index:20;transition:.25s;max-width:90vw;text-align:center}#toast.show{opacity:1;transform:translate(-50%,0)}.effects{position:absolute;inset:0;pointer-events:none}.particle{position:absolute;animation:rise 1.2s forwards;font-size:24px}.slider-row{margin:20px 0;display:flex;align-items:center;gap:16px}.settings-actions{display:flex;gap:10px;flex-wrap:wrap}input,select{font:inherit;padding:12px;border:1px solid #d9cbbd;border-radius:10px;background:#fff;max-width:100%}.mode-note{font-size:12px}.catch-area{height:310px;position:relative;overflow:hidden;background:#e9eddc;border-radius:20px}.catch-target{position:absolute;top:0;left:0;font-size:42px;background:none;transition:left .7s,top .7s;padding:8px}.baking-cake{font-size:90px;line-height:1.7}.decoration-list{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}.decoration-list button{font-size:28px;background:#f3dfd6;border-radius:14px;padding:12px}.family-moment img{width:100%;border-radius:18px}.family-moment{text-align:center}.welcome img{width:100%;border-radius:18px;max-height:260px;object-fit:cover}.welcome{text-align:center}.welcome h2{margin-right:0}.welcome .choices{font-size:14px}.sr-only{position:absolute;clip:rect(0,0,0,0);width:1px;height:1px;overflow:hidden}@keyframes float{50%{translate:0 -5px}}@keyframes bounce{40%{transform:translateY(-25px) rotate(5deg)}70%{transform:translateY(-8px)}}@keyframes rise{to{transform:translateY(-100px) rotate(20deg);opacity:0}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}@media(min-width:1600px){.app{padding-top:15px}.scene{aspect-ratio:1.7}}@media(max-width:1100px){.app{padding:0 25px}.game-layout{grid-template-columns:minmax(0,1fr) 220px;gap:16px}h1{font-size:30px}.room-bar{padding:15px}.care-panel{padding:23px 17px}.rooms button{flex-direction:column}.intro{padding-top:28px}}@media(max-width:780px){.app{padding:0 16px}header{height:82px}.brand img{width:100px;height:40px}.top-controls{gap:6px}.icon-button{width:36px;height:36px}.wallet{padding:10px 13px;min-width:75px}.intro{display:block;padding:23px 0 17px}.intro h1{font-size:28px}.intro .mission-button{margin-top:18px;width:100%;padding:12px 17px}.mission-button>span:last-child{margin-left:auto}.game-layout{display:block}aside{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.care-panel{grid-column:1/-1;padding:17px}.care-panel .eyebrow,.care-panel h2,.care-note{display:none}#needs{display:flex;gap:20px}.need{flex:1;margin:0;gap:6px;grid-template-columns:23px 1fr}.need label small{display:none}.need label{font-size:12px}.wardrobe-card,.adventure-card{margin:0}.adventure-card{padding:14px}.adventure-card>span,.adventure-card p{display:none}.adventure-card h3{font-size:18px}.wardrobe-card{padding:16px 12px}.wardrobe-card strong{font-size:18px}.scene{aspect-ratio:1.23}.hotspot{width:47px;height:47px;font-size:23px}.hotspot span{top:47px;font-size:12px}.speech{font-size:11px;padding:10px}.girl{width:32%;height:65%;left:43%}.cat{width:24%;left:24%}.rooms{padding:12px 8px 4px;gap:3px}.rooms button{font-size:12px;padding:10px 3px}.hint{font-size:12px}.wardrobe-layout{grid-template-columns:140px 1fr;gap:12px}.dress-preview svg{width:125px}.shop-grid{grid-template-columns:repeat(2,1fr)}dialog{padding:25px 18px}.shop-tabs button{padding:10px;font-size:11px}footer{font-size:12px}footer span:last-child{display:none}}@media(max-width:430px){.wardrobe-layout{display:block}.dress-preview{min-height:180px;margin-bottom:14px}.dress-preview svg{height:180px}.shop-grid{grid-template-columns:repeat(3,1fr)}.album-grid{grid-template-columns:repeat(2,1fr)}h1 span{margin-left:6px;font-size:18px}.top-controls .icon-button{width:32px;height:32px}.girl{bottom:12%}.scene{aspect-ratio:1.12}}
.parent{position:absolute;bottom:22%;height:73%;width:24%;background-image:url('assets/parents.webp');background-size:200% 100%;background-repeat:no-repeat;background-color:transparent;pointer-events:auto;border:0;padding:0;filter:drop-shadow(0 8px 5px #60482b19)}.parent[hidden]{display:none}.mother{left:1%;background-position:0 0}.father{right:0%;background-position:100% 0}.parent:hover{transform:translateY(-3px)}.parent .character-name{bottom:-8px}.parent~.girl,.parent~.cat{z-index:2}.speech{z-index:3}.hotspots{position:absolute;inset:0;pointer-events:none;z-index:4}.hotspot{pointer-events:auto}.effects{z-index:5}@media(max-width:780px){.parent{height:66%;width:28%;bottom:27%}.mother{left:-2%}.father{right:-3%}}
