/* A reading and calculation layer; existing game controls retain their selectors. */
.evolution-site,.hub-page{--lab-accent:#9fe5dc;--lab-panel:#14292e;--lab-line:#315156}
.evolution-site[data-evo-game="crazy-time"]{--lab-accent:#f0b3e3;--lab-panel:#2c1f33;--lab-line:#65455d}
.evolution-site[data-evo-game="ice-fishing"]{--lab-accent:#9cdef4;--lab-panel:#142b3d;--lab-line:#37617a}
.evolution-site[data-evo-game="lightning-storm"]{--lab-accent:#d6c4ff;--lab-panel:#25203a;--lab-line:#594675}
.evolution-site[data-evo-game="funky-time"]{--lab-accent:#ffcc9f;--lab-panel:#34251b;--lab-line:#71503a}
.evolution-site[data-evo-game="red-door-roulette"]{--lab-accent:#ffb3a7;--lab-panel:#351e23;--lab-line:#774046}
.evo-read-progress{position:fixed;left:0;top:0;width:100%;height:3px;z-index:1000;border:0;appearance:none;background:transparent;pointer-events:none;color:var(--lab-accent)}
.evo-read-progress::-webkit-progress-bar{background:transparent}.evo-read-progress::-webkit-progress-value{background:var(--lab-accent)}.evo-read-progress::-moz-progress-bar{background:var(--lab-accent)}
.evolution-site .page-hero{padding-block:55px 35px;background:radial-gradient(ellipse at right top,var(--lab-panel),transparent 70%);border-bottom:1px solid var(--lab-line)}
.evolution-site .page-hero h1{max-width:930px;font-weight:650;letter-spacing:-.04em}.evolution-site .page-hero .guide-art{transform:rotate(1.5deg);border-radius:24px;overflow:hidden;box-shadow:12px 14px 0 var(--lab-panel)}
.evolution-site .reading.prose{max-width:1000px}.evolution-site .reading.prose>p{max-width:80ch;font-size:17px;line-height:1.85}
.evolution-site .reading.prose>h2{font-size:clamp(27px,3.2vw,39px);max-width:27ch;letter-spacing:-.025em}
.evolution-site main>section.evo-chapter{position:relative;border-bottom:1px solid #ffffff10}.evolution-site main>section.evo-chapter:nth-of-type(even){background:linear-gradient(90deg,#ffffff02,transparent)}
.evo-chapter .evo-chapter-index{font:600 12px/1.4 monospace;color:var(--lab-accent);letter-spacing:.16em;margin-bottom:17px;display:block}
.evo-lab,.evo-route,.evo-news-card,.evo-guide-map,.evo-compare{width:min(1120px,calc(100% - 64px));margin:38px auto;border:1px solid var(--lab-line);border-radius:22px;padding:clamp(22px,4vw,44px);background:var(--lab-panel);color:#eef5f4;min-width:0}
.evolution-site main .evo-lab,.evolution-site main .evo-route,.evolution-site main .evo-news-card,.evolution-site main .evo-compare{background:var(--lab-panel)}
.evo-lab h2,.evo-route h2,.evo-news-card h2,.evo-compare h2{color:#fff!important;font-size:clamp(25px,3vw,36px);margin-bottom:17px}.evolution-site .evo-lab p,.evolution-site .evo-route p,.evolution-site .evo-news-card p,.evolution-site .evo-compare p{color:#c9d7d7}
.evo-lab-kicker{color:var(--lab-accent)!important;font:bold 11px/1.4 Arial,sans-serif;letter-spacing:2px;margin:0 0 14px}
.evo-lab details{border-top:1px solid var(--lab-line);padding:0;margin:0}.evo-lab summary{padding:20px 28px 20px 0;color:#fff;font-weight:700;font-size:18px;list-style-position:inside}.evo-lab details[open] summary{color:var(--lab-accent)}
.evo-lab-form{padding:0 0 25px}.evo-lab-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.evo-lab-fields label{display:flex;flex-direction:column;gap:8px;font-size:14px;line-height:1.5;color:#dce7e8;min-width:0}
.evolution-site .evo-lab input,.hub-page .evo-lab input{width:100%;min-height:49px;background:#0b181d;color:#fff;border:1px solid #6c8b8f;border-radius:8px;padding:10px 13px;font-size:18px;min-width:0;color-scheme:dark}
.evo-lab input[aria-invalid=true]{border-color:#ffad9d}.evo-lab-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:22px 0}.evo-lab-results>div{border-radius:12px;background:#0003;padding:18px;min-width:0}.evo-lab-results dt{font-size:12px;color:#c5d3d4;line-height:1.5}.evo-lab-results dd{margin:8px 0 0}.evo-lab output{font-size:clamp(23px,3vw,32px);font-weight:700;color:var(--lab-accent);overflow-wrap:anywhere}.evo-lab output.evo-negative{color:#ffb0a5}
.evo-lab [data-evo-error]{min-height:1.5em;color:#ffc6ba!important;font-size:13px}.evo-lab-form>p{font-size:13px;line-height:1.8;max-width:80ch}.evo-lab button,.evo-guide-map button{border:1px solid var(--lab-accent);border-radius:7px;background:transparent;color:var(--lab-accent);padding:11px 16px;min-height:44px;font:600 13px/1.4 Arial,sans-serif}
.evo-guide-map{background:#151b1d;display:grid;grid-template-columns:230px minmax(0,1fr);gap:30px}.evo-guide-map h2{font-size:20px!important;color:#edf6f5!important}.evo-guide-map label{display:block;font-size:12px;margin-bottom:7px}.evo-guide-map input{width:100%;min-height:44px;padding:10px;background:#0c1517!important;border:1px solid #547074;color:#fff!important;border-radius:6px}.evo-guide-map nav{display:flex;flex-wrap:wrap;gap:8px;align-content:start}.evo-guide-map nav a{padding:9px 12px;border:1px solid #ffffff26;border-radius:6px;font-size:12px;line-height:1.5;color:#d9e5e5}.evo-guide-map button{margin-top:16px;width:100%}
.evo-checks{display:grid;gap:10px}.evo-checks label{display:flex;gap:12px;align-items:start;padding:14px;background:#0002;border-radius:8px;font-size:14px;line-height:1.6}.evo-checks input{flex:0 0 20px;width:20px;height:20px;accent-color:var(--lab-accent);margin-top:2px}.evo-checks output{font-size:14px;margin-top:10px;color:var(--lab-accent)}
.evo-news-card{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:30px;align-items:center}.evo-news-card figure{margin:0;min-width:0}.evo-news-card img{display:block;width:100%;height:auto;border-radius:12px;border:1px solid #ffffff30}.evo-news-card figcaption{font-size:11px;line-height:1.6;color:#b3c6c9;margin-top:9px}.evo-news-card a{color:var(--lab-accent);text-decoration:underline;text-underline-offset:4px}.evo-news-card p{font-size:14px}
.evo-compare-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:25px 0}.evo-compare-options label{padding:15px;border:1px solid var(--lab-line);border-radius:10px;display:flex;gap:10px;align-items:center;font-size:13px;cursor:pointer}.evo-compare-options label:has(:checked){background:#ffffff12;border-color:var(--lab-accent)}.evo-compare-options input{width:19px;height:19px;accent-color:var(--lab-accent)}.evo-comparison-scroll{overflow:auto}.evo-compare table{width:100%;min-width:550px;border-collapse:collapse}.evo-compare th,.evo-compare td{padding:15px;text-align:left;vertical-align:top;font-size:13px;border-bottom:1px solid var(--lab-line)}.evo-compare a{text-decoration:underline}.evo-compare-status{min-height:1.5em;color:#ffcfaa!important}
.evolution-site .article-contents{border-radius:12px}.evolution-site .faq-section details{border-radius:10px;padding:15px 20px;margin-bottom:10px;border:1px solid var(--lab-line);background:#151b1d}.evolution-site .faq-section details[open]{border-color:var(--lab-accent)}
@media(max-width:760px){.evo-lab,.evo-route,.evo-news-card,.evo-guide-map,.evo-compare{width:calc(100% - 32px);margin-block:26px;padding:22px 18px;border-radius:16px}.evo-guide-map,.evo-news-card{grid-template-columns:1fr;gap:22px}.evo-lab-fields{grid-template-columns:1fr}.evo-lab-results{gap:8px}.evo-lab-results>div{padding:13px}.evo-lab summary{font-size:16px}.evo-compare-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.evo-compare-options label{padding:12px 9px;font-size:12px}.evolution-site .page-hero{padding-block:30px}.evolution-site .page-hero .guide-art{transform:none;box-shadow:none}.evolution-site .reading.prose>p{font-size:16px;line-height:1.8}}
@media(prefers-reduced-motion:reduce){.evo-read-progress{transition:none}}
