*{margin:0;padding:0;box-sizing:border-box}body{--bg: #f2f6fb;--text: #1f2a37;--muted: #5d6c80;--surface: #ffffff;--surface-alt: #edf3fa;--surface-strong: #e0eaf5;--border: #d2ddea;--shadow-soft: 0 1px 2px rgba(17, 24, 39, .07);--shadow-card: 0 12px 28px rgba(17, 24, 39, .14);--accent: #1d4f8f;--star-fill: #ffffff;--star-level: #3f434a;font-family:SF Pro Text,SF Pro Display,San Francisco,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;background:var(--bg);color:var(--text);transition:background-color .2s ease,color .2s ease}body.theme-dark{--bg: #121417;--text: #eceff3;--muted: #b7c0ca;--surface: #1b2027;--surface-alt: #2a313b;--surface-strong: #9aa3af;--border: #3b4552;--shadow-soft: 0 1px 2px rgba(0, 0, 0, .3);--shadow-card: 0 10px 25px rgba(0, 0, 0, .35);--accent: #eceff3;--star-fill: #2f3742;--star-level: #f2f5f9}.visuallyHidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.betaGateWrap{min-height:100vh;display:grid;place-items:center;padding:24px;background:radial-gradient(circle at top left,rgba(29,79,143,.16),transparent 45%),var(--bg)}.betaGateCard{width:min(100%,420px);background:var(--surface);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow-card);padding:28px}.betaGateEyebrow{display:inline-block;margin-bottom:10px;color:#9c5a00;background:linear-gradient(135deg,#ffe9b5,#ffd06e);border:1px solid #f0bf5d;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:700;letter-spacing:.3px}.betaGateCard h1{margin:0 0 8px;font-size:30px}.betaGateHint{color:var(--muted);margin-bottom:16px}.betaGateForm{display:grid;gap:10px}.betaGateInput{border:1px solid var(--border);border-radius:12px;padding:10px 12px;font-size:15px;background:var(--surface);color:var(--text)}.betaGateBtn{border:1px solid transparent;border-radius:12px;padding:10px 14px;background:#1d4f8f;color:#fff;font-weight:600;cursor:pointer}.betaGateBtn:hover{filter:brightness(1.05)}.betaGateError{margin-top:10px;color:#c52222;font-size:13px}.appShell{display:flex;min-height:100vh}.sidebar{width:250px;flex:0 0 250px;padding:26px 18px;border-right:1px solid var(--border);background:var(--surface);position:sticky;top:0;height:100vh;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--border) 65%,transparent) transparent;transition:width .26s ease,flex-basis .26s ease,padding-left .26s ease,padding-right .26s ease}.sidebar.isCollapsed{width:64px;flex-basis:64px;padding:26px 10px;overflow-y:hidden}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:transparent}.sidebar::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--border) 70%,transparent);border-radius:999px}.sidebar:hover::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--muted) 45%,transparent)}.sidebarBrand{font-size:24px;font-weight:700;letter-spacing:-.3px}.sidebarBrandWrap{display:flex;align-items:center;gap:8px}.betaPill{border-radius:999px;border:1px solid #f0bf5d;background:linear-gradient(135deg,#ffe9b5,#ffd06e);color:#9c5a00;padding:3px 9px;font-size:11px;font-weight:700;letter-spacing:.2px;text-transform:uppercase}.sidebarTopRow{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:18px;position:relative;min-height:34px}.sidebarToggleBtn{border:0;background:transparent;color:var(--text);width:auto;height:auto;padding:0;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;position:absolute;right:0;top:50%;transform:translateY(-50%);transition:left .26s ease,right .26s ease,transform .26s ease}.sidebarToggleLogo{width:44px;height:auto;display:block;overflow:visible}.sidebar.isCollapsed .sidebarToggleBtn{right:auto;left:50%;transform:translate(-50%,-50%)}.sidebarContent{transition:opacity .2s ease,transform .2s ease;opacity:1;transform:translate(0)}.sidebar.isCollapsed .sidebarContent{opacity:0;transform:translate(-8px);pointer-events:none}.sidebarNav{display:flex;flex-direction:column;gap:8px}.sidebarNavBtn{border:1px solid transparent;background:transparent;color:var(--text);border-radius:10px;text-align:left;padding:10px 12px;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px}.sidebarNavBtnLabel{min-width:0}.sidebarNavBtnEmoji{font-size:14px;line-height:1;opacity:.85}.sidebarNavBtn:hover{background:var(--surface-alt)}.sidebarNavBtn.isActive{background:var(--surface-alt);border-color:var(--border);font-weight:600}.sidebarSection{margin-top:22px}.sidebarSectionTitle{color:var(--muted);font-size:12px;letter-spacing:.5px;text-transform:uppercase;margin-bottom:10px}.sidebarBooks{display:flex;flex-direction:column;gap:8px}.sidebarBookBtn{border:1px solid transparent;background:transparent;color:var(--text);border-radius:10px;text-align:left;padding:9px 10px;font-size:13px;cursor:pointer}.sidebarBookBtn:hover{border-color:var(--border);background:var(--surface-alt)}.sidebarBookBtn.isActive{border-color:var(--text);background:var(--surface-alt);font-weight:600}.sidebarEmptyText{color:var(--muted);font-size:13px}.appMain{flex:1;min-width:0}.page{max-width:1100px;margin:0 auto;padding:60px 40px}.dashboardPage{font-family:inherit}.dashboardPage h1{font-weight:700;letter-spacing:-.3px}.dashboardPage .panelCard span,.dashboardPage .recentSquare,.dashboardPage .recentTitle,.dashboardPage .streakBadge{font-family:inherit}h1{font-size:32px;font-weight:500;margin-bottom:30px;letter-spacing:-.5px}h2{font-size:18px;font-weight:400;margin-bottom:16px;color:var(--muted)}.dashboardHeader{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:50px;gap:20px}.dashboardTitleRow{display:flex;align-items:center;gap:8px}.dashboardTitleRow h1{margin:0;line-height:1.1}.streakBadge{padding:6px 14px;border-radius:999px;font-size:14px;font-weight:400;color:#fff;background:linear-gradient(135deg,#ff8a00,#ff3c00);box-shadow:0 4px 16px #ff640040}.coinInfoWrap{position:relative}.coinInfoTrigger{border:none;padding:6px 14px;border-radius:999px;font-size:14px;font-weight:600;color:#6f4a00;background:linear-gradient(135deg,#ffe082,#ffd54f);box-shadow:0 4px 16px #ffbe0038;cursor:pointer}body.theme-dark .coinInfoTrigger{color:#2a2316;background:linear-gradient(135deg,#ffd54f,#ffb300);box-shadow:0 4px 16px #ffb30047}.coinInfoCard{position:absolute;top:calc(100% + 10px);right:0;border:1px solid var(--border);border-radius:12px;background:var(--surface-alt);padding:10px 12px;min-width:280px;z-index:20;box-shadow:var(--shadow-card)}.coinInfoCard p{margin:0 0 6px;color:var(--muted);font-size:13px}.coinInfoCard p:last-child{margin-bottom:0}.dashboardStatus{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;column-gap:14px;row-gap:10px;min-width:340px;align-items:center}.dashboardStatus .streakBadge{grid-column:2;grid-row:1}.dashboardStatus .coinInfoWrap{grid-column:2;grid-row:2;justify-self:end}.dashboardStatus.isEconomyOff{grid-template-rows:auto auto}.dashboardStatus.isEconomyOff .streakBadge{grid-row:1 / span 2;align-self:center;justify-self:end}.xpCard{width:fit-content;background:transparent;border:none;border-radius:0;padding:0;box-shadow:none;position:relative;grid-column:1;grid-row:1 / span 2;justify-self:start;align-self:center;margin:0 0 0 -14px}.xpInfoTrigger{border:none;background:transparent;padding:0;margin:0;cursor:pointer;text-align:left;color:inherit}.xpInfoTrigger:focus-visible{outline:2px solid var(--muted);outline-offset:6px;border-radius:10px}.xpTopRow{display:flex;align-items:center;gap:8px;margin-bottom:0}.xpBarGroup{position:relative;display:flex;align-items:center;min-width:220px}.levelStar{width:76px;height:76px;display:inline-grid;place-items:center;background:transparent;position:relative}.levelStarIcon{width:100%;height:100%;display:block;filter:drop-shadow(0 6px 10px rgba(37,99,235,.45)) drop-shadow(0 12px 20px rgba(37,99,235,.32))}.levelStarShape{fill:var(--star-fill);stroke:none;stroke-linejoin:round;stroke-linecap:round}.levelStarValue{fill:var(--star-level);font-size:22px;font-weight:700;line-height:1;text-anchor:middle;pointer-events:none}body.theme-dark .levelStarIcon{filter:drop-shadow(0 0 6px rgba(248,214,102,.42)) drop-shadow(0 0 14px rgba(248,214,102,.3))}.xpBarTrack{width:100%;height:16px;background:#e5f0fa;border-radius:999px;overflow:hidden;border:4px solid #2f9e44;box-shadow:0 3px #1f6d30}.xpBarFill{height:100%;background:repeating-linear-gradient(-45deg,#46b96f 0 10px,#7fd99c 10px 20px);transition:width .25s ease}body.theme-dark .xpBarTrack{background:#4a5059;border-color:#8e98a6;box-shadow:0 3px #3a3f47}body.theme-dark .xpBarFill{background:repeating-linear-gradient(-45deg,#b8c0cc 0 10px,#d6dbe3 10px 20px)}.levelInfoCard{position:absolute;top:calc(100% + 10px);right:0;border:1px solid var(--border);border-radius:12px;background:var(--surface-alt);padding:12px;min-width:340px;z-index:20;box-shadow:var(--shadow-card)}.levelInfoGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.levelInfoStat{border:1px solid var(--border);background:var(--surface);border-radius:10px;padding:8px 10px}.levelInfoStat span{display:block;color:var(--muted);font-size:12px;margin-bottom:2px}.levelInfoStat strong{color:var(--text);font-size:14px}.levelInfoUpcoming{margin-top:10px}.levelInfoUpcoming p{margin:0 0 6px;font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.4px}.levelInfoRow{display:flex;justify-content:space-between;gap:10px;font-size:13px;color:var(--text);padding:4px 0}.bookGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:20px;margin-top:20px}.selectBookGrid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.selectBookCard{width:100%;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:16px;padding:14px;text-align:left;cursor:pointer;box-shadow:var(--shadow-soft);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.selectBookCard:hover{transform:translateY(-3px);box-shadow:var(--shadow-card);border-color:color-mix(in srgb,var(--border) 55%,var(--accent) 45%)}.selectBookCardTop h3{margin:0 0 6px;font-size:18px;color:var(--text)}.selectBookLastOpened{color:var(--muted);font-size:12px}.selectBookStats{margin-top:12px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.selectBookStat{border:1px solid var(--border);background:var(--surface-alt);border-radius:10px;padding:8px}.selectBookStat span{display:block;font-size:11px;color:var(--muted);margin-bottom:3px;text-transform:uppercase;letter-spacing:.3px;min-height:28px;line-height:1.25}.selectBookStat strong{font-size:16px;color:var(--text)}.marketCoinLine{margin-bottom:14px;color:var(--muted);font-size:14px}.marketGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.marketCard{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px;box-shadow:var(--shadow-soft)}.marketCard h3{margin:0 0 6px;font-size:18px;color:var(--text)}.marketCard p{margin:0 0 10px;color:var(--muted);font-size:13px}.settingsCard{max-width:420px;display:flex;flex-direction:column}.settingsRow{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:10px}.settingsRow span{color:var(--text);font-size:14px;font-weight:500}.settingsHint{margin:0 0 8px;color:var(--muted);font-size:13px}.settingsAuthModeRow{display:flex;gap:8px;margin-top:8px}.settingsAuthModeBtn{border:1px solid var(--border);border-radius:10px;background:var(--surface-alt);color:var(--text);padding:8px 12px;font-size:13px;cursor:pointer}.settingsAuthModeBtn.isActive{background:color-mix(in srgb,var(--surface-alt) 72%,var(--accent) 28%);border-color:color-mix(in srgb,var(--border) 70%,var(--accent) 30%)}.settingsInput{margin-top:10px;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;padding:10px 12px;font-size:14px}.settingsPasswordWrap{position:relative;margin-top:10px}.settingsPasswordInput{width:100%;margin-top:0;padding-right:44px}.settingsPasswordToggleBtn{position:absolute;right:8px;top:50%;transform:translateY(-50%);border:none;background:transparent;color:var(--muted);width:30px;height:30px;border-radius:8px;cursor:pointer;font-size:16px;line-height:1;display:inline-flex;align-items:center;justify-content:center}.settingsPasswordToggleBtn:hover{background:var(--surface-alt);color:var(--text)}.settingsErrorText{margin:10px 0 0;color:#c62828;font-size:13px}.marketMeta{display:flex;justify-content:space-between;gap:10px;font-size:12px;color:var(--text);margin-bottom:12px}.panelGrid{display:grid;grid-template-columns:repeat(3,minmax(0,220px));gap:24px;justify-content:center;margin-top:40px}.dashboardPanelGrid,.recentSection{width:min(100%,708px);margin-left:auto;margin-right:auto}.weeklyOverviewSection{width:min(100%,708px);margin:0 auto 28px}.weeklyOverviewTitle{margin:0 0 12px}.weeklyOverviewGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.weeklyOverviewCard{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px;box-shadow:var(--shadow-soft)}.weeklyOverviewLabel{margin:0 0 8px;font-size:12px;font-weight:600;letter-spacing:.4px;text-transform:uppercase;color:var(--muted)}.weeklyOverviewValue{display:block;font-size:28px;line-height:1.1;margin-bottom:6px}.analyticsSection{width:min(100%,920px);margin:0 auto 28px}.activityOverviewGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px}.activityOverviewCard{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:12px;box-shadow:var(--shadow-soft)}.activityOverviewCard h3{margin:0 0 10px;font-size:15px}.activityOverviewStats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.activityOverviewStat span{display:block;color:var(--muted);font-size:11px;text-transform:uppercase;letter-spacing:.3px;margin-bottom:3px}.activityOverviewStat strong{font-size:16px}.analyticsGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:12px}.analyticsCard{background:var(--surface);border:1px solid var(--border);border-radius:14px;padding:14px;box-shadow:var(--shadow-soft)}.analyticsCard h3{margin:0 0 12px;font-size:14px;color:var(--muted)}.chartGridLayout{display:grid;grid-template-columns:34px minmax(0,1fr);gap:8px;align-items:end}.chartYAxis{height:190px;display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;padding:0 2px 14px 0}.chartYAxis span{font-size:10px;color:var(--muted);line-height:1}.chartPlot{position:relative;height:190px}.chartGridLines{position:absolute;inset:0;pointer-events:none}.chartGridLines span{position:absolute;left:0;right:0;border-top:1px solid var(--border);opacity:.7}.trendBars{height:190px;display:grid;grid-template-columns:repeat(14,minmax(0,1fr));align-items:end;gap:8px;position:relative;z-index:1}.trendBarCol{min-width:0;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px}.trendBar{width:68%;margin:0 auto;border-radius:4px 4px 1px 1px;transition:opacity .2s ease;background:#7c5cff}body.theme-dark .trendBar{background:#7c5cff}.trendBar.isQuestions{background:#1d9bf0}body.theme-dark .trendBar.isQuestions{background:#4fb6ff}.trendBarCol span{color:var(--muted);font-size:10px;text-align:center}.difficultyChart{height:190px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;align-items:end;position:relative;z-index:1}.difficultyChartCol{height:100%;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;gap:6px}.difficultyChartCol strong{font-size:12px}.difficultyChartBar{width:68%;margin:0 auto;border-radius:4px 4px 1px 1px;transition:opacity .2s ease;background:#7c5cff}body.theme-dark .difficultyChartBar{background:#7c5cff}.difficultyChartCol span{color:var(--muted);font-size:10px;text-align:center}.masteryChart{grid-template-columns:repeat(4,minmax(0,1fr))}.difficultyChartBar.isMastery{background:#2f9e44}body.theme-dark .difficultyChartBar.isMastery{background:#7edc93}.bookCard,.panelCard{background:var(--surface);border-radius:16px;display:flex;justify-content:center;align-items:center;cursor:pointer;transition:all .2s ease;text-align:center;aspect-ratio:1/1;width:100%;max-width:220px;padding:20px}.bookCard:hover,.panelCard:hover{transform:translateY(-4px);box-shadow:var(--shadow-card)}.addCard{font-size:20px;color:var(--muted)}.panelCard{flex-direction:column;gap:10px}.panelCard span{font-size:16px;font-weight:500}.primaryBtn{background:var(--surface);color:var(--text);border:1px solid var(--border);padding:10px 18px;border-radius:10px;cursor:pointer;font-size:14px;font-weight:500;box-shadow:none;transition:background-color .2s ease,border-color .2s ease}.primaryBtn:hover{background:var(--surface-alt);border-color:var(--border)}.primaryBtn:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 35%,white 65%);outline-offset:2px}.primaryBtn:disabled{opacity:.55;cursor:not-allowed}body.theme-dark .primaryBtn{background:var(--surface);border-color:var(--border);color:var(--text);box-shadow:none}body.theme-dark .primaryBtn:hover{background:var(--surface-alt);border-color:var(--border)}.ghostBtn{background:none;border:none;color:var(--muted);font-size:14px;cursor:pointer;margin-top:30px}.ghostBtn:hover{color:var(--text)}.deleteBtn{background:none;border:none;color:#111;font-size:16px;cursor:pointer}.booksCard{position:relative;padding-top:36px}.bookDeleteBtn{position:absolute;top:8px;right:10px;font-size:24px;line-height:1;padding:2px 6px}.pinBtn{position:absolute;top:10px;left:10px;border:none;background:transparent;color:#bf7a00;font-size:18px;line-height:0;cursor:pointer;padding:2px 4px}.pinBtn.isPinned{color:#a86400}body.theme-dark .deleteBtn{color:#fff}body.theme-dark .pinBtn{color:#f5c85a}body.theme-dark .pinBtn.isPinned{color:#ffd37d}.pinBtn.small{top:6px;left:6px;font-size:13px;z-index:1}.pinIcon{display:inline-flex;width:16px;height:16px}.pinIconSvg{width:100%;height:100%;display:block}.pinIconStar{fill:none;stroke:currentColor;stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round}.pinIconStar.isPinned{fill:currentColor}.modalOverlay{position:fixed;inset:0;background:#0006;display:flex;align-items:center;justify-content:center;padding:20px;z-index:1000}.modalCard{width:min(420px,100%);background:var(--surface);color:var(--text);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow-card);padding:20px}.modalCard h3{margin:0 0 12px;font-size:20px;font-weight:500}.modalCard p{margin:0;color:var(--muted)}.modalCard input{width:100%;margin-top:8px;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;padding:10px 12px;font-size:14px}.modalActions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.modalBtn{border:none;border-radius:10px;padding:9px 14px;font-size:14px;cursor:pointer}.modalBtn:disabled{opacity:.55;cursor:not-allowed}.modalBtn.ghost{background:var(--surface-alt);color:var(--text)}.modalBtn.primary{background:color-mix(in srgb,var(--surface-alt) 76%,var(--accent) 24%);color:var(--text);border:1px solid color-mix(in srgb,var(--border) 84%,var(--accent) 16%)}body.theme-dark .modalBtn.primary{background:color-mix(in srgb,var(--surface-alt) 78%,#ffffff 22%);border-color:color-mix(in srgb,var(--border) 84%,#ffffff 16%)}.modalBtn.danger{background:#e5484d;color:#fff}.inputRow{display:flex;gap:10px;margin-bottom:30px;align-items:center}.inputRow input{flex:0 0 280px;padding:12px 16px;border-radius:14px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-size:14px;outline:none;transition:.2s ease}.inputRow input:focus{border-color:var(--muted)}.inputRow button{width:42px;height:42px;border-radius:12px;border:1px solid color-mix(in srgb,var(--border) 84%,var(--accent) 16%);background:color-mix(in srgb,var(--surface-alt) 76%,var(--accent) 24%);color:var(--text);font-size:18px;cursor:pointer}body.theme-dark .inputRow button{background:color-mix(in srgb,var(--surface-alt) 78%,#ffffff 22%);border-color:color-mix(in srgb,var(--border) 84%,#ffffff 16%)}.chapterControlsRow{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px;align-items:flex-end}.chapterControlField{display:flex;flex-direction:column;gap:6px;min-width:180px}.chapterControlField span{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.4px}.chapterControlField select{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;height:38px;padding:0 10px;font-size:14px}.flashChapterField{min-width:170px}.quizChapterField{margin-bottom:14px;max-width:100%}.quizSetupIntro{margin:0 0 12px;color:var(--muted);font-size:14px}.quizSetupFieldHeader{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.quizSetupQuickActions{display:inline-flex;align-items:center;gap:8px}.quizSetupActionBtn{border:1px solid var(--border);background:var(--surface);color:var(--muted);border-radius:999px;min-height:28px;padding:0 10px;font-size:12px;cursor:pointer}.quizSetupActionBtn:hover:enabled{background:var(--surface-alt);color:var(--text)}.quizSetupActionBtn:disabled{opacity:.5;cursor:not-allowed}.quizChapterPills{display:flex;flex-wrap:wrap;gap:8px}.quizChapterGroups{display:flex;flex-direction:column;gap:10px}.quizChapterGroup{border:1px solid var(--border);border-radius:12px;padding:10px;background:color-mix(in srgb,var(--surface) 88%,var(--surface-alt) 12%)}.quizChapterGroupHeader{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:8px}.quizChapterGroupTitle{margin:0;font-size:12px;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.35px}.quizChapterPill{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;padding:6px 10px;font-size:12px;cursor:pointer}.quizChapterPill:hover{background:var(--surface-alt)}.quizChapterPill.isActive{border-color:color-mix(in srgb,var(--border) 55%,var(--accent) 45%);background:color-mix(in srgb,var(--surface-alt) 70%,var(--accent) 30%)}.inAppDropdown{position:relative;min-width:0}.chapterControlField .inAppDropdown{width:100%}.inAppDropdownTrigger{width:100%;height:38px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);padding:0 10px;display:inline-flex;align-items:center;justify-content:space-between;gap:10px;cursor:pointer;font-size:14px;text-align:left}.inAppDropdownTrigger:hover{background:var(--surface-alt)}.inAppDropdownTrigger:focus-visible{outline:2px solid color-mix(in srgb,var(--accent) 35%,white 65%);outline-offset:2px}.inAppDropdownValue{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.inAppDropdownChevron{color:var(--muted);font-size:11px;transform:translateY(1px);transition:transform .16s ease}.inAppDropdownChevron.isOpen{transform:rotate(180deg)}.inAppDropdownMenu{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:40;border:1px solid var(--border);border-radius:10px;background:var(--surface);box-shadow:var(--shadow-card);max-height:220px;overflow-y:auto}.inAppDropdownOption{width:100%;border:none;background:transparent;color:var(--text);text-align:left;padding:9px 10px;cursor:pointer;font-size:14px}.inAppDropdownOption:hover{background:var(--surface-alt)}.inAppDropdownOption.isSelected{background:color-mix(in srgb,var(--surface-alt) 70%,var(--accent) 30%)}.chapterControlsRow .primaryBtn,.chapterCreateRow .primaryBtn{height:38px;padding:0 14px}.chapterCreateRow{display:flex;gap:10px;align-items:center;margin-bottom:20px}.chapterCreateRow input{flex:0 0 300px;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;padding:10px 12px;font-size:14px}.chapterList{display:flex;flex-direction:column;gap:10px}.chapterItem{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:12px}.chapterItem p{margin:4px 0 0;color:var(--muted);font-size:13px}.wordList{display:flex;flex-direction:column;gap:18px}.wordRow{background:var(--surface);padding:20px;border-radius:16px;display:flex;gap:16px;align-items:flex-start;box-shadow:var(--shadow-soft)}.wordContent{flex:1;min-width:0}.wordHeaderLine{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.wordTitleGroup{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-width:0;flex:1}.wordRow strong{font-size:16px}.wordRow p{font-size:14px;color:var(--muted);margin-top:6px}.wordMasteryRow{margin-top:0;margin-left:auto;display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:nowrap;white-space:nowrap}.wordMasteryLevel{font-size:12px;color:var(--text);font-weight:600}.wordMasteryBlocks{font-size:12px;letter-spacing:.8px;color:color-mix(in srgb,var(--text) 65%,var(--muted) 35%)}.wordChapterBadge{display:inline-flex;align-items:center;border:1px solid var(--border);background:var(--surface-alt);color:var(--muted);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;letter-spacing:.2px;text-transform:uppercase;line-height:1.3}.wordChapterSelect{border:1px solid var(--border);background:var(--surface-alt);color:var(--muted);border-radius:999px;height:22px;padding:0 8px;font-size:11px;font-weight:700;letter-spacing:.2px;text-transform:uppercase;line-height:1}.wordDifficultyBadge{display:inline-flex;align-items:center;justify-content:center;border:1px solid color-mix(in srgb,var(--border) 60%,#2f9e44 40%);background:color-mix(in srgb,var(--surface-alt) 75%,#2f9e44 25%);color:var(--text);border-radius:999px;height:22px;padding:0 8px;font-size:11px;font-weight:700;letter-spacing:.2px;text-transform:uppercase;line-height:1;box-sizing:border-box}.wordDifficultyBadgeBtn{cursor:pointer;margin:0;appearance:none;-webkit-appearance:none}.wordChapterBadge.wordDifficultyBadgeBtn{height:22px;padding:0 8px;line-height:1;box-sizing:border-box;align-self:center}.wordChapterBadgeDropdown{min-width:0;align-self:center}.wordChapterBadgeDropdown .inAppDropdownTrigger.asBadge{width:auto;height:22px;border:1px solid var(--border);background:var(--surface-alt);color:var(--muted);border-radius:999px;padding:0 8px;font-size:11px;font-weight:700;letter-spacing:.2px;text-transform:uppercase;line-height:1;gap:6px;margin:0;appearance:none;-webkit-appearance:none;box-sizing:border-box}.wordChapterBadgeDropdown .inAppDropdownTrigger.asBadge:hover{background:var(--surface)}.wordChapterBadgeDropdown .inAppDropdownValue{max-width:180px}.wordChapterBadgeDropdown .inAppDropdownChevron{font-size:9px;transform:none}.wordChapterBadgeDropdown .inAppDropdownChevron.isOpen{transform:rotate(180deg)}.inAppDropdownTrigger.isCompact{height:30px;border-radius:8px;padding:0 8px;font-size:12px}.inAppDropdownMenu.isCompact .inAppDropdownOption{padding:8px;font-size:12px}.difficultyInfoPanel{margin-top:8px;border:1px solid var(--border);background:var(--surface-alt);border-radius:10px;padding:10px 12px}.difficultyInfoPanel strong{display:block;margin-bottom:4px;color:var(--text);font-size:13px}.difficultyInfoPanel p{margin:0;color:var(--muted);font-size:13px;line-height:1.45}.chapterEmptyText{color:var(--muted);font-size:14px}.definitionEditedBadge{display:inline-flex;align-items:center;border:1px solid var(--border);background:var(--surface-alt);color:var(--muted);border-radius:999px;padding:2px 8px;font-size:11px;font-weight:700;letter-spacing:.2px;text-transform:uppercase;line-height:1.3}.wordPronunciation{margin:0;color:var(--muted);font-size:13px;font-style:italic}.wordRow .deleteBtn{color:#111;border:none;background:transparent;width:auto;height:auto;display:inline;line-height:1;flex:0 0 auto;padding:0;font-size:16px}.wordRow .deleteBtn:hover{color:var(--text)}body.theme-dark .wordRow .deleteBtn{color:#fff}.definitionRow{margin-top:6px;width:100%;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.definitionRow p{margin:0;flex:1;min-width:0}.exampleList{margin-top:10px;display:flex;flex-direction:column;gap:6px}.exampleToggleBtn{margin-top:10px;border:none;background:transparent;color:var(--muted);padding:0;font-size:13px;font-weight:400;cursor:pointer;text-transform:lowercase}.exampleToggleBtn:hover{color:var(--text)}.exampleListWrap{overflow:hidden;max-height:0;opacity:0;transform:translateY(-2px);transition:max-height .48s ease,opacity .42s ease,transform .42s ease}.exampleListWrap.isExpanded{max-height:240px;opacity:1;transform:translateY(0)}.exampleItem{margin:0;font-size:13px;color:var(--muted);line-height:1.5;padding-left:10px;border-left:2px solid var(--border)}.definitionControls{display:inline-flex;flex-wrap:nowrap;gap:6px;align-items:flex-end;justify-content:flex-end;flex:0 0 auto;max-width:none}.definitionVariantNav{display:inline-flex;flex-direction:column;align-items:center;gap:4px}.definitionVariantCount{color:var(--muted);font-size:11px;font-weight:600;line-height:1}.definitionVariantArrows{display:inline-flex;align-items:center;gap:6px}.definitionEditField{flex:1;min-width:0;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text);padding:10px 12px;font-size:14px;line-height:1.4;resize:vertical;font-family:inherit}.definitionActionBtn{border:1px solid var(--border);background:var(--surface-alt);color:var(--text);border-radius:8px;width:36px;height:36px;padding:0;cursor:pointer;font-size:16px;font-weight:600;line-height:1;display:inline-flex;align-items:center;justify-content:center}.definitionActionBtn:disabled{cursor:not-allowed;opacity:.55}.definitionActionBtn.isPrimary{background:color-mix(in srgb,var(--surface-alt) 72%,var(--accent) 28%);border-color:color-mix(in srgb,var(--border) 72%,var(--accent) 28%)}.definitionIconBtn{width:36px;height:36px;padding:0;font-size:18px;line-height:1}.definitionArrowBtn{border:2px solid #8f8f8f;background:transparent;color:#111;border-radius:6px;width:36px;height:36px;cursor:pointer;line-height:1;flex:0 0 36px;font-weight:700;font-size:18px}body.theme-dark .definitionArrowBtn{border-color:#8e98a6;background:#2a313b;color:#eef2f7}.flashcard{background:var(--surface);padding:80px;border-radius:24px;font-size:24px;font-weight:400;text-align:center;margin:40px 0;cursor:pointer;transition:.2s ease;box-shadow:var(--shadow-soft)}.flashcard:hover{transform:scale(1.02)}.flashListRow{display:flex;align-items:flex-end;flex-wrap:wrap;gap:10px;margin-bottom:12px}.flashListControlsColumn{display:inline-flex;flex-direction:column;align-items:flex-start;gap:8px}.flashListToggleBtn{background:var(--surface);color:var(--text);border:1px solid var(--border);height:34px;padding:0 14px;border-radius:10px;cursor:pointer;display:inline-flex;align-items:center;align-self:flex-end;line-height:1}.flashListMeta{margin-left:auto;color:var(--muted);font-size:14px}.flashChapterFilter{display:inline-flex;align-items:center;gap:8px}.flashChapterFilter span{font-size:12px;color:var(--muted);text-transform:uppercase;letter-spacing:.35px}.flashChapterDropdown{min-width:170px}.inAppDropdownTrigger.isFlashCompact{height:34px;border-radius:10px;padding:0 10px;font-size:13px}.inAppDropdownMenu.isFlashCompact .inAppDropdownOption{padding:8px 10px;font-size:13px}.flashWordListPanel{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px;max-height:180px;overflow-y:auto;padding:4px}.flashWordListItem{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;padding:6px 12px;font-size:13px;cursor:pointer}.flashWordListItem.isActive{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 16%,var(--surface) 84%);font-weight:600}.flashControls{display:flex;justify-content:center;gap:20px}.flashControls button{background:var(--surface);color:var(--text);border:1px solid var(--border);padding:8px 14px;border-radius:10px;cursor:pointer}.quizCard{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:20px;box-shadow:var(--shadow-soft)}.quizMeta{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:14px;margin-bottom:14px}.quizChapterRow{display:flex;align-items:flex-start;gap:10px;flex-wrap:wrap;margin-bottom:14px;color:var(--muted);font-size:13px}.quizSetupSection{border:1px solid var(--border);background:var(--surface);border-radius:14px;padding:14px;box-shadow:var(--shadow-soft)}.quizSetupSection .quizChapterRow+.quizChapterRow{margin-top:10px}.quizSetupSummary{margin-top:14px;color:var(--muted);font-size:14px}.quizSetupSummary p{margin:4px 0}.quizSetupActions{margin-top:14px;display:flex;justify-content:flex-end}.quizChapterMultiSelect{display:flex;flex-wrap:wrap;gap:8px}.quizChapterToggle{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;min-height:34px;padding:6px 12px;font-size:13px;cursor:pointer}.quizChapterToggle.isActive{background:color-mix(in srgb,var(--accent) 16%,var(--surface) 84%);border-color:color-mix(in srgb,var(--border) 60%,var(--accent) 40%);font-weight:600}.quizPrompt{margin:0 0 18px;color:var(--text);font-size:20px}.quizDefinitionPrompt{margin:0 0 14px;color:var(--text);font-size:17px;line-height:1.45}.quizTypeForm{display:flex;gap:10px;align-items:center;margin-bottom:12px}.quizHintBtn{border:none;background:transparent;color:var(--muted);font-size:22px;line-height:1;padding:0;cursor:pointer}.quizHintBtn:hover:enabled{color:var(--text)}.quizHintBtn:disabled{opacity:.45;cursor:not-allowed}.quizHintText{margin:0 0 8px;color:var(--muted);font-size:13px}.quizTypeInput{flex:1;min-width:0;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:10px;padding:10px 12px;font-size:15px}.quizTypeInput:disabled{opacity:.75}.quizTypedResult{margin:0 0 6px;font-size:14px;font-weight:600}.quizTypedResult.correct{color:#2f9e44}.quizTypedResult.wrong{color:#e5484d}.quizOptions{display:flex;flex-direction:column;gap:10px}.quizOption{text-align:left;width:100%;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:12px;padding:12px;cursor:pointer;transition:all .18s ease}.quizOption:hover:enabled{transform:translateY(-1px);box-shadow:var(--shadow-soft)}.quizOption.correct{border-color:#2f9e44;background:#e9f9ed;color:#1f6d30}.quizOption.wrong{border-color:#e5484d;background:#ffecee;color:#9f2e33}body.theme-dark .quizOption.correct{background:#2f9e4433;color:#b9efc5}body.theme-dark .quizOption.wrong{background:#e5484d33;color:#ffb8bc}.quizFooter{margin-top:18px;display:flex;justify-content:flex-end}.quizSetupFooter{flex-direction:column;align-items:flex-end;gap:8px}.quizSetupFooter .quizSetupSummary{margin:0}.quizFeedback{margin-top:12px;font-size:14px}.quizFeedback.positive{color:#2f9e44}.quizFeedback.encourage{color:#e5484d}.quizResultCard{background:var(--surface);border:1px solid var(--border);border-radius:16px;padding:24px;box-shadow:var(--shadow-soft);width:min(620px,100%)}.quizResultCard h2{margin-bottom:8px;color:var(--text)}.quizResultBadge{display:inline-block;margin-bottom:10px;padding:5px 10px;border-radius:999px;background:var(--surface-alt);border:1px solid var(--border);font-size:12px;color:var(--muted);letter-spacing:.3px;text-transform:uppercase}.quizResultHeadline{color:var(--text);font-size:16px;margin-bottom:14px}.quizResultStats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:14px}.quizResultStat{background:var(--surface-alt);border:1px solid var(--border);border-radius:12px;padding:10px}.quizResultStatLabel{display:block;color:var(--muted);font-size:12px;margin-bottom:4px}.quizResultStat strong{font-size:18px;color:var(--text)}.quizResultProgressTrack{width:100%;height:12px;border-radius:999px;background:#eaf6ee;border:1px solid #c8e7d2;overflow:hidden;margin-bottom:12px}.quizResultProgressFill{height:100%;background:linear-gradient(90deg,#2f9e44,#6fcb85);transition:width .3s ease}body.theme-dark .quizResultProgressTrack{background:#243329;border-color:#355541}body.theme-dark .quizResultProgressFill{background:linear-gradient(90deg,#49b362,#7ddc94)}.quizScoreLine{margin-bottom:8px;color:var(--text)}.quizSetupSummary{margin:6px 0 8px;display:flex;flex-wrap:wrap;gap:8px}.quizSetupSummary span{display:inline-flex;align-items:center;border:1px solid var(--border);background:var(--surface-alt);color:var(--text);border-radius:999px;min-height:28px;padding:0 10px;font-size:12px}.quizSetupHint{margin:8px 0 0;color:var(--muted)}.quizResultMotivation{color:var(--muted);margin-bottom:14px}.quizMistakeReviewCard{margin:14px 0;text-align:left}.quizMistakeReviewCard h3{margin:0 0 8px;font-size:16px;color:var(--text)}.quizResultActions{display:flex;flex-wrap:wrap;gap:10px}.backupRestoreCard .quizResultActions{margin-top:10px}.quizMistakeReviewList{margin-top:14px;border-top:1px solid var(--border);padding-top:12px;display:flex;flex-direction:column;gap:10px}.quizMistakeReviewItem{background:var(--surface-alt);border:1px solid var(--border);border-radius:10px;padding:10px 12px}.quizMistakeReviewItem strong{display:block;color:var(--text);margin-bottom:4px}.quizMistakeReviewItem p{margin:0;color:var(--muted);font-size:14px}.spinner{width:28px;height:28px;border:3px solid var(--border);border-top:3px solid var(--accent);border-radius:50%;animation:spin .7s linear infinite;margin:20px 0}@keyframes spin{to{transform:rotate(360deg)}}.recentBar{background-color:var(--surface-strong);padding:15px;border-radius:16px;overflow:hidden;width:100%;margin:0}body.theme-dark .recentBar{background:linear-gradient(135deg,#20262f,#262e38);border:1px solid #34404d}.recentScroll{display:flex;gap:12px;overflow-x:auto;scroll-behavior:smooth;width:100%}.recentScroll::-webkit-scrollbar{display:none}.recentSquare{width:80px;height:80px;min-width:80px;border-radius:12px;border:none;background:var(--surface);color:var(--text);font-weight:500;cursor:pointer;flex-shrink:0;display:flex;align-items:center;justify-content:center;text-align:center;padding:6px;box-shadow:var(--shadow-soft)}.recentSquare:focus{outline:none}.recentSquare:focus-visible{outline:2px solid var(--muted);outline-offset:2px}.recentSquareWrap{width:80px;height:80px;min-width:80px;position:relative;flex-shrink:0}.addSquare{font-size:28px;background:var(--surface-alt)}.themeToggle{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:999px;padding:8px 14px;font-size:13px;cursor:pointer;margin-bottom:16px}.themeSwitch{width:50px;height:28px;border:1px solid var(--border);border-radius:999px;background:var(--surface-alt);color:var(--text);cursor:pointer;display:inline-flex;align-items:center;padding:2px;transition:background-color .26s cubic-bezier(.22,1,.36,1)}.themeSwitchIcon{width:22px;height:22px;border-radius:50%;background:var(--surface);display:inline-flex;align-items:center;justify-content:center;font-size:12px;transform:translate(0);transition:transform .26s cubic-bezier(.22,1,.36,1);box-shadow:var(--shadow-soft)}.themeSwitch.isDark .themeSwitchIcon{transform:translate(22px)}.recentTitle{margin-bottom:10px}.panelCard.wide{width:100%;max-width:220px;height:130px;display:flex;align-items:center;justify-content:center;border-radius:12px}.pageHeader{display:flex;align-items:center;gap:16px;margin-bottom:30px}.backBtn{background:transparent;border:none;padding:0;color:var(--text);font-size:34px;line-height:1;font-weight:500;cursor:pointer;width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center}.pageHeader h1{margin:0;padding-left:4px}@media(max-width:700px){.appShell{display:block}.sidebar{display:none}.dashboardHeader{flex-direction:column;align-items:flex-start}.panelGrid{grid-template-columns:1fr;justify-items:center}.activityOverviewGrid,.weeklyOverviewGrid,.analyticsGrid,.selectBookGrid{grid-template-columns:1fr}.selectBookStats{grid-template-columns:repeat(3,minmax(0,1fr))}.dashboardStatus{display:flex;flex-direction:column;align-items:flex-end;width:100%}.chapterCreateRow input{flex:1}.wordHeaderLine{flex-direction:row;flex-wrap:wrap;align-items:flex-start;gap:8px}.wordMasteryRow{width:100%;margin-left:0;justify-content:flex-start}.xpCard{width:100%;align-self:stretch}.levelInfoCard{right:auto;left:0;min-width:min(100%,340px)}}
