body:has(#transport){margin:0;overflow:hidden;background:#e9e8df;}body:has(#transport)>.pub-bar,body:has(#transport)>#pub,body:has(#transport)>.pub-skip{display:none;}
#transport{position:fixed;inset:0;color:#263b49;font-family:SUIT,'Instrument Sans',sans-serif;outline:none;}
.transport-stage{position:absolute;inset:0;}.transport-stage canvas{display:block;width:100%;height:100%;touch-action:none;}
.transport-chrome{position:absolute;left:28px;right:28px;top:22px;display:flex;align-items:center;gap:25px;font-size:11px;letter-spacing:.12em;}
.transport-chrome span{margin-right:auto;}.transport-chrome a,.transport-chrome button{color:inherit;text-decoration:none;background:none;border:0;font:inherit;cursor:pointer;padding:7px;}
.transport-hits{position:absolute;inset:0;pointer-events:none;}
.transport-hit{position:absolute;left:0;top:0;pointer-events:auto;cursor:pointer;background:transparent;border:0;color:transparent;font-size:0;padding:0;touch-action:manipulation;border-radius:2px;}
.transport-hit:focus-visible{outline:2px solid #ad482f;outline-offset:2px;background:#b0493012;}
.transport-tab{position:absolute;left:0;top:0;width:46px;height:90px;background:transparent;color:transparent;border:0;font-size:0;cursor:pointer;}
.transport-status{position:absolute;bottom:20px;left:28px;font-size:11px;letter-spacing:.025em;color:#5e665f;pointer-events:none;}
.transport-source{position:absolute;right:28px;bottom:20px;max-width:460px;font-size:11px;}.transport-source summary{cursor:pointer;}.transport-source[open]{background:#efe9d8;padding:18px;box-shadow:0 5px 20px #30302020;}.transport-source a{display:block;color:#344952;padding:7px 0;}.transport-source p{line-height:1.7;}
.transport-sheetbar,.transport-atlasbar{position:absolute;left:50%;bottom:65px;transform:translateX(-50%);display:flex;gap:20px;background:#eee6d3;padding:12px 20px;box-shadow:1px 4px 9px #37332620;}
.transport-sheetbar button,.transport-sheetbar a,.transport-atlasbar button{font:500 13px SUIT,sans-serif;color:#99492e;background:transparent;border:0;border-bottom:1px solid #a36442;padding:9px 6px;text-decoration:none;cursor:pointer;}
#transport [hidden]{display:none!important;}#transport button:focus-visible,#transport a:focus-visible{outline:2px solid #a84730;outline-offset:3px;}
#transport .spatial-controls{display:none!important;}
@media(max-width:800px){.transport-chrome{left:12px;right:12px;gap:8px;font-size:10px;}.transport-chrome span{display:none;}.transport-status{max-width:65%;font-size:10px;left:12px;}.transport-source{right:12px;}.transport-sheetbar,.transport-atlasbar{bottom:65px;gap:4px;width:max-content;max-width:92%;}}
@media(hover:hover) and (pointer:fine){.transport-hit:hover{background:#a95b2310;}}
.transport-chrome{font-size:12px;letter-spacing:.035em;}
.transport-chrome button{background:#923c28;color:#fff3dc;padding:10px 16px;}
.transport-status{color:#34473f;font-size:12px;max-width:65%;}
.transport-atlasbar{background:#223b48;color:#fff3dc;align-items:center;width:max-content;max-width:90%;font-size:12px;}
.transport-atlasbar button{background:#923c28;color:#fff3dc;padding:12px 18px;border:0;min-height:44px;}
.transport-source[open]{max-height:55vh;overflow:auto;}
@media(max-width:700px){.transport-source[open]{left:12px;right:12px;max-width:none}}
.book-grip{position:absolute;height:32px;background:transparent;border:0;color:#b49862;font:500 11px SUIT,sans-serif;cursor:grab;touch-action:none;text-shadow:0 1px #18263c;}
.book-grip[aria-pressed=true]{cursor:grabbing;}
.book-grip:hover,.book-grip:focus-visible{background:#1c304228;color:#fff3dc;}
.machine-hits{position:absolute;inset:0;pointer-events:none;}
.machine-hit{position:absolute;pointer-events:auto;background:transparent;border:0;color:transparent;font-size:0;cursor:pointer;padding:0;touch-action:manipulation;}
.machine-hit:hover{background:#1d81451c;}.machine-hit:focus-visible{outline:3px solid #b95731;outline-offset:2px;}
.machine-bar{position:absolute;left:50%;bottom:66px;transform:translateX(-50%);background:#213b48;color:#fff3dc;padding:12px 18px;display:flex;align-items:center;gap:28px;font-size:13px;max-width:92%;width:max-content;}
.machine-bar button{border:0;background:#923c28;color:#fff3dc;font:inherit;min-height:44px;padding:10px 18px;cursor:pointer;}
@media(max-width:800px){.transport-status{bottom:13px;font-size:10px;}.book-grip{font-size:10px;}.machine-bar{gap:10px;font-size:11px;}.transport-chrome{top:10px;}.transport-source{bottom:12px;}}
@media(prefers-reduced-motion:reduce){#transport *{scroll-behavior:auto;}}

.atlas-reading{position:absolute;right:30px;top:100px;width:280px;padding:24px 24px 18px;background:#efe8d8;color:#233645;max-height:calc(100vh - 240px);overflow:auto;box-shadow:3px 4px 7px #1c25242c;font-size:13px;line-height:1.55;}
.atlas-reading h2{font:400 31px RIDIBatang,'EB Garamond',serif;margin:12px 0 14px;line-height:1.3;}.atlas-reading p{margin:10px 0;}.atlas-reading .atlas-location{font-size:11px;letter-spacing:.025em;}.atlas-scale{color:#873c28;font-weight:600;}
.atlas-reading button,.atlas-reading a{font:inherit;color:inherit;cursor:pointer;}.atlas-reading button{background:transparent;border:0;padding:11px 8px;min-height:44px;}.atlas-anchor-list{display:flex;flex-direction:column;margin:12px 0;}.atlas-anchor-list button{text-align:left;border-bottom:1px solid #b7ac97;}.atlas-reading button[aria-pressed=true]{background:#263c45;color:#f7ebd5;}
.atlas-layers,.atlas-navigation{display:flex;flex-wrap:wrap;gap:3px;margin:8px 0;}.atlas-layers button{font-size:12px;}.atlas-navigation button{min-width:38px;}.atlas-context{margin-top:16px;border-top:1px solid #baae96;padding-top:10px;}.atlas-context p,.atlas-source-note{font-size:11px;}.atlas-context button{display:block;background:#923c28;color:#fff0d8;text-align:left;line-height:1.6;width:100%;}.atlas-context a{display:block;padding:12px 0;}
.atlas-pins{position:absolute;inset:0;pointer-events:none;}.atlas-pin{position:absolute;transform:translate(-50%,-100%);pointer-events:auto;min-height:36px;white-space:nowrap;border:0;border-bottom:2px solid #9c5236;padding:7px 12px;background:#e8ddc6;color:#243646;font:600 12px SUIT,sans-serif;cursor:pointer;box-shadow:2px 3px 5px #17232938;}.atlas-pin[aria-pressed=true]{background:#943d29;color:#fff3dd;}
.atlas-content{position:absolute;inset:12px;background:#e9e5d9;z-index:20;display:flex;flex-direction:column;}.atlas-content>button{background:#243847;color:#fff0d5;font:500 15px SUIT,sans-serif;border:0;text-align:left;padding:17px 24px;cursor:pointer;min-height:52px;}.atlas-content iframe{border:0;flex:1;width:100%;background:#efecdf;}
@media(max-width:900px){.atlas-reading{right:12px;top:62px;width:220px;padding:14px;max-height:calc(100vh - 190px);font-size:12px;}.atlas-reading h2{font-size:24px;}.atlas-pin{font-size:10px;padding:5px 8px;}}
@media(max-width:600px){.atlas-reading{top:auto;bottom:118px;left:12px;right:12px;width:auto;max-height:35vh;}.atlas-reading h2{font-size:22px;}.atlas-anchor-list{flex-direction:row;flex-wrap:wrap;}.atlas-reading .atlas-source-note{display:none;}.atlas-pin{max-width:160px;white-space:normal;}.transport-atlasbar>span{display:none;}}

.atlas-seam{position:absolute;z-index:90;inset:24% 20%;padding:3rem;background:#eee5d2;color:#233645;box-shadow:0 12px 80px #1118}.atlas-seam[hidden]{display:none}.atlas-seam h2{font:2rem Georgia,serif}.atlas-seam button{padding:.8rem 1.4rem;background:#923c28;color:white;border:0}.atlas-seam p{line-height:1.7}

.transport-pagination{left:auto;top:auto;right:30px;bottom:58px;width:auto!important;height:auto!important;transform:none!important;font-size:12px;color:#233645;background:#f2ead7;border:1px solid #a28a64;padding:10px 16px;z-index:8}

/* Inked tabs: a stable contact edge, reversible lift, then compression. */
#transport{--ink:#172d3b;--paper:#f5eddc;--rust:#893922;--ease-contact:cubic-bezier(.23,1,.32,1)}
#transport .printed-control,#transport .transport-pagination,#transport .transport-chrome button,#transport .machine-bar button,#transport .transport-sheetbar button,#transport .atlas-seam button{
 color:var(--ink);background:var(--paper);border:1px solid #84735b;border-bottom:3px solid #76664d;border-radius:0;
 font:600 13px SUIT,'Instrument Sans',sans-serif;letter-spacing:.015em;min-height:44px;padding:7px 13px;
 box-shadow:1px 3px 0 #302c2525;transition:translate 180ms var(--ease-contact);
}
#transport .printed-control{font-size:clamp(10px,1vw,14px);text-align:left;white-space:normal;line-height:1.25}
#transport .nav-opening{left:28px;right:auto;bottom:62px;background:var(--rust);color:#fff5e2;z-index:30;border-color:#632a1b}
#transport .nav-prev{right:180px}
#transport .nav-next{right:28px}
#transport .transport-pagination:disabled{color:#6d695d;background:#e2dccd;box-shadow:none;border-bottom-width:1px;cursor:default}
#transport .transport-hit:not(.printed-control):not(.transport-pagination):hover{background:transparent}
#transport .transport-hit[aria-pressed=true]{border-bottom:2px solid #89392255}
#transport .transport-hit:focus-visible{background:#fff2cc12;outline:3px solid var(--rust);outline-offset:4px}
#transport button:active:not(:disabled){translate:0 2px;box-shadow:none}
#transport button:focus-visible,#transport a:focus-visible{outline:3px solid var(--rust);outline-offset:4px}
#transport .transport-chrome button,#transport .machine-bar button,#transport .atlas-seam button{color:#fff4df;background:var(--rust);border-color:#632a1b}
.transport-source{z-index:40}.transport-chrome{z-index:40}.transport-status{color:#283a33;max-width:62%;font-size:12px}
@media(hover:hover) and (pointer:fine){
 #transport .printed-control:hover,#transport .transport-pagination:not(:disabled):hover,#transport .transport-chrome button:hover,#transport .machine-bar button:hover,#transport .atlas-seam button:hover{translate:0 -2px;box-shadow:1px 5px 0 #302c252b}
}
@media(max-width:800px){#transport .nav-opening{left:12px;bottom:54px}#transport .nav-prev{right:135px;bottom:54px}#transport .nav-next{right:12px;bottom:54px}#transport .transport-pagination{font-size:11px;padding:8px}.transport-status{max-width:65%}.transport-source{max-width:30%}}
@media(prefers-reduced-motion:reduce){#transport button{transition:none!important;translate:none!important}}

#transport.keyboard-input button{transition:none!important;translate:none!important}
#transport button:active:not(:disabled){transition-duration:100ms}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}

/* Printed paper instruments. Their native hit/focus plane follows four paper points. */
#transport .paper-control{left:0!important;top:0!important;right:auto!important;bottom:auto!important;transform:var(--paper-matrix)!important;transform-origin:0 0;translate:none!important;box-sizing:border-box;border:0;border-bottom:2px solid #7c5031;background:#efe5cd;color:#182d37;font:600 29px SUIT,sans-serif;line-height:1.2;letter-spacing:.015em;min-height:0;padding:13px 16px;box-shadow:0 3px 0 #66523633;text-align:left;transition:background-color 140ms ease;}
#transport .paper-control:hover{background:#e1cfab;box-shadow:0 4px 0 #66523644}
#transport .paper-control:active{background:#d4c29d;box-shadow:none}
#transport .paper-control:focus-visible{outline:5px solid #913d25;outline-offset:4px}
#transport .paper-control.nav-opening{background:#934329;color:#fff2d5;border-bottom:4px solid #592a1c;font-size:28px}
#transport .paper-control.section-control{color:transparent!important;font-size:0!important;background:transparent;box-shadow:none;border:0;padding:0}
#transport .paper-control.section-control:hover:not(:disabled){background:#9b652314;box-shadow:inset 8px 0 #914325}
#transport .paper-control.section-control:active:not(:disabled){background:#9b652326}
#transport .paper-control.section-control:disabled{background:transparent;box-shadow:none;cursor:default}
@media(prefers-reduced-motion:reduce){#transport .paper-control{transition:none}}
#transport .paper-control.transport-pagination{padding:0;border:0;background:transparent;box-shadow:none}
#transport .paper-control .paper-ink{position:absolute;pointer-events:none;box-sizing:border-box;left:0;top:var(--ink-top,0px);width:100%;padding:13px 16px;background:#efe5cd;border-bottom:2px solid #7c5031;box-shadow:0 3px 0 #66523633}
#transport .paper-control.nav-opening .paper-ink{background:#934329;border-bottom:4px solid #592a1c}
#transport .paper-control:hover .paper-ink{filter:brightness(.94)}
#transport .paper-control:active .paper-ink{filter:brightness(.87);box-shadow:none}
/* The physical book owns its page transition. Its hidden Published shell has
   no visible named-title counterpart for a cross-document DOM transition. */
@view-transition{navigation:none}

.inventory-row .inventory-related-note{grid-column:2/-1;font-size:.75rem;line-height:1.5}.reading-related-view{font-size:.85em;line-height:1.5}

/* Index Folio path (mapbook_inventory.js): the region as a whole, then the chapter (its own button lists the chapters);
   all of the region stands under its chapter heads; the book's own contents spread is one press away */
.inventory-path{display:flex;flex-wrap:wrap;align-items:center;gap:0 2px;padding:6px 0;border-bottom:1px solid currentColor;font:20px/1.35 var(--fow-font-instrument,SUIT,sans-serif)}
.inventory-path .inventory-chapter{display:inline-block;width:auto;font:inherit;font-weight:600;padding:0!important;border:0!important;min-height:44px}
.inventory-crumb{font:inherit;color:inherit;background:none;border:0;padding:0;min-height:44px;cursor:pointer;text-decoration:underline;text-underline-offset:5px}
.inventory-sep{white-space:pre;opacity:.6}.inventory-here{font-weight:600}
.inventory-toc{align-self:flex-start;font:13px SUIT,sans-serif;color:inherit;background:none;border:0;padding:0;min-height:44px;cursor:pointer;text-decoration:underline;text-underline-offset:4px}
.inventory-kinds [data-empty]{opacity:.5}
.inventory-vh{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.inventory-group{position:sticky;top:0;z-index:1;margin:0;padding:6px 0 3px;font:600 11px/1.4 SUIT,sans-serif;letter-spacing:.08em;background:var(--fow-paper-base,#f4efdf);border-bottom:1px solid var(--fow-paper-rule,#b4aa91)}
.inventory-widen .inventory-expand{border-top:0!important;text-decoration:underline;text-underline-offset:4px}
