:root{--font: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;font-family:var(--font);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;--safe-t: env(safe-area-inset-top, 0px);--safe-b: env(safe-area-inset-bottom, 0px);--safe-l: env(safe-area-inset-left, 0px);--safe-r: env(safe-area-inset-right, 0px)}.app[data-theme=dark]{--bg-0: #0b0d12;--bg-1: #0f131a;--dot: rgba(255, 255, 255, .07);--surface: rgba(22, 26, 36, .74);--surface-solid: #161a23;--surface-2: #1c2230;--surface-hover: rgba(38, 45, 58, .9);--border: rgba(255, 255, 255, .09);--border-strong: rgba(255, 255, 255, .16);--text: #e7eaf0;--text-dim: #9aa3b2;--text-faint: #808b9e;--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 12px 30px -8px rgba(0, 0, 0, .6);--shadow-lg: 0 2px 6px rgba(0, 0, 0, .45), 0 28px 60px -12px rgba(0, 0, 0, .7);--glass-blur: blur(20px) saturate(1.4);--accent-brand: 99 102 241;--code-kw: #c792ea;--code-str: #c3e88d;--code-num: #f78c6c;--code-fn: #82aaff;--code-attr: #ffcb6b;--code-var: #f07178;--code-comment: #6b7488}.app[data-theme=light]{--bg-0: #eef1f6;--bg-1: #f6f8fc;--dot: rgba(20, 30, 60, .1);--surface: rgba(255, 255, 255, .8);--surface-solid: #ffffff;--surface-2: #f1f4fa;--surface-hover: rgba(15, 23, 42, .06);--border: rgba(15, 23, 42, .1);--border-strong: rgba(15, 23, 42, .18);--text: #1a2030;--text-dim: #5b6577;--text-faint: #6b7488;--shadow: 0 1px 2px rgba(20, 30, 60, .08), 0 12px 28px -10px rgba(20, 30, 60, .22);--shadow-lg: 0 2px 8px rgba(20, 30, 60, .1), 0 30px 60px -16px rgba(20, 30, 60, .3);--glass-blur: blur(20px) saturate(1.6);--accent-brand: 79 70 229;--code-kw: #9333ea;--code-str: #15803d;--code-num: #c2410c;--code-fn: #1d4ed8;--code-attr: #b45309;--code-var: #b91c1c;--code-comment: #94a3b8}[data-color=slate]{--accent: 148 161 184}[data-color=rose]{--accent: 251 105 170}[data-color=red]{--accent: 249 82 82}[data-color=orange]{--accent: 252 133 56}[data-color=amber]{--accent: 249 191 47}[data-color=lime]{--accent: 134 222 58}[data-color=emerald]{--accent: 33 209 138}[data-color=cyan]{--accent: 32 205 224}[data-color=sky]{--accent: 66 165 252}[data-color=indigo]{--accent: 116 122 252}[data-color=violet]{--accent: 166 116 252}[data-color=fuchsia]{--accent: 233 95 240}*{box-sizing:border-box}html,body,#root{height:100%;margin:0;padding:0}body{overflow:hidden;overscroll-behavior:none}.desktop-only{display:inherit}.app{position:fixed;top:0;right:0;bottom:0;left:0;background:radial-gradient(1200px 800px at 80% -10%,rgba(var(--accent-brand) / .1),transparent 60%),radial-gradient(1000px 700px at -10% 110%,rgba(var(--accent-brand) / .08),transparent 55%),linear-gradient(160deg,var(--bg-1),var(--bg-0));color:var(--text);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}.app[data-theme=light][data-canvas=blueprint]{background:linear-gradient(160deg,#e9f1fc,#dae7f7);--bp-line: rgba(37, 99, 235, .13);--bp-line-strong: rgba(37, 99, 235, .28)}.app[data-theme=dark][data-canvas=blueprint]{background:radial-gradient(1200px 820px at 78% -12%,rgba(120,175,255,.16),transparent 60%),linear-gradient(160deg,#1c4f85,#123a63);--bp-line: rgba(200, 224, 255, .16);--bp-line-strong: rgba(210, 231, 255, .32)}.app[data-canvas=space]{background:radial-gradient(1000px 700px at 78% 10%,rgba(80,78,170,.26),transparent 62%),radial-gradient(820px 760px at 16% 94%,rgba(150,72,184,.2),transparent 60%),linear-gradient(160deg,#0a0b18,#05060d 70%);--dot: rgba(255, 255, 255, .09)}.app[data-canvas=aurora]{background:radial-gradient(1100px 760px at 15% -8%,rgb(var(--accent-brand) / .14),transparent 60%),linear-gradient(160deg,var(--bg-1),var(--bg-0))}.app[data-canvas=space]:before,.app[data-canvas=space]:after,.app[data-canvas=aurora]:before,.app[data-canvas=aurora]:after{content:"";position:absolute;top:-20%;right:-20%;bottom:-20%;left:-20%;pointer-events:none;z-index:-1}.app[data-canvas=space]:before{background:radial-gradient(1.6px 1.6px at 30% 20%,#fff,transparent) 0 0 / 120px 120px,radial-gradient(1.3px 1.3px at 75% 55%,rgba(255,255,255,.95),transparent) 45px 70px / 160px 160px,radial-gradient(1.1px 1.1px at 50% 85%,rgba(190,210,255,.9),transparent) 90px 30px / 210px 210px,radial-gradient(1px 1px at 15% 65%,rgba(255,240,210,.85),transparent) 20px 120px / 280px 280px;animation:star-drift 55s linear infinite,star-twinkle 3.6s ease-in-out infinite}.app[data-canvas=space]:after{background:radial-gradient(600px 460px at 25% 22%,rgba(104,96,224,.4),transparent 62%),radial-gradient(680px 560px at 82% 78%,rgba(196,84,214,.32),transparent 62%);animation:nebula-drift 17s ease-in-out infinite alternate}.app[data-canvas=aurora]:before{background:radial-gradient(46% 46% at 22% 18%,rgb(var(--accent-brand) / .5),transparent 66%),radial-gradient(42% 42% at 80% 28%,rgba(34,211,238,.4),transparent 66%);filter:blur(20px);animation:aurora-a 15s ease-in-out infinite alternate}.app[data-canvas=aurora]:after{background:radial-gradient(50% 50% at 78% 84%,rgba(168,85,247,.42),transparent 66%),radial-gradient(42% 42% at 28% 90%,rgb(var(--accent-brand) / .34),transparent 66%);filter:blur(22px);animation:aurora-b 19s ease-in-out infinite alternate}@keyframes star-drift{0%{transform:translateZ(0)}to{transform:translate3d(-140px,-96px,0)}}@keyframes star-twinkle{0%,to{opacity:.35}50%{opacity:1}}@keyframes nebula-drift{0%{transform:translate3d(-8%,-5%,0) scale(1)}to{transform:translate3d(8%,6%,0) scale(1.2)}}@keyframes aurora-a{0%{transform:translate3d(-12%,-7%,0) scale(1)}to{transform:translate3d(12%,9%,0) scale(1.22)}}@keyframes aurora-b{0%{transform:translate3d(11%,8%,0) scale(1.18)}to{transform:translate3d(-11%,-6%,0) scale(1)}}@media(prefers-reduced-motion:reduce){.app[data-canvas=space]:before,.app[data-canvas=space]:after,.app[data-canvas=aurora]:before,.app[data-canvas=aurora]:after{animation:none}}.note-body,.note-title,.board-rename,.palette-input input{-webkit-touch-callout:default;-webkit-user-select:text;user-select:text}.canvas{position:absolute;top:0;right:0;bottom:0;left:0;overflow:hidden;cursor:grab;touch-action:none}.canvas:active{cursor:grabbing}.world{position:absolute;top:0;left:0;transform-origin:0 0}.pinned-layer{position:absolute;top:0;right:0;bottom:0;left:0;z-index:30;pointer-events:none}.pinned-layer .note{pointer-events:auto}.note.pinned{box-shadow:var(--shadow-lg),0 0 0 1px rgb(var(--accent-brand) / .3)}.note.pinned.selected{box-shadow:var(--shadow-lg),0 0 0 2px rgb(var(--accent-brand) / .6)}.marquee{position:absolute;z-index:35;border:1.5px solid rgb(var(--accent-brand));background:rgb(var(--accent-brand) / .12);border-radius:4px;pointer-events:none}.frame{position:absolute;border-radius:18px;border:1.5px solid rgb(var(--accent) / .5);background:rgb(var(--accent) / .05);pointer-events:none}.frame-header{position:absolute;top:0;left:0;right:0;height:30px;display:flex;align-items:center;gap:4px;padding:0 6px 0 13px;pointer-events:auto;cursor:grab}.frame-header:active{cursor:grabbing}.frame-title{flex:1;min-width:0;border:none;background:transparent;color:rgb(var(--accent));font-family:var(--font);font-size:13px;font-weight:700;letter-spacing:-.01em;outline:none;padding:2px 0}.frame-title::placeholder{color:var(--text-faint)}.frame .icon-btn{flex:none}.selbar{position:fixed;bottom:calc(20px + var(--safe-b));left:50%;transform:translate(-50%);z-index:60;display:flex;align-items:center;gap:6px;padding:7px 8px 7px 15px;border-radius:14px;max-width:calc(100vw - 20px)}.selbar-count{font-size:13px;font-weight:600;color:var(--text-dim);margin-right:2px;white-space:nowrap}.selbar-btn{display:flex;align-items:center;gap:6px;height:34px;padding:0 12px;border:none;border-radius:10px;background:var(--surface-hover);color:var(--text);font-family:var(--font);font-size:13px;font-weight:550;cursor:pointer;white-space:nowrap;transition:background .15s ease}.selbar-btn:hover{background:var(--border-strong)}.selbar-btn svg{flex:none;color:var(--text-dim)}.selbar-btn.danger{color:#fb7185}.selbar-btn.danger svg{color:#fb7185}.selbar-btn.danger:hover{background:#f43f5e29}.present-bar{position:fixed;bottom:calc(20px + var(--safe-b));left:50%;transform:translate(-50%);z-index:70;display:flex;align-items:center;gap:4px;padding:6px 8px;border-radius:14px}.present-count{font-size:14px;font-weight:650;color:var(--text-dim);min-width:56px;text-align:center;white-space:nowrap;font-variant-numeric:tabular-nums}.present-nav,.present-exit{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border:none;border-radius:10px;background:var(--surface-hover);color:var(--text);cursor:pointer;transition:background .15s ease}.present-nav:hover,.present-exit:hover{background:var(--border-strong)}.present-exit{margin-left:4px;color:var(--text-dim)}.note{position:absolute;display:flex;flex-direction:column;border-radius:16px;background:linear-gradient(90deg,rgb(var(--accent) / .9),rgb(var(--accent) / .35)) top / 100% 3px no-repeat,linear-gradient(180deg,rgb(var(--accent) / .14),rgb(var(--accent) / .04)),var(--surface-solid);border:1px solid var(--border);box-shadow:var(--shadow);overflow:hidden;transition:box-shadow .22s ease,border-color .22s ease;animation:note-in .26s cubic-bezier(.16,1,.3,1)}@keyframes note-in{0%{opacity:0;transform:scale(.94) translateY(6px)}}.note.selected{border-color:rgb(var(--accent) / .7);box-shadow:var(--shadow-lg),0 0 0 1px rgb(var(--accent) / .45)}.note.dragging{transition:none;cursor:grabbing;z-index:9999!important}.note.drop-target{box-shadow:0 0 0 3px rgb(var(--accent-brand) / .95),0 16px 36px rgb(var(--accent-brand) / .32)!important;transform:scale(1.015);transition:box-shadow .16s ease,transform .16s ease}@media(prefers-reduced-motion:reduce){.note.drop-target{transform:none}}.note.snapping{transition:left .28s cubic-bezier(.16,1,.3,1),top .28s cubic-bezier(.16,1,.3,1),box-shadow .22s ease,border-color .22s ease}.note.highlighted{animation:note-pulse 1.3s ease}@keyframes note-pulse{0%,to{box-shadow:var(--shadow)}30%{box-shadow:var(--shadow-lg),0 0 0 4px rgb(var(--accent) / .5)}}.note.collapsed{height:auto!important;padding-bottom:12px}.note.collapsed .note-content{display:none}.note.locked{border-style:dashed}.note.locked .note-grip{cursor:default}.note.locked .grip-bar{opacity:.45}.note.locked:hover .grip-bar,.note.locked.selected .grip-bar{width:28px}.note.readonly .note-grip{cursor:default}.note.readonly .note-grip .grip-bar{opacity:0}.note.readonly .note-md{cursor:default}.note.has-author{overflow:visible}.note-author{position:absolute;top:100%;left:8px;margin-top:7px;display:flex;align-items:center;gap:6px;max-width:calc(100% - 16px);padding:3px 10px 3px 3px;background:var(--surface);border:1px solid var(--border);border-radius:999px;box-shadow:var(--shadow);pointer-events:none;z-index:3}.note-author img,.note-author-initial{width:20px;height:20px;border-radius:50%;flex:none;object-fit:cover;display:grid;place-items:center;background:rgb(var(--accent-brand) / .22);color:var(--text);font-size:11px;font-weight:700}.note-author-name{font-size:12px;font-weight:600;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.note-like{position:absolute;top:100%;right:8px;margin-top:7px;display:flex;align-items:center;gap:5px;min-height:26px;padding:3px 10px;background:var(--surface);border:1px solid var(--border);border-radius:999px;box-shadow:var(--shadow);color:var(--text-dim);cursor:pointer;z-index:3;transition:color .15s ease,border-color .15s ease,transform .12s ease}.note-like:hover{color:#fb7185;border-color:#fb718580}.note-like:active{transform:scale(.92)}.note-like.liked{color:#f43f5e;border-color:#f43f5e80}.note-like-count{font-size:12px;font-weight:700;line-height:1}.cursor-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:100001}.remote-cursor{position:absolute;transform-origin:0 0;will-change:transform;transition:left .09s linear,top .09s linear}.remote-cursor svg{display:block;filter:drop-shadow(0 1px 2px rgb(0 0 0 / .35))}.remote-cursor-label{position:absolute;left:16px;top:15px;display:inline-flex;align-items:center;gap:4px;max-width:170px;padding:2px 8px;border-radius:999px;color:#fff;font-size:12px;font-weight:600;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;box-shadow:0 1px 4px #0000004d}.note-dot.as-static{cursor:default;background:rgb(var(--accent) / .9)}.note-grip{position:relative;flex:none;height:20px;display:grid;place-items:center;cursor:grab;touch-action:none;background:transparent;z-index:2}.note-grip:active,.note.dragging .note-grip{cursor:grabbing}.grip-bar{width:28px;height:4px;border-radius:3px;background:rgb(var(--accent) / .45);transition:width .16s ease,background .16s ease}.note:hover .grip-bar,.note.selected .grip-bar{width:40px;background:rgb(var(--accent) / .75)}.note-header{display:flex;align-items:center;gap:8px;padding:5px 8px 5px 13px;flex:none;cursor:default}.note-dot{flex:none;width:13px;height:13px;border-radius:50%;border:none;background:rgb(var(--accent));box-shadow:0 0 0 3px rgb(var(--accent) / .18);cursor:pointer;transition:transform .15s ease}.note-dot:hover{transform:scale(1.18)}.note-title-wrap{position:relative;flex:1;min-width:0;display:flex;align-items:center}.note-title{flex:1;min-width:0;border:none;background:transparent;color:var(--text);caret-color:var(--text);font-size:16.5px;font-weight:650;letter-spacing:-.01em;outline:none;padding:2px 0}.note-title::placeholder{color:var(--text-faint);font-weight:500}.note-title.masked{color:transparent}.note-title-md{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;overflow:hidden;pointer-events:none}.note-title-md-inner{min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:var(--text);font-size:16.5px;font-weight:650;letter-spacing:-.01em}.note-title-md a.note-tag{pointer-events:auto;cursor:pointer;text-decoration:none;background:rgb(var(--accent) / .14);border-radius:6px;padding:0 5px;font-weight:650;white-space:nowrap}.note-title-md a.note-tag:hover{background:rgb(var(--accent) / .26)}.note-actions{display:flex;gap:2px;opacity:0;transition:opacity .16s ease}.note:hover .note-actions,.note.selected .note-actions{opacity:1}.icon-btn{display:grid;place-items:center;width:28px;height:28px;border:none;border-radius:8px;background:transparent;color:var(--text-dim);cursor:pointer;transition:background .15s ease,color .15s ease}.icon-btn:hover{background:var(--surface-hover);color:var(--text)}.icon-btn.active{color:rgb(var(--accent-brand))}.icon-btn.note-admin-del{color:#ef4444}.icon-btn.note-admin-del:hover{background:#ef4444;color:#fff}.icon-btn.active:hover{color:rgb(var(--accent-brand));background:rgb(var(--accent-brand) / .12)}.note-content{position:relative;flex:1;min-height:0}.note-body{position:absolute;top:0;right:0;bottom:0;left:0;resize:none;border:none;background:transparent;color:var(--text);font-family:var(--font);font-size:calc(15px * var(--note-scale, 1));line-height:1.6;padding:2px 16px 16px;outline:none;overflow-y:auto;-webkit-user-select:text;user-select:text;touch-action:pan-y;-webkit-overflow-scrolling:touch;opacity:0;pointer-events:none}.note-body::placeholder{color:var(--text-faint)}.note.editing .note-body{opacity:1;pointer-events:auto}.note-md{position:absolute;top:0;right:0;bottom:0;left:0;overflow-y:auto;padding:2px 16px 16px;font-size:calc(15px * var(--note-scale, 1));line-height:1.6;color:var(--text);cursor:text;word-break:break-word;touch-action:pan-y;-webkit-overflow-scrolling:touch}.note.editing .note-md{opacity:0;pointer-events:none}.note-md.note-empty{color:var(--text-faint)}.note-md>*:first-child{margin-top:0}.note-md>*:last-child{margin-bottom:0}.note-md p,.note-md li{white-space:pre-wrap}.note-md p{margin:0}.note-md h1,.note-md h2,.note-md h3{margin:.6em 0 .3em;line-height:1.25;letter-spacing:-.01em}.note-md h1{font-size:1.35em}.note-md h2{font-size:1.18em}.note-md h3{font-size:1.05em}.note-md ul,.note-md ol{margin:.3em 0;padding-left:1.3em}.note-md li{margin:.15em 0}.note-md li::marker{color:rgb(var(--accent))}.note-md a{color:rgb(var(--accent));text-decoration:underline;text-underline-offset:2px}.note-md a.note-tag{text-decoration:none;background:rgb(var(--accent) / .14);border-radius:6px;padding:0 5px;font-weight:600;cursor:pointer;white-space:nowrap}.note-md a.note-tag:hover{background:rgb(var(--accent) / .26)}.note-md code{font-family:var(--mono);font-size:.88em;background:var(--surface-2);padding:.1em .4em;border-radius:5px}.note-md pre{background:var(--surface-2);padding:10px 12px;border-radius:9px;overflow-x:auto;margin:.5em 0}.note-md pre code{background:none;padding:0}.note-md .hljs-comment,.note-md .hljs-quote{color:var(--code-comment);font-style:italic}.note-md .hljs-keyword,.note-md .hljs-selector-tag,.note-md .hljs-literal,.note-md .hljs-section,.note-md .hljs-doctag{color:var(--code-kw)}.note-md .hljs-string,.note-md .hljs-meta .hljs-string,.note-md .hljs-regexp,.note-md .hljs-addition{color:var(--code-str)}.note-md .hljs-number,.note-md .hljs-built_in,.note-md .hljs-literal.hljs-number{color:var(--code-num)}.note-md .hljs-title,.note-md .hljs-title.function_,.note-md .hljs-name,.note-md .hljs-type,.note-md .hljs-selector-id,.note-md .hljs-selector-class{color:var(--code-fn)}.note-md .hljs-attr,.note-md .hljs-attribute,.note-md .hljs-symbol,.note-md .hljs-meta{color:var(--code-attr)}.note-md .hljs-variable,.note-md .hljs-template-variable,.note-md .hljs-tag,.note-md .hljs-deletion{color:var(--code-var)}.note-md .hljs-emphasis{font-style:italic}.note-md .hljs-strong{font-weight:700}.note-md blockquote{margin:.5em 0;padding:.1em 0 .1em .9em;border-left:3px solid rgb(var(--accent) / .5);color:var(--text-dim)}.note-md hr{border:none;border-top:1px solid var(--border);margin:.8em 0}.note-md img{max-width:100%;height:auto;border-radius:8px;margin:.3em 0;display:block}.note-md table{border-collapse:collapse;margin:.5em 0;font-size:.95em;display:block;overflow-x:auto}.note-md th,.note-md td{border:1px solid var(--border-strong);padding:4px 9px;text-align:left}.note-md th{background:var(--surface-2);font-weight:650}.note-md ul:has(input[type=checkbox]){list-style:none;padding-left:.2em}.note-md li:has(input[type=checkbox]){display:flex;align-items:flex-start;gap:.5em}.note-md input[type=checkbox]{margin-top:.28em;width:15px;height:15px;accent-color:rgb(var(--accent));cursor:pointer}.note-md::-webkit-scrollbar,.note-body::-webkit-scrollbar{width:8px}.note-md::-webkit-scrollbar-thumb,.note-body::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:8px}.note-images{position:absolute;top:0;right:0;bottom:0;left:0;z-index:3;overflow:hidden;pointer-events:none}.note-image{position:absolute;border-radius:10px;overflow:hidden;box-shadow:0 1px 4px #00000040,0 0 0 1px var(--border);pointer-events:none}.note-image img{width:100%;height:100%;object-fit:cover;display:block;-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.note-image-loading{width:100%;height:100%;background:linear-gradient(110deg,var(--surface-2) 30%,var(--surface-hover) 50%,var(--surface-2) 70%);background-size:220% 100%;animation:img-shimmer 1.1s ease-in-out infinite}@keyframes img-shimmer{0%{background-position:180% 0}to{background-position:-80% 0}}.note.editing .note-image{pointer-events:auto;cursor:grab;touch-action:none}.note.editing .note-image:active{cursor:grabbing}.note.editing .note-image:hover{box-shadow:0 3px 12px #00000052,0 0 0 2px rgb(var(--accent-brand) / .7)}.img-del{position:absolute;top:5px;right:5px;display:none;place-items:center;width:24px;height:24px;padding:0;border:none;border-radius:50%;background:#0c0f16bd;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .14s ease,transform .12s ease}.note.editing .note-image:hover .img-del{display:grid}.img-del:hover{background:#ef4444;transform:scale(1.08)}.note-files{flex:none;display:flex;flex-direction:column;gap:6px;padding:4px 12px 12px;max-height:45%;overflow-y:auto}.note-file{position:relative;display:flex;align-items:center}.note-file-open{flex:1;min-width:0;display:flex;align-items:center;gap:9px;padding:7px 10px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2, var(--surface));color:var(--text);text-align:left;cursor:pointer;transition:background .14s ease,border-color .14s ease}.note-file-open:hover:not(:disabled){background:var(--surface-hover);border-color:var(--border-strong)}.note-file-open:disabled{cursor:default;opacity:.6}.note-file-icon{flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:rgb(var(--accent) / .16);color:rgb(var(--accent))}.note-file-meta{min-width:0;display:flex;flex-direction:column;gap:1px}.note-file-name{font-size:12.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.note-file-size{font-size:11px;color:var(--text-dim)}.note-file-del{flex:none;display:grid;place-items:center;width:26px;height:26px;margin-left:4px;border:none;border-radius:7px;background:transparent;color:var(--text-dim);cursor:pointer;transition:background .14s ease,color .14s ease}.note-file-del:hover{background:#f43f5e29;color:#fb7185}.note-file-blocks{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.note-file-block{position:absolute;pointer-events:auto;display:flex;align-items:center;gap:10px;padding:8px 12px;border:1px solid var(--border);border-radius:12px;box-shadow:var(--shadow);background:var(--surface-solid, var(--surface));overflow:hidden;cursor:grab;touch-action:none}.note-file-block:active{cursor:grabbing}.note-file-block:hover{box-shadow:var(--shadow-lg),0 0 0 2px rgb(var(--accent-brand) / .85)}.note-file-block .note-file-icon{width:40px;height:40px;border-radius:9px;background:rgb(var(--accent-brand) / .16);color:rgb(var(--accent-brand))}.note-file-block .note-file-name{font-size:13px}.note-file-block .note-file-size{font-size:11px}.note-file-block.locked,.note-file-block.locked:active{cursor:default}.note-file-dl{position:absolute;top:6px;right:34px;display:none;place-items:center;width:24px;height:24px;padding:0;border:none;border-radius:50%;background:#0c0f16bd;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .14s ease,transform .12s ease}.note-file-block:hover .note-file-dl{display:grid}.note-file-dl:hover{background:rgb(var(--accent-brand));transform:scale(1.08)}.note-file-dl:disabled{opacity:.5;cursor:default}.note-file-block .img-del{display:none;top:6px;right:6px}.note-file-block:hover .img-del{display:grid}.rz-att{position:absolute;bottom:0;right:0;width:18px;height:18px;z-index:6;cursor:nwse-resize;touch-action:none;display:none}.note-file-block:hover .rz-att{display:block}.rz-att:after{content:"";position:absolute;right:4px;bottom:4px;width:8px;height:8px;border-right:2px solid var(--text-faint);border-bottom:2px solid var(--text-faint);border-bottom-right-radius:3px}.cmedia-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:90000}.cmedia{position:absolute;pointer-events:auto;touch-action:none;cursor:grab}.cmedia:active{cursor:grabbing}.cmedia.readonly{cursor:default}.cmedia-image{border-radius:12px;box-shadow:0 1px 5px #00000047,0 0 0 1px var(--border)}.cmedia-image img{width:100%;height:100%;object-fit:cover;display:block;border-radius:12px;-webkit-user-drag:none;-webkit-user-select:none;user-select:none}.cmedia-image.selected{box-shadow:0 8px 24px #00000057,0 0 0 2px rgb(var(--accent-brand) / .85)}.cmedia-loading{width:100%;height:100%;border-radius:12px;background:linear-gradient(110deg,var(--surface-2) 30%,var(--surface-hover) 50%,var(--surface-2) 70%);background-size:220% 100%;animation:img-shimmer 1.1s ease-in-out infinite}.cmedia-file{display:flex;align-items:center;gap:10px;padding:0 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-solid);box-shadow:var(--shadow)}.cmedia-file.selected{box-shadow:var(--shadow-lg),0 0 0 2px rgb(var(--accent-brand) / .85)}.cmedia-file-icon{flex:none;display:grid;place-items:center;width:40px;height:40px;border-radius:9px;background:rgb(var(--accent-brand) / .16);color:rgb(var(--accent-brand))}.cmedia-file-meta{min-width:0;flex:1;display:flex;flex-direction:column;gap:2px}.cmedia-file-name{font-size:13px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.cmedia-file-size{font-size:11px;color:var(--text-dim)}.cmedia-del,.cmedia-dl{position:absolute;display:none;place-items:center;width:24px;height:24px;padding:0;border:none;border-radius:50%;background:#0c0f16bd;color:#fff;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);transition:background .14s ease,transform .12s ease}.cmedia-del{top:-9px;right:-9px}.cmedia-file .cmedia-del{top:6px;right:6px}.cmedia-dl{top:6px;right:34px}.cmedia:hover .cmedia-del,.cmedia.selected .cmedia-del,.cmedia:hover .cmedia-dl,.cmedia.selected .cmedia-dl{display:grid}.cmedia-del:hover{background:#ef4444;transform:scale(1.08)}.cmedia-admin-del{background:#ef4444d9}.cmedia-dl:hover{background:rgb(var(--accent-brand));transform:scale(1.08)}.cmedia-dl:disabled{opacity:.5;cursor:default}.cmedia-rz{position:absolute;right:-3px;bottom:-3px;width:20px;height:20px;cursor:nwse-resize;display:none;touch-action:none}.cmedia-image:hover .cmedia-rz,.cmedia-image.selected .cmedia-rz{display:block}.cmedia-rz:after{content:"";position:absolute;right:4px;bottom:4px;width:9px;height:9px;border-right:2px solid #fff;border-bottom:2px solid #fff;border-bottom-right-radius:3px;filter:drop-shadow(0 1px 2px rgb(0 0 0 / .55))}.cmedia.locked,.cmedia.locked:active{cursor:default}.cmedia-lock,.att-lock{position:absolute;top:-8px;left:-8px;width:20px;height:20px;display:grid;place-items:center;border-radius:999px;background:var(--surface-solid);color:var(--text-dim);box-shadow:var(--shadow),0 0 0 1px var(--border);z-index:3}.att-lock{top:6px;left:6px;width:22px;height:22px}.lightbox-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:500;background:#000000d1;display:grid;place-items:center;padding:24px;animation:fade-in .14s ease}.lightbox-img{max-width:96vw;max-height:94vh;object-fit:contain;border-radius:8px;box-shadow:0 12px 48px #00000080;cursor:default}.lightbox-close{position:fixed;top:18px;right:18px;width:40px;height:40px;display:grid;place-items:center;border-radius:999px;background:#ffffff24;color:#fff;border:none;cursor:pointer;transition:background .15s}.lightbox-close:hover{background:#ffffff42}.share-screen{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-1);color:var(--text);overflow:hidden}.share-screen.note-mode{display:grid;place-items:center;padding:24px}.share-note-wrap{position:relative;width:min(560px,92vw)}.share-note-wrap .note{position:relative!important;left:auto!important;top:auto!important;width:100%!important;height:auto!important;min-height:240px}.share-canvas{position:absolute;top:0;right:0;bottom:0;left:0;touch-action:none;background:radial-gradient(circle,var(--dot) 1px,transparent 1.6px) 0 0 / 26px 26px,var(--bg-1)}.share-splash{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:var(--text-dim)}.share-card{position:absolute;top:0;right:0;bottom:0;left:0;width:min(380px,90vw);height:max-content;margin:auto;padding:32px 28px;text-align:center}.share-card-icon{display:inline-grid;place-items:center;width:56px;height:56px;margin-bottom:14px;border-radius:16px;background:rgb(var(--accent-brand) / .14);color:rgb(var(--accent-brand))}.share-card h2{margin:0 0 8px;font-size:20px}.share-card p{margin:0 0 18px;color:var(--text-dim);font-size:14px;line-height:1.5}.share-home,.share-open-btn{display:inline-block;padding:9px 16px;border-radius:10px;background:rgb(var(--accent-brand));color:#fff;font-weight:600;font-size:14px;text-decoration:none}.share-bar{position:fixed;top:calc(12px + var(--safe-t));left:50%;transform:translate(-50%);display:flex;align-items:center;gap:10px;padding:7px 8px 7px 14px;border-radius:999px;z-index:50;max-width:calc(100vw - 24px)}.share-bar-app{display:inline-flex;align-items:center;gap:6px;font-weight:700}.share-bar-owner{color:var(--text-dim);font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.share-bar-mode{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;white-space:nowrap}.share-bar-mode.view{background:#94a3b82e;color:var(--text-dim)}.share-bar-mode.edit{background:rgb(var(--accent-brand) / .18);color:rgb(var(--accent-brand))}.share-bar-home{padding:5px 12px;border-radius:999px;background:var(--surface-2);color:var(--text);font-size:12.5px;font-weight:600;text-decoration:none;border:1px solid var(--border);white-space:nowrap}.share-bar-copy,.share-bar-signin{display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:999px;font-size:12.5px;font-weight:600;white-space:nowrap;cursor:pointer;border:1px solid transparent}.share-bar-copy{background:rgb(var(--accent-brand) / .16);color:rgb(var(--accent-brand));border-color:rgb(var(--accent-brand) / .35)}.share-bar-copy:hover{background:rgb(var(--accent-brand) / .26)}.share-bar-signin{background:rgb(var(--accent-brand) / .14);color:rgb(var(--accent-brand));border-color:rgb(var(--accent-brand) / .3)}.share-bar-signin:hover{background:rgb(var(--accent-brand) / .24)}.share-add{position:fixed;right:calc(16px + var(--safe-r));bottom:calc(18px + var(--safe-b));display:inline-flex;align-items:center;gap:7px;padding:11px 16px;border-radius:999px;border:none;background:rgb(var(--accent-brand));color:#fff;font-weight:600;font-size:14px;cursor:pointer;box-shadow:var(--shadow-lg);z-index:50}.share-dialog{width:min(460px,94vw);padding:0;border-radius:18px;overflow:hidden}.share-dialog-head{display:flex;align-items:center;gap:9px;padding:16px 20px;font-size:16px;font-weight:700;border-bottom:1px solid var(--border)}.share-dialog-body{padding:18px 20px 20px}.copy-dialog{width:min(420px,94vw);padding:16px 18px 18px;border-radius:18px}.copy-dialog-head{display:flex;align-items:center;gap:9px;font-size:16px;font-weight:700}.copy-dialog-hint{margin:10px 2px 12px;font-size:13px;color:var(--text-dim);line-height:1.5}.copy-dialog-note{color:var(--text);font-weight:600}.copy-board-list{display:flex;flex-direction:column;gap:6px;max-height:52vh;overflow-y:auto}.copy-board-row{display:flex;align-items:center;gap:10px;width:100%;padding:11px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2);color:var(--text);font-size:14px;font-weight:600;text-align:left;cursor:pointer;transition:background .14s ease,border-color .14s ease}.copy-board-row:hover{background:var(--surface-hover);border-color:var(--border-strong)}.copy-board-name{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.copy-board-row.as-new{color:rgb(var(--accent-brand));border-style:dashed}.share-access{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:4px;background:var(--surface-2);border-radius:12px}.share-access-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;padding:9px 10px;border:none;border-radius:9px;background:transparent;color:var(--text-dim);font-size:13px;font-weight:600;cursor:pointer;transition:background .14s ease,color .14s ease}.share-access-btn.active{background:var(--surface-solid);color:var(--text);box-shadow:var(--shadow)}.share-dialog-hint{margin:12px 2px 16px;color:var(--text-dim);font-size:13px;line-height:1.5}.share-link-row{display:flex;align-items:center;gap:8px;padding:6px 6px 6px 12px;border:1px solid var(--border);border-radius:11px;background:var(--surface-2)}.share-link-icon{color:var(--text-dim);display:inline-flex}.share-link-input{flex:1;min-width:0;border:none;background:transparent;color:var(--text);font-size:13px;font-family:var(--mono);outline:none}.share-copy,.share-create-btn,.share-stop-btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;cursor:pointer;font-weight:600;font-size:13.5px;border-radius:9px}.share-copy{padding:8px 12px;border:none;background:rgb(var(--accent-brand));color:#fff;white-space:nowrap}.share-create-btn{width:100%;padding:12px;border:none;background:rgb(var(--accent-brand));color:#fff;font-size:14.5px}.share-dialog-actions{display:flex;align-items:center;gap:10px;margin-top:14px}.share-dialog-actions .share-open-btn{flex:1;padding:10px;text-align:center;background:var(--surface-2);color:var(--text);border:1px solid var(--border)}.share-stop-btn{padding:10px 14px;border:1px solid var(--border);background:transparent;color:#fb7185}.share-stop-btn:hover{background:#f43f5e1f}.share-copy:disabled,.share-create-btn:disabled,.share-stop-btn:disabled{opacity:.6;cursor:default}.resize-handle{position:absolute;z-index:5;touch-action:none}.rz-t,.rz-b{left:14px;right:14px;height:8px;cursor:ns-resize}.rz-l,.rz-r{top:14px;bottom:14px;width:8px;cursor:ew-resize}.rz-t{top:0}.rz-b{bottom:0}.rz-l{left:0}.rz-r{right:0}.rz-tl,.rz-tr,.rz-bl,.rz-br{width:16px;height:16px;z-index:6}.rz-tl{top:0;left:0;cursor:nwse-resize}.rz-tr{top:0;right:0;cursor:nesw-resize}.rz-bl{bottom:0;left:0;cursor:nesw-resize}.rz-br{bottom:0;right:0;cursor:nwse-resize}.rz-br:after{content:"";position:absolute;right:4px;bottom:4px;width:8px;height:8px;border-right:2px solid var(--text-faint);border-bottom:2px solid var(--text-faint);border-bottom-right-radius:3px;opacity:0;transition:opacity .16s ease}.note:hover .rz-br:after,.note.selected .rz-br:after{opacity:1}.connect-handle{position:absolute;bottom:4px;left:50%;transform:translate(-50%);width:14px;height:14px;padding:0;border-radius:50%;border:2px solid var(--surface-solid);background:rgb(var(--accent-brand));box-shadow:0 1px 4px #0000004d;cursor:crosshair;z-index:7;display:none}.connections{pointer-events:none}.conn-line{fill:none;stroke:rgb(var(--accent-brand) / .7);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:stroke-width .12s ease}.conn-line.pending{stroke:rgb(var(--accent-brand));stroke-dasharray:6 5}.conn-hit{fill:none;stroke:transparent;stroke-width:22;pointer-events:stroke;cursor:pointer}.conn:hover .conn-line{stroke-width:3.5}@media(hover:none){.connect-handle{display:block;width:16px;height:16px}}.app.drawing .note,.app.drawing .frame,.app.drawing .connections,.app.drawing .pinned-layer{pointer-events:none}.app.drawing .canvas{cursor:none}.draw-layer{pointer-events:none;z-index:100000}.stroke{fill:none;stroke-linecap:round;stroke-linejoin:round}.stroke[data-tool=marker]{opacity:.4}.draw-cursor{position:fixed;left:0;top:0;border-radius:50%;border:1.5px solid var(--text-dim);box-shadow:0 0 0 1px #00000047;pointer-events:none;z-index:65}.draw-cursor[data-tool=eraser]{border-style:dashed;background:#7f7f7f1f}@media(hover:none){.draw-cursor{display:none!important}}.drawbar{position:fixed;bottom:calc(20px + var(--safe-b));left:50%;transform:translate(-50%);z-index:60;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:6px;padding:7px 9px;border-radius:16px;max-width:calc(100vw - 20px)}.draw-group{display:flex;align-items:center;gap:3px}.draw-sep{width:1px;height:24px;background:var(--border);margin:0 2px;flex:none}.draw-tool{display:grid;place-items:center;width:38px;height:38px;border:none;border-radius:10px;background:transparent;color:var(--text-dim);cursor:pointer;transition:background .15s ease,color .15s ease}.draw-tool:hover{background:var(--surface-hover);color:var(--text)}.draw-tool.active{background:rgb(var(--accent-brand) / .16);color:rgb(var(--accent-brand))}.draw-tool:disabled{opacity:.35;cursor:default}.draw-tool:disabled:hover{background:transparent;color:var(--text-dim)}.draw-tool.danger:hover{background:#f43f5e29;color:#fb7185}.draw-size{display:grid;place-items:center;width:34px;height:38px;border:none;border-radius:10px;background:transparent;color:var(--text-dim);cursor:pointer;transition:background .15s ease}.draw-size:hover{background:var(--surface-hover)}.draw-size.active{background:rgb(var(--accent-brand) / .16)}.draw-size-dot{display:block;border-radius:50%;box-shadow:0 0 0 1px var(--border)}.draw-colors{display:grid;grid-template-columns:repeat(9,auto);justify-content:center;align-content:center;gap:5px}.draw-swatch{width:22px;height:22px;padding:0;border-radius:50%;border:2px solid transparent;box-shadow:inset 0 0 0 1px var(--border),0 1px 3px #00000040;cursor:pointer;transition:transform .12s ease,border-color .12s ease}.draw-swatch:hover{transform:scale(1.15)}.draw-swatch.active{border-color:var(--text)}.draw-done{display:flex;align-items:center;gap:7px;height:38px;padding:0 14px;border:none;border-radius:10px;background:rgb(var(--accent-brand));color:#fff;font-family:var(--font);font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 4px 14px rgb(var(--accent-brand) / .4);transition:background .15s ease}.draw-done:hover{background:rgb(var(--accent-brand) / .88)}.tool-btn.active{background:rgb(var(--accent-brand) / .16);color:rgb(var(--accent-brand))}.tool-btn.active:hover{background:rgb(var(--accent-brand) / .22);color:rgb(var(--accent-brand))}.color-pop{position:absolute;top:56px;left:10px;z-index:5;display:grid;grid-template-columns:repeat(4,1fr);gap:7px;padding:9px;border-radius:12px;background:var(--surface-solid);border:1px solid var(--border);box-shadow:var(--shadow-lg);animation:pop-in .16s ease}@keyframes pop-in{0%{opacity:0;transform:translateY(-4px) scale(.96)}}.swatch{width:22px;height:22px;border-radius:50%;border:2px solid transparent;background:rgb(var(--accent));cursor:pointer;transition:transform .12s ease,border-color .12s ease}.swatch:hover{transform:scale(1.15)}.swatch.active{border-color:var(--text)}.tag-menu{position:fixed;z-index:350;min-width:150px;max-width:250px;max-height:280px;overflow-y:auto;display:flex;flex-direction:column;gap:2px;padding:5px;border-radius:12px;background:var(--surface-solid);border:1px solid var(--border);box-shadow:var(--shadow-lg);animation:pop-in .14s ease}.tag-menu-item{display:flex;align-items:center;gap:3px;padding:7px 10px;border:none;border-radius:8px;background:none;color:var(--text);font-family:var(--font);font-size:14px;text-align:left;white-space:nowrap;cursor:pointer}.tag-menu-item:hover,.tag-menu-item.active{background:rgb(var(--accent) / .14)}.tag-menu-hash,.tag-menu-match{color:rgb(var(--accent));font-weight:700}.fs-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;background:#00000080;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);display:grid;place-items:center;animation:fade-in .2s ease;padding:calc(28px + var(--safe-t)) 28px calc(28px + var(--safe-b))}@keyframes fade-in{0%{opacity:0}}.note.fullscreen{position:relative;width:min(880px,94vw);height:min(84vh,920px);animation:fs-in .26s cubic-bezier(.16,1,.3,1)}@keyframes fs-in{0%{opacity:0;transform:scale(.96)}}.note.fullscreen .note-title,.note.fullscreen .note-title-md-inner{font-size:21px}.note.fullscreen .note-md,.note.fullscreen .note-body{font-size:calc(17px * var(--note-scale, 1));line-height:1.7}.toolbar,.context-menu,.palette,.archive-panel,.settings-panel,.archive-btn,.minimap,.chat-panel,.toast{background:var(--surface);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--border);box-shadow:var(--shadow-lg)}.toolbar{position:fixed;top:calc(14px + var(--safe-t));left:50%;transform:translate(-50%);z-index:50;display:flex;align-items:center;gap:5px;padding:7px;border-radius:16px;max-width:calc(100vw - 20px)}.brand{display:flex;align-items:center;gap:9px;padding:0 8px 0 5px;font-weight:700;font-size:14px;letter-spacing:-.02em}.brand-logo{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:linear-gradient(140deg,rgb(var(--accent-brand)),rgb(var(--accent-brand) / .6));color:#fff;box-shadow:0 4px 12px rgb(var(--accent-brand) / .4)}.divider{width:1px;height:22px;background:var(--border);margin:0 2px;flex:none}.tool-btn{display:flex;align-items:center;gap:7px;height:36px;padding:0 11px;border:none;border-radius:10px;background:transparent;color:var(--text-dim);font-family:var(--font);font-size:13px;font-weight:550;cursor:pointer;transition:background .15s ease,color .15s ease,opacity .15s ease}.tool-btn:hover{background:var(--surface-hover);color:var(--text)}.tool-btn:disabled{opacity:.35;cursor:default}.tool-btn:disabled:hover{background:transparent;color:var(--text-dim)}.tool-btn.primary{background:rgb(var(--accent-brand));color:#fff;box-shadow:0 4px 14px rgb(var(--accent-brand) / .4)}.tool-btn.primary:hover{background:rgb(var(--accent-brand) / .88);color:#fff}.tool-btn.icon-only{padding:0;width:36px;justify-content:center}.zoom-label{min-width:46px;text-align:center;font-size:12.5px;font-weight:600;color:var(--text-dim);font-variant-numeric:tabular-nums;cursor:pointer;border-radius:8px;padding:6px 4px;transition:background .15s ease}.zoom-label:hover{background:var(--surface-hover);color:var(--text)}.auth-wrap{position:fixed;top:calc(14px + var(--safe-t));right:calc(14px + var(--safe-r));z-index:60}.auth-btn{position:fixed;top:calc(14px + var(--safe-t));right:calc(14px + var(--safe-r));z-index:60;display:flex;align-items:center;gap:8px;height:40px;padding:0 14px;border:1px solid var(--border);border-radius:13px;background:var(--surface);color:var(--text);font-family:var(--font);font-size:13px;font-weight:600;cursor:pointer;transition:background .15s ease}.auth-btn:hover{background:var(--surface-hover)}.auth-btn svg{color:rgb(var(--accent-brand))}.archive-btn{position:fixed;top:calc(14px + var(--safe-t));left:calc(14px + var(--safe-l));z-index:60;display:flex;align-items:center;gap:7px;height:40px;padding:0 14px;border-radius:13px;color:var(--text);font-family:var(--font);font-size:13px;font-weight:600;cursor:pointer;transition:background .15s ease}.archive-btn:hover{background:var(--surface-hover)}.archive-btn svg{color:var(--text-dim);flex:none}.archive-badge{display:grid;place-items:center;min-width:18px;height:18px;padding:0 5px;border-radius:9px;background:rgb(var(--accent-brand));color:#fff;font-size:11px;font-weight:700;font-variant-numeric:tabular-nums}.auth-avatar{display:grid;place-items:center;width:40px;height:40px;padding:0;border:1px solid var(--border);border-radius:50%;background:var(--surface);cursor:pointer;overflow:hidden}.auth-avatar img,.auth-pop-head img{width:100%;height:100%;object-fit:cover}.sync-dot{position:absolute;right:-1px;bottom:-1px;width:12px;height:12px;border-radius:50%;border:2px solid var(--bg-1);pointer-events:none;z-index:1}.sync-dot.ok{background:#34d399}.sync-dot.error{background:#f59e0b}.sync-dot.error{animation:sync-pulse 1.4s ease-in-out infinite}@keyframes sync-pulse{50%{opacity:.35}}.auth-initial{display:grid;place-items:center;width:100%;height:100%;background:linear-gradient(140deg,rgb(var(--accent-brand)),rgb(var(--accent-brand) / .6));color:#fff;font-weight:700;font-size:15px}.auth-pop{position:absolute;top:48px;right:0;width:244px;padding:7px;border-radius:14px;background:var(--surface);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--border);box-shadow:var(--shadow-lg);animation:pop-in .14s ease}.auth-pop-head{display:flex;align-items:center;gap:11px;padding:8px 9px 11px}.auth-pop-head img,.auth-pop-head .auth-initial{width:40px;height:40px;border-radius:50%;flex:none;overflow:hidden}.auth-pop-info{min-width:0;display:flex;flex-direction:column;gap:1px}.auth-pop-name{font-size:14px;font-weight:650;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.auth-pop-email{font-size:12px;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.auth-pop-signout{display:flex;align-items:center;gap:9px;width:100%;padding:9px 10px;border:none;border-top:1px solid var(--border);border-radius:0 0 9px 9px;background:transparent;color:var(--text);font-family:var(--font);font-size:13.5px;font-weight:550;cursor:pointer;transition:background .12s ease}.auth-pop-signout:hover{background:var(--surface-hover)}.auth-pop-signout svg{color:var(--text-dim)}.board-trigger{display:flex;align-items:center;gap:8px;height:36px;padding:0 9px 0 5px;border:none;border-radius:11px;background:transparent;color:var(--text);font-family:var(--font);font-weight:700;font-size:14px;letter-spacing:-.02em;cursor:pointer;max-width:200px;transition:background .15s ease}.board-trigger:hover{background:var(--surface-hover)}.board-trigger-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-caret{color:var(--text-faint);flex:none}.boards-pop{position:fixed;z-index:200;width:282px;max-width:calc(100vw - 16px);padding:7px;border-radius:16px;background:var(--surface);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--border);box-shadow:var(--shadow-lg);transform-origin:top left;animation:pop-in .14s ease}.boards-head{padding:6px 10px 8px;font-size:11.5px;font-weight:600;color:var(--text-faint);text-transform:uppercase;letter-spacing:.05em}.boards-list{max-height:min(50vh,420px);overflow-y:auto;display:flex;flex-direction:column;gap:2px}.board-row{display:flex;align-items:center;gap:4px;padding:7px 6px 7px 4px;border-radius:9px;cursor:pointer;transition:background .12s ease}.board-row:hover{background:var(--surface-hover)}.board-row.active{background:rgb(var(--accent-brand) / .14)}.board-check{width:18px;flex:none;color:rgb(var(--accent-brand));display:grid;place-items:center}.board-name-text{flex:1;min-width:0;display:flex;align-items:center;gap:8px;font-size:14px;font-weight:550;color:var(--text);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.board-count{flex:none;font-size:11px;font-weight:600;color:var(--text-faint);background:var(--surface-2);padding:1px 7px;border-radius:20px}.board-share-badge{flex:none;display:inline-grid;place-items:center;width:19px;height:19px;border-radius:6px;color:rgb(var(--accent-brand));background:rgb(var(--accent-brand) / .14)}.note-share-badge.icon-btn{color:rgb(var(--accent-brand));background:rgb(var(--accent-brand) / .12)}.note-share-badge.icon-btn:hover{background:rgb(var(--accent-brand) / .22)}.board-rename{flex:1;min-width:0;border:1px solid var(--border-strong);border-radius:7px;background:var(--surface-solid);color:var(--text);font-family:var(--font);font-size:14px;font-weight:550;padding:4px 8px;outline:none}.board-row-actions{display:flex;gap:0;flex:none;opacity:0;transition:opacity .12s ease}.board-row:hover .board-row-actions,.board-row.active .board-row-actions{opacity:1}.boards-add{display:flex;align-items:center;gap:8px;width:100%;margin-top:5px;padding:9px 10px;border:none;border-radius:9px;cursor:pointer;background:transparent;color:rgb(var(--accent-brand));font-family:var(--font);font-size:13.5px;font-weight:600;transition:background .12s ease}.boards-add:hover{background:var(--surface-hover)}.icon-btn.danger:hover{background:#f43f5e29;color:#fb7185}.icon-btn:disabled{opacity:.3;cursor:default}.icon-btn:disabled:hover{background:transparent;color:var(--text-dim)}.context-menu{position:fixed;z-index:200;min-width:196px;padding:6px;border-radius:13px;transform-origin:top;animation:pop-in .13s ease}.menu-item{display:flex;align-items:center;gap:10px;width:100%;height:36px;padding:0 10px;border:none;border-radius:9px;background:transparent;color:var(--text);font-family:var(--font);font-size:13.5px;font-weight:500;cursor:pointer;text-align:left;white-space:nowrap;transition:background .12s ease}.menu-item:hover{background:var(--surface-hover)}.menu-item svg{color:var(--text-dim);flex:none}.menu-item span{flex:1}.menu-item kbd{font-family:var(--font);font-size:11px;color:var(--text-faint);background:var(--surface-2);padding:2px 6px;border-radius:5px}.menu-item.danger{color:#fb7185}.menu-item.danger svg{color:#fb7185}.menu-item.danger:hover{background:#f43f5e24}.menu-sep{height:1px;background:var(--border);margin:5px 6px}.menu-fontsize{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:3px 6px 3px 10px}.menu-fontsize-label{display:flex;align-items:center;gap:10px;font-size:13.5px;font-weight:500;color:var(--text);white-space:nowrap}.menu-fontsize-label svg{color:var(--text-dim);flex:none}.menu-stepper{display:flex;align-items:center;gap:1px;flex:none;background:var(--surface-2);border-radius:9px;padding:2px}.menu-step-btn{display:grid;place-items:center;width:26px;height:26px;border:none;border-radius:7px;background:transparent;color:var(--text);cursor:pointer;transition:background .12s ease}.menu-step-btn:hover{background:var(--surface-hover)}.menu-step-btn:disabled{opacity:.35;cursor:default}.menu-step-btn:disabled:hover{background:transparent}.menu-step-val{min-width:42px;text-align:center;font-size:12.5px;font-weight:600;color:var(--text);font-variant-numeric:tabular-nums}.palette-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:150;background:#0000006b;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;justify-content:center;align-items:flex-start;padding:calc(12vh + var(--safe-t)) 16px 16px;animation:fade-in .16s ease}.palette{width:min(560px,100%);border-radius:16px;overflow:hidden;animation:pop-in .18s ease}.palette-input{display:flex;align-items:center;gap:11px;padding:15px 16px;border-bottom:1px solid var(--border);color:var(--text-dim)}.palette-input input{flex:1;border:none;background:transparent;color:var(--text);font-family:var(--font);font-size:15.5px;outline:none}.palette-input input::placeholder{color:var(--text-faint)}.palette-input kbd{font-family:var(--font);font-size:11px;color:var(--text-faint);border:1px solid var(--border-strong);padding:2px 6px;border-radius:5px}.palette-list{max-height:min(52vh,440px);overflow-y:auto;padding:7px}.palette-item{display:flex;align-items:center;gap:11px;width:100%;padding:9px 11px;border:none;border-radius:10px;background:transparent;color:var(--text);cursor:pointer;text-align:left}.palette-item.active{background:var(--surface-hover)}.palette-dot{flex:none;width:12px;height:12px;border-radius:50%;background:rgb(var(--accent, 148 163 184));display:grid;place-items:center;color:#fff}.palette-dot.create{width:22px;height:22px;border-radius:7px;background:rgb(var(--accent-brand))}.palette-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.palette-title{font-size:14px;font-weight:550;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.palette-snippet{font-size:12px;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.palette-enter{color:var(--text-faint);flex:none}.palette-board{flex:none;font-size:11px;font-weight:600;color:var(--text-dim);background:var(--surface-2);padding:2px 9px;border-radius:20px;max-width:120px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.palette mark{background:rgb(var(--accent-brand) / .32);color:inherit;border-radius:3px;padding:0 1px}.palette-empty{display:flex;flex-direction:column;align-items:center;gap:8px;padding:34px;color:var(--text-faint);font-size:13.5px}.archive-panel{width:min(540px,100%);border-radius:16px;overflow:hidden;animation:pop-in .18s ease;display:flex;flex-direction:column;max-height:min(76vh,680px)}.archive-head{display:flex;align-items:baseline;flex-wrap:wrap;gap:6px 12px;padding:16px 18px 14px;border-bottom:1px solid var(--border)}.archive-head-title{display:flex;align-items:center;gap:9px;font-size:16px;font-weight:700;letter-spacing:-.01em;color:var(--text)}.archive-head-title svg{color:var(--text-dim)}.archive-head-count{font-size:12px;font-weight:700;color:var(--text-dim);background:var(--surface-2);padding:1px 8px;border-radius:20px}.archive-head-note{font-size:12px;color:var(--text-faint)}.archive-tools{display:flex;align-items:center;gap:9px;padding:10px 12px;border-bottom:1px solid var(--border)}.archive-search{flex:1;min-width:0;display:flex;align-items:center;gap:8px;height:36px;padding:0 10px;background:var(--surface-2);border-radius:10px}.archive-search>svg{flex:none;color:var(--text-dim)}.archive-search-input{flex:1;min-width:0;border:none;background:transparent;outline:none;font-family:var(--font);font-size:14px;color:var(--text)}.archive-search-input::placeholder{color:var(--text-faint)}.archive-search-clear{flex:none;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:6px;background:transparent;color:var(--text-dim);cursor:pointer;transition:background .12s ease,color .12s ease}.archive-search-clear:hover{background:var(--surface-hover);color:var(--text)}.archive-view{flex:none;display:flex;gap:2px;padding:2px;background:var(--surface-2);border-radius:10px}.archive-view-btn{display:inline-flex;align-items:center;justify-content:center;width:34px;height:32px;border:none;border-radius:8px;background:transparent;color:var(--text-dim);cursor:pointer;transition:background .12s ease,color .12s ease}.archive-view-btn:hover{color:var(--text)}.archive-view-btn.active{background:rgb(var(--accent-brand) / .16);color:rgb(var(--accent-brand))}.archive-list{overflow-y:auto;padding:7px;display:flex;flex-direction:column;gap:2px}.archive-item{display:flex;align-items:center;gap:11px;padding:9px 10px;border-radius:11px;opacity:.74;transition:background .12s ease,opacity .12s ease}.archive-item:hover{background:var(--surface-hover);opacity:1}.archive-dot{flex:none;width:11px;height:11px;border-radius:50%;background:rgb(var(--accent, 148 163 184));filter:saturate(.6)}.archive-thumb{flex:none;width:34px;height:34px;border-radius:8px;overflow:hidden;display:grid;place-items:center;background:var(--surface-hover);color:var(--text-dim);box-shadow:0 0 0 1px var(--border)}.archive-thumb img{width:100%;height:100%;object-fit:cover}.archive-list.as-grid .archive-thumb{position:absolute;top:11px;right:11px}.archive-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.archive-title{font-size:14px;font-weight:600;color:var(--text);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.archive-snippet{font-size:12px;color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.archive-meta{display:flex;align-items:center;gap:8px;margin-top:1px}.archive-left{display:inline-flex;align-items:center;gap:4px;font-size:11px;font-weight:600;color:var(--text-faint)}.archive-left svg{flex:none}.archive-board{font-size:11px;font-weight:600;color:var(--text-dim);background:var(--surface-2);padding:1px 8px;border-radius:20px;max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.archive-actions{display:flex;align-items:center;gap:4px;flex:none}.archive-btn-act{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 11px;border:none;border-radius:9px;background:var(--surface-2);color:var(--text);font-family:var(--font);font-size:12.5px;font-weight:600;cursor:pointer;transition:background .12s ease,color .12s ease}.archive-btn-act svg{flex:none;color:var(--text-dim)}.archive-btn-act:hover{background:var(--surface-hover)}.archive-btn-act.danger{padding:0;width:32px;justify-content:center}.archive-btn-act.danger:hover{background:#f43f5e29;color:#fb7185}.archive-btn-act.danger:hover svg{color:#fb7185}.archive-empty{display:flex;flex-direction:column;align-items:center;gap:9px;padding:46px 24px;text-align:center;color:var(--text-faint)}.archive-empty>span:first-of-type{font-size:14px;font-weight:600;color:var(--text-dim)}.archive-empty-hint{font-size:12.5px}.archive-list.as-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:8px;align-content:start}.archive-list.as-grid .archive-empty{grid-column:1 / -1}.archive-list.as-grid .archive-item{position:relative;flex-direction:column;align-items:stretch;gap:7px;padding:12px 13px;background:var(--surface-2);border-radius:12px}.archive-list.as-grid .archive-item:hover{background:var(--surface-hover)}.archive-list.as-grid .archive-dot{position:absolute;top:13px;right:13px}.archive-list.as-grid .archive-title{white-space:normal;padding-right:16px}.archive-list.as-grid .archive-snippet{white-space:normal;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.archive-list.as-grid .archive-meta{flex-wrap:wrap}.archive-list.as-grid .archive-actions{margin-top:auto}.archive-list.as-grid .archive-btn-act:not(.danger){flex:1;justify-content:center}.minimap{position:fixed;left:calc(14px + var(--safe-l));bottom:calc(14px + var(--safe-b));z-index:40;width:196px;height:128px;border-radius:12px;overflow:hidden;cursor:pointer;touch-action:none}.mm-note{position:absolute;border-radius:2px;background:rgb(var(--accent) / .75)}.mm-view{position:absolute;border:1.5px solid rgb(var(--accent-brand));background:rgb(var(--accent-brand) / .14);border-radius:3px;pointer-events:none}.chat-fab{position:fixed;right:calc(16px + var(--safe-r));bottom:calc(16px + var(--safe-b));z-index:72;width:54px;height:54px;display:grid;place-items:center;border:none;border-radius:16px;color:#fff;cursor:pointer;background:linear-gradient(140deg,rgb(var(--accent-brand)),rgb(var(--accent-brand) / .78));box-shadow:0 8px 22px rgb(var(--accent-brand) / .45),var(--shadow);transition:transform .16s cubic-bezier(.16,1,.3,1),box-shadow .16s ease}.chat-fab:hover{transform:translateY(-2px) scale(1.04)}.chat-fab:active{transform:scale(.96)}.chat-fab-online{position:absolute;top:-5px;left:-7px;display:inline-flex;align-items:center;gap:4px;height:21px;padding:0 8px;border-radius:11px;background:var(--surface-solid);color:var(--text);font-size:11.5px;font-weight:700;font-variant-numeric:tabular-nums;border:1px solid var(--border);box-shadow:var(--shadow)}.chat-dot{width:7px;height:7px;border-radius:50%;background:#22c55e;box-shadow:0 0 0 3px #22c55e38}.chat-fab-badge{position:absolute;top:-5px;right:-5px;min-width:21px;height:21px;padding:0 6px;display:inline-flex;align-items:center;justify-content:center;border-radius:11px;background:#ef4444;color:#fff;font-size:11.5px;font-weight:700;border:2px solid var(--bg-0)}.chat-panel{position:fixed;right:calc(16px + var(--safe-r));bottom:calc(16px + var(--safe-b));z-index:90;width:340px;max-width:calc(100vw - 32px);height:462px;max-height:calc(100vh - 120px);display:flex;flex-direction:column;border-radius:18px;overflow:hidden;animation:chat-pop .18s cubic-bezier(.16,1,.3,1)}@keyframes chat-pop{0%{opacity:0;transform:translateY(14px) scale(.98)}}.chat-head{display:flex;align-items:center;gap:9px;padding:12px 11px 11px 14px;border-bottom:1px solid var(--border);flex:none}.chat-head-title{display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:700;letter-spacing:-.01em}.chat-head-title svg{color:rgb(var(--accent-brand))}.chat-online{display:inline-flex;align-items:center;gap:5px;margin-left:auto;height:24px;padding:0 10px;border-radius:12px;background:var(--surface-2);color:var(--text-dim);font-size:12px;font-weight:650;font-variant-numeric:tabular-nums}.chat-online svg{color:#22c55e}.chat-x{display:grid;place-items:center;width:30px;height:30px;border:none;border-radius:9px;background:transparent;color:var(--text-dim);cursor:pointer;transition:background .15s ease,color .15s ease}.chat-x:hover{background:var(--surface-hover);color:var(--text)}.chat-body{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:13px 12px 8px;display:flex;flex-direction:column;gap:9px;-webkit-overflow-scrolling:touch}.chat-body::-webkit-scrollbar{width:8px}.chat-body::-webkit-scrollbar-thumb{background:var(--border-strong);border-radius:8px;border:2px solid transparent;background-clip:padding-box}.chat-msg{display:flex;gap:8px;align-items:flex-end;max-width:100%}.chat-msg.grouped{margin-top:-5px}.chat-msg.mine{flex-direction:row-reverse}.chat-ava,.chat-ava-spacer{width:28px;height:28px;flex:none}.chat-ava{border-radius:50%;object-fit:cover}.chat-ava-initial{display:grid;place-items:center;color:#fff;font-size:12px;font-weight:700}.chat-bubble-wrap{display:flex;flex-direction:column;gap:3px;min-width:0;max-width:80%}.chat-msg.mine .chat-bubble-wrap{align-items:flex-end}.chat-name{padding:0 4px;font-size:11px;font-weight:650;color:var(--text-dim)}.chat-bubble{display:flex;flex-wrap:wrap;align-items:baseline;gap:0 8px;padding:7px 11px;border-radius:15px 15px 15px 6px;background:var(--surface-2);border:1px solid var(--border);font-size:13.5px;line-height:1.42;color:var(--text)}.chat-msg.mine .chat-bubble{border-radius:15px 15px 6px;background:rgb(var(--accent-brand));border-color:transparent;color:#fff}.chat-text{flex:0 1 auto;min-width:0;white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere}.chat-time{flex:none;margin-left:auto;font-size:10px;color:var(--text-faint);transform:translateY(1px)}.chat-msg.mine .chat-time{color:#ffffffb8}.chat-empty,.chat-gate{margin:auto;text-align:center;color:var(--text-dim)}.chat-empty{padding:26px 18px;font-size:13px}.chat-gate{display:flex;flex-direction:column;align-items:center;gap:12px;padding:26px 20px}.chat-gate svg{color:rgb(var(--accent-brand));opacity:.85}.chat-gate p{margin:0;max-width:220px;font-size:13px;line-height:1.45}.chat-signin{display:inline-flex;align-items:center;gap:8px;height:38px;padding:0 16px;border:none;border-radius:11px;background:rgb(var(--accent-brand));color:#fff;font-family:var(--font);font-size:13px;font-weight:600;cursor:pointer;box-shadow:0 4px 14px rgb(var(--accent-brand) / .4);transition:background .15s ease}.chat-signin:hover{background:rgb(var(--accent-brand) / .9)}.chat-compose{display:flex;align-items:center;gap:8px;padding:10px;border-top:1px solid var(--border);flex:none}.chat-input{flex:1;min-width:0;height:40px;padding:0 14px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2);color:var(--text);font-family:var(--font);font-size:14px;outline:none;transition:border-color .15s ease}.chat-input:focus{border-color:rgb(var(--accent-brand) / .6)}.chat-input::placeholder{color:var(--text-faint)}.chat-send{flex:none;width:40px;height:40px;display:grid;place-items:center;border:none;border-radius:12px;background:rgb(var(--accent-brand));color:#fff;cursor:pointer;transition:background .15s ease,opacity .15s ease,transform .1s ease}.chat-send:hover{background:rgb(var(--accent-brand) / .9)}.chat-send:active{transform:scale(.94)}.chat-send:disabled{opacity:.4;cursor:default}.chat-send:disabled:hover{background:rgb(var(--accent-brand))}.chat-cooldown{font-size:13px;font-weight:700;font-variant-numeric:tabular-nums}@media(max-width:680px){.chat-fab{width:50px;height:50px;right:calc(12px + var(--safe-r));bottom:calc(86px + var(--safe-b))}.chat-panel{right:calc(10px + var(--safe-r));left:calc(10px + var(--safe-l));bottom:calc(10px + var(--safe-b));width:auto;height:72vh;max-height:calc(100vh - 80px)}.chat-input{font-size:16px}}.app.drawing .chat-fab,.app.drawing .chat-panel{display:none}.toast{position:fixed;bottom:calc(20px + var(--safe-b));left:50%;transform:translate(-50%);z-index:210;padding:11px 18px;border-radius:12px;font-size:13.5px;font-weight:550;color:var(--text);animation:toast-in .24s cubic-bezier(.16,1,.3,1)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,12px)}}.empty{position:fixed;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;pointer-events:none;z-index:1}.empty-card{text-align:center;color:var(--text-dim);animation:fade-in .5s ease}.empty-card h2{margin:18px 0 6px;font-size:20px;font-weight:700;color:var(--text);letter-spacing:-.02em}.empty-card p{margin:0;font-size:14px}.empty-icon{display:inline-grid;place-items:center;width:64px;height:64px;border-radius:20px;background:var(--surface);border:1px solid var(--border);color:rgb(var(--accent-brand));box-shadow:var(--shadow)}.kbd{display:inline-block;padding:2px 7px;margin:0 2px;border-radius:6px;background:var(--surface-solid);border:1px solid var(--border-strong);font-size:12px;font-weight:600;color:var(--text)}@media(hover:none){.note-actions,.board-row-actions{opacity:1}.note.editing .note-image .img-del,.note-file-block .note-file-dl,.note-file-block .img-del{display:grid}.note-file-block .rz-att{display:block}.rz-t,.rz-b{height:14px}.rz-l,.rz-r{width:14px}.rz-tl,.rz-tr,.rz-bl,.rz-br{width:22px;height:22px}.rz-br:after{opacity:1}.note-grip{height:28px}.grip-bar{width:42px;height:5px}}.m-topbar,.m-bottombar{display:none}@media(max-width:680px){.desktop-only{display:none!important}.toolbar{display:none}.m-topbar{position:fixed;top:calc(8px + var(--safe-t));left:calc(62px + var(--safe-l));z-index:50;display:flex;max-width:calc(100vw - 140px - var(--safe-l) - var(--safe-r))}.m-topbar .board-trigger{height:44px;gap:8px;padding:0 11px 0 8px;border-radius:15px;background:var(--surface);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--border);box-shadow:var(--shadow-lg)}.m-topbar .board-trigger-name{max-width:40vw;font-size:14px;font-weight:600}.m-bottombar{position:fixed;left:50%;bottom:calc(8px + var(--safe-b));transform:translate(-50%);z-index:55;display:flex;align-items:stretch;gap:2px;width:calc(100vw - 20px);max-width:470px;padding:6px;border-radius:22px;background:var(--surface);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--border);box-shadow:var(--shadow-lg)}.app.drawing .m-bottombar{display:none}.m-tab{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;height:56px;border:none;border-radius:16px;background:transparent;color:var(--text-dim);font-family:var(--font);font-size:11px;font-weight:600;letter-spacing:-.01em;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background .15s ease,color .15s ease}.m-tab svg{flex:none}.m-tab span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.m-tab:active{background:var(--surface-hover)}.m-tab.active{color:rgb(var(--accent-brand));background:rgb(var(--accent-brand) / .12)}.m-tab.primary{color:rgb(var(--accent-brand))}.selbar{bottom:calc(86px + var(--safe-b));max-width:calc(100vw - 20px)}.toast{bottom:calc(86px + var(--safe-b))}.drawbar{left:10px;right:10px;bottom:calc(8px + var(--safe-b));transform:none;width:auto;max-width:none;justify-content:center;padding:8px;gap:5px;border-radius:18px}.draw-tool{width:44px;height:44px}.draw-size{width:40px;height:44px}.draw-swatch{width:26px;height:26px}.draw-done{height:44px}.note-body,.note-md{font-size:calc(16px * var(--note-scale, 1))}.icon-btn{width:34px;height:34px}.minimap{display:none}.note-actions{opacity:1}.palette-backdrop{padding-top:calc(8vh + var(--safe-t))}.boards-pop{width:calc(100vw - 16px);border-radius:14px}.board-row{padding:9px 6px}.board-row-actions .icon-btn{width:34px;height:34px}.auth-wrap,.auth-btn{top:calc(8px + var(--safe-t));right:calc(10px + var(--safe-r))}.auth-btn{width:44px;height:44px;padding:0;justify-content:center;border-radius:50%}.archive-btn{top:calc(8px + var(--safe-t));left:calc(10px + var(--safe-l));width:44px;height:44px;padding:0;gap:0;justify-content:center;border-radius:50%}.archive-btn-label{display:none}.archive-badge{position:absolute;top:-3px;right:-3px;box-shadow:0 0 0 2px var(--bg-0)}.archive-panel{max-height:min(82vh,680px)}.archive-btn-act span{display:none}.archive-btn-act{padding:0;width:36px;justify-content:center}}.confirm-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:220;display:flex;align-items:center;justify-content:center;padding:16px;background:#0000006b;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fade-in .16s ease}.confirm-dialog{width:min(380px,100%);padding:20px 20px 16px;border-radius:16px;background:var(--surface);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--border);box-shadow:var(--shadow-lg);animation:pop-in .18s ease}.confirm-title{font-size:15px;font-weight:650;color:var(--text);margin-bottom:6px}.confirm-message{font-size:14px;line-height:1.5;color:var(--text);white-space:pre-wrap}.confirm-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}.confirm-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:transparent;color:var(--text);font:inherit;font-size:13.5px;font-weight:600;padding:8px 16px;border-radius:10px;cursor:pointer;transition:background .14s ease,border-color .14s ease}.confirm-btn:hover{background:var(--border-strong)}.confirm-btn:focus-visible{outline:none;box-shadow:0 0 0 2px rgb(var(--accent-brand) / .6)}.confirm-btn.primary{border-color:transparent;background:rgb(var(--accent-brand));color:#fff}.confirm-btn.primary:hover{background:rgb(var(--accent-brand) / .85)}.confirm-btn.primary.danger{background:#e2483d}.confirm-btn.primary.danger:hover{background:#c93a30}.graph{position:fixed;top:0;right:0;bottom:0;left:0;z-index:150;overflow:hidden;background:radial-gradient(1100px 760px at 78% -8%,rgba(99,102,241,.18),transparent 60%),radial-gradient(900px 680px at -8% 108%,rgba(56,189,248,.12),transparent 55%),radial-gradient(70% 70% at 50% 45%,#0c1018,#06080e 92%);animation:fade-in .18s ease;touch-action:none;user-select:none;-webkit-user-select:none}.graph:before{content:"";position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;pointer-events:none;opacity:.4;background-repeat:repeat;background-size:320px 320px;background-image:radial-gradient(2px 2px at 25% 35%,#fff,transparent),radial-gradient(1px 1px at 65% 20%,rgba(255,255,255,.8),transparent),radial-gradient(1.5px 1.5px at 80% 70%,rgba(255,255,255,.7),transparent),radial-gradient(1px 1px at 40% 80%,rgba(255,255,255,.6),transparent),radial-gradient(1.5px 1.5px at 12% 62%,rgba(255,255,255,.6),transparent),radial-gradient(1px 1px at 90% 42%,rgba(255,255,255,.55),transparent)}.graph-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;cursor:grab}.graph-svg:active{cursor:grabbing}.graph-edge{stroke:#a0afd738;stroke-width:1;fill:none;vector-effect:non-scaling-stroke;transition:opacity .15s ease}.graph-edge.tag{stroke:#96a0cd29;stroke-dasharray:2 4}.graph-edge.hot{stroke:#c3d2ffbf;stroke-width:1.6}.graph-node{cursor:pointer;transition:opacity .15s ease}.graph-dot{fill:rgb(var(--accent, 148 161 184));stroke:#ffffffb3;stroke-width:.6;filter:drop-shadow(0 0 4px rgb(var(--accent, 148 161 184) / .55))}.graph-node.tag .graph-dot{fill:#b4bee429;stroke:#c3cdf0b3;stroke-width:1.4;filter:none}.graph-node:hover .graph-dot,.graph-node.hot .graph-dot{filter:drop-shadow(0 0 9px rgb(var(--accent, 148 161 184) / .9))}.graph-label{fill:#d2d8ea;font-size:12px;font-weight:550;text-anchor:middle;paint-order:stroke;stroke:#05070dd9;stroke-width:3px;display:none;pointer-events:none}.graph-node.tag .graph-label{fill:#aeb6d6;font-style:italic}.graph.show-labels .graph-label,.graph-node.hot .graph-label{display:block}.graph.dimming .graph-node:not(.hot){opacity:.16}.graph.dimming .graph-edge:not(.hot){opacity:.05}.graph-bar{position:absolute;top:calc(12px + var(--safe-t));left:50%;transform:translate(-50%);z-index:2;display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:center;max-width:calc(100vw - 24px);padding:8px 10px;border-radius:14px;background:var(--surface);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--border);box-shadow:var(--shadow-lg);animation:pop-in .18s ease}.graph-title{font-weight:650;font-size:14px;color:var(--text);padding-left:4px}.graph-count{font-size:12px;color:var(--text-dim);white-space:nowrap}.graph-spacer{flex:1;min-width:4px}.graph-zoom{position:absolute;right:calc(16px + var(--safe-r));bottom:calc(16px + var(--safe-b));z-index:2;display:flex;flex-direction:column;gap:2px;padding:4px;border-radius:12px;background:var(--surface);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--border);box-shadow:var(--shadow-lg)}.graph-zoom .graph-icon-btn{width:36px;height:36px}.graph-toggle{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:9px;border:1px solid var(--border);background:transparent;color:var(--text-dim);font-size:13px;font-weight:550;cursor:pointer;white-space:nowrap;transition:background .14s ease,color .14s ease,border-color .14s ease}.graph-toggle:hover{background:var(--surface-hover);color:var(--text)}.graph-toggle.on{color:rgb(var(--accent-brand));border-color:rgb(var(--accent-brand) / .55);background:rgb(var(--accent-brand) / .12)}.graph-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:9px;border:none;background:transparent;color:var(--text-dim);cursor:pointer;transition:background .14s ease,color .14s ease}.graph-icon-btn:hover{background:var(--surface-hover);color:var(--text)}.graph-icon-btn.close:hover{background:#e2483d;color:#fff}.graph-empty{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;line-height:1.7;color:#aeb6d6;font-size:15px;max-width:420px;padding:0 24px}.graph-empty b{color:#d2d8ea}@media(max-width:680px){.graph-bar{gap:6px;padding:7px 8px}.graph-title,.graph-count{display:none}.graph-toggle{padding:6px 8px;font-size:12px}}.selbar-btn.active{background:rgb(var(--accent-brand) / .16);color:rgb(var(--accent-brand))}.selbar-btn.active svg{color:rgb(var(--accent-brand))}.selbar-color-wrap{position:relative;display:flex}.selbar-colors{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);display:grid;grid-template-columns:repeat(6,1fr);gap:7px;padding:9px;border-radius:12px;background:var(--surface-solid);border:1px solid var(--border);box-shadow:var(--shadow-lg);animation:pop-in .16s ease;z-index:5}.app.selecting .canvas{cursor:default}.app.selecting .draw-cursor{display:none!important}.stroke.sel{filter:drop-shadow(0 0 3px rgba(236,72,153,.95))}.stroke-selbox{fill:#ec48990f;stroke:#ec4899;stroke-width:1.5;stroke-dasharray:5 4;pointer-events:none}.stroke-marquee{fill:rgb(var(--accent-brand) / .1);stroke:rgb(var(--accent-brand));stroke-width:1.5;stroke-dasharray:4 4;pointer-events:none}.draw-selinfo{gap:8px;padding:0 4px}.draw-selcount{font-size:12.5px;font-weight:600;color:var(--text-dim);white-space:nowrap;font-variant-numeric:tabular-nums}.settings-panel{width:min(520px,100%);border-radius:16px;overflow:hidden;animation:pop-in .18s ease;display:flex;flex-direction:column;max-height:min(82vh,720px)}.settings-head{display:flex;align-items:center;justify-content:space-between;padding:15px 14px 14px 18px;border-bottom:1px solid var(--border)}.settings-head-title{display:flex;align-items:center;gap:9px;font-size:16px;font-weight:700;letter-spacing:-.01em}.settings-head-title svg{color:var(--text-dim)}.settings-close{display:grid;place-items:center;width:34px;height:34px;border:none;border-radius:9px;background:transparent;color:var(--text-dim);cursor:pointer;transition:background .12s ease,color .12s ease}.settings-close:hover{background:var(--surface-hover);color:var(--text)}.settings-body{overflow-y:auto;padding:8px 12px 14px}.settings-section{padding:8px 0}.settings-section+.settings-section{border-top:1px solid var(--border)}.settings-section-title{font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--text-faint);padding:4px 8px 8px}.settings-row{display:flex;align-items:center;gap:12px;width:100%;padding:10px 8px;border:none;border-radius:11px;background:transparent;color:var(--text);font-family:var(--font);text-align:left;cursor:pointer;transition:background .12s ease}.settings-row:not(.as-static):hover{background:var(--surface-hover)}.settings-row.as-static{cursor:default}.settings-row-icon{display:grid;place-items:center;width:36px;height:36px;flex:none;border-radius:10px;background:var(--surface-2);color:var(--text-dim)}.settings-row-text{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.settings-row-label{font-size:14px;font-weight:600}.settings-row-hint{font-size:12px;color:var(--text-dim);line-height:1.35}.settings-row.as-block{padding-bottom:4px}.appearance-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:2px 8px 8px}.appearance-item{display:flex;flex-direction:column;gap:6px;padding:6px;border:1px solid var(--border);border-radius:12px;background:var(--surface-2);color:var(--text-dim);font-family:var(--font);cursor:pointer;transition:border-color .14s ease,background .14s ease,color .14s ease}.appearance-item:hover{border-color:var(--border-strong)}.appearance-item.active{border-color:rgb(var(--accent-brand));background:rgb(var(--accent-brand) / .1);color:var(--text)}.appearance-name{font-size:12px;font-weight:600;text-align:center}.appearance-thumb{height:44px;border-radius:8px;border:1px solid var(--border);background-color:var(--bg-0);overflow:hidden}.appearance-item.active .appearance-thumb{border-color:rgb(var(--accent-brand) / .5)}.appearance-thumb[data-style=dots]{background:radial-gradient(circle,var(--dot) 1.2px,transparent 1.8px) 0 0 / 9px 9px,var(--surface)}.appearance-thumb[data-style=grid]{background:linear-gradient(var(--dot) 1px,transparent 1px) 0 0 / 14px 14px,linear-gradient(90deg,var(--dot) 1px,transparent 1px) 0 0 / 14px 14px,var(--surface)}.app[data-theme=light] .appearance-thumb[data-style=blueprint]{background:linear-gradient(rgba(37,99,235,.28) 1px,transparent 1px) 0 0 / 11px 11px,linear-gradient(90deg,rgba(37,99,235,.28) 1px,transparent 1px) 0 0 / 11px 11px,linear-gradient(160deg,#e9f1fc,#dae7f7)}.app[data-theme=dark] .appearance-thumb[data-style=blueprint]{background:linear-gradient(rgba(132,178,255,.22) 1px,transparent 1px) 0 0 / 11px 11px,linear-gradient(90deg,rgba(132,178,255,.22) 1px,transparent 1px) 0 0 / 11px 11px,linear-gradient(160deg,#0f1626,#0a0f1c)}.appearance-thumb[data-style=space]{background:radial-gradient(circle at 22% 32%,#fff .8px,transparent 1.4px) 0 0 / 26px 26px,radial-gradient(circle at 68% 62%,#fff .7px,transparent 1.3px) 4px 8px / 34px 34px,radial-gradient(220px 120px at 72% 8%,rgba(120,96,210,.5),transparent 60%),linear-gradient(160deg,#0a0b16,#06070d)}.appearance-thumb[data-style=aurora]{background:radial-gradient(120px 90px at 8% -10%,rgb(var(--accent-brand) / .6),transparent 62%),radial-gradient(120px 90px at 105% 110%,rgba(34,211,238,.5),transparent 62%),var(--surface)}.appearance-thumb[data-style=plain]{background:linear-gradient(160deg,var(--bg-1),var(--bg-0))}.accent-row{display:flex;flex-wrap:wrap;gap:9px;padding:2px 8px 8px}.accent-dot{width:28px;height:28px;border-radius:50%;border:2px solid transparent;padding:0;display:grid;place-items:center;color:#fff;cursor:pointer;box-shadow:inset 0 0 0 1px #00000024;transition:transform .1s ease,box-shadow .14s ease}.accent-dot:hover{transform:scale(1.12)}.accent-dot.active{box-shadow:0 0 0 2px var(--surface-solid),0 0 0 4px var(--border-strong),inset 0 0 0 1px #00000024;transform:scale(1.05)}.accent-dot:active{transform:scale(.94)}.note-thumb{--accent: var(--accent-brand);position:relative;height:48px;border-radius:9px;border:1px solid var(--border);padding:9px 9px 0;display:flex;flex-direction:column;gap:4px;overflow:hidden;box-shadow:var(--shadow);background:linear-gradient(90deg,rgb(var(--accent) / .9),rgb(var(--accent) / .35)) top / 100% 3px no-repeat,linear-gradient(180deg,rgb(var(--accent) / .14),rgb(var(--accent) / .04)),var(--surface-solid)}.note-thumb-title{height:5px;width:58%;border-radius:3px;background:rgb(var(--accent) / .6)}.note-thumb-line{height:4px;border-radius:3px;background:var(--text-faint);opacity:.45}.note-thumb-line.short{width:60%}.note-thumb[data-style=filled]{background:linear-gradient(180deg,rgb(var(--accent) / .2),rgb(var(--accent) / .1)),var(--surface-solid);border-color:rgb(var(--accent) / .38)}.note-thumb[data-style=outline]{background:var(--surface-solid);border:1.5px solid rgb(var(--accent) / .5)}.note-thumb[data-style=soft]{border-color:transparent;border-radius:13px;background:linear-gradient(180deg,rgb(var(--accent) / .13),rgb(var(--accent) / .05)),var(--surface-solid);box-shadow:0 6px 16px -6px rgb(var(--accent) / .5),var(--shadow)}.note-thumb[data-style=sticky]{border:none;border-radius:3px 3px 10px;background:linear-gradient(155deg,rgb(var(--accent) / .42),rgb(var(--accent) / .24)),var(--surface-solid);box-shadow:0 8px 16px -8px #0006}.note-thumb[data-style=sticky]:after{content:"";position:absolute;right:0;bottom:0;border-bottom:14px solid var(--surface-2);border-left:14px solid transparent;filter:drop-shadow(-1px -1px 1px rgb(0 0 0 / .18))}.note-thumb[data-style=neon]{border:1.5px solid rgb(var(--accent) / .9);background:linear-gradient(180deg,#121623,#0c0f1a);box-shadow:0 0 12px rgb(var(--accent) / .5),0 0 30px rgb(var(--accent) / .25)}.note-thumb[data-style=neon] .note-thumb-title{background:rgb(var(--accent));box-shadow:0 0 6px rgb(var(--accent) / .8)}.note-thumb[data-style=neon] .note-thumb-line{background:#9fb2d6;opacity:.5}.note-thumb[data-style=terminal]{border:1px solid #29333f;border-radius:8px;background:#0e141b;padding-top:16px}.note-thumb[data-style=terminal]:before{content:"";position:absolute;top:0;left:0;right:0;height:13px;background:#161d26;border-bottom:1px solid #232d38;border-radius:8px 8px 0 0}.note-thumb[data-style=terminal]:after{content:"";position:absolute;top:4.5px;left:8px;width:4px;height:4px;border-radius:50%;background:#ff5f56;box-shadow:7px 0 #ffbd2e,14px 0 #27c93f}.note-thumb[data-style=terminal] .note-thumb-line{background:#8ba1af;opacity:.45}.note-thumb[data-style=polaroid]{border:none;border-radius:2px;background:#fbfaf7;padding-bottom:14px;box-shadow:0 8px 18px -8px #0006}.note-thumb[data-style=polaroid] .note-thumb-title{background:rgb(var(--accent) / .7)}.note-thumb[data-style=polaroid] .note-thumb-line{background:#b8b3aa;opacity:.75}.app[data-note-style=filled] .note{background:linear-gradient(180deg,rgb(var(--accent) / .2),rgb(var(--accent) / .1)),var(--surface-solid);border-color:rgb(var(--accent) / .38)}.app[data-note-style=outline] .note{background:var(--surface-solid);border:1.5px solid rgb(var(--accent) / .5)}.app[data-note-style=soft] .note{border-radius:18px;border-color:transparent;background:linear-gradient(180deg,rgb(var(--accent) / .13),rgb(var(--accent) / .05)),var(--surface-solid);box-shadow:0 9px 26px -9px rgb(var(--accent) / .5),var(--shadow)}.app[data-note-style=sticky] .note{border:none;border-radius:3px 3px 12px;background:linear-gradient(155deg,rgb(var(--accent) / .42),rgb(var(--accent) / .24)),var(--surface-solid);box-shadow:0 13px 24px -11px #0000006b,0 2px 5px #00000029}.app[data-note-style=sticky] .note:after{content:"";position:absolute;right:0;bottom:0;border-bottom:18px solid var(--surface-2);border-left:18px solid transparent;filter:drop-shadow(-1px -1px 1px rgb(0 0 0 / .2));pointer-events:none}.app[data-note-style=neon] .note{--text: #eaf0ff;--text-dim: #a6b6d8;--text-faint: #7285a8;border:1.5px solid rgb(var(--accent) / .9);background:linear-gradient(180deg,#121623,#0c0f1a);box-shadow:0 0 0 1px rgb(var(--accent) / .35),0 0 16px rgb(var(--accent) / .5),0 0 42px rgb(var(--accent) / .28),var(--shadow)}.app[data-note-style=neon] .note .note-title,.app[data-note-style=neon] .note .note-title-md-inner{color:rgb(var(--accent));text-shadow:0 0 9px rgb(var(--accent) / .75)}.app[data-note-style=terminal] .note{--text: #d7e3ec;--text-dim: #8ba1af;--text-faint: #66788a;border:1px solid #29333f;border-radius:10px;background:#0e141b}.app[data-note-style=terminal] .note:before{content:"";position:absolute;top:0;left:0;right:0;height:22px;background:#161d26;border-bottom:1px solid #232d38;pointer-events:none;z-index:1}.app[data-note-style=terminal] .note:after{content:"";position:absolute;top:8px;left:12px;width:7px;height:7px;border-radius:50%;background:#ff5f56;box-shadow:13px 0 #ffbd2e,26px 0 #27c93f;pointer-events:none;z-index:2}.app[data-note-style=terminal] .note-grip{height:22px}.app[data-note-style=terminal] .grip-bar{display:none}.app[data-note-style=terminal] .note.fullscreen{padding-top:22px}.app[data-note-style=polaroid] .note{--text: #2b2b2b;--text-dim: #6a6a6a;--text-faint: #a0a0a0;border:none;border-radius:3px;padding-bottom:26px;background:#fbfaf7;box-shadow:0 14px 28px -12px #00000073,0 2px 6px #0000002e}.app[data-note-style=polaroid] .note:after{content:"";position:absolute;left:16px;bottom:12px;width:42px;height:3px;border-radius:2px;background:rgb(var(--accent) / .75);pointer-events:none}.app[data-note-style] .note.selected{border-color:rgb(var(--accent) / .7);box-shadow:var(--shadow-lg),0 0 0 1px rgb(var(--accent) / .45)}.app[data-note-style] .note.locked{border-style:dashed;border-color:rgb(var(--accent) / .45)}.settings-input{flex:none;width:150px;max-width:46%;padding:7px 10px;border-radius:9px;border:1px solid var(--border);background:var(--surface);color:var(--text);font-family:var(--font);font-size:13px;outline:none;transition:border-color .18s ease}.settings-input:focus{border-color:rgb(var(--accent-brand) / .6)}.settings-input::placeholder{color:var(--text-faint)}.settings-nick{flex:none;display:flex;align-items:center;gap:6px}.settings-nick .settings-input{max-width:none;width:132px}.settings-nick-save{flex:none;display:grid;place-items:center;width:34px;height:34px;padding:0;border:none;border-radius:9px;background:#16a34a;color:#fff;cursor:pointer;transition:background .15s ease,opacity .15s ease,transform .1s ease}.settings-nick-save:hover{background:#15803d}.settings-nick-save:active{transform:scale(.94)}.settings-nick-save:disabled{opacity:.35;cursor:default}.board-row.fixed .board-check svg{color:rgb(var(--accent-brand))}.board-row.fixed{background:rgb(var(--accent-brand) / .07)}.board-row.fixed:hover{background:rgb(var(--accent-brand) / .13)}.board-row.fixed.active{background:rgb(var(--accent-brand) / .18)}.boards-divider{height:1px;margin:7px 8px 5px;background:var(--border)}.switch{flex:none;position:relative;width:42px;height:25px;border-radius:13px;background:var(--border-strong);transition:background .18s ease}.switch.on{background:rgb(var(--accent-brand))}.switch-knob{position:absolute;top:3px;left:3px;width:19px;height:19px;border-radius:50%;background:#fff;box-shadow:0 1px 3px #00000059;transition:transform .18s ease}.switch.on .switch-knob{transform:translate(17px)}.seg{flex:none;display:flex;gap:2px;padding:2px;background:var(--surface-2);border-radius:10px}.seg-btn{display:inline-flex;align-items:center;gap:5px;height:30px;padding:0 11px;border:none;border-radius:8px;background:transparent;color:var(--text-dim);font-family:var(--font);font-size:12.5px;font-weight:600;cursor:pointer;transition:background .12s ease,color .12s ease}.seg-btn:hover{color:var(--text)}.seg-btn.active{background:rgb(var(--accent-brand) / .16);color:rgb(var(--accent-brand))}.seg-btn svg{flex:none}.settings-action{display:flex;align-items:center;gap:12px;width:100%;padding:10px 8px;border:none;border-radius:11px;background:transparent;color:var(--text);font-family:var(--font);text-align:left;cursor:pointer;transition:background .12s ease}.settings-action:hover{background:var(--surface-hover)}.settings-action>svg{flex:none;color:var(--text-dim);width:36px}.settings-action>span{display:flex;flex-direction:column;gap:2px;min-width:0}.settings-action-label{font-size:14px;font-weight:600}.settings-action-hint{font-size:12px;color:var(--text-dim)}.settings-action.danger{color:#fb7185}.settings-action.danger>svg{color:#fb7185}.settings-action.danger .settings-action-hint{color:#f43f5ebf}.settings-action.danger:hover{background:#f43f5e1f}.settings-actions-row{display:flex;flex-direction:column}@media(min-width:681px){.settings-actions-row{flex-direction:row;gap:10px}.settings-actions-row .settings-action{flex:1;min-width:0}}.auth-pop-item{display:flex;align-items:center;gap:9px;width:100%;padding:9px 10px;border:none;border-radius:9px;background:transparent;color:var(--text);font-family:var(--font);font-size:13.5px;font-weight:550;cursor:pointer;transition:background .12s ease}.auth-pop-item:hover{background:var(--surface-hover)}.auth-pop-item svg{color:var(--text-dim);flex:none}.auth-pop-signout{margin-top:2px;border-top:1px solid var(--border);border-radius:0 0 9px 9px}@media(max-width:680px){.selbar{flex-wrap:wrap;justify-content:center;gap:5px;padding:8px 10px}.selbar-count{width:100%;text-align:center;margin:0 0 2px}.settings-panel{max-height:min(86vh,720px)}.seg-btn{padding:0 9px}}.auth-pop-admin svg{color:rgb(var(--accent-brand))}.admin-panel,.blocked-card{background:var(--surface);-webkit-backdrop-filter:var(--glass-blur);backdrop-filter:var(--glass-blur);border:1px solid var(--border);box-shadow:var(--shadow-lg)}.admin-backdrop{z-index:160;align-items:flex-start;padding:calc(5vh + var(--safe-t)) 14px 14px}.admin-panel{width:min(920px,100%);max-height:90vh;border-radius:16px;overflow:hidden;display:flex;flex-direction:column;animation:pop-in .18s ease}.admin-head{display:flex;align-items:center;justify-content:space-between;padding:14px 12px 13px 18px;border-bottom:1px solid var(--border)}.admin-head-title{display:flex;align-items:center;gap:9px;font-size:16px;font-weight:700;letter-spacing:-.01em}.admin-head-title svg{color:var(--text-dim)}.admin-head-actions{display:flex;gap:4px}.admin-icon-btn{display:grid;place-items:center;width:34px;height:34px;border:none;border-radius:9px;background:transparent;color:var(--text-dim);cursor:pointer;transition:background .12s ease,color .12s ease}.admin-icon-btn:hover{background:var(--surface-hover);color:var(--text)}.admin-icon-btn:disabled{opacity:.5;cursor:default}.admin-icon-btn .spin{animation:admin-spin .9s linear infinite}@keyframes admin-spin{to{transform:rotate(360deg)}}.admin-body{overflow-y:auto;padding:14px;display:flex;flex-direction:column;gap:16px}.admin-error{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:10px;font-size:13px;background:#f952521f;color:#f87171;border:1px solid rgba(249,82,82,.28)}.admin-retry{border:none;background:#f9525233;color:inherit;border-radius:8px;padding:5px 10px;cursor:pointer;font-weight:600;white-space:nowrap}.admin-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(148px,1fr));gap:10px}.admin-stat{display:flex;flex-direction:column;gap:2px;padding:13px 14px;border-radius:13px;background:var(--surface-2);border:1px solid var(--border)}.admin-stat-icon{display:grid;place-items:center;width:30px;height:30px;border-radius:9px;margin-bottom:5px;background:rgb(var(--tone) / .16);color:rgb(var(--tone))}.admin-stat-value{font-size:26px;font-weight:800;letter-spacing:-.02em;line-height:1.05}.admin-stat-label{font-size:12px;color:var(--text-dim);font-weight:550}.admin-stat[data-tone=sky]{--tone: 66 165 252}.admin-stat[data-tone=amber]{--tone: 249 191 47}.admin-stat[data-tone=violet]{--tone: 166 116 252}.admin-stat[data-tone=emerald]{--tone: 33 209 138}.admin-stat[data-tone=rose]{--tone: 251 105 170}.admin-stat[data-tone=cyan]{--tone: 32 205 224}.admin-stat[data-tone=indigo]{--tone: 116 122 252}.admin-actions-row{display:flex;justify-content:flex-end;margin-top:10px}.admin-clear-chat{display:inline-flex;align-items:center;gap:7px;padding:8px 13px;border-radius:10px;border:1px solid rgba(249,82,82,.35);background:#f9525214;color:#f87171;font-size:13px;font-weight:600;cursor:pointer;transition:background .15s ease,border-color .15s ease}.admin-clear-chat:hover:not(:disabled){background:#f9525229;border-color:#f952528c}.admin-clear-chat:disabled{opacity:.4;cursor:default}.admin-section{border-top:1px solid var(--border);padding-top:14px}.admin-section-head{display:flex;align-items:center;gap:12px;margin-bottom:10px;flex-wrap:wrap}.admin-section-title{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:700}.admin-section-title svg{color:rgb(var(--accent-brand))}.admin-online-now{display:flex;align-items:center;gap:5px;font-size:12.5px;color:var(--text-dim)}.admin-range{margin-left:auto}.admin-features{display:flex;flex-direction:column;gap:2px}.admin-feature{padding:8px}.admin-feature:disabled{opacity:.55;cursor:default}.admin-user-seen{color:var(--text-faint)}.admin-user-seen.online{color:#34d399}.admin-reports{display:flex;flex-direction:column;gap:8px}.admin-report{display:flex;align-items:flex-start;gap:10px;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-2)}.admin-report-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.admin-report-excerpt{font-size:13px;color:var(--text);white-space:pre-wrap;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.admin-report-meta{font-size:11.5px;color:var(--text-faint)}.admin-chart{display:flex;align-items:flex-end;gap:3px;height:150px;padding:6px 2px 0}.admin-bar-col{flex:1;min-width:0;height:100%;display:flex;flex-direction:column;align-items:center;gap:5px}.admin-bar-wrap{flex:1;width:100%;display:flex;align-items:flex-end}.admin-bar{width:100%;min-height:2px;border-radius:4px 4px 2px 2px;background:linear-gradient(180deg,rgb(var(--accent-brand)),rgb(var(--accent-brand) / .5));transition:height .25s ease}.admin-bar[data-empty]{background:var(--border)}.admin-bar-x{font-size:10px;color:var(--text-faint);white-space:nowrap;height:12px}.admin-top{display:flex;flex-direction:column;gap:4px}.admin-top-row{display:flex;align-items:center;gap:10px;padding:6px 8px;border-radius:9px}.admin-top-row:hover{background:var(--surface-hover)}.admin-top-rank{width:18px;text-align:center;font-weight:800;color:var(--text-dim);font-size:13px}.admin-top-name{flex:1;min-width:0;font-size:13.5px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-top-count{font-size:12.5px;color:var(--text-dim);font-weight:600;white-space:nowrap}.admin-users{display:flex;flex-direction:column;gap:6px}.admin-user{border:1px solid var(--border);border-radius:12px;background:var(--surface-2);overflow:hidden}.admin-user.blocked{border-color:#f9525266}.admin-user-main{display:flex;align-items:center;gap:11px;padding:10px 12px}.admin-user-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.admin-user-name{display:flex;align-items:center;gap:7px;font-size:14px;font-weight:650;overflow:hidden}.admin-user-sub{font-size:11.5px;color:var(--text-dim);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.admin-user-stats{display:flex;align-items:center;gap:10px;font-size:12px;color:var(--text-dim);white-space:nowrap}.admin-user-actions{display:flex;gap:5px}.admin-avatar{width:38px;height:38px;border-radius:50%;flex:none;object-fit:cover;overflow:hidden}.admin-avatar-initial{display:grid;place-items:center;background:linear-gradient(140deg,rgb(var(--accent-brand)),rgb(var(--accent-brand) / .6));color:#fff;font-weight:700;font-size:15px}.admin-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.03em;padding:2px 6px;border-radius:6px;background:var(--surface-hover);color:var(--text-dim);white-space:nowrap}.admin-badge.danger{background:#f9525229;color:#f87171}.admin-dot{width:8px;height:8px;border-radius:50%;background:var(--text-faint);flex:none}.admin-dot.online{background:#34d399;box-shadow:0 0 0 3px #34d39933}.admin-act{display:grid;place-items:center;width:32px;height:32px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text-dim);cursor:pointer;transition:color .12s ease,background .12s ease,border-color .12s ease}.admin-act:hover{color:var(--text);background:var(--surface-hover)}.admin-act.warn:hover{color:#f59e0b;border-color:#f59e0b66}.admin-act.ok:hover{color:#34d399;border-color:#34d39966}.admin-act.danger:hover{color:#f87171;border-color:#f9525266}.admin-act:disabled{opacity:.4;cursor:default}.admin-compose{padding:0 12px 12px;display:flex;flex-direction:column;gap:8px}.admin-compose-input{width:100%;min-height:64px;resize:vertical;border-radius:10px;border:1px solid var(--border);background:var(--bg);color:var(--text);font-family:var(--font);font-size:13.5px;padding:9px 11px}.admin-compose-actions{display:flex;justify-content:flex-end;gap:8px}.admin-compose-cancel,.admin-compose-send{border-radius:9px;padding:7px 13px;font-size:13px;font-weight:600;cursor:pointer;border:1px solid var(--border);font-family:var(--font)}.admin-compose-cancel{background:transparent;color:var(--text-dim)}.admin-compose-send{display:flex;align-items:center;gap:6px;background:rgb(var(--accent-brand));color:#fff;border-color:transparent}.admin-compose-send:disabled{opacity:.5;cursor:default}.admin-empty{padding:24px;text-align:center;color:var(--text-dim);font-size:13.5px}.blocked-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:400;display:grid;place-items:center;padding:20px;background:#0009;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.blocked-card{width:min(400px,100%);border-radius:16px;padding:28px 24px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:10px}.blocked-icon{display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:#f9525226;color:#f87171;margin-bottom:4px}.blocked-card h2{font-size:19px;font-weight:750}.blocked-card p{font-size:14px;color:var(--text-dim);line-height:1.5}.blocked-signout{margin-top:8px;border:1px solid var(--border);border-radius:10px;padding:10px 20px;background:var(--surface-2);color:var(--text);font-weight:600;font-size:14px;cursor:pointer}.blocked-signout:hover{background:var(--surface-hover)}@media(max-width:680px){.admin-backdrop{padding:0}.admin-panel{max-height:100vh;height:100%;width:100%;border-radius:0}.admin-user-main{flex-wrap:wrap}.admin-user-stats{order:3;width:100%}}:focus-visible{outline:2px solid rgb(var(--accent-brand));outline-offset:2px;border-radius:6px}.note-body:focus-visible,.note-title:focus-visible{outline:none}.chat-input:focus-visible,.settings-input:focus-visible,.palette-input input:focus-visible{outline-offset:-1px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}}
