.child-app-room{background:#fff}.nest-shell{--nest-blue:#347fe0;--nest-ink:#4b2c23;color:#315071;background:#fff;flex-direction:column;height:100dvh;min-height:660px;font-family:Microsoft YaHei,PingFang SC,sans-serif;display:flex;overflow:hidden}.nest-shell button{font-family:inherit}.nest-topbar{z-index:20;background:#fffaf5;flex:none;align-items:center;gap:18px;height:78px;padding:7px 29px;display:flex;position:relative;box-shadow:0 2px 9px #9a6d3c16}.nest-home-icon{filter:drop-shadow(0 2px 1px #4773a5aa);background:0 0;flex:none;width:58px;height:58px;padding:0;font-size:44px;line-height:1}.nest-title{flex:1;align-items:baseline;gap:27px;min-width:0;display:flex}.nest-title h1{white-space:nowrap;color:var(--nest-ink);letter-spacing:.04em;margin:0;font-size:clamp(29px,2.8vw,45px);font-weight:950;line-height:1.1}.nest-title p{white-space:nowrap;color:#704c3d;margin:0;font-size:clamp(12px,1vw,17px);font-weight:750}.nest-top-actions{flex:none;align-items:center;gap:clamp(12px,2vw,30px);display:flex}.nest-coins{color:#653b27;background:#fff1da;border:1px solid #f4d7ab;border-radius:99px;justify-content:space-between;align-items:center;min-width:150px;height:45px;padding:3px 4px 3px 3px;font-size:20px;display:flex;box-shadow:inset 0 2px 2px #fff9ed}.nest-coins span{color:#fff9cc;text-shadow:0 1px 2px #b87208;background:linear-gradient(#ffda45,#ed990d);border:3px solid #fff6d1;border-radius:50%;place-items:center;width:39px;height:39px;font-size:25px;display:grid;box-shadow:0 1px 3px #aa661d9c}.nest-coins strong{font-size:19px}.nest-coins b{color:#fff;background:linear-gradient(#57a9ff,#2471d3);border:2px solid #eff8ff;border-radius:50%;place-items:center;width:37px;height:37px;font-size:30px;line-height:1;display:grid;box-shadow:0 2px 3px #3b72a55e}.nest-nav-action{white-space:nowrap;color:#4c2f25;background:0 0;align-items:center;gap:8px;padding:8px 3px;font-size:17px;font-weight:900;display:flex}.nest-nav-action span{font-size:29px;line-height:1}.nest-nav-action:hover,.nest-nav-action:focus-visible{color:#2579d0}.nest-settings-wrap{position:relative}.nest-settings-menu{z-index:30;background:#fff;border:1px solid #dbe9fc;border-radius:13px;gap:4px;min-width:185px;padding:10px;display:grid;position:absolute;top:50px;right:0;box-shadow:0 10px 30px #31598335}.nest-settings-menu p{color:#5c7692;margin:5px 7px;font-size:12px}.nest-settings-menu button{text-align:left;color:#315071;background:#f5f9ff;border-radius:8px;padding:10px;font-size:13px;font-weight:800}.nest-main{flex:1;grid-template-columns:minmax(0,71%) minmax(0,29%);gap:10px;min-height:0;padding:0 10px 0 0;display:grid}.nest-scene{isolation:isolate;background:#d8a770 url(/art/room-base-final.webp) 50%/cover no-repeat;border-radius:0 18px 18px 0;min-width:0;min-height:0;position:relative;overflow:hidden}.nest-scene-item{cursor:pointer;touch-action:manipulation;background:0 0;border:0;margin:0;padding:0;transition:filter .17s,transform .17s;display:block;position:absolute}.nest-scene-item:disabled{cursor:default;opacity:1}.nest-scene-item:hover:not(:disabled){filter:drop-shadow(0 0 9px #fff4c8)}.nest-scene-item:focus-visible{border-radius:16px;outline:3px dashed #fff}.nest-scene-item img{object-fit:contain;pointer-events:none;filter:drop-shadow(0 9px 5px #5b3a292e);width:100%;height:100%;display:block}.nest-scene-item.is-ghost img{opacity:.54;filter:drop-shadow(0 0 12px #fff7cb)}.nest-scene-map-rug{z-index:1;width:55%;height:48%;top:52%;left:28%}.nest-scene-map-rug img,.nest-scene-bear-rug img{object-fit:fill}.nest-scene-bear-rug{z-index:1;width:22%;height:18%;top:77%;left:0}.nest-scene-leaf-art{z-index:2;width:13%;height:27%;top:15%;left:79%}.nest-scene-book-shelf{z-index:3;width:24%;height:60%;top:6%;left:60.5%}.nest-scene-book-shelf img{transform:scale(1.1)}.nest-scene-starter-desk{z-index:4;width:27%;height:34%;top:30%;left:42%}.nest-scene-starter-desk img{object-fit:fill}.nest-scene-wood-chair{z-index:5;width:17%;height:27%;top:42%;left:51%}.nest-scene-wood-chair img{object-fit:fill;transform:scaleX(-1)}.nest-scene-star-lamp{z-index:6;width:10%;height:15%;top:37%;left:35%}.nest-scene.desk-present .nest-scene-star-lamp{width:8%;height:13%;top:33%;left:45%}.nest-scene-green-plant{z-index:6;width:21%;height:31%;top:39%;left:74%}.nest-scene-star-nightlight{z-index:7;width:6%;height:9%;top:41%;left:39%}.nest-scene.desk-present .nest-scene-star-nightlight{width:5%;height:7%;top:39%;left:61%}.nest-marker{color:#fff;pointer-events:none;text-shadow:0 2px 3px #6b4c35;white-space:nowrap;flex-direction:column;align-items:center;gap:0;font-weight:900;display:flex;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%)}.nest-marker>span{background:#8f61383d;border:3px dashed #fff;border-radius:50%;place-items:center;width:clamp(40px,5vw,82px);height:clamp(40px,5vw,82px);font-size:clamp(28px,3.3vw,57px);line-height:1;display:grid}.nest-marker small{color:#674a37;text-shadow:none;background:#fff9ef;border-radius:99px;margin-top:-2px;padding:5px 11px;font-size:clamp(10px,1vw,15px);box-shadow:0 3px 7px #6e4b3628}.nest-scene.showcase .nest-scene-book-shelf .nest-marker{top:19%;left:0}.nest-scene.showcase .nest-scene-leaf-art .nest-marker{top:55%}.nest-scene.showcase .nest-scene-green-plant .nest-marker{top:88%;left:100%}.nest-scene.showcase .nest-scene-map-rug .nest-marker{top:50%;left:40%}.nest-showcase-note{z-index:10;color:#58432e;background:#fff7e8e8;border-radius:99px;padding:8px 14px;font-size:13px;font-weight:800;position:absolute;bottom:22px;left:24px}.nest-catalog{background:#d9ecff;border-radius:18px 0 0 18px;flex-direction:column;gap:9px;min-width:0;min-height:0;padding:16px 8px 8px;display:flex;box-shadow:inset 0 0 15px #93c2f04c}.nest-tabs{grid-template-columns:repeat(3,1fr);gap:9px;padding:0 9px;display:grid}.nest-tabs button{color:#315b93;background:#f7fbff;border-radius:14px;height:51px;font-size:18px;font-weight:900;box-shadow:0 2px 7px #8eb8e53b}.nest-tabs button.active{color:#fff;background:linear-gradient(#59a6f7,#2c75db)}.nest-categories{background:#fff;border-radius:18px;grid-template-columns:repeat(6,minmax(0,1fr));gap:4px;padding:6px;display:grid}.nest-categories button{color:#3c6594;background:#f6faff;border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:2px;min-width:0;height:70px;font-size:11px;font-weight:800;display:flex}.nest-categories button span{font-size:27px;line-height:1}.nest-categories button.active{background:#e3f2ff;outline:2px solid #3c85e9}.nest-cards{scrollbar-width:thin;flex:1;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:minmax(155px,1fr);gap:8px;min-height:0;padding:0 1px 1px;display:grid;overflow-y:auto}.nest-card{color:#31537d;cursor:pointer;background:#fff;border:2px solid #f3f7ff;border-radius:17px;flex-direction:column;justify-content:space-between;align-items:center;gap:4px;min-width:0;padding:5px 4px 9px;display:flex;box-shadow:0 3px 7px #6397cf2e}.nest-card:hover,.nest-card:focus-visible,.nest-card.selected{border-color:#3488f2;outline:0}.nest-card-art{flex:1;place-items:center;width:100%;min-height:0;display:grid;overflow:hidden}.nest-card-art img{object-fit:contain;width:100%;max-width:96%;height:100%;max-height:100%}.nest-card strong{white-space:nowrap;text-overflow:ellipsis;width:100%;font-size:clamp(11px,.95vw,15px);line-height:1.25;overflow:hidden}.nest-owned,.nest-price{border-radius:99px;min-width:83%;padding:3px 4px;font-size:clamp(10px,.9vw,14px);font-weight:900;display:block}.nest-owned{color:#278c40;background:#e4f9e4}.nest-price{color:#3c597e;background:#fff3e5}.nest-price b{color:#e6a20e}.nest-empty{color:#5c7897;text-align:center;grid-column:1/-1;align-self:center;font-weight:800}.nest-footer{background:#fff;border-top:1px solid #f3f0e9;flex:none;justify-content:space-between;align-items:center;gap:16px;min-height:112px;padding:13px 26px;display:flex}.nest-footer p{color:#375b93;background:#eaf3ff;border-radius:99px;flex:1;align-items:center;gap:4px;max-width:700px;min-height:64px;margin:0;padding:12px 17px;font-size:clamp(12px,1.1vw,17px);font-weight:700;display:flex}.nest-footer p>span{margin-right:6px;font-size:34px;line-height:1}.nest-footer p strong{white-space:nowrap}.nest-footer-actions{align-items:center;gap:12px;display:flex}.nest-footer-actions button{white-space:nowrap;border-radius:22px;min-width:clamp(145px,13vw,230px);height:66px;font-size:clamp(15px,1.35vw,22px);font-weight:900;box-shadow:0 3px 5px #719bc643}.nest-soft{color:#315f9d;background:linear-gradient(#e8f3ff,#d4eaff);border:1px solid #b8d7ff}.nest-soft.active{background:#b9d7fc}.nest-save{color:#fff;background:linear-gradient(#ffad59,#ff872f);border:1px solid #f58927}.nest-footer-actions button:disabled{opacity:.58;cursor:not-allowed;box-shadow:none}@media (width<=1220px){.nest-title{gap:12px}.nest-title p{display:none}.nest-main{grid-template-columns:minmax(0,68%) minmax(0,32%)}.nest-footer{flex-wrap:wrap}.nest-footer p{max-width:none}.nest-footer-actions{flex:1;justify-content:flex-end}}@media (width<=900px){.nest-shell{height:auto;min-height:100dvh;overflow:visible}.nest-topbar{gap:8px;padding:8px 14px}.nest-home-icon{width:42px;height:42px;font-size:32px}.nest-title h1{font-size:30px}.nest-top-actions{gap:12px}.nest-nav-action{gap:3px;font-size:13px}.nest-nav-action span{font-size:23px}.nest-coins{min-width:108px;height:38px;font-size:15px}.nest-coins span,.nest-coins b{width:31px;height:31px;font-size:22px}.nest-main{flex-direction:column;gap:8px;padding:0;display:flex}.nest-scene{aspect-ratio:1513/1040;border-radius:0 0 14px 14px;width:100%;min-height:0}.nest-catalog{border-radius:16px;margin:0 8px;padding:10px}.nest-cards{grid-auto-rows:155px;min-height:430px}.nest-footer{padding:10px}}@media (width<=570px){.nest-topbar{flex-wrap:wrap;gap:3px;height:auto;min-height:106px}.nest-title{flex:1}.nest-title h1{font-size:29px}.nest-top-actions{justify-content:space-between;gap:2px;width:100%}.nest-nav-action{font-size:11px}.nest-nav-action span{font-size:19px}.nest-coins{min-width:98px}.nest-scene{background-position:50%}.nest-marker>span{border-width:2px;width:35px;height:35px;font-size:27px}.nest-marker small{padding:2px 4px;font-size:8px}.nest-categories button{height:56px;font-size:9px}.nest-categories button span{font-size:18px}.nest-tabs button{height:42px;font-size:14px}.nest-cards{grid-auto-rows:130px;gap:5px;min-height:390px}.nest-card{border-radius:11px}.nest-card strong{font-size:10px}.nest-owned,.nest-price{font-size:9px}.nest-footer p{border-radius:16px;width:100%;min-height:42px;padding:7px 10px;font-size:11px}.nest-footer p>span{font-size:23px}.nest-footer-actions{gap:5px;width:100%}.nest-footer-actions button{border-radius:12px;flex:1;min-width:0;height:47px;padding:0 3px;font-size:11px}}@media (prefers-reduced-motion:reduce){.nest-scene-item{transition:none}}.child-app-map{background:#f5ecdb}.child-app-map .child-topbar,.child-app-map .child-nav{background:#fffaf1}.chart-page{color:#284e61;max-width:1600px;margin:auto;padding:25px 22px 22px}.chart-heading{justify-content:space-between;align-items:end;gap:20px;margin:0 4px 19px;display:flex}.chart-heading h1{color:#3b2b24;letter-spacing:.03em;margin:0 0 8px;font-size:clamp(32px,3vw,48px);font-weight:950;line-height:1.08}.chart-heading p{color:#6e6556;margin:0;font-size:15px;font-weight:700}.chart-count{color:#80613d;background:#fff8e8;border:1px solid #e9cc96;border-radius:15px;flex:none;align-items:baseline;gap:8px;padding:10px 16px;font-size:13px;font-weight:800;display:flex;box-shadow:0 3px #ddbd84}.chart-count strong{color:#a75e22;white-space:nowrap;font-size:25px}.chart-count small{font-size:12px}.chart-layout{grid-template-columns:minmax(0,1fr) 330px;align-items:stretch;gap:16px;display:grid}.chart-map{isolation:isolate;background:#6db7cb url(/art/star-chart-archipelago-v1.webp) 50%/100% 100% no-repeat;border:7px solid #f5e4be;border-radius:27px;min-width:0;height:clamp(590px,69vh,720px);position:relative;overflow:hidden;box-shadow:0 15px 35px #5c644d4d,inset 0 0 0 1px #fffae3}.chart-map:before{content:"";pointer-events:none;background:linear-gradient(90deg,#162d240d,#0000 21% 75%,#18395e16),linear-gradient(#0000 73%,#12374e18);position:absolute;inset:0}.chart-route-lines{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.chart-route-lines path{fill:none;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.chart-route-outline{stroke:#24557191;stroke-width:10px;stroke-dasharray:1 0}.chart-route-main{stroke:#fff9e6;stroke-width:5px;stroke-dasharray:2 12;filter:drop-shadow(0 1px 3px #225878)}.chart-route-open{stroke:#ffdf75;stroke-width:7px;stroke-dasharray:3 11;filter:drop-shadow(0 0 7px #fff2b5)}.chart-route-branch{stroke:#adf0db;stroke-width:4px;stroke-dasharray:2 9;filter:drop-shadow(0 1px 2px #1f696e)}.chart-route-branch.open{stroke:#b3ffe0;stroke-width:6px;filter:drop-shadow(0 0 6px #d5fff0)}.chart-waypoint{z-index:2;color:#354f61;text-align:center;cursor:pointer;background:0 0;flex-direction:column;align-items:center;gap:2px;width:126px;padding:0;display:flex;position:absolute;transform:translate(-50%,-50%)}.chart-waypoint:hover{z-index:4}.chart-waypoint:focus-visible{outline-offset:5px;border-radius:16px;outline:3px solid #ffd965}.chart-pin{color:#fff;text-shadow:0 1px 3px #335064;background:#627d94;border:3px solid #fdf6e7;border-radius:50%;flex:none;place-items:center;width:46px;height:46px;font-size:21px;font-weight:950;display:grid;box-shadow:0 3px #324e5d,0 5px 13px #143d5e87}.chart-pin svg{color:#e9edf0;width:20px;height:20px}.chart-waypoint.open .chart-pin{color:#784418;text-shadow:none;background:linear-gradient(#ffd85b,#ee9b2a);border-color:#fff8d6;box-shadow:0 3px #a8641b,0 0 0 6px #fff1b854,0 0 25px #fff0a2}.chart-waypoint.current .chart-pin{animation:2.5s ease-in-out infinite chart-glow}.chart-waypoint-copy{white-space:nowrap;background:#fffdf3ed;border:1px solid #d6d9d3;border-radius:12px;gap:2px;max-width:126px;padding:5px 9px 6px;display:grid;box-shadow:0 3px #47667b64,0 7px 17px #173d5a70}.chart-waypoint-copy strong{text-overflow:ellipsis;font-size:12px;font-weight:950;line-height:1.2;display:block;overflow:hidden}.chart-waypoint-copy small{color:#788793;font-size:10px;font-weight:800;line-height:1.2}.chart-waypoint.open .chart-waypoint-copy{color:#493922;background:#fff5d7f5;border-color:#f2c463}.chart-waypoint.open .chart-waypoint-copy small{color:#9c641d}.chart-waypoint.current .chart-waypoint-copy{outline:2px solid #fff2c4}.chart-waypoint.pending.current .chart-pin{box-shadow:0 3px #324e5d,0 0 0 5px #e4f8ffb3,0 0 18px #fff}.chart-waypoint.branch{width:115px}.chart-waypoint.branch .chart-pin{border-width:2px;width:34px;height:34px;font-size:20px}.chart-waypoint.branch .chart-pin svg{width:15px;height:15px}.chart-waypoint.branch .chart-waypoint-copy{max-width:115px;padding:4px 8px}.chart-waypoint.branch .chart-waypoint-copy strong{font-size:11px}.chart-start{z-index:1;color:#4f4328;text-shadow:0 1px 4px #fff;flex-direction:column;align-items:center;display:flex;position:absolute;top:80%;left:5%}.chart-start span{filter:drop-shadow(0 2px 2px #2b6a80);font-size:34px}.chart-start strong{white-space:nowrap;background:#fff7d4ed;border-radius:99px;padding:4px 8px;font-size:11px}.chart-compass{color:#9d6626;text-shadow:0 1px #fff;background:#fff5deaa;border:2px solid #fff9de;border-radius:50%;place-items:center;width:52px;height:52px;display:grid;position:absolute;top:22px;left:23px;box-shadow:0 4px 12px #285b6465}.chart-compass span{font-size:26px;line-height:1}.chart-compass small{font-size:10px;font-weight:900;position:absolute;top:-11px}.chart-detail{background:#fff9e9;border:5px solid #e4bf82;border-radius:23px;flex-direction:column;min-width:0;min-height:0;display:flex;overflow:hidden;box-shadow:0 15px 35px #5c644d36,inset 0 0 0 1px #fff}.chart-detail-picture{background:#7dc0d1 url(/art/star-chart-archipelago-v1.webp) 5% 78%/225% no-repeat;border-bottom:5px solid #e4bf82;flex:none;height:30%;min-height:175px}.chart-detail-body{flex-direction:column;flex:1;padding:22px 23px 19px;display:flex}.chart-detail-status{color:#757b78;background:#e8e5df;border-radius:99px;align-self:start;padding:6px 11px;font-size:11px;font-weight:900}.chart-detail-status.open{color:#a4641c;background:#fff0c4}.chart-chapter{color:#9c6e40;margin:22px 0 5px;font-size:13px;font-weight:900}.chart-detail h2{color:#283f52;margin:0 0 10px;font-size:clamp(24px,2.1vw,31px);line-height:1.22}.chart-subject{color:#765221;background:#fbe7b5;border-radius:10px;align-self:start;max-width:100%;margin:0 0 21px;padding:8px 11px;font-size:13px;font-weight:900;display:inline-block}.chart-description{color:#5b7180;margin:0 0 22px;font-size:14px;line-height:1.7}.chart-enter{color:#633813;background:linear-gradient(#ffe181,#f4ac34);border:2px solid #a96823;border-radius:16px;justify-content:center;align-items:center;gap:17px;min-height:55px;margin-top:auto;font-size:17px;font-weight:950;display:flex;box-shadow:0 4px #b56b21,inset 0 2px #fff9d9}.chart-enter:hover:not(:disabled){filter:brightness(1.04);transform:translateY(-2px)}.chart-enter:disabled{opacity:.64}.chart-enter span{font-size:24px;line-height:1}.chart-waiting{color:#7d806f;text-align:center;background:#f4eee0;border:1px dashed #cec4ad;border-radius:13px;margin-top:auto;padding:16px;font-size:13px;font-weight:900}.chart-evidence{color:#92765a;border-top:1px solid #e6d6b9;margin-top:21px;padding-top:13px;font-size:11px;line-height:1.55}.chart-loading{padding:25px}.chart-legend{color:#66675a;flex-wrap:wrap;align-items:center;gap:17px;margin:17px 5px 0;font-size:12px;font-weight:850;display:flex}.chart-legend span{white-space:nowrap;align-items:center;gap:7px;display:flex}.chart-legend i{border-top:4px dotted #d7ae53;width:24px;height:0;display:block}.chart-legend .legend-branch{border-color:#58bfae}.chart-legend .legend-pending{background:#768993;border:2px solid #9aa9b0;border-radius:50%;width:15px;height:15px}.chart-legend p{margin:0 0 0 auto;font-size:12px;font-weight:700}.chart-mobile-route{display:none}@keyframes chart-glow{50%{filter:drop-shadow(0 0 8px #fff3a7)}}@media (width<=1180px){.chart-layout{grid-template-columns:minmax(0,1fr) 300px}.chart-map{min-height:0}.chart-detail-body{padding:17px}.chart-waypoint{width:109px}.chart-waypoint-copy{max-width:109px}.chart-waypoint-copy strong{font-size:11px}}@media (width<=980px){.chart-page{padding:18px 12px 25px}.chart-layout{grid-template-columns:1fr}.chart-map{aspect-ratio:auto;height:clamp(580px,76vw,680px);min-height:0}.chart-detail{grid-template-columns:32% minmax(0,1fr);min-height:290px;display:grid}.chart-detail-picture{border-bottom:0;border-right:5px solid #e4bf82;height:100%;min-height:0}.chart-detail-body{padding:18px}.chart-chapter{margin-top:10px}.chart-subject{margin-bottom:11px}.chart-description{margin-bottom:12px}.chart-evidence{margin-top:13px}}@media (width<=760px){.chart-heading{align-items:start;margin-bottom:13px}.chart-heading h1{font-size:29px}.chart-heading p{font-size:12px;line-height:1.45}.chart-count{text-align:center;gap:0;padding:6px 9px;display:grid}.chart-count strong{font-size:17px}.chart-count small,.chart-map{display:none}.chart-mobile-route{background:linear-gradient(90deg,#e8f5ebd9,#e8f5ebe6),url(/art/star-chart-archipelago-v1.webp) 36%/cover;border:5px solid #f5e4be;border-radius:22px;gap:0;padding:15px 15px 15px 32px;display:grid;position:relative;overflow:hidden}.chart-mobile-route:before{content:"";border-left:4px dotted #89b9b6;position:absolute;top:24px;bottom:24px;left:54px}.chart-mobile-route .chart-waypoint{text-align:left;flex-direction:row;gap:12px;width:100%;min-height:64px;position:relative;transform:none}.chart-mobile-route .chart-waypoint.branch{width:calc(100% - 23px);margin-left:23px}.chart-mobile-route .chart-waypoint.branch:before{content:"";border-top:3px dotted #58bfae;width:23px;position:absolute;top:50%;left:-21px}.chart-mobile-route .chart-waypoint-copy,.chart-mobile-route .chart-waypoint.branch .chart-waypoint-copy{justify-content:space-between;align-items:center;gap:6px;width:100%;max-width:none;padding:9px 11px;display:flex}.chart-mobile-route .chart-waypoint-copy strong,.chart-mobile-route .chart-waypoint.branch .chart-waypoint-copy strong{font-size:12px}.chart-mobile-route .chart-waypoint-copy small{white-space:nowrap}.chart-mobile-route .chart-pin{width:39px;height:39px;font-size:16px}.chart-mobile-route .chart-waypoint.branch .chart-pin{width:30px;height:30px}.chart-detail{grid-template-columns:1fr}.chart-detail-picture{border-bottom:5px solid #e4bf82;border-right:0;height:135px}.chart-legend{gap:8px 12px}.chart-legend p{flex:100%;margin:0}}@media (prefers-reduced-motion:reduce){.chart-waypoint.current .chart-pin{animation:none}.chart-enter:hover:not(:disabled){transform:none}}.math-stage{color:#f5eedc;background:radial-gradient(at 50% 0,#407a89,#0000 75%),#173e55;border:6px solid #fffaf0;border-radius:27px;flex-direction:column;min-width:0;min-height:430px;padding:18px;display:flex;overflow:hidden;box-shadow:0 17px 32px #2c606335}.math-stage-workshop{background:radial-gradient(at 50% 0,#7e599a,#0000 75%),#353256}.math-stage-supplies{background:radial-gradient(at 50% 0,#4d9e8c,#0000 75%),#215b59}.math-stage-head{color:#d5e9e6;justify-content:space-between;align-items:center;gap:8px;font-size:11px;display:flex}.math-stage-head strong{color:#fff2cc;font-size:20px}.model-caption{text-align:center;margin:28px 0 20px;font-weight:800}.model-groups{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:auto 0 18px;display:grid}.model-group{background:#ffffff12;border:2px solid #efc571;border-radius:15px;min-height:123px;padding:12px;box-shadow:0 5px #101e3838}.model-group.sleeping{border-color:#99b6c455}.model-group.sleeping .model-tokens{opacity:.25;filter:grayscale()}.model-group-label{color:#fff4cf;font-size:12px;font-weight:800}.model-group small{text-align:center;color:#d9eadd;margin-top:7px;font-size:12px;display:block}.model-tokens{flex-wrap:wrap;justify-content:center;align-items:center;gap:6px;min-height:42px;margin-top:9px;display:flex}.harbor-lamp{color:#80511d;background:#ffdb79;border-radius:8px;place-items:center;width:27px;height:35px;font-size:24px;display:inline-grid;box-shadow:0 0 16px #ffda6977}.energy-stone{color:#a4fff1;text-shadow:0 0 7px #53edd8;font-size:24px}.crystal-ten,.crystal-one{color:#33275c;background:linear-gradient(135deg,#d6c2ff,#9b82d6);border:2px solid #ead8ff;border-radius:7px;place-items:center;width:47px;height:29px;font-size:13px;font-weight:900;display:inline-grid;box-shadow:0 3px #37215655}.crystal-one{color:#795e2d;background:#fff0a9;border-color:#fff7d6;border-radius:50%;width:26px;height:26px}.stone-pool{text-align:center;background:#173f4655;border:1px solid #acded263;border-radius:12px;margin-bottom:15px;padding:10px;font-size:14px}.stone-pool strong{color:#fff1b0;font-size:25px}.stone-pool span{font-size:12px}.spare-lamps{border:1px dashed #fff5;border-radius:14px;flex-wrap:wrap;justify-content:center;align-items:center;gap:9px;margin-bottom:18px;padding:12px;font-size:12px;display:flex}.spare-lamps:not(.lit) .harbor-lamp{opacity:.25;filter:grayscale()}.model-legend{justify-content:center;align-items:center;gap:8px;font-size:12px;display:flex}.model-controls{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:auto;display:flex}.model-controls button{min-height:44px}.model-feedback{text-align:center;color:#d3e9e2;margin:17px 0 0;font-size:12px;line-height:1.6}.math-stage.solved{border-color:#f2cc76}.learning-tip{color:#416a62;background:#edf5f0;border-radius:12px;margin-bottom:15px;padding:12px 14px;font-size:13px;line-height:1.7}.learning-tip summary{cursor:pointer;font-weight:800}.learning-tip p{margin:10px 0 0}.mission-next{flex-direction:column;gap:8px;display:flex}.chapter-progress{color:#4c786c;padding:9px 0;font-size:12px;font-weight:800}.chart-task-list{gap:8px;margin:0 0 17px;display:grid}.chart-task-list button{text-align:left;color:#694b2a;background:#fff1cb;border:1px solid #e7c17e;border-radius:12px;justify-content:space-between;align-items:center;gap:7px;min-height:53px;padding:11px 12px;display:flex}.chart-task-list button:hover:not(:disabled){background:#ffe6a4}.chart-task-list strong{font-size:13px}.chart-task-list small{white-space:nowrap;font-size:10px}.chart-detail-picture{height:145px;min-height:145px}.chart-detail-body .chart-chapter{margin-top:12px}.chart-detail-body .chart-description{margin-bottom:13px}.chart-detail-body .chart-evidence{margin-top:auto}.chart-task-list+.chart-evidence{padding-top:12px}@media (width<=760px){.math-stage{border-width:4px;padding:13px}.math-stage-head strong{font-size:17px}.model-group{padding:10px 7px}.model-caption{margin-top:20px;font-size:14px}.model-tokens{gap:4px}.model-controls button{padding:11px 14px;font-size:13px}.harbor-lamp{width:23px;height:30px;font-size:20px}.chart-detail-picture{height:135px;min-height:135px}}@media (width<=540px){.puzzle-actions{flex-direction:column;align-items:stretch}.puzzle-actions>.quiet-button{min-height:44px}.puzzle-actions .mission-next{width:100%;min-width:0}.puzzle-actions button{white-space:normal;overflow-wrap:anywhere;min-height:44px}}.listening-player{text-align:center;background:#fffcf0;border:1px solid #e3d4a6;border-radius:22px;padding:28px 20px}.listening-radio{background:#63a5a3;border:7px solid #3b7574;border-radius:26px;justify-content:center;align-items:center;gap:8px;width:210px;height:138px;margin:0 auto 24px;display:flex;position:relative;box-shadow:0 8px #3b757430}.listening-radio>span{color:#fff0a5;margin-right:12px;font-size:42px}.listening-radio i{background:#e7fffa;border-radius:5px;width:7px;height:25px}.listening-radio i:nth-child(3){height:42px}.listening-radio i:nth-child(4){height:64px}.listening-radio i:nth-child(5){height:44px}.listening-radio.is-playing i{animation:1.1s ease-in-out infinite alternate sound-wave}.listening-radio.is-playing i:nth-child(2n){animation-delay:.3s}.listening-controls{flex-wrap:wrap;justify-content:center;gap:10px;margin:20px 0;display:flex}.listening-controls button{min-height:48px}.listening-controls [aria-pressed=true]{background:#e1f3ec;box-shadow:inset 0 0 0 2px #327576}.listening-state{color:#526e67;min-height:48px;line-height:1.8}.listening-transcript{color:#315d67;background:#f3faf8;border:1px dashed #6d989c;border-radius:12px;min-height:48px;padding:10px 14px}.listening-player small{color:#65766c;margin-top:16px;line-height:1.8;display:block}.listening-error{background:#fff1d5;border-radius:10px;padding:14px;line-height:1.7}.listening-player audio{display:none}@keyframes sound-wave{0%{transform:scaleY(.55)}to{transform:scaleY(1)}}@media (prefers-reduced-motion:reduce){.listening-radio.is-playing i{animation:none}}@media (width<=600px){.listening-player{padding:24px 14px}.listening-controls button{flex:1}.listening-controls{gap:8px}.listening-transcript{width:100%}.listening-controls{grid-template-columns:1fr 1fr;display:grid}.listening-controls .quiet-button{grid-column:1/-1}}.spatial-workshop{color:#344c62;background:linear-gradient(145deg,#e9f5fc,#fff6df);border-radius:20px;padding:12px}.spatial-nav{flex-wrap:wrap;gap:8px;display:flex}.spatial-nav button{color:#405971;min-height:48px;font:inherit;cursor:pointer;background:#fff;border:1px solid #b4cadb;border-radius:12px;padding:8px 12px}.spatial-nav button[aria-pressed=true]{color:#fff;background:#276f9c;border-color:#276f9c}.spatial-nav button:focus-visible{outline-offset:2px;outline:3px solid #e7911e}.spatial-nav button:disabled{opacity:.65;cursor:default}.spatial-task-note{line-height:1.7}.spatial-sources{gap:12px;display:grid}.spatial-sources.paired{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.spatial-sources section{background:#fffcf6;border:1px solid #decba7;border-radius:18px;min-width:0;padding:10px}.spatial-sources h3{text-align:center;color:#6e5430;margin:0;font-size:17px}.spatial-model{width:100%;max-width:420px;min-height:180px;margin:auto;display:block}.spatial-model text{fill:#5b4d33;font-size:13px;font-weight:700}.spatial-cube polygon{stroke:#2e6c90;stroke-width:1px;stroke-linejoin:round}.spatial-footprint{text-align:center;min-height:200px;padding:16px 0}.spatial-footprint>div{justify-content:center;display:flex}.spatial-footprint i,.spatial-profile i{box-sizing:border-box;color:#7b8c9c;text-align:center;background:#fff;border:1px solid #b1c1cf;width:32px;height:32px;font-style:normal;line-height:30px;display:block}.spatial-footprint i.filled,.spatial-profile i.filled{color:#1b5a7b;background:#75bddb;border-color:#377ea2}.spatial-footprint>span{margin:8px 0;font-size:13px;display:block}.spatial-profile{text-align:center;min-height:200px;padding:24px 0 0}.spatial-profile>div{justify-content:center;display:flex}.spatial-profile-column>span{flex-direction:column;display:flex}.spatial-profile-column small{padding-top:8px;display:block}.spatial-profile p{font-size:13px;line-height:1.6}.spatial-plan{background:#fff8ea;border-radius:12px;margin-top:12px;padding:12px}.spatial-plan summary{cursor:pointer;align-items:center;min-height:48px;font-weight:700;display:flex}.spatial-plan summary:focus-visible{outline-offset:2px;outline:3px solid #d58b29}.spatial-plan p{font-size:14px;line-height:1.7}.spatial-learning-note{color:#647681;font-size:13px;line-height:1.7}@media (width<=520px){.spatial-sources.paired{grid-template-columns:1fr}.spatial-workshop{padding:10px}.spatial-nav button{flex:42%}}.subject-switch{flex-wrap:wrap;justify-content:center;gap:12px;padding:12px 20px 20px;display:flex}.subject-switch button{color:#355b65;background:#fffdf7;border:2px solid #d7e5e8;border-radius:18px;min-height:48px;padding:10px 26px;font-weight:800}.subject-switch button[aria-pressed=true]{color:#fff;background:#254c65;border-color:#254c65;box-shadow:0 4px #18384d}.subject-switch button:focus-visible{outline-offset:4px;outline:3px solid #eea528}.explore-stage{--explore:#397b9a;background:linear-gradient(150deg,#edf9ff,#dfeff0);border:2px solid #fff;border-radius:26px;flex-direction:column;min-width:0;padding:26px;display:flex;box-shadow:0 10px 30px #244d6614}.subject-chinese{--explore:#508354}.subject-english{--explore:#316faa}.explore-stage.subject-chinese{background:linear-gradient(145deg,#f1f7e4,#dfeedd)}.explore-stage.subject-english{background:linear-gradient(145deg,#effaff,#dbeafb)}.explore-heading{color:var(--explore);justify-content:space-between;gap:12px;font-size:14px;font-weight:800;display:flex}.explore-heading small{font-weight:500}.explore-stage h2{color:#254b54;margin:24px 0 10px;font-size:28px}.explore-objective{color:#49666b;margin:0 0 22px;line-height:1.7}.reading-scroll{white-space:pre-wrap;color:#354b49;background:#fffdf5;border:1px solid #e6dcc2;border-left:6px solid #d1b176;border-radius:8px 24px 24px 8px;margin:10px 0 30px;padding:26px 30px;font-size:22px;line-height:2;box-shadow:0 10px 16px #6a735712}.reading-scroll[lang=en]{font-size:26px;line-height:1.9}.reading-scroll p{margin:8px 0}.clue-cards{gap:14px;margin:10px 0 30px;display:grid}.clue-cards>div{background:#fffdf7;border:1px solid #d9dfcc;border-radius:16px;padding:16px 20px;box-shadow:0 4px #d3dfd0}.clue-cards span{color:var(--explore);font-size:12px;font-weight:800}.clue-cards p{color:#2f505c;margin:8px 0;font-size:20px;line-height:1.6}.explore-footer{color:#49666b;margin-top:auto;padding-top:22px;font-size:14px;line-height:1.7}.data-board{background:#fff;border-radius:18px;margin:16px 0 32px;padding:22px 16px}.data-board>p{color:#526573;font-size:13px}.bar-row{grid-template-columns:90px 1fr 46px;align-items:center;gap:10px;margin:18px 0;font-size:14px;display:grid}.bar-track{gap:3px;display:flex}.bar-track i{background:#5699ac;border-radius:4px;width:24px;height:28px}.bar-row:nth-child(odd) i{background:#74a16b}.ruler-board{min-height:130px;margin:48px 18px 60px;position:relative}.measuring-rope{background:repeating-linear-gradient(100deg,#b47037,#b47037 4px,#e4b66f 4px 8px);border-inline:3px solid #714620;border-radius:12px;height:12px;position:absolute;top:4px}.ruler-ticks{background:#fff6d2;border-bottom:3px solid #d5b666;height:54px;position:relative;top:30px}.ruler-ticks span{flex-direction:column;align-items:center;font-size:15px;display:flex;position:absolute;transform:translate(-50%)}.ruler-ticks i{background:#78603e;width:2px;height:14px;margin-bottom:6px}.ruler-board>p{color:#586966;font-size:13px;line-height:1.7;position:relative;top:40px}.time-trail{margin:14px 0 30px;padding:0;list-style:none}.time-trail li{align-items:center;gap:20px;padding:18px 0;display:flex;position:relative}.time-trail li:not(:last-child):after{content:"";background:#9fc2c8;width:3px;position:absolute;top:56px;bottom:-18px;left:19px}.time-trail span{color:#367184;z-index:1;background:#fff;border-radius:50%;place-items:center;width:40px;height:40px;font-weight:800;display:grid}.time-trail strong{background:#fffa;border-radius:14px;padding:16px 20px;font-size:18px;line-height:1.5}.transform-lab,.blocks-lab{text-align:center;margin:12px 0 20px}.transform-board{background-color:#fff;background-image:linear-gradient(#e4ecee 1px,#0000 1px),linear-gradient(90deg,#e4ecee 1px,#0000 1px);background-size:20px 20px;border-radius:16px;width:260px;height:200px;margin:0 auto 22px;position:relative}.origin-arrow,.motion-arrow{color:#377e9d;width:40px;height:76px;font:70px/1 sans-serif;transition:transform .6s;position:absolute;top:62px;left:62px}.origin-arrow{color:#0000;-webkit-text-stroke:1px #a0b2bb}.rotation-centre{background:#e89835;border-radius:50%;width:8px;height:8px;position:absolute;top:96px;left:78px}.transform-lab p,.blocks-lab p{color:#526573;font-size:14px;line-height:1.6}.view-toggle{justify-content:center;gap:10px;display:flex}.view-toggle button{background:#fff;border:1px solid #8ab9c4;border-radius:12px;min-height:44px;padding:12px}.view-toggle button[aria-pressed=true]{color:#fff;background:#397b9a}.block-model{justify-content:center;align-items:flex-end;gap:4px;min-height:205px;padding:28px 0 36px;display:flex}.block-column{flex-direction:column;gap:2px;display:flex;position:relative}.model-cube{background:#ebc665;border:2px solid #9c7b2d;width:44px;height:44px;display:block;box-shadow:inset -5px -5px #d9ac49}.block-column small{white-space:nowrap;color:#576670;font-size:12px;position:absolute;bottom:-28px}.top-view .model-cube{background:#8dbea1;border-color:#598568;box-shadow:inset -4px -4px #78a788}.explore-answers{border:0;min-width:0;margin:22px 0;padding:0}.explore-answers legend{color:#315464;margin-bottom:10px;font-size:15px;font-weight:800}.explore-answers label{cursor:pointer;background:#fff;border:2px solid #e2e8e7;border-radius:14px;align-items:center;gap:10px;min-height:48px;margin:8px 0;padding:13px 14px;font-size:16px;line-height:1.5;display:flex;position:relative}.explore-answers label.checked{background:#edf8f2;border-color:#478985}.explore-answers input{opacity:0;width:1px;height:1px;position:absolute}.explore-answers label:focus-within{outline-offset:2px;outline:3px solid #efa540}.explore-answers label:has(input:disabled){cursor:default}.answer-letter{color:#4a737a;background:#eaf0f0;border-radius:50%;flex:0 0 28px;place-items:center;height:28px;font-size:12px;font-weight:800;display:grid}.checked .answer-letter{color:#fff;background:#478985}.language-map{background:radial-gradient(at 0 25%,#d6eac780,#0000 55%),#f6f9ec;border:3px solid #fff;border-radius:32px;max-width:1160px;margin:0 auto 36px;padding:30px 40px;box-shadow:0 8px 32px #41684415}.language-map.subject-english{background:radial-gradient(at 100% 10%,#c9e8f3,#0000 55%),#f0f9fd}.language-map>header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:32px;display:flex}.language-map h1{color:#2f5650;margin:10px 0;font-size:36px}.language-map header p{color:#5b7169;line-height:1.8}.route-badge{white-space:nowrap;color:#486c56;background:#ffffffb8;border:1px solid #c6dabe;border-radius:40px;padding:16px 20px;font-weight:800}.language-trail{grid-template-columns:1fr 1fr;gap:26px 40px;display:grid;position:relative}.language-stop{background:#fffdf5;border:1px solid #dce5d1;border-radius:22px;align-items:flex-start;gap:16px;padding:22px;display:flex;position:relative;box-shadow:0 6px #dce8d3}.language-stop:nth-child(2n){transform:translateY(36px)}.language-stop:after{content:"↓";color:#81a17e;font-size:24px;position:absolute;bottom:-30px;left:35px}.language-stop:nth-last-child(-n+2):after{display:none}.stop-number{color:#fff;background:#669275;border-radius:16px;flex:0 0 42px;place-items:center;height:42px;font-size:20px;font-weight:800;display:grid;box-shadow:0 4px #426a50}.subject-english .stop-number{background:#4d91bc;box-shadow:0 4px #326988}.language-stop>div{flex:1;min-width:0}.language-stop h2{color:#31574e;margin:8px 0;font-size:23px}.language-stop small,.stop-progress{color:#63786c;font-size:12px}.stop-tasks{gap:10px;margin-top:18px;display:grid}.stop-tasks button{text-align:left;color:#34584b;background:#f0f5e9;border:1px solid #d3e1c7;border-radius:12px;align-items:center;gap:10px;min-height:50px;padding:12px;display:flex}.stop-tasks button strong{flex:1;font-size:15px}.stop-tasks button small{white-space:nowrap}.language-note{color:#62746a;margin:70px 0 0;font-size:14px;line-height:1.8}.subject-evidence{grid-template-columns:repeat(3,1fr);gap:16px;margin:24px 0;display:grid}.subject-evidence>div{background:#fff;border:1px solid #dae6e4;border-radius:16px;padding:20px}.subject-evidence strong{color:#345d60;margin-bottom:10px;display:block}.subject-evidence p{color:#526970;margin:0;font-size:14px;line-height:1.8}@media (prefers-reduced-motion:reduce){.motion-arrow{transition:none}}.language-tool{color:#31514d;background:#fffdf5;border:2px solid #d5ddc2;border-radius:20px;min-width:0;margin:10px 0 24px;padding:20px}.language-tool .tool-material{white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 18px;font-size:20px;line-height:1.8}.language-tool header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.language-tool fieldset{border:0;min-width:0;margin:18px 0;padding:0}.language-tool legend{margin-bottom:10px;font-weight:700;line-height:1.6}.tool-options{flex-wrap:wrap;gap:10px;display:flex}.language-tool button{color:#305b48;cursor:pointer;background:#fff;border:2px solid #b6c9b4;border-radius:12px;min-width:48px;min-height:48px;padding:10px 14px;font-size:18px}.language-tool button[aria-pressed=true]{color:#fff;background:#386b52;border-color:#386b52;box-shadow:0 3px #254e3a}.language-tool button:focus-visible{outline-offset:3px;outline:3px solid #bd770b}.language-tool button:disabled,.language-tool fieldset:disabled button{opacity:.55;cursor:default}.language-tool .tool-reset{min-width:88px;font-size:14px}.tool-result{overflow-wrap:anywhere;background:#edf4e6;border-radius:14px;align-items:center;gap:18px;min-height:112px;padding:16px;display:flex}.tool-result p{margin:6px 0;line-height:1.7}.tool-result small{line-height:1.6}.dictionary-character{flex-shrink:0;font-size:52px}.tool-characters button{min-width:58px;font-size:28px}.language-tool .tool-note{color:#506753;margin:16px 0 0;font-size:13px;line-height:1.7}.alphabet-board{border-color:#c0d6e3}.alphabet-options{grid-template-columns:repeat(auto-fit,minmax(48px,1fr));gap:8px;display:grid}.alphabet-options button{color:#2d5876;min-width:0;padding:8px}.alphabet-options button[aria-pressed=true]{background:#2e658a;border-color:#2e658a;box-shadow:0 3px #224d6a}.alphabet-pair{background:#eaf3fa;flex-wrap:wrap;justify-content:center}.alphabet-pair>span{font-size:52px;font-weight:700}.alphabet-pair>p{text-align:center;flex-basis:100%}.alphabet-pair>span[aria-hidden]{color:#5a7891;font-size:24px}@media (width<=700px){.language-tool{padding:16px 12px}.language-tool .tool-material{font-size:18px}.tool-options{gap:8px}.tool-result{gap:12px;padding:12px}.alphabet-options{gap:6px}.dictionary-character{font-size:44px}.subject-switch{gap:6px;padding-inline:10px}.subject-switch button{padding:10px 14px;font-size:14px}.explore-stage{padding:20px 16px}.reading-scroll{padding:18px;font-size:19px;line-height:1.9}.reading-scroll[lang=en]{font-size:23px}.bar-row{grid-template-columns:74px 1fr 40px;gap:6px;font-size:12px}.bar-track i{width:16px;height:24px}.language-map{border-radius:24px;padding:22px 16px}.language-map>header{display:block}.language-map h1{font-size:30px}.route-badge{padding:8px 14px;display:inline-block}.language-trail{grid-template-columns:1fr;gap:28px}.language-stop{gap:12px;padding:18px 12px}.language-stop:nth-child(2n){transform:none}.language-stop:nth-last-child(2):after{display:block}.language-stop:last-child:after{display:none}.language-note{margin-top:36px}.subject-evidence{grid-template-columns:1fr}.transform-board{max-width:100%}.explore-heading{font-size:12px}}.english-dialogue{box-sizing:border-box;color:#173e55;background:#f1fcff;border:2px solid #afdce3;border-radius:20px;width:100%;min-width:0;padding:clamp(12px,2vw,24px)}.dialogue-guide{margin:0 0 16px;font-size:16px;line-height:1.6}.dialogue-turns{gap:12px;margin:0;padding:0;list-style:none;display:grid}.dialogue-turns li{align-items:flex-start;gap:12px;min-width:0;display:flex}.dialogue-line{background:#d3eef4;border-radius:50%;place-items:center;min-width:40px;height:40px;font-size:14px;font-weight:800;display:grid}.dialogue-turns li>div{background:#fff;border:1px solid #b6dae4;border-radius:4px 18px 18px;flex:1;min-width:0;padding:12px 16px}.dialogue-turns li:nth-child(2n)>div{background:#fff9dc;border-color:#e9d99e}.dialogue-turns strong{color:#42566a;font-size:14px}.dialogue-turns p{overflow-wrap:anywhere;margin:6px 0 0;font-size:clamp(20px,2.3vw,26px);line-height:1.55}.dialogue-glossary{border-top:1px dashed #81afbd;margin-top:16px}.dialogue-glossary summary{cursor:pointer;box-sizing:border-box;align-content:center;min-height:48px;padding:8px 4px;font-weight:700;line-height:1.5;display:list-item}.dialogue-glossary summary:focus-visible{outline-offset:3px;border-radius:8px;outline:3px solid #2868db}.dialogue-glossary dl{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:8px;margin:8px 0;display:grid}.dialogue-glossary dl>div{background:#fff;border-radius:10px;min-width:0;padding:10px}.dialogue-glossary dt{overflow-wrap:anywhere;font-size:19px;font-weight:700}.dialogue-glossary dd{margin:4px 0 0;line-height:1.5}.dialogue-glossary>p{font-size:14px;line-height:1.6}.reading-passage{box-sizing:border-box;color:#453725;background:#fffaf0;border:2px solid #e4c78d;border-radius:20px;width:100%;min-width:0;padding:clamp(14px,2.5vw,28px)}.reading-passage header{border-bottom:1px dashed #dbcba9;padding-bottom:12px}.reading-passage header>span{color:#775b31;font-size:14px;font-weight:700}.reading-passage h3{margin:8px 0;font-size:clamp(22px,2.5vw,28px);line-height:1.4}.passage-paragraph{min-width:0;margin:18px 0}.passage-number{color:#68533a;background:#f1e6cf;border-radius:8px;padding:5px 10px;font-size:14px;font-weight:700;display:inline-block}.passage-paragraph p{white-space:pre-line;overflow-wrap:anywhere;text-align:start;margin:9px 0 0;font-size:clamp(20px,2vw,24px);line-height:1.85}.reading-poetry{background:#f5fbf5;border-color:#bcd7bc}.reading-poetry .passage-number{background:#dfeddd}.reading-poetry .passage-paragraph p{line-height:2}.passage-nudge{border-top:1px dashed #dbcba9;margin-bottom:0;padding-top:12px;font-size:15px;line-height:1.7}.review-trail{color:#364955;background:#fcf8ec;border:1px solid #e8dec9;border-radius:26px;max-width:1180px;margin:22px auto 50px;padding:30px}.review-trail>header{border-bottom:2px dashed #dfd5c1;align-items:center;gap:24px;padding:15px 0 28px;display:flex}.review-emblem{color:#b38042;background:#fff;border-radius:24px;flex-shrink:0;place-items:center;width:90px;height:90px;font-size:58px;display:grid;transform:rotate(-8deg);box-shadow:0 7px #eaddc4}.review-trail h1{margin:6px 0 12px;font-size:34px}.review-trail p{line-height:1.8}.review-section{margin:28px 0}.review-section h2{font-size:21px}.review-grid{grid-template-columns:repeat(auto-fit,minmax(245px,1fr));gap:20px;display:grid}.review-postcard{background:#fffefa;border:1px solid #e6d7b9;border-radius:16px;flex-direction:column;align-items:flex-start;padding:22px;display:flex;box-shadow:0 5px #eaddc9}.review-postcard>span{color:#97703d;background:#fff1d0;border-radius:20px;padding:5px 10px;font-size:12px}.review-postcard h3{margin:14px 0 2px;font-size:20px;line-height:1.6}.review-postcard p{color:#6f7d83;flex:1;font-size:14px}.review-postcard button{width:100%;min-height:48px}.review-empty{color:#748088;background:#fffdf7;border:1px dashed #d6c9aa;border-radius:16px;padding:26px}.review-schedule{margin:14px 0;padding:0;list-style:none}.review-schedule li{border-bottom:1px solid #e1e5df;align-items:center;gap:16px;padding:15px 8px;display:flex}.review-schedule li>span:first-child{color:#a47d37;font-size:26px}.review-schedule li>div{flex:1;min-width:0}.review-schedule strong{font-size:15px;line-height:1.6}.review-schedule small{color:#6c7c83;margin-top:5px;line-height:1.7;display:block}.review-schedule .review-period{white-space:nowrap;color:#827552;font-size:12px}.review-footnote{color:#7e827d;font-size:13px}.review-parent-totals{flex-wrap:wrap;gap:20px;padding:14px 0;display:flex}.review-parent-totals strong{color:#267b88;margin-left:7px;font-size:24px}.review-parent>p,.review-parent>small{color:#687d86;line-height:1.8}.review-parent summary{cursor:pointer;padding:12px 0}.review-reminder{color:#70582f;background:#fff9e8;border:1px solid #e5d7b5;border-radius:16px;justify-content:space-between;align-items:center;gap:18px;max-width:1180px;margin:20px auto;padding:16px 24px;display:flex}.review-reminder p{margin:4px 0;font-size:13px}.review-reminder button{white-space:nowrap;min-height:44px}@media (width<=700px){.review-trail{margin:18px 10px;padding:20px}.review-trail>header{align-items:flex-start;gap:16px}.review-emblem{border-radius:15px;width:52px;height:60px;font-size:36px}.review-trail h1{font-size:26px}.review-grid{grid-template-columns:1fr}.review-schedule .review-period{display:none}.review-reminder{flex-direction:column;align-items:flex-start;margin:15px 10px;padding:15px}.review-parent-totals{gap:14px}}.support-trail{color:#304738;background:linear-gradient(135deg,#fffdf4,#eef7ec);border:1px solid #d8e8d3;border-radius:28px;max-width:1200px;margin:24px auto 36px;padding:28px}.support-trail>header{align-items:center;gap:20px;margin-bottom:24px;display:flex}.support-sign{color:#a56322;background:#fff0c9;border:2px solid #ecd395;border-radius:22px;flex:0 0 64px;place-items:center;height:64px;font-size:36px;display:grid;transform:rotate(-6deg)}.support-trail h1{margin:6px 0 10px;font-size:clamp(24px,3vw,34px)}.support-trail p{line-height:1.75}.support-trail>header p{max-width:720px;margin:0}.support-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.support-card{background:#fffefa;border:1px solid #e1deca;border-radius:20px;padding:24px;box-shadow:0 5px #d4dfcf}.support-card-label{color:#8e621f;letter-spacing:.06em;font-size:13px;font-weight:700}.support-card h2{margin:12px 0;font-size:22px}.support-source{color:#596f5f;overflow-wrap:anywhere;font-size:14px}.support-method{background:#f1f6e7;border-left:4px solid #91ad6e;border-radius:14px;gap:12px;padding:16px;display:flex}.support-method>span{padding-top:3px;font-size:23px}.support-method p{margin:0}.support-steps{color:#59705c;flex-wrap:wrap;gap:8px 24px;margin:20px 0;padding-left:20px;font-size:13px;display:flex}.support-card .primary-button{white-space:normal;min-height:48px}.support-progress,.support-wait{font-size:14px}.support-wait{background:#f5f1e6;border-radius:10px;padding:12px}.support-completed{background:#fffefa;border-radius:14px;margin-top:24px;padding:16px}.support-completed summary{cursor:pointer;min-height:28px;font-weight:700}.support-completed li{margin:16px 0}.support-completed li span{margin-top:6px;font-size:14px;display:block}.support-footnote,.support-empty{color:#536758;font-size:14px}.support-footnote{margin-bottom:0}.support-parent-list{gap:10px;margin:16px 0;display:grid}.support-parent-list details{border:1px solid #dae4d7;border-radius:12px;padding:14px}.support-parent-list summary{cursor:pointer;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;min-height:32px;display:flex}.support-parent-list summary span{font-weight:700}.support-parent-list p,.support-parent-list li{overflow-wrap:anywhere;font-size:14px;line-height:1.8}.support-parent>small{line-height:1.7;display:block}.support-invitation{background:#f1f6e7;border-radius:14px;margin-top:16px;padding:16px;line-height:1.7}.support-invitation button{min-height:44px;margin-top:10px}@media (width<=700px){.support-trail{border-radius:20px;margin:16px 0 28px;padding:18px}.support-trail>header{align-items:flex-start;gap:12px}.support-sign{border-radius:14px;flex-basis:42px;height:42px;font-size:26px}.support-grid{grid-template-columns:1fr}.support-card{padding:18px}.support-card h2{font-size:20px}.support-trail>header p{font-size:14px}}@media (width<=760px){.writing-grid{grid-template-columns:1fr;gap:14px}.writing-studio{padding:0 12px 28px}.writing-toolbar{flex-wrap:wrap;font-size:14px}.writing-material,.writing-paper{padding:20px}.writing-material h1{font-size:25px}.writing-material>img{display:none}.writing-paper h2{font-size:19px}.writing-reflection>div{flex-direction:column}.writing-reflection label{font-size:15px}.writing-actions>div{width:100%}.writing-actions button{flex:1;min-height:48px}.writing-history>details{padding:12px}.writing-feedback textarea{width:100%}.writing-count{text-align:left}}.writing-studio{color:#3c5147;max-width:1280px;margin:0 auto;padding:0 20px 40px}.writing-toolbar{justify-content:space-between;align-items:center;gap:12px;padding:16px 0;display:flex}.writing-grid{grid-template-columns:minmax(240px,.8fr) minmax(0,1.3fr);align-items:start;gap:24px;display:grid}.writing-material{background:#eaf3e7;border-radius:24px;padding:30px;position:relative}.writing-material h1{font-size:30px;line-height:1.35}.writing-material p{line-height:1.85}.writing-material>img{object-fit:contain;width:130px;height:160px;margin:14px auto 0;display:block}.writing-letter{background:#fffcf2;border:1px solid #e9d6aa;border-radius:6px 18px 18px 6px;padding:22px;box-shadow:0 6px #dce5d6}.writing-letter>span{color:#8c672a;font-weight:700}.writing-letter p,.writing-text{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.9}.writing-nudge{font-size:14px}.writing-paper{background:#fffef9;border:1px solid #e9dec7;border-radius:22px;padding:28px;box-shadow:0 8px 24px #4b653b0a}.writing-paper h2{margin-bottom:22px;font-size:21px;line-height:1.6}.writing-input{gap:10px;font-weight:700;display:grid}.writing-input textarea{resize:vertical;color:#304334;background:repeating-linear-gradient(#fffdf5,#fffdf5 35px,#eceadf 36px);border:1px solid #d1d9c7;border-radius:12px;width:100%;min-height:240px;padding:14px;font-size:18px;line-height:2}.writing-count{text-align:right;color:#667368;margin:8px 0 26px;display:block}.writing-reflection{border:1px solid #dae3d6;border-radius:12px;margin:18px 0 0;padding:12px}.writing-reflection legend{padding:0 6px;font-weight:700}.writing-reflection p{margin:4px 0 10px;font-size:14px}.writing-reflection>div{flex-wrap:wrap;gap:7px;display:flex}.writing-reflection label{cursor:pointer;background:#f0f4ec;border:1px solid #0000;border-radius:9px;align-items:center;gap:6px;min-height:44px;padding:8px;font-size:13px;display:flex}.writing-reflection label.selected{background:#e1efdd;border-color:#4c8465}.writing-reflection input{accent-color:#447553;width:16px;height:16px;margin:0}.writing-actions{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:22px 0;display:flex}.writing-actions p{max-width:440px;font-size:14px;line-height:1.6}.writing-actions small{color:#6e756d;display:block}.writing-actions>div{flex-wrap:wrap;gap:8px;display:flex}.writing-history{margin-top:18px}.writing-history>details{background:#fffdf7;border:1px solid #e8dfca;border-radius:14px;margin:12px 0;padding:16px}.writing-history summary{cursor:pointer;min-height:36px;line-height:1.6}.writing-history .writing-text{background:#fff;border-radius:10px;padding:18px}.writing-reply{background:#fff5df;border-left:4px solid #cba973;border-radius:0 12px 12px 0;margin:12px 0;padding:12px 18px}.writing-reply p{overflow-wrap:anywhere;margin:6px 0}.writing-feedback{border-top:1px dashed #cfc7b2;margin-top:22px;padding-top:12px}.writing-feedback textarea{min-height:90px}.writing-checks{color:#526755;line-height:1.9}.writing-recovery{background:#fff1cc;border:1px solid #dec994;border-radius:14px;margin-bottom:18px;padding:20px}.writing-recovery button{border-radius:8px;min-height:44px;margin:8px 8px 0 0;padding:10px}.parent-writing .notice-card{margin-bottom:20px}.writing-studio button:focus-visible,.writing-reflection label:focus-within{outline-offset:3px;outline:3px solid #3485bb}.writing-feedback textarea{width:100%;font:inherit;resize:vertical;background:#fffefa;border:1px solid #cddcd5;border-radius:10px;padding:12px;line-height:1.7}.measurement-journal-brief{color:#304e5d;background:#f6fcff;border:1px solid #c9deea;border-radius:16px;min-width:0;margin:16px 0;padding:16px}.measurement-journal-brief h3{margin:0 0 10px;font-size:17px}.measurement-journal-brief li{overflow-wrap:anywhere;margin:8px 0;line-height:1.8}.measurement-journal-brief ul,.measurement-journal-brief ol{padding-left:22px}.measurement-journal-guide{background:#fff;border:1px dashed #b8cfdd;border-radius:12px;padding:12px}.measurement-journal-guide p{margin:6px 0}.measurement-journal-boundary{color:#5b6570;font-size:14px}.measurement-journal-tag{color:#315772;background:#e8f4fc;border-radius:12px;margin:0 0 10px;padding:7px 12px;display:inline-block}.writing-input textarea:focus-visible{outline-offset:3px;outline:3px solid #3485bb}@media (width<=760px){.writing-grid{grid-template-columns:1fr;gap:14px}.writing-studio{padding:0 12px 28px}.writing-toolbar{flex-wrap:wrap;font-size:14px}.writing-material,.writing-paper{padding:20px}.writing-material h1{font-size:25px}.writing-material>img{display:none}.writing-paper h2{font-size:19px}.writing-reflection>div{flex-direction:column}.writing-reflection label{font-size:15px}.writing-actions>div{width:100%}.writing-actions button{flex:1;min-height:48px}.writing-history>details{padding:12px}.writing-feedback textarea{width:100%}.writing-count{text-align:left}}.speaking-brief{background:linear-gradient(150deg,#e3f8f2,#eff6ff)}.voice-workbench{min-width:0}.voice-steps{color:#285f70;flex-wrap:wrap;gap:8px;font-weight:700;display:flex}.voice-steps span{background:#ecf7f5;border-radius:18px;padding:8px 12px}.voice-recorder{text-align:center;background:#f5fcfa;border:2px dashed #a4d6cd;border-radius:24px;margin:20px 0;padding:24px 16px}.voice-orb{color:#fff;background:linear-gradient(145deg,#72c7bd,#31848f);border-radius:50%;place-items:center;width:92px;height:92px;margin:0 auto 14px;font-size:48px;display:grid;box-shadow:0 8px #d7eee8}.is-recording .voice-orb{background:#be6048;animation:1.3s ease-in-out infinite voice-breathe}.voice-recorder h2{font-size:1.3rem}.voice-recorder p{font-size:1rem;line-height:1.6}.voice-playback{background:#edf5ff;border-radius:18px;margin-bottom:24px;padding:18px}.voice-playback audio,.speaking-studio audio,.parent-speaking audio{width:100%;max-width:480px;margin:12px 0;display:block}.voice-playback a{color:#135779;padding:10px 0;font-weight:700;display:inline-block}.voice-playback small{color:#456171;line-height:1.6;display:block}.voice-actions{flex-wrap:wrap;gap:12px;margin:20px 0;display:flex}.voice-actions button{min-height:48px}.voice-connection-note{color:#735331;background:#fff4d9;border-radius:12px;padding:10px}.parent-speaking{margin-top:28px}.parent-speaking .parent-card{margin-top:18px}.parent-speaking summary{cursor:pointer;padding:14px 0;line-height:1.8}@keyframes voice-breathe{50%{box-shadow:0 0 0 12px #be604822}}@media (prefers-reduced-motion:reduce){.is-recording .voice-orb{animation:none}}@media (width<=600px){.voice-recorder{padding:20px 10px}.voice-actions{grid-template-columns:1fr 1fr;display:grid}.voice-steps span{padding:7px 9px;font-size:.9rem}}.spelling-scene{color:#254d4b;background:linear-gradient(155deg,#e8f4f0,#d5eae4);border:1px solid #c1dcd2;border-radius:30px;flex-direction:column;justify-content:center;min-height:430px;padding:clamp(22px,3vw,42px);display:flex}.spelling-scene h2{margin:14px 0;font-size:clamp(26px,3vw,40px)}.spelling-scene p{line-height:1.8}.spelling-clues{grid-template-columns:1fr 1fr;gap:18px;margin:24px 0;display:grid}.spelling-clues article{overflow-wrap:anywhere;background:#fffaf0;border:1px solid #e3d3ac;border-radius:14px;min-width:0;padding:24px 20px;position:relative;box-shadow:0 9px #80aea329}.spelling-clues article:nth-child(2){background:#f8eed7}.spelling-clues small{color:#927135;margin-bottom:12px;font-weight:700;display:block}.spelling-clues h3{min-height:3.2em;margin:0 0 18px;font-size:clamp(19px,2vw,25px);line-height:1.6}.spelling-stamp{float:right;font-size:32px}.spelling-blank{color:#aa9664;letter-spacing:.16em;border-bottom:2px dashed #baa776;padding:12px 0;font-size:24px;display:block}.spelling-note{font-size:15px}.spelling-inputs{gap:20px;margin:24px 0;display:grid}.spelling-inputs label{flex-direction:column;gap:8px;display:flex}.spelling-inputs label>span{color:#687776;font-size:15px;line-height:1.6}.spelling-inputs input{box-sizing:border-box;letter-spacing:.05em;color:#254d4b;background:#fffdf6;border:2px solid #c5dcd5;border-radius:14px;width:100%;min-width:0;min-height:60px;padding:16px;font-size:24px}.spelling-inputs input:focus-visible{outline-offset:3px;outline:3px solid #e7ac49}.spelling-inputs input:disabled{opacity:.75}.sound-focus{background:#fff9df;border:1px solid #e2ca88;border-radius:14px;padding:12px 16px}.sound-focus strong{color:#4d6150;font-size:24px}.word-sound-tray{gap:10px;max-width:300px;display:flex}.word-sound-tray>span{text-align:center;background:#fffdf6;border:2px solid #c6dcd5;border-radius:12px;flex:1;gap:6px;padding:8px;display:grid}.word-sound-tray small{color:#687776;font-size:12px}.word-sound-tray b{color:#254d4b;min-height:32px;font-size:26px;font-weight:700}.word-sound-tray .middle-sound{background:#fff4cc;border-color:#d9b860}@media (width<=600px){.spelling-clues{grid-template-columns:1fr;gap:14px}.spelling-scene,.spelling-clues h3{min-height:0}.spelling-clues article{padding:18px}.spelling-inputs input{font-size:22px}}.sentence-workshop{color:#334334;background:linear-gradient(135deg,#fff9e6,#f3fae9);border-radius:26px;padding:clamp(18px,3vw,32px);box-shadow:inset 0 0 0 2px #dce8c6}.sentence-workshop h2{margin:8px 0 14px}.sentence-material{background:#fffdf5;border:1px solid #e6d7ae;border-radius:18px;padding:16px 20px}.sentence-material p{white-space:pre-line;line-height:1.9}.sentence-instruction{font-size:.95rem;line-height:1.7}.sentence-preview{overflow-wrap:anywhere;background:#fff;border:2px dashed #bed1a2;border-radius:18px;padding:24px 18px;font-size:clamp(19px,2vw,26px);line-height:2.5}.sentence-insert{color:#315979;text-align:center;background:#edf5f8;border-bottom:3px solid #a7bfc2;border-radius:7px;min-width:42px;margin:0 3px;padding:0 7px;line-height:1.9;display:inline-block}.sentence-insert.filled{color:#215637;background:#e8f7e7;border-color:#7baf7b}.sentence-gap-list{gap:12px;margin:20px 0;display:grid}.sentence-gap-list fieldset{border:1px solid #ccdab9;border-radius:14px;min-width:0;padding:12px}.sentence-gap-list legend{padding:0 6px;font-weight:700}.sentence-tiles{flex-wrap:wrap;gap:8px;display:flex}.sentence-tiles button{color:#354b36;background:#fff;border:2px solid #d8e3ca;border-radius:12px;min-width:48px;min-height:48px;padding:8px 14px;font-size:1.05rem}.sentence-tiles button[aria-pressed=true]{background:#d9f0de;border-color:#4c9266;box-shadow:0 2px #76a687}.sentence-tiles button:focus-visible{outline-offset:3px;outline:3px solid #3b86d4}.sentence-tiles button:disabled{opacity:.6}.sentence-tiles .sentence-clear{color:#697365;background:#f5f4ed;font-size:.85rem}.sentence-readback{overflow-wrap:anywhere;font-weight:700;line-height:1.8}.sentence-workshop small{color:#55654e;line-height:1.8;display:block}@media (width<=520px){.sentence-preview{padding:16px 10px}.sentence-insert{margin:0 1px}.sentence-gap-list fieldset{padding:10px}}.tally-workshop{box-sizing:border-box;color:#523c27;overflow-wrap:anywhere;background:#fff9e9;border:2px solid #ead7a7;border-radius:24px;min-width:0;padding:clamp(16px,3vw,28px)}.tally-workshop header span{color:#83591f;font-weight:800}.tally-workshop p{line-height:1.8}.tally-records{grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:10px;display:grid}.tally-records button{text-align:left;min-height:86px;color:inherit;background:#fffdf5;border:2px solid #d5c7a6;border-radius:14px;flex-direction:column;gap:5px;padding:12px;display:flex}.tally-records button[aria-pressed=true]{background:#e8f4ea;border-color:#427361}.tally-records small{color:#665c48}.tally-source{border-collapse:collapse;width:100%;padding:0;list-style:none}.tally-source li{border-bottom:1px solid #ddceaa;grid-template-columns:1fr 2fr;gap:12px;padding:14px 0;display:grid}.tally-source th,.tally-source td{overflow-wrap:anywhere;border:1px solid #c8b992;padding:12px}.tally-source caption{padding:12px;font-weight:800}.tally-inputs{border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:20px 0 0;padding:0;display:grid}.tally-inputs legend{margin-bottom:12px;font-weight:800}.tally-inputs label{flex-direction:column;gap:8px;display:flex}.tally-inputs input{box-sizing:border-box;border:2px solid #bfb18b;border-radius:12px;width:100%;min-width:0;min-height:48px;padding:12px;font-size:20px}.tally-inputs button{color:#315548;background:#f5fcf8;border:1px solid #9db5ad;border-radius:12px;width:100%;min-height:48px;margin-top:8px}.tally-inputs button[aria-pressed=true]{background:#dceee5;border-width:2px}.tally-workshop button:focus-visible,.tally-workshop input:focus-visible{outline-offset:3px;outline:3px solid #3379c7}.tally-note{font-size:15px}@media (width<=540px){.tally-inputs,.tally-source li{grid-template-columns:1fr}.tally-source th,.tally-source td{padding:8px}}.reflection-lab{color:#3d3052;background:linear-gradient(145deg,#fffaf1,#f3efff);border:2px solid #ded3f8;border-radius:24px;padding:22px}.reflection-banner{color:#6c4db3;justify-content:space-between;gap:12px;font-weight:800;display:flex}.reflection-banner small{font-weight:500}.reflection-lab h2{margin:16px 0 10px;font-size:24px}.reflection-lab>p{line-height:1.7}.reflection-axis-note{background:#fff;border-radius:12px;padding:10px 14px}.reflection-key{flex-wrap:wrap;gap:10px;margin:14px 0;font-size:14px;font-weight:700;display:flex}.reflection-scroll{border-radius:12px;max-width:100%;padding:3px 3px 12px;overflow:auto}.reflection-scroll:focus-visible{outline-offset:3px;outline:3px solid #654bc2}.reflection-grid{grid-template-columns:repeat(var(--reflection-columns),minmax(48px,1fr));background:#faf8ff;border:2px solid #9880c4;gap:0;width:min(100%,420px);min-width:288px;margin:auto;display:grid}.reflection-cell{color:#75628d;cursor:pointer;min-width:48px;min-height:62px;font:inherit;background:#fff;border:1px solid #d7cbea;border-radius:0;padding:4px 2px;position:relative}.reflection-cell small{font-size:10px;line-height:1.2;display:block}.reflection-cell>span{font-size:23px;line-height:1.4;display:block}.reflection-cell.original{color:#276eaf;opacity:1;background:#e0efff}.reflection-cell.selected{color:#a65b15;background:#ffefd1}.reflection-cell:disabled{cursor:default}.reflection-cell:disabled:not(.original){opacity:.72}.reflection-cell:focus-visible{outline-offset:-4px;z-index:2;outline:3px solid #653d9d}.reflection-cell.axis-vertical{border-right:4px dashed #6c3faa}.reflection-cell.axis-horizontal{border-bottom:4px dashed #6c3faa}.reflection-actions{justify-content:space-between;align-items:center;gap:12px;margin-top:12px;font-weight:700;display:flex}.reflection-actions button{color:#563480;min-height:48px;font:inherit;cursor:pointer;background:#fff;border:1px solid #c6b4df;border-radius:12px;padding:8px 14px}.reflection-actions button:focus-visible{outline-offset:2px;outline:3px solid #654bc2}.reflection-actions button:disabled{opacity:.6;cursor:default}.reflection-kind-note{color:#78648a;font-size:14px}@media (width<=500px){.reflection-lab{padding:12px}.reflection-banner{flex-wrap:wrap}.reflection-lab h2{font-size:21px}.reflection-actions{flex-wrap:wrap}.reflection-cell{min-height:58px}}.measurement-workshop{color:#23445a;background:linear-gradient(150deg,#f4fbff,#fffaf0);border:2px solid #d4e7f6;border-radius:24px;min-width:0;padding:22px}.measurement-heading{align-items:center;gap:12px;display:flex}.measurement-heading>span{font-size:38px}.measurement-heading strong{font-size:22px}.measurement-heading p{margin:5px 0}.measurement-ladder{grid-template-columns:repeat(auto-fit,minmax(min(100%,125px),1fr));gap:8px;padding:0;list-style:none;display:grid}.measurement-ladder li{background:#fff;border:1px solid #c9dfec;border-radius:12px;padding:12px}.measurement-ladder b,.measurement-ladder small{display:block}.measurement-ladder small{color:#4b6576;margin-top:6px;line-height:1.6}.measurement-source{grid-template-columns:repeat(auto-fit,minmax(min(100%,230px),1fr));gap:14px;display:grid}.measurement-source>div{background:#fff;border:2px dashed #90c7d6;border-radius:18px;gap:10px;padding:20px;display:grid}.measurement-source strong{color:#235b75;overflow-wrap:anywhere;font-size:28px}.measurement-source span{line-height:1.6}.measurement-note{color:#506b7c;font-size:14px;line-height:1.8}.measurement-inputs{border:0;grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr));gap:16px;min-width:0;margin:20px 0;padding:0;display:grid}.measurement-inputs legend{margin-bottom:12px;font-weight:700}.measurement-inputs label{gap:8px;min-width:0;display:grid}.measurement-inputs label>span{align-items:center;gap:10px;display:flex}.measurement-inputs input{color:#21455d;box-sizing:border-box;background:#fff;border:2px solid #a6cddf;border-radius:12px;width:100%;min-width:0;max-width:240px;min-height:48px;padding:10px;font-size:22px}.measurement-inputs input:focus-visible{outline-offset:2px;outline:3px solid #f8ba52}.measurement-inputs input:disabled{opacity:.7}.measurement-inputs b{white-space:nowrap}.measurement-inputs p{color:#506b7c;grid-column:1/-1;margin:0;line-height:1.7}.column-lab{color:#423626;background:linear-gradient(150deg,#fff8dc,#fffdf7);border:3px solid #e7c985;border-radius:24px;min-width:0;padding:24px;box-shadow:0 12px #e7c98533}.column-banner{color:#786037;flex-wrap:wrap;justify-content:space-between;gap:12px;font-weight:800;display:flex}.column-banner small{font-weight:500}.column-lab h2{margin:16px 0 8px;font-size:clamp(22px,3vw,30px)}.column-lab p{line-height:1.7}.column-place-picker{flex-wrap:wrap;gap:8px;margin:18px 0;display:flex}.column-place-picker button{color:#554321;min-height:44px;font:inherit;cursor:pointer;background:#fff;border:2px solid #d9c690;border-radius:12px;padding:10px 14px}.column-place-picker button[aria-pressed=true]{color:#19466e;background:#e1efff;border-color:#4689c7}.column-place-picker button:focus-visible,.column-inputs input:focus-visible{outline-offset:3px;outline:3px solid #236fbd}.column-workboard{font-variant-numeric:tabular-nums;background:#fff;border:2px solid #e8d9b1;border-radius:18px;width:min(100%,300px);margin:20px auto;padding:16px}.column-place-labels,.column-top-row,.column-factor-row,.column-result-line,.column-quotient-slots{text-align:center;grid-template-columns:1.15fr repeat(3,1fr);align-items:center;gap:4px;display:grid}.column-place-labels{color:#786c53;margin-bottom:8px;font-size:14px}.column-top-row,.column-factor-row{font-size:clamp(28px,4vw,42px);line-height:1.4}.column-top-row>span:not(:first-child){border-radius:8px;padding:4px 0}.column-top-row .focused{background:#e1efff;box-shadow:inset 0 -3px #6294c4}.column-operator{white-space:nowrap;justify-content:flex-end;align-items:center;font-size:27px;display:flex}.column-operator i{font-size:40px;font-style:normal}.column-result-line{color:#aa9b73;border-top:3px solid #5d553f;margin-top:4px;padding-top:10px;font-size:28px}.column-quotient-slots{color:#aa9b73;padding-bottom:8px;font-size:26px}.column-answer-placeholder{grid-column:2/5;font-size:18px}.division-workboard .column-top-row{position:relative}.division-workboard .column-top-row:before{content:"";border-top:3px solid #5d553f;position:absolute;top:0;left:28%;right:0}.column-focus-note{background:#eef4ff;border:1px solid #bed6ee;border-radius:14px;padding:14px 16px}.column-focus-note p{margin:6px 0 0}.column-kind-note{color:#766649;font-size:14px}.column-inputs{border:0;gap:16px;margin:20px 0;padding:0;display:grid}.column-inputs legend{margin-bottom:14px;font-weight:800}.column-inputs label{gap:8px;font-weight:700;display:grid}.column-inputs input{box-sizing:border-box;color:#163550;font-variant-numeric:tabular-nums;background:#fff;border:2px solid #c6d6e4;border-radius:12px;width:100%;min-height:48px;padding:12px 16px;font-size:24px}.column-inputs p{color:#6e7680;margin:0;font-size:14px}@media (width<=560px){.column-lab{padding:16px}.column-place-picker button{white-space:nowrap;flex:1;padding:10px 8px}.column-workboard{padding:12px}.column-lab h2{font-size:22px}}.pet-workshop{color:#305a61;max-width:1250px;margin:auto;padding:30px clamp(16px,4vw,48px) 55px}.pet-heading{justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px;display:flex}.pet-heading h1{margin:8px 0;font-size:clamp(26px,3vw,40px)}.pet-heading p{color:#648178;margin:0;line-height:1.7}.pet-free-tag{color:#426c58;white-space:nowrap;background:#e5f3e9;border:1px solid #c5dfd2;border-radius:99px;padding:10px 16px;font-size:13px}.pet-layout{grid-template-columns:minmax(0,1.6fr) minmax(285px,1fr);align-items:start;gap:24px;display:grid}.pet-garden{text-align:center;background:radial-gradient(at 50% 20%,#fffce7 0%,#e2f1ea 58%,#c3ded9 100%);border:1px solid #d0e4df;border-radius:30px;padding:26px 22px;position:relative;overflow:hidden;box-shadow:0 12px 25px #516b6118}.pet-sky-stars{letter-spacing:45px;color:#daaf52;pointer-events:none;font-size:25px;position:absolute;inset:35px 0 auto}.pet-sky-stars span{color:#8ab6b4;position:relative;top:35px}.pet-welcome{background:#fffffff2;border-radius:18px;width:fit-content;max-width:90%;margin:0 auto 12px;padding:12px 18px;font-size:14px;line-height:1.7;position:relative;box-shadow:0 4px 16px #43645912}.pet-portrait{transform-origin:50% 85%;width:min(340px,100%);margin:auto;position:relative}.pet-portrait svg{filter:drop-shadow(0 8px 8px #5478791b);width:100%;height:auto;display:block}.pet-gesture-pat{animation:.8s ease-in-out 3 pet-sway}.pet-nameplate{gap:6px;padding:10px 15px;display:grid}.pet-nameplate strong{overflow-wrap:anywhere;font-size:25px}.pet-nameplate span{color:#65827b;font-size:12px}.pet-play-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin:18px 0 5px;display:flex}.pet-play-actions button{color:#79602f;background:#fffaf0;border:1px solid #e4cc9a;border-radius:13px;min-height:46px;padding:12px 20px;font-weight:800}.pet-play-actions button[aria-pressed=true]{background:#f2d89f}.pet-adopt{min-height:46px;margin-top:18px}.pet-story{text-align:left;background:#fffaf0;border:1px solid #e2d2a8;border-radius:16px;margin-top:22px;padding:17px;line-height:1.85}.pet-story h2{margin:0 0 10px;font-size:18px}.pet-story p{font-size:14px}.pet-story small{color:#7b8270;font-size:12px}.pet-dresser{background:#fffdf6;border:1px solid #e3e5d8;border-radius:25px;min-width:0;padding:26px;box-shadow:0 10px 25px #516b6114}.pet-dresser h2{margin:0 0 10px;font-size:22px}.pet-dresser>p,.pet-empty{color:#698078;font-size:14px;line-height:1.8}.pet-dresser form{gap:22px;margin:22px 0;display:grid}.pet-dresser label{gap:9px;font-size:14px;font-weight:700;display:grid}.pet-dresser input{min-height:46px}.pet-dresser fieldset{border:0;min-width:0;margin:0;padding:0}.pet-dresser legend{margin-bottom:10px;font-size:14px;font-weight:700}.pet-options{flex-wrap:wrap;gap:8px;display:flex}.pet-options button{color:#50736d;background:#edf4ef;border:1px solid #d6e4db;border-radius:11px;min-height:44px;padding:11px 13px;font-size:13px}.pet-options button[aria-pressed=true]{color:#fff;background:#315f67;border-color:#315f67}.pet-options button:disabled{opacity:.55}.pet-feedback{background:#eaf5ed;border-radius:12px;padding:12px 15px;font-size:14px;line-height:1.7}.pet-growth{color:#657c73;border-top:1px solid #e3e8de;padding-top:15px;font-size:13px;line-height:1.8}.pet-growth summary{cursor:pointer;align-items:center;min-height:44px;font-weight:700;display:flex}.pet-growth p{margin:7px 0}.pet-parent-note{margin:18px 0}.pet-parent-note details{font-size:13px;line-height:1.8}.pet-parent-note summary{cursor:pointer;align-items:center;min-height:44px;display:flex}@keyframes pet-sway{0%,to{transform:rotate(0)}35%{transform:rotate(-4deg)}70%{transform:rotate(4deg)}}@media (width<=760px){.pet-layout{grid-template-columns:minmax(0,1fr);gap:17px}.pet-heading{flex-direction:column;align-items:start;gap:12px}.pet-dresser{padding:22px}.pet-garden{padding:22px 14px}.pet-sky-stars{letter-spacing:30px}.pet-portrait{width:min(290px,100%)}.pet-workshop{padding-top:22px}.pet-play-actions button{flex:1;max-width:180px}.child-nav button:nth-child(5):last-child{grid-column:1/-1}}@media (prefers-reduced-motion:reduce){.pet-gesture-pat{animation:none}}:root{color:#263946;font-synthesis:none;text-rendering:optimizelegibility;background:#edf4f1;font-family:DM Sans,Noto Sans SC,system-ui,sans-serif}*{box-sizing:border-box}body{min-width:320px;margin:0}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}input,select,textarea{outline:none}input:focus,select:focus,textarea:focus,button:focus-visible{box-shadow:0 0 0 3px #f5b85d80;border-color:#d68c31!important}button{border:0}img{max-width:100%}h1,h2,h3,p{margin-top:0}.eyebrow{letter-spacing:.16em;color:#bd7632;text-transform:uppercase;font-size:12px;font-weight:800}.muted{color:#647583}.tiny-note,.evidence-note,.source-note{color:#71828c;font-size:12px;line-height:1.7}.primary-button{color:#fff;background:#e79a3b;border-radius:14px;padding:13px 24px;font-weight:800;transition:transform .18s,background .18s;box-shadow:0 7px 16px #ad6d2b32}.primary-button:hover:not(:disabled){background:#d88729;transform:translateY(-2px)}.secondary-button{color:#225d65;background:#dfeeea;border-radius:12px;padding:11px 18px;font-weight:800}.quiet-button{color:#536473;background:#fffaf0;border:1px solid #e9d9bd;border-radius:12px;padding:11px 16px;font-weight:700}.form-error,.global-error{color:#9b3a31;background:#fff0eb;border:1px solid #edb9ae;border-radius:10px;padding:10px 14px;font-size:14px}.global-error{justify-content:space-between;margin:12px 24px;display:flex}.global-error button{color:#9b3a31;background:0 0;text-decoration:underline}.info-banner{color:#287663;background:#e2f4ea;border-radius:12px;margin-bottom:18px;padding:12px 16px}.pilot-tag{color:#9b641a;letter-spacing:.02em;white-space:nowrap;background:#fff0d7;border-radius:99px;padding:8px 12px;font-size:12px;font-weight:800}.boot-screen{text-align:center;color:#306775;background:#e4f0ec;place-content:center;min-height:100vh;font-size:18px;display:grid}.boot-star{color:#e7a64e;font-size:60px;animation:2s ease-in-out infinite float}@keyframes float{50%{transform:translateY(-10px)}}.auth-screen{background:#eaf1e5;grid-template-columns:minmax(0,1.45fr) minmax(370px,.75fr);min-height:100vh;display:grid;position:relative;overflow:hidden}.auth-sky{filter:saturate(.88);background:linear-gradient(90deg,#102c33a8 0%,#1d3a3e55 52%,#e9f1e699 73%),url(/art/island-bg.png) 50%/cover;position:absolute;inset:0}.auth-story,.auth-panel{z-index:1;position:relative}.auth-story{color:#fff;flex-direction:column;justify-content:center;min-height:760px;padding:clamp(34px,5vw,78px);display:flex}.logo-mark{letter-spacing:.15em;color:#ffe3a5;margin-bottom:38px;font-size:16px;font-weight:800}.auth-story h1{letter-spacing:-.04em;text-shadow:0 6px 26px #17333e7d;margin-bottom:18px;font-size:clamp(36px,4.2vw,68px);line-height:1.22}.auth-story>p{color:#e5f4f0;max-width:540px;font-size:17px;line-height:1.8}.auth-characters{gap:15px;margin:36px 0 0;display:flex}.auth-characters figure{text-align:center;background:#fffe;border:3px solid #ffffffbd;border-radius:22px;width:140px;height:158px;margin:0;overflow:hidden;transform:rotate(-3deg);box-shadow:0 16px 30px #122c3370}.auth-characters figure+figure{transform:rotate(4deg)translateY(10px)}.auth-characters img{object-fit:contain;object-position:center;width:100%;height:119px}.auth-characters figcaption{color:#365c60;background:#fff5df;padding:4px;font-size:13px;font-weight:800}.auth-panel{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffefaed;border:1px solid #fff;border-radius:28px;align-self:center;margin:28px max(35px,5vw) 28px 0;padding:36px;box-shadow:0 26px 65px #142e3370}.auth-panel-head p{color:#b87a37;margin-bottom:6px;font-size:13px;font-weight:800}.auth-panel-head h2{color:#183943;margin-bottom:5px;font-size:29px}.auth-panel-head span,.auth-foot{color:#7c8a8d;font-size:12px;line-height:1.7}.segmented{background:#eff4f2;border-radius:14px;margin:24px 0;padding:5px;display:flex}.segmented button{color:#748586;background:0 0;border-radius:10px;flex:1;padding:10px;font-weight:800}.segmented button.active{color:#286773;background:#fff;box-shadow:0 3px 10px #536b6b1c}.auth-form{gap:18px;display:grid}.auth-form label,.parent-form label,.data-grid label{color:#475d65;gap:7px;font-size:13px;font-weight:800;display:grid}.auth-form input,.parent-form input,.parent-form select,.data-grid input,.review-form input,.review-form textarea,.place-label select{color:#263946;background:#fff;border:1px solid #d4e2dc;border-radius:11px;width:100%;padding:12px 13px}.auth-form .primary-button{margin-top:2px}.auth-foot{margin:22px 0 0}.child-app{background:#f4f1e8;min-height:100vh}.child-topbar{z-index:2;background:#f9faf6;justify-content:space-between;align-items:center;height:76px;padding:0 clamp(18px,4vw,58px);display:flex;position:relative;box-shadow:0 3px 13px #1c4c4222}.brand{color:#244c57;align-items:center;gap:10px;font-size:20px;font-weight:900;line-height:1.05;display:flex}.brand small{letter-spacing:.08em;color:#9ba8a1;margin-top:7px;font-size:11px;font-weight:700;display:block}.brand-star{color:#e6a545;font-size:34px}.child-status{align-items:center;gap:10px;display:flex}.child-status span{color:#4d6a62;background:#eef5ec;border-radius:99px;padding:8px 14px;font-size:13px;font-weight:800}.child-status button,.sidebar-foot button{color:#7c8e8f;background:0 0;font-size:12px;text-decoration:underline}.child-nav{z-index:2;background:#f9faf6;justify-content:center;gap:8px;padding:8px 15px 12px;display:flex;position:relative}.child-nav button{color:#778987;background:0 0;border-radius:99px;padding:10px 20px;font-weight:800}.child-nav button.selected{color:#fff;background:#275d63}.child-world{background:linear-gradient(90deg,#0e3a41be 0%,#11465331 60%,#e7f1e082 100%),url(/art/island-bg.png) 50% 55%/cover;grid-template-columns:minmax(0,1fr) minmax(340px,420px);min-height:calc(100vh - 128px);display:grid;position:relative;overflow:hidden}.world-glow{filter:blur(60px);background:#f7db7740;border-radius:50%;width:410px;height:410px;position:absolute;top:20%;left:23%}.story-panel{color:#fff;max-width:780px;padding:clamp(32px,6vw,95px) 4vw 30px clamp(30px,6vw,100px);position:relative}.story-panel .eyebrow{color:#ffe2a2}.story-panel h1{letter-spacing:-.04em;text-shadow:0 5px 20px #113638a1;margin:15px 0;font-size:clamp(43px,5vw,80px);line-height:1.13}.story-panel>p{color:#f4f7df;max-width:480px;font-size:17px;line-height:1.8}.story-avatars{gap:7px;height:185px;margin-top:33px;display:flex;position:relative}.story-avatars img{object-fit:contain;background:#fffffff0;border:4px solid #ffffffc4;border-radius:25px;width:145px;height:170px;transform:rotate(-5deg);box-shadow:0 13px 26px #18353773}.story-avatars img+img{height:150px;transform:rotate(6deg)translateY(22px)}.story-dialogue{color:#426064;background:#fff8e6f0;border-radius:18px;padding:12px 20px;font-weight:800;display:inline-block;box-shadow:0 8px 18px #23403733}.today-panel{z-index:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffdf6f2;border-radius:26px;align-self:start;margin:26px clamp(18px,3vw,45px) 26px 0;padding:28px;position:relative;box-shadow:0 22px 45px #173e4755}.panel-title{justify-content:space-between;align-items:start;gap:10px;display:flex}.panel-title h2{color:#264750;margin:4px 0 13px;font-size:24px}.today-panel .muted{font-size:13px;line-height:1.6}.task-list{gap:10px;margin:20px 0;display:grid}.task-card{text-align:left;background:#fff;border:1px solid #e6e9db;border-radius:15px;grid-template-columns:38px 1fr auto;align-items:center;gap:10px;width:100%;padding:14px;transition:transform .18s,border .18s;display:grid;box-shadow:0 4px 12px #61726712}.task-card:hover{border-color:#e9ad5b;transform:translate(-3px)}.task-index{color:#bd8030;background:#f9e6bf;border-radius:10px;place-items:center;width:34px;height:34px;font-weight:900;display:grid}.task-card strong{color:#294e58;font-size:14px;display:block}.task-card small{color:#75878b;margin-top:4px;font-size:11px;line-height:1.5;display:block}.task-state{color:#b77431;white-space:nowrap;font-size:11px;font-weight:800}.mission-screen{background:linear-gradient(#d6eee8,#f8f1df);min-height:calc(100vh - 76px);padding:22px clamp(15px,4vw,55px) 50px}.mission-head{color:#3d666b;justify-content:space-between;align-items:center;gap:12px;max-width:1450px;margin:auto;font-weight:800;display:flex}.mission-story{align-items:center;gap:15px;max-width:1450px;margin:15px auto;display:flex}.mission-story img{object-fit:contain;background:#fff;border-radius:18px;width:82px;height:86px;box-shadow:0 7px 17px #3e6c6d2d}.mission-story div{background:#fffef5;border-radius:18px;padding:13px 19px;box-shadow:0 5px 16px #3e6c6d22}.mission-story small{color:#b77c37;font-weight:900}.mission-story p{margin:4px 0 0;font-size:14px}.mission-layout{grid-template-columns:minmax(0,1.1fr) minmax(340px,.9fr);gap:22px;max-width:1450px;margin:auto;display:grid}.bridge-stage{background:linear-gradient(#83bdc1b8,#99c8c07d),url(/art/island-bg.png) 50%/cover;border:6px solid #fffdf5;border-radius:27px;flex-direction:column;justify-content:space-between;min-height:430px;display:flex;position:relative;overflow:hidden;box-shadow:0 17px 32px #2c606335}.bridge-caption,.bridge-bank{color:#fff;text-shadow:0 2px 8px #255a61;justify-content:space-between;align-items:center;padding:15px 22px;font-size:13px;font-weight:800;display:flex}.bridge-caption strong{font-size:18px}.bridge-bank{color:#fdf5d8}.bridge-canvas,.bridge-fallback{place-items:center;width:100%;height:340px;display:grid}.bridge-canvas canvas{max-width:100%}.puzzle-card{background:#fffef8;border-radius:26px;padding:26px;box-shadow:0 16px 33px #446d6a31}.puzzle-card h2{color:#274d57;margin:12px 0;font-size:24px;line-height:1.5}.puzzle-note{color:#6f8282;font-size:13px;line-height:1.6}.answer-slots{grid-template-columns:1fr 1fr;gap:12px;margin:20px 0;display:grid}.answer-slots label{color:#a1682f;gap:7px;font-size:13px;font-weight:900;display:grid}.answer-slots select{color:#344b4d;background:#fff7e9;border:2px dashed #ddba82;border-radius:12px;width:100%;padding:13px;font-weight:900}.choice-row{flex-wrap:wrap;gap:7px;display:flex}.choice-chip{color:#3a6569;background:#e9f2ee;border-radius:9px;padding:7px 12px;font-size:13px;font-weight:800}.hint-box,.result-box{color:#805d21;background:#fff2cf;border-radius:12px;margin:15px 0;padding:12px 15px;font-size:13px;line-height:1.6}.result-box{color:#9c5838;background:#fff0e5}.result-box.success{color:#356f4b;background:#e6f4e5}.result-box p{margin:5px 0}.result-box small{opacity:.8;display:block}.puzzle-actions{justify-content:space-between;gap:10px;margin:22px 0 8px;display:flex}.evidence-note{display:block}.map-page,.room-page{max-width:1250px;margin:0 auto;padding:45px 25px 70px}.page-intro{text-align:center;max-width:720px;margin:0 auto 32px}.page-intro h1{color:#27525b;margin:8px 0;font-size:clamp(27px,3vw,40px);line-height:1.3}.page-intro p{color:#718486;line-height:1.8}.map-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.map-node{background:#fffdfa;border:1px solid #e8e6d9;border-radius:18px;gap:14px;padding:20px;display:flex;box-shadow:0 6px 16px #637b7210}.map-node.available{background:#fffaf0;border-color:#e9b35e}.map-symbol{color:#c2cdc8;font-size:25px}.map-node.available .map-symbol{color:#daa34a}.map-node small{color:#93a09a;font-size:11px}.map-node h3{color:#35535b;margin:7px 0;font-size:16px}.map-node p{color:#79908b;margin:0 0 12px;font-size:12px}.map-node div>span{color:#ae8348;font-size:11px;font-weight:800}.room-layout{grid-template-columns:minmax(0,1.5fr) minmax(300px,.65fr);gap:20px;display:grid}.room-scene{text-align:center;background:linear-gradient(#bedbd2,#e6d7b8);border:8px solid #fff;border-radius:25px;min-height:480px;padding:25px;box-shadow:0 12px 28px #455e5c26}.room-window{color:#e4ad48;background:#cce9e9;border:7px solid #f5eee0;border-radius:20px;width:200px;margin:0 auto 18px;padding:21px;font-size:24px}.room-pet{flex-direction:column;font-size:27px;display:flex}.room-pet span{color:#587677;font-size:12px}.room-grid{border:2px solid #d3b78e;grid-template-columns:repeat(6,1fr);max-width:500px;margin:28px auto 10px;display:grid}.room-cell{aspect-ratio:1.35;background:#eee2caca;border:1px solid #d3b78e;place-items:center;font-size:23px;display:grid}.room-scene p{color:#5c706c;font-size:12px}.room-shop{background:#fffefa;border-radius:24px;align-self:start;padding:24px;box-shadow:0 11px 25px #556a651b}.shop-list{gap:9px;display:grid}.shop-item{border:1px solid #e8e9e0;border-radius:12px;align-items:center;gap:9px;padding:9px;display:flex}.shop-item>span{font-size:25px}.shop-item div{flex:1}.shop-item strong,.shop-item small{font-size:12px;display:block}.shop-item small{color:#91a09a;margin-top:3px}.shop-item button{color:#457068;background:#e9f1eb;border-radius:9px;padding:7px 9px;font-size:11px;font-weight:800}.shop-item button.selected{color:#fff;background:#39756c}.place-label{flex-wrap:wrap;align-items:center;gap:5px;margin:17px 0;font-size:12px;display:flex}.place-label select{width:auto;padding:6px}.room-shop>.primary-button{width:100%}.parent-app{background:#f2f6f4;grid-template-columns:235px minmax(0,1fr);min-height:100vh;display:grid}.parent-sidebar{color:#dfedeb;background:#1b4048;flex-direction:column;min-height:100vh;padding:30px 17px;display:flex}.parent-brand{align-items:center;gap:9px;padding:0 12px 30px;display:flex}.parent-brand strong,.parent-brand small{display:block}.parent-brand strong{font-size:19px}.parent-brand small{opacity:.65;margin-top:4px;font-size:11px}.parent-sidebar nav{gap:7px;display:grid}.parent-sidebar nav button{text-align:left;color:#bcd0d0;background:0 0;border-radius:12px;padding:13px 16px;font-weight:700}.parent-sidebar nav button.active,.parent-sidebar nav button:hover{color:#fff;background:#36646a}.sidebar-foot{border-top:1px solid #4d7174;gap:10px;margin-top:auto;padding:18px 10px 0;font-size:12px;display:grid}.sidebar-foot button{color:#d1e6e0;text-align:left;padding:0}.parent-main{width:100%;max-width:1500px;margin:auto;padding:38px clamp(22px,4vw,65px) 70px}.parent-header{justify-content:space-between;align-items:center;gap:20px;margin-bottom:28px;display:flex}.parent-header h1{color:#244650;letter-spacing:-.03em;margin:6px 0;font-size:31px}.parent-hero{background:#dce9de;border-radius:24px;justify-content:space-between;align-items:center;min-height:220px;padding:30px 35px;display:flex;overflow:hidden}.parent-hero h2{margin:10px 0;font-size:26px}.parent-hero p{color:#557268;max-width:610px;font-size:13px;line-height:1.75}.parent-hero img{object-fit:contain;background:#fffaf0;border-radius:25px;width:170px;height:170px;transform:rotate(7deg)}.stat-grid{grid-template-columns:repeat(4,1fr);gap:12px;margin:18px 0;display:grid}.stat-card,.parent-card,.notice-card{background:#fff;border:1px solid #e0ebe6;border-radius:18px;padding:23px;box-shadow:0 6px 16px #516b6120}.stat-card small{color:#738d88;display:block}.stat-card strong{color:#2a626a;margin-top:11px;font-size:27px;display:block}.stat-card em{margin-left:4px;font-size:12px;font-style:normal}.parent-card h2{color:#30545a}.evidence-list{display:grid}.evidence-list>div{border-top:1px solid #eef1eb;gap:11px;padding:15px 3px;display:flex}.evidence-list strong,.evidence-list small{display:block}.evidence-list strong{font-size:14px}.evidence-list small{color:#92a09b;margin-top:7px;font-size:11px}.evidence-dot{background:#d9a172;border-radius:50%;flex:none;width:10px;height:10px;margin-top:6px}.evidence-dot.right{background:#71ac86}.empty-note{color:#97a9a2;padding:22px}.source-note{padding:8px 4px}.create-child{max-width:660px}.create-child>p,.settings-card>p{color:#718985;font-size:14px;line-height:1.7}.parent-form{gap:15px;max-width:560px;margin-top:20px;display:grid}.parent-form .primary-button{justify-self:start}.character-choice{color:#526c68;flex-wrap:wrap;align-items:center;gap:10px;font-size:13px;font-weight:800;display:flex}.character-choice button{color:#4e6b65;background:#f7faf7;border:1px solid #d6e5df;border-radius:12px;align-items:center;gap:4px;padding:4px 11px;display:flex}.character-choice button.selected{background:#fff3de;border-color:#d4a665}.character-choice img{object-fit:contain;width:45px;height:50px}.inline-check{align-items:center;gap:7px;font-size:13px;font-weight:600!important;display:flex!important}.inline-check input{width:auto!important}.notice-card{color:#4b5e5c;background:#fff8e8;margin-bottom:17px;line-height:1.8}.notice-card p{margin:5px 0 0;font-size:13px}.course-table{gap:8px;display:grid}.course-row{background:#fff;border:1px solid #e0ebe6;border-radius:13px}.course-row summary{cursor:pointer;align-items:center;gap:13px;padding:16px;list-style:none;display:flex}.course-row summary::-webkit-details-marker{display:none}.course-ordinal{color:#5c8571;background:#e9f2e7;border-radius:9px;padding:7px 9px;font-size:12px;font-weight:800}.course-row summary div{flex:1}.course-row strong,.course-row small{display:block}.course-row summary strong{color:#365b60}.course-row summary small{color:#97a7a2;margin-top:4px;font-size:11px}.status-pill{color:#8a9a95;background:#edf1ef;border-radius:99px;padding:7px 11px;font-size:11px;font-weight:800}.status-pill.pilot{color:#b67d36;background:#fff0d8}.course-detail{border-top:1px solid #edf1ec;padding:18px 24px}.course-detail p,.course-detail small{color:#738c85;font-size:12px;line-height:1.6}.review-form{border-top:1px dashed #dce4dc;gap:12px;max-width:580px;margin-top:17px;padding-top:18px;display:grid}.review-form label{color:#55726c;gap:6px;font-size:12px;font-weight:700;display:grid}.review-form textarea{resize:vertical;min-height:84px}.review-form .secondary-button{justify-self:start}.settings-card{max-width:720px}.data-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.data-grid .parent-card{align-content:start;gap:10px;display:grid}.data-grid p{color:#728a84;font-size:13px;line-height:1.8}.data-grid button{justify-self:start}.danger-button{color:#fff;background:#9c4f49;border-radius:12px;padding:11px 18px;font-weight:800}@media (width<=1000px){.child-world{grid-template-columns:1fr}.story-panel{padding:42px 40px 20px}.today-panel{margin:0 20px 30px}.mission-layout{grid-template-columns:1fr}.map-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=760px){.auth-screen{grid-template-columns:1fr}.auth-story{min-height:auto;padding:40px 25px 15px}.auth-sky{background:linear-gradient(#10363ecb,#29474c8c 55%,#dcebe8b9),url(/art/island-bg.png) 50%/cover}.auth-story h1{font-size:37px}.auth-story>p{font-size:14px}.auth-characters{margin:12px 0}.auth-characters figure{width:92px;height:105px}.auth-characters img{height:75px}.auth-panel{margin:22px;padding:25px}.child-topbar{gap:5px;height:auto;min-height:73px}.child-status{flex-wrap:wrap;justify-content:end}.child-status span{padding:5px 8px;font-size:10px}.child-nav{justify-content:start;overflow:auto}.child-nav button{white-space:nowrap;font-size:12px}.story-panel{padding:35px 25px 15px}.story-panel h1{font-size:40px}.story-panel>p{font-size:14px}.story-avatars{height:120px}.story-avatars img{width:105px;height:118px}.story-avatars img+img{height:105px}.today-panel{padding:20px}.map-grid,.room-layout,.stat-grid,.data-grid,.answer-slots{grid-template-columns:1fr}.mission-head{flex-wrap:wrap}.mission-story img{width:65px;height:70px}.mission-screen{padding:14px}.bridge-stage{min-height:300px}.bridge-canvas{height:230px}.parent-app{grid-template-columns:1fr}.parent-sidebar{min-height:auto;padding:12px}.parent-sidebar nav{display:flex;overflow:auto}.parent-sidebar nav button{white-space:nowrap;padding:9px;font-size:12px}.sidebar-foot{display:none}.parent-main{padding:25px 16px}.parent-header h1{font-size:24px}.parent-hero img{width:95px;height:105px}.parent-hero{padding:22px}.stat-grid{grid-template-columns:repeat(2,1fr)}}.rest-banner{color:#765a31;text-align:center;background:#fff0d8;padding:15px 24px;font-size:14px;font-weight:700}.rest-banner button{color:#fff;background:#d88f38;border-radius:10px;margin-left:12px;padding:7px 12px;font-weight:800}.usage-note{color:#517169;background:#eaf5f0;border-radius:12px;margin:0 0 16px;padding:12px 16px;font-size:12px;line-height:1.7}.cert-card{color:#305d60;background:#e4efeb;border:1px solid #cadecf;border-radius:16px;margin-bottom:17px;padding:18px 22px}.cert-card strong{font-size:16px}.cert-card p{color:#64817a;margin:7px 0;font-size:12px}.cert-card summary{cursor:pointer;font-size:12px;font-weight:800}.cert-card ul{max-height:200px;margin:10px 0 0;padding-left:20px;font-size:12px;line-height:1.7;overflow:auto}.bridge-tools{flex-wrap:wrap;justify-content:center;gap:8px;padding:0 10px;display:flex}.bridge-tools button{color:#38636b;background:#fff7dded;border-radius:9px;padding:7px 12px;font-size:12px;font-weight:800;box-shadow:0 3px 9px #17485540}.bridge-tools button:disabled{color:#3d7d61;opacity:1;background:#cce7d5ed}.child-switch-card{color:#315660;background:#fff8e8;border:1px solid #f3d9a9;border-radius:17px;justify-content:space-between;align-items:center;gap:20px;margin:0 0 12px;padding:17px 22px;display:flex}.child-switch-card strong,.child-switch-card span{display:block}.child-switch-card strong{font-size:16px}.child-switch-card span{margin-top:6px;font-size:12px;line-height:1.6}.child-switch-card button{flex:none}.reset-child{color:#5b766e;margin:0 0 18px;padding:0 14px;font-size:12px}.reset-child summary{cursor:pointer;font-weight:700}.reset-form{max-width:380px;margin:12px 0 15px}.reset-form .secondary-button{justify-self:start}.child-login-hint{color:#326551;background:#e5f4eb;border-radius:10px;margin:16px 0 0;padding:11px 14px;font-size:13px;line-height:1.6}@media (width<=760px){.child-switch-card{flex-direction:column;align-items:stretch}.child-switch-card button{align-self:start}.child-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;display:grid;overflow:visible}.child-nav button{white-space:normal;min-height:44px}.parent-app{grid-template-columns:minmax(0,1fr)}.parent-sidebar,.parent-main,.parent-form label,.stat-card{min-width:0}.parent-sidebar nav{min-width:0;max-width:100%}.parent-sidebar nav button{flex-shrink:0;min-height:44px}.parent-header{flex-wrap:wrap}.parent-form input,.parent-form select{min-width:0}.stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-card,.child-switch-card span{overflow-wrap:anywhere}.parent-sidebar .sidebar-foot{justify-content:space-between;align-items:center;gap:8px;margin-top:10px;padding-top:8px;display:flex}.parent-sidebar .sidebar-foot span{overflow-wrap:anywhere}.parent-sidebar .sidebar-foot button{flex-shrink:0;min-height:44px}}
