@import url('https://fonts.googleapis.com/css2?family=Courier+Prime:ital,wght@0,400;0,700;1,400&family=Newsreader:opsz,wght@6..72,400;6..72,500;6..72,600;6..72,700&display=swap');
:root { --bg:#fcf9f3; --paper:#fff; --ink:#2b2621; --muted:#6e675f; --line:#dcdad4; --accent:#a94a2d; --sage:#5b7361; --code:#202326; --mono:'Courier Prime',Courier,monospace; --serif:'Newsreader',Garamond,serif; }
*,*::before,*::after{box-sizing:border-box}body{margin:0;min-height:100vh;background:var(--bg);background-image:radial-gradient(rgba(43,38,33,.035) .6px,transparent .6px);background-size:7px 7px;color:var(--ink);font-family:var(--serif);font-size:16px}button,input,textarea,select{font:inherit}button{cursor:pointer}.paper{background:var(--paper);box-shadow:0 10px 25px -5px rgba(43,38,33,.1),0 8px 10px -6px rgba(43,38,33,.06)}.eyebrow{color:var(--accent);font:11px var(--mono);letter-spacing:.1em;text-transform:uppercase}.muted,.field-help{color:var(--muted);font:12px var(--mono)}.login{width:min(92%,520px);margin:12vh auto;padding:clamp(28px,6vw,64px)}h1{font-size:clamp(2.2rem,6vw,4.2rem);font-weight:400;line-height:1.05;margin:14px 0}p{color:var(--muted);line-height:1.6}label{display:grid;gap:8px;margin:18px 0;font:12px var(--mono);text-transform:uppercase;letter-spacing:.03em}input,textarea,select{width:100%;padding:11px 12px;border:1px solid var(--line);color:var(--ink);background:rgba(255,255,255,.6);font-family:var(--serif);font-size:16px;text-transform:none;letter-spacing:0}textarea{resize:vertical}input:focus,textarea:focus,select:focus{outline:2px solid rgba(169,74,45,.3);outline-offset:1px}.button{border:1px solid var(--line);padding:10px 14px;color:var(--ink);background:transparent;font:12px var(--mono)}.button:hover,.text-button:hover{color:var(--accent)}.button.primary{border-color:var(--accent);color:#fff;background:var(--accent)}.text-button{border:0;color:var(--muted);background:none;font:11px var(--mono)}.error{margin-top:14px;color:#a52d21;font:12px var(--mono)}
.shell{width:min(100% - 48px,1440px);margin:auto;padding:32px 0 64px}.topbar{display:flex;align-items:end;justify-content:space-between;gap:20px;padding-bottom:28px;border-bottom:1px solid var(--line)}.topbar strong{display:block;margin-top:7px;font-size:1.35rem;font-weight:400}.top-actions{display:flex;gap:8px;align-items:center}.workspace{display:grid;grid-template-columns:250px minmax(0,760px);justify-content:center;gap:32px;padding-top:32px;align-items:start}.library{min-height:620px;padding:20px;position:sticky;top:24px}.library-head,.section-head,.editor-head{display:flex;justify-content:space-between;align-items:start;gap:16px}.shelf-group{margin-top:28px}.shelf-group h3{display:flex;justify-content:space-between;margin:0 0 10px;color:var(--muted);font:11px var(--mono);text-transform:uppercase}.shelf-group h3 span{color:var(--accent)}.shelf-item{display:grid;width:100%;gap:5px;padding:11px 8px;border:0;border-left:2px solid transparent;text-align:left;color:var(--ink);background:transparent}.shelf-item:hover,.shelf-item.selected{border-left-color:var(--accent);background:#f5eee5}.shelf-item span{overflow:hidden;font:15px var(--serif);text-overflow:ellipsis;white-space:nowrap}.shelf-item small{color:var(--muted);font:10px var(--mono)}.editor-head{margin-bottom:20px}.editor-head h1{margin-top:8px}.form-paper{padding:clamp(20px,4vw,48px)}.field-grid{display:grid;grid-template-columns:1fr 180px;gap:20px}.section-head{margin:34px 0 14px;padding:16px 0 12px;border-top:1px solid var(--line)}.section-head p{margin:8px 0 0;font-size:14px}.outline-section{padding:0 14px 14px;border:1px solid var(--line);background:#fbf6ed}.outline-actions{display:flex;gap:12px;align-items:center}.outline-row{display:grid;grid-template-columns:18px minmax(0,1fr) 10px minmax(0,1fr) 28px;align-items:center;gap:8px;margin:8px 0}.outline-row input{padding:8px;font-size:14px}.drag-handle{cursor:grab;color:var(--muted);font:14px var(--mono)}.outline-row.dragging{opacity:.45}.remove-outline{border:0;color:var(--muted);background:transparent;font-size:20px}.draft-toggle{display:flex;align-items:center;gap:9px;text-transform:none}.draft-toggle input{width:auto}.writing-area{position:relative;margin-top:28px;border:1px solid var(--line);background:var(--paper)}.toolbar{position:sticky;top:0;z-index:10;display:flex;flex-wrap:wrap;align-items:center;gap:4px;padding:8px;border-bottom:1px solid var(--line);background:#f7f1e9}.toolbar select,.toolbar button{width:auto;padding:6px 8px;border:1px solid transparent;font:12px var(--mono)}.toolbar button:hover,.toolbar button.is-active,.view-button.active{border-color:var(--line);background:var(--paper)}.toolbar-spacer{flex:1}.mode-switch{display:inline-flex;gap:2px;border-left:1px solid var(--line);padding-left:8px}.view-button{color:var(--muted)}.view-button.active{color:var(--accent)}#editor-shell{position:relative}.ProseMirror{min-height:560px;max-width:var(--content-max-width);margin:auto;padding:48px 24px;outline:0;font:18px/1.7 var(--serif)}.ProseMirror>*:first-child{margin-top:0}.ProseMirror h1,.ProseMirror h2,.ProseMirror h3{color:var(--accent);font-weight:400;line-height:1.15}.ProseMirror h1{font-size:2.3rem}.ProseMirror h2{font-size:1.9rem;margin-top:2.1rem}.ProseMirror h3{font-size:1.5rem;margin-top:1.6rem}.ProseMirror p{color:var(--ink);margin:0 0 1.15rem}.ProseMirror strong{font-weight:700}.ProseMirror ul,.ProseMirror ol{margin:0 0 1.25rem;padding-left:2rem}.ProseMirror li{margin:.35rem 0}.ProseMirror blockquote{border-left:3px solid var(--sage);padding:8px 16px;margin:24px 0;background:#f6f3ed;color:var(--muted);font-style:italic}.ProseMirror code{background:#ede9e1;border:1px solid #dcdad4;padding:.15em .35em;border-radius:2px;font:14px var(--mono)}.ProseMirror pre{margin:24px 0;padding:18px;overflow:auto;border:1px solid #3a3e42;border-radius:4px;background:var(--code);color:#f4efe6;font:14px/1.55 var(--mono)}.ProseMirror pre code{padding:0;border:0;background:transparent;color:inherit}.ProseMirror hr{border:0;border-top:1px solid var(--line);margin:32px 0}.ProseMirror img{display:block;max-width:100%;height:auto;margin:24px auto}.ProseMirror table{width:100%;border-collapse:collapse;margin:24px 0}.ProseMirror th,.ProseMirror td{border:1px solid var(--line);padding:8px;text-align:left}.ProseMirror th{background:#f6f3ed}.ProseMirror p.is-editor-empty:first-child::before{content:attr(data-placeholder);float:left;height:0;color:var(--muted);pointer-events:none}.markdown-source{display:none;width:100%;min-height:560px;padding:48px 32px;border:0;outline:0;resize:vertical;background:#202326;color:#f4efe6;font:14px/1.7 var(--mono)}.view-markdown #content{display:none}.view-markdown .markdown-source{display:block}.split-preview{display:none;max-width:var(--content-max-width);margin:auto;padding:48px 24px;font:18px/1.7 var(--serif)}.view-split{display:grid;grid-template-columns:1fr 1fr}.view-split #content{min-width:0;border-right:1px solid var(--line)}.view-split .markdown-source,.view-split .split-preview{display:block}.split-preview h1,.split-preview h2,.split-preview h3{color:var(--accent);font-weight:400}.split-preview pre{padding:18px;overflow:auto;background:var(--code);color:#f4efe6}.split-preview code{background:#ede9e1;padding:.15em .35em}.bubble-toolbar{position:fixed;z-index:20;display:none;gap:3px;padding:5px;background:var(--ink);box-shadow:0 5px 15px rgba(0,0,0,.2)}.bubble-toolbar.visible{display:flex}.bubble-toolbar button{padding:5px 8px;color:#fff;background:transparent;font:12px var(--mono)}.bubble-toolbar button:hover{background:rgba(255,255,255,.15)}.form-actions{display:flex;align-items:center;justify-content:end;gap:16px;margin-top:26px}.unsaved{color:var(--accent)}.saved{color:var(--sage)}.note-writing-label{margin-top:28px;color:var(--muted);font:11px var(--mono);text-transform:uppercase}.empty-state{padding:clamp(30px,8vw,100px)}.empty-state h1{max-width:650px}
@media(max-width:1000px){.workspace{grid-template-columns:210px minmax(0,1fr);gap:20px}.form-paper{padding:24px}.view-split{grid-template-columns:1fr}.view-split #content{border-right:0;border-bottom:1px solid var(--line)}}
@media(max-width:700px){.shell{width:min(100% - 24px,640px);padding-top:20px}.workspace{grid-template-columns:1fr}.library{min-height:0;position:static}.field-grid{grid-template-columns:1fr}.topbar{align-items:start;flex-direction:column}.outline-actions{flex-direction:column;align-items:end}.toolbar-spacer{display:none}.mode-switch{width:100%;border-left:0;padding-left:0}.mode-switch button{flex:1}.ProseMirror,.markdown-source,.split-preview{min-height:480px;padding:32px 20px}.view-split #content{display:none}}
.slash-menu{position:fixed;z-index:30;display:grid;gap:2px;min-width:190px;padding:8px;background:var(--paper);border:1px solid var(--line);box-shadow:0 10px 25px rgba(43,38,33,.16)}.slash-menu strong{padding:4px 8px;color:var(--muted);font:10px var(--mono);text-transform:uppercase}.slash-menu button{padding:7px 8px;text-align:left;color:var(--ink);background:transparent;font:13px var(--mono)}.slash-menu button:hover{color:var(--accent);background:#f5eee5}
