:root{--bg: #fafafa;--surface: #ffffff;--surface-muted: #f5f5f5;--text: #111111;--text-muted: #666666;--border: #dfe3e8;--accent: #365b8c;--text-body: #2b2b2b;--active-bg: #f7f9fc;--sidebar-bg: #f4f6f8;--sidebar-text: #1d2430;--sidebar-divider: #d8dee7;--meta-pill-bg: #f2f4f7;--meta-pill-border: #d8dde4;--meta-pill-text: #465066;--tag-text: #3b3b3b;--code-inline-bg: #f1f1f1;--code-block-bg: #1f2329;--code-block-text: #e7ecf2;--quote-border: #d7d7d7;--quote-text: #444444;--mobile-shadow: 0 14px 36px rgba(0, 0, 0, .08);--essay-media-max-width: 860px;--essay-media-max-height: 540px;--sidebar-width: 330px;--topbar-height: 80px}:root[data-theme=dark]{--bg: #0f1115;--surface: #151924;--surface-muted: #1b2130;--text: #e8ecf3;--text-muted: #aab4c5;--border: #2a3242;--accent: #8fb4ff;--text-body: #d6dce8;--active-bg: #1f2a3d;--sidebar-bg: #141a26;--sidebar-text: #d9e2f0;--sidebar-divider: #253044;--meta-pill-bg: #1d2636;--meta-pill-border: #303d55;--meta-pill-text: #bfcae0;--tag-text: #ccd5e5;--code-inline-bg: #222938;--code-block-bg: #0d1118;--code-block-text: #dfe7f2;--quote-border: #39455c;--quote-text: #b9c4d8;--mobile-shadow: 0 14px 36px rgba(0, 0, 0, .45)}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;min-height:100%}html{font-size:125%}body{background:var(--bg);color:var(--text);font-family:Inter,IBM Plex Sans,Segoe UI,Roboto,Arial,sans-serif}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}code{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,Liberation Mono,monospace}.app-shell{min-height:100vh}.app-shell.is-resizing-sidebar{cursor:col-resize;-webkit-user-select:none;user-select:none}.app-topbar{position:sticky;top:0;z-index:30;height:var(--topbar-height);display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem;border-bottom:1px solid var(--border);background:var(--surface)}.topbar-left{display:flex;align-items:center;gap:.6rem;min-width:0}.topbar-title a{display:flex;align-items:center;gap:.4rem;color:var(--text);font-size:1.1rem;font-weight:600}.title-logo{color:var(--accent)}.topbar-title p{margin:.1rem 0 0;color:var(--text-muted);font-size:.85rem}.topbar-search{flex:1;max-width:34rem;min-width:10rem;display:flex;align-items:center;gap:.45rem;border:1px solid var(--border);border-radius:8px;background:color-mix(in srgb,var(--surface-muted) 68%,transparent);color:var(--text-muted);padding:.35rem .55rem}.topbar-search input{width:100%;border:0;outline:none;background:transparent;color:var(--text);font:inherit;font-size:.82rem}.topbar-search input::placeholder{color:color-mix(in srgb,var(--text-muted) 85%,transparent)}.topbar-search:focus-within{border-color:color-mix(in srgb,var(--accent) 55%,var(--border));box-shadow:0 0 0 1px color-mix(in srgb,var(--accent) 35%,transparent)}.topbar-actions{display:flex;align-items:center;gap:.5rem}.topbar-link{color:var(--text-muted);font-size:.83rem;font-weight:500;padding:.2rem .1rem}.topbar-link:hover{color:var(--text);text-decoration:none}.topbar-button{border:0;background:transparent;color:var(--text-muted);border-radius:6px;padding:.35rem .65rem;font:inherit;font-size:.85rem;cursor:pointer}.topbar-button:hover{background:var(--surface-muted);color:var(--text)}.theme-toggle{border:1px solid var(--border)}.topbar-button:active{transform:translateY(.5px)}.icon-button{width:2rem;height:2rem;padding:0;display:inline-flex;align-items:center;justify-content:center}.icon-button svg{display:block}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.app-layout{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);transition:grid-template-columns .15s ease-out}.app-layout.sidebar-collapsed{grid-template-columns:0 minmax(0,1fr)}.sidebar{position:sticky;top:var(--topbar-height);align-self:start;height:calc(100vh - var(--topbar-height));overflow-y:auto;border-right:1px solid var(--sidebar-divider);background:var(--surface);padding:1rem .75rem 1.3rem}.sidebar-resizer{position:absolute;top:0;right:-4px;width:8px;height:100%;cursor:col-resize;touch-action:none}.sidebar-resizer:after{content:"";position:absolute;top:0;bottom:0;left:3px;width:1px;background:transparent;transition:background .12s ease}.sidebar-resizer:hover:after{background:color-mix(in srgb,var(--accent) 50%,transparent)}.main-content{padding:3.2rem 1.5rem 3rem}.page-home,.essay-page,.page-not-found{max-width:950px;margin:0 auto}.page-header{margin-bottom:2rem}.page-header h1,.essay-header h1,.page-not-found h1{margin:0;font-size:2rem;line-height:1.2;font-weight:600;letter-spacing:-.02em}.subtitle{margin:.4rem 0 0;color:var(--text-muted);font-size:.98rem}.lead{margin:1rem 0 0;max-width:70ch;line-height:1.75;color:var(--text-body)}.recent-list-section h2,.empty-state h2{margin:0 0 1rem;font-size:1rem;font-weight:600}.recent-list{display:grid;gap:.8rem}.essay-card{border:1px solid color-mix(in srgb,var(--border) 75%,transparent);border-radius:8px;background:var(--surface);padding:.95rem 1.05rem;box-shadow:0 1px #00000005}.essay-card h3{margin:0;font-size:1rem;font-weight:600}.essay-card h3 a{color:var(--text)}.essay-card h3 a:hover{color:var(--accent)}.essay-card p{margin:.55rem 0 0;color:var(--text-body);line-height:1.65}.essay-meta-line{margin:.72rem 0 0;display:flex;flex-wrap:wrap;align-items:center;gap:.44rem}.essay-meta-chip{display:inline-flex;align-items:center;border:1px solid var(--meta-pill-border);border-radius:999px;background:var(--meta-pill-bg);color:var(--meta-pill-text);font-size:.77rem;font-weight:550;letter-spacing:.004em;padding:.12rem .5rem}.tree-root{display:flex;flex-direction:column;gap:.08rem}.tree-empty{margin:.6rem .45rem;color:var(--text-muted);font-size:.82rem}.tree-folder-button,.tree-essay-link{width:100%;border:0;background:transparent;color:var(--sidebar-text);text-align:left;text-decoration:none;font:inherit;font-size:.86rem;line-height:1.4;padding:.3rem .45rem;border-radius:5px;display:flex;align-items:center;gap:.35rem}.tree-folder-button{cursor:pointer;font-weight:630;letter-spacing:.003em}.tree-essay-link{font-weight:550}.tree-folder-button:hover,.tree-essay-link:hover{background:color-mix(in srgb,var(--surface-muted) 70%,transparent)}.tree-folder-caret{color:color-mix(in srgb,var(--sidebar-text) 55%,#7c879d);transition:transform .14s ease}.tree-folder.is-open>.tree-folder-button .tree-folder-caret{transform:rotate(90deg)}.tree-essay-link.is-active{border-left:2px solid var(--accent);border-radius:0 5px 5px 0;background:color-mix(in srgb,var(--active-bg) 85%,transparent);color:var(--sidebar-text);font-weight:670}.tag-list{list-style:none;margin:.7rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem}.tag-list li{border:1px solid var(--border);border-radius:999px;background:var(--surface-muted);padding:.12rem .5rem;color:var(--tag-text);font-size:.75rem}.essay-markdown{margin-top:1.35rem;font-family:"Source Serif 4",Georgia,Cambria,Times New Roman,serif;font-size:1.08rem;line-height:1.8;color:var(--text-body)}.essay-markdown>*+*{margin-top:1.05rem}.essay-markdown h2,.essay-markdown h3,.essay-markdown h4{margin-top:1.95rem;margin-bottom:.6rem;font-family:Inter,IBM Plex Sans,Segoe UI,Roboto,Arial,sans-serif;font-size:1.3rem;line-height:1.3}.essay-markdown h3{font-size:1.16rem}.essay-markdown p,.essay-markdown li{max-width:74ch}.essay-markdown code{background:var(--code-inline-bg);border-radius:4px;padding:.12rem .3rem;font-size:.92em}.essay-markdown pre{background:var(--code-block-bg);color:var(--code-block-text);border-radius:8px;padding:.9rem;overflow-x:auto}.essay-markdown pre code{background:transparent;padding:0}.essay-markdown blockquote{margin:1rem 0;padding-left:.9rem;border-left:3px solid var(--quote-border);color:var(--quote-text)}.essay-markdown table{width:100%;border-collapse:collapse}.essay-markdown th,.essay-markdown td{border:1px solid var(--border);padding:.45rem .55rem;text-align:left}.essay-media-frame,.essay-image-frame,.mermaid-host,.mermaid-error{width:min(100%,var(--essay-media-max-width));margin:1rem auto}.essay-media-frame{aspect-ratio:16 / 9;max-height:var(--essay-media-max-height);border:1px solid var(--border);border-radius:10px;overflow:hidden;background:var(--surface-muted)}.essay-media-frame iframe{width:100%;height:100%;border:0;display:block}.essay-image-frame{border:1px solid var(--border);border-radius:10px;background:var(--surface-muted);padding:.35rem}.essay-image-frame img{width:100%;max-height:var(--essay-media-max-height);object-fit:contain;display:block;border-radius:7px}.essay-image-frame figcaption{margin-top:.45rem;text-align:center;color:var(--text-muted);font-size:.78rem}.mermaid-host{border:1px solid var(--border);border-radius:6px;background:var(--surface-muted);overflow:hidden;position:relative;height:350px;margin:1rem 0;touch-action:none}.mermaid-host .mermaid{margin:0!important;padding:0!important;height:100%;width:100%;display:flex!important;align-items:center;justify-content:center;cursor:grab;background:transparent!important;border:0!important;overflow:visible!important;position:relative}.mermaid-host .mermaid svg{width:100%;height:100%;display:block}.mermaid-controls{position:absolute;top:.5rem;right:.5rem;display:flex;gap:.25rem;z-index:10;opacity:0;transition:opacity .2s ease}.mermaid-host:hover .mermaid-controls{opacity:1}.mermaid-btn{border:1px solid var(--border);border-radius:6px;background:var(--surface);color:var(--text);width:1.75rem;height:1.75rem;display:flex;align-items:center;justify-content:center;font:inherit;font-size:1rem;font-weight:700;cursor:pointer;padding:0;line-height:1;box-shadow:0 1px 2px #0000000d;transition:background-color .15s ease,border-color .15s ease}.mermaid-btn:hover{background:var(--surface-muted);border-color:color-mix(in srgb,var(--border) 80%,var(--text))}.mermaid-btn:active{background:color-mix(in srgb,var(--surface-muted) 80%,var(--border))}.mermaid-host:fullscreen{background:var(--surface);height:100vh;border:none;border-radius:0;max-height:none;margin:0;width:100vw}.mermaid-host:fullscreen .mermaid-controls{opacity:1;top:1rem;right:1rem}.mermaid-error{border-radius:6px}.essay-media-note{margin:.85rem 0;color:var(--text-muted);font-size:.85rem}.essay-footer{margin-top:1.8rem;padding-top:.95rem;border-top:1px solid var(--border);font-size:.9rem}@media(max-width:900px){.app-layout{grid-template-columns:minmax(0,1fr)}.sidebar{position:fixed;top:var(--topbar-height);left:0;width:min(78vw,362px);height:calc(100vh - var(--topbar-height));transform:translate(-102%);transition:transform .15s ease-out;z-index:40;box-shadow:0 0 0 1px var(--border),var(--mobile-shadow)}.sidebar.is-open{transform:translate(0)}.main-content{padding:1.8rem 1rem 2.2rem}.sidebar-resizer,.topbar-title p{display:none}.topbar-search{min-width:7rem;max-width:none}.topbar-search input{font-size:.78rem}}@media(min-width:901px){.app-layout.sidebar-collapsed .sidebar{border-right:0;padding-inline:0;overflow:hidden;opacity:0}.app-layout.sidebar-collapsed .sidebar-resizer{display:none}}
