@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500&family=Noto+Sans+SC:wght@300;400;500;600;700&family=Playfair+Display:wght@600;700&display=swap";.canvas-click-effect[data-v-e3a218e6]{position:fixed;inset:0;width:100vw;height:100vh;pointer-events:none;z-index:9998}html.has-custom-cursor,body.has-custom-cursor,body.has-custom-cursor *{cursor:none!important}.cursor-dot[data-v-7bea9750]{position:fixed;top:0;left:0;width:18px;height:18px;background:#fff;border-radius:50%;pointer-events:none;z-index:2147483647;transition:transform .15s cubic-bezier(.25,.46,.45,.94);mix-blend-mode:difference;will-change:transform}.cursor-dot.hovered[data-v-7bea9750]{transform:scale(.6)}html[data-theme-mode=dark] .cursor-dot{background:radial-gradient(circle at 35% 35%,#fffffffa,#bfdbfee6 55%,#818cf85c);mix-blend-mode:normal;box-shadow:0 0 18px #818cf857}@media(hover:none),(pointer:coarse){.cursor-dot[data-v-7bea9750]{display:none}}@media(prefers-reduced-motion:reduce){.cursor-dot[data-v-7bea9750]{transition:none}}.icon[data-v-652eb966]{flex-shrink:0;display:inline-block;vertical-align:middle}.toast-container[data-v-8bf43bbe]{position:fixed;top:16px;right:16px;z-index:9999;display:flex;flex-direction:column;gap:8px;max-width:400px;pointer-events:none}.toast-item[data-v-8bf43bbe]{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;border-radius:var(--radius-md);background:var(--bg-surface);box-shadow:var(--shadow-lg);border-left:4px solid;cursor:pointer;pointer-events:auto;font-size:14px;line-height:1.5;color:var(--text-primary)}.toast-icon[data-v-8bf43bbe]{flex-shrink:0;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:12px;font-weight:700;color:#fff}.toast-success[data-v-8bf43bbe]{border-left-color:var(--green)}.toast-success .toast-icon[data-v-8bf43bbe]{background:var(--green)}.toast-error[data-v-8bf43bbe]{border-left-color:var(--rose)}.toast-error .toast-icon[data-v-8bf43bbe]{background:var(--rose)}.toast-warning[data-v-8bf43bbe]{border-left-color:var(--amber)}.toast-warning .toast-icon[data-v-8bf43bbe]{background:var(--amber)}.toast-info[data-v-8bf43bbe]{border-left-color:var(--cyan)}.toast-info .toast-icon[data-v-8bf43bbe]{background:var(--cyan)}.toast-message[data-v-8bf43bbe]{flex:1;word-break:break-word}.toast-enter-active[data-v-8bf43bbe]{transition:all .25s ease-out}.toast-leave-active[data-v-8bf43bbe]{transition:all .2s ease-in}.toast-enter-from[data-v-8bf43bbe],.toast-leave-to[data-v-8bf43bbe]{opacity:0;transform:translate(40px)}.error-boundary[data-v-362d7616]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;text-align:center;min-height:300px}.error-icon[data-v-362d7616]{font-size:48px;margin-bottom:16px}.error-title[data-v-362d7616]{margin:0 0 8px;font-size:18px;font-weight:600;color:var(--text-primary)}.error-message[data-v-362d7616]{margin:0 0 24px;font-size:14px;color:var(--text-tertiary);max-width:480px;word-break:break-word}.error-actions[data-v-362d7616]{display:flex;gap:12px}.error-btn[data-v-362d7616]{padding:8px 20px;font-size:14px;font-weight:500;border:none;border-radius:var(--radius-md);cursor:pointer;transition:background .15s}.error-btn-primary[data-v-362d7616]{color:#fff;background:var(--accent)}.error-btn-primary[data-v-362d7616]:hover{background:var(--accent-light)}.error-btn-secondary[data-v-362d7616]{color:var(--text-primary);background:var(--bg-surface-hover);border:1px solid var(--border)}.error-btn-secondary[data-v-362d7616]:hover{background:var(--border-light)}.gmp-root[data-v-f04365a4]{position:fixed;z-index:9999;display:flex;flex-direction:column;align-items:flex-end;pointer-events:none}.gmp-root[data-v-f04365a4]>*{pointer-events:auto}.gmp-ball-shell[data-v-f04365a4]{position:relative;width:var(--gmp-ball-size, 64px);height:var(--gmp-ball-size, 64px);flex-shrink:0}.gmp-ball[data-v-f04365a4]{width:100%;height:100%;border:0;border-radius:50%;cursor:grab;position:relative;overflow:hidden;flex-shrink:0;padding:0;background:var(--accent, #6366f1);color:#fff;touch-action:none;box-shadow:0 16px 34px #0f172a38,0 0 0 4px var(--bg-surface, #ffffff);transition:box-shadow var(--transition, .18s ease-out),width var(--transition, .18s ease-out),height var(--transition, .18s ease-out),transform var(--transition, .18s ease-out)}.gmp-ball[data-v-f04365a4]:hover{transform:scale(1.04);box-shadow:0 20px 42px #0f172a47,0 0 0 4px var(--accent-bg-strong, rgba(99, 102, 241, .15))}.gmp-ball[data-v-f04365a4]:active,.gmp-root.is-dragging .gmp-ball[data-v-f04365a4]{cursor:grabbing;transform:scale(.98)}.gmp-ball-cover[data-v-f04365a4]{width:100%;height:100%;object-fit:cover;display:block;border-radius:50%;animation:gmp-spin-f04365a4 12s linear infinite;animation-play-state:paused}.gmp-ball.playing .gmp-ball-cover[data-v-f04365a4]{animation-play-state:running}.gmp-ball-overlay[data-v-f04365a4]{position:absolute;inset:0;border-radius:50%;display:flex;align-items:center;justify-content:center;background:#0000;transition:background .2s ease;z-index:2}.gmp-ball:hover .gmp-ball-overlay[data-v-f04365a4]{background:#0000006b}.gmp-ball-overlay-icon[data-v-f04365a4]{width:28px;height:28px;stroke:#fff;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;opacity:0;transition:opacity .18s ease}.gmp-ball:hover .gmp-ball-overlay-icon[data-v-f04365a4]{opacity:1}.gmp-size-control[data-v-f04365a4]{position:absolute;inset:7px;width:calc(100% - 14px);height:calc(100% - 14px);color:#fff;outline:none;pointer-events:none;z-index:3}.gmp-size-track[data-v-f04365a4],.gmp-size-progress[data-v-f04365a4]{fill:none;vector-effect:non-scaling-stroke}.gmp-size-track[data-v-f04365a4]{stroke:#ffffff6b;stroke-width:2;pointer-events:stroke}.gmp-size-progress[data-v-f04365a4]{stroke:currentColor;stroke-width:3;stroke-linecap:round;transform:rotate(-90deg);transform-origin:50% 50%;pointer-events:stroke;filter:drop-shadow(0 1px 2px rgba(15,23,42,.3));transition:stroke-dashoffset var(--transition, .18s ease-out)}.gmp-size-control:focus-visible .gmp-size-progress[data-v-f04365a4]{stroke-width:4}.gmp-ball-icon[data-v-f04365a4],.gmp-icon[data-v-f04365a4]{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.gmp-ball-icon[data-v-f04365a4]{width:30px;height:30px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes gmp-spin-f04365a4{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.gmp-card[data-v-f04365a4]{position:absolute;width:min(336px,calc(100vw - 40px));max-height:min(430px,calc(100vh - 40px));background:color-mix(in srgb,var(--bg-surface, #ffffff) 96%,transparent);border:1px solid var(--border, #e5e7eb);border-radius:var(--radius-lg, 12px);box-shadow:var(--shadow-float, 0 20px 60px rgba(0, 0, 0, .15));overflow:hidden;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px)}.gmp-root.is-right .gmp-card[data-v-f04365a4]{right:0}.gmp-root.is-left .gmp-card[data-v-f04365a4]{left:0}.gmp-root.is-above .gmp-card[data-v-f04365a4]{bottom:calc(var(--gmp-ball-size, 64px) + 12px);transform-origin:bottom right}.gmp-root.is-below .gmp-card[data-v-f04365a4]{top:calc(var(--gmp-ball-size, 64px) + 12px);transform-origin:top right}.gmp-root.is-left.is-above .gmp-card[data-v-f04365a4]{transform-origin:bottom left}.gmp-root.is-left.is-below .gmp-card[data-v-f04365a4]{transform-origin:top left}.gmp-card-enter-active[data-v-f04365a4],.gmp-card-leave-active[data-v-f04365a4]{transition:opacity .22s ease,transform .22s ease}.gmp-card-enter-from[data-v-f04365a4],.gmp-card-leave-to[data-v-f04365a4]{opacity:0;transform:translateY(10px) scale(.96)}.gmp-card-head[data-v-f04365a4]{display:grid;grid-template-columns:58px minmax(0,1fr) 34px;gap:12px;align-items:center;padding:14px 14px 10px}.gmp-card-cover[data-v-f04365a4]{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:#c7d2fe;color:var(--accent, #6366f1);box-shadow:inset 0 0 0 1px var(--border-light, #eef2f7)}.gmp-card-cover img[data-v-f04365a4]{width:100%;height:100%;object-fit:cover;border-radius:50%;animation:gmp-spin-f04365a4 12s linear infinite;animation-play-state:paused}.gmp-card-cover.playing img[data-v-f04365a4]{animation-play-state:running}.gmp-card-cover .gmp-icon[data-v-f04365a4]{width:28px;height:28px}.gmp-track[data-v-f04365a4]{min-width:0}.gmp-track-title[data-v-f04365a4]{margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.gmp-track-title[data-v-f04365a4]{color:var(--text-primary, #111827);font-size:14px;font-weight:700;line-height:1.35}.gmp-progress-row[data-v-f04365a4]{display:flex;align-items:center;gap:6px;margin-top:4px}.gmp-progress[data-v-f04365a4]{flex:1;height:14px;min-width:0;-webkit-appearance:none;appearance:none;accent-color:var(--accent, #6366f1);background:transparent;cursor:pointer}.gmp-progress[data-v-f04365a4]::-webkit-slider-runnable-track{height:4px;border-radius:999px;background:linear-gradient(90deg,var(--accent, #6366f1) 0%,var(--accent, #6366f1) var(--gmp-progress-percent, 0%),var(--bg-surface-hover, #e5e7eb) var(--gmp-progress-percent, 0%),var(--bg-surface-hover, #e5e7eb) 100%)}.gmp-progress[data-v-f04365a4]::-webkit-slider-thumb{-webkit-appearance:none;width:4px;height:4px;border-radius:50%;background:var(--accent, #6366f1);cursor:pointer;box-shadow:0 0 0 1px var(--bg-surface, #ffffff)}.gmp-progress[data-v-f04365a4]::-moz-range-track{height:4px;border:none;border-radius:999px;background:var(--bg-surface-hover, #e5e7eb)}.gmp-progress[data-v-f04365a4]::-moz-range-progress{height:4px;border-radius:999px;background:var(--accent, #6366f1)}.gmp-progress[data-v-f04365a4]::-moz-range-thumb{width:4px;height:4px;border-radius:50%;background:var(--accent, #6366f1);cursor:pointer;border:none;box-shadow:0 0 0 1px var(--bg-surface, #ffffff)}.gmp-progress[data-v-f04365a4]:focus-visible{outline:none}.gmp-progress[data-v-f04365a4]:focus-visible::-webkit-slider-thumb{box-shadow:0 0 0 1px var(--bg-surface, #ffffff),0 0 0 4px color-mix(in srgb,var(--accent, #6366f1) 18%,transparent)}.gmp-progress[data-v-f04365a4]:focus-visible::-moz-range-thumb{box-shadow:0 0 0 1px var(--bg-surface, #ffffff),0 0 0 4px color-mix(in srgb,var(--accent, #6366f1) 18%,transparent)}.gmp-progress[data-v-f04365a4]:disabled{cursor:default;opacity:.48}.gmp-time[data-v-f04365a4]{flex-shrink:0;color:var(--text-tertiary, #6b7280);font-size:10px;line-height:1;min-width:72px;text-align:right;letter-spacing:.02em}.gmp-time-sep[data-v-f04365a4]{margin:0 2px;opacity:.42}.gmp-mode-btn[data-v-f04365a4]{position:relative}.gmp-meta[data-v-f04365a4]{display:flex;flex-wrap:wrap;gap:6px;margin-top:5px;color:var(--text-tertiary, #6b7280);font-size:11px}.gmp-meta span[data-v-f04365a4]{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:3px 7px;border-radius:var(--radius-sm, 6px);background:var(--bg-surface-hover, #f3f4f6)}.gmp-actions[data-v-f04365a4]{display:flex;align-items:center;justify-content:center;gap:10px;padding:0 14px 12px}.gmp-icon-btn[data-v-f04365a4],.gmp-play-btn[data-v-f04365a4]{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border, #e5e7eb);border-radius:50%;background:var(--bg-surface, #ffffff);color:var(--text-secondary, #374151);cursor:pointer;transition:border-color var(--transition, .18s ease-out),background var(--transition, .18s ease-out),color var(--transition, .18s ease-out),transform var(--transition, .18s ease-out)}.gmp-icon-btn[data-v-f04365a4]{width:34px;height:34px}.gmp-play-btn[data-v-f04365a4]{width:42px;height:42px;background:var(--accent, #6366f1);border-color:var(--accent, #6366f1);color:#fff}.gmp-icon-btn[data-v-f04365a4]:hover,.gmp-play-btn[data-v-f04365a4]:hover{transform:translateY(-1px);border-color:var(--accent, #6366f1);color:var(--accent, #6366f1)}.gmp-play-btn[data-v-f04365a4]:hover{color:#fff;background:var(--accent-light, #4f46e5)}.gmp-icon-btn .gmp-icon[data-v-f04365a4],.gmp-play-btn .gmp-icon[data-v-f04365a4]{width:18px;height:18px}.gmp-lyrics-panel[data-v-f04365a4]{margin:0 14px 12px;height:48px;padding:6px 10px;border-radius:var(--radius-md, 8px);background:var(--accent-bg, rgba(99, 102, 241, .08));color:var(--text-secondary, #374151);font-size:12px;line-height:18px;text-align:center;overflow:hidden;display:flex;flex-direction:column;justify-content:center;gap:0;-webkit-mask-image:linear-gradient(to bottom,transparent 0%,#000 18%,#000 82%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0%,#000 18%,#000 82%,transparent 100%)}.gmp-lyrics-panel p[data-v-f04365a4]{margin:0;min-height:18px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;transition:color var(--transition, .18s ease-out),transform var(--transition, .18s ease-out)}.gmp-lyrics-panel p[data-v-f04365a4]:first-child{color:var(--accent, #6366f1);transform:translateY(0)}.gmp-lyrics-panel.is-loading p[data-v-f04365a4]:first-child{color:var(--text-secondary, #374151)}.gmp-lyrics-panel.is-error[data-v-f04365a4]{background:var(--rose-bg, rgba(239, 68, 68, .1));color:var(--rose, #ef4444);-webkit-mask-image:none;mask-image:none}:root[data-theme-mode=dark] .gmp-card[data-v-f04365a4]{background:color-mix(in srgb,var(--bg-surface, #181f31) 94%,transparent)}:root[data-theme-mode=dark] .gmp-ball[data-v-f04365a4]{box-shadow:0 18px 42px #0000007a,0 0 0 4px var(--bg-surface, #181f31)}:root[data-theme-mode=dark] .gmp-icon-btn[data-v-f04365a4]{background:var(--bg-surface-hover, #222b41)}:root[data-theme-mode=dark] .gmp-card-cover[data-v-f04365a4]{background:#2e3a5c}:root{--bg-root: #f9fafb;--bg-surface: #ffffff;--bg-surface-hover: #f3f4f6;--bg-sidebar: #ffffff;--bg-sidebar-hover: rgba(99, 102, 241, .08);--bg-sidebar-active: rgba(99, 102, 241, .14);--bg-code: #f4f4f8;--text-primary: #111827;--text-secondary: #374151;--text-tertiary: #6b7280;--text-inverse: #f6f7fb;--text-sidebar: #5a6478;--text-sidebar-active: #2f3f9b;--accent: #6366f1;--accent-light: #4f46e5;--accent-bg: rgba(99, 102, 241, .08);--accent-bg-strong: rgba(99, 102, 241, .15);--green: #22c55e;--green-bg: rgba(34, 197, 94, .1);--amber: #f59e0b;--amber-bg: rgba(245, 158, 11, .1);--rose: #ef4444;--rose-bg: rgba(239, 68, 68, .1);--cyan: #3b82f6;--cyan-bg: rgba(59, 130, 246, .1);--border: #e5e7eb;--border-light: #eef2f7;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px;--shadow-sm: 0 1px 3px rgba(0, 0, 0, .06), 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 4px 12px rgba(0, 0, 0, .08);--shadow-lg: 0 8px 30px rgba(0, 0, 0, .12);--shadow-float: 0 20px 60px rgba(0, 0, 0, .15);--font-body: "Noto Sans SC", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "Fira Code", monospace;--font-display: "Playfair Display", serif;--sidebar-w: 216px;--sidebar-w-compact: 72px;--topbar-h: 64px;--layout-content-pad: 28px;--transition: .18s ease-out;--ds-font-h1: 24px;--ds-font-h2: 18px;--ds-font-body: 14px;--ds-font-caption: 12px;--ds-line-title: 1.3;--ds-line-body: 1.6;--ds-content-max: 1440px;--ds-btn-h: 40px;--ds-input-h: 40px}:root[data-theme-mode=dark]{--bg-root: #121624;--bg-surface: #181f31;--bg-surface-hover: #222b41;--bg-sidebar: #0f1422;--bg-sidebar-hover: rgba(255, 255, 255, .08);--bg-sidebar-active: rgba(99, 102, 241, .24);--bg-code: #101726;--text-primary: #e7ecfa;--text-secondary: #b0bddb;--text-tertiary: #7f8baa;--text-inverse: #f5f7ff;--text-sidebar: #9da9c7;--text-sidebar-active: #f5f7ff;--border: #2a3348;--border-light: #222b3f}:root[data-theme-preset=forest]{--accent: #22c55e;--accent-light: #4ade80;--accent-bg: rgba(34, 197, 94, .12);--accent-bg-strong: rgba(34, 197, 94, .24)}:root[data-theme-preset=sunset]{--accent: #f97316;--accent-light: #fb923c;--accent-bg: rgba(249, 115, 22, .12);--accent-bg-strong: rgba(249, 115, 22, .24)}:root[data-theme-preset=ocean]{--accent: #06b6d4;--accent-light: #22d3ee;--accent-bg: rgba(6, 182, 212, .14);--accent-bg-strong: rgba(6, 182, 212, .25)}:root[data-theme-preset=aurora]{--accent: #0ea5a4;--accent-light: #38bdf8;--accent-bg: rgba(14, 165, 164, .14);--accent-bg-strong: rgba(56, 189, 248, .22);--bg-sidebar-active: rgba(14, 165, 164, .2)}:root[data-theme-preset=neon]{--accent: #7c3aed;--accent-light: #22d3ee;--accent-bg: rgba(124, 58, 237, .16);--accent-bg-strong: rgba(34, 211, 238, .26);--bg-sidebar-active: rgba(124, 58, 237, .24)}:root[data-theme-preset=graphite]{--accent: #475569;--accent-light: #64748b;--accent-bg: rgba(71, 85, 105, .14);--accent-bg-strong: rgba(100, 116, 139, .24);--bg-sidebar-active: rgba(71, 85, 105, .2)}:root[data-theme-preset=rose]{--accent: #db2777;--accent-light: #f472b6;--accent-bg: rgba(219, 39, 119, .14);--accent-bg-strong: rgba(244, 114, 182, .24);--bg-sidebar-active: rgba(219, 39, 119, .22)}*{box-sizing:border-box}html,body,#app{margin:0;width:100%;min-height:100%}body{font-family:var(--font-body);background:var(--bg-root);color:var(--text-primary);line-height:1.6;overflow:hidden}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}.app-shell{display:grid;grid-template-columns:var(--sidebar-w) 1fr;grid-template-rows:var(--topbar-h) 1fr;height:100vh;transition:grid-template-columns .18s cubic-bezier(.2,0,0,1);will-change:grid-template-columns}.app-shell.sidebar-minimal{grid-template-columns:var(--sidebar-w-compact) 1fr}.sidebar{grid-row:1 / -1;background:var(--bg-sidebar);border-right:1px solid var(--border-light);color:var(--text-sidebar);overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:rgba(120,128,156,.2) transparent;transition:padding .16s ease}.sidebar::-webkit-scrollbar{width:2px;height:2px}.sidebar::-webkit-scrollbar-track{background:transparent}.sidebar::-webkit-scrollbar-button,.sidebar::-webkit-scrollbar-button:single-button,.sidebar::-webkit-scrollbar-button:start:decrement,.sidebar::-webkit-scrollbar-button:end:increment{display:none!important;width:0!important;height:0!important;border:none!important;background:transparent!important}.sidebar::-webkit-scrollbar-corner{background:transparent}.sidebar::-webkit-scrollbar-thumb{background:#78809c33;border-radius:999px;min-height:26px}.sidebar::-webkit-scrollbar-thumb:hover{background:#828aa74d}.sidebar-logo{width:100%;padding:14px 14px 12px;display:flex;flex-direction:column;align-items:flex-start;gap:6px;border-bottom:1px solid var(--border-light);border-left:none;border-right:none;border-top:none;background:transparent;color:inherit;text-align:left;cursor:pointer}.sidebar-logo:hover{background:var(--bg-sidebar-hover)}.sidebar-logo:focus-visible{outline:2px solid var(--accent-light);outline-offset:-2px}.logo-main{display:flex;align-items:center;gap:10px}.logo-image{width:34px;height:34px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 6px 12px rgba(15,23,42,.16))}.logo-wordmark{display:inline-flex;flex-direction:column;align-items:flex-start;gap:2px;min-width:0}.logo-title{font-size:19px;line-height:1.15;font-weight:700;color:var(--text-primary);letter-spacing:.6px}.logo-subtitle{font-size:11px;line-height:1.2;color:var(--text-secondary);letter-spacing:.2px}.logo-title-svg{width:56px;height:22px;overflow:visible;flex-shrink:0}.logo-subtitle-svg{width:110px;height:22px;overflow:visible}.logo-title-svg text,.logo-subtitle-svg text{fill:transparent;stroke-linecap:round;stroke-linejoin:round;paint-order:stroke}.logo-title-svg text{--logo-dash: 176;font-size:26px;font-weight:700;letter-spacing:1px;font-family:STKaiti,KaiTi,"Noto Serif SC",serif;stroke:#e6eefff5;stroke-width:1.15;stroke-dasharray:176;stroke-dashoffset:176;animation:logo-stroke-reveal 2.7s ease-out infinite}.logo-subtitle-svg text{--logo-dash: 392;font-size:13px;font-weight:500;letter-spacing:.4px;font-family:STKaiti,KaiTi,"Noto Serif SC",serif;stroke:#b5c1dae6;stroke-width:.78;stroke-dasharray:392;stroke-dashoffset:392;animation:logo-stroke-reveal 3.1s ease-out .24s infinite}@keyframes logo-stroke-reveal{0%{stroke-dashoffset:var(--logo-dash, 176);opacity:.24}54%{stroke-dashoffset:0;opacity:1}78%{stroke-dashoffset:0;opacity:.94}to{stroke-dashoffset:0;opacity:.68}}.sidebar-section{padding:14px 10px 6px}.sidebar-section-title{font-size:12px;letter-spacing:.3px;color:var(--text-tertiary);padding:0 8px;margin-bottom:6px}.sidebar-section-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.sidebar-section-toggle{border:none;background:transparent;color:inherit;font:inherit;padding:0;margin:0;width:100%;display:inline-flex;align-items:center;justify-content:space-between;gap:8px;cursor:pointer;text-align:left}.sidebar-section-toggle:hover,.sidebar-section-toggle:hover .sidebar-item-chevron{color:var(--text-primary)}.sidebar-section-caret{display:inline-flex;align-items:center;justify-content:center;width:14px;transition:transform var(--transition)}.sidebar-section-caret.expanded{transform:rotate(180deg)}.sidebar-folder-add{width:22px;height:22px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-tertiary);cursor:pointer;line-height:1;padding:0;display:inline-flex;align-items:center;justify-content:center}.sidebar-folder-add:hover{background:var(--bg-surface-hover);border-color:var(--border-light);color:var(--text-primary)}.sidebar-item{display:flex;align-items:center;gap:11px;padding:10px 14px;border-radius:var(--radius-md);color:var(--text-sidebar);font-size:14px;transition:all var(--transition);cursor:pointer;position:relative}.sidebar-item-button{width:100%;border:none;background:transparent;appearance:none;text-align:left}.sidebar-item:hover{background:var(--bg-sidebar-hover);color:var(--text-primary)}.sidebar-item.active{background:var(--bg-sidebar-active);color:var(--text-sidebar-active);font-weight:500}.sidebar-item.active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:20px;background:var(--accent-light);border-radius:0 3px 3px 0}.sidebar-item .icon{width:20px;height:20px;text-align:center;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.sidebar-icon{width:18px;height:18px}.sidebar-item-chevron{margin-left:auto;width:18px;height:18px;color:color-mix(in srgb,var(--text-tertiary) 88%,var(--text-primary));display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;transition:transform var(--transition),color var(--transition)}.sidebar-item-chevron.expanded{transform:rotate(90deg);color:var(--text-primary)}.sidebar-tag-section .sidebar-section-title{padding:0 14px}.sidebar-tag-section .sidebar-section-toggle{color:var(--text-tertiary)}.sidebar-tag-section .sidebar-section-toggle .sidebar-item-label{font-size:12px;line-height:1.2}.sidebar-subnav{display:grid;gap:4px;margin:4px 0 2px}.sidebar-subitem{width:100%;min-height:40px;display:flex;align-items:center;gap:11px;padding:10px 14px;border-radius:var(--radius-md);color:var(--text-tertiary);font-size:14px;line-height:var(--ds-line-body);transition:all var(--transition)}.sidebar-subitem:hover{background:var(--bg-sidebar-hover);color:var(--text-primary)}.sidebar-subitem.active{background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--text-sidebar-active);font-weight:500}.sidebar-item .badge{margin-left:auto;background:var(--accent);color:#fff;font-size:12px;font-weight:600;padding:1px 7px;border-radius:10px;min-width:20px;text-align:center}.sidebar-folder{width:100%;padding:10px 14px;display:flex;align-items:center;gap:8px;font-size:14px;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition)}.sidebar-folder-row{display:flex;align-items:center;position:relative}.sidebar-folder-row.is-editing{margin-bottom:4px}.sidebar-folder-main{width:100%;min-width:0}.sidebar-folder-row.show-delete .sidebar-folder-main{padding-right:42px}.sidebar-folder-main.editing{border:1px solid rgba(129,140,248,.42);background:#6366f114}.sidebar-folder:hover{background:var(--bg-sidebar-hover);color:var(--text-inverse)}.folder-count{margin-left:auto;color:var(--text-tertiary);font-size:12px;min-width:24px;text-align:right;flex-shrink:0}.folder-inline-input{flex:1;min-width:0;border:none;outline:none;background:transparent;color:var(--text-sidebar-active);font-size:13px;line-height:1.4;padding:0}.folder-inline-input::placeholder{color:var(--text-tertiary)}.folder-actions{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:flex;align-items:center;gap:2px}.folder-action-btn{width:24px;height:24px;border:1px solid transparent;border-radius:6px;background:transparent;color:var(--text-tertiary);cursor:pointer;line-height:1}.folder-action-btn:hover{background:#ffffff1a;border-color:#94a3b842;color:var(--text-inverse)}.folder-action-btn.danger:hover{border-color:#f43f5e59;color:#fecdd3}.sidebar-category-section{margin:10px 12px 0;padding:12px 12px 14px;border-radius:16px;background:#ffffff0a;border:1px solid rgba(148,163,184,.18)}.sidebar-tag-section{margin:0;padding:14px 10px 6px;border:none;border-radius:0;background:transparent}.sidebar-category-section .sidebar-section-head,.sidebar-tag-section .sidebar-section-title{padding:0 8px}.sidebar-category-list{margin-top:8px;display:grid;gap:4px}.sidebar-category-list.is-scrollable{max-height:228px;overflow-y:auto;padding-right:4px}.sidebar-category-list.is-scrollable::-webkit-scrollbar{width:6px}.sidebar-category-list.is-scrollable::-webkit-scrollbar-thumb{border-radius:999px;background:#94a3b859}.sidebar-category-section .sidebar-folder-row{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:4px;align-items:stretch}.sidebar-category-section .sidebar-folder{min-height:34px;border-radius:10px;padding:6px 10px;gap:0}.sidebar-category-section .folder-icon{display:none}.sidebar-category-section .sidebar-folder-name{font-size:12px;font-weight:500}.sidebar-category-section .folder-count{width:26px;min-width:26px;max-width:26px;margin-left:auto;text-align:center;border-radius:6px;padding:1px 0;font-size:11px;color:color-mix(in srgb,var(--text-inverse) 92%,transparent);background:color-mix(in srgb,var(--accent) 42%,transparent)}.sidebar-category-section .sidebar-folder:hover{background:#ffffff14}.sidebar-category-section .sidebar-folder.active{background:color-mix(in srgb,var(--accent) 24%,transparent);border-color:color-mix(in srgb,var(--accent-light) 64%,transparent);color:#f3f7ff}.sidebar-category-section .sidebar-folder.active .folder-count{background:color-mix(in srgb,var(--accent-light) 66%,transparent);color:#f3fffd}.sidebar-category-section .sidebar-folder-main{flex:1 1 0;width:auto;min-width:0}.sidebar-category-section .sidebar-folder-row.show-delete .sidebar-folder-main{padding-right:8px;max-width:calc(100% - 30px)}.sidebar-category-section .folder-actions{position:static;transform:none;align-self:center;flex-shrink:0;padding-right:4px;z-index:auto}.sidebar-category-section .folder-action-btn{width:26px;height:26px;border-radius:7px;font-size:11px;font-weight:700;display:flex;align-items:center;justify-content:center}.sidebar-category-section .folder-actions .folder-action-btn{margin-right:2px}.sidebar-category-section .folder-action-btn.danger{border-color:#f43f5e75;color:#ffd8e2;background:#f43f5e33}.sidebar-category-section .folder-action-btn.danger:hover{border-color:#f43f5eb8;color:#fff4f8;background:#f43f5e52}.sidebar-category-more{margin-top:6px;width:100%;height:24px;border:none;border-radius:8px;background:transparent;color:var(--text-tertiary);cursor:pointer}.sidebar-category-more:hover{background:#94a3b824;color:var(--text-sidebar-active)}.sidebar-category-more-icon{display:inline-block;font-size:13px;line-height:1;transition:transform var(--transition)}.sidebar-category-more-icon.expanded{transform:rotate(180deg)}.sidebar-tag-list{margin-top:8px;display:grid;gap:4px;min-height:0}.sidebar-tag-line{width:100%;border:none;border-radius:var(--radius-md);background:transparent;color:var(--text-sidebar);cursor:pointer;display:flex;align-items:center;gap:11px;min-height:40px;padding:10px 14px;text-align:left;position:relative;transition:all var(--transition)}.sidebar-tag-line.editing{background:var(--bg-sidebar-hover)}.sidebar-tag-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:500}.sidebar-tag-input{flex:1;min-width:0;height:24px;border:1px solid color-mix(in srgb,var(--accent) 32%,transparent);border-radius:7px;background:#fff;color:var(--text-primary);font-size:13px;padding:0 6px}.sidebar-tag-input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 14%,transparent)}.sidebar-tag-count{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:auto;padding:0;font-size:var(--ds-font-caption);font-weight:500;color:color-mix(in srgb,var(--text-sidebar) 74%,var(--text-primary));line-height:1;font-variant-numeric:tabular-nums}.sidebar-tag-dot{width:6px;height:6px;border-radius:50%;flex-shrink:0;border:none;opacity:.3;background:currentColor}.sidebar-tag-line:hover,.sidebar-tag-line.active{background:var(--bg-sidebar-hover);color:var(--text-primary)}.sidebar-tag-line:hover .sidebar-tag-dot{opacity:.5}.sidebar-tag-line.active .sidebar-tag-dot{opacity:.72}.sidebar-tag-line.active .sidebar-tag-count{color:var(--text-sidebar-active)}.sidebar-tag-line.active{background:var(--bg-sidebar-active);color:var(--text-sidebar-active);font-weight:500}.sidebar-profile-link{display:flex;align-items:center;gap:10px;min-height:54px;padding:10px 12px;border-radius:14px;color:var(--text-sidebar);transition:all var(--transition)}.sidebar-profile-link:hover{background:var(--bg-sidebar-hover);color:var(--text-primary)}.sidebar-profile-link.active{background:var(--bg-sidebar-active);color:var(--text-sidebar-active)}.sidebar-profile-avatar{width:34px;height:34px;border-radius:999px;border:1px solid color-mix(in srgb,var(--accent) 24%,var(--border-light));background:linear-gradient(145deg,#4f46e5,#db2777 62%,#f59e0b);color:#fff;font-size:13px;font-weight:700;display:grid;place-items:center;overflow:hidden;flex-shrink:0;box-shadow:0 8px 18px #4f46e52e}.sidebar-profile-avatar.has-image{background:#eef2ff}.sidebar-profile-avatar img{width:100%;height:100%;object-fit:cover;display:block}.sidebar-profile-meta{min-width:0;display:grid;gap:2px}.sidebar-profile-name{color:var(--text-primary);font-size:14px;font-weight:600;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-profile-label{color:var(--text-tertiary);font-size:12px;line-height:1.2;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.app-shell.sidebar-minimal .sidebar-logo{padding:14px 0 12px;align-items:center}.app-shell.sidebar-minimal .logo-main{justify-content:center}.app-shell.sidebar-minimal .logo-wordmark,.app-shell.sidebar-minimal .sidebar-section-title,.app-shell.sidebar-minimal .sidebar-folder-add,.app-shell.sidebar-minimal .sidebar-folder-name,.app-shell.sidebar-minimal .folder-count,.app-shell.sidebar-minimal .folder-actions,.app-shell.sidebar-minimal .folder-inline-input{display:none}.app-shell.sidebar-minimal .sidebar-section{padding:10px 6px 2px}.app-shell.sidebar-minimal .sidebar-item,.app-shell.sidebar-minimal .sidebar-folder{justify-content:center;gap:0;padding-left:8px;padding-right:8px}.app-shell.sidebar-minimal .sidebar-item{position:relative}.app-shell.sidebar-minimal .sidebar-profile-link{justify-content:center;padding-left:8px;padding-right:8px}.app-shell.sidebar-minimal .sidebar-profile-meta{display:none}.app-shell.sidebar-minimal .sidebar-item>:not(.icon):not(.badge){display:none}.app-shell.sidebar-minimal .sidebar-item:hover>.sidebar-item-label{display:inline-flex;align-items:center;position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);background:#111111f0;border:none;border-radius:999px;padding:7px 12px;font-size:var(--ds-font-caption);color:#fff;line-height:1;font-weight:500;white-space:nowrap;z-index:9999;box-shadow:0 10px 24px #0f172a38;pointer-events:none}.app-shell.sidebar-minimal .sidebar-item .icon,.app-shell.sidebar-minimal .folder-icon{width:22px;text-align:center}.app-shell.sidebar-minimal .sidebar-item .badge{position:absolute;top:4px;right:6px;min-width:16px;padding:0 4px;font-size:10px}.app-shell.sidebar-minimal .sidebar-folder-row.show-delete .sidebar-folder-main{padding-right:8px}.app-shell.sidebar-minimal .sidebar-tag-section{display:none}.app-shell.sidebar-minimal .sidebar-subnav.compact{position:fixed;left:68px;top:auto;width:140px;background:var(--bg-surface);border:1px solid var(--border);border-radius:8px;padding:6px;z-index:9999;box-shadow:var(--shadow-float);display:grid;gap:2px}.app-shell.sidebar-minimal .sidebar-subnav.compact .sidebar-subitem{height:32px;padding:0 8px;display:inline-flex;align-items:center;gap:8px;border-radius:6px}.app-shell.sidebar-minimal .sidebar-subnav:not(.compact){display:none}.topbar{position:relative;z-index:900;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:0 var(--layout-content-pad);border-bottom:1px solid var(--border-light);background:var(--bg-surface)}.topbar-breadcrumb{font-size:13px;color:var(--text-secondary)}.topbar-breadcrumb .current{color:var(--text-primary);font-weight:500}.topbar-breadcrumb .sep{color:var(--text-tertiary);margin:0 2px}.topbar-search{flex:1;max-width:640px;margin:0;position:relative}.topbar-search input{width:100%;height:42px;padding:9px 130px 9px 38px;border:1px solid var(--border);border-radius:var(--radius-lg);font-size:14px;background:color-mix(in srgb,var(--bg-root) 72%,var(--bg-surface));color:var(--text-primary)}.topbar-search input:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px var(--accent-bg)}.topbar-search .search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-tertiary)}.topbar-search .shortcut{position:absolute;right:44px;top:50%;transform:translateY(-50%);font-size:11px;font-family:var(--font-mono);color:var(--text-tertiary);background:var(--bg-surface);border:1px solid var(--border);border-radius:4px;padding:1px 6px}.global-ai-trigger{position:absolute;right:10px;top:50%;transform:translateY(-50%);display:inline-grid;place-items:center;width:26px;height:26px;padding:0;border:none;border-radius:50%;background:linear-gradient(135deg,#7c5cff,#2f6df6 48%,#fb6fa8);color:#fff;cursor:pointer;box-shadow:0 5px 12px #2f6df63d;transition:box-shadow var(--transition),transform var(--transition)}.global-ai-trigger:hover,.global-ai-trigger:focus-visible{transform:translateY(calc(-50% - 1px));box-shadow:0 8px 18px #2f6df647;outline:none}.global-ai-trigger-mark{font-size:20px;line-height:1;font-weight:800;transform:translateY(-1px)}.shortcut-btn{cursor:pointer}.topbar-search-panel{position:absolute;top:calc(100% + 8px);left:0;right:0;border:1px solid var(--border-light);border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:var(--shadow-md);padding:6px;display:grid;gap:4px;z-index:20}.search-suggestion{border:none;background:transparent;text-align:left;padding:8px 10px;border-radius:var(--radius-md);cursor:pointer;display:grid;gap:2px}.search-suggestion:hover,.search-suggestion.selected{background:var(--accent-bg)}.search-suggestion-title{font-size:13px;font-weight:600}.search-suggestion-meta{font-size:11px;color:var(--text-tertiary)}.topbar-actions{display:flex;align-items:center;gap:10px}.topbar-hot-strip{flex:0 1 clamp(320px,28vw,432px);min-width:0;height:40px;position:relative;display:inline-flex;align-items:center;gap:10px;padding:0 8px 0 10px;border:1px solid color-mix(in srgb,var(--accent) 10%,var(--border-light));border-radius:999px;background:linear-gradient(90deg,color-mix(in srgb,var(--accent) 8%,var(--bg-surface)) 0%,var(--bg-surface) 100%);box-shadow:0 10px 24px #0f172a0f;min-height:0}.topbar-hot-strip-label{flex:none;display:inline-flex;align-items:center;justify-content:center;height:24px;padding:0 10px;border-radius:999px;background:color-mix(in srgb,var(--accent) 14%,var(--bg-surface));color:var(--accent-light);font-size:12px;font-weight:700;letter-spacing:.02em}.topbar-hot-strip-viewport{flex:1;min-width:0;overflow:hidden}.topbar-hot-strip-link{display:flex;align-items:center;gap:10px;min-width:0;color:var(--text-primary);text-decoration:none}.topbar-hot-strip-link.is-loading{color:var(--text-tertiary);font-size:13px}.topbar-hot-strip-title{min-width:0;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600}.topbar-hot-strip-meta{flex:none;display:inline-flex;align-items:center;gap:5px;max-width:42%;color:var(--text-tertiary);font-size:12px;white-space:nowrap}.topbar-hot-strip-source{overflow:hidden;text-overflow:ellipsis}.topbar-hot-strip-separator{color:color-mix(in srgb,var(--text-tertiary) 72%,transparent)}.topbar-hot-strip-navs{flex:none;display:inline-flex;align-items:center;gap:4px}.topbar-hot-strip-nav{width:24px;height:24px;border:none;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;color:var(--text-secondary);background:transparent;cursor:pointer}.topbar-hot-strip-nav:hover{background:color-mix(in srgb,var(--accent) 10%,var(--bg-surface));color:var(--accent)}.topbar-hot-strip-nav .is-prev{transform:rotate(180deg)}.topbar-hot-fade-enter-active,.topbar-hot-fade-leave-active{transition:opacity .16s ease,transform .16s ease}.topbar-hot-fade-enter-from,.topbar-hot-fade-leave-to{opacity:0;transform:translateY(4px)}.topbar-hot-card{position:absolute;top:calc(100% + 10px);left:0;right:0;padding:12px 14px;border:1px solid color-mix(in srgb,var(--accent) 10%,var(--border));border-radius:14px;background:color-mix(in srgb,var(--bg-surface) 94%,#ffffff);box-shadow:0 18px 48px #0f172a24;z-index:30}.topbar-hot-card-title{font-size:13px;line-height:1.4;font-weight:700;color:var(--text-primary)}.topbar-hot-card-summary{margin-top:6px;font-size:12px;line-height:1.6;color:var(--text-secondary);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.topbar-hot-card-meta{margin-top:8px;display:inline-flex;align-items:center;gap:5px;font-size:11px;color:var(--text-tertiary)}.topbar-hot-card-separator{color:color-mix(in srgb,var(--text-tertiary) 72%,transparent)}.topbar-hot-card-fade-enter-active,.topbar-hot-card-fade-leave-active{transition:opacity .14s ease,transform .14s ease}.topbar-hot-card-fade-enter-from,.topbar-hot-card-fade-leave-to{opacity:0;transform:translateY(-4px)}.topbar-create-btn{height:40px;border-radius:10px;border:1px solid color-mix(in srgb,var(--accent) 36%,var(--border));background:var(--bg-surface);color:var(--accent);display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;font-size:18px;font-weight:500;line-height:1}.topbar-create-btn span:last-child{font-size:16px}.topbar-create-btn:hover{background:color-mix(in srgb,var(--accent) 10%,var(--bg-surface))}.topbar-tools-btn{height:40px;border-radius:10px;border:1px solid var(--border);background:var(--bg-surface);color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:0 14px;font-size:18px;font-weight:500;line-height:1;text-decoration:none;transition:all .15s}.topbar-tools-btn span:last-child{font-size:16px}.topbar-tools-btn:hover{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--bg-surface));color:var(--accent)}.topbar-account{position:relative;display:inline-flex;align-items:center;gap:6px}.topbar-account-trigger{border:none;background:transparent;padding:0;display:inline-flex;align-items:center;gap:0;border-radius:999px;cursor:pointer}.topbar-account-avatar-wrap{position:relative;display:inline-flex}.topbar-account-avatar{width:34px;height:34px;border-radius:999px;border:1px solid rgba(99,102,241,.24);background:linear-gradient(145deg,#4f46e5,#db2777 62%,#f59e0b);color:#fff;font-size:13px;font-weight:700;display:grid;place-items:center;overflow:hidden;position:relative;box-shadow:0 8px 16px #4f46e53d}.topbar-account-avatar.has-image{background:#eef2ff}.topbar-account-avatar img{width:100%;height:100%;object-fit:cover;display:block}.topbar-account-avatar.large{width:44px;height:44px;font-size:15px}.topbar-account-avatar.xlarge{width:86px;height:86px;font-size:29px;border-width:2px}.topbar-account-camera{position:absolute;inset:0;display:grid;place-items:center;background:#0f172a85;color:#fff;font-size:14px;opacity:0;transition:opacity .2s ease}.topbar-account-avatar.large .topbar-account-camera,.topbar-account-avatar.xlarge .topbar-account-camera{font-size:16px}.topbar-account-trigger:hover .topbar-account-camera,.topbar-account-header:hover .topbar-account-camera,.topbar-account-avatar.xlarge:hover .topbar-account-camera{opacity:1}.topbar-account-menu{position:absolute;top:calc(100% + 9px);right:0;width:min(286px,calc(100vw - 24px));border:1px solid var(--border-light);border-radius:14px;background:var(--bg-surface);box-shadow:var(--shadow-md);padding:10px;display:grid;gap:6px;z-index:1000}.topbar-account-header{width:100%;border:1px solid var(--border-light);border-radius:12px;background:#4f46e50d;padding:8px;display:flex;align-items:center;gap:10px;text-align:left;cursor:pointer}.topbar-account-header:hover{background:#4f46e517;border-color:#6366f142}.topbar-account-meta{min-width:0;display:grid;gap:1px}.topbar-account-name{color:var(--text-primary);font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-account-email,.topbar-account-edit-tip{color:var(--text-tertiary);font-size:11px;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-account-edit-tip{color:#6366f1}.topbar-account-menu-item{border:none;border-radius:10px;background:transparent;color:var(--text-primary);text-align:left;font-size:13px;line-height:1;padding:10px 12px;cursor:pointer}.topbar-account-menu-item:hover{background:var(--accent-bg)}.topbar-account-menu-item.danger{color:#be123c}.topbar-account-menu-item.danger:hover{background:#f43f5e1a}.avatar-dialog-overlay{position:fixed;inset:0;z-index:90;background:#0206177a;display:grid;place-items:center;padding:14px}.avatar-dialog{width:min(426px,100%);border:1px solid var(--border-light);border-radius:18px;background:var(--bg-surface);box-shadow:0 28px 56px #0f172a3d;padding:14px;display:grid;gap:10px}.avatar-dialog-header{display:flex;align-items:center;justify-content:space-between}.avatar-dialog-header h3{margin:0;color:var(--text-primary);font-size:16px;font-weight:650}.avatar-dialog-close{width:30px;height:30px;border-radius:8px;border:1px solid var(--border-light);background:transparent;color:var(--text-secondary);cursor:pointer}.avatar-dialog-close:hover{color:var(--text-primary);background:var(--bg-surface-hover)}.avatar-dialog-preview-wrap{display:flex;justify-content:center}.avatar-dialog-hint,.avatar-dialog-file,.avatar-dialog-error{margin:0;font-size:12px;line-height:1.5}.avatar-dialog-hint,.avatar-dialog-file{color:var(--text-secondary)}.avatar-dialog-error{color:#be123c}.avatar-file-input{display:none}.avatar-dialog-actions{display:flex;justify-content:flex-end;flex-wrap:wrap;gap:8px}.topbar-notifications,.topbar-account{position:relative;z-index:1000}.topbar-notice-dot{position:absolute;top:0;right:-2px;min-width:18px;height:18px;border-radius:999px;background:#ef4444;color:#fff;font-size:11px;line-height:1;font-weight:700;display:inline-flex;align-items:center;justify-content:center;padding:0 4px;box-shadow:0 0 0 2px var(--bg-surface)}.topbar-theme-toggle{width:38px;height:38px;border-radius:14px;border:1px solid color-mix(in srgb,var(--accent) 12%,var(--border-light));background:linear-gradient(145deg,#fffffffa,#f3f7ffeb);color:#3446ff;flex:none;overflow:hidden;transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease,color .18s ease}.topbar-theme-toggle:before{content:"";position:absolute;inset:-16px;background:radial-gradient(circle at center,#6366f12e,#6366f100);opacity:0;transform:scale(.7);transition:opacity .2s ease,transform .24s ease}.topbar-theme-toggle:hover{transform:translateY(-1px);border-color:#6366f13d;background:linear-gradient(145deg,#fff,#eef4ff 70%);box-shadow:0 14px 28px #6366f124}.topbar-theme-toggle:hover:before{opacity:1;transform:scale(1)}.topbar-theme-toggle:active{transform:translateY(0) scale(.98)}.topbar-theme-icon-wrap{display:flex;align-items:center;justify-content:center;position:relative;width:20px;height:20px;z-index:1}.topbar-theme-icon{position:absolute;transition:opacity .3s ease,transform .3s ease,filter .3s ease;visibility:hidden}.topbar-theme-icon-wrap.light .topbar-theme-sun{opacity:1;transform:rotate(0) scale(1);visibility:visible}.topbar-theme-icon-wrap.light .topbar-theme-moon{opacity:0;transform:rotate(90deg) scale(0);visibility:hidden}.topbar-theme-icon-wrap.dark .topbar-theme-sun{opacity:0;transform:rotate(-90deg) scale(0);visibility:hidden}.topbar-theme-icon-wrap.dark .topbar-theme-moon{opacity:1;transform:rotate(0) scale(1);visibility:visible}.topbar-theme-toggle:hover .topbar-theme-icon-wrap.light .topbar-theme-sun{transform:rotate(24deg) scale(1.08)}.topbar-theme-toggle:hover .topbar-theme-icon-wrap.dark .topbar-theme-moon{transform:translateY(-1px) rotate(-12deg) scale(1.08)}.topbar-notice-panel{position:absolute;top:calc(100% + 8px);right:0;width:min(320px,calc(100vw - 24px));display:flex;flex-direction:column;gap:8px;padding:8px;border-radius:var(--radius-lg);border:1px solid var(--border-light);background:var(--bg-surface);box-shadow:var(--shadow-md);z-index:1000}.topbar-notice-head{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:4px 2px 2px}.topbar-notice-head-title{color:var(--text-primary);font-size:12px;font-weight:600}.topbar-notice-head-meta{color:var(--text-tertiary);font-size:11px;white-space:nowrap}.topbar-notice-list{display:grid;gap:4px}.topbar-notice-item{all:unset;box-sizing:border-box;width:100%;border-radius:var(--radius-md);text-align:left;padding:8px 10px;cursor:pointer;display:flex;flex-direction:column;gap:2px}.topbar-notice-item:hover{background:var(--accent-bg)}.topbar-notice-item:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.topbar-notice-title{color:var(--text-primary);font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-notice-detail{color:var(--text-secondary);font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-btn{width:38px;height:38px;border-radius:var(--radius-md);border:none;background:transparent;color:var(--text-secondary);cursor:pointer;display:inline-grid;place-items:center;position:relative}.topbar-notice-icon{width:20px;height:20px;color:currentColor;transition:transform .18s ease}:root[data-theme-mode=dark] .topbar-notice-icon{color:#eef2ff}.topbar-btn:hover .topbar-notice-icon,.topbar-btn.active .topbar-notice-icon{transform:translateY(-1px)}.topbar-btn:hover,.topbar-btn.active{background:var(--bg-surface-hover);color:var(--text-primary)}.topbar-btn.primary{width:32px;height:32px;border-radius:10px;background:var(--accent);color:#fff;font-size:18px;font-weight:600;display:grid;place-items:center;line-height:1}.main-content{overflow-y:auto;padding:24px var(--layout-content-pad);scrollbar-width:none;-ms-overflow-style:none}.main-content::-webkit-scrollbar{width:0;height:0}.page{display:flex;flex-direction:column;gap:20px}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.page-title{font-size:24px;font-weight:700;letter-spacing:-.5px}.page-subtitle{font-size:13px;color:var(--text-secondary);margin-top:2px}.page-date{font-size:13px;color:var(--text-tertiary)}.card{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.section-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-light)}.section-title{font-size:14px;font-weight:600}.section-body{padding:16px 20px}.pill{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:500;background:var(--accent-bg);color:var(--accent)}.input,.select{height:36px;border:1px solid var(--border);border-radius:var(--radius-md);padding:0 12px;font-size:13px;background:#fff}.input:focus,.select:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px var(--accent-bg)}.btn{height:36px;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:var(--radius-md);padding:0 14px;background:#fff;color:var(--text-primary);font-size:13px;line-height:1;cursor:pointer}.btn:hover{background:var(--bg-surface-hover)}.btn-primary{border-color:var(--accent);background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-light)}.table-like{display:grid;gap:10px}.library-resource-page{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;align-items:start}.library-resource-main{min-width:0;display:grid;gap:16px}.library-resource-side{min-width:0;display:grid;gap:16px;position:sticky;top:8px}.library-resource-crumb{display:inline-flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:var(--ds-font-caption);line-height:1.5}.library-resource-crumb strong{color:var(--text-primary);font-weight:600}.library-resource-crumb-divider{color:var(--text-tertiary)}.library-resource-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.library-resource-header .page-title{margin:0}.library-resource-header .page-subtitle{margin:4px 0 0}.library-upload-btn{min-width:120px;gap:8px;padding:0 14px;display:inline-flex;align-items:center;background:#6366f1;border-color:#6366f1;color:#fff}.library-upload-btn:hover{background:#4f46e5;border-color:#4f46e5;color:#fff}.library-resource-tabs{display:flex;align-items:center;gap:20px;border-bottom:1px solid var(--border-light);padding-bottom:2px;overflow-x:auto;scrollbar-width:none}.library-resource-tabs::-webkit-scrollbar{width:0;height:0}.library-resource-tab{border:none;background:transparent;color:var(--text-secondary);height:38px;padding:0;font-size:var(--ds-font-body);line-height:var(--ds-line-body);font-weight:500;cursor:pointer;position:relative;white-space:nowrap}.library-resource-tab.active{color:var(--accent);font-weight:600}.library-resource-tab.active:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;border-radius:2px;background:var(--accent)}.library-resource-controls{display:flex;align-items:center;justify-content:space-between;gap:12px}.library-resource-controls-left{min-width:0;flex:1 1 auto}.library-search-box{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:8px;padding:0 12px;min-height:var(--ds-input-h);background:#fff}.library-search-box:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 14%,transparent)}.library-search-icon{width:16px;height:16px;color:var(--text-tertiary);flex-shrink:0}.library-search-input{border:none;box-shadow:none;width:100%;min-width:0;padding:0;background:transparent}.library-search-input:focus{box-shadow:none}.library-resource-controls-right{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.library-select{min-width:112px}.library-view-switch{display:inline-flex;align-items:center;border:1px solid var(--border);border-radius:8px;padding:2px;background:#fff}.library-view-btn{width:34px;height:34px;border:none;border-radius:6px;background:transparent;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;color:var(--text-secondary)}.library-view-btn.active{background:color-mix(in srgb,var(--accent) 12%,transparent);color:var(--accent)}.library-folder-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.library-folder-chip,.library-folder-create{border:1px solid var(--border-light);border-radius:8px;background:#fff;min-height:36px;padding:4px 10px}.library-folder-chip{display:inline-flex;align-items:center;gap:10px;text-align:left;cursor:pointer;position:relative}.library-folder-chip-main{width:100%;display:inline-flex;align-items:center;gap:10px;min-width:0}.library-folder-inline-toggle{margin-left:auto;width:22px;height:22px;border:none;background:transparent;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:0}.library-folder-inline-toggle:hover{color:var(--accent)}.library-folder-chip:hover,.library-folder-chip.active{border-color:color-mix(in srgb,var(--accent) 35%,transparent);box-shadow:var(--shadow-sm)}.library-folder-chip-icon{width:20px;height:20px;display:inline-flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}.library-folder-chip-text{display:inline-flex;align-items:center;gap:4px;flex:1;min-width:0}.library-folder-chip-title{color:var(--text-primary);font-size:var(--ds-font-body);line-height:1.2;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-folder-chip-count,.library-folder-chip-meta{color:var(--text-tertiary);font-size:var(--ds-font-caption);line-height:1;white-space:nowrap;flex-shrink:0;font-variant-numeric:tabular-nums}.library-folder-create{border-style:dashed;color:var(--accent);display:inline-flex;align-items:center;justify-content:center;font-size:var(--ds-font-body);line-height:var(--ds-line-body);font-weight:600;cursor:pointer}.library-folder-create:hover{background:color-mix(in srgb,var(--accent) 8%,transparent)}.library-folder-toggle{border:1px dashed var(--border);border-radius:12px;background:#fff;min-height:64px;padding:10px 12px;display:inline-flex;align-items:center;justify-content:center;gap:6px;color:var(--text-secondary);font-size:var(--ds-font-body);line-height:var(--ds-line-body);font-weight:500;cursor:pointer}.library-folder-toggle:hover{border-color:color-mix(in srgb,var(--accent) 30%,transparent);color:var(--accent);background:color-mix(in srgb,var(--accent) 6%,transparent)}.library-folder-toggle-icon{font-size:14px;line-height:1;transition:transform var(--transition)}.library-folder-toggle-icon.expanded{transform:rotate(180deg)}.library-table-card{padding:0;overflow:hidden;border-radius:12px}.library-table-head{display:grid;grid-template-columns:36px minmax(180px,1.7fr) minmax(120px,1fr) minmax(96px,.55fr) minmax(64px,.35fr) minmax(88px,auto);align-items:center;min-height:46px;padding:0 16px;border-bottom:1px solid var(--border-light);background:color-mix(in srgb,var(--bg-surface) 92%,var(--bg-root));color:var(--text-secondary);font-size:var(--ds-font-caption);line-height:1.5;font-weight:600}.library-table-col,.library-table-cell{min-width:0}.library-table-body{padding:8px 0 0}.library-warning-text{color:var(--amber);font-size:var(--ds-font-caption);line-height:1.5;padding:0 16px 8px}.library-table-list{display:grid}.library-table-row{display:grid;grid-template-columns:36px minmax(180px,1.7fr) minmax(120px,1fr) minmax(96px,.55fr) minmax(64px,.35fr) minmax(88px,auto);align-items:center;min-height:74px;padding:0 16px;border-bottom:1px solid var(--border-light);cursor:pointer;transition:background var(--transition),border-color var(--transition)}.library-table-row:last-child{border-bottom:none}.library-table-row:hover,.library-table-row:focus-visible{background:color-mix(in srgb,var(--accent) 6%,transparent)}.library-table-row:focus-visible{outline:none}.library-table-cell.check,.library-table-col.check{display:inline-flex;align-items:center;justify-content:center}.library-table-cell.name{display:inline-flex;align-items:center;gap:10px}.library-file-icon{width:28px;height:28px;border-radius:8px;background:color-mix(in srgb,var(--accent) 14%,transparent);color:var(--accent);display:inline-flex;align-items:center;justify-content:center;font-size:var(--ds-font-caption);line-height:1;font-weight:700;flex-shrink:0}.library-file-main{min-width:0;display:grid;gap:4px}.library-file-title{color:var(--text-primary);font-size:var(--ds-font-body);line-height:var(--ds-line-body);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.library-file-desc{color:var(--text-secondary);font-size:var(--ds-font-caption);line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.library-table-cell.tags{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px}.library-tag-pill{display:inline-flex;align-items:center;justify-content:center;position:relative;min-height:24px;border-radius:12px;border:none;background:#f0efff;color:#3446ff;padding:0 10px;font-size:var(--ds-font-caption);line-height:1;white-space:nowrap;cursor:pointer;gap:6px;font-weight:600;transition:background var(--transition),color var(--transition)}.library-tag-pill:hover{background:#e6e3ff;color:#2537de}.library-tag-pill.editing{padding-right:16px;box-shadow:0 0 0 1px #f43f5e52}.library-tag-remove{position:absolute;top:-7px;right:-7px;width:17px;height:17px;border:1px solid rgba(244,63,94,.32);border-radius:999px;background:#fff;color:#e11d48;display:inline-flex;align-items:center;justify-content:center;font-size:13px;line-height:1;cursor:pointer;box-shadow:var(--shadow-sm)}.library-tag-pill.muted{background:transparent;color:var(--text-tertiary);box-shadow:inset 0 0 0 1px var(--border-light)}.library-table-cell.updated,.library-table-cell.size{color:var(--text-secondary);font-size:var(--ds-font-caption);line-height:1.5}.library-table-cell.action{display:inline-flex;align-items:center;justify-content:flex-end;gap:8px;min-width:0}.library-table-col.action{display:inline-flex;align-items:center;justify-content:flex-end}.library-icon-btn{width:32px;height:32px;border-radius:10px;border:1px solid transparent;background:transparent;color:var(--text-tertiary);font-size:16px;line-height:1;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.library-icon-btn:hover{border-color:var(--border-light);color:var(--text-primary);background:var(--bg-surface-hover)}.library-grid-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px;padding:0 16px 12px}.library-grid-card{border:1px solid var(--border-light);border-radius:12px;padding:14px;background:#fff;display:grid;gap:10px;cursor:pointer}.library-grid-card:hover,.library-grid-card:focus-visible{border-color:color-mix(in srgb,var(--accent) 36%,transparent);box-shadow:var(--shadow-sm);outline:none}.library-grid-head{display:flex;align-items:center;justify-content:space-between;gap:8px}.library-grid-time{color:var(--text-tertiary);font-size:var(--ds-font-caption);line-height:1.5}.library-grid-title{margin:0;color:var(--text-primary);font-size:var(--ds-font-body);line-height:var(--ds-line-body);font-weight:600}.library-grid-desc{margin:0;color:var(--text-secondary);font-size:var(--ds-font-caption);line-height:1.5;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.library-grid-tags{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px}.library-pagination-row{border-top:1px solid var(--border-light);padding:12px 16px;display:flex;align-items:center;justify-content:flex-start;gap:10px;flex-wrap:nowrap}.library-page-size{min-width:112px}.library-side-card{border-radius:12px;padding:20px 16px;display:grid;gap:14px}.library-side-title{color:var(--text-primary);font-size:var(--ds-font-h2);line-height:var(--ds-line-title);font-weight:600}.library-side-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.library-side-link{border:none;background:transparent;color:var(--accent);font-size:var(--ds-font-caption);line-height:1.5;cursor:pointer;padding:0}.library-overview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.library-overview-item{display:grid;gap:4px}.library-overview-value{color:var(--text-primary);font-size:var(--ds-font-h1);line-height:var(--ds-line-title);font-weight:600}.library-overview-label{color:var(--text-secondary);font-size:var(--ds-font-caption);line-height:1.5}.library-side-tags{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.library-side-tag{min-height:24px;border:none;border-radius:12px;background:#f0efff;color:#3446ff;display:inline-flex;align-items:center;gap:6px;padding:0 10px;font-size:var(--ds-font-caption);font-weight:600;line-height:1;cursor:pointer;transition:background var(--transition),color var(--transition)}.library-side-tag:hover{background:#e6e3ff;color:#2537de}.library-side-tag[draggable=true]{cursor:grab}.library-side-tag[draggable=true]:active{cursor:grabbing}.library-side-tag span:last-child{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:auto;padding:0;color:currentColor;opacity:.72;font-size:var(--ds-font-caption);line-height:1;font-variant-numeric:tabular-nums}.tag-modal-overlay{position:fixed;inset:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#0f172a57}.tag-modal-card{width:min(380px,calc(100vw - 32px));max-height:min(70vh,640px);display:flex;flex-direction:column;border-radius:var(--radius-lg);background:var(--bg-surface);box-shadow:var(--shadow-xl);overflow:hidden;border:1px solid var(--border-light)}.tag-modal-head{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;font-weight:600;font-size:15px;border-bottom:1px solid var(--border-light);flex-shrink:0}.tag-modal-close{width:28px;height:28px;border:none;background:transparent;color:var(--text-tertiary);cursor:pointer;border-radius:999px;display:inline-flex;align-items:center;justify-content:center}.tag-modal-close:hover{background:var(--bg-surface-hover);color:var(--text-primary)}.tag-modal-body{flex:1;overflow-y:auto;padding:12px 16px 16px}.tag-modal-create{width:100%;min-height:34px;padding:0 12px;border:1px dashed var(--border);border-radius:999px;background:transparent;color:var(--text-secondary);font-size:var(--ds-font-caption);font-weight:600;cursor:pointer;text-align:center;margin-bottom:8px}.tag-modal-create:hover{border-color:var(--border);background:var(--bg-surface-hover);color:var(--text-primary)}.tag-modal-item{display:flex;align-items:center;gap:8px;min-height:34px;padding:6px 10px;margin:0 -4px;border-radius:10px;transition:background var(--transition),color var(--transition)}.tag-modal-item:hover{background:var(--bg-surface-hover)}.tag-modal-more{width:100%;min-height:34px;margin-top:6px;border:none;border-radius:10px;background:transparent;color:var(--text-secondary);font-size:var(--ds-font-caption);font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:4px;cursor:pointer}.tag-modal-more:hover{background:var(--bg-surface-hover);color:var(--text-primary)}.tag-modal-name{flex:1;min-width:0;display:inline-flex;align-items:center;justify-content:space-between;gap:12px;font-size:var(--ds-font-body);color:var(--text-primary);cursor:pointer;-webkit-user-select:none;user-select:none}.tag-modal-count{flex-shrink:0;color:var(--text-tertiary);font-size:var(--ds-font-caption);font-variant-numeric:tabular-nums}.tag-modal-delete{width:22px;height:22px;border:none;background:transparent;color:var(--rose, #ef4444);cursor:pointer;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.tag-modal-delete:hover{background:color-mix(in srgb,var(--rose, #ef4444) 12%,transparent)}.tag-modal-empty{padding:24px;text-align:center;color:var(--text-tertiary);font-size:var(--ds-font-caption)}.library-tag-manager{display:grid;gap:8px;padding-top:10px;border-top:1px solid var(--border-light)}.library-tag-create{justify-self:start}.library-tag-manage-row{display:flex;align-items:center;gap:8px;min-height:32px;position:relative}.library-tag-manage-name{width:100%;border:1px solid var(--border-light);border-radius:9px;background:#fff;color:var(--text-primary);min-height:32px;padding:0 10px;display:inline-flex;align-items:center;justify-content:space-between;gap:8px;text-align:left;cursor:pointer}.library-tag-manage-name span{color:var(--text-tertiary);font-size:var(--ds-font-caption)}.library-tag-manage-input{min-height:32px!important;width:100%}.library-tag-manage-delete{position:absolute;top:-6px;right:-6px;width:18px;height:18px;border:1px solid rgba(244,63,94,.32);border-radius:999px;background:#fff;color:#e11d48;display:inline-flex;align-items:center;justify-content:center;line-height:1;cursor:pointer;box-shadow:var(--shadow-sm)}.library-side-empty{color:var(--text-tertiary);font-size:var(--ds-font-caption);line-height:1.5}.library-recent-list{display:grid;gap:10px}.library-recent-item{border:1px solid var(--border-light);border-radius:10px;background:#fff;min-height:56px;padding:10px 12px;display:grid;gap:2px;text-align:left;cursor:pointer}.library-recent-item:hover{border-color:color-mix(in srgb,var(--accent) 24%,transparent);background:color-mix(in srgb,var(--accent) 6%,transparent)}.library-recent-title{color:var(--text-primary);font-size:var(--ds-font-body);line-height:var(--ds-line-body);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-recent-time{color:var(--text-secondary);font-size:var(--ds-font-caption);line-height:1.5}@media(max-width:1280px){.library-resource-page{grid-template-columns:1fr}.library-resource-side{position:static;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}}@media(max-width:1024px){.library-table-head,.library-table-row{grid-template-columns:34px minmax(160px,1.5fr) minmax(108px,.9fr) minmax(88px,.55fr) minmax(56px,.35fr) 84px}}@media(max-width:900px){.library-resource-controls{flex-direction:column;align-items:stretch}.library-resource-controls-right{justify-content:flex-start}.library-table-head,.library-table-row{grid-template-columns:34px minmax(180px,1fr) 108px}.library-table-col.tags,.library-table-col.size,.library-table-cell.tags,.library-table-cell.size{display:none}.library-folder-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.library-pagination-row{flex-direction:column;align-items:stretch;flex-wrap:wrap}.library-page-size{width:100%}}.resource-filter-shell{padding:0;background:transparent;border:none}.resource-filter-bar{display:flex;gap:10px;align-items:center;flex-wrap:nowrap;justify-content:flex-start;padding:0;margin:0}.library-layout{display:grid;grid-template-columns:minmax(0,1fr) 336px;gap:20px;align-items:start}.library-main{min-width:0;display:grid;gap:12px}.library-tag-sphere-card{position:sticky;top:10px;overflow:hidden}.library-tag-sphere-body{padding:14px}.library-tag-module{border-top:1px solid var(--border-light);padding:14px}.resource-filter-keyword-input{flex:1 1 auto;min-width:64px;max-width:none}.resource-filter-folder-select{margin-left:0;flex:0 0 auto}.resource-filter-bar .btn{flex:0 0 auto}.resource-move-toolbar{display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-start;border-top:1px solid var(--border-light)}.resource-select-all{display:inline-flex;gap:7px;align-items:center}.resource-move-status{display:inline-flex;align-items:center;font-size:12px;color:var(--text-secondary)}.resource-page-status{display:inline-flex;align-items:center;font-size:12px;color:var(--text-tertiary)}.resource-move-actions{display:inline-flex;align-items:center;gap:10px;flex-wrap:nowrap;margin-left:auto;justify-content:flex-end}.resource-custom-tags-panel{width:100%;display:flex;flex-direction:column;align-items:stretch;gap:8px;border:1px dashed rgba(99,102,241,.28);border-radius:8px;padding:10px;background:#6366f108}.resource-custom-tags-caption{white-space:nowrap;font-weight:600;font-size:12px}.resource-custom-tags-list{display:flex;align-items:center;gap:6px;flex-wrap:wrap;min-width:0}.resource-custom-tags-empty{font-size:12px;white-space:nowrap}.resource-custom-tags-editor{margin-left:0;display:flex;align-items:center;gap:6px}.resource-custom-tag-input{width:100%;min-width:0;height:30px;font-size:12px;padding:0 10px}.resource-custom-tag-add-btn{height:30px;border-radius:8px;padding:0 12px;font-size:12px;min-width:48px;white-space:nowrap;writing-mode:horizontal-tb}.resource-move-hint{font-size:12px;color:var(--amber);background:var(--amber-bg);border:1px solid rgba(251,191,36,.25);border-radius:999px;padding:4px 10px}.resource-filter-folder-select,.resource-move-select{width:auto;min-width:112px;max-width:176px}.resource-checkbox{width:16px;height:16px;accent-color:var(--accent);cursor:pointer;flex:0 0 auto}.resource-row{position:relative;isolation:isolate;display:grid;grid-template-columns:24px minmax(0,1fr);gap:14px;align-items:stretch;padding:14px 16px;border:1px solid var(--border-light);border-radius:var(--radius-md);background:#fff;transition:border-color var(--transition),box-shadow var(--transition),transform var(--transition),background var(--transition)}.resource-row:hover{border-color:#6366f152;box-shadow:0 20px 38px #0f172a33,0 8px 16px #6366f129;transform:translateY(-4px) scale(1.012);background:linear-gradient(180deg,#f7fafff2,#fff);z-index:4}.resource-row.is-tag-drop-target{border-color:#4f7cff8f;box-shadow:0 0 0 3px #4f7cff26,0 14px 26px #4f7cff2e;background:linear-gradient(180deg,#eef6fffa,#fff)}.resource-row.is-tag-updating{opacity:.82}.resource-row:focus-visible{outline:none;border-color:#6366f166;box-shadow:0 0 0 3px #6366f129,0 12px 24px #0f172a1a;z-index:4}.resource-main{min-width:0;display:grid;gap:8px;align-content:start;position:relative}.resource-title{font-size:16px;line-height:1.35;color:var(--text-primary);letter-spacing:.1px}.resource-detail{font-size:12px;line-height:1.58;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.resource-meta-row{display:flex;justify-content:flex-start;align-items:center;flex-wrap:wrap;gap:6px}.resource-tag-chip{--tag-chip-bg: rgba(99, 102, 241, .1);--tag-chip-border: rgba(99, 102, 241, .24);--tag-chip-color: #4f46e5;display:inline-flex;align-items:center;justify-content:center;height:22px;gap:4px;padding:0 8px;border-radius:999px;border:1px solid var(--tag-chip-border);background:var(--tag-chip-bg);color:var(--tag-chip-color);font-size:11px;line-height:1;white-space:nowrap}.resource-tag-chip.is-empty{border-color:#94a3b85c;background:#94a3b824;color:var(--text-tertiary)}.resource-tag-chip-custom{cursor:grab;-webkit-user-select:none;user-select:none}.resource-tag-chip-custom.is-dragging{opacity:.56}.resource-tag-chip.tone-status{--tag-chip-border: rgba(16, 185, 129, .34);--tag-chip-color: #047857}.resource-tag-chip.tone-source{--tag-chip-border: rgba(14, 165, 233, .34);--tag-chip-color: #0369a1}.resource-tag-chip.tone-priority{--tag-chip-border: rgba(245, 158, 11, .38);--tag-chip-color: #b45309}.resource-tag-chip.tone-topic{--tag-chip-border: rgba(99, 102, 241, .26);--tag-chip-color: #4f46e5}.resource-tag-chip.palette-crimson{--tag-chip-bg: rgba(220, 38, 38, .2)}.resource-tag-chip.palette-orange{--tag-chip-bg: rgba(249, 115, 22, .22)}.resource-tag-chip.palette-amber{--tag-chip-bg: rgba(251, 191, 36, .22)}.resource-tag-chip.palette-lime{--tag-chip-bg: rgba(163, 230, 53, .2)}.resource-tag-chip.palette-emerald{--tag-chip-bg: rgba(16, 185, 129, .2)}.resource-tag-chip.palette-cyan{--tag-chip-bg: rgba(34, 211, 238, .2)}.resource-tag-chip.palette-sky{--tag-chip-bg: rgba(56, 189, 248, .2)}.resource-tag-chip.palette-blue{--tag-chip-bg: rgba(59, 130, 246, .2)}.resource-tag-chip.palette-violet{--tag-chip-bg: rgba(167, 139, 250, .22)}.resource-tag-chip.palette-fuchsia{--tag-chip-bg: rgba(217, 70, 239, .2)}.resource-tag-chip.is-editing{padding-right:6px}.resource-tag-label-btn,.resource-tag-action-btn{border:none;background:transparent;color:inherit;font:inherit;line-height:1;cursor:pointer;padding:0}.resource-tag-label-btn{font-size:11px}.resource-tag-label-btn:hover{text-decoration:underline}.resource-tag-action-btn{width:14px;height:14px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;opacity:.78}.resource-tag-action-btn:hover{opacity:1;background:#0f172a1f}.resource-tag-action-btn.confirm{color:#047857}.resource-tag-action-btn:disabled,.resource-tag-label-btn:disabled{cursor:not-allowed;opacity:.56}.resource-tag-label-text{max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.resource-tag-inline-input{width:92px;height:18px;border:1px solid rgba(79,124,255,.38);border-radius:6px;background:#ffffffbf;color:inherit;font-size:11px;line-height:1;padding:0 6px}.resource-tag-inline-input:focus{outline:none;border-color:#4f7cffcc;box-shadow:0 0 0 2px #4f7cff2e}.resource-tag-updating-hint{font-size:12px;color:var(--accent)}.resource-select-cell{width:20px;display:inline-flex;justify-content:center;align-items:center}.resource-updated-inline{font-size:12px;color:var(--text-tertiary);white-space:nowrap}.resource-hover-summary{position:absolute;top:30px;left:0;width:min(560px,calc(100vw - 124px));padding:12px 14px;border-radius:12px;border:1px solid rgba(148,163,184,.32);background:#fffffffa;color:var(--text-primary);box-shadow:0 18px 38px #0f172a33;opacity:0;transform:translateY(-6px);transition:opacity .18s ease,transform .18s ease;pointer-events:none;z-index:20}.resource-hover-summary:before{content:"";position:absolute;left:22px;top:-6px;width:10px;height:10px;transform:rotate(45deg);background:#fffffffa;border-top:1px solid rgba(148,163,184,.32);border-left:1px solid rgba(148,163,184,.32)}.resource-hover-summary-text{margin:0;font-size:12px;line-height:1.6;letter-spacing:.1px;white-space:pre-wrap;word-break:break-word}.resource-row:hover .resource-hover-summary,.resource-row:focus-visible .resource-hover-summary,.resource-row:focus-within .resource-hover-summary{opacity:1;transform:translateY(0)}@media(max-width:900px){.resource-hover-summary{left:0;width:calc(100vw - 92px)}}.resource-batch-btn{height:30px;border-radius:8px;padding:0 12px;font-size:12px;color:var(--text-secondary)}.resource-batch-btn:hover{color:var(--text-primary)}.resource-batch-btn.danger{border-color:#f43f5e38;color:#e11d48;background:#fff}.resource-batch-btn.danger:hover{border-color:#f43f5e59;background:#f43f5e0f}.resource-folder-select{min-width:140px;height:30px;padding:0 10px;font-size:12px}.resource-type{font-size:11px;font-weight:700;text-align:center;border-radius:var(--radius-sm);padding:7px 8px;letter-spacing:.6px}.type-md{background:var(--accent-bg);color:var(--accent)}.type-video{background:var(--rose-bg);color:var(--rose)}.type-ppt{background:var(--amber-bg);color:var(--amber)}.type-pdf{background:var(--cyan-bg);color:var(--cyan)}.type-image{background:var(--green-bg);color:var(--green)}.muted{color:var(--text-tertiary);font-size:12px}.grid-2{display:grid;grid-template-columns:1fr 320px;gap:20px}.stats-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.stat-card{display:flex;align-items:center;gap:12px;padding:16px}.stat-value{font-size:26px;line-height:1;font-weight:700}.stat-label{color:var(--text-secondary);font-size:12px}.stat-unit{font-size:14px;font-weight:400;color:var(--text-tertiary)}.stat-icon{width:42px;height:42px;border-radius:var(--radius-md);display:grid;place-items:center;font-size:20px;flex-shrink:0}.stat-icon.blue{background:var(--accent-bg);color:var(--accent)}.stat-icon.green{background:var(--green-bg);color:var(--green)}.stat-icon.amber{background:var(--amber-bg);color:var(--amber)}.stat-icon.cyan{background:var(--cyan-bg);color:var(--cyan)}.stat-trend{font-size:11.5px;margin-top:4px;display:flex;align-items:center;gap:3px}.stat-trend.up{color:var(--green)}.dashboard-grid{display:grid;grid-template-columns:1fr 340px;gap:20px}.dashboard-grid-inner{display:flex;flex-direction:column;gap:20px}.section-card{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.section-link{font-size:12px;color:var(--accent);font-weight:500}.review-info h3{margin:0 0 6px;font-size:18px;font-weight:600}.review-info p{margin:0;font-size:13px;opacity:.85}.review-count{z-index:1;display:flex;align-items:center;gap:16px}.review-number{font-size:48px;font-weight:700;line-height:1;font-family:var(--font-display)}.review-start-btn{padding:10px 24px;border-radius:var(--radius-md);background:#fff3;color:#fff;font-size:13px;font-weight:600;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.3);transition:all var(--transition)}.review-start-btn:hover{background:#ffffff4d}.resource-item{display:flex;align-items:center;gap:14px;padding:12px 0;border-bottom:1px solid var(--border-light);transition:all var(--transition);cursor:pointer}.resource-item:last-child{border-bottom:none}.resource-item:hover .resource-title{color:var(--accent)}.resource-type-badge{width:36px;height:36px;border-radius:var(--radius-md);display:grid;place-items:center;font-size:14px;flex-shrink:0;font-weight:600}.resource-type-badge.md{background:var(--accent-bg);color:var(--accent)}.resource-type-badge.video{background:var(--rose-bg);color:var(--rose)}.resource-type-badge.ppt{background:var(--amber-bg);color:var(--amber)}.resource-type-badge.pdf{background:var(--cyan-bg);color:var(--cyan)}.resource-type-badge.img{background:var(--green-bg);color:var(--green)}.resource-info{flex:1;min-width:0}.resource-title{font-size:13.5px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;transition:color var(--transition)}.resource-meta{font-size:12px;color:var(--text-tertiary);display:flex;align-items:center;gap:8px;margin-top:2px}.resource-tags{display:flex;gap:4px;flex-wrap:wrap}.tag-pill{font-size:11px;padding:2px 8px;border-radius:10px;background:var(--accent-bg);color:var(--accent);font-weight:500}.activity-item{display:flex;gap:12px;padding:10px 0;border-bottom:1px solid var(--border-light)}.activity-item:last-child{border-bottom:none}.activity-dot{width:8px;height:8px;border-radius:50%;margin-top:6px;flex-shrink:0}.activity-dot.edit{background:var(--accent)}.activity-dot.create{background:var(--green)}.activity-dot.review{background:var(--amber)}.activity-dot.ai{background:var(--cyan)}.activity-text{font-size:13px;color:var(--text-secondary);line-height:1.5}.activity-text strong{color:var(--text-primary);font-weight:500}.activity-time{font-size:11px;color:var(--text-tertiary);margin-top:2px}.quick-actions-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:12px 16px}.quick-action-btn{padding:10px;border-radius:var(--radius-md);font-size:12.5px;font-weight:500;text-align:center;transition:all var(--transition)}.quick-action-btn.accent{background:var(--accent-bg);color:var(--accent)}.quick-action-btn.accent:hover{background:var(--accent-bg-strong)}.quick-action-btn.green{background:var(--green-bg);color:var(--green)}.quick-action-btn.green:hover{background:#22c55e26}.quick-action-btn.amber{background:var(--amber-bg);color:var(--amber)}.quick-action-btn.amber:hover{background:#f59e0b26}.quick-action-btn.cyan{background:var(--cyan-bg);color:var(--cyan)}.quick-action-btn.cyan:hover{background:#06b6d426}.progress-overview{display:flex;align-items:center;gap:24px;padding-bottom:16px;border-bottom:1px solid var(--border-light);margin-bottom:12px}.progress-ring-wrapper{position:relative;width:90px;height:90px;flex-shrink:0}.progress-ring{width:100%;height:100%;transform:rotate(-90deg)}.progress-ring-bg{fill:none;stroke:var(--border-light);stroke-width:7}.progress-ring-fill{fill:none;stroke:var(--accent);stroke-width:7;stroke-linecap:round;stroke-dasharray:263.89;transition:stroke-dashoffset .6s ease}.progress-ring-label{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}.progress-ring-value{font-size:22px;font-weight:700;color:var(--text-primary);line-height:1}.progress-ring-unit{font-size:12px;font-weight:500;color:var(--text-secondary);margin-left:1px}.progress-summary{display:flex;flex-direction:column;gap:8px;flex:1}.progress-summary-item{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary)}.progress-summary-item strong{margin-left:auto;font-weight:600;color:var(--text-primary)}.progress-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.progress-dot.active{background:var(--accent)}.progress-dot.completed{background:var(--green, #22c55e)}.progress-dot.total{background:var(--text-tertiary)}.progress-plan-list{display:flex;flex-direction:column;gap:10px}.progress-plan-item{display:flex;flex-direction:column;gap:4px}.progress-plan-title{font-size:13px;color:var(--text-primary);font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.progress-bar-wrapper{display:flex;align-items:center;gap:8px}.progress-bar-track{flex:1;height:6px;background:var(--border-light);border-radius:3px;overflow:hidden}.progress-bar-fill{height:100%;background:var(--accent);border-radius:3px;transition:width .4s ease;min-width:2px}.progress-bar-fill.completed{background:var(--green, #22c55e)}.progress-bar-label{font-size:11px;color:var(--text-tertiary);font-weight:500;min-width:32px;text-align:right}.page-tabs{display:flex;gap:0;border-bottom:1px solid var(--border-light);padding:0 8px}.page-tab{padding:12px 14px;font-size:13px;color:var(--text-secondary);cursor:pointer;position:relative;transition:color var(--transition);font-weight:400;border:none;background:transparent}.page-tab:hover{color:var(--text-primary)}.page-tab.active{color:var(--accent);font-weight:500}.page-tab.active:after{content:"";position:absolute;bottom:0;left:14px;right:14px;height:2px;background:var(--accent);border-radius:2px 2px 0 0}.settings-form-grid{display:grid;gap:12px;max-width:520px}.system-grid{max-width:560px}.field{display:grid;gap:6px}.transfer-panel{display:grid;gap:14px;border:1px solid var(--border-light);border-radius:var(--radius-lg);background:#fff;padding:14px}.transfer-content{display:grid;gap:8px}.transfer-actions{display:flex;gap:8px;justify-content:flex-end}.transfer-log-panel{border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-root);padding:10px;display:grid;gap:8px}.transfer-log-title{font-size:13px;font-weight:600;color:var(--text-primary)}.transfer-log-list{margin:0;padding:0;list-style:none;display:grid;gap:6px;max-height:220px;overflow:auto}.transfer-log-item{display:grid;grid-template-columns:56px 1fr;gap:4px 8px;padding:8px;border-radius:var(--radius-sm);border:1px solid var(--border-light);background:#fff}.transfer-log-status{grid-column:1;align-self:start;display:inline-flex;align-items:center;justify-content:center;min-height:20px;border-radius:999px;padding:0 8px;font-size:11px;font-weight:700;letter-spacing:.02em;background:var(--border-light);color:var(--text-secondary)}.transfer-log-name{grid-column:2;font-size:13px;color:var(--text-primary);word-break:break-all}.transfer-log-detail{grid-column:2;font-size:12px;color:var(--text-secondary);word-break:break-all}.transfer-log-item.is-success{border-color:#c7f0db;background:#f5fcf7}.transfer-log-item.is-success .transfer-log-status{background:#d8f8e6;color:#157347}.transfer-log-item.is-failed{border-color:#f6c6cf;background:#fff6f8}.transfer-log-item.is-failed .transfer-log-status{background:#fde3e8;color:#b42336}.transfer-log-item.is-skipped{border-color:#f0e0b8;background:#fffbf1}.transfer-log-item.is-skipped .transfer-log-status{background:#f8efce;color:#9a6b00}.review-banner{background:linear-gradient(135deg,#6366f1,#8b5cf6,#a78bfa);border-radius:var(--radius-lg);color:#fff;padding:24px 28px;display:flex;justify-content:space-between;align-items:center;position:relative;overflow:hidden;box-shadow:0 4px 20px #6366f14d}.review-banner:before{content:"";position:absolute;right:-30px;top:-30px;width:140px;height:140px;border-radius:50%;background:#ffffff14}.review-banner:after{content:"";position:absolute;right:40px;bottom:-50px;width:100px;height:100px;border-radius:50%;background:#ffffff0d}.review-info,.review-count{position:relative;z-index:1}.flashcard{width:560px;max-width:100%;min-height:280px;background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:var(--shadow-md);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:40px}.editor-workbench{display:grid;min-height:460px}.editor-workbench.mode-edit,.editor-workbench.mode-preview{grid-template-columns:1fr}.editor-pane,.preview-pane{border:1px solid var(--border-light);border-radius:var(--radius-md);overflow:hidden;background:#fff;min-height:520px}.editor-textarea{width:100%;min-height:520px;border:none;resize:none;padding:14px;font-family:var(--font-mono);line-height:1.6}.editor-textarea:focus{outline:none}.preview-frontmatter{background:var(--bg-code);border-bottom:1px solid var(--border-light);padding:12px;display:grid;gap:6px}.preview-frontmatter-row{display:grid;grid-template-columns:110px 1fr;gap:8px;font-size:12px}.preview-key{color:var(--accent);font-weight:600}.preview-content{padding:14px;min-height:320px}.preview-content h1,.preview-content h2,.preview-content h3{margin:0 0 8px}.preview-content p{margin:0 0 10px}.preview-content code{background:var(--bg-code);border-radius:4px;padding:1px 4px;font-family:var(--font-mono);font-size:12px}.preview-gap{height:8px}.wikilink{color:var(--accent);font-weight:600}.toc-item{font-size:12px;color:var(--text-secondary)}.version-row{border:1px solid var(--border-light);border-radius:var(--radius-sm);background:#fff;cursor:pointer;padding:8px;display:flex;justify-content:space-between;text-align:left}.version-row:hover{border-color:var(--accent)}.ai-chat-shell{min-height:560px;display:grid;grid-template-rows:1fr auto}.ai-chat-body{padding:16px;overflow-y:auto;display:grid;gap:12px}.ai-msg{display:flex}.ai-msg.user{justify-content:flex-end}.ai-msg-bubble{max-width:78%;border-radius:var(--radius-lg);border:1px solid var(--border-light);padding:12px;background:#fff}.ai-msg.user .ai-msg-bubble{border-color:var(--accent);background:var(--accent);color:#fff}.ai-source-row{margin-top:10px;display:flex;align-items:center;gap:6px;flex-wrap:wrap}.ai-feedback-row{margin-top:10px;display:flex;gap:6px}.ai-chat-input-row{border-top:1px solid var(--border-light);display:flex;gap:10px}.pill-busy{background:var(--amber-bg);color:var(--amber)}.cmd-overlay{position:fixed;inset:0;z-index:60;display:grid;place-items:start center;padding-top:14vh;background:#0f172a59;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.cmd-palette{width:min(680px,94vw);border-radius:var(--radius-xl);background:var(--bg-surface);border:1px solid var(--border-light);box-shadow:var(--shadow-float);overflow:hidden}.cmd-input-wrap{padding:12px 14px;border-bottom:1px solid var(--border-light);display:flex;gap:10px;align-items:center}.cmd-input-wrap .icon{color:var(--text-tertiary)}.cmd-input{flex:1;border:none;background:transparent;font-size:14px}.cmd-input:focus{outline:none}.cmd-results{max-height:360px;overflow-y:auto;padding:8px;display:grid;gap:6px}.cmd-item{border:1px solid transparent;border-radius:var(--radius-md);background:transparent;padding:8px 10px;display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;cursor:pointer}.cmd-item:hover,.cmd-item.selected{border-color:var(--accent-bg-strong);background:var(--accent-bg)}.cmd-icon{width:28px;height:28px;display:grid;place-items:center;border-radius:6px;background:var(--bg-root)}.cmd-label{font-size:13px;font-weight:600}.cmd-shortcut{font-family:var(--font-mono);font-size:11px;color:var(--text-tertiary)}.cmd-empty{padding:12px;color:var(--text-tertiary);font-size:12px}.cmd-footer{border-top:1px solid var(--border-light);padding:10px 14px;display:flex;gap:14px;color:var(--text-tertiary);font-size:11px}.wizard-steps{display:flex;gap:8px;flex-wrap:wrap}.wizard-step{padding:5px 10px;border-radius:999px;border:1px solid var(--border);color:var(--text-secondary);font-size:12px}.wizard-step.active{border-color:var(--accent);color:var(--accent);background:var(--accent-bg)}.progress-track{width:100%;height:8px;background:var(--border-light);border-radius:999px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--accent),var(--accent-light));border-radius:999px}.graph-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.graph-node{min-height:68px;border-radius:var(--radius-md);border:1px solid var(--border-light);background:linear-gradient(180deg,#fff,var(--bg-root));cursor:pointer;font-size:13px;font-weight:600;text-align:left;padding:12px}.graph-node:hover{border-color:var(--accent)}.graph-node.active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-bg);background:linear-gradient(180deg,var(--accent-bg),#fff)}.templates-layout{display:grid;grid-template-columns:300px minmax(0,1fr);gap:16px}.templates-list-body{display:grid;gap:10px;max-height:560px;overflow:auto}.template-item{border:1px solid var(--border-light);border-radius:var(--radius-md);background:#fff;text-align:left;padding:10px 12px;display:grid;gap:4px;cursor:pointer}.template-item:hover{border-color:var(--border);box-shadow:var(--shadow-sm)}.template-item.active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-bg);background:linear-gradient(180deg,var(--accent-bg),#fff)}.template-item-name{font-size:13px;font-weight:600;color:var(--text-primary)}.template-item-desc{font-size:12px;color:var(--text-secondary)}.template-item-meta{font-size:11px;color:var(--text-tertiary)}.templates-editor-body{display:grid;gap:12px}.templates-actions{display:inline-flex;gap:8px;align-items:center}.templates-field{display:grid;gap:6px}.templates-field-label{font-size:12px;color:var(--text-secondary)}.templates-textarea{width:100%;border:1px solid var(--border);border-radius:var(--radius-md);padding:10px 12px;font-size:13px;line-height:1.6;resize:vertical;background:#fff}.templates-textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px var(--accent-bg)}.templates-textarea-json,.daily-template-preview{font-family:var(--font-mono)}.templates-textarea-content{min-height:280px}.templates-message{margin:0;padding:8px 10px;border-radius:var(--radius-md);font-size:12px}.templates-message.error,.daily-notes-message.error{background:#fff4f4;border:1px solid #f5c2c2;color:#9f1239}.templates-message.success,.daily-notes-message.success{background:#f0fdf4;border:1px solid #bbf7d0;color:#166534}.daily-notes-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.daily-notes-entry-body{display:grid;gap:12px}.daily-notes-field{display:grid;gap:6px}.daily-notes-label{font-size:12px;color:var(--text-secondary)}.daily-notes-actions{display:flex;gap:8px}.daily-notes-message{margin:0;padding:8px 10px;border-radius:var(--radius-md);font-size:12px}.daily-template-preview{margin:0;min-height:220px;max-height:380px;overflow:auto;white-space:pre-wrap;line-height:1.6;border:1px solid var(--border-light);border-radius:var(--radius-md);padding:12px;background:var(--bg-root)}.daily-notes-history-body{display:grid;gap:10px}.daily-note-item{border:1px solid var(--border-light);border-radius:var(--radius-md);background:#fff;padding:10px 12px;display:grid;grid-template-columns:120px minmax(0,1fr) auto;align-items:center;gap:10px;cursor:pointer}.daily-note-item:hover{border-color:var(--border);box-shadow:var(--shadow-sm)}.daily-note-date{color:var(--text-secondary);font-size:12px;font-family:var(--font-mono)}.daily-note-title{font-size:13px;color:var(--text-primary);text-align:left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.daily-note-arrow{color:var(--text-tertiary)}@media(max-width:1280px){.library-layout{grid-template-columns:1fr}.library-tag-sphere-card{position:static}}@media(max-width:1024px){:root{--layout-content-pad: 16px}.app-shell{grid-template-columns:176px 1fr}.app-shell.sidebar-minimal{grid-template-columns:var(--sidebar-w-compact) 1fr}.dashboard-grid{grid-template-columns:1fr}.resource-row{grid-template-columns:24px minmax(0,1fr)}.resource-filter-keyword-input{min-width:64px;max-width:none;flex:1 1 auto}.resource-filter-folder-select{margin-left:0;width:auto;max-width:176px;flex:0 0 auto}.resource-custom-tags-panel{flex:1 1 100%;width:100%;flex-wrap:wrap}.resource-custom-tags-editor{margin-left:0;width:100%;justify-content:flex-start;flex-wrap:wrap}.topbar-breadcrumb{display:none}.topbar-search{margin:0;max-width:none}.resource-custom-tag-input{width:100%}.resource-move-actions{margin-left:0;width:100%;justify-content:flex-start;flex-wrap:wrap}.library-tag-sphere-body{padding:12px}.stats-row{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-2{grid-template-columns:1fr}.graph-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.quick-actions-grid,.templates-layout,.daily-notes-grid{grid-template-columns:1fr}.templates-list-body{max-height:none}.daily-note-item{grid-template-columns:1fr;justify-items:start}}@media(max-width:760px){:root{--topbar-h: 56px;--layout-content-pad: 12px}.app-shell,.app-shell.sidebar-minimal{grid-template-columns:1fr;grid-template-rows:var(--topbar-h) minmax(0,1fr) 64px;height:100dvh}.sidebar{grid-row:3;grid-column:1;z-index:950;display:flex;align-items:stretch;gap:4px;padding:6px 8px calc(6px + env(safe-area-inset-bottom));overflow-x:auto;overflow-y:hidden;border-right:none;border-top:1px solid var(--border-light);box-shadow:0 -8px 24px #0f172a14}.sidebar-logo,.sidebar-section-title,.sidebar-tag-section,.sidebar-setting-section,.sidebar>.sidebar-section:nth-of-type(3){display:none!important}.sidebar-subnav:not(.mobile-subnav){display:none!important}.sidebar>.sidebar-section:first-of-type{min-width:0;flex:1 0 auto;display:flex;align-items:center;justify-content:space-between;gap:4px;padding:0}.sidebar-item,.sidebar-item-button,.app-shell.sidebar-minimal .sidebar-item{width:64px;min-width:64px;min-height:52px;flex-direction:column;justify-content:center;gap:3px;padding:6px 4px;border-radius:12px;font-size:11px;line-height:1.2;text-align:center}.sidebar-item[data-nav-key=ai]{display:none!important}.sidebar-item.active:before{left:50%;top:auto;bottom:4px;width:18px;height:2px;transform:translate(-50%);border-radius:999px}.sidebar-item .icon,.app-shell.sidebar-minimal .sidebar-item .icon{width:20px;height:20px;margin:0}.sidebar-item .badge{position:absolute;top:4px;right:8px;min-width:17px;height:17px;padding:0 5px;font-size:10px;line-height:17px}.sidebar-item-chevron{display:none}.sidebar-subnav.mobile-subnav{position:fixed;left:76px;bottom:calc(72px + env(safe-area-inset-bottom));z-index:1200;display:grid!important;grid-template-columns:1fr;gap:4px;width:138px;padding:8px;border:1px solid var(--border-light);border-radius:14px;background:color-mix(in srgb,var(--bg-surface) 96%,transparent);box-shadow:0 18px 36px #0f172a2e}.sidebar-subnav.mobile-subnav .sidebar-subitem{min-height:40px;border-radius:10px;padding:8px 10px}.main-content{min-width:0;min-height:0;padding:16px var(--layout-content-pad) 18px}.topbar{gap:8px;padding:0 var(--layout-content-pad)}.topbar-search input{height:38px;padding-right:10px;font-size:13px}.topbar-search .shortcut,.topbar-hot-strip{display:none}.topbar-actions{gap:6px}.topbar-create-btn{width:38px;height:38px;padding:0;border-radius:10px}.topbar-create-btn span:last-child{display:none}.stats-row,.graph-grid{grid-template-columns:1fr}.resource-filter-bar{flex-wrap:wrap}.resource-filter-folder-select,.resource-filter-bar .btn{flex:1 1 0;max-width:none}.library-resource-header,.library-resource-controls,.library-resource-controls-left,.library-resource-controls-right{align-items:stretch;flex-direction:column}.library-search-box,.library-select{width:100%}.library-table-row{grid-template-columns:40px minmax(0,1fr) auto;min-height:68px;padding:10px 12px;gap:8px}.library-table-cell.updated,.library-table-cell.size,.library-table-col.updated,.library-table-col.size,.library-table-cell.tags,.library-table-col.tags{display:none}.library-table-cell.check,.library-table-col.check{min-width:40px;min-height:44px}.library-table-cell.action{justify-content:flex-end}.library-folder-strip{grid-template-columns:1fr}}.topbar-search input[readonly]{cursor:pointer}.editor-layout{display:grid;grid-template-columns:1fr 280px;gap:20px;flex:1;align-items:start}.editor-main{display:flex;flex-direction:column;gap:12px;height:calc(100vh - var(--topbar-h) - 48px);min-height:0;background:transparent;border:none;box-shadow:none;transition:gap .28s ease}.editor-main.summary-collapsed{gap:6px}.editor-summary-module,.editor-toolbar-module,.editor-note-module{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.editor-summary-module{display:flex;flex-direction:column;gap:10px;max-height:520px;padding:12px 14px;overflow:hidden;background:linear-gradient(180deg,#f7fafff2,#f7faffc7);transition:max-height .32s ease,opacity .24s ease,transform .32s ease,padding .3s ease,border-color .25s ease}.editor-main.summary-collapsed .editor-summary-module{max-height:0;opacity:0;transform:translateY(-10px);padding-top:0;padding-bottom:0;border-color:transparent;pointer-events:none}.editor-summary-module-head{display:flex;align-items:center;gap:8px}.editor-summary-module-body{max-height:420px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(120,128,156,.24) transparent}.editor-summary-module-body::-webkit-scrollbar{width:3px;height:3px}.editor-summary-module-body::-webkit-scrollbar-track{background:transparent}.editor-summary-module-body::-webkit-scrollbar-thumb{border-radius:999px;background:#78809c61}.ai-summary-content-card{border:1px solid rgba(148,163,184,.22);border-radius:12px;background:#ffffffbf;padding:10px 12px}.editor-toolbar-module{overflow:hidden;transition:transform .28s ease}.editor-main.summary-collapsed .editor-toolbar-module{transform:translateY(-2px)}.editor-note-module{display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}.editor-plan-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:12px 16px;border-top:1px solid var(--border-light);background:var(--bg-surface)}.editor-plan-hint{color:var(--text-secondary);font-size:12px}.editor-workbench{flex:1;min-height:0;overflow:hidden}.editor-workbench.mode-edit,.editor-workbench.mode-preview{grid-template-rows:minmax(0,1fr)}.editor-toolbar{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;padding:10px 14px;border-bottom:none;gap:4px;background:linear-gradient(180deg,#f8fafffa,#f8faffe0)}.editor-toolbar-left{display:flex;align-items:center;gap:4px;flex:1;min-width:0}.editor-tool-btn{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:600;color:var(--text-secondary);border:1px solid transparent;background:transparent;cursor:pointer;transition:all var(--transition)}.editor-tool-btn:hover,.editor-tool-btn.active{background:var(--bg-surface-hover);border-color:var(--border-light);color:var(--text-primary);transform:translateY(-1px)}.editor-tool-btn[aria-pressed=true]{background:var(--accent-bg);border-color:var(--accent-bg-strong);color:var(--accent)}.editor-tool-btn:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.editor-tool-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.editor-format-btn{position:relative;overflow:visible}.editor-music-btn{position:relative}.editor-music-glyph{display:inline-flex;transform-origin:center}.editor-music-glyph.is-rotating{animation:editor-music-glyph-spin 1.8s linear infinite}.editor-music-btn.is-playing{color:#0284c7;background:#0ea5e924;border-color:#0ea5e95c}.editor-format-btn-icon{position:relative;z-index:1;display:inline-flex}.editor-format-btn.is-formatting{color:#2563eb;background:#3b82f624}.editor-format-btn.is-formatting:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(120deg,#3b82f600,#3b82f661,#3b82f600);transform:translate(-120%);animation:editor-format-btn-sheen 1.3s ease-in-out infinite;pointer-events:none}.editor-format-btn.is-formatting:after{content:"";position:absolute;inset:-3px;border-radius:calc(var(--radius-sm) + 3px);border:1px solid rgba(59,130,246,.45);animation:editor-format-btn-ring 1.25s ease-out infinite;pointer-events:none}.editor-format-btn.is-formatting .editor-format-btn-icon{animation:editor-format-icon-spin 1.1s linear infinite}.editor-tool-sep{width:1px;height:18px;background:var(--border);margin:0 6px}.editor-tool-right{margin-left:auto;display:flex;gap:4px;align-items:center;flex-shrink:0}.editor-save-toast{font-size:11px;color:var(--green);background:var(--green-bg);padding:2px 8px;border-radius:10px;font-weight:600;margin-right:4px;box-shadow:0 4px 10px #22c55e2e;animation:editor-save-toast-fade 3s ease}.editor-reading-inline{display:flex;flex-wrap:wrap;gap:6px 16px;align-items:baseline;min-height:34px;padding:0 2px}.editor-reading-item{display:inline-flex;align-items:baseline;gap:6px}.editor-reading-label{font-size:12px;color:var(--text-tertiary)}.editor-reading-value{font-size:12px;font-weight:600;color:var(--text-secondary)}.editor-backtop-btn{position:fixed;right:28px;bottom:26px;width:48px;height:48px;border:none;border-radius:50%;padding:0;cursor:pointer;z-index:36;background:conic-gradient(from 180deg,#4f46e5 0 var(--editor-scroll-progress, 0%),rgba(148,163,184,.3) var(--editor-scroll-progress, 0%) 100%);box-shadow:0 16px 30px #4f46e538;transition:transform var(--transition),box-shadow var(--transition),opacity var(--transition),background var(--transition)}.editor-backtop-btn:before{content:"";position:absolute;inset:3px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#fff,#f7faff 56%,#eef2ff)}.editor-backtop-btn:hover{transform:translateY(-2px);box-shadow:0 20px 34px #4f46e547}.editor-backtop-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.editor-backtop-icon{position:relative;z-index:1;display:inline-block;width:16px;height:16px}.editor-backtop-icon:before{content:"";position:absolute;inset:0;border-top:2.5px solid #1f2937;border-left:2.5px solid #1f2937;transform:rotate(45deg) translate(2px,2px)}@media(max-width:960px){.editor-backtop-btn{right:16px;bottom:16px;width:44px;height:44px}}@keyframes editor-save-toast-fade{0%{opacity:0;transform:translateY(-2px)}10%{opacity:1;transform:translateY(0)}80%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-2px)}}@keyframes editor-format-btn-sheen{0%{transform:translate(-120%)}to{transform:translate(120%)}}@keyframes editor-format-btn-ring{0%{opacity:.9;transform:scale(.96)}to{opacity:0;transform:scale(1.1)}}@keyframes editor-format-icon-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes editor-music-glyph-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.editor-pane,.preview-pane{border:none;border-radius:0;background:var(--bg-surface);min-height:0;height:100%;display:flex;align-items:stretch}.editor-loading-state{min-height:0;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#f6f8fd8c,#f6f8fd33)}.editor-loading-skeleton{width:min(760px,86%);display:grid;gap:12px}.editor-loading-line{height:11px;border-radius:999px;background:linear-gradient(90deg,#aab4cd33,#aab4cd85 45%,#aab4cd33);background-size:220% 100%;animation:editor-loading-wave 1.3s ease-in-out infinite}.editor-loading-line-title{height:16px;width:36%;margin-bottom:8px}.editor-loading-line-wide{width:100%}.editor-loading-line-mid{width:72%}.editor-loading-line:not(.editor-loading-line-wide):not(.editor-loading-line-mid):not(.editor-loading-line-title){width:88%}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@keyframes editor-loading-wave{0%{background-position:100% 0}to{background-position:-100% 0}}.editor-textarea{flex:1;min-height:0;height:100%;resize:none;border:none;background:transparent;color:var(--text-primary);padding:24px 28px;font-size:14px;line-height:1.8;overflow-wrap:anywhere;word-break:break-word;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:rgba(120,128,156,.24) transparent}.editor-textarea::placeholder{color:var(--text-tertiary)}.editor-content{flex:1;padding:24px 28px;font-size:14px;line-height:1.8;color:var(--text-primary);overflow-wrap:anywhere;word-break:break-word;overflow-y:auto;min-height:0;height:100%;overscroll-behavior-y:contain;scrollbar-width:thin;scrollbar-color:rgba(120,128,156,.24) transparent}.editor-textarea::-webkit-scrollbar,.editor-content::-webkit-scrollbar,.side-panel-body::-webkit-scrollbar{width:3px;height:3px}.editor-textarea::-webkit-scrollbar-track,.editor-content::-webkit-scrollbar-track,.side-panel-body::-webkit-scrollbar-track{background:transparent}.editor-textarea::-webkit-scrollbar-thumb,.editor-content::-webkit-scrollbar-thumb,.side-panel-body::-webkit-scrollbar-thumb{background:#78809c3d;border-radius:999px}.editor-textarea::-webkit-scrollbar-thumb:hover,.editor-content::-webkit-scrollbar-thumb:hover,.side-panel-body::-webkit-scrollbar-thumb:hover{background:#828aa757}.editor-textarea::-webkit-scrollbar-button,.editor-content::-webkit-scrollbar-button,.side-panel-body::-webkit-scrollbar-button{display:none;width:0;height:0}.editor-content h1{font-size:26px;font-weight:700;margin-bottom:8px;letter-spacing:-.5px}.editor-content h2{font-size:19px;font-weight:600;margin:20px 0 8px}.editor-content h3{font-size:16px;font-weight:600;margin:14px 0 6px}.editor-content p{margin-bottom:12px;color:var(--text-secondary)}.editor-preview-structured{display:grid;gap:10px}.editor-preview-structured .preview-heading{margin:0;line-height:1.45;color:var(--text-primary)}.editor-preview-structured .preview-heading.level-1{font-size:26px;font-weight:700;letter-spacing:-.5px}.editor-preview-structured .preview-heading.level-2{font-size:20px;font-weight:650;margin-top:10px}.editor-preview-structured .preview-heading.level-3{font-size:16px;font-weight:600;margin-top:6px}.editor-preview-structured .preview-paragraph{margin:0;color:var(--text-secondary);line-height:1.86;letter-spacing:.01em;overflow-wrap:anywhere;word-break:break-word}.editor-preview-structured .preview-line-highlight{border-radius:10px;background:#2563eb1f;box-shadow:inset 0 0 0 1px #2563eb47;animation:preview-line-highlight-fade 2.8s ease}.editor-preview-structured .preview-list{margin:0;padding-left:20px;display:grid;gap:6px;color:var(--text-secondary);line-height:1.82}.editor-preview-structured .preview-list.ordered{list-style:decimal}.editor-preview-structured .preview-list.unordered{list-style:disc}.editor-preview-structured .preview-list li{margin:0;overflow-wrap:anywhere;word-break:break-word}.editor-preview-structured .preview-quote{margin:0;border-left:3px solid rgba(59,130,246,.5);background:#3b82f612;border-radius:0 10px 10px 0;padding:10px 12px;color:var(--text-secondary);line-height:1.78;overflow-wrap:anywhere;word-break:break-word}.editor-preview-structured .preview-code-wrap{margin:12px 0;border:1px solid rgba(29,43,74,.7);border-radius:12px;background:#0c1426;box-shadow:0 10px 26px #09101e42;overflow:hidden;transition:box-shadow var(--transition),transform var(--transition)}.editor-preview-structured .preview-code-head{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:38px;padding:0 10px;border-bottom:1px solid rgba(103,120,153,.26);background:linear-gradient(180deg,#1b2437,#151d2e)}.editor-preview-structured .preview-code-system{display:inline-flex;align-items:center;gap:8px}.editor-preview-structured .preview-code-dot{width:11px;height:11px;border-radius:50%}.editor-preview-structured .preview-code-dot.red{background:#ff5f56}.editor-preview-structured .preview-code-dot.amber{background:#ffbd2e}.editor-preview-structured .preview-code-dot.green{background:#27c93f}.editor-preview-structured .preview-code-lang{margin-left:auto;margin-right:auto;font-size:12px;font-weight:600;color:#f2f5ff;letter-spacing:.28px;text-transform:none}.editor-preview-structured .preview-code-actions{display:inline-flex;align-items:center;gap:6px}.editor-preview-structured .preview-code-head-btn{width:24px;height:24px;border:1px solid rgba(163,180,214,.34);background:#172135d1;color:#dbe6ff;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;line-height:1;display:inline-flex;align-items:center;justify-content:center;transition:all var(--transition)}.editor-preview-structured .preview-code-head-btn:hover{border-color:#bfdbfee0;color:#fff;background:#253452f0}.editor-preview-structured .preview-code{margin:0;padding:14px 16px;overflow-x:auto;font-family:var(--font-mono);font-size:13px;line-height:1.72;color:#e8efff;background:linear-gradient(180deg,#0e1628,#090f1c)}.editor-preview-structured .preview-code code{display:block;min-width:max-content;white-space:pre;color:inherit;background:transparent;border-radius:0;padding:0}.editor-preview-structured .preview-code.is-wrapped code{min-width:0;white-space:pre-wrap;word-break:break-word}.editor-preview-structured .preview-code-wrap.is-expanded{position:fixed;top:5vh;left:50%;width:min(96vw,1180px);max-height:90vh;transform:translate(-50%);z-index:110;box-shadow:0 0 0 100vmax #020617b8,0 24px 46px #02061780}.editor-preview-structured .preview-code-wrap.is-expanded .preview-code{max-height:calc(90vh - 39px)}.editor-content a.external-link{color:var(--accent);text-decoration:underline;text-underline-offset:2px;word-break:break-all}.frontmatter{background:var(--bg-code);border:1px solid var(--border);border-radius:var(--radius-md);padding:12px 16px;font-family:var(--font-mono);font-size:12.5px;color:var(--text-secondary);margin-bottom:20px;line-height:1.7}.frontmatter .fm-key{color:var(--accent)}.frontmatter .fm-val{color:var(--green)}.editor-side{display:flex;flex-direction:column;gap:16px;position:sticky;top:8px;align-self:start;max-height:calc(100vh - var(--topbar-h) - 18px);overflow-y:auto;padding-right:2px;scrollbar-width:thin;scrollbar-color:rgba(120,128,156,.24) transparent}.editor-side::-webkit-scrollbar{width:3px;height:3px}.side-panel{display:flex;flex-direction:column;min-height:0;background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);overflow:hidden}.side-panel-header{padding:12px 16px;border-bottom:1px solid var(--border-light);font-size:12.5px;font-weight:600;display:flex;align-items:center;gap:6px}.side-muted{color:var(--text-tertiary);font-weight:400;font-size:11px;margin-left:auto}.side-panel-body{padding:10px 16px;max-height:260px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:rgba(120,128,156,.24) transparent}.side-panel-ai .side-panel-body{max-height:340px}.side-panel-backlinks .side-panel-body,.side-panel-versions .side-panel-body{max-height:300px}.side-panel-backlinks .side-panel-body{max-height:340px}.side-panel-body-toc{max-height:clamp(320px,58vh,760px);overflow-y:auto;overscroll-behavior-y:contain;scrollbar-width:thin}.side-panel-toc{flex:1 1 auto;min-height:0}.side-panel-body-toc::-webkit-scrollbar{width:3px;height:3px}.side-panel-header-sticky{position:sticky;top:0;z-index:1;background:inherit}.ai-summary-header{justify-content:flex-start;gap:8px}.ai-summary-title{display:inline-flex;align-items:center;gap:4px}.ai-summary-refresh{height:30px;min-width:56px;padding:0 10px;border:none;border-radius:10px;background:#94a3b829;color:var(--text-secondary);display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;font-size:12px;font-weight:600;line-height:1;margin-left:2px;cursor:pointer;transition:all var(--transition)}.ai-summary-refresh:hover:not(:disabled){color:var(--accent);background:#3b82f62e}.ai-summary-refresh:disabled{opacity:.45;cursor:not-allowed}.ai-summary-time{display:inline-flex;margin-bottom:8px;font-size:11px;color:var(--text-tertiary)}.ai-summary-content{font-size:12.5px;line-height:1.65;color:var(--text-secondary);white-space:normal;word-break:break-word;overflow-wrap:anywhere}.ai-summary-error{margin-bottom:8px;padding:6px 8px;border-radius:8px;border:1px solid rgba(248,113,113,.35);background:#f871711f;color:#b91c1c;font-size:12px}.toc-item{font-size:12.5px;padding:4px 0 4px calc(var(--toc-depth, 0) * 14px);color:var(--text-secondary);cursor:pointer;transition:color var(--transition)}.toc-item:hover{color:var(--accent)}.toc-item.active{color:var(--accent);font-weight:500}.toc-load-more{width:100%;margin-top:6px;border:1px dashed var(--border);border-radius:10px;background:transparent;color:var(--text-tertiary);font-size:16px;line-height:1;padding:8px 0;cursor:pointer;transition:all var(--transition)}.toc-load-more:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-bg)}@keyframes preview-line-highlight-fade{0%{background:#2563eb38;box-shadow:inset 0 0 0 1px #2563eb73}to{background:#2563eb0f;box-shadow:inset 0 0 0 1px #2563eb29}}.backlink-item{width:100%;border:none;background:transparent;text-align:left;cursor:pointer;padding:8px 0;border-bottom:1px solid var(--border-light)}.backlink-item:last-child{border-bottom:none}.backlink-title{font-size:12.5px;font-weight:500;color:var(--accent)}.backlink-excerpt{font-size:11.5px;color:var(--text-tertiary);margin-top:2px;line-height:1.5}.version-item{display:flex;align-items:center;gap:10px;padding:7px 0;border-bottom:1px solid var(--border-light);font-size:12px}.version-item:last-child{border-bottom:none}.version-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);flex-shrink:0}.version-info{flex:1}.version-time{color:var(--text-secondary);font-weight:500}.version-msg{color:var(--text-tertiary);font-size:11px}.version-restore{color:var(--accent);font-size:11px;font-weight:500;border:none;background:transparent;cursor:pointer}.ai-layout{--ai-panel-height: calc(100vh - var(--topbar-h) - 54px);display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,368px);align-items:stretch;flex:1;min-height:0;gap:18px}.ai-chat-container{flex:1;background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:0 8px 24px #1118270a;display:flex;flex-direction:column;min-height:var(--ai-panel-height);overflow:hidden}.ai-chat-toolbar{padding:12px 20px;border-bottom:1px solid var(--border-light);display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;background:var(--bg-surface)}.ai-side-toolbar{display:grid;gap:10px}.ai-toolbar-field{display:grid;gap:6px}.ai-toolbar-field span{font-size:11px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-tertiary)}.ai-toolbar-field select,.ai-toolbar-field input{height:34px;border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;color:var(--text-primary);font-size:12.5px;padding:0 10px}.wiki-panel{display:grid;gap:6px;position:relative;padding-left:14px;align-self:stretch;height:var(--ai-panel-height);max-height:var(--ai-panel-height);min-height:var(--ai-panel-height);overflow-y:auto;padding-right:2px;scrollbar-width:none}.wiki-panel:before{content:none}.wiki-panel::-webkit-scrollbar{display:none}.wiki-card{position:relative;border:none;background:transparent;border-radius:0;box-shadow:none;padding:8px 10px 8px 14px;display:grid;gap:6px;margin:0;transition:border-color var(--transition),box-shadow var(--transition),transform var(--transition),background var(--transition)}.wiki-card:hover{background:linear-gradient(180deg,#f7fafff2,#fff);box-shadow:0 16px 30px #0f172a24,0 6px 14px #6366f11a;transform:translateY(-2px);z-index:2}.wiki-card h3,.wiki-card h4{margin:0;font-size:13px;color:var(--text-primary)}.wiki-card-title-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;position:relative;display:flex;align-items:center;justify-content:flex-start;gap:8px;width:100%;text-align:left;padding:8px 10px 8px 32px;margin:-2px -4px 0;border-radius:var(--radius-md);overflow:hidden;transition:background-color var(--transition),color var(--transition),padding-left var(--transition)}.wiki-card-title-toggle:hover{background:linear-gradient(90deg,rgba(99,102,241,.08),transparent 72%);color:var(--text-primary);padding-left:36px}.wiki-card-title-toggle:before,.wiki-guide-toggle:before{content:"";position:absolute;left:12px;top:50%;width:8px;height:8px;border-radius:999px;background:#94a3b8;border:2px solid var(--bg-surface);transform:translateY(-50%);transition:height var(--transition),background-color var(--transition),transform var(--transition),box-shadow var(--transition)}.wiki-card-title-toggle:after,.wiki-guide-toggle:after{content:"";position:absolute;left:17px;top:50%;width:2px;height:36px;transform:translateY(-50%);border-radius:999px;background:repeating-linear-gradient(to bottom,rgba(148,163,184,.62) 0 3px,transparent 3px 6px);pointer-events:none}.wiki-card-title-toggle:hover:before,.wiki-card-collapsible:not(.collapsed)>.wiki-card-title-toggle:before,.wiki-guide-toggle:hover:before,.wiki-guide-toggle[aria-expanded=true]:before{height:22px;background:var(--accent);box-shadow:0 0 0 3px #6366f11f}.wiki-card-collapsible.collapsed>*:not(.wiki-card-title-toggle):not(.wiki-guide-toggle){display:none}.wiki-actions{display:flex;flex-wrap:wrap;gap:8px}.wiki-actions button,.wiki-inline-form button{height:34px;border-radius:var(--radius-md);border:1px solid var(--border);background:#fff;color:var(--text-secondary);padding:0 11px;font-size:12px;cursor:pointer;transition:border-color var(--transition),color var(--transition),background-color var(--transition)}.wiki-actions button:hover,.wiki-inline-form button:hover{border-color:var(--accent);color:var(--accent);background:#6366f10f}.wiki-guide-card{background:transparent}.wiki-guide-card.collapsed{gap:0}.synthesis-title-row{display:flex}.synthesis-content-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:flex-start}.synthesis-content-row textarea{resize:vertical;min-height:120px}.synthesis-copy-btn{width:34px;height:34px;border-radius:6px;border:1px solid var(--border-light);background:#fff;color:var(--text-secondary);font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition);padding:0;margin-top:0}.synthesis-copy-btn:hover{border-color:var(--accent);background:#6366f114;color:var(--accent)}.synthesis-copy-btn:active{transform:scale(.95)}.synthesis-copy-btn.synthesis-copy-success{background:#22c55e1f;border-color:#22c55e3d;color:#22c55e}.ai-answer-copy-btn{min-width:86px}.ai-answer-copy-btn.copy-success{border-color:#22c55e52;background:#22c55e1f;color:#22c55e}.wiki-guide-toggle{width:100%;display:flex;align-items:center;justify-content:flex-start;position:relative;gap:8px;text-align:left;border:none;border-radius:0;background:transparent;color:var(--text-secondary);font-size:12px;font-weight:600;line-height:1;padding:10px 8px 10px 32px;cursor:pointer;overflow:hidden;transition:color var(--transition),background-color var(--transition),padding-left var(--transition)}.wiki-guide-toggle:hover{color:var(--text-primary);background:linear-gradient(90deg,rgba(99,102,241,.08),transparent 72%);padding-left:36px}.wiki-guide-toggle[aria-expanded=true]{color:var(--accent);padding-left:36px}.wiki-help-list{margin:0;padding:0;list-style:none;display:grid;gap:8px}.wiki-help-list li{display:grid;gap:2px;padding:8px 10px;border:none;border-radius:0;background:transparent;transition:background-color var(--transition),transform var(--transition),box-shadow var(--transition)}.wiki-help-list li:hover{background:#6366f114;transform:translateY(-1px);box-shadow:0 10px 20px #0f172a1f}.wiki-help-list strong{font-size:12px;color:var(--text-primary)}.wiki-help-list span{font-size:11.5px;line-height:1.5;color:var(--text-secondary)}.wiki-inline-form{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px}.wiki-inline-form select,.wiki-inline-form input,.wiki-synthesis-form input,.wiki-synthesis-form textarea{width:100%;border:1px solid var(--border);border-radius:var(--radius-md);background:#fff;color:var(--text-primary);font-size:12.5px;padding:8px 10px}.wiki-synthesis-form{display:grid;gap:8px}.wiki-synthesis-form textarea{resize:vertical;min-height:110px;line-height:1.5}.wiki-feedback{margin:0;font-size:12px;line-height:1.5}.wiki-feedback.success{color:#0f766e}.wiki-feedback.error{color:#b91c1c}.wiki-placeholder{margin:0;font-size:12px;color:var(--text-tertiary)}.wiki-result-list,.wiki-log-list{margin:0;padding:0;list-style:none;display:grid;gap:8px}.wiki-result-item,.wiki-log-item{border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-root);padding:8px;display:grid;gap:4px}.wiki-result-title,.wiki-index-title{margin:0;font-size:12.5px;font-weight:600;color:var(--text-primary)}.wiki-result-snippet{margin:0;font-size:12px;color:var(--text-secondary);line-height:1.5}.wiki-log-header{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;color:var(--text-secondary)}.wiki-log-status{font-size:11px;text-transform:uppercase;letter-spacing:.04em}.wiki-log-status.success{color:#0f766e}.wiki-log-status.skipped{color:#b45309}.wiki-log-status.failed{color:#b91c1c}.ai-messages{flex:1;padding:24px;overflow-y:auto;scroll-behavior:smooth;display:flex;flex-direction:column;gap:20px}.ai-answer-zone{position:relative;flex:1;min-height:0;overflow:hidden}.ai-scroll-hint{position:absolute;left:50%;bottom:14px;transform:translate(-50%);z-index:10;display:inline-flex;align-items:center;gap:6px;padding:6px 16px;border:1px solid var(--border-light);border-radius:20px;background:#fffffff2;color:var(--text-secondary);font-size:13px;font-weight:600;line-height:1;box-shadow:0 6px 20px #0f172a24;cursor:pointer;transition:opacity .2s,transform .2s;white-space:nowrap}.ai-scroll-hint:hover{background:#fff;color:var(--accent);transform:translate(-50%) translateY(-2px);box-shadow:0 8px 24px #0f172a33}.ai-welcome-typing{display:inline-flex;align-items:center;gap:3px}.ai-typing-caret{width:1px;height:1.1em;background:currentColor;opacity:1;animation:ai-caret-blink .9s steps(1,end) infinite}.ai-msg-demo{opacity:.92}.ai-demo-answer-bubble{background:#6366f114;border-color:#6366f13d}.ai-demo-answer-text{margin:0;white-space:pre-line;line-height:1.72}@keyframes ai-caret-blink{0%,48%{opacity:1}49%,to{opacity:0}}.ai-msg{display:flex;gap:12px;max-width:85%}.ai-msg.user{margin-left:auto;flex-direction:row-reverse}.ai-msg-avatar{width:32px;height:32px;border-radius:50%;flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:14px}.ai-msg.assistant .ai-msg-avatar{background:linear-gradient(135deg,var(--accent),#a78bfa);color:#fff}.ai-msg.user .ai-msg-avatar{background:var(--bg-root);color:var(--text-secondary);border:1px solid var(--border)}.ai-msg.assistant .ai-msg-avatar.is-thinking{animation:ai-star-blink .9s ease-in-out infinite;box-shadow:0 0 #6366f159}@keyframes ai-star-blink{0%,to{opacity:1;transform:scale(1);box-shadow:0 0 #6366f159}50%{opacity:.45;transform:scale(.9);box-shadow:0 0 0 7px #6366f100}}.ai-msg-bubble{padding:14px 18px;border-radius:var(--radius-lg);font-size:13.5px;line-height:1.7}.ai-msg.assistant .ai-msg-bubble{background:var(--bg-root);color:var(--text-primary);border:1px solid var(--border-light)}.ai-msg.user .ai-msg-bubble{background:var(--accent);color:#fff}.ai-msg-source{margin-top:10px;padding:10px 12px;background:#6366f10d;border:1px solid rgba(99,102,241,.18);border-radius:var(--radius-md);display:grid;gap:6px}.ai-source-open-btn{height:30px;border-radius:999px;border:1px solid rgba(99,102,241,.24);background:#6366f11f;color:var(--accent);font-size:12px;padding:0 12px;cursor:pointer;transition:border-color var(--transition),background-color var(--transition),color var(--transition)}.ai-source-open-btn:hover{border-color:var(--accent);background:#6366f12e}.ai-source-title{font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary)}.ai-source-inline{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px}.ai-source-item{flex:0 0 auto;white-space:nowrap;font-size:12px;line-height:1.4;color:var(--accent);border:1px solid rgba(99,102,241,.25);border-radius:999px;background:#6366f11f;padding:3px 10px}.ai-source-item.model-only{color:var(--amber);border-color:#f59e0b4d;background:var(--amber-bg)}.ai-source-item.expanded{background:#6366f138;border-color:var(--accent)}.ai-source-all-btn{flex:0 0 auto;white-space:nowrap;font-size:11px;line-height:1.4;color:var(--text-tertiary);border:1px dashed var(--border);border-radius:999px;background:transparent;padding:3px 8px;cursor:pointer;transition:border-color var(--transition),color var(--transition)}.ai-source-all-btn:hover{border-color:var(--accent);color:var(--accent)}.ai-source-expand{width:100%;margin:2px 0 4px;padding:8px 10px;border-radius:var(--radius-md);background:#6366f10a;border:1px solid rgba(99,102,241,.12);font-size:12px;line-height:1.6}.ai-source-expand-loading{color:var(--text-tertiary);font-style:italic}.ai-source-expand-content{color:var(--text-secondary);white-space:pre-wrap;word-break:break-word}.ai-followup-row{display:flex;align-items:center;gap:6px;margin-top:8px;flex-wrap:wrap}.ai-followup-label{font-size:11px;color:var(--text-tertiary);white-space:nowrap;flex-shrink:0}.ai-followup-chip{font-size:12px;line-height:1.4;color:var(--accent);border:1px solid rgba(99,102,241,.2);border-radius:999px;background:#6366f10f;padding:4px 10px;cursor:pointer;white-space:nowrap;transition:border-color var(--transition),background var(--transition)}.ai-followup-chip:hover{border-color:var(--accent);background:#6366f124}.ai-code-panel-backdrop{position:fixed;inset:0;z-index:90;background:#0f172a8c;display:flex;align-items:center;justify-content:center;padding:32px}.ai-code-panel{width:min(900px,90vw);max-height:80vh;background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-xl);box-shadow:0 24px 60px #0f172a4d;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.ai-code-panel-header{display:flex;align-items:center;justify-content:space-between;padding:14px 18px;border-bottom:1px solid var(--border-light)}.ai-code-panel-lang{font-family:var(--font-mono);font-size:12px;color:var(--text-secondary);font-weight:600}.ai-code-panel-close{width:30px;height:30px;border-radius:999px;border:1px solid var(--border);background:var(--bg-root);color:var(--text-secondary);cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:border-color var(--transition)}.ai-code-panel-close:hover{border-color:var(--accent);color:var(--accent)}.ai-code-panel-body{margin:0;padding:18px;background:var(--bg-code);color:var(--text-primary);font-family:var(--font-mono);font-size:13px;line-height:1.7;white-space:pre-wrap;overflow:auto}.ai-source-dialog-backdrop{position:fixed;inset:0;z-index:80;background:#0f172a80;display:flex;align-items:flex-start;justify-content:flex-start;padding:0}.ai-source-dialog{position:fixed;width:auto;max-width:none;max-height:min(75vh,760px);background:var(--bg-surface);border:1px solid var(--border-light);border-radius:16px;box-shadow:0 22px 56px #0f172a4d;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.ai-source-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border-light)}.ai-source-dialog-header h3{margin:0;font-size:14px}.ai-source-dialog-close{width:30px;height:30px;border-radius:999px;border:1px solid var(--border);background:var(--bg-root);color:var(--text-secondary);cursor:pointer}.ai-source-dialog-list{margin:0;padding:14px 16px 18px;list-style:none;display:grid;gap:0;overflow:auto}.ai-source-dialog-item{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;padding:12px 6px;border-radius:10px;border:none;border-bottom:1px solid var(--border-light);background:transparent;transition:background-color var(--transition)}.ai-source-dialog-item:last-child{border-bottom:none}.ai-source-dialog-item:hover{background:#6366f114}.ai-source-dialog-index{width:24px;height:24px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;color:var(--accent);background:#6366f11f}.ai-source-dialog-content{display:grid;gap:4px}.ai-source-dialog-title{display:block;width:100%;border:0;background:transparent;padding:0;text-align:left;font-size:14px;font-weight:700;line-height:1.35;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;transition:color var(--transition)}.ai-source-dialog-title:hover{color:var(--accent);text-decoration:underline}.ai-source-dialog-type{font-size:11px;color:var(--text-tertiary)}.ai-source-dialog-text{font-size:12px;line-height:1.45;color:var(--text-tertiary);white-space:pre-wrap;word-break:break-word}.ai-structured{display:grid;gap:10px}.ai-structured-notice{border-left:3px solid var(--amber);background:var(--amber-bg);border-radius:var(--radius-sm);padding:8px 10px;color:#8a5a00;font-size:13px;line-height:1.55}.ai-structured-heading{margin:2px 0 0;font-size:14px;line-height:1.4;color:var(--text-primary)}.ai-structured-paragraph{margin:0;color:var(--text-primary);font-size:13.5px;line-height:1.72;white-space:pre-wrap}.ai-structured-list{margin:0;padding-left:18px;display:grid;gap:6px;color:var(--text-primary);font-size:13.5px;line-height:1.68}.ai-structured-list.ordered{padding-left:20px}.ai-structured-quote{margin:0;padding:8px 12px;border-left:3px solid rgba(99,102,241,.45);background:#6366f114;border-radius:var(--radius-sm);color:var(--text-secondary);font-size:13px;line-height:1.65}.ai-structured-code-wrap{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.ai-structured-code-header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border-light);background:var(--bg-surface)}.ai-structured-code-lang{font-family:var(--font-mono);font-size:11px;line-height:1;padding:8px 10px;color:var(--text-tertiary)}.ai-code-panel-btn{border:none;background:transparent;color:var(--text-tertiary);font-size:14px;line-height:1;padding:6px 10px;cursor:pointer;opacity:.5;transition:opacity var(--transition)}.ai-code-panel-btn:hover{opacity:1;color:var(--accent)}.ai-structured-code{margin:0;padding:10px;background:var(--bg-code);color:var(--text-primary);font-family:var(--font-mono);font-size:12px;line-height:1.6;white-space:pre-wrap;overflow-x:auto}.ai-thinking-panel{display:grid;gap:8px}.ai-thinking-header{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--text-secondary)}.ai-thinking-dot,.ai-thinking-live-dot{width:8px;height:8px;border-radius:50%;background:var(--accent);box-shadow:0 0 #4f46e561;animation:ai-thinking-pulse 1.45s ease-in-out infinite}.ai-thinking-time{margin-left:auto;font-size:11.5px;color:var(--text-tertiary);font-variant-numeric:tabular-nums}.ai-thinking-trail{font-size:12px;line-height:1.5;color:var(--text-tertiary)}.ai-search-detail{margin-top:4px;padding:6px 8px;background:var(--surface-2, #f5f5f5);border-radius:6px;font-size:11px}.ai-search-detail-title{font-weight:600;color:var(--text-secondary);margin-bottom:4px}.ai-search-detail-item{display:flex;align-items:center;gap:6px;padding:2px 0}.ai-search-detail-source{display:inline-block;padding:1px 4px;border-radius:3px;font-size:10px;font-weight:600;background:var(--accent);color:#fff}.ai-search-detail-title-text{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-primary)}.ai-search-detail-score{font-variant-numeric:tabular-nums;color:var(--text-tertiary)}.ai-thinking-live{margin-top:4px;padding:6px 10px;display:inline-flex;align-items:center;gap:8px;border-radius:999px;border:1px solid rgba(99,102,241,.25);background:#6366f114;color:var(--text-secondary);font-size:12px}@keyframes ai-thinking-pulse{0%{box-shadow:0 0 #4f46e559;transform:scale(1)}70%{box-shadow:0 0 0 7px #4f46e500;transform:scale(1.05)}to{box-shadow:0 0 #4f46e500;transform:scale(1)}}.ai-step-indicator{display:flex;align-items:center;justify-content:flex-start;gap:0;margin-top:8px;flex-wrap:wrap}.ai-step-node{display:flex;align-items:center;justify-content:center}.ai-step-dot{width:10px;height:10px;border-radius:50%;border:2px solid var(--border);background:var(--bg-root);transition:all var(--transition)}.ai-step-node.done .ai-step-dot{background:var(--accent);border-color:var(--accent)}.ai-step-node.current .ai-step-dot{background:var(--accent);border-color:var(--accent);box-shadow:0 0 #4f46e561;animation:ai-thinking-pulse 1.45s ease-in-out infinite}.ai-step-label{font-size:11px;color:var(--text-tertiary);margin:0 4px;white-space:nowrap;transition:color var(--transition)}.ai-step-label.done{color:var(--accent);font-weight:600}.ai-step-label.current{color:var(--text-primary);font-weight:600}.ai-step-line{width:16px;height:2px;background:var(--border);border-radius:2px;margin:0 2px;transition:background var(--transition)}.ai-step-line.done{background:var(--accent)}.ai-msg-feedback{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.ai-msg-feedback button{font-size:12px;color:var(--text-secondary);padding:4px 10px;border-radius:999px;transition:all var(--transition);border:1px solid var(--border-light);background:#fff;cursor:pointer}.ai-msg-feedback button:hover,.ai-msg-feedback button.active{background:#6366f114;border-color:#6366f152;color:var(--accent)}.ai-feedback-note{font-size:11px;color:#0f766e;align-self:center}.ai-context-pills{display:flex;align-items:center;gap:6px;padding:8px 20px 0;flex-wrap:wrap}.ai-context-pill{display:inline-flex;align-items:center;gap:4px;font-size:11px;line-height:1;border:1px solid var(--border);border-radius:999px;background:var(--bg-root);padding:0;cursor:default;overflow:hidden;transition:border-color var(--transition),box-shadow var(--transition)}.ai-context-pill.actionable{cursor:pointer}.ai-context-pill.actionable:hover{border-color:var(--accent);box-shadow:0 0 0 2px #6366f11a}.ai-context-pill-type{padding:3px 5px 3px 8px;color:var(--text-tertiary);font-weight:600;text-transform:uppercase;letter-spacing:.03em}.ai-context-pill-value{padding:3px 8px 3px 0;color:var(--text-secondary);font-weight:500}.ai-input-bar{padding:16px 20px;border-top:1px solid var(--border-light);display:flex;align-items:center;gap:10px;position:sticky;bottom:0;z-index:2;background:var(--bg-surface)}.ai-input{flex:1;padding:10px 16px;border:1px solid var(--border);border-radius:var(--radius-lg);font-size:13.5px;transition:border-color var(--transition);background:var(--bg-root)}.ai-input:focus{outline:none;border-color:var(--accent)}.ai-send-btn{width:28px;height:28px;border-radius:50%;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:16px;transition:all var(--transition);border:none;cursor:pointer}.ai-send-btn:hover{background:var(--accent-light)}.ai-send-btn:disabled{background:#d1d5db;color:#f8fafc;cursor:not-allowed;box-shadow:none}.ai-send-btn.loading{background:#d1d5db;color:#0f172a}.cmd-overlay{position:fixed;inset:0;background:#00000073;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:200;display:flex;align-items:flex-start;justify-content:center;padding-top:18vh}.cmd-palette{width:560px;background:var(--bg-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-float);overflow:hidden;border:none}.cmd-input-wrap{padding:14px 18px;border-bottom:1px solid var(--border-light);display:flex;align-items:center;gap:10px}.cmd-input-wrap .icon{font-size:18px;color:var(--text-tertiary)}.cmd-input{flex:1;border:none;font-size:15px;color:var(--text-primary);background:transparent}.cmd-input::placeholder{color:var(--text-tertiary)}.cmd-results{max-height:320px;overflow-y:auto;padding:6px;display:block}.cmd-item{display:flex;align-items:center;gap:12px;padding:10px 14px;border-radius:var(--radius-md);cursor:pointer;transition:background var(--transition);border:none;width:100%;background:transparent}.cmd-item:hover,.cmd-item.selected{background:var(--accent-bg)}.cmd-item .cmd-icon{width:28px;height:28px;border-radius:var(--radius-sm);background:var(--bg-root);display:flex;align-items:center;justify-content:center;font-size:13px}.cmd-item .cmd-label{font-size:13.5px;font-weight:400;flex:1;text-align:left}.cmd-item .cmd-shortcut{display:flex;gap:4px}.cmd-item .cmd-shortcut kbd,.cmd-footer kbd{background:var(--bg-root);border:1px solid var(--border);padding:1px 5px;border-radius:3px;font-size:11px;font-family:var(--font-mono)}.cmd-footer{padding:10px 18px;border-top:1px solid var(--border-light);display:flex;align-items:center;gap:16px;font-size:11px;color:var(--text-tertiary)}.cmd-section-label{padding:8px 14px 4px;display:flex;align-items:center;gap:6px;font-size:11px;font-weight:600;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.5px;border-top:1px solid var(--border-light);margin-top:4px}.cmd-note-item .cmd-label{display:flex;flex-direction:column;gap:2px}.cmd-note-item .note-title{font-size:13.5px;font-weight:500}.cmd-note-item .note-snippet{font-size:12px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:380px}@media(max-width:1024px){.editor-layout{grid-template-columns:1fr}.editor-main{height:auto;min-height:calc(100vh - var(--topbar-h) - 48px)}.editor-side{position:static;max-height:none;overflow:visible}.editor-reading-inline{gap:6px 12px}.ai-layout{grid-template-columns:1fr}.wiki-panel{max-height:none;grid-template-columns:repeat(2,minmax(0,1fr))}}.stats-row .stat-card{padding:18px 20px;border-radius:14px;align-items:flex-start}.stats-row .stat-value{letter-spacing:-.4px}.quick-actions-grid{gap:10px;padding:14px 16px 16px}.quick-action-btn{min-height:42px;display:flex;align-items:center;justify-content:center;font-size:12.5px;letter-spacing:.1px}.cmd-palette{width:min(620px,92vw)}.cmd-input-wrap{padding:15px 18px}.cmd-input{font-size:14px}.cmd-results{max-height:360px;padding:8px}.cmd-item{min-height:46px;padding:9px 12px}.cmd-item .cmd-label{font-size:13.5px;font-weight:500}.cmd-item .cmd-shortcut{gap:5px}.sidebar-section{padding:10px 10px 2px}.sidebar-item{min-height:36px}.sidebar-folder{width:100%;border:1px solid transparent;background:transparent;text-align:left;color:var(--text-sidebar)}.sidebar-folder.active{color:var(--text-sidebar-active);background:#6366f11f;border-color:#818cf857}.sidebar-folder-name{min-width:0;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.review-page{align-items:center}.flashcard-layout{display:flex;flex-direction:column;align-items:center;justify-content:center;width:min(980px,100%);min-height:calc(100vh - var(--topbar-h) - 130px);gap:24px}.flashcard-progress{display:flex;align-items:center;width:min(600px,100%);gap:10px;justify-content:center;flex-wrap:nowrap;font-size:13px;color:var(--text-secondary)}.flashcard-progress-compact{flex:0 1 auto;max-width:calc(100% - 98px);min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center}.flashcard-progress-note,.flashcard-sync-time{font-size:12px;color:var(--text-tertiary)}.flashcard-refresh-btn{border:1px solid var(--border);background:var(--bg-surface);color:var(--text-secondary);border-radius:var(--radius-sm);font-size:12px;font-weight:600;padding:6px 10px;flex-shrink:0;transition:all var(--transition)}.flashcard-refresh-btn:hover{background:var(--bg-soft)}.flashcard-refresh-btn:disabled{cursor:not-allowed;opacity:.5}.flashcard-progress-bar{width:220px;height:4px;border-radius:4px;background:var(--border);overflow:hidden}.flashcard-progress-fill{height:100%;border-radius:4px;background:var(--accent);transition:width .22s ease}.flashcard-eta{color:var(--text-tertiary)}.review-flashcard{--review-pointer-x: 50%;--review-pointer-y: 50%;--review-tilt-x: 0deg;--review-tilt-y: 0deg;--review-glow-opacity: 0;position:relative;width:min(600px,100%);min-height:320px;border-radius:20px;border:1px solid rgba(167,139,250,.58);background:radial-gradient(120% 130% at 14% 12%,rgba(96,165,250,.26),transparent 56%),radial-gradient(120% 120% at 86% 88%,rgba(196,181,253,.38),transparent 54%),linear-gradient(142deg,#f7f5ff,#eef3ff 48%,#f3ecff);box-shadow:0 22px 44px #6d28d929,0 10px 24px #6366f124,inset 0 1px #ffffffd1;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:10px;padding:46px 22px 18px;text-align:left;perspective:1600px;transform-style:preserve-3d;transform:translateZ(0);transition:transform .26s ease,border-color .26s ease,box-shadow .26s ease,filter .26s ease;will-change:transform;overflow:hidden;isolation:isolate}.review-flashcard:before,.review-flashcard:after{content:"";position:absolute;pointer-events:none;z-index:0}.review-flashcard:before{inset:-42% -24%;background:radial-gradient(42% 48% at 34% 30%,rgba(96,165,250,.34),transparent 72%),radial-gradient(46% 52% at 74% 72%,rgba(167,139,250,.38),transparent 74%);filter:blur(12px);animation:flashcard-fluid-float 14s ease-in-out infinite}.review-flashcard:after{inset:0;background:radial-gradient(46% 48% at var(--review-pointer-x) var(--review-pointer-y),rgba(255,255,255,.68),transparent 72%),linear-gradient(116deg,rgba(255,255,255,.52) 10%,transparent 36%,transparent 64%,rgba(196,181,253,.24) 90%),radial-gradient(70% 48% at 82% 14%,rgba(191,219,254,.26),transparent 74%);mix-blend-mode:soft-light;opacity:calc(.64 + var(--review-glow-opacity) * .3);transition:opacity .16s ease;animation:flashcard-fluid-sheen 11s linear infinite}.review-flashcard.empty{align-items:center;justify-content:center;text-align:center;border-style:dashed;gap:14px}.review-flashcard:hover{transform:translateY(-2px) rotateX(var(--review-tilt-x)) rotateY(var(--review-tilt-y));box-shadow:0 30px 54px #6d28d938,0 14px 30px #6366f12e,inset 0 1px #ffffffe6;filter:saturate(1.08)}.review-flashcard.flipped{border-color:var(--accent)}.review-flashcard .flashcard-label,.review-flashcard .flashcard-flip-inner,.review-flashcard .flashcard-meta{position:relative;z-index:1}.flashcard-flip-inner{position:relative;width:100%;min-height:228px;flex:1 1 auto;transform-style:preserve-3d;transition:transform .76s cubic-bezier(.2,.9,.2,1);will-change:transform}.review-flashcard.flipped .flashcard-flip-inner{transform:rotateY(180deg) translateZ(6px)}.flashcard-face{position:absolute;inset:0;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:10px;padding:20px 16px 10px;border-radius:14px;border:1px solid rgba(167,139,250,.48);background:#ffffffb8;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);backface-visibility:hidden;-webkit-backface-visibility:hidden}.flashcard-face-front{transform:rotateY(0) translateZ(1px);align-items:center;justify-content:center;text-align:center}.flashcard-face-back{transform:rotateY(180deg) translateZ(1px);align-items:stretch;justify-content:flex-start;padding:18px 14px 8px;background:#f5f1ffd9;border-color:#a78bfa8f}.review-flashcard .flashcard-label{position:absolute;top:14px;left:18px;font-size:11px;font-weight:600;letter-spacing:.02em;padding:3px 10px;border-radius:999px}.review-flashcard .flashcard-label.front{background:#bfdbfe57;color:#1e40af}.review-flashcard .flashcard-label.back{background:#ddd6fe6b;color:#6d28d9}.flashcard-question{font-size:clamp(1.02rem,.98rem + .35vw,1.24rem);font-weight:600;line-height:1.5;color:#2d2355;max-width:100%;width:100%;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere}.flashcard-face-front .flashcard-question{font-size:clamp(1.08rem,.98rem + .4vw,1.42rem);line-height:1.52;text-align:center;max-height:100%;overflow:hidden;background:linear-gradient(108deg,#1d4ed8,#2563eb 45%,#3b82f6);-webkit-background-clip:text;background-clip:text;color:#2563eb;-webkit-text-fill-color:transparent;text-shadow:0 1px 0 rgba(255,255,255,.45),0 10px 24px rgba(37,99,235,.14)}.flashcard-face-back .flashcard-answer{flex:1;min-height:0;font-size:clamp(.74rem,.72rem + .16vw,.84rem);line-height:1.68;overflow-y:auto;padding-right:4px;padding-bottom:2px;color:#3f3567;display:grid;gap:14px}.flashcard-answer-block{display:grid;gap:6px;padding:0;border:0;background:transparent}.flashcard-answer-block+.flashcard-answer-block{padding-top:10px;border-top:1px dashed rgba(139,92,246,.3)}.flashcard-answer-title{margin:0;font-size:12px;font-weight:700;color:#5b21b6;letter-spacing:.01em}.flashcard-answer-list{margin:0;padding-left:18px;display:grid;gap:6px}.flashcard-answer-list li{font-size:inherit;line-height:inherit;color:#3a315d}.flashcard-answer-list li::marker{color:#7c3aed;font-weight:700}.flashcard-answer-text-wrap{display:grid;gap:8px}.flashcard-answer-text{margin:0;font-size:inherit;line-height:inherit;color:#3a315d}.flashcard-face-back .flashcard-answer::-webkit-scrollbar{width:8px}.flashcard-face-back .flashcard-answer::-webkit-scrollbar-track{background:#94a3b82e;border-radius:999px}.flashcard-face-back .flashcard-answer::-webkit-scrollbar-thumb{background:#8b5cf6a3;border-radius:999px}.flashcard-hint{font-size:12px;color:#645b88}@media(prefers-reduced-motion:reduce),(hover:none),(pointer:coarse){.editor-format-btn.is-formatting:before,.editor-format-btn.is-formatting:after,.editor-format-btn.is-formatting .editor-format-btn-icon{animation:none}.review-flashcard{--review-tilt-x: 0deg;--review-tilt-y: 0deg;--review-glow-opacity: 0;transition:border-color .26s ease,box-shadow .26s ease,filter .26s ease}.review-flashcard:hover{transform:translateY(-1px);filter:none}.review-flashcard:before,.review-flashcard:after{animation:none}.flashcard-flip-inner{transition-duration:.52s}}@keyframes flashcard-fluid-float{0%,to{transform:translateZ(0) rotate(.001deg)}50%{transform:translate3d(-8px,12px,0) rotate(.8deg)}}@keyframes flashcard-fluid-sheen{0%{transform:translate(-6%) scale(1)}50%{transform:translate(4%) scale(1.03)}to{transform:translate(-6%) scale(1)}}.flashcard-meta{position:absolute;bottom:8px;left:14px;right:auto;width:calc(100% - 28px);display:flex;justify-content:flex-start}.flashcard-meta-item{font-size:11.5px;color:#645c8a;max-width:100%}.flashcard-meta-line{display:flex;align-items:center;flex-wrap:wrap;gap:4px;line-height:1.4}.flashcard-meta-source{color:#584d83;font-weight:600}.flashcard-meta-guide{color:#6d6591}.flashcard-meta-divider{color:#9a93b8}.flashcard-empty-icon{font-size:34px;line-height:1}.flashcard-empty-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:center}.flashcard-empty-btn{border:1px solid var(--border);background:var(--bg-surface);color:var(--text-secondary);border-radius:999px;font-size:12px;font-weight:700;padding:8px 14px;transition:transform .22s ease,box-shadow .22s ease,background .22s ease,border-color .22s ease}.flashcard-empty-btn:hover{transform:translateY(-1px);border-color:var(--accent);box-shadow:0 10px 20px #3b82f629}.flashcard-empty-btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.flashcard-feedback{display:inline-flex;align-items:center;gap:8px;border-radius:999px;padding:8px 14px;font-size:13px;font-weight:600;border:1px solid transparent;box-shadow:0 8px 24px #0f172a1f}.flashcard-feedback .feedback-emoji{font-size:15px}.flashcard-feedback.again{color:#9f1239;background:#ffe4ea;border-color:#fecdd8}.flashcard-feedback.hard{color:#92400e;background:#fef3c7;border-color:#fcd34d}.flashcard-feedback.good{color:#166534;background:#dcfce7;border-color:#86efac}.flashcard-feedback.easy{color:#1d4ed8;background:#dbeafe;border-color:#93c5fd}.feedback-pop-enter-active,.feedback-pop-leave-active{transition:all .22s ease}.feedback-pop-enter-from,.feedback-pop-leave-to{opacity:0;transform:translateY(8px) scale(.96)}.flashcard-actions{width:min(620px,100%);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.fc-btn{min-width:0;min-height:80px;padding:10px 10px 12px;border-radius:14px;font-size:14px;font-weight:700;letter-spacing:.01em;border:1px solid rgba(148,163,184,.34);background:linear-gradient(180deg,#fff,#f4f6ff);box-shadow:0 6px 14px #0f172a14;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease,background .22s ease}.fc-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 20px #0f172a24}.fc-btn .fc-interval{display:block;min-width:0;padding:0;border:0;background:transparent;border-radius:0;font-size:12px;font-weight:600;line-height:1.32;color:#4b5578}.fc-btn:disabled{cursor:not-allowed;opacity:.52;background:var(--bg-soft);border-color:#94a3b857;box-shadow:none;color:var(--text-tertiary)}.review-error{color:var(--rose);text-align:center}.review-queue{width:min(720px,100%);border:1px solid var(--border-light);background:var(--bg-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm);padding:14px;display:grid;gap:10px}.review-queue-head{display:flex;align-items:center;justify-content:space-between;font-size:13px;font-weight:600;color:var(--text-secondary)}.review-queue-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.review-queue-foot{display:flex;align-items:center;justify-content:center;gap:10px}.review-queue-hint{font-size:12px;color:var(--text-tertiary);text-align:center}.review-queue-more{border:1px solid var(--border);background:var(--bg-surface);color:var(--text-secondary);border-radius:999px;font-size:12px;font-weight:700;padding:7px 12px;transition:all .22s ease}.review-queue-more:hover{border-color:var(--accent);color:var(--accent);transform:translateY(-1px)}.review-queue-more:disabled{cursor:not-allowed;opacity:.6;transform:none}.review-queue-item{border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-surface);padding:10px;display:grid;gap:4px;text-align:left;transition:all var(--transition)}.review-queue-item:hover{border-color:var(--accent);background:var(--accent-bg)}.review-queue-item.active{border-color:var(--accent);background:var(--accent-bg);box-shadow:inset 0 0 0 1px var(--accent)}.review-queue-title{font-size:12.5px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.review-queue-meta{font-size:11px;color:var(--text-tertiary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fc-btn.again{color:#be123c;border-color:#f43f5e66;background:linear-gradient(180deg,#fff7f9,#ffeef3)}.fc-btn.again:hover{background:linear-gradient(180deg,#ffeef3,#ffe4ec)}.fc-btn.again .fc-interval{color:#9f1239}.fc-btn.hard{color:#b45309;border-color:#d9770666;background:linear-gradient(180deg,#fff9ee,#fff3d9)}.fc-btn.hard:hover{background:linear-gradient(180deg,#fff4dd,#ffedc7)}.fc-btn.hard .fc-interval{color:#92400e}.fc-btn.good{color:#166534;border-color:#16a34a66;background:linear-gradient(180deg,#f3fff6,#e9fce9)}.fc-btn.good:hover{background:linear-gradient(180deg,#ecfced,#ddf8df)}.fc-btn.good .fc-interval{color:#166534}.fc-btn.easy{color:#1d4ed8;border-color:#2563eb66;background:linear-gradient(180deg,#f2f8ff,#e9f1ff)}.fc-btn.easy:hover{background:linear-gradient(180deg,#eaf2ff,#deebff)}.fc-btn.easy .fc-interval{color:#1d4ed8}.ai-messages{padding:26px 30px}.editor-content,.ai-messages,.cmd-results{scrollbar-width:none;-ms-overflow-style:none}.editor-content::-webkit-scrollbar,.ai-messages::-webkit-scrollbar,.cmd-results::-webkit-scrollbar{width:0;height:0}.ai-msg{width:100%;max-width:100%;align-items:flex-start}.ai-msg.assistant{justify-content:flex-start}.ai-msg.user{display:grid;grid-template-columns:minmax(0,1fr) 32px;column-gap:12px;align-items:start;justify-content:initial}.ai-msg-content{display:grid;gap:8px;align-items:start}.ai-msg.assistant .ai-msg-content{max-width:min(1180px,96%)}.ai-msg.user .ai-msg-content{grid-column:1;justify-self:end;width:min(980px,calc(100% - 44px));max-width:min(980px,88vw);justify-items:end}.ai-msg.user .ai-msg-avatar{grid-column:2;justify-self:end;margin-top:2px}.ai-msg-bubble{max-width:none;white-space:normal;word-break:normal;overflow-wrap:break-word;font-size:14px;line-height:1.72}.ai-msg.user .ai-msg-bubble{display:inline-block;width:fit-content;max-width:100%;min-width:96px;text-align:left}.ai-msg.assistant .ai-msg-bubble{width:auto;padding:16px 20px}.ai-msg-source{width:min(1080px,100%);max-width:100%}.ai-msg.user .ai-msg-source{justify-self:end}.nebula-shell{border:1px solid rgba(126,132,160,.24);box-shadow:0 24px 48px #1c203414}.graph-edge-threshold-control{display:grid;grid-template-columns:auto minmax(160px,320px) auto;gap:10px;align-items:center;padding:4px 10px;border-radius:10px;border:1px solid rgba(138,146,170,.16);background:#f6f8fd73;opacity:.78}.graph-edge-threshold-control .muted{font-size:12px;color:#54607cbf}.graph-threshold-slider{width:100%;accent-color:#8a99bd;opacity:.75;filter:saturate(.7)}.nebula-viewport{position:relative;border:1px solid rgba(138,146,170,.22);border-radius:18px;overflow:hidden;min-height:540px;cursor:grab;background:radial-gradient(circle at 18% 16%,#6874b83d,#fff0 48%),radial-gradient(circle at 84% 20%,#a862d133,#fff0 50%),radial-gradient(circle at 58% 72%,#4883d829,#fff0 46%),linear-gradient(180deg,#f8f9fc,#f2f5fb)}.nebula-viewport:active{cursor:grabbing}.nebula-svg{width:100%;height:100%;display:block}.nebula-edge{stroke:#aeb6cc;stroke-linecap:round;transition:opacity .2s ease,stroke .2s ease}.nebula-edge.active{stroke:#6d7fd4}.nebula-drag-guide{pointer-events:none}.nebula-guide-axis{stroke:#6d7fd4ad;stroke-width:.9;stroke-dasharray:5 5}.nebula-guide-ring{stroke:#4e66c6b8;stroke-width:1.2;stroke-dasharray:8 6;fill:#6d7fd40f}.nebula-guide-link{stroke:#4e66c6db;stroke-width:1.2;stroke-dasharray:6 4}.nebula-star{fill:#a8b1c8}.nebula-node{cursor:pointer;-webkit-user-select:none;user-select:none}.nebula-node text{fill:#58627a;font-size:10.5px;font-weight:600;letter-spacing:.02em;paint-order:stroke;stroke:#f5f7fff5;stroke-width:2.2;stroke-linejoin:round;pointer-events:none}.nebula-node circle{filter:drop-shadow(0 0 4px rgba(126,132,160,.28))}.nebula-node.core text{fill:#3b4458;font-size:11px;font-weight:700}.nebula-node.active circle{stroke:#111827;stroke-width:1.2;filter:drop-shadow(0 0 8px rgba(111,118,177,.46))}.nebula-node.active text{fill:#111827;font-weight:700}.graph-node-tooltip{position:absolute;left:0;top:0;z-index:4;width:280px;padding:8px 10px;border-radius:10px;border:1px solid rgba(98,110,155,.3);background:#fafcfff5;box-shadow:0 8px 18px #141a2e26;pointer-events:none}.graph-node-tooltip-title{font-size:12px;font-weight:700;color:#1f2937;line-height:1.35;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.graph-node-tooltip-meta{margin-top:2px;font-size:11px;color:#5b6784}.graph-side-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;align-items:start}.graph-side-card{min-height:196px}.graph-side-card-body{overflow:visible;word-break:break-word}.graph-node-meta{display:flex;gap:8px;flex-wrap:wrap}.graph-meta-pill{background:#3e68d61f;color:#2e4fae}.graph-related-node-btn{height:30px;max-width:170px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.graph-resource-list{display:grid;gap:8px;align-content:start}.graph-resource-item{justify-content:flex-start;height:32px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(max-width:900px){.flashcard-layout{min-height:auto;padding-top:6px}.flashcard-progress{width:100%;justify-content:center;gap:8px}.flashcard-progress-compact{font-size:12px;max-width:calc(100% - 90px)}.flashcard-sync-time{width:100%;text-align:center}.flashcard-progress-bar{width:min(280px,80vw)}.review-flashcard{width:min(620px,100%);min-height:300px;padding:46px 18px 18px}.flashcard-face{padding:18px 14px 10px}.flashcard-meta{position:absolute;left:12px;right:auto;bottom:8px;width:calc(100% - 24px);margin-top:0;display:grid;justify-items:start;gap:2px}.flashcard-meta-item{max-width:100%}.flashcard-question{font-size:clamp(1.05rem,1rem + 1vw,1.36rem)}.flashcard-empty-actions{width:100%;justify-content:center}.flashcard-actions{width:min(520px,100%);grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.fc-btn{min-height:74px;font-size:13px}.review-queue{width:min(560px,100%)}.review-queue-list{grid-template-columns:1fr}.review-queue-foot{flex-direction:column;align-items:stretch}.review-queue-more{width:100%;text-align:center}.ai-msg.assistant,.ai-msg.user{max-width:100%}.ai-chat-toolbar{grid-template-columns:repeat(2,minmax(0,1fr))}.wiki-panel,.wiki-inline-form{grid-template-columns:1fr}.wiki-inline-form button,.wiki-actions button{width:100%}.ai-msg.assistant .ai-msg-content,.ai-msg.user .ai-msg-content{max-width:100%}.ai-msg.user .ai-msg-bubble{max-width:min(100%,92vw)}.graph-edge-threshold-control{grid-template-columns:1fr;justify-items:start}.graph-side-grid{grid-template-columns:1fr}.graph-side-card{height:auto!important;min-height:0}}:root[data-theme-mode=dark] .topbar,:root[data-theme-mode=dark] .card,:root[data-theme-mode=dark] .section-card,:root[data-theme-mode=dark] .editor-summary-module,:root[data-theme-mode=dark] .editor-toolbar-module,:root[data-theme-mode=dark] .editor-note-module,:root[data-theme-mode=dark] .side-panel,:root[data-theme-mode=dark] .ai-chat-container,:root[data-theme-mode=dark] .wiki-card,:root[data-theme-mode=dark] .cmd-palette{background:var(--bg-surface);border-color:var(--border-light)}:root[data-theme-mode=dark] .editor-toolbar-module{background:#141b2df0}:root[data-theme-mode=dark] .editor-toolbar{background:linear-gradient(180deg,#141b2df5,#141b2dd1)}:root[data-theme-mode=dark] .editor-summary-module{background:linear-gradient(180deg,#141b2deb,#141b2dbd)}:root[data-theme-mode=dark] .ai-summary-content-card{border-color:#7e8eb05c;background:#141b2dbd}:root[data-theme-mode=dark] .editor-pane,:root[data-theme-mode=dark] .preview-pane{background:#121a2d}:root[data-theme-mode=dark] .editor-textarea{color:#e8eeff;scrollbar-color:rgba(126,142,176,.38) transparent}:root[data-theme-mode=dark] .editor-textarea::placeholder{color:#8b9abd}:root[data-theme-mode=dark] .editor-content,:root[data-theme-mode=dark] .editor-content p,:root[data-theme-mode=dark] .editor-preview-structured .preview-paragraph,:root[data-theme-mode=dark] .editor-preview-structured .preview-list,:root[data-theme-mode=dark] .editor-preview-structured .preview-list li,:root[data-theme-mode=dark] .editor-preview-structured .preview-quote{color:#d5def6}:root[data-theme-mode=dark] .editor-preview-structured .preview-line-highlight{background:#60a5fa33;box-shadow:inset 0 0 0 1px #93c5fd80}:root[data-theme-mode=dark] .editor-content,:root[data-theme-mode=dark] .side-panel-body{scrollbar-color:rgba(126,142,176,.38) transparent}:root[data-theme-mode=dark] .editor-textarea::-webkit-scrollbar-thumb,:root[data-theme-mode=dark] .editor-content::-webkit-scrollbar-thumb,:root[data-theme-mode=dark] .side-panel-body::-webkit-scrollbar-thumb{background:#7e8eb061}:root[data-theme-mode=dark] .editor-textarea::-webkit-scrollbar-thumb:hover,:root[data-theme-mode=dark] .editor-content::-webkit-scrollbar-thumb:hover,:root[data-theme-mode=dark] .side-panel-body::-webkit-scrollbar-thumb:hover{background:#93a3be7a}:root[data-theme-mode=dark] .editor-content h1,:root[data-theme-mode=dark] .editor-content h2,:root[data-theme-mode=dark] .editor-content h3,:root[data-theme-mode=dark] .editor-preview-structured .preview-heading{color:#f3f6ff}:root[data-theme-mode=dark] .editor-preview-structured .preview-quote{border-left-color:#60a5fab8;background:#3b82f629}:root[data-theme-mode=dark] .editor-preview-structured .preview-code-wrap{border-color:#6176a161;background:#0b1326}:root[data-theme-mode=dark] .editor-preview-structured .preview-code-head{border-bottom-color:#7e8eb04d;background:linear-gradient(180deg,#1a2235,#131b2c)}:root[data-theme-mode=dark] .editor-preview-structured .preview-code-lang{color:#f2f6ff}:root[data-theme-mode=dark] .editor-preview-structured .preview-code-head-btn{background:#11182ae0;border-color:#94a3b85c;color:#d4e1ff}:root[data-theme-mode=dark] .editor-preview-structured .preview-code-head-btn:hover{border-color:#93c5fdbd;color:#f1f6ff}:root[data-theme-mode=dark] .editor-preview-structured .preview-code{color:#edf3ff}:root[data-theme-mode=dark] .frontmatter{background:#121b30;border-color:var(--border)}:root[data-theme-mode=dark] .flashcard-answer-block{background:transparent;border:0}:root[data-theme-mode=dark] .flashcard-answer-block+.flashcard-answer-block{border-top-color:#8b5cf657}:root[data-theme-mode=dark] .flashcard-answer-title{color:#4c1d95}:root[data-theme-mode=dark] .flashcard-question{color:#2d2355}:root[data-theme-mode=dark] .flashcard-hint,:root[data-theme-mode=dark] .flashcard-meta-item,:root[data-theme-mode=dark] .flashcard-sync-time{color:#645b88}:root[data-theme-mode=dark] .flashcard-meta-source{color:#564f7d}:root[data-theme-mode=dark] .flashcard-empty-btn{border-color:var(--border);background:#141b2d;color:var(--text-primary)}:root[data-theme-mode=dark] .flashcard-empty-btn.primary{background:var(--accent);border-color:var(--accent);color:#fff}:root[data-theme-mode=dark] .fc-btn{background:linear-gradient(180deg,#1e293beb,#0f172aeb);border-color:#94a3b847;color:#e2e8f0;box-shadow:0 8px 16px #02061761}:root[data-theme-mode=dark] .fc-btn .fc-interval{color:#b9c2de}:root[data-theme-mode=dark] .editor-loading-state{background:linear-gradient(180deg,#141b2da6,#141b2d4d)}:root[data-theme-mode=dark] .editor-loading-line{background:linear-gradient(90deg,#7888b22e,#7888b27a 45%,#7888b22e)}:root[data-theme-mode=dark] .graph-edge-threshold-control{border-color:#7e8eb03d;background:#1820356b}:root[data-theme-mode=dark] .graph-edge-threshold-control .muted{color:#c1cbe7ad}:root[data-theme-mode=dark] .input,:root[data-theme-mode=dark] .select,:root[data-theme-mode=dark] .btn,:root[data-theme-mode=dark] .resource-row,:root[data-theme-mode=dark] .topbar-search input,:root[data-theme-mode=dark] .topbar-search .shortcut,:root[data-theme-mode=dark] .ai-msg.assistant .ai-msg-bubble,:root[data-theme-mode=dark] .cmd-item .cmd-icon{background:#141b2d;color:var(--text-primary);border-color:var(--border)}:root[data-theme-mode=dark] .resource-row:hover{border-color:#818cf885;box-shadow:0 22px 40px #02061794,0 8px 18px #4f7cff4d;transform:translateY(-4px) scale(1.012);background:linear-gradient(180deg,#1b243af0,#141b2dfa)}:root[data-theme-mode=dark] .resource-row.is-tag-drop-target{border-color:#63b3ffb8;box-shadow:0 0 0 3px #4f7cff3d,0 12px 24px #0206177a;background:linear-gradient(180deg,#192d49f0,#141b2dfa)}:root[data-theme-mode=dark] .resource-tag-chip{--tag-chip-border: rgba(129, 140, 248, .38);--tag-chip-bg: rgba(99, 102, 241, .22);--tag-chip-color: #c7d2fe}:root[data-theme-mode=dark] .resource-tag-chip.tone-status{--tag-chip-border: rgba(52, 211, 153, .5);--tag-chip-color: #9cf7d0}:root[data-theme-mode=dark] .resource-tag-chip.tone-source{--tag-chip-border: rgba(56, 189, 248, .52);--tag-chip-color: #b9ecff}:root[data-theme-mode=dark] .resource-tag-chip.tone-priority{--tag-chip-border: rgba(251, 191, 36, .5);--tag-chip-color: #f8df9a}:root[data-theme-mode=dark] .resource-tag-chip.tone-topic{--tag-chip-border: rgba(129, 140, 248, .48);--tag-chip-color: #c7d2fe}:root[data-theme-mode=dark] .resource-tag-chip.palette-crimson{--tag-chip-bg: rgba(220, 38, 38, .26)}:root[data-theme-mode=dark] .resource-tag-chip.palette-orange{--tag-chip-bg: rgba(249, 115, 22, .26)}:root[data-theme-mode=dark] .resource-tag-chip.palette-amber{--tag-chip-bg: rgba(251, 191, 36, .28)}:root[data-theme-mode=dark] .resource-tag-chip.palette-lime{--tag-chip-bg: rgba(163, 230, 53, .24)}:root[data-theme-mode=dark] .resource-hover-summary{background:#070c17f5;border-color:#94a3b857;color:#e5edff;box-shadow:0 18px 42px #020617ad}:root[data-theme-mode=dark] .resource-hover-summary:before{background:#070c17f5;border-top-color:#94a3b857;border-left-color:#94a3b857}:root[data-theme-mode=dark] .logo-title-svg text{stroke:#e9f1fffa}:root[data-theme-mode=dark] .logo-subtitle-svg text{stroke:#aabad8f5}:root[data-theme-mode=dark] .resource-tag-chip.palette-emerald{--tag-chip-bg: rgba(16, 185, 129, .24)}:root[data-theme-mode=dark] .resource-tag-chip.palette-cyan{--tag-chip-bg: rgba(34, 211, 238, .24)}:root[data-theme-mode=dark] .resource-tag-chip.palette-sky{--tag-chip-bg: rgba(56, 189, 248, .24)}:root[data-theme-mode=dark] .resource-tag-chip.palette-blue{--tag-chip-bg: rgba(59, 130, 246, .24)}:root[data-theme-mode=dark] .resource-tag-chip.palette-violet{--tag-chip-bg: rgba(167, 139, 250, .26)}:root[data-theme-mode=dark] .resource-tag-chip.palette-fuchsia{--tag-chip-bg: rgba(217, 70, 239, .24)}:root[data-theme-mode=dark] .resource-tag-chip.is-empty{border-color:#94a3b857;background:#47556947;color:#b8c4df}:root[data-theme-mode=dark] .resource-tag-action-btn:hover{background:#94a3b838}:root[data-theme-mode=dark] .resource-tag-inline-input{border-color:#818cf88a;background:#0f172a5c;color:#dbe8ff}:root[data-theme-mode=dark] .resource-tag-inline-input:focus{border-color:#818cf8d1;box-shadow:0 0 0 2px #6366f142}:root[data-theme-mode=dark] .resource-custom-tags-panel{border-color:#818cf875;background:#2530496b}:root[data-theme-mode=dark] .resource-tag-updating-hint{color:#b5c7ff}:root[data-theme-mode=dark] .resource-updated-inline{color:#aeb9d6}:root[data-theme-mode=dark] .topbar-search input::placeholder,:root[data-theme-mode=dark] .cmd-input::placeholder,:root[data-theme-mode=dark] .ai-input::placeholder,:root[data-theme-mode=dark] .wiki-inline-form input::placeholder,:root[data-theme-mode=dark] .wiki-synthesis-form input::placeholder,:root[data-theme-mode=dark] .wiki-synthesis-form textarea::placeholder{color:#8d9ab8}:root[data-theme-mode=dark] .topbar-search .shortcut{color:#d2dcf3;border-color:#94a3b85c;background:#141b2d}:root[data-theme-mode=dark] .topbar-search-panel{background:#171f32;border-color:var(--border)}:root[data-theme-mode=dark] .topbar-account-menu{background:#171f32;border-color:var(--border)}:root[data-theme-mode=dark] .topbar-account-header{background:#4f46e524;border-color:#818cf857}:root[data-theme-mode=dark] .topbar-account-header:hover{background:#4f46e533;border-color:#818cf87a}:root[data-theme-mode=dark] .topbar-account-edit-tip{color:#aebdff}:root[data-theme-mode=dark] .topbar-account-menu-item:hover{background:#818cf833}:root[data-theme-mode=dark] .topbar-account-menu-item.danger{color:#fecdd3}:root[data-theme-mode=dark] .topbar-account-menu-item.danger:hover{background:#f43f5e33}:root[data-theme-mode=dark] .avatar-dialog{background:#171f32;border-color:var(--border);box-shadow:0 26px 54px #020617ad}:root[data-theme-mode=dark] .avatar-dialog-close{border-color:var(--border);color:#c8d4f3}:root[data-theme-mode=dark] .avatar-dialog-close:hover{background:#ffffff14;color:#eff5ff}:root[data-theme-mode=dark] .avatar-dialog-hint,:root[data-theme-mode=dark] .avatar-dialog-file{color:#b8c6e6}:root[data-theme-mode=dark] .avatar-dialog-error{color:#fecaca}:root[data-theme-mode=dark] .search-suggestion{color:#e8efff}:root[data-theme-mode=dark] .search-suggestion-title{color:#f3f7ff}:root[data-theme-mode=dark] .search-suggestion-meta{color:#d0dbf4}:root[data-theme-mode=dark] .search-suggestion-preview,:root[data-theme-mode=dark] .search-suggestion-snippet{color:#dce6ff}:root[data-theme-mode=dark] .search-suggestion:hover,:root[data-theme-mode=dark] .search-suggestion.selected{background:#818cf833}:root[data-theme-mode=dark] .ai-toolbar-field select,:root[data-theme-mode=dark] .ai-toolbar-field input,:root[data-theme-mode=dark] .wiki-actions button,:root[data-theme-mode=dark] .wiki-inline-form button,:root[data-theme-mode=dark] .wiki-inline-form select,:root[data-theme-mode=dark] .wiki-inline-form input,:root[data-theme-mode=dark] .wiki-synthesis-form input,:root[data-theme-mode=dark] .wiki-synthesis-form textarea,:root[data-theme-mode=dark] .ai-msg-feedback button,:root[data-theme-mode=dark] .ai-input{background:#141b2d;border-color:var(--border);color:var(--text-primary)}:root[data-theme-mode=dark] .synthesis-copy-btn{background:#141b2d;border-color:var(--border);color:var(--text-secondary)}:root[data-theme-mode=dark] .synthesis-copy-btn:hover{border-color:var(--accent);background:#6366f12e;color:var(--accent)}:root[data-theme-mode=dark] .synthesis-copy-btn.synthesis-copy-success{background:#22c55e2e;border-color:#22c55e57;color:#4ade80}:root[data-theme-mode=dark] .wiki-card-title-toggle:hover,:root[data-theme-mode=dark] .wiki-guide-toggle:hover,:root[data-theme-mode=dark] .wiki-guide-toggle[aria-expanded=true]{background:linear-gradient(90deg,rgba(129,140,248,.18),transparent 72%)}:root[data-theme-mode=dark] .wiki-card-title-toggle:before,:root[data-theme-mode=dark] .wiki-guide-toggle:before{background:#94a3b8e6;border-color:#141b2d}:root[data-theme-mode=dark] .wiki-card-title-toggle:hover:before,:root[data-theme-mode=dark] .wiki-card-collapsible:not(.collapsed)>.wiki-card-title-toggle:before,:root[data-theme-mode=dark] .wiki-guide-toggle:hover:before,:root[data-theme-mode=dark] .wiki-guide-toggle[aria-expanded=true]:before{box-shadow:0 0 0 3px #818cf829}:root[data-theme-mode=dark] .wiki-panel:before{content:none}:root[data-theme-mode=dark] .wiki-card-title-toggle:after,:root[data-theme-mode=dark] .wiki-guide-toggle:after{background:repeating-linear-gradient(to bottom,rgba(148,163,184,.7) 0 3px,transparent 3px 6px)}:root[data-theme-mode=dark] .wiki-guide-toggle{background:transparent;border-color:transparent;color:var(--text-primary)}:root[data-theme-mode=dark] .wiki-help-list li{background:transparent;border-color:transparent}:root[data-theme-mode=dark] .wiki-help-list li:hover{background:#6366f12e}:root[data-theme-mode=dark] .wiki-help-list span,:root[data-theme-mode=dark] .wiki-result-snippet,:root[data-theme-mode=dark] .wiki-log-header,:root[data-theme-mode=dark] .wiki-placeholder,:root[data-theme-mode=dark] .ai-thinking-trail,:root[data-theme-mode=dark] .cmd-note-item .note-snippet,:root[data-theme-mode=dark] .cmd-empty{color:#b7c3df}:root[data-theme-mode=dark] .wiki-feedback.success{color:#4ddbc8}:root[data-theme-mode=dark] .wiki-feedback.error{color:#fda4af}:root[data-theme-mode=dark] .ai-msg-feedback button:hover,:root[data-theme-mode=dark] .ai-msg-feedback button.active{background:#818cf833;border-color:#818cf870;color:#dbe5ff}:root[data-theme-mode=dark] .transfer-panel{background:#181f31;border-color:var(--border-light)}:root[data-theme-mode=dark] .transfer-panel .muted{color:#b7c3df}:root[data-theme-mode=dark] .wizard-step{background:#141b2dc2;border-color:var(--border);color:#b4c0db}:root[data-theme-mode=dark] .wizard-step.active{background:#6366f13d;border-color:#818cf8a8;color:#dce5ff}:root[data-theme-mode=dark] .transfer-log-panel{background:#11182a;border-color:var(--border)}:root[data-theme-mode=dark] .transfer-log-item{background:#141b2d;border-color:#94a3b84d}:root[data-theme-mode=dark] .transfer-log-status{background:#94a3b83d;color:#d1dbf2}:root[data-theme-mode=dark] .transfer-log-name{color:#e7ecfa}:root[data-theme-mode=dark] .transfer-log-detail{color:#b7c3df}:root[data-theme-mode=dark] .transfer-log-item.is-success{border-color:#4ade8057;background:#16a34a1f}:root[data-theme-mode=dark] .transfer-log-item.is-success .transfer-log-status{background:#22c55e38;color:#a7f3d0}:root[data-theme-mode=dark] .transfer-log-item.is-failed{border-color:#fb718559;background:#be185d1f}:root[data-theme-mode=dark] .transfer-log-item.is-failed .transfer-log-status{background:#f43f5e38;color:#fecdd3}:root[data-theme-mode=dark] .transfer-log-item.is-skipped{border-color:#fbbf2457;background:#b453091f}:root[data-theme-mode=dark] .transfer-log-item.is-skipped .transfer-log-status{background:#f59e0b38;color:#fde68a}:root[data-theme-mode=dark] .cmd-item .cmd-shortcut kbd,:root[data-theme-mode=dark] .cmd-footer kbd{background:#11182a;border-color:#94a3b85c;color:#d1dbf2}:root[data-theme-mode=dark] .cmd-input,:root[data-theme-mode=dark] .cmd-input-wrap .icon,:root[data-theme-mode=dark] .cmd-item .cmd-label,:root[data-theme-mode=dark] .cmd-note-item .note-title,:root[data-theme-mode=dark] .cmd-section-label,:root[data-theme-mode=dark] .cmd-footer{color:#edf3ff}:root[data-theme-mode=dark] .ai-structured-notice{color:#ffd591;border-left-color:#f3b750;background:#f59e0b2e}:root[data-theme-mode=dark] .ai-structured-quote{color:#c4d0eb;border-left-color:#818cf8b8;background:#6366f133}:root[data-theme-mode=dark] .ai-source-item{color:#cfd7ff;border-color:#818cf866;background:#6366f133}:root[data-theme-mode=dark] .ai-source-item.model-only{color:#ffd591;border-color:#f59e0b6b;background:#f59e0b33}:root[data-theme-mode=dark] .ai-source-open-btn{color:#dbe5ff;border-color:#818cf866;background:#6366f133}:root[data-theme-mode=dark] .ai-source-dialog{background:#11182a;border-color:var(--border)}:root[data-theme-mode=dark] .ai-source-dialog-header{border-bottom-color:var(--border)}:root[data-theme-mode=dark] .ai-source-dialog-close{background:#141b2d;border-color:var(--border);color:#d1dbf2}:root[data-theme-mode=dark] .ai-source-dialog-item{background:transparent;border-color:#94a3b838}:root[data-theme-mode=dark] .ai-source-dialog-item:hover{background:#6366f133}:root[data-theme-mode=dark] .ai-source-dialog-index{color:#dbe5ff;background:#6366f140}:root[data-theme-mode=dark] .ai-source-dialog-type{color:#b7c3df}:root[data-theme-mode=dark] .ai-source-dialog-title{color:#eef2ff}:root[data-theme-mode=dark] .ai-source-dialog-text{color:#b7c3df}:root[data-theme-mode=dark] .ai-demo-answer-bubble{background:#6366f129;border-color:#818cf852}:root[data-theme-mode=dark] .ai-structured-code-wrap{border-color:var(--border)}:root[data-theme-mode=dark] .ai-structured-code-lang{border-bottom-color:var(--border-light);background:#11182a}:root[data-theme-mode=dark] .ai-structured-code{background:#0f1628}:root[data-theme-mode=dark] .btn:hover,:root[data-theme-mode=dark] .topbar-btn:hover,:root[data-theme-mode=dark] .editor-tool-btn:hover,:root[data-theme-mode=dark] .editor-tool-btn.active,:root[data-theme-mode=dark] .cmd-item:hover,:root[data-theme-mode=dark] .cmd-item.selected{background:#ffffff12}:root[data-theme-mode=dark] .editor-format-btn.is-formatting{color:#93c5fd;background:#3b82f63d}:root[data-theme-mode=dark] .editor-music-btn.is-playing{color:#7dd3fc;background:#0ea5e938;border-color:#38bdf875}:root[data-theme-mode=dark] .editor-format-btn.is-formatting:after{border-color:#60a5fa94}:root[data-theme-mode=dark] .editor-reading-inline{background:transparent}:root[data-theme-mode=dark] .editor-reading-value{color:var(--text-secondary)}:root[data-theme-mode=dark] .side-panel-header-sticky{background:#171f32}:root[data-theme-mode=dark] .ai-summary-time{color:#afbddb}:root[data-theme-mode=dark] .ai-summary-content{color:#d8e4ff}:root[data-theme-mode=dark] .ai-summary-error{border-color:#f871716b;background:#f8717124;color:#fecaca}:root[data-theme-mode=dark] .btn-primary,:root[data-theme-mode=dark] .topbar-btn.primary,:root[data-theme-mode=dark] .ai-send-btn{color:#fff}:root[data-theme-mode=dark] .activity-time,:root[data-theme-mode=dark] .resource-meta,:root[data-theme-mode=dark] .flashcard-eta,:root[data-theme-mode=dark] .muted{color:var(--text-tertiary)}.ai-chat-container{display:grid;grid-template-rows:auto minmax(0,1fr);height:calc(100vh - var(--topbar-h) - 54px);max-height:calc(100vh - var(--topbar-h) - 54px);overflow:hidden}.ai-answer-zone{flex:none;min-height:0;position:relative;display:flex;flex-direction:column;overflow:hidden}.ai-messages{flex:1;min-height:0;overflow-y:auto}.ai-chat-container:not(.has-conversation) .ai-messages{display:flex;align-items:center;justify-content:center}.ai-scroll-hint{position:absolute;bottom:14px;left:50%;transform:translate(-50%);z-index:10;display:inline-flex;align-items:center;gap:6px;padding:6px 16px;border-radius:20px;cursor:pointer}.ai-input-bar{position:relative;bottom:auto;flex-shrink:0;z-index:2;background:var(--bg-surface)}.ai-proto-page{gap:16px;min-height:calc(100vh - var(--topbar-h) - 52px)}.ai-proto-page .ai-page-head{display:flex;align-items:center}.ai-proto-page .ai-page-crumb{margin:0;font-size:14px;color:var(--text-secondary);letter-spacing:.01em}.ai-proto-page .ai-page-crumb span{color:var(--text-primary);font-weight:600}.ai-proto-page .ai-layout{--ai-panel-height: calc(100vh - var(--topbar-h) - 148px);width:100%;max-width:100%;overflow:hidden;grid-template-columns:minmax(0,1fr) minmax(260px,300px);gap:16px}.ai-proto-page .ai-chat-container{background:transparent;height:var(--ai-panel-height);max-height:var(--ai-panel-height);min-width:0;width:100%;display:grid;grid-template-rows:auto minmax(0,1fr);gap:12px}.ai-proto-page .ai-chat-container.has-conversation{grid-template-rows:minmax(0,1fr);gap:0}.ai-proto-page .ai-hero-shell{--ai-chat-inner-pad: 18px;border-radius:12px;border:1px solid var(--border-light);box-shadow:var(--shadow-sm);background:var(--bg-surface);padding:8px var(--ai-chat-inner-pad);width:100%;max-width:none;overflow:hidden;box-sizing:border-box}.ai-proto-page .ai-hero-shell.is-hidden{visibility:hidden;pointer-events:none}.ai-proto-page .ai-dialog-card{--ai-chat-line-width: min(calc(100vw / 3), 930px);--ai-chat-avatar-column: 54px;border-radius:12px;border:1px solid var(--border-light);box-shadow:var(--shadow-sm);background:var(--bg-surface);min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto auto;overflow:hidden;width:100%;max-width:none;min-width:0}.ai-proto-page .ai-hero-card{display:grid;grid-template-columns:auto minmax(0,calc(50% - 86px)) minmax(0,1fr);align-items:center;gap:14px;padding:2px 6px}.ai-proto-page .ai-hero-avatar{width:58px;height:58px;border-radius:0;display:inline-flex;align-items:center;justify-content:center;color:#5b63ff;background:transparent;border:none;box-shadow:none;position:relative}.ai-proto-page .ai-hero-avatar-icon{width:50px;height:50px}.ai-proto-page .ai-hero-antenna{position:absolute;top:-10px;left:50%;width:2px;height:13px;background:linear-gradient(180deg,#8090ff,#5b63ff);transform-origin:50% 100%;animation:ai-hero-antenna-sway 1.8s ease-in-out infinite}.ai-proto-page .ai-hero-antenna-tip{position:absolute;top:-4px;left:50%;width:8px;height:8px;border-radius:50%;transform:translate(-50%);background:#9aa7ff;box-shadow:0 0 10px #818cf85c}@keyframes ai-hero-antenna-sway{0%,to{transform:translate(-50%) rotate(-14deg)}50%{transform:translate(-50%) rotate(14deg)}}.ai-proto-page .ai-hero-copy h1{margin:0;font-size:30px;line-height:1.1;letter-spacing:-.025em;padding-left:2px;color:var(--text-primary);font-weight:700}.ai-proto-page .ai-hero-copy p{margin:6px 0 0;font-size:14px;font-weight:500;line-height:1.6;color:#6b7895;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ai-proto-page .ai-suggest-row{position:relative;display:flex;flex-direction:column;justify-content:center;gap:7px;min-width:0;height:70px;padding:0;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 9%,#000 91%,transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 9%,#000 91%,transparent 100%)}.ai-proto-page .ai-suggest-row.compact{padding-top:4px}.ai-proto-page .ai-suggest-lane{min-width:0;overflow:hidden}.ai-proto-page .ai-suggest-track{display:inline-flex;align-items:center;gap:32px;width:max-content;min-width:max-content;animation:ai-suggest-marquee 30s linear infinite;will-change:transform}.ai-proto-page .ai-suggest-lane.lane-2 .ai-suggest-track{animation-duration:36s;animation-delay:-10s;transform:translate(-18%)}@keyframes ai-suggest-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.ai-proto-page .ai-suggest-chip{height:32px;width:max-content;min-width:220px;max-width:320px;border-radius:12px;border:none;background:#f5f8ff;color:#4b5977;font-size:12px;font-weight:500;line-height:1;padding:0 12px 0 10px;display:inline-flex;align-items:center;gap:8px;flex:0 0 auto;min-height:32px;cursor:pointer;transition:color var(--transition),background-color var(--transition)}.ai-proto-page .ai-suggest-chip:hover{background:#eef3ff;color:#4d5b7b}.ai-proto-page .ai-suggest-chip-tag{display:inline-flex;align-items:center;justify-content:center;width:17px;height:17px;border-radius:999px;font-size:11px;font-weight:600;color:#5667ff;background:#e8edff;flex-shrink:0}.ai-proto-page .ai-suggest-chip-text{min-width:0;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;flex:1;text-align:left}@media(prefers-reduced-motion:reduce){.ai-proto-page .ai-suggest-track{animation:none;transform:none!important}}.ai-proto-page .ai-answer-zone{padding:16px 12px 8px 14px;flex:1;min-height:0;overflow:hidden}.ai-proto-page .ai-messages{padding:2px 10px 14px 8px;display:grid;gap:14px;align-content:start;scroll-padding-top:16px}.ai-proto-page .ai-dialog-card:not(.has-conversation) .ai-messages{align-items:flex-start;justify-content:flex-start}.ai-proto-page .ai-msg{display:grid;grid-template-columns:40px minmax(0,1fr);max-width:100%;width:100%;align-items:flex-start;gap:14px;min-height:40px;width:var(--ai-chat-line-width);max-width:var(--ai-chat-line-width);justify-self:center}.ai-proto-page .ai-msg-content{width:100%;max-width:100%}.ai-proto-page .ai-msg.user{grid-template-columns:40px minmax(0,1fr)}.ai-proto-page .ai-msg-avatar{width:40px;height:40px;border-radius:50%;border:1px solid #dfe5f3;background:#f7f9ff;color:#5a66fa;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ai-proto-page .ai-msg-avatar-star{font-size:18px;line-height:1}.ai-proto-page .ai-msg-avatar-image{width:100%;height:100%;border-radius:inherit;object-fit:cover}.ai-proto-page .ai-msg.user .ai-msg-avatar{color:#0f172a;background:#eef2f9;grid-column:1;justify-self:start;margin-top:0;overflow:visible}.ai-proto-page .ai-msg-avatar-icon{width:20px;height:20px}.ai-proto-page .ai-msg.user .ai-msg-bubble{display:block!important;width:100%!important;max-width:100%!important;min-width:0!important;border-radius:10px;border:1px solid #e2e8f7;background:#f1f4ff;color:var(--text-primary);padding:10px 20px}.ai-proto-page .ai-msg.user .ai-msg-content{grid-column:2!important;width:100%!important;max-width:100%!important;justify-self:stretch;justify-items:stretch}.ai-proto-page .ai-msg.user{grid-template-columns:40px minmax(0,1fr)!important;justify-content:initial!important;align-items:center}.ai-proto-page .ai-user-question-line{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;min-width:0;cursor:pointer}.ai-proto-page .ai-user-question-text{flex:1;min-width:0;padding-left:.4ch;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;font-size:15px;line-height:1.45;font-weight:500;color:#37486c}.ai-proto-page .ai-user-question-time{flex:0 0 auto;font-size:12px;color:#93a0b8}.ai-proto-page .ai-msg.assistant .ai-msg-content{width:100%}.ai-proto-page .ai-msg.assistant .ai-msg-bubble{width:100%;border-radius:12px;border:1px solid #e5e9f5;background:#fff;padding:16px 18px}.ai-proto-page .ai-msg.assistant .ai-msg-avatar.is-thinking{animation:ai-star-blink .9s ease-in-out infinite;box-shadow:0 0 #6366f159}.ai-proto-page .ai-source-inline-link{display:inline-flex;align-items:center;border:none;background:transparent;color:#5667ff;font-size:12px;font-weight:600;padding:0;margin-bottom:10px;cursor:pointer}.ai-proto-page .ai-msg-collapsed{display:flex;align-items:center;justify-content:center;padding:10px 18px;margin-top:4px;border-radius:var(--radius-lg);border:1px dashed var(--border-light);background:var(--bg-root);cursor:pointer;transition:background .15s,border-color .15s;-webkit-user-select:none;user-select:none}.ai-proto-page .ai-msg-collapsed:hover{background:#6366f10a;border-color:#6366f140}.ai-proto-page .ai-msg-collapsed-text{font-size:13px;color:var(--text-tertiary, #93a0b8);font-weight:500;letter-spacing:.3px}.ai-proto-page .ai-msg-actions{margin-top:10px;display:flex;align-items:center;justify-content:space-between;gap:12px}.ai-proto-page .ai-msg-actions-left,.ai-proto-page .ai-msg-actions-right{display:inline-flex;align-items:center;gap:8px}.ai-proto-page .ai-msg-action-btn{display:inline-flex;align-items:center;gap:6px}.ai-proto-page .ai-msg-action-icon{font-size:12px;line-height:1;opacity:.85}.ai-proto-page .ai-msg-action-btn,.ai-proto-page .ai-msg-delete-btn,.ai-proto-page .ai-msg-vote-btn{height:28px;border-radius:999px;border:1px solid #e2e8f7;background:#fff;color:#4f5f80;padding:0 11px;font-size:12px;cursor:pointer}.ai-proto-page .ai-msg-vote-btn{width:28px;padding:0}.ai-proto-page .ai-msg-vote-btn.active{border-color:#6366f166;color:#4f46e5;background:#f0f2ff}.ai-proto-page .ai-msg-action-btn.copy-success{color:#4f46e5;border-color:#6366f159}.ai-proto-page .ai-msg-satisfaction{font-size:12px;color:#7b879f}.ai-proto-page .ai-input-bar{display:grid;grid-template-columns:minmax(0,1fr);grid-template-areas:"field" "hint";gap:10px;align-items:center;border-top:1px solid var(--border-light);padding:12px 0;width:var(--ai-chat-line-width)!important;max-width:var(--ai-chat-line-width);box-sizing:border-box;position:static!important;justify-self:center;align-self:stretch}.ai-proto-page .ai-input-shell{grid-area:field;position:relative;width:calc(100% - var(--ai-chat-avatar-column))!important;min-width:0;max-width:none!important;justify-self:stretch;align-self:stretch;margin:0 0 0 var(--ai-chat-avatar-column)}.ai-proto-page .ai-input-tools{display:inline-flex;align-items:center;gap:8px}.ai-proto-page .ai-model-chip{height:32px;border-radius:999px;border:1px solid #dce3f3;background:#fff;color:#3c4c72;font-size:13px;padding:0 12px}.ai-proto-page .ai-mode-field{display:inline-flex;align-items:center;gap:6px;padding:0 10px;height:34px;border:1px solid var(--border);border-radius:10px;background:var(--bg-root);font-size:12px;color:var(--text-tertiary)}.ai-proto-page .ai-mode-field select{border:none;background:transparent;color:var(--text-secondary);font-size:12px}.ai-proto-page .ai-mode-field select:focus{outline:none}.ai-proto-page .ai-tool-btn{width:32px;height:32px;border-radius:999px;border:1px solid #dde4f3;background:#fff;color:#6d7a96;font-size:13px}.ai-proto-page .ai-input{min-height:44px;max-height:108px;height:auto;border-radius:12px;border:1px solid var(--border);background:var(--bg-root);padding:11px 56px 11px 14px;resize:none;line-height:1.5;overflow-y:auto;display:block;width:100%!important;min-width:0;box-sizing:border-box}.ai-proto-page .ai-send-btn{position:absolute;right:10px;top:50%;bottom:auto;transform:translateY(-50%);width:36px;height:36px;min-width:36px!important;min-height:36px!important;max-width:36px;max-height:36px;aspect-ratio:1 / 1;border-radius:50%;border:none;background:#5b63ff;color:#fff;font-size:0;font-weight:500;display:inline-flex;align-items:center;justify-content:center;box-shadow:0 8px 18px #5b63ff3d;transition:background-color var(--transition),color var(--transition),opacity var(--transition),transform var(--transition)}.ai-proto-page .ai-send-btn svg{width:18px;height:18px}.ai-proto-page .ai-send-btn:hover:not(:disabled){background:#737bff;transform:translateY(calc(-50% - 1px))}.ai-proto-page .ai-send-btn:disabled{background:#d1d5db;color:#f8fafc;cursor:not-allowed}.ai-proto-page .ai-send-btn.loading{background:#d1d5db;color:#0f172a}.ai-proto-page .ai-input-hint{grid-area:hint;margin:0 0 0 var(--ai-chat-avatar-column);font-size:12px;color:#8d99b0;line-height:1.4}.ai-proto-page .ai-input-hint span{margin-left:18px}.ai-proto-page .ai-right-rail{gap:12px;padding-left:0;padding-right:0;height:var(--ai-panel-height);max-height:var(--ai-panel-height)}.ai-proto-page .ai-rail-card{border-radius:12px;border:1px solid var(--border-light);box-shadow:var(--shadow-sm);background:var(--bg-surface);padding:14px}.ai-proto-page .ai-rail-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.ai-proto-page .ai-rail-title{margin:0;font-size:14px;line-height:1.3;color:var(--text-primary);font-weight:600}.ai-proto-page .ai-function-card,.ai-proto-page .ai-function-stack{display:grid;gap:10px}.ai-proto-page .ai-function-panel{display:grid;gap:8px;padding:10px;border:1px solid var(--border-light);border-radius:10px;background:var(--bg-root)}.ai-proto-page .ai-function-panel.collapsed>*:not(.wiki-card-title-toggle){display:none}.ai-proto-page .ai-function-panel .wiki-card-title-toggle{margin:0;padding:0;font-size:13px;line-height:1.35;color:var(--text-primary);font-weight:600}.ai-proto-page .ai-function-panel .wiki-card-title-toggle:before,.ai-proto-page .ai-function-panel .wiki-card-title-toggle:after{content:none!important}.ai-proto-page .ai-function-panel .wiki-card-title-toggle:hover{padding-left:0;background:transparent;color:var(--accent)}.ai-proto-page .ai-rail-link{border:none;background:transparent;color:var(--accent);font-size:12px;cursor:pointer}.ai-proto-page .ai-capability-list{list-style:none;margin:12px 0 0;padding:0;display:grid;gap:10px}.ai-proto-page .ai-capability-item{display:grid;grid-template-columns:28px minmax(0,1fr);gap:10px;align-items:start}.ai-proto-page .ai-capability-icon{width:28px;height:28px;border-radius:8px;display:inline-flex;align-items:center;justify-content:center;font-size:13px;font-weight:700}.ai-proto-page .ai-capability-icon-qa{color:#ef4444;background:#ef44441f}.ai-proto-page .ai-capability-icon-summary{color:#06b6d4;background:#06b6d41f}.ai-proto-page .ai-capability-icon-advice{color:#6366f1;background:#6366f124}.ai-proto-page .ai-capability-icon-code{color:#3b82f6;background:#3b82f624}.ai-proto-page .ai-capability-title{margin:0;font-size:14px;line-height:1.4;color:var(--text-primary);font-weight:600}.ai-proto-page .ai-capability-desc{margin:2px 0 0;font-size:12px;line-height:1.55;color:var(--text-tertiary)}.ai-proto-page .ai-recent-list,.ai-proto-page .ai-source-card-list{list-style:none;margin:10px 0 0;padding:0;display:grid;gap:8px}.ai-proto-page .ai-recent-item,.ai-proto-page .ai-source-card-item{border:none;border-bottom:1px solid #edf1f8;background:transparent;border-radius:0;padding:10px 0}.ai-proto-page .ai-recent-item{cursor:pointer;transition:border-color var(--transition),background-color var(--transition)}.ai-proto-page .ai-recent-item:hover{border-color:#6366f157;background:#6366f114}.ai-proto-page .ai-recent-title,.ai-proto-page .ai-source-card-title{margin:0;font-size:13px;line-height:1.45;color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.ai-proto-page .ai-source-card-item{display:flex;align-items:center;justify-content:space-between;gap:12px}.ai-proto-page .ai-recent-time,.ai-proto-page .ai-source-card-score{margin-top:0;display:inline-flex;font-size:12px;color:var(--text-tertiary);white-space:nowrap}.ai-proto-page .ai-source-card-score{color:var(--accent)}.ai-proto-page .ai-tip-list{margin-top:10px;display:flex;flex-wrap:wrap;gap:8px}.ai-proto-page .ai-tip-chip{height:30px;border-radius:999px;border:1px solid var(--border);background:#f3f4ff;color:#4f46e5;font-size:12px;padding:0 12px;cursor:pointer;transition:border-color var(--transition),background-color var(--transition)}.ai-proto-page .ai-tip-chip:hover{border-color:#6366f166;background:#6366f124}.ai-proto-page .ai-rail-empty{margin:10px 0 0;font-size:12px;line-height:1.6;color:var(--text-tertiary)}.ai-proto-page .ai-advanced-tools{border:1px dashed rgba(99,102,241,.34);background:#6366f10d;border-radius:12px;padding:10px}.ai-proto-page .ai-advanced-tools>summary{cursor:pointer;font-size:13px;color:var(--accent);font-weight:600}.ai-proto-page .ai-advanced-tools-body{margin-top:10px;display:grid;gap:8px}.ai-proto-page .ai-advanced-tools-body .wiki-card{box-shadow:none}@media(max-width:1280px){.ai-proto-page .ai-layout{grid-template-columns:minmax(0,1fr) minmax(260px,300px)}.ai-proto-page .ai-hero-copy h1{font-size:32px}}@media(max-width:1100px){.ai-proto-page .ai-layout{--ai-panel-height: none;grid-template-columns:1fr}.ai-proto-page .ai-chat-container,.ai-proto-page .ai-right-rail{height:auto;max-height:none}.ai-proto-page .ai-right-rail{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-proto-page .ai-advanced-tools{grid-column:1 / -1}}@media(max-width:780px){.ai-proto-page{gap:12px}.ai-proto-page .ai-page-crumb{font-size:13px}.ai-proto-page .ai-hero-card{padding-top:2px}.ai-proto-page .ai-hero-avatar{width:44px;height:44px}.ai-proto-page .ai-hero-avatar-icon{width:40px;height:40px}.ai-proto-page .ai-hero-copy h1{font-size:28px}.ai-proto-page .ai-right-rail{grid-template-columns:1fr;max-height:none;height:auto}.ai-proto-page .ai-input-bar{grid-template-columns:minmax(0,1fr);gap:8px}.ai-proto-page .ai-input-tools{grid-column:1 / -1;order:2;justify-content:flex-start}.ai-proto-page .ai-input-shell{order:0}}:root[data-theme-mode=dark] .ai-proto-page .ai-msg.user .ai-msg-bubble{background:#1d263a;border-color:#2e3b56}body{font-size:var(--ds-font-body);line-height:var(--ds-line-body)}.main-content{overflow-x:hidden}.main-content>.page{width:100%;max-width:var(--ds-content-max);margin-inline:0}.page,.card,.section-card,.section-body,.resource-item,.activity-text,.template-item-desc,.daily-note-title,.preview-content,.ai-msg-bubble,.ai-proto-page .ai-input,.ai-proto-page .ai-suggest-chip{font-size:var(--ds-font-body);line-height:var(--ds-line-body)}h1,.page-title,.ai-proto-page .ai-hero-copy h1,.editor-content h1,.editor-preview-structured .preview-heading.level-1{font-size:var(--ds-font-h1)!important;line-height:var(--ds-line-title)!important;font-weight:600}h2,h3,.section-title,.review-info h3,.editor-content h2,.editor-preview-structured .preview-heading.level-2,.editor-content h3,.editor-preview-structured .preview-heading.level-3,.ai-proto-page .ai-right-rail h3{font-size:var(--ds-font-h2)!important;line-height:var(--ds-line-title)!important;font-weight:600}.stat-value,.review-number,.progress-ring-value,.editor-preview-structured .preview-code,.editor-textarea,.editor-content,.resource-title,.topbar-create-btn,.topbar-create-btn span:last-child{font-size:var(--ds-font-body)!important}.stat-value,.review-number,.progress-ring-value{font-size:var(--ds-font-h1)!important;line-height:var(--ds-line-title)!important}.page-subtitle,.page-date,.muted,.resource-meta,.activity-time,.topbar-account-email,.topbar-account-edit-tip,.topbar-notice-head-title,.topbar-notice-head-meta,.topbar-notice-detail,.ai-proto-page .ai-user-question-time,.ai-proto-page .ai-msg-satisfaction,.ai-proto-page .ai-input-hint,.ai-proto-page .ai-page-crumb{font-size:var(--ds-font-caption)!important;line-height:1.5}.btn,.topbar-create-btn,.ai-proto-page .ai-send-btn{min-height:var(--ds-btn-h)}.input,.select,.ai-proto-page .ai-input{min-height:var(--ds-input-h)}.app-shell{height:100dvh;min-height:100dvh}.page,.card,.section-card,.section-body,.dashboard-grid,.grid-2,.library-layout,.templates-layout,.daily-notes-grid,.stats-row,.graph-grid,.ai-layout,.resource-filter-bar,.resource-move-toolbar,.resource-row,.resource-main{min-width:0}@media(max-width:1280px){.dashboard-grid,.grid-2,.library-layout,.templates-layout,.daily-notes-grid{grid-template-columns:1fr}.stats-row,.graph-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}}@media(max-width:1024px),(max-height:760px){.ai-layout{grid-template-columns:1fr}.ai-proto-page .ai-chat-container,.ai-proto-page .ai-right-rail,.wiki-panel,.editor-main,.editor-side{height:auto;max-height:none;min-height:0}.flashcard{width:100%;min-height:220px;padding:24px}}:root[data-theme-mode=dark] .ai-proto-page .ai-suggest-chip,:root[data-theme-mode=dark] .ai-proto-page .ai-tip-chip,:root[data-theme-mode=dark] .ai-proto-page .ai-tool-btn,:root[data-theme-mode=dark] .ai-proto-page .ai-mode-field,:root[data-theme-mode=dark] .ai-proto-page .ai-recent-item,:root[data-theme-mode=dark] .ai-proto-page .ai-source-card-item{background:#141b2d;border-color:var(--border)}:root[data-theme-mode=dark] .editor-page .note-btn,:root[data-theme-mode=dark] .editor-page .note-summary-card,:root[data-theme-mode=dark] .editor-page .note-document-card,:root[data-theme-mode=dark] .editor-page .note-rail-card,:root[data-theme-mode=dark] .editor-page .note-summary-head,:root[data-theme-mode=dark] .editor-page .note-mini-btn,:root[data-theme-mode=dark] .editor-page .note-editor-textarea,:root[data-theme-mode=dark] .editor-page .note-word-count,:root[data-theme-mode=dark] .graph-page .graph-tab-btn,:root[data-theme-mode=dark] .graph-page .graph-search,:root[data-theme-mode=dark] .graph-page .graph-tool-btn,:root[data-theme-mode=dark] .graph-page .graph-filter-menu,:root[data-theme-mode=dark] .graph-page .graph-filter-item,:root[data-theme-mode=dark] .graph-page .graph-network,:root[data-theme-mode=dark] .graph-page .graph-zoom-btn,:root[data-theme-mode=dark] .graph-page .graph-zoom-scale,:root[data-theme-mode=dark] .graph-page .graph-note-item,:root[data-theme-mode=dark] .graph-page .graph-child-item,:root[data-theme-mode=dark] .graph-page .graph-tag.ghost,:root[data-theme-mode=dark] .graph-page .graph-action-btn,:root[data-theme-mode=dark] .review-page .review-v2-metric,:root[data-theme-mode=dark] .review-page .review-v2-question-card,:root[data-theme-mode=dark] .review-page .review-v2-answer-panel,:root[data-theme-mode=dark] .review-page .review-v2-rate-panel,:root[data-theme-mode=dark] .review-page .review-v2-side-card,:root[data-theme-mode=dark] .review-page .review-v2-skip-btn,:root[data-theme-mode=dark] .review-page .review-v2-nav-btn,:root[data-theme-mode=dark] .review-page .review-v2-ghost-btn,:root[data-theme-mode=dark] .review-page .review-v2-end-btn,:root[data-theme-mode=dark] .review-page .review-v2-primary-inline,:root[data-theme-mode=dark] .review-page .review-v2-ghost-inline,:root[data-theme-mode=dark] .review-page .review-v2-queue-item,:root[data-theme-mode=dark] .review-page .review-v2-refresh-icon,:root[data-theme-mode=dark] .review-page .review-v2-rate-btn{background:var(--bg-surface);border-color:var(--border);color:var(--text-primary)}:root[data-theme-mode=dark] .editor-page .note-summary-generate-btn,:root[data-theme-mode=dark] .note-content-page .note-summary-generate-btn{background:transparent;border-color:transparent;color:#a5b4fc}:root[data-theme-mode=dark] .editor-page .note-summary-generate-btn:hover:not(:disabled),:root[data-theme-mode=dark] .note-content-page .note-summary-generate-btn:hover:not(:disabled){background:transparent;border-color:transparent;color:#c7d2fe}:root[data-theme-mode=dark] .editor-page .read-aloud-player,:root[data-theme-mode=dark] .note-content-page .read-aloud-player{border-color:var(--border);background:color-mix(in srgb,var(--bg-surface) 90%,#0f172a);box-shadow:0 10px 22px #02061757}:root[data-theme-mode=dark] .editor-page .read-aloud-play-btn,:root[data-theme-mode=dark] .note-content-page .read-aloud-play-btn{background:color-mix(in srgb,var(--accent) 76%,#1e293b)}:root[data-theme-mode=dark] .editor-page .read-aloud-wave-bar,:root[data-theme-mode=dark] .note-content-page .read-aloud-wave-bar{background:#94a3b85c}:root[data-theme-mode=dark] .editor-page .read-aloud-wave-bar.played,:root[data-theme-mode=dark] .note-content-page .read-aloud-wave-bar.played{background:#93c5fd}:root[data-theme-mode=dark] .editor-page .read-aloud-wave-bar.active,:root[data-theme-mode=dark] .note-content-page .read-aloud-wave-bar.active{background:#bfdbfe}:root[data-theme-mode=dark] .editor-page .read-aloud-cursor,:root[data-theme-mode=dark] .note-content-page .read-aloud-cursor{background:#93c5fd;box-shadow:0 0 0 4px #93c5fd29}:root[data-theme-mode=dark] .editor-page .read-aloud-cursor.is-loading,:root[data-theme-mode=dark] .note-content-page .read-aloud-cursor.is-loading{background:transparent;border-color:#93c5fd;border-top-color:transparent;box-shadow:0 0 14px #93c5fd47}:root[data-theme-mode=dark] .editor-page .read-aloud-progress,:root[data-theme-mode=dark] .note-content-page .read-aloud-progress{background:linear-gradient(to right,#93c5fd 0%,#93c5fd var(--progress-pct),rgba(148,163,184,.38) var(--progress-pct),rgba(148,163,184,.38) 100%)}:root[data-theme-mode=dark] .editor-page .read-aloud-status,:root[data-theme-mode=dark] .note-content-page .read-aloud-status{color:var(--text-primary)}:root[data-theme-mode=dark] .editor-page .read-aloud-time,:root[data-theme-mode=dark] .note-content-page .read-aloud-time{color:var(--text-secondary)}:root[data-theme-mode=dark] .editor-page .read-aloud-player.is-error,:root[data-theme-mode=dark] .note-content-page .read-aloud-player.is-error{border-color:#ef444480;background:color-mix(in srgb,var(--bg-surface) 82%,#450a0a);box-shadow:0 10px 22px #7f1d1d52}:root[data-theme-mode=dark] .editor-page .note-title,:root[data-theme-mode=dark] .editor-page .note-summary-head,:root[data-theme-mode=dark] .editor-page .note-preview-content,:root[data-theme-mode=dark] .graph-page .graph-title,:root[data-theme-mode=dark] .graph-page .graph-detail-head h2,:root[data-theme-mode=dark] .graph-page .graph-detail-title-row h3,:root[data-theme-mode=dark] .graph-page .graph-detail-section h4,:root[data-theme-mode=dark] .graph-page .graph-node-label,:root[data-theme-mode=dark] .review-page .review-v2-metric-value,:root[data-theme-mode=dark] .review-page .review-v2-question-title,:root[data-theme-mode=dark] .review-page .review-v2-rate-head,:root[data-theme-mode=dark] .review-page .review-v2-side-title,:root[data-theme-mode=dark] .review-page .review-v2-ring-center strong{color:var(--text-primary)}:root[data-theme-mode=dark] .editor-page .note-summary-text,:root[data-theme-mode=dark] .editor-page .note-meta-row,:root[data-theme-mode=dark] .graph-page .graph-subtitle,:root[data-theme-mode=dark] .graph-page .graph-detail-summary,:root[data-theme-mode=dark] .graph-page .graph-detail-title-row p,:root[data-theme-mode=dark] .graph-page .graph-note-title,:root[data-theme-mode=dark] .review-page .review-v2-metric-label,:root[data-theme-mode=dark] .review-page .review-v2-metric-sub,:root[data-theme-mode=dark] .review-page .review-v2-question-hint,:root[data-theme-mode=dark] .review-page .review-v2-answer-source,:root[data-theme-mode=dark] .review-page .review-v2-answer-text,:root[data-theme-mode=dark] .review-page .review-v2-answer-list,:root[data-theme-mode=dark] .review-page .review-v2-rate-sub,:root[data-theme-mode=dark] .review-page .review-v2-rate-interval,:root[data-theme-mode=dark] .review-page .review-v2-quick-tip,:root[data-theme-mode=dark] .review-page .review-v2-progress-meta p,:root[data-theme-mode=dark] .review-page .review-v2-ring-center span{color:var(--text-secondary)}:root[data-theme-mode=dark] .graph-page .graph-network-wrap{background:radial-gradient(circle at 30% 20%,rgba(99,102,241,.2),transparent 48%),radial-gradient(circle at 80% 75%,rgba(59,130,246,.18),transparent 55%),var(--bg-surface)}:root[data-theme-mode=dark] .graph-page .graph-node-dot,:root[data-theme-mode=dark] .graph-page .graph-node-icon{stroke:#dbe7ff}:root[data-theme-mode=dark] .graph-page .graph-empty{border-color:var(--border);color:var(--text-secondary)}:root[data-theme-mode=dark] .review-page .review-v2-mini-track,:root[data-theme-mode=dark] .review-page .review-v2-side-track,:root[data-theme-mode=dark] .review-page .review-v2-ring-track,:root[data-theme-mode=dark] .review-page .review-v2-rate-rank{background:color-mix(in srgb,var(--bg-surface) 54%,#4b556b);stroke:color-mix(in srgb,var(--bg-surface) 54%,#4b556b);color:var(--text-secondary)}:root[data-theme-mode=dark] .review-page .review-v2-state-pill,:root[data-theme-mode=dark] .review-page .review-v2-think-text,:root[data-theme-mode=dark] .review-page .review-v2-nav-next{color:#c7d5ff;border-color:color-mix(in srgb,var(--accent) 50%,transparent);background:color-mix(in srgb,var(--accent) 20%,transparent)}:root[data-theme-mode=dark] .review-page .review-v2-reveal-btn{color:#eff4ff;box-shadow:0 16px 28px #1118276b}:root[data-theme-mode=dark] .review-page .review-v2-reveal-btn kbd{border-color:#bfdbfe80;background:#0f172a57;color:#dbeafe}:root[data-theme-mode=dark] .topbar-create-btn{color:#c7d2fe!important;border-color:transparent!important}:root[data-theme-mode=dark] .topbar-create-btn:hover{color:#e0e7ff!important;border-color:transparent!important;background:color-mix(in srgb,var(--accent) 16%,var(--bg-surface))!important}:root[data-theme-mode=dark] .topbar-theme-toggle{border-color:#94a3b838;background:linear-gradient(145deg,#0f172af0,#1e293bd6);color:#c7d2fe}:root[data-theme-mode=dark] .topbar-theme-toggle:hover{border-color:#818cf852;background:linear-gradient(145deg,#1e293bfa,#2563eb3d);color:#e0e7ff}:root[data-theme-mode=dark] .ai-proto-page .ai-suggest-chip{color:#b9c7ea!important;border-color:transparent!important;background:color-mix(in srgb,var(--bg-surface) 82%,#19243a)!important}:root[data-theme-mode=dark] .ai-proto-page .ai-suggest-chip:hover{color:#d6e2ff!important;background:color-mix(in srgb,var(--accent) 14%,var(--bg-surface))!important}:root[data-theme-mode=dark] .ai-proto-page .ai-suggest-chip-tag{color:#cbd6ff!important;background:color-mix(in srgb,var(--accent) 28%,#0f172a)!important}:root[data-theme-mode=dark] .ai-proto-page .ai-hero-antenna{background:linear-gradient(180deg,#a9b5ff,#8e9bff)}:root[data-theme-mode=dark] .ai-proto-page .ai-hero-antenna-tip{background:#bcc7ff;box-shadow:0 0 12px #a5b4fc6b}.dashboard-home .task-strip-cta{background:#f8faff!important;border:1px solid #e6ebf8!important;color:#46557a!important}.dashboard-home .task-strip-cta:hover{background:#f1f5ff!important;color:#3f4d72!important}:root[data-theme-mode=dark] .dashboard-home .task-strip-cta{background:var(--bg-surface)!important;border-color:var(--border)!important;color:var(--text-primary)!important}:root[data-theme-mode=dark] .dashboard-home .task-strip-cta:hover{background:var(--bg-surface-hover)!important}:root[data-theme-mode=dark] .ai-proto-page .ai-hero-copy p{color:#a8b7d7!important}:root[data-theme-mode=dark] .note-content-page .note-btn,:root[data-theme-mode=dark] .note-content-page .note-translate-btn,:root[data-theme-mode=dark] .note-content-page .note-summary-card,:root[data-theme-mode=dark] .note-content-page .note-summary-head,:root[data-theme-mode=dark] .note-content-page .note-summary-body,:root[data-theme-mode=dark] .note-content-page .note-document-card,:root[data-theme-mode=dark] .note-content-page .note-editor-toolbar,:root[data-theme-mode=dark] .note-content-page .note-mini-btn,:root[data-theme-mode=dark] .note-content-page .note-editor-textarea,:root[data-theme-mode=dark] .note-content-page .note-preview-content,:root[data-theme-mode=dark] .note-content-page .note-preview-table,:root[data-theme-mode=dark] .note-content-page .note-preview-code-wrap,:root[data-theme-mode=dark] .note-content-page .note-preview-code-head,:root[data-theme-mode=dark] .note-content-page .note-rail-card,:root[data-theme-mode=dark] .note-content-page .note-related-item,:root[data-theme-mode=dark] .note-content-page .note-version-row,:root[data-theme-mode=dark] .note-content-page .note-floating-actions,:root[data-theme-mode=dark] .note-content-page .note-floating-btn,:root[data-theme-mode=dark] .note-content-page .note-tag,:root[data-theme-mode=dark] .note-content-page .note-side-tag,:root[data-theme-mode=dark] .note-content-page .note-tag-add{background:var(--bg-surface)!important;border-color:var(--border)!important;color:var(--text-primary)!important}:root[data-theme-mode=dark] .note-content-page .note-translate-btn{background:color-mix(in srgb,var(--bg-surface) 92%,#0f172a)!important;border-color:color-mix(in srgb,var(--accent) 36%,var(--border))!important;color:#dbe7ff!important;box-shadow:0 12px 26px #02061757!important}:root[data-theme-mode=dark] .note-content-page .note-translate-btn:hover:not(:disabled){background:color-mix(in srgb,var(--accent) 16%,var(--bg-surface))!important;border-color:color-mix(in srgb,var(--accent) 52%,var(--border))!important}:root[data-theme-mode=dark] .note-content-page .note-translate-btn.is-translated{background:color-mix(in srgb,var(--accent) 18%,var(--bg-surface))!important;border-color:color-mix(in srgb,var(--accent) 56%,var(--border))!important;color:#eef4ff!important}:root[data-theme-mode=dark] .note-content-page .note-translate-btn-mark{background:color-mix(in srgb,var(--accent) 24%,#0f172a)!important;color:inherit!important}:root[data-theme-mode=dark] .note-content-page .note-btn.note-btn-primary,:root[data-theme-mode=dark] .note-content-page .note-version-restore,:root[data-theme-mode=dark] .note-content-page .note-floating-btn.note-floating-toggle{color:#e8ecff!important}:root[data-theme-mode=dark] .note-content-page .note-title,:root[data-theme-mode=dark] .note-content-page .note-summary-text,:root[data-theme-mode=dark] .note-content-page .note-preview-paragraph,:root[data-theme-mode=dark] .note-content-page .note-preview-heading,:root[data-theme-mode=dark] .note-content-page .note-preview-list,:root[data-theme-mode=dark] .note-content-page .note-preview-quote,:root[data-theme-mode=dark] .note-content-page .note-preview-code,:root[data-theme-mode=dark] .note-content-page .note-related-title,:root[data-theme-mode=dark] .note-content-page .note-plan-hint,:root[data-theme-mode=dark] .note-content-page .note-summary-empty{color:var(--text-primary)!important}:root[data-theme-mode=dark] .note-content-page .note-breadcrumb,:root[data-theme-mode=dark] .note-content-page .note-meta-row,:root[data-theme-mode=dark] .note-content-page .note-summary-error,:root[data-theme-mode=dark] .note-content-page .note-rail-empty,:root[data-theme-mode=dark] .note-content-page .note-preview-code-lang,:root[data-theme-mode=dark] .note-content-page .note-toc-more,:root[data-theme-mode=dark] .note-content-page .note-version-time,:root[data-theme-mode=dark] .note-content-page .note-version-summary{color:var(--text-secondary)!important}:root[data-theme-mode=dark] .note-content-page .note-btn:hover,:root[data-theme-mode=dark] .note-content-page .note-mini-btn:hover,:root[data-theme-mode=dark] .note-content-page .note-related-item:hover,:root[data-theme-mode=dark] .note-content-page .note-floating-btn:hover{background:var(--bg-surface-hover)!important}:root[data-theme-mode=dark] .note-content-page .note-backtop-btn{background:conic-gradient(from 180deg,#818cf8 0 var(--editor-scroll-progress, 0%),rgba(148,163,184,.28) var(--editor-scroll-progress, 0%) 100%)!important;border-color:#818cf86b!important;box-shadow:0 16px 30px #0f172a6b!important}:root[data-theme-mode=dark] .note-content-page .note-backtop-btn:before{background:radial-gradient(circle at 35% 30%,#111827,#0f172a 55%,#0b1220)!important}:root[data-theme-mode=dark] .note-content-page .note-backtop-btn .note-chevron-icon{color:#c7d2fe!important}:root[data-theme-mode=dark] .note-content-page .note-backtop-btn:hover{box-shadow:0 20px 34px #1e293b94!important}:root[data-theme-mode=dark] .dashboard-home .task-metric-icon,:root[data-theme-mode=dark] .dashboard-home .panel-title-icon,:root[data-theme-mode=dark] .dashboard-home .plan-avatar{background:color-mix(in srgb,var(--accent) 18%,var(--bg-surface))!important;color:#c9d4ff!important;border-color:color-mix(in srgb,var(--accent) 24%,var(--border))!important}:root[data-theme-mode=dark] .library-resource-page .library-file-icon{color:#c9d4ff!important;background:color-mix(in srgb,var(--accent) 20%,var(--bg-surface))!important;border-color:color-mix(in srgb,var(--accent) 28%,var(--border))!important}:root[data-theme-mode=dark] .note-content-page .note-rail-tab,:root[data-theme-mode=dark] .note-content-page .note-rail-tab.active,:root[data-theme-mode=dark] .note-content-page .note-toc-item.active{background:color-mix(in srgb,var(--bg-surface) 92%,#0f172a)!important;border-color:var(--border)!important;color:var(--text-primary)!important}:root[data-theme-mode=dark] .ai-proto-page .ai-rail-link,:root[data-theme-mode=dark] .settings-page .settings-side-item.active,:root[data-theme-mode=dark] .settings-page .settings-side-item.active span{color:#c5d0ff!important}:root[data-theme-mode=dark] .dashboard-home .home-panel,:root[data-theme-mode=dark] .dashboard-home .task-metric,:root[data-theme-mode=dark] .dashboard-home .plan-stage-card,:root[data-theme-mode=dark] .dashboard-home .ghost-btn,:root[data-theme-mode=dark] .dashboard-home .todo-action,:root[data-theme-mode=dark] .dashboard-home .recent-tag,:root[data-theme-mode=dark] .dashboard-home .week-dot.today,:root[data-theme-mode=dark] .plan-page .plan-date-chip,:root[data-theme-mode=dark] .plan-page .plan-switch-chip,:root[data-theme-mode=dark] .plan-page .progress-ring-inner,:root[data-theme-mode=dark] .plan-page .plan-tabs,:root[data-theme-mode=dark] .plan-page .stage-item,:root[data-theme-mode=dark] .plan-page .resource-row,:root[data-theme-mode=dark] .plan-page .task-stat-card,:root[data-theme-mode=dark] .plan-page .side-metric-item,:root[data-theme-mode=dark] .plan-page .today-task-item,:root[data-theme-mode=dark] .plan-page .btn-danger-ghost,:root[data-theme-mode=dark] .review-page .review-v2-quote,:root[data-theme-mode=dark] .review-page .review-v2-rate-btn,:root[data-theme-mode=dark] .library-resource-page .library-search-box,:root[data-theme-mode=dark] .library-resource-page .library-view-switch,:root[data-theme-mode=dark] .library-resource-page .library-folder-chip,:root[data-theme-mode=dark] .library-resource-page .library-folder-create,:root[data-theme-mode=dark] .library-resource-page .library-grid-card,:root[data-theme-mode=dark] .library-resource-page .library-recent-item,:root[data-theme-mode=dark] .settings-page .settings-default-toggle,:root[data-theme-mode=dark] .settings-page .settings-icon-btn,:root[data-theme-mode=dark] .settings-page .settings-avatar,:root[data-theme-mode=dark] .settings-page .settings-theme-mode-check,:root[data-theme-mode=dark] .settings-page .settings-zoom-dot,:root[data-theme-mode=dark] .settings-page .settings-danger-btn,:root[data-theme-mode=dark] .graph-page .graph-tab-btn,:root[data-theme-mode=dark] .graph-page .graph-search,:root[data-theme-mode=dark] .graph-page .graph-tool-btn,:root[data-theme-mode=dark] .graph-page .graph-filter-menu,:root[data-theme-mode=dark] .graph-page .graph-network,:root[data-theme-mode=dark] .graph-page .graph-zoom-btn,:root[data-theme-mode=dark] .graph-page .graph-zoom-scale,:root[data-theme-mode=dark] .graph-page .graph-note-item,:root[data-theme-mode=dark] .graph-page .graph-child-item,:root[data-theme-mode=dark] .graph-page .graph-tag.ghost,:root[data-theme-mode=dark] .graph-page .graph-action-btn,:root[data-theme-mode=dark] .graph-page .graph-detail-reopen{background:var(--bg-surface)!important;border-color:var(--border)!important;color:var(--text-primary)!important}:root[data-theme-mode=dark] .dashboard-home .panel-title,:root[data-theme-mode=dark] .dashboard-home .task-metric-value,:root[data-theme-mode=dark] .dashboard-home .plan-name,:root[data-theme-mode=dark] .dashboard-home .status-value,:root[data-theme-mode=dark] .dashboard-home .recent-title,:root[data-theme-mode=dark] .plan-page .page-title,:root[data-theme-mode=dark] .plan-page .plan-title,:root[data-theme-mode=dark] .plan-page .stage-name,:root[data-theme-mode=dark] .plan-page .task-stat-value,:root[data-theme-mode=dark] .plan-page .today-task-title,:root[data-theme-mode=dark] .review-page .review-v2-card-title,:root[data-theme-mode=dark] .review-page .review-v2-answer-title,:root[data-theme-mode=dark] .review-page .review-v2-queue-title,:root[data-theme-mode=dark] .library-resource-page .library-file-title,:root[data-theme-mode=dark] .library-resource-page .library-grid-title,:root[data-theme-mode=dark] .library-resource-page .library-overview-value,:root[data-theme-mode=dark] .library-resource-page .library-recent-title,:root[data-theme-mode=dark] .settings-page .settings-model-section-title,:root[data-theme-mode=dark] .settings-page .settings-theme-mode-title,:root[data-theme-mode=dark] .graph-page .graph-node-label{color:var(--text-primary)!important}:root[data-theme-mode=dark] .dashboard-home .dashboard-subtitle,:root[data-theme-mode=dark] .dashboard-home .dashboard-date,:root[data-theme-mode=dark] .dashboard-home .panel-tip,:root[data-theme-mode=dark] .dashboard-home .task-metric-label,:root[data-theme-mode=dark] .dashboard-home .task-metric-unit,:root[data-theme-mode=dark] .dashboard-home .plan-meta,:root[data-theme-mode=dark] .dashboard-home .recent-meta,:root[data-theme-mode=dark] .plan-page .page-subtitle,:root[data-theme-mode=dark] .plan-page .plan-breadcrumb,:root[data-theme-mode=dark] .plan-page .plan-date-chip,:root[data-theme-mode=dark] .plan-page .stage-desc,:root[data-theme-mode=dark] .plan-page .resource-meta,:root[data-theme-mode=dark] .plan-page .side-metric-label,:root[data-theme-mode=dark] .plan-page .today-task-detail,:root[data-theme-mode=dark] .review-page .review-v2-quote,:root[data-theme-mode=dark] .review-page .review-v2-rate-sub,:root[data-theme-mode=dark] .review-page .review-v2-rate-interval,:root[data-theme-mode=dark] .review-page .review-v2-queue-sub,:root[data-theme-mode=dark] .library-resource-page .library-file-desc,:root[data-theme-mode=dark] .library-resource-page .library-grid-desc,:root[data-theme-mode=dark] .library-resource-page .library-overview-label,:root[data-theme-mode=dark] .library-resource-page .library-recent-time,:root[data-theme-mode=dark] .settings-page .settings-theme-mode-desc,:root[data-theme-mode=dark] .settings-page .settings-display-subtitle,:root[data-theme-mode=dark] .graph-page .graph-subtitle,:root[data-theme-mode=dark] .graph-page .graph-meta-row{color:var(--text-secondary)!important}:root[data-theme-mode=dark] .dashboard-home .todo-row:hover,:root[data-theme-mode=dark] .dashboard-home .recent-row:hover,:root[data-theme-mode=dark] .library-resource-page .library-recent-item:hover,:root[data-theme-mode=dark] .library-resource-page .library-folder-create:hover,:root[data-theme-mode=dark] .settings-page .settings-icon-btn:hover,:root[data-theme-mode=dark] .graph-page .graph-filter-item:hover,:root[data-theme-mode=dark] .graph-page .graph-action-btn:hover,:root[data-theme-mode=dark] .graph-page .graph-close-btn:hover{background:var(--bg-surface-hover)!important}:root[data-theme-mode=dark] .graph-page .graph-network-wrap{background:radial-gradient(circle at 30% 20%,rgba(99,102,241,.2),transparent 48%),radial-gradient(circle at 80% 75%,rgba(59,130,246,.18),transparent 55%),var(--bg-surface)!important}:root[data-theme-mode=dark] .review-page .review-v2-rate-btn.tone-again,:root[data-theme-mode=dark] .review-page .review-v2-rate-btn.tone-hard,:root[data-theme-mode=dark] .review-page .review-v2-rate-btn.tone-neutral,:root[data-theme-mode=dark] .review-page .review-v2-rate-btn.tone-easy,:root[data-theme-mode=dark] .review-page .review-v2-rate-btn.tone-very-easy{background:color-mix(in srgb,var(--bg-surface) 84%,var(--accent) 16%)!important}:root[data-theme-mode=dark] .graph-page .graph-expand-btn{background:color-mix(in srgb,var(--accent) 12%,var(--bg-surface))!important;border-color:color-mix(in srgb,var(--accent) 36%,transparent)!important;color:#c7d2fe!important}:root[data-theme-mode=dark] .graph-page .graph-expand-btn:hover{background:color-mix(in srgb,var(--accent) 20%,var(--bg-surface))!important}:root[data-theme-mode=dark] .graph-page .graph-meta-row span{color:var(--text-secondary)!important}:root[data-theme-mode=dark] .graph-page .graph-meta-row strong{color:var(--text-primary)!important}:root[data-theme-mode=dark] .dashboard-home .todo-row:hover{background:var(--bg-surface-hover)!important}:root[data-theme-mode=dark] .dashboard-home .todo-text{color:var(--text-primary)!important}:root[data-theme-mode=dark] .dashboard-home .todo-dot{border-color:#818cf8!important}:root[data-theme-mode=dark] .dashboard-home .panel-link{color:#a5b4fc!important}:root[data-theme-mode=dark] .dashboard-home .dashboard-title{color:var(--text-primary)!important}:root[data-theme-mode=dark] .dashboard-home .task-metric-value{color:var(--text-primary)!important}:root[data-theme-mode=dark] .dashboard-home .week-label{color:var(--text-secondary)!important}:root[data-theme-mode=dark] .dashboard-home .week-dot{border-color:#94a3b866!important;background:transparent!important}:root[data-theme-mode=dark] .dashboard-home .week-dot.active{background:var(--accent)!important;border-color:var(--accent)!important}:root[data-theme-mode=dark] .dashboard-home .status-axis-label,:root[data-theme-mode=dark] .dashboard-home .status-axis-tick,:root[data-theme-mode=dark] .dashboard-home .status-weekday,:root[data-theme-mode=dark] .dashboard-home .heatmap-weekday{color:var(--text-secondary)!important}:root[data-theme-mode=dark] .dashboard-home .status-chart-wrap{background:color-mix(in srgb,var(--bg-surface) 84%,var(--accent) 16%)!important;border-color:color-mix(in srgb,var(--border) 82%,var(--accent) 18%)!important}:root[data-theme-mode=dark] .dashboard-home .status-grid-line{stroke:color-mix(in srgb,var(--border) 78%,transparent)!important}:root[data-theme-mode=dark] .dashboard-home .status-line{stroke:#9a9df8!important}:root[data-theme-mode=dark] .dashboard-home .status-point{fill:#9a9df8!important;stroke:#1f2434!important}:root[data-theme-mode=dark] .dashboard-home .status-point:hover,:root[data-theme-mode=dark] .dashboard-home .status-point.active{fill:#818cf8!important;stroke:#2c3350!important}:root[data-theme-mode=dark] .dashboard-home .status-point-pill{background:color-mix(in srgb,var(--bg-surface) 88%,var(--accent) 12%)!important;border-color:color-mix(in srgb,var(--border) 75%,var(--accent) 25%)!important}:root[data-theme-mode=dark] .dashboard-home .pill-day{color:#a5b4fc!important}:root[data-theme-mode=dark] .dashboard-home .pill-value{color:#c7d2fe!important}:root[data-theme-mode=dark] .dashboard-home .status-week-total{color:#a5b4fc!important}:root[data-theme-mode=dark] .dashboard-home .status-week-total-unit{color:#818cf8!important}:root[data-theme-mode=dark] .dashboard-home .heatmap-cell{background:#94a3b826!important}:root[data-theme-mode=dark] .dashboard-home .heatmap-cell.level-1{background:#818cf861!important}:root[data-theme-mode=dark] .dashboard-home .heatmap-cell.level-2{background:#6366f1a6!important}:root[data-theme-mode=dark] .dashboard-home .heatmap-cell.level-3{background:#5254d0!important}:root[data-theme-mode=dark] .dashboard-home .heatmap-cell:not(.is-future):hover{box-shadow:0 3px 10px #818cf866!important}:root[data-theme-mode=dark] .dashboard-home .heatmap-cell.is-today{outline-color:#818cf8!important}:root[data-theme-mode=dark] .dashboard-home .heatmap-date{color:#c8d2ff47!important}:root[data-theme-mode=dark] .dashboard-home .heatmap-cell.level-2 .heatmap-date,:root[data-theme-mode=dark] .dashboard-home .heatmap-cell.level-3 .heatmap-date{color:#fff6!important}:root[data-theme-mode=dark] .dashboard-home .heatmap-streak{color:var(--text-primary)!important}:root[data-theme-mode=dark] .library-side-tag,:root[data-theme-mode=dark] .library-tag-pill{border:1px solid var(--border)!important;background:var(--bg-surface)!important;color:var(--text-primary)!important}:root[data-theme-mode=dark] .library-side-tag:hover,:root[data-theme-mode=dark] .library-tag-pill:hover{border-color:var(--border)!important;background:var(--bg-surface-hover)!important;color:var(--text-primary)!important}:root[data-theme-mode=dark] .dashboard-home .recent-row{background:var(--bg-surface)!important;border-color:var(--border)!important}:root[data-theme-mode=dark] .dashboard-home .recent-row:hover{background:var(--bg-surface-hover)!important}:root[data-theme-mode=dark] .settings-page .settings-side-item{color:var(--text-secondary)!important;border-color:transparent!important;background:transparent!important}:root[data-theme-mode=dark] .settings-page .settings-side-item:hover{color:var(--text-primary)!important;background:#818cf81a!important}:root[data-theme-mode=dark] .review-page .review-v2-view-all{color:#a5b4fc!important}:root[data-theme-mode=dark] .review-page .review-v2-overview-grid{border-color:var(--border)!important}:root[data-theme-mode=dark] .review-page .review-v2-overview-grid article{border-color:var(--border)!important}:root[data-theme-mode=dark] .dashboard-home .stage-title{color:var(--text-primary)!important}:root[data-theme-mode=dark] .dashboard-home .stage-progress-track{background:#94a3b833!important}:root[data-theme-mode=dark] .dashboard-home .stage-progress-value{color:#a5b4fc!important}:root[data-theme-mode=dark] .dashboard-home .status-value,:root[data-theme-mode=dark] .dashboard-home .status-label{color:var(--text-primary)!important}:root[data-theme-mode=dark] .dashboard-home .plan-name{color:var(--text-primary)!important}:root[data-theme-mode=dark] .dashboard-home .plan-meta{color:var(--text-secondary)!important}:root[data-theme-mode=dark] .review-page .review-v2-overview-label{color:var(--text-secondary)!important}:root[data-theme-mode=dark] .review-page .review-v2-overview-value{color:var(--text-primary)!important}.topbar{padding-left:max(var(--layout-content-pad),calc((100% - var(--ds-content-max)) / 2))}:root{--ds-page-gap: 24px;--ds-card-pad: 24px;--ds-card-radius: 12px;--ds-control-radius: 8px;--ds-progress-h: 6px}html,body,#app{min-width:0;background:var(--bg-root)}.topbar{min-height:var(--topbar-h);padding-right:max(var(--layout-content-pad),calc((100% - var(--ds-content-max)) / 2));background:#ffffffeb;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.topbar-search input{height:var(--ds-input-h);border-radius:var(--ds-control-radius);border-color:var(--border);background:var(--bg-root)}.topbar-create-btn,.btn,.primary-cta,.ghost-btn,.note-btn,.graph-action-btn,.review-v2-nav-btn,.review-v2-ghost-btn,.review-v2-end-btn,.settings-default-toggle,.settings-add-model-btn,.settings-save-btn,.primary-action-button,.ghost-action-button{min-height:var(--ds-btn-h);border-radius:var(--ds-control-radius)!important;font-size:var(--ds-font-body)!important;line-height:1!important}.btn-primary,.primary-cta,.note-btn-primary,.graph-action-btn.primary,.review-v2-primary-inline,.review-v2-reveal-btn,.primary-action-button,.settings-save-btn{border-color:var(--accent)!important;background:var(--accent)!important;color:#fff!important}.btn-primary:hover,.primary-cta:hover,.note-btn-primary:hover,.graph-action-btn.primary:hover,.review-v2-primary-inline:hover,.review-v2-reveal-btn:hover,.primary-action-button:hover,.settings-save-btn:hover{background:var(--accent-light)!important}.library-upload-btn.btn-primary{border-color:#d7e2ff!important;background:#f7faff!important;color:#315cff!important;box-shadow:none}.library-upload-btn.btn-primary:hover{border-color:#b9caff!important;background:#eef4ff!important;color:#2448db!important}.main-content{padding:24px var(--layout-content-pad) 32px}.main-content>:is(.page,.dashboard-home,.plan-page,.graph-page,.review-page,.ai-proto-page,.note-content-page){width:100%;max-width:var(--ds-content-max);margin-inline:auto}.page,.dashboard-home,.plan-page,.graph-page,.review-page,.ai-proto-page,.note-content-page,.library-resource-main,.settings-content-area{gap:var(--ds-page-gap)}.page-title,.dashboard-title,.graph-title,.plan-page .page-title,.settings-display-title,.note-title,.auth-card-title,.hero-title-line,.review-v2-question-title{letter-spacing:0!important}.page-title,.dashboard-title,.graph-title,.note-title,.settings-display-title{font-size:var(--ds-font-h1)!important;line-height:var(--ds-line-title)!important;font-weight:600!important;color:var(--text-primary)!important}.page-subtitle,.dashboard-subtitle,.graph-subtitle,.settings-display-subtitle,.plan-breadcrumb,.graph-breadcrumb,.note-breadcrumb,.library-resource-crumb,.review-v2-breadcrumb{font-size:var(--ds-font-body)!important;line-height:var(--ds-line-body)!important;color:var(--text-secondary)!important}.card,.section-card,.home-panel,.library-table-card,.library-side-card,.library-grid-card,.library-folder-chip,.settings-section,.settings-side-nav,.settings-theme-mode-card,.settings-code-theme-card,.settings-system-card,.settings-param-card,.plan-create-card,.progress-overview-card,.stage-item,.side-card,.review-v2-metric,.review-v2-question-card,.review-v2-rate-panel,.review-v2-side-card,.ai-proto-page .ai-dialog-card,.ai-proto-page .ai-rail-card,.note-summary-card,.note-document-card,.note-rail-card,.graph-canvas-card,.graph-detail-panel,.auth-card{border:1px solid var(--border-light)!important;border-radius:var(--ds-card-radius)!important;background:var(--bg-surface)!important;box-shadow:var(--shadow-sm)!important}.card:hover,.section-card:hover,.home-panel:hover,.library-grid-card:hover,.review-v2-side-card:hover,.ai-proto-page .ai-rail-card:hover,.note-rail-card:hover,.graph-detail-panel:hover{box-shadow:var(--shadow-md)!important;transform:translateY(-1px)}.section-body,.library-side-card,.review-v2-side-card,.ai-proto-page .ai-rail-card,.note-document-card,.graph-detail-panel{padding:var(--ds-card-pad)!important}.input,.select,.auth-input,.library-search-input,.graph-search,.settings-default-model-select,.settings-display-select,.templates-textarea,.daily-template-preview,.ai-proto-page .ai-input,.ai-proto-page .ai-mode-field select{min-height:var(--ds-input-h)!important;border-radius:var(--ds-control-radius)!important;border-color:var(--border)!important;background:#fff!important;font-size:var(--ds-font-body)!important}.input:focus,.select:focus,.auth-input:focus,.library-search-box:focus-within,.graph-search:focus-within,.note-editor-textarea:focus,.ai-proto-page .ai-input:focus,.ai-proto-page .ai-mode-field select:focus{border-color:var(--accent)!important;box-shadow:0 0 0 3px var(--accent-bg)!important;outline:none!important}.pill,.library-tag-pill,.library-side-tag,.resource-tag-chip,.note-tag,.note-side-tag,.recent-tag,.plan-status-chip,.stage-status,.settings-tag-recommend,.graph-tag,.ai-proto-page .ai-suggest-chip,.ai-proto-page .ai-tip-chip{min-height:24px!important;border-radius:12px!important;padding:0 8px!important;font-size:var(--ds-font-caption)!important;line-height:1!important}.progress-bar-track,.progress-track,.plan-progress-track,.stage-progress-track,.stage-meter-track,.settings-storage-track,.review-v2-mini-track,.review-v2-side-track,.graph-threshold-slider{height:var(--ds-progress-h)!important;border-radius:3px!important}.progress-bar-fill,.progress-fill,.plan-progress-fill,.stage-progress-fill,.stage-meter-fill,.settings-storage-fill,.review-v2-mini-fill,.review-v2-side-fill{background:var(--accent)!important;border-radius:3px!important}@media(min-width:1280px){.main-content{display:grid;align-content:start}.main-content>:is(.dashboard-home,.plan-page,.graph-page,.review-page,.ai-proto-page,.note-content-page,.library-resource-page,.settings-page){min-height:min(calc(100dvh - var(--topbar-h) - 56px),760px)}.library-resource-page,.plan-layout,.review-v2-shell,.ai-proto-page .ai-layout,.graph-main,.note-content-layout{column-gap:24px!important}.library-resource-page{grid-template-columns:minmax(0,1fr) 280px!important}.plan-layout,.review-v2-shell,.graph-main,.note-content-layout{grid-template-columns:minmax(0,1fr) 320px!important}.settings-shell{grid-template-columns:220px minmax(0,1fr)!important}}@media(min-width:1440px){.dashboard-grid{grid-template-columns:minmax(0,2fr) 360px!important}.ai-proto-page .ai-layout{grid-template-columns:minmax(0,1fr) 300px!important}}.auth-page{min-height:100dvh;background:linear-gradient(180deg,#fff,#f8f9ff 54%,#f9fafb)!important}.auth-header{min-height:72px;padding-inline:max(32px,calc((100vw - 1200px)/2))}.auth-main{width:100%;max-width:var(--ds-content-max)!important;min-height:calc(100dvh - 128px);grid-template-columns:minmax(0,1fr) minmax(420px,520px)!important;gap:48px!important;align-items:center!important;padding:32px 32px 24px!important}.auth-card{padding:32px!important}.auth-card-title{font-size:var(--ds-font-h1)!important;line-height:var(--ds-line-title)!important;font-weight:600!important}.auth-card-subtitle,.hero-description,.hero-feature-copy p,.hero-quote p{font-size:var(--ds-font-body)!important;line-height:var(--ds-line-body)!important}@media(min-width:961px){.auth-hero .hero-title,.auth-hero .hero-description,.auth-hero .hero-feature-list,.auth-hero .hero-quote,.auth-hero .hero-pager{position:relative;z-index:1}.auth-hero .hero-illustration{right:-46px!important;top:144px!important;width:360px!important;height:286px!important;transform:none!important;opacity:.9!important}}.dashboard-home .panel-task{min-height:196px!important;justify-content:flex-start!important;gap:36px!important}.dashboard-home .task-strip{margin-top:0!important;align-items:center!important}.dashboard-home .task-metric{min-height:72px!important}.dashboard-home .panel-todo .todo-row{padding-block:6px!important}@media(max-width:1279px){:root{--layout-content-pad: 24px}.main-content>:is(.page,.dashboard-home,.plan-page,.graph-page,.review-page,.ai-proto-page){margin-inline:0}}.ai-proto-page .ai-dialog-card{--ai-chat-line-width: min(calc(100vw / 3), 930px);--ai-chat-avatar-column: 56px}.ai-proto-page .ai-answer-zone,.ai-proto-page .ai-messages{padding-left:0!important;padding-right:0!important}.ai-proto-page .ai-msg{display:grid!important;grid-template-columns:40px minmax(0,1fr)!important;gap:16px!important;width:var(--ai-chat-line-width)!important;max-width:var(--ai-chat-line-width)!important;justify-self:center!important;align-items:flex-start!important}.ai-proto-page .ai-msg.user,.ai-proto-page .ai-msg.assistant{margin-left:0!important;margin-right:0!important}.ai-proto-page .ai-msg-avatar{grid-column:1!important;justify-self:start!important;margin:0!important}.ai-proto-page .ai-msg-content{grid-column:2!important;width:100%!important;min-width:0!important;max-width:100%!important;justify-self:stretch!important}.ai-proto-page .ai-msg-bubble,.ai-proto-page .ai-thinking-live,.ai-proto-page .ai-msg-actions{width:100%!important;max-width:100%!important;box-sizing:border-box!important}.ai-proto-page .ai-msg.assistant .ai-msg-bubble,.ai-proto-page .ai-msg.user .ai-msg-bubble{width:100%!important;max-width:100%!important}.ai-proto-page .ai-structured-paragraph,.ai-proto-page .ai-structured-list,.ai-proto-page .ai-structured-quote,.ai-proto-page .ai-user-question-text{overflow-wrap:anywhere;word-break:break-word}.ai-proto-page .ai-input-bar{width:var(--ai-chat-line-width)!important;max-width:var(--ai-chat-line-width)!important;justify-self:center!important;padding-left:0!important;padding-right:0!important}.ai-proto-page .ai-context-pills{width:var(--ai-chat-line-width)!important;max-width:var(--ai-chat-line-width)!important;justify-self:center!important;padding:8px 0 8px var(--ai-chat-avatar-column)!important;box-sizing:border-box!important}.ai-proto-page .ai-dialog-card{height:100%!important;min-height:0!important;grid-template-rows:minmax(0,1fr) auto auto!important}.ai-proto-page .ai-answer-zone{min-height:0!important;overflow:hidden!important}.ai-proto-page .ai-messages{height:100%!important;max-height:100%!important;min-height:0!important;overflow-y:auto!important;scrollbar-width:none!important;grid-auto-rows:max-content!important;align-items:start!important;padding-bottom:24px!important;scroll-padding-bottom:24px!important}.ai-proto-page .ai-messages::-webkit-scrollbar{display:none!important}.ai-proto-page .ai-msg,.ai-proto-page .ai-msg-content,.ai-proto-page .ai-msg-bubble{min-height:0!important}.ai-proto-page .ai-msg{grid-auto-rows:max-content!important}.ai-proto-page .ai-msg.is-answer-collapsed{min-height:0!important}.ai-proto-page .ai-msg.is-answer-collapsed .ai-msg-content,.ai-proto-page .ai-msg.is-answer-collapsed .ai-msg-collapsed{grid-column:2!important}.ai-proto-page .ai-msg.user.is-answer-collapsed{align-items:start!important}.ai-proto-page .ai-msg-collapsed{grid-column:2!important;width:100%!important;box-sizing:border-box!important;margin-top:0!important}.ai-proto-page .ai-context-pills{margin:0!important;align-self:end!important}.ai-proto-page .ai-input-bar{position:relative!important;bottom:auto!important;align-self:end!important;z-index:2!important}.ai-proto-page .ai-input-shell,.ai-proto-page .ai-input-hint{margin-left:0!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important}.library-resource-page .library-favorite-btn{color:#94a3b8}.library-resource-page .library-favorite-btn.active{color:#2563eb;background:#2563eb1a;border-color:#2563eb47}:root[data-theme-mode=dark] .topbar,:root[data-theme-mode=dark] .auth-page{background:var(--bg-surface)!important}:root[data-theme-mode=dark] .input,:root[data-theme-mode=dark] .select,:root[data-theme-mode=dark] .auth-input,:root[data-theme-mode=dark] .library-search-input,:root[data-theme-mode=dark] .graph-search,:root[data-theme-mode=dark] .settings-default-model-select,:root[data-theme-mode=dark] .settings-display-select,:root[data-theme-mode=dark] .settings-param-input,:root[data-theme-mode=dark] .templates-textarea,:root[data-theme-mode=dark] .note-editor-textarea,:root[data-theme-mode=dark] .ai-proto-page .ai-input,:root[data-theme-mode=dark] .ai-proto-page .ai-mode-field select,:root[data-theme-mode=dark] .ai-proto-page .ai-function-row input,:root[data-theme-mode=dark] .ai-proto-page .ai-function-row select,:root[data-theme-mode=dark] .pagination-size-select{border-color:var(--border)!important;background:color-mix(in srgb,var(--bg-surface) 86%,#0f172a)!important;color:var(--text-primary)!important}:root[data-theme-mode=dark] .input::placeholder,:root[data-theme-mode=dark] .auth-input::placeholder,:root[data-theme-mode=dark] .library-search-input::placeholder,:root[data-theme-mode=dark] .settings-param-input::placeholder,:root[data-theme-mode=dark] .note-editor-textarea::placeholder,:root[data-theme-mode=dark] .ai-proto-page .ai-input::placeholder{color:var(--text-tertiary)!important}:root[data-theme-mode=dark] .progress-track,:root[data-theme-mode=dark] .progress-bar-track,:root[data-theme-mode=dark] .plan-progress-track,:root[data-theme-mode=dark] .stage-progress-track,:root[data-theme-mode=dark] .review-v2-mini-track,:root[data-theme-mode=dark] .review-v2-side-track,:root[data-theme-mode=dark] .settings-storage-track{background:#94a3b83d!important}:root[data-theme-mode=dark] .note-more-menu,:root[data-theme-mode=dark] .settings-model-more-menu{border-color:var(--border)!important;background:var(--bg-surface)!important;color:var(--text-primary)!important}:root[data-theme-mode=dark] .note-more-menu button{color:var(--text-primary)!important}:root[data-theme-mode=dark] .note-more-menu button:hover{background:var(--bg-surface-hover)!important;color:#a5b4fc!important}:root[data-theme-mode=dark] .library-upload-btn.btn-primary{border-color:color-mix(in srgb,var(--accent) 38%,var(--border))!important;background:color-mix(in srgb,var(--accent) 14%,var(--bg-surface))!important;color:#c7d2fe!important}:root[data-theme-mode=dark] .graph-detail-avatar,:root[data-theme-mode=dark] .graph-tag.ghost,:root[data-theme-mode=dark] .graph-note-item,:root[data-theme-mode=dark] .graph-child-item,:root[data-theme-mode=dark] .graph-action-btn,:root[data-theme-mode=dark] .graph-detail-reopen,:root[data-theme-mode=dark] .graph-zoom-btn,:root[data-theme-mode=dark] .graph-zoom-scale,:root[data-theme-mode=dark] .graph-minimap,:root[data-theme-mode=dark] .task-stat-card,:root[data-theme-mode=dark] .today-task-item,:root[data-theme-mode=dark] .side-metric-item,:root[data-theme-mode=dark] .review-v2-ghost-btn,:root[data-theme-mode=dark] .review-v2-end-btn,:root[data-theme-mode=dark] .settings-default-toggle,:root[data-theme-mode=dark] .settings-icon-btn,:root[data-theme-mode=dark] .settings-avatar,:root[data-theme-mode=dark] .settings-danger-btn,:root[data-theme-mode=dark] .settings-transfer-card,:root[data-theme-mode=dark] .settings-transfer-format-chip,:root[data-theme-mode=dark] .settings-transfer-preview-file-card,:root[data-theme-mode=dark] .settings-transfer-check-item,:root[data-theme-mode=dark] .settings-export-content-item,:root[data-theme-mode=dark] .settings-export-format-card,:root[data-theme-mode=dark] .settings-export-config-right,:root[data-theme-mode=dark] .settings-export-config-left .settings-transfer-check-item{border-color:var(--border)!important;background:color-mix(in srgb,var(--bg-surface) 88%,#0f172a)!important;color:var(--text-primary)!important}:root[data-theme-mode=dark] .settings-export-format-card.active,:root[data-theme-mode=dark] .settings-export-content-item.is-active,:root[data-theme-mode=dark] .settings-transfer-format-chip.is-green{border-color:color-mix(in srgb,var(--accent) 52%,var(--border))!important;background:color-mix(in srgb,var(--accent) 14%,var(--bg-surface))!important}.dashboard-home .task-strip{grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:stretch!important}.dashboard-home .task-strip-cta{min-height:72px!important;height:auto!important;align-self:stretch!important;justify-self:stretch!important;width:100%!important;border-radius:12px!important}.ai-proto-page .ai-context-pill{border:none!important;background:color-mix(in srgb,var(--bg-root) 90%,#eef2ff)!important;box-shadow:none!important}.ai-proto-page .ai-context-pill-type{color:var(--text-tertiary)!important;opacity:.78;font-weight:500!important}.ai-proto-page .ai-context-pill-value{color:var(--text-secondary)!important;opacity:.86;font-weight:450!important}.ai-proto-page .ai-context-pill.actionable:hover{border:none!important;box-shadow:none!important;background:color-mix(in srgb,var(--bg-root) 84%,#e8edff)!important}.ai-proto-page .ai-hero-avatar{width:58px!important;height:58px!important}.ai-proto-page .ai-hero-bot{position:relative;width:50px;height:50px;display:inline-flex;align-items:center;justify-content:center}.ai-proto-page .ai-hero-avatar-icon{width:50px!important;height:50px!important}.ai-proto-page .ai-hero-antenna{top:0!important;left:50%!important;width:2px!important;height:12px!important;transform-origin:50% 100%!important;animation:ai-hero-antenna-sway 1.6s ease-in-out infinite!important}.ai-proto-page .ai-hero-antenna-tip{width:8px!important;height:8px!important}.ai-proto-page .ai-suggest-chip{border:none!important}.ai-proto-page .ai-suggest-chip-tag{font-size:12px!important;font-weight:700!important}:root[data-theme-mode=dark] .dashboard-home .task-strip-cta{border-color:var(--border)!important}:root[data-theme-mode=dark] .ai-proto-page .ai-context-pill{border:none!important;background:color-mix(in srgb,var(--bg-surface) 86%,#182238)!important}:root[data-theme-mode=dark] .ai-proto-page .ai-context-pill-type,:root[data-theme-mode=dark] .ai-proto-page .ai-context-pill-value{color:var(--text-secondary)!important}:root[data-theme-mode=dark] .ai-proto-page .ai-context-pill.actionable:hover{background:color-mix(in srgb,var(--bg-surface) 76%,#25355d)!important}@media(max-width:900px){.dashboard-home .task-strip{grid-template-columns:1fr!important}.ai-proto-page .ai-hero-card{grid-template-columns:auto minmax(0,1fr)}.ai-proto-page .ai-suggest-row{grid-column:1 / -1}}@media(max-width:760px){.ai-proto-page .ai-hero-shell{padding:8px 10px!important}.ai-proto-page .ai-hero-card{gap:8px 10px!important}.ai-proto-page .ai-hero-copy h1{font-size:24px!important}.ai-proto-page .ai-hero-copy p{white-space:normal!important}.ai-proto-page .ai-suggest-row{height:68px!important}.ai-proto-page .ai-suggest-chip{height:32px!important;min-width:200px!important;max-width:280px!important;min-height:32px!important}}@media(max-width:960px){.auth-page{height:100dvh;overflow-x:hidden;overflow-y:auto}.auth-main{max-width:min(680px,100%)!important;min-height:auto!important;grid-template-columns:minmax(0,1fr)!important;align-items:stretch!important;gap:28px!important;padding:30px 24px 22px!important;overflow-x:hidden}.auth-hero,.auth-panel,.auth-card{width:100%!important;max-width:100%!important;min-width:0!important}.auth-card{padding:24px!important}}@media(max-width:760px){:root{--layout-content-pad: 12px}.main-content{padding:16px var(--layout-content-pad) calc(18px + env(safe-area-inset-bottom))!important}.auth-header{padding-inline:18px!important}.auth-main{padding:20px 14px 18px!important}.auth-hero{display:none!important}.auth-card{padding:24px 16px 20px!important}.settings-side-nav{grid-template-columns:repeat(2,minmax(0,1fr))!important;overflow-x:visible!important}.settings-side-item{min-width:0}.settings-content-area,.settings-section,.settings-form-grid,.settings-content-area .field,.settings-content-area .input,.settings-content-area .select,.settings-content-area .btn{box-sizing:border-box!important;max-width:100%!important;min-width:0!important}.settings-section,.settings-form-grid,.settings-content-area .field,.settings-content-area .input,.settings-content-area .select{width:100%!important}}@media(max-width:760px){.main-content>:is(.page,.dashboard-home,.plan-page,.graph-page,.review-page,.note-content-page,.library-resource-page,.settings-page){max-width:100%!important;min-width:0!important;overflow-x:hidden!important}.page,.dashboard-home,.plan-page,.graph-page,.review-page,.note-content-page,.library-resource-page{gap:10px!important}.page-title,.dashboard-title,.graph-title,.plan-page .page-title,.note-title,.review-v2-question-title{font-size:22px!important;line-height:1.25!important}.btn,.primary-cta,.ghost-btn,.library-upload-btn,.graph-tool-btn,.graph-tab-btn,.plan-tab,.review-v2-mode-btn,.review-v2-reveal-btn,.review-v2-nav-btn,.review-v2-ghost-btn,.review-v2-end-btn{min-height:40px!important;max-width:100%!important;border-radius:10px!important;white-space:normal!important}.home-panel,.library-table-card,.progress-overview-card,.tab-card,.side-card,.review-v2-question-card,.review-v2-rate-panel,.graph-canvas-card,.note-document-card{border-radius:12px!important}.dashboard-subtitle,.dashboard-date,.dashboard-hero-progress,.dashboard-home .panel-status,.dashboard-home .panel-heatmap,.library-resource-crumb,.library-resource-header .page-subtitle,.library-resource-tabs,.library-resource-controls-right,.library-folder-strip,.library-filter-chips,.library-resource-side,.graph-breadcrumb,.graph-subtitle,.graph-search,.graph-filter-wrap,.graph-load-more-bar,.graph-detail-panel,.note-tag-row,.note-summary-card,.note-rail,.plan-breadcrumb,.plan-target-inline,.progress-left,.growth-assets-card,.plan-calendar-card,.plan-overview-card,.review-v2-breadcrumb,.review-v2-metrics-grid,.review-v2-side{display:none!important}.dashboard-hero{align-items:flex-start!important;gap:6px!important}.dashboard-growth-line{margin-top:6px!important;gap:6px!important}.dashboard-growth-line span,.dashboard-growth-line strong{padding:3px 8px!important;font-size:12px!important}.dashboard-next-action{padding:10px 12px!important;gap:10px!important}.next-action-icon{width:32px!important;height:32px!important;border-radius:9px!important}.next-action-text{font-size:14px!important}.dashboard-grid{display:flex!important;flex-direction:column!important;gap:10px!important}.dashboard-home .panel-task{min-height:auto!important;gap:12px!important}.dashboard-home .panel-head{padding:14px 14px 0!important}.dashboard-home .panel-tip{margin-top:4px!important;font-size:13px!important}.dashboard-home .task-strip{gap:8px!important;padding-inline:14px!important}.dashboard-home .task-metric{min-height:54px!important;padding:8px 10px!important}.dashboard-home .task-metric-value{font-size:22px!important}.dashboard-home .task-strip-cta{min-height:42px!important;padding:0 12px!important}.library-resource-page{display:block!important}.library-resource-main{gap:10px!important}.library-resource-header{flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:10px!important}.library-upload-btn{flex:0 0 auto!important;padding:0 12px!important}.library-resource-controls{display:block!important}.library-search-box{min-height:40px!important}.library-table-head{display:none!important}.library-table-row{grid-template-columns:34px minmax(0,1fr) 40px!important;min-height:58px!important;padding:8px 10px!important;gap:8px!important}.library-file-title,.library-grid-title,.recent-title,.plan-name,.resource-title,.review-v2-queue-title{overflow-wrap:anywhere!important}.library-file-desc{-webkit-line-clamp:1!important}.library-pagination-row{margin-top:8px!important}.library-grid-list{grid-template-columns:minmax(0,1fr)!important}.graph-head{gap:0!important}.graph-title-row{min-height:32px!important}.graph-controls-main{display:block!important}.graph-controls,.graph-controls.panel-open{grid-template-columns:minmax(0,1fr)!important;gap:6px!important}.graph-tabs{display:flex!important;width:100%!important;gap:6px!important;overflow-x:auto!important;padding-bottom:2px!important;scrollbar-width:none!important}.graph-tabs::-webkit-scrollbar{display:none!important}.graph-tab-btn{flex:1 0 auto!important;padding:0 12px!important;font-size:13px!important}.graph-main,.graph-main.panel-closed{grid-template-columns:minmax(0,1fr)!important;gap:0!important}.graph-network-wrap{padding:8px!important}.graph-network{height:min(66dvh,620px)!important;max-height:none!important}.graph-zoom-tools{left:12px!important;top:12px!important;gap:4px!important}.graph-zoom-btn,.graph-zoom-scale{width:32px!important;height:32px!important}.note-content-page{padding-bottom:10px!important}.note-content-layout{grid-template-columns:minmax(0,1fr)!important;gap:0!important}.note-header-row{gap:8px!important}.note-header-actions{justify-content:flex-start!important}.note-document-card{padding:12px!important}.note-editor-textarea,.note-preview-content{height:calc(100dvh - var(--topbar-h) - 210px)!important;min-height:420px!important;max-height:none!important}.plan-title-wrap,.plan-switch-row,.plan-actions-row,.plan-layout,.plan-main-column{gap:8px!important}.plan-meta-row,.plan-switcher,.plan-tabs{flex-wrap:nowrap!important;overflow-x:auto!important;padding-bottom:2px!important;scrollbar-width:none!important}.plan-meta-row::-webkit-scrollbar,.plan-switcher::-webkit-scrollbar,.plan-tabs::-webkit-scrollbar{display:none!important}.plan-switch-chip{min-height:36px!important;padding:6px 10px!important;flex:0 0 auto!important}.plan-actions-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important}.plan-actions-row .btn{padding-inline:8px!important}.progress-overview-card{grid-template-columns:minmax(0,1fr)!important;padding:12px!important}.progress-right{gap:12px!important}.progress-top-row{align-items:flex-start!important;flex-direction:column!important;gap:8px!important}.progress-title{font-size:18px!important}.btn-start-learning{width:100%!important}.stage-meter-stage-bar{height:24px!important}.stage-meter-row{grid-template-columns:72px minmax(0,1fr) 38px!important;gap:8px!important}.stage-item{padding:12px!important}.stage-desc,.resource-meta{font-size:12px!important}.plan-side-column{grid-template-columns:minmax(0,1fr)!important;gap:8px!important}.plan-today-card{margin-top:0!important}.review-v2-shell{width:100%!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important}.review-v2-main{gap:10px!important}.review-v2-mode-bar{justify-content:stretch!important;overflow-x:auto!important;padding-bottom:2px!important}.review-v2-mode-btn{flex:1 0 86px!important;padding:0 8px!important}.review-v2-question-card{padding:14px!important}.review-v2-card-head{gap:8px!important}.review-v2-head-actions{width:100%!important;justify-content:space-between!important}.review-v2-skip-btn{width:auto!important;min-height:34px!important;padding:0 10px!important}.review-v2-question-title{margin-top:10px!important;font-size:20px!important;line-height:1.35!important}.review-v2-question-hint,.review-v2-think-text{font-size:13px!important}.review-v2-reveal-row{gap:8px!important}.review-v2-reveal-btn{width:100%!important;justify-content:center!important;font-size:16px!important}.review-v2-rate-panel{padding:12px!important}.review-v2-rate-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.review-v2-rate-btn{min-height:86px!important;padding:10px 8px!important}.review-v2-rate-sub,.review-v2-rate-interval{font-size:11px!important}.review-v2-nav-row{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.review-v2-nav-leftmost,.review-v2-nav-rightmost{grid-column:auto!important}}@media(max-width:420px){.plan-actions-row,.review-v2-rate-grid,.review-v2-nav-row{grid-template-columns:minmax(0,1fr)!important}.library-upload-btn span,.library-upload-btn svg{flex-shrink:0!important}.stage-meter-row{grid-template-columns:64px minmax(0,1fr) 34px!important}}@media(max-width:760px){.main-content{font-size:13px!important}.page-title,.dashboard-title,.graph-title,.plan-page .page-title,.note-title,.review-v2-question-title{font-size:20px!important}.home-panel,.library-table-card,.progress-overview-card,.tab-card,.side-card,.review-v2-question-card,.review-v2-rate-panel,.graph-canvas-card,.note-document-card{padding:12px!important}.btn,.primary-cta,.ghost-btn,.library-upload-btn,.graph-tool-btn,.graph-tab-btn,.plan-tab,.note-btn,.review-v2-mode-btn,.review-v2-reveal-btn,.review-v2-nav-btn,.review-v2-ghost-btn,.review-v2-end-btn{min-height:34px!important;padding-inline:8px!important;font-size:12px!important;line-height:1!important;white-space:normal!important}.dashboard-home .panel-plan,.dashboard-home .panel-recent,.plan-page .progress-overview-card,.review-v2-nav-leftmost,.review-v2-nav-tip,.review-v2-nav-rightmost{display:none!important}.note-header-actions{width:100%!important;justify-content:flex-end!important;gap:6px!important;overflow:hidden!important}.note-header-action-group{gap:6px!important;min-width:0!important}.note-more-wrap{display:none!important}.note-download-quick{display:inline-flex!important}.read-aloud-player{width:auto!important;min-height:34px!important;padding:0!important;border:none!important;background:transparent!important;box-shadow:none!important}.read-aloud-main,.read-aloud-meta{display:none!important}.read-aloud-play-btn{width:34px!important;height:34px!important;flex:0 0 34px!important}.note-editor-toolbar{flex-direction:row!important;align-items:center!important;justify-content:flex-end!important;gap:6px!important;padding:6px!important}.note-toolbar-group{flex:0 1 auto!important;flex-wrap:nowrap!important;justify-content:flex-end!important;gap:6px!important;overflow:visible!important;padding-bottom:0!important}.note-toolbar-group>.note-mini-btn:not([title="导入 PDF"]):not(.note-speech-btn),.note-toolbar-group>.note-snippet-wrapper{display:none!important}.note-toolbar-actions{flex:0 0 auto!important}.note-mini-btn{height:32px!important;min-width:32px!important;padding-inline:8px!important}.note-speech-btn-label{min-width:auto!important}.graph-tabs{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:6px!important;overflow:visible!important}.graph-tab-btn{min-width:0!important;width:auto!important;flex:1 1 0!important;padding-inline:4px!important;font-size:12px!important;white-space:nowrap!important}.plan-actions-row{display:flex!important;flex-wrap:nowrap!important;justify-content:flex-end!important;gap:6px!important;width:100%!important}.plan-actions-row .btn{flex:1 1 0!important;max-width:96px!important;min-width:0!important;padding-inline:4px!important;font-size:12px!important;white-space:nowrap!important}.review-v2-nav-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}}@media(max-width:420px){.plan-actions-row{display:flex!important;flex-wrap:nowrap!important}.review-v2-nav-row{grid-template-columns:repeat(2,minmax(0,1fr))!important}}:root[data-theme-mode=dark] .note-content-page .note-title-text:hover{color:var(--text-primary)!important;background:#94a3b82e!important}@media(max-width:760px){.main-content{font-size:12.5px!important}.page-title,.dashboard-title,.graph-title,.plan-page .page-title,.note-title,.review-v2-question-title{font-size:18px!important;line-height:1.18!important}.home-panel,.library-table-card,.progress-overview-card,.tab-card,.side-card,.review-v2-question-card,.review-v2-rate-panel,.graph-canvas-card,.note-document-card{padding:10px!important;border-radius:10px!important}.btn,.primary-cta,.ghost-btn,.library-upload-btn,.graph-tool-btn,.graph-tab-btn,.plan-tab,.note-btn,.review-v2-mode-btn,.review-v2-reveal-btn,.review-v2-nav-btn,.review-v2-ghost-btn,.review-v2-end-btn{min-height:32px!important;padding-inline:7px!important;font-size:11.5px!important;border-radius:9px!important}.note-header-row{flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:8px!important;margin-bottom:8px!important;overflow:visible!important}.note-title{flex:1 1 auto!important;min-width:0!important;margin:0!important;white-space:nowrap!important}.note-title-text{display:block!important;min-width:0!important;max-width:100%!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}.note-header-actions{flex:0 0 auto!important;width:auto!important;max-width:52vw!important;justify-content:flex-end!important;gap:5px!important;overflow:visible!important;padding-bottom:0!important}.note-header-action-group{gap:5px!important}.note-btn,.note-download-quick{display:inline-flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;line-height:1!important}.read-aloud-player{flex:0 0 auto!important;min-height:32px!important}.read-aloud-play-btn{width:32px!important;height:32px!important;flex-basis:32px!important}.plan-actions-row{justify-content:center!important}.plan-actions-row .btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;max-width:92px!important;min-height:32px!important}.graph-tab-btn,.plan-actions-row .btn{line-height:1.1!important}.review-v2-question-card,.review-v2-rate-panel{gap:8px!important}}@media(max-width:420px){.note-header-actions{max-width:50vw!important}.note-btn{padding-inline:6px!important}}
