[hidden] { display: none !important; }
.skip-link { position: absolute; inset-block-start: .5rem; inset-inline-start: .5rem; z-index: 1000; max-width: calc(100% - 1rem); min-height: 44px; padding: .75rem 1rem; border: 2px solid #063664; border-radius: .5rem; background: white; color: #063664; font-weight: 700; overflow-wrap: anywhere; transform: translateY(-200%); }
.skip-link:focus { transform: none; outline: 3px solid #087eb5; outline-offset: 2px; }
#main-content { scroll-margin-block-start: 1rem; }
#main-content:focus-visible { outline: 3px solid #087eb5; outline-offset: -3px; }
.home-catalog-link a { display: inline-flex; align-items: center; min-height: 44px; overflow-wrap: anywhere; }
.home-catalog-disclosure { margin-block: 1rem; }
.home-catalog-disclosure > summary { min-height: 44px; padding: .75rem 1rem; border: 1px solid #c8d9ec; border-radius: .5rem; background: white; color: #063664; font-weight: 700; cursor: pointer; overflow-wrap: anywhere; }
.home-catalog-disclosure[open] > summary { margin-block-end: 1rem; }
.home-catalog-disclosure > summary:focus-visible, .home-catalog-link a:focus-visible { outline: 3px solid #087eb5; outline-offset: 3px; }
.home-guides-disclosure { margin-block: 1rem; }
.home-guides-disclosure > summary { min-height: 44px; padding: .75rem 1rem; border: 1px solid #c8d9ec; border-radius: .5rem; background: white; color: #063664; font-weight: 700; cursor: pointer; overflow-wrap: anywhere; }
.home-guides-disclosure[open] > summary { margin-block-end: 1rem; }
.home-guides-disclosure > summary:focus-visible { outline: 3px solid #087eb5; outline-offset: 3px; }
.catalog-toolbar { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; margin-block: 1.5rem; }
.catalog-toolbar label { flex-basis: 100%; font-weight: 700; }
.catalog-toolbar input { flex: 1 1 16rem; min-width: 0; padding: .7rem; border: 1px solid #9cb9da; border-radius: .5rem; font: inherit; }
.catalog-toolbar button { padding: .7rem 1rem; border: 1px solid #9cb9da; border-radius: .5rem; background: white; color: #063664; font: inherit; cursor: pointer; }
.catalog-toolbar p { flex-basis: 100%; margin: 0; }
.catalog-jumps { display: flex; flex-wrap: wrap; gap: .6rem; margin-block: 1rem 2rem; }
.catalog-jumps a, .catalog-shortcut { border: 1px solid #c8d9ec; background: white; border-radius: .5rem; padding: .7rem 1rem; overflow-wrap: anywhere; }
.catalog-shortcut-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr)); gap: .75rem; }
.catalog-shortcut { display: block; font-weight: 700; }
.catalog-toolbar :focus-visible, .catalog-jumps a:focus-visible, .catalog-shortcut:focus-visible { outline: 3px solid #087eb5; outline-offset: 3px; }
.listing-section[id] { scroll-margin-block-start: 1rem; }
.catalog-toolbar select, .search-kind-controls select { min-width: 0; max-width: 100%; padding: .7rem; border: 1px solid #9cb9da; border-radius: .5rem; background: white; color: #063664; font: inherit; }
.search-kind-controls { display: flex; flex-wrap: wrap; align-items: center; gap: .65rem; margin-block: 1rem; }
.search-kind-controls label { font-weight: 700; }
.catalog-data-group { margin-block: 1.5rem; }
.catalog-reading-order { margin-block: 1.5rem; padding: 1rem; border: 1px solid #c8d9ec; border-radius: .5rem; background: white; }
.catalog-reading-order li { margin-block: .5rem; overflow-wrap: anywhere; }
.search-status:empty { display: none; }
.search-status { margin-block: 1rem .5rem; font-size: .9rem; }
.search-more, .search-recovery button, .search-recovery a { padding: .7rem 1rem; border: 1px solid #9cb9da; border-radius: .5rem; background: white; color: #063664; font: inherit; cursor: pointer; }
.search-more { margin: .75rem; }
.search-recovery { display: flex; flex-wrap: wrap; gap: .75rem; padding: .75rem; }
.search-more:focus-visible, .search-recovery :focus-visible { outline: 3px solid #087eb5; outline-offset: 3px; }
body > header { flex-wrap: wrap; gap: .75rem 1.25rem; }
body > header .header-actions { min-width: 0; max-width: 100%; flex-wrap: wrap; }
body > header nav { flex-wrap: wrap; gap: .25rem .75rem; min-width: 0; }
body > header nav a { display: inline-flex; align-items: center; min-height: 44px; padding: .35rem .25rem; }
body > header .language-switcher select { min-height: 44px; }
body > header nav a:focus-visible, body > header select:focus-visible { outline: 3px solid #087eb5; outline-offset: 3px; }
.discovery-entry { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: .75rem; margin-block: 1.5rem; }
.discovery-entry a, .discovery-guides a { display: flex; align-items: center; min-height: 44px; padding: .75rem 1rem; border: 1px solid #c8d9ec; border-radius: .5rem; background: white; color: #063664; font-weight: 700; overflow-wrap: anywhere; }
html[lang="de"] .discovery-entry a { hyphens: auto; }
.discovery-guides > div { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: .75rem; }
.discovery-entry a:focus-visible, .discovery-guides a:focus-visible { outline: 3px solid #087eb5; outline-offset: 3px; }
@media(max-width:1024px) { .discovery-entry { grid-template-columns: repeat(2,minmax(0,1fr)); } }
@media(max-width:680px) { .discovery-guides > div { grid-template-columns: 1fr; } }
