:root{font-family:Arial,Helvetica,sans-serif;color:#263c42;background:#e9e8e2;font-synthesis:none;--ink:#18343b;--muted:#637577;--gold:#c5aa75;--line:#dcdad0;--paper:#faf9f3}*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(ellipse at 50% 20%,#f5f4ee,#e5e4dc 95%)}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit}button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #bc8939;outline-offset:4px}button,a{touch-action:manipulation}.app-bar{min-height:84px;padding:18px 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #d6d7ce;background:#f2f1eb}.wordmark{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:10px;letter-spacing:2.1px;line-height:1.8}.wordmark b{display:block;letter-spacing:2.6px;font-weight:700}.brand-mark{font-family:Georgia,serif;font-size:25px;width:39px;height:43px;display:grid;place-items:center;border:1px solid #b7bdaf;border-radius:1px}.app-bar nav{display:flex;gap:13px}.tool{display:flex;gap:8px;align-items:center;border:0;background:transparent;padding:10px 11px;min-height:44px;text-decoration:none;color:#40575a;font-size:12px}.tool:hover{background:#e5e7df;border-radius:6px}.tool-icon{font-size:22px;line-height:1}.desk{width:min(100%,1030px);margin:0 auto;padding:30px 65px 26px 40px}.book-topline{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.9px;color:#657473;margin:0 0 17px 15px;gap:10px}.book-topline a{text-decoration:none}.book-topline a:hover{text-decoration:underline}.book-shell{position:relative;isolation:isolate;margin-right:13px;min-height:650px}.page-stack{position:absolute;inset:8px -8px -9px 10px;background:repeating-linear-gradient(0deg,#d3d1c5 0,#f0eee5 1px,#eeeae0 3px);border:1px solid #b6b7aa;border-radius:6px 9px 9px 6px;box-shadow:4px 12px 25px #263b3d21;z-index:-1}.book-page{position:relative;border-radius:5px 8px 8px 5px;min-height:650px;background:var(--paper);box-shadow:0 18px 38px #263b3d23;outline:none;overflow:hidden}.book-page.turning{animation:page-in .25s ease-out;transform-origin:left center}@keyframes page-in{from{opacity:.45;transform:perspective(1500px) rotateY(-5deg) translateX(-6px)}to{opacity:1;transform:none}}.number-tabs{position:absolute;z-index:-1;left:100%;top:48px;display:flex;flex-direction:column;gap:9px;width:52px}.number-tab{position:relative;border:0;border-radius:0 9px 9px 0;color:#fff;background:var(--tab);font-size:17px;font-weight:bold;letter-spacing:1px;width:52px;height:70px;padding:0 0 0 6px;box-shadow:1px 3px 4px #18343b26;transition:width .15s,padding .15s}.number-tab:hover,.number-tab[aria-current=page]{width:61px;padding-left:12px}.number-tab[aria-current=page]::after{content:'';position:absolute;right:7px;top:10px;bottom:10px;width:2px;background:#ffffffaa;border-radius:2px}.cover{min-height:650px;position:relative;display:flex;flex-direction:column;align-items:center;text-align:center;color:#e4d3ad;padding:45px 56px 28px 68px;background:radial-gradient(ellipse at 90% 10%,#2b484d55,transparent 60%),repeating-linear-gradient(102deg,#ffffff02 0,#ffffff02 1px,transparent 1px,transparent 4px),#17343c}.cover::before{content:'';position:absolute;inset:20px 20px 20px 33px;border:1px solid #b49d635f;border-radius:2px;pointer-events:none}.cover::after{content:'';position:absolute;left:0;top:0;bottom:0;width:24px;background:linear-gradient(90deg,#07191c9c,#27474a5f 45%,#0d242a55 70%,#19353c);border-right:1px solid #071d2466}.cover-kicker{font-size:10px;letter-spacing:3.6px;margin:10px 0 18px;color:#bdac86}.compass{width:108px;height:108px;color:#b7a274;margin:6px 0 22px}.cover h1{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:1.3px;font-size:clamp(34px,4.6vw,55px);line-height:1.13;margin:0;color:#eadfc5}.cover-rule{width:65px;border-top:1px solid #b49d638c;margin:23px auto 19px}.cover-subtitle{font-size:13px;letter-spacing:4.1px;margin:0 0 10px;font-weight:400}.cover-description{font-family:Georgia,serif;color:#b7c2ba;font-size:16px;margin:0 0 28px;line-height:1.5}.cover-open{background:#e2d3b3;color:#19383e;border:1px solid #d1be96;border-radius:3px;padding:13px 26px;font-size:12px;letter-spacing:.7px;display:flex;align-items:center;gap:25px;min-height:44px;text-decoration:none}.cover-open:hover{background:#eee2c8}.cover-open span{font-size:20px}.cover-bottom{margin-top:auto;padding-top:30px;display:flex;align-items:center;gap:11px;font-size:9px;letter-spacing:2px;color:#a7b5ae}.cover-bottom::before,.cover-bottom::after{content:'';width:27px;height:1px;background:#75847b}.cover-tip{font-size:10px;color:#93a7a1;letter-spacing:.4px;margin:17px 0 0}.desk-footer{display:flex;justify-content:space-between;gap:15px;margin:25px 0 0 15px;font-size:10px;color:#6c7975;line-height:1.6}.desk-footer>span:last-child{text-align:right}.desk-footer button{border:0;background:none;text-decoration:underline;color:#254d56;font-size:11px;padding:6px}#offline-status::before{content:'●';font-size:7px;margin-right:6px;color:#74847c}.section-page{min-height:650px;padding:31px 38px 24px 44px;background:linear-gradient(90deg,#e8e6dc,transparent 25px),var(--paper);position:relative}.section-page::before{content:'';position:absolute;top:0;left:0;right:0;height:6px;background:var(--accent)}.section-bar{display:flex;justify-content:space-between;gap:8px;align-items:center}.eyebrow{font-size:10px;letter-spacing:1.8px;color:#788078;font-weight:600;margin:0 0 8px}.section-bar .eyebrow{margin:0}.text-button{border:0;background:none;color:#5a706e;font-size:11px;min-height:44px;padding:8px;text-decoration:none;display:inline-flex;align-items:center;gap:5px}.text-button:hover{text-decoration:underline}.section-heading{display:flex;align-items:center;gap:23px;padding:13px 0 21px}.section-numeral{font-family:Georgia,serif;font-size:66px;color:var(--accent);line-height:1}.section-heading h1{font-family:Georgia,serif;font-size:31px;font-weight:400;margin:0 0 5px;overflow-wrap:anywhere}.section-heading p{font-size:11px;color:#6f7b74;margin:0;line-height:1.5}.section-owner{font-family:Georgia,serif;font-size:14px;font-style:italic;color:#5a706e;margin:0 0 4px}.alpha-heading{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.4px;color:#7a847a;margin-bottom:10px}.alphabet{display:grid;grid-template-columns:repeat(13,minmax(0,1fr));gap:5px;border-bottom:1px solid var(--line);padding-bottom:22px}.letter-tab{position:relative;min-height:43px;border:1px solid #d9dcd1;border-radius:4px;background:#f0f1e9;color:#4b625e;font-size:12px;font-weight:600}.letter-tab:hover{background:#e4e8dd}.letter-tab[aria-current=page]{background:var(--accent);color:white;border-color:var(--accent)}.letter-tab.has-entries::after{content:'';position:absolute;bottom:5px;left:calc(50% - 1.5px);width:3px;height:3px;border-radius:50%;background:currentColor}.letter-header{display:flex;justify-content:space-between;align-items:center;padding:21px 0 16px;gap:12px}.letter-title{display:flex;align-items:center;gap:11px}.letter-title h2{font-family:Georgia,serif;font-size:35px;font-weight:400;color:var(--accent);margin:0}.letter-title p{font-size:10px;color:#788078;line-height:1.7;margin:0}.letter-title strong{font-weight:500;color:#52665f;letter-spacing:1px}.button{padding:11px 17px;min-height:44px;border:1px solid #c7cfc3;border-radius:4px;background:transparent;color:#35544f;font-size:12px;text-decoration:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}.button.primary{color:white;background:#254e50;border-color:#254e50}.button:hover{filter:brightness(.95)}.button.danger{color:#953e31;border-color:#d8bab0}.empty-page{min-height:215px;border:1px dashed #d7dacd;border-radius:4px;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:25px;text-align:center;background:repeating-linear-gradient(0deg,transparent,transparent 31px,#dcdfd222 31px,#dcdfd222 32px)}.empty-symbol{font-size:29px;font-family:Georgia,serif;color:#a6afa0;margin:0 0 8px}.empty-page h3{font-family:Georgia,serif;font-size:20px;font-weight:400;margin:0 0 9px;color:#5b6c61}.empty-page p{font-size:12px;color:#7f887d;line-height:1.7;max-width:290px;margin:0}.page-foot{border-top:1px solid var(--line);margin-top:28px;padding-top:13px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.2px;color:#7f877d;gap:8px}.entries{display:grid;gap:12px}.entry{border:1px solid #d9dcd1;border-radius:4px;background:#ffffff7a;padding:18px 19px}.entry-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.entry-code{font-size:10px;color:var(--accent);letter-spacing:1.4px;font-weight:700}.entry h3{font-family:Georgia,serif;font-size:22px;font-weight:400;margin:9px 0 12px;overflow-wrap:anywhere}.entry-body{font-size:14px;line-height:1.7;color:#53655d;white-space:pre-wrap;overflow-wrap:anywhere;margin:0 0 10px}.entry-link{font-size:12px;color:#345f5c;display:inline-flex;align-items:center;gap:6px;min-height:44px;overflow-wrap:anywhere;max-width:100%}.entry-date{font-size:10px;color:#8a9086;margin:8px 0 0}dialog{border:1px solid #c3cabb;border-radius:10px;padding:26px;width:min(600px,calc(100vw - 24px));color:var(--ink);background:var(--paper);box-shadow:0 30px 80px #051c2440;max-height:90dvh}dialog::backdrop{background:#10292f66;backdrop-filter:blur(3px)}.dialog-top{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;margin-bottom:20px}.dialog-top h2{font-family:Georgia,serif;font-size:28px;font-weight:400;margin:0}.close-button{border:1px solid #d6dccf;border-radius:50%;background:none;font-size:24px;color:#587168;min-width:40px;height:40px}.dialog-copy{color:#708074;font-size:13px;line-height:1.7;margin:0 0 17px}label{display:block;font-size:12px;margin:17px 0 7px;color:#46635b}input:not([type=file]),textarea,select{width:100%;border:1px solid #c9d1c3;border-radius:4px;background:#fffefa;padding:12px;color:#254139;font-size:14px;min-height:44px}textarea{resize:vertical;min-height:155px;line-height:1.5}.form-foot{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;margin-top:23px}.form-foot .left{margin-right:auto}.form-error{font-size:12px;color:#9b422e;line-height:1.5}.manage-list{display:grid;gap:6px;margin:18px 0}.manage-row{display:flex;align-items:center;gap:12px;min-height:52px;border:1px solid #d9ded1;border-radius:5px;padding:5px 9px 5px 6px}.manage-number{width:35px;height:37px;border-radius:3px;display:grid;place-items:center;background:var(--tab);color:white;font-size:12px;font-weight:bold;flex-shrink:0}.manage-name{flex:1;font-size:13px;overflow-wrap:anywhere}.manage-row small{display:block;color:#859181;font-size:10px;margin-top:3px}.manage-row .text-button{flex-shrink:0}.manage-actions{display:flex;gap:8px;flex-wrap:wrap}.backup-area{border-top:1px solid var(--line);margin-top:25px;padding-top:20px}.backup-area p{font-size:11px;color:#7d8979;line-height:1.7}.backup-area h3{font-size:13px;font-weight:500;margin:0 0 13px}.colour-options{display:grid;grid-template-columns:repeat(4,1fr);gap:7px;margin-top:8px}.colour-choice{display:flex;align-items:center;gap:6px;font-size:10px;margin:0;padding:8px 5px;border:1px solid #d5dacf;border-radius:4px;min-height:44px;cursor:pointer}.colour-choice:has(input:checked){border-color:#254e50;background:#e6ede1}.colour-choice input{position:absolute;opacity:0;width:1px;min-height:0}.colour-choice:focus-within{outline:2px solid #a7792f}.swatch{width:20px;height:20px;border-radius:50%;background:var(--swatch);flex-shrink:0}.search-results{display:grid;gap:8px;margin-top:15px}.search-hit{display:block;text-decoration:none;border:1px solid #d5dccd;padding:13px;border-radius:4px;font-size:13px}.search-hit small{display:block;color:#758773;font-size:10px;margin-bottom:6px}.search-hit:hover{background:#edf0e6}#toast{position:fixed;left:50%;bottom:25px;transform:translate(-50%,20px);opacity:0;pointer-events:none;z-index:50;background:#1e4143;color:#fff;padding:13px 20px;border-radius:6px;font-size:12px;max-width:90vw;box-shadow:0 7px 25px #122c3333;transition:.2s}#toast.show{opacity:1;transform:translate(-50%,0)}.skip-link{position:absolute;top:-100px;z-index:99;background:white;padding:15px}.skip-link:focus{top:0}.warning{color:#9b422e!important}.hidden-count{font-size:12px;color:#74846f;margin-top:19px}.hidden-count summary{cursor:pointer;min-height:44px;padding:12px 0}
@media(min-width:1100px){.desk{padding-top:38px}.book-shell,.book-page,.cover,.section-page{min-height:680px}.cover{padding-top:49px}.compass{margin-bottom:26px}.cover-description{margin-bottom:32px}.cover-bottom{padding-top:36px}}
@media(max-width:700px){.app-bar{padding:12px 18px;min-height:70px}.brand-mark{width:31px;height:36px;font-size:21px}.wordmark{font-size:8px;gap:8px;letter-spacing:1.3px}.wordmark b{letter-spacing:1.6px}.app-bar nav{gap:3px}.tool{font-size:10px;padding:8px 7px;gap:4px;flex-direction:column;line-height:1.2}.tool-icon{font-size:19px}.desk{padding:23px 52px 22px 17px}.book-topline{margin-left:5px;font-size:8px;letter-spacing:1.2px}.book-shell{margin-right:0}.number-tabs{width:39px;top:39px;gap:7px}.number-tab{width:39px;height:65px;font-size:13px;padding-left:4px;border-radius:0 6px 6px 0}.number-tab:hover,.number-tab[aria-current=page]{width:44px;padding-left:6px}.number-tab[aria-current=page]::after{right:4px;width:1px}.cover{padding:40px 22px 26px 36px}.cover::before{inset:14px 12px 14px 23px}.cover::after{width:17px}.cover-kicker{font-size:8px;letter-spacing:2px;margin-top:11px}.compass{width:88px;height:88px;margin:16px 0 24px}.cover h1{font-size:37px;letter-spacing:.2px}.cover-subtitle{font-size:11px;letter-spacing:2.3px}.cover-description{font-size:14px}.cover-bottom{font-size:8px;letter-spacing:1.5px;gap:8px}.cover-bottom::before,.cover-bottom::after{width:15px}.cover-tip{font-size:9px;line-height:1.6;max-width:190px}.cover-open{font-size:11px;padding:12px 20px;gap:15px}.desk-footer{font-size:9px;margin-left:4px;flex-wrap:wrap;gap:5px}.desk-footer>span:last-child{text-align:left}.section-page{padding:21px 18px 20px 23px}.section-heading{gap:12px;padding:14px 0 22px}.section-numeral{font-size:49px}.section-heading h1{font-size:24px}.section-heading p{font-size:10px}.alphabet{grid-template-columns:repeat(7,minmax(0,1fr));gap:4px;padding-bottom:17px}.letter-tab{min-height:42px;font-size:11px}.section-bar .eyebrow{font-size:8px;letter-spacing:1.1px}.section-bar .text-button{font-size:10px;padding-right:0}.alpha-heading{font-size:8px;letter-spacing:1px}.letter-header{padding:17px 0 13px}.letter-title{gap:7px}.letter-title h2{font-size:29px}.letter-title p{font-size:9px}.letter-header .button{font-size:10px;padding:10px}.empty-page{min-height:210px;padding:19px 12px}.empty-page h3{font-size:19px}.empty-page p{font-size:11px}.page-foot{font-size:8px;letter-spacing:.6px}.entry{padding:13px}.entry h3{font-size:20px}.entry-body{font-size:13px}dialog{padding:22px 18px}.colour-options{grid-template-columns:repeat(2,1fr)}}
@media(max-width:370px){.desk{padding-left:12px;padding-right:48px}.cover h1{font-size:31px}.cover-subtitle{font-size:10px;letter-spacing:1.5px}.cover-kicker{font-size:7px}.section-page{padding-left:17px;padding-right:12px}.wordmark{font-size:7px}.tool{font-size:9px;padding:7px 5px}.letter-tab{min-height:39px}.section-heading h1{font-size:22px}.section-numeral{font-size:43px}.cover-bottom{font-size:7px}.cover-open{padding:12px 15px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
/* Top tabs: weight 800 across both lines. Tab 1 shows "Bridge" / "Deck"
   stacked, both equal and bold. Tabs 2-7 show the serial on line 1 and
   "Deck" on line 2 at the same size and weight. */
.number-tab{font-weight:800}
.number-tab-named{padding:0 3px;text-align:center;line-height:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}
.number-tab-named:hover,.number-tab-named[aria-current=page]{padding:0 3px}
.number-tab-named span,.number-tab-named small{display:block;font-size:16px;font-weight:800;letter-spacing:.3px;line-height:1;color:#fff;text-shadow:0 1px 1px rgba(0,0,0,.18);margin:0;max-width:none;overflow:visible;text-overflow:clip;white-space:normal}
.number-tab small{display:block;font-size:inherit;font-weight:inherit;letter-spacing:inherit;margin-top:2px;max-width:none;overflow:visible;text-overflow:clip;white-space:nowrap}
@media(max-width:700px){.number-tab-named,.number-tab-named:hover,.number-tab-named[aria-current=page]{padding:0 2px}.number-tab-named span,.number-tab-named small{font-size:13px}}
@media(max-width:370px){.number-tab-named span,.number-tab-named small{font-size:11px}}
/* In-page search bar: full-width block in the LOWER part of each page, below
   the main content. Scope list and results pop upward over the page via
   absolute positioning — they never push the content. */
.top-search{width:100%;margin:18px 0 16px;position:relative;padding:10px 12px;background:#faf9f3;border:1px solid #e0dfd4;border-radius:4px;display:flex;flex-direction:column;gap:7px;box-shadow:0 1px 2px #0a1a1f08}
.top-search form{display:flex;gap:8px;align-items:center}
.top-search input{flex:1;min-height:40px;padding:8px 12px;border:1px solid #c9d1c3;border-radius:4px;background:#fffefa;color:#1b3238;font-size:14px}
.top-search input::placeholder{color:#9aa39a}
#top-search-scope-button{min-height:40px;padding:0 14px;border:1px solid #c9d1c3;background:#faf9f3;color:#35544f;border-radius:4px;font-size:12px;letter-spacing:.5px;white-space:nowrap;cursor:pointer}
#top-search-scope-button:hover{background:#eef0e5}
.top-search-results{position:absolute;left:0;right:0;bottom:calc(100% + 6px);z-index:21;background:#faf9f3;border:1px solid #e0dfd4;border-radius:4px;box-shadow:0 -10px 24px #0a1a1f22,0 -2px 6px #0a1a1f12}
.top-search-scope{display:flex;flex-wrap:wrap;gap:7px 12px;align-items:center;margin:6px 0 0;padding:0;background:transparent;border:0;border-radius:0;box-shadow:none}
.top-search-scope .top-scope-caption{flex:1 0 100%;margin:0 0 3px;font-size:10px;letter-spacing:1px;color:#788078;text-transform:uppercase}
.top-search-scope .top-scope-tick{display:inline-flex;align-items:center;gap:5px;font-size:11px;color:#3b544f;margin:0;padding:3px 5px;border-radius:3px}
.top-search-scope .top-scope-tick:hover{background:#eef0e5}
.top-search-scope .top-scope-tick input{min-height:0;width:15px;height:15px;accent-color:#254e50;margin:0}
.top-search-results{max-height:60vh;overflow-y:auto;padding:8px}
.top-search-count{margin:0 0 8px;font-size:11px;color:#788078;letter-spacing:.3px}
.top-search-empty{margin:0;font-size:12px;color:#8a9086}
.top-search-hit{display:block;text-decoration:none;color:inherit;padding:9px 10px;border-radius:3px;border-left:3px solid transparent;margin-bottom:4px}
.top-search-hit:hover{background:#eef0e5}
.top-search-hit small{display:block;font-size:10px;letter-spacing:1px;color:#758773;margin-bottom:3px}
.top-search-hit span{display:block;font-size:13px;color:#2e5146;overflow-wrap:anywhere}
.top-search-entry{border-left-color:#3d776e}
.top-search-note{border-left-color:#42718b}
.top-search-pdf{border-left-color:#a7792f}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media(max-width:700px){.top-search{padding:8px 10px;margin-top:14px;margin-bottom:14px}.top-search input{font-size:13px;min-height:38px}#top-search-scope-button{font-size:11px;padding:0 10px;min-height:38px}}
@media(max-width:370px){.top-search{padding:7px 8px}.top-search input{min-height:36px}#top-search-scope-button{min-height:36px}}
/* Each numbered divider holds only its own part of the alphabet. */
.alphabet{grid-template-columns:repeat(auto-fit,minmax(42px,1fr));max-width:100%;gap:7px}.letter-tab{min-height:46px}.assign-letters{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.assign-letter{position:relative;margin:0;padding:9px 4px;border:1px solid #d5dacf;border-radius:4px;text-align:center;cursor:pointer;font-size:12px;min-height:48px}.assign-letter input{position:absolute;opacity:0;width:1px;min-height:0}.assign-letter small{display:block;font-size:8px;color:#85927b;margin-top:3px}.assign-letter:has(input:checked){background:#254e50;color:#fff;border-color:#254e50}.assign-letter:has(input:checked) small{color:#b5c7b4}.assign-letter:focus-within{outline:2px solid #a7792f}
@media(max-width:700px){.alphabet{grid-template-columns:repeat(auto-fit,minmax(34px,1fr));gap:4px}.letter-tab{min-height:44px}.section-page .empty-page{min-height:290px}}
.number-tab span{display:block}.number-tab small{display:block;font-size:8px;letter-spacing:.3px;font-weight:400;margin-top:7px;max-width:50px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
@media(max-width:700px){.number-tabs{width:44px}.number-tab{width:44px}.number-tab:hover,.number-tab[aria-current=page]{width:46px}.number-tab small{font-size:7px;max-width:38px}}
.subject-index{margin:2px 0 0}.subject-index .eyebrow{font-size:9px;letter-spacing:1.2px;margin-bottom:10px}.subject-tabs{display:flex;gap:5px;overflow-x:auto;padding:0 0 8px;scrollbar-width:thin;scrollbar-color:#bcc7b6 transparent}.subject-tab{display:flex;align-items:center;gap:8px;flex:0 0 auto;max-width:230px;min-height:48px;border:1px solid #d2d9ca;border-radius:6px 6px 0 0;background:#eeeee4;color:#566e61;padding:9px 13px;text-align:left;font-size:12px}.subject-tab small{font-size:9px;opacity:.7}.subject-tab span{overflow-wrap:anywhere;line-height:1.3}.subject-tab[aria-current=page]{background:var(--accent);border-color:var(--accent);color:white}.subject-index+.entries .entry{min-height:205px;border-top:3px solid var(--accent)}
@media(max-width:700px){.subject-tab{max-width:185px;font-size:11px;padding:9px 10px}.subject-index+.entries .entry{min-height:270px}.letter-header .button{font-size:10px}}
@media(max-width:700px){.entry-body{font-size:15px}.empty-page p{font-size:12px}.section-heading p{font-size:11px}}
/* Front-cover reference search and links between subject pages. */
.sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;padding:0;margin:-1px;border:0}.cover-search-wrap{position:relative;width:min(340px,100%);margin-top:20px;text-align:left;z-index:2}.cover-search-wrap form{display:flex;background:#ffffff0a;border:1px solid #a9b8ab66;border-radius:4px;overflow:hidden}.cover-search-wrap input{min-width:0;border:0!important;border-radius:0;background:transparent!important;color:#e8dfcc!important;min-height:44px;font-size:12px;padding:12px 14px;outline-offset:-3px}.cover-search-wrap input::placeholder{color:#b0bcb0;opacity:1}.cover-search-wrap button{border:0;background:transparent;color:#d7c7a5;min-width:45px;font-size:23px;min-height:44px}.cover-search-results{position:absolute;top:calc(100% + 7px);left:0;right:0;max-height:155px;overflow:auto;background:#fbfaf4;color:#27443d;border:1px solid #c5cfba;border-radius:5px;box-shadow:0 12px 30px #0a20254d;padding:6px}.cover-search-results .search-hit{padding:9px 12px;margin:5px 0;font-size:12px}.cover-search-results .search-hit small{font-size:10px;letter-spacing:1px;font-weight:600;color:#497461}.search-count{font-size:11px;color:#7b8a75;padding:5px 7px;margin:0}.search-hit{position:relative;padding-right:35px}.result-arrow{position:absolute;right:13px;top:20px;color:#6c8677}.cover-bottom{padding-top:23px}.cover-tip{margin-top:12px}.related-pages{margin-top:20px;border-top:1px solid #d6ddcd;padding-top:15px}.related-pages h4{font-size:10px;text-transform:uppercase;letter-spacing:1.3px;color:#73816b;margin:7px 0 10px;font-weight:500}.related-link{display:grid;grid-template-columns:1fr auto;gap:3px 12px;padding:10px 12px;border:1px solid #d9decf;border-radius:4px;margin-bottom:7px;text-decoration:none;background:#eef1e7;font-size:13px;line-height:1.4;overflow-wrap:anywhere}.related-link small{grid-column:1;font-size:9px;color:#6a8067;letter-spacing:1px}.related-link span{grid-column:1}.related-link b{grid-column:2;grid-row:1 / 3;align-self:center;font-weight:400}.related-link:hover{background:#e2e9d9}.link-picker{margin-top:19px;border:1px solid #d5dccb;border-radius:5px;padding:0 12px}.link-picker summary{cursor:pointer;min-height:46px;padding:14px 0;font-size:12px}.link-picker summary span{color:#819077}.related-options{max-height:190px;overflow-y:auto;margin-top:8px}.related-option{display:flex;align-items:flex-start;gap:10px;margin:0;border-top:1px solid #e2e7d9;padding:11px 3px;font-size:12px;line-height:1.5;cursor:pointer}.related-option[hidden]{display:none}.related-option input{width:17px!important;height:17px;min-height:17px!important;margin:3px 0 0;flex-shrink:0;accent-color:#2c5652}.related-option small{display:block;color:#7e8e73;font-size:9px;letter-spacing:.8px}.related-hint{font-size:11px;color:#819077;line-height:1.6}.cover .cover-description{margin-bottom:23px}
@media(max-width:700px){.cover-search-wrap input{font-size:11px;padding-left:10px}.cover-search-wrap{margin-top:18px}.cover-search-results{max-height:150px}.cover-bottom{padding-top:21px}.related-link{font-size:13px}}
.cover-search-results{top:auto;bottom:calc(100% + 7px);max-height:235px}
.source-card{padding:17px;border:1px solid #d5dccb;border-radius:5px;background:#eff2e8;margin:17px 0}.source-card p:not(.eyebrow){font-size:12px;color:#7a886f;line-height:1.6;margin:12px 0 0}.source-card .text-button{padding-left:0}.abbreviation-list{margin:17px 0 0}.abbreviation-list>div{display:grid;grid-template-columns:110px 1fr;gap:12px;border-bottom:1px solid #e0e4d7;padding:12px 0;font-size:13px;line-height:1.5}.abbreviation-list dt{font-weight:bold;color:#42664f;overflow-wrap:anywhere}.abbreviation-list dd{margin:0;color:#5e6f58;overflow-wrap:anywhere}@media(max-width:700px){.abbreviation-list>div{grid-template-columns:75px 1fr;gap:9px;font-size:13px}.source-card{padding:13px}}
/* Draft layout: numbered dividers on top, deeper tabs along the right edge. */
.book-shell{margin-top:75px}.number-tabs{left:22px;right:0;top:-55px;width:auto;flex-direction:row;gap:7px;z-index:-1}.number-tab{flex:1;min-width:0;width:auto;height:55px;padding:5px 3px 3px;border-radius:8px 8px 0 0;box-shadow:2px -2px 6px #18343b18;transition:transform .15s}.number-tab:hover,.number-tab[aria-current=page]{width:auto;padding:5px 3px 3px;transform:translateY(-5px)}.number-tab small{max-width:none;font-size:9px;letter-spacing:.6px;margin-top:6px}.number-tab[aria-current=page]::after{left:12px;right:12px;top:6px;bottom:auto;width:auto;height:2px}.desk:has(.side-rail:not([hidden])){padding-right:120px}.side-rail{position:absolute;top:36px;bottom:22px;left:100%;width:105px;z-index:-1}.side-rail[hidden]{display:none}.side-tabs{position:sticky;top:16px;display:flex;flex-direction:column;align-items:flex-start;gap:7px;width:100%;max-height:calc(100dvh - 32px)}.side-tab-list{display:flex;flex-direction:column;gap:8px;padding:2px 7px 6px 0;overflow-y:auto;max-height:calc(100dvh - 150px);width:100%;scrollbar-width:thin;scrollbar-color:#b2bcae transparent}.side-tab{flex:none;position:relative;width:calc(100% - 5px);min-height:59px;border:0;border-radius:0 8px 8px 0;padding:10px 10px 10px 9px;background:var(--tab);color:white;box-shadow:2px 3px 5px #18343b20;text-align:center;font-size:18px;font-weight:600}.side-tab:hover{filter:brightness(1.1)}.side-tab[aria-current=page]::after{content:'';position:absolute;right:5px;top:10px;bottom:10px;width:2px;border-radius:1px;background:#ffffffaf}.side-tab span{display:block}.side-tab small{display:block;margin-top:5px;font-size:10px;line-height:1.35;font-weight:400;overflow-wrap:anywhere}.side-back{background:#e0e4d7;color:#456153;min-height:53px;padding:6px}.side-back span{font-size:18px}.side-back small{font-size:10px;font-weight:bold}.side-add{background:#dfe7d8;color:#43614e;min-height:51px}.side-add span{font-size:23px;line-height:1}.side-add small{font-size:10px}.rail-caption{font-size:8px;letter-spacing:1.2px;color:#73816b;display:block;padding:7px 8px 3px}.side-subject{font-size:12px}.side-subject small{font-size:10px}.top-letter-index,.top-subject-index{display:none}.duplicate-tabs .top-letter-index{display:flex}.duplicate-tabs nav.top-letter-index{display:grid}.duplicate-tabs .top-subject-index{display:block}.letter-header{border-top:1px solid var(--line);margin-top:8px}.layout-choice{border-top:1px solid var(--line);margin-top:24px;padding-top:20px}.layout-choice h3{font-size:13px;font-weight:500;margin:0}.layout-choice label{display:flex;align-items:center;gap:10px;line-height:1.5;cursor:pointer}.layout-choice input{width:18px!important;min-height:18px!important;height:18px;flex-shrink:0;accent-color:#254e50}.layout-choice p{font-size:11px;line-height:1.6;color:#7d8979}.section-page .empty-page{margin-top:15px}.book-page{z-index:0}
@media(max-width:700px){.desk{padding-right:19px}.desk:has(.side-rail:not([hidden])){padding-right:69px}.book-shell{margin-top:66px}.number-tabs{left:9px;gap:4px;top:-49px}.number-tab,.number-tab:hover,.number-tab[aria-current=page]{width:auto;height:49px;padding:6px 1px 3px;font-size:13px}.number-tab small{font-size:7px;max-width:none;margin-top:5px}.number-tab[aria-current=page]::after{left:6px;right:6px;top:4px;height:1px}.side-rail{width:63px;top:25px}.side-tab-list{padding-right:4px;gap:7px}.side-tab{width:calc(100% - 4px);min-height:56px;padding:9px 5px;font-size:16px;border-radius:0 6px 6px 0}.side-tab small{font-size:8px;margin-top:5px}.side-subject{font-size:11px}.side-subject small{font-size:8px;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.side-back{min-height:48px;padding:5px}.side-back small{font-size:9px}.side-add{min-height:49px}.rail-caption{font-size:7px;letter-spacing:.5px;padding-left:6px}.cover{padding-left:32px;padding-right:26px}.book-topline{font-size:8px}.side-tabs{top:8px;max-height:calc(100dvh - 16px)}}
@media(max-width:370px){.desk:has(.side-rail:not([hidden])){padding-left:11px;padding-right:65px}.side-rail{width:61px}.number-tabs{gap:3px;left:7px}.number-tab{font-size:12px}.number-tab small{font-size:6px}.cover h1{font-size:34px}}
@media(max-width:700px){.desk:has(.side-rail:not([hidden])) .number-tabs{right:-53px}}
/* Reading pages contain reference links; editing tools stay above the book. */
.tool[hidden]{display:none}.section-page .section-bar{min-height:28px}.section-page .entry{border-top:3px solid var(--accent)}.entry-head{min-height:21px}.section-heading{padding-top:18px}.side-tab:focus-visible{outline-offset:-3px}.number-tab:focus-visible{outline-offset:-4px}
/* Keep touch targets readable as the number of dividers changes. */
.number-tabs{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(48px,1fr);overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#aeb9aa transparent;padding-top:6px;top:-61px;gap:6px;overscroll-behavior-x:contain}.number-tab{min-width:48px;min-height:55px}.number-tab:hover,.number-tab[aria-current=page]{transform:translateY(-3px)}
@media(max-width:700px){.number-tabs{grid-auto-columns:minmax(46px,1fr);gap:4px;top:-56px;padding-top:6px;scrollbar-width:none}.number-tab,.number-tab:hover,.number-tab[aria-current=page]{min-width:46px;min-height:50px;height:50px;font-size:15px}.number-tab small{font-size:8px}.side-tab{min-width:48px;min-height:58px}.side-tab span{font-size:18px}.side-subject span{font-size:13px}.side-tab small{font-size:10px}.side-subject small{font-size:10px;line-height:1.35}.side-back{min-height:50px}.side-back small{font-size:10px}.side-add{min-height:54px}.section-heading h1{font-size:25px}.entry-body{font-size:16px}.abbreviation-list>div{font-size:14px}.source-card p:not(.eyebrow){font-size:13px}.empty-page p{font-size:13px}.side-tab-list{max-height:calc(100dvh - 155px)}}
/* Three-tap route: number above, letter beside, subject link on the page. */
.subject-links{display:grid;gap:12px;margin:14px 0 22px}.subject-link{position:relative;display:flex;flex-direction:column;justify-content:center;gap:8px;min-height:93px;padding:18px 45px 18px 20px;border:1px solid #d0d8c7;border-left:4px solid var(--accent);border-radius:5px;background:#f0f2e8;text-decoration:none;color:#2e5146;overflow-wrap:anywhere}.subject-link:hover{background:#e5ebda}.subject-link-code{font-size:10px;letter-spacing:1.3px;color:#729070;font-weight:600}.subject-link strong{font-size:19px;line-height:1.35;font-family:Georgia,serif;font-weight:400}.subject-link-arrow{position:absolute;right:17px;top:calc(50% - 11px);font-size:22px;font-weight:400;color:#617f61}.subject-back-link{display:inline-flex;align-items:center;min-height:44px;font-size:12px;color:#55754f;margin:0 0 12px;text-decoration:none}.subject-back-link:hover{text-decoration:underline}
@media(max-width:700px){.subject-link{min-height:92px;padding:16px 35px 16px 15px}.subject-link strong{font-size:20px}.subject-link-code{font-size:11px;letter-spacing:.6px}.subject-link-arrow{right:12px}.subject-back-link{font-size:13px}}

.side-tab .subject-count{font-size:11px;font-variant-numeric:tabular-nums;letter-spacing:.4px;opacity:.9}

/* Material ownership is independent of the section-tab colour. */
.origin-badge{display:inline-flex;align-items:center;width:fit-content;max-width:100%;padding:5px 8px;border:1px solid;border-radius:4px;font-size:10px!important;line-height:1.35;font-family:Arial,sans-serif;font-weight:600;letter-spacing:0;white-space:normal}.origin-core{color:#40514b;background:#e6ebe4;border-color:#bfcabd}.origin-personal{color:#174f82;background:#e4f1ff;border-color:#95bbdf}.content-legend{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}.section-page .entry.material-personal{border-top-color:#337ebd;background:#f5faff}.subject-link.material-personal,.search-hit.material-personal,.related-link.material-personal{border-left:4px solid #337ebd;background:#f0f7fe}.subject-link.material-core{border-left-color:#526b60}.search-hit .origin-badge{margin-top:8px}.related-link .origin-badge{grid-column:1}.entry-head{flex-wrap:wrap}.related-link b{grid-row:1 / 4}.subject-link .origin-badge{margin-top:1px}.app-bar nav{flex-wrap:wrap}.tool{flex-shrink:0}
@media(max-width:700px){.origin-badge{font-size:10px!important}.entry{padding:15px 13px}.entry-head{gap:7px}.content-legend{gap:6px}.app-bar{align-items:flex-start}.app-bar nav{gap:4px;justify-content:flex-end}}

/* Top tabs — final id-scoped overrides. Several later .number-tab rules
   in this stylesheet set `.number-tab small` to tiny light text; these
   id-scoped rules win by specificity so the second line (Deck) matches
   the serial number's size and weight. */
#number-tabs .number-tab{font-weight:800}
#number-tabs .number-tab small{display:block;font-size:inherit;font-weight:inherit;letter-spacing:inherit;margin-top:2px;max-width:none;overflow:visible;text-overflow:clip;white-space:nowrap}
#number-tabs .number-tab-named{padding:0 3px;text-align:center;line-height:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px}
#number-tabs .number-tab-named:hover,#number-tabs .number-tab-named[aria-current=page]{padding:0 3px}
#number-tabs .number-tab-named span,#number-tabs .number-tab-named small{display:block;font-size:16px;font-weight:800;letter-spacing:.3px;line-height:1;color:#fff;text-shadow:0 1px 1px rgba(0,0,0,.18);margin:0;max-width:none;overflow:visible;text-overflow:clip;white-space:normal}
@media(max-width:700px){#number-tabs .number-tab-named,#number-tabs .number-tab-named:hover,#number-tabs .number-tab-named[aria-current=page]{padding:0 2px}#number-tabs .number-tab-named span,#number-tabs .number-tab-named small{font-size:13px}}
@media(max-width:370px){#number-tabs .number-tab-named span,#number-tabs .number-tab-named small{font-size:11px}}
/* Two-page spread. Off by default until the shell says there is room for it;
   .is-spread is added by book.js, never by a media query alone, because the
   reader can turn it off on a wide screen. Nothing outside this block is
   altered: single-page view is exactly as it was. */
.spread-toggle{min-height:44px;font-size:16px;padding:8px 14px;margin-right:14px;border:1px solid var(--line);border-radius:4px;background:transparent;color:var(--ink);cursor:pointer;vertical-align:middle}
.spread-toggle:hover{background:#0000000a}
.spread-toggle[aria-pressed="true"]{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.spread-toggle:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.topline-right{display:inline-flex;align-items:center;gap:0}

.book-shell.is-spread{display:flex;align-items:stretch}
.book-shell.is-spread .book-page{flex:1 1 50%;min-width:0}
.book-shell.is-spread .book-page-left{border-radius:5px 0 0 5px;box-shadow:0 18px 38px #263b3d23;border-right:1px solid var(--line)}
.book-shell.is-spread #book-page{border-radius:0 8px 8px 0}
.book-page-left[hidden]{display:none}
.book-page-left .spread-placeholder{padding:48px 28px;color:var(--muted);font-size:16px;line-height:1.6;text-align:center}

/* ── The open book fills the screen ───────────────────────────────────────
   Applied only when a section is open (body.book-open, set by book.js), so
   the front cover is untouched. The shell becomes the binding: tabs sit on
   it, inside the book's own edge, and the paper pages sit within it. */
body.book-open{display:flex;flex-direction:column;min-height:100dvh}
body.book-open .desk{flex:1;display:flex;flex-direction:column;width:100%;max-width:none;margin:0;padding:0;min-height:0}
body.book-open .book-topline{order:2;margin:0;padding:8px 18px;font-size:11px;background:#e9e8e2;border-top:1px solid #d6d7ce}
body.book-open .desk-footer{order:3;margin:0;padding:8px 18px;font-size:11px;background:#e9e8e2}

/* The binding: a dark surround the tabs live on. */
body.book-open .book-shell{order:1;flex:1;min-height:0;margin:0;
 padding:62px 104px 16px 20px;
 background:linear-gradient(90deg,#102a31,#17343c 22%,#17343c 78%,#102a31);
 box-shadow:inset 0 2px 10px #0000003d}
body.book-open .page-stack{display:none}

/* Paper pages sit inside the binding. */
body.book-open .book-page{height:100%;min-height:0;overflow:auto;border-radius:3px;
 box-shadow:0 10px 30px #04161b66}
body.book-open .book-shell.is-spread{display:flex;align-items:stretch;gap:0}
body.book-open .book-shell.is-spread .book-page{flex:1 1 50%;min-width:0}

/* Numbered tabs: along the top, on the binding, inside the book. */
body.book-open #number-tabs{top:6px;left:20px;right:104px;z-index:2;padding-top:0}
body.book-open .number-tab{height:50px;min-height:50px}

/* Letter tabs: down the right, on the binding, inside the book. */
body.book-open .side-rail{left:auto;right:8px;top:62px;bottom:16px;width:92px;z-index:2}
body.book-open .side-tabs{max-height:none;height:100%}
body.book-open .side-tab-list{max-height:none;flex:1}
body.book-open .rail-caption{color:#a9bcb4}

@media(max-width:700px){
 body.book-open .book-shell{padding:56px 60px 10px 10px}
 body.book-open #number-tabs{left:10px;right:60px;top:4px}
 body.book-open .side-rail{right:5px;top:56px;bottom:10px;width:52px}
}
/* The spread toggle lives on the binding, inside the book. */
body.book-open .spread-toggle{position:absolute;right:104px;top:14px;z-index:3;margin:0;
 min-height:38px;padding:6px 12px;font-size:15px;
 border-color:#4d6e72;color:#dfeae2;background:#0e262c}
body.book-open .spread-toggle:hover{background:#17343c}
body.book-open .spread-toggle[aria-pressed="true"]{background:#dfeae2;color:#0e262c;border-color:#dfeae2}
@media(max-width:700px){body.book-open .spread-toggle{right:60px;top:10px}}
/* Keep the numbered tabs clear of the toggle. The toggle only appears on
   wide screens, so the narrow-screen rule above is unaffected. */
body.book-open #number-tabs{right:220px}
@media(max-width:1099px){body.book-open #number-tabs{right:104px}}
@media(max-width:700px){body.book-open #number-tabs{right:60px}}
/* Phone: the letter tabs need their full width inside the binding. */
@media(max-width:700px){
 body.book-open .book-shell{padding:56px 72px 10px 8px}
 body.book-open #number-tabs{left:8px;right:72px}
 body.book-open .side-rail{right:4px;width:66px}
}

/* Book tools on the binding. The white bar outside the book is gone; these
   live inside it. On the cover there is no binding, so they sit on the
   cover's own bottom edge. */
.book-tools{position:absolute;left:20px;bottom:10px;z-index:3;display:flex;gap:6px;align-items:center}
.book-tools .tool{color:#cfe0d8;font-size:15px;min-height:44px;padding:8px 12px;border-radius:5px}
.book-tools .tool:hover{background:#ffffff1f}
.book-tools .tool-icon{font-size:19px}
body.book-open .book-shell{padding-bottom:58px}
@media(max-width:700px){
 .book-tools{left:8px;bottom:6px;gap:2px}
 .book-tools .tool{font-size:12px;padding:8px 7px;flex-direction:column;gap:3px;line-height:1.2}
 .book-tools .tool-icon{font-size:17px}
 body.book-open .book-shell{padding-bottom:62px}
}
/* On the cover the shell has no binding: sit the tools on the cover edge. */
body:not(.book-open) .book-tools{left:0;right:0;bottom:0;justify-content:center;
 background:#122c34;border-top:1px solid #2b4a50;padding:2px 8px}
body:not(.book-open) .book-shell{padding-bottom:0}
/* The cover is taller than the screen, so pin its tools to the bottom edge. */
body:not(.book-open) .book-tools{position:fixed;z-index:30;box-shadow:0 -6px 18px #0a1f2433}
/* Hold the open book inside the window: the shell takes what is left after
   the two thin strips, and the pages scroll inside themselves. */
body.book-open{height:100dvh;min-height:0;overflow:hidden}
body.book-open .desk{flex:1 1 auto;min-height:0}
body.book-open .book-shell{flex:1 1 auto;min-height:0}

/* ── Inside the cover: same treatment as the front cover ─────────────────
   Margins evened up: sides about a third of the old right-hand gap, with a
   little more above and below. Tabs now sit on the page edge, as in a real
   tabbed book, instead of out on a wide margin. */
body.book-open .book-shell{
 padding:52px 34px 54px;
 background:
  radial-gradient(ellipse at 88% 6%,#2b484d55,transparent 60%),
  repeating-linear-gradient(102deg,#ffffff02 0,#ffffff02 1px,transparent 1px,transparent 4px),
  #17343c}
/* The gold hairline from the cover, drawn just inside the binding. */
body.book-open .book-shell::before{content:'';position:absolute;
 inset:44px 26px 46px 26px;border:1px solid #b49d635f;border-radius:2px;
 pointer-events:none;z-index:1}
/* The spine shadow down the left edge, as on the cover. */
body.book-open .book-shell::after{content:'';position:absolute;left:0;top:0;bottom:0;width:20px;
 background:linear-gradient(90deg,#07191c9c,#27474a5f 45%,#0d242a55 70%,transparent);
 pointer-events:none;z-index:1}

/* Numbered tabs along the top, overlapping the page edge like real tabs. */
body.book-open #number-tabs{top:4px;left:34px;right:150px}
body.book-open .number-tab{height:46px;min-height:46px}

/* Letter tabs on the right page edge. */
body.book-open .side-rail{left:auto;right:6px;top:52px;bottom:54px;width:72px}
body.book-open .side-tab{min-height:52px;font-size:15px;padding:8px 6px}
body.book-open .side-tab small{font-size:9px;margin-top:3px}

/* Tools and toggle sit on the binding, clear of the hairline. */
body.book-open .book-tools{left:34px;bottom:12px}
body.book-open .spread-toggle{right:34px;top:8px}

@media(max-width:1099px){body.book-open #number-tabs{right:92px}}
@media(max-width:700px){
 body.book-open .book-shell{padding:46px 26px 50px}
 body.book-open .book-shell::before{inset:38px 18px 42px 18px}
 body.book-open #number-tabs{left:26px;right:70px;top:3px}
 body.book-open .side-rail{right:4px;top:46px;bottom:50px;width:64px}
 body.book-open .book-tools{left:26px;bottom:8px}
}
/* Tabs sit on the page edge, so keep the page's own content clear of them. */
body.book-open #book-page{padding-right:68px}
@media(max-width:700px){body.book-open #book-page{padding-right:58px}}
/* The spine: a fold down the middle of the split, so it reads as one book. */
body.book-open .book-shell.is-spread .book-page-left{
 border-right:0;border-radius:3px 0 0 3px;
 box-shadow:inset -14px 0 18px -14px #0b2228b3, 0 10px 30px #04161b66}
body.book-open .book-shell.is-spread #book-page{
 border-radius:0 3px 3px 0;
 box-shadow:inset 14px 0 18px -14px #0b2228b3, 0 10px 30px #04161b66}
body.book-open .book-shell.is-spread::after{z-index:2}
body.book-open .book-shell.is-spread .spread-spine{position:absolute;top:0;bottom:0;left:50%;
 width:3px;margin-left:-1.5px;z-index:2;pointer-events:none;
 background:linear-gradient(90deg,#0d242a00,#0b2228cc 45%,#0b2228cc 55%,#0d242a00)}
