:root{color-scheme:dark;--paper:#100d13;--ink:#f2efeb;--muted:#aaa4a5;--red:#ff4740;--yellow:#ffcd00;--line:#ffffff1c;font-family:Inter,Arial,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0;overflow:hidden;background:#100d13 url('../assets/site-background.webp') center top / cover fixed}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;cursor:pointer}button:disabled{opacity:.45;cursor:wait}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible{outline:2px solid var(--yellow);outline-offset:5px}[hidden]{display:none!important}p,h1,h2{margin:0}button{color:inherit}#cap-table{position:fixed;inset:0;touch-action:none}#cap-table canvas{display:block;width:100%;height:100%;touch-action:none}.header{position:fixed;left:40px;right:40px;top:0;height:92px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);z-index:3}.brand img{width:155px;height:auto;display:block;filter:none;opacity:1}.edition{display:flex;gap:9px;align-items:center;font-size:10px;font-weight:600;letter-spacing:1.7px}.edition i{width:6px;height:6px;background:var(--red);border-radius:50%;flex-shrink:0}.header-actions{display:flex;gap:25px;align-items:center}.back-link{font-size:12px;font-weight:600;display:flex;gap:18px;align-items:center}.back-link span{font-size:20px}.icon-button{width:35px;height:35px;background:transparent;border:0;padding:7px}.icon-button svg{width:100%;height:100%}.intro{position:fixed;top:23%;left:4.2%;pointer-events:none;z-index:1}.eyebrow{font-size:9px;letter-spacing:1.4px;font-weight:700}.intro h1{font-family:'Barlow Condensed',Impact,'Arial Narrow',sans-serif;font-size:clamp(76px,8.3vw,146px);font-weight:800;font-style:italic;line-height:.98;letter-spacing:-2.8px;margin-top:24px;position:relative;transform:rotate(-3deg);transform-origin:left center}.intro h1 sup{font-family:Arial,sans-serif;font-size:16px;position:absolute;top:4px;margin-left:7px;letter-spacing:0}.intro-copy{font-size:13px;color:#b5aeb1;line-height:1.75;margin-top:28px}.howto{margin-top:37px;padding-top:19px;border-top:1px solid var(--line);width:215px;position:relative}.instruction-number{font-size:9px;letter-spacing:1.5px;color:var(--red);font-weight:700}.howto p{font-size:11px;line-height:1.7;margin-top:9px;color:#b5aeb1}.drawn-arrow{position:absolute;font-family:Georgia,serif;font-size:56px;right:-36px;top:32px;color:var(--red);transform:rotate(-25deg)}.bottom-ui{position:fixed;bottom:21px;left:40px;right:40px;z-index:3;display:flex;align-items:center;flex-direction:column;pointer-events:none}.toolbar{display:flex;align-items:center;gap:9px;padding:7px;background:linear-gradient(145deg,#302329ed,#151217f5);border:1px solid #ffffff21;border-radius:18px;box-shadow:inset 0 1px 0 #ffffff0c,0 12px 40px #08050b66;backdrop-filter:blur(18px);pointer-events:auto}.demo-button{background:none;border:0;font-weight:600;font-size:11px;padding:13px 14px}.demo-button span{margin-left:9px;color:var(--red)}.reset-button{background:var(--red);color:#08080b;border:0;font-weight:600;border-radius:9px;font-size:11px;padding:14px 17px;display:flex;gap:9px;align-items:center;justify-content:center}.reset-button>span{font-size:19px;line-height:12px}.reset-button:hover{background:#ff6862}.chip-label{position:fixed;pointer-events:none;font-size:8px;letter-spacing:1.3px;font-weight:700;color:#dfcbd0;z-index:2;white-space:nowrap;transform:translate(-50%,-100%)}.chip-label span{display:block;font-size:30px;text-align:center;color:var(--red);font-weight:400;margin-top:8px}.loading{position:fixed;inset:0;background:var(--paper);z-index:20;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:22px;transition:opacity .35s}.loading.ready{opacity:0;pointer-events:none}.loading p{font-size:12px;color:var(--muted)}.loading a{font-size:11px;text-decoration:underline;display:none}.loading.failed a{display:block}.loader-cap{display:grid;place-items:center;font-size:35px;font-weight:800;width:70px;height:70px;border:3px solid var(--red);border-radius:50%;color:var(--red);animation:loading 1.5s ease-in-out infinite}.loading.failed .loader-cap{animation:none}@keyframes loading{50%{transform:rotateY(180deg)}}.no-script{position:fixed;inset:0;z-index:50;background:var(--paper);display:grid;place-content:center}
@media(min-width:1600px){.intro{top:25%}.intro-copy{font-size:15px}.howto p{font-size:12px}.howto{margin-top:45px}}
@media(max-height:720px) and (min-width:761px){.intro{top:23%}.intro h1{font-size:88px}.intro-copy{margin-top:20px}.howto{margin-top:21px}.bottom-ui{bottom:14px}}
@media(max-width:1000px) and (min-width:761px){.intro h1{font-size:86px}.intro{left:30px}.intro .eyebrow{font-size:7px}.howto{width:185px}.edition{font-size:8px}}
@media(max-width:760px){.header{left:22px;right:22px;height:75px}.brand img{width:128px}.edition{display:none}.header-actions{gap:13px}.back-link{font-size:10px;gap:8px}.intro{top:105px;left:25px}.intro h1{font-size:66px;letter-spacing:-1.6px;margin-top:16px}.intro .eyebrow{font-size:6.5px;letter-spacing:.9px}.intro h1 sup{font-size:11px}.intro-copy{font-size:10px;line-height:1.55;margin-top:19px}.howto{display:none}.bottom-ui{bottom:max(15px,env(safe-area-inset-bottom));left:15px;right:15px}.toolbar{border-radius:13px}.reset-button{padding:14px 11px;font-size:10px}.demo-button{font-size:11px}.chip-label{font-size:7px}.chip-label span{font-size:24px}}
@media(max-height:670px) and (max-width:760px){.intro{top:90px}.intro h1{font-size:48px;margin-top:10px}.intro-copy{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

@media(max-width:760px){.toolbar .reset-button{min-height:44px}.toolbar .demo-button{min-height:44px}.header .icon-button{width:40px;height:40px}}

/* Shared visual language with the CapsGame landing page. */
body::after { content:''; position:fixed; inset:0; z-index:10; pointer-events:none; background:url('../assets/grain.svg'); opacity:.14; mix-blend-mode:screen; }
::selection { background:var(--red); color:#fff; }
.header { border-bottom-color:#ffffff1c; }
.edition { color:#c2b4bc; }
.edition i { background:var(--red); box-shadow:0 0 12px #ff474077; }
.back-link:hover, .icon-button:hover { color:var(--yellow); }
.intro>.eyebrow { color:var(--red); }
.chrome-line { position:relative; display:block; width:fit-content; padding:0 .1em .035em 0; color:#dce1e9; background:linear-gradient(180deg,#fff 0%,#ececf3 14%,#9099a8 28%,#e8ecf1 38%,#fcfcff 45%,#444957 48%,#11141d 52%,#9b9fad 62%,#f9fcff 75%,#aaafb9 88%,#555862 100%); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; -webkit-text-stroke:.5px #e8e8ef99; filter:drop-shadow(0 2px 0 #3c3c48) drop-shadow(1px 3px 0 #272731) drop-shadow(1px 4px 0 #131319) drop-shadow(0 10px 10px #0008); }
.chrome-gold { background-image:linear-gradient(180deg,#fffbd6 0%,#ffe973 19%,#ffcd00 43%,#775209 49%,#b58405 54%,#ffcd00 69%,#fff4a4 82%,#d39200 100%); -webkit-text-stroke-color:#ffe98599; filter:drop-shadow(0 2px 0 #735216) drop-shadow(1px 3px 0 #3b2916) drop-shadow(1px 4px 0 #1d1111) drop-shadow(0 10px 10px #0008); }
.title-glint { position:absolute; width:22px; height:22px; top:18%; left:65%; background:#fff; clip-path:polygon(49% 0,56% 40%,100% 49%,59% 56%,50% 100%,43% 59%,0 50%,41% 44%); filter:drop-shadow(0 0 5px white); animation:glint 6s ease-in-out infinite; }
@keyframes glint { 0%,35%,65%,100%{opacity:.2;transform:scale(.6) rotate(0)}50%{opacity:1;transform:scale(1.2) rotate(90deg)} }


.chip-label span { color:var(--yellow); }

.demo-button{ position:relative; isolation:isolate; overflow:hidden; color:#302006; border:1px solid #ffe987; border-radius:11px; background:radial-gradient(ellipse at 26% 0%,#fff6b3 0%,transparent 57%),linear-gradient(180deg,#ffdf4d 0%,#ffcd00 54%,#f3b600 100%); box-shadow:inset 0 2px 1px #fff9,inset 0 -2px 2px #bb7d0040,0 3px 0 #b17408,0 5px 0 #654116,0 8px 16px #0006,0 0 24px #ffcd0015; font-weight:800; transition:transform .2s,box-shadow .2s; }
.demo-button::before{ content:''; position:absolute; inset:3px; border:1px solid #fff6ba55; border-radius:7px; pointer-events:none; }
.demo-button:hover{ transform:translateY(-1px); box-shadow:inset 0 2px 1px #fffb,0 4px 0 #b17408,0 6px 0 #654116,0 12px 24px #0008,0 0 35px #ffcd0030; }
.demo-button:active{ transform:translateY(3px); box-shadow:inset 0 2px 1px #fff9,0 1px 0 #b17408,0 3px 8px #0006; }
.demo-button span { color:inherit; }
.toolbar { gap:10px; padding:9px; }
.toolbar .reset-button { color:var(--ink); background:transparent; border:1px solid #ff474045; padding:13px 16px; box-shadow:inset 0 1px #ffffff08; }
.toolbar .reset-button:hover { background:#ff474015; border-color:#ff474099; }
.loading { background:#100d13 url('../assets/site-background.webp') center / cover; }
.loader-cap { color:var(--yellow); border-color:var(--yellow); box-shadow:0 0 30px #ffcd0015; }
@media(max-width:760px) { .intro h1 { line-height:.93; }.chrome-line { -webkit-text-stroke-width:.35px; }.title-glint { width:15px; height:15px; }.toolbar { padding:7px; gap:6px; }.toolbar .reset-button { padding-inline:11px; }.demo-button { margin:0; padding:13px 16px; }.intro-copy { margin-top:17px; } }
@media(prefers-reduced-motion:reduce) { .title-glint { animation:none!important; } }

