@import"https://fonts.googleapis.com/css2?family=Caveat:wght@500;600;700&family=Patrick+Hand&display=swap";@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.shrink{flex-shrink:1}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.lowercase{text-transform:lowercase}.ordinal{--tw-ordinal:ordinal;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.select-all{-webkit-user-select:all;-moz-user-select:all;user-select:all}:root{--ink:#2b2b2b;--ink-soft:#6b6b6b;--ink-faint:#9a9a9a;--line:#2b2b2b;--paper:#f7f6f2;--paper-card:#fffefb;--accent:#3b6ea5;--accent-soft:#cfe0ef;--hand:"Patrick Hand", "Comic Sans MS", cursive;--scrawl:"Caveat", cursive}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--hand);color:var(--ink);background:var(--paper);-webkit-font-smoothing:antialiased;margin:0}button{font-family:var(--hand);color:var(--ink);cursor:pointer}.sk{border:2px solid var(--line);background:var(--paper-card);border-radius:255px 12px 225px 15px/15px 225px 15px 255px}.sk2{border:2px solid var(--line);background:var(--paper-card);border-radius:14px 240px 18px 220px/220px 16px 240px 14px}.sk-soft{border:1.5px solid var(--ink-soft);border-radius:200px 14px 210px 16px/14px 200px 16px 210px}.wordmark{font-family:var(--scrawl);letter-spacing:.5px;white-space:nowrap;font-weight:700}.ico{vertical-align:middle;display:inline-block}.ico svg{width:100%;height:100%;display:block}.btn-wf{white-space:nowrap;border:2px solid var(--line);background:var(--paper-card);border-radius:200px 11px 200px 13px/11px 200px 13px;align-items:center;gap:7px;padding:7px 15px;font-size:16px;display:inline-flex}.btn-wf.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.btn-wf.ghost{color:var(--ink-soft);background:0 0;border-style:dashed}.btn-wf.danger{color:#b5402f;border-color:#b5402f}.btn-wf:disabled{opacity:.6;cursor:default}.signin-wrap{background:radial-gradient(circle,#d7d4cc 1.6px,transparent 1.7px) 0 0 / 26px 26px,var(--paper);place-items:center;height:100%;display:grid}.signin-card{text-align:center;flex-direction:column;align-items:center;gap:14px;padding:40px 48px;display:flex}.signin-sub{color:var(--ink-soft);margin:0;font-size:18px}.signin-error{color:#b5402f;margin:0;font-size:15px}.app-loading,.board-loading,.dash-empty,.dash-error{color:var(--ink-soft);padding:40px;font-size:18px}.dash-error{color:#b5402f}.dash-wrap{height:100%;display:flex}.dash-side{border-right:2px dashed var(--ink-faint);flex-direction:column;flex:0 0 220px;padding:20px 16px;transition:flex-basis .18s,padding .18s;display:flex;overflow:hidden auto}.sgrp{margin-bottom:22px}.slabel{color:var(--ink-faint);text-transform:uppercase;letter-spacing:1px;margin-bottom:8px;font-size:13px}.sitem{color:var(--ink-soft);white-space:nowrap;text-overflow:ellipsis;border-radius:8px;align-items:center;gap:9px;padding:6px 10px;font-size:16px;display:flex;position:relative;overflow:hidden}.sitem.active{background:var(--accent-soft);color:var(--accent)}.dash-main{flex:1;padding:18px 26px 60px;overflow:auto}.dash-head{align-items:center;gap:14px;margin-bottom:22px;display:flex}.search{max-width:420px;color:var(--ink-faint);background:var(--paper-card);flex:1;align-items:center;gap:8px;padding:8px 14px;font-size:16px;display:flex}.board-grid{grid-template-columns:repeat(auto-fill,minmax(min(210px,100%),1fr));gap:20px;display:grid}.board-card{text-align:left;padding:0;display:block;overflow:hidden}.board-thumb{border-bottom:2px solid var(--line);background:radial-gradient(circle,#d7d4cc 1.4px,#0000 1.5px) 0 0/16px 16px;height:116px}.board-meta{padding:10px 13px 12px}.board-meta .bt{white-space:nowrap;text-overflow:ellipsis;font-size:18px;overflow:hidden}.board-meta .bsub{color:var(--ink-faint);margin-top:2px;font-size:14px}.board-card.new{min-height:180px;color:var(--accent);border-style:dashed;border-color:var(--accent);background:var(--paper);place-items:center;gap:4px;display:grid}.board-card.new .plus{font-size:46px;line-height:1}.users-page{max-width:720px}.users-note{color:var(--ink-soft);margin:0 0 18px;font-size:16px}.users-add{color:var(--ink-faint);background:var(--paper-card);align-items:center;gap:10px;margin-bottom:10px;padding:8px 10px 8px 14px;display:flex}.users-input{min-width:0;font-family:var(--hand);color:var(--ink);background:0 0;border:none;outline:none;flex:1;font-size:17px}.users-input::-moz-placeholder{color:var(--ink-faint)}.users-input::placeholder{color:var(--ink-faint)}.users-msg{padding:0 0 6px;font-size:16px}.users-ok{color:var(--accent)}.users-list{flex-direction:column;gap:10px;margin:14px 0 0;padding:0;list-style:none;display:flex}.user-row{background:var(--paper-card);align-items:center;gap:12px;padding:10px 14px;display:flex}.user-row-main{flex:1;min-width:0}.user-row-email{text-overflow:ellipsis;white-space:nowrap;font-size:17px;overflow:hidden}.user-row-sub{color:var(--ink-faint);font-size:14px}.user-you{color:var(--ink-faint);font-size:15px}.user-row-spacer{flex:none;width:108px}.role-select{font-family:var(--hand);color:var(--ink);background:var(--paper-card);cursor:pointer;padding:5px 10px;font-size:16px}.role-badge{background:var(--accent-soft);color:var(--accent);border-radius:200px 11px 200px 13px/11px 200px 13px;padding:5px 12px;font-size:15px}.role-badge.fixed{border:1.5px dashed var(--accent)}.users-subhead{margin-top:26px}.user-row.pending{background:0 0;border-style:dashed}.pending-ava{background:var(--paper-card);color:var(--ink-faint);border:1.5px dashed var(--ink-faint)}.role-badge.pending{color:var(--ink-soft);border:1.5px dashed var(--ink-faint);background:0 0}.role-badge.pending.failed{color:#b5402f;border-color:#b5402f}.modal-backdrop{background:#2b2b2b2e;position:fixed}.members-dialog{z-index:40;width:min(460px,100vw - 40px);max-height:min(70vh,620px);padding:18px 22px 20px;position:fixed;top:50%;left:50%;overflow:auto;transform:translate(-50%,-50%);box-shadow:0 8px 30px #0000002e}.members-head{justify-content:space-between;align-items:center;display:flex}.members-sub{color:var(--ink-faint);margin:2px 0 14px;font-size:15px}.members-list{flex-direction:column;gap:8px;margin:0 0 14px;padding:0;list-style:none;display:flex}.members-row{align-items:center;gap:10px;display:flex}.members-email{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-size:16px;overflow:hidden}.members-remove{padding:4px 10px;font-size:15px}.members-add{margin-bottom:4px}.members-note{color:var(--ink-faint);margin:0;font-size:15px}.members-group{align-items:center;gap:10px;margin:0 0 10px;display:flex}.members-group-label{color:var(--ink-faint);text-transform:uppercase;letter-spacing:1px;font-size:15px}.members-group-name{font-size:16px}.groups-list{flex-direction:column;gap:18px;margin-top:18px;display:flex}.group-card{padding:14px 18px 16px}.group-head{align-items:center;gap:10px;display:flex}.group-name{background:0 0;border-color:#0000;flex:1;font-size:19px}.group-name:focus{border-color:var(--accent);background:var(--paper-card)}.group-sub{color:var(--ink-faint);margin:2px 0 12px;font-size:14px}.group-cols{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:22px;margin-top:12px;display:grid}.group-col .slabel{margin-bottom:6px}.group-col .members-list{margin-bottom:10px}.group-add-board{width:100%}.picker{position:relative}.picker-field{margin-bottom:0}.picker-list{z-index:50;background:var(--paper-card);max-height:260px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow:auto;box-shadow:0 6px 20px #00000024}.picker-option{text-align:left;background:0 0;border:none;border-radius:8px;align-items:center;gap:9px;width:100%;padding:6px 8px;font-size:16px;display:flex}.picker-option.active{background:var(--accent-soft)}.picker-name{text-overflow:ellipsis;white-space:nowrap;flex:0 auto;overflow:hidden}.picker-empty{color:var(--ink-faint);padding:8px 10px;font-size:15px;line-height:1.4}.picker-email{min-width:0;color:var(--ink-faint);text-overflow:ellipsis;white-space:nowrap;flex:auto;font-size:13px;overflow:hidden}.scount.alert{background:var(--accent);color:#fff}.board-card.read-only{border-style:dashed}.view-tag{color:var(--ink-soft);border:1.5px dashed var(--ink-faint);border-radius:200px 11px 200px 13px/11px 200px 13px;margin-left:8px;padding:1px 8px;font-size:13px}.view-badge{color:var(--accent);background:var(--accent-soft);white-space:nowrap;align-items:center;gap:6px;padding:5px 12px;font-size:15px;display:inline-flex}.board-page{flex-direction:column;height:100%;display:flex}.board-topbar{border-bottom:2px solid var(--line);background:var(--paper-card);flex:none;align-items:center;gap:10px;padding:10px 14px;display:flex}.board-topbar .pillbar{background:var(--paper-card);align-items:center;gap:8px;padding:6px 12px;font-size:16px;display:inline-flex}.board-topbar>*{flex:none}.board-topbar{scrollbar-width:thin;overflow-x:auto}.board-title b{text-overflow:ellipsis;white-space:nowrap;vertical-align:bottom;max-width:30vw;display:inline-block;overflow:hidden}.board-canvas{flex:1;min-height:0;position:relative}.save-status{color:var(--ink-faint);text-align:right;min-width:60px;font-size:15px}.ava{background:var(--accent);color:#fff;width:28px;height:28px;font-size:14px;font-family:var(--hand);border:1.5px solid #fff;border-radius:50%;flex:none;place-items:center;display:inline-grid;overflow:hidden}.ava-row{align-items:center;display:flex}.ava-row .ava+.ava{margin-left:-8px}.presence-row{margin-right:4px}.presence-row .ava{width:30px;height:30px;font-size:15px;box-shadow:0 1px 3px #0003}.presence-row .ava-more{background:var(--ink-soft);font-size:13px}.board-back{padding:6px 10px}.board-title{background:0 0;border:2px solid #0000;border-radius:200px 11px 200px 13px/11px 200px 13px;align-items:center;gap:7px;padding:6px 12px;font-size:17px;display:inline-flex}.board-title:hover{border-color:var(--ink-faint);background:var(--paper)}.board-title-edit{color:var(--ink-faint);display:inline-flex}.board-title-input{font-family:var(--hand);color:var(--ink);border:2px solid var(--accent);background:var(--paper-card);border-radius:10px;outline:none;min-width:220px;padding:6px 12px;font-size:17px}.menu-anchor,.card-menu-anchor{display:inline-flex;position:relative}.menu-backdrop{z-index:90;position:fixed;inset:0}.menu{z-index:100;background:var(--paper-card);min-width:210px;padding:6px;font-size:16px;position:absolute;box-shadow:0 10px 26px #0000002e}.export-menu{top:calc(100% + 8px);right:0}.card-menu{bottom:calc(100% + 6px);right:0}.menu .mi{width:100%;color:var(--ink);white-space:nowrap;text-align:left;background:0 0;border:none;border-radius:7px;align-items:center;gap:11px;padding:8px 10px;font-size:16px;display:flex}.menu .mi:hover{background:var(--accent-soft)}.menu .mi.danger{color:#b5402f}.menu .mi.danger:hover{background:#f6dcd6}.menu .mhead{color:var(--ink-faint);text-transform:uppercase;letter-spacing:1px;padding:4px 10px 6px;font-size:13px}.menu .msep{background:var(--ink-faint);opacity:.4;height:1.5px;margin:5px 6px}.dash-side .sitem{text-align:left;width:100%;font-family:var(--hand);cursor:pointer;background:0 0;border:none}.dash-side .sitem:hover{background:var(--paper-card)}.dash-side .sitem.active{background:var(--accent-soft);color:var(--accent)}.scount{color:var(--ink-faint);background:var(--paper);border-radius:200px;margin-left:auto;padding:1px 8px;font-size:13px}.sitem.active .scount{color:var(--accent);background:#fff}.user-chip{gap:8px}.sidebar-ava{background:var(--accent);flex:none;width:26px;height:26px}.user-email{text-overflow:ellipsis;font-size:14px;overflow:hidden}.side-head{align-items:center;gap:8px;margin-bottom:20px;display:flex}.side-mark{text-overflow:ellipsis;flex:1;min-width:0;font-size:24px;overflow:hidden}.side-toggle{border:1.5px dashed var(--ink-faint);width:30px;height:30px;color:var(--ink-soft);cursor:pointer;background:0 0;border-radius:50%;flex:none;place-items:center;display:grid}.side-toggle:hover{background:var(--paper-card);color:var(--ink)}.side-toggle .ico{transition:transform .18s;transform:rotate(180deg)}.sitem-label{text-overflow:ellipsis;flex:1;min-width:0;overflow:hidden}.side-foot{margin-top:auto}.side-signout{justify-content:center;width:100%}.dash-side.collapsed{flex-basis:60px;padding-left:8px;padding-right:8px}.dash-side.collapsed .side-mark,.dash-side.collapsed .slabel,.dash-side.collapsed .sitem-label,.dash-side.collapsed .user-email{display:none}.dash-side.collapsed .side-toggle .ico{transform:none}.dash-side.collapsed .side-head,.dash-side.collapsed .sitem,.dash-side.collapsed .side-signout{justify-content:center;gap:0;padding-left:0;padding-right:0}.dash-side.collapsed .sitem,.dash-side.collapsed .side-signout{padding-top:9px;padding-bottom:9px}.dash-side.collapsed .scount{display:none}.dash-side.collapsed .scount.alert{border-radius:50%;width:9px;min-width:0;height:9px;padding:0;font-size:0;display:block;position:absolute;top:4px;right:7px}.search-input{font-family:var(--hand);color:var(--ink);background:0 0;border:none;outline:none;flex:1;min-width:0;font-size:16px}.search-input::-moz-placeholder{color:var(--ink-faint)}.search-input::placeholder{color:var(--ink-faint)}.search-clear{color:var(--ink-faint);background:0 0;border:none;padding:0 2px;font-size:20px;line-height:1}.section-h{font-family:var(--scrawl);margin:4px 0 14px;font-size:23px}.section-sub{color:var(--ink-faint);font-size:17px}.board-card{transition:transform .12s,box-shadow .12s;position:relative}.board-card:not(.new):hover{transform:translateY(-2px);box-shadow:0 8px 20px #0000001a}.board-thumb{cursor:pointer;position:relative;overflow:hidden}.board-thumb-img{-o-object-fit:cover;object-fit:cover;background:#fff;width:100%;height:100%;display:block}.board-thumb-empty{height:100%;color:var(--ink-faint);place-items:center;display:grid}.thumb-star{border:1.5px solid var(--ink-faint);width:30px;height:30px;color:var(--ink-faint);opacity:0;background:#ffffffd9;border-radius:50%;place-items:center;transition:opacity .12s;display:grid;position:absolute;top:8px;right:8px}.board-card:hover .thumb-star,.thumb-star.on{opacity:1}.thumb-star.on{color:#e0a83b;border-color:#e0a83b}.board-meta-row{justify-content:space-between;align-items:center;gap:8px;margin-top:2px;display:flex}.board-meta .bt{cursor:pointer}.card-rename-input{font-family:var(--hand);color:var(--ink);border:2px solid var(--accent);background:var(--paper-card);border-radius:8px;outline:none;width:100%;padding:3px 6px;font-size:17px}.card-more{color:var(--ink-faint);background:0 0;border:none;border-radius:6px;padding:2px 4px;display:inline-flex}.card-more:hover{background:var(--paper);color:var(--ink)}.sticky-palette{z-index:3;background:var(--paper-card);flex-direction:column;align-items:center;gap:8px;padding:10px 8px;display:flex;position:absolute;top:50%;left:12px;transform:translateY(-50%);box-shadow:0 4px 14px #0000001f}.sticky-palette-head{color:var(--ink-soft);line-height:0}.sticky-swatch{border:1.5px solid #00000026;border-radius:3px 6px 3px 7px;width:26px;height:26px;transition:transform .1s;transform:rotate(-2deg);box-shadow:1px 2px 3px #0000002e}.sticky-swatch:nth-child(odd){transform:rotate(2deg)}.sticky-swatch:hover{transform:rotate(0)scale(1.18)}.comments-layer{z-index:3;pointer-events:none;position:absolute;inset:0;overflow:hidden}.comments-layer.placing{pointer-events:auto;cursor:crosshair}.comment-pin{background:var(--ink-soft);color:#fff;width:30px;height:30px;font-family:var(--hand);pointer-events:auto;cursor:pointer;border:2px solid #fff;border-radius:50% 50% 50% 4px;place-items:center;margin:-30px 0 0 -2px;font-size:15px;display:grid;position:absolute;box-shadow:0 2px 6px #00000040}.comment-pin.resolved{opacity:.75;background:#cfcac0}.comment-pin.open{outline:2px solid var(--accent)}.comment-thread{z-index:5;background:var(--paper-card);pointer-events:auto;width:280px;margin:8px 0 0 14px;padding:10px 12px;font-size:15px;position:absolute;box-shadow:0 10px 26px #0003}.comment-thread-head{align-items:center;gap:6px;margin-bottom:6px;display:flex}.comment-thread-title{font-family:var(--scrawl);flex:1;font-size:19px}.comment-thread-act{color:var(--ink-soft);background:0 0;border:none;border-radius:6px;align-items:center;gap:4px;padding:2px 5px;font-size:14px;display:inline-flex}.comment-thread-act:hover{background:var(--accent-soft);color:var(--ink)}.comment-thread-act.danger:hover{color:#b5402f;background:#f6dcd6}.comment-pin-preview{border:1.5px solid #fff;border-radius:50% 50% 50% 3px;width:16px;height:16px;box-shadow:0 1px 3px #00000040}.comment-msgs{flex-direction:column;gap:8px;max-height:220px;margin-bottom:8px;display:flex;overflow-y:auto}.comment-msg-author{font-weight:600}.comment-msg-time{color:var(--ink-faint);margin-left:6px;font-size:13px}.comment-msg-text{white-space:pre-wrap;overflow-wrap:break-word}.comment-input{resize:none;width:100%;font-family:var(--hand);color:var(--ink);border:1.5px solid var(--ink-faint);background:var(--paper);border-radius:8px;outline:none;padding:6px 9px;font-size:15px}.comment-input:focus{border-color:var(--accent)}.comment-compose-row{justify-content:flex-end;gap:8px;margin-top:6px;display:flex}.comment-btn{padding:3px 12px;font-size:14px}.comment-count{background:var(--accent);color:#fff;text-align:center;border-radius:200px;min-width:20px;padding:0 5px;font-size:13px}.btn-wf.tool-active{border-style:solid;border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.measurement-layer{z-index:4;cursor:crosshair;touch-action:none;background:0 0;position:absolute;inset:0;overflow:hidden}.measurement-layer>svg{pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.measurement-help{z-index:1;color:var(--ink-soft);background:var(--paper-card);padding:5px 11px;position:absolute;top:12px;left:50%;transform:translate(-50%)}@supports (color:color-mix(in lab,red,red)){.measurement-help{background:color-mix(in srgb,var(--paper-card) 92%,transparent)}}.measurement-help{pointer-events:none;font-size:12px}.measurement-anchor{fill:var(--paper-card);stroke:var(--accent);stroke-width:1.5px;opacity:.42}.measurement-guide{stroke:#9c36b5;stroke-width:1px;stroke-dasharray:5 5;opacity:.72}.measurement-ruler line{stroke:var(--accent);stroke-width:2px;stroke-dasharray:7 4}.measurement-ruler circle{fill:var(--paper-card);stroke:var(--accent);stroke-width:2px}.measurement-readout{z-index:1;min-width:-moz-max-content;min-width:max-content;color:var(--ink);background:var(--paper-card);flex-direction:column;gap:1px;padding:5px 8px;display:flex;position:absolute;transform:translate(-50%,calc(-100% - 10px))}@supports (color:color-mix(in lab,red,red)){.measurement-readout{background:color-mix(in srgb,var(--paper-card) 94%,transparent)}}.measurement-readout{text-align:center;pointer-events:none}.measurement-readout strong{color:var(--accent);font-size:14px}.measurement-readout span{color:var(--ink-faint);font-size:10px}.connector-layer{z-index:3;pointer-events:none;position:absolute;inset:0;overflow:hidden}.connector-outline{border:1.5px dashed var(--accent);opacity:.55;border-radius:4px;position:absolute}.connector-outline.target{opacity:1;background:#3b6ea514;border-style:solid;border-width:2.5px}.connector-outline.target.interior{background:#9c36b51a;border-style:dashed;border-color:#9c36b5}.connector-handle{background:var(--accent);pointer-events:auto;opacity:.78;cursor:crosshair;touch-action:none;border:1.5px solid #fff;border-radius:50%;width:10px;height:10px;margin:-5px 0 0 -5px;padding:0;transition:transform .1s;position:absolute;box-shadow:0 1px 4px #0000004d}.connector-handle:hover{opacity:1;transform:scale(1.45)}.connector-target-anchor,.connector-endpoint-target{background:var(--accent);opacity:.58;border:1.5px solid #fff;border-radius:50%;width:8px;height:8px;margin:-4px 0 0 -4px;position:absolute;box-shadow:0 1px 3px #0000004d}.connector-target-anchor.active,.connector-endpoint-target.active{opacity:1;width:12px;height:12px;margin:-6px 0 0 -6px}.connector-preview{pointer-events:none;position:absolute;inset:0;overflow:visible}.connector-preview line{stroke:var(--ink-soft);stroke-width:2px;stroke-dasharray:6 5}.connector-preview line.live{stroke:var(--accent);stroke-dasharray:none}.connector-preview line.pinned{stroke:#9c36b5;stroke-dasharray:7 4}.connector-preview line.free{stroke:var(--ink-soft)}.connector-preview circle{fill:var(--accent)}.board-canvas .excalidraw [id*=-frame-name-]{display:none!important}.asset-label-layer{z-index:3;pointer-events:none;position:absolute;inset:0;overflow:hidden}.asset-label{text-overflow:ellipsis;white-space:nowrap;transform-origin:0 100%;width:-moz-max-content;width:max-content;line-height:1;font-family:var(--hand);text-shadow:-1px -1px 0 var(--paper-card),1px -1px 0 var(--paper-card),-1px 1px 0 var(--paper-card),1px 1px 0 var(--paper-card);display:block;position:absolute;overflow:hidden}.asset-label.image-tag{background:var(--paper-card);border-radius:5px;padding:2px 6px}@supports (color:color-mix(in lab,red,red)){.asset-label.image-tag{background:color-mix(in srgb,var(--paper-card) 88%,transparent)}}.asset-label.image-tag{text-shadow:none}.label-inspector{z-index:7;background:var(--paper-card);font-family:var(--hand);align-items:end;gap:8px;padding:8px 10px;display:flex;position:absolute;top:12px;right:12px;box-shadow:0 5px 16px #00000029}.label-inspector label{color:var(--ink-faint);flex-direction:column;gap:2px;font-size:12px;display:flex}.label-inspector input{border:1.5px solid var(--ink-faint);background:var(--paper);height:30px;color:var(--ink);font:15px var(--hand);border-radius:6px;outline:none}.label-inspector input:focus{border-color:var(--accent)}.label-inspector-text input{width:180px;padding:3px 7px}.label-size-input{width:54px;padding:3px 5px}.label-color-input{cursor:pointer;width:38px;padding:2px}.label-bold{border:1.5px solid var(--ink-faint);background:var(--paper);width:30px;height:30px;color:var(--ink);border-radius:6px;font:700 17px sans-serif}.label-bold.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.label-download{border:1.5px solid var(--accent);background:var(--accent-soft);min-width:126px;height:30px;color:var(--accent);font:600 14px var(--hand);cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:5px;padding:0 9px;display:inline-flex}.label-download:hover:not(:disabled){background:var(--accent);color:#fff}.board-canvas .excalidraw .default-sidebar-trigger{display:none}.board-navigator,.board-navigator-toggle{z-index:6;transition:right .16s;position:absolute;top:12px;right:12px}.board-navigator.shifted,.board-navigator-toggle.shifted{right:354px}.board-navigator-toggle{border:1.5px solid var(--line);background:var(--paper-card);width:38px;height:38px;color:var(--ink);cursor:pointer;place-items:center;padding:0;display:grid;box-shadow:0 3px 10px #0000001f}.board-navigator{border:1.5px solid var(--line);background:var(--paper-card);width:264px;padding:7px}@supports (color:color-mix(in lab,red,red)){.board-navigator{background:color-mix(in srgb,var(--paper-card) 96%,transparent)}}.board-navigator{font-family:var(--hand);box-shadow:0 5px 18px #00000029}.board-navigator header,.layers-assets-panel header{justify-content:space-between;align-items:center;display:flex}.board-navigator header{padding:1px 3px 6px 5px;font-size:14px;font-weight:700}.board-navigator header button,.layers-assets-panel header>button{width:27px;height:27px;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:6px;place-items:center;padding:0;font:22px/1 sans-serif;display:grid}.board-navigator header button:hover,.layers-assets-panel header>button:hover{background:var(--accent-soft);color:var(--accent)}.board-navigator svg{border:1px solid var(--line);cursor:crosshair;touch-action:none;border-radius:5px;width:248px;height:154px;display:block}.navigator-paper{fill:var(--paper)}.navigator-frame{fill:var(--accent-soft)}@supports (color:color-mix(in lab,red,red)){.navigator-frame{fill:color-mix(in srgb,var(--accent-soft) 35%,transparent)}}.navigator-frame{stroke:var(--ink-faint);stroke-width:1px;stroke-dasharray:3 2}.navigator-image{fill:var(--accent)}@supports (color:color-mix(in lab,red,red)){.navigator-image{fill:color-mix(in srgb,var(--accent) 72%,#fff)}}.navigator-image{stroke:var(--paper-card);stroke-width:.8px}.navigator-image.hidden{fill:#0000;stroke:var(--ink-faint);stroke-dasharray:2 2}.navigator-viewport{fill:var(--sticky-yellow)}@supports (color:color-mix(in lab,red,red)){.navigator-viewport{fill:color-mix(in srgb,var(--sticky-yellow) 18%,transparent)}}.navigator-viewport{stroke:#e67700;stroke-width:2px;vector-effect:non-scaling-stroke}.board-navigator p{color:var(--ink-faint);text-align:right;margin:4px 4px 0;font-size:12px}.layers-assets-panel{z-index:8;border:1.5px solid var(--line);background:var(--paper-card);flex-direction:column;width:326px;min-height:260px;display:flex;position:absolute;top:12px;bottom:12px;right:12px;overflow:hidden}@supports (color:color-mix(in lab,red,red)){.layers-assets-panel{background:color-mix(in srgb,var(--paper-card) 97%,transparent)}}.layers-assets-panel{font-family:var(--hand);box-shadow:0 7px 24px #0003}.layers-assets-panel header{border-bottom:1px solid var(--line);padding:12px 12px 9px}.layers-assets-panel header div{flex-direction:column;display:flex}.layers-assets-panel header strong{font-size:18px}.layers-assets-panel header small{color:var(--ink-faint);font-size:12px}.layers-tabs{grid-template-columns:repeat(3,1fr);gap:5px;padding:9px 10px 6px;display:grid}.layers-tabs button{border:1px solid var(--line);background:var(--paper);color:var(--ink-soft);font:14px var(--hand);cursor:pointer;border-radius:7px;justify-content:center;align-items:center;gap:5px;padding:6px 4px;display:flex}.layers-tabs button.active{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:700}.layers-tabs button span{background:currentColor;border-radius:9px;place-items:center;min-width:18px;height:18px;padding:0 3px;display:inline-grid}@supports (color:color-mix(in lab,red,red)){.layers-tabs button span{background:color-mix(in srgb,currentColor 10%,transparent)}}.layers-tabs button span{font-size:11px}.layers-controls{grid-template-columns:1fr auto;gap:6px;padding:5px 10px 10px;display:grid}.layers-controls label{border:1px solid var(--line);background:var(--paper);min-width:0;color:var(--ink-faint);border-radius:7px;align-items:center;gap:5px;padding:0 7px;display:flex}.layers-controls input{width:100%;min-width:0;height:32px;color:var(--ink);font:14px var(--hand);background:0 0;border:0;outline:0;padding:0}.layers-controls select{border:1px solid var(--line);background:var(--paper);max-width:112px;color:var(--ink);font:13px var(--hand);border-radius:7px}.layers-list{flex:1;min-height:0;padding:0 8px 9px;overflow-y:auto}.layers-row{background:var(--paper);border:1px solid #0000;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:4px;margin:3px 0;display:grid}.layers-row:hover{border-color:var(--ink-faint)}.layers-row.hidden{opacity:.58}.layers-focus{min-width:0;color:var(--ink);text-align:left;cursor:pointer;background:0 0;border:0;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:7px;padding:7px 3px 7px 7px;display:grid}.layers-kind{background:var(--accent-soft);width:27px;height:27px;color:var(--accent);border-radius:6px;place-items:center;display:grid}.layers-kind.frame{color:#a05a00;background:#fff3bf}.layers-kind.group{color:#6741d9;background:#e5dbff}.layers-name{flex-direction:column;min-width:0;display:flex}.layers-name b,.layers-name small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.layers-name b{font-size:14px}.layers-name small,.layers-rank{color:var(--ink-faint);font-size:11px}.layers-actions{padding-right:4px;display:flex}.layers-actions button{width:25px;height:27px;color:var(--ink-soft);cursor:pointer;background:0 0;border:0;border-radius:5px;padding:0}.layers-actions button:hover:not(:disabled){background:var(--accent-soft);color:var(--accent)}.layers-actions button:disabled{opacity:.24;cursor:default}.layers-empty{color:var(--ink-faint);text-align:center;margin:28px 12px}@media(max-width:760px){.layers-assets-panel{width:min(326px,100vw - 24px)}.board-navigator.shifted,.board-navigator-toggle.shifted{display:none}.label-inspector{max-width:calc(100vw - 24px);overflow-x:auto}}.label-download:disabled{cursor:wait;opacity:.6}.connector-split-path{fill:none;stroke:var(--accent);stroke-width:5px;stroke-linecap:round;stroke-dasharray:8 6;opacity:.72}.connector-split-plus{stroke:var(--accent);stroke-width:3px;fill:var(--paper-card)!important}.connector-split-plus-mark{stroke:var(--accent)!important;stroke-width:2.5px!important;stroke-dasharray:none!important}.connector-end-menu{z-index:8;background:var(--paper-card);pointer-events:auto;width:214px;font-family:var(--hand);padding:9px;position:absolute;box-shadow:0 8px 24px #0003}.connector-end-title{color:var(--ink-soft);margin:0 3px 7px;font-size:14px}.connector-end-shapes{grid-template-columns:repeat(3,1fr);gap:6px;display:grid}.connector-end-shape,.connector-end-keep{border:1.5px solid var(--ink-faint);background:var(--paper);min-height:38px;color:var(--ink);font:14px var(--hand);border-radius:7px}.connector-end-shape:hover,.connector-end-keep:hover{border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.connector-end-shape span{border:2px solid;width:20px;height:15px;margin:auto;display:block}.connector-end-shape.ellipse span{border-radius:50%}.connector-end-shape.diamond span{width:15px;height:15px;transform:rotate(45deg)scale(.82)}.connector-end-keep{border-style:dashed;width:100%;min-height:30px;margin-top:7px}.shortcut-hint{z-index:9;color:#343a40;white-space:nowrap;pointer-events:none;background:#fffffff0;border:1px solid #ced4da;border-radius:10px;align-items:center;gap:14px;max-width:calc(100% - 32px);padding:8px 12px;font:600 13px/1.25 Inter,system-ui,sans-serif;display:flex;position:absolute;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 5px 18px #00000024}.shortcut-hint-title{color:#212529;border-right:1px solid #dee2e6;padding-right:12px}.shortcut-hint-item,.shortcut-hint-keys{align-items:center;gap:5px;display:inline-flex}.shortcut-hint kbd{color:#212529;text-align:center;background:#f8f9fa;border:1px solid #adb5bd;border-bottom-width:2px;border-radius:5px;min-width:25px;padding:3px 6px;font:700 11px/1.1 Inter,system-ui,sans-serif}@media(max-width:760px){.shortcut-hint{gap:8px;font-size:11px}.shortcut-hint-title{display:none}.dash-side{flex-basis:170px;padding:14px 10px}.dash-side.collapsed{flex-basis:52px;padding-left:6px;padding-right:6px}.side-mark{font-size:21px}.side-head{margin-bottom:14px}.sgrp{margin-bottom:16px}.dash-main{padding:14px 14px 48px}.dash-head{flex-wrap:wrap;gap:10px;margin-bottom:16px}.search{flex:100%;min-width:0;max-width:none}}.connector-crossing-layer{z-index:3;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;overflow:visible}.connector-crossing-options{grid-template-columns:repeat(4,1fr)!important}.connector-crossing-property-host,.shape-dimensions-property-host{display:contents}.shape-dimensions-properties form,.shape-original-size{flex-direction:column;gap:8px;display:flex}.shape-dimensions-inputs{grid-template-columns:1fr 1fr;gap:6px;display:grid}.shape-dimensions-inputs label{min-width:0;color:var(--text-secondary-color);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:4px;font-size:11px;display:grid}.shape-dimensions-inputs input{border:1px solid var(--default-border-color);border-radius:var(--border-radius-md);background:var(--input-bg-color,var(--island-bg-color));width:100%;min-width:0;height:30px;color:var(--text-primary-color);font:inherit;padding:0 5px}.shape-dimensions-ratio{color:var(--text-secondary-color);align-items:center;gap:6px;font-size:11px;display:flex}.shape-dimensions-apply,.shape-original-size button{border:1px solid var(--default-border-color);border-radius:var(--border-radius-md);background:var(--island-bg-color);min-height:30px;color:var(--text-primary-color);font:inherit}.shape-dimensions-apply:hover,.shape-original-size button:hover{background:var(--button-hover-bg)}.shape-original-size{border-top:1px solid var(--default-border-color);margin-top:9px;padding-top:9px}.shape-original-size>div{color:var(--text-secondary-color);justify-content:space-between;gap:8px;font-size:11px;display:flex}.shape-original-size output{color:var(--text-primary-color);font-weight:600}.connector-crossing-options label{min-width:0}.connector-crossing-options svg{width:24px;height:20px}.crossing-icon-under,.crossing-icon-over{fill:none;stroke-linecap:round;stroke-linejoin:round}.crossing-icon-under{stroke:var(--ink-faint);stroke-width:1.5px}.crossing-icon-over{stroke:currentColor;stroke-width:2px}.connector-bend-properties{flex-direction:column;display:flex}.connector-bend-straighten{border:1px solid var(--default-border-color);border-radius:var(--border-radius-md);background:var(--island-bg-color);min-height:32px;color:var(--text-primary-color);font:inherit}.connector-bend-straighten:hover{background:var(--button-hover-bg)}.connector-bend-layer{z-index:4;pointer-events:none;position:absolute;inset:0;overflow:hidden}.connector-bend-add,.connector-bend-point,.connector-bend-remove,.connector-endpoint-control{touch-action:none;pointer-events:auto;padding:0;position:absolute}.connector-bend-add{border:1.5px solid var(--accent);background:var(--paper-card);opacity:.52;cursor:grab;border-radius:50%;width:12px;height:12px;margin:-6px 0 0 -6px;box-shadow:0 1px 4px #00000047}.connector-bend-add:before,.connector-bend-add:after{content:"";background:var(--accent);border-radius:2px;height:1.5px;position:absolute;top:4px;left:2px;right:2px}.connector-bend-add:after{transform:rotate(90deg)}.connector-bend-add:hover{opacity:1;transform:scale(1.2)}.connector-bend-control{pointer-events:none;width:1px;height:1px;position:absolute}.connector-bend-point{background:var(--accent);opacity:.58;cursor:grab;border:1.5px solid #fff;border-radius:50%;width:12px;height:12px;top:-6px;left:-6px;box-shadow:0 1px 4px #00000059}.connector-bend-point:active,.connector-bend-add:active{cursor:grabbing;opacity:1}.connector-bend-point:hover{opacity:1}.connector-bend-remove{color:#fff;opacity:.52;cursor:pointer;background:#c92a2a;border:1.5px solid #fff;border-radius:50%;place-items:center;width:14px;height:14px;font:700 12px/1 system-ui,sans-serif;display:grid;top:-20px;left:7px;box-shadow:0 1px 4px #00000047}.connector-bend-control:hover .connector-bend-remove,.connector-bend-remove:focus-visible{opacity:1;transform:scale(1.1)}.connector-bend-remove span{display:block;transform:translateY(-1px)}.connector-endpoint-control{border:1.5px solid var(--accent);background:var(--paper-card);opacity:.62;cursor:grab;border-radius:3px;width:11px;height:11px;margin:-5.5px 0 0 -5.5px;box-shadow:0 1px 3px #00000047}.connector-endpoint-control:hover,.connector-endpoint-control:active{opacity:1}.connector-endpoint-control:active{cursor:grabbing}.timer-menu{min-width:190px;top:calc(100% + 8px);right:0}.timer-chip{background:var(--paper-card);white-space:nowrap;align-items:center;gap:7px;padding:5px 10px;font-size:16px;display:inline-flex}.timer-chip.done{color:#b5402f;border-color:#b5402f;animation:1s ease-in-out 3 timer-flash}@keyframes timer-flash{50%{background:#f6dcd6}}.timer-time{font-variant-numeric:tabular-nums;text-align:center;min-width:46px}.timer-act{color:var(--ink-faint);background:0 0;border:none;border-radius:5px;padding:3px 4px;font-size:13px;line-height:1}.timer-act:hover{background:var(--accent-soft);color:var(--ink)}.voting-layer{z-index:3;pointer-events:none;position:absolute;inset:0;overflow:hidden}.vote-target{border:2px solid var(--accent);background:#3b6ea514;border-radius:4px;position:absolute}.vote-badge{background:var(--ink-soft);color:#fff;min-width:26px;height:26px;font-family:var(--hand);border:2px solid #fff;border-radius:200px;place-items:center;padding:0 6px;font-size:15px;display:grid;position:absolute;box-shadow:0 2px 6px #00000040}.vote-badge.mine{background:var(--accent)}.vote-badge.top{background:#e0a83b;transform:scale(1.12)}.vote-badge.hot{outline:2px solid var(--accent)}.voting-bar{z-index:6;background:var(--paper-card);white-space:nowrap;align-items:center;gap:10px;padding:8px 16px;font-size:16px;display:flex;position:absolute;bottom:18px;left:50%;transform:translate(-50%);box-shadow:0 8px 22px #0003}.voting-sub{color:var(--ink-soft);font-size:14.5px}.voting-dot{background:#b5402f;border-radius:50%;width:10px;height:10px;animation:1.4s ease-in-out infinite voting-pulse}@keyframes voting-pulse{50%{opacity:.25}}.ava-follow{border:1.5px solid #fff;padding:0}.ava-follow.following{outline:2.5px solid var(--accent);outline-offset:1px}.follow-chip{background:var(--accent-soft);border-color:var(--accent);color:var(--accent);white-space:nowrap;align-items:center;gap:5px;padding:5px 12px;font-size:15px;display:inline-flex}.comments-panel{z-index:6;background:var(--paper-card);flex-direction:column;width:300px;padding:12px;display:flex;position:absolute;top:12px;bottom:12px;right:12px;box-shadow:0 10px 26px #0003}.comments-panel-head{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.comments-panel-title{font-family:var(--scrawl);font-size:22px}.comments-tabs{gap:6px;margin-bottom:8px;display:flex}.comments-tab{color:var(--ink-soft);background:0 0;border:none;border-radius:200px;align-items:center;gap:6px;padding:4px 10px;font-size:15px;display:inline-flex}.comments-tab.active{background:var(--accent-soft);color:var(--accent)}.comments-list{flex-direction:column;flex:1;gap:6px;display:flex;overflow-y:auto}.comments-empty{color:var(--ink-faint);margin:10px 2px;font-size:15px}.comment-item{cursor:pointer;border:1.5px dashed #0000;border-radius:10px;align-items:flex-start;gap:8px;padding:8px;display:flex}.comment-item:hover{background:var(--paper)}.comment-item.active{border-color:var(--accent);background:var(--paper)}.comment-item-pin{color:#fff;border:1.5px solid #fff;border-radius:50% 50% 50% 4px;flex:none;place-items:center;width:24px;height:24px;font-size:13px;display:grid;box-shadow:0 1px 3px #00000040}.comment-item-body{flex:1;min-width:0}.comment-item-author{color:var(--ink-soft);gap:8px;font-size:14px;display:flex}.comment-item-replies{color:var(--ink-faint)}.comment-item-text{-webkit-line-clamp:3;overflow-wrap:break-word;-webkit-box-orient:vertical;font-size:15px;display:-webkit-box;overflow:hidden}.modal-backdrop{z-index:190;background:#2b2b2b59;position:fixed;inset:0}.template-modal{z-index:200;width:min(720px,100vw - 40px);max-height:min(560px,100vh - 60px);padding:18px 22px 22px;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}.template-modal-head{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.template-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:16px;display:grid}.template-card{background:var(--paper-card);text-align:left;padding:12px;transition:transform .12s,box-shadow .12s}.template-card:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px #0000001f}.template-card:disabled{opacity:.6;cursor:default}.template-preview{border:1.5px dashed var(--ink-faint);background:radial-gradient(circle,#d7d4cc 1.2px,#0000 1.3px) 0 0/14px 14px,#fff;border-radius:8px;margin-bottom:8px}.template-preview svg{width:100%;display:block}.template-name{font-size:17px}.template-tagline{color:var(--ink-faint);font-size:13.5px}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
