:root{--paper:#fffefa;--bg:#f6f5f0;--ink:#263b36;--muted:#7a8078;--line:#e4e6dd;--green:#31594b;--light:#e9eee6;--serif:Georgia,'Times New Roman',serif;--sans:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:15px/1.55 var(--sans)}button,input,select{font:inherit}button,a,input,select{outline-offset:4px}button{cursor:pointer;color:inherit;border:1px solid transparent;background:transparent;border-radius:6px;padding:9px 13px;line-height:1.3}button:hover{background:var(--light)}button:disabled{opacity:.5;cursor:wait}a{color:inherit;text-decoration:none}button.primary{background:var(--green);color:white;padding:11px 19px;font-weight:550;white-space:nowrap}button.primary:hover{background:#244338}kbd{font:11px var(--sans);padding:2px 5px;border:1px solid var(--line);border-radius:4px;color:var(--muted)}.primary kbd{border-color:#648373;color:#d7e2da;margin-left:15px}.sidebar{position:fixed;width:276px;top:0;left:0;height:100dvh;background:var(--bg);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:26px 16px 0;z-index:30}.brand{display:flex;gap:13px;align-items:center;margin:0 12px 30px}.monogram{font:36px var(--serif);letter-spacing:-3px;padding-right:14px;border-right:1px solid #cfd6cb}.brand>span+span{font-size:11px;line-height:1.5;font-weight:650;letter-spacing:.5px}.brand small{font-size:9px;color:var(--muted);font-weight:400;letter-spacing:0}.search-trigger{display:flex;align-items:center;justify-content:space-between;border:1px solid #daddd2;background:var(--paper);width:100%;font-size:12px;padding:11px 12px;margin-bottom:27px;color:#727c72}.nav-caption{font-size:9px;font-weight:650;letter-spacing:1.4px;color:#8b9487;padding:0 12px;margin-bottom:13px}.sidebar nav{overflow:auto;min-height:30px;scrollbar-width:thin}.tree-row{padding-left:calc(3px + var(--depth)*12px);display:flex;align-items:center;border-radius:5px;min-height:38px;margin-bottom:2px;position:relative}.tree-row.active{background:#e5eadd;color:#274a3e}.tree-row:hover{background:#eaece4}.tree-row a{display:flex;align-items:center;gap:9px;flex:1;min-width:0;font-size:12px;line-height:1.45;padding:8px 6px 8px 0;overflow-wrap:anywhere}.tree-row .disclosure{font-size:15px;flex-shrink:0;padding:2px 4px;width:20px;color:#929b90}.nav-icon{color:#7f8e7c;width:17px;flex-shrink:0;text-align:center;font-size:17px}.tree-row.active a{font-weight:600}.drag-over{outline:2px solid #688d69;background:#dae6d3!important}.new-page{color:#6f7c6c;text-align:left;font-size:12px;margin:13px 0 10px}.sidebar-bottom{margin-top:auto;padding:12px 5px 0;background:var(--bg)}.sidebar-bottom>button{display:block;text-align:left;width:100%;font-size:12px;color:#6f796b;padding:8px 8px}.profile{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);margin-top:12px;padding:14px 0}.profile>button:first-child{display:flex;align-items:center;gap:9px;padding:0;text-align:left;font-size:12px}.profile small{display:block;color:var(--muted);font-size:10px}.avatar{display:inline-grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#e2e8db;color:#5b7154;font-size:13px}.workspace{margin-left:276px}.topbar{position:sticky;top:0;z-index:20;background:#fffefaf2;backdrop-filter:blur(12px);border-bottom:1px solid var(--line);height:73px;display:flex;align-items:center;justify-content:space-between;padding:0 34px;gap:12px}#breadcrumbs{display:flex;align-items:center;gap:10px;font-size:11px;min-width:0;white-space:nowrap;overflow:hidden;color:#838c7e}#breadcrumbs a{overflow:hidden;text-overflow:ellipsis;max-width:240px}#breadcrumbs a:last-child{color:#435742}#breadcrumbs span{color:#c2c8bc}.top-actions{display:flex;align-items:center;gap:8px;flex-shrink:0;font-size:12px}.top-actions>button:not(.primary){color:#6e7d6b}.top-actions .primary{font-size:12px}.mobile-menu{display:none}.reading-layout{display:grid;grid-template-columns:minmax(0,820px) 170px;justify-content:center;gap:55px;padding:57px 48px 45px}.page{min-width:0}.eyebrow{color:#85927d;font-size:10px;letter-spacing:1.9px;font-weight:600;margin-bottom:20px}h1{font-family:var(--serif);font-size:45px;letter-spacing:-1.7px;font-weight:400;line-height:1.16;margin:0 0 20px;overflow-wrap:anywhere}.home-page h1{font-size:57px;max-width:660px}.page-meta{display:flex;gap:9px;align-items:center;font-size:10px;color:#91998c;margin-bottom:37px}.badge{background:var(--light);padding:3px 7px;border-radius:4px}.prose{color:#455344;line-height:1.85;font-size:15px;overflow-wrap:anywhere}.prose p{margin:0 0 19px}.prose h2{font:400 27px/1.3 var(--serif);letter-spacing:-.5px;margin:38px 0 17px;color:var(--ink);scroll-margin-top:95px}.prose h3{font-size:17px;line-height:1.4;font-weight:600;margin:29px 0 13px;scroll-margin-top:95px}.prose a{color:#47704b;text-decoration:underline;text-underline-offset:4px;text-decoration-color:#b5c5a8}.prose a:hover{color:#163e2b}.prose strong{font-weight:650}.prose ul,.prose ol{padding-left:25px;margin:12px 0 25px}.prose li{padding-left:5px;margin:7px 0}.prose blockquote{margin:30px 0;border-left:2px solid #829773;padding:4px 0 4px 24px;font:italic 22px/1.6 var(--serif);color:#536748}.prose blockquote p{margin:0}.prose img{max-width:100%;height:auto;border-radius:4px;display:block;margin:25px auto}.prose figure{margin:25px 0}.prose figcaption{font-size:12px;color:var(--muted);text-align:center}.prose table{border-collapse:collapse;max-width:100%;display:block;overflow-x:auto;font-size:12px;line-height:1.5;margin:20px 0}.prose td,.prose th{border:1px solid var(--line);padding:10px;min-width:70px;vertical-align:top}.prose th{background:var(--bg)}.prose td p,.prose th p{margin:0}.prose hr{border:0;border-top:1px solid var(--line);margin:32px 0}.prose pre{background:var(--bg);padding:15px;overflow:auto}.toc{position:sticky;top:112px;align-self:start;border-left:1px solid var(--line);padding-left:22px;margin-top:7px}.toc .nav-caption{padding:0;font-size:8px;margin-bottom:18px}.toc nav{display:flex;flex-direction:column;gap:12px;max-height:60vh;overflow:auto;scrollbar-width:thin}.toc nav a{font-size:10px;color:#8b9684;line-height:1.5}.toc nav a:hover{color:var(--green)}.toc nav a.sub{padding-left:10px}.toc-note{font:italic 15px/1.7 var(--serif);color:#a0a994;margin-top:38px;padding-top:20px;border-top:1px solid var(--line)}.section-label{font-size:9px;letter-spacing:1.4px;color:#829079;font-weight:650;margin-bottom:15px;display:flex;align-items:center;gap:10px}.section-label>span{border:1px solid var(--line);padding:0 5px;border-radius:4px;letter-spacing:0;font-weight:400}.child-section{margin-top:45px;scroll-margin-top:95px}.child-list{border-top:1px solid var(--line)}.child-link{display:flex;gap:17px;align-items:center;border-bottom:1px solid var(--line);padding:19px 6px;font-size:14px;transition:background .15s}.child-link:hover{background:var(--bg)}.child-icon{font-size:24px;color:#829575;width:30px}.child-link small{display:block;color:#98a08f;font-size:10px;margin-top:3px}.child-link .arrow{margin-left:auto;color:#8c9c80;font-size:20px}.attachments{margin-top:45px;scroll-margin-top:95px}.file-list{display:grid;gap:8px}.file-link{border:1px solid var(--line);border-radius:6px;display:flex;align-items:center;gap:13px;padding:12px 15px;overflow-wrap:anywhere;font-size:12px}.file-link:hover{background:var(--bg)}.file-link>span:last-child{margin-left:auto;color:#94a288}.file-link small{display:block;color:#9aa08f;font-size:10px;margin-top:2px}.file-ext{border:1px solid #d9e0d2;border-radius:4px;padding:7px 4px;font-size:9px;color:#7d8d70;min-width:36px;text-align:center;flex-shrink:0}.drop-zone{border:1px dashed #d4dccd;border-radius:6px;margin-top:12px;text-align:center;padding:19px 12px;color:#97a08e;font-size:11px}.drop-zone>span{margin-right:7px}.drop-zone button{padding:0;text-decoration:underline;text-underline-offset:3px;color:#718468}.drop-zone.over{background:var(--light);border-color:var(--green)}.article-footer{margin-top:55px;border-top:1px solid var(--line);padding-top:20px;display:flex;justify-content:space-between;color:#a1aa97;font-size:9px;gap:10px}.edit-wrap{max-width:990px;padding:42px 55px 80px;margin:auto}.title-input{font:400 40px/1.25 var(--serif);letter-spacing:-1px;color:var(--ink);background:transparent;border:0;border-bottom:1px solid var(--line);border-radius:0;padding:6px 0 17px;width:100%;margin-bottom:16px}.editor-help{color:#8c9883;font-size:11px;margin-bottom:25px}.editor-toolbar{position:sticky;top:73px;background:#f7f8f2;z-index:15;display:flex;flex-wrap:wrap;align-items:center;gap:2px;border:1px solid var(--line);border-radius:6px 6px 0 0;padding:7px}.editor-toolbar button{font-size:11px;padding:7px 9px}.editor-toolbar i{height:18px;width:1px;background:var(--line);margin:0 3px}.ProseMirror{min-height:380px;padding:27px 24px;border:1px solid var(--line);border-top:0;outline:none}.ProseMirror:focus{border-color:#9eaf93}.ProseMirror p.is-editor-empty:first-child:before{content:attr(data-placeholder);float:left;height:0;pointer-events:none;color:#aab2a1}.ProseMirror-selectednode{outline:2px solid #65875b}.ProseMirror .selectedCell{background:#e5ecdf}.edit-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:12px;gap:20px}.edit-bottom button{border:1px solid var(--line);font-size:12px;white-space:nowrap}.edit-bottom>span{font-size:10px;color:#95a08a}#save-state{font-size:10px;color:#839375}.draft-banner{background:#f1eee0;color:#7e754f;padding:12px 15px;font-size:11px;margin-bottom:22px;border-radius:4px}.draft-banner button{padding:4px 6px;text-decoration:underline;font-size:11px}.login{min-height:100dvh;background:var(--bg);padding:44px 55px;display:flex;flex-direction:column}.login .brand{margin:0}.login-content{width:min(450px,100%);margin:65px auto}.login h1{font-size:58px;line-height:1.1;margin-bottom:22px}.login-content>p{color:#7c8974;font-size:13px;margin-bottom:30px}.login form{margin:27px 0 20px}.login form .primary{width:100%;display:flex;justify-content:space-between;margin-top:23px}.login-content small{color:#98a18e;font-size:10px}.login-bottom{display:flex;justify-content:space-between;margin-top:auto;color:#9da793;letter-spacing:1.5px;font-size:9px}label{display:block;font-size:12px;color:#64725b;margin-bottom:18px}input:not([type=checkbox]),select{display:block;margin-top:7px;width:100%;padding:11px 12px;border:1px solid #d8decf;background:var(--paper);border-radius:5px;color:var(--ink);min-width:0}input:focus,select:focus{outline:2px solid #b4c1a8;outline-offset:1px}.form-error{color:#a45743!important;font-size:12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}dialog{border:1px solid var(--line);border-radius:11px;background:var(--paper);color:var(--ink);box-shadow:0 20px 100px #192e3420;padding:25px 30px;width:min(510px,calc(100vw - 28px));max-height:85dvh}dialog.wide{width:min(760px,calc(100vw - 28px))}dialog::backdrop{background:#1d30294d;backdrop-filter:blur(3px)}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:22px}.dialog-head h2{font:26px var(--serif);margin:0}.dialog-head button{font-size:24px;padding:0 8px;color:#87947d}.muted{font-size:12px;color:#8c9782;line-height:1.7}.form-divider{font-size:10px;color:#97a18f;text-align:center;margin:0 0 17px}.form-actions{display:flex;justify-content:space-between;gap:10px}.empty{text-align:center;font-size:13px;padding:35px 10px;color:#95a08d}.search-results{margin-top:20px;max-height:53vh;overflow:auto}.search-result{display:flex;flex-direction:column;gap:4px;padding:17px 7px;border-top:1px solid var(--line)}.search-result:hover{background:var(--bg)}.search-result small{font-size:8px;letter-spacing:1px;color:#8e9c81}.search-result b{font-size:14px;font-weight:550}.search-result>span{font-size:11px;color:#8c9884;line-height:1.6}.history-list button{display:flex;align-items:center;justify-content:space-between;gap:15px;width:100%;text-align:left;border-top:1px solid var(--line);border-radius:0;padding:17px 6px}.history-list b{font-size:12px;white-space:nowrap}.history-list span,.history-list small{font-size:10px;color:#8b977f}.revision-preview{max-height:55vh;overflow:auto;margin-bottom:20px}.revision-preview h1{font-size:30px}.user-list{margin-top:20px}.user-list button{display:flex;gap:12px;width:100%;align-items:center;text-align:left;border-top:1px solid var(--line);padding:15px 0}.user-list button>span:last-child{margin-left:auto}.user-list b{font-size:13px;font-weight:500}.user-list small{display:block;font-size:10px;color:#8a977f}.check{display:flex;align-items:center;gap:10px}.menu-option,.table-actions button{display:block;width:100%;border-top:1px solid var(--line);text-align:left;padding:16px 5px;font-size:13px;border-radius:0}#toast{position:fixed;bottom:25px;left:50%;transform:translateX(-50%) translateY(20px);background:#28483c;color:white;padding:13px 22px;border-radius:7px;font-size:12px;z-index:1000;max-width:min(600px,90vw);opacity:0;pointer-events:none;transition:.2s}#toast.visible{opacity:1;transform:translateX(-50%)}#toast.error{background:#894d3c}@media(min-width:1650px){.reading-layout{padding-top:70px;gap:80px}.page{max-width:820px}}@media(max-width:1230px){.toc{display:none}.reading-layout{display:block;padding:45px 45px}.page{max-width:780px;margin:auto}.sidebar{width:244px}.workspace{margin-left:244px}.topbar{padding:0 24px}.edit-wrap{padding:35px}}@media(max-width:850px){.sidebar{transform:translateX(-100%);width:276px;box-shadow:15px 0 50px #1d30291f;transition:.2s}.sidebar.mobile-open{transform:translateX(0)}.workspace{margin-left:0}.mobile-menu{display:block}.topbar{height:63px;padding:0 15px;gap:5px}#breadcrumbs{flex:1;font-size:10px}.top-actions{gap:3px}.top-actions .primary{padding:9px 11px;font-size:11px}.top-actions>button>span,.save kbd{display:none}.reading-layout{padding:35px 25px}.home-page h1{font-size:45px}h1{font-size:35px}.prose{font-size:14px}.edit-wrap{padding:30px 20px}.editor-toolbar{top:63px}.editor-toolbar button{padding:7px}#save-state{max-width:90px;font-size:9px}.title-input{font-size:31px}.edit-bottom{align-items:flex-start;flex-direction:column;gap:10px}.ProseMirror{padding:20px 15px}.login{padding:28px}.login h1{font-size:46px}.login-content{margin:65px auto 40px}.file-link{padding:10px;gap:10px}.file-link>span:nth-child(2){min-width:0}.history-list button{flex-wrap:wrap}.history-list span{flex:1}.top-actions>button:not(.primary){padding:7px}.toc{display:none}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
