@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Outfit:wght@400;500;600;700;800;900&display=swap');
:root{font-family:'DM Sans',Arial,sans-serif;color:#f4f1e5;background:#13211c;color-scheme:dark;--gold:#eac478;--line:#e7d5a62a}*{box-sizing:border-box}[hidden]{display:none!important}body{margin:0;background:radial-gradient(ellipse at 85% 20%,#344130,#13211c 70%)}button,input,select{font:inherit}button,a,input,select{touch-action:manipulation}button,a{ -webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{cursor:default;opacity:.5}a{color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #ffe1a2;outline-offset:4px}button{color:inherit}.site-nav{display:flex;align-items:center;gap:25px;padding:19px 4vw;border-bottom:1px solid var(--line);font-size:12px}.site-nav a{text-decoration:none}.brand{font:700 16px 'Outfit';letter-spacing:.1em;margin-right:auto}.brand span{display:block;font:600 8px 'DM Sans';letter-spacing:.29em;color:#c5ccba;margin-top:3px}.quiet,.secondary{border:1px solid #c2c9b754;background:#15251fc9;border-radius:8px;padding:11px 16px;font-weight:600}.quiet:hover,.secondary:hover{background:#34473a}.eyebrow{font-size:10px;font-weight:700;letter-spacing:.19em;color:var(--gold)}.welcome{max-width:1520px;margin:30px auto 0;display:grid;grid-template-columns:1.15fr 1fr;padding:0 30px;gap:0}.hero{position:relative;isolation:isolate;overflow:hidden;border-radius:20px 0 0 20px;min-height:810px;background:url('assets/bobcat-division/woodland.png') 43% center/cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,#07181087,transparent 55%,#0a140ed6),linear-gradient(90deg,#0a180b6b,transparent);z-index:-1}.hero-copy{padding:42px 34px}.hero h1{font:900 clamp(58px,6.9vw,100px)/.94 'Outfit';letter-spacing:-.045em;margin:27px 0}.hero h1 span{display:block;font-size:clamp(18px,2.45vw,34px);letter-spacing:.02em;margin-top:8px;color:var(--gold)}.hero-line{font:500 37px/1.06 'Outfit';letter-spacing:-.03em}.hero-description{font-size:14px;line-height:1.8;color:#e0e5d6}.sprite{background-image:url('assets/bobcat-division/wildlife.png');background-size:400% 200%;background-repeat:no-repeat;filter:drop-shadow(0 7px 5px #07130973)}.hero-bobcat{position:absolute;width:92%;aspect-ratio:3/4;left:4%;bottom:-8%;background-position:0 0;pointer-events:none}.habitat{position:absolute;left:34px;bottom:26px;font-size:8px;letter-spacing:.14em;color:#d8dccc}.setup{background:#1a2b23;padding:35px;border:1px solid var(--line);border-radius:0 20px 20px 0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:10px}.section-heading>span{font-size:9px;color:#b1bead;white-space:nowrap}.setup h2{font:500 34px/1.1 'Outfit';letter-spacing:-.03em;margin:19px 0 12px}.intro{font-size:13px;line-height:1.75;color:#d0d6c9}.difficulty{border:0;padding:0;margin:26px 0 12px}.difficulty legend{font-weight:600;font-size:12px;margin-bottom:12px}.difficulty>div{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.difficulty button{text-align:left;background:#21332a;border:1px solid #8fa28a42;border-radius:10px;padding:14px 12px;transition:border-color .2s,background .2s}.difficulty button[aria-pressed=true]{border-color:var(--gold);background:#414633}.difficulty b{font-size:10px;color:var(--gold)}.difficulty strong{display:block;font:600 20px 'Outfit';margin:12px 0 4px}.difficulty small{display:block;font-size:10px;color:#c1cbba;line-height:1.4}.level-note{font-size:12px;color:#d7cfb7;line-height:1.6;min-height:38px}.setup-options{display:grid;grid-template-columns:1fr 1fr;gap:18px;align-items:center;margin:20px 0}.setup-options label{font-size:11px;font-weight:600}select{display:block;width:100%;margin-top:8px;padding:12px;background:#101e17;border:1px solid #a1b49864;border-radius:7px;color:#f5f0df}.check-label{display:flex;gap:8px}.check-label small{display:block;font-weight:400;font-size:10px;color:#b8c4b2;margin-top:7px}input[type=checkbox]{accent-color:var(--gold);width:17px;height:17px;flex-shrink:0}.assist-option{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:12px;margin:18px 0 22px}.assist-option span{display:block;flex-basis:100%;font-size:10px;color:#b9c4b1;padding-left:28px}.primary{background:linear-gradient(115deg,#f0d397,#d7ac58);color:#20271a;border:1px solid #f0d99e;border-radius:8px;font-weight:800;padding:16px 20px;box-shadow:0 5px 20px #0003;display:flex;align-items:center;justify-content:space-between;gap:15px}.primary:hover{background:#f4dda9}.setup>.primary,.setup>.secondary{width:100%;margin-top:10px}.fine,.save-note{font-size:10px;color:#aebda7;line-height:1.7}.save-note{border-top:1px solid var(--line);padding-top:12px}.how{font-size:12px;color:#ccd4c4;border-top:1px solid var(--line);margin-top:18px;padding:15px 0 2px}.how summary{cursor:pointer;font-weight:700}.how li{padding:5px 0;line-height:1.6}.how p{line-height:1.6}.game{max-width:1360px;margin:auto;padding:18px 25px 0}.game-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;gap:15px}.game-top .eyebrow{margin:0 0 7px}.game-top>div>span{font-size:11px;color:#c4cbb9}.stats{display:flex;align-items:center;gap:27px}.stats>span{display:flex;flex-direction:column;gap:4px}.stats small{font-size:8px;letter-spacing:.17em;color:#b7c0ac}.stats b{font:600 21px 'Outfit';font-variant-numeric:tabular-nums}.scene{height:clamp(390px,57vh,640px);position:relative;overflow:hidden;border-radius:15px;border:1px solid #c2bb854f;background:url('assets/bobcat-division/woodland.png') center 67%/cover;isolation:isolate}.scene-vignette{position:absolute;inset:0;background:linear-gradient(180deg,#0b1b14a3,transparent 40%,#17241233);pointer-events:none}.question-card{position:absolute;z-index:10;top:20px;left:24px;padding:14px 22px;background:#10251cf2;border:1px solid #c5ad7170;border-radius:10px;box-shadow:0 7px 25px #0003}.question-card>span{font-size:8px;letter-spacing:.16em;color:#ded0a2}.question-card h2{font:600 clamp(32px,3.6vw,48px)/1 'Outfit';letter-spacing:-.02em;margin:9px 0;white-space:nowrap}.question-card p{font-size:11px;color:#d1d4c0;margin:0}.field-mark{position:absolute;right:22px;top:27px;text-align:right;font-size:10px;font-weight:700;letter-spacing:.15em;color:#f5e6b9}.field-mark span{font-size:7px;font-weight:400;letter-spacing:.1em}.trail-guide{position:absolute;top:var(--y);left:0;width:100%;border-bottom:1px dashed #eddd9e3d;pointer-events:none}.trail-guide span{position:absolute;left:10px;top:-18px;color:#e3d8b19c;font-size:9px}.strike-zone{position:absolute;top:38%;height:57%;border:1px solid #f3d89f8a;border-radius:50% / 8%;background:linear-gradient(90deg,#f3d59406,#f3d59433,#f3d59406);box-shadow:0 0 25px #f3d59413;pointer-events:none}.strike-zone>span{position:absolute;top:-22px;left:50%;transform:translateX(-50%);font-size:8px;letter-spacing:.12em;white-space:nowrap;color:#fff1c5;background:#14281ebf;border-radius:10px;padding:4px 7px}.mouse{position:absolute;width:70px;height:94px;left:0;top:0;will-change:transform;pointer-events:none}.mouse .sprite{position:absolute;inset:0;background-position:0 100%;transform:scaleX(-1);filter:drop-shadow(1px 3px 2px #0007)}.mouse-label{position:absolute;left:50%;bottom:68%;transform:translateX(-50%);background:#10251ff2;border:1px solid #bcc6a386;border-radius:7px;padding:5px 12px;font:600 23px 'Outfit';box-shadow:0 3px 8px #0004;min-width:48px;text-align:center}.mouse.selected .mouse-label{color:#ffdb91;border-color:#ffdc9c;box-shadow:0 0 0 2px #dbb76840}.mouse.in-range .mouse-label{background:#efcf86;color:#172618}.bobcat{position:absolute;width:clamp(185px,25vw,310px);aspect-ratio:3/4;top:0;left:0;pointer-events:none;will-change:transform;transform-origin:50% 83%}.landing{position:absolute;width:100px;height:35px;border-radius:50%;border:2px solid #eed196;opacity:0;pointer-events:none}.landing.burst{animation:dust .55s ease-out}.scene-feedback{position:absolute;top:24px;left:50%;transform:translateX(-50%);font-weight:700;font-size:15px;pointer-events:none;color:#ffe1a2;z-index:12}.scene-feedback:empty{display:none}.controls{display:grid;grid-template-columns:1fr minmax(210px,.42fr);gap:25px;align-items:end;padding:15px 0 10px}.trail-control>p{font-size:9px;letter-spacing:.14em;color:#d7d6bd;margin:0 0 9px}.trail-control>p>span{float:right;color:#a9b9a2;letter-spacing:0;font-size:9px}#trailButtons{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}#trailButtons button{border:1px solid #a2b49066;border-radius:8px;background:#263b2d;display:flex;align-items:center;justify-content:space-between;padding:12px 16px;min-height:57px}#trailButtons button[aria-pressed=true]{border-color:var(--gold);background:#424a32;box-shadow:inset 0 0 0 1px #e5c782}#trailButtons small{font-size:10px;color:#ccd1b9}#trailButtons strong{font:600 24px 'Outfit'}.strike-control{display:flex;flex-direction:column;gap:8px}.strike-control>span{font-size:11px;color:#d5d2bd;text-align:center}.strike-control>.primary{width:100%;min-height:57px;justify-content:center}.strike-control.ready>.primary{background:#ffe1a0;box-shadow:0 0 0 3px #dfbf6755,0 0 25px #e1c26032}kbd{font:600 9px 'DM Sans';border:1px solid #39451b60;border-radius:4px;padding:4px 6px}.game-bottom{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:46px}.game-bottom p{font-size:12px;color:#d8dfca;line-height:1.5;margin:6px 0}.text-button{border:0;background:none;text-decoration:underline;text-underline-offset:4px;color:var(--gold);font-size:12px;padding:10px 4px;cursor:pointer}.game-bottom .text-button{white-space:nowrap}.lesson{position:absolute;inset:6% 15%;z-index:30;overflow:auto;background:#132b20f7;border:1px solid #e4c47d;border-radius:14px;padding:25px;box-shadow:0 15px 70px #000a;backdrop-filter:blur(12px)}.lesson h3{font:600 25px 'Outfit';margin:13px 0}.lesson>p{font-size:13px;line-height:1.6}.group-model{display:flex;flex-wrap:wrap;gap:6px;margin:18px 0}.group-model span{padding:8px 10px;border:1px solid #c9c49765;border-radius:5px;font-size:12px;color:#f4dfaa}.lesson form label{display:block;font-size:13px;margin:15px 0 9px}.lesson form>div{display:flex;gap:10px}.lesson input{min-width:0;width:95px;background:#eef0df;color:#182619;border:2px solid var(--gold);border-radius:6px;padding:10px;font-size:22px}.lesson .primary{font-size:12px}.results{max-width:1000px;margin:25px auto;background:linear-gradient(90deg,#0e201ac9,#0e201aed),url('assets/bobcat-division/woodland.png') center/cover;border:1px solid var(--line);border-radius:20px;padding:45px}.results-panel{max-width:640px;margin:auto;text-align:center}.badge{font-size:52px;color:var(--gold);margin:25px}.results h1{font:600 45px 'Outfit';letter-spacing:-.04em}.results p{color:#c7d3c2;line-height:1.65;font-size:13px}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:25px 0;background:#0c1c1780;border:1px solid var(--line);border-radius:12px;padding:23px 10px}.result-stats strong{display:block;font:600 34px 'Outfit';color:var(--gold)}.result-stats span{font-size:10px;color:#c6d2bc}.results .primary,.results .secondary{width:100%;margin-top:12px;justify-content:center}.results .text-button{display:inline-block;margin:10px}#review{text-align:left}#review details{border:1px solid var(--line);border-radius:8px;margin-bottom:8px;padding:12px;font-size:12px}#review summary{cursor:pointer}footer{display:flex;justify-content:space-between;gap:15px;padding:28px 4vw;color:#b4c0aa;font-size:9px;letter-spacing:.08em}footer a{letter-spacing:0}dialog{max-width:420px;width:90%;border:1px solid #d9b972;border-radius:16px;background:#183022;padding:30px;color:#f5efdc;box-shadow:0 15px 70px #0008}dialog::backdrop{background:#03130ccc;backdrop-filter:blur(5px)}dialog h2{font:600 30px 'Outfit'}dialog p{line-height:1.6;font-size:13px}dialog button{width:100%;margin-top:12px}.scene.captured{box-shadow:inset 0 0 45px #e2c17d45}.scene.captured .mouse.selected{opacity:0}@keyframes dust{0%{opacity:.9;transform:scale(.4)}100%{opacity:0;transform:scale(1.7)}}
.stats b{white-space:nowrap}.mouse{height:76px}.mouse .sprite{background-size:400% 245%}.bobcat,.hero-bobcat{background-image:url('assets/bobcat-division/bobcat.png');background-size:200% 200%;aspect-ratio:3/2}.hero-bobcat{bottom:3%;width:110%;left:-3%}
@media(min-width:1500px){.hero-bobcat{bottom:3%}}
@media(max-width:960px){.welcome{grid-template-columns:1fr;max-width:750px;padding:0 20px}.hero{min-height:520px;border-radius:20px 20px 0 0;background-position:center 60%}.hero-copy{padding:30px}.hero h1{font-size:75px}.hero h1 span{font-size:26px}.hero-line{font-size:30px}.hero-bobcat{width:65%;left:36%;bottom:-26%;}.hero-description{max-width:40%}.setup{border-radius:0 0 20px 20px}.hero .habitat{left:30px}.game{padding:15px}.scene{height:53vh;min-height:370px}.question-card{top:15px;left:15px;padding:12px 15px}.controls{gap:15px;grid-template-columns:1fr 200px}.scene-feedback{top:140px}.lesson{inset:5% 8%}}
@media(max-width:600px){.site-nav{padding:14px 16px;gap:14px;font-size:10px}.brand{font-size:12px}.brand span{font-size:6px}.quiet{font-size:11px;padding:10px}.welcome{margin-top:15px;padding:0 12px}.hero{min-height:450px}.hero-copy{padding:26px 22px}.hero h1{font-size:66px}.hero h1 span{font-size:23px}.hero-line{font-size:29px}.hero-description{font-size:12px;max-width:53%}.hero-bobcat{width:78%;left:28%;bottom:-20%}.habitat{font-size:6px}.setup{padding:24px 20px}.setup h2{font-size:30px}.eyebrow{font-size:8px}.setup-options{gap:12px}.difficulty button{padding:13px 9px}.difficulty strong{font-size:18px}.difficulty small{font-size:9px}.game{padding:12px 10px 0}.game-top{gap:8px}.game-top .eyebrow{font-size:7px;letter-spacing:.09em}.game-top>div>span{font-size:9px}.stats{gap:12px}.stats b{font-size:17px}.stats .quiet{max-width:68px;font-size:10px;padding:8px}.scene{height:53vh;min-height:360px;max-height:510px;background-position:52% center}.question-card{top:12px;left:12px;padding:12px}.question-card h2{font-size:34px}.question-card p{font-size:9px}.question-card>span{font-size:7px}.field-mark{right:12px;top:18px;font-size:7px}.field-mark span{display:none}.bobcat{width:168px}.mouse{width:58px;height:78px}.mouse-label{font-size:21px;padding:4px 9px;min-width:39px}.strike-zone>span{font-size:6px;padding:4px}.controls{grid-template-columns:1fr;gap:12px;padding:12px 0 5px}.strike-control{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:10px}.strike-control>.primary{min-height:50px;padding:11px 17px}.strike-control>span{font-size:10px;line-height:1.4}.trail-control>p{font-size:8px}#trailButtons button{padding:9px 12px;min-height:49px}#trailButtons strong{font-size:23px}#trailButtons small{font-size:8px}.game-bottom p{font-size:10px}.game-bottom .text-button{font-size:10px}.scene-feedback{top:137px;font-size:12px;width:90%;text-align:center}.lesson{inset:9px;padding:17px}.lesson h3{font-size:21px}.lesson>p{font-size:12px}.group-model{margin:12px 0}.group-model span{padding:6px;font-size:10px}.lesson input{width:70px}.lesson .primary{padding:12px}.results{margin:15px 10px;padding:28px 17px}.results h1{font-size:35px}.result-stats strong{font-size:29px}.result-stats span{font-size:9px}footer{font-size:7px;line-height:1.6;flex-wrap:wrap;padding:23px 16px}kbd{display:none}}
@media(max-width:960px){.hero-bobcat{width:77%;left:27%;bottom:0}}
@media(max-width:600px){.hero-bobcat{width:96%;left:14%;bottom:2%}.mouse{height:63px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* Playable hunting polish: focus is a separate reflex aid, never a math score. */
.hunt-controls{padding:13px 17px;border:1px solid #d4c5916b;border-radius:14px;background:linear-gradient(120deg,#243c28,#122a21)}.hunt-instruction{font-size:14px;line-height:1.5;color:#fff0c2;margin:0 0 9px;padding-left:12px;border-left:3px solid #e8cb83}.hunt-controls .controls{padding:0;gap:18px}.hunt-controls .focus-controls{padding:5px 0;margin-top:8px;border-top:1px solid #c9c39733}.hunt-controls .game-bottom p{font-size:13px;line-height:1.5}.hunt-controls .strike-control .primary{font-size:16px}.hunt-controls .focus-controls p{font-size:11px}.hunt-controls .focus-controls button{font-size:12px;min-width:145px}
@media(min-width:900px) and (min-height:650px){body.is-playing .game{grid-template-rows:auto minmax(310px,1fr) auto}.hunt-controls{padding:10px 15px}.hunt-controls .focus-controls p{font-size:11px}.hunt-controls .game-bottom p{font-size:12px}}
@media(max-width:600px){.hunt-controls{padding:12px}.hunt-instruction{font-size:13px}.hunt-controls .controls{gap:10px}.hunt-controls .focus-controls p{font-size:11px}.hunt-controls .strike-control .primary{font-size:13px;padding:10px}.hunt-controls .game-bottom p{font-size:12px}.hunt-controls .focus-controls{flex-wrap:wrap;gap:5px}}
.pounce-reticle{position:absolute;transform:translate(-50%,-70%);width:110px;height:55px;border:2px dashed #f8da9980;border-radius:50%;background:#d4b3670d;pointer-events:none;z-index:8;transition:background .2s,box-shadow .2s}.pounce-reticle.locked{border:2px solid #ffe4a1;background:#e3c57c26;box-shadow:0 0 18px #eaca7760,inset 0 0 15px #eac47833}.captured .pounce-reticle{opacity:0}@media(max-width:600px){.pounce-reticle{width:69px;height:43px}}
@media(min-width:900px) and (min-height:650px){.is-playing .site-nav{height:52px;padding:10px 24px}.is-playing footer{display:none}.is-playing .game{display:grid;grid-template-rows:auto minmax(310px,1fr) auto auto auto;gap:7px;height:calc(100dvh - 52px);padding:10px 24px;max-width:1450px}.is-playing .game-top{margin:0;min-height:40px}.is-playing .scene{height:100%;min-height:0;max-height:none}.is-playing .controls{padding:4px 0;gap:16px}.is-playing .trail-control>p{margin:4px 0 7px}.is-playing .game-bottom{min-height:30px}.is-playing .game-bottom p{font-size:11px}.is-playing .focus-controls{padding:5px 0}.is-playing .focus-controls p{font-size:10px;margin:5px 0}.is-playing .question-card{padding:12px 16px}.is-playing .question-card h2{font-size:37px}.is-playing .bobcat{width:220px}}
.focus-controls{display:flex;align-items:center;gap:18px;padding:12px 0;border-top:1px solid var(--line)}.focus-controls>p{font-size:11px;line-height:1.5;color:#c6d0bd;max-width:600px}.focus-controls button{min-width:180px;position:relative;padding-bottom:17px}.focus-meter{position:absolute;bottom:7px;left:14px;right:14px;height:3px;background:#ffffff20;border-radius:4px;overflow:hidden}.focus-meter i{display:block;height:100%;background:#ead58c}.focus-controls [aria-pressed=true]{border-color:#f8db97;background:#526047}.scene.focused{box-shadow:inset 0 0 0 3px #eacf8d,inset 0 0 110px #071913b0}.focused .mouse.selected{filter:drop-shadow(0 0 8px #f9dc85)}.caught-mouse{opacity:0;transition:opacity .25s}.hunt-trail{position:absolute;right:24px;top:80px;display:flex;gap:6px;z-index:3}.hunt-trail i{width:8px;height:8px;border:1px solid #eac47890;border-radius:50%}.hunt-trail .done{background:#eac478}.hunt-trail .current{outline:2px solid #fff0c5;outline-offset:2px}.forest-motes{position:absolute;inset:0;pointer-events:none;overflow:hidden}.forest-motes i{position:absolute;left:70%;top:15%;width:3px;height:3px;background:#ffe8a6;border-radius:50%;opacity:.6;animation:forest-drift 13s linear infinite}.forest-motes i:nth-child(2){left:36%;top:42%;animation-delay:-3s}.forest-motes i:nth-child(3){left:55%;top:65%;animation-delay:-6s}.forest-motes i:nth-child(4){left:92%;top:36%;animation-delay:-9s}.forest-motes i:nth-child(5){left:22%;top:12%;animation-delay:-11s}@keyframes forest-drift{to{transform:translate(-100px,100px);opacity:0}}@media(max-width:600px){.focus-controls{gap:10px}.focus-controls button{min-width:125px;font-size:11px}.focus-controls p{font-size:9px}.hunt-trail{right:14px;top:125px;gap:4px}.hunt-trail i{width:6px;height:6px}}
@media(max-width:600px){body.is-playing footer{display:none}body.is-playing .site-nav{height:55px;padding:8px 12px}body.is-playing .game{padding-top:8px}body.is-playing .scene{height:clamp(260px,39dvh,330px);min-height:260px}body.is-playing .hunt-controls .focus-controls>p{display:none}body.is-playing .hunt-controls .focus-controls{padding:5px 0;flex-wrap:nowrap}body.is-playing .hunt-controls .game-bottom{gap:10px}body.is-playing .hunt-controls .focus-controls button{min-height:40px}}
