:root{color:#24324a;font-synthesis:none;--navy:#14213d;--night:#203354;--paper:#fffdf7;--gold:#f6c85f;--blue:#6ea8d9;--muted:#9aa7b8;--teal:#79a99b;background:#f7f4ec;font-family:Noto Sans SC,Microsoft YaHei,system-ui,sans-serif}*{box-sizing:border-box}html{overflow-x:hidden}body{background:radial-gradient(circle at 80% 0,#e6eced 0,#0000 30%),#f7f4ec;min-width:320px;margin:0}button,input,textarea,select{font:inherit}button,a{touch-action:manipulation}a{color:inherit}.app{min-height:100vh}.topnav{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);z-index:10;background:#f7f4ece6;border-bottom:1px solid #d9d8d1;justify-content:space-between;align-items:center;height:72px;padding:0 max(24px,50vw - 620px);display:flex;position:relative}.brand{align-items:center;gap:10px;font-weight:800;text-decoration:none;display:flex}.brand svg{width:28px;fill:var(--gold);stroke:#6e5928}.topnav>div{gap:28px;display:flex}.topnav>div a{color:#526077;text-decoration:none}.page,.classroom{max-width:1240px;margin:auto;padding:48px 24px 110px}.home{max-width:1240px;margin:auto;padding:32px 24px 100px}.hero{color:#fff;background:radial-gradient(circle at 72% 40%,#31496d 0,#203354 32%,#14213d 72%);border-radius:28px;grid-template-columns:1fr 1.15fr;align-items:center;min-height:520px;padding:64px;display:grid;overflow:hidden}.kicker,.eyebrow{text-transform:uppercase;letter-spacing:.15em;color:#698379;font-size:12px;font-weight:800}.hero .kicker,.class-head .kicker{color:#a8c9cc}.hero h1{margin:12px 0;font-family:Georgia,STSong,serif;font-size:64px}.lead{color:#d9e1eb;font-size:21px;line-height:1.7}.hero-actions,.row,.sticky-actions,.data-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.btn{cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;min-height:46px;padding:0 22px;font-weight:700;text-decoration:none;display:inline-flex}.btn.primary{background:var(--gold);color:#3a351f;box-shadow:0 8px 28px #0b112455}.btn.secondary{color:#294a53;background:#e6eeee;border:1px solid #bfd0ce}.btn.ghost{color:inherit;background:0 0;border:1px solid #aeb8bc}.hero-actions{margin-top:30px}.hero .btn.ghost{border-color:#60718b}.home-lower{grid-template-columns:2fr 1fr;gap:28px;margin-top:28px;display:grid}.home-lower>div,.home-lower aside,.paper,.story-card,.task-panel,.behavior-section{background:var(--paper);border:1px solid #dedbd0;border-radius:20px;padding:28px}.recent{border-left:3px solid var(--gold);padding-left:22px}.empty{text-align:center;color:#657187;padding:36px}.page-head,.class-head{justify-content:space-between;align-items:flex-start;gap:24px;margin-bottom:30px;display:flex}.page-head h1,.class-head h1{margin:8px 0;font-family:Georgia,STSong,serif;font-size:40px}.page-head p{color:#6b7485}.grid{gap:18px;display:grid}.grid.two{grid-template-columns:repeat(2,1fr)}.grid.three{grid-template-columns:repeat(3,1fr)}.field{flex-direction:column;gap:7px;margin:14px 0;display:flex}.field>span{color:#59677a;font-size:13px;font-weight:700}input,textarea,select{color:#24324a;background:#fff;border:1px solid #c9ced0;border-radius:10px;width:100%;min-height:44px;padding:11px 12px}textarea{resize:vertical;line-height:1.65}.star-editors{gap:15px;margin-top:24px;display:grid}.star-editors details{background:var(--paper);border:1px solid #dedbd0;border-radius:16px;overflow:hidden}.star-editors summary{cursor:pointer;align-items:center;gap:14px;padding:20px;display:flex}.star-editors summary span{font-weight:800}.star-editors summary small{color:#768092}.task-editor{background:#f5f5f0;border-radius:14px;margin-bottom:14px;padding:18px}.editor-top,.task-title{justify-content:space-between;align-items:center;gap:8px;display:flex}.checks{gap:24px;margin:12px 0;display:flex}.checks label{align-items:center;gap:8px;display:flex}.checks input{width:auto;min-height:auto}.text-button{color:#55717b;cursor:pointer;background:0 0;border:0;min-height:44px;text-decoration:underline}.sticky-actions{z-index:15;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffdf7ee;border:1px solid #d9d8d1;border-radius:999px;justify-content:center;padding:10px;position:fixed;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 12px 35px #17223822}.notice{background:#fff4d5;border:1px solid #ecd087;border-radius:12px;margin-bottom:18px;padding:14px 18px}.preview-layout{grid-template-columns:.85fr 1.15fr;align-items:center;gap:24px;display:grid}.scenario-list{grid-template-columns:repeat(5,1fr);gap:12px;margin-top:24px;display:grid}.scenario-list article{background:var(--paper);border:1px solid #dedbd0;border-radius:14px;flex-direction:column;gap:10px;padding:16px;display:flex}.scenario-list small{color:#687489;line-height:1.5}.star-map{min-width:0;height:450px;position:relative}.constellation{width:84%;height:76%;position:absolute;inset:12% 8%;overflow:visible}.constellation path{fill:none;stroke:#8ca5ba88;stroke-width:.45px;stroke-dasharray:2 2}.ability-star{width:150px;color:inherit;cursor:pointer;background:0 0;border:0;flex-direction:column;align-items:center;gap:4px;min-height:44px;transition:transform .4s;display:flex;position:absolute}.ability-star:hover,.ability-star.active{transform:scale(1.05)}.ability-star.active:after{content:"";opacity:.55;border:1px solid #91b6bd;border-radius:50%;position:absolute;inset:-8px}.ability-star:first-of-type{top:20%;left:8%}.ability-star:nth-of-type(2){top:3%;left:39%}.ability-star:nth-of-type(3){top:24%;right:4%}.ability-star:nth-of-type(4){bottom:5%;right:18%}.ability-star:nth-of-type(5){bottom:3%;left:18%}.star-icon{transition:filter .45s,transform .45s;overflow:visible}.star-base{stroke-width:2px}.star-icon.lit{color:#a27d20;filter:drop-shadow(0 0 12px #f6c85f88)}.star-icon.lit .star-base{fill:#f6c85f;stroke:#d6a839}.star-icon.repairing{color:#4d82af;filter:drop-shadow(0 0 8px #6ea8d966)}.star-icon.repairing .star-base{fill:#9cc1df;stroke:#5b91bd}.star-icon.unexplored{color:#68778b}.star-icon.unexplored .star-base{fill:#c1c8d0;stroke:#8793a3}.star-name{font-weight:800}.ability-star small{color:#667286}.status-pill,.tag{border-radius:999px;padding:5px 9px;font-size:12px;font-weight:800;display:inline-block}.status-pill.lit{color:#705716;background:#fff1bd}.status-pill.repairing{color:#35678c;background:#dcecf7}.status-pill.unexplored{color:#586779;background:#e5e9ed}.classroom{max-width:1440px}.class-head{background:var(--navy);color:#fff;border-radius:20px 20px 0 0;margin:0;padding:26px}.class-head p{color:#cbd6e4}.story-strip{color:#dfe7ef;background:#203354;border-radius:0 0 20px 20px;padding:17px 26px;line-height:1.7}.class-grid{grid-template-columns:minmax(500px,1.15fr) minmax(400px,.85fr);align-items:start;gap:20px;margin-top:20px;display:grid}.map-wrap{color:#fff;background:linear-gradient(145deg,#172643,#223957);border-radius:20px;padding:10px;position:sticky;top:15px}.task-panel{padding:24px}.panel-heading{justify-content:space-between;gap:16px;display:flex}.panel-heading h2{margin:7px 0}.lesson-task{border-top:1px solid #dddcd6;padding:20px 0}.lesson-task p{line-height:1.75}.task-progress,.segmented{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.task-progress button,.segmented button{cursor:pointer;background:#f5f6f4;border:1px solid #c9d0d3;border-radius:10px;min-height:44px;padding:8px}.task-progress button.selected,.segmented button.selected{background:#dcebea;border-color:#7fa9a1;font-weight:800}.hints{margin-top:14px}.hints p{border-left:3px solid var(--teal);background:#eef4f3;padding:12px}.hints b{margin-right:12px}.status-selector{border-top:1px solid #dddcd6;padding:20px 0}.segmented{grid-template-columns:repeat(3,1fr);margin-top:9px}.segmented button{flex-direction:column;gap:5px;display:flex}.segmented small{color:#657182;line-height:1.4}.behavior-section{grid-template-columns:.7fr 1.3fr;gap:24px;margin-top:20px;display:grid}.behaviors{grid-template-columns:repeat(2,1fr);gap:10px;display:grid}.behavior{background:#fff;border:1px solid #d6d9d5;border-radius:12px;padding:4px}.behavior.selected{background:#edf4f1;border-color:#8ab2a6}.behavior button{text-align:left;background:0 0;border:0;align-items:center;gap:8px;width:100%;min-height:44px;display:flex}.behavior input{margin-top:4px}.ending-hero{background:var(--navy);color:#fff;border-radius:24px;grid-template-columns:.9fr 1.1fr;align-items:center;gap:36px;padding:34px;display:grid}.ending-hero .star-map{height:330px}.ending-hero h2{font-family:Georgia,STSong,serif;line-height:1.8}.status-summary{flex-wrap:wrap;gap:8px;display:flex}.ending-grid{grid-template-columns:1fr 1fr;gap:20px;margin-top:20px;display:grid}.title-card{border-left:3px solid var(--gold);margin:16px 0;padding:4px 0 4px 15px}.title-card p{color:#647084}.task-columns{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px;display:grid}.task-columns article{background:#eef1ef;border-radius:14px;padding:18px}.history-list{gap:16px;margin-top:24px;display:grid}.history-list article{background:var(--paper);border:1px solid #dedbd0;border-radius:18px;grid-template-columns:110px 1fr auto;gap:22px;padding:24px;display:grid}.history-date{color:#758091;font-family:Georgia,serif}.history-main h2{margin:6px 0}.history-actions{flex-direction:column;gap:6px;display:flex}.dialog-backdrop{z-index:100;background:#0c172d88;place-items:center;padding:18px;display:grid;position:fixed;inset:0}.dialog{background:var(--paper);border-radius:18px;width:min(500px,100%);max-height:calc(100vh - 36px);padding:26px;overflow:auto;box-shadow:0 20px 70px #0004}.dialog-actions{justify-content:flex-end;gap:10px;margin-top:24px;display:flex}.site-footer{text-align:center;color:#82909d;padding:28px}.compact .ability-star{transform:scale(.78)}@media (width<=900px){.topnav>div{display:none}.hero{grid-template-columns:1fr;padding:38px}.hero-orbit{display:none}.home-lower,.preview-layout,.ending-grid,.ending-hero,.behavior-section{grid-template-columns:1fr}.scenario-list{grid-template-columns:repeat(2,1fr)}.class-grid{grid-template-columns:1fr}.map-wrap{position:static}.grid.three{grid-template-columns:repeat(2,1fr)}.history-list article{grid-template-columns:1fr}.history-actions{flex-flow:wrap}}@media (width<=600px){.page,.classroom,.home{padding:24px 14px 100px}.topnav{height:60px;padding:0 16px}.hero{min-height:430px;padding:28px 22px}.hero h1{font-size:46px}.home-lower,.grid.two,.grid.three,.scenario-list,.ending-grid,.task-columns,.behaviors{grid-template-columns:1fr}.page-head,.class-head{flex-direction:column}.page-head h1,.class-head h1{font-size:32px}.star-map{height:390px;margin-inline:-20px;transform:scale(.88)}.ability-star{width:115px}.ability-star .star-icon{width:70px;height:70px}.ability-star small{font-size:10px}.checks{flex-direction:column;gap:10px}.task-progress,.segmented{grid-template-columns:repeat(2,1fr)}.segmented button:last-child{grid-column:span 2}.sticky-actions{border-radius:16px;justify-content:flex-start;width:calc(100% - 20px);bottom:8px;overflow-x:auto}.sticky-actions .btn{white-space:nowrap}.story-strip,.class-head{padding:20px}.task-panel,.behavior-section{padding:18px}.ending-hero{padding:20px}.ending-hero .star-map{display:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}:root{--night:#13233d;--deep:#0d192c;--water:#243d5c;--paper:#f5eedc;--warm:#fbf7ec;--ink:#29364a;--gold:#f4c95d;--glow:#ffe6a3;--repair:#79a8d8;--quiet:#8693a7}body{color:var(--ink);background:#e9e2d3;font-family:Microsoft YaHei,PingFang SC,sans-serif}h1,h2,.brand,.star-name{font-family:STKaiti,KaiTi,"FangSong",Microsoft YaHei,sans-serif}button,.btn,input,textarea,select,summary{min-height:44px}.topnav{color:var(--paper);background:#0d192cf7;border:0}.topnav a{color:inherit}.site-footer{background:var(--deep);color:#b9c5d2}.star-map{isolation:isolate;min-height:420px;position:relative}.constellation{pointer-events:none;width:86%;height:78%;position:absolute;inset:10% 7%;overflow:visible}.constellation path{fill:none;stroke:#f5eedc75;stroke-width:.55px;vector-effect:non-scaling-stroke;stroke-linecap:round}.constellation-faint{stroke-dasharray:2 2;opacity:.6}.constellation-lit{stroke:#ffe6a3a6}.ability-star{z-index:2;flex-direction:column;align-items:center;gap:2px;transform:translate(-50%,-50%);width:clamp(88px,9vw,122px)!important;height:clamp(112px,12vw,148px)!important;color:var(--paper)!important;box-shadow:none!important;background:0 0!important;border:0!important;padding:2px!important;display:flex!important;position:absolute!important}.ability-star.recall{top:31%;left:15%}.ability-star.discovery{top:20%;left:48%}.ability-star.expression{top:35%;left:84%}.ability-star.challenge{top:72%;left:61%}.ability-star.reflection{top:75%;left:25%}.ability-star .star-icon{width:clamp(58px,6vw,82px);height:auto;transition:filter .45s,transform .45s}.ability-star .star-name{text-shadow:0 2px 5px var(--deep);white-space:nowrap;font-size:clamp(16px,1.55vw,21px);font-weight:700}.star-state{white-space:nowrap;background:#0d192cbf;border:1px solid #ffffff40;border-radius:99px;padding:0 9px;font-size:12px;line-height:1.6}.star-halo{opacity:0;border-radius:50%;width:94px;height:94px;transition:opacity .45s,transform .45s;position:absolute;top:-8px;box-shadow:0 0 0 1px #ffe6a350,0 0 32px 12px #f4c95d30}.ability-star.active{z-index:4}.ability-star.active .star-icon{filter:drop-shadow(0 0 10px #ffe6a388);transform:scale(1.18)}.ability-star.active .star-halo{opacity:1;transform:scale(1.25)}.star-icon.unexplored .star-base{fill:#8693a733;stroke:#aab4c2;stroke-width:3px}.star-icon.repairing .star-base{fill:#79a8d8;stroke:#e7c66a;stroke-width:3px}.star-icon.lit .star-base{fill:#f4c95d;stroke:#ffe6a3;stroke-width:3px}.star-state.lit:before{content:"● ";color:var(--gold)}.star-state.repairing:before{content:"◐ ";color:var(--repair)}.star-state.unexplored:before{content:"○ ";color:#aab4c2}.home{max-width:none;min-height:calc(100vh - 110px);color:var(--paper);background:linear-gradient(90deg,#0a1628f0,#0d192cb8 43%,#0d192c4d 75%),linear-gradient(#13233d33,#0d192cad),url(/assets/star-map-background-CpgyWvyT.jpg) 50% 48%/cover no-repeat;padding:clamp(28px,5vw,72px)}.hero{background:0 0;border-radius:0;grid-template-columns:minmax(330px,.8fr) 1.2fr;gap:4vw;min-height:clamp(430px,65vh,580px);padding:0}.hero h1{margin:.12em 0;font-size:clamp(58px,7vw,92px);line-height:1}.hero-copy{max-width:520px}.home-lower{border-top:1px solid #f5eedc38;grid-template-columns:1fr auto;padding-top:20px}.home-lower>div,.home-lower aside{background:0 0;border:0;padding:0}.home-lower aside{align-items:center;gap:15px;display:flex}.home-lower aside h2,.home-lower aside p{display:none}.recent{color:var(--ink);background:#f5eedcf0;border-radius:3px 12px 12px 3px;align-items:center;gap:18px;padding:13px 18px;display:flex}.recent h2,.recent p{margin:0}.home .empty{color:var(--paper);padding:5px}.home .empty .star-icon{display:none}.classroom{max-width:none;color:var(--paper);background:linear-gradient(90deg,#091424f7,#0d192cbd 22%,#0d192c4d 66%,#091424e0),linear-gradient(#13233d48,#0a1627a8),url(/assets/star-map-background-CpgyWvyT.jpg) 50% 55%/cover no-repeat;margin:0;padding:18px;position:relative;overflow:hidden}.class-story{background:linear-gradient(100deg,#0d192cfa,#1c314cc7 84%,#0000);border-right:1px solid #f5eedc20;flex-direction:column;align-items:flex-start;gap:12px;padding:20px 18px;display:flex}.class-brand{color:var(--paper);font-family:KaiTi,serif;font-size:20px;text-decoration:none}.class-story h1{margin:6px 0;font-size:clamp(27px,2.8vw,38px);line-height:1.12}.lesson-meta{color:#b9c8d6;line-height:1.7}.story-copy{color:#e5dfd1;-webkit-line-clamp:5;-webkit-box-orient:vertical;font-family:KaiTi,serif;font-size:15px;line-height:1.75;display:-webkit-box;overflow:hidden}.journey-count{border-block:1px solid #f5eedc33;width:100%;margin-top:auto;padding:13px 0}.journey-count small,.journey-count strong{display:block}.map-wrap{min-width:0;min-height:0;position:relative}.map-caption{z-index:5;text-align:center;text-shadow:0 2px 7px var(--deep);position:absolute;bottom:16px;left:50%;transform:translate(-50%)}.map-caption span,.map-caption strong{display:block}.map-caption strong{font-family:KaiTi;font-size:20px}.task-panel{background:var(--paper);color:var(--ink);overscroll-behavior:contain;border:0;border-radius:5px 14px 14px 5px;padding:clamp(16px,2vw,24px);overflow-y:auto;box-shadow:-12px 10px 34px #040d1b55}.panel-heading{border-bottom:1px solid #29364a29;padding-bottom:9px}.panel-heading h2{margin:5px 0;font-size:23px}.scenario-note{color:#516176;margin:10px 0;font-family:KaiTi;line-height:1.5}.lesson-task{box-shadow:none!important;background:0 0!important;border:0!important;padding:5px 0!important}.task-title{display:block}.task-title h3{margin:8px 0;font-size:19px}.task-progress{grid-template-columns:1fr 1fr;gap:6px;display:grid}.hints{border-left:2px solid #b9aa83;padding-left:10px}.hints p{background:#efe6cf;margin:7px 0;padding:8px 10px}.hints p b{display:block}.segmented{grid-template-columns:1fr 1fr 1fr;gap:5px}.segmented button{padding:6px}.segmented button small{display:none}.task-pager{justify-content:space-between;align-items:center;margin:8px 0;display:flex}.task-pager button{color:var(--ink);background:#e8dfca;border:0;border-radius:4px;padding:0 12px}.record-field textarea{min-height:66px}.behavior-drawer{z-index:12;color:var(--paper);background:#0d192ceb;border:1px solid #f5eedc33;border-radius:6px;max-width:52%;padding:0 10px;position:absolute;bottom:10px;left:22%}.behavior-drawer summary{align-items:center;display:flex}.behavior-drawer[open]{padding-bottom:12px}.behavior-drawer .behaviors{max-height:180px;overflow:auto}.setup{background:#ece5d6}.setup>.paper{border-radius:5px;box-shadow:0 8px 24px #29364a14}.star-editors{grid-template-columns:repeat(5,1fr);align-items:start;gap:8px;display:grid}.star-editors details{background:var(--warm);border:1px solid #d4cbb8;border-radius:5px;grid-row:1}.star-editors details[open]{grid-area:2/1/auto/-1}.star-editors summary{text-align:center;padding:10px}.star-editors summary span,.star-editors summary small{display:block}.details-body{padding:16px}.task-editor{background:#f8f2e5;border:0;border-left:3px solid #7d91a9}.setup input,.setup textarea,.setup select{background:#fffdf7;border-color:#c9c0af}.sticky-actions{background:#f5eedcf7;border-top:1px solid #cfc4b1}.ending{max-width:none;color:var(--paper);background:linear-gradient(90deg,#0d192ce0,#0d192c80),url(/assets/star-map-background-CpgyWvyT.jpg) 50% 55%/cover fixed}.ending .page-head{color:var(--paper)}.ending-hero{background:0 0;border:0;grid-template-columns:1.3fr .7fr}.ending-hero .star-map{min-height:400px}.ending .paper{color:var(--ink);background:#f5eedcf5;border:0}.title-card{background:#eee5d0;border-left:3px solid #b29b5d;padding:8px 12px}.task-columns{background:#0d192cbd;border:1px solid #f5eedc29;border-radius:8px;padding:12px}.task-columns article{color:var(--ink);background:#f5eedcf0}@media (width>=1100px) and (orientation:landscape){.topnav{height:56px;padding:0 24px}.site-footer{display:none}.classroom{grid-template-columns:minmax(205px,20%) minmax(520px,55%) minmax(280px,25%);gap:0;height:calc(100vh - 56px);padding:12px;display:grid}.class-story,.task-panel{height:calc(100vh - 80px)}.map-wrap>.star-map{height:100%;min-height:0}.setup{grid-template-rows:auto 1fr auto;grid-template-columns:minmax(330px,36%) 1fr;gap:12px 18px;max-width:none;min-height:calc(100vh - 56px);padding:18px 24px 84px;display:grid}.setup .page-head{grid-column:1/-1;margin:0}.setup>.paper{grid-column:1;margin:0;overflow:auto}.setup>.star-editors{grid-column:2;margin:0;overflow:auto}.setup>.notice,.setup .sticky-actions{grid-column:1/-1}.ending{min-height:calc(100vh - 56px);padding:16px 28px}.ending .page-head{margin:0}.home{min-height:calc(100vh - 56px)}}@media (width>=1280px) and (height<=805px){.classroom{background-position:50% 57%}.story-copy{-webkit-line-clamp:4}.task-panel{font-size:14px}.ability-star{width:100px!important;height:125px!important}.ability-star .star-icon{width:66px}}@media (width>=1350px) and (height<=780px){.classroom,.ending{background-position:50% 59%}.ability-star.recall{top:29%}.ability-star.discovery{top:18%}.ability-star.challenge{top:69%}.ability-star.reflection{top:72%}}@media (width<=1099px){.classroom{overflow:auto}.class-story{margin-bottom:12px}.task-panel{margin-top:12px}.behavior-drawer{max-width:none;margin-top:12px;position:static}.hero{grid-template-columns:1fr}.hero-orbit{display:none}.home-lower,.ending-hero{grid-template-columns:1fr}}@media (width<=700px){.home{padding:28px 18px}.recent{display:block}.star-editors{grid-template-columns:1fr}.star-editors details,.star-editors details[open]{grid-area:auto/1}.task-progress,.segmented{grid-template-columns:1fr 1fr}}.star-editors{display:block}.star-editors details{margin-bottom:9px}.star-editors details summary{text-align:left;justify-content:space-between;display:flex}.star-editors details:not(:first-child) .details-body,.star-editors:focus-within details:first-child:not(:focus-within) .details-body{display:none}.star-editors details:focus-within .details-body{display:block}.star-editors details:focus-within{border-left:3px solid #7d91a9;box-shadow:0 6px 18px #29364a1c}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.topnav{height:58px;box-shadow:none;background:linear-gradient(#0d192cf5,#13233deb);padding-inline:max(22px,50vw - 660px)}.topnav .brand{font-weight:650}.topnav>div{align-self:stretch;align-items:flex-end;gap:8px}.topnav>div a{color:#e6e0d2;background:#f5eedc0b;border-radius:5px 5px 0 0;align-items:center;min-height:46px;padding:0 15px 7px;font-size:14px;text-decoration:none;display:flex;position:relative}.topnav>div a:after{content:"";background:0 0;height:2px;position:absolute;bottom:0;left:15px;right:15px}.topnav>div a.active{color:#fff3cf;background:#f5eedc14}.topnav>div a.active:after{background:#d6b96f}.book-label{background:#e9dfc9e8;border-radius:2px 7px 7px 2px;padding:6px 13px;font-weight:600;display:inline-block;box-shadow:0 5px 15px #07101f33;color:#4c5663!important;letter-spacing:.08em!important}.demo-link,.history-link{color:#ddd5c3;text-underline-offset:4px;cursor:pointer;background:0 0;border:0;min-height:44px;padding:0 8px;text-decoration:underline}.history-link{border-bottom:1px solid #f5eedc66;align-items:center;text-decoration:none;display:flex}.history-link small{color:#aebac6}.home{min-height:calc(100dvh - 58px);padding-bottom:max(34px,calc(env(safe-area-inset-bottom) + 24px));background:linear-gradient(90deg,#0a1628f5 0%,#0d192cce 39%,#0d192c91 64%,#0b1729bc 100%),radial-gradient(at 76% 48%,#1a3557b8 0%,#10213b80 44%,#0000 72%),linear-gradient(#13233d5c,#0d192cc7),url(/assets/star-map-background-CpgyWvyT.jpg) 50% 48%/cover no-repeat}.hero{grid-template-columns:minmax(330px,.82fr) 1.18fr;min-height:clamp(410px,62dvh,540px)}.hero h1{letter-spacing:.04em;text-shadow:0 3px 12px #07101f88;font-size:clamp(48px,5.6vw,72px);font-weight:650}.hero .lead{color:#ded8ca;font-size:clamp(17px,1.6vw,22px)}.hero-actions .btn.primary{box-shadow:0 7px 22px #08132466}.hero-actions .btn.secondary{color:#344255;background:#e7dfcf;border:1px solid #fff6df66}.hero-orbit{position:relative}.hero-orbit:before{content:"";filter:blur(12px);pointer-events:none;background:radial-gradient(at 58%,#1836576e 0%,#0b182c70 55%,#0000 76%);position:absolute;inset:5% -2%}.hero-orbit .star-map{min-height:clamp(430px,59dvh,540px)}.hero-orbit .ability-star{width:clamp(116px,11vw,150px)!important;height:clamp(138px,14vw,174px)!important}.hero-orbit .ability-star .star-icon{width:clamp(82px,8vw,108px)}.hero-orbit .ability-star .star-name{font-size:clamp(18px,1.7vw,23px)}.hero-orbit .ability-star.recall{top:34%;left:20%}.hero-orbit .ability-star.discovery{top:24%;left:49%}.hero-orbit .ability-star.expression{top:37%;left:78%}.hero-orbit .ability-star.challenge{top:68%;left:62%}.hero-orbit .ability-star.reflection{top:69%;left:31%}.hero-orbit .constellation{opacity:.7;width:76%;height:70%;inset:13% 12%}.home-lower{align-items:end;margin-top:8px}.home-lower>div{max-width:390px}.recent{border-radius:2px 9px 8px 3px;grid-template-columns:1fr auto;align-items:center;gap:3px 14px;padding:14px 18px 13px;display:grid;transform:rotate(-.25deg);box-shadow:0 8px 20px #07101f42}.recent .eyebrow,.recent p{grid-column:1}.recent h2{grid-column:1;font-size:20px}.recent .text-button{color:#455b68;border-left:1px solid #c8baa0;grid-area:1/2/4;padding-left:15px;text-decoration:none}.recent:after{content:"";position:absolute}.status-pill{border-radius:5px}.classroom{min-height:calc(100dvh - 58px);padding-bottom:max(12px,env(safe-area-inset-bottom));background:linear-gradient(90deg,#091424fa,#0d192cdb 21%,#0d192c78 63%,#091424ed),radial-gradient(at 60% 54%,#1737558c,#0000 56%),url(/assets/star-map-background-CpgyWvyT.jpg) 50% 56%/cover no-repeat}.classroom .ability-star{width:clamp(102px,9.5vw,132px)!important}.classroom .ability-star.recall{left:18%}.classroom .ability-star.expression{left:81%}.classroom .ability-star.challenge{top:68%}.classroom .constellation{opacity:.58}.task-panel{scrollbar-width:thin;scrollbar-color:#9b8f76 transparent}.task-panel .status-selector{margin-top:10px}.behavior-drawer{bottom:max(10px,env(safe-area-inset-bottom))}.hints .btn,.task-progress button,.segmented button{border-radius:5px}.setup{min-height:calc(100dvh - 58px);padding-bottom:max(84px,calc(env(safe-area-inset-bottom) + 72px))}.setup .star-editors details{border-radius:4px}.setup .star-editors details summary{background:#f3ecdd}.setup .star-editors details:focus-within summary{background:#e4e9e8}.setup .sticky-actions{padding-bottom:env(safe-area-inset-bottom)}.ending{min-height:calc(100dvh - 58px);padding-bottom:max(24px,env(safe-area-inset-bottom));background:linear-gradient(90deg,#0d192cee,#0d192c8c),radial-gradient(at 40% 55%,#203f5e70,#0000 58%),url(/assets/star-map-background-CpgyWvyT.jpg) 50% 57%/cover fixed}.ending .ability-star{width:clamp(102px,9.5vw,132px)!important}.ending .ability-star .star-icon{width:clamp(68px,6.5vw,90px)}.ending .constellation{opacity:.7}.ending .sticky-actions{padding-bottom:env(safe-area-inset-bottom)}@media (width>=1100px) and (orientation:landscape){.topnav{height:58px}.classroom{height:calc(100dvh - 58px)}.class-story,.task-panel{height:calc(100dvh - 82px)}.home{min-height:calc(100dvh - 58px)}.home .site-footer{display:none}}@media (width>=1280px) and (height<=805px){.hero,.hero-orbit .star-map{min-height:430px}.home-lower{margin-top:0}.classroom{background-position:50% 58%}}@media (width>=1350px) and (height<=780px){.hero,.hero-orbit .star-map{min-height:405px}.hero-orbit .ability-star.challenge{top:66%}.hero-orbit .ability-star.reflection{top:67%}.classroom,.ending{background-position:50% 60%}}.topnav{height:50px}.topnav .brand svg{width:24px}.topnav>div a{min-height:40px;padding-bottom:5px}.classroom{height:calc(100dvh - 50px);min-height:calc(100dvh - 50px);padding:8px 10px max(8px,env(safe-area-inset-bottom));overflow:hidden}.classroom .map-wrap{overflow:hidden;box-shadow:none!important;background:0 0!important;border:0!important;border-radius:0!important}.classroom .map-wrap:before{content:"";filter:blur(18px);pointer-events:none;background:radial-gradient(at 52% 52%,#1e43637d 0%,#17365355 42%,#0000 72%);position:absolute;inset:8% 3%}.classroom .star-map{background:0 0!important;border:0!important;border-radius:0!important}.classroom .ability-star{width:clamp(132px,12vw,166px)!important;height:clamp(148px,14vw,182px)!important}.classroom .ability-star .star-icon{width:clamp(92px,8.5vw,116px)}.classroom .ability-star.active .star-icon{transform:scale(1.12)}.classroom .ability-star.active .star-halo{transform:scale(1.18)}.classroom .ability-star.recall{top:31%;left:22%}.classroom .ability-star.discovery{top:23%;left:49%}.classroom .ability-star.expression{top:34%;left:77%}.classroom .ability-star.challenge{top:64%;left:60%}.classroom .ability-star.reflection{top:66%;left:31%}.classroom .constellation{opacity:.45;width:74%;height:70%;inset:13%}.class-story{overscroll-behavior:contain;gap:8px;height:100%;min-height:0;padding:14px 15px;overflow-y:auto}.class-story h1,.lesson-meta{margin:2px 0}.story-copy{scrollbar-width:thin;scrollbar-color:#71849a transparent;border-block:1px solid #f5eedc24;max-height:clamp(96px,22dvh,170px);padding:8px 8px 8px 0;display:block;overflow-y:auto}.journey-count{margin-top:auto;padding:9px 0}.task-panel{border-radius:3px 10px 10px 3px;height:100%;min-height:0;padding:14px 16px}.task-panel .panel-heading h2{font-size:20px}.task-panel .scenario-note{margin:7px 0}.control-label{color:#607283;margin:12px 0 6px}.task-progress{border:1px solid #b7bfbd;border-radius:5px;gap:0;display:flex;overflow:hidden}.task-progress button{border:0;background:#f7f2e7;border-right:1px solid #c8cfcc;border-radius:0;flex:1;min-width:0;padding:5px}.task-progress button:last-child{border-right:0}.task-progress button.selected{color:#254c55;background:#dce8e6;box-shadow:inset 0 -2px #6e9990}.star-status-options{grid-template-columns:repeat(3,1fr);gap:6px;margin-top:7px;display:grid}.star-status-options button{min-height:58px;color:var(--ink);background:#f8f2e4;border:1px solid #c8c1b2;border-radius:4px;flex-direction:column;justify-content:center;align-items:center;gap:3px;display:flex}.star-status-options button.selected{background:#e7e2d4;border-color:#758aa0;box-shadow:inset 0 0 0 1px #758aa0}.star-status-options .star-icon{width:24px;height:24px}.manual-behaviors{border-top:1px solid #d4cbb8;margin-top:12px}.manual-behaviors summary{color:#46596e;cursor:pointer;align-items:center;display:flex}.manual-behaviors .behaviors{grid-template-columns:1fr;max-height:210px;overflow:auto}.manual-behaviors .behavior{border-radius:4px}.behavior-drawer,.map-caption{display:none!important}.ending{min-height:calc(100dvh - 50px);padding:14px 26px max(28px,calc(env(safe-area-inset-bottom) + 18px));background-attachment:scroll;overflow:visible;height:auto!important}.ending .page-head{align-items:center;min-height:0;margin:0 0 8px}.ending .page-head h1{margin:3px 0;font-size:32px}.ending .page-head p{color:#d8d1c3;margin:3px 0}.ending-hero{grid-template-columns:minmax(0,55%) minmax(320px,35%);justify-content:space-between;align-items:center;gap:4%;min-height:0;padding:0 0 10px;display:grid}.ending-hero .star-map{height:auto;min-height:clamp(360px,51dvh,460px)}.ending-hero>div:last-child{color:var(--ink);background:linear-gradient(105deg,#f5eedcf7,#fbf7ecef);border-radius:3px 12px 10px 4px;align-self:center;padding:20px 22px;transform:rotate(.15deg);box-shadow:0 12px 30px #07101f45}.ending-hero h2{margin:7px 0 12px;font-family:KaiTi,serif;font-size:clamp(18px,1.7vw,23px);line-height:1.65}.ending .status-summary{grid-template-columns:1fr 1fr;gap:5px;display:grid}.ending .status-pill{color:#46566b;border-radius:0;align-items:center;min-height:32px;padding:2px 4px;display:flex;background:0 0!important;border:0!important}.ending .status-pill:before{content:"☆";color:#7b8798;margin-right:6px;font-size:18px}.ending .status-pill.lit:before{content:"★";color:#c39b2f}.ending .status-pill.repairing:before{content:"◐";color:#628fbc}.ending-grid{background:#f5eedcf7;border-radius:4px 12px 10px 4px;grid-template-columns:minmax(0,42%) minmax(0,58%);gap:0;max-width:1120px;margin:0 auto 12px;display:grid;overflow:visible;box-shadow:0 12px 32px #07101f45}.ending-grid .paper{box-shadow:none;background:0 0;border-radius:0;margin:0}.ending-grid .paper+.paper{border-left:1px solid #d3c8b3}.ending-grid textarea{max-height:none}.ending .task-columns{max-width:1120px;margin:12px auto;overflow:visible}.ending .sticky-actions{width:auto;padding:10px max(10px,env(safe-area-inset-bottom));box-shadow:none;background:#f5eedcf2;border-radius:5px;margin:16px auto 0;display:flex;position:static;bottom:auto;left:auto;overflow:visible;transform:none}.ending .sticky-actions .btn.ghost{color:var(--ink);border-color:#9da4a3}.ending .sticky-actions .btn{visibility:visible;opacity:1;color:#29364a}.ending .sticky-actions .btn.primary{color:#3a351f}@media (width>=1100px) and (orientation:landscape){.topnav{height:50px}.classroom{grid-template-columns:minmax(200px,19%) minmax(520px,56%) minmax(286px,25%);height:calc(100dvh - 50px)}.class-story,.task-panel{height:100%}.ending{min-height:calc(100dvh - 50px)}}@media (width>=1280px) and (height<=805px){.classroom .ability-star{width:142px!important;height:158px!important}.classroom .ability-star .star-icon{width:98px}.ending-hero .star-map{min-height:385px}.ending-hero>div:last-child{padding:16px 19px}.ending-grid .paper{padding:20px}}@media (width>=1350px) and (height<=780px){.classroom .ability-star.challenge{top:62%}.classroom .ability-star.reflection{top:64%}.ending-hero .star-map{min-height:370px}.ending .page-head p{display:none}}.star-map>.constellation{opacity:1!important;width:100%!important;height:100%!important;inset:0!important}.constellation .learning-path{fill:none;stroke:#eee7d394;stroke-width:.72px;stroke-dasharray:2.2 1.7;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.constellation .learning-path-shadow{stroke:#09142485;stroke-width:2.2px;stroke-dasharray:none;filter:blur(.35px)}.star-map>.ability-star{margin:0!important}.home .constellation .learning-path{stroke:#eee7d375}.ending .constellation .learning-path{stroke:#ffe6a39e}:where(button,a,input,textarea,select,summary):focus-visible{outline-offset:3px;outline:3px solid #ffe6a3}:where(.paper,.task-panel,.dialog) :where(button,a,input,textarea,select,summary):focus-visible{outline-color:#587b9e}:where(button,input,textarea,select):disabled{cursor:not-allowed;opacity:.52;filter:saturate(.55)}button,.btn{border-radius:6px;transition:transform .14s,background-color .18s,border-color .18s,box-shadow .18s}button:active:not(:disabled),.btn:active:not(:disabled){transform:translateY(1px)}.notice{color:#473f32;background:#f4e8cc;border-left:4px solid #b48a42;border-radius:5px}.empty{align-content:center;place-items:center;gap:4px;min-height:220px;display:grid}.empty h2,.empty p{margin:4px}.dialog{background:var(--warm);border:1px solid #d4c8b2;border-radius:6px}.dialog-backdrop{padding:max(18px,env(safe-area-inset-bottom))}.history-list article{background:var(--warm);border-radius:7px;box-shadow:0 6px 18px #29364a12}.history-actions .btn{min-width:44px}.data-actions{padding-bottom:8px}@media (width>=1100px) and (orientation:landscape){.page:not(.setup):not(.ending){padding-bottom:max(72px,calc(env(safe-area-inset-bottom) + 60px))}}@media (prefers-reduced-motion:reduce){button,.btn{transition:none!important}}
