:root{--ink:#20201f;--muted:#77736b;--line:#e3dfd6;--orange:#d96845;--paper:#faf9f6;--soft:#f0ede6;--green:#20201f;--shell-height:80px}
html{scroll-padding-top:150px}body.unified-site{margin:0;background:var(--paper);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Microsoft YaHei',sans-serif}body.unified-site a{color:inherit;text-decoration:none}.shell-wrap{width:min(1180px,calc(100% - 80px));margin-inline:auto}
.site-header{position:sticky!important;top:0!important;z-index:40!important;width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:rgba(250,249,246,.96)!important;border:0!important;border-bottom:1px solid var(--line)!important;backdrop-filter:blur(18px);display:block!important}.site-header .shell-nav{height:var(--shell-height);display:flex;align-items:center;justify-content:space-between;gap:35px}.site-header .wordmark,.site-footer .wordmark{font-size:34px;line-height:1;font-weight:750;letter-spacing:-2px;white-space:nowrap;color:var(--ink)}.site-header .wordmark span,.site-footer .wordmark span{color:var(--orange);display:inline-block;margin-left:10px;font-size:25px;font-weight:400}
.site-header nav{position:static;display:flex;align-items:center;gap:30px;padding:0;margin:0;background:none;border:0;flex-wrap:nowrap}.site-header nav a{font-size:12px;font-weight:450;white-space:nowrap;color:#77736b;padding-block:8px}.site-header nav a:hover,.site-header nav a[aria-current=page]{color:var(--orange)}.site-header nav a.shell-workspace{padding:10px 18px;border:1px solid #c8c1b5;border-radius:7px;color:var(--ink)}.site-header nav a.shell-workspace[aria-current=page]{background:var(--ink);border-color:var(--ink);color:var(--paper)}.site-header #menu{display:none;border:1px solid var(--line);border-radius:6px;background:transparent;color:var(--ink);font:20px/1 sans-serif;padding:9px 11px;cursor:pointer}.site-header #menu:focus-visible,.site-header a:focus-visible,.site-subnav a:focus-visible{outline:2px solid var(--orange);outline-offset:5px}
.site-subnav{position:sticky;top:var(--shell-height);z-index:30;border-bottom:1px solid var(--line);background:#f2efe8}.site-subnav nav{position:static;padding:0;border:0;background:none;flex-wrap:nowrap;overflow-y:hidden;scrollbar-width:none;display:flex;align-items:center;gap:28px;height:47px;overflow-x:auto;white-space:nowrap;margin-block:0;scrollbar-width:none}.site-subnav nav::-webkit-scrollbar{display:none}.site-subnav a{font-size:11px;color:var(--muted);padding:10px 0;line-height:1.5;flex-shrink:0}.site-subnav a[aria-current=page]{color:var(--ink);box-shadow:0 2px var(--orange)}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-block:34px;margin-top:25px;border-top:1px solid var(--line);font-size:11px;color:var(--muted);max-width:1180px}.site-footer .wordmark{font-size:28px}.site-footer>div{display:flex;gap:22px}.site-footer>span{margin:0}
.unified-site .wrap{width:min(1180px,calc(100% - 80px))}.unified-site .page-intro{padding-top:58px}.unified-site .button{border-radius:7px}.unified-site .note,.unified-site .work-card,.unified-site .career-case{background:#fffefb;border-color:var(--line)}.unified-site .article-meta{color:var(--muted)}.unified-site input:focus-visible,.unified-site textarea:focus-visible,.unified-site select:focus-visible{outline:2px solid var(--orange);outline-offset:3px}
.workspace-page{padding-bottom:45px}.workspace-intro{display:flex;justify-content:space-between;gap:35px;align-items:end;padding-bottom:30px}.workspace-intro h1{font-size:clamp(36px,4vw,56px);line-height:1.2;letter-spacing:-1.6px;margin:18px 0}.workspace-intro p{font-size:14px;max-width:600px;color:var(--muted);line-height:1.9}.workspace-badge{border:1px solid var(--line);padding:7px 12px;border-radius:30px;font-size:11px;color:var(--muted);white-space:nowrap;align-self:start;margin-top:16px}.workspace-banner{display:flex;justify-content:space-between;align-items:center;gap:25px;padding:29px 32px;background:var(--ink);color:var(--paper);border-radius:13px;margin-bottom:30px}.workspace-banner h2{font-size:23px;margin:9px 0}.workspace-banner p{color:#c7c1b7;font-size:13px;max-width:700px;line-height:1.9;margin:8px 0}.workspace-banner .eyebrow{color:#dd957a}.workspace-banner .button{background:#f7f2e9;color:var(--ink);white-space:nowrap}.workspace-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.workspace-card{border:1px solid var(--line);background:#fffefb;border-radius:12px;padding:26px;display:flex;flex-direction:column;min-height:225px}.workspace-card>span{color:var(--orange);font-size:10px;letter-spacing:1px}.workspace-card h2{font-size:21px;margin:18px 0 12px}.workspace-card p{font-size:12px;line-height:1.9;color:var(--muted);margin:0 0 22px}.workspace-card>a{margin-top:auto;font-size:12px;border-top:1px solid var(--line);padding-top:16px}.workspace-card>b{margin-top:auto;font-size:12px;font-weight:500;border-top:1px solid var(--line);padding-top:16px}.workspace-card:hover{border-color:#cbb7a4}.workspace-local-row{margin:30px 0;padding:25px;border:1px solid var(--line);border-radius:12px}.workspace-local-row h2{font-size:19px}.workspace-local-row p{font-size:13px;color:var(--muted);line-height:1.9}.workspace-links{display:flex;gap:18px;flex-wrap:wrap;margin-top:18px}.workspace-links a{font-size:12px}.workspace-status{font-size:11px;color:var(--muted)}
/* Personal creative work uses the same palette and typography as the portfolio. */
.unified-site .ip-main{background:var(--paper);color:var(--ink)}.unified-site .ip-main .eyebrow{color:var(--muted)}.unified-site .ip-heading h1 span,.unified-site .ip-closing h2 span,.unified-site .ip-sign{color:var(--orange)}.unified-site .ip-hero p,.unified-site .ip-section-head p,.unified-site .ig-scope{color:var(--muted)}.unified-site .ip-button{background:var(--ink);color:var(--paper)}.unified-site .ip-social{color:var(--ink)}.unified-site .ip-section,.unified-site .ip-closing,.unified-site .ip-caption b{border-color:var(--line)}.unified-site .ip-card{background:#fffefb;color:var(--ink);border-color:var(--line)}.unified-site .ip-caption>span,.unified-site .ig-gallery figcaption{color:var(--muted)}.unified-site .ip-caption b,.unified-site .ig-gallery figcaption a{color:var(--orange)}
/* Private journal: retained forms and storage, shared visual language. */
.journal-page main{max-width:1260px;padding:0 40px 55px;margin-inline:auto}.journal-page .hero{padding:45px 0 26px}.journal-page .hero h1{font-size:clamp(32px,3.5vw,47px)}.journal-page .week-panel{background:var(--soft);border-color:var(--line)}.journal-page .capture{background:#fffefb;border-color:var(--line)}.journal-page button{border-radius:7px}.journal-page button:not(.secondary):not(.text-button):not(#menu){background:var(--ink);border-color:var(--ink)}.journal-page .secondary{border-color:#c9c1b6}.journal-page .summary-box{background:var(--soft)}.journal-page input,.journal-page textarea,.journal-page select{background:#fffefb;border-color:#d8d1c6}.journal-page .week-bar{gap:20px}.journal-page .week-bar label{max-width:210px}.journal-page .stats{gap:40px}.journal-page .entry{border-color:var(--line)}.journal-page .text-button,.journal-page summary{color:var(--orange)}.journal-page .empty{border-color:#d5c8b7;background:#f7f3eb}.journal-storage-note{font-size:11px;color:var(--muted);padding-top:30px}.journal-page .site-footer{padding-inline:0}
/* Private library retains its filters and indexed content inside the same shell. */
.library-page>aside{top:128px;bottom:0;width:220px;background:#f0ede6;border-color:var(--line);padding:25px 18px}.library-page>aside .brand{font-size:21px;letter-spacing:-.5px}.library-page>aside .brand small{font-size:9px;letter-spacing:1px;margin-top:8px}.library-page>aside nav{margin-top:22px}.library-page>aside nav button{font-size:12px;padding:10px 11px}.library-page>aside nav button.active{background:var(--ink);color:var(--paper)}.library-page main{margin-left:220px;max-width:none;padding:30px 35px 55px}.library-page .library-toolbar{position:static;background:none;padding:0 0 20px;display:flex;gap:15px;flex-wrap:wrap;justify-content:space-between;border-color:var(--line);backdrop-filter:none}.library-page .library-toolbar .actions{display:flex;gap:10px;flex-wrap:wrap}.library-page .btn{background:var(--ink);border-color:var(--ink);font-size:11px}.library-page .btn.secondary{background:transparent;color:var(--ink);border-color:#c9c1b6}.library-page .hero{padding:32px 0 20px}.library-page .hero h1{font-size:clamp(30px,3vw,43px)}.library-page .emblem{background:#eae2d7;border-color:#d9cabb;color:var(--orange);font-size:45px;width:105px;height:105px}.library-page .card{background:#fffefb;border-color:var(--line)}.library-page .card:hover{border-color:#cbb7a4}.library-page .badge{color:#88755f;border-color:#dfd4c7}.library-page .notice{background:var(--soft)}.library-page .site-footer{margin-left:255px;width:calc(100% - 295px)}.library-page .stat{background:#fffefb;border-color:var(--line)}
@media(max-width:1000px){.site-header nav{gap:19px}.shell-wrap,.unified-site .wrap{width:calc(100% - 48px)}.workspace-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.library-page .grid{grid-template-columns:repeat(2,minmax(0,1fr))}.library-page main{padding-inline:24px}.library-page .stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){:root{--shell-height:70px}.shell-wrap,.unified-site .wrap{width:calc(100% - 36px)}.site-header .shell-nav{gap:20px}.site-header #menu{display:block}.site-header nav{display:none;position:absolute;top:70px;left:0;right:0;background:var(--paper);padding:18px;box-shadow:0 16px 20px #24201610;border-bottom:1px solid var(--line);gap:7px;grid-template-columns:1fr 1fr;white-space:normal}.site-header nav.open{display:grid}.site-header nav a{padding:13px;font-size:13px}.site-header nav a.shell-workspace{padding:12px;border-radius:6px;text-align:left}.site-subnav nav{height:44px;gap:24px}.site-footer{flex-wrap:wrap;gap:20px}.site-footer>span{order:3;width:100%}.site-footer>div{gap:15px}.workspace-intro{display:block}.workspace-badge{display:inline-block;margin:0}.workspace-banner{display:block;padding:24px}.workspace-banner .button{margin-top:15px}.workspace-grid{grid-template-columns:1fr}.workspace-card{min-height:190px}.journal-page main{padding-inline:18px}.journal-page .hero{padding-top:32px}.journal-page .stats{gap:25px}.journal-page .site-footer{padding-inline:0}.library-page>aside{position:static;inset:auto;width:auto;padding:18px;border-bottom:1px solid var(--line);border-right:0}.library-page>aside .brand,.library-page>aside .bottom{display:none}.library-page>aside nav{display:flex;gap:7px;overflow-x:auto;flex-wrap:nowrap;margin:0}.library-page>aside nav button{width:auto;white-space:nowrap;flex-shrink:0;margin:0;padding:8px 12px}.library-page main{margin-left:0;padding:25px 18px}.library-page .site-footer{width:calc(100% - 36px);margin-inline:auto}.library-page .emblem{display:none}.library-page .hero h1{font-size:33px}.library-page .grid{grid-template-columns:1fr}.library-page .toolbar{flex-wrap:wrap}.library-page .toolbar input{flex-basis:100%}.library-page .channels{grid-template-columns:1fr}.unified-site .page-intro{padding-top:38px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.unified-site *{animation:none!important;transition:none!important}}


/* Continuum: one visual language for portfolio, archive and local tools. */
:root{--paper:#f4f1ea;--ink:#20211e;--muted:#77766e;--line:#d7d4ca;--orange:#ad7036;--soft:#ebe7de;--shell-height:80px}
body.unified-site{background:var(--paper);color:var(--ink)}.site-header{background:rgba(244,241,234,.97)!important;backdrop-filter:blur(18px)}
.site-header .wordmark span,.site-footer .wordmark span{font:12px sans-serif;color:var(--ink);vertical-align:top;margin:3px 0 0 6px}.site-header nav a.shell-workspace{border-radius:0}.site-subnav{background:#ede9e0}
.unified-site .page-intro h1,.unified-site .workspace-intro h1,.unified-site .ip-heading h1,.unified-site .section-heading h2{font-family:Georgia,'Times New Roman','Microsoft YaHei',serif;font-weight:400;letter-spacing:-1.5px}
.unified-site .page-intro h1{font-size:clamp(38px,5vw,70px);line-height:1.15}.unified-site .button,.unified-site .workspace-card,.unified-site .career-case,.unified-site .note,.unified-site .work-card,.unified-site .workspace-banner,.unified-site .workspace-local-row{border-radius:0}.unified-site .workspace-banner{background:var(--ink)}
.continuum-home .site-header .shell-wrap{width:min(1380px,calc(100% - 88px))}.continuum-home .site-header .wordmark{font-size:40px}.continuum-home .site-header nav{gap:27px}.continuum-home .site-header{position:relative!important}.continuum-home .site-header button#menu{display:none}.continuum-home .site-header nav{display:flex}
.site-directory{padding:42px 0 55px;border-top:1px solid var(--line)}.site-directory h2{font:36px/1.2 Georgia,'Microsoft YaHei',serif;margin:15px 0 25px}.directory-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 26px}.directory-grid a{padding:20px 0;border-top:1px solid var(--line);font-size:13px}.directory-grid small{display:block;color:var(--muted);font-size:10px;margin-top:7px}.continuum-home .filters{flex-wrap:wrap}.continuum-home .filters button{white-space:nowrap}.continuum-home .archive-tools{flex-wrap:wrap}.continuum-home .archive-row h3{text-align:left}.continuum-home dialog .detail-link{display:inline-block;margin:12px 0}.continuum-home .article-body p{white-space:pre-line}
@media(max-width:720px){.continuum-home .site-header .shell-wrap{width:calc(100% - 36px)}.continuum-home .site-header .shell-nav{height:75px;gap:15px}.continuum-home .site-header nav{display:none}.continuum-home .site-header nav.open{display:flex;position:absolute;top:75px;left:0;right:0;padding:22px;background:var(--paper);flex-direction:column;align-items:start;border-bottom:1px solid var(--line);gap:8px}.continuum-home .site-header button#menu{display:block}.directory-grid{grid-template-columns:1fr 1fr}.site-directory h2{font-size:28px}.continuum-home .archive-search{flex-wrap:wrap}.continuum-home .archive-search label{width:100%}.continuum-home .filters button{font-size:11px;padding:6px 8px}}

.continuum-home .archive-search label{width:1px!important;max-width:1px;left:0}
