:root{color-scheme:light;--paper:#f8f8f3;--surface:#fffefa;--ink:#253c33;--text:#455049;--muted:#8b9189;--line:#e1e4d9;--green:#38644e;--green-wash:#edf1e7;--serif:"Noto Serif CJK SC","Noto Serif SC","Source Han Serif SC","Songti SC",STSong,Georgia,serif;--sans:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans CJK SC","Microsoft YaHei",sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--text);font:14px/1.7 var(--sans);-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{cursor:pointer}button:disabled{cursor:default;opacity:.45}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--green);outline-offset:4px}button{color:inherit}svg{width:20px;height:20px;flex-shrink:0;vertical-align:middle}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--ink)}[hidden]{display:none!important}.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}.sidebar{position:fixed;inset:0 auto 0 0;width:228px;background:#f1f3ea;border-right:1px solid var(--line);padding:38px 24px 24px;display:flex;flex-direction:column;z-index:30;overflow-y:auto}.brand{display:flex;gap:12px;align-items:center;color:var(--ink);margin-bottom:49px}.brand-mark{font-family:Georgia,serif;font-size:43px;line-height:1;letter-spacing:-6px;padding-right:6px;font-weight:700}.brand-mark>span{color:#80966a}.brand-name{font-size:21px;font-weight:600;letter-spacing:.2px;line-height:1.5}.brand-name>span{display:block;font-size:10px;font-weight:400;letter-spacing:3.4px;color:#858f80}.sidebar-label{font-size:10px;color:#939b8e;letter-spacing:1.7px;line-height:1.6;font-weight:500}.sidebar-label>span{margin:0 3px;color:#c1c8b8}.main-nav{display:grid;gap:6px;margin:16px -8px 36px}.main-nav>a{padding:10px 12px;display:flex;align-items:center;gap:12px;font-size:13px;border-radius:5px;color:#687261}.main-nav>a.active{background:#e3e9da;color:var(--green);font-weight:600}.main-nav>a:hover{background:#e9eddf}.nav-count{margin-left:auto;font-size:10px;font-weight:400}.tiny-badge{font-size:8px;line-height:16px;border:1px solid #b2c0a5;color:#708366;border-radius:3px;padding:0 4px;margin-left:auto}.sidebar-categories{padding-top:0}.sidebar-categories>.sidebar-label{margin-bottom:13px}.subject-link{display:flex;justify-content:space-between;padding:7px 4px;font-size:11px;gap:8px;color:#74806d}.subject-link>span:first-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.subject-link>span:last-child{font-size:10px;color:#a0a891}.subject-link:hover{color:var(--green)}.sidebar-bottom{margin-top:auto;padding-top:45px;font-size:10px;color:#849078;letter-spacing:.1px}.garden-dot{display:inline-block;height:5px;width:5px;border-radius:50%;background:#7d9769;margin-right:6px;vertical-align:middle}.sidebar-bottom p{font-size:10px;color:#a3aa9a;margin:7px 0 22px}.sidebar-year{font-size:9px;letter-spacing:1px;color:#a0a78f}.page-main{margin-left:228px;min-height:100vh}.mobile-bar{display:none}.eyebrow{font-size:10px;line-height:1.5;letter-spacing:2.3px;color:#8b9981;font-weight:500}.catalog-wrap{max-width:1280px;margin:auto;padding:58px 60px 26px}.page-header{padding-bottom:29px}.heading-line{display:flex;align-items:center;gap:27px;margin-top:13px}.heading-line h1{font-family:var(--serif);font-size:38px;line-height:1.5;font-weight:600;letter-spacing:2px;margin:0}.heading-period{color:#8c9f76;margin-left:3px}.header-note{font-family:var(--serif);font-size:12px;letter-spacing:.7px;color:#969b90;padding-top:10px}.page-description{font-size:12px;color:#8a9385;letter-spacing:.3px;margin:12px 0 0}.catalog-toolbar{padding:22px 0 19px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.search-field{display:flex;align-items:center;gap:11px;min-width:0;border:1px solid var(--line);border-radius:5px;background:#fcfcf7;padding:0 13px;color:#9ba48e}.search-field svg{width:17px;height:17px}.search-field input{border:0;outline:none!important;background:transparent;color:var(--ink);width:100%;min-width:0;padding:12px 0;font-size:12px}.search-field input::placeholder{color:#a1a699}.search-field:focus-within{border-color:#9caf8a;box-shadow:0 0 0 2px #e9eee1}.search-field kbd{font:11px var(--sans);border:1px solid var(--line);padding:0 5px;border-radius:3px;color:#adb3a4}.catalog-filter-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-top:17px}.filter-chips{display:flex;gap:5px 6px;flex-wrap:wrap}.filter-chip{border:0;background:transparent;color:#8c9483;font-size:11px;padding:5px 10px;border-radius:4px;white-space:nowrap}.filter-chip span{margin-left:4px;font-size:9px;opacity:.65}.filter-chip.active{background:var(--green);color:#fff}.filter-chip:hover:not(.active){background:var(--green-wash);color:var(--green)}.sort-control{display:flex;align-items:center;gap:7px;white-space:nowrap;font-size:10px;color:#9da58f;padding-top:5px}.sort-control select{border:0;background:transparent;color:#6d7964;font-size:11px;max-width:100px;cursor:pointer}.catalog-result-line{display:flex;justify-content:space-between;align-items:center;margin:25px 0 18px;color:#969e8c;font-size:10px;letter-spacing:.4px}.small-label{font-size:8px;letter-spacing:1.6px;color:#b0b6a5}.article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.note-card{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:23px 23px 16px;display:flex;flex-direction:column;min-width:0;min-height:250px;transition:box-shadow .2s,border-color .2s,transform .2s}.note-card:hover{border-color:#b7c4a8;box-shadow:0 7px 22px #314b3510;transform:translateY(-2px)}.card-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.category-chip{font-size:9px;color:#778867;background:#edf1e6;border-radius:3px;padding:3px 7px;letter-spacing:.3px;display:inline-block;max-width:90%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.card-number{font:10px Georgia,serif;color:#c2c9b6;letter-spacing:1px}.note-card h2{font-family:var(--serif);font-size:18px;line-height:1.65;font-weight:600;letter-spacing:.4px;margin:0 0 10px;overflow-wrap:anywhere}.note-card h2 a{display:block}.card-excerpt{font-size:11px;line-height:1.95;color:#919888;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:12px;overflow-wrap:anywhere}.card-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;margin-bottom:9px;font-size:9px;color:#a2aa97;min-height:15px}.card-tags span:before{content:'#';margin-right:2px;color:#b4bda6}.card-footer{display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#9ba58e;border-top:1px solid #edf0e7;padding-top:11px;gap:5px}.meta-dot{padding:0 6px;color:#c1c8b4}.card-arrow{display:inline-flex;color:#9aab85;flex-shrink:0}.card-arrow svg{height:15px;width:15px}.catalog-empty{text-align:center;padding:80px 20px;color:#738265}.catalog-empty p{font-size:12px;color:#9ca58e;margin-top:8px}.pagination{display:flex;justify-content:center;align-items:center;gap:7px;margin-top:30px}.pagination:empty{display:none}.pagination button{background:transparent;border:1px solid transparent;border-radius:4px;min-width:29px;height:29px;font-size:10px;color:#8f9a83;padding:0 9px}.pagination button.active{background:var(--green);color:white}.pagination button:not(.active):hover{border-color:var(--line)}.pagination>span{font-size:10px;color:#a8b098}.page-footer{border-top:1px solid var(--line);margin-top:39px;padding-top:20px;display:flex;justify-content:space-between;color:#a7ae9c;font-size:10px;gap:15px}.page-footer a{color:#7d906c}.page-footer svg{width:13px;height:13px;margin-left:8px}.button{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:5px;padding:8px 13px;font-size:11px;line-height:1.6;background:transparent;white-space:nowrap}.button svg{width:15px;height:15px}.button.primary{background:var(--green);color:#fff;border-color:var(--green)}.button.primary:hover{background:#2d5541}.button.subtle{color:#7b8c6f;background:#fafbf5}.button.subtle:hover{border-color:#b5c3a6;background:#edf1e7}.icon-button{display:inline-flex;align-items:center;justify-content:center;border:0;background:transparent;color:#809271;padding:6px}.reading-wrap{max-width:1320px;padding:37px 55px 70px;margin:auto}.breadcrumb{display:flex;align-items:center;gap:9px;color:#a1aa94;font-size:10px;margin-bottom:34px;min-width:0}.breadcrumb svg{height:11px;width:11px;color:#b5bda9}.breadcrumb a:hover{color:var(--green)}.reading-layout{display:grid;grid-template-columns:minmax(0,760px) 180px;gap:55px}.article-header{padding-bottom:29px;border-bottom:1px solid var(--line)}.article-header h1{font-family:var(--serif);font-size:34px;line-height:1.6;letter-spacing:.8px;margin:13px 0 15px;font-weight:600;overflow-wrap:anywhere}.article-meta{display:flex;flex-wrap:wrap;gap:11px;font-size:10px;color:#9ba38f}.article-actions{display:flex;align-items:center;flex-wrap:wrap;gap:15px;margin-top:24px}.article-actions>span:last-child{font-size:10px;color:#a8ae9e}.prose{color:#4c574d;font-size:15px;line-height:1.95;overflow-wrap:anywhere}.article-prose{font-family:var(--serif);padding-top:11px}.prose p{margin:15px 0 23px}.prose h1,.prose h2,.prose h3,.prose h4{color:var(--ink);line-height:1.7;font-weight:600;margin:28px 0 16px}.prose h2{font-size:23px}.prose h3{font-size:18px}.prose h4{font-size:16px}.prose a{color:var(--green);text-decoration:underline;text-underline-offset:4px;text-decoration-color:#b9c6a7}.prose ul,.prose ol{padding-left:24px;margin:17px 0 24px}.prose li{padding-left:3px;margin:5px 0}.prose blockquote{border-left:3px solid #acbd96;background:#eef1e8;padding:8px 20px;margin:25px 0;color:#78846a;border-radius:0 4px 4px 0}.prose blockquote p{margin:8px 0}.prose code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:.86em;background:#ecefe4;padding:2px 5px;border-radius:3px;color:#4b6543}.prose pre{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;background:#eef0e8;border:1px solid var(--line);padding:19px 21px;border-radius:6px;overflow:auto;font-size:12px;line-height:1.8;max-width:100%;white-space:pre;overflow-wrap:normal;margin:23px 0}.prose pre code{padding:0;background:transparent;font-size:inherit;white-space:pre}.prose table{display:block;overflow-x:auto;max-width:100%;width:max-content;border-collapse:collapse;font-size:13px;margin:24px 0}.prose th,.prose td{border:1px solid var(--line);padding:9px 14px;min-width:65px}.prose th{background:#edf0e5;font-weight:600}.prose hr{border:0;border-top:1px solid var(--line);margin:32px 0}.prose img{max-width:100%;height:auto;border-radius:5px}.prose .math.block{overflow-x:auto;overflow-y:hidden;padding:14px 4px;margin:16px 0;text-align:center}.prose .katex{font-size:1.08em}.note-section{scroll-margin-top:30px}.note-section+.note-section{border-top:1px solid #e5e7df;padding-top:14px;margin-top:33px}.toc-panel{position:sticky;top:50px;align-self:start;border-left:1px solid var(--line);padding-left:23px;margin-top:10px;max-height:calc(100vh - 90px);overflow:auto}.toc-panel ol{list-style:none;padding:0;margin:17px 0 30px}.toc-panel li{font-size:10px;line-height:1.7;padding:7px 0;color:#97a18b}.toc-panel li a{display:block}.toc-panel li a.active,.toc-panel li a:hover{color:var(--green)}.toc-ai{display:flex;align-items:center;gap:6px;flex-wrap:wrap;font-size:10px;color:#7a8d69;padding-top:19px;border-top:1px solid var(--line)}.toc-ai svg{height:13px;width:13px}.toc-panel>p{font-family:var(--serif);font-size:10px;color:#b0b7a3;margin-top:15px}.article-end{display:flex;flex-direction:column;align-items:center;gap:22px;padding:50px 0 35px;font-size:10px;color:#b3bba6}.article-end>a{display:flex;align-items:center;gap:7px;color:#7d8e6b}.article-end svg{height:13px;width:13px}.related-notes{border-top:1px solid var(--line);padding-top:28px;margin-top:15px}.related-notes h2{font-family:var(--serif);font-size:23px;margin:8px 0 17px}.related-notes>a{display:flex;align-items:center;gap:15px;padding:15px 0;border-bottom:1px solid var(--line)}.related-notes>a span{font-size:9px;color:#9ba78d;flex:0 0 50px}.related-notes>a strong{font-family:var(--serif);font-weight:500;font-size:15px}.related-notes>a svg{margin-left:auto;width:16px;color:#9bac88}.local-reading-label{color:#899b77;font-size:11px}.chat-main{height:100dvh;min-height:600px;overflow:hidden}.chat-layout{display:grid;grid-template-columns:minmax(0,1fr) 295px;height:100%}.conversation{display:flex;flex-direction:column;min-width:0;min-height:0;padding:29px 36px 17px;position:relative}.chat-header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-bottom:20px}.chat-header h1{font-family:var(--serif);font-size:26px;line-height:1.4;letter-spacing:1px;margin:5px 0 0;font-weight:600}.chat-header .eyebrow{font-size:8px;letter-spacing:1.9px}.chat-header-actions{display:flex;gap:8px}.chat-header-actions .button{font-size:10px;padding:6px 10px}.scope-bar{display:flex;align-items:center;gap:2px;font-size:10px;color:#80916e;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:11px 0;min-height:41px}.scope-bar #scope-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.scope-bar .garden-dot{flex-shrink:0}.mode-label{margin-left:auto;font-size:9px;color:#a3ad96;white-space:nowrap;padding-left:8px}.conversation-scroll{flex:1;min-height:0;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#d6dfc9 transparent;margin:0 -12px;padding:0 12px}.chat-empty{max-width:520px;margin:75px auto 40px;text-align:center}.empty-symbol{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:13px;border:1px solid #dce3d1;background:#eff3e8;color:#819d6b;margin:0 auto 26px}.empty-symbol svg{height:23px;width:23px;stroke-width:1.1}.chat-empty>.eyebrow{font-size:7px;letter-spacing:2px;color:#a6b096}.chat-empty h2{font-family:var(--serif);font-size:32px;line-height:1.7;letter-spacing:2px;font-weight:500;margin:15px 0}.chat-empty>p{font-size:11px;color:#a0aa94;line-height:1.9}.example-prompts{margin-top:30px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;text-align:left}.example-prompt{padding:15px 13px;background:#fcfcf7;border:1px solid var(--line);border-radius:5px;min-width:0;text-align:left;display:flex;flex-direction:column;gap:8px;transition:border-color .2s}.example-prompt:hover{border-color:#9cb588;background:#f1f4eb}.example-prompt>span{font-size:9px;color:#8ea078}.example-prompt>strong{font-weight:400;font-size:11px;line-height:1.8;color:#768368;overflow-wrap:anywhere}.example-prompt svg{width:13px;height:13px;align-self:flex-end;color:#a4b58d;margin-top:auto}.composer-wrap{padding-top:12px;flex-shrink:0}.composer{border:1px solid #cfdac2;background:#fffef9;border-radius:8px;box-shadow:0 3px 10px #51654405;padding:14px 15px 10px}.composer:focus-within{border-color:#a3b88c;box-shadow:0 0 0 2px #e8efde}.composer textarea{display:block;width:100%;max-height:150px;resize:none;border:0;background:transparent;outline:none!important;line-height:1.8;color:#506045;font-size:12px;padding:0;min-height:30px}.composer textarea::placeholder{color:#a3ae98}.composer-bottom{display:flex;justify-content:space-between;align-items:center;margin-top:12px;gap:10px}.composer-bottom>span{color:#a1ae93;font-size:9px}.composer-bottom>span svg{width:12px;height:12px;margin-right:4px}.send-button{border:0;border-radius:5px;width:30px;height:30px;display:flex;align-items:center;justify-content:center;background:var(--green);color:#fff}.send-button svg{width:17px;height:17px}.composer-note{font-size:8px;color:#b0b9a4;display:flex;justify-content:space-between;margin:8px 1px 0;gap:8px}.cancel-button{font-size:10px;margin-left:auto;padding:4px 10px;color:#8b7258}.chat-status{font-size:10px;color:#8e9f7d;min-height:0;padding:0 4px 6px}.chat-status:empty{display:none}.sources-panel{border-left:1px solid var(--line);background:#f3f5ec;padding:34px 22px 20px;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#d8e0cb transparent}.sources-panel-heading{display:flex;justify-content:space-between;align-items:center}.sources-panel-heading h2{font-size:13px;font-weight:500;letter-spacing:.6px;margin:0}.sources-panel-heading .icon-button{display:none}.panel-description{color:#a4af96;font-size:10px;margin:9px 0 22px}.scope-all-button{border:1px solid #b9cbaa;background:#e9f0e0;padding:12px;display:flex;align-items:center;gap:9px;text-align:left;width:100%;border-radius:5px;color:#6e865b;font-size:11px}.scope-all-button>svg{width:17px;height:17px}.scope-all-button small{display:block;font-size:9px;color:#9aaa8a;margin-top:3px}.scope-check{margin-left:auto;color:#839f6b}.scope-all-button:not(.selected){border-color:var(--line);background:#f8faf3}.scope-all-button:not(.selected) .scope-check{visibility:hidden}.picker-search{margin:19px 0 15px;background:#f8faf3;padding:0 9px;gap:7px}.picker-search input{padding:9px 0;font-size:10px}.picker-search svg{width:14px;height:14px}.picker-caption{display:flex;justify-content:space-between;color:#9ca98c;font-size:9px}.text-button{background:none;border:0;font-size:9px;color:#8c9f7a;padding:0}.note-picker{max-height:225px;overflow:auto;margin-top:8px;padding-right:3px;scrollbar-width:thin}.picker-note{display:flex;align-items:flex-start;gap:8px;padding:8px 0;border-bottom:1px solid #e7ebdf;cursor:pointer;min-width:0;font-size:10px;line-height:1.7;color:#849574}.picker-note input{accent-color:var(--green);margin:3px 0 0;width:12px;height:12px;flex-shrink:0}.picker-note>span{min-width:0;overflow-wrap:anywhere}.picker-note small{display:block;color:#b0baa0;font-size:8px;margin-top:1px}.picker-empty{font-size:10px;color:#a3ad95;padding:13px 0}.source-results-heading{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.source-results-heading h2{font-size:12px;font-weight:500;margin:0}.source-results-heading>span{font-size:9px;background:#e5ecda;border-radius:3px;min-width:19px;text-align:center;color:#96a885}.source-placeholder{color:#adb69f;font-size:10px;line-height:2.1;margin:19px 0}.source-card{margin-top:11px;padding:12px;background:#fafbf6;border:1px solid #dce4d0;border-radius:5px;scroll-margin-top:20px}.source-card:target{border-color:#97ad7f;background:#edf3e4}.source-card>a{display:flex;align-items:flex-start;gap:7px;color:#718760;font-size:10px;line-height:1.7;font-weight:500}.source-number{font-size:8px;font-family:var(--sans);color:#879e70;background:#e8efde;min-width:17px;text-align:center;border-radius:3px;line-height:17px}.source-card>p,.source-card>.source-excerpt{font-size:9px;color:#a2ae93;line-height:1.9;margin:8px 0 0;display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.source-excerpt p{margin:0}.source-bottom{font-size:8px;line-height:1.9;color:#adb99e;display:flex;gap:7px;border-top:1px solid var(--line);padding-top:14px;margin-top:26px}.source-bottom svg{width:12px;height:12px;margin-top:2px}.messages{padding:24px 0 10px}.chat-message{margin-bottom:27px;min-width:0}.message-role{display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:1px;color:#91a17e;margin-bottom:8px}.message-role>span{display:flex;align-items:center;gap:6px}.message-role svg{height:13px;width:13px}.chat-message.user{display:flex;flex-direction:column;align-items:flex-end}.chat-message.user .message-content{background:#eaf0e1;border:1px solid #dfe8d3;border-radius:9px 9px 2px 9px;padding:12px 16px;max-width:92%;white-space:pre-wrap;font-size:12px;color:#617650;overflow-wrap:anywhere}.chat-message.user .message-role{margin-right:2px;font-size:8px;color:#a9b49b}.chat-message.assistant .message-content{font-size:13px;line-height:1.95;padding:3px 0 0}.chat-message.assistant .prose p{margin:10px 0 15px}.chat-message.assistant .prose pre{font-size:11px}.message-pending{color:#a8b59a;font-size:11px;line-height:1.9;display:flex;align-items:center;gap:7px}.thinking-dot{width:5px;height:5px;background:#91a67e;border-radius:50%;animation:pulse 1.3s infinite}.message-meta{font-size:8px;color:#b0bba2;margin-top:13px;border-top:1px solid #e8ecdf;padding-top:8px}.message-error{color:#a28a69;font-size:11px;background:#f3eee2;border:1px solid #e4d9c3;padding:12px 14px;border-radius:5px;line-height:1.8}.citation-marker,.citation-ref,.prose a[href^="#citation-"]{font-size:9px;line-height:1.4;border-radius:3px;background:#e6eddc;text-decoration:none;color:#73915a;padding:1px 4px;margin:0 2px;vertical-align:super;font-family:var(--sans)}.tool-chips{display:flex;gap:6px;flex-wrap:wrap;margin:5px 0 12px}.tool-chip{border:1px solid #dee6d4;background:#f2f5ec;border-radius:4px;padding:3px 7px;font-size:9px;color:#91a47c}.tool-chip.current{border-color:#bacaa8;color:#789260}.tool-trace{font-size:9px;color:#a3b092;margin:13px 0}.tool-trace summary{cursor:pointer;color:#9caa8b;list-style:none}.tool-trace summary:before{content:'＋ ';font-size:10px}.tool-trace[open] summary:before{content:'− '}.tool-trace ol{padding-left:20px;line-height:2;max-height:160px;overflow:auto}.tool-trace li{margin:0}.session-nav{margin-top:27px;padding-top:20px;border-top:1px solid #dfe5d3}.session-nav>.sidebar-label{margin-bottom:11px}.session-item{display:flex;gap:4px;align-items:center;margin:4px -5px}.session-open{border:0;background:transparent;text-align:left;padding:7px 6px;font-size:10px;color:#97a486;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;min-width:0;flex:1;border-radius:4px}.session-item.active .session-open{background:#e4ead9;color:#63804d}.session-menu{border:0;background:transparent;color:#a6b596;padding:5px;font-size:10px}.session-empty{font-size:10px;color:#a6b297;margin:11px 0}.sidebar-backdrop{display:none}#sources-toggle{display:none}@keyframes pulse{0%,100%{opacity:.3}50%{opacity:1}}@media(min-width:1600px){.catalog-wrap{padding-top:75px;max-width:1410px}.article-grid{gap:22px}.note-card{min-height:270px;padding:26px}.note-card h2{font-size:20px}.card-excerpt{font-size:12px}.conversation{padding-right:55px;padding-left:55px}.chat-layout{grid-template-columns:minmax(0,1fr) 325px}.chat-empty{margin-top:105px}.chat-empty h2{font-size:37px}.sources-panel{padding-left:26px;padding-right:26px}}@media(max-width:1250px){.catalog-wrap{padding-right:35px;padding-left:35px}.article-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.reading-wrap{padding-left:35px;padding-right:35px}.reading-layout{gap:35px;grid-template-columns:minmax(0,1fr) 150px}.conversation{padding-left:25px;padding-right:25px}.chat-layout{grid-template-columns:minmax(0,1fr) 258px}.sources-panel{padding-left:17px;padding-right:17px}.chat-empty h2{font-size:28px}.example-prompts{gap:7px}.example-prompt{padding:12px 10px}.mode-label{font-size:8px}.chat-header-actions .button{padding:6px 8px}.chat-empty{margin-top:55px}}@media(max-width:1050px){.chat-layout{grid-template-columns:1fr}.sources-panel{position:fixed;inset:0 0 0 auto;width:300px;z-index:40;box-shadow:-15px 0 45px #2a3e2820;transform:translateX(100%);transition:transform .2s}.sources-panel.open{transform:translateX(0)}.sources-panel-heading .icon-button{display:inline-flex}#sources-toggle{display:inline-flex}.conversation{padding-left:40px;padding-right:40px}.chat-empty{margin-top:70px}.reading-layout{grid-template-columns:minmax(0,1fr)}.toc-panel{display:none}.reading-wrap{max-width:850px}.article-header h1{font-size:31px}.catalog-filter-row{flex-wrap:wrap;gap:9px}.sort-control{margin-left:auto}.header-note{font-size:10px}.heading-line{gap:17px}}@media(max-width:760px){.sidebar{transform:translateX(-100%);transition:transform .2s;width:240px;padding-top:28px}.sidebar.open{transform:translateX(0)}.sidebar-backdrop.open{display:block;position:fixed;inset:0;z-index:25;background:#273b2a40;backdrop-filter:blur(2px)}.page-main{margin-left:0}.mobile-bar{display:flex;align-items:center;justify-content:space-between;height:61px;padding:0 22px;border-bottom:1px solid var(--line);background:var(--paper);position:relative;z-index:20}.mobile-bar>a{font-family:Georgia,var(--serif);font-size:20px;font-weight:600;color:var(--ink);letter-spacing:.4px}.mobile-bar>a span{font-family:var(--sans);font-size:9px;font-weight:400;color:#9aa68c;letter-spacing:.5px;margin-left:6px}.mobile-bar svg{width:18px;height:18px}.catalog-wrap{padding:31px 22px 24px}.page-header{padding-bottom:24px}.heading-line h1{font-size:32px}.eyebrow{font-size:8px}.heading-line{margin-top:11px;gap:20px}.header-note{font-size:10px;line-height:1.7;max-width:160px;padding-top:4px}.page-description{font-size:10px;line-height:1.9;margin-top:10px;max-width:310px}.catalog-toolbar{padding-top:17px}.catalog-filter-row{margin-top:13px;gap:11px}.filter-chips{gap:4px}.filter-chip{font-size:10px;padding:5px 8px}.search-field input{font-size:11px;padding:11px 0}.catalog-result-line{margin-top:21px}.article-grid{gap:13px}.note-card{padding:18px 17px 13px;min-height:240px}.note-card h2{font-size:17px;line-height:1.65}.card-excerpt{font-size:10px;line-height:1.9}.card-footer{font-size:8px}.card-number{font-size:9px}.category-chip{font-size:8px}.page-footer{font-size:9px;flex-wrap:wrap;gap:11px;margin-top:30px}.reading-wrap{padding:22px 24px 45px}.breadcrumb{margin-bottom:25px}.article-header h1{font-size:28px;line-height:1.6}.article-actions{gap:10px}.article-actions>span:last-child{font-size:9px}.article-prose{font-size:15px;line-height:2}.prose h2{font-size:22px}.article-meta{font-size:9px;gap:9px}.prose pre{padding:15px;font-size:11px}.chat-main{height:calc(100dvh - 61px);min-height:450px}.conversation{padding:21px 23px 13px}.chat-header{padding-bottom:15px}.chat-header h1{font-size:24px}.chat-header .eyebrow{font-size:7px;letter-spacing:1.3px}.chat-header-actions{gap:6px}.chat-header-actions .button{font-size:9px;padding:6px 8px}.chat-header-actions .button svg{height:12px;width:12px}.scope-bar{font-size:9px;padding:9px 0;min-height:36px}.mode-label{font-size:8px}.chat-empty{margin:49px auto 27px}.empty-symbol{height:42px;width:42px;margin-bottom:20px}.chat-empty>.eyebrow{font-size:6px;letter-spacing:1.7px}.chat-empty h2{font-size:29px;line-height:1.65;letter-spacing:1px;margin:13px 0}.chat-empty>p{font-size:10px;line-height:1.9;max-width:270px;margin:0 auto}.example-prompts{margin-top:24px;gap:8px}.example-prompt{padding:12px 11px}.example-prompt>strong{font-size:10px}.example-prompt>span{font-size:8px}.composer{padding:13px 13px 9px}.composer textarea{font-size:11px}.composer-note{font-size:7px}.composer-bottom>span{font-size:8px}.composer-bottom{margin-top:8px}.messages{padding-top:21px}.sources-panel{top:61px}.chat-message.assistant .message-content{font-size:13px}.chat-message.user .message-content{font-size:11px}.source-results-heading{margin-top:21px}.mode-label{max-width:95px;overflow:hidden;text-overflow:ellipsis}.sidebar .brand{margin-bottom:35px}.catalog-toolbar .sort-control{font-size:9px}.small-label{font-size:7px}}@media(max-width:480px){.article-grid{grid-template-columns:1fr}.note-card{min-height:220px;padding:22px 22px 15px}.note-card h2{font-size:20px;margin-bottom:9px}.card-excerpt{font-size:11px;-webkit-line-clamp:2}.card-top{margin-bottom:13px}.category-chip{font-size:9px}.card-footer{font-size:9px}.card-tags{font-size:9px;margin-bottom:12px}.card-number{font-size:10px}.catalog-wrap{padding-left:21px;padding-right:21px}.small-label{font-size:6px;letter-spacing:1px}.header-note{max-width:145px}.heading-line{gap:19px}.sort-control select{font-size:10px}.filter-chips{max-height:90px;overflow:auto}.chat-header-actions .button{gap:4px}.chat-header-actions .button svg{display:none}.conversation{padding-left:19px;padding-right:19px}.chat-empty{margin-top:36px}.chat-empty h2{font-size:27px}.example-prompts{gap:6px}.example-prompt{padding:10px 8px}.example-prompt>strong{font-size:9px;line-height:1.8}.example-prompt>span{font-size:7px}.example-prompt svg{width:11px;height:11px}.composer-note>span{max-width:150px;text-align:right}.chat-header .eyebrow{font-size:6px}.scope-bar{font-size:8px}.mode-label{max-width:82px;font-size:7px}.chat-header{gap:8px}.chat-header h1{font-size:23px}.sources-panel{width:min(310px,90vw)}.related-notes>a{gap:10px}.related-notes>a strong{font-size:14px}.article-header h1{font-size:27px}.reading-wrap{padding-left:22px;padding-right:22px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Keep reading text comfortable at every screen size. */
:root{--muted:#69756b}
.page-description{color:#73806b;font-size:13px}
.header-note{color:#7d8b73}
.card-excerpt{font-size:13px;line-height:1.85;color:#69756b}
.card-footer{font-size:11px;color:#7d8973}
.card-tags{font-size:10px;color:#849276}
.category-chip{font-size:10px;color:#6c7f5d}
.catalog-result-line{font-size:11px;color:#7c8b71}
.filter-chip{font-size:12px;color:#758367}
.filter-chip span{font-size:10px}
.sort-control,.sort-control select{font-size:11px;color:#738366}
.panel-description,.source-placeholder{font-size:12px;color:#77876b}
.picker-note{font-size:12px;color:#697b5e}
.picker-note small{font-size:10px;color:#8c987e}
.picker-caption,.picker-search input{font-size:11px;color:#7c8b6f}
.scope-all-button{font-size:12px;color:#6d825c}
.scope-all-button small{font-size:10px;color:#889b77}
.scope-bar{font-size:11px;color:#71855f}
.scope-bar .mode-label{color:#8b9a7c}
.source-card>a{font-size:12px;color:#657f53}
.source-card>p,.source-card>.source-excerpt{font-size:11px;color:#7d8c70}
.chat-empty>p{font-size:13px;color:#7c8c6c}
.example-prompt>span{font-size:10px;color:#7f946b}
.example-prompt>strong{font-size:12px;color:#697d59}
.composer textarea{font-size:14px;color:#506045}
.composer textarea::placeholder{color:#8e9f80}
.composer-bottom>span{font-size:10px;color:#8c9f7c}
.article-meta{font-size:11px;color:#839276}
.article-actions>span:last-child{color:#8b9b7b}
@media(max-width:760px){.page-description{font-size:12px}.card-excerpt{font-size:13px}.card-footer{font-size:11px}.card-tags{font-size:10px}.category-chip{font-size:10px}.filter-chip{font-size:11px}.sort-control,.sort-control select{font-size:11px}.chat-empty>p{font-size:12px}.example-prompt>strong{font-size:12px}.composer textarea{font-size:13px}.scope-bar{font-size:10px}.article-meta{font-size:11px}.composer-bottom>span{font-size:10px}}
@media(max-width:480px){.example-prompts{grid-template-columns:1fr;gap:9px;margin-top:23px}.example-prompt{display:grid;grid-template-columns:minmax(0,1fr) 15px;gap:5px 10px;padding:12px 14px}.example-prompt>span{grid-column:1/-1;font-size:10px}.example-prompt>strong{font-size:12px;line-height:1.8}.example-prompt>svg{align-self:center;grid-column:2;grid-row:2}.chat-empty{margin-top:25px}.chat-empty>p{max-width:290px}.scope-bar .mode-label{font-size:8px}.card-excerpt{-webkit-line-clamp:3}.catalog-filter-row{gap:12px}.filter-chips{max-height:none;overflow:visible}}

/* Obsidian callouts share the article and AI Markdown renderer. */
.prose .callout {
  --callout-accent: #386585;
  --callout-bg: #edf3f7;
  margin: 1.25em 0;
  border: 1px solid color-mix(in srgb, var(--callout-accent) 22%, transparent);
  border-left: 3px solid var(--callout-accent);
  border-radius: 7px;
  background: var(--callout-bg);
  color: var(--text);
  min-width: 0;
  overflow-wrap: anywhere;
}
.prose .callout-warning { --callout-accent: #906112; --callout-bg: #fcf5e6; }
.prose .callout-tip { --callout-accent: #38644e; --callout-bg: #eef5ec; }
.prose .callout-danger { --callout-accent: #a33e38; --callout-bg: #fcf0ee; }
.prose .callout-question { --callout-accent: #846322; --callout-bg: #faf5e8; }
.prose .callout-example { --callout-accent: #70558d; --callout-bg: #f4eff9; }
.prose .callout-quote { --callout-accent: #626d65; --callout-bg: #f0f2ee; }
.prose .callout-title {
  display: flex;
  align-items: baseline;
  gap: 9px;
  padding: 12px 16px;
  color: var(--callout-accent);
  font-weight: 650;
  line-height: 1.65;
}
.prose .callout-title::before {
  content: "i";
  flex: 0 0 17px;
  width: 17px;
  height: 17px;
  border: 1px solid currentColor;
  border-radius: 50%;
  text-align: center;
  font: 700 12px/16px Georgia, serif;
}
.prose .callout-warning > .callout-title::before,
.prose .callout-danger > .callout-title::before { content: "!"; }
.prose .callout-question > .callout-title::before { content: "?"; }
.prose .callout-content { padding: 0 16px 14px; }
.prose .callout-content:empty { display: none; }
.prose .callout-content > :first-child { margin-top: 0; }
.prose .callout-content > :last-child { margin-bottom: 0; }
.prose summary.callout-title { cursor: pointer; list-style: none; }
.prose summary.callout-title::-webkit-details-marker { display: none; }
.prose summary.callout-title::after { content: "▸"; margin-left: auto; flex-shrink: 0; }
.prose details[open] > summary.callout-title::after { transform: rotate(90deg); }
.prose summary.callout-title:focus-visible { outline: 2px solid var(--callout-accent); outline-offset: 2px; }
@media (max-width: 480px) {
  .prose .callout-title { padding: 10px 12px; }
  .prose .callout-content { padding: 0 12px 12px; }
}

/* Preserve all six Markdown heading levels in articles and AI answers. */
.prose :is(h1, h2, h3, h4, h5, h6) {
  color: var(--ink);
  line-height: 1.5;
  font-weight: 650;
  margin: 1.65em 0 .65em;
  scroll-margin-top: 30px;
}
.prose h1 { font-size: 2em; }
.prose h2 { font-size: 1.7em; }
.prose h3 { font-size: 1.45em; }
.prose h4 { font-size: 1.25em; }
.prose h5 { font-size: 1.1em; font-weight: 700; }
.prose h6 { font-size: 1em; font-weight: 700; color: var(--text); }
.prose :is(h1, h2) { padding-bottom: .3em; border-bottom: 1px solid var(--line); }
.prose h1 { border-bottom-width: 2px; }
.note-section + .note-section { border-top: 0; padding-top: 0; margin-top: 0; }
.article-prose > .note-section:first-child > :first-child { margin-top: 0; }
.toc-panel li { font-size: 12px; padding: 5px 0; }
.toc-panel .toc-level-1 { padding-inline-start: 0; font-weight: 650; color: var(--ink); }
.toc-panel .toc-level-2 { padding-inline-start: 10px; font-weight: 600; color: var(--text); }
.toc-panel .toc-level-3 { padding-inline-start: 20px; }
.toc-panel .toc-level-4 { padding-inline-start: 30px; }
.toc-panel .toc-level-5 { padding-inline-start: 40px; }
.toc-panel .toc-level-6 { padding-inline-start: 50px; }
.toc-panel li a { overflow-wrap: anywhere; }
.model-control { display: flex; align-items: center; gap: 8px; min-width: 0; color: var(--muted); font-size: 11px; }
.model-control select { min-width: 0; max-width: 230px; padding: 6px 25px 6px 9px; border: 1px solid var(--line); border-radius: 6px; background: var(--paper, #fafbf7); color: var(--ink); font: inherit; cursor: pointer; }
.model-control select:disabled { cursor: default; opacity: .65; }
.model-control select:focus-visible { outline: 2px solid var(--ink); outline-offset: 2px; }
.message-role .message-model { display: block; text-align: right; letter-spacing: 0; overflow-wrap: anywhere; font-size: 10px; }
.message-role { gap: 12px; }
.scope-bar .mode-label { max-width: 45%; overflow: hidden; text-overflow: ellipsis; }
@media (max-width: 480px) {
  .model-control { gap: 6px; font-size: 10px; }
  .model-control select { max-width: 180px; padding-block: 7px; }
  .model-control > label { display: none; }
  .message-role .message-model { max-width: 55%; font-size: 9px; }
}
@media (max-width: 760px) {
  .prose h1 { font-size: 1.85em; }
  .prose h2 { font-size: 1.6em; }
  .prose h3 { font-size: 1.4em; }
  .prose h4 { font-size: 1.23em; }
}

/* Generated text stays provisional until the final answer and sources validate. */
.answer-preview { min-width: 0; }
.answer-preview-label { margin: 0 0 10px; color: var(--muted); font-size: 11px; }
.answer-preview-content { white-space: normal; overflow-wrap: anywhere; word-break: normal; color: var(--text); font-size: 13px; line-height: 1.85; }
.answer-preview-content::after { content: "▍"; color: var(--accent, #38644e); margin-inline-start: 2px; }

/* Streamdown handles Markdown; the existing prose theme supplies typography. */
.streaming-markdown > :first-child { margin-top: 0; }
.streaming-markdown pre { max-width: 100%; overflow-x: auto; white-space: pre; }
.streaming-markdown .stream-table { max-width: 100%; overflow-x: auto; }
.streaming-markdown .katex-display { max-width: 100%; overflow-x: auto; overflow-y: hidden; }
.streaming-markdown .pending-link { color: inherit; }
.streaming-markdown .pending-image { color: var(--muted); }
.stream-fallback { white-space: pre-wrap; overflow-wrap: anywhere; }

/* Personal blog: a quiet masthead, a journal feed, and reading first. */
:root { --paper: #f8f6f0; --surface: #fcfbf7; --ink: #303c32; --text: #566052; --muted: #747c70; --line: #e2e2d7; --green: #526b48; --green-wash: #ecefe4; }
html { scroll-padding-top: 28px; }
body { font-size: 14px; }
.skip-link { position: fixed; top: -100px; left: 20px; padding: 10px 18px; background: var(--ink); color: white; z-index: 100; }
.skip-link:focus { top: 10px; }
.site-header { max-width: 1240px; margin: 0 auto; min-height: 104px; padding: 0 44px; display: flex; align-items: center; gap: 60px; border-bottom: 1px solid var(--line); }
.site-header .brand { margin: 0; gap: 10px; }
.site-header .brand-mark { font-size: 42px; font-weight: 400; }
.site-header .brand-name { font-family: Georgia, var(--serif); font-size: 24px; font-weight: 500; }
.site-header .brand-name > span { font-family: var(--sans); letter-spacing: 2px; font-size: 9px; }
.site-header .main-nav { display: flex; gap: 25px; margin: 0 0 0 auto; align-items: center; }
.site-header .main-nav > a { padding: 10px 0; font-size: 13px; border-radius: 0; color: #72796c; gap: 7px; border-bottom: 1px solid transparent; }
.site-header .main-nav > a.active { color: var(--ink); border-bottom-color: var(--green); background: transparent; }
.site-header .main-nav > a:hover { color: var(--green); background: transparent; }
.site-header .main-nav .nav-discuss { margin-left: 7px; padding-left: 26px; border-left: 1px solid var(--line); color: #78816e; }
.nav-discuss svg { width: 14px; height: 14px; }
.header-motto { font-family: var(--serif); font-size: 11px; color: #8b907f; letter-spacing: 1px; }
.page-main { margin-left: 0; }
.catalog-wrap { max-width: 1240px; padding: 0 44px 28px; }
.blog-intro { display: grid; grid-template-columns: 1fr 270px; gap: 40px; padding: 62px 0 58px; align-items: center; border-bottom: 1px solid var(--line); }
.eyebrow { color: #858e76; font-size: 9px; letter-spacing: 2px; }
.intro-greeting { font-family: var(--serif); font-size: 15px; margin: 25px 0 13px; color: #67745c; }
.blog-intro h1 { font-family: var(--serif); font-size: clamp(30px, 3.1vw, 43px); font-weight: 500; line-height: 1.65; letter-spacing: 2px; margin: 0 0 19px; }
.intro-description { font-size: 13px; line-height: 2; color: #7c8374; margin: 0 0 24px; }
.intro-link { display: inline-flex; align-items: center; gap: 20px; font-size: 11px; color: var(--green); }
.intro-link svg { width: 17px; }
.intro-art { position: relative; height: 265px; overflow: hidden; }
.sun-disc { position: absolute; width: 150px; height: 150px; border-radius: 50%; background: #e5d9b7; top: 15px; left: 64px; }
.art-line { position: absolute; width: 340px; height: 180px; border: 1px solid #a9b395; border-radius: 50%; transform: rotate(-21deg); left: 4px; top: 103px; }
.line-two { top: 117px; left: -12px; border-color: #bcc2ac; }
.line-three { top: 132px; left: -29px; border-color: #d1d4c1; }
.art-caption { position: absolute; bottom: 2px; right: 9px; padding: 8px 0 0 15px; background: var(--paper); font-family: var(--serif); font-size: 10px; line-height: 2; letter-spacing: 2px; color: #8a927a; text-align: right; }
.blog-columns { display: grid; grid-template-columns: minmax(0, 1fr) 240px; gap: 72px; padding-top: 46px; }
.blog-feed { min-width: 0; }
.feed-heading { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-bottom: 23px; }
.feed-heading h2 { font-family: var(--serif); font-size: 25px; font-weight: 500; letter-spacing: 1px; margin: 8px 0 0; }
.feed-caption { font-family: var(--serif); font-size: 11px; color: #8a917f; padding-top: 18px; }
.catalog-toolbar { padding: 0 0 18px; border-top: 0; }
.search-field { border-radius: 3px; background: transparent; }
.search-field input { font-size: 12px; padding: 10px 0; }
.catalog-filter-row { margin-top: 13px; gap: 10px; }
.filter-chip { font-size: 11px; padding: 4px 8px; }
.filter-chip.active { color: var(--green); background: #e7ecdf; }
.catalog-result-line { margin: 18px 0 0; font-size: 10px; color: #8a927f; }
.article-grid { display: block; }
.note-card { position: relative; display: flex; min-height: 0; padding: 28px 0 25px; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; background: transparent; transition: none; }
.note-card:hover { transform: none; box-shadow: none; border-color: #c7ceba; }
.card-top { justify-content: flex-start; gap: 14px; margin-bottom: 10px; }
.category-chip { font-size: 10px; background: #eaeede; color: #72805f; padding: 2px 7px; border-radius: 2px; }
.card-number { font-size: 10px; color: #9ca68c; }
.note-card h2 { font-size: 23px; font-weight: 500; letter-spacing: .3px; margin-bottom: 10px; }
.note-card h2 a:hover { color: var(--green); }
.card-excerpt { font-size: 13px; color: #7c8375; line-height: 1.95; -webkit-line-clamp: 2; margin: 0 0 14px; }
.card-tags { font-size: 10px; margin: 0 0 11px; color: #929b85; min-height: 0; }
.card-tags:empty { display: none; }
.card-footer { border-top: 0; padding-top: 0; font-size: 10px; color: #89927d; }
.card-arrow { gap: 9px; align-items: center; font-size: 10px; color: #728161; }
.card-arrow:before { content: '阅读全文'; }
.blog-aside { min-width: 0; padding-top: 5px; }
.about-card { scroll-margin-top: 30px; padding-bottom: 31px; border-bottom: 1px solid var(--line); }
.author-monogram { display: grid; place-items: center; width: 46px; height: 46px; border-radius: 50%; background: #e9ecdf; color: #647956; font: italic 25px Georgia, serif; margin-bottom: 24px; }
.about-card .eyebrow { font-size: 7px; letter-spacing: 1.3px; }
.blog-aside h2 { font-family: var(--serif); font-weight: 500; font-size: 18px; margin: 10px 0 14px; }
.blog-aside p { font-size: 12px; line-height: 2; color: #7a8370; margin-bottom: 13px; }
.author-signature { display: block; font: italic 24px Georgia, serif; color: #7e8b6d; margin-top: 20px; }
.blog-categories { padding: 27px 0; border-bottom: 1px solid var(--line); }
.aside-heading { display: flex; align-items: center; justify-content: space-between; }
.aside-heading h2 { font-size: 16px; margin: 0 0 15px; }
.aside-heading > span { font-size: 8px; letter-spacing: 1px; color: #959d88; margin-bottom: 15px; }
.subject-link { padding: 9px 0; font-size: 12px; color: #717d63; }
.subject-link > span:last-child { font-size: 10px; color: #8e997f; }
.reading-companion { padding-top: 28px; }
.reading-companion h2 { font-size: 16px; }
.reading-companion a { display: inline-flex; align-items: center; gap: 13px; font-size: 11px; color: #6e805c; }
.reading-companion svg { width: 15px; }
.page-footer { margin-top: 50px; padding-top: 23px; font-size: 10px; color: #8b937f; }
.reading-wrap { max-width: 1100px; padding: 36px 44px 70px; }
.breadcrumb { font-size: 11px; margin-bottom: 30px; }
.reading-layout { grid-template-columns: minmax(0, 740px) 180px; gap: 55px; }
.article-header { padding-bottom: 26px; }
.article-header h1 { font-size: 36px; font-weight: 500; }
.article-prose { font-size: 16px; line-height: 2.05; padding-top: 20px; }
.article-discussion { display: flex; align-items: center; justify-content: space-between; gap: 20px; border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: 26px 0; margin-top: 48px; }
.article-discussion h2 { font-family: var(--serif); font-size: 20px; font-weight: 500; margin: 10px 0 8px; }
.article-discussion p { color: #7c8771; font-size: 12px; margin: 0; }
.article-end { padding: 32px 0; }
.toc-panel { top: 30px; }
.toc-panel li { font-size: 11px; }
.chat-main { height: calc(100dvh - 104px); min-height: 600px; max-width: 1240px; margin: 0 auto; border-inline: 1px solid var(--line); }
.chat-layout { grid-template-columns: minmax(0, 1fr) 295px; }
.chat-header h1 { font-size: 24px; }
.chat-empty { margin-top: 48px; }
.chat-empty h2 { font-size: 29px; }
.chat-empty .empty-symbol { width: 36px; height: 36px; background: transparent; border: 0; margin-bottom: 15px; }
.session-nav { margin-top: 28px; padding-top: 20px; border-top: 1px solid var(--line); }
.mobile-bar { display: none; }
@media (max-width: 1100px) {
  .site-header { gap: 30px; }
  .header-motto { display: none; }
  .blog-columns { gap: 42px; grid-template-columns: minmax(0, 1fr) 215px; }
  .reading-layout { gap: 30px; }
}
@media (max-width: 1050px) {
  .chat-layout, .reading-layout { grid-template-columns: minmax(0, 1fr); }
  .sources-panel { top: 104px; height: calc(100dvh - 104px); }
}
@media (max-width: 760px) {
  .site-header { min-height: 85px; padding: 0 24px; gap: 20px; }
  .site-header .main-nav { gap: 18px; }
  .site-header .main-nav > a { font-size: 12px; }
  .site-header .main-nav .nav-discuss { padding-left: 16px; margin-left: 0; }
  .site-header .brand-name { font-size: 21px; }
  .site-header .brand-name > span { font-size: 8px; letter-spacing: 1px; }
  .site-header .brand-mark { display: none; }
  .catalog-wrap { padding: 0 24px 24px; }
  .blog-intro { grid-template-columns: minmax(0, 1fr) 150px; padding: 42px 0; gap: 10px; }
  .blog-intro h1 { font-size: 29px; letter-spacing: 1px; }
  .intro-art { height: 225px; }
  .sun-disc { width: 110px; height: 110px; left: 20px; top: 30px; }
  .art-line { width: 240px; height: 140px; }
  .art-caption { font-size: 8px; letter-spacing: 1px; }
  .blog-columns { grid-template-columns: minmax(0, 1fr); padding-top: 30px; gap: 35px; }
  .blog-aside { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; border-top: 1px solid var(--line); padding-top: 30px; }
  .about-card { grid-row: span 2; border: 0; padding-bottom: 0; }
  .blog-categories { padding-top: 0; padding-bottom: 15px; }
  .reading-companion { padding-top: 0; }
  .feed-caption { font-size: 10px; }
  .note-card { padding: 25px 0; }
  .note-card h2 { font-size: 22px; }
  .page-footer { flex-wrap: wrap; margin-top: 30px; }
  .reading-wrap { padding: 27px 24px 50px; }
  .reading-layout { grid-template-columns: minmax(0, 1fr); }
  .article-header h1 { font-size: 29px; }
  .article-prose { font-size: 15px; }
  .article-discussion { flex-wrap: wrap; }
  .chat-main { height: calc(100dvh - 85px); min-height: 0; }
  .chat-layout { grid-template-columns: minmax(0, 1fr); }
  .conversation { padding-top: 22px; }
  .sources-panel { top: 85px; height: calc(100dvh - 85px); z-index: 40; }
  .chat-empty { margin-top: 28px; }
  .chat-header-actions .back-to-blog { display: none; }
}
@media (max-width: 480px) {
  .site-header { min-height: 76px; padding-inline: 20px; gap: 15px; }
  .site-header .brand-name { font-size: 21px; }
  .site-header .main-nav { gap: 14px; }
  .site-header .main-nav > a { font-size: 11px; }
  .site-header .main-nav .nav-discuss { padding-left: 13px; font-size: 10px; }
  .nav-discuss svg { display: none; }
  .catalog-wrap { padding-inline: 22px; }
  .blog-intro { grid-template-columns: minmax(0, 1fr); padding: 36px 0; }
  .intro-art { display: none; }
  .intro-greeting { margin-top: 23px; font-size: 14px; }
  .blog-intro h1 { font-size: 29px; }
  .intro-description { font-size: 12px; margin-bottom: 22px; }
  .feed-heading h2 { font-size: 23px; }
  .feed-caption { display: none; }
  .catalog-filter-row { flex-direction: column; }
  .sort-control { align-self: flex-end; }
  .blog-aside { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .about-card { grid-row: auto; border-bottom: 1px solid var(--line); padding-bottom: 24px; }
  .author-monogram { float: right; margin-left: 12px; }
  .blog-aside p { max-width: 340px; }
  .reading-companion { max-width: 320px; }
  .page-footer > span:nth-child(2) { display: none; }
  .page-footer a { margin-left: auto; }
  .chat-main { height: calc(100dvh - 76px); }
  .sources-panel { top: 76px; height: calc(100dvh - 76px); }
  .conversation { padding-inline: 20px; }
  .example-prompts { grid-template-columns: 1fr; }
  .chat-empty h2 { font-size: 26px; }
  .chat-empty { margin-bottom: 20px; }
}
