/* Fountain Press proofs are painted from accepted fixed A4 pages.
   This CSS never sets text line breaks, alters figures or scales page children. */
:root{color-scheme:light;--paper:#f6f3eb;--ink:#29241e;--rule:#c5c0b6;--workspace:#d5d1c8;--height:calc(100dvh - 134px);font-family:system-ui,-apple-system,sans-serif;}
*{box-sizing:border-box}
html,body{height:100%;margin:0;}
body.press-reader{display:grid;grid-template-rows:64px minmax(0,1fr) 70px;background:var(--workspace);color:var(--ink);}
a,button,summary,input{ -webkit-tap-highlight-color:transparent; }
a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,#page-pair:focus-visible{outline:2px solid #7d6044;outline-offset:3px}
.skip{position:absolute;left:10px;top:-100px;padding:10px;background:var(--paper);z-index:50}
.skip:focus{top:10px}
.press-bar{display:grid;grid-template-columns:minmax(120px,1fr) auto minmax(120px,1fr);align-items:center;gap:10px;padding:10px max(18px,env(safe-area-inset-left));border-bottom:1px solid var(--rule);background:var(--paper);z-index:6}
.press-return{font-size:.82rem;text-decoration:none;white-space:nowrap;justify-self:start}
.press-mark{font:600 .64rem/1.5 ui-monospace,Menlo,monospace;color:#5b554d;letter-spacing:.055em;text-align:center;white-space:nowrap}
.press-mark span{color:#b4aa99}
.press-options{display:flex;justify-content:flex-end;align-items:center;gap:18px;font-size:.78rem}
.press-options a{text-decoration:none}
.press-contents{position:relative;}
.press-contents>summary{cursor:pointer;list-style:none;white-space:nowrap}
.press-contents>summary::-webkit-details-marker{display:none}
.press-contents[open] summary{font-weight:600}
.press-toc{position:absolute;right:0;top:30px;width:min(420px,calc(100vw - 22px));max-height:min(70dvh,730px);overflow:auto;border:1px solid var(--rule);background:var(--paper);box-shadow:0 16px 45px #0003;padding:8px 16px;z-index:20}
.press-toc a{display:grid;grid-template-columns:2rem 1fr auto;gap:12px;align-items:baseline;padding:11px 1px;border-bottom:1px solid var(--rule);text-decoration:none;}
.press-toc .toc-num{font:500 .65rem ui-monospace,monospace;color:#837c71}
.press-toc .toc-title{font:1rem Georgia,serif;}
.press-toc .toc-date{font:.66rem ui-monospace,monospace;color:#736b62}
.press-toc a[aria-current="location"]{color:#795b32;font-weight:600}
#press-main{min-width:0;min-height:0;display:flex;align-items:center;justify-content:center;padding:12px 16px;overflow:hidden;}
.press-sheet-bounds{width:100%;height:100%;min-height:0;display:flex;justify-content:center;align-items:center;}
.press-pages{display:flex;justify-content:center;align-items:center;gap:clamp(10px,2vw,24px);width:100%;height:100%;min-width:0;min-height:0;outline-offset:-3px}
.press-page,.press-blank{display:block;min-width:0;max-width:100%;height:auto;max-height:100%;aspect-ratio:595.28 / 841.89;object-fit:contain;flex:0 1 auto;}
.press-page{box-shadow:0 3px 17px #3b2c1e29;background:var(--paper);user-select:none;-webkit-user-drag:none;}
.press-page.is-loaded{opacity:1;}
.press-blank{background:transparent;box-shadow:none;}
.press-loading,.press-error{font:1.1rem/1.7 Georgia,serif;text-align:center;margin:auto;color:#61594f;}
.press-error a{display:block;font:14px system-ui;margin-top:15px}
.press-controls{display:grid;grid-template-columns:1fr minmax(180px,440px) 1fr;gap:10px;align-items:center;padding:7px max(16px,env(safe-area-inset-left));background:var(--paper);border-top:1px solid var(--rule)}
.press-controls button{background:none;border:0;padding:12px 5px;color:var(--ink);font:500 .8rem system-ui;cursor:pointer;}
#press-next{justify-self:end}
#press-previous{justify-self:start}
.press-controls button:disabled{opacity:.27;cursor:default}
.press-location{display:flex;flex-direction:column;align-items:center;gap:5px;min-width:0;font:.67rem/1.3 ui-monospace,Menlo,monospace;color:#777068;letter-spacing:.045em}
#press-current{max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#33302b}
#press-range{width:100%;height:8px;accent-color:#766047;cursor:pointer}
#press-count{font-variant-numeric:tabular-nums}
.press-noscript{position:absolute;bottom:78px;left:16px;right:16px;background:var(--paper);padding:15px;text-align:center}
body[data-press-mode="spread"] .press-page,body[data-press-mode="spread"] .press-blank{width:auto;height:min(100%,calc((100vw - 70px)/2 * 1.414));}
body[data-press-mode="single"] .press-page{width:auto;height:min(100%,calc((100vw - 22px) * 1.414));}
body[data-press-mode="single"] .press-blank{display:none;}
@media(max-width:760px){
 body.press-reader{grid-template-rows:52px minmax(0,1fr) 65px}
 .press-bar{padding:7px 12px;grid-template-columns:1fr auto;}
 .press-mark{display:none}
 .press-options{gap:12px}
 #press-main{padding:7px 6px}
 .press-controls{grid-template-columns:42px minmax(0,1fr) 42px;padding:6px 10px}
 .press-controls button{font-size:1.25rem;padding:8px 0}
 .press-controls button span{display:none}
 .press-page{box-shadow:0 2px 10px #3b2c1e22}
 .press-location{font-size:.64rem}
}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;}}
@media print {
 body.press-reader{display:block;background:#fff}
 .press-bar,.press-controls,.press-contents{display:none!important}
 .press-pages{display:block!important;height:auto}
 .press-page{page-break-after:always;display:block;width:100%!important;height:auto!important}
}
