:root { --coverit-sticky-header-height:var(--coverit-header-height); --coverit-actionbar-height:0px; --coverit-actionbar-bottom:0px; --coverit-sticky-offset:calc(var(--coverit-sticky-header-height) + var(--coverit-actionbar-height) + 16px); }
/* One bar: path and jump links (user decision 31.10.2026). The path is the breadcrumb; the jump links scroll sideways. */
.section-navigation { position:sticky; top:var(--coverit-sticky-header-height); z-index:20; display:flex; align-items:center; gap:12px; min-height:48px; padding:2px calc(var(--coverit-gutter) + max(0px,(100vw - var(--coverit-shell)) / 2)); background:var(--coverit-background); border-bottom:1px solid var(--coverit-border); }
.section-navigation [hidden] { display:none; }
.section-navigation a { display:flex; align-items:center; min-height:44px; padding:10px 8px; font-size:14px; line-height:1.4; font-weight:600; text-decoration:none; white-space:nowrap; }
.section-navigation a:hover { background:var(--coverit-surface); }
.section-navigation a[aria-current="location"] { color:var(--coverit-accent); text-decoration:underline; text-decoration-thickness:2px; text-underline-offset:.4em; }
.section-navigation :is(button,a,summary):focus-visible { outline:2px solid var(--coverit-accent); outline-offset:-2px; }

.coverit-breadcrumbs { flex:0 1 auto; min-width:0; max-width:55%; }
.coverit-breadcrumbs ol { display:flex; align-items:center; list-style:none; margin:0; padding:0; }
.coverit-breadcrumbs li { display:flex; align-items:center; min-width:0; }
.coverit-breadcrumbs li:last-child { flex:0 1 auto; }
.coverit-breadcrumbs li + li::before { content:'›'; padding-inline:2px; color:var(--coverit-accent); }
/* The start page stays in the markup for the structured data but is not shown: the logo leads there. */
.coverit-breadcrumbs li:first-child { display:none; }
.coverit-breadcrumbs li:nth-child(2)::before { content:none; }
.coverit-breadcrumbs li:nth-child(2) > :is(a,span) { padding-left:0; }
.coverit-breadcrumbs a { color:var(--coverit-muted); font-weight:500; }
.coverit-breadcrumbs a:hover { color:var(--coverit-accent); text-decoration:underline; }
.coverit-breadcrumbs [itemprop="name"] { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.coverit-breadcrumbs [aria-current] { padding:10px 8px; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:14px; line-height:1.4; font-weight:600; color:var(--coverit-accent); }

.section-navigation__divider,.section-navigation__jump { display:none; }
.section-navigation.has-sections .section-navigation__divider { display:block; flex:none; width:1px; height:24px; background:var(--coverit-border); }
.section-navigation.has-sections .section-navigation__jump { --section-cue:40px; display:block; position:relative; flex:1; min-width:0; }
.section-navigation__items { overflow-x:auto; scroll-behavior:auto; scrollbar-width:none; scroll-padding-inline:calc(var(--section-cue) + 8px); overscroll-behavior-x:contain; }
.section-navigation__items::-webkit-scrollbar { display:none; }
.section-navigation ul { display:flex; gap:8px; width:max-content; list-style:none; margin:0; padding:0; }
.section-navigation__scroll { position:absolute; top:0; bottom:0; display:none; width:var(--section-cue); padding:0; border:0; color:var(--coverit-accent); font:600 24px/1 Montserrat,sans-serif; cursor:pointer; }
.section-navigation__scroll--start { left:0; background:linear-gradient(to right,var(--coverit-background) 55%,transparent); text-align:left; }
.section-navigation__scroll--end { right:0; background:linear-gradient(to left,var(--coverit-background) 55%,transparent); text-align:right; }
.section-navigation__jump.can-scroll-start .section-navigation__scroll--start,.section-navigation__jump.can-scroll-end .section-navigation__scroll--end { display:block; }
.section-navigation button { min-height:44px; border:0; background:transparent; color:var(--coverit-text); font:600 14px/1.4 Montserrat,sans-serif; cursor:pointer; }
.section-navigation__filter { flex:none; padding:10px 8px; margin-left:auto; }
html:has(.section-navigation:not([hidden])) { scroll-padding-top:0; }
.section-navigation ~ main,.section-navigation ~ main :is([id],a,button,input,select,textarea,summary) { scroll-margin-top:var(--coverit-sticky-offset); }
.section-search { flex:none; position:relative; margin-left:auto; }
.section-search > summary { display:flex; align-items:center; justify-content:center; width:44px; height:44px; color:var(--coverit-accent); cursor:pointer; list-style:none; }
.section-search > summary::-webkit-details-marker { display:none; }
.section-search__panel { position:fixed; right:var(--coverit-gutter); top:var(--coverit-actionbar-bottom); width:min(520px,calc(100vw - 2 * var(--coverit-gutter))); max-height:calc(100dvh - var(--coverit-actionbar-bottom) - 12px); overflow:auto; overscroll-behavior:contain; padding:20px; background:var(--coverit-background); border:1px solid var(--coverit-border); }
.section-search__panel > strong { display:block; margin-bottom:12px; }
.section-search .coverit-search button { width:44px; }
.section-search .coverit-search__result { white-space:normal; }
.section-search .coverit-search__results { position:static; max-height:none; padding:12px 0; border:0; }
.back-to-top { position:fixed; right:24px; bottom:24px; z-index:25; width:48px; height:48px; display:grid; place-items:center; background:var(--coverit-accent); color:var(--coverit-background); border:1px solid var(--coverit-background); font-size:26px; text-decoration:none; }
.back-to-top[hidden] { display:none; }
/* The fixed button covers the last 72px of the viewport; at the page end the footer's bottom line must stay clear of it. */
@media(min-width:768px) and (min-height:501px) { body:has(.back-to-top:not([hidden])) .site-footer { padding-bottom:88px; } }
@media(max-width:767px) {
 .section-navigation { gap:4px; }
 /* Narrow screens: the path shrinks to a link to the parent page. */
 .coverit-breadcrumbs { max-width:40%; }
 .coverit-breadcrumbs li:not(:nth-last-child(2)) { display:none; }
 .coverit-breadcrumbs li:nth-last-child(2)::before { content:none; }
 .coverit-breadcrumbs li:nth-last-child(2) { display:flex; }
 .coverit-breadcrumbs li:nth-last-child(2) a::before { content:'←'; margin-right:8px; color:var(--coverit-accent); }
 .section-navigation.has-sections .section-navigation__divider { height:20px; }
 /* Touch: swiping scrolls the strip, so the buttons shrink to a fade at the edges. */
 .section-navigation.has-sections .section-navigation__jump { --section-cue:24px; }
 .section-navigation__scroll { font-size:0; pointer-events:none; }
}
@media(max-width:767px),(max-height:500px) {
 .back-to-top { display:none; }
}
@media(prefers-reduced-motion:no-preference) { html { scroll-behavior:smooth; } }

.coverit-passage-hit { scroll-margin-top:var(--coverit-sticky-offset); animation:passage-fade var(--coverit-mark-duration) ease-out forwards; }
@keyframes passage-fade { 0%,35% { background:var(--coverit-accent); color:var(--coverit-background); } 100% { background:transparent; } }
@media(prefers-reduced-motion:reduce) { .coverit-passage-hit { animation:none; outline:3px solid var(--coverit-accent); } }

.coverit-word-hit { animation:word-fade var(--coverit-mark-duration) ease-out forwards; color:inherit; }
@keyframes word-fade { 0%,35% { background:var(--coverit-mark); color:var(--coverit-background); } 100% { background:transparent; color:inherit; } }
@media(prefers-reduced-motion:reduce) { .coverit-word-hit { animation:none; background:var(--coverit-mark); color:var(--coverit-background); } }
