@charset "UTF-8";
:root{--bg:#e9eee5;--paper:#fff;--ink:#253a34;--text:#35423d;--muted:#657368;--line:#dee4dc;--green:#385f50;--soft:#eaf0e7;--accent:#c7d6aa;--radius:12px;--font:Inter,"PingFang SC","Microsoft YaHei","Noto Sans CJK SC",system-ui,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:40px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);font-size:15px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a,button{touch-action:manipulation}button:disabled{cursor:default;opacity:.5}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--green);outline-offset:5px}::selection{background:#dbe7bd;color:#163d32}[hidden]{display:none!important}h1,h2,h3,p{margin-top:0}h1,h2,h3{color:var(--ink)}h1{font-size:clamp(34px,4vw,52px);font-weight:550;line-height:1.42;letter-spacing:-1.8px}p{line-height:1.9}img{max-width:100%;display:block}button{color:inherit}.skip-link{position:fixed;z-index:100;top:12px;left:12px;background:var(--ink);color:white;padding:12px 18px;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}
.site-header{height:102px;max-width:1120px;margin:auto;display:flex;align-items:center;gap:48px;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;margin-right:auto;font-size:21px;font-weight:650;letter-spacing:1px}.brand small{display:block;font-size:9px;letter-spacing:2px;line-height:1.3;color:var(--muted);font-weight:500}.brand-mark{display:inline-flex;align-items:flex-end;gap:3px;width:27px;height:29px;flex-shrink:0}.brand-mark i{width:6px;border-radius:1px 1px 0 0;background:var(--ink);height:18px;transform:skewY(-20deg)}.brand-mark i:nth-child(2){height:27px}.brand-mark i:nth-child(3){height:23px}.site-header nav{display:flex;align-items:center;gap:34px;height:100%}.site-header nav a{position:relative;font-size:14px;color:var(--muted);height:100%;display:flex;align-items:center;transition:color .2s}.site-header nav a:hover,.site-header nav a[aria-current]{color:var(--ink)}.site-header nav a[aria-current]:after{content:"";position:absolute;width:5px;height:5px;border-radius:50%;background:var(--green);bottom:20px;left:calc(50% - 2px)}.header-explore{font-size:13px;border-left:1px solid var(--line);padding-left:28px;display:flex;gap:12px;align-items:center}.header-explore span{font-size:25px;transition:transform .35s}.header-explore:hover span{transform:rotate(90deg)}.page-shell{max-width:1040px;margin:auto}.home-intro{display:grid;grid-template-columns:1fr 288px;gap:100px;padding:70px 0 46px;align-items:center}.eyebrow{font-size:10px;font-weight:600;letter-spacing:2px;line-height:1.8;color:var(--muted);margin-bottom:22px}.home-intro .eyebrow{font-size:11px;letter-spacing:1.8px;display:flex;gap:9px;align-items:center}.status-dot{width:6px;height:6px;background:#7e9860;display:inline-block;border-radius:50%;box-shadow:0 0 0 4px #7e986012}.home-intro h1{margin-bottom:22px}.intro-copy{font-size:15px;color:#69766e;max-width:470px;line-height:2.05;margin-bottom:24px}.text-link{font-size:12px;font-weight:550;display:inline-flex;align-items:center;gap:16px}.text-link span{transition:transform .2s}.text-link:hover span{transform:translateX(4px)}.room-invitation{background:var(--soft);border:1px solid #dde5d6;border-radius:8px;position:relative;min-height:278px;display:flex;flex-direction:column;align-items:center;padding:18px 20px 20px;transition:background .25s,transform .25s}.room-invitation:hover{background:#e3ebdd;transform:translateY(-3px)}.invitation-label{align-self:stretch;display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.8px;color:#788672}.invitation-label>span{font-size:17px;line-height:10px}.room-invitation-title{font-size:16px;font-weight:550;display:block;text-align:center}.room-invitation p{font-size:11px;text-align:center;color:var(--muted);margin:7px 0 10px}.invitation-tag{font-size:9px;color:#86917e;border-top:1px solid #d5dfcd;padding:9px 14px 0;letter-spacing:1px}.room-icon{width:160px;height:127px;position:relative;margin:0 auto 12px;filter:drop-shadow(0 12px 8px #263b3020)}.tiny-floor{position:absolute;left:25px;top:72px;width:105px;height:55px;background:#c9b797;clip-path:polygon(0 0,68% 0,100% 45%,32% 100%,0 56%)}.tiny-back{position:absolute;left:25px;top:23px;width:72px;height:70px;background:#d5dbca;transform:skewY(-22deg)}.tiny-side{position:absolute;left:97px;top:25px;width:35px;height:69px;background:#b9c5ae;transform:skewY(32deg)}.tiny-window{position:absolute;left:45px;top:33px;width:32px;height:33px;background:#f5f6db;border:4px solid #f5f3e7;transform:skewY(-22deg);box-shadow:0 0 20px #faf4ba66}.tiny-window:before,.tiny-window:after{content:"";position:absolute;background:#e4e6cd}.tiny-window:before{width:2px;height:26px;left:11px}.tiny-window:after{width:25px;height:2px;top:12px}.tiny-desk{position:absolute;left:42px;top:84px;width:64px;height:13px;background:#9e785b;transform:skewY(-15deg);border-top:5px solid #dcb58e}.tiny-desk:after{content:"";position:absolute;left:3px;top:8px;width:4px;height:18px;background:#785c46;box-shadow:53px 0 #785c46}.tiny-book{position:absolute;left:60px;top:72px;width:18px;height:12px;background:#4a6254;transform:skewY(-15deg);border-bottom:2px solid #eceadb}.tiny-plant{position:absolute;left:108px;top:67px;width:13px;height:18px;background:#b08469;border-radius:1px 1px 5px 5px}.tiny-plant:before{content:"";position:absolute;top:-17px;left:-5px;width:22px;height:24px;background:#6b8055;clip-path:polygon(50% 0,65% 36%,100% 15%,87% 69%,63% 100%,17% 83%,0 38%,38% 48%)}
.now-line{display:flex;align-items:center;gap:20px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px 0;color:var(--muted);font-size:12px}.now-line p{margin:0;line-height:1.7}.now-label{font-size:10px;color:var(--green);flex-shrink:0;background:#eaf0e7;padding:3px 9px;border-radius:3px}.now-decoration{margin-left:auto;font-size:19px;color:#9bac9d}.home-section{margin-top:54px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:22px;gap:20px}.section-heading h2{font-size:18px;font-weight:550;margin:0;display:flex;align-items:center;gap:17px}.section-number{font-family:monospace;font-size:10px;color:#73816f;font-weight:400}.section-heading .text-link{color:var(--muted);font-size:11px}.post-row{display:grid;grid-template-columns:28px 1fr 110px 20px;gap:18px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line)}.post-row:first-child{border-top:1px solid var(--line)}.row-index{font-size:10px;color:#73816f;font-family:monospace;align-self:start;margin-top:5px}.post-title h3{font-size:18px;font-weight:550;line-height:1.6;margin-bottom:7px;transition:color .2s}.post-title:hover h3{color:#69834e}.post-title p{font-size:12px;line-height:1.9;color:var(--muted);margin:0;max-width:660px}.post-meta{display:flex;flex-direction:column;gap:9px;align-items:flex-end;color:var(--muted);font-size:10px}.post-meta time{font-size:10px;font-variant-numeric:tabular-nums;color:#6e7e6b}.row-arrow{color:#9ba899;font-size:18px;text-align:right;transition:transform .2s}.post-row:hover .row-arrow{transform:translate(2px,-2px);color:var(--green)}.case-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.case-cover{overflow:hidden;border-radius:6px;position:relative}.case-cover img{width:100%;height:auto;transition:transform .45s}.case-card a:hover .case-cover img{transform:scale(1.025)}.cover-arrow{position:absolute;bottom:15px;right:15px;display:grid;place-items:center;width:28px;height:28px;border:1px solid #ffffff70;border-radius:50%;font-size:16px;color:#ffffffc9;background:#ffffff15}.notes .cover-arrow{border-color:#adb69f;color:#66765d;background:#fff5}.case-meta{margin:17px 0 10px;display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}.case-meta>span:first-child{color:var(--green)}.case-card h3{font-size:18px;font-weight:550;margin:0 0 8px;line-height:1.6}.case-card p{font-size:12px;line-height:1.9;color:var(--muted);margin:0;max-width:460px}.updates-section{display:grid;grid-template-columns:220px 1fr;margin-top:62px;padding-top:36px;border-top:1px solid var(--line)}.updates-section .section-heading{align-self:start}.update-list a{display:grid;grid-template-columns:80px 34px 1fr 12px;gap:16px;align-items:baseline;font-size:12px;padding:12px 0}.update-list a:first-child{padding-top:0}.update-list a:hover>span:nth-child(3){text-decoration:underline;text-underline-offset:4px}.update-list time{font-size:10px;color:var(--muted);font-variant-numeric:tabular-nums}.update-type{font-size:9px;color:#83917e}.update-list a>span:last-child{color:#9aaa92}.closing-note{margin-top:58px;display:flex;align-items:center;gap:25px;padding:29px 32px;background:#edf1e9;border-radius:6px}.closing-note>span{font-size:42px;color:#a0b083}.closing-note p{margin:0;font-size:14px;line-height:1.8}.closing-note small{font-size:11px;color:var(--muted)}.closing-note a{margin-left:auto;font-size:11px;white-space:nowrap}.site-footer{max-width:1120px;margin:70px auto 0;padding:27px 0 35px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;color:var(--muted);font-size:10px}.site-footer>div:first-child{display:flex;align-items:center;gap:14px}.site-footer .brand-mark{transform:scale(.65);transform-origin:left center;width:21px}.site-footer small{display:block;font-size:9px;color:#9da79d;margin-top:5px}.footer-links{display:flex;gap:30px}.footer-links a:hover{color:var(--ink)}
.page-intro{padding:65px 0 48px}.page-intro h1{font-size:40px;margin-bottom:18px}.page-intro .eyebrow{margin-bottom:15px}.page-intro>p:last-child{font-size:14px;color:var(--muted);margin-bottom:0}.filter-toolbar{display:flex;align-items:center;justify-content:space-between;padding-bottom:25px;gap:20px}.filter-tabs{display:flex;gap:6px}.filter-tabs button{border:0;background:none;color:var(--muted);font-size:12px;padding:9px 14px;border-radius:4px;white-space:nowrap}.filter-tabs button:hover{background:#edf0e9}.filter-tabs button.active{background:var(--ink);color:white}.filter-tabs button span{font-size:10px;opacity:.6;margin-left:3px}.search-field{display:flex;align-items:center;border:1px solid var(--line);background:white;border-radius:4px;padding:9px 12px;gap:9px}.search-field>span{font-size:20px;line-height:16px;color:var(--muted)}.search-field input{border:0;outline:none;background:transparent;width:140px;font-size:12px;color:var(--text)}.search-field:focus-within{outline:2px solid var(--green);outline-offset:2px}.search-field input:focus-visible{outline:0}.search-status{font-size:12px;color:var(--muted)}.empty-state{padding:60px 20px;text-align:center;border-top:1px solid var(--line);color:var(--muted)}.writing-browser{min-height:390px}.quiet-note{font-size:12px;color:var(--muted);padding-top:35px}.cases-page-grid{row-gap:45px}.detail-shell{padding-top:40px}.back-link{font-size:12px;color:var(--muted)}.back-link:hover{color:var(--ink)}.article-header{padding:43px 0 32px;max-width:840px}.article-kicker{display:flex;gap:12px;align-items:center;font-size:11px;color:var(--muted);margin-bottom:22px}.article-kicker>span:nth-child(2),.article-kicker>span:nth-child(4){color:#b7c0b1}.article-header h1{font-size:clamp(29px,3.2vw,42px);letter-spacing:-1px;line-height:1.5;margin-bottom:21px}.article-header>p{font-size:15px;color:var(--muted);max-width:720px;line-height:1.9}.article-layout{display:grid;grid-template-columns:minmax(0,720px) 180px;gap:90px;padding-top:25px;border-top:1px solid var(--line)}.prose{font-size:16px;line-height:2.1;color:#49554e;overflow-wrap:break-word}.prose>p{line-height:2.15;margin-bottom:24px}.prose h2{font-size:23px;margin:45px 0 20px;font-weight:550;letter-spacing:-.5px;scroll-margin-top:40px}.prose h3{font-size:19px;margin:30px 0 15px}.prose strong{font-weight:600;color:var(--ink)}.prose a:not(.next-article):not(.solid-link){color:var(--green);text-decoration:underline;text-underline-offset:4px}.prose blockquote{margin:32px 0;padding:18px 24px;border-left:3px solid #9cae83;background:#edf1e9;font-size:17px;color:var(--green)}.prose blockquote p{margin:0}.prose ul,.prose ol{padding-left:1.5em;margin-bottom:28px}.prose li{padding-left:6px;margin:9px 0}.prose table{border-collapse:collapse;font-size:13px;width:100%;margin:26px 0;display:block;overflow:auto}.prose th,.prose td{padding:13px 18px;border:1px solid var(--line);text-align:left;min-width:150px}.prose th{background:var(--soft);font-weight:550}.prose pre{background:#edf1e9;border:1px solid var(--line);border-radius:4px;padding:20px;overflow:auto;font-size:13px;line-height:1.8}.prose code{background:#edf1e9;font-size:.9em;padding:2px 5px;border-radius:3px}.prose pre code{background:none;padding:0}.prose img{height:auto;border-radius:6px}.toc{position:sticky;top:45px;align-self:start;margin-top:6px;font-size:11px}.toc>p{color:#9aa692;font-size:10px;letter-spacing:1px}.toc nav{display:flex;flex-direction:column;gap:17px;border-left:1px solid var(--line);padding-left:18px;line-height:1.8}.toc nav a:hover{color:var(--green);text-decoration:underline;text-underline-offset:4px}.toc-about{display:flex;gap:12px;align-items:center;padding-top:30px;margin-top:35px;border-top:1px solid var(--line)}.toc-about small{font-size:9px;color:var(--muted);line-height:2.4}.toc-about .brand-mark{transform:scale(.8)}.article-end{text-align:center;color:#9eaa97;margin:48px 0 35px}.article-end p{font-size:12px;margin:5px 0}.next-article{display:block;border-top:1px solid var(--line);padding:25px 0}.next-article small{font-size:11px;color:var(--muted)}.next-article strong{display:flex;justify-content:space-between;font-size:17px;font-weight:500;margin-top:9px;gap:20px}.case-facts{display:flex;gap:40px;margin-top:30px;font-size:11px}.case-facts dt{color:var(--muted);margin-bottom:8px}.case-facts dd{margin:0}.reading-progress{height:2px;background:var(--green);position:fixed;top:0;left:0;right:0;z-index:40;transform-origin:left;transform:scaleX(0)}.about-layout{display:grid;grid-template-columns:1fr 270px;gap:100px}.about-layout .prose>p:first-child{font-size:19px;color:var(--ink)}.identity-card{border:1px solid var(--line);padding:29px;background:#f0f3eb;border-radius:7px}.identity-card>.brand-mark{margin-bottom:25px}.identity-card>p{font-size:26px;line-height:1.8;margin-bottom:23px}.identity-card p small{display:block;font-size:10px;letter-spacing:3px;color:var(--muted)}.identity-card hr{border:0;border-top:1px solid #d9e0d3;margin-bottom:20px}.identity-card>span:not(.brand-mark){font-size:10px;color:var(--green)}.identity-card p.identity-note{font-size:12px;line-height:2.1;color:var(--muted);margin:20px 0 0}.about-explore{display:block;text-align:center;margin-top:30px;padding:15px;border:1px dashed var(--line);border-radius:7px}.about-explore strong{font-size:11px;font-weight:500;color:var(--green)}.about-explore .room-icon{transform:scale(.8);height:108px}.contact-section{margin-top:50px;border-top:1px solid var(--line)}.contact-links{display:flex;gap:12px;flex-wrap:wrap}.solid-link{display:inline-flex;gap:22px;align-items:center;font-size:12px;background:var(--ink);color:white!important;padding:11px 19px;border-radius:4px;line-height:1.8}.solid-link:hover{background:#45614f}.not-found{padding:100px 0 160px}.not-found h1{font-size:36px}.not-found p{color:var(--muted)}
.room-page .site-header{position:relative;z-index:4;border-bottom-color:#d4ddd0}.explore-main{max-width:none}.room-stage{position:relative;height:calc(100svh - 102px);min-height:640px;overflow:hidden}.room-heading{position:absolute;top:45px;left:max(40px,calc((100vw - 1120px)/2));pointer-events:none;z-index:2;max-width:340px}.room-heading .eyebrow{font-size:9px;letter-spacing:1.8px}.room-heading h1{font-size:33px;line-height:1.6;letter-spacing:-1px;margin-bottom:15px}.room-heading>p:last-child{color:var(--muted);font-size:12px;line-height:2}#room-canvas{position:absolute;inset:0}#room-canvas canvas{width:100%;height:100%;display:block;touch-action:none}.room-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);padding:17px 25px;border:1px solid var(--line);background:var(--bg);font-size:12px;border-radius:5px;z-index:3}.room-fallback{position:absolute;top:45%;left:50%;transform:translate(-50%,-50%);width:min(400px,80%);padding:25px;background:var(--bg);border:1px solid var(--line);border-radius:8px;text-align:center;font-size:13px;z-index:3}.room-fallback p{margin-bottom:5px}.room-controls{position:absolute;right:max(35px,calc((100vw - 1120px)/2));top:45px;display:flex;gap:8px;z-index:3}.room-controls button{border:1px solid #d5ddce;border-radius:4px;font-size:10px;background:#f8f9f6bb;backdrop-filter:blur(12px);padding:9px 13px}.room-guide{position:absolute;bottom:126px;left:50%;transform:translateX(-50%);font-size:10px;color:var(--muted);white-space:nowrap;pointer-events:none}.room-guide>span{margin-right:9px}.room-dock{position:absolute;bottom:52px;left:50%;transform:translateX(-50%);display:flex;padding:7px;background:#fffffff0;border:1px solid #dce4d5;border-radius:12px;box-shadow:0 12px 35px #273e3610;gap:3px;z-index:3;backdrop-filter:blur(12px)}.room-dock button{display:flex;align-items:center;gap:9px;white-space:nowrap;border:0;padding:13px 18px;background:transparent;font-size:11px;border-radius:6px}.room-dock button>span{font-size:20px;line-height:1;color:var(--green)}.room-dock button:hover,.room-dock button[aria-expanded=true]{background:#eaf0e3}.room-exit{position:absolute;bottom:26px;left:max(40px,calc((100vw - 1120px)/2));font-size:11px;z-index:3}.room-panel{position:absolute;right:max(30px,calc((100vw - 1120px)/2));top:110px;width:330px;max-height:calc(100% - 260px);overflow:auto;z-index:5;background:#fffffff2;backdrop-filter:blur(16px);border:1px solid #d8e1d2;padding:30px 24px 24px;border-radius:10px;box-shadow:0 20px 80px #1c362522}.room-panel .eyebrow{font-size:8px;letter-spacing:1.5px;margin-bottom:15px}.room-panel h2{font-size:23px;font-weight:500;margin-bottom:10px}.room-panel>p:not(.eyebrow){font-size:12px;color:var(--muted);line-height:1.9}.panel-close{position:absolute;right:12px;top:8px;background:none;border:0;font-size:25px;color:var(--muted);width:30px;height:35px}.room-panel a{display:flex;flex-direction:column;gap:5px;padding:14px;background:#f0f4eb;border-radius:5px;margin-top:9px;font-size:13px;line-height:1.7}.room-panel a:hover{outline:1px solid #b4c4a4}.room-panel a small{font-size:9px;color:var(--muted)}.room-tooltip{position:absolute;background:var(--ink);color:white;font-size:11px;pointer-events:none;border-radius:4px;padding:7px 12px;z-index:6;transform:translate(-50%,-130%)}.noscript-room{max-width:700px;padding:40px;margin:auto}.noscript-room a{display:block;text-decoration:underline;margin:14px}.room-page:has(.noscript-room) .room-loading{display:none}
@media(min-width:1500px){.room-heading{top:70px}.room-heading h1{font-size:40px}}
@media(max-width:1199px){.site-header,.site-footer{margin-left:40px;margin-right:40px}.page-shell{margin-left:60px;margin-right:60px}.home-intro{gap:50px}.article-layout{gap:45px;grid-template-columns:minmax(0,1fr) 160px}.about-layout{gap:55px}.room-heading{left:35px;max-width:245px}.room-heading h1{font-size:29px}}
@media(max-width:850px){.site-header{gap:25px}.site-header nav{gap:25px}.home-intro{grid-template-columns:1fr 235px;gap:35px;padding-top:48px}.home-intro h1{font-size:37px}.intro-copy{font-size:13px}.room-invitation{min-height:267px}.home-section{margin-top:42px}.post-row{grid-template-columns:22px 1fr 75px 15px;gap:10px}.post-title h3{font-size:16px}.post-title p{font-size:11px}.case-grid{gap:23px}.case-card h3{font-size:16px}.updates-section{grid-template-columns:1fr}.updates-section .section-heading{margin-bottom:28px}.article-layout{grid-template-columns:1fr}.toc{display:none}.article-header{padding-top:30px}.about-layout{grid-template-columns:1fr 200px;gap:35px}.identity-card{padding:22px}.about-layout .prose{font-size:15px}.room-heading{top:25px}.room-heading h1{font-size:25px}.room-controls{top:28px;right:25px;flex-direction:column}.room-panel{right:25px;top:112px;width:300px}.page-intro h1{font-size:34px}}
@media(max-width:620px){.site-header{height:82px;margin:0 22px;gap:17px}.brand{font-size:18px;gap:7px;letter-spacing:0}.brand small{font-size:7px;letter-spacing:1.5px}.brand .brand-mark{transform:scale(.8);width:24px}.site-header nav{gap:18px}.site-header nav a{font-size:12px}.site-header nav a[aria-current]:after{bottom:15px}.header-explore{padding-left:0;border:0;font-size:0;gap:0}.header-explore span{font-size:23px}.page-shell{margin:0 24px}.home-intro{display:block;padding:39px 0 26px}.home-intro h1{font-size:36px;letter-spacing:-1px}.home-intro .eyebrow{font-size:9px;margin-bottom:17px}.intro-copy{font-size:13px;max-width:100%;margin-bottom:20px}.room-invitation{margin-top:31px;min-height:0;padding:19px 20px;display:grid;grid-template-columns:1fr 87px;grid-template-rows:auto auto;align-items:center;text-align:left;gap:0 10px}.invitation-label{grid-column:1;grid-row:1;font-size:7px;margin-bottom:10px}.invitation-label>span{display:none}.room-invitation>div:not(.room-icon){grid-column:1;grid-row:2}.room-invitation .room-icon{grid-column:2;grid-row:1/3;transform:scale(.65);transform-origin:center center;margin:-25px -35px;width:160px;height:127px}.room-invitation-title{text-align:left;font-size:15px}.room-invitation p{text-align:left;font-size:10px;margin:5px 0 0}.invitation-tag{display:none}.now-line{font-size:10px;gap:12px;padding:13px 0}.now-label{font-size:9px;padding:3px 7px}.now-decoration{display:none}.home-section{margin-top:35px}.section-heading{margin-bottom:18px}.section-heading h2{font-size:17px;gap:11px}.section-heading .text-link{font-size:10px;gap:6px}.post-row{grid-template-columns:1fr 17px;gap:0 14px;padding:20px 0;position:relative}.row-index{display:none}.post-title{grid-column:1;grid-row:1}.post-title h3{font-size:16px;margin-bottom:8px}.post-title p{font-size:11px;line-height:1.9}.post-meta{grid-column:1;grid-row:2;flex-direction:row;gap:12px;margin-top:11px;font-size:9px;align-items:center}.post-meta time{font-size:9px}.row-arrow{grid-column:2;grid-row:1;align-self:start;margin-top:5px;font-size:16px}.case-grid{grid-template-columns:1fr;gap:29px}.case-meta{margin-top:13px}.case-card h3{font-size:17px}.case-card p{font-size:11px}.updates-section{margin-top:37px;padding-top:27px}.update-list a{grid-template-columns:65px 25px 1fr 10px;gap:8px;font-size:11px;padding:11px 0}.update-list time{font-size:9px}.update-type{font-size:8px}.closing-note{margin-top:34px;padding:22px 20px;gap:16px;flex-wrap:wrap}.closing-note>span{font-size:32px}.closing-note p{font-size:13px}.closing-note small{font-size:10px}.closing-note a{font-size:10px}.site-footer{margin:42px 22px 0;padding:24px 0 29px;align-items:start;gap:20px}.footer-links{gap:16px;flex-wrap:wrap;justify-content:flex-end;font-size:9px}.site-footer>div:first-child{flex-shrink:0;gap:4px}.site-footer small{font-size:8px}.page-intro{padding:42px 0 30px}.page-intro h1{font-size:30px;letter-spacing:-1px}.page-intro>p:last-child{font-size:12px;line-height:2}.page-intro .eyebrow{font-size:8px}.filter-toolbar{flex-direction:column;align-items:stretch;gap:19px;padding-bottom:20px}.filter-tabs{gap:3px}.filter-tabs button{padding:9px 12px;font-size:11px}.search-field input{width:100%}.search-field{padding:11px 12px}.writing-browser{min-height:330px}.detail-shell{padding-top:28px}.article-header{padding:30px 0 22px}.article-kicker{gap:9px;font-size:9px;margin-bottom:18px}.article-header h1{font-size:28px;line-height:1.6;letter-spacing:-.6px}.article-header>p{font-size:13px;line-height:2}.article-layout{padding-top:21px}.prose{font-size:15px}.prose>p{line-height:2.15}.prose h2{font-size:21px;margin-top:34px}.prose blockquote{font-size:15px;padding:16px 19px}.prose table{font-size:12px}.prose th,.prose td{padding:10px;min-width:120px}.case-facts{flex-wrap:wrap;gap:18px 28px;font-size:10px}.about-layout{display:flex;flex-direction:column;gap:35px}.about-aside{display:grid;grid-template-columns:1fr 1fr;gap:14px;order:-1}.identity-card{padding:18px}.identity-card>.brand-mark{display:none}.identity-card>p{font-size:23px;margin-bottom:14px}.identity-card p.identity-note{display:none}.identity-card hr{margin-bottom:13px}.identity-card>span:not(.brand-mark){font-size:8px}.about-explore{margin-top:0;padding:7px;display:flex;flex-direction:column;justify-content:center}.about-explore .room-icon{transform:scale(.7);margin-top:-15px;height:108px}.about-explore strong{font-size:9px}.about-layout .prose>p:first-child{font-size:17px}.contact-section{margin-top:34px}.not-found{padding:80px 0 130px}.not-found h1{font-size:28px}.room-stage{height:calc(100svh - 82px);min-height:660px}.room-heading{left:24px;top:25px;max-width:220px}.room-heading .eyebrow{font-size:7px;margin-bottom:12px}.room-heading h1{font-size:24px;line-height:1.5;margin-bottom:10px}.room-heading>p:last-child{font-size:10px;line-height:1.9}.room-controls{top:26px;right:20px;gap:5px}.room-controls button{font-size:9px;padding:7px 9px}.room-dock{bottom:60px;max-width:calc(100% - 32px);gap:0;padding:5px;justify-content:center;white-space:nowrap}.room-dock button{padding:10px 11px;gap:5px;font-size:10px;flex-direction:column}.room-dock button>span{font-size:19px}.room-guide{bottom:150px;font-size:9px}.room-exit{left:24px;bottom:24px;font-size:10px}.room-panel{left:16px;right:16px;top:auto;bottom:151px;width:auto;max-height:53%;padding:23px 20px 19px}.room-panel .eyebrow{margin-bottom:10px}.room-panel h2{font-size:21px}.room-panel>p:not(.eyebrow){font-size:11px}.room-panel a{font-size:12px;padding:11px 13px}.room-panel a small{font-size:8px}.room-fallback{top:50%;font-size:12px}.room-tooltip{display:none}.noscript-room{padding:24px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}
@media(max-width:380px){.site-header{gap:12px}.site-header nav{gap:12px}.home-intro h1{font-size:32px}.room-dock button{padding:10px 8px}.closing-note a{margin-left:48px}}

/* One quiet, always-available switch; the room shares the same theme. */
:root{color-scheme:light;--on-ink:#fff}
.theme-toggle{width:40px;height:40px;flex-shrink:0;display:grid;place-items:center;padding:0;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--ink);margin-left:-25px}
.theme-toggle:hover{background:var(--soft);border-color:var(--muted)}
.theme-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.theme-sun{display:none}
:root[data-theme=dark]{color-scheme:dark;--bg:#172b2c;--paper:#20312c;--ink:#e3e9dc;--text:#c9d3c8;--muted:#a4b3a4;--line:#354940;--green:#b6ce9e;--soft:#263b30;--accent:#8fa779;--on-ink:#172522}
[data-theme=dark] .theme-moon{display:none}
[data-theme=dark] .theme-sun{display:block}
[data-theme=dark] ::selection{background:#506748;color:#f0f4e9}
[data-theme=dark] .intro-copy,[data-theme=dark] .prose{color:var(--text)}
[data-theme=dark] .room-invitation{border-color:var(--line)}
[data-theme=dark] .room-invitation:hover{background:#304738}
[data-theme=dark] .invitation-label,[data-theme=dark] .invitation-tag,[data-theme=dark] .section-number,[data-theme=dark] .row-index,[data-theme=dark] .post-meta time,[data-theme=dark] .update-type,[data-theme=dark] .toc>p,[data-theme=dark] .article-end{color:var(--muted)}
[data-theme=dark] .invitation-tag,[data-theme=dark] .identity-card hr{border-color:var(--line)}
[data-theme=dark] .now-label,[data-theme=dark] .closing-note,[data-theme=dark] .prose blockquote,[data-theme=dark] .prose pre,[data-theme=dark] .prose code,[data-theme=dark] .identity-card{background:var(--soft)}
[data-theme=dark] .prose pre code{background:none}
[data-theme=dark] .search-field{background:var(--paper)}
[data-theme=dark] .search-field input::placeholder{color:var(--muted);opacity:1}
[data-theme=dark] .filter-tabs button:hover{background:var(--soft)}
.filter-tabs button.active,.solid-link,.skip-link{color:var(--on-ink)!important}
[data-theme=dark] .solid-link:hover{background:#bfd0ad}
[data-theme=dark] .post-title:hover h3{color:var(--green)}
[data-theme=dark] .case-cover img,[data-theme=dark] .prose img{filter:brightness(.8)}
[data-theme=dark] .tiny-window{background:#edcc83;border-color:#aba889;box-shadow:0 0 22px #f7d18b4d}
[data-theme=dark] .tiny-window:before,[data-theme=dark] .tiny-window:after{background:#aba889}
[data-theme=dark] .tiny-back{background:#647664}
[data-theme=dark] .tiny-side{background:#475e50}
[data-theme=dark] .tiny-floor{background:#918266}
[data-theme=dark] .room-page .site-header{border-bottom-color:var(--line)}
[data-theme=dark] .room-panel,[data-theme=dark] .room-dock,[data-theme=dark] .room-controls button{background:#243a35ef;border-color:#4b6251}
[data-theme=dark] .room-dock button:hover,[data-theme=dark] .room-dock button[aria-expanded=true]{background:#40584a}
[data-theme=dark] .room-panel a{background:#324b3e}
[data-theme=dark] .room-loading,[data-theme=dark] .room-fallback{background:#243a35}
[data-theme=dark] .room-tooltip{color:#23392e;background:#edf2df}
@media(max-width:850px){.theme-toggle{margin-left:-10px}}
@media(max-width:620px){
 .site-header{display:grid;grid-template-columns:1fr auto auto;grid-template-rows:58px 44px;height:112px;column-gap:18px;row-gap:0;padding-bottom:10px}
 .site-header .brand{grid-column:1;grid-row:1}
 .header-explore{grid-column:2;grid-row:1;font-size:11px;gap:7px}
 .header-explore span{font-size:21px}
 .theme-toggle{grid-column:3;grid-row:1;margin:0;width:36px;height:36px}
 .site-header nav{grid-column:1/-1;grid-row:2;justify-content:space-between;gap:24px}
 .site-header nav a{font-size:12px;padding:0 8px}
 .site-header nav a[aria-current]:after{bottom:0}
 .room-stage{height:calc(100svh - 112px)}
}

/* Small, distinct experiences inside the room. */
.room-discoveries{font-size:10px;align-self:center;color:var(--muted);padding:8px 10px;white-space:nowrap}
.room-dock button.discovered:after{content:"";width:4px;height:4px;background:var(--green);border-radius:50%;position:absolute;bottom:5px;left:calc(50% - 2px)}
.room-dock button{position:relative}
.room-heading{transition:opacity .3s}
.is-exploring .room-heading{opacity:0}
.room-panel{width:430px;top:105px;max-height:calc(100% - 230px);padding:26px 24px 20px;scrollbar-width:thin}
.room-panel[data-experience]{animation:experience-enter .3s ease-out}
.room-panel>p:not(.eyebrow){margin-bottom:18px}
.room-panel button[data-action]{font-size:12px;border:1px solid var(--line);border-radius:5px;padding:10px 13px;background:var(--soft);color:var(--ink);line-height:1.5}
.room-panel button[data-action]:hover:not(:disabled){border-color:var(--green)}
.room-panel .experience-link{background:none!important;padding:15px 0 0;margin-top:14px;border-radius:0;border-top:1px solid var(--line);display:flex;flex-direction:row;justify-content:space-between;font-size:11px;gap:14px}
.room-panel .experience-link:hover{outline:none;color:var(--green)}
.experience-kicker{display:block;font-size:9px;letter-spacing:1.5px;color:var(--muted);margin-bottom:15px}
.book-picker{display:flex;gap:12px;align-items:end;margin-bottom:20px;padding:0 6px 10px;border-bottom:4px solid #aa8a6144}
.room-panel .book-picker button{background:var(--book-color);color:#fff9e7;flex:1;border:0;border-radius:2px 5px 5px 2px;min-height:84px;box-shadow:inset 5px 0 #0002,3px 3px 0 #dccca9;transition:transform .25s;font-size:12px;text-align:left;padding:12px 15px}
.book-picker button span{display:block;font-size:9px;opacity:.7;margin-bottom:13px;font-family:monospace}
.book-picker button[aria-pressed=true]{transform:translateY(-7px) rotate(-3deg);outline:2px solid var(--green);outline-offset:4px}
.reading-book,.journal-sheet{background:#f5efdc;color:#465142;border:1px solid #ded6bf;border-radius:3px 8px 8px 3px;box-shadow:inset 7px 0 #e2d9bf66,3px 3px 0 #ded6bf;padding:24px 23px 18px}
.reading-book h3,.journal-sheet h3{font-size:19px;line-height:1.7;font-weight:550;margin-bottom:18px;color:inherit}
.book-page{min-height:140px;font-size:14px;line-height:2}
.book-page p{margin-bottom:14px;line-height:2}
.margin-note{font-size:12px;line-height:1.9;font-style:italic;color:#777951;border-top:1px dashed #b7b295;padding-top:13px;margin-bottom:15px}
.experience-pager{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:20px;font-size:10px;color:var(--muted)}
.room-panel .experience-pager button{padding:8px 9px;background:transparent;border-color:transparent;font-size:11px}
.computer-shell{border:5px solid #40554d;border-radius:10px;background:var(--bg);overflow:hidden}
.computer-bar{display:flex;justify-content:space-between;padding:9px 12px;font-size:8px;letter-spacing:1px;background:#40554d;color:#c9d6c1}
.computer-bar>span:first-child{letter-spacing:3px;color:#b8c99f}
.project-folders{display:flex;gap:10px;padding:15px 12px}
.room-panel .project-folders button{font-size:10px;flex:1;background:none;border-color:transparent;padding:6px}
.project-folders button span{display:block;font-size:30px;color:#a28c58}
.room-panel .project-folders button[aria-pressed=true]{background:var(--soft);border-color:var(--line)}
.desktop-tabs{display:flex;padding:0 9px;gap:4px;border-bottom:1px solid var(--line)}
.room-panel .desktop-tabs button{padding:9px 8px;border:0;border-radius:3px 3px 0 0;font-size:10px;background:transparent}
.room-panel .desktop-tabs button[aria-pressed=true]{background:var(--paper);box-shadow:inset 0 2px var(--green)}
.desktop-document{background:var(--paper);padding:18px;min-height:230px}
.desktop-document img{width:100%;border-radius:3px;margin-bottom:15px}
.desktop-document h3{font-size:16px;line-height:1.8;margin-bottom:10px}
.desktop-document p{font-size:12px;line-height:1.9;margin-bottom:12px}
.project-state{font-size:9px;color:var(--muted)}
.desktop-note{border-left:2px solid var(--line);padding-left:12px;color:var(--muted)}
.flow-sketch{display:grid;gap:8px;margin-bottom:16px}
.flow-sketch>div{padding:10px;border:1px dashed var(--line);font-size:11px;border-radius:4px;color:var(--muted);display:flex;gap:10px;align-items:center}
.flow-sketch>div.reached{border-style:solid;background:var(--soft);color:var(--ink)}
.flow-sketch span{font-size:9px;font-family:monospace;opacity:.6}
.flow-sketch b{font-size:9px;font-weight:400;margin-left:auto;color:var(--green)}
.flow-feedback{min-height:46px}
.journal-sheet{background-image:repeating-linear-gradient(transparent,transparent 31px,#a6a07d15 31px,#a6a07d15 32px);min-height:310px;padding-top:28px}
.journal-sheet>p{font-size:14px;line-height:2.1}
.journal-sheet .crossed-thought{color:#999782;font-size:12px;transform:rotate(-1deg);text-decoration-color:#9c7862}
.journal-sheet .margin-note{font-size:12px;transform:rotate(-1deg)}
.journal-number{display:block;text-align:center;color:#93937c;font-family:monospace;font-size:10px}
.secret-frame{height:225px;position:relative;overflow:hidden;background:var(--soft);border-radius:6px;margin:20px 0}
.paper-secret{position:absolute;inset:36px 25px;padding:21px 16px;background:#eedbb3;color:#645d41;box-shadow:3px 5px 12px #0001;font-size:13px;line-height:2;transform:rotate(-3deg)}
.mini-landscape{position:absolute;inset:18px 30px;background:linear-gradient(155deg,transparent 55%,#6d8366 55%),linear-gradient(35deg,transparent 60%,#9eae8d 60%),#e3dec5;border:12px solid #9d7e58;box-shadow:0 8px 20px #0002;display:flex;align-items:flex-end;justify-content:center;padding:10px;transition:transform .7s cubic-bezier(.2,.7,.2,1)}
.mini-landscape:before{content:"";position:absolute;top:20px;right:32px;width:34px;height:34px;background:#d5b46b;border-radius:50%}
.mini-landscape span{font-size:9px;color:#f5f1e1}
.secret-frame.revealed .mini-landscape{transform:translateX(-110%) rotate(-10deg)}
.plant-moment{position:relative;text-align:center;padding:22px 16px;background:var(--soft);border-radius:8px;margin:20px 0}
.plant-illustration{display:block;font-size:90px;line-height:1.3;color:var(--green);transition:transform .6s}
.plant-moment.watered .plant-illustration{transform:scale(1.1)}
.plant-moment h3{font-size:18px;margin:15px 0 10px}
.plant-moment p,.experience-feedback{font-size:12px;line-height:1.9;color:var(--muted);margin:12px 0}
.plant-flower{position:absolute;top:31px;left:calc(50% + 22px);color:#b79763;font-size:26px;animation:experience-enter .6s ease-out}
[data-theme=dark] .reading-book,[data-theme=dark] .journal-sheet{background-color:#304138;color:#d4ddc8;border-color:#53634c;box-shadow:inset 7px 0 #24332b66,3px 3px 0 #45533d}
[data-theme=dark] .margin-note{color:#b9c294;border-color:#65735c}
[data-theme=dark] .journal-sheet .crossed-thought,[data-theme=dark] .journal-number{color:#a9b29b}
[data-theme=dark] .book-picker button{box-shadow:inset 5px 0 #0002,3px 3px 0 #788466}
@keyframes experience-enter{from{opacity:0;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:850px){.room-panel{right:20px;width:385px}.room-controls{gap:0}.room-discoveries{font-size:9px;padding:6px 0}}
@media(max-width:620px){
 .room-panel{left:12px;right:12px;top:auto;bottom:147px;width:auto;max-height:calc(100% - 175px);padding:21px 18px 16px}
 .room-panel h2{font-size:20px}.room-panel>p:not(.eyebrow){font-size:11px;margin-bottom:15px}
 .room-dock{bottom:57px;width:calc(100% - 24px);max-width:350px}.room-dock button{flex:1;padding:10px 6px;font-size:9px}
 .room-guide{bottom:141px;font-size:9px}.is-exploring .room-guide{opacity:0}
 .book-picker{gap:10px}.room-panel .book-picker button{min-height:65px;padding:8px 12px}.book-picker button span{margin-bottom:8px}
 .reading-book,.journal-sheet{padding:20px 18px 14px}.book-page{min-height:110px;font-size:13px}.reading-book h3,.journal-sheet h3{font-size:17px}
 .journal-sheet{min-height:270px}.journal-sheet>p{font-size:13px}.desktop-document{padding:14px}.room-controls{right:18px}
}

/* Examples belong to the principles they explain, in the normal reading flow. */
.working-notes{margin:20px 0 34px;border-top:1px solid var(--line)}
.working-notes details{border-bottom:1px solid var(--line)}
.working-notes summary{position:relative;list-style:none;cursor:pointer;padding:18px 30px 18px 0;line-height:1.9;font-size:15px;color:var(--ink);touch-action:manipulation}
.working-notes summary::-webkit-details-marker{display:none}
.working-notes summary:after{content:"+";position:absolute;right:4px;top:18px;font-size:19px;font-weight:400;color:var(--muted)}
.working-notes details[open] summary:after{content:"−"}
.working-notes summary:hover{color:var(--green)}
.working-notes summary:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:3px}
.working-example{padding:0 28px 20px 17px;border-left:2px solid var(--accent);margin:0 0 6px}
.working-example p{font-size:14px;line-height:2;color:var(--muted);margin:0 0 12px}
.working-example a{font-size:12px;line-height:1.8}
@media(max-width:620px){.working-notes summary{font-size:14px;padding-top:16px;padding-bottom:16px}.working-example{padding-right:10px}.working-example p{font-size:13px}.working-example a{font-size:11px}}


/* Original site content in the personal-home layout. */
.post-title,.post-meta,.prose,.article-layout>*,.about-layout>*{min-width:0}
.post-title h3,.article-header h1,.prose,.update-list a>span{overflow-wrap:anywhere}
.filter-toolbar{align-items:flex-start;gap:20px;flex-wrap:wrap}
.filter-tabs{flex-wrap:wrap;flex:1;min-width:260px;gap:5px}
.search-field{flex-shrink:0}
.pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:30px 0;font-size:12px;color:var(--muted)}
.pagination>div{display:flex;gap:6px}
.pagination-link{padding:9px 13px;border-radius:4px}
.pagination-link[aria-current]{background:var(--ink);color:var(--on-ink)}
.pagination a:hover{outline:1px solid var(--line)}
.pagination [aria-disabled]{opacity:.5}
.prose table{width:100%;border-collapse:collapse;font-size:13px;line-height:1.8}
.prose th,.prose td{padding:12px;text-align:left;border:1px solid var(--line);vertical-align:top}
.prose th{background:var(--soft);font-weight:600}
.markdown-table-wrap,.capability-table-wrap{overflow-x:auto;margin:26px 0}
.prose pre{max-width:100%;overflow:auto}
.prose pre.mermaid{background:var(--paper);color:#253a34}
.prose .info-list{font-size:14px;margin-bottom:0}
.info-list>div{padding:14px 0;border-bottom:1px solid var(--line)}
.info-list dt{font-size:11px;color:var(--muted);margin-bottom:5px}
.info-list dd{margin:0;overflow-wrap:anywhere}
.about-section{margin-top:42px;scroll-margin-top:30px}
.practice-item{margin-top:28px}
.about-toc{display:flex;flex-direction:column;gap:14px;margin:28px 0;font-size:12px;color:var(--muted)}
.about-toc a:hover{color:var(--ink)}
.case-study-meta{display:grid;gap:8px;font-size:13px;color:var(--muted);padding:20px 0;border-bottom:1px solid var(--line)}
.case-study-label{display:none}
.book-picker,.project-folders{overflow-x:auto;align-items:stretch;scrollbar-width:thin}
.room-panel .book-picker button{flex:0 0 100px}
.room-panel .project-folders button{flex:0 0 86px}
.flow-sketch>div{align-items:flex-start}
@media(max-width:620px){
 .filter-toolbar{display:flex;flex-direction:column;gap:16px}
 .filter-tabs{min-width:0;width:100%}
 .search-field{width:100%}
 .pagination{gap:8px;font-size:11px}
 .pagination-link{padding:8px 10px}
 .prose th,.prose td{padding:9px;min-width:95px}
 .about-toc{display:none}
 .book-picker{max-width:100%}
}

.project-figure{margin:0 0 32px}.project-figure img{display:block;width:100%;height:auto}.project-figure figcaption{font-size:12px;line-height:1.8;color:var(--muted);margin-top:12px}
.article-kicker{flex-wrap:wrap}

.case-period{display:block;color:var(--muted);font-size:11px;line-height:1.8;margin-top:10px;font-variant-numeric:tabular-nums}.article-header .case-period{font-size:13px;margin-top:20px}.article-header>p.case-time-note{font-size:12px;line-height:1.8;margin-top:8px;color:var(--muted)}
