@font-face{font-family:Pixel;src:local('Courier New')}*{box-sizing:border-box} :root{--cream:#f2ebd8;--ink:#171b21;--muted:#8e9196;--blue:#648be6;--gold:#e4b653}body{margin:0;background:var(--ink);color:var(--cream);font-family:'Courier New',monospace}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:3px solid var(--gold);outline-offset:5px}header{height:90px;background:var(--cream);color:var(--ink);display:flex;align-items:center;justify-content:space-between;padding:0 4%;border-bottom:5px solid #070a0e}.wordmark{display:flex;align-items:center;gap:10px;font-size:38px;font-weight:1000;letter-spacing:-3px}.wordmark svg{width:30px;height:30px}.tag{font-size:10px;letter-spacing:1px;margin-left:23px;border-left:1px solid #b1ac9e;padding-left:23px}nav{display:flex;gap:34px;align-items:center;font-size:11px;font-weight:bold;letter-spacing:1px}nav a{border-bottom:2px solid var(--ink);padding-bottom:5px}nav span{font-size:18px}.textbutton{background:none;border:0;font-size:11px;font-weight:bold;letter-spacing:1px;color:inherit}.dashboard{display:grid;grid-template-columns:1.15fr 1fr 1.15fr;padding:29px 4% 26px;gap:32px;background:#1d2128}.stat{display:flex;flex-direction:column;align-items:flex-start;gap:9px}.stat.middle{border-left:1px solid #3c3d40;border-right:1px solid #3c3d40;padding-left:36px}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:bold;display:flex;align-items:center;gap:9px}.square{display:inline-block;width:6px;height:6px;background:var(--blue)}.amber{background:var(--gold)}.stat strong{font-size:43px;letter-spacing:-2px;line-height:1;white-space:nowrap;font-weight:bold}.stat small{font-size:9px;letter-spacing:1.3px;color:#9a9ca3}.stat em{font-size:22px;font-style:normal;color:#868a90;margin-left:7px}.rewards{background:none;border:0;color:var(--cream);text-align:left;justify-self:stretch;padding:0 0 0 14px}.rewards:hover .eyebrow{color:var(--gold)}.rewards small span{margin-left:14px}.mine{position:relative;height:max(460px,calc(100svh - 318px));min-height:460px;max-height:850px;overflow:hidden;border-top:4px solid #090d13;border-bottom:4px solid #080b10;background:#1c2028}canvas{display:block;width:100%;height:100%;image-rendering:pixelated;touch-action:pan-y}.mine-top{position:absolute;left:4%;right:4%;top:22px;display:flex;justify-content:space-between;font-size:10px;color:#b9b7ae;letter-spacing:1.4px;pointer-events:none}.shift{display:flex;align-items:center;gap:9px}.shift i{width:6px;height:6px;background:#b9bc86;box-shadow:0 0 0 3px #b9bc8619}.chapter{position:absolute;top:93px;left:5%;pointer-events:none;text-shadow:3px 3px #14171f}.chapter>span{font-size:9px;color:#c1b6a0;letter-spacing:2px}.chapter h1{font-family:'Courier New',monospace;font-weight:1000;font-size:clamp(40px,4.6vw,76px);line-height:.97;letter-spacing:-4px;margin:15px 0}.chapter p{font-size:11px;color:#aca79e}.depth-mark{position:absolute;right:4%;top:60px;font-size:9px;letter-spacing:1px;color:#8e929e}.game-controls{position:absolute;bottom:40px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:15px}.squarebutton{height:44px;width:44px;color:#c1c2bf;background:#1b2029;border:2px solid #62666c;box-shadow:3px 3px #080a0d;font-size:20px;display:flex;align-items:center;justify-content:center}.squarebutton svg{height:20px;width:20px}.dig{display:flex;align-items:center;gap:16px;background:var(--cream);color:#16191e;border:4px solid #0a0d13;box-shadow:0 5px #595c60,5px 5px #080a0e;padding:16px 24px;font-size:16px;font-weight:1000;letter-spacing:1px;white-space:nowrap;touch-action:none;user-select:none}.dig:active,.dig.pressed{transform:translateY(4px);box-shadow:0 1px #595c60,3px 3px #080a0e;background:#dfb753}.dig svg{width:23px;height:23px}.dig kbd{font:9px 'Courier New';border:1px solid #919185;padding:4px;margin-left:6px;color:#5c5b55}.hint{position:absolute;bottom:16px;width:100%;text-align:center;font-size:8px;letter-spacing:1.2px;color:#9c9d9d;pointer-events:none}.hint span{margin:0 10px;color:#e0b14b}footer{padding:22px 4%;display:flex;align-items:center;justify-content:space-between;gap:20px}.contract{display:flex;align-items:center;gap:14px}.contract>span{font-size:10px;color:#888c95;letter-spacing:1px}.contract button{display:flex;align-items:center;gap:18px;padding:0;background:none;color:#c8c7c1;border:0;font-size:10px}.contract code{font-family:inherit}.contract button>span{color:#d4ba7e;font-size:9px;display:flex;gap:8px;align-items:center}.contract svg{width:13px;height:13px}.footer-note{font-size:8px;letter-spacing:1.1px;color:#777c86}.milestone{position:absolute;top:50%;left:60%;font-size:13px;font-weight:bold;color:#f4d581;pointer-events:none;transform:translate(-50%,-50%);text-shadow:2px 2px #000}dialog{border:3px solid #b9b09a;background:#20252e;color:var(--cream);max-width:500px;width:calc(100% - 32px);padding:35px;box-shadow:8px 8px #06090d}dialog::backdrop{background:#06090de0}dialog h2{font-size:29px;letter-spacing:-1px}dialog p{font-size:13px;line-height:1.7;color:#b6b9bc}dialog .close{position:absolute;top:10px;right:13px;color:var(--cream);background:none;border:0;font-size:26px}.notice{padding:16px;background:#141920;color:#d0bb8a;font-size:11px;line-height:1.7}.primary{display:block;margin-top:22px;padding:14px;border:0;background:var(--cream);color:var(--ink);font-size:11px;font-weight:bold;text-align:center}.reward-detail{padding:20px;background:#141920}.reward-detail>span{font-size:10px;letter-spacing:1px}.reward-detail strong{display:block;font-size:38px;margin-top:12px}.reward-detail p{font-size:11px}dialog .small{font-size:10px}.paused .shift i{background:var(--gold)}@media(min-width:1600px){.dashboard{padding-top:35px;padding-bottom:35px}.mine{height:calc(100svh - 334px)}}@media(max-width:750px){header{height:70px;padding:0 5%}.wordmark{font-size:30px}.wordmark svg{width:24px}.tag{display:none}nav{gap:15px;font-size:10px}nav .textbutton{font-size:9px;letter-spacing:0}.dashboard{padding:23px 5%;gap:14px;grid-template-columns:1fr .75fr 1.15fr}.stat{gap:10px}.stat strong{font-size:29px}.stat.middle{padding-left:14px}.stat small{font-size:7px;letter-spacing:.3px}.eyebrow{font-size:8px;letter-spacing:.6px;gap:6px}.rewards{padding-left:0}.stat em{font-size:15px}.mine{height:calc(100svh - 283px);min-height:490px}.chapter{top:71px;left:6%}.chapter h1{font-size:41px;letter-spacing:-2px}.chapter>span{font-size:7px}.chapter p{font-size:9px}.mine-top{font-size:8px;left:6%;right:6%}.depth-mark{font-size:7px;top:51px}.game-controls{gap:10px;bottom:43px}.dig{padding:14px 19px;font-size:14px;gap:10px}.dig kbd{display:none}.squarebutton{width:36px;height:36px}.hint{font-size:7px;letter-spacing:.5px}footer{padding:18px 5%;justify-content:center}.contract{gap:8px;max-width:100%}.contract button{gap:10px;min-width:0}.contract code{font-size:9px;word-break:break-all}.contract button>span{flex-shrink:0;font-size:8px}.footer-note{display:none}.milestone{left:65%;font-size:11px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto}}
.payout-history{display:flex;flex-direction:column;gap:9px;margin-top:16px}.payout-history a{font-size:11px;color:#dac484;text-decoration:underline;text-underline-offset:3px}.rewards strong{font-size:clamp(25px,3.1vw,43px)}@media(max-width:750px){.rewards strong{font-size:24px}.chapter h1{font-size:36px}}
/* Give the mine the full stage; keep controls and counters quiet. */
.mine{background:#151b24}.dashboard{background:#191f28;border-top:1px solid #ffffff08}.stat strong{font-variant-numeric:tabular-nums}.game-controls{gap:12px}.dig{border-width:3px;box-shadow:0 4px #676864,4px 4px #080a0e;padding:14px 25px}.squarebutton{background:#171e28;border-color:#606971}.mine:after{content:'';position:absolute;inset:0;pointer-events:none;box-shadow:inset 0 15px 20px #080d1333,inset 0 -8px 15px #080d1320}.hint{color:#a4a6a9}footer{justify-content:center}.contract button{font-size:11px}header{height:78px}.dashboard{padding-top:25px;padding-bottom:25px}.mine{height:max(470px,calc(100svh - 294px))}@media(max-width:750px){header{height:64px}.dashboard{padding:22px 5%}.mine{height:calc(100svh - 261px);min-height:450px}.contract button{font-size:9px}.dig{padding:14px 20px}}

.reward-light{display:inline-block;position:relative;width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:#66e59a;box-shadow:0 0 7px #66e59a88;animation:reward-glow 1.8s ease-in-out infinite}.reward-light:after{content:'';position:absolute;inset:-3px;border:1px solid #66e59a;border-radius:50%;animation:reward-pulse 1.8s ease-out infinite}@keyframes reward-pulse{0%{transform:scale(.6);opacity:.8}100%{transform:scale(1.8);opacity:0}}@keyframes reward-glow{0%,100%{opacity:.55;box-shadow:0 0 3px #66e59a44}50%{opacity:1;box-shadow:0 0 10px 2px #66e59aaa}}

.awaiting-entry{overflow:hidden}.entry-gate{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;background:#090e17b8;backdrop-filter:blur(3px)}.enter-site{display:flex;align-items:center;gap:20px;padding:16px 24px;background:var(--cream);color:var(--ink);border:2px solid #080b10;box-shadow:4px 4px 0 #080b10;font-size:12px;font-weight:bold;letter-spacing:2px;min-height:48px}.enter-site span{font-size:17px}.enter-site:hover{background:#fff8e4;transform:translateY(-2px)}.enter-site:active{transform:translate(2px,2px);box-shadow:2px 2px 0 #080b10}
/* Dust, chalk, worn wood and tarnished iron. */
:root{--cream:#d7c9a5;--ink:#171910;--muted:#9d9782;--gold:#b89a57;--blue:#8d896a}
body{background:#191a13 url('/assets/soot.svg');color:#d7c9a5}
header{position:relative;background-color:#342a1d;background-image:url('/assets/soot.svg'),repeating-linear-gradient(1deg,transparent 0 9px,#080b0755 10px 12px,transparent 13px 25px),linear-gradient(#51402a,#28251a);color:#ded2b0;border-top:3px solid #14160f;border-bottom:6px solid #0b1009;box-shadow:inset 0 2px #7e6944,inset 0 -2px #625235}
header:after,header:before{content:'';position:absolute;width:6px;height:6px;background:#282b20;box-shadow:1px 1px #8a7956,-1px -1px #12170d;top:11px;pointer-events:none}header:before{left:12px}header:after{right:12px}
.wordmark{font-family:Georgia,serif;font-weight:900;font-size:38px;letter-spacing:-2px;transform:rotate(-2deg);text-shadow:2px 2px #0b1109;color:#e2d5ad}.wordmark svg{color:#0c120a;filter:drop-shadow(1px 1px 0 #86744e)}
nav{font-size:10px;letter-spacing:.4px}nav a{border-color:#86734d}nav .textbutton{color:#b6ab8c;font-size:10px;letter-spacing:.4px}
.dashboard{position:relative;background-color:#1d2118;background-image:url('/assets/soot.svg'),linear-gradient(98deg,#0a100840,transparent 30%,#090d0755 80%);padding-top:24px;padding-bottom:24px;border-top:1px solid #756445;border-bottom:4px solid #0b1009;gap:30px;box-shadow:inset 0 7px 12px #0005,inset 0 -2px #514c34}
.stat{gap:9px}.stat.middle{border-color:#67634866;border-left:2px dashed #67634866;border-right:2px dashed #67634866}.stat strong{color:#e0d6b9;text-shadow:1px 2px #030902;font-size:42px;font-weight:bold;letter-spacing:-2px}.stat small{color:#9e9e83;letter-spacing:.4px}.eyebrow{letter-spacing:.7px;color:#b8b69a;font-size:10px}.square{background:#8e8b69;transform:rotate(12deg)}.stat em{color:#9c9d84}.rewards:hover .eyebrow{color:#d9c99b}
.mine{background:#171910;border-color:#090e07;box-shadow:inset 0 0 50px #0005}.mine:after{box-shadow:inset 0 20px 30px #080b0766,inset 0 -12px 22px #080b0744}
.dig,.enter-site{background:#82704a url('/assets/soot.svg');color:#efe2b9;border:3px solid #13180e;border-top-color:#ae9360;border-left-color:#9c8152;box-shadow:0 4px #3e3b27,4px 4px #090f07;text-shadow:1px 1px #342f1b;letter-spacing:.5px}
.dig:hover,.enter-site:hover{background-color:#927d52}.dig:active,.dig.pressed{background:#685c3e}.dig kbd{border-color:#b7a277;color:#d5c79d}.squarebutton{background:#303629 url('/assets/soot.svg');color:#b5b69b;border-color:#75765b;border-bottom-color:#161e10;border-right-color:#161e10;box-shadow:3px 3px #080e06}
.hint{color:#aaa88c;letter-spacing:.4px}.contract button{color:#b6b298}.contract button>span{color:#b9a36d}footer{background:#191d14 url('/assets/soot.svg');border-top:1px solid #5e5b3e;box-shadow:inset 0 6px 10px #090e0744}
dialog{background:#25291d url('/assets/soot.svg');border-color:#746744;color:#ded3b1}dialog p{color:#b4b49a}.notice,.reward-detail{background:#171e11}.primary{background:#a58c58;color:#171b10}.entry-gate{background:#090e08ba}.enter-site{font-size:12px;letter-spacing:1px}
@media(max-width:750px){.wordmark{font-size:30px}.dashboard{gap:12px;padding:22px 5%}.stat strong{font-size:29px}.rewards strong{font-size:24px}.eyebrow{font-size:8px;letter-spacing:.25px}.stat small{font-size:7px;letter-spacing:0}.stat.middle{padding-left:12px}nav{gap:15px}nav .textbutton{font-size:9px}.dig{padding:14px 20px}}
.rewards strong{font-size:clamp(24px,2.8vw,39px)}@media(max-width:750px){.rewards strong{font-size:clamp(16px,5vw,23px);letter-spacing:-1.1px}}
/* Mine tally boards, chalk lettering and room for touch controls. */
.dashboard{gap:20px;padding:18px 4% 22px;background:#1b1b13 url('/assets/soot.svg');border-bottom:5px solid #10120b;box-shadow:inset 0 -3px #423925}
.tally-board{position:relative;min-width:0;padding:17px 21px 15px;background:#262b21 url('/assets/soot.svg');border:5px solid #574329;border-left-color:#6e5331;border-top-color:#7a5e36;box-shadow:2px 3px #080d07,inset 0 0 15px #080c0766;gap:10px;transform:rotate(-.45deg)}
.tally-board:before,.tally-board:after{content:'';position:absolute;width:3px;height:3px;top:-1px;background:#181d13;box-shadow:1px 1px #ac8a4d}.tally-board:before{left:3px}.tally-board:after{right:3px}
.stat.middle{border:5px solid #59442c;border-left-color:#755738;border-top-color:#81613b;padding:17px 21px 15px;transform:rotate(.4deg)}
.rewards.tally-board{padding:17px 21px 15px;transform:rotate(-.2deg)}
.tally-board .eyebrow{font-size:10px;letter-spacing:.4px;color:#c6c1a7}.tally-board strong{font-size:39px;line-height:1;color:#e7e0c6;text-shadow:1px 1px #90937d44,2px 2px #080e09;font-weight:bold;letter-spacing:-1.8px}.tally-board small{font-size:8px;color:#a7ac92;letter-spacing:.2px}.tally-board .square{display:none}.tally-board em{color:#b4b69e;font-size:19px}
.rewards.tally-board strong{font-size:clamp(24px,2.8vw,39px)}.rewards.tally-board:hover{background-color:#2c3326}.reward-light.delayed{background:#a9b291;animation:reward-delay 3s ease-in-out infinite;box-shadow:none}.reward-light.delayed:after{animation:none;opacity:.15}@keyframes reward-delay{0%,100%{opacity:.4}50%{opacity:.75}}
.mine{height:max(470px,calc(100svh - 330px))}.game-controls{gap:12px;bottom:43px}.squarebutton{height:46px;width:46px}.dig{min-height:54px}.hint{bottom:17px}.contract code{overflow-wrap:anywhere}button{touch-action:manipulation}.dig{touch-action:none}
footer{padding:20px 4%;padding-bottom:max(20px,env(safe-area-inset-bottom));min-height:70px}
@media(max-width:750px){.dashboard{gap:7px;padding:13px 3% 17px;grid-template-columns:1fr .8fr 1.35fr}.tally-board,.stat.middle,.rewards.tally-board{padding:12px 8px 11px;border-width:3px;gap:9px}.tally-board strong{font-size:27px;letter-spacing:-1.2px}.tally-board .eyebrow{font-size:7px;letter-spacing:0;gap:5px}.tally-board small{font-size:6.5px;line-height:1.45;min-height:19px}.tally-board em{font-size:13px;margin-left:3px}.rewards.tally-board strong{font-size:clamp(17px,5.1vw,24px)}.mine{height:calc(100svh - 285px);min-height:420px}.game-controls{gap:9px;bottom:46px}.squarebutton{width:44px;height:44px}.dig{padding:14px 18px;min-height:52px;font-size:14px}.hint{font-size:6.5px;bottom:18px}.contract{width:100%;justify-content:center;gap:8px}.contract button{gap:7px}.contract code{font-size:8px}.contract button>span{font-size:8px}footer{padding:18px 4%;min-height:65px}.wordmark{font-size:29px}nav{gap:13px}}
@media(max-width:360px){.tally-board,.stat.middle,.rewards.tally-board{padding:11px 5px}.tally-board .eyebrow{font-size:6.5px}.rewards.tally-board strong{font-size:17px}.tally-board strong{font-size:24px}.contract code{font-size:7px}}
@media(max-width:750px){.stat.middle strong{display:flex;align-items:baseline;gap:1px;max-width:100%}.stat.middle #distance{font-size:clamp(17px,4.8vw,21px);letter-spacing:-1px}.stat.middle em{font-size:10px;margin-left:0}.stat.middle small{font-size:6px}}
