:root{font-family:Noto Sans SC,Inter,-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;color:#45414f;font-synthesis:none;-webkit-font-smoothing:antialiased;--accent: #609fbb;--border: #e3eaee;--muted: #96919f}*{box-sizing:border-box}html,body,#root{margin:0;height:100%;overflow:hidden}button,input{font:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent}button:disabled{opacity:.3;cursor:default}button:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button{touch-action:manipulation}.app{height:100%;display:flex;flex-direction:column}.toolbar{position:absolute;top:12px;left:12px;z-index:20;display:flex;flex-direction:column;align-items:flex-start;gap:12px;pointer-events:none;max-height:calc(100% - 24px)}.board-header{position:relative;display:flex;align-items:center;gap:4px;padding:4px;pointer-events:auto}.document-title{display:inline-grid;grid-template-columns:minmax(0,1fr);max-width:min(240px,calc(100vw - 120px))}.document-title>*{grid-area:1 / 1;min-width:0;padding:6px 8px;border:1px solid transparent;border-radius:6px;font-size:13px;font-weight:550;line-height:20px;color:#45414f}.document-name-sizer{visibility:hidden;white-space:pre;overflow:hidden}.document-name{display:block;background:transparent;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.document-name:hover{background:#f1f5f8}.document-name-input{width:100%;border-color:var(--accent);background:transparent;outline:none}.primary-tools{display:flex;flex-direction:column;align-items:center;gap:3px;padding:5px;pointer-events:auto;overflow:visible}.icon-button{width:100%}.icon-button{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;flex:0 0 auto;padding:0;border:1px solid transparent;background:transparent;border-radius:8px;color:#76717f;transition:background .12s,color .12s,box-shadow .12s}.icon-button:hover:not(:disabled){background:#eef5f8;color:#477f98}.icon-button.active{background:#fff;color:#609fbb;border-color:#d4e4ec;box-shadow:0 1px 3px #3423480d}.icon-button.primary{background:var(--accent);color:#fff}.icon-button.primary:hover{background:#477f98;color:#fff}.icon-button.danger:hover{background:#fff0f1;color:#d65c69}.toolbar-sep{height:1px;width:calc(100% - 10px);background:#e5eaf0;margin:4px 0;flex-shrink:0;align-self:center}.toolbar-image{position:relative}.image-pop{position:absolute;top:-230px;left:calc(100% + 12px);width:min(310px,calc(100vw - 82px));padding:13px;border:1px solid var(--border);background:#fff;border-radius:14px;box-shadow:0 10px 36px #30234816}.popover-heading{display:flex;justify-content:space-between;align-items:center;font-size:13px;font-weight:550;margin-bottom:8px}.popover-heading .icon-button{width:26px;height:26px}.upload-zone{display:flex;align-items:center;flex-direction:column;gap:8px;width:100%;border:1px dashed #c1d5df;border-radius:9px;padding:19px 12px;color:#609fbb;background:#f8fbfc;font-size:13px}.upload-zone:hover{background:#eef5f8}.input-row{display:flex;align-items:center;gap:6px;margin-top:12px}.input-row input{flex:1;min-width:0;font-size:12px;border:1px solid var(--border);border-radius:7px;padding:9px 10px;outline-color:var(--accent)}.error-message{color:#ce5865;font-size:12px}.toast{position:absolute;top:80px;right:20px;display:flex;align-items:center;gap:12px;background:#fff;border-radius:10px;padding:8px 12px;box-shadow:0 5px 30px #30234820;font-size:13px}.board{position:relative;flex:1;min-height:0;overflow:hidden;touch-action:none;-webkit-user-select:none;user-select:none;background:#fff}.board.tool-hand{cursor:grab}.board.tool-hand.interacting{cursor:grabbing}.board.tool-draw,.board.tool-box,.board.tool-rectangle,.board.box-selecting{cursor:crosshair}.board.paint-selecting,.board.paint-selecting *{cursor:none!important}.canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.canvas.static{z-index:0}.canvas.interactive{z-index:4}.connections-layer{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:1;overflow:visible;pointer-events:none}.connections-layer path{fill:none;stroke-linecap:round}.connection-line{opacity:.9}.connection-glow{opacity:0}.connection-hit{stroke:transparent;cursor:pointer}.connection:hover .connection-glow,.connection.selected .connection-glow{opacity:.12}.connection:hover .connection-line,.connection.selected .connection-line{opacity:1}.connection-preview{stroke:var(--accent);stroke-dasharray:6 5}.connection-label{position:absolute;z-index:5;cursor:move;touch-action:none;width:max-content;max-width:260px;padding:5px 10px;border:none;border-radius:7px;font-size:14px;font-weight:650;line-height:1.4;overflow-wrap:anywhere;white-space:pre-wrap;text-align:center;box-shadow:0 2px 5px #24172e20}.connection-label:hover,.connection-label.active{box-shadow:0 3px 10px #24172e30}.card-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none}.block-wrapper{position:absolute;pointer-events:auto;z-index:1}.draw-block{position:absolute;overflow:visible;pointer-events:none;z-index:1}.draw-block path{fill:none;stroke-linecap:round;stroke-linejoin:round}.draw-line{pointer-events:none}.draw-selection{stroke:#3199c7;opacity:.34;pointer-events:none}.draw-hit{stroke:transparent;pointer-events:stroke;cursor:move}.rectangle-block{position:absolute;overflow:visible;pointer-events:none;z-index:1}.rectangle-block rect{fill:none}.rectangle-selection{stroke:#3199c7;opacity:.34;pointer-events:none}.rectangle-line{pointer-events:none}.rectangle-hit{stroke:transparent;pointer-events:stroke;cursor:move}.card{position:absolute;top:0;right:0;bottom:0;left:0;background:#fff;border:1px solid #e9e6ed;border-radius:10px;box-shadow:0 2px 3px #2d243608,0 4px 12px #2d243605}.text-card{overflow:hidden}.card:hover{border-color:#c8d8e1}.card.selected{box-shadow:0 5px 16px #39294b18}.block-wrapper.selected:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:10px;background:#3199c747;pointer-events:none;z-index:1}.connection-target .card{box-shadow:0 0 0 3px #609fbb,0 0 0 8px #609fbb1a}.text-card[data-color="1"]{background:#fce8e9;border-color:#f0d6d9}.text-card[data-color="2"]{background:#fbecdf;border-color:#f0dfce}.text-card[data-color="3"]{background:#fcf4d7;border-color:#eee4bd}.text-card[data-color="4"]{background:#e6f2e9;border-color:#d1e6d7}.text-card[data-color="5"]{background:#e5f0f6;border-color:#d4e4ef}.text-card[data-color="6"]{background:#eee8fa;border-color:#e1d8f2}.card-text{outline:none;line-height:1.6;white-space:pre-wrap;word-break:break-word;min-height:1.6em}.card-text:empty:before,.image-caption:empty:before{content:attr(data-placeholder);color:#b2aabc;pointer-events:none}.card-text.editing{cursor:text;-webkit-user-select:text;user-select:text;max-height:100%;overflow-y:auto}.markdown-text h1,.markdown-text h2,.markdown-text h3{margin:0;font-size:1em;font-weight:700;line-height:inherit}.markdown-text h1{font-size:1.25em}.markdown-text ul{margin:.2em 0;padding-left:1.5em;list-style:disc}.markdown-text .markdown-line{min-height:1.6em}.markdown-text a{color:#2563eb;text-decoration:underline;cursor:pointer}.text-editor{position:relative;outline:none;overflow-wrap:break-word}.text-editor li>.markdown-line:only-child{min-height:0}.text-editor .ProseMirror-selectednode{outline:none}.image-card{overflow:hidden;border:none;background:#edf3f6}.image-viewport{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;border-radius:inherit}.image-viewport img{display:block;position:absolute;max-width:none;-webkit-user-select:none;user-select:none;pointer-events:none;object-fit:fill}.image-error{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;font-size:13px;color:#aba1b5;background:#efecf3}.image-caption{position:absolute;bottom:0;left:0;right:0;max-height:75%;overflow-y:auto;background:#fffffff2;line-height:1.5;white-space:pre-wrap;word-break:break-word;outline:none}.image-caption.empty{background:transparent}.image-caption.editing{cursor:text;-webkit-user-select:text;user-select:text;min-height:36px}.resource-card{display:flex;align-items:flex-start;gap:8px;overflow:hidden;overflow-wrap:anywhere}.block-connect{position:absolute;right:-9px;width:18px;height:18px;padding:3px;border-radius:50%;border:2px solid currentColor;background:#fff;box-shadow:0 0 0 3px #fff;cursor:crosshair;opacity:0;transition:opacity .12s,transform .12s;z-index:4}.block-connect span{display:block;width:100%;height:100%;background:currentColor;border-radius:50%;opacity:.15;pointer-events:none}.block-wrapper:hover .block-connect,.block-wrapper.selected .block-connect,.block-wrapper.connected .block-connect,.block-connect:focus-visible{opacity:1}.block-connect:hover{transform:scale(1.18)}.block-connect:hover span{opacity:1}.card-layer.pass-through,.card-layer.pass-through *{pointer-events:none!important}.card-layer.pass-through .block-connect{opacity:0}.group-label{position:absolute;display:flex;align-items:center;gap:6px;height:24px;font-size:12px;pointer-events:auto;cursor:move;padding:1px 5px;border-radius:5px;white-space:nowrap}.group-label:hover,.group-label.selected{background:#e8f1f5}.group-name{outline:none;min-width:24px;overflow:hidden;text-overflow:ellipsis}.group-name.editing{cursor:text;-webkit-user-select:text;user-select:text;background:#fff;border-radius:4px;min-width:100px;white-space:pre;padding:2px 5px}.floating-panel{background:#fff;border:1px solid var(--border);border-radius:12px;box-shadow:0 5px 22px #3824480d,0 1px 3px #38244808}.selection-bar{position:absolute;transform:translate(-50%);padding:5px;pointer-events:auto;z-index:6;max-width:calc(100% - 16px)}.selection-actions{display:flex;align-items:center;gap:2px}.selection-styles{display:flex;align-items:center;justify-content:center;gap:10px;padding:7px 3px 4px;border-top:1px solid #edf3f6;margin-top:3px}.color-palette{display:flex;gap:7px;align-items:center;padding:2px}.color-dot{width:17px;height:17px;padding:0;border:2px solid transparent;border-radius:50%;transition:transform .1s;position:relative}.color-dot:hover{transform:scale(1.12)}.color-dot.chosen:after{content:"";position:absolute;top:-5px;right:-5px;bottom:-5px;left:-5px;border:1px solid #9db9c8;border-radius:50%}.default-dot{background:#77707f}.stroke-widths{display:flex;align-items:center;gap:3px}.stroke-option{border:none;background:transparent;border-radius:5px;width:29px;height:26px;display:grid;place-items:center;color:#8c8594;padding:0}.stroke-option span{display:block;width:17px;background:currentColor;border-radius:4px}.stroke-option:hover,.stroke-option.active{background:#eef5f8;color:#609fbb}.resize-bounds{position:absolute;pointer-events:none;z-index:5}.resize-handle{position:absolute;padding:0;width:10px;height:10px;border:1.5px solid var(--accent);background:#fff;border-radius:3px;pointer-events:auto;touch-action:none;box-shadow:0 1px 2px #39294b12}.nw{top:-5px;left:-5px;cursor:nwse-resize}.ne{top:-5px;right:-5px;cursor:nesw-resize}.se{bottom:-5px;right:-5px;cursor:nwse-resize}.sw{bottom:-5px;left:-5px;cursor:nesw-resize}.corner-resize-handle{display:grid;place-items:center;width:26px;height:26px;right:-7px;bottom:-7px;border:none;border-radius:8px;background:transparent;color:#8b8297;box-shadow:none}.corner-resize-handle:after{content:"";width:9px;height:9px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;border-bottom-right-radius:8px;transform:translate(1px,1px);pointer-events:none}.corner-resize-handle:hover,.corner-resize-handle:active{background:#609fbb0d;color:var(--accent)}.edge-bar{position:absolute;z-index:7;transform:translate(-50%);width:288px;padding:5px}.edge-heading{display:flex;align-items:center;gap:9px;padding:7px;border-radius:8px}.edge-heading input{min-width:0;flex:1;font-size:13px;padding:7px 0;border:none;background:transparent;color:inherit;outline:none}.edge-heading input:focus-visible{box-shadow:0 1px var(--accent)}.edge-heading input::placeholder{color:#81778d}.edge-heading .icon-button{width:26px;height:26px}.edge-color-button{width:25px;height:25px;flex-shrink:0;border:2px solid #fff;border-radius:50%;box-shadow:0 0 0 1px #00000014;padding:0}.edge-color-button:hover,.edge-color-button.active{box-shadow:0 0 0 2px #9db9c8}.edge-controls{display:flex;align-items:center;justify-content:space-between;gap:3px;padding:8px 4px 3px}.edge-path-options{display:flex;padding:2px;border-radius:9px;background:#f1f5f8}.edge-bar>.color-palette{padding:14px 9px 9px;justify-content:center}.edge-bar .default-dot{background:#609fbb}.board-chrome{z-index:8}.draw-settings{position:absolute;left:76px;top:76px;padding:14px;display:flex;flex-direction:column;align-items:flex-start;gap:15px}.draw-settings .stroke-widths{padding-top:8px;border-top:1px solid #edf3f6;width:100%;justify-content:space-around}.canvas-controls{position:absolute;bottom:20px;left:24px;right:24px;display:flex;justify-content:space-between;align-items:flex-end;gap:16px;pointer-events:none}.canvas-controls .corner-button{width:38px;height:38px;border:1px solid #dad6e1;background:#fffffff0;color:#655e70;box-shadow:0 2px 5px #3023480c;pointer-events:auto;border-radius:11px}.canvas-controls .corner-button:hover,.canvas-controls .corner-button.active{background:#eef5f8;border-color:#adc7d4;color:#477f98}.theme-controls{position:relative;pointer-events:auto}.canvas-controls .theme-button,.canvas-controls .theme-button:hover,.canvas-controls .theme-button.active{background:color-mix(in srgb,var(--theme-color) 30%,white);color:#35474c;border-color:color-mix(in srgb,var(--theme-color) 55%,white)}.theme-color-row{display:flex;align-items:center;gap:12px}.theme-color-row+.theme-color-row{margin-top:14px}.theme-text-colors .default-dot{background:#fff;border-color:#d4e0e7}.theme-pop{position:absolute;bottom:50px;left:0;padding:14px 12px;width:max-content}.navigation-controls{position:relative;display:flex;align-items:flex-end;gap:8px;margin-left:auto}.zoom-control{display:flex;flex-direction:column;align-items:center;gap:5px;width:164px;margin-right:8px;pointer-events:auto}.zoom-label{display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:17px;font-weight:500;line-height:1;color:#35474c;border:none;border-radius:9px;background:color-mix(in srgb,var(--theme-color) 40%,white);height:32px;padding:0 10px;font-variant-numeric:tabular-nums}.zoom-label:hover{background:color-mix(in srgb,var(--theme-color) 55%,white)}.zoom-control input{-moz-appearance:none;appearance:none;-webkit-appearance:none;display:block;width:100%;height:16px;margin:0;cursor:ew-resize;background:transparent;touch-action:none}.zoom-control input::-webkit-slider-runnable-track{height:7px;background:#e2eaf0;border:1px solid #b8cbd5;border-radius:8px}.zoom-control input::-webkit-slider-thumb{-moz-appearance:none;appearance:none;-webkit-appearance:none;width:15px;height:22px;background:#fff;border:1px solid #9cafba;border-radius:8px;margin-top:-8px;box-shadow:0 1px 3px #30234826}.zoom-control input::-moz-range-track{height:5px;background:#e2eaf0;border:1px solid #b8cbd5;border-radius:8px}.zoom-control input::-moz-range-thumb{width:13px;height:20px;background:#fff;border:1px solid #9cafba;border-radius:8px;box-shadow:0 1px 3px #30234826}.minimap-pop{position:absolute;bottom:72px;right:0;padding:6px;width:254px;overflow:hidden;pointer-events:auto;background:#f5f9fbf5}.minimap{display:block;width:240px;height:152px;border-radius:7px;background:#fff;cursor:grab;touch-action:none}.minimap:focus{outline:none}.canvas-controls :focus:not(:focus-visible){outline:none}.minimap.dragging{cursor:grabbing}.minimap-viewport{fill:#609fbb0b;stroke:#609fbb;stroke-width:2;pointer-events:none}.minimap-fit{position:absolute;top:8px;right:8px;width:25px;height:25px;background:#ffffffdf;border-radius:6px}.minimap-fit svg{width:16px;height:16px}.ui-hidden .toolbar,.ui-hidden .draw-settings,.ui-hidden .selection-bar,.ui-hidden .edge-bar,.ui-hidden .resize-bounds,.ui-hidden .block-connect{display:none}.drop-overlay{position:absolute;top:15px;right:15px;bottom:15px;left:15px;border:2px dashed var(--accent);background:#eef5f8ea;border-radius:18px;display:grid;place-items:center;color:var(--accent);z-index:12;pointer-events:none;font-size:20px}.image-crop-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;pointer-events:none}.crop-original{position:absolute;opacity:.24;pointer-events:none}.crop-original img{display:block;width:100%;height:100%}.image-crop-bounds{position:absolute;outline:1.5px solid var(--accent);pointer-events:auto;cursor:move;touch-action:none}.crop-grid{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;overflow:hidden}.crop-grid i{position:absolute;background:#ffffff90;box-shadow:0 0 1px #0003}.crop-grid i:nth-child(1){top:33.333%;width:100%;height:1px}.crop-grid i:nth-child(2){top:66.666%;width:100%;height:1px}.crop-grid i:nth-child(3){left:33.333%;height:100%;width:1px}.crop-grid i:nth-child(4){left:66.666%;height:100%;width:1px}.inline-crop-handle{position:absolute;width:15px;height:15px;transform:translate(-50%,-50%);border:3px solid var(--accent);background:#fff;padding:0;border-radius:2px;touch-action:none;box-shadow:0 0 0 1px #fff}.crop-n,.crop-s{width:25px;height:8px;cursor:ns-resize}.crop-w,.crop-e{width:8px;height:25px;cursor:ew-resize}.crop-nw,.crop-se{cursor:nwse-resize}.crop-ne,.crop-sw{cursor:nesw-resize}@media (max-width: 640px){.toolbar{top:8px;left:8px;gap:8px}.primary-tools{gap:1px}.canvas-controls{left:12px;right:12px;bottom:12px;gap:8px}.zoom-control{width:clamp(80px,calc(100vw - 216px),164px);margin-right:0}.selection-actions .icon-button{width:29px}.selection-actions{gap:0}.selection-bar{left:50%!important}.edge-bar{left:50%!important;max-width:calc(100% - 16px)}.edge-controls input{width:110px}}@media (prefers-reduced-motion: reduce){*{transition:none!important}}@media (prefers-reduced-motion: reduce){.connection-direction{display:none}}@media (max-width: 640px){.toolbar.sidebar-open .image-pop{position:fixed;left:64px;top:140px}}.popup-menu{padding:5px;width:256px;max-width:calc(100vw - 16px);max-height:calc(100dvh - 24px);overflow-y:auto;pointer-events:auto;color:#45414f}.file-menu{position:absolute;top:calc(100% + 8px);left:0;max-height:calc(100dvh - 84px)}.context-menu{position:fixed;z-index:40}.menu-item{width:100%;display:flex;gap:12px;align-items:center;justify-content:space-between;border:0;background:transparent;padding:8px 10px;color:inherit;border-radius:6px;text-align:left;font-size:12px;min-height:34px}.menu-item:hover:not(:disabled),.menu-item:focus-visible,.menu-item.active{background:#edf4f8;color:#477f98;outline:none}.menu-item.danger{color:#cb5362}.menu-item kbd{font:inherit;font-size:10px;white-space:nowrap;color:#96919f}.menu-separator{height:1px;margin:5px 6px;background:var(--border)}.arrange-control{display:flex;position:relative}.arrange-pop{position:absolute;top:calc(100% + 10px);left:0;display:flex;gap:4px;padding:6px;z-index:10}.shortcuts-dialog{padding:0;width:min(820px,calc(100vw - 32px));max-height:calc(100dvh - 48px);border:1px solid var(--border);border-radius:16px;color:#45414f;box-shadow:0 20px 90px #30234830}.shortcuts-dialog::backdrop{background:#25202d30}.shortcuts-content{padding:22px}.shortcuts-dialog .popover-heading{font-size:17px}.shortcuts-groups{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 32px}.shortcuts-groups h3{font-size:12px;color:#96919f;font-weight:500;margin:15px 0 8px}.shortcuts-groups dl{margin:0}.shortcuts-groups dl>div{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid #f1f4f6;font-size:12px}.shortcuts-groups dd{margin:0;text-align:right;max-width:60%}.shortcuts-groups kbd{font:inherit;color:#817b8b}.board-toast{position:absolute;right:20px;top:20px;display:flex;align-items:center;gap:12px;padding:8px 12px;font-size:12px;z-index:45;max-width:calc(100% - 90px)}.list-label{height:28px;font-weight:550}.app:has(.toolbar.sidebar-open) .draw-settings{left:338px}.list-drop-outline{position:absolute;pointer-events:none;z-index:4;border:2px solid var(--accent);background:#609fbb0a;border-radius:10px}.list-insertion{position:absolute;height:3px;background:var(--accent);border-radius:2px;pointer-events:none;z-index:5}@media (max-width: 640px){.shortcuts-groups{grid-template-columns:1fr}.shortcuts-content{padding:16px}.arrange-pop{left:-40px}}@media (max-height: 630px){.primary-tools{gap:0;padding:3px}.primary-tools .icon-button{height:29px}.toolbar-sep{margin:2px 0}}.button-tooltip{position:relative;display:inline-flex;flex-shrink:0}.tool-tooltip{position:fixed;z-index:100;display:flex;align-items:center;gap:14px;padding:8px 10px;background:#302e35;color:#fff;border:1px solid #ffffff14;border-radius:7px;font-size:12px;line-height:1.4;white-space:nowrap;pointer-events:none;box-shadow:0 3px 12px #241b3020;transform:translate(-50%,-100%)}.tool-tooltip.side{transform:translateY(-50%)}.tool-tooltip.side.left{transform:translate(-100%,-50%)}.tool-tooltip kbd{font:inherit;color:#c2beca;font-size:11px}.files-sidebar{position:fixed;top:70px;left:12px;bottom:12px;width:248px;pointer-events:auto;display:flex;flex-direction:column;padding:12px 8px;animation:sidebar-in .16s ease-out}@keyframes sidebar-in{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}.toolbar.sidebar-open .primary-tools{margin-left:260px}.file-search{margin:0 4px 12px;min-width:0;border:1px solid var(--border);border-radius:7px;background:#fbfcfd;padding:8px 9px;font-size:12px;outline-color:var(--accent)}.new-board-button{display:flex;align-items:center;gap:9px;margin:0 4px 12px;border:1px solid #d6e4eb;border-radius:7px;background:#f0f6f9;padding:8px 10px;color:#477f98;font-size:12px}.new-board-button:hover{background:#e7f1f6}.board-file-list{flex:1;overflow:auto;min-height:0;display:flex;flex-direction:column;gap:3px}.board-file-row{display:flex;align-items:center;gap:2px;flex-shrink:0;width:100%;min-height:38px;padding-right:4px;border:1px solid transparent;border-radius:7px}.board-file-row:hover,.board-file-row.menu-open{background:#f3f7f9}.board-file-row.active{background:#edf4f8;border-color:#e0eaf0}.board-file{display:flex;align-items:center;gap:10px;flex:1;min-width:0;border:none;border-radius:6px;background:transparent;padding:10px 8px;font-size:12px;color:#77717f;text-align:left}.board-file svg{flex-shrink:0}.board-file span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-file-row.active .board-file{color:#477f98}.board-file-pin{margin-left:auto;color:#8c9ca7}.board-file-row>.button-tooltip{opacity:0}.board-file-row:hover>.button-tooltip,.board-file-row:focus-within>.button-tooltip,.board-file-row.menu-open>.button-tooltip{opacity:1}.board-file-menu{width:26px;height:26px}.board-file-name-input{flex:1;min-width:0;width:100%;margin:4px;border:1px solid var(--accent);border-radius:5px;padding:6px;font-size:12px;outline:none}@media (hover: none){.board-file-row>.button-tooltip{opacity:1}}.submenu{z-index:45}.toolbar>.toast{position:fixed;top:16px;right:16px;max-width:calc(100vw - 32px);pointer-events:auto;z-index:60}.app:has(.toolbar.sidebar-open) .theme-controls{margin-left:260px}.app-loading{height:100%;display:grid;place-items:center;color:#96919f;font-size:13px}@media (max-width: 640px){.files-sidebar{left:8px;top:66px;bottom:8px;width:224px}.toolbar.sidebar-open .primary-tools{margin-left:236px}.app:has(.toolbar.sidebar-open) .theme-controls{margin-left:0;visibility:hidden}.app:has(.toolbar.sidebar-open) .draw-settings{left:auto;right:12px;top:66px}}@media (prefers-reduced-motion: reduce){.files-sidebar{animation:none}}@media (max-width: 640px){.file-menu{width:152px}.file-menu .submenu{width:calc(100vw - 172px)}.file-menu>.menu-branch>.menu-item kbd{display:none}}.save-status{color:#69a780;font-size:8px;padding:0 3px;flex-shrink:0}.save-status.dirty,.save-status.saving{color:#c28c36}.save-status.error,.save-status.conflict{color:#bd514b}.storage-notice{position:fixed;top:72px;left:50%;transform:translate(-50%);width:min(440px,calc(100vw - 32px));padding:14px;z-index:100;font-size:13px}.storage-notice>div{display:flex;gap:8px;margin-top:10px}.storage-notice button{padding:6px 10px;border:1px solid #e3eaee;border-radius:6px;background:#fff;cursor:pointer}.cloud-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;background:#24213033;display:grid;place-items:center;pointer-events:auto}.cloud-dialog{width:min(390px,calc(100vw - 32px));padding:20px}.cloud-dialog label{display:grid;gap:6px;margin:14px 0;font-size:13px}.cloud-dialog input{width:100%;padding:9px;border:1px solid #dce2e8;border-radius:6px}.cloud-dialog p{font-size:12px;line-height:1.6;color:#686370}.cloud-actions{display:flex;gap:8px;flex-wrap:wrap}.cloud-actions button{border:1px solid #dce2e8;border-radius:6px;padding:8px 12px;background:#fff;cursor:pointer}
