:root{font-family:"Hiragino Maru Gothic ProN","Yu Gothic",Meiryo,sans-serif;color:#304c48;background:#eef3eb;font-synthesis:none;--mint:#b8e2d2;--ink:#304c48;--orange:#ed9966;--screen:#f9f8e8}*{box-sizing:border-box}body{margin:0;min-height:100dvh;display:grid;place-content:center;background-image:radial-gradient(#d3e1d1 1px,transparent 1px);background-size:18px 18px}button{font:inherit;font-weight:700;color:inherit;cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:focus-visible{outline:3px solid #cb632a;outline-offset:3px}button:disabled{opacity:.5;cursor:default}button:active:not(:disabled){transform:translateY(2px)}.toy{width:390px;height:780px;max-height:calc(100dvh - 50px);padding:22px 22px 14px;border-radius:52px;background:var(--mint);border:2px solid #99cbbb;box-shadow:inset 0 3px 0 #def5e8,inset 0 -7px 0 #8abda9,0 16px 40px #55725b24;display:flex;flex-direction:column;gap:13px;overflow:hidden}.brand{display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.brand h1{font-size:25px;letter-spacing:-1.7px;margin:0;color:#355853;text-shadow:0 2px #e0f5df;font-weight:900}.brand p{font-size:9px;margin:5px 0 0;letter-spacing:1px}.little-star{color:#e39c53;font-size:22px}.round{border:0;background:#ffffff78;width:32px;height:32px;border-radius:50%;font-size:20px;display:grid;place-items:center;flex-shrink:0}.display{padding:10px;background:var(--screen);border-radius:22px;border:3px solid #79a999;box-shadow:0 2px 0 #dff4db,inset 0 2px 5px #54604b20;display:flex;flex-direction:column;min-height:200px;flex:1;overflow:hidden}.statusbar{display:flex;align-items:center;justify-content:space-between;font-size:10px;border-bottom:1px dashed #c7d0b9;padding:0 2px 7px}.statusbar button{font-size:10px;border:0;background:transparent;padding:2px}.live-dot:before{content:'';display:inline-block;background:#85b990;width:5px;height:5px;border-radius:50%;margin-right:5px}.meters{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;padding:10px 2px}.meter small{font-size:10px;display:block;margin-bottom:4px}.meter .track{height:6px;background:#e6e7d8;border-radius:4px;overflow:hidden}.meter i{height:100%;display:block;background:#87b69b;border-radius:4px;transition:width .3s}.meter:nth-child(2) i{background:#e8b361}.meter:nth-child(3) i{background:#8ab9be}.room{position:relative;flex:1;min-height:90px;overflow:hidden;border:1px solid #e2dbc4;border-radius:10px;background:linear-gradient(0deg,#ebdbb6 0 27%,#d5c4a0 27% 28%,transparent 28%),repeating-linear-gradient(90deg,#fbefd6 0 20px,#f6e8ce 20px 22px)}.room:after{content:'';position:absolute;bottom:8%;width:100%;height:1px;background:#d8c6a2;box-shadow:0 12px #d8c6a2;pointer-events:none}.window{position:absolute;left:16px;top:25px;width:60px;height:60px;border:5px solid #d1b98d;display:grid;grid-template-columns:1fr 1fr;gap:3px;background:#e7d2a3;box-shadow:0 3px #ebdfbc}.window i{background:#c6e6db}.window b{position:absolute;font-size:20px;color:#e4b555;left:5px;top:3px}.wall-art{position:absolute;right:24px;top:32px;border:4px solid #c5b697;background:#fff6df;color:#db986e;font-size:29px;width:40px;height:48px;text-align:center}.plant{position:absolute;right:15px;bottom:25%;font-size:52px;color:#84a980}.rug{position:absolute;left:25%;bottom:11%;width:50%;height:22%;background:#dca890;border-radius:50%;border:5px solid #e8bda3;box-shadow:0 2px #c39880}.bubble{position:absolute;left:50%;top:10px;transform:translateX(-50%);width:max-content;max-width:95%;padding:7px 12px;background:#fffdf4;border:1px solid #d5d9b9;border-radius:12px;font-size:11px;z-index:3;text-align:center;box-shadow:0 2px #00000006}.pet{position:absolute;width:128px;height:138px;bottom:13%;left:50%;transform:translateX(-50%);background:none;border:0;z-index:2;padding:0;display:grid;place-items:center}.pet:active:not(:disabled){transform:translateX(-50%) translateY(2px)}.pet svg{width:100%;height:100%;filter:drop-shadow(0 4px 0 #55432118)}.pet.bounce svg{animation:hop .42s ease 2}.poop{position:absolute;bottom:15%;left:22%;font-size:25px;z-index:2}.floor-star{position:absolute;bottom:20%;right:18%;color:#fff6d6;font-size:30px}.room.night{filter:brightness(.73);background-color:#8396a0}.room.night .window i{background:#455d7c}.pet-label{display:flex;align-items:center;justify-content:center;gap:8px;padding-top:10px}.name{font-weight:900;font-size:15px}.stage{font-size:9px;border-radius:5px;background:#e5ead6;padding:3px 5px;white-space:nowrap}.growth{position:relative;text-align:center;padding-top:7px;min-height:28px}.growth>span{font-size:9px;color:#7a876c}.growth>div{width:85px;height:3px;background:#e5e6d3;margin:5px auto 0;border-radius:3px;overflow:hidden}.growth i{display:block;height:100%;background:#e6b45c}.growth button{background:#f7cb73;border:0;padding:4px 10px;border-radius:7px;font-size:11px}.care{display:grid;grid-template-columns:repeat(3,1fr);gap:9px 10px;flex-shrink:0}.care button{height:58px;border:1px solid #98c7b3;background:#edf6e2;box-shadow:0 3px #8ebca8;border-radius:14px;font-size:11px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}.care button span{font-size:23px;line-height:1.15}.play{background:var(--orange);color:#553f2d;border:1px solid #d58c58;box-shadow:0 4px #b67a51,inset 0 2px #ffc898;border-radius:16px;min-height:48px;display:flex;align-items:center;justify-content:space-around;font-size:16px;flex-shrink:0}.play span{color:#fff6c8}.toy footer{display:flex;justify-content:space-between;padding:4px 0 0;flex-shrink:0}.toy footer button{background:none;border:0;font-size:10px;padding:4px 0}.toy footer b{font-size:9px;font-weight:400;background:#e9f4dc;padding:3px 6px;border-radius:8px}.desktop-note{text-align:center;font-size:11px;color:#90a58e;letter-spacing:3px;padding-top:18px}#save-warning{font-size:10px;color:#922c20;flex-shrink:0}dialog{border:3px solid #88b9a4;border-radius:25px;background:#f7f9ed;color:var(--ink);width:350px;max-width:calc(100vw - 24px);max-height:calc(100dvh - 34px);padding:18px;box-shadow:0 12px 45px #283e4140}dialog::backdrop{background:#2a423c80;backdrop-filter:blur(3px)}.panel-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:8px}.panel-head h2{font-size:18px;margin:0}.panel-head .round{background:#e1edda}#panel-body{font-size:13px}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.choice{border:1px solid #d4dfc9;background:#fffdf4;border-radius:14px;padding:14px 8px;text-align:center;font-size:13px;box-shadow:0 3px #dbe2cb;min-height:67px}.choice span{display:block;font-size:28px;margin-bottom:5px}.choice small{display:block;font-size:10px;font-weight:400;margin-top:4px;color:#78816c}.wide{width:100%;margin-top:12px;padding:12px;border:1px solid #98b79d;border-radius:12px;background:#d7eacb;font-size:14px}.hint{font-size:11px;line-height:1.8;color:#74816b}.collection-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.collect-card{border:1px solid #dce2cc;background:#fffef3;border-radius:12px;padding:6px 2px;min-width:0;font-size:9px;position:relative}.collect-card svg{width:72px;max-width:100%;height:72px;display:block;margin:auto}.collect-card.locked svg{filter:grayscale(.7);opacity:.5}.collect-card .rare{position:absolute;top:5px;right:5px;color:#cf9747}.collect-card.unlocked{background:#fff3c7;border-color:#dfbd61}.portrait{width:140px;height:150px;margin:auto}.portrait svg{width:100%;height:100%}.character-detail{text-align:center}.character-detail p{line-height:1.8}.badge{background:#ffe4a3;border-radius:10px;padding:4px 9px;display:inline-block;font-size:11px}.record{display:grid;grid-template-columns:1fr 1fr;gap:8px}.record p{margin:0;background:#eaf0df;padding:10px;border-radius:10px;font-size:11px}.record b{display:block;font-size:20px;margin-top:3px}.pitch{position:relative;height:180px;background:repeating-linear-gradient(#a6cd8a 0 30px,#97c27b 30px 60px);border:3px solid #fff;border-radius:12px;overflow:hidden;margin:12px 0}.goal{position:absolute;left:15%;right:15%;top:18px;height:75px;border:5px solid white;background:repeating-linear-gradient(0deg,transparent 0 13px,#ffffff60 13px 14px),repeating-linear-gradient(90deg,transparent 0 13px,#ffffff60 13px 14px)}.keeper{position:absolute;top:45px;font-size:35px;transition:left .15s}.ball{position:absolute;left:45%;bottom:12px;font-size:34px}.pitch-controls{display:flex;gap:8px}.pitch-controls button{flex:1}.game-status{font-size:13px;min-height:42px;line-height:1.6;text-align:center}.timing{position:relative;height:44px;background:#e6dbc3;border-radius:9px;margin:28px 0;overflow:hidden}.timing .zone{position:absolute;left:36%;width:28%;height:100%;background:#99c697}.timing .cursor{position:absolute;width:6px;background:#53664b;height:100%;left:0}.question{font-size:18px;font-weight:700;line-height:1.7;margin:10px 0 20px;white-space:pre-line}.answers{display:grid;gap:10px}.answers button{padding:12px;border-radius:12px;background:#fffdf4;border:2px solid #d5dfc9}.answers button.correct{background:#d4ebbd;border-color:#86ac62}.answers button.wrong{background:#f7d2c1;border-color:#d38b71}.result{text-align:center;padding:10px 0}.result .big{font-size:45px}.result h3{font-size:21px}.progress-dots{text-align:center;color:#c79c4c;font-size:17px;letter-spacing:10px}.settings-copy{font-size:12px;line-height:1.8}.settings-copy strong{color:#517c64}input[type=file]{font-size:12px;max-width:100%;margin:10px 0}.file-label{display:block;border:1px dashed #8aaf95;padding:10px;border-radius:8px;margin-top:12px;font-size:12px}#import-status{font-size:12px;line-height:1.6}.pet.sleeping:after{content:'z Z';position:absolute;top:8px;right:0;color:#697f80;font-weight:bold}.pet.spark svg{animation:hop .4s ease 3}@keyframes hop{50%{transform:translateY(-12px) rotate(-4deg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
@media(max-width:480px){body{display:block;background:var(--mint);overflow:hidden}.toy{width:100%;height:100dvh;max-height:none;border-radius:0;border:0;box-shadow:inset 0 3px #d4efdf;padding:max(15px,env(safe-area-inset-top)) 20px max(13px,env(safe-area-inset-bottom));gap:12px}.desktop-note{display:none}.brand h1{font-size:26px}.display{border-radius:23px}.room .pet{width:135px;height:145px}}
@media(max-height:700px){.toy{gap:9px;padding-top:max(10px,env(safe-area-inset-top));padding-bottom:max(8px,env(safe-area-inset-bottom))}.brand h1{font-size:23px}.brand p{font-size:8px;margin-top:2px}.care button{height:49px;font-size:10px;border-radius:11px}.care button span{font-size:20px}.play{min-height:42px;font-size:14px}.display{padding:8px}.meters{padding:7px 2px}.room .pet{width:100px;height:105px;bottom:10%}.pet-label{padding-top:6px}.growth{padding-top:3px}.name{font-size:13px}.bubble{font-size:10px;padding:5px 8px}.window{width:45px;height:45px;top:20px}.wall-art{top:23px;font-size:22px;height:38px;width:34px}}
@media(max-height:580px){.toy{gap:7px;padding-left:14px;padding-right:14px}.brand p{display:none}.brand h1{font-size:22px}.care{gap:7px}.care button{height:43px}.play{min-height:38px}.statusbar{padding-bottom:4px}.meters{padding:5px 2px}.growth>span{font-size:8px}.pet-label{padding-top:4px}.toy footer button{font-size:9px}.room .pet{height:85px;width:85px;bottom:6%}.room .bubble{font-size:9px;top:4px}.window{top:15px;left:10px;width:36px;height:36px}.wall-art{top:16px;right:10px}.plant{font-size:34px}.name{font-size:12px}.display{min-height:180px}}
@media(orientation:landscape) and (max-height:480px){body{overflow:auto;display:grid}.toy{width:min(780px,100vw);height:100dvh;min-height:290px;display:grid;grid-template-columns:1.2fr 1fr;grid-template-rows:auto 1fr auto auto;padding:10px 18px;gap:8px 16px;border-radius:0}.brand{grid-column:1/-1}.brand p{display:none}.display{grid-column:1;grid-row:2/5;min-height:0}.care{grid-column:2;grid-row:2;align-content:center}.play{grid-column:2;grid-row:3}.toy footer{grid-column:2;grid-row:4}.desktop-note{display:none}.room{min-height:60px}.room .pet{height:76px;width:76px}.growth{min-height:18px}.pet-label{padding-top:2px}}

.current-time{font-variant-numeric:tabular-nums;letter-spacing:1px;font-size:14px;font-weight:800;white-space:nowrap;flex-shrink:0}.panel-head{position:sticky;top:-18px;z-index:5;background:#f7f9ed;padding:6px 0}.panel-head h2{flex:1;min-width:0}.panel-head .current-time{font-size:12px;letter-spacing:.5px}
