/* Cream field manual. Loaded last; the pixel renderer remains unchanged. */
:root {
  --book-paper:#fff9ef; --book-surface:#fffcf6; --book-tint:#f5ead9;
  --book-ink:#42362e; --book-muted:#776857; --book-line:#e4d7c4;
  --book-accent:#a74f33; --book-accent-soft:#f6e5d7; --book-green:#526b51;
  --manual-paper:var(--book-paper); --manual-paper-2:var(--book-surface);
  --manual-tint:var(--book-tint); --manual-tint-2:var(--book-line);
  --manual-ink:var(--book-ink); --manual-ink-2:#5b4b3f; --manual-ink-3:var(--book-muted);
  --manual-red:var(--book-accent); --manual-red-dk:var(--book-accent); --manual-moss:var(--book-green);
  --phone-bg:var(--book-paper); --phone-surface:var(--book-surface); --phone-soft:var(--book-tint);
  --phone-ink:var(--book-ink); --phone-muted:var(--book-muted); --phone-line:var(--book-line);
  --phone-accent:var(--book-accent); --phone-accent-soft:var(--book-accent-soft);
  --phone-success-ink:var(--book-green); --phone-info:var(--book-tint);
  --manual-serif-cn:"Songti SC","STSong","SimSun",serif;
  --manual-serif-la:Georgia,"Times New Roman",serif;
}
html[data-phone-theme="dark"] {
  color-scheme:dark; --book-paper:#24251f; --book-surface:#2c2d25; --book-tint:#34352b;
  --book-ink:#eee7d8; --book-muted:#c0b6a1; --book-line:#494a3b;
  --book-accent:#efa987; --book-accent-soft:#47392d; --book-green:#b5c5a1;
  --manual-ink-2:#d3c9b6; --manual-indigo:#b9c8e6; --manual-indigo-dk:#c5d2ec;
}
html[data-phone-theme] {
  --phone-bg:var(--book-paper);--phone-surface:var(--book-surface);--phone-soft:var(--book-tint);
  --phone-muted:var(--book-muted);--phone-line:var(--book-line);--phone-accent:var(--book-accent);
  --phone-accent-soft:var(--book-accent-soft);--phone-info:var(--book-tint);--phone-success-ink:var(--book-green);
  --manual-paper:var(--book-paper);--manual-paper-2:var(--book-surface);--manual-tint:var(--book-tint);
  --manual-ink:var(--book-ink);--manual-ink-3:var(--book-muted);--manual-red:var(--book-accent);--manual-red-dk:var(--book-accent);
  --manual-moss-dk:var(--book-green);--manual-serif-cn:"Songti SC","STSong","SimSun",serif;--manual-serif-la:Georgia,"Times New Roman",serif;
}
body {background:var(--book-paper);color:var(--book-ink);}
html {scroll-padding-top:calc(var(--portfolio-header-height,76px) + 24px);}
::selection {background:var(--book-accent-soft);color:var(--book-ink);}
:focus-visible {outline:3px solid var(--book-accent);outline-offset:4px;}
html[data-theme] .site-header {
  background:var(--book-paper);border:0;border-bottom:1px solid var(--book-line);
  box-shadow:0 4px 22px #54392306;backdrop-filter:none;
}
.site-header .nav-shell,.portfolio-home .nav-shell {max-width:1280px;margin:auto;padding:15px 32px;gap:18px;min-height:76px;}
.site-header .nav-shell {flex-wrap:nowrap;}
.site-header .site-nav {width:auto;flex:1;order:0;justify-content:flex-end;gap:20px;border:0;margin:0;padding:0;overflow:visible;}
.site-header .nav-shell>.home-btn {display:none;}
.site-header .brand {gap:12px;}
.site-header .brand strong {color:var(--book-ink);font-size:19px;font-weight:650;}
.site-header .brand small {color:var(--book-accent);font-size:10px;letter-spacing:.1em;margin-top:3px;}
.site-header .brand canvas {width:27px;height:27px;}
.portfolio-home .home-nav {gap:26px;}
.portfolio-home .home-nav a,html[data-theme] .site-header .site-nav a {font-size:14px;font-weight:500;color:var(--book-muted);transition:color .18s;}
.portfolio-home .home-nav a:hover,.portfolio-home .home-nav a[aria-current],html[data-theme] .site-header .site-nav a:hover {color:var(--book-accent);}
.site-header .nav-tools,.portfolio-home .nav-tools {gap:11px;margin-left:10px;}
.site-header .clock {color:var(--book-muted);font-size:12px;font-weight:500;}
.site-header .time-live {border:1px solid var(--book-line);border-radius:6px;background:var(--book-tint);color:var(--book-green);box-shadow:none;padding:7px 9px;font-size:12px;}
.site-header .time-dial {width:36px;height:36px;box-shadow:none;border-width:1px;}
.site-header .nav-github {width:29px;}
.site-header .nav-github canvas {width:27px;height:27px;}
.site-header .phone-theme-shortcut {display:grid;place-items:center;border:0;background:transparent;color:var(--book-muted);width:32px;height:36px;padding:6px;border-radius:6px;}
.site-header .phone-theme-shortcut svg {width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.5;}
.site-header .phone-theme-shortcut:hover {background:var(--book-tint);}
.book-progress {position:absolute;bottom:-1px;left:0;width:100%;height:2px;transform:scaleX(0);transform-origin:left;background:var(--book-accent);pointer-events:none;}
.book-ask {border:0;background:none;color:var(--book-accent);padding:8px 0;font:500 13px var(--sans);}
.home-btn {color:var(--book-muted);border:1px solid var(--book-line);box-shadow:none;border-radius:5px;background:var(--book-surface);}
.home-btn:hover {box-shadow:none;transform:none;background:var(--book-accent-soft);color:var(--book-accent);}

/* The original canvas keeps the entire hero background, with a quiet reading veil. */
.portfolio-home .home-hero {min-height:565px;padding:66px 40px 70px;display:flex;align-items:center;}
.home-hero-shell {width:100%;max-width:1160px;display:block;}
.portfolio-home .hero-content {max-width:640px;}
.hero-feature {display:none;}
.portfolio-home .hero .eyebrow {display:inline-flex;max-width:100%;color:#daf0d9;background:#15342e80;border:1px solid #a4c4ab50;border-radius:5px;padding:7px 10px;font:500 11px/1.5 var(--mono);margin-bottom:22px;box-shadow:none;}
.portfolio-home .hero-greeting {font-size:16px;color:#e4ebe5;margin-bottom:13px;gap:6px;}
.portfolio-home .hero-greeting strong {color:#f4dfac;font-weight:600;}
.portfolio-home .hero-greeting>span {font-size:10px;color:#c1d2cd;}
.portfolio-home .hero h1 {font:500 clamp(38px,4vw,58px)/1.3 var(--manual-serif-cn);letter-spacing:-.045em;text-shadow:0 3px 12px #0b19174d;}
.portfolio-home .hero h1 .highlight {color:#f3d59d;}
.portfolio-home .hero-role {color:#d8dac3;font:500 13px/1.6 var(--sans);margin-top:20px;letter-spacing:.03em;}
.portfolio-home .hero-lead {font-size:15px;line-height:1.85;max-width:565px;margin-top:16px;color:#e0e8e3;}
.portfolio-home .hero-actions {gap:12px;margin-top:24px;}
.portfolio-home .hero-actions .button,.detail-hero .button {min-height:45px;padding:11px 18px;font-size:14px;border-radius:6px;border-width:1px;box-shadow:none;font-weight:600;}
.portfolio-home .hero-actions .button--gold,.detail-hero .button--gold {background:#f4dfb4;border-color:#f4dfb4;color:#413522;}
.portfolio-home .hero-actions .button--outline,.detail-hero .button--outline {background:#1a30394d;border-color:#d9e3dc99;color:#eef3e8;}
.portfolio-home .hero-proof {font:12px/1.6 var(--sans);color:#d8e2dc;margin-top:23px;gap:18px;}
.portfolio-home .hero-proof b {font:500 17px var(--mono);color:#f3d59d;}
.portfolio-home .scroll-cue {margin-top:20px;}
.portfolio-home .scroll-cue>span {color:#c9d8ce;font-size:10px;letter-spacing:.07em;}
.portfolio-home .hero-bottom {left:40px;right:40px;font-size:9px;opacity:.7;}
.button,.cta,.go,.phone-dock__icon {transition:background .2s,color .2s,transform .2s;}
button:active,.button:active,.cta:active {transform:translateY(1px);}

/* Selected work is an index of compact, useful project summaries. */
.portfolio-home {--home-paper:var(--book-paper);--home-card:var(--book-surface);--home-rule:var(--book-line);--home-soft:var(--book-tint);--home-muted:var(--book-muted);}
.portfolio-home #projects {padding:62px 40px 40px;background:var(--book-paper);}
.projects-shell {max-width:1160px;}
.project-section-head {align-items:start;gap:32px;margin-bottom:27px;}
.project-kicker {font-size:11px;letter-spacing:.08em;margin-bottom:10px;color:var(--book-accent);}
.project-kicker>span {background:var(--book-accent-soft);color:var(--book-accent);border-radius:4px;padding:3px 6px;}
.project-section-head h2 {font:500 clamp(27px,3vw,38px)/1.4 var(--manual-serif-cn);color:var(--book-ink);}
.project-section-head h2 em {color:var(--book-accent);}
.project-section-intro {flex-basis:345px;font-size:14px;line-height:1.85;margin:7px 0 0;color:var(--book-muted);}
.portfolio-home #projects .prints {grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.portfolio-home #projects .print {border:1px solid var(--book-line);border-radius:9px;background:var(--book-surface);box-shadow:none;transition:transform .25s,border-color .25s,box-shadow .25s;}
.portfolio-home #projects .print:hover {transform:translateY(-5px);border-color:var(--book-accent);box-shadow:0 12px 32px #6b4d2210;}
.project-card-meta {min-height:41px;padding:10px 16px;border-bottom:0;}
.portfolio-home #projects .print .tab {font:500 10px/1.5 var(--mono);color:var(--book-muted);}
.project-status {font-size:11px;color:var(--book-green);font-weight:500;}
.project-twin .project-status {color:var(--book-accent);}
.portfolio-home #projects .print .plate {aspect-ratio:2.1;margin:0 12px;width:calc(100% - 24px);border:0;border-radius:5px;background:var(--book-tint);overflow:hidden;}
.portfolio-home #projects .print .plate img {object-fit:cover;mix-blend-mode:multiply;filter:sepia(.35) contrast(.9);opacity:.88;}
html[data-phone-theme="dark"] .portfolio-home #projects .print .plate img {mix-blend-mode:normal;filter:sepia(.2);opacity:.8;}
.portfolio-home #projects .print .pad {padding:18px 19px 16px;}
.portfolio-home #projects .print h3 {font:600 26px/1.3 var(--manual-serif-la);letter-spacing:-.03em;color:var(--book-ink);}
.portfolio-home #projects .print h3 small {font:500 13px/1.5 var(--sans);min-height:0;margin-top:6px;color:var(--book-accent);}
.portfolio-home #projects .print .sum {font-size:14px;line-height:1.75;min-height:74px;margin-top:13px;color:var(--book-muted);}
.project-ownership {min-height:0;font-size:12px;line-height:1.7;gap:5px;margin-top:10px;color:var(--book-muted);}
.project-ownership b {font-size:11px;color:var(--book-accent);font-weight:600;}
.project-tags {margin:12px 0 16px;gap:6px;}
.project-tags li {font-size:11px;border:0;background:var(--book-tint);color:var(--book-muted);border-radius:4px;padding:3px 6px;}
.portfolio-home #projects .print .acts {border-top:1px solid var(--book-line);padding-top:12px;gap:8px;}
.project-delivery {font-size:11px;color:var(--book-muted);}
.portfolio-home #projects .print .acts .go {font:500 13px/1.5 var(--sans);color:var(--book-accent);min-height:36px;background:none;border:0;box-shadow:none;}
.project-section-foot {margin-top:24px;border-color:var(--book-line);color:var(--book-muted);font-size:12px;}

/* The manual has one quiet margin, with no punched holes or oversized chapter numbers. */
.paper-world,.page {background:var(--book-paper);color:var(--book-ink);}
.paper-world .page {padding:0 40px;border-top:0;}
.slab {max-width:1160px;margin:0 auto;border:0;}
.marginalia {width:160px;min-width:160px;padding:26px 22px 30px 0;border-color:var(--book-line);background:transparent;}
.holes,.grain,.ch-no .dot {display:none;}
.marginalia .holes {display:none;}
.marginalia .mnav {top:100px;}
.marginalia .mlist {padding-left:0;}
.marginalia .mlist a {padding:10px 0 10px 13px;color:var(--book-muted);}
.marginalia .mlist a::before {width:2px;background:var(--book-line);border-radius:1px;}
.marginalia .mlist a.on::before {background:var(--book-accent);}
.marginalia .mlist a b {font-size:12px;color:var(--book-ink);}
.marginalia .mlist a span {font-size:11px;color:var(--book-muted);}
.marginalia .mnav {margin-left:0;}
.marginalia .mnav::before,.marginalia .mnav::after {display:none;}
.marginalia .mlist a,.marginalia .mlist a:hover,.marginalia .mlist a.on {border:0;box-shadow:none;transform:none;background:transparent;border-radius:0;}
.marginalia .mlist a.on {background:var(--book-accent-soft);border-radius:0 5px 5px 0;}
.marginalia .mlist li a::before {width:2px;background:var(--book-line);}
.marginalia .mlist li a.on::before {background:var(--book-accent);width:2px;}
.marginalia .mlist a.on b {color:var(--book-accent);}
.marginalia .mlist a.on span {color:var(--book-muted);}
.marginalia .mtag {margin-left:0;}
.mtag {font-size:10px;line-height:1.9;border-color:var(--book-line);color:var(--book-muted);}
.body-col {padding:0 0 0 42px;min-width:0;}
.chapter {border-color:var(--book-line);padding:42px 0;}
.chapter .ch-head {display:grid;grid-template-columns:40px minmax(0,1fr);align-items:start;gap:14px;margin-bottom:24px;}
.chapter .ch-no {align-self:start;margin:2px 0 0;overflow:visible;}
.chapter .ch-no .big {display:grid;place-items:center;width:32px;height:32px;margin:0;padding:0;background:var(--book-accent-soft);color:var(--book-accent);font:500 13px/1 var(--mono);letter-spacing:0;filter:none;clip-path:none;overflow:visible;border:0;border-radius:5px;}
.chapter .ch-title h2 {font:500 31px/1.5 var(--manual-serif-cn);letter-spacing:-.025em;margin:0;color:var(--book-ink);}
.chapter .ch-title h2 em {color:var(--book-accent);}
.chapter .ch-title .lede {font-size:15px;line-height:1.9;color:var(--book-muted);margin-top:12px;}
.chapter .ch-side {grid-column:2;display:block;border:0;margin:0;padding:0;color:var(--book-muted);}
.chapter .ch-side p {font-size:13px;line-height:1.8;margin:0;}
.chapter .ch-side b {font-size:10px;color:var(--book-accent);margin-top:7px;}
.log {display:flex;flex-direction:column;overflow:hidden;border:1px solid var(--book-line);border-radius:8px;box-shadow:none;background:var(--book-surface);}
.log-bar {background:var(--book-tint);color:var(--book-muted);border-color:var(--book-line);padding:12px 16px;font-size:11px;}
.log-tag {background:var(--book-accent);color:var(--book-surface);font-size:11px;padding:6px 10px;}
.log .log-bar {order:0;}
#open-source .log-scroll {order:1;height:300px;max-height:300px;overflow-y:auto;mask-image:none;-webkit-mask-image:none;scrollbar-width:thin;scrollbar-color:var(--book-line) transparent;}
.log .log-tag,.log .log-tag:hover {position:static;order:2;display:flex;justify-content:center;align-items:center;min-height:42px;height:auto;bottom:auto;border:0;border-top:1px solid var(--book-line);padding:10px;background:transparent;color:var(--book-accent);box-shadow:none;animation:none;transform:none;font:500 13px/1.6 var(--sans);}
.log .log-tag:hover {background:var(--book-tint);}
.log-row {background:var(--book-surface);border-color:var(--book-line);padding:17px 16px;}
.log-row:hover {background:var(--book-tint);}
.log-m strong {font:600 16px/1.7 var(--sans);color:var(--book-ink);}
.log-m small {font:500 10px/1.6 var(--mono);color:var(--book-accent);}
.log-m p {font-size:13px;color:var(--book-muted);line-height:1.8;}
.log-r b {font-size:12px;color:var(--book-accent);}
.stamp {color:var(--book-green);border-color:var(--book-line);background:var(--book-tint);box-shadow:none;font-size:10px;transform:none;}
.cooperation {border:0;border-top:1px solid var(--book-line);margin-top:25px;padding:20px 0 0;background:transparent;box-shadow:none;}
.cooperation h3,.panel-t {font:500 19px/1.5 var(--manual-serif-cn);color:var(--book-ink);}
.cooperation p,.cooperation-grid p {font-size:14px;line-height:1.8;color:var(--book-muted);}
.cooperation-grid article {border-color:var(--book-line);}
.cooperation-grid h4 {font-size:15px;color:var(--book-ink);}
.cooperation a {font-size:13px;color:var(--book-accent);}
.kv {border-color:var(--book-line);padding:14px 0;grid-template-columns:110px minmax(0,1fr);gap:18px;}
.kv b {font:500 12px/1.8 var(--sans);color:var(--book-accent);}
.kv span {font-size:15px;line-height:1.9;color:var(--book-muted);}
.method-checks {border:0;gap:10px;margin-top:22px;}
.method-checks>div,.method-checks>strong {background:var(--book-tint);color:var(--book-ink);border:0;border-radius:6px;padding:15px;}
.method-checks span {color:var(--book-muted);font-size:13px;}
.tl {border-color:var(--book-line);}
.tl time {font-size:12px;color:var(--book-accent);}
.tl h5 {font:600 17px/1.7 var(--sans);color:var(--book-ink);}
.tl p,.event-copy,.note-inline {font-size:15px;line-height:1.85;color:var(--book-muted);}
.event-copy a {color:var(--book-accent);}
.note-inline {background:var(--book-tint);border-color:var(--book-accent);border-radius:0 6px 6px 0;}
.finale {background:none;}
.finale .lead {font:400 16px/1.9 var(--sans);color:var(--book-muted);}
.cta-row {gap:10px;}
.cta-row .cta {border-radius:6px;box-shadow:none;padding:13px 18px;border:1px solid var(--book-accent);font:500 14px/1.6 var(--sans);}
.cta-row .cta.p {background:var(--book-accent);color:var(--book-paper);}
.cta-row .cta.s {background:transparent;color:var(--book-accent);}
.contact-table {background:var(--book-surface);border:1px solid var(--book-line);box-shadow:none;border-radius:8px;overflow:hidden;}
.contact-table .ct {background:var(--book-tint);color:var(--book-muted);border-color:var(--book-line);font-size:11px;}
.contact-table .cr {border-color:var(--book-line);padding:16px 18px;grid-template-columns:90px minmax(0,1fr);}
.contact-table dt {font:500 11px/1.8 var(--mono);color:var(--book-muted);}
.contact-table dd {font:500 15px/1.8 var(--sans);color:var(--book-ink);min-width:0;overflow-wrap:anywhere;}
.contact-table dd small {font:400 12px/1.8 var(--sans);color:var(--book-muted);}
.contact-table a {text-decoration-color:var(--book-accent);text-underline-offset:4px;}
.colophon,.site-footer {background:var(--book-tint);color:var(--book-ink);border-top:1px solid var(--book-line);}
.colophon {margin-top:12px;padding:36px 0;}
.colophon-in {max-width:1240px;padding:0 40px;}
.colophon b,.site-footer strong {font:600 20px/1.5 var(--manual-serif-cn);color:var(--book-ink);}
.colophon p,.site-footer p {font-size:14px;color:var(--book-muted);line-height:1.8;}
.colophon nav a,.site-footer nav a {font:500 13px/1.7 var(--sans);color:var(--book-muted);letter-spacing:0;}
.colophon .end,.footer-end {border-color:var(--book-line);font-size:11px;color:var(--book-muted);}
.site-footer .footer-inner {max-width:1240px;}
.site-footer .fband {display:none;}

/* Detail pages share paper, typography and chrome, keeping all project evidence. */
.detail-hero {padding:64px 40px;min-height:480px;gap:36px;}
.detail-hero .detail-hero-copy {max-width:640px;}
.detail-hero h1 {font:500 clamp(38px,4.2vw,62px)/1.3 var(--manual-serif-cn);color:#f2f2e8;}
.detail-hero h1 span {color:#f3d59d;}
.detail-hero .hero-lead {font-size:16px;line-height:1.9;color:#e6e9e1;}
.detail-hero-art {border:1px solid #e9e4ce80;border-radius:8px;box-shadow:0 15px 40px #051d1820;transform:none;}
.paper-world.detail-paper .body-col.detail-content {padding:10px 0 40px 42px;}
.detail-content,.detail-panel,.detail-flow>div {background:var(--book-surface);color:var(--book-ink);}
html[data-theme] .detail-content {background:var(--book-paper);}
.detail-section {border-color:var(--book-line);}
.detail-section h2 {font:500 30px/1.5 var(--manual-serif-cn);color:var(--book-ink);}
.detail-section h2 span {color:var(--book-accent);}
.detail-section p,.detail-section li {color:var(--book-muted);line-height:1.85;}
.detail-section .section-kicker {font-size:11px;color:var(--book-accent);}
.detail-panel {border:1px solid var(--book-line);border-radius:8px;box-shadow:none;padding:23px;}
.detail-panel--accent,.detail-note,.detail-stat,.detail-next {background:var(--book-tint);border-color:var(--book-line);color:var(--book-ink);box-shadow:none;border-radius:6px;}
.detail-panel h3 {font:600 18px/1.6 var(--sans);color:var(--book-ink);}
.detail-panel p,.detail-panel ul {font-size:15px;}
.detail-flow>div {border:1px solid var(--book-line);box-shadow:none;border-radius:6px;}
.detail-flow b,.detail-flow strong,.detail-stat strong {color:var(--book-accent);}
.detail-note {border-left:3px solid var(--book-accent);font-size:14px;line-height:1.9;padding:18px;}
.detail-table {background:var(--book-surface);color:var(--book-ink);border-color:var(--book-line);}
.detail-table th {background:var(--book-tint);color:var(--book-muted);}
.detail-table td {border-color:var(--book-line);}
.detail-next strong {font-family:var(--sans);font-size:18px;color:var(--book-ink);}
.detail-next b {color:var(--book-accent);}
.oss-pagination button {border:1px solid var(--book-line);border-radius:5px;background:var(--book-surface);color:var(--book-ink);}
.oss-pagination button[aria-current="page"] {background:var(--book-accent);border-color:var(--book-accent);color:var(--book-paper);}
.project-invite {border-color:var(--book-line);color:var(--book-muted);}
.project-invite code {color:var(--book-accent);}
.portfolio-ai-entry {border:1px solid var(--book-line);border-radius:11px;background:var(--book-surface);color:var(--book-accent);box-shadow:0 7px 25px #50391e12;}
.portfolio-ai-entry__icon {color:var(--book-accent);background:var(--book-accent-soft);border-radius:7px;}
.portfolio-ai-dialog {width:460px;border:1px solid var(--book-line);border-radius:14px;background:var(--book-paper);box-shadow:0 20px 90px #1b241f38;}
.portfolio-ai-dialog::backdrop {background:#18292142;backdrop-filter:blur(3px);}
.portfolio-ai-frame-toolbar,html[data-phone-theme="dark"] .portfolio-ai-frame-toolbar {min-height:40px;background:var(--book-tint);border-color:var(--book-line);}
.portfolio-ai-frame-toolbar a,.portfolio-ai-frame-toolbar button,html[data-phone-theme="dark"] .portfolio-ai-frame-toolbar a,html[data-phone-theme="dark"] .portfolio-ai-frame-toolbar button {color:var(--book-muted);font-size:12px;padding-block:6px;}
.portfolio-ai-frame-toolbar [hidden] {display:none!important;}
.to-top {border:1px solid var(--book-line);border-radius:8px;background:var(--book-surface);color:var(--book-accent);box-shadow:none;}
.phone-directory {background:var(--book-paper);color:var(--book-ink);border:1px solid var(--book-line);}
.phone-directory__heading,.phone-directory a,.phone-theme-toggle {border-color:var(--book-line);}

@media(min-width:1001px) {
  .book-reveal {opacity:1;transform:none;}
  .book-motion .book-reveal:not(.book-visible) {opacity:0;transform:translateY(14px);}
  .book-motion .book-reveal {transition:opacity .55s ease,transform .55s ease;}
}
@media(max-width:1100px) and (min-width:701px) {
  .portfolio-home .home-nav {gap:17px;}
  .site-header .brand small {display:none;}
  .site-header .nav-shell,.portfolio-home .nav-shell {padding-inline:24px;gap:12px;}
  .site-header .nav-tools,.portfolio-home .nav-tools {gap:8px;}
  .marginalia {width:135px;min-width:135px;padding-right:15px;}
  .body-col,.paper-world.detail-paper .body-col.detail-content {padding-left:28px;}
  .portfolio-home #projects .prints {gap:14px;}
  .portfolio-home #projects .print .pad {padding:17px 15px 13px;}
  .project-ownership {display:none;}
  .project-delivery {font-size:10px;}
  .detail-hero-art {width:33%;}
}
@media(max-width:850px) and (min-width:701px) {
  .site-header .brand small,.site-header .clock,.site-header .nav-github {display:none;}
  .site-header .site-nav {gap:14px;}
  .portfolio-home .home-nav {gap:16px;}
  .book-ask {display:none;}
  .portfolio-home #projects .prints {grid-template-columns:1fr;}
  .portfolio-home #projects .print {display:grid;grid-template-columns:180px minmax(0,1fr);gap:0;}
  .project-card-meta {grid-column:1/-1;}
  .portfolio-home #projects .print .plate {grid-column:1;grid-row:2;margin:0 0 15px 15px;aspect-ratio:1.4;width:165px;height:130px;align-self:center;}
  .portfolio-home #projects .print .pad {grid-column:2;grid-row:2;}
  .portfolio-home #projects .print .sum {min-height:0;margin-bottom:8px;}
  .project-tags {display:none;}
}
@media(max-width:700px),(max-width:950px) and (orientation:landscape) and (max-height:520px) {
  html {scroll-padding-top:76px;}
  body {font-size:16px;}
  .site-header .nav-shell,.portfolio-home .nav-shell {min-height:62px;padding:10px 16px;gap:9px;}
  .site-header .brand {gap:7px;}
  .site-header .brand strong {font-size:17px;}
  .site-header .brand small {display:none;}
  .site-header .brand canvas {width:23px;height:23px;}
  .site-header .nav-tools,.portfolio-home .nav-tools {gap:8px;margin-left:auto;}
  .site-header .clock {font-size:11px;}
  .site-header .time-dial {width:32px;height:32px;}
  .site-header .time-live {font-size:11px;padding:6px;}
  .site-header .nav-github {display:none;}
  .site-header .phone-theme-shortcut {width:29px;height:32px;padding:5px;}
  .home-btn {display:none;}
  .portfolio-home .home-hero {min-height:0;padding:32px 22px 30px;display:block;}
  .portfolio-home .hero-content {max-width:480px;}
  .portfolio-home .hero .eyebrow {font-size:10px;letter-spacing:0;padding:5px 7px;margin-bottom:20px;}
  .portfolio-home .hero-greeting {font-size:15px;margin-bottom:12px;}
  .portfolio-home .hero h1 {font:500 clamp(27px,7.4vw,35px)/1.4 var(--manual-serif-cn);letter-spacing:-.055em;}
  .portfolio-home .hero-role,.portfolio-home .hero-lead {display:none;}
  .portfolio-home .hero-mobile-summary {font-size:15px;line-height:1.8;margin-top:16px;max-width:360px;color:#e8ece3;}
  .portfolio-home .hero-actions {display:flex;gap:10px;margin-top:20px;}
  .portfolio-home .hero-actions .button {min-height:44px;padding:10px 15px;border-radius:6px;font-size:14px;}
  .portfolio-home .hero-proof {display:flex;flex-wrap:wrap;gap:13px;margin-top:18px;font-size:11px;}
  .portfolio-home .hero-proof b {font-size:15px;}
  .portfolio-home .hero-proof>span,.portfolio-home .hero .scroll-cue,.portfolio-home .hero-bottom {display:none;}
  .portfolio-home #projects {padding:30px 18px 18px;}
  .project-section-head {display:block;margin-bottom:20px;}
  .project-kicker {font-size:10px;margin-bottom:9px;}
  .project-section-head h2 {font:500 26px/1.5 var(--manual-serif-cn);}
  .project-section-intro {font-size:14px;line-height:1.8;margin-top:9px;}
  .project-section-intro br {display:none;}
  .portfolio-home #projects .prints {grid-template-columns:1fr;gap:11px;}
  .portfolio-home #projects .print,.portfolio-home #projects .print:hover {display:grid;grid-template-columns:60px minmax(0,1fr);padding:13px;gap:7px 12px;border-radius:8px;box-shadow:none;transform:none;}
  .project-card-meta {display:contents;}
  .portfolio-home #projects .print .tab {display:none;}
  .portfolio-home #projects .print .plate {grid-column:1;grid-row:1;width:60px;height:60px;aspect-ratio:1;margin:0;border:0;border-radius:5px;}
  .portfolio-home #projects .print .pad {display:contents;}
  .portfolio-home #projects .print h3 {grid-column:2;grid-row:1;font:600 21px/1.3 var(--manual-serif-la);align-self:center;}
  .portfolio-home #projects .print h3 small {font:500 13px/1.5 var(--sans);margin-top:4px;}
  .portfolio-home #projects .print .sum {grid-column:1/-1;grid-row:2;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;min-height:0;margin:2px 0 0;font-size:14px;line-height:1.75;}
  .project-ownership,.project-tags,.project-delivery {display:none;}
  .project-status {grid-column:1;grid-row:3;white-space:nowrap;font-size:11px;align-self:center;}
  .portfolio-home #projects .print .acts {grid-column:2;grid-row:3;display:flex;justify-content:flex-end;margin:0;padding:0;border:0;}
  .portfolio-home #projects .print .acts .go {min-height:36px;font-size:13px;}
  .project-section-foot {margin-top:18px;font-size:12px;gap:8px;}
  .paper-world .page {padding:0 18px;}
  .slab {display:block;}
  .marginalia {display:none;}
  .body-col,.paper-world.detail-paper .body-col.detail-content {padding:0;}
  .chapter {padding:30px 0;}
  .chapter .ch-head {grid-template-columns:29px minmax(0,1fr);gap:9px;margin-bottom:19px;}
  .chapter .ch-no {margin-top:3px;}
  .chapter .ch-no .big {width:27px;height:27px;font:500 12px/1 var(--mono);border-radius:4px;}
  .chapter .ch-title h2 {font:500 25px/1.5 var(--manual-serif-cn);letter-spacing:-.035em;}
  .chapter .ch-title .lede {font-size:15px;line-height:1.8;margin-top:10px;}
  .chapter .ch-side {display:none;}
  .log {border-radius:7px;}
  .log-bar {padding:12px;font-size:10px;}
  .log-row {padding:14px 12px;gap:10px;}
  #open-source .log-scroll {height:210px;max-height:210px;overflow-y:auto;}
  .log-m strong {font-size:15px;line-height:1.7;}
  .log-m small {font-size:10px;}
  .log-r .stamp {font-size:11px;}
  .cooperation h3,.panel-t {font-size:19px;}
  .cooperation p,.cooperation-grid p {font-size:14px;}
  .kv {grid-template-columns:1fr;gap:5px;padding:13px 0;}
  .kv b {font-size:13px;}
  .kv span {font-size:15px;line-height:1.85;}
  .method-checks {gap:8px;}
  .method-checks>div,.method-checks>strong {padding:11px;font-size:13px;}
  .method-checks span {font-size:12px;}
  .tl h5 {font-size:17px;}
  .tl p,.event-copy,.note-inline {font-size:15px;}
  .finale .lead {font-size:15px;line-height:1.8;}
  .cta-row .cta {font-size:14px;padding:12px;border-radius:6px;}
  .contact-table .cr {grid-template-columns:55px minmax(0,1fr);padding:14px 12px;gap:8px;}
  .contact-table dd {font-size:14px;}
  .contact-table dd small {font-size:12px;}
  .contact-table .ct {font-size:10px;}
  .colophon {padding:26px 0 calc(90px + env(safe-area-inset-bottom));}
  .colophon-in {padding:0 18px;gap:15px;}
  .colophon b {font-size:20px;}
  .colophon p {font-size:14px;}
  .colophon nav a {font-size:13px;}
  .colophon .end {font-size:11px;gap:10px;line-height:1.8;}
  .phone-dock {border-top:1px solid var(--book-line);background:var(--book-paper);box-shadow:0 -4px 20px #4e352209;}
  .phone-dock a,.phone-dock button {color:var(--book-muted);font-size:12px;}
  .phone-dock a[aria-current] {color:var(--book-accent);}
  .phone-dock a[aria-current] .phone-dock__icon {background:var(--book-accent-soft);}
  .phone-dock__icon svg {stroke-linecap:round;stroke-linejoin:round;}
  .phone-directory {border-radius:15px 15px 0 0;}
  .phone-directory a {font-size:15px;}
  .detail-hero {min-height:0;padding:30px 20px;display:block;}
  .detail-hero .detail-back {font-size:13px;margin-bottom:20px;}
  .detail-hero h1 {font:500 32px/1.45 var(--manual-serif-cn);}
  .detail-hero .hero-lead {font-size:15px;line-height:1.85;}
  .detail-hero .detail-hero-art {display:none;}
  .detail-hero .detail-links .button {min-height:44px;font-size:13px;padding:10px;}
  .paper-world.detail-paper .detail-section {padding:28px 0;}
  .detail-section h2 {font:500 25px/1.5 var(--manual-serif-cn);}
  .detail-section p {font-size:15px;line-height:1.85;}
  .detail-panel {padding:15px;border-radius:7px;}
  .detail-panel h3 {font-size:17px;}
  .detail-panel p,.detail-panel li {font-size:15px;}
  .detail-flow>div {border:0;border-left:2px solid var(--book-line);border-bottom:1px solid var(--book-line);border-radius:0;background:transparent;}
  .detail-flow p {font-size:14px;}
  .detail-table td {background:var(--book-surface);font-size:14px;}
  .detail-stat {padding:12px;border-color:var(--book-line);}
  .detail-note {padding:14px;font-size:14px;}
  .detail-next strong {font-size:17px;}
  .site-footer {padding-bottom:calc(80px + env(safe-area-inset-bottom));}
  .site-footer .footer-inner {padding:26px 18px 0;}
  .portfolio-ai-entry {left:16px;bottom:calc(76px + env(safe-area-inset-bottom));font-size:12px;height:40px;border-radius:9px;}
  .portfolio-ai-dialog {width:100%;height:var(--portfolio-ai-height,100dvh);max-height:100dvh;border-radius:0;border:0;}
  .portfolio-ai-frame-toolbar {min-height:40px;}
  .site-header .nav-shell,.portfolio-home .nav-shell {padding-left:max(16px,env(safe-area-inset-left));padding-right:max(16px,env(safe-area-inset-right));}
  .portfolio-home .home-hero {padding-left:max(22px,env(safe-area-inset-left));padding-right:max(22px,env(safe-area-inset-right));}
  .portfolio-home #projects,.paper-world .page {padding-left:max(18px,env(safe-area-inset-left));padding-right:max(18px,env(safe-area-inset-right));}
}
@media(max-width:360px) {
  .site-header .nav-shell,.portfolio-home .nav-shell {padding-inline:12px;}
  .site-header .clock {display:none;}
  .site-header .nav-tools,.portfolio-home .nav-tools {gap:7px;}
  .portfolio-home .home-hero {padding-inline:18px;}
  .portfolio-home .hero .eyebrow {font-size:9px;}
  .portfolio-home .hero h1 {font-size:27px;}
  .portfolio-home #projects,.paper-world .page {padding-inline:14px;}
  .project-section-head h2 {font-size:24px;}
  .portfolio-home #projects .print {padding:12px;gap:7px 10px;}
  .contact-table .cr {grid-template-columns:48px minmax(0,1fr);gap:6px;}
}
@media(prefers-reduced-motion:reduce) {
  html {scroll-behavior:auto;}
  .book-motion .book-reveal:not(.book-visible) {opacity:1;transform:none;}
  .book-motion .book-reveal,.print,.button,.cta {transition:none!important;}
}
