:root{--forest:#274f3a;--forest-dark:#183c2c;--green:#527a48;--sage:#91ab74;--lime:#dbe8b7;--cream:#f7f6ed;--paper:#fffef7;--line:#dce1cf;--ink:#293d30;--muted:#56664f;--gold:#b78a40;--water:#badbd6;--shadow:0 6px 24px #263e2610;--shadow-small:0 2px 8px #263e2610;--touch-min:48px;--radius:24px;font-family:'Malgun Gothic','Apple SD Gothic Neo',system-ui,sans-serif;color:var(--ink);font-size:16px;font-synthesis:none;background:var(--cream)}
*{box-sizing:border-box}body{margin:0;word-break:keep-all;overflow-wrap:break-word;line-height:1.6}button,input,select{font:inherit}button{cursor:pointer;touch-action:manipulation;min-height:var(--touch-min)}button,select{-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed;opacity:.65}button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #96651b;outline-offset:4px}button{color:inherit}svg{vertical-align:middle;flex-shrink:0}h1,h2,h3,p{margin:0}h1{font-size:clamp(25px,2.5vw,36px);letter-spacing:-.8px;line-height:1.4}h2{font-size:24px;letter-spacing:-1px;line-height:1.45}h3{font-size:18px;line-height:1.5}p{line-height:1.7}small{line-height:1.5}img{max-width:100%}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.eyebrow{font-size:12px;letter-spacing:2px;font-weight:800;color:var(--green);display:block;line-height:1.6}.pill{display:inline-flex;background:#eef1df;color:#4b643a;padding:7px 13px;border-radius:30px;font-size:14px;font-weight:700;align-items:center;gap:6px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid transparent;border-radius:13px;min-height:48px;padding:12px 21px;background:transparent;font-weight:700;font-size:16px;line-height:1.4;transition:background .16s,transform .16s,box-shadow .16s}.btn:active:not(:disabled){transform:translateY(1px)}.btn.primary{background:var(--forest);color:#fffef1;box-shadow:0 4px 0 #183827}.btn.primary:hover{background:#356048}.btn.primary[aria-disabled=true]{background:#667b5d;box-shadow:0 3px 0 #526649}.btn.soft,.btn.choice{background:#f2f3e9;border-color:var(--line)}.btn.soft:hover,.btn.choice:hover{background:#e9edda}.btn.selected,.btn.choice.selected{border-color:var(--green);background:#e1ebcc;box-shadow:inset 0 0 0 1px var(--green)}.btn.quiet{color:var(--muted)}.btn.quiet:hover{background:#eeefe3}.btn.icon-btn{width:48px;height:48px;padding:0;border-color:var(--line);background:#fffef6}.btn.wide{width:100%}.btn.jumbo{min-height:60px;padding:18px 30px;border-radius:17px;font-size:19px;gap:24px}.btn.danger{background:#984b3d;color:white}.btn.text-danger{color:#984b3d;font-size:16px}.topbar{height:88px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 4.2%;border-bottom:1px solid #e1e5d6;background:#fbfcf5;position:relative;z-index:5}.wordmark{display:flex;align-items:center;gap:12px;border:0;background:transparent;text-align:left;color:var(--forest);padding:0;min-height:48px}.wordmark>svg{background:var(--forest);color:#deebbd;padding:7px;box-sizing:content-box;border-radius:14px;transform:rotate(-6deg)}.wordmark span{font-size:17px;letter-spacing:-.6px}.wordmark strong{font-weight:900}.wordmark small{display:block;font-size:12px;font-weight:700;letter-spacing:3.3px;padding-top:4px}.subject{font-size:14px;color:#61705d;letter-spacing:.3px}.subject span{margin:0 10px;color:#a1b095}.topbar nav{display:flex;gap:15px;align-items:center}.brand-image{overflow:hidden;position:relative}.brand-image img{display:block;width:100%;max-width:none;position:absolute;top:-26%;}.hero-logo{width:580px;height:207px;margin:0 -20px}.hero-logo img{top:-39%;}
/* The home illustration and all research workbenches stay in a flat 2D view. */
.home{max-width:1800px;margin:auto}.home-scene{height:590px;position:relative;overflow:hidden;background:#e2e9d6}.hero-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.home-copy{position:relative;z-index:2;padding:67px 0 0 7%;width:60%;}.home-eyebrow{color:#576b43;font-size:12px;letter-spacing:3px}.home-copy>p{font-size:25px;line-height:1.6;letter-spacing:-1px;color:#345037;margin-top:-16px}.home-copy>p strong{font-size:29px;font-weight:850}.home-actions{display:flex;flex-direction:column;align-items:flex-start;gap:18px;margin-top:30px}.home-actions>span{font-size:14px;color:#4e6547}.hero-friends{position:absolute;bottom:29px;right:12%;display:flex;align-items:flex-end;gap:0;z-index:3;filter:drop-shadow(0 10px 6px #35483220);transform:scale(.85);transform-origin:bottom right}.hero-friends .mascot-wrap:nth-child(2){transform:scale(.82);margin:0 -14px}.hero-friends .mascot-wrap:nth-child(3){transform:scale(.9)}.mascot-wrap{position:relative;flex-shrink:0;width:60px;height:75px;overflow:hidden;mix-blend-mode:multiply}.mascot-wrap.large{width:170px;height:280px}.floating-note{position:absolute;right:6%;top:49px;padding:11px 17px;background:#f8f7e9d9;border:1px solid #fdfef4;border-radius:50px;color:#516246;display:flex;align-items:center;gap:8px;font-size:14px;box-shadow:var(--shadow)}.home-bottom{display:flex;align-items:center;padding:36px 7%;gap:38px;background:#fcfcf5;border-bottom:1px solid var(--line)}.adventure-label{min-width:196px;border-right:1px solid var(--line);padding-right:36px}.adventure-label .eyebrow{font-size:12px;letter-spacing:1.2px;margin-bottom:9px}.adventure-label h2{font-size:20px;line-height:1.55}.home-missions{display:grid;grid-template-columns:repeat(5,1fr);width:100%;gap:22px}.home-missions>div{display:grid;grid-template-columns:42px 1fr;column-gap:12px;align-items:center}.home-missions small{font-size:12px;color:var(--muted);letter-spacing:1px}.home-missions strong{font-size:16px;white-space:normal;text-align:center}.mission-mini{width:42px;height:46px;background:#e5edd7;border-radius:13px;color:#698457;grid-row:span 2;display:grid;place-items:center}.mission-mini.m1{background:#f0e3d7;color:#a27e60}.mission-mini.m2{background:#dfebe5;color:#578b88}.mission-mini.m4{background:#f0e5cf;color:#a48956}.home-footer{display:flex;justify-content:space-between;padding:20px 7%;font-size:12px;color:var(--muted)}.map-page,.activity,.report-page,.final-page,.ending{max-width:1440px;padding:34px 4.2% 22px;margin:auto}.page-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:27px}.page-heading .eyebrow{margin-bottom:8px}.page-heading p{color:var(--muted);font-size:16px;margin-top:8px}.recovery{display:grid;grid-template-columns:70px 1fr;gap:5px 10px;align-items:center;width:180px}.recovery>span{font-size:16px;color:var(--muted)}.recovery strong{font-size:32px;color:var(--forest);text-align:right}.recovery strong small{font-size:16px}.meter{grid-column:span 2;background:#dfe5d0;height:7px;border-radius:7px;overflow:hidden}.meter i{background:#78975e;display:block;height:100%}.map-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:25px}.map-world{background:#e4ebd6;border:1px solid #cdd9bc;border-radius:var(--radius);position:relative;padding:29px 12px 15px;overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;justify-content:center;min-width:0}.map-tag{position:absolute;left:23px;top:18px;font-size:14px;color:#586e48;display:flex;gap:7px;align-items:center;z-index:2}.map-canvas-wrap{position:relative;width:100%;aspect-ratio:480/280;margin:10px 0 0}#map-canvas{width:100%;height:100%;display:block;image-rendering:pixelated;image-rendering:crisp-edges}.map-pin{position:absolute;transform:translate(-50%,-50%);background:transparent;border:0;display:flex;align-items:center;flex-direction:column;min-width:48px;min-height:48px;padding:0;filter:drop-shadow(0 2px 0 #5f6b4630)}.map-pin>span{display:grid;place-items:center;width:32px;height:32px;border:3px solid #fff7dc;background:#72845b;color:white;font-size:16px;font-weight:800;border-radius:50%;margin-bottom:7px}.map-pin b{white-space:nowrap;background:#f7f5df;border:1px solid #c3c5a0;padding:6px 11px;border-radius:7px;font-size:14px;color:#405338}.map-pin.selected>span{background:#cf9a4c;outline:4px solid #faf1d580;transform:translateY(-4px)}.map-pin.selected b{background:#fff8de;border-color:#c29854}.map-pin.done>span{background:#3f7250}.map-pin:disabled{opacity:.7}.map-caption{display:flex;gap:20px;justify-content:center;font-size:14px;color:#4c6545;padding-top:10px}.map-caption>span{display:flex;align-items:center;gap:5px}.dot{background:#d6a355;width:8px;height:8px;border-radius:50%;display:inline-block}.mission-preview{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:27px 24px;box-shadow:var(--shadow);position:relative;overflow:hidden}.preview-mascot{height:113px;display:flex;justify-content:center;margin:-3px 0 10px}.preview-mascot .mascot-wrap{transform:scale(.43);transform-origin:top center}.mission-preview>.eyebrow{font-size:12px;position:relative;z-index:1}.mission-preview h2{font-size:24px;margin-top:10px}.mission-preview>p{font-size:16px;color:var(--muted);margin:9px 0 22px;min-height:48px}.chapter-list{border-top:1px dashed var(--line);padding:16px 0;display:grid;gap:13px}.chapter-list>div{display:flex;gap:10px;align-items:center;font-size:16px}.chapter-list span{font-size:12px;font-weight:800;background:#ecf0df;border-radius:6px;padding:4px;min-width:24px;text-align:center;color:#6c8159}.preview-reward{font-size:12px;display:block;text-align:center;color:var(--muted);margin:13px -9px 0}.progress-track{display:flex;justify-content:space-between;padding:26px 10px 5px;gap:12px}.progress-stop{display:flex;align-items:center;gap:10px;padding:0 10px;border:0;background:transparent;font-size:14px;color:var(--muted);min-height:48px}.progress-stop>span{height:29px;width:29px;border-radius:50%;background:#e7eadc;display:grid;place-items:center;font-size:14px;font-weight:800;color:#708164}.progress-stop.done>span{color:#f2f6dc;background:#648653}.progress-stop.current{font-weight:800;color:var(--forest)}.progress-stop.current>span{background:var(--forest);color:white}.report-banner{display:flex;align-items:center;justify-content:space-between;background:#e8edda;border-radius:17px;padding:17px 24px;margin-top:22px;gap:20px}.report-banner>div{display:flex;align-items:center;gap:12px}.report-banner span{font-size:16px;color:var(--muted)}
/* Shared research layout. */
.activity{padding-top:24px}.activity-heading{display:flex;align-items:center;gap:16px;margin-bottom:18px}.activity-heading .eyebrow{font-size:12px;letter-spacing:1.6px}.activity-heading .eyebrow span{margin:0 10px;color:#bbc6ab}.activity-heading h1{font-size:27px;margin-top:2px}.page-number{margin-left:auto;color:var(--muted);font-size:13px;letter-spacing:1px}.page-number strong{font-size:27px;color:var(--forest);margin-right:6px}.mission-prompt{display:flex;align-items:center;gap:14px;border:1px solid #e0e6cf;border-radius:20px;background:#edf1e1;padding:12px 22px;min-height:82px;height:auto;margin-bottom:22px}.mission-prompt .mascot-wrap{align-self:flex-end}.mission-prompt>div>span{font-size:16px;font-weight:700;letter-spacing:.6px;color:var(--muted)}.mission-prompt p{font-size:18px;font-weight:700;line-height:1.6} .prompt-stamp{flex-shrink:0;margin-left:auto;width:47px;height:47px;border:1px solid #ccd8b6;border-radius:50%;display:grid;place-items:center;color:#7e965c}.activity-grid{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:22px;align-items:start}.workbench{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);padding:23px;min-width:0;box-shadow:var(--shadow)}.notebook{border:1px solid #dfe3cd;border-radius:20px;padding:22px;background:#f2f1df;position:relative;overflow:hidden;font-size:16px}.notebook:before{content:'';position:absolute;left:15px;top:0;width:calc(100% - 30px);height:5px;background:repeating-linear-gradient(90deg,transparent 0 16px,#d2d7bc 16px 21px,transparent 21px 38px)}.notebook-heading{display:flex;align-items:center;gap:10px;margin:0 0 16px;color:#516746}.notebook h3{font-size:17px}.note-intro{font-size:16px;color:var(--muted);margin-bottom:15px}.note-section{border-top:1px dashed #d0d5bc;padding:15px 0 11px}.note-section strong{font-size:16px;display:block;margin-bottom:7px}.note-section p{font-size:16px;color:#657354}.check-row{display:flex;align-items:flex-start;gap:8px;font-size:16px;line-height:1.7;margin:8px 0;color:var(--muted)}.check-row>span{display:grid;place-items:center;min-width:18px;height:18px;border:1px solid #cbd1ba;border-radius:50%;margin-top:2px;font-weight:700;font-size:16px}.check-row.checked{color:#3d6240}.checked>span{background:#dce7c3;border-color:#a4ba88}.specimen-tabs{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}.specimen-tabs .btn{min-width:105px;font-size:16px}.specimen-stage{height:315px;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;touch-action:none;margin:14px 0;background:radial-gradient(circle at center,#f1f3e5 0,transparent 65%);border-radius:18px}.specimen-label{position:absolute;left:12px;top:14px;z-index:1}.specimen-label span{font-size:12px;letter-spacing:2px;color:var(--muted)}.specimen-label h2{font-size:19px;margin-top:5px}.specimen-art{height:250px;width:290px;transform-origin:50% 50%;transition:transform .1s}.specimen-art svg{width:100%;height:100%}.specimen-hotspots{position:absolute;right:3px;top:100px;display:grid;gap:11px;z-index:2}.specimen-hotspots .btn{font-size:16px;min-height:48px;padding:10px 13px;background:#f8f9edf5;box-shadow:0 3px 5px #62704410}.specimen-hotspots .selected{background:#e0eacc}.scale-line{position:absolute;left:18px;bottom:8px;font-size:12px;color:var(--muted);border-bottom:1px solid #aab597;padding-bottom:6px}.tool-row{display:flex;align-items:center;gap:15px;justify-content:center;flex-wrap:wrap}.zoom-control{display:flex;align-items:center;gap:10px;font-size:16px;color:#627253}.zoom-control input{width:125px;accent-color:var(--green);height:48px;cursor:pointer}.zoom-control output{width:42px;font-size:16px}.microcopy{font-size:14px!important;color:var(--muted)!important;text-align:center;margin-top:15px;line-height:1.65}.activity-footer{display:flex;justify-content:space-between;align-items:center;gap:18px;padding-top:22px}.footer-status{display:flex;align-items:center;gap:9px;font-size:16px;color:var(--muted)}.footer-status.ready{color:#487044}.footer-actions{display:flex;align-items:center;gap:8px}.activity .progress-track{padding-top:14px}.activity .progress-stop{font-size:14px;min-height:48px}.activity .progress-stop>span{height:23px;width:23px}.rule-builder{text-align:center;padding:0 0 15px;border-bottom:1px dashed var(--line)}.rule-builder>div{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:12px}.rule-builder .btn{font-size:16px}.classification-plants{display:flex;justify-content:center;gap:25px;padding:23px 0}.plant-card{width:175px;padding:12px 17px;border:1px solid var(--line);background:#fafbf1;border-radius:19px;display:flex;flex-direction:column;align-items:center;min-height:48px;transition:transform .15s}.plant-card:hover{transform:translateY(-3px)}.plant-card.selected{border-color:#638350;box-shadow:0 0 0 2px #ceddb5}.plant-card svg{width:100%;height:120px}.plant-card strong{font-size:16px;margin-top:7px}.plant-card small{font-size:14px;color:var(--muted);margin-top:5px}.sort-bins{display:grid;grid-template-columns:1fr 1fr;gap:19px}.sort-bin{min-height:133px;background:#edf2de;border:2px dashed #c6d4b2;border-radius:18px;padding:14px;display:flex;flex-direction:column;gap:15px}.sort-bin:nth-child(2){background:#f1ede1;border-color:#dbcfaf}.bin-title{display:flex;justify-content:space-between;width:100%;font-size:17px;font-weight:800}.bin-title small{font-size:14px;font-weight:400;color:#7b8867}.sort-bin>div{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;width:100%;margin-top:auto;margin-bottom:auto}.placed-label{padding:8px 12px;border-radius:9px;background:#fffef6;border:1px solid #d7dfc7;font-size:16px}.empty-label{font-size:16px;color:var(--muted)}.inline-tip{margin-top:18px;padding:12px 16px;background:#f6f5e9;border-radius:12px;color:var(--muted);font-size:16px;line-height:1.7}.inline-tip svg{margin-right:6px}.season-scene{position:relative;max-width:580px;margin:15px auto 0;overflow:hidden;border-radius:20px;background:#e8eddf;height:285px}#season-art{height:100%}#season-art svg{width:100%;height:100%;object-fit:cover}.scene-badge{position:absolute;left:16px;top:15px;padding:7px 13px;border-radius:10px;background:#fffdf0e6;color:#57714c;font-size:14px;font-weight:800;z-index:2}.layer-button{position:absolute;right:13px;bottom:12px;background:#f9faef!important;border:1px solid #d7dfc5;font-size:16px;padding:10px 13px}.layer-button.selected{background:#dce8c5!important}.timeline{max-width:510px;margin:13px auto 0}.timeline input{width:100%;accent-color:var(--green);height:48px;cursor:pointer}.timeline>div{display:flex;justify-content:space-between}.season-tab{background:transparent;border:0;color:var(--muted);font-size:16px;min-width:48px;min-height:48px;padding:4px 9px}.season-tab.active{background:#e9eedb;border-radius:10px;color:#35583d;font-weight:800}.season-caption{font-size:16px;text-align:center;padding:4px 7px 9px;min-height:45px}.center{text-align:center}.evidence-board>.eyebrow{text-align:center}.claim{font-size:25px;letter-spacing:-1px;text-align:center;background:#e8eedb;border:1px solid #d6dfc3;border-radius:16px;padding:20px;margin:13px 0 22px;font-weight:800}.evidence-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.evidence-card{border:1px solid #dddcc4;background:#faf9eb;border-radius:14px;padding:12px;display:flex;flex-direction:column;align-items:stretch;text-align:left}.evidence-card>span{font-size:14px;font-weight:800;color:#70805a}.evidence-card svg{width:100%;height:90px;margin:9px 0}.evidence-card p{font-size:16px;line-height:1.6;flex:1}.evidence-card b{font-size:14px;margin-top:10px;color:#79905e}.evidence-card.selected{border-color:#6d8f52;box-shadow:inset 0 0 0 1px #6d8f52;background:#eef2df}.explanation-slot{border:1px dashed #cbd3b4;min-height:95px;border-radius:14px;padding:14px;line-height:1.7;font-size:16px;color:var(--muted)}.explanation-slot small{display:block;font-size:12px;letter-spacing:1px;margin-bottom:6px}.explanation-slot.filled{background:#e6edcd;border-style:solid;color:#48633d}.explain-arrow{display:block;text-align:center;padding:8px;color:#92a075}.conclusion{background:#fffced;border-radius:13px;padding:17px;margin-top:18px;font-size:16px;line-height:1.8}.experiment-stage{position:relative;height:338px;background:#eaf0e7;border:1px solid #dce5d4;border-radius:19px;overflow:hidden}.hyacinth{position:absolute;left:12%;top:44px;width:57%;height:265px}.hyacinth svg{height:100%;width:100%}.cross-section{position:absolute;right:6%;top:76px;width:97px;transition:transform .2s}.cross-section span{display:block;font-size:14px;text-align:center;margin-bottom:7px}.cross-section.magnified{transform:scale(1.45);transform-origin:top center}.cross-section svg{width:100%}.water-level{position:absolute;bottom:0;height:101px;left:0;right:0;background:#82c8d253;border-top:3px solid #a5d9d8;pointer-events:none}.water-level span{position:absolute;right:12px;bottom:12px;font-size:14px;color:#54818a}.bubbles{position:absolute;inset:0;pointer-events:none}.bubbles i{position:absolute;bottom:20px;border-radius:50%;border:1.5px solid #fdffff;background:#d9f3f77a;animation:float-bubble 2s infinite ease-in}.phenomenon{position:absolute;left:15px;bottom:18px;background:#fffdf1;border-radius:10px;padding:10px;font-size:16px;color:#447574}.experiment-tools{display:flex;justify-content:center;gap:8px;margin-top:20px;flex-wrap:wrap}.experiment-tools .btn{font-size:16px;padding:11px 12px}.comparison{border-top:1px dashed #ccd2b9;margin-top:18px;padding-top:15px}.comparison>div{height:125px;text-align:center}.comparison svg{width:140px;height:125px}.comparison strong{display:block;text-align:center;margin:8px 0;font-size:16px}.comparison p{font-size:16px;line-height:1.75;margin-bottom:13px}.habitat-plant{height:222px;text-align:center;margin-top:12px}.habitat-plant svg{height:100%;max-width:100%}.habitat-options{display:flex;gap:12px;justify-content:center}.habitat-options .choice{flex:1;max-width:175px;display:flex;flex-direction:column;padding:15px;min-height:96px}.habitat-options strong{font-size:16px}.reason-box{padding-top:21px}.reason-box label{font-size:16px;font-weight:700;display:block;margin-bottom:11px}.reason-box select{width:100%;height:52px;background:#f7f7ed;border:1px solid #cfd9bf;border-radius:11px;color:#4a6140;padding:10px;font-size:16px}.chain-text span{display:block;color:var(--muted);font-size:16px;line-height:1.7}.terrain-tools{gap:8px;margin-bottom:18px}.terrain-tools .btn{padding:11px 15px;font-size:16px}.garden-frame{padding:15px;border-radius:21px;background:#dce6c6;border:1px solid #bdcea6}.garden-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:4px;width:100%;aspect-ratio:6/4}.garden-cell{position:relative;border:1px solid #b6c59c;background:#e2dbc2;display:grid;place-items:center;min-width:0;min-height:48px;padding:2px;border-radius:5px;touch-action:none;overflow:hidden}.garden-cell.empty{background:#dfdcc5;border-color:#ccc8ad;background-image:radial-gradient(#b9b596 1px,transparent 1px);background-size:9px 9px}.garden-cell.water{background:#a9d1cd;border-color:#8ebbb6;background-image:repeating-linear-gradient(175deg,transparent 0 20px,#d1e6d34a 20px 22px,transparent 22px 38px)}.garden-cell.grass{background:#b7cb8c;border-color:#a2b77a;background-image:radial-gradient(#97b073 1px,transparent 1px);background-size:12px 12px}.garden-cell.dry{background:#dfc38e;border-color:#cbb17c;background-image:radial-gradient(#baa171 1px,transparent 1px);background-size:15px 13px}.garden-cell:not(div):hover{box-shadow:inset 0 0 0 3px #fdfbea}.garden-cell svg{height:100%;max-height:82px;width:100%;filter:drop-shadow(0 4px 2px #30553015)}.garden-cell.planted{box-shadow:inset 0 0 0 2px #ffffff8c}.terrain-count{display:flex;align-items:center;gap:9px;margin-top:23px;font-size:16px}.terrain-count>strong{margin-left:auto;font-size:22px;color:#456540}.terrain-count small{font-size:12px;font-weight:400}.placement-info{display:flex;gap:12px;justify-content:space-between;align-items:center;margin-top:17px}.placement-info>span{font-size:16px;line-height:1.7;max-width:62%}.placement-info>span strong{display:block;font-size:16px}.placement-info .btn{font-size:16px;padding:10px 13px}.design-story{text-align:center}.design-story h2{font-size:22px;margin:8px 0}.design-story p{font-size:16px;color:var(--muted)}.design-layout{display:grid;grid-template-columns:1fr 230px;align-items:center;gap:15px;margin:23px 0}.bag-preview{text-align:center;background-image:linear-gradient(#dee3cb55 1px,transparent 1px),linear-gradient(90deg,#dee3cb55 1px,transparent 1px);background-size:23px 23px;min-width:0;padding:10px}.bag-preview svg{width:100%;height:237px}.sketch-label{font-size:12px;color:var(--muted);letter-spacing:1px}.parts-menu fieldset{border:0;margin:0 0 16px;padding:0}.parts-menu legend{font-size:16px;font-weight:800;margin-bottom:10px}.parts-menu .btn{width:100%;font-size:16px;padding:11px 10px;margin:3px 0}.feature-link{display:flex;text-align:left;align-items:center;gap:14px;padding:16px;background:#eef1df;border:1px dashed #bccaa3;border-radius:14px;width:100%;font-size:16px;line-height:1.8}.feature-link strong{font-size:16px;display:block}.feature-link.selected{background:#dfeacd;border-style:solid}.test-stage{position:relative;background:#e9efe3;border-radius:19px;min-height:327px;padding:36px 24px 16px;display:flex;align-items:center;justify-content:center;gap:8px}.test-stage>svg{width:50%;height:256px}.test-result-cloud{display:grid;gap:13px;max-width:210px}.test-result-cloud>div{display:flex;align-items:center;gap:8px;padding:15px;border-radius:12px;font-size:16px;line-height:1.6}.pass{background:#dceaca;color:#436b3a}.adjust{background:#f1e5c9;color:#87692c}.test-controls{display:flex;justify-content:center;gap:13px;margin-top:21px}.test-entry{border-top:1px dashed #ccd3b8;padding:12px 0}.test-entry>strong{font-size:16px}.test-entry>span{display:block;color:var(--muted);font-size:12px;margin-top:4px}.comparison-count{padding-top:12px;border-top:1px solid #ccd5b5}.rain-drop{animation:rain 1s linear infinite}.readonly .garden-cell{min-height:0}
/* Reports, final mission and certificate. */
.report-page,.final-page{padding-top:43px}.report-evidence{display:grid;grid-template-columns:repeat(5,1fr);gap:18px;margin-top:43px}.report-card{padding:25px 20px;border:1px solid #d4dcc4;border-radius:23px;background:#fffdf1;text-align:center;display:flex;flex-direction:column;align-items:center;box-shadow:var(--shadow)}.report-icon{display:grid;place-items:center;width:72px;height:72px;border-radius:50%;background:#e9eed7;color:#77945a;margin-bottom:21px}.report-card small{font-size:12px;letter-spacing:1.5px;color:var(--muted)}.report-card h3{font-size:18px;margin:10px 0 16px;min-height:56px}.report-card p{font-size:16px;color:var(--muted);flex:1}.report-card b{font-size:16px;border-top:1px dashed #d9dec6;padding-top:15px;margin-top:23px;width:100%;color:#65804b}.report-card.submitted{background:#e7eed6;border-color:#8ba66b}.report-card.submitted .report-icon{background:#668a4b;color:#f3f4d7}.report-bottom{text-align:center;margin-top:35px}.core-mini{width:100px;height:100px;border-radius:50%;background:#e3e7d5;color:#91a080;border:8px solid #f8f9ee;outline:1px solid #d4ddc4;display:grid;place-items:center;margin:0 auto 17px}.core-mini.lit{color:#618c38;background:#eaf0af;box-shadow:0 0 45px #cfd97a77}.report-bottom p{font-size:16px;color:var(--muted);margin-bottom:20px}.report-bottom strong{color:#4e6c3c;margin-right:5px}.final-modules{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.final-module{position:relative;border:1px solid var(--line);background:var(--paper);border-radius:22px;padding:25px;overflow:hidden}.module-number{position:absolute;right:20px;top:18px;font-size:42px;color:#e7ecd9;font-weight:900}.final-module h2{font-size:21px;margin-bottom:12px}.final-module p{font-size:16px;color:#6a785c;margin-bottom:16px;position:relative}.final-leaf{float:right;height:85px;width:95px;margin-top:-15px}.final-leaf svg{height:100%;width:100%}.final-module .btn{font-size:16px;margin:0 5px 8px 0;padding:12px 16px}.final-module .check-row{margin-top:12px}.final-module .garden-grid{max-width:235px;height:120px;margin:10px auto 20px;aspect-ratio:auto}.final-module .garden-cell svg{height:25px}.final-module .garden-cell{border-radius:3px;gap:2px}.final-environments{margin:25px 0}.function-choices{display:grid;gap:10px;margin:22px 0}.final-start{text-align:center;padding:30px 0}.ending{max-width:1120px;padding-top:44px}.ending-top{text-align:center}.ending-top .eyebrow{color:#8b945f}.certificate-seal{width:90px;height:90px;background:#e4edc8;border:1px solid #c6d7a6;border-radius:50%;display:grid;place-items:center;margin:20px auto;color:#6c914a}.ending h1{font-size:35px}.ending-top p{font-size:16px;color:#6c7d5e;margin-top:12px}.ending-results{display:grid;grid-template-columns:1.4fr 1fr;gap:22px;margin:30px 0}.ending-results>section{border:1px solid var(--line);border-radius:23px;padding:25px;background:#fdfcf2;text-align:center}.ending-results h2{font-size:17px;margin-bottom:20px}.ending-results .garden-grid{max-width:400px;margin:auto}.ending-invention>svg{height:205px;width:100%}.ending-invention p{font-size:16px;color:var(--muted)}.certificate{text-align:center;border:1px solid #c9d3b8;outline:5px solid #eff1df;outline-offset:-10px;padding:34px;background:#fffdf1;position:relative}.certificate .eyebrow{font-size:12px}.certificate h2{font-size:25px;margin:14px 0}.certificate p{font-size:16px;color:var(--muted)}.certificate>div{display:flex;justify-content:center;gap:32px;margin-top:22px;font-size:16px}.certificate b{margin-left:8px;color:#4e7040}.ending-actions{display:flex;justify-content:center;gap:14px;margin:30px 0}
/* Dialogs and accessible feedback. */
dialog{border:1px solid #d9dfca;border-radius:25px;background:#fffef6;color:var(--ink);padding:29px;width:min(610px,calc(100% - 32px));max-height:88vh;box-shadow:0 25px 100px #132c3850;overflow:auto}dialog::backdrop{background:#223d2f70;backdrop-filter:blur(5px)}.dialog-top{display:flex;align-items:center;justify-content:space-between;margin-top:-8px}.dialog-top .icon-btn{border:0;background:transparent}.dialog-top .eyebrow{font-size:12px}dialog h2{font-size:25px;margin:4px 0 23px}dialog>p{font-size:16px;color:var(--muted)}.dialog-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:25px}.intro-dialog,.reward{display:flex;align-items:center;gap:8px}.intro-dialog .mascot-wrap,.reward .mascot-wrap{height:210px;width:128px}.intro-dialog p{font-size:16px;line-height:1.9}.intro-dialog strong{display:block;margin-top:12px}.intro-steps{display:flex;align-items:center;justify-content:center;gap:14px;font-size:16px;background:#eff2e0;padding:16px;border-radius:14px}.reward h3{font-size:23px;margin:9px 0}.reward p{font-size:16px;color:var(--muted)}.journal-list section{border-top:1px dashed #d9dfc6;padding:17px 0}.journal-list h3{display:flex;gap:10px;font-size:16px;color:#566f45}.journal-list p{font-size:16px;color:var(--muted);padding-top:7px}.journal-details{background:#f1f3e2;padding:17px;border-radius:14px}.settings-list{display:grid;gap:15px}.settings-list p{font-size:16px;color:var(--muted)}.toast{position:fixed;z-index:100;left:50%;top:calc(88px + 12px);bottom:auto;transform:translateX(-50%);background:#294c39;color:#f8f9e8;border:1px solid #96aa78;border-radius:15px;padding:17px 24px;max-width:min(90vw,620px);box-shadow:0 9px 35px #1a361340;font-size:16px;line-height:1.7;text-align:center}.large-text .mission-prompt p{font-size:22px}.large-text .note-section p,.large-text .check-row,.large-text .note-intro,.large-text .evidence-card p,.large-text .reason-box select,.large-text .season-caption,.large-text .final-module p,.large-text .comparison p,.large-text .inline-tip,.large-text .conclusion{font-size:19px}.large-text .activity-grid{grid-template-columns:minmax(0,1fr) 300px}.large-text .btn{font-size:18px}.large-text .mission-prompt{height:auto;min-height:88px}.large-text .notebook{padding:22px}.large-text .evidence-cards{grid-template-columns:repeat(2,1fr)}
.home-scene:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#f0f1dfed 0%,#eceddcbd 35%,#eceddc00 62%)}
.hero-friends{mix-blend-mode:normal;filter:none;gap:15px}
.activity-footer{position:sticky;bottom:0;z-index:3;background:#f7f6edfa;border-top:1px solid #d4ddc5;margin-top:20px;padding:14px 0 max(14px,env(safe-area-inset-bottom));box-shadow:0 -6px 18px #263e2608}
.garden-frame{max-width:570px;margin-left:auto;margin-right:auto}
.toast{pointer-events:none}
@media(min-width:851px) and (max-height:900px){.activity{padding-top:18px}.activity-heading{margin-bottom:13px}.activity-heading h1{font-size:25px}.mission-prompt{height:auto;min-height:76px;margin-bottom:17px;padding-top:8px;padding-bottom:8px}.mission-prompt .mascot-wrap{height:65px}.activity .workbench{padding:18px}.activity .specimen-stage{height:225px;margin:10px 0}.activity .specimen-art{height:205px}.activity .specimen-hotspots{top:80px}.activity .season-scene{height:214px}.activity .experiment-stage{height:273px}.activity .hyacinth{height:210px;top:45px}.activity .garden-frame{max-width:490px}.activity .test-stage{min-height:285px}.activity .bag-preview svg{height:205px}.activity .design-layout{margin:17px 0}.activity .notebook{padding:18px}.activity .note-section{padding:12px 0 8px}.activity .comparison>div{height:95px}.activity .comparison svg{height:95px}.activity .evidence-card svg{height:66px}}
@keyframes float-bubble{0%{transform:translateY(0);opacity:0}25%{opacity:.9}100%{transform:translateY(-155px);opacity:0}}@keyframes rain{from{transform:translateY(-16px);opacity:0}50%{opacity:.9}to{transform:translateY(48px);opacity:0}}
@media(min-width:1500px){.home-scene{height:660px}.home-copy{padding-top:88px}.hero-logo{width:650px;height:235px}.hero-friends{right:14%;bottom:45px;transform:none}.home-bottom{padding-top:45px;padding-bottom:45px}}
@media(max-width:1150px){.topbar{height:76px;padding:0 3%}.subject{font-size:14px}.map-page,.activity,.report-page,.final-page,.ending{padding-left:3%;padding-right:3%}.home-scene{height:548px}.home-copy{padding-top:55px;padding-left:5%}.hero-logo{width:510px;height:180px}.home-copy>p{font-size:23px}.home-copy>p strong{font-size:26px}.home-actions .btn{font-size:17px}.hero-friends{right:5%;transform:scale(.72)}.floating-note{right:4%;font-size:14px;top:29px}.home-bottom{padding:28px 4%;gap:25px}.adventure-label{min-width:170px;padding-right:20px}.adventure-label h2{font-size:18px}.home-missions{gap:14px}.home-missions>div{display:flex;flex-direction:column;gap:6px;min-width:0}.home-missions strong{font-size:14px}.home-missions small{font-size:12px}.mission-mini{margin-bottom:4px}.map-layout{grid-template-columns:minmax(0,1fr) 280px;gap:16px}.mission-preview{padding:23px 20px}.mission-preview h2{font-size:22px}.map-pin b{font-size:14px;padding:5px 8px}.map-pin>span{width:28px;height:28px;font-size:16px}.map-world{padding-left:0;padding-right:0}.activity-grid{grid-template-columns:minmax(0,1fr) 272px;gap:17px}.workbench{padding:19px}.notebook{padding:19px}.specimen-hotspots .btn{font-size:16px;padding:10px}.specimen-hotspots{right:0}.specimen-art{width:250px;height:235px}.specimen-stage{height:292px}.activity-heading h1{font-size:25px}.mission-prompt p{font-size:18px}.progress-stop{font-size:14px}.design-layout{grid-template-columns:1fr 197px;gap:10px}.test-stage{padding:30px 12px 12px}.test-result-cloud{max-width:175px}.report-evidence{gap:12px}.report-card{padding:21px 14px}.report-card h3{font-size:16px}.report-card p{font-size:16px}.terrain-tools .btn{padding:11px 12px}.garden-frame{padding:10px}.garden-cell svg{max-height:70px}}
@media(max-width:850px){.subject{display:none}.topbar nav{gap:8px}.topbar .quiet span{display:none}.home-copy{width:75%;padding-top:50px}.home-scene{height:580px}.hero-logo{width:480px;height:175px}.hero-art{width:140%;left:-15%;max-width:none}.hero-friends{transform:scale(.56);right:0;bottom:0}.home-copy>p{font-size:21px}.floating-note{display:none}.home-bottom{gap:22px}.adventure-label{min-width:145px;flex-shrink:0}.adventure-label h2{font-size:16px}.adventure-label .eyebrow{font-size:12px}.home-missions{gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.home-missions strong{font-size:14px}.map-layout{grid-template-columns:1fr}.map-world{min-height:360px}.mission-preview{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px;padding:24px}.preview-mascot{display:none}.mission-preview>.pill{justify-self:start}.mission-preview h2{grid-column:1}.mission-preview>p{grid-column:1;margin:0;min-height:0}.mission-preview .chapter-list{grid-column:2;grid-row:1/4}.mission-preview>.btn{grid-column:2;grid-row:4/6;align-self:center}.preview-reward{grid-column:1;text-align:left;margin:0}.map-pin b{font-size:14px}.progress-stop{padding:0;font-size:14px;gap:6px}.activity-grid,.large-text .activity-grid{grid-template-columns:1fr}.notebook{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 20px}.notebook-heading,.note-intro,.comparison,.explanation-slot,.explain-arrow,.conclusion,.comparison-count,.notebook>.btn{grid-column:1/-1}.notebook-heading{margin:0}.notebook .note-section{padding-top:10px}.notebook .terrain-count{margin-top:10px}.test-entry{grid-column:auto}.specimen-stage{height:285px}.evidence-cards{grid-template-columns:repeat(3,1fr)}.experiment-stage{height:310px}.comparison{display:grid;grid-template-columns:120px 1fr;gap:5px 20px}.comparison>div{grid-row:span 3}.comparison strong{text-align:left}.comparison .btn{justify-self:start}.report-evidence{grid-template-columns:repeat(3,1fr);gap:16px}.report-card:last-child:nth-child(odd){grid-column:auto}.report-card h3{min-height:44px}.report-banner>div{flex-wrap:wrap}.report-banner span{width:100%}.terrain-count+ .check-row{grid-row:auto}.garden-frame{max-width:620px;margin:auto}.garden-cell svg{max-height:85px}.activity-footer{position:sticky;bottom:0;z-index:3;background:#f7f6edfa;border-top:1px solid #d4ddc5;margin-top:20px;padding:14px 0 max(14px,env(safe-area-inset-bottom));box-shadow:0 -6px 18px #263e2608}.ending-results{grid-template-columns:1.2fr 1fr}.ending-results>section{padding:18px}.ending-invention>svg{height:165px}}
@media(max-width:560px){.topbar{height:72px;padding:0 18px}.wordmark span{font-size:16px}.wordmark small{font-size:12px;letter-spacing:2px}.wordmark>svg{width:22px;height:22px;padding:6px;border-radius:11px}.topbar nav{gap:2px}.topbar nav .btn{padding:8px}.topbar nav .icon-btn{width:48px;border:0;background:transparent}.home-scene{height:650px}.home-copy{width:100%;padding:37px 24px 0}.home-eyebrow{font-size:12px;letter-spacing:1.8px}.hero-logo{width:calc(100vw - 25px);height:calc((100vw - 25px)*.355);margin-left:-10px;max-width:460px;max-height:164px;margin-top:18px}.home-copy>p{font-size:19px;margin-top:0}.home-copy>p strong{font-size:23px}.home-actions{margin-top:24px;gap:13px}.home-actions>.btn{font-size:16px;min-height:54px}.home-actions>span{font-size:14px}.hero-art{width:225%;left:-66%;height:100%}.hero-friends{transform:scale(.47);right:14px;bottom:6px}.home-bottom{display:block;padding:25px 20px}.adventure-label{border-right:0;padding:0;margin-bottom:22px}.adventure-label h2{font-size:20px}.adventure-label br{display:none}.home-missions{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px 12px}.home-missions strong{font-size:14px}.home-missions small{font-size:12px;letter-spacing:.5px}.mission-mini{height:40px;width:40px}.home-footer{padding:18px 20px;display:block;font-size:12px}.home-footer span{display:block;padding:3px 0}.page-heading{align-items:flex-start}.page-heading h1{font-size:23px}.page-heading p{font-size:16px}.page-heading .eyebrow{font-size:12px;letter-spacing:1.2px}.recovery{width:77px;display:block;padding-top:10px;flex-shrink:0}.recovery>span{font-size:16px}.recovery strong{display:block;text-align:left;font-size:25px}.meter{margin-top:4px}.map-page,.activity,.report-page,.final-page,.ending{padding:23px 16px}.map-world{min-height:270px;padding-top:36px}.map-tag{font-size:14px;left:15px;top:12px}.map-pin b{display:none} .map-pin>span{height:32px;width:32px;font-size:16px;border-width:2px;margin-bottom:3px}.map-caption{font-size:12px;gap:8px;padding-top:12px;flex-wrap:wrap}.mission-preview{padding:20px;display:block}.mission-preview>.eyebrow{margin-bottom:12px}.mission-preview>.pill{font-size:14px}.mission-preview h2{font-size:24px}.mission-preview>p{margin-top:6px;font-size:16px}.preview-reward{text-align:center;margin-top:12px}.chapter-list{margin-top:16px;padding-top:15px}.progress-track{gap:8px;padding:18px 0 0;overflow-x:auto;align-items:stretch}.progress-stop{display:flex;flex-direction:column;justify-content:center;font-size:12px;gap:5px;flex:0 0 62px;min-width:48px}.activity-heading{gap:10px}.activity-heading h1{font-size:20px}.activity-heading>.icon-btn{width:48px;min-width:48px}.activity-heading .eyebrow{font-size:12px;letter-spacing:.7px}.page-number{font-size:12px}.page-number strong{font-size:22px}.mission-prompt{gap:5px;padding:4px 12px 4px 6px;min-height:88px;height:auto;margin-bottom:17px}.mission-prompt p{font-size:18px;line-height:1.65}.mission-prompt>div>span{font-size:16px}.mission-prompt .mascot-wrap{width:45px;height:66px;align-self:center}.prompt-stamp{display:none}.workbench{padding:15px;border-radius:18px}.notebook{padding:18px;grid-template-columns:1fr}.notebook>*{grid-column:1!important}.specimen-tabs{gap:7px}.specimen-tabs .btn{min-width:80px;flex:1;padding:11px 8px;font-size:16px}.specimen-stage{height:320px}.specimen-art{height:205px;width:230px;transform-origin:50% 40%}.specimen-hotspots{right:0;left:0;top:auto;bottom:5px;display:flex;justify-content:center}.specimen-hotspots .btn{font-size:16px}.specimen-label h2{font-size:16px}.scale-line{display:none}.tool-row{gap:5px}.zoom-control{font-size:16px;gap:6px;flex-wrap:wrap;justify-content:center}.zoom-control input{width:80px}.tool-row>.btn{font-size:16px;padding:9px 11px}.zoom-control output{width:48px}.tool-row>label+button{min-width:48px}.activity-footer{gap:10px;margin-top:15px;flex-wrap:wrap}.footer-status{font-size:14px;gap:7px;max-width:none;width:100%}.footer-status svg{width:16px}.footer-actions{gap:2px}.footer-actions .btn{padding:11px 13px;font-size:16px}.footer-actions .quiet{font-size:16px;padding:10px 7px}.footer-actions .btn svg{width:17px}.rule-builder .btn{font-size:16px;flex:1;padding:10px}.rule-builder>div{gap:8px;flex-direction:column}.classification-plants{gap:9px;padding:20px 0}.plant-card{width:33%;padding:9px}.plant-card svg{height:88px}.plant-card strong{font-size:16px}.plant-card small{font-size:14px}.sort-bins{gap:10px}.sort-bin{padding:12px;min-height:158px}.bin-title{font-size:16px;display:block}.bin-title small{display:block;margin-top:5px}.placed-label{font-size:16px;padding:6px 8px}.empty-label{font-size:16px}.inline-tip{font-size:16px;padding:11px}.season-scene{height:260px}.season-caption{font-size:16px}.evidence-cards,.large-text .evidence-cards{grid-template-columns:repeat(2,1fr)}.claim{font-size:19px}.evidence-card{padding:10px}.evidence-card p{font-size:16px}.explanation-slot{min-height:85px}.experiment-stage{height:285px}.hyacinth{width:63%;left:1%;height:210px;top:66px}.cross-section{right:10%;width:77px;top:70px}.cross-section.magnified{transform:scale(1.2)}.cross-section span{font-size:14px}.experiment-tools{gap:7px}.experiment-tools .btn{font-size:16px;min-height:48px;padding:9px 10px}.phenomenon{font-size:16px;bottom:14px}.water-level span{font-size:14px}.habitat-options{gap:7px}.habitat-options .choice{padding:12px 9px}.habitat-options strong{font-size:16px}.reason-box label{font-size:16px}.reason-box select{font-size:16px;text-overflow:ellipsis}.terrain-tools{gap:6px}.terrain-tools .btn{font-size:16px;padding:9px 10px}.garden-frame{padding:7px;overflow-x:auto;overscroll-behavior-x:contain}.garden-grid{gap:3px;min-width:303px}.garden-cell{min-width:48px;min-height:48px;border-radius:5px}.garden-cell svg{max-height:48px}.placement-info{display:block}.placement-info>span{display:block;max-width:none;margin-bottom:9px}.design-story h2{font-size:18px}.design-story p{font-size:16px}.design-layout{grid-template-columns:1fr;margin:15px 0}.bag-preview svg{height:180px}.parts-menu{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}.parts-menu fieldset{margin-bottom:0}.parts-menu legend{font-size:16px}.parts-menu .btn{font-size:16px;min-height:56px}.feature-link{font-size:16px;padding:13px;gap:10px}.test-stage{flex-direction:column;padding-top:45px;min-height:365px}.test-stage>svg{width:75%;height:205px}.test-result-cloud{max-width:none;gap:6px;width:100%}.test-result-cloud>div{padding:10px 13px;font-size:16px}.test-controls{gap:9px}.test-controls .btn{font-size:16px;padding:11px 15px}.report-evidence{grid-template-columns:repeat(2,1fr);margin-top:25px;gap:12px}.report-card{padding:18px 13px}.report-card h3{font-size:16px}.report-icon{width:57px;height:57px;margin-bottom:14px}.report-card small{font-size:12px}.report-card p{font-size:16px}.report-card b{font-size:16px;margin-top:15px}.report-banner{display:block;padding:17px}.report-banner>div{font-size:16px}.report-banner>.btn{margin-top:15px;width:100%}.final-modules{grid-template-columns:1fr}.final-module{padding:20px}.final-module p{font-size:16px}.final-module h2{font-size:20px}.ending h1{font-size:26px}.ending-top p{font-size:16px}.ending-results{grid-template-columns:1fr}.ending-invention>svg{height:200px}.certificate{padding:27px 21px}.certificate h2{font-size:21px}.certificate p{font-size:16px}.certificate>div{gap:12px;font-size:16px}.certificate b{margin-left:3px}.ending-actions{gap:8px}.ending-actions .btn{font-size:16px;padding:12px 16px}dialog{padding:23px}dialog h2{font-size:22px}.intro-dialog p{font-size:16px}.intro-dialog .mascot-wrap,.reward .mascot-wrap{width:90px;height:155px}.intro-steps{font-size:16px;gap:9px}.reward h3{font-size:19px}.reward p{font-size:16px}.toast{font-size:16px;bottom:auto;padding:14px 18px}.large-text .mission-prompt p{font-size:21px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
.topbar{position:sticky;top:0;gap:14px}.header-left{display:flex;align-items:center;gap:22px;min-width:0}.topbar .page-navigation,.topbar .header-tools{display:flex;gap:8px;flex-shrink:0}.page-navigation .btn,.header-tools .icon-btn{width:48px;height:48px;min-width:48px}.header-left .wordmark{cursor:default}.admin-hint{font-size:16px;color:var(--muted)}.admin-page-list{display:grid;grid-template-columns:1fr 1fr;gap:8px}.admin-page-list .btn{font-size:16px;text-align:left;justify-content:flex-start;padding:10px 12px}.activity-footer .footer-actions{flex-wrap:wrap;justify-content:flex-end}
@media(max-width:1050px){.topbar .subject{display:none}.header-left{gap:15px}}
@media(max-width:650px){.header-left .wordmark{display:none}.topbar{padding:0 14px}.topbar .header-tools>.quiet{width:48px;height:48px;padding:0}.topbar .header-tools>.quiet span{display:none}.topbar .icon-btn{width:48px;min-width:48px;height:48px;border:1px solid var(--line);background:#fffef6}.topbar .page-navigation,.topbar .header-tools{gap:6px}.admin-page-list{grid-template-columns:1fr}.activity-footer .footer-actions{max-width:100%;width:100%;margin-left:auto}.activity-footer .footer-actions .quiet{display:none}}
@media print{.topbar,.ending-top,.ending-actions,.toast,.ending-results,dialog{display:none!important}body{background:white}.ending{padding:30px;max-width:none}.certificate{margin:50px 0;padding:70px 40px;break-inside:avoid;print-color-adjust:exact}.certificate h2{font-size:32px}.certificate p{font-size:18px}.certificate>div{font-size:16px}.certificate:after{content:'관찰 · 분류 · 실험 · 정원 설계 · 발명';display:block;margin-top:45px;color:#6a8354}body:has(dialog[open]) dialog{display:none!important}}

/* Comfortable controls and layout safeguards. */
.activity-grid>*,.map-layout>*,.final-modules>*,.ending-results>*{min-width:0}
.check-row{align-items:flex-start;line-height:1.7}.check-row>span{flex-shrink:0;margin-top:3px}
.btn:focus-visible,.plant-card:focus-visible,.garden-cell:focus-visible{position:relative;z-index:4}
.btn.quiet,.btn.soft,.btn.choice{min-width:48px}.btn[aria-pressed=true]{border-width:2px}
.specimen-hotspots .btn{max-width:100%}.mission-prompt>div:not(.mascot-wrap){min-width:0}
.notebook>.check-row,.notebook>.chain-text,.notebook>.test-entry,.notebook>.microcopy{grid-column:1/-1}
@media(max-width:1150px){.toast{top:88px}.activity .specimen-hotspots{top:auto;bottom:8px;right:8px}.activity .specimen-label{top:8px}.design-layout{grid-template-columns:minmax(0,1fr) 210px}}
@media(max-width:850px){.specimen-art{max-width:80%}.activity-footer{flex-wrap:wrap}.footer-actions{margin-left:auto}.report-card h3{min-height:0}.home-missions strong{font-size:14px}.report-evidence{align-items:stretch}}
@media(max-width:560px){.topbar{height:64px}.toast{top:76px;padding:14px 16px;font-size:16px;max-width:calc(100vw - 24px);width:max-content}.activity-heading{align-items:flex-start}.activity-heading h1{font-size:22px}.page-number{white-space:nowrap}.page-heading{flex-wrap:wrap}.recovery{width:100%;display:flex;align-items:center;gap:12px;padding-top:0}.recovery strong{font-size:24px}.recovery .meter{flex:1}.mission-prompt .mascot-wrap{width:38px}.home-bottom .home-missions>div{flex-direction:row;flex-wrap:wrap;justify-content:flex-start;gap:4px 10px}.home-missions small{display:none}.home-missions strong{text-align:left}.mission-mini{flex-shrink:0}.classification-plants{gap:8px}.plant-card{min-width:0;padding:9px 5px}.plant-card small{text-align:center;font-size:12px}.plant-card strong{font-size:15px}.bin-title{font-size:17px}.sort-bin{min-height:180px}.sort-bins{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.evidence-card p{font-size:16px}.specimen-hotspots{gap:6px}.specimen-hotspots .btn{font-size:14px;padding:10px 8px}.design-layout{grid-template-columns:1fr}.comparison{grid-template-columns:1fr;text-align:center}.comparison>div{grid-row:auto}.comparison strong{text-align:center}.comparison .btn{justify-self:center}.dialog-actions{flex-wrap:wrap}.dialog-actions .btn{flex:1}.intro-dialog,.reward{flex-direction:column}.intro-dialog .mascot-wrap,.reward .mascot-wrap{height:135px;width:90px}.intro-steps{font-size:14px;gap:6px;padding:12px 8px}.ending-actions{flex-wrap:wrap}.readonly .garden-grid{min-width:0}.readonly .garden-cell{min-width:0}.final-module .garden-cell{min-width:0;min-height:0}.certificate>div{flex-wrap:wrap;gap:12px}.large-text .parts-menu{grid-template-columns:1fr}}
@media(max-height:600px) and (min-width:561px){.topbar{position:relative;height:64px}.activity-footer{position:relative}.mission-prompt{min-height:76px}.home-scene{min-height:510px}.toast{top:12px}}

