:root{--paper:#f5f0e5;--sheet:#fbf8f1;--ink:#20201d;--body:#38362f;--muted:#777166;--line:#d5ccbb;--red:#a92d1d;--olive:#3f4a2c;--soft:#eee5d6}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Be Vietnam Pro",Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
button,input{font:inherit}.siteHeader{height:68px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:0 max(28px,4vw);position:sticky;top:0;z-index:50;background:rgba(245,240,229,.96);backdrop-filter:blur(10px)}
.logo{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--ink);width:max-content}.logo svg{width:34px;height:34px;color:var(--red)}.logo span{display:flex;flex-direction:column}.logo b{font:700 19px/1 "Literata",Georgia,serif;letter-spacing:-.02em}.logo small{font-size:6.5px;letter-spacing:.16em;margin-top:5px}.siteHeader nav{display:flex;gap:34px;height:100%;align-items:center}.siteHeader nav a{color:var(--ink);text-decoration:none;font-size:12px;font-weight:600;height:100%;display:flex;align-items:center;border-bottom:2px solid transparent}.siteHeader nav a.active{color:var(--red);border-bottom-color:var(--red)}.follow{justify-self:end;border:1px solid var(--olive);background:var(--olive);color:#fff;border-radius:22px;padding:10px 16px;font-size:11px;cursor:pointer}
main{max-width:1580px;margin:auto}.hero{padding:38px 4vw 26px;display:grid;grid-template-columns:.75fr 1.55fr;gap:6vw;align-items:center;border-bottom:1px solid var(--line)}.eyebrow{font:600 10px/1.2 "Be Vietnam Pro",sans-serif;letter-spacing:.16em;color:var(--red);margin-bottom:12px}.heroTitle h1{font:700 clamp(54px,5.6vw,92px)/.88 "Literata","Times New Roman",serif;letter-spacing:-.055em;margin:0}.redRule{width:36px;height:3px;background:var(--red);margin-top:24px}.heroCopy h2{font:500 clamp(26px,2.6vw,42px)/1.18 "Literata","Times New Roman",serif;letter-spacing:-.025em;margin:0 0 13px;max-width:900px}.heroCopy h2 em{font-style:normal;color:var(--red);font-weight:700}.heroCopy>p{font:400 14px/1.7 "Be Vietnam Pro",sans-serif;color:var(--body);max-width:880px;margin:0}.principles{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:20px;color:var(--muted);font-size:9px;letter-spacing:.13em}.principles span+span:before{content:"·";margin-right:20px;color:var(--red)}
.command{padding:18px 4vw;border-bottom:1px solid var(--line)}.searchbar{height:50px;border:1px solid #a89f90;background:var(--sheet);display:flex;align-items:center;padding:0 14px;gap:10px;max-width:1000px}.searchbar>span{font:24px Georgia}.searchbar input{border:0;outline:0;background:transparent;flex:1;font-size:13px;color:var(--ink)}kbd{border:1px solid var(--line);background:var(--paper);padding:4px 7px;font-size:10px}.stats{display:flex;align-items:center;gap:24px;margin-top:12px;font-size:9px;letter-spacing:.08em;color:var(--muted)}.stats b{color:var(--ink)}.stats q{margin-left:auto;font:italic 13px/1.4 "Literata",serif;letter-spacing:0;color:#5f5a51}
.workspace{display:grid;grid-template-columns:minmax(330px,.72fr) minmax(620px,1.55fr) minmax(230px,.55fr);margin:0 4vw;border-bottom:1px solid var(--line);align-items:start}.indexPane{border-right:1px solid var(--line);padding:22px 22px 70px;position:sticky;top:68px;max-height:calc(100vh - 68px);overflow:auto}.reader{background:var(--sheet);padding:34px clamp(32px,4vw,68px) 70px;min-height:820px}.contextRail{border-left:1px solid var(--line);padding:22px 18px;position:sticky;top:68px}.contextRail section{border:1px solid var(--line);padding:16px;margin-bottom:12px;background:rgba(251,248,241,.55)}.railHead{font-size:9px;font-weight:700;letter-spacing:.12em;margin-bottom:9px}.contextRail p{font:12px/1.65 "Be Vietnam Pro",sans-serif;color:var(--body);margin:0}.hookCard span{font-size:9px;color:var(--red);font-weight:700;letter-spacing:.1em}.hookCard strong{display:block;font:600 16px/1.45 "Literata",serif;margin-top:9px}.panehead{display:flex;justify-content:space-between;font-size:8.5px;letter-spacing:.11em;color:var(--muted);padding-bottom:13px;border-bottom:1px solid var(--line)}.panehead b{color:var(--ink)}
.branch{padding:18px 0 14px;border-bottom:1px solid var(--line)}.branchTitle{display:flex;gap:12px;align-items:baseline}.branchCode{font:600 24px "Literata",serif;color:var(--red)}.branchName{font-size:13px;font-weight:700;letter-spacing:.03em}.branchDesc{margin:4px 0 10px 36px;color:var(--muted);font-size:10px;line-height:1.55}.zitem{display:grid;grid-template-columns:68px 1fr auto;gap:7px;align-items:start;padding:9px 8px;cursor:pointer;margin-left:20px;border-left:2px solid transparent;border-radius:0 6px 6px 0}.zitem:hover{background:rgba(238,229,214,.65)}.zitem.active{background:var(--soft);border-left-color:var(--red)}.zitem.child{margin-left:39px;border-left:1px solid var(--line);padding-left:12px}.zitem.child.active{border-left:2px solid var(--red)}.zid{font-size:9px;color:var(--red);padding-top:3px}.ztitle{font:500 13px/1.45 "Literata","Times New Roman",serif}.relcount{font-size:7px;color:var(--muted);white-space:nowrap;padding-top:3px}
.empty{max-width:650px;margin:80px auto}.emptyCode{font:700 110px/.8 "Literata",serif;color:#e6dece;letter-spacing:-.07em}.empty h2{font:600 35px/1.2 "Literata",serif;margin:20px 0 12px}.empty p{font:400 17px/1.75 "Literata","Times New Roman",serif;color:var(--body)}.primary{margin-top:12px;border:0;background:var(--ink);color:#fff;padding:12px 15px;font-size:9px;letter-spacing:.08em;font-weight:700;cursor:pointer}
.rmeta{display:flex;justify-content:space-between;gap:20px;font-size:8px;letter-spacing:.06em;color:var(--muted);border-bottom:1px solid var(--line);padding-bottom:12px}.rmeta .id{color:var(--red);font-weight:700}.rtitle{font:600 clamp(39px,4vw,62px)/1.08 "Literata","Times New Roman",serif;letter-spacing:-.035em;margin:28px 0 13px}.rsummary{font:400 18px/1.65 "Literata","Times New Roman",serif;color:#5d574f;max-width:760px;margin-bottom:32px}.body{max-width:760px}.body p{font:400 18px/1.82 "Literata","Times New Roman",serif;margin:0 0 24px;color:#292822}.body h2{font:600 27px/1.25 "Literata","Times New Roman",serif;margin:44px 0 17px;border-top:1px solid var(--line);padding-top:18px}.body strong{font-weight:700}.body blockquote{border-left:3px solid var(--red);background:#f4ecdf;margin:30px 0;padding:16px 20px;font:500 20px/1.6 "Literata",serif}.relations{margin-top:54px;border-top:1px solid var(--ink);padding-top:18px;display:grid;grid-template-columns:1fr 1fr;gap:28px}.relations h3{font-size:8px;letter-spacing:.12em;color:var(--muted)}.rlink{display:block;width:100%;text-align:left;border:0;border-top:1px solid var(--line);background:none;padding:10px 0;cursor:pointer;color:var(--ink)}.rlink b{font-size:9px;color:var(--red);margin-right:6px}.rlink span{font:500 12px "Literata",serif}.rlink small{color:var(--muted);font-size:8px}.nores{padding:22px;color:var(--muted);font:15px "Literata",serif}
.about{padding:68px 4vw;border-bottom:1px solid var(--line);display:grid;grid-template-columns:.8fr 1.5fr;gap:6vw}.about>div>h2{font:600 36px/1.25 "Literata",serif;margin:0;max-width:520px}.about em{color:var(--red);font-style:normal}.aboutGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.aboutGrid article{border-top:2px solid var(--ink);padding-top:13px}.aboutGrid article>b{font:600 24px "Literata",serif;color:var(--red)}.aboutGrid h3{font:600 16px "Literata",serif;margin:10px 0 7px}.aboutGrid p{font-size:11px;line-height:1.65;color:var(--body);margin:0}
.footerCta{padding:62px 4vw;display:grid;grid-template-columns:1.2fr .8fr;gap:7vw;background:#ece3d3}.footerCta h2{font:600 42px/1.15 "Literata",serif;margin:0 0 10px}.footerCta p{font:400 18px/1.6 "Literata",serif;margin:0;color:var(--body)}.ctaBox{border-left:1px solid #bdb29f;padding-left:28px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.ctaBox>b{color:var(--red);font-size:11px;letter-spacing:.1em}.ctaBox span{font:500 16px/1.5 "Literata",serif;margin:10px 0 18px}.ctaBox button{border:1px solid var(--ink);background:transparent;padding:10px 13px;font-size:9px;font-weight:700;cursor:pointer}
footer{min-height:116px;padding:28px 4vw;display:flex;justify-content:space-between;align-items:center;background:#262722;color:#f7f1e6}.logo.mini{color:#f7f1e6}.logo.mini svg{width:30px}.logo.mini small{color:#bdb9af}.copyright{display:flex;flex-direction:column;text-align:right;gap:5px;font-size:8px;letter-spacing:.08em;color:#bdb9af}.copyright b{color:#fff;font-size:10px}
@media(max-width:1150px){.workspace{grid-template-columns:340px 1fr}.contextRail{display:none}.siteHeader nav{display:none}.siteHeader{grid-template-columns:1fr auto}.hero{grid-template-columns:.8fr 1.2fr}.about{grid-template-columns:1fr}.aboutGrid{margin-top:15px}}
@media(max-width:780px){.siteHeader{height:60px;padding:0 16px}.logo small{display:none}.follow{padding:8px 10px}.hero{grid-template-columns:1fr;padding:28px 18px 20px}.heroTitle h1{font-size:58px}.heroCopy{margin-top:24px}.heroCopy h2{font-size:27px}.command{padding:15px 18px}.stats q{display:none}.workspace{grid-template-columns:1fr;margin:0}.indexPane{position:relative;top:auto;max-height:none;border-right:0;padding:18px}.reader{border-top:1px solid var(--line);padding:30px 22px 60px;min-height:auto}.rtitle{font-size:39px}.body p{font-size:17px;line-height:1.78}.relations{grid-template-columns:1fr}.about{padding:48px 18px}.aboutGrid{grid-template-columns:1fr}.footerCta{grid-template-columns:1fr;padding:48px 18px}.ctaBox{border-left:0;border-top:1px solid #bdb29f;padding:24px 0 0}footer{padding:24px 18px;align-items:flex-start;gap:20px;flex-direction:column}.copyright{text-align:left}}

/* V0.3 — reading comfort + interaction layer */
:root{
  --paper:#F4EEDF;       /* warm parchment shell */
  --sheet:#FBF7ED;       /* reading surface */
  --soft:#EEE4D1;
  --ink:#27251F;         /* softer than pure black */
  --body:#3E3A31;
  --muted:#746D61;
  --line:#D7CDBA;
  --red:#A93422;
  --olive:#3E4A2E;
  --focus:#FFF9EC;
  --radius:10px;
  --radius-sm:7px;
  --shadow:0 8px 24px rgba(62,52,38,.10),0 2px 5px rgba(62,52,38,.07);
  --shadow-soft:0 5px 15px rgba(62,52,38,.08);
}
button,.searchbar,.contextRail section,.ctaBox,.newsletter,.subscribeForm input,.subscribeForm button,.zitem,.primary,.rlink{border-radius:var(--radius-sm)}
.follow,.primary,.subscribeForm button,.readerTools button{box-shadow:var(--shadow-soft);transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease,color .18s ease}
.follow:hover,.primary:hover,.subscribeForm button:hover,.readerTools button:hover{transform:translateY(-2px);box-shadow:var(--shadow);filter:brightness(1.04)}
.searchbar{border-color:#BFB39E;transition:border-color .18s,box-shadow .18s,background .18s}.searchbar:focus-within{border-color:#8D7C61;background:var(--focus);box-shadow:0 0 0 3px rgba(169,52,34,.08)}
.zitem,.rlink,.siteHeader nav a,.ctaBox button{transition:background .16s,color .16s,transform .16s,border-color .16s,box-shadow .16s}.zitem:hover{background:#F0E5D2;transform:translateX(2px)}.rlink:hover{background:#F2E8D8;padding-left:9px;padding-right:7px}.ctaBox button:hover{background:var(--ink);color:#fff;box-shadow:var(--shadow-soft)}
.contextRail section:hover{background:#FFF9EE;border-color:#C9BCA6;box-shadow:var(--shadow-soft)}
.reader{background:var(--sheet)}
.body{max-width:720px}.body p{font-size:17px;line-height:1.82;font-weight:400;margin-bottom:23px}.body h2{font-size:25px;line-height:1.34;font-weight:600;margin-top:42px}.body strong{font-weight:650}.rsummary{font-size:17px;line-height:1.62}.rtitle{max-width:800px}
.readerTools{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 28px;padding-bottom:16px;border-bottom:1px solid var(--line)}.readerTools button{border:1px solid #C9BDA9;background:#F8F1E4;color:var(--ink);padding:9px 11px;font-size:9px;font-weight:700;letter-spacing:.05em;cursor:pointer}.readerTools button.primaryTool{background:var(--olive);border-color:var(--olive);color:#fff}.readerTools button:hover{background:#FFF9ED;border-color:#A99478}.readerTools button.primaryTool:hover{background:#4A5837;color:#fff}
body.focusReading .indexPane,body.focusReading .contextRail{display:none}body.focusReading .workspace{grid-template-columns:minmax(0,900px);justify-content:center}body.focusReading .reader{border-left:1px solid var(--line);border-right:1px solid var(--line)}
body.readingLarge .body p{font-size:19px;line-height:1.86}body.readingLarge .body h2{font-size:28px}body.readingLarge .rsummary{font-size:19px}
.newsletter{margin:0 4vw 54px;padding:34px 38px;background:#E9DDC7;border:1px solid #D2C3A9;display:grid;grid-template-columns:1fr 1.1fr;gap:5vw;align-items:center;box-shadow:var(--shadow-soft)}.newsletter h2{font:600 34px/1.2 "Literata",serif;margin:0 0 8px}.newsletter h2 em{color:var(--red);font-style:normal}.newsletter p{font:400 14px/1.65 "Be Vietnam Pro",sans-serif;color:var(--body);margin:0;max-width:620px}.subscribeForm label{display:block;font-size:8px;font-weight:700;letter-spacing:.12em;margin-bottom:8px}.emailRow{display:grid;grid-template-columns:1fr auto;gap:8px}.subscribeForm input{min-width:0;border:1px solid #BBAE97;background:#FFF9EE;padding:13px 14px;outline:0;color:var(--ink);transition:border .18s,box-shadow .18s}.subscribeForm input:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(169,52,34,.08)}.subscribeForm button{border:0;background:var(--red);color:#fff;padding:0 17px;font-size:9px;font-weight:700;letter-spacing:.06em;cursor:pointer}.subscribeForm small{display:block;margin-top:8px;color:var(--muted);font-size:8px;line-height:1.5}.subscribeForm.success .emailRow{opacity:.55}.subscribeForm.success small{color:var(--olive);font-weight:700}
@media(max-width:780px){.newsletter{margin:0 18px 36px;padding:26px 20px;grid-template-columns:1fr}.emailRow{grid-template-columns:1fr}.subscribeForm button{padding:13px}.readerTools{position:sticky;top:60px;background:rgba(251,247,237,.95);z-index:8;padding-top:10px}}
@media print{.siteHeader,.hero,.command,.indexPane,.contextRail,.about,.footerCta,.newsletter,footer,.readerTools{display:none!important}.workspace{display:block!important;margin:0;border:0}.reader{padding:0;background:white;border:0!important}.rtitle{font-size:30pt}.body{max-width:none}.body p{font-size:11.5pt;line-height:1.55}.body h2{font-size:17pt;break-after:avoid}.relations{break-before:page}body{background:white;color:#111}}

/* V0.4 — cover, command dock, master index */
.heroCover{position:relative;overflow:hidden;isolation:isolate;min-height:350px}
.coverArt{position:absolute;inset:0;z-index:-2;opacity:.58;pointer-events:none}.coverArt svg{width:100%;height:100%;display:block}.heroCover:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(244,238,223,.97) 0%,rgba(244,238,223,.91) 36%,rgba(244,238,223,.70) 67%,rgba(244,238,223,.82) 100%)}
.heroTitle h1{display:flex;flex-direction:column;gap:.01em;font-size:clamp(54px,5.25vw,88px);line-height:.94;letter-spacing:-.035em}.heroTitle h1 span{display:block;white-space:nowrap}
.command{padding:18px 4vw 14px}.commandDock{max-width:1080px;margin:0 auto}.commandTabs{display:flex;gap:7px;margin-bottom:8px}.commandTab{border:1px solid var(--line);background:#eee4d1;color:var(--muted);border-radius:8px 8px 4px 4px;padding:8px 12px;font-size:9px;font-weight:700;letter-spacing:.08em;cursor:pointer;transition:.18s ease;box-shadow:0 2px 6px rgba(62,52,38,.05)}.commandTab:hover{background:#fff8e9;color:var(--red);transform:translateY(-1px)}.commandTab.active{background:var(--ink);border-color:var(--ink);color:#fff}.searchbar{max-width:none;height:54px;border-radius:9px;box-shadow:0 5px 18px rgba(62,52,38,.07)}.stats{max-width:1080px;margin:10px auto 0}.stats q{font-size:12px}
.indexOverlay{position:fixed;inset:0;z-index:100;background:rgba(39,37,31,.44);backdrop-filter:blur(5px);display:none;padding:5vh 5vw;overflow:auto}.indexOverlay.open{display:block}.indexSheet{max-width:1050px;margin:0 auto;background:var(--sheet);border:1px solid #cbbda5;border-radius:14px;padding:34px 40px 46px;box-shadow:0 28px 80px rgba(31,27,21,.25)}.indexSheetHead{display:flex;justify-content:space-between;gap:30px;padding-bottom:22px;border-bottom:1px solid var(--line)}.indexSheetHead h2{font:600 42px/1.1 "Literata",serif;margin:0 0 8px}.indexSheetHead p{margin:0;max-width:690px;color:var(--body);font-size:12px;line-height:1.6}.closeIndex{width:42px;height:42px;border:1px solid var(--line);background:#f5eddf;border-radius:50%;font-size:25px;cursor:pointer}.closeIndex:hover{background:var(--red);color:#fff;box-shadow:var(--shadow-soft)}.indexActions{display:flex;gap:8px;padding:16px 0}.indexActions button{border:1px solid var(--line);background:#f5eddf;padding:8px 10px;font-size:8px;font-weight:700;letter-spacing:.07em;cursor:pointer}.indexActions button:hover{background:#fff8e9;border-color:#bba88a}.masterBranch{border-top:1px solid var(--line)}.masterBranch:last-child{border-bottom:1px solid var(--line)}.masterBranchHead{width:100%;display:grid;grid-template-columns:28px 54px 1fr auto;align-items:center;gap:8px;border:0;background:transparent;padding:16px 6px;cursor:pointer;text-align:left}.masterBranchHead:hover{background:#f4ead9}.masterChevron{font-size:13px;transition:transform .16s}.masterBranch.open .masterChevron{transform:rotate(90deg)}.masterBranchCode{font:600 20px "Literata",serif;color:var(--red)}.masterBranchName{font-size:12px;font-weight:700}.masterCount{font-size:8px;color:var(--muted)}.masterChildren{display:none;padding:0 10px 14px 90px}.masterBranch.open .masterChildren{display:block}.masterItem{display:grid;grid-template-columns:95px 1fr;gap:14px;padding:9px 6px;border-top:1px dotted #d8cdb9;cursor:pointer;border-radius:6px}.masterItem:hover{background:#fff8e9;transform:translateX(2px)}.masterItem.child{padding-left:24px}.masterItem .mid{color:var(--red);font-size:9px;font-weight:600}.masterItem .mname{font:500 13px/1.4 "Literata",serif}
body.indexOpen{overflow:hidden}
@media(max-width:780px){.heroCover{min-height:auto}.heroTitle h1{font-size:56px;line-height:.98}.coverArt{opacity:.38}.commandDock{max-width:none}.commandTabs{overflow:auto}.commandTab{white-space:nowrap}.indexOverlay{padding:0}.indexSheet{min-height:100vh;border-radius:0;padding:25px 18px}.indexSheetHead h2{font-size:34px}.masterChildren{padding-left:28px}.masterBranchHead{grid-template-columns:22px 45px 1fr auto}}

/* V0.5 — unified reading type, editorial cover, compact footer, repeated structural index */
:root{--radius-xs:7px;--radius-sm:10px;--radius-md:14px;--radius-lg:20px;--warm-paper:#f6f0e3;--warm-sheet:#fcf8ef;--warm-panel:#eadfc9;--warm-line:#d7cbb5;--accent:#b23824;--accent-dark:#8f2b1c}
body,button,input,.siteHeader nav a,.eyebrow,.branchName,.branchDesc,.zid,.relcount,.rmeta,.relations h3,.masterBranchName,.masterCount,.newsletter p,.subscribeForm label,.subscribeForm small{font-family:"Literata",Georgia,serif}
body{background:var(--warm-paper)}
.siteHeader{background:rgba(246,240,227,.965)}
.siteHeader nav a,.follow,.commandTab,.readerTools button,.ctaBox button,.indexActions button{font-weight:600}
.follow{background:var(--accent);border-color:var(--accent);border-radius:999px;padding:10px 18px;box-shadow:0 5px 14px rgba(178,56,36,.16)}
.follow:hover{background:var(--accent-dark);border-color:var(--accent-dark)}
.heroCover{border-radius:0 0 var(--radius-lg) var(--radius-lg);margin:0 1.2vw;min-height:365px;border:1px solid rgba(204,188,160,.45);border-top:0}
.coverArt{opacity:.82}.heroCover:after{background:linear-gradient(90deg,rgba(246,240,227,.98) 0%,rgba(246,240,227,.95) 33%,rgba(246,240,227,.76) 58%,rgba(246,240,227,.24) 100%)}
.heroTitle h1{line-height:.96;letter-spacing:-.045em}.heroTitle h1 span{padding-bottom:.03em}.heroCopy{position:relative;z-index:2;background:rgba(252,248,239,.55);backdrop-filter:blur(2px);padding:22px 26px;border-radius:var(--radius-lg);box-shadow:0 14px 38px rgba(72,57,37,.06)}
.command{border-bottom:0}.commandDock{max-width:980px}.commandTabs{justify-content:center;margin-bottom:10px}.commandTab{border-radius:999px;padding:9px 15px}.searchbar{border-radius:999px;padding-left:20px;padding-right:14px;background:var(--warm-sheet);border-color:#cbbda4;box-shadow:0 8px 22px rgba(74,59,39,.08)}.searchbar:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px rgba(178,56,36,.07),0 10px 26px rgba(74,59,39,.10)}kbd{border-radius:6px}
.workspace{border-radius:var(--radius-lg);overflow:hidden;border:1px solid var(--warm-line);margin-top:4px}.indexPane{border-radius:var(--radius-lg) 0 0 var(--radius-lg)}.reader{background:var(--warm-sheet)}.contextRail{border-radius:0 var(--radius-lg) var(--radius-lg) 0}.contextRail section{border-radius:var(--radius-md)}
.zitem{border-radius:var(--radius-sm);border-left:2px solid transparent;margin-bottom:3px}.zitem.child{border-radius:var(--radius-sm);border-left:1px solid var(--line)}.zitem:hover{transform:translateX(2px);background:#f0e4cf}.zitem.active{box-shadow:inset 0 0 0 1px rgba(178,56,36,.08)}
.readerTools button,.ctaBox button,.indexActions button{border-radius:999px}.rlink{border-radius:var(--radius-xs);padding:10px 8px}.rlink:hover{background:#f3e8d5;transform:translateX(2px)}
.footerCta{margin:44px 4vw 18px;border-radius:var(--radius-lg);padding:38px 44px;background:#eee3d0;border:1px solid #d7c9b0}.ctaBox{border-radius:0 var(--radius-md) var(--radius-md) 0}.ctaBox button:hover{background:var(--ink);color:#fff}
.newsletter{border-radius:var(--radius-lg);margin-bottom:24px;background:#eadcc1}.emailRow input{border-radius:999px}.emailRow button{border-radius:999px;min-width:155px}.newsletter h2{font-family:"Literata",Georgia,serif}
.quickIndex{margin:34px 4vw 30px;padding:34px 38px;background:#f0e6d3;border:1px solid var(--warm-line);border-radius:var(--radius-lg);box-shadow:0 8px 26px rgba(70,55,35,.05)}.quickIndexHead{display:flex;justify-content:space-between;gap:30px;align-items:end;border-bottom:1px solid var(--warm-line);padding-bottom:20px}.quickIndexHead h2{font:600 34px/1.15 "Literata",serif;margin:0}.quickIndexHead button{border:1px solid var(--accent);color:var(--accent);background:#fff9ed;border-radius:999px;padding:10px 15px;font-size:10px;font-weight:700;cursor:pointer;box-shadow:0 5px 14px rgba(71,53,32,.06)}.quickIndexHead button:hover{background:var(--accent);color:#fff;transform:translateY(-2px)}.quickBranches{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:20px}.quickBranch{border:1px solid #d7c9b0;background:#faf4e8;border-radius:var(--radius-md);padding:18px;cursor:pointer;min-height:112px;transition:.18s ease;box-shadow:0 3px 10px rgba(71,53,32,.035)}.quickBranch:hover{transform:translateY(-3px);background:#fffaf1;box-shadow:0 10px 24px rgba(71,53,32,.10);border-color:#c7ad88}.quickBranch b{display:block;font:600 26px/1 "Literata",serif;color:var(--accent);margin-bottom:14px}.quickBranch strong{font-size:14px}.quickBranch span{display:block;margin-top:8px;color:var(--muted);font-size:9px}
footer{min-height:0;padding:28px 4vw 24px;display:grid;grid-template-columns:1.5fr .7fr .7fr 1fr;gap:42px;align-items:start;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.footerBrand p{max-width:360px;color:#c9c4b9;font-size:11px;line-height:1.55;margin:14px 0 0}.footerNav{display:flex;flex-direction:column;gap:8px}.footerNav>b{color:#f4e7d1;font-size:9px;letter-spacing:.12em;margin-bottom:4px}.footerNav a,.footerNav button{color:#bbb8ae;background:none;border:0;padding:0;text-align:left;text-decoration:none;font:400 10px/1.5 "Literata",serif;cursor:pointer;width:max-content}.footerNav a:hover,.footerNav button:hover{color:#fff;transform:translateX(2px)}.copyright{align-self:end}
.indexSheet,.closeIndex,.masterItem,.masterBranchHead,.indexActions button{border-radius:var(--radius-md)}.masterBranchHead{margin:3px 0}.masterBranchHead:hover{background:#f1e5d0}.indexSheet{border-radius:var(--radius-lg)}
@media(max-width:1050px){.quickBranches{grid-template-columns:repeat(2,1fr)}footer{grid-template-columns:1.2fr 1fr 1fr}.copyright{grid-column:1/-1;text-align:left}}
@media(max-width:780px){.heroCover{margin:0;border-radius:0 0 var(--radius-md) var(--radius-md)}.heroCopy{padding:16px 0;background:transparent;box-shadow:none}.coverArt{opacity:.42}.quickIndex{margin:28px 18px;padding:26px 20px}.quickIndexHead{align-items:start;flex-direction:column}.quickBranches{grid-template-columns:1fr 1fr}.footerCta{margin:30px 18px 16px;padding:30px 22px}footer{grid-template-columns:1fr 1fr;border-radius:var(--radius-md) var(--radius-md) 0 0}.footerBrand,.copyright{grid-column:1/-1}.workspace{border-radius:var(--radius-md)}}
/* V0.6 — cover, continuous article, machine identity */
.heroCover{position:relative;isolation:isolate;overflow:hidden;min-height:430px;background:#efe4ce;border-radius:0 0 var(--radius-lg) var(--radius-lg)}
.coverPhoto{position:absolute;inset:0;z-index:-2;background-image:linear-gradient(90deg,rgba(247,241,228,.97) 0%,rgba(247,241,228,.88) 28%,rgba(247,241,228,.28) 57%,rgba(247,241,228,.06) 100%),url('cover.png');background-size:cover;background-position:center 39%;filter:saturate(.82) contrast(.96)}
.heroCover:after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(0deg,rgba(247,241,228,.48),transparent 42%);pointer-events:none}
.heroTitle h1{display:flex;flex-direction:column;gap:.04em;font-size:clamp(54px,5.15vw,86px);line-height:.92;letter-spacing:-.045em;text-wrap:nowrap}.heroTitle h1 span{display:block}
.heroCopy{background:rgba(251,248,241,.80);backdrop-filter:blur(7px);padding:28px 32px;border-radius:var(--radius-lg);box-shadow:0 12px 40px rgba(65,50,29,.08)}
.body h2{border-top:0!important;padding-top:0!important;margin:42px 0 17px}.body h2:first-child{margin-top:34px}.body{padding-bottom:10px}
.rmeta{align-items:center}.identityToggle{margin-left:auto;border:1px solid var(--line);background:#fbf7ed;border-radius:999px;padding:7px 11px;font:600 8px/1 "Be Vietnam Pro",sans-serif;letter-spacing:.06em;cursor:pointer}.identityToggle:hover{border-color:var(--red);color:var(--red);transform:translateY(-1px)}
.identityCard{display:none;margin:12px 0 22px;padding:16px 18px;border:1px solid var(--line);border-radius:var(--radius-md);background:#f7f0e3;grid-template-columns:1fr auto;gap:18px;align-items:center}.identityCard.open{display:grid}.identityData{display:grid;grid-template-columns:92px 1fr;gap:7px 12px;font:10px/1.45 "Be Vietnam Pro",sans-serif}.identityData span:nth-child(odd){color:var(--muted)}.identityData code{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;font-size:10px}.qrBox{width:92px;height:92px;background:#fff;border:1px solid var(--line);border-radius:10px;padding:7px;display:grid;place-items:center}.qrBox img{width:100%;height:100%;display:block}.copyMini{border:0;background:none;color:var(--red);font-size:9px;font-weight:700;cursor:pointer;padding:0 0 0 6px}
@media(max-width:780px){.heroCover{min-height:auto}.coverPhoto{opacity:.52;background-position:64% center}.heroTitle h1{font-size:58px;line-height:.94}.heroCopy{padding:18px;background:rgba(251,248,241,.86)}.identityCard{grid-template-columns:1fr}.qrBox{width:84px;height:84px}}

/* V0.7 — quiet cover, persistent focus exit, right-side identity, A4 print template */
.heroCover{min-height:360px;grid-template-columns:.72fr 1.28fr;background:#eee5d4;isolation:isolate}
.coverPhoto{display:none!important}
.heroCover:before{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(110deg,#f7f1e5 0 47%,#eadfc9 47% 100%)}
.heroCover:after{content:"";position:absolute;z-index:-1;right:-5%;bottom:-35%;width:58%;aspect-ratio:1;border:1px solid rgba(169,45,29,.11);border-radius:50%;box-shadow:0 0 0 70px rgba(169,45,29,.025),0 0 0 140px rgba(169,45,29,.018);background:transparent}
.heroTitle{position:relative;z-index:2;padding-left:2vw}
.heroTitle h1{display:grid!important;gap:0!important;font-size:clamp(50px,4.55vw,76px)!important;line-height:1.04!important;letter-spacing:-.055em!important;white-space:normal!important;text-wrap:balance!important}
.heroTitle h1 span{display:block!important;line-height:1.04!important;height:auto!important;padding:0!important;margin:0!important;transform:none!important}
.heroCopy{background:transparent!important;backdrop-filter:none!important;box-shadow:none!important;padding:20px 3vw 20px 0!important;max-width:900px}
.heroCopy h2{font-size:clamp(29px,2.7vw,44px);line-height:1.16}
.heroCopy>p{max-width:760px}.principles{border-top:1px solid rgba(92,76,55,.18);padding-top:16px}

/* identity is auxiliary: dock it to the right edge of the reader */
.reader{position:relative}
.identityCard{position:absolute!important;z-index:8;top:72px;right:18px;width:min(360px,calc(100% - 36px));margin:0!important;grid-template-columns:1fr auto!important;box-shadow:0 18px 45px rgba(65,50,29,.16);background:#fbf7ed!important}
.identityData{grid-template-columns:78px minmax(0,1fr)!important}.identityData code{overflow-wrap:anywhere}.qrBox{width:78px!important;height:78px!important}

/* persistent focus escape control */
.focusExit{display:none;position:fixed;z-index:60;right:28px;bottom:26px;border:1px solid #2f3425;background:#3f4a2c;color:#fff;border-radius:999px;padding:12px 17px;font:700 10px/1 "Be Vietnam Pro",sans-serif;letter-spacing:.05em;box-shadow:0 12px 30px rgba(32,32,29,.2);cursor:pointer}
body.focusReading .focusExit{display:block}
body.focusReading .siteHeader{opacity:.18;transition:opacity .2s}body.focusReading .siteHeader:hover{opacity:1}

/* article remains one continuous body */
.body h2{border:0!important;padding:0!important;margin:42px 0 14px!important}.body p+h2{margin-top:46px!important}

@media(max-width:780px){.heroCover{grid-template-columns:1fr;min-height:auto}.heroTitle{padding-left:0}.heroTitle h1{font-size:54px!important;line-height:1.02!important}.heroCopy{padding:10px 0 8px!important}.heroCover:after{right:-40%;bottom:-12%;width:120%}.identityCard{right:10px;top:66px;width:calc(100% - 20px);grid-template-columns:1fr!important}.focusExit{right:16px;bottom:16px}}

/* A4 publication print system */
@page{size:A4 portrait;margin:18mm 17mm 19mm}
@media print{
 html,body{background:#fff!important;color:#171713!important;font-family:"Literata",Georgia,serif!important}
 .siteHeader,.hero,.command,.indexPane,.contextRail,.about,.footerCta,.quickIndex,.newsletter,footer,.readerTools,.identityToggle,.identityCard,.focusExit{display:none!important}
 main,.workspace,.reader{display:block!important;max-width:none!important;width:auto!important;margin:0!important;padding:0!important;border:0!important;background:#fff!important;overflow:visible!important;min-height:0!important}
 .reader:before{content:"EMBERTOWER  ·  CHỐNG THẤT THẾ";display:block;border-bottom:.35mm solid #a92d1d;padding:0 0 3mm;margin:0 0 8mm;font:700 8.5pt/1.2 "Be Vietnam Pro",Arial,sans-serif;letter-spacing:.12em;color:#20201d}
 .rmeta{display:flex!important;border-bottom:.2mm solid #d7d0c5!important;padding:0 0 3mm!important;margin-bottom:7mm!important;font:600 7.5pt/1.2 "Be Vietnam Pro",Arial,sans-serif!important;color:#6c665d!important}
 .rmeta .id{color:#a92d1d!important}.rtitle{font-size:27pt!important;line-height:1.08!important;letter-spacing:-.03em!important;margin:0 0 4mm!important;max-width:none!important;break-after:avoid-page}
 .rsummary{font-size:11.5pt!important;line-height:1.55!important;margin:0 0 9mm!important;color:#5b554c!important;max-width:none!important}
 .body{max-width:none!important;padding:0!important}.body p{font-size:11.2pt!important;line-height:1.62!important;margin:0 0 5.2mm!important;orphans:3;widows:3}.body h2{font-size:16.5pt!important;line-height:1.25!important;margin:9mm 0 3.5mm!important;break-after:avoid-page;page-break-after:avoid}.body blockquote{font-size:12pt!important;background:none!important;border-left:.8mm solid #a92d1d!important;padding:2mm 0 2mm 5mm!important;margin:6mm 0!important}
 .relations{margin-top:10mm!important;padding-top:5mm!important;border-top:.35mm solid #20201d!important;gap:8mm!important;break-inside:avoid}.relations h3{font-size:7.5pt!important}.rlink{padding:2.5mm 0!important}.rlink span{font-size:9.5pt!important}
 .reader:after{content:"chongthatthe.embertower.com  ·  EMBERTOWER KNOWLEDGE PUBLICATION";display:block;border-top:.2mm solid #d7d0c5;margin-top:10mm;padding-top:3mm;font:500 7pt/1.2 "Be Vietnam Pro",Arial,sans-serif;letter-spacing:.06em;color:#777166}
 }

/* V0.8 — identity belongs to the right rail, never over article */
.identityDock{margin-bottom:12px}.identityRailCard{border:1px solid var(--line);background:#f7efdf;padding:14px;border-radius:14px}.identityRailHead{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.identityRailHead span{font:700 9px "Be Vietnam Pro",sans-serif;letter-spacing:.12em;color:var(--red)}.identityRailHead small{font:600 7px "Be Vietnam Pro",sans-serif;letter-spacing:.1em;color:var(--muted)}.identityRailGrid{display:grid;grid-template-columns:1fr 70px;gap:8px 10px;align-items:start}.identityRailGrid>div{min-width:0}.identityRailGrid label,.identityRailMore label{display:block;font:600 7px "Be Vietnam Pro",sans-serif;color:var(--muted);letter-spacing:.08em;margin:0 0 3px}.identityRailGrid code,.identityRailMore code{font:600 8px/1.35 ui-monospace,SFMono-Regular,Consolas,monospace;overflow-wrap:anywhere}.identityRailGrid img{grid-column:2;grid-row:1/span 2;width:70px;height:70px;background:white;padding:4px;border:1px solid var(--line);border-radius:8px}.identityMore{width:100%;margin-top:10px;border:0;border-top:1px solid var(--line);padding:10px 0 0;background:transparent;text-align:left;font:700 7.5px "Be Vietnam Pro",sans-serif;letter-spacing:.06em;cursor:pointer}.identityRailMore{display:none;padding-top:10px}.identityRailCard.open .identityRailMore{display:block}.identityRailMore>div{display:flex;gap:5px;margin-top:8px}.identityRailMore .copyMini{font-size:7px;padding:5px 7px}.rmeta .identityToggle,.reader>.identityCard{display:none!important}

/* focus escape must remain clickable above every layer */
.focusExit{z-index:9999!important;pointer-events:auto!important;touch-action:manipulation}body.focusReading .focusExit{display:block!important}

/* in-page A4 studio */
.printOverlay{display:none;position:fixed;inset:0;z-index:5000;background:rgba(31,29,24,.72);backdrop-filter:blur(7px);padding:22px;overflow:auto}.printOverlay.open{display:block}.printStudio{max-width:1120px;margin:0 auto;background:#d9d7d2;border-radius:18px;overflow:hidden;box-shadow:0 30px 90px rgba(0,0,0,.35)}.printStudioBar{position:sticky;top:0;z-index:3;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:13px 18px;background:#f7f1e5;border-bottom:1px solid #cbbfa9;font:500 10px "Be Vietnam Pro",sans-serif}.printStudioBar b{letter-spacing:.12em}.printStudioBar span{color:var(--muted);margin-left:8px}.printStudioActions{display:flex;gap:8px}.printStudioActions button{border:1px solid #bcae97;background:#fffaf0;border-radius:999px;padding:9px 13px;font:700 9px "Be Vietnam Pro",sans-serif;cursor:pointer}.printStudioActions .printPdf{background:var(--red);border-color:var(--red);color:white}.a4Viewport{padding:26px;overflow:auto}.a4Sheet{box-sizing:border-box;width:210mm;min-height:297mm;margin:0 auto;background:#fffdf8;padding:15mm 17mm 17mm;color:#20201d;box-shadow:0 8px 30px rgba(0,0,0,.16);font-family:"Literata",Georgia,serif}.a4Brand{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1.2px solid #a92d1d;padding-bottom:8px;margin-bottom:16px}.a4Brand>div{display:flex;flex-direction:column}.a4Brand b{font:700 11px "Be Vietnam Pro",sans-serif;letter-spacing:.12em}.a4Brand span{font:600 7px "Be Vietnam Pro",sans-serif;letter-spacing:.08em;color:#777}.a4Brand img{width:18mm;height:18mm}.a4Meta{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:18px;font:600 8px "Be Vietnam Pro",sans-serif}.a4Meta>div{display:flex;gap:10px;align-items:baseline}.a4Meta strong{color:#a92d1d}.a4Meta span,.a4Meta small{color:#777}.a4Meta code{font-size:7.5px}.a4Sheet>h1{font-size:27pt;line-height:1.08;letter-spacing:-.035em;margin:0 0 8px}.a4Summary{font-size:11.5pt;line-height:1.5;color:#5e584f;margin:0 0 10mm}.a4Body p{font-size:11.2pt;line-height:1.62;margin:0 0 4.5mm}.a4Body h2{font-size:16.5pt;line-height:1.25;margin:8mm 0 3mm;break-after:avoid}.a4Body blockquote{border-left:1mm solid #a92d1d;margin:6mm 0;padding:2mm 0 2mm 4mm}.a4Refs{border-top:.35mm solid #333;margin-top:9mm;padding-top:4mm;break-inside:avoid}.a4Refs h3{font:700 8pt "Be Vietnam Pro",sans-serif;letter-spacing:.1em}.a4Refs li{font-size:8.5pt;line-height:1.5;margin:1.5mm 0}.a4Refs small{color:#777}.a4Foot{border-top:.2mm solid #d7d0c5;margin-top:9mm;padding-top:2.5mm;display:flex;justify-content:space-between;font:500 6.8pt "Be Vietnam Pro",sans-serif;color:#777}
@media(max-width:900px){.printOverlay{padding:8px}.printStudioBar{align-items:flex-start;flex-direction:column}.a4Viewport{padding:10px}.a4Sheet{transform-origin:top left}}
@media print{body.printStudioOpen>*:not(.printOverlay){display:none!important}body.printStudioOpen .printOverlay{display:block!important;position:static!important;padding:0!important;background:#fff!important;backdrop-filter:none!important;overflow:visible!important}body.printStudioOpen .printStudio{max-width:none!important;margin:0!important;background:#fff!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important}body.printStudioOpen .printStudioBar{display:none!important}body.printStudioOpen .a4Viewport{padding:0!important;overflow:visible!important}body.printStudioOpen .a4Sheet{width:auto!important;min-height:0!important;margin:0!important;padding:0!important;box-shadow:none!important;background:#fff!important}@page{size:A4;margin:15mm 17mm 17mm}}

/* V0.9 — focus isolation, richer provenance, calmer ending, print folios */
.zmetaList{margin:10px 0 0;display:grid;grid-template-columns:1fr 1fr;gap:8px 10px}.zmetaList div{min-width:0}.zmetaList dt{font:700 7px "Be Vietnam Pro",sans-serif;letter-spacing:.08em;color:#8b7e69}.zmetaList dd{margin:2px 0 0;font:600 9px "Be Vietnam Pro",sans-serif;color:#2b2924}.zmetaList.compact{margin:10px 0}
html.focusReading,body.focusReading{background:#f8f3e8}body.focusReading main{display:block}body.focusReading .siteHeader,body.focusReading .hero,body.focusReading .command,body.focusReading .indexPane,body.focusReading .contextRail,body.focusReading .publicationEnd,body.focusReading .newsletter,body.focusReading footer,body.focusReading .indexOverlay{display:none!important}body.focusReading .workspace{display:block!important;max-width:860px!important;margin:0 auto!important;border:0!important;border-radius:0!important;background:#fffaf0!important}body.focusReading .reader{display:block!important;min-height:100vh!important;padding:64px 76px 110px!important;border:0!important;background:#fffaf0!important}body.focusReading .readerTools [data-action="focus"]{display:none!important}body.focusReading .focusExit{display:block!important;opacity:1!important;visibility:visible!important}
.publicationEnd{margin:46px auto 22px;max-width:1320px;padding:42px;background:#eee4d2;border:1px solid #d5c6aa;border-radius:22px;display:grid;grid-template-columns:1.3fr .7fr;gap:30px}.endManifest h2{font:600 38px/1.12 "Literata",serif;margin:10px 0}.endManifest h2 em{font-style:normal;color:var(--red)}.endManifest p{max-width:700px;font:400 15px/1.65 "Be Vietnam Pro",sans-serif;color:var(--body)}.endActions{display:flex;align-items:flex-end;justify-content:flex-end;gap:8px}.endActions button,.endActions a{border:1px solid #bcae96;background:#fff9ed;color:#27251f;border-radius:999px;padding:11px 14px;text-decoration:none;font:700 9px "Be Vietnam Pro",sans-serif;cursor:pointer}.publicationEnd .quickBranches{grid-column:1/-1;border-top:1px solid #d0c1a7;padding-top:22px}.compactNewsletter{margin:22px auto 0;max-width:1320px;border-radius:22px;padding:30px 36px}.compactNewsletter h2{font-size:30px}.quietFooter{margin-top:22px;border-radius:18px 18px 0 0;min-height:auto!important;padding:22px 4vw!important;display:grid!important;grid-template-columns:auto 1fr auto auto!important;align-items:center!important;gap:26px!important}.quietFooter p{margin:0;font:500 11px "Be Vietnam Pro",sans-serif;color:#d9d1c2}.quietFooter .footerLinks{display:flex;gap:16px}.quietFooter .footerLinks a,.quietFooter .footerLinks button{font:600 8px "Be Vietnam Pro",sans-serif;color:#eee5d7;background:none;border:0;text-decoration:none;cursor:pointer}.quietFooter>small{font:500 7px "Be Vietnam Pro",sans-serif;color:#9d9588}
.a4Provenance{display:flex;gap:14px;flex-wrap:wrap;border-bottom:.2mm solid #ddd4c7;padding:0 0 3mm;margin:-2mm 0 6mm;font:500 6.8pt "Be Vietnam Pro",sans-serif;color:#756d62}.a4Provenance b{color:#333}
@media(max-width:780px){body.focusReading .reader{padding:34px 22px 90px!important}.publicationEnd{margin:28px 18px;padding:28px 22px;grid-template-columns:1fr}.endActions{justify-content:flex-start;flex-wrap:wrap}.quietFooter{grid-template-columns:1fr!important}.compactNewsletter{margin:18px;border-radius:18px}}
@media print{
 body.printStudioOpen .a4Foot{position:fixed;bottom:0;left:0;right:0;padding-top:2mm;background:#fff}
 body.printStudioOpen .pageCurrent:after{content:counter(page)}
 body.printStudioOpen .pageTotal:after{content:counter(pages)}
 body.printStudioOpen .a4Provenance{display:flex!important}
}

/* V1.0 — editorial closing: the code itself is the final value */
.publicationEnd,.compactNewsletter,.newsletter,.quietFooter{display:none!important}
.codeClosing{max-width:1320px;margin:52px auto 0;border-top:1px solid #cdbfa7;border-bottom:1px solid #cdbfa7;padding:52px 42px 38px;display:grid;grid-template-columns:.9fr 1.1fr;gap:54px;background:transparent}
.codeClosingLead h2{font:600 43px/1.1 "Literata",serif;letter-spacing:-.025em;margin:10px 0 18px}.codeClosingLead h2 em{font-style:normal;color:var(--red)}.codeClosingLead p{font:400 14px/1.7 "Be Vietnam Pro",sans-serif;color:#5d5549;max-width:560px}
.codeClosingLogic{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #bcae95;border-left:1px solid #bcae95}.codeClosingLogic>div{padding:22px 24px 24px;border-right:1px solid #bcae95;border-bottom:1px solid #bcae95;min-height:150px}.codeClosingLogic b{display:block;font:600 30px/1 "Literata",serif;color:var(--red);margin-bottom:17px}.codeClosingLogic span{display:block;font:700 8px/1.3 "Be Vietnam Pro",sans-serif;letter-spacing:.12em}.codeClosingLogic p{font:400 12px/1.55 "Be Vietnam Pro",sans-serif;color:#6c6254;margin:8px 0 0}
.codeClosingExample{grid-column:1/-1;display:grid;grid-template-columns:160px 1fr 1.1fr;gap:28px;align-items:center;padding-top:27px}.codeClosingExample span{font:700 8px "Be Vietnam Pro",sans-serif;letter-spacing:.13em;color:var(--red)}.codeClosingExample strong{font:600 19px "Literata",serif}.codeClosingExample p{font:400 12px/1.6 "Be Vietnam Pro",sans-serif;color:#6c6254;margin:0}
.publicationFooter{max-width:1320px;margin:0 auto;padding:17px 2px 28px;display:flex;justify-content:space-between;gap:24px;font:600 7px "Be Vietnam Pro",sans-serif;letter-spacing:.1em;color:#8d8271;text-transform:uppercase}
/* focus mode is a true isolated reading layer */
html.focusReading,html.focusReading body{overflow:auto!important;background:#f8f3e8!important}
body.focusReading > *:not(main):not(.focusExit){display:none!important}
body.focusReading main > *:not(.workspace){display:none!important}
body.focusReading .workspace > *:not(.reader){display:none!important}
body.focusReading .workspace{display:block!important;max-width:860px!important;margin:0 auto!important;background:#fffaf0!important;border:0!important}
body.focusReading .reader{display:block!important;min-height:100vh!important;padding:64px 76px 120px!important;background:#fffaf0!important}
body.focusReading .focusExit{display:block!important;position:fixed!important;right:28px!important;bottom:26px!important;z-index:2147483647!important;pointer-events:auto!important}
@media(max-width:780px){.codeClosing{margin:32px 18px 0;padding:34px 4px 26px;grid-template-columns:1fr;gap:30px}.codeClosingLead h2{font-size:34px}.codeClosingLogic{grid-template-columns:1fr}.codeClosingExample{grid-template-columns:1fr;gap:8px}.publicationFooter{margin:0 18px;flex-direction:column;gap:7px}body.focusReading .reader{padding:34px 22px 100px!important}}

/* V1.0.3 deterministic reader overlay */
.focusOverlay{display:none;position:fixed;inset:0;z-index:2147483000;background:rgba(31,30,25,.58);backdrop-filter:blur(8px);padding:28px;overflow:auto}
.focusOverlay.open{display:flex;align-items:flex-start;justify-content:center}
body.focusWindowOpen{overflow:hidden}
.focusReaderWindow{width:min(1040px,calc(100vw - 56px));min-height:calc(100vh - 56px);margin:auto;background:#fffaf0;border:1px solid var(--line);border-radius:22px;box-shadow:0 30px 90px rgba(24,22,17,.28);overflow:auto}
.focusArticle{max-width:820px;margin:0 auto;padding:42px 64px 90px}
.focusTop{position:sticky;top:0;z-index:4;display:flex;align-items:center;justify-content:space-between;gap:20px;margin:-42px -64px 34px;padding:18px 28px;background:rgba(255,250,240,.97);border-bottom:1px solid var(--line);backdrop-filter:blur(10px);border-radius:22px 22px 0 0}
.focusTop>div{display:flex;align-items:baseline;gap:12px}.focusEyebrow{font:700 9px/1 "Be Vietnam Pro",sans-serif;letter-spacing:.18em;color:var(--red)}.focusTop b{font:700 12px/1 "Be Vietnam Pro",sans-serif}
.focusWindowExit{appearance:none;border:1px solid #b8aa91;background:#24251f;color:#fff;border-radius:999px;padding:11px 16px;cursor:pointer;font:700 10px/1 "Be Vietnam Pro",sans-serif;letter-spacing:.06em}
.focusArticle .rtitle{font-size:clamp(44px,5.2vw,72px);line-height:.98}.focusArticle .body{font-size:19px;line-height:1.75}.focusRelations{margin-top:64px}
@media(max-width:780px){.focusOverlay{padding:0}.focusReaderWindow{width:100vw;min-height:100vh;border:0;border-radius:0}.focusArticle{padding:26px 22px 70px}.focusTop{margin:-26px -22px 28px;padding:14px 18px;border-radius:0}.focusEyebrow{display:none}.focusArticle .rtitle{font-size:42px}}

/* V1.0.5 — strategy cover: bad chess position -> chosen mountain trail */
.strategyCoverArt{position:absolute;inset:0;z-index:-2;pointer-events:none;overflow:hidden}
.strategyCoverArt svg{width:100%;height:100%;display:block}
.heroCover:after{background:linear-gradient(90deg,rgba(244,238,223,.95) 0%,rgba(244,238,223,.89) 35%,rgba(244,238,223,.69) 68%,rgba(244,238,223,.78) 100%)}

/* Focus reader: exit is anchored to viewport, never lost during long reading */
.focusWindowExit{
  position:fixed!important;
  top:42px!important;
  right:max(42px,calc((100vw - 1040px)/2 + 30px))!important;
  z-index:2147483647!important;
  box-shadow:0 6px 22px rgba(24,22,17,.18)!important;
}
.focusTop{padding-right:150px}
@media(max-width:780px){
  .focusWindowExit{top:14px!important;right:14px!important}
  .focusTop{padding-right:112px}
}

/* Zettelkasten operating core */
.zettelCore{position:relative;overflow:hidden}
.zettelCore:before{
  content:"";position:absolute;right:-40px;bottom:-70px;width:420px;height:240px;opacity:.055;pointer-events:none;
  background:
    linear-gradient(45deg,#24251f 25%,transparent 25%,transparent 75%,#24251f 75%),
    linear-gradient(45deg,#24251f 25%,transparent 25%,transparent 75%,#24251f 75%);
  background-size:48px 48px;background-position:0 0,24px 24px;transform:skewX(-8deg)
}
.codeClosingLogic div{position:relative;z-index:1}
.codeClosingLogic div b{font-variant-numeric:tabular-nums}
.codeClosingLogic p strong{font-family:"Be Vietnam Pro",sans-serif;font-size:.88em;letter-spacing:.02em}
.codeClosingExample strong{letter-spacing:-.015em}

/* Footer is now a compact statement of the knowledge-management loop */
.knowledgeFooter{
  position:relative;max-width:1320px;margin:26px auto 0;padding:30px 34px 24px;
  display:grid;grid-template-columns:1.2fr 1fr;gap:20px 42px;
  background:#24251f;color:#f5eddd;border-radius:20px 20px 0 0;text-transform:none;letter-spacing:0;
  overflow:hidden
}
.footerTrail{position:absolute;inset:0;pointer-events:none;opacity:.16}
.footerChess{position:absolute;left:0;bottom:-25px;font:150px/1 Georgia,serif}
.trailLine{position:absolute;left:125px;bottom:42px;width:64%;height:70px;border-top:2px solid #d65a3b;border-radius:50%;transform:rotate(-4deg)}
.trailPeak{position:absolute;right:55px;top:8px;font:110px/1 Georgia,serif;color:#d65a3b}
.footerThesis,.footerLoop,.footerMeta{position:relative;z-index:1}
.footerThesis{display:flex;flex-direction:column;gap:8px}
.footerThesis b{font:700 9px/1 "Be Vietnam Pro",sans-serif;letter-spacing:.16em;color:#d66a50}
.footerThesis strong{font:600 20px/1.28 Georgia,serif;max-width:470px}
.footerLoop{display:flex;align-items:center;justify-content:flex-end;gap:9px;flex-wrap:wrap;font:700 8px/1 "Be Vietnam Pro",sans-serif;letter-spacing:.12em}
.footerLoop i{font-style:normal;color:#d66a50}
.footerMeta{grid-column:1/-1;padding-top:16px;border-top:1px solid rgba(245,237,221,.18);display:flex;justify-content:space-between;gap:20px;font:600 7px/1 "Be Vietnam Pro",sans-serif;letter-spacing:.11em;color:#aaa18f;text-transform:uppercase}
@media(max-width:780px){
  .knowledgeFooter{margin:18px 0 0;border-radius:0;grid-template-columns:1fr;padding:28px 22px}
  .footerLoop{justify-content:flex-start}
  .footerMeta{grid-column:1;flex-direction:column;gap:7px}
}

/* V1.0.6 — alignment + radius cleanup */
:root{--panel-radius:20px;--control-radius:999px}
.workspace,.codeClosing,.indexSheet,.printStudio,.focusReaderWindow{border-radius:var(--panel-radius)}
.commandTab,.searchbar,.contextRail section,.identityDock,.hookCard,.codeClosingLogic,.codeClosingLogic>div{
  border-radius:14px;
}
.codeClosingLogic{overflow:hidden}
.codeClosingLogic>div{border-radius:0} /* internal grid cells remain flush inside one rounded shell */
.zettelCore:before{display:none!important} /* remove the exposed checkerboard block */
.publicationFooter.knowledgeFooter{display:none!important}

/* Light footer cover: mountain trail dissolving into white space */
.mountainFooter{
  position:relative;isolation:isolate;overflow:hidden;
  max-width:1320px;min-height:300px;margin:26px auto 0;
  padding:48px 54px 24px;
  display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);
  align-items:center;gap:42px 70px;
  background:linear-gradient(90deg,#f3ead9 0%,#faf5ea 54%,#fffaf0 100%);
  border:1px solid var(--line);border-radius:24px 24px 0 0;
}
.mountainArt{position:absolute;inset:0;z-index:-1;pointer-events:none}
.mountainArt svg{width:100%;height:100%;display:block}
.mountainFooterCopy{max-width:610px}
.mountainFooterCopy h2{margin:9px 0 12px;font:500 clamp(34px,3.2vw,52px)/.99 Georgia,serif;letter-spacing:-.035em}
.mountainFooterCopy h2 em{font-style:normal;color:var(--red)}
.mountainFooterCopy p{max-width:560px;margin:0;font-size:14px;line-height:1.7;color:var(--muted)}
.subscribeForm{
  width:100%;max-width:470px;justify-self:end;
  padding:24px;background:rgba(255,250,240,.78);border:1px solid rgba(190,171,139,.78);
  border-radius:18px;box-shadow:0 14px 36px rgba(54,45,31,.07);backdrop-filter:blur(8px)
}
.subscribeForm label{display:block;margin-bottom:10px;font:700 8px/1 "Be Vietnam Pro",sans-serif;letter-spacing:.16em;color:var(--red)}
.subscribeRow{display:flex;gap:8px}
.subscribeRow input{
  min-width:0;flex:1;height:48px;padding:0 16px;border:1px solid #cdbda3;border-radius:999px;
  background:#fffaf0;color:var(--ink);outline:none;font:500 13px "Be Vietnam Pro",sans-serif
}
.subscribeRow input:focus{border-color:var(--red);box-shadow:0 0 0 3px rgba(183,55,33,.08)}
.subscribeRow button{
  flex:0 0 auto;height:48px;padding:0 18px;border:0;border-radius:999px;background:var(--red);color:#fff;
  cursor:pointer;font:700 9px/1 "Be Vietnam Pro",sans-serif;letter-spacing:.06em
}
.subscribeRow button:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(183,55,33,.18)}
.subscribeNote{min-height:18px;margin:10px 4px 0!important;font:500 10px/1.5 "Be Vietnam Pro",sans-serif!important;color:#786d5e!important}
.subscribeNote.error{color:#a33122!important}.subscribeNote.ready{color:#465839!important}
.footerBase{
  grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;
  padding-top:18px;border-top:1px solid rgba(176,157,126,.48);
  font:650 7px/1 "Be Vietnam Pro",sans-serif;letter-spacing:.11em;color:#8c806f;text-transform:uppercase
}
@media(max-width:860px){
  .mountainFooter{margin:18px 0 0;padding:38px 24px 22px;grid-template-columns:1fr;border-radius:20px 20px 0 0;gap:28px}
  .subscribeForm{justify-self:start;max-width:100%}
}
@media(max-width:560px){
  .subscribeRow{flex-direction:column}
  .subscribeRow button{width:100%}
  .footerBase{flex-direction:column;gap:7px}
}

/* V1.0.7 — editorial home state */
.homeReader{padding:42px 54px 58px;min-height:100%;background:linear-gradient(180deg,#fffaf0 0%,#fffaf0 72%,#faf3e6 100%)}
.homeKicker,.homeLabel,.homeSectionHead span,.homeDynamicHead span{font:700 8px/1.2 "Be Vietnam Pro",sans-serif;letter-spacing:.17em;color:var(--red)}
.homeLead{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(230px,.65fr);gap:42px;padding-bottom:34px;border-bottom:1px solid var(--line)}
.homeLead h1{margin:10px 0 18px;font:500 clamp(44px,4.4vw,72px)/.94 Literata,Georgia,serif;letter-spacing:-.055em}
.homeLead h1 em{font-style:normal;color:var(--red)}
.homeDeck{max-width:720px;margin:0;font:400 17px/1.7 Literata,Georgia,serif;color:#5f5548}
.homePromise{align-self:end;padding:22px 0 3px 24px;border-left:2px solid var(--red)}
.homePromise span{font:700 8px/1 "Be Vietnam Pro",sans-serif;letter-spacing:.14em;color:var(--red)}
.homePromise strong{display:block;margin:10px 0 9px;font:600 21px/1.22 Literata,Georgia,serif}
.homePromise p{margin:0;font-size:12px;line-height:1.65;color:var(--muted)}
.homeStart{display:grid;grid-template-columns:1.3fr .7fr;gap:36px;margin:34px 0;padding:30px;border:1px solid var(--line);border-radius:18px;background:rgba(244,235,217,.46)}
.homeStartCopy h2{max-width:650px;margin:9px 0 10px;font:600 30px/1.12 Literata,Georgia,serif}
.homeStartCopy p{max-width:650px;margin:0 0 18px;font:400 14px/1.7 Literata,Georgia,serif;color:#62584a}
.homeProof{display:grid;grid-template-columns:repeat(3,1fr);align-content:start;border-left:1px solid var(--line);padding-left:28px}
.homeProof div{padding:4px 8px 18px}
.homeProof b{display:block;font:600 30px/1 Literata,Georgia,serif;color:var(--red)}
.homeProof span{font:700 7px/1 "Be Vietnam Pro",sans-serif;letter-spacing:.13em}
.homeProof p{grid-column:1/-1;margin:4px 8px 0;padding-top:16px;border-top:1px solid var(--line);font-size:11px;line-height:1.6;color:var(--muted)}
.homeSectionHead{display:grid;grid-template-columns:1.2fr .8fr;gap:28px;align-items:end;margin:42px 0 18px}
.homeSectionHead h2{margin:8px 0 0;font:600 27px/1.15 Literata,Georgia,serif}
.homeSectionHead p{margin:0;font-size:11px;line-height:1.65;color:var(--muted)}
.homeBranches{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:16px;overflow:hidden}
.homeBranch{min-height:132px;padding:19px;text-align:left;border:0;border-right:1px solid var(--line);background:transparent;cursor:pointer;color:var(--ink)}
.homeBranch:last-child{border-right:0}.homeBranch:hover{background:#f5ead7}
.homeBranch span{display:block;font:600 25px/1 Literata,Georgia,serif;color:var(--red)}
.homeBranch strong{display:block;margin:16px 0 8px;font:700 11px/1.25 "Be Vietnam Pro",sans-serif}
.homeBranch small{font:600 7px/1 "Be Vietnam Pro",sans-serif;letter-spacing:.12em;color:var(--muted)}
.homeDynamic{display:grid;grid-template-columns:.72fr 1.28fr;gap:32px;margin-top:38px;padding-top:28px;border-top:1px solid var(--line)}
.homeDynamicHead strong{display:block;max-width:290px;margin-top:10px;font:600 20px/1.3 Literata,Georgia,serif}
.homeLatest{border-top:1px solid #9e907b}
.homeLatestRow{width:100%;display:grid;grid-template-columns:34px 72px 1fr auto;gap:12px;align-items:center;padding:15px 4px;border:0;border-bottom:1px solid var(--line);background:transparent;text-align:left;cursor:pointer;color:var(--ink)}
.homeLatestRow:hover strong{color:var(--red)}.homeLatestRow span{font:500 12px Literata,serif;color:#aa9c87}.homeLatestRow b{font:700 8px "Be Vietnam Pro",sans-serif;color:var(--red)}.homeLatestRow strong{font:600 13px/1.35 Literata,serif}.homeLatestRow small{font:650 7px "Be Vietnam Pro",sans-serif;letter-spacing:.09em;color:var(--muted)}
.homeOgilvy{margin:42px 0 0;padding:25px 0 0;border-top:1px solid var(--line);font:italic 15px/1.7 Literata,Georgia,serif;color:#776b5b}
.homeRailCard{padding:18px 16px;border:1px solid var(--line);border-radius:14px;background:rgba(255,250,240,.64)}
.homeRailCard span{font:700 8px/1 "Be Vietnam Pro",sans-serif;letter-spacing:.14em;color:var(--red)}
.homeRailCard strong{display:block;margin:10px 0 7px;font:600 16px/1.3 Literata,Georgia,serif}.homeRailCard p{margin:0;font-size:11px;line-height:1.6;color:var(--muted)}
@media(max-width:1100px){.homeBranches{grid-template-columns:repeat(2,1fr)}.homeBranch:nth-child(2){border-right:0}.homeBranch:nth-child(-n+2){border-bottom:1px solid var(--line)}}
@media(max-width:850px){.homeReader{padding:30px 24px 44px}.homeLead,.homeStart,.homeSectionHead,.homeDynamic{grid-template-columns:1fr}.homePromise{padding-left:18px}.homeProof{border-left:0;border-top:1px solid var(--line);padding:22px 0 0}.homeLead h1{font-size:46px}}
@media(max-width:560px){.homeBranches{grid-template-columns:1fr}.homeBranch{border-right:0!important;border-bottom:1px solid var(--line)!important}.homeBranch:last-child{border-bottom:0!important}.homeLatestRow{grid-template-columns:30px 60px 1fr}.homeLatestRow small{display:none}.homeStart{padding:22px}.homeProof{grid-template-columns:repeat(3,1fr)}}
