:root{--brass:#d5aa60;--rust:#ac542c;--ink:#171b1c;--cream:#f4e7c8}*{box-sizing:border-box}body{margin:0;background:#11191d;color:var(--cream);font-family:Arial,sans-serif;background-image:radial-gradient(ellipse at 25% 30%,#39444355,transparent 60%),linear-gradient(90deg,#ffffff03 1px,transparent 1px);background-size:auto,60px 60px}a{color:inherit}button,input{font:inherit}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:3px solid #ffb937;outline-offset:5px}header,footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 5%;border-bottom:1px solid #b9934e44}header>a:first-child{text-decoration:none;font-weight:900;font-size:23px}header span{color:#d5aa60}header>a:last-child{font-size:13px}main{max-width:1400px;margin:auto;padding:35px 5%}.intro{margin-bottom:30px}.eyebrow{color:#d5aa60;font-size:11px;letter-spacing:2px;font-weight:bold}h1{font-family:Georgia,serif;font-size:clamp(40px,5vw,70px);margin:12px 0}p{line-height:1.65}.intro>p:last-child{color:#c4c7be}.layout{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(280px,1fr);gap:45px;align-items:start}.machine{position:relative;border:10px solid #6d5131;border-radius:22px;background:linear-gradient(130deg,#534c3c,#252b2a 45%,#4e493a);box-shadow:0 20px 50px #0009,inset 0 0 0 3px #bd9651;padding:22px 22px 0;overflow:hidden}.rivets{position:absolute;inset:4px;pointer-events:none;border:5px dotted #c79c59;border-radius:8px;opacity:.6}.plate{text-align:center;position:relative;background:linear-gradient(110deg,#b68b49,#e1bf7b,#b68b49);color:#261f16;padding:13px;border:2px solid #211d16;border-radius:7px;letter-spacing:4px;font-size:20px;font-weight:900;box-shadow:0 3px 5px #0008}.plate small{display:block;font-size:8px;letter-spacing:2px;margin-top:6px}.window{position:relative;height:260px;background:radial-gradient(ellipse,#28322f,#0b100f);border:7px solid #7b653d;border-radius:12px;margin:20px 0;box-shadow:inset 0 0 35px #000;overflow:hidden}.shaft{position:absolute;left:8%;top:48%;width:58%;height:16px;background:linear-gradient(#595b58,#d8d6c0,#3b423d);box-shadow:0 5px 10px #000}.gear{position:absolute;filter:drop-shadow(4px 8px 3px #000a);animation:spin 12s linear infinite;animation-play-state:paused}.gear.reverse{animation-direction:reverse;animation-duration:8s}.running .gear{animation-play-state:running}.pipe{position:absolute;border:10px solid #987147;border-radius:35px;box-shadow:2px 2px 3px #000,inset 2px 2px 2px #e8bc70}.p1{width:60%;height:110px;top:-65px;left:5%}.p2{width:50%;height:100px;bottom:-65px;right:3%}.gauge{position:absolute;right:5%;top:28px;width:36%;max-width:185px;aspect-ratio:1;border:8px solid #ad8c50;border-radius:50%;background:radial-gradient(#f5edcc,#caba94);color:#28291e;box-shadow:0 5px 10px #0008;text-align:center}.gauge svg{width:100%;display:block}.gauge strong{display:block;font:900 17px Georgia;margin-top:-13px}.gauge>span{display:block;font-size:6px;letter-spacing:1px;margin-top:8px}#needle{transform-origin:100px 105px;transition:transform .4s}.lamp{position:absolute;right:13%;bottom:20px;width:18px;height:18px;background:#453d28;border:3px solid #b9a274;border-radius:50%}.powered .lamp{background:#f2c769;box-shadow:0 0 18px #ffb82b}.steam{position:absolute;left:48%;top:0;opacity:0;font-size:42px;color:#cbe2d4}.running .steam{animation:steam 2s infinite}.hatch{position:absolute;bottom:12px;left:10%;width:42%;height:28px;background:#080d0c;border:4px ridge #987448;border-radius:4px;text-align:center}.hatch span{font-size:7px;letter-spacing:2px;color:#c3a976}.controls{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:12px}.control{padding:16px 12px;background:#1b2322;border:1px solid #8e7950;border-radius:7px;position:relative}.number{position:absolute;right:8px;top:6px;color:#a38a5e;font:italic 18px Georgia}.control label{display:block;font-size:9px;letter-spacing:1px;margin:5px 0 14px;font-weight:bold}.control label output{display:block;color:#efbc64;font-size:16px;letter-spacing:0;margin-top:8px}.switches{display:flex;gap:12px}.switches button{background:none;border:0;color:#e7dac0;font-size:10px;padding:0;flex:1}.switches i{display:block;width:30px;height:47px;border:3px solid #b29a67;background:#111915;border-radius:15px;margin:0 auto 8px;position:relative}.switches i:after{content:'';position:absolute;left:2px;bottom:2px;width:20px;height:20px;background:linear-gradient(#eee0b9,#7b7159);border-radius:50%;box-shadow:0 2px 3px #000}.switches button[aria-pressed=true] i:after{bottom:20px;background:#f2b94e}.sequence{grid-column:1/-1}.buttons{display:flex;gap:14px}.buttons button{flex:1;background:linear-gradient(#c99c55,#8b6030);color:#151a18;font-size:11px;font-weight:900;border:3px solid #221e14;border-radius:20px;padding:11px;box-shadow:0 4px 0 #080d0b}.buttons button:active{transform:translateY(3px);box-shadow:none}.dots{display:flex;justify-content:center;gap:10px;margin-top:14px}.dots i{width:8px;height:8px;background:#45483d;border-radius:50%}.dots i.on{background:#aee1a6;box-shadow:0 0 10px #84c987}input[type=range]{width:100%;accent-color:#e0af59;cursor:pointer}.scale{display:flex;justify-content:space-between;font-size:9px;color:#d0c7ae}.release{position:relative;width:100%;margin:16px 0;background:linear-gradient(#f3b14d,#b87220);border:3px solid #171b18;border-radius:6px;padding:15px;font-weight:900;letter-spacing:2px;color:#1c1b13;box-shadow:0 5px 0 #151a17}.release span{float:right;font-size:20px}.floor{height:175px;position:relative;margin:0 -22px;background:repeating-linear-gradient(0deg,#1b1c17 0 20px,#282921 21px 23px);border-top:5px solid #100f0c;perspective:600px}.floor-label{position:absolute;bottom:8px;width:100%;text-align:center;letter-spacing:4px;font-size:8px;color:#9f9c87}#reward{position:relative;z-index:2;display:block;width:270px;max-width:90%;margin:12px auto 0;background:linear-gradient(110deg,#fff2cb,#d9b66e);color:#211c14;border:2px solid #392b15;border-radius:5px;padding:14px 20px;box-shadow:4px 9px 12px #0009;text-decoration:none;transform:rotate(-3deg)}#reward[hidden]{display:none}#reward small{font-size:8px;letter-spacing:1px}#reward strong{font:700 21px Georgia;display:block;margin:7px 0}#reward>span{font-size:12px;font-weight:bold;text-decoration:underline}.drop{animation:drop 1.3s both}aside h2{font:36px/1.1 Georgia}aside>p{font-size:14px;color:#c7cbbf}ol{padding:0;list-style:none;counter-reset:step}li{counter-increment:step;border-top:1px solid #b9934e44;padding:16px 0 16px 40px;position:relative}li:before{content:'0' counter(step);position:absolute;left:0;color:#d5aa60;font:22px Georgia}li strong{display:block;font-size:14px}li span{display:block;font-size:13px;color:#c7cbbf;line-height:1.5;margin-top:5px}.status{background:#080e10;border-left:3px solid #d5aa60;padding:18px;font-size:14px;line-height:1.6;min-height:100px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0}.actions button{color:#e4c285;background:none;border:1px solid #9d8559;padding:9px;font-size:11px}.note{font-size:11px!important}.bypass{display:block;font-size:12px;line-height:1.6;color:#d9b875;margin-top:20px}.about{margin:45px 0 10px;border-top:1px solid #b9934e44;padding-top:20px;max-width:850px}.about h2{font:28px Georgia}.about p{font-size:14px;color:#c7cbbf}.about a{color:#e3be7d}footer{font-size:11px;color:#c7cbbf;border-top:1px solid #b9934e44;border-bottom:0}@keyframes spin{to{transform:rotate(360deg)}}@keyframes steam{0%{opacity:0;transform:translateY(20px)}50%{opacity:.4}100%{opacity:0;transform:translateY(-35px)}}@keyframes drop{0%{transform:translateY(-200px) rotate(15deg);opacity:0}25%{opacity:1}65%{transform:translateY(12px) rotate(-9deg)}82%{transform:translateY(-15px) rotate(2deg)}100%{transform:translateY(0) rotate(-3deg)}}@media(max-width:800px){.layout{grid-template-columns:1fr;gap:24px}main{padding:25px 4%}.machine{padding:16px 14px 0;border-width:7px}.floor{margin:0 -14px}.window{height:235px}.gauge{right:3%;top:35px}.gauge strong{font-size:14px}.gauge>span{font-size:5px}.plate{font-size:16px;letter-spacing:2px}header{padding:20px 4%}header>a:last-child{font-size:10px;max-width:110px}.intro{margin-bottom:22px}aside h2 br{display:none}footer{align-items:start;line-height:1.5}footer span{max-width:150px;text-align:right}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}
