*{box-sizing:border-box}body{margin:0;color:#e8eee7;background:#102d36;font:14px/1.65 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background-image:linear-gradient(100deg,#0b2532ef,#102e35ee),url(chip.webp);background-size:cover;background-attachment:fixed}header,main,footer{max-width:1120px;margin:auto}header{display:flex;justify-content:space-between;align-items:center;padding:38px 32px 28px}.eyebrow{font-size:9px;letter-spacing:2.4px;font-weight:700;color:#a9c8c0}h1{font:49px/1.2 Georgia,serif;color:#fff2d4;margin:9px 0}h1 i,h2 i{font-weight:400;color:#ddb787}header p{color:#b9cdcc;margin:5px 0}.stamp{display:flex;align-items:center;gap:15px;color:#d5b887;font-size:60px}.stamp span{font-size:10px;letter-spacing:2px;line-height:1.7}main{display:grid;grid-template-columns:minmax(330px,590px) 1fr;gap:42px;padding:0 32px}.workbench{background:#193e49;border:1px solid #70958e66;border-radius:18px;overflow:hidden;align-self:start;box-shadow:0 24px 60px #0004}.chiphead{display:flex;justify-content:space-between;align-items:center;padding:18px 24px;background:#12323dc9}.chiphead span{font-size:10px;letter-spacing:1.5px;color:#b4c9c4}.chiphead h2{font:24px Georgia,serif;margin:5px 0;color:#f0dfbd}#moves{white-space:nowrap;font-size:12px}.chipfoot{display:flex;justify-content:space-between;padding:14px 22px;font-size:8px;letter-spacing:1px;color:#bbd6d3}.chipfoot span:first-child{color:#e2b877}.chipfoot span:nth-child(2){color:#94d5eb}#board{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;padding:20px;background:linear-gradient(#133d4570,#0d36377a),url(chip.webp) center/cover;aspect-ratio:1}button{font:inherit;cursor:pointer;color:#e4eeea;background:#244a54;border:1px solid #81a69d55;border-radius:7px;padding:10px 14px;font-size:12px}button:hover{background:#35616a}button:disabled{cursor:default;opacity:.5}button:focus-visible{outline:3px solid #f8d5a5;outline-offset:3px}.cell{position:relative;padding:0;background:#3e777555;border:1px solid #a1d1bb5c;border-radius:9px;aspect-ratio:1;min-width:0;min-height:0;box-shadow:inset 0 1px 9px #a4d6c010}.cell:hover{background:#9dc4ad40}.cell.wall{background:#0b2633c4;border-color:#244b56;cursor:default;box-shadow:inset 0 3px 10px #0005}.cell.wall:after{content:'×';color:#44616b;font-size:22px}.pad{color:#e9cb8c;font-size:28px}.pad:before{content:'✦';position:absolute;inset:0;display:grid;place-items:center;opacity:.8}.goal{box-shadow:inset 0 0 0 3px #d6bd8180;background:#27454fba}.goal .target{display:flex;flex-direction:column;justify-content:center;height:100%;font-size:10px;line-height:1.4;color:#f8e9c4}.target b{font-size:17px}.target em{font-style:normal;font-size:9px;color:#bed4cf}.goal.done{background:#4f8b7155;box-shadow:inset 0 0 0 2px #a8d0ac}.goal.done .target b{font-size:25px;color:#c6e3b5}.drop{position:absolute;inset:9%;border-radius:48% 52% 47% 53%;display:flex;flex-direction:column;justify-content:center;align-items:center;line-height:1.25;background:radial-gradient(circle at 30% 23%,#ffffffe0 0%,#ffffff60 11%,transparent 35%),radial-gradient(circle at 55% 55%,var(--dye),var(--dark));box-shadow:inset -3px -4px 7px #001e3580,inset 1px 1px 3px #fff7,0 4px 7px #00151c77;color:#092c37;text-shadow:0 1px 2px #fff5;z-index:2;font-size:16px;font-weight:800}.drop small{font-size:8px;font-weight:700;letter-spacing:.2px}.cell.selected{outline:3px solid #f4db9c;outline-offset:1px}.cell.reachable{border-color:#f1d99b;background:#adc59345}.cell.hinted{outline:3px dashed #fff1bd;outline-offset:1px}#message{min-height:62px;display:flex;align-items:center;padding:13px 23px;color:#d3dfd5;font-size:12px;background:#12303bc9}aside{padding-top:10px}aside h2{font:39px/1.17 Georgia,serif;margin:13px 0 18px}aside>p{color:#bdceca}.recipe{background:#183c46;border-left:3px solid #d7b581;border-radius:8px;padding:15px 18px;margin:21px 0}.recipe>span,.cabinet>span{font-size:9px;letter-spacing:1.8px;color:#b3c8c0}#recipes{margin-top:7px;display:flex;gap:8px;flex-wrap:wrap}.recipepill{border:1px solid #75948b70;border-radius:5px;font-size:12px;padding:4px 8px}.recipepill.done{opacity:.6;text-decoration:line-through}.instructions strong{font:19px Georgia;color:#ecddbc}.instructions p,.fine{font-size:11px;color:#b3c9c7}.splitrow{display:flex;gap:8px}.splitrow button{flex:1;background:#526053;color:#fff1c8}.controls{display:flex;gap:8px;margin:16px 0}.controls button{flex:1}.primary{background:#e1b782;color:#183743;border:0;font-weight:700;width:100%;margin-bottom:14px}.primary:hover{background:#f0cea0}#levels{display:flex;gap:6px;flex-wrap:wrap}#levels button{width:34px;height:34px;padding:0}#levels button.current{background:#d5b483;color:#1a3741}#levels button.solved{border-color:#9ac5a0}details{font-size:11px;border-top:1px solid #63867f55;margin-top:20px;padding-top:14px;color:#b1c9c3}summary{cursor:pointer;color:#e4dfcd}.cabinet{margin-top:16px;background:#12313c;padding:12px 16px;border-radius:7px}.cabinet strong{display:block;font:15px Georgia;margin-top:3px}footer{display:flex;justify-content:space-between;gap:15px;padding:26px 32px;font-size:10px;color:#9bbab7}a{color:#dcc39b}[hidden]{display:none!important}@media(max-width:800px){main{gap:22px;padding:0 20px;grid-template-columns:1.2fr 1fr}header{padding:26px 24px}h1{font-size:41px}.stamp{display:none}aside h2{font-size:31px}#board{padding:12px;gap:5px}.chiphead{padding:15px}.chiphead h2{font-size:20px}.drop{font-size:13px}.chipfoot{font-size:7px;padding:12px}.target b{font-size:14px}}@media(max-width:620px){main{display:flex;flex-direction:column;padding:0 16px;gap:26px}.workbench{width:100%}header{padding:25px 22px}header .eyebrow{font-size:8px;letter-spacing:1.5px}h1{font-size:40px}header p{font-size:12px}#board{padding:15px;gap:7px}.drop{font-size:17px}.drop small{font-size:8px}.chiphead h2{font-size:22px}aside{padding:0 7px}aside h2 br{display:none}aside h2 i{margin-left:6px}aside h2{font-size:31px}.cell .target b{font-size:17px}footer{padding:24px 22px;flex-direction:column;gap:4px}.instructions p,.fine{font-size:12px}.controls button,.splitrow button{padding:13px}#levels button{width:38px;height:38px}}
.directions{display:flex;gap:8px;margin:12px 0}.directions button{flex:1;font-size:21px;padding:5px 8px}
