body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;transition:background-color .3s,color .3s}.btn-success:hover{background-color:var(--token-color-success-600)}.btn-danger:hover{background-color:var(--token-color-danger-600)}.toast.warning{background-color:var(--token-color-warning-500)}:root{--token-color-ink-0: #FFFFFF;--token-color-ink-50: #FAFAFA;--token-color-ink-100: #F4F4F5;--token-color-ink-200: #E4E4E7;--token-color-ink-300: #D4D4D8;--token-color-ink-400: #A1A1AA;--token-color-ink-500: #71717A;--token-color-ink-600: #52525B;--token-color-ink-700: #3F3F46;--token-color-ink-800: #27272A;--token-color-ink-900: #18181B;--token-color-ink-950: #09090B;--token-color-brand-50: #EBF1FF;--token-color-brand-100: #D6E3FF;--token-color-brand-200: #ADCBFF;--token-color-brand-300: #85B0FF;--token-color-brand-400: #5C90FF;--token-color-brand-500: #3370FF;--token-color-brand-600: #2860E1;--token-color-brand-700: #1E4DC4;--token-color-brand-800: #153BA7;--token-color-brand-900: #0D2A8A;--token-color-success-50: #F0FDF4;--token-color-success-500: #16A34A;--token-color-success-600: #15803D;--token-color-warning-50: #FFFBEB;--token-color-warning-500: #D97706;--token-color-warning-600: #B45309;--token-color-danger-50: #FEF2F2;--token-color-danger-500: #DC2626;--token-color-danger-600: #B91C1C;--token-color-ai-50: #F5EEFB;--token-color-ai-500: #9B59B6;--token-color-ai-600: #8E44AD;--token-color-dark-surface: #111113;--token-color-dark-surface2: #1A1A1D;--token-color-dark-surface3: #222225;--token-color-dark-surface4: #2A2A2E;--token-color-dark-border: #2E2E32;--token-color-dark-border2: #3A3A40;--token-color-dark-text1: #EDEDEF;--token-color-dark-text2: #B4B4BB;--token-color-dark-text3: #7E7E8A;--token-color-dark-brand: #5C90FF;--token-color-dark-brandHover: #4A7FEE;--token-color-dark-successFg: #34D399;--token-color-dark-warningFg: #FBBF24;--token-color-dark-dangerFg: #F87171;--token-color-dark-aiFg: #C084FC;--token-spacing-1: 4px;--token-spacing-2: 8px;--token-spacing-3: 12px;--token-spacing-4: 16px;--token-spacing-5: 20px;--token-spacing-6: 24px;--token-spacing-7: 28px;--token-spacing-8: 32px;--token-spacing-10: 40px;--token-spacing-12: 48px;--token-spacing-16: 64px;--token-radius-xs: 4px;--token-radius-sm: 6px;--token-radius-md: 10px;--token-radius-lg: 14px;--token-radius-xl: 20px;--token-radius-full: 9999px;--token-typography-xs-size: 11px;--token-typography-xs-line-height: 16px;--token-typography-sm-size: 12px;--token-typography-sm-line-height: 18px;--token-typography-base-size: 13px;--token-typography-base-line-height: 20px;--token-typography-md-size: 14px;--token-typography-md-line-height: 22px;--token-typography-lg-size: 15px;--token-typography-lg-line-height: 24px;--token-typography-xl-size: 17px;--token-typography-xl-line-height: 26px;--token-typography-2xl-size: 20px;--token-typography-2xl-line-height: 28px;--token-typography-3xl-size: 24px;--token-typography-3xl-line-height: 32px;--token-shadow-xs: 0 1px 2px rgba(9, 9, 11, .04);--token-shadow-sm: 0 1px 3px rgba(9, 9, 11, .06), 0 1px 2px rgba(9, 9, 11, .04);--token-shadow-md: 0 4px 12px rgba(9, 9, 11, .07), 0 2px 4px rgba(9, 9, 11, .04);--token-shadow-lg: 0 10px 30px rgba(9, 9, 11, .08), 0 4px 10px rgba(9, 9, 11, .05);--token-shadow-xl: 0 20px 50px rgba(9, 9, 11, .1), 0 8px 20px rgba(9, 9, 11, .06);--token-motion-fast: .12s cubic-bezier(.2, 0, 0, 1);--token-motion-standard: .2s cubic-bezier(.2, 0, 0, 1);--token-motion-emphasized: .32s cubic-bezier(.2, 0, 0, 1);--token-motion-spring: .28s cubic-bezier(.34, 1.56, .64, 1);--token-motion-elastic: .32s cubic-bezier(.16, 1, .3, 1)}[data-theme=dark]{--token-color-ink-0: #111113;--token-color-ink-50: #1A1A1D;--token-color-ink-100: #222225;--token-color-ink-200: #2E2E32;--token-color-ink-300: #3A3A40;--token-color-ink-400: #7E7E8A;--token-color-ink-500: #B4B4BB;--token-color-ink-700: #B4B4BB;--token-color-ink-900: #EDEDEF;--token-color-ink-950: #EDEDEF;--token-color-brand-500: #5C90FF;--token-color-brand-600: #4A7FEE;--token-color-success-500: #34D399;--token-color-warning-500: #FBBF24;--token-color-danger-500: #F87171;--token-color-ai-500: #C084FC;--token-shadow-sm: 0 1px 3px rgba(0,0,0,.18), 0 1px 2px rgba(0,0,0,.12);--token-shadow-md: 0 4px 12px rgba(0,0,0,.25), 0 2px 4px rgba(0,0,0,.15);--token-shadow-lg: 0 10px 30px rgba(0,0,0,.3), 0 4px 10px rgba(0,0,0,.2)}:root{--bg-primary: var(--token-color-ink-50);--bg-secondary: var(--token-color-ink-0);--bg-tertiary: var(--token-color-ink-100);--bg-code: var(--token-color-ink-50);--text-primary: var(--token-color-ink-900);--text-secondary: var(--token-color-ink-500);--text-muted: var(--token-color-ink-400);--border-color: var(--token-color-ink-200);--border-light: var(--token-color-ink-200);--sidebar-bg: var(--token-color-ink-100);--sidebar-header-bg: var(--token-color-ink-200);--sidebar-hover: rgba(9, 9, 11, .05);--sidebar-active-bg: var(--token-color-brand-50);--sidebar-text: var(--token-color-ink-900);--sidebar-muted: var(--token-color-ink-400);--input-bg: var(--token-color-ink-0);--input-focus-bg: var(--token-color-ink-0);--brand-primary: var(--token-color-brand-500);--brand-hover: var(--token-color-brand-600);--text-on-brand: #ffffff;--fill-hover: rgba(9, 9, 11, .05);--fill-active: var(--token-color-brand-50);--link-color: var(--token-color-brand-500);--blockquote-color: var(--token-color-ink-500);--blockquote-border: var(--token-color-ink-200);--code-inline-bg: var(--token-color-ink-100);--table-border: var(--token-color-ink-200);--table-stripe: var(--token-color-ink-50);--hr-color: var(--token-color-ink-200);--modal-bg: var(--token-color-ink-0);--version-hover-bg: var(--token-color-ink-50);--toast-bg: var(--token-color-ink-900);--resizer-color: var(--token-color-ink-200);--resizer-hover: var(--token-color-brand-500);--shadow-color: rgba(9, 9, 11, .08);--shadow-sm: var(--token-shadow-sm);--shadow-md: var(--token-shadow-md);--shadow-lg: var(--token-shadow-lg);--radius-sm: var(--token-radius-sm);--radius-md: var(--token-radius-md);--radius-lg: var(--token-radius-lg);--scrollbar-track: var(--token-color-ink-200);--scrollbar-thumb: var(--token-color-ink-300);--scrollbar-thumb-hover: var(--token-color-ink-400);--sidebar-scrollbar-track: var(--token-color-ink-100);--sidebar-scrollbar-thumb: var(--token-color-ink-300);--sidebar-scrollbar-thumb-hover:var(--token-color-ink-400);--color-success: var(--token-color-success-500);--color-success-bg: var(--token-color-success-50);--color-warning: var(--token-color-warning-500);--color-warning-bg: var(--token-color-warning-50);--color-danger: var(--token-color-danger-500);--color-danger-bg: var(--token-color-danger-50);--color-info: var(--token-color-brand-500);--color-info-bg: var(--token-color-brand-50);--color-ai: var(--token-color-ai-500);--color-ai-hover: var(--token-color-ai-600);--color-ai-bg: var(--token-color-ai-50);--motion-fast: var(--token-motion-fast);--motion-standard: var(--token-motion-standard);--motion-emphasized: var(--token-motion-emphasized);--motion-spring: var(--token-motion-spring);--motion-elastic: var(--token-motion-elastic)}[data-theme=dark]{--bg-primary: var(--token-color-ink-50);--bg-secondary: var(--token-color-ink-0);--bg-tertiary: var(--token-color-ink-100);--bg-code: var(--token-color-ink-100);--text-primary: var(--token-color-ink-900);--text-secondary: var(--token-color-ink-500);--text-muted: var(--token-color-ink-400);--border-color: var(--token-color-ink-200);--border-light: var(--token-color-ink-200);--sidebar-bg: var(--token-color-ink-100);--sidebar-header-bg: var(--token-color-ink-0);--sidebar-hover: rgba(255, 255, 255, .05);--sidebar-active-bg: rgba(92, 144, 255, .15);--sidebar-text: var(--token-color-ink-900);--sidebar-muted: var(--token-color-ink-400);--input-bg: var(--token-color-ink-100);--input-focus-bg: var(--token-color-ink-100);--brand-primary: var(--token-color-brand-500);--brand-hover: var(--token-color-brand-600);--text-on-brand: #ffffff;--fill-hover: rgba(255, 255, 255, .06);--fill-active: rgba(92, 144, 255, .15);--link-color: var(--token-color-brand-500);--blockquote-color: var(--token-color-ink-500);--blockquote-border: var(--token-color-ink-200);--code-inline-bg: rgba(255, 255, 255, .08);--table-border: var(--token-color-ink-200);--table-stripe: var(--token-color-ink-50);--hr-color: var(--token-color-ink-200);--modal-bg: var(--token-color-ink-50);--version-hover-bg: var(--token-color-ink-100);--toast-bg: var(--token-color-ink-100);--resizer-color: var(--token-color-ink-200);--resizer-hover: var(--token-color-brand-500);--shadow-color: rgba(0, 0, 0, .3);--shadow-sm: var(--token-shadow-sm);--shadow-md: var(--token-shadow-md);--shadow-lg: var(--token-shadow-lg);--radius-sm: var(--token-radius-sm);--radius-md: var(--token-radius-md);--radius-lg: var(--token-radius-lg);--scrollbar-track: var(--token-color-ink-100);--scrollbar-thumb: var(--token-color-ink-200);--scrollbar-thumb-hover: var(--token-color-ink-300);--sidebar-scrollbar-track: var(--token-color-ink-50);--sidebar-scrollbar-thumb: var(--token-color-ink-200);--sidebar-scrollbar-thumb-hover:var(--token-color-ink-300);--color-success-bg: rgba(52, 211, 153, .15);--color-warning-bg: rgba(251, 191, 36, .15);--color-danger-bg: rgba(248, 113, 113, .15);--color-info-bg: rgba(92, 144, 255, .15);--color-ai-bg: rgba(192, 132, 252, .15)}*{margin:0;padding:0;box-sizing:border-box;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track)}*::-webkit-scrollbar{width:10px;height:10px}*::-webkit-scrollbar-track{background:var(--scrollbar-track)}*::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:999px;border:2px solid var(--scrollbar-track)}*::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}*::-webkit-scrollbar-corner{background:var(--scrollbar-track)}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;background-color:var(--bg-primary);color:var(--text-primary);line-height:1.6;transition:background-color var(--motion-emphasized),color var(--motion-emphasized)}body.login-mode{--bg-primary: #f4f7fb;--bg-secondary: var(--token-color-ink-0)fff;--bg-tertiary: #f7f9fc;--bg-code: #f3f6fb;--text-primary: #1f2329;--text-secondary: #646a73;--text-muted: #8f959e;--border-color: #d8e1ec;--border-light: #e8eef5;--shadow-color: rgba(15, 23, 42, .12);--scrollbar-track: #e8eef5;--scrollbar-thumb: #c4d0df;--scrollbar-thumb-hover: #aebdd0}.app-container{display:flex;flex-direction:row!important;height:100vh;overflow:hidden;position:relative}.sidebar{position:relative;z-index:20;width:280px;background-color:var(--sidebar-bg);color:var(--sidebar-text);display:flex;flex-direction:column;min-height:0;flex-shrink:0;transition:width var(--motion-standard)}.sidebar.is-collapsed{width:72px}.sidebar-header{padding:18px 18px 16px;background-color:var(--sidebar-header-bg);display:flex;flex-direction:column;gap:14px;border-bottom:1px solid var(--border-color)}.sidebar-header-top{display:flex;align-items:center;justify-content:flex-start;gap:10px}.sidebar-collapse-btn{width:28px;height:56px;align-self:center;margin-left:-14px;margin-right:-14px;border:1px solid var(--border-color);border-radius:999px;background:var(--bg-secondary);color:var(--text-secondary);box-shadow:0 4px 16px var(--shadow-color);cursor:pointer;display:inline-flex;align-items:center;justify-content:center;font-size:16px;line-height:1;z-index:40;transition:all var(--motion-standard);flex-shrink:0}.sidebar-collapse-btn:hover{color:var(--text-primary);border-color:#3370ff66;box-shadow:0 6px 18px #3370ff2e;transform:translateY(-1px)}[data-theme=dark] .sidebar-collapse-btn:hover{border-color:#5c90ff80;box-shadow:0 6px 18px #5c90ff38}.sidebar-header h1{font-weight:600;white-space:nowrap;display:flex;align-items:center;gap:12px;margin-bottom:0}.sidebar-new-btn{width:100%;justify-content:center}.sidebar-section-title{padding:10px 15px 0;font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--sidebar-muted);font-weight:600}.btn-full-width{width:100%;justify-content:center}.search-box{padding:14px 15px 12px;border-bottom:1px solid var(--border-color);position:relative}.sidebar-search-toggle-btn{display:none;width:34px;height:34px;align-items:center;justify-content:center;border-radius:8px;border:1px solid var(--border-color);background:var(--fill-hover);color:var(--sidebar-text);cursor:pointer}.sidebar-search-toggle-btn:hover{background:var(--fill-active);border-color:var(--brand-primary);color:var(--brand-primary)}.search-box input{width:100%;padding:12px 40px 12px 14px;border:1px solid var(--border-color);border-radius:10px;background-color:var(--input-bg);color:var(--sidebar-text);font-size:14px;transition:border-color var(--motion-standard),box-shadow var(--motion-standard)}.search-box input::placeholder{color:var(--sidebar-muted)}.search-box input:focus{outline:none;border-color:var(--brand-primary);box-shadow:0 0 0 3px #3370ff1f}.search-clear-btn{position:absolute;right:20px;top:50%;transform:translateY(-50%);background:none;border:none;color:var(--sidebar-muted);font-size:16px;cursor:pointer;padding:4px 8px;border-radius:3px;transition:all var(--motion-standard);line-height:1}.search-clear-btn:hover{color:var(--sidebar-text);background-color:var(--fill-hover)}.doc-filter-toolbar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;padding:10px 12px 6px}.doc-filter-btn{min-height:30px;border:1px solid var(--border-color);border-radius:8px;background:transparent;color:var(--sidebar-muted);font-size:12px;font-weight:600;cursor:pointer;transition:all var(--motion-standard)}.doc-filter-btn.active{color:var(--brand-primary);border-color:var(--brand-primary);background:var(--fill-active)}.doc-filter-btn:hover:not(.active){color:var(--sidebar-text);background:var(--fill-hover)}.doc-count-bar{padding:4px 14px 8px;font-size:12px;color:var(--text-secondary);min-height:20px;letter-spacing:.02em;font-weight:600;transition:opacity var(--motion-standard),color var(--motion-standard)}.doc-count-bar:empty{display:none}.doc-list{flex:1;min-height:0;overflow-y:auto;padding:10px;-webkit-overflow-scrolling:touch;overscroll-behavior:contain;touch-action:pan-y;scrollbar-color:var(--sidebar-scrollbar-thumb) var(--sidebar-scrollbar-track)}.doc-list::-webkit-scrollbar-track{background:var(--sidebar-scrollbar-track)}.doc-list::-webkit-scrollbar-thumb{background:var(--sidebar-scrollbar-thumb);border-color:var(--sidebar-scrollbar-track)}.doc-list::-webkit-scrollbar-thumb:hover{background:var(--sidebar-scrollbar-thumb-hover)}.doc-item{padding:13px 14px;margin-bottom:6px;border-radius:12px;cursor:pointer;transition:all var(--motion-standard);position:relative;border:1px solid transparent}.doc-item:hover{background-color:var(--fill-hover);border-color:transparent}.doc-item.active{background:var(--sidebar-active-bg);border-color:transparent;border-left:3px solid var(--brand-primary);box-shadow:none}.doc-item.active .doc-item-title{color:var(--brand-primary)!important}.doc-item.active .doc-item-date,.doc-item.active .doc-item-summary{color:var(--text-secondary)!important}.doc-item.active .doc-item-tag{background:#3370ff1f;color:var(--brand-primary);border-color:#3370ff40}.doc-item-title{font-size:14px;font-weight:500;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.doc-item-topline{position:relative;min-height:28px;padding-right:36px}.doc-favorite-btn{position:absolute;top:2px;right:0;width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-muted);line-height:1;cursor:pointer;padding:0;border-radius:6px;transition:color var(--motion-fast),background var(--motion-fast),opacity var(--motion-fast);opacity:.25}.doc-item:hover .doc-favorite-btn{opacity:.6}.doc-favorite-btn.active{opacity:1;color:var(--token-color-warning-500)}.doc-item-date{font-size:12px;color:var(--text-secondary)}.doc-favorite-btn:hover{color:var(--token-color-warning-500);background:#f59e0b1a;opacity:1}.doc-item.active .doc-favorite-btn{color:var(--text-secondary);background:transparent}.doc-item.active .doc-favorite-btn.active{color:var(--token-color-warning-500)}.doc-list-loader{padding:12px;text-align:center;color:var(--text-secondary);font-size:13px}.doc-list-loader span{display:inline-block;padding:6px 10px;border-radius:999px;background:var(--fill-hover);font-weight:500;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.main-content{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0;background:var(--bg-primary)}.workspace-header-stack{background:var(--bg-secondary);border-bottom:1px solid var(--border-color);box-shadow:0 6px 18px #0f172a0f;z-index:5}.workspace-toolbar{border-bottom:1px solid var(--border-light)}.workspace-toolbar .toolbar-left{align-items:center;gap:8px}.mobile-top-tools{display:none!important}.mobile-brand-badge{display:inline-flex;align-items:center;gap:6px;font-size:13px;font-weight:700;color:var(--text-primary)}.mobile-brand-logo{width:20px;height:20px;border-radius:6px;object-fit:contain}.document-title-block{display:flex;align-items:center;min-width:260px;flex:1}.workspace-toolbar .document-title-block{flex:0 1 560px}.title-input-label{font-size:12px;color:var(--text-muted);font-weight:600}.workspace-toolbar .title-input{max-width:560px;border-radius:12px;min-height:44px;padding-inline:16px;box-shadow:inset 0 1px #fff9}.workspace-ai-toolbar{display:none}.toolbar{display:flex;justify-content:space-between;align-items:center;padding:14px 20px;background-color:var(--bg-secondary);border-bottom:1px solid var(--border-color);gap:15px}.toolbar-left,.toolbar-right{display:flex;align-items:center;gap:10px}.toolbar-left{flex:1}.title-input{flex:1;max-width:480px;padding:8px 4px;border:none;border-bottom:2px solid transparent;border-radius:0;font-size:20px;font-weight:600;background:transparent;color:var(--text-primary);transition:border-color var(--motion-standard)}.title-input::placeholder{color:var(--text-muted);font-weight:400}.title-input:focus{outline:none;border-bottom-color:var(--token-color-brand-500);box-shadow:none}.save-status{font-size:12px;padding:3px 9px;border-radius:999px;white-space:nowrap;transition:color var(--motion-standard),background-color var(--motion-standard),opacity var(--motion-standard);display:inline-flex;align-items:center;gap:5px;border:1px solid transparent;font-weight:500;line-height:1.6;letter-spacing:.01em;box-shadow:inset 0 1px #ffffff2e}.workspace-toolbar .save-status{margin-left:4px;align-self:center;margin-bottom:0}.save-status.unsaved{color:var(--token-color-danger-500);background-color:#e74c3c14;border-color:#e74c3c33}.save-status.processing{color:var(--brand-primary);background-color:#3370ff14;border-color:#3370ff33}.save-status.saved{color:var(--token-color-success-500);background-color:#27ae6014;border-color:#27ae6033;animation:save-success-pop var(--motion-spring)}.save-status.ai-processing{color:#7c3aed;background-color:#7c3aed14;border-color:#7c3aed33}@keyframes save-success-pop{0%{transform:scale(.92);opacity:.7}60%{transform:scale(1.05)}to{transform:scale(1);opacity:1}}.save-status:before{content:"";width:5px;height:5px;border-radius:50%;flex-shrink:0;background-color:currentColor}.save-status.processing:before{animation:spin-dot .8s linear infinite;border-radius:50%;background:transparent;border:1.5px solid currentColor;border-top-color:transparent;width:8px;height:8px}.save-status.ai-processing:before{animation:spin-dot 1.2s linear infinite;border-radius:50%;background:transparent;border:1.5px solid currentColor;border-top-color:transparent;width:8px;height:8px}@keyframes spin-dot{to{transform:rotate(360deg)}}@keyframes blink-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.4;transform:scale(.8)}}.btn{padding:8px 16px;border:none;border-radius:8px;font-size:14px;cursor:pointer;transition:all var(--motion-fast);display:inline-flex;align-items:center;gap:6px;white-space:nowrap;font-weight:500}.btn svg,.toolbar-menu-item svg,.mobile-more-item svg,.sidebar-footer-btn svg,.btn-icon svg,.modal-header h3 svg{flex-shrink:0;display:block}.btn-icon-only{padding:8px 10px}.btn-primary{background-color:var(--brand-primary);color:var(--text-on-brand)}.btn-primary:hover{background-color:var(--brand-hover)}.btn-success{background-color:var(--token-color-success-500);color:var(--token-color-ink-0)}.btn-success:hover{background-color:#219a52}.btn-danger{background-color:var(--token-color-danger-500);color:var(--token-color-ink-0)}.btn-danger:hover{background-color:#c0392b}.btn-ai{background-color:var(--color-ai);color:var(--token-color-ink-0)}.btn-ai:hover{background-color:var(--color-ai-hover)}.btn-secondary{background-color:var(--fill-hover);color:var(--text-primary);border:1px solid var(--border-color)}.btn-secondary:hover{background-color:var(--fill-active);border-color:var(--brand-primary);color:var(--brand-primary)}.btn:active{transform:scale(.96);transition:transform var(--motion-fast)}.btn-disabled{opacity:.5;pointer-events:auto}.toolbar-menu-wrap,.sidebar-footer-menu-wrap{position:relative}.toolbar-menu,.sidebar-footer-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:190px;padding:8px;border-radius:12px;background:var(--bg-secondary);border:1px solid var(--border-color);box-shadow:0 12px 28px var(--shadow-color);display:none;z-index:120}.toolbar-menu.show,.sidebar-footer-menu.show{display:block}.toolbar-menu-item,.sidebar-footer-menu-item{width:100%;border:none;background:transparent;color:var(--text-primary);text-align:left;border-radius:8px;padding:9px 10px;cursor:pointer;font-size:14px;display:flex;align-items:center;gap:8px}.toolbar-menu-item:hover,.sidebar-footer-menu-item:hover{background:var(--fill-hover)}.toolbar-menu-divider{height:1px;background:var(--border-color);margin:4px 8px}.toolbar-menu-item.danger{color:#c0392b}.toolbar-menu-item.danger:hover{background:#c0392b14}.sidebar-footer-menu{top:auto;bottom:calc(100% + 8px);left:0;right:auto;min-width:100%}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,.doc-item:focus-visible{outline:2px solid var(--brand-primary);outline-offset:2px}body.compact-doc-list .doc-item{padding:9px 10px;margin-bottom:6px}body.compact-doc-list .doc-item-title{font-size:13px}body.compact-doc-list .doc-item-summary{-webkit-line-clamp:1;margin-top:2px}.editor-container{flex:1;display:flex;overflow:hidden;padding:12px;gap:0}body.focus-mode .resizer,body.focus-mode .preview-pane{display:none!important}body.focus-mode .editor-pane{flex:1;max-width:860px;margin:0 auto}body.focus-mode #focusModeBtn{color:var(--brand-primary);background:var(--fill-active)}.editor-pane,.preview-pane{flex:1;display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--border-color);border-radius:12px;background:var(--bg-secondary);box-shadow:0 4px 14px var(--shadow-color);transition:opacity var(--motion-fast)}.doc-switching .editor-pane,.doc-switching .preview-pane{opacity:0}.pane-header{padding:10px 20px;background-color:var(--bg-tertiary);border-bottom:1px solid var(--border-color);font-size:13px;font-weight:500;color:var(--text-secondary);display:flex;align-items:center;gap:8px;overflow:hidden}.editor-pane .pane-header,.preview-pane .pane-header{border-top-left-radius:12px;border-top-right-radius:12px}.pane-label{white-space:nowrap;flex-shrink:0}.char-count{font-size:12px;color:var(--text-muted);flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.editor-actions{display:flex;gap:6px;align-items:center;flex-shrink:0;margin-left:auto}.btn-small{padding:4px 8px;font-size:12px;background-color:var(--btn-secondary-bg, #6c757d);color:var(--btn-secondary-color, var(--token-color-ink-0));border:1px solid transparent;border-radius:4px;cursor:pointer;flex-shrink:0;display:inline-flex;align-items:center;gap:4px;white-space:nowrap}.btn-small:hover{background-color:var(--btn-secondary-hover-bg, #5a6268)}.btn-small:active{transform:scale(.95);transition:transform var(--motion-fast)}#boldBtn{font-weight:800;font-family:Georgia,serif}#italicBtn{font-style:italic;font-weight:600;font-family:Georgia,serif}.editor-actions-divider{width:1px;height:16px;background:var(--border-color);margin:0 2px;flex-shrink:0}.btn-ai-tool{background:#3498db1a;color:#2980b9;border:1px solid rgba(52,152,219,.2);font-weight:600}.btn-ai-tool:hover{background:var(--token-color-brand-500);color:var(--token-color-ink-0);border-color:var(--token-color-brand-500)}.btn-ai-tool:active{transform:scale(.95);transition:transform var(--motion-fast)}[data-theme=dark] .btn-ai-tool{background:#60a5fa26;color:#93c5fd;border-color:#60a5fa40}[data-theme=dark] .btn-ai-tool:hover{background:#3b82f6;color:var(--token-color-ink-0);border-color:#3b82f6}.btn-ask{font-weight:600}.preview-header-actions{display:flex;align-items:center;gap:6px;flex-shrink:0;margin-left:auto}.preview-translate-btn{min-width:72px;font-weight:600}.preview-copy-btn{min-width:92px}.preview-export-btn{min-width:96px}.preview-export-btn:disabled,.preview-export-btn.is-exporting{opacity:.72;cursor:progress}.preview-copy-btn.is-copied{background-color:#198754}.CodeMirror{flex:1;height:auto!important;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;line-height:1.8;position:relative}.CodeMirror.drag-over{background:#3370ff0a!important;border:2px dashed var(--brand-primary)!important;border-radius:8px}.CodeMirror.drag-over:before{content:"\677e\5f00\9f20\6807\4e0a\4f20\6587\4ef6";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:var(--brand-primary);color:var(--token-color-ink-0);padding:12px 28px;border-radius:8px;font-size:14px;font-weight:500;z-index:100;pointer-events:none;box-shadow:0 4px 12px #3498db4d}.CodeMirror-gutters{background-color:var(--bg-tertiary);border-right:1px solid var(--border-color)}.CodeMirror-linenumber{color:var(--text-muted)}#editor{flex:1;width:100%;border:none;resize:none;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:14px;line-height:1.8;background-color:var(--bg-secondary);color:var(--text-primary)}#editor:focus{outline:none}#preview{flex:1;padding:20px;overflow-y:auto;background-color:var(--bg-secondary)}.resizer{width:12px;flex:0 0 12px;margin:0 8px;background-color:var(--resizer-color);cursor:col-resize;transition:background-color var(--motion-standard);border-radius:8px;position:relative;z-index:5}.resizer:before{content:"";position:absolute;inset:0 3px;border-radius:8px;background:#7f8c8d47;pointer-events:none;cursor:col-resize}.resizer:hover{background-color:var(--resizer-hover);box-shadow:0 0 0 2px #3498db2e}.resizer.is-dragging{background-color:var(--resizer-hover);box-shadow:0 0 0 2px #3498db40}.resizer:hover:before{background:#3498db8c}.resizer.is-dragging:before{background:#3498dba6}.markdown-body{font-size:15px;line-height:1.8}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4,.markdown-body h5,.markdown-body h6{margin-top:24px;margin-bottom:16px;font-weight:600;line-height:1.25}.markdown-body h1{font-size:2em;border-bottom:1px solid var(--border-light);padding-bottom:.3em}.markdown-body h2{font-size:1.5em;border-bottom:1px solid var(--border-light);padding-bottom:.3em}.markdown-body h3{font-size:1.25em}.markdown-body p{margin-bottom:16px}.markdown-body code{padding:.2em .4em;margin:0;font-size:85%;background-color:var(--code-inline-bg);border-radius:3px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;color:var(--text-primary)}.markdown-body pre{position:relative;padding:16px;overflow:auto;font-size:85%;line-height:1.45;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;background-color:var(--bg-code);border-radius:6px;margin-bottom:16px}.markdown-body pre code{padding:0;display:block;background-color:transparent;font-size:100%;white-space:inherit;overflow-wrap:inherit;word-break:inherit}.markdown-body pre code.hljs{overflow-x:visible}.markdown-body pre.preview-code-block{padding-top:44px}.preview-code-copy-btn{position:absolute;top:10px;right:10px;display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:1px solid rgba(127,140,141,.18);border-radius:8px;background:#ffffffb8;color:var(--text-secondary);cursor:pointer;transition:background-color var(--motion-fast),border-color var(--motion-fast),color var(--motion-fast),transform var(--motion-fast);backdrop-filter:blur(4px)}.preview-code-copy-btn:hover,.preview-code-copy-btn:focus-visible{background:#ffffffeb;border-color:#3498db47;color:var(--text-primary);transform:translateY(-1px)}.preview-code-copy-btn:focus-visible{outline:2px solid rgba(52,152,219,.18);outline-offset:2px}.preview-code-copy-btn.is-copied{border-color:#27ae603d;background:#27ae601f;color:#1d8f56}.preview-todo-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;margin:0 3px;vertical-align:-3px;border-radius:999px}.preview-todo-icon svg{width:18px;height:18px;display:block}.preview-todo-icon.is-open{color:var(--token-color-brand-500);background:#3498db14}.preview-todo-icon.is-open svg circle,.preview-todo-icon.is-open svg path{fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.preview-todo-icon.is-done{color:var(--token-color-success-500);background:#27ae601a}.preview-todo-icon.is-done svg circle{fill:currentColor}.preview-todo-icon.is-done svg path{fill:none;stroke:var(--token-color-ink-0);stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.markdown-body blockquote{padding:0 1em;color:var(--blockquote-color);border-left:.25em solid var(--blockquote-border);margin-bottom:16px}.markdown-body ul,.markdown-body ol{padding-left:2em;margin-bottom:16px}.markdown-body li{margin-bottom:4px}.markdown-body table{border-collapse:collapse;width:100%;margin-bottom:16px;font-size:.95em}.markdown-body table th,.markdown-body table td{padding:8px 13px;border:1px solid var(--table-border);text-align:left;vertical-align:top}.markdown-body table th{background-color:var(--table-stripe);font-weight:600}.markdown-body table tr:nth-child(2n){background-color:var(--table-stripe)}.markdown-body img{max-width:100%;height:auto}#preview .preview-smart-image{display:block;width:auto;max-width:min(100%,clamp(320px,72%,760px));max-height:min(72vh,760px);height:auto;margin:18px auto;object-fit:contain;border-radius:8px;box-shadow:0 1px 2px #09090b14;cursor:zoom-in;transition:box-shadow var(--motion-fast),transform var(--motion-fast)}#preview .preview-smart-image:hover,#preview .preview-smart-image:focus-visible{box-shadow:0 8px 24px #09090b24;transform:translateY(-1px)}#preview .preview-smart-image:focus-visible{outline:2px solid rgba(52,152,219,.32);outline-offset:3px}#preview .preview-smart-image.is-wide-preview-image{max-width:min(100%,860px)}#preview .preview-smart-image.is-tall-preview-image{max-height:min(64vh,680px)}body.image-lightbox-open{overflow:hidden}.preview-image-lightbox{position:fixed;inset:0;z-index:3000;display:none;align-items:center;justify-content:center;width:100vw;height:100vh;height:100dvh;padding:max(18px,env(safe-area-inset-top)) max(18px,env(safe-area-inset-right)) max(18px,env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left))}.preview-image-lightbox.is-open{display:flex}.preview-image-lightbox-backdrop{position:absolute;inset:0;background:#000000d1;backdrop-filter:blur(2px)}.preview-image-lightbox-viewport{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;width:100%;height:100%;min-width:0;min-height:0}.preview-image-lightbox-img{display:block;max-width:calc(100vw - 48px - env(safe-area-inset-left) - env(safe-area-inset-right));max-height:calc(100vh - 84px - env(safe-area-inset-top) - env(safe-area-inset-bottom));max-height:calc(100dvh - 84px - env(safe-area-inset-top) - env(safe-area-inset-bottom));width:auto;height:auto;object-fit:contain;border-radius:8px;box-shadow:0 20px 60px #00000059}.preview-image-lightbox-caption{max-width:min(720px,calc(100vw - 48px));padding:6px 10px;border-radius:999px;background:#0000007a;color:#fff;font-size:13px;line-height:1.4;text-align:center}.preview-image-lightbox-close{position:fixed;top:max(14px,env(safe-area-inset-top));right:max(14px,env(safe-area-inset-right));z-index:2;width:44px;height:44px;border:1px solid rgba(255,255,255,.22);border-radius:999px;background:#0000006b;color:#fff;font-size:28px;line-height:1;cursor:pointer;backdrop-filter:blur(8px)}.preview-image-lightbox-close:hover,.preview-image-lightbox-close:focus-visible{background:#ffffff29;outline:none}.markdown-body a{color:var(--link-color);text-decoration:none}.markdown-body a:hover{text-decoration:underline}.markdown-body hr{height:.25em;padding:0;margin:24px 0;background-color:var(--hr-color);border:0}.loading-overlay{position:fixed;inset:0;background-color:#0000004d;backdrop-filter:blur(2px);display:flex;flex-direction:column;justify-content:center;align-items:center;z-index:2300;color:var(--text-primary);gap:15px;transition:opacity var(--motion-standard)}.loading-spinner{width:40px;height:40px;border:3px solid var(--border-color);border-top-color:var(--token-color-brand-500);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loading-local{position:relative;pointer-events:none}.loading-local:after{content:"";position:absolute;top:50%;left:50%;width:24px;height:24px;margin:-12px 0 0 -12px;border:2px solid var(--border-color);border-top-color:var(--token-color-brand-500);border-radius:50%;animation:spin .6s linear infinite}.list-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;color:var(--text-muted);gap:12px}.list-loading-spinner{width:32px;height:32px;border:3px solid var(--border-color);border-top-color:var(--token-color-brand-500);border-radius:50%;animation:spin .8s linear infinite}.list-loading-text{font-size:14px}.skeleton{background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--bg-secondary) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite;border-radius:4px}.skeleton-text{height:16px;margin-bottom:8px}.skeleton-title{height:24px;margin-bottom:12px}.skeleton-avatar{width:40px;height:40px;border-radius:50%}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}.toast{position:fixed;top:20px;left:50%;transform:translate(-50%) translateY(-12px);padding:10px 20px;background-color:var(--toast-bg);color:var(--token-color-ink-0);border-radius:10px;font-size:14px;opacity:0;pointer-events:none;transition:opacity var(--motion-standard),transform var(--motion-standard);z-index:2400;box-shadow:var(--shadow-md, 0 4px 16px rgba(0, 0, 0, .18));display:flex;align-items:center;gap:8px;max-width:min(480px,calc(100vw - 32px));white-space:nowrap}.toast:before{content:"";width:16px;height:16px;flex-shrink:0;background-size:contain;background-repeat:no-repeat;background-position:center}.toast.success{background-color:var(--token-color-success-500)}.toast.success:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M9 16.17L4.83 12l-1.42 1.41L9 19 21 7l-1.41-1.41z'/%3E%3C/svg%3E")}.toast.error{background-color:var(--token-color-danger-500)}.toast.error:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z'/%3E%3C/svg%3E")}.toast.warning{background-color:#e67e22}.toast.warning:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M1 21h22L12 2 1 21zm12-3h-2v-2h2v2zm0-4h-2v-4h2v4z'/%3E%3C/svg%3E")}.toast.info{background-color:var(--brand-primary)}.toast.info:before{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z'/%3E%3C/svg%3E")}@keyframes toast-slide-in{0%{opacity:0;transform:translate(-50%) translateY(-12px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.toast.show{opacity:1;transform:translate(-50%) translateY(0);animation:toast-slide-in var(--motion-standard) forwards;pointer-events:auto}.toast-message{min-width:0;overflow:hidden;text-overflow:ellipsis}.toast-action{appearance:none;border:0;border-left:1px solid rgba(255,255,255,.28);background:transparent;color:var(--token-color-ink-0);font:inherit;font-weight:700;padding:2px 0 2px 10px;margin-left:2px;cursor:pointer;white-space:nowrap}.toast-action:hover:not(:disabled){text-decoration:underline}.toast-action:disabled,.toast.is-busy .toast-action{cursor:default;opacity:.72;text-decoration:none}.network-banner{position:fixed;top:0;left:0;right:0;z-index:3200;display:flex;align-items:center;justify-content:center;gap:8px;padding:8px 16px;font-size:13px;font-weight:500;transform:translateY(-100%);transition:transform var(--motion-elastic)}.network-banner.show{transform:translateY(0)}.network-banner.offline{background:var(--token-color-danger-500);color:var(--token-color-ink-0)}.network-banner.reconnecting{background:#e67e22;color:var(--token-color-ink-0)}.network-banner.online{background:var(--token-color-success-500);color:var(--token-color-ink-0)}.quick-open-overlay{position:fixed;inset:0;z-index:3200;background:#00000059;display:flex;justify-content:center;padding-top:min(20vh,160px);backdrop-filter:blur(2px)}.quick-open-box{width:min(560px,calc(100vw - 32px));max-height:420px;background:var(--modal-bg);border-radius:12px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;animation:modal-pop-in var(--motion-spring)}.quick-open-input-wrap{display:flex;align-items:center;gap:10px;padding:14px 16px;border-bottom:1px solid var(--border-color);color:var(--text-secondary)}.quick-open-input-wrap input{flex:1;border:none;background:none;outline:none;font-size:15px;color:var(--text-primary)}.quick-open-list{overflow-y:auto;flex:1;padding:4px 0}.quick-open-item{display:flex;align-items:center;gap:10px;padding:8px 16px;cursor:pointer;font-size:14px;color:var(--text-primary);transition:background var(--motion-fast)}.quick-open-item:hover,.quick-open-item.active{background:var(--fill-hover)}.quick-open-item.active{background:var(--fill-active)}.quick-open-item-title{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.quick-open-item-title mark{background:#ffd60066;color:inherit;padding:0 2px;border-radius:2px}.quick-open-item-date{font-size:11px;color:var(--text-muted);flex-shrink:0}.quick-open-empty{padding:24px 16px;text-align:center;color:var(--text-muted);font-size:13px}.shortcut-help-overlay{position:fixed;inset:0;z-index:3100;background:#00000080;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity var(--motion-standard);pointer-events:none}.shortcut-help-overlay.show{opacity:1;pointer-events:auto}.shortcut-help-content{background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:14px;box-shadow:var(--shadow-lg, 0 8px 32px rgba(0,0,0,.2));width:min(520px,calc(100vw - 32px));max-height:80vh;overflow:hidden;display:flex;flex-direction:column;transform:scale(.95);transition:transform var(--motion-standard)}.shortcut-help-overlay.show .shortcut-help-content{transform:scale(1)}.shortcut-help-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--border-color)}.shortcut-help-header h3{font-size:15px;font-weight:600;color:var(--text-primary);margin:0}.shortcut-help-grid{display:grid;grid-template-columns:1fr 1fr;gap:0;padding:8px 16px 16px;overflow-y:auto}.shortcut-group{padding:12px 8px 8px}.shortcut-group-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);margin-bottom:8px}.shortcut-item{display:flex;align-items:center;gap:4px;padding:5px 0;font-size:13px;color:var(--text-secondary)}.shortcut-item span{margin-left:6px;color:var(--text-secondary)}kbd{display:inline-flex;align-items:center;justify-content:center;padding:2px 6px;background:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:4px;font-size:11px;font-family:inherit;color:var(--text-secondary);box-shadow:0 1px 0 var(--border-color);min-width:22px}.polish-diff-panel{position:fixed;bottom:24px;left:50%;transform:translate(-50%) translateY(8px);width:min(680px,calc(100vw - 32px));background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:12px;box-shadow:var(--shadow-lg, 0 8px 32px rgba(0,0,0,.18));z-index:2200;opacity:0;pointer-events:none;transition:opacity var(--motion-standard),transform var(--motion-standard)}.polish-diff-panel.show{opacity:1;pointer-events:auto;transform:translate(-50%) translateY(0)}.polish-diff-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px 8px;border-bottom:1px solid var(--border-color)}.polish-diff-title{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;color:var(--text-secondary)}.polish-diff-inline{font-size:13px;line-height:1.72;color:var(--text-primary);white-space:pre-wrap;word-break:break-word;padding:12px 16px;max-height:280px;overflow-y:auto}.polish-diff-del{color:var(--color-danger);background:var(--color-danger-bg);text-decoration:line-through;text-decoration-thickness:1.5px;padding:0 2px;border-radius:2px}.polish-diff-ins{color:var(--color-success);background:var(--color-success-bg);padding:0 2px;border-radius:2px}.polish-diff-legend{display:inline-flex;gap:10px;font-size:11px}.polish-diff-legend-item{display:inline-flex;align-items:center}.polish-diff-legend-item .polish-diff-del,.polish-diff-legend-item .polish-diff-ins{font-size:11px;padding:1px 6px}.polish-diff-actions{display:flex;justify-content:flex-end;gap:8px;padding:10px 16px 12px;border-top:1px solid var(--border-color)}.version-diff-overlay{position:fixed;inset:0;z-index:3300;background:#0006;display:flex;justify-content:center;align-items:center;backdrop-filter:blur(2px)}.version-diff-box{width:min(900px,calc(100vw - 32px));max-height:80vh;background:var(--modal-bg);border-radius:12px;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;overflow:hidden;animation:modal-pop-in var(--motion-spring)}.version-diff-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;border-bottom:1px solid var(--border-color)}.version-diff-title{font-size:15px;font-weight:600;color:var(--text-primary)}.version-diff-body{display:flex;gap:1px;flex:1;overflow:hidden;background:var(--border-color)}.version-diff-col{flex:1;min-width:0;display:flex;flex-direction:column;background:var(--modal-bg)}.version-diff-label{font-size:12px;font-weight:600;color:var(--text-muted);padding:8px 16px;border-bottom:1px solid var(--border-color);text-transform:uppercase;letter-spacing:.04em}.version-diff-text{flex:1;overflow:auto;padding:12px 16px;font-size:13px;line-height:1.7;color:var(--text-primary);font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;white-space:pre-wrap;word-break:break-word;margin:0;background:var(--modal-bg)}@media(max-width:768px){.version-diff-body{flex-direction:column}.version-diff-box{max-height:90vh}.version-diff-text{max-height:35vh}}.selection-toolbar{position:fixed;z-index:3000;display:flex;align-items:center;gap:2px;padding:4px 6px;background:#1f2329;border-radius:8px;box-shadow:0 4px 16px #00000047,0 1px 4px #0000002e;opacity:0;pointer-events:none;transform:translateY(4px);transition:opacity var(--motion-fast),transform var(--motion-fast);user-select:none;white-space:nowrap}.selection-toolbar.show{opacity:1;pointer-events:auto;transform:translateY(0)}.selection-toolbar:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#1f2329}.selection-toolbar.arrow-down:after{top:100%;border-top-color:#1f2329;border-bottom-color:transparent}.selection-toolbar.arrow-up:after{top:auto;bottom:100%;border-top-color:transparent;border-bottom-color:#1f2329}.sel-tool-btn{display:flex;align-items:center;gap:4px;padding:5px 7px;border:none;background:transparent;color:#ffffffd9;border-radius:5px;cursor:pointer;font-size:12px;font-weight:500;line-height:1;transition:background var(--motion-fast),color var(--motion-fast);min-width:28px;justify-content:center}.sel-tool-btn:hover{background:#ffffff24;color:var(--token-color-ink-0)fff}.sel-tool-btn:active{background:#ffffff38}.sel-tool-ai{color:#97c8ffe6;padding:5px 9px}.sel-tool-ai:hover{color:#97c8ff;background:#3370ff40}.sel-tool-divider{width:1px;height:16px;background:#ffffff2e;margin:0 2px;flex-shrink:0}.skeleton-item{padding:14px 16px;border-bottom:1px solid var(--border-color)}.skeleton-line{height:14px;border-radius:4px;background:linear-gradient(90deg,var(--bg-tertiary) 25%,var(--bg-secondary) 50%,var(--bg-tertiary) 75%);background-size:200% 100%;animation:skeleton-shimmer 1.5s infinite}.skeleton-title{width:60%;margin-bottom:10px}.skeleton-meta{width:35%;height:10px}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.empty-state{text-align:center;padding:48px 20px 40px;color:var(--text-muted);display:flex;flex-direction:column;align-items:center;gap:8px;max-width:360px;margin:0 auto}.empty-state-icon{font-size:48px;margin-bottom:12px;opacity:.4}.empty-state-icon-svg{opacity:.34;color:var(--text-muted);margin-bottom:10px}.empty-state p{font-size:15px;font-weight:600;margin-bottom:4px;color:var(--text-secondary)}.empty-state small{font-size:12px;color:var(--text-muted);line-height:1.6;max-width:320px}.empty-state-action{margin-top:18px}.empty-state .btn.empty-state-action,.empty-state-action .btn{min-width:120px;justify-content:center}.modal{position:fixed;inset:0;background-color:#00000073;backdrop-filter:blur(2px);display:flex;justify-content:center;align-items:center;z-index:2200;opacity:0;transition:opacity var(--motion-fast)}.modal.show,.modal[style*="display: flex"],.modal[style*="display:flex"]{opacity:1}.modal-content{background-color:var(--modal-bg);border-radius:12px;width:90%;max-width:500px;max-height:80vh;display:flex;flex-direction:column;transform:scale(.94) translateY(-6px);transition:transform var(--motion-spring);box-shadow:0 8px 40px #00000038}.modal.show .modal-content,.modal[style*="display: flex"] .modal-content,.modal[style*="display:flex"] .modal-content{transform:scale(1) translateY(0)}.modal.modal-slide-right{justify-content:flex-end;align-items:stretch}.modal.modal-slide-right .modal-content{width:100%;max-width:480px;height:100vh;max-height:100vh;border-radius:0;transform:translate(100%)}.modal.show.modal-slide-right .modal-content{transform:translate(0)}.modal-slide-right .modal-header{border-bottom:1px solid var(--border-color);padding:16px 20px;display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.modal-slide-right .modal-body{flex:1;overflow-y:auto;padding:20px}.modal-slide-right .modal-footer{border-top:1px solid var(--border-color);padding:16px 20px;display:flex;gap:10px;justify-content:flex-end;flex-shrink:0}.modal-content.modal-large{max-width:800px}.modal-header{padding:15px 20px;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0;font-size:18px;color:var(--text-primary)}.modal-close{background:none;border:none;font-size:24px;cursor:pointer;color:var(--text-secondary);min-width:36px;min-height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:10px;line-height:1}.modal-close:hover,.modal-close:focus-visible{color:var(--text-primary);background:var(--version-hover-bg);outline:none}.modal-body{padding:20px;overflow-y:auto;flex:1}.modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px}.document-conflict-card{max-width:min(1120px,96vw);max-height:92vh}.document-conflict-body{display:flex;flex-direction:column;gap:14px}.conflict-summary,.conflict-merge-summary{margin:0;color:var(--text-secondary)}.conflict-choice-row,.conflict-actions,.document-conflict-actions{display:flex;flex-wrap:wrap;gap:8px}.conflict-reference-grid,.conflict-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.conflict-columns{grid-template-columns:repeat(2,minmax(0,1fr))}.conflict-reference-grid section,.conflict-manual-block,.conflict-auto-block,.conflict-resolution-preview{border:1px solid var(--border-color);border-radius:10px;padding:10px;background:var(--bg-secondary)}.conflict-reference-grid h4{margin:0 0 6px;font-size:13px;color:var(--text-primary)}.document-conflict-modal pre{margin:0;white-space:pre-wrap;word-break:break-word;font-family:var(--font-mono, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace);font-size:12px;line-height:1.5;max-height:220px;overflow:auto}.conflict-blocks{display:flex;flex-direction:column;gap:10px}.conflict-block-label{margin-bottom:6px;font-size:12px;font-weight:700;color:var(--text-secondary)}.conflict-ours{background:#f59e0b14}.conflict-theirs{background:#3b82f614}.conflict-both,.conflict-resolution-preview{background:#22c55e14}.conflict-manual-block{background:#ef44440f}@media(max-width:760px){.conflict-reference-grid,.conflict-columns{grid-template-columns:1fr}}.confirm-message{white-space:pre-line;line-height:1.6}.writeback-tip{margin:0;color:var(--text-secondary)}.writeback-options{display:flex;flex-direction:column;gap:10px;margin-top:16px}.extract-modal-content{max-width:560px}.extract-modal-body{display:flex;flex-direction:column;gap:12px}.extract-input-group{margin-bottom:0}.extract-input-label{display:block;margin-bottom:10px;line-height:1.5}.extract-input-note{margin-top:6px;font-size:12px;line-height:1.5;color:var(--text-secondary)}.extract-domain-panel{border:1px solid var(--border-color);border-radius:10px;background:var(--bg-tertiary);padding:10px 12px}.extract-domain-header{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:8px}.extract-domain-title{font-size:13px;font-weight:600;color:var(--text-primary)}.extract-domain-count{font-size:12px;color:var(--text-secondary)}.extract-domain-list{display:flex;flex-wrap:wrap;gap:8px;max-height:140px;overflow-y:auto}.extract-domain-item{font-size:12px;line-height:1.2;color:var(--text-primary);border:1px solid var(--border-color);border-radius:999px;background:var(--bg-secondary);padding:5px 10px}.extract-domain-placeholder{font-size:12px;color:var(--text-secondary)}.extract-result-note{margin:0;font-size:12px;line-height:1.6;color:var(--text-secondary)}.extract-modal-actions{margin-top:4px}.recycle-list{display:flex;flex-direction:column;gap:10px}.recycle-modal-content{max-width:620px}.recycle-modal-header{gap:14px}.recycle-modal-title{display:inline-flex;align-items:center;gap:8px;min-width:0}.recycle-modal-header-actions{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.recycle-modal-close{width:42px;height:42px;font-size:28px;background:var(--bg-secondary);border:1px solid var(--border-color)}.recycle-item{border:1px solid var(--border-color);border-radius:8px;padding:12px;display:flex;align-items:center;justify-content:space-between;gap:14px;background:var(--bg-secondary)}.recycle-item-main{min-width:0}.recycle-item-title{font-size:14px;font-weight:600;color:var(--text-primary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.recycle-item-meta{margin-top:4px;font-size:12px;color:var(--text-secondary)}.recycle-item-actions{display:inline-flex;gap:8px;flex-shrink:0}.pref-row{display:inline-flex;align-items:center;gap:8px;font-size:14px;color:var(--text-primary)}.doc-system-status-bar{display:flex;flex-wrap:wrap;gap:6px;align-items:center;padding:6px 12px;border-bottom:1px solid var(--border-color);background:var(--bg-primary);font-size:12px}.doc-status-pill{display:inline-flex;align-items:center;gap:4px;padding:3px 8px;border-radius:999px;font-weight:500;line-height:1.4;white-space:nowrap;background:#0000000a;color:var(--text-secondary);transition:background var(--motion-fast),color var(--motion-fast)}.doc-status-pill--placeholder{opacity:.6}.doc-status-pill.is-ok{background:#28a7451f;color:#1f8b3c}.doc-status-pill.is-active{background:#3370ff1a;color:var(--brand-primary)}.doc-status-pill.is-warn{background:#f5a62324;color:#c77b00}.doc-status-pill.is-muted{background:#0000000a;color:var(--text-secondary)}@media(max-width:600px){.doc-system-status-bar{padding:6px 8px}}.style-portrait-card{display:flex;flex-direction:column;gap:10px;padding:12px;border:1px solid var(--border-color);border-radius:10px;background:var(--bg-secondary)}.style-portrait-head{display:flex;align-items:flex-start;gap:10px}.style-portrait-head>div:first-child{flex:1;min-width:0}.style-portrait-title{font-size:14px;font-weight:600;color:var(--text-primary)}.style-portrait-badge{flex-shrink:0;font-size:11px;font-weight:600;padding:3px 8px;border-radius:999px;background:#3370ff1a;color:var(--brand-primary);white-space:nowrap}.style-portrait-badge.is-paused{background:#f5a6231f;color:#c77b00}.style-portrait-badge.is-fallback{background:#0000000f;color:var(--text-secondary)}.style-portrait-badge.is-stale{background:#3370ff1a;color:var(--brand-primary)}.style-portrait-badge.is-ok{background:#28a7451f;color:#1f8b3c}.style-portrait-summary{font-size:13px;line-height:1.6;color:var(--text-primary);white-space:pre-wrap;word-break:break-word;background:var(--bg-primary);padding:10px;border-radius:8px}.style-portrait-facets{display:flex;flex-direction:column;gap:6px;margin-top:4px}.style-portrait-facet{display:flex;gap:8px;align-items:flex-start;font-size:12px;line-height:1.5}.style-portrait-facet-label{flex-shrink:0;width:56px;font-weight:600;color:var(--text-secondary)}.style-portrait-facet-value{flex:1;color:var(--text-primary)}.style-portrait-meta{font-size:12px;color:var(--text-secondary);margin-top:4px}.style-portrait-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;border-top:1px solid var(--border-color);padding-top:10px}.style-portrait-loading{font-size:13px;color:var(--text-secondary);padding:12px;text-align:center;background:var(--bg-primary);border-radius:8px}.style-portrait-error{font-size:12px;color:#c00;background:#dc00000f;padding:8px 10px;border-radius:6px}.form-group{margin-bottom:12px}.form-control{width:100%;min-height:36px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-secondary);color:var(--text-primary);padding:6px 10px;font-size:14px}.version-list{padding:10px 0}.version-timeline{position:relative;padding-left:20px}.version-timeline:before{content:"";position:absolute;left:7px;top:10px;bottom:10px;width:2px;background:var(--border-color)}.version-item{position:relative;padding:14px 16px;border-radius:8px;margin-bottom:12px;cursor:pointer;transition:all var(--motion-standard);border:1px solid transparent;background:var(--bg-tertiary)}.version-item:hover{background-color:var(--bg-secondary);border-color:var(--token-color-brand-500);transform:translate(4px)}.version-item-marker{position:absolute;left:-24px;top:16px;width:16px;height:16px;border-radius:50%;background:var(--bg-secondary);border:2px solid var(--token-color-brand-500);color:var(--token-color-brand-500);font-size:10px;display:flex;align-items:center;justify-content:center}.version-item:first-child .version-item-marker{background:var(--token-color-brand-500);color:var(--token-color-ink-0)}.version-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.version-item-date{font-size:12px;color:var(--text-muted);font-weight:500}.version-badge{font-size:11px;padding:2px 8px;border-radius:99px;background:var(--token-color-brand-500);color:var(--token-color-ink-0);font-weight:500}.version-item-message{font-size:14px;color:var(--text-primary);margin-bottom:6px}.version-item-meta{display:flex;gap:12px;font-size:12px;color:var(--text-muted)}.version-item-size{font-family:monospace}.version-info{background-color:var(--bg-tertiary);padding:10px 15px;border-radius:5px;margin-bottom:15px;font-size:14px;color:var(--text-primary)}.version-content{background-color:var(--bg-code);padding:15px;color:var(--text-primary);border-radius:5px;overflow:auto;max-height:300px;font-size:13px;white-space:pre-wrap;word-wrap:break-word}.version-empty{text-align:center;padding:40px 20px;color:#95a5a6}[data-theme=dark] .CodeMirror{background-color:var(--bg-secondary);color:var(--text-primary)}[data-theme=dark] .CodeMirror-gutters{background-color:var(--bg-tertiary);border-right:1px solid var(--border-color)}[data-theme=dark] .CodeMirror-cursor{border-left:1px solid var(--text-primary)}[data-theme=dark] .CodeMirror-selected{background:#3498db4d}[data-theme=dark] .CodeMirror-activeline-background{background:#ffffff0d}[data-theme=dark] .hljs{background:var(--bg-code);color:#c9d1d9}[data-theme=dark] .save-status.unsaved{color:#ff6b6b;background-color:#e74c3c26;border-color:#e74c3c40}[data-theme=dark] .save-status.saved{color:#4ade80;background-color:#4ade801f;border-color:#4ade8040}[data-theme=dark] .save-status.processing{color:var(--brand-primary);background-color:#4e83fd26;border-color:#4e83fd40}[data-theme=dark] .save-status.ai-processing{color:#a78bfa;background-color:#a78bfa1f;border-color:#a78bfa40}[data-theme=dark] .search-box input{background:var(--input-bg);color:var(--sidebar-text);border-color:var(--border-color)}[data-theme=dark] .search-box input::placeholder{color:var(--sidebar-muted)}[data-theme=dark] .doc-filter-btn{color:var(--sidebar-muted);background:transparent;border-color:var(--border-color)}[data-theme=dark] .doc-filter-btn:hover:not(.active){color:var(--sidebar-text);background:var(--fill-hover)}[data-theme=dark] .doc-filter-btn.active{color:var(--brand-primary);background:var(--fill-active);border-color:var(--brand-primary);box-shadow:none}[data-theme=dark] .btn-icon,[data-theme=dark] .user-actions .theme-toggle,[data-theme=dark] .username-display{background:var(--fill-hover);border-color:var(--border-color);color:var(--text-primary)}[data-theme=dark] .btn-icon:hover,[data-theme=dark] .user-actions .theme-toggle:hover{background:var(--fill-active);border-color:var(--brand-primary);color:var(--brand-primary)}.sidebar-footer{flex-shrink:0;border-top:1px solid var(--border-color);padding:12px 15px;position:relative}.sidebar-footer-theme{background:transparent;padding:8px 10px}.sidebar-footer-tools{margin-top:auto;display:block;padding:8px 10px}.sidebar-footer-btns{display:flex;gap:6px}.sidebar-footer-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;font-size:11px;font-weight:500;border:1px solid var(--border-color);border-radius:10px;background:transparent;color:var(--sidebar-text);cursor:pointer;transition:all var(--motion-standard);white-space:nowrap;min-height:44px;justify-content:center}.sidebar-footer-btn:hover{border-color:var(--brand-primary);background:var(--fill-active);color:var(--brand-primary)}.sidebar-footer-btn:active{transform:scale(.93);transition:transform var(--motion-fast)}.sidebar-footer-btn span{font-size:16px;line-height:1}.theme-toggle{position:relative;display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border:none;border-radius:20px;background-color:var(--input-bg);color:var(--sidebar-text);cursor:pointer;font-size:13px;transition:all var(--motion-emphasized);white-space:nowrap}.theme-toggle:hover{background-color:var(--input-focus-bg)}.theme-toggle .theme-icon{font-size:16px;transition:transform var(--motion-emphasized)}.theme-toggle .theme-label{font-size:12px}.theme-toggle.auto-mode{border:1px solid rgba(51,112,255,.5)}.theme-menu{position:absolute;bottom:100%;left:12px;margin-bottom:4px;background-color:var(--modal-bg);border:1px solid var(--border-color);border-radius:8px;padding:4px;min-width:140px;box-shadow:0 4px 12px var(--shadow-color);z-index:100;display:none}.theme-menu.show{display:block}.theme-menu-item{display:flex;align-items:center;gap:8px;padding:8px 12px;border:none;border-radius:6px;background:none;color:var(--text-primary);cursor:pointer;font-size:13px;width:100%;text-align:left;transition:background-color var(--motion-standard)}.theme-menu-item:hover{background-color:var(--version-hover-bg)}.theme-menu-item.active{background-color:var(--fill-active);color:var(--brand-primary)}.login-page{position:relative;display:flex;justify-content:center;align-items:center;min-height:100vh;padding-bottom:64px;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460)}.login-card{background:linear-gradient(180deg,#fffffffa,#f8fbfffa);border-radius:24px;padding:22px 24px 24px;width:min(424px,calc(100vw - 40px));border:1px solid rgba(255,255,255,.18);box-shadow:0 22px 56px #05132e4d,inset 0 1px #ffffffb8;backdrop-filter:blur(8px)}.login-header{text-align:center;margin-bottom:12px}.login-logo{font-size:48px;display:block;margin-bottom:12px}.login-logo-img{width:72px;height:72px;display:block;margin:0 auto 8px;border-radius:16px}.sidebar-logo{height:32px;flex-shrink:0}.sidebar-title-group{display:flex;flex-direction:column;overflow:hidden}.main-title{font-size:1.2rem;line-height:1.2;font-weight:600}.sub-title{font-size:.75rem;line-height:1.2;font-weight:400;opacity:.8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media(min-width:769px){.sidebar.is-collapsed .sidebar-header{padding:12px 8px;gap:10px}.sidebar.is-collapsed .sidebar-header-top{justify-content:center}.sidebar.is-collapsed .sidebar-header h1{width:40px;margin:0 auto;justify-content:center;gap:0}.sidebar.is-collapsed .sidebar-title-group,.sidebar.is-collapsed>.sidebar-section-title,.sidebar.is-collapsed .search-box input,.sidebar.is-collapsed .search-clear-btn,.sidebar.is-collapsed .doc-filter-toolbar,.sidebar.is-collapsed .doc-count-bar,.sidebar.is-collapsed .doc-list,.sidebar.is-collapsed .sidebar-footer .sidebar-section-title{display:none!important}.sidebar.is-collapsed .sidebar-search-toggle-btn{display:inline-flex}.sidebar.is-collapsed .search-box{padding:8px;display:flex;justify-content:center;border-bottom:0}.sidebar.is-collapsed .sidebar-logo{width:40px;height:40px;object-fit:contain;display:block}.sidebar.is-collapsed+.sidebar-collapse-btn{transform:none}.sidebar.is-collapsed .sidebar-new-btn{width:40px;height:34px;padding:0;margin:0 auto;border-radius:8px;font-size:18px;gap:0}.sidebar.is-collapsed .sidebar-footer-tools{display:flex;flex-direction:column;align-items:center;gap:6px;padding:8px 6px;margin-top:auto}.sidebar.is-collapsed .sidebar-footer-btns{flex-direction:column;align-items:center;gap:4px}.sidebar.is-collapsed .sidebar-footer-btn{width:36px;height:36px;min-height:36px}.sidebar.is-collapsed .sidebar-footer-btn span{font-size:14px}.sidebar.is-collapsed .sidebar-footer-tools .btn{width:40px;min-height:34px;padding:4px;border-radius:8px}}@media(max-width:768px){#sidebarCollapseBtn{display:none}}.login-header h2{font-size:20px;color:var(--text-primary);margin-bottom:0}.login-site-description{margin:6px 0 0;color:var(--text-secondary);font-size:13px;line-height:1.5}.login-subtitle{color:var(--text-muted);font-size:13px;line-height:1.4;opacity:.82;margin:4px 0 0}.login-form{display:flex;flex-direction:column;gap:16px}.login-primary-panel{padding:12px;border-radius:18px;background:#ffffffa8;border:1px solid rgba(113,155,224,.1);box-shadow:inset 0 1px #ffffffbf,0 8px 18px #1228530d}.login-secondary-panel{display:flex;flex-direction:column;gap:10px;width:min(320px,100%);margin:0 auto}.login-panel-heading{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:8px}.login-panel-kicker{font-size:12px;font-weight:700;letter-spacing:.4px;color:#23436c}.login-panel-note{font-size:11px;color:var(--text-muted)}.login-panel-fields{display:flex;flex-direction:column;gap:12px}.login-input{width:100%;padding:13px 16px;border:1px solid rgba(118,141,181,.22);border-radius:14px;font-size:15px;background:#f6f9fceb;color:var(--text-primary);transition:border-color var(--motion-standard),box-shadow var(--motion-standard),background-color var(--motion-standard);box-sizing:border-box}.login-input:focus{outline:none;border-color:#3498db8c;background:var(--token-color-ink-0)fff;box-shadow:0 0 0 4px #3498db1a}.login-code-row{display:flex;gap:10px;align-items:center}.login-code-input{flex:1;margin-top:0}.login-send-btn{min-width:112px;justify-content:center;border-radius:14px;letter-spacing:0}.login-turnstile-wrap{min-height:66px}.login-field-label{font-size:12px;color:#637897;font-weight:600;margin-bottom:6px}.login-field-hint{margin-top:6px;font-size:12px;color:var(--text-muted);line-height:1.4}.login-btn{width:100%;padding:13px;font-size:16px;border-radius:14px;justify-content:center;text-align:center;font-weight:600;letter-spacing:.8px}.login-oauth-divider{display:flex;align-items:center;gap:10px;color:var(--text-muted);font-size:11px;padding:0 4px;letter-spacing:.3px;text-transform:uppercase}.login-primary-panel>.login-btn{margin-top:10px}.login-oauth-divider:before,.login-oauth-divider:after{content:"";flex:1;height:1px;background:#8095b538}.login-qq-btn{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:54px;padding:10px 16px;border-radius:18px;border:1px solid rgba(18,183,245,.16);background:linear-gradient(135deg,#fffffffa,#f6fbfffa);box-shadow:0 8px 20px #071f3f0f,inset 0 1px #ffffffeb;text-decoration:none;transition:transform var(--motion-fast),box-shadow var(--motion-fast),border-color var(--motion-fast)}.login-qq-btn:hover,.login-qq-btn:focus-visible{transform:translateY(-1px);border-color:#12b7f542;box-shadow:0 12px 24px #071f3f14,inset 0 1px #fffffff0}.login-qq-btn:focus-visible{outline:2px solid rgba(18,183,245,.28);outline-offset:2px}.login-qq-badge{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:34px;height:34px;border-radius:12px;background:linear-gradient(180deg,#23b1f6,#0c95e8);box-shadow:inset 0 1px #ffffff3d,0 8px 16px #12b7f538}.login-qq-official-img{display:block;width:24px;max-width:100%;height:auto}.login-qq-copy{display:flex;align-items:center;justify-content:center;min-width:0;color:var(--text-primary)}.login-qq-copy strong{font-size:16px;line-height:1.2;font-weight:700;letter-spacing:0;text-align:center}.login-qq-copy span{display:none}.login-error{color:var(--token-color-danger-500);font-size:13px;text-align:center;min-height:18px;line-height:1.5}.login-record-number{position:fixed;left:50%;bottom:max(14px,env(safe-area-inset-bottom));transform:translate(-50%);z-index:20;display:inline-flex;align-items:center;justify-content:center;min-height:34px;max-width:calc(100vw - 24px);padding:6px 14px;border-radius:999px;border:1px solid rgba(179,214,255,.18);background:#0c1a3a59;box-shadow:none;backdrop-filter:blur(5px);text-align:center;font-size:12px;letter-spacing:.2px;color:#e0eeffad;white-space:normal;flex-wrap:wrap;gap:6px}.login-record-number a{color:inherit;text-decoration:none;border-bottom:1px solid transparent;transition:color var(--motion-standard),border-color var(--motion-standard),opacity var(--motion-standard)}.login-record-number .record-link{display:inline-flex;align-items:center;gap:6px}.login-record-number .record-divider{opacity:.55;margin:0 2px}.login-record-number .record-icon{width:13px;height:13px;flex:0 0 auto;background:currentColor;opacity:.9;-webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2l7 3v6c0 5-3.5 9.7-7 11-3.5-1.3-7-6-7-11V5l7-3z'/%3E%3C/svg%3E") no-repeat center / contain;mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 2l7 3v6c0 5-3.5 9.7-7 11-3.5-1.3-7-6-7-11V5l7-3z'/%3E%3C/svg%3E") no-repeat center / contain}.login-record-number .record-mps-icon{width:16px;height:16px;flex:0 0 auto;border-radius:2px}.login-record-number a:hover,.login-record-number a:focus-visible{color:#ffffffe6;opacity:1;border-bottom-color:currentColor}@media(max-width:768px){.login-record-number{bottom:max(12px,env(safe-area-inset-bottom));min-height:32px;padding:5px 12px;font-size:11px;row-gap:4px}}.login-dev-code-notice{display:none;text-align:center;padding:12px 14px;border-radius:12px;border:1px solid rgba(37,99,235,.32);background:linear-gradient(180deg,#dbeafef5,#bfdbfef5);color:#1e3a8a;font-size:16px;font-weight:800;line-height:1.5;letter-spacing:.04em;font-variant-numeric:tabular-nums;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;word-break:break-word;box-shadow:inset 0 1px #ffffffb3}[data-theme=dark] .login-dev-code-notice{border-color:#60a5fa80;background:linear-gradient(180deg,#1e40af4d,#1e293be6);color:#dbeafe;box-shadow:inset 0 1px #ffffff0f}.reauth-modal{z-index:1200}.reauth-modal-content{max-width:520px}.reauth-tip{margin-bottom:14px;font-size:13px;color:var(--text-secondary);line-height:1.6}.reauth-form{gap:12px}.reauth-fallback-btn{width:100%;justify-content:center;letter-spacing:0;font-weight:500}.toolbar-divider{width:1px;height:24px;background-color:var(--border-color);margin:0 8px}.user-actions{position:relative;display:flex;align-items:center;gap:8px}.username-display{font-size:13px;color:var(--text-secondary);padding:6px 10px;background-color:var(--bg-tertiary);border-radius:999px;white-space:nowrap;border:1px solid var(--border-color)}.btn-icon{background:var(--bg-tertiary);border:1px solid var(--border-color);cursor:pointer;font-size:18px;padding:8px;border-radius:10px;transition:all var(--motion-standard);display:flex;align-items:center;justify-content:center}.btn-icon:hover{background-color:var(--bg-secondary);border-color:#3498db40;transform:translateY(-1px)}.btn-icon:active{transform:scale(.93);transition:transform var(--motion-fast)}.user-actions .theme-toggle{border:1px solid var(--border-color);background:var(--bg-tertiary);padding:8px;border-radius:10px;gap:0;min-width:0}.user-actions .theme-toggle .theme-icon{font-size:18px}.user-actions .theme-toggle .theme-label{display:none}.user-actions .theme-toggle.auto-mode{box-shadow:none}.user-actions .theme-toggle:hover{background-color:var(--bg-secondary);border-color:#3498db40}.user-actions .theme-menu{top:calc(100% + 8px);right:0;left:auto;bottom:auto}.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}@media(max-width:768px){.login-card{width:calc(100vw - 28px);padding:18px 14px 20px;border-radius:20px}.login-primary-panel{padding:12px}.login-secondary-panel{width:100%;max-width:300px}.login-panel-heading{flex-direction:column;align-items:stretch;gap:4px}.login-code-row{flex-direction:column;align-items:stretch}.login-send-btn{width:100%}.app-container{flex-direction:column!important}.sidebar{width:100%;height:auto;max-height:40vh}.editor-container{flex-direction:column}.resizer{width:100%;height:5px;cursor:row-resize}.toolbar{flex-wrap:wrap}.toolbar-left,.toolbar-right{width:100%;justify-content:flex-start}.title-input{max-width:none}}@media(max-width:768px){.sidebar{position:fixed;left:-100%;top:0;width:80%;max-width:320px;height:100dvh;max-height:100dvh;min-height:0;overflow:hidden;z-index:1000;transition:left var(--motion-emphasized);box-shadow:4px 0 16px var(--shadow-color);background:var(--sidebar-bg);border-right:1px solid var(--border-color)}.sidebar.open{left:0}.sidebar-overlay{display:none;position:fixed;inset:0;background:#00000080;z-index:999}.sidebar-overlay.active{display:block}.app-container{flex-direction:column!important;height:100vh}.toolbar{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding:8px 12px}.toolbar-left,.toolbar-right{width:auto;flex-shrink:0}.btn-icon{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.title-input{max-width:none;font-size:16px}.editor-container{flex-direction:column;height:calc(100vh - 120px);padding:8px;gap:8px}.mobile-view-toggle{display:flex;align-items:center;justify-content:flex-start;gap:6px;padding:6px 10px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.mobile-view-toggle button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:36px;padding:0 12px;border:1px solid var(--border-color);border-radius:999px;background:var(--bg-tertiary);color:var(--text-secondary);cursor:pointer;font-size:13px;line-height:1;white-space:nowrap;transition:all var(--motion-standard)}.mobile-view-toggle button[data-view]{min-width:74px;font-weight:600}.mobile-view-toggle .mobile-doc-btn{width:38px;min-width:38px;padding:0;font-size:15px}.mobile-view-toggle button.active{color:var(--token-color-ink-0);background:var(--token-color-brand-500);border-color:var(--token-color-brand-500)}.editor-wrapper,.preview{display:none;width:100%;height:100%}.editor-wrapper.active,.preview.active{display:block}.resizer{display:none}.mobile-bottom-nav{display:flex;justify-content:space-around;align-items:center;position:fixed;bottom:0;left:0;right:0;height:56px;background:var(--bg-secondary);border-top:1px solid var(--border-color);z-index:100;padding-bottom:env(safe-area-inset-bottom)}.mobile-bottom-nav button{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;padding:8px;border:none;background:transparent;color:var(--text-secondary);font-size:12px;cursor:pointer;min-height:44px}.mobile-bottom-nav button.active{color:var(--primary-color)}.mobile-bottom-nav button .icon{font-size:20px}.main-content{height:calc(100vh - 56px)}.doc-list{padding:8px}.doc-item{padding:12px;margin-bottom:8px}.search-box{padding:8px}.search-box input{font-size:16px}#preview{padding:16px}#preview .preview-smart-image{max-width:100%;max-height:min(56vh,620px);max-height:min(56dvh,620px);margin:14px auto;border-radius:6px}#preview .preview-smart-image.is-tall-preview-image{max-height:min(52vh,560px);max-height:min(52dvh,560px)}.preview-image-lightbox{padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.preview-image-lightbox-img{max-width:calc(100vw - 24px - env(safe-area-inset-left) - env(safe-area-inset-right));max-height:calc(100vh - 76px - env(safe-area-inset-top) - env(safe-area-inset-bottom));max-height:calc(100dvh - 76px - env(safe-area-inset-top) - env(safe-area-inset-bottom));border-radius:6px}.preview-image-lightbox-caption{max-width:calc(100vw - 24px)}.modal-content{width:95%;max-width:95%;margin:20px auto;max-height:90vh;overflow-y:auto}}@media(min-width:769px){.mobile-view-toggle,.mobile-bottom-nav,.sidebar-overlay{display:none!important}.editor-wrapper,.preview{display:block!important}}.mobile-more-menu{position:fixed;inset:0;z-index:2000}.mobile-more-overlay{position:absolute;inset:0;background:#00000080}.mobile-more-content{position:absolute;bottom:0;left:0;right:0;background:var(--bg-primary);border-radius:16px 16px 0 0;max-height:70vh;overflow-y:auto;animation:slideUp var(--motion-emphasized)}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.mobile-more-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid var(--border-color)}.mobile-more-header h3{margin:0;font-size:18px;color:var(--text-primary)}.mobile-more-close{width:32px;height:32px;border:none;background:var(--bg-secondary);border-radius:50%;color:var(--text-secondary);font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center}.mobile-more-list{padding:8px 0}.mobile-more-item{width:100%;padding:14px 20px;border:none;background:transparent;color:var(--text-primary);font-size:15px;text-align:left;cursor:pointer;transition:background var(--motion-fast);min-height:50px;display:flex;align-items:center;gap:12px}.mobile-more-item.danger{color:#c0392b}.mobile-more-item:active{background:var(--fill-hover)}.mobile-more-divider{padding:10px 20px 6px;font-size:12px;font-weight:600;color:var(--text-muted);letter-spacing:.04em;border-top:1px solid var(--border-color);margin-top:4px}.mobile-guide-overlay{position:fixed;inset:0;z-index:9999;background:#0000008c;display:flex;align-items:center;justify-content:center;padding:20px}.mobile-guide-card{background:var(--bg-primary);border-radius:16px;padding:24px 20px;max-width:320px;width:100%;text-align:center;animation:slideUp var(--motion-emphasized)}.mobile-guide-card h3{margin:0 0 16px;font-size:17px;color:var(--text-primary)}.mobile-guide-items{display:flex;flex-direction:column;gap:14px;margin-bottom:20px}.mobile-guide-item{display:flex;align-items:center;gap:12px;text-align:left;font-size:14px;color:var(--text-secondary);line-height:1.4}.mobile-guide-icon{flex:0 0 auto;font-size:20px;width:36px;text-align:center}.mobile-guide-dismiss{width:100%;padding:12px;border:none;border-radius:10px;background:var(--token-color-brand-500);color:var(--token-color-ink-0);font-size:15px;font-weight:600;cursor:pointer;touch-action:manipulation}.mobile-guide-dismiss:active{background:#2980b9}.ai-model-label{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary);cursor:pointer;margin-left:auto;padding:6px 10px;border-radius:999px;background:var(--bg-tertiary);border:1px solid var(--border-color)}.model-select{padding:6px 10px;font-size:12px;border:1px solid var(--border-color);border-radius:999px;background:var(--bg-secondary);color:var(--text-primary);max-width:180px;cursor:pointer}.model-select:focus{outline:none;border-color:var(--token-color-brand-500)}.ai-toolbar{display:flex;gap:8px;padding:8px 20px 12px;background:linear-gradient(180deg,#3498db14,#3498db05),var(--bg-tertiary);border-bottom:1px solid var(--border-color);flex-wrap:wrap;align-items:center}.ai-tool-btn{padding:8px 14px;border:1px solid rgba(52,152,219,.16);border-radius:999px;background:#ffffffd1;color:var(--text-primary);font-size:13px;font-weight:700;cursor:pointer;transition:all var(--motion-standard);white-space:nowrap;box-shadow:0 6px 16px #0f172a0a}.ai-tool-btn:hover{background:var(--token-color-brand-500);color:var(--token-color-ink-0);border-color:var(--token-color-brand-500);transform:translateY(-1px);box-shadow:0 10px 20px #3498db2e}.ai-tool-btn:disabled{opacity:.5;cursor:not-allowed}[data-theme=dark] .ai-toolbar{background:linear-gradient(180deg,#3b82f624,#1e293b5c),var(--bg-tertiary)}[data-theme=dark] .ai-tool-btn{background:#111827e0;color:#eff6ff;border-color:#60a5fa3d;box-shadow:0 8px 18px #02061738}[data-theme=dark] .ai-tool-btn:hover{background:linear-gradient(135deg,#2563eb,#3b82f6);color:var(--token-color-ink-0)fff;border-color:#bfdbfe66}[data-theme=dark] .ai-model-label{background:#111827c2;border-color:#60a5fa33;color:#dbeafe}[data-theme=dark] .model-select{background:#0a0f1deb;color:#f8fbff;border-color:#60a5fa3d}.ask-input-row{display:flex;gap:8px;margin-bottom:12px}.ask-input{flex:1;padding:8px 12px;border:1px solid var(--border-color);border-radius:6px;font-size:14px;background:var(--bg-secondary);color:var(--text-primary)}.ask-answer{min-height:100px;max-height:400px;overflow-y:auto;padding:12px;background:var(--bg-tertiary);border-radius:8px;font-size:14px;line-height:1.6}.ask-answer:empty:before{content:"\56de\7b54\5c06\663e\793a\5728\8fd9\91cc...";color:var(--text-secondary)}.ai-tags{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0}.ai-tag{display:inline-block;padding:2px 10px;background:#4a90e21a;color:var(--token-color-brand-500);border-radius:12px;font-size:12px}.ai-category{display:inline-block;padding:2px 10px;background:#52c41a1a;color:#52c41a;border-radius:12px;font-size:12px;margin-bottom:8px}.ai-summary-text{padding:10px;background:var(--bg-tertiary);border-radius:6px;font-size:13px;line-height:1.5;color:var(--text-primary)}.ai-popover{position:absolute;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 12px var(--shadow-color);padding:15px;width:300px;z-index:1000;font-size:13px;pointer-events:auto}.ai-popover:before{content:"";position:absolute;top:0;left:-20px;width:20px;height:100%}.ai-popover h4{margin:0 0 8px;font-size:14px;color:var(--text-primary)}.ai-popover p{margin:0;color:var(--text-secondary);line-height:1.5}.ai-popover .ai-tag{cursor:pointer;transition:all var(--motion-standard)}.ai-popover .ai-tag:hover{background:#3498db33;transform:translateY(-1px)}.ai-popover .tag-popover-section{margin-top:10px}.ai-popover .tag-popover-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:6px}.ai-popover .tag-popover-title{font-size:12px;font-weight:700;color:var(--text-primary)}.ai-popover .tag-popover-hint{font-size:11px;color:var(--text-muted)}.ai-popover .tag-popover-add-btn{width:24px;height:24px;border:1px solid var(--border-color);border-radius:50%;background:var(--bg-primary);color:var(--text-primary);cursor:pointer;line-height:1;font-size:16px}.ai-popover .tag-popover-add-row{display:flex;gap:6px;margin:8px 0 4px}.ai-popover .tag-popover-add-row[hidden]{display:none}.ai-popover .tag-popover-input{flex:1;min-width:0;min-height:32px;padding:6px 10px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-primary);color:var(--text-primary)}.ai-popover .tag-popover-submit{min-height:32px;padding:0 10px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);cursor:pointer}.ai-popover .ai-tag-manual{cursor:pointer;background:#2eaa721f;color:#1f8f5f}.ai-popover .ai-tag:active{transform:translateY(0)}.modal-small{max-width:420px}.history-modal-content{max-width:800px;width:calc(100vw - 48px)}.history-modal-body{display:flex;gap:0;padding:0!important;min-height:400px;max-height:70vh;overflow:hidden}.history-list-pane{width:260px;flex-shrink:0;border-right:1px solid var(--border-color);overflow-y:auto;padding:12px 8px}.history-preview-pane{flex:1;min-width:0;display:flex;flex-direction:column;overflow:hidden}.history-preview-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;height:100%;color:var(--text-muted);font-size:13px;padding:40px}.history-preview-content{display:flex;flex-direction:column;height:100%;overflow:hidden}.history-preview-info{padding:12px 16px;font-size:13px;color:var(--text-secondary);border-bottom:1px solid var(--border-color);line-height:1.6;flex-shrink:0}.history-version-content{flex:1;overflow-y:auto;margin:0;padding:16px;font-size:13px;line-height:1.7;white-space:pre-wrap;word-break:break-word;font-family:var(--font-mono, "SFMono-Regular", "Menlo", monospace);background:var(--bg-tertiary);border:none;border-radius:0;color:var(--text-primary)}.history-preview-actions{padding:12px 16px;border-top:1px solid var(--border-color);display:flex;justify-content:flex-end;flex-shrink:0}.version-item.selected{background:var(--fill-active);border-color:var(--brand-primary);transform:none}.version-item:hover{transform:none}@media(max-width:640px){.history-modal-content{width:calc(100vw - 24px)}.history-modal-body{flex-direction:column;max-height:80vh}.history-list-pane{width:100%;border-right:none;border-bottom:1px solid var(--border-color);max-height:220px;padding:8px 4px}.history-preview-pane{min-height:280px}}.confirm-modal-content{position:relative;text-align:center;padding-top:32px!important}.confirm-close-btn{position:absolute;top:12px;right:12px}.confirm-icon-area{display:flex;justify-content:center;margin-bottom:16px}.confirm-icon{display:none;width:44px;height:44px;padding:10px;border-radius:12px}.confirm-icon-danger{color:var(--token-color-danger-500);background:#e74c3c1a}.confirm-icon-info{color:var(--brand-primary);background:#3370ff1a}#confirmModal[data-confirm-type=danger] .confirm-icon-danger,#confirmModal[data-confirm-type=info] .confirm-icon-info{display:block}.confirm-message{font-size:15px;color:var(--text-primary);margin-bottom:20px;line-height:1.6}.confirm-modal-content .modal-actions{justify-content:center}.op-log-panel{position:fixed;right:20px;bottom:20px;z-index:900;display:flex;flex-direction:column;width:380px;height:56vh;min-height:260px;max-height:70vh;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:8px;box-shadow:0 4px 16px var(--shadow-color);overflow:hidden;font-size:12px;min-width:240px;transition:all var(--motion-emphasized)}.op-log-panel:hover{box-shadow:0 8px 24px var(--shadow-color)}.op-log-panel:focus-within{border-color:var(--token-color-brand-500);box-shadow:0 0 0 2px #3498db4d}.op-log-header{display:flex;justify-content:flex-start;align-items:center;gap:10px;padding:6px 12px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);flex-shrink:0;cursor:grab;user-select:none;border-radius:8px 8px 0 0;position:sticky;top:0;z-index:1}.op-log-header:active{cursor:grabbing}.op-log-title{font-size:12px;font-weight:600;color:var(--text-primary);letter-spacing:.5px}.op-log-queue-info{display:flex;gap:10px;font-size:11px;color:var(--text-secondary);margin-left:auto}.op-log-queue-info span{white-space:nowrap}.op-log-controls{display:flex;align-items:center;gap:6px}.op-log-control-btn{width:24px;height:24px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);border-radius:6px;cursor:pointer;font-size:12px;line-height:1;display:inline-flex;align-items:center;justify-content:center}.op-log-control-btn:hover{background:var(--bg-primary);color:var(--text-primary)}.op-log-body{flex:1;overflow-y:auto;overflow-x:hidden;padding:6px 10px;min-height:100px;line-height:1.4;overscroll-behavior:contain}.op-log-body:empty:before{content:"\6682\65e0\5f85\529e\4e8b\9879";color:var(--text-muted);font-size:11px}.op-log-item{display:flex;align-items:flex-start;gap:6px;padding:3px 0;line-height:1.4;color:var(--text-primary);border-bottom:1px solid var(--border-light);font-size:11px;word-break:break-word;transition:background-color var(--motion-standard)}.op-log-item:hover{background-color:#3498db0d}.op-log-item:last-child{border-bottom:none}.op-log-item .op-log-icon{flex-shrink:0;font-size:11px;width:16px;text-align:center}.op-log-item .op-log-time{flex-shrink:0;color:var(--text-muted);font-size:10px;font-family:Monaco,Menlo,Ubuntu Mono,monospace;letter-spacing:-.5px}.op-log-item .op-log-msg{flex:1;min-width:0;word-break:break-word}.op-log-item.op-log-info{color:var(--text-primary)}.op-log-item.op-log-success{color:var(--token-color-success-500)}.op-log-panel.minimized{display:none}.op-log-restore-btn{position:fixed;right:20px;bottom:20px;z-index:1360;display:none;align-items:center;justify-content:center;padding:8px 12px;min-height:36px;border-radius:999px;border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-primary);box-shadow:0 6px 14px var(--shadow-color);font-size:13px;font-weight:600}.op-log-restore-btn.show{display:inline-flex}.op-log-item.op-log-error{color:var(--token-color-danger-500)}.op-log-item.op-log-warn{color:#f39c12}.op-log-item.op-log-loading{color:var(--token-color-brand-500)}.op-log-item.op-log-success{font-weight:500;background-color:#27ae600d}.op-log-item.op-log-error{font-weight:500;background-color:#e74c3c0d}.op-log-item.op-log-warn{font-weight:500;background-color:#f39c120d}.op-log-item.op-log-loading{font-weight:500;background-color:#3498db0d}.op-log-item.op-log-loading:after{content:"";flex-shrink:0;width:10px;height:10px;border:1.5px solid var(--token-color-brand-500);border-top-color:transparent;border-radius:50%;animation:spin .8s linear infinite;margin-left:4px}.op-log-confirm{padding:8px 12px;background:var(--bg-tertiary);border-top:1px solid var(--border-color);display:flex;align-items:center;gap:10px;flex-shrink:0;border-radius:0 0 8px 8px}.op-log-confirm-msg{flex:1;font-size:12px;color:var(--text-primary);font-weight:500}.op-log-confirm-btns{display:flex;gap:4px;flex-shrink:0}.btn-xs{padding:4px 12px;font-size:12px;border-radius:6px}.doc-item-summary{font-size:11px;color:var(--text-secondary);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-item-tags{display:flex;flex-wrap:wrap;gap:3px;margin-top:3px}.doc-item-tag{font-size:10px;padding:0 6px;background:#4a90e21a;color:var(--token-color-brand-500);border-radius:8px;line-height:18px}.doc-item-tag.ai{background:#4a90e21a;color:var(--token-color-brand-500)}.doc-item-tag.manual{background:#2eaa721f;color:#1f8f5f}.todo-panel{display:flex;flex-direction:column;gap:8px;min-height:100%}.todo-panel-tabs{display:flex;gap:6px;position:sticky;top:0;z-index:1;padding-bottom:6px;background:var(--bg-secondary)}.todo-tab{border:1px solid var(--border-color);background:var(--bg-primary);color:var(--text-secondary);border-radius:6px;padding:5px 8px;font-size:11px;font-weight:600;cursor:pointer}.todo-tab.active{background:#2eaa7224;border-color:#2eaa725c;color:#1f8f5f}.todo-list{display:flex;flex-direction:column;gap:8px}.todo-empty{padding:28px 8px;text-align:center;color:var(--text-muted);font-size:12px}.todo-error{color:var(--token-color-danger-500)}.todo-item{display:flex;flex-direction:column;gap:8px;padding:10px;border:1px solid var(--border-light);border-radius:8px;background:var(--bg-primary)}.todo-item.overdue{border-color:#e74c3c66}.todo-item.done{opacity:.68}.todo-item-main{display:flex;gap:8px;align-items:flex-start}.todo-check{width:20px;height:20px;flex:0 0 20px;border:1px solid var(--border-color);border-radius:50%;background:var(--bg-secondary);color:#1f8f5f;font-size:12px;line-height:1;cursor:pointer}.todo-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px}.todo-title-row{display:flex;align-items:center;gap:4px;min-width:0}.todo-title{font-size:13px;font-weight:600;color:var(--text-primary);flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.todo-title-ai-badge{font-size:11px;color:var(--text-muted);font-style:italic}.todo-edit-title-btn{flex:0 0 auto;border:0;background:transparent;color:var(--text-muted);cursor:pointer;font-size:13px;padding:0 2px;line-height:1;opacity:0;transition:opacity var(--motion-fast)}.todo-title-row:hover .todo-edit-title-btn{opacity:1}.todo-title-input{flex:1;min-width:0;font-size:13px;font-weight:600;color:var(--text-primary);border:1px solid var(--border-color);border-radius:4px;padding:1px 5px;background:var(--bg-primary);outline:none}.todo-title-input:focus{border-color:#2eaa7280;box-shadow:0 0 0 2px #2eaa721f}.todo-source{flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;border:0;padding:0;background:transparent;color:inherit;text-align:left;cursor:pointer}.todo-source-title{color:var(--text-primary);font-weight:700;font-size:12px}.todo-source-text{color:var(--text-secondary);font-size:12px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.todo-item-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;padding-left:28px}.todo-due{color:var(--text-muted);font-size:11px}.todo-due.overdue{color:var(--token-color-danger-500);font-weight:700}.todo-delete{border:0;background:transparent;color:var(--text-muted);cursor:pointer;font-size:11px}.todo-delete:hover{color:var(--token-color-danger-500)}.todo-create-card{max-width:420px}.todo-create-body{display:flex;flex-direction:column;gap:12px}.todo-source-preview{padding:10px;border-radius:8px;border:1px solid var(--border-light);background:var(--bg-tertiary);color:var(--text-secondary);font-size:13px;line-height:1.5;max-height:120px;overflow:auto}.todo-due-label{font-size:12px;font-weight:700;color:var(--text-primary)}.todo-due-input{width:100%;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);padding:9px 10px;font-size:14px}.todo-due-hint{margin-top:-6px;color:var(--text-secondary);font-size:12px;line-height:1.4}.todo-create-actions{display:flex;justify-content:flex-end;gap:8px}[data-theme=dark] .op-log-item{border-bottom-color:var(--border-light)}[data-theme=dark] .op-log-item:hover{background-color:#3498db1a}[data-theme=dark] .op-log-item.op-log-success{background-color:#27ae601a}[data-theme=dark] .op-log-item.op-log-error{background-color:#e74c3c1a}[data-theme=dark] .op-log-item.op-log-warn{background-color:#f39c121a}[data-theme=dark] .op-log-item.op-log-loading{background-color:#3498db1a}.search-mode-badge{display:inline-flex;align-items:center;gap:3px;padding:2px 7px;border-radius:999px;font-size:11px;font-weight:500;margin-right:6px;flex-shrink:0}.search-mode-badge.semantic{color:var(--brand-primary);background:#3370ff1a}.search-mode-badge.keyword{color:var(--text-secondary);background:var(--fill-hover)}[data-theme=dark] .search-mode-badge.semantic{color:var(--brand-primary);background:#4e83fd26}.search-stats{padding:8px 15px;font-size:12px;color:var(--sidebar-muted);display:flex;align-items:center;border-bottom:1px solid var(--border-color);background:var(--sidebar-header-bg)}.search-stats.searching{display:flex;align-items:center;gap:8px}.search-pending-dot{width:8px;height:8px;border-radius:999px;background:var(--brand-primary);animation:search-pending-pulse 1s ease-in-out infinite}@keyframes search-pending-pulse{0%,to{opacity:.35;transform:scale(.9)}50%{opacity:1;transform:scale(1)}}.search-loading-list{padding:8px 10px 4px}.search-loading-item{height:64px;border-radius:8px;margin-bottom:10px;background:linear-gradient(90deg,var(--fill-hover) 0%,var(--border-color) 50%,var(--fill-hover) 100%);background-size:220% 100%;animation:search-loading-shimmer 1.2s linear infinite}[data-theme=dark] .search-loading-item{background:linear-gradient(90deg,#ffffff0a,#ffffff14,#ffffff0a);background-size:220% 100%}@keyframes search-loading-shimmer{0%{background-position:220% 0}to{background-position:-220% 0}}.doc-item.search-result .doc-item-header{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}.relevance-score{flex-shrink:0;font-size:11px;font-weight:600;padding:2px 6px;border-radius:10px;background:var(--fill-hover);color:var(--sidebar-muted)}.relevance-score.high{background:#27ae6033;color:var(--token-color-success-500)}.relevance-score.medium{background:#f39c1233;color:#f39c12}.relevance-score.low{background:#95a5a633;color:#95a5a6}.relevance-score.keyword{background:var(--fill-active);color:var(--brand-primary)}.doc-item mark,.search-snippet mark{background:linear-gradient(120deg,#ffd60066,#f39c1266);color:inherit;padding:1px 3px;border-radius:3px;font-weight:500;box-shadow:0 0 0 1px #f39c1233;transition:all var(--motion-standard)}.doc-item mark:hover,.search-snippet mark:hover{background:linear-gradient(120deg,#ffd60099,#f39c1299);box-shadow:0 0 0 2px #f39c124d}[data-theme=dark] .doc-item mark,[data-theme=dark] .search-snippet mark{background:linear-gradient(120deg,#ffd6004d,#f39c1280);box-shadow:0 0 0 1px #f39c124d}[data-theme=dark] .doc-item mark:hover,[data-theme=dark] .search-snippet mark:hover{background:linear-gradient(120deg,#ffd60066,#f39c1299);box-shadow:0 0 0 2px #f39c1266}.doc-item mark.highlight-1,.search-snippet mark.highlight-1{background:linear-gradient(120deg,#ffd60066,#f39c1266)}.doc-item mark.highlight-2,.search-snippet mark.highlight-2{background:linear-gradient(120deg,#3498db66,#2980b966);box-shadow:0 0 0 1px #3498db33}.doc-item mark.highlight-3,.search-snippet mark.highlight-3{background:linear-gradient(120deg,#9b59b666,#8e44ad66);box-shadow:0 0 0 1px #9b59b633}.doc-item mark.highlight-4,.search-snippet mark.highlight-4{background:linear-gradient(120deg,#2ecc7166,#27ae6066);box-shadow:0 0 0 1px #2ecc7133}.search-snippet{font-size:12px;color:var(--sidebar-muted);line-height:1.5;margin-top:4px;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;white-space:normal;word-break:break-word}.doc-item-tag.matched{background:var(--fill-active);border-color:var(--brand-primary)}.doc-item-tag.manual.matched{background:#2eaa723d;border-color:#1f8f5f}[data-theme=dark] .doc-item-tag.matched{background:var(--fill-active);border-color:var(--brand-primary)}[data-theme=dark] .doc-item-tag.manual.matched{background:#2eaa7252}.empty-state small{display:block;margin-top:8px}.chat-modal.modal-slide-right .chat-content{width:100%;max-width:440px;height:100vh;max-height:100vh;border-radius:0;transform:translate(100%);transition:transform var(--motion-elastic),max-width var(--motion-elastic);display:flex;flex-direction:column;padding:0;overflow:hidden;position:relative}.chat-resize-handle{position:absolute;left:-5px;top:0;width:10px;height:100%;cursor:col-resize;background:transparent;z-index:1000;transition:background var(--motion-standard)}.chat-resize-handle:hover{background:var(--accent-color, rgba(59, 130, 246, .1))}.chat-content.chat-resizing{transition:none!important}.chat-modal.modal-slide-right .chat-content.chat-panel-open{transform:translate(0)}.chat-modal.modal-slide-right .chat-header{cursor:default}.chat-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:var(--modal-bg);border-bottom:1px solid var(--border-color);cursor:grab}.chat-header h3{margin:0;font-size:16px}.chat-content.chat-content-positioned{position:fixed;margin:0}.chat-content.chat-dragging .chat-header{cursor:grabbing}.chat-header-actions{display:flex;align-items:center;gap:8px}.chat-header-actions button{cursor:pointer}.chat-clear-btn{background:none;border:none;font-size:16px;cursor:pointer;opacity:.6;transition:opacity var(--motion-standard)}.chat-clear-btn:hover{opacity:1}.chat-history-btn{background:none;border:none;color:var(--text-secondary);opacity:.75;transition:color var(--motion-standard),opacity var(--motion-standard),background var(--motion-standard)}.chat-history-btn:hover,.chat-history-btn.active{color:var(--text-primary);opacity:1;background:var(--fill-active)}.chat-history-panel{position:absolute;top:57px;left:0;right:0;z-index:20;display:flex;flex-direction:column;max-height:min(520px,calc(100% - 112px));background:var(--modal-bg);border-bottom:1px solid var(--border-color);box-shadow:0 18px 42px #0f172a29}.chat-history-panel[hidden]{display:none}.chat-history-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--border-light)}.chat-history-title{font-size:14px;font-weight:700;color:var(--text-primary)}.chat-history-subtitle{margin-top:2px;font-size:12px;color:var(--text-muted)}.chat-history-actions{display:flex;align-items:center;gap:8px;flex-shrink:0}.chat-history-new-btn{min-height:32px;padding:0 10px;font-size:12px}.chat-history-close-btn{width:32px;height:32px;border:1px solid var(--border-light);border-radius:8px;background:var(--bg-secondary);color:var(--text-secondary);font-size:20px;line-height:1}.chat-history-list{overflow-y:auto;padding:8px}.chat-history-empty,.chat-history-error{padding:24px 12px;text-align:center;color:var(--text-muted);font-size:13px}.chat-history-error{color:var(--danger-color)}.chat-history-item{display:flex;align-items:stretch;gap:8px;border-bottom:1px solid var(--border-light);padding:6px 0}.chat-history-item:last-child{border-bottom:none}.chat-history-load{flex:1 1 auto;min-width:0;display:block;text-align:left;border:0;border-radius:8px;background:transparent;color:inherit;padding:9px 10px;cursor:pointer}.chat-history-load:hover{background:var(--bg-tertiary)}.chat-history-item.active .chat-history-load{background:var(--fill-active)}.chat-history-item-title{display:flex;align-items:center;gap:8px;min-width:0;font-size:13px;font-weight:700;color:var(--text-primary)}.chat-history-item-title span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-history-current{flex-shrink:0;border-radius:999px;background:var(--fill-active);color:var(--brand-primary);padding:2px 6px;font-size:11px;font-weight:700}.chat-history-item-preview{margin-top:4px;color:var(--text-secondary);font-size:12px;line-height:1.45;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.chat-history-item-meta{margin-top:6px;display:flex;flex-wrap:wrap;gap:6px;color:var(--text-muted);font-size:11px}.chat-history-delete{width:34px;min-width:34px;margin:8px 4px 8px 0;border:0;border-radius:8px;background:transparent;color:var(--text-muted);cursor:pointer}.chat-history-delete:hover{background:#ef44441a;color:var(--danger-color)}.chat-messages{flex:1;overflow-y:auto;padding:20px;background:var(--bg-tertiary);display:flex;flex-direction:column;gap:16px}.chat-welcome{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;color:var(--text-muted)}.chat-welcome-icon{font-size:48px;display:flex;align-items:center;justify-content:center;width:56px;height:56px;background:var(--fill-active);border-radius:16px;margin:0 auto 16px;color:var(--brand-primary)}.chat-welcome-text{font-size:14px;line-height:1.6;max-width:300px}.chat-suggestions{margin-top:16px;display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:320px}.chat-suggestion{border:1px solid var(--border-light);border-radius:999px;background:var(--bg-secondary);color:var(--text-primary);padding:7px 11px;font-size:12px;line-height:1;cursor:pointer;transition:border-color var(--motion-standard),color var(--motion-standard),background var(--motion-standard)}.chat-suggestion:hover{border-color:#3498db73;color:var(--token-color-brand-500);background:#3498db14}.chat-message{display:flex;gap:12px;max-width:85%;animation:chatFadeIn var(--motion-emphasized);min-width:0}@keyframes chatFadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-message.user{align-self:flex-end;flex-direction:row-reverse}.chat-message.assistant{align-self:flex-start;width:min(100%,920px);max-width:100%}.chat-avatar{width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}.chat-message.user .chat-avatar{background:var(--token-color-brand-500)}.chat-message.assistant .chat-avatar{background:var(--color-ai)}.chat-bubble{padding:12px 16px;border-radius:16px;font-size:14px;line-height:1.6;word-break:break-word;min-width:0}.chat-message.user .chat-bubble{background:var(--token-color-brand-500);color:var(--token-color-ink-0);border-bottom-right-radius:4px}.chat-message.assistant .chat-bubble{background:var(--bg-secondary);color:var(--text-primary);border-bottom-left-radius:4px;width:100%;overflow:hidden}.chat-message.assistant .chat-error-bubble{border:1px solid rgba(231,76,60,.32);background:#e74c3c14}.chat-message.assistant .chat-error-body{color:#c0392b;white-space:pre-wrap}.chat-error-title{font-size:13px;font-weight:700;margin-bottom:6px}.chat-error-text{margin:0;white-space:pre-wrap;word-break:break-word;font:inherit;color:inherit}.chat-retry-btn{margin-top:10px;border:1px solid rgba(231,76,60,.35);background:var(--bg-primary);color:#c0392b;border-radius:999px;padding:5px 12px;font-size:12px;cursor:pointer}.chat-retry-btn:hover{border-color:#e74c3ca6;background:#e74c3c14}.chat-message.assistant .chat-bubble .markdown-body{font-size:14px;overflow-wrap:break-word;word-break:normal}.chat-message.assistant .chat-bubble .markdown-body p:first-child{margin-top:0}.chat-message.assistant .chat-bubble .markdown-body p:last-child{margin-bottom:0}.chat-message.assistant .markdown-body .chat-table-scroll{width:100%;margin:12px 0 16px;overflow-x:auto;border:1px solid var(--table-border);border-radius:10px;background:var(--bg-primary);-webkit-overflow-scrolling:touch}.chat-message.assistant .markdown-body .chat-table-scroll table{width:max-content;min-width:100%;margin:0;border:0;table-layout:auto}.chat-message.assistant .markdown-body .chat-table-scroll th,.chat-message.assistant .markdown-body .chat-table-scroll td{min-width:120px;max-width:320px;padding:9px 12px;vertical-align:top;white-space:normal;overflow-wrap:anywhere;word-break:normal}.chat-message.assistant .markdown-body .chat-table-scroll th:first-child,.chat-message.assistant .markdown-body .chat-table-scroll td:first-child{min-width:96px}.chat-assistant-actions{margin-top:10px;display:flex;justify-content:flex-end;gap:8px}.ask-sources-wrap{margin-top:14px;border-top:1px solid var(--border-light);padding-top:10px}.ask-sources-title{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:12px;font-weight:700;color:var(--text-secondary);margin-bottom:8px}.ask-sources-title span{font-size:11px;font-weight:600;color:var(--text-muted)}.ask-source-item{width:100%;border:1px solid var(--border-light);border-radius:8px;background:var(--bg-primary);color:var(--text-primary);display:flex;align-items:center;gap:8px;padding:7px 9px;margin-bottom:6px;text-align:left;cursor:pointer;transition:border-color var(--motion-fast),background-color var(--motion-fast)}.ask-source-item:hover{border-color:#3498db80}.ask-source-item.source-high{border-color:#2ecc7159}.ask-source-item.source-low{opacity:.86}.ask-source-index{width:18px;height:18px;border-radius:999px;background:#3498db24;color:var(--token-color-brand-500);font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ask-source-main{min-width:0;flex:1;display:flex;align-items:center;justify-content:space-between;gap:10px}.ask-source-title{font-size:12px;font-weight:600;line-height:1.35;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ask-source-meta{font-size:10px;color:var(--text-secondary);flex-shrink:0}.ask-mode-tabs{display:flex;flex-wrap:wrap;gap:8px}.ask-advanced-controls{border-top:1px solid var(--border-light);padding-top:8px}.ask-controls-summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:10px;color:var(--text-secondary);font-size:12px;user-select:none}.ask-controls-summary::-webkit-details-marker{display:none}.ask-controls-summary:after{content:"";width:7px;height:7px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform var(--motion-standard);flex-shrink:0}.ask-advanced-controls[open] .ask-controls-summary:after{transform:rotate(-135deg)}.ask-controls-summary span:last-child{margin-left:auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--text-muted)}.ask-controls-panel{padding-top:10px;display:flex;flex-direction:column;gap:10px}.ask-mode-tab{border:1px solid var(--border-light);background:var(--bg-primary);color:var(--text-secondary);border-radius:999px;padding:6px 12px;font-size:12px;font-weight:600;cursor:pointer;transition:all var(--motion-standard)}.ask-mode-tab:hover{border-color:#3498db73;color:var(--text-primary)}.ask-mode-tab.active{background:#3498db1f;border-color:#3498db73;color:var(--token-color-brand-500)}.ask-mode-hint{display:none}.chat-run-context,.ask-evidence-summary{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.chat-run-context span,.ask-evidence-summary span{display:inline-flex;align-items:center;min-height:22px;padding:3px 8px;border-radius:999px;background:#3498db1a;color:#2478ad;font-size:11px;font-weight:700;line-height:1.2}.ask-evidence-summary{margin-bottom:10px}.ask-evidence-summary span{background:var(--bg-tertiary);color:var(--text-secondary)}.ask-plan-wrap,.ask-tool-log-wrap,.ask-artifacts-wrap{margin-top:10px;border-top:1px dashed var(--border-color);padding-top:8px}.ask-section-title{font-size:11px;color:var(--text-secondary);margin-bottom:6px}.ask-plan-list,.ask-tool-log-list{display:flex;flex-direction:column;gap:6px}.ask-plan-item,.ask-tool-log-item,.ask-artifact-card{border:1px solid var(--border-light);border-radius:10px;background:var(--bg-primary);padding:8px 10px}.ask-plan-item{display:flex;gap:8px;align-items:flex-start}.ask-plan-index{width:18px;height:18px;border-radius:999px;background:#2ecc7124;color:var(--token-color-success-500);font-size:10px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.ask-plan-text,.ask-tool-log-summary,.ask-artifact-content{font-size:12px;line-height:1.5;color:var(--text-primary)}.ask-tool-log-item{display:flex;gap:8px;align-items:center;justify-content:space-between}.ask-tool-log-name{font-size:11px;font-weight:700;color:var(--token-color-brand-500);letter-spacing:.02em;text-transform:uppercase}.ask-tool-log-summary{color:var(--text-secondary);text-align:right}.ask-artifact-card{display:flex;flex-direction:column;gap:4px}.ask-artifact-title{font-size:12px;font-weight:700;color:var(--text-primary)}.ask-artifact-meta{font-size:11px;color:var(--text-secondary)}.chat-status-note{margin-top:8px;font-size:11px;color:var(--text-muted)}.chat-send-btn.is-streaming{background:#e74c3c1f;color:var(--token-color-danger-500)}.chat-stopped-actions{margin-top:10px}.chat-copy-btn,.chat-apply-btn{border:1px solid var(--border-light);background:var(--bg-primary);color:var(--text-primary);border-radius:14px;padding:4px 10px;font-size:12px;cursor:pointer;transition:all var(--motion-standard);display:inline-flex;align-items:center;gap:4px}.chat-copy-btn:hover,.chat-apply-btn:hover{border-color:var(--token-color-brand-500);color:var(--token-color-brand-500)}.chat-apply-btn.active{border-color:var(--token-color-brand-500);color:var(--token-color-brand-500);background:#3498db14}.chat-apply-btn:disabled{cursor:default;opacity:.8;color:var(--token-color-success-500);border-color:#27ae6073}.chat-stream-body:after{content:"\258d";display:inline-block;animation:blink-cursor .7s step-end infinite;font-size:.9em;color:var(--brand-primary);margin-left:1px}.chat-stream-body.chat-error-body:after{display:none}@keyframes blink-cursor{0%,to{opacity:1}50%{opacity:0}}.chat-typing{display:flex;gap:4px;padding:8px 0}.chat-typing span{width:8px;height:8px;background:var(--text-muted);border-radius:50%;animation:chatTyping 1.4s infinite ease-in-out both}.chat-typing span:nth-child(1){animation-delay:-.32s}.chat-typing span:nth-child(2){animation-delay:-.16s}@keyframes chatTyping{0%,80%,to{transform:scale(.6);opacity:.5}40%{transform:scale(1);opacity:1}}.chat-input-area{display:flex;flex-direction:column;gap:10px;padding:16px 20px;background:var(--modal-bg);border-top:1px solid var(--border-color)}.chat-input-row{display:flex;gap:12px;align-items:flex-end}.chat-context-toggle{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--text-secondary);cursor:pointer;user-select:none;line-height:1.3}.chat-context-toggle[hidden]{display:none}.chat-context-toggle input{margin:0;accent-color:var(--token-color-brand-500)}.ask-context-word-count{font-size:11px;color:var(--text-muted);margin-left:4px;white-space:nowrap}.chat-input{flex:1;padding:12px 16px;border:1px solid var(--border-color);border-radius:24px;font-size:14px;background:var(--bg-tertiary);color:var(--text-primary);resize:none;max-height:120px;line-height:1.5;font-family:inherit}.chat-input:focus{outline:none;border-color:var(--token-color-brand-500)}.chat-input::placeholder{color:var(--text-muted)}.chat-send-btn{width:44px;height:44px;border:none;border-radius:50%;background:var(--token-color-brand-500);color:var(--token-color-ink-0);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background var(--motion-standard),transform var(--motion-fast);flex-shrink:0}.chat-send-btn:hover{background:#2980b9}.chat-send-btn:active{transform:scale(.95)}.chat-send-btn:disabled{background:var(--text-muted);cursor:not-allowed}[data-theme=dark] .chat-messages{background:var(--bg-primary)}[data-theme=dark] .chat-message.assistant .chat-bubble{background:var(--bg-tertiary)}@media(max-width:768px){:root{--mobile-bottom-nav-height: 62px}.app-container{height:100dvh}.workspace-header-stack{position:sticky;top:0;z-index:40;max-height:120px;overflow:hidden;transition:max-height var(--motion-standard),opacity var(--motion-standard)}.main-content.header-hidden .workspace-header-stack{max-height:0;opacity:0;pointer-events:none}.editor-pane .pane-header,.preview-pane .pane-header{max-height:60px;overflow:hidden;transition:max-height var(--motion-standard),opacity var(--motion-standard),padding var(--motion-standard),border-color var(--motion-standard)}.main-content.header-hidden .editor-pane .pane-header,.main-content.header-hidden .preview-pane .pane-header{max-height:0;opacity:0;padding-top:0;padding-bottom:0;border-bottom-color:transparent}.toolbar{padding:10px 12px;gap:10px;flex-wrap:wrap;overflow-x:visible}.workspace-toolbar{position:relative}.workspace-toolbar .toolbar-left{width:100%;display:grid;grid-template-columns:32px minmax(0,1fr) auto;align-items:center;column-gap:8px;row-gap:0;padding-right:126px}.workspace-toolbar .mobile-top-tools{display:flex!important;align-items:center;justify-content:flex-start;gap:0;width:auto;max-width:none;min-width:0;grid-column:1;grid-row:1;overflow:hidden}.workspace-toolbar .mobile-brand-badge{flex:0 0 auto;width:32px;height:32px;border-radius:9px;justify-content:center;background:var(--bg-tertiary);border:1px solid var(--border-color)}.workspace-toolbar .mobile-brand-text{display:none}.workspace-toolbar .mobile-top-tools .mobile-doc-btn{flex:0 0 auto;min-height:34px;min-width:84px;padding:0 10px;border-radius:10px;font-size:13px;font-weight:600;white-space:nowrap}.document-title-block,.workspace-toolbar .document-title-block{width:100%;grid-column:2;grid-row:1;flex:none;min-width:0}.workspace-toolbar .title-input{max-width:none;width:100%;min-height:42px;font-size:16px;border-radius:10px}.workspace-toolbar .save-status{grid-column:3;grid-row:1;margin-left:0;align-self:center;justify-self:start;font-size:12px;padding:2px 6px;font-weight:600}.workspace-toolbar .toolbar-right{position:absolute;top:7px;right:8px;z-index:3;order:0;width:auto;display:block}.toolbar-divider{display:none}.workspace-toolbar .toolbar-right>.btn{display:none}.workspace-toolbar .toolbar-right .toolbar-menu-wrap,.workspace-toolbar #saveBtn,.workspace-toolbar #historyBtn,.workspace-toolbar #deleteBtn{display:none}.user-actions{margin-left:auto}.workspace-toolbar .user-actions{position:static;display:inline-flex;align-items:center;gap:4px;margin-left:0}.username-display{max-width:38vw;overflow:hidden;text-overflow:ellipsis}.workspace-toolbar .user-actions .username-display{display:none}.workspace-toolbar .user-actions .btn-icon,.workspace-toolbar .user-actions .theme-toggle{min-width:32px;min-height:32px;padding:4px;border-radius:9px;background:var(--bg-tertiary);border:1px solid var(--border-color)}.workspace-toolbar .user-actions .theme-toggle.auto-mode{box-shadow:none;border-color:var(--border-color)}.workspace-toolbar .user-actions #userPrefsBtn{display:none}.mobile-view-toggle{display:none!important}.mobile-view-toggle button{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:0 16px;border-radius:999px;border:1px solid var(--border-color);background:var(--bg-tertiary);font-size:13px;font-weight:700;line-height:1;white-space:nowrap;cursor:pointer;color:var(--text-secondary)}.mobile-view-toggle button.active{color:var(--token-color-ink-0);background:var(--token-color-brand-500);border-color:var(--token-color-brand-500)}.main-content{height:calc(100dvh - var(--mobile-bottom-nav-height) - env(safe-area-inset-bottom));overflow:hidden}.editor-container{height:100%;min-height:0;padding:8px;gap:8px}.editor-pane,.preview-pane{display:none;min-height:0;border-radius:10px}.editor-pane.active,.preview-pane.active{display:flex}.pane-header{padding:10px 12px}.CodeMirror{font-size:16px}#preview{padding:14px}.sidebar{width:min(86vw,340px);left:calc(-1*min(86vw,340px));z-index:1200}.sidebar.open{left:0}.sidebar-overlay{z-index:1100;backdrop-filter:blur(2px)}.sidebar-header{padding:16px 14px;gap:12px}.search-box{padding:10px 12px}.doc-filter-toolbar{padding:8px 10px 4px}.search-box input{min-height:42px;border-radius:10px;font-size:16px}.doc-list{padding:10px}.doc-item{padding:12px;margin-bottom:8px;border-radius:10px}.doc-item-title{font-size:15px}.doc-item-date{font-size:12px}.doc-favorite-btn{font-size:16px}.mobile-editor-toolbar{position:fixed;left:0;right:0;bottom:calc(var(--mobile-bottom-nav-height) + env(safe-area-inset-bottom));z-index:1250;display:flex;align-items:center;gap:2px;padding:6px 10px;overflow-x:auto;-webkit-overflow-scrolling:touch;background:var(--bg-secondary);border-top:1px solid var(--border-color);backdrop-filter:blur(10px);scrollbar-width:none}.mobile-editor-toolbar::-webkit-scrollbar{display:none}.mobile-editor-toolbar button{flex:0 0 auto;min-width:38px;min-height:36px;padding:0 8px;border:1px solid var(--border-color);border-radius:8px;background:var(--bg-tertiary);color:var(--text-primary);font-size:14px;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.mobile-editor-toolbar button:active{background:var(--bg-primary);transform:scale(.93)}.mobile-toolbar-divider{width:1px;height:20px;background:var(--border-color);margin:0 4px;flex-shrink:0}[data-theme=dark] .mobile-editor-toolbar{background:#081224eb;border-top-color:#94a3b824}body.modal-open .mobile-editor-toolbar{display:none!important}.editor-pane .pane-header .editor-actions{display:none}.mobile-bottom-nav{height:var(--mobile-bottom-nav-height);padding:6px 6px calc(8px + env(safe-area-inset-bottom));backdrop-filter:blur(10px);box-shadow:0 -8px 24px #0f172a1f;z-index:1300}.op-log-panel{right:10px;bottom:calc(var(--mobile-bottom-nav-height) + env(safe-area-inset-bottom) + 10px);width:min(340px,calc(100vw - 20px));min-width:0;max-height:34vh;z-index:1350}.op-log-panel.minimized{display:none}.op-log-restore-btn{right:10px;bottom:calc(var(--mobile-bottom-nav-height, 62px) + env(safe-area-inset-bottom) + 10px)}.mobile-bottom-nav button{border-radius:14px;min-height:46px;background:#ffffffb8;border:1px solid rgba(15,23,42,.06);color:#15324d;font-weight:700;text-shadow:none;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.mobile-bottom-nav button .icon{font-size:18px;color:inherit}.mobile-bottom-nav button span:last-child{color:inherit;letter-spacing:.01em}.mobile-bottom-nav button:active{background:var(--bg-tertiary)}[data-theme=dark] .mobile-bottom-nav{background:#081224e6;border-top:1px solid rgba(148,163,184,.14);box-shadow:0 -10px 28px #0208176b}[data-theme=dark] .mobile-bottom-nav button{background:#ffffff14;border-color:#94a3b829;color:#eef4ff}[data-theme=dark] .mobile-bottom-nav button:active{background:#60a5fa2e;border-color:#60a5fa47}body.modal-open .mobile-bottom-nav{transform:translateY(120%);pointer-events:none}body.login-mode .mobile-bottom-nav{display:none!important}.mobile-more-content{border-radius:20px 20px 0 0;max-height:78vh;padding-bottom:max(14px,env(safe-area-inset-bottom))}.mobile-more-header{position:sticky;top:0;z-index:1;padding:14px 16px;background:var(--bg-primary)}.mobile-more-close{width:40px;height:40px}.mobile-more-item{padding:14px 16px;min-height:50px;font-size:15px}.modal{align-items:flex-end;padding:10px}.modal-content{width:100%;max-width:100%;max-height:calc(100dvh - 20px);margin:0;border-radius:16px 16px 12px 12px}.modal-header{padding:12px 14px}.recycle-modal-header{padding:12px;align-items:flex-start}.recycle-modal-title{min-height:42px}.recycle-modal-header-actions{margin-left:auto}.recycle-modal-header-actions #purgeAllRecycleBtn{min-height:42px;padding-inline:12px}.recycle-modal-close{width:44px;height:44px}.modal-body{padding:12px 14px}.recycle-item{flex-direction:column;align-items:flex-start;padding:12px}.recycle-item-actions{width:100%}.recycle-item-actions .btn{flex:1 1 0;justify-content:center}.modal-actions{display:flex;flex-wrap:wrap}.modal-actions .btn{flex:1 1 calc(50% - 6px);min-height:40px;justify-content:center}.chat-modal{align-items:flex-end;justify-content:stretch;padding:0}.chat-modal.modal-slide-right .chat-content,.chat-modal .chat-content{width:100%;max-width:100%;height:88dvh;max-height:88dvh;border-radius:20px 20px 0 0;transform:translateY(100%);transition:transform var(--motion-elastic)}.chat-modal.modal-slide-right .chat-content.chat-panel-open,.chat-modal[style*="display: flex"] .chat-content,.chat-modal[style*="display:flex"] .chat-content{transform:translateY(0)}.chat-header:before{content:"";display:block;position:absolute;top:-12px;left:50%;transform:translate(-50%);width:36px;height:4px;background:#ffffff40;border-radius:2px}.chat-modal .chat-header{position:relative;padding-top:16px;cursor:default}.chat-history-panel{top:57px;max-height:calc(88dvh - 124px)}.chat-history-panel-head{align-items:flex-start;padding:12px 14px}.chat-content.chat-content-positioned{position:relative;left:auto!important;top:auto!important}.chat-messages{padding:14px;gap:12px}.chat-message{max-width:94%}.chat-welcome{padding:28px 10px}.chat-suggestions{max-width:100%;gap:7px}.chat-suggestion{padding:7px 10px}.chat-input-area{gap:10px;padding:10px 12px calc(10px + env(safe-area-inset-bottom));position:sticky;bottom:0}.ask-mode-tabs{gap:6px}.ask-mode-tab{padding:6px 10px;font-size:11px}.chat-input-row{gap:10px}.chat-input{font-size:16px;min-height:42px;max-height:96px}.chat-send-btn{width:42px;height:42px}.markdown-body table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}.login-page{min-height:100dvh;padding:14px}.login-card{width:100%;max-width:430px;margin:0 auto;padding:18px 14px 20px}.login-site-description{font-size:12px}.login-header{margin-bottom:10px}.login-logo-img{width:66px;height:66px;border-radius:16px}.login-input,.login-btn,.login-send-btn{min-height:44px}.login-qq-copy strong{font-size:14px}.reauth-modal .modal-content{max-height:calc(100dvh - 20px)}}@media(min-width:769px){.workspace-toolbar .mobile-top-tools{display:none!important}}@media(max-width:560px){.workspace-toolbar .toolbar-left{padding-right:118px}.workspace-toolbar .mobile-top-tools{max-width:calc(100% - 118px)}.username-display,.ai-model-label{display:none}.model-select{width:100%;max-width:none}.mobile-view-toggle button[data-view]{font-size:14px;min-width:76px;min-height:34px;padding:0 10px}.chat-header h3{font-size:15px}.search-snippet{font-size:11px}}@media(max-width:430px){:root{--mobile-bottom-nav-height: 58px}.toolbar{padding:8px 10px;gap:8px}.workspace-toolbar .toolbar-left{padding-right:114px}.workspace-toolbar .mobile-top-tools{max-width:calc(100% - 114px);gap:6px}.workspace-toolbar .mobile-brand-badge{width:30px;height:30px}.workspace-toolbar .mobile-top-tools .mobile-doc-btn{min-height:32px;padding:0 8px;font-size:12px;min-width:78px}.workspace-toolbar .save-status{font-size:11px;padding:2px 6px}.workspace-ai-toolbar{padding:4px 8px 6px;gap:5px}.ai-tool-btn{min-height:32px;padding:0 9px;font-size:12px}.model-select{width:100%;min-height:33px;font-size:13px}.mobile-view-toggle{gap:6px;padding:0}.mobile-view-toggle button[data-view]{min-height:32px;min-width:72px;padding:0 10px;font-size:13px}.mobile-bottom-nav button{font-size:11px;gap:2px}.mobile-bottom-nav button .icon{font-size:17px}.mobile-more-item{font-size:14px;padding:12px 14px;min-height:48px}.modal-header h3{font-size:16px}.chat-header h3{font-size:14px}.chat-avatar{width:28px;height:28px;font-size:14px}.chat-bubble{font-size:13px;padding:10px 12px}.chat-message.assistant .chat-bubble .markdown-body{font-size:13px}.chat-input-area{padding:8px 10px calc(8px + env(safe-area-inset-bottom))}.chat-context-toggle{font-size:12px}.chat-input{min-height:40px;font-size:15px}.chat-send-btn{width:40px;height:40px}.login-card{padding:16px 12px 18px}.login-logo-img{width:60px;height:60px}}@media(max-width:390px){.char-count,.ai-model-label{display:none}.model-select{width:100%}.sidebar{width:88vw;left:-88vw}.main-title{font-size:1.05rem}.sub-title{font-size:.7rem}.doc-item{padding:10px}.doc-item-title{font-size:14px}.mobile-bottom-nav button span:last-child{font-size:10px}.modal-actions .btn{flex-basis:100%}}@media(max-width:360px){.sidebar{width:90vw;left:-90vw}.sub-title{display:none}.mobile-bottom-nav button span:last-child{display:none}.mobile-bottom-nav button .icon{font-size:20px}.chat-message{max-width:98%}}@media only screen and (device-width:430px)and (device-height:932px)and (-webkit-device-pixel-ratio:3)and (orientation:portrait){:root{--mobile-bottom-nav-height: 62px}.toolbar{padding:10px 12px;gap:10px}.workspace-toolbar .toolbar-left{padding-right:122px}.workspace-toolbar .mobile-top-tools{max-width:calc(100% - 122px)}.workspace-toolbar .title-input{min-height:44px;font-size:16px}.workspace-ai-toolbar{padding:5px 9px 7px;gap:6px}.ai-tool-btn{min-height:34px;font-size:13px}.model-select{width:100%;min-height:34px;font-size:14px}.sidebar{width:min(82vw,340px);left:calc(-1*min(82vw,340px))}.mobile-view-toggle{gap:6px;padding:0}.mobile-view-toggle button[data-view]{min-height:34px;min-width:76px;font-size:13px;padding:0 10px}.mobile-bottom-nav{padding-bottom:calc(8px + env(safe-area-inset-bottom))}.mobile-bottom-nav button{font-size:12px;gap:3px}.mobile-bottom-nav button .icon{font-size:18px}.mobile-more-item{min-height:50px;font-size:15px}.chat-header h3{font-size:15px}.chat-bubble{font-size:14px;padding:11px 14px}.chat-message.assistant .chat-bubble .markdown-body{font-size:14px}.chat-input{min-height:42px;font-size:16px}.login-card{max-width:408px;padding:24px 18px}}@media only screen and (device-width:932px)and (device-height:430px)and (-webkit-device-pixel-ratio:3)and (orientation:landscape){.mobile-bottom-nav{height:56px;padding-bottom:max(6px,env(safe-area-inset-bottom))}.workspace-header-stack{position:relative}}.wiki-inbox-modal{position:fixed;inset:0;background:#00000073;display:flex;align-items:center;justify-content:center;z-index:9999}.wiki-inbox-dialog{background:var(--panel-bg,var(--token-color-ink-0));color:var(--text-color,#222);width:min(960px,92vw);max-height:88vh;border-radius:10px;display:flex;flex-direction:column;box-shadow:0 12px 40px #0000004d;overflow:hidden}.wiki-inbox-header{display:flex;align-items:center;gap:12px;padding:12px 16px;border-bottom:1px solid var(--border-color,#e5e7eb)}.wiki-inbox-title{font-weight:600;font-size:15px}.wiki-inbox-tabs{display:flex;gap:4px;flex:1;justify-content:center;flex-wrap:wrap}.wiki-inbox-tab{background:transparent;border:1px solid transparent;padding:6px 10px;border-radius:6px;cursor:pointer;font-size:13px;color:inherit}.wiki-inbox-tab.active{background:var(--accent-color,#3b82f6);color:var(--token-color-ink-0)}.wiki-inbox-tab .count{display:inline-block;min-width:18px;text-align:center;background:#00000014;border-radius:9px;padding:0 6px;margin-left:4px;font-size:11px}.wiki-inbox-tab.active .count{background:#ffffff40}.wiki-inbox-close-btn{background:transparent;border:0;font-size:22px;line-height:1;cursor:pointer;color:inherit}.wiki-inbox-body{flex:1;overflow:auto;padding:14px 18px;display:flex;flex-direction:column;gap:12px;background:var(--bg-secondary,#f9fafb)}.wiki-inbox-empty{padding:32px;text-align:center;color:var(--text-secondary,#6b7280);font-size:13px}.wiki-inbox-card{background:var(--panel-bg,var(--token-color-ink-0));border:1px solid var(--border-color,#e5e7eb);border-radius:8px;padding:12px 14px;display:flex;flex-direction:column;gap:8px}.wiki-inbox-card-head{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:12px;color:var(--text-secondary,#6b7280)}.wiki-inbox-kind{display:inline-block;padding:2px 8px;border-radius:10px;background:#eef2ff;color:#4338ca;font-weight:600;text-transform:uppercase;letter-spacing:.04em;font-size:11px}.wiki-inbox-kind.kind-create{background:#dcfce7;color:#166534}.wiki-inbox-kind.kind-update{background:#fef3c7;color:#92400e}.wiki-inbox-kind.kind-archive{background:#fee2e2;color:#991b1b}.wiki-inbox-kind.kind-merge{background:#fce7f3;color:#9d174d}.wiki-inbox-kind.kind-split{background:#e0f2fe;color:#075985}.wiki-inbox-kind.kind-writeback{background:#ede9fe;color:#5b21b6}.wiki-inbox-kind.kind-question{background:var(--token-color-ink-0)beb;color:#92400e}.wiki-inbox-kind.kind-policy{background:#f3f4f6;color:#374151}.wiki-inbox-path{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:12px;color:var(--text-color,#1f2937)}.wiki-inbox-time{margin-left:auto}.wiki-inbox-reason{font-size:13px;line-height:1.5}.wiki-inbox-context{font-size:12px;color:var(--text-secondary,#6b7280)}.wiki-inbox-diff{margin:0;background:var(--bg-tertiary,#f3f4f6);padding:8px 10px;border-radius:6px;font-size:12px;white-space:pre-wrap;max-height:200px;overflow:auto}.wiki-inbox-refs code{background:#6366f114;padding:1px 6px;border-radius:4px;margin-right:4px;font-size:11px}.wiki-inbox-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.wiki-inbox-actions textarea{flex:1;min-width:200px;border:1px solid var(--border-color,#d1d5db);border-radius:6px;padding:6px 8px;font:inherit}.wiki-inbox-form{display:flex;flex-direction:column;gap:8px;font-size:13px}.wiki-inbox-form fieldset{border:1px solid var(--border-color,#e5e7eb);border-radius:6px;padding:8px 10px}.wiki-inbox-form fieldset legend{padding:0 4px;font-size:12px;color:var(--text-secondary,#6b7280)}.wiki-inbox-form label{display:flex;align-items:center;gap:6px}.wiki-inbox-form input[type=number]{width:96px;border:1px solid var(--border-color,#d1d5db);border-radius:4px;padding:2px 6px}.wiki-inbox-footer{display:flex;justify-content:flex-end;gap:8px;padding:10px 16px;border-top:1px solid var(--border-color,#e5e7eb);background:var(--panel-bg,var(--token-color-ink-0))}.wiki-inbox-badge{margin-left:6px;background:#ef4444;color:var(--token-color-ink-0);border-radius:9px;padding:0 6px;font-size:11px}.recycle-item{transition:opacity var(--motion-emphasized),transform var(--motion-emphasized),background-color var(--motion-standard)}.recycle-item.is-restoring{background-color:var(--token-color-success-50);transform:scale(1.02);opacity:0}.recycle-item.is-purging{background-color:var(--token-color-danger-50);transform:scale(.98);opacity:0}.doc-related-panel{margin:16px 0 24px;padding:12px 14px;border-top:1px dashed var(--border-color);font-size:12px;color:var(--text-secondary)}.doc-related-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.doc-related-title{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text-secondary);letter-spacing:.02em}.doc-related-refresh{background:transparent;border:1px solid var(--border-color);color:var(--text-secondary);border-radius:6px;padding:2px 8px;font-size:11px;cursor:pointer;transition:background-color var(--motion-fast)}.doc-related-refresh:hover{background-color:var(--bg-tertiary)}.doc-related-list{display:flex;flex-direction:column;gap:0}.doc-related-row{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:12px;padding:8px 10px;border-radius:8px;border:1px solid transparent;transition:opacity var(--motion-standard),background-color var(--motion-fast),border-color var(--motion-fast)}.doc-related-row:hover{background-color:var(--bg-tertiary)}.doc-related-row.is-removing{opacity:0;transform:translate(8px)}.doc-related-row.is-accepted{background-color:var(--token-color-brand-50, var(--bg-tertiary));border-color:var(--token-color-brand-100, transparent);box-shadow:inset 3px 0 0 0 var(--token-color-brand-500, var(--brand-primary));padding-left:13px}.doc-related-row.is-accepted:hover{background-color:var(--token-color-brand-100, var(--bg-tertiary))}.doc-related-row-title{appearance:none;-webkit-appearance:none;background:transparent;border:0;padding:0;margin:0;text-align:left;font:inherit;font-size:13px;font-weight:500;color:var(--text-primary);cursor:pointer;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0;line-height:1.4}.doc-related-row-title:hover{color:var(--brand-color, var(--token-color-brand-500))}.doc-related-row-title:focus-visible{outline:2px solid var(--brand-color, var(--token-color-brand-500));outline-offset:2px;border-radius:2px}.doc-related-strength[data-action=toggle-preview]{cursor:pointer}.doc-related-preview{grid-column:1 / -1;margin-top:8px;padding-top:8px;border-top:1px dashed var(--border-color, var(--bg-tertiary));display:flex;flex-direction:column;gap:6px}.doc-related-preview-body{font-size:12px;line-height:1.6;color:var(--text-secondary);white-space:pre-wrap;word-break:break-word;max-height:240px;overflow-y:auto}.doc-related-preview-empty{font-size:12px;color:var(--text-tertiary, var(--text-secondary));font-style:italic}.doc-related-preview-footer{display:flex;justify-content:flex-end}.doc-related-open-link{appearance:none;-webkit-appearance:none;background:transparent;border:0;padding:4px 8px;margin:0;font:inherit;font-size:12px;color:var(--brand-color, var(--token-color-brand-500));cursor:pointer;border-radius:4px}.doc-related-open-link:hover{background-color:var(--bg-tertiary);text-decoration:underline}.doc-related-open-link:focus-visible{outline:2px solid var(--brand-color, var(--token-color-brand-500));outline-offset:1px}.doc-related-strength{display:inline-flex;align-items:center;gap:6px}.doc-related-strength-bar{display:inline-block;position:relative;width:36px;height:4px;border-radius:2px;background-color:var(--border-color, var(--bg-tertiary));overflow:hidden}.doc-related-strength-fill{display:block;height:100%;background:linear-gradient(90deg,var(--token-color-brand-400),var(--token-color-brand-500));border-radius:2px;transition:width var(--motion-emphasized)}.doc-related-strength-num{font-size:10px;color:var(--text-tertiary, var(--text-secondary));min-width:20px;text-align:right;font-variant-numeric:tabular-nums;letter-spacing:.02em}.doc-related-row-actions{display:inline-flex;align-items:center;gap:6px}.doc-related-chip{display:inline-flex;align-items:center;gap:4px;height:28px;padding:0 10px;border-radius:14px;border:1px solid var(--brand-color, var(--token-color-brand-500));background:transparent;color:var(--brand-color, var(--token-color-brand-500));font-size:12px;font-weight:500;line-height:1;cursor:pointer;transition:background-color var(--motion-fast),color var(--motion-fast),border-color var(--motion-fast),transform var(--motion-fast)}.doc-related-chip:hover{background-color:var(--brand-color, var(--token-color-brand-500));color:var(--text-inverse, #fff)}.doc-related-chip:active{transform:scale(.97)}.doc-related-chip:focus-visible{outline:2px solid var(--brand-color, var(--token-color-brand-500));outline-offset:2px}.doc-related-chip[disabled]{cursor:not-allowed;opacity:.55}.doc-related-chip-icon{font-size:13px;line-height:1}.doc-related-chip-text{line-height:1}.doc-related-chip-undo{margin-left:2px;font-size:12px;opacity:.75;transition:opacity var(--motion-fast),transform var(--motion-fast)}.doc-related-chip.is-accepted{border-color:var(--admin-success, var(--token-color-success-500));background-color:var(--color-success-bg, var(--token-color-success-50));color:var(--admin-success, var(--token-color-success-600))}.doc-related-chip.is-accepted:hover{background-color:var(--token-color-success-100, var(--token-color-success-50));color:var(--admin-success, var(--token-color-success-600))}.doc-related-chip.is-accepted:hover .doc-related-chip-undo{opacity:1;transform:rotate(-15deg)}.doc-related-ghost{width:28px;height:28px;padding:0;border:0;background:transparent;color:var(--text-tertiary, var(--text-secondary));font-size:13px;line-height:1;border-radius:50%;cursor:pointer;opacity:.35;display:inline-flex;align-items:center;justify-content:center;transition:opacity var(--motion-fast),background-color var(--motion-fast),color var(--motion-fast)}.doc-related-row:hover .doc-related-ghost,.doc-related-ghost:focus-visible{opacity:.85}.doc-related-ghost:hover{opacity:1;background-color:var(--bg-tertiary);color:var(--admin-danger, var(--token-color-danger-600))}.doc-related-ghost:focus-visible{outline:2px solid var(--brand-color, var(--token-color-brand-500));outline-offset:1px}.doc-related-ghost[disabled]{cursor:not-allowed;opacity:.4}.doc-related-score-bar,.doc-related-score-fill,.doc-related-score-num,.doc-related-action,.doc-related-accepted{display:none}.doc-related-toggle{width:100%;margin-top:8px;padding:4px;background:transparent;border:none;color:var(--text-secondary);font-size:12px;cursor:pointer;text-decoration:underline;text-decoration-color:var(--border-color);text-underline-offset:3px}.doc-related-toggle:hover{color:var(--text-primary)}.doc-related-empty{padding:8px 4px;font-size:12px;color:var(--text-secondary);font-style:italic}.doc-related-error{padding:8px 4px;font-size:12px;color:var(--admin-danger, var(--token-color-danger-600))}.doc-related-loading{padding:8px 4px;font-size:12px;color:var(--text-secondary)}.doc-review-modal-content{width:92%;max-width:640px;max-height:85vh}.doc-review-body{overflow-y:auto;padding:16px 20px 20px}.doc-review-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:40px 20px;color:var(--text-secondary);font-size:13px}.doc-review-error{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px 20px;text-align:center}.doc-review-error-text{color:var(--admin-danger, var(--token-color-danger-600));font-size:13px;margin:0}.doc-review-sections{display:flex;flex-direction:column;gap:18px}.doc-review-section{background-color:var(--bg-tertiary);border:1px solid var(--border-color);border-radius:8px;padding:14px 16px}.doc-review-section-title{margin:0 0 8px;font-size:14px;font-weight:600;color:var(--text-primary)}.doc-review-section-body{font-size:13px;line-height:1.6;color:var(--text-primary)}.doc-review-section-body p{margin:0 0 8px}.doc-review-section-body p:last-child{margin-bottom:0}.doc-review-list{margin:0;padding-left:18px;color:var(--text-primary);font-size:13px;line-height:1.6}.doc-review-list li{margin-bottom:6px}.doc-review-list li:last-child{margin-bottom:0}.doc-review-weak-section{font-size:12px;font-weight:600;color:var(--text-secondary);margin-right:4px}.doc-review-empty-line{color:var(--text-secondary);font-style:italic;font-size:12px}.ask-preset-row{display:flex;align-items:center;gap:8px;margin-top:4px;font-size:12px}.ask-preset-label{color:var(--text-secondary);font-weight:500;flex-shrink:0}.ask-preset-select{flex:1;min-width:0;background-color:var(--bg-secondary, var(--token-color-ink-0));color:var(--text-primary);border:1px solid var(--border-color);border-radius:6px;padding:4px 8px;font-size:12px;cursor:pointer}.ask-preset-select:focus{outline:none;border-color:var(--token-color-brand-400)}.ask-preset-desc{flex-basis:100%;margin-top:4px;color:var(--text-secondary);font-size:11px;font-style:italic;line-height:1.4}.ask-preset-desc:empty{display:none}.doc-list{background:var(--bg-tertiary);padding:8px 8px 12px;gap:0}.doc-list-group-header{padding:14px 10px 6px;font-size:11px;font-weight:600;color:var(--text-muted);letter-spacing:.04em;text-transform:none;user-select:none}.doc-list-group-header:first-child{padding-top:4px}.doc-item{position:relative;background:var(--bg-secondary);border:1px solid transparent;box-shadow:0 1px #09090b05;margin-bottom:4px;padding:12px 14px 30px;border-radius:10px}[data-theme=dark] .doc-item{background:var(--bg-secondary);box-shadow:none;border:1px solid var(--border-light)}.doc-item:hover{background:var(--fill-hover);border-color:var(--border-light);box-shadow:0 1px 3px #09090b0d}[data-theme=dark] .doc-item:hover{box-shadow:0 1px 3px #00000040}.doc-item.active{background:var(--sidebar-active-bg);box-shadow:none}.doc-item-hover-actions{position:absolute;right:6px;bottom:6px;display:inline-flex;gap:2px;opacity:0;pointer-events:none;transition:opacity var(--motion-fast)}.doc-item:hover .doc-item-hover-actions,.doc-item:focus-within .doc-item-hover-actions{opacity:1;pointer-events:auto}.doc-item.active .doc-item-hover-actions,.doc-item.active:hover .doc-item-hover-actions{opacity:0;pointer-events:none}.doc-item-hover-action{width:26px;height:26px;display:inline-flex;align-items:center;justify-content:center;border:none;background:transparent;color:var(--text-muted);border-radius:6px;cursor:pointer;padding:0;transition:background-color var(--motion-fast),color var(--motion-fast)}.doc-item-hover-action:hover{background:var(--fill-hover);color:var(--text-primary)}.doc-item-hover-action.danger:hover{color:var(--color-danger);background:var(--color-danger-bg)}@media(hover:none)and (pointer:coarse){.doc-item-hover-actions{display:none}}.doc-list[data-group=search] .doc-list-group-header{display:none}.chat-message.user .chat-bubble{background:var(--fill-active);color:var(--text-primary);border-bottom-right-radius:4px}.chat-uncertainty-chip{display:inline-flex;align-items:center;gap:4px;padding:3px 10px;margin-bottom:8px;font-size:12px;font-weight:600;color:var(--color-warning);background:var(--color-warning-bg);border-radius:var(--token-radius-full)}.chat-uncertainty-chip:before{content:"\26a0\fe0f"}.chat-float-actions{position:sticky;bottom:12px;display:flex;justify-content:center;gap:8px;padding:8px 0;pointer-events:none;z-index:10}.chat-float-actions[hidden]{display:none}.chat-float-actions .chat-float-btn{pointer-events:auto;padding:6px 14px;font-size:12px;font-weight:600;border-radius:var(--token-radius-full);border:1px solid var(--border-color);background:var(--bg-secondary);color:var(--text-secondary);cursor:pointer;box-shadow:var(--shadow-md);transition:background var(--motion-fast),color var(--motion-fast)}.chat-float-actions .chat-float-btn:hover{background:var(--fill-active);color:var(--brand-primary)}.chat-source-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;align-items:center}.chat-source-chip{padding:3px 10px;font-size:12px;font-weight:500;line-height:1.4;border-radius:var(--token-radius-full);border:1px solid transparent;cursor:pointer;transition:background var(--motion-fast),color var(--motion-fast)}.chat-source-chip.is-current{color:var(--brand-primary);background:var(--fill-active)}.chat-source-chip.is-wiki{color:var(--color-ai);background:var(--color-ai-bg)}.chat-source-chip.is-raw{color:var(--text-secondary);background:var(--bg-tertiary)}.chat-source-chip:hover{filter:brightness(.96)}.chat-source-chips-more{font-size:11px;color:var(--text-muted);padding:3px 6px}.stream-cursor{display:inline-block;margin-left:1px;color:var(--brand-primary);font-weight:600;animation:stream-cursor-blink 1s steps(2,end) infinite;user-select:none}@keyframes stream-cursor-blink{0%,50%{opacity:1}50.01%,to{opacity:0}}.chat-retry-btn{margin-top:8px;padding:4px 12px;font-size:12px;font-weight:600;border-radius:var(--token-radius-full);border:1px solid var(--color-danger);color:var(--color-danger);background:var(--color-danger-bg);cursor:pointer;transition:background var(--motion-fast)}.chat-retry-btn:hover{background:var(--color-danger);color:var(--token-color-ink-0)}.chat-error-bubble .chat-error-title{font-size:13px;font-weight:600;color:var(--color-danger);margin-bottom:4px}.chat-error-bubble .chat-error-text{font-size:12px;color:var(--text-secondary);background:var(--bg-tertiary);border-radius:6px;padding:6px 8px;white-space:pre-wrap;word-break:break-word;margin:0}.editor-pane,.preview-pane{background:var(--bg-secondary)}.CodeMirror{background:var(--bg-secondary)!important;line-height:1.75!important}[data-theme=dark] .CodeMirror{background:var(--bg-secondary)!important}.title-input{background:transparent}body.focus-mode .editor-pane{max-width:800px!important;margin:0 auto;padding:24px 8px}body.focus-mode .CodeMirror{font-size:16px!important;line-height:1.78!important}body.focus-mode .sidebar,body.focus-mode .sidebar-collapse-btn{display:none!important}body.focus-mode .main-content{position:relative}body.focus-mode .workspace-header-stack{position:absolute;left:0;right:0;top:0;z-index:50;transition:transform var(--motion-emphasized),opacity var(--motion-standard);transform:translateY(-100%);opacity:0;pointer-events:none}body.focus-mode .main-content:hover .workspace-header-stack,body.focus-mode .workspace-header-stack:hover,body.focus-mode .workspace-header-stack:focus-within{transform:translateY(0);opacity:1;pointer-events:auto}.focus-exit-hint{position:fixed;top:12px;right:16px;z-index:70;padding:6px 11px;border-radius:999px;background:var(--bg-secondary);color:var(--text-secondary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);font-size:12px;cursor:pointer;user-select:none;transition:opacity var(--motion-standard);opacity:0;pointer-events:none}body.focus-mode .focus-exit-hint{opacity:1;pointer-events:auto}.focus-exit-hint:hover{color:var(--text-primary);border-color:var(--border-color)}#preferencesModal .modal-content{background:var(--bg-primary)}#preferencesModal .modal-body{padding:0 0 16px;background:var(--bg-primary);max-height:72vh;overflow-y:auto}#preferencesModal .pref-section{margin-top:14px;background:transparent}#preferencesModal .pref-section:first-of-type{margin-top:8px}#preferencesModal .pref-section-caption{padding:4px 18px 6px;font-size:11px;font-weight:600;color:var(--text-muted);letter-spacing:.04em}#preferencesModal .pref-section-body{background:var(--bg-secondary);border-top:1px solid var(--border-light);border-bottom:1px solid var(--border-light)}[data-theme=dark] #preferencesModal .pref-section-body{background:var(--bg-secondary)}#preferencesModal .pref-line{display:flex;align-items:center;gap:12px;padding:11px 18px;min-height:48px;border-top:1px solid var(--border-light);color:var(--text-primary);cursor:default}#preferencesModal .pref-line:first-child{border-top:0}#preferencesModal .pref-line-label{flex:1;min-width:0;font-size:14px;line-height:1.4;color:var(--text-primary)}#preferencesModal .pref-line-help{margin-top:3px;font-size:12px;color:var(--text-secondary);line-height:1.45}#preferencesModal .pref-line-control{flex-shrink:0;display:inline-flex;align-items:center;gap:6px}#preferencesModal .pref-line-control select.form-control{height:30px;min-width:110px;font-size:13px;padding:4px 26px 4px 10px}#preferencesModal .pref-line.toggle .pref-line-control{margin-left:auto}#preferencesModal .pref-section.danger .pref-section-body{background:var(--bg-secondary)}#preferencesModal .pref-section.danger .pref-line{color:var(--color-danger);cursor:pointer;transition:background-color var(--motion-fast)}#preferencesModal .pref-section.danger .pref-line:hover{background:var(--color-danger-bg)}#preferencesModal .pref-section.danger .pref-line-label{color:var(--color-danger)}#preferencesModal .pref-section.danger .pref-line-arrow{color:var(--color-danger);opacity:.6}#preferencesModal .pref-line-arrow{color:var(--text-muted);flex-shrink:0;line-height:1}#preferencesModal .pref-line.embed{align-items:stretch;padding:14px 18px}#preferencesModal .pref-line.embed .pref-line-label{flex:1 1 auto}#preferencesModal .pref-modal-footer{position:sticky;bottom:0;display:flex;gap:8px;justify-content:flex-end;padding:14px 18px;background:var(--bg-primary);border-top:1px solid var(--border-light);margin-top:14px}.save-status{padding:4px 8px;border-radius:999px;gap:6px;font-weight:500;border:1px solid transparent;box-shadow:none}.save-status:before{display:none!important}.save-status-icon{position:relative;display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;flex-shrink:0}.save-status-cloud{width:14px;height:14px;color:currentColor;opacity:.92}.save-status-mark{position:absolute;right:-2px;bottom:-2px;width:9px;height:9px;display:inline-flex;align-items:center;justify-content:center;color:currentColor;background:var(--bg-secondary);border-radius:50%;font-size:9px;font-weight:700;line-height:1}.save-status-mark.dot{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.save-status-mark.spin{width:8px;height:8px;border-radius:50%;border:1.5px solid currentColor;border-top-color:transparent;background:var(--bg-secondary);animation:save-spin .85s linear infinite}@keyframes save-spin{to{transform:rotate(360deg)}}.save-status-text{font-size:12px;line-height:1.4;letter-spacing:.01em}.save-status.saved{animation:save-status-spring var(--motion-spring)}@keyframes save-status-spring{0%{transform:scale(.95);opacity:.85}60%{transform:scale(1.04)}to{transform:scale(1);opacity:1}}
/*# sourceMappingURL=main.css.map */
