@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:wght@400;600;700&family=Noto+Serif:ital,wght@0,400;0,700;1,400&display=swap');
/* gutsaga.tech reader layer for the English web edition: top bar, chapter sidebar,
   previous/next, search, theme and text size. Book content and figures untouched. */
:root{--gr-top:58px;--gr-side:300px;--gr-ink:#162d42;--gr-muted:#5f7283;--gr-line:#e1e7ee;--gr-accent:#1AB4DF;--gr-active:#0f4c5c;--gr-bg:#f3f6f9;--gr-side-bg:#f7f9fb;--gr-card:#fff}
html.gr{scroll-padding-top:calc(var(--gr-top) + 16px)}
body.gr{background:var(--gr-bg)!important}
body.gr>.sitebar,body.gr>.toc-toggle,body.gr .reader-footer,body.gr .reader-panel,body.gr .panel-screen{display:none!important}
html body.gr{padding:calc(var(--gr-top) + 4px) 16px 40px calc(var(--gr-side) + 16px)!important;box-sizing:border-box;max-width:none!important;margin:0!important;width:auto!important}
.gr-top{position:fixed;top:0;left:0;right:0;height:var(--gr-top);z-index:50;display:flex;align-items:center;gap:14px;padding:0 18px;background:#fff;border-bottom:1px solid var(--gr-line);font:500 14px/1.3 system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--gr-ink)}
.gr-top a{color:var(--gr-ink);text-decoration:none}
.gr-title{font-weight:700;font-size:16px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.gr-site{color:var(--gr-muted)!important;font-size:13px;white-space:nowrap}
.gr-sp{flex:1}
.gr-btn{appearance:none;border:1px solid var(--gr-line);background:#fff;color:var(--gr-ink);border-radius:8px;height:34px;padding:0 11px;font:600 13px system-ui,sans-serif;cursor:pointer;display:inline-flex;align-items:center;gap:6px;white-space:nowrap}
.gr-btn:hover{border-color:#b9c8d6}
.gr-btn[disabled]{opacity:.35;cursor:default}
.gr-pg{display:inline-flex;align-items:center;gap:6px}
.gr-pg span{color:var(--gr-muted);font-size:12.5px;min-width:44px;text-align:center}
.gr-opt{display:inline-flex;align-items:center;gap:6px;color:var(--gr-muted);font-size:12.5px}
.gr-opt select{height:34px;border:1px solid var(--gr-line);border-radius:8px;background:#fff;color:var(--gr-ink);font:600 13px system-ui,sans-serif;padding:0 6px}
.gr-menu{display:none}
.gr-side{position:fixed;top:var(--gr-top);bottom:0;left:0;width:var(--gr-side);overflow-y:auto;background:var(--gr-side-bg);border-right:1px solid var(--gr-line);padding:18px 14px 40px;z-index:40;font:14px/1.38 system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
.gr-side h4{margin:18px 8px 6px;font:700 11.5px/1.35 system-ui,sans-serif;letter-spacing:.07em;text-transform:uppercase;color:var(--gr-ink)}
.gr-side h4:first-child{margin-top:0}
.gr-side a{display:flex;gap:8px;padding:6px 8px 6px 10px;border-left:3px solid transparent;border-radius:0 6px 6px 0;color:#41586b;text-decoration:none}
.gr-side a:hover{background:#eef3f7;color:var(--gr-ink)}
.gr-side a.on{background:#e9eff4;border-left-color:var(--gr-active);color:var(--gr-ink);font-weight:650}
.gr-side a b{flex:0 0 auto;min-width:1.7em;color:var(--gr-accent);font-weight:700}
.gr-side a.sub{padding-left:28px;font-size:13px}
body.gr>main{font-size:var(--gr-fs,1em)}
.gr-pager{max-width:910px;margin:22px auto 0;display:grid;grid-template-columns:1fr 1fr;gap:14px;font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
.gr-pager a{display:block;background:#fff;border:1px solid var(--gr-line);border-radius:12px;padding:14px 18px;text-decoration:none;color:var(--gr-ink);box-shadow:0 4px 14px #0a23310d}
.gr-pager a:hover{border-color:var(--gr-accent)}
.gr-pager small{display:block;color:var(--gr-muted);font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;margin-bottom:3px}
.gr-pager b{font-size:15px;line-height:1.35}
.gr-pager .nx{text-align:right;grid-column:2}
.gr-search{position:fixed;inset:0;z-index:80;background:#0b1b2899;display:none;align-items:flex-start;justify-content:center;padding:70px 14px}
.gr-search.open{display:flex}
.gr-sbox{width:100%;max-width:720px;max-height:calc(100vh - 110px);display:flex;flex-direction:column;background:#fff;border-radius:14px;box-shadow:0 20px 60px #0008;overflow:hidden;font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif}
.gr-sbox input{border:0;border-bottom:1px solid var(--gr-line);padding:16px 18px;font-size:17px;outline:none}
.gr-sres{overflow-y:auto;padding:6px 0}
.gr-sres a{display:block;padding:10px 18px;text-decoration:none;color:var(--gr-ink);border-bottom:1px solid #f0f3f6}
.gr-sres a:hover,.gr-sres a.sel{background:#f2f7fa}
.gr-sres small{display:block;color:var(--gr-accent);font-weight:700;font-size:12px;margin-bottom:2px}
.gr-sres span{font-size:14px;color:#41586b;line-height:1.45}
.gr-sres mark{background:#fff0a8;color:inherit;padding:0 1px}
.gr-snote{padding:14px 18px;color:var(--gr-muted);font-size:14px}
.gr-hit{background:#fff0a8;transition:background 2s}
/* themes */
body.gr.gr-sepia{--gr-bg:#efe6d2;--gr-side-bg:#f5eedd;--gr-line:#e2d6bb}
body.gr.gr-sepia>main{background:#fbf6ea!important}
body.gr.gr-sepia .gr-top,body.gr.gr-sepia .gr-pager a,body.gr.gr-sepia .gr-btn,body.gr.gr-sepia .gr-opt select{background:#fbf6ea}
body.gr.gr-dark>main,body.gr.gr-dark>.gr-pager{filter:invert(.9) hue-rotate(180deg)}
body.gr.gr-dark>main img,body.gr.gr-dark>main picture,body.gr.gr-dark>main video{filter:invert(1) hue-rotate(180deg)}
body.gr.gr-dark{--gr-bg:#0f1720!important;background:#151a1f!important}
body.gr.gr-dark .gr-top,body.gr.gr-dark .gr-side{filter:invert(.9) hue-rotate(180deg)}
@media(max-width:1000px){
  .gr-side{transform:translateX(-102%);transition:transform .22s;width:min(86vw,330px);box-shadow:8px 0 30px #0003}
  body.gr.gr-open .gr-side{transform:none}
  html body.gr{padding-left:16px!important}
  .gr-menu{display:inline-flex}
  .gr-site,.gr-opt-label{display:none}
}
@media(max-width:640px){
  .gr-top{gap:8px;padding:0 10px}
  .gr-title{font-size:14px}
  .gr-pg span{display:none}
  .gr-opt select{max-width:84px}
  .gr-hide-s{display:none!important}
  html body.gr{padding-left:0!important;padding-right:0!important}
  .gr-pager{grid-template-columns:1fr;padding:0 12px}
  .gr-pager .nx{grid-column:1}
}
@media print{.gr-top,.gr-side,.gr-pager,.gr-search{display:none!important}html body.gr{padding:0!important}}
.gr-opts{display:inline-flex;align-items:center;gap:12px}
.gr-aa{display:none}
@media(max-width:820px){
  .gr-aa{display:inline-flex}
  .gr-opts{display:none;position:fixed;top:calc(var(--gr-top) + 6px);right:10px;flex-direction:column;align-items:stretch;gap:10px;background:#fff;border:1px solid var(--gr-line);border-radius:12px;padding:14px;box-shadow:0 12px 30px #0003;z-index:60}
  body.gr.gr-opts-open .gr-opts{display:flex}
  .gr-opts .gr-opt{justify-content:space-between;gap:14px}
  .gr-opts .gr-opt-label{display:inline}
  .gr-opt select{max-width:none}
}
/* book pages shown as the printed page (figures that do not reflow on the web) */
main .gtx-asimg{position:relative!important;height:auto!important;min-height:0!important;max-height:none!important;padding:0!important;overflow:visible!important}
main .gtx-asimg>:not(.gtx-pageimg){position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;margin:0!important;padding:0!important;border:0!important;white-space:nowrap!important}
main .gtx-pageimg{display:block;max-width:760px;margin:0 auto 1.8rem}
main .gtx-pageimg img{display:block;box-sizing:border-box;width:100%;height:auto;border:1px solid #e3e9ef;border-radius:6px;box-shadow:0 4px 18px #0a23311a;background:#fff}

/* book-page view: the chapter is shown as the printed pages (identical to the PDF) */
body.gr.gr-text main>.gtx-pages{display:none!important}
body.gr.gr-pages>main{width:auto!important;min-width:0!important;background:transparent!important;box-shadow:none!important;border:0!important;padding:8px 0 0!important;max-width:none!important;margin:0 auto!important}
body.gr.gr-pages main>:not(.gtx-pages){position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;margin:0!important;padding:0!important;border:0!important;white-space:nowrap!important}
.gtx-pages{display:flex;flex-direction:column;align-items:center;gap:22px}
body.gr .gtx-pages .gtx-page{margin:0!important;padding:0!important;border:0!important;width:100%!important;max-width:var(--gr-pw,820px)!important}
body.gr .gtx-pages .gtx-page img{display:block;width:100%!important;max-width:none!important;height:auto!important;margin:0!important;background:#fff;border-radius:3px;box-shadow:0 2px 6px #0a23311a,0 10px 30px #0a233118}
body.gr.gr-pages .gr-pager{max-width:var(--gr-pw,820px)}
body.gr.gr-dark.gr-pages>main{filter:none}
body.gr.gr-dark.gr-pages>main img{filter:invert(.88) hue-rotate(180deg)}
body.gr.gr-sepia.gr-pages>main{background:transparent!important}
body.gr.gr-sepia .gtx-page img{filter:sepia(.18)}
.gtx-page.gr-hit img{outline:4px solid #f5c400;outline-offset:2px}
@media(max-width:640px){.gtx-pages{gap:12px}.gtx-page img{border-radius:0}}

/* our bar and sidebar keep their own colours */
body.gr .gr-top a{color:var(--gr-ink)}
body.gr .gr-top a.gr-site{color:var(--gr-muted)}
body.gr .gr-side a{color:#41586b}
body.gr .gr-side a.on,body.gr .gr-side a:hover{color:var(--gr-ink)}
body.gr .gr-pager a{color:var(--gr-ink)}
body.gr .gr-sres a{color:var(--gr-ink)}
/* text view: the book's typefaces and main reading styles */
body.gr.gr-text>main{font-family:"Noto Serif",Georgia,serif;color:#1f2d3a}
body.gr.gr-text>main :is(h1,h2,h3,h4,h5){font-family:"Noto Sans",Arial,sans-serif;color:#12324a;line-height:1.25}
body.gr.gr-text>main .chapter-label,body.gr.gr-text>main [class*="kicker"]{font-family:"Noto Sans",Arial,sans-serif;color:#1f8f86;font-weight:700;letter-spacing:.06em;text-transform:uppercase;font-size:.82em}
body.gr.gr-text>main .speaker-line{font-family:"Noto Sans",Arial,sans-serif;background:#eef2f4;border-left:4px solid #1f8f86;padding:.6em 1em;margin:.55em 0;border-radius:0 6px 6px 0}
body.gr.gr-text>main :is([class*="callout"],.key-statement,.core-rule){font-family:"Noto Sans",Arial,sans-serif;background:#eef6f6;border-left:5px solid #1f8f86;padding:.9em 1.1em;margin:1em 0;font-weight:600;color:#12324a;border-radius:0 8px 8px 0}
body.gr.gr-text>main [class*="deck"],body.gr.gr-text>main .lead{color:#5b6b7c;font-size:1.08em}
/* a page whose text changed after printing: the current text, set as a page */
body.gr .gtx-pages .gtx-live{width:100%;max-width:var(--gr-pw,820px);box-sizing:border-box;background:#fff;padding:6% 7% 7%;border-radius:3px;box-shadow:0 2px 6px #0a23311a,0 10px 30px #0a233118;font-family:"Noto Serif",Georgia,serif;color:#1f2d3a;font-size:var(--gr-fs,1em);overflow:hidden}
body.gr .gtx-pages .gtx-live:empty{display:none}
body.gr .gtx-pages .gtx-live>section{position:static!important;width:auto!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;box-shadow:none!important;border:0!important;overflow:visible!important}
body.gr .gtx-pages .gtx-live :is(h1,h2,h3,h4){font-family:"Noto Sans",Arial,sans-serif;color:#12324a;line-height:1.25}
body.gr .gtx-pages .gtx-live .speaker-line{font-family:"Noto Sans",Arial,sans-serif;background:#eef2f4;border-left:4px solid #1f8f86;padding:.6em 1em;margin:.55em 0}
body.gr .gtx-pages .gtx-live :is([class*="callout"],.key-statement,.core-rule){font-family:"Noto Sans",Arial,sans-serif;background:#eef6f6;border-left:5px solid #1f8f86;padding:.9em 1.1em;margin:1em 0;font-weight:600;color:#12324a}
@media(max-width:640px){body.gr .gtx-pages .gtx-live{padding:5% 5%}}
/* whole printed page for print-layout pages in text view */
main .gtx-wholepage{display:none}
body.gr.gr-text main.gtx-whole>.gtx-wholepage{display:block}
body.gr.gr-text main.gtx-whole{width:auto!important;min-width:0!important;max-width:none!important;height:auto!important;min-height:0!important;padding:0!important;overflow:visible!important}
body.gr.gr-text main.gtx-whole>:not(.gtx-wholepage):not(.gtx-pages){position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;clip-path:inset(50%)!important;margin:0!important;padding:0!important;border:0!important;white-space:nowrap!important}
main .gtx-wholepage .gtx-pageimg{display:block;max-width:760px;margin:0 auto 1.8rem}
main .gtx-wholepage img{display:block;box-sizing:border-box;width:100%;height:auto;border:1px solid #e3e9ef;border-radius:6px;background:#fff}
