:root{color-scheme:light;--paper:#fff;--ink:#000;--muted:#595959;--line:#ddd;--link:#1d5cb4;--link-hover:#0d1cb4;--header:#d9d8d1;--panel:#edece6;--panel-border:#b9b7af}
*{box-sizing:border-box}html{scroll-padding-top:20px;-webkit-text-size-adjust:100%}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif}a{color:var(--link);text-underline-offset:3px}a:hover{color:var(--link-hover)}:is(a,input,button,summary,textarea):focus-visible{outline:2px solid var(--link);outline-offset:3px}button,input,textarea{font:inherit}button{cursor:pointer;min-height:36px;padding:5px 12px;border:1px solid #999;border-radius:3px;background:var(--panel);color:var(--ink)}button:hover{background:var(--header)}[hidden]{display:none!important}.visually-hidden,.skip:not(:focus){position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.skip:focus{position:absolute;z-index:50;top:5px;left:10px;background:white;padding:10px}
.book-header{max-width:1120px;margin:auto;min-height:60px;padding:10px 16px;display:flex;align-items:center;gap:24px;background:var(--header)}.book-header a{text-decoration:none}.book-header .brand{font-size:24px;font-weight:600;color:#000;white-space:nowrap;margin-right:auto}.book-header nav{display:flex;align-items:center;gap:18px;font-size:14px}.book-header nav a{display:flex;align-items:center;min-height:40px}.quick-search{position:relative;width:230px;flex:0 0 230px;margin:0}.quick-search input{width:100%;height:38px;padding:6px 9px;border:1px solid #767676;border-radius:3px;background:white;font-size:16px}.quick-search input::placeholder{color:#595959;opacity:1}#search-results:empty{display:none}#search-results{position:absolute;top:calc(100% + 6px);right:0;z-index:20;width:min(560px,calc(100vw - 32px));max-height:65vh;overflow:auto;padding:10px 14px;border:1px solid #999;background:#fff;box-shadow:0 3px 8px #0002;font-size:14px}#search-results p{margin:0 0 8px}#search-results a,#page-search-results>a{display:block;padding:10px 2px;border-top:1px solid var(--line);text-decoration:none}#search-results small,#page-search-results small{display:block;color:var(--muted);font-size:13px;line-height:1.5}#search-results strong,#page-search-results strong{font-weight:400}
.breadcrumbs{max-width:1120px;margin:auto;padding:8px 16px;background:var(--panel);font-size:13px;line-height:1.8;overflow-wrap:anywhere}.breadcrumbs ol{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:0 6px}.breadcrumbs li+li::before{content:'/';margin-right:6px;color:#555}.breadcrumbs a{text-decoration:none}.breadcrumbs [aria-current=page]{color:var(--ink)}
.reading-layout{max-width:1120px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) 240px;gap:28px;padding:16px}.reading-layout main{grid-column:1;grid-row:1;min-width:0;max-width:100%;overflow-wrap:anywhere;padding-bottom:24px}.reading-layout main:focus{outline:none}.sidebar{grid-column:2;grid-row:1;position:sticky;top:16px;align-self:start;min-width:0;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);overflow:auto;scrollbar-gutter:stable;font-size:13px;line-height:1.6;padding-bottom:4px}.sidebar h2{font-size:15px;margin:0 0 10px}.sidebar ol{padding:0;list-style:none}.sidebar a{text-decoration:none}.sidebar .section-list li{padding:3px 0;margin:0}.sidebar [aria-current=page]{font-weight:bold}.sidebar summary{cursor:pointer}.chapter-navigation>summary{display:none}.page-tools{display:grid;justify-items:start;gap:7px;margin:18px 0;border-top:1px solid var(--line);padding-top:14px}.page-tools a{min-height:28px;display:flex;align-items:center}.page-tools button{font-size:13px}.page-tools label{display:flex;align-items:center;gap:7px;min-height:32px}.page-tools input{width:16px;height:16px}.all-chapters{border-top:1px solid var(--line);padding-top:12px}.all-chapters summary{padding:6px 0}.all-chapters li{margin:8px 0}.all-chapters ol{padding-left:3px}.copy-status{font-size:13px;color:var(--muted)}
.page-navigation{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:20px;border-bottom:1px solid var(--line);padding:0 0 12px;margin-bottom:20px;font-size:13px;line-height:1.5}.page-navigation a{text-decoration:none;min-height:44px;display:flex;flex-direction:column;justify-content:center}.pager-next{text-align:right}.page-navigation small{font-size:12px;color:var(--muted);display:block}.pager-boundary{font-size:12px;color:var(--muted);align-self:center}.page-navigation[aria-label$=bottom]{border-top:1px solid var(--line);border-bottom:0;padding:14px 0 0;margin-top:30px}
h1,h2,h3,h4{color:var(--ink);font-weight:500;line-height:1.4;scroll-margin-top:20px}h1{font-size:26px;margin:0 0 16px}h2{font-size:21px;margin:24px 0 12px}h3{font-size:18px}p{margin:12px 0}.eyebrow,.tag-caption{font-size:12px;color:var(--muted);margin:0 0 8px}.eyebrow{letter-spacing:0;text-transform:none}.tag-caption code{font-size:12px}article[class^=env-]{min-width:0;border:0;padding:0;margin:20px 0}.environment-identifier{font-weight:600;text-decoration:none}.env-proof{font-size:16px}.equation{max-width:100%;overflow-x:auto;padding:6px 0}mjx-container[display=true]{overflow-x:auto;overflow-y:hidden;max-width:100%;padding:8px 0}mjx-container.wide-math{display:block;max-width:100%;overflow-x:auto;overflow-y:hidden;padding:8px 0;margin:.8em 0}mjx-container:focus-visible,.source-float:focus-visible{outline:2px solid var(--link);outline-offset:3px}.tag-id{display:none;font:11px/1.6 monospace;color:var(--muted);margin-left:8px}[data-show-tags=true] .tag-id{display:inline}.formalization-badge{font-family:Arial,sans-serif!important}.book-footer{font-size:12px;color:var(--muted);border-top:1px solid var(--line);padding-top:16px;margin-top:30px}.citation{border-top:1px solid var(--line);padding:12px 0;margin:18px 0}.citation summary{color:var(--link);cursor:pointer;font-size:14px;min-height:32px}.citation label{display:block;font-size:13px;margin:10px 0 4px}.citation textarea{display:block;width:100%;max-width:100%;min-height:170px;padding:9px;font:12px/1.6 monospace;resize:vertical;border:1px solid #999;background:#fafafa;color:#000;white-space:pre}.citation button{margin:8px 8px 0 0;font-size:13px}.bibliography-entry{margin:20px 0;font-size:15px}.reading-layout ul{padding-left:24px}
.numbered-equation{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:12px;align-items:center}.numbered-equation>.equation-label{grid-column:2;grid-row:1;white-space:nowrap;text-align:right}.numbered-equation>div{grid-column:1;grid-row:1;min-width:0}.numbered-equation>[data-gerby-tag]{grid-column:1/-1;grid-row:2;justify-self:end}.equation-label a[data-tag]::before{content:'('}.equation-label a[data-tag]::after{content:')'}
@media(max-width:999px){.reading-layout{display:flex;flex-direction:column;gap:14px}.sidebar{position:static;max-height:none;overflow:visible;order:0;padding:0;font-size:14px}.reading-layout main{order:1;width:100%}.chapter-navigation>summary{display:block;min-height:44px;padding:10px 12px;background:var(--panel);border:1px solid var(--panel-border);border-radius:3px;cursor:pointer}.reader-tools{padding:14px;border:1px solid var(--line);border-top:0;max-height:65vh;overflow:auto}.sidebar .section-list a{display:block;min-height:40px;padding:6px 0}.sidebar .page-tools{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 16px}.all-chapters nav{max-height:40vh;overflow:auto}.book-header{gap:16px}.book-header nav{gap:14px}.quick-search{width:220px;flex-basis:220px}}
@media(max-width:699px){.book-header{flex-wrap:wrap;gap:7px 12px;padding:8px 12px}.book-header .brand{font-size:22px}.book-header nav{font-size:12px;gap:12px}.book-header nav a{min-height:36px}.quick-search{width:100%;flex-basis:100%}.quick-search input{height:42px}#search-results{width:100%;max-height:55vh}.breadcrumbs{padding:8px 12px;font-size:12px}.reading-layout{padding:12px;gap:12px}.reading-layout main{font-size:16px}h1{font-size:23px}h2{font-size:20px}.page-navigation{gap:12px;font-size:13px}.page-navigation small{font-size:11px}button{min-height:44px}.citation summary{min-height:44px;padding:8px 0}.book-footer{padding-bottom:env(safe-area-inset-bottom)}}
@media print{.book-header,.sidebar,.breadcrumbs,.page-navigation,.comments-panel,.citation,.skip{display:none}.reading-layout{display:block;padding:0}.reading-layout main{font-size:12pt;max-width:none}.book-footer{margin-top:20px}}

/* Keep accessible MathML clipped without extending the mobile scroll area. */
mjx-container mjx-assistive-mml{width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)}

.book-header .brand{display:inline-flex;align-items:center;gap:8px}.brand-mascot{display:block;width:40px;height:40px;object-fit:contain;flex:none}
