:root{--bg:#f4f3ef;--grid:#d8d5cc;--ink:#1d1c1a;--soft:#6f6b63;--line:#e2dfd7;--panel:#fff;--accent:#2f5bea;--accent-soft:#2f5bea1f;--shadow:0 1px 2px #14120c14, 0 6px 18px #14120c12;--ui-shadow:0 1px 2px #14120c0f, 0 8px 28px #14120c1f;color:var(--ink);--st:env(safe-area-inset-top,0px);--sr:env(safe-area-inset-right,0px);--sb:env(safe-area-inset-bottom,0px);--sl:env(safe-area-inset-left,0px);font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px}*{box-sizing:border-box}html,body,#root,.app{height:100%;margin:0;overflow:hidden}html{touch-action:pan-x pan-y;-webkit-text-size-adjust:100%}body{background:var(--bg);overscroll-behavior:none;-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none}button{font:inherit;color:inherit}[hidden]{display:none!important}.viewport{touch-action:none;-webkit-user-select:none;user-select:none;background-color:var(--bg);background-image:radial-gradient(circle, var(--grid) 1.1px, transparent 1.3px);position:absolute;inset:0;overflow:hidden}.viewport.grab,.viewport.grab *{cursor:grab!important}.viewport.panning,.viewport.panning *{cursor:grabbing!important}.world{transform-origin:0 0;--inv:1;width:0;height:0;position:absolute;top:0;left:0}.marquee{border:1px solid var(--accent);background:var(--accent-soft);pointer-events:none;border-radius:2px;position:absolute}.guide{pointer-events:none;background:#2f5bea24;border-radius:2px;position:absolute}.guide.line{background:var(--accent)}.item{cursor:default;font-size:15px;line-height:1.42;position:absolute}.item .body{white-space:pre-wrap;overflow-wrap:anywhere}.item .ph{color:#1d1c1a61}.item.sel,.item.editing{outline:calc(2px * var(--inv)) solid var(--accent);outline-offset:calc(2px * var(--inv))}.item.marked{outline:calc(2px * var(--inv)) solid var(--peer);outline-offset:calc(2px * var(--inv))}.item.target,.frame.target{outline:calc(3px * var(--inv)) solid var(--accent);outline-offset:calc(3px * var(--inv))}.item textarea{resize:none;width:100%;font:inherit;letter-spacing:inherit;line-height:inherit;color:inherit;text-align:inherit;-webkit-user-select:text;user-select:text;background:0 0;border:0;outline:0;margin:0;padding:0;display:block;overflow:hidden}.item textarea::placeholder{color:#1d1c1a61}.item .rz{cursor:ew-resize;width:12px;position:absolute;top:0;bottom:0;right:-7px}.item .rz:after{content:"";background:var(--accent);border-radius:2px;width:4px;height:28px;max-height:100%;position:absolute;top:calc(50% - 14px);left:4px}.tag{background:var(--peer);color:#fff;letter-spacing:0;white-space:nowrap;pointer-events:none;transform:scale(var(--inv));transform-origin:0 100%;border-radius:4px;padding:1px 6px;font-size:11px;font-weight:600;line-height:1.5;position:absolute;bottom:calc(100% + 4px);left:-2px}.note{background:var(--note);min-height:120px;box-shadow:var(--shadow);--note:#fff0a3;border-radius:3px;padding:14px 16px 18px}.note.yellow{--note:#fff0a3}.note.orange{--note:#ffd7a3}.note.pink{--note:#ffc7d4}.note.violet{--note:#dfd2ff}.note.blue{--note:#c4dcfb}.note.green{--note:#c6ebc1}.note.paper{--note:#fff}.note textarea{min-height:88px}.c-grey{--tint:#edebe5;--edge:#d8d4ca;--full:#d5d1c7;--on:var(--ink)}.c-yellow{--tint:#fff4bd;--edge:#ead670;--full:#ffd94d;--on:var(--ink)}.c-green{--tint:#d9f0d3;--edge:#a8d69f;--full:#2e9954;--on:#fff}.c-mint{--tint:#e2f6e9;--edge:#b0e0c1;--full:#9be0b4;--on:var(--ink)}.c-red{--tint:#fde2dd;--edge:#f0b1a8;--full:#d8493c;--on:#fff}.c-blue{--tint:#dbe8fd;--edge:#a9c5f4;--full:#2f6fe0;--on:#fff}.c-violet{--tint:#e8defe;--edge:#c4b0f2;--full:#7a54d4;--on:#fff}.c-paper{--tint:#fff;--edge:#d8d4ca;--full:#1d1c1a;--on:#fff}.card{background:var(--tint);box-shadow:inset 0 0 0 1px var(--edge);border-radius:6px;flex-direction:column;justify-content:center;padding:8px 11px;line-height:1.35;display:flex}.card.t-strong{background:var(--full);color:var(--on);box-shadow:none;font-weight:600}.card.t-outline{box-shadow:inset 0 0 0 1.5px var(--full);background:#fff}.card.a-middle{text-align:center}.shape{text-align:center;flex-direction:column;justify-content:center;padding:6px 12px;line-height:1.3;display:flex}.shape .outline{pointer-events:none;position:absolute;top:0;left:0;overflow:visible}.shape .outline path{fill:var(--tint);stroke:var(--edge);stroke-width:1.5px;stroke-linejoin:round}.shape.t-strong{color:var(--on);font-weight:600}.shape.t-strong .outline path{fill:var(--full);stroke:var(--full)}.shape.t-outline .outline path{fill:#fff;stroke:var(--full)}.shape .body,.shape textarea{position:relative}.shape.f-diamond,.shape.f-triangle{padding:6px 22%}.shape.f-ellipse,.shape.f-hexagon,.shape.f-parallelogram{padding:6px 14%}.shape.f-triangle{justify-content:flex-end;padding-bottom:10px}.shape.f-cylinder{padding-top:18px}.shape.f-actor{justify-content:flex-end;padding:6px 8px 8px}.shape.f-cloud{padding:22% 14% 6px}.shape.f-queue,.shape.f-module{padding:6px 20px}.shape.open .outline path{fill:none}.shape.f-derived .outline path{stroke-dasharray:6 4}.shape.f-keyAttr .body{text-decoration:underline}.shape.f-entity{text-align:left;justify-content:flex-start;padding:3px 10px;line-height:24px}.shape.f-stick{justify-content:flex-end}.shape.f-stick .body{white-space:nowrap;padding-top:4px;position:absolute;top:100%;left:50%;transform:translate(-50%)}.shape.titled{text-align:left;justify-content:flex-start;padding:0}.shape.titled .body{flex-direction:column;height:100%;min-height:0;display:flex}.shape.titled .ttl{white-space:nowrap;flex-grow:0;flex-shrink:0;justify-content:center;align-items:center;padding:0 8px;font-weight:650;display:flex;overflow:hidden}.shape.titled .lines{flex:1;min-height:0;padding:6px 10px;overflow:hidden}.shape.titled textarea{padding:6px 10px}.shape.head-left .body{flex-direction:row}.shape.head-left .ttl{writing-mode:vertical-rl;padding:8px 0;transform:rotate(180deg)}.shape.f-list .lines{padding:2px 10px;line-height:28px}.shape.f-heading .ttl{justify-content:flex-start;padding:0;font-size:20px;font-weight:700}.shape.f-heading .lines{padding:4px 0 0;line-height:1.45}.shape.f-heading textarea{padding:0}.shape.f-listItem{text-align:left;padding:6px 10px}.item.shape.titled .outline path.band{fill:currentColor;fill-opacity:.08;stroke:none}.shape.part{--glow:#6ea8ff;color:color-mix(in srgb, var(--glow) 24%, #fff);letter-spacing:0;font:500 13px/1.35 ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace}.part.c-grey{--glow:#c5cad4}.part.c-yellow{--glow:#ffd557}.part.c-green{--glow:#63d483}.part.c-mint{--glow:#6fe0c6}.part.c-red{--glow:#ff8073}.part.c-blue{--glow:#6ea8ff}.part.c-violet{--glow:#b59cff}.part.c-paper{--glow:#f3f1ea}.shape.part .outline path{fill:color-mix(in srgb, var(--glow) 13%, #2a303a);stroke:var(--glow);stroke-width:1.5px}.shape.part.t-strong{color:#1b1f27;font-weight:650}.shape.part.t-strong .outline path{fill:var(--glow);stroke:color-mix(in srgb, var(--glow) 42%, #1b1f27)}.shape.part.t-outline .outline path{fill:#39404de0;stroke-dasharray:6 4}.shape.part textarea::placeholder{color:#fff6}.item.part.sel,.item.part.editing{outline-color:#9db3ff}.item.text{min-height:1.3em;line-height:1.3}.text.s-m{font-size:16px;line-height:1.45}.text.s-l{font-size:22px;font-weight:650}.text.s-xl{letter-spacing:-.01em;font-size:30px;font-weight:700}.text.s-title{letter-spacing:-.02em;font-size:60px;font-weight:750;line-height:1.12}.text.soft{color:var(--soft)}.text.lit{color:#f3f1ea}.text.lit.soft{color:#b4b9c4}.text.lit .ph,.text.lit textarea::placeholder{color:#f3f1ea73}.image img{pointer-events:none;width:100%;height:100%;display:block}.screen{box-shadow:var(--shadow);background:#1d1c1a;border-radius:6px}.screen video{object-fit:fill;border-radius:inherit;pointer-events:none;width:100%;height:100%;display:block}.screen .idle{text-align:center;color:#ffffffb8;place-items:center;height:100%;padding:16px;display:grid}.sname{color:var(--soft);white-space:nowrap;pointer-events:none;transform:scale(var(--inv));transform-origin:0 0;font-size:13px;font-weight:600;line-height:1.4;position:absolute;top:calc(100% + 6px);left:0}.table{background:#fff;border-radius:6px;line-height:1.35;box-shadow:0 0 0 1.5px #bdb8ac}.table .grid{border-radius:6px;display:grid;overflow:hidden}.cell{white-space:pre-wrap;overflow-wrap:anywhere;background:var(--tint,#fff);flex-direction:column;justify-content:center;min-width:0;padding:8px 11px;display:flex;position:relative;box-shadow:inset -1px -1px #cdc8bc}.cell.th{text-align:center;background:#dcd8ce;font-weight:650}.table.editing .cell{cursor:cell}.cell.open{box-shadow:inset 0 0 0 2px var(--accent);cursor:text}.cell.marked{box-shadow:inset 0 0 0 2px var(--peer)}.cell .tag{transform-origin:100% 0;inset:2px 2px auto auto}.colrz{cursor:col-resize;width:12px;margin-left:-6px;position:absolute;top:0;bottom:0}.colrz:after{content:"";background:var(--accent);opacity:0;width:2px;transition:opacity .1s;position:absolute;top:0;bottom:0;left:5px}.colrz:hover:after,.viewport.dragging .colrz:after{opacity:1}.frame{background:#ffffff8c;border:1.5px solid #cfcbc1;border-radius:10px;position:absolute}.frame.sel{border-color:var(--accent);box-shadow:0 0 0 calc(1px * var(--inv)) var(--accent)}.frame.diagram{background-color:#39404d;background-image:linear-gradient(#ffffff1a 1px,#0000 1px),linear-gradient(90deg,#ffffff1a 1px,#0000 1px),linear-gradient(#ffffff0b 1px,#0000 1px),linear-gradient(90deg,#ffffff0b 1px,#0000 1px);background-size:100px 100px,100px 100px,20px 20px,20px 20px;background-origin:border-box;border-color:#262b34}.frame.diagram.sel{border-color:var(--accent)}.rail{scrollbar-width:thin;scrollbar-color:#ffffff47 transparent;scrollbar-gutter:stable;background:#2c323d;border-right:1.5px solid #ffffff29;border-radius:8.5px 0 0 8.5px;flex-direction:column;width:278.5px;padding:4px 3px;display:flex;position:absolute;top:0;bottom:0;left:0;overflow:hidden auto}.rail::-webkit-scrollbar{width:6px}.rail::-webkit-scrollbar-thumb{background:#ffffff47;border-radius:3px}.rail::-webkit-scrollbar-thumb:hover{background:#ffffff73}.rail::-webkit-scrollbar-track{background:0 0}.rail.shut{background:0 0;border-right-color:#0000;width:20px;padding:4px 1px}.rail button{color:#a9b1bf;cursor:pointer;background:0 0;border:0;border-radius:5px;flex:none;padding:0;font:500 8.5px/1.2 ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace}.rail button:hover{color:#fff;background:#ffffff17}.rail .rtab{letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;align-items:center;height:30px;padding:0 4px 0 6px;font-size:10.5px;font-weight:600;display:flex}.rail.shut .rtab{justify-content:center;padding:0}.rail .parts{margin-top:2px}.rail .formlist .fhead{color:#a9b1bf;letter-spacing:.06em;text-transform:uppercase;gap:4px;height:30px;padding:0 4px;font:600 11px/1 ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace}.rail .formlist .fhead:hover{color:#fff}.rail .formlist .fgrid{grid-template-columns:repeat(3,1fr);gap:2px;padding-bottom:6px}.rail .parts .fgrid button{cursor:grab;touch-action:none;place-items:center;height:62px;display:grid}.rail .ficon path,.carried path{fill:#6ea8ff21;stroke:#6ea8ff;stroke-width:1.6px;stroke-linejoin:round}.rail .ficon.open path{fill:none}.rail .ficon text{fill:#6ea8ff;font-size:15px}.carried{z-index:50;pointer-events:none;position:fixed;overflow:visible}.ghost{border:calc(1.5px * var(--inv)) dashed var(--accent);pointer-events:none;background:#fff0a399;border-radius:3px;position:absolute}.viewport.copying,.viewport.copying *{cursor:copy!important}.fx{pointer-events:none;width:0;height:0;position:absolute;top:0;left:0}.fx>*{pointer-events:none;position:absolute}.fx-ripple{box-sizing:border-box;border-style:solid}.fx-cross{background:linear-gradient(#e3ebff,#e3ebff) 50%/100% 1.5px no-repeat,linear-gradient(#e3ebff,#e3ebff) 50%/1.5px 100% no-repeat}.fx-glow{box-shadow:0 0 0 calc(2px * var(--inv)) #2f5bea99, 0 0 calc(26px * var(--inv)) calc(3px * var(--inv)) #2f5bea61}.fx-glow.ring{box-shadow:0 0 0 calc(2.5px * var(--inv)) #2f5beab3, 0 0 calc(14px * var(--inv)) calc(1px * var(--inv)) #2f5bea59}.fx-streak{transform-origin:50% 100%;border-radius:99px}.fx-dot{border-radius:50%}.item[data-fx=held]{transition:transform .12s ease-out,box-shadow .12s ease-out;transform:scale(1.025)}.item[data-fx=settle]{transition:transform .22s cubic-bezier(.3,1.9,.5,1),box-shadow .2s ease-out}.note[data-fx=held],.image[data-fx=held],.screen[data-fx=held]{box-shadow:0 2px 4px #14120c1a,0 16px 32px #14120c2b}.card[data-fx=held],.table[data-fx=held]{box-shadow:inset 0 0 0 1px var(--edge,#bdb8ac), 0 14px 28px #14120c26}[data-motion=full] .viewport.boxing .item.sel{animation:.16s ease-out fx-taken}@keyframes fx-taken{40%{transform:scale(1.02)}}[data-motion=full] :is(.toolbar,.selbar,.callbar,.topbar) button{transition:scale 80ms ease-out}[data-motion=full] :is(.toolbar,.selbar,.callbar,.topbar) button:active{scale:.93}:root:not([data-motion=off]) :is(.toast,.pop,.formpick .forms){animation:.14s ease-out fx-rise}:root:not([data-motion=off]) .selbar{animation:.12s ease-out fx-fade}@keyframes fx-rise{0%{opacity:0;translate:0 6px}}@keyframes fx-fade{0%{opacity:0}}.frame.marked{border-color:var(--peer);box-shadow:0 0 0 calc(1px * var(--inv)) var(--peer)}.ftitle{--fits:clamp(0, min(var(--w) / var(--inv) - 80, var(--h) / var(--inv) - 36), 1);max-width:calc(var(--fits) * 100% / var(--inv));opacity:var(--fits);color:var(--soft);white-space:nowrap;cursor:default;transform:scale(var(--inv));transform-origin:0 100%;align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex;position:absolute;bottom:calc(100% + 6px);left:0;overflow:hidden}.frame.sel>.ftitle,.frame.marked>.ftitle{max-width:max(120px, 100% / var(--inv));opacity:1}.ftitle:has(input){opacity:1;max-width:none;overflow:visible}.ftitle>span:first-child{text-overflow:ellipsis;border-radius:5px;min-width:0;padding:2px 6px;overflow:hidden}.frame.sel .ftitle>span:first-child{background:var(--accent);color:#fff}.ftitle .tag{flex:none;position:static;transform:none}.fgrip{background:var(--panel);border:1px solid var(--line);width:32px;height:22px;color:var(--soft);cursor:grab;border-radius:6px;flex:none;place-items:center;transition:border-color .12s,color .12s,background .12s;display:grid;box-shadow:0 1px 2px #1d1c1a14}.fgrip:hover{border-color:var(--accent);color:var(--accent)}.fgrip:active,.viewport.dragging .fgrip{cursor:grabbing}.frame.sel .fgrip{border-color:var(--accent);background:var(--accent);color:#fff}.ftitle:has(input) .fgrip{display:none}.ftitle input{font:inherit;color:var(--ink);border:1.5px solid var(--accent);-webkit-user-select:text;user-select:text;background:#fff;border-radius:5px;outline:0;padding:2px 6px}.frame>.frz{z-index:2}.fveil{z-index:3;-webkit-backdrop-filter:blur(22px)saturate(.7);cursor:default;outline:calc(3px * var(--inv)) solid #1d1c1ab3;outline-offset:calc(1px * var(--inv));background:#f2f0e98c;border-radius:10px;position:absolute}.fveil.through{-webkit-backdrop-filter:none;pointer-events:none;background:0 0;outline-style:dashed}.fveil-say{border:1px solid var(--line);color:var(--soft);white-space:nowrap;transform:translate(-50%, -50%) scale(var(--inv));background:#ffffffd9;border-radius:14px;align-items:center;gap:6px;padding:5px 11px;font-size:13px;font-weight:600;display:flex;position:absolute;top:50%;left:50%}.fveil.through .fveil-say{background:var(--panel);top:100%}.fblur{color:var(--soft);flex:none;place-items:center;display:grid}.frz{border:2px solid var(--accent);cursor:nwse-resize;width:16px;height:16px;transform:scale(var(--inv));background:#fff;border-radius:50%;position:absolute;bottom:-8px;right:-8px}.arrows{pointer-events:none;width:1px;height:1px;position:absolute;top:0;left:0;overflow:visible}.arrows .e{fill:none;stroke:#55514a;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round}.arrows .e.dash{stroke-dasharray:7 6}.arrows .elabel{fill:#3c3934;text-anchor:middle;dominant-baseline:central;paint-order:stroke;stroke:var(--bg);stroke-width:6px;stroke-linejoin:round;pointer-events:none;font-size:13px;font-weight:600}.arrows .elabel.sel{fill:var(--accent)}.arrows .elabel.eend{font-size:12px;font-weight:500}.arrows .msg rect,.arrows .msg path{fill:#fff;stroke:#55514a;stroke-width:1.4px;stroke-linejoin:round}.arrows .msg path{fill:none}.arrows .msg.sel rect,.arrows .msg.sel path{stroke:var(--accent)}.arrows .lit .msg rect{fill:#39404d}.arrows .lit .msg rect,.arrows .lit .msg path{stroke:#ebe8df}.arrows .e.sel,.arrows .e.temp{stroke:var(--accent);stroke-width:2.4px}.arrows .e.temp{stroke-dasharray:6 5}.arrows .ehit{fill:none;stroke:#0000;stroke-width:16px;pointer-events:stroke;cursor:pointer}.arrows marker.ah path{stroke:#55514a}.arrows marker.ah-sel path{stroke:var(--accent)}.arrows .lit .e{stroke:#ebe8df;stroke-width:2px}.arrows .lit .e.sel,.arrows .lit .e.temp{stroke:#a3b8ff;stroke-width:2.6px}.arrows .lit .elabel{fill:#f3f1ea;stroke:#39404d;font:500 12px ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace}.arrows .lit .elabel.sel{fill:#a3b8ff}.arrows marker.ah-lit path{stroke:#ebe8df}.arrows marker.ah-lit-sel path{stroke:#a3b8ff}.port{border:2px solid var(--accent);cursor:crosshair;width:12px;height:12px;transform:scale(var(--inv));background:#fff;border-radius:50%;margin:-6px 0 0 -6px;transition:background .1s;position:absolute}.port:hover{background:var(--accent)}.port.mag{opacity:.85;border-width:1.5px;width:9px;height:9px;margin:-4.5px 0 0 -4.5px}.magnet{border:1.5px solid var(--accent);width:8px;height:8px;transform:scale(var(--inv));pointer-events:none;z-index:4;background:#fff;border-radius:50%;margin:-4px 0 0 -4px;position:absolute}.magnet.on{background:var(--accent);box-shadow:0 0 0 4px #2f5bea40}.viewport.dragging .port,.viewport.dragging .selbar{visibility:hidden}.selbar{background:var(--panel);box-shadow:var(--ui-shadow);border:1px solid var(--line);white-space:nowrap;transform:translate(-50%, -100%) scale(var(--inv)) translateY(-34px);transform-origin:50% 100%;border-radius:10px;align-items:center;gap:2px;padding:5px;display:flex;position:absolute}.selbar button,.toolbar button,.callbar button{cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:6px;height:32px;padding:0 8px;display:inline-flex}.selbar button:hover,.toolbar button:hover,.callbar button:hover{background:#f0eee9}.selbar .swatch{background:var(--note);border:1px solid #00000024;border-radius:50%;width:22px;height:22px;margin:0 3px;padding:0}.selbar .swatch:hover{background:var(--note);transform:scale(1.12)}.selbar .swatch.on{box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--accent)}.swatch.yellow{--note:#fff0a3}.swatch.orange{--note:#ffd7a3}.swatch.pink{--note:#ffc7d4}.swatch.violet{--note:#dfd2ff}.swatch.blue{--note:#c4dcfb}.swatch.green{--note:#c6ebc1}.swatch.paper{--note:#fff}.selbar .swatch[class*=c-]{--note:var(--tint)}.selbar .swatch.two,.selbar .swatch.two:hover{background:linear-gradient(135deg, var(--tint) 50%, var(--full) 50%)}.selbar .swatch.none,.selbar .swatch.none:hover{background:linear-gradient(135deg,#fff 46%,#d93a3a 46% 54%,#fff 54%)}.selbar button.form{padding:0 5px}.selbar button.form path{fill:none;stroke:currentColor;stroke-width:1.4px;stroke-linejoin:round}.formpick{display:flex;position:relative}.formpick>button{gap:3px}.formpick .forms.list{width:260px;max-height:340px;display:block;overflow:auto}.formpick .forms.list .fgrid{grid-template-columns:repeat(8,1fr)}.formpick .forms{background:var(--panel);border:1px solid var(--line);box-shadow:var(--ui-shadow);border-radius:10px;grid-template-columns:repeat(7,auto);gap:2px;padding:5px;display:grid;position:absolute;bottom:calc(100% + 9px);left:50%;transform:translate(-50%)}.selbar input{border:1px solid var(--line);width:140px;height:30px;font:inherit;color:inherit;-webkit-user-select:text;user-select:text;background:#fff;border-radius:7px;outline:0;padding:0 8px}.selbar input:focus{border-color:var(--accent)}.selbar input.endword{width:96px}.selbar button.word{color:var(--soft);font-weight:500}.selbar button.on:not(.swatch),.toolbar button.on,.callbar button.on{background:var(--accent-soft);color:var(--accent)}.selbar button.stop{color:#d93a3a}.selbar button.stop:hover{background:#fdeeee}.sep{background:var(--line);width:1px;height:20px;margin:0 5px}.cursor{transform-origin:0 0;pointer-events:none;z-index:5;transition:transform 90ms linear;position:absolute;top:0;left:0}.cursor svg{filter:drop-shadow(0 1px 1px #00000040);display:block}.cursor .who{color:#fff;white-space:nowrap;border-radius:6px;padding:2px 7px;font-size:12px;font-weight:600;position:absolute;top:18px;left:14px}.cmark{width:0;height:0;transform:scale(var(--inv));transform-origin:0 0;z-index:3;position:absolute}.cmark.open{z-index:4}.cmark>button{background:var(--ink);color:#fff;font-variant-numeric:tabular-nums;cursor:pointer;min-width:27px;height:27px;box-shadow:var(--shadow);border:2px solid #fff;border-radius:14px 14px 14px 3px;place-items:center;padding:0 7px;font-size:12px;font-weight:700;display:grid;position:absolute;top:-19px;left:-11px}.cmark>button:hover{transform:scale(1.08)}.cmark.open>button{background:var(--accent)}.cmark.done>button{color:var(--soft);border-color:var(--line);background:#fff}.cmark.unread>button:after,.said>button.unread:after{content:"";background:#e5484d;border:2px solid #fff;border-radius:50%;width:10px;height:10px;position:absolute;top:-4px;right:-4px}.thread{left:26px;top:calc(-19px - var(--up,0px));background:var(--panel);border:1px solid var(--line);width:320px;box-shadow:var(--ui-shadow);cursor:default;-webkit-user-select:text;user-select:text;border-radius:12px;flex-direction:column;display:flex;position:absolute}.thread.left{left:auto;right:22px}.thread header{align-items:center;gap:2px;padding:5px 5px 5px 12px;font-weight:600;display:flex}.thread header span{flex:1}.thread header button,.thread .cdel,.said>button{cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:5px;height:30px;padding:0 7px;font-weight:500;display:inline-flex}.thread header button:hover,.thread .cdel:hover,.said>button:hover,.said>button.on{background:#f0eee9}.thread .list{border-top:1px solid var(--line);overscroll-behavior:contain;max-height:300px;padding:2px 0 6px;overflow:auto}.thread .c{gap:9px;padding:7px 8px 5px 12px;display:flex}.thread .who{color:#fff;border-radius:50%;flex:none;place-items:center;width:24px;height:24px;margin-top:1px;font-size:10px;font-weight:700;display:grid}.thread .body{flex:1;min-width:0}.thread .c b{font-weight:600}.thread .c time{color:var(--soft);margin-left:7px;font-size:12px}.thread .c p{white-space:pre-wrap;overflow-wrap:anywhere;margin:2px 0 0;line-height:1.4}.thread .c.done p,.thread .c.done b{color:var(--soft)}.thread .cdel{float:right;height:24px;color:var(--soft);opacity:0;padding:0 5px}.thread .c:hover .cdel,.thread .cdel:focus-visible{opacity:1}.thread form{border-top:1px solid var(--line);align-items:flex-end;gap:6px;padding:8px;display:flex}.thread textarea{border:1px solid var(--line);min-height:34px;max-height:130px;font:inherit;color:inherit;resize:none;field-sizing:content;background:#fff;border-radius:8px;outline:0;flex:1;padding:7px 10px;line-height:1.35}.thread textarea:focus{border-color:var(--accent)}.thread form .primary{height:34px}.said{display:inline-flex;position:relative}.said>button{font-variant-numeric:tabular-nums;height:32px;font-weight:600;position:relative}.said>button.unread:after{top:2px;left:17px;right:auto}.clist{background:var(--panel);border:1px solid var(--line);width:340px;max-height:min(520px,100vh - 150px);box-shadow:var(--ui-shadow);border-radius:14px;padding:6px;position:absolute;top:calc(100% + 14px);right:-8px;overflow:auto}.clist .row{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:8px;width:100%;padding:8px 10px;display:block}.clist .row:hover{background:#f0eee9}.clist .what{align-items:center;gap:8px;font-weight:600;display:flex}.clist .what span{text-overflow:ellipsis;white-space:nowrap;flex:1;overflow:hidden}.clist .what i{background:var(--ink);color:#fff;border-radius:10px;flex:none;place-items:center;min-width:20px;height:20px;padding:0 6px;font-size:11px;font-style:normal;font-weight:700;display:grid}.clist .row.done .what,.clist .row.done .last{color:var(--soft);font-weight:500}.clist .row.done .what i{color:var(--soft);background:#eceae4}.clist .row.unread .what i{background:#e5484d}.clist .last{text-overflow:ellipsis;white-space:nowrap;color:var(--soft);margin-top:2px;font-size:12.5px;display:block;overflow:hidden}.clist .last b{font-weight:600}.clist p{color:var(--soft);margin:0;padding:10px;line-height:1.4}.clist label{border-top:1px solid var(--line);color:var(--soft);cursor:pointer;align-items:center;gap:7px;margin-top:4px;padding:9px 10px 5px;display:flex}.topbar{left:calc(12px + var(--sl));right:calc(12px + var(--sr));top:calc(12px + var(--st));pointer-events:none;justify-content:space-between;align-items:flex-start;display:flex;position:absolute}.topbar>*{pointer-events:auto;background:var(--panel);border:1px solid var(--line);height:44px;box-shadow:var(--ui-shadow);border-radius:12px;align-items:center;gap:10px;padding:0 12px;display:flex}.brand .dot{background:var(--accent);border-radius:3px;width:10px;height:10px}.brand .boardid{color:var(--soft);font-variant-numeric:tabular-nums}.brand .offline{color:#b4540a;font-weight:600}.people{padding-right:6px!important}.avatar{color:#fff;border:2px solid #fff;border-radius:50%;place-items:center;width:28px;height:28px;margin-left:-14px;font-size:11px;font-weight:700;display:grid}.avatar:first-child{margin-left:0}.avatar.me{box-shadow:0 0 0 1.5px var(--ink)}.avatar.count{color:var(--soft);background:#eceae4}button.avatar{cursor:pointer;padding:0;font-family:inherit;transition:transform .12s,box-shadow .12s}button.avatar:hover{z-index:1;transform:translateY(-1px)}.avatar.followed{z-index:1;box-shadow:0 0 0 2.5px var(--accent);position:relative}.gather{border:1px solid var(--line);cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:6px;height:32px;padding:0 10px;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.gather:hover:not(:disabled){background:#f0eee9}.gather:disabled{color:var(--soft);cursor:default}.gather:disabled>*{opacity:.55}.gather.resting:after{content:"";background:var(--accent);transform-origin:0;width:100%;height:3px;animation:linear both gather-rest;animation-duration:inherit;animation-delay:inherit;position:absolute;bottom:0;left:0}@keyframes gather-rest{0%{transform:scaleX(1)}to{transform:scaleX(0)}}button.primary{background:var(--ink);color:#fff;cursor:pointer;border:0;border-radius:8px;align-items:center;gap:6px;height:32px;padding:0 12px;font-weight:600;display:inline-flex}button.primary:hover{background:#000}button.primary:disabled{opacity:.4;cursor:default}.toolbar{left:50%;bottom:calc(16px + var(--sb));background:var(--panel);border:1px solid var(--line);box-shadow:var(--ui-shadow);border-radius:14px;align-items:center;gap:2px;padding:6px;display:flex;position:absolute;transform:translate(-50%)}.toolbar button{height:36px;padding:0 8px;font-weight:500}.pop{background:var(--panel);border:1px solid var(--line);box-shadow:var(--ui-shadow);border-radius:14px;padding:8px;position:absolute;bottom:calc(100% + 12px);left:50%;transform:translate(-50%)}.pop.forms{width:min(316px,100vw - 32px);max-height:min(460px,100vh - 150px);padding:6px 8px;overflow:auto}.pop.effects{gap:8px;width:236px;padding:12px;display:grid}.pop.effects>div{justify-content:space-between;align-items:center;font-weight:600;display:flex}.pop.effects .seg{background:#f0eee9;border-radius:9px;padding:2px;display:flex}.pop.effects .seg button{height:28px;color:var(--soft);border-radius:7px;padding:0 10px;font-weight:500}.pop.effects .seg button.on{color:var(--ink);background:#fff;box-shadow:0 1px 2px #14120c24}.pop.effects p{color:var(--soft);margin:0;font-size:12.5px;line-height:1.35}.pop.forms .fgrid button{justify-content:center;height:36px;padding:0}.formlist .fhead{width:100%;height:26px;color:var(--soft);text-align:left;border-radius:6px;align-items:center;gap:4px;padding:0 4px;font-size:12px;font-weight:600;display:flex}.formlist .fhead:hover{color:var(--ink)}.formlist .fcount{opacity:.6;margin-left:auto;font-weight:500}.formlist .fgrid{grid-template-columns:repeat(7,1fr);gap:2px;padding:0 0 6px;display:grid}.ficon path{fill:var(--accent-soft);stroke:var(--accent);stroke-width:1.3px;stroke-linejoin:round}.ficon.open path{fill:none}.ficon text{fill:var(--accent);font:600 8px system-ui,sans-serif}.ficon text.big{font-size:9px;font-weight:750}.ficon path.band{fill:var(--accent);fill-opacity:.3;stroke:none}.rail .ficon path.band{fill:#6ea8ff;fill-opacity:.35;stroke:none}.rail .ficon text.big{fill:#6ea8ff;font-size:17px}.ficon path.rule,.rail .ficon path.rule{fill:none;stroke-width:1.2px}.pop.templates{grid-template-columns:1fr 1fr;gap:4px;width:min(780px,100vw - 32px);max-height:calc(100vh - 150px);display:grid;overflow:auto}.pop.templates button{text-align:left;white-space:normal;align-items:flex-start;gap:12px;height:auto;padding:8px;font-weight:400}.pop.templates strong{margin:2px 0 3px;font-weight:600;display:block}.pop.templates .about{color:var(--soft);font-size:12.5px;line-height:1.35}.mini{border:1px solid var(--line);background:#fff;border-radius:6px;flex:none;width:132px;height:84px}.mini *{vector-effect:non-scaling-stroke;stroke-width:.6px}.mini .area{fill:var(--bg);stroke:#cfcbc1}.mini .words{fill:#b9b4a8;stroke:none}.mini .grid rect{fill:#fff;stroke:#bdb8ac}.mini .grid path{fill:none;stroke:#cdc8bc}.mini .line{fill:none;stroke:#55514a;stroke-width:.8px}.toolbar .zoom{font-variant-numeric:tabular-nums;min-width:54px;color:var(--soft);justify-content:center}.dock{margin:0 0 var(--sb) var(--sl);touch-action:none;flex-direction:column;align-items:flex-start;gap:10px;display:flex;position:absolute}.dgrip{width:20px;height:32px;color:var(--soft);cursor:grab;touch-action:none;border-radius:6px;flex:none;place-items:center;transition:color .12s,background .12s;display:grid}.dgrip:hover{color:var(--ink);background:#f0eee9}.dgrip:active{color:var(--ink);cursor:grabbing}.heads{flex-wrap:wrap;gap:10px;max-width:60vw;display:flex}.head{width:138px;height:138px;box-shadow:0 0 0 3px #fff, var(--ui-shadow);border-radius:50%;place-items:center;transition:box-shadow .12s;display:grid;position:relative}.head .lens{border-radius:50%;position:absolute;inset:0;overflow:hidden}.head.me .lens{transform:scaleX(-1)}.head video{object-fit:fill;transform-origin:0 0;will-change:transform;max-width:none;transition:transform .9s cubic-bezier(.4,0,.2,1);display:block;position:absolute;top:0;left:0}.head.speaking{box-shadow:0 0 0 3px #fff, 0 0 0 6px #2bb673, var(--ui-shadow)}.head .initials{color:#fff;font-size:38px;font-weight:700}.head .badge{color:#fff;background:#d93a3a;border:2px solid #fff;border-radius:50%;place-items:center;width:26px;height:26px;display:grid;position:absolute;bottom:6px;right:6px}.head .hname{color:#fff;white-space:nowrap;text-overflow:ellipsis;background:#1d1c1ad1;border-radius:6px;max-width:150px;padding:2px 8px;font-size:12px;font-weight:600;position:absolute;bottom:-8px;left:50%;overflow:hidden;transform:translate(-50%)}.seat{border-radius:50%;place-items:center;width:138px;height:138px;transition:background .25s,box-shadow .25s;display:grid;position:relative}.seat>*{opacity:0;transition:opacity .25s}.seat.away{background:#ffffff8c;box-shadow:inset 0 0 0 2px #1d1c1a21}.seat.away>*{opacity:1}.seat .initials{color:#a39e93;font-size:34px;font-weight:700}.seat .hname{background:var(--panel);border:1px solid var(--line);color:var(--soft);white-space:nowrap;text-overflow:ellipsis;border-radius:6px;max-width:150px;padding:2px 8px;font-size:12px;font-weight:600;position:absolute;bottom:-8px;left:50%;overflow:hidden;transform:translate(-50%)}.roam{pointer-events:none;position:absolute;inset:0;overflow:hidden}.roamer{width:var(--d,138px);height:var(--d,138px);will-change:transform;position:absolute;top:0;left:0}.roamer .head{width:100%;height:100%}.roamer.out .head{box-shadow:0 0 0 2px #fff, var(--shadow)}.roamer.out .head.speaking{box-shadow:0 0 0 2px #fff, 0 0 0 4px #2bb673, var(--shadow)}.roamer.out .initials{font-size:16px}.roamer.out .hname{display:none}.roamer.out .badge{width:16px;height:16px;bottom:-2px;right:-2px}.roamer.out .badge svg{width:10px;height:10px}.roamer.edge{pointer-events:auto;cursor:pointer}.roamer.edge .hname{max-width:90px;padding:1px 6px;font-size:10px;display:block;bottom:-12px}.roamer.edge.down .hname{top:-12px;bottom:auto}.roamer .way{width:0;height:0;transform:rotate(var(--way,0deg)) translateX(33px);display:none;position:absolute;top:50%;left:50%}.roamer.edge .way{display:block}.roamer .way:after{content:"";border:6px solid #0000;border-left:9px solid #2bb673;border-right:0;position:absolute;top:-6px;left:0}.callbar{background:var(--panel);border:1px solid var(--line);box-shadow:var(--ui-shadow);border-radius:12px;align-items:center;gap:2px;padding:5px;display:flex;position:relative}.callbar button.off{color:#d93a3a;background:#fdeeee}.callnotes{align-items:center;gap:8px;display:flex}.callnotes .hint{background:var(--panel);border:1px solid var(--line);color:var(--soft);border-radius:999px;padding:3px 10px}.rec{color:#fff;box-shadow:var(--ui-shadow);background:#d93a3a;border-radius:999px;align-items:center;gap:7px;padding:3px 10px 3px 8px;font-size:12px;font-weight:600;display:inline-flex}.rec i{background:#fff;border-radius:50%;width:8px;height:8px;animation:1.6s ease-in-out infinite rec}@keyframes rec{50%{opacity:.25}}.rec.busy{background:var(--panel);color:var(--ink);border:1px solid var(--line)}.rec.busy i{background:var(--soft)}.callbar button:disabled{opacity:.45;cursor:default}.devices{cursor:default;background:var(--panel);border:1px solid var(--line);width:280px;max-height:60vh;box-shadow:var(--ui-shadow);z-index:2;border-radius:12px;padding:6px;position:absolute;bottom:calc(100% + 8px);left:0;overflow:auto}.devices h4{letter-spacing:.04em;text-transform:uppercase;color:var(--soft);margin:8px 8px 2px;font-size:11px;font-weight:600}.devices p{color:var(--soft);margin:2px 8px 6px}.devices button{text-align:left;white-space:normal;width:100%;height:auto;padding:6px 8px;line-height:1.3;display:block}.devices label{border-top:1px solid var(--line);cursor:pointer;align-items:center;gap:7px;margin:4px 0 2px;padding:6px 8px;display:flex}.callbar .hint{max-width:300px;color:var(--soft);padding:4px 8px;line-height:1.35}.callbar code{background:#f0eee9;border-radius:4px;padding:1px 4px;font-size:12px}.toasts{left:50%;bottom:calc(84px + var(--sb));pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;transform:translate(-50%)}.toast{color:#fff;box-shadow:var(--ui-shadow);background:#1d1c1aeb;border-radius:10px;padding:8px 14px}.gate{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#f4f3efb8;place-items:center;display:grid;position:absolute;inset:0}.gate form{background:var(--panel);border:1px solid var(--line);width:min(360px,100vw - 32px);box-shadow:var(--ui-shadow);border-radius:16px;flex-direction:column;gap:12px;padding:24px;display:flex}.gate h1{margin:0;font-size:20px}.gate p{color:var(--soft);margin:0;line-height:1.45}.gate input{border:1.5px solid var(--line);height:40px;font:inherit;border-radius:9px;outline:0;padding:0 12px}.gate input:focus{border-color:var(--accent)}.gate button{justify-content:center;height:40px}.rdfn{right:calc(14px + var(--sr));bottom:calc(16px + var(--sb));z-index:1000;pointer-events:none;-webkit-backdrop-filter:blur(6px);background:#f2f4efdb;border-radius:11px;padding:8px 10px;position:fixed}.rdfn>svg{width:120px;height:auto;display:block}@media (width<=1200px){.rdfn{bottom:calc(74px + var(--sb))}}.viewport.grabs,.viewport.grabs .item:not(.sel),.viewport.grabs .frame:not(.sel) .ftitle,.viewport.grabs .ehit{cursor:grab}.trial{width:336px;max-height:calc(100vh - 96px)}.trial p strong{color:var(--ink)}.trial .pick{padding-bottom:6px}.trial .pick>span{padding:2px 10px 4px;font-weight:600;display:block}.trial label{color:var(--ink);margin-top:0;padding:9px 10px}.trial .pick label{border-top:0;padding:5px 10px}.trial .again{color:var(--accent);cursor:pointer;background:0 0;border:0;margin:0 10px 9px 30px;padding:0;font-size:12.5px;display:block}.trial .again:hover{text-decoration:underline}.trial .again.sample{margin:6px 10px 8px}.trial .sampler{border-top:1px solid var(--line);margin-top:4px;padding:10px}.trial .sampler p{color:var(--ink);padding:0 0 8px}.trial .sampler span{align-items:center;gap:10px;display:flex}.trial .sampler span button:not(.primary){color:var(--soft);cursor:pointer;background:0 0;border:0;padding:0}.trial .sampler strong{color:#c2410c;font-variant-numeric:tabular-nums}.around{pointer-events:none;flex-direction:column;align-items:center;gap:8px;display:flex;position:absolute;top:68px;left:50%;transform:translate(-50%)}.around>*{pointer-events:auto}.pill{border:1px solid var(--line);background:var(--panel);height:32px;box-shadow:var(--ui-shadow);color:var(--soft);white-space:nowrap;border-radius:16px;align-items:center;gap:7px;padding:0 12px;font-size:13px;font-weight:600;display:inline-flex}.pill.following{border-color:var(--accent);color:var(--ink)}.pill.go{border-color:var(--accent);background:var(--accent);color:#fff;cursor:pointer}.pill button{cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;width:22px;height:22px;margin-right:-6px;padding:0;display:grid}.pill button:hover{background:#f0eee9}.round{z-index:45;width:0;height:0;position:fixed}.round>svg{filter:drop-shadow(0 6px 18px #1d1c1a38);touch-action:none;-webkit-user-select:none;user-select:none;animation:.13s ease-out both round-in;position:absolute;top:0;left:0;overflow:visible;transform:translate(-50%,-50%)}.round .cmd,.round .hub{cursor:pointer}.round .cmd>path{fill:var(--panel);stroke:var(--line);stroke-width:1px;transition:fill 80ms}.round .cmd svg{fill:none;stroke:var(--ink);pointer-events:none;filter:none;animation:none;position:static;transform:none}.round .cmd text{fill:var(--soft);text-anchor:middle;pointer-events:none;font-size:11px;font-weight:600}.round .cmd.hot>path{fill:var(--accent);stroke:var(--accent)}.round .cmd.hot svg{stroke:#fff}.round .cmd.hot text{fill:#fff}@media (hover:hover){.round .cmd:hover>path{fill:var(--accent-soft)}.round .cmd.hot:hover>path{fill:var(--accent)}}.round .hub circle{fill:var(--panel);stroke:var(--line);stroke-width:1px}.round .hub svg{fill:none;stroke:var(--soft);pointer-events:none;filter:none;animation:none;position:static;transform:none}.round .hub:hover circle{fill:#f0eee9}@keyframes round-in{0%{opacity:0;transform:translate(-50%,-50%)scale(.7)}to{opacity:1;transform:translate(-50%,-50%)scale(1)}}.gest{z-index:40;box-shadow:var(--ui-shadow);pointer-events:none;background:#1d1c1aeb;border-radius:12px;justify-items:center;padding:6px 8px 5px;animation:3.6s both gest-life;display:grid;position:fixed;top:0;left:0}.gest svg{fill:none;stroke:#fffc;stroke-width:1.6px;display:block;overflow:visible}.gest .wheel{fill:#1d1c1a}.gest .lit{fill:#7d9bff;stroke:none}.gest circle{fill:#fff;stroke:none}.gest span{color:#ffffffd9;letter-spacing:.02em;white-space:nowrap;font-size:11px;font-weight:600}.gest.move .mouse,.gest.move circle{animation:1.7s ease-in-out .1s 2 gest-slide}.gest.zoom .wheel{animation:1.1s ease-in-out .1s 3 gest-turn}.gest.zoom .a{animation:1.1s ease-in-out .1s 3 gest-a}.gest.zoom .b{animation:1.1s ease-in-out .1s 3 gest-b}@keyframes gest-life{0%{opacity:0}5%,93%{opacity:1}to{opacity:0}}@keyframes gest-slide{0%,to{transform:none}22%{transform:translate(6px,-3px)}50%{transform:translate(-6px,-1px)}76%{transform:translate(2px,4px)}}@keyframes gest-turn{0%,to{transform:none}30%{transform:translateY(-2px)}70%{transform:translateY(3px)}}@keyframes gest-a{0%,to{transform:none}50%{transform:translate(-8px,5px)}}@keyframes gest-b{0%,to{transform:none}50%{transform:translate(8px,-5px)}}.bar{background:#14120c12;border-radius:5px;position:absolute}.bar.across{height:10px;bottom:3px;left:12px;right:26px}.bar.down{width:10px;top:68px;bottom:26px;right:2px}.bar i{background:#14120c52;border-radius:5px;position:absolute}.bar.across i{min-width:32px;top:0;bottom:0}.bar.down i{min-height:32px;left:0;right:0}.bar i:hover,.bar i:active{background:#14120c85}.sr{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.viewport{outline:0}.viewport:focus-visible:after{content:"";border:2px solid var(--accent);pointer-events:none;z-index:20;border-radius:8px;position:absolute;inset:3px}:is(button,a,summary,input[type=checkbox],input[type=radio]):focus-visible{outline:2px solid var(--accent);outline-offset:2px}kbd{color:var(--soft);white-space:nowrap;font:500 11.5px ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}.body strong,.cell strong{font-weight:700}.body code,.cell code{background:#1d1c1a14;border-radius:4px;padding:0 .25em;font:.9em ui-monospace,SF Mono,SFMono-Regular,Menlo,Consolas,monospace}.body a,.cell a{color:var(--accent);text-underline-offset:2px;cursor:pointer;overflow-wrap:anywhere;text-decoration:underline}.lit .body a,.part .body a,.t-strong .body a{color:inherit}.body .li{text-align:left;gap:.45em;display:flex}.body .li .dot{text-align:right;opacity:.7;font-variant-numeric:tabular-nums;flex:none;min-width:.9em}.body .li>span:last-child{flex:1;min-width:0}.rot{border:1.5px solid var(--accent);width:20px;height:20px;color:var(--accent);cursor:grab;transform:translate(-100%, -100%) scale(var(--inv));transform-origin:100% 100%;background:#fff;border-radius:50%;place-items:center;display:grid;position:absolute;top:-9px;left:-9px}.rot:hover{background:var(--accent);color:#fff}.world:has(>.many) .rot{display:none}.viewport.dragging .rot{cursor:grabbing}.lockmark{background:var(--ink);color:#fff;width:20px;height:20px;transform:translate(50%, -50%) scale(var(--inv));pointer-events:none;border-radius:50%;place-items:center;display:grid;position:absolute;top:-9px;right:-9px}.item.locked.sel,.frame.locked.sel{outline-style:dashed}.fgrip.pinned{cursor:default}.tip{background:var(--accent);width:14px;height:14px;box-shadow:0 0 0 1px var(--accent);cursor:move;transform:scale(var(--inv));z-index:3;border:2px solid #fff;border-radius:50%;margin:-7px 0 0 -7px;position:absolute}.tip.end{border:2px solid var(--accent);width:11px;height:11px;box-shadow:none;background:#fff;margin:-5.5px 0 0 -5.5px}.viewport.dragging .tip.end{visibility:hidden}.viewport.pen,.viewport.pen .item,.viewport.pen .frame,.viewport.pen .ehit,.viewport.pen .ftitle,.viewport.pen .fgrip{cursor:crosshair}.inking{pointer-events:none;width:1px;height:1px;position:absolute;top:0;left:0;overflow:visible}.inking path,.ink .stroke path{fill:none;stroke:var(--k,#1d1c1a);stroke-linecap:round;stroke-linejoin:round}.k-ink{--k:#1d1c1a}.k-red{--k:#d8493c}.k-orange{--k:#e8891c}.k-green{--k:#2e9954}.k-blue{--k:#2f6fe0}.k-violet{--k:#7a54d4}.ink.lit.k-ink{--k:#f3f1ea}.item.ink:not(.text){pointer-events:none}.ink .stroke{width:100%;height:100%;position:absolute;top:0;left:0;overflow:visible}.ink .stroke path{pointer-events:stroke}.ink .stroke .hit{stroke:#0000;stroke-width:18px}.ink .frz,.ink .rot{pointer-events:auto}.selbar .swatch.dot,.pop .swatch.dot,.selbar .swatch.dot:hover{background:var(--k)}.pop .swatch{border:1px solid #00000024;border-radius:50%;width:22px;height:22px;margin:0 3px;padding:0}.pop .swatch.on{box-shadow:0 0 0 2px #fff, 0 0 0 4px var(--accent)}button.weight{justify-content:center;width:34px;padding:0}button.weight i{background:currentColor;border-radius:4px;width:18px;display:block}.pop.penbar{white-space:nowrap;align-items:center;gap:2px;padding:6px 8px;display:flex}.pop.penbar button.word{color:var(--accent);font-weight:600}.formpick .forms.aligns{grid-template-columns:repeat(4,auto)}.formpick .forms.aligns button:disabled{opacity:.35;cursor:default}.ctx{z-index:1200;background:var(--panel);border:1px solid var(--line);min-width:232px;max-height:calc(100vh - 16px);box-shadow:var(--ui-shadow);-webkit-user-select:none;user-select:none;border-radius:12px;padding:5px;position:fixed;overflow:auto}.ctx button,.pop.more button{text-align:left;white-space:nowrap;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:center;gap:10px;width:100%;height:32px;padding:0 10px;font-weight:400;display:flex}.ctx button>span,.pop.more button>span{flex:1}.ctx button>svg,.pop.more button>svg{color:var(--soft);flex:none}.ctx button:hover:not(:disabled),.ctx button:focus-visible,.pop.more button:hover{background:#f0eee9;outline:0}.ctx button:disabled{opacity:.4;cursor:default}.ctx button.red,.ctx button.red>svg{color:#d93a3a}.ctx hr,.pop.more hr{background:var(--line);border:0;height:1px;margin:5px 4px}.pop.more{min-width:236px;padding:5px;left:auto;right:0;transform:none}.pop.more button.on>svg{color:var(--accent)}:root:not([data-motion=off]) .ctx{animation:.1s ease-out fx-fade}.search{left:50%;top:calc(64px + var(--st));z-index:30;background:var(--panel);border:1px solid var(--line);width:min(440px,100% - 24px);box-shadow:var(--ui-shadow);border-radius:13px;position:absolute;transform:translate(-50%)}.search .box{color:var(--soft);align-items:center;gap:2px;padding:5px 5px 5px 12px;display:flex}.search input{min-width:0;height:32px;font:inherit;color:var(--ink);background:0 0;border:0;outline:0;flex:1;padding:0 8px}.search .n{font-variant-numeric:tabular-nums;white-space:nowrap;flex:none;padding:0 6px;font-size:12.5px}.search .box button{cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;width:30px;height:30px;padding:0;display:grid}.search .box button:hover:not(:disabled){background:#f0eee9}.search .box button:disabled{opacity:.35;cursor:default}.search .hits{border-top:1px solid var(--line);max-height:min(320px,40vh);padding:4px;overflow:auto}.search .hits button{text-align:left;cursor:pointer;background:0 0;border:0;border-radius:7px;align-items:baseline;gap:10px;width:100%;padding:6px 8px;display:flex}.search .hits button:hover,.search .hits button.on{background:#f0eee9}.search .hits i{width:64px;color:var(--soft);flex:none;font-size:12px;font-style:normal}.search .hits span{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.search mark{color:inherit;background:#ffe27a;border-radius:3px;padding:0 1px}.search .hits p{color:var(--soft);margin:0;padding:6px 8px;font-size:12.5px}.minimap{right:calc(14px + var(--sr));bottom:calc(72px + var(--sb));border:1px solid var(--line);box-shadow:var(--ui-shadow);background:#ffffffeb;border-radius:11px;padding:3px;position:absolute}.minimap canvas{background:var(--bg);cursor:crosshair;touch-action:none;border-radius:8px;display:block}@media (width<=1200px){.minimap{bottom:calc(130px + var(--sb))}}.veil{z-index:1100;background:#1d1c1a47;place-items:center;padding:16px;display:grid;position:fixed;inset:0}.keys{background:var(--panel);border:1px solid var(--line);width:min(880px,100%);max-height:100%;box-shadow:var(--ui-shadow);border-radius:16px;overflow:auto}.keys header{background:var(--panel);border-bottom:1px solid var(--line);align-items:center;gap:9px;padding:14px 14px 12px 20px;font-size:15px;display:flex;position:sticky;top:0}.keys header strong{flex:1}.keys header button,.start .x{width:30px;height:30px;color:var(--soft);cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;padding:0;display:grid}.keys header button:hover,.start .x:hover{background:#f0eee9}.keys .cols{columns:2 320px;column-gap:28px;padding:14px 20px 18px}.keys section{break-inside:avoid;padding-bottom:12px}.keys h2{letter-spacing:.04em;text-transform:uppercase;color:var(--soft);margin:0 0 6px;font-size:12px;font-weight:700}.keys dl{margin:0}.keys dl>div{border-top:1px solid #f0eee9;justify-content:space-between;align-items:baseline;gap:14px;padding:4px 0;display:flex}.keys dt{flex:none;gap:4px;display:flex}.keys dd{text-align:right;color:var(--soft);margin:0}.keys kbd{border:1px solid var(--line);color:var(--ink);background:#f0eee9;border-radius:5px;padding:2px 6px}.start{border:1px solid var(--line);width:min(420px,100% - 32px);box-shadow:var(--ui-shadow);pointer-events:none;background:#fffffff0;border-radius:16px;padding:22px 24px 18px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.start button{pointer-events:auto}.start .x{position:absolute;top:8px;right:8px}.start h2{margin:0 0 6px;font-size:18px}.start p{margin:0 0 6px;line-height:1.45}.start p.how{color:var(--soft);font-size:13.5px}.start .go{gap:8px;margin:14px 0 12px;display:flex}.start .go button:not(.primary),.start .from button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;align-items:center;gap:6px;height:32px;padding:0 12px;font-weight:500;display:inline-flex}.start .go button:not(.primary):hover,.start .from button:hover{background:#f0eee9}.start .from{border-top:1px solid var(--line);color:var(--soft);flex-wrap:wrap;align-items:center;gap:6px;padding-top:12px;font-size:13px;display:flex}.start .from button{height:28px;color:var(--ink);padding:0 10px;font-size:13px}.said>button.live{color:var(--accent)}.sess{width:348px;padding:8px}.sess h3{align-items:center;gap:7px;margin:0;padding:8px 8px 2px;font-size:13.5px;display:flex}.sess h3:not(:first-child){border-top:1px solid var(--line);margin-top:8px;padding-top:12px}.sess p{padding:4px 8px 8px}.sess p strong{color:var(--ink)}.sess .line{flex-wrap:wrap;align-items:center;gap:8px;padding:2px 8px 8px;display:flex}.sess .line>span:first-child{min-width:0;color:var(--soft);flex:1}.sess .line button:not(.primary){border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-width:34px;height:32px;padding:0 11px;font-weight:500;display:inline-flex}.sess .line button:not(.primary):hover:not(:disabled){background:#f0eee9}.sess .line button:disabled{opacity:.4;cursor:default}.sess .step{align-items:center;gap:2px;display:inline-flex}.sess .step button:not(.primary){width:28px;min-width:28px;height:28px;padding:0}.sess .step b{text-align:center;font-variant-numeric:tabular-nums;min-width:26px}.sess .mins>span:first-child{flex:1}.pill.votes{color:var(--ink)}.pill.votes .dots{gap:3px;display:inline-flex}.pill.votes .dots i{border:1.5px solid var(--accent);border-radius:50%;width:9px;height:9px}.pill.votes .dots i.have{background:var(--accent)}.pill.votes.shown{border-color:var(--accent)}.pill.votes .collect{background:var(--accent);color:#fff;width:auto;height:24px;font:inherit;border-radius:12px;gap:5px;margin:0 -8px 0 4px;padding:0 10px;font-size:12px;display:inline-flex}.pill.votes .collect:hover{background:var(--accent);filter:brightness(1.1)}.dotsbadge{background:var(--accent);color:#fff;min-width:34px;height:34px;box-shadow:var(--shadow);font-variant-numeric:tabular-nums;pointer-events:none;z-index:2;border:2px solid #fff;border-radius:17px;place-items:center;padding:0 8px;font-size:16px;font-weight:700;display:grid;position:absolute;top:0;right:0;transform:translate(40%,-40%)}.pill.timer{color:var(--ink);font-variant-numeric:tabular-nums;gap:6px;padding:0 8px 0 12px}.pill.timer b{min-width:42px;font-size:15px}.pill.timer button{width:24px;height:24px;color:var(--soft);margin:0;font:600 11.5px inherit}.pill.timer.paused b{color:var(--soft)}.pill.timer.over{color:#fff;background:#d93a3a;border-color:#d93a3a}.pill.timer.over button{color:#fff}.pill.timer.over button:hover{background:#fff3}:root:not([data-motion=off]) .pill.timer.over{animation:1s ease-in-out 5 timer-over}@keyframes timer-over{50%{scale:1.07}}.vmark{background:var(--panel);border:1px solid var(--line);height:24px;box-shadow:var(--shadow);transform:translate(-100%, -50%) scale(max(1, calc(var(--inv) * .7)));transform-origin:100%;z-index:3;border-radius:12px;align-items:center;gap:1px;padding:1px;font-size:12px;display:flex;position:absolute}.vmark button{width:20px;height:20px;color:var(--soft);cursor:pointer;background:0 0;border:0;border-radius:50%;place-items:center;padding:0;display:grid}.vmark button:hover:not(:disabled){background:var(--accent);color:#fff}.vmark button:disabled{opacity:.3;cursor:default}.vmark b{text-align:center;font-variant-numeric:tabular-nums;min-width:16px;padding:0 2px}.vmark.mine{border-color:var(--accent);background:var(--accent);color:#fff}.vmark.mine button{color:#fff}.vmark.mine button:hover:not(:disabled){background:#ffffff40}.vmark.count{background:var(--ink);color:#fff;pointer-events:none;border:2px solid #fff;justify-content:center;min-width:26px;padding:0 6px}.vmark.count.top{background:var(--accent);border-radius:14px;min-width:30px;height:28px;font-size:14px}@media print{*{-webkit-print-color-adjust:exact;print-color-adjust:exact}.topbar,.toolbar,.dock,.toasts,.around,.rdfn,.selbar,.port,.tip,.rz,.frz,.rot,.lockmark,.cmark,.cursor,.ctx,.minimap,.search,.veil,.start,.round,.bar,.gest,.fgrip,.vmark[data-ui],.marquee,.guide,.roam{display:none!important}.viewport{background-image:none}}@media (pointer:coarse){.port:before,.frz:before{content:"";border-radius:50%;position:absolute;inset:-11px}.port{translate:calc(var(--ox,0) * (28px * var(--inv) - 14px)) calc(var(--oy,0) * (28px * var(--inv) - 14px))}.frz:before{border-radius:12px;inset:-5px -17px -17px -5px}.fgrip{width:38px;height:26px;position:relative}.fgrip:before{content:"";position:absolute;inset:-9px}.dgrip{width:28px}.item .rz{width:32px;right:-17px}.item .rz:after{left:14px}.colrz{width:32px;margin-left:-16px}.colrz:after{left:15px}.cmark>button:before{content:"";position:absolute;inset:-9px}.vmark{border-radius:17px;height:34px}.vmark button{width:30px;height:30px}.ctx button,.pop.more button{height:42px}.ctx kbd,.pop.more kbd{display:none}.tip:before{content:"";border-radius:50%;position:absolute;inset:-13px}.selbar button,.toolbar button,.callbar button{justify-content:center;min-width:40px;height:40px}.selbar .swatch{width:28px;min-width:0;height:28px;margin:0 4px}.devices button{height:auto;min-height:40px}.pop.templates button{justify-content:flex-start}.thread header button,.said>button{justify-content:center;min-width:38px;height:38px}.thread .cdel{opacity:1;min-width:30px;height:30px}}@media (width<=900px){.toolbar .lbl{display:none}.toolbar button{padding:0 9px}}.selbar.docked{left:0;right:0;top:calc(64px + var(--st));width:fit-content;max-width:calc(100% - 16px - var(--sl) - var(--sr));touch-action:pan-x;scrollbar-width:none;margin:0 auto;position:fixed;overflow-x:auto;transform:none}.selbar.docked::-webkit-scrollbar{display:none}.selbar.docked>*{flex:none}.selbar.drop{left:calc(8px + var(--sl));right:calc(8px + var(--sr));z-index:30;white-space:normal;flex-wrap:wrap;justify-content:center;gap:6px;max-height:55vh;padding:10px;position:fixed;overflow-y:auto;transform:none}.selbar.drop .formlist{width:100%}.selbar.drop .formlist .fgrid{grid-template-columns:repeat(auto-fill,minmax(44px,1fr))}.selbar .dropbtn{gap:2px;padding:0 6px}.selbar .dropbtn .swatch{pointer-events:none;margin:0;display:block}.thread.sheet{left:calc(8px + var(--sl));right:calc(8px + var(--sr));top:auto;bottom:calc(8px + max(var(--kb,0px), var(--sb)));width:auto;position:fixed}.thread.sheet .list{max-height:min(300px,34vh)}@media (width<=640px),(height<=480px){.topbar{left:calc(8px + var(--sl));right:calc(8px + var(--sr));top:calc(8px + var(--st));gap:8px}.topbar>*{gap:6px;padding:0 8px}.brand{flex:none;width:148px;position:relative}.brand>*{display:none}.brand .offline{background:var(--panel);border:1px solid var(--line);white-space:nowrap;border-radius:999px;padding:4px 10px;display:block;position:absolute;top:calc(100% + 8px);left:0}.app:has(.topbar)~.rdfn{left:calc(8px + var(--sl));top:calc(8px + var(--st));-webkit-backdrop-filter:none;background:0 0;place-items:center;width:148px;height:44px;padding:0;display:grid;bottom:auto;right:auto}.selbar.docked{top:calc(60px + var(--st))}.people .lbl{display:none}.people .primary{padding:0 10px}.clist{left:calc(8px + var(--sl));right:calc(8px + var(--sr));top:calc(60px + var(--st));width:auto;max-height:calc(100% - 140px);position:fixed}.toolbar{left:0;right:0;bottom:calc(8px + var(--sb));width:fit-content;max-width:calc(100% - 16px - var(--sl) - var(--sr));gap:0;margin:0 auto;padding:5px;transform:none}.toolbar>button,.toolbar>span:not(.sep){flex:0 auto;width:44px;min-width:0}.toolbar>span:not(.sep){display:flex}.toolbar>span:not(.sep)>button{flex:1}.toolbar button{justify-content:center;min-width:0;padding:0}.toolbar .zm,.toolbar .dg,.toolbar .fit,.toolbar .sep.pn,.pop.more .mp{display:none}.toolbar .sep{flex:none;margin:0 3px}.pop.templates{grid-template-columns:1fr;max-height:calc(100vh - 190px)}.heads{gap:8px 10px;max-width:calc(100vw - 32px)}.head,.seat{width:64px;height:64px}.head .initials,.seat .initials{font-size:20px}.head .badge{width:20px;height:20px;bottom:-2px;right:-2px}.head .badge svg{width:11px;height:11px}.head .hname,.seat .hname{max-width:76px;padding:1px 6px;font-size:10px;bottom:-9px}.devices{max-width:calc(100vw - 24px)}.callbar .hint{max-width:calc(100vw - 150px)}.toasts{top:calc(112px + var(--st));width:max-content;max-width:calc(100% - 24px);bottom:auto}.search{top:calc(60px + var(--st))}.pop.more{left:calc(8px + var(--sl));right:calc(8px + var(--sr));bottom:calc(64px + var(--sb));z-index:60;position:fixed}.pop.penbar{left:0;right:0;bottom:calc(64px + var(--sb));width:fit-content;max-width:calc(100% - 16px);margin:0 auto;position:fixed;overflow-x:auto;transform:none}.keys .cols{columns:1}.pill.votes{white-space:normal;max-width:calc(100vw - 24px);height:auto;min-height:32px;padding:6px 12px}}.tx{left:calc(12px + var(--sl));right:calc(12px + var(--sr));bottom:calc(72px + var(--sb));z-index:25;background:var(--panel);border:1px solid var(--line);height:min(340px,42vh);box-shadow:var(--ui-shadow);border-radius:13px;flex-direction:column;display:flex;position:absolute;overflow:hidden}.tx>header{border-bottom:1px solid var(--line);align-items:center;gap:8px;padding:7px 8px 7px 14px;font-size:13.5px;display:flex}.tx>header .tx-note{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--soft);flex:1;font-size:12.5px;overflow:hidden}.tx button{width:28px;height:28px;color:var(--soft);cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;padding:0;display:grid}.tx button:hover{background:#f0eee9}.tx .tx-cols{flex:1;grid-template-columns:repeat(4,minmax(0,1fr));min-height:0;display:grid}.tx .tx-col{border-left:1px solid var(--line);flex-direction:column;min-width:0;min-height:0;display:flex}.tx .tx-col:first-child{border-left:0}.tx .tx-head{align-items:center;gap:9px;padding:8px 6px 4px 10px;display:flex}.tx .tx-what{flex-direction:column;flex:1;min-width:0;font-size:13px;display:flex}.tx .tx-state{text-overflow:ellipsis;white-space:nowrap;color:var(--soft);align-items:center;gap:5px;font-size:11.5px;display:flex;overflow:hidden}.tx .tx-state i{background:#c9c5bb;border-radius:50%;flex:none;width:7px;height:7px}.tx .tx-state.ready i{background:#2fa36b}.tx .tx-state.loading i{background:#e0a526}.tx .tx-state.error{color:#c43c3c}.tx .tx-state.error i{background:#d93a3a}.tx .tx-switch{cursor:pointer;flex:none;width:30px;height:18px;position:relative}.tx .tx-switch input{opacity:0;width:0;height:0;position:absolute}.tx .tx-switch span{background:#d6d2c8;border-radius:9px;transition:background .15s;position:absolute;inset:0}.tx .tx-switch span:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .15s;position:absolute;top:2px;left:2px}.tx .tx-switch input:checked+span{background:var(--accent)}.tx .tx-switch input:checked+span:after{transform:translate(12px)}.tx .tx-switch input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.tx .tx-set{color:var(--soft);flex-wrap:wrap;align-items:center;gap:4px 10px;padding:2px 10px 6px;font-size:11.5px;display:flex}.tx .tx-set label{align-items:center;gap:4px;display:inline-flex}.tx .tx-set select,.tx .tx-set input{border:1px solid var(--line);height:22px;font:inherit;color:var(--ink);background:#fff;border-radius:5px;padding:0 4px}.tx .tx-set input{width:64px}.tx .tx-set textarea{resize:vertical;border:1px solid var(--line);width:100%;color:var(--ink);border-radius:5px;padding:3px 5px;font:11px/1.35 ui-monospace,Menlo,monospace}.tx .tx-set textarea.tx-bad{border-color:#d93a3a}.tx .tx-set .tx-apply{border:1px solid var(--line);width:auto;height:22px;color:var(--ink);background:#fff;padding:0 8px;font-size:11.5px}.tx .tx-lines{border-top:1px solid #f0eee9;flex:1;min-height:0;padding:4px 10px 10px;font-size:13px;line-height:1.4;overflow:auto}.tx .tx-lines p{margin:0 0 5px}.tx .tx-lines time{color:var(--soft);font-variant-numeric:tabular-nums;margin-right:6px;font-size:11px}.tx .tx-lines b{margin-right:2px;font-weight:600}.tx .tx-lines p.tx-partial{color:var(--soft);font-style:italic}.tx .tx-lines p.tx-empty{color:var(--soft);font-size:12.5px}@media (width<=900px){.tx .tx-cols{grid-template-columns:repeat(2,minmax(0,1fr));overflow:auto}.tx .tx-col{min-height:220px}}
