[hidden]{display:none!important}
/* Domino Pad: one green card table under one warm lamp. Colour = material. Brass = money flow only. Oxblood = errors only. */
@font-face{font-family:"Cabinet Grotesk";src:url(/assets/fonts/CabinetGrotesk-800.woff2) format("woff2");font-weight:800;font-display:swap}
@font-face{font-family:"Cabinet Grotesk";src:url(/assets/fonts/CabinetGrotesk-700.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Satoshi";src:url(/assets/fonts/Satoshi-400.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Satoshi";src:url(/assets/fonts/Satoshi-500.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Satoshi";src:url(/assets/fonts/Satoshi-700.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Source Code Pro";src:url(/assets/fonts/SourceCodePro-latin-var.woff2) format("woff2");font-weight:200 900;font-display:swap}

:root{
  --baize:#1e4636;--baize-deep:#15332a;--baize-hi:#2b5a47;--ivory:#efe8d6;--ivory-lo:#d8cfb6;--ebony:#121110;
  --walnut:#6d4b30;--walnut-lo:#472f1e;--brass:#b8924a;--chalk:#c9c2ad;--mute:#9fb3a8;--oxblood:#a4492f;--velvet:#0e2f23;
  --display:"Cabinet Grotesk",ui-sans-serif,system-ui,sans-serif;--text:"Satoshi",ui-sans-serif,system-ui,sans-serif;--mono:"Source Code Pro",ui-monospace,Menlo,monospace;
  --ease:cubic-bezier(.2,.8,.2,1);--ruler:58px;--rimh:60px;--gut:40px;
  --shadow:drop-shadow(8px 12px 14px rgba(4,14,10,.5));
  color-scheme:dark;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;background:var(--baize-deep)}
body{margin:0;min-height:100vh;color:var(--ivory);font:400 16px/1.55 var(--text);background:var(--baize) url(/assets/art/tex-baize.webp) 0 0/300px;-webkit-font-smoothing:antialiased;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;background:rgba(30,70,54,.38);pointer-events:none;z-index:-1}
img{display:block;max-width:100%}
a{color:inherit}
button,input,select,textarea{font:inherit;color:inherit}
button,summary,select,label[for],a[href],[role=button],input[type=range],input[type=file]{cursor:pointer}
:focus-visible{outline:2px solid var(--ivory);outline-offset:4px}
.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}
.num{font-family:var(--display);font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:-.03em}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
h1,h2,h3,p,ol,ul,dl,dd{margin:0}
ol,ul{padding:0;list-style:none}
::selection{background:var(--ivory);color:var(--ebony)}

/* ---------------------------------------------------------------- the rim (header) */
.rim{position:fixed;top:0;left:0;right:var(--ruler);height:var(--rimh);z-index:30;display:flex;align-items:center;gap:28px;padding:0 20px 0 var(--gut);
  background:var(--walnut) url(/assets/art/tex-walnut.webp) 0 0/400px;box-shadow:inset 0 -2px 0 var(--walnut-lo),inset 0 1px 0 rgba(239,232,214,.18),0 10px 18px -8px rgba(4,14,10,.7)}
.brand{display:flex;align-items:center;gap:10px;min-height:44px;text-decoration:none;font:800 19px/1 var(--display);letter-spacing:-.02em;white-space:nowrap}
.brand img{width:30px;height:30px;filter:drop-shadow(2px 3px 3px rgba(0,0,0,.4))}
.nav{display:flex;gap:22px;margin-left:auto}
.nav a{font:600 12px/1 var(--mono);letter-spacing:.16em;text-transform:uppercase;text-decoration:none;padding:10px 0;color:var(--ivory);opacity:.82;transition:opacity .15s var(--ease)}
.nav a:hover,.nav a.on{opacity:1}
.nav a.on{background:radial-gradient(circle,var(--chalk) 1.1px,transparent 1.4px) 0 100%/7px 4px repeat-x}
.rim-r{display:flex;align-items:center;gap:10px}
.tb.menu{display:none}
.drawer{position:fixed;top:var(--rimh);right:0;left:0;z-index:29;display:grid;padding:10px 16px 16px;background:var(--baize-deep);border-bottom:1px solid rgba(239,232,214,.16)}
.drawer[hidden]{display:none}
.drawer a{padding:13px 4px;font:600 13px var(--mono);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;border-bottom:1px dashed rgba(201,194,173,.25)}

/* ---------------------------------------------------------------- the ruler (right edge) */
.ruler{position:fixed;top:0;right:0;bottom:0;width:var(--ruler);z-index:31;background:var(--ivory) url(/assets/art/tex-ivory.webp) 0 0/256px;color:var(--ebony);
  box-shadow:-6px 0 14px rgba(4,14,10,.35),inset 1px 0 0 rgba(18,17,16,.25);display:flex;flex-direction:column;align-items:center}
.ru-top,.ru-bot{writing-mode:vertical-rl;font-size:11px;letter-spacing:.18em;text-transform:uppercase;padding:18px 0;white-space:nowrap}
.ru-top b,.ru-bot b{font-weight:600}
.ru-scale{position:relative;flex:1;width:100%;
  background:repeating-linear-gradient(to bottom,rgba(18,17,16,.55) 0 1px,transparent 1px 6px) left/14px 100% no-repeat,
    repeating-linear-gradient(to bottom,rgba(18,17,16,.75) 0 1px,transparent 1px 30px) left/24px 100% no-repeat}
.ru-mark{position:absolute;left:0;right:10px;height:3px;top:0;background:var(--brass);transform:translateY(0);transition:transform .12s linear}
.ru-mark::after{content:"";position:absolute;right:-8px;top:-5px;border:6px solid transparent;border-left:8px solid var(--brass)}
.ru-stops{position:absolute;top:120px;bottom:120px;right:6px;display:flex;flex-direction:column;justify-content:space-between}
.ru-stops button{width:28px;height:28px;border:1px solid rgba(18,17,16,.35);border-radius:6px;background:var(--ivory);font:600 11px var(--mono);color:var(--ebony);box-shadow:2px 2px 0 var(--ebony);transition:transform .12s var(--ease),box-shadow .12s var(--ease)}
.ru-stops button:hover{transform:translate(-1px,-1px);box-shadow:3px 3px 0 var(--ebony)}
.ru-stops button.on{background:var(--ebony);color:var(--ivory)}
.hair{display:none}

/* ---------------------------------------------------------------- the tile buttons */
.tb{position:relative;display:inline-flex;align-items:stretch;height:48px;padding:0;border:0;border-radius:10px;text-decoration:none;
  font:700 15px/1 var(--text);white-space:nowrap;transform-origin:100% 100%;transition:transform .18s var(--ease),box-shadow .18s var(--ease)}
.tb .pc{display:grid;grid-auto-flow:column;align-content:center;gap:6px;padding:0 14px;border-right:2px solid var(--ebony)}
.tb .pc i{width:7px;height:7px;border-radius:50%;background:var(--ebony)}
.tb .bl{display:flex;align-items:center;padding:0 20px 0 16px}
.tb.ivory{background:var(--ivory) url(/assets/art/tex-ivory.webp) 0 0/256px;color:var(--ebony);box-shadow:4px 4px 0 var(--ebony),8px 12px 16px rgba(0,0,0,.35)}
.tb.ebony{background:var(--ebony);color:var(--ivory);box-shadow:3px 3px 0 #000,6px 10px 14px rgba(0,0,0,.35)}
.tb.ebony .pc{border-right-color:rgba(239,232,214,.8)}
.tb.ebony .pc i{background:var(--ivory)}
.tb.big{height:56px}
.tb.sm{height:40px;font-size:14px}
.tb.sm .pc{padding:0 10px}
.tb:hover{transform:translate(-1px,-1px)}
.tb.ivory:hover{box-shadow:5px 5px 0 var(--ebony),9px 13px 18px rgba(0,0,0,.35)}
.tb:active{transform:rotate(3deg) translate(1px,1px);transition-duration:.09s}
.tb.ivory:active{box-shadow:2px 2px 0 var(--ebony),4px 6px 10px rgba(0,0,0,.3)}
.tb:disabled,.tb[aria-disabled=true]{background:#1b1a18;color:#6d6a62;box-shadow:none;cursor:not-allowed;transform:none}
.tb:disabled .pc{border-right-color:#34322e}.tb:disabled .pc i{background:#34322e}
.tb.busy .pc i{animation:pips 1s steps(6) infinite}
.tb.busy .pc i:nth-child(2){animation-delay:.12s}
@keyframes pips{0%{opacity:.2}50%{opacity:1}100%{opacity:.2}}
.tb.err .pc{border-right-color:var(--oxblood)}
.tb.ok .pc i{background:var(--brass)}
.chip{display:inline-flex;align-items:center;gap:8px;height:32px;padding:0 12px;border:0;border-radius:6px;background:var(--ebony);color:var(--ivory);
  font:600 11px var(--mono);letter-spacing:.14em;text-transform:uppercase;box-shadow:2px 2px 0 #000;transition:transform .15s var(--ease)}
.chip .pip1{width:5px;height:5px;border-radius:50%;background:currentColor}
.chip:hover{transform:translate(-1px,-1px)}
.chip.on{background:var(--ivory);color:var(--ebony)}
.snd{height:40px}
.link{text-decoration:none;background:radial-gradient(circle,var(--chalk) 1.1px,transparent 1.4px) 0 100%/7px 4px repeat-x;padding-bottom:4px}

/* ---------------------------------------------------------------- cards on the table (opaque, no blur) */
.card{position:relative;background:rgba(21,51,42,.94);border:1px solid rgba(239,232,214,.16);border-radius:14px;box-shadow:12px 18px 34px -12px rgba(4,14,10,.7);padding:24px 26px}
.eyebrow{display:flex;align-items:center;gap:10px;font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}
.pipi{width:6px;height:6px;border-radius:50%;background:var(--ivory)}
h2{font:800 clamp(38px,4.2vw,56px)/.98 var(--display);letter-spacing:-.035em;margin-top:10px;text-wrap:balance}
.lede{margin-top:12px;max-width:46ch;color:var(--ivory);font-size:17px;line-height:1.5}
.note{margin-top:14px;font-size:12px;line-height:1.6;letter-spacing:.04em;color:var(--mute)}
.demo-tag{display:inline-block;padding:2px 7px;border:1px solid rgba(239,232,214,.4);border-radius:4px;font:600 10px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--ivory)}

/* ---------------------------------------------------------------- stops */
main{padding-right:var(--ruler)}
.stop{position:relative;min-height:100svh;overflow:hidden;isolation:isolate}
.stop + .stop{box-shadow:inset 0 3px 0 var(--walnut-lo),inset 0 5px 0 rgba(0,0,0,.4)}
.plate{position:absolute;inset:0;z-index:-1}
.plate img,.plate picture{width:100%;height:100%;object-fit:cover}
.frame{position:absolute;inset:0;z-index:-1}
.frame>img{width:100%;height:100%;object-fit:cover}
.frame.fit>img{object-fit:fill}

/* 1 PUSH */
.hero{min-height:max(100svh,860px)}
.hero .plate::after{content:"";position:absolute;inset:0;background:radial-gradient(120% 90% at 30% 20%,transparent 40%,rgba(21,51,42,.55) 100%)}
.hero-id{position:absolute;left:var(--gut);top:calc(var(--rimh) + 34px);z-index:3}
.kicker{font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--ivory);opacity:.9}
.wordmark{margin-top:12px;font:800 clamp(72px,min(12.2vw,19vh),184px)/.84 var(--display);letter-spacing:-.045em;color:var(--ivory);text-shadow:none}
.lineup{position:absolute;left:40%;right:0;top:10%;bottom:4%;z-index:1;perspective:1400px;perspective-origin:30% 0%;pointer-events:none}
.table3d{position:absolute;inset:0;z-index:0}
.table3d canvas{display:block;width:100%;height:100%}
html.gl .lineup{visibility:hidden}
html.gl .hero .plate{opacity:0;transition:opacity .6s}
.pushc{position:absolute;left:var(--gut);bottom:34px;width:470px;z-index:4;padding:20px 22px 22px}
.pc-head{display:flex;align-items:center;gap:10px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}
.pc-coin{margin-left:auto}
.pc-coin select{appearance:none;height:34px;padding:0 26px 0 10px;border:1px solid rgba(239,232,214,.24);border-radius:6px;background:var(--ebony) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%23efe8d6'/%3E%3C/svg%3E") no-repeat right 9px center;font:600 12px var(--mono);letter-spacing:.06em;max-width:190px}
.pc-coin select:disabled{opacity:.6;cursor:default}
.readout{margin-top:8px;display:flex;align-items:baseline;gap:8px}
.odo{font:800 54px/1 var(--display);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.readout .u{font:600 14px var(--mono);letter-spacing:.1em;color:var(--mute)}
.mruler{position:relative;margin-top:10px;height:46px}
.mr-track{position:absolute;left:0;right:0;top:8px;height:18px}
.mr-ticks{position:absolute;inset:0;border-top:2px solid var(--ivory);
  background:repeating-linear-gradient(to right,rgba(239,232,214,.7) 0 1px,transparent 1px 8px) top/100% 8px no-repeat,
    repeating-linear-gradient(to right,rgba(239,232,214,.9) 0 1px,transparent 1px 40px) top/100% 14px no-repeat}
.mr-fill{position:absolute;left:0;top:-2px;height:2px;width:var(--p,50%);background:var(--brass)}
.mruler input{position:absolute;left:-7px;right:-7px;top:0;width:calc(100% + 14px);height:34px;margin:0;opacity:1;background:transparent;-webkit-appearance:none;appearance:none}
.mruler input::-webkit-slider-runnable-track{height:34px;background:transparent}
.mruler input::-moz-range-track{height:34px;background:transparent}
.mruler input::-webkit-slider-thumb{-webkit-appearance:none;width:14px;height:30px;margin-top:2px;border-radius:3px;background:var(--ivory);box-shadow:3px 3px 0 var(--ebony);border:1px solid rgba(18,17,16,.4)}
.mruler input::-moz-range-thumb{width:14px;height:30px;border-radius:3px;background:var(--ivory);box-shadow:3px 3px 0 var(--ebony);border:1px solid rgba(18,17,16,.4)}
.mr-lab{position:absolute;left:0;right:0;top:32px;display:flex;justify-content:space-between;font-size:10px;color:var(--mute)}
.split{margin-top:10px;font-size:13px;color:var(--ivory)}
.split b,.five-mini .amt,.brass{color:var(--brass);font-weight:600}
.five-mini{display:grid;grid-template-columns:repeat(5,1fr);gap:6px;margin-top:10px}
.five-mini li{min-width:0;display:grid;justify-items:center;gap:3px;padding:7px 2px 6px;border-radius:6px;background:var(--ivory) url(/assets/art/tex-ivory.webp) 0 0/256px;color:var(--ebony);box-shadow:2px 2px 0 var(--ebony);font:600 10px/1.15 var(--mono)}
.five-mini li .c{width:22px;height:22px;border-radius:50%;background:#d9d1bc center/cover;box-shadow:inset 0 0 0 1px rgba(18,17,16,.35)}
.five-mini li .d{width:70%;height:2px;background:var(--brass)}
.five-mini li .t{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.five-mini li .amt{font-size:10px}
.five-mini li.dead{background:#1b1a18;color:#8a867b;box-shadow:none}
.five-mini li.dead .d{background:#34322e}
.five-mini li.empty{background:transparent;border:1px dashed rgba(201,194,173,.35);box-shadow:none;color:var(--mute)}
.when{margin-top:10px;font-size:13px}
.when b{font-weight:600}
.you{margin-top:4px;font-size:12px;color:var(--mute)}
.pushc .tb{margin-top:14px}
.tri{position:absolute;right:28px;top:calc(var(--rimh) + 34px);display:flex;gap:40px;z-index:3;text-align:right}
.tri div{align-items:flex-end}
.tri dt{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--mute);order:2;margin-top:4px}
.tri div{display:flex;flex-direction:column}
.tri dd{font:800 38px/1 var(--display);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.tile0{position:absolute;left:calc(var(--gut) + 500px);bottom:64px;z-index:3;display:flex;align-items:center;gap:0;width:280px;height:118px;padding:0 12px;border-radius:12px;
  background:var(--ivory) url(/assets/art/tex-ivory.webp) 0 0/256px;color:var(--ebony);
  transform:perspective(900px) rotateX(46deg) rotateZ(-9deg);transform-origin:50% 60%;
  box-shadow:0 7px 0 #b9b09a,0 12px 0 var(--ebony),14px 30px 26px rgba(4,14,10,.55)}
.t0-mark{display:grid;place-items:center;width:78px}
.t0-mark img{width:44px;height:44px}
.t0-div{align-self:stretch;width:3px;margin:18px 12px;background:var(--brass);border-radius:2px}
.t0-txt{display:grid;gap:2px;font-size:13px;line-height:1.25;letter-spacing:.04em;text-transform:none}
.t0-txt b{font-weight:700;font-size:15px;letter-spacing:.06em}
.t0-n{color:#6e675a;font-size:11px}
.t0-copy{position:absolute;inset:0;border:0;border-radius:12px;background:transparent;font:600 11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:transparent}
.t0-copy:not(:disabled):hover,.tile0.copied .t0-copy{color:var(--ebony);background:linear-gradient(transparent 70%,rgba(18,17,16,.06))}
.t0-copy .cp{position:absolute;right:14px;bottom:10px}
.t0-copy:disabled{cursor:default}
.placecard{position:absolute;right:48px;bottom:44px;z-index:3;padding:9px 14px;border-radius:4px;background:var(--ivory);color:var(--ebony);font-size:11px;letter-spacing:.16em;text-transform:uppercase;transform:rotate(-2deg);box-shadow:3px 3px 0 var(--ebony),6px 10px 14px rgba(0,0,0,.35)}

/* the CSS domino line (static mode and mobile) */
.ln-world{position:absolute;left:0;top:0;width:100%;height:100%;transform-style:preserve-3d}
.dom{position:absolute;left:0;top:0;width:var(--w);height:var(--h);transform-style:preserve-3d;transform-origin:50% 100% 0}
.dom>.f{position:absolute;left:0;top:0;width:var(--w);height:var(--h);backface-visibility:hidden;border-radius:9px}
.dom>.fr{background:var(--ivory) url(/assets/art/tex-ivory.webp) 0 0/256px;transform:translateZ(calc(var(--d) / 2));box-shadow:inset 0 0 0 1px rgba(18,17,16,.14),inset 2px 3px 0 rgba(255,255,255,.55),inset -3px -4px 0 rgba(120,104,78,.25),inset -12px -26px 34px rgba(60,48,30,.22)}
.dom>.bk{background:#191816;transform:rotateY(180deg) translateZ(calc(var(--d) / 2))}
.dom>.sd{width:var(--d);left:calc(50% - var(--d) / 2);border-radius:6px;background:linear-gradient(to right,var(--ivory-lo) 0 48%,var(--ebony) 52%)}
.dom>.sl{transform:rotateY(-90deg) translateZ(calc(var(--w) / 2));filter:brightness(1.05)}
.dom>.sr2{transform:rotateY(90deg) translateZ(calc(var(--w) / 2));background:linear-gradient(to left,#8f8773 0 48%,#0b0a09 52%)}
.dom>.tp{height:var(--d);top:calc(var(--d) / -2);border-radius:6px;background:linear-gradient(to bottom,#1a1917 0 48%,#fbf6e8 52%);transform:rotateX(90deg)}
.dom>.shd{position:absolute;left:10%;top:calc(var(--h) - 6px);width:80%;height:calc(var(--h) * .9);border-radius:40%;background:radial-gradient(closest-side,rgba(3,12,8,.62),transparent);transform-origin:50% 0;transform:rotateX(90deg) translateY(4px) skewX(-28deg);filter:blur(5px)}
.fr .cam{position:absolute;left:14%;top:8%;width:72%;aspect-ratio:1;border-radius:50%;background:#d9d1bc center/cover;box-shadow:inset 0 0 0 2px rgba(18,17,16,.55)}
.fr .dv{position:absolute;left:14%;right:14%;top:55%;height:3px;border-radius:2px;background:var(--ebony)}
.dom.link .fr .dv{background:var(--brass)}
.fr .tk{position:absolute;left:0;right:0;top:61%;text-align:center;font:700 calc(var(--w) * .13)/1.1 var(--mono);letter-spacing:.04em;color:var(--ebony);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:0 6%}
.fr .st{position:absolute;left:0;right:0;top:75%;text-align:center;font:500 calc(var(--w) * .1)/1.1 var(--mono);color:#6e675a}
.fr .pp{position:absolute;width:calc(var(--w) * .16);aspect-ratio:1;border-radius:50%;background:#1a1917;box-shadow:inset 1px 2px 2px rgba(0,0,0,.6)}
.dom .tag{position:absolute;left:50%;bottom:calc(100% + 16px);transform:translateX(-50%) translateZ(20px);padding:4px 8px;border-radius:4px;background:var(--brass);color:var(--ebony);font:700 10px/1.2 var(--mono);letter-spacing:.12em;text-transform:uppercase;white-space:nowrap;opacity:0;transition:opacity .3s}
.dom.lean .tag,.dom.claim .tag{opacity:1}
.thread{position:absolute;height:2px;background:var(--brass);transform-origin:0 50%;pointer-events:none;z-index:2}
.thread b{position:absolute;right:-6px;top:-22px;font:700 11px var(--mono);color:var(--brass);white-space:nowrap}

/* 2 THE FIVE */
.five-tags li{position:absolute;transform:translate(-50%,0);text-align:center;font:600 12px/1.4 var(--mono);text-shadow:0 1px 2px rgba(0,0,0,.8);letter-spacing:.08em;color:var(--ivory);white-space:nowrap}
.five-tags li b{display:block;font-size:13px}
.five-tags li i{font-style:normal;color:var(--brass)}
.five-tags li.gap{color:var(--chalk);opacity:.85}
.side-card{position:absolute;z-index:2;width:min(460px,calc(100% - 2 * var(--gut)))}
.fcard{left:var(--gut);bottom:44px}
.checks{margin-top:14px;display:grid;gap:0;border-top:1px dashed rgba(201,194,173,.3)}
.checks li{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-bottom:1px dashed rgba(201,194,173,.3);font-size:13px;letter-spacing:.03em}
.checks em{font-style:normal;font-weight:600}
.checks b{color:var(--brass)}
.fivelist{margin-top:12px}
.flist{display:none;gap:0;margin:4px 0 8px}
.flist li{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px dashed rgba(201,194,173,.3);font:500 12px var(--mono)}
.flist li i{font-style:normal;color:var(--brass)}
.fivelist .tb{margin-top:6px}

/* 3 THE POT */
.pcard{left:var(--gut);top:50%;transform:translateY(-42%)}
.dish{position:absolute;transform:translate(-50%,-50%);display:grid;place-items:center}
.ring{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.dish-amt{position:relative;display:grid;justify-items:center;gap:4px;color:#3b2c14}
.dish-amt .num{font-size:clamp(34px,4.4vw,62px);line-height:1;color:#3a2a12;mix-blend-mode:multiply;opacity:.88}
.dish-amt .mono{font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#4d3a1c;opacity:.9}
.potline{margin-top:14px;font-size:14px;line-height:1.6}
.potline b{font-weight:600}
.splitbar{margin-top:14px;display:flex;gap:4px;height:44px}
.splitbar div{position:relative;display:flex;flex-direction:column;justify-content:flex-end;padding:4px 6px;border-radius:5px;background:var(--ebony);box-shadow:inset 0 3px 0 var(--brass);font:600 10px/1.2 var(--mono);color:var(--ivory);min-width:0;overflow:hidden}
.splitbar div span{color:var(--brass);white-space:nowrap}
.splitbar div em{font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* 4 YOUR BAG */
.slots li{position:absolute;display:grid;place-items:center;border-radius:6px;background:var(--velvet);box-shadow:inset 0 6px 14px rgba(0,0,0,.6),inset 0 0 0 1px rgba(0,0,0,.4)}
.slots .ctile{width:88%;height:88%;box-shadow:4px 6px 0 rgba(0,0,0,.35),8px 14px 18px rgba(0,0,0,.45)}
.slots li.raised .ctile{transform:translate(-3px,-5px);box-shadow:7px 10px 0 rgba(0,0,0,.35),12px 20px 22px rgba(0,0,0,.45)}
.slots li .mono.lb{position:absolute;left:0;right:0;bottom:-26px;text-align:center;font-size:10px;letter-spacing:.14em;color:var(--mute);text-transform:uppercase}
.lid{position:absolute;display:flex;flex-direction:column;justify-content:center;padding:18px 30px;color:var(--ivory);text-shadow:0 1px 0 rgba(0,0,0,.45)}
.lid .eyebrow{color:#e7d9bd}
.lid h2{font-size:clamp(30px,3vw,44px);margin-top:4px}
.lid .lede{font-size:15px;margin-top:6px}
.claims{margin-top:8px;display:grid;gap:6px;max-height:112px;overflow:auto}
.claims li{display:flex;align-items:center;gap:12px;font:500 13px var(--mono)}
.claims li .st{margin-left:auto;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#e7d9bd}
.claims li .tb{height:36px;font-size:13px}

/* shared coin tile (flat) */
.ctile{position:relative;display:block;border-radius:9px;background:var(--ivory) url(/assets/art/tex-ivory.webp) 0 0/256px;color:var(--ebony);box-shadow:4px 5px 0 var(--ebony),8px 14px 18px rgba(0,0,0,.4);aspect-ratio:1/2;container-type:inline-size}
.ctile .cam{position:absolute;left:14%;top:7%;width:72%;aspect-ratio:1;border-radius:50%;background:#d9d1bc center/cover;box-shadow:inset 0 0 0 2px rgba(18,17,16,.5)}
.ctile .cam.empty{background:repeating-radial-gradient(circle,transparent 0 5px,rgba(18,17,16,.08) 5px 6px) #e6dec9}
.ctile .dv{position:absolute;left:14%;right:14%;top:52%;height:3px;border-radius:2px;background:var(--ebony)}
.ctile.link .dv{background:var(--brass)}
.ctile .tk{position:absolute;left:0;right:0;top:58%;text-align:center;font:700 13cqw/1.1 var(--mono);overflow:hidden;white-space:nowrap;text-overflow:ellipsis;padding:0 6%}
.ctile .st{position:absolute;left:0;right:0;top:72%;text-align:center;font:500 9.5cqw/1.2 var(--mono);color:#6e675a}
.ctile.down{background:#191816;color:#8a867b;box-shadow:3px 4px 0 #000,6px 10px 14px rgba(0,0,0,.4)}
.ctile.down .cam{opacity:.18;filter:grayscale(1)}
.ctile.down .dv{background:#34322e}
.ctile.down .st{color:#8a867b}

/* 5 THE LINE */
.line{min-height:0;display:flex;flex-direction:column;justify-content:center;padding:calc(var(--rimh) + 70px) 0 60px}
.line .plate::after{content:"";position:absolute;inset:0;background:linear-gradient(rgba(12,28,22,.55),rgba(12,28,22,.1) 45%,rgba(12,28,22,.55))}
.line-head{padding:0 var(--gut);display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px 28px}
.line-head .eyebrow{width:100%}
.line-head h2{margin:0}
.chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-left:auto}
.count{margin-left:10px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.rack{position:relative;margin-top:34px}
.rack{perspective:1200px}
.rack-row{display:flex;gap:30px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-padding-inline:var(--gut);padding:26px var(--gut) 44px;scrollbar-width:thin;scrollbar-color:var(--walnut) transparent}
.rack-row li{flex:0 0 auto;scroll-snap-align:start;position:relative}
.rack-row li::after{content:"";position:absolute;left:30%;right:-38%;bottom:26px;height:34px;z-index:-1;border-radius:50%;background:radial-gradient(closest-side,rgba(3,12,8,.7),transparent);filter:blur(5px);transform:skewX(-40deg)}
.rack-row a.ctile{width:172px;text-decoration:none;transform:rotateX(10deg);transform-origin:50% 100%;transition:transform .18s var(--ease);box-shadow:0 7px 0 #b9b09a,0 12px 0 var(--ebony),inset -8px -18px 26px rgba(60,48,30,.18)}
.rack-row a.ctile:hover{transform:rotateX(10deg) translateY(-8px)}
.rack-row a.ctile.link .dv{height:4px}
.rack-row .blank{width:132px;display:grid;place-items:center;text-align:center;padding:12px;border:1px dashed rgba(201,194,173,.4);border-radius:9px;aspect-ratio:1/2;color:var(--mute);font:500 12px/1.4 var(--mono)}
.rack-row .blank .tb{margin-top:10px}
.rack-row .blank:has(.tb){width:220px;aspect-ratio:auto;min-height:220px}
.legend{display:flex;flex-wrap:wrap;gap:8px 22px;padding:0 var(--gut);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.legend span{display:inline-flex;align-items:center;gap:8px}
.lg{width:18px;height:3px;border-radius:2px}
.lg.brass{background:var(--brass)}.lg.ivory{background:var(--ivory)}.lg.down{height:10px;width:10px;border-radius:2px;background:#191816;box-shadow:0 0 0 1px rgba(239,232,214,.3)}

/* 6 LAUNCH */
.launch{display:flex;align-items:center;min-height:0;padding:calc(var(--rimh) + 60px) var(--gut) 70px}
.launch .plate::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(21,51,42,.55),transparent 70%)}
.lcard{width:min(820px,100%);padding:26px 28px}
.lgrid{display:grid;grid-template-columns:1fr 200px;gap:28px;margin-top:16px}
.fl{display:grid;gap:6px;margin-bottom:12px;position:relative}
.fl>.mono{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}
.fl input,.fl textarea{width:100%;height:44px;padding:0 12px;border:1px solid rgba(239,232,214,.22);border-radius:8px;background:var(--ebony);color:var(--ivory);font:500 15px var(--text)}
.fl textarea{height:auto;padding:10px 12px;resize:vertical}
.fl input:focus,.fl textarea:focus{outline:none;border-color:var(--ivory)}
.fl.file .drop{display:flex;align-items:center;height:48px;padding:0 14px;border:1px dashed rgba(201,194,173,.55);border-radius:8px;font:500 13px var(--mono);color:var(--chalk);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.fl.file input{position:absolute;inset:auto 0 0 0;height:48px;opacity:0}
.fl.file:hover .drop{border-color:var(--ivory);color:var(--ivory)}
.two{display:grid;grid-template-columns:1.6fr 1fr;gap:12px}
.two>*{min-width:0}
.adv .two{grid-template-columns:1fr}
.five-mini{min-height:66px}
.adv{margin:2px 0 12px}
.adv summary{font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--mute);padding:8px 0;list-style:none}
.adv summary::before{content:"+ "}
.adv[open] summary::before{content:"\2212  "}
.need{font-size:12px;color:var(--chalk);min-height:18px}
.lfee{margin-top:4px;font-size:12px;color:var(--mute)}
.lform .tb{margin-top:14px}
.lprev{display:grid;align-content:start;justify-items:center;gap:10px}
.ctile.big{width:150px}
.lp-cap{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);text-align:center}
.lprev .five-mini{width:100%;grid-template-columns:repeat(5,1fr);gap:4px}
.lprev .five-mini li .t{font-size:9px}

/* 7 THE LAST TILE */
.last{display:flex;align-items:center;min-height:0;padding:90px var(--gut) 90px}
.back{position:relative;width:min(760px,100%);padding:36px 38px 30px;border-radius:18px;background:#141311;color:var(--ivory);
  box-shadow:0 7px 0 #d8cfb6,0 9px 0 #8f8773,20px 34px 40px rgba(0,0,0,.55),inset 0 1px 0 rgba(239,232,214,.06)}
.back::after{content:"";position:absolute;inset:12px;border:1px solid rgba(239,232,214,.1);border-radius:12px;pointer-events:none}
.inlay{font-size:14px;letter-spacing:.18em;text-transform:uppercase;color:var(--ivory)}
.back-cols{display:grid;grid-template-columns:1fr 1fr;gap:6px 30px;margin-top:26px}
.back-cols nav{display:grid;gap:2px;align-content:start}
.back-cols a{padding:9px 0;font-size:14px;letter-spacing:.14em;text-transform:uppercase;text-decoration:none;border-bottom:1px solid rgba(239,232,214,.1)}
.back-cols a:hover{color:#fff}
.back-ca{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:26px;padding-top:18px;border-top:2px solid rgba(239,232,214,.14)}
.back-ca>.mono{font-size:12px;letter-spacing:.14em;color:var(--mute)}
.back-ca code{font-size:13px;word-break:break-all;flex:1 1 260px}

/* toasts: small ivory tiles, stacked with peeking edges */
.tstack{position:fixed;right:calc(var(--ruler) + 18px);bottom:18px;z-index:60;display:grid;gap:0;width:min(360px,calc(100vw - 32px))}
.ttile{display:flex;align-items:center;gap:10px;min-height:48px;margin-top:-6px;padding:10px 14px;border-radius:9px;background:var(--ivory);color:var(--ebony);box-shadow:3px 3px 0 var(--ebony),6px 10px 16px rgba(0,0,0,.35);font:500 14px/1.35 var(--text);animation:tipin .3s var(--ease)}
.ttile:first-child{margin-top:0}
.ttile .tp{display:grid;grid-auto-flow:column;gap:4px;padding-right:10px;border-right:2px solid var(--ebony);align-self:stretch;align-content:center}
.ttile .tp i{width:5px;height:5px;border-radius:50%;background:var(--ebony)}
.ttile.err .tp{border-right-color:var(--oxblood)}
.ttile.ok .tp i{background:var(--brass)}
.ttile a{margin-left:auto;font:600 12px var(--mono);white-space:nowrap}
.ttile.out{opacity:0;transform:translateX(20px);transition:.25s}
@keyframes tipin{from{transform:translateX(30px) rotate(4deg);opacity:0}to{transform:none;opacity:1}}

/* wallet dialog (kit) */
.dlg{width:min(440px,calc(100vw - 32px));padding:28px;border:1px solid rgba(239,232,214,.16);border-radius:14px;background:var(--baize-deep);color:var(--ivory);box-shadow:20px 30px 60px rgba(0,0,0,.55)}
.dlg::backdrop{background:rgba(8,20,15,.72)}
.dlg h2{font:800 30px var(--display);letter-spacing:-.03em;margin:0}
.dlg-x{position:absolute;top:10px;right:10px;width:44px;height:44px;border:0;background:none;font-size:26px;line-height:1;color:var(--ivory)}
.wp-cur{margin-top:8px;font-size:14px}
.wp-list{display:flex;flex-direction:column;gap:10px;margin-top:18px}
.wp-item{display:flex;align-items:center;gap:12px;min-height:52px;padding:0 16px;border:0;border-radius:9px;background:var(--ivory);color:var(--ebony);text-align:left;font:700 15px var(--text);box-shadow:3px 3px 0 var(--ebony)}
.wp-item:hover{transform:translate(-1px,-1px)}
.wp-item img{width:28px;height:28px;border-radius:6px}
.wp-dot{width:12px;height:12px;border-radius:50%;background:var(--ebony)}
.wp-none{margin-top:14px;color:var(--mute)}
.wp-get{display:flex;flex-wrap:wrap;gap:16px;margin-top:18px;font-size:14px}
.wp-get a{padding:6px 0}
.wp-off{margin-top:16px;height:44px;padding:0 16px;border:1px solid rgba(239,232,214,.3);border-radius:8px;background:transparent}
.wp-err{margin-top:12px;font-size:14px;color:#e3a48f}

/* ---------------------------------------------------------------- inner pages (coin, docs, stats, log) */
.page{padding:calc(var(--rimh) + 48px) var(--gut) 80px;max-width:1240px}
.pagehead h1{font:800 clamp(52px,7vw,104px)/.9 var(--display);letter-spacing:-.045em;margin-top:10px}
.sheet{margin-top:28px;background:var(--ivory) url(/assets/art/tex-ivory.webp) 0 0/256px;color:var(--ebony);border-radius:14px;padding:34px 38px;box-shadow:6px 8px 0 var(--ebony),14px 24px 34px rgba(0,0,0,.4)}
.sheet h2{font-size:clamp(28px,3vw,40px);margin-top:34px;color:var(--ebony)}
.sheet h2:first-child{margin-top:0}
.sheet h3{font:700 19px var(--text);margin-top:20px}
.sheet p,.sheet li{max-width:72ch;margin-top:10px;font-size:16px}
.sheet ul{list-style:disc;padding-left:20px}
.sheet ol{list-style:decimal;padding-left:22px}
.sheet a{color:var(--ebony)}
.sheet .mono{font-size:13px}
.sheet table{width:100%;margin-top:14px;border-collapse:collapse;font-size:14px}
.sheet th,.sheet td{padding:9px 10px;text-align:left;vertical-align:top;border-bottom:1px solid rgba(18,17,16,.14)}
.sheet th{font:600 11px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:#5d574b}
.sheet td code,.sheet p code,.sheet li code{font:500 13px var(--mono);background:rgba(18,17,16,.06);padding:1px 5px;border-radius:4px;word-break:break-all}
.sheet .tw{overflow-x:auto}
.toc{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.toc a{padding:8px 12px;border-radius:6px;background:var(--ebony);color:var(--ivory);font:600 11px var(--mono);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;box-shadow:2px 2px 0 #000}
.killer{font:800 clamp(40px,5.5vw,84px)/1 var(--display);letter-spacing:-.04em;margin-top:24px;max-width:18ch}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:30px}
.stat{padding:20px 18px;border-radius:12px;background:rgba(21,51,42,.94);border:1px solid rgba(239,232,214,.16)}
.stat dt{font:600 11px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}
.stat dd{margin-top:8px;font:800 40px/1 var(--display);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.logl{margin-top:26px;display:grid;gap:18px}
.logl>li{padding:22px 24px;border-radius:12px;background:rgba(21,51,42,.94);border:1px solid rgba(239,232,214,.16)}
.logl h2{font-size:30px;margin-top:6px}
.logl ul{list-style:none;margin-top:8px}
.logl ul li{margin-top:6px;padding-left:18px;position:relative;max-width:75ch}
.logl ul li::before{content:"";position:absolute;left:0;top:.62em;width:6px;height:6px;border-radius:50%;background:var(--ivory)}
.pfoot{margin-top:60px;padding:22px 26px;border-radius:14px;background:#141311;display:flex;flex-wrap:wrap;gap:10px 26px;align-items:center;box-shadow:0 6px 0 #d8cfb6}
.pfoot a{font:600 12px var(--mono);letter-spacing:.14em;text-transform:uppercase;text-decoration:none;padding:8px 0}
.pfoot .inlay{margin-right:auto;font-size:12px}

/* coin page */
.cgrid{display:grid;grid-template-columns:260px 1fr;gap:40px;margin-top:30px;align-items:start}
.cstand .ctile{width:220px}
.cchain{display:flex;gap:10px;margin-top:22px}
.cchain .ctile{width:62px;box-shadow:2px 3px 0 var(--ebony),4px 8px 10px rgba(0,0,0,.35)}
.cmeta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.cmeta div{padding:14px 16px;border-radius:10px;background:rgba(21,51,42,.94);border:1px solid rgba(239,232,214,.16)}
.cmeta dt{font:600 10px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}
.cmeta dd{margin-top:6px;font:800 26px/1.05 var(--display);letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.ccard{margin-top:18px}
.ca-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px 14px;margin-top:14px;font-size:13px}
.ca-row code{word-break:break-all}
.ca-row a{font:600 12px var(--mono);letter-spacing:.1em;text-transform:uppercase}
.hist{margin-top:14px;display:grid;gap:0}
.hist li{display:grid;grid-template-columns:110px 1fr auto;gap:12px;padding:10px 0;border-bottom:1px dashed rgba(201,194,173,.3);font:500 13px var(--mono)}
.hist li a{font-size:12px}
.eplist{margin-top:10px;display:grid;gap:8px}
.eplist li{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:center;padding:10px 12px;border-radius:8px;background:rgba(18,17,16,.45);font:500 13px var(--mono)}
.eplist .s{margin-left:auto;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--brass)}

/* ---------------------------------------------------------------- responsive */
@media (max-width:1180px){
  .nav{gap:14px}.nav a{letter-spacing:.1em}
  .tri{flex-direction:column;gap:14px}
}
@media (max-width:980px){
  .nav{display:none}.tb.menu{display:inline-flex}.snd span{display:none}
  .tile0{display:none}
}
@media (max-width:860px){
  :root{--ruler:0px;--gut:16px;--rimh:58px}
  .ruler{display:none}
  .rim{right:0;padding:0 12px 0 16px;gap:12px}
  .brand span{display:none}
  .rim-r{margin-left:auto}
  .snd{width:40px;padding:0;justify-content:center}
  .hair{display:block;position:fixed;top:var(--rimh);left:0;right:0;height:4px;z-index:29;background:rgba(18,17,16,.5)}
  .hair i{display:block;height:100%;width:0;background:var(--brass)}
  .tstack{right:16px}
  .hero{min-height:0;display:flex;flex-direction:column;padding:calc(var(--rimh) + 24px) var(--gut) 24px}
  .hero-id{position:relative;left:auto;top:auto}
  .wordmark{font-size:clamp(64px,19vw,96px)}
  .tile0{display:flex;position:relative;left:auto;top:auto;bottom:auto;transform:none;width:100%;height:auto;margin-top:16px;padding:10px 12px;border-radius:9px;box-shadow:3px 3px 0 var(--ebony)}
  .t0-mark{width:34px}.t0-mark img{width:26px;height:26px}.t0-div{margin:4px 10px}
  .t0-txt{grid-auto-flow:column;align-items:center;gap:10px;font-size:12px}.t0-txt b{font-size:13px}.t0-n{display:none}
  .t0-copy{color:var(--ebony)}
  .lineup{position:relative;left:auto;right:auto;top:auto;bottom:auto;height:300px;margin:10px calc(var(--gut) * -1) 0;perspective-origin:50% 0%}
  .tri{position:relative;right:auto;top:auto;left:auto;bottom:auto;flex-direction:row;justify-content:space-between;gap:10px;margin-top:6px;text-align:left}
  .tri div{align-items:flex-start}
  .tri dd{font-size:26px}.tri dt{font-size:9px;letter-spacing:.12em}
  .pushc{position:relative;left:auto;bottom:auto;width:auto;margin-top:16px}
  .placecard{right:16px;bottom:auto;top:calc(var(--rimh) + 30px)}
  .odo{font-size:46px}
  .stop:not(.hero):not(.line):not(.launch):not(.last){display:flex;flex-direction:column;min-height:0}
  .five .frame,.pot .frame,.bag .frame{position:relative;inset:auto;z-index:0}
  .side-card{position:relative;left:auto;right:auto;top:auto;bottom:auto;width:auto;margin:-40px var(--gut) 34px}
  .fcard,.pcard{left:auto;right:auto;top:auto;bottom:auto;transform:none}
  .hero-id{order:1}.tile0{order:2}.lineup{order:3}.tri{order:4}.pushc{order:5}
  .five-tags{display:none}.flist{display:grid}
  .last{min-height:0;padding-top:60px}
  .last .plate img{object-position:70% 50%}
  .five-tags li{font-size:9px}.five-tags li b{font-size:10px}
  .lid{padding:8px 14px}
  .lid .eyebrow{display:none}
  .lid h2{font-size:22px}
  .lid .lede{font-size:12px;margin-top:2px}
  .claims{max-height:none}
  .bag .bagcard{display:block}
  .launch{padding:calc(var(--rimh) + 24px) var(--gut) 34px}
  .line{min-height:0;padding:calc(var(--rimh) + 30px) 0 30px}
  .lgrid{grid-template-columns:1fr}
  .lprev{order:-1}
  .ctile.big{width:110px}
  .two{grid-template-columns:1fr 1fr}
  .last{padding:calc(var(--rimh) + 24px) var(--gut) 40px;align-items:flex-end}
  .back{padding:26px 22px}
  .back-cols{grid-template-columns:1fr 1fr}
  .rack-row{padding:22px var(--gut) 40px}
  .rack-row a.ctile,.rack-row .blank{width:128px}
  .page{padding:calc(var(--rimh) + 28px) var(--gut) 60px}
  .sheet{padding:22px 18px}
  .stats-grid{grid-template-columns:1fr 1fr}
  .cgrid{grid-template-columns:1fr}
  .cmeta{grid-template-columns:1fr 1fr}
  .hist li{grid-template-columns:90px 1fr;}.hist li a{grid-column:2}
}
@media (max-width:860px){.bagcard{margin:0 var(--gut) 34px}}
.bagcard{display:none}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.sunset{position:fixed;left:0;right:var(--ruler);top:var(--rimh);z-index:28;padding:10px var(--gut);background:var(--ebony);color:var(--ivory);font-size:12px;letter-spacing:.08em;border-bottom:2px solid var(--oxblood)}
.sunset a{margin-left:8px}
body.inner .rim{right:0}
body.inner main{padding-right:0}
body.inner .tstack{right:18px}
body.inner .sunset{right:0}
@media (max-width:400px){.tb .bl{white-space:normal;line-height:1.15}.tb{height:auto;min-height:48px}}
.adv:not([open]) .fl,.adv:not([open]) .two{display:none}
.brand{min-width:44px}
.five-tags li:last-child{transform:translate(-78%,0)}
.dish-amt .mono{max-width:78%;text-align:center}
