@import"https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@600;700&family=Noto+Sans+SC:wght@400;500;600;700&family=Noto+Serif+SC:wght@600;700;900&display=swap";:root{font-family:Noto Sans SC,system-ui,sans-serif;color:#1d241f;background:#0d1617;font-synthesis:none;--bg-ink:#0d1617;--bg-ink-soft:#152020;--bg-paper:#f3ead8;--bg-paper-light:#faf6ed;--bg-card:#fffaf0;--text-main:#1d241f;--text-light:#f4ead6;--text-muted:#7d776c;--green-main:#2f654f;--green-deep:#173d32;--gold-main:#c79a43;--gold-bright:#e4b950;--red-main:#9e4b38;--blue-main:#496b82;--orange-main:#a86c2f;--line:#d8cbb4;--shadow:0 18px 40px #1d241f18}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--bg-paper);overflow-x:hidden}button,a{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}button:focus-visible,a:focus-visible{outline:3px solid var(--gold-bright);outline-offset:3px}.app{min-height:100vh}.button{min-height:44px;border:0;border-radius:9px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font-weight:700;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px)}.button svg{width:18px}.button.primary{background:linear-gradient(135deg,#397a5d,#26553f);color:#fff;box-shadow:0 10px 22px #173d3230}.button.gold{background:linear-gradient(135deg,var(--gold-bright),#b67a2c);color:#30200c}.button.outline{border:1px solid currentColor;background:transparent;color:var(--green-main)}.paper-panel{background:linear-gradient(145deg,#fffdf6,#f4ead8);border:1px solid #e6dac5;box-shadow:0 12px 30px #59452210}.eyebrow{margin:0 0 6px;font-size:11px;line-height:1.4;letter-spacing:.14em;color:var(--gold-main);font-weight:700}.lead{line-height:1.8;color:var(--text-muted)}h1,h2,h3,p{margin-top:0}.mastery-bar{height:7px;background:#ded4c2;border-radius:99px;overflow:hidden}.mastery-bar i{display:block;height:100%;border-radius:inherit;transition:width .45s ease}.tone-gold{background:linear-gradient(90deg,#c78834,#f1c95b)!important}.tone-green{background:linear-gradient(90deg,#2f654f,#6da57e)!important}.tone-blue{background:linear-gradient(90deg,#496b82,#75a2bb)!important}.tone-violet{background:linear-gradient(90deg,#75528c,#b287ca)!important}.welcome-screen{min-height:100vh;padding:12vh 24px 42px;display:flex;flex-direction:column;align-items:center;text-align:center;overflow:hidden;position:relative;color:var(--text-light);background:radial-gradient(circle at 50% 20%,#33534d 0,#172423 34%,#0d1617 73%)}.welcome-screen:after{content:"";position:absolute;inset:auto -10% -2px;height:37%;background:linear-gradient(170deg,transparent 15%,#111b1b 16%),radial-gradient(ellipse at 55% 100%,#4c6357 0 12%,transparent 13%),radial-gradient(ellipse at 20% 100%,#283b35 0 19%,transparent 20%);opacity:.85}.welcome-map-lines{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(120deg,transparent 47%,#eed38c10 48%,transparent 49%),linear-gradient(72deg,transparent 65%,#eed38c0d 66%,transparent 67%);opacity:.7}.welcome-compass{height:78px;width:78px;border:1px solid #e4b950aa;border-radius:50%;display:grid;place-items:center;color:var(--gold-bright);margin-bottom:24px;box-shadow:inset 0 0 24px #e4b95022}.welcome-compass svg{width:37px;height:37px}.welcome-screen h1{z-index:1;margin:0;font:900 clamp(45px,8vw,72px)/1.25 "Noto Serif SC";letter-spacing:.15em;text-shadow:0 3px 18px #000}.welcome-slogan{z-index:1;margin:16px 0 8px;font:600 clamp(20px,3vw,28px) "Noto Serif SC";letter-spacing:.08em}.welcome-copy,.welcome-screen small{z-index:1;color:#d7ded7}.welcome-cta{z-index:1;width:min(100%,340px);margin:32px 0 14px;background:linear-gradient(135deg,#e8bd5d,#b8792a);color:#2f2210}.welcome-return{z-index:1;color:#e8d6a8;font-size:14px}.onboarding-screen{min-height:100vh;padding:32px max(24px,calc((100% - 720px)/2));background:radial-gradient(circle at 100% 0,#e3d3b7 0,transparent 30%),var(--bg-paper-light)}.onboarding-screen header{display:grid;grid-template-columns:36px 1fr;gap:12px;align-items:center}.onboarding-screen header a{color:var(--text-main)}.onboarding-screen header svg{width:23px}.onboarding-card{max-width:590px;margin:10vh auto 0}.onboarding-card h1{font:700 clamp(29px,5vw,42px)/1.45 "Noto Serif SC";margin-bottom:32px}.choice-list{display:grid;gap:12px}.choice-list button,.time-options button{border:1px solid var(--line);background:#fffaf1;border-radius:12px;color:var(--text-main)}.choice-list button{min-height:61px;padding:0 16px;display:flex;justify-content:space-between;align-items:center;text-align:left}.choice-list button.selected{background:#e5f0e7;border-color:var(--green-main);box-shadow:inset 4px 0 var(--green-main);color:var(--green-deep)}.time-options{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.time-options button{min-height:150px;display:flex;flex-direction:column;justify-content:center;gap:4px}.time-options strong{font:700 39px Cormorant Garamond}.time-options span,.time-options small{color:var(--text-muted)}.time-options button.selected{background:var(--green-main);border-color:var(--green-main);color:#fff;transform:translateY(-7px);box-shadow:0 14px 28px #173d3230}.time-options .selected span,.time-options .selected small{color:#d5e5d9}.route-seal{display:grid;place-items:center;width:82px;height:82px;border-radius:50%;background:var(--red-main);color:#fff;margin-bottom:24px}.route-preview{margin:26px 0 30px;padding:20px;border:1px solid #d6c29e;background:#f0e5d0;display:grid;gap:7px;border-radius:4px 18px}.route-preview span,.route-preview small{color:var(--text-muted)}.route-preview b{font:700 21px "Noto Serif SC"}.app-shell{min-height:100vh;display:grid;grid-template-columns:88px minmax(0,1fr);background:var(--bg-paper-light)}.desktop-sidebar{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;align-items:center;padding:16px 10px;background:linear-gradient(#101b1d,#0a1112);color:#cfdbcf;border-right:1px solid #ffffff12;z-index:5}.sidebar-brand{width:54px;height:54px;border-radius:15px;display:grid;place-items:center;color:var(--gold-bright);border:1px solid #e4b95055;margin-bottom:25px;background:#e4b95010}.sidebar-brand svg{width:29px}.desktop-sidebar nav{display:grid;gap:10px;width:100%}.desktop-sidebar nav a{min-height:58px;color:#94a39e;text-decoration:none;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;border-radius:10px;font-size:11px}.desktop-sidebar nav a svg{width:20px}.desktop-sidebar nav a.active,.desktop-sidebar nav a:hover{background:#d09a4040;color:#f2c66b}.shell-content{min-width:0;max-width:1600px;width:100%;margin:0 auto;padding:0 38px 50px}.shell-top{min-height:90px;display:flex;align-items:center;justify-content:space-between;gap:18px}.shell-top>div:first-child p{margin:0;color:var(--text-muted);font-size:13px}.shell-top h1{margin:3px 0 0;font:700 28px "Noto Serif SC"}.top-status{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.top-status>span:not(.status-avatar):not(.level-label){border:1px solid #d9cdb9;background:#fffaf0;border-radius:999px;padding:7px 11px;display:flex;align-items:center;gap:5px;font-size:12px;white-space:nowrap}.top-status svg{width:14px;color:var(--gold-main)}.top-status.is-dark>span:not(.status-avatar):not(.level-label){background:#0b1515b8;border-color:#d6b06d44;color:#f5ead6}.status-avatar,.profile-avatar{display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,#b9824e,#6a3d2e);color:#fff;border:3px solid #ecd09c;width:36px;height:36px;font:700 15px "Noto Serif SC"}.level-label{font-size:12px;white-space:nowrap}.mobile-bottom-nav{display:none}.theme-camp{background:#0d1617}.theme-camp .shell-content{color:var(--text-light)}.theme-camp .shell-top h1{color:#f7e9ce}.theme-camp .shell-top>div:first-child p{color:#c3c7bd}.camp-scene{position:relative;min-height:calc(100vh - 100px);border-radius:18px;overflow:hidden;background:linear-gradient(180deg,#16292a 0,#263b36 42%,#0f1d1c);padding:30px}.camp-scene:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 68% 0,#f3ce7a18,transparent 28%),linear-gradient(130deg,transparent 0 52%,#00100c60 53%);pointer-events:none}.camp-mountain{position:absolute;bottom:0;opacity:.8}.mountain-a{left:-5%;width:75%;height:62%;background:linear-gradient(145deg,transparent 43%,#0a1717 44% 61%,transparent 62%),linear-gradient(35deg,transparent 42%,#314a42 43% 60%,transparent 61%)}.mountain-b{right:-10%;width:65%;height:72%;background:linear-gradient(145deg,transparent 43%,#142824 44% 60%,transparent 61%),linear-gradient(35deg,transparent 45%,#476353 46% 61%,transparent 62%)}.camp-content{position:relative;z-index:1}.camp-dashboard{display:grid;grid-template-columns:minmax(330px,1.05fr) minmax(280px,.9fr);gap:20px;max-width:1060px}.paper-panel{color:var(--text-main);border-radius:14px}.quest-panel{padding:24px}.panel-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.panel-heading h2{margin:0;font:700 22px "Noto Serif SC"}.panel-heading>svg{color:var(--gold-main)}.quest-card{display:grid;grid-template-columns:30px 1fr;gap:11px;align-items:center;margin-top:15px}.quest-icon{height:27px;width:27px;border-radius:50%;display:grid;place-items:center;color:#fff}.quest-icon svg{width:15px}.quest-label{display:flex;justify-content:space-between;margin-bottom:7px;font-size:13px}.quest-label small{color:var(--text-muted)}.task-cta{width:100%;margin-top:22px;background:linear-gradient(135deg,#e5b452,#b47528);color:#fff}.camp-side{display:grid;gap:18px}.mastery-panel{padding:20px}.mastery-main{display:flex;gap:18px;align-items:center}.mastery-main>div:last-child{display:grid;gap:8px;align-content:center}.mastery-main p{margin:0;color:var(--text-muted);font-size:12px;line-height:1.6}.mastery-main .button{min-height:35px;font-size:12px}.progress-ring{--progress:0deg;width:132px;aspect-ratio:1;border-radius:50%;background:conic-gradient(var(--gold-bright) var(--progress),#e5ddd0 0);padding:10px;display:grid;place-items:center;flex:none}.progress-ring>div{background:#fffaf1;border-radius:50%;width:100%;height:100%;display:grid;place-content:center;text-align:center}.progress-ring strong{font:700 27px Cormorant Garamond}.progress-ring span{font-size:10px;color:var(--text-muted)}.achievement-panel{display:flex;justify-content:space-between;align-items:center;padding:16px 20px}.achievement-panel strong{font:700 30px Cormorant Garamond}.week-streak{display:flex;gap:7px}.week-streak span{display:grid;justify-items:center;gap:4px;color:var(--text-muted);font-size:10px}.week-streak svg{width:22px;height:22px;padding:4px;border-radius:50%;background:#ded6c9}.week-streak .done svg{background:var(--green-main);color:#fff}.week-streak .today svg{background:var(--gold-main);color:#fff}.achievement-strip{max-width:1060px;display:flex;gap:12px;align-items:stretch;margin:24px 0}.strip-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.strip-title h2{margin:0;font:700 21px "Noto Serif SC"}.strip-title a,.strip-title>span{color:var(--gold-main);text-decoration:none;font-size:12px}.achievement-strip .strip-title{min-width:135px;display:grid;align-content:center}.achievement-badge{min-width:125px;flex:1;padding:13px 10px;text-align:center;border:1px solid #f2d98e44;background:#0d1919aa;border-radius:12px;display:grid;gap:3px;color:#f5ead6}.achievement-badge>span{margin:auto;width:37px;height:37px;border-radius:50%;display:grid;place-items:center;background:#e2ae4e;color:#53320c}.achievement-badge svg{width:20px}.achievement-badge small{color:#c5cbbf;font-size:10px}.continue-section{max-width:1120px;margin-top:28px}.continue-section>.strip-title{margin-bottom:12px}.continue-worlds{display:grid;grid-template-columns:1.35fr repeat(3,1fr);gap:13px}.continue-world{position:relative;min-height:160px;padding:18px;border:1px solid #e8d18d33;color:#f7ead7;text-decoration:none;border-radius:12px;display:grid;align-content:end;gap:6px;overflow:hidden;background:#283e35;transition:transform .22s}.continue-world:hover{transform:translateY(-5px)}.continue-world:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(circle at 80% 18%,#f4c35b55,transparent 20%),linear-gradient(160deg,transparent 50%,#071512a8);pointer-events:none}.continue-world>*{position:relative;z-index:1}.continue-world p,.continue-world small{margin:0;font-size:10px;color:#d1d6cc}.continue-world h3{margin:0;font:700 18px "Noto Serif SC"}.continue-world>span{font-size:11px;color:#e0e0d7}.continue-world b{position:absolute;right:15px;bottom:16px;background:#e4b950;color:#42290d;padding:6px 9px;border-radius:6px;font-size:12px}.card-history{background:#5d4037}.card-culture{background:#3b6651}.card-numbers{background:#a26b2f}.card-poetry{background:#466275}.theme-paper{background:var(--bg-paper-light)}.paper-map{position:relative;overflow:hidden;min-height:calc(100vh - 130px);padding:26px 34px 38px;border:1px solid #d7c29e;border-radius:16px;background:radial-gradient(circle at 18% 14%,#fffbe9cc,transparent 20%),radial-gradient(circle at 85% 80%,#c9a76b33,transparent 27%),repeating-linear-gradient(0deg,#f6edd9 0,#f6edd9 2px,#f2e5cc,#f2e5cc 4px);box-shadow:var(--shadow)}.paper-map:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.28;background-image:linear-gradient(30deg,transparent 48%,#9d805211 49% 51%,transparent 52%),linear-gradient(-28deg,transparent 48%,#9d805211 49% 51%,transparent 52%);background-size:170px 130px;pointer-events:none}.map-head{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid #bba37455;padding-bottom:13px}.map-head p{margin:0;font:700 26px "Noto Serif SC"}.map-head span{font-size:12px;color:var(--text-muted)}.map-head span svg{width:15px;vertical-align:middle;color:var(--gold-main)}.map-rank-link{padding:8px 12px;color:#68491d;background:#ddbd7555;border:1px solid #bf8f3a77;border-radius:999px;text-decoration:none;font-size:12px}.map-rank-link svg{width:15px;vertical-align:middle}.map-rose{position:absolute;z-index:1;left:6%;bottom:5%;font-size:65px;color:#a77d3c55}.island-grid{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,minmax(210px,1fr));gap:30px 45px;max-width:1130px;margin:65px auto 20px}.world-island{position:relative;min-height:230px;display:grid;align-content:end;text-decoration:none;color:#fff;border-radius:43% 50% 38% 46%/42% 42% 50% 48%;filter:drop-shadow(0 17px 11px #66451640);transition:transform .25s,filter .25s}.world-island:hover{transform:translateY(-9px) scale(1.025);filter:drop-shadow(0 24px 14px #66451655)}.island-art{position:absolute;top:0;right:3%;bottom:29%;left:3%;border-radius:48% 52% 36% 42%/52% 45% 42% 48%;overflow:hidden;border:5px solid #b58842bb;background:linear-gradient(150deg,#436f4b 0,#436f4b 53%,#2b4733 54%)}.island-art:before{content:"";position:absolute;top:25%;right:0;bottom:0;left:0;background:repeating-linear-gradient(130deg,#243e2d 0,#243e2d 10px,#385f3b 11px,#385f3b 25px)}.island-landmark{position:absolute;left:50%;top:37%;transform:translate(-50%,-50%);width:70px;height:62px;display:grid;place-items:center;color:#fff0c6;background:#7b4e2f;border:4px solid #d7b16b;border-radius:9px 9px 3px 3px;font:900 31px "Noto Serif SC";box-shadow:0 12px #42331d}.island-cloud{position:absolute;width:70px;height:23px;border-radius:50%;background:#fff5d988;filter:blur(1px);z-index:2}.cloud-one{left:6%;bottom:15%}.cloud-two{right:4%;top:15%}.island-copy{position:relative;z-index:2;margin:0 9px;padding:13px 17px;border-radius:10px;background:#234b38e8;border:1px solid #f1d69155;box-shadow:0 7px 13px #1b201d33}.island-copy h2{margin:0;font:700 23px "Noto Serif SC"}.island-copy p{margin:3px 0 7px;color:#e4eadc;font-size:11px}.island-copy span{font-size:11px;color:#ffe08a}.island-copy svg{width:13px;vertical-align:-2px}.island-enter{position:absolute;z-index:3;right:12px;top:12px;font-size:11px;padding:6px 8px;border-radius:999px;background:#10221c99;opacity:0;transform:translateY(5px);transition:.2s}.world-island:hover .island-enter{opacity:1;transform:none}.island-enter svg{width:13px;vertical-align:-2px}.island-culture .island-art{background:linear-gradient(150deg,#a85f37,#5d3526)}.island-culture .island-art:before{background:repeating-linear-gradient(130deg,#773b28 0,#773b28 10px,#b56c3d 11px,#b56c3d 25px)}.island-poetry .island-art{background:linear-gradient(150deg,#516c89,#293c58)}.island-poetry .island-copy{background:#304c68e8}.island-civilization .island-art{background:linear-gradient(150deg,#866e48,#514126)}.island-civilization .island-copy{background:#5d4930e8}.island-nature .island-art{background:linear-gradient(150deg,#4b837f,#27595d)}.island-nature .island-copy{background:#28625fe8}.island-numbers .island-art{background:linear-gradient(150deg,#c37a2e,#73461d)}.island-numbers .island-copy{background:#8c4e1ee8}.is-locked{filter:grayscale(.75) drop-shadow(0 14px 9px #66451633)}.is-locked .island-art{opacity:.72}.lock-overlay{position:absolute;z-index:4;top:0;right:0;bottom:0;left:0;display:grid;place-content:center;text-align:center;gap:8px;border-radius:inherit;background:#111b1a55;color:#fff7df;font-size:12px}.lock-overlay svg{margin:auto;width:27px;height:27px}.chapter-page{padding-bottom:28px}.chapter-hero{min-height:150px;padding:25px;display:flex;gap:18px;align-items:flex-start;border-radius:14px;color:#fff9e9;background:linear-gradient(115deg,#264d42,#173d32);box-shadow:var(--shadow)}.chapter-hero>a{color:#fff;background:#ffffff20;border-radius:50%;padding:7px;display:grid}.chapter-hero h2{margin:4px 0 12px;font:700 25px "Noto Serif SC"}.chapter-hero p,.chapter-hero span{font-size:12px;color:#e4e7d9}.chapter-hero span{display:flex;gap:9px;align-items:center}.chapter-hero span svg{width:14px;color:#f0c363}.hero-history{background:linear-gradient(115deg,#624036,#3e2520)}.hero-numbers{background:linear-gradient(115deg,#8e5822,#503114)}.chapter-intro{display:flex;gap:12px;align-items:center;margin:20px 0;padding:15px 18px;border-left:4px solid var(--gold-main);background:#f0e4cf}.chapter-intro svg{color:var(--gold-main)}.chapter-intro p{margin:3px 0 0;font-size:13px;color:var(--text-muted)}.chapter-path{display:flex;align-items:flex-start;justify-content:space-between;gap:0;position:relative;margin:55px 4% 45px}.chapter-step{display:flex;align-items:center;flex:1;min-width:0}.chapter-step>i{height:3px;flex:1;background:#d7c6a8;margin-top:-55px}.chapter-step>i.lit{background:linear-gradient(90deg,#2f654f,#86ad74)}.level-node{display:grid;justify-items:center;text-align:center;gap:8px;max-width:135px;text-decoration:none;color:var(--text-main);position:relative;z-index:1}.node-icon{width:64px;height:64px;border-radius:50%;border:5px solid #d5c5a5;background:#f8f1e4;display:grid;place-items:center;color:#8d887c;box-shadow:0 0 0 5px #f4ead8}.node-icon svg{width:24px}.level-node b{font-size:13px}.level-node small{font-size:10px;line-height:1.5;color:var(--text-muted)}.level-node.complete .node-icon,.level-node.active .node-icon{background:var(--green-main);border-color:#a9b977;color:#fff}.level-node.current .node-icon{box-shadow:0 0 0 9px #c79a4350;animation:pulse 1.9s infinite}.level-node.locked{opacity:.64}.boss-teaser{display:flex;align-items:center;gap:14px;padding:19px 22px;background:#ebe0cc;border:1px solid #d2bd99;border-radius:12px}.boss-teaser>svg{color:var(--red-main);width:38px;height:38px}.boss-teaser h2{margin:0;font:700 21px "Noto Serif SC"}.boss-teaser span{font-size:12px;color:var(--text-muted)}.boss-teaser .button{margin-left:auto;white-space:nowrap}.battle-page{min-height:100vh;padding:20px max(22px,calc((100% - 1280px)/2));background:linear-gradient(135deg,#f5eddd,#fbf8f0)}.battle-top{display:grid;grid-template-columns:40px minmax(160px,1fr) minmax(120px,230px) 40px;gap:15px;align-items:center;border-bottom:1px solid #dfd4c0;padding-bottom:16px}.battle-top button{height:36px;border:0;background:transparent;color:var(--text-main)}.battle-top>div{display:flex;justify-content:space-between;gap:10px;align-items:center}.battle-top b{font-family:"Noto Serif SC"}.battle-top span{display:flex;align-items:center;gap:4px;color:var(--text-muted);font-size:12px}.battle-top span svg{width:14px}.offline-note{max-width:770px;margin:15px auto 0;padding:8px 12px;border-radius:7px;background:#f5e5be;color:#79521d;text-align:center;font-size:12px}.battle-layout{max-width:1180px;margin:56px auto 110px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.75fr);gap:25px;align-items:start}.question-card{padding:32px;background:var(--bg-card);border:1px solid #e4d8c4;border-radius:15px;box-shadow:var(--shadow)}.paper-kicker{display:flex;align-items:center;gap:6px;margin:0 0 20px;color:var(--green-main);font-size:12px;font-weight:700}.paper-kicker svg{width:16px}.question-card h2{font:700 27px/1.6 "Noto Serif SC";margin-bottom:28px}.option-list{display:grid;gap:12px}.option-button{min-height:66px;display:grid;grid-template-columns:35px 1fr 22px;align-items:center;gap:12px;text-align:left;padding:10px 14px;border:1px solid #ded2bd;border-radius:10px;background:#fffdf8;color:var(--text-main);transition:.18s}.option-button:hover:not(:disabled){border-color:var(--green-main);transform:translate(3px)}.option-button>span{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;background:#eee5d7;color:#635c54;font-size:12px}.option-button>svg{width:19px}.option-button.selected{border:2px solid var(--green-main);background:#e7f1e9}.option-button.correct{border-color:#499265;background:#e1f0e5}.option-button.wrong{border-color:#bd6251;background:#f7e6e0}.battle-tools{display:flex;gap:9px;margin-top:15px}.battle-tools button{border:0;background:none;color:var(--text-muted);font-size:12px;display:flex;gap:5px;align-items:center}.battle-tools .active{color:var(--gold-main)}.battle-tools svg{width:15px}.explanation-column{min-height:310px}.explanation-empty,.answer-explanation{padding:25px;border-radius:15px;border:1px solid #e0d3bd;background:#f8f0e1}.explanation-empty{text-align:center;color:var(--text-muted)}.explanation-empty svg{width:42px;height:42px;color:var(--gold-main)}.explanation-empty h2{font:700 21px "Noto Serif SC";color:var(--text-main)}.explanation-empty p{font-size:13px;line-height:1.7}.answer-explanation.is-correct{background:#e6f0e7;border-color:#b9d5bf}.answer-explanation.is-wrong{background:#f7e5de;border-color:#e3b3a7}.explanation-title{display:flex;gap:10px;align-items:center}.explanation-title>svg{width:28px;height:28px;color:var(--green-main)}.is-wrong .explanation-title>svg{color:var(--red-main)}.explanation-title span{display:block;margin-top:3px;color:var(--text-muted);font-size:11px}.answer-explanation section{border-top:1px solid #b8ccb555;margin-top:18px;padding-top:14px}.answer-explanation h3{margin:0 0 7px;font-size:13px}.answer-explanation section p{margin:0;font-size:13px;line-height:1.75}.answer-explanation footer{display:flex;align-items:center;gap:6px;margin-top:18px;font-size:12px;color:var(--text-muted)}.answer-explanation footer svg{width:15px}.battle-footer{position:fixed;z-index:5;left:0;right:0;bottom:0;padding:14px max(22px,calc((100% - 1180px)/2));border-top:1px solid #d9cebd;background:#fffaf1ef;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:space-between}.battle-footer span{color:var(--text-muted);font-size:12px}.result-page{min-height:100vh;max-width:620px;margin:auto;padding:12vh 24px 50px;text-align:center;background:radial-gradient(circle at 50% 12%,#fff4d9,#f4ebd9 42%,#eaddc7)}.result-medal{display:grid;place-items:center;width:92px;height:92px;margin:auto;border-radius:50%;background:linear-gradient(145deg,#f4cc68,#b87b2d);color:#fff;border:8px solid #f8e4a6;box-shadow:0 0 0 8px #c79a4340}.result-medal svg{width:40px}.result-page h1{font:700 34px "Noto Serif SC"}.result-page>p:not(.eyebrow){color:var(--text-muted);line-height:1.8}.result-page .progress-ring{margin:25px auto}.result-stats{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid #d8cdbd;padding:19px 0;margin:25px 0}.result-stats span{display:grid;gap:5px;font-size:12px;color:var(--text-muted)}.result-stats b{font:700 22px Cormorant Garamond;color:var(--text-main)}.review-reminder{display:flex;gap:10px;text-align:left;padding:14px 16px;margin-bottom:20px;background:#e7eddf;border-radius:9px}.review-reminder svg{color:var(--green-main)}.review-reminder span{display:block;color:var(--text-muted);font-size:12px;margin-top:4px}.review-page,.profile-page,.store-page,.leaderboard-page{max-width:1160px;margin:auto}.review-tabs,.rank-tabs,.report-tabs{display:flex;gap:8px}.review-tabs button,.rank-tabs button,.report-tabs button{border:1px solid #dccfb8;background:transparent;border-radius:7px;padding:8px 13px;font-size:12px;color:var(--text-muted)}.review-tabs .active,.rank-tabs .active,.report-tabs .active{background:#e7f0e7;border-color:var(--green-main);color:var(--green-deep)}.schedule-row{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:20px 0}.schedule-card{padding:14px;background:#f9f4e9;border:1px solid #e2d6c1;border-radius:10px;display:grid;gap:5px}.schedule-card.active{background:#e7f0e7;border-color:#8bb195}.schedule-card span{font-size:12px;color:var(--green-deep)}.schedule-card strong{font:700 26px Cormorant Garamond}.schedule-card small{color:var(--text-muted);font-size:11px}.review-primary{display:flex;justify-content:space-between;align-items:center;padding:26px;gap:25px}.review-primary h2{font:700 25px "Noto Serif SC"}.review-primary p:not(.eyebrow){color:var(--text-muted);font-size:13px;line-height:1.7;max-width:560px}.review-orbit{width:110px;aspect-ratio:1;border-radius:50%;border:1px dashed #88a37b;display:grid;place-content:center;text-align:center;color:var(--green-main);flex:none}.review-orbit svg{width:37px;height:37px;margin:auto}.review-orbit span{font-size:11px}.weak-list{margin-top:20px;padding:22px}.weak-list>article{display:grid;grid-template-columns:30px minmax(130px,.9fr) minmax(180px,1.5fr);gap:12px;align-items:center;padding:15px 0;border-top:1px solid #e6ddcf;font-size:13px}.weak-list>article>div{display:grid;gap:6px}.weak-list small{font-size:10px;color:var(--text-muted)}.rank{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;color:#fff;background:#a8a49d;font-size:11px}.rank-1{background:#bb6040}.rank-2{background:#c5953c}.rank-3{background:#598773}.graph-page{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:22px}.knowledge-network{min-height:540px;display:grid;grid-template-columns:repeat(3,1fr);grid-template-rows:1fr 1fr 1fr;place-items:center;gap:15px;padding:20px;background:radial-gradient(circle at center,#e0eedf 0 14%,transparent 15%),linear-gradient(135deg,#fdf9ef,#f0e4cf);border:1px solid #e3d6c0;border-radius:15px;position:relative}.knowledge-network:before,.knowledge-network:after{content:"";position:absolute;width:55%;height:1px;background:#77927c;transform:rotate(27deg);z-index:0}.knowledge-network:after{transform:rotate(-28deg)}.network-center{grid-column:2;grid-row:2;position:relative;z-index:1;width:142px;height:142px;border-radius:50%;display:grid;place-content:center;text-align:center;color:#fff;background:var(--green-main);box-shadow:0 0 0 11px #c3d8c4}.network-center span,.network-center small{font-size:11px}.network-center strong{font:700 21px "Noto Serif SC"}.knowledge-node{position:relative;z-index:1;display:grid;justify-items:center;gap:5px;text-align:center}.knowledge-node>span{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#fff8e9;border:3px solid #d0b77f;color:var(--orange-main)}.knowledge-node>span svg{width:20px}.knowledge-node b{font-size:12px}.knowledge-node div{display:none}.knowledge-detail{padding:22px;background:#e5ecdf;border-radius:13px;border:1px solid #c9d6c0}.knowledge-detail h2{font:700 26px "Noto Serif SC"}.knowledge-detail dl{display:grid;gap:9px}.knowledge-detail dl div{display:grid;grid-template-columns:55px 1fr;gap:8px;font-size:12px}.knowledge-detail dt{color:var(--text-muted)}.knowledge-detail dd{margin:0}.knowledge-detail>p{font-size:13px;line-height:1.75}.knowledge-detail h3{font-size:14px}.knowledge-detail ul{padding-left:18px;color:var(--green-deep);font-size:13px;line-height:1.8}.knowledge-detail .button{width:100%;font-size:12px}.profile-hero{display:grid;grid-template-columns:78px minmax(180px,1fr) auto;gap:17px;align-items:center;padding:25px}.profile-avatar{width:72px;height:72px;font-size:28px}.profile-hero p{margin:0;color:var(--text-muted)}.profile-hero h2{margin:2px 0;font:700 30px Cormorant Garamond}.profile-hero .mastery-bar{max-width:280px;margin:7px 0}.profile-hero small{color:var(--text-muted)}.profile-hero button{border:0;background:transparent;color:var(--text-muted);display:flex;gap:5px;align-items:center;font-size:12px}.profile-hero button svg{width:15px}.profile-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin:16px 0}.profile-stats-grid article{padding:16px;display:grid;gap:5px}.profile-stats-grid svg{width:20px;color:var(--gold-main)}.profile-stats-grid b{font:700 27px Cormorant Garamond}.profile-stats-grid span{font-size:11px;color:var(--text-muted)}.study-report{padding:22px}.report-bars{height:190px;display:flex;align-items:flex-end;gap:15px;padding:16px 8px 0}.report-bars span{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:6px}.report-bars i{display:block;width:min(100%,32px);background:linear-gradient(#79a489,#2f654f);border-radius:6px 6px 0 0}.report-bars small{font-size:10px;color:var(--text-muted)}.badge-collection{display:flex;align-items:stretch;gap:12px;margin-top:18px}.badge-collection .strip-title{min-width:130px;display:grid;align-content:center}.badge-collection .achievement-badge{background:#f9f0dd;color:var(--text-main);border-color:#e6d5b5}.badge-collection .achievement-badge small{color:var(--text-muted)}.pass-card{min-height:220px;padding:28px 33px;display:flex;justify-content:space-between;overflow:hidden;position:relative;border-radius:15px;color:#fff8e8;background:linear-gradient(115deg,#151e1f,#332b1d)}.pass-card:after{content:"";position:absolute;right:-80px;top:-80px;width:300px;height:300px;border:1px solid #e5bb6350;border-radius:50%;box-shadow:0 0 0 30px #e5bb6312,0 0 0 60px #e5bb630d}.pass-card>div{position:relative;z-index:1;max-width:620px}.pass-card h2{font:700 30px "Noto Serif SC"}.pass-card p:not(.eyebrow){font-size:13px;line-height:1.7;color:#dcdbc9}.pass-card>span{z-index:1;display:grid;place-items:center;width:93px;height:93px;border-radius:50%;border:1px solid #e5bb6388;color:#e9c26b}.pass-card>span svg{width:43px;height:43px}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px;margin-top:20px}.product-card{padding:22px;background:#fffaf0;border:1px solid #e4d7c3;border-radius:13px}.product-mark{display:grid;place-items:center;width:39px;height:39px;border-radius:50%;background:#e5d1a2;color:#865920}.product-mark svg{width:19px}.product-card h2{margin:13px 0 3px;font:700 21px "Noto Serif SC"}.product-card>p{margin:0;color:var(--text-muted);font-size:12px}.product-card dl{display:grid;gap:8px;margin:18px 0}.product-card dl div{display:grid;grid-template-columns:60px 1fr;font-size:12px}.product-card dt{color:var(--text-muted)}.product-card dd{margin:0}.product-card footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #eadfcd;padding-top:15px}.product-card footer strong{font:700 27px Cormorant Garamond;color:var(--red-main)}.product-card footer .button{min-height:35px;font-size:12px}.leaderboard-page{max-width:720px}.rank-tabs{justify-content:center;margin:10px 0 32px}.podium{min-height:260px;display:flex;align-items:flex-end;justify-content:center;gap:15px;margin:0 auto}.podium article{width:150px;min-height:172px;padding:16px 8px;text-align:center;background:#eee3ce;border-radius:14px 14px 0 0;display:grid;justify-items:center;align-content:start;gap:4px}.podium .podium-2{order:2;min-height:220px;background:linear-gradient(#efd58a,#d69d38)}.podium .podium-3{order:3;min-height:150px;background:#e1d1bc}.podium article>span{font:700 23px Cormorant Garamond}.rank-avatar{width:55px;height:55px;display:grid;place-items:center;border:3px solid #fff5d9;border-radius:50%;background:#6b8875;color:#fff;font:700 23px "Noto Serif SC"}.rank-avatar.small{width:34px;height:34px;font-size:15px;border-width:2px}.podium small,.rank-list small{font-size:11px;color:var(--text-muted)}.podium strong{font-size:12px;color:#5c411a}.podium strong svg,.rank-list strong svg{width:14px;vertical-align:-2px;color:var(--gold-main)}.rank-list{padding:0}.rank-list article{display:grid;grid-template-columns:30px 38px 1fr 55px 95px;align-items:center;gap:10px;padding:13px 16px;border-bottom:1px solid #e9dfcf;font-size:13px}.rank-list article>span{color:var(--text-muted);text-align:center}.rank-list strong{display:flex;justify-content:flex-end;gap:3px;align-items:center;color:var(--gold-main)}.empty-state,.error-state{padding:45px;text-align:center;border:1px dashed #cdbb98;border-radius:12px;color:var(--text-muted)}.empty-state svg,.error-state svg{width:42px;height:42px;color:var(--gold-main)}.loading-skeleton{display:grid;gap:12px}.loading-skeleton i{height:70px;border-radius:12px;background:linear-gradient(90deg,#eee4d3,#faf5ea,#eee4d3);background-size:200% 100%;animation:shimmer 1.2s infinite}@keyframes pulse{50%{box-shadow:0 0 0 14px #c79a431a}}@keyframes shimmer{to{background-position:-200% 0}}@media(max-width:1050px){.shell-content{padding-inline:24px}.camp-dashboard{grid-template-columns:1fr}.camp-side{grid-template-columns:1.1fr .9fr}.continue-worlds{grid-template-columns:repeat(2,1fr)}.continue-world.featured{grid-column:span 2}.island-grid{gap:25px 18px}.graph-page{grid-template-columns:1fr}.knowledge-detail{max-width:none}.battle-layout{grid-template-columns:1fr}.explanation-column{min-height:auto}.explanation-empty{display:none}.profile-stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.app-shell{display:block}.desktop-sidebar{display:none}.shell-content{padding:0 16px 85px}.shell-top{min-height:74px}.shell-top h1{font-size:23px}.shell-top>div:first-child p{font-size:11px}.top-status>span:first-child,.top-status .level-label{display:none}.top-status>span:not(.status-avatar):not(.level-label){padding:6px 8px}.mobile-bottom-nav{position:fixed;display:flex;z-index:20;left:0;right:0;bottom:0;height:67px;padding-bottom:env(safe-area-inset-bottom);background:#fffaf0f4;-webkit-backdrop-filter:blur(13px);backdrop-filter:blur(13px);border-top:1px solid #ded2bf;justify-content:space-around}.mobile-bottom-nav a{min-width:48px;color:#7d776c;text-decoration:none;display:grid;justify-items:center;align-content:center;gap:3px;font-size:10px}.mobile-bottom-nav svg{width:19px}.mobile-bottom-nav a.active{color:var(--green-main)}.camp-scene{border-radius:0;padding:17px;margin-inline:-16px}.camp-dashboard,.camp-side{display:grid;grid-template-columns:1fr}.quest-panel{padding:19px}.achievement-strip{overflow-x:auto;margin-right:-16px;padding-right:16px}.achievement-strip .strip-title{display:none}.achievement-strip .achievement-badge{min-width:120px}.continue-worlds{grid-template-columns:1fr 1fr}.continue-world.featured{grid-column:span 2}.paper-map{min-height:auto;padding:19px 13px;margin-inline:-4px;border-radius:12px}.map-head p{font-size:22px}.map-head>div>p{margin-bottom:3px}.map-rank-link{font-size:10px;padding:7px}.island-grid{grid-template-columns:1fr 1fr;gap:18px 9px;margin-top:35px}.world-island{min-height:182px}.island-art{top:0;right:1%;bottom:33%;left:1%;border-width:3px}.island-landmark{width:48px;height:43px;font-size:21px;border-width:3px}.island-copy{margin:0 3px;padding:9px 10px}.island-copy h2{font-size:17px}.island-copy p{display:none}.island-copy span{font-size:9px}.world-island:hover{transform:none}.island-enter{display:none}.chapter-hero{margin-inline:-4px;padding:19px}.chapter-hero h2{font-size:20px}.chapter-hero span{display:flex;flex-wrap:wrap}.chapter-path{margin:38px 0;display:grid;grid-template-columns:1fr;gap:0}.chapter-step{min-height:92px;align-items:flex-start}.chapter-step>i{height:36px;width:3px;flex:none;margin:-2px 0 -2px 31px}.level-node{grid-template-columns:64px 1fr;justify-items:start;text-align:left;max-width:none;column-gap:14px}.level-node b{align-self:end}.level-node small{grid-column:2;align-self:start}.boss-teaser{align-items:flex-start;flex-wrap:wrap}.boss-teaser .button{margin-left:52px}.battle-page{padding-inline:16px}.battle-top{grid-template-columns:32px 1fr 32px}.battle-top>.mastery-bar{display:none}.battle-top>div{display:grid;gap:2px}.question-card{padding:23px 17px}.question-card h2{font-size:22px}.battle-layout{margin:32px auto 94px}.battle-footer{padding:11px 16px}.battle-footer .button{min-width:155px}.schedule-row{overflow-x:auto;grid-template-columns:repeat(4,145px);padding-bottom:3px}.review-primary{padding:20px;align-items:flex-start}.review-primary h2{font-size:21px}.review-orbit{width:80px}.weak-list{padding:17px}.weak-list>article{grid-template-columns:27px 1fr;gap:8px}.weak-list>article>div{grid-column:2}.graph-page{margin-inline:-3px}.knowledge-network{min-height:400px;gap:5px;padding:8px}.network-center{width:108px;height:108px}.network-center strong{font-size:17px}.knowledge-node>span{width:39px;height:39px}.knowledge-node b{font-size:10px}.profile-hero{grid-template-columns:62px 1fr;gap:12px;padding:17px}.profile-avatar{width:58px;height:58px;font-size:21px}.profile-hero button{grid-column:1/-1;justify-self:end}.profile-stats-grid{gap:8px}.profile-stats-grid article{padding:12px}.badge-collection{overflow-x:auto;margin-right:-16px;padding-right:16px}.badge-collection .strip-title{display:none}.badge-collection .achievement-badge{min-width:120px}.product-grid{grid-template-columns:1fr}.pass-card{padding:23px}.pass-card h2{font-size:24px}.pass-card>span{display:none}.podium{gap:7px}.podium article{width:31%;min-height:145px}.podium .podium-2{min-height:190px}.rank-list article{grid-template-columns:25px 38px 1fr 62px;gap:7px}.rank-list article small{display:none}.result-page{padding-top:9vh}.onboarding-card{margin-top:9vh}}@media(max-width:410px){.top-status>span:nth-child(2){display:none}.continue-world{min-height:145px}.continue-world h3{font-size:15px}.island-grid{grid-template-columns:1fr 1fr}.island-copy h2{font-size:15px}.time-options{gap:8px}.time-options button{min-height:125px}.time-options strong{font-size:33px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.welcome-return{border:0;background:transparent;color:#e8d6a8;text-decoration:underline;text-underline-offset:4px}.welcome-error{z-index:1;max-width:340px;margin:8px 0;padding:9px 12px;background:#8a3328bb;border:1px solid #f1b2a6;border-radius:8px;color:#fff5ed;font-size:12px}.auth-backdrop{position:fixed;z-index:80;top:0;right:0;bottom:0;left:0;padding:20px;display:grid;place-items:center;background:#07100dcc;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.auth-dialog{position:relative;width:min(100%,465px);padding:32px;background:linear-gradient(145deg,#fffdf5,#f2e4cd);border:1px solid #e8d5b6;border-radius:18px;box-shadow:0 24px 80px #0008;text-align:center;color:var(--text-main)}.dialog-close{position:absolute;right:15px;top:15px;border:0;background:transparent;color:var(--text-muted)}.dialog-close svg{width:19px}.auth-icon{width:52px;height:52px;margin:0 auto 15px;border-radius:50%;display:grid;place-items:center;background:#dceade;color:var(--green-main)}.auth-icon svg{width:26px}.auth-dialog h2{font:700 27px/1.35 "Noto Serif SC";margin:0 16px 12px}.auth-dialog>p:not(.eyebrow):not(.auth-error):not(.auth-note){margin:0 auto 20px;max-width:350px;color:var(--text-muted);font-size:13px;line-height:1.75}.email-field{display:grid;gap:7px;margin:20px 0;text-align:left;font-size:12px;font-weight:700}.email-field input{min-height:48px;padding:0 13px;border:1px solid #d5c5ad;border-radius:9px;background:#fffdf8;color:var(--text-main);font:500 15px system-ui}.auth-dialog .button{width:100%}.dialog-skip{border:0;background:transparent;margin-top:15px;color:var(--green-main);font-size:13px;text-decoration:underline;text-underline-offset:4px}.auth-error{margin:0 0 12px;padding:9px 11px;border-radius:7px;background:#f7e0db;color:#893e2f;font-size:12px;line-height:1.55;text-align:left}.auth-note{display:flex;align-items:flex-start;justify-content:center;gap:5px;margin:15px 0 0;color:var(--text-muted);font-size:11px;line-height:1.6}.auth-note svg{width:15px;flex:none;color:var(--green-main)}.otp-inputs{display:flex;justify-content:center;gap:8px;margin:25px 0 18px}.otp-inputs input{width:42px;height:50px;border:1px solid #cfbea5;border-radius:8px;background:#fffdf8;text-align:center;font:700 24px Cormorant Garamond;color:var(--green-deep)}.otp-inputs input:focus{outline:2px solid var(--green-main);border-color:var(--green-main)}@media(max-width:460px){.auth-dialog{padding:27px 19px}.auth-dialog h2{font-size:23px}.otp-inputs{gap:5px}.otp-inputs input{width:calc((100vw - 86px)/6);height:47px}}.turnstile-box{position:relative;z-index:1;margin:10px auto;min-height:0;display:flex;justify-content:center}.welcome-screen .turnstile-box{margin:8px auto 0}.profile-account-link{display:flex;align-items:center;gap:5px;color:var(--text-muted);text-decoration:none;font-size:12px}.profile-account-link svg{width:15px}.account-page{max-width:720px;margin:auto;padding:30px}.account-page h2{font:700 28px "Noto Serif SC"}.account-page>p{color:var(--text-muted);line-height:1.8}.account-page hr{border:0;border-top:1px solid #e3d8c7;margin:28px 0}.account-page h3{font:700 19px "Noto Serif SC"}.account-links{display:flex;gap:15px}.account-links a{color:var(--green-main)}
