:root{color-scheme:light;--font-body: "General Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono: "JetBrains Mono", "Fira Code", "Consolas", monospace;--text-xs: clamp(.7rem, .65rem + .2vw, .75rem);--text-sm: clamp(.8rem, .75rem + .2vw, .875rem);--text-base: clamp(.875rem, .85rem + .15vw, 1rem);--text-lg: clamp(1rem, .95rem + .2vw, 1.125rem);--text-xl: clamp(1.125rem, 1.05rem + .3vw, 1.25rem);--text-2xl: clamp(1.25rem, 1.15rem + .4vw, 1.5rem);--text-3xl: clamp(1.5rem, 1.35rem + .6vw, 1.875rem);--text-4xl: clamp(1.875rem, 1.7rem + .7vw, 2.25rem);--space-0: 0;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--radius-xl: 12px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .07), 0 2px 4px -2px rgba(0, 0, 0, .05);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .08), 0 4px 6px -4px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 8px 10px -6px rgba(0, 0, 0, .05);--sidebar-width: 260px;--sidebar-collapsed-width: 52px;--topbar-height: 48px;--right-panel-width: 340px;--editor-max-width: min(80vw, 1400px);--transition-fast: .15s ease;--transition-base: .2s ease;--transition-slow: .3s ease;--z-sidebar: 30;--z-topbar: 20;--z-panel: 25;--z-modal: 50;--z-toast: 60;--z-tooltip: 70;--bg-primary: #f5f5f0;--bg-surface: #ffffff;--bg-surface-hover: #fafaf8;--bg-hover: #e8e8e3;--bg-active: #deded9;--bg-sidebar: #f0f0eb;--bg-code: #f0f0eb;--bg-callout: #f0f5ff;--text-primary: #1a1a18;--text-secondary: #3d3d39;--text-muted: #636360;--text-inverse: #ffffff;--text-on-accent: #ffffff;--border-color: #d4d4cf;--border-light: #e8e8e3;--border-focus: #2563eb;--accent-blue: #2563eb;--accent-blue-light: #dbeafe;--accent-purple: #7c3aed;--accent-purple-light: #ede9fe;--accent-teal: #0d9488;--accent-teal-light: #ccfbf1;--accent-orange: #ea580c;--accent-orange-light: #fff7ed;--accent-green: #16a34a;--accent-green-light: #dcfce7;--accent-red: #dc2626;--accent-red-light: #fef2f2;--danger: #dc2626;--accent-yellow: #d97706;--accent-yellow-light: #fef9c3;--gradient-blue: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--gradient-purple: linear-gradient(135deg, #a855f7 0%, #6366f1 100%);--gradient-orange: linear-gradient(135deg, #f97316 0%, #ef4444 100%);--gradient-teal: linear-gradient(135deg, #14b8a6 0%, #0ea5e9 100%);--gradient-green: linear-gradient(135deg, #22c55e 0%, #14b8a6 100%);--gradient-pink: linear-gradient(135deg, #ec4899 0%, #a855f7 100%);--gradient-dark: linear-gradient(135deg, #1e293b 0%, #334155 100%)}[data-theme=dark]{color-scheme:dark;--bg-primary: #111113;--bg-surface: #1a1a1e;--bg-surface-hover: #222226;--bg-hover: #2a2a2e;--bg-active: #333338;--bg-sidebar: #161618;--bg-code: #1e1e22;--bg-callout: #1a1e2e;--text-primary: #e4e4e8;--text-secondary: #9b9ba0;--text-muted: #6b6b70;--text-inverse: #111113;--accent-blue-light: rgba(37, 99, 235, .2);--accent-purple-light: rgba(124, 58, 237, .2);--accent-teal-light: rgba(13, 148, 136, .2);--accent-orange-light: rgba(234, 88, 12, .2);--accent-green-light: rgba(22, 163, 74, .2);--accent-red-light: rgba(220, 38, 38, .2);--accent-yellow-light: rgba(217, 119, 6, .2);--border-color: #333338;--border-light: #2a2a2e;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .2);--shadow-md: 0 4px 6px rgba(0, 0, 0, .25);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .3);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .35)}[data-theme=sepia]{color-scheme:light;--bg-primary: #f4ecd8;--bg-surface: #fbf4e0;--bg-surface-hover: #f1e7c9;--bg-hover: #ead9b0;--bg-active: #e0caa0;--bg-sidebar: #ede1c3;--bg-code: #ebdfbf;--bg-callout: #fbf1d4;--text-primary: #433422;--text-secondary: #7a6445;--text-muted: #a08a68;--text-inverse: #fbf4e0;--border-color: #d6c39a;--border-light: #e4d5ad;--border-focus: #a0522d;--accent-blue: #8b5a2b;--accent-blue-light: #ede1c3}[data-theme=nord]{color-scheme:dark;--bg-primary: #2e3440;--bg-surface: #3b4252;--bg-surface-hover: #434c5e;--bg-hover: #4c566a;--bg-active: #5e6779;--bg-sidebar: #292e39;--bg-code: #3b4252;--bg-callout: #3b4a5e;--text-primary: #eceff4;--text-secondary: #d8dee9;--text-muted: #8793a6;--text-inverse: #2e3440;--border-color: #4c566a;--border-light: #434c5e;--border-focus: #88c0d0;--accent-blue: #88c0d0;--accent-blue-light: rgba(136, 192, 208, .2);--accent-purple: #b48ead;--accent-purple-light: rgba(180, 142, 173, .2);--accent-teal: #8fbcbb;--accent-teal-light: rgba(143, 188, 187, .2);--accent-orange: #d08770;--accent-orange-light: rgba(208, 135, 112, .2);--accent-green: #a3be8c;--accent-green-light: rgba(163, 190, 140, .2);--accent-red: #bf616a;--accent-red-light: rgba(191, 97, 106, .2);--accent-yellow: #ebcb8b;--accent-yellow-light: rgba(235, 203, 139, .2);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .35);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .4);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .45)}[data-theme=solarized-light]{color-scheme:light;--bg-primary: #fdf6e3;--bg-surface: #fffbf0;--bg-surface-hover: #f5eed4;--bg-hover: #eee8d5;--bg-active: #e3ddc7;--bg-sidebar: #f5eed4;--bg-code: #eee8d5;--bg-callout: #eee8d5;--text-primary: #073642;--text-secondary: #586e75;--text-muted: #93a1a1;--text-inverse: #fdf6e3;--border-color: #d9d2bb;--border-light: #eee8d5;--border-focus: #268bd2;--accent-blue: #268bd2;--accent-blue-light: #dde9f5;--accent-purple: #6c71c4;--accent-teal: #2aa198;--accent-orange: #cb4b16;--accent-green: #859900;--accent-red: #dc322f;--accent-yellow: #b58900}[data-theme=solarized-dark]{color-scheme:dark;--bg-primary: #002b36;--bg-surface: #073642;--bg-surface-hover: #0a4250;--bg-hover: #124e5e;--bg-active: #1a5a6c;--bg-sidebar: #00222b;--bg-code: #073642;--bg-callout: #0a3f50;--text-primary: #eee8d5;--text-secondary: #93a1a1;--text-muted: #657b83;--text-inverse: #002b36;--border-color: #124e5e;--border-light: #0a4250;--border-focus: #268bd2;--accent-blue: #268bd2;--accent-blue-light: rgba(38, 139, 210, .2);--accent-purple: #6c71c4;--accent-purple-light: rgba(108, 113, 196, .2);--accent-teal: #2aa198;--accent-teal-light: rgba(42, 161, 152, .2);--accent-orange: #cb4b16;--accent-orange-light: rgba(203, 75, 22, .2);--accent-green: #859900;--accent-green-light: rgba(133, 153, 0, .2);--accent-red: #dc322f;--accent-red-light: rgba(220, 50, 47, .2);--accent-yellow: #b58900;--accent-yellow-light: rgba(181, 137, 0, .2);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .35);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .4);--shadow-xl: 0 20px 25px rgba(0, 0, 0, .45)}[data-theme=rose]{color-scheme:light;--bg-primary: #fff5f7;--bg-surface: #ffffff;--bg-surface-hover: #fdeef1;--bg-hover: #fbdde3;--bg-active: #f7c5cf;--bg-sidebar: #fde4e9;--bg-code: #fce0e6;--bg-callout: #fff0f3;--text-primary: #3b1824;--text-secondary: #7a4a5c;--text-muted: #a97a8a;--text-inverse: #ffffff;--border-color: #f0c7d0;--border-light: #f8dde3;--border-focus: #d6336c;--accent-blue: #d6336c;--accent-blue-light: #fde4ec;--accent-purple: #b5179e}[data-theme=high-contrast]{color-scheme:dark;--bg-primary: #000000;--bg-surface: #000000;--bg-surface-hover: #111111;--bg-hover: #1f1f1f;--bg-active: #2e2e2e;--bg-sidebar: #000000;--bg-code: #111111;--bg-callout: #001f3f;--text-primary: #ffffff;--text-secondary: #ffffff;--text-muted: #cccccc;--text-inverse: #000000;--border-color: #ffffff;--border-light: #888888;--border-focus: #ffff00;--accent-blue: #4fc3ff;--accent-blue-light: rgba(79, 195, 255, .25);--accent-purple: #d58bff;--accent-purple-light: rgba(213, 139, 255, .25);--accent-teal: #5eead4;--accent-teal-light: rgba(94, 234, 212, .25);--accent-orange: #ffb347;--accent-orange-light: rgba(255, 179, 71, .25);--accent-green: #7fff7f;--accent-green-light: rgba(127, 255, 127, .25);--accent-red: #ff6b6b;--accent-red-light: rgba(255, 107, 107, .25);--accent-yellow: #ffff00;--accent-yellow-light: rgba(255, 255, 0, .25)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg-primary);color:var(--text-primary)}body{font-family:var(--font-body);font-size:var(--text-base);background:var(--bg-primary);color:var(--text-primary);line-height:1.6}#root{min-height:100vh;background:var(--bg-primary);color:var(--text-primary)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer;border:none;background:none;color:inherit}input,textarea,select,option,optgroup{font:inherit;color:var(--text-primary)}input,textarea,select{background:var(--bg-surface);border-color:var(--border-color);caret-color:var(--text-primary)}input::placeholder,textarea::placeholder{color:var(--text-muted);opacity:1}input:-webkit-autofill,input:-webkit-autofill:hover,input:-webkit-autofill:focus,textarea:-webkit-autofill,textarea:-webkit-autofill:hover,textarea:-webkit-autofill:focus,select:-webkit-autofill,select:-webkit-autofill:hover,select:-webkit-autofill:focus{-webkit-text-fill-color:var(--text-primary);-webkit-box-shadow:0 0 0px 1000px var(--bg-surface) inset;box-shadow:0 0 0 1000px var(--bg-surface) inset;caret-color:var(--text-primary)}img{max-width:100%;display:block}ul,ol{list-style:none}:focus-visible{outline:2px solid var(--accent-blue);outline-offset:2px}::selection{background:var(--accent-blue);color:#fff}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}.app-shell{display:flex;height:100vh;overflow:hidden}.sidebar{width:var(--sidebar-width);background:var(--bg-sidebar);border-right:1px solid var(--border-light);display:flex;flex-direction:column;transition:width var(--transition-base);overflow:hidden;flex-shrink:0}.sidebar.collapsed{width:var(--sidebar-collapsed-width)}.sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-3);height:var(--topbar-height);border-bottom:1px solid var(--border-light)}.sidebar-logo{display:flex;align-items:center;gap:var(--space-2);font-weight:600;font-size:var(--text-base);white-space:nowrap;overflow:hidden}.sidebar-logo-icon{width:28px;height:28px;background:var(--accent-blue);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:var(--text-sm);flex-shrink:0}.sidebar-nav{flex:1;overflow-y:auto;padding:var(--space-2) 0}.sidebar-section{padding:var(--space-1) var(--space-3)}.sidebar-section-title{font-size:var(--text-xs);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;padding:var(--space-2) var(--space-2);display:flex;align-items:center;justify-content:space-between}.sidebar-item{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);color:var(--text-secondary);transition:all var(--transition-fast);white-space:nowrap;overflow:hidden}.sidebar-item:hover{background:var(--bg-hover);color:var(--text-primary)}.sidebar-item.active{background:var(--bg-active);color:var(--text-primary);font-weight:500}.sidebar-item-icon{width:18px;height:18px;flex-shrink:0;display:flex;align-items:center;justify-content:center}.sidebar-item-emoji{font-size:16px;width:18px;text-align:center;flex-shrink:0}.page-tree-item{display:flex;align-items:center;gap:var(--space-1);padding:2px var(--space-2);padding-left:calc(var(--space-4) * var(--depth, 0) + var(--space-2));border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm);color:var(--text-secondary);transition:all var(--transition-fast)}.page-tree-item:hover{background:var(--bg-hover);color:var(--text-primary)}.page-tree-item.active{background:var(--bg-active);color:var(--text-primary)}.page-tree-toggle{width:16px;height:16px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--text-muted);flex-shrink:0}.page-tree-toggle:hover{background:var(--bg-active)}.main-content{flex:1;display:flex;flex-direction:column;overflow:hidden;min-width:0}.topbar{height:var(--topbar-height);display:flex;align-items:center;justify-content:space-between;padding:0 var(--space-4);border-bottom:1px solid var(--border-light);background:var(--bg-surface);flex-shrink:0}.topbar-left{display:flex;align-items:center;gap:var(--space-2);min-width:0}.topbar-right{display:flex;align-items:center;gap:var(--space-1)}.breadcrumbs{display:flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);color:var(--text-secondary);min-width:0;overflow:hidden}.breadcrumb-item{white-space:nowrap;cursor:pointer}.breadcrumb-item:hover{color:var(--text-primary)}.breadcrumb-sep{color:var(--text-muted);flex-shrink:0}.editor-area{flex:1;overflow-y:auto;display:flex;justify-content:center}.editor-container{width:100%;max-width:var(--editor-max-width);padding:0 var(--space-6) var(--space-8);margin-top:170px}.right-panel{width:var(--right-panel-width);border-left:1px solid var(--border-light);background:var(--bg-surface);overflow-y:auto;flex-shrink:0;transition:width var(--transition-base)}.right-panel-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-light);font-weight:600;font-size:var(--text-sm)}.right-panel-content{padding:var(--space-4)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:500;transition:all var(--transition-fast);white-space:nowrap;cursor:pointer;border:1px solid transparent}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--accent-blue);color:var(--text-on-accent)}.btn-primary:hover:not(:disabled){background:#1d4ed8}.btn-secondary{background:var(--bg-surface);color:var(--text-primary);border-color:var(--border-color)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover)}.btn-ghost{color:var(--text-secondary)}.btn-ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.btn-danger{background:var(--accent-red);color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c}.btn-sm{padding:var(--space-1) var(--space-2);font-size:var(--text-xs)}.btn-lg{padding:var(--space-3) var(--space-6);font-size:var(--text-base)}.btn-icon{padding:var(--space-1);width:32px;height:32px}.input{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);font-size:var(--text-sm);transition:border-color var(--transition-fast);-moz-appearance:none;appearance:none;-webkit-appearance:none;caret-color:var(--text-primary)}.input:focus{outline:none;border-color:var(--accent-blue);box-shadow:0 0 0 3px var(--accent-blue-light)}.input::placeholder{color:var(--text-muted)}.textarea{width:100%;padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--bg-surface);color:var(--text-primary);font-size:var(--text-sm);resize:vertical;min-height:80px;caret-color:var(--text-primary)}.textarea:focus{outline:none;border-color:var(--accent-blue);box-shadow:0 0 0 3px var(--accent-blue-light)}.form-group{display:flex;flex-direction:column;gap:var(--space-1)}.form-label{font-size:var(--text-sm);font-weight:500;color:var(--text-secondary)}.form-error{font-size:var(--text-xs);color:var(--accent-red)}.auth-page{display:flex;align-items:center;justify-content:center;min-height:100vh;background:var(--bg-primary)}.auth-card{width:100%;max-width:400px;padding:var(--space-8);background:var(--bg-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-lg)}.auth-title{font-size:var(--text-2xl);font-weight:700;text-align:center;margin-bottom:var(--space-1)}.auth-subtitle{font-size:var(--text-sm);color:var(--text-secondary);text-align:center;margin-bottom:var(--space-6)}.auth-form{display:flex;flex-direction:column;gap:var(--space-4)}.auth-footer{text-align:center;margin-top:var(--space-4);font-size:var(--text-sm);color:var(--text-secondary)}.auth-footer a{color:var(--accent-blue);font-weight:500}.auth-footer a:hover{text-decoration:underline}.auth-error{background:#ef444414;border:1px solid rgba(239,68,68,.3);color:#b91c1c;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-sm)}.avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:var(--radius-full);font-weight:600;color:#fff;flex-shrink:0}.avatar-sm{width:24px;height:24px;font-size:10px}.avatar-md{width:32px;height:32px;font-size:12px}.avatar-lg{width:40px;height:40px;font-size:14px}.tag{display:inline-flex;align-items:center;padding:2px var(--space-2);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:500;background:var(--bg-hover);color:var(--text-secondary)}.badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;border-radius:var(--radius-full);font-size:11px;font-weight:600;background:var(--accent-red);color:#fff}.status-badge{display:inline-flex;align-items:center;padding:2px var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:500}select.status-badge{color-scheme:light}select.status-badge option{background:#fff;color:#111;font-weight:400}.status-draft{background:var(--accent-yellow-light);color:var(--accent-yellow)}.status-published{background:var(--accent-green-light);color:var(--accent-green)}.status-archived{background:var(--bg-hover);color:var(--text-muted)}.status-picker-active{background:var(--bg-hover)}.home-header{margin-bottom:var(--space-8)}.home-greeting{font-size:var(--text-3xl);font-weight:700;margin-bottom:var(--space-1)}.home-subtext{color:var(--text-secondary);font-size:var(--text-base)}.home-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--space-4);margin-bottom:var(--space-8)}.card{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--space-4);transition:all var(--transition-fast)}.card:hover{box-shadow:var(--shadow-md);border-color:var(--border-color)}.card-title{font-size:var(--text-base);font-weight:600;margin-bottom:var(--space-1);display:flex;align-items:center;gap:var(--space-2)}.card-desc{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.5}.card-meta{display:flex;align-items:center;gap:var(--space-2);margin-top:var(--space-3);font-size:var(--text-xs);color:var(--text-muted)}.breadcrumb-link{transition:color .15s}.breadcrumb-link:hover{color:var(--accent-blue)}.page-cover{width:100%;height:200px;border-radius:0;position:relative}.page-header{margin-bottom:var(--space-6);margin-right:10px}.page-emoji{font-size:48px;margin-bottom:var(--space-2);cursor:pointer}.page-title-input{width:100%;border:none;background:transparent;font-size:var(--text-4xl);font-weight:700;color:var(--text-primary);resize:none;outline:none;line-height:1.2;padding:0;overflow:hidden;caret-color:var(--text-primary)}.page-title-input::placeholder{color:var(--text-muted)}.page-meta{display:flex;align-items:center;gap:var(--space-4);font-size:var(--text-sm);color:var(--text-secondary);margin-top:var(--space-2)}.page-tags{display:flex;align-items:center;gap:var(--space-1);flex-wrap:wrap}.block-list{display:flex;flex-direction:column}.block-wrapper{display:flex;align-items:flex-start;gap:var(--space-1);position:relative;padding:2px 0;min-width:0;overflow:scroll}.block-wrapper:hover .block-handle{opacity:1}.block-handle{opacity:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;cursor:grab;color:var(--text-muted);border-radius:var(--radius-sm);flex-shrink:0;margin-top:2px;transition:opacity var(--transition-fast)}.block-handle:hover{background:var(--bg-hover)}.block-content{flex:1;min-width:0;outline:none;color:var(--text-primary);caret-color:var(--text-primary)}.block-content:empty:before{content:attr(data-placeholder);color:var(--text-muted)}.block-h1{font-size:var(--text-3xl);font-weight:700;line-height:1.3;margin-top:var(--space-6);margin-bottom:var(--space-2)}.block-h2{font-size:var(--text-2xl);font-weight:600;line-height:1.3;margin-top:var(--space-5);margin-bottom:var(--space-2)}.block-h3{font-size:var(--text-xl);font-weight:600;line-height:1.4;margin-top:var(--space-4);margin-bottom:var(--space-1)}.block-paragraph{line-height:1.7;min-height:1.7em}.block-bullet{flex:1;min-width:0;padding-left:var(--space-4);position:relative;line-height:1.7}.block-bullet:before{content:"•";position:absolute;left:var(--space-1);color:var(--text-secondary)}.block-numbered{flex:1;min-width:0;padding-left:var(--space-4);line-height:1.7}.block-todo{flex:1;min-width:0;display:flex;align-items:flex-start;gap:var(--space-2);line-height:1.7}.block-todo input[type=checkbox]{margin-top:5px;accent-color:var(--accent-blue)}.block-todo.checked .block-content{text-decoration:line-through;color:var(--text-muted)}.block-code{background:var(--bg-code);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);font-family:var(--font-mono);font-size:var(--text-sm);line-height:1.6;white-space:pre-wrap;overflow-x:auto;color:var(--text-primary);caret-color:var(--text-primary)}.block-quote{flex:1;min-width:0;border-left:3px solid var(--border-color);padding-left:var(--space-4);color:var(--text-secondary);font-style:italic;line-height:1.7}.block-callout{flex:1;min-width:0;display:flex;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg-callout);border-radius:var(--radius-md);line-height:1.6}.block-callout-icon{font-size:20px;flex-shrink:0}.block-divider{flex:1;height:2px;background:var(--border-color);margin:var(--space-4) 0;border-radius:1px;align-self:center}.block-toggle-header{display:flex;align-items:center;gap:var(--space-2);cursor:pointer;font-weight:500}.block-toggle-children{padding-left:var(--space-6);margin-top:var(--space-1)}.block-columns-wrapper{width:100%}.block-columns-toolbar{display:flex;align-items:center;gap:8px;margin-bottom:6px;position:relative}.block-columns-layout-btn{background:none;border:1px dashed var(--border-light);border-radius:4px;padding:2px 10px;font-size:11px;color:var(--text-muted);cursor:pointer;font-family:var(--font-body);transition:background .15s,color .15s}.block-columns-layout-btn:hover{background:var(--bg-hover);color:var(--text-secondary)}.block-columns-layout-picker{position:absolute;top:calc(100% + 4px);left:0;z-index:50;background:var(--bg-surface);border:1px solid var(--border-light);border-radius:8px;padding:6px;display:flex;flex-direction:column;gap:2px;box-shadow:var(--shadow-md);min-width:190px}.block-columns-layout-option{display:flex;align-items:center;padding:7px 10px;border-radius:5px;border:none;background:none;cursor:pointer;text-align:left;font-size:12px;color:var(--text-primary);font-family:var(--font-body);transition:background .12s}.block-columns-layout-option:hover{background:var(--bg-hover)}.block-columns-layout-option.active{background:var(--accent-blue-light, rgba(37,99,235,.1));color:var(--accent-blue)}.block-columns-grid{display:grid;width:100%;align-items:start}.block-column-slot{min-width:0;padding:4px 12px;border-right:1px solid var(--border-light);display:flex;flex-direction:column;gap:2px}.block-column-slot:first-child{padding-left:0}.block-column-slot:last-child{border-right:none;padding-right:0}.block-column-add-btn{display:flex;align-items:center;justify-content:center;gap:4px;padding:5px 8px;margin-top:4px;border:1px dashed var(--border-light);border-radius:6px;background:none;cursor:pointer;font-size:11px;color:var(--text-muted);width:100%;font-family:var(--font-body);transition:background .15s,color .15s,border-color .15s}.block-column-add-btn:hover{background:var(--bg-hover);color:var(--text-secondary);border-color:var(--text-muted)}.block-table-scroll{width:100%;min-width:0;overflow-x:auto;background:inherit;border-radius:inherit}.block-table{min-width:100%;border-collapse:collapse;font-size:var(--text-sm);background:inherit}.block-table th,.block-table td{position:relative;border:1px solid var(--border-light);padding:var(--space-2) var(--space-3);text-align:left;background:inherit;white-space:normal;word-break:break-word}.block-table th{background:var(--bg-hover);font-weight:600}.block-table-resize-handle{position:absolute;top:0;right:-3px;width:6px;height:100%;cursor:col-resize;z-index:2;-webkit-user-select:none;user-select:none}.block-table-resize-handle:after{content:"";position:absolute;top:20%;left:2px;width:2px;height:60%;border-radius:1px;background:var(--border-light);opacity:0;transition:opacity .15s}.block-table th:hover .block-table-resize-handle:after,.block-table td:hover .block-table-resize-handle:after,.block-table-resize-handle:hover:after{opacity:1;background:var(--accent-blue)}.block-table-color-btn{flex-shrink:0;width:16px;height:16px;border-radius:3px;border:1px solid var(--border-light);cursor:pointer;display:flex;align-items:center;justify-content:center;padding:0;opacity:0;transition:opacity .1s;color:var(--text-muted);background:transparent}th:hover .block-table-color-btn,td:hover .block-table-color-btn,.block-table-color-btn:focus{opacity:1}.block-image{max-width:100%;border-radius:var(--radius-md)}.table-ctrl-col{width:28px!important;min-width:28px;padding:0 2px!important;text-align:center;border:none!important;background:transparent!important}.table-delete-row-btn{width:20px;height:20px;border-radius:4px;border:1px solid var(--border-light);background:var(--bg-surface);color:var(--text-muted);font-size:10px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;transition:background .12s,color .12s,border-color .12s}.table-delete-row-btn:hover{background:#fee2e2;color:#dc2626;border-color:#fca5a5}.table-delete-col-btn{position:absolute;top:2px;right:2px;width:16px;height:16px;border-radius:3px;border:1px solid var(--border-light);background:var(--bg-surface);color:var(--text-muted);font-size:9px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;padding:0;z-index:2;transition:background .12s,color .12s,border-color .12s}.table-delete-col-btn:hover{background:#fee2e2;color:#dc2626;border-color:#fca5a5}.table-size-picker{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:10px;padding:16px;box-shadow:var(--shadow-lg);min-width:220px}.table-size-picker-title{font-size:var(--text-sm);font-weight:600;color:var(--text-primary);margin-bottom:12px}.table-size-picker-inputs{display:flex;align-items:flex-end;gap:8px;margin-bottom:12px}.table-size-picker-field{display:flex;flex-direction:column;gap:4px;font-size:var(--text-xs);color:var(--text-secondary);cursor:default}.table-size-picker-field input{width:72px;padding:5px 8px;border:1px solid var(--border-light);border-radius:6px;background:var(--bg-primary);color:var(--text-primary);font-size:var(--text-sm)}.table-size-picker-field input:focus{outline:none;border-color:var(--accent)}.table-size-picker-x{font-size:var(--text-base);color:var(--text-muted);padding-bottom:5px}.table-size-picker-btn{width:100%;padding:7px 12px;background:var(--accent);color:#fff;border:none;border-radius:6px;font-size:var(--text-sm);font-weight:500;cursor:pointer;transition:opacity .12s}.table-size-picker-btn:hover{opacity:.88}.slash-menu{position:absolute;z-index:var(--z-modal);background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-2);min-width:240px;max-height:320px;overflow-y:auto}.slash-menu-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm)}.slash-menu-item:hover,.slash-menu-item.active{background:var(--bg-hover)}.slash-menu-item-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:var(--bg-hover);border-radius:var(--radius-md);font-size:16px}.slash-menu-item-label{font-weight:500}.slash-menu-item-desc{font-size:var(--text-xs);color:var(--text-muted)}.search-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:var(--z-modal);display:flex;align-items:flex-start;justify-content:center;padding-top:15vh}.search-modal{width:100%;max-width:600px;background:var(--bg-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);overflow:hidden}.search-input-wrapper{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);border-bottom:1px solid var(--border-light)}.search-input{flex:1;border:none;background:transparent;font-size:var(--text-lg);outline:none;color:var(--text-primary);caret-color:var(--text-primary)}.search-input::placeholder{color:var(--text-muted)}.search-results{max-height:400px;overflow-y:auto;padding:var(--space-2)}.search-result-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-sm)}.search-result-item:hover,.search-result-item.active{background:var(--bg-hover)}.search-empty{padding:var(--space-8);text-align:center;color:var(--text-muted);font-size:var(--text-sm)}@keyframes search-term-fade{0%{background:#fde047}60%{background:#fde047}to{background:transparent}}mark.search-term-highlight{background:#fde047;color:inherit;border-radius:2px;padding:0 2px;animation:search-term-fade 2s ease-out forwards}.translate-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0000008c;z-index:1000;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.translate-modal{background:var(--bg-surface, #ffffff);border:1px solid var(--border-color, #e2e8f0);border-radius:12px;box-shadow:0 24px 64px #00000059;width:520px;max-width:95vw;padding:24px;display:flex;flex-direction:column;gap:16px;position:relative;z-index:1001}@media(prefers-color-scheme:dark){.translate-modal{background:var(--bg-surface, #1e2433)}}:root[data-theme=dark] .translate-modal{background:var(--bg-surface, #1e2433)}:root[data-theme=light] .translate-modal{background:var(--bg-surface, #ffffff)}.translate-modal-header{display:flex;align-items:center;justify-content:space-between}.translate-modal-title{font-size:15px;font-weight:600;color:var(--text-primary)}.translate-modal-source{font-size:12px;color:var(--text-muted);background:var(--bg-hover);border-radius:6px;padding:8px 12px}.translate-lang-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.translate-lang-btn{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:10px 14px;border:1px solid var(--border-light);border-radius:8px;background:var(--bg-surface);cursor:pointer;transition:border-color .15s,background .15s;text-align:left}.translate-lang-btn:hover{border-color:var(--accent-blue, #3b82f6);background:var(--bg-hover)}.translate-lang-btn.active{border-color:var(--accent-blue, #3b82f6);background:color-mix(in srgb,var(--accent-blue, #3b82f6) 10%,transparent)}.translate-lang-native{font-size:16px;font-weight:600;color:var(--text-primary)}.translate-lang-name{font-size:11px;color:var(--text-muted)}.translate-modal-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:4px;border-top:1px solid var(--border-light)}.translate-modal-note{font-size:11px;color:var(--text-muted);max-width:300px;line-height:1.5}.translate-progress-wrap{display:flex;flex-direction:column;gap:10px;padding:8px 0}.translate-progress-label{font-size:13px;font-weight:500;color:var(--text-primary)}.translate-progress-bar-track{width:100%;height:6px;background:var(--bg-hover);border-radius:99px;overflow:hidden}.translate-progress-bar-fill{height:100%;background:var(--accent-blue, #3b82f6);border-radius:99px;transition:width .3s ease;min-width:4%}.translate-progress-sub{font-size:12px;color:var(--text-muted)}.translate-result{display:flex;flex-direction:column;align-items:center;gap:8px;padding:12px 0;text-align:center}.translate-result-title{font-size:15px;font-weight:600;color:var(--text-primary)}.translate-result-sub{font-size:13px;color:var(--text-muted)}.template-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center}.template-modal{width:90%;max-width:700px;max-height:80vh;background:var(--bg-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);display:flex;flex-direction:column}.template-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--border-light)}.template-header h2{font-size:var(--text-xl);font-weight:600}.template-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:var(--space-3);padding:var(--space-6);overflow-y:auto}.template-card{padding:var(--space-4);border:1px solid var(--border-light);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast)}.template-card:hover{border-color:var(--accent-blue);box-shadow:var(--shadow-sm)}.template-card-icon{font-size:28px;margin-bottom:var(--space-2)}.template-card-name{font-weight:600;font-size:var(--text-sm);margin-bottom:var(--space-1)}.template-card-desc{font-size:var(--text-xs);color:var(--text-secondary)}.toast-container{position:fixed;bottom:var(--space-4);right:var(--space-4);z-index:var(--z-toast);display:flex;flex-direction:column;gap:var(--space-2)}.toast{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);font-size:var(--text-sm);animation:toast-in .3s ease;max-width:380px}.toast-success{border-left:3px solid var(--accent-green)}.toast-error{border-left:3px solid var(--accent-red)}.toast-info{border-left:3px solid var(--accent-blue)}.toast-action-btn{background:var(--accent-blue);color:#fff;border:none;border-radius:5px;padding:3px 10px;font-size:12px;font-weight:600;cursor:pointer;flex-shrink:0;font-family:var(--font-body);transition:background .12s}.toast-action-btn:hover{background:#1d4ed8}.toast-close-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;font-size:11px;padding:0 2px;flex-shrink:0;line-height:1}.toast-close-btn:hover{color:var(--text-primary)}@keyframes toast-in{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.settings-page{max-width:600px}.settings-section{margin-bottom:var(--space-8)}.settings-section h2{font-size:var(--text-xl);font-weight:600;margin-bottom:var(--space-4);padding-bottom:var(--space-2);border-bottom:1px solid var(--border-light)}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-12) var(--space-4);text-align:center}.empty-state-icon{font-size:48px;margin-bottom:var(--space-4);color:var(--text-muted)}.empty-state-title{font-size:var(--text-lg);font-weight:600;margin-bottom:var(--space-1)}.empty-state-desc{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-4)}.comment-item{padding:var(--space-3) 0;border-bottom:1px solid var(--border-light)}.comment-header{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-1)}.comment-author{font-weight:600;font-size:var(--text-sm)}.comment-time{font-size:var(--text-xs);color:var(--text-muted)}.comment-body{font-size:var(--text-sm);line-height:1.6}.comment-actions{display:flex;gap:var(--space-2);margin-top:var(--space-1)}.notification-item{display:flex;align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--border-light);cursor:pointer}.notification-item:hover{background:var(--bg-surface-hover)}.notification-item.unread{background:var(--accent-blue-light)}.notification-message{font-size:var(--text-sm);flex:1}.notification-time{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap}.spinner{width:24px;height:24px;border:2px solid var(--border-light);border-top-color:var(--accent-blue);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.loading-page{display:flex;align-items:center;justify-content:center;height:100vh}.space-icon{width:24px;height:24px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}.space-color-blue{background:var(--accent-blue-light)}.space-color-purple{background:var(--accent-purple-light)}.space-color-teal{background:var(--accent-teal-light)}.space-color-orange{background:var(--accent-orange-light)}.space-color-green{background:var(--accent-green-light)}.page-list-item{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.page-list-item:hover{background:var(--bg-hover)}.page-list-title{flex:1;font-size:var(--text-sm);font-weight:500}.page-list-meta{font-size:var(--text-xs);color:var(--text-muted)}.all-pages-view{max-width:860px}.all-pages-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-6);gap:var(--space-4);flex-wrap:wrap}.all-pages-title{font-size:var(--text-2xl);font-weight:700;display:flex;align-items:center;gap:var(--space-2)}.all-pages-count{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:22px;padding:0 7px;border-radius:100px;background:var(--bg-hover);color:var(--text-muted);font-size:var(--text-xs);font-weight:600}.all-pages-controls{display:flex;align-items:center;gap:var(--space-2)}.all-pages-filter{width:auto;padding:5px 10px;font-size:var(--text-sm)}.all-pages-toggle{display:flex;border:1px solid var(--border-color);border-radius:var(--radius-md);overflow:hidden}.all-pages-toggle-btn{padding:5px 14px;font-size:var(--text-sm);font-weight:500;background:transparent;color:var(--text-muted);border:none;cursor:pointer;transition:all var(--transition-fast)}.all-pages-toggle-btn:hover{color:var(--text-primary);background:var(--bg-hover)}.all-pages-toggle-btn.active{background:var(--accent-blue);color:#fff}.all-pages-groups{display:flex;flex-direction:column;gap:var(--space-5)}.space-group{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);overflow:hidden}.space-group-header{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);background:var(--bg-secondary);border-bottom:1px solid var(--border-light);cursor:pointer;transition:background var(--transition-fast);-webkit-user-select:none;user-select:none}.space-group-header:hover{background:var(--bg-hover)}.space-group-icon{font-size:18px;line-height:1}.space-group-name{font-size:var(--text-sm);font-weight:700;color:var(--text-primary);flex:1}.space-group-meta{font-size:var(--text-xs);color:var(--text-muted)}.space-group-pages{padding:var(--space-1) 0}.all-pages-flat{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);overflow:hidden;padding:var(--space-1) 0}.apl-row{display:flex;align-items:center;gap:var(--space-2);padding:9px var(--space-4);cursor:pointer;transition:background var(--transition-fast);position:relative;border-bottom:1px solid var(--border-light)}.apl-row:last-child{border-bottom:none}.apl-row:hover{background:var(--bg-hover)}.apl-indent-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--border-color);flex-shrink:0;margin-right:2px}.apl-icon{font-size:18px;flex-shrink:0;line-height:1;width:22px;text-align:center}.apl-title-group{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.apl-title{font-size:var(--text-sm);font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.apl-space-crumb{font-size:11px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.apl-right{display:flex;align-items:center;gap:var(--space-3);flex-shrink:0}.apl-status{display:inline-flex;align-items:center;padding:2px 8px;border-radius:100px;font-size:11px;font-weight:600;letter-spacing:.02em}.apl-status.status-published{background:#22c55e1f;color:var(--accent-green)}.apl-status.status-draft{background:#fbbf241f;color:var(--accent-yellow)}.apl-status.status-archived{background:var(--bg-hover);color:var(--text-muted)}.apl-time{font-size:var(--text-xs);color:var(--text-muted);min-width:52px;text-align:right}@media(max-width:768px){.sidebar{position:fixed;left:0;top:0;bottom:0;z-index:var(--z-sidebar);transform:translate(-100%);transition:transform var(--transition-base)}.sidebar.mobile-open{transform:translate(0)}.right-panel{position:fixed;right:0;top:0;bottom:0;z-index:var(--z-panel)}.editor-container{padding:var(--space-4)}.btn-sm{min-height:36px}.btn-icon{min-width:36px;min-height:36px}.page-header{flex-wrap:wrap;gap:var(--space-2)}.page-title-input{font-size:var(--text-2xl)}.app-shell{padding-bottom:env(safe-area-inset-bottom)}}@media(display-mode:standalone){body{overscroll-behavior:none}}.format-toolbar-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:calc(var(--z-modal) - 1)}.format-toolbar{position:fixed;z-index:var(--z-modal);transform:translate(-50%) translateY(-100%);background:var(--bg-surface);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);display:flex;align-items:center;padding:var(--space-1);gap:2px}.format-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--text-secondary);transition:all var(--transition-fast)}.format-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.format-divider{width:1px;height:20px;background:var(--border-light);margin:0 2px}.inline-code,code:not(.block-code){background:var(--bg-code);padding:1px 5px;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:.9em;color:var(--accent-red);border:1px solid var(--border-light)}.block-context-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:calc(var(--z-modal) - 1)}.block-context-menu{position:fixed;z-index:var(--z-modal);background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-1);min-width:180px}.block-context-header{padding:var(--space-2) var(--space-3);font-size:var(--text-xs);font-weight:600;color:var(--text-muted);cursor:pointer}.block-context-header:hover{color:var(--text-primary)}.block-context-item{display:flex;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--text-primary);cursor:pointer;text-align:left}.block-context-item:hover{background:var(--bg-hover)}.block-context-danger{color:var(--accent-red)}.block-context-danger:hover{background:var(--accent-red-light)}.lang-delete-btn{all:unset;cursor:pointer;padding:0 10px;font-size:11px;color:var(--text-muted);line-height:1;flex-shrink:0;opacity:0;transition:opacity .1s,color .1s}.lang-delete-btn:hover{color:var(--accent-red)}div:hover>.lang-delete-btn{opacity:1}.block-context-divider{height:1px;background:var(--border-light);margin:var(--space-1) 0}.block-actions-left{display:flex;align-items:center;gap:2px;opacity:0;transition:opacity var(--transition-fast);flex-shrink:0;margin-top:2px}.block-wrapper:hover .block-actions-left{opacity:1}.block-action-btn{width:20px;height:20px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer}.block-action-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.block-drag-handle{cursor:grab;touch-action:none}.block-drag-handle:active{cursor:grabbing}.toc-list{display:flex;flex-direction:column}.toc-item{display:block;width:100%;text-align:left;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer;transition:all var(--transition-fast)}.toc-item:hover{background:var(--bg-hover);color:var(--text-primary)}.toc-item-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.history-item{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--border-light)}.history-item-title{font-size:var(--text-sm);font-weight:500}.history-item-meta{font-size:var(--text-xs);color:var(--text-muted)}.properties-panel{display:flex;flex-direction:column;gap:var(--space-4)}.prop-group{display:flex;flex-direction:column;gap:var(--space-2)}.prop-label{font-size:var(--text-xs);font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.cover-picker{display:flex;gap:var(--space-1);flex-wrap:wrap}.cover-option{width:36px;height:24px;border-radius:var(--radius-sm);border:2px solid transparent;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:10px;color:var(--text-muted);background:var(--bg-hover)}.cover-option:hover{border-color:var(--border-color)}.cover-option.active{border-color:var(--accent-blue)}.media-resize-wrapper{position:relative;display:inline-block;min-width:60px;max-width:100%}.media-resize-handle{position:absolute;top:0;right:-5px;bottom:0;width:10px;cursor:ew-resize;display:flex;align-items:center;justify-content:center;z-index:10;opacity:0;transition:opacity .15s}.media-resize-handle:after{content:"";width:4px;height:36px;border-radius:3px;background:var(--accent-blue);box-shadow:0 0 0 2px #2563eb33}.media-resize-wrapper:hover .media-resize-handle,.media-resize-handle:hover{opacity:1}.media-resize-label{position:absolute;bottom:8px;right:12px;background:#000000a6;color:#fff;font-size:11px;font-weight:600;padding:2px 7px;border-radius:4px;pointer-events:none;-webkit-user-select:none;user-select:none;letter-spacing:.02em}.block-image-wrapper{width:100%;display:flex}.block-image-empty{width:100%;border:2px dashed var(--border-color);border-radius:var(--radius-md);padding:var(--space-3);display:flex;flex-direction:column;gap:var(--space-2)}.block-image-empty-row{display:flex;gap:var(--space-2);align-items:center;flex-wrap:wrap}.block-image-set{position:relative;display:inline-block;max-width:100%;border-radius:var(--radius-md);overflow:visible}.block-image-set .block-image{display:block;max-width:100%;border-radius:var(--radius-md)}.block-image-overlay{position:absolute;top:var(--space-2);right:var(--space-2);display:flex;gap:var(--space-1);opacity:0;transition:opacity .15s;pointer-events:none}.block-image-set:hover .block-image-overlay,.block-image-set:focus-within .block-image-overlay{opacity:1;pointer-events:auto}.block-image-menu-wrapper{position:relative}.block-image-menu-trigger{font-size:18px;line-height:1;letter-spacing:1px;padding:2px 8px;border-radius:6px}.block-image-menu-dropdown{position:absolute;top:calc(100% + 4px);right:0;background:var(--bg-card, #fff);border:1px solid var(--border-light);border-radius:8px;box-shadow:0 4px 16px #00000024;min-width:140px;z-index:70;padding:4px;display:flex;flex-direction:column;gap:1px}.block-image-menu-item{display:flex;align-items:center;gap:6px;padding:7px 10px;font-size:13px;font-family:inherit;color:var(--text-primary);background:none;border:none;border-radius:5px;cursor:pointer;text-align:left;width:100%;transition:background .1s}.block-image-menu-item:hover{background:var(--bg-hover, rgba(0,0,0,.06))}.block-image-menu-item--danger{color:var(--danger, #ef4444)}.block-image-menu-item--danger:hover{background:#ef444414}.block-image-panel{position:absolute;top:var(--space-2);right:var(--space-2);background:var(--bg-card, #fff);border:1px solid var(--border-light);border-radius:8px;box-shadow:0 4px 16px #0000001f;padding:10px 12px;min-width:200px;z-index:60;display:flex;flex-direction:column;gap:6px}.block-image-panel-header{display:flex;align-items:center;gap:6px;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--border-light)}.block-image-panel-back{background:none;border:none;cursor:pointer;padding:2px 4px;font-size:14px;color:var(--text-muted);border-radius:3px;line-height:1;flex-shrink:0}.block-image-panel-back:hover{background:var(--bg-hover);color:var(--text-primary)}.block-image-panel-title{font-size:11px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.block-image-panel-row{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-secondary)}.block-image-panel-row label{min-width:72px;color:var(--text-muted);font-size:11px}.block-image-panel-row input[type=number],.block-image-panel-row select{padding:3px 6px;font-size:12px;border:1px solid var(--border-light);border-radius:4px;background:var(--bg-input, #fff);color:var(--text-primary)}.block-image-panel-row input[type=url]{flex:1}.block-image-link-panel{min-width:280px;padding:10px 0 0}.block-image-link-panel .block-image-panel-header{padding:0 12px 8px;margin-bottom:0}.block-image-panel-search{padding:6px 10px;border-bottom:1px solid var(--border-light)}.block-image-panel-search input{width:100%;border:1px solid var(--border-light);border-radius:5px;padding:5px 8px;font-size:12px;background:var(--bg-input, #fff);color:var(--text-primary);outline:none;box-sizing:border-box}.block-image-panel-search input:focus{border-color:var(--accent-blue, #3b82f6)}.block-image-link-results{max-height:220px;overflow-y:auto;padding:4px 0}.block-image-link-result{display:flex;align-items:center;gap:8px;padding:6px 12px;cursor:pointer;transition:background .1s;border-radius:0}.block-image-link-result:hover,.block-image-link-result.active{background:var(--bg-hover)}.block-image-link-hint{font-size:10px;color:var(--text-muted);padding:4px 12px 8px;border-top:1px solid var(--border-light);margin-top:2px}.btn-sm{padding:3px 10px;font-size:var(--text-xs);height:auto}.btn-danger{background:var(--danger, #ef4444);color:#fff;border:1px solid transparent}.btn-danger:hover{background:#dc2626}.block-image-placeholder-wrap{position:relative;width:100%}.block-image-placeholder-remove{position:absolute;top:50%;right:var(--space-3);transform:translateY(-50%);background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:var(--text-sm);line-height:1;padding:2px 6px;border-radius:var(--radius-sm);opacity:0;transition:opacity .15s,color .15s}.block-image-placeholder-wrap:hover .block-image-placeholder-remove{opacity:1}.block-image-placeholder-remove:hover{color:var(--danger, #ef4444);background:var(--bg-hover)}.block-image-placeholder{width:100%;height:120px;border:2px dashed var(--border-color);border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:var(--text-sm);cursor:pointer}.block-image-placeholder:hover{border-color:var(--accent-blue);color:var(--accent-blue)}.block-media-wrapper{width:100%}.block-media-set{position:relative;width:100%;border-radius:var(--radius-md);overflow:hidden;background:var(--bg-hover)}.block-media-set--video{aspect-ratio:16 / 9;display:flex;align-items:center;justify-content:center}.block-video-embed{width:100%;height:100%;border:none;display:block}.block-video{width:100%;max-height:480px;display:block;object-fit:contain}.block-audio-player{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4);width:100%;box-sizing:border-box}.block-media-overlay{position:absolute;top:var(--space-2);right:var(--space-2);display:flex;gap:var(--space-1);opacity:0;transition:opacity .15s;pointer-events:none}.block-media-set:hover .block-media-overlay{opacity:1;pointer-events:auto}.mention{display:inline-block;padding:0 6px;border-radius:4px;background:#3b82f61f;color:var(--accent-blue);font-weight:500;white-space:nowrap}.page-link{display:inline-flex;align-items:center;gap:3px;padding:1px 6px;border-radius:4px;background:#6366f11f;color:var(--accent-indigo, #6366f1);font-weight:500;white-space:nowrap;text-decoration:none;border-bottom:1px solid rgba(99,102,241,.3);cursor:pointer;font-size:.95em}.page-link:hover{background:#6366f133;text-decoration:none}.block-comment-badge{position:absolute;top:2px;right:4px;display:inline-flex;align-items:center;gap:3px;padding:1px 6px;border-radius:10px;background:#3b82f61a;color:var(--accent-blue);font-size:10px;font-weight:600;border:none;cursor:pointer;transition:background var(--transition-fast)}.block-comment-badge:hover{background:#3b82f638}@keyframes blockFlash{0%{background-color:#3b82f638}to{background-color:transparent}}.block-wrapper.block-flash{animation:blockFlash 1.1s ease-out;border-radius:var(--radius-md)}.block-bookmark{display:block;padding:var(--space-3) var(--space-4);border:1px solid var(--border-light);border-radius:var(--radius-md);color:var(--accent-blue);font-size:var(--text-sm);transition:all var(--transition-fast)}.block-bookmark:hover{background:var(--bg-surface-hover);border-color:var(--accent-blue)}.block-content strong,.block-content b{font-weight:700}.block-content em,.block-content i{font-style:italic}.block-content u{text-decoration:underline}.block-content s,.block-content strike{text-decoration:line-through}.block-content a{color:var(--accent-blue);text-decoration:underline;cursor:pointer}.block-content a:hover{color:#1d4ed8}.shortcuts-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center}.shortcuts-modal{width:90%;max-width:500px;max-height:80vh;background:var(--bg-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);overflow-y:auto}.shortcuts-header{display:flex;align-items:center;justify-content:space-between;padding:var(--space-4) var(--space-6);border-bottom:1px solid var(--border-light)}.shortcuts-header h2{font-size:var(--text-xl);font-weight:600}.shortcuts-list{padding:var(--space-4) var(--space-6)}.shortcut-row{display:flex;justify-content:space-between;align-items:center;padding:var(--space-2) 0;font-size:var(--text-sm)}.shortcut-keys{display:flex;gap:var(--space-1)}.shortcut-key{background:var(--bg-hover);padding:2px 8px;border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:var(--text-xs);border:1px solid var(--border-light)}.shortcuts-section-title{font-size:var(--text-xs);font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);padding:var(--space-3) 0 var(--space-1);margin-top:var(--space-2);border-top:1px solid var(--border-light)}.shortcuts-section-title:first-child,div:first-child>.shortcuts-section-title{border-top:none;margin-top:0;padding-top:var(--space-1)}.space-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;z-index:var(--z-modal);display:flex;align-items:center;justify-content:center}.space-dialog{width:90%;max-width:450px;background:var(--bg-surface);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);padding:var(--space-6)}.emoji-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:4px}.emoji-option{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);cursor:pointer;font-size:18px}.emoji-option:hover{background:var(--bg-hover)}.emoji-option.active{background:var(--accent-blue-light)}.emoji-picker-popover{position:absolute;top:100%;left:0;z-index:var(--z-modal);background:var(--bg-surface);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-3);max-height:250px;overflow-y:auto;width:340px}.sidebar-create-btn{width:100%;margin:var(--space-2) 0;padding:var(--space-2) var(--space-3);display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--text-secondary);border:1px dashed var(--border-color);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.sidebar-create-btn:hover{background:var(--bg-hover);border-color:var(--accent-blue);color:var(--accent-blue)}.help-page{max-width:1100px;margin:0 auto;padding-bottom:var(--space-12)}.help-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-5)}.help-header-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:var(--radius-lg);background:var(--accent-blue);color:var(--text-on-accent);flex-shrink:0}.help-h1{font-size:var(--text-2xl);font-weight:700;line-height:1.1}.help-subtitle{font-size:var(--text-sm);color:var(--text-secondary);margin-top:2px}.help-search{position:relative;max-width:560px;margin-bottom:var(--space-5)}.help-search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.help-search-input{width:100%;padding-left:36px;padding-right:36px}.help-search-clear{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;padding:4px;border:none;background:transparent;color:var(--text-muted);border-radius:var(--radius-sm);cursor:pointer}.help-search-clear:hover{background:var(--bg-hover);color:var(--text-primary)}.help-layout{display:flex;gap:var(--space-6);align-items:flex-start}.help-nav{width:220px;flex-shrink:0;position:sticky;top:var(--space-4)}.help-nav nav{display:flex;flex-direction:column;gap:2px}.help-nav-item{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);font-size:var(--text-sm);font-weight:500;text-align:left;color:var(--text-secondary);background:transparent;border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.help-nav-item:hover{background:var(--bg-hover);color:var(--text-primary)}.help-nav-item.active{background:var(--accent-blue-light);color:var(--accent-blue)}.help-nav-name{display:flex;align-items:center;gap:var(--space-2);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.help-nav-count{font-size:var(--text-xs);color:var(--text-muted)}.help-content{min-width:0;flex:1}.help-result-count{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-4)}.help-getting-started{margin-bottom:var(--space-8);scroll-margin-top:80px}.help-intro-card{padding:var(--space-6);border-radius:var(--radius-xl);background:var(--gradient-blue);color:#fff}.help-intro-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-xl);font-weight:600}.help-intro-text{margin-top:var(--space-2);max-width:60ch;font-size:var(--text-sm);line-height:1.6;opacity:.95}.help-orientation{margin-top:var(--space-4);padding:var(--space-5)}.help-orientation-title{font-size:var(--text-sm);font-weight:600;margin-bottom:var(--space-3)}.help-jump-grid{margin-top:var(--space-4);display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:var(--space-3)}.help-jump-card{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:var(--space-4);text-align:left;cursor:pointer;transition:all var(--transition-fast)}.help-jump-card:hover{border-color:var(--accent-blue);box-shadow:var(--shadow-md)}.help-jump-head{display:flex;align-items:center;justify-content:space-between;width:100%}.help-jump-name{font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}.help-jump-chevron{color:var(--text-muted)}.help-jump-blurb{font-size:var(--text-xs);color:var(--text-secondary);line-height:1.5}.help-jump-count{margin-top:var(--space-1);font-size:var(--text-xs);font-weight:500;color:var(--text-muted)}.help-categories{display:flex;flex-direction:column;gap:var(--space-10)}.help-category{scroll-margin-top:80px}.help-category-head{margin-bottom:var(--space-3)}.help-category-name{font-size:var(--text-lg);font-weight:700}.help-category-blurb{font-size:var(--text-sm);color:var(--text-secondary)}.help-topics{display:flex;flex-direction:column;gap:var(--space-4)}.help-topic{padding:var(--space-5);scroll-margin-top:80px;cursor:default}.help-topic-title{font-size:var(--text-lg);font-weight:600}.help-topic-desc{margin-top:6px;font-size:var(--text-sm);color:var(--text-secondary);line-height:1.6}.help-location{display:flex;align-items:flex-start;gap:var(--space-2);margin-top:var(--space-3);padding:var(--space-2) var(--space-3);font-size:var(--text-sm);color:var(--accent-blue);background:var(--accent-blue-light);border-radius:var(--radius-md)}.help-location-icon{margin-top:2px;flex-shrink:0}.help-location-label{font-weight:600}.help-shots{margin-top:var(--space-3)}.help-figure{margin:var(--space-3) 0;overflow:hidden;border:1px solid var(--border-color);border-radius:var(--radius-lg);background:var(--bg-primary)}.help-figure-img{display:block;width:100%;height:auto}.help-figure-caption{padding:var(--space-2) var(--space-3);font-size:var(--text-xs);color:var(--text-secondary);border-top:1px solid var(--border-color);background:var(--bg-surface)}.help-steps{margin-top:var(--space-4)}.help-steps-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}.help-steps-list{margin-top:var(--space-2);display:flex;flex-direction:column;gap:var(--space-2);list-style:none;padding:0}.help-step{display:flex;gap:var(--space-3);font-size:var(--text-sm);color:var(--text-primary);line-height:1.6}.help-step-num{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:20px;height:20px;margin-top:1px;border-radius:var(--radius-full);background:var(--accent-blue);color:var(--text-on-accent);font-size:11px;font-weight:600}.help-tips{margin-top:var(--space-4);padding:var(--space-3);border:1px solid var(--accent-yellow);background:var(--accent-yellow-light);border-radius:var(--radius-md)}.help-tips-title{display:flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:600;color:var(--accent-yellow)}.help-tips-list{margin:var(--space-2) 0 0;padding-left:var(--space-5);display:flex;flex-direction:column;gap:4px;font-size:var(--text-sm);color:var(--text-primary);line-height:1.5}.help-clear-link{border:none;background:transparent;color:var(--accent-blue);font-weight:500;cursor:pointer;padding:0}.help-clear-link:hover{text-decoration:underline}@media(max-width:860px){.help-nav{display:none}}.public-site-layout{display:grid;grid-template-columns:260px minmax(0,1fr);max-width:100%}.public-site-layout>*{min-width:0}.public-site-aside{position:sticky;top:0;align-self:start;height:100vh;overflow:auto}.public-site-aside a{overflow-wrap:anywhere}@media(max-width:768px){.public-site-layout{grid-template-columns:minmax(0,1fr)}.public-site-aside{position:static;height:auto;border-right:none!important;border-bottom:1px solid var(--border-light)}}.app-shell-kb{display:flex;flex-direction:column;height:100vh;overflow:hidden;background:var(--bg-primary)}.kb-main{flex:1;overflow-y:auto}.kb-admin-content{max-width:960px;margin:0 auto;padding:var(--space-8) var(--space-6)}.kb-editor-topbar{height:48px;background:#0f172a;display:flex;align-items:center;gap:12px;padding:0 20px;flex-shrink:0;z-index:var(--z-topbar);border-bottom:1px solid rgba(255,255,255,.08)}.kb-editor-topbar-left,.kb-editor-topbar-right{display:flex;align-items:center;gap:4px;flex-shrink:0}.kb-editor-topbar-center{flex:1;display:flex;justify-content:center}.kb-editor-search{display:flex;align-items:center;gap:8px;padding:6px 14px;width:340px;max-width:100%;background:#ffffff12;border:1px solid rgba(255,255,255,.12);border-radius:7px;color:#ffffff80;font-size:13px;font-family:var(--font-body);cursor:pointer;text-align:left;transition:background .15s,border-color .15s}.kb-editor-search:hover{background:#ffffff1c;border-color:#ffffff38;color:#ffffffbf}.kb-editor-nav-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:none;border:none;border-radius:6px;color:#ffffffb3;font-size:13px;font-family:var(--font-body);cursor:pointer;transition:background .15s,color .15s}.kb-editor-nav-btn:hover{background:#ffffff1a;color:#fff}.kb-editor-nav-btn--back{background:#ffffff14;border:1px solid rgba(255,255,255,.14);color:#ffffffe6}.kb-editor-nav-btn--back:hover{background:#ffffff29;border-color:#ffffff40;color:#fff}.kb-editor-topbar-sep{width:1px;height:20px;background:#ffffff1f;flex-shrink:0;margin:0 4px}.kb-topbar{height:56px;background:#0f172a;display:flex;align-items:center;padding:0 24px;gap:16px;flex-shrink:0;z-index:var(--z-topbar);position:relative}.kb-topbar-left{display:flex;align-items:center;flex-shrink:0;min-width:220px}.kb-logo-btn{display:flex;align-items:center;gap:10px;background:none;border:none;cursor:pointer;padding:4px 6px;border-radius:6px;transition:background .15s}.kb-logo-btn:hover{background:#ffffff14}.kb-logo-badge{width:28px;height:28px;background:#e85a1b;border-radius:6px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:800;font-size:13px;flex-shrink:0}.kb-brand-name{color:#fff;font-weight:600;font-size:14px;white-space:nowrap}.kb-topbar-center{flex:1;display:flex;justify-content:center}.kb-search-trigger{display:flex;align-items:center;gap:8px;background:#ffffff1a;border:1px solid rgba(255,255,255,.15);color:#ffffff8c;padding:7px 16px;border-radius:8px;cursor:pointer;font-size:13px;width:380px;max-width:100%;transition:all .15s;font-family:var(--font-body)}.kb-search-trigger:hover{background:#ffffff26;color:#ffffffd9;border-color:#ffffff40}.kb-topbar-right{display:flex;align-items:center;gap:2px;flex-shrink:0;min-width:220px;justify-content:flex-end}.kb-nav-link{color:#ffffffb3;font-size:13px;font-weight:500;padding:6px 12px;border-radius:6px;border:none;background:none;cursor:pointer;transition:all .15s;white-space:nowrap;font-family:var(--font-body)}.kb-nav-link:hover{background:#ffffff1a;color:#fff}.kb-nav-link.active{color:#fff}.kb-new-space-btn{display:inline-flex;align-items:center;background:#ffffff1a!important;border:1px solid rgba(255,255,255,.18)!important;color:#fff!important}.kb-new-space-btn:hover{background:#ffffff2e!important}.kb-avatar-btn{background:none;border:none;cursor:pointer;padding:2px;border-radius:50%;display:flex;margin-left:6px;transition:opacity .15s}.kb-avatar-btn:hover{opacity:.85}.kb-theme-btn{background:none;border:none;cursor:pointer;color:#ffffffa6;padding:6px 8px;border-radius:6px;display:flex;align-items:center;transition:all .15s}.kb-theme-btn:hover{background:#ffffff1a;color:#fff}.kb-dropdown{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:8px;box-shadow:var(--shadow-md);min-width:180px;overflow:hidden;padding:4px 0}.kb-dropdown-header{padding:10px 14px;border-bottom:1px solid var(--border-light);margin-bottom:4px;color:var(--text-primary)}.kb-dropdown-divider{height:1px;background:var(--border-light);margin:4px 0}.kb-dropdown-item{display:flex;align-items:center;gap:8px;width:100%;padding:8px 14px;background:none;border:none;color:var(--text-primary);font-size:13px;cursor:pointer;text-align:left;transition:background .15s;font-family:var(--font-body)}.kb-dropdown-item:hover{background:var(--bg-hover)}.kb-dropdown-item.danger{color:var(--danger)}.kb-dropdown-item.danger:hover{background:#dc262614}.kb-page{max-width:1200px;margin:0 auto;padding:0 24px 48px}.kb-layout-bar{display:flex;align-items:center;gap:16px;padding:20px 0 16px;border-bottom:1px solid var(--border-light);margin-bottom:0}.kb-layout-label{font-size:10px;font-weight:700;letter-spacing:.12em;color:var(--text-muted);flex-shrink:0}.kb-layout-tabs{display:flex;gap:0}.kb-layout-tab{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;font-size:13px;font-weight:500;color:var(--text-secondary);transition:color .12s,border-color .12s;margin-bottom:-1px}.kb-layout-tab:hover{color:var(--text-primary)}.kb-layout-tab.active{color:var(--accent-blue, #2563eb);border-bottom-color:var(--accent-blue, #2563eb);font-weight:600}.kb-stats-bar{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:0;border:1px solid var(--border-light);border-radius:6px;margin:16px 0 20px;overflow:hidden;background:var(--bg-surface)}.kb-stats-item{display:flex;align-items:center;gap:7px;padding:10px 22px;cursor:pointer;border-right:1px solid var(--border-light);transition:background .1s;flex-shrink:0}.kb-stats-item:last-child{border-right:none}.kb-stats-item:hover{background:var(--bg-hover)}.kb-stats-dot{width:9px;height:9px;border-radius:50%;flex-shrink:0}.kb-stats-name{font-size:13px;color:var(--text-primary);white-space:nowrap}.kb-stats-count{font-size:13px;font-weight:700;color:var(--text-primary);font-variant-numeric:tabular-nums}.kb-atlas-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}@media(max-width:900px){.kb-atlas-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.kb-atlas-grid{grid-template-columns:1fr}}.kb-atlas-card{background:var(--bg-surface);border:1px solid var(--border-light);border-left:4px solid #ccc;border-radius:6px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .15s}.kb-atlas-card:hover{box-shadow:0 4px 16px #00000017}.kb-atlas-card-header{display:flex;align-items:center;justify-content:space-between;padding:14px 16px 10px;cursor:pointer;-webkit-user-select:none;user-select:none}.kb-atlas-card-name{font-size:15px;font-weight:700;color:var(--text-primary)}.kb-atlas-count-badge{font-size:11px;font-weight:500;color:var(--text-secondary);background:var(--bg-hover);border:1px solid var(--border-light);border-radius:20px;padding:2px 9px;flex-shrink:0;margin-left:8px}.kb-atlas-card-body{flex:1;padding:0 0 4px}.kb-atlas-empty{padding:10px 16px;font-size:12px;color:var(--text-muted)}.kb-atlas-article-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--border-light)}.kb-atlas-article-row{display:flex;align-items:center;gap:8px;padding:8px 14px;cursor:pointer;border-bottom:1px solid var(--border-light);transition:background .1s}.kb-atlas-article-row:hover{background:var(--bg-hover)}.kb-atlas-arrow{font-size:15px;color:var(--text-muted);flex-shrink:0;line-height:1}.kb-atlas-title{font-size:13px;color:var(--text-primary);flex:1;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kb-atlas-article-row:hover .kb-atlas-title{text-decoration:underline;text-underline-offset:2px}.kb-atlas-dash{font-size:12px;color:var(--text-muted);flex-shrink:0}.kb-atlas-draft{font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:var(--bg-hover);color:var(--text-muted);border:1px solid var(--border-light);padding:1px 6px;border-radius:3px;flex-shrink:0}.kb-atlas-more{display:block;width:100%;padding:8px 14px;background:none;border:none;border-top:1px solid var(--border-light);cursor:pointer;font-size:12px;font-weight:500;color:var(--accent-blue, #2563eb);text-align:left;transition:background .1s,color .1s;letter-spacing:.01em}.kb-atlas-more:hover{background:var(--bg-hover);color:#1d4ed8}.kb-runway-list{display:flex;flex-direction:column;gap:0;border:1px solid var(--border-light);border-radius:6px;overflow:hidden}.kb-runway-row{display:flex;align-items:flex-start;border-bottom:1px solid var(--border-light);background:var(--bg-surface)}.kb-runway-row:last-child{border-bottom:none}.kb-runway-label{display:flex;flex-direction:column;justify-content:center;gap:2px;width:180px;flex-shrink:0;padding:14px 16px;border-left:4px solid #ccc;border-right:1px solid var(--border-light);cursor:pointer;background:var(--bg-hover)}.kb-runway-label:hover{background:var(--bg-active)}.kb-runway-name{font-size:13px;font-weight:700;color:var(--text-primary)}.kb-runway-count{font-size:11px;color:var(--text-muted);font-variant-numeric:tabular-nums}.kb-runway-articles{flex:1;display:flex;flex-wrap:wrap;gap:6px;padding:12px 16px;align-items:center}.kb-runway-empty{font-size:12px;color:var(--text-muted)}.kb-runway-article{background:var(--bg-hover);border:1px solid var(--border-light);border-radius:4px;padding:4px 10px;font-size:12px;color:var(--text-primary);cursor:pointer;white-space:nowrap;transition:background .1s,border-color .1s;display:inline-flex;align-items:center}.kb-runway-article:hover{background:color-mix(in srgb,var(--accent-blue, #2563eb) 8%,transparent);border-color:var(--accent-blue, #2563eb);color:var(--accent-blue, #2563eb)}.kb-station-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}@media(max-width:640px){.kb-station-grid{grid-template-columns:1fr}}.kb-station-block{border:1px solid var(--border-light);border-radius:6px;overflow:hidden;background:var(--bg-surface)}.kb-station-header{display:flex;align-items:center;gap:8px;padding:10px 14px;cursor:pointer;-webkit-user-select:none;user-select:none}.kb-station-icon{font-size:16px}.kb-station-name{font-size:13px;font-weight:700;color:#fff;flex:1}.kb-station-count{font-size:12px;color:#fffc;background:#00000026;border-radius:10px;padding:1px 8px;font-variant-numeric:tabular-nums}.kb-station-table{width:100%;border-collapse:collapse}.kb-station-tr{cursor:pointer;border-top:1px solid var(--border-light);transition:background .1s}.kb-station-tr:hover{background:var(--bg-hover)}.kb-station-num{font-size:11px;color:var(--text-muted);padding:8px 8px 8px 14px;font-variant-numeric:tabular-nums;width:32px;vertical-align:middle}.kb-station-title{font-size:13px;color:var(--text-primary);padding:8px 14px 8px 4px;vertical-align:middle}.kb-station-tr:hover .kb-station-title{text-decoration:underline;text-underline-offset:2px}.kb-station-empty{padding:12px 14px;font-size:12px;color:var(--text-muted)}.kb-home-ops-grid{padding-top:28px}.kb-categories-title{font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--text-muted);margin-bottom:20px;text-transform:uppercase}.kb-ops-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}@media(max-width:900px){.kb-ops-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.kb-ops-grid{grid-template-columns:1fr}}.kb-ops-card{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:6px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .15s}.kb-ops-card:hover{box-shadow:0 4px 18px #0000001a}.kb-ops-card-header{display:flex;align-items:center;justify-content:space-between;padding:11px 16px;cursor:pointer;-webkit-user-select:none;user-select:none}.kb-ops-card-name{color:#fff;font-size:13px;font-weight:700;letter-spacing:.06em;line-height:1.2}.kb-ops-card-count{color:#ffffffd9;font-size:11px;font-weight:500;white-space:nowrap;margin-left:8px;flex-shrink:0}.kb-ops-card-body{flex:1;padding:10px 0}.kb-ops-empty{padding:16px;font-size:12px;color:var(--text-muted)}.kb-ops-article-list{list-style:none;margin:0;padding:0}.kb-ops-article-btn{display:flex;align-items:baseline;gap:8px;width:100%;padding:5px 16px;background:none;border:none;cursor:pointer;text-align:left;font-family:var(--font-body);transition:background .1s;border-radius:0}.kb-ops-article-btn:hover{background:var(--bg-hover)}.kb-ops-num{font-size:12px;color:var(--text-muted);font-variant-numeric:tabular-nums;flex-shrink:0;min-width:22px}.kb-ops-title{font-size:13px;font-weight:500;line-height:1.4;text-decoration:none}.kb-ops-article-btn:hover .kb-ops-title{text-decoration:underline;text-underline-offset:2px}.kb-ops-draft-badge{font-size:9px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;background:#00000014;color:var(--text-muted);padding:1px 5px;border-radius:3px;flex-shrink:0;margin-left:auto}.kb-categories-section{margin-top:8px}.kb-categories-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.kb-category-card{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:10px;padding:20px;cursor:pointer;transition:box-shadow .15s}.kb-category-card:hover{box-shadow:var(--shadow-md)}.kb-category-header{display:flex;align-items:center;gap:8px;margin-bottom:8px}.kb-category-dot{width:10px;height:10px;border-radius:50%;flex-shrink:0}.kb-category-name{font-weight:700;font-size:15px;color:var(--text-primary)}.kb-category-desc{font-size:12px;color:var(--text-secondary);margin:0 0 14px;line-height:1.55}.kb-category-meta{font-size:12px;color:#e85a1b;font-weight:600}.kb-space-layout{display:flex;flex-direction:column;min-height:100%}.kb-space-tabs{background:#0f172a;display:flex;align-items:stretch;padding:0 16px;flex-shrink:0;position:sticky;top:0;z-index:10}.kb-space-home-btn{display:flex;align-items:center;gap:6px;padding:0 14px;background:none;border:none;border-right:1px solid rgba(255,255,255,.1);color:#ffffff8c;font-size:13px;font-family:var(--font-body);cursor:pointer;white-space:nowrap;flex-shrink:0;transition:color .15s;margin-right:8px}.kb-space-home-btn:hover{color:#fff}.kb-space-tabs-center{display:flex;align-items:stretch;flex:1;overflow-x:auto;scroll-behavior:smooth;-webkit-overflow-scrolling:touch}.kb-space-tabs-center::-webkit-scrollbar{height:3px}.kb-space-tabs-center::-webkit-scrollbar-thumb{background:#ffffff40;border-radius:2px}.kb-space-tabs-center::-webkit-scrollbar-track{background:transparent}.kb-space-tabs-spacer{flex-shrink:0;width:80px}.kb-space-tab{color:#fff9;font-size:13px;font-weight:500;padding:12px 16px;border:none;background:none;cursor:pointer;white-space:nowrap;border-bottom:2px solid transparent;transition:color .15s,border-color .15s;font-family:var(--font-body)}.kb-space-tab:hover{color:#ffffffe6}.kb-space-tab.active{color:#e85a1b;border-bottom-color:#e85a1b}.kb-space-body{display:flex;align-items:flex-start;max-width:1100px;margin:0 auto;padding:28px 24px 48px;width:100%;gap:0}.kb-article-area{flex:1;min-width:0;margin-right:28px}.kb-article-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;gap:12px}.kb-article-count-title{font-size:16px;font-weight:700;color:var(--text-primary);margin:0}.kb-new-article-btn{display:flex;align-items:center;gap:5px;background:#e85a1b;color:#fff;border:none;border-radius:6px;padding:7px 14px;font-size:12px;font-weight:600;cursor:pointer;transition:background .15s;font-family:var(--font-body)}.kb-new-article-btn:hover{background:#c94d16}.kb-manage-btn{background:none;border:1px solid var(--border-light);border-radius:6px;padding:6px 8px;cursor:pointer;color:var(--text-secondary);display:flex;align-items:center;transition:all .15s}.kb-manage-btn:hover{background:var(--bg-hover);border-color:var(--border-color);color:var(--text-primary)}.kb-filter-bar{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.kb-filter-btn{padding:5px 14px;border-radius:6px;border:1px solid var(--border-light);background:var(--bg-surface);font-size:12px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .15s;font-family:var(--font-body)}.kb-filter-btn:hover{border-color:var(--accent-blue);color:var(--accent-blue)}.kb-filter-btn.active{background:var(--accent-blue);border-color:var(--accent-blue);color:#fff}.kb-article-list{display:flex;flex-direction:column;gap:3px}.kb-article-item{display:flex;align-items:center;justify-content:space-between;padding:14px 16px;background:var(--bg-surface);border:1px solid var(--border-light);border-left-width:3px;border-radius:0 8px 8px 0;cursor:pointer;transition:box-shadow .15s;gap:16px}.kb-article-item:hover{box-shadow:var(--shadow-sm)}.kb-article-item-left{flex:1;min-width:0}.kb-article-title{font-size:14px;font-weight:600;color:var(--text-primary);margin-bottom:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kb-article-meta{font-size:11px;color:var(--text-muted);display:flex;align-items:center;gap:5px;flex-wrap:wrap}.kb-article-tag{color:var(--text-secondary);font-weight:500}.kb-article-read-btn{color:var(--accent-blue);font-size:12px;font-weight:600;background:none;border:none;cursor:pointer;white-space:nowrap;flex-shrink:0;padding:4px 8px;border-radius:4px;transition:background .15s;font-family:var(--font-body)}.kb-article-read-btn:hover{background:var(--accent-blue-light)}.kb-article-actions{display:flex;align-items:center;gap:6px;flex-shrink:0}.kb-article-menu-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;border:none;background:none;color:var(--text-muted);cursor:pointer;opacity:0;transition:opacity .15s,background .15s;font-family:var(--font-body)}.kb-article-item:hover .kb-article-menu-btn{opacity:1}.kb-article-menu-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.kb-tree-indent-icon{font-size:11px;color:var(--text-muted);margin-right:4px;flex-shrink:0}.kb-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;z-index:200}.kb-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:201;background:var(--bg-surface);border:1px solid var(--border-light);border-radius:12px;width:480px;max-width:calc(100vw - 32px);max-height:80vh;display:flex;flex-direction:column;box-shadow:var(--shadow-md)}.kb-modal-header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px 12px;border-bottom:1px solid var(--border-light);font-weight:600;font-size:14px;color:var(--text-primary)}.kb-modal-tabs{display:flex;gap:0;padding:12px 20px 0;border-bottom:1px solid var(--border-light)}.kb-modal-tab{padding:8px 16px;font-size:13px;font-weight:500;color:var(--text-muted);background:none;border:none;cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-1px;transition:color .15s,border-color .15s;font-family:var(--font-body)}.kb-modal-tab.active{color:var(--accent-blue);border-bottom-color:var(--accent-blue)}.kb-modal-tab:hover:not(.active){color:var(--text-secondary)}.kb-modal-search{display:flex;align-items:center;gap:8px;padding:12px 20px;border-bottom:1px solid var(--border-light);color:var(--text-muted)}.kb-modal-search-input{flex:1;background:none;border:none;outline:none;font-size:13px;color:var(--text-primary);font-family:var(--font-body)}.kb-modal-search-input::placeholder{color:var(--text-muted)}.kb-modal-list{flex:1;overflow-y:auto;padding:8px}.kb-modal-list-item{display:flex;align-items:center;gap:10px;width:100%;padding:9px 12px;border-radius:8px;border:none;background:none;cursor:pointer;text-align:left;color:var(--text-primary);font-family:var(--font-body);font-size:13px;transition:background .12s}.kb-modal-list-item:hover{background:var(--bg-hover)}.kb-modal-list-item.selected{background:var(--accent-blue-light)}.kb-modal-item-icon{font-size:16px;flex-shrink:0}.kb-modal-item-label{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.kb-modal-item-sub{font-size:11px;color:var(--text-muted)}.kb-modal-check{font-size:13px;color:var(--accent-blue);font-weight:700;flex-shrink:0}.kb-modal-empty{text-align:center;padding:32px 0;color:var(--text-muted);font-size:13px;margin:0}.kb-modal-footer{display:flex;align-items:center;padding:12px 20px;border-top:1px solid var(--border-light);gap:8px}.kb-modal-selection{font-size:12px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}.kb-manage-panel{margin-top:28px;background:var(--bg-surface);border:1px solid var(--border-light);border-radius:10px;padding:20px}.kb-manage-panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;border-bottom:1px solid var(--border-light);font-size:14px;color:var(--text-primary)}.kb-drawer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000059;z-index:200}.kb-settings-drawer{position:fixed;top:0;right:0;bottom:0;width:360px;background:var(--bg-surface);border-left:1px solid var(--border-light);box-shadow:-6px 0 28px #0000002e;z-index:201;display:flex;flex-direction:column;transform:translate(100%);transition:transform .24s cubic-bezier(.4,0,.2,1)}.kb-settings-drawer.open{transform:translate(0)}.kb-settings-drawer-header{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;border-bottom:1px solid var(--border-light);font-size:15px;font-weight:700;color:var(--text-primary);flex-shrink:0}.kb-settings-drawer-body{flex:1;overflow-y:auto;padding:20px}.kb-settings-field{margin-bottom:20px}.kb-settings-label{display:block;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:6px}.kb-member-row{display:flex;align-items:center;gap:8px;padding:6px 0;border-bottom:1px solid var(--border-light)}.kb-member-row:last-child{border-bottom:none}.kb-icon-preview-btn{width:52px;height:52px;font-size:24px;display:flex;align-items:center;justify-content:center;background:var(--bg-primary);border:1.5px solid var(--border-light);border-radius:8px;cursor:pointer;flex-shrink:0;transition:border-color .15s}.kb-icon-preview-btn:hover{border-color:var(--accent-blue)}.kb-icon-grid{display:grid;grid-template-columns:repeat(8,1fr);gap:4px;margin-top:10px;padding:10px;background:var(--bg-primary);border:1px solid var(--border-light);border-radius:8px;max-height:200px;overflow-y:auto}.kb-icon-option{width:34px;height:34px;font-size:18px;display:flex;align-items:center;justify-content:center;background:none;border:none;border-radius:6px;cursor:pointer;transition:background .12s}.kb-icon-option:hover{background:var(--bg-hover)}.kb-archived-section{margin-top:24px;border-top:1px dashed var(--border-light);padding-top:16px}.kb-archived-toggle{display:flex;align-items:center;gap:8px;background:none;border:none;cursor:pointer;color:var(--text-muted);font-size:13px;font-weight:600;font-family:var(--font-body);padding:0;transition:color .15s}.kb-archived-toggle:hover{color:var(--text-primary)}.kb-archived-icon{font-size:11px}.kb-archived-count{background:var(--bg-hover);color:var(--text-muted);font-size:11px;font-weight:700;padding:1px 7px;border-radius:10px}.kb-sidebar{width:224px;flex-shrink:0}.kb-sidebar-card{background:var(--bg-surface);border:1px solid var(--border-light);border-radius:10px;padding:16px;margin-bottom:16px}.kb-sidebar-title{font-size:10px;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px}.kb-today-update-card{background:#e85a1b0f;border:1px solid rgba(232,90,27,.25);border-left-width:3px;border-radius:0 6px 6px 0;padding:10px 12px;cursor:pointer;transition:background .15s}.kb-today-update-card:hover{background:#e85a1b1a}.kb-today-update-title{font-size:12px;font-weight:600;color:var(--text-primary);margin-bottom:4px;line-height:1.4}.kb-today-update-sub{font-size:11px;color:var(--text-muted)}.kb-today-update-by{color:var(--text-secondary);font-style:italic}.kb-quick-links{display:flex;flex-direction:column;gap:1px}.kb-quick-link{display:block;color:var(--accent-blue);font-size:12px;font-weight:500;padding:5px 0;background:none;border:none;cursor:pointer;text-align:left;transition:color .15s;font-family:var(--font-body)}.kb-quick-link:hover{text-decoration:underline}.kb-quick-link:before{content:"— ";color:var(--text-muted)}@media(max-width:768px){.kb-space-body{flex-direction:column;padding:20px 16px}.kb-article-area{margin-right:0;margin-bottom:24px}.kb-sidebar{width:100%}.kb-page{padding:0 16px 32px}.kb-topbar{padding:0 16px}.kb-brand-name{display:none}.kb-search-trigger{width:200px}}.vh-panel{position:fixed;top:0;right:0;bottom:0;width:360px;background:var(--bg-surface);border-left:1px solid var(--border-color);z-index:401;display:flex;flex-direction:column;box-shadow:-6px 0 32px #00000024}.vh-header{display:flex;align-items:center;justify-content:space-between;padding:16px 18px;border-bottom:1px solid var(--border-color);flex-shrink:0}.vh-header-title{display:flex;align-items:center;gap:8px;font-weight:700;font-size:15px;color:var(--text-primary)}.vh-close{border:none;background:transparent;cursor:pointer;color:var(--text-secondary);font-size:20px;line-height:1;padding:2px 4px;border-radius:4px}.vh-close:hover{background:var(--bg-hover)}.vh-save-section{padding:12px 14px;border-bottom:1px solid var(--border-color);flex-shrink:0;display:flex;flex-direction:column;gap:8px}.vh-save-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.vh-type-picker{display:flex;gap:6px}.vh-type-btn{flex:1;padding:6px 4px;border:1.5px solid;border-radius:7px;font-size:11.5px;font-weight:600;cursor:pointer;background:transparent;transition:background .12s,color .12s;white-space:nowrap}.vh-type-btn:not(.active):hover{opacity:.8}.vh-type-desc{font-size:11px;color:var(--text-muted);line-height:1.4;min-height:14px}.vh-save-row{display:flex;gap:8px}.vh-save-input{flex:1;padding:7px 10px;border:1px solid var(--border-color);border-radius:6px;font-size:13px;background:var(--bg-surface);color:var(--text-primary);outline:none}.vh-save-input:focus{border-color:var(--accent-blue, #2563eb)}.vh-save-btn{padding:7px 14px;border:none;border-radius:6px;color:#fff;font-size:13px;font-weight:600;cursor:pointer;flex-shrink:0;transition:opacity .12s}.vh-save-btn:disabled{opacity:.5;cursor:default}.vh-list{flex:1;overflow-y:auto;padding:8px 0 12px}.vh-empty{padding:28px 20px;text-align:center;font-size:13px;color:var(--text-secondary);line-height:1.6}.vh-day-group{margin-bottom:4px}.vh-day-label{font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);padding:10px 16px 4px}.vh-item{display:flex;align-items:flex-start;gap:0;padding:0 10px 0 12px;position:relative;border-left:3px solid transparent;transition:background .1s}.vh-item:hover{background:var(--bg-hover)}.vh-item:hover .vh-restore-btn,.vh-item:hover .vh-preview-btn{opacity:1}.vh-item-classified{border-left-width:3px;border-left-style:solid}.vh-type-pill{font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px;border:1px solid transparent;white-space:nowrap;flex-shrink:0}.vh-actions{display:flex;flex-direction:column;gap:4px;align-items:flex-end;padding:10px 0;flex-shrink:0;opacity:0;transition:opacity .15s}.vh-item:hover .vh-actions{opacity:1}.vh-preview-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 9px;border-radius:5px;border:1px solid var(--border-color);background:var(--bg-surface);color:var(--text-primary);font-size:11px;font-weight:500;cursor:pointer;white-space:nowrap}.vh-preview-btn:hover{background:var(--bg-hover)}.vh-timeline{display:flex;flex-direction:column;align-items:center;width:20px;flex-shrink:0;padding-top:14px}.vh-dot{width:10px;height:10px;border-radius:50%;border:2px solid #ccc;flex-shrink:0;z-index:1}.vh-line{width:2px;flex:1;min-height:18px;background:var(--border-light);margin:2px 0}.vh-item-body{flex:1;padding:10px 8px 10px 10px;cursor:pointer;min-width:0}.vh-item-top{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:4px}.vh-type-pill{font-size:11px;font-weight:600;padding:2px 8px;border-radius:20px;white-space:nowrap;flex-shrink:0}.vh-item-time{font-size:11px;color:var(--text-muted);white-space:nowrap}.vh-item-summary{font-size:12px;font-weight:500;color:var(--text-primary);margin-bottom:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vh-item-meta{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--text-muted)}.vh-diff-compact{margin-top:4px;font-size:11px;color:var(--text-muted);line-height:1.4}.vh-diff-list{margin-top:8px;background:var(--bg-hover);border-radius:6px;padding:6px 8px;border:1px solid var(--border-light);display:flex;flex-direction:column;gap:0}.vh-diff-empty{font-size:11px;color:var(--text-muted);padding:2px 0}.vh-diff-item{display:flex;align-items:flex-start;gap:7px;padding:4px 0;border-bottom:1px solid var(--border-light);font-size:11.5px}.vh-diff-item:last-child{border-bottom:none}.vh-diff-icon{font-size:13px;flex-shrink:0;margin-top:1px;width:18px;text-align:center}.vh-diff-content{display:flex;flex-direction:column;gap:1px;min-width:0}.vh-diff-text{color:var(--text-primary);font-weight:500;line-height:1.3}.vh-diff-detail{color:var(--text-muted);font-size:10.5px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:220px}.vh-restore-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 9px;border-radius:5px;border:1px solid var(--border-color);background:var(--bg-surface);color:var(--text-primary);font-size:11px;font-weight:500;cursor:pointer;white-space:nowrap}.vh-restore-btn:hover{background:var(--bg-hover)}.vh-restore-btn:disabled{opacity:.4;cursor:default}.vh-footer{padding:10px 16px;border-top:1px solid var(--border-color);font-size:11px;color:var(--text-muted);flex-shrink:0}.vp-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:600;display:flex;flex-direction:column;background:var(--bg-primary)}.vp-topbar{display:flex;align-items:center;justify-content:space-between;padding:10px 20px;border-bottom:1px solid var(--border-color);flex-shrink:0;background:var(--bg-surface);gap:16px;flex-wrap:wrap}.vp-topbar-left{display:flex;align-items:center;gap:10px;flex-wrap:wrap;min-width:0}.vp-topbar-right{display:flex;align-items:center;gap:10px;flex-shrink:0}.vp-back-btn{background:none;border:1px solid var(--border-color);border-radius:6px;padding:5px 12px;font-size:13px;cursor:pointer;color:var(--text-primary);white-space:nowrap}.vp-back-btn:hover{background:var(--bg-hover)}.vp-type-badge{font-size:12px;font-weight:700;padding:4px 10px;border-radius:20px;border:1.5px solid;white-space:nowrap;letter-spacing:.02em}.vp-version-info{font-size:13px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.vp-diff-badge{font-size:12px;color:var(--text-muted);background:var(--bg-hover);border:1px solid var(--border-light);border-radius:20px;padding:4px 10px;white-space:nowrap}.vp-restore-btn{display:inline-flex;align-items:center;gap:6px;padding:7px 16px;border:none;border-radius:7px;background:#dc2626;color:#fff;font-size:13px;font-weight:600;cursor:pointer;white-space:nowrap;transition:opacity .12s}.vp-restore-btn:hover{opacity:.88}.vp-restore-btn:disabled{opacity:.5;cursor:default}.vp-scroll{flex:1;overflow-y:auto;padding:40px 24px 80px}.vp-page{max-width:720px;margin:0 auto}.vp-page-header{margin-bottom:32px}.vp-page-emoji{font-size:52px;line-height:1;margin-bottom:12px}.vp-page-title{font-size:32px;font-weight:700;color:var(--text-primary);margin:0 0 12px;line-height:1.25}.vp-page-meta{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.vp-tag{font-size:12px;background:var(--bg-hover);border:1px solid var(--border-light);border-radius:4px;padding:2px 7px;color:var(--text-secondary)}.vp-diff-legend{display:flex;align-items:center;gap:8px;padding:10px 14px;border:1px solid;border-radius:8px;font-size:13px;color:var(--text-secondary);margin-bottom:24px}.vp-blocks{display:flex;flex-direction:column;gap:2px}.vp-block{position:relative;border-left:3px solid transparent;padding-left:10px;border-radius:0 6px 6px 0;transition:background .1s}.vp-block-changed{border-left-width:3px;border-left-style:solid;background:color-mix(in srgb,currentColor 4%,transparent)}.vp-block-badge{display:inline-block;font-size:10px;font-weight:700;color:#fff;border-radius:3px;padding:1px 6px;margin-bottom:3px;letter-spacing:.04em}.preview-block-content{padding:3px 0;color:var(--text-primary);line-height:1.6}.vp-empty{text-align:center;padding:40px 20px;color:var(--text-muted);font-size:14px}.preview-table{border-collapse:collapse;width:100%;font-size:13px}.preview-table td{border:1px solid var(--border-color);padding:6px 10px;vertical-align:top}.preview-table tr:first-child td{background:var(--bg-hover);font-weight:600}.preview-block-placeholder{color:var(--text-muted);font-size:13px;font-style:italic;padding:8px 0}.ow-spell-err{cursor:pointer}.ow-spell-err.ow-spell-spelling{text-decoration:underline wavy #e53e3e;text-underline-offset:3px;text-decoration-skip-ink:none}.ow-spell-err.ow-spell-grammar{text-decoration:underline wavy #d69e2e;text-underline-offset:3px;text-decoration-skip-ink:none}.ow-spell-popup{background:var(--bg-elevated, #fff);border:1px solid var(--border-light, #e2e8f0);border-radius:8px;padding:8px 10px;box-shadow:0 4px 20px #00000024;z-index:9999;min-width:160px;max-width:280px}.ow-spell-popup-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px}.ow-spell-popup-type{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.ow-spell-popup-ignore{background:none;border:none;cursor:pointer;font-size:12px;color:var(--text-muted);padding:0 2px;line-height:1}.ow-spell-popup-ignore:hover{color:var(--text-primary)}.ow-spell-popup-suggestion{font-size:13.5px;font-weight:500;color:var(--text-primary);margin-bottom:8px;padding:4px 8px;background:var(--bg-hover);border-radius:5px;word-break:break-word}.ow-spell-popup-apply{background:var(--accent, #3b82f6);color:#fff;border:none;border-radius:5px;padding:5px 0;font-size:12px;font-weight:500;cursor:pointer;width:100%;transition:opacity .12s}.ow-spell-popup-apply:hover{opacity:.85}@keyframes ow-blink-pulse{0%,to{opacity:1}50%{opacity:.25}}.ow-blink{animation:ow-blink-pulse 1.2s ease-in-out infinite}::highlight(ow-find-all){background-color:#ffd50059;color:inherit}::highlight(ow-find-current){background-color:#ff8c00b3;color:#000}
