:root{--ink:#173f36;--muted:#65746d;--paper:#f7f7ef;--line:#d7ddd1;--green:#e5eddf;--yellow:#f3dc78;--white:#fffef9;--error:#8c4229;font-family:"Avenir Next",Avenir,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}*{box-sizing:border-box}body{margin:0}button,select{font:inherit}button,a,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default}button:focus-visible,a:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #bb660e;outline-offset:4px}button{color:inherit}a{color:inherit}.skip{position:fixed;left:16px;top:-80px;padding:14px;background:var(--ink);color:white;z-index:20}.skip:focus{top:10px}.site-header{max-width:1240px;margin:auto;padding:27px 40px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{font-weight:800;font-size:32px;letter-spacing:-1.8px;display:flex;gap:8px;align-items:center;text-decoration:none}.wordmark svg{width:44px;height:32px;fill:none;stroke:currentColor;stroke-width:2.6}.wordmark svg circle{fill:currentColor;stroke:none}.brand-dot{margin-left:-8px;color:#8c9e54}nav{display:flex;align-items:center;gap:44px}.prototype-label{font-size:10px;letter-spacing:1.6px;font-weight:700}.prototype-label span{color:var(--muted)}.text-button{border:0;background:none;font-size:12px;font-weight:650;padding:10px 0}.text-button:hover{text-decoration:underline;text-underline-offset:4px}.question{display:inline-grid;place-items:center;border:1px solid var(--ink);width:20px;height:20px;border-radius:50%;margin-left:7px}main{max-width:1160px;padding:0 0;margin:auto}.intro{display:flex;align-items:center;justify-content:space-between;padding:49px 42px 43px}.eyebrow{font-size:10px;letter-spacing:1.8px;font-weight:750;display:flex;align-items:center;gap:8px}.live-dot{width:6px;height:6px;background:#77965b;border-radius:50%}h1{font-family:Georgia,"Times New Roman",serif;font-size:64px;letter-spacing:-2.5px;line-height:1.04;font-weight:400;margin:20px 0}h1 em{font-weight:400;color:#557a5d}p{line-height:1.65}.intro p{font-size:14px;color:#5b6b60;margin:0}.hero-art{width:300px;margin:0 76px 0 0;transform:rotate(2deg);text-align:center}.hero-art svg{width:100%}.orbit{fill:none;stroke:#c3cbb6;stroke-dasharray:3 6;stroke-width:1.5}.fish-fill{fill:#e1e8c9;stroke:var(--ink);stroke-width:2}.fish-line{fill:none;stroke:var(--ink);stroke-width:2;stroke-linecap:round}.spark{stroke:#91a369;stroke-width:2}.bubble{fill:none;stroke:#91a369;stroke-width:1.5}.art-note{font-family:Georgia,serif;font-size:14px;font-style:italic;display:block;color:#6e7d5c;margin-top:-5px}.game{background:var(--white);border:1px solid var(--line);border-radius:16px;padding:30px 32px 0;box-shadow:0 5px 0 #e9ecdf}.puzzle-top{display:flex;justify-content:space-between;align-items:center;gap:20px}h2{font-family:Georgia,serif;font-size:32px;font-weight:400;letter-spacing:-.7px;margin:10px 0 6px}.puzzle-top p{color:var(--muted);font-size:13px;margin:0}.puzzle-switch label{font-size:10px;display:block;letter-spacing:1px;text-transform:uppercase;margin-bottom:8px;color:var(--muted);font-weight:700}select{max-width:230px;background:var(--white);border:1px solid var(--line);padding:11px 34px 11px 12px;border-radius:7px;color:var(--ink);font-size:12px;min-height:44px}.scope{display:flex;align-items:flex-start;gap:12px;background:#f3f5ee;border-radius:7px;padding:12px 16px;margin:21px 0 20px}.scope p{font-size:12px;margin:0;color:#4d6054}.scope-icon{border:1px solid #70816f;flex:0 0 16px;height:16px;border-radius:50%;font:italic 12px Georgia;text-align:center;margin-top:3px}.progress-line{display:flex;justify-content:space-between;align-items:center;margin:0 0 27px;font-size:11px}#progress{display:flex;align-items:center;gap:6px}.progress-pip{width:24px;height:5px;border-radius:10px;background:#e4e9de}.progress-pip.done{background:#527653}.progress-label{margin-left:6px;font-weight:700}#saved{color:var(--muted);font-size:10px}.board{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(260px,1fr);gap:30px}.section-label{display:flex;justify-content:space-between;align-items:center;margin:0 0 13px}.section-label h3{font-size:10px;letter-spacing:1.6px;margin:0}.section-label>span{font:italic 12px Georgia;color:#7b8576}.claims{display:grid;grid-template-columns:1fr 1fr;gap:12px}.claim{border:1px solid #d8decf;border-radius:9px;background:#fffef9;padding:17px;min-height:181px;display:flex;flex-direction:column;align-items:stretch;text-align:left;transition:background .15s,border-color .15s,transform .15s;position:relative;box-shadow:0 2px 0 #eff0e7}.claim:hover:not(:disabled){background:#f1f4e8;transform:translateY(-2px);border-color:#859773}.claim.selected-target{border-color:#6f8b65}.claim-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.claim-letter{border:1px solid #d3dbcb;border-radius:50%;width:24px;height:24px;display:grid;place-items:center;font-size:10px;font-weight:750}.claim-status{font-size:9px;letter-spacing:.8px;color:#74836b}.claim-text{font-family:Georgia,serif;font-size:20px;line-height:1.3;letter-spacing:-.2px;flex:1}.claim-action{display:flex;justify-content:space-between;font-size:10px;color:#65785e;margin-top:17px;align-items:center}.claim-action b{font-size:17px;font-weight:400}.claim.disproved{background:#f0f2e9;box-shadow:none;border-style:dashed}.claim.disproved .claim-text{color:#75816d;text-decoration:line-through;text-decoration-color:#a9b59b}.claim.disproved .claim-status{color:#436e4b;font-weight:750}.claim.survivor{background:#e3ecd9;border:1px solid #567d56}.claim.survivor .claim-letter{border-color:#6d9064;background:var(--ink);color:white}.claim.survivor .claim-status{color:var(--ink);font-weight:750}.evidence-panel{border-left:1px solid var(--line);padding-left:28px}.evidence-hint{font-size:12px;color:#63735f;margin:0 0 16px;min-height:39px}.evidence-card{display:flex;gap:14px;align-items:center;border:1px solid #d8cf9e;border-radius:7px;background:#faf4d9;width:100%;padding:15px 14px;margin:0 0 11px;text-align:left;position:relative;transition:transform .15s,background .15s;box-shadow:0 3px 0 #efe8c9;min-height:82px}.evidence-card:before{content:"";position:absolute;left:-5px;top:calc(50% - 4px);height:8px;width:8px;background:var(--white);border-radius:50%;border-right:1px solid #d8cf9e}.evidence-card:hover:not(:disabled){transform:translateY(-2px);background:#f7e9ac}.evidence-card[aria-pressed=true]{border:2px solid #244b36;padding:14px 13px;background:var(--yellow);box-shadow:0 3px 0 #cad09f}.card-symbol{font-size:19px;font-family:Georgia,serif;font-weight:700;min-width:47px;max-width:100px;overflow-wrap:anywhere;line-height:1.1}.card-copy{font-size:11px;color:#59634a;line-height:1.5;flex:1}.card-mark{font-size:17px}.evidence-card:disabled{opacity:.55;box-shadow:none;background:#f1f1e8;border-style:dashed}.evidence-foot{font-size:11px;font-style:italic;color:#778168;margin-top:19px;display:flex;align-items:center;gap:9px}.evidence-foot span{font-size:22px}.status{border-radius:6px;background:#f4f5ed;padding:13px 16px;font-size:12px;color:#54694f;margin:24px 0 0;line-height:1.5;min-height:44px}.status.error{background:#fcf0e9;color:var(--error)}.status.success{background:#e8efdf;color:#315b37}.under-board{border-top:1px solid #e6e9dd;margin-top:23px;padding:15px 0;display:flex;align-items:center;justify-content:space-between;font-size:11px;color:#6f7b68}.under-board .text-button{font-size:11px;color:#6f7b68}.tiny-fish{margin-right:6px}.bottom-note{display:flex;align-items:center;gap:16px;padding:31px 8px 36px}.note-star{font-size:34px;color:#8d9c69}.bottom-note h3{font:17px Georgia;margin:0 0 5px}.bottom-note p{font-size:11px;color:var(--muted);margin:0}.collection-label{margin-left:auto;text-align:right;font-size:8px;line-height:1.9;letter-spacing:1px;color:#738068}.collection-label strong{font-weight:400;letter-spacing:0;font-size:10px}footer{max-width:1240px;margin:auto;border-top:1px solid var(--line);padding:22px 40px;display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#74816e}footer>span:first-child{font-size:16px;font-weight:800;letter-spacing:-.5px;color:var(--ink)}.footer-sub{font-size:10px;font-weight:400;letter-spacing:0;margin-left:10px;color:#74816e}footer .text-button{font-size:10px;font-weight:400;color:#64735f}.result{margin-top:24px;background:#e6eddc;border:1px solid #cad8ba;padding:28px;border-radius:10px}.result[hidden]{display:none}.result-header{display:flex;justify-content:space-between;gap:20px;align-items:center}.result h2{font-size:35px}.result p{font-size:13px;margin:8px 0}.result-badge{border:1px solid #879e71;width:76px;height:76px;flex:0 0 76px;border-radius:50%;display:grid;place-items:center;font-size:31px;transform:rotate(-12deg)}.result-stats{display:flex;gap:30px;font-size:11px;margin:20px 0}.result-stats strong{font:26px Georgia;display:block;margin-bottom:4px}.result-actions{display:flex;gap:10px;flex-wrap:wrap}.primary,.secondary{border:1px solid var(--ink);border-radius:6px;min-height:44px;padding:12px 20px;font-size:12px;font-weight:650}.primary{background:var(--ink);color:#fffef3}.primary:hover{background:#2e5946}.secondary{background:transparent}.secondary:hover{background:#dae4cc}.explanations{border-top:1px solid #bdceb0;padding-top:18px;margin-top:24px}.explanations summary{cursor:pointer;font-size:12px;font-weight:700;padding:4px}.explanation{font-size:12px;line-height:1.65;margin-top:14px}.explanation strong{display:block;font-size:12px}.share-fallback{display:block;width:100%;margin-top:12px;padding:12px;border:1px solid var(--line);border-radius:5px;background:var(--white);color:var(--ink);font:12px monospace;min-height:120px}dialog{border:1px solid #d1d8c6;border-radius:16px;padding:38px;max-width:510px;width:calc(100% - 32px);background:var(--white);color:var(--ink);box-shadow:0 24px 80px #132f3440}dialog::backdrop{background:#132f3466;backdrop-filter:blur(3px)}dialog h2{font-size:35px}dialog p{font-size:13px;color:#5f6f58}.close{position:absolute;right:16px;top:12px;background:none;border:0;font-size:25px;width:36px;height:36px}.instructions{padding-left:24px;margin:25px 0}.instructions li{padding:0 0 20px 8px;font:20px Georgia}.instructions strong{display:block;font:600 14px "Avenir Next",sans-serif;margin-bottom:5px}.instructions span{display:block;font:13px/1.6 "Avenir Next",sans-serif;color:#63745b}.dialog-note{background:#f0f3e8;padding:14px;border-radius:6px}.dialog-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px}.no-script{position:fixed;bottom:20px;left:20px;padding:20px;background:#ffe0cc;border:1px solid #944;color:#512} @media(min-width:1500px){.intro{padding-top:60px;padding-bottom:50px}}@media(max-width:1200px){main{margin:0 32px}.hero-art{margin-right:35px}}@media(max-width:800px){.site-header{padding:20px 24px}.prototype-label{display:none}main{margin:0 20px}.intro{padding:35px 10px}.hero-art{width:220px;margin-right:0}h1{font-size:53px}.game{padding:25px 22px 0}.board{gap:20px;grid-template-columns:minmax(0,1.25fr) minmax(200px,1fr)}.evidence-panel{padding-left:18px}.claims{grid-template-columns:1fr}.claim{min-height:145px}.claim-top{margin-bottom:10px}.claim-text{font-size:19px}.evidence-card{display:block}.card-symbol{display:block;margin-bottom:9px}.card-copy{display:block;padding-right:10px}.card-mark{position:absolute;right:14px;top:16px}.collection-label{display:none}.bottom-note{padding:28px 5px}footer{padding:20px 24px}footer>span:nth-child(2){display:none}}@media(max-width:540px){.site-header{padding:17px 18px}.wordmark{font-size:29px}.wordmark svg{width:37px}main{margin:0 12px}.intro{padding:29px 7px 30px;position:relative;overflow:hidden}.intro .eyebrow{font-size:8px;letter-spacing:1.1px}h1{font-size:46px;letter-spacing:-1.8px;margin:17px 0}.intro p{font-size:12px;max-width:235px}.hero-art{position:absolute;width:135px;right:-11px;top:64px;opacity:.75;transform:rotate(14deg)}.art-note{display:none}.game{padding:22px 15px 0;border-radius:12px}.puzzle-top{align-items:flex-start;gap:10px}.puzzle-top h2{font-size:28px}.puzzle-top .eyebrow{font-size:8px;letter-spacing:1.2px}.puzzle-top p{font-size:11px;max-width:180px}.puzzle-switch{max-width:116px}select{width:116px;padding:10px 6px;font-size:10px}.puzzle-switch label{font-size:8px}.scope{padding:10px;margin:18px 0}.scope p{font-size:11px}.progress-line{margin-bottom:22px;gap:10px}#saved{font-size:9px}.board{display:flex;flex-direction:column;gap:24px}.evidence-panel{border:0;border-top:1px solid var(--line);padding:20px 0 0;order:-1}.evidence-hint{min-height:0;font-size:11px;margin-bottom:13px}#evidence{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.evidence-card{padding:12px 10px;margin:0;min-height:120px}.evidence-card[aria-pressed=true]{padding:11px 9px}.card-symbol{font-size:19px;min-width:0;margin-bottom:7px}.card-copy{font-size:10px;padding:0;line-height:1.4}.card-mark{right:6px;top:3px;font-size:12px}.evidence-foot{display:none}.section-label{margin-bottom:11px}.section-label>span{font-size:11px}.claims{grid-template-columns:1fr 1fr;gap:9px}.claim{padding:12px;min-height:176px}.claim-letter{width:21px;height:21px}.claim-status{font-size:8px;letter-spacing:0}.claim-text{font-size:18px}.claim-action{font-size:9px;margin-top:14px}.status{margin-top:18px;padding:12px;font-size:11px}.under-board{font-size:9px;gap:8px}.under-board .text-button{font-size:9px}.result{padding:20px 16px}.result h2{font-size:30px}.result-badge{width:55px;height:55px;flex-basis:55px;font-size:24px}.result-stats{gap:21px}.bottom-note{align-items:flex-start;padding:29px 7px}.bottom-note h3{font-size:15px}.bottom-note p{font-size:10px}.note-star{font-size:27px}footer{padding:20px 18px;gap:12px}.footer-sub{display:none}dialog{padding:30px 24px}dialog h2{font-size:30px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
@media(max-width:540px){.card-symbol{font-size:16px;letter-spacing:-.5px;overflow-wrap:normal}.evidence-card{padding-left:9px;padding-right:9px}.evidence-card[aria-pressed=true]{padding-left:8px;padding-right:8px}}
@media(max-width:360px){.card-symbol{font-size:14px}.claim-text{font-size:16px}.hero-art{width:110px;right:-15px;top:75px}.intro p{max-width:210px}}

.claim-context{display:block;font-size:10px;line-height:1.4;font-weight:600;color:#52684c;margin-bottom:9px}.build-version{font-size:10px;color:#64735f;margin-left:10px}

[hidden]{display:none!important}.welcome-steps{padding:0;list-style:none;max-width:470px;margin:27px 0;counter-reset:step}.welcome-steps li{counter-increment:step;position:relative;padding-left:33px;margin:18px 0;font-size:13px;line-height:1.6;color:#52664d}.welcome-steps li:before{content:counter(step);position:absolute;left:0;top:1px;width:22px;height:22px;background:#e5eddf;border-radius:50%;text-align:center;color:#173f36;font-weight:700}.welcome-steps strong{color:#173f36}.play-button{font-size:15px;padding:16px 27px}.intro .welcome-foot{font-size:11px;margin-top:13px}#welcome{min-height:70vh}#errors{font-size:12px;font-weight:700;color:#774326}#errors.at-limit{color:#9b3026}.game{margin-top:28px}#evidence{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.evidence-card{margin:0;min-height:78px;justify-content:center;text-align:center}.card-symbol{min-width:0;max-width:none}.card-mark{position:absolute;right:8px;top:7px;font-size:12px}.progress-line{flex-wrap:wrap;gap:10px}@media(max-width:540px){#evidence{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.evidence-card{display:flex;min-height:72px;padding:10px 5px}.evidence-card[aria-pressed=true]{padding:9px 4px}.card-symbol{font-size:14px;margin:0}#welcome .hero-art{top:75px}.welcome-steps{margin-top:26px}.welcome-steps li{font-size:12px}#welcome{min-height:0}.intro .welcome-foot{max-width:none}.play-button{width:100%}}

/* Prominent gameplay counters; timer ticks do not re-render the board. */
.progress-line{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:stretch}
.game-stat,#progress,#errors{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:7px;padding:18px 12px;border:1px solid #cad7c3;border-radius:10px;background:#edf3e6;font-size:13px;font-weight:700;color:var(--ink)}
.game-stat strong{font-size:36px;line-height:1.1;font-weight:750;font-variant-numeric:tabular-nums;white-space:nowrap}.game-stat small{font-size:22px;font-weight:500}.game-stat>span{font-size:12px;letter-spacing:1px;text-transform:uppercase}
#errors{background:#fcf0e9;border-color:#e8cbbc;color:#8c4229}#timer{background:#f3f4ec;border-color:var(--line)}#saved{grid-column:1/-1;text-align:right}.result-stats{flex-wrap:wrap}
@media(max-width:540px){.progress-line{gap:8px}.game-stat,#progress,#errors{padding:15px 5px}.game-stat strong{font-size:28px}.game-stat small{font-size:17px}.game-stat>span{font-size:10px}.result-stats{gap:18px}}

/* Puzzle context is required reading, not a small-print hint. */
.scope{display:block;border:1px solid #9eb48d;border-left:5px solid #557a5d;background:#edf3e3;padding:22px 25px;margin:24px 0;border-radius:10px}
.scope .eyebrow{font-size:10px;letter-spacing:1.4px;color:#456039}.scope h3{font:28px Georgia,serif;margin:9px 0 7px}.scope .scope-guide{font-size:13px;color:#52664d;margin:0 0 13px}.scope #scope{font-size:18px;line-height:1.65;font-weight:600;color:var(--ink);max-width:900px}.puzzle-top p{max-width:none}
@media(max-width:540px){.scope{padding:18px 16px;margin:20px 0}.scope h3{font-size:25px}.scope .scope-guide{font-size:12px}.scope #scope{font-size:16px}}

.practice-library{padding:38px 32px}.practice-library>p{max-width:650px;color:var(--muted);font-size:14px}.practice-library h2{font-size:40px}.practice-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin:25px 0}.practice-card{border:1px solid var(--line);border-radius:12px;padding:24px;background:var(--white);display:flex;flex-direction:column}.practice-card-top{display:flex;justify-content:space-between;gap:12px;align-items:center;font-size:12px}.difficulty{padding:6px 10px;background:#e7eddc;border-radius:5px;font-weight:750}.practice-status{color:var(--muted)}.practice-status.completed{color:#315b37;font-weight:700}.practice-card h3{font:27px Georgia,serif;margin:20px 0 8px}.practice-card p{font-size:13px;color:var(--muted);flex:1;margin:0 0 22px}.practice-card button{text-align:left}.practice-library #practice-summary{font-weight:700;color:var(--ink)}#browse-practice{margin:12px 0 0 10px}#practice-back{margin-bottom:16px}#timer-value{font-size:clamp(17px,4vw,36px)}
@media(max-width:540px){.practice-library{padding:28px 7px}.practice-library h2{font-size:32px}.practice-list{grid-template-columns:1fr;gap:12px}.practice-card{padding:20px}#browse-practice{margin:12px 0 0;width:100%}#timer-value{font-size:26px}.practice-card-top{flex-wrap:wrap}}

@media(max-width:540px){#timer-value.long-time{font-size:18px}}

.pair-tray{position:sticky;bottom:6px;z-index:4;background:var(--white);border:1px solid #8a9e79;border-radius:8px;padding:9px 13px;margin:16px 0;box-shadow:0 3px 14px #173f361b}.pair-tray #selection{font-size:13px;font-weight:700}.pair-tray .status{margin:3px 0 0;padding:3px 0;min-height:0;background:none}.claim[aria-pressed=true]{outline:3px solid #426945;background:#edf3de}.evidence-card[data-feedback=error]::after,.claim[data-feedback=error] .claim-status::after{content:" ×";font-weight:bold;color:#843b22}.scope{padding:14px 18px}.scope .scope-guide{margin-bottom:5px}.scope h3{font-size:23px;margin:4px 0}.scope .eyebrow{display:none}.demo-cards{display:grid;gap:8px}.survived{border-left:3px solid #799663;padding-left:12px}.arrival{font-weight:600}#demo-open{margin:0 8px 8px 0}.practice-card .secondary,.dialog-actions button{min-height:44px}@media(max-width:540px){#demo-open{width:100%}.scope #scope{font-size:15px}.pair-tray{bottom:2px}.claim-context{display:none}.game .result-actions{scroll-margin:15px}}

#review-info{float:right;padding:5px 10px;min-height:44px;text-decoration:underline}.pair-tray::after{content:"";display:block;clear:both}.card-mark{font-size:11px}.evidence-card{min-height:56px}
