@font-face{font-family:Inter;src:local(Arial)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f3f0e8;color:#202020;font-family:Arial,Helvetica,sans-serif}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{opacity:.4;cursor:default}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #c7922d;outline-offset:4px}[hidden]{display:none!important}.concept-bar{padding:11px 5%;background:#1d1d1d;color:#ddc389;display:flex;justify-content:space-between;font-size:10px;font-weight:700;letter-spacing:1.7px}.concept-bar span{letter-spacing:.8px;color:#c4c1b9}header{display:flex;justify-content:space-between;align-items:center;padding:22px 0;max-width:1200px;margin:auto;border-bottom:1px solid #d8d3c8}.brand{display:flex;text-decoration:none;align-items:center;gap:12px}.brand b{font-size:31px;letter-spacing:-2px;border:2px solid #242424;padding:5px 7px}.brand span{font-size:10px;letter-spacing:1.7px;font-weight:700;line-height:1.4}nav{display:flex;align-items:center;gap:30px;font-size:12px}nav a{text-decoration:none}.text-button{background:transparent;border:0;color:#68645d;padding:0}.text-button:hover,nav a:hover{color:#9c6915}main{max-width:1200px;margin:0 auto}.intro{display:flex;justify-content:space-between;align-items:end;padding:30px 0 24px}.eyebrow{font-size:10px;font-weight:700;letter-spacing:1.8px;color:#9f7325;margin:0 0 13px}h1{font-size:42px;letter-spacing:-1.8px;line-height:1.12;margin:0}h1 span{display:block;font-size:16px;font-weight:400;letter-spacing:0;color:#747068;margin-top:10px}.play-note{font-size:12px;line-height:1.5;color:#555149;text-align:right;padding-bottom:3px}.play-note small{font-size:11px;color:#8c877d}.status-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#c49131;margin-right:7px}.play-layout{display:grid;grid-template-columns:minmax(0,1.48fr) minmax(0,1fr);gap:24px;align-items:stretch}.game-panel{background:#18191c;color:#f1eee7;border-radius:8px;overflow:hidden;border:1px solid #27292d;box-shadow:0 13px 35px #26211a10}.game-top{display:flex;justify-content:space-between;align-items:center;padding:22px 28px 16px}.tiny{font-size:9px;color:#b4a47f;letter-spacing:2px;margin:0 0 8px}.game-top h2{font-size:21px;letter-spacing:-.4px;margin:0}.level-label{font-size:13px;color:#ab9a78;font-family:monospace}.hud{display:grid;grid-template-columns:repeat(3,1fr);padding:0 28px 16px;gap:12px}.hud>div{padding:12px 0 0;border-top:1px solid #3b3934}.hud span{display:block;color:#9e9d98;font-size:9px;letter-spacing:1.5px}.hud strong{font-size:26px;letter-spacing:-1px;line-height:1.5}.hud strong span{display:inline;font-size:14px;margin-left:3px}.board-area{position:relative;max-width:410px;width:72%;margin:0 auto 12px;padding:9px;background:#111214;border:1px solid #454038;border-radius:5px}.board{display:grid;grid-template-columns:repeat(4,1fr);gap:5px}.tile{aspect-ratio:1;border:1px solid #4b4b4b;border-radius:5px;background:linear-gradient(145deg,#303136,#24252a);padding:0;position:relative;transition:background .2s,border-color .2s;overflow:hidden}.tile:hover:not(:disabled){background:#3c3b36;border-color:#c8a970}.tile:disabled{opacity:1}.tile svg{width:100%;height:100%;display:block;overflow:visible}.pipe-shadow{fill:none;stroke:#141518;stroke-width:27;stroke-linecap:butt}.pipe-body{fill:none;stroke:#a77542;stroke-width:23;stroke-linecap:butt}.pipe-center{fill:none;stroke:#d9b47c;stroke-width:12;stroke-linecap:butt}.tile.flowing .pipe-center{stroke:#5dc8ed;filter:drop-shadow(0 0 3px #5dc8ed)}.tile.hinted{box-shadow:inset 0 0 0 3px #f6ce79}.source-port,.sink-port{position:absolute;left:-36px;font-size:10px;font-weight:bold;color:#6ecfed;border:1px solid #3d8da8;background:#152d37;padding:7px 4px;border-radius:3px;width:34px;text-align:center;transform:translateY(-50%)}.sink-port{left:auto;right:-39px;color:#ebca85;border-color:#9c7b3e;background:#3b2e1a;width:38px}.game-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#151617f5,#161719ee);display:grid;place-items:center;border-radius:3px;padding:20px}.overlay-inner{max-width:285px;text-align:center}.overlay-inner .eyebrow{font-size:8px;color:#c7a263;letter-spacing:1.6px}.overlay-inner h3{font-size:43px;letter-spacing:-1.8px;line-height:1.04;margin:15px 0;color:#f9f5e9}.overlay-inner>p:not(.eyebrow){color:#b7b5ad;font-size:12px;line-height:1.5;margin:0 0 17px}.primary{display:inline-flex;gap:26px;align-items:center;justify-content:space-between;padding:13px 20px;background:#d8b05f;color:#18191c;border:1px solid #d8b05f;border-radius:3px;font-size:12px;font-weight:700;line-height:1.2;text-decoration:none}.primary:hover{background:#edca81;border-color:#edca81}.primary span{font-size:17px;font-weight:400}.secondary{background:transparent;border:1px solid #5f5d55;border-radius:3px;color:inherit;font-size:12px;padding:10px 15px}.secondary:hover:not(:disabled){border-color:#bc9c62}.small{padding:10px 15px}.untimed{display:flex;justify-content:center;align-items:center;gap:5px;color:#b4b0a6;font-size:10px;margin-top:13px}.untimed input{accent-color:#d8b05f;width:12px;height:12px}.game-bottom{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 28px 20px}.game-bottom p{color:#aaa79e;font-size:11px;line-height:1.4;max-width:245px;margin:0}.game-bottom>div{display:flex;gap:8px;flex-shrink:0}.story-panel{background:#fffdf7;border:1px solid #d9d1c2;border-radius:8px;overflow:hidden}.story-art{height:220px;background:radial-gradient(ellipse at 70% 55%,#a68042,#282925);position:relative}.story-art img{width:100%;height:100%;object-fit:cover;object-position:75% 55%}.story-art>span{position:absolute;bottom:10px;left:16px;font-size:8px;letter-spacing:1.4px;background:#181817d9;color:#e6d3a9;padding:5px 8px}.story-content{padding:25px 28px}.story-content h2{font-size:31px;letter-spacing:-1px;line-height:1.05;margin:0 0 13px}.story-content>p:not(.eyebrow){font-size:13px;color:#777269;line-height:1.6;margin:0 0 21px}.story-content ol{padding:0;list-style:none;counter-reset:steps;margin:0}.story-content li{counter-increment:steps;position:relative;padding-left:34px;margin-bottom:15px}.story-content li:before{content:'0' counter(steps);position:absolute;left:0;color:#b28a41;font-size:11px;top:1px}.story-content li b{display:block;font-size:12px;margin-bottom:4px}.story-content li span{display:block;font-size:11px;color:#7c776c}.text-link{border:0;background:transparent;border-bottom:1px solid #bdaa83;padding:8px 0;color:#7c5d28;font-size:11px;text-align:left}.text-link span{margin-left:20px}.story-content>.text-link{margin-top:6px}.end-panel{display:grid;grid-template-columns:1fr 1fr;overflow:hidden;background:#18191c;border-radius:8px;color:#f9f4e7;margin:0 0 22px;min-height:510px}.end-art img{width:100%;height:100%;object-fit:cover}.end-copy{padding:55px 40px}.end-copy h2{font-size:39px;letter-spacing:-1.5px;margin:0 0 22px;line-height:1.1}.end-copy>p:not(.eyebrow){color:#bbb7ae;font-size:15px;line-height:1.6;max-width:360px}.end-copy .end-disclosure{font-size:10px!important;margin-top:20px;line-height:1.6}.end-actions{display:flex;gap:12px;margin-top:27px}.concept-explainer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #d5cfc2;margin-top:26px;padding:20px 0;gap:20px}.concept-explainer p{font-size:11px;color:#8a8479;line-height:1.6;max-width:740px;margin:0}.concept-explainer b{font-size:12px;color:#4e4a43}footer{max-width:1200px;margin:16px auto 25px;padding-top:16px;border-top:1px solid #d5cfc2;font-size:9px;line-height:1.7;color:#908a7f;display:flex;justify-content:space-between;gap:25px}dialog{max-width:500px;width:calc(100% - 35px);background:#f9f6ee;color:#24231f;border:1px solid #cbb993;border-radius:8px;padding:35px;box-shadow:0 20px 70px #0005}dialog::backdrop{background:#141414a8}dialog h2{font-size:27px;letter-spacing:-.7px;line-height:1.2;margin:10px 0 16px}dialog p{font-size:13px;line-height:1.7;color:#6a655b}dialog a{color:#7f591b}dialog .primary{margin-top:12px}.close-modal{position:absolute;right:13px;top:8px;border:0;background:transparent;font-size:25px;color:#6b604e}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:22px 0}.stats-grid b{font-size:30px;display:block}.stats-grid span{font-size:10px;color:#888077}
@media(min-width:1440px){header,main,footer{max-width:1200px}.board-area{max-width:415px}.story-art{height:240px}}
@media(max-width:1260px){header,main,footer{margin-left:4%;margin-right:4%}.game-bottom{padding-left:20px;padding-right:20px}.game-bottom p{font-size:10px;max-width:185px}.story-content{padding:24px}.board-area{width:76%}}
@media(max-width:900px){.play-layout{grid-template-columns:1.2fr 1fr;gap:14px}.story-art{height:190px}.story-content{padding:20px}.story-content h2{font-size:27px}.story-content>p:not(.eyebrow){font-size:11px}.game-top{padding:20px}.game-top h2{font-size:17px}.hud{padding-left:20px;padding-right:20px}.board-area{width:76%}.overlay-inner h3{font-size:33px}.overlay-inner>p:not(.eyebrow){font-size:11px}.overlay-inner .eyebrow{display:none}.game-bottom{display:block}.game-bottom>div{margin-top:10px}.game-bottom p{max-width:none}h1{font-size:37px}.story-content li{margin-bottom:13px}.end-copy{padding:40px 25px}.end-copy h2{font-size:32px}}
@media(max-width:640px){.concept-bar{font-size:8px;padding:10px 5%;letter-spacing:1px}.concept-bar span{display:none}header{padding:17px 0}.brand b{font-size:25px}.brand span{font-size:8px}nav{gap:15px;font-size:10px}nav a{display:none}nav button{font-size:10px}#aboutButton{display:none}.intro{padding:27px 0 23px}.intro .eyebrow{font-size:8px;letter-spacing:1.1px}.intro h1{font-size:33px;letter-spacing:-1.4px}.intro h1 span{font-size:12px;letter-spacing:0}.play-note{display:none}.play-layout{grid-template-columns:1fr;gap:20px}.game-top{padding:20px 22px 15px}.game-top h2{font-size:21px}.hud{padding-left:22px;padding-right:22px}.board-area{width:75%;max-width:360px}.game-bottom{display:flex;gap:10px;padding:14px 20px 20px}.game-bottom p{max-width:145px;font-size:10px}.game-bottom>div{margin:0;gap:6px}.small{padding:10px}.secondary{padding:10px}.overlay-inner h3{font-size:36px}.overlay-inner>p:not(.eyebrow){font-size:11px}.overlay-inner .eyebrow{display:block;font-size:7px}.overlay-inner{max-width:250px}.game-overlay{padding:16px}.story-panel{display:grid;grid-template-columns:1fr 1.1fr}.story-art{height:auto;min-height:300px}.story-art img{object-position:75% 50%}.story-content{padding:23px 17px}.story-content .eyebrow{font-size:7px;letter-spacing:1px}.story-content h2{font-size:24px}.story-content>p:not(.eyebrow){font-size:11px;margin-bottom:15px}.story-content ol{display:none}.story-content>.text-link{line-height:1.6;font-size:10px}.story-content>.text-link span{margin-left:0}.concept-explainer{display:block}.concept-explainer .text-link{margin-top:12px}.end-panel{grid-template-columns:1fr}.end-art{height:210px}.end-copy{padding:30px}.end-copy h2{font-size:32px}footer{display:block;font-size:8px;margin-bottom:20px}footer span{display:block;margin-bottom:7px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.story-art img{object-position:75% 0%}
.embed{background:transparent}.embed .concept-bar,.embed header,.embed .intro,.embed footer,.embed .concept-explainer{display:none}.embed main{margin:0;max-width:none}.embed .play-layout{gap:18px}.embed .story-art{height:220px}.embed .story-content ol{display:none}.embed .story-content{padding:27px}.embed .story-content>.text-link{margin-top:8px}.embed .game-panel{box-shadow:none}.embed .end-panel{margin:0;min-height:595px}.embed .end-art{min-height:595px}.embed .end-copy{padding:60px 36px}.embed .board-area{max-width:345px}.embed .game-bottom{padding-top:15px;padding-bottom:20px}
@media(max-width:640px){.embed .play-layout{grid-template-columns:1fr}.embed .story-panel{display:none}.embed .board-area{max-width:335px}.embed .end-art{min-height:200px}.embed .end-copy{padding:25px}}
