@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=IBM+Plex+Mono:wght@400;500&display=swap');
:root{--ink:#584239;--paper:#f0e5cd;--red:#ad733e;--line:#708071}*{box-sizing:border-box}body{margin:0;background:var(--ink);color:var(--ink);font:16px Georgia,serif}.paper{max-width:1600px;margin:20px auto;padding:22px 34px;border:10px double var(--ink);outline:1px solid #c2c5a9;outline-offset:-14px;background:repeating-linear-gradient(95deg,transparent 0 5px,#857c4905 6px 7px),var(--paper);min-height:95vh}a{color:inherit;text-underline-offset:4px}button,input,textarea,select{font:inherit;color:inherit}button,.primary{border:1px solid var(--ink);background:transparent;padding:11px 15px;cursor:pointer;text-decoration:none;display:inline-block}button:hover,.primary:hover{background:#58423910}button:disabled{opacity:.45;cursor:default}.primary{background:var(--ink);color:var(--paper)}.primary:hover{background:#305c4c}.small,small{font-size:12px;line-height:1.65}header{display:grid;grid-template-columns:1fr 1.1fr .9fr;align-items:center;padding:4px 6px 20px;border-bottom:3px double;gap:15px}.wordmark{font:bold clamp(32px,4.4vw,70px) 'Cormorant Garamond',Georgia,serif;text-decoration:none;letter-spacing:3px;line-height:1}.wordmark small{display:block;font:8px 'IBM Plex Mono',monospace;letter-spacing:1px;margin-top:8px}.motto{text-align:center}.motto i{font:italic 32px 'Cormorant Garamond',Georgia,serif}.motto span,.serial span{display:block;font:8px 'IBM Plex Mono',monospace;letter-spacing:1px;margin-top:12px}.serial{text-align:right;font:10px 'IBM Plex Mono',monospace;letter-spacing:2px}.serial strong{display:block;color:var(--red);font:bold 33px Georgia,serif;letter-spacing:1px;margin-top:5px}.scene img{width:100%;display:block;margin-top:10px}nav{display:flex;justify-content:space-around;gap:10px;flex-wrap:wrap;border-top:1px solid;border-bottom:3px double;padding:10px 0;font:10px 'IBM Plex Mono',monospace;text-transform:uppercase;letter-spacing:1px}.scene nav{margin-top:-5px}nav a{text-decoration:none;padding:3px}nav a:hover{text-decoration:underline}.workings{display:grid;grid-template-columns:1fr 1.12fr 1.1fr;gap:26px;padding:26px 0}.box{border:3px double var(--line);padding:15px;margin-bottom:22px;background:#f5f0db45}.box h2{font:bold 13px Georgia,serif;text-transform:uppercase;letter-spacing:1px;border-bottom:1px solid var(--line);padding-bottom:9px;margin:0 0 14px}.box h2 small{display:block;font:8px 'IBM Plex Mono',monospace;margin-top:7px;font-weight:400}dl{font:11px 'IBM Plex Mono',monospace}dl div{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-bottom:1px dotted #87947e}dt{max-width:62%}dd{margin:0;text-align:right}.ore{display:grid;grid-template-columns:45px 1fr 1fr;gap:8px;font:9px 'IBM Plex Mono',monospace;padding:13px 0;border-bottom:1px solid #889478}.ore b{color:var(--red)}.shaft h2{font:11px 'IBM Plex Mono',monospace;margin:0;text-transform:uppercase}.shaft p{font:8px 'IBM Plex Mono',monospace}.shaft svg{width:100%;height:610px}.shaft svg text{font:9px 'IBM Plex Mono',monospace;fill:var(--ink)}#lift{animation:sway 5s ease-in-out infinite;transform-origin:147px 15px}.paused #lift{animation-play-state:paused}@keyframes sway{50%{translate:0 7px}}.motion{display:flex;gap:8px;justify-content:center}.motion button{font-size:10px;padding:7px}.strata{display:grid;grid-template-columns:repeat(8,1fr);gap:4px}.strata button{padding:5px 0;font:8px 'IBM Plex Mono',monospace;min-width:0;border-color:#a0a88d}.strata .dug{background:#584239;color:var(--paper)}.strata .rich{background:var(--red);color:var(--paper)}.legend{font:8px 'IBM Plex Mono',monospace;line-height:1.6}.legend i{color:var(--red)}label{display:block;font:11px 'IBM Plex Mono',monospace;margin:15px 0 6px}input,select,textarea{width:100%;padding:10px;border:1px solid var(--line);background:#fff8;margin-top:7px;border-radius:0}textarea{resize:vertical}.two{display:flex;gap:8px;margin:14px 0}.two .primary{flex:1}.engine #progress{font:11px 'IBM Plex Mono',monospace;line-height:1.8;min-height:65px}#result{border-left:3px solid var(--red);padding-left:12px;margin:10px 0}#result:empty{display:none}.prospectus{display:block;border:5px double;padding:22px 8px;text-align:center;text-decoration:none;font:8px 'IBM Plex Mono',monospace;letter-spacing:2px}.prospectus span{font:24px 'Cormorant Garamond',serif;display:block}.prospectus i{font:italic 14px Georgia;display:block;margin:12px 0;letter-spacing:0}footer{border-top:3px double;padding:22px 0 4px;display:flex;justify-content:space-between;gap:20px;font:9px 'IBM Plex Mono',monospace;line-height:1.7}.pagehead{padding:55px 5px 38px;max-width:850px}.pagehead>span,.manual article>span{font:10px 'IBM Plex Mono',monospace;letter-spacing:2px}h1{font:600 clamp(36px,5vw,70px) 'Cormorant Garamond',Georgia,serif;line-height:1.06;margin:14px 0 20px}.pagehead p,.manual p{line-height:1.8}.tools{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.tools label{margin:0}.tools h2{flex:1}#cabinet{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:20px 0}.card{border:1px solid var(--line);padding:16px;position:relative}.card .mineral{text-align:center;font-size:46px;margin:18px 0}.card h3{font:20px 'Cormorant Garamond',serif;margin:10px 0}.card p{font:10px 'IBM Plex Mono',monospace;line-height:1.8}.card label{display:flex;align-items:center;gap:10px}.card input{width:auto}.card button{font-size:11px;padding:7px}.notes{display:grid;grid-template-columns:1fr 1fr;gap:40px}.notes article{border-bottom:1px solid var(--line);padding:5px 0 15px}.notes article p{white-space:pre-wrap;line-height:1.65}.assaylayout{display:grid;grid-template-columns:1.2fr 1fr;gap:35px}.grade{border-bottom:1px dotted var(--line);padding:18px 0}.grade b{font:15px 'IBM Plex Mono',monospace;color:var(--red)}.grade p{line-height:1.6}table{width:100%;border-collapse:collapse;font:11px 'IBM Plex Mono',monospace}td,th{text-align:left;padding:12px 7px;border-bottom:1px solid var(--line)}.manual{display:grid;grid-template-columns:180px 1fr;gap:60px;padding:50px 0}.manual aside{display:flex;flex-direction:column;gap:25px;font:11px 'IBM Plex Mono',monospace;position:sticky;top:20px;height:fit-content}.manual article{max-width:850px}.manual h2{font-size:25px;margin-top:55px}.manual .lead{font:italic 25px/1.5 Georgia}dialog{background:var(--paper);color:var(--ink);border:5px double;max-width:760px;width:calc(100% - 30px);max-height:90vh;padding:32px}dialog::backdrop{background:#0c211cbb}.close{position:sticky;top:0;float:right;background:var(--paper);font-size:22px;padding:0 8px}dialog pre{white-space:pre-wrap;word-break:break-all;font:10px/1.7 'IBM Plex Mono',monospace}dialog .cert{text-align:center;border:5px double;padding:28px;margin-top:25px}.cert h2{font:34px 'Cormorant Garamond',serif}.cert .seal{font-size:65px}.cert p{font:12px/1.8 'IBM Plex Mono',monospace}#toast{position:fixed;bottom:22px;left:50%;translate:-50% 0;background:var(--ink);color:var(--paper);max-width:90vw;padding:13px 22px;z-index:30;border:1px solid var(--paper);display:none;font:12px 'IBM Plex Mono',monospace}#intro:not([hidden]){position:fixed;inset:0;background:var(--ink);color:var(--paper);z-index:80;display:flex;flex-direction:column;gap:28px;align-items:center;justify-content:center}#intro span{font:60px 'Cormorant Garamond',serif;letter-spacing:8px;animation:arrive 1.5s ease both}#intro button{color:var(--paper);border-color:var(--paper)}@keyframes arrive{from{opacity:0;translate:0 -30px}to{opacity:1;translate:0 0}}.skip{position:absolute;left:-9999px}.skip:focus{left:20px;top:10px;background:var(--paper);z-index:100}button:focus-visible,a:focus-visible{outline:3px solid var(--red);outline-offset:3px}@media(max-width:900px){.paper{margin:8px;padding:18px}.workings{gap:15px;grid-template-columns:1fr 1fr}.shaft{grid-column:1/-1;grid-row:2}.shaft svg{height:350px}.right{grid-column:2}.left{grid-column:1}.wordmark{font-size:37px}.motto{display:none}header{grid-template-columns:1fr 1fr}#cabinet{grid-template-columns:repeat(2,1fr)}.manual{gap:25px;grid-template-columns:130px 1fr}.scene img{min-height:150px;object-fit:cover}.assaylayout{gap:15px}}@media(max-width:600px){.paper{padding:16px 12px}.workings{display:flex;flex-direction:column}.right{order:0}.shaft{order:1}.left{order:2}.scene img{min-height:110px}.wordmark{font-size:31px;letter-spacing:1px}.wordmark small{font-size:6px}.serial strong{font-size:22px}.serial{font-size:8px;letter-spacing:0}.serial span{font-size:6px}nav{gap:10px;font-size:8px}.box{padding:12px}.strata button{font-size:9px;padding:8px 0}footer{flex-wrap:wrap}.pagehead{padding:35px 0}.notes,.assaylayout{grid-template-columns:1fr}.manual{display:block}.manual aside{position:static;display:flex;flex-flow:row wrap;gap:15px;margin-bottom:35px}#cabinet{grid-template-columns:1fr}.tools{gap:10px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important}}@media print{body{background:white}.paper{margin:0}body>*:not(dialog){display:none}dialog{display:block;position:static;max-height:none;border:0}.close{display:none}}
