:root{--app-viewport-height: 100vh;color:#17211b;background:#f5f7f4;scrollbar-color:#1d7a5c #eef3ef;scrollbar-width:thin;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility}@supports (height: 100dvh){:root{--app-viewport-height: 100dvh}}:root::-webkit-scrollbar{width:8px;height:8px}:root::-webkit-scrollbar-track{background:#eef3ef}:root::-webkit-scrollbar-thumb{border-radius:999px;background:#1d7a5c}:root::-webkit-scrollbar-thumb:hover{background:#2a9e78}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:var(--app-viewport-height)}.sectionDrawerOpen,.sectionDrawerOpen body{overflow:hidden}.sectionDrawerResizing,.sectionDrawerResizing body{cursor:col-resize;-webkit-user-select:none;user-select:none}button,input,select,textarea{font:inherit}button{border:0}button:disabled{cursor:wait;opacity:.72}.loginShell{display:grid;place-items:center;min-height:var(--app-viewport-height);padding:24px;background:#0b120f}.loginPanel{display:grid;gap:22px;width:min(100%,420px);padding:28px;border:1px solid #294133;border-radius:8px;background:#111b16;box-shadow:0 22px 54px #00000057}.loginBrand,.loginPanel h1{color:#f7faf7}.loginPanel .eyebrow{color:#94a59a}.loginForm{display:grid;gap:14px}.loginForm label{display:grid;gap:7px;color:#c9d5cd;font-size:13px;font-weight:760}.loginForm input{height:44px;padding:0 12px;border:1px solid #31473a;border-radius:8px;background:#0f1713;color:#f7faf7}.loginForm input::placeholder{color:#6f8276}.loginForm input:focus{border-color:#3f9f68;outline:2px solid rgba(63,159,104,.24)}.rememberMeLabel{display:flex;align-items:center;gap:8px;color:#c9d5cd;font-size:13px;font-weight:500;cursor:pointer}.rememberMeLabel input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:#3f9f68}.loginPanel .primaryButton{background:#2f7d52;color:#fff}.loginPanel .primaryButton:hover:not(:disabled){background:#349160}.loginStatus{margin:0;color:#94a59a;font-size:14px;line-height:1.45}.loginVersion{margin:0;color:#c5d4cc;font-size:11px;text-align:center;opacity:.6}.shell{display:grid;grid-template-columns:300px minmax(0,1fr);min-height:var(--app-viewport-height);transition:grid-template-columns .16s ease}.shell.sidebarCollapsed{grid-template-columns:76px minmax(0,1fr)}.sidebar{display:flex;flex-direction:column;background:#18231d;color:#f7faf7;position:sticky;top:0;z-index:30;height:var(--app-viewport-height);padding:24px 18px;overflow:hidden}.sidebarHeader{display:flex;align-items:center;justify-content:space-between;gap:10px}.brand{display:flex;align-items:center;gap:10px;min-height:44px;font-size:20px;font-weight:760}.sidebarToggle{position:relative;display:grid;place-items:center;flex:0 0 auto;width:36px;height:36px;border:1px solid rgba(247,250,247,.18);border-radius:8px;background:transparent;color:#c9d5cd;cursor:pointer}.sidebarToggle:hover{background:#294133;color:#fff}.sidebar.collapsed{padding:24px 12px;overflow:visible}.sidebar.collapsed .sidebarHeader{justify-content:center}.sidebar.collapsed .brand{display:none}.sidebarNav{display:flex;flex:1;flex-direction:column;gap:14px;min-height:0;margin-top:34px}.sidebarNavGroups{display:grid;align-content:start;gap:14px;min-height:0;overflow-x:hidden;overflow-y:auto}.navGroup{display:grid;gap:4px}.navGroupToggle{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:28px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:#91a49a;cursor:pointer;font-size:11px;font-weight:800;text-transform:uppercase}.navGroupToggle:hover{background:#f7faf714;color:#f7faf7}.navGroupToggle svg{flex:0 0 auto;transition:transform .16s ease}.navGroupToggle svg.rotated{transform:rotate(180deg)}.navGroupItems{display:grid;gap:4px}.navItem{position:relative;display:flex;align-items:center;gap:10px;width:100%;min-height:42px;padding:0 12px;border:0;border-radius:8px;background:transparent;color:#c9d5cd;text-decoration:none;cursor:pointer}.navItem svg{flex:0 0 auto}.navBadge{display:inline-grid;place-items:center;min-width:22px;height:22px;margin-left:auto;padding:0 6px;border-radius:999px;background:#d94b3d;color:#fff;font-size:12px;font-weight:850}.navLabel{white-space:nowrap}.sidebar.collapsed .navItem{justify-content:center;padding:0}.sidebar.collapsed .navLabel{display:none}.sidebar.collapsed .sidebarNavGroups,.sidebar.collapsed .navGroupItems{gap:8px}.sidebar.collapsed .navGroupToggle{display:none}.navFlyout{position:fixed;z-index:150;min-width:172px;padding:6px;border-radius:10px;background:#18231d;border:1px solid rgba(145,164,154,.15);box-shadow:0 4px 20px #00000059;display:grid;gap:2px}.navFlyoutTitle{padding:4px 10px 2px;font-size:11px;font-weight:800;text-transform:uppercase;color:#91a49a;letter-spacing:.05em}.navFlyout .navItem{justify-content:flex-start;padding:0 10px;min-height:38px}.navFlyout .navLabel{display:block}.sidebar.collapsed .navFlyout .navItem{justify-content:flex-start;padding:0 10px}.sidebar.collapsed .navFlyout .navLabel{display:block}.themeDark .navFlyout{background:#0c1210}.sidebarTooltip{position:fixed;z-index:140;left:90px;width:max-content;max-width:240px;padding:7px 9px;border-radius:7px;background:#17211b;color:#fff;font-size:12px;font-weight:760;line-height:1.25;pointer-events:none;text-align:left;transform:translateY(-50%);white-space:normal}.sidebarVersion{margin:auto 0 0;padding:0 12px 10px;color:#aab8b1;font-size:11px;line-height:1.25;opacity:.6;white-space:nowrap}.sidebar.collapsed .sidebarVersion{display:grid;gap:2px;overflow:visible;padding-inline:0;text-align:center;white-space:normal}.sidebarFooter{display:grid;gap:8px;margin-top:0;padding-top:14px;border-top:1px solid rgba(247,250,247,.12)}.navItem.active,.navItem:hover{background:#294133;color:#fff}.workspace{padding:28px 28px 100px;overflow-x:clip;overflow-y:visible}.topbar,.panelHeader,.topicHeader,.topicStats,.controls{display:flex;align-items:center}.topbar{justify-content:space-between;gap:18px;margin-bottom:24px}.eyebrow{margin:0 0 6px;color:#68756d;font-size:13px;font-weight:720;text-transform:uppercase}h1,h2{margin:0;letter-spacing:0}h1{font-size:32px;line-height:1.1}h2{font-size:18px}.primaryButton{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 16px;border:0;border-radius:8px;background:#1d7a5c;color:#fff;font-weight:760;cursor:pointer}.secondaryButton{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 14px;border:1px solid #cad7d0;border-radius:8px;background:#fff;color:#17211b;font-weight:760;cursor:pointer}.dangerButton{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:42px;padding:0 14px;border:1px solid #e57373;border-radius:8px;background:#fff;color:#c62828;font-weight:760;cursor:pointer}.dangerButton:hover:not(:disabled){background:#ffebee}.compactButton{min-height:38px;padding:0 12px}.controls{gap:10px;margin-top:26px}.backupAlert{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px;padding:14px 16px;border:1px solid #e4aaa4;border-radius:8px;background:#fff1ef;color:#6c241f}.backupAlert strong,.backupAlert p{margin:0}.backupAlert strong{display:block;margin-bottom:4px;font-size:15px}.backupAlert p{font-size:13px;line-height:1.45}.backupAlertActions,.backupActions{display:flex;flex-wrap:wrap;gap:8px}.gdriveResult{margin-top:4px;padding:12px 14px;border-radius:8px;border-left:4px solid}.gdriveResult.success{border-left-color:#1d7a5c;background:#f0faf5;color:#174d38}.gdriveResult.error{border-left-color:#c0392b;background:#fdf0ee;color:#7b1e1e}.gdriveResult strong{display:block;font-size:13px;margin-bottom:6px}.gdriveOutput{margin:0;font-size:12px;font-family:monospace;white-space:pre-wrap;word-break:break-all;max-height:200px;overflow-y:auto;background:#0000000d;border-radius:4px;padding:8px}.themeDark .gdriveResult.success{background:#0d2a1e;color:#9ecfb5}.themeDark .gdriveResult.error{background:#2a1010;color:#f09090}.themeDark .gdriveOutput{background:#0000004d}.searchBox{display:flex;align-items:center;gap:10px;flex:1;min-width:220px;height:42px;padding:0 12px;border:1px solid #d4ddd7;border-radius:8px;background:#fff}input,select{border:0;color:#17211b;background:transparent;outline:0}input{width:100%}select,.createTopic input,.topicCreateDialogForm input,.topicEditForm input,.createCategory input,.createSection input,.sectionCreateDialogForm input,.editCategoryForm input,.editSectionForm input{height:42px;padding:0 12px;border:1px solid #d4ddd7;border-radius:8px;background:#fff}.editSectionForm textarea,.sectionEditor textarea{min-height:150px;width:100%;padding:12px;border:1px solid #d4ddd7;border-radius:8px;background:#fff;color:#17211b;line-height:1.45;resize:vertical}.statusBadge{display:inline-flex;align-items:center;min-height:42px;max-width:320px;padding:0 12px;border:1px solid #d4ddd7;border-radius:8px;color:#4d5b53;background:#fff;font-size:13px;font-weight:700}.statusBadge.loading{color:#7b5a21;background:#fff8e8}.statusBadge.inactive{color:#9a3c28;background:#fff2ef;border-color:#c8624a}.contentGrid{display:grid;grid-template-columns:minmax(320px,.95fr) minmax(420px,1.35fr);gap:18px;margin-top:18px}.contentGrid.topicsOnly,.contentGrid.roadmapFocus{grid-template-columns:minmax(0,1fr)}.categoryControls{align-items:stretch}.topicsSection{display:grid;gap:16px;width:100%}.topicsToolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}.topicsToolbarActions{display:flex;align-items:center;justify-content:flex-end;gap:14px;margin-left:auto}.topicViewsBar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0 16px}.topicViewsBar.compact{margin:0 0 2px;overflow-x:auto}.topicViewsList{display:flex;align-items:center;gap:8px;min-width:0;overflow-x:auto;padding-bottom:2px}.topicViewChip{display:grid;gap:2px;min-width:132px;max-width:220px;min-height:48px;padding:7px 10px;border:1px solid #d4ddd7;border-radius:8px;background:#fff;color:#17211b;text-align:left;cursor:pointer}.topicViewChip:hover,.topicViewChip.active{border-color:#1d7a5c;background:#edf8f3}.topicViewChip span,.topicViewChip small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topicViewChip span{font-size:13px;font-weight:820}.topicViewChip small{color:#5d6c63;font-size:11px;line-height:1.2}.topicViewsMore{width:auto;min-width:132px;height:48px}.topicViewsActions{display:flex;align-items:center;gap:8px;flex-shrink:0}.inactiveToggle{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:500;color:#6b7c74;cursor:pointer;white-space:nowrap}.inactiveToggle input{flex:0 0 auto;width:auto;cursor:pointer}.topicList{display:grid;gap:12px}.topicList.cards{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.topicList.list{grid-template-columns:minmax(0,1fr)}.createTopic,.createCategory{display:grid;gap:8px;padding:14px;border:1px dashed #b9c8c0;border-radius:8px;background:#fbfcfb}.createTopic{grid-template-columns:1fr}.topicCreateDialog,.categoryCreateDialog,.sectionCreateDialog,.sessionRequiredDialog{position:fixed;z-index:45;top:50%;left:50%;display:grid;gap:14px;width:min(560px,calc(100vw - 32px));max-height:calc(var(--app-viewport-height) - 32px - env(safe-area-inset-bottom));padding:18px;border:1px solid #d9e2dc;border-radius:8px;background:#fff;box-shadow:0 24px 70px #17211b3d;transform:translate(-50%,-50%);overflow-y:auto}.sectionCreateDialog{width:min(760px,calc(100vw - 32px));overflow-x:hidden}.sessionRequiredDialog{gap:16px;width:min(460px,calc(100vw - 32px))}.sessionRequiredDialog p{margin:0;color:#4d5b53;font-size:14px;line-height:1.5}.sessionRequiredDialogActions{display:flex;justify-content:flex-end}.aiRoadmapSectionsDialog{position:fixed;z-index:45;top:50%;left:50%;display:grid;gap:16px;width:min(900px,calc(100vw - 32px));max-height:calc(var(--app-viewport-height) - 48px - env(safe-area-inset-bottom));padding:18px;border:1px solid #d9e2dc;border-radius:8px;background:#fff;box-shadow:0 24px 70px #17211b3d;transform:translate(-50%,-50%);overflow-y:auto}.aiRoadmapSectionsBody{display:grid;grid-template-columns:minmax(280px,.8fr) minmax(340px,1.2fr);gap:16px}.aiRoadmapSectionsBody .aiJsonPanel{grid-column:1 / -1}.emptyStateWithAction{display:flex;flex-direction:column;align-items:center;gap:12px}.topicCreateDialogHeader{display:flex;align-items:center;justify-content:space-between;gap:12px}.topicCreateDialogForm,.categoryCreateDialogForm,.sectionCreateDialogForm{display:grid;gap:10px}.topicViewModalContent{max-width:760px}.topicViewForm{display:grid;gap:0;overflow:hidden}.topicViewFormFields{display:grid;gap:12px;padding:16px 20px}.topicViewFormFields label{display:grid;gap:7px}.topicViewFormFields input,.topicViewFormFields select,.topicViewFormFields textarea{width:100%;border:1px solid #d4ddd7;border-radius:8px;background:#fff;color:#17211b}.topicViewFormFields input,.topicViewFormFields select{height:42px;padding:0 12px}.topicViewFormFields textarea{min-height:82px;padding:10px 12px;line-height:1.45;resize:vertical}.topicViewFiltersGrid{display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,220px);gap:10px}.topicViewInactiveToggle{display:flex;align-items:center;gap:6px;justify-content:flex-start}.topicViewFormFields .topicViewInactiveToggle input{width:auto;height:auto;padding:0;border:initial;border-radius:0;background:initial}.topicViewManageList{display:grid;gap:8px;max-height:220px;margin:0 20px 16px;overflow-y:auto}.topicViewManageItem{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;padding:8px;border:1px solid #e4ece7;border-radius:8px;background:#f8fbf9}.topicViewManageItem.active{border-color:#1d7a5c;background:#edf8f3}.topicViewManageItem>button:first-child{display:grid;gap:2px;min-width:0;padding:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.topicViewManageItem strong,.topicViewManageItem small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topicViewManageItem strong{font-size:13px}.topicViewManageItem small{color:#5d6c63;font-size:12px}.createCategory{grid-template-columns:minmax(220px,360px) auto;flex:1}.categoryChoices{display:flex;flex-wrap:wrap;gap:8px}.categoryChoices label{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 10px;border:1px solid #d4ddd7;border-radius:999px;background:#fff;color:#4d5b53;font-size:13px;font-weight:700}.categoryChoices input{width:auto;height:auto;margin:0}.categoryChoices span{color:#68756d;font-size:13px}.categoryPicker{position:relative;display:grid;gap:10px}.categoryPicker label{display:grid;gap:7px}.categoryPicker input{width:100%;height:42px;padding:0 12px;border:1px solid #d4ddd7;border-radius:8px;background:#fff;color:#17211b}.categoryPicker input::placeholder{color:#68756d;opacity:1}.categoryPickerMenu{position:absolute;z-index:4;top:72px;right:0;left:0;display:grid;gap:6px;max-height:220px;overflow:auto;padding:8px;border:1px solid #d4ddd7;border-radius:8px;background:#fff;box-shadow:0 16px 34px #1c2b2229}.categoryPickerMenu button,.categoryPickerMenu span{min-height:34px;padding:0 10px;border-radius:6px;color:#4d5b53;font-size:13px;font-weight:760;text-align:left}.categoryPickerMenu button{border:0;background:transparent;cursor:pointer}.categoryPickerMenu button:hover:not(:disabled){background:#eef7f3;color:#1d7a5c}.categoryPickerMenu .createCategoryOption{color:#1d7a5c}.categoryPicker .unitClearBtn{position:absolute;right:6px;top:50%;transform:translateY(-50%);background:none;border:none;cursor:pointer;padding:2px;display:flex;align-items:center;color:#888;line-height:1}.categoryPicker .unitClearBtn:hover{color:#e05050}.selectedCategoryChips{display:flex;flex-wrap:wrap;gap:8px}.selectedCategoryChips button{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 9px 0 11px;border:1px solid #b8dccc;border-radius:999px;background:#eef8f4;color:#1d7a5c;cursor:pointer;font-size:13px;font-weight:800}.selectedCategoryChips span{color:#68756d;font-size:13px}.tokenPicker{position:relative;display:grid;gap:7px}.tokenPickerLabel{font-size:13px;font-weight:760;color:#4d5b53}.tokenPickerBox{display:flex;flex-wrap:wrap;align-items:center;gap:6px;min-height:42px;padding:5px 8px;border:1px solid #d4ddd7;border-radius:8px;background:#fff;cursor:text}.tokenPickerBox:focus-within{border-color:#1d7a5c}.tokenPickerBox input{flex:1 1 120px;min-width:120px;height:30px;padding:0 2px;border:0;background:transparent;color:#17211b;font:inherit}.tokenPickerBox input:focus{outline:none}.tokenPickerBox input::placeholder{color:#68756d;opacity:1}.tokenPickerChip{display:inline-flex;align-items:center;gap:6px;min-height:28px;padding:0 8px 0 11px;border:1px solid #b8dccc;border-radius:999px;background:#eef8f4;color:#1d7a5c;cursor:pointer;font-size:13px;font-weight:800}.tokenPickerChipPlaceholder{color:#9aad9f;font-size:.78rem}.tokenPicker .categoryPickerMenu{top:calc(100% + 6px)}.topicCard,.roadmapPanel,.categoryCard{border:1px solid #d9e2dc;border-radius:8px;background:#fff}.topicCard{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;align-content:space-between;gap:18px;width:100%;min-height:220px;padding:18px;color:inherit;text-align:left}.topicCard.selected{border-color:#1d7a5c;box-shadow:0 0 0 3px #d9eee6}.topicCard.inactiveItem{border-color:#c8624a;background:#fff2ef;opacity:.85}.topicMain{display:grid;gap:18px;align-self:stretch;min-width:0;padding:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.topicList.list .topicCard{min-height:0}.topicOrderControls{display:grid;gap:6px;justify-items:center}.topicOrderControls button{position:relative;display:grid;place-items:center;width:30px;height:28px;border:1px solid #cad7d0;border-radius:6px;background:#fff;color:#4d5b53;cursor:pointer}.topicOrderControls button:hover:not(:disabled){border-color:#1d7a5c;color:#1d7a5c}.topicOrderControls .dragHandleButton,.nodeOrderControls .dragHandleButton{cursor:grab;touch-action:none}.topicOrderControls .dragHandleButton:active,.nodeOrderControls .dragHandleButton:active{cursor:grabbing}.topicCard.dragging,.roadmapListItem.dragging{position:relative;z-index:3;opacity:.78;box-shadow:0 14px 30px #1c2b222e}.topicEditForm{display:grid;grid-column:1 / -1;gap:10px;padding-top:14px;border-top:1px solid #edf2ef}.topicEditForm label{display:grid;gap:7px}.topicEditActions{display:flex;align-items:center;gap:8px}.topicHeader{gap:12px}.order{display:grid;place-items:center;width:36px;height:36px;border-radius:8px;background:#e7f1ec;color:#1d7a5c;font-weight:800}.tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.tags span{padding:4px 8px;border-radius:999px;background:#f0f4f2;color:#4d5b53;font-size:12px;font-weight:700}.tags .topicStatusBadge-completed{background:#dff4ea;color:#176d51}.tags .topicStatusBadge-paused{background:#fff1d6;color:#8a5d13}.tags .topicStatusBadge-in_progress{background:#e5efff;color:#235aa7}.tags .topicStatusBadge-not_started{background:#f0f4f2;color:#4d5b53}.progressTrack{height:8px;overflow:hidden;border-radius:999px;background:#e7ece9}.progressTrack span{display:block;height:100%;border-radius:inherit;background:#1d7a5c}.topicStats{gap:14px;color:#5d6c63}.topicStats span{display:inline-flex;align-items:center;gap:5px}.roadmapPanel{min-height:calc(var(--app-viewport-height) - 150px);padding:22px}.roadmapFocus .roadmapPanel{width:100%}.textButton{width:fit-content;min-height:30px;padding:0;background:transparent;color:#4d5b53;cursor:pointer;font-size:13px;font-weight:760}.textButton:hover{color:#1d7a5c}.createSection{display:grid;gap:8px;margin-top:22px;padding:14px;border:1px dashed #b9c8c0;border-radius:8px;background:#fbfcfb}.sectionFormRow{display:grid;grid-template-columns:minmax(150px,1fr) 86px minmax(110px,140px) minmax(120px,150px) auto;gap:8px}.sectionCreateDialogForm .sectionFormRow{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.sectionCreateDialogForm .sectionFormRow input,.sectionCreateDialogForm .sectionFormRow select{min-width:0}.categoryGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin-top:18px}.aiRoadmap{display:grid;grid-template-columns:minmax(340px,.82fr) minmax(420px,1.18fr);gap:16px;margin-top:26px}.aiFormPanel,.aiPromptPanel,.aiJsonPanel{display:grid;gap:14px;padding:18px;border:1px solid #d9e2dc;border-radius:8px;background:#fff}.aiRoadmap>.aiPromptPanel{grid-template-rows:auto minmax(0,1fr);align-content:start}.aiRoadmap>.aiPromptPanel textarea{height:100%}.aiJsonPanel{grid-column:1 / -1}.aiFormGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.aiFormGrid label{display:grid;gap:7px;color:#4d5b53;font-size:13px;font-weight:760}.fieldLabel{color:#17211b;font-size:13px;font-weight:850}.fieldHelp{max-width:760px;color:#68786f;font-size:12px;font-weight:650;line-height:1.4}.aiWideField{grid-column:1 / -1}.aiFormGrid input,.aiFormGrid textarea,.aiPromptPanel textarea,.aiJsonPanel textarea{width:100%;border:1px solid #d4ddd7;border-radius:8px;background:#fff;color:#17211b;line-height:1.45}.aiFormGrid input{height:42px;padding:0 12px}.aiFormGrid textarea{min-height:92px;padding:12px;resize:vertical}.aiPromptPanel textarea,.aiJsonPanel textarea,.aiReadonlyPrompt,.aiJsonInput{min-height:360px;padding:14px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:13px;resize:vertical}.aiJsonPanel textarea{min-height:260px}.sectionAiPanel{display:grid;gap:12px;padding-top:14px;border-top:1px solid #d9e2dc}.sectionAiPanel .panelHeader{align-items:flex-start}.aiPromptActions{display:flex;align-items:center;gap:8px;flex-shrink:0}.sectionAiPanel h3{margin:0;font-size:16px}.aiReadonlyPrompt,.aiJsonInput{width:100%;border:1px solid #d4ddd7;border-radius:8px;background:#fff;color:#17211b;resize:vertical}.aiReadonlyPrompt{min-height:220px;background:#fbfcfb}.aiJsonInput{min-height:160px}.aiValidationRow{display:flex;align-items:center;justify-content:space-between;gap:12px}.aiValidationActions{display:flex;align-items:center;gap:8px;flex-shrink:0}.statusBadge.success{color:#1d7a5c;background:#e9f6f1}.backupControls{justify-content:space-between;align-items:flex-start}.backupHint{margin:8px 0 0;color:#5d6c63;font-size:14px}.backupHint code{padding:2px 5px;border-radius:5px;background:#eef3f0}.backupSummary{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:12px;margin-top:18px}.backupSummary article,.backupRecord{border:1px solid #d9e2dc;border-radius:8px;background:#fff}.backupSummary article{display:grid;gap:8px;padding:16px}.backupSummary span{color:#68756d;font-size:12px;font-weight:800;text-transform:uppercase}.backupSummary strong{font-size:18px}.backupSummary article.attention{border-color:#e4aaa4;background:#fff1ef;color:#6c241f}.backupList{display:grid;gap:12px;margin-top:18px}.imageCleanupGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px;margin-top:18px}.imageCleanupCard{display:grid;gap:12px;padding:14px;border:1px solid #d9e2dc;border-radius:8px;background:#fff}.imageCleanupCard img{width:100%;aspect-ratio:16 / 10;object-fit:contain;border:1px solid #d9e2dc;border-radius:8px;background:#f5f7f4}.imageCleanupCard h3,.imageCleanupCard p{margin:0}.imageCleanupCard h3{overflow-wrap:anywhere;font-size:15px}.imageCleanupCard p:not(.eyebrow){color:#5d6c63;font-size:13px;line-height:1.45}.imageCleanupSelect{display:inline-flex;align-items:center;gap:8px;color:#4d5b53;font-size:13px;font-weight:800}.imageCleanupSelect input{width:auto}.filesViewControls{display:grid;justify-items:start;gap:10px;margin-bottom:16px}.filesViewTabs{display:flex;gap:4px}.filesTab{padding:6px 14px;border:1px solid #c9d5cc;border-radius:6px;background:transparent;color:#3e4e45;font-size:14px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s}.filesTab.active{background:#2d5a3d;border-color:#2d5a3d;color:#fff}.filesViewFilters{display:flex;align-items:center;flex-wrap:wrap;gap:12px}.filesFilterCheck{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:#4d5b53;cursor:pointer}.filesFilterCheck input{width:auto}.filesTopicFilter{min-width:min(240px,100%);padding:5px 8px;border:1px solid #c9d5cc;border-radius:6px;font-size:13px;background:#fff;color:#2d3830}.filesStatusBar{margin-bottom:8px}.audioEntriesList{display:grid;gap:10px;margin-top:8px}.audioEntryCard{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:14px 16px;border:1px solid #d9e2dc;border-radius:8px;background:#fff}.audioEntryMeta{flex:1;min-width:0;display:grid;gap:3px}.audioEntryTopic{margin:0;color:#5d6c63;font-size:13px;line-height:1.4}.audioEntryActions{display:flex;align-items:center;gap:8px;flex-shrink:0}.cachedAudioPlayer{display:flex;align-items:center;gap:6px}.cachedAudioTime{font-size:12px;color:#5d6c63;white-space:nowrap}.backupRecord{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px;border-left-width:5px}.backupRecordInfo{flex:1;min-width:0}.backupRecordActions{display:flex;flex-direction:column;align-items:flex-end;gap:8px;flex-shrink:0}.backupFileSize{font-size:12px;font-weight:600;color:#4b6b58;background:#e6f0ea;border-radius:6px;padding:3px 8px;white-space:nowrap}.backupFileName{font-size:12px;font-family:monospace;color:#3b5e4a;word-break:break-all}.backupMissingBadge{display:inline-block;margin-top:6px;font-size:11px;font-weight:600;color:#92400e;background:#fef3c7;border:1px solid #f59e0b;border-radius:4px;padding:2px 7px}.backupRecord.success{border-left-color:#1d7a5c}.backupRecord.ignored{border-left-color:#b9822f}.backupRecord.missing{border-left-color:#d97706;background:#fffbeb}.backupRecord h3,.backupRecord p{margin:0}.backupRecord h3{font-size:16px}.backupRecord p:not(.eyebrow){margin-top:6px;color:#5d6c63;font-size:13px}.categoryCard{display:flex;align-items:center;justify-content:space-between;gap:14px;min-height:92px;padding:18px}.cardActions,.editCategoryForm{display:flex;align-items:center;gap:8px}.editCategoryForm{width:100%}.editCategoryForm input{flex:1;min-width:0}.iconButton{position:relative;display:inline-grid;place-items:center;flex:0 0 auto;width:38px;height:38px;border:1px solid #cad7d0;border-radius:8px;background:#fff;color:#17211b;cursor:pointer}.compactIconButton{width:34px;height:34px}.iconButton:hover{background:#f0f4f2}.visuallyHidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.iconButton.danger{color:#a73f35}.iconButton[aria-label]:after,.topicOrderControls button[aria-label]:after,.nodeOrderControls button[aria-label]:after,.markdownToolbar button[aria-label]:after,.sidebarToggle[aria-label]:after{position:absolute;z-index:120;bottom:calc(100% + 8px);left:50%;width:max-content;max-width:260px;padding:7px 9px;border-radius:7px;background:#17211b;color:#fff;content:attr(aria-label);font-size:12px;font-weight:760;line-height:1.25;opacity:0;pointer-events:none;text-align:center;transform:translate(-50%,4px);transition:opacity .12s ease,transform .12s ease;white-space:normal}.iconButton[aria-label]:before,.topicOrderControls button[aria-label]:before,.nodeOrderControls button[aria-label]:before,.markdownToolbar button[aria-label]:before,.sidebarToggle[aria-label]:before{position:absolute;z-index:121;bottom:calc(100% + 3px);left:50%;border:5px solid transparent;border-top-color:#17211b;content:"";opacity:0;pointer-events:none;transform:translate(-50%,4px);transition:opacity .12s ease,transform .12s ease}.iconButton[aria-label]:hover:after,.iconButton[aria-label]:focus-visible:after,.topicOrderControls button[aria-label]:hover:after,.topicOrderControls button[aria-label]:focus-visible:after,.nodeOrderControls button[aria-label]:hover:after,.nodeOrderControls button[aria-label]:focus-visible:after,.markdownToolbar button[aria-label]:hover:after,.markdownToolbar button[aria-label]:focus-visible:after,.sidebarToggle[aria-label]:hover:after,.sidebarToggle[aria-label]:focus-visible:after,.iconButton[aria-label]:hover:before,.iconButton[aria-label]:focus-visible:before,.topicOrderControls button[aria-label]:hover:before,.topicOrderControls button[aria-label]:focus-visible:before,.nodeOrderControls button[aria-label]:hover:before,.nodeOrderControls button[aria-label]:focus-visible:before,.markdownToolbar button[aria-label]:hover:before,.markdownToolbar button[aria-label]:focus-visible:before,.sidebarToggle[aria-label]:hover:before,.sidebarToggle[aria-label]:focus-visible:before{opacity:1;transform:translate(-50%)}.panelHeader,.panelTools,.viewToggle{justify-content:space-between}.panelTools,.panelTopicActions,.panelViewControls{display:flex;align-items:center;gap:12px}.toolsMenuWrapper{position:relative}.roadmapTitleBar{display:flex;align-items:center;gap:12px}.panelViewControls>span{display:grid;place-items:center;width:52px;height:52px;border-radius:50%;background:#e7f1ec;color:#1d7a5c;font-weight:800}@media (max-width: 1280px){.roadmapPanelHeader{display:grid;align-items:start;gap:14px}.roadmapPanelHeader .panelTools{justify-content:space-between;width:100%}.roadmapPanelHeader .panelViewControls{margin-left:auto}.roadmapPanelHeader .topicToolsMenu{right:auto;left:0}}.toolsMenuDivider{height:1px;background:#dce8df;margin:8px 0}.toolsMenuBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10;background:transparent;border:none;cursor:default}.toolsMenu{position:absolute;top:calc(100% + 6px);left:0;z-index:11;background:#fff;border:1px solid #d0ddd6;border-radius:10px;padding:6px;display:grid;gap:4px;min-width:200px;max-height:calc(var(--app-viewport-height) - 48px - env(safe-area-inset-bottom));overflow-y:auto;box-shadow:0 6px 24px #0000001f}.toolsMenu .secondaryButton,.toolsMenu .primaryButton,.toolsMenu .dangerButton{justify-content:flex-start;width:100%}.topicToolsMenu{left:auto;right:0;gap:10px;width:min(340px,calc(100vw - 32px));padding:10px}.topicToolsQuickActions,.topicToolsStudyGrid,.topicToolsCourseGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.topicToolsGroup{display:grid;gap:6px;padding-top:9px;border-top:1px solid #e3ebe6}.topicToolsGroup>span{padding:0 4px;color:#68756d;font-size:11px;font-weight:850;letter-spacing:0;text-transform:uppercase}.topicToolsAction{min-width:0;min-height:40px;padding:0 11px;text-align:left;line-height:1.15}.topicToolsAction svg{flex:0 0 auto}.topicToolsContextAction{grid-column:1 / -1;min-height:44px}.topicToolsReviewAction,.topicToolsWideAction{grid-column:1 / -1}.topicToolsReviewAction{display:grid;grid-template-columns:auto minmax(0,1fr) auto}.topicToolsReviewAction strong{min-width:0;font:inherit}.topicToolsReviewAction em{display:grid;place-items:center;min-width:25px;height:25px;padding:0 7px;border-radius:999px;background:#e7f1ec;color:#1d7a5c;font-size:12px;font-style:normal;font-weight:850}.topicToolsMaintenance .topicToolsAction{width:100%}.zoomControls{display:flex;align-items:center;gap:6px;min-height:42px;padding:0 6px;border:1px solid #cad7d0;border-radius:8px;background:#fff}.zoomControls .iconButton{width:30px;height:30px;min-height:30px;border-radius:6px;font-size:18px;font-weight:800}.zoomControls span{min-width:44px;color:#4d5b53;font-size:12px;font-weight:800;text-align:center}.viewToggle{display:inline-grid;grid-template-columns:repeat(2,1fr);overflow:hidden;border:1px solid #cad7d0;border-radius:8px;background:#fff}.viewToggle button{min-height:36px;padding:0 12px;background:transparent;color:#4d5b53;cursor:pointer;font-size:13px;font-weight:760}.viewToggle button.active{background:#1d7a5c;color:#fff}.roadmapViewport{position:relative;min-height:calc(var(--app-viewport-height) - 270px);height:calc(var(--app-viewport-height) - 270px);overflow:auto;border:1px solid #d9e2dc;border-radius:8px;background:linear-gradient(rgba(23,33,27,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(23,33,27,.04) 1px,transparent 1px),#fbfcfb;background-size:28px 28px}.roadmapCanvas{position:absolute;min-width:100%;min-height:100%}.roadmapCanvasContent{position:absolute;inset:0 auto auto 0;transform-origin:top left}.roadmapCanvasContent>.emptyStateWithAction{position:absolute;top:124px;left:50%;z-index:3;align-items:stretch;width:min(360px,calc(100% - 32px));transform:translate(-50%)}.roadmapCanvasContent>.emptyStateWithAction .emptyState{text-align:center}.roadmapCanvasContent>.emptyStateWithAction .secondaryButton{align-self:center;justify-content:center;width:auto;max-width:100%}.roadmapEdges{position:absolute;top:0;right:0;bottom:0;left:0;overflow:visible;pointer-events:none}.roadmapEdges path{fill:none;stroke:#9fb0a7;stroke-linecap:round;stroke-width:2.5}.roadmapTopicNode{position:absolute;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;width:270px;min-height:72px;padding:12px;border:2px solid #1d7a5c;border-radius:8px;background:#fff;color:#17211b;box-shadow:0 10px 22px #1c2b221f}.roadmapTopicNode svg{color:#1d7a5c}.roadmapTopicNode strong{overflow:hidden;font-size:15px;line-height:1.25;text-overflow:ellipsis}.roadmapNode,.roadmapListItem{position:absolute;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px;width:270px;min-height:112px;padding:10px;border:1px solid #cad7d0;border-radius:8px;background:#fff;color:#17211b;font-weight:760;text-align:left;box-shadow:0 8px 18px #1c2b2214}.roadmapListItem{position:relative;width:auto;min-height:82px;box-shadow:none}.roadmapNode:hover,.roadmapNode.selected,.roadmapListItem:hover,.roadmapListItem.selected{transform:translateY(-1px);box-shadow:0 12px 26px #1c2b2224}.roadmapNode.selected,.roadmapListItem.selected{outline:3px solid #cce9df}.nodeMain{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;min-width:0;min-height:54px;padding:4px;border-radius:6px;background:transparent;color:inherit;text-align:left;cursor:pointer}.nodeMain:hover{background:#1d7a5c14}.nodeStatus{width:14px;height:14px;border-radius:999px;background:#b9822f}.nodeOrderControls{display:grid;grid-template-columns:repeat(2,26px);gap:4px;justify-items:center}.nodeOrderControls span,.nodeOrderControls button{display:grid;place-items:center;width:26px;height:22px;border-radius:6px}.nodeOrderControls span{background:#e7f1ec;color:#1d7a5c;font-size:12px;font-weight:850}.nodeOrderControls button{position:relative;border:1px solid #cad7d0;background:#fff;color:#4d5b53;cursor:pointer}.nodeOrderControls button:hover:not(:disabled){border-color:#1d7a5c;color:#1d7a5c}@media (max-width: 760px){.nodeOrderControls{grid-template-columns:repeat(2,36px);gap:2px}.nodeOrderControls span,.nodeOrderControls button{width:36px;height:36px}.nodeOrderControls span{font-size:11px}}.nodeText{display:grid;gap:5px;min-width:0}.nodeTextMeta{display:flex;align-items:center;gap:5px 7px;flex-wrap:wrap}.sectionStudyCounters{display:inline-flex;align-items:center;gap:5px;align-self:flex-start;color:#355346;font-size:11px;font-style:normal;font-weight:820;line-height:1;font-variant-numeric:tabular-nums}.sectionStudyCounters span{display:inline-flex;align-items:center;gap:2px;white-space:nowrap}.sectionStudyCounters svg{flex-shrink:0;color:#1d7a5c;opacity:.78}.sectionStudyCountersPlaceholder{visibility:hidden}.sectionStudyCounters .contentStudyDone svg{color:#1d7a5c;opacity:.95}.sectionStudyCounters .contentStudyPending svg{color:#b9822f;opacity:.85}.nodeText>.sectionStudyCounters,.l1ChildText>.sectionStudyCounters{margin-top:1px}.sectionIndicator{flex-shrink:0}.sectionIndicator.indicatorOff{color:#7b8a82;opacity:.34}.sectionIndicator.indicatorOn{color:#2563eb;opacity:.95}.sectionIndicator.indicatorWarning{color:#c53030;opacity:.95}.contentIcon,.audioIcon{color:#2563eb}.openQuestionIcon{color:#c53030}.notesIndicatorIcon{color:#2563eb}.inlineHeaderIcon{display:inline-block;vertical-align:middle;margin-left:6px}.l1ChildMeta{display:flex;align-items:center;gap:4px;flex-shrink:0;margin-left:auto}.nodeText strong{overflow:hidden;font-size:14px;line-height:1.25;text-overflow:ellipsis}.nodeText em,.typeBadge{width:fit-content;padding:3px 7px;border:1px solid #d4ddd7;border-radius:999px;background:#fff;color:#4d5b53;font-size:11px;font-style:normal;font-weight:800}.nodeText small{display:-webkit-box;overflow:hidden;color:#5d6c63;font-size:12px;font-weight:600;line-height:1.3;-webkit-box-orient:vertical;-webkit-line-clamp:2}.sectionText{min-width:0}.sectionText h3{margin:0;font-size:15px;letter-spacing:0}.sectionText p{margin:5px 0 0;color:#5d6c63;font-size:13px;line-height:1.35}.markdownPreview{display:grid;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid #d4ddd7;color:#2d3931;font-weight:500}.markdownPreview h1,.markdownPreview h2,.markdownPreview h3,.markdownPreview h4,.markdownPreview h5,.markdownPreview p,.markdownPreview ul,.markdownPreview ol,.markdownPreview pre{margin:0;letter-spacing:0}.markdownPreview h1{font-size:2.267em;font-weight:800;line-height:1.15}.markdownPreview h2{font-size:1.733em;font-weight:760;line-height:1.2}.markdownPreview h3{font-size:1.333em;font-weight:740;line-height:1.3}.markdownPreview h4{font-size:1.067em;font-weight:720}.markdownPreview h5,.markdownPreview p,.markdownPreview li{font-size:1em;line-height:1.45}.markdownPreview ul,.markdownPreview ol{padding-left:18px}.markdownPreview .taskList{list-style:none;padding-left:2px}.markdownPreview .taskListItem{display:flex}.markdownPreview .taskItemLabel{display:flex;align-items:flex-start;gap:7px;cursor:pointer}.markdownPreview .taskItemLabel input[type=checkbox]{flex-shrink:0;width:15px;height:15px;margin-top:3px;cursor:pointer;accent-color:#2d7a4f}.markdownPreview .taskItemChecked{text-decoration:line-through;color:#9aaba3}.markdownPreview pre{overflow-x:auto;padding:10px;border-radius:8px;background:#17211b;color:#f7faf7;font-size:12px;line-height:1.45}.markdownPreview a{color:#1d7a5c;font-weight:760}.markdownPreview code{padding:2px 5px;border-radius:5px;background:#eef3f0;color:#17211b;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.92em}.markdownPreview img{display:block;max-width:100%;max-height:520px;height:auto;object-fit:contain;border:1px solid #d9e2dc;border-radius:8px;background:#fff}.markdownPreview hr{display:block;width:100%;border:none;border-top:1px solid #d4ddd7;margin:0}.markdownPreview blockquote{margin:0;padding:8px 12px;border-left:3px solid #1d7a5c;background:#f0f4f2;border-radius:0 6px 6px 0;color:#3d5247;font-style:italic}.markdownPreview figure{margin:0}.markdownTableWrap{overflow-x:auto;border:1px solid #d9e2dc;border-radius:8px;background:#fff}.markdownPreview table{width:100%;min-width:520px;border-collapse:collapse}.markdownPreview th,.markdownPreview td{padding:10px 12px;border-bottom:1px solid #edf2ef;border-left:1px solid #edf2ef;text-align:left;vertical-align:top;font-size:inherit;line-height:1.45}.markdownPreview th:first-child,.markdownPreview td:first-child{border-left:0}.markdownPreview th{background:#f0f4f2;color:#17211b;font-weight:800}.markdownPreview tr:last-child td{border-bottom:0}.sectionActions,.editSectionForm{display:grid;grid-auto-flow:column;align-items:center;gap:8px}.sectionActions select{width:128px}.editSectionForm{grid-column:1 / -1;grid-auto-flow:row}.roadmapNode.studied,.roadmapListItem.studied{border-color:#1d7a5c;background:#e9f6f1}.roadmapNode.studied .nodeStatus,.roadmapListItem.studied .nodeStatus{background:#1d7a5c}.roadmapNode.active,.roadmapNode.pending,.roadmapListItem.pending{border-color:#b9822f;background:#fff8e8}.roadmapNode.pending .nodeStatus,.roadmapListItem.pending .nodeStatus{background:#b9822f}.roadmapNode.skipped,.roadmapListItem.skipped{border-color:#939f98;background:#f0f4f2}.roadmapNode.skipped .nodeStatus,.roadmapListItem.skipped .nodeStatus{background:#939f98}.roadmapNode.inactive,.roadmapListItem.inactive{border-color:#c8624a;background:#fff2ef;opacity:.8}.roadmapNode.inactive .nodeStatus,.roadmapListItem.inactive .nodeStatus{background:#c8624a}.l1ChildrenPanel{display:grid;gap:4px;padding-top:8px}.l1ChildItem{display:flex;align-items:center;gap:10px;border-radius:8px;padding:8px 10px;border:1px solid #e0e8e3;background:#f8fbf9}.l1ChildItem.studied{border-color:#a8d4be;background:#f0f9f4}.l1ChildItem.studied .nodeStatus{background:#1d7a5c}.l1ChildItem.pending{border-color:#ddc08a;background:#fefbf2}.l1ChildItem.pending .nodeStatus{background:#b9822f}.l1ChildItem.skipped{border-color:#c8d4ce;background:#f5f7f6}.l1ChildItem.skipped .nodeStatus{background:#939f98}.l1ChildItem.inactive .nodeStatus{background:#c8624a}.l1ChildItem.inactive{opacity:.75;background:#fff2ef;border-radius:8px;outline:1px solid #e8b4a8}.l1ChildButton{flex:1;display:flex;align-items:center;gap:10px;text-align:left;background:none;border:none;padding:0;cursor:pointer;min-width:0}.l1ChildItem:has(.l1ChildButton:hover){border-color:#2aa879}.l1ChildText{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}.l1ChildText .typeBadge,.mobileSectionMeta .typeBadge,.mobileSectionTypeBadge{white-space:nowrap}.l1ChildText strong{font-size:13px;font-weight:600;color:#1a2e24;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.l1ChildText small{font-size:12px;color:#6b8c7a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.l1ChildStats{display:flex;align-items:center;gap:8px;flex-shrink:0}.l1ChildStats span{font-size:12px;color:#6b8c7a;background:#eaf2ed;border-radius:4px;padding:2px 7px;white-space:nowrap}.roadmapList{display:grid;gap:10px;min-height:calc(var(--app-viewport-height) - 270px);padding:16px;overflow:auto;border:1px solid #d9e2dc;border-radius:8px;background:#fbfcfb}.roadmapDetailGrid{display:block;margin-top:18px}.sectionDetail,.sectionEditor{display:grid;gap:14px;padding:16px;border:1px solid #d9e2dc;border-radius:8px;background:#fff}.sectionDetail{position:relative;grid-template-columns:minmax(0,1fr);grid-auto-rows:max-content;align-content:start;min-height:420px;overflow:hidden}.sectionDrawer{position:fixed;z-index:40;inset:0 0 0 auto;width:min(1220px,94vw);max-width:calc(100vw - 24px);min-height:var(--app-viewport-height);max-height:var(--app-viewport-height);overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;border-radius:0;border-top:0;border-right:0;border-bottom:0;box-shadow:-24px 0 60px #17211b2e}.sectionDrawerResizeHandle{position:absolute;z-index:2;top:0;bottom:0;left:0;width:14px;padding:0;background:transparent;cursor:col-resize;touch-action:none}.sectionDrawerResizeHandle:before{position:absolute;top:50%;left:3px;width:4px;height:72px;border-radius:999px;background:#8fb7a7;content:"";opacity:.42;transform:translateY(-50%);transition:opacity .12s ease,background .12s ease}.sectionDrawerResizeHandle:hover:before,.sectionDrawerResizeHandle:focus-visible:before,.sectionDrawerResizing .sectionDrawerResizeHandle:before{background:#1d7a5c;opacity:1}.sectionDrawerResizeHandle:focus-visible{outline:0}.sectionReadingProgressWrapper{position:fixed;top:0;right:0;z-index:41;width:min(1220px,94vw);max-width:calc(100vw - 24px);height:3px;pointer-events:none;overflow:hidden}.sectionReadingProgress{height:3px;background:#1d7a5c;transition:width .1s linear}@media (max-width: 680px){.sectionReadingProgressWrapper{width:100vw}}.sectionDrawer.editing{width:min(1480px,98vw)}.chatDrawer{position:fixed;z-index:50;inset:0 0 0 auto;display:grid;grid-template-rows:auto minmax(0,1fr) minmax(0,1fr);gap:14px;width:min(980px,92vw);min-height:var(--app-viewport-height);max-height:var(--app-viewport-height);overflow:auto;padding:16px;border-left:1px solid #d9e2dc;background:#fff;box-shadow:-24px 0 60px #17211b33}.topicStudyDrawer{position:fixed;z-index:50;inset:0 0 0 auto;display:grid;grid-template-rows:auto minmax(0,1fr);gap:14px;width:min(1120px,94vw);min-height:var(--app-viewport-height);max-height:var(--app-viewport-height);overflow:auto;padding:16px;border-left:1px solid #d9e2dc;background:#fff;box-shadow:-24px 0 60px #17211b33}.chatDrawer .detailHeader,.topicStudyDrawer .detailHeader{margin:-16px -16px 0}.topicStudySetup,.topicStudySession{display:grid;gap:14px;align-content:start}.topicStudyActions{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.topicStudyFooter{display:flex;flex-direction:column;gap:10px}.topicStudySectionList,.topicStudyItems{display:grid;gap:10px}.topicStudyStartSessionBanner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border:1px solid #c9e8dd;border-radius:8px;background:#eef8f4}.topicStudyStartSessionHint{color:#1d5c44;font-size:13px;font-weight:600;line-height:1.4}.studyLimitRow{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:10px 0 0}.studyTotalCount{color:#68756d;font-size:13px;font-weight:600}.studyLimitLabel{display:flex;align-items:center;gap:8px;color:#4a5c51;font-size:13px;font-weight:600;cursor:default}.studyLimitInput{width:72px;padding:5px 8px;border:1px solid #c7d4cc;border-radius:6px;background:#fff;color:#17211b;font-size:13px;text-align:center}.topicStudySection{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:56px;padding:10px 12px;border:1px solid #d9e2dc;border-radius:8px;background:#fff;color:#17211b}.topicStudySection.disabled{color:#7b8780;background:#f0f4f2}.topicStudySection input{width:auto}.topicStudySection span{display:grid;gap:3px;min-width:0}.topicStudySection strong{overflow-wrap:anywhere;font-size:14px}.topicStudySection small,.topicStudySection em,.studySource{color:#68756d;font-size:12px;font-style:normal;font-weight:800}.topicStudySection em{white-space:nowrap}.topicStudyCard{margin:0}.studySource{margin:6px 0 0}.mobileRoadmaps,.mobileTopicList,.mobileSectionList,.mobileSectionStudy,.mobileTopicStudy,.mobileQuestions,.mobileFlashcards{display:grid;gap:12px}.mobileRoadmaps,.mobileSectionStudy{min-width:0}.mobileSearch{width:100%}.mobileLegend{border:1px solid #d9e2dc;border-radius:8px;background:#fff}.mobileLegend summary{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:10px 12px;color:#26372d;font-size:13px;font-weight:850;list-style:none;cursor:pointer}.mobileLegend summary::-webkit-details-marker{display:none}.mobileLegendChevron{transition:transform .18s ease}.mobileLegend[open] .mobileLegendChevron{transform:rotate(180deg)}.mobileLegendList{display:grid;gap:8px;padding:0 12px 12px}.mobileLegendItem{display:grid;grid-template-columns:62px minmax(0,1fr);gap:10px;align-items:start;padding-top:8px;border-top:1px solid #edf2ef}.mobileLegendItem>span:last-child{display:grid;gap:3px;min-width:0}.mobileLegendItem strong{color:#24362c;font-size:12px;line-height:1.25}.mobileLegendItem small{color:#5d6c63;font-size:11px;font-weight:650;line-height:1.35}.mobileLegendSample{display:flex;align-items:center;gap:6px;min-height:24px}.mobileLegendSample .order{width:30px;height:30px;font-size:12px}.mobileLegendTextSample{display:grid;gap:2px}.mobileLegendTextSample strong{font-size:11px}.mobileLegendTextSample small{max-width:58px;overflow:hidden;font-size:10px;text-overflow:ellipsis;white-space:nowrap}.mobileLegendProgressSample{color:#4d5b53;font-size:12px;font-style:normal;font-weight:850}.mobileLegendStatusDots .nodeStatus{width:12px;height:12px}.mobileLegendStatusDots .statusStudied{background:#1d7a5c}.mobileLegendStatusDots .statusPending{background:#b9822f}.mobileLegendStatusDots .statusSkipped{background:#939f98}.mobileLegendIconRow{flex-wrap:wrap}.mobileTopicCard,.mobileSectionItem{display:grid;align-items:center;gap:10px;width:100%;min-width:0;padding:12px;border:1px solid #d9e2dc;border-radius:8px;background:#fff;color:#17211b;text-align:left;cursor:pointer}.mobileTopicCard{grid-template-columns:auto minmax(0,1fr) auto}.mobileSectionItem{grid-template-columns:minmax(0,1fr)}.mobileSectionMain{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:10px;min-width:0;border:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.mobileTopicCard span:not(.order),.mobileSectionText,.mobileStudyHeader>div{display:grid;gap:4px;min-width:0}.mobileSectionMeta{display:flex;flex-direction:column;align-items:flex-end;gap:6px;flex-shrink:0;padding-top:1px}.mobileSectionIndicators{display:flex;align-items:center;justify-content:flex-end;gap:5px;flex-wrap:wrap;min-height:12px}.mobileSectionMain .sectionStudyCounters{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px;font-size:12px}.mobileSectionMain .sectionStudyCounters span{display:inline-flex;align-items:center;gap:3px}.mobileTopicCard strong,.mobileSectionMain strong,.mobileStudyHeader h2{overflow-wrap:anywhere}.mobileTopicCard small,.mobileSectionText small,.mobileStudyHeader p:not(.eyebrow){color:#5d6c63;font-size:13px;line-height:1.4}.mobileTopicCard em,.mobileSectionMain em{color:#4d5b53;font-size:12px;font-style:normal;font-weight:800}.mobileSectionItem.studied{border-color:#1d7a5c;background:#e9f6f1}.mobileSectionItem.studied .nodeStatus{background:#1d7a5c}.mobileSectionItem.pending{border-color:#b9822f;background:#fff8e8}.mobileSectionItem.skipped{border-color:#939f98;background:#f0f4f2}.mobileStudyHeader{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px}.mobileStudyActions{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.mobileStudyHeader h2,.mobileStudyHeader p{margin:0}.mobileSectionStatusRow{display:flex;gap:8px;align-items:center}.mobileSectionProgress{display:flex;align-items:center;min-height:22px}.mobileSectionProgress .sectionStudyCounters{display:flex;flex-wrap:wrap;gap:8px;font-size:13px}.mobileSectionStatusRow select{flex:1;font-size:15px;padding:10px 14px;border-radius:10px}.mobileSectionTabs{width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}.mobileSectionTabs button{font-size:12px;padding:0 6px;gap:4px}.mobileSectionTabs span{min-width:18px;height:18px;font-size:11px;padding:0 4px}.mobileContent{padding-bottom:24px}.mobileContent .markdownPreview{gap:12px;margin-top:0;padding-top:0;border-top:0}.mobileContent .markdownPreview h4{line-height:1.3}.mobileContent .markdownPreview h5{line-height:1.35}.mobileContent .markdownPreview p,.mobileContent .markdownPreview li{line-height:1.65}.chatPromptPanel,.chatLinksPanel{display:grid;gap:12px;align-content:start}.chatPromptPanel h3,.chatLinksPanel h3,.chatLinksPanel p{margin:0}@media (min-width: 981px){.chatDrawer{grid-template-rows:auto minmax(0,1fr);overflow:hidden}.chatPromptPanel{min-height:0;grid-template-rows:auto minmax(0,1fr);align-content:stretch}.chatPromptPanel .aiReadonlyPrompt{min-height:0;height:100%}}.chatLinkForm{display:grid;gap:8px;padding:12px;border:1px solid #d9e2dc;border-radius:8px;background:#fbfcfb}.creationChatLinkFields{display:grid;gap:8px;padding:12px;border:1px dashed #b9c8c0;border-radius:8px;background:#fbfcfb}.creationChatLinkFields h3,.creationChatLinkFields p{margin:0}.chatLinkForm input,.chatLinkForm textarea,.creationChatLinkFields input,.creationChatLinkFields textarea{width:100%;border:1px solid #d4ddd7;border-radius:8px;background:#fff}.chatLinkForm input,.creationChatLinkFields input{height:42px;padding:0 12px}.chatLinkForm textarea,.creationChatLinkFields textarea{min-height:82px;padding:12px;resize:vertical}.chatLinkCard{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:start;padding:14px;border:1px solid #d9e2dc;border-radius:8px;background:#fff}.chatLinkCard a{color:#1d7a5c;font-weight:800}.chatLinkCard p{margin-top:8px;color:#5d6c63;font-size:13px;line-height:1.45}.chatLinkActions{display:flex;align-items:center;gap:8px}.detailBackdrop{position:fixed;z-index:35;top:0;right:0;bottom:0;left:0;background:#17211b6b;cursor:pointer}.detailHeader:before{position:absolute;inset:0 auto 0 0;width:5px;content:""}.detailHeader{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;margin:-16px -16px 0;padding:16px 16px 16px 21px;border-bottom:1px solid #d9e2dc;background:#fbfcfb}.drawerHeaderActions{display:flex;align-items:start;gap:8px}.detailHeader>.drawerHeaderActions{display:flex;align-content:start;flex-direction:row;justify-content:flex-end}.sectionHeaderStatus{width:fit-content;min-width:128px}.sectionHeaderStatusRow{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:8px}.sectionHeaderStatusRow .sectionStudyCounters{display:flex;flex-wrap:wrap;gap:8px;padding:0 10px;min-height:34px;border:1px solid #d9e2dc;border-radius:8px;background:#fff;font-size:12px}.sectionActionsMenuWrapper{position:relative}.sectionActionsMenu{top:calc(100% + 8px);right:0;left:auto;min-width:250px;padding:8px}.sectionInfoPanel{display:grid;gap:6px;padding:12px 14px;border:1px solid #d9e2dc;border-radius:8px;background:#f8fbf9}.sectionInfoPanel ul{list-style:none;display:grid;gap:4px;margin:0;padding:0}.sectionInfoPanel li{font-size:13px;color:#556b63}.detailHeader .drawerHeaderActions .iconButton[aria-label]:after{top:calc(100% + 8px);bottom:auto;transform:translate(-50%,-4px)}.detailHeader .drawerHeaderActions .iconButton[aria-label]:before{top:calc(100% + 3px);bottom:auto;border-top-color:transparent;border-bottom-color:#17211b;transform:translate(-50%,-4px)}.detailHeader .drawerHeaderActions .iconButton[aria-label]:hover:after,.detailHeader .drawerHeaderActions .iconButton[aria-label]:focus-visible:after,.detailHeader .drawerHeaderActions .iconButton[aria-label]:hover:before,.detailHeader .drawerHeaderActions .iconButton[aria-label]:focus-visible:before{transform:translate(-50%)}.detailHeader.pending:before{background:#b9822f}.detailHeader.studied:before{background:#1d7a5c}.detailHeader.skipped:before{background:#939f98}.detailHeader h3,.detailHeader p,.detailEmpty h3,.detailEmpty p{margin:0}.detailHeader h3,.detailEmpty h3{font-size:17px}.detailHeader>div,.detailEmpty{display:grid;gap:7px;min-width:0}.detailHeader p,.detailEmpty p{color:#5d6c63;font-size:14px;line-height:1.45}.sectionTabs{display:inline-grid;grid-template-columns:repeat(auto-fit,minmax(134px,1fr));overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scrollbar-color:#1d7a5c transparent;scrollbar-width:thin;width:min(100%,760px);border:1px solid #cad7d0;border-radius:8px;background:#fff}.sectionTabs::-webkit-scrollbar{height:6px}.sectionTabs::-webkit-scrollbar-track{background:transparent}.sectionTabs::-webkit-scrollbar-thumb{border-radius:999px;background:#1d7a5c}.sectionTabs button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;gap:7px;min-height:40px;min-width:134px;padding:0 12px;background:transparent;color:#4d5b53;cursor:pointer;font-size:13px;font-weight:800}.sectionTabs button.active{background:#1d7a5c;color:#fff}.sectionTabs span:not(.dueBadge){display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#edf2ef;color:#4d5b53;font-size:12px}.sectionTabs button.active span:not(.dueBadge){background:#fff3;color:#fff}.detailContent{display:block;min-height:0;overflow:visible}.detailContent .markdownPreview{gap:12px;margin-top:0;padding-top:0;border-top:0}.detailContent .markdownPreview h4{line-height:1.35}.detailContent .markdownPreview h5{line-height:1.4}.detailContent .markdownPreview p,.detailContent .markdownPreview li{line-height:1.62}.detailContent .markdownPreview pre{line-height:1.55}.detailContentEditRow{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.fontSizeControls{display:flex;align-items:center;gap:2px}.fontSizeBtn{background:none;border:1px solid transparent;border-radius:4px;color:#6b7c71;cursor:pointer;font-weight:700;line-height:1;padding:3px 6px;font-family:inherit}.fontSizeBtn:hover:not(:disabled){background:#e8efeb;border-color:#c5d4c9;color:#2d3931}.fontSizeBtn:disabled{opacity:.35;cursor:default}.fontSizeBtn{font-size:12px}.fontSizeBtnLarge{font-size:17px}.contentReader{position:relative}.contentHighlight{border-radius:4px;padding:0 2px;background:#fff1a8;color:inherit;cursor:pointer;box-decoration-break:clone;-webkit-box-decoration-break:clone}.contentHighlight:hover{background:#ffe36f}.contentHighlightNavigated{outline:2px solid #1d7a5c;box-shadow:0 0 0 6px #1d7a5c29}.highlightFloatingButton,.highlightQuickMenu{position:fixed;z-index:80}.highlightFloatingButton{display:inline-flex;align-items:center;gap:7px;min-height:36px;padding:0 12px;border:1px solid #1d7a5c;border-radius:8px;background:#1d7a5c;color:#fff;box-shadow:0 10px 28px #17211b38;cursor:pointer;font-size:13px;font-weight:800}.highlightQuickMenu{padding:6px;border:1px solid #d9e2dc;border-radius:8px;background:#fff;box-shadow:0 12px 30px #17211b29}.highlightRelinkBanner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;margin-bottom:10px;padding:9px 10px;border:1px solid #d6a80f;border-radius:8px;background:#fff7cc;color:#5c4810;font-size:13px;font-weight:760;line-height:1.35}.highlightRelinkBanner .iconButton{width:30px;height:30px}.sectionHighlightsPanel{display:grid;gap:14px}.sectionHighlightsPanel h3{margin:2px 0 0;font-size:20px;line-height:1.3}.sectionHighlightsList{display:grid;gap:10px}.sectionHighlightItem{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 12px;padding:12px;border:1px solid #d9e2dc;border-radius:8px;background:#fff}.sectionHighlightItem.unresolved{border-color:#d6a80f;background:#fffdf0}.sectionHighlightItem blockquote{margin:0;padding:0 0 0 10px;border-left:3px solid #eab308;color:#29362e;font-size:14px;font-weight:650;line-height:1.5}.highlightCellsPreview{margin:0;padding:0 0 0 10px;border-left:3px solid #eab308;border-collapse:collapse;font-size:14px;font-weight:650;color:#29362e;line-height:1.5;width:100%}.highlightCellsPreview td{padding:3px 10px 3px 0;vertical-align:top}.highlightCellsPreview td+td{padding-left:10px;border-left:1px solid #d9e2dc}.sectionHighlightStatus{grid-column:1 / -1;margin:0;padding:8px 10px;border-radius:8px;background:#fff7cc;color:#6b5314;font-size:12px;font-weight:760;line-height:1.35}.sectionHighlightActions{display:flex;align-items:flex-start;flex-wrap:wrap;justify-content:flex-end;gap:6px}.sectionHighlightNote,.sectionHighlightNoteEditor{grid-column:1 / -1}.sectionHighlightNote{margin:0;padding:10px 12px;border-radius:8px;background:#f4f8f5;color:#4d5b53;font-size:13px;line-height:1.45;white-space:pre-wrap}.sectionHighlightNoteEditor{display:grid;gap:8px}.sectionHighlightNoteEditor textarea{min-height:92px;resize:vertical;padding:10px 12px;border:1px solid #cad7d0;border-radius:8px;font:inherit;line-height:1.45}.sectionHighlightNoteEditor>div{display:flex;flex-wrap:wrap;gap:8px}.ttsControls{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.ttsIdleControls{display:inline-flex;align-items:center;flex-wrap:nowrap;gap:8px}.ttsCachedAudioIndicator{display:grid;place-items:center;width:38px;height:38px;border:1px solid #d9e2dc;border-radius:8px;background:#fbfcfb}.ttsPlaybackActions{display:flex;flex-wrap:wrap;gap:8px}.ttsEngineToggle{display:inline-flex;border:1px solid #cad7d0;border-radius:8px;overflow:hidden}.ttsEngineToggle button{padding:0 10px;min-height:38px;background:#fff;color:#556b5e;font-size:.78rem;font-weight:700;border:none;cursor:pointer}.ttsEngineToggle button+button{border-left:1px solid #cad7d0}.ttsEngineToggle button.active{background:#e8f0ec;color:#17211b}.ttsEngineToggle button:hover:not(.active){background:#f5f8f6}.themeDark .ttsEngineToggle{border-color:#3a4a40}.themeDark .ttsEngineToggle button{background:#1e2922;color:#8aab96}.themeDark .ttsEngineToggle button+button{border-left-color:#3a4a40}.themeDark .ttsEngineToggle button.active{background:#2d3d33;color:#d4e8da}.themeDark .ttsEngineToggle button:hover:not(.active){background:#263330}.themeDark .ttsCachedAudioIndicator{border-color:#314139;background:#131b18}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.spinIcon{animation:spin 1s linear infinite;flex-shrink:0}.ttsSpeedControl{display:flex;align-items:center;gap:8px;min-height:40px;padding:0 10px;border:1px solid #d9e2dc;border-radius:8px;background:#fbfcfb}.ttsSpeedControl input[type=range]{width:clamp(120px,16vw,190px);cursor:pointer;accent-color:#4a7a5e}.ttsSpeedControl button{display:grid;place-items:center;width:28px;height:28px;padding:0;border:1px solid #cad7d0;border-radius:7px;background:#fff;color:#17211b;cursor:pointer;font-weight:850}.ttsSpeedControl button:hover:not(:disabled){border-color:#1d7a5c;color:#1d7a5c}.ttsSpeedControl span{font-size:.8rem;font-weight:700;color:#556b5e;min-width:38px;text-align:center}.themeDark .ttsSpeedControl span{color:#8aab96}.ttsError{font-size:12px;color:#c0392b;background:#fdf0ee;border:1px solid #f5c6c0;border-radius:4px;padding:3px 8px;white-space:nowrap}.themeDark .ttsError{color:#ff8080;background:#2a1a1a;border-color:#5a2a2a}.ttsSeekBar{display:grid;grid-template-columns:auto minmax(220px,1fr) auto auto;align-items:center;gap:10px;width:100%}.ttsPlaybackPanel{flex:1 0 100%;display:grid;width:min(100%,920px);padding:10px 12px;border:1px solid #d9e2dc;border-radius:8px;background:#fbfcfb}.ttsSeekWrapper{position:relative;display:flex;align-items:center;min-width:0;width:100%}.ttsSeekTrack{position:absolute;left:0;right:0;height:4px;top:50%;transform:translateY(-50%);background:#c5d5cc;border-radius:2px;pointer-events:none;overflow:hidden}.themeDark .ttsSeekTrack{background:#263330}.ttsSeekBuffered{position:absolute;top:0;left:0;bottom:0;background:#7ab898;transition:width .6s linear}.themeDark .ttsSeekBuffered{background:#2d5c44}.ttsSeekPlayed{position:absolute;top:0;left:0;bottom:0;background:#2d6a4a}.ttsSeek{-webkit-appearance:none;-moz-appearance:none;appearance:none;position:relative;z-index:1;width:100%;height:18px;background:transparent;cursor:pointer}.ttsSeek::-webkit-slider-runnable-track{height:4px;background:transparent}.ttsSeek::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:14px;height:14px;border-radius:50%;background:#2d6a4a;margin-top:-5px;cursor:pointer;box-shadow:0 1px 3px #00000040}.themeDark .ttsSeek::-webkit-slider-thumb{background:#3db87a}.ttsSeek::-moz-range-track{height:4px;background:transparent;border:none}.ttsSeek::-moz-range-thumb{width:14px;height:14px;border-radius:50%;background:#2d6a4a;border:none;cursor:pointer;box-shadow:0 1px 3px #00000040}.themeDark .ttsSeek::-moz-range-thumb{background:#3db87a}.ttsSeek::-moz-range-progress{background:transparent}.ttsSkipBtn{position:relative;display:grid;grid-template-columns:auto auto;align-items:center;justify-content:center;gap:1px;min-width:44px;min-height:34px;padding:0 7px;border:1px solid #cad7d0;border-radius:8px;background:#fff;color:#556b5e;cursor:pointer;line-height:1}.ttsSkipBtn span{font-size:10px;font-weight:850}.ttsSkipBtn:hover{border-color:#1d7a5c;background:#e8f0ec;color:#17211b}.themeDark .ttsPlaybackPanel,.themeDark .ttsSpeedControl{border-color:#314139;background:#131b18}.themeDark .ttsSkipBtn{border-color:#3a4d43;background:#15201b;color:#8aab96}.themeDark .ttsSkipBtn:hover{border-color:#2aa879;background:#2d3d33;color:#d4e8da}.themeDark .ttsSpeedControl button{border-color:#3a4d43;background:#15201b;color:#e8f0ea}.ttsTime{font-size:.78rem;color:#556b5e;white-space:nowrap;font-variant-numeric:tabular-nums;letter-spacing:.02em}.themeDark .ttsTime{color:#8aab96}.ttsRemaining{opacity:.65}.contentStudyFooter{display:grid;gap:12px;padding-top:20px;margin-top:20px;border-top:1px solid #d9e2dc}.contentStudyHistory{display:grid;gap:6px}.contentStudyHistory ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}.contentStudyHistory li{font-size:13px;color:#556b63}.contentChangeHistory{padding:10px 12px;border:1px solid #d9e2dc;border-radius:8px;background:#f8fbf9}.contentChangeHistory .emptyState{margin:0;text-align:left}.detailActions,.detailEditorRow{display:flex;align-items:center;gap:8px}.questionPanel,.flashcardPanel{display:grid;gap:12px;padding-top:14px;border-top:1px solid #d9e2dc}.questionPanel h3,.flashcardPanel h3,.questionCard h4,.questionCard p{margin:0}.questionCard{display:grid;gap:12px;padding:14px;border:1px solid #d9e2dc;border-radius:8px;background:#fbfcfb}.sessionRequiredTarget{cursor:pointer}.questionCard header{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px;align-items:start}.questionCard header>span{display:grid;place-items:center;width:28px;height:28px;border-radius:8px;background:#e7f1ec;color:#1d7a5c;font-size:13px;font-weight:800}.questionCard h4{font-size:14px;line-height:1.35}.questionCard p{color:#5d6c63;font-size:12px;line-height:1.4}.questionOptions{display:grid;gap:8px}.multiCorrectHint{display:inline-flex;align-items:center;gap:6px;width:fit-content;padding:5px 8px;border:1px solid #c9e8dd;border-radius:999px;background:#eef8f4;color:#1d7a5c;font-size:12px;font-weight:800}.questionOptions label{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:start;padding:9px 10px;border:1px solid #d4ddd7;border-radius:8px;background:#fff;color:#2d3931;font-size:13px;font-weight:650;line-height:1.35}.questionOptions label.correctOption{border-color:#1d7a5c;background:#e9f6f1;color:#1d7a5c}.questionOptions input{width:auto;margin-top:2px}.questionActions{display:flex;flex-wrap:wrap;gap:8px}.questionFooter{display:flex;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:10px}.answerFeedback{padding:6px 9px;border-radius:999px;font-size:12px;font-weight:800}.answerFeedback.correct{background:#e9f6f1;color:#1d7a5c}.answerFeedback.wrong{background:#fff1ef;color:#a73f35}.answerExplanation{padding-top:10px;border-top:1px solid #d9e2dc}.answerReveal{display:grid;gap:8px;padding:12px;border:1px solid #b8d8ca;border-radius:8px;background:#f2fbf7}.answerReveal strong,.answerReveal p,.answerReveal ul{margin:0}.answerReveal strong{color:#1d7a5c;font-size:13px}.answerReveal ul{padding-left:18px;color:#17211b;font-size:13px;font-weight:700}.answerReveal p{color:#4d5b53;font-size:13px;line-height:1.45}.flashcardCard{display:grid;gap:10px;padding:14px;border:1px solid #d9e2dc;border-radius:8px;background:#fbfcfb}.flashcardFace{display:grid;gap:10px;min-height:140px;padding:18px;border:1px solid #cad7d0;border-radius:8px;background:#fff;color:#17211b;cursor:pointer;text-align:left}.flashcardFace.flipped{border-color:#1d7a5c;background:#e9f6f1}.flashcardFace span{color:#68756d;font-size:12px;font-weight:800;text-transform:uppercase}.flashcardFace strong{font-size:16px;line-height:1.45}.flashcardStats,.flashcardActions{display:flex;flex-wrap:wrap;gap:8px}.flashcardStats span{padding:4px 8px;border-radius:999px;background:#f0f4f2;color:#4d5b53;font-size:12px;font-weight:760}.flashcardActions button{min-height:34px;padding:0 10px;border:1px solid #cad7d0;border-radius:8px;background:#fff;color:#17211b;cursor:pointer;font-size:12px;font-weight:760}.flashcardActions button:hover{background:#f0f4f2}.flashcardActions button.selected,.flashcardActions button.selected:disabled{border-color:#1d7a5c;background:#dff3eb;color:#155a43;opacity:1}.detailActions{justify-content:flex-end;flex-wrap:wrap;padding-top:2px}.sectionEditor input{height:42px;padding:0 12px;border:1px solid #d4ddd7;border-radius:8px;background:#fff}.sectionEditor{padding:0;border:0}.markdownEditor{display:grid;gap:12px;align-items:stretch}.markdownEditorPane{display:grid;grid-template-rows:auto minmax(0,1fr);gap:8px;min-width:0}.markdownEditorPane.preview{padding:12px;border:1px solid #d9e2dc;border-radius:8px;background:#fbfcfb}.markdownEditorHeader{display:flex;align-items:center;justify-content:flex-start;gap:12px}.markdownEditorTitle{min-width:140px}.markdownEditorHeader h3,.markdownEditorHeader p{margin:0}.markdownEditorHeader h3{font-size:14px}.markdownToolbar{display:flex;flex-wrap:wrap;gap:6px;padding:8px;border:1px solid #d9e2dc;border-radius:8px;background:#fbfcfb}.markdownToolbar button{position:relative;display:inline-grid;place-items:center;width:34px;height:32px;border:1px solid #cad7d0;border-radius:7px;background:#fff;color:#17211b;cursor:pointer}.markdownToolbar button:hover{border-color:#1d7a5c;color:#1d7a5c}.markdownUploadStatus{margin:-2px 0 0;color:#5d6c63;font-size:12px;font-weight:760}.sectionEditor textarea.sectionContentEditor{min-height:58vh;height:100%;resize:vertical}.markdownEditorPreview{min-height:58vh;overflow:auto;padding:12px;border:1px solid #d9e2dc;border-radius:8px;background:#fff}@supports (min-height: 58dvh){.sectionEditor textarea.sectionContentEditor,.markdownEditorPreview{min-height:58dvh}}.markdownEditorPreview .markdownPreview{margin-top:0;padding-top:0;border-top:0}.markdownField{display:grid;gap:8px;min-width:0}.markdownFieldHeader{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px}.markdownFieldHeader .markdownToolbar{flex:1 1 300px;padding:6px}.markdownFieldHeader .markdownToolbar button{width:32px;height:30px}.markdownField textarea{width:100%;min-height:92px;resize:vertical}.markdownFieldPreview{min-height:92px;padding:10px;border:1px solid #d9e2dc;border-radius:8px;background:#fff}.markdownFieldPreview .markdownPreview,.questionStatement .markdownPreview,.optionText .markdownPreview,.flashcardMarkdown .markdownPreview,.answerExplanation .markdownPreview{margin-top:0;padding-top:0;border-top:0}.questionStatement .markdownPreview,.flashcardMarkdown .markdownPreview{color:inherit}.richEditor{display:block;min-width:0;overflow:visible}.richEditorToolbarSlot{min-width:0;margin-bottom:8px}.richEditorToolbar{display:flex;flex-wrap:wrap;align-items:center;gap:2px;padding:6px;background:#f3f8f5;border:1px solid #d9e2dc;border-radius:8px;box-shadow:0 4px 12px #17211b14}.richEditorToolbar.floating{position:fixed;z-index:75;max-height:min(132px,40vh);overflow-y:auto}.richEditorToolbar button{position:relative;display:flex;align-items:center;justify-content:center;width:32px;height:30px;background:none;border:1px solid transparent;border-radius:5px;cursor:pointer;color:#4a6358}.richEditorToolbar button:hover{background:#e4efe8;border-color:#c4d8cb}.richEditorToolbar button:disabled{cursor:not-allowed;opacity:.35}.richEditorToolbar [data-tooltip]:after,.richEditorHighlightPickerPopover [data-tooltip]:after,.richEditorFontColorPickerPopover [data-tooltip]:after,.richEditorAlignPickerPopover [data-tooltip]:after{content:attr(data-tooltip);position:absolute;top:calc(100% + 6px);left:50%;z-index:30;padding:4px 8px;border-radius:6px;background:#1c2b23;color:#f3f8f5;font-size:12px;font-weight:600;white-space:nowrap;opacity:0;pointer-events:none;transform:translate(-50%) translateY(-4px);transition:opacity .1s ease,transform .1s ease;transition-delay:.25s}.richEditorToolbar [data-tooltip]:hover:after,.richEditorToolbar [data-tooltip]:focus-visible:after,.richEditorHighlightPickerPopover [data-tooltip]:hover:after,.richEditorHighlightPickerPopover [data-tooltip]:focus-visible:after,.richEditorFontColorPickerPopover [data-tooltip]:hover:after,.richEditorFontColorPickerPopover [data-tooltip]:focus-visible:after,.richEditorAlignPickerPopover [data-tooltip]:hover:after,.richEditorAlignPickerPopover [data-tooltip]:focus-visible:after{opacity:1;transform:translate(-50%) translateY(0)}.themeDark .richEditorToolbar [data-tooltip]:after,.themeDark .richEditorHighlightPickerPopover [data-tooltip]:after,.themeDark .richEditorFontColorPickerPopover [data-tooltip]:after,.themeDark .richEditorAlignPickerPopover [data-tooltip]:after{background:#0e1712;color:#dce8e0}.richEditorHighlightPicker{position:relative;display:flex;align-items:center}.richEditorHighlightPicker .richEditorHighlightCaret{width:20px;margin-left:1px}.richEditorHighlightPickerPopover{position:absolute;top:calc(100% + 4px);left:0;z-index:80;display:flex;align-items:center;gap:6px;padding:8px;background:#fff;border:1px solid #d9e2dc;border-radius:8px;box-shadow:0 4px 12px #17211b24}.richEditorHighlightSwatch{position:relative;width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0}.richEditorHighlightSwatch:hover{border-color:#4a6358}.richEditorHighlightSwatch.isActive{border-color:#17211b}.richEditorHighlightRemove{position:relative;display:flex;align-items:center;justify-content:center;width:26px;height:26px;margin-left:2px;background:none;border:1px solid #d9e2dc;border-radius:5px;color:#4a6358;cursor:pointer}.richEditorHighlightRemove:hover{background:#e4efe8;border-color:#c4d8cb}.richEditorFontColorPicker{position:relative}.richEditorFontColorPickerPopover{position:absolute;top:calc(100% + 4px);left:0;z-index:80;display:flex;align-items:center;gap:6px;padding:8px;background:#fff;border:1px solid #d9e2dc;border-radius:8px;box-shadow:0 4px 12px #17211b24}.richEditorFontColorSwatch{position:relative;width:22px;height:22px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0}.richEditorFontColorSwatch:hover{border-color:#4a6358}.richEditorFontColorSwatch.isActive{border-color:#17211b}.richEditorFontColorRemove{position:relative;display:flex;align-items:center;justify-content:center;width:26px;height:26px;margin-left:2px;background:none;border:1px solid #d9e2dc;border-radius:5px;color:#4a6358;cursor:pointer}.richEditorFontColorRemove:hover{background:#e4efe8;border-color:#c4d8cb}.richEditorAlignPicker{position:relative}.richEditorAlignPickerPopover{position:absolute;top:calc(100% + 4px);left:0;z-index:80;display:flex;align-items:center;gap:4px;padding:6px;background:#fff;border:1px solid #d9e2dc;border-radius:8px;box-shadow:0 4px 12px #17211b24}.richEditorAlignOption{position:relative;display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:1px solid transparent;border-radius:5px;color:#4a6358;cursor:pointer}.richEditorAlignOption:hover{background:#e4efe8;border-color:#c4d8cb}.richEditorAlignOption.isActive{background:#d6ebdd;border-color:#4a6358;color:#17211b}.richEditorToolbarDivider{display:inline-block;width:1px;height:20px;background:#d0e4d8;margin:0 3px;align-self:center;flex-shrink:0}.richEditorContent{border:1px solid #d9e2dc;border-radius:8px;padding:10px 12px;background:#fff;cursor:text;overflow:visible}.richEditorContent:focus-within{border-color:#2a9d6e;outline:2px solid rgba(42,157,110,.18);outline-offset:0}.richEditorContent .tiptap{min-height:inherit;outline:none}.richEditorContent .tiptap a{cursor:pointer}.richEditorLinkPencil{position:fixed;z-index:60;display:flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:1px solid #cbd9d1;border-radius:5px;background:#fff;color:#1d7a5c;cursor:pointer;box-shadow:0 2px 6px #17211b2e}.richEditorLinkPencil:hover{background:#1d7a5c;color:#fff;border-color:#1d7a5c}.themeDark .richEditorLinkPencil{background:#17221c;border-color:#3a5145;color:#8fd5b2}.themeDark .richEditorLinkPencil:hover{background:#2a9d6e;color:#0c1710;border-color:#2a9d6e}.richEditorContent .tiptap p.is-empty:before{content:attr(data-placeholder);float:left;color:#adb5bd;pointer-events:none;height:0}.richEditorContent .tiptap>*+*{margin-top:.5em}.richEditorContent .tiptap h2{font-size:1.2em;font-weight:600}.richEditorContent .tiptap h3{font-size:1.05em;font-weight:600}.richEditorContent .tiptap ul{padding-left:1.4em;list-style:disc}.richEditorContent .tiptap ol{padding-left:1.4em;list-style:decimal}.richEditorContent .tiptap blockquote{border-left:3px solid #2a9d6e;padding-left:10px;color:#5a7a6e;margin:0}.richEditorContent .tiptap code{font-family:monospace;font-size:.88em;background:#eef3f0;padding:1px 4px;border-radius:4px}.richEditorContent .tiptap pre{background:#1b2c24;color:#d0f0e0;border-radius:6px;padding:10px 14px;overflow-x:auto}.richEditorContent .tiptap pre code{background:none;color:inherit;padding:0}.richEditorContent .tiptap img{display:block;max-width:100%;height:auto;border-radius:4px}.richEditorContent .markdownResizableImage{max-width:100%;touch-action:none}.richEditorContent .markdownResizableImageWrapper{max-width:100%}.richEditorContent .markdownImageResizeHandle{z-index:2;width:16px;height:16px;min-width:16px;min-height:16px;background:#2a9d6eb8;border:2px solid #ffffff;border-radius:999px;box-shadow:0 1px 5px #17211b47;cursor:ew-resize;opacity:0;transform:translate(50%);transition:opacity .12s ease;touch-action:none}.richEditorContent .markdownImageResizeHandle[data-resize-handle*=left]{transform:translate(-50%)}.richEditorContent .markdownResizableImage:hover .markdownImageResizeHandle,.richEditorContent .markdownResizableImage:focus-within .markdownImageResizeHandle,.richEditorContent .markdownResizableImage.ProseMirror-selectednode .markdownImageResizeHandle,.richEditorContent .markdownResizableImage.isResizing .markdownImageResizeHandle{opacity:1}.richEditorContent .tiptap table{border-collapse:collapse;width:100%;table-layout:fixed}.richEditorContent .tiptap th,.richEditorContent .tiptap td{border:1px solid #c4d8cb;padding:6px 8px;text-align:left}.richEditorContent .tiptap th{background:#f3f8f5;font-weight:600}.richEditorContent .tiptap hr{border:none;border-top:2px solid #d9e2dc;margin:.8em 0}.richEditorContent .tiptap ul[data-type=taskList]{list-style:none;padding-left:.4em}.richEditorContent .tiptap ul[data-type=taskList] li{display:flex;align-items:flex-start;gap:6px}.richEditorContent .tiptap ul[data-type=taskList] li>label{margin-top:2px;flex-shrink:0}.richEditorContent .tiptap ul[data-type=taskList] li>div{flex:1}.richEditorContent .tiptap mark{background:#fff176;color:inherit;border-radius:2px;padding:0 2px}.internalReferenceOverlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:16px;background:#09140e7a}.internalReferenceDialog{display:grid;grid-template-rows:auto auto auto minmax(180px,1fr);gap:12px;width:min(720px,100%);max-height:min(720px,calc(var(--app-viewport-height) - 32px));padding:18px;border:1px solid #d2ded7;border-radius:14px;background:#fff;box-shadow:0 18px 60px #0a1e143d}.internalReferenceHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.internalReferenceHeader h2,.internalReferenceHeader p{margin:0}.internalReferenceHeader h2{font-size:18px}.internalReferenceHeader p{margin-top:4px;color:#607268;font-size:13px}.internalReferenceHeader button{display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:7px;background:transparent;cursor:pointer}.internalReferenceSearch{display:flex;align-items:center;gap:8px;padding:0 11px;border:1px solid #cbd9d1;border-radius:9px;background:#fff}.internalReferenceSearch:focus-within{border-color:#2a9d6e;box-shadow:0 0 0 2px #2a9d6e26}.internalReferenceSearch input{width:100%;height:42px;border:0;outline:0;background:transparent}.internalReferenceFilters{display:flex;gap:6px;overflow-x:auto;padding-bottom:2px}.internalReferenceFilters button{flex:0 0 auto;padding:6px 10px;border:1px solid #ccd9d2;border-radius:999px;background:#f8fbf9;color:#40564a;cursor:pointer;font-size:12px;font-weight:700}.internalReferenceFilters button.active{border-color:#1d7a5c;background:#dff3eb;color:#155a43}.internalReferenceResults{min-height:180px;overflow-y:auto;border-top:1px solid #e4ece7}.internalReferenceResults>button{display:flex;align-items:center;justify-content:space-between;gap:16px;width:100%;padding:11px 8px;border:0;border-bottom:1px solid #edf2ef;background:transparent;color:inherit;text-align:left;cursor:pointer}.internalReferenceResults>button:hover{background:#f0f7f3}.internalReferenceResults span{display:grid;gap:3px}.internalReferenceResults small{color:#667a6e}.internalReferenceResults em{flex:0 0 auto;color:#1d7a5c;font-size:11px;font-style:normal;font-weight:800;text-transform:uppercase}.markdownPreview a.internalReferenceLink,.richEditorContent .tiptap a[href^="#/reference/"]{padding:1px 4px;border-radius:4px;background:#e4f3eb;color:#146247;font-weight:700;text-decoration:none}.themeDark .internalReferenceDialog{border-color:#364b40;background:#17221c;color:#edf5f0}.themeDark .internalReferenceHeader p,.themeDark .internalReferenceResults small{color:#9eb2a6}.themeDark .internalReferenceSearch,.themeDark .internalReferenceFilters button{border-color:#3a5145;background:#101914;color:#dce8e0}.themeDark .internalReferenceResults{border-top-color:#33473c}.themeDark .internalReferenceResults>button{border-bottom-color:#293b31}.themeDark .internalReferenceResults>button:hover{background:#203129}.themeDark .markdownPreview a.internalReferenceLink,.themeDark .richEditorContent .tiptap a[href^="#/reference/"]{background:#203d30;color:#8fd5b2}.linkEditOverlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:grid;place-items:center;padding:16px;background:#09140e7a}.linkEditDialog{display:grid;gap:12px;width:min(380px,100%);padding:18px;border:1px solid #d2ded7;border-radius:14px;background:#fff;box-shadow:0 18px 60px #0a1e143d}.linkEditHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.linkEditHeader h2{margin:0;font-size:18px}.linkEditHeader button{display:grid;place-items:center;width:32px;height:32px;border:0;border-radius:7px;background:transparent;cursor:pointer}.linkEditField{display:grid;gap:5px;color:#607268;font-size:13px;font-weight:700}.linkEditField input{height:40px;padding:0 11px;border:1px solid #cbd9d1;border-radius:9px;background:#fff;color:#1c2b23;font-size:14px;font-weight:400}.linkEditField input:focus{outline:0;border-color:#2a9d6e;box-shadow:0 0 0 2px #2a9d6e26}.linkEditActions{display:flex;align-items:center;gap:8px}.linkEditActionsSpacer{flex:1}.linkEditActions button{padding:8px 14px;border:1px solid #ccd9d2;border-radius:9px;background:#f8fbf9;color:#40564a;cursor:pointer;font-size:13px;font-weight:700}.linkEditRemove{border-color:transparent;background:transparent;color:#c0392b}.linkEditSave{border-color:#1d7a5c;background:#1d7a5c;color:#fff}.themeDark .linkEditDialog{border-color:#364b40;background:#17221c;color:#edf5f0}.themeDark .linkEditField{color:#9eb2a6}.themeDark .linkEditField input,.themeDark .linkEditActions button{border-color:#3a5145;background:#101914;color:#dce8e0}.themeDark .linkEditRemove{border-color:transparent;background:transparent;color:#e57368}.themeDark .linkEditSave{border-color:#2a9d6e;background:#2a9d6e;color:#0c1710}.toggleBlock{border-left:3px solid #c4d8cb;border-radius:4px;margin:.4em 0}.toggleBlockSummary{display:flex;align-items:center;gap:4px;padding:4px 6px}.toggleBlockChevron{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;background:none;color:#6a9a82;cursor:pointer;border-radius:3px;padding:0;flex-shrink:0;transition:transform .15s ease}.toggleBlockChevron.open{transform:rotate(90deg)}.toggleBlockChevron:hover{background:#eef3f0}.toggleBlockTitle{flex:1;border:none;background:none;font-size:.95em;font-weight:600;color:inherit;outline:none;padding:2px 0;min-width:0}.toggleBlockTitle::placeholder{color:#aaa;font-weight:400}.toggleBlockBody{padding:2px 8px 4px 28px}.toggleBlockBody.collapsed{display:none}.toggleBlockSelected{outline:2px solid #2a9d6e40;outline-offset:1px;border-radius:4px}.markdownPreview .markdownToggle{border-left:3px solid #c4d8cb;border-radius:4px;margin:.4em 0}.markdownPreview .markdownToggleSummary{padding:4px 8px;cursor:pointer;font-weight:600;font-size:.95em;list-style:none;display:flex;align-items:center;gap:4px;-webkit-user-select:none;user-select:none}.markdownPreview .markdownToggleSummary::-webkit-details-marker{display:none}.markdownPreview .markdownToggleSummary:before{content:"▶";font-size:.65em;color:#6a9a82;transition:transform .15s ease;display:inline-block}.markdownPreview .markdownToggle[open]>.markdownToggleSummary:before{transform:rotate(90deg)}.markdownPreview .markdownToggleContent{padding:2px 8px 4px 24px}.markdownPreview .markdownToggleContent>.markdownPreview{gap:6px}.optionText{display:block;min-width:0}.optionText .markdownPreview{gap:4px}.optionText .markdownPreview p,.optionText .markdownPreview li{font-size:inherit;line-height:inherit}.detailEditorRow{display:grid;grid-template-columns:86px minmax(120px,1fr) minmax(110px,1fr) auto auto}.sectionMetaEditorRow{align-items:end;gap:8px;padding:14px 0;border-bottom:1px solid #d9e2dc}.sectionMetaEditorRow label{display:grid;gap:6px;min-width:0}.sectionMetaEditorRow select{width:100%}.sectionContentMarkdownEditor{margin-top:8px;padding-top:18px;border-top:1px solid #d9e2dc}.materialEditor{display:grid;gap:16px;padding-top:20px;border-top:1px solid #d9e2dc}.materialEditorHeader h3,.materialEditorHeader p{margin:0}.materialEditorCard{display:grid;gap:14px;padding:16px;border:1px solid #d9e2dc;border-radius:8px;background:#fbfcfb;box-shadow:0 1px #17211b0a}.materialEditorCard.newItem{border-style:dashed}.materialEditorCardHeader{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:10px}.materialEditorCollapsible{padding:0}.materialEditorCollapsible>summary{align-items:center;min-height:78px;padding:16px;cursor:pointer;list-style:none}.materialEditorCollapsible>summary::-webkit-details-marker{display:none}.materialEditorCollapsible>summary>div{display:grid;gap:3px;min-width:0}.materialEditorCollapsible>summary>div>span{max-width:920px;overflow:hidden;color:#5a7066;font-size:13px;font-weight:650;line-height:1.35;text-overflow:ellipsis;white-space:nowrap}.materialEditorCollapsible>summary svg{flex:0 0 auto;color:#68756d;transition:transform .14s ease}.materialEditorCollapsible[open]>summary{border-bottom:1px solid #e5ece8}.materialEditorCollapsible[open]>summary svg{transform:rotate(180deg)}.materialEditorCardBody{display:grid;gap:14px;padding:16px}.materialEditorCardHeader h4,.materialEditorCardHeader p{margin:0}.materialEditorCardHeader h4{font-size:15px}.materialEditor textarea{min-height:76px;width:100%;padding:10px 12px;border:1px solid #d4ddd7;border-radius:8px;background:#fff;color:#17211b}.optionEditorList{display:grid;gap:10px;padding-top:12px;border-top:1px solid #e5ece8}.optionEditorRow{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:8px;align-items:center}.optionEditorRow label{display:flex;align-items:center;gap:6px;min-height:42px;padding:0 10px;border:1px solid #d4ddd7;border-radius:8px;background:#fff;color:#4d5b53;font-size:13px;font-weight:760}.optionEditorRow input[type=checkbox]{width:auto}.materialEditorActions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.emptyState{position:relative;z-index:1;margin:0;padding:18px;border:1px dashed #ccd8d0;border-radius:8px;background:#fff;color:#5d6c63}.openQuestionsSection{display:grid;gap:16px;margin-top:20px;padding-top:20px;border-top:1px solid #d9e2dc}.openQuestionsSectionHeader{display:grid;gap:4px}.openQuestionsSectionHeader h4{margin:0;font-size:14px;font-weight:600}.openQuestionsHint{margin:0;font-size:12px;color:#6b7a72}.openQuestionCard{display:grid;gap:10px;padding:14px;border:1px solid #d9e2dc;border-radius:8px;background:#f5faf7}.openAnswerTextarea{width:100%;min-height:80px;padding:8px 10px;border:1px solid #c8d9d0;border-radius:6px;font-family:inherit;font-size:14px;resize:vertical;background:#fff;box-sizing:border-box}.openAnswerTextarea:focus{outline:none;border-color:#3d7a5c}.openQuestionActions{display:flex;flex-wrap:wrap;gap:8px}.openAnswerPasteArea{display:grid;gap:8px}.openAnswerResult{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border-radius:6px;background:#eef4f0}.openAnswerFeedback{margin:0;font-size:13px;color:#3a4a40}.statusBadge.warning{color:#7a5c00;background:#fff8e1}.statusBadge.error{color:#7a1c1c;background:#fdecea}.themeDark{color:#e8f0ea;background:#101614;scrollbar-color:#1d7a5c #0f1714;scrollbar-width:thin}.themeDark .workspace,.themeDark .loginShell{background:#101614}.themeDark .sidebar{background:#0c1210;color:#f4faf6}.themeDark .navItem,.themeDark .navGroupToggle,.themeDark .sidebarToggle{color:#b9c8c0}.themeDark .navItem.active,.themeDark .navItem:hover,.themeDark .navGroupToggle:hover,.themeDark .sidebarToggle:hover{background:#1e3228;color:#fff}.themeDark .loginPanel,.themeDark .topicCard,.themeDark .roadmapPanel,.themeDark .categoryCard,.themeDark .backupSummary article,.themeDark .backupRecord,.themeDark .imageCleanupCard,.themeDark .audioEntryCard,.themeDark .topicCreateDialog,.themeDark .categoryCreateDialog,.themeDark .sectionCreateDialog,.themeDark .sessionRequiredDialog,.themeDark .aiRoadmapSectionsDialog,.themeDark .sectionDetail,.themeDark .sectionEditor,.themeDark .chatDrawer,.themeDark .topicStudyDrawer,.themeDark .chatLinkCard,.themeDark .chatLinkForm,.themeDark .creationChatLinkFields,.themeDark .materialEditorCard,.themeDark .mobileLegend,.themeDark .mobileTopicCard,.themeDark .mobileSectionItem,.themeDark .topicStudySection,.themeDark .questionCard,.themeDark .flashcardCard,.themeDark .emptyState,.themeDark .aiFormPanel,.themeDark .aiPromptPanel,.themeDark .aiJsonPanel{border-color:#314139;background:#18211d;color:#e8f0ea}.themeDark .sessionRequiredDialog p{color:#b9c8c0}.themeDark .detailHeader,.themeDark .roadmapViewport,.themeDark .roadmapList,.themeDark .roadmapTopicNode,.themeDark .roadmapNode,.themeDark .roadmapListItem,.themeDark .searchBox,.themeDark .statusBadge,.themeDark .sectionTabs,.themeDark .viewToggle,.themeDark .zoomControls,.themeDark .richEditorToolbar{background:#131b18;border-color:#314139;color:#e8f0ea}.themeDark .richEditorToolbar button{color:#b9c8c0}.themeDark .richEditorToolbarDivider{background:#2e4a38}.themeDark .richEditorToolbar button:hover{background:#1d2e27;border-color:#314139}.themeDark .richEditorHighlightPickerPopover{background:#131b18;border-color:#314139}.themeDark .richEditorHighlightSwatch.isActive{border-color:#e8f0ea}.themeDark .richEditorHighlightRemove{color:#b9c8c0;border-color:#314139}.themeDark .richEditorHighlightRemove:hover{background:#1d2e27;border-color:#314139}.themeDark .richEditorFontColorPickerPopover{background:#131b18;border-color:#314139}.themeDark .richEditorFontColorSwatch.isActive{border-color:#e8f0ea}.themeDark .richEditorFontColorRemove{color:#b9c8c0;border-color:#314139}.themeDark .richEditorFontColorRemove:hover{background:#1d2e27;border-color:#314139}.themeDark .richEditorAlignPickerPopover{background:#131b18;border-color:#314139}.themeDark .richEditorAlignOption{color:#b9c8c0}.themeDark .richEditorAlignOption:hover{background:#1d2e27;border-color:#314139}.themeDark .richEditorAlignOption.isActive{background:#1d2e27;border-color:#e8f0ea;color:#e8f0ea}.themeDark .richEditorContent{background:#131b18;border-color:#314139;color:#e8f0ea}.themeDark .richEditorContent .tiptap th{background:#1a2820}.themeDark .richEditorContent .tiptap th,.themeDark .richEditorContent .tiptap td{border-color:#314139}.themeDark .richEditorContent .tiptap mark{background:#7a6a00;color:#fffde0}.themeDark .toggleBlock{border-left-color:#2e4a38}.themeDark .toggleBlockChevron{color:#7aaa90}.themeDark .toggleBlockChevron:hover{background:#1d2e27}.themeDark .markdownPreview .markdownToggle{border-left-color:#2e4a38}.themeDark .markdownPreview .markdownToggleSummary:before{color:#7aaa90}.themeDark .richEditorContent .tiptap code{background:#1a2820;color:#a8d8b8}.themeDark .richEditorContent .tiptap blockquote{color:#8aab98}.themeDark .markdownToolbar,.themeDark .markdownEditorPreview,.themeDark .markdownFieldPreview,.themeDark .markdownTableWrap,.themeDark .answerReveal,.themeDark .imageCleanupCard img,.themeDark .mobileSectionItem.skipped,.themeDark .createTopic,.themeDark .createCategory,.themeDark .createSection,.themeDark .sectionAiPanel,.themeDark .filesTopicFilter{border-color:#314139;background:#131b18;color:#e8f0ea}.themeDark .filesTab{border-color:#314139;color:#b9c8c0}.themeDark .filesTab.active{background:#1d7a5c;border-color:#1d7a5c;color:#fff}.themeDark .filesFilterCheck{color:#9ab0a2}.themeDark .categoryPickerMenu{border-color:#314139;background:#131b18;box-shadow:0 16px 34px #00000057}.themeDark .categoryPicker input{border-color:#3a4d43;background:#0f1714;color:#edf6f0}.themeDark .categoryPicker input::placeholder{color:#aebdb5}.themeDark .categoryPickerMenu button,.themeDark .categoryPickerMenu span,.themeDark .selectedCategoryChips span{color:#c3d2ca}.themeDark .categoryPickerMenu button:hover:not(:disabled){background:#1e3228;color:#7de0b7}.themeDark .categoryPickerMenu .createCategoryOption{color:#7de0b7}.themeDark .aiRoadmapSectionsDialog .aiFormPanel,.themeDark .aiRoadmapSectionsDialog .aiPromptPanel,.themeDark .aiRoadmapSectionsDialog .aiJsonPanel{border-color:#3a4d43;background:#16211b}.themeDark .aiRoadmapSectionsDialog .categoryPicker input{border-color:#4d6659;background:#0b1410}.themeDark .aiRoadmapSectionsDialog .selectedCategoryChips span{color:#d4e4da}.themeDark .selectedCategoryChips button{border-color:#2f6d58;background:#163327;color:#7de0b7}.themeDark .tokenPickerLabel{color:#c3d2ca}.themeDark .tokenPickerBox{border-color:#3a4d43;background:#0f1714}.themeDark .tokenPickerBox:focus-within{border-color:#4d8f72}.themeDark .tokenPickerBox input{color:#edf6f0}.themeDark .tokenPickerBox input::placeholder{color:#aebdb5}.themeDark .tokenPickerChip{border-color:#2f6d58;background:#163327;color:#7de0b7}.themeDark .tokenPickerChipPlaceholder{color:#8aa093}.themeDark .topicViewChip,.themeDark .topicViewManageItem{border-color:#314139;background:#18211d;color:#e8f0ea}.themeDark .topicViewChip:hover,.themeDark .topicViewChip.active,.themeDark .topicViewManageItem.active{border-color:#2aa879;background:#173126}.themeDark .topicViewChip small,.themeDark .topicViewManageItem small{color:#9aac9f}.themeDark .mobileLegend summary,.themeDark .mobileLegendItem strong{color:#d4e4da}.themeDark .mobileLegendItem{border-color:#2a3831}.themeDark .mobileLegendItem small,.themeDark .mobileLegendProgressSample{color:#b0c8bb}.themeDark .roadmapViewport{background:linear-gradient(rgba(232,240,234,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(232,240,234,.06) 1px,transparent 1px),#101614}.themeDark input,.themeDark select{color-scheme:dark}.themeDark select,.themeDark textarea,.themeDark .loginForm input,.themeDark .createTopic input,.themeDark .topicCreateDialogForm input,.themeDark .categoryCreateDialogForm input,.themeDark .topicEditForm input,.themeDark .topicViewFormFields input,.themeDark .topicViewFormFields select,.themeDark .topicViewFormFields textarea,.themeDark .createCategory input,.themeDark .createSection input,.themeDark .sectionCreateDialogForm input,.themeDark .editCategoryForm input,.themeDark .editSectionForm input,.themeDark .sectionEditor input,.themeDark .aiFormGrid input,.themeDark .chatLinkForm input,.themeDark .chatLinkForm textarea,.themeDark .creationChatLinkFields input,.themeDark .creationChatLinkFields textarea,.themeDark .materialEditor textarea,.themeDark .markdownField textarea,.themeDark .editSectionForm textarea,.themeDark .sectionEditor textarea,.themeDark .aiReadonlyPrompt,.themeDark .aiJsonInput,.themeDark .recordingSaveForm input{border-color:#3a4d43;background:#0f1714;color:#edf6f0}.themeDark input::placeholder,.themeDark textarea::placeholder{color:#7f9188}.themeDark .fieldLabel{color:#f1f8f3}.themeDark .fieldHelp{color:#9aac9f}.themeDark .primaryButton{background:#2aa879;color:#06110d}.themeDark .secondaryButton,.themeDark .iconButton,.themeDark .topicOrderControls button,.themeDark .nodeOrderControls button,.themeDark .flashcardActions button,.themeDark .markdownToolbar button{border-color:#3a4d43;background:#15201b;color:#e8f0ea}.themeDark .dangerButton{border-color:#8b3333;background:#15201b;color:#ef9a9a}.themeDark .dangerButton:hover:not(:disabled){background:#2d1515}.themeDark .secondaryButton:hover,.themeDark .iconButton:hover,.themeDark .topicOrderControls button:hover:not(:disabled),.themeDark .nodeOrderControls button:hover:not(:disabled),.themeDark .markdownToolbar button:hover{border-color:#2aa879;background:#1e3228;color:#fff}.themeDark .questionPanel,.themeDark .flashcardPanel,.themeDark .materialEditor,.themeDark .answerExplanation{border-color:#314139}.themeDark .questionCard header>span{background:#22362c;color:#7de0b7}.themeDark .questionCard p,.themeDark .flashcardFace span,.themeDark .flashcardStats span,.themeDark .markdownUploadStatus{color:#aebdb5}.themeDark .questionOptions label,.themeDark .flashcardFace,.themeDark .flashcardActions button,.themeDark .optionEditorRow label{border-color:#3a4d43;background:#0f1714;color:#e8f0ea}.themeDark .questionOptions label.correctOption,.themeDark .flashcardFace.flipped{border-color:#2aa879;background:#153326;color:#dff8eb}.themeDark .flashcardActions button.selected,.themeDark .flashcardActions button.selected:disabled{border-color:#2aa879;background:#17442f;color:#bff4dc;opacity:1}.themeDark .multiCorrectHint{border-color:#2f6d58;background:#163327;color:#7de0b7}.themeDark .flashcardStats span{background:#223029}.themeDark .eyebrow,.themeDark .loginStatus,.themeDark .topicStats,.themeDark .nodeText small,.themeDark .sectionText p,.themeDark .detailHeader p,.themeDark .detailEmpty p,.themeDark .backupHint,.themeDark .backupRecord p:not(.eyebrow),.themeDark .imageCleanupCard p:not(.eyebrow),.themeDark .imageCleanupSelect,.themeDark .audioEntryTopic,.themeDark .cachedAudioTime,.themeDark .chatLinkCard p,.themeDark .mobileTopicCard small,.themeDark .mobileSectionItem small,.themeDark .mobileSectionMain em,.themeDark .mobileStudyHeader p:not(.eyebrow),.themeDark .studySource,.themeDark .topicStudySection small,.themeDark .topicStudySection em{color:#aebdb5}.themeDark .backupFileSize{color:#9ecfb5;background:#1e3329}.themeDark .sectionHeaderStatusRow .sectionStudyCounters{border-color:#314139;background:#15201b}.themeDark .backupFileName{color:#7ecfaa}.themeDark .backupMissingBadge{color:#fcd34d;background:#292000;border-color:#a16207}.themeDark .backupRecord.missing{background:#1a1500}.themeDark .contentIcon,.themeDark .audioIcon{color:#60a5fa}.themeDark .sectionIndicator.indicatorOff{color:#8a9a91;opacity:.32}.themeDark .sectionIndicator.indicatorOn{color:#60a5fa}.themeDark .sectionIndicator.indicatorWarning{color:#f87171}.themeDark .order,.themeDark .nodeOrderControls span,.themeDark .panelViewControls>span,.themeDark .progressTrack{background:#22362c;color:#7de0b7}.themeDark .toolsMenu{background:#1c2820;border-color:#2e3f35;box-shadow:0 6px 24px #0006}.themeDark .toolsMenuGroupLabel{color:#5a7a68}.themeDark .topicToolsGroup{border-color:#2e3f35}.themeDark .topicToolsGroup>span{color:#8fa898}.themeDark .topicToolsReviewAction em{background:#22362c;color:#7de0b7}.themeDark .sectionMetaEditorRow,.themeDark .sectionContentMarkdownEditor,.themeDark .materialEditorCollapsible[open]>summary,.themeDark .optionEditorList{border-color:#314139}.themeDark .materialEditorCollapsible>summary>div>span,.themeDark .materialEditorCollapsible>summary svg{color:#8aa898}.themeDark .progressTrack span{background:#2aa879}.themeDark .tags span,.themeDark .typeBadge,.themeDark .nodeText em,.themeDark .sectionTabs span:not(.dueBadge),.themeDark .markdownPreview code{border-color:#3a4d43;background:#223029;color:#dce8e1}.themeDark .tags .topicStatusBadge-completed{background:#173a2b;color:#8af0bd}.themeDark .tags .topicStatusBadge-paused{background:#3b2f16;color:#ffd37a}.themeDark .tags .topicStatusBadge-in_progress{background:#172c4a;color:#9ec7ff}.themeDark .sectionTabs button,.themeDark .viewToggle button{color:#c2d0c8;border-color:#314139}.themeDark .sectionTabs button.active,.themeDark .viewToggle button.active{background:#2aa879;color:#06110d}.themeDark .sectionTabs button.active span:not(.dueBadge){background:#06110d2e;color:#06110d}.themeDark .contentHighlight{background:#6b5a18;color:#fff6c7}.themeDark .contentHighlight:hover{background:#8a731d}.themeDark .contentHighlightNavigated{outline-color:#53d49f;box-shadow:0 0 0 6px #53d49f2e}.themeDark .highlightQuickMenu,.themeDark .sectionHighlightItem{border-color:#314139;background:#131b18}.themeDark .highlightRelinkBanner,.themeDark .sectionHighlightStatus{border-color:#8a731d;background:#2a240d;color:#f7e7a0}.themeDark .sectionHighlightItem.unresolved{border-color:#8a731d;background:#17170f}.themeDark .sectionHighlightItem blockquote,.themeDark .highlightCellsPreview{border-left-color:#d6a80f;color:#e8f0ea}.themeDark .highlightCellsPreview td+td{border-left-color:#314139}.themeDark .sectionHighlightNote{background:#17231d;color:#b9c8c0}.themeDark .sectionHighlightNoteEditor textarea{border-color:#3a4d43;background:#0f1714;color:#edf6f0}.themeDark .markdownPreview,.themeDark .detailContent .markdownPreview{border-color:#314139;color:#dfe9e3}.themeDark .fontSizeBtn{color:#8ab5a0}.themeDark .fontSizeBtn:hover:not(:disabled){background:#1e2e26;border-color:#314139;color:#dfe9e3}.themeDark .contentStudyFooter{border-top-color:#314139}.themeDark .contentStudyHistory li{color:#8ab5a0}.themeDark .contentChangeHistory,.themeDark .sectionInfoPanel{border-color:#314139;background:#121c18}.themeDark .sectionInfoPanel li{color:#8ab5a0}.themeDark .markdownPreview pre{background:#07100d;color:#e8f0ea}.themeDark .markdownPreview th{background:#223029;color:#edf6f0}.themeDark .markdownPreview td,.themeDark .markdownPreview th{border-color:#314139}.themeDark .markdownPreview img{border-color:#314139;background:#0f1714}.themeDark .roadmapEdges path{stroke:#5d7167}.themeDark .roadmapNode.studied,.themeDark .roadmapListItem.studied,.themeDark .mobileSectionItem.studied{border-color:#2aa879;background:#153326}.themeDark .roadmapNode.pending,.themeDark .roadmapListItem.pending,.themeDark .mobileSectionItem.pending{border-color:#c8953f;background:#352817}.themeDark .roadmapNode.skipped,.themeDark .roadmapListItem.skipped{border-color:#6d7d74;background:#202923}.themeDark .roadmapNode.inactive,.themeDark .roadmapListItem.inactive{border-color:#b85c42;background:#2e1a16}.themeDark .sectionStudyCounters{color:#a8c9b7}.themeDark .sectionStudyCounters svg{color:#2aa879}.themeDark .sectionStudyCounters .contentStudyDone svg{color:#2aa879}.themeDark .sectionStudyCounters .contentStudyPending svg{color:#d49a3a}.themeDark .topicCard.inactiveItem{border-color:#b85c42;background:#2e1a16}.themeDark .statusBadge.inactive{color:#f4a090;background:#2e1a16;border-color:#b85c42}.themeDark .l1ChildItem{border-color:#2e3f35;background:#1a2820}.themeDark .l1ChildItem.inactive{background:#2e1a16;outline-color:#7a3828}.themeDark .l1ChildText strong{color:#d4e4da}.themeDark .l1ChildText small,.themeDark .l1ChildStats span{color:#8ab5a0}.themeDark .l1ChildStats span{background:#1c2e26}.themeDark .inactiveToggle{color:#8fa898}.themeDark .correctOption{border-color:#2aa879;background:#153326}.themeDark .answerFeedback.correct,.themeDark .statusBadge.success{color:#7de0b7;background:#153326}.themeDark .answerFeedback.wrong,.themeDark .backupAlert{color:#ffd3ce;background:#3b1d1b;border-color:#8f4942}.themeDark .detailBackdrop{background:#020705b8}@media (max-width: 980px){.shell,.shell.sidebarCollapsed{grid-template-columns:1fr}.sidebar{display:flex;align-items:center;justify-content:center;flex-direction:row;gap:8px;height:auto;min-height:0;padding:10px 18px}.sidebar.collapsed{padding:10px 18px}.sidebarHeader{display:none}.sidebar nav{display:flex;flex:1 1 auto;align-items:center;flex-direction:row;justify-content:center;gap:8px;min-width:0;width:100%;overflow-x:auto;margin-top:0}.sidebarNavGroups{display:flex;flex:0 1 auto;align-items:center;gap:8px;min-width:0;overflow:visible}.navGroup{flex:0 0 auto}.navGroupToggle{display:none}.navGroupItems{display:flex}.navItem,.sidebar.collapsed .navItem{justify-content:center;width:42px;padding:0}.sidebar.collapsed .navItem[data-tooltip]:after,.sidebar.collapsed .navItem[data-tooltip]:before{display:none}.navLabel{display:none}.sidebarFooter{display:flex;flex:0 0 auto;align-items:center;gap:4px;margin-top:0;padding-top:0;padding-left:8px;border-top:0;border-left:1px solid rgba(247,250,247,.12)}.contentGrid{grid-template-columns:1fr}.topicList.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.backupSummary,.aiRoadmap{grid-template-columns:1fr}}@media (max-width: 680px){.richEditorContent .markdownImageResizeHandle{width:24px;height:24px;min-width:24px;min-height:24px;opacity:.85}.workspace{padding:calc(64px + env(safe-area-inset-top,0px)) 14px 14px}.mobileStudyShell{display:block}.mobileStudyShell .sidebar{position:fixed;z-index:60;top:0;bottom:auto;left:0;right:0;height:auto;align-items:stretch;flex-direction:row;gap:0;padding:4px;padding-top:calc(4px + env(safe-area-inset-top,0px));border-bottom:1px solid rgba(247,250,247,.14);box-shadow:0 2px 16px #00000059}.mobileStudyShell .sidebarHeader,.mobileStudyShell .sidebarToggle,.mobileStudyShell .brand,.mobileStudyShell .sidebarVersion{display:none}.mobileStudyShell nav{flex-direction:row;align-items:stretch;gap:0;min-width:0;width:100%;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;margin-top:0}.mobileStudyShell nav::-webkit-scrollbar{display:none}.mobileStudyShell .navGroupToggle{display:none}.mobileStudyShell .sidebarNavGroups{display:flex;flex:0 0 auto;align-items:stretch;width:auto;min-width:0;gap:0}.mobileStudyShell .navGroupItems{display:flex;align-items:stretch;width:auto;gap:0}.mobileStudyShell .navItem,.mobileStudyShell .sidebar.collapsed .navItem{flex-direction:column;align-items:center;justify-content:center;gap:2px;width:auto;min-width:52px;height:auto;min-height:52px;padding:4px 8px;border-radius:8px;font-size:10px}.mobileStudyShell .navLabel{display:block;font-size:10px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:58px;text-align:center}.mobileStudyShell .sidebarFooter{display:flex;flex:0 0 auto;align-items:stretch;gap:0;margin-top:0;margin-left:auto;padding-left:4px;border-left:1px solid rgba(247,250,247,.12)}.mobileStudyShell .mobileMoreWrapper{display:flex;align-items:stretch}.mobileStudyShell .sidebarFooter .navItem{flex:0 0 auto}.mobileMoreBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:65}.mobileMoreMenu{position:fixed;z-index:70;top:calc(60px + env(safe-area-inset-top,0px));right:8px;display:flex;flex-direction:column;min-width:200px;padding:6px;border-radius:12px;background:#18231d;border:1px solid rgba(247,250,247,.14);box-shadow:0 8px 28px #00000073}.mobileMoreMenu button{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border:none;border-radius:8px;background:transparent;color:#c9d5cd;font-size:15px;text-align:left;cursor:pointer}.mobileMoreMenu button:hover,.mobileMoreMenu button.active{background:#294133;color:#fff}.mobileMoreMenu button svg{flex:0 0 auto}.themeDark .mobileMoreMenu{background:#0c1210;border-color:#2d4035}.themeDark .mobileMoreMenu button{color:#b9c8c0}.themeDark .mobileMoreMenu button:hover,.themeDark .mobileMoreMenu button.active{background:#1e3228;color:#fff}.mobileStudyShell .topbar{display:none}.topbar,.controls,.topicsToolbar,.sidebar{align-items:stretch;flex-direction:column}.topicList.cards{grid-template-columns:1fr}.sidebar nav{overflow-x:auto}.primaryButton,.secondaryButton,select,.searchBox,.createCategory{width:100%}.mobileStudyActions .secondaryButton{padding-top:14px;padding-bottom:14px}.createCategory,.sectionFormRow,.sectionCreateDialogForm .sectionFormRow,.aiFormGrid,.detailHeader,.detailEditorRow,.markdownEditor{grid-template-columns:1fr}.sectionDrawer{width:100vw}.sectionTabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));width:100%;overflow:hidden}.sectionTabs button{min-width:0;padding:0 10px;font-size:12px;gap:5px;white-space:nowrap;overflow:hidden}.sectionTabs span:not(.dueBadge){min-width:16px;height:16px;font-size:9px;padding:0 3px;flex-shrink:0}.sectionTabs .dueBadge{display:none}.sectionHighlightItem{grid-template-columns:minmax(0,1fr)}.sectionHighlightActions{justify-content:flex-end}.aiValidationRow,.panelTools,.drawerHeaderActions{align-items:stretch;flex-direction:column}.aiValidationActions{align-items:stretch;flex-direction:column;width:100%}.sectionActions{grid-auto-flow:row}.sectionActions select{width:100%}.aiRoadmapSectionsBody{grid-template-columns:1fr}.mobileSectionStatusRow .secondaryButton,.ttsControls .secondaryButton,.ttsControls .compactButton{width:auto;flex-shrink:0}.sessionBanner{align-items:stretch;flex-direction:column}.sessionBannerActions{display:grid;width:100%}.sessionBannerActions .primaryButton,.sessionBannerActions .secondaryButton{min-width:0;width:100%;white-space:normal}.ttsControls{flex-wrap:wrap}.ttsPlaybackPanel,.ttsSpeedControl{width:100%}.mobileContent>.ttsControls{padding:4px 0 12px}.mobileContent .ttsControls.playbackActive{display:grid;align-items:stretch;grid-template-columns:minmax(0,1fr);gap:10px}.mobileContent .ttsPlaybackActions{width:fit-content}.mobileContent .ttsPlaybackPanel{padding:12px}.ttsSeekBar{grid-template-columns:auto minmax(0,1fr) auto;gap:8px}.mobileContent .ttsSeek{height:28px}.mobileContent .ttsSeek::-webkit-slider-thumb{margin-top:-5px}.mobileContent .ttsSkipBtn{min-width:48px;min-height:42px}.ttsSeekBar .ttsTime{grid-column:2;grid-row:2;justify-self:start}.ttsSeekBar .ttsSkipBtn:last-child{grid-column:3;grid-row:1}.ttsSpeedControl input[type=range]{flex:1;width:auto;min-width:0}.mobileContent .ttsSpeedControl{min-height:54px;padding:0 12px}.mobileContent .ttsSpeedControl input[type=range]{height:28px}.mobileContent .ttsSpeedControl button{width:36px;height:36px;font-size:18px}.mobileContent .ttsSpeedControl span{font-size:.9rem;min-width:44px}.l1ChildrenPanel,.l1ChildItem,.l1ChildButton{min-width:0;width:100%}.l1ChildText strong,.l1ChildText small{white-space:normal;overflow-wrap:anywhere}.l1ChildText small{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.l1ChildStats{display:none}}.utilityFloatingStack{position:fixed;right:28px;bottom:calc(28px + env(safe-area-inset-bottom));z-index:40;display:flex;flex-direction:column;align-items:center;gap:12px}.audioFloatingButton,.scrollTopButton,.highlightBackFloatingButton{display:grid;place-items:center;width:52px;height:52px;border-radius:999px;background:#f0f6f2;border:1.5px solid #c5d9cc;color:#1d7a5c;box-shadow:0 2px 10px #0000001f;cursor:pointer;transition:background .15s,transform .15s}.audioFloatingButton:hover,.scrollTopButton:hover,.highlightBackFloatingButton:hover{background:#dff0e8;transform:scale(1.07)}.notesFloatingButton{position:relative;display:grid;place-items:center;width:52px;height:52px;border-radius:999px;background:#1d7a5c;color:#fff;box-shadow:0 4px 16px #0000002e;cursor:pointer;transition:background .15s,transform .15s}.notesFloatingButton:hover{background:#176347;transform:scale(1.07)}.notesBadge{position:absolute;top:4px;right:4px;width:10px;height:10px;border-radius:50%;border:2px solid #1d7a5c;pointer-events:none}.notesFloatingButton:hover .notesBadge{border-color:#176347}.notesBadgeRed{background:#e53e3e}.notesBadgeGreen{background:#68a98a}.notesModalOverlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;background:#00000073;padding:16px}.notesModalContent{display:flex;flex-direction:column;width:100%;max-width:720px;max-height:calc(var(--app-viewport-height) - 32px - env(safe-area-inset-bottom));border-radius:12px;background:#fff;box-shadow:0 8px 40px #00000038;overflow:hidden}.topicHighlightsModalContent{max-width:760px}.topicHistoryModalContent{max-width:900px}.notesModalHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:20px 20px 16px;border-bottom:1px solid #e4ece7}.notesModalHeader h2{margin:0;font-size:17px;line-height:1.3}.notesModalBody{display:flex;flex:1;flex-direction:column;gap:16px;padding:16px 20px;overflow-y:auto}.topicHistoryTabs{display:flex;gap:8px;padding:12px 20px 0;border-bottom:1px solid #e4ece7}.topicHistoryTabs button{min-height:34px;padding:0 12px;border:1px solid transparent;border-bottom:0;border-radius:8px 8px 0 0;background:transparent;color:#4d5b53;cursor:pointer;font-weight:800}.topicHistoryTabs button.active{border-color:#d9e2dc;background:#f7faf8;color:#1d7a5c}.topicHistoryBody{gap:18px}.topicHistorySummary{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:8px}.topicHistorySummary span{padding:10px 12px;border:1px solid #e4ece7;border-radius:8px;background:#f7faf8;color:#4d5b53;font-size:13px}.topicHistorySummary strong{color:#17211b}.topicHistoryTimeline{display:grid;gap:8px}.topicHistoryEvent{display:grid;grid-template-columns:150px minmax(0,1fr);gap:12px;padding:10px 12px;border:1px solid #e4ece7;border-radius:8px;background:#fff}.topicHistoryEvent time{color:#5d6c63;font-size:12px;font-weight:800}.topicHistoryEvent p{margin:0;color:#24362c;font-size:14px;line-height:1.4}.topicHistorySections{display:grid;gap:14px}.topicHistorySectionGroup{display:grid;gap:8px}.topicHistorySectionGroup h3{margin:0;color:#17211b;font-size:14px}.sectionLegendModalContent{max-width:640px}.topicLegendModalContent{max-width:680px}.sectionLegendBody{gap:18px}.sectionLegendBody>p{margin:0;color:#52645a;font-size:14px;line-height:1.55}.sectionLegendGroup{display:grid;gap:10px}.sectionLegendGroup h3{margin:0;color:#26372d;font-size:13px;line-height:1.3}.sectionLegendList{display:grid;gap:8px}.sectionLegendItem{display:grid;grid-template-columns:46px minmax(0,1fr);gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid #e4ece7;border-radius:8px;background:#f8fbf9}.sectionLegendIconSet{display:flex;align-items:center;gap:6px;min-height:22px}.sectionLegendIconSet .order{width:30px;height:30px;font-size:12px}.sectionLegendIconSet .topicStatusBadge{display:inline-flex;align-items:center;min-height:24px;padding:3px 8px;border-radius:999px;font-size:11px;font-weight:800;white-space:nowrap}.sectionLegendIconSet .topicStatusBadge-in_progress{background:#e5efff;color:#235aa7}.topicLegendModalContent .sectionLegendItem{grid-template-columns:64px minmax(0,1fr)}.topicLegendProgressSample{width:58px}.topicLegendProgressSample .progressTrack{display:block;width:58px}.topicLegendStatsSample svg,.topicLegendActionsSample svg{color:#1d7a5c}.sectionLegendItem strong{display:block;color:#24362c;font-size:13px;line-height:1.3}.sectionLegendItem p{margin:3px 0 0;color:#5d6c63;font-size:12px;line-height:1.45}.sectionLegendSuccessIcon,.sectionLegendMetricIcon{color:#1d7a5c}.sectionLegendPendingIcon{color:#b9822f}.notesTextarea{width:100%;min-height:280px;padding:10px 12px;border:1px solid #cad7d0;border-radius:8px;background:#f8fbf9;color:inherit;font-family:inherit;font-size:14px;line-height:1.55;resize:vertical;box-sizing:border-box}.notesTextarea:focus{outline:none;border-color:#1d7a5c}.sectionNotesList{display:flex;flex-direction:column;gap:4px}.listHeaderRow{display:flex;align-items:center;justify-content:space-between;gap:12px}.sectionNotesList>.eyebrow{margin-bottom:4px}.listSortControl{display:inline-flex;align-items:center;gap:6px;margin-left:auto;color:#5a7065;font-size:12px;font-weight:600}.listSortControl select{min-height:32px;max-width:170px;padding:5px 28px 5px 8px;border:1px solid #d8e3dd;border-radius:8px;background:#fff;color:#17211b;font:inherit}.sectionNotesItem{border:1px solid #e4ece7;border-radius:8px;overflow:hidden}.sectionNotesToggle{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;padding:10px 12px;background:#f4f9f6;color:inherit;font-size:13px;font-weight:600;text-align:left;cursor:pointer}.sectionNotesToggle:hover{background:#eaf3ee}.sectionNotesToggle svg{flex-shrink:0;transition:transform .18s}.sectionNotesToggle svg.rotated{transform:rotate(180deg)}.sectionNotesToggleLabel{display:flex;align-items:center;gap:6px;min-width:0}.sectionNotesItem.openQuestion{border-color:#f5b8b8}.sectionNotesItem.openQuestion .sectionNotesToggle{background:#fff5f5}.sectionNotesItem.openQuestion .sectionNotesToggle:hover{background:#ffe8e8}.topicNoteViewItem{display:flex;flex-direction:column;gap:6px;padding:10px 12px;border:1px solid #e4ece7;border-radius:8px;background:#f4f9f6}.topicNoteViewItem.openQuestion{border-color:#f5b8b8;background:#fff5f5}.openQuestionToggle,.reviewableToggle{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:500;cursor:pointer;-webkit-user-select:none;user-select:none;color:#3a4a40}.openQuestionToggle input[type=checkbox],.reviewableToggle input[type=checkbox]{width:15px;height:15px;cursor:pointer;accent-color:#2d7a4f}.openQuestionIconActive{color:#c53030;flex-shrink:0}.openQuestionIconInactive{color:#9aaba3;flex-shrink:0}.sectionNotesContent{margin:0;padding:10px 12px;border-top:1px solid #e4ece7;color:#3a4a40;font-size:13px;line-height:1.55;white-space:pre-wrap}.topicHighlightsList{display:grid;gap:10px}.topicHighlightGroup{display:grid;gap:8px;border:1px solid #e4ece7;border-radius:8px;overflow:hidden}.topicHighlightGroup .sectionNotesToggle{border:0}.topicHighlightCount{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#edf2ef;color:#4d5b53;font-size:12px;font-weight:800}.topicHighlightItems{padding:0 10px 10px}.topicHighlightItems .sectionHighlightItem{background:#fdfefd}.notesModalFooter{display:flex;gap:10px;padding:14px 20px;border-top:1px solid #e4ece7}.themeDark .notesModalContent{background:#1c2820;box-shadow:0 8px 40px #00000080}.themeDark .notesModalHeader,.themeDark .notesModalFooter,.themeDark .topicHistoryTabs{border-color:#2e3f35}.themeDark .topicHistoryTabs button{color:#aebdb5}.themeDark .topicHistoryTabs button.active,.themeDark .topicHistorySummary span,.themeDark .topicHistoryEvent{border-color:#314139;background:#131b18}.themeDark .topicHistoryTabs button.active{color:#7de0b7}.themeDark .topicHistorySummary span,.themeDark .topicHistoryEvent time{color:#aebdb5}.themeDark .topicHistorySummary strong,.themeDark .topicHistoryEvent p,.themeDark .topicHistorySectionGroup h3{color:#e8f0ea}.themeDark .notesTextarea{border-color:#2e3f35;background:#141e18;color:#d4e4da}.themeDark .notesTextarea:focus{border-color:#3daa7e}.themeDark .sectionLegendBody>p,.themeDark .sectionLegendItem p{color:#b0c8bb}.themeDark .sectionLegendGroup h3,.themeDark .sectionLegendItem strong{color:#d4e4da}.themeDark .sectionLegendItem{border-color:#2e3f35;background:#17231c}.themeDark .sectionLegendIconSet .topicStatusBadge-in_progress{background:#172c4a;color:#9ec7ff}.themeDark .sectionLegendSuccessIcon,.themeDark .sectionLegendMetricIcon{color:#5dbf96}.themeDark .sectionLegendPendingIcon{color:#fbbf24}.themeDark .topicLegendStatsSample svg,.themeDark .topicLegendActionsSample svg{color:#5dbf96}.themeDark .sectionNotesItem,.themeDark .topicHighlightGroup{border-color:#2e3f35}.themeDark .topicHighlightCount{background:#223029;color:#dce8e1}.themeDark .topicHighlightItems .sectionHighlightItem{background:#17231c}.themeDark .sectionNotesToggle{background:#1e2e25}.themeDark .sectionNotesToggle:hover{background:#243328}.themeDark .sectionNotesContent{border-color:#2e3f35;color:#b0c8bb}.themeDark .sectionNotesItem.openQuestion{border-color:#6b3535}.themeDark .sectionNotesItem.openQuestion .sectionNotesToggle{background:#2a1e1e}.themeDark .sectionNotesItem.openQuestion .sectionNotesToggle:hover{background:#322}.themeDark .topicNoteViewItem{border-color:#2e3f35;background:#1e2e25}.themeDark .topicNoteViewItem.openQuestion{border-color:#6b3535;background:#2a1e1e}.themeDark .openQuestionToggle,.themeDark .reviewableToggle{color:#b0c8bb}.themeDark .notesBadge{border-color:#1d7a5c}.themeDark .notesFloatingButton:hover .notesBadge{border-color:#176347}.themeDark .sessionBanner{border-color:#2e3f35;background:#1c2820}.themeDark .sessionBanner p{color:#b0c8bb}.themeDark .studyBestSessionText{border-color:#314139;background:#15201b;color:#d4e4da}.themeDark .sessionCard{border-color:#2e3f35}.themeDark .sessionCardHeader{background:#1c2820;color:#d4e4da}.themeDark .sessionCardHeader:hover{background:#243328}.themeDark .sessionCardDate{color:#d4e4da}.themeDark .sessionCardMeta{color:#7da894}.themeDark .sessionCardResults{background:#141e18;border-color:#2e3f35}.themeDark .sessionResultText{color:#d4e4da}.themeDark .sessionGroupHeader{background:#1c2820;border-color:#2e3f35;color:#d4e4da}.themeDark .sessionGroupHeader:hover{background:#243328}.themeDark .sessionGroupHeader strong{color:#d4e4da}.themeDark .sessionResultAnswer{color:#3daa7e}.themeDark .contentHistoryDate{color:#8ab5a0;background:#1c2820;border-color:#2e3f35}.themeDark .sessionsModalContent{background:#1c2820;box-shadow:0 20px 60px #00000080}.themeDark .sessionsModalTabs{border-color:#2e3f35}.themeDark .sessionsModalTabs button{color:#7da894}.themeDark .sessionsModalTabs button.active{color:#d4e4da;border-bottom-color:#3daa7e}.sessionBanner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;margin-bottom:16px;border:1px solid #cad7d0;border-radius:10px;background:#f7faf8}.sessionBanner p{margin:0;font-size:13px;color:#3a4f43}.studyBestSessionText{margin:0 0 12px;padding:10px 12px;border:1px solid #cfe0d6;border-radius:8px;background:#f4faf6;color:#2f4739;font-size:13px;font-weight:720}.sessionProgress{margin:0 0 12px;font-size:13px;font-weight:760;color:#1d7a5c}.sessionPanel{display:flex;flex-direction:column;gap:10px;padding-bottom:16px}.sessionPanel>div:first-child{margin-bottom:4px}.sessionCard{border:1px solid #e0e8e3;border-radius:10px;overflow:hidden}.sessionCardHeader{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border:none;background:#f7faf8;cursor:pointer;text-align:left}.sessionCardHeader:hover{background:#f0f4f2}.sessionCardDate{font-size:13px;font-weight:760;color:#17211b;white-space:nowrap}.sessionCardMeta{flex:1;font-size:12px;color:#5a7065}.sessionCardHeader .rotated{transform:rotate(180deg)}.sessionCardResults{display:flex;flex-direction:column;gap:4px;padding:10px 14px;border-top:1px solid #e0e8e3;background:#fff}.sessionResultItem{display:flex;align-items:flex-start;gap:8px;font-size:13px;line-height:1.4}.sessionResultStatus{font-size:12px;font-weight:760;white-space:nowrap;padding-top:1px;min-width:16px}.sessionResultItem.correct .sessionResultStatus{color:#1d7a5c}.sessionResultItem.wrong .sessionResultStatus{color:#b94c4c}.sessionResultBody{flex:1;display:flex;flex-direction:column;gap:3px;min-width:0}.sessionResultText{color:#17211b;line-height:1.4}.sessionResultAnswer{padding-left:12px;color:#1d7a5c;font-size:12px;font-weight:600;line-height:1.4}.sessionGroup{margin-bottom:4px}.sessionGroupHeader{display:flex;align-items:center;gap:10px;width:100%;padding:10px 14px;border:1px solid #e0e8e3;border-radius:10px;background:#f0f4f2;cursor:pointer;text-align:left;font-size:13px}.sessionGroupHeader strong{flex:1;color:#17211b}.sessionGroupHeader span{color:#5a7065;font-size:12px}.sessionGroupHeader .rotated{transform:rotate(180deg)}.sessionGroupHeader:hover{background:#e8ede9}.sessionsModalContent{position:relative;display:flex;flex-direction:column;width:700px;max-width:95vw;max-height:calc(var(--app-viewport-height) - 48px - env(safe-area-inset-bottom));border-radius:16px;background:#fff;overflow:hidden;box-shadow:0 20px 60px #0000002e}.sessionsModalTabs{display:flex;padding:0 24px;border-bottom:1px solid #e0e8e3;gap:0}.sectionSessionTabs{padding:0;overflow-x:auto}.sectionSessionTabs button:first-child{padding-left:0}.sectionContentHistoryList{padding-left:0;padding-right:0}.sessionsModalTabs button{padding:10px 16px;border:none;border-bottom:2px solid transparent;background:transparent;font-size:13px;font-weight:600;color:#5a7065;cursor:pointer;margin-bottom:-1px}.sessionsModalTabs button.active{color:#17211b;border-bottom-color:#1d7a5c}.sessionsModalBody{flex:1;overflow-y:auto;padding:16px 24px 24px;display:flex;flex-direction:column;gap:8px}.sessionGroup .sessionCard{margin-top:6px;margin-left:12px}.contentHistoryList{display:flex;flex-wrap:wrap;gap:6px;padding:8px 12px}.contentHistoryDate{font-size:13px;color:#556b63;background:#f0f4f2;border:1px solid #e0e8e3;border-radius:6px;padding:3px 8px}.selfContextList{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(360px,100%),1fr));gap:12px;width:100%;margin-top:14px}.selfContextToolbar{margin-top:22px}.selfContextItem{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;gap:16px;min-height:180px;padding:16px;border:1px solid #d9e2dc;border-radius:8px;background:#fff}.selfContextItemBody{flex:1;min-width:0;display:grid;gap:6px}.selfContextItemBody h3{margin:0;font-size:15px;font-weight:600}.selfContextItemBody p{margin:0;font-size:13px;line-height:1.5;color:#5a7066;white-space:pre-wrap;word-break:break-word}.selfContextItemActions{display:flex;gap:4px;flex-shrink:0}.selfContextEmpty{grid-column:1 / -1;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;min-height:138px;padding:24px;border:1px dashed #b9c8c0;border-radius:8px;background:#fbfcfb}.selfContextEmpty>span{display:grid;place-items:center;width:50px;height:50px;border-radius:8px;background:#e7f1ec;color:#1d7a5c}.selfContextEmpty h2{font-size:18px}.selfContextEmpty .eyebrow{margin-bottom:4px}.selfContextForm{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:14px;min-height:0}.selfContextDialog{width:clamp(560px,60vw,960px);max-width:calc(100vw - 32px);min-height:min(640px,calc(var(--app-viewport-height) - 48px - env(safe-area-inset-bottom)));grid-template-rows:auto minmax(0,1fr)}.selfContextForm label{display:grid;gap:7px;min-width:0}.selfContextForm input,.selfContextForm textarea{width:100%;border:1px solid #d4ddd7;border-radius:8px;background:#fff;color:#17211b;line-height:1.45}.selfContextForm input{height:42px;padding:0 12px}.selfContextForm textarea{min-height:320px;height:100%;padding:12px;resize:vertical}.aiContextPicker{display:grid;gap:8px}.aiContextToggle{display:inline-flex;align-items:center;gap:8px;color:#17211b;font-size:13px;font-weight:850}.aiContextToggle input{width:16px;height:16px;accent-color:#2faa7d}.aiContextSelectField{display:grid;gap:7px}.aiContextSelect{width:min(360px,100%);height:42px;padding:0 36px 0 12px;border:1px solid #d4ddd7;border-radius:8px;background:#fff;color:#17211b}.aiContextChoices{display:flex;flex-wrap:wrap;gap:8px}.aiContextChoices label{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:0 10px;border:1px solid #d4ddd7;border-radius:999px;font-size:13px;cursor:pointer;-webkit-user-select:none;user-select:none;background:#f5f9f6}.aiContextChoices label:has(input:checked){border-color:#3d7a5e;background:#e8f3ed;color:#1e4d38;font-weight:500}.themeDark .selfContextItem{border-color:#314139;background:#18211d;color:#e8f0ea}.themeDark .selfContextEmpty{border-color:#314139;background:#18211d}.themeDark .selfContextEmpty>span{background:#22362c;color:#7de0b7}.themeDark .selfContextItemBody p{color:#8aa898}.themeDark .selfContextForm input,.themeDark .selfContextForm textarea{border-color:#314139;background:#101b15;color:#e8f0ea}.themeDark .aiContextToggle{color:#d7e8df}.themeDark .aiContextSelect{border-color:#314139;background:#101b15;color:#e8f0ea}.themeDark .aiContextChoices label{border-color:#314139;background:#1e2b24;color:#c8d8cc}.themeDark .aiContextChoices label:has(input:checked){border-color:#5aaa80;background:#1e3828;color:#a8dfc0}@media (max-width: 680px){.selfContextEmpty{grid-template-columns:1fr;justify-items:start}.utilityFloatingStack{right:16px;bottom:calc(20px + env(safe-area-inset-bottom));gap:12px}.audioFloatingButton,.scrollTopButton,.highlightBackFloatingButton,.notesFloatingButton{width:46px;height:46px}input,select,textarea{font-size:16px!important}.notesModalContent{max-height:calc(var(--app-viewport-height) - 24px - env(safe-area-inset-bottom))}}.dueBadge{display:inline-grid;place-items:center;min-width:18px;height:18px;margin-left:4px;padding:0 5px;border-radius:999px;background:#e8733a;color:#fff;font-size:11px;font-weight:700;vertical-align:middle}.themeDark .dueBadge{background:#c4622e}.sessionBannerActions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.reviewDashboard{padding:24px}.reviewActivityOverview{margin-bottom:32px;padding-bottom:4px;border-bottom:1px solid #e5ede9}.reviewActivityOverviewHeader{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:22px;padding:16px 18px;border:1px solid #cad7d0;border-radius:12px;background:#f7faf8}.reviewActivityOverviewHeader h2{margin:0 0 4px;color:#1a2e22;font-size:18px}.reviewActivityOverviewHeader p{margin:0;color:#6b8070;font-size:12px}.reviewActivityPeriod{display:grid;gap:6px;flex-shrink:0}.reviewActivityPeriod>span{color:#4a6050;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em}.themeDark .reviewActivityOverview{border-bottom-color:#314139}.themeDark .reviewActivityOverviewHeader{border-color:#314139;background:#1e2b24}.themeDark .reviewActivityOverviewHeader h2{color:#c8d8cc}.themeDark .reviewActivityOverviewHeader p,.themeDark .reviewActivityPeriod>span{color:#7a9e88}.reviewHeatmapRow{display:grid;grid-template-columns:4fr 1fr;gap:24px;align-items:start;margin-bottom:28px}.reviewHeatmapRow .studyHeatmap,.reviewHeatmapRow .scheduleHeatmap{margin-bottom:0}.readingHeatmap{margin-bottom:28px}.readingHeatmap h3{margin:0;color:#73593f;font-size:14px}.themeDark .readingHeatmap h3{color:#c8a878}.reviewTabsSection{margin-top:4px}.reviewTabList{display:flex;gap:2px;border-bottom:2px solid #e5ede9;margin-bottom:20px}.reviewTabBtn{display:flex;align-items:center;gap:6px;padding:8px 18px;border:none;border-bottom:2px solid transparent;margin-bottom:-2px;background:none;font-size:.875rem;font-weight:600;color:#6b8070;cursor:pointer;border-radius:4px 4px 0 0;transition:color .15s,border-color .15s}.reviewTabBadge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#d9543a;color:#fff;font-size:10px;font-weight:700;line-height:1}.reviewTabBtn:hover{color:#374151;background:#f7faf8}.reviewTabBtn.active{color:#3d8f64;border-bottom-color:#3d8f64}.reviewTabPanel{min-height:120px}.themeDark .reviewTabList{border-bottom-color:#314139}.themeDark .reviewTabBtn{color:#7a9e88}.themeDark .reviewTabBtn:hover{color:#c8d8cc;background:#1e2b24}.themeDark .reviewTabBtn.active{color:#5aaa80;border-bottom-color:#5aaa80}@media (max-width: 720px){.reviewActivityOverviewHeader{align-items:stretch;flex-direction:column}.reviewActivityPeriod{overflow-x:auto}.reviewActivityPeriod .heatmapPeriodSelector{width:max-content}.reviewHeatmapRow{grid-template-columns:1fr}.reviewTabBtn{padding:8px 10px;font-size:12px;gap:4px;flex:1;justify-content:center}}.reviewDashboardList{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:12px}.reviewTopicCard{padding:16px 20px;border:1px solid #cad7d0;border-radius:12px;background:#f7faf8;cursor:pointer;transition:border-color .15s,background .15s;outline:none}.reviewTopicCard:hover,.reviewTopicCard:focus{border-color:#4a8c6a;background:#eef6f1}.reviewTopicCard.hasDue{border-color:#e8733a;background:#fdf5f0}.reviewTopicCard.hasDue:hover,.reviewTopicCard.hasDue:focus{border-color:#c4622e;background:#faeae0}.reviewTopicHeader{display:flex;align-items:baseline;gap:12px;margin-bottom:8px}.reviewTopicHeader h3{margin:0;font-size:15px;font-weight:650}.reviewTopicContext{display:block;margin-top:2px;color:#7b8f81;font-size:11px}.reviewDaysAgo{font-size:12px;color:#6b8070;white-space:nowrap}.reviewTopicStats{display:flex;gap:16px;flex-wrap:wrap}.reviewTopicActions{margin-top:12px}.hardestItemsToggle{min-height:34px;padding:0 12px;font-size:12px}.hardestItemsPanel{margin-top:12px;padding-top:12px;border-top:1px solid #d9e3dd}.hardestItemsMessage{margin:0;color:#6b8070;font-size:13px;line-height:1.4}.hardestItemsList{display:grid;gap:8px;margin:0;padding:0;list-style:none}.hardestItemRow{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;padding:9px 10px;border:1px solid #d9e3dd;border-radius:8px;background:#ffffff9e}.hardestItemMain{min-width:0;display:grid;gap:3px}.hardestItemText{overflow:hidden;color:#26342c;font-size:13px;font-weight:650;text-overflow:ellipsis;white-space:nowrap}.hardestItemMeta{overflow:hidden;color:#6b8070;font-size:12px;text-overflow:ellipsis;white-space:nowrap}.hardestItemBadge{display:inline-flex;align-items:center;justify-content:center;min-width:78px;min-height:26px;padding:0 8px;border-radius:999px;background:#f7dfd3;color:#a84f24;font-size:12px;font-weight:760;white-space:nowrap}.reviewStat{font-size:13px;color:#6b8070}.reviewStatDue{font-size:13px;color:#c4622e;font-weight:600}.themeDark .reviewTopicCard{border-color:#314139;background:#1e2b24}.themeDark .reviewTopicCard:hover,.themeDark .reviewTopicCard:focus{border-color:#5aaa80;background:#1e3828}.themeDark .reviewTopicCard.hasDue{border-color:#c4622e;background:#2b1c14}.themeDark .reviewTopicCard.hasDue:hover,.themeDark .reviewTopicCard.hasDue:focus{border-color:#e8733a;background:#3a2215}.themeDark .reviewTopicHeader h3{color:#c8d8cc}.themeDark .reviewDaysAgo{color:#7a9e88}.themeDark .hardestItemsPanel{border-top-color:#314139}.themeDark .hardestItemsMessage,.themeDark .hardestItemMeta{color:#7a9e88}.themeDark .hardestItemRow{border-color:#314139;background:#0d14106b}.themeDark .hardestItemText{color:#c8d8cc}.themeDark .hardestItemBadge{background:#4d2718;color:#f0a272}.themeDark .reviewStat{color:#7a9e88}.themeDark .reviewStatDue{color:#e8733a}.reviewModeModal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:200;background:#fff;border:1px solid #cad7d0;border-radius:16px;padding:28px 32px;min-width:280px;max-width:360px;max-height:calc(var(--app-viewport-height, 100vh) - 48px);overflow-y:auto;box-shadow:0 8px 32px #0000001f}.reviewModeModal h3{margin:0 0 6px;font-size:16px;font-weight:700}.reviewModeModal p{margin:0 0 20px;font-size:14px;color:#6b8070}.reviewModeModalActions{display:flex;flex-direction:column;gap:10px}.reviewModalBtn{justify-content:flex-start;gap:10px}.reviewModalBtnContent{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.reviewModalBtnPreview{font-size:11px;font-weight:400;opacity:.75;letter-spacing:.02em}.reviewModalBtn.selected{background:#1d7a5c;border-color:#1d7a5c;color:#fff}.reviewModalBtn.selected .reviewModalBtnPreview{color:#fff;opacity:.85}.reviewModalConfirmBtn{width:100%;margin-top:12px}.reviewModeModal .ghostButton{width:100%;min-height:38px;margin-top:2px;border:1px solid rgba(74,106,88,.28);border-radius:8px;background:transparent;color:#4a6a58;font-weight:600;transition:background .16s ease,border-color .16s ease,color .16s ease}.reviewModeModal .ghostButton:hover:not(:disabled),.reviewModeModal .ghostButton:focus-visible{background:#eef6f1;border-color:#86b99a;color:#1f5f3d}.reviewModeModal .ghostButton:disabled{cursor:not-allowed;opacity:.6}.manualReviewTodayWarning{font-size:12px;color:#7a5c00;background:#fef9e7;border:1px solid #f0d060;border-radius:8px;padding:8px 12px;margin:-8px 0 16px}.themeDark .manualReviewTodayWarning{color:#c8a840;background:#2a2310;border-color:#7a6020}.manualReviewDurationRow{display:flex;align-items:center;gap:10px;margin-bottom:16px}.manualReviewDurationLabel{font-size:13px;color:#4a6a58;white-space:nowrap}.manualReviewDurationInput{width:72px;padding:6px 10px;border:1px solid #c0d4c8;border-radius:8px;font-size:14px;background:#fff;color:#1a2e22;outline:none}.manualReviewDurationInput:focus{border-color:#2d7a4f}.themeDark .manualReviewDurationLabel{color:#7a9e88}.themeDark .manualReviewDurationInput{background:#151f19;border-color:#2a3d30;color:#c8d8cc}.themeDark .manualReviewDurationInput:focus{border-color:#4a9a6a}.themeDark .reviewModeModal{background:#1e2b24;border-color:#314139}.themeDark .reviewModeModal h3{color:#c8d8cc}.themeDark .reviewModeModal p{color:#7a9e88}.themeDark .reviewModeModal .ghostButton{border-color:#355244;color:#a8c7b2}.themeDark .reviewModeModal .ghostButton:hover:not(:disabled),.themeDark .reviewModeModal .ghostButton:focus-visible{background:#16251d;border-color:#4a9a6a;color:#d8eadf}.themeDark .reviewModalBtn.selected{background:#2d7a4f;border-color:#2d7a4f;color:#fff}.manualReviewSection{display:flex;flex-direction:column;gap:24px}.manualReviewGroup{display:flex;flex-direction:column;gap:0}.manualReviewGroupHeading{display:flex;align-items:center;gap:8px;font-size:11px;font-weight:700;color:#6b8070;text-transform:uppercase;letter-spacing:.06em;margin:0 0 10px}.manualReviewGroupCount{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:#dce8e0;color:#3d6b52;font-size:10px;font-weight:700}.manualReviewBadge--progress{background:#f0f4ff;color:#3a5abf}.themeDark .manualReviewBadge--progress{background:#1a2040;color:#8aa8f0}.themeDark .manualReviewGroupHeading{color:#5a8068}.themeDark .manualReviewGroupCount{background:#263d30;color:#7abf98}.manualReviewHeading{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:#2d7a4f;margin:0 0 12px;text-transform:uppercase;letter-spacing:.04em}.manualReviewList{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:8px}.manualReviewCard{display:flex;flex-direction:column;gap:8px;padding:10px 14px;border:1px solid #dce8e0;border-radius:10px;background:#f7fbf8}.manualReviewCard.manualReviewCard--due{border-color:#d95050;background:#fff5f5}.themeDark .manualReviewCard.manualReviewCard--due{border-color:#a03030;background:#2a1818}.manualReviewCardBody{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;background:none;border:none;padding:0;text-align:left;cursor:default}.manualReviewCardBodyClickable{cursor:pointer;border-radius:6px;padding:4px 6px;margin:-4px -6px;transition:background .15s}.manualReviewCardBodyClickable:hover{background:#0000000d}.manualReviewSectionTitle{font-size:14px;font-weight:600;color:#1a2e22}.manualReviewTopicName{font-size:12px;color:#6b8070;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.manualReviewCardMeta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.manualReviewBadge{font-size:11px;font-weight:600;padding:2px 8px;border-radius:999px}.manualReviewBadge--learning{background:#e8f4ea;color:#2d7a4f}.manualReviewBadge--maintenance{background:#e5f0fb;color:#1e6dbf}.manualReviewBadge--suspended{background:#f0ede8;color:#7a5c30}.manualReviewBadge--notebook{background:#ede8f5;color:#5c30a8}.manualReviewBadge--mindmap{background:#e8f0fb;color:#1a5ca8}.manualReviewBadge--glossary{background:#fdf4e3;color:#8a5a00}.manualReviewDate{display:flex;align-items:center;gap:4px;font-size:12px;color:#6b8070}.manualReviewBtn{align-self:flex-end;display:flex;align-items:center;gap:5px;font-size:13px;padding:6px 12px}.themeDark .manualReviewSection{border-color:#2a3d30}.themeDark .manualReviewHeading{color:#6fce9a}.themeDark .manualReviewCard{background:#1c2b22;border-color:#2a3d30}.themeDark .manualReviewCardBodyClickable:hover{background:#ffffff0f}.themeDark .manualReviewSectionTitle{color:#c8d8cc}.themeDark .manualReviewTopicName,.themeDark .manualReviewDate{color:#7a9e88}.themeDark .manualReviewBadge--learning{background:#1e3d2b;color:#6fce9a}.themeDark .manualReviewBadge--maintenance{background:#1a2f4a;color:#6aadee}.themeDark .manualReviewBadge--suspended{background:#2e2619;color:#c4a96a}.themeDark .manualReviewBadge--notebook{background:#2b1d4a;color:#b08fef}.themeDark .manualReviewBadge--mindmap{background:#1a2e4a;color:#6fa8ef}.themeDark .manualReviewBadge--glossary{background:#3a2e10;color:#e0b060}.manualReviewBadge--cheatsheet{background:#e3f5f0;color:#116650}.themeDark .manualReviewBadge--cheatsheet{background:#0e3028;color:#5ec9a8}.sessionScore{color:#2f8f5b;font-weight:600}.themeDark .sessionScore{color:#6fce9a}.sessionResultModal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:200;background:#fff;border:1px solid #cad7d0;border-radius:16px;padding:28px 32px;min-width:280px;max-width:360px;text-align:center;box-shadow:0 8px 32px #0000001f}.sessionResultEmoji{font-size:44px;line-height:1;margin-bottom:8px}.sessionResultModal h3{margin:0 0 6px;font-size:18px;font-weight:700}.sessionResultScore{margin:4px 0 2px;font-size:30px;font-weight:700;color:#2f8f5b}.sessionResultDetail{margin:0 0 20px;font-size:14px;color:#6b8070}.sessionResultActions{display:flex;gap:10px;justify-content:center}.themeDark .sessionResultModal{background:#1e2b24;border-color:#314139}.themeDark .sessionResultModal h3{color:#c8d8cc}.themeDark .sessionResultScore{color:#6fce9a}.themeDark .sessionResultDetail{color:#7a9e88}.examView{max-width:1180px;padding:24px}.examConfigShell,.examSessionShell,.examReportShell{display:grid;gap:20px}.examConfigShell{grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:start}.examConfigMain{display:grid;gap:18px;max-width:760px}.examField{display:grid;gap:8px}.examField label,.examField>span{color:#4d5b53;font-size:13px;font-weight:800}.examField select,.examChipRow input{min-height:42px;border:1px solid #cad7d0;border-radius:8px;background:#fff;color:#17211b;font-size:14px}.examField select{width:100%;padding:0 12px}.examChipRow{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.examChip{min-height:38px;padding:0 13px;border:1px solid #cad7d0;border-radius:8px;background:#fff;color:#2d3931;font-size:13px;font-weight:760;cursor:pointer}.examChip.active{border-color:#1d7a5c;background:#e9f6f1;color:#1d7a5c}.examChipRow input{width:104px;padding:0 10px}.examFeedbackToggle{width:min(100%,360px)}.examStartButton{width:fit-content}.examHistory,.examBreakdown,.examWrongList{display:grid;gap:12px}.examSectionHeader{display:flex;align-items:center;justify-content:space-between;gap:10px}.examSectionHeader h2{font-size:16px}.examHistoryList,.examBreakdownList,.examWrongList{display:grid;gap:10px}.examHistoryItem,.examBreakdownItem,.examWrongItem{border:1px solid #d9e2dc;border-radius:8px;background:#fbfcfb}.examHistoryItem{display:grid;gap:2px;padding:13px 14px}.examHistoryItem strong{color:#1d7a5c;font-size:20px}.examHistoryItem span,.examHistoryItem small{color:#5d6c63;font-size:13px}.examSessionHeader,.examReportHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.examSource{display:block;margin-bottom:5px;color:#5d6c63;font-size:12px;font-weight:800;text-transform:uppercase}.examSessionMeta{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:10px}.examTimer{display:inline-flex;align-items:center;gap:7px;min-height:38px;padding:0 12px;border:1px solid #cad7d0;border-radius:8px;background:#fff;color:#1d7a5c;font-weight:850;font-variant-numeric:tabular-nums}.examTimer.warning{border-color:#e6a23c;color:#a76412;background:#fff8e8}.examTimer.danger{border-color:#d9534f;color:#a73f35;background:#fff1ef}.examProgressRow{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;align-items:center;color:#4d5b53;font-size:13px;font-weight:800}.examQuestionCard{max-width:860px}.examOptions label{cursor:pointer}.examOptions label.wrongOption{border-color:#d9534f;background:#fff1ef;color:#a73f35}.examReportShell{max-width:900px}.examReportStats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.examReportStats div{display:grid;gap:3px;padding:14px;border:1px solid #d9e2dc;border-radius:8px;background:#fbfcfb}.examReportStats strong{color:#1d7a5c;font-size:24px;line-height:1}.examReportStats span{color:#5d6c63;font-size:12px;font-weight:760}.examBreakdownItem{display:grid;gap:10px;padding:13px 14px}.examBreakdownItem>div:first-child{display:flex;justify-content:space-between;gap:12px;color:#2d3931;font-size:13px}.examBreakdownItem span{color:#5d6c63;white-space:nowrap}.examWrongItem{display:grid;gap:12px;padding:14px}.examWrongItem header{display:grid;grid-template-columns:auto minmax(0,1fr);gap:10px}.examWrongItem header svg{color:#a73f35;margin-top:2px}.examWrongItem header span{display:block;margin-bottom:4px;color:#5d6c63;font-size:12px;font-weight:800}.examAnswerCompare{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.examAnswerCompare>div{display:grid;align-content:start;gap:6px;min-width:0;padding:10px;border-radius:8px;background:#fff}.examAnswerCompare>div:first-child{border:1px solid #f0c8c3}.examAnswerCompare>div:last-child{border:1px solid #c9e8dd}.examAnswerCompare strong{font-size:12px;text-transform:uppercase}.examAnswerCompare p{margin:0;color:#4d5b53;font-size:13px}.examReportActions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.themeDark .examField label,.themeDark .examField>span,.themeDark .examSource,.themeDark .examProgressRow,.themeDark .examHistoryItem span,.themeDark .examHistoryItem small,.themeDark .examReportStats span,.themeDark .examBreakdownItem span,.themeDark .examWrongItem header span,.themeDark .examAnswerCompare p{color:#7a9e88}.themeDark .examField select,.themeDark .examChipRow input,.themeDark .examChip,.themeDark .examTimer,.themeDark .examHistoryItem,.themeDark .examBreakdownItem,.themeDark .examWrongItem,.themeDark .examReportStats div,.themeDark .examAnswerCompare>div{border-color:#314139;background:#16211b;color:#e8f0ea}.themeDark .examChip.active{border-color:#5aaa80;background:#1e3828;color:#8fd6af}.themeDark .examHistoryItem strong,.themeDark .examReportStats strong{color:#8fd6af}.themeDark .examBreakdownItem>div:first-child{color:#c8d8cc}.themeDark .examTimer.warning{border-color:#d89838;background:#2e2414;color:#f0b95a}.themeDark .examTimer.danger,.themeDark .examOptions label.wrongOption{border-color:#c95f58;background:#2d1a18;color:#ff958c}@media (max-width: 860px){.examView{padding:16px}.examConfigShell,.examReportStats,.examAnswerCompare{grid-template-columns:1fr}.examSessionHeader,.examReportHeader{align-items:stretch;flex-direction:column}.examSessionMeta{justify-content:flex-start}}.streakHeader{display:flex;gap:10px;margin-bottom:20px;flex-wrap:wrap}.streakStat{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:10px;background:#f7faf8;border:1px solid #cad7d0;border-radius:8px;padding:12px 14px;min-width:150px}.streakStatIcon{box-sizing:border-box;width:34px;height:34px;padding:8px;border-radius:8px;background:#1a2e220f}.streakStatCopy{display:grid;gap:3px;min-width:0}.streakFlame{color:#e8733a}.streakTrophy{color:#c4922e}.streakCalendar,.streakToday{color:#4a8c6a}.streakTodayPending .streakToday{color:#9a6d45}.streakStatValue{font-size:20px;font-weight:700;line-height:1.05;color:#1a2e22}.streakStatLabel{font-size:12px;color:#6b8070;letter-spacing:0}.streakTodayDone{border-color:#9cc9af}.streakTodayPending{border-color:#d4b08e}.themeDark .streakStat{background:#1e2b24;border-color:#314139}.themeDark .streakStatValue{color:#c8d8cc}.themeDark .streakStatLabel{color:#7a9e88}.themeDark .streakStatIcon{background:#c8d8cc14}.themeDark .streakTodayDone{border-color:#3f7555}.themeDark .streakTodayPending{border-color:#73593f}.studyHeatmap{margin-bottom:28px}.activityHeatmapTitle{margin:0;color:#4a6050;font-size:14px}.themeDark .activityHeatmapTitle{color:#7a9e88}.heatmapToolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px;margin-bottom:8px}.heatmapPeriodSelector{display:flex;gap:4px}.heatmapPeriodBtn{background:none;border:1px solid #cad7d0;border-radius:6px;padding:4px 10px;font-size:12px;cursor:pointer;color:#4a6050;transition:background .1s,border-color .1s}.heatmapPeriodBtn:hover{background:#eef6f1;border-color:#4a8c6a}.heatmapPeriodBtn.active{background:#4a8c6a;border-color:#4a8c6a;color:#fff;font-weight:600}.themeDark .heatmapPeriodBtn{border-color:#314139;color:#7a9e88}.themeDark .heatmapPeriodBtn:hover{background:#1e3828;border-color:#5aaa80}.themeDark .heatmapPeriodBtn.active{background:#3d8f64;border-color:#3d8f64;color:#fff}.heatmapLegend{display:flex;align-items:center;gap:3px;flex-shrink:0;background:none;border:none;padding:0;cursor:pointer}.heatmapLegendLabel{font-size:11px;color:#8aaa94;margin:0 2px}.legendCell{cursor:default;pointer-events:none}.heatmapLegendInfo{position:fixed;z-index:200;background:#fff;border:1px solid #cad7d0;border-radius:10px;padding:12px 14px;box-shadow:0 4px 16px #0000001f;display:flex;flex-direction:column;gap:8px;min-width:240px}.heatmapLegendInfoTitle{font-size:12px;font-weight:700;color:#4a7560}.heatmapLegendInfoPoints{display:flex;flex-direction:column;gap:2px;padding:6px 0 4px;border-bottom:1px solid #d5e8dc;margin-bottom:4px;font-size:11px;color:#68756d}.heatmapLegendInfoRow{display:flex;align-items:center;gap:8px;font-size:12px;color:#1a2e22}.themeDark .heatmapLegendInfo{background:#1e2b24;border-color:#314139}.themeDark .heatmapLegendInfoTitle{color:#8aaa94}.themeDark .heatmapLegendInfoPoints{color:#6a8a74;border-color:#2c3d34}.themeDark .heatmapLegendInfoRow{color:#c8d8cc}.heatmapTooltip{position:fixed;transform:translate(-50%,calc(-100% - 8px));z-index:300;background:#1a2e22;color:#e0ede6;border-radius:8px;padding:8px 12px;font-size:12px;pointer-events:none;display:flex;flex-direction:column;gap:3px;box-shadow:0 4px 16px #00000038;white-space:nowrap;max-width:220px}.heatmapTooltipDate{font-weight:600;font-size:12px;color:#b8d4c0;margin-bottom:2px}.heatmapTooltipLine{font-size:12px;color:#d0e8d8}.heatmapTooltipPoints{font-size:12px;font-weight:700;color:#8adb9e;margin-top:2px;padding-top:4px;border-top:1px solid rgba(255,255,255,.12)}.themeDark .heatmapTooltip{background:#0f1c14}.heatmapGrid{overflow-x:auto;display:grid;grid-template-rows:repeat(7,11px);grid-auto-flow:column;grid-auto-columns:11px;gap:2px;width:fit-content}.heatmapCell{width:11px;height:11px;border-radius:2px;cursor:pointer;transition:opacity .1s}.heatmapCell:hover{opacity:.75}.heatmapCell.empty{cursor:default;background:transparent}.heatmapCell.level0{background:#e8ede9}.heatmapCell.level1{background:#b6d4c1}.heatmapCell.level2{background:#6db18d}.heatmapCell.level3{background:#3d8f64}.heatmapCell.level4{background:#1f6642}.heatmapCell.skipped{background:#c5d4e8}.heatmapCell.force-studied{background:#f5c842}.themeDark .heatmapCell.level0{background:#1e2b24}.themeDark .heatmapCell.level1{background:#1e4030}.themeDark .heatmapCell.level2{background:#2a6044}.themeDark .heatmapCell.level3{background:#3d8f64}.themeDark .heatmapCell.level4{background:#5aaa80}.themeDark .heatmapCell.skipped{background:#1e2d42}.themeDark .heatmapCell.force-studied{background:#c9a012}.heatmapGrid[data-period=week],.heatmapGrid[data-period="7d"]{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;grid-template-rows:unset;grid-auto-columns:unset;gap:4px}.heatmapGrid[data-period=week] .heatmapCell,.heatmapGrid[data-period="7d"] .heatmapCell,.heatmapGrid[data-period=week] .heatmapCell.empty,.heatmapGrid[data-period="7d"] .heatmapCell.empty{width:20px;height:20px;border-radius:4px}.heatmapGrid[data-period="30d"]{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;grid-template-rows:unset;grid-auto-columns:unset;gap:3px}.heatmapGrid[data-period="30d"] .heatmapCell,.heatmapGrid[data-period="30d"] .heatmapCell.empty{width:16px;height:16px;border-radius:3px}.heatmapGrid[data-period="6m"]{grid-template-rows:repeat(7,13px);grid-auto-columns:13px;gap:3px}.heatmapGrid[data-period="6m"] .heatmapCell{width:13px;height:13px;border-radius:3px}.heatmapGrid[data-period="1y"]{grid-template-rows:repeat(7,12px);grid-auto-columns:12px;gap:2px}.heatmapGrid[data-period="1y"] .heatmapCell{width:12px;height:12px;border-radius:2px}.heatmapMenuBackdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:199;background:transparent;cursor:default;border:none}.heatmapMenu{position:fixed;z-index:200;background:#fff;border:1px solid #cad7d0;border-radius:8px;padding:4px;box-shadow:0 4px 16px #0000001f;display:flex;flex-direction:column;gap:2px;min-width:180px}.heatmapMenuOption{background:none;border:none;border-radius:6px;padding:8px 12px;font-size:13px;text-align:left;cursor:pointer;color:#1a2e22}.heatmapMenuOption:hover:not(:disabled){background:#eef6f1}.heatmapMenuOption:disabled{opacity:.5;cursor:default}.heatmapMenuOptionDanger{color:#c0392b}.heatmapMenuOptionDanger:hover:not(:disabled){background:#fdf0ef}.themeDark .heatmapMenu{background:#1e2b24;border-color:#314139}.themeDark .heatmapMenuOption{color:#c8d8cc}.themeDark .heatmapMenuOption:hover:not(:disabled){background:#1e3828}.themeDark .heatmapMenuOptionDanger{color:#e8733a}.themeDark .heatmapMenuOptionDanger:hover:not(:disabled){background:#2b1c14}.scheduleHeatmap{margin-bottom:28px}.scheduleHeatmapTitle{font-size:13px;font-weight:600;color:#6b8070;text-transform:uppercase;letter-spacing:.05em;margin:0 0 10px}.scheduleHeatmapEmpty{font-size:13px;color:#6b8070;margin:0}.scheduleHeatmapGrid{display:flex;flex-direction:column;gap:2px;overflow-x:auto;width:fit-content}.scheduleHourLabels{display:flex;align-items:flex-end;gap:2px}.scheduleDayLabelSpacer{width:28px;flex-shrink:0}.scheduleHourLabel{width:13px;font-size:9px;color:#8aaa94;text-align:left;white-space:nowrap;overflow:visible;flex-shrink:0}.scheduleRow{display:flex;align-items:center;gap:2px}.scheduleDayLabel{width:28px;font-size:10px;color:#6b8070;flex-shrink:0;text-align:right;padding-right:4px}.scheduleCell{width:13px;height:13px;border-radius:2px;flex-shrink:0}.scheduleCell.level0{background:#e8ede9}.scheduleCell.level1{background:#f5cba7}.scheduleCell.level2{background:#e59866}.scheduleCell.level3{background:#ca6f1e}.scheduleCell.level4{background:#9a4007}.themeDark .scheduleHeatmapTitle,.themeDark .scheduleHeatmapEmpty,.themeDark .scheduleDayLabel{color:#7a9e88}.themeDark .scheduleHourLabel{color:#5a7a64}.themeDark .scheduleCell.level0{background:#1e2b24}.themeDark .scheduleCell.level1{background:#4a2a10}.themeDark .scheduleCell.level2{background:#7a4020}.themeDark .scheduleCell.level3{background:#c05010}.themeDark .scheduleCell.level4{background:#e87030}.topicReviewBadges{display:flex;flex-wrap:wrap;gap:6px;margin-top:4px}.topicReviewBadge{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:#c4622e;background:#fdf5f0;border:1px solid #e8733a40;border-radius:20px;padding:2px 8px}.themeDark .topicReviewBadge{color:#e8733a;background:#2b1c1440;border-color:#c4622e40}.notesLayout{display:grid;grid-template-columns:minmax(340px,380px) minmax(0,1fr);gap:20px;padding:28px 0 20px;align-items:start;height:100%}.notesLayoutListOnly{grid-template-columns:minmax(0,760px)}.notesList{display:grid;gap:12px;align-content:start}.notesToolbar{display:flex;align-items:stretch;flex-wrap:wrap;gap:10px}.notesToolbar .filterDropdown .secondaryButton{min-width:190px;justify-content:space-between}.notesEmpty{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;min-height:138px;padding:24px;border:1px dashed #b9c8c0;border-radius:8px;background:#fbfcfb}.notesEmpty>span{display:grid;place-items:center;width:50px;height:50px;border-radius:8px;background:#e7f1ec;color:#1d7a5c}.notesEmpty h2{font-size:18px}.notesEmpty .eyebrow{margin-bottom:4px}.noteCard{padding:14px 16px;border:1px solid #cad7d0;border-radius:10px;background:#f7faf8;cursor:pointer;transition:border-color .15s,background .15s;outline:none}.noteCard:hover,.noteCard:focus{border-color:#4a8c6a;background:#eef6f1}.noteCard.selected{border-color:#4a8c6a;background:#e4f0ea}.noteCardTitle{margin:0 0 4px;font-size:14px;font-weight:600;color:#17211b}.noteCardDescription{margin:0 0 6px;font-size:13px;color:#4a6857;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.noteCardCategories{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:6px}.categoryChip{display:inline-block;padding:2px 8px;border-radius:999px;background:#d4ece0;color:#2a5c40;font-size:11px;font-weight:500}.noteCardDate{font-size:11px;color:#7a9e88}.noteDetail{display:grid;gap:14px;padding:20px;border:1px solid #d9e2dc;border-radius:10px;background:#fff;align-content:start}.noteDetailHeader{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.noteDetailHeader h2{margin:0;font-size:18px;font-weight:700;color:#17211b}.noteDetailActions{display:flex;gap:8px;flex-shrink:0;align-items:center}.noteDetailDescription{margin:0;font-size:14px;color:#4a6857}.noteDetailChatUrl{display:flex;align-items:center;gap:6px;font-size:13px;color:#4a6857}.noteDetailChatUrl a{color:#2a7a52;text-decoration:underline}.noteDetailContent{font-size:14px;line-height:1.65;border-top:1px solid #e5ece8;padding-top:14px}.noteForm{display:grid;gap:12px}.noteContentTextarea{resize:vertical;min-height:220px;font-family:Fira Code,Cascadia Code,ui-monospace,monospace;font-size:13px}.noteCreateDialog{width:min(680px,calc(100vw - 32px));max-height:calc(var(--app-viewport-height) - 48px - env(safe-area-inset-bottom));overflow-y:auto}.filterDropdown{position:relative}.filterDropdown .categoryPickerMenu{position:absolute;top:calc(100% + 4px);left:0;z-index:30}.themeDark .noteCard{background:#1a2820;border-color:#2e4a38;color:#c8d8cc}.themeDark .noteCard:hover,.themeDark .noteCard:focus{border-color:#5aaa80;background:#1e3828}.themeDark .noteCard.selected{border-color:#5aaa80;background:#1e3828}.themeDark .noteCardTitle{color:#c8d8cc}.themeDark .noteCardDescription{color:#7a9e88}.themeDark .categoryChip{background:#1e3828;color:#7acca0}.themeDark .noteDetail{background:#1a2820;border-color:#2e4a38}.themeDark .noteDetailHeader h2{color:#c8d8cc}.themeDark .noteDetailDescription,.themeDark .noteDetailChatUrl{color:#7a9e88}.themeDark .noteDetailChatUrl a{color:#5aaa80}.themeDark .noteDetailContent{color:#c8d8cc;border-top-color:#2e4a38}.themeDark .notesEmpty{border-color:#314139;background:#18211d}.themeDark .notesEmpty>span{background:#22362c;color:#7de0b7}@media (max-width: 680px){.notesLayout,.notesLayoutListOnly{grid-template-columns:1fr;padding-top:14px}.notesToolbar .filterDropdown,.notesToolbar .filterDropdown .secondaryButton{min-width:0;width:100%}.notesEmpty{grid-template-columns:1fr;justify-items:start}}.noteCardTopRow{display:flex;align-items:center;gap:.4rem;margin-bottom:.25rem;flex-wrap:wrap}.noteStatusBadge{display:inline-block;padding:.1rem .5rem;border-radius:999px;font-size:.72rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase}.noteStatus-A_ESTUDAR{background:#e8f0ee;color:#4a7a62}.noteStatus-ESTUDANDO{background:#fff3cd;color:#856404}.noteStatus-ESTUDADO{background:#d4edda;color:#1e5c35}.noteTypeLabel{display:inline-block;padding:.1rem .45rem;border-radius:4px;font-size:.72rem;background:#e8ecf0;color:#4a5568;font-weight:500}.noteCardOrder{margin-left:auto;font-size:.72rem;color:#7a9e88}.noteDetailMeta{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap;margin-bottom:.4rem}.noteBackButton{margin-bottom:1rem}.noteFormRow{display:flex;gap:.75rem;align-items:flex-end}.noteMetrics{display:flex;flex-direction:column;gap:1rem}.noteMetricsRow{display:flex;flex-direction:column;gap:.15rem}.noteMetricsSection{display:flex;flex-direction:column;gap:.5rem}.noteHistoryList{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.noteHistoryEntry{display:flex;flex-direction:column;gap:.1rem;padding:.5rem .75rem;border-left:3px solid #d0e8d8;background:#f5f7f4;border-radius:0 4px 4px 0}.noteHistoryTime{font-size:.75rem;color:#7a9e88}.noteHistoryChange{font-size:.85rem;font-weight:500;color:#2d5a3d}.srsSessionSave{display:flex;justify-content:flex-end;padding:.5rem 0 .25rem;border-top:1px solid #e0ead8;margin-top:.25rem}.noteHistoryEntryBody{display:flex;flex-direction:column;gap:.1rem}.noteHistoryDetail{font-size:.78rem;color:#5a7a65;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:100%}.historySection{margin-top:.6rem;padding-top:.4rem;border-top:1px solid #e0ead8}.historySectionToggle{display:flex;align-items:center;gap:.3rem;background:none;border:none;cursor:pointer;color:#4a7a5a;font-size:.84rem;font-weight:500;padding:.15rem 0 .4rem}.themeDark .historySection{border-top-color:#2a3d2e}.themeDark .historySectionToggle{color:#6aaa82}.itemHistoryTimeline{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.4rem}.itemHistoryEntry{display:flex;flex-direction:column;gap:.15rem;padding:.5rem .75rem;border-left:3px solid #c8dfd0;background:#f5f7f4;border-radius:0 4px 4px 0}.itemHistoryTime{font-size:.73rem;color:#7a9e88}.itemHistoryLabel{font-size:.84rem;font-weight:500;color:#2d5a3d}.itemHistoryDetail{font-size:.8rem;color:#4a7a5a}.themeDark .itemHistoryEntry{background:#1a2820;border-left-color:#2a4835}.themeDark .itemHistoryTime{color:#5a8068}.themeDark .itemHistoryLabel{color:#8dcca0}.themeDark .itemHistoryDetail{color:#6aaa82}.noteDetailEditing{background:#fafdfb}.themeDark .noteStatus-A_ESTUDAR{background:#1e3828;color:#6dbf95}.themeDark .noteStatus-ESTUDANDO{background:#3a2e00;color:#d4a017}.themeDark .noteStatus-ESTUDADO{background:#1a3a24;color:#5aaa80}.themeDark .noteTypeLabel{background:#1e2e28;color:#7a9e88}.themeDark .noteCardOrder{color:#4a7a62}.themeDark .noteHistoryEntry{background:#1a2820;border-left-color:#2e4a38}.themeDark .noteHistoryTime{color:#4a7a62}.themeDark .noteHistoryChange{color:#c8d8cc}.themeDark .noteHistoryDetail{color:#7a9e88}.themeDark .noteDetailEditing{background:#1a2820}.themeDark *{scrollbar-color:#1d7a5c #0f1714;scrollbar-width:thin}.themeDark::-webkit-scrollbar,.themeDark *::-webkit-scrollbar{width:7px;height:7px}.themeDark::-webkit-scrollbar-track,.themeDark *::-webkit-scrollbar-track{background:#0f1714}.themeDark::-webkit-scrollbar-thumb,.themeDark *::-webkit-scrollbar-thumb{background:#1d7a5c;border-radius:4px}.themeDark::-webkit-scrollbar-thumb:hover,.themeDark *::-webkit-scrollbar-thumb:hover{background:#2a9e78}.themeDark .sectionDrawer::-webkit-scrollbar,.themeDark .topicStudyDrawer::-webkit-scrollbar,.themeDark .chatDrawer::-webkit-scrollbar{width:7px;height:7px}.themeDark .sectionDrawer::-webkit-scrollbar-track,.themeDark .topicStudyDrawer::-webkit-scrollbar-track,.themeDark .chatDrawer::-webkit-scrollbar-track{background:#0f1714}.themeDark .sectionDrawer::-webkit-scrollbar-thumb,.themeDark .topicStudyDrawer::-webkit-scrollbar-thumb,.themeDark .chatDrawer::-webkit-scrollbar-thumb{background:#1d7a5c;border-radius:4px}.themeDark .markdownPreview hr{border-top-color:#2e4a38}.themeDark .markdownPreview blockquote{background:#1a2820;border-left-color:#5aaa80;color:#8fbfa8}.voiceRecordingPanel{display:grid;gap:10px;padding-top:20px;margin-top:20px;border-top:1px solid #d9e2dc}.recordingControls{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.recordingTimer{display:flex;align-items:center;gap:6px;font-size:.85rem;font-variant-numeric:tabular-nums;font-weight:500;min-width:3ch}.recordingDot{width:8px;height:8px;border-radius:50%;background:#e03e3e;animation:recPulse 1s ease-in-out infinite;flex-shrink:0}@keyframes recPulse{0%,to{opacity:1}50%{opacity:.3}}.recordingSaveForm{display:grid;gap:8px}.recordingSelectedFile{margin:0;color:#556b63;font-size:.78rem;overflow-wrap:anywhere}.recordingSaveForm input{padding:10px 12px;border:1px solid #c8d6ce;border-radius:8px;background:#fff;color:#17211b}.recordingSaveActions{display:flex;gap:8px}.recordingsList{list-style:none;margin:0;padding:0;display:grid;gap:8px}.recordingItem{display:grid;gap:4px;padding:10px 12px;background:#f0f5f2;border-radius:8px;border:1px solid #d9e2dc}.recordingItemHeader{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.recordingTitle{font-size:.85rem;font-weight:500;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recordingOrigin{font-size:.75rem;color:#556b63;background:#e0ede7;padding:1px 6px;border-radius:4px;white-space:nowrap}.recordingItemPlayer{display:grid;gap:4px}.recordingAudioPlayer{display:grid;grid-template-columns:auto minmax(80px,1fr) auto;align-items:center;gap:8px}.recordingSeek{width:100%;cursor:pointer;accent-color:#2a7d5b}.recordingPlayerTime{min-width:76px;color:#556b63;font-size:.75rem;font-variant-numeric:tabular-nums;text-align:right}.recordingPlayError{grid-column:1 / -1;color:#b42318;font-size:.75rem}.recordingMeta{display:flex;gap:10px;font-size:.75rem;color:#556b63}.recordingTranscription{display:grid;gap:4px;margin-top:4px}.recordingTranscriptionHeader{display:flex;align-items:center;gap:8px;color:#556b63;font-size:.75rem;font-weight:600}.recordingTranscriptionHeader small{color:#2a7d5b;font-size:.72rem;font-weight:500}.recordingTranscription textarea{width:100%;min-height:64px;max-height:160px;resize:vertical;overflow:auto;padding:8px 10px;border:1px solid #c8d6ce;border-radius:7px;background:#fff;color:#17211b;font:inherit;font-size:.8rem;line-height:1.4}.themeDark .voiceRecordingPanel{border-top-color:#1e3530}.themeDark .recordingItem{background:#0f1f1b;border-color:#1e3530}.themeDark .recordingOrigin{background:#152e28;color:#8ab5a5}.themeDark .recordingMeta,.themeDark .recordingTimer,.themeDark .recordingPlayerTime,.themeDark .recordingSelectedFile,.themeDark .recordingTranscriptionHeader{color:#8ab5a5}.themeDark .recordingTranscription textarea{border-color:#29463c;background:#0b1814;color:#d4e8da}.recordingStatusMsg{font-size:.82rem;margin:0;padding:5px 8px;border-radius:5px}.recordingStatusMsg.uploading{color:#2a7d5b;background:#e8f5ef}.recordingStatusMsg.saved{color:#1a6b48;background:#d4eddf;font-weight:500}.themeDark .recordingStatusMsg.uploading,.themeDark .recordingStatusMsg.saved{color:#6dd5a8;background:#0d2b22}.promptsView{padding:24px;display:flex;flex-direction:column;gap:28px}.promptsViewHeader{display:flex;justify-content:flex-end}.promptCard{border:1px solid #d3ddd6;border-radius:10px;padding:20px;background:#fff;display:flex;flex-direction:column;gap:12px}.themeDark .promptCard{border-color:#2d3d35;background:#141f1a}.promptCardHeader{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.promptCardTitle{font-size:.95rem;font-weight:600;margin:0}.promptCardError{font-size:.82rem;color:#b94040;margin:0}.promptCardTextarea{width:100%;min-height:260px;font-family:JetBrains Mono,Fira Code,ui-monospace,monospace;font-size:.78rem;line-height:1.55;resize:vertical;border:1px solid #c8d5cc;border-radius:6px;padding:10px 12px;background:#f8fbf9;color:inherit;box-sizing:border-box}.themeDark .promptCardTextarea{border-color:#2a3d30;background:#0e1912}.promptPreview,.promptPlaceholders{font-size:.82rem;color:#4a6357}.themeDark .promptPreview,.themeDark .promptPlaceholders{color:#8aad9a}.promptPreview summary,.promptPlaceholders summary{cursor:pointer;font-weight:500;-webkit-user-select:none;user-select:none}.promptPreviewTextarea{width:100%;min-height:220px;margin-top:8px;box-sizing:border-box;resize:vertical;border:1px solid #d6e1da;border-radius:6px;padding:10px 12px;background:#fbfcfb;color:#20312a;font-family:JetBrains Mono,Fira Code,ui-monospace,monospace;font-size:.76rem;line-height:1.55}.themeDark .promptPreviewTextarea{border-color:#26382d;background:#101b15;color:#dbe7df}.promptPlaceholders ul{margin:8px 0 0;padding-left:16px;display:flex;flex-direction:column;gap:4px;list-style:disc}.promptPlaceholders code{font-family:JetBrains Mono,Fira Code,ui-monospace,monospace;font-size:.8em;background:#e8f0eb;border-radius:3px;padding:1px 4px}.themeDark .promptPlaceholders code{background:#1a2e22}.clozeText{font-size:1rem;line-height:1.7;color:inherit}.clozeBlank{display:inline-flex;min-width:72px;justify-content:center;margin:0 3px;padding:0 6px;border-bottom:2px solid #7b8f84;font-weight:700;color:#2e5f46}.clozeBlank.revealed{border-bottom-color:#3d8b64;background:#e9f6ef;border-radius:4px}.themeDark .clozeBlank{color:#9dd0b2;border-bottom-color:#6f8d7b}.themeDark .clozeBlank.revealed{background:#163424}.generationOptions{display:flex;flex-wrap:wrap;gap:12px}.inlineToggle{display:inline-flex;align-items:center;gap:8px;font-size:.88rem;color:#30473a;cursor:pointer;white-space:nowrap}.themeDark .inlineToggle{color:#c8d8cd}.inlineToggleDisabled{opacity:.45;cursor:not-allowed;pointer-events:none}@media (max-width: 600px){.generationOptions{gap:8px}.inlineToggle{font-size:.82rem}}.pomodoroBar{position:fixed;top:0;left:0;right:0;z-index:200;height:48px;display:flex;align-items:center;padding:0 16px;gap:10px;font-size:.83rem;transition:background-color .4s ease}.pomodoroBar.phaseWork{background:#fef9ec;border-bottom:1px solid #f5d87a;color:#5a3e00}.pomodoroBar.phaseBreak{background:#edfaf3;border-bottom:1px solid #7addb4;color:#0d4427}.pomodoroBar.phaseIdle{background:#f4f6f8;border-bottom:1px solid #d8dde3;color:#374151}@keyframes pomodoroPulse{0%,to{opacity:1}50%{opacity:.65}}.pomodoroBar.pulsing{animation:pomodoroPulse 1.4s ease-in-out infinite}.pomodoroPhaseLabel{font-weight:700;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase;flex-shrink:0;min-width:96px}.pomodoroTimer{font-size:1.1rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.03em;flex-shrink:0;min-width:52px}.pomodoroProgress{width:120px;flex-shrink:0;height:5px;background:#0000001a;border-radius:3px;overflow:hidden}.pomodoroProgressFill{height:100%;background:currentColor;opacity:.55;border-radius:3px;transition:width 1s linear}.pomodoroSectionLabel{font-size:.78rem;opacity:.6;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-shrink:1}.pomodoroCompleteMsg{font-weight:600;flex-shrink:0}.pomodoroDurationGroup{display:flex;align-items:center;gap:6px;flex-shrink:0}.pomodoroDurationInput{display:flex;align-items:center;gap:3px;background:#ffffffa6;border:1px solid rgba(0,0,0,.14);border-radius:5px;padding:3px 8px;font-size:.8rem;cursor:text;flex-shrink:0}.pomodoroDurationInput input{width:32px;border:none;background:transparent;font-size:.85rem;font-weight:700;text-align:center;outline:none;color:inherit}.pomodoroDurationInput input::-webkit-outer-spin-button,.pomodoroDurationInput input::-webkit-inner-spin-button{-webkit-appearance:none}.pomodoroActions{display:flex;align-items:center;gap:6px;flex-shrink:0}.pomodoroBtn{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:5px;border:1px solid rgba(0,0,0,.14);background:#ffffffa6;cursor:pointer;font-size:.78rem;font-weight:500;white-space:nowrap;color:inherit;transition:background .15s}.pomodoroBtn:hover{background:#ffffffe6}.pomodoroBtn.primary{background:#00000012;border-color:#0003;font-weight:600}.pomodoroBtn.primary:hover{background:#00000021}.pomodoroBarSpacer{flex:1}.pomodoroCloseBtn{display:flex;align-items:center;justify-content:center;padding:4px;border:none;background:transparent;cursor:pointer;opacity:.45;color:inherit;border-radius:4px;flex-shrink:0}.pomodoroCloseBtn:hover{opacity:.85;background:#00000012}.pomodoroToggleBtn{position:fixed;top:6px;right:10px;z-index:200;padding:5px 8px;border-radius:6px;border:1px solid #dde2e8;background:#fff;cursor:pointer;font-size:1rem;box-shadow:0 1px 4px #0000001a;transition:box-shadow .15s;line-height:1}.pomodoroToggleBtn:hover{box-shadow:0 2px 8px #00000026}.hasPomodoroBar{padding-top:48px}.hasPomodoroBar .sidebar{top:48px;height:calc(var(--app-viewport-height) - 48px)}@media (max-width: 980px){.hasPomodoroBar .sidebar{height:auto}}.themeDark .pomodoroBar.phaseWork{background:#2d2200;border-bottom-color:#7a5c00;color:#f5d87a}.themeDark .pomodoroBar.phaseBreak{background:#002218;border-bottom-color:#0d6644;color:#7addb4}.themeDark .pomodoroBar.phaseIdle{background:#1a2026;border-bottom-color:#2e3a44;color:#c8d8cd}.themeDark .pomodoroDurationInput,.themeDark .pomodoroBtn{background:#ffffff14;border-color:#ffffff26}.themeDark .pomodoroBtn:hover{background:#ffffff26}.themeDark .pomodoroBtn.primary{background:#ffffff21;border-color:#ffffff40}.themeDark .pomodoroBtn.primary:hover{background:#fff3}.themeDark .pomodoroToggleBtn{background:#1a2026;border-color:#2e3a44;color:#c8d8cd;box-shadow:0 1px 4px #0006}.pomodoroHistorySection{margin-top:24px}.pomodoroHistoryHeader{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.pomodoroHistoryHeader h3{font-size:.95rem;font-weight:600;color:#374151;margin:0}.themeDark .pomodoroHistoryHeader h3{color:#c8d8cd}.pomodoroHistoryClear{font-size:.78rem;padding:3px 8px;border-radius:4px;border:1px solid #e2e8f0;background:transparent;cursor:pointer;color:#6b7280}.pomodoroHistoryClear:hover{background:#fee2e2;border-color:#fca5a5;color:#b91c1c}.themeDark .pomodoroHistoryClear{border-color:#2e3a44;color:#7a9e8a}.themeDark .pomodoroHistoryClear:hover{background:#3b1010;border-color:#7f1d1d;color:#fca5a5}.pomodoroHistoryDay{margin-bottom:14px}.pomodoroHistoryDayLabel{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:#9ca3af;margin-bottom:5px}.pomodoroHistoryList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:3px}.pomodoroHistoryItem{border-radius:6px;background:#f8fafc;font-size:.8rem;color:#374151;overflow:hidden}.pomodoroHistoryItem.isBreak{opacity:.55}.themeDark .pomodoroHistoryItem{background:#1a2026;color:#c8d8cd}.pomodoroHistoryRow{display:flex;align-items:center;gap:8px;padding:5px 8px}.pomodoroHistoryRow.isExpandable{cursor:pointer;-webkit-user-select:none;user-select:none}.pomodoroHistoryRow.isExpandable:hover{background:#eef2f7}.themeDark .pomodoroHistoryRow.isExpandable:hover{background:#1e2a31}.pomodoroExpandChevron{flex-shrink:0;font-size:.65rem;color:#9ca3af}.pomodoroActivityDetail{display:flex;flex-direction:column;gap:2px;padding:4px 8px 6px;border-top:1px solid #e5eaf0}.themeDark .pomodoroActivityDetail{border-top-color:#2a3540}.pomodoroActivityItem{display:flex;align-items:center;gap:6px;font-size:.75rem;padding:3px 4px;border-radius:4px;color:#4b5563}.themeDark .pomodoroActivityItem{color:#a0b4ab}.pomodoroActivityIcon{flex-shrink:0;font-size:.8rem}.pomodoroActivityLabel{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pomodoroActivityScore{flex-shrink:0;font-size:.72rem;color:#6b7280;white-space:nowrap}.themeDark .pomodoroActivityScore{color:#7a9a8e}.pomodoroActivityMeta{flex-shrink:0;font-size:.7rem;color:#9ca3af;font-variant-numeric:tabular-nums}.pomodoroActivityLoading{font-size:.75rem;color:#9ca3af;padding:4px 8px 6px}.pomodoroHistoryTime{font-variant-numeric:tabular-nums;color:#9ca3af;flex-shrink:0;font-size:.75rem}.pomodoroHistorySectionName{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pomodoroHistoryDuration{font-size:.75rem;color:#9ca3af;flex-shrink:0}.pomodoroHistoryStatus{flex-shrink:0;font-size:.75rem}.pomodoroHistorySkipped{flex-shrink:0;padding:1px 6px;border-radius:4px;background:#f3f4f6;color:#9ca3af;font-size:.7rem;font-weight:600;letter-spacing:.02em}.themeDark .pomodoroHistorySkipped{background:#2a3028;color:#6b7280}.pomodoroEmptyHistory{font-size:.83rem;color:#9ca3af;padding:8px 0}.themeDark .openQuestionCard{background:#1a2520;border-color:#2e4038}.themeDark .openAnswerTextarea{background:#111c17;border-color:#2e4038;color:#e8f0ea}.themeDark .openAnswerResult{background:#1e2e26}.themeDark .openAnswerFeedback{color:#c8e0d0}.themeDark .openQuestionsSection{border-top-color:#2e4038}.themeDark .openQuestionsHint{color:#8aa898}.themeDark .statusBadge.warning{color:#ffe082;background:#3a2e00}.themeDark .statusBadge.error{color:#ffb4b4;background:#3a1010}.notebookEditorPage{display:flex;flex-direction:column;height:100%;padding:0}.notebookEditorTopBar{display:flex;align-items:center;justify-content:space-between;padding:12px 0 16px;gap:12px;flex-wrap:wrap}.notebookEditorActions{display:flex;align-items:center;gap:8px}.notebookEditorBody{display:flex;flex-direction:column;gap:12px;flex:1;overflow-y:auto;padding-bottom:40px}.notebookTitleInput{font-size:1.7rem;font-weight:700;border:none;border-bottom:2px solid transparent;border-radius:0;padding:4px 0;background:transparent;color:inherit;width:100%;outline:none}.notebookTitleInput:focus{border-bottom-color:#2a9d6e}.notebookTitleInput::placeholder{color:#c4d8cb}.notebookDescriptionInput{border:none;border-bottom:1px solid #e0ece5;border-radius:0;padding:4px 0;background:transparent;color:inherit;width:100%;font-size:.95rem;color:#6b8a77}.notebookDescriptionInput:focus{outline:none;border-bottom-color:#2a9d6e}.notebookMetaBar{display:flex;flex-wrap:wrap;align-items:flex-start;gap:10px;padding:6px 0;border-top:1px solid #e8f0ea;border-bottom:1px solid #e8f0ea}.notebookStatusSelect{font-size:.82rem;padding:4px 8px;border-radius:6px;border:1px solid #d0e4d8;background:#f3f8f5;color:inherit;height:34px}.notebookInlinePicker{min-width:160px;flex:0 1 240px;max-width:260px}.notebookTagsPicker{min-width:240px;flex:1 1 320px;max-width:560px}.notebookInlinePicker>input{font-size:.85rem;padding:4px 8px;height:34px;border:1px solid #d0e4d8;border-radius:6px;background:#f3f8f5;width:100%}.notebookInlinePicker .tokenPickerBox,.notebookTagsPicker .tokenPickerBox{min-height:34px;padding:3px 6px;border-color:#d0e4d8;background:#f3f8f5}.notebookInlinePicker .tokenPickerBox input,.notebookTagsPicker .tokenPickerBox input{font-size:.85rem;height:26px;min-width:70px;flex-basis:70px}.notebookInlinePicker .tokenPickerChip,.notebookTagsPicker .tokenPickerChip{min-height:24px;font-size:.8rem}.themeDark .notebookInlinePicker .tokenPickerBox,.themeDark .notebookTagsPicker .tokenPickerBox{background:#1a2820;border-color:#314139}.notebookOrderLabel{display:flex;align-items:center;gap:6px;font-size:.82rem;white-space:nowrap}.notebookOrderLabel input{font-size:.82rem;padding:4px 8px;height:34px;border:1px solid #d0e4d8;border-radius:6px;background:#f3f8f5;color:inherit}.notebookTabToggle{align-self:flex-start;display:flex;flex-wrap:wrap;width:auto;max-width:100%;margin:0;justify-content:flex-start}.notebookTabToggle button{min-height:32px;padding:0 11px;font-size:12px;white-space:nowrap}@media (max-width: 760px){.notebookTabToggle{align-self:stretch;display:grid;width:100%;grid-template-columns:repeat(3,minmax(0,1fr))}.notebookTabToggle button{min-height:36px;padding:0 8px;white-space:normal}}.notebookRecordingSection{margin-top:12px}.notebookGenerationPanel{display:flex;flex-direction:column;gap:1rem;padding:.5rem 0}.notebookGenerationIntro{font-size:.85rem;color:#5a7a65;margin:0}.notebookGenSection{display:flex;flex-direction:column;gap:.4rem}.notebookGenOptions{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:.6rem}.notebookGenOptionsCompact{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));max-width:720px}.notebookGenOptions label{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:.65rem;min-height:68px;padding:.75rem;border:1px solid #d7e5dc;border-radius:8px;background:#f8fbf9;cursor:pointer;transition:border-color .15s ease,background-color .15s ease}.notebookGenOptions label:hover{border-color:#9bc8ae;background:#f2f8f4}.notebookGenOptions label:has(input:checked){border-color:#45a878;background:#edf8f2}.notebookGenOptions input[type=checkbox]{width:16px;height:16px;margin:2px 0 0;accent-color:#2d8f62;cursor:pointer}.notebookGenOptionCopy{display:flex;min-width:0;flex-direction:column;gap:.2rem;color:#2d4336;line-height:1.3}.notebookGenOptionCopy strong{font-size:.88rem}.notebookGenOptionCopy small{color:#718378;font-size:.76rem;font-weight:500}.notebookGenOptionDisabled{opacity:.45;cursor:not-allowed}.notebookGenOptions label.notebookGenOptionDisabled:hover{border-color:#d7e5dc;background:#f8fbf9}.notebookGenOptionDisabled input[type=checkbox]{cursor:not-allowed}.notebookGenNoTranscript{color:#a06040!important;font-style:italic}.notebookGenTranscriptCount{color:#5a7a65!important}.notebookGenDownloadRow{display:flex}.notebookGenJsonInput{width:100%;font-family:var(--font-mono, monospace);font-size:.8rem;border:1px solid #c8dfd0;border-radius:6px;padding:.6rem;resize:vertical;background:#f8faf8;color:#2d4a38;box-sizing:border-box}.notebookGenActions{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap}.genValidOk{color:#2d7a4f;font-size:.78rem}.genValidError{color:#b85c3a;font-size:.78rem}.themeDark .notebookGenerationIntro{color:#7a9e88}.themeDark .notebookGenOptions label{border-color:#2a3e32;background:#16241b}.themeDark .notebookGenOptions label:hover{border-color:#47765c;background:#192b20}.themeDark .notebookGenOptions label:has(input:checked){border-color:#3c9569;background:#183323}.themeDark .notebookGenOptions label.notebookGenOptionDisabled:hover{border-color:#2a3e32;background:#16241b}.themeDark .notebookGenOptionCopy{color:#c8d8cd}.themeDark .notebookGenOptionCopy small{color:#7a9e88}.themeDark .notebookGenJsonInput{background:#1a2b1f;border-color:#2a3e32;color:#b8d4c0}.themeDark .genValidOk{color:#6fce9a}.themeDark .genValidError{color:#ee8060}.themeDark .notebookGenNoTranscript{color:#d0926a}.themeDark .notebookGenTranscriptCount{color:#7a9e88}.categoryChipPlaceholder{font-size:.78rem;color:#9aad9f}.themeDark .notebookTitleInput{color:#e0ede6}.themeDark .notebookTitleInput::placeholder{color:#3a5045}.themeDark .notebookTitleInput:focus{border-bottom-color:#4cc894}.themeDark .notebookDescriptionInput{color:#9ab5a2;border-bottom-color:#2a3e32}.themeDark .notebookMetaBar{border-color:#2a3e32}.notebookProgressBar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid #e8f0ea}.notebookProgressField{display:flex;align-items:center;gap:4px;font-size:.82rem;color:#6b8a77}.notebookProgressInput{width:64px;font-size:.85rem;padding:4px 6px;height:32px;border:1px solid #d0e4d8;border-radius:6px;background:#f3f8f5;color:inherit}.notebookProgressPct{font-size:.85rem;font-weight:600;color:#2a9d6e;margin-left:4px}.themeDark .notebookProgressBar{border-color:#2a3e32}.themeDark .notebookProgressField{color:#7fa08a}.themeDark .notebookProgressInput{background:#1a2820;border-color:#314139;color:#c8d8cc}.themeDark .notebookStatusSelect,.themeDark .notebookInlinePicker>input,.themeDark .notebookOrderLabel input{background:#1a2820;border-color:#314139;color:#c8d8cc}.studyTopicsView{display:grid;grid-template-columns:minmax(220px,300px) 1fr;gap:18px;height:calc(100vh - 120px);overflow:hidden}.studyRoadmapView{border:1px solid #dce8df;border-radius:14px;background:#fff;padding:18px}.studyRoadmapToolbar{display:flex;align-items:center;justify-content:space-between;gap:16px}.studyRoadmapToolbar h2{margin:4px 0}.studyRoadmapToolbar span{color:#6b7f72}.studyRoadmapFilters{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.studyRoadmapFilters select{border:1px solid #dce8df;border-radius:8px;background:transparent;color:inherit;padding:8px 10px}.roadmapLayoutToggle{display:inline-flex;align-items:center;overflow:hidden;border:1px solid #dce8df;border-radius:8px;background:#fff;flex-shrink:0}.roadmapLayoutToggle button{display:inline-flex;align-items:center;gap:5px;min-height:34px;border:0;border-right:1px solid #dce8df;background:transparent;color:#6b7f72;padding:0 10px;font-size:.82rem;font-weight:600;cursor:pointer;white-space:nowrap}.roadmapLayoutToggle button:last-child{border-right:0}.roadmapLayoutToggle button svg,.roadmapLayoutToggle button span{flex-shrink:0;color:inherit}.roadmapLayoutToggle button:hover{background:#f0f7f2;color:#2d5c3f}.roadmapLayoutToggle button.active{background:#e6f4ec;color:#2d5c3f}.roadmapSnapshotToggle{display:flex;align-items:center;gap:6px;border:1px solid #dce8df;border-radius:8px;background:transparent;color:#6b7f72;padding:8px 10px;font-size:.85rem;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s,border-color .15s}.roadmapSnapshotToggle:hover{background:#f0f7f2;color:#2d5c3f}.roadmapSnapshotToggle--active{background:#e6f4ec;border-color:#7ec89a;color:#2d5c3f}.studyRoadmapView .studyItemOpen{grid-template-columns:auto auto minmax(0,1fr);align-items:center}.studyItemText{display:grid;gap:4px;min-width:0}.studyRoadmapSearch{display:flex;align-items:center;gap:8px;margin-top:12px;border:1px solid #dce8df;border-radius:8px;padding:7px 10px;color:#6b7f72}.studyRoadmapSearch input{flex:1;border:none;background:transparent;color:inherit;font-size:.9rem;outline:none}.studyRoadmapSearch input::placeholder{color:#aabcb0}.roadmapZigzag{margin-top:18px;display:flex;flex-direction:column}.roadmapRow{display:flex;gap:3px}.roadmapRowConnector{height:28px;width:calc(100% / 3 + 3px);border-bottom:5px solid #d5e4da}.roadmapRowConnector--right{margin-left:auto;border-right:5px solid #d5e4da;border-bottom-right-radius:20px}.roadmapRowConnector--left{margin-right:auto;border-left:5px solid #d5e4da;border-bottom-left-radius:20px}.roadmapStep{flex:1;display:flex;flex-direction:column;align-items:center}.roadmapStep--empty{pointer-events:none}.roadmapBadge{width:30px;height:30px;border-radius:50%;border:2px solid currentColor;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;cursor:pointer;background:#fff;margin-bottom:-15px;position:relative;z-index:2;flex-shrink:0;transition:transform .1s}.roadmapBadge:hover:not(.disabled){transform:scale(1.12)}.roadmapBadge.disabled{cursor:default}.roadmapBadge--studied{color:#16a34a;border-color:#16a34a}.roadmapBadge--in-progress{color:#d97706;border-color:#d97706}.roadmapBadge--not-started{color:#6b7280;border-color:#9ca3af}.roadmapBadgeInput{width:44px;height:30px;border-radius:8px;border:2px solid #3a9d6e;font-size:.82rem;font-weight:700;text-align:center;outline:none;background:#fff;margin-bottom:-15px;position:relative;z-index:2}.roadmapArrow{width:100%;min-height:80px;padding:22px 26px 10px;border:none;cursor:pointer;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;text-align:center;transition:filter .15s}.roadmapArrow:hover{filter:brightness(.95)}.roadmapArrow--right{clip-path:polygon(0 0,calc(100% - 18px) 0,100% 50%,calc(100% - 18px) 100%,0 100%,18px 50%)}.roadmapArrow--left{clip-path:polygon(18px 0,100% 0,calc(100% - 18px) 50%,100% 100%,18px 100%,0 50%)}.roadmapArrow--studied{background:#dcfce7}.roadmapArrow--in-progress{background:#fef9c3}.roadmapArrow--not-started{background:#f3f4f6}.roadmapArrowIcon{color:#6b7280;line-height:1}.roadmapArrowTitle{font-size:.82rem;line-height:1.3;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.roadmapArrowMeta{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px;margin-top:2px}.roadmapArrowTopic{font-size:.7rem;color:#6b7280}.roadmapArrowBook,.roadmapArrowProgress{font-size:.68rem;color:#9ca3af}.roadmapCompactGrid{margin-top:14px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.roadmapCompactItem{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-width:0;min-height:64px;border:1px solid #dce8df;border-radius:8px;background:#fafafa;padding:8px}.roadmapCompactItem--studied{border-color:#a8d5b5;background:#f0faf3}.roadmapCompactItem--in-progress{border-color:#f5d87e;background:#fffdf0}.roadmapCompactItem--not-started{border-color:#dce8df;background:#fafafa}.roadmapCompactItem .roadmapBadge,.roadmapCompactItem .roadmapBadgeInput{margin-bottom:0}.roadmapCompactItem .roadmapItemActions{margin-top:0;flex-shrink:0}.roadmapCompactOpen{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:8px;min-width:0;border:0;background:transparent;color:inherit;padding:0;text-align:left;cursor:pointer}.roadmapCompactOpen:hover .roadmapCompactTitle{text-decoration:underline}.roadmapCompactIcon{display:inline-flex;color:#6b7280;line-height:1}.roadmapCompactText{display:grid;gap:3px;min-width:0}.roadmapCompactTitle{display:block;min-width:0;overflow:hidden;color:#1f2937;font-size:.84rem;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.roadmapCompactMeta{display:flex;align-items:center;gap:5px;min-width:0;flex-wrap:wrap}.roadmapCompactTopic{min-width:0;overflow:hidden;color:#6b7280;font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}.roadmapCompactProgress{display:block;overflow:hidden;color:#829489;font-size:.7rem;text-overflow:ellipsis;white-space:nowrap}@media (max-width: 1100px){.roadmapCompactGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}.roadmapBadge--snapshot{color:#16a34a;border-color:#16a34a;cursor:default;opacity:.8}.roadmapArrow--snapshot{background:#dcfce7;opacity:.72;cursor:default}.roadmapArrow--noninteractive{pointer-events:none}.roadmapSnapshotIcon{color:#9ca3af;line-height:1}.roadmapSnapshotDate{font-size:.64rem;color:#9ca3af;margin-top:2px}.roadmapRepeatBadge{position:absolute;top:-4px;right:calc(16.67% - 4px);background:#7c3aed;color:#fff;font-size:.6rem;font-weight:700;padding:1px 5px;border-radius:999px;z-index:3;pointer-events:none}.roadmapItemActions{display:flex;gap:4px;margin-top:4px;justify-content:center}.roadmapItemActions button{width:24px;height:24px;border-radius:50%;border:1px solid #dce8df;background:#fff;color:#6b7280;display:flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.roadmapItemActions button:hover{border-color:#3a9d6e;color:#3a9d6e}.roadmapItemActions button:first-child:hover{border-color:#16a34a;color:#16a34a}.roadmapItemActions button:last-child:hover{border-color:#dc2626;color:#dc2626}.roadmapConfirmOverlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:1000}.roadmapConfirmBox{background:#fff;border-radius:12px;padding:24px;max-width:420px;width:calc(100% - 32px);box-shadow:0 8px 32px #0000002e}.roadmapConfirmBox p{margin:0 0 16px;font-size:.93rem;line-height:1.5}.roadmapConfirmActions{display:flex;gap:8px;justify-content:flex-end}.roadmapConfirmActions button{padding:8px 16px;border-radius:8px;border:none;cursor:pointer;font-size:.88rem;font-weight:600}.roadmapConfirmActions button:first-child{background:#16a34a;color:#fff}.roadmapConfirmActions button:last-child{background:#f3f4f6;color:#374151}.roadmapEditBox{background:#fff;border-radius:12px;padding:24px;max-width:480px;width:calc(100% - 32px);box-shadow:0 8px 32px #0000002e;display:flex;flex-direction:column;gap:14px}.roadmapEditHeading{margin:0;font-size:1rem;font-weight:700;color:#1a2f22}.roadmapEditField{display:flex;flex-direction:column;gap:4px}.roadmapEditField label{font-size:.8rem;font-weight:600;color:#374151}.roadmapEditField input,.roadmapEditField textarea,.roadmapEditField select{border:1px solid #d1d5db;border-radius:8px;padding:8px 10px;font-size:.88rem;color:#111827;background:#fff;outline:none}.roadmapEditField input:focus,.roadmapEditField textarea:focus,.roadmapEditField select:focus{border-color:#3a9d6e;box-shadow:0 0 0 2px #3a9d6e26}.roadmapEditField textarea{resize:vertical;min-height:72px;font-family:inherit}@media (max-width: 680px){.studyRoadmapView{padding:12px}.studyRoadmapToolbar{flex-direction:column;align-items:flex-start}.studyRoadmapFilters{width:100%;justify-content:flex-start}.studyRoadmapFilters select,.topicCombobox,.roadmapLayoutToggle,.roadmapSnapshotToggle{width:100%}.roadmapLayoutToggle button{flex:1;justify-content:center}}.studyItemSnapshotBadge{display:inline-flex;align-items:center;justify-content:center;background:#7c3aed;color:#fff;font-size:.6rem;font-weight:700;padding:1px 5px;border-radius:999px;margin-left:2px;vertical-align:middle}.studyRoadmapList{display:flex;flex-direction:column;gap:6px;margin-top:14px}.studyRoadmapCard{display:flex;align-items:center;gap:10px;border-radius:10px;border:1.5px solid #dce8df;padding:8px 10px 8px 8px;transition:border-color .15s}.studyRoadmapCard--studied{border-color:#a8d5b5;background:#f0faf3}.studyRoadmapCard--in-progress{border-color:#f5d87e;background:#fffdf0}.studyRoadmapCard--not-started{border-color:#dce8df;background:#fafafa}.studyRoadmapOrderBadge{flex-shrink:0;min-width:28px;height:28px;padding:0 6px;border-radius:50%;border:1.5px solid #b5cebf;background:#fff;color:#3a5c47;font-size:.78rem;font-weight:700;cursor:pointer;display:flex;align-items:center;justify-content:center}.studyRoadmapOrderBadge:hover:not(.disabled){border-color:#3a9d6e;background:#eaf6ef}.studyRoadmapOrderBadge.disabled{cursor:default;opacity:.6}.studyRoadmapOrderInput{flex-shrink:0;width:52px;height:28px;padding:0 6px;border-radius:8px;border:1.5px solid #3a9d6e;font-size:.85rem;font-weight:700;text-align:center;outline:none}.studyRoadmapCardContent{flex:1;display:flex;align-items:center;gap:10px;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer;padding:0;min-width:0}.studyRoadmapCardContent:hover strong{text-decoration:underline}.studyRoadmapCardIcon{flex-shrink:0;color:#6b7f72}.studyRoadmapCardText{display:flex;flex-direction:column;gap:3px;min-width:0}.studyRoadmapCardText strong{font-size:.9rem}.studyRoadmapCardMeta{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.studyRoadmapCardTopic{font-size:.78rem;color:#6b7f72}.studyRoadmapCardBook,.studyRoadmapCardProgress{font-size:.75rem;color:#829489}.studyRoadmapRepeatBadge{background:#7c3aed;color:#fff;font-size:.62rem;font-weight:700;padding:1px 5px;border-radius:999px}.studyRoadmapCard .roadmapBadge{margin-bottom:0;flex-shrink:0}.studyAreaBadge{display:inline-flex;align-items:center;border-radius:4px;padding:1px 6px;font-size:.68rem;font-weight:600;letter-spacing:.01em;white-space:nowrap}.studyAreaBadge--technical{background:#e0eeff;color:#2563aa}.studyAreaBadge--human{background:#fce8ff;color:#7c3aad}.studyAreaBadge--spiritual{background:#fff4e0;color:#a05c00}.topicCombobox{position:relative}.topicComboboxInput{display:flex;align-items:center;gap:6px;border:1px solid #dce8df;border-radius:8px;padding:7px 10px;background:transparent;color:#6b7f72}.topicComboboxInput input{border:none;background:transparent;color:inherit;font-size:.9rem;outline:none;width:160px}.topicComboboxInput input::placeholder{color:#aabcb0}.topicComboboxList{position:absolute;top:calc(100% + 4px);left:0;right:0;min-width:200px;max-height:240px;overflow-y:auto;background:#fff;border:1px solid #dce8df;border-radius:8px;box-shadow:0 4px 16px #0000001a;list-style:none;padding:4px 0;margin:0;z-index:200}.topicComboboxList li{padding:8px 12px;font-size:.88rem;cursor:pointer}.topicComboboxList li:hover,.topicComboboxList li.active{background:#eaf6ef;color:#17694e}.topicComboboxList li.empty{color:#829489;cursor:default}.studyTopicsSidebar{border:1px solid #dce8df;border-radius:14px;background:#fff;padding:16px;display:flex;flex-direction:column;overflow-y:auto}.studyTopicDetail{border:1px solid #dce8df;border-radius:14px;background:#fff;padding:16px;overflow-y:auto}.studyTopicFilters{display:grid;gap:8px;margin-bottom:18px}.studyTopicNewButton{width:100%;margin-bottom:10px}.studyTopicExportButton{width:100%;margin-bottom:14px}.studyTopicFilters input,.studyTopicFilters select{width:100%;border:1px solid #dce8df;border-radius:8px;background:#fff;color:#17211b;padding:8px 10px}.studyAreaGroup+.studyAreaGroup{margin-top:18px}.studyAreaGroup h2{margin:0 0 8px;font-size:.78rem;text-transform:uppercase;color:#6b7f72}.studyAreaGroup h2,.studyAreaGroup button{display:flex;align-items:center;justify-content:space-between;gap:8px}.studyAreaGroup h2 small,.studyAreaGroup button small{color:#829489;font-size:.68rem}.studyAreaGroup button{width:100%;border:0;border-radius:8px;background:transparent;color:inherit;padding:9px 10px;text-align:left}.studyAreaGroup button.active{background:#e8f4ed;color:#17694e;font-weight:700}.studyTopicHeading span,.studyTopicHeading p{color:#6b7f72}.studyOrganizationProgress{display:flex;align-items:center;gap:8px;margin-top:6px}.studyOrganizationProgress>div{width:120px;height:5px;overflow:hidden;border-radius:999px;background:#dce8df}.studyOrganizationProgress>div span{display:block;height:100%;background:#4a8c6a}.studyOrganizationProgress small{color:#6b7f72;font-size:.72rem}.studyTopicHeadingRow,.studyTopicCreateActions{display:flex;align-items:flex-start;justify-content:space-between;gap:10px}.studyTopicCreateActions{flex:0 0 auto;align-items:center}.studyTopicMoreMenuWrapper{position:relative}.studyTopicMoreMenu{right:0;left:auto;min-width:220px}.toolsMenuGroupLabel{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#8aaa96;padding:2px 6px;display:block}.studyTopicItemSearch{flex:0 1 280px;min-width:220px;border:1px solid #dce8df;border-radius:8px;background:#fff;color:#17211b;padding:8px 10px}.studyTopicHeading h2{margin:4px 0}.studyItemsSearchView{display:grid;gap:18px}.studyItemsSearchBar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;max-width:760px}.studyItemsSearchBar input{width:100%;border:1px solid #dce8df;border-radius:8px;background:#fff;color:#17211b;padding:10px 12px}.studyItemTypesView{display:grid;gap:14px}.studyItemTypeList{display:grid;gap:10px;max-width:860px}.studyItemTypeCard{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid #dce8df;border-radius:12px;background:#fff;padding:14px}.studyItemTypeContent{display:grid;gap:5px;min-width:0}.studyItemTypeContent input{width:100%;max-width:360px;border:1px solid #dce8df;border-radius:8px;background:#fff;color:#17211b;padding:8px 10px}.studyItemTypeContent small{color:#6b7f72}.studyItemTypeActions{display:flex;gap:6px}.studyItemTypeActions button{display:grid;place-items:center;border:1px solid #dce8df;border-radius:8px;background:transparent;color:inherit;padding:7px}.studyItemTypeActions button:disabled{cursor:not-allowed;opacity:.45}.studyItemList{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:20px}@media (max-width: 980px){.studyItemList{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 680px){.studyItemList{grid-template-columns:1fr}}.studyItemCard{display:grid;grid-template-rows:minmax(0,1fr) auto;width:100%;border:1px solid #dce8df;border-radius:12px;background:#fff;color:inherit;overflow:hidden;text-align:left}.studyItemOpen{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;min-width:0;border:0;background:transparent;color:inherit;padding:16px;text-align:left}.studyItemCardIcon{display:grid;place-items:center;width:42px;height:42px;border-radius:10px;background:#e8f4ed;color:#17694e}.studyItemCardContent{display:grid;gap:7px;min-width:0}.studyItemCardContent>strong{font-size:1rem}.studyItemActions{display:flex;justify-content:flex-end;gap:4px;padding:10px 12px;border-top:1px solid #dce8df;background:#f8fbf9}.studyItemActions button{display:grid;place-items:center;flex:0 0 auto;border:1px solid #dce8df;border-radius:8px;background:transparent;color:inherit;padding:6px}.studyItemActions button:disabled{cursor:not-allowed;opacity:.35}.studyItemEditForm{display:grid;gap:14px;border-top:1px solid #dce8df;margin-top:20px;padding-top:20px}.studyItemCreateForm{border:1px solid #dce8df;border-radius:12px;margin-top:20px;padding:16px}.studyItemEditHeading,.studyItemEditActions{display:flex;align-items:center;justify-content:space-between;gap:10px}.studyItemEditHeading h3{margin:0}.studyItemEditHeading span{color:#6b7f72}.studyItemEditForm label{display:grid;gap:6px;color:#30473a;font-size:.82rem;font-weight:700}.studyItemEditForm input,.studyItemEditForm textarea,.studyItemEditForm select{width:100%;border:1px solid #dce8df;border-radius:8px;background:#fff;color:#17211b;padding:9px 10px;font:inherit}.studyItemTypePicker{width:min(260px,100%)}.studyItemEditColumns{display:grid;grid-template-columns:1fr 1fr;gap:10px}.studyItemOrderEditable{width:40px;background:#f0f7f2;border:1px solid #c7dcd0;border-radius:6px;color:#1a2820;font-weight:700;padding:2px 4px;margin-right:6px;text-align:center}.themeDark .studyItemOrderEditable{background:#1a2820;border-color:#314139;color:#c8d8cc}.studyItemCardTopline{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.studyItemTypeBadge{padding:3px 7px;border-radius:999px;background:#e8f4ed;color:#17694e;font-size:.7rem;font-weight:750}.studyItemTypeBadge.muted{width:fit-content;background:#edf2ef;color:#53675c}.studyItemTagRow{display:flex;flex-wrap:wrap;gap:5px;margin-top:3px}.studyItemTagBadge{padding:2px 8px;border-radius:999px;background:#eef0fb;color:#4a4d9c;font-size:.68rem;font-weight:700}.studyItemCardContent>small{color:#6b7f72;line-height:1.4}.studyItemCardProgress{display:grid;gap:5px;margin-top:4px}.studyItemCardProgress>span{height:6px;overflow:hidden;border-radius:999px;background:#dce8df}.studyItemCardProgress>span>span{display:block;height:100%;border-radius:inherit;background:#36ad7c}.studyItemCardProgress small{color:#6b7f72;font-size:.72rem;font-weight:700}.studyItemNotebookProgress{color:#6b7f72;font-size:.72rem;font-weight:700;margin-top:4px}.studyTopicDialog .studyItemEditForm{margin-top:0;padding-top:0;border-top:0}.studyStructureExportDialog{width:min(720px,calc(100vw - 32px))}.studyStructureExportBody{display:grid;gap:14px}.studyStructureExportBody label{display:grid;gap:7px;color:#30473a;font-size:.82rem;font-weight:700}.studyStructureExportBody textarea{width:100%;min-height:280px;resize:vertical;border:1px solid #dce8df;border-radius:8px;background:#fff;color:#17211b;padding:10px;font:.85rem/1.45 ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace}.studyStructureExportActions{display:flex;justify-content:flex-end}@media (max-width: 760px){.studyTopicsView{grid-template-columns:1fr}.studyRoadmapToolbar{align-items:stretch;flex-direction:column}.studyRoadmapFilters{display:grid}.topicComboboxInput input,.topicCombobox{width:100%}.roadmapRow{flex-direction:column;gap:6px}.roadmapRow--rtl{flex-direction:column}.roadmapArrow--right,.roadmapArrow--left{clip-path:none;border-radius:10px;min-height:60px}.roadmapStep{flex-direction:row;align-items:center;gap:10px}.roadmapBadge,.roadmapBadgeInput{margin-bottom:0;flex-shrink:0}.roadmapArrow{flex:1;flex-direction:row;text-align:left;padding:10px 14px;align-items:center;justify-content:flex-start}.roadmapArrowMeta{justify-content:flex-start}.roadmapRowConnector{display:none}.studyItemCard{min-width:0}.studyItemActions{padding:10px 12px}.studyItemEditColumns{grid-template-columns:1fr}.studyTopicHeadingRow{flex-direction:column}.studyTopicItemSearch{width:100%;flex:1 1 auto}.studyItemsSearchBar{grid-template-columns:1fr}.studyItemTypeCard{grid-template-columns:auto minmax(0,1fr)}.studyItemTypeActions{grid-column:1 / -1;justify-content:flex-end}}.themeDark .studyTopicsSidebar,.themeDark .studyTopicDetail,.themeDark .studyRoadmapView{border-color:#2d4035;background:#162119}.themeDark .roadmapRowConnector{border-color:#2d4035}.themeDark .roadmapBadge{background:#162119}.themeDark .roadmapBadge--studied{color:#4ade80;border-color:#4ade80}.themeDark .roadmapBadge--in-progress{color:#fbbf24;border-color:#fbbf24}.themeDark .roadmapBadge--not-started{color:#9ca3af;border-color:#4b5563}.themeDark .roadmapBadgeInput{background:#162119;color:#f1f7f3;border-color:#3a9d6e}.themeDark .roadmapArrow--studied{background:#14532d}.themeDark .roadmapArrow--in-progress{background:#422006}.themeDark .roadmapArrow--not-started{background:#1f2937}.themeDark .roadmapArrowIcon{color:#8aab96}.themeDark .roadmapArrowTitle{color:#f1f7f3}.themeDark .roadmapArrowTopic{color:#8aab96}.themeDark .roadmapLayoutToggle{border-color:#2d4035;background:#162119}.themeDark .roadmapLayoutToggle button{border-right-color:#2d4035;color:#8bb89a}.themeDark .roadmapLayoutToggle button:hover{background:#1a2e22;color:#a8d4b8}.themeDark .roadmapLayoutToggle button.active{background:#1a3326;color:#70d5aa}.themeDark .roadmapCompactItem{border-color:#2d4035;background:#1a2820}.themeDark .roadmapCompactItem--studied{border-color:#2a5c3a;background:#142219}.themeDark .roadmapCompactItem--in-progress{border-color:#6b5a18;background:#1e1a08}.themeDark .roadmapCompactItem--not-started{border-color:#2d4035;background:#1a2820}.themeDark .roadmapCompactIcon{color:#8aab96}.themeDark .roadmapCompactTitle{color:#f1f7f3}.themeDark .roadmapCompactTopic{color:#8aab96}.themeDark .roadmapCompactProgress{color:#7a9e88}.themeDark .studyRoadmapSearch{border-color:#2d4035;color:#8aab96}.themeDark .studyRoadmapSearch input{color:#f1f7f3}.themeDark .studyRoadmapSearch input::placeholder{color:#4a6654}.themeDark .studyRoadmapCard{border-color:#2d4035;background:#1a2820}.themeDark .studyRoadmapCard--studied{border-color:#2a5c3a;background:#142219}.themeDark .studyRoadmapCard--in-progress{border-color:#6b5a18;background:#1e1a08}.themeDark .studyRoadmapCard--not-started{border-color:#2d4035;background:#1a2820}.themeDark .studyRoadmapOrderBadge{border-color:#3a5c47;background:#162119;color:#8dd4af}.themeDark .studyRoadmapOrderBadge:hover:not(.disabled){border-color:#3a9d6e;background:#1e3a28}.themeDark .studyRoadmapOrderInput{background:#162119;color:#f1f7f3;border-color:#3a9d6e}.themeDark .studyRoadmapCardIcon,.themeDark .studyRoadmapCardTopic{color:#8aab96}.themeDark .studyAreaBadge--technical{background:#1a2d4a;color:#7db3e8}.themeDark .studyAreaBadge--human{background:#2d1a3a;color:#c98ae0}.themeDark .studyAreaBadge--spiritual{background:#2e2000;color:#e0a840}.themeDark .studyRoadmapCardText strong{color:#e8f5ee}.themeDark .studyRoadmapCard .roadmapBadge--in-progress{border-color:#d97706;color:#d97706}.themeDark .studyRoadmapCard .roadmapBadge--not-started{border-color:#6b7280;color:#9ca3af}.themeDark .studyRoadmapCard .roadmapBadge--studied{border-color:#16a34a;color:#16a34a}.themeDark .topicComboboxInput{border-color:#2d4035;color:#8aab96}.themeDark .topicComboboxInput input{color:#f1f7f3}.themeDark .topicComboboxInput input::placeholder{color:#4a6654}.themeDark .topicComboboxList{background:#162119;border-color:#2d4035}.themeDark .topicComboboxList li:hover,.themeDark .topicComboboxList li.active{background:#20382b;color:#70d5aa}.themeDark .studyRoadmapFilters select{border-color:#2d4035;background:transparent;color:#f1f7f3}.themeDark .roadmapSnapshotToggle{border-color:#2d4035;color:#8bb89a}.themeDark .roadmapSnapshotToggle:hover{background:#1a2e22;color:#a8d4b8}.themeDark .roadmapSnapshotToggle--active{background:#1a3326;border-color:#3d7a58;color:#70d5aa}.themeDark .studyTopicFilters input,.themeDark .studyTopicItemSearch,.themeDark .studyItemsSearchBar input,.themeDark .studyTopicFilters select{border-color:#2d4035;background:#101914;color:#f1f7f3}.themeDark .studyAreaGroup button.active{background:#20382b;color:#70d5aa}.themeDark .studyItemCard{border-color:#2d4035;background:#162119}.imageOverlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;display:flex;align-items:center;justify-content:center;z-index:9999;cursor:zoom-out}.imageOverlay img{max-width:90%;max-height:90%;border-radius:8px}.bookImagesActions{display:flex;gap:8px;flex-shrink:0}.cameraOverlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000bf;display:flex;align-items:center;justify-content:center;z-index:9999}.cameraDialog{background:#fff;border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:14px;width:min(520px,90vw)}.cameraDialogHeader{display:flex;align-items:center;justify-content:space-between}.cameraDialogHeader h3{margin:0}.cameraDeviceRow{display:flex;align-items:center;gap:8px}.cameraDeviceSelect{display:flex;align-items:center;gap:8px;font-size:.85rem;flex:1;min-width:0}.cameraDeviceSelect select{flex:1;min-width:0}.cameraPreview{width:100%;border-radius:8px;background:#000;aspect-ratio:4 / 3;object-fit:cover;display:block}.cameraActions{display:flex;gap:8px;justify-content:flex-end}.cameraIphoneHint{margin:0;font-size:.82rem;color:#6b7f72;line-height:1.4}.themeDark .cameraIphoneHint{color:#8aaa90}.themeDark .cameraDialog{background:#1a2b1e;border:1px solid #2d4035}.imageEditorOverlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000c;display:flex;align-items:center;justify-content:center;z-index:9999}.imageEditorDialog{background:#fff;border-radius:12px;padding:20px;display:flex;flex-direction:column;gap:14px;width:min(700px,95vw);max-height:92vh}.imageEditorHeader{display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.imageEditorHeader h3{margin:0}.imageEditorToolbar{display:flex;align-items:center;gap:8px;flex-shrink:0;flex-wrap:wrap}.imageEditorHint{color:#6b7f72;font-size:.82rem;margin-left:auto}.imageEditorCanvas{overflow:auto;display:flex;align-items:flex-start;justify-content:center;flex:1;min-height:120px}.imageEditorZoom{display:flex;gap:2px;border:1px solid #dce8df;border-radius:6px;padding:2px}.imageEditorImg{max-width:100%;max-height:60vh;display:block}.imageEditorActions{display:flex;gap:8px;justify-content:flex-end;flex-shrink:0}.themeDark .imageEditorDialog{background:#1a2b1e;border:1px solid #2d4035}.themeDark .imageEditorHint{color:#8aaa90}.themeDark .studyItemTypeCard{border-color:#2d4035;background:#162119}.themeDark .studyItemTypeContent input{border-color:#2d4035;background:#101914;color:#f1f7f3}.themeDark .studyItemTypeActions button{border-color:#2d4035}.themeDark .studyItemCardIcon,.themeDark .studyItemTypeBadge{background:#20382b;color:#70d5aa}.themeDark .studyItemTypeBadge.muted{background:#202d25;color:#b4c7bb}.themeDark .studyItemTagBadge{background:#262a44;color:#a6abe8}.themeDark .studyItemActions{border-color:#2d4035;background:#101914}.themeDark .studyItemOrderControls button,.themeDark .studyItemActions button,.themeDark .studyItemEditForm,.themeDark .studyItemCreateForm{border-color:#2d4035}.themeDark .studyItemEditForm input,.themeDark .studyItemEditForm textarea,.themeDark .studyItemEditForm select,.themeDark .studyStructureExportBody textarea{border-color:#2d4035;background:#101914;color:#f1f7f3}.themeDark .studyItemEditForm label,.themeDark .studyStructureExportBody label,.themeDark .bookFormGrid>label,.themeDark .bookFormSection,.themeDark .bookFormRow>label,.themeDark .bookOwnedLabel,.themeDark .bookReadingForm label{color:#c8d8cc}.themeDark .bookFormSectionDivider{color:#8fbfa2;border-bottom-color:#2e4438}.themeDark .bookCharCounter{color:#6a8a74}.themeDark .bookCharCounterWarn{color:#c09050}.themeDark .studyTopicFilters input::placeholder,.themeDark .studyTopicItemSearch::placeholder,.themeDark .studyItemsSearchBar input::placeholder,.themeDark .studyItemEditForm input::placeholder,.themeDark .studyItemEditForm textarea::placeholder,.themeDark .booksToolbar input::placeholder,.themeDark .bookForm input::placeholder,.themeDark .bookForm textarea::placeholder,.themeDark .readingQueueEditor input::placeholder,.themeDark .bookMetadataSearchControls input::placeholder{color:#8aa898}.booksView{display:grid;gap:18px}.booksTabs{display:inline-flex;width:fit-content;max-width:100%;gap:4px;border:1px solid #dce8df;border-radius:8px;background:#f5faf7;padding:4px}.booksTabs button{min-height:34px;border:0;border-radius:6px;background:transparent;color:#496254;padding:0 12px;font:inherit;font-weight:700}.booksTabs button.active{background:#fff;color:#1d3b2b;box-shadow:0 1px 4px #1e412d1f}.booksStatusTabs{display:inline-flex;width:fit-content;max-width:100%;gap:2px;border-bottom:2px solid #dce8df;padding-bottom:0;margin-bottom:4px}.booksStatusTabs button{border:0;background:transparent;color:#496254;padding:6px 14px;font:inherit;font-size:.9rem;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px}.booksStatusTabs button.active{color:#1d3b2b;font-weight:700;border-bottom-color:#3a7d56}.booksToolbar{display:flex;flex-wrap:wrap;gap:10px}.booksToolbar input,.booksToolbar select,.bookForm input,.bookForm select,.bookForm textarea{border:1px solid #dce8df;border-radius:8px;background:#fff;color:#17211b;padding:9px 10px;font:inherit}.booksToolbar input{min-width:min(320px,100%);flex:1}.booksGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.bookCard{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:start;gap:8px 12px;border:1px solid #dce8df;border-radius:12px;background:#fff;color:inherit;padding:14px;text-align:left}.bookCardInfo{display:grid;gap:4px;min-width:0}.bookCardInfo strong{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.25;overflow-wrap:anywhere}.bookCardInfo small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bookCard small{color:#6b7f72}.bookStatusBadge{grid-column:2;justify-self:start;min-height:auto;max-width:100%;border:1px solid transparent;border-radius:999px;padding:2px 8px;font-size:.72rem;font-weight:800;line-height:1.45}.bookStatus-to-read{border-color:#d9e7df;background:#edf5f0;color:#315644}.bookStatus-reading{border-color:#b9def8;background:#e9f5fd;color:#1d5a84}.bookStatus-read{border-color:#bddfca;background:#eaf7ee;color:#1f6b3a}.bookStatus-paused{border-color:#ead7a8;background:#fff7df;color:#7a560e}.bookStatus-abandoned{border-color:#f0c3bd;background:#fff0ee;color:#8a3329}.bookStatus-reference{border-color:#d8c7ef;background:#f4effc;color:#60408f}.bookTagStrip{display:flex;grid-column:2;flex-wrap:wrap;gap:5px}.bookTagStrip small{border:1px solid #dce8df;border-radius:999px;padding:2px 7px;background:#f3f8f5;color:#456251}.bookCardProgress{grid-column:2;justify-self:end}.bookCardCover{grid-row:1 / span 4;width:44px;height:62px;border-radius:5px;object-fit:cover}.readingQueuesSection{display:grid;grid-template-rows:auto 1fr;height:calc(100vh - 120px);overflow:hidden;gap:14px;border:1px solid #dce8df;border-radius:14px;background:#fff;padding:18px}.readingQueuesHeading,.readingQueueEditor,.readingQueueAddBook{display:flex;align-items:center;gap:10px}.readingQueueAddBook{position:relative}.bookPickerMenu{position:absolute;top:calc(100% + 4px);left:0;min-width:100%;max-width:480px;background:#fff;border:1px solid #c5dece;border-radius:10px;box-shadow:0 4px 20px #0000001f;z-index:100;max-height:260px;overflow-y:auto;display:flex;flex-direction:column}.bookPickerMenu button{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:9px 14px;border:none;border-bottom:1px solid #edf4ef;background:none;cursor:pointer;text-align:left;color:#1c3226;font-size:.88rem;line-height:1.3}.bookPickerMenu button:last-child{border-bottom:none}.bookPickerMenu button:hover,.bookPickerMenu button:focus{background:#f0f8f3;outline:none}.bookPickerMenu button small{color:#6b7f72;font-size:.76rem}.bookPickerEmpty{padding:10px 14px;color:#6b7f72;font-size:.85rem}.readingQueuesHeading{justify-content:space-between}.readingQueuesHeading h2{margin:0}.readingQueuesHeading small,.readingQueueList small,.readingQueueItems small{color:#6b7f72}.readingQueuesLayout{display:grid;grid-template-columns:minmax(220px,300px) 1fr;gap:14px;overflow:hidden;min-height:0}.readingQueueList,.readingQueueDetail{overflow-y:auto;display:flex;flex-direction:column;gap:8px}.readingQueueItems{display:grid;gap:8px}.readingQueueList>div,.readingQueueItems article{display:flex;align-items:center;gap:8px;border:1px solid #dce8df;border-radius:9px;padding:8px}.readingQueueList>div.active{border-color:#4a8c6a;background:#eef6f1}.readingQueueList>div.archived{opacity:.65}.showArchivedToggle{display:flex;align-items:center;gap:8px;padding:12px 10px;font-size:.85rem;color:#6b7f72;cursor:pointer;border-top:1px solid #dce8df;margin-top:8px}.readingQueueList>div>button,.readingQueueItems article>div{display:grid;flex:1;gap:2px;border:0;background:transparent;color:inherit;text-align:left}.readingQueueList span,.readingQueueItems article>span:last-child{display:flex;gap:3px}.readingQueueList span button,.readingQueueItems article>span button{border:0;background:transparent;color:inherit;padding:4px}.readingQueueEditor input,.readingQueueAddBook select,.readingQueueAddBook input,.readingQueueItems select{min-width:0;border:1px solid #dce8df;border-radius:8px;background:#fff;color:#17211b;padding:8px}.readingQueueEditor input,.readingQueueAddBook select,.readingQueueAddBook input{flex:1}.readingQueueItems article{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto}.readingQueueDialog{max-width:520px}.readingQueueDialogBody label{display:grid;gap:6px}.readingQueueDialogBody input,.readingQueueDialogBody textarea{width:100%;border:1px solid #dce8df;border-radius:8px;background:#fff;color:#17211b;padding:9px 10px;font:inherit}.bookForm{display:grid;gap:16px;border:1px solid #dce8df;border-radius:14px;background:#fff;padding:18px}.bookFormOverlay{align-items:flex-start;overflow-y:auto}.bookFormDialog{width:min(1100px,100%);max-width:1100px;max-height:none;overflow:visible}.bookFormTabs{display:flex;flex-wrap:wrap;gap:4px;row-gap:0;padding:0 18px;border-bottom:1px solid #e5ede8}.bookFormTab{padding:8px 16px;border:none;border-bottom:2px solid transparent;background:none;cursor:pointer;font-size:14px;font-weight:500;color:#4a6655;border-radius:6px 6px 0 0;transition:color .15s,border-color .15s}.bookFormTab:hover{color:#1e4030;background:#f3f7f4}.bookFormTab.active{color:#2d6a4f;border-bottom-color:#2d6a4f}.bookAnnotationsTab{display:flex;flex-direction:column;gap:20px;padding:0 18px 4px}.bookAnnotationsProgress h3,.bookAnnotationsStudySessions h3{font-size:14px;font-weight:600;margin:0 0 10px;color:#334}.bookAnnotationsProgressFields{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.bookAnnotationsProgressFields label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#445}.bookAnnotationsProgressFields input{width:100px;padding:6px 8px;border:1px solid #cdd;border-radius:6px;font-size:14px}.bookAnnotationsProgressPct{font-size:20px;font-weight:700;color:#2d6a4f;padding-top:16px}.bookAnnotationsNoStudyItem{color:#889;font-size:13px}.bookAnnotationsEditor{display:flex;flex-direction:column;gap:4px;flex:1}.bookAnnotationsEditorHeader{display:flex;justify-content:flex-end;min-height:18px}.bookPendingReadingPanel{display:grid;gap:10px;padding:12px 14px;background:var(--bg-secondary, #f4f8f5);border:1px solid var(--border-color, #dce8df);border-radius:8px;margin-top:6px}.bookPendingReadingPanel strong{display:block;font-size:13px;margin-bottom:2px}.bookPendingReadingPanel small{display:block;color:#6b7f72;font-size:12px;margin-bottom:4px}.bookPendingReadingFields{display:flex;flex-wrap:wrap;gap:10px}.bookPendingReadingFields label{display:flex;flex-direction:column;gap:3px;font-size:12px;color:#6b7f72}.bookPendingReadingFields input,.bookPendingReadingFields select{font-size:13px;padding:5px 8px;border:1px solid #c8d8cc;border-radius:6px;background:var(--bg, #fff);color:inherit}.bookTabSaveFirst{color:#6b7f72;font-size:13px;padding:16px 0;text-align:center}.bookReadingsTab,.bookImagesTab,.bookLinksTab,.bookHistoryTab{display:grid;gap:12px;padding:4px 0}.bookPersonalReadingSection{display:grid;gap:12px;padding-bottom:8px;border-bottom:1px solid #dce8df}.bookReadingsHeader{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.bookReadingsSummary{font-size:13px;color:#6b7f72}.bookReadingsHeaderActions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap}.bookReadingEditForm{display:grid;gap:10px}.bookReadingEditFields{display:flex;flex-wrap:wrap;gap:10px}.bookReadingEditFields label,.bookReadingNotesLabel{display:flex;flex-direction:column;gap:3px;font-size:12px;color:#6b7f72}.bookReadingNotesLabel{width:100%}.bookReadingNotesLabel textarea{resize:vertical;font-size:13px;padding:6px 8px;border:1px solid #c8d8cc;border-radius:6px;background:var(--bg, #fff);color:inherit}.bookReadingEditFields input,.bookReadingEditFields select{font-size:13px;padding:5px 8px;border:1px solid #c8d8cc;border-radius:6px;background:var(--bg, #fff);color:inherit;min-width:100px}.bookReadingEditActions{display:flex;justify-content:flex-end;gap:8px}.bookReadingsEmpty{color:#6b7f72;font-size:13px;text-align:center;padding:16px 0}.bookReadingsList{list-style:none;margin:0;padding:0;display:grid;gap:8px}.bookReadingItem{display:grid;gap:8px;padding:10px;border:1px solid var(--border-color, #dce8df);border-radius:8px;background:var(--bg-secondary, #f4f8f5)}.bookReadingItemHeader{display:flex;align-items:flex-start;gap:8px}.bookReadingItemMain{display:flex;align-items:center;gap:8px;flex-wrap:wrap;flex:1;min-width:0}.bookReadingItemDates{font-size:13px;font-weight:500}.bookReadingItemFormat{font-size:12px;color:#4b7a56;background:#e3f0e7;border-radius:4px;padding:1px 6px}.bookReadingItemHours{font-size:12px;color:#6b7f72}.bookReadingItemNotes{font-size:12px;color:#6b7f72;margin:0;width:100%}.bookReadingItemActions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:2px;flex-shrink:0}.dangerIconButton{color:#c0392b}.bookNestedDialogOverlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3200;display:flex;align-items:center;justify-content:center;padding:18px;background:#0f1e145c}.bookNestedDialog{width:min(720px,100%);max-height:min(84vh,720px);overflow:auto;display:grid;gap:14px;padding:18px;border:1px solid #dce8df;border-radius:8px;background:#fff;box-shadow:0 22px 60px #192d1e38}.bookNestedDialogHeader{display:flex;align-items:center;justify-content:space-between;gap:12px}.bookNestedDialogHeader h3{margin:0;font-size:1.05rem;color:#1e3b2b}.dangerIconButton:hover{background:#fde8e8}.bookHistoryEmpty{color:#6b7f72;font-size:13px;text-align:center;padding:16px 0}.bookHistoryList{list-style:none;margin:0;padding:0;display:grid;gap:0}.bookHistoryItem{display:flex;gap:12px;padding:8px 0;position:relative}.bookHistoryItem:before{content:"";position:absolute;left:6px;top:0;bottom:0;width:1px;background:var(--border-color, #dce8df)}.bookHistoryItem:first-child:before{top:50%}.bookHistoryItem:last-child:before{bottom:50%}.bookHistoryDot{width:13px;height:13px;border-radius:50%;background:#4b7a56;border:2px solid #fff;outline:1px solid #4b7a56;flex-shrink:0;margin-top:3px;position:relative;z-index:1}.bookHistoryContent{display:grid;gap:2px}.bookHistoryLabel{font-size:13px}.bookHistoryDate{font-size:11px;color:#6b7f72}.bookMetadataSearch{display:grid;gap:10px}.bookMetadataSearchControls{display:flex;gap:8px}.bookMetadataSearchControls input{flex:1}.bookMetadataResults{display:grid;max-height:320px;overflow:auto;border:1px solid #dce8df;border-radius:10px}.bookMetadataResults>button{display:grid;grid-template-columns:40px 1fr auto;align-items:center;gap:10px;border:0;border-bottom:1px solid #dce8df;background:transparent;color:inherit;padding:10px;text-align:left}.bookMetadataResults>button:last-child{border-bottom:0}.bookMetadataResults img{width:36px;height:50px;border-radius:4px;object-fit:cover}.bookMetadataResults span{display:grid;gap:3px}.bookMetadataResults small{color:#6b7f72}.notebookSimpleSessions{display:grid;gap:10px;border:1px solid #dce8df;border-radius:10px;padding:12px}.studyStreakBlock,.readingStreakBlock{display:grid;gap:8px}.streakSectionLabel{display:flex;align-items:center;gap:5px;margin:0;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:#6b8070}.streakFirstDate{font-weight:400;letter-spacing:0;text-transform:none;color:#8a9e92;margin-left:4px}.streakAsterisk{font-size:.75em;vertical-align:super;color:#9a6d45;margin-left:1px}.streakPeriodHint{font-size:11px;color:#9a6d45;white-space:nowrap;align-self:center}.notebookSimpleSessions>div:first-child{display:grid;gap:3px}.notebookSimpleSessions small,.notebookSimpleSessionHistory{color:#6b7f72}.notebookSimpleSessionForm{display:flex;gap:8px}.notebookSimpleSessionForm input{width:90px;height:36px;padding:0 10px;border:1px solid #d4ddd7;border-radius:8px;background:#fff}.notebookSimpleSessionHistory{display:grid;gap:4px;font-size:.85rem}.bookFormGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.bookFormGrid>label{display:grid;gap:6px;color:#30473a;font-size:.82rem;font-weight:700}.bookInfoIdentityRow{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:16px}.bookInfoIdentityNoCover{grid-template-columns:minmax(0,1fr)}.bookInfoCoverButton{width:182px;height:208px;border:1px solid #dce8df;border-radius:10px;padding:0;background:#f5faf7;cursor:zoom-in;overflow:hidden}.bookInfoCoverButton img{display:block;width:100%;height:100%;object-fit:cover}.bookInfoTitleFields{display:grid;gap:12px;min-width:0}.bookInfoTitleFields label{display:grid;gap:6px;color:#30473a;font-size:.82rem;font-weight:700}.bookCheckboxLabel{display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important}.bookWideField{grid-column:1 / -1}.bookFormSection{display:grid;gap:6px;grid-column:1 / -1;color:#30473a;font-size:.82rem;font-weight:700}.bookFormats{display:flex;flex-wrap:wrap;gap:12px}.bookFormats label{display:flex;align-items:center;gap:5px;line-height:1.2}.bookForm .bookFormats input[type=checkbox],.bookSessionCheckbox input[type=checkbox]{flex:0 0 16px;width:16px;min-width:16px;height:16px;margin:0;padding:0;border:initial;border-radius:3px;background:initial;color:initial;accent-color:#2d8f5b;cursor:pointer}.bookFormSectionDivider{font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.08em;color:#5a7a64;padding:8px 0 2px;border-bottom:1px solid #dce8df}.bookLabelHead{display:flex;justify-content:space-between;align-items:baseline;gap:8px}.bookCharCounter{font-weight:400;font-size:.72rem;color:#9aad9f}.bookCharCounterWarn{color:#c07b2a}.bookFormRow{display:flex;flex-wrap:wrap;gap:12px;align-items:start}.bookFormRow>label{display:grid;gap:6px;color:#30473a;font-size:.82rem;font-weight:700;min-width:0}.bookIsbnLabel{width:130px;flex-shrink:0}.bookSmallNumLabel{width:100px;flex-shrink:0}.bookReadingFieldStatus{flex:2 1 140px;min-width:0}.bookReadingFieldNarrow{flex:1 1 100px;min-width:0}.bookOrderFormField{display:flex;flex-direction:column;gap:4px;font-size:.85rem;color:#344e3c}.bookOwnershipSection{display:flex;flex-direction:column;gap:10px}.bookOwnershipRow{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.bookOwnedLabel{font-size:.82rem;font-weight:700;color:#30473a;white-space:nowrap}.bookImportNotice{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid #d7eadf;border-radius:8px;background:#f1f8f4;color:#214532;padding:10px}.bookImportNotice>span{flex:1}.bookImagesSection,.bookLinkSection{display:grid;gap:12px}.bookQueueSection{display:grid;gap:12px;border-top:1px solid #dce8df;padding-top:16px}.bookQueueSection h3{margin:0 0 4px}.bookQueueSection small{color:#6b7f72}.bookQueueMemberships{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.bookQueueChip{display:flex;align-items:center;gap:4px;background:#e8f3ec;border:1px solid #c5dece;border-radius:20px;padding:3px 6px 3px 10px;font-size:.8rem;color:#2c4a36}.bookQueueChip button{display:flex;align-items:center;background:none;border:none;cursor:pointer;color:#7a9a86;padding:2px;border-radius:50%}.bookQueueChip button:hover{color:#c0392b}.bookQueueChip .bookOrderBtn{border-radius:4px;padding:2px 5px;min-width:24px}.bookQueueChip .bookOrderInput{width:40px;font-size:.75rem}.bookLinkedNotes{display:grid;gap:12px;border-top:1px solid #dce8df;padding-top:16px}.bookReadingSection{display:grid;justify-items:start;gap:12px;border-top:1px solid #dce8df;padding-top:16px}.bookReadingForm{display:grid;width:100%;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.bookReadingForm label{display:grid;gap:5px;color:#30473a;font-size:.82rem;font-weight:700}.bookReadingForm input,.bookReadingForm select,.bookReadingForm textarea{min-width:0;font-size:13px;padding:6px 8px;border:1px solid #c8d8cc;border-radius:6px;background:#fff;color:inherit}.bookReadingForm textarea{resize:vertical;font-family:inherit}.bookReadingPageRow{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-width:0}.bookReadingHistory{display:grid;width:100%;gap:8px}.bookReadingHistory article{display:flex;align-items:flex-start;gap:12px;border:1px solid #dce8df;border-radius:8px;padding:9px 10px}.bookReadingHistoryContent{flex:1;display:grid;gap:3px}.bookReadingHistory small{color:#6b7f72}.bookSessionCheckbox{display:flex;align-items:center;justify-content:flex-start;gap:8px;width:fit-content;font-size:.82rem;font-weight:700;color:#30473a;cursor:pointer}.bookReadingStudyItemSelect{display:grid;gap:5px;color:#30473a;font-size:.82rem;font-weight:700}.bookReadingStudyItemSelect select{min-width:0;font-size:13px;padding:6px 8px;border:1px solid #c8d8cc;border-radius:6px;background:#fff;color:inherit}.bookLinkSection h3{margin:0 0 4px}.bookLinkSection small{color:#6b7f72}.bookLinkControls{display:flex;flex-wrap:wrap;gap:8px}.bookImagesHeading{display:flex;align-items:center;justify-content:space-between;gap:12px}.bookImagesHeading h3{margin:0 0 4px}.bookImagesHeading small{color:#6b7f72}.disabledButton{cursor:not-allowed;opacity:.55}.bookImagesGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}.bookImageCard{display:grid;gap:8px;border:1px solid #dce8df;border-radius:10px;padding:8px}.bookImageCard.primaryBookImage{border-color:#4f8a62;box-shadow:0 0 0 1px #4f8a62}.bookImageCard img{width:100%;height:160px;border-radius:6px;object-fit:cover}.bookImageCard div{display:flex;justify-content:flex-end;gap:4px;flex-wrap:wrap}.bookTable{width:100%;border-collapse:collapse;border:1px solid #dce8df;border-radius:12px;overflow:hidden;font-size:.9rem}.bookTable thead tr{background:#f5faf7;border-bottom:1px solid #dce8df}.bookTable th{padding:9px 12px;text-align:left;font-size:.78rem;font-weight:700;color:#496254;white-space:nowrap}.bookTable tbody tr{border-bottom:1px solid #eef3f0;cursor:pointer}.bookTable tbody tr:last-child{border-bottom:none}.bookTable tbody tr:hover{background:#f9fcfa}.bookTable td{padding:9px 12px;vertical-align:middle}.bookOrderCol{width:52px}.bookOrderCell{text-align:center}.bookOrderBtn{min-width:32px;border:0;background:transparent;color:#6b7f72;font:inherit;font-size:.85rem;cursor:pointer;padding:2px 5px;border-radius:4px}.bookOrderBtn:hover{background:#edf5f0;color:#1d3b2b}.bookOrderInput{width:52px;border:1px solid #4a8c6a;border-radius:4px;background:#fff;color:#17211b;padding:2px 5px;font:inherit;text-align:center}.bookTableName strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:650px}.bookTableSubtitle{color:#6b7f72;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem}.bookNarrowCol{width:1%;white-space:nowrap}.bookTableAuthor{color:#6b7f72;max-width:200px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bookOwnedCell{white-space:nowrap;color:#496254;font-size:.82rem}.bookTableActions{text-align:right;white-space:nowrap}.registrationTableWrap{width:100%;margin-top:14px;overflow-x:auto}.registrationTable{min-width:620px}.registrationTable tbody tr{cursor:default}.registrationTable tbody tr:hover{background:#f9fcfa}.registrationClickableRow{cursor:pointer}.registrationActionsHeader{text-align:right}.registrationSearchInput{min-height:42px;width:min(320px,100%);margin-left:auto;border:1px solid #dce8df;border-radius:8px;background:#fff;color:#17211b;padding:0 12px;font:inherit}.registrationEmptyCell{color:#6b7f72;font-weight:600;text-align:center}.registrationChildren{display:grid;gap:14px;margin-top:18px}.registrationChildrenHeader{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px}.registrationChildrenHeader h2{overflow-wrap:anywhere}.registrationChildrenEmpty{margin-top:0}@media (max-width: 680px){.registrationChildrenHeader{grid-template-columns:1fr;justify-items:start}.registrationSearchInput{margin-left:0}}.registrationSubtle{display:block;margin-top:2px;color:#6b7f72;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.78rem;font-weight:500}.queueItemsSearch{display:flex;gap:8px}.queueItemsSearch input{flex:1;min-width:0;border:1px solid #dce8df;border-radius:8px;background:#fff;color:#17211b;padding:7px 10px;font:inherit}.queueStatusSelect{min-width:0;border:1px solid #dce8df;border-radius:6px;background:#fff;color:#17211b;padding:4px 6px;font:inherit;font-size:.82rem}.dangerIconLike{border:0;background:transparent;color:#9b3a2f;padding:4px}.dangerIconLike:hover{color:#7a2219}.bulkProgressOverlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:48;display:flex;align-items:center;justify-content:center;background:#00000059}.bulkProgressDialog{background:#fff;border:1px solid #dce8df;border-radius:14px;padding:24px;width:420px;max-width:calc(100vw - 40px);display:flex;flex-direction:column;gap:14px;box-shadow:0 8px 32px #0000002e}.bulkProgressHeader{display:flex;align-items:center;justify-content:space-between}.bulkProgressHeader h3{margin:0;font-size:1rem}.bulkProgressBar{height:8px;background:#e8f0eb;border-radius:4px;overflow:hidden}.bulkProgressFill{height:100%;background:#4a8c6a;border-radius:4px;transition:width .25s ease}.bulkProgressCount{margin:0;font-size:.88rem;color:#4a6e55}.bulkProgressSucceeded{color:#2d6a4f}.bulkProgressFailed{color:#9b3a2f}.bulkProgressRunning{margin:0;font-size:.82rem;color:#6b7f72;font-style:italic}.bulkProgressErrors{display:flex;flex-direction:column;gap:4px;max-height:240px;overflow-y:auto}.bulkProgressErrorsLabel{margin:0 0 4px;font-size:.82rem;color:#6b7f72}.bulkProgressErrorItem{display:flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;padding:7px 10px;border:1px solid #f5c6c0;border-radius:8px;background:#fdf3f2;color:#7a2219;font:inherit;font-size:.88rem;cursor:pointer;transition:background .15s}.bulkProgressErrorItem:hover{background:#fae8e6}.bulkProgressErrorInfo{display:flex;flex-direction:column;gap:2px;min-width:0}.bulkProgressErrorTitle{font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bulkProgressErrorReason{font-size:.78rem;opacity:.8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bulkProgressErrorItem.bulkProgressErrorReviewed{border-color:#b8d4c0;background:#eef6f1;color:#2d5a3d}.bulkProgressReviewedBadge{font-size:.75rem;color:#4a8c6a;background:#d4ead9;border-radius:10px;padding:1px 8px;white-space:nowrap;flex-shrink:0}.bulkProgressRetry{margin-top:12px;display:flex;justify-content:flex-end}.bulkProgressRetryBtn{background:#2d6a4f;color:#fff;border:none;border-radius:6px;padding:7px 16px;font-size:.88rem;font-weight:500;cursor:pointer}.bulkProgressRetryBtn:hover{background:#1e4d38}.booksResultCount{font-size:.82rem;color:#6b7f72;padding:2px 2px 6px}.bookBulkCol,.bookBulkCell{width:1%;white-space:nowrap;padding-right:4px}.bookBulkCell{text-align:center}.bookRowSelected{background:#eef8f1!important}.bookBulkBar{position:fixed;bottom:24px;left:50%;transform:translate(-50%);display:flex;align-items:center;gap:8px;padding:10px 16px;background:#fff;border:1px solid #4a8c6a;border-radius:24px;box-shadow:0 4px 20px #4a8c6a40;flex-wrap:nowrap;white-space:nowrap;z-index:200;min-width:0;max-width:calc(100vw - 80px)}.bookBulkCount{font-weight:600;font-size:.9rem;color:#2d6a4f;margin-right:4px}.bookBulkActionSelect{min-width:0;flex:0 1 220px;border:1px solid #dce8df;border-radius:8px;background:#fff;color:#17211b;padding:6px 8px;font:inherit;font-size:.88rem}.bookDupeWarn{display:block;color:#b45309;font-size:.78rem;margin-top:2px}.bookOwnedNone{color:#9b8b6a;font-size:.8rem;font-style:italic}.bookImageSize{display:block;color:#6b7f72;font-size:.75rem;text-align:center;margin-top:2px}.bookMetadataInputWrap{position:relative;flex:1;display:flex;align-items:center}.bookMetadataInputWrap input{flex:1}.bookMetadataCounter{position:absolute;right:8px;pointer-events:none;font-size:.75rem;color:#8aad97}.metricsView{display:flex;flex-direction:column;gap:16px;padding:4px 0}.metricsFilterRow{display:flex;align-items:center;gap:10px}.metricsFilterRow select{border:1px solid #dce8df;border-radius:8px;padding:6px 10px;font:inherit;font-size:.9rem;background:#fff;color:#17211b}.metricsFilterCount{font-size:.85rem;color:#6b7f72}.metricsSummaryGrid{display:flex;flex-wrap:wrap;gap:8px}.metricCard{display:flex;flex-direction:column;align-items:center;gap:2px;padding:10px 16px;border:1px solid #dce8df;border-radius:10px;background:#f7fbf8;min-width:80px;cursor:default}button.metricCard{cursor:pointer;transition:border-color .15s}button.metricCard:hover{border-color:#4a8c6a}.metricCardActive{border-color:#4a8c6a!important;background:#eef6f1!important}.metricCard strong{font-size:1.25rem;color:#2d6a4f}.metricCard span{font-size:.78rem;color:#6b7f72;text-align:center}.metricsDetailGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}.metricList{display:flex;flex-direction:column;gap:4px;border:1px solid #dce8df;border-radius:10px;padding:12px}.metricList h4{margin:0 0 6px;font-size:.85rem;color:#4a6e55;text-transform:uppercase;letter-spacing:.04em}.metricItem{display:flex;justify-content:space-between;align-items:center;padding:3px 0;font-size:.88rem;border-bottom:1px solid #f0f5f2}.metricItemCount{font-weight:600;color:#2d6a4f;font-size:.85rem}.metricShowMore{border:0;background:transparent;color:#4a8c6a;font-size:.8rem;padding:4px 0;cursor:pointer;text-align:left}.metricShowMore:hover{color:#2d6a4f}@media (max-width: 760px){.bookFormGrid{grid-template-columns:1fr}.bookFormGrid .bookWideField{grid-column:auto}.bookInfoIdentityRow{grid-template-columns:1fr}.bookInfoCoverButton{width:100%;max-width:182px}.bookLinkSection{align-items:stretch;flex-direction:column}.bookReadingForm{grid-template-columns:repeat(2,minmax(0,1fr))}.bookReadingItemHeader{flex-direction:column}.bookReadingItemActions{justify-content:flex-start;width:100%}.bookImportNotice{align-items:stretch;flex-direction:column}.readingQueuesLayout,.readingQueueItems article{grid-template-columns:1fr}.readingQueuesHeading,.readingQueueEditor,.readingQueueAddBook{align-items:stretch;flex-direction:column}.booksTabs{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr))}.booksTabs button{min-width:0}.bookFormDialog{margin-top:24px}.bookOwnershipRow{flex-direction:column}.bookFormats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%}.bookFormats label{min-width:0}}.themeDark .bookCard,.themeDark .bookForm,.themeDark .readingQueuesSection,.themeDark .bookImagesSection,.themeDark .bookLinkSection,.themeDark .bookQueueSection,.themeDark .bookLinkedNotes,.themeDark .bookSessionCheckbox{color:#c8d8cc}.themeDark .bookReadingSection,.themeDark .bookReadingHistory article,.themeDark .bookImageCard,.themeDark .bookMetadataResults,.themeDark .bookMetadataResults>button{border-color:#2d4035;background:#162119}.themeDark .bookQueueSection small,.themeDark .bookQueueSection h3{color:#c8d8cc}.themeDark .bookQueueChip{background:#1e3228;border-color:#3a5a45;color:#b8d4c0}.themeDark .bookQueueChip button{color:#6a9a7a}.themeDark .bookQueueChip .bookOrderBtn{color:#8fba9f}.themeDark .bookTagStrip small,.themeDark .bookImportNotice{border-color:#2d4035;background:#1d2d23;color:#b9dcc6}.themeDark .readingQueueList>div,.themeDark .readingQueueItems article,.themeDark .readingQueueEditor input,.themeDark .readingQueueAddBook select,.themeDark .readingQueueAddBook input,.themeDark .readingQueueItems select,.themeDark .readingQueueDialogBody input,.themeDark .readingQueueDialogBody textarea{border-color:#2d4035}.themeDark .readingQueueEditor input,.themeDark .readingQueueAddBook select,.themeDark .readingQueueAddBook input,.themeDark .readingQueueItems select,.themeDark .readingQueueDialogBody input,.themeDark .readingQueueDialogBody textarea{background:#101914;color:#f1f7f3}.themeDark .bookPickerMenu{background:#1a2c22;border-color:#2d4035;box-shadow:0 4px 20px #0006}.themeDark .bookPickerMenu button{color:#c8d8cc;border-bottom-color:#243328}.themeDark .bookPickerMenu button:hover,.themeDark .bookPickerMenu button:focus{background:#1e3228}.themeDark .bookPickerMenu button small,.themeDark .bookPickerEmpty{color:#8aad97}.themeDark .booksTabs{border-color:#2d4035;background:#101914}.themeDark .booksTabs button{color:#b4c7bb}.themeDark .booksTabs button.active{background:#1d2d23;color:#dff4e7;box-shadow:none}.themeDark .booksStatusTabs{border-bottom-color:#2d4035}.themeDark .booksStatusTabs button{color:#8fba9f}.themeDark .booksStatusTabs button.active{color:#dff4e7;border-bottom-color:#5aad7a}.themeDark .readingQueueList>div.active{background:#1e3828}.themeDark .notebookSimpleSessions{border-color:#2d4035}.themeDark .notebookSimpleSessions small,.themeDark .notebookSimpleSessionHistory{color:#a9bdb1}.themeDark .notebookSimpleSessionForm input{border-color:#3a4d43;background:#101914;color:#f1f7f3}.themeDark .booksToolbar input,.themeDark .booksToolbar select,.themeDark .bookForm input,.themeDark .bookForm select,.themeDark .bookForm textarea{border-color:#2d4035;background:#101914;color:#f1f7f3}.themeDark .bookTable{border-color:#2d4035}.themeDark .bookTable thead tr{background:#1a2a20;border-bottom-color:#2d4035}.themeDark .bookTable th{color:#8fba9f}.themeDark .bookTable tbody tr{border-bottom-color:#1e2e24}.themeDark .bookTable tbody tr:hover{background:#1a2a20}.themeDark .bookOrderBtn{color:#8fba9f}.themeDark .bookOrderBtn:hover{background:#1e3828;color:#dff4e7}.themeDark .bookOrderInput,.themeDark .queueItemsSearch input,.themeDark .queueStatusSelect{border-color:#2d4035;background:#101914;color:#f1f7f3}.themeDark .bookTableAuthor,.themeDark .registrationSubtle{color:#8fba9f}.themeDark .registrationSearchInput{border-color:#2d4035;background:#101914;color:#f1f7f3}.themeDark .registrationEmptyCell,.themeDark .bookOwnedCell{color:#8fba9f}.themeDark .bulkProgressDialog{background:#131f18;border-color:#2d4035;box-shadow:0 8px 32px #00000080}.themeDark .bulkProgressBar{background:#1e2e24}.themeDark .bulkProgressFill{background:#4a8c6a}.themeDark .bulkProgressCount{color:#8fcca0}.themeDark .bulkProgressSucceeded{color:#7fcca0}.themeDark .bulkProgressFailed{color:#e08080}.themeDark .bulkProgressRunning,.themeDark .bulkProgressErrorsLabel{color:#8aad97}.themeDark .bulkProgressErrorItem{background:#2a1a18;border-color:#5a2d28;color:#e08080}.themeDark .bulkProgressErrorItem:hover{background:#321e1b}.themeDark .bulkProgressErrorItem.bulkProgressErrorReviewed{background:#162a1e;border-color:#3a5a45;color:#7fcca0}.themeDark .bulkProgressReviewedBadge{background:#1e3a28;color:#6aad8a}.themeDark .bulkProgressRetryBtn{background:#3a7a5c}.themeDark .bulkProgressRetryBtn:hover{background:#2d6a4f}.themeDark .booksResultCount{color:#7aad8a}.themeDark .bookRowSelected{background:#162a1e!important}.themeDark .bookBulkBar{background:#101914;border-color:#3a5a45;box-shadow:0 4px 20px #00000080}.themeDark .bookBulkCount{color:#8fcca0}.themeDark .bookBulkActionSelect{background:#101914;border-color:#2d4035;color:#f1f7f3}.themeDark .bookDupeWarn{color:#f59e0b}.themeDark .bookOwnedNone{color:#9b9b7a}.themeDark .bookImageSize{color:#8fba9f}.themeDark .metricsFilterRow select{background:#101914;border-color:#2d4035;color:#f1f7f3}.themeDark .metricCard{background:#131f18;border-color:#2d4035}.themeDark .metricCardActive{background:#1a2e23!important;border-color:#4a8c6a!important}.themeDark .metricCard strong{color:#7fcca0}.themeDark .metricCard span,.themeDark .metricsFilterCount{color:#8aad97}.themeDark .metricList{background:#131f18;border-color:#2d4035}.themeDark .metricList h4{color:#7aad8a}.themeDark .metricItem{border-bottom-color:#1e2e24}.themeDark .metricItemCount{color:#8fcca0}.themeDark .metricShowMore{color:#6aad8a}.themeDark .roadmapArrow--snapshot{background:#1a2420;opacity:.65}.themeDark .roadmapSnapshotDate,.themeDark .roadmapSnapshotIcon{color:#6b7280}.themeDark .roadmapConfirmBox{background:#1a2f22;border:1px solid #2d4a35;color:#e5ede9}.themeDark .roadmapConfirmActions button:first-child{background:#16a34a;color:#fff}.themeDark .roadmapConfirmActions button:last-child{background:#2d4035;color:#c8e0d0}.themeDark .roadmapItemActions button{background:#1a2f22;border-color:#2d4a35;color:#8fba9f}.themeDark .roadmapItemActions button:hover{border-color:#3a9d6e;color:#3a9d6e}.themeDark .roadmapItemActions button:last-child:hover{border-color:#dc2626;color:#f87171}.themeDark .roadmapEditBox{background:#1a2f22;border:1px solid #2d4a35}.themeDark .roadmapEditHeading{color:#e5ede9}.themeDark .roadmapEditField label{color:#c8e0d0}.themeDark .roadmapEditField input,.themeDark .roadmapEditField textarea,.themeDark .roadmapEditField select{background:#101914;border-color:#2d4035;color:#f1f7f3}.themeDark .roadmapEditField input:focus,.themeDark .roadmapEditField textarea:focus,.themeDark .roadmapEditField select:focus{border-color:#3a9d6e}.mindMapDialog{position:fixed;top:0;right:0;bottom:0;left:0;z-index:300;display:flex;flex-direction:column;background:#f5f7f4;overflow:hidden}.mindMapDialogHeader{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid #d5e4da;background:#fff;flex-shrink:0}.mindMapDialogTitle{flex:1;min-width:0}.mindMapDialogTitle small{display:block;font-size:.7rem;color:#1d7a5c;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px}.mindMapDialogTitle h2{margin:0;font-size:1rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mindMapDialogTabs{display:flex;gap:4px;background:#eef3ef;border-radius:8px;padding:3px}.mindMapDialogTabs button{background:none;border:none;border-radius:6px;padding:5px 14px;font-size:.82rem;font-weight:500;color:#4a5568;cursor:pointer;transition:background .15s,color .15s}.mindMapDialogTabs button.active{background:#fff;color:#1d7a5c;font-weight:700;box-shadow:0 1px 3px #0000001a}.mindMapDialogBody{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden}.mindMapTextEditorWrapper{flex:1;display:flex;flex-direction:column;height:100%;padding:16px;gap:8px}.mindMapTextEditorHint{display:flex;align-items:center;gap:12px;font-size:.78rem;color:#6b7280}.mindMapSavingHint{color:#d97706;font-weight:500}.mindMapSavedHint{color:#1d7a5c;font-weight:500}.mindMapTextEditor{flex:1;resize:none;font-family:JetBrains Mono,Fira Code,Cascadia Code,ui-monospace,monospace;font-size:.88rem;line-height:1.6;padding:12px 14px;border:1px solid #d5e4da;border-radius:8px;background:#fff;color:#17211b;outline:none;-moz-tab-size:2;tab-size:2}.mindMapTextEditor:focus{border-color:#1d7a5c}.mindMapCanvasToolbar{position:absolute;top:10px;right:52px;display:flex;align-items:center;gap:8px;z-index:10}.mindMapAutoArrangeOverlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#00000059;display:flex;align-items:center;justify-content:center;z-index:20}.mindMapAutoArrangeBox{background:#fff;border-radius:12px;padding:24px;max-width:360px;width:90%;box-shadow:0 8px 32px #0000002e}.mindMapAutoArrangeBox p{margin:0 0 16px;font-size:.92rem;color:#17211b}.mindMapAutoArrangeActions{display:flex;gap:10px;justify-content:flex-end}.glossaryDialog .glossaryDialogBody{flex:1;overflow-y:auto;padding:16px;display:flex;flex-direction:column;gap:12px}.glossaryHeaderActions{display:flex;align-items:center;gap:10px}.glossaryToolbar{display:flex;gap:10px;align-items:center}.glossarySearch{flex:1;padding:7px 10px;border:1px solid #c5d8cd;border-radius:6px;font-size:.875rem;background:#fff}.glossaryTermList{display:flex;flex-direction:column;gap:10px}.glossaryTermRow{display:flex;gap:8px;align-items:flex-start;background:#fff;border:1px solid #d5e4da;border-radius:8px;padding:12px}.glossaryTermFields{flex:1;display:flex;flex-direction:column;gap:6px}.glossaryTermInput{font-weight:600;font-size:.9rem;padding:6px 8px;border:1px solid #d5e4da;border-radius:5px;background:#f5f7f4}.glossaryDefinitionInput,.glossaryExampleInput{font-size:.85rem;padding:6px 8px;border:1px solid #e8f0ec;border-radius:5px;resize:vertical;background:#fff;line-height:1.4}.glossaryExampleInput{color:#6b7280;font-style:italic}.glossaryRemoveBtn{flex-shrink:0;margin-top:2px;color:#9ca3af}.glossaryTermOrderInput{width:42px;flex-shrink:0;padding:4px;border:1px solid #d5e4da;border-radius:5px;background:#f5f7f4;font-size:.8rem;text-align:center;color:#6b7280;-moz-appearance:textfield}.glossaryTermOrderInput::-webkit-inner-spin-button,.glossaryTermOrderInput::-webkit-outer-spin-button{opacity:.5}.notebookGlossaryTab{display:flex;flex-direction:column;gap:12px;padding:16px 0}.glossaryTabSaveStatus{display:flex;align-items:center;gap:6px;margin-left:auto}.glossaryLoading{text-align:center;padding:40px;color:#6b7280}.savingIndicator{color:#9ca3af;font-size:.78rem}.savedIndicator{color:#1d7a5c;font-size:.78rem}.cheatSheetDialogBody{flex:1;overflow:hidden;display:flex;flex-direction:column}.cheatSheetEditor{flex:1;border:none;outline:none;resize:none;padding:20px;font-family:JetBrains Mono,Fira Code,Cascadia Code,monospace;font-size:.85rem;line-height:1.6;background:#f5f7f4;width:100%;height:100%;box-sizing:border-box}.cheatSheetPreview{flex:1;overflow-y:auto;padding:24px;font-size:.82rem;line-height:1.5}.cheatSheetPreview .markdownPreview h1,.cheatSheetPreview .markdownPreview h2,.cheatSheetPreview .markdownPreview h3{margin-top:.5em;margin-bottom:.25em;font-size:.9rem;break-after:avoid}.cheatSheetPreview .markdownPreview p,.cheatSheetPreview .markdownPreview ul,.cheatSheetPreview .markdownPreview ol,.cheatSheetPreview .markdownPreview pre,.cheatSheetPreview .markdownPreview blockquote{margin-bottom:.4em;break-inside:avoid}.themeDark .mindMapDialog{background:#101914}.themeDark .mindMapDialogHeader{background:#17211b;border-color:#2d4035}.themeDark .mindMapDialogTitle h2{color:#f1f7f3}.themeDark .mindMapDialogTabs{background:#1f2f28}.themeDark .mindMapDialogTabs button{color:#a0b9ad}.themeDark .mindMapDialogTabs button.active{background:#17211b;color:#3dd68c}.themeDark .glossaryTermRow{background:#17211b;border-color:#2d4035}.themeDark .glossaryTermInput{background:#1f2f28;border-color:#2d4035;color:#f1f7f3}.themeDark .glossaryDefinitionInput,.themeDark .glossaryExampleInput{background:#1a2820;border-color:#2d4035;color:#c8ddd5}.themeDark .glossarySearch{background:#1f2f28;border-color:#2d4035;color:#f1f7f3}.themeDark .glossaryDialog .glossaryDialogBody{background:#101914}.themeDark .cheatSheetEditor{background:#101914;color:#f1f7f3}.themeDark .cheatSheetPreview{background:#101914;color:#c8ddd5}.themeDark .metricsView{border-color:#2d4035;background:#162119}.themeDark .metricCard{background:#1a2820}.themeDark .metricItem{border-bottom-color:#2d4035}.metricsView{padding:18px;background:#fff;border-radius:14px;border:1px solid #dce8df}.metricsGrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:16px;margin-top:10px}.metricCard{background:#f0f7f2;padding:12px;border-radius:8px;text-align:center}.metricsDetailGrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-top:15px}.metricItem{display:flex;justify-content:space-between;padding:4px 0;border-bottom:1px solid #eee}.themeDark .mindMapTextEditor{border-color:#2d4035;color:#f1f7f3}.themeDark .mindMapTextEditor:focus{border-color:#3a9d6e}.themeDark .mindMapAutoArrangeBox{background:#17211b}.themeDark .mindMapAutoArrangeBox p{color:#f1f7f3}.themeDark .bookFormTabs{border-bottom-color:#2e4438}.themeDark .bookFormTab{color:#7a9e88}.themeDark .bookFormTab:hover{color:#c8d8cc;background:#1e3228}.themeDark .bookFormTab.active{color:#5aaa80;border-bottom-color:#5aaa80}.themeDark .bookAnnotationsProgress h3,.themeDark .bookAnnotationsStudySessions h3{color:#c8d8cc}.themeDark .bookAnnotationsProgressFields label{color:#b0c8b8}.themeDark .bookAnnotationsProgressFields input{background:#101914;border-color:#2d4035;color:#f1f7f3}.themeDark .bookAnnotationsNoStudyItem{color:#6a8a74}.themeDark .bookReadingsSummary{color:#7a9e88}.themeDark .bookReadingEditForm{background:#1a2820;border-color:#2e4438}.themeDark .bookReadingEditFields label,.themeDark .bookReadingNotesLabel{color:#b0c8b8}.themeDark .bookReadingEditFields input,.themeDark .bookReadingEditFields select,.themeDark .bookReadingNotesLabel textarea{background:#101914;border-color:#2d4035;color:#f1f7f3}.themeDark .bookReadingsEmpty,.themeDark .bookTabSaveFirst{color:#6a8a74}.themeDark .bookReadingItem{background:#1a2820;border-color:#2e4438}.themeDark .bookReadingItemDates{color:#c8d8cc}.themeDark .bookReadingItemFormat{color:#5aaa80;background:#1e3828}.themeDark .bookReadingItemHours,.themeDark .bookReadingItemNotes{color:#7a9e88}.themeDark .dangerIconButton{color:#e57373}.themeDark .dangerIconButton:hover{background:#2d1a1a}.themeDark .bookNestedDialog{background:#142119;border-color:#2e4438;box-shadow:0 22px 60px #00000073}.themeDark .bookNestedDialogHeader h3{color:#c8d8cc}.themeDark .bookNestedDialog .bookReadingForm label{color:#b0c8b8}.themeDark .bookReadingForm input,.themeDark .bookReadingForm select,.themeDark .bookReadingForm textarea{background:#101914;border-color:#2d4035;color:#f1f7f3}.themeDark .bookReadingStudyItemSelect{color:#b0c8b8}.themeDark .bookReadingStudyItemSelect select{background:#101914;border-color:#2d4035;color:#f1f7f3}.themeDark .bookPendingReadingPanel{background:#1a2820;border-color:#2e4438}.themeDark .bookPendingReadingPanel strong{color:#c8d8cc}.themeDark .bookPendingReadingPanel small{color:#7a9e88}.themeDark .bookPendingReadingFields label{color:#b0c8b8}.themeDark .bookPendingReadingFields input,.themeDark .bookPendingReadingFields select{background:#101914;border-color:#2d4035;color:#f1f7f3}.themeDark .bookHistoryEmpty{color:#6a8a74}.themeDark .bookHistoryItem:before{background:#2e4438}.themeDark .bookHistoryDot{background:#5aaa80;outline-color:#5aaa80;border-color:#162119}.themeDark .bookHistoryLabel{color:#c8d8cc}.themeDark .bookHistoryDate{color:#6a8a74}.studyGuide{max-width:780px;margin:0 auto;padding:0 0 40px}.studyGuideSection{margin-bottom:40px}.studyGuideSection>h2{font-size:18px;font-weight:700;color:#1a2e22;margin:0 0 12px;padding-bottom:8px;border-bottom:2px solid #dce8e0}.studyGuideSection>p{font-size:14px;color:#4a6357;margin:0 0 16px;line-height:1.6}.studyGuideTrackGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}@media (max-width: 600px){.studyGuideTrackGrid{grid-template-columns:1fr}}.studyGuideTrack{padding:16px 20px;border-radius:12px;border:1px solid #dce8e0}.studyGuideTrack h3{font-size:14px;font-weight:700;margin:0 0 8px}.studyGuideTrack p{font-size:13px;color:#4a6357;margin:0 0 10px;line-height:1.55}.studyGuideTrack ul{margin:0;padding:0 0 0 18px;font-size:13px;color:#4a6357;line-height:1.7}.studyGuideTrack--srs{background:#f0faf4;border-color:#c0dece}.studyGuideTrack--srs h3{color:#1a7a4a}.studyGuideTrack--manual{background:#f0f5fb;border-color:#c0cee0}.studyGuideTrack--manual h3{color:#1e5dbf}.studyGuideIntervalTable{border:1px solid #dce8e0;border-radius:10px;overflow:hidden;font-size:13px;margin-bottom:12px}.studyGuideIntervalRow{display:grid;grid-template-columns:150px 130px 140px 1fr;align-items:center;padding:8px 14px;gap:8px;border-bottom:1px solid #edf2ef}.studyGuideIntervalRow:last-child{border-bottom:none}.studyGuideIntervalRow--header{background:#f4f8f5;font-weight:600;color:#3a5540;font-size:12px;text-transform:uppercase;letter-spacing:.04em}.studyGuideTag{display:inline-block;padding:2px 10px;border-radius:999px;font-size:12px;font-weight:600}.studyGuideTag--good{background:#e0f4e8;color:#1a7a4a}.studyGuideTag--bad{background:#fce8e8;color:#b03030}.studyGuidePhase--maintenance{color:#1e5dbf;font-weight:600}.studyGuideNote{font-size:13px;color:#4a6357;margin:0;line-height:1.6}.studyGuideFlowCard{padding:16px 20px;border:1px solid #dce8e0;border-radius:12px;margin-bottom:12px;background:#f7fbf8}.studyGuideFlowCard h3{font-size:14px;font-weight:700;color:#1a2e22;margin:0 0 10px}.studyGuideFlowCard ol{margin:0;padding:0 0 0 20px;font-size:13px;color:#4a6357;line-height:1.8}.studyGuideFlowCard ul{margin:4px 0 0;padding:0 0 0 18px;font-size:13px;color:#4a6357;line-height:1.7}.studyGuideFlowDesc{font-size:13px;color:#5a7a65;margin:0 0 12px;line-height:1.55}.studyGuideFlowNote{font-size:12px;color:#7a9e88;margin:10px 0 0;padding:8px 12px;background:#edf5ef;border-radius:6px;line-height:1.55}.studyGuideFlowSteps{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:0}@media (max-width: 600px){.studyGuideFlowSteps{grid-template-columns:1fr}}.studyGuideFlowPhase{background:#f0f8f3;border:1px solid #d0e8d8;border-radius:8px;padding:10px 14px}.studyGuideFlowPhaseLabel{display:block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#2d7a4f;margin-bottom:8px}.studyGuideTips{margin:0;padding:0;list-style:none;display:flex;flex-direction:column;gap:12px}.studyGuideTips li{padding:12px 16px;background:#f7fbf8;border-left:3px solid #2d7a4f;border-radius:0 8px 8px 0;font-size:13px;color:#4a6357;line-height:1.6}.studyGuideTips li strong{color:#1a2e22}.themeDark .studyGuideSection>h2{color:#c8d8cc;border-color:#2a3d30}.themeDark .studyGuideSection>p,.themeDark .studyGuideNote{color:#7a9e88}.themeDark .studyGuideTrack{border-color:#2a3d30}.themeDark .studyGuideTrack p,.themeDark .studyGuideTrack ul{color:#7a9e88}.themeDark .studyGuideTrack--srs{background:#142a1e;border-color:#1e4a30}.themeDark .studyGuideTrack--srs h3{color:#6fce9a}.themeDark .studyGuideTrack--manual{background:#141c2a;border-color:#1e2e4a}.themeDark .studyGuideTrack--manual h3{color:#6aadee}.themeDark .studyGuideIntervalTable{border-color:#2a3d30}.themeDark .studyGuideIntervalRow{border-color:#1e2e24}.themeDark .studyGuideIntervalRow--header{background:#1c2b22;color:#7a9e88}.themeDark .studyGuideTag--good{background:#1a3d28;color:#6fce9a}.themeDark .studyGuideTag--bad{background:#3d1a1a;color:#ee8080}.themeDark .studyGuidePhase--maintenance{color:#6aadee}.themeDark .studyGuideFlowCard{background:#1c2b22;border-color:#2a3d30}.themeDark .studyGuideFlowCard h3{color:#c8d8cc}.themeDark .studyGuideFlowCard ol,.themeDark .studyGuideFlowCard ul,.themeDark .studyGuideFlowDesc{color:#7a9e88}.themeDark .studyGuideFlowNote{background:#1a2e1e;color:#6a8e78}.themeDark .studyGuideFlowPhase{background:#192a1f;border-color:#2a3d30}.themeDark .studyGuideFlowPhaseLabel{color:#6fce9a}.themeDark .studyGuideTips li{background:#1c2b22;border-color:#6fce9a;color:#7a9e88}.themeDark .studyGuideTips li strong{color:#c8d8cc}.toastContainer{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;flex-direction:column;gap:8px;pointer-events:none}.toast{display:flex;align-items:center;gap:10px;padding:10px 14px;border-radius:8px;font-size:14px;font-weight:500;box-shadow:0 4px 16px #0000002e;pointer-events:all;animation:toastSlideIn .2s ease;max-width:380px;min-width:240px}.toast-success{background:#1c7a47;color:#fff}.toast-error{background:#b91c1c;color:#fff}.toast .iconButton{color:#ffffffbf;margin-left:auto;padding:2px;flex-shrink:0}.toast .iconButton:hover{color:#fff;background:#fff3}@keyframes toastSlideIn{0%{opacity:0;transform:translate(16px)}to{opacity:1;transform:translate(0)}}.attachmentPanel{display:flex;flex-direction:column;gap:12px;padding:4px 0}.attachmentPanelHeader{display:flex;align-items:center;gap:10px}.attachmentCount{flex:1;font-size:13px;color:#5d6c63}.attachmentError{font-size:13px;color:#c0392b;margin:0}.attachmentList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.attachmentItem{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid #d9e2dc;border-radius:8px;background:#fff}.attachmentInfo{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.attachmentName{font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.attachmentMeta{font-size:12px;color:#5d6c63}.attachmentActions{display:flex;align-items:center;gap:4px;flex-shrink:0}.attachmentRenameForm{display:flex;align-items:center;gap:4px}.attachmentRenameInput{font-size:14px;padding:3px 6px;border:1px solid #a8c5b3;border-radius:4px;flex:1;min-width:0}.themeDark .attachmentItem{background:#1e2922;border-color:#3a4d42}.themeDark .attachmentMeta{color:#8ba899}.themeDark .attachmentRenameInput{background:#263330;border-color:#4a6358;color:#e8f0ec}.bookNotesTab{display:flex;flex-direction:column;gap:12px;padding:4px 0}.bookNotesTabHeader{display:flex;align-items:center;justify-content:space-between;gap:10px}.bookNotesList{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}.bookNoteItem{display:flex;align-items:center;gap:8px;padding:8px 10px;border:1px solid #d9e2dc;border-radius:8px;background:#fff}.bookNoteOrderButtons{display:flex;flex-direction:column;gap:2px;flex-shrink:0}.bookNoteItemBody{flex:1;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:10px;background:none;border:none;padding:4px 6px;cursor:pointer;text-align:left}.bookNoteItemTitle{font-size:14px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bookNotesEditor{gap:10px}.bookNotesEditorHeader{display:flex;align-items:center;justify-content:space-between;gap:10px}.bookNoteTitleInput{font-size:16px;font-weight:600;padding:6px 8px;border:1px solid #d9e2dc;border-radius:6px}.bookNoteReviewRow{display:flex;align-items:center;flex-wrap:wrap;gap:10px}.bookNoteReviewToggle{display:flex;align-items:center;gap:6px;font-size:13px}.bookNoteReviewActions{display:flex;gap:6px}.themeDark .bookNoteItem{background:#1e2922;border-color:#3a4d42}.themeDark .bookNoteTitleInput{background:#263330;border-color:#4a6358;color:#e8f0ec}.manualReviewBadge--booknote{background:#fbe7ee;color:#a8305c}.themeDark .manualReviewBadge--booknote{background:#3a1a28;color:#e88bae}.workspaceHome{padding:0!important;height:var(--app-viewport-height);display:flex;flex-direction:column;overflow:hidden}.workspaceHome .topbar{flex:0 0 auto;margin-bottom:0;padding:16px 28px;border-bottom:1px solid #e5ede9}.homeDashboard{flex:1 1 0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.homeDashboardBand{display:flex;flex-direction:column;overflow:hidden;border-bottom:1px solid #e5ede9}.homeDashboardBand1{flex:0 0 auto;overflow:visible}.homeDashboardBand2{flex:0 0 290px;min-height:0}.homeDashboardBand2.collapsed{flex:0 0 auto}.homeDashboardBand3{flex:1 1 0;min-height:0;border-bottom:none}.homeDashboardBand.collapsed .homeDashboardBandContent{display:none}.homeDashboardBandHeader{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 24px;flex:0 0 auto;-webkit-user-select:none;user-select:none;cursor:pointer;background:#f2f6f3;border-bottom:1px solid #e0ebe4;transition:background .12s ease}.homeDashboardBandHeader:hover{background:#eaf1ec}.homeDashboardBand.collapsed .homeDashboardBandHeader{border-bottom:none}.homeDashboardBandHeader h2{margin:0;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;color:#4a6354}.homeDashboardBandHeaderLeft{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.homeDashboardBandHeaderRight{display:flex;align-items:center;gap:8px;flex:0 0 auto}.homeDashboardBandToggle{display:flex;align-items:center;justify-content:center;background:none;border:none;padding:2px;cursor:pointer;color:#4a6354;border-radius:4px;line-height:0}.homeDashboardBandToggle svg{transition:transform .16s ease}.homeDashboardBandToggle svg.rotated{transform:rotate(180deg)}.homeDashboardBandContent{overflow-y:auto;overflow-x:hidden;flex:1 1 0;min-height:0}.homeDashboardBand1Content{padding:12px 24px 16px;flex:none;min-height:auto;overflow:visible}.homeDashboardBand2Content{padding:0}.homeDashboardBand2Content .reviewDashboard{padding:16px 24px}.homeDashboardBand3Content{padding:16px 24px 24px}.homeDashboardHeatmapsRow{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.homeDashboardStatsBtn{white-space:nowrap;font-size:12px;padding:5px 10px}.homeDashboardMobile{height:auto;overflow:visible}.mobileStudyShell .workspaceHome{height:var(--app-viewport-height)!important;overflow:hidden!important;padding:0!important;padding-top:calc(60px + env(safe-area-inset-top,0px))!important;display:flex!important;flex-direction:column!important;box-sizing:border-box!important}.mobileStudyShell .homeDashboard{flex:1 1 0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.homeDashboardMobileContent{padding:16px;flex:1 1 0;min-height:0;overflow-y:auto}.mobileStudyShell .homeDashboardTabBar{position:static!important;flex-shrink:0;padding-bottom:env(safe-area-inset-bottom,0px)}.homeDashboardMobileTab{display:flex;flex-direction:column;gap:16px}.homeDashboardTabBar{position:fixed;bottom:0;left:0;right:0;z-index:50;display:flex;border-top:1px solid #e5ede9;background:#fff}.homeDashboardTabBtn{flex:1;display:flex;flex-direction:column;align-items:center;padding:8px 4px 10px;gap:3px;font-size:11px;background:none;border:none;color:#6b8070;cursor:pointer}.homeDashboardTabBtn.active{color:#3d8f64;font-weight:600}.homeDashboardMobilePeriod{display:flex;align-items:center;gap:8px;overflow-x:auto;scrollbar-width:none}.homeDashboardMobilePeriod::-webkit-scrollbar{display:none}.homeDashboardMobilePeriod .heatmapPeriodSelector{flex-shrink:0}.homeDashboardMobilePeriodLabel{font-size:12px;font-weight:600;color:#6b8070;flex-shrink:0}.streakStat--compact{padding:7px 10px;min-width:110px;gap:7px;grid-template-columns:26px minmax(0,1fr)}.streakStat--compact .streakStatIcon{width:26px;height:26px;padding:5px}.streakStat--compact .streakStatValue{font-size:15px}.streakStat--compact .streakStatLabel{font-size:11px}.heatmapGrid--compact[data-period="1y"]{grid-template-rows:repeat(7,9px);grid-auto-columns:9px}.heatmapGrid--compact[data-period="1y"] .heatmapCell{width:9px;height:9px}.heatmapGrid--compact[data-period="6m"]{grid-template-rows:repeat(7,10px);grid-auto-columns:10px}.heatmapGrid--compact[data-period="6m"] .heatmapCell{width:10px;height:10px}.themeDark .workspaceHome .topbar,.themeDark .homeDashboardBand{border-bottom-color:#2a3d32}.themeDark .homeDashboardBandHeader{background:#1a2820;border-bottom-color:#2a3d32}.themeDark .homeDashboardBandHeader:hover{background:#1f3028}.themeDark .homeDashboardBandHeader h2,.themeDark .homeDashboardBandToggle{color:#7aa088}.themeDark .homeDashboardTabBar{background:#18231d;border-top-color:#2a3d32}.themeDark .homeDashboardTabBtn{color:#7a9e88}.themeDark .homeDashboardTabBtn.active{color:#5aaa80}.mobileStudyShell .homeDashboardHeatmapsRow{grid-template-columns:1fr}.mobileStudyShell .homeDashboardHeatmapsRow>div{min-width:0}.mobileStudyShell .heatmapGrid{width:auto}.mobileStudyShell .scheduleHeatmap{overflow-x:auto}.mobileStudyShell .homeDashboardMobileContent .reviewDashboard{padding:0}.mobileStudyShell .workspaceHome .topbar{padding-top:env(safe-area-inset-top,0px);min-height:0}.react-flow{direction:ltr;--xy-edge-stroke-default: #b1b1b7;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #555;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(255, 255, 255, .5);--xy-minimap-background-color-default: #fff;--xy-minimap-mask-background-color-default: rgba(240, 240, 240, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #e2e2e2;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: transparent;--xy-background-pattern-dots-color-default: #91919a;--xy-background-pattern-lines-color-default: #eee;--xy-background-pattern-cross-color-default: #e2e2e2;background-color:var(--xy-background-color, var(--xy-background-color-default));--xy-node-color-default: inherit;--xy-node-border-default: 1px solid #1a192b;--xy-node-background-color-default: #fff;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(0, 0, 0, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #1a192b;--xy-node-border-radius-default: 3px;--xy-handle-background-color-default: #1a192b;--xy-handle-border-color-default: #fff;--xy-selection-background-color-default: rgba(0, 89, 220, .08);--xy-selection-border-default: 1px dotted rgba(0, 89, 220, .8);--xy-controls-button-background-color-default: #fefefe;--xy-controls-button-background-color-hover-default: #f4f4f4;--xy-controls-button-color-default: inherit;--xy-controls-button-color-hover-default: inherit;--xy-controls-button-border-color-default: #eee;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #ffffff;--xy-edge-label-color-default: inherit;--xy-resize-background-color-default: #3367d9}.react-flow.dark{--xy-edge-stroke-default: #3e3e3e;--xy-edge-stroke-width-default: 1;--xy-edge-stroke-selected-default: #727272;--xy-connectionline-stroke-default: #b1b1b7;--xy-connectionline-stroke-width-default: 1;--xy-attribution-background-color-default: rgba(150, 150, 150, .25);--xy-minimap-background-color-default: #141414;--xy-minimap-mask-background-color-default: rgba(60, 60, 60, .6);--xy-minimap-mask-stroke-color-default: transparent;--xy-minimap-mask-stroke-width-default: 1;--xy-minimap-node-background-color-default: #2b2b2b;--xy-minimap-node-stroke-color-default: transparent;--xy-minimap-node-stroke-width-default: 2;--xy-background-color-default: #141414;--xy-background-pattern-dots-color-default: #777;--xy-background-pattern-lines-color-default: #777;--xy-background-pattern-cross-color-default: #777;--xy-node-color-default: #f8f8f8;--xy-node-border-default: 1px solid #3c3c3c;--xy-node-background-color-default: #1e1e1e;--xy-node-group-background-color-default: rgba(240, 240, 240, .25);--xy-node-boxshadow-hover-default: 0 1px 4px 1px rgba(255, 255, 255, .08);--xy-node-boxshadow-selected-default: 0 0 0 .5px #999;--xy-handle-background-color-default: #bebebe;--xy-handle-border-color-default: #1e1e1e;--xy-selection-background-color-default: rgba(200, 200, 220, .08);--xy-selection-border-default: 1px dotted rgba(200, 200, 220, .8);--xy-controls-button-background-color-default: #2b2b2b;--xy-controls-button-background-color-hover-default: #3e3e3e;--xy-controls-button-color-default: #f8f8f8;--xy-controls-button-color-hover-default: #fff;--xy-controls-button-border-color-default: #5b5b5b;--xy-controls-box-shadow-default: 0 0 2px 1px rgba(0, 0, 0, .08);--xy-edge-label-background-color-default: #141414;--xy-edge-label-color-default: #f8f8f8}.react-flow__background{background-color:var(--xy-background-color-props, var(--xy-background-color, var(--xy-background-color-default)));pointer-events:none;z-index:-1}.react-flow__container{position:absolute;width:100%;height:100%;top:0;left:0}.react-flow__pane{z-index:1;touch-action:none}.react-flow__pane.draggable{cursor:grab}.react-flow__pane.dragging{cursor:grabbing}.react-flow__pane.selection{cursor:pointer}.react-flow__viewport{transform-origin:0 0;z-index:2;pointer-events:none}.react-flow__renderer{z-index:4}.react-flow__selection{z-index:6}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible{outline:none}.react-flow__edge-path{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default));stroke-width:var(--xy-edge-stroke-width, var(--xy-edge-stroke-width-default));fill:none}.react-flow__connection-path{stroke:var(--xy-connectionline-stroke, var(--xy-connectionline-stroke-default));stroke-width:var(--xy-connectionline-stroke-width, var(--xy-connectionline-stroke-width-default));fill:none}.react-flow .react-flow__edges{position:absolute}.react-flow .react-flow__edges svg{overflow:visible;position:absolute;pointer-events:none}.react-flow__edge{pointer-events:visibleStroke}.react-flow__edge.selectable{cursor:pointer}.react-flow__edge.animated path{stroke-dasharray:5;animation:dashdraw .5s linear infinite}.react-flow__edge.animated path.react-flow__edge-interaction{stroke-dasharray:none;animation:none}.react-flow__edge.inactive{pointer-events:none}.react-flow__edge.selected,.react-flow__edge:focus,.react-flow__edge:focus-visible{outline:none}.react-flow__edge.selected .react-flow__edge-path,.react-flow__edge.selectable:focus .react-flow__edge-path,.react-flow__edge.selectable:focus-visible .react-flow__edge-path{stroke:var(--xy-edge-stroke-selected, var(--xy-edge-stroke-selected-default))}.react-flow__edge-textwrapper{pointer-events:all}.react-flow__edge .react-flow__edge-text{pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__arrowhead polyline{stroke:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__arrowhead polyline.arrowclosed{fill:var(--xy-edge-stroke, var(--xy-edge-stroke-default))}.react-flow__connection{pointer-events:none}.react-flow__connection .animated{stroke-dasharray:5;animation:dashdraw .5s linear infinite}svg.react-flow__connectionline{z-index:1001;overflow:visible;position:absolute}.react-flow__nodes{pointer-events:none;transform-origin:0 0}.react-flow__node{position:absolute;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:all;transform-origin:0 0;box-sizing:border-box;cursor:default}.react-flow__node.selectable{cursor:pointer}.react-flow__node.draggable{cursor:grab;pointer-events:all}.react-flow__node.draggable.dragging{cursor:grabbing}.react-flow__nodesselection{z-index:3;transform-origin:left top;pointer-events:none}.react-flow__nodesselection-rect{position:absolute;pointer-events:all;cursor:grab}.react-flow__handle{position:absolute;pointer-events:none;min-width:5px;min-height:5px;width:6px;height:6px;background-color:var(--xy-handle-background-color, var(--xy-handle-background-color-default));border:1px solid var(--xy-handle-border-color, var(--xy-handle-border-color-default));border-radius:100%}.react-flow__handle.connectingfrom{pointer-events:all}.react-flow__handle.connectionindicator{pointer-events:all;cursor:crosshair}.react-flow__handle-bottom{top:auto;left:50%;bottom:0;transform:translate(-50%,50%)}.react-flow__handle-top{top:0;left:50%;transform:translate(-50%,-50%)}.react-flow__handle-left{top:50%;left:0;transform:translate(-50%,-50%)}.react-flow__handle-right{top:50%;right:0;transform:translate(50%,-50%)}.react-flow__edgeupdater{cursor:move;pointer-events:all}.react-flow__pane.selection .react-flow__panel{pointer-events:none}.react-flow__panel{position:absolute;z-index:5;margin:15px}.react-flow__panel.top{top:0}.react-flow__panel.bottom{bottom:0}.react-flow__panel.top.center,.react-flow__panel.bottom.center{left:50%;transform:translate(-15px) translate(-50%)}.react-flow__panel.left{left:0}.react-flow__panel.right{right:0}.react-flow__panel.left.center,.react-flow__panel.right.center{top:50%;transform:translateY(-15px) translateY(-50%)}.react-flow__attribution{font-size:10px;background:var(--xy-attribution-background-color, var(--xy-attribution-background-color-default));padding:2px 3px;margin:0}.react-flow__attribution a{text-decoration:none;color:#999}@keyframes dashdraw{0%{stroke-dashoffset:10}}.react-flow__edgelabel-renderer{position:absolute;width:100%;height:100%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;left:0;top:0}.react-flow__viewport-portal{position:absolute;width:100%;height:100%;left:0;top:0;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__minimap{background:var( --xy-minimap-background-color-props, var(--xy-minimap-background-color, var(--xy-minimap-background-color-default)) )}.react-flow__minimap-svg{display:block}.react-flow__minimap-mask{fill:var( --xy-minimap-mask-background-color-props, var(--xy-minimap-mask-background-color, var(--xy-minimap-mask-background-color-default)) );stroke:var( --xy-minimap-mask-stroke-color-props, var(--xy-minimap-mask-stroke-color, var(--xy-minimap-mask-stroke-color-default)) );stroke-width:var( --xy-minimap-mask-stroke-width-props, var(--xy-minimap-mask-stroke-width, var(--xy-minimap-mask-stroke-width-default)) )}.react-flow__minimap-node{fill:var( --xy-minimap-node-background-color-props, var(--xy-minimap-node-background-color, var(--xy-minimap-node-background-color-default)) );stroke:var( --xy-minimap-node-stroke-color-props, var(--xy-minimap-node-stroke-color, var(--xy-minimap-node-stroke-color-default)) );stroke-width:var( --xy-minimap-node-stroke-width-props, var(--xy-minimap-node-stroke-width, var(--xy-minimap-node-stroke-width-default)) )}.react-flow__background-pattern.dots{fill:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-dots-color-default)) )}.react-flow__background-pattern.lines{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-lines-color-default)) )}.react-flow__background-pattern.cross{stroke:var( --xy-background-pattern-color-props, var(--xy-background-pattern-color, var(--xy-background-pattern-cross-color-default)) )}.react-flow__controls{display:flex;flex-direction:column;box-shadow:var(--xy-controls-box-shadow, var(--xy-controls-box-shadow-default))}.react-flow__controls.horizontal{flex-direction:row}.react-flow__controls-button{display:flex;justify-content:center;align-items:center;height:26px;width:26px;padding:4px;border:none;background:var(--xy-controls-button-background-color, var(--xy-controls-button-background-color-default));border-bottom:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) );color:var( --xy-controls-button-color-props, var(--xy-controls-button-color, var(--xy-controls-button-color-default)) );cursor:pointer;-webkit-user-select:none;-moz-user-select:none;user-select:none}.react-flow__controls-button svg{width:100%;max-width:12px;max-height:12px;fill:currentColor}.react-flow__edge.updating .react-flow__edge-path{stroke:#777}.react-flow__edge-text{font-size:10px}.react-flow__node.selectable:focus,.react-flow__node.selectable:focus-visible{outline:none}.react-flow__node-input,.react-flow__node-default,.react-flow__node-output,.react-flow__node-group{padding:10px;border-radius:var(--xy-node-border-radius, var(--xy-node-border-radius-default));width:150px;font-size:12px;color:var(--xy-node-color, var(--xy-node-color-default));text-align:center;border:var(--xy-node-border, var(--xy-node-border-default));background-color:var(--xy-node-background-color, var(--xy-node-background-color-default))}.react-flow__node-input.selectable:hover,.react-flow__node-default.selectable:hover,.react-flow__node-output.selectable:hover,.react-flow__node-group.selectable:hover{box-shadow:var(--xy-node-boxshadow-hover, var(--xy-node-boxshadow-hover-default))}.react-flow__node-input.selectable.selected,.react-flow__node-input.selectable:focus,.react-flow__node-input.selectable:focus-visible,.react-flow__node-default.selectable.selected,.react-flow__node-default.selectable:focus,.react-flow__node-default.selectable:focus-visible,.react-flow__node-output.selectable.selected,.react-flow__node-output.selectable:focus,.react-flow__node-output.selectable:focus-visible,.react-flow__node-group.selectable.selected,.react-flow__node-group.selectable:focus,.react-flow__node-group.selectable:focus-visible{box-shadow:var(--xy-node-boxshadow-selected, var(--xy-node-boxshadow-selected-default))}.react-flow__node-group{background-color:var(--xy-node-group-background-color, var(--xy-node-group-background-color-default))}.react-flow__nodesselection-rect,.react-flow__selection{background:var(--xy-selection-background-color, var(--xy-selection-background-color-default));border:var(--xy-selection-border, var(--xy-selection-border-default))}.react-flow__nodesselection-rect:focus,.react-flow__nodesselection-rect:focus-visible,.react-flow__selection:focus,.react-flow__selection:focus-visible{outline:none}.react-flow__controls-button:hover{background:var( --xy-controls-button-background-color-hover-props, var(--xy-controls-button-background-color-hover, var(--xy-controls-button-background-color-hover-default)) );color:var( --xy-controls-button-color-hover-props, var(--xy-controls-button-color-hover, var(--xy-controls-button-color-hover-default)) )}.react-flow__controls-button:disabled{pointer-events:none}.react-flow__controls-button:disabled svg{fill-opacity:.4}.react-flow__controls-button:last-child{border-bottom:none}.react-flow__controls.horizontal .react-flow__controls-button{border-bottom:none;border-right:1px solid var( --xy-controls-button-border-color-props, var(--xy-controls-button-border-color, var(--xy-controls-button-border-color-default)) )}.react-flow__controls.horizontal .react-flow__controls-button:last-child{border-right:none}.react-flow__resize-control{position:absolute}.react-flow__resize-control.left,.react-flow__resize-control.right{cursor:ew-resize}.react-flow__resize-control.top,.react-flow__resize-control.bottom{cursor:ns-resize}.react-flow__resize-control.top.left,.react-flow__resize-control.bottom.right{cursor:nwse-resize}.react-flow__resize-control.bottom.left,.react-flow__resize-control.top.right{cursor:nesw-resize}.react-flow__resize-control.handle{width:5px;height:5px;border:1px solid #fff;border-radius:1px;background-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));translate:-50% -50%}.react-flow__resize-control.handle.left{left:0;top:50%}.react-flow__resize-control.handle.right{left:100%;top:50%}.react-flow__resize-control.handle.top{left:50%;top:0}.react-flow__resize-control.handle.bottom{left:50%;top:100%}.react-flow__resize-control.handle.top.left,.react-flow__resize-control.handle.bottom.left{left:0}.react-flow__resize-control.handle.top.right,.react-flow__resize-control.handle.bottom.right{left:100%}.react-flow__resize-control.line{border-color:var(--xy-resize-background-color, var(--xy-resize-background-color-default));border-width:0;border-style:solid}.react-flow__resize-control.line.left,.react-flow__resize-control.line.right{width:1px;transform:translate(-50%);top:0;height:100%}.react-flow__resize-control.line.left{left:0;border-left-width:1px}.react-flow__resize-control.line.right{left:100%;border-right-width:1px}.react-flow__resize-control.line.top,.react-flow__resize-control.line.bottom{height:1px;transform:translateY(-50%);left:0;width:100%}.react-flow__resize-control.line.top{top:0;border-top-width:1px}.react-flow__resize-control.line.bottom{border-bottom-width:1px;top:100%}.react-flow__edge-textbg{fill:var(--xy-edge-label-background-color, var(--xy-edge-label-background-color-default))}.react-flow__edge-text{fill:var(--xy-edge-label-color, var(--xy-edge-label-color-default))}@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}:root{--rc-drag-handle-size: 12px;--rc-drag-handle-mobile-size: 24px;--rc-drag-handle-bg-colour: rgba(0, 0, 0, .2);--rc-drag-bar-size: 6px;--rc-border-color: rgba(255, 255, 255, .7);--rc-focus-color: #0088ff}.ReactCrop{position:relative;display:inline-block;cursor:crosshair;max-width:100%}.ReactCrop *,.ReactCrop *:before,.ReactCrop *:after{box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{overflow:hidden;max-height:inherit}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-width:100%;max-height:inherit}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video{touch-action:none}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{touch-action:none}.ReactCrop__crop-mask{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;width:calc(100% + .5px);height:calc(100% + .5px)}.ReactCrop__crop-selection{position:absolute;top:0;left:0;transform:translateZ(0);cursor:move}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{pointer-events:none;content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border:1px solid var(--rc-border-color);opacity:.3}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed white}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){animation:marching-ants 1s;background-image:linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%);background-size:10px 1px,10px 1px,1px 10px,1px 10px;background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;color:#fff;animation-play-state:running;animation-timing-function:linear;animation-iteration-count:infinite}.ReactCrop__crop-selection:focus{outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{content:"";display:block;position:absolute;background-color:#fff6}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after{width:1px;height:100%}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{width:100%;height:1px}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{position:absolute;width:var(--rc-drag-handle-size);height:var(--rc-drag-handle-size);background-color:var(--rc-drag-handle-bg-colour);border:1px solid var(--rc-border-color)}.ReactCrop__drag-handle:focus{background:var(--rc-focus-color)}.ReactCrop .ord-nw{top:0;left:0;transform:translate(-50%,-50%);cursor:nw-resize}.ReactCrop .ord-n{top:0;left:50%;transform:translate(-50%,-50%);cursor:n-resize}.ReactCrop .ord-ne{top:0;right:0;transform:translate(50%,-50%);cursor:ne-resize}.ReactCrop .ord-e{top:50%;right:0;transform:translate(50%,-50%);cursor:e-resize}.ReactCrop .ord-se{bottom:0;right:0;transform:translate(50%,50%);cursor:se-resize}.ReactCrop .ord-s{bottom:0;left:50%;transform:translate(-50%,50%);cursor:s-resize}.ReactCrop .ord-sw{bottom:0;left:0;transform:translate(-50%,50%);cursor:sw-resize}.ReactCrop .ord-w{top:50%;left:0;transform:translate(-50%,-50%);cursor:w-resize}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{top:0;left:0;width:100%;height:var(--rc-drag-bar-size);transform:translateY(-50%)}.ReactCrop__drag-bar.ord-e{right:0;top:0;width:var(--rc-drag-bar-size);height:100%;transform:translate(50%)}.ReactCrop__drag-bar.ord-s{bottom:0;left:0;width:100%;height:var(--rc-drag-bar-size);transform:translateY(50%)}.ReactCrop__drag-bar.ord-w{top:0;left:0;width:var(--rc-drag-bar-size);height:100%;transform:translate(-50%)}.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle,.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w{display:none}@media (pointer: coarse){.ReactCrop .ord-n,.ReactCrop .ord-e,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{width:var(--rc-drag-handle-mobile-size);height:var(--rc-drag-handle-mobile-size)}}
