.daily-toilet{width:100%;min-height:45px;margin-top:12px;background:#16bcb8;color:#123d61;font-size:14px}.room-nightcap{position:absolute;inset:0;width:100%;height:100%;image-rendering:pixelated;pointer-events:none;z-index:6}.bedtime-sleeping .outfit-layer[data-outfit=hat]{visibility:hidden}
.routine-dialog{position:fixed;width:min(500px,calc(100vw - 24px));max-height:calc(100dvh - 24px);box-sizing:border-box;overflow:auto;padding:20px}.routine-dialog h2{margin:0 38px 7px 0;font-size:23px}.routine-dialog p{font-size:14px;line-height:1.45}.routine-dialog>button:not(.dialog-close){width:100%;min-height:44px;margin-top:8px}.routine-key-hint{font-size:11px!important;color:#526778;margin:8px 0 0}.routine-progress-row{display:flex;gap:12px;align-items:center;margin-top:10px}.routine-progress-row progress{width:100%;height:17px;accent-color:#00985c}.routine-progress-row output{min-width:45px;font-size:13px}
.routine-scene{position:relative;height:300px;overflow:hidden;touch-action:none;user-select:none;isolation:isolate;border:3px solid #123d61;border-radius:14px;background:linear-gradient(#04b7d9 0 70%,#ffc129 70%)}.routine-scene.kind-bed{background:linear-gradient(#364fa0 0 72%,#d98a37 72%)}.routine-scene.kind-cook{background:repeating-linear-gradient(90deg,#00a9c6 0 47px,#13889b 48px 50px)}.routine-scene.kind-toilet{background:repeating-linear-gradient(90deg,#00c2d8 0 47px,#168caa 48px 50px)}
.routine-pet{position:absolute;left:28%;top:14%;width:44%;aspect-ratio:1;background-size:400% 100%;image-rendering:pixelated;pointer-events:none;z-index:2}.routine-pet img{position:absolute;inset:0;width:100%;height:100%;image-rendering:pixelated}.routine-bed{display:none;position:absolute;left:14%;right:14%;bottom:9%;height:31%;border:5px solid #123d61;background:#8e5ada;border-radius:22px;box-shadow:inset 0 12px #cba6fa}.kind-bed .routine-bed{display:block}.routine-blanket{position:absolute;left:24%;top:42%;width:52%;height:44%;image-rendering:pixelated;z-index:3;pointer-events:none}
#routine-tool{position:absolute;left:22%;top:65%;width:86px;height:86px;min-height:0;transform:translate(-50%,-50%);padding:0;background:transparent!important;border:0;box-shadow:none;z-index:5;cursor:grab;touch-action:none}#routine-tool-image{width:100%;height:100%;image-rendering:pixelated;pointer-events:none;filter:drop-shadow(2px 3px #123d6133)}#routine-tool:focus-visible{outline:3px solid #ffdf38;outline-offset:2px}.kind-water[data-stage="1"] #routine-tool{rotate:30deg;transform-origin:50% 50%}
#routine-switch{position:absolute;right:6%;top:9%;width:46px;height:58px;min-height:0;padding:8px;background:#f8fcff;border:3px solid #123d61;border-radius:5px;z-index:5}#routine-switch span{display:block;height:100%;background:linear-gradient(#19bc8f 50%,#9de4d2 50%);border:2px solid #123d61;transform:perspective(60px) rotateX(-15deg)}.routine-done #routine-switch span{transform:perspective(60px) rotateX(15deg);background:#657a89}.kind-bed.routine-done:after{content:'';position:absolute;inset:0;background:#07133799;pointer-events:none;z-index:4}.routine-zzz{position:absolute;left:58%;top:13%;color:#fffbd8;font-size:25px;z-index:6;pointer-events:none}
#routine-story{position:absolute;left:5%;right:5%;top:3%;margin:0;background:#fff9da;border:2px solid #123d61;padding:10px;border-radius:12px;z-index:4;font-size:14px;color:#123d61;pointer-events:none}.kind-bed[data-stage="1"] .routine-pet{top:28%;width:36%;left:49%}.kind-bed[data-stage="1"] #routine-tool{left:24%!important;top:67%!important;width:110px;height:110px}
.routine-pot{position:absolute;left:37%;top:38%;width:43%;height:51%;image-rendering:pixelated;pointer-events:none;z-index:2}.routine-vegetables{position:absolute;left:9%;top:47%;width:51%;height:43%;image-rendering:pixelated;pointer-events:none;z-index:3}.kind-cook[data-stage="0"] .routine-pot{left:67%;top:24%;width:27%;height:33%;opacity:.8}.kind-cook[data-stage="2"] #routine-tool{transform:translate(-50%,-50%) rotate(-20deg)}.routine-steam{display:none;position:absolute;left:48%;top:24%;font-size:50px;color:#edffff;pointer-events:none}.kind-cook.routine-working .routine-steam,.kind-cook.routine-done .routine-steam{display:block;animation:routine-steam 1.6s ease-in-out infinite}.kind-cook.routine-done .routine-pot{left:8%;top:52%;width:33%;height:39%}.kind-cook.routine-done .routine-pet{left:45%;top:18%}
#routine-bottle-cap{position:absolute;left:34%;top:6%;width:31%;height:16%;background:#f34252;border:2px solid #123d61;border-radius:3px;transform:rotate(var(--turn))}.routine-glass{position:absolute;left:59%;top:46%;width:22%;height:40%;border:4px solid #123d61;border-top:5px solid #ebffff;border-radius:0 0 10px 10px;background:#efffff55;overflow:hidden;z-index:2;pointer-events:none}.routine-glass span{position:absolute;bottom:0;left:0;right:0;background:#14b5ec;border-top:3px solid #aef5ff;transition:height .1s}.routine-water-stream{position:absolute;left:66%;top:38%;width:3%;height:25%;background:repeating-linear-gradient(#a2f0ff 0 6px,#ffffff99 7px 9px);z-index:4;pointer-events:none;animation:routine-stream .25s linear infinite}.kind-water.routine-done .routine-pet{left:14%;top:23%;width:38%}
.routine-wc{position:absolute;left:31%;top:43%;width:42%;height:48%;image-rendering:pixelated;z-index:2;pointer-events:none}.kind-toilet .routine-pet{left:35%;top:14%;width:31%;z-index:3}.kind-toilet[data-stage="0"] .routine-pet{left:6%;top:30%;width:31%}.kind-toilet[data-stage="2"].routine-working .routine-wc{animation:toilet-flush .45s ease-in-out}.kind-toilet[data-stage="3"] .routine-pet{left:35%;top:1%;width:31%}.routine-basin{position:absolute;left:14%;right:14%;top:54%;bottom:7%;background:#f4fcff;border:5px solid #123d61;border-radius:12px 12px 40% 40%;z-index:3;pointer-events:none}.routine-faucet{position:absolute;left:43%;top:-45%;width:18%;height:43%;border:6px solid #a2d6df;border-bottom:0;border-left:0;border-radius:0 18px 0 0}.routine-faucet:after{content:'';position:absolute;right:-4px;top:90%;height:54px;width:5px;background:repeating-linear-gradient(#a8f6ff 0 5px,white 6px 8px)}.routine-hand{position:absolute;top:10%;width:26%;height:36%;background:#ffcb6c;border:3px solid #123d61;border-radius:45%}.hand-left{left:20%;rotate:15deg}.hand-right{left:52%;rotate:-15deg}#routine-hand-foam{position:absolute;left:20%;right:20%;top:0;height:55%;background:radial-gradient(circle at 20% 50%,white 0 25%,transparent 27%),radial-gradient(circle at 52% 30%,#e1faff 0 30%,transparent 32%),radial-gradient(circle at 78% 55%,white 0 30%,transparent 32%)}
@keyframes routine-stream{to{background-position:0 9px}}@keyframes routine-steam{50%{translate:0 -8px;opacity:.4}}@keyframes toilet-flush{50%{filter:brightness(1.15);translate:0 2px}}
@media(max-height:720px){.routine-scene{height:235px}.routine-dialog{padding:14px}.routine-dialog h2{font-size:20px}.routine-dialog p{margin:6px 0}.routine-dialog>button:not(.dialog-close){min-height:40px;margin-top:5px}}
@media(prefers-reduced-motion:reduce){.routine-scene *{animation:none!important;transition:none!important}}.reduced .routine-scene *{animation:none!important;transition:none!important}
/* Hands-on toilet fixtures and serving from a top-view pot. */
.kind-cook[data-stage="2"] #routine-tool,.kind-cook[data-stage="3"] #routine-tool{transform:translate(-50%,-50%) rotate(160deg)}
.routine-plate{position:absolute;left:57%;top:40%;width:37%;height:49%;image-rendering:pixelated;pointer-events:none}
.kind-cook[data-stage="3"] .routine-pot{left:5%;top:28%;width:45%;height:58%}.kind-cook[data-stage="3"] .routine-steam{left:20%;top:12%}
.kind-cook.routine-scooped #routine-tool:after{content:'';position:absolute;left:33%;top:13%;width:28%;height:22%;background:repeating-linear-gradient(90deg,#fa7b15 0 6px,#38ad3a 6px 12px,#ee4545 12px 18px);border-radius:50%;pointer-events:none}
#routine-target{position:absolute;z-index:8;min-width:52px;min-height:52px;background:transparent;border:0;box-shadow:none;padding:0;touch-action:manipulation}
#routine-target[data-stage="0"]{left:30%;top:40%;width:29%;height:40%}#routine-target[data-stage="2"]{left:60%;top:44%;width:15%;height:25%;background:#a3e9ee88;border:2px solid #123d61;border-radius:10px}#routine-target[data-stage="2"]:after{content:'●';color:#123d61}
#routine-target[data-stage="3"],#routine-target[data-stage="5"]{left:46%;top:29%;width:21%;height:26%}#routine-target[data-stage="3"]:after,#routine-target[data-stage="5"]:after{content:'';display:block;width:36px;height:12px;margin:auto;background:#ef344e;border:3px solid #123d61;rotate:-25deg;transition:rotate .4s}
.tap-running #routine-target:after{rotate:50deg!important}
.routine-lid{position:absolute;left:33%;top:54%;width:25%;height:20%;border:3px solid #123d61;border-radius:50%;background:#effaff;z-index:4;transform-origin:50% 0;transition:transform .7s}.routine-lid.lid-open{transform:perspective(140px) rotateX(110deg)}
.kind-toilet[data-stage="1"] #routine-tool-image{transform:rotate(calc(var(--work)*35deg));transition:transform .15s}.kind-toilet[data-stage="1"] #routine-tool:after{content:'';position:absolute;top:68%;left:29%;width:45%;height:calc(8px + var(--work)*28px);background:#fff8e8;border:1px dashed #93b7ce;z-index:-1}
.kind-toilet[data-stage="2"].routine-working:after{content:'';position:absolute;left:40%;top:70%;width:20%;height:9%;border:4px dashed #22c3ed;border-radius:50%;z-index:4;animation:flush-swirl .5s linear infinite}
.kind-toilet[data-stage="4"] .routine-pet,.kind-toilet[data-stage="5"] .routine-pet,.kind-toilet[data-stage="6"] .routine-pet{left:35%;top:1%;width:31%}
.routine-faucet:after{display:none}.tap-running .routine-faucet:after{display:block;animation:routine-stream .25s linear infinite}.kind-toilet[data-stage="4"].routine-working .routine-hand{animation:hand-rub .35s ease-in-out infinite alternate}.kind-toilet[data-stage="6"] #routine-tool{width:130px;height:100px}.kind-toilet[data-stage="6"] #routine-tool-image{transform:rotate(calc(var(--work)*-30deg))}.kind-toilet[data-stage="6"] .routine-hand{filter:brightness(calc(.85 + var(--work)*.15))}
@keyframes flush-swirl{to{rotate:360deg}}@keyframes hand-rub{to{translate:8px 0;rotate:-12deg}}
.kind-water[data-stage="1"] #routine-tool{rotate:0deg;transition:rotate .35s,left .2s,top .2s}.kind-water[data-stage="1"].bottle-pouring #routine-tool{rotate:90deg}.kind-water[data-stage="2"] .routine-pet{left:54%;top:12%;width:38%}.kind-water[data-stage="2"] #routine-tool{transition:left .45s,top .45s}.kind-water[data-stage="2"].routine-working .routine-pet{animation:hand-rub .45s ease-in-out}.kind-water[data-stage="0"] #routine-bottle-cap{transition:transform .1s,translate .1s}
.kind-water[data-stage="1"].bottle-pouring #routine-tool{rotate:0deg;transform:translate(-50%,-50%) rotate(90deg)}.kind-water .routine-water-stream{left:71%;top:29%;height:28%}
.routine-faucet:before{content:'';position:absolute;right:-12px;top:-10px;width:36px;height:12px;background:#ef344e;border:3px solid #123d61;border-radius:3px;rotate:-25deg;transition:rotate .5s}.tap-running .routine-faucet:before{rotate:50deg}#routine-target[data-stage="3"]:after,#routine-target[data-stage="5"]:after{display:none}.kind-toilet[data-stage="2"].routine-working #routine-target{translate:0 3px}
#routine-book{display:none;position:absolute;left:3%;right:3%;top:5%;bottom:7%;border:4px solid #123d61;border-radius:12px;background:linear-gradient(90deg,#fff9dc 0 48.5%,#bfa87a 49%,#ead6a6 51%,#fff9dc 52%);box-shadow:0 7px #8b542b;pointer-events:none}.kind-bed[data-stage="1"] #routine-book{display:block}.kind-bed[data-stage="1"] #routine-story{left:7%;right:53%;top:15%;font-size:clamp(12px,1.4vw,16px);line-height:1.55;background:transparent;border:0;padding:6px;color:#123d61}.kind-bed[data-stage="1"] .routine-pet{left:57%;top:29%;width:35%;z-index:3}.kind-bed[data-stage="1"] #routine-tool{left:0!important;top:0!important;transform:none;width:100%;height:100%;cursor:pointer}.kind-bed[data-stage="1"] #routine-tool-image{display:none}#routine-page-count{position:absolute;bottom:4%;left:0;right:0;text-align:center;color:#79592f;font-size:12px}#routine-book-sign{position:absolute;left:68%;top:7%;font-size:35px;color:#f7b600}.book-turning:after{content:'';position:absolute;left:50%;top:0;bottom:0;width:48%;background:linear-gradient(90deg,#b49b6655,#fff9dc);transform-origin:left center;animation:book-page-turn .45s ease-in-out forwards}@keyframes book-page-turn{to{transform:perspective(500px) rotateY(-170deg);opacity:0}}@media(prefers-reduced-motion:reduce){.book-turning:after{animation:none;display:none}}.reduced .book-turning:after{display:none}
