:root{color-scheme:light;--ink:#294c49;--muted:#6c7f79;--paper:#fffdf6;--cream:#f5edcf;--line:#ddd2b5;--green:#519f77;--green-dark:#31755b;--yellow:#efba4b;--coral:#ea7165;--navy:#354f5a;--purple:#7f70b3;--shadow:0 14px 34px rgba(70,75,49,.13),0 3px 0 rgba(173,153,105,.2)}
*{box-sizing:border-box}html{min-width:320px;background:#f7f1df}body{min-width:320px;margin:0;overflow-x:hidden;color:var(--ink);background:radial-gradient(circle at 13% 7%,rgba(255,255,255,.78),transparent 27%),radial-gradient(circle at 91% 24%,rgba(237,187,83,.18),transparent 25%),#f7f1df;font-family:"Trebuchet MS","Arial Rounded MT Bold",Arial,sans-serif}body::before{position:fixed;inset:0;z-index:-1;opacity:.38;background-image:radial-gradient(circle,#decf9f 1.2px,transparent 1.6px);background-size:23px 23px;content:""}button{font:inherit}button:focus-visible{outline:4px solid rgba(91,159,191,.38);outline-offset:3px}img{display:block;max-width:100%}h1,h2,h3,p{margin-top:0}.app{width:min(1120px,calc(100% - 32px));min-height:100vh;margin:0 auto;padding:22px 0 48px}.paper-card{background:var(--paper);border:2px solid var(--line);box-shadow:var(--shadow)}
.topbar{display:flex;min-height:66px;padding:8px 11px;align-items:center;justify-content:space-between;border-radius:24px}.brand,.notebook-button{display:flex;min-height:48px;padding:5px 9px;align-items:center;gap:9px;color:var(--ink);background:transparent;border:0;border-radius:15px;cursor:pointer;text-align:left}.brand>span,.notebook-button>span{display:grid;flex:0 0 39px;height:39px;place-items:center;color:#765818;background:#fae6a9;border-radius:12px;font-size:18px}.brand strong,.brand small,.notebook-button strong,.notebook-button small{display:block}.brand strong{font-size:18px}.brand small{margin-left:3px;color:var(--muted);font-size:12px}.notebook-button>span{color:#fff;background:var(--navy)}.notebook-button strong{font-size:13px}.notebook-button small{color:var(--muted);font-size:11px}
.hero{display:grid;min-height:474px;margin-top:24px;grid-template-columns:minmax(0,1fr) 500px;overflow:hidden;border-radius:42px}.hero-copy{z-index:2;padding:57px 35px 44px 56px}.eyebrow,.card-kicker{display:block;margin-bottom:10px;color:#976d29;font-family:Georgia,serif;font-size:11px;font-weight:700;letter-spacing:.16em}.hero h1{margin-bottom:19px;font-size:clamp(48px,6vw,70px);line-height:.94;letter-spacing:-.055em}.hero-copy>p{max-width:475px;margin-bottom:26px;color:var(--muted);font-size:19px;line-height:1.5}.hero-actions{display:flex;flex-wrap:wrap;gap:10px}.button{min-height:48px;padding:12px 20px;border:2px solid transparent;border-radius:15px;cursor:pointer;font-weight:900;transition:transform .15s ease,box-shadow .15s ease}.button:hover{transform:translateY(-2px)}.button:active{transform:translateY(2px)}.button-primary{color:#fff;background:linear-gradient(#5baa83,#41946d);box-shadow:0 6px 0 #2f7a5c}.button-soft{color:#72551c;background:#f8e5aa;border-color:#e8ca72}.button-outline{color:var(--ink);background:#fffdf7;border-color:var(--line)}
.hero-board{position:relative;min-height:474px;overflow:hidden;background:linear-gradient(145deg,#d9ebe4,#f7e7bb)}.hero-board::before{position:absolute;inset:21px;background:radial-gradient(circle,#7da295 1.5px,transparent 2px) 0 0/24px 24px;border:3px solid rgba(255,255,255,.7);border-radius:28px;content:""}.board-title{position:absolute;z-index:4;top:27px;left:50%;padding:7px 12px;color:#fff;background:var(--navy);border-radius:8px;font-size:10px;font-weight:900;letter-spacing:.12em;transform:translateX(-50%) rotate(-2deg)}.hero-photo{position:absolute;z-index:2;display:grid;width:155px;height:177px;padding:12px 11px 27px;place-items:center;background:#fffdf7;border:2px solid #dacdab;box-shadow:0 11px 20px rgba(50,67,54,.18)}.hero-photo::after{position:absolute;top:7px;left:50%;width:40px;height:13px;background:rgba(242,213,134,.78);box-shadow:0 1px 2px rgba(90,68,30,.18);content:"";transform:translateX(-50%)}.hero-photo img{width:100%;height:100%;object-fit:contain}.card-one{top:70px;left:49px;transform:rotate(-7deg)}.card-two{top:61px;right:50px;transform:rotate(6deg)}.card-three{bottom:42px;left:76px;transform:rotate(5deg)}.card-four{right:65px;bottom:41px;border-color:#ea8b7f;transform:rotate(-6deg)}.odd-mark{position:absolute;z-index:5;right:26px;bottom:25px;display:grid;width:66px;height:66px;place-items:center;color:#fff;background:var(--coral);border:5px solid #fff1eb;border-radius:50%;box-shadow:0 8px 16px rgba(112,55,48,.25);font-family:Georgia,serif;font-size:38px;font-weight:900;transform:rotate(8deg)}
.section-block{margin-top:48px}.section-heading{display:flex;margin:0 8px 18px;align-items:end;justify-content:space-between;gap:20px}.section-heading .eyebrow{margin-bottom:5px}.section-heading h2,.notebook-callout h2{margin-bottom:0;font-size:31px;letter-spacing:-.03em}.section-heading>p{max-width:420px;margin-bottom:3px;color:var(--muted);font-size:14px;text-align:right}.steps-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.step-card{position:relative;min-height:218px;padding:25px;overflow:hidden;border-radius:29px}.step-number{position:absolute;top:18px;right:18px;display:grid;width:34px;height:34px;place-items:center;color:#73571e;background:#fae7af;border-radius:50%;font-size:13px;font-weight:900}.step-symbol{display:grid;width:64px;height:64px;margin-bottom:17px;place-items:center;color:#fff;background:var(--navy);border-radius:20px;box-shadow:0 7px 0 #d6c79f;font-family:Georgia,serif;font-size:30px;transform:rotate(-4deg)}.step-card:nth-child(2) .step-symbol{background:var(--coral);transform:rotate(4deg)}.step-card:nth-child(3) .step-symbol{color:#6a4f19;background:var(--yellow)}.step-card h3{margin-bottom:8px;font-size:20px}.step-card p{margin-bottom:0;color:var(--muted);line-height:1.45}
.level-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.level-card{overflow:hidden;border-radius:31px}.level-preview{position:relative;height:205px;overflow:hidden;background:linear-gradient(145deg,color-mix(in srgb,var(--level) 18%,#fff),#f6ecd1);border-bottom:2px solid var(--line)}.mini-photo{position:absolute;display:grid;width:93px;height:111px;padding:7px 6px 18px;place-items:center;background:#fffdf7;border:2px solid #e0d5b8;box-shadow:0 7px 13px rgba(55,68,48,.14);transform:translate(calc(var(--i)*76px + 20px),calc((var(--i)%2)*55px + 20px)) rotate(calc((var(--i) - 1.5)*4deg))}.mini-photo img{width:100%;height:100%;object-fit:contain}.preview-mark{position:absolute;z-index:4;right:12px;bottom:12px;display:grid;width:50px;height:50px;place-items:center;color:#fff;background:var(--level);border:4px solid #fff;border-radius:50%;font-family:Georgia,serif;font-size:27px;font-weight:900}.level-copy{padding:23px}.level-label,.level-meta{display:flex;align-items:center;justify-content:space-between;gap:10px}.level-label{margin-bottom:13px;color:var(--level);font-size:10px;font-weight:900;letter-spacing:.1em}.level-label b{padding:5px 7px;color:#fff;background:var(--level);border-radius:7px;letter-spacing:0}.level-copy h3{margin-bottom:8px;font-size:25px}.level-copy>p{min-height:43px;margin-bottom:15px;color:var(--muted);font-size:14px;line-height:1.45}.level-meta{margin-bottom:17px;color:var(--muted);font-size:12px}.mini-stars span{color:#d8d2bf}.mini-stars .filled{color:#e7aa24}.level-copy .button{width:100%}
.notebook-callout{display:grid;margin-top:48px;padding:30px 34px;grid-template-columns:240px 1fr auto;align-items:center;gap:30px;border-radius:35px}.notebook-preview{position:relative;min-height:155px;padding:18px 16px 13px;background:#f7f0db;border:2px solid #d9caa4;border-radius:17px;box-shadow:5px 6px 0 #e3d3ac;transform:rotate(-2deg)}.notebook-preview>span{font-size:9px;font-weight:900;letter-spacing:.1em}.notebook-preview>div{display:flex;height:85px;align-items:center;justify-content:center}.notebook-preview img{width:68px;height:68px;object-fit:contain}.notebook-preview img.sample-odd{padding:3px;border:3px solid var(--coral);border-radius:50%}.notebook-preview b{display:block;font-size:12px;text-align:center}.notebook-callout p{margin:7px 0 0;color:var(--muted);line-height:1.45}.parent-note{display:flex;margin-top:24px;padding:20px 24px;align-items:center;gap:15px;color:var(--muted);background:#f3ecd4;border:2px dashed #d7c69c;border-radius:22px}.parent-note>span{display:grid;flex:0 0 37px;height:37px;place-items:center;color:#fff;background:var(--green);border-radius:50%;font-family:Georgia,serif;font-weight:900}.parent-note p{margin:0;line-height:1.45}
.game-shell{margin-top:24px;padding:24px;border-radius:38px}.game-top{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:15px;text-align:center}.game-top>div span,.game-top>div strong{display:block}.game-top>div span{color:var(--muted);font-size:11px}.game-top>div strong{margin-top:3px}.back-button,.hint-button{min-height:46px;padding:9px 14px;color:var(--ink);background:#fffdf7;border:2px solid var(--line);border-radius:14px;cursor:pointer;font-weight:900}.back-button{justify-self:start}.hint-button{justify-self:end;color:#765719;background:#fae8b2;border-color:#e6c875}.hint-button span{display:inline-grid;width:25px;height:25px;margin-right:5px;place-items:center;color:#fff;background:#dda93a;border-radius:9px}.hint-button:disabled{opacity:.55;cursor:default}.progress-track{height:9px;margin:17px 2px 21px;overflow:hidden;background:#e8e1cf;border-radius:10px}.progress-track span{display:block;height:100%;background:linear-gradient(90deg,var(--level),#72bd8c);border-radius:inherit;transition:width .3s ease}.question-card{position:relative;max-width:900px;margin:0 auto 19px;padding:25px 34px 22px;text-align:center;background:#f7f0dc;border:2px solid #d9caa4;border-radius:24px;box-shadow:0 8px 17px rgba(62,73,49,.08)}.question-pin{position:absolute;top:-9px;left:50%;width:18px;height:18px;background:var(--coral);border:4px solid #ffd8ce;border-radius:50%;box-shadow:0 3px 6px rgba(94,53,46,.2);transform:translateX(-50%)}.question-card .card-kicker{margin-bottom:7px}.question-card h1{max-width:770px;margin:0 auto 8px;font-size:clamp(27px,4vw,40px);line-height:1.15;letter-spacing:-.03em}.question-card p{margin:0;color:var(--muted)}
.animal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.animal-option{position:relative;min-width:0;min-height:322px;padding:14px 12px 17px;color:var(--ink);background:#fbf8ed;border:3px solid #dfd5bb;border-radius:24px;cursor:pointer;box-shadow:0 9px 18px rgba(66,76,52,.08);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.animal-option:hover:not(:disabled){border-color:#9db99d;box-shadow:0 13px 22px rgba(61,78,52,.14);transform:translateY(-4px)}.animal-option:disabled{cursor:default}.photo-tape{position:absolute;z-index:3;top:4px;left:50%;width:50px;height:14px;background:rgba(242,214,139,.8);box-shadow:0 1px 2px rgba(90,68,30,.16);transform:translateX(-50%) rotate(-2deg)}.animal-image{display:grid;height:248px;place-items:center;background:linear-gradient(145deg,#f2eddd,#e6eee0);border-radius:17px}.animal-image img{width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 8px 6px rgba(58,69,48,.14))}.animal-option strong{display:block;margin-top:12px;font-size:16px;line-height:1.2}.answer-mark{position:absolute;z-index:4;top:11px;right:11px;display:none;width:39px;height:39px;place-items:center;color:#fff;border:3px solid #fff;border-radius:50%;font-size:22px;font-weight:900}.animal-option.is-wrong{border-color:#e17d74;background:#fff0ea}.animal-option.is-wrong .answer-mark{display:grid;background:var(--coral)}.animal-option.is-group{border-color:#8fbea0;background:#eef6eb;opacity:.86}.animal-option.is-group .answer-mark{display:grid;background:#86b696}.animal-option.is-odd{border-color:var(--coral);background:#fff1eb;box-shadow:0 0 0 5px rgba(233,113,101,.16)}.animal-option.is-odd .answer-mark{display:grid;background:var(--coral)}
.feedback-slot{display:flex;min-height:111px;margin-top:17px;align-items:end}.feedback{display:flex;width:100%;min-height:92px;padding:14px 15px;align-items:center;gap:12px;background:#f6f1e5;border:2px solid #ddd4bd;border-radius:22px}.feedback>span{display:grid;flex:0 0 42px;height:42px;place-items:center;background:#e7e1d4;border-radius:13px;font-size:20px;font-weight:900}.feedback p{flex:1 1 auto;margin:0;font-size:14px;line-height:1.42}.feedback .button{flex:0 0 auto}.feedback-try{background:#fff0ea;border-color:#ecafa6}.feedback-try>span{color:#fff;background:var(--coral)}.feedback-hint{background:#fff5d5;border-color:#e4c779}.feedback-hint>span{color:#6f531a;background:var(--yellow)}.feedback-success{background:#e7f3e7;border-color:#97c6a6}.feedback-success>span{color:#fff;background:var(--green)}
.result-card{position:relative;max-width:920px;margin:44px auto 0;padding:48px 48px 44px;overflow:hidden;border-radius:42px;text-align:center}.result-card::before,.result-card::after{position:absolute;width:230px;height:230px;background:#e2efda;border-radius:50%;content:""}.result-card::before{top:-150px;left:-90px}.result-card::after{right:-105px;bottom:-150px;background:#f8e6b5}.result-card>*{position:relative;z-index:1}.result-badge{display:grid;width:62px;height:62px;margin:0 auto 16px;place-items:center;color:#fff;background:var(--coral);border:5px solid #ffe3dc;border-radius:20px;font-size:27px;transform:rotate(-5deg)}.result-card h1{margin-bottom:11px;font-size:clamp(39px,5vw,58px);letter-spacing:-.04em}.result-card>p{max-width:650px;margin:0 auto 13px;color:var(--muted);font-size:18px;line-height:1.48}.result-stars{margin-bottom:20px;font-size:43px;letter-spacing:7px}.result-stars span{color:#d8d2bf}.result-stars .filled{color:#eba927}.result-stats{display:grid;max-width:650px;margin:0 auto 24px;grid-template-columns:repeat(3,1fr);overflow:hidden;background:#f6f2e6;border:2px solid #ded6be;border-radius:22px}.result-stats span{padding:16px 11px}.result-stats span+span{border-left:2px solid #ded6be}.result-stats b,.result-stats small{display:block}.result-stats b{margin-bottom:2px;font-size:25px}.result-stats small{color:var(--muted);font-size:12px}.result-strip{display:flex;max-width:760px;margin:0 auto 28px;justify-content:center;flex-wrap:wrap}.result-strip span{display:grid;width:72px;height:72px;margin:0 -4px 5px;place-items:center;background:#fffdf7;border:3px solid #ef9b8f;border-radius:50%}.result-strip img{width:91%;height:91%;object-fit:contain}.result-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}
.notebook-shell{margin-top:24px;padding:32px;border-radius:38px}.notebook-heading{display:grid;margin-bottom:25px;grid-template-columns:1fr auto 1fr;align-items:center;text-align:center}.notebook-heading .back-button{grid-column:1;justify-self:start}.notebook-heading>div{grid-column:2}.notebook-heading .eyebrow{margin-bottom:5px}.notebook-heading h1{margin-bottom:5px;font-size:clamp(34px,4vw,48px)}.notebook-heading p{margin:0;color:var(--muted)}.rule-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.rule-card{position:relative;min-width:0;padding:18px;background:#f8f2df;border:2px solid #dacba4;border-radius:22px;box-shadow:0 8px 17px rgba(66,76,52,.08)}.rule-number{display:inline-block;margin-bottom:12px;padding:5px 7px;color:#fff;background:var(--navy);border-radius:7px;font-size:9px;font-weight:900;letter-spacing:.08em}.rule-animals{display:grid;height:105px;margin-bottom:14px;grid-template-columns:repeat(4,1fr);gap:5px}.rule-animals span{position:relative;display:grid;min-width:0;place-items:center;background:#edf2e5;border:2px solid #d9d3bb;border-radius:13px}.rule-animals span.is-odd{background:#fff0ea;border-color:var(--coral)}.rule-animals span.is-odd::after{position:absolute;right:3px;bottom:3px;display:grid;width:23px;height:23px;place-items:center;color:#fff;background:var(--coral);border-radius:50%;content:"✓";font-size:12px;font-weight:900}.rule-animals img{width:96%;height:96%;object-fit:contain}.rule-card h2{margin-bottom:7px;font-size:17px;line-height:1.28}.rule-card p{margin:0;color:var(--muted);font-size:13px;line-height:1.4}.rule-card.is-locked{display:grid;min-height:250px;place-items:center;align-content:center;text-align:center;border-style:dashed}.locked-rule{display:grid;width:63px;height:63px;margin-bottom:13px;place-items:center;color:#99958a;background:#fffdf5;border-radius:50%;font-family:Georgia,serif;font-size:31px;font-weight:900}.rule-card.is-locked h2{font-size:16px}.rule-card.is-locked p{max-width:240px}
@media(max-width:980px){.hero{grid-template-columns:minmax(0,1fr) 400px}.hero-copy{padding-left:40px}.hero-photo{width:128px;height:150px}.card-one{left:32px}.card-two{right:32px}.card-three{left:52px}.card-four{right:48px}.level-grid{grid-template-columns:1fr}.level-card{display:grid;grid-template-columns:40% 60%}.level-preview{height:100%;min-height:260px;border-right:2px solid var(--line);border-bottom:0}.level-copy>p{min-height:0}.animal-option{min-height:285px}.animal-image{height:210px}.notebook-callout{grid-template-columns:220px 1fr}.notebook-callout>.button{grid-column:2;justify-self:start}}
@media(max-width:760px){.app{width:min(100% - 20px,1120px);padding-top:10px}.topbar{min-height:60px}.brand small,.notebook-button strong{display:none}.hero{grid-template-columns:1fr;border-radius:34px}.hero-copy{padding:40px 28px 24px}.hero-board{min-height:390px}.section-heading{align-items:flex-start;flex-direction:column;gap:3px}.section-heading>p{text-align:left}.steps-grid{grid-template-columns:1fr}.step-card{min-height:0;padding-right:65px}.level-card{display:block}.level-preview{height:215px;min-height:0;border-right:0;border-bottom:2px solid var(--line)}.notebook-callout{grid-template-columns:1fr;padding:25px;text-align:center}.notebook-preview{width:240px;margin:0 auto}.notebook-callout>.button{grid-column:auto;justify-self:center}.game-top{grid-template-columns:1fr 1fr}.game-top>div{order:-1;grid-column:1/-1}.back-button,.hint-button{width:100%}.animal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.notebook-heading{display:block}.notebook-heading .back-button{display:block;margin-bottom:20px}.rule-grid{grid-template-columns:1fr}}
@media(max-width:520px){.brand strong{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:15px}.notebook-button{padding-inline:4px}.hero-copy{padding:33px 20px 20px}.hero-copy>p{font-size:17px}.hero-actions .button{width:100%}.hero-board{min-height:330px}.hero-photo{width:105px;height:124px;padding:8px 7px 19px}.card-one{top:54px;left:24px}.card-two{top:45px;right:25px}.card-three{bottom:37px;left:43px}.card-four{right:39px;bottom:31px}.odd-mark{right:12px;bottom:13px;width:55px;height:55px;font-size:31px}.section-block{margin-top:38px}.section-heading h2{font-size:27px}.notebook-callout{margin-top:38px}.game-shell{padding:13px;border-radius:28px}.question-card{padding:23px 15px 19px}.question-card h1{font-size:25px}.animal-grid{gap:8px}.animal-option{min-height:228px;padding:8px 6px 11px;border-width:2px;border-radius:18px}.animal-image{height:170px;border-radius:13px}.animal-option strong{margin-top:9px;font-size:13px}.answer-mark{top:8px;right:8px;width:32px;height:32px;border-width:2px;font-size:18px}.feedback{padding:11px;flex-wrap:wrap}.feedback>span{flex-basis:36px;height:36px}.feedback .button{width:100%}.result-card{margin-top:20px;padding:36px 16px 29px;border-radius:31px}.result-stats{grid-template-columns:1fr}.result-stats span+span{border-top:2px solid #ded6be;border-left:0}.result-actions .button{width:100%}.notebook-shell{padding:17px 11px;border-radius:28px}.rule-card{padding:13px}.rule-animals{height:83px}.rule-card h2{font-size:15px}.rule-card p{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
