/*
Theme Name: KVK Kitap
Theme URI: https://www.kvknotlari.com/
Author: KVK Kitap Projesi
Description: Kişisel Verilerin Korunması çevrimiçi kitabı için erişilebilir, mobil uyumlu okuma teması.
Version: 0.4.15
Requires at least: 6.5
Requires PHP: 8.0
Text Domain: kvk-kitap
*/
:root {
  color-scheme:light;
  --ink:#263443; --muted:#52616c; --line:#dbe3e3;
  --paper:#fff; --canvas:#f7f9f8; --panel:#eef4f2;
  --accent:#075a60; --accent-soft:#e6f2ef; --focus:#bc6c13;
  --width:1480px; --reading-scale:1;
}
*,*::before,*::after { box-sizing:border-box }
[hidden] { display:none!important }
html { scroll-behavior:smooth; scroll-padding-top:1.5rem }
body { margin:0; background:var(--canvas); color:var(--ink);
  font-family:Georgia,"Times New Roman",serif; font-size:18px; line-height:1.77 }
a { color:var(--accent); text-underline-offset:.19em; text-decoration-thickness:1px }
a:hover { text-decoration-thickness:2px }
a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible {
  outline:3px solid var(--focus); outline-offset:3px; border-radius:2px
}
img,svg,video { max-width:100%; height:auto }
button,input { font:inherit }
button { cursor:pointer }
::selection { background:#d1e8e1; color:#172e30 }
.screen-reader-text { position:absolute!important; overflow:hidden; clip:rect(1px,1px,1px,1px);
  width:1px; height:1px; padding:0; border:0; margin:-1px; white-space:nowrap }
.screen-reader-text:focus { clip:auto; width:auto; height:auto; margin:0; padding:.7rem; background:#fff; z-index:999 }
.skip-link { position:absolute; z-index:1001; top:-100px; left:1rem; padding:.6rem 1rem;
  background:var(--paper); box-shadow:0 2px 10px #172e3026; font:600 .9rem system-ui,sans-serif }
.skip-link:focus { top:0 }
.reading-progress { position:fixed; top:0; left:0; z-index:60; width:0; height:3px;
  background:var(--accent); transition:width .08s linear; pointer-events:none }
.site-header { border-bottom:1px solid var(--line); background:var(--paper) }
.site-header__inner { max-width:var(--width); margin:auto; padding:.85rem 1.6rem;
  display:flex; align-items:center; gap:clamp(.8rem,2vw,1.5rem) }
.site-branding { flex:1 1 300px; min-width:0 }
.site-brand { font-family:system-ui,-apple-system,"Segoe UI",sans-serif; font-size:1.24rem;
  font-weight:750; line-height:1.4; color:var(--ink); text-decoration:none; letter-spacing:-.03em }
.site-tagline { margin:.12rem 0 0; font:400 .79rem/1.45 system-ui,sans-serif; color:var(--muted) }
.site-header__actions { display:flex; align-items:center; gap:clamp(.6rem,1.2vw,1rem);
  min-width:0 }
.site-about-link { display:inline-flex; align-items:center; min-height:40px;
  white-space:nowrap; color:var(--accent); text-decoration:none;
  font:650 .83rem/1.4 system-ui,sans-serif; padding:.4rem .35rem }
.site-about-link:hover,.site-about-link[aria-current="page"] { text-decoration:underline }
.site-search { display:flex; flex:0 1 330px; min-width:190px; gap:.35rem;
  align-items:stretch; font:400 .86rem system-ui,sans-serif }
.site-search input { min-width:130px; max-width:270px; width:clamp(130px,16vw,270px);
  padding:.58rem .78rem; border:1px solid #b9c9c8; border-radius:.4rem;
  background:var(--paper); color:var(--ink); font-size:1rem }
.site-search button,.menu-toggle,.reader-size { background:var(--panel);
  border:1px solid #c7d6d4; color:var(--ink); border-radius:.4rem;
  min-height:40px; padding:.45rem .8rem; font:600 .84rem system-ui,sans-serif }
.site-search button:hover,.menu-toggle:hover,.reader-size:hover { background:var(--accent-soft); border-color:var(--accent) }
.menu-toggle { display:none }
.reader-layout { max-width:var(--width); margin:0 auto; padding:1.9rem 1.6rem 3rem;
  display:grid; grid-template-columns:minmax(218px,248px) minmax(0,1fr) minmax(170px,210px);
  gap:clamp(1rem,2.5vw,2.8rem); align-items:start }
.reader-sidebar { position:sticky; top:1.3rem; align-self:start;
  height:calc(100vh - 2.6rem); max-height:calc(100vh - 2.6rem);
  display:flex; flex-direction:column; min-height:0; overflow:hidden;
  font:400 .82rem/1.48 system-ui,-apple-system,sans-serif;
  padding:0 .55rem 0 0 }
.reader-sidebar__scroll { flex:1 1 auto; min-height:0; overflow-y:auto;
  overflow-x:hidden; overscroll-behavior:contain; scrollbar-width:thin;
  padding:0 .15rem 1.1rem 0 }
.reader-sidebar__scroll:focus-visible { outline:2px solid var(--focus);
  outline-offset:-2px; border-radius:.2rem }
.reader-sidebar__heading { flex:0 0 auto }
.reader-sidebar__heading { margin:0 0 .65rem; padding:.15rem .35rem .65rem;
  border-bottom:1px solid var(--line) }
.reader-sidebar__heading strong,.chapter-outline strong { display:block; font-weight:750;
  color:var(--ink); margin-bottom:.2rem; font-size:.91rem }
.reader-sidebar__heading span { display:block; color:var(--muted); font-size:.72rem }
.reader-sidebar a { display:block; padding:.47rem .52rem; text-decoration:none;
  color:#435763; border-left:3px solid transparent; border-radius:0 .25rem .25rem 0;
  overflow-wrap:anywhere }
.reader-sidebar a:hover { background:var(--accent-soft); color:var(--accent) }
.reader-sidebar a[aria-current="page"] { font-weight:700; color:var(--accent);
  background:var(--accent-soft); border-left-color:var(--accent) }
.reader-sidebar__section { margin:.8rem 0; padding-top:.65rem; border-top:1px solid var(--line) }
.reader-sidebar__section-title { font-weight:750!important; color:var(--ink)!important }
.reader-sidebar__section--appendices { margin:.8rem 0; padding-top:.65rem;
  border-top:1px solid var(--line) }
.reader-sidebar__section--appendices .reader-sidebar__appendix-link {
  padding-left:.9rem; font-size:.95em }
.reader-content { width:100%; max-width:none; min-width:0; margin:0; }
.reader-article-shell,.reader-general-page,.reader-search-heading,.reader-results {
  background:var(--paper) }
.reader-article-shell { border:1px solid var(--line); border-radius:.55rem;
  box-shadow:0 8px 24px #1b34350a; padding:clamp(1.2rem,3.25vw,3.1rem) }
.reader-article-header { border-bottom:1px solid var(--line); padding-bottom:1.25rem; margin-bottom:1.4rem }
.reader-eyebrow { margin:0 0 .8rem!important; font:750 .71rem/1.5 system-ui,sans-serif;
  letter-spacing:.09em; text-transform:uppercase; color:var(--accent) }
.reader-content h1,.reader-content h2,.reader-content h3,.reader-content h4 {
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  line-height:1.32; letter-spacing:-.025em; color:#203843; scroll-margin-top:1.5rem }
.reader-content h1 { font-size:clamp(1.8rem,3.6vw,2.45rem); margin:0 0 1.2rem; font-weight:750 }
.reader-content h2 { font-size:clamp(1.23rem,2vw,1.48rem); margin:2.6rem 0 1rem }
.reader-content h3 { font-size:1.14rem; margin:2rem 0 .8rem }
.reader-content h4 { font-size:1rem; margin:1.7rem 0 .7rem }
.reader-edition { margin-top:.35rem; font-weight:600; color:var(--accent) }
.reader-updated { color:var(--muted); font:.79rem/1.5 system-ui,sans-serif; margin:0 }
.reader-breadcrumbs { display:flex; gap:.5rem; flex-wrap:wrap; align-items:center;
  color:var(--muted); font:400 .74rem/1.6 system-ui,sans-serif;
  margin:-.5rem 0 1.4rem; overflow-wrap:anywhere }
.reader-breadcrumbs a { text-decoration:none }
.reader-article { font-size:calc(1rem * var(--reading-scale)); line-height:1.79;
  overflow-wrap:break-word; hyphens:auto }
.reader-article p { margin:1.05rem 0; text-wrap:pretty }
.reader-article a:not([class]) { text-decoration:underline }
.reader-article ul,.reader-article ol { padding-left:1.6rem }
.reader-article li { margin:.45rem 0 }
.reader-article blockquote { margin:1.7rem 0; padding:.5rem 1.3rem;
  border-left:4px solid var(--accent); background:var(--panel); color:#2c4748 }
.reader-article table { display:block; max-width:100%; overflow-x:auto;
  border-collapse:collapse; font-size:.9em; line-height:1.55; -webkit-overflow-scrolling:touch }
.reader-article th,.reader-article td { border:1px solid var(--line);
  min-width:95px; padding:.55rem .7rem; vertical-align:top }
.reader-article th { background:var(--panel) }
.reader-article .footnote,.reader-article .footnotes { border-top:1px solid var(--line);
  margin-top:3rem; padding-top:1rem; font-size:.83em; line-height:1.55 }
.reader-article .footnote li,.reader-article .footnotes li { overflow-wrap:anywhere; margin-bottom:.9rem }
.reader-article sup { font-size:.75em }
.reader-article sup a { padding:.12rem; scroll-margin-top:1rem }
.reader-article pre { max-width:100%; overflow:auto; padding:1rem; border:1px solid var(--line);
  border-radius:.3rem; background:var(--panel); font-size:.88em }
.reader-article :not(pre)>code { overflow-wrap:anywhere; background:var(--panel); padding:.07rem .2rem }
.reader-article img { border-radius:.25rem }
.reader-article hr { border:0; border-top:1px solid var(--line); margin:2rem 0 }
/* Reading controls share the metadata row; the content column owns their width. */
.reader-meta-row { display:grid; grid-template-columns:minmax(0,1fr) max-content;
  align-items:center; gap:.5rem .85rem; min-width:0 }
.reader-meta-actions { display:flex; align-items:center; justify-content:flex-end;
  gap:.4rem; min-width:0 }
.reader-meta-row > .reader-updated { min-width:0; overflow-wrap:normal }
.reader-tools { display:flex; align-items:center; justify-content:flex-end;
  gap:.3rem; min-width:0; margin:0; padding:0; border:0;
  font:400 .77rem system-ui,sans-serif; color:var(--muted); white-space:nowrap }
.reader-tools[hidden] { display:none!important }
.reader-size { min-height:40px; min-width:40px; padding:.35rem .5rem;
  font-size:.75rem; background:var(--paper) }
.reader-size[data-reader-size="reset"] { min-width:60px }
.reader-size:focus-visible { outline:2px solid var(--focus); outline-offset:2px }
.reader-tools__notice { font-size:.72rem; min-width:2.6em; text-align:right }
.chapter-outline { position:sticky; top:1.3rem; align-self:start;
  height:calc(100vh - 2.6rem); height:calc(100dvh - 2.6rem);
  max-height:calc(100vh - 2.6rem); box-sizing:border-box;
  overflow:hidden; display:flex; flex-direction:column; gap:.65rem;
  padding-left:1rem; border-left:1px solid var(--line);
  font:400 .78rem/1.5 system-ui,sans-serif }
.chapter-outline__toc { flex:1 1 auto; min-height:0; overflow:hidden;
  display:flex; flex-direction:column }
.chapter-outline__links { flex:1 1 auto; min-height:0; overflow-y:auto;
  overscroll-behavior:contain; scrollbar-width:thin; scrollbar-gutter:stable }
.chapter-outline__toggle { flex:0 0 auto }
.chapter-outline[hidden],.chapter-outline__toc[hidden] { display:none!important }
.chapter-outline__toggle { display:flex; width:100%; align-items:center;
  justify-content:space-between; gap:.4rem; padding:.3rem .25rem .6rem;
  min-height:40px; border:0; background:transparent; color:var(--ink);
  cursor:pointer; font:750 .87rem/1.4 system-ui,sans-serif; text-align:left }
.chapter-outline__toggle:hover { color:var(--accent) }
.chapter-outline__symbol { font-weight:700; font-size:1.15rem; line-height:1 }
.chapter-outline__links[hidden] { display:none!important }
.chapter-outline a { display:block; color:var(--muted); text-decoration:none;
  padding:.45rem .3rem; overflow-wrap:anywhere; border-radius:.2rem }
.chapter-outline a:hover,.chapter-outline a[aria-current="location"] { color:var(--accent);
  background:var(--accent-soft) }
.chapter-outline a.subheading { padding-left:.85rem }
.reader-action-tools[hidden] { display:none!important }
.reader-action-tools { display:grid; grid-template-columns:repeat(4,44px);
  justify-content:start; gap:5px; flex:0 0 auto; padding-top:.65rem;
  border-top:1px solid var(--line) }
.reader-action-tools__button { width:44px; height:44px; min-width:44px;
  display:flex; justify-content:center; align-items:center; padding:0;
  border:1px solid var(--line); border-radius:.4rem;
  color:var(--ink); background:var(--paper); cursor:pointer }
.reader-action-tools__button:hover { background:var(--accent-soft); color:var(--accent) }
.reader-action-tools__button:focus-visible { outline:2px solid var(--focus);
  outline-offset:2px }
.reader-action-tools__button svg { display:block; flex:none }
.reader-action-tools--mobile { display:none }
@media(min-width:1231px) {
 .reader-layout:not(.outline-collapsed) .reader-action-tools--desktop {
   margin-top:auto; flex-shrink:0; background:var(--canvas);
   position:relative; z-index:1 }
}
/* Clearly visible feedback and a deliberate share/citation chooser. */
.reader-action-panel[hidden],.reader-action-notice[hidden] { display:none!important }
.reader-action-panel { position:fixed; z-index:10010; width:340px;
  max-width:calc(100vw - 24px); max-height:calc(100dvh - 24px); overflow-y:auto;
  box-sizing:border-box; padding:1rem; background:var(--paper);
  border:1px solid var(--line); border-radius:.65rem;
  box-shadow:0 14px 38px #1b343533; color:var(--ink);
  font:400 .9rem/1.5 system-ui,-apple-system,sans-serif }
.reader-action-panel__header { display:flex; align-items:start;
  justify-content:space-between; gap:.7rem; margin-bottom:.5rem }
.reader-action-panel__header h2 { font:700 1.05rem/1.4 system-ui,sans-serif;
  margin:0; color:var(--ink) }
.reader-action-panel__close { flex:0 0 36px; width:36px; height:36px;
  background:transparent; border:1px solid var(--line);
  border-radius:.4rem; cursor:pointer; font:400 1.4rem/1 system-ui,sans-serif }
.reader-action-panel__close:hover { background:var(--accent-soft) }
.reader-action-panel__body { display:grid; gap:.45rem }
.reader-action-panel__explanation { margin:0 0 .45rem; color:var(--muted);
  line-height:1.5; font-size:.88rem }
.reader-action-panel__choice { display:flex; align-items:center;
  justify-content:flex-start; width:100%; min-height:44px; box-sizing:border-box;
  padding:.6rem .8rem; border:1px solid var(--line); border-radius:.4rem;
  background:var(--paper); color:var(--ink); text-decoration:none;
  font:600 .9rem/1.45 system-ui,sans-serif; text-align:left;
  cursor:pointer; overflow-wrap:anywhere }
.reader-action-panel__choice:hover { background:var(--accent-soft);
  color:var(--accent) }
.reader-action-panel__choice--primary { background:var(--accent);
  color:#fff; border-color:var(--accent) }
.reader-action-panel__choice--primary:hover { background:#164f49; color:#fff }
.reader-action-panel__citation { box-sizing:border-box; display:block;
  width:100%; min-height:9rem; padding:.65rem; resize:vertical;
  border:1px solid var(--line); border-radius:.4rem;
  color:var(--ink); background:var(--canvas); font:400 .86rem/1.55 system-ui,sans-serif }
.reader-action-panel :focus-visible,.reader-action-notice :focus-visible {
  outline:2px solid var(--focus); outline-offset:2px }
.reader-action-notice { position:fixed; z-index:10020; bottom:1.2rem;
  left:50%; transform:translateX(-50%); display:grid;
  grid-template-columns:minmax(0,1fr) 36px; column-gap:.8rem;
  width:max-content; max-width:min(480px,calc(100vw - 24px));
  box-sizing:border-box; padding:.85rem 1rem;
  background:#263f46; color:#fff; border-radius:.55rem;
  box-shadow:0 10px 30px #1b34353b;
  font:400 .86rem/1.45 system-ui,-apple-system,sans-serif }
.reader-action-notice strong,.reader-action-notice span {
  grid-column:1; overflow-wrap:anywhere }
.reader-action-notice strong { font-weight:700; font-size:.95rem }
.reader-action-notice button { grid-column:2; grid-row:1/3;
  align-self:center; width:36px; height:36px;
  color:#fff; background:transparent; border:1px solid #ffffff80;
  border-radius:.35rem; cursor:pointer; font:400 1.3rem/1 system-ui,sans-serif }
@media print {
  .reader-action-panel,.reader-action-notice { display:none!important }
}
.reader-print-reference { display:none }
.chapter-nav { margin-top:3rem; display:flex; justify-content:space-between; gap:.7rem;
  font:600 .84rem/1.5 system-ui,sans-serif; border-top:1px solid var(--line); padding-top:1.3rem }
.chapter-nav a { display:block; padding:.55rem .6rem; min-height:42px; border-radius:.3rem;
  text-decoration:none; background:var(--panel) }
.chapter-nav a:hover { background:var(--accent-soft); text-decoration:underline }
.reader-top-link { margin:1.8rem 0 0; text-align:right; font:.8rem system-ui,sans-serif }
.reader-top-link a { text-decoration:none }
.general-layout { max-width:870px; margin:0 auto; padding:2.5rem 1.35rem 4rem }
.reader-general-page { padding:clamp(1.3rem,4vw,3rem); border:1px solid var(--line);
  border-radius:.55rem; box-shadow:0 8px 24px #1b34350a }
.reader-result { padding:1.3rem 0; border-bottom:1px solid var(--line) }
.reader-result h2 { margin:.2rem 0 }
.reader-results { padding:1.3rem 1.7rem; border:1px solid var(--line); border-radius:.55rem }
.reader-search-heading { padding:1.7rem; margin-bottom:1rem; border:1px solid var(--line); border-radius:.55rem }
.site-footer { background:#eaf0ed; border-top:1px solid #d4e0da; color:#385058;
  font:400 .84rem/1.65 system-ui,-apple-system,sans-serif }
.site-footer__inner { max-width:var(--width); margin:auto; padding:1.6rem 1.6rem;
  display:grid; grid-template-columns:minmax(0,1.65fr) minmax(250px,1fr);
  align-items:start; gap:1.25rem 2.5rem }
.site-footer__disclosure { max-width:78ch }
.site-footer__summary { margin:0; text-wrap:pretty }
.site-footer__more { display:inline-block; margin-top:.55rem; font-weight:650 }
.site-footer__meta { justify-self:end; text-align:right; overflow-wrap:anywhere }
.site-footer__copyright { margin:0; color:#263f46 }
.site-footer__rights { margin:.2rem 0 0; font-size:.74rem; color:#576a6b }
@media(min-width:1231px) {
 /* The chapter outline owns its own grid track, not a permanent blank gutter.
    Collapsing it lets article text use the recovered width. */
 .reader-layout.outline-collapsed {
   grid-template-columns:minmax(218px,248px) minmax(0,1fr) 44px;
   gap:clamp(.75rem,1.5vw,1.5rem);
 }
 .reader-layout.outline-collapsed .chapter-outline {
   width:44px; height:auto; max-height:none; padding-left:0; border-left:0; overflow:visible;
 }
 .reader-layout.outline-collapsed .chapter-outline__toggle {
   width:44px; justify-content:center; padding:.3rem; min-height:44px;
   border:1px solid var(--line); border-radius:.4rem;
   font-size:0; background:var(--paper);
 }
 .reader-layout.outline-collapsed .chapter-outline__symbol { font-size:1.2rem }
 .reader-layout.outline-collapsed .chapter-outline__links { display:none }
 .reader-layout.outline-collapsed .chapter-outline__toc { flex:0 0 auto; overflow:visible }
 .reader-layout.outline-collapsed .reader-action-tools--desktop {
   display:grid; grid-template-columns:44px; gap:6px; padding:0; border:0;
 }
 .reader-layout.outline-unavailable { grid-template-columns:minmax(218px,248px) minmax(0,1fr) }
 /* Prevent exceptionally wide displays from producing unreadably long lines.
    The closed state still gains the full outline track up to this cap. */
 .reader-layout .reader-article-shell { max-width:1100px; }
}
@media(min-width:1231px) and (max-width:1420px) {
 /* A 210px track accommodates four 44px actions plus 5px gaps and
    the outline's 1rem inset. Keep the article as the flexible track. */
 .reader-layout:not(.outline-collapsed) {
   grid-template-columns:minmax(218px,248px) minmax(0,1fr) 210px;
 }
 .reader-layout:not(.outline-collapsed) .reader-action-tools--desktop {
   grid-template-columns:repeat(4,44px);
   gap:5px;
 }
}
@media(max-width:1230px) {
 .reader-layout { grid-template-columns:220px minmax(0,1fr); gap:1.3rem }
 .chapter-outline { display:none }
 /* Keep metadata short and both action groups on ONE compact, accessible row. */
 .reader-meta-row { grid-template-columns:minmax(0,1fr); gap:.55rem }
 .reader-meta-actions { width:100%; justify-content:flex-start; align-items:center;
   flex-wrap:nowrap; gap:clamp(3px,1vw,7px); min-width:0; overflow-x:auto;
   scrollbar-width:thin; padding:2px 0 4px }
 .reader-tools { flex:0 0 auto; justify-content:flex-start; flex-wrap:nowrap;
   white-space:nowrap; gap:clamp(3px,.8vw,5px) }
 .reader-tools__notice { position:absolute!important; width:1px; height:1px;
   overflow:hidden; clip-path:inset(50%); white-space:nowrap }
 .reader-size { flex:0 0 auto; min-width:0; width:clamp(34px,10.4vw,40px);
   min-height:36px; height:clamp(36px,10.7vw,42px); padding:0 .1rem }
 .reader-size[data-reader-size="reset"] { min-width:0;
   width:clamp(38px,11.5vw,46px); font-size:0 }
 .reader-size[data-reader-size="reset"]::after { content:"100%"; font-size:.69rem }
 .reader-action-tools--mobile { display:flex; flex:0 0 auto; flex-wrap:nowrap;
   align-items:center; gap:clamp(3px,.8vw,5px); margin:0; padding:0; border:0 }
 .reader-action-tools--mobile .reader-action-tools__button {
   min-width:0; width:clamp(34px,10.4vw,40px);
   height:clamp(36px,10.7vw,42px) }
 .reader-action-tools--mobile .reader-action-tools__button svg {
   width:18px; height:18px }
}
@media(max-width:1000px) {
 .site-header__inner { flex-wrap:wrap; gap:.65rem 1.1rem }
 .site-header__actions { flex:1 0 100%; min-width:0 }
 .site-search { flex:1 1 auto; min-width:0 }
 .site-search input { flex:1; max-width:none; width:auto }
}
@media(max-width:820px) {
 body { font-size:17px }
 .site-header__inner { display:grid; grid-template-columns:minmax(0,1fr) auto;
   padding:.8rem 1rem; gap:.6rem .85rem }
 .site-branding { grid-column:1; min-width:0 }
 .menu-toggle:not([hidden]) { grid-column:2; display:inline-flex; align-items:center; justify-self:end }
 .site-header__actions { grid-column:1/-1; width:100%; min-width:0; gap:.6rem }
 .site-search { flex:1 1 230px; min-width:0; width:auto; margin:0 }
 .site-search input { flex:1; min-width:0; width:100%; max-width:none }
 .reader-layout { display:block; padding:1rem .8rem 2rem }
 .reader-sidebar { position:static; height:auto; max-height:none; margin-bottom:1rem;
   border:1px solid var(--line); background:var(--paper); padding:1rem;
   border-radius:.45rem; overflow:visible }
 .reader-sidebar__scroll { overflow:visible; flex:0 1 auto }
 .reader-sidebar.is-collapsible { display:none }
 .reader-sidebar.is-collapsible.is-open { display:flex; max-height:70vh;
   overflow:hidden }
 .reader-sidebar.is-collapsible.is-open .reader-sidebar__scroll {
   overflow-y:auto; flex:1 1 auto }
 .reader-content { max-width:100% }
 .reader-article-shell { padding:1.15rem }
 .site-footer__inner { display:block; padding:1.3rem 1rem }
 .site-footer__meta { text-align:left; margin-top:.8rem; padding-top:.8rem;
   border-top:1px solid #c9d7d0 }
 .chapter-nav { flex-wrap:wrap }
}
@media(max-width:430px) {
 .site-header__inner { grid-template-columns:minmax(0,1fr) auto; gap:.55rem .75rem }
 .site-tagline { font-size:.74rem }
 .site-header__actions { flex-wrap:wrap }
 .site-search { flex:1 1 100% }
 .reader-breadcrumbs { font-size:.68rem }
 .reader-content h1 { font-size:1.7rem }
 .reader-article-shell { border-radius:.25rem; padding:1rem }
 .reader-article table { font-size:.82em }
}
@media(prefers-reduced-motion:reduce) {
 html { scroll-behavior:auto }
 .reading-progress { transition:none }
}
@media print {
 :root { --paper:#fff; --canvas:#fff; --ink:#000; --muted:#333 }
 body { background:#fff; color:#000; font-size:11pt }
 .site-search,.site-about-link,.menu-toggle,.reader-sidebar,.chapter-outline,
 .reader-tools,.site-footer,.reading-progress,.chapter-nav,.reader-breadcrumbs,.reader-top-link { display:none!important }
 .reader-layout { display:block; padding:0; max-width:none }
 .reader-article-shell,.reader-general-page { border:0; box-shadow:none; padding:0 }
 .reader-content { max-width:none }
 .reader-article { font-size:11pt }
 .reader-article a { color:#000; text-decoration:underline }
 .reader-article h2,.reader-article h3 { break-after:avoid }
 .reader-article blockquote,.reader-article table { break-inside:avoid }
}

/* Keep the printed work readable, traceable and free of interface chrome. */
@media print {
  @page { margin:18mm 16mm }
  html,body { background:#fff!important; color:#000!important; }
  .site-header,.site-footer,.reader-sidebar,.chapter-outline,
  .reader-action-tools,.reader-tools,.chapter-nav,.reader-top-link,
  #reading-progress,.reader-breadcrumbs { display:none!important }
  .reader-layout { display:block!important; width:auto!important; padding:0!important;
    max-width:none!important; margin:0!important }
  .reader-content,.reader-article-shell { display:block!important;
    width:auto!important; max-width:none!important; margin:0!important;
    padding:0!important; border:0!important; box-shadow:none!important }
  .reader-print-reference { display:block!important; margin-top:2rem;
    border-top:1px solid #777; padding-top:.75rem; overflow-wrap:anywhere;
    font:10pt/1.5 system-ui,sans-serif }
  .reader-article a { color:#000!important; text-decoration:underline!important }
  .reader-article table { max-width:100%!important; overflow:visible!important }
  .reader-article tr { break-inside:avoid; page-break-inside:avoid }
  .reader-article h2,.reader-article h3 { break-after:avoid-page; page-break-after:avoid }
}

/* Heading deep links are discoverable without cluttering the printed book. */
.reader-article h2[id],.reader-article h3[id] { scroll-margin-top:1.2rem }
.reader-heading-link { display:inline-flex; width:1.5em; height:1.5em;
  vertical-align:middle; justify-content:center; align-items:center;
  padding:0; margin-left:.25em; border:0; background:transparent;
  color:var(--accent); opacity:.15; cursor:pointer; border-radius:.3rem }
.reader-heading-link svg { width:.76em; height:.76em }
.reader-article h2:hover .reader-heading-link,
.reader-article h3:hover .reader-heading-link,
.reader-heading-link:focus-visible { opacity:1 }
@media(hover:none) { .reader-heading-link { opacity:.65 } }


/* The two existing footnote rules frame the early chapter navigation.
   Reuse that gap rather than adding another rule and 3rem of whitespace. */
.reader-article .footnote:has(> .chapter-nav--before-notes),
.reader-article .footnotes:has(> .chapter-nav--before-notes) {
  padding-top:.25rem;
}
.reader-article .footnote > .chapter-nav--before-notes,
.reader-article .footnotes > .chapter-nav--before-notes {
  margin:0;
  padding:0;
  border-top:0;
}
.reader-article .footnote > .chapter-nav--before-notes + hr,
.reader-article .footnotes > .chapter-nav--before-notes + hr {
  margin-top:.25rem;
}


/* Footnote previews are transient local UI: long references scroll independently. */
.kvk-note-preview {
  position:fixed; z-index:9998; width:min(440px,calc(100vw - 20px));
  max-height:min(58vh,450px); overflow:auto; overscroll-behavior:contain;
  padding:1rem 1.1rem; border:1px solid var(--line); border-radius:.55rem;
  box-shadow:0 12px 34px rgb(30 55 63 / .20); background:var(--paper);
  color:var(--ink); font-size:.91rem; line-height:1.5;
}
.kvk-note-preview__body { padding-right:.65rem; overflow-wrap:anywhere }
.kvk-note-preview__body li { list-style:none; margin:0; padding:0 }
.kvk-note-preview__body p { margin:.2rem 0 .6rem }
.kvk-note-preview__close { float:right; border:0; padding:.1rem .45rem;
  background:var(--panel); border-radius:.25rem; cursor:pointer; font-size:1.25rem }
.kvk-note-preview__go { display:inline-block; margin-top:.45rem; font-weight:600 }
.reader-article a.footnote-ref[aria-expanded="true"] { outline:2px solid var(--accent); border-radius:.2rem }

/* Reader correction form: collapsed until explicitly requested, no third-party UI. */
.kvk-feedback { margin:1.3rem 0 .3rem; text-align:right }
.kvk-feedback__trigger { background:transparent; border:1px solid var(--line);
  color:var(--accent); border-radius:.3rem; font:600 .89rem/1.4 system-ui,sans-serif;
  padding:.55rem .8rem; cursor:pointer }
.kvk-feedback__trigger:hover,.kvk-feedback__trigger:focus-visible {
  background:var(--accent-soft); outline-offset:2px }
.kvk-feedback__notice { text-align:left; font-size:.9rem }
.kvk-feedback__dialog { width:min(540px,calc(100vw - 24px)); max-height:85dvh;
  overflow:auto; border:1px solid var(--line); border-radius:.6rem;
  padding:1.2rem; background:var(--paper); color:var(--ink);
  box-shadow:0 20px 65px rgb(21 45 52 / .24) }
.kvk-feedback__dialog::backdrop { background:rgb(8 25 33 / .56) }
.kvk-feedback__dialog-header { display:flex; justify-content:space-between;
  align-items:start; gap:1rem }
.kvk-feedback__dialog h2 { font-size:1.24rem; margin:.1rem 0 .8rem }
.kvk-feedback__dialog-header button { border:0; background:var(--panel);
  border-radius:.3rem; cursor:pointer; font-size:1.5rem; padding:.1rem .65rem }
.kvk-feedback__context { margin:.3rem 0 1rem; font-size:.88rem }
.kvk-feedback__dialog label { display:block; text-align:left; margin:0 0 1rem;
  font:600 .9rem/1.5 system-ui,sans-serif }
.kvk-feedback__dialog label span { font-weight:400 }
.kvk-feedback__dialog select,.kvk-feedback__dialog textarea,
.kvk-feedback__dialog input[type=email] { display:block; width:100%; margin-top:.35rem;
  border:1px solid #99ada9; border-radius:.32rem; padding:.55rem .65rem;
  background:#fff; color:var(--ink); font:400 1rem/1.5 system-ui,sans-serif }
.kvk-feedback__dialog textarea { resize:vertical; min-height:7.5rem }
.kvk-feedback__privacy { font-size:.82rem; color:var(--muted); text-align:left }
.kvk-feedback__actions { display:flex; justify-content:end; flex-wrap:wrap; gap:.55rem }
.kvk-feedback__actions button { border:1px solid var(--line); padding:.55rem .85rem;
  border-radius:.3rem; background:var(--panel); cursor:pointer }
.kvk-feedback__actions button[type=submit] { background:var(--accent); color:#fff }
.kvk-feedback__actions button:disabled { opacity:.55; cursor:wait }
.kvk-feedback__trap { position:absolute!important; width:1px; height:1px;
  left:-10000px; overflow:hidden; opacity:0; pointer-events:none }
@media print {
  .kvk-note-preview,.kvk-feedback { display:none!important }
}

/* Correction reporting belongs between the final chapter links, without
   adding a separate row or altering the earlier pre-footnotes navigation. */
.chapter-nav--feedback {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,auto) minmax(0,1fr);
  align-items:center;
  column-gap:.7rem;
}
.chapter-nav--feedback > .kvk-feedback {
  grid-column:2;
  justify-self:center;
  margin:0;
  text-align:center;
}
.chapter-nav--feedback > a[rel="prev"] {
  grid-column:1;
  justify-self:start;
}
.chapter-nav--feedback > a[rel="next"] {
  grid-column:3;
  justify-self:end;
}
@media(max-width:680px) {
  .chapter-nav--feedback {
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    row-gap:.55rem;
  }
  .chapter-nav--feedback > .kvk-feedback {
    grid-column:1 / -1;
    grid-row:2;
    justify-self:center;
  }
  .chapter-nav--feedback > a[rel="prev"] { grid-column:1; grid-row:1 }
  .chapter-nav--feedback > a[rel="next"] { grid-column:2; grid-row:1 }
}

/* A separate, affirmative consent choice: never inherit full-width input styling. */
.kvk-feedback__dialog label.kvk-feedback__consent {
  display:flex; align-items:flex-start; gap:.6rem;
  margin:.8rem 0 1.1rem; font-weight:400; line-height:1.45;
}
.kvk-feedback__consent input[type=checkbox] {
  flex:0 0 auto; width:1.15rem; height:1.15rem; margin:.13rem 0 0;
  accent-color:var(--accent);
}
.kvk-feedback__consent span { flex:1 1 auto }

/* The correction dialog is nested in chapter-nav. Override its block-link
   button styling only for this prose link; do not affect chapter links. */
.chapter-nav .kvk-feedback__dialog .kvk-feedback__privacy a {
  display:inline; padding:0; min-height:0; border-radius:0;
  background:transparent; font:inherit; text-decoration:underline;
  overflow-wrap:normal;
}
.chapter-nav .kvk-feedback__dialog .kvk-feedback__privacy a:hover {
  background:transparent;
}

/* Version-specific, server-rendered summary; no script, tracking or history UI. */
.reader-change-summary { margin:.45rem 0 .85rem; padding:.55rem .85rem; border:1px solid var(--line); border-radius:.3rem; font:400 .83rem/1.6 system-ui,sans-serif; }
.reader-change-summary summary { cursor:pointer; font-weight:650; color:var(--accent); }
.reader-change-summary ul { margin:.55rem 0 .3rem; padding-left:1.2rem; }
.reader-change-summary li { margin:.18rem 0; }
.reader-change-summary p { margin:.5rem 0 0; color:var(--muted); font-size:.78rem; }

/* Version summary has its own grid row: opening it must never displace
   the edition label or reading/action controls into unrelated columns. */
.reader-meta-row > .reader-updated { grid-column:1; grid-row:1; align-self:center; }
.reader-meta-row > .reader-meta-actions { grid-column:2; grid-row:1; align-self:center; }
.reader-meta-row > .reader-change-summary {
  grid-column:1 / -1; grid-row:2; justify-self:stretch;
  width:100%; box-sizing:border-box; min-width:0;
  margin:.4rem 0 .7rem;
}
@media(max-width:1230px) {
  .reader-meta-row > .reader-updated { grid-column:1; grid-row:1; }
  .reader-meta-row > .reader-meta-actions { grid-column:1; grid-row:2; }
  .reader-meta-row > .reader-change-summary { grid-column:1; grid-row:3; }
}

/* Search: bounded snippets from the original published page, not another query. */
.reader-search-snippet { line-height:1.6; overflow-wrap:anywhere; }
.reader-search-snippet mark { background:#fff0ac; color:#203843; padding:0 .08em; border-radius:.12em; }

/* Brand mark shares the existing branding column; never widens the header. */
.site-branding { display:flex; align-items:center; gap:.65rem; min-width:0 }
.site-branding__icon { display:flex; flex:0 0 52px; width:52px; height:52px; align-items:center; justify-content:center }
.site-branding__icon img { display:block; width:52px; height:52px; object-fit:contain }
.site-branding__copy { flex:1 1 auto; min-width:0 }
.site-branding__copy .site-brand,.site-branding__copy .site-tagline { overflow-wrap:break-word }
@media(max-width:430px) {
  .site-branding { gap:.45rem }
  .site-branding__icon { flex-basis:40px; width:40px; height:40px }
  .site-branding__icon img { width:40px; height:40px }
}
