/* Engineering notebook — shared visual system, preserving existing interactions. */
:root{--bg:#fafafa;--text:#26272c;--muted:#65666e;--line:#dedee5;--accent:#3c56e8;--surface:#eeeeF2;--selection:#dce2ff;--font-heading:var(--font-body)}
:root[data-theme=dark]{--bg:#16171c;--text:#e8e9ef;--muted:#a8abb8;--line:#353745;--accent:#9aabff;--surface:#22242d;--selection:#343e65}
body{font-size:17px;line-height:1.8}.shell{max-width:1600px;padding:0 40px}.header{padding:25px 0;border-bottom:0;position:relative}.header:after,.chapter:before,.site-footer:before{content:"";display:block;height:7px;background-image:radial-gradient(var(--line) .8px,transparent .9px);background-size:4px 3px;position:absolute;bottom:0;left:0;right:0}.brand{font-family:Consolas,monospace;font-size:29px;font-weight:600;letter-spacing:-1.3px;color:var(--accent)}#navigation{gap:25px}.intro{padding:64px 0}.intro-grid{grid-template-columns:200px minmax(0,1fr);gap:48px;align-items:center}.identity-mark{display:grid;width:154px;height:154px;place-items:center;font:48px Consolas,monospace;color:var(--accent);background:radial-gradient(var(--accent) .65px,transparent .8px) 0 0/5px 5px;background-color:var(--surface);letter-spacing:-5px}.intro h1{font-family:var(--font-body);font-size:24px;line-height:1.5;margin:18px 0 4px;letter-spacing:0}.name-period{display:none}.role{font-size:14px;margin:0}.intro-reading{padding:0}.intro-reading p,.intro-reading p+p{font-size:clamp(20px,1.8vw,27px);color:var(--text);line-height:1.85;max-width:1050px;margin:0 0 15px}.intro-reading .text-link{margin-top:18px;font-size:14px}.chapter{position:relative;border:0;padding:64px 0;display:grid;grid-template-columns:200px minmax(0,1fr);gap:48px}.chapter:before{top:0;bottom:auto}.section-heading{display:block;margin:0}.section-heading h2{font-size:24px;font-weight:400;line-height:1.6}.section-heading p{font-size:14px;margin-top:18px;max-width:170px;line-height:1.8}.focus-section{grid-template-columns:200px minmax(260px,1fr) minmax(300px,1.15fr)}.focus-row{display:block;border:0;padding:0 0 30px}.focus-row h3{font-size:19px;font-weight:400;margin:0 0 10px}.focus-row p{font-size:16px;line-height:1.9;max-width:460px}.test-diagram{color:var(--accent);margin:0;align-self:center}.test-diagram svg{display:block;width:100%;height:auto;transition:transform .4s}.test-diagram:hover svg{transform:translateY(-5px)}.test-diagram figcaption{text-align:center;font-size:13px;color:var(--muted);margin-top:16px}.record-row{border:0;padding:0 0 30px;grid-template-columns:100px 1fr 20px}.record-row h3{font-size:19px;font-weight:400}.record-row span{font-size:16px}.site-footer{position:relative;border:0;padding-top:45px}.site-footer:before{top:0;bottom:auto}.page{padding:56px 0 80px}.page-heading{margin-left:248px;margin-bottom:48px}h1{font-family:var(--font-body);font-size:46px;font-weight:400;letter-spacing:-.03em}.about-layout{grid-template-columns:minmax(0,850px) 220px;margin-left:248px;gap:64px}.about-text p{font-size:19px;line-height:2}.about-section{display:grid;grid-template-columns:200px 1fr;gap:48px;margin-top:64px}.about-section>h2{font-size:24px;font-weight:400}.career article{border:0;padding:0 0 28px}.tools{align-content:start}.shelf-heading{margin-bottom:24px}.shelf-heading h1{font-size:46px}.shelf-button,.search-label input,.filter-label select{background:var(--surface);border-color:transparent}.shelf-notice{border:0}.book-cover{box-shadow:none}.book-card{min-width:0}.footer-bottom{font-size:13px}.text-link{color:var(--accent)}
@media(min-width:1000px){.shelf-page{padding-left:248px;position:relative}.shelf-layout{grid-template-columns:190px minmax(0,1fr);margin-left:-248px;gap:58px}.shelf-tools{margin-bottom:30px}.books-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:1100px){.focus-section{grid-template-columns:170px 1fr;gap:36px}.test-diagram{grid-column:2;max-width:520px}.intro-grid,.chapter{grid-template-columns:170px minmax(0,1fr);gap:36px}.about-layout,.page-heading{margin-left:206px}.about-layout{grid-template-columns:1fr}.about-aside{display:none}.about-section{grid-template-columns:170px 1fr;gap:36px}}
@media(max-width:700px){.shell{padding:0 22px}.header{padding:20px 0}.brand{font-size:25px}.intro{padding:38px 0 42px}.intro-grid{display:block}.identity{display:grid;grid-template-columns:76px 1fr;column-gap:20px;align-items:center;margin-bottom:30px}.identity-mark{width:76px;height:76px;font-size:30px;grid-row:span 2;letter-spacing:-3px}.intro h1{font-size:23px;margin:0;align-self:end}.role{align-self:start;font-size:13px}.intro-reading p,.intro-reading p+p{font-size:20px;line-height:1.9}.chapter{display:block;padding:38px 0}.section-heading{margin-bottom:28px}.section-heading p{max-width:none;margin-top:8px}.focus-row{padding-bottom:25px}.focus-row h3{font-size:18px}.focus-row p{font-size:16px}.test-diagram{max-width:450px;margin:10px auto 0}.record-row{grid-template-columns:65px 1fr 18px;gap:16px;padding-bottom:24px}.record-row span{font-size:15px}.about-layout,.page-heading{margin-left:0}.about-section{display:block}.about-section h2{margin-bottom:25px}.about-text p{font-size:17px}.page{padding-top:38px}.shelf-heading h1{font-size:27px}.shelf-heading{gap:10px}.shelf-button{font-size:13px}.page-heading h1{font-size:36px}.career article{display:block}.career h3{margin-bottom:10px}.career p{font-size:16px}.site-footer{margin-top:20px}.test-diagram svg{max-height:330px}}
@media(prefers-reduced-motion:reduce){.test-diagram svg{transition:none;transform:none!important}}
.book-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:40px 30px}.book-card{position:relative;padding-left:116px;min-height:190px}.book-card .book-cover{position:absolute;left:0;top:0;width:94px;height:132px;aspect-ratio:auto}.book-title{font-size:19px;font-weight:400;margin:0 0 12px}.book-card .cover-placeholder{padding:10px 8px}.book-card .cover-title{font-size:13px;line-height:1.6}.book-card .cover-author{font-size:10px}.book-card .book-meta{margin:8px 0}.book-card .book-tags{gap:5px}.shelf-heading h1{font-family:var(--font-body)}
@media(max-width:1100px){.book-grid{grid-template-columns:1fr}}
@media(max-width:700px){.book-grid{gap:32px}.book-card{padding-left:110px;min-height:180px}.book-title{font-size:18px}.book-card .book-cover{width:90px;height:128px}}
