@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=DM+Sans:opsz,wght@9..40,400;9..40,500;9..40,600&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');
:root{--ink:#22231f;--muted:#75776d;--line:#e5e4dc;--paper:#fbfbf7;--warm:#f3f0e7;--accent:#44563b}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}.hidden{display:none!important}.home-card{width:min(520px,calc(100% - 40px));margin:12vh auto;padding:12px}.brand-mark{font-size:28px;color:var(--accent);margin-bottom:38px}.eyebrow,.side-label{font:500 10px 'DM Mono';letter-spacing:.14em;color:var(--muted);margin:0 0 14px}h1{font:500 clamp(39px,7vw,62px)/1.08 'Playfair Display';letter-spacing:-.04em;margin:0 0 22px}h1 em{color:var(--accent);font-style:italic}.intro{color:#65675e;line-height:1.65;font-size:16px;max-width:440px;margin:0 0 38px}form{display:grid;gap:20px}label{font:500 10px 'DM Mono';letter-spacing:.1em;color:var(--muted);display:grid;gap:9px}input,textarea{font:inherit;color:var(--ink);background:transparent;border:0;border-bottom:1px solid #cfcfc6;border-radius:0;outline:0;padding:10px 0;font-size:16px}input:focus,textarea:focus{border-color:var(--accent)}button{border:0;background:var(--accent);color:white;padding:15px 18px;font:500 13px 'DM Sans';cursor:pointer;border-radius:2px;text-align:left;transition:.2s}button:hover{background:#2f4129}button span{float:right;font-size:18px;line-height:12px}.micro{color:var(--muted);font-size:12px;margin-top:16px}.error{margin:0;color:#a14232;font-size:13px}.memo{height:100vh;display:flex;flex-direction:column}header{height:68px;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 30px}.logo{color:var(--ink);text-decoration:none;font:500 16px 'Playfair Display'}.logo:first-letter{color:var(--accent)}.header-actions{display:flex;gap:9px;align-items:center}.header-actions #status{font:11px 'DM Mono';color:var(--muted);margin-right:8px}.ghost{color:var(--ink);background:transparent;border:1px solid var(--line);padding:8px 13px;font-size:12px}.ghost:hover{background:var(--warm)}.workspace{display:grid;grid-template-columns:230px 1fr;flex:1;min-height:0}aside{border-right:1px solid var(--line);padding:32px 22px;overflow:auto}#outline{display:grid;gap:2px}#outline a{color:#6b6e64;text-decoration:none;font-size:13px;padding:6px 8px;border-radius:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}#outline a:hover{background:var(--warm);color:var(--ink)}.shortcut{border-top:1px solid var(--line);margin-top:28px;padding-top:18px;display:grid;gap:5px;color:var(--muted);font-size:11px;line-height:1.5}.shortcut b{color:var(--ink);font-weight:500}.editor-wrap{max-width:880px;width:100%;margin:0 auto;padding:52px 8vw 80px;overflow:auto}.editor-wrap #memo-title{width:100%;font:500 34px 'Playfair Display';letter-spacing:-.025em;margin-bottom:28px}.editor-wrap textarea,.editor-wrap article{display:block;width:100%;min-height:calc(100vh - 230px);resize:none;border:0;font:16px/1.8 'DM Sans';white-space:pre-wrap}.editor-wrap textarea:focus{border:0}.editor-wrap article{white-space:normal}.editor-wrap article h1,.editor-wrap article h2,.editor-wrap article h3{font-family:'Playfair Display';margin:28px 0 10px}.editor-wrap article h1{font-size:32px}.editor-wrap article h2{font-size:25px}.editor-wrap article h3{font-size:20px}.editor-wrap article p{margin:0 0 12px}.editor-wrap article ul{padding-left:22px}.editor-wrap article code{background:var(--warm);padding:2px 5px;border-radius:3px;font:13px 'DM Mono'}#toast{position:fixed;bottom:24px;left:50%;transform:translate(-50%,20px);background:#252720;color:white;padding:10px 14px;font-size:12px;border-radius:4px;opacity:0;transition:.2s;pointer-events:none}#toast.show{opacity:1;transform:translate(-50%,0)}@media(max-width:650px){.home-card{margin:8vh auto}.workspace{grid-template-columns:1fr}aside{display:none}header{padding:0 17px}.logo span{display:none}.editor-wrap{padding:35px 24px}.header-actions #status{display:none}.editor-wrap #memo-title{font-size:29px}}
