.qd-root{touch-action:none;border-radius:inherit;--qd-bar-bg:#ffffffe0;--qd-pop-bg:#fffffff0;--qd-border:#1c1b181f;--qd-bar-shadow:0 4px 16px #1c1b1824;--qd-pop-shadow:0 8px 28px #1c1b1833;--qd-ink:#1c1b18d1;--qd-ink-strong:#1c1b18f0;--qd-ink-soft:#1c1b188c;--qd-ink-faint:#1c1b1866;--qd-hover:#1c1b1812;--qd-hover-strong:#1c1b181a;--qd-active:#1c1b181f;--qd-on-bg:#211d14;--qd-on-ink:#fbf9f4;--qd-divider:#1c1b1824;--qd-menu-div:#1c1b181a;--qd-seg-bg:#1c1b1812;--qd-dot-ring:#1c1b181f;background:#fbf9f4;outline:none;width:100%;height:100%;transition:background .32s;position:relative;overflow:hidden;container-type:inline-size}.qd-root[data-qd-theme=dark]{--qd-bar-bg:#13110db8;--qd-pop-bg:#13110dd9;--qd-border:#ffffff24;--qd-bar-shadow:0 4px 16px #0a080440;--qd-pop-shadow:0 8px 28px #0a080459;--qd-ink:#ffffffd9;--qd-ink-strong:#fffffff2;--qd-ink-soft:#ffffff9e;--qd-ink-faint:#fff6;--qd-hover:#ffffff1a;--qd-hover-strong:#ffffff1f;--qd-active:#ffffff38;--qd-on-bg:#ffffffeb;--qd-on-ink:#211d14;--qd-divider:#ffffff29;--qd-menu-div:#ffffff1a;--qd-seg-bg:#ffffff14;--qd-dot-ring:#ffffff1f;background:#191713}.qd-theme-fade{z-index:20;pointer-events:none;opacity:1;width:100%;height:100%;transition:opacity .32s;position:absolute;inset:0}.qd-canvas,.qd-overlay{width:100%;height:100%;position:absolute;inset:0}.qd-overlay{pointer-events:none}.qd-ui{pointer-events:none;z-index:40;position:absolute;inset:0}.qd-ui.qd-hidden{display:none}.qd-ui button{-webkit-tap-highlight-color:transparent}.qd-dock{transform-origin:50% 100%;background:var(--qd-bar-bg);border:1px solid var(--qd-border);box-shadow:var(--qd-bar-shadow);-webkit-backdrop-filter:blur(10px);pointer-events:auto;border-radius:999px;align-items:center;gap:2px;padding:5px 7px;transition:background .32s,border-color .32s,box-shadow .32s;display:flex;position:absolute;bottom:10px;left:50%;transform:translate(-50%)}.qd-actions{left:var(--qd-actions-left,10px);top:var(--qd-actions-top,50%);transform:translateY(var(--qd-actions-shift,-50%));background:var(--qd-bar-bg);border:1px solid var(--qd-border);box-shadow:var(--qd-bar-shadow);-webkit-backdrop-filter:blur(10px);pointer-events:auto;border-radius:999px;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;transition:background .32s,border-color .32s,box-shadow .32s;display:flex;position:absolute}.qd-actions button svg{width:17px;height:17px;display:block}.qd-actions .qd-div{width:18px;height:1px;margin:3px 0}.qd-actions button:hover{background:var(--qd-hover)}.qd-actions button:disabled{opacity:.32;pointer-events:none}.qd-actions .qd-tool{width:30px;height:30px}.qd-tool,.qd-dock button{width:32px;height:32px;color:var(--qd-ink);cursor:pointer;background:0 0;border:none;border-radius:9px;flex:none;justify-content:center;align-items:center;padding:0;transition:background .14s,color .14s;display:flex}.qd-dock button svg{width:19px;height:19px;display:block}.qd-dock button:hover{background:var(--qd-hover)}.qd-dock button.on{background:var(--qd-on-bg);color:var(--qd-on-ink)}.qd-dock button:disabled{opacity:.32;pointer-events:none}.qd-div{background:var(--qd-divider);flex:none;width:1px;height:20px;margin:0 3px;transition:background .32s}.qd-dock.qd-compact{gap:2px}.qd-geo-btn{position:relative}.qd-geo-btn:after{content:"";opacity:.65;border-bottom:4px solid;border-left:4px solid #0000;width:0;height:0;position:absolute;bottom:3px;right:3px}.qd-style-btn{position:relative}.qd-style-dot{border:2.5px solid var(--qd-on-bg);border-radius:50%;width:16px;height:16px;transition:border-color .32s;box-shadow:0 0 0 1px #0003}.qd-style-btn.on .qd-style-dot{border-color:var(--qd-on-ink)}.qd-popover{background:var(--qd-pop-bg);border:1px solid var(--qd-border);box-shadow:var(--qd-pop-shadow);-webkit-backdrop-filter:blur(12px);pointer-events:auto;box-sizing:border-box;transform-origin:50% 100%;border-radius:13px;max-width:calc(100% - 16px);padding:8px;transition:background .32s,border-color .32s,box-shadow .32s;animation:.16s cubic-bezier(.2,.9,.3,1.15) qd-pop-in;position:absolute;bottom:54px;left:50%}@keyframes qd-pop-in{0%{opacity:0;transform:translateY(7px)scale(.96)}to{opacity:1;transform:translateY(0)scale(1)}}@media (prefers-reduced-motion:reduce){.qd-popover{animation:none}}.qd-popover .qd-tool svg{width:19px;height:19px;display:block}.qd-geo-pop{flex-wrap:wrap;gap:2px;display:flex}.qd-geo-pop .qd-tool{color:var(--qd-ink)}.qd-grid-pop{grid-template-columns:repeat(4,32px);gap:2px;display:grid}.qd-grid-pop .qd-tool{color:var(--qd-ink)}.qd-grid-pop .qd-tool.on{background:var(--qd-on-bg);color:var(--qd-on-ink)}.qd-style-pop{width:196px}.qd-row{justify-content:space-between;align-items:center;display:flex}.qd-row+.qd-row{border-top:1px solid var(--qd-menu-div);margin-top:7px;padding-top:7px}.qd-colors{grid-template-columns:repeat(6,1fr);gap:3px;display:grid}.qd-dot{cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:26px;height:26px;padding:0;transition:background .14s;display:flex}.qd-dot:before{content:"";background:var(--dot);width:15px;height:15px;box-shadow:0 0 0 1px var(--qd-dot-ring);border-radius:50%}.qd-dot:hover{background:var(--qd-hover)}.qd-dot.on{background:var(--qd-active)}.qd-opt{width:40px;height:30px;color:var(--qd-ink);cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;padding:0;transition:background .14s,color .14s;display:flex}.qd-opt svg{width:20px;height:20px}.qd-opt:hover{background:var(--qd-hover)}.qd-opt.on{background:var(--qd-on-bg);color:var(--qd-on-ink)}.qd-font{letter-spacing:.01em;font-size:15px;font-weight:500}.qd-aligns .qd-opt{width:54px}.qd-size-pip{width:var(--pip);height:var(--pip);background:currentColor;border-radius:50%}.qd-menu-pop{flex-direction:column;min-width:232px;padding:6px;display:flex}.qd-menu-item{color:var(--qd-ink-strong);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:10px;padding:7px 10px;font:500 12.5px -apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;transition:background .14s,color .14s;display:flex}.qd-menu-item:hover{background:var(--qd-hover)}.qd-menu-item:disabled,.qd-menu-item.qd-off{opacity:.38;pointer-events:none}.qd-mi-ico{color:var(--qd-ink-soft);flex:0 0 16px;display:flex}.qd-mi-ico svg{width:16px;height:16px}.qd-menu-item:hover .qd-mi-ico{color:inherit}.qd-mi-label{white-space:nowrap;flex:auto}.qd-mi-key{color:var(--qd-ink-faint);letter-spacing:.02em;font-variant-numeric:tabular-nums;flex:none;font-size:11px}.qd-menu-div{background:var(--qd-menu-div);height:1px;margin:5px 4px;display:block}.qd-menu-row{color:var(--qd-ink-strong);align-items:center;gap:10px;padding:4px 10px;font:500 12.5px -apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;display:flex}.qd-menu-row+.qd-menu-row{margin-top:2px}.qd-seg{background:var(--qd-seg-bg);border-radius:9px;gap:2px;padding:2px;transition:background .32s;display:flex}.qd-seg-btn{width:30px;height:26px;color:var(--qd-ink);cursor:pointer;background:0 0;border:none;border-radius:7px;justify-content:center;align-items:center;padding:0;transition:background .12s,color .12s;display:flex}.qd-seg-btn svg{width:16px;height:16px}.qd-seg-btn:hover{background:var(--qd-hover-strong);color:var(--qd-ink-strong)}.qd-seg-btn.on{background:var(--qd-on-bg);color:var(--qd-on-ink)}.qd-mi-value{color:var(--qd-ink-faint);flex:none;font-size:11.5px}.qd-mi-chev,.qd-mi-check{color:var(--qd-ink-faint);flex:0 0 14px;display:flex}.qd-mi-chev svg,.qd-mi-check svg{width:14px;height:14px}.qd-mi-check{color:var(--qd-ink)}.qd-has-sub{position:relative}.qd-has-sub.sub-open{background:var(--qd-hover)}.qd-submenu{background:var(--qd-pop-bg);border:1px solid var(--qd-border);min-width:148px;box-shadow:var(--qd-pop-shadow);-webkit-backdrop-filter:blur(12px);border-radius:13px;flex-direction:column;padding:6px;animation:.13s qd-sub-in;display:none;position:absolute;top:-7px;left:calc(100% + 2px)}.qd-has-sub.sub-open .qd-submenu{display:flex}.qd-submenu.qd-sub-left{left:auto;right:calc(100% + 2px)}@keyframes qd-sub-in{0%{opacity:0;transform:translate(-4px)}to{opacity:1;transform:none}}.qd-submenu.qd-sub-left{animation-name:qd-sub-in-left}@keyframes qd-sub-in-left{0%{opacity:0;transform:translate(4px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.qd-submenu{animation:none}}.qd-popover.qd-ctx{transform-origin:0 0;animation-name:qd-ctx-in;top:0;bottom:auto;left:0}@keyframes qd-ctx-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.qd-drag-ghost{z-index:60;background:var(--qd-pop-bg);border:1px solid var(--qd-border);width:42px;height:42px;box-shadow:var(--qd-pop-shadow);color:var(--qd-ink);pointer-events:none;border-radius:11px;justify-content:center;align-items:center;margin:-21px 0 0 -21px;display:flex;position:absolute}.qd-drag-ghost svg{width:22px;height:22px;display:block}.qd-watermark{z-index:35;color:#1c1b186b;letter-spacing:.01em;-webkit-tap-highlight-color:transparent;border-radius:999px;align-items:center;gap:5px;padding:5px 9px 5px 7px;font:600 11.5px/1 -apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;text-decoration:none;transition:color .32s,background .14s;display:flex;position:absolute;bottom:10px;right:10px}.qd-watermark svg{width:14px;height:14px;display:block}.qd-watermark:hover{color:#1c1b18d9;background:#1c1b180f}.qd-root[data-qd-theme=dark] .qd-watermark{color:#f4f2ea61}.qd-root[data-qd-theme=dark] .qd-watermark:hover{color:#f4f2ead9;background:#f4f2ea14}@container (width<=560px){.qd-watermark{bottom:58px}}.qd-text-edit{z-index:30;outline-offset:3px;resize:none;white-space:pre-wrap;caret-color:currentColor;-webkit-user-select:text;user-select:text;background:0 0;border:none;border-radius:2px;outline:1.5px dashed #6e8cc88c;margin:0;padding:0;position:absolute;overflow:hidden}.qd-help-backdrop{z-index:50;pointer-events:auto;background:#00000047;justify-content:center;align-items:center;padding:16px;animation:.14s qd-help-in;display:flex;position:absolute;inset:0}.qd-help-panel{background:var(--qd-pop-bg);width:min(440px,100%);max-height:82%;color:var(--qd-ink);border:1px solid var(--qd-border);box-shadow:var(--qd-pop-shadow);border-radius:14px;padding:16px 18px 18px;font:500 13px/1.5 ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif;overflow:auto}.qd-help-head{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.qd-help-title{color:var(--qd-ink-strong);font-size:15px;font-weight:600}.qd-help-close{cursor:pointer;border:1px solid var(--qd-border);background:var(--qd-bar-bg);width:26px;height:26px;color:var(--qd-ink);border-radius:7px;justify-content:center;align-items:center;padding:0;display:flex}.qd-help-close:hover{background:var(--qd-hover)}.qd-help-close svg{width:15px;height:15px}.qd-help-group{margin-bottom:14px}.qd-help-group:last-child{margin-bottom:0}.qd-help-glabel{letter-spacing:.04em;text-transform:uppercase;color:var(--qd-ink-faint);margin-bottom:6px;font-size:11px;font-weight:600}.qd-help-row{justify-content:space-between;align-items:center;gap:12px;padding:3px 0;display:flex}.qd-help-name{color:var(--qd-ink)}.qd-help-keys{color:var(--qd-ink-strong);background:var(--qd-bar-bg);border:1px solid var(--qd-border);white-space:nowrap;border-radius:6px;padding:2px 7px;font:600 11px/1 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}@keyframes qd-help-in{0%{opacity:0}to{opacity:1}}:root{--bg:#f6f5f2;--fg:#171614;--muted:#7a776f;--line:#e2dfd8;--card:#fff;--accent:#171614;--accent-fg:#fff;--danger:#c2372f;--shadow:0 1px 2px #0000000f, 0 12px 32px #00000014;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#121211;--fg:#f1efe9;--muted:#97938a;--line:#2a2926;--card:#1b1a18;--accent:#f1efe9;--accent-fg:#121211;--danger:#ff6b61;--shadow:0 1px 2px #0006, 0 12px 32px #00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--fg);overscroll-behavior:none;-webkit-font-smoothing:antialiased;font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif}.Screen{justify-content:center;align-items:center;min-height:100%;padding:24px 16px;display:flex}.Screen--top{align-items:flex-start;padding-top:48px}.Card{background:var(--card);border:1px solid var(--line);width:100%;max-width:380px;box-shadow:var(--shadow);border-radius:16px;padding:28px 24px}.Card--wide{max-width:720px}.Card--quiet{box-shadow:none;text-align:center;background:0 0;border-color:#0000}.Card p{margin:0 0 12px;line-height:1.5}.Wordmark{letter-spacing:-.01em;margin:0 0 16px;font-size:22px;font-weight:600}.Muted{color:var(--muted);font-size:13px}.Error{color:var(--danger);font-size:13px}.Form{flex-direction:column;gap:10px;display:flex}.Form--row{flex-direction:row;margin-bottom:8px}.Form--row .Input{flex:1}.Input{font:inherit;border:1px solid var(--line);background:var(--bg);color:var(--fg);border-radius:10px;outline:none;width:100%;padding:10px 12px;font-size:15px}.Input:focus{border-color:var(--fg)}.Button{font:inherit;border:1px solid var(--accent);background:var(--accent);color:var(--accent-fg);cursor:pointer;text-align:center;border-radius:10px;padding:10px 14px;font-size:15px;font-weight:500;text-decoration:none;display:inline-block}.Button:disabled{opacity:.5;cursor:default}.Button--ghost{color:var(--fg);border-color:var(--line);background:0 0}.Link{font:inherit;color:var(--fg);cursor:pointer;background:0 0;border:none;padding:0;text-decoration:underline}.Link--danger{color:var(--danger)}.AdminHeader{justify-content:space-between;align-items:baseline;gap:16px;display:flex}.AdminNav{gap:16px;font-size:14px;display:flex}.AdminNav a{color:var(--fg)}.Table{border-collapse:collapse;width:100%;margin-top:12px;font-size:14px}.Table th,.Table td{text-align:left;border-bottom:1px solid var(--line);vertical-align:middle;padding:10px 8px}.Table th{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:12px;font-weight:500}.Table-actions{text-align:right}.Tag{border:1px solid var(--line);color:var(--muted);border-radius:999px;margin-left:8px;padding:1px 6px;font-size:11px;display:inline-block}@media (width<=560px){.Table th:nth-child(3),.Table td:nth-child(3){display:none}}.CanvasRoot{--panel:#ffffffeb;--panel-fg:#211d14;--panel-muted:#211d148c;--panel-line:#1c1b181f;--panel-hover:#1c1b1812;--panel-shadow:0 4px 16px #1c1b1824;--panel-shadow-strong:0 8px 28px #1c1b1833;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;position:fixed;inset:0;overflow:hidden}.CanvasRoot[data-theme=dark]{--panel:#13110dd9;--panel-fg:#ffffffe6;--panel-muted:#ffffff8c;--panel-line:#ffffff24;--panel-hover:#ffffff1a;--panel-shadow:0 4px 16px #0a080440;--panel-shadow-strong:0 8px 28px #0a080459;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.Cursors{pointer-events:none;z-index:38;position:absolute;inset:0;overflow:hidden}.Cursor{will-change:transform;transition:transform 60ms linear;position:absolute;top:0;left:0}.Cursor svg{filter:drop-shadow(0 1px 1px #00000040);margin:-2px 0 0 -2px;display:block}.Cursor-name{color:#fff;white-space:nowrap;text-shadow:0 1px 1px #0003;border-radius:6px;padding:2px 6px;font-size:11px;font-weight:600;line-height:1.3;position:absolute;top:16px;left:14px}.Attribution{pointer-events:none;white-space:nowrap;background:var(--panel);color:var(--panel-fg);border:1px solid var(--panel-line);box-shadow:var(--panel-shadow);-webkit-backdrop-filter:blur(10px);z-index:38;border-radius:8px;align-items:center;gap:6px;padding:4px 8px;font-size:12px;line-height:1.2;display:flex;position:absolute;top:0;left:0}.Attribution-dot{border-radius:50%;flex:none;width:8px;height:8px}.Attribution-time,.Attribution-edit{color:var(--panel-muted)}.Attribution-edit{border-left:1px solid var(--panel-line);padding-left:6px}.TopBar{z-index:45;pointer-events:all;align-items:center;gap:6px;padding:4px;display:flex;position:absolute;top:8px;right:8px}.TopBar-status{width:8px;height:8px;box-shadow:0 0 0 2px var(--panel);background:#39b178;border-radius:50%;margin:0 2px}.TopBar-status--connecting{background:#e8b33a}.TopBar-status--offline{background:#ec5e41;animation:1.2s ease-in-out infinite TopBar-pulse}.AvatarButton{--status:#39b178}.AvatarButton.TopBar-status--connecting{--status:#e8b33a}.AvatarButton.TopBar-status--offline{--status:#ec5e41;animation:1.2s ease-in-out infinite TopBar-pulse}.Avatar--me{box-shadow:0 0 0 2px var(--status), var(--panel-shadow)}.AvatarButton:hover .Avatar--me{filter:brightness(1.08)}@keyframes TopBar-pulse{50%{opacity:.35}}.TopBar-people{align-items:center;display:flex}.Avatar{color:#fff;letter-spacing:.02em;border:2px solid var(--panel);width:24px;height:24px;box-shadow:var(--panel-shadow);border-radius:50%;justify-content:center;align-items:center;margin-left:-6px;font-size:10px;font-weight:700;display:inline-flex}.Avatar:first-child,.TopBar-status+.Avatar{margin-left:0}img.Avatar{object-fit:cover;padding:0;display:block}.AvatarButton{cursor:pointer;font:inherit;background:0 0;border:none;border-radius:50%;padding:0;display:block}.Avatar--large{width:56px;height:56px;margin:0;font-size:18px}.Avatar--small{width:22px;height:22px;box-shadow:none;vertical-align:middle;border-width:1px;margin:0 8px 0 0;font-size:9px}.Table-person{white-space:nowrap}.PhotoPick{cursor:pointer;align-items:center;gap:10px;font-size:14px;display:flex}.PhotoPick-preview,.PhotoPick-empty{object-fit:cover;border:1px solid var(--line);background:var(--bg);border-radius:50%;flex:none;width:40px;height:40px}.PhotoPick-empty{background:repeating-linear-gradient(45deg, var(--line) 0 2px, transparent 2px 6px)}.Cursor-photo{object-fit:cover;vertical-align:-3px;border:1px solid #ffffffb3;border-radius:50%;width:14px;height:14px;margin-right:4px}.Attribution-photo{object-fit:cover;border-radius:50%;flex:none;width:16px;height:16px}.Avatar--more{background:var(--panel);color:var(--panel-fg)}.TopBar-button{font:inherit;border:1px solid var(--panel-line);cursor:pointer;background:var(--panel);color:var(--panel-fg);box-shadow:var(--panel-shadow);-webkit-backdrop-filter:blur(10px);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:500;text-decoration:none}.TopBar-button:hover{background:var(--panel-hover)}.TopBar-button:disabled{opacity:.5;cursor:default}.TopBar-button--primary{color:#fbf9f4;background:#211d14;border-color:#0000}.CanvasRoot[data-theme=dark] .TopBar-button--primary{color:#211d14;background:#fbf9f4}.TopBar-button--primary:hover{filter:brightness(1.15)}.TopBar-button--icon{justify-content:center;align-items:center;width:30px;height:30px;padding:0;display:inline-flex}.TopBar-button--icon svg{display:block}.TopBar-button--done{color:#39b178}.TopBar-button--quiet{box-shadow:none;-webkit-backdrop-filter:none;background:0 0;border-color:#0000}.TopBar-menu{position:relative}.TopBar-dropdown{background:var(--panel);border:1px solid var(--panel-line);min-width:140px;box-shadow:var(--panel-shadow-strong);-webkit-backdrop-filter:blur(10px);z-index:1;border-radius:10px;flex-direction:column;padding:4px;display:flex;position:absolute;top:calc(100% + 6px);right:0}.TopBar-item{font:inherit;text-align:left;color:var(--panel-fg);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:8px 10px;font-size:12px;text-decoration:none}.TopBar-item:hover{background:var(--panel-hover)}.Modal{z-index:70;background:#00000047;justify-content:center;align-items:center;padding:16px;display:flex;position:fixed;inset:0}.Modal-card{color:var(--fg);flex-direction:column;gap:14px;display:flex}.Modal-actions{align-items:center;gap:12px;display:flex}.Modal-spacer{flex:1}.PhotoDialog-current{align-items:center;gap:14px;font-size:14px;display:flex}.DropZone{font:inherit;border:1.5px dashed var(--line);background:var(--bg);color:var(--muted);cursor:pointer;text-align:center;border-radius:12px;padding:26px 16px;font-size:14px}.DropZone:hover,.DropZone--over{border-color:var(--fg);color:var(--fg)}.DropZone:disabled{opacity:.6;cursor:default}@media (width<=560px){.TopBar-button{padding:6px 8px}}
