.toast-container{position:fixed;bottom:24px;right:24px;z-index:9999;display:flex;flex-direction:column-reverse;gap:8px;pointer-events:none;max-width:380px}.toast-item{pointer-events:auto;display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:8px;background:var(--ui-surface-elevated);border:1px solid var(--ui-border);box-shadow:var(--ui-shadow);font-size:13px;color:var(--ui-text);backdrop-filter:blur(12px)}.toast-success{border-left:3px solid var(--ui-success)}.toast-error{border-left:3px solid var(--ui-danger)}.toast-info{border-left:3px solid var(--ui-info)}.toast-success .toast-message{color:var(--ui-success-foreground)}.toast-error .toast-message{color:var(--ui-danger-foreground)}.toast-info .toast-message{color:var(--ui-info-foreground)}.toast-message{flex:1;line-height:1.4}.toast-close{flex-shrink:0;width:22px;height:22px;border:none;background:transparent;color:var(--ui-text-secondary);font-size:16px;cursor:pointer;border-radius:4px;display:flex;align-items:center;justify-content:center;padding:0}.toast-close:hover{color:var(--ui-text);background:var(--ui-surface-subtle)}.toast-enter-active{transition:all .3s ease}.toast-leave-active{transition:all .25s ease}.toast-enter-from,.toast-leave-to{opacity:0;transform:translate(40px)}.toast-move{transition:transform .3s ease}#app{width:100vw;height:100vh;overflow:hidden;background:var(--ui-page);color:var(--ui-text)}*{margin:0;padding:0;box-sizing:border-box}:root,:root[data-theme=dark]{--ui-page: #1f2128;--ui-surface: rgba(0, 42, 0, .5);--ui-surface-solid: #171a19;--ui-surface-elevated: rgba(0, 32, 0, .94);--ui-surface-subtle: rgba(255, 255, 255, .05);--ui-canvas: #17181f;--ui-text: #f8fff8;--ui-text-secondary: #d6f2d6;--ui-text-muted: #a8c6a8;--ui-border: #313442;--ui-overlay: rgba(0, 0, 0, .64);--ui-shadow: 0 18px 50px rgba(0, 0, 0, .34);--ui-brand: #00ff00;--ui-accent-strong: #8cff8c;--ui-brand-on: #071307;--ui-brand-soft: rgba(0, 255, 0, .12);--ui-brand-soft-on: #f8fff8;--ui-success: #44cf6e;--ui-success-foreground: #44cf6e;--ui-success-soft: rgba(68, 207, 110, .14);--ui-warning: #e0de71;--ui-warning-foreground: #e0de71;--ui-warning-soft: rgba(224, 222, 113, .14);--ui-info: #53dfdd;--ui-info-foreground: #53dfdd;--ui-info-soft: rgba(83, 223, 221, .14);--ui-danger: #fb464c;--ui-danger-foreground: #fb464c;--ui-danger-soft: rgba(251, 70, 76, .14);--ui-danger-on: #071307;--ui-focus: #8cff8c;--ui-focus-on: #071307;--content-canvas-group-surface: rgba(255, 255, 255, .03);--content-canvas-group-border: rgba(255, 255, 255, .35);--content-canvas-group-label: rgba(255, 255, 255, .62);--content-canvas-edge: rgba(255, 255, 255, .42);--content-canvas-edge-arrow: rgba(255, 255, 255, .5);--content-canvas-edge-label-surface: rgba(30, 30, 30, .85);--content-canvas-edge-label-border: rgba(255, 255, 255, .12);--content-canvas-edge-label-text: rgba(255, 255, 255, .75);--content-canvas-group-1-border: rgba(251, 70, 76, .45);--content-canvas-group-1-surface: rgba(251, 70, 76, .06);--content-canvas-group-1-label: #fb464c;--content-canvas-group-2-border: rgba(233, 151, 63, .45);--content-canvas-group-2-surface: rgba(233, 151, 63, .06);--content-canvas-group-2-label: #e9973f;--content-canvas-group-3-border: rgba(224, 222, 113, .45);--content-canvas-group-3-surface: rgba(224, 222, 113, .06);--content-canvas-group-3-label: #e0de71;--content-canvas-group-4-border: rgba(68, 207, 110, .45);--content-canvas-group-4-surface: rgba(68, 207, 110, .06);--content-canvas-group-4-label: #44cf6e;--content-canvas-group-5-border: rgba(83, 223, 221, .45);--content-canvas-group-5-surface: rgba(83, 223, 221, .06);--content-canvas-group-5-label: #53dfdd;--content-canvas-group-6-border: rgba(168, 130, 255, .45);--content-canvas-group-6-surface: rgba(168, 130, 255, .06);--content-canvas-group-6-label: #a882ff;--ui-minimap-node: rgba(255, 255, 255, .45);--ui-minimap-group: rgba(255, 255, 255, .12);--ui-minimap-viewport-fill: rgba(124, 138, 255, .12);--ui-minimap-viewport-stroke: #7c8aff;--content-document-surface: #191b20;--content-document-surface-readonly: #17191d;--content-document-text: #f8fafc;--content-document-text-muted: #94a3b8;--content-document-border: rgba(255, 255, 255, .1);--content-document-link: #7dd3fc;--content-document-slash-query-bg: rgba(0, 255, 0, .14);--content-document-slash-query-text: #f8fff8;--content-code-surface: rgba(255, 255, 255, .04);--content-code-border: rgba(255, 255, 255, .08);--content-code-comment: #8b949e;--content-code-keyword: #ff7b72;--content-code-string: #a5d6ff;--content-code-number: #f2cc60;--content-code-function: #d2a8ff;--content-code-punctuation: #c9d1d9;--content-callout-info-accent: #53dfdd;--content-callout-info-surface: rgba(83, 223, 221, .1);--content-callout-info-border: rgba(83, 223, 221, .4);--content-callout-warning-accent: #e0de71;--content-callout-warning-surface: rgba(224, 222, 113, .1);--content-callout-warning-border: rgba(224, 222, 113, .4);--content-callout-success-accent: #6fdc8c;--content-callout-success-surface: rgba(111, 220, 140, .1);--content-callout-success-border: rgba(111, 220, 140, .4);--content-callout-danger-accent: #ff8a8f;--content-callout-danger-surface: rgba(255, 138, 143, .1);--content-callout-danger-border: rgba(255, 138, 143, .4);--content-canvas-node-surface: #262626;--content-canvas-node-border: rgba(255, 255, 255, .1);--content-canvas-node-border-hover: rgba(255, 255, 255, .2);--content-canvas-node-shadow: 0 2px 12px rgba(0, 0, 0, .4);--content-canvas-node-text: rgba(255, 255, 255, .85);--content-canvas-node-text-muted: rgba(255, 255, 255, .6);--content-canvas-code-bg: rgba(255, 255, 255, .08);--content-canvas-link: #7c8aff;--content-canvas-callout-text: rgba(255, 255, 255, .7);--content-canvas-editor-surface: rgba(0, 0, 0, .2);--content-canvas-editor-text: rgba(255, 255, 255, .9);--content-canvas-image-title: rgba(255, 255, 255, .82);--content-canvas-selection: #4dabf7;--content-canvas-node-text-1: #fb464c;--content-canvas-node-text-2: #e9973f;--content-canvas-node-text-3: #e0de71;--content-canvas-node-text-4: #44cf6e;--content-canvas-node-text-5: #53dfdd;--content-canvas-node-text-6: #a882ff;--content-interactive-surface: #171a19;--content-interactive-surface-subtle: #1e2421;--content-interactive-input: #222825;--content-interactive-border: #354039;--content-interactive-border-strong: #435248;--content-interactive-text: #edf5ef;--content-interactive-text-muted: #aab7ae;--content-interactive-accent: #77ee9a;--content-interactive-accent-strong: #baf5c7;--content-interactive-accent-soft: #1d3924;--content-interactive-shadow: 0 8px 25px rgba(0, 0, 0, .28);color-scheme:dark}:root[data-theme=light]{--ui-page: #f5f7f4;--ui-surface: #ffffff;--ui-surface-solid: #ffffff;--ui-surface-elevated: #ffffff;--ui-surface-subtle: #f4f6f3;--ui-canvas: #eef2ee;--ui-text: #172019;--ui-text-secondary: #667269;--ui-text-muted: #98a39a;--ui-border: #dce3dd;--ui-overlay: rgba(23, 32, 25, .34);--ui-shadow: 0 18px 50px rgba(26, 48, 31, .12);--ui-brand: #20cf45;--ui-accent-strong: #145b25;--ui-brand-on: #06220c;--ui-brand-soft: #ddf7e2;--ui-brand-soft-on: #172019;--ui-success: #23864a;--ui-success-foreground: #176334;--ui-success-soft: #e0f5e7;--ui-warning: #8a6f00;--ui-warning-foreground: #695400;--ui-warning-soft: #fff3c0;--ui-info: #117d88;--ui-info-foreground: #0b626b;--ui-info-soft: #dff7fa;--ui-danger: #c9343d;--ui-danger-foreground: #9e2630;--ui-danger-soft: #fae4e6;--ui-danger-on: #ffffff;--ui-focus: #145b25;--ui-focus-on: #ffffff;--content-canvas-group-surface: rgba(23, 32, 25, .03);--content-canvas-group-border: rgba(23, 32, 25, .5);--content-canvas-group-label: #465049;--content-canvas-edge: rgba(23, 32, 25, .6);--content-canvas-edge-arrow: rgba(23, 32, 25, .7);--content-canvas-edge-label-surface: #ffffff;--content-canvas-edge-label-border: #dce3dd;--content-canvas-edge-label-text: #172019;--content-canvas-group-1-border: rgba(180, 30, 40, .72);--content-canvas-group-1-surface: rgba(201, 52, 61, .08);--content-canvas-group-1-label: #a82028;--content-canvas-group-2-border: rgba(155, 80, 0, .82);--content-canvas-group-2-surface: rgba(184, 107, 18, .08);--content-canvas-group-2-label: #8a4e00;--content-canvas-group-3-border: rgba(115, 105, 0, .88);--content-canvas-group-3-surface: rgba(138, 133, 10, .08);--content-canvas-group-3-label: #6b6600;--content-canvas-group-4-border: rgba(20, 110, 50, .8);--content-canvas-group-4-surface: rgba(35, 134, 74, .08);--content-canvas-group-4-label: #176334;--content-canvas-group-5-border: rgba(10, 105, 115, .8);--content-canvas-group-5-surface: rgba(17, 125, 136, .08);--content-canvas-group-5-label: #0b626b;--content-canvas-group-6-border: rgba(95, 60, 185, .75);--content-canvas-group-6-surface: rgba(112, 78, 204, .08);--content-canvas-group-6-label: #5028aa;--ui-minimap-node: rgba(23, 32, 25, .55);--ui-minimap-group: rgba(23, 32, 25, .18);--ui-minimap-viewport-fill: rgba(75, 87, 201, .12);--ui-minimap-viewport-stroke: #4b57c9;--content-document-surface: #ffffff;--content-document-surface-readonly: #f8faf8;--content-document-text: #172019;--content-document-text-muted: #536156;--content-document-border: rgba(23, 32, 25, .12);--content-document-link: #0b626b;--content-document-slash-query-bg: rgba(32, 207, 69, .14);--content-document-slash-query-text: #172019;--content-code-surface: #f6f8fa;--content-code-border: #d0d7de;--content-code-comment: #57606a;--content-code-keyword: #cf222e;--content-code-string: #0a3069;--content-code-number: #0550ae;--content-code-function: #8250df;--content-code-punctuation: #24292f;--content-callout-info-accent: var(--ui-info-foreground);--content-callout-info-surface: var(--ui-info-soft);--content-callout-info-border: rgba(17, 125, 136, .4);--content-callout-warning-accent: var(--ui-warning-foreground);--content-callout-warning-surface: var(--ui-warning-soft);--content-callout-warning-border: rgba(138, 111, 0, .4);--content-callout-success-accent: var(--ui-success-foreground);--content-callout-success-surface: var(--ui-success-soft);--content-callout-success-border: rgba(35, 134, 74, .4);--content-callout-danger-accent: var(--ui-danger-foreground);--content-callout-danger-surface: var(--ui-danger-soft);--content-callout-danger-border: rgba(201, 52, 61, .4);--content-canvas-node-surface: #ffffff;--content-canvas-node-border: rgba(23, 32, 25, .5);--content-canvas-node-border-hover: rgba(23, 32, 25, .7);--content-canvas-node-shadow: 0 2px 12px rgba(26, 48, 31, .08);--content-canvas-node-text: #172019;--content-canvas-node-text-muted: #536156;--content-canvas-code-bg: rgba(23, 32, 25, .06);--content-canvas-link: #0b626b;--content-canvas-callout-text: #536156;--content-canvas-editor-surface: rgba(23, 32, 25, .03);--content-canvas-editor-text: #172019;--content-canvas-image-title: #172019;--content-canvas-selection: #145b25;--content-canvas-node-text-1: #a82028;--content-canvas-node-text-2: #8a4e00;--content-canvas-node-text-3: #6b6600;--content-canvas-node-text-4: #176334;--content-canvas-node-text-5: #0b626b;--content-canvas-node-text-6: #5028aa;--content-interactive-surface: #ffffff;--content-interactive-surface-subtle: #f4f6f3;--content-interactive-input: #f8faf8;--content-interactive-border: #dce3dd;--content-interactive-border-strong: #667269;--content-interactive-text: #172019;--content-interactive-text-muted: #536156;--content-interactive-accent: #176334;--content-interactive-accent-strong: #145b25;--content-interactive-accent-soft: #ddf7e2;--content-interactive-shadow: 0 8px 25px rgba(26, 48, 31, .12);color-scheme:light}:root{--content-board-label-card-surface: #1a211e;--content-board-label-preview-surface: #172019;--content-board-label-dialog-surface: #1e2521;--content-board-label-text: #f4fff6;--content-board-label-dialog-text: #f2fff5;--content-preview-text: #f8fff8;--content-preview-muted: #b9c8ba;--color-brands: var(--ui-brand);--color-brands-light: var(--ui-focus);--color-brand-on: var(--ui-brand-on);--dark-neutral-bg: var(--ui-page);--dark-neutral-border: var(--ui-border);--dark-card-bg: var(--ui-surface);--dark-menu-bg: var(--ui-surface-elevated);--dark-input-bg: var(--ui-surface-subtle);--dark-text-primary: var(--ui-text);--dark-text-secondary: var(--ui-text-secondary);--dark-text-muted: var(--ui-text-muted);--accent-green: #50d1b2;--accent-red: #e23738;--accent-yellow: #ece663;--radius-sm: 8px;--radius-md: 12px;--radius-lg: 16px;--radius-xl: 20px;--radius-full: 9999px;--transition-fast: .15s ease;--transition-std: .3s ease;--shadow-dropdown: 0 40px 120px 0 rgba(0, 0, 0, .24);--shadow-card: 0 4px 24px rgba(0, 0, 0, .28);font-family:Noto Sans,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:var(--ui-text);background-color:var(--ui-page);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}html,body{width:100%;height:100%;overflow-y:auto}body{color:var(--ui-text);background:var(--ui-page)}#app{min-width:0;overflow-x:hidden}.auth-page{display:flex;align-items:center;justify-content:center;height:100vh;height:100dvh;background:var(--ui-page)}.auth-card{background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--radius-lg);padding:40px;width:360px;box-shadow:var(--ui-shadow)}.auth-card h1{margin-bottom:24px;font-size:24px;font-weight:700;text-align:center;color:var(--dark-text-primary)}.auth-card h1 span.brand{color:var(--ui-accent-strong)}.auth-card form{display:flex;flex-direction:column;gap:12px}.auth-card input{padding:10px 14px;border:1px solid var(--ui-border);border-radius:var(--radius-sm);background:var(--ui-surface-subtle);color:var(--ui-text);font-size:14px;outline:none;transition:border-color var(--transition-fast)}.auth-card input:focus{border-color:color-mix(in srgb,var(--color-brands) 50%,transparent)}.auth-card button[type=submit]{padding:10px;border:2px solid transparent;border-radius:var(--radius-sm);background:var(--color-brands);color:var(--color-brand-on);font-size:14px;font-weight:600;cursor:pointer;margin-top:4px;transition:border-color var(--transition-std)}.auth-card button[type=submit]:hover{border-color:var(--color-brands-light)}.auth-card button:disabled{opacity:.5}.auth-link{text-align:center;margin-top:16px;font-size:13px;color:var(--ui-text-secondary)}.auth-link a{color:var(--ui-accent-strong);text-decoration:none}.error{color:var(--ui-danger-foreground);font-size:13px;text-align:center}.dashboard{overflow-y:auto;padding:32px 40px}.app-layout{display:grid;grid-template-rows:auto 1fr;height:100vh;height:100dvh;overflow:hidden;background:var(--ui-page)}.dashboard-app-shell{--dashboard-sidebar-width: 248px;display:grid;grid-template-columns:var(--dashboard-sidebar-width) minmax(0,1fr);width:100%;min-width:0;height:100vh;height:100dvh;overflow:hidden;background:var(--ui-page)}.dashboard-app-shell.sidebar-collapsed{--dashboard-sidebar-width: 72px}.dashboard-app-shell-public{grid-template-columns:minmax(0,1fr)}.dashboard-central-shell{min-width:0;min-height:0;display:grid;grid-template-rows:auto minmax(0,1fr);overflow:hidden}.dashboard-central-shell .app-main{min-width:0;min-height:0;overflow-y:auto;overscroll-behavior-y:contain}.dashboard-sidebar{position:relative;z-index:2;min-width:0;min-height:0;height:100vh;height:100dvh;display:flex;flex-direction:column;gap:12px;overflow:visible;padding:16px 12px 12px;border-right:1px solid var(--ui-border);background:var(--ui-surface-solid);color:var(--ui-text)}.dashboard-sidebar-backdrop{display:none}.dashboard-sidebar-header{min-width:0;min-height:40px;display:flex;align-items:center;gap:8px}.dashboard-sidebar-brand{width:36px;height:36px;flex:0 0 36px;display:grid;place-items:center;border:1px solid color-mix(in srgb,var(--ui-brand) 48%,var(--ui-border));border-radius:11px;background:var(--ui-brand-soft);overflow:hidden}.dashboard-sidebar-brand img{display:block;width:100%;height:100%;object-fit:cover}.dashboard-sidebar-header>.dashboard-sidebar-label{min-width:0;overflow:hidden;color:var(--ui-text);font-size:16px;font-weight:750;text-overflow:ellipsis;white-space:nowrap}.dashboard-sidebar-header .language-toggle{width:auto;min-width:40px;min-height:34px;margin-left:auto;padding-inline:8px;justify-content:center}.dashboard-sidebar .dashboard-sidebar-close,.dashboard-central-shell .dashboard-mobile-sidebar-open{display:none}.dashboard-sidebar-scroll{min-width:0;min-height:0;flex:1 1 auto;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable}.dashboard-sidebar-navigation,.dashboard-sidebar-folder-list{min-width:0;display:grid;gap:4px}.dashboard-sidebar .dashboard-sidebar-item,.dashboard-sidebar .dashboard-sidebar-folder{position:relative;width:100%;min-width:0;min-height:40px;display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;justify-content:start;gap:8px;padding:4px 8px;border:1px solid transparent;border-radius:10px;color:var(--ui-text-secondary);text-align:left}.dashboard-sidebar .dashboard-sidebar-home-disclosure{grid-template-columns:30px minmax(0,1fr) 18px}.dashboard-sidebar-home-chevron{display:block;transition:transform var(--transition-fast)}.dashboard-sidebar-home-chevron.collapsed{transform:rotate(-90deg)}.dashboard-sidebar-home-children{min-width:0;display:grid;gap:4px;margin-left:15px;padding-left:10px;border-left:1px solid var(--ui-border)}.dashboard-sidebar .dashboard-sidebar-item:hover,.dashboard-sidebar .dashboard-sidebar-folder:hover{border-color:var(--ui-border);background:var(--ui-surface-subtle);color:var(--ui-text)}.dashboard-sidebar .dashboard-sidebar-item.active,.dashboard-sidebar .dashboard-sidebar-folder.active{border-color:color-mix(in srgb,var(--ui-focus) 42%,var(--ui-border));background:var(--ui-brand-soft);color:var(--ui-accent-strong);box-shadow:inset 3px 0 0 var(--ui-focus)}.dashboard-sidebar-item:focus-visible,.dashboard-sidebar-folder:focus-visible,.dashboard-sidebar-folder-toggle:focus-visible,.dashboard-sidebar-create-folder:focus-visible,.dashboard-sidebar-width-toggle:focus-visible,.dashboard-sidebar-close:focus-visible,.dashboard-mobile-sidebar-open:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.dashboard-sidebar-icon{width:30px;height:30px;display:grid;place-items:center;flex:0 0 auto;border-radius:8px;color:currentColor;line-height:1}.dashboard-sidebar-icon>svg{width:18px;height:18px;stroke-width:1.9}.dashboard-sidebar-label,.dashboard-sidebar-folder-name{min-width:0;overflow:hidden;opacity:1;text-overflow:ellipsis;transform:translate(0);white-space:nowrap;transition:opacity var(--transition-fast),transform var(--transition-fast)}.dashboard-sidebar-folders{min-width:0;margin-top:6px;padding-top:8px;border-top:1px solid var(--ui-border)}.dashboard-sidebar-section-heading{min-height:32px;display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 6px 8px}.dashboard-sidebar-section-heading h2{color:var(--ui-text-secondary);font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.dashboard-sidebar .dashboard-sidebar-create-folder,.dashboard-sidebar .dashboard-sidebar-folder-toggle{width:30px;min-width:30px;min-height:30px;display:inline-grid;place-items:center;padding:0;border-color:transparent;font-size:17px;line-height:1}.dashboard-sidebar-folder-row{--sidebar-folder-offset: calc(max(0, var(--folder-depth, 0))*14px) ;min-width:0;display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:2px;padding-inline-start:var(--sidebar-folder-offset)}.dashboard-sidebar-folder-toggle .lucide{display:block;transition:transform var(--transition-fast)}.dashboard-sidebar-folder-toggle .lucide.collapsed{transform:rotate(-90deg)}.dashboard-sidebar-folder-toggle-spacer{width:30px;height:1px}.dashboard-sidebar-folder{min-height:38px}.dashboard-sidebar .dashboard-sidebar-folder[draggable=true]{cursor:grab}.dashboard-sidebar .dashboard-sidebar-folder[draggable=true]:active{cursor:grabbing}.dashboard-sidebar .dashboard-sidebar-folder.drop-active{border-color:var(--ui-focus);background:var(--ui-brand-soft);color:var(--ui-text)}.dashboard-sidebar .dashboard-sidebar-folder.reorder-target{border-color:var(--ui-focus);box-shadow:inset 0 3px 0 var(--ui-focus)}.dashboard-sidebar-footer{min-width:0;display:grid;gap:8px;padding-top:12px;border-top:1px solid var(--ui-border)}.dashboard-sidebar-footer .account-menu,.dashboard-sidebar-footer .account-menu-trigger{width:100%;min-width:0}.dashboard-sidebar-footer .account-menu{position:relative;z-index:3}.dashboard-sidebar .dashboard-sidebar-width-toggle{width:100%;min-width:0;min-height:36px;justify-content:flex-start;border-color:transparent}.dashboard-sidebar.collapsed{padding-inline:8px}.dashboard-sidebar.collapsed .dashboard-sidebar-header{flex-direction:column}.dashboard-sidebar.collapsed .dashboard-sidebar-header .language-toggle{width:38px;min-width:38px;margin-left:0}.dashboard-sidebar.collapsed .dashboard-sidebar-label{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0;clip-path:inset(50%);transform:translate(-4px);white-space:nowrap}.dashboard-sidebar.collapsed .dashboard-sidebar-item,.dashboard-sidebar.collapsed .dashboard-sidebar-folder,.dashboard-sidebar.collapsed .dashboard-sidebar-width-toggle{grid-template-columns:1fr;justify-items:center;padding-inline:4px}.dashboard-sidebar.collapsed .dashboard-sidebar-home-disclosure{grid-template-columns:1fr}.dashboard-sidebar.collapsed:not(.mobile-open) .dashboard-sidebar-home-chevron,.dashboard-sidebar.collapsed:not(.mobile-open) .dashboard-sidebar-home-children{display:none}.dashboard-sidebar.collapsed .dashboard-sidebar-section-heading{justify-content:center;padding-inline:0}.dashboard-sidebar.collapsed .dashboard-sidebar-folder-row{display:block;padding-inline-start:0}.dashboard-sidebar.collapsed .dashboard-sidebar-folder-toggle,.dashboard-sidebar.collapsed .dashboard-sidebar-folder-toggle-spacer{display:none}.dashboard-sidebar.collapsed .dashboard-sidebar-footer{justify-items:center}.dashboard-sidebar.collapsed .dashboard-sidebar-footer .account-menu,.dashboard-sidebar.collapsed .dashboard-sidebar-footer .account-menu-trigger{width:38px}.app-sidebar{grid-row:1 / -1;background:var(--ui-surface-solid);border-right:1px solid var(--ui-border);display:flex;flex-direction:column;padding:24px 20px;gap:4px;overflow-y:auto}.sidebar-logo{font-size:18px;font-weight:700;color:var(--dark-text-primary);padding:0 8px;margin-bottom:24px;letter-spacing:0}.sidebar-logo span{color:var(--ui-accent-strong)}.sidebar-nav{display:flex;flex-direction:column;gap:2px;flex:1}.sidebar-item{display:flex;align-items:center;gap:10px;padding:11px 14px;border-radius:var(--radius-md);color:var(--dark-text-secondary);font-size:14px;font-weight:500;text-decoration:none;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast);border:none;background:transparent;width:100%;text-align:left}.sidebar-item:hover{background:var(--ui-surface-subtle);color:var(--ui-text)}.sidebar-item.active,.sidebar-item.router-link-active{background:var(--color-brands);color:var(--color-brand-on)}.sidebar-item svg{flex-shrink:0;opacity:.7}.sidebar-item.active svg,.sidebar-item.router-link-active svg{opacity:1}.sidebar-section-label{font-size:11px;font-weight:600;color:var(--ui-text-secondary);text-transform:uppercase;letter-spacing:.07em;padding:0 14px;margin:16px 0 6px}.sidebar-footer{margin-top:auto;padding-top:16px;border-top:1px solid var(--ui-border)}.app-header{background:var(--ui-surface-solid);border-bottom:1px solid var(--ui-border);padding:16px 40px}.app-header-inner{width:min(1280px,100%);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:16px}.app-header h1{margin:0;font-size:20px;font-weight:700;color:var(--dark-text-primary)}.dashboard-brand{display:flex;align-items:center;gap:10px}.dashboard-brand>img{width:34px;height:34px;border-radius:10px;object-fit:cover}.dashboard-auth-header{display:none}.app-main{min-height:0;overflow-y:auto;padding:32px 28px;background:var(--ui-page);color:var(--ui-text)}.dashboard-shell{width:min(1280px,100%);margin:0 auto}.dash-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.dash-header h1{font-size:24px}.dash-subtitle{margin-top:6px;color:var(--ui-text-secondary);font-size:13px}.dash-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px}.header-user-slot{display:flex;justify-content:flex-end;align-items:center;gap:8px;min-width:0}.dash-actions-secondary{display:flex;align-items:center;gap:8px}.resource-control-panel{margin-bottom:18px;padding:12px;border:1px solid var(--ui-border);border-radius:var(--radius-md);background:var(--ui-surface-subtle)}.resource-control-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.current-user-badge{display:inline-flex;align-items:center;max-width:260px;gap:8px;padding:8px 10px;border:1px solid var(--ui-border);border-radius:var(--radius-sm);background:var(--ui-surface-subtle);color:var(--ui-text-secondary);font-size:12px;line-height:1;cursor:pointer}.current-user-badge span:last-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.current-user-icon{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;flex:0 0 auto;border-radius:var(--radius-full);background:var(--ui-brand-soft);color:var(--ui-accent-strong)}.mobile-action-menu{display:none;position:relative}.control-menu{position:relative}.btn-primary,.btn-ghost,.card-menu-item{display:inline-flex;align-items:center;gap:8px}.menu-icon{display:inline-flex;align-items:center;justify-content:center;width:18px;min-width:18px;height:18px;border-radius:5px;background:var(--ui-surface-subtle);line-height:1;stroke-width:1.9}.btn-primary .menu-icon{background:color-mix(in srgb,var(--ui-brand-on) 14%,transparent)}.mobile-action-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:310;width:min(228px,calc(100vw - 32px));padding:6px;border:1px solid var(--ui-border);border-radius:var(--radius-md);background:var(--ui-surface-elevated);box-shadow:var(--ui-shadow);backdrop-filter:blur(10px)}.control-popover{left:0;right:auto}.user-menu{position:relative}.user-popover{width:190px}.home-tabs{display:inline-flex;gap:4px;margin-top:14px;padding:4px;border:1px solid var(--ui-border);border-radius:var(--radius-sm);background:var(--ui-surface-subtle)}.home-tab{padding:7px 14px;border-radius:var(--radius-sm);color:var(--ui-text-secondary);font-size:13px;text-decoration:none}.home-tab.active{color:var(--ui-text);background:var(--ui-brand-soft)}.dash-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:24px}.dash-section-actions{display:flex;align-items:center;gap:8px}.section-toggle-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;color:var(--dark-text-secondary);transition:transform .22s ease,color .22s ease}.section-toggle-icon.expanded{transform:rotate(180deg);color:var(--ui-text)}.dashboard-toast{position:sticky;top:12px;z-index:80;margin-bottom:16px;padding:12px 14px;border:1px solid var(--ui-border);border-radius:var(--radius-sm);font-size:13px;color:var(--ui-text);backdrop-filter:blur(12px)}.dashboard-toast-success{background:var(--ui-success-soft);border-color:color-mix(in srgb,var(--ui-success) 28%,transparent)}.dashboard-toast-error{background:var(--ui-danger-soft);border-color:color-mix(in srgb,var(--ui-danger) 28%,transparent)}.dashboard-refresh-status{display:inline-flex;align-items:center;gap:7px;margin:-12px 0 14px;color:var(--ui-text-secondary);font-size:12px}.dashboard-pull-status{display:none}.dashboard-recents{margin-bottom:22px}.tag-filter-scroll-hint{display:none}.dashboard-recent-view-toggle{display:inline-flex;align-items:center;padding:3px;border:1px solid var(--ui-border);border-radius:10px;background:var(--ui-surface-subtle)}.dashboard-recent-view-toggle button{display:grid;width:32px;height:30px;place-items:center;padding:0;border:0;border-radius:7px;background:transparent;color:var(--ui-text-secondary);cursor:pointer}.dashboard-recent-view-toggle button:hover,.dashboard-recent-view-toggle button.active{background:var(--ui-brand-soft);color:var(--ui-accent-strong)}.dashboard-recents-layout{display:grid;align-items:stretch}.dashboard-recents-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}.dashboard-recents-list{grid-template-columns:minmax(0,1fr);gap:8px}.dashboard-recent-card{width:100%;min-width:0;min-height:104px;display:grid;grid-template-columns:20px minmax(0,1fr);grid-template-rows:minmax(0,1fr) auto;align-items:start;gap:7px 8px;padding:12px;border:1px solid var(--ui-border);border-radius:var(--radius-md);background:var(--ui-surface);color:var(--ui-text);cursor:pointer;text-align:left}.dashboard-recent-card:hover{border-color:color-mix(in srgb,var(--color-brands) 45%,var(--ui-border));background:var(--ui-surface-subtle);transform:translateY(-1px)}.dashboard-recent-card .resource-title-icon{margin-top:1px}.dashboard-recent-title{overflow:hidden;font-size:13px;font-weight:700;line-height:1.35;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3}.dashboard-recent-meta{grid-column:2;color:var(--ui-text-secondary);font-size:11px}.dashboard-recents-list .dashboard-recent-card{min-height:62px;grid-template-columns:22px minmax(0,1fr) auto;grid-template-rows:1fr;align-items:center;gap:12px;padding:12px 14px}.dashboard-recents-list .dashboard-recent-title{display:block;white-space:nowrap;-webkit-line-clamp:unset}.dashboard-recents-list .dashboard-recent-meta{grid-column:3;white-space:nowrap}.dashboard-recents-empty{margin-top:0}.canvas-plugin-panel{position:absolute;top:calc(var(--canvas-topbar-height, 48px) + 10px);right:10px;z-index:130;width:min(330px,calc(100vw - 20px));padding:12px;border:1px solid var(--ui-border);border-radius:var(--radius-md);background:var(--ui-surface-elevated);box-shadow:var(--ui-shadow)}.canvas-plugin-panel-head,.canvas-plugin-row{display:flex;align-items:center;justify-content:space-between;gap:12px}.canvas-plugin-row{padding:10px 0;border-top:1px solid var(--ui-border)}.canvas-plugin-row strong,.canvas-plugin-row span{display:block}.canvas-plugin-row span,.canvas-plugin-empty{margin-top:3px;color:var(--ui-text-secondary);font-size:12px}.canvas-plugin-row .plugin-toggle{position:relative;flex:0 0 auto;width:62px;height:30px;padding:0;border:1px solid var(--ui-border);border-radius:999px;background:var(--ui-surface-subtle);color:var(--ui-text-secondary);cursor:pointer;transition:background .16s,border-color .16s,box-shadow .16s}.canvas-plugin-row .plugin-toggle:hover:not(:disabled){border-color:var(--ui-text-muted)}.canvas-plugin-row .plugin-toggle:focus-visible{outline:2px solid var(--color-brands);outline-offset:2px}.canvas-plugin-row .plugin-toggle.on{border-color:color-mix(in srgb,var(--color-brands) 70%,var(--ui-focus));background:color-mix(in srgb,var(--color-brands) 32%,var(--ui-surface));color:var(--ui-text)}.canvas-plugin-row .plugin-toggle:disabled{opacity:.68;cursor:wait}.canvas-plugin-row .plugin-toggle-label{position:absolute;top:0;right:7px;margin:0;color:inherit;font-size:10px;font-weight:800;line-height:28px;transition:opacity .16s}.canvas-plugin-row .plugin-toggle.on .plugin-toggle-label{right:auto;left:7px}.canvas-plugin-row .plugin-toggle-knob{position:absolute;z-index:1;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:var(--ui-surface-elevated);box-shadow:var(--ui-shadow);transition:transform .16s,background .16s}.canvas-plugin-row .plugin-toggle.on .plugin-toggle-knob{transform:translate(32px);background:var(--ui-surface-solid)}.canvas-plugin-row .plugin-toggle.loading .plugin-toggle-knob{animation:plugin-toggle-pulse .75s ease-in-out infinite alternate}@keyframes plugin-toggle-pulse{to{opacity:.45}}.dashboard-refresh-spinner{width:13px;height:13px;border:2px solid color-mix(in srgb,var(--color-brands) 24%,transparent);border-top-color:var(--color-brands);border-radius:50%;animation:dashboard-refresh-spin .7s linear infinite}@keyframes dashboard-refresh-spin{to{transform:rotate(360deg)}}.dash-search,.canvas-search-input{padding:10px 14px;border:1px solid var(--ui-border);border-radius:var(--radius-sm);background:var(--ui-surface-subtle);color:var(--ui-text);font-size:13px;outline:none;transition:border-color var(--transition-fast)}.dash-search:focus,.canvas-search-input:focus{border-color:color-mix(in srgb,var(--color-brands) 50%,transparent)}.dash-search{flex:1 1 260px;min-width:220px}.dash-sort-select{flex:0 0 180px;padding:9px 10px;border:1px solid var(--ui-border);border-radius:var(--radius-sm);background:var(--ui-surface);color:var(--ui-text);font-size:13px}.tag-filter-list,.card-tags{display:flex;flex-wrap:wrap;gap:8px}.tag-filter,.card-tag{border:1px solid var(--ui-border);background:var(--ui-surface-subtle);color:var(--ui-text-secondary);border-radius:var(--radius-full);padding:4px 12px;font-size:12px}.tag-filter{cursor:pointer}.tag-filter.active{border-color:color-mix(in srgb,var(--color-brands) 45%,transparent);color:var(--color-brands-light);background:color-mix(in srgb,var(--color-brands) 10%,transparent)}.folder-section{margin-bottom:24px}.folder-title{margin-bottom:12px;color:var(--ui-text-secondary);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.07em}.frox-divider{width:100%;height:1px;background:var(--dark-neutral-border);margin:12px 0}.folder-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.folder-action{padding:6px 10px;border:1px solid var(--ui-border);border-radius:var(--radius-sm);background:var(--ui-surface-subtle);color:var(--ui-text-secondary);font-size:12px;cursor:pointer}.folder-action:hover{background:var(--ui-brand-soft)}.btn-primary{padding:8px 18px;border:2px solid transparent;border-radius:var(--radius-sm);background:var(--color-brands);color:var(--color-brand-on);font-size:13px;font-weight:600;cursor:pointer;transition:border-color var(--transition-std),background var(--transition-std)}.btn-primary:hover{border-color:var(--color-brands-light)}.btn-ghost{padding:8px 18px;border:1px solid var(--ui-border);border-radius:var(--radius-sm);background:transparent;color:var(--ui-text-secondary);font-size:13px;cursor:pointer;transition:background var(--transition-fast),color var(--transition-fast)}.btn-ghost:hover{background:var(--ui-surface-subtle);color:var(--ui-text)}.btn-ghost.danger:hover{color:var(--ui-danger-foreground);background:var(--ui-danger-soft);border-color:color-mix(in srgb,var(--ui-danger) 35%,transparent)}.btn-sm{padding:4px 10px;font-size:12px}.btn-primary:disabled,.btn-ghost:disabled,.folder-action:disabled,.card-manage:disabled,.card-pin:disabled,.card-delete:disabled,.card-menu-item:disabled,.tag-color-option:disabled,.tag-remove-btn:disabled,.folder-manager-btn:disabled{opacity:.55;cursor:default;pointer-events:none}.dash-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.content-type-tabs{display:inline-flex;gap:2px;padding:3px;border:1px solid var(--ui-border);border-radius:var(--radius-sm);background:var(--ui-surface-subtle)}.content-type-tabs button{min-width:64px;padding:7px 10px;border:none;border-radius:6px;background:transparent;color:var(--dark-text-secondary);font-size:12px;cursor:pointer}.content-type-tabs button.active{background:var(--color-brands);color:var(--color-brand-on)}.canvas-card{position:relative;background:var(--dark-card-bg);border:1px solid var(--dark-neutral-border);border-radius:var(--radius-lg);padding:20px;cursor:pointer;transition:border-color var(--transition-fast),box-shadow var(--transition-fast);overflow:visible}.card-open-link{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;border-radius:inherit}.card-open-link:focus-visible{outline:2px solid var(--color-brands);outline-offset:2px}.canvas-card:hover{border-color:var(--color-brands);box-shadow:0 0 0 1px color-mix(in srgb,var(--color-brands) 30%,transparent)}.dashboard .dash-grid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:12px}.dashboard .canvas-card{min-height:102px;padding:14px 42px 14px 14px;border-radius:var(--radius-md)}.dashboard .card-title,.dashboard .card-title-input{margin-bottom:6px;font-size:14px;line-height:1.3}.dashboard .card-title:not(.card-title-input){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard .resource-title-icon{width:16px;height:16px}.dashboard .card-meta{gap:6px;font-size:11px}.dashboard .card-tags{gap:5px;margin-top:8px}.dashboard .card-tag{padding:2px 7px;font-size:10px}.dashboard .card-tags .card-tag:nth-child(n+3){display:none}.dashboard .canvas-card:not(:hover):not(:focus-within) .card-manage,.dashboard .canvas-card:not(:hover):not(:focus-within) .card-pin:not(.active){opacity:0}.dashboard .card-manage,.dashboard .card-pin{transition:opacity var(--transition-fast),background var(--transition-fast)}.card-title{font-size:16px;font-weight:600;margin-bottom:8px;cursor:text}.card-title-with-icon{display:flex;align-items:center;gap:8px}.resource-title-icon{position:relative;flex:0 0 auto;width:18px;height:18px;border-radius:5px}.resource-title-icon.icon-canvas{border:1px solid color-mix(in srgb,var(--color-brands) 72%,transparent);background:radial-gradient(circle at 5px 5px,var(--color-brands) 0 2px,transparent 2.5px),radial-gradient(circle at 13px 13px,#44cf6e 0 2px,transparent 2.5px),linear-gradient(135deg,rgba(83,223,221,.18),rgba(255,255,255,.04))}.resource-title-icon.icon-canvas:after{content:"";position:absolute;left:6px;top:6px;width:6px;height:6px;border-top:1px solid color-mix(in srgb,var(--color-brands) 76%,transparent);border-left:1px solid color-mix(in srgb,#44cf6e 76%,transparent)}.resource-title-icon.icon-html{border:1px solid rgba(255,167,96,.55);background:rgba(255,167,96,.12)}.resource-title-icon.icon-html:before,.resource-title-icon.icon-html:after{content:"";position:absolute;top:5px;width:6px;height:6px;border-color:#ffa760}.resource-title-icon.icon-html:before{left:4px;border-left:2px solid #ffa760;border-bottom:2px solid #ffa760;transform:rotate(45deg)}.resource-title-icon.icon-html:after{right:4px;border-right:2px solid #ffa760;border-top:2px solid #ffa760;transform:rotate(45deg)}.resource-title-icon.icon-text-doc{border:1px solid rgba(176,196,255,.58);background:linear-gradient(135deg,rgba(176,196,255,.18),rgba(255,255,255,.04))}.resource-title-icon.icon-text-doc:before{content:"";position:absolute;left:4px;top:5px;width:9px;height:1px;background:#b0c4ff;box-shadow:0 4px rgba(176,196,255,.8),0 8px rgba(176,196,255,.55)}.resource-title-icon.icon-template{border:1px solid rgba(119,238,154,.62);background:linear-gradient(135deg,rgba(0,255,0,.18),rgba(68,207,110,.06))}.resource-title-icon.icon-template:before{content:"";position:absolute;left:4px;top:4px;width:8px;height:8px;border:1px solid #77ee9a;border-radius:2px;box-shadow:3px 3px 0 -1px rgba(119,238,154,.55)}.card-title-input{font-size:16px;font-weight:600;margin-bottom:8px;background:var(--ui-surface-subtle);border:1px solid color-mix(in srgb,var(--color-brands) 50%,var(--ui-border));border-radius:var(--radius-full);color:var(--ui-text);padding:2px 6px;outline:none;width:100%}.card-meta{display:flex;gap:8px;align-items:center;font-size:12px;color:var(--ui-text-secondary)}.card-owner{margin-top:10px;font-size:12px;color:var(--dark-text-secondary)}.card-tags{margin-top:10px}.card-folder{margin-top:10px;font-size:12px;color:var(--ui-text-secondary)}.color-tag{border-color:color-mix(in srgb,var(--tag-color) 45%,transparent);background:color-mix(in srgb,var(--tag-color) 16%,var(--ui-surface-subtle));color:var(--ui-text)}.card-manage{position:absolute;top:8px;right:8px;width:24px;height:24px;border:none;background:transparent;color:var(--ui-text-secondary);cursor:pointer;font-size:16px;border-radius:var(--radius-full);z-index:2}.card-manage:hover{color:var(--ui-text);background:var(--ui-surface-subtle)}.card-pin{position:absolute;top:8px;right:36px;width:24px;height:24px;border:none;background:transparent;color:var(--ui-text-secondary);cursor:pointer;font-size:15px;border-radius:var(--radius-full);z-index:2}.card-pin:hover,.card-pin.active{color:var(--ui-warning-foreground);background:var(--ui-warning-soft)}.card-menu{position:absolute;top:40px;right:8px;min-width:220px;padding:6px;border:1px solid var(--ui-border);border-radius:var(--radius-md);background:var(--ui-surface-elevated);box-shadow:var(--ui-shadow);backdrop-filter:blur(10px);z-index:120}.card-menu-item{display:block;width:100%;padding:10px 12px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--ui-text);text-align:left;font-size:13px;cursor:pointer;transition:background var(--transition-fast)}.card-menu-item:hover{background:var(--ui-surface-subtle)}.card-menu-item.danger{color:var(--ui-danger-foreground)}.card-menu-item.danger:hover{background:var(--ui-danger-soft)}.dash-section-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}.badge{padding:2px 8px;border-radius:var(--radius-full);font-size:11px;font-weight:600}.badge-owner{background:color-mix(in srgb,var(--color-brands) 15%,transparent);color:var(--ui-accent-strong)}.badge-shared{background:var(--ui-success-soft);color:var(--ui-success-foreground)}.badge-pinned{background:var(--ui-warning-soft);color:var(--ui-warning-foreground)}.card-delete{position:absolute;top:8px;right:8px;width:24px;height:24px;border:none;background:transparent;color:var(--ui-text-secondary);cursor:pointer;font-size:14px;border-radius:var(--radius-full)}.card-delete:hover{color:var(--ui-danger-foreground);background:color-mix(in srgb,var(--ui-danger) 15%,transparent)}.dash-section{margin-top:32px}.dash-section h2{font-size:18px;margin-bottom:0;color:var(--ui-text-secondary)}.dashboard-workspace{display:grid;grid-template-columns:244px minmax(0,1fr);align-items:start;gap:20px;margin-top:28px}.dashboard-folder-nav{position:sticky;top:16px;max-height:calc(100vh - 112px);overflow-y:auto;padding:12px;border:1px solid var(--ui-border);border-radius:var(--radius-md);background:var(--ui-surface)}.dashboard-folder-nav-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:0 0 10px 4px}.dashboard-folder-nav-head h2{margin:0;color:var(--ui-text-secondary);font-size:13px;letter-spacing:.04em;text-transform:uppercase}.folder-nav-head-actions{display:inline-flex;align-items:center;gap:4px}.folder-create-button{width:28px;min-width:28px;padding:0;font-size:18px;line-height:1;justify-content:center}.folder-nav-item{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:38px;gap:10px;padding:8px 9px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--ui-text-secondary);cursor:pointer;text-align:left;transition:background .15s,border-color .15s,color .15s}.folder-nav-item:hover{background:var(--ui-surface-subtle);color:var(--ui-text)}.folder-nav-item.active{border-color:color-mix(in srgb,var(--color-brands) 42%,transparent);background:color-mix(in srgb,var(--color-brands) 13%,transparent);color:var(--ui-text)}.folder-nav-item.folder-drop-active{border-color:var(--color-brands);background:color-mix(in srgb,var(--color-brands) 22%,transparent)}.folder-nav-item[draggable=true]{cursor:grab}.folder-nav-item[draggable=true]:active{cursor:grabbing}.folder-nav-item.folder-reorder-target{border-color:color-mix(in srgb,var(--color-brands) 80%,var(--ui-surface-elevated));box-shadow:inset 0 2px 0 var(--color-brands)}.folder-nav-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600}.folder-nav-count{flex:0 0 auto;min-width:20px;padding:2px 6px;border-radius:var(--radius-full);background:var(--ui-surface-subtle);color:inherit;font-size:11px;line-height:16px;text-align:center}.folder-nav-meta{display:inline-flex;align-items:center;gap:5px;flex:0 0 auto}.folder-technical-icon{color:var(--ui-text-secondary);font-size:12px;line-height:1;cursor:help}.folder-nav-item.active .folder-technical-icon{color:color-mix(in srgb,var(--color-brands) 70%,var(--ui-text))}.dashboard-folder-content{min-width:0}.canvas-card-welcome{border-color:color-mix(in srgb,var(--ui-info) 30%,transparent)}.canvas-card-welcome:hover{border-color:color-mix(in srgb,var(--ui-info) 60%,transparent)}.badge-public{background:var(--ui-info-soft);color:var(--ui-info-foreground)}.folder-manager-list{display:flex;flex-direction:column;gap:8px;overflow:visible}.folder-manager-row{display:flex;flex-direction:column;gap:10px;padding:10px 12px;border:1px solid var(--ui-border);border-radius:var(--radius-sm);background:var(--ui-surface);transition:border-color .15s,background .15s;overflow:visible}.folder-manager-row.folder-drop-active{border-color:color-mix(in srgb,var(--color-brands) 55%,transparent);background:color-mix(in srgb,var(--color-brands) 10%,transparent)}.folder-manager-top{display:flex;align-items:center;justify-content:space-between;gap:16px}.folder-manager-main{display:flex;align-items:center;justify-content:space-between;gap:12px;flex:1;border:none;background:transparent;color:inherit;text-align:left;cursor:pointer;padding:0}.folder-manager-title{display:flex;align-items:center;gap:8px;flex:1;min-width:0;flex-wrap:wrap}.folder-row-toggle{width:16px;height:16px;font-size:12px}.folder-manager-name{color:var(--ui-text);font-size:13px;font-weight:600}.folder-manager-count{color:var(--ui-text-secondary);font-size:11px;font-weight:500}.folder-manager-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.folder-manager-menu{position:relative;flex-shrink:0}.folder-manager-trigger{width:28px;height:28px;display:inline-flex;align-items:center;justify-content:center;border-radius:7px;border:1px solid var(--ui-border);background:var(--ui-surface-subtle);color:var(--ui-text-secondary);font-size:16px;line-height:1;cursor:pointer}.folder-manager-trigger:hover{background:var(--ui-brand-soft);color:var(--ui-text)}.folder-manager-menu .mobile-action-popover{min-width:180px}.folder-manager-btn{padding:6px 9px;border-radius:7px;border:1px solid var(--ui-border);background:var(--ui-surface-subtle);color:var(--ui-text-secondary);font-size:12px;cursor:pointer}.folder-manager-btn:hover{background:var(--ui-surface-subtle);color:var(--ui-text)}.folder-manager-btn.danger:hover{color:var(--ui-danger-foreground);background:var(--ui-danger-soft);border-color:color-mix(in srgb,var(--ui-danger) 28%,transparent)}.folder-manager-body{width:100%;min-height:330px;max-height:330px;overflow-y:auto;overscroll-behavior:auto;padding-right:2px}.folder-scroll-controls{display:none}.folder-collapse-enter-active,.folder-collapse-leave-active{transition:max-height .24s ease,opacity .2s ease,transform .2s ease,margin-top .24s ease;max-height:1200px;opacity:1;transform:translateY(0);margin-top:0}.folder-collapse-enter-from,.folder-collapse-leave-to{max-height:0;opacity:0;transform:translateY(-6px);margin-top:-4px}.admin-section-title{font-size:16px;font-weight:600;color:var(--ui-text-secondary);margin:24px 0 12px}.admin-stats{display:flex;gap:16px;margin-bottom:24px}.stat-card{background:var(--dark-card-bg);border:1px solid var(--dark-neutral-border);border-radius:var(--radius-lg);padding:20px 32px;box-shadow:var(--shadow-card);text-align:center}.stat-value{font-size:32px;font-weight:700;color:var(--ui-accent-strong)}.stat-label{font-size:13px;color:var(--ui-text-secondary);margin-top:4px}.admin-table{width:100%;border-collapse:collapse;font-size:14px}.admin-table th{text-align:left;padding:10px 16px;border-bottom:1px solid var(--dark-neutral-border);color:var(--dark-text-secondary);font-weight:500;font-size:12px}.admin-table td{padding:10px 16px;border-bottom:1px solid var(--ui-border)}.admin-table tr:hover td{background:var(--ui-surface-subtle)}.role-select{padding:4px 8px;border:1px solid var(--dark-neutral-border);border-radius:var(--radius-full);background:var(--ui-surface-subtle);color:var(--ui-text);font-size:12px;cursor:pointer;outline:none}.badge-superadmin{background:var(--ui-danger-soft);color:var(--ui-danger-foreground)}.dash-loading,.dash-empty{text-align:center;color:var(--ui-text-secondary);padding:60px}.dashboard-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--ui-overlay);display:flex;align-items:center;justify-content:center;z-index:300;padding:24px}.dashboard-modal{width:min(560px,100%);background:var(--ui-surface-elevated);border:1px solid var(--ui-border);border-radius:var(--radius-lg);padding:18px;box-shadow:var(--ui-shadow);backdrop-filter:blur(10px)}.dashboard-modal-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.dashboard-modal-head h3{font-size:18px;font-weight:600}.dashboard-modal-close{width:28px;height:28px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--ui-text-secondary);cursor:pointer}.dashboard-modal-close:hover{background:var(--ui-surface-subtle);color:var(--ui-text)}.dashboard-modal-input{width:100%;padding:11px 12px;border:1px solid var(--ui-border);border-radius:var(--radius-sm);background:var(--ui-surface-subtle);color:var(--ui-text);font-size:14px;outline:none}.dashboard-modal-input:focus{border-color:color-mix(in srgb,var(--color-brands) 45%,transparent)}.dashboard-modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}.dashboard-modal-note{margin-top:10px;color:var(--ui-text-secondary);font-size:12px}.folder-chip-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.folder-chip{padding:7px 10px;border:1px solid var(--dark-neutral-border);border-radius:999px;background:var(--dark-input-bg);color:var(--ui-text-secondary);font-size:12px;cursor:pointer}.folder-chip:hover,.folder-chip.active{background:var(--ui-surface-subtle);border-color:color-mix(in srgb,var(--color-brands) 45%,transparent);color:var(--ui-text)}.tag-editor-list{display:flex;flex-direction:column;gap:12px}.tag-editor-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center}.tag-name-input{min-width:0}.tag-color-palette{display:flex;flex-wrap:wrap;gap:8px}.tag-color-option{width:22px;height:22px;border-radius:999px;border:2px solid transparent;cursor:pointer}.tag-color-option.active{border-color:var(--ui-text);box-shadow:0 0 0 1px var(--ui-border)}.tag-remove-btn{width:28px;height:28px;border:none;border-radius:var(--radius-sm);background:var(--ui-surface-subtle);color:var(--ui-text-secondary);cursor:pointer}.tag-remove-btn:hover{color:var(--ui-danger-foreground);background:var(--ui-danger-soft)}.tag-add-btn{margin-top:14px}.tag-manager-list{display:flex;flex-direction:column;gap:12px}.tag-manager-row{display:grid;grid-template-columns:minmax(120px,1fr) auto auto auto auto;gap:10px;align-items:center}.tag-manager-count{color:var(--dark-text-secondary);font-size:12px;white-space:nowrap}.html-generate-panel,.settings-panel{display:grid;gap:12px;margin-bottom:22px;padding:16px;border:1px solid var(--dark-neutral-border);border-radius:var(--radius-lg);background:var(--dark-card-bg);box-shadow:var(--shadow-card)}.html-generate-panel{grid-template-columns:minmax(160px,.8fr) minmax(180px,1fr) minmax(260px,2fr) auto;align-items:end}.html-generate-panel h2{margin:0;font-size:16px}.html-generate-panel p{margin:4px 0 0;color:var(--ui-text-secondary);font-size:12px}.html-prompt,.html-source{width:100%;min-height:74px;padding:10px 12px;border:1px solid var(--dark-neutral-border);border-radius:var(--radius-sm);background:var(--ui-surface-subtle);color:var(--ui-text);font:13px/1.45 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;outline:none;resize:vertical}.html-drop-zone{border-style:dashed}.html-doc-card{min-height:126px}.html-select{position:absolute;right:10px;bottom:10px}.html-select input{width:18px;height:18px}.html-editor-page{height:100vh;height:100dvh;display:flex;flex-direction:column;background:var(--dark-neutral-bg)}.html-editor-bar{min-height:52px;display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:8px 12px;border-bottom:1px solid var(--dark-neutral-border);background:var(--dark-neutral-bg)}.html-mode-tabs,.html-editor-tools{display:flex;flex-wrap:wrap;gap:6px}.html-mode-tabs .active{border-color:color-mix(in srgb,var(--color-brands) 35%,transparent);background:color-mix(in srgb,var(--color-brands) 20%,transparent);color:var(--ui-accent-strong)}.html-sync-wrap,.html-export-wrap{position:relative}.html-export-menu{left:0;right:auto;min-width:164px}.html-mobile-actions{display:none;position:relative}.html-save-state{border:0;padding:4px 8px;border-radius:999px;background:var(--ui-success-soft);color:var(--ui-success-foreground);font-size:12px;white-space:nowrap;cursor:pointer}.html-save-state-dirty,.html-save-state-saving{background:var(--ui-warning-soft);color:var(--ui-warning-foreground)}.html-save-state-conflict{background:var(--ui-danger-soft);color:var(--ui-danger-foreground)}.html-save-state-offline{background:var(--ui-surface-subtle);color:var(--ui-text-secondary)}.html-sync-popover{position:absolute;top:calc(100% + 8px);right:0;width:300px;max-height:320px;overflow-y:auto;padding:10px;border:1px solid var(--dark-neutral-border);border-radius:var(--radius-sm);background:var(--dark-card-bg);box-shadow:var(--shadow-dropdown);z-index:120}.html-sync-head,.html-sync-event{display:flex;justify-content:space-between;gap:10px}.html-sync-head{padding-bottom:8px;margin-bottom:6px;border-bottom:1px solid var(--dark-neutral-border)}.html-sync-head strong,.html-sync-event strong{color:var(--ui-text);font-size:12px}.html-sync-head span,.html-sync-event span,.html-sync-event time,.html-sync-empty{color:var(--ui-text-secondary);font-size:11px}.html-sync-event{padding:7px 0;border-bottom:1px solid var(--ui-border)}.html-sync-event>div{min-width:0;display:flex;flex-direction:column;gap:2px}.html-sync-event-rejected strong{color:var(--ui-danger-foreground)}.html-sync-event-warning strong{color:var(--ui-warning-foreground)}.html-sync-event-confirmed strong{color:var(--ui-success-foreground)}.html-editor-tools{padding:8px 12px;border-bottom:1px solid var(--dark-neutral-border);background:var(--dark-neutral-bg)}.html-title-input{flex:1;min-width:0;padding:9px 11px;border:1px solid var(--dark-neutral-border);border-radius:var(--radius-sm);background:var(--dark-input-bg);color:var(--dark-text-primary);font-size:15px;font-weight:600}.html-title-readonly{flex:1;min-width:0;color:var(--dark-text-primary);font-size:15px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.html-access-select{padding:9px 10px;border:1px solid var(--dark-neutral-border);border-radius:var(--radius-sm);background:var(--dark-card-bg);color:var(--dark-text-primary);font-size:13px}.html-share-panel{position:static;width:auto;border-radius:0;border-width:0 0 1px}.html-history-panel{display:grid;grid-template-columns:minmax(220px,320px) minmax(0,1fr);gap:12px;min-height:360px;padding:12px;border-bottom:1px solid var(--dark-neutral-border);background:var(--ui-page)}.html-history-list,.html-history-preview{min-height:320px;overflow:hidden;border:1px solid var(--dark-neutral-border);border-radius:var(--radius-sm);background:var(--ui-surface-subtle)}.html-history-list{overflow-y:auto}.html-history-preview{display:flex;flex-direction:column}.html-history-head,.html-history-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-bottom:1px solid var(--dark-neutral-border);color:var(--ui-text)}.html-history-preview-head>div{display:flex;flex-direction:column;gap:3px;min-width:0}.html-history-item{width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:10px 12px;border:0;border-bottom:1px solid var(--ui-border);background:transparent;color:inherit;cursor:pointer}.html-history-item:hover,.html-history-item.active{background:color-mix(in srgb,var(--color-brands) 15%,transparent)}.html-history-item span{color:var(--ui-text);font-size:13px;font-weight:600}.html-history-item small,.html-history-preview-head small,.html-history-empty{color:var(--ui-text-secondary)}.html-history-empty{padding:16px}.html-editor-main,.html-editor-grid{min-height:0;flex:1}.html-editor-main{display:flex;background:var(--ui-page)}.html-editor-grid{display:grid;grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr);width:100%}.html-visual-grid{display:grid;grid-template-columns:220px minmax(300px,.9fr) minmax(0,1.1fr);width:100%;min-height:0;background:var(--ui-page)}.html-visual-editor{display:grid;grid-template-columns:210px minmax(330px,.9fr) minmax(0,1.1fr);width:100%;min-height:0;background:var(--ui-page)}.html-block-sidebar{padding:14px;border-right:1px solid var(--dark-neutral-border);overflow:auto}.html-panel-title{margin:8px 0;color:var(--ui-text-secondary);font-size:11px;text-transform:uppercase}.html-block-btn{display:block;width:100%;margin-bottom:8px;padding:9px 10px;border:1px solid var(--dark-neutral-border);border-radius:7px;background:var(--dark-input-bg);color:var(--ui-text-secondary);text-align:left;cursor:pointer}.html-block-btn:hover{background:var(--ui-surface-subtle)}.html-block-btn.active{border-color:color-mix(in srgb,var(--color-brands) 35%,transparent);background:color-mix(in srgb,var(--color-brands) 20%,transparent);color:var(--ui-accent-strong)}.html-block-editor{padding:14px;overflow:auto}.html-visual-panel{min-height:0;padding:14px;overflow:auto;border-right:1px solid var(--dark-neutral-border)}.html-structure-list{display:grid;gap:7px;margin-bottom:12px}.html-structure-item{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;padding:9px 10px;border:1px solid var(--ui-border);border-radius:7px;background:var(--ui-surface-subtle);color:var(--ui-text-secondary);text-align:left;cursor:pointer}.html-structure-item span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.html-structure-item small{color:var(--ui-text-secondary)}.html-structure-item.active{border-color:color-mix(in srgb,var(--ui-info) 45%,transparent);background:var(--ui-info-soft);color:var(--ui-info-foreground)}.html-block-actions{display:flex;flex-wrap:wrap;gap:6px;margin:0 0 14px}.html-property-grid{display:grid;gap:10px;margin-bottom:14px}.html-property-grid label{display:grid;gap:5px;color:var(--ui-text-secondary);font-size:12px}.html-property-grid input,.html-property-grid textarea,.html-property-grid select{width:100%;min-width:0;padding:9px 10px;border:1px solid var(--dark-neutral-border);border-radius:7px;background:var(--ui-surface-subtle);color:var(--ui-text);font:inherit}.html-property-grid textarea{min-height:88px;resize:vertical}.html-style-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.html-checkbox-row{grid-template-columns:auto 1fr;align-items:center}.html-checkbox-row input{width:auto}.html-dom-editor-note{align-content:start;color:var(--ui-text-secondary)}.html-dom-editor-note h3{margin:0 0 8px;color:var(--ui-text)}.html-dom-editor-note p{margin:0;line-height:1.5}.html-block-row{display:grid;gap:10px;margin-bottom:12px;padding:12px;border:1px solid var(--dark-neutral-border);border-radius:var(--radius-sm);background:var(--ui-surface-subtle)}.html-block-row-head{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--ui-text-secondary);font-size:12px;font-weight:600}.html-block-textarea{min-height:92px;resize:vertical}.html-source{height:100%;min-height:0;border:none;border-radius:0;border-right:1px solid var(--dark-neutral-border);resize:none}.html-source-full,.html-source-readonly{width:100%;flex:1;padding:18px;background:var(--ui-surface-solid);color:var(--ui-text);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;line-height:1.55;overflow:auto;white-space:pre-wrap}.html-source-readonly{margin:0;user-select:text}.html-browser-preview{width:100%;height:100%;flex:1;border:0;background:#fff}.html-preview{overflow:auto;padding:24px;background:#fff;color:#111}.settings-panel{max-width:640px}.settings-panel h2{margin:0;font-size:18px;color:var(--dark-text-primary)}.settings-panel label{display:grid;gap:6px;color:var(--ui-text-secondary);font-size:13px}.settings-actions{display:flex;flex-wrap:wrap;gap:10px}@media(max-width:720px){.dashboard-pull-status{display:flex;align-items:center;justify-content:center;gap:7px;height:30px;margin:-8px 0 10px;color:var(--ui-text-secondary);font-size:12px;transition:color var(--transition-fast)}.dashboard-pull-status.ready,.dashboard-pull-status.refreshing{color:var(--ui-accent-strong)}.dashboard-pull-icon{font-size:16px;line-height:1}.dashboard-pull-status.refreshing .dashboard-pull-icon{animation:dashboard-refresh-spin .7s linear infinite}.auth-page{align-items:stretch;padding:16px}.auth-card{width:100%;max-width:420px;margin:auto;padding:28px 20px}.auth-card input,.auth-card button[type=submit]{min-height:44px;font-size:16px}.app-layout{grid-template-rows:auto 1fr}}@media(max-width:768px){.dashboard-auth-header{display:block;padding:10px 14px}.dashboard-auth-header .app-header-inner{justify-content:flex-start}.dashboard-app-shell,.dashboard-app-shell.sidebar-collapsed{--dashboard-sidebar-width: 0px;grid-template-columns:minmax(0,1fr)}.dashboard-sidebar,.dashboard-sidebar.collapsed{position:fixed;z-index:280;inset:0 auto 0 0;width:min(88vw,320px);max-width:100%;height:100vh;height:100dvh;padding:max(12px,env(safe-area-inset-top)) 12px max(12px,env(safe-area-inset-bottom));visibility:hidden;box-shadow:var(--ui-shadow);transform:translate(-102%);transition:transform var(--transition-std),visibility 0s linear .3s}.dashboard-sidebar.mobile-open,.dashboard-sidebar.collapsed.mobile-open{visibility:visible;transform:translate(0);transition-delay:0s}.dashboard-sidebar-backdrop{position:fixed;z-index:270;top:0;right:0;bottom:0;left:0;display:block;background:var(--ui-overlay)}.dashboard-central-shell .dashboard-mobile-sidebar-open,.dashboard-sidebar .dashboard-sidebar-close{width:40px;min-width:40px;min-height:40px;display:inline-flex;align-items:center;justify-content:center;padding:0}.dashboard-sidebar-close{margin-left:0;font-size:22px}.dashboard-sidebar-width-toggle{display:none}.dashboard-sidebar.collapsed .dashboard-sidebar-header{flex-direction:row}.dashboard-sidebar.collapsed .dashboard-sidebar-header .language-toggle{width:auto;min-width:40px;margin-left:auto}.dashboard-sidebar.collapsed .dashboard-sidebar-label{position:static;width:auto;height:auto;overflow:hidden;opacity:1;clip-path:none;transform:none}.dashboard-sidebar.collapsed .dashboard-sidebar-item,.dashboard-sidebar.collapsed .dashboard-sidebar-folder{grid-template-columns:30px minmax(0,1fr);justify-items:stretch;padding-inline:8px}.dashboard-sidebar.collapsed .dashboard-sidebar-section-heading{justify-content:space-between;padding-inline:6px}.dashboard-sidebar.collapsed .dashboard-sidebar-folder-row{display:grid;padding-inline-start:var(--sidebar-folder-offset)}.dashboard-sidebar.collapsed .dashboard-sidebar-folder-toggle{display:inline-grid}.dashboard-sidebar.collapsed .dashboard-sidebar-folder-toggle-spacer{display:block}.dashboard-sidebar.collapsed .dashboard-sidebar-footer{justify-items:stretch}.dashboard-sidebar.collapsed .dashboard-sidebar-footer .account-menu,.dashboard-sidebar.collapsed .dashboard-sidebar-footer .account-menu-trigger{width:100%}.dashboard-sidebar.dashboard-sidebar .dashboard-sidebar-footer .account-menu--sidebar .account-menu-popover{top:auto;right:auto;bottom:calc(100% + 8px);left:0}.dashboard-sidebar .dashboard-sidebar-create-folder,.dashboard-sidebar .dashboard-sidebar-folder-toggle,.dashboard-sidebar .dashboard-sidebar-header .language-toggle{width:40px;min-width:40px;flex:0 0 40px}}@media(max-width:720px){.app-header{padding:10px 12px}.app-header-inner{align-items:center;flex-direction:row;gap:10px}.app-header h1{font-size:18px;line-height:1}.header-user-slot{margin-left:auto;min-width:0}.app-main.dashboard{padding:16px 12px calc(24px + env(safe-area-inset-bottom))}.dash-actions{align-items:center;flex-direction:row;flex-wrap:wrap}.resource-control-actions,.dash-actions-secondary{align-items:center;flex-direction:row;flex-wrap:wrap;gap:6px}.resource-control-actions>*,.dash-actions-secondary>*{width:auto;flex:1 1 auto}.resource-control-panel{display:none}.resource-control-actions .btn-primary,.resource-control-actions .btn-ghost,.dash-actions-secondary .btn-ghost{min-height:32px;padding:5px 8px;font-size:12px;gap:5px}.current-user-badge{max-width:min(54vw,260px);width:auto;padding:7px 8px}.dash-header{align-items:stretch;flex-direction:column;gap:16px;margin-bottom:20px}.dash-header h1{font-size:22px}.dash-actions,.dash-section-actions{flex-wrap:wrap}.dash-actions>*,.dash-section-actions>*{flex:1 1 auto}.dash-actions{align-items:center}.dash-actions-secondary{display:none}.mobile-action-menu{display:block;flex:0 0 auto}.dash-actions>.mobile-action-menu{flex:0 0 auto}.dash-more-btn{min-width:76px}.mobile-action-popover .card-menu-item{text-decoration:none}.dash-toolbar{display:grid;grid-template-columns:auto minmax(0,1fr);gap:6px;margin-bottom:18px}.dashboard-new-menu .btn-primary{min-height:38px;padding:5px 8px;gap:4px;font-size:12px}.dash-search{width:100%;min-width:0;min-height:38px;padding:7px 9px;font-size:14px}.dash-sort-select{grid-column:1 / -1;width:100%;min-width:0;min-height:38px;padding:6px;font-size:12px;flex-basis:auto}.content-type-tabs,.tag-filter-list{grid-column:1 / -1;width:100%}.content-type-tabs button{flex:1}.tag-filter-list{position:relative;flex-wrap:nowrap;overflow-x:auto;gap:6px;padding:1px 28px 5px 1px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.tag-filter-list::-webkit-scrollbar{display:none}.tag-filter{flex:0 0 auto;padding:5px 10px}.tag-filter-scroll-hint{display:grid;position:sticky;right:0;flex:0 0 auto;width:20px;margin-left:-26px;place-items:center;color:var(--ui-accent-strong);font-size:22px;line-height:1;pointer-events:none;background:linear-gradient(90deg,transparent,var(--dark-neutral-bg) 45%)}.home-tabs{width:100%}.home-tab{flex:1;text-align:center}.html-generate-panel{grid-template-columns:1fr}.html-editor-bar{min-height:38px;flex-wrap:nowrap;gap:4px;padding:4px 6px;overflow:visible;width:100%;max-width:100%}.html-title-input{flex:1 1 0;width:0;min-width:0;min-height:28px;padding:3px 7px;font-size:14px}.html-title-readonly{flex:1 1 0;min-width:0;overflow-y:auto;text-overflow:ellipsis;white-space:nowrap}.html-mode-tabs{display:none}.html-mode-tabs .btn-ghost{justify-content:center}.html-editor-bar>.btn-primary,.html-editor-bar>.btn-ghost,.html-mobile-actions{flex:0 0 auto}.html-editor-bar .btn-ghost,.html-editor-bar .btn-primary{min-height:28px;padding:3px 7px;font-size:11px;gap:4px;white-space:nowrap}.html-desktop-action{display:none!important}.html-mobile-actions{display:block}.html-actions-trigger{width:28px;min-width:28px;padding:0;justify-content:center;font-size:16px;line-height:1}.html-actions-popover{right:0;top:calc(100% + 6px);width:min(190px,calc(100vw - 16px))}.html-actions-popover .card-menu-item{min-height:32px;padding:7px 8px;font-size:12px}.html-actions-popover .card-menu-item.active{border-color:color-mix(in srgb,var(--color-brands) 35%,transparent);background:color-mix(in srgb,var(--color-brands) 16%,transparent);color:var(--ui-accent-strong)}.html-editor-grid,.html-history-panel,.html-visual-grid,.html-visual-editor{grid-template-columns:1fr}.html-visual-editor .html-browser-preview{min-height:420px}.html-editor-main{min-height:0}.html-source{min-height:34vh;border-right:none;border-bottom:1px solid var(--dark-neutral-border)}.html-preview{min-height:46vh;padding:16px}.btn-primary,.btn-ghost,.folder-action,.folder-manager-btn,.card-menu-item{min-height:40px}.dash-grid{grid-template-columns:1fr;gap:12px}.dashboard .dash-grid{grid-template-columns:1fr}.dash-section,.dash-grid,.canvas-card{min-width:0;max-width:100%}.canvas-card,.dashboard .canvas-card{min-height:112px;padding:18px 48px 18px 16px}.dashboard .card-title,.dashboard .card-title-input{font-size:16px}.dashboard .card-tags .card-tag:nth-child(n+3){display:inline-flex}.dashboard .canvas-card .card-manage,.dashboard .canvas-card .card-pin{opacity:1}.card-title,.card-title-input{overflow-wrap:anywhere}.card-meta{flex-wrap:wrap}.card-manage,.card-pin,.card-delete{width:36px;height:36px}.card-pin,.card-delete{display:none}.card-manage{right:6px}.card-menu{position:fixed;left:12px;right:12px;top:auto;bottom:12px;width:auto;min-width:0;z-index:320}.admin-stats{display:grid;grid-template-columns:1fr;gap:12px}.stat-card{padding:16px}.admin-table{display:block;overflow-x:auto;white-space:nowrap}.dashboard-modal-backdrop{align-items:flex-end;padding:10px}.dashboard-modal{width:100%;max-height:calc(100vh - 20px);max-height:calc(100dvh - 20px);overflow-y:auto;border-radius:var(--radius-md);padding:16px}.dashboard-modal-actions{flex-direction:column-reverse}.dashboard-modal-actions .btn-primary,.dashboard-modal-actions .btn-ghost{width:100%}.tag-editor-row{grid-template-columns:1fr auto}.tag-name-input{grid-column:1 / -1}.dash-section-head,.folder-manager-row{align-items:stretch;flex-direction:column}.folder-manager-top{align-items:center;gap:8px}.folder-manager-main{flex:1;min-width:0}.folder-manager-actions{justify-content:flex-start}.dashboard-workspace{grid-template-columns:1fr;gap:12px;margin-top:20px}.dashboard-folder-nav{position:static;max-height:none;overflow:visible;padding:10px}.dashboard-folder-nav-head{margin-bottom:8px}.dashboard-folder-nav .folder-manager-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;overflow:visible}.folder-nav-item{min-width:0;width:100%;min-height:36px}.folder-nav-name{max-width:none}.folder-manager-body{min-height:360px;max-height:360px}.dashboard-recents{margin-top:22px}.dashboard-recents-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}.dashboard-recent-card{min-height:86px;padding:9px;grid-template-columns:17px minmax(0,1fr);gap:5px 6px}.dashboard-recent-title{font-size:12px;-webkit-line-clamp:2}.dashboard-recent-meta{font-size:10px}.dashboard-recents-list .dashboard-recent-card{min-height:58px;grid-template-columns:18px minmax(0,1fr);grid-template-rows:auto auto}.dashboard-recents-list .dashboard-recent-meta{grid-column:2;white-space:normal}.dashboard .dash-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.dashboard .canvas-card{min-height:128px;padding:12px 32px 12px 12px;border-radius:10px}.dashboard .card-title,.dashboard .card-title-input{font-size:13px}.dashboard .card-meta{gap:4px}.dashboard .badge,.dashboard .card-date{font-size:9px}.dashboard .card-tags{gap:3px;margin-top:7px}.dashboard .card-tag{padding:2px 6px;font-size:9px}.dashboard .card-folder,.dashboard .card-owner{font-size:10px}.dashboard .canvas-card .card-manage,.dashboard .canvas-card .card-pin{width:28px;height:28px;font-size:14px}.folder-scroll-controls{display:inline-flex;align-self:flex-end;gap:5px;margin-top:-2px}.folder-scroll-controls .btn-ghost{min-height:28px;width:30px;padding:0;font-size:15px}}@media(prefers-reduced-motion:reduce){.dashboard-sidebar,.dashboard-sidebar.collapsed,.dashboard-sidebar-label,.dashboard-sidebar-folder-name,.dashboard-sidebar-folder-toggle span{transition:none}}.canvas-card.dragging{opacity:.45;border-color:color-mix(in srgb,var(--color-brands) 52%,transparent);cursor:grabbing}.canvas-view{height:100vh;height:100dvh;display:flex;flex-direction:column;position:relative;--canvas-topbar-height: 44px;--canvas-toolbar-height: 0px}.canvas-loading,.canvas-error{display:flex;align-items:center;justify-content:center;height:100vh;height:100dvh;color:var(--ui-text-secondary);background:var(--ui-page)}.error-modal{display:flex;flex-direction:column;align-items:center;gap:12px;background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--radius-lg);padding:40px 48px;box-shadow:var(--ui-shadow);text-align:center}.error-modal h2{color:var(--ui-text);font-size:20px;font-weight:600;margin:0}.error-modal p{color:var(--ui-text-secondary);font-size:14px;margin:0}.error-home-btn{display:inline-block;margin-top:8px;padding:10px 24px;background:var(--color-brands);color:var(--ui-brand-on);border-radius:var(--radius-sm);text-decoration:none;font-size:14px;font-weight:500;transition:background var(--transition-fast),border-color var(--transition-fast)}.error-home-btn:hover{background:var(--color-brands);box-shadow:0 0 0 1px var(--color-brands-light)}.error-home-btn:disabled{cursor:not-allowed;opacity:.65}.access-gate{display:flex;align-items:center;justify-content:center;min-height:100vh;min-height:100dvh;background:var(--ui-page);padding:24px}.access-gate-card{display:flex;flex-direction:column;align-items:center;width:100%;max-width:400px;background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--radius-xl);padding:40px 36px 32px;box-shadow:var(--ui-shadow);gap:0}.access-gate-icon{width:64px;height:64px;border-radius:16px;background:color-mix(in srgb,var(--color-brands) 12%,transparent);border:1px solid color-mix(in srgb,var(--color-brands) 25%,transparent);display:flex;align-items:center;justify-content:center;color:var(--ui-accent-strong);margin-bottom:20px}.access-gate-title{font-size:20px;font-weight:600;color:var(--ui-text);margin:0 0 8px;text-align:center}.access-gate-sub{font-size:14px;color:var(--ui-text-secondary);margin:0 0 28px;text-align:center}.access-gate-section{width:100%}.access-gate-label{font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--ui-text-secondary);margin-bottom:10px}.access-gate-form{display:flex;gap:8px;width:100%}.access-gate-input{flex:1;min-width:0;padding:10px 14px;background:var(--ui-surface-subtle);border:1px solid var(--ui-border);border-radius:var(--radius-sm);color:var(--ui-text);font-size:14px;outline:none;transition:border-color var(--transition-fast)}.access-gate-input:focus{border-color:color-mix(in srgb,var(--color-brands) 50%,transparent)}.access-gate-input::placeholder{color:var(--ui-text-secondary)}.access-gate-btn{padding:10px 18px;border:none;border-radius:var(--radius-sm);font-size:14px;font-weight:500;cursor:pointer;white-space:nowrap;transition:opacity var(--transition-fast),background var(--transition-fast),border-color var(--transition-fast)}.access-gate-btn:disabled{opacity:.45;cursor:not-allowed}.access-gate-btn-primary{background:var(--color-brands);color:var(--ui-brand-on)}.access-gate-btn-primary:not(:disabled):hover{box-shadow:0 0 0 1px var(--color-brands-light)}.access-gate-btn-secondary{background:var(--ui-surface-subtle);color:var(--ui-text-secondary);border:1px solid var(--ui-border)}.access-gate-btn-secondary:not(:disabled):hover{background:var(--ui-brand-soft)}.access-gate-divider{width:100%;display:flex;align-items:center;gap:12px;margin:20px 0;color:var(--ui-text-secondary);font-size:12px}.access-gate-divider:before,.access-gate-divider:after{content:"";flex:1;height:1px;background:var(--ui-border)}.access-gate-request-row{display:flex;gap:8px;width:100%}.access-gate-select{padding:10px 12px;background:var(--ui-surface-subtle);border:1px solid var(--ui-border);border-radius:var(--radius-sm);color:var(--ui-text);font-size:14px}.access-gate-back{margin-top:28px;font-size:13px;color:var(--ui-text-secondary);text-decoration:none;transition:color .15s}.access-gate-back:hover{color:var(--ui-text-secondary)}.access-request-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,black 45%,transparent);padding:24px}.access-request-dialog{position:relative;display:flex;flex-direction:column;align-items:center;width:100%;max-width:380px;background:var(--ui-surface);border:1px solid var(--ui-border);border-radius:var(--radius-xl);padding:36px 32px 28px;box-shadow:var(--ui-shadow)}.access-request-dialog-close{position:absolute;top:12px;right:12px;width:28px;height:28px;display:flex;align-items:center;justify-content:center;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ui-text-secondary);font-size:18px;line-height:1;cursor:pointer}.access-request-dialog-close:hover{background:var(--ui-surface-subtle)}.access-request-dialog-icon{width:56px;height:56px;border-radius:14px;background:color-mix(in srgb,var(--color-brands) 12%,transparent);border:1px solid color-mix(in srgb,var(--color-brands) 25%,transparent);display:flex;align-items:center;justify-content:center;color:var(--ui-accent-strong);margin-bottom:16px}.access-request-dialog-title{font-size:18px;font-weight:600;color:var(--ui-text);margin:0 0 6px;text-align:center;word-break:break-word}.access-request-dialog-sub{font-size:13px;color:var(--ui-text-secondary);margin:0 0 22px;text-align:center}.access-request-dialog-row{display:flex;gap:8px;width:100%}.access-request-dialog-error{margin:14px 0 0;font-size:13px;color:var(--ui-danger-foreground);text-align:center}.access-request-list{display:flex;flex-direction:column;gap:8px}.access-request-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border:1px solid var(--ui-border);border-radius:var(--radius-sm);background:var(--ui-surface-subtle)}.access-request-title{color:var(--ui-text);font-weight:600}.access-request-meta{margin-top:4px;color:var(--ui-text-secondary);font-size:13px}.access-request-actions{display:flex;gap:8px;flex-shrink:0}.password-access-panel{display:flex;flex-direction:column;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--ui-border)}.canvas-topbar{position:absolute;top:0;left:0;right:0;height:44px;background:var(--ui-surface-solid);backdrop-filter:blur(12px);border-bottom:1px solid var(--ui-border);display:flex;align-items:center;padding:0 12px;gap:8px;z-index:100}.canvas-search-input{width:220px;height:32px;padding:6px 10px;font-size:12px}.share-form-transfer{margin-top:12px}.share-checkbox{display:inline-flex;align-items:center;gap:8px;margin:8px 0 4px;font-size:12px;color:var(--ui-text-secondary)}.topbar-back{color:var(--dark-text-secondary);text-decoration:none;display:flex;align-items:center;padding:4px}.topbar-back:hover{color:var(--ui-text)}.topbar-title{background:transparent;border:none;color:var(--ui-text);font-size:14px;font-weight:600;outline:none;padding:4px 8px;border-radius:var(--radius-full);min-width:120px}.topbar-title:focus{background:var(--ui-surface-subtle)}.topbar-title-ro{font-size:14px;font-weight:600;color:var(--ui-text)}.topbar-right{margin-left:auto;display:flex;align-items:center;gap:8px}.topbar-actions{display:flex;align-items:center;gap:8px}.topbar-action-label,.topbar-canvas-actions{display:none}.topbar-actions-sep{height:1px;background:var(--ui-border);margin:4px 2px}.topbar-menu-btn{display:none;align-items:center;justify-content:center;padding:4px 6px}.topbar-menu-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99}.topbar-status{font-size:11px;color:var(--ui-text-secondary)}.topbar-sync{min-width:64px;height:22px;padding:0 8px;-webkit-appearance:none;appearance:none;border-radius:var(--radius-full);display:inline-flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;border:1px solid var(--ui-border);cursor:pointer}.sync-menu-wrap{position:relative;display:inline-flex}.sync-events-popover{position:absolute;top:calc(100% + 8px);right:0;z-index:180;width:min(340px,calc(100vw - 24px));padding:10px;border:1px solid var(--ui-border);border-radius:var(--radius-sm);background:var(--ui-surface-elevated);box-shadow:var(--ui-shadow)}.sync-events-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;color:var(--ui-text);font-size:12px}.sync-events-head span,.sync-event-empty{color:var(--ui-text-secondary)}.sync-event-empty{padding:8px 0;font-size:12px}.sync-event-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;padding:8px 0;border-top:1px solid var(--ui-border);font-size:12px}.sync-event-row strong{display:block;overflow:hidden;color:var(--ui-text);text-overflow:ellipsis;white-space:nowrap}.sync-event-row span{display:block;margin-top:2px;color:var(--ui-text-secondary)}.sync-event-row time{color:var(--ui-text-secondary);font-size:11px}.sync-event-pending strong,.sync-event-warning strong{color:var(--ui-warning-foreground)}.sync-event-confirmed strong,.sync-event-info strong{color:var(--ui-success-foreground)}.sync-event-rejected strong{color:var(--ui-danger-foreground)}.topbar-sync-synced{color:var(--ui-success-foreground);background:var(--ui-success-soft)}.topbar-sync-saving,.topbar-sync-resyncing{color:var(--ui-warning-foreground);background:var(--ui-warning-soft)}.topbar-sync-conflict{color:var(--ui-danger-foreground);background:var(--ui-danger-soft)}.topbar-sync-offline{color:var(--ui-text-secondary);background:var(--ui-surface-subtle)}.topbar-ws-status{display:flex;align-items:center}.online-users{display:flex;align-items:center;gap:-4px}.online-avatar{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:#fff;border:2px solid var(--ui-surface-solid);margin-left:-4px;cursor:default}.online-avatar:first-child{margin-left:0}.topbar-role{font-size:11px;padding:2px 8px;background:color-mix(in srgb,var(--color-brands) 15%,transparent);color:var(--ui-accent-strong);border-radius:var(--radius-full)}.sync-notice{position:absolute;top:52px;left:50%;transform:translate(-50%);max-width:min(520px,calc(100vw - 32px));padding:9px 14px;border-radius:var(--radius-sm);font-size:12px;font-weight:600;z-index:140;box-shadow:var(--ui-shadow);border:1px solid var(--dark-neutral-border)}.sync-notice-info{color:var(--ui-info-foreground);background:var(--ui-info-soft)}.sync-notice-warning{color:var(--ui-warning-foreground);background:var(--ui-warning-soft)}.node-toolbar{position:absolute;top:calc(var(--canvas-topbar-height, 44px) + 10px);left:10px;display:flex;align-items:flex-start;gap:8px;z-index:120}.node-toolbar-tabs{width:118px;padding:6px;border:1px solid var(--dark-neutral-border);border-radius:var(--radius-md);background:var(--ui-surface-elevated);backdrop-filter:blur(12px);display:flex;flex-direction:column;gap:4px;box-shadow:var(--ui-shadow)}.toolbar-tab{height:34px;width:100%;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--dark-text-secondary);cursor:pointer;display:flex;align-items:center;gap:8px;padding:0 9px;font-size:12px;font-weight:600;text-align:left}.toolbar-tab:hover{background:var(--ui-surface-subtle);color:var(--dark-text-primary)}.toolbar-tab.active{background:color-mix(in srgb,var(--color-brands) 18%,transparent);color:var(--ui-accent-strong)}.toolbar-tab svg{flex:0 0 auto}.toolbar-popover{width:238px;max-width:min(238px,calc(100vw - 156px));padding:10px;border:1px solid var(--dark-neutral-border);border-radius:var(--radius-md);background:var(--ui-surface-elevated);backdrop-filter:blur(12px);box-shadow:var(--ui-shadow)}.toolbar-popover-title{color:var(--dark-text-primary);font-size:13px;font-weight:700;margin-bottom:8px}.toolbar-popover-label{color:var(--ui-text-secondary);font-size:10px;font-weight:700;text-transform:uppercase;margin:10px 0 6px}.toolbar-text-input,.block-menu-text-input{width:100%;height:32px;padding:0 9px;border:1px solid var(--dark-neutral-border);border-radius:var(--radius-sm);outline:none;background:var(--ui-surface-subtle);color:var(--dark-text-primary);font:inherit}.toolbar-text-input:focus,.block-menu-text-input:focus{border-color:var(--color-brands)}.toolbar-text-input:disabled,.block-menu-text-input:disabled{opacity:.5}.toolbar-grid{display:flex;align-items:center;flex-wrap:wrap;gap:6px}.toolbar-menu-row{display:flex;flex-direction:column;gap:6px}.toolbar-choice{min-height:34px;border:none;border-radius:var(--radius-sm);background:var(--ui-surface-subtle);color:var(--dark-text-secondary);cursor:pointer;display:flex;align-items:center;gap:8px;padding:0 10px;font-size:12px;font-weight:600;text-align:left}.toolbar-choice:hover{background:var(--ui-brand-soft);color:var(--dark-text-primary)}.toolbar-choice:disabled{opacity:.42;cursor:not-allowed}.toolbar-choice:disabled:hover{background:var(--ui-surface-subtle);color:var(--dark-text-secondary)}.toolbar-choice.active{background:color-mix(in srgb,var(--color-brands) 18%,transparent);color:var(--ui-accent-strong)}.toolbar-choice-danger{color:var(--ui-danger-foreground)}.toolbar-choice-danger:hover{background:var(--ui-danger-soft);color:var(--ui-danger-foreground)}.tb-label{font-size:10px;color:var(--ui-text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-right:4px;white-space:nowrap}.tb-sep{width:1px;height:20px;background:var(--ui-border);margin:0 6px;flex-shrink:0}.tb-color{width:24px;height:24px;border-radius:50%;border:2px solid transparent;cursor:pointer;padding:0;flex-shrink:0;transition:transform .1s}.tb-color:hover{transform:scale(1.2)}.tb-color.active{border-color:var(--ui-text)}.tb-color-none{background:var(--ui-surface-subtle);font-size:9px;color:var(--ui-text-secondary);display:flex;align-items:center;justify-content:center}.tb-btn{height:30px;min-width:30px;border:none;background:transparent;color:var(--dark-text-secondary);cursor:pointer;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;padding:0 2px;flex-shrink:0}.tb-btn:hover{background:var(--ui-surface-subtle);color:var(--ui-text)}.tb-btn.active{background:color-mix(in srgb,var(--color-brands) 20%,transparent);color:var(--ui-accent-strong)}.tb-btn-danger:hover{background:var(--ui-danger-soft);color:var(--ui-danger-foreground)}.block-menu{display:none}@media(max-width:640px){.node-toolbar{display:none}.block-menu{display:flex;flex-direction:column;gap:1px;position:absolute;left:8px;bottom:calc(98px + env(safe-area-inset-bottom));width:min(190px,calc(100vw - 16px));max-height:calc(100dvh - var(--canvas-topbar-height, 48px) - 24px);overflow-y:auto;padding:5px;background:var(--ui-surface-elevated);backdrop-filter:blur(12px);border:1px solid var(--dark-neutral-border);border-radius:12px;box-shadow:var(--ui-shadow);z-index:95}.block-menu-item{display:flex;align-items:center;gap:8px;width:100%;min-height:32px;padding:0 8px;border:none;background:transparent;color:var(--ui-text);font-size:12px;border-radius:7px;cursor:pointer}.block-menu-item.open{background:var(--ui-surface-subtle)}.block-menu-item:disabled{opacity:.42;cursor:not-allowed}.block-menu-label{flex:1;text-align:left}.block-menu-chev{color:var(--ui-text-secondary);flex:0 0 auto;transition:transform .15s}.block-menu-item.open .block-menu-chev{transform:rotate(180deg)}.block-menu-ico{color:var(--ui-text-secondary);flex:0 0 auto}.block-menu-danger,.block-menu-danger .block-menu-ico{color:var(--ui-danger-foreground)}.block-menu-swatch{width:16px;height:16px;border-radius:50%;flex:0 0 auto;border:2px solid var(--ui-border)}.block-menu-swatch.swatch-empty{background:repeating-linear-gradient(45deg,var(--ui-text-muted),var(--ui-text-muted) 3px,var(--ui-surface-subtle) 3px,var(--ui-surface-subtle) 6px)}.block-menu-pop{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:3px 8px 8px}.block-menu-pop .tb-color{width:24px;height:24px}.block-menu-pop .tb-btn{height:30px;min-width:30px}.block-menu-text-input{flex:1 0 100%}.block-menu-sublabel{width:100%;font-size:10px;color:var(--ui-text-secondary);text-transform:uppercase;letter-spacing:.5px}.block-menu-toggle{flex:1 0 100%;margin-top:2px;height:28px;padding:0 8px;border:1px solid var(--dark-neutral-border);border-radius:7px;background:transparent;color:var(--ui-text-secondary);font-size:11px;cursor:pointer}.block-menu-toggle.active{background:color-mix(in srgb,var(--color-brands) 20%,transparent);color:var(--ui-accent-strong)}.block-menu-divider{height:1px;background:var(--dark-neutral-border);margin:3px 2px}.block-menu-history{display:grid;grid-template-columns:1fr 1fr;gap:2px}}.share-panel{position:absolute;top:44px;right:0;width:320px;background:var(--dark-card-bg);backdrop-filter:blur(12px);border:1px solid var(--dark-neutral-border);border-radius:0 0 var(--radius-lg) var(--radius-lg);padding:16px;box-shadow:var(--shadow-dropdown);z-index:100;max-height:calc(100dvh - var(--canvas-topbar-height, 44px) - 8px);overflow:hidden}.share-panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.share-panel h3{font-size:14px;margin:0}.share-section{padding-top:12px;margin-top:12px;border-top:1px solid var(--dark-neutral-border)}.share-section:first-of-type{padding-top:0;margin-top:0;border-top:none}.share-section-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--ui-text-secondary);margin-bottom:8px}.slug-row{display:flex;align-items:center;gap:6px}.slug-prefix{font-size:12px;color:var(--ui-text-secondary);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;white-space:nowrap}.slug-input{flex:1;min-width:0;padding:6px 10px;border:1px solid var(--dark-neutral-border);border-radius:6px;background:var(--ui-surface-subtle);color:var(--ui-text);font-size:13px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;outline:none}.slug-input:focus{border-color:var(--color-brands)}.slug-hint{margin-top:6px;font-size:11px;color:var(--ui-text-secondary)}.share-visibility-select{width:100%;padding:7px 10px;border:1px solid var(--dark-neutral-border);border-radius:var(--radius-full);background-color:var(--ui-surface-subtle);color:var(--ui-text);font-size:12px;margin-bottom:4px}.share-item-role{font-size:11px;color:var(--ui-text-secondary);margin-left:auto;margin-right:8px}.share-form{display:flex;gap:6px;margin-bottom:12px}.share-form input{flex:1;padding:6px 10px;border:1px solid var(--dark-neutral-border);border-radius:var(--radius-full);background:var(--ui-surface-subtle);color:var(--ui-text);font-size:12px;outline:none}.share-form select{padding:6px;border:1px solid var(--dark-neutral-border);border-radius:var(--radius-full);background-color:var(--ui-surface-subtle);color:var(--ui-text);font-size:12px}.share-visibility-select,.share-form select{cursor:pointer;outline:none}.share-visibility-select:hover,.share-form select:hover{border-color:var(--dark-text-muted)}.share-visibility-select:focus,.share-form select:focus{border-color:var(--color-brands)}.share-visibility-select option,.share-form select option{background:var(--ui-surface-solid);color:var(--ui-text)}.share-form button{padding:6px 12px;border:none;border-radius:var(--radius-full);background:var(--color-brands);color:var(--ui-brand-on);font-size:12px;cursor:pointer}.share-list{display:flex;flex-direction:column;gap:6px}.share-item{display:flex;justify-content:space-between;align-items:center;font-size:12px;color:var(--ui-text-secondary);padding:4px 0}.share-item button{border:none;background:transparent;color:var(--ui-text-secondary);cursor:pointer;font-size:14px}.share-item button:hover{color:var(--ui-danger-foreground)}.history-panel{position:absolute;top:44px;right:0;width:360px;max-height:calc(100vh - 44px);overflow-y:auto;background:var(--dark-card-bg);backdrop-filter:blur(12px);border:1px solid var(--dark-neutral-border);border-radius:0 0 0 var(--radius-lg);padding:16px;box-shadow:var(--shadow-dropdown);z-index:100}.history-panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.history-panel-header h3{font-size:14px;margin:0}.history-access-control{display:flex;align-items:center;gap:8px;margin-bottom:12px;padding-bottom:12px;border-bottom:1px solid var(--dark-neutral-border)}.history-access-control label{font-size:11px;color:var(--dark-text-secondary);white-space:nowrap}.history-access-control select{padding:4px 6px;border:1px solid var(--dark-neutral-border);border-radius:var(--radius-full);background:var(--ui-surface-subtle);color:var(--ui-text);font-size:11px}.history-loading,.history-empty,.history-error{font-size:12px;color:var(--ui-text-secondary);padding:8px 0}.history-error{color:var(--ui-danger-foreground)}.history-split{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.history-list{display:flex;flex-direction:column;gap:2px}.history-item{width:100%;text-align:left;padding:8px;border-radius:var(--radius-sm);background:var(--ui-surface-subtle);border:1px solid transparent;color:inherit;cursor:pointer;transition:background .15s}.history-item:hover,.history-item.active{background:var(--ui-brand-soft);border-color:var(--ui-border)}.history-item.active{border-color:color-mix(in srgb,var(--color-brands) 50%,transparent)}.history-item-header{display:flex;align-items:center;gap:6px}.history-op-type{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;padding:2px 5px;border-radius:3px}.history-op-add{background:var(--ui-success-soft);color:var(--ui-success-foreground)}.history-op-delete{background:var(--ui-danger-soft);color:var(--ui-danger-foreground)}.history-op-change{background:color-mix(in srgb,var(--color-brands) 15%,transparent);color:var(--ui-accent-strong)}.history-user{font-size:12px;color:var(--ui-text-secondary);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-rev{font-size:10px;color:var(--ui-text-secondary)}.history-item-detail{font-size:11px;color:var(--ui-text-secondary);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-item-date{font-size:10px;color:var(--ui-text-secondary);margin-top:2px}.history-load-more{margin-top:8px;align-self:center}.history-preview{padding:10px;border:1px solid var(--dark-neutral-border);border-radius:var(--radius-sm);background:var(--ui-surface-subtle)}.history-preview-head{display:flex;justify-content:space-between;gap:8px;margin-bottom:10px}.history-preview-head strong{font-size:13px}.history-preview-head span,.history-preview-row span,.history-preview-grid span{font-size:10px;color:var(--ui-text-secondary)}.history-preview-row{display:flex;justify-content:space-between;gap:8px;padding:5px 0;border-top:1px solid var(--ui-border)}.history-preview-row strong{max-width:170px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:var(--ui-text-secondary)}.history-preview-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}.history-preview-grid div{padding:8px;border-radius:var(--radius-sm);background:var(--dark-input-bg)}.history-preview-grid strong{display:block;margin-top:2px;font-size:18px;color:var(--ui-text)}.history-preview-detail{margin-top:10px;font-size:11px;color:var(--ui-text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.history-restore-btn{width:100%;margin-top:10px}.canvas-node-embed{display:flex;flex-direction:column;overflow:hidden;cursor:grab;border-color:color-mix(in srgb,var(--color-brands) 40%,transparent)}.canvas-node-embed:hover{border-color:color-mix(in srgb,var(--color-brands) 70%,transparent)}.embed-header{display:flex;align-items:center;gap:6px;padding:6px 10px;background:color-mix(in srgb,var(--color-brands) 8%,transparent);border-bottom:1px solid color-mix(in srgb,var(--color-brands) 15%,transparent);min-height:30px}.embed-icon{flex-shrink:0;opacity:.5}.embed-title{font-size:12px;font-weight:600;color:var(--ui-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.embed-preview{flex:1;display:flex;align-items:center;justify-content:center;padding:4px;background:var(--ui-surface-subtle)}.embed-minimap{width:100%;height:100%}.embed-loading,.embed-error{font-size:11px;color:var(--ui-text-secondary)}.embed-error{color:var(--ui-danger-foreground)}.canvas-node-doc{display:flex;flex-direction:column;overflow:hidden;cursor:grab;border-color:color-mix(in srgb,var(--color-brands) 40%,transparent)}.canvas-node-doc:hover{border-color:color-mix(in srgb,var(--color-brands) 70%,transparent)}.canvas-node-doc .embed-header{gap:6px}.doc-kind-badge{margin-left:auto;flex-shrink:0;font-size:9px;font-weight:700;letter-spacing:.04em;padding:1px 5px;border-radius:var(--radius-full);color:var(--ui-text-secondary);background:var(--ui-surface-subtle)}.doc-preview{padding:0;background:var(--ui-surface-subtle);align-items:stretch;justify-content:stretch;position:relative}.doc-preview .embed-loading,.doc-preview .embed-error{margin:auto}.doc-frame{width:100%;height:100%;border:0;display:block;pointer-events:none}.doc-frame-text{background:var(--ui-surface)}.doc-frame-html{background:#fff}.doc-excerpt{margin:0;padding:8px 10px;font-size:11px;line-height:1.45;color:var(--ui-text-secondary);overflow:hidden}.embed-picker-panel{position:absolute;top:44px;right:0;width:320px;max-height:calc(100vh - 44px);overflow-y:auto;background:var(--ui-surface-elevated);backdrop-filter:blur(12px);border:1px solid var(--dark-neutral-border);border-radius:0 0 0 8px;padding:16px;z-index:100}.doc-picker-new{width:100%;padding:7px 10px;margin-bottom:8px;border:1px dashed color-mix(in srgb,var(--color-brands) 55%,transparent);border-radius:var(--radius-full);background:color-mix(in srgb,var(--color-brands) 12%,transparent);color:var(--ui-text);font-size:12px;font-weight:600;cursor:pointer}.doc-picker-new:hover:not(:disabled){background:color-mix(in srgb,var(--color-brands) 22%,transparent);border-style:solid}.doc-picker-new:disabled{opacity:.6;cursor:default}.doc-picker-tabs{display:flex;gap:4px;margin-bottom:8px}.doc-picker-tabs button{flex:1;padding:4px 8px;border:1px solid var(--dark-neutral-border);border-radius:var(--radius-full);background:transparent;color:var(--ui-text-secondary);font-size:11px;cursor:pointer}.doc-picker-tabs button.active{background:color-mix(in srgb,var(--color-brands) 25%,transparent);border-color:color-mix(in srgb,var(--color-brands) 60%,transparent);color:var(--ui-text)}.embed-search-input{width:100%;padding:6px 10px;border:1px solid var(--dark-neutral-border);border-radius:var(--radius-full);background:var(--ui-surface-subtle);color:var(--ui-text);font-size:12px;outline:none;margin-bottom:8px}.embed-canvas-list{display:flex;flex-direction:column;gap:2px}.embed-canvas-item{padding:8px 10px;border-radius:var(--radius-sm);cursor:pointer;display:flex;flex-direction:column;gap:2px;transition:background .15s}.embed-canvas-item:hover{background:color-mix(in srgb,var(--color-brands) 12%,transparent)}.embed-canvas-title{font-size:13px;font-weight:500;color:var(--ui-text)}.embed-canvas-owner{font-size:11px;color:var(--ui-text-secondary)}.chat-drawer{position:absolute;top:var(--canvas-topbar-height, 44px);right:0;bottom:0;width:320px;max-width:80vw;display:flex;flex-direction:column;background:var(--ui-surface-elevated);border-left:1px solid var(--ui-border);z-index:120;backdrop-filter:blur(8px);color:var(--ui-text)}.chat-drawer-head{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;border-bottom:1px solid var(--ui-border);font-weight:600;font-size:14px;flex-shrink:0}.chat-drawer-close{background:none;border:none;color:inherit;font-size:22px;cursor:pointer;line-height:1;width:36px;height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;flex:0 0 auto}.chat-drawer-close:hover{opacity:.7;background:var(--ui-surface-subtle)}@media(max-width:640px){.chat-drawer{left:0;width:100%;max-width:100%;background:var(--ui-surface-elevated)}.chat-drawer-head{padding:12px 14px;font-size:16px}.chat-drawer-close{width:44px;height:44px;font-size:28px}}.chat-pick-hint{position:absolute;top:calc(var(--canvas-topbar-height, 44px) + 10px);left:50%;transform:translate(-50%);z-index:130;display:flex;align-items:center;gap:12px;max-width:calc(100% - 24px);padding:8px 10px 8px 14px;border-radius:10px;background:var(--ui-surface-elevated);border:1px solid var(--ui-brand);box-shadow:var(--ui-shadow);backdrop-filter:blur(8px);font-size:13px}.chat-pick-hint-text{color:var(--ui-text)}.chat-pick-cancel{flex:0 0 auto;background:none;border:1px solid var(--ui-border);color:inherit;border-radius:8px;padding:6px 12px;cursor:pointer;font:inherit}.chat-pick-cancel:hover{background:var(--ui-surface-subtle)}@media(max-width:640px){.chat-pick-hint{font-size:14px;padding:10px 12px 10px 16px}.chat-pick-cancel{padding:8px 14px;min-height:40px}}.shortcuts-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--ui-overlay);z-index:1000;display:flex;align-items:center;justify-content:center}.shortcuts-panel{background:var(--dark-card-bg);border:1px solid var(--dark-neutral-border);border-radius:var(--radius-lg);padding:24px;min-width:380px;max-width:90vw;max-height:80vh;overflow-y:auto;box-shadow:var(--shadow-card)}.shortcuts-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.shortcuts-header h3{font-size:16px;font-weight:600;margin:0;color:var(--ui-text)}.shortcuts-grid{display:flex;flex-direction:column;gap:8px}.shortcut-row{display:flex;align-items:center;justify-content:space-between;padding:6px 0;font-size:13px;color:var(--ui-text-secondary);border-bottom:1px solid var(--ui-border)}.shortcut-row:last-child{border-bottom:none}.shortcut-row kbd{display:inline-block;padding:2px 7px;font-size:12px;font-family:inherit;color:var(--ui-text);background:var(--ui-surface-subtle);border:1px solid var(--ui-border);border-radius:var(--radius-full);margin:0 2px}.shortcut-row span{color:var(--dark-text-secondary);font-size:12px}@media(max-width:640px){html,body{overflow:hidden}.canvas-topbar{flex-wrap:nowrap;height:52px;min-height:52px;padding:max(0px,env(safe-area-inset-top)) 8px 0;gap:6px}.topbar-back{width:36px;height:36px;justify-content:center;padding:0;flex:0 0 auto}.topbar-title,.topbar-title-ro{font-size:14px;min-width:0;flex:1 1 auto;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.topbar-right{gap:6px;flex-wrap:nowrap;margin-left:auto;flex:0 0 auto}.topbar-menu-btn{display:inline-flex;min-height:36px;min-width:36px;flex:0 0 auto}.topbar-actions{display:none;position:absolute;top:100%;right:6px;left:auto;flex-direction:column;align-items:stretch;gap:4px;min-width:220px;max-width:calc(100vw - 16px);max-height:calc(100dvh - 64px);overflow-y:auto;margin-top:6px;padding:8px;background:var(--ui-surface-elevated);backdrop-filter:blur(12px);border:1px solid var(--dark-neutral-border);border-radius:12px;box-shadow:var(--ui-shadow);z-index:160}.topbar-actions.open{display:flex}.topbar-canvas-actions{display:contents}.topbar-actions .canvas-search-input{width:100%;height:40px;font-size:16px;margin-bottom:2px}.topbar-actions .topbar-role{align-self:flex-start}.topbar-actions .topbar-action-label{display:inline}.topbar-actions .btn-ghost.btn-sm{width:100%;justify-content:flex-start;gap:8px;min-height:42px;font-size:14px;padding:0 12px}.topbar-right .btn-ghost.btn-sm{font-size:11px;min-height:34px;padding:6px 8px;flex:0 0 auto}.canvas-search-input{width:clamp(150px,46vw,220px);height:36px;font-size:16px;flex:0 0 auto}.topbar-sync{min-width:58px;height:30px;font-size:10px}.sync-menu-wrap{position:static}.sync-events-popover{position:fixed;top:auto;right:8px;bottom:calc(var(--canvas-toolbar-height, 0px) + 48px + env(safe-area-inset-bottom));left:8px;width:auto}.topbar-role{min-height:30px;display:inline-flex;align-items:center;font-size:10px}.online-users{max-width:72px;overflow:hidden}.sync-notice{top:auto;bottom:calc(var(--canvas-toolbar-height, 0px) + 12px + env(safe-area-inset-bottom));left:8px;right:8px;transform:none;max-width:none;text-align:center}.node-toolbar{top:auto;bottom:0;height:auto;min-height:40px;flex-wrap:nowrap;padding:6px 8px max(6px,env(safe-area-inset-bottom));gap:4px;max-height:none;overflow-x:auto;overflow-y:hidden}.tb-label{display:none}.tb-sep{margin:0 3px}.tb-color{width:28px;height:28px}.tb-btn{height:38px;min-width:38px}.share-panel,.history-panel,.embed-picker-panel{width:100vw;max-width:100vw;right:0;left:0;top:auto;bottom:0;max-height:calc(100dvh - var(--canvas-topbar-height, 44px));overflow:hidden;border-radius:0;padding-bottom:max(16px,env(safe-area-inset-bottom))}.share-form,.history-access-control{flex-direction:column;align-items:stretch}.share-form input,.share-form select,.share-form button,.embed-search-input,.history-access-control select{min-height:40px;font-size:16px}.history-item-header{align-items:flex-start;flex-wrap:wrap}.history-user,.history-item-detail{white-space:normal;overflow-wrap:anywhere}.shortcuts-panel{min-width:auto;width:calc(100vw - 20px);max-height:calc(100vh - 20px);max-height:calc(100dvh - 20px);padding:16px}.shortcut-row{align-items:flex-start;gap:12px}}@media(max-width:420px){.dashboard{padding-left:12px;padding-right:12px}.dash-actions,.dash-section-actions,.folder-manager-actions{flex-direction:column;align-items:stretch}.btn-primary,.btn-ghost,.folder-action,.folder-manager-btn{width:100%}.html-editor-bar .btn-primary,.html-editor-bar .btn-ghost{width:auto}.html-editor-bar .html-actions-trigger{width:28px}.canvas-card{padding-right:44px}.topbar-right .btn-ghost.btn-sm{flex-basis:calc(50% - 4px)}}.html-history-toolbar{display:flex;gap:4px;margin-bottom:8px}.html-structure-item.drop-target{box-shadow:inset 0 2px 0 0 var(--ui-focus)}.html-structure-empty{padding:24px;border:1px dashed var(--ui-border);border-radius:var(--radius-sm);color:var(--ui-text-secondary);font-size:13px;text-align:center}.text-doc-page{min-height:100vh;height:100vh;overflow-y:auto;background:var(--ui-page);color:var(--ui-text)}.text-doc-topbar{position:sticky;top:0;z-index:30;display:grid;grid-template-columns:auto minmax(180px,1fr) auto;align-items:center;gap:12px;min-height:56px;padding:10px 18px;border-bottom:1px solid var(--ui-border);background:var(--ui-surface-solid);backdrop-filter:blur(10px)}.text-doc-title-input,.text-doc-title-readonly{min-width:0;border:1px solid transparent;border-radius:6px;padding:8px 10px;background:transparent;color:var(--ui-text);font-size:16px;font-weight:650;outline:none}.text-doc-title-input:focus{border-color:color-mix(in srgb,var(--ui-info) 65%,transparent);background:var(--ui-surface-subtle)}.text-doc-topbar-actions{display:flex;align-items:center;gap:8px}.text-doc-sync{border:1px solid var(--ui-border);border-radius:999px;padding:6px 10px;background:var(--ui-surface-subtle);color:var(--ui-text-secondary);font-size:12px;font-weight:650}.text-doc-sync-synced{color:var(--ui-success-foreground)}.text-doc-sync-saving{color:var(--ui-warning-foreground)}.text-doc-sync-conflict{color:var(--ui-danger-foreground)}.text-doc-sync-offline{color:var(--ui-text-secondary)}.text-doc-share-panel{position:fixed;top:68px;right:16px;z-index:50}.text-doc-history-panel{position:fixed;top:70px;right:24px;bottom:24px;left:24px;z-index:45}.text-doc-toolbar{position:sticky;top:56px;z-index:25;display:flex;flex-wrap:wrap;gap:6px;border-bottom:1px solid var(--ui-border);padding:8px 18px;background:var(--ui-surface-solid)}.text-doc-toolbar .btn-ghost.active{background:var(--ui-info-soft);color:var(--ui-info-foreground)}.text-doc-capacity{position:sticky;top:100px;z-index:24;display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 18px 4px;padding:10px 14px;border:1px solid var(--ui-border);border-radius:var(--radius-md);font-size:13px;line-height:1.4}.text-doc-capacity-warn{border-color:var(--ui-warning);background:var(--ui-warning-soft);color:var(--ui-warning-foreground)}.text-doc-capacity-full{border-color:var(--ui-danger);background:var(--ui-danger-soft);color:var(--ui-danger-foreground)}.text-doc-capacity-icon{display:inline-flex;flex:none}.text-doc-capacity-icon svg{width:18px;height:18px}.text-doc-capacity-text{flex:1 1 260px}.text-doc-capacity-count{flex:none;padding:2px 8px;border:1px solid currentColor;border-radius:999px;font-variant-numeric:tabular-nums;white-space:nowrap}.text-doc-capacity-btn{display:inline-flex;gap:6px;align-items:center;flex:none;padding:6px 12px;border:1px solid currentColor;border-radius:var(--radius-md);background:var(--ui-surface-solid);color:inherit;font:inherit;cursor:pointer}.text-doc-capacity-btn:hover:not(:disabled){background:var(--ui-surface-subtle)}.text-doc-capacity-btn:disabled{opacity:.6;cursor:progress}.text-doc-capacity-btn-icon{display:inline-flex}.text-doc-capacity-btn-icon svg{width:16px;height:16px}.text-doc-editor-shell{max-width:920px;margin:0 auto;padding:32px 24px 80px}.text-doc-paper{min-height:72vh;background:var(--content-document-surface);border:1px solid var(--ui-border);box-shadow:var(--ui-shadow);padding:56px 64px}.text-doc-paper.readonly{background:var(--content-document-surface-readonly)}.text-doc-paper .ProseMirror{min-height:58vh;outline:none;color:var(--content-document-text);font-size:16px;line-height:1.72;cursor:text}.text-doc-paper .ProseMirror h1,.text-doc-paper .ProseMirror h2,.text-doc-paper .ProseMirror h3{margin:1.1em 0 .45em;line-height:1.2}.text-doc-paper .ProseMirror p{margin:.7em 0}.text-doc-paper .ProseMirror ul,.text-doc-paper .ProseMirror ol{padding-left:1.5rem;margin:.7em 0}.text-doc-paper .ProseMirror ul[data-type=taskList]{list-style:none;padding-left:0}.text-doc-paper .ProseMirror ul[data-type=taskList] li{display:flex;align-items:flex-start}.text-doc-paper .ProseMirror ul[data-type=taskList] li>label{flex:0 0 auto;margin-right:.5rem;margin-top:.3em;user-select:none}.text-doc-paper .ProseMirror ul[data-type=taskList] li>div{flex:1 1 auto;min-width:0}.text-doc-paper .ProseMirror ul[data-type=taskList] li>div>p{margin:0}.text-doc-paper .ProseMirror ul[data-type=taskList] input[type=checkbox]{cursor:pointer}.text-doc-paper .ProseMirror ul[data-type=taskList] ul[data-type=taskList]{padding-left:1.5rem}.text-doc-paper .ProseMirror img{display:block;max-width:100%;height:auto;margin:1em 0;border-radius:6px;border:1px solid rgba(255,255,255,.1)}.text-doc-paper .ProseMirror img.ProseMirror-selectednode{outline:2px solid var(--color-brands);outline-offset:2px}.text-doc-paper .ProseMirror a{color:var(--content-document-link)}.text-doc-paper .ProseMirror-focused{outline:none}.text-doc-paper .ProseMirror pre{margin:1em 0;padding:14px 16px;border:1px solid var(--content-code-border);border-radius:var(--radius-sm);background:var(--content-code-surface);overflow-x:auto}.text-doc-paper .ProseMirror pre code{padding:0;border:none;background:none;color:inherit;font-size:.85em;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre}.text-doc-paper .ProseMirror pre .hljs-comment,.text-doc-paper .ProseMirror pre .hljs-quote{color:var(--content-code-comment);font-style:italic}.text-doc-paper .ProseMirror pre .hljs-keyword,.text-doc-paper .ProseMirror pre .hljs-selector-tag{color:var(--content-code-keyword)}.text-doc-paper .ProseMirror pre .hljs-string,.text-doc-paper .ProseMirror pre .hljs-regexp{color:var(--content-code-string)}.text-doc-paper .ProseMirror pre .hljs-number,.text-doc-paper .ProseMirror pre .hljs-literal{color:var(--content-code-number)}.text-doc-paper .ProseMirror pre .hljs-title{color:var(--content-code-function)}.text-doc-paper .ProseMirror pre .hljs-punctuation{color:var(--content-code-punctuation)}.text-doc-paper .ProseMirror aside{display:flex;gap:12px;align-items:flex-start;margin:1em 0;padding:14px 16px;border:1px solid var(--content-callout-info-border);border-left-width:3px;border-radius:var(--radius-sm);background:var(--content-callout-info-surface)}.text-doc-paper .ProseMirror aside[data-variant=warning]{border-color:var(--content-callout-warning-border);background:var(--content-callout-warning-surface)}.text-doc-paper .ProseMirror aside[data-variant=success]{border-color:var(--content-callout-success-border);background:var(--content-callout-success-surface)}.text-doc-paper .ProseMirror aside[data-variant=danger]{border-color:var(--content-callout-danger-border);background:var(--content-callout-danger-surface)}.text-doc-callout-icon{flex:0 0 auto;display:flex;align-items:center;height:1.72em;user-select:none;color:var(--content-callout-info-accent)}aside[data-variant=warning]>.text-doc-callout-icon{color:var(--content-callout-warning-accent)}aside[data-variant=success]>.text-doc-callout-icon{color:var(--content-callout-success-accent)}aside[data-variant=danger]>.text-doc-callout-icon{color:var(--content-callout-danger-accent)}.text-doc-callout-icon svg{width:20px;height:20px}.text-doc-callout-body{flex:1 1 auto;min-width:0}.text-doc-callout-body>:first-child{margin-top:0}.text-doc-callout-body>:last-child{margin-bottom:0}.text-doc-callout-variant-btn{display:inline-flex;align-items:center;gap:6px}.text-doc-callout-variant-icon{display:inline-flex}.text-doc-callout-variant-icon svg{width:16px;height:16px}.text-doc-callout-variant-btn[data-variant=info] .text-doc-callout-variant-icon{color:var(--ui-info-foreground)}.text-doc-callout-variant-btn[data-variant=warning] .text-doc-callout-variant-icon{color:var(--ui-warning-foreground)}.text-doc-callout-variant-btn[data-variant=success] .text-doc-callout-variant-icon{color:var(--ui-success-foreground)}.text-doc-callout-variant-btn[data-variant=danger] .text-doc-callout-variant-icon{color:var(--ui-danger-foreground)}.text-doc-paper .ProseMirror h1,.text-doc-paper .ProseMirror h2,.text-doc-paper .ProseMirror h3,.text-doc-paper .ProseMirror h4,.text-doc-paper .ProseMirror h5,.text-doc-paper .ProseMirror h6{position:relative}.text-doc-heading-toggle{position:absolute;left:-28px;top:50%;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:none;border-radius:5px;background:transparent;color:var(--content-document-text-muted);cursor:pointer}.text-doc-heading-toggle:hover:not(:disabled){background:var(--content-code-surface);color:var(--content-document-text)}.text-doc-heading-toggle:disabled{cursor:default;opacity:.5}.text-doc-heading-toggle svg{width:16px;height:16px}.text-doc-paper .ProseMirror .text-doc-collapsed-block{display:none}.text-doc-paper .ProseMirror .text-doc-toc{margin:1em 0;padding:14px 16px;border:1px solid var(--content-code-border);border-radius:var(--radius-sm);background:var(--content-code-surface)}.text-doc-toc-title{margin-bottom:8px;color:var(--content-document-text);font-weight:600}.text-doc-toc-list{display:flex;flex-direction:column;gap:4px;margin:0;padding:0;list-style:none}.text-doc-toc-item[data-level="2"]{padding-left:16px}.text-doc-toc-item[data-level="3"]{padding-left:32px}.text-doc-toc-item[data-level="4"]{padding-left:48px}.text-doc-toc-item[data-level="5"]{padding-left:64px}.text-doc-toc-item[data-level="6"]{padding-left:80px}.text-doc-toc-link{display:block;width:100%;padding:2px 6px;border:none;border-radius:4px;background:transparent;color:var(--content-document-text-muted);text-align:left;cursor:pointer}.text-doc-toc-link:hover{background:var(--content-code-surface);color:var(--content-document-text)}.text-doc-toc-empty{padding:2px 6px;color:var(--content-document-text-muted);font-style:italic}.text-doc-history-preview nav[data-toc]{margin:1em 0;padding:12px 14px;border:1px solid var(--ui-border);border-radius:var(--radius-sm);background:var(--ui-surface-subtle)}.text-doc-history-preview nav[data-toc] ul{display:flex;flex-direction:column;gap:4px;margin:0;padding:0;list-style:none}.text-doc-history-preview nav[data-toc] li[data-level="2"]{padding-left:16px}.text-doc-history-preview nav[data-toc] li[data-level="3"]{padding-left:32px}.text-doc-history-preview nav[data-toc] li[data-level="4"]{padding-left:48px}.text-doc-history-preview nav[data-toc] li[data-level="5"]{padding-left:64px}.text-doc-history-preview nav[data-toc] li[data-level="6"]{padding-left:80px}.text-doc-history-preview nav[data-toc] a{color:var(--ui-text-secondary);text-decoration:none}.text-doc-history-preview nav[data-toc] a:hover{color:var(--ui-accent-strong);text-decoration:underline}.text-doc-slash-menu{position:fixed;z-index:60;min-width:232px;max-height:320px;overflow-y:auto;padding:6px;border:1px solid var(--ui-border);border-radius:var(--radius-md);background:var(--ui-surface-elevated);box-shadow:var(--shadow-dropdown)}.text-doc-slash-item{display:flex;gap:10px;align-items:center;width:100%;padding:7px 9px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ui-text);font:inherit;text-align:left;cursor:pointer}.text-doc-slash-item.active{background:var(--ui-brand-soft);color:var(--ui-brand-soft-on)}.text-doc-slash-icon{flex:0 0 auto;display:inline-flex;color:var(--ui-text-secondary)}.text-doc-slash-item.active .text-doc-slash-icon{color:var(--ui-accent-strong)}.text-doc-slash-icon svg{width:18px;height:18px}.text-doc-slash-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-doc-slash-empty{padding:9px;color:var(--ui-text-muted);font-size:13px}.text-doc-mention-menu{position:fixed;z-index:60;min-width:232px;max-height:320px;overflow-y:auto;padding:6px;border:1px solid var(--ui-border);border-radius:var(--radius-md);background:var(--ui-surface-elevated);box-shadow:var(--shadow-dropdown)}.text-doc-mention-item{display:flex;gap:10px;align-items:center;width:100%;padding:7px 9px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ui-text);font:inherit;text-align:left;cursor:pointer}.text-doc-mention-item.active{background:var(--ui-brand-soft);color:var(--ui-brand-soft-on)}.text-doc-mention-item-icon{flex:0 0 auto;display:inline-flex;color:var(--ui-text-secondary)}.text-doc-mention-item.active .text-doc-mention-item-icon{color:var(--ui-accent-strong)}.text-doc-mention-item-icon svg{width:18px;height:18px}.text-doc-mention-item-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-doc-mention-empty{padding:9px;color:var(--ui-text-muted);font-size:13px}.text-doc-backlinks{margin-top:40px;padding-top:24px;border-top:1px solid var(--ui-border)}.text-doc-backlinks-head{display:flex;align-items:center;gap:8px;color:var(--ui-text-secondary)}.text-doc-backlinks-icon{display:inline-flex}.text-doc-backlinks-icon svg{width:16px;height:16px}.text-doc-backlinks-title{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin:0}.text-doc-backlinks-hint{margin:6px 0 14px;font-size:12px;color:var(--ui-text-muted)}.text-doc-backlinks-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}.text-doc-backlink-item{display:flex;align-items:center;gap:10px;width:100%;padding:8px 10px;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--ui-text);font:inherit;text-align:left;cursor:pointer}.text-doc-backlink-item:hover{background:var(--ui-surface-subtle)}.text-doc-backlink-item-inaccessible{color:var(--ui-text-secondary)}.text-doc-backlink-item-icon{flex:0 0 auto;display:inline-flex;color:var(--ui-text-secondary)}.text-doc-backlink-item-icon svg{width:16px;height:16px}.text-doc-backlink-item-label{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.text-doc-backlinks-empty{margin:0;padding:8px 10px;color:var(--ui-text-muted);font-size:13px}.text-doc-mention{display:inline;border-radius:3px;padding:0 2px}.text-doc-mention-accessible{color:var(--content-document-link);text-decoration:underline;text-decoration-style:dotted;cursor:pointer}.text-doc-mention-inaccessible{color:var(--content-document-link);text-decoration:underline;text-decoration-style:dotted;opacity:.65;cursor:pointer}.text-doc-mention-deleted{color:var(--content-code-comment);text-decoration:line-through;cursor:default}.text-doc-drag-handle{display:flex;align-items:center;justify-content:center;width:22px;height:26px;border-radius:5px;color:var(--ui-text-muted);cursor:grab}.text-doc-drag-handle:hover{background:var(--ui-surface-subtle);color:var(--ui-text-secondary)}.text-doc-drag-handle:active{cursor:grabbing}.text-doc-drag-handle svg{width:16px;height:16px}.text-doc-bubble-menu{display:flex;gap:2px;align-items:center;padding:4px;border:1px solid var(--ui-border);border-radius:var(--radius-sm);background:var(--ui-surface-elevated);box-shadow:var(--shadow-dropdown)}.text-doc-bubble-btn{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:30px;padding:0 6px;border:0;border-radius:6px;background:transparent;color:var(--ui-text);font:inherit;cursor:pointer}.text-doc-bubble-btn:hover{background:var(--ui-surface-subtle)}.text-doc-bubble-btn.active{background:var(--ui-brand-soft);color:var(--ui-brand-soft-on)}.text-doc-bubble-icon{display:inline-flex}.text-doc-bubble-icon svg{width:17px;height:17px}.text-doc-bubble-link-form{display:flex;gap:4px;align-items:center}.text-doc-bubble-link-input{width:220px;height:30px;padding:0 8px;border:1px solid var(--ui-border);border-radius:6px;background:var(--ui-surface-subtle);color:var(--ui-text);font:inherit}.text-doc-bubble-link-input::placeholder{color:var(--ui-text-muted)}.text-doc-bubble-link-input:focus-visible{outline:2px solid var(--ui-focus);outline-offset:1px}.text-doc-bubble-btn-text{color:var(--ui-accent-strong)}.text-doc-paper .ProseMirror .qcanva-slash-query{border-radius:4px;background:var(--content-document-slash-query-bg);color:var(--content-document-slash-query-text)}.text-doc-history-preview{height:100%;overflow:auto;padding:28px;background:var(--ui-surface);color:var(--ui-text)}.text-doc-history-preview aside{margin:1em 0;padding:12px 14px;border:1px solid var(--ui-info);border-left-width:3px;border-radius:var(--radius-sm);background:var(--ui-info-soft)}.text-doc-history-preview aside[data-variant=warning]{border-color:var(--ui-warning);background:var(--ui-warning-soft)}.text-doc-history-preview aside[data-variant=success]{border-color:var(--ui-success);background:var(--ui-success-soft)}.text-doc-history-preview aside[data-variant=danger]{border-color:var(--ui-danger);background:var(--ui-danger-soft)}.text-doc-history-preview aside>:first-child{margin-top:0}.text-doc-history-preview aside>:last-child{margin-bottom:0}.text-doc-page .btn-ghost{color:var(--ui-text-secondary)}.text-doc-page .btn-ghost:hover{background:var(--ui-surface-subtle);color:var(--ui-text)}.text-doc-page .share-panel,.text-doc-page .html-history-panel{border-color:var(--ui-border);background:var(--ui-surface-solid);color:var(--ui-text);box-shadow:var(--ui-shadow)}.text-doc-page input,.text-doc-page select{color:var(--ui-text);background-color:var(--ui-surface-subtle);border-color:var(--ui-border)}@media(max-width:760px){.text-doc-topbar{grid-template-columns:auto 1fr}.text-doc-topbar-actions{grid-column:1 / -1;flex-wrap:wrap}.text-doc-paper{padding:28px 22px}.text-doc-editor-shell{padding:18px 12px 56px}.text-doc-share-panel,.text-doc-history-panel{top:64px;right:10px;bottom:10px;left:10px}}.draw-toolbar{position:absolute;left:12px;top:50%;transform:translateY(-50%);z-index:120;display:flex;align-items:flex-start;gap:8px}.draw-toolbar-toggle{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md, 10px);background:var(--ui-surface-elevated);color:var(--ui-text);border:1px solid var(--ui-border);cursor:pointer;flex-shrink:0}.draw-toolbar-toggle:hover{background:var(--ui-surface-subtle);color:var(--dark-text-primary)}.draw-toolbar-toggle.active{color:var(--ui-accent-strong);border-color:var(--color-brands)}.draw-toolbar-panel{background:var(--ui-surface-elevated);border:1px solid var(--ui-border);border-radius:var(--radius-md, 12px);padding:6px;display:flex;flex-direction:column;align-items:center;gap:6px;backdrop-filter:blur(12px);box-shadow:var(--ui-shadow)}.draw-tools-col{display:flex;flex-direction:column;gap:4px}.draw-panel-3col{flex-direction:row;align-items:stretch;gap:8px}.draw-panel-left{display:flex;flex-direction:column;gap:6px}.draw-tools-grid{display:grid;grid-template-columns:repeat(2,34px);gap:4px}.draw-panel-vsep{width:1px;align-self:stretch;background:var(--ui-border)}.draw-panel-right{display:flex;flex-direction:column;align-items:center;gap:8px}.draw-action-color-pop-left{top:0;left:auto;right:calc(100% + 8px)}.draw-tool-btn{width:34px;height:34px;display:flex;align-items:center;justify-content:center;padding:0}.draw-panel-sep{width:80%;height:1px;background:var(--ui-border)}.draw-panel-width{width:100%;accent-color:var(--color-brands)}.draw-panel-width-vertical{writing-mode:vertical-lr;direction:rtl;-webkit-appearance:slider-vertical;width:24px;height:96px;accent-color:var(--color-brands)}.draw-action-color{position:relative;display:inline-flex}.draw-action-color-current{width:26px;height:26px;border-radius:6px;border:2px solid var(--ui-border)}.draw-action-color-pop{position:absolute;top:calc(100% + 6px);left:0;display:flex;gap:4px;padding:6px;background:var(--ui-surface-elevated);border:1px solid var(--ui-border);border-radius:8px;box-shadow:var(--ui-shadow);z-index:130}.draw-action-color-pop-right{top:0;left:calc(100% + 8px)}.dice-toolbar{position:absolute;left:12px;top:calc(50% + 28px);z-index:120;display:flex;align-items:flex-start;gap:8px}.dice-panel{background:var(--ui-surface-elevated);border:1px solid var(--ui-border);border-radius:var(--radius-md, 12px);padding:8px;display:flex;flex-direction:column;gap:8px;min-width:180px;backdrop-filter:blur(12px);box-shadow:var(--ui-shadow)}.dice-row{display:flex;flex-wrap:wrap;gap:4px}.dice-die{padding:4px 8px;border-radius:8px;border:1px solid var(--ui-border);background:transparent;color:inherit;cursor:pointer;font-size:12px}.dice-die.active{border-color:var(--color-brands);color:var(--ui-accent-strong)}.dice-controls{display:flex;align-items:center;gap:6px}.dice-controls label{font-size:12px;opacity:.7;min-width:44px}.dice-step{width:24px;height:24px;border-radius:6px;border:1px solid var(--ui-border);background:transparent;color:inherit;cursor:pointer}.dice-val{min-width:28px;text-align:center;font-size:13px}.dice-roll-btn{padding:6px 10px;border-radius:8px;border:1px solid var(--ui-border);background:var(--color-brands);color:var(--color-brand-on);cursor:pointer;font-weight:600}.drawing-actions-toolbar{position:absolute;z-index:120;display:flex;flex-direction:row;align-items:center;gap:6px;padding:5px 7px;background:var(--ui-surface-elevated);border:1px solid var(--ui-border);border-radius:10px;backdrop-filter:blur(8px);pointer-events:all}.drawing-actions-toolbar .draw-action-width{width:90px;accent-color:var(--color-brands)}.draw-action-sep{width:1px;height:22px;background:var(--ui-border)}.resource-cache-status{position:fixed;z-index:500;top:calc(env(safe-area-inset-top,0px) + 58px);left:50%;transform:translate(-50%);max-width:calc(100vw - 32px);padding:8px 12px;border:1px solid var(--ui-border);border-radius:10px;background:var(--ui-surface-elevated);color:var(--ui-text);font-size:13px;box-shadow:var(--ui-shadow);pointer-events:none}.resource-cache-status-refreshing{border-color:var(--ui-info)}.resource-cache-status-success{border-color:var(--ui-success)}.resource-cache-status-error{border-color:var(--ui-warning)}.folder-nav-twisty{flex-shrink:0;width:14px;text-align:center;font-size:10px;line-height:1;color:var(--ui-text-secondary);cursor:pointer;transition:transform .12s ease}.folder-nav-twisty:hover{color:var(--ui-text)}.folder-nav-twisty.collapsed{transform:rotate(-90deg)}.folder-nav-twisty-spacer{flex-shrink:0;width:14px}.folder-parent-list{display:flex;flex-direction:column;gap:2px;max-height:320px;overflow-y:auto;margin-bottom:12px}.folder-parent-option{text-align:left;padding:7px 12px;border:1px solid transparent;border-radius:6px;background:var(--ui-surface-subtle);color:var(--ui-text-secondary);font-size:13px;cursor:pointer}.folder-parent-option:hover{background:var(--ui-brand-soft);color:var(--ui-text)}.folder-parent-option.active{background:color-mix(in srgb,var(--color-brands) 25%,transparent);border-color:color-mix(in srgb,var(--color-brands) 60%,transparent);color:var(--ui-text)}.dashboard-modal-textarea{width:100%;min-height:160px;resize:vertical;padding:10px 12px;border:1px solid var(--dark-neutral-border);border-radius:8px;background:var(--ui-surface-subtle);color:var(--ui-text);font:inherit;line-height:1.5;outline:none}.dashboard-modal-textarea:focus{border-color:color-mix(in srgb,var(--color-brands) 60%,transparent)}.description-readonly{margin:0 0 12px;padding:10px 12px;border-radius:8px;background:var(--ui-surface-subtle);color:var(--ui-text-secondary);font-size:13px;line-height:1.55;white-space:pre-wrap;max-height:320px;overflow-y:auto}.folder-back-button{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;margin-right:8px;border:1px solid var(--dark-neutral-border);border-radius:6px;background:var(--ui-surface-subtle);color:var(--ui-text-secondary);cursor:pointer}.folder-back-button:hover{background:var(--ui-brand-soft);color:var(--ui-text)}.folder-up-button{flex:0 0 auto;width:26px;height:26px;margin-right:8px;border:1px solid var(--dark-neutral-border);border-radius:6px;background:var(--ui-surface-subtle);color:var(--ui-text-secondary);font-size:13px;line-height:1;cursor:pointer}.folder-up-button:hover{background:var(--ui-brand-soft);color:var(--ui-text)}.subfolder-grid{margin-bottom:10px}.subfolder-card{display:flex;align-items:center;gap:8px;width:100%;min-height:52px;padding:10px 12px;border:1px solid color-mix(in srgb,var(--color-brands) 30%,transparent);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-brands) 8%,transparent);color:var(--ui-text);text-align:left;cursor:pointer;transition:background .15s,border-color .15s}.subfolder-card:hover{background:color-mix(in srgb,var(--color-brands) 16%,transparent);border-color:color-mix(in srgb,var(--color-brands) 55%,transparent);color:var(--ui-text)}.subfolder-card-icon{flex:0 0 auto;opacity:.6;font-size:13px}.subfolder-card-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:600}.subfolder-card-count{flex:0 0 auto;padding:2px 7px;border-radius:var(--radius-full);background:var(--ui-surface-subtle);font-size:11px}.folder-destination{display:flex;align-items:baseline;justify-content:space-between;gap:10px}.folder-destination-name{display:inline-flex;align-items:baseline;gap:5px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.folder-destination-branch{color:var(--ui-text-secondary);font-size:11px}.folder-destination-path{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ui-text-secondary);font-size:11px}.folder-destination.active .folder-destination-path{color:var(--ui-text-secondary)}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}
