:root{--ink: #1b2233;--ink-2: #4a5468;--muted: #6b7489;--bg: #f6f4ef;--card: #ffffff;--line: #e4e0d6;--navy: #1f2a44;--navy-2: #2b3a5e;--amber: #f5a524;--amber-ink: #8a5a00;--green: #1f8a4c;--red: #c0392b;--radius: 14px;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--ink);background:var(--bg);line-height:1.55}@media (prefers-color-scheme: dark){:root{--ink: #e9ecf3;--ink-2: #c3c9d6;--muted: #9aa3b5;--bg: #12161f;--card: #1a202c;--line: #2b3342;--amber-ink: #f5c26b}}*{box-sizing:border-box}body{margin:0;background:var(--bg)}a{color:inherit}h1,h2,h3,h4,h5{line-height:1.25;margin:0 0 .4em}p{margin:0 0 .8em}.wrap{max-width:1040px;margin:0 auto;padding:0 16px}.stack{display:grid;gap:24px;padding-top:32px;padding-bottom:48px}.row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.muted{color:var(--muted)}.small{font-size:.85rem}.mono{font-family:ui-monospace,SF Mono,Menlo,Consolas,monospace;font-size:.9em}.topbar{background:var(--navy);color:#fff}.topbar-inner{display:flex;justify-content:space-between;align-items:center;height:56px;gap:12px}.brand{display:flex;align-items:center;gap:10px;font-weight:700;text-decoration:none;font-size:1.1rem}.chain-status{display:flex;align-items:center;gap:8px;font-size:.85rem;text-decoration:none;white-space:nowrap}.chain-status .muted{color:#aeb8cf}.dot{width:8px;height:8px;border-radius:50%;background:#8892a8}.dot-up{background:#3ddc84;box-shadow:0 0 0 3px #3ddc8433}.dot-down{background:#ff6b5b}.hero{background:linear-gradient(160deg,var(--navy) 0%,var(--navy-2) 100%);color:#fff;padding:56px 0 64px}.hero h1{font-size:clamp(1.8rem,4vw,2.7rem);max-width:720px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78rem;color:var(--amber);font-weight:600}.lead{max-width:680px;color:#d3d9e6;font-size:1.08rem;margin-bottom:1.5em}.btn{display:inline-block;border:0;border-radius:10px;padding:10px 18px;font:inherit;font-weight:600;background:var(--amber);color:#1b1300;cursor:pointer;text-decoration:none}.btn:hover{filter:brightness(1.06)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn-ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.btn-ghost-light{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.35)}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px}.card-head{margin-bottom:16px}.section-head{margin:8px 0 16px}.honest{border-left:4px solid var(--amber)}.learn{border-left:4px solid var(--navy-2)}.guide-links{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:12px 0 0;font-size:.88rem}.guide-links-label{text-transform:uppercase;letter-spacing:.09em;font-size:.7rem;font-weight:700;color:var(--muted)}.guide-links a{display:inline-block;padding:3px 10px;border:1px solid var(--line);border-radius:999px;text-decoration:none;color:var(--ink-2);background:var(--card)}.guide-links a:hover{border-color:var(--amber);color:var(--amber-ink)}.steps{list-style:none;margin:0;padding:0;display:grid;gap:4px}.step{display:flex;gap:14px;padding:12px 0;border-top:1px solid var(--line)}.step:first-child{border-top:0}.step h3{font-size:1rem;margin:4px 0;color:var(--muted)}.step.active h3,.step.done h3{color:var(--ink)}.step-num{flex:0 0 30px;height:30px;border-radius:50%;display:grid;place-items:center;font-weight:700;font-size:.9rem;border:2px solid var(--line);color:var(--muted)}.step.active .step-num{border-color:var(--amber);color:var(--amber-ink)}.step.done .step-num{background:var(--green);border-color:var(--green);color:#fff}.step-content{color:var(--ink-2)}.rules{margin:0 0 12px;padding-left:18px}.error{color:var(--red);margin-top:12px}.success{color:var(--green);font-weight:600;margin-top:12px}.board{display:grid;grid-template-columns:1fr;gap:20px}@media (min-width: 820px){.board{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr)}}.post-form{display:flex;gap:8px;margin-bottom:8px;flex-wrap:wrap}.post-form input{min-width:120px}.post-form input{flex:1;min-width:0;padding:10px 12px;border-radius:10px;border:1px solid var(--line);font:inherit;background:var(--bg);color:var(--ink)}.notices{list-style:none;padding:0;margin:12px 0 0;display:grid;gap:8px}.notices li{display:grid;gap:2px;padding:10px 12px;border:1px solid var(--line);border-radius:10px}.notice-empty{padding:14px;border:1px dashed var(--line);border-radius:10px;color:var(--ink-2)}.tx-panel{border:1px solid var(--line);border-radius:12px;padding:16px;background:var(--bg);font-size:.9rem;overflow-wrap:anywhere}.tx-panel h4{font-size:.95rem}.tx-panel h5{margin-top:12px;font-size:.85rem;color:var(--muted)}.tx-panel dl{display:grid;grid-template-columns:auto 1fr;gap:4px 12px;margin:0}.tx-panel dt{color:var(--muted)}.tx-panel dd{margin:0}.tx-success{border-color:var(--green)}.tx-reverted,.tx-error{border-color:var(--red)}.event{margin:4px 0;padding:8px;background:var(--card);border-radius:8px;white-space:pre-wrap;font-size:.82rem}.module{padding:14px 0;border-top:1px solid var(--line)}.module:first-child{border-top:0;padding-top:0}.module h3{font-size:1rem}.ok{color:var(--green);font-weight:600}.stamps{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.stamp{font-size:.78rem;font-weight:600;padding:4px 10px;border-radius:999px;background:#1f8a4c1f;color:var(--green);border:1px solid rgba(31,138,76,.3)}.figures{display:flex;gap:24px;flex-wrap:wrap;margin-bottom:4px}.figures>div{display:grid}.figure{font-size:1.5rem;font-weight:700;line-height:1.2}.badge-open{background:#1f8a4c24;color:var(--green)}.small-btn{padding:5px 12px;font-size:.85rem;margin-top:6px}.admin{border-left:4px solid var(--red)}.admin .post-form select,.admin .post-form input{flex:1;min-width:150px;padding:10px 12px;border-radius:10px;border:1px solid var(--line);font:inherit;background:var(--bg);color:var(--ink)}.stamp-warn{background:#be3c301f;color:var(--red);border-color:#be3c304d}.notices li .row{margin-top:4px}.stops{display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));list-style:none;margin:0;padding:0}.stops-compact{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}.stop{background:var(--card);border:1px solid var(--line);border-radius:var(--radius)}.stop:hover{border-color:var(--amber)}.stop-done{border-color:#1f8a4c73}.stop-link{display:block;padding:18px;text-decoration:none;color:inherit;height:100%}.stop-link:focus-visible{outline:3px solid var(--amber);outline-offset:2px;border-radius:var(--radius)}.stops-compact .stop-link{padding:14px}.stop-top{display:flex;align-items:flex-start;gap:12px;margin-bottom:8px}.stop-top>div{flex:1}.stop-top .muted{margin:0}.stop-num{flex:none;min-width:44px;height:36px;padding:0 8px;border-radius:10px;display:grid;place-items:center;background:var(--navy);color:#fff;font-weight:700;font-size:.9rem}.stop-done .stop-num{background:var(--green)}.stop h3{font-size:1.05rem;margin:0}.stop-problem{color:var(--ink-2);margin-bottom:8px}.stops-compact .stop-problem{font-size:.92rem;margin:0}.stop-modules{list-style:none;margin:0;padding:0;color:var(--muted);font-size:.92rem}.stop-modules li{padding:2px 0}.stop-modules li.earned{color:var(--green)}.stop-modules li.earned:after{content:" ✓"}.badge{font-size:.72rem;font-weight:600;white-space:nowrap;padding:2px 8px;border-radius:999px;background:#f5a52426;color:var(--amber-ink)}.footer{border-top:1px solid var(--line);padding:20px 0;color:var(--muted);font-size:.88rem}.footer-inner{display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px}.footer a{text-decoration:none}.footer a:hover{text-decoration:underline}@media (max-width: 520px){.chain-status .muted{display:none}.post-form{flex-direction:column}}.zk{border-left:4px solid var(--navy)}.anon-set{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;padding:12px 14px;margin-bottom:14px;border-radius:12px;background:#1f2a440f;border:1px solid var(--line)}.anon-set>div{display:grid;gap:2px;max-width:52ch}.secret-box{overflow-wrap:anywhere;padding:8px 10px;border-radius:10px;background:var(--bg);border:1px dashed var(--line);font-size:.85rem}.check{display:flex;align-items:flex-start;gap:8px;line-height:1.4}.check input{margin-top:3px;flex:none}.zk .post-form select,.zk .post-form input[type=text],.zk .post-form input:not([type]){flex:1;min-width:150px;padding:10px 12px;border-radius:10px;border:1px solid var(--line);font:inherit;background:var(--bg);color:var(--ink)}.zk details{margin-top:8px}.zk details summary{cursor:pointer;color:var(--muted)}.topnav{display:flex;gap:18px;margin-left:auto;margin-right:16px;font-size:.92rem}.topnav a{text-decoration:none;color:#d3d9e6}.topnav a:hover,.topnav a[aria-current=page]{color:#fff;text-decoration:underline}.crumbs{color:var(--muted)}.crumbs a{color:var(--ink-2)}.stop-head h1,.map-head h1{font-size:clamp(1.6rem,3.4vw,2.3rem);margin-bottom:.25em}.stop-head .eyebrow,.map-head .eyebrow{color:var(--amber-ink);margin-bottom:4px}.stop-problem-lead{font-size:1.1rem;color:var(--ink-2);max-width:720px}.setup-nudge{padding:12px 16px;border-radius:10px;background:#f5a5241f;border:1px solid rgba(245,165,36,.35)}.neighbours{display:flex;justify-content:space-between;gap:16px}.neighbour{display:grid;gap:2px;padding:14px 18px;min-width:200px;text-decoration:none;background:var(--card);border:1px solid var(--line);border-radius:var(--radius)}.neighbour:hover{border-color:var(--amber)}.neighbour-next{text-align:right;margin-left:auto}.progress{display:grid;gap:10px}.progress-bar{height:10px;border-radius:999px;background:var(--line);overflow:hidden;max-width:520px}.progress-bar span{display:block;height:100%;background:var(--green)}.how{margin:0;padding-left:22px;display:grid;gap:12px}.how li{display:grid;gap:2px}.who{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.who h3{font-size:1rem}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@media (max-width: 640px){.topnav{gap:12px;margin-right:8px}.topbar-inner{flex-wrap:wrap;height:auto;padding-top:10px;padding-bottom:10px}.neighbours{flex-direction:column}.neighbour,.neighbour-next{min-width:0;text-align:left;margin-left:0}}.stop-badge{margin-left:8px;display:inline-block}.nowrap{white-space:nowrap}.stop-body>section.card>.card-head>h2:first-child{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
