@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-cyrillic-ext-wght-normal-BOeWTOD4.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-cyrillic-wght-normal-DqGufNeO.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-greek-ext-wght-normal-DlzME5K_.woff2)format("woff2-variations");unicode-range:U+1F??}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-greek-wght-normal-CkhJZR-_.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-vietnamese-wght-normal-CBcvBZtf.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-latin-ext-wght-normal-DO1Apj_S.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./inter-latin-wght-normal-Dx4kXJAl.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--font:"Inter Variable", Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--accent:#4353ff;--accent-hover:#3241ec;--accent-soft:#4353ff1f;--accent-softer:#4353ff12;--on-accent:#fff;--canvas:#f2f2f0;--grid-dot:#14161e29;--panel:#fff;--panel-2:#f6f6f7;--shadow-panel:0 0 0 1px #1011140d, 0 1px 2px #1011140d, 0 4px 16px #10111412;--shadow-pop:0 0 0 1px #1011140f, 0 10px 32px #10111429, 0 2px 6px #1011140f;--text:#1b1c20;--text-2:#5c5f68;--text-3:#8d9099;--hover:#1011140e;--active:#1011141a;--separator:#10111417;--input-bg:#fff;--input-border:#10111424;--node-text:#1a1a1a;--node-fill:#fff;--placeholder:#a7a9af;--add-btn:#33333338;--danger:#e5484d;--tooltip-bg:#1b1c20;--tooltip-fg:#fff;--card:#fff;--page:#f5f5f4;--match:#ffcc0061;--frame-border:#1011141f;--paper:#fff;--ink:#1a1a1a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--accent:#6b78ff;--accent-hover:#808bff;--accent-soft:#6b78ff33;--accent-softer:#6b78ff1f;--canvas:#17181b;--grid-dot:#ffffff1f;--panel:#232428;--panel-2:#2b2c31;--shadow-panel:0 0 0 1px #ffffff12, 0 4px 18px #0006;--shadow-pop:0 0 0 1px #ffffff14, 0 12px 36px #0000008c;--text:#ececee;--text-2:#a8abb3;--text-3:#7c7f88;--hover:#ffffff12;--active:#ffffff1f;--separator:#ffffff1a;--input-bg:#1b1c1f;--input-border:#ffffff29;--node-text:#eeeef0;--node-fill:#26272c;--placeholder:#6f727b;--add-btn:#ffffff3d;--tooltip-bg:#f1f1f3;--tooltip-fg:#17181b;--card:#222327;--page:#141517;--match:#ffcc004d;--frame-border:#ffffff24;--paper:#26272c;--ink:#eeeef0;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font);color:var(--text);background:var(--page);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px}button,input,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.board-screen{background:var(--canvas);position:fixed;inset:0;overflow:hidden}.canvas{background:var(--canvas);touch-action:none;-webkit-user-select:none;user-select:none;outline:none;position:absolute;inset:0;overflow:hidden}.canvas.tool-hand,.canvas.panning{cursor:grab}.canvas.panning:active,.canvas.is-panning{cursor:grabbing}.canvas.tool-mindmap,.canvas.tool-sticky{cursor:crosshair}.grid{pointer-events:none;background-image:radial-gradient(circle, var(--grid-dot) 1px, transparent 1.25px);position:absolute;inset:0}.world{transform-origin:0 0;width:0;height:0;position:absolute;top:0;left:0}.world.zooming{will-change:transform}.mm-edges{pointer-events:none;width:1px;height:1px;position:absolute;top:0;left:0;overflow:visible}.mm-edges path{fill:none;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round}.mm-edges path.slot-edge{stroke-dasharray:5 5;opacity:.7}.mm-node{touch-action:none;position:absolute;top:0;left:0}.mm-node-inner{transform-origin:50%;animation:.24s cubic-bezier(.2,.9,.3,1.2) mm-pop;position:absolute;inset:0}.mm-node.no-pop .mm-node-inner{animation:none}@keyframes mm-pop{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.mm-node-inner{animation:none}}.mm-shape{border-radius:var(--r);background:var(--bg,transparent);border:2px var(--dash,solid) var(--c);transition:background-color .12s,border-color .12s;position:absolute;inset:0}.mm-shape.shape-none{border-color:#0000}.mm-hl{border-radius:calc(var(--r) + 3px);background:var(--match);pointer-events:none;position:absolute;inset:-3px}.mm-text{padding:var(--py) var(--px);font-size:var(--fs);line-height:var(--lh);font-weight:var(--fw);font-style:var(--fst,normal);color:var(--tc);white-space:pre;text-align:var(--ta,left);flex-direction:column;justify-content:center;display:flex;position:absolute;inset:0}.mm-text .ln{min-height:var(--lh);display:block}.mm-text.strike .ln{text-decoration:line-through;text-decoration-thickness:1.5px}.mm-text.placeholder{color:var(--placeholder);font-weight:400}.mm-ring{border-radius:calc(var(--r) + 5px);border:2px solid var(--accent);pointer-events:none;position:absolute;inset:-5px}.mm-hover{border-radius:calc(var(--r) + 4px);border:1.5px solid var(--accent);opacity:0;pointer-events:none;transition:opacity .1s;position:absolute;inset:-4px}.mm-node:not(.selected):hover .mm-hover{opacity:.45}.canvas.dragging .mm-node:hover .mm-hover,.canvas.is-panning .mm-node:hover .mm-hover{opacity:0}.mm-node.drop-target .mm-ring,.mm-node.drop-target .mm-hover{opacity:1;border-color:var(--accent);box-shadow:0 0 0 4px var(--accent-soft)}.mm-editor{resize:none;font-size:var(--fs);line-height:var(--lh);font-weight:var(--fw);font-style:var(--fst,normal);color:var(--tc);text-align:var(--ta,left);white-space:pre-wrap;overflow-wrap:break-word;caret-color:var(--accent);-webkit-user-select:text;user-select:text;background:0 0;border:0;outline:0;margin:0;padding:0;position:absolute;overflow:hidden}.mm-editor::placeholder{color:var(--placeholder);opacity:1;font-weight:400}.mm-ghost{opacity:.92;pointer-events:none}.mm-ghost .mm-shape{box-shadow:0 10px 24px #00000029}.mm-ghost .mm-shape.shape-none{background:var(--node-fill);border-radius:8px}.mm-slot{border:2px dashed var(--accent);background:var(--accent-softer);pointer-events:none;border-radius:10px;position:absolute;top:0;left:0}.mm-ctl{width:0;height:0;position:absolute}.mm-ctl>*{transform:translate(-50%, -50%) scale(var(--ctl,1))}.mm-add{background:var(--add-btn);color:#fff;cursor:pointer;border:0;border-radius:50%;place-items:center;width:24px;height:24px;padding:0;transition:background-color .12s;display:grid;position:absolute}.mm-add:hover{background:var(--accent)}.mm-add svg{width:14px;height:14px}.mm-collapse{background:var(--node-fill);border:2px solid var(--c);width:18px;height:18px;color:var(--c);cursor:pointer;opacity:0;border-radius:50%;place-items:center;padding:0;transition:opacity .12s;display:grid;position:absolute}.mm-collapse svg{stroke-width:3px;width:10px;height:10px}.mm-node:hover .mm-collapse,.mm-node.selected .mm-collapse{opacity:1}.mm-badge{background:var(--c);color:#fff;text-align:center;cursor:pointer;white-space:nowrap;border:0;border-radius:10px;min-width:22px;height:20px;padding:0 7px;font-size:12px;font-weight:600;line-height:20px;position:absolute}.mm-badge-stub{background:var(--c);border-radius:1px;position:absolute}.sticky{color:#1a1a1a;touch-action:none;border-radius:4px;position:absolute;top:0;left:0;box-shadow:0 1px 1px #0000000d,0 8px 16px -6px #00000038}.sticky-text{text-align:center;white-space:pre-wrap;overflow-wrap:break-word;justify-content:center;align-items:center;padding:14px;line-height:1.32;display:flex;position:absolute;inset:0;overflow:hidden}.sticky-text.placeholder{color:#00000059}.sticky-editor{resize:none;text-align:center;color:#1a1a1a;caret-color:#1a1a1a;-webkit-user-select:text;user-select:text;background:0 0;border:0;outline:0;margin:0;padding:0;line-height:1.32;position:absolute;left:14px;right:14px;overflow:hidden}.sticky .mm-ring{border-radius:8px;inset:-5px}.sticky-handle{border:2px solid var(--accent);width:12px;height:12px;transform:translate(-50%, -50%) scale(var(--ctl,1));touch-action:none;background:#fff;border-radius:3px;position:absolute}.sticky-handle.nw,.sticky-handle.se{cursor:nwse-resize}.sticky-handle.ne,.sticky-handle.sw{cursor:nesw-resize}.marquee{border:1px solid var(--accent);background:var(--accent-softer);pointer-events:none;border-radius:2px;position:absolute;top:0;left:0}.panel{background:var(--panel);box-shadow:var(--shadow-panel);border-radius:12px}.ui-layer{pointer-events:none;position:absolute;inset:0}.ui-layer>*{pointer-events:auto}.top-left{align-items:center;gap:2px;max-width:calc(100vw - 264px);height:48px;padding:0 6px 0 8px;display:flex;position:absolute;top:12px;left:12px}.brand{cursor:pointer;letter-spacing:-.01em;background:0 0;border:0;border-radius:8px;align-items:center;gap:8px;height:36px;padding:0 8px 0 4px;font-size:15px;font-weight:650;display:flex}.brand:hover{background:var(--hover)}.brand-mark{flex:none;width:26px;height:26px}.vsep{background:var(--separator);flex:none;width:1px;height:24px;margin:0 6px}.hsep{background:var(--separator);height:1px;margin:6px 4px}.board-name{text-overflow:ellipsis;white-space:nowrap;cursor:text;text-align:left;background:0 0;border:1px solid #0000;border-radius:8px;min-width:40px;max-width:320px;height:34px;padding:0 8px;font-size:14px;font-weight:550;overflow:hidden}.board-name:hover{background:var(--hover)}input.board-name{background:var(--input-bg);border-color:var(--accent);cursor:text;outline:none;width:240px}.save-state{color:var(--danger);white-space:nowrap;padding:0 6px;font-size:12px}.top-right{align-items:center;gap:2px;height:48px;padding:0 6px;display:flex;position:absolute;top:12px;right:12px}.btn-primary{background:var(--accent);height:34px;color:var(--on-accent);cursor:pointer;white-space:nowrap;border:0;border-radius:8px;align-items:center;gap:6px;margin-left:4px;padding:0 14px;font-size:13px;font-weight:600;display:inline-flex}.btn-primary:hover{background:var(--accent-hover)}.btn-primary svg{width:16px;height:16px}.btn-secondary{border:1px solid var(--input-border);cursor:pointer;white-space:nowrap;background:0 0;border-radius:8px;align-items:center;gap:6px;height:34px;padding:0 14px;font-size:13px;font-weight:550;display:inline-flex}.btn-secondary:hover{background:var(--hover)}.icon-btn{width:40px;height:40px;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:8px;flex:none;place-items:center;padding:0;transition:background-color .1s,color .1s;display:grid;position:relative}.icon-btn.sm{width:34px;height:34px}.icon-btn:hover{background:var(--hover)}.icon-btn:active{background:var(--active)}.icon-btn.active{background:var(--accent-soft);color:var(--accent)}.icon-btn:disabled{color:var(--text-3);opacity:.55;cursor:default;background:0 0}.icon-btn svg{stroke-width:1.8px;width:20px;height:20px}.icon-btn.sm svg{width:18px;height:18px}[data-tip]{position:relative}[data-tip]:hover:after,[data-tip]:focus-visible:after{content:attr(data-tip);z-index:50;white-space:pre;pointer-events:none;background:var(--tooltip-bg);color:var(--tooltip-fg);border-radius:6px;padding:6px 8px;font-size:12px;font-weight:500;line-height:1.3;animation:.12s .38s both tip-in;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 4px 14px #0000002e}[data-tip-pos=right]:hover:after{top:50%;left:calc(100% + 10px);transform:translateY(-50%)}[data-tip-pos=top]:hover:after{top:auto;bottom:calc(100% + 8px)}[data-tip-pos=left]:hover:after{top:50%;left:auto;right:calc(100% + 10px);transform:translateY(-50%)}@keyframes tip-in{0%{opacity:0}to{opacity:1}}.left-rail{flex-direction:column;gap:8px;display:flex;position:absolute;top:50%;left:12px;transform:translateY(-50%)}.toolbar{flex-direction:column;gap:2px;padding:6px;display:flex}.toolbar .hsep{margin:4px 6px}.zoom-panel{align-items:center;gap:2px;height:44px;padding:0 4px;display:flex;position:absolute;bottom:12px;right:12px}.zoom-label{font-variant-numeric:tabular-nums;cursor:pointer;background:0 0;border:0;border-radius:8px;min-width:56px;height:34px;font-size:13px;font-weight:550}.zoom-label:hover{background:var(--hover)}.minimap{cursor:pointer;width:220px;height:140px;position:absolute;bottom:64px;right:12px;overflow:hidden}.minimap canvas{width:100%;height:100%;display:block}.ctx-toolbar{z-index:20;white-space:nowrap;align-items:center;gap:2px;height:44px;padding:0 4px;animation:.14s ease-out fade-up;display:flex;position:absolute;top:0;left:0}@keyframes fade-up{0%{opacity:0;transform:translateY(4px)}}.ctx-toolbar .vsep{height:22px;margin:0 3px}.ctx-btn{cursor:pointer;min-width:34px;height:34px;color:var(--text);background:0 0;border:0;border-radius:7px;justify-content:center;align-items:center;gap:4px;padding:0 7px;font-size:13px;font-weight:550;display:inline-flex}.ctx-btn:hover{background:var(--hover)}.ctx-btn.active{background:var(--accent-soft);color:var(--accent)}.ctx-btn svg{stroke-width:1.8px;width:18px;height:18px}.ctx-btn .chev{width:12px;height:12px;color:var(--text-3)}.swatch-dot{border-radius:50%;width:18px;height:18px;box-shadow:inset 0 0 0 1px #0000001f}.dd{display:inline-flex;position:relative}.popover.below{top:calc(100% + 8px)}.popover.above{bottom:calc(100% + 8px)}.popover.right{top:-6px;left:calc(100% + 10px)}.popover.below.align-center,.popover.above.align-center{left:50%;translate:-50%}.popover.align-start{left:-4px}.popover.align-end{right:-4px}.popover{z-index:40;background:var(--panel);box-shadow:var(--shadow-pop);border-radius:12px;padding:8px;animation:.12s ease-out pop-in;position:absolute}@keyframes pop-in{0%{opacity:0;transform:translateY(-4px)}}.popover-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);padding:4px 6px 6px;font-size:11px;font-weight:600}.swatches{grid-template-columns:repeat(6,28px);gap:6px;padding:2px 4px 4px;display:grid}.swatch{cursor:pointer;color:#fff;border:0;border-radius:50%;place-items:center;width:28px;height:28px;padding:0;transition:transform .1s;display:grid;box-shadow:inset 0 0 0 1px #0000001f}.swatch:hover{transform:scale(1.1)}.swatch.selected{box-shadow:0 0 0 2px var(--panel), 0 0 0 4px var(--accent)}.swatch svg{stroke-width:3px;width:14px;height:14px}.swatch.custom{background:conic-gradient(#ff4d4d,#fc0,#4dd964,#3fb3ff,#8a5cff,#ff4dd2,#ff4d4d);position:relative;overflow:hidden}.swatch.custom input{opacity:0;cursor:pointer;position:absolute;inset:0}.seg{gap:4px;padding:2px;display:flex}.seg-btn{background:var(--panel-2);cursor:pointer;min-width:64px;height:64px;color:var(--text-2);border:1.5px solid #0000;border-radius:10px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:6px;font-size:12px;font-weight:550;display:flex}.seg-btn:hover{color:var(--text)}.seg-btn.selected{border-color:var(--accent);color:var(--accent);background:var(--accent-softer)}.seg-btn svg{stroke-width:1.6px;width:28px;height:28px}.seg-btn.sm{gap:3px;height:50px}.seg-btn.sm svg{width:24px;height:24px}.seg-btn.chip{flex-direction:row;flex:none;min-width:0;height:32px;padding:0 12px;font-size:13px}.seg-btn:disabled{opacity:.4;cursor:default}.menu{min-width:228px;padding:6px}.menu-item{cursor:pointer;text-align:left;width:100%;height:32px;color:var(--text);white-space:nowrap;background:0 0;border:0;border-radius:7px;align-items:center;gap:10px;padding:0 10px;font-size:13px;font-weight:450;display:flex}.menu-item:hover:not(:disabled),.menu-item.focus{background:var(--hover)}.menu-item:disabled{color:var(--text-3);cursor:default}.menu-item svg{stroke-width:1.8px;width:16px;height:16px;color:var(--text-2);flex:none}.menu-item.danger,.menu-item.danger svg{color:var(--danger)}.menu-item .kbd{color:var(--text-3);margin-left:auto;padding-left:16px;font-size:12px}.menu-item .check{color:var(--accent);margin-left:auto}.menu-label{text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);padding:6px 10px 4px;font-size:11px;font-weight:600}.toggle{vertical-align:middle;background:var(--active);border-radius:9px;flex:none;width:30px;height:18px;transition:background-color .14s;display:inline-block;position:relative}.toggle:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .14s;position:absolute;top:2px;left:2px;box-shadow:0 1px 2px #00000040}.toggle.on{background:var(--accent)}.toggle.on:after{transform:translate(12px)}.search-bar{align-items:center;gap:4px;width:min(420px,100vw - 24px);height:44px;padding:0 6px 0 12px;animation:.12s ease-out pop-in;display:flex;position:absolute;top:72px;left:50%;transform:translate(-50%)}.search-bar svg.lead{width:18px;height:18px;color:var(--text-3);flex:none}.search-bar input{background:0 0;border:0;outline:0;flex:1;min-width:0;height:34px;font-size:14px}.search-count{color:var(--text-3);font-variant-numeric:tabular-nums;white-space:nowrap;padding:0 4px;font-size:12px}.toast{background:var(--tooltip-bg);color:var(--tooltip-fg);white-space:nowrap;z-index:60;border-radius:10px;padding:10px 16px;font-size:13px;font-weight:500;animation:.18s ease-out toast-in;position:absolute;bottom:24px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0003}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,8px)}}.backdrop{z-index:100;background:#0c0d105c;place-items:center;padding:16px;animation:.14s ease-out fade;display:grid;position:fixed;inset:0}@keyframes fade{0%{opacity:0}}.dialog{background:var(--panel);width:min(760px,100%);max-height:calc(100vh - 32px);box-shadow:var(--shadow-pop);border-radius:16px;padding:24px;animation:.16s ease-out dialog-in;overflow:auto}.dialog.narrow{width:min(460px,100%)}@keyframes dialog-in{0%{opacity:0;transform:translateY(8px)scale(.98)}}.dialog-head{justify-content:space-between;align-items:center;margin-bottom:16px;display:flex}.dialog h2{letter-spacing:-.01em;margin:0;font-size:18px;font-weight:650}.dialog p{color:var(--text-2);margin:0 0 14px;line-height:1.5}.shortcut-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px 32px;display:grid}.shortcut-group h3{text-transform:uppercase;letter-spacing:.05em;color:var(--text-3);margin:0 0 8px;font-size:12px;font-weight:650}.shortcut-row{border-bottom:1px solid var(--separator);justify-content:space-between;align-items:center;gap:12px;padding:6px 0;font-size:13px;display:flex}.shortcut-row:last-child{border-bottom:0}.keys{flex:none;gap:4px;display:flex}kbd{font-family:var(--font);background:var(--panel-2);min-width:22px;height:22px;box-shadow:inset 0 -1px 0 var(--separator), 0 0 0 1px var(--separator);color:var(--text-2);border-radius:5px;place-items:center;padding:0 6px;font-size:12px;font-weight:550;display:inline-grid}.export-grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;display:grid}.export-card{border:1.5px solid var(--separator);text-align:left;cursor:pointer;background:0 0;border-radius:12px;flex-direction:column;gap:6px;padding:14px;transition:border-color .12s,background-color .12s;display:flex}.export-card:hover{border-color:var(--accent);background:var(--accent-softer)}.export-card svg{width:22px;height:22px;color:var(--accent)}.export-card strong{font-size:14px}.export-card span{color:var(--text-2);font-size:12px;line-height:1.4}.field{color:var(--text-2);align-items:center;gap:10px;margin:0 0 14px;font-size:13px;display:flex}.import-area{border:1px solid var(--input-border);background:var(--input-bg);resize:vertical;border-radius:10px;outline:none;width:100%;min-height:200px;padding:12px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.5}.import-area:focus{border-color:var(--accent)}.dialog-actions{justify-content:flex-end;gap:8px;margin-top:16px;display:flex}.dash{background:var(--page);min-height:100%}.dash-header{z-index:10;background:color-mix(in srgb, var(--page) 86%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--separator);align-items:center;gap:16px;height:64px;padding:0 28px;display:flex;position:sticky;top:0}.dash-header .brand{cursor:default}.dash-header .brand:hover{background:0 0}.dash-search{background:var(--card);width:min(320px,40vw);height:38px;box-shadow:var(--shadow-panel);border-radius:10px;align-items:center;gap:8px;margin-left:auto;padding:0 12px;display:flex}.dash-search svg{width:16px;height:16px;color:var(--text-3);flex:none}.dash-search input{background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:14px}.dash-main{max-width:1240px;margin:0 auto;padding:28px 28px 64px}.dash h1{letter-spacing:-.02em;margin:8px 0 6px;font-size:26px;font-weight:700}.dash-sub{color:var(--text-2);margin:0 0 24px}.dash h2{margin:0;font-size:15px;font-weight:650}.section-head{justify-content:space-between;align-items:center;gap:12px;margin:28px 0 14px;display:flex}.tpl-row{grid-template-columns:repeat(auto-fill,minmax(176px,1fr));gap:14px;display:grid}.tpl-card{cursor:pointer;text-align:left;background:0 0;border:0;flex-direction:column;gap:8px;padding:0;display:flex}.thumb-svg{position:absolute;inset:6px}.thumb-svg svg{width:100%;height:100%;display:block}.tpl-thumb{background:var(--card);height:112px;box-shadow:var(--shadow-panel);border-radius:12px;place-items:center;transition:box-shadow .14s,transform .14s;display:grid;position:relative;overflow:hidden}.tpl-card:hover .tpl-thumb{box-shadow:0 0 0 2px var(--accent), var(--shadow-panel);transform:translateY(-2px)}.tpl-thumb.blank{color:var(--accent);background:var(--accent-softer);box-shadow:inset 0 0 0 1.5px var(--accent-soft)}.tpl-thumb.blank svg{width:32px;height:32px}.tpl-name{padding:0 2px;font-size:13px;font-weight:600}.tpl-desc{color:var(--text-2);margin-top:-4px;padding:0 2px;font-size:12px}.board-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:18px;display:grid}.board-card{background:var(--card);box-shadow:var(--shadow-panel);cursor:pointer;border-radius:14px;transition:box-shadow .14s,transform .14s;position:relative;overflow:hidden}.board-card:hover{box-shadow:0 0 0 2px var(--accent), var(--shadow-panel);transform:translateY(-2px)}.board-thumb{background:var(--canvas);background-image:radial-gradient(circle, var(--grid-dot) .8px, transparent 1px);border-bottom:1px solid var(--separator);background-size:14px 14px;place-items:center;height:156px;display:grid;position:relative;overflow:hidden}.board-info{align-items:center;gap:8px;padding:12px 8px 12px 14px;display:flex}.board-info-text{flex:1;min-width:0}.board-title{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:600;overflow:hidden}.board-meta{color:var(--text-3);margin-top:2px;font-size:12px}.board-title-input{border:1px solid var(--accent);background:var(--input-bg);border-radius:6px;outline:none;width:100%;margin:-3px -7px;padding:2px 6px;font-size:14px;font-weight:600}.empty{border:1.5px dashed var(--separator);text-align:center;color:var(--text-2);border-radius:14px;padding:40px 24px}.empty strong{color:var(--text);margin-bottom:6px;font-size:15px;display:block}.sort-select{border:1px solid var(--input-border);background:var(--card);height:32px;color:var(--text);border-radius:8px;padding:0 8px;font-size:13px}@media (width<=720px){.top-right .hide-sm{display:none}.board-name{max-width:140px}input.board-name{width:150px}.brand-text{display:none}.left-rail{flex-direction:row;top:auto;bottom:12px;left:12px;transform:none}.toolbar{flex-direction:row}.toolbar .hsep{width:1px;height:auto;margin:6px 4px}.left-rail .undo-panel,.zoom-panel .hide-sm{display:none}.zoom-panel{bottom:68px}.btn-primary .label-sm-hide{display:none}.btn-primary:has(.label-sm-hide){padding:0 9px}.top-left{max-width:calc(100vw - 136px)}.minimap{display:none}.dash-header{padding:0 16px}.dash-main{padding:20px 16px 48px}.ctx-toolbar{scrollbar-width:none;max-width:calc(100vw - 16px);overflow-x:auto}}@media (width<=480px){.hide-xs{display:none}.tpl-row{grid-template-columns:repeat(2,1fr)}.board-grid{grid-template-columns:1fr}}.world{--inv:1}.it{touch-action:none;position:absolute;top:0;left:0}.it-text{white-space:pre;pointer-events:none;position:absolute}.it-text .ln{white-space:pre;display:block}.it-text mark{color:inherit;border-radius:2px;padding:0 1px}.it-text.placeholder{color:var(--placeholder)}.it-editor{resize:none;white-space:pre-wrap;overflow-wrap:break-word;caret-color:var(--accent);-webkit-user-select:text;user-select:text;background:0 0;border:0;outline:0;margin:0;padding:0;position:absolute;overflow:hidden}.it-ring{inset:calc(-3px * var(--inv));border:calc(1.5px * var(--inv)) solid var(--accent);pointer-events:none;border-radius:4px;position:absolute}.it.attach:after{content:"";inset:calc(-5px * var(--inv));border:calc(2px * var(--inv)) solid var(--accent);box-shadow:0 0 0 calc(4px * var(--inv)) var(--accent-soft);pointer-events:none;border-radius:6px;position:absolute}.it-sticky{border-radius:2px;box-shadow:0 1px 1px #0000000d,0 8px 16px -6px #0000003d}.it-sticky .it-ring{border-radius:5px}.it-textbox{border-radius:3px}.it-shape .it-shape-svg{position:absolute;top:0;left:0;overflow:visible}.it-frame{pointer-events:none}.frame-body{box-shadow:0 0 0 calc(1px * var(--inv)) var(--frame-border), 0 2px 10px #0000000a;position:absolute;inset:0}.frame-title{transform-origin:0 100%;transform:scale(var(--ctl,1));color:var(--text-2);pointer-events:auto;white-space:nowrap;cursor:default;-webkit-user-select:none;user-select:none;text-overflow:ellipsis;max-width:420px;padding:0 4px 6px 1px;font-size:13px;font-weight:550;position:absolute;bottom:100%;left:0;overflow:hidden}.it-frame.selected .frame-title{color:var(--accent)}.frame-title-input{font:inherit;border:1px solid var(--accent);background:var(--panel);color:var(--text);border-radius:4px;outline:none;min-width:140px;padding:1px 4px;font-size:13px}.frame-edge{pointer-events:auto;position:absolute}.frame-edge.t,.frame-edge.b{height:calc(10px * var(--inv));left:0;right:0}.frame-edge.l,.frame-edge.r{width:calc(10px * var(--inv));top:0;bottom:0}.frame-edge.t{top:calc(-5px * var(--inv))}.frame-edge.b{bottom:calc(-5px * var(--inv))}.frame-edge.l{left:calc(-5px * var(--inv))}.frame-edge.r{right:calc(-5px * var(--inv))}.it-image{background:var(--panel-2);border-radius:2px}.it-image img{object-fit:fill;-webkit-user-select:none;user-select:none;-webkit-user-drag:none;pointer-events:none;border-radius:2px;width:100%;height:100%;display:block}.img-missing{color:var(--text-3);border:1px dashed var(--separator);place-items:center;font-size:12px;display:grid;position:absolute;inset:0}.it-ink{pointer-events:none}.it-ink svg{position:absolute;top:0;left:0;overflow:visible}.it-ink path[data-item-id]{pointer-events:stroke;cursor:pointer}.it-connector{pointer-events:none;width:0;height:0}.conn-svg{pointer-events:none;width:1px;height:1px;position:absolute;top:0;left:0;overflow:visible}.conn-hit{fill:none;stroke:#0000;pointer-events:stroke;cursor:pointer}.conn-sel{fill:none;stroke:var(--accent);stroke-opacity:.28;stroke-linecap:round;stroke-linejoin:round}.conn-label{background:var(--canvas);white-space:nowrap;pointer-events:auto;color:var(--node-text);cursor:pointer;border-radius:4px;padding:2px 6px;font-size:14px;line-height:1.3;position:absolute;transform:translate(-50%,-50%)}.conn-label-input{font:inherit;border:1px solid var(--accent);background:var(--panel);color:var(--text);border-radius:4px;outline:none;padding:1px 4px}.comment-pin{pointer-events:auto;cursor:pointer;width:0;height:0;position:absolute;top:0;left:0}.comment-bubble{transform-origin:0 100%;transform:scale(var(--ctl,1));background:var(--accent);color:#fff;border-radius:15px 15px 15px 3px;place-items:center;min-width:30px;height:30px;padding:0 8px;font-size:12px;font-weight:700;transition:box-shadow .12s;display:grid;position:absolute;bottom:0;left:0;box-shadow:0 2px 8px #00000038}.comment-bubble svg{width:15px;height:15px}.comment-pin.resolved .comment-bubble{background:var(--text-3)}.comment-pin.open .comment-bubble{box-shadow:0 0 0 4px var(--accent-soft), 0 2px 8px #00000038}.it-link,.it-lock{width:22px;height:22px;transform:translate(-50%, -50%) scale(var(--ctl,1));background:var(--panel);box-shadow:var(--shadow-panel);color:var(--accent);pointer-events:auto;border-radius:6px;place-items:center;display:grid;position:absolute}.it-lock{color:var(--text-2);pointer-events:none}.it-link svg,.it-lock svg{width:13px;height:13px}.mm-text.underline .ln{text-decoration:underline}.mm-text.strike.underline .ln{text-decoration:underline line-through}.mm-text mark{color:inherit;border-radius:2px;padding:0 1px}.sel-layer{pointer-events:none;position:absolute;inset:0;overflow:hidden}.sel-box{border:1.5px solid var(--accent);pointer-events:none;border-radius:2px;position:absolute;top:0;left:0}.sel-handle{border:1.5px solid var(--accent);pointer-events:auto;touch-action:none;background:#fff;border-radius:3px;width:11px;height:11px;margin:-5.5px 0 0 -5.5px;position:absolute}.sel-handle.side{border-radius:4px;width:8px;height:18px;margin:-9px 0 0 -4px}.sel-handle.h-n,.sel-handle.h-s{width:18px;height:8px;margin:-4px 0 0 -9px}.h-nw,.h-se{cursor:nwse-resize}.h-ne,.h-sw{cursor:nesw-resize}.h-n,.h-s{cursor:ns-resize}.h-e,.h-w{cursor:ew-resize}.sel-lock{background:var(--panel);width:22px;height:22px;box-shadow:var(--shadow-panel);color:var(--text-2);border-radius:6px;place-items:center;display:grid;position:absolute}.sel-lock svg{width:13px;height:13px}.conn-end{border:2px solid var(--accent);pointer-events:auto;cursor:grab;touch-action:none;background:#fff;border-radius:50%;width:13px;height:13px;margin:-6.5px 0 0 -6.5px;position:absolute}.conn-end.attached{background:var(--accent)}.connect-dot{background:var(--accent);width:14px;height:14px;box-shadow:0 0 0 3px var(--accent-soft);pointer-events:auto;cursor:crosshair;opacity:.9;touch-action:none;border-radius:50%;margin:-7px 0 0 -7px;transition:transform .1s;position:absolute}.connect-dot:hover{transform:scale(1.3)}.guide{pointer-events:none;background:#f24726;position:absolute}.guide.v{width:1px}.guide.h{height:1px}.create-preview{border:1.5px dashed var(--accent);background:var(--accent-softer);pointer-events:none;position:absolute;top:0;left:0}.canvas.tool-text{cursor:text}.canvas.tool-shape,.canvas.tool-frame,.canvas.tool-connector,.canvas.tool-pen,.canvas.tool-highlighter,.canvas.tool-comment{cursor:crosshair}.canvas.tool-eraser{cursor:cell}.canvas.tool-text .it,.canvas.tool-shape .it,.canvas.tool-pen .it,.canvas.tool-highlighter .it,.canvas.tool-eraser .it{pointer-events:none}.tool-slot{position:relative}.tool-flyout{z-index:30;width:252px;box-shadow:var(--shadow-pop);padding:10px;animation:.12s ease-out pop-in;position:absolute;top:50%;left:calc(100% + 14px);transform:translateY(-50%)}.flyout-title{text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);padding:2px 4px 8px;font-size:11px;font-weight:600}.tool-flyout .swatches+.flyout-title,.tool-flyout .seg+.flyout-title{margin-top:8px}.flyout-hint{color:var(--text-3);padding:8px 4px 0;font-size:12px;line-height:1.35}.tool-flyout .swatches{grid-template-columns:repeat(6,1fr)}.shape-grid{grid-template-columns:repeat(6,1fr);gap:2px;display:grid}.shape-btn{height:36px;color:var(--text);cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;display:grid}.shape-btn:hover{background:var(--hover)}.shape-btn.selected{background:var(--accent-soft);color:var(--accent)}.width-row{gap:4px;padding:0 2px;display:flex}.width-btn{background:var(--panel-2);cursor:pointer;height:34px;color:var(--text);border:0;border-radius:7px;flex:1;place-items:center;display:grid}.width-btn:hover{background:var(--hover)}.width-btn.selected{background:var(--accent-soft);color:var(--accent);box-shadow:inset 0 0 0 1.5px var(--accent)}.width-btn>span:not(.bar):not(.none-label){background:currentColor;border-radius:50%;display:block}.width-btn .bar{background:currentColor;border-radius:4px;width:60%;min-height:1px;display:block}.width-btn .none-label{color:var(--text-2);font-size:11px;font-weight:550}.frame-formats{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.frame-fmt{background:var(--panel-2);height:64px;color:var(--text-2);cursor:pointer;border:1.5px solid #0000;border-radius:9px;flex-direction:column;justify-content:center;align-items:center;gap:6px;font-size:11.5px;font-weight:550;display:flex}.frame-fmt.selected{border-color:var(--accent);color:var(--accent);background:var(--accent-softer)}.fmt-box{border:1.5px solid;border-radius:2px;width:34px;max-width:34px;max-height:26px;display:block}.frame-fmt:first-child .fmt-box{border-style:dashed}.swatch-dot.ring{box-shadow:inset 0 0 0 1px #0000001f, 0 0 0 1.5px var(--panel), 0 0 0 2.5px var(--separator)}.swatch.none{background:var(--panel) linear-gradient(135deg, transparent 46%, var(--danger) 46% 54%, transparent 54%)}.font-label{min-width:34px;font-size:13px;font-weight:550}.ctx-note{color:var(--text-2);padding:0 8px 0 2px;font-size:12.5px}.cap-menu{min-width:190px}.cap-menu .menu-item svg{width:22px;height:22px}.range{width:calc(100% - 12px);accent-color:var(--accent);margin:2px 6px 4px}.link-pop{width:320px}.link-pop form{align-items:center;gap:6px;display:flex}.link-pop input{border:1px solid var(--input-border);background:var(--input-bg);min-width:0;height:34px;color:var(--text);font:inherit;border-radius:8px;outline:none;flex:1;padding:0 10px;font-size:13px}.link-pop input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.link-pop .btn-primary,.link-pop .btn-secondary{height:34px;padding:0 12px}.tpl-section{text-transform:uppercase;letter-spacing:.04em;color:var(--text-3);margin:4px 0 10px;font-size:12px;font-weight:600}.tpl-row+.tpl-section,div+div>.tpl-section{margin-top:22px}.frames-panel{z-index:15;flex-direction:column;gap:8px;width:248px;padding:10px;animation:.14s ease-out fade-up;display:flex;position:absolute;top:72px;bottom:72px;left:72px}.frames-head{align-items:center;gap:8px;padding:0 2px 0 6px;font-size:14px;display:flex}.frames-count{color:var(--text-3);background:var(--panel-2);border-radius:10px;padding:1px 7px;font-size:12px;font-weight:600}.frames-empty{color:var(--text-2);text-align:center;padding:24px 10px;font-size:13px;line-height:1.45}.frames-empty svg{width:28px;height:28px;color:var(--text-3)}.frames-list{flex-direction:column;flex:1;gap:2px;margin:0;padding:0;list-style:none;display:flex;overflow-y:auto}.frames-list li{border-radius:8px;align-items:center;display:flex}.frames-list li:hover{background:var(--hover)}.frames-list li.selected{background:var(--accent-softer)}.frame-row{min-width:0;height:38px;font:inherit;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:0;flex:1;align-items:center;gap:10px;padding:0 8px;font-size:13px;display:flex}.frame-num{background:var(--panel-2);width:22px;height:22px;color:var(--text-2);border-radius:6px;flex:none;place-items:center;font-size:11.5px;font-weight:650;display:grid}.frames-list li.selected .frame-num{background:var(--accent);color:var(--on-accent)}.frame-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.frame-actions{padding-right:2px;display:none}.frames-list li:hover .frame-actions,.frames-list li.selected .frame-actions{display:flex}.frame-actions .icon-btn.sm{width:26px;height:26px}.frame-actions .icon-btn.sm svg{width:15px;height:15px}.frames-present{justify-content:center;width:100%;margin-left:0}.frames-present svg{width:16px;height:16px}.present-mask{border-radius:2px;position:absolute;box-shadow:0 0 0 200vmax #141518;pointer-events:none!important}.canvas.presenting .frame-title,.canvas.presenting .it-link{visibility:hidden}.present-bar{opacity:.35;align-items:center;gap:4px;height:48px;padding:0 8px;transition:opacity .16s;display:flex;position:absolute;bottom:18px;left:50%;transform:translate(-50%)}.present-bar:hover,.present-bar:focus-within{opacity:1}.present-count{font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;max-width:320px;padding:0 8px;font-size:13px;font-weight:600;overflow:hidden}.present-count em{color:var(--text-2);font-style:normal;font-weight:450}.comment-thread{z-index:25;width:300px;max-height:min(460px,100vh - 80px);box-shadow:var(--shadow-pop);flex-direction:column;gap:8px;padding:10px;animation:.12s ease-out pop-in;display:flex;position:absolute}.thread-head{align-items:center;gap:2px;padding-left:4px;font-size:13.5px;display:flex}.thread-head strong{margin-right:auto}.thread-list{flex-direction:column;gap:12px;margin:0;padding:0 4px;list-style:none;display:flex;overflow-y:auto}.msg-meta{color:var(--text-3);align-items:center;gap:8px;margin-bottom:4px;font-size:11.5px;display:flex}.avatar{background:var(--accent);height:20px;color:var(--on-accent);border-radius:10px;place-items:center;padding:0 7px;font-size:10.5px;font-weight:700;display:grid}.msg-text{white-space:pre-wrap;overflow-wrap:anywhere;font-size:13.5px;line-height:1.45}.thread-note{color:var(--text-2);margin:0;padding:4px;font-size:12.5px}.thread-input{flex-direction:column;gap:6px;display:flex}.thread-input textarea{resize:none;border:1px solid var(--input-border);background:var(--input-bg);min-height:56px;color:var(--text);font:inherit;border-radius:8px;outline:none;padding:8px 10px;font-size:13.5px;line-height:1.4}.thread-input textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.thread-input .btn-primary{align-self:flex-end;height:32px}@media (height<=700px) and (width>=721px){.left-rail .toolbar .icon-btn{width:36px;height:34px}.left-rail .undo-panel{display:none}}@media (width<=720px){.left-rail{right:12px}.left-rail .toolbar{scrollbar-width:none;min-width:0;max-width:100%;overflow-x:auto}.left-rail .toolbar .icon-btn{width:38px;height:38px}.tool-flyout{width:auto;position:fixed;inset:auto 12px 70px;transform:none}.frames-panel{width:auto;max-height:50vh;inset:auto 12px 70px}.comment-thread{width:calc(100vw - 24px)}}
