@font-face{font-family:App CJK Sans;font-style:normal;font-weight:400;font-display:swap;src:local(NotoSansCJKsc-Regular);unicode-range:U+2E80-2EFF,U+3000-303F,U+31C0-31EF,U+3400-4DBF,U+4E00-9FFF,U+F900-FAFF,U+FE30-FE4F,U+FF00-FFEF,U+20000-2FA1F}@font-face{font-family:App CJK Sans;font-style:normal;font-weight:500;font-display:swap;src:local(NotoSansCJKsc-Medium);unicode-range:U+2E80-2EFF,U+3000-303F,U+31C0-31EF,U+3400-4DBF,U+4E00-9FFF,U+F900-FAFF,U+FE30-FE4F,U+FF00-FFEF,U+20000-2FA1F}@font-face{font-family:App CJK Sans;font-style:normal;font-weight:700;font-display:swap;src:local(NotoSansCJKsc-Bold);unicode-range:U+2E80-2EFF,U+3000-303F,U+31C0-31EF,U+3400-4DBF,U+4E00-9FFF,U+F900-FAFF,U+FE30-FE4F,U+FF00-FFEF,U+20000-2FA1F}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--font-ui:system-ui, -apple-system, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", "App CJK Sans", sans-serif;--font-display:"Noto Serif CJK SC", "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, "Songti SC", "Noto Serif SC", serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, monospace;font-family:var(--font-ui);--radius-md:12px;--radius-lg:16px;--radius-pill:999px;--accent:#c9bb8e;--accent-ring:#c9bb8e66;--elevate:0 10px 30px #060a048c;--card-shadow:0 18px 40px -18px #060a0499, 0 2px 6px -2px #060a0480;--card-shadow-hi:0 24px 52px -20px #060a04a6, 0 3px 10px -3px #060a048c;--card-shadow-hover:0 26px 58px -20px #060a04b8, 0 4px 12px -3px #060a0499;--danger:#e6d8bf;--danger-ring:#e6d8bf59;--on-danger:#201a11;--rate-r:#6b2330;--rate-r-ring:#6b233080;--rate-r-on:#fdf4f5;--rate-y:#b28a3a;--rate-y-solid:#b28a3a;--rate-y-ring:#b28a3a73;--rate-y-on:#2e2100;--rate-g:#62866f;--rate-g-ring:#62866f73;--rate-g-on:#0c1c14;--bg:#223026;--card:#2c3c30;--card-active:#35463a;--border:#485c4d;--text:#e7f1ea;--muted:#a0b0a3;--kbd-bg:#334439;--kbd-border:#485c4d;--dot-empty:#55695b;--on-accent:#221b10;--row-hover-bg:var(--card-active);--row-hover-shadow:0 10px 24px -12px #0009;--list-bg:var(--card)}*,:before,:after{box-sizing:border-box;-webkit-user-select:none;user-select:none}:root{--font-display:"Noto Serif CJK SC", "Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, "Songti SC", "Noto Serif SC", serif;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}html,body,#root{min-height:100%}body{color:#eef4ee;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:linear-gradient(160deg,#14332a 0%,#0d1f19 55%,#10251d 100%);margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,PingFang SC,Microsoft YaHei,sans-serif;line-height:1.5}button{font:inherit;color:inherit}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.icon-btn{border:1px solid var(--border);background:var(--card);width:44px;height:44px;color:var(--text);cursor:pointer;border-radius:50%;justify-content:center;align-items:center;padding:0;transition:transform .16s,background .16s,border-color .16s,box-shadow .16s,color .16s;display:flex}.icon-btn:hover,.icon-btn:active{color:var(--on-accent);background:var(--accent);border-color:var(--accent);box-shadow:0 8px 28px -6px var(--accent-ring)}.icon-btn:hover{transform:translateY(-1px)}.icon-btn:active{transform:translateY(0)}.icon-btn:focus-visible{box-shadow:0 0 0 3px var(--accent-ring);outline:none}.btn{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:10px;transition:transform .16s,background .16s,box-shadow .16s,opacity .2s}.btn-primary{background:var(--accent);color:var(--on-accent);box-shadow:0 6px 18px var(--accent-ring);padding:12px 44px;font-size:1.05rem;font-weight:600}.btn-primary:hover{box-shadow:0 10px 22px var(--accent-ring);transform:translateY(-1px)}.btn-primary:active{transform:translateY(0)}.btn-ghost{border:1px solid var(--border);color:var(--text);background:0 0;padding:12px 24px;font-size:1rem}.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}.btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none;transform:none}.deck-action,.flip-back{border:1px solid var(--border);background:var(--card);width:44px;height:44px;color:var(--text);cursor:pointer;z-index:10;border-radius:50%;justify-content:center;align-items:center;transition:color .16s,background .16s,border-color .16s,box-shadow .16s,transform .16s;display:flex;position:absolute}.flip-back{top:24px;left:24px}.deck-action{bottom:24px;right:24px}.deck-action:hover,.flip-back:hover{color:var(--on-accent);background:var(--accent);border-color:var(--accent);transform:translateY(-1px)}.deck-action:focus-visible,.flip-back:focus-visible{box-shadow:0 0 0 3px var(--accent-ring);outline:none}.hints{color:var(--muted);white-space:nowrap;flex-wrap:wrap;justify-content:center;gap:24px;font-size:.9rem;display:flex;position:absolute;bottom:24px;left:50%;transform:translate(calc(-50% - 80px))}.route-loading{min-height:100vh}.chart-skel{background:linear-gradient(100deg,#ffffff0b 30%,#ffffff17 50%,#ffffff0b 70%) 0 0/220% 100%;border-radius:12px;min-height:180px;animation:1.4s ease-in-out infinite chart-skel}@keyframes chart-skel{0%{background-position:180% 0}to{background-position:-180% 0}}@media (prefers-reduced-motion:reduce){.chart-skel{animation:none}}.cap-nav{z-index:10;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#12201adb;border:1px solid #ffffff1f;border-radius:24px;flex-direction:column;align-items:center;gap:12px;padding:14px 10px;display:flex;position:fixed;top:50%;left:24px;transform:translateY(-50%);box-shadow:0 30px 70px -34px #000000f2}.cap-items{flex-direction:column;gap:6px;display:flex}.cap-link{color:#b9cabd;width:68px;font:inherit;text-align:center;cursor:pointer;background:0 0;border:0;border-radius:14px;flex-direction:column;align-items:center;gap:5px;padding:8px 6px 7px;font-size:.62rem;font-weight:600;line-height:1.1;transition:color .15s,background .15s;display:flex}.cap-link-label{text-overflow:ellipsis;white-space:nowrap;max-width:100%;display:block;overflow:hidden}.cap-link:hover{color:#eef4ee;background:#ffffff0f}.cap-link.on{color:#08130f;background:#8fdca0;box-shadow:0 12px 24px -14px #8fdca0e6}.cap-link:focus-visible{outline-offset:2px;outline:2px solid #8fdca0}.user-chip{color:#cfe0d4;font:inherit;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1f;border-radius:999px;align-items:center;gap:10px;padding:5px 5px 5px 14px;transition:border-color .15s,background .15s;display:inline-flex}.user-chip:hover{background:#ffffff12;border-color:#ffffff4d}.user-chip:focus-visible{outline-offset:2px;outline:2px solid #8fdca0}.user-chip-name{white-space:nowrap;font-size:.86rem;font-weight:600}.user-chip-avatar{color:#0c1c14;width:34px;height:34px;font-family:var(--font-display);letter-spacing:.04em;background:linear-gradient(140deg,#8fdca0,#c9bb8e);border-radius:50%;flex:none;place-items:center;font-size:.72rem;font-weight:700;display:grid}.user-chip-wrap{display:inline-flex;position:relative}.user-menu{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);opacity:0;pointer-events:none;z-index:20;background:#121a15f5;border:1px solid #ffffff1f;border-radius:14px;min-width:148px;padding:6px;transition:opacity .16s,transform .16s;position:absolute;top:calc(100% + 8px);right:0;transform:translateY(-6px);box-shadow:0 18px 40px -20px #000c}.user-menu.open{opacity:1;pointer-events:auto;transform:none}.user-menu-item{color:#cfe0d4;width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;padding:9px 12px;font-size:.85rem;transition:background .14s,color .14s;display:block}.user-menu-item:hover,.user-menu-item:focus-visible{color:#fff;background:#ffffff14;outline:none}.home-page{color:#eef4ee;background:radial-gradient(120% 80% at 50% -10%,#8fdca038,#0000 60%),radial-gradient(90% 70% at 88% 112%,#e6c87724,#0000 60%),linear-gradient(160deg,#14332a 0%,#0d1f19 55%,#10251d 100%);min-height:100vh;padding:64px 44px;position:relative}.home-page--rail{padding-left:124px}.home-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;width:100%;max-width:1280px;margin:0 auto 20px;display:flex}.home-head-copy{min-width:0}.home-title{font-family:var(--font-display);margin:0;font-size:2.2rem;line-height:1.1}.home-desc{color:#9db3a6;margin:8px 0 0;font-size:.92rem}.home-body{flex-wrap:wrap;align-items:flex-start;gap:28px;width:100%;max-width:1280px;margin:0 auto;display:flex}.home-main{flex:420px;min-width:0}.home-rail{flex-direction:column;flex:none;gap:16px;width:320px;display:flex}.home-card{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:16px;flex-direction:column;gap:14px;padding:18px 20px 20px;display:flex;box-shadow:0 24px 50px -34px #000000d9}.home-card .rc{background:0 0;height:auto;padding:0}.home-card .rc-pburst{flex-wrap:wrap;justify-content:center}.home-card .rc-gauge svg{max-width:360px}.home-rail-skel{opacity:.6;min-height:200px}.home-learn{gap:20px}.home-learn-head{align-items:center;gap:16px;display:flex}.home-learn-chip{border-radius:5px 10px 10px 5px;flex:none;width:40px;height:56px;box-shadow:inset 0 0 0 1px #ffffff2e,0 10px 20px -12px #000c}.home-learn-id{flex-direction:column;flex:1;gap:3px;min-width:0;display:flex}.home-kicker{letter-spacing:.18em;text-transform:uppercase;color:#9db3a6;font-size:.66rem}.home-learn-name{font-family:var(--font-display);margin:0;font-size:1.7rem;font-weight:650;line-height:1.12}.home-learn-sub{color:#9db3a6;font-size:.78rem}.home-learn-pct{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:2rem;font-weight:700}.home-stat-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.home-stat{background:#ffffff09;border:1px solid #ffffff1a;border-radius:12px;flex-direction:column;gap:4px;padding:14px 15px;display:flex}.home-stat span{letter-spacing:.08em;text-transform:uppercase;color:#9db3a6;font-size:.68rem}.home-stat b{font-family:var(--font-display);font-variant-numeric:tabular-nums;font-size:1.6rem;font-weight:700;line-height:1.05}.home-meter{flex-direction:column;gap:8px;display:flex}.home-meter-track{background:#ffffff14;border-radius:999px;height:10px;position:relative;overflow:hidden}.home-meter-track>span{border-radius:inherit;transition:width .45s cubic-bezier(.22,1,.36,1);position:absolute;inset:0 auto 0 0}.home-meter-exp{background:#e6c877}.home-meter-learn{background:#8fdca0}.home-meter-meta{color:#9db3a6;font-variant-numeric:tabular-nums;font-size:.76rem}.home-actions{gap:10px;margin-top:2px;display:flex}.home-start{color:#08130f;font:inherit;cursor:pointer;background:#8fdca0;border:1px solid #8fdca0;border-radius:12px;flex:1;justify-content:center;align-items:center;gap:9px;padding:14px 18px;font-size:.95rem;font-weight:650;transition:box-shadow .16s,transform .16s;display:inline-flex}.home-start:hover{box-shadow:0 16px 30px -14px #8fdca0e6}.home-start:active{transform:translateY(1px)}.home-start:focus-visible,.home-change:focus-visible{outline-offset:2px;outline:2px solid #8fdca0}.home-change{color:#cfe0d4;font:inherit;cursor:pointer;background:0 0;border:1px solid #ffffff29;border-radius:12px;flex:none;justify-content:center;align-items:center;gap:8px;padding:14px 18px;font-size:.95rem;font-weight:600;transition:background .16s,border-color .16s,color .16s;display:inline-flex}.home-change:hover{color:#eef4ee;background:#ffffff0f;border-color:#ffffff57}@media (width<=720px){.home-page--rail{padding-left:108px}}@media (width<=560px){.home-page{padding:56px 18px 48px}.home-page--rail{padding-left:108px}}
