collabmd 0.1.26 → 0.1.27

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- *,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;scroll-behavior:smooth;hanging-punctuation:first last;scroll-padding-top:var(--space-16)}body{min-height:100dvh;line-height:1.6;font-family:var(--font-body,sans-serif);font-size:var(--text-sm);color:var(--color-text);background-color:var(--color-bg)}img,picture,video,canvas,svg{max-width:100%;height:auto;display:block}ul[role=list],ol[role=list]{list-style:none}input,button,textarea,select{font:inherit;color:inherit}h1,h2,h3,h4,h5,h6{font-family:var(--font-display,inherit);text-wrap:balance;line-height:1.15}p,li,figcaption{text-wrap:pretty;max-width:72ch}::selection{background:oklch(from var(--color-primary) l c h / .25);color:var(--color-text)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px;border-radius:var(--radius-sm)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}button{cursor:pointer;background:0 0;border:none}table{border-collapse:collapse;width:100%}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:root{--text-xs:clamp(.75rem, .7rem + .25vw, .875rem);--text-sm:clamp(.875rem, .8rem + .35vw, 1rem);--text-base:clamp(1rem, .9rem + .5vw, 1.125rem);--text-lg:clamp(1.125rem, .95rem + .85vw, 1.5rem);--text-xl:clamp(1.5rem, 1rem + 1.5vw, 2.25rem);--text-2xl:clamp(2rem, 1.2rem + 2.5vw, 3.5rem);--text-label:12px;--text-meta:11px;--text-caption:10px;--text-micro:9px;--text-code-sm:11.5px;--text-ui-sm:13px;--text-ui-md:14px;--text-title-sm:15px;--text-title-md:18px;--font-body:"Inter", system-ui, sans-serif;--font-display:"Geist", "Cal Sans", "Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--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;--space-24:6rem;--space-32:8rem;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xs:2px;--radius-xs:4px;--radius-lg-plus:10px;--radius-xl-plus:18px;--radius-full:9999px;--transition-interactive:.18s cubic-bezier(.16, 1, .3, 1);--content-narrow:640px;--content-default:960px;--content-wide:1200px;--preview-content-width:720px;--panel-comments-width:min(300px, 34vw);--panel-comments-min-width:240px;--panel-outline-width:220px;--toolbar-h:48px;--control-h-xs:28px;--control-h-sm:30px;--control-h-md:36px;--control-h-lg:44px;--control-icon-sm:14px;--control-icon-md:16px;--panel-border-width:1px}:root,[data-theme=light]{--color-bg:#f5f5f7;--color-surface:#fff;--color-surface-2:#fafafe;--color-surface-offset:#eeeef2;--color-surface-offset-2:#e6e6eb;--color-surface-dynamic:#dddde3;--color-surface-raised:#fff;--color-surface-ink:#0f1117;--color-divider:#d1d1d8;--color-border:#c4c4ce;--color-text:#1a1a2e;--color-text-muted:#6b6b80;--color-text-faint:#a0a0b0;--color-text-inverse:#f5f5f7;--color-primary:#4f46e5;--color-primary-hover:#4338ca;--color-primary-active:#3730a3;--color-primary-highlight:#e0e0ff;--color-comment:#4f46e5;--color-comment-soft:#4f46e514;--color-comment-strong:#4f46e524;--color-comment-text:#3730a3;--color-error:#dc2626;--color-error-highlight:#fce8e8;--color-success:#16a34a;--color-success-highlight:#dcfce7;--color-warning:#d97706;--color-warning-highlight:#fef3c7;--diff-add-bg:#16a34a0f;--diff-add-line-bg:#16a34a24;--diff-add-text:#16a34a;--diff-del-bg:#dc26260f;--diff-del-line-bg:#dc262624;--diff-del-text:#dc2626;--diff-hunk-bg:#4f46e514;--diff-hunk-text:#4f46e5;--diff-gutter:#a0a0b0;--surface-fill-subtle:color-mix(in oklab, var(--color-surface) 92%, var(--color-surface-offset) 8%);--surface-fill-strong:color-mix(in oklab, var(--color-surface-offset) 72%, var(--color-surface-offset-2) 28%);--surface-overlay:color-mix(in srgb, var(--color-surface) 84%, var(--color-surface-offset) 16%);--surface-overlay-soft:color-mix(in srgb, var(--color-surface) 88%, var(--color-surface-offset) 12%);--surface-overlay-strong:color-mix(in srgb, var(--color-surface) 90%, var(--color-surface-offset) 10%);--surface-overlay-raised:color-mix(in oklab, var(--color-surface) 94%, transparent);--surface-overlay-header:color-mix(in srgb, var(--color-surface-offset) 76%, var(--color-bg) 24%);--surface-overlay-offset:color-mix(in oklab, var(--color-surface-offset) 82%, transparent);--surface-scrim:oklch(10% 0 0/.42);--surface-scrim-strong:oklch(8% .01 260/.82);--surface-inverse-glass:oklch(18% .02 260/.68);--surface-inverse-glass-hover:oklch(24% .02 260/.82);--surface-media-canvas:#000;--surface-embed-canvas:#fff;--surface-avatar-muted:#ffffff38;--surface-avatar-label:#0f1117d6;--surface-accent-subtle:color-mix(in oklab, var(--color-primary) 8%, var(--color-surface));--surface-accent-soft:color-mix(in oklab, var(--color-primary) 16%, transparent);--surface-accent-strong:color-mix(in oklab, var(--color-primary) 22%, transparent);--surface-success-soft:color-mix(in oklab, var(--color-success) 14%, transparent);--surface-warning-soft:color-mix(in oklab, var(--color-warning) 14%, transparent);--surface-danger-soft:color-mix(in oklab, var(--color-error) 14%, transparent);--surface-comment-shell:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .035), transparent 120px), color-mix(in srgb, var(--color-surface) 96%, var(--color-comment) 4%);--surface-comment-shell-header:color-mix(in srgb, var(--color-surface) 97%, var(--color-comment) 3%);--surface-comment-record:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .028), transparent 70%), color-mix(in srgb, var(--color-surface-2) 95%, var(--color-comment) 5%);--surface-comment-record-hover:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .042), transparent 70%), color-mix(in srgb, var(--color-surface-2) 92%, var(--color-comment) 8%);--surface-comment-record-active:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .055), transparent 72%), color-mix(in srgb, var(--color-surface-2) 90%, var(--color-comment) 10%);--surface-comment-subtle:color-mix(in srgb, var(--color-surface-2) 95%, var(--color-comment) 5%);--surface-comment-subtle-strong:color-mix(in srgb, var(--color-surface-2) 92%, var(--color-comment) 8%);--surface-comment-card:color-mix(in srgb, var(--color-surface) 94%, var(--color-comment) 6%);--surface-comment-elevated:color-mix(in srgb, var(--color-surface) 96%, var(--color-comment) 4%);--surface-comment-offset:color-mix(in srgb, var(--color-surface-offset) 90%, var(--color-comment) 10%);--surface-comment-offset-soft:color-mix(in srgb, var(--color-surface-offset) 88%, var(--color-comment) 12%);--surface-comment-offset-strong:color-mix(in srgb, var(--color-surface-offset) 84%, var(--color-comment) 16%);--surface-comment-offset-active:color-mix(in srgb, var(--color-surface-offset) 72%, var(--color-comment) 28%);--surface-comment-highlight-hover:color-mix(in srgb, var(--color-comment-soft) 74%, var(--color-comment) 26%);--surface-comment-highlight-active:color-mix(in srgb, var(--color-comment-soft) 62%, var(--color-comment) 38%);--surface-comment-selection:color-mix(in srgb, var(--color-surface) 25%, var(--color-comment) 75%);--surface-comment-preview-fade:linear-gradient(180deg, oklch(0% 0 0/0), color-mix(in srgb, var(--color-surface-2) 95%, var(--color-comment) 5%));--border-comment-soft:color-mix(in srgb, var(--color-divider) 90%, var(--color-comment) 10%);--border-comment-muted:color-mix(in srgb, var(--color-divider) 88%, var(--color-comment) 12%);--border-comment-strong:color-mix(in srgb, var(--color-border) 82%, var(--color-comment) 18%);--border-comment-active:color-mix(in srgb, var(--color-border) 78%, var(--color-comment) 22%);--shadow-comment-outline:0 0 0 1px oklch(from var(--color-comment) l c h / .14);--surface-warning-toast:linear-gradient(135deg, oklab(94.9166% -.0018052 .0644112), oklab(99.8777% .00026585 .000908241) 42%), #fff8e7;--border-warning-toast:oklab(73.4461% .062398 .147608);--text-warning-toast:#422006;--shadow-warning-toast:0 16px 30px #542e0a2e, 0 0 0 1px #f59e0b1f;--border-accent-soft:color-mix(in oklab, var(--color-primary) 22%, transparent);--border-accent-muted:color-mix(in oklab, var(--color-primary) 24%, var(--color-border));--border-accent-strong:color-mix(in oklab, var(--color-primary) 34%, var(--color-border));--border-accent-stronger:color-mix(in oklab, var(--color-primary) 40%, var(--color-border));--shadow-accent-inset:inset 0 0 0 1px color-mix(in oklab, var(--color-primary) 14%, transparent);--shadow-accent-outline:0 0 0 1px color-mix(in oklab, var(--color-primary) 16%, transparent);--shadow-accent-halo:0 0 0 3px oklch(from var(--color-primary) l c h / .16);--shadow-accent-ring:0 0 0 2px var(--color-surface), 0 0 0 4px oklch(from var(--color-primary) l c h / .18);--shadow-accent-ring-strong:0 0 0 2px var(--color-bg), 0 0 0 4px oklch(from var(--color-primary) l c h / .45);--shadow-accent-ring-solid:0 0 0 2px var(--color-primary), 0 0 0 4px oklch(from var(--color-primary) l c h / .2);--shadow-elevated-soft:0 10px 24px color-mix(in oklab, var(--color-surface-ink) 10%, transparent);--shadow-floating-soft:0 14px 34px oklch(0% 0 0/.18);--shadow-floating-hover:0 18px 40px oklch(0% 0 0/.2);--shadow-media-soft:0 16px 40px oklch(0% 0 0/.24);--shadow-media-stage:0 28px 80px oklch(0% 0 0/.28);--shadow-media-modal:0 10px 40px #00000059;--shadow-card-strong:0 20px 56px oklch(0% 0 0/.24);--shadow-sheet-inset:inset 0 1px 0 color-mix(in oklab, var(--color-text) 4%, transparent);--shadow-focus:0 0 0 3px oklch(from var(--color-primary) l c h / .15);--shadow-focus-compact:0 0 0 2px oklch(from var(--color-primary) l c h / .45);--interactive-border:color-mix(in oklab, var(--color-primary) 22%, transparent);--interactive-surface:color-mix(in oklab, var(--color-primary) 14%, transparent);--color-text-on-dark:#fff;--shadow-sm:0 1px 2px oklch(20% .02 260/.06);--shadow-md:0 4px 12px oklch(20% .02 260/.08);--shadow-lg:0 12px 32px oklch(20% .02 260/.12)}[data-theme=dark]{--color-bg:#0f1117;--color-surface:#161822;--color-surface-2:#1c1e2c;--color-surface-offset:#1a1c28;--color-surface-offset-2:#22243a;--color-surface-dynamic:#2a2c3e;--color-surface-raised:#202330;--color-surface-ink:#050608;--color-divider:#2e3044;--color-border:#383a50;--color-text:#e2e2ea;--color-text-muted:#8b8ba0;--color-text-faint:#5a5a70;--color-text-inverse:#0f1117;--color-primary:#818cf8;--color-primary-hover:#6366f1;--color-primary-active:#4f46e5;--color-primary-highlight:#1e1e3a;--color-comment:#818cf8;--color-comment-soft:#818cf81a;--color-comment-strong:#818cf829;--color-comment-text:#c7d2fe;--color-error:#f87171;--color-error-highlight:#2a1a1a;--color-success:#4ade80;--color-success-highlight:#1a2a1a;--color-warning:#fbbf24;--color-warning-highlight:#2a261a;--diff-add-bg:#4ade8014;--diff-add-line-bg:#4ade8026;--diff-add-text:#4ade80;--diff-del-bg:#f8717114;--diff-del-line-bg:#f8717126;--diff-del-text:#f87171;--diff-hunk-bg:#818cf81a;--diff-hunk-text:#818cf8;--diff-gutter:#5a5a70;--surface-fill-subtle:color-mix(in oklab, var(--color-surface) 88%, var(--color-surface-offset) 12%);--surface-fill-strong:color-mix(in oklab, var(--color-surface-offset) 60%, var(--color-surface-offset-2) 40%);--surface-overlay:color-mix(in srgb, var(--color-surface) 84%, var(--color-surface-offset) 16%);--surface-overlay-soft:color-mix(in srgb, var(--color-surface) 88%, var(--color-surface-offset) 12%);--surface-overlay-strong:color-mix(in srgb, var(--color-surface) 90%, var(--color-surface-offset) 10%);--surface-overlay-raised:color-mix(in oklab, var(--color-surface) 94%, transparent);--surface-overlay-header:color-mix(in srgb, var(--color-surface-offset) 76%, var(--color-bg) 24%);--surface-overlay-offset:color-mix(in oklab, var(--color-surface-offset) 82%, transparent);--surface-scrim:oklch(10% 0 0/.42);--surface-scrim-strong:oklch(8% .01 260/.82);--surface-inverse-glass:oklch(18% .02 260/.68);--surface-inverse-glass-hover:oklch(24% .02 260/.82);--surface-media-canvas:#000;--surface-embed-canvas:#121212;--surface-avatar-muted:#ffffff38;--surface-avatar-label:#0f1117d6;--surface-accent-subtle:color-mix(in oklab, var(--color-primary) 8%, var(--color-surface));--surface-accent-soft:color-mix(in oklab, var(--color-primary) 16%, transparent);--surface-accent-strong:color-mix(in oklab, var(--color-primary) 22%, transparent);--surface-success-soft:color-mix(in oklab, var(--color-success) 14%, transparent);--surface-warning-soft:color-mix(in oklab, var(--color-warning) 14%, transparent);--surface-danger-soft:color-mix(in oklab, var(--color-error) 14%, transparent);--surface-comment-shell:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .035), transparent 120px), color-mix(in srgb, var(--color-surface) 96%, var(--color-comment) 4%);--surface-comment-shell-header:color-mix(in srgb, var(--color-surface) 97%, var(--color-comment) 3%);--surface-comment-record:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .028), transparent 70%), color-mix(in srgb, var(--color-surface-2) 95%, var(--color-comment) 5%);--surface-comment-record-hover:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .042), transparent 70%), color-mix(in srgb, var(--color-surface-2) 92%, var(--color-comment) 8%);--surface-comment-record-active:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .055), transparent 72%), color-mix(in srgb, var(--color-surface-2) 90%, var(--color-comment) 10%);--surface-comment-subtle:color-mix(in srgb, var(--color-surface-2) 95%, var(--color-comment) 5%);--surface-comment-subtle-strong:color-mix(in srgb, var(--color-surface-2) 92%, var(--color-comment) 8%);--surface-comment-card:color-mix(in srgb, var(--color-surface) 94%, var(--color-comment) 6%);--surface-comment-elevated:color-mix(in srgb, var(--color-surface) 96%, var(--color-comment) 4%);--surface-comment-offset:color-mix(in srgb, var(--color-surface-offset) 90%, var(--color-comment) 10%);--surface-comment-offset-soft:color-mix(in srgb, var(--color-surface-offset) 88%, var(--color-comment) 12%);--surface-comment-offset-strong:color-mix(in srgb, var(--color-surface-offset) 84%, var(--color-comment) 16%);--surface-comment-offset-active:color-mix(in srgb, var(--color-surface-offset) 72%, var(--color-comment) 28%);--surface-comment-highlight-hover:color-mix(in srgb, var(--color-comment-soft) 74%, var(--color-comment) 26%);--surface-comment-highlight-active:color-mix(in srgb, var(--color-comment-soft) 62%, var(--color-comment) 38%);--surface-comment-selection:color-mix(in srgb, var(--color-surface) 25%, var(--color-comment) 75%);--surface-comment-preview-fade:linear-gradient(180deg, oklch(0% 0 0/0), color-mix(in srgb, var(--color-surface-2) 95%, var(--color-comment) 5%));--border-comment-soft:color-mix(in srgb, var(--color-divider) 90%, var(--color-comment) 10%);--border-comment-muted:color-mix(in srgb, var(--color-divider) 88%, var(--color-comment) 12%);--border-comment-strong:color-mix(in srgb, var(--color-border) 82%, var(--color-comment) 18%);--border-comment-active:color-mix(in srgb, var(--color-border) 78%, var(--color-comment) 22%);--shadow-comment-outline:0 0 0 1px oklch(from var(--color-comment) l c h / .14);--surface-warning-toast:linear-gradient(135deg, oklab(76.8591% .0560995 .154808/.32), color-mix(in oklab, var(--color-surface) 86%, #0b1022 14%) 42%), color-mix(in oklab, var(--color-surface) 74%, #1b1320 26%);--border-warning-toast:oklab(79.4887% .0497246 .137216/.88);--text-warning-toast:oklab(99.6952% -.000454402 .00461993);--shadow-warning-toast:0 18px 34px #00000061, 0 0 0 1px oklab(76.8591% .0560995 .154808/.18);--border-accent-soft:color-mix(in oklab, var(--color-primary) 22%, transparent);--border-accent-muted:color-mix(in oklab, var(--color-primary) 24%, var(--color-border));--border-accent-strong:color-mix(in oklab, var(--color-primary) 34%, var(--color-border));--border-accent-stronger:color-mix(in oklab, var(--color-primary) 40%, var(--color-border));--shadow-accent-inset:inset 0 0 0 1px color-mix(in oklab, var(--color-primary) 14%, transparent);--shadow-accent-outline:0 0 0 1px color-mix(in oklab, var(--color-primary) 16%, transparent);--shadow-accent-halo:0 0 0 3px oklch(from var(--color-primary) l c h / .16);--shadow-accent-ring:0 0 0 2px var(--color-surface), 0 0 0 4px oklch(from var(--color-primary) l c h / .18);--shadow-accent-ring-strong:0 0 0 2px var(--color-bg), 0 0 0 4px oklch(from var(--color-primary) l c h / .45);--shadow-accent-ring-solid:0 0 0 2px var(--color-primary), 0 0 0 4px oklch(from var(--color-primary) l c h / .2);--shadow-elevated-soft:0 10px 24px color-mix(in oklab, var(--color-surface-ink) 10%, transparent);--shadow-floating-soft:0 14px 34px oklch(0% 0 0/.18);--shadow-floating-hover:0 18px 40px oklch(0% 0 0/.2);--shadow-media-soft:0 16px 40px oklch(0% 0 0/.24);--shadow-media-stage:0 28px 80px oklch(0% 0 0/.28);--shadow-media-modal:0 16px 48px #0009;--shadow-card-strong:0 20px 56px oklch(0% 0 0/.24);--shadow-sheet-inset:inset 0 1px 0 color-mix(in oklab, var(--color-text) 4%, transparent);--shadow-focus:0 0 0 3px oklch(from var(--color-primary) l c h / .15);--shadow-focus-compact:0 0 0 2px oklch(from var(--color-primary) l c h / .45);--interactive-border:color-mix(in oklab, var(--color-primary) 32%, transparent);--interactive-surface:color-mix(in oklab, var(--color-primary) 18%, transparent);--color-text-on-dark:#fff;--shadow-sm:0 1px 2px oklch(0% 0 0/.25);--shadow-md:0 4px 12px oklch(0% 0 0/.35);--shadow-lg:0 12px 32px oklch(0% 0 0/.5)}@media (prefers-color-scheme:dark){:root:not([data-theme]){--color-bg:#0f1117;--color-surface:#161822;--color-surface-2:#1c1e2c;--color-surface-offset:#1a1c28;--color-surface-offset-2:#22243a;--color-surface-dynamic:#2a2c3e;--color-surface-raised:#202330;--color-surface-ink:#050608;--color-divider:#2e3044;--color-border:#383a50;--color-text:#e2e2ea;--color-text-muted:#8b8ba0;--color-text-faint:#5a5a70;--color-text-inverse:#0f1117;--color-primary:#818cf8;--color-primary-hover:#6366f1;--color-primary-active:#4f46e5;--color-primary-highlight:#1e1e3a;--color-comment:#818cf8;--color-comment-soft:#818cf81a;--color-comment-strong:#818cf829;--color-comment-text:#c7d2fe;--color-error:#f87171;--color-error-highlight:#2a1a1a;--color-success:#4ade80;--color-success-highlight:#1a2a1a;--color-warning:#fbbf24;--color-warning-highlight:#2a261a;--surface-fill-subtle:color-mix(in oklab, var(--color-surface) 88%, var(--color-surface-offset) 12%);--surface-fill-strong:color-mix(in oklab, var(--color-surface-offset) 60%, var(--color-surface-offset-2) 40%);--surface-overlay:color-mix(in srgb, var(--color-surface) 84%, var(--color-surface-offset) 16%);--surface-overlay-soft:color-mix(in srgb, var(--color-surface) 88%, var(--color-surface-offset) 12%);--surface-overlay-strong:color-mix(in srgb, var(--color-surface) 90%, var(--color-surface-offset) 10%);--surface-overlay-raised:color-mix(in oklab, var(--color-surface) 94%, transparent);--surface-overlay-header:color-mix(in srgb, var(--color-surface-offset) 76%, var(--color-bg) 24%);--surface-overlay-offset:color-mix(in oklab, var(--color-surface-offset) 82%, transparent);--surface-scrim:oklch(10% 0 0/.42);--surface-scrim-strong:oklch(8% .01 260/.82);--surface-inverse-glass:oklch(18% .02 260/.68);--surface-inverse-glass-hover:oklch(24% .02 260/.82);--surface-media-canvas:#000;--surface-embed-canvas:#121212;--surface-avatar-muted:#ffffff38;--surface-avatar-label:#0f1117d6;--surface-accent-subtle:color-mix(in oklab, var(--color-primary) 8%, var(--color-surface));--surface-accent-soft:color-mix(in oklab, var(--color-primary) 16%, transparent);--surface-accent-strong:color-mix(in oklab, var(--color-primary) 22%, transparent);--surface-success-soft:color-mix(in oklab, var(--color-success) 14%, transparent);--surface-warning-soft:color-mix(in oklab, var(--color-warning) 14%, transparent);--surface-danger-soft:color-mix(in oklab, var(--color-error) 14%, transparent);--surface-comment-shell:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .035), transparent 120px), color-mix(in srgb, var(--color-surface) 96%, var(--color-comment) 4%);--surface-comment-shell-header:color-mix(in srgb, var(--color-surface) 97%, var(--color-comment) 3%);--surface-comment-record:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .028), transparent 70%), color-mix(in srgb, var(--color-surface-2) 95%, var(--color-comment) 5%);--surface-comment-record-hover:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .042), transparent 70%), color-mix(in srgb, var(--color-surface-2) 92%, var(--color-comment) 8%);--surface-comment-record-active:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .055), transparent 72%), color-mix(in srgb, var(--color-surface-2) 90%, var(--color-comment) 10%);--surface-comment-subtle:color-mix(in srgb, var(--color-surface-2) 95%, var(--color-comment) 5%);--surface-comment-subtle-strong:color-mix(in srgb, var(--color-surface-2) 92%, var(--color-comment) 8%);--surface-comment-card:color-mix(in srgb, var(--color-surface) 94%, var(--color-comment) 6%);--surface-comment-elevated:color-mix(in srgb, var(--color-surface) 96%, var(--color-comment) 4%);--surface-comment-offset:color-mix(in srgb, var(--color-surface-offset) 90%, var(--color-comment) 10%);--surface-comment-offset-soft:color-mix(in srgb, var(--color-surface-offset) 88%, var(--color-comment) 12%);--surface-comment-offset-strong:color-mix(in srgb, var(--color-surface-offset) 84%, var(--color-comment) 16%);--surface-comment-offset-active:color-mix(in srgb, var(--color-surface-offset) 72%, var(--color-comment) 28%);--surface-comment-highlight-hover:color-mix(in srgb, var(--color-comment-soft) 74%, var(--color-comment) 26%);--surface-comment-highlight-active:color-mix(in srgb, var(--color-comment-soft) 62%, var(--color-comment) 38%);--surface-comment-selection:color-mix(in srgb, var(--color-surface) 25%, var(--color-comment) 75%);--surface-comment-preview-fade:linear-gradient(180deg, oklch(0% 0 0/0), color-mix(in srgb, var(--color-surface-2) 95%, var(--color-comment) 5%));--border-comment-soft:color-mix(in srgb, var(--color-divider) 90%, var(--color-comment) 10%);--border-comment-muted:color-mix(in srgb, var(--color-divider) 88%, var(--color-comment) 12%);--border-comment-strong:color-mix(in srgb, var(--color-border) 82%, var(--color-comment) 18%);--border-comment-active:color-mix(in srgb, var(--color-border) 78%, var(--color-comment) 22%);--shadow-comment-outline:0 0 0 1px oklch(from var(--color-comment) l c h / .14);--surface-warning-toast:linear-gradient(135deg, oklab(76.8591% .0560995 .154808/.32), color-mix(in oklab, var(--color-surface) 86%, #0b1022 14%) 42%), color-mix(in oklab, var(--color-surface) 74%, #1b1320 26%);--border-warning-toast:oklab(79.4887% .0497246 .137216/.88);--text-warning-toast:oklab(99.6952% -.000454402 .00461993);--shadow-warning-toast:0 18px 34px #00000061, 0 0 0 1px oklab(76.8591% .0560995 .154808/.18);--border-accent-soft:color-mix(in oklab, var(--color-primary) 22%, transparent);--border-accent-muted:color-mix(in oklab, var(--color-primary) 24%, var(--color-border));--border-accent-strong:color-mix(in oklab, var(--color-primary) 34%, var(--color-border));--border-accent-stronger:color-mix(in oklab, var(--color-primary) 40%, var(--color-border));--shadow-accent-inset:inset 0 0 0 1px color-mix(in oklab, var(--color-primary) 14%, transparent);--shadow-accent-outline:0 0 0 1px color-mix(in oklab, var(--color-primary) 16%, transparent);--shadow-accent-halo:0 0 0 3px oklch(from var(--color-primary) l c h / .16);--shadow-accent-ring:0 0 0 2px var(--color-surface), 0 0 0 4px oklch(from var(--color-primary) l c h / .18);--shadow-accent-ring-strong:0 0 0 2px var(--color-bg), 0 0 0 4px oklch(from var(--color-primary) l c h / .45);--shadow-accent-ring-solid:0 0 0 2px var(--color-primary), 0 0 0 4px oklch(from var(--color-primary) l c h / .2);--shadow-elevated-soft:0 10px 24px color-mix(in oklab, var(--color-surface-ink) 10%, transparent);--shadow-floating-soft:0 14px 34px oklch(0% 0 0/.18);--shadow-floating-hover:0 18px 40px oklch(0% 0 0/.2);--shadow-media-soft:0 16px 40px oklch(0% 0 0/.24);--shadow-media-stage:0 28px 80px oklch(0% 0 0/.28);--shadow-media-modal:0 16px 48px #0009;--shadow-card-strong:0 20px 56px oklch(0% 0 0/.24);--shadow-sheet-inset:inset 0 1px 0 color-mix(in oklab, var(--color-text) 4%, transparent);--shadow-focus:0 0 0 3px oklch(from var(--color-primary) l c h / .15);--shadow-focus-compact:0 0 0 2px oklch(from var(--color-primary) l c h / .45);--interactive-border:color-mix(in oklab, var(--color-primary) 32%, transparent);--interactive-surface:color-mix(in oklab, var(--color-primary) 18%, transparent);--color-text-on-dark:#fff;--shadow-sm:0 1px 2px oklch(0% 0 0/.25);--shadow-md:0 4px 12px oklch(0% 0 0/.35);--shadow-lg:0 12px 32px oklch(0% 0 0/.5)}}.hidden,.u-hidden,html[data-initial-file-requested=true] .empty-state{display:none!important}html[data-initial-file-requested=true] .editor-page.hidden{display:flex!important}.skip-link{top:var(--space-2);left:var(--space-2);z-index:1000;width:auto;height:auto;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-text-inverse);clip:rect(0, 0, 0, 0);transform:translateY(calc(-100% - var(--space-2)));transition:transform var(--transition-interactive);position:fixed}.skip-link:focus,.skip-link:focus-visible{clip:auto;transform:translateY(0)}.ui-button,.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-h-md);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);white-space:nowrap;transition:transform var(--transition-interactive), background var(--transition-interactive), color var(--transition-interactive), border-color var(--transition-interactive), box-shadow var(--transition-interactive);border:1px solid #0000;font-weight:500;text-decoration:none;display:inline-flex}.ui-button:active,.btn:active{transform:scale(.97)}.ui-button--primary,.btn-primary{background:var(--color-primary);color:var(--color-text-inverse)}.ui-button--primary:hover,.btn-primary:hover{background:var(--color-primary-hover)}.ui-button--secondary,.btn-secondary{background:var(--color-surface-2);color:var(--color-text);border-color:var(--color-border)}.ui-button--secondary:hover,.btn-secondary:hover{background:var(--color-surface-dynamic)}.ui-button--danger,.btn-danger{background:var(--color-error);color:var(--color-text-inverse)}.ui-button--danger:hover,.btn-danger:hover{filter:brightness(.95)}.ui-button--ghost,.btn-ghost{color:var(--color-text-muted);background:0 0}.ui-button--ghost:hover,.btn-ghost:hover{background:var(--color-surface-offset);color:var(--color-text)}.ui-button--lg,.btn-lg{min-height:var(--control-h-lg);padding:0 var(--space-6);font-weight:600}.ui-button--compact,.btn-compact{min-height:var(--control-h-xs);gap:var(--space-1);padding:0 var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:600}.ui-button--toggle.active,.ui-button--toggle.is-active,.ui-button--toggle[aria-pressed=true],.ui-button--toggle[aria-selected=true]{border-color:var(--interactive-border);background:var(--interactive-surface);color:var(--color-primary)}.ui-icon-button{width:var(--control-h-xs);min-width:var(--control-h-xs);height:var(--control-h-xs);border-radius:var(--radius-sm);color:var(--color-text-muted);transition:transform var(--transition-interactive), background var(--transition-interactive), color var(--transition-interactive), border-color var(--transition-interactive);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;display:inline-flex}.ui-icon-button:hover{background:var(--color-surface-offset);color:var(--color-text)}.ui-icon-button--toolbar{width:28px;min-width:28px;height:28px}.ui-pill-button{border-radius:var(--radius-full)}.ui-segmented-control{border-radius:var(--radius-md);background:var(--color-surface-offset);gap:2px;padding:2px;display:inline-flex}.ui-segmented-control--pill{border-radius:var(--radius-full);padding:3px}.ui-segmented-btn{min-width:32px;min-height:var(--control-h-xs);padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--color-text-faint);white-space:nowrap;transition:transform var(--transition-interactive), background var(--transition-interactive), color var(--transition-interactive), border-color var(--transition-interactive), box-shadow var(--transition-interactive);font-size:var(--text-xs);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.ui-segmented-control--pill .ui-segmented-btn{border-radius:var(--radius-full)}.ui-segmented-btn:hover{color:var(--color-text-muted)}.ui-segmented-btn.active,.ui-segmented-btn.is-active,.ui-segmented-btn[aria-pressed=true],.ui-segmented-btn[aria-selected=true]{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-sm)}.ui-button:disabled,.btn:disabled,.ui-icon-button:disabled,.ui-segmented-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.ui-input,.input{width:100%;min-height:var(--control-h-md);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);transition:border-color var(--transition-interactive), box-shadow var(--transition-interactive)}.ui-input:focus,.input:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus);outline:none}.ui-input::placeholder,.input::placeholder{color:var(--color-text-faint)}.ui-badge{border-radius:var(--radius-full);min-height:20px;font-size:var(--text-meta);justify-content:center;align-items:center;padding:0 8px;font-weight:600;display:inline-flex}.ui-pill{align-items:center;gap:var(--space-1);border-radius:var(--radius-full);background:var(--surface-fill-strong);min-height:20px;color:var(--color-text-muted);font-size:var(--text-meta);padding:0 8px;display:inline-flex}.ui-panel{border:var(--panel-border-width) solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-md)}.ui-toolbar-group{align-items:center;gap:var(--space-2);display:inline-flex}.ui-list-item{border-radius:var(--radius-md);border:var(--panel-border-width) solid var(--color-border);background:var(--surface-fill-subtle)}.ui-floating-dock{border:var(--panel-border-width) solid var(--color-divider);border-radius:calc(var(--radius-lg) + 2px);background:var(--surface-overlay);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.ui-dialog-surface{border:var(--panel-border-width) solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-lg)}.editor-loading{gap:var(--space-2);height:100%;padding:var(--space-6) var(--space-8);flex-direction:column;display:flex}.editor-loading.hidden{display:none}.skeleton-line{border-radius:var(--radius-xs);background:var(--color-surface-offset);height:16px;animation:1.5s ease-in-out infinite pulse-skeleton}.skeleton-line--title{width:40%;height:32px}.skeleton-line--full{width:100%}.skeleton-line--ninety{width:90%}.skeleton-line--ninety-five{width:95%}.skeleton-line--eighty{width:80%}.skeleton-line--eighty-five{width:85%}.skeleton-line--break{margin-bottom:24px}@keyframes pulse-skeleton{0%{opacity:.6}50%{opacity:.3}to{opacity:.6}}.file-context-menu{z-index:1000;min-width:120px;padding:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-md);transform-origin:0 0;opacity:1;transition:opacity .15s cubic-bezier(.16,1,.3,1),transform .15s cubic-bezier(.16,1,.3,1);position:fixed;transform:scale(1)}@starting-style{.file-context-menu{opacity:0;transform:scale(.9)}}.file-context-item{width:100%;padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);color:var(--color-text);text-align:left;cursor:pointer;transition:background var(--transition-interactive);font-family:var(--font-body);font-size:var(--text-ui-sm);background:0 0;border:none;display:block}.file-context-item:hover{background:var(--color-surface-offset)}.file-context-danger{color:var(--color-error)}.wiki-link{color:var(--color-primary);text-underline-offset:2px;cursor:pointer;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.wiki-link:hover{text-decoration-style:solid}.wiki-link-new{color:var(--color-text-muted);opacity:.7;text-decoration-style:dashed}.wiki-link-new:hover{color:var(--color-primary);opacity:1;text-decoration-style:dashed}.sidebar{border-right:1px solid var(--color-divider);background:var(--color-surface);flex-direction:column;width:260px;min-width:260px;max-width:260px;transition:width .18s cubic-bezier(.16,1,.3,1),min-width .18s cubic-bezier(.16,1,.3,1);display:flex;overflow:hidden}.sidebar.collapsed{border-right:none;width:0;min-width:0;overflow:hidden}.sidebar-header{min-height:var(--toolbar-h);justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-3);border-bottom:1px solid var(--color-divider);display:flex}.sidebar-brand{align-items:center;gap:var(--space-2);display:flex}.sidebar-title{white-space:nowrap;font-size:var(--text-sm);letter-spacing:-.02em;font-weight:700}.sidebar-actions{align-items:center;gap:4px;margin-left:auto;display:flex}.sidebar-close-btn{display:none}.sidebar-create-shell{position:relative}.sidebar-create-btn{border-radius:var(--radius-full);min-height:28px;font-size:var(--text-xs);padding:0 10px 0 8px;font-weight:600}.sidebar-create-btn[aria-expanded=true]{border-color:var(--interactive-border);background:var(--interactive-surface);color:var(--color-primary)}.sidebar-create-btn-label{white-space:nowrap}.sidebar-search{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-divider)}.sidebar-search-input{width:100%;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--color-surface-offset);color:var(--color-text);transition:border-color var(--transition-interactive);font-size:var(--text-xs);border:1px solid #0000;outline:none}.sidebar-search-input::placeholder{color:var(--color-text-faint)}.sidebar-search-input:focus{border-color:var(--color-primary)}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.file-tree{padding:var(--space-2) 0;flex:1;overflow:hidden auto}.file-tree-empty{padding:var(--space-4) var(--space-3);color:var(--color-text-faint);text-align:center;font-size:var(--text-xs)}.file-tree-item{align-items:center;gap:var(--space-1);width:100%;padding-top:4px;padding-bottom:4px;padding-right:8px;padding-left:calc(8px + var(--depth,0) * 16px);color:var(--color-text-muted);text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none;text-overflow:ellipsis;transition:background var(--transition-interactive), color var(--transition-interactive);font-family:var(--font-body);font-size:var(--text-ui-sm);background:0 0;border:none;border-radius:0;display:flex;position:relative;overflow:hidden}.file-tree-item:not([data-depth="0"]):before{content:"";top:0;bottom:0;left:calc(8px + (var(--depth,1) - 1) * 16px + 6px);background-color:var(--color-border);opacity:.3;width:1px;position:absolute}.file-tree-file{padding-left:calc(8px + var(--depth,0) * 16px + 18px)}.file-tree-item:hover{background:var(--color-surface-offset);color:var(--color-text)}.file-tree-file.active{background:var(--color-primary-highlight);color:var(--color-primary)}.file-tree-chevron{flex-shrink:0;transition:transform .2s cubic-bezier(.16,1,.3,1)}.file-tree-chevron.expanded{transform:rotate(90deg)}.file-tree-icon{opacity:.5;flex-shrink:0}.file-tree-name{text-overflow:ellipsis;overflow:hidden}.file-action-sheet-backdrop{z-index:130;background:oklch(from var(--color-bg) l c h / .44);position:fixed;inset:0}.file-action-sheet{right:var(--space-3);bottom:calc(var(--space-3) + env(safe-area-inset-bottom,0px));left:var(--space-3);z-index:131;border:1px solid var(--color-border);border-radius:calc(var(--radius-xl) + 2px);background:oklch(from var(--color-surface) l c h / .98);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);flex-direction:column;gap:4px;padding:12px;display:flex;position:fixed}.file-action-sheet-item{justify-content:flex-start;width:100%}.file-action-sheet-item.file-context-danger{color:var(--color-danger)}.create-menu{z-index:1010;width:min(280px,100vw - 16px);padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:oklch(from var(--color-surface) l c h / .98);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:fixed}.create-menu-group,.create-action-sheet-group,.create-action-sheet-header{padding:0 var(--space-2);color:var(--color-text-faint);font-size:var(--text-meta);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.create-menu-group:not(:first-child),.create-action-sheet-group:not(:first-child){margin-top:8px}.create-action-sheet-header{padding:0 var(--space-2) 4px}.create-menu-item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2);border-radius:var(--radius-md);color:var(--color-text);text-align:left;cursor:pointer;transition:background var(--transition-interactive), color var(--transition-interactive);background:0 0;border:none;margin-top:2px;display:flex}.create-menu-item:hover,.create-menu-item:focus-visible{background:var(--color-surface-offset);color:var(--color-text);outline:none}.create-menu-item-icon{width:18px;min-width:18px;color:var(--color-text-muted);justify-content:center;align-items:center;display:inline-flex}.create-menu-item-copy{gap:2px;min-width:0;display:grid}.create-menu-item-label{font-size:var(--text-sm);font-weight:600}.create-menu-item-meta{color:var(--color-text-muted);font-size:var(--text-meta)}.create-action-sheet-item{justify-content:flex-start;min-height:44px}.create-action-sheet-option{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:linear-gradient(180deg, oklch(from var(--color-surface-offset) calc(l + .02) c h / .9), var(--color-surface-offset)), var(--color-surface-offset);min-height:60px;color:var(--color-text);box-shadow:inset 0 1px 0 oklch(from var(--color-text) l c h / .03), 0 10px 24px oklch(from var(--color-bg) l c h / .08);transition:border-color var(--transition-interactive), background var(--transition-interactive), box-shadow var(--transition-interactive), transform var(--transition-interactive);gap:10px;padding:0 14px}.create-action-sheet-option:hover,.create-action-sheet-option:focus-visible{border-color:oklch(from var(--color-primary) calc(l + .06) c h / .4);background:linear-gradient(180deg, oklch(from var(--color-primary-highlight) calc(l + .02) c h / .72), var(--color-surface-offset)), var(--color-surface-offset);box-shadow:inset 0 1px 0 oklch(from var(--color-text) l c h / .04), 0 14px 30px oklch(from var(--color-bg) l c h / .12);color:var(--color-text);outline:none;transform:translateY(-1px)}.create-action-sheet-option .create-menu-item-icon{border-radius:var(--radius-sm);background:oklch(from var(--color-surface) calc(l + .03) c h / .78);width:28px;min-width:28px;height:28px;color:var(--color-primary)}.create-action-sheet-option .create-menu-item-copy{text-align:left;flex:1;justify-items:start;gap:2px}.create-action-sheet-option .create-menu-item-label{font-size:var(--text-sm);letter-spacing:-.02em;font-weight:700}.create-action-sheet-option .create-menu-item-meta{font-size:var(--text-meta);letter-spacing:.02em;justify-self:start;font-weight:600}.create-action-sheet-group{padding-top:4px}.create-action-sheet-cancel{min-height:36px;padding:0 var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm);align-self:flex-start;font-weight:600}.create-action-sheet-cancel:hover,.create-action-sheet-cancel:focus-visible{color:var(--color-text);outline:none}.empty-state{padding:var(--space-8);flex:1;justify-content:center;align-items:center;display:flex}.empty-state-content{align-items:center;gap:var(--space-2);text-align:center;flex-direction:column;max-width:320px;display:flex}.empty-state-logo{width:80px;height:80px;margin-bottom:var(--space-2);border:1px solid var(--border-accent-soft);border-radius:calc(var(--radius-xl-plus) + var(--radius-sm));background:radial-gradient(circle at top, var(--interactive-border), transparent 70%), linear-gradient(180deg, var(--surface-overlay-raised), var(--surface-overlay-soft));box-shadow:var(--shadow-floating-soft), var(--shadow-sheet-inset);justify-content:center;align-items:center;display:inline-flex}.empty-state-logo svg{opacity:.72;display:block}.empty-state-title{font-size:var(--text-lg);letter-spacing:-.02em;margin:0;font-weight:600}.empty-state-desc{color:var(--color-text-muted);font-size:var(--text-sm);margin:0;line-height:1.5}.empty-state-actions{gap:var(--space-3);width:100%;margin-top:var(--space-4);flex-direction:column;display:flex}.empty-state-btn{padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);background:var(--color-surface-offset);color:var(--color-text);box-shadow:var(--shadow-sm);font-size:var(--text-sm);justify-content:flex-start}.empty-state-btn:hover{border-color:var(--color-text-faint);background:var(--color-surface-offset-2)}.empty-state-kbd{border:1px solid var(--color-divider);border-radius:var(--radius-xs);background:var(--color-surface);color:var(--color-text-muted);font-family:var(--font-mono);margin-left:auto;padding:2px 6px;font-size:.75rem}.editor-page,.diff-page{flex-direction:column;flex:1;display:flex;overflow:hidden}.toolbar{z-index:10;height:var(--toolbar-h);justify-content:space-between;align-items:center;gap:var(--space-2);padding:0 var(--space-3);border-bottom:1px solid var(--color-divider);background:var(--color-surface);flex-shrink:0;display:flex}.toolbar-left,.toolbar-right{align-items:center;gap:var(--space-2);display:flex}.toolbar-left{flex:1;min-width:0}.toolbar-right{flex-shrink:0;position:relative}.toolbar-presence-cluster{flex-shrink:0}.toolbar-logo{padding:var(--space-1);border-radius:var(--radius-sm);transition:background var(--transition-interactive);flex-shrink:0;align-items:center;display:flex}.toolbar-logo:hover{background:var(--color-surface-offset)}.toolbar-room-info{align-items:center;gap:var(--space-2);min-width:0;display:flex}.toolbar-room-name{text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-sm);font-weight:600;overflow:hidden}.toolbar-badge{white-space:nowrap;flex-shrink:0}.toolbar-center{flex-shrink:0}.toolbar-overflow-toggle{display:none}.toolbar-overflow-menu{align-items:center;gap:var(--space-2);display:flex}.diff-mode-toggle,.diff-layout-toggle{padding:3px}.diff-mode-btn,.diff-layout-btn{width:auto;height:28px;padding:0 var(--space-3);font-size:var(--text-label);font-weight:600}.diff-mode-btn{min-width:72px}.diff-layout-btn{min-width:82px}.markdown-toolbar{border-bottom:1px solid var(--color-divider);background:var(--color-surface);flex-shrink:0;align-items:center;gap:2px;min-height:36px;padding:2px 6px;display:flex}.markdown-toolbar-group,.markdown-toolbar-block-menu-shell{flex-shrink:0;align-items:center;gap:1px;display:inline-flex;position:relative}.markdown-toolbar-group{border-left:1px solid var(--color-divider);margin-left:4px;padding-left:8px}.markdown-toolbar-block-trigger{border-radius:var(--radius-sm);white-space:nowrap;align-items:center;gap:2px;min-height:28px;padding:0 8px;display:inline-flex}.markdown-toolbar-block-trigger-label{font-size:11px;font-weight:700;line-height:1}.markdown-toolbar-block-trigger-icon{color:var(--color-text-faint);display:inline-flex;transform:scale(.9)}.markdown-toolbar.is-menu-open .markdown-toolbar-block-trigger{background:var(--color-surface-offset);color:var(--color-text)}.markdown-toolbar-popover{z-index:12;min-width:176px;position:absolute}.markdown-toolbar-menu{border:1px solid var(--color-border);border-radius:var(--radius-md);background:oklch(from var(--color-surface) l c h / .98);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:3px;display:grid}.markdown-toolbar-menu-item{align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);width:100%;min-height:30px;color:var(--color-text);text-align:left;cursor:pointer;transition:background var(--transition-interactive), color var(--transition-interactive);background:0 0;border:none;grid-template-columns:1fr auto;padding:0 10px;display:grid}.markdown-toolbar-menu-item:hover,.markdown-toolbar-menu-item:focus-visible,.markdown-toolbar-menu-item.is-active{background:var(--color-surface-offset);outline:none}.markdown-toolbar-menu-item-label{font-size:var(--text-ui-sm);font-weight:600}.markdown-toolbar-menu-item-shortcut{color:var(--color-text-faint);font-size:var(--text-xs);font-weight:700}.app-shell{height:100dvh;display:flex;overflow:hidden}.main-area{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.editor-layout{flex:1;display:flex;position:relative;overflow:hidden}.editor-pane,.preview-pane{flex-direction:column;flex:1;min-width:200px;display:flex;overflow:hidden}.pane-header{height:28px;padding:var(--space-1) var(--space-3);border-bottom:1px solid var(--color-divider);background:var(--color-surface-offset);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.pane-header-actions{align-items:center;gap:var(--space-1);display:flex}.pane-header-meta{align-items:baseline;gap:var(--space-3);min-width:0;display:flex}.pane-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:var(--text-meta);font-weight:500}.pane-label-meta{color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-meta)}.resizer{z-index:5;background:var(--color-divider);cursor:col-resize;width:4px;transition:background var(--transition-interactive);flex-shrink:0;position:relative}.resizer:hover,.resizer.dragging{background:var(--color-primary)}.resizer:after{content:"";position:absolute;inset:0 -6px}.editor-container{background:var(--color-bg);flex:1;position:relative;overflow:hidden}.editor-container>.editor-loading{z-index:2;background:var(--color-bg);position:absolute;inset:0}.editor-container.is-loading-editor .cm-editor{visibility:hidden}.editor-container .cm-editor{height:100%;font-family:var(--font-mono);font-size:var(--text-ui-md)}.editor-container .cm-editor .cm-scroller{font-family:var(--font-mono);overflow:auto}.editor-container .cm-editor.cm-focused{outline:none}.cm-editor .cm-ySelectionInfo{z-index:10;border-radius:var(--radius-2xs) var(--radius-2xs) var(--radius-2xs) 0;opacity:1;white-space:nowrap;font-family:var(--font-body);font-size:var(--text-meta);padding:1px 4px;font-weight:600;transition:opacity .3s;position:absolute;top:-1.2em;left:-1px}.preview-body{--preview-floating-sidebar-gap:var(--space-3);--preview-floating-comments-width:var(--panel-comments-width);--preview-floating-outline-width:var(--panel-outline-width);--preview-content-max-width:var(--preview-content-width);--preview-comment-rail-inset:10px;flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.preview-container{background:var(--color-bg);overscroll-behavior:contain;flex:1;min-width:0;overflow:hidden auto}.preview-content{--preview-comment-rail-reserved:0px;--preview-comment-rail-offset:0px;min-width:0;max-width:var(--preview-content-max-width);padding:var(--space-6) calc(var(--space-6) + var(--preview-comment-rail-reserved)) var(--space-12) var(--space-6);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-sm);margin:0 auto;line-height:1.7;position:relative;overflow:visible}.preview-content[data-render-phase=shell]{color:var(--color-text-muted)}@media (width>=769px){.preview-content{padding-bottom:calc(var(--space-12) + 96px)}}.preview-content.is-excalidraw-file-preview{box-sizing:border-box;width:100%;max-width:none;height:100%;min-height:100%;padding:var(--space-3);margin:0;display:flex;position:relative}.preview-content.is-image-file-preview{box-sizing:border-box;width:100%;max-width:none;min-height:100%;padding:var(--space-4);margin:0;display:flex;position:relative}.preview-content.is-plantuml-file-preview,.preview-content.is-mermaid-file-preview{width:100%;max-width:none;min-height:100%}.preview-content.is-drawio-file-preview{box-sizing:border-box;width:100%;max-width:none;height:100%;min-height:100%;padding:var(--space-3);margin:0;display:flex;position:relative}.preview-content.is-mermaid-file-preview [data-preview-render-host=true],.preview-content.is-plantuml-file-preview [data-preview-render-host=true]{min-height:100%}.preview-content.is-drawio-file-preview [data-preview-render-host=true],.preview-content.is-excalidraw-file-preview [data-preview-render-host=true],.preview-content.is-image-file-preview [data-preview-render-host=true]{flex:1;width:100%;min-width:0;max-width:none;min-height:100%;display:flex}.image-file-preview-shell{justify-content:center;align-items:center;width:100%;min-height:100%;margin:0;display:flex}.image-file-preview-image{object-fit:contain;border-radius:var(--radius-lg);background:var(--color-surface);max-width:min(100%,1200px);max-height:calc(100vh - 180px);box-shadow:var(--shadow-lg)}.preview-content.is-mermaid-file-preview .mermaid-shell,.preview-content.is-plantuml-file-preview .plantuml-shell{min-height:100%;margin:0}.preview-content.is-drawio-file-preview .drawio-embed,.preview-content.is-drawio-file-preview .drawio-embed-placeholder{width:100%;min-height:100%;margin:0}.preview-content.is-drawio-file-preview .drawio-embed{flex-direction:column;width:100%;height:100%;display:flex}.preview-content.is-drawio-file-preview .drawio-embed-placeholder,.preview-content.is-drawio-file-preview .preview-shell{width:100%;min-height:100%}.preview-content.is-drawio-file-preview .drawio-embed-iframe{flex:1;height:100%;min-height:0}.preview-content.is-excalidraw-file-preview .excalidraw-embed,.preview-content.is-excalidraw-file-preview .excalidraw-embed-placeholder{width:100%;min-height:100%;margin:0}.preview-content.is-excalidraw-file-preview .excalidraw-embed{flex-direction:column;height:100%;display:flex}.preview-content.is-excalidraw-file-preview .excalidraw-embed-placeholder{align-items:stretch;display:flex}.preview-content.is-excalidraw-file-preview .preview-shell{width:100%;min-height:100%}.preview-content.is-excalidraw-file-preview .excalidraw-embed-iframe{flex:1;min-height:0;height:100%!important}.preview-content.is-excalidraw-file-preview .excalidraw-embed-resizer{display:none}.preview-content.is-excalidraw-file-preview .excalidraw-embed.is-maximized{inset:var(--space-3);z-index:2;box-sizing:border-box;max-width:calc(100% - (var(--space-3) * 2));margin:0;position:absolute}.preview-content.is-excalidraw-file-preview .excalidraw-embed.is-maximized .excalidraw-embed-iframe{height:100%!important}.preview-shell{min-height:60vh;color:var(--color-text-muted);font-size:var(--text-sm);justify-content:center;align-items:center;display:flex}.ui-toolbar-button{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);font-size:var(--text-xs);display:flex}.ui-toolbar-button-label,.ui-action-label{font-size:var(--text-xs)}.ui-toolbar-button--name{max-width:132px}.ui-toolbar-button-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.toolbar-theme-icon{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.toolbar-theme-button{justify-content:center;width:32px;min-width:32px;padding:0;overflow:hidden}.toolbar-theme-button .ui-toolbar-button-label{display:none!important}.toolbar-theme-button .toolbar-theme-state{margin-left:auto;display:none!important}.ui-nav-tabs{padding:0 var(--space-2);border-bottom:1px solid var(--color-divider);display:flex}.ui-nav-tab{padding:var(--space-2) var(--space-3);color:var(--color-text-muted);transition:all var(--transition-interactive);font-size:var(--text-xs);border-bottom:2px solid #0000;flex:1;justify-content:center;align-items:center;gap:6px;font-weight:500;display:inline-flex;position:relative}.ui-nav-tab.has-changes:after{content:"";background-color:var(--color-success);border-radius:50%;width:6px;height:6px;animation:2s cubic-bezier(.4,0,.6,1) infinite pulse-dot;position:absolute;top:8px;right:12px}.ui-nav-tab:hover{background:var(--color-surface-offset);color:var(--color-text)}.ui-nav-tab.active{border-bottom-color:var(--color-primary);color:var(--color-primary)}.ui-toolbar-action{flex-shrink:0}.ui-action-button{min-height:var(--control-h-md);border-radius:var(--radius-lg-plus);font-size:var(--text-label);white-space:nowrap;padding:0 14px;font-weight:600}.ui-action-button--wide{min-width:92px}.ui-action-button--surface{background:var(--color-surface-offset)}.ui-action-button--surface:hover:not(:disabled){background:var(--color-surface-dynamic)}.ui-action-pill{flex-shrink:0;min-width:0}.ui-action-pill--surface{background:var(--color-surface-offset)}.ui-action-pill--surface:hover:not(:disabled){background:var(--color-surface-dynamic)}.ui-action-icon{flex-shrink:0}.ui-action-icon--surface{background:var(--surface-overlay-offset)}.ui-preview-action{border:1px solid var(--color-border);border-radius:var(--radius-xs);background:var(--color-surface-2);color:var(--color-text);box-shadow:inset 0 1px 0 oklch(from var(--color-text) l c h / .04);font-size:var(--text-xs);cursor:pointer;transition:background var(--transition-interactive), color var(--transition-interactive), border-color var(--transition-interactive);flex-shrink:0;justify-content:center;align-items:center;padding:2px 8px;display:inline-flex}.ui-preview-action:hover:not(:disabled){background:var(--color-surface-offset);border-color:oklch(from var(--color-border) calc(l + .08) c h)}.ui-preview-action:disabled{opacity:.5;cursor:not-allowed}.ui-preview-action--icon-only{width:30px;min-width:30px;height:30px;padding:0}.ui-preview-action--icon-only svg{width:14px;height:14px;display:block}.ui-record-surface{--ui-record-padding:var(--space-3);--ui-record-gap:var(--space-2);--ui-record-radius:var(--radius-md);--ui-record-border:var(--color-border);--ui-record-bg:var(--color-surface-2);--ui-record-color:var(--color-text-muted);--ui-record-border-hover:var(--ui-record-border);--ui-record-bg-hover:var(--color-surface-offset);--ui-record-shadow:none;--ui-record-shadow-hover:var(--ui-record-shadow);--ui-record-border-active:var(--ui-record-border-hover);--ui-record-bg-active:var(--ui-record-bg-hover);--ui-record-shadow-active:var(--ui-record-shadow-hover);--ui-record-hover-transform:none;appearance:none;gap:var(--ui-record-gap);width:100%;min-width:0;padding:var(--ui-record-padding);border:1px solid var(--ui-record-border);border-radius:var(--ui-record-radius);background:var(--ui-record-bg);color:var(--ui-record-color);text-align:left;box-shadow:var(--ui-record-shadow);transition:transform .14s ease, border-color var(--transition-interactive), background var(--transition-interactive), box-shadow var(--transition-interactive), color var(--transition-interactive);flex-direction:column;display:flex}.ui-record-surface:hover{transform:var(--ui-record-hover-transform);border-color:var(--ui-record-border-hover);background:var(--ui-record-bg-hover);box-shadow:var(--ui-record-shadow-hover);color:var(--color-text)}.ui-record-surface.active,.ui-record-surface.is-active,.ui-record-surface[aria-current=true]{border-color:var(--ui-record-border-active);background:var(--ui-record-bg-active);box-shadow:var(--ui-record-shadow-active);color:var(--color-text)}.ui-record-header,.ui-record-meta{align-items:center;gap:var(--space-2);min-width:0;display:flex}.ui-record-header{justify-content:space-between}.ui-record-meta{color:var(--color-text-faint);flex-wrap:wrap}.ui-record-copy{flex-direction:column;flex:1;min-width:0;display:flex}.ui-record-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ui-record-subtitle{color:var(--color-text-faint);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ui-record-actions{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:inline-flex}.ui-item-row{--ui-item-row-bg-hover:var(--color-surface-offset);--ui-item-row-bg-active:var(--color-primary-highlight);align-items:center;gap:var(--space-2);border-radius:var(--radius-md);transition:background var(--transition-interactive), color var(--transition-interactive);padding:2px;display:flex}.ui-item-row:hover{background:var(--ui-item-row-bg-hover)}.ui-item-row.active,.ui-item-row.is-active{background:var(--ui-item-row-bg-active)}.ui-item-main{align-items:center;gap:var(--space-2);flex:1;min-width:0;display:flex}.ui-item-copy{flex-direction:column;flex:1;min-width:0;display:flex}.ui-item-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ui-item-subtitle{color:var(--color-text-faint);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ui-item-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:4px;display:inline-flex}.ui-pill-badge{min-height:20px;padding:2px var(--space-2);border-radius:var(--radius-full);white-space:nowrap;font-size:var(--text-meta);justify-content:center;align-items:center;font-weight:600;display:inline-flex}.ui-pill-badge--count{min-width:20px;padding-inline:6px}.ui-pill-badge--accent{background:var(--color-primary-highlight);color:var(--color-primary)}.ui-pill-badge--solid{background:var(--color-primary);color:var(--color-text-inverse)}.ui-pill-badge--muted{background:var(--color-surface-dynamic);color:var(--color-text-muted)}.ui-pill-badge--code{background:var(--color-surface-offset-2);color:var(--color-text-faint);font-family:var(--font-mono);letter-spacing:.02em;font-size:9px;font-weight:700}.ui-status-badge{border-radius:var(--radius-2xs);font-family:var(--font-mono);font-size:var(--text-caption);letter-spacing:.02em;text-transform:uppercase;flex-shrink:0;justify-content:center;align-items:center;padding:1px 5px;font-weight:600;display:inline-flex}.ui-status-badge--success{color:var(--color-success);background:var(--surface-success-soft)}.ui-status-badge--warning{color:var(--color-warning);background:var(--surface-warning-soft)}.ui-status-badge--danger{color:var(--color-error);background:var(--surface-danger-soft)}.ui-status-badge--accent{color:var(--color-primary);background:var(--surface-accent-soft)}.ui-status-badge--muted{color:var(--color-text-faint);background:var(--color-surface-offset)}.ui-stat-token{font-family:var(--font-mono);font-size:var(--text-label);white-space:nowrap;align-items:center;gap:2px;display:inline-flex}.ui-stat-token--add{color:var(--diff-add-text)}.ui-stat-token--del{color:var(--diff-del-text)}.ui-chip-button{--ui-chip-border:var(--color-border);--ui-chip-bg:var(--color-surface);--ui-chip-color:var(--color-text-muted);--ui-chip-border-hover:var(--ui-chip-border);--ui-chip-bg-hover:var(--color-surface-offset);--ui-chip-color-hover:var(--color-text);--ui-chip-border-active:var(--ui-chip-border-hover);--ui-chip-bg-active:var(--ui-chip-bg-hover);--ui-chip-color-active:var(--ui-chip-color-hover);border:1px solid var(--ui-chip-border);border-radius:var(--radius-full);background:var(--ui-chip-bg);min-height:30px;color:var(--ui-chip-color);transition:background var(--transition-interactive), border-color var(--transition-interactive), color var(--transition-interactive), transform .14s ease;font-size:var(--text-meta);justify-content:center;align-items:center;gap:6px;padding:4px 10px;font-weight:600;display:inline-flex}.ui-chip-button:hover{color:var(--ui-chip-color-hover);border-color:var(--ui-chip-border-hover);background:var(--ui-chip-bg-hover)}.ui-chip-button.is-active,.ui-chip-button[aria-pressed=true]{color:var(--ui-chip-color-active);border-color:var(--ui-chip-border-active);background:var(--ui-chip-bg-active)}.ui-chip-button--comment{--ui-chip-border:var(--border-comment-muted);--ui-chip-bg:var(--surface-comment-offset);--ui-chip-border-hover:oklch(from var(--color-comment) l c h / .22);--ui-chip-bg-hover:var(--surface-comment-offset-active);--ui-chip-border-active:oklch(from var(--color-comment) l c h / .28);--ui-chip-bg-active:var(--surface-comment-selection);--ui-chip-color-active:var(--color-comment)}.ui-icon-chip{--ui-icon-chip-border:var(--color-border);--ui-icon-chip-bg:var(--color-surface-2);border:1px solid var(--ui-icon-chip-border);border-radius:var(--radius-md);background:var(--ui-icon-chip-bg);width:34px;min-width:34px;min-height:34px;transition:background var(--transition-interactive), border-color var(--transition-interactive), transform .14s ease;font-size:var(--text-title-md);justify-content:center;align-items:center;padding:0;display:inline-flex}.ui-icon-chip:hover{border-color:var(--ui-icon-chip-border);background:var(--ui-icon-chip-bg);transform:translateY(-1px)}.ui-icon-chip--comment{--ui-icon-chip-border:var(--border-comment-muted);--ui-icon-chip-bg:var(--surface-comment-subtle-strong)}.ui-icon-chip--comment:hover{border-color:oklch(from var(--color-comment) l c h / .24);background:var(--surface-comment-offset-active)}.ui-state-marker{--ui-marker-border:var(--color-border);--ui-marker-bg:var(--color-surface);--ui-marker-color:var(--color-text);--ui-marker-shadow:var(--shadow-md);--ui-marker-border-active:var(--ui-marker-border);--ui-marker-bg-active:var(--ui-marker-bg);--ui-marker-color-active:var(--ui-marker-color);--ui-marker-border-passive:var(--ui-marker-border);--ui-marker-bg-passive:var(--ui-marker-bg);--ui-marker-border-hover:var(--ui-marker-border-active);--ui-marker-bg-hover:var(--ui-marker-bg-active);--ui-marker-color-hover:var(--ui-marker-color-active);border:1px solid var(--ui-marker-border);border-radius:var(--radius-full);background:var(--ui-marker-bg);min-width:28px;height:24px;color:var(--ui-marker-color);box-shadow:var(--ui-marker-shadow);pointer-events:auto;font-size:var(--text-caption);justify-content:center;align-items:center;gap:4px;padding:0 7px;font-weight:700;transition:transform .14s,box-shadow .14s,background-color .14s,border-color .14s,color .14s,opacity .14s;display:inline-flex;position:absolute}.ui-state-marker.is-active{border-color:var(--ui-marker-border-active);background:var(--ui-marker-bg-active);color:var(--ui-marker-color-active)}.ui-state-marker.is-passive{opacity:.48;border-color:var(--ui-marker-border-passive);background:var(--ui-marker-bg-passive);box-shadow:none}.ui-state-marker.is-hovered{opacity:1;border-color:var(--ui-marker-border-hover);background:var(--ui-marker-bg-hover);color:var(--ui-marker-color-hover)}.ui-state-marker:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)scale(1.04)}.ui-state-marker--comment{--ui-marker-border:oklch(from var(--color-comment) l c h / .24);--ui-marker-bg:var(--surface-comment-offset-active);--ui-marker-color:var(--color-comment);--ui-marker-border-active:oklch(from var(--color-comment) l c h / .32);--ui-marker-bg-active:var(--surface-comment-selection);--ui-marker-color-active:var(--color-text-inverse);--ui-marker-border-passive:oklch(from var(--color-comment) l c h / .16);--ui-marker-bg-passive:var(--surface-comment-offset-soft);--ui-marker-border-hover:oklch(from var(--color-comment) l c h / .28);--ui-marker-bg-hover:var(--surface-comment-offset-strong);--ui-marker-color-hover:var(--color-text-inverse)}.ui-selection-pill{border:1px solid var(--color-primary);border-radius:var(--radius-full);text-align:center;min-width:96px;box-shadow:var(--shadow-md);pointer-events:auto;font-size:var(--text-meta);letter-spacing:.02em;padding:6px 10px;font-weight:700;transition:transform .14s,box-shadow .14s;position:absolute}.ui-selection-pill:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)scale(1.04)}.ui-selection-pill--comment{border-color:oklch(from var(--color-comment) l c h / .22);background:var(--surface-comment-selection);color:var(--color-text-inverse)}.preview-container,.cm-scroller,.file-tree,.git-panel,.diff-scroll,.comments-drawer-list,.comments-drawer-item-quote,.comment-card-quote,.comment-card-scroll,.markdown-toolbar,.comment-markdown pre,.comment-markdown .comment-markdown-table,.preview-content pre,.preview-content .table-wrapper,.preview-content .mermaid-frame,.preview-content .plantuml-frame,.plantuml-maximized-root .plantuml-frame{scrollbar-width:thin;scrollbar-color:var(--color-surface-dynamic) transparent}.preview-container::-webkit-scrollbar{width:8px;height:8px}.cm-scroller::-webkit-scrollbar{width:8px;height:8px}.file-tree::-webkit-scrollbar{width:8px;height:8px}.git-panel::-webkit-scrollbar{width:8px;height:8px}.diff-scroll::-webkit-scrollbar{width:8px;height:8px}.comments-drawer-list::-webkit-scrollbar{width:8px;height:8px}.comments-drawer-item-quote::-webkit-scrollbar{width:8px;height:8px}.comment-card-quote::-webkit-scrollbar{width:8px;height:8px}.comment-card-scroll::-webkit-scrollbar{width:8px;height:8px}.markdown-toolbar::-webkit-scrollbar{width:8px;height:8px}.comment-markdown pre::-webkit-scrollbar{width:8px;height:8px}.comment-markdown .comment-markdown-table::-webkit-scrollbar{width:8px;height:8px}.preview-content pre::-webkit-scrollbar{width:8px;height:8px}.preview-content .table-wrapper::-webkit-scrollbar{width:8px;height:8px}.preview-content .mermaid-frame::-webkit-scrollbar{width:8px;height:8px}.preview-content .plantuml-frame::-webkit-scrollbar{width:8px;height:8px}.plantuml-maximized-root .plantuml-frame::-webkit-scrollbar{width:8px;height:8px}.preview-container::-webkit-scrollbar-track{background:0 0}.cm-scroller::-webkit-scrollbar-track{background:0 0}.file-tree::-webkit-scrollbar-track{background:0 0}.git-panel::-webkit-scrollbar-track{background:0 0}.diff-scroll::-webkit-scrollbar-track{background:0 0}.comments-drawer-list::-webkit-scrollbar-track{background:0 0}.comments-drawer-item-quote::-webkit-scrollbar-track{background:0 0}.comment-card-quote::-webkit-scrollbar-track{background:0 0}.comment-card-scroll::-webkit-scrollbar-track{background:0 0}.markdown-toolbar::-webkit-scrollbar-track{background:0 0}.comment-markdown pre::-webkit-scrollbar-track{background:0 0}.comment-markdown .comment-markdown-table::-webkit-scrollbar-track{background:0 0}.preview-content pre::-webkit-scrollbar-track{background:0 0}.preview-content .table-wrapper::-webkit-scrollbar-track{background:0 0}.preview-content .mermaid-frame::-webkit-scrollbar-track{background:0 0}.preview-content .plantuml-frame::-webkit-scrollbar-track{background:0 0}.plantuml-maximized-root .plantuml-frame::-webkit-scrollbar-track{background:0 0}.preview-container::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.cm-scroller::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.file-tree::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.git-panel::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.diff-scroll::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.comments-drawer-list::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.comments-drawer-item-quote::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.comment-card-quote::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.comment-card-scroll::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.markdown-toolbar::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.comment-markdown pre::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.comment-markdown .comment-markdown-table::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.preview-content pre::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.preview-content .table-wrapper::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.preview-content .mermaid-frame::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.preview-content .plantuml-frame::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.plantuml-maximized-root .plantuml-frame::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.preview-container::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.cm-scroller::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.file-tree::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.git-panel::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.diff-scroll::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.comments-drawer-list::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.comments-drawer-item-quote::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.comment-card-quote::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.comment-card-scroll::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.markdown-toolbar::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.comment-markdown pre::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.comment-markdown .comment-markdown-table::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.preview-content pre::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.preview-content .table-wrapper::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.preview-content .mermaid-frame::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.preview-content .plantuml-frame::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.plantuml-maximized-root .plantuml-frame::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.git-panel{flex-direction:column;flex:1;display:flex;overflow-y:auto}.git-panel.active{display:flex}.git-branch-bar{align-items:stretch;gap:var(--space-2);padding:var(--space-3);border-bottom:1px solid var(--color-divider);font-size:var(--text-xs);flex-direction:column;display:flex}.git-branch-meta{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;min-width:0;display:flex}.git-branch-name{border-radius:var(--radius-sm);background:var(--color-surface-offset);min-width:0;max-width:100%;color:var(--color-text);font-family:var(--font-mono);font-size:var(--text-label);align-items:center;gap:6px;padding:3px 8px;font-weight:500;display:inline-flex}.git-branch-name svg{color:var(--color-primary);flex-shrink:0}.git-sync-info{align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--text-meta);flex-shrink:0;display:inline-flex}.git-sync-metric{align-items:center;gap:2px;display:inline-flex}.git-sync-metric--ahead{color:var(--color-success)}.git-sync-metric--behind,.git-sync-info-muted{color:var(--color-text-faint)}.git-change-stats{align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--text-meta);flex-shrink:0;font-weight:600;display:inline-flex}.git-branch-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%;display:grid}.git-panel-mode-switch{grid-template-columns:repeat(2,minmax(0,1fr));display:inline-grid}.git-panel-mode-btn{min-width:0}.git-branch-actions .ui-action-pill{justify-content:center;width:100%}.git-branch-actions .ui-action-pill svg{flex-shrink:0}.git-change-add{color:var(--diff-add-text)}.git-change-del{color:var(--diff-del-text)}.git-panel-footer{padding:var(--space-3);border-top:1px solid var(--color-divider);margin-top:auto}.git-panel-footer-actions{gap:var(--space-2);flex-direction:column;display:flex}.git-panel-footer-actions .ui-action-button{width:100%}.git-footer-commit-btn{border:1px solid var(--border-accent-soft);background:var(--surface-accent-soft);width:100%;color:var(--color-primary)}.git-footer-commit-btn:hover:not(:disabled){background:var(--surface-accent-strong)}.git-panel-empty{padding:var(--space-4);color:var(--color-text-faint);text-align:center;font-size:var(--text-xs)}.git-section{border-bottom:1px solid var(--color-divider)}.git-section-header{width:100%;padding:var(--space-2) var(--space-3);color:var(--color-text-muted);font-size:var(--text-meta);letter-spacing:.05em;text-transform:uppercase;text-align:left;background:0 0;align-items:center;gap:6px;font-weight:600;display:flex}.git-section-header:hover{background:var(--color-surface-offset)}.git-section-count{min-height:20px}.git-section-chevron{color:var(--color-text-faint);transition:transform .15s}.git-section-chevron.collapsed{transform:rotate(-90deg)}.git-file-list{padding:var(--space-1) 0}.git-file-row{margin:0 var(--space-2) 2px;--ui-item-row-bg-hover:var(--color-surface-offset);--ui-item-row-bg-active:var(--color-primary-highlight)}.git-file-item{padding:5px var(--space-2) 5px calc(var(--space-2) + 10px);border-radius:calc(var(--radius-md) - 2px);color:var(--color-text-muted);text-align:left;transition:color var(--transition-interactive);background:0 0}.git-file-item:hover{color:var(--color-text)}.git-file-item.active{color:var(--color-primary)}.git-file-row.active .git-file-path{color:color-mix(in oklab, var(--color-primary) 56%, var(--color-text-muted))}.git-file-icon{opacity:.5;flex-shrink:0}.git-file-copy{min-width:0}.git-file-name{text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-ui-sm);overflow:hidden}.git-file-path{color:var(--color-text-faint);text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-meta);overflow:hidden}.git-file-actions{padding-right:4px}.git-file-actions .ui-action-icon{width:30px}.git-file-row.active .ui-action-icon--surface{background:var(--surface-accent-subtle);color:var(--color-text)}.git-history-list{gap:var(--space-1);padding:var(--space-3);flex-direction:column;display:flex}.git-history-row{--ui-record-padding:10px 11px;--ui-record-gap:4px;--ui-record-border:var(--color-border);--ui-record-bg:var(--surface-overlay-raised);--ui-record-border-hover:var(--border-accent-muted);--ui-record-bg-hover:var(--surface-fill-subtle);--ui-record-border-active:var(--border-accent-stronger);--ui-record-bg-active:var(--surface-accent-subtle);--ui-record-shadow-active:var(--shadow-accent-inset)}.git-history-subject{color:var(--color-text);font-size:var(--text-label);font-weight:700}.git-history-row-top,.git-history-row-meta,.git-history-row-stats{gap:var(--space-2)}.git-history-hash{flex-shrink:0}.git-history-row-meta{color:var(--color-text-faint);font-size:var(--text-caption)}.git-history-row-stats{font-family:var(--font-mono);font-size:var(--text-caption);font-weight:700}.git-history-footer{padding:0 var(--space-3) var(--space-3)}.git-history-load-more{width:100%}.file-history-shell{--file-history-shell-chrome-offset:calc(var(--toolbar-h) + var(--control-h-md) + (var(--space-2) * 2) + (var(--space-3) * 2) + 1px);box-sizing:border-box;align-items:start;gap:var(--space-3);width:100%;min-height:0;padding:var(--space-3);flex:1 0 auto;grid-template-columns:minmax(260px,320px) minmax(0,1fr);display:grid;overflow:visible}.file-history-sidebar,.file-history-detail{min-width:0}.file-history-sidebar{top:var(--space-4);align-self:start;gap:var(--space-3);max-height:calc(100dvh - var(--file-history-shell-chrome-offset));min-height:0;padding:var(--space-3);border:1px solid var(--color-divider);border-radius:var(--radius-xl);background:var(--surface-overlay-raised);box-shadow:var(--shadow-elevated-soft);flex-direction:column;display:flex;position:sticky;overflow:hidden}.file-history-sidebar-header{gap:var(--space-2);display:grid}.file-history-sidebar-copy{color:var(--color-text-muted);font-size:var(--text-caption);margin:0;line-height:1.5}.file-history-kicker{color:var(--color-text-faint);font-size:var(--text-caption);letter-spacing:.1em;text-transform:uppercase;font-weight:700}.file-history-title{gap:var(--space-1);display:grid}.file-history-path{color:var(--color-text);font-size:var(--text-title-sm);font-weight:700}.file-history-dir{color:var(--color-text-muted);font-size:var(--text-caption)}.file-history-list{gap:var(--space-2);flex-direction:column;flex:auto;min-width:0;min-height:0;padding:0;display:flex;overflow:hidden auto}.file-history-item{--ui-record-padding:var(--space-3);--ui-record-gap:var(--space-2);--ui-record-border:var(--color-border);--ui-record-bg:var(--surface-overlay-offset);--ui-record-border-hover:var(--color-border);--ui-record-bg-hover:var(--surface-fill-strong);--ui-record-border-active:var(--border-accent-strong);--ui-record-bg-active:var(--surface-accent-subtle);--ui-record-shadow-active:var(--shadow-accent-inset);box-sizing:border-box;text-align:left;width:100%;max-width:100%;display:block}.file-history-item.active{border-color:var(--border-accent-strong);box-shadow:var(--shadow-accent-outline)}.file-history-item-local{--ui-record-border:color-mix(in srgb, var(--color-primary) 20%, var(--color-divider));--ui-record-bg:color-mix(in srgb, var(--surface-accent-subtle) 58%, var(--surface-overlay-offset))}.file-history-item-top,.file-history-item-copy{gap:var(--space-2);min-width:0;display:flex}.file-history-item-top{justify-content:space-between;align-items:flex-start}.file-history-item-copy{flex-direction:column;flex:1}.file-history-item-title{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-label);font-weight:700;overflow:hidden}.file-history-item-meta{color:var(--color-text-faint);text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-caption);overflow:hidden}.file-history-item-badge{flex-shrink:0}.file-history-item-stats{gap:var(--space-2);color:var(--color-text-faint);font-family:var(--font-mono);font-size:var(--text-caption);font-weight:700;display:inline-flex}.file-history-footer{padding:0}.file-history-detail{align-self:start;gap:var(--space-3);grid-template-rows:auto auto;min-width:0;min-height:0;display:grid}.file-history-detail-header{align-content:start;align-items:start;gap:var(--space-3) var(--space-4);padding:var(--space-4);border:1px solid var(--color-divider);border-radius:var(--radius-xl);background:linear-gradient(180deg, var(--surface-accent-subtle), var(--color-surface));grid-template-columns:minmax(0,1fr) auto;display:grid;overflow:hidden}.file-history-detail-copy{gap:var(--space-1);min-width:0;display:grid}.file-history-detail-kicker{color:var(--color-text-faint);font-size:var(--text-caption);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.file-history-detail-title{color:var(--color-text);font-size:var(--text-title-md);margin:0;font-weight:700;line-height:1.3}.file-history-detail-meta{color:var(--color-text-muted);font-size:var(--text-label);margin:0;line-height:1.5}.file-history-detail-actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;flex-shrink:0;align-self:start;display:flex}.file-history-detail-body{border:1px solid var(--color-divider);border-radius:var(--radius-xl);background:var(--surface-overlay-raised);min-width:0;min-height:auto;overflow:auto hidden}.file-history-diff-block{width:max-content;min-width:100%;overflow:visible}.file-history-diff-block .diff-file-header,.file-history-diff-block .diff-hunk-header,.file-history-diff-block .diff-line,.file-history-diff-block .diff-split-hunk,.file-history-diff-block .diff-split-row{min-width:max-content}@media (width<=960px){.file-history-shell{flex:none;grid-template-columns:1fr;overflow:visible}.file-history-sidebar{max-height:none;position:static}}@media (width<=768px){.file-history-shell{padding:var(--space-3)}.file-history-detail-header{flex-direction:column}.file-history-detail-actions{justify-content:stretch;width:100%}.file-history-detail-actions .ui-button{flex:1}}.diff-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);background:var(--color-surface-2);border-bottom:1px solid var(--color-divider);display:flex}.diff-toolbar-left,.diff-toolbar-right{align-items:center;gap:var(--space-3);display:flex}.diff-toolbar-actions,.diff-toolbar-actions-group{align-items:center;gap:var(--space-2);display:inline-flex}.diff-toolbar-actions-group-git{padding:var(--space-1);border:1px solid var(--color-divider);border-radius:var(--radius-lg);background:var(--surface-overlay);box-shadow:var(--shadow-sheet-inset)}.diff-toolbar-actions-divider{width:1px;height:var(--control-h-xs);background:var(--color-divider);opacity:.9}.diff-open-editor-btn{min-width:116px}.diff-open-editor-btn:disabled{opacity:.45;cursor:not-allowed}.diff-back-btn{min-width:130px}.diff-file-nav{align-items:center;gap:var(--space-2);display:flex}.diff-file-nav .ui-action-icon:disabled{opacity:.3}.diff-file-indicator{color:var(--color-text-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.diff-stats{align-items:center;gap:var(--space-2);white-space:nowrap;display:inline-flex}.diff-scroll{flex:1;overflow:auto}.diff-content{min-width:fit-content;min-height:100%}.diff-content--history{width:100%;min-width:0;min-height:100%;display:flex}.diff-commit-header{gap:var(--space-2);padding:var(--space-4);border-bottom:1px solid var(--color-divider);background:linear-gradient(180deg, var(--surface-accent-subtle), var(--color-surface));flex-direction:column;display:flex}.diff-commit-subject{color:var(--color-text);font-size:var(--text-title-md);font-weight:700;line-height:1.3}.diff-commit-meta{align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--text-label);flex-wrap:wrap;display:flex}.diff-commit-meta-secondary{color:var(--color-text-faint);font-family:var(--font-mono);font-size:var(--text-meta)}.diff-commit-shell{grid-template-columns:minmax(210px,242px) minmax(0,1fr);align-items:start;gap:10px;padding:10px;display:grid}.diff-commit-index{top:var(--space-4);border:1px solid var(--color-divider);border-radius:calc(var(--radius-lg) + 2px);background:var(--surface-overlay-raised);max-height:calc(100dvh - 220px);box-shadow:var(--shadow-elevated-soft);flex-direction:column;gap:8px;padding:8px;display:flex;position:sticky;overflow:hidden}.diff-commit-index-header{color:var(--color-text-faint);font-size:var(--text-caption);letter-spacing:.1em;text-transform:uppercase;padding-inline:1px;font-weight:700}.diff-commit-index-list{flex-direction:column;gap:5px;padding-block-end:2px;display:flex;overflow:hidden auto}.diff-index-item{--ui-record-padding:8px 9px;--ui-record-gap:4px;--ui-record-border:var(--color-border);--ui-record-bg:var(--surface-overlay-offset);--ui-record-border-hover:var(--color-border);--ui-record-bg-hover:var(--surface-fill-strong);--ui-record-border-active:var(--border-accent-strong);--ui-record-bg-active:var(--surface-accent-subtle);--ui-record-shadow-active:var(--shadow-accent-inset)}.diff-index-item-top,.diff-index-item-meta{gap:6px}.diff-index-item-name{font-size:var(--text-label);font-weight:700}.diff-index-item-path{font-size:var(--text-caption)}.diff-index-item-meta{font-family:var(--font-mono);font-size:var(--text-caption)}.diff-commit-main{min-width:0}.diff-commit-sections{flex-direction:column;gap:10px;display:flex}.diff-commit-section{border:1px solid var(--color-divider);border-radius:calc(var(--radius-lg) + 2px);background:var(--surface-overlay-raised);overflow:hidden}.diff-commit-section.active{border-color:var(--border-accent-strong);box-shadow:var(--shadow-accent-outline)}.diff-commit-section-header{justify-content:space-between;align-items:center;gap:var(--space-3);background:var(--surface-overlay-offset);text-align:left;width:100%;padding:10px 14px;display:flex}.diff-commit-section-header:hover{background:var(--surface-fill-strong)}.diff-commit-section-main,.diff-commit-section-meta{align-items:center;gap:var(--space-2);min-width:0;display:flex}.diff-commit-section-main{flex:1}.diff-section-chevron{color:var(--color-text-faint);flex-shrink:0;transition:transform .15s}.diff-section-chevron.collapsed{transform:rotate(-90deg)}.diff-commit-section-copy{flex-direction:column;min-width:0;display:flex}.diff-commit-section-name{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-ui-sm);font-weight:700;overflow:hidden}.diff-commit-section-path{color:var(--color-text-faint);text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-meta);overflow:hidden}.diff-commit-section-meta{font-family:var(--font-mono);font-size:var(--text-meta);flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;font-weight:700}.diff-commit-section-body{padding:0}.diff-commit-shell-focused .diff-commit-main .diff-file-block{border:1px solid var(--color-divider);border-radius:calc(var(--radius-lg) + 2px);overflow:hidden}.diff-file-block{margin-bottom:0}.diff-file-header{z-index:5;align-items:center;gap:var(--space-2);border-top:1px solid var(--color-divider);border-bottom:1px solid var(--color-divider);background:var(--color-surface-offset);padding:8px 14px;display:flex;position:sticky;top:0}.diff-file-header:first-child{border-top:none}.diff-file-path{color:var(--color-text);font-family:var(--font-mono);font-size:var(--text-label);font-weight:500}.diff-file-header-stats{gap:var(--space-2);font-family:var(--font-mono);font-size:var(--text-meta);margin-left:auto;display:inline-flex}.diff-binary-message,.diff-empty-state{padding:var(--space-4);color:var(--color-text-faint)}.diff-limit-card{align-items:flex-start;gap:var(--space-2);padding:var(--space-4);border-top:1px solid var(--color-divider);color:var(--color-text-muted);flex-direction:column;display:flex}.diff-limit-card strong{color:var(--color-text);font-size:var(--text-sm)}.diff-load-full-btn{margin-top:var(--space-1);font-size:var(--text-label);font-weight:600}.diff-hunk-header,.diff-split-hunk{background:var(--diff-hunk-bg);color:var(--diff-hunk-text);font-family:var(--font-mono);font-size:var(--text-label);padding:4px 14px 4px 84px}.diff-line{min-height:20px;font-family:var(--font-mono);font-size:var(--text-ui-sm);align-items:stretch;line-height:20px;display:flex}.diff-line-numbers{-webkit-user-select:none;user-select:none;flex-shrink:0;display:flex}.diff-line-num{border-right:1px solid var(--color-divider);width:40px;color:var(--diff-gutter);text-align:right;font-size:var(--text-label);padding:0 8px}.diff-line-num:first-child{border-right:none}.diff-line-prefix{-webkit-user-select:none;user-select:none;flex-shrink:0;width:20px;padding-left:8px;font-weight:500}.diff-line-content{white-space:pre;tab-size:4;flex:1;padding:0 10px}.diff-line.addition{background:var(--diff-add-bg)}.diff-line.addition .diff-line-num{background:var(--diff-add-line-bg);color:var(--diff-add-text)}.diff-line.addition .diff-line-prefix{color:var(--diff-add-text)}.diff-line.deletion{background:var(--diff-del-bg)}.diff-line.deletion .diff-line-num{background:var(--diff-del-line-bg);color:var(--diff-del-text)}.diff-line.deletion .diff-line-prefix{color:var(--diff-del-text)}.diff-line.note{background:var(--color-surface-offset);color:var(--color-text-faint)}.diff-highlight-add{border-radius:var(--radius-2xs);background:var(--diff-add-line-bg);padding:0 1px}.diff-highlight-del{border-radius:var(--radius-2xs);background:var(--diff-del-line-bg);padding:0 1px}.diff-split{display:block}.diff-split-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.diff-split-pane-header{display:none}.diff-split-line{min-height:20px;font-family:var(--font-mono);font-size:var(--text-ui-sm);line-height:20px;display:flex}.diff-split-line:first-child{border-right:1px solid var(--color-divider)}.diff-split-num{border-right:1px solid var(--color-divider);width:44px;color:var(--diff-gutter);text-align:right;font-size:var(--text-label);padding:0 8px}.diff-split-content{white-space:pre;tab-size:4;flex:1;padding:0 10px}.diff-split-line.addition{background:var(--diff-add-bg)}.diff-split-line.addition .diff-split-num{background:var(--diff-add-line-bg);color:var(--diff-add-text)}.diff-split-line.deletion{background:var(--diff-del-bg)}.diff-split-line.deletion .diff-split-num{background:var(--diff-del-line-bg);color:var(--diff-del-text)}.diff-split-line.empty{background:var(--color-surface-offset);opacity:.45}.mobile-view-toggle{display:none}.user-avatars{align-items:center;display:flex}.user-avatar{z-index:1;border:2px solid var(--color-surface);border-radius:var(--radius-full);width:24px;height:24px;color:var(--color-text-on-dark);font-size:var(--text-meta);flex-shrink:0;justify-content:center;align-items:center;margin-left:-4px;font-weight:600;display:flex;position:relative}.user-avatar-initial{justify-content:center;align-items:center;line-height:1;display:inline-flex}.user-avatar:first-child{margin-left:0}.user-avatar.is-local{z-index:5;border-radius:var(--radius-full);width:auto;min-width:44px;box-shadow:var(--shadow-accent-ring);gap:4px;margin-right:6px;padding:0 8px 0 6px}.user-avatar.is-local+.user-avatar{margin-left:0}.user-avatar.is-local .user-avatar-initial{border-radius:var(--radius-full);background:var(--surface-avatar-muted);width:14px;height:14px;font-size:var(--text-micro)}.user-avatar-self-label{border-radius:var(--radius-full);background:var(--surface-avatar-label);color:var(--color-text-on-dark);font-size:var(--text-micro);letter-spacing:.04em;text-transform:uppercase;padding:2px 4px;font-weight:700;line-height:1}.user-avatar-button{cursor:pointer;transition:transform var(--transition-interactive), box-shadow var(--transition-interactive);padding:0}.user-avatar-button:hover{z-index:2;transform:translateY(-1px)}.user-avatar-button:focus-visible{z-index:3;box-shadow:var(--shadow-accent-ring-strong);outline:none}.user-avatar.is-following{z-index:4;box-shadow:var(--shadow-accent-ring-solid)}.user-avatar-button.different-file{opacity:.55}.user-avatar-button.different-file:hover{opacity:.85}.chat-container,.chat-toggle-btn{position:relative}.chat-toggle-btn.is-active{color:var(--color-text);background:var(--color-surface-offset)}.chat-toggle-btn.is-unread:not(.is-active){color:var(--color-primary);background:var(--interactive-surface);box-shadow:var(--shadow-accent-inset)}.chat-toggle-btn.is-unread:not(.is-active):hover{background:var(--surface-accent-soft)}.chat-toggle-badge{min-width:18px;min-height:18px;padding:0 5px;line-height:18px}.chat-toggle-btn.is-unread:not(.is-active) .chat-toggle-badge{box-shadow:var(--shadow-accent-halo)}.chat-panel{top:calc(100% + var(--space-2));z-index:30;gap:var(--space-3);width:min(360px, calc(100vw - var(--space-6)));max-height:min(70vh,520px);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:oklch(from var(--color-surface) l c h / .98);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);flex-direction:column;display:flex;position:absolute;right:0}.chat-container>.chat-toast-container{top:calc(var(--toolbar-h) + var(--space-2));right:var(--space-3);z-index:60;width:min(360px, calc(100vw - var(--space-6)));align-items:flex-end;position:fixed}.chat-toast-container .toast{border-style:solid;border-width:1px;border-color:var(--border-warning-toast);background:var(--surface-warning-toast);width:100%;max-width:100%;color:var(--text-warning-toast);font-size:var(--text-ui-sm);box-shadow:var(--shadow-warning-toast);border-left-width:4px;padding:12px 14px;font-weight:600}.chat-panel-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.chat-panel-title{font-size:var(--text-sm);margin:0;font-weight:700}.chat-panel-status{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:var(--text-meta)}.chat-notification-action{flex-shrink:0}.chat-notification-action.is-enabled{border-color:oklch(from var(--color-success) l c h / .45);background:var(--surface-success-soft);color:var(--color-success)}.chat-notification-action.is-blocked{color:var(--color-warning)}.chat-empty-state{padding:var(--space-4);border:1px dashed var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-2);color:var(--color-text-muted);font-size:var(--text-label)}.chat-messages{gap:var(--space-3);min-height:140px;max-height:320px;padding-right:var(--space-1);flex-direction:column;display:flex;overflow-y:auto}.chat-message{align-items:flex-start;gap:var(--space-2);display:flex}.chat-message.is-local{flex-direction:row-reverse}.chat-message-avatar{border-radius:var(--radius-full);width:28px;height:28px;color:var(--color-text-on-dark);font-size:var(--text-label);flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.chat-message-body{flex-direction:column;flex:1;align-items:flex-start;min-width:0;display:flex}.chat-message.is-local .chat-message-body{align-items:flex-end}.chat-message-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:4px;display:flex}.chat-message.is-local .chat-message-meta{justify-content:flex-end}.chat-message-author{color:var(--color-text);font-size:var(--text-label);font-weight:600}.chat-message-time,.chat-message-file{color:var(--color-text-muted);font-size:var(--text-caption)}.chat-message-file{border-radius:var(--radius-full);background:var(--color-surface-offset);padding:2px 6px}.chat-message-text{border:1px solid var(--color-divider);border-radius:var(--radius-md);background:var(--color-surface-2);width:fit-content;max-width:78%;color:var(--color-text);font-size:var(--text-ui-sm);word-break:break-word;margin:0;padding:10px 12px;line-height:1.45}.chat-message.is-local .chat-message-text{background:oklch(from var(--color-primary) l c h / .14);border-color:oklch(from var(--color-primary) l c h / .25)}.chat-form{align-items:center;gap:var(--space-2);display:flex}.chat-input{font-size:var(--text-ui-sm)}.chat-send-btn{padding-inline:var(--space-4);flex-shrink:0}.app-dialog{width:min(420px, calc(100vw - var(--space-6)));border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-lg);opacity:0;transition:opacity .2s cubic-bezier(.16, 1, .3, 1), transform .2s cubic-bezier(.16, 1, .3, 1), display .2s cubic-bezier(.16, 1, .3, 1) allow-discrete;margin:auto;padding:0;transform:scale(.95)}.app-dialog[open]{opacity:1;transform:scale(1)}@starting-style{.app-dialog[open]{opacity:0;transform:scale(.95)}}.app-dialog::backdrop{background:oklch(from var(--color-bg) l c h / .72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;transition:opacity .2s cubic-bezier(.16, 1, .3, 1), display .2s cubic-bezier(.16, 1, .3, 1) allow-discrete}.app-dialog[open]::backdrop{opacity:1}@starting-style{.app-dialog[open]::backdrop{opacity:0}}.app-dialog-form{gap:var(--space-4);padding:var(--space-5);display:grid}.app-dialog-header{gap:var(--space-1);display:grid}.app-dialog-title{font-size:var(--text-base);font-weight:600}.app-dialog-copy{color:var(--color-text-muted);font-size:var(--text-sm)}.app-dialog-field{gap:var(--space-2);display:grid}.app-dialog-label{color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:600}.app-dialog-hint{color:var(--color-text-muted);font-size:var(--text-xs);line-height:1.5}.app-dialog-note{overflow-wrap:anywhere;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-offset);color:var(--color-text);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:var(--text-xs);line-height:1.6}.app-dialog-note.is-danger{border-color:oklch(from var(--color-error) l c h / .35);background:var(--color-error-highlight);color:var(--color-error)}.app-dialog-actions{justify-content:flex-end;gap:var(--space-2);display:flex}.tab-lock-overlay{z-index:1200;padding:var(--space-6);background:radial-gradient(circle at top, oklch(from var(--color-primary) l c h / .16), transparent 38%), oklch(from var(--color-bg) l c h / .82);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);place-items:center;display:grid;position:fixed;inset:0}.tab-lock-card{gap:var(--space-4);width:min(520px,100%);padding:var(--space-6);border:1px solid oklch(from var(--color-primary) l c h / .25);border-radius:var(--radius-xl);background:linear-gradient(180deg, var(--color-surface), var(--color-surface-2));box-shadow:var(--shadow-lg);display:grid}.tab-lock-kicker{color:var(--color-primary);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.tab-lock-title{font-size:var(--text-lg);line-height:1.2}.tab-lock-copy{color:var(--color-text-muted);font-size:var(--text-sm);line-height:1.6}.tab-lock-actions{justify-content:flex-start;display:flex}.preview-content h1{margin:var(--space-8) 0 var(--space-4);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-divider);font-size:var(--text-xl);letter-spacing:-.02em;font-weight:700}.preview-content h1:first-child{margin-top:0}.preview-content h2{margin:var(--space-6) 0 var(--space-3);font-size:var(--text-lg);letter-spacing:-.01em;font-weight:600}.preview-content h3{margin:var(--space-5) 0 var(--space-2);font-size:var(--text-base);font-weight:600}.preview-content h4,.preview-content h5,.preview-content h6{margin:var(--space-4) 0 var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm);font-weight:600}.preview-content p{max-width:72ch;margin-bottom:var(--space-4)}:is(.preview-content p:has(>.excalidraw-embed-placeholder:only-child),.preview-content p:has(>.video-embed-placeholder:only-child),.preview-content p:has(>.plantuml-shell:only-child)){max-width:none;margin-bottom:0}.preview-content a{color:var(--color-primary);border-bottom:1px solid oklch(from var(--color-primary) l c h / .3);transition:border-color var(--transition-interactive);text-decoration:none}.preview-content a:hover{border-bottom-color:var(--color-primary)}.preview-content strong{font-weight:600}.preview-content em{font-style:italic}.preview-content del{color:var(--color-text-muted);text-decoration:line-through}.preview-content ul,.preview-content ol{margin-bottom:var(--space-4);padding-left:var(--space-6)}.preview-content li{margin-bottom:var(--space-1)}.preview-content li>ul,.preview-content li>ol{margin-top:var(--space-1);margin-bottom:0}.preview-content .task-list-item{margin-left:calc(var(--space-6) * -1);padding-left:var(--space-1);list-style:none}.preview-content .task-list-item input[type=checkbox]{margin-right:var(--space-2);accent-color:var(--color-primary);vertical-align:middle}.preview-content blockquote{margin:var(--space-4) 0;padding:var(--space-3) var(--space-5);border-left:3px solid var(--color-primary);border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--color-surface);color:var(--color-text-muted)}.preview-content blockquote p:last-child{margin-bottom:0}.preview-content code{border-radius:var(--radius-sm);background:var(--color-surface-offset);color:var(--color-primary);font-family:var(--font-mono);padding:2px 6px;font-size:.875em}.preview-content pre{max-width:100%;margin:var(--space-4) 0;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);-webkit-overflow-scrolling:touch;overflow-x:auto}.preview-content pre code{width:fit-content;min-width:100%;padding:var(--space-4);color:var(--color-text);font-size:var(--text-ui-sm);white-space:pre;word-wrap:normal;overflow-wrap:normal;background:0 0;line-height:1.6;display:block}.preview-content .table-wrapper{margin:var(--space-4) 0;border:1px solid var(--color-border);border-radius:var(--radius-md);-webkit-overflow-scrolling:touch;overflow-x:auto}.preview-content table{border-collapse:collapse;white-space:nowrap;width:100%;min-width:100%}.preview-content th,.preview-content td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-divider);text-align:left;font-size:var(--text-sm)}.preview-content th{background:var(--color-surface-offset);color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:.03em;text-transform:uppercase;font-weight:600}.preview-content tr:last-child td{border-bottom:none}.preview-content tr:hover td{background:var(--color-surface-offset)}.preview-content hr{height:1px;margin:var(--space-8) 0;background:var(--color-divider);border:none}.preview-content img{max-width:100%;height:auto;margin:var(--space-4) 0;border-radius:var(--radius-md);cursor:zoom-in}.image-lightbox-root{z-index:220;pointer-events:auto;place-items:center;display:grid;position:fixed;inset:0}.image-lightbox-root[hidden]{display:none!important}.image-lightbox-backdrop{background:var(--surface-scrim-strong);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:zoom-out;border:none;position:absolute;inset:0}.image-lightbox-shell{z-index:1;position:absolute;inset:0}.image-lightbox-toolbar{top:var(--space-5);left:var(--space-5);right:var(--space-5);z-index:2;justify-content:space-between;align-items:center;gap:var(--space-3);pointer-events:none;display:flex;position:absolute}.image-lightbox-title{border-radius:var(--radius-full);background:var(--surface-inverse-glass);min-width:0;color:var(--color-text-on-dark);text-overflow:ellipsis;white-space:nowrap;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-media-soft);pointer-events:auto;font-size:var(--text-xs);padding:8px 12px;font-weight:600;overflow:hidden}.image-lightbox-controls{justify-content:flex-end;align-items:center;gap:var(--space-2);pointer-events:auto;flex-wrap:wrap;display:inline-flex}.image-lightbox-btn{border-radius:var(--radius-full);background:var(--surface-inverse-glass);min-width:0;color:var(--color-text-on-dark);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-media-soft);font-size:var(--text-xs);border:none;padding:8px 12px;font-weight:600;transition:background .18s,transform .18s}.image-lightbox-btn:hover:not(:disabled){background:var(--surface-inverse-glass-hover)}.image-lightbox-btn:disabled{opacity:.45;cursor:default}.image-lightbox-zoom-label{border-radius:var(--radius-full);background:var(--surface-inverse-glass);min-width:58px;color:var(--color-text-on-dark);text-align:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-media-soft);font-size:var(--text-xs);font-variant-numeric:tabular-nums;padding:8px 12px;font-weight:600}.image-lightbox-viewport{touch-action:none;-webkit-user-select:none;user-select:none;position:absolute;inset:0;overflow:hidden}.image-lightbox-viewport.is-dragging .image-lightbox-image{cursor:grabbing!important}.image-lightbox-image{width:auto;height:auto;max-width:calc(100vw - (var(--space-8) * 2));max-height:calc(100vh - (var(--space-8) * 2));object-fit:contain;transform-origin:50%;will-change:transform;box-shadow:var(--shadow-media-stage);margin:auto;position:absolute;inset:0}body.image-lightbox-open{overflow:hidden}@media (width<=768px){.image-lightbox-toolbar{top:var(--space-3);left:var(--space-3);right:var(--space-3);flex-direction:column;align-items:flex-start}.image-lightbox-controls{justify-content:flex-start}.image-lightbox-btn{flex:none}.image-lightbox-image{max-width:calc(100vw - (var(--space-4) * 2));max-height:calc(100vh - (var(--space-4) * 2))}}.preview-content .video-embed-shell{background:var(--surface-media-canvas);display:block}.preview-content .video-embed,.preview-content .video-embed-placeholder{transition:box-shadow .18s;display:block}.preview-content .video-embed-placeholder.is-hydrated{visibility:hidden}.video-embed-overlay-root{z-index:1;pointer-events:none;position:absolute;inset:0}.preview-content .video-embed-frame,.preview-content .video-embed,.preview-content .video-embed-placeholder{width:100%;min-width:0;max-width:100%}.preview-content .video-embed-frame{height:100%}.preview-content .video-embed-placeholder-card{border-radius:0;min-height:100%}.preview-content .video-embed-placeholder-copy{gap:2px;display:grid}.preview-content .video-embed-iframe,.preview-content .video-embed-player{background:var(--surface-media-canvas);border:none;width:100%;max-width:100%;height:100%;display:block}.preview-content .video-embed-player{object-fit:contain}.preview-content .mermaid-shell{gap:0;display:grid}.preview-content .mermaid-placeholder-card{border-radius:0}.preview-content .mermaid-toolbar{justify-content:flex-end}.preview-content .mermaid-zoom-btn{min-width:32px;line-height:1.5}.preview-content .mermaid-zoom-btn:disabled{opacity:.5;cursor:not-allowed}.preview-content .mermaid-frame{max-width:none}.preview-content .mermaid-frame.is-pannable{cursor:grab}.preview-content .mermaid-frame.is-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.preview-content .mermaid-frame svg{display:block}body.mermaid-maximized-open{overflow:hidden}body.mermaid-maximized-open:before{content:"";z-index:170;background:var(--surface-scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);position:fixed;inset:0}.preview-content .mermaid-shell.is-maximized{inset:var(--space-4);z-index:171;width:auto;max-width:none;box-shadow:var(--shadow-lg);grid-template-rows:auto minmax(0,1fr);margin:0;position:fixed}.preview-content .mermaid-shell.is-maximized .mermaid-frame{height:100%;max-height:none}.preview-content .plantuml-shell,.plantuml-maximized-root .plantuml-shell{gap:0;width:100%;min-width:0;display:grid}.preview-content .plantuml-placeholder-card,.plantuml-maximized-root .plantuml-placeholder-card{border-radius:0}.preview-content .plantuml-tool-btn:disabled,.plantuml-maximized-root .plantuml-tool-btn:disabled{opacity:.5;cursor:not-allowed}.preview-content .plantuml-toolbar,.plantuml-maximized-root .plantuml-toolbar{justify-content:flex-end}.preview-content .plantuml-tool-btn,.plantuml-maximized-root .plantuml-tool-btn{min-width:32px;line-height:1.5}.preview-content .plantuml-frame,.plantuml-maximized-root .plantuml-frame{max-width:100%}.preview-content .plantuml-frame.is-pannable,.plantuml-maximized-root .plantuml-frame.is-pannable{cursor:grab}.preview-content .plantuml-frame.is-dragging,.plantuml-maximized-root .plantuml-frame.is-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.preview-content .plantuml-frame svg,.plantuml-maximized-root .plantuml-frame svg{display:block}body.plantuml-maximized-open{overflow:hidden}body.plantuml-maximized-open:before{content:"";z-index:170;background:var(--surface-scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);position:fixed;inset:0}.plantuml-maximized-root{z-index:171;pointer-events:none;position:fixed;inset:0}.preview-content .plantuml-shell.is-maximized,.plantuml-maximized-root .plantuml-shell.is-maximized{inset:var(--space-4);z-index:171;width:auto;max-width:none;box-shadow:var(--shadow-lg);pointer-events:auto;grid-template-rows:auto minmax(0,1fr);margin:0;position:fixed}.preview-content .plantuml-shell.is-maximized .plantuml-frame,.plantuml-maximized-root .plantuml-shell.is-maximized .plantuml-frame{height:100%;max-height:none}.comments-drawer{width:var(--preview-floating-comments-width,var(--panel-comments-width));min-width:var(--panel-comments-min-width);border-left:1px solid var(--color-divider);background:var(--surface-comment-shell);min-height:0;box-shadow:inset 1px 0 0 oklch(from var(--color-comment) l c h / .06);flex-direction:column;display:flex}.comments-drawer-header{padding:var(--space-4);border-bottom:1px solid var(--color-divider);background:var(--surface-comment-shell-header)}.comments-drawer-title{color:var(--color-comment);font-size:var(--text-label);letter-spacing:.06em;text-transform:uppercase;font-weight:700}.comments-drawer-empty{padding:var(--space-4);color:var(--color-text-muted);font-size:var(--text-label)}.comments-drawer-list{gap:var(--space-3);padding:var(--space-3);flex-direction:column;display:flex;overflow:auto}.comments-drawer-item{--ui-record-padding:var(--space-4);--ui-record-gap:var(--space-3);--ui-record-radius:calc(var(--radius-lg) + 4px);--ui-record-border:var(--border-comment-soft);--ui-record-bg:var(--surface-comment-record);--ui-record-border-hover:oklch(from var(--color-comment) l c h / .18);--ui-record-bg-hover:var(--surface-comment-record-hover);--ui-record-shadow-hover:var(--shadow-md);--ui-record-border-active:var(--border-comment-active);--ui-record-bg-active:var(--surface-comment-record-active);--ui-record-shadow-active:var(--shadow-comment-outline);--ui-record-hover-transform:translateY(-1px)}.comments-drawer-item-title{color:var(--color-comment);font-size:var(--text-meta);letter-spacing:.05em;text-transform:uppercase;font-weight:700}.comments-drawer-item-count{border:1px solid oklch(from var(--color-comment) l c h / .18);background:var(--color-comment-soft);min-height:20px;color:var(--color-comment);font-weight:700}.comments-drawer-item-quote{max-height:9.5rem;margin:var(--space-3) 0;overflow-wrap:anywhere;padding:var(--space-3);padding-bottom:calc(var(--space-3) + 2px);border:1px solid var(--border-comment-soft);border-radius:var(--radius-lg);background:var(--surface-comment-offset);color:var(--color-text-muted);white-space:pre-wrap;word-break:break-word;scrollbar-width:thin;font-family:var(--font-mono);font-size:var(--text-code-sm);line-height:1.65;overflow:auto}.comments-drawer-item-preview{max-height:7.8rem;color:var(--color-text-muted);position:relative;overflow:hidden}.comments-drawer-item-preview:after{content:"";background:var(--surface-comment-preview-fade);pointer-events:none;height:2.5rem;position:absolute;inset:auto 0 0}.comments-drawer-item-footer{color:var(--color-text-muted);font-size:var(--text-meta);letter-spacing:.01em;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;font-weight:600}.comments-drawer-item-updated{color:var(--color-text-faint)}.comment-editor-layer,.comment-preview-layer,.comment-preview-highlights{pointer-events:none;position:absolute;inset:0;overflow:visible}.comment-preview-badge{right:calc(var(--preview-comment-rail-inset) - var(--preview-comment-rail-offset,0px))}.comment-marker-icon{flex:none;width:12px;height:12px;display:inline-flex}.comment-marker-icon svg{width:100%;height:100%;display:block}.comment-marker-count{line-height:1}.comment-selection-chip{position:absolute}.comment-preview-highlight{border:1px solid oklch(from var(--color-comment) l c h / .16);border-radius:var(--radius-sm);background:var(--color-comment-soft);opacity:.56;transition:opacity .14s,background-color .14s,border-color .14s;position:absolute}.comment-preview-highlight.is-passive{opacity:.32}.comment-preview-highlight.is-hovered{opacity:.72;border-color:oklch(from var(--color-comment) l c h / .24);background:var(--surface-comment-highlight-hover)}.comment-preview-highlight.is-active{opacity:.9;border-color:oklch(from var(--color-comment) l c h / .3);background:var(--surface-comment-highlight-active)}.comment-card-root{z-index:50;position:fixed}.comment-card{gap:var(--space-3);width:min(100%,520px);max-height:min(78vh,720px);padding:var(--space-4);border:1px solid var(--border-comment-strong);border-radius:var(--radius-xl-plus);background:var(--surface-comment-card);box-shadow:var(--shadow-card-strong);flex-direction:column;animation:.14s cubic-bezier(.16,1,.3,1) comment-card-in;display:flex;overflow:hidden}.comment-card-header{flex-shrink:0}.comment-card-scroll{gap:var(--space-3);flex-direction:column;min-height:0;padding-right:2px;display:flex;overflow:auto}.comment-card-title{font-size:var(--text-title-sm);letter-spacing:-.01em;font-weight:700}.comment-card-meta{color:var(--color-comment);font-size:var(--text-meta);letter-spacing:.05em;text-transform:uppercase;margin-top:2px;font-weight:700}.comment-card-close,.comment-thread-card-action{background:var(--surface-comment-offset-soft);color:var(--color-text-muted);transition:color var(--transition-interactive), background var(--transition-interactive), border-color var(--transition-interactive);border:1px solid #0000}.comment-card-close:hover,.comment-thread-card-action:hover{color:var(--color-text);border-color:oklch(from var(--color-comment) l c h / .16)}.comment-thread-card-action.is-active{border-color:oklch(from var(--color-comment) l c h / .2);background:var(--surface-comment-offset-active);color:var(--color-text)}.comment-thread-card-action.is-danger{color:var(--color-error)}.comment-card-quote,.comment-thread-card-excerpt{padding:var(--space-2) var(--space-3);border:1px solid var(--border-comment-muted);border-radius:var(--radius-md);background:var(--surface-comment-offset);color:var(--color-text-muted);font-size:var(--text-label)}.comment-card-quote{overflow-wrap:anywhere;max-height:11rem;padding-bottom:calc(var(--space-3) + 2px);white-space:pre-wrap;word-break:break-word;scrollbar-width:thin;font-family:var(--font-mono);font-size:var(--text-code-sm);line-height:1.65;overflow:auto}.comment-card-form,.comment-reply-form{gap:var(--space-3);flex-direction:column;display:flex}.comment-card-actions{justify-content:flex-end}.comment-card-input{resize:vertical;min-height:88px}.comment-thread-card{gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-divider);flex-direction:column;display:flex}.comment-thread-card-header{flex-wrap:wrap;align-items:flex-start}.comment-thread-card-heading{gap:var(--space-1) var(--space-2);flex-wrap:wrap;flex:160px;min-width:0;display:flex}.comment-thread-card-author,.comment-message-card-author{font-size:var(--text-label);font-weight:700}.comment-thread-card-time,.comment-message-card-time{color:var(--color-text-faint);font-size:var(--text-meta)}.comment-thread-card-actions{justify-content:flex-end;margin-left:auto}.comment-message-card{padding:var(--space-2) var(--space-3);border:1px solid var(--border-comment-soft);border-radius:var(--radius-md);background:var(--surface-comment-subtle-strong)}.comment-message-card-body{margin-top:var(--space-1);font-size:var(--text-label);line-height:1.65}.comment-reaction-bar{justify-content:space-between;align-items:flex-start;gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.comment-reaction-chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.comment-reaction-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.comment-reaction-chip-emoji,.comment-reaction-chip-count{line-height:1}.comment-reaction-picker-wrap{display:inline-flex;position:relative}.comment-reaction-picker{z-index:2;gap:var(--space-2);min-width:220px;padding:var(--space-3);border:1px solid var(--border-comment-strong);border-radius:var(--radius-lg);background:var(--surface-comment-elevated);box-shadow:var(--shadow-lg);scrollbar-width:thin;flex-direction:column;display:flex;position:absolute;top:calc(100% + 8px);right:0;overflow:auto}.comment-reaction-picker.is-upward{top:auto;bottom:calc(100% + 8px)}.comment-reaction-picker-grid{gap:var(--space-2);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}@keyframes comment-card-in{0%{opacity:0;transform:translateY(6px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.comment-markdown{color:var(--color-text);font-size:var(--text-label);line-height:1.65}.comment-markdown>:first-child{margin-top:0}.comment-markdown>:last-child{margin-bottom:0}.comment-markdown p,.comment-markdown ul,.comment-markdown ol,.comment-markdown blockquote,.comment-markdown pre,.comment-markdown .comment-markdown-table,.comment-markdown table{max-width:none}.comment-markdown p,.comment-markdown ul,.comment-markdown ol,.comment-markdown blockquote,.comment-markdown pre,.comment-markdown .comment-markdown-table{margin:var(--space-2) 0}.comment-markdown li+li{margin-top:4px}.comment-markdown ul,.comment-markdown ol{padding-left:var(--space-5)}.comment-markdown a{color:var(--color-primary);overflow-wrap:anywhere;text-decoration:underline}.comment-markdown blockquote{padding:var(--space-2) var(--space-3);border-left:3px solid oklch(from var(--color-comment) l c h / .45);border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--surface-comment-offset-strong);color:var(--color-text-muted)}.comment-markdown code{border-radius:var(--radius-sm);background:var(--surface-comment-offset-soft);color:var(--color-primary);font-family:var(--font-mono);padding:2px 6px;font-size:.9em}.comment-markdown pre{border:1px solid var(--border-comment-muted);border-radius:var(--radius-lg);background:var(--surface-comment-elevated);max-width:100%;overflow:auto}.comment-markdown pre code{width:max-content;min-width:100%;padding:var(--space-3);color:var(--color-text);white-space:pre;font-size:var(--text-label);background:0 0;line-height:1.6;display:block}.comment-markdown .comment-markdown-table{border:1px solid var(--border-comment-muted);border-radius:var(--radius-md);overflow:auto}.comment-markdown table{border-collapse:collapse;width:100%}.comment-markdown th,.comment-markdown td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-divider);text-align:left;font-size:var(--text-label)}.comment-markdown th{background:var(--surface-comment-offset)}.comment-markdown-preview>:not(pre):not(blockquote):not(.comment-markdown-table){-webkit-line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.comment-markdown-preview pre code{width:100%;min-width:0;max-height:6.6rem;overflow:hidden}.comment-markdown-preview .comment-markdown-table,.backlinks-panel.hidden,.backlinks-panel-layer.hidden{display:none}.backlinks-panel{min-width:0}.backlinks-panel-layer{left:max(var(--space-4), calc((100% - min(var(--preview-content-max-width), 100%)) / 2));bottom:calc(var(--space-5) + env(safe-area-inset-bottom,0px));z-index:14;width:min(320px, calc(min(var(--preview-content-max-width), 100%) - var(--space-8)));pointer-events:none;position:absolute}.backlinks-panel-dock{border:1px solid var(--color-divider);border-radius:var(--radius-xl-plus);background:var(--surface-overlay);box-shadow:var(--shadow-floating-soft);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);pointer-events:auto;flex-direction:column-reverse;transition:box-shadow .16s,transform .16s,background-color .16s,border-color .16s;display:flex;overflow:hidden}.backlinks-panel-dock:hover{box-shadow:var(--shadow-floating-hover);transform:translateY(-1px)}.backlinks-panel-inline{margin-top:var(--space-6);padding:0 var(--space-4);border-top:1px solid var(--color-divider)}.backlinks-header{justify-content:flex-start;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-3) 0;cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--color-text-muted);text-align:left;transition:color var(--transition-interactive);font-size:var(--text-sm);background:0 0;border:none;font-weight:600;display:flex}.backlinks-header:hover{color:var(--color-text)}.backlinks-panel-dock .backlinks-header{background:var(--surface-overlay-header);padding:11px 14px}.backlinks-header-empty{cursor:default;opacity:.5}.backlinks-header-empty:hover{color:var(--color-text-muted)}.backlinks-chevron{transition:transform var(--transition-interactive);flex-shrink:0}.backlinks-panel.expanded .backlinks-chevron{transform:rotate(90deg)}.backlinks-toggle{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.backlinks-count{border-radius:var(--radius-full);background:var(--interactive-surface);min-width:22px;color:var(--color-primary);text-align:center;font-size:var(--text-xs);padding:1px 7px;font-weight:600}.backlinks-count:empty{display:none}.backlinks-body{max-height:0;transition:max-height .2s;overflow:hidden}.backlinks-panel-inline.expanded .backlinks-body{max-height:600px;overflow-y:auto}.backlinks-panel-dock .backlinks-body{background:var(--surface-overlay-raised)}.backlinks-panel-dock.expanded .backlinks-body{border-bottom:1px solid var(--border-accent-soft);max-height:min(44vh,400px);overflow-y:auto}.backlinks-panel-dock.expanded{border-color:var(--border-accent-muted);background:var(--surface-overlay-strong)}.backlinks-list{gap:var(--space-2);padding-bottom:var(--space-4);flex-direction:column;display:flex}.backlinks-panel-dock .backlinks-list{padding:10px}.backlink-item{width:100%;padding:var(--space-3);border:1px solid var(--color-divider);border-radius:var(--radius-md);background:var(--color-surface);text-align:left;cursor:pointer;transition:border-color var(--transition-interactive), background var(--transition-interactive);display:block}.backlinks-panel-dock .backlink-item{border-radius:var(--radius-lg);background:var(--surface-overlay-soft)}.backlink-item:hover{border-color:var(--color-primary);background:oklch(from var(--color-primary) l c h / .04)}.backlink-item:focus-visible{box-shadow:var(--shadow-focus-compact);outline:none}.backlink-file-name{align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);color:var(--color-text);font-size:var(--text-sm);font-weight:600;display:flex}.backlink-icon{color:var(--color-text-muted);flex-shrink:0}.backlink-dir{color:var(--color-text-faint);font-size:var(--text-xs);margin-left:auto;font-weight:400}.backlink-context{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-xs);padding-left:22px;line-height:1.6;overflow:hidden}.backlink-more{color:var(--color-text-faint);font-style:italic}@media (width>=769px){.backlinks-panel-inline{display:none!important}}.outline-panel{width:var(--preview-floating-outline-width,var(--panel-outline-width));border-left:1px solid var(--color-divider);background:var(--color-surface-offset);flex-direction:column;flex-shrink:0;transition:width .2s cubic-bezier(.16,1,.3,1),opacity .15s;display:flex;overflow:hidden}.outline-panel.hidden{opacity:0;pointer-events:none;border-left:none;width:0}.outline-header{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-divider);flex-shrink:0}.outline-title{color:var(--color-text-muted);font-size:var(--text-meta);letter-spacing:.05em;text-transform:uppercase;font-weight:600}.outline-nav{padding:var(--space-2) 0;flex:1;overflow:hidden auto}.outline-nav::-webkit-scrollbar{width:4px}.outline-nav::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.outline-item{width:100%;padding:3px var(--space-3);color:var(--color-text-muted);text-align:left;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:color var(--transition-interactive), border-color var(--transition-interactive), background var(--transition-interactive);font-family:var(--font-body);font-size:var(--text-label);background:0 0;border:none;border-left:2px solid #0000;line-height:1.5;display:block;overflow:hidden}.outline-item:hover{color:var(--color-text);background:var(--color-surface-dynamic)}.outline-item.active{border-left-color:var(--color-primary);background:oklch(from var(--color-primary) l c h / .06);color:var(--color-primary)}.outline-item[data-level="1"]{padding-left:var(--space-3);font-weight:600}.outline-item[data-level="2"]{padding-left:calc(var(--space-3) + 12px)}.outline-item[data-level="3"]{padding-left:calc(var(--space-3) + 24px);font-size:var(--text-meta)}.outline-item[data-level="4"]{padding-left:calc(var(--space-3) + 36px);font-size:var(--text-meta)}.outline-item[data-level="5"]{padding-left:calc(var(--space-3) + 48px);font-size:var(--text-meta)}.outline-item[data-level="6"]{padding-left:calc(var(--space-3) + 60px);font-size:var(--text-meta)}.outline-empty{padding:var(--space-4) var(--space-3);color:var(--color-text-faint);font-size:var(--text-label);font-style:italic}.editor-layout[data-view=editor] .preview-pane,.editor-layout[data-view=editor] .resizer,.editor-layout[data-view=preview] .editor-pane,.editor-layout[data-view=preview] .resizer{display:none}.editor-layout[data-view=preview] .preview-pane{flex:1}.editor-layout[data-view=preview] .preview-body{--preview-content-max-width:1080px}.editor-layout[data-view=preview] .preview-content{max-width:1080px}.editor-layout[data-view=preview] .preview-content.is-excalidraw-file-preview,.editor-layout[data-view=preview] .preview-content.is-drawio-file-preview,.editor-layout[data-view=preview] .preview-content.is-image-file-preview,.editor-layout[data-view=preview] .preview-content.is-mermaid-file-preview,.editor-layout[data-view=preview] .preview-content.is-plantuml-file-preview{max-width:none}.editor-layout[data-view=preview] .preview-content p{max-width:84ch}:is(.editor-layout[data-view=preview] .preview-content p:has(>.excalidraw-embed-placeholder:only-child),.editor-layout[data-view=preview] .preview-content p:has(>.video-embed-placeholder:only-child),.editor-layout[data-view=preview] .preview-content p:has(>.mermaid-shell:only-child),.editor-layout[data-view=preview] .preview-content p:has(>.plantuml-shell:only-child)){max-width:none}@media (width>=769px){.preview-body>.comments-drawer,.preview-body>.outline-panel{top:var(--preview-floating-sidebar-gap);right:var(--preview-floating-sidebar-gap);bottom:var(--preview-floating-sidebar-gap);z-index:20;border:1px solid var(--color-divider);border-radius:calc(var(--radius-lg) + 2px);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);position:absolute;overflow:hidden}.preview-body>.comments-drawer{width:var(--preview-floating-comments-width);border-left:1px solid var(--color-divider);min-width:240px}.preview-body>.outline-panel{width:var(--preview-floating-outline-width);border-left:1px solid var(--color-divider)}.preview-body>.comments-drawer.hidden,.preview-body>.outline-panel.hidden{opacity:0;pointer-events:none;visibility:hidden;transform:translate(12px);display:flex!important}.preview-body>.comments-drawer:not(.hidden),.preview-body>.outline-panel:not(.hidden){opacity:1;visibility:visible;transform:translate(0)}.preview-body:has(>.outline-panel:not(.hidden))>.comments-drawer:not(.hidden){right:calc(var(--preview-floating-sidebar-gap) * 2 + var(--preview-floating-outline-width))}}.editor-layout[data-view=editor] .editor-pane{flex:1}.toast-container{right:var(--space-4);bottom:var(--space-4);z-index:100;gap:var(--space-2);pointer-events:none;flex-direction:column;display:flex;position:fixed}.toast{max-width:320px;padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-2);color:var(--color-text);box-shadow:var(--shadow-md);font-size:var(--text-xs);pointer-events:auto;opacity:1;align-items:center;gap:var(--space-3);transition:opacity .3s cubic-bezier(.16, 1, .3, 1), transform .3s cubic-bezier(.16, 1, .3, 1), display .3s cubic-bezier(.16, 1, .3, 1) allow-discrete;display:flex;transform:translate(0)scale(1)}.toast__message{flex:auto;min-width:0}.toast__action,.toast__dismiss{color:inherit;font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0;font-weight:600}.toast__action{color:var(--color-primary)}.toast__dismiss{opacity:.72}@starting-style{.toast{opacity:0;transform:translate(8px)scale(.96)}}.toast.leaving{opacity:0;pointer-events:none;transform:translate(8px)scale(.96)}@media (width<=768px){.input,.sidebar-search-input,.qs-input,.chat-input{font-size:16px}.editor-container .cm-editor{font-size:15px}.sidebar{z-index:100;box-shadow:var(--shadow-lg);position:fixed;top:0;bottom:0;left:0}.sidebar.collapsed,.ui-toolbar-button-label,.toolbar-center{display:none}.mobile-view-toggle{display:flex!important}.ui-toolbar-button--name{max-width:none}.toolbar{gap:var(--space-1);padding:0 var(--space-2)}.toolbar-left{gap:var(--space-1);min-width:0}.toolbar-room-info{gap:var(--space-1)}.toolbar-room-name{max-width:min(38vw,140px);font-size:var(--text-xs)}.toolbar-badge{text-overflow:ellipsis;max-width:68px;overflow:hidden}.toolbar-presence-cluster{align-items:center;min-width:0;display:inline-flex}.toolbar-presence-cluster .user-avatar{border-width:1.5px;width:22px;height:22px;margin-left:-3px}.toolbar-presence-cluster .user-avatar.is-local{gap:0;width:22px;min-width:22px;margin-right:0;padding:0}.toolbar-presence-cluster .user-avatar.is-local .user-avatar-initial{width:auto;height:auto;font-size:var(--text-meta);background:0 0}.toolbar-presence-cluster .user-avatar-self-label{display:none}.toolbar-overflow-toggle{display:inline-flex}.toolbar-overflow-menu{z-index:14;border:1px solid var(--color-border);background:oklch(from var(--color-surface) l c h / .98);width:min(212px,100vw - 20px);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:18px;flex-direction:column;align-items:stretch;gap:0;padding:4px;display:none;position:absolute;top:calc(100% + 6px);right:0}.toolbar-right.is-overflow-open .toolbar-overflow-menu{display:flex}.toolbar-overflow-menu .ui-toolbar-button,.toolbar-overflow-menu .chat-container{width:100%}.toolbar-overflow-menu .ui-toolbar-button-label{text-align:left;flex:1;min-width:0;display:inline}.toolbar-overflow-menu .toolbar-theme-button .ui-toolbar-button-label{display:inline!important}.toolbar-overflow-menu .ui-toolbar-button{border-radius:12px;justify-content:flex-start;gap:8px;min-height:36px;padding:0 10px}.toolbar-overflow-menu .toolbar-theme-button{background:var(--color-surface-offset);width:100%;min-width:0;color:var(--color-text);margin-top:0;padding:0 10px}.toolbar-overflow-menu .toolbar-theme-button:hover{background:var(--color-surface-dynamic)}.toolbar-overflow-menu .toolbar-theme-button .toolbar-theme-state{display:inline-flex!important}.toolbar-overflow-menu .toolbar-theme-state[data-theme=dark]{background:var(--color-surface-dynamic);color:var(--color-text)}.toolbar-overflow-menu .toolbar-theme-state[data-theme=light]{background:var(--color-primary-highlight);color:var(--color-primary)}.sidebar-close-btn{display:inline-flex}.ui-nav-tabs{padding:0 var(--space-1)}.ui-nav-tab{padding:var(--space-2)}.editor-layout{flex-direction:column}.resizer{display:none!important}.editor-layout[data-view=split] .preview-pane{display:none}.editor-layout[data-view=split] .editor-pane{flex:1}.preview-content{padding:var(--space-4)}.backlinks-panel-layer{display:none!important}.diff-toolbar{padding:var(--space-2) var(--space-3);flex-wrap:wrap}.diff-toolbar-left,.diff-toolbar-right{justify-content:space-between;width:100%}.diff-toolbar-left{flex-wrap:wrap}.diff-toolbar-actions{justify-content:space-between;width:100%}.diff-toolbar-actions-group-git{flex:1}.diff-toolbar-actions-group-git .ui-action-button{flex:1;min-width:0}.diff-toolbar-actions-divider{display:none}.diff-mode-btn{min-width:74px}.diff-layout-btn{min-width:78px}.diff-split-row{grid-template-columns:1fr}.diff-commit-shell{padding:var(--space-3);grid-template-columns:1fr}.diff-commit-index{max-height:none;position:static}.diff-commit-section-header{flex-direction:column;align-items:flex-start}.diff-commit-section-meta{justify-content:flex-start;width:100%}.diff-split-line:first-child{border-right:none;border-bottom:1px solid var(--color-divider)}.markdown-toolbar{scrollbar-width:thin;flex-wrap:nowrap;overflow-x:auto}.markdown-toolbar-popover{max-width:min(240px,100vw - 24px)}.outline-panel{border-top:1px solid var(--color-divider);background:oklch(from var(--color-surface) l c h / .98);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:auto;box-shadow:var(--shadow-lg);z-index:6;border-left:none;position:absolute;inset:0}.outline-panel.hidden{display:none!important}.comments-drawer{border-left:none;border-top:1px solid var(--color-divider);background:oklch(from var(--color-surface) l c h / .98);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:auto;min-width:0;box-shadow:var(--shadow-lg);z-index:6;position:absolute;inset:0}.comments-drawer.hidden{display:none!important}#outlineToggle{display:inline-flex!important}.chat-panel{top:calc(var(--toolbar-h) + var(--space-2));right:var(--space-2);left:var(--space-2);width:auto;max-height:calc(100vh - var(--toolbar-h) - var(--space-6));position:fixed}.chat-form{align-items:stretch}.chat-send-btn{padding-inline:var(--space-3)}.comment-card{width:min(100vw - 32px,520px);max-height:min(72vh,680px)}.comment-thread-card-actions{justify-content:flex-start;width:100%;margin-left:0}.comment-reaction-picker{min-width:min(240px,100vw - 64px);left:0;right:auto}.excalidraw-embed.is-maximized{inset:var(--space-3);width:auto}.excalidraw-embed.is-maximized .excalidraw-embed-iframe{height:auto!important}.image-lightbox-toolbar{top:var(--space-3);left:var(--space-3);right:var(--space-3);flex-direction:column;align-items:flex-start}.image-lightbox-controls{justify-content:flex-start}.image-lightbox-btn{flex:none}.image-lightbox-image{max-width:calc(100vw - (var(--space-4) * 2));max-height:calc(100vh - (var(--space-4) * 2))}}@media (width>=769px){.mobile-view-toggle{display:none!important}}[data-theme=light] .preview-content pre,[data-theme=light] .preview-content pre code,[data-theme=light] .hljs{background:var(--color-surface)!important}.cm-tooltip-autocomplete{font-family:var(--font-body);font-size:var(--text-sm);overflow:hidden;border:1px solid var(--color-divider)!important;border-radius:var(--radius-md)!important;background:var(--color-surface)!important;box-shadow:var(--shadow-md)!important}.cm-tooltip-autocomplete>ul{padding:var(--space-1) 0;max-height:240px!important}.cm-tooltip-autocomplete>ul>li{align-items:center;gap:var(--space-2);line-height:1.4;display:flex;padding:var(--space-2) var(--space-3)!important}.cm-tooltip-autocomplete>ul>li[aria-selected]{background:var(--color-primary)!important;color:var(--color-text-inverse)!important}.cm-tooltip-autocomplete .cm-completionLabel{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.cm-tooltip-autocomplete .cm-completionDetail{color:inherit;opacity:.6;white-space:nowrap;font-size:var(--text-xs);margin-left:auto}.cm-tooltip-autocomplete>ul>li[aria-selected] .cm-completionDetail{opacity:.85}.cm-completionIcon-text:after{content:"📄";font-size:var(--text-ui-sm)}.qs-overlay{z-index:9999;background:var(--surface-scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;visibility:hidden;transition:opacity .12s ease, visibility .12s ease, display .12s ease allow-discrete;justify-content:center;padding-top:min(20vh,160px);display:flex;position:fixed;inset:0}.qs-overlay.visible{opacity:1;visibility:visible}@starting-style{.qs-overlay.visible{opacity:0}}.qs-modal{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);width:min(560px,100vw - 32px);max-height:min(440px,60vh);box-shadow:var(--shadow-lg);flex-direction:column;transition:transform .12s cubic-bezier(.16,1,.3,1);display:flex;overflow:hidden;transform:translateY(-8px)scale(.98)}.qs-overlay.visible .qs-modal{transform:translateY(0)scale(1)}@starting-style{.qs-overlay.visible .qs-modal{transform:translateY(-8px)scale(.98)}}.qs-input-wrap{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-divider);display:flex}.qs-search-icon{color:var(--color-text-muted);flex-shrink:0}.qs-input{color:var(--color-text);font-size:var(--text-sm);font-family:var(--font-body);background:0 0;border:none;outline:none;flex:1;line-height:1.5}.qs-input::placeholder{color:var(--color-text-faint)}.qs-kbd{border:1px solid var(--color-divider);border-radius:var(--radius-sm);background:var(--color-surface-offset);color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--text-meta);letter-spacing:.03em;text-transform:uppercase;flex-shrink:0;padding:3px 6px;line-height:1}.qs-results{overscroll-behavior:contain;padding:var(--space-1) 0;overflow-y:auto}.qs-result-item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-4);color:var(--color-text);font-size:var(--text-sm);font-family:var(--font-body);text-align:left;cursor:pointer;background:0 0;border:none;transition:background 60ms;display:flex}.qs-result-item:hover,.qs-result-item.selected{background:var(--color-surface-offset)}.qs-result-item.selected{background:var(--color-primary-highlight)}[data-theme=dark] .qs-result-item.selected{background:oklch(from var(--color-primary) l c h / .18)}.qs-result-icon{color:var(--color-text-muted);flex-shrink:0}.qs-result-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.qs-result-name mark{border-radius:var(--radius-2xs);background:oklch(from var(--color-primary) l c h / .2);color:var(--color-primary);padding:0 1px}.qs-result-path{max-width:200px;color:var(--color-text-faint);text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-xs);flex-shrink:0;overflow:hidden}.qs-hint{padding:var(--space-4);color:var(--color-text-muted);text-align:center;font-size:var(--text-xs)}.qs-hint.hidden{display:none}.diagram-preview-shell{box-sizing:border-box;width:100%;max-width:100%;margin:var(--space-4) 0;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);overflow:hidden}.diagram-preview-placeholder-card{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--color-surface);display:flex}.diagram-preview-placeholder-copy{gap:2px;display:grid}.diagram-preview-placeholder-copy strong{font-size:var(--text-sm)}.diagram-preview-placeholder-copy span{color:var(--color-text-muted);font-size:var(--text-xs)}.diagram-preview-placeholder-btn{border:1px solid var(--color-border);border-radius:var(--radius-xs);background:var(--color-surface-2);color:var(--color-text);font-size:var(--text-xs);cursor:pointer;flex-shrink:0;padding:4px 10px}.diagram-preview-placeholder-btn:hover{background:var(--color-surface-offset)}.diagram-preview-toolbar{align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);background:var(--color-surface-raised);color:var(--color-text-muted);font-size:var(--text-xs);-webkit-user-select:none;user-select:none;flex-wrap:wrap;display:flex}.diagram-preview-zoom-label{min-width:52px;color:var(--color-text-muted);text-align:center;font-size:var(--text-xs);font-variant-numeric:tabular-nums;font-weight:500}.diagram-preview-frame{min-width:0;max-width:100%;max-height:min(70vh,720px);padding:var(--space-3);overscroll-behavior:contain;background:0 0;overflow:auto}.excalidraw-embed,.excalidraw-embed-placeholder,.drawio-embed,.drawio-embed-placeholder{transition:box-shadow .18s;display:block}.drawio-embed{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;max-width:none;overflow:hidden}.drawio-embed.is-direct-file{flex:1}.drawio-embed.is-static-preview{flex-direction:column;display:flex}.drawio-embed-header{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:38px;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);background:var(--color-surface-raised);display:flex}.drawio-embed-label{min-width:0;color:var(--color-text-muted);font-size:var(--text-xs);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.drawio-embed-btn{border:1px solid var(--color-border);border-radius:var(--radius-xs);background:var(--color-surface-2);color:var(--color-text);font-size:var(--text-xs);cursor:pointer;flex-shrink:0;padding:4px 10px}.drawio-embed-iframe{background:0 0;border:0;width:100%;min-height:420px}.drawio-embed-image-shell{background:var(--surface-embed-canvas);cursor:pointer;border:0;justify-content:center;align-items:stretch;width:100%;padding:0;display:flex}.drawio-embed-image{background:0 0;width:100%;height:auto;display:block}.drawio-export-iframe{opacity:0;pointer-events:none;border:0;width:0;height:0;position:absolute}.drawio-viewer-shell{background:var(--surface-embed-canvas);justify-content:center;width:100%;min-height:220px;display:flex;overflow:hidden}.drawio-viewer-frame{background:var(--surface-embed-canvas);cursor:pointer;justify-content:center;width:100%;min-height:220px;display:flex}.drawio-viewer-frame svg,.drawio-viewer-frame iframe,.drawio-viewer-frame>div{max-width:100%;margin-left:auto;margin-right:auto}.drawio-viewer-frame svg{margin-left:auto;margin-right:auto;display:block}.excalidraw-embed-overlay-root{z-index:1;pointer-events:none;position:absolute;inset:0}.excalidraw-maximized-root{z-index:171;pointer-events:none;position:fixed;inset:0}body.excalidraw-maximized-open{overflow:hidden}body.excalidraw-maximized-open:before{content:"";z-index:170;background:var(--surface-scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);position:fixed;inset:0}body.excalidraw-maximized-open .excalidraw-maximized-root{z-index:171}body.excalidraw-maximized-open .resizer{opacity:0;pointer-events:none}.excalidraw-embed:hover{box-shadow:var(--shadow-elevated-soft)}.excalidraw-embed-placeholder.is-hydrated{visibility:hidden}.excalidraw-embed-header{gap:var(--space-2)}.excalidraw-embed-icon{color:var(--color-primary);flex-shrink:0;align-items:center;display:flex}.excalidraw-embed-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:500;overflow:hidden}.excalidraw-embed-iframe{background:var(--surface-embed-canvas);border:none;width:100%;min-height:200px;display:block}.excalidraw-embed.is-maximized{inset:var(--space-4);z-index:172;box-sizing:border-box;border-radius:var(--radius-lg-plus);width:auto;max-width:none;box-shadow:var(--shadow-media-modal);flex-direction:column;margin:0;display:flex;position:fixed}.excalidraw-embed.is-maximized .excalidraw-embed-header{flex-shrink:0}.excalidraw-embed.is-maximized .excalidraw-embed-iframe{flex:1;min-height:0;height:auto!important}.excalidraw-embed.is-maximized .excalidraw-embed-resizer{display:none}.excalidraw-embed-resizer{background:var(--color-border);cursor:ns-resize;height:6px;transition:background .18s;position:relative}.excalidraw-embed-resizer:after{content:"";border-radius:var(--radius-2xs);background:var(--color-text-faint);opacity:0;width:32px;height:3px;transition:opacity .18s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.excalidraw-embed-resizer:hover{background:var(--color-primary)}.excalidraw-embed-resizer:hover:after{opacity:1}.file-tree-file.is-excalidraw .file-tree-icon{color:var(--color-primary)}.file-tree-file.is-mermaid .file-tree-icon{color:oklch(from var(--color-primary) calc(l * .96) calc(c * .86) 215)}
1
+ *,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;scroll-behavior:smooth;hanging-punctuation:first last;scroll-padding-top:var(--space-16)}body{min-height:100dvh;line-height:1.6;font-family:var(--font-body,sans-serif);font-size:var(--text-sm);color:var(--color-text);background-color:var(--color-bg)}img,picture,video,canvas,svg{max-width:100%;height:auto;display:block}ul[role=list],ol[role=list]{list-style:none}input,button,textarea,select{font:inherit;color:inherit}h1,h2,h3,h4,h5,h6{font-family:var(--font-display,inherit);text-wrap:balance;line-height:1.15}p,li,figcaption{text-wrap:pretty;max-width:72ch}::selection{background:oklch(from var(--color-primary) l c h / .25);color:var(--color-text)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:3px;border-radius:var(--radius-sm)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}button{cursor:pointer;background:0 0;border:none}table{border-collapse:collapse;width:100%}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:root{--text-xs:clamp(.75rem, .7rem + .25vw, .875rem);--text-sm:clamp(.875rem, .8rem + .35vw, 1rem);--text-base:clamp(1rem, .9rem + .5vw, 1.125rem);--text-lg:clamp(1.125rem, .95rem + .85vw, 1.5rem);--text-xl:clamp(1.5rem, 1rem + 1.5vw, 2.25rem);--text-2xl:clamp(2rem, 1.2rem + 2.5vw, 3.5rem);--text-label:12px;--text-meta:11px;--text-caption:10px;--text-micro:9px;--text-code-sm:11.5px;--text-ui-sm:13px;--text-ui-md:14px;--text-title-sm:15px;--text-title-md:18px;--font-body:"Inter", system-ui, sans-serif;--font-display:"Geist", "Cal Sans", "Inter", system-ui, sans-serif;--font-mono:"JetBrains Mono", "Fira Code", monospace;--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;--space-24:6rem;--space-32:8rem;--radius-sm:.375rem;--radius-md:.5rem;--radius-lg:.75rem;--radius-xl:1rem;--radius-2xs:2px;--radius-xs:4px;--radius-lg-plus:10px;--radius-xl-plus:18px;--radius-full:9999px;--transition-interactive:.18s cubic-bezier(.16, 1, .3, 1);--content-narrow:640px;--content-default:960px;--content-wide:1200px;--preview-content-width:720px;--panel-comments-width:min(300px, 34vw);--panel-comments-min-width:240px;--panel-outline-width:220px;--toolbar-h:48px;--control-h-xs:28px;--control-h-sm:30px;--control-h-md:36px;--control-h-lg:44px;--control-icon-sm:14px;--control-icon-md:16px;--panel-border-width:1px}:root,[data-theme=light]{--color-bg:#f5f5f7;--color-surface:#fff;--color-surface-2:#fafafe;--color-surface-offset:#eeeef2;--color-surface-offset-2:#e6e6eb;--color-surface-dynamic:#dddde3;--color-surface-raised:#fff;--color-surface-ink:#0f1117;--color-divider:#d1d1d8;--color-border:#c4c4ce;--color-text:#1a1a2e;--color-text-muted:#6b6b80;--color-text-faint:#a0a0b0;--color-text-inverse:#f5f5f7;--color-primary:#4f46e5;--color-primary-hover:#4338ca;--color-primary-active:#3730a3;--color-primary-highlight:#e0e0ff;--color-comment:#4f46e5;--color-comment-soft:#4f46e514;--color-comment-strong:#4f46e524;--color-comment-text:#3730a3;--color-error:#dc2626;--color-error-highlight:#fce8e8;--color-success:#16a34a;--color-success-highlight:#dcfce7;--color-warning:#d97706;--color-warning-highlight:#fef3c7;--diff-add-bg:#16a34a0f;--diff-add-line-bg:#16a34a24;--diff-add-text:#16a34a;--diff-del-bg:#dc26260f;--diff-del-line-bg:#dc262624;--diff-del-text:#dc2626;--diff-hunk-bg:#4f46e514;--diff-hunk-text:#4f46e5;--diff-gutter:#a0a0b0;--surface-fill-subtle:color-mix(in oklab, var(--color-surface) 92%, var(--color-surface-offset) 8%);--surface-fill-strong:color-mix(in oklab, var(--color-surface-offset) 72%, var(--color-surface-offset-2) 28%);--surface-overlay:color-mix(in srgb, var(--color-surface) 84%, var(--color-surface-offset) 16%);--surface-overlay-soft:color-mix(in srgb, var(--color-surface) 88%, var(--color-surface-offset) 12%);--surface-overlay-strong:color-mix(in srgb, var(--color-surface) 90%, var(--color-surface-offset) 10%);--surface-overlay-raised:color-mix(in oklab, var(--color-surface) 94%, transparent);--surface-overlay-header:color-mix(in srgb, var(--color-surface-offset) 76%, var(--color-bg) 24%);--surface-overlay-offset:color-mix(in oklab, var(--color-surface-offset) 82%, transparent);--surface-scrim:oklch(10% 0 0/.42);--surface-scrim-strong:oklch(8% .01 260/.82);--surface-inverse-glass:oklch(18% .02 260/.68);--surface-inverse-glass-hover:oklch(24% .02 260/.82);--surface-media-canvas:#000;--surface-embed-canvas:#fff;--surface-avatar-muted:#ffffff38;--surface-avatar-label:#0f1117d6;--surface-accent-subtle:color-mix(in oklab, var(--color-primary) 8%, var(--color-surface));--surface-accent-soft:color-mix(in oklab, var(--color-primary) 16%, transparent);--surface-accent-strong:color-mix(in oklab, var(--color-primary) 22%, transparent);--surface-success-soft:color-mix(in oklab, var(--color-success) 14%, transparent);--surface-warning-soft:color-mix(in oklab, var(--color-warning) 14%, transparent);--surface-danger-soft:color-mix(in oklab, var(--color-error) 14%, transparent);--surface-comment-shell:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .035), transparent 120px), color-mix(in srgb, var(--color-surface) 96%, var(--color-comment) 4%);--surface-comment-shell-header:color-mix(in srgb, var(--color-surface) 97%, var(--color-comment) 3%);--surface-comment-record:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .028), transparent 70%), color-mix(in srgb, var(--color-surface-2) 95%, var(--color-comment) 5%);--surface-comment-record-hover:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .042), transparent 70%), color-mix(in srgb, var(--color-surface-2) 92%, var(--color-comment) 8%);--surface-comment-record-active:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .055), transparent 72%), color-mix(in srgb, var(--color-surface-2) 90%, var(--color-comment) 10%);--surface-comment-subtle:color-mix(in srgb, var(--color-surface-2) 95%, var(--color-comment) 5%);--surface-comment-subtle-strong:color-mix(in srgb, var(--color-surface-2) 92%, var(--color-comment) 8%);--surface-comment-card:color-mix(in srgb, var(--color-surface) 94%, var(--color-comment) 6%);--surface-comment-elevated:color-mix(in srgb, var(--color-surface) 96%, var(--color-comment) 4%);--surface-comment-offset:color-mix(in srgb, var(--color-surface-offset) 90%, var(--color-comment) 10%);--surface-comment-offset-soft:color-mix(in srgb, var(--color-surface-offset) 88%, var(--color-comment) 12%);--surface-comment-offset-strong:color-mix(in srgb, var(--color-surface-offset) 84%, var(--color-comment) 16%);--surface-comment-offset-active:color-mix(in srgb, var(--color-surface-offset) 72%, var(--color-comment) 28%);--surface-comment-highlight-hover:color-mix(in srgb, var(--color-comment-soft) 74%, var(--color-comment) 26%);--surface-comment-highlight-active:color-mix(in srgb, var(--color-comment-soft) 62%, var(--color-comment) 38%);--surface-comment-selection:color-mix(in srgb, var(--color-surface) 25%, var(--color-comment) 75%);--surface-comment-preview-fade:linear-gradient(180deg, oklch(0% 0 0/0), color-mix(in srgb, var(--color-surface-2) 95%, var(--color-comment) 5%));--border-comment-soft:color-mix(in srgb, var(--color-divider) 90%, var(--color-comment) 10%);--border-comment-muted:color-mix(in srgb, var(--color-divider) 88%, var(--color-comment) 12%);--border-comment-strong:color-mix(in srgb, var(--color-border) 82%, var(--color-comment) 18%);--border-comment-active:color-mix(in srgb, var(--color-border) 78%, var(--color-comment) 22%);--shadow-comment-outline:0 0 0 1px oklch(from var(--color-comment) l c h / .14);--surface-warning-toast:linear-gradient(135deg, oklab(94.9166% -.0018052 .0644112), oklab(99.8777% .00026585 .000908241) 42%), #fff8e7;--border-warning-toast:oklab(73.4461% .062398 .147608);--text-warning-toast:#422006;--shadow-warning-toast:0 16px 30px #542e0a2e, 0 0 0 1px #f59e0b1f;--border-accent-soft:color-mix(in oklab, var(--color-primary) 22%, transparent);--border-accent-muted:color-mix(in oklab, var(--color-primary) 24%, var(--color-border));--border-accent-strong:color-mix(in oklab, var(--color-primary) 34%, var(--color-border));--border-accent-stronger:color-mix(in oklab, var(--color-primary) 40%, var(--color-border));--shadow-accent-inset:inset 0 0 0 1px color-mix(in oklab, var(--color-primary) 14%, transparent);--shadow-accent-outline:0 0 0 1px color-mix(in oklab, var(--color-primary) 16%, transparent);--shadow-accent-halo:0 0 0 3px oklch(from var(--color-primary) l c h / .16);--shadow-accent-ring:0 0 0 2px var(--color-surface), 0 0 0 4px oklch(from var(--color-primary) l c h / .18);--shadow-accent-ring-strong:0 0 0 2px var(--color-bg), 0 0 0 4px oklch(from var(--color-primary) l c h / .45);--shadow-accent-ring-solid:0 0 0 2px var(--color-primary), 0 0 0 4px oklch(from var(--color-primary) l c h / .2);--shadow-elevated-soft:0 10px 24px color-mix(in oklab, var(--color-surface-ink) 10%, transparent);--shadow-floating-soft:0 14px 34px oklch(0% 0 0/.18);--shadow-floating-hover:0 18px 40px oklch(0% 0 0/.2);--shadow-media-soft:0 16px 40px oklch(0% 0 0/.24);--shadow-media-stage:0 28px 80px oklch(0% 0 0/.28);--shadow-media-modal:0 10px 40px #00000059;--shadow-card-strong:0 20px 56px oklch(0% 0 0/.24);--shadow-sheet-inset:inset 0 1px 0 color-mix(in oklab, var(--color-text) 4%, transparent);--shadow-focus:0 0 0 3px oklch(from var(--color-primary) l c h / .15);--shadow-focus-compact:0 0 0 2px oklch(from var(--color-primary) l c h / .45);--interactive-border:color-mix(in oklab, var(--color-primary) 22%, transparent);--interactive-surface:color-mix(in oklab, var(--color-primary) 14%, transparent);--color-text-on-dark:#fff;--shadow-sm:0 1px 2px oklch(20% .02 260/.06);--shadow-md:0 4px 12px oklch(20% .02 260/.08);--shadow-lg:0 12px 32px oklch(20% .02 260/.12)}[data-theme=dark]{--color-bg:#0f1117;--color-surface:#161822;--color-surface-2:#1c1e2c;--color-surface-offset:#1a1c28;--color-surface-offset-2:#22243a;--color-surface-dynamic:#2a2c3e;--color-surface-raised:#202330;--color-surface-ink:#050608;--color-divider:#2e3044;--color-border:#383a50;--color-text:#e2e2ea;--color-text-muted:#8b8ba0;--color-text-faint:#5a5a70;--color-text-inverse:#0f1117;--color-primary:#818cf8;--color-primary-hover:#6366f1;--color-primary-active:#4f46e5;--color-primary-highlight:#1e1e3a;--color-comment:#818cf8;--color-comment-soft:#818cf81a;--color-comment-strong:#818cf829;--color-comment-text:#c7d2fe;--color-error:#f87171;--color-error-highlight:#2a1a1a;--color-success:#4ade80;--color-success-highlight:#1a2a1a;--color-warning:#fbbf24;--color-warning-highlight:#2a261a;--diff-add-bg:#4ade8014;--diff-add-line-bg:#4ade8026;--diff-add-text:#4ade80;--diff-del-bg:#f8717114;--diff-del-line-bg:#f8717126;--diff-del-text:#f87171;--diff-hunk-bg:#818cf81a;--diff-hunk-text:#818cf8;--diff-gutter:#5a5a70;--surface-fill-subtle:color-mix(in oklab, var(--color-surface) 88%, var(--color-surface-offset) 12%);--surface-fill-strong:color-mix(in oklab, var(--color-surface-offset) 60%, var(--color-surface-offset-2) 40%);--surface-overlay:color-mix(in srgb, var(--color-surface) 84%, var(--color-surface-offset) 16%);--surface-overlay-soft:color-mix(in srgb, var(--color-surface) 88%, var(--color-surface-offset) 12%);--surface-overlay-strong:color-mix(in srgb, var(--color-surface) 90%, var(--color-surface-offset) 10%);--surface-overlay-raised:color-mix(in oklab, var(--color-surface) 94%, transparent);--surface-overlay-header:color-mix(in srgb, var(--color-surface-offset) 76%, var(--color-bg) 24%);--surface-overlay-offset:color-mix(in oklab, var(--color-surface-offset) 82%, transparent);--surface-scrim:oklch(10% 0 0/.42);--surface-scrim-strong:oklch(8% .01 260/.82);--surface-inverse-glass:oklch(18% .02 260/.68);--surface-inverse-glass-hover:oklch(24% .02 260/.82);--surface-media-canvas:#000;--surface-embed-canvas:#121212;--surface-avatar-muted:#ffffff38;--surface-avatar-label:#0f1117d6;--surface-accent-subtle:color-mix(in oklab, var(--color-primary) 8%, var(--color-surface));--surface-accent-soft:color-mix(in oklab, var(--color-primary) 16%, transparent);--surface-accent-strong:color-mix(in oklab, var(--color-primary) 22%, transparent);--surface-success-soft:color-mix(in oklab, var(--color-success) 14%, transparent);--surface-warning-soft:color-mix(in oklab, var(--color-warning) 14%, transparent);--surface-danger-soft:color-mix(in oklab, var(--color-error) 14%, transparent);--surface-comment-shell:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .035), transparent 120px), color-mix(in srgb, var(--color-surface) 96%, var(--color-comment) 4%);--surface-comment-shell-header:color-mix(in srgb, var(--color-surface) 97%, var(--color-comment) 3%);--surface-comment-record:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .028), transparent 70%), color-mix(in srgb, var(--color-surface-2) 95%, var(--color-comment) 5%);--surface-comment-record-hover:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .042), transparent 70%), color-mix(in srgb, var(--color-surface-2) 92%, var(--color-comment) 8%);--surface-comment-record-active:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .055), transparent 72%), color-mix(in srgb, var(--color-surface-2) 90%, var(--color-comment) 10%);--surface-comment-subtle:color-mix(in srgb, var(--color-surface-2) 95%, var(--color-comment) 5%);--surface-comment-subtle-strong:color-mix(in srgb, var(--color-surface-2) 92%, var(--color-comment) 8%);--surface-comment-card:color-mix(in srgb, var(--color-surface) 94%, var(--color-comment) 6%);--surface-comment-elevated:color-mix(in srgb, var(--color-surface) 96%, var(--color-comment) 4%);--surface-comment-offset:color-mix(in srgb, var(--color-surface-offset) 90%, var(--color-comment) 10%);--surface-comment-offset-soft:color-mix(in srgb, var(--color-surface-offset) 88%, var(--color-comment) 12%);--surface-comment-offset-strong:color-mix(in srgb, var(--color-surface-offset) 84%, var(--color-comment) 16%);--surface-comment-offset-active:color-mix(in srgb, var(--color-surface-offset) 72%, var(--color-comment) 28%);--surface-comment-highlight-hover:color-mix(in srgb, var(--color-comment-soft) 74%, var(--color-comment) 26%);--surface-comment-highlight-active:color-mix(in srgb, var(--color-comment-soft) 62%, var(--color-comment) 38%);--surface-comment-selection:color-mix(in srgb, var(--color-surface) 25%, var(--color-comment) 75%);--surface-comment-preview-fade:linear-gradient(180deg, oklch(0% 0 0/0), color-mix(in srgb, var(--color-surface-2) 95%, var(--color-comment) 5%));--border-comment-soft:color-mix(in srgb, var(--color-divider) 90%, var(--color-comment) 10%);--border-comment-muted:color-mix(in srgb, var(--color-divider) 88%, var(--color-comment) 12%);--border-comment-strong:color-mix(in srgb, var(--color-border) 82%, var(--color-comment) 18%);--border-comment-active:color-mix(in srgb, var(--color-border) 78%, var(--color-comment) 22%);--shadow-comment-outline:0 0 0 1px oklch(from var(--color-comment) l c h / .14);--surface-warning-toast:linear-gradient(135deg, oklab(76.8591% .0560995 .154808/.32), color-mix(in oklab, var(--color-surface) 86%, #0b1022 14%) 42%), color-mix(in oklab, var(--color-surface) 74%, #1b1320 26%);--border-warning-toast:oklab(79.4887% .0497246 .137216/.88);--text-warning-toast:oklab(99.6952% -.000454402 .00461993);--shadow-warning-toast:0 18px 34px #00000061, 0 0 0 1px oklab(76.8591% .0560995 .154808/.18);--border-accent-soft:color-mix(in oklab, var(--color-primary) 22%, transparent);--border-accent-muted:color-mix(in oklab, var(--color-primary) 24%, var(--color-border));--border-accent-strong:color-mix(in oklab, var(--color-primary) 34%, var(--color-border));--border-accent-stronger:color-mix(in oklab, var(--color-primary) 40%, var(--color-border));--shadow-accent-inset:inset 0 0 0 1px color-mix(in oklab, var(--color-primary) 14%, transparent);--shadow-accent-outline:0 0 0 1px color-mix(in oklab, var(--color-primary) 16%, transparent);--shadow-accent-halo:0 0 0 3px oklch(from var(--color-primary) l c h / .16);--shadow-accent-ring:0 0 0 2px var(--color-surface), 0 0 0 4px oklch(from var(--color-primary) l c h / .18);--shadow-accent-ring-strong:0 0 0 2px var(--color-bg), 0 0 0 4px oklch(from var(--color-primary) l c h / .45);--shadow-accent-ring-solid:0 0 0 2px var(--color-primary), 0 0 0 4px oklch(from var(--color-primary) l c h / .2);--shadow-elevated-soft:0 10px 24px color-mix(in oklab, var(--color-surface-ink) 10%, transparent);--shadow-floating-soft:0 14px 34px oklch(0% 0 0/.18);--shadow-floating-hover:0 18px 40px oklch(0% 0 0/.2);--shadow-media-soft:0 16px 40px oklch(0% 0 0/.24);--shadow-media-stage:0 28px 80px oklch(0% 0 0/.28);--shadow-media-modal:0 16px 48px #0009;--shadow-card-strong:0 20px 56px oklch(0% 0 0/.24);--shadow-sheet-inset:inset 0 1px 0 color-mix(in oklab, var(--color-text) 4%, transparent);--shadow-focus:0 0 0 3px oklch(from var(--color-primary) l c h / .15);--shadow-focus-compact:0 0 0 2px oklch(from var(--color-primary) l c h / .45);--interactive-border:color-mix(in oklab, var(--color-primary) 32%, transparent);--interactive-surface:color-mix(in oklab, var(--color-primary) 18%, transparent);--color-text-on-dark:#fff;--shadow-sm:0 1px 2px oklch(0% 0 0/.25);--shadow-md:0 4px 12px oklch(0% 0 0/.35);--shadow-lg:0 12px 32px oklch(0% 0 0/.5)}@media (prefers-color-scheme:dark){:root:not([data-theme]){--color-bg:#0f1117;--color-surface:#161822;--color-surface-2:#1c1e2c;--color-surface-offset:#1a1c28;--color-surface-offset-2:#22243a;--color-surface-dynamic:#2a2c3e;--color-surface-raised:#202330;--color-surface-ink:#050608;--color-divider:#2e3044;--color-border:#383a50;--color-text:#e2e2ea;--color-text-muted:#8b8ba0;--color-text-faint:#5a5a70;--color-text-inverse:#0f1117;--color-primary:#818cf8;--color-primary-hover:#6366f1;--color-primary-active:#4f46e5;--color-primary-highlight:#1e1e3a;--color-comment:#818cf8;--color-comment-soft:#818cf81a;--color-comment-strong:#818cf829;--color-comment-text:#c7d2fe;--color-error:#f87171;--color-error-highlight:#2a1a1a;--color-success:#4ade80;--color-success-highlight:#1a2a1a;--color-warning:#fbbf24;--color-warning-highlight:#2a261a;--surface-fill-subtle:color-mix(in oklab, var(--color-surface) 88%, var(--color-surface-offset) 12%);--surface-fill-strong:color-mix(in oklab, var(--color-surface-offset) 60%, var(--color-surface-offset-2) 40%);--surface-overlay:color-mix(in srgb, var(--color-surface) 84%, var(--color-surface-offset) 16%);--surface-overlay-soft:color-mix(in srgb, var(--color-surface) 88%, var(--color-surface-offset) 12%);--surface-overlay-strong:color-mix(in srgb, var(--color-surface) 90%, var(--color-surface-offset) 10%);--surface-overlay-raised:color-mix(in oklab, var(--color-surface) 94%, transparent);--surface-overlay-header:color-mix(in srgb, var(--color-surface-offset) 76%, var(--color-bg) 24%);--surface-overlay-offset:color-mix(in oklab, var(--color-surface-offset) 82%, transparent);--surface-scrim:oklch(10% 0 0/.42);--surface-scrim-strong:oklch(8% .01 260/.82);--surface-inverse-glass:oklch(18% .02 260/.68);--surface-inverse-glass-hover:oklch(24% .02 260/.82);--surface-media-canvas:#000;--surface-embed-canvas:#121212;--surface-avatar-muted:#ffffff38;--surface-avatar-label:#0f1117d6;--surface-accent-subtle:color-mix(in oklab, var(--color-primary) 8%, var(--color-surface));--surface-accent-soft:color-mix(in oklab, var(--color-primary) 16%, transparent);--surface-accent-strong:color-mix(in oklab, var(--color-primary) 22%, transparent);--surface-success-soft:color-mix(in oklab, var(--color-success) 14%, transparent);--surface-warning-soft:color-mix(in oklab, var(--color-warning) 14%, transparent);--surface-danger-soft:color-mix(in oklab, var(--color-error) 14%, transparent);--surface-comment-shell:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .035), transparent 120px), color-mix(in srgb, var(--color-surface) 96%, var(--color-comment) 4%);--surface-comment-shell-header:color-mix(in srgb, var(--color-surface) 97%, var(--color-comment) 3%);--surface-comment-record:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .028), transparent 70%), color-mix(in srgb, var(--color-surface-2) 95%, var(--color-comment) 5%);--surface-comment-record-hover:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .042), transparent 70%), color-mix(in srgb, var(--color-surface-2) 92%, var(--color-comment) 8%);--surface-comment-record-active:linear-gradient(180deg, oklch(from var(--color-comment) l c h / .055), transparent 72%), color-mix(in srgb, var(--color-surface-2) 90%, var(--color-comment) 10%);--surface-comment-subtle:color-mix(in srgb, var(--color-surface-2) 95%, var(--color-comment) 5%);--surface-comment-subtle-strong:color-mix(in srgb, var(--color-surface-2) 92%, var(--color-comment) 8%);--surface-comment-card:color-mix(in srgb, var(--color-surface) 94%, var(--color-comment) 6%);--surface-comment-elevated:color-mix(in srgb, var(--color-surface) 96%, var(--color-comment) 4%);--surface-comment-offset:color-mix(in srgb, var(--color-surface-offset) 90%, var(--color-comment) 10%);--surface-comment-offset-soft:color-mix(in srgb, var(--color-surface-offset) 88%, var(--color-comment) 12%);--surface-comment-offset-strong:color-mix(in srgb, var(--color-surface-offset) 84%, var(--color-comment) 16%);--surface-comment-offset-active:color-mix(in srgb, var(--color-surface-offset) 72%, var(--color-comment) 28%);--surface-comment-highlight-hover:color-mix(in srgb, var(--color-comment-soft) 74%, var(--color-comment) 26%);--surface-comment-highlight-active:color-mix(in srgb, var(--color-comment-soft) 62%, var(--color-comment) 38%);--surface-comment-selection:color-mix(in srgb, var(--color-surface) 25%, var(--color-comment) 75%);--surface-comment-preview-fade:linear-gradient(180deg, oklch(0% 0 0/0), color-mix(in srgb, var(--color-surface-2) 95%, var(--color-comment) 5%));--border-comment-soft:color-mix(in srgb, var(--color-divider) 90%, var(--color-comment) 10%);--border-comment-muted:color-mix(in srgb, var(--color-divider) 88%, var(--color-comment) 12%);--border-comment-strong:color-mix(in srgb, var(--color-border) 82%, var(--color-comment) 18%);--border-comment-active:color-mix(in srgb, var(--color-border) 78%, var(--color-comment) 22%);--shadow-comment-outline:0 0 0 1px oklch(from var(--color-comment) l c h / .14);--surface-warning-toast:linear-gradient(135deg, oklab(76.8591% .0560995 .154808/.32), color-mix(in oklab, var(--color-surface) 86%, #0b1022 14%) 42%), color-mix(in oklab, var(--color-surface) 74%, #1b1320 26%);--border-warning-toast:oklab(79.4887% .0497246 .137216/.88);--text-warning-toast:oklab(99.6952% -.000454402 .00461993);--shadow-warning-toast:0 18px 34px #00000061, 0 0 0 1px oklab(76.8591% .0560995 .154808/.18);--border-accent-soft:color-mix(in oklab, var(--color-primary) 22%, transparent);--border-accent-muted:color-mix(in oklab, var(--color-primary) 24%, var(--color-border));--border-accent-strong:color-mix(in oklab, var(--color-primary) 34%, var(--color-border));--border-accent-stronger:color-mix(in oklab, var(--color-primary) 40%, var(--color-border));--shadow-accent-inset:inset 0 0 0 1px color-mix(in oklab, var(--color-primary) 14%, transparent);--shadow-accent-outline:0 0 0 1px color-mix(in oklab, var(--color-primary) 16%, transparent);--shadow-accent-halo:0 0 0 3px oklch(from var(--color-primary) l c h / .16);--shadow-accent-ring:0 0 0 2px var(--color-surface), 0 0 0 4px oklch(from var(--color-primary) l c h / .18);--shadow-accent-ring-strong:0 0 0 2px var(--color-bg), 0 0 0 4px oklch(from var(--color-primary) l c h / .45);--shadow-accent-ring-solid:0 0 0 2px var(--color-primary), 0 0 0 4px oklch(from var(--color-primary) l c h / .2);--shadow-elevated-soft:0 10px 24px color-mix(in oklab, var(--color-surface-ink) 10%, transparent);--shadow-floating-soft:0 14px 34px oklch(0% 0 0/.18);--shadow-floating-hover:0 18px 40px oklch(0% 0 0/.2);--shadow-media-soft:0 16px 40px oklch(0% 0 0/.24);--shadow-media-stage:0 28px 80px oklch(0% 0 0/.28);--shadow-media-modal:0 16px 48px #0009;--shadow-card-strong:0 20px 56px oklch(0% 0 0/.24);--shadow-sheet-inset:inset 0 1px 0 color-mix(in oklab, var(--color-text) 4%, transparent);--shadow-focus:0 0 0 3px oklch(from var(--color-primary) l c h / .15);--shadow-focus-compact:0 0 0 2px oklch(from var(--color-primary) l c h / .45);--interactive-border:color-mix(in oklab, var(--color-primary) 32%, transparent);--interactive-surface:color-mix(in oklab, var(--color-primary) 18%, transparent);--color-text-on-dark:#fff;--shadow-sm:0 1px 2px oklch(0% 0 0/.25);--shadow-md:0 4px 12px oklch(0% 0 0/.35);--shadow-lg:0 12px 32px oklch(0% 0 0/.5)}}.hidden,.u-hidden,html[data-initial-file-requested=true] .empty-state{display:none!important}html[data-initial-file-requested=true] .editor-page.hidden{display:flex!important}.skip-link{top:var(--space-2);left:var(--space-2);z-index:1000;width:auto;height:auto;padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);background:var(--color-primary);color:var(--color-text-inverse);clip:rect(0, 0, 0, 0);transform:translateY(calc(-100% - var(--space-2)));transition:transform var(--transition-interactive);position:fixed}.skip-link:focus,.skip-link:focus-visible{clip:auto;transform:translateY(0)}.ui-button,.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:var(--control-h-md);padding:0 var(--space-4);border-radius:var(--radius-md);font-size:var(--text-sm);white-space:nowrap;transition:transform var(--transition-interactive), background var(--transition-interactive), color var(--transition-interactive), border-color var(--transition-interactive), box-shadow var(--transition-interactive);border:1px solid #0000;font-weight:500;text-decoration:none;display:inline-flex}.ui-button:active,.btn:active{transform:scale(.97)}.ui-button--primary,.btn-primary{background:var(--color-primary);color:var(--color-text-inverse)}.ui-button--primary:hover,.btn-primary:hover{background:var(--color-primary-hover)}.ui-button--secondary,.btn-secondary{background:var(--color-surface-2);color:var(--color-text);border-color:var(--color-border)}.ui-button--secondary:hover,.btn-secondary:hover{background:var(--color-surface-dynamic)}.ui-button--danger,.btn-danger{background:var(--color-error);color:var(--color-text-inverse)}.ui-button--danger:hover,.btn-danger:hover{filter:brightness(.95)}.ui-button--ghost,.btn-ghost{color:var(--color-text-muted);background:0 0}.ui-button--ghost:hover,.btn-ghost:hover{background:var(--color-surface-offset);color:var(--color-text)}.ui-button--lg,.btn-lg{min-height:var(--control-h-lg);padding:0 var(--space-6);font-weight:600}.ui-button--compact,.btn-compact{min-height:var(--control-h-xs);gap:var(--space-1);padding:0 var(--space-2);border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:600}.ui-button--toggle.active,.ui-button--toggle.is-active,.ui-button--toggle[aria-pressed=true],.ui-button--toggle[aria-selected=true]{border-color:var(--interactive-border);background:var(--interactive-surface);color:var(--color-primary)}.ui-icon-button{width:var(--control-h-xs);min-width:var(--control-h-xs);height:var(--control-h-xs);border-radius:var(--radius-sm);color:var(--color-text-muted);transition:transform var(--transition-interactive), background var(--transition-interactive), color var(--transition-interactive), border-color var(--transition-interactive);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;padding:0;display:inline-flex}.ui-icon-button:hover{background:var(--color-surface-offset);color:var(--color-text)}.ui-icon-button--toolbar{width:28px;min-width:28px;height:28px}.ui-pill-button{border-radius:var(--radius-full)}.ui-segmented-control{border-radius:var(--radius-md);background:var(--color-surface-offset);gap:2px;padding:2px;display:inline-flex}.ui-segmented-control--pill{border-radius:var(--radius-full);padding:3px}.ui-segmented-btn{min-width:32px;min-height:var(--control-h-xs);padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--color-text-faint);white-space:nowrap;transition:transform var(--transition-interactive), background var(--transition-interactive), color var(--transition-interactive), border-color var(--transition-interactive), box-shadow var(--transition-interactive);font-size:var(--text-xs);background:0 0;border:1px solid #0000;justify-content:center;align-items:center;font-weight:600;display:inline-flex}.ui-segmented-control--pill .ui-segmented-btn{border-radius:var(--radius-full)}.ui-segmented-btn:hover{color:var(--color-text-muted)}.ui-segmented-btn.active,.ui-segmented-btn.is-active,.ui-segmented-btn[aria-pressed=true],.ui-segmented-btn[aria-selected=true]{background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-sm)}.ui-button:disabled,.btn:disabled,.ui-icon-button:disabled,.ui-segmented-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.ui-input,.input{width:100%;min-height:var(--control-h-md);padding:0 var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);font-size:var(--text-sm);transition:border-color var(--transition-interactive), box-shadow var(--transition-interactive)}.ui-input:focus,.input:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus);outline:none}.ui-input::placeholder,.input::placeholder{color:var(--color-text-faint)}.ui-badge{border-radius:var(--radius-full);min-height:20px;font-size:var(--text-meta);justify-content:center;align-items:center;padding:0 8px;font-weight:600;display:inline-flex}.ui-pill{align-items:center;gap:var(--space-1);border-radius:var(--radius-full);background:var(--surface-fill-strong);min-height:20px;color:var(--color-text-muted);font-size:var(--text-meta);padding:0 8px;display:inline-flex}.ui-panel{border:var(--panel-border-width) solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-md)}.ui-toolbar-group{align-items:center;gap:var(--space-2);display:inline-flex}.ui-list-item{border-radius:var(--radius-md);border:var(--panel-border-width) solid var(--color-border);background:var(--surface-fill-subtle)}.ui-floating-dock{border:var(--panel-border-width) solid var(--color-divider);border-radius:calc(var(--radius-lg) + 2px);background:var(--surface-overlay);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.ui-dialog-surface{border:var(--panel-border-width) solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-lg)}.editor-loading{gap:var(--space-2);height:100%;padding:var(--space-6) var(--space-8);flex-direction:column;display:flex}.editor-loading.hidden{display:none}.skeleton-line{border-radius:var(--radius-xs);background:var(--color-surface-offset);height:16px;animation:1.5s ease-in-out infinite pulse-skeleton}.skeleton-line--title{width:40%;height:32px}.skeleton-line--full{width:100%}.skeleton-line--ninety{width:90%}.skeleton-line--ninety-five{width:95%}.skeleton-line--eighty{width:80%}.skeleton-line--eighty-five{width:85%}.skeleton-line--break{margin-bottom:24px}@keyframes pulse-skeleton{0%{opacity:.6}50%{opacity:.3}to{opacity:.6}}.file-context-menu{z-index:1000;min-width:120px;padding:var(--space-1);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-md);transform-origin:0 0;opacity:1;transition:opacity .15s cubic-bezier(.16,1,.3,1),transform .15s cubic-bezier(.16,1,.3,1);position:fixed;transform:scale(1)}@starting-style{.file-context-menu{opacity:0;transform:scale(.9)}}.file-context-item{width:100%;padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);color:var(--color-text);text-align:left;cursor:pointer;transition:background var(--transition-interactive);font-family:var(--font-body);font-size:var(--text-ui-sm);background:0 0;border:none;display:block}.file-context-item:hover{background:var(--color-surface-offset)}.file-context-danger{color:var(--color-error)}.wiki-link{color:var(--color-primary);text-underline-offset:2px;cursor:pointer;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}.wiki-link:hover{text-decoration-style:solid}.wiki-link-new{color:var(--color-text-muted);opacity:.7;text-decoration-style:dashed}.wiki-link-new:hover{color:var(--color-primary);opacity:1;text-decoration-style:dashed}.sidebar{border-right:1px solid var(--color-divider);background:var(--color-surface);flex-direction:column;width:260px;min-width:260px;max-width:260px;transition:width .18s cubic-bezier(.16,1,.3,1),min-width .18s cubic-bezier(.16,1,.3,1);display:flex;overflow:hidden}.sidebar.collapsed{border-right:none;width:0;min-width:0;overflow:hidden}.sidebar-header{min-height:var(--toolbar-h);justify-content:space-between;align-items:center;gap:var(--space-2);padding:var(--space-3);border-bottom:1px solid var(--color-divider);display:flex}.sidebar-brand{align-items:center;gap:var(--space-2);display:flex}.sidebar-title{white-space:nowrap;font-size:var(--text-sm);letter-spacing:-.02em;font-weight:700}.sidebar-actions{align-items:center;gap:4px;margin-left:auto;display:flex}.sidebar-close-btn{display:none}.sidebar-create-shell{position:relative}.sidebar-create-btn{border-radius:var(--radius-full);min-height:28px;font-size:var(--text-xs);padding:0 10px 0 8px;font-weight:600}.sidebar-create-btn[aria-expanded=true]{border-color:var(--interactive-border);background:var(--interactive-surface);color:var(--color-primary)}.sidebar-create-btn-label{white-space:nowrap}.sidebar-search{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-divider)}.sidebar-search-input{width:100%;padding:var(--space-1) var(--space-2);border-radius:var(--radius-sm);background:var(--color-surface-offset);color:var(--color-text);transition:border-color var(--transition-interactive);font-size:var(--text-xs);border:1px solid #0000;outline:none}.sidebar-search-input::placeholder{color:var(--color-text-faint)}.sidebar-search-input:focus{border-color:var(--color-primary)}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.file-tree{padding:var(--space-2) 0;flex:1;overflow:hidden auto}.file-tree-empty{padding:var(--space-4) var(--space-3);color:var(--color-text-faint);text-align:center;font-size:var(--text-xs)}.file-tree-item{align-items:center;gap:var(--space-1);width:100%;padding-top:4px;padding-bottom:4px;padding-right:8px;padding-left:calc(8px + var(--depth,0) * 16px);color:var(--color-text-muted);text-align:left;cursor:pointer;-webkit-user-select:none;user-select:none;text-overflow:ellipsis;transition:background var(--transition-interactive), color var(--transition-interactive);font-family:var(--font-body);font-size:var(--text-ui-sm);background:0 0;border:none;border-radius:0;display:flex;position:relative;overflow:hidden}.file-tree-item:not([data-depth="0"]):before{content:"";top:0;bottom:0;left:calc(8px + (var(--depth,1) - 1) * 16px + 6px);background-color:var(--color-border);opacity:.3;width:1px;position:absolute}.file-tree-file{padding-left:calc(8px + var(--depth,0) * 16px + 18px)}.file-tree-item:hover{background:var(--color-surface-offset);color:var(--color-text)}.file-tree-file.active{background:var(--color-primary-highlight);color:var(--color-primary)}.file-tree-chevron{flex-shrink:0;transition:transform .2s cubic-bezier(.16,1,.3,1)}.file-tree-chevron.expanded{transform:rotate(90deg)}.file-tree-icon{opacity:.5;flex-shrink:0}.file-tree-name{text-overflow:ellipsis;overflow:hidden}.file-action-sheet-backdrop{z-index:130;background:oklch(from var(--color-bg) l c h / .44);position:fixed;inset:0}.file-action-sheet{right:var(--space-3);bottom:calc(var(--space-3) + env(safe-area-inset-bottom,0px));left:var(--space-3);z-index:131;border:1px solid var(--color-border);border-radius:calc(var(--radius-xl) + 2px);background:oklch(from var(--color-surface) l c h / .98);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);flex-direction:column;gap:4px;padding:12px;display:flex;position:fixed}.file-action-sheet-item{justify-content:flex-start;width:100%}.file-action-sheet-item.file-context-danger{color:var(--color-danger)}.create-menu{z-index:1010;width:min(280px,100vw - 16px);padding:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:oklch(from var(--color-surface) l c h / .98);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);position:fixed}.create-menu-group,.create-action-sheet-group,.create-action-sheet-header{padding:0 var(--space-2);color:var(--color-text-faint);font-size:var(--text-meta);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.create-menu-group:not(:first-child),.create-action-sheet-group:not(:first-child){margin-top:8px}.create-action-sheet-header{padding:0 var(--space-2) 4px}.create-menu-item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2);border-radius:var(--radius-md);color:var(--color-text);text-align:left;cursor:pointer;transition:background var(--transition-interactive), color var(--transition-interactive);background:0 0;border:none;margin-top:2px;display:flex}.create-menu-item:hover,.create-menu-item:focus-visible{background:var(--color-surface-offset);color:var(--color-text);outline:none}.create-menu-item-icon{width:18px;min-width:18px;color:var(--color-text-muted);justify-content:center;align-items:center;display:inline-flex}.create-menu-item-copy{gap:2px;min-width:0;display:grid}.create-menu-item-label{font-size:var(--text-sm);font-weight:600}.create-menu-item-meta{color:var(--color-text-muted);font-size:var(--text-meta)}.create-action-sheet-item{justify-content:flex-start;min-height:44px}.create-action-sheet-option{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:linear-gradient(180deg, oklch(from var(--color-surface-offset) calc(l + .02) c h / .9), var(--color-surface-offset)), var(--color-surface-offset);min-height:60px;color:var(--color-text);box-shadow:inset 0 1px 0 oklch(from var(--color-text) l c h / .03), 0 10px 24px oklch(from var(--color-bg) l c h / .08);transition:border-color var(--transition-interactive), background var(--transition-interactive), box-shadow var(--transition-interactive), transform var(--transition-interactive);gap:10px;padding:0 14px}.create-action-sheet-option:hover,.create-action-sheet-option:focus-visible{border-color:oklch(from var(--color-primary) calc(l + .06) c h / .4);background:linear-gradient(180deg, oklch(from var(--color-primary-highlight) calc(l + .02) c h / .72), var(--color-surface-offset)), var(--color-surface-offset);box-shadow:inset 0 1px 0 oklch(from var(--color-text) l c h / .04), 0 14px 30px oklch(from var(--color-bg) l c h / .12);color:var(--color-text);outline:none;transform:translateY(-1px)}.create-action-sheet-option .create-menu-item-icon{border-radius:var(--radius-sm);background:oklch(from var(--color-surface) calc(l + .03) c h / .78);width:28px;min-width:28px;height:28px;color:var(--color-primary)}.create-action-sheet-option .create-menu-item-copy{text-align:left;flex:1;justify-items:start;gap:2px}.create-action-sheet-option .create-menu-item-label{font-size:var(--text-sm);letter-spacing:-.02em;font-weight:700}.create-action-sheet-option .create-menu-item-meta{font-size:var(--text-meta);letter-spacing:.02em;justify-self:start;font-weight:600}.create-action-sheet-group{padding-top:4px}.create-action-sheet-cancel{min-height:36px;padding:0 var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm);align-self:flex-start;font-weight:600}.create-action-sheet-cancel:hover,.create-action-sheet-cancel:focus-visible{color:var(--color-text);outline:none}.empty-state{padding:var(--space-8);flex:1;justify-content:center;align-items:center;display:flex}.empty-state-content{align-items:center;gap:var(--space-2);text-align:center;flex-direction:column;max-width:320px;display:flex}.empty-state-logo{width:80px;height:80px;margin-bottom:var(--space-2);border:1px solid var(--border-accent-soft);border-radius:calc(var(--radius-xl-plus) + var(--radius-sm));background:radial-gradient(circle at top, var(--interactive-border), transparent 70%), linear-gradient(180deg, var(--surface-overlay-raised), var(--surface-overlay-soft));box-shadow:var(--shadow-floating-soft), var(--shadow-sheet-inset);justify-content:center;align-items:center;display:inline-flex}.empty-state-logo svg{opacity:.72;display:block}.empty-state-title{font-size:var(--text-lg);letter-spacing:-.02em;margin:0;font-weight:600}.empty-state-desc{color:var(--color-text-muted);font-size:var(--text-sm);margin:0;line-height:1.5}.empty-state-actions{gap:var(--space-3);width:100%;margin-top:var(--space-4);flex-direction:column;display:flex}.empty-state-btn{padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);background:var(--color-surface-offset);color:var(--color-text);box-shadow:var(--shadow-sm);font-size:var(--text-sm);justify-content:flex-start}.empty-state-btn:hover{border-color:var(--color-text-faint);background:var(--color-surface-offset-2)}.empty-state-kbd{border:1px solid var(--color-divider);border-radius:var(--radius-xs);background:var(--color-surface);color:var(--color-text-muted);font-family:var(--font-mono);margin-left:auto;padding:2px 6px;font-size:.75rem}.editor-page,.diff-page{flex-direction:column;flex:1;display:flex;overflow:hidden}.toolbar{z-index:10;height:var(--toolbar-h);justify-content:space-between;align-items:center;gap:var(--space-2);padding:0 var(--space-3);border-bottom:1px solid var(--color-divider);background:var(--color-surface);flex-shrink:0;display:flex}.toolbar-left,.toolbar-right{align-items:center;gap:var(--space-2);display:flex}.toolbar-left{flex:1;min-width:0}.toolbar-right{flex-shrink:0;position:relative}.toolbar-presence-cluster{flex-shrink:0}.toolbar-logo{padding:var(--space-1);border-radius:var(--radius-sm);transition:background var(--transition-interactive);flex-shrink:0;align-items:center;display:flex}.toolbar-logo:hover{background:var(--color-surface-offset)}.toolbar-room-info{align-items:center;gap:var(--space-2);min-width:0;display:flex}.toolbar-room-name{text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-sm);font-weight:600;overflow:hidden}.toolbar-badge{white-space:nowrap;flex-shrink:0}.toolbar-center{flex-shrink:0}.toolbar-overflow-toggle{display:none}.toolbar-overflow-menu{align-items:center;gap:var(--space-2);display:flex}.diff-mode-toggle,.diff-layout-toggle{padding:3px}.diff-mode-btn,.diff-layout-btn{width:auto;height:28px;padding:0 var(--space-3);font-size:var(--text-label);font-weight:600}.diff-mode-btn{min-width:72px}.diff-layout-btn{min-width:82px}.markdown-toolbar{border-bottom:1px solid var(--color-divider);background:var(--color-surface);flex-shrink:0;align-items:center;gap:2px;min-height:36px;padding:2px 6px;display:flex}.markdown-toolbar-group,.markdown-toolbar-block-menu-shell{flex-shrink:0;align-items:center;gap:1px;display:inline-flex;position:relative}.markdown-toolbar-group{border-left:1px solid var(--color-divider);margin-left:4px;padding-left:8px}.markdown-toolbar-block-trigger{border-radius:var(--radius-sm);white-space:nowrap;align-items:center;gap:2px;min-height:28px;padding:0 8px;display:inline-flex}.markdown-toolbar-block-trigger-label{font-size:11px;font-weight:700;line-height:1}.markdown-toolbar-block-trigger-icon{color:var(--color-text-faint);display:inline-flex;transform:scale(.9)}.markdown-toolbar.is-menu-open .markdown-toolbar-block-trigger{background:var(--color-surface-offset);color:var(--color-text)}.markdown-toolbar-popover{z-index:12;min-width:176px;position:absolute}.markdown-toolbar-menu{border:1px solid var(--color-border);border-radius:var(--radius-md);background:oklch(from var(--color-surface) l c h / .98);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);padding:3px;display:grid}.markdown-toolbar-menu-item{align-items:center;gap:var(--space-2);border-radius:var(--radius-sm);width:100%;min-height:30px;color:var(--color-text);text-align:left;cursor:pointer;transition:background var(--transition-interactive), color var(--transition-interactive);background:0 0;border:none;grid-template-columns:1fr auto;padding:0 10px;display:grid}.markdown-toolbar-menu-item:hover,.markdown-toolbar-menu-item:focus-visible,.markdown-toolbar-menu-item.is-active{background:var(--color-surface-offset);outline:none}.markdown-toolbar-menu-item-label{font-size:var(--text-ui-sm);font-weight:600}.markdown-toolbar-menu-item-shortcut{color:var(--color-text-faint);font-size:var(--text-xs);font-weight:700}.app-shell{height:100dvh;display:flex;overflow:hidden}.main-area{flex-direction:column;flex:1;min-width:0;display:flex;overflow:hidden}.editor-layout{flex:1;display:flex;position:relative;overflow:hidden}.editor-pane,.preview-pane{flex-direction:column;flex:1;min-width:200px;display:flex;overflow:hidden}.pane-header{height:28px;padding:var(--space-1) var(--space-3);border-bottom:1px solid var(--color-divider);background:var(--color-surface-offset);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.pane-header-actions{align-items:center;gap:var(--space-1);display:flex}.pane-header-meta{align-items:baseline;gap:var(--space-3);min-width:0;display:flex}.pane-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;font-size:var(--text-meta);font-weight:500}.pane-label-meta{color:var(--color-text-muted);font-family:var(--font-mono);font-size:var(--text-meta)}.resizer{z-index:5;background:var(--color-divider);cursor:col-resize;width:4px;transition:background var(--transition-interactive);flex-shrink:0;position:relative}.resizer:hover,.resizer.dragging{background:var(--color-primary)}.resizer:after{content:"";position:absolute;inset:0 -6px}.editor-container{background:var(--color-bg);flex:1;position:relative;overflow:hidden}.editor-container>.editor-loading{z-index:2;background:var(--color-bg);position:absolute;inset:0}.editor-container.is-loading-editor .cm-editor{visibility:hidden}.editor-container .cm-editor{height:100%;font-family:var(--font-mono);font-size:var(--text-ui-md)}.editor-container .cm-editor .cm-scroller{font-family:var(--font-mono);overflow:auto}.editor-container .cm-editor.cm-focused{outline:none}.cm-editor .cm-ySelectionInfo{z-index:10;border-radius:var(--radius-2xs) var(--radius-2xs) var(--radius-2xs) 0;opacity:1;white-space:nowrap;font-family:var(--font-body);font-size:var(--text-meta);padding:1px 4px;font-weight:600;transition:opacity .3s;position:absolute;top:-1.2em;left:-1px}.preview-body{--preview-floating-sidebar-gap:var(--space-3);--preview-floating-comments-width:var(--panel-comments-width);--preview-floating-outline-width:var(--panel-outline-width);--preview-content-max-width:var(--preview-content-width);--preview-comment-rail-inset:10px;flex:1;min-height:0;display:flex;position:relative;overflow:hidden}.preview-container{background:var(--color-bg);overscroll-behavior:contain;flex:1;min-width:0;overflow:hidden auto}.preview-content{--preview-comment-rail-reserved:0px;--preview-comment-rail-offset:0px;min-width:0;max-width:var(--preview-content-max-width);padding:var(--space-6) calc(var(--space-6) + var(--preview-comment-rail-reserved)) var(--space-12) var(--space-6);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-sm);margin:0 auto;line-height:1.7;position:relative;overflow:visible}.preview-content[data-render-phase=shell]{color:var(--color-text-muted)}@media (width>=769px){.preview-content{padding-bottom:calc(var(--space-12) + 96px)}}.preview-content.is-excalidraw-file-preview{box-sizing:border-box;width:100%;max-width:none;height:100%;min-height:100%;padding:var(--space-3);margin:0;display:flex;position:relative}.preview-content.is-image-file-preview{box-sizing:border-box;width:100%;max-width:none;min-height:100%;padding:var(--space-4);margin:0;display:flex;position:relative}.preview-content.is-plantuml-file-preview,.preview-content.is-mermaid-file-preview{width:100%;max-width:none;min-height:100%}.preview-content.is-drawio-file-preview{box-sizing:border-box;width:100%;max-width:none;height:100%;min-height:100%;padding:var(--space-3);margin:0;display:flex;position:relative}.preview-content.is-mermaid-file-preview [data-preview-render-host=true],.preview-content.is-plantuml-file-preview [data-preview-render-host=true]{min-height:100%}.preview-content.is-drawio-file-preview [data-preview-render-host=true],.preview-content.is-excalidraw-file-preview [data-preview-render-host=true],.preview-content.is-image-file-preview [data-preview-render-host=true]{flex:1;width:100%;min-width:0;max-width:none;min-height:100%;display:flex}.image-file-preview-shell{justify-content:center;align-items:center;width:100%;min-height:100%;margin:0;display:flex}.image-file-preview-image{object-fit:contain;border-radius:var(--radius-lg);background:var(--color-surface);max-width:min(100%,1200px);max-height:calc(100vh - 180px);box-shadow:var(--shadow-lg)}.preview-content.is-mermaid-file-preview .mermaid-shell,.preview-content.is-plantuml-file-preview .plantuml-shell{min-height:100%;margin:0}.preview-content.is-drawio-file-preview .drawio-embed,.preview-content.is-drawio-file-preview .drawio-embed-placeholder{width:100%;min-height:100%;margin:0}.preview-content.is-drawio-file-preview .drawio-embed{flex-direction:column;width:100%;height:100%;display:flex}.preview-content.is-drawio-file-preview .drawio-embed-placeholder,.preview-content.is-drawio-file-preview .preview-shell{width:100%;min-height:100%}.preview-content.is-drawio-file-preview .drawio-embed-iframe{flex:1;height:100%;min-height:0}.preview-content.is-excalidraw-file-preview .excalidraw-embed,.preview-content.is-excalidraw-file-preview .excalidraw-embed-placeholder{width:100%;min-height:100%;margin:0}.preview-content.is-excalidraw-file-preview .excalidraw-embed{flex-direction:column;height:100%;display:flex}.preview-content.is-excalidraw-file-preview .excalidraw-embed-placeholder{align-items:stretch;display:flex}.preview-content.is-excalidraw-file-preview .preview-shell{width:100%;min-height:100%}.preview-content.is-excalidraw-file-preview .excalidraw-embed-iframe{flex:1;min-height:0;height:100%!important}.preview-content.is-excalidraw-file-preview .excalidraw-embed-resizer{display:none}.preview-content.is-excalidraw-file-preview .excalidraw-embed.is-maximized{inset:var(--space-3);z-index:2;box-sizing:border-box;max-width:calc(100% - (var(--space-3) * 2));margin:0;position:absolute}.preview-content.is-excalidraw-file-preview .excalidraw-embed.is-maximized .excalidraw-embed-iframe{height:100%!important}.preview-shell{min-height:60vh;color:var(--color-text-muted);font-size:var(--text-sm);justify-content:center;align-items:center;display:flex}.ui-toolbar-button{align-items:center;gap:var(--space-1);padding:var(--space-1) var(--space-2);border-radius:var(--radius-md);font-size:var(--text-xs);display:flex}.ui-toolbar-button-label,.ui-action-label{font-size:var(--text-xs)}.ui-toolbar-button--name{max-width:132px}.ui-toolbar-button-text{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.toolbar-theme-icon{flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.toolbar-theme-button{justify-content:center;width:32px;min-width:32px;padding:0;overflow:hidden}.toolbar-theme-button .ui-toolbar-button-label{display:none!important}.toolbar-theme-button .toolbar-theme-state{margin-left:auto;display:none!important}.ui-nav-tabs{padding:0 var(--space-2);border-bottom:1px solid var(--color-divider);display:flex}.ui-nav-tab{padding:var(--space-2) var(--space-3);color:var(--color-text-muted);transition:all var(--transition-interactive);font-size:var(--text-xs);border-bottom:2px solid #0000;flex:1;justify-content:center;align-items:center;gap:6px;font-weight:500;display:inline-flex;position:relative}.ui-nav-tab.has-changes:after{content:"";background-color:var(--color-success);border-radius:50%;width:6px;height:6px;animation:2s cubic-bezier(.4,0,.6,1) infinite pulse-dot;position:absolute;top:8px;right:12px}.ui-nav-tab:hover{background:var(--color-surface-offset);color:var(--color-text)}.ui-nav-tab.active{border-bottom-color:var(--color-primary);color:var(--color-primary)}.ui-toolbar-action{flex-shrink:0}.ui-action-button{min-height:var(--control-h-md);border-radius:var(--radius-lg-plus);font-size:var(--text-label);white-space:nowrap;padding:0 14px;font-weight:600}.ui-action-button--wide{min-width:92px}.ui-action-button--surface{background:var(--color-surface-offset)}.ui-action-button--surface:hover:not(:disabled){background:var(--color-surface-dynamic)}.ui-action-pill{flex-shrink:0;min-width:0}.ui-action-pill--surface{background:var(--color-surface-offset)}.ui-action-pill--surface:hover:not(:disabled){background:var(--color-surface-dynamic)}.ui-action-icon{flex-shrink:0}.ui-action-icon--surface{background:var(--surface-overlay-offset)}.ui-preview-action{border:1px solid var(--color-border);border-radius:var(--radius-xs);background:var(--color-surface-2);color:var(--color-text);box-shadow:inset 0 1px 0 oklch(from var(--color-text) l c h / .04);font-size:var(--text-xs);cursor:pointer;transition:background var(--transition-interactive), color var(--transition-interactive), border-color var(--transition-interactive);flex-shrink:0;justify-content:center;align-items:center;padding:2px 8px;display:inline-flex}.ui-preview-action:hover:not(:disabled){background:var(--color-surface-offset);border-color:oklch(from var(--color-border) calc(l + .08) c h)}.ui-preview-action:disabled{opacity:.5;cursor:not-allowed}.ui-preview-action--icon-only{width:30px;min-width:30px;height:30px;padding:0}.ui-preview-action--icon-only svg{width:14px;height:14px;display:block}.ui-record-surface{--ui-record-padding:var(--space-3);--ui-record-gap:var(--space-2);--ui-record-radius:var(--radius-md);--ui-record-border:var(--color-border);--ui-record-bg:var(--color-surface-2);--ui-record-color:var(--color-text-muted);--ui-record-border-hover:var(--ui-record-border);--ui-record-bg-hover:var(--color-surface-offset);--ui-record-shadow:none;--ui-record-shadow-hover:var(--ui-record-shadow);--ui-record-border-active:var(--ui-record-border-hover);--ui-record-bg-active:var(--ui-record-bg-hover);--ui-record-shadow-active:var(--ui-record-shadow-hover);--ui-record-hover-transform:none;appearance:none;gap:var(--ui-record-gap);width:100%;min-width:0;padding:var(--ui-record-padding);border:1px solid var(--ui-record-border);border-radius:var(--ui-record-radius);background:var(--ui-record-bg);color:var(--ui-record-color);text-align:left;box-shadow:var(--ui-record-shadow);transition:transform .14s ease, border-color var(--transition-interactive), background var(--transition-interactive), box-shadow var(--transition-interactive), color var(--transition-interactive);flex-direction:column;display:flex}.ui-record-surface:hover{transform:var(--ui-record-hover-transform);border-color:var(--ui-record-border-hover);background:var(--ui-record-bg-hover);box-shadow:var(--ui-record-shadow-hover);color:var(--color-text)}.ui-record-surface.active,.ui-record-surface.is-active,.ui-record-surface[aria-current=true]{border-color:var(--ui-record-border-active);background:var(--ui-record-bg-active);box-shadow:var(--ui-record-shadow-active);color:var(--color-text)}.ui-record-header,.ui-record-meta{align-items:center;gap:var(--space-2);min-width:0;display:flex}.ui-record-header{justify-content:space-between}.ui-record-meta{color:var(--color-text-faint);flex-wrap:wrap}.ui-record-copy{flex-direction:column;flex:1;min-width:0;display:flex}.ui-record-title{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.ui-record-subtitle{color:var(--color-text-faint);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ui-record-actions{align-items:center;gap:var(--space-1);flex-wrap:wrap;display:inline-flex}.ui-item-row{--ui-item-row-bg-hover:var(--color-surface-offset);--ui-item-row-bg-active:var(--color-primary-highlight);align-items:center;gap:var(--space-2);border-radius:var(--radius-md);transition:background var(--transition-interactive), color var(--transition-interactive);padding:2px;display:flex}.ui-item-row:hover{background:var(--ui-item-row-bg-hover)}.ui-item-row.active,.ui-item-row.is-active{background:var(--ui-item-row-bg-active)}.ui-item-main{align-items:center;gap:var(--space-2);flex:1;min-width:0;display:flex}.ui-item-copy{flex-direction:column;flex:1;min-width:0;display:flex}.ui-item-title{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ui-item-subtitle{color:var(--color-text-faint);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ui-item-actions{flex-wrap:wrap;flex-shrink:0;align-items:center;gap:4px;display:inline-flex}.ui-pill-badge{min-height:20px;padding:2px var(--space-2);border-radius:var(--radius-full);white-space:nowrap;font-size:var(--text-meta);justify-content:center;align-items:center;font-weight:600;display:inline-flex}.ui-pill-badge--count{min-width:20px;padding-inline:6px}.ui-pill-badge--accent{background:var(--color-primary-highlight);color:var(--color-primary)}.ui-pill-badge--solid{background:var(--color-primary);color:var(--color-text-inverse)}.ui-pill-badge--muted{background:var(--color-surface-dynamic);color:var(--color-text-muted)}.ui-pill-badge--code{background:var(--color-surface-offset-2);color:var(--color-text-faint);font-family:var(--font-mono);letter-spacing:.02em;font-size:9px;font-weight:700}.ui-status-badge{border-radius:var(--radius-2xs);font-family:var(--font-mono);font-size:var(--text-caption);letter-spacing:.02em;text-transform:uppercase;flex-shrink:0;justify-content:center;align-items:center;padding:1px 5px;font-weight:600;display:inline-flex}.ui-status-badge--success{color:var(--color-success);background:var(--surface-success-soft)}.ui-status-badge--warning{color:var(--color-warning);background:var(--surface-warning-soft)}.ui-status-badge--danger{color:var(--color-error);background:var(--surface-danger-soft)}.ui-status-badge--accent{color:var(--color-primary);background:var(--surface-accent-soft)}.ui-status-badge--muted{color:var(--color-text-faint);background:var(--color-surface-offset)}.ui-stat-token{font-family:var(--font-mono);font-size:var(--text-label);white-space:nowrap;align-items:center;gap:2px;display:inline-flex}.ui-stat-token--add{color:var(--diff-add-text)}.ui-stat-token--del{color:var(--diff-del-text)}.ui-chip-button{--ui-chip-border:var(--color-border);--ui-chip-bg:var(--color-surface);--ui-chip-color:var(--color-text-muted);--ui-chip-border-hover:var(--ui-chip-border);--ui-chip-bg-hover:var(--color-surface-offset);--ui-chip-color-hover:var(--color-text);--ui-chip-border-active:var(--ui-chip-border-hover);--ui-chip-bg-active:var(--ui-chip-bg-hover);--ui-chip-color-active:var(--ui-chip-color-hover);border:1px solid var(--ui-chip-border);border-radius:var(--radius-full);background:var(--ui-chip-bg);min-height:30px;color:var(--ui-chip-color);transition:background var(--transition-interactive), border-color var(--transition-interactive), color var(--transition-interactive), transform .14s ease;font-size:var(--text-meta);justify-content:center;align-items:center;gap:6px;padding:4px 10px;font-weight:600;display:inline-flex}.ui-chip-button:hover{color:var(--ui-chip-color-hover);border-color:var(--ui-chip-border-hover);background:var(--ui-chip-bg-hover)}.ui-chip-button.is-active,.ui-chip-button[aria-pressed=true]{color:var(--ui-chip-color-active);border-color:var(--ui-chip-border-active);background:var(--ui-chip-bg-active)}.ui-chip-button--comment{--ui-chip-border:var(--border-comment-muted);--ui-chip-bg:var(--surface-comment-offset);--ui-chip-border-hover:oklch(from var(--color-comment) l c h / .22);--ui-chip-bg-hover:var(--surface-comment-offset-active);--ui-chip-border-active:oklch(from var(--color-comment) l c h / .28);--ui-chip-bg-active:var(--surface-comment-selection);--ui-chip-color-active:var(--color-comment)}.ui-icon-chip{--ui-icon-chip-border:var(--color-border);--ui-icon-chip-bg:var(--color-surface-2);border:1px solid var(--ui-icon-chip-border);border-radius:var(--radius-md);background:var(--ui-icon-chip-bg);width:34px;min-width:34px;min-height:34px;transition:background var(--transition-interactive), border-color var(--transition-interactive), transform .14s ease;font-size:var(--text-title-md);justify-content:center;align-items:center;padding:0;display:inline-flex}.ui-icon-chip:hover{border-color:var(--ui-icon-chip-border);background:var(--ui-icon-chip-bg);transform:translateY(-1px)}.ui-icon-chip--comment{--ui-icon-chip-border:var(--border-comment-muted);--ui-icon-chip-bg:var(--surface-comment-subtle-strong)}.ui-icon-chip--comment:hover{border-color:oklch(from var(--color-comment) l c h / .24);background:var(--surface-comment-offset-active)}.ui-state-marker{--ui-marker-border:var(--color-border);--ui-marker-bg:var(--color-surface);--ui-marker-color:var(--color-text);--ui-marker-shadow:var(--shadow-md);--ui-marker-border-active:var(--ui-marker-border);--ui-marker-bg-active:var(--ui-marker-bg);--ui-marker-color-active:var(--ui-marker-color);--ui-marker-border-passive:var(--ui-marker-border);--ui-marker-bg-passive:var(--ui-marker-bg);--ui-marker-border-hover:var(--ui-marker-border-active);--ui-marker-bg-hover:var(--ui-marker-bg-active);--ui-marker-color-hover:var(--ui-marker-color-active);border:1px solid var(--ui-marker-border);border-radius:var(--radius-full);background:var(--ui-marker-bg);min-width:28px;height:24px;color:var(--ui-marker-color);box-shadow:var(--ui-marker-shadow);pointer-events:auto;font-size:var(--text-caption);justify-content:center;align-items:center;gap:4px;padding:0 7px;font-weight:700;transition:transform .14s,box-shadow .14s,background-color .14s,border-color .14s,color .14s,opacity .14s;display:inline-flex;position:absolute}.ui-state-marker.is-active{border-color:var(--ui-marker-border-active);background:var(--ui-marker-bg-active);color:var(--ui-marker-color-active)}.ui-state-marker.is-passive{opacity:.48;border-color:var(--ui-marker-border-passive);background:var(--ui-marker-bg-passive);box-shadow:none}.ui-state-marker.is-hovered{opacity:1;border-color:var(--ui-marker-border-hover);background:var(--ui-marker-bg-hover);color:var(--ui-marker-color-hover)}.ui-state-marker:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)scale(1.04)}.ui-state-marker--comment{--ui-marker-border:oklch(from var(--color-comment) l c h / .24);--ui-marker-bg:var(--surface-comment-offset-active);--ui-marker-color:var(--color-comment);--ui-marker-border-active:oklch(from var(--color-comment) l c h / .32);--ui-marker-bg-active:var(--surface-comment-selection);--ui-marker-color-active:var(--color-text-inverse);--ui-marker-border-passive:oklch(from var(--color-comment) l c h / .16);--ui-marker-bg-passive:var(--surface-comment-offset-soft);--ui-marker-border-hover:oklch(from var(--color-comment) l c h / .28);--ui-marker-bg-hover:var(--surface-comment-offset-strong);--ui-marker-color-hover:var(--color-text-inverse)}.ui-selection-pill{border:1px solid var(--color-primary);border-radius:var(--radius-full);text-align:center;min-width:96px;box-shadow:var(--shadow-md);pointer-events:auto;font-size:var(--text-meta);letter-spacing:.02em;padding:6px 10px;font-weight:700;transition:transform .14s,box-shadow .14s;position:absolute}.ui-selection-pill:hover{box-shadow:var(--shadow-lg);transform:translateY(-1px)scale(1.04)}.ui-selection-pill--comment{border-color:oklch(from var(--color-comment) l c h / .22);background:var(--surface-comment-selection);color:var(--color-text-inverse)}.preview-container,.cm-scroller,.file-tree,.git-panel,.diff-scroll,.comments-drawer-list,.comments-drawer-item-quote,.comment-card-quote,.comment-card-scroll,.markdown-toolbar,.comment-markdown pre,.comment-markdown .comment-markdown-table,.preview-content pre,.preview-content .table-wrapper,.preview-content .mermaid-frame,.preview-content .plantuml-frame,.plantuml-maximized-root .plantuml-frame{scrollbar-width:thin;scrollbar-color:var(--color-surface-dynamic) transparent}.preview-container::-webkit-scrollbar{width:8px;height:8px}.cm-scroller::-webkit-scrollbar{width:8px;height:8px}.file-tree::-webkit-scrollbar{width:8px;height:8px}.git-panel::-webkit-scrollbar{width:8px;height:8px}.diff-scroll::-webkit-scrollbar{width:8px;height:8px}.comments-drawer-list::-webkit-scrollbar{width:8px;height:8px}.comments-drawer-item-quote::-webkit-scrollbar{width:8px;height:8px}.comment-card-quote::-webkit-scrollbar{width:8px;height:8px}.comment-card-scroll::-webkit-scrollbar{width:8px;height:8px}.markdown-toolbar::-webkit-scrollbar{width:8px;height:8px}.comment-markdown pre::-webkit-scrollbar{width:8px;height:8px}.comment-markdown .comment-markdown-table::-webkit-scrollbar{width:8px;height:8px}.preview-content pre::-webkit-scrollbar{width:8px;height:8px}.preview-content .table-wrapper::-webkit-scrollbar{width:8px;height:8px}.preview-content .mermaid-frame::-webkit-scrollbar{width:8px;height:8px}.preview-content .plantuml-frame::-webkit-scrollbar{width:8px;height:8px}.plantuml-maximized-root .plantuml-frame::-webkit-scrollbar{width:8px;height:8px}.preview-container::-webkit-scrollbar-track{background:0 0}.cm-scroller::-webkit-scrollbar-track{background:0 0}.file-tree::-webkit-scrollbar-track{background:0 0}.git-panel::-webkit-scrollbar-track{background:0 0}.diff-scroll::-webkit-scrollbar-track{background:0 0}.comments-drawer-list::-webkit-scrollbar-track{background:0 0}.comments-drawer-item-quote::-webkit-scrollbar-track{background:0 0}.comment-card-quote::-webkit-scrollbar-track{background:0 0}.comment-card-scroll::-webkit-scrollbar-track{background:0 0}.markdown-toolbar::-webkit-scrollbar-track{background:0 0}.comment-markdown pre::-webkit-scrollbar-track{background:0 0}.comment-markdown .comment-markdown-table::-webkit-scrollbar-track{background:0 0}.preview-content pre::-webkit-scrollbar-track{background:0 0}.preview-content .table-wrapper::-webkit-scrollbar-track{background:0 0}.preview-content .mermaid-frame::-webkit-scrollbar-track{background:0 0}.preview-content .plantuml-frame::-webkit-scrollbar-track{background:0 0}.plantuml-maximized-root .plantuml-frame::-webkit-scrollbar-track{background:0 0}.preview-container::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.cm-scroller::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.file-tree::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.git-panel::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.diff-scroll::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.comments-drawer-list::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.comments-drawer-item-quote::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.comment-card-quote::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.comment-card-scroll::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.markdown-toolbar::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.comment-markdown pre::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.comment-markdown .comment-markdown-table::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.preview-content pre::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.preview-content .table-wrapper::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.preview-content .mermaid-frame::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.preview-content .plantuml-frame::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.plantuml-maximized-root .plantuml-frame::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.preview-container::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.cm-scroller::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.file-tree::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.git-panel::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.diff-scroll::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.comments-drawer-list::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.comments-drawer-item-quote::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.comment-card-quote::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.comment-card-scroll::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.markdown-toolbar::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.comment-markdown pre::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.comment-markdown .comment-markdown-table::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.preview-content pre::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.preview-content .table-wrapper::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.preview-content .mermaid-frame::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.preview-content .plantuml-frame::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.plantuml-maximized-root .plantuml-frame::-webkit-scrollbar-thumb:hover{background:var(--color-text-faint)}.git-panel{flex-direction:column;flex:1;display:flex;overflow-y:auto}.git-panel.active{display:flex}.git-branch-bar{align-items:stretch;gap:var(--space-2);padding:var(--space-3);border-bottom:1px solid var(--color-divider);font-size:var(--text-xs);flex-direction:column;display:flex}.git-branch-meta{justify-content:space-between;align-items:center;gap:var(--space-3);width:100%;min-width:0;display:flex}.git-branch-name{border-radius:var(--radius-sm);background:var(--color-surface-offset);min-width:0;max-width:100%;color:var(--color-text);font-family:var(--font-mono);font-size:var(--text-label);align-items:center;gap:6px;padding:3px 8px;font-weight:500;display:inline-flex}.git-branch-name svg{color:var(--color-primary);flex-shrink:0}.git-sync-info{align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--text-meta);flex-shrink:0;display:inline-flex}.git-sync-metric{align-items:center;gap:2px;display:inline-flex}.git-sync-metric--ahead{color:var(--color-success)}.git-sync-metric--behind,.git-sync-info-muted{color:var(--color-text-faint)}.git-change-stats{align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-size:var(--text-meta);flex-shrink:0;font-weight:600;display:inline-flex}.git-branch-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;width:100%;display:grid}.git-panel-mode-switch{grid-template-columns:repeat(2,minmax(0,1fr));display:inline-grid}.git-panel-mode-btn{min-width:0}.git-branch-actions .ui-action-pill{justify-content:center;width:100%}.git-branch-actions .ui-action-pill svg{flex-shrink:0}.git-change-add{color:var(--diff-add-text)}.git-change-del{color:var(--diff-del-text)}.git-panel-footer{padding:var(--space-3);border-top:1px solid var(--color-divider);margin-top:auto}.git-panel-footer-actions{gap:var(--space-2);flex-direction:column;display:flex}.git-panel-footer-actions .ui-action-button{width:100%}.git-footer-commit-btn{border:1px solid var(--border-accent-soft);background:var(--surface-accent-soft);width:100%;color:var(--color-primary)}.git-footer-commit-btn:hover:not(:disabled){background:var(--surface-accent-strong)}.git-panel-empty{padding:var(--space-4);color:var(--color-text-faint);text-align:center;font-size:var(--text-xs)}.git-section{border-bottom:1px solid var(--color-divider)}.git-section-header{width:100%;padding:var(--space-2) var(--space-3);color:var(--color-text-muted);font-size:var(--text-meta);letter-spacing:.05em;text-transform:uppercase;text-align:left;background:0 0;align-items:center;gap:6px;font-weight:600;display:flex}.git-section-header:hover{background:var(--color-surface-offset)}.git-section-count{min-height:20px}.git-section-chevron{color:var(--color-text-faint);transition:transform .15s}.git-section-chevron.collapsed{transform:rotate(-90deg)}.git-file-list{padding:var(--space-1) 0}.git-file-row{margin:0 var(--space-2) 2px;--ui-item-row-bg-hover:var(--color-surface-offset);--ui-item-row-bg-active:var(--color-primary-highlight)}.git-file-item{padding:5px var(--space-2) 5px calc(var(--space-2) + 10px);border-radius:calc(var(--radius-md) - 2px);color:var(--color-text-muted);text-align:left;transition:color var(--transition-interactive);background:0 0}.git-file-item:hover{color:var(--color-text)}.git-file-item.active{color:var(--color-primary)}.git-file-row.active .git-file-path{color:color-mix(in oklab, var(--color-primary) 56%, var(--color-text-muted))}.git-file-icon{opacity:.5;flex-shrink:0}.git-file-copy{min-width:0}.git-file-name{text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-ui-sm);overflow:hidden}.git-file-path{color:var(--color-text-faint);text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-meta);overflow:hidden}.git-file-actions{padding-right:4px}.git-file-actions .ui-action-icon{width:30px}.git-file-row.active .ui-action-icon--surface{background:var(--surface-accent-subtle);color:var(--color-text)}.git-history-list{gap:var(--space-1);padding:var(--space-3);flex-direction:column;display:flex}.git-history-row{--ui-record-padding:10px 11px;--ui-record-gap:4px;--ui-record-border:var(--color-border);--ui-record-bg:var(--surface-overlay-raised);--ui-record-border-hover:var(--border-accent-muted);--ui-record-bg-hover:var(--surface-fill-subtle);--ui-record-border-active:var(--border-accent-stronger);--ui-record-bg-active:var(--surface-accent-subtle);--ui-record-shadow-active:var(--shadow-accent-inset)}.git-history-subject{color:var(--color-text);font-size:var(--text-label);font-weight:700}.git-history-row-top,.git-history-row-meta,.git-history-row-stats{gap:var(--space-2)}.git-history-hash{flex-shrink:0}.git-history-row-meta{color:var(--color-text-faint);font-size:var(--text-caption)}.git-history-row-stats{font-family:var(--font-mono);font-size:var(--text-caption);font-weight:700}.git-history-footer{padding:0 var(--space-3) var(--space-3)}.git-history-load-more{width:100%}.file-history-shell{--file-history-shell-chrome-offset:calc(var(--toolbar-h) + var(--control-h-md) + (var(--space-2) * 2) + (var(--space-3) * 2) + 1px);box-sizing:border-box;align-items:start;gap:var(--space-3);width:100%;min-height:0;padding:var(--space-3);flex:1 0 auto;grid-template-columns:minmax(260px,320px) minmax(0,1fr);display:grid;overflow:visible}.file-history-sidebar,.file-history-detail{min-width:0}.file-history-sidebar{top:var(--space-4);align-self:start;gap:var(--space-3);max-height:calc(100dvh - var(--file-history-shell-chrome-offset));min-height:0;padding:var(--space-3);border:1px solid var(--color-divider);border-radius:var(--radius-xl);background:var(--surface-overlay-raised);box-shadow:var(--shadow-elevated-soft);flex-direction:column;display:flex;position:sticky;overflow:hidden}.file-history-sidebar-header{gap:var(--space-2);display:grid}.file-history-sidebar-copy{color:var(--color-text-muted);font-size:var(--text-caption);margin:0;line-height:1.5}.file-history-kicker{color:var(--color-text-faint);font-size:var(--text-caption);letter-spacing:.1em;text-transform:uppercase;font-weight:700}.file-history-title{gap:var(--space-1);display:grid}.file-history-path{color:var(--color-text);font-size:var(--text-title-sm);font-weight:700}.file-history-dir{color:var(--color-text-muted);font-size:var(--text-caption)}.file-history-list{gap:var(--space-2);flex-direction:column;flex:auto;min-width:0;min-height:0;padding:0;display:flex;overflow:hidden auto}.file-history-item{--ui-record-padding:var(--space-3);--ui-record-gap:var(--space-2);--ui-record-border:var(--color-border);--ui-record-bg:var(--surface-overlay-offset);--ui-record-border-hover:var(--color-border);--ui-record-bg-hover:var(--surface-fill-strong);--ui-record-border-active:var(--border-accent-strong);--ui-record-bg-active:var(--surface-accent-subtle);--ui-record-shadow-active:var(--shadow-accent-inset);box-sizing:border-box;text-align:left;width:100%;max-width:100%;display:block}.file-history-item.active{border-color:var(--border-accent-strong);box-shadow:var(--shadow-accent-outline)}.file-history-item-local{--ui-record-border:color-mix(in srgb, var(--color-primary) 20%, var(--color-divider));--ui-record-bg:color-mix(in srgb, var(--surface-accent-subtle) 58%, var(--surface-overlay-offset))}.file-history-item-top,.file-history-item-copy{gap:var(--space-2);min-width:0;display:flex}.file-history-item-top{justify-content:space-between;align-items:flex-start}.file-history-item-copy{flex-direction:column;flex:1}.file-history-item-title{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-label);font-weight:700;overflow:hidden}.file-history-item-meta{color:var(--color-text-faint);text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-caption);overflow:hidden}.file-history-item-badge{flex-shrink:0}.file-history-item-stats{gap:var(--space-2);color:var(--color-text-faint);font-family:var(--font-mono);font-size:var(--text-caption);font-weight:700;display:inline-flex}.file-history-footer{padding:0}.file-history-detail{align-self:start;gap:var(--space-3);grid-template-rows:auto auto;min-width:0;min-height:0;display:grid}.file-history-detail-header{align-content:start;align-items:start;gap:var(--space-3) var(--space-4);padding:var(--space-4);border:1px solid var(--color-divider);border-radius:var(--radius-xl);background:linear-gradient(180deg, var(--surface-accent-subtle), var(--color-surface));grid-template-columns:minmax(0,1fr) auto;display:grid;overflow:hidden}.file-history-detail-copy{gap:var(--space-1);min-width:0;display:grid}.file-history-detail-kicker{color:var(--color-text-faint);font-size:var(--text-caption);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.file-history-detail-title{color:var(--color-text);font-size:var(--text-title-md);margin:0;font-weight:700;line-height:1.3}.file-history-detail-meta{color:var(--color-text-muted);font-size:var(--text-label);margin:0;line-height:1.5}.file-history-detail-actions{justify-content:flex-end;gap:var(--space-2);flex-wrap:wrap;flex-shrink:0;align-self:start;display:flex}.file-history-detail-body{border:1px solid var(--color-divider);border-radius:var(--radius-xl);background:var(--surface-overlay-raised);min-width:0;min-height:auto;overflow:auto hidden}.file-history-diff-block{width:max-content;min-width:100%;overflow:visible}.file-history-diff-block .diff-file-header,.file-history-diff-block .diff-hunk-header,.file-history-diff-block .diff-line,.file-history-diff-block .diff-split-hunk,.file-history-diff-block .diff-split-row{min-width:max-content}@media (width<=960px){.file-history-shell{flex:none;grid-template-columns:1fr;overflow:visible}.file-history-sidebar{max-height:none;position:static}}@media (width<=768px){.file-history-shell{padding:var(--space-3)}.file-history-detail-header{flex-direction:column}.file-history-detail-actions{justify-content:stretch;width:100%}.file-history-detail-actions .ui-button{flex:1}}.diff-toolbar{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);background:var(--color-surface-2);border-bottom:1px solid var(--color-divider);display:flex}.diff-toolbar-left,.diff-toolbar-right{align-items:center;gap:var(--space-3);display:flex}.diff-toolbar-actions,.diff-toolbar-actions-group{align-items:center;gap:var(--space-2);display:inline-flex}.diff-toolbar-actions-group-git{padding:var(--space-1);border:1px solid var(--color-divider);border-radius:var(--radius-lg);background:var(--surface-overlay);box-shadow:var(--shadow-sheet-inset)}.diff-toolbar-actions-divider{width:1px;height:var(--control-h-xs);background:var(--color-divider);opacity:.9}.diff-open-editor-btn{min-width:116px}.diff-open-editor-btn:disabled{opacity:.45;cursor:not-allowed}.diff-back-btn{min-width:130px}.diff-file-nav{align-items:center;gap:var(--space-2);display:flex}.diff-file-nav .ui-action-icon:disabled{opacity:.3}.diff-file-indicator{color:var(--color-text-muted);font-size:var(--text-xs);font-variant-numeric:tabular-nums}.diff-stats{align-items:center;gap:var(--space-2);white-space:nowrap;display:inline-flex}.diff-scroll{flex:1;overflow:auto}.diff-content{min-width:fit-content;min-height:100%}.diff-content--history{width:100%;min-width:0;min-height:100%;display:flex}.diff-commit-header{gap:var(--space-2);padding:var(--space-4);border-bottom:1px solid var(--color-divider);background:linear-gradient(180deg, var(--surface-accent-subtle), var(--color-surface));flex-direction:column;display:flex}.diff-commit-subject{color:var(--color-text);font-size:var(--text-title-md);font-weight:700;line-height:1.3}.diff-commit-meta{align-items:center;gap:var(--space-2);color:var(--color-text-muted);font-size:var(--text-label);flex-wrap:wrap;display:flex}.diff-commit-meta-secondary{color:var(--color-text-faint);font-family:var(--font-mono);font-size:var(--text-meta)}.diff-commit-shell{grid-template-columns:minmax(210px,242px) minmax(0,1fr);align-items:start;gap:10px;padding:10px;display:grid}.diff-commit-index{top:var(--space-4);border:1px solid var(--color-divider);border-radius:calc(var(--radius-lg) + 2px);background:var(--surface-overlay-raised);max-height:calc(100dvh - 220px);box-shadow:var(--shadow-elevated-soft);flex-direction:column;gap:8px;padding:8px;display:flex;position:sticky;overflow:hidden}.diff-commit-index-header{color:var(--color-text-faint);font-size:var(--text-caption);letter-spacing:.1em;text-transform:uppercase;padding-inline:1px;font-weight:700}.diff-commit-index-list{flex-direction:column;gap:5px;padding-block-end:2px;display:flex;overflow:hidden auto}.diff-index-item{--ui-record-padding:8px 9px;--ui-record-gap:4px;--ui-record-border:var(--color-border);--ui-record-bg:var(--surface-overlay-offset);--ui-record-border-hover:var(--color-border);--ui-record-bg-hover:var(--surface-fill-strong);--ui-record-border-active:var(--border-accent-strong);--ui-record-bg-active:var(--surface-accent-subtle);--ui-record-shadow-active:var(--shadow-accent-inset)}.diff-index-item-top,.diff-index-item-meta{gap:6px}.diff-index-item-name{font-size:var(--text-label);font-weight:700}.diff-index-item-path{font-size:var(--text-caption)}.diff-index-item-meta{font-family:var(--font-mono);font-size:var(--text-caption)}.diff-commit-main{min-width:0}.diff-commit-sections{flex-direction:column;gap:10px;display:flex}.diff-commit-section{border:1px solid var(--color-divider);border-radius:calc(var(--radius-lg) + 2px);background:var(--surface-overlay-raised);overflow:hidden}.diff-commit-section.active{border-color:var(--border-accent-strong);box-shadow:var(--shadow-accent-outline)}.diff-commit-section-header{justify-content:space-between;align-items:center;gap:var(--space-3);background:var(--surface-overlay-offset);text-align:left;width:100%;padding:10px 14px;display:flex}.diff-commit-section-header:hover{background:var(--surface-fill-strong)}.diff-commit-section-main,.diff-commit-section-meta{align-items:center;gap:var(--space-2);min-width:0;display:flex}.diff-commit-section-main{flex:1}.diff-section-chevron{color:var(--color-text-faint);flex-shrink:0;transition:transform .15s}.diff-section-chevron.collapsed{transform:rotate(-90deg)}.diff-commit-section-copy{flex-direction:column;min-width:0;display:flex}.diff-commit-section-name{color:var(--color-text);text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-ui-sm);font-weight:700;overflow:hidden}.diff-commit-section-path{color:var(--color-text-faint);text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-meta);overflow:hidden}.diff-commit-section-meta{font-family:var(--font-mono);font-size:var(--text-meta);flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;font-weight:700}.diff-commit-section-body{padding:0}.diff-commit-shell-focused .diff-commit-main .diff-file-block{border:1px solid var(--color-divider);border-radius:calc(var(--radius-lg) + 2px);overflow:hidden}.diff-file-block{margin-bottom:0}.diff-file-header{z-index:5;align-items:center;gap:var(--space-2);border-top:1px solid var(--color-divider);border-bottom:1px solid var(--color-divider);background:var(--color-surface-offset);padding:8px 14px;display:flex;position:sticky;top:0}.diff-file-header:first-child{border-top:none}.diff-file-path{color:var(--color-text);font-family:var(--font-mono);font-size:var(--text-label);font-weight:500}.diff-file-header-stats{gap:var(--space-2);font-family:var(--font-mono);font-size:var(--text-meta);margin-left:auto;display:inline-flex}.diff-binary-message,.diff-empty-state{padding:var(--space-4);color:var(--color-text-faint)}.diff-limit-card{align-items:flex-start;gap:var(--space-2);padding:var(--space-4);border-top:1px solid var(--color-divider);color:var(--color-text-muted);flex-direction:column;display:flex}.diff-limit-card strong{color:var(--color-text);font-size:var(--text-sm)}.diff-load-full-btn{margin-top:var(--space-1);font-size:var(--text-label);font-weight:600}.diff-hunk-header,.diff-split-hunk{background:var(--diff-hunk-bg);color:var(--diff-hunk-text);font-family:var(--font-mono);font-size:var(--text-label);padding:4px 14px 4px 84px}.diff-line{min-height:20px;font-family:var(--font-mono);font-size:var(--text-ui-sm);align-items:stretch;line-height:20px;display:flex}.diff-line-numbers{-webkit-user-select:none;user-select:none;flex-shrink:0;display:flex}.diff-line-num{border-right:1px solid var(--color-divider);width:40px;color:var(--diff-gutter);text-align:right;font-size:var(--text-label);padding:0 8px}.diff-line-num:first-child{border-right:none}.diff-line-prefix{-webkit-user-select:none;user-select:none;flex-shrink:0;width:20px;padding-left:8px;font-weight:500}.diff-line-content{white-space:pre;tab-size:4;flex:1;padding:0 10px}.diff-line.addition{background:var(--diff-add-bg)}.diff-line.addition .diff-line-num{background:var(--diff-add-line-bg);color:var(--diff-add-text)}.diff-line.addition .diff-line-prefix{color:var(--diff-add-text)}.diff-line.deletion{background:var(--diff-del-bg)}.diff-line.deletion .diff-line-num{background:var(--diff-del-line-bg);color:var(--diff-del-text)}.diff-line.deletion .diff-line-prefix{color:var(--diff-del-text)}.diff-line.note{background:var(--color-surface-offset);color:var(--color-text-faint)}.diff-highlight-add{border-radius:var(--radius-2xs);background:var(--diff-add-line-bg);padding:0 1px}.diff-highlight-del{border-radius:var(--radius-2xs);background:var(--diff-del-line-bg);padding:0 1px}.diff-split{display:block}.diff-split-row{grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid}.diff-split-pane-header{display:none}.diff-split-line{min-height:20px;font-family:var(--font-mono);font-size:var(--text-ui-sm);line-height:20px;display:flex}.diff-split-line:first-child{border-right:1px solid var(--color-divider)}.diff-split-num{border-right:1px solid var(--color-divider);width:44px;color:var(--diff-gutter);text-align:right;font-size:var(--text-label);padding:0 8px}.diff-split-content{white-space:pre;tab-size:4;flex:1;padding:0 10px}.diff-split-line.addition{background:var(--diff-add-bg)}.diff-split-line.addition .diff-split-num{background:var(--diff-add-line-bg);color:var(--diff-add-text)}.diff-split-line.deletion{background:var(--diff-del-bg)}.diff-split-line.deletion .diff-split-num{background:var(--diff-del-line-bg);color:var(--diff-del-text)}.diff-split-line.empty{background:var(--color-surface-offset);opacity:.45}.mobile-view-toggle{display:none}.user-avatars{align-items:center;display:flex}.user-avatar{z-index:1;border:2px solid var(--color-surface);border-radius:var(--radius-full);width:24px;height:24px;color:var(--color-text-on-dark);font-size:var(--text-meta);flex-shrink:0;justify-content:center;align-items:center;margin-left:-4px;font-weight:600;display:flex;position:relative}.user-avatar-initial{justify-content:center;align-items:center;line-height:1;display:inline-flex}.user-avatar:first-child{margin-left:0}.user-avatar.is-local{z-index:5;border-radius:var(--radius-full);width:auto;min-width:44px;box-shadow:var(--shadow-accent-ring);gap:4px;margin-right:6px;padding:0 8px 0 6px}.user-avatar.is-local+.user-avatar{margin-left:0}.user-avatar.is-local .user-avatar-initial{border-radius:var(--radius-full);background:var(--surface-avatar-muted);width:14px;height:14px;font-size:var(--text-micro)}.user-avatar-self-label{border-radius:var(--radius-full);background:var(--surface-avatar-label);color:var(--color-text-on-dark);font-size:var(--text-micro);letter-spacing:.04em;text-transform:uppercase;padding:2px 4px;font-weight:700;line-height:1}.user-avatar-button{cursor:pointer;transition:transform var(--transition-interactive), box-shadow var(--transition-interactive);padding:0}.user-avatar-button:hover{z-index:2;transform:translateY(-1px)}.user-avatar-button:focus-visible{z-index:3;box-shadow:var(--shadow-accent-ring-strong);outline:none}.user-avatar.is-following{z-index:4;box-shadow:var(--shadow-accent-ring-solid)}.user-avatar-button.different-file{opacity:.55}.user-avatar-button.different-file:hover{opacity:.85}.chat-container,.chat-toggle-btn{position:relative}.chat-toggle-btn.is-active{color:var(--color-text);background:var(--color-surface-offset)}.chat-toggle-btn.is-unread:not(.is-active){color:var(--color-primary);background:var(--interactive-surface);box-shadow:var(--shadow-accent-inset)}.chat-toggle-btn.is-unread:not(.is-active):hover{background:var(--surface-accent-soft)}.chat-toggle-badge{min-width:18px;min-height:18px;padding:0 5px;line-height:18px}.chat-toggle-btn.is-unread:not(.is-active) .chat-toggle-badge{box-shadow:var(--shadow-accent-halo)}.chat-panel{top:calc(100% + var(--space-2));z-index:30;gap:var(--space-3);width:min(360px, calc(100vw - var(--space-6)));max-height:min(70vh,520px);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:oklch(from var(--color-surface) l c h / .98);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);flex-direction:column;display:flex;position:absolute;right:0}.chat-container>.chat-toast-container{top:calc(var(--toolbar-h) + var(--space-2));right:var(--space-3);z-index:60;width:min(360px, calc(100vw - var(--space-6)));align-items:flex-end;position:fixed}.chat-toast-container .toast{border-style:solid;border-width:1px;border-color:var(--border-warning-toast);background:var(--surface-warning-toast);width:100%;max-width:100%;color:var(--text-warning-toast);font-size:var(--text-ui-sm);box-shadow:var(--shadow-warning-toast);border-left-width:4px;padding:12px 14px;font-weight:600}.chat-panel-header{justify-content:space-between;align-items:flex-start;gap:var(--space-3);display:flex}.chat-panel-title{font-size:var(--text-sm);margin:0;font-weight:700}.chat-panel-status{margin:var(--space-1) 0 0;color:var(--color-text-muted);font-size:var(--text-meta)}.chat-notification-action{flex-shrink:0}.chat-notification-action.is-enabled{border-color:oklch(from var(--color-success) l c h / .45);background:var(--surface-success-soft);color:var(--color-success)}.chat-notification-action.is-blocked{color:var(--color-warning)}.chat-empty-state{padding:var(--space-4);border:1px dashed var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-2);color:var(--color-text-muted);font-size:var(--text-label)}.chat-messages{gap:var(--space-3);min-height:140px;max-height:320px;padding-right:var(--space-1);flex-direction:column;display:flex;overflow-y:auto}.chat-message{align-items:flex-start;gap:var(--space-2);display:flex}.chat-message.is-local{flex-direction:row-reverse}.chat-message-avatar{border-radius:var(--radius-full);width:28px;height:28px;color:var(--color-text-on-dark);font-size:var(--text-label);flex-shrink:0;justify-content:center;align-items:center;font-weight:700;display:flex}.chat-message-body{flex-direction:column;flex:1;align-items:flex-start;min-width:0;display:flex}.chat-message.is-local .chat-message-body{align-items:flex-end}.chat-message-meta{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:4px;display:flex}.chat-message.is-local .chat-message-meta{justify-content:flex-end}.chat-message-author{color:var(--color-text);font-size:var(--text-label);font-weight:600}.chat-message-time,.chat-message-file{color:var(--color-text-muted);font-size:var(--text-caption)}.chat-message-file{border-radius:var(--radius-full);background:var(--color-surface-offset);padding:2px 6px}.chat-message-text{border:1px solid var(--color-divider);border-radius:var(--radius-md);background:var(--color-surface-2);width:fit-content;max-width:78%;color:var(--color-text);font-size:var(--text-ui-sm);word-break:break-word;margin:0;padding:10px 12px;line-height:1.45}.chat-message.is-local .chat-message-text{background:oklch(from var(--color-primary) l c h / .14);border-color:oklch(from var(--color-primary) l c h / .25)}.chat-form{align-items:center;gap:var(--space-2);display:flex}.chat-input{font-size:var(--text-ui-sm)}.chat-send-btn{padding-inline:var(--space-4);flex-shrink:0}.app-dialog{width:min(420px, calc(100vw - var(--space-6)));border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);color:var(--color-text);box-shadow:var(--shadow-lg);opacity:0;transition:opacity .2s cubic-bezier(.16, 1, .3, 1), transform .2s cubic-bezier(.16, 1, .3, 1), display .2s cubic-bezier(.16, 1, .3, 1) allow-discrete;margin:auto;padding:0;transform:scale(.95)}.app-dialog[open]{opacity:1;transform:scale(1)}@starting-style{.app-dialog[open]{opacity:0;transform:scale(.95)}}.app-dialog::backdrop{background:oklch(from var(--color-bg) l c h / .72);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);opacity:0;transition:opacity .2s cubic-bezier(.16, 1, .3, 1), display .2s cubic-bezier(.16, 1, .3, 1) allow-discrete}.app-dialog[open]::backdrop{opacity:1}@starting-style{.app-dialog[open]::backdrop{opacity:0}}.app-dialog-form{gap:var(--space-4);padding:var(--space-5);display:grid}.app-dialog-header{gap:var(--space-1);display:grid}.app-dialog-title{font-size:var(--text-base);font-weight:600}.app-dialog-copy{color:var(--color-text-muted);font-size:var(--text-sm)}.app-dialog-field{gap:var(--space-2);display:grid}.app-dialog-label{color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:600}.app-dialog-hint{color:var(--color-text-muted);font-size:var(--text-xs);line-height:1.5}.app-dialog-note{overflow-wrap:anywhere;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-offset);color:var(--color-text);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:var(--text-xs);line-height:1.6}.app-dialog-note.is-danger{border-color:oklch(from var(--color-error) l c h / .35);background:var(--color-error-highlight);color:var(--color-error)}.app-dialog-actions{justify-content:flex-end;gap:var(--space-2);display:flex}.tab-lock-overlay{z-index:1200;padding:var(--space-6);background:radial-gradient(circle at top, oklch(from var(--color-primary) l c h / .16), transparent 38%), oklch(from var(--color-bg) l c h / .82);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);place-items:center;display:grid;position:fixed;inset:0}.tab-lock-card{gap:var(--space-4);width:min(520px,100%);padding:var(--space-6);border:1px solid oklch(from var(--color-primary) l c h / .25);border-radius:var(--radius-xl);background:linear-gradient(180deg, var(--color-surface), var(--color-surface-2));box-shadow:var(--shadow-lg);display:grid}.tab-lock-kicker{color:var(--color-primary);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;font-weight:700}.tab-lock-title{font-size:var(--text-lg);line-height:1.2}.tab-lock-copy{color:var(--color-text-muted);font-size:var(--text-sm);line-height:1.6}.tab-lock-actions{justify-content:flex-start;display:flex}.preview-content h1{margin:var(--space-8) 0 var(--space-4);padding-bottom:var(--space-2);border-bottom:1px solid var(--color-divider);font-size:var(--text-xl);letter-spacing:-.02em;font-weight:700}.preview-content h1:first-child{margin-top:0}.preview-content h2{margin:var(--space-6) 0 var(--space-3);font-size:var(--text-lg);letter-spacing:-.01em;font-weight:600}.preview-content h3{margin:var(--space-5) 0 var(--space-2);font-size:var(--text-base);font-weight:600}.preview-content h4,.preview-content h5,.preview-content h6{margin:var(--space-4) 0 var(--space-2);color:var(--color-text-muted);font-size:var(--text-sm);font-weight:600}.preview-content p{max-width:72ch;margin-bottom:var(--space-4)}:is(.preview-content p:has(>.excalidraw-embed-placeholder:only-child),.preview-content p:has(>.video-embed-placeholder:only-child),.preview-content p:has(>.plantuml-shell:only-child)){max-width:none;margin-bottom:0}.preview-content a{color:var(--color-primary);border-bottom:1px solid oklch(from var(--color-primary) l c h / .3);transition:border-color var(--transition-interactive);text-decoration:none}.preview-content a:hover{border-bottom-color:var(--color-primary)}.preview-content strong{font-weight:600}.preview-content em{font-style:italic}.preview-content del{color:var(--color-text-muted);text-decoration:line-through}.preview-content ul,.preview-content ol{margin-bottom:var(--space-4);padding-left:var(--space-6)}.preview-content li{margin-bottom:var(--space-1)}.preview-content li>ul,.preview-content li>ol{margin-top:var(--space-1);margin-bottom:0}.preview-content .task-list-item{margin-left:calc(var(--space-6) * -1);padding-left:var(--space-1);list-style:none}.preview-content .task-list-item input[type=checkbox]{margin-right:var(--space-2);accent-color:var(--color-primary);vertical-align:middle}.preview-content blockquote{margin:var(--space-4) 0;padding:var(--space-3) var(--space-5);border-left:3px solid var(--color-primary);border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--color-surface);color:var(--color-text-muted)}.preview-content blockquote p:last-child{margin-bottom:0}.preview-content code{border-radius:var(--radius-sm);background:var(--color-surface-offset);color:var(--color-primary);font-family:var(--font-mono);padding:2px 6px;font-size:.875em}.preview-content pre{max-width:100%;margin:var(--space-4) 0;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);-webkit-overflow-scrolling:touch;overflow-x:auto}.preview-content pre code{width:fit-content;min-width:100%;padding:var(--space-4);color:var(--color-text);font-size:var(--text-ui-sm);white-space:pre;word-wrap:normal;overflow-wrap:normal;background:0 0;line-height:1.6;display:block}.preview-content .table-wrapper{margin:var(--space-4) 0;border:1px solid var(--color-border);border-radius:var(--radius-md);-webkit-overflow-scrolling:touch;overflow-x:auto}.preview-content table{border-collapse:collapse;white-space:nowrap;width:100%;min-width:100%}.preview-content th,.preview-content td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-divider);text-align:left;font-size:var(--text-sm)}.preview-content th{background:var(--color-surface-offset);color:var(--color-text-muted);font-size:var(--text-xs);letter-spacing:.03em;text-transform:uppercase;font-weight:600}.preview-content tr:last-child td{border-bottom:none}.preview-content tr:hover td{background:var(--color-surface-offset)}.preview-content hr{height:1px;margin:var(--space-8) 0;background:var(--color-divider);border:none}.preview-content img{max-width:100%;height:auto;margin:var(--space-4) 0;border-radius:var(--radius-md);cursor:zoom-in}.image-lightbox-root{z-index:220;pointer-events:auto;place-items:center;display:grid;position:fixed;inset:0}.image-lightbox-root[hidden]{display:none!important}.image-lightbox-backdrop{background:var(--surface-scrim-strong);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:zoom-out;border:none;position:absolute;inset:0}.image-lightbox-shell{z-index:1;position:absolute;inset:0}.image-lightbox-toolbar{top:var(--space-5);left:var(--space-5);right:var(--space-5);z-index:2;justify-content:space-between;align-items:center;gap:var(--space-3);pointer-events:none;display:flex;position:absolute}.image-lightbox-title{border-radius:var(--radius-full);background:var(--surface-inverse-glass);min-width:0;color:var(--color-text-on-dark);text-overflow:ellipsis;white-space:nowrap;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-media-soft);pointer-events:auto;font-size:var(--text-xs);padding:8px 12px;font-weight:600;overflow:hidden}.image-lightbox-controls{justify-content:flex-end;align-items:center;gap:var(--space-2);pointer-events:auto;flex-wrap:wrap;display:inline-flex}.image-lightbox-btn{border-radius:var(--radius-full);background:var(--surface-inverse-glass);min-width:0;color:var(--color-text-on-dark);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-media-soft);font-size:var(--text-xs);border:none;padding:8px 12px;font-weight:600;transition:background .18s,transform .18s}.image-lightbox-btn:hover:not(:disabled){background:var(--surface-inverse-glass-hover)}.image-lightbox-btn:disabled{opacity:.45;cursor:default}.image-lightbox-zoom-label{border-radius:var(--radius-full);background:var(--surface-inverse-glass);min-width:58px;color:var(--color-text-on-dark);text-align:center;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:var(--shadow-media-soft);font-size:var(--text-xs);font-variant-numeric:tabular-nums;padding:8px 12px;font-weight:600}.image-lightbox-viewport{touch-action:none;-webkit-user-select:none;user-select:none;position:absolute;inset:0;overflow:hidden}.image-lightbox-viewport.is-dragging .image-lightbox-image{cursor:grabbing!important}.image-lightbox-image{width:auto;height:auto;max-width:calc(100vw - (var(--space-8) * 2));max-height:calc(100vh - (var(--space-8) * 2));object-fit:contain;transform-origin:50%;will-change:transform;box-shadow:var(--shadow-media-stage);margin:auto;position:absolute;inset:0}body.image-lightbox-open{overflow:hidden}@media (width<=768px){.image-lightbox-toolbar{top:var(--space-3);left:var(--space-3);right:var(--space-3);flex-direction:column;align-items:flex-start}.image-lightbox-controls{justify-content:flex-start}.image-lightbox-btn{flex:none}.image-lightbox-image{max-width:calc(100vw - (var(--space-4) * 2));max-height:calc(100vh - (var(--space-4) * 2))}}.preview-content .video-embed-shell{background:var(--surface-media-canvas);display:block}.preview-content .video-embed,.preview-content .video-embed-placeholder{transition:box-shadow .18s;display:block}.preview-content .video-embed-placeholder.is-hydrated{visibility:hidden}.video-embed-overlay-root{z-index:1;pointer-events:none;position:absolute;inset:0}.preview-content .video-embed-frame,.preview-content .video-embed,.preview-content .video-embed-placeholder{width:100%;min-width:0;max-width:100%}.preview-content .video-embed-frame{height:100%}.preview-content .video-embed-placeholder-card{border-radius:0;min-height:100%}.preview-content .video-embed-placeholder-copy{gap:2px;display:grid}.preview-content .video-embed-iframe,.preview-content .video-embed-player{background:var(--surface-media-canvas);border:none;width:100%;max-width:100%;height:100%;display:block}.preview-content .video-embed-player{object-fit:contain}.preview-content .mermaid-shell{gap:0;display:grid}.preview-content .mermaid-placeholder-card{border-radius:0}.preview-content .mermaid-toolbar{justify-content:flex-end}.preview-content .mermaid-zoom-btn{min-width:32px;line-height:1.5}.preview-content .mermaid-zoom-btn:disabled{opacity:.5;cursor:not-allowed}.preview-content .mermaid-frame{max-width:none}.preview-content .mermaid-frame.is-pannable{cursor:grab}.preview-content .mermaid-frame.is-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.preview-content .mermaid-frame svg{display:block}body.mermaid-maximized-open{overflow:hidden}body.mermaid-maximized-open:before{content:"";z-index:170;background:var(--surface-scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);position:fixed;inset:0}.preview-content .mermaid-shell.is-maximized{inset:var(--space-4);z-index:171;width:auto;max-width:none;box-shadow:var(--shadow-lg);grid-template-rows:auto minmax(0,1fr);margin:0;position:fixed}.preview-content .mermaid-shell.is-maximized .mermaid-frame{height:100%;max-height:none}.preview-content .plantuml-shell,.plantuml-maximized-root .plantuml-shell{gap:0;width:100%;min-width:0;display:grid}.preview-content .plantuml-placeholder-card,.plantuml-maximized-root .plantuml-placeholder-card{border-radius:0}.preview-content .plantuml-tool-btn:disabled,.plantuml-maximized-root .plantuml-tool-btn:disabled{opacity:.5;cursor:not-allowed}.preview-content .plantuml-toolbar,.plantuml-maximized-root .plantuml-toolbar{justify-content:flex-end}.preview-content .plantuml-tool-btn,.plantuml-maximized-root .plantuml-tool-btn{min-width:32px;line-height:1.5}.preview-content .plantuml-frame,.plantuml-maximized-root .plantuml-frame{max-width:100%}.preview-content .plantuml-frame.is-pannable,.plantuml-maximized-root .plantuml-frame.is-pannable{cursor:grab}.preview-content .plantuml-frame.is-dragging,.plantuml-maximized-root .plantuml-frame.is-dragging{cursor:grabbing;-webkit-user-select:none;user-select:none}.preview-content .plantuml-frame svg,.plantuml-maximized-root .plantuml-frame svg{display:block}body.plantuml-maximized-open{overflow:hidden}body.plantuml-maximized-open:before{content:"";z-index:170;background:var(--surface-scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);position:fixed;inset:0}.plantuml-maximized-root{z-index:171;pointer-events:none;position:fixed;inset:0}.preview-content .plantuml-shell.is-maximized,.plantuml-maximized-root .plantuml-shell.is-maximized{inset:var(--space-4);z-index:171;width:auto;max-width:none;box-shadow:var(--shadow-lg);pointer-events:auto;grid-template-rows:auto minmax(0,1fr);margin:0;position:fixed}.preview-content .plantuml-shell.is-maximized .plantuml-frame,.plantuml-maximized-root .plantuml-shell.is-maximized .plantuml-frame{height:100%;max-height:none}.comments-drawer{width:var(--preview-floating-comments-width,var(--panel-comments-width));min-width:var(--panel-comments-min-width);border-left:1px solid var(--color-divider);background:var(--surface-comment-shell);min-height:0;box-shadow:inset 1px 0 0 oklch(from var(--color-comment) l c h / .06);flex-direction:column;display:flex}.comments-drawer-header{padding:var(--space-4);border-bottom:1px solid var(--color-divider);background:var(--surface-comment-shell-header)}.comments-drawer-title{color:var(--color-comment);font-size:var(--text-label);letter-spacing:.06em;text-transform:uppercase;font-weight:700}.comments-drawer-empty{padding:var(--space-4);color:var(--color-text-muted);font-size:var(--text-label)}.comments-drawer-list{gap:var(--space-3);padding:var(--space-3);flex-direction:column;display:flex;overflow:auto}.comments-drawer-item{--ui-record-padding:var(--space-4);--ui-record-gap:var(--space-3);--ui-record-radius:calc(var(--radius-lg) + 4px);--ui-record-border:var(--border-comment-soft);--ui-record-bg:var(--surface-comment-record);--ui-record-border-hover:oklch(from var(--color-comment) l c h / .18);--ui-record-bg-hover:var(--surface-comment-record-hover);--ui-record-shadow-hover:var(--shadow-md);--ui-record-border-active:var(--border-comment-active);--ui-record-bg-active:var(--surface-comment-record-active);--ui-record-shadow-active:var(--shadow-comment-outline);--ui-record-hover-transform:translateY(-1px)}.comments-drawer-item-title{color:var(--color-comment);font-size:var(--text-meta);letter-spacing:.05em;text-transform:uppercase;font-weight:700}.comments-drawer-item-count{border:1px solid oklch(from var(--color-comment) l c h / .18);background:var(--color-comment-soft);min-height:20px;color:var(--color-comment);font-weight:700}.comments-drawer-item-quote{max-height:9.5rem;margin:var(--space-3) 0;overflow-wrap:anywhere;padding:var(--space-3);padding-bottom:calc(var(--space-3) + 2px);border:1px solid var(--border-comment-soft);border-radius:var(--radius-lg);background:var(--surface-comment-offset);color:var(--color-text-muted);white-space:pre-wrap;word-break:break-word;scrollbar-width:thin;font-family:var(--font-mono);font-size:var(--text-code-sm);line-height:1.65;overflow:auto}.comments-drawer-item-preview{max-height:7.8rem;color:var(--color-text-muted);position:relative;overflow:hidden}.comments-drawer-item-preview:after{content:"";background:var(--surface-comment-preview-fade);pointer-events:none;height:2.5rem;position:absolute;inset:auto 0 0}.comments-drawer-item-footer{color:var(--color-text-muted);font-size:var(--text-meta);letter-spacing:.01em;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;font-weight:600}.comments-drawer-item-updated{color:var(--color-text-faint)}.comment-editor-layer,.comment-preview-layer,.comment-preview-highlights{pointer-events:none;position:absolute;inset:0;overflow:visible}.comment-preview-badge{right:calc(var(--preview-comment-rail-inset) - var(--preview-comment-rail-offset,0px))}.comment-marker-icon{flex:none;width:12px;height:12px;display:inline-flex}.comment-marker-icon svg{width:100%;height:100%;display:block}.comment-marker-count{line-height:1}.comment-selection-chip{position:absolute}.comment-preview-highlight{border:1px solid oklch(from var(--color-comment) l c h / .16);border-radius:var(--radius-sm);background:var(--color-comment-soft);opacity:.56;transition:opacity .14s,background-color .14s,border-color .14s;position:absolute}.comment-preview-highlight.is-passive{opacity:.32}.comment-preview-highlight.is-hovered{opacity:.72;border-color:oklch(from var(--color-comment) l c h / .24);background:var(--surface-comment-highlight-hover)}.comment-preview-highlight.is-active{opacity:.9;border-color:oklch(from var(--color-comment) l c h / .3);background:var(--surface-comment-highlight-active)}.comment-card-root{z-index:50;position:fixed}.comment-card{gap:var(--space-3);width:min(100%,520px);max-height:min(78vh,720px);padding:var(--space-4);border:1px solid var(--border-comment-strong);border-radius:var(--radius-xl-plus);background:var(--surface-comment-card);box-shadow:var(--shadow-card-strong);flex-direction:column;animation:.14s cubic-bezier(.16,1,.3,1) comment-card-in;display:flex;overflow:hidden}.comment-card-header{flex-shrink:0}.comment-card-scroll{gap:var(--space-3);flex-direction:column;min-height:0;padding-right:2px;display:flex;overflow:auto}.comment-card-title{font-size:var(--text-title-sm);letter-spacing:-.01em;font-weight:700}.comment-card-meta{color:var(--color-comment);font-size:var(--text-meta);letter-spacing:.05em;text-transform:uppercase;margin-top:2px;font-weight:700}.comment-card-close,.comment-thread-card-action{background:var(--surface-comment-offset-soft);color:var(--color-text-muted);transition:color var(--transition-interactive), background var(--transition-interactive), border-color var(--transition-interactive);border:1px solid #0000}.comment-card-close:hover,.comment-thread-card-action:hover{color:var(--color-text);border-color:oklch(from var(--color-comment) l c h / .16)}.comment-thread-card-action.is-active{border-color:oklch(from var(--color-comment) l c h / .2);background:var(--surface-comment-offset-active);color:var(--color-text)}.comment-thread-card-action.is-danger{color:var(--color-error)}.comment-card-quote,.comment-thread-card-excerpt{padding:var(--space-2) var(--space-3);border:1px solid var(--border-comment-muted);border-radius:var(--radius-md);background:var(--surface-comment-offset);color:var(--color-text-muted);font-size:var(--text-label)}.comment-card-quote{overflow-wrap:anywhere;max-height:11rem;padding-bottom:calc(var(--space-3) + 2px);white-space:pre-wrap;word-break:break-word;scrollbar-width:thin;font-family:var(--font-mono);font-size:var(--text-code-sm);line-height:1.65;overflow:auto}.comment-card-form,.comment-reply-form{gap:var(--space-3);flex-direction:column;display:flex}.comment-card-actions{justify-content:flex-end}.comment-card-input{resize:vertical;min-height:88px}.comment-thread-card{gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--color-divider);flex-direction:column;display:flex}.comment-thread-card-header{flex-wrap:wrap;align-items:flex-start}.comment-thread-card-heading{gap:var(--space-1) var(--space-2);flex-wrap:wrap;flex:160px;min-width:0;display:flex}.comment-thread-card-author,.comment-message-card-author{font-size:var(--text-label);font-weight:700}.comment-thread-card-time,.comment-message-card-time{color:var(--color-text-faint);font-size:var(--text-meta)}.comment-thread-card-actions{justify-content:flex-end;margin-left:auto}.comment-message-card{padding:var(--space-2) var(--space-3);border:1px solid var(--border-comment-soft);border-radius:var(--radius-md);background:var(--surface-comment-subtle-strong)}.comment-message-card-body{margin-top:var(--space-1);font-size:var(--text-label);line-height:1.65}.comment-reaction-bar{justify-content:space-between;align-items:flex-start;gap:var(--space-2);margin-top:var(--space-2);flex-wrap:wrap;display:flex}.comment-reaction-chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.comment-reaction-actions{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.comment-reaction-chip-emoji,.comment-reaction-chip-count{line-height:1}.comment-reaction-picker-wrap{display:inline-flex;position:relative}.comment-reaction-picker{z-index:2;gap:var(--space-2);min-width:220px;padding:var(--space-3);border:1px solid var(--border-comment-strong);border-radius:var(--radius-lg);background:var(--surface-comment-elevated);box-shadow:var(--shadow-lg);scrollbar-width:thin;flex-direction:column;display:flex;position:absolute;top:calc(100% + 8px);right:0;overflow:auto}.comment-reaction-picker.is-upward{top:auto;bottom:calc(100% + 8px)}.comment-reaction-picker-grid{gap:var(--space-2);grid-template-columns:repeat(5,minmax(0,1fr));display:grid}@keyframes comment-card-in{0%{opacity:0;transform:translateY(6px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.comment-markdown{color:var(--color-text);font-size:var(--text-label);line-height:1.65}.comment-markdown>:first-child{margin-top:0}.comment-markdown>:last-child{margin-bottom:0}.comment-markdown p,.comment-markdown ul,.comment-markdown ol,.comment-markdown blockquote,.comment-markdown pre,.comment-markdown .comment-markdown-table,.comment-markdown table{max-width:none}.comment-markdown p,.comment-markdown ul,.comment-markdown ol,.comment-markdown blockquote,.comment-markdown pre,.comment-markdown .comment-markdown-table{margin:var(--space-2) 0}.comment-markdown li+li{margin-top:4px}.comment-markdown ul,.comment-markdown ol{padding-left:var(--space-5)}.comment-markdown a{color:var(--color-primary);overflow-wrap:anywhere;text-decoration:underline}.comment-markdown blockquote{padding:var(--space-2) var(--space-3);border-left:3px solid oklch(from var(--color-comment) l c h / .45);border-radius:0 var(--radius-md) var(--radius-md) 0;background:var(--surface-comment-offset-strong);color:var(--color-text-muted)}.comment-markdown code{border-radius:var(--radius-sm);background:var(--surface-comment-offset-soft);color:var(--color-primary);font-family:var(--font-mono);padding:2px 6px;font-size:.9em}.comment-markdown pre{border:1px solid var(--border-comment-muted);border-radius:var(--radius-lg);background:var(--surface-comment-elevated);max-width:100%;overflow:auto}.comment-markdown pre code{width:max-content;min-width:100%;padding:var(--space-3);color:var(--color-text);white-space:pre;font-size:var(--text-label);background:0 0;line-height:1.6;display:block}.comment-markdown .comment-markdown-table{border:1px solid var(--border-comment-muted);border-radius:var(--radius-md);overflow:auto}.comment-markdown table{border-collapse:collapse;width:100%}.comment-markdown th,.comment-markdown td{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-divider);text-align:left;font-size:var(--text-label)}.comment-markdown th{background:var(--surface-comment-offset)}.comment-markdown-preview>:not(pre):not(blockquote):not(.comment-markdown-table){-webkit-line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.comment-markdown-preview pre code{width:100%;min-width:0;max-height:6.6rem;overflow:hidden}.comment-markdown-preview .comment-markdown-table,.backlinks-panel.hidden,.backlinks-panel-layer.hidden{display:none}.backlinks-panel{min-width:0}.backlinks-panel-layer{left:max(var(--space-4), calc((100% - min(var(--preview-content-max-width), 100%)) / 2));bottom:calc(var(--space-5) + env(safe-area-inset-bottom,0px));z-index:14;width:min(320px, calc(min(var(--preview-content-max-width), 100%) - var(--space-8)));pointer-events:none;position:absolute}.backlinks-panel-dock{border:1px solid var(--color-divider);border-radius:var(--radius-xl-plus);background:var(--surface-overlay);box-shadow:var(--shadow-floating-soft);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);pointer-events:auto;flex-direction:column-reverse;transition:box-shadow .16s,transform .16s,background-color .16s,border-color .16s;display:flex;overflow:hidden}.backlinks-panel-dock:hover{box-shadow:var(--shadow-floating-hover);transform:translateY(-1px)}.backlinks-panel-inline{margin-top:var(--space-6);padding:0 var(--space-4);border-top:1px solid var(--color-divider)}.backlinks-header{justify-content:flex-start;align-items:center;gap:var(--space-2);width:100%;padding:var(--space-3) 0;cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--color-text-muted);text-align:left;transition:color var(--transition-interactive);font-size:var(--text-sm);background:0 0;border:none;font-weight:600;display:flex}.backlinks-header:hover{color:var(--color-text)}.backlinks-panel-dock .backlinks-header{background:var(--surface-overlay-header);padding:11px 14px}.backlinks-header-empty{cursor:default;opacity:.5}.backlinks-header-empty:hover{color:var(--color-text-muted)}.backlinks-chevron{transition:transform var(--transition-interactive);flex-shrink:0}.backlinks-panel.expanded .backlinks-chevron{transform:rotate(90deg)}.backlinks-toggle{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.backlinks-count{border-radius:var(--radius-full);background:var(--interactive-surface);min-width:22px;color:var(--color-primary);text-align:center;font-size:var(--text-xs);padding:1px 7px;font-weight:600}.backlinks-count:empty{display:none}.backlinks-body{max-height:0;transition:max-height .2s;overflow:hidden}.backlinks-panel-inline.expanded .backlinks-body{max-height:600px;overflow-y:auto}.backlinks-panel-dock .backlinks-body{background:var(--surface-overlay-raised)}.backlinks-panel-dock.expanded .backlinks-body{border-bottom:1px solid var(--border-accent-soft);max-height:min(44vh,400px);overflow-y:auto}.backlinks-panel-dock.expanded{border-color:var(--border-accent-muted);background:var(--surface-overlay-strong)}.backlinks-list{gap:var(--space-2);padding-bottom:var(--space-4);flex-direction:column;display:flex}.backlinks-panel-dock .backlinks-list{padding:10px}.backlink-item{width:100%;padding:var(--space-3);border:1px solid var(--color-divider);border-radius:var(--radius-md);background:var(--color-surface);text-align:left;cursor:pointer;transition:border-color var(--transition-interactive), background var(--transition-interactive);display:block}.backlinks-panel-dock .backlink-item{border-radius:var(--radius-lg);background:var(--surface-overlay-soft)}.backlink-item:hover{border-color:var(--color-primary);background:oklch(from var(--color-primary) l c h / .04)}.backlink-item:focus-visible{box-shadow:var(--shadow-focus-compact);outline:none}.backlink-file-name{align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);color:var(--color-text);font-size:var(--text-sm);font-weight:600;display:flex}.backlink-icon{color:var(--color-text-muted);flex-shrink:0}.backlink-dir{color:var(--color-text-faint);font-size:var(--text-xs);margin-left:auto;font-weight:400}.backlink-context{color:var(--color-text-muted);text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-xs);padding-left:22px;line-height:1.6;overflow:hidden}.backlink-more{color:var(--color-text-faint);font-style:italic}@media (width>=769px){.backlinks-panel-inline{display:none!important}}.outline-panel{width:var(--preview-floating-outline-width,var(--panel-outline-width));border-left:1px solid var(--color-divider);background:var(--color-surface-offset);flex-direction:column;flex-shrink:0;transition:width .2s cubic-bezier(.16,1,.3,1),opacity .15s;display:flex;overflow:hidden}.outline-panel.hidden{opacity:0;pointer-events:none;border-left:none;width:0}.outline-header{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-divider);flex-shrink:0}.outline-title{color:var(--color-text-muted);font-size:var(--text-meta);letter-spacing:.05em;text-transform:uppercase;font-weight:600}.outline-nav{padding:var(--space-2) 0;flex:1;overflow:hidden auto}.outline-nav::-webkit-scrollbar{width:4px}.outline-nav::-webkit-scrollbar-thumb{background:var(--color-surface-dynamic);border-radius:var(--radius-full)}.outline-item{width:100%;padding:3px var(--space-3);color:var(--color-text-muted);text-align:left;white-space:nowrap;text-overflow:ellipsis;cursor:pointer;transition:color var(--transition-interactive), border-color var(--transition-interactive), background var(--transition-interactive);font-family:var(--font-body);font-size:var(--text-label);background:0 0;border:none;border-left:2px solid #0000;line-height:1.5;display:block;overflow:hidden}.outline-item:hover{color:var(--color-text);background:var(--color-surface-dynamic)}.outline-item.active{border-left-color:var(--color-primary);background:oklch(from var(--color-primary) l c h / .06);color:var(--color-primary)}.outline-item[data-level="1"]{padding-left:var(--space-3);font-weight:600}.outline-item[data-level="2"]{padding-left:calc(var(--space-3) + 12px)}.outline-item[data-level="3"]{padding-left:calc(var(--space-3) + 24px);font-size:var(--text-meta)}.outline-item[data-level="4"]{padding-left:calc(var(--space-3) + 36px);font-size:var(--text-meta)}.outline-item[data-level="5"]{padding-left:calc(var(--space-3) + 48px);font-size:var(--text-meta)}.outline-item[data-level="6"]{padding-left:calc(var(--space-3) + 60px);font-size:var(--text-meta)}.outline-empty{padding:var(--space-4) var(--space-3);color:var(--color-text-faint);font-size:var(--text-label);font-style:italic}.editor-layout[data-view=editor] .preview-pane,.editor-layout[data-view=editor] .resizer,.editor-layout[data-view=preview] .editor-pane,.editor-layout[data-view=preview] .resizer{display:none}.editor-layout[data-view=preview] .preview-pane{flex:1}.editor-layout[data-view=preview] .preview-body{--preview-content-max-width:1080px}.editor-layout[data-view=preview] .preview-content{max-width:1080px}.editor-layout[data-view=preview] .preview-content.is-excalidraw-file-preview,.editor-layout[data-view=preview] .preview-content.is-drawio-file-preview,.editor-layout[data-view=preview] .preview-content.is-image-file-preview,.editor-layout[data-view=preview] .preview-content.is-mermaid-file-preview,.editor-layout[data-view=preview] .preview-content.is-plantuml-file-preview{max-width:none}.editor-layout[data-view=preview] .preview-content p{max-width:84ch}:is(.editor-layout[data-view=preview] .preview-content p:has(>.excalidraw-embed-placeholder:only-child),.editor-layout[data-view=preview] .preview-content p:has(>.video-embed-placeholder:only-child),.editor-layout[data-view=preview] .preview-content p:has(>.mermaid-shell:only-child),.editor-layout[data-view=preview] .preview-content p:has(>.plantuml-shell:only-child)){max-width:none}@media (width>=769px){.preview-body>.comments-drawer,.preview-body>.outline-panel{top:var(--preview-floating-sidebar-gap);right:var(--preview-floating-sidebar-gap);bottom:var(--preview-floating-sidebar-gap);z-index:20;border:1px solid var(--color-divider);border-radius:calc(var(--radius-lg) + 2px);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);position:absolute;overflow:hidden}.preview-body>.comments-drawer{width:var(--preview-floating-comments-width);border-left:1px solid var(--color-divider);min-width:240px}.preview-body>.outline-panel{width:var(--preview-floating-outline-width);border-left:1px solid var(--color-divider)}.preview-body>.comments-drawer.hidden,.preview-body>.outline-panel.hidden{opacity:0;pointer-events:none;visibility:hidden;transform:translate(12px);display:flex!important}.preview-body>.comments-drawer:not(.hidden),.preview-body>.outline-panel:not(.hidden){opacity:1;visibility:visible;transform:translate(0)}.preview-body:has(>.outline-panel:not(.hidden))>.comments-drawer:not(.hidden){right:calc(var(--preview-floating-sidebar-gap) * 2 + var(--preview-floating-outline-width))}}.editor-layout[data-view=editor] .editor-pane{flex:1}.toast-container{right:var(--space-4);bottom:var(--space-4);z-index:100;gap:var(--space-2);pointer-events:none;flex-direction:column;display:flex;position:fixed}.toast{max-width:320px;padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-2);color:var(--color-text);box-shadow:var(--shadow-md);font-size:var(--text-xs);pointer-events:auto;opacity:1;align-items:center;gap:var(--space-3);transition:opacity .3s cubic-bezier(.16, 1, .3, 1), transform .3s cubic-bezier(.16, 1, .3, 1), display .3s cubic-bezier(.16, 1, .3, 1) allow-discrete;display:flex;transform:translate(0)scale(1)}.toast__message{flex:auto;min-width:0}.toast__action,.toast__dismiss{color:inherit;font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;padding:0;font-weight:600}.toast__action{color:var(--color-primary)}.toast__dismiss{opacity:.72}@starting-style{.toast{opacity:0;transform:translate(8px)scale(.96)}}.toast.leaving{opacity:0;pointer-events:none;transform:translate(8px)scale(.96)}@media (width<=768px){.input,.sidebar-search-input,.qs-input,.chat-input{font-size:16px}.editor-container .cm-editor{font-size:15px}.sidebar{z-index:100;box-shadow:var(--shadow-lg);position:fixed;top:0;bottom:0;left:0}.sidebar.collapsed,.ui-toolbar-button-label,.toolbar-center{display:none}.mobile-view-toggle{display:flex!important}.ui-toolbar-button--name{max-width:none}.toolbar{gap:var(--space-1);padding:0 var(--space-2)}.toolbar-left{gap:var(--space-1);min-width:0}.toolbar-room-info{gap:var(--space-1)}.toolbar-room-name{max-width:min(38vw,140px);font-size:var(--text-xs)}.toolbar-badge{text-overflow:ellipsis;max-width:68px;overflow:hidden}.toolbar-presence-cluster{align-items:center;min-width:0;display:inline-flex}.toolbar-presence-cluster .user-avatar{border-width:1.5px;width:22px;height:22px;margin-left:-3px}.toolbar-presence-cluster .user-avatar.is-local{gap:0;width:22px;min-width:22px;margin-right:0;padding:0}.toolbar-presence-cluster .user-avatar.is-local .user-avatar-initial{width:auto;height:auto;font-size:var(--text-meta);background:0 0}.toolbar-presence-cluster .user-avatar-self-label{display:none}.toolbar-overflow-toggle{display:inline-flex}.toolbar-overflow-menu{z-index:14;border:1px solid var(--color-border);background:oklch(from var(--color-surface) l c h / .98);width:min(212px,100vw - 20px);box-shadow:var(--shadow-lg);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-radius:18px;flex-direction:column;align-items:stretch;gap:0;padding:4px;display:none;position:absolute;top:calc(100% + 6px);right:0}.toolbar-right.is-overflow-open .toolbar-overflow-menu{display:flex}.toolbar-overflow-menu .ui-toolbar-button,.toolbar-overflow-menu .chat-container{width:100%}.toolbar-overflow-menu .ui-toolbar-button-label{text-align:left;flex:1;min-width:0;display:inline}.toolbar-overflow-menu .toolbar-theme-button .ui-toolbar-button-label{display:inline!important}.toolbar-overflow-menu .ui-toolbar-button{border-radius:12px;justify-content:flex-start;gap:8px;min-height:36px;padding:0 10px}.toolbar-overflow-menu .toolbar-theme-button{background:var(--color-surface-offset);width:100%;min-width:0;color:var(--color-text);margin-top:0;padding:0 10px}.toolbar-overflow-menu .toolbar-theme-button:hover{background:var(--color-surface-dynamic)}.toolbar-overflow-menu .toolbar-theme-button .toolbar-theme-state{display:inline-flex!important}.toolbar-overflow-menu .toolbar-theme-state[data-theme=dark]{background:var(--color-surface-dynamic);color:var(--color-text)}.toolbar-overflow-menu .toolbar-theme-state[data-theme=light]{background:var(--color-primary-highlight);color:var(--color-primary)}.sidebar-close-btn{display:inline-flex}.ui-nav-tabs{padding:0 var(--space-1)}.ui-nav-tab{padding:var(--space-2)}.editor-layout{flex-direction:column}.resizer{display:none!important}.editor-layout[data-view=split] .preview-pane{display:none}.editor-layout[data-view=split] .editor-pane{flex:1}.preview-content{padding:var(--space-4)}.backlinks-panel-layer{display:none!important}.diff-toolbar{padding:var(--space-2) var(--space-3);flex-wrap:wrap}.diff-toolbar-left,.diff-toolbar-right{justify-content:space-between;width:100%}.diff-toolbar-left{flex-wrap:wrap}.diff-toolbar-actions{justify-content:space-between;width:100%}.diff-toolbar-actions-group-git{flex:1}.diff-toolbar-actions-group-git .ui-action-button{flex:1;min-width:0}.diff-toolbar-actions-divider{display:none}.diff-mode-btn{min-width:74px}.diff-layout-btn{min-width:78px}.diff-split-row{grid-template-columns:1fr}.diff-commit-shell{padding:var(--space-3);grid-template-columns:1fr}.diff-commit-index{max-height:none;position:static}.diff-commit-section-header{flex-direction:column;align-items:flex-start}.diff-commit-section-meta{justify-content:flex-start;width:100%}.diff-split-line:first-child{border-right:none;border-bottom:1px solid var(--color-divider)}.markdown-toolbar{scrollbar-width:thin;flex-wrap:nowrap;overflow-x:auto}.markdown-toolbar-popover{max-width:min(240px,100vw - 24px)}.outline-panel{border-top:1px solid var(--color-divider);background:oklch(from var(--color-surface) l c h / .98);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:auto;box-shadow:var(--shadow-lg);z-index:6;border-left:none;position:absolute;inset:0}.outline-panel.hidden{display:none!important}.comments-drawer{border-left:none;border-top:1px solid var(--color-divider);background:oklch(from var(--color-surface) l c h / .98);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:auto;min-width:0;box-shadow:var(--shadow-lg);z-index:6;position:absolute;inset:0}.comments-drawer.hidden{display:none!important}#outlineToggle{display:inline-flex!important}.chat-panel{top:calc(var(--toolbar-h) + var(--space-2));right:var(--space-2);left:var(--space-2);width:auto;max-height:calc(100vh - var(--toolbar-h) - var(--space-6));position:fixed}.chat-form{align-items:stretch}.chat-send-btn{padding-inline:var(--space-3)}.comment-card{width:min(100vw - 32px,520px);max-height:min(72vh,680px)}.comment-thread-card-actions{justify-content:flex-start;width:100%;margin-left:0}.comment-reaction-picker{min-width:min(240px,100vw - 64px);left:0;right:auto}.excalidraw-embed.is-maximized,.drawio-embed.is-maximized{inset:var(--space-3);width:auto}.excalidraw-embed.is-maximized .excalidraw-embed-iframe{height:auto!important}.drawio-embed.is-maximized .drawio-embed-iframe{height:auto}.image-lightbox-toolbar{top:var(--space-3);left:var(--space-3);right:var(--space-3);flex-direction:column;align-items:flex-start}.image-lightbox-controls{justify-content:flex-start}.image-lightbox-btn{flex:none}.image-lightbox-image{max-width:calc(100vw - (var(--space-4) * 2));max-height:calc(100vh - (var(--space-4) * 2))}}@media (width>=769px){.mobile-view-toggle{display:none!important}}[data-theme=light] .preview-content pre,[data-theme=light] .preview-content pre code,[data-theme=light] .hljs{background:var(--color-surface)!important}.cm-tooltip-autocomplete{font-family:var(--font-body);font-size:var(--text-sm);overflow:hidden;border:1px solid var(--color-divider)!important;border-radius:var(--radius-md)!important;background:var(--color-surface)!important;box-shadow:var(--shadow-md)!important}.cm-tooltip-autocomplete>ul{padding:var(--space-1) 0;max-height:240px!important}.cm-tooltip-autocomplete>ul>li{align-items:center;gap:var(--space-2);line-height:1.4;display:flex;padding:var(--space-2) var(--space-3)!important}.cm-tooltip-autocomplete>ul>li[aria-selected]{background:var(--color-primary)!important;color:var(--color-text-inverse)!important}.cm-tooltip-autocomplete .cm-completionLabel{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.cm-tooltip-autocomplete .cm-completionDetail{color:inherit;opacity:.6;white-space:nowrap;font-size:var(--text-xs);margin-left:auto}.cm-tooltip-autocomplete>ul>li[aria-selected] .cm-completionDetail{opacity:.85}.cm-completionIcon-text:after{content:"📄";font-size:var(--text-ui-sm)}.qs-overlay{z-index:9999;background:var(--surface-scrim);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;visibility:hidden;transition:opacity .12s ease, visibility .12s ease, display .12s ease allow-discrete;justify-content:center;padding-top:min(20vh,160px);display:flex;position:fixed;inset:0}.qs-overlay.visible{opacity:1;visibility:visible}@starting-style{.qs-overlay.visible{opacity:0}}.qs-modal{border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);width:min(560px,100vw - 32px);max-height:min(440px,60vh);box-shadow:var(--shadow-lg);flex-direction:column;transition:transform .12s cubic-bezier(.16,1,.3,1);display:flex;overflow:hidden;transform:translateY(-8px)scale(.98)}.qs-overlay.visible .qs-modal{transform:translateY(0)scale(1)}@starting-style{.qs-overlay.visible .qs-modal{transform:translateY(-8px)scale(.98)}}.qs-input-wrap{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--color-divider);display:flex}.qs-search-icon{color:var(--color-text-muted);flex-shrink:0}.qs-input{color:var(--color-text);font-size:var(--text-sm);font-family:var(--font-body);background:0 0;border:none;outline:none;flex:1;line-height:1.5}.qs-input::placeholder{color:var(--color-text-faint)}.qs-kbd{border:1px solid var(--color-divider);border-radius:var(--radius-sm);background:var(--color-surface-offset);color:var(--color-text-muted);font-family:var(--font-body);font-size:var(--text-meta);letter-spacing:.03em;text-transform:uppercase;flex-shrink:0;padding:3px 6px;line-height:1}.qs-results{overscroll-behavior:contain;padding:var(--space-1) 0;overflow-y:auto}.qs-result-item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-4);color:var(--color-text);font-size:var(--text-sm);font-family:var(--font-body);text-align:left;cursor:pointer;background:0 0;border:none;transition:background 60ms;display:flex}.qs-result-item:hover,.qs-result-item.selected{background:var(--color-surface-offset)}.qs-result-item.selected{background:var(--color-primary-highlight)}[data-theme=dark] .qs-result-item.selected{background:oklch(from var(--color-primary) l c h / .18)}.qs-result-icon{color:var(--color-text-muted);flex-shrink:0}.qs-result-name{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.qs-result-name mark{border-radius:var(--radius-2xs);background:oklch(from var(--color-primary) l c h / .2);color:var(--color-primary);padding:0 1px}.qs-result-path{max-width:200px;color:var(--color-text-faint);text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-xs);flex-shrink:0;overflow:hidden}.qs-hint{padding:var(--space-4);color:var(--color-text-muted);text-align:center;font-size:var(--text-xs)}.qs-hint.hidden{display:none}.diagram-preview-shell{box-sizing:border-box;width:100%;max-width:100%;margin:var(--space-4) 0;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);overflow:hidden}.diagram-preview-placeholder-card{justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-4);background:var(--color-surface);display:flex}.diagram-preview-placeholder-copy{gap:2px;display:grid}.diagram-preview-placeholder-copy strong{font-size:var(--text-sm)}.diagram-preview-placeholder-copy span{color:var(--color-text-muted);font-size:var(--text-xs)}.diagram-preview-placeholder-btn{border:1px solid var(--color-border);border-radius:var(--radius-xs);background:var(--color-surface-2);color:var(--color-text);font-size:var(--text-xs);cursor:pointer;flex-shrink:0;padding:4px 10px}.diagram-preview-placeholder-btn:hover{background:var(--color-surface-offset)}.diagram-preview-toolbar{align-items:center;gap:var(--space-2);min-width:0;padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);background:var(--color-surface-raised);color:var(--color-text-muted);font-size:var(--text-xs);-webkit-user-select:none;user-select:none;flex-wrap:wrap;display:flex}.diagram-preview-zoom-label{min-width:52px;color:var(--color-text-muted);text-align:center;font-size:var(--text-xs);font-variant-numeric:tabular-nums;font-weight:500}.diagram-preview-frame{min-width:0;max-width:100%;max-height:min(70vh,720px);padding:var(--space-3);overscroll-behavior:contain;background:0 0;overflow:auto}.excalidraw-embed,.excalidraw-embed-placeholder,.drawio-embed,.drawio-embed-placeholder{transition:box-shadow .18s;display:block}.drawio-embed{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);width:100%;max-width:none;overflow:hidden}.drawio-embed.is-direct-file{flex:1}.drawio-embed.is-static-preview{flex-direction:column;display:flex}.drawio-embed:hover{box-shadow:var(--shadow-elevated-soft)}.drawio-embed-header{gap:var(--space-2)}.drawio-embed-icon{color:var(--color-primary);flex-shrink:0;align-items:center;display:flex}.drawio-embed-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:500;overflow:hidden}.drawio-embed-btn{border:1px solid var(--color-border);border-radius:var(--radius-xs);background:var(--color-surface-2);color:var(--color-text);font-size:var(--text-xs);cursor:pointer;flex-shrink:0;padding:4px 10px}.drawio-embed-iframe{background:0 0;border:0;width:100%;min-height:420px}.drawio-embed-image-shell{background:var(--surface-embed-canvas);cursor:pointer;border:0;justify-content:center;align-items:stretch;width:100%;padding:0;display:flex}.drawio-embed-image{background:0 0;width:100%;height:auto;display:block}.drawio-export-iframe{opacity:0;pointer-events:none;border:0;width:0;height:0;position:absolute}.drawio-viewer-shell{background:var(--surface-embed-canvas);justify-content:center;width:100%;min-height:220px;display:flex;overflow:hidden}.drawio-viewer-frame{background:var(--surface-embed-canvas);cursor:pointer;justify-content:center;width:100%;min-height:220px;display:flex}.drawio-viewer-frame svg,.drawio-viewer-frame iframe,.drawio-viewer-frame>div{max-width:100%;margin-left:auto;margin-right:auto}.drawio-viewer-frame svg{margin-left:auto;margin-right:auto;display:block}.drawio-maximized-root{z-index:171;pointer-events:none;position:fixed;inset:0}body.drawio-maximized-open{overflow:hidden}body.drawio-maximized-open:before{content:"";z-index:170;background:var(--surface-scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);position:fixed;inset:0}.drawio-maximized-root .drawio-embed.is-maximized{pointer-events:auto}.drawio-embed.is-maximized{inset:var(--space-4);z-index:172;box-sizing:border-box;border-radius:var(--radius-lg-plus);width:auto;max-width:none;box-shadow:var(--shadow-media-modal);flex-direction:column;margin:0;display:flex;position:fixed}.drawio-embed.is-maximized .drawio-embed-header{flex-shrink:0}.drawio-embed.is-maximized .drawio-embed-iframe,.drawio-embed.is-maximized .drawio-viewer-shell,.drawio-embed.is-maximized .drawio-viewer-frame{flex:1;height:100%;min-height:0}.drawio-embed.is-maximized .drawio-viewer-shell{align-items:stretch}.excalidraw-embed-overlay-root{z-index:1;pointer-events:none;position:absolute;inset:0}.excalidraw-maximized-root{z-index:171;pointer-events:none;position:fixed;inset:0}body.excalidraw-maximized-open{overflow:hidden}body.excalidraw-maximized-open:before{content:"";z-index:170;background:var(--surface-scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);position:fixed;inset:0}body.excalidraw-maximized-open .excalidraw-maximized-root{z-index:171}body.excalidraw-maximized-open .resizer{opacity:0;pointer-events:none}.excalidraw-embed:hover{box-shadow:var(--shadow-elevated-soft)}.excalidraw-embed-placeholder.is-hydrated{visibility:hidden}.excalidraw-embed-header{gap:var(--space-2)}.excalidraw-embed-icon{color:var(--color-primary);flex-shrink:0;align-items:center;display:flex}.excalidraw-embed-label{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:500;overflow:hidden}.excalidraw-embed-iframe{background:var(--surface-embed-canvas);border:none;width:100%;min-height:200px;display:block}.excalidraw-embed.is-maximized{inset:var(--space-4);z-index:172;box-sizing:border-box;border-radius:var(--radius-lg-plus);width:auto;max-width:none;box-shadow:var(--shadow-media-modal);flex-direction:column;margin:0;display:flex;position:fixed}.excalidraw-embed.is-maximized .excalidraw-embed-header{flex-shrink:0}.excalidraw-embed.is-maximized .excalidraw-embed-iframe{flex:1;min-height:0;height:auto!important}.excalidraw-embed.is-maximized .excalidraw-embed-resizer{display:none}.excalidraw-embed-resizer{background:var(--color-border);cursor:ns-resize;height:6px;transition:background .18s;position:relative}.excalidraw-embed-resizer:after{content:"";border-radius:var(--radius-2xs);background:var(--color-text-faint);opacity:0;width:32px;height:3px;transition:opacity .18s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.excalidraw-embed-resizer:hover{background:var(--color-primary)}.excalidraw-embed-resizer:hover:after{opacity:1}.file-tree-file.is-excalidraw .file-tree-icon{color:var(--color-primary)}.file-tree-file.is-mermaid .file-tree-icon{color:oklch(from var(--color-primary) calc(l * .96) calc(c * .86) 215)}