:root{color:#20201e;font-synthesis:none;text-rendering:optimizelegibility;--bg:#f7f7f5;--surface:#fff;--surface-muted:#f0f0ed;--border:#deded9;--border-strong:#c9c9c3;--text:#20201e;--muted:#6e6e68;--subtle:#92928b;--accent:#2767c5;--accent-soft:#e9f0fb;--success:#247b4b;--success-soft:#e7f4ec;--warning:#9a6417;--warning-soft:#fbf0dc;--danger:#b53838;--danger-soft:#faeaea;--radius:6px;background:#f7f7f5;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}button,input,textarea{font:inherit;letter-spacing:0}button{color:inherit}button:focus-visible,input:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline-offset:2px;outline:2px solid #2767c5}.app-shell{background:var(--bg);grid-template-rows:52px minmax(0,1fr);grid-template-columns:286px minmax(0,1fr);height:100%;display:grid;overflow:hidden}.topbar{border-bottom:1px solid var(--border);background:var(--surface);z-index:20;grid-column:1/-1;align-items:center;gap:10px;padding:0 14px;display:flex}.brand-mark{color:#fff;background:#171717;border-radius:5px;place-items:center;width:28px;height:28px;font-size:14px;font-weight:750;display:grid}.brand-name{font-size:14px;font-weight:700}.topbar-spacer,.toolbar-spacer{flex:1}.icon-button{border-radius:var(--radius);cursor:pointer;background:0 0;border:1px solid #0000;flex:0 0 34px;place-items:center;width:34px;height:34px;display:grid}.icon-button:hover{background:var(--surface-muted);border-color:var(--border)}.icon-button:disabled{opacity:.5;cursor:default}.icon-button.active{color:var(--accent);background:var(--accent-soft)}.icon-button.danger:hover{color:var(--danger);background:var(--danger-soft);border-color:#eccaca}.connection-status{border-radius:999px;align-items:center;gap:6px;height:28px;padding:0 9px;font-size:12px;font-weight:650;display:flex}.connection-status.online{color:var(--success);background:var(--success-soft)}.connection-status.offline{color:var(--warning);background:var(--warning-soft)}.sidebar{border-right:1px solid var(--border);background:#f4f4f1;flex-direction:column;grid-area:2/1;gap:10px;min-width:0;padding:12px;display:flex;overflow:hidden}.new-note-button,.primary-command,.secondary-command{border-radius:var(--radius);cursor:pointer;justify-content:center;align-items:center;gap:8px;min-height:36px;font-weight:650;display:inline-flex}.new-note-button,.primary-command{color:#fff;background:#171717;border:1px solid #171717}.new-note-button:hover,.primary-command:hover{background:#30302e}.secondary-command{border:1px solid var(--border-strong);background:var(--surface)}.secondary-command:hover{background:var(--surface-muted)}.search-control{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);height:36px;color:var(--muted);align-items:center;gap:8px;padding:0 10px;display:flex}.search-control:focus-within{border-color:var(--accent);box-shadow:0 0 0 2px #dce8f8}.search-control input{width:100%;min-width:0;color:var(--text);background:0 0;border:0;outline:0}.view-tabs{grid-template-columns:1fr 1fr;gap:4px;display:grid}.view-tabs button{border-radius:var(--radius);height:32px;color:var(--muted);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:6px;font-size:12px;font-weight:650;display:inline-flex}.view-tabs button[aria-selected=true]{background:var(--surface);color:var(--text);box-shadow:0 0 0 1px var(--border)}.note-list{flex-direction:column;flex:1;gap:3px;min-height:0;display:flex;overflow-y:auto}.note-row{text-align:left;border-radius:var(--radius);cursor:pointer;background:0 0;border:1px solid #0000;grid-template-columns:minmax(0,1fr) 16px;gap:4px 8px;width:100%;min-height:76px;padding:10px;display:grid}.note-row:hover{background:#ecece8}.note-row.selected{background:var(--accent-soft);border-color:#cadbf3}.note-row-title{text-overflow:ellipsis;white-space:nowrap;font-size:13px;font-weight:700;overflow:hidden}.note-row-preview{text-overflow:ellipsis;white-space:nowrap;color:var(--muted);grid-column:1/-1;font-size:12px;overflow:hidden}.note-row time{color:var(--subtle);grid-column:1/-1;font-size:11px}.list-empty{color:var(--subtle);flex-direction:column;align-items:center;gap:8px;margin:auto;font-size:13px;display:flex}.sync-summary{min-height:24px;color:var(--subtle);justify-content:space-between;gap:8px;font-size:11px;display:flex}.sync-summary span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.error-text{color:var(--danger)}.workspace{background:var(--surface);grid-area:2/2;grid-template-rows:49px minmax(0,1fr);grid-template-columns:minmax(0,1fr) 220px;min-width:0;display:grid}.editor-toolbar{border-bottom:1px solid var(--border);grid-column:1/-1;align-items:center;gap:4px;padding:0 14px;display:flex}.editor-status{color:var(--subtle);font-size:12px}.editor{flex-direction:column;min-width:0;padding:clamp(24px,6vh,64px) clamp(24px,8vw,112px);display:flex;overflow:auto}.title-input{resize:none;field-sizing:content;width:100%;min-height:46px;color:var(--text);background:0 0;border:0;outline:0;padding:0 0 18px;font-size:clamp(26px,3vw,38px);font-weight:760;line-height:1.2;overflow:hidden}.title-input::placeholder,.body-input::placeholder{color:#b6b6af}.body-input{resize:none;color:#343430;background:0 0;border:0;outline:0;flex:1;width:100%;min-height:280px;padding:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:15px;line-height:1.75}.note-details{border-left:1px solid var(--border);background:#fafaf8;padding:20px 16px;overflow-y:auto}.detail-field{flex-direction:column;gap:7px;display:flex}.detail-field>span{color:var(--muted);align-items:center;gap:6px;font-size:12px;font-weight:700;display:flex}.detail-field input{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);width:100%;height:34px;padding:0 9px}.note-details dl{gap:14px;margin:28px 0 0;display:grid}.note-details dl div{grid-template-columns:64px minmax(0,1fr);gap:8px;font-size:12px;display:grid}.note-details dt{color:var(--subtle)}.note-details dd{color:var(--muted);overflow-wrap:anywhere;margin:0}.workspace-empty{color:var(--subtle);grid-area:1/1/-1/-1;place-content:center;justify-items:center;gap:12px;display:grid}.workspace-empty h1{color:var(--muted);margin:0 0 4px;font-size:16px}.workspace-empty .primary-command{padding:0 14px}.settings-dialog{border:1px solid var(--border-strong);background:var(--surface);width:min(440px,100vw - 28px);color:var(--text);z-index:50;border-radius:8px;margin:auto;padding:0;position:fixed;inset:0;box-shadow:0 18px 60px #1c1c182e}.settings-dialog::backdrop{background:#19191659}.settings-dialog form{gap:16px;padding:20px;display:grid}.dialog-header{align-items:center;gap:10px;display:flex}.dialog-header h2{flex:1;margin:0;font-size:17px}.settings-dialog label{color:var(--muted);gap:6px;font-size:12px;font-weight:700;display:grid}.settings-dialog label input{border:1px solid var(--border);border-radius:var(--radius);height:38px;color:var(--text);padding:0 10px}.dialog-actions{justify-content:flex-end;gap:8px;padding-top:4px;display:flex}.dialog-actions button{padding:0 14px}.spin{animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.mobile-only{display:none}.sidebar-mobile-header{justify-content:space-between;align-items:center}.scrim{display:none}@media (width<=920px){.workspace{grid-template-columns:minmax(0,1fr)}.note-details{display:none}}@media (width<=700px){.mobile-only{display:flex}.app-shell{grid-template-columns:minmax(0,1fr)}.topbar{grid-column:1}.brand-name{font-size:13px}.connection-status span{display:none}.connection-status{justify-content:center;width:28px;padding:0}.sidebar{z-index:40;width:min(320px,88vw);transition:transform .18s;position:fixed;top:0;bottom:0;left:0;transform:translate(-105%);box-shadow:8px 0 30px #1e1e1a24}.sidebar.open{transform:translate(0)}.workspace{grid-column:1}.editor{padding:28px 20px}.title-input{font-size:28px}.scrim{z-index:30;background:#1e1e1a52;border:0;width:100%;height:100%;position:fixed;inset:0}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
