:root{--bg:#f6f7f8;--surface:#fff;--surface-raised:#f9faf9;--text:#202522;--muted:#6d746f;--faint:#909990;--line:#dfe5e1;--line-strong:#cbd5d0;--accent:#237a73;--accent-strong:#155e5a;--accent-soft:#d9eeeb;--amber:#b77815;--amber-soft:#f8ead2;--danger:#b93838;--danger-soft:#f8ded9;--code-bg:#111817;--code-text:#d9ebe6;--sidebar-edge:#ffffffb3;--hover:#eef3ef;--hover-strong:#edf2ee;--tag-bg:#e8eee9;--placeholder:#adb6af;--quote-text:#46514b;--inline-code-bg:#edf3ef;--inline-code-text:#205d57;--table-head-bg:#eff4f0;--mark-bg:#fff1bd;--editor-placeholder:#98a19a;--plant-source-bg:#101716;--plant-source-text:#dcefe9;--plant-grid-line:#f8faf7;--canvas-bg:#fff;--plant-loading-bg:#ffffffe6;--block-bg:#fbfcfb;--loading-gradient:linear-gradient(100deg, #eef2ed 20%, #fbfcfb 38%, #eef2ed 55%);--loading-block:#e6ece7;--shadow:0 20px 60px #1f292314}[data-mantine-color-scheme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f1413;--surface:#171d1c;--surface-raised:#121716;--text:#edf4f1;--muted:#a6b2ad;--faint:#78847f;--line:#27312f;--line-strong:#3b4844;--accent:#47c2b8;--accent-strong:#90e5de;--accent-soft:#173b38;--amber:#e7b861;--amber-soft:#3d2f18;--danger:#ff8787;--danger-soft:#3b2023;--code-bg:#08100f;--code-text:#d9ebe6;--sidebar-edge:#ffffff08;--hover:#1c2522;--hover-strong:#202a27;--tag-bg:#24302c;--placeholder:#717f79;--quote-text:#c3d1cb;--inline-code-bg:#20322f;--inline-code-text:#9be8dd;--table-head-bg:#1d2825;--mark-bg:#5b4816;--editor-placeholder:#74817b;--plant-source-bg:#08100f;--plant-source-text:#d9ebe6;--plant-grid-line:#202b28;--canvas-bg:#101615;--plant-loading-bg:#171d1cf0;--block-bg:#141b19;--loading-gradient:linear-gradient(100deg, #1b2421 20%, #27312e 38%, #1b2421 55%);--loading-block:#24302d;--shadow:0 20px 60px #00000052}*{box-sizing:border-box}html,body{min-height:100%}body{background:var(--bg);color:var(--text);letter-spacing:0;margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}button,input,select,textarea{font:inherit}button{border:0}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.workspace-shell{background:var(--bg);grid-template-columns:320px minmax(0,1fr);min-height:100vh;display:grid;overflow:hidden}.workspace-sidebar{background:var(--surface-raised);border-right:1px solid var(--line);min-height:100vh;box-shadow:1px 0 0 var(--sidebar-edge);flex-direction:column;display:flex}.sidebar-header{border-bottom:1px solid var(--line);padding:18px 16px 14px}.workspace-brand{justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;display:flex}.brand-lockup{align-items:center;gap:10px;min-width:0;display:flex}.brand-copy{min-width:0}.brand-logo{border:1px solid var(--line-strong);object-fit:cover;border-radius:8px;flex:none;width:36px;height:36px;box-shadow:inset 0 0 0 1px #ffffff0f}[data-mantine-color-scheme=dark] .brand-logo{background:#fff;border-color:#ffffffd1;padding:3px;box-shadow:0 6px 16px #0000003d}.workspace-brand h1{margin:0;font-size:1rem;font-weight:760;line-height:1.1}.workspace-brand p{color:var(--muted);margin:3px 0 0;font-size:.78rem;line-height:1.2}.icon-button,.text-button{min-height:34px;color:var(--text);cursor:pointer;background:0 0;border-radius:7px;justify-content:center;align-items:center;gap:8px;transition:background-color .16s,color .16s,border-color .16s;display:inline-flex}.icon-button{width:34px;padding:0}.icon-button svg,.text-button svg,.toolbar-button svg{stroke-width:1.9px;width:17px;height:17px}.icon-button:hover,.text-button:hover,.toolbar-button:hover{background:var(--hover)}.icon-button[data-active=true],.toolbar-button[data-active=true]{background:var(--accent-soft);color:var(--accent-strong)}.icon-button:disabled,.text-button:disabled,.toolbar-button:disabled{color:var(--faint);cursor:not-allowed;opacity:.55}.text-button{min-width:0;padding:0 12px;font-size:.82rem;font-weight:680;text-decoration:none}.text-button.primary{background:var(--accent);color:var(--mantine-color-white)}.text-button.primary:hover{background:var(--accent-strong)}.text-button.subtle{border:1px solid var(--line);background:var(--surface)}.search-field{position:relative}.search-field svg{width:16px;height:16px;color:var(--muted);position:absolute;top:50%;left:11px;transform:translateY(-50%)}.search-field input{border:1px solid var(--line);background:var(--surface);width:100%;height:36px;color:var(--text);border-radius:8px;padding:0 12px 0 34px;font-size:.84rem}.group-create{margin-top:12px}.group-create-form{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:8px;display:grid}.group-create button,.sidebar-command{min-height:32px}.sidebar-command{width:100%;color:var(--muted)}.note-list{flex:1;min-height:0;padding:10px 10px 12px}.sidebar-search{margin-top:14px}.app-preferences{justify-content:space-between;margin-top:12px}.settings-header-v2 .app-preferences,.settings-card-v2 .app-preferences{margin-top:0}.language-switch-label{align-items:center;gap:5px;display:inline-flex}.app-preferences .mantine-Switch-track,.app-preferences .mantine-Switch-trackLabel{pointer-events:none}.sidebar-empty{padding:14px}.note-group{gap:4px;display:grid}.note-group-header{min-width:0}.note-group-toggle{width:100%;min-width:0;min-height:30px;color:var(--muted);text-align:left;cursor:pointer;background:0 0;border-radius:7px;flex:auto;padding:5px 7px}.note-group-toggle:hover{background:var(--hover-strong)}.group-title{min-width:0;color:var(--text);overflow-wrap:anywhere;white-space:normal;flex:auto}.group-count{flex:none}.note-group-add{width:28px;height:28px;color:var(--muted)}.note-group-items{padding-top:3px}.note-row{width:100%;min-width:0;color:var(--text);background:0 0;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:8px;padding:8px;transition:background-color .14s,border-color .14s,box-shadow .14s;display:grid;border-color:#0000!important}.note-row[data-can-edit=false]{grid-template-columns:minmax(0,1fr)}.note-row:hover{background:var(--hover)}.note-row[data-active=true]{background:var(--surface);box-shadow:var(--shadow);border-color:var(--line-strong)!important}.note-select{width:100%;min-width:0;color:inherit;text-align:left;cursor:pointer;background:0 0;border-radius:7px;padding:2px}.note-row-icon{color:var(--muted);flex:none;margin-top:2px}.note-row-content{flex:auto;min-width:0}.note-row-title{overflow-wrap:anywhere;white-space:normal;margin:0;display:block}.note-row-meta{min-width:0}.note-tag{background:var(--tag-bg);text-overflow:ellipsis;white-space:nowrap;border-radius:999px;max-width:94px;padding:3px 7px;overflow:hidden}.note-delete{width:28px;height:28px;color:var(--muted)}.note-row-tools{opacity:.72;align-self:start;transition:opacity .14s}.note-row:hover .note-delete,.note-row:focus-within .note-delete,.note-row:hover .note-row-tools,.note-row:focus-within .note-row-tools{opacity:1}.sidebar-footer{border-top:1px solid var(--line);color:var(--muted);gap:12px;padding:12px 14px 16px;font-size:.75rem;display:grid}.auth-panel-v2,.auth-copy,.auth-status{min-width:0}.auth-status-icon,.auth-actions{flex:none}.auth-error{background:var(--danger-soft);color:var(--danger);border-radius:7px;margin:0;padding:8px 10px;font-size:.78rem;line-height:1.35}.auth-submit{width:100%}.editor-shell{background:var(--surface);flex-direction:column;min-width:0;max-height:100vh;display:flex}.editor-topbar{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:12px 24px;display:flex}.editor-status{color:var(--muted);white-space:nowrap;align-items:center;gap:8px;font-size:.78rem;display:flex}.readonly-toolbar{color:var(--muted);align-items:center;gap:8px;font-size:.82rem;font-weight:680;display:inline-flex}.readonly-toolbar svg{width:17px;height:17px;color:var(--accent)}.spin{animation:.9s linear infinite spin}.status-dot{background:var(--accent);border-radius:50%;width:8px;height:8px}.status-dot.pending{background:var(--amber)}.editor-scroll{flex:1;overflow:auto}.editor-document{width:min(100%,900px);margin:0 auto;padding:42px 56px 72px}.document-title{resize:none;width:100%;min-height:1.1em;color:var(--text);overflow-wrap:anywhere;white-space:normal;background:0 0;border:0;font-size:clamp(2rem,4vw,3rem);font-weight:780;line-height:1.08;overflow:hidden}.document-title::placeholder{color:var(--placeholder)}.document-title:disabled{opacity:1;-webkit-text-fill-color:var(--text)}.document-meta{flex-wrap:wrap;align-items:center;gap:8px;min-height:30px;margin-top:12px;display:flex}.document-tag-input{width:min(220px,100%)}.document-tag-input input{background:var(--tag-bg);height:30px;color:var(--text);border-color:#0000;border-radius:999px;font-size:.76rem;font-weight:760}.document-tag-input input:focus{border-color:var(--accent)}.document-tag-input .mantine-TextInput-section{color:var(--muted);font-size:.76rem;font-weight:780}.document-tag-pill{background:var(--tag-bg);min-height:28px;color:var(--text);border-radius:999px;align-items:center;padding:4px 10px;font-size:.76rem;font-weight:760;display:inline-flex}.formatting-toolbar{flex-wrap:wrap;align-items:center;gap:4px;display:flex}.toolbar-divider{background:var(--line);width:1px;height:22px;margin:0 4px}.toolbar-button{width:32px;height:32px;color:var(--text);cursor:pointer;background:0 0;border-radius:7px;justify-content:center;align-items:center;display:inline-flex}.note-editor{margin-top:24px}.note-editor .ProseMirror{outline:none;min-height:54vh}.note-editor .ProseMirror>*+*{margin-top:.78em}.note-editor .ProseMirror p{color:var(--text);margin:0;font-size:1.02rem;line-height:1.75}.note-editor .ProseMirror h1,.note-editor .ProseMirror h2{color:var(--text);margin:1.2em 0 .35em;line-height:1.16}.note-editor .ProseMirror h1{font-size:1.82rem}.note-editor .ProseMirror h2{font-size:1.34rem}.note-editor .ProseMirror blockquote{border-left:3px solid var(--accent);color:var(--quote-text);margin:1em 0;padding-left:16px}.note-editor .ProseMirror pre{background:var(--code-bg);color:var(--code-text);border-radius:8px;padding:16px;font-size:.88rem;line-height:1.65;overflow-x:auto}.note-editor .ProseMirror code{background:var(--inline-code-bg);color:var(--inline-code-text);border-radius:5px;padding:2px 5px;font-size:.88em}.note-editor .ProseMirror pre code{color:inherit;background:0 0;padding:0}.note-editor .ProseMirror ul,.note-editor .ProseMirror ol{padding-left:1.3rem}.note-editor .ProseMirror ul[data-type=taskList]{padding-left:0;list-style:none}.note-editor .ProseMirror li[data-type=taskItem]{align-items:flex-start;gap:9px;display:flex}.note-editor .ProseMirror li[data-type=taskItem]>label{margin-top:.46rem}.note-editor .ProseMirror input[type=checkbox]{width:15px;height:15px;accent-color:var(--accent)}.note-editor .ProseMirror table{border-collapse:collapse;table-layout:fixed;width:100%;margin:1.2rem 0}.note-editor .ProseMirror th,.note-editor .ProseMirror td{border:1px solid var(--line-strong);vertical-align:top;min-width:80px;padding:9px 10px}.note-editor .ProseMirror th{background:var(--table-head-bg);font-weight:720}.note-editor .ProseMirror mark{background:var(--mark-bg);border-radius:4px;padding:0 3px}.note-editor .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;height:0;color:var(--editor-placeholder);pointer-events:none}.empty-editor{color:var(--muted);text-align:center;flex:1;place-items:center;padding:32px;display:grid}.empty-editor h2{color:var(--text);margin:0 0 10px;font-size:1.2rem}.plant-panel{border-left:1px solid var(--line);flex-direction:column;min-width:0;display:flex}.panel-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:18px;display:flex}.panel-title{align-items:center;gap:9px;min-width:0;display:flex}.panel-title svg{width:18px;height:18px;color:var(--accent)}.panel-title h2{margin:0;font-size:.96rem;line-height:1.2}.panel-title p{color:var(--muted);margin:2px 0 0;font-size:.75rem}.panel-actions{gap:5px;display:flex}.plant-panel-body{flex:1;grid-template-rows:minmax(190px,.9fr) minmax(250px,1.1fr);gap:14px;min-height:0;padding:14px;display:grid}.plant-source,.plant-preview{border:1px solid var(--line);background:var(--surface);border-radius:8px;flex-direction:column;min-height:0;display:flex}.plant-section-heading{border-bottom:1px solid var(--line);min-height:38px;color:var(--muted);text-transform:uppercase;justify-content:space-between;align-items:center;gap:8px;padding:0 12px;font-size:.76rem;font-weight:720;display:flex}.plant-source textarea{resize:none;background:var(--plant-source-bg);min-height:0;color:var(--plant-source-text);border:0;outline:none;flex:1;padding:14px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.82rem;line-height:1.55}.plant-source textarea:disabled{opacity:1;-webkit-text-fill-color:var(--plant-source-text)}.plant-preview-canvas{background:linear-gradient(var(--plant-grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--plant-grid-line) 1px, transparent 1px);background-color:var(--canvas-bg);background-size:18px 18px;flex:1;place-items:center;min-height:0;padding:16px;display:grid;overflow:auto}.plant-preview-canvas img{background:var(--canvas-bg);max-width:100%;height:auto;box-shadow:var(--shadow);border-radius:6px}.plant-preview-canvas img[data-loading=true]{opacity:0}.plant-empty,.plant-error,.plant-loading{max-width:260px;color:var(--muted);text-align:center;font-size:.86rem;line-height:1.55}.plant-error{color:var(--danger)}.plant-loading{border:1px solid var(--line);background:var(--plant-loading-bg);border-radius:999px;padding:8px 12px}.plantuml-block{border:1px solid var(--line-strong);background:var(--block-bg);box-shadow:var(--shadow);border-radius:8px;margin:1.35rem 0;overflow:hidden}.plantuml-block-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:14px;padding:10px 12px;display:flex}.plantuml-block-header strong,.plantuml-block-header span{display:block}.plantuml-block-header strong{font-size:.9rem;line-height:1.25}.plantuml-block-header span{color:var(--muted);margin-top:2px;font-size:.74rem;line-height:1.25}.plantuml-tabs{flex:none;gap:4px;display:flex}.plantuml-tab{min-height:30px;color:var(--muted);cursor:pointer;background:0 0;border-radius:7px;align-items:center;gap:6px;padding:0 9px;font-size:.76rem;font-weight:720;display:inline-flex}.plantuml-tab:hover,.plantuml-tab[data-active=true]{background:var(--accent-soft);color:var(--accent-strong)}.plantuml-tab svg{width:15px;height:15px}.plantuml-block-body{min-height:300px;display:grid}.plantuml-block[data-view-mode=both] .plantuml-block-body{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.plantuml-code-pane,.plantuml-output-pane{min-width:0;min-height:300px}.plantuml-code-pane{display:flex}.plantuml-code-pane textarea{resize:vertical;background:var(--code-bg);width:100%;min-height:300px;color:var(--code-text);border:0;outline:none;padding:14px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.84rem;line-height:1.6}.plantuml-code-pane textarea[readonly]{resize:none}.plantuml-output-pane{border-left:1px solid var(--line);background:linear-gradient(var(--plant-grid-line) 1px, transparent 1px), linear-gradient(90deg, var(--plant-grid-line) 1px, transparent 1px);background-color:var(--canvas-bg);background-size:18px 18px;place-items:center;padding:16px;display:grid;overflow:auto}.plantuml-block[data-view-mode=image] .plantuml-output-pane{border-left:0}.plantuml-output-pane img{background:var(--canvas-bg);max-width:100%;height:auto;box-shadow:var(--shadow);border-radius:6px}.plantuml-output-pane img[data-loading=true]{opacity:0}.slash-command-menu{z-index:50;border:1px solid var(--line-strong);background:var(--surface);width:230px;box-shadow:var(--shadow);border-radius:8px;gap:3px;padding:6px;display:grid;position:fixed}.slash-command-item{min-height:34px;color:var(--text);text-align:left;cursor:pointer;background:0 0;border-radius:6px;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:8px;padding:0 9px;display:grid}.slash-command-item:hover,.slash-command-item[data-active=true]{background:var(--accent-soft);color:var(--accent-strong)}.slash-command-item svg{width:16px;height:16px}.workspace-loading{background:var(--bg);grid-template-columns:320px 1fr;min-height:100vh;display:grid}.loading-rail,.loading-page,.loading-panel{border-right:1px solid var(--line);background:var(--loading-gradient);background-size:220% 100%;animation:1.4s linear infinite shimmer}.loading-page{background-color:var(--surface);align-content:start;gap:18px;padding:90px 12%;display:grid}.loading-page div{background:var(--loading-block);border-radius:8px;height:26px}.loading-page div:first-child{width:72%;height:54px}.loading-page div:nth-child(2){width:92%}.loading-page div:nth-child(3){width:64%}.route-error{background:var(--bg);place-items:center;min-height:100vh;padding:24px;display:grid}.route-error section{border:1px solid var(--line);background:var(--surface);border-radius:8px;width:min(480px,100%);padding:28px}.route-error p{color:var(--danger);margin:0 0 8px;font-size:.85rem;font-weight:720}.route-error h1{margin:0 0 18px;font-size:1.5rem}.route-error button{background:var(--accent);min-height:38px;color:var(--mantine-color-white);cursor:pointer;border-radius:7px;padding:0 14px}.settings-page{background:var(--bg);min-height:100vh;padding:32px}.settings-card-v2{background:var(--surface);padding:24px}.settings-header-v2{min-width:0}.settings-email{overflow-wrap:anywhere}.settings-header{justify-content:space-between;align-items:center;gap:20px;width:min(1120px,100%);margin:0 auto 22px;display:flex}.settings-header h1,.settings-card h1,.settings-card h2{color:var(--text);margin:0}.settings-header h1,.settings-card h1{font-size:clamp(2rem,4vw,3rem);line-height:1.05}.settings-card h2{font-size:1.1rem;line-height:1.25}.settings-eyebrow{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin:0 0 8px;font-size:.76rem;font-weight:780}.settings-muted{color:var(--muted);margin:12px 0 0;font-size:.92rem;line-height:1.55}.settings-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1fr);gap:18px;width:min(1120px,100%);margin:0 auto;display:grid}.settings-card{border:1px solid var(--line);background:var(--surface);border-radius:8px;padding:22px}.settings-login{width:min(460px,100%);margin:10vh auto 0}.settings-form{gap:12px;margin-top:16px;display:grid}.settings-form label{gap:6px;display:grid}.settings-form label span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:720}.settings-form input,.settings-form select{border:1px solid var(--line);background:var(--surface);width:100%;min-height:38px;color:var(--text);border-radius:7px;padding:0 10px;font-size:.86rem}.settings-success{background:var(--accent-soft);color:var(--accent-strong);border-radius:7px;margin:0;padding:8px 10px;font-size:.78rem;line-height:1.35}.settings-users{grid-column:1/-1}.users-table{gap:8px;margin-top:14px;display:grid}.users-row{border:1px solid var(--line);border-radius:8px;justify-content:space-between;align-items:center;gap:14px;padding:11px 12px;display:flex}.users-row strong,.users-row small{display:block}.users-row strong{font-size:.92rem;line-height:1.3}.users-row small{color:var(--muted);overflow-wrap:anywhere;margin-top:2px;font-size:.78rem;line-height:1.3}@keyframes shimmer{0%{background-position:120% 0}to{background-position:-120% 0}}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:1180px){.workspace-shell{grid-template-columns:280px minmax(0,1fr);overflow:auto}.workspace-sidebar,.editor-shell{min-height:auto}.plantuml-block[data-view-mode=both] .plantuml-block-body{grid-template-columns:1fr}.plantuml-output-pane{border-top:1px solid var(--line);border-left:0}}@media (max-width:760px){.workspace-shell,.workspace-loading{flex-direction:column;min-height:100vh;display:flex;overflow:auto}.workspace-sidebar{border-right:0;border-bottom:1px solid var(--line);min-height:300px}.note-list{max-height:210px}.editor-shell{min-height:650px;max-height:none}.editor-topbar{flex-direction:column;align-items:flex-start;padding:12px 16px}.editor-document{padding:32px 22px 56px}.document-title{font-size:2rem}.plantuml-block-header{flex-direction:column;align-items:flex-start}.plantuml-tabs{flex-wrap:wrap;width:100%}.plantuml-tab{flex:84px}.settings-page{padding:20px}.settings-header{flex-direction:column;align-items:flex-start}.settings-grid{grid-template-columns:1fr}.settings-users{grid-column:auto}}
