:root{color-scheme:light dark;--bg: #f5f5f4;--panel: #fafaf9;--text: #292524;--muted: #78716c;--border: #d6d3d1;--accent: #57534e;--surface-soft: color-mix(in srgb, var(--panel) 80%, var(--bg));--surface-hover: color-mix(in srgb, var(--accent) 12%, var(--panel));--surface-active: color-mix(in srgb, var(--accent) 20%, var(--panel))}@media(prefers-color-scheme:dark){:root{--bg: #1c1917;--panel: #231f1e;--text: #e7e5e4;--muted: #a8a29e;--border: #44403c;--accent: #a8a29e;--surface-soft: color-mix(in srgb, var(--panel) 88%, var(--bg));--surface-hover: color-mix(in srgb, var(--accent) 16%, var(--panel));--surface-active: color-mix(in srgb, var(--accent) 24%, var(--panel))}}*{box-sizing:border-box}html,body,#app{height:100%}body{margin:0;font-family:Inter,system-ui,sans-serif;background:var(--bg);color:var(--text)}.app-shell{display:grid;grid-template-columns:320px minmax(0,1fr);min-height:100vh}.sidebar{padding:1rem;background:var(--panel);overflow:auto}h1{margin-top:0}.create-row{display:flex;gap:.5rem}.create-button{width:2.25rem;height:2.25rem;font-size:1.25rem;line-height:1;display:inline-flex;align-items:center;justify-content:center}button{border:0;border-radius:.5rem;background:transparent;color:var(--text);padding:.45rem .75rem;cursor:pointer;transition:background-color .15s ease,opacity .15s ease}button:hover{background:var(--surface-hover)}button:focus-visible{outline:none;box-shadow:0 0 0 2px color-mix(in srgb,var(--accent) 35%,transparent)}button:disabled{cursor:default;opacity:.45}.list{margin-top:1rem;display:flex;flex-direction:column;gap:.2rem}.note-item{display:flex;justify-content:space-between;align-items:center;width:100%;text-align:left;padding:.55rem .6rem;background:transparent}.note-item:hover{background:var(--surface-soft)}.note-item.active{background:var(--surface-active)}.note-item small{display:block;color:var(--muted)}.pin{font-size:1.05rem;opacity:.7;transition:opacity .15s ease}.note-item:hover .pin,.note-item.active .pin{opacity:1}.editor-area{padding:1rem;min-width:0;display:flex;flex-direction:column;min-height:100vh}.note-title-wrap{margin-bottom:.35rem}.note-title-input{width:100%;border:0;outline:none;background:transparent;color:var(--text);font-size:clamp(1.6rem,2.5vw,2.2rem);font-weight:700;line-height:1.15;padding:.1rem 0 .2rem}.note-title-input:focus{box-shadow:inset 0 -2px color-mix(in srgb,var(--accent) 45%,transparent)}.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:.5rem;gap:.75rem;flex-wrap:wrap}.editor-toolbar{position:sticky;top:0;z-index:10;display:flex;flex-wrap:wrap;gap:.3rem;margin-bottom:.7rem;padding:.45rem;border-radius:.6rem;background:var(--surface-soft)}.editor-toolbar button{padding:.35rem .55rem;font-size:.9rem}.editor-toolbar button.active{background:var(--surface-active)}.editor-toolbar .mode-toggle{margin-left:auto}.toolbar-left{display:flex;align-items:center;gap:.6rem}.status{display:flex;gap:.7rem;color:var(--muted)}.online{color:#22c55e}.offline{color:#f59e0b}.error{color:#ef4444}.back-button{font-weight:600}.plain-wrap,.wysiwyg-wrap{flex:1;min-height:0}.plain-wrap textarea{width:100%;height:100%;min-height:70vh;background:var(--panel);color:var(--text);border:0;border-radius:.5rem;padding:1rem;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,monospace}.tiptap-root{height:100%;background:var(--panel);color:var(--text);border:0;border-radius:.5rem;overflow:auto}.tiptap-root .ProseMirror{min-height:70vh;padding:1rem;outline:none;color:var(--text)}.tiptap-root .ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);color:var(--muted);pointer-events:none;float:left;height:0}.tiptap-root .ProseMirror{font-size:1rem;line-height:1.55}.tiptap-root .ProseMirror h1{font-size:1.8rem;line-height:1.25;margin:1.25rem 0 .75rem}.tiptap-root .ProseMirror h2{font-size:1.45rem;line-height:1.3;margin:1.1rem 0 .65rem}.tiptap-root .ProseMirror h3{font-size:1.2rem;line-height:1.35;margin:1rem 0 .55rem}.tiptap-root .ProseMirror p{margin:.5rem 0}.tiptap-root .ProseMirror ul,.tiptap-root .ProseMirror ol{padding-left:1.35rem;margin:.45rem 0}.tiptap-root .ProseMirror li{margin:.2rem 0}.tiptap-root .ProseMirror ul[data-type=taskList]{list-style:none;padding-left:0;margin:.45rem 0}.tiptap-root .ProseMirror ul[data-type=taskList] li{display:flex;gap:.4rem;align-items:center;line-height:1.5;margin:.15rem 0}.tiptap-root .ProseMirror ul[data-type=taskList] li>label{flex:0 0 auto;display:inline-flex;align-items:center}.tiptap-root .ProseMirror ul[data-type=taskList] li>div{flex:1;min-width:0}.tiptap-root .ProseMirror ul[data-type=taskList] li>div p{margin:0}.tiptap-root .ProseMirror ul[data-type=taskList] li input[type=checkbox]{width:16px;height:16px;margin:0;accent-color:var(--accent);cursor:pointer;flex-shrink:0}.tiptap-root .ProseMirror ul[data-type=taskList] li[data-checked=true]>div{color:var(--muted)}.tiptap-root .ProseMirror ul[data-type=taskList] li[data-checked=true]>div p{text-decoration:line-through;text-decoration-thickness:1px}.tiptap-root .ProseMirror code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;font-size:.92em;background:color-mix(in srgb,var(--panel) 78%,#6b7280 22%);padding:.1rem .3rem;border-radius:.3rem}.tiptap-root .ProseMirror pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,monospace;background:color-mix(in srgb,var(--panel) 82%,#000 18%);padding:.75rem;border-radius:.45rem;overflow-x:auto}.tiptap-root .ProseMirror pre code{background:transparent;padding:0;font-size:.9rem}.tiptap-root .ProseMirror blockquote{margin:.7rem 0;padding:.15rem 0 .15rem .8rem;border-left:3px solid color-mix(in srgb,var(--muted) 35%,transparent);color:var(--muted)}.tiptap-root .ProseMirror a{color:#2563eb;text-decoration:underline;text-underline-offset:2px}@media(prefers-color-scheme:dark){.tiptap-root .ProseMirror a{color:#60a5fa}}@media(max-width:900px){.app-shell{grid-template-columns:minmax(0,1fr)}.sidebar,.editor-area{width:100%;min-width:0;min-height:100vh;padding:.75rem}.app-shell.mobile-list-view .editor-area,.app-shell.mobile-editor-view .sidebar{display:none}.plain-wrap textarea,.tiptap-root .ProseMirror{min-height:calc(100vh - 160px)}}
