.sewer-backdrop{position:absolute;inset:0;background:#17221f url('assets/sewer-environment.webp?v=field-8') center/cover no-repeat;opacity:0;pointer-events:none}
.sewer-mode .sewer-backdrop{opacity:1}.sewer-mode .toilet,.sewer-mode .flush,.sewer-mode .saying,.sewer-mode .ambient-label{visibility:hidden}
.sewer-mode .machine{border-color:#94b5a0;box-shadow:0 0 0 4px #18312d,0 6px 26px #000c,0 0 30px #4eac9360}.sewer-mode .machine-top,.sewer-mode .machine-bottom{background:#101f1df0;border-color:#718d71}.sewer-mode #mode-label{color:#b5f2d6}
.pipe-transition{position:absolute;inset:0;z-index:25;overflow:hidden;background:#041310;pointer-events:auto}
.pipe-view{position:absolute;inset:-20%;width:140%;height:140%;object-fit:cover;transform-origin:50% 50%;will-change:transform}
.pipe-vignette{position:absolute;inset:0;background:radial-gradient(ellipse,transparent 20%,#07100933 60%,#000b);pointer-events:none}
.pipe-water-light{position:absolute;inset:0;background:linear-gradient(transparent 68%,#44d9ae30);mix-blend-mode:screen;pointer-events:none}
.pipe-caption{position:absolute;bottom:10%;left:5%;right:5%;text-align:center;color:#fff5dc;text-shadow:0 2px 8px #000,0 0 24px #000}
.pipe-caption span{display:block;font-size:10px;letter-spacing:5px;color:#edd09b;margin-bottom:10px}.pipe-caption strong{font:italic 900 clamp(28px,4.5vw,70px)/1 Impact,'Arial Black',sans-serif;letter-spacing:1px}
.travelling .controls{pointer-events:none}
.bathroom-confetti{position:absolute;inset:0;overflow:hidden;pointer-events:none}.bathroom-confetti img{position:absolute;height:auto;object-fit:contain;filter:drop-shadow(0 4px 4px #0008);opacity:0;will-change:transform}
#celebration-inner{position:relative;z-index:1}.celebration[data-tier=super]{background:radial-gradient(#4d1839e6,#120911ed)}.celebration[data-tier=mega]{background:radial-gradient(#654616dd,#180e19ed)}
.celebration[data-tier=super] #celebration-title{color:#ffa1d0;text-shadow:0 4px #941359,0 7px #391025,0 0 40px #ff409980}.celebration[data-tier=mega] #celebration-title{color:#ffe396;text-shadow:0 4px #b46e12,0 7px #533312,0 0 45px #ffc34270}
.celebration[data-tier] #celebration-poo{width:125px;height:125px}.celebration[data-tier=mega] #celebration-inner{border-color:#ffe69b;box-shadow:0 0 0 3px #825822,0 0 55px #ffce4050}
@media(max-width:600px) and (orientation:portrait){.sewer-backdrop{background-position:52% center}.pipe-view{width:180%;left:-40%;right:-40%}.pipe-caption{bottom:17%}.pipe-caption span{font-size:8px;letter-spacing:3px}.celebration[data-tier] #celebration-poo{width:85px;height:85px}}
.hold-title{display:none}.hold-mode .machine-top{background:none;border:0;box-shadow:none;justify-content:center}.hold-mode #mode-label{display:none}.hold-mode .hold-title{display:block;width:min(260px,55%);height:38px;object-fit:contain;filter:drop-shadow(0 3px 3px #0009)}
@media(max-width:1050px){.hold-mode .hold-title{height:30px}}@media(max-width:600px) and (orientation:portrait){.hold-mode .hold-title{height:32px;width:55%}}
.scene-lab{position:fixed;right:10px;bottom:5px;z-index:50;background:#1b111aee;color:#efc97e;border:1px solid #987547;border-radius:7px;padding:7px 10px;font:10px Arial,sans-serif;max-width:310px;box-shadow:0 3px 10px #0008}.scene-lab summary{cursor:pointer;letter-spacing:1px}.scene-lab small{display:block;margin:10px 0;color:#ccb9b3}.scene-lab div{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0}.scene-lab button{padding:7px 9px;border-radius:5px;border:1px solid #87613c;background:#35221f;color:#ffe5b3;font:11px Arial,sans-serif}.scene-lab p{margin:3px 0}.scene-lab p:empty{display:none}.sewer-mode .buy-control{visibility:hidden}
.buy-control{left:3%;width:18%;max-width:none;min-width:0;aspect-ratio:3.5;height:auto;padding:0;border:0;border-radius:0;background:transparent url('assets/buy-bonus.webp?v=field-8') center/contain no-repeat;box-shadow:none;font-size:0;color:transparent;text-shadow:none;filter:drop-shadow(0 4px 4px #0009)}.buy-control::before,.buy-control small{display:none}.buy-control:hover:not(:disabled){filter:brightness(1.12) drop-shadow(0 5px 5px #0009)}.buy-control:focus-visible{outline:2px solid #ffd989;outline-offset:3px;border-radius:20px}.buy-control:disabled{opacity:.55}
.marquee-lights{position:absolute;pointer-events:none;z-index:1}.marquee-light{position:absolute;width:7.6%;aspect-ratio:1;transform:translate(-50%,-50%)}.marquee-light i{position:absolute;inset:0;border-radius:50%;pointer-events:none}.bulb-halo{background:radial-gradient(circle,#fffdeede 0 10%,#ffe6a8a8 18%,#ffac386b 31%,#ed850e29 46%,transparent 69%);mix-blend-mode:screen;opacity:0}.bulb-dimmer{background:radial-gradient(circle,#4c331366 0 11%,#61451244 15%,transparent 23%);opacity:.7}.sewer-mode .marquee-lights{display:none}.reduced .bulb-dimmer{opacity:0!important}.reduced .bulb-halo{opacity:0!important}
@media(max-width:600px) and (orientation:portrait){.buy-control{left:4%;top:auto;bottom:calc(68% + 38px);width:40%;z-index:4}}
.pipe-transition.return-fade{background:#130d14}.return-fade>*{visibility:hidden}.poo-poof{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;pointer-events:none;z-index:5;transform-origin:center;will-change:transform,opacity}
#celebration-art{display:block;width:min(620px,100%);height:clamp(150px,28vw,360px);object-fit:contain;margin:8px auto;filter:drop-shadow(0 10px 18px #0009)}#celebration-art[hidden]{display:none}
.celebration[data-tier] #celebration-inner{border:0;background:none;box-shadow:none;border-radius:0;width:min(850px,94%);padding:18px 25px;display:flex;flex-direction:column;align-items:center}
.celebration[data-tier] #celebration-poo,.celebration[data-tier] #celebration-description{display:none}
.celebration[data-tier] #celebration-title{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.celebration[data-tier] #celebration-kicker{font-size:10px;letter-spacing:4px;text-shadow:0 2px 8px #000}
.celebration[data-tier] #celebration-amount{font:900 clamp(42px,6vw,86px)/1.1 Arial,sans-serif;letter-spacing:-2px;color:#ffe7a8;text-shadow:0 3px #9b5d23,0 6px #361b15,0 8px 22px #000;margin:0 0 25px;font-variant-numeric:tabular-nums}
.celebration[data-tier] #celebration-continue:disabled{visibility:hidden}.celebration[data-tier] #celebration-continue{margin:0;min-height:48px}
@media(max-width:600px) and (orientation:portrait){.celebration[data-tier] #celebration-inner{width:98%;max-width:98%;padding:12px 8px}#celebration-art{height:250px;max-height:34svh;width:100%;margin:12px auto}.celebration[data-tier] #celebration-kicker{font-size:8px;letter-spacing:2px}.celebration[data-tier] #celebration-amount{margin-bottom:28px}}
