/* ============================================================
   BOMOTS Design System – editorial / technical handbook
   Warm paper palette, system fonts, no external resources.
   ============================================================ */

:root {
  /* Palette */
  --paper: #F6F2E9;
  --warm-white: #FFFDF8;
  --ink: #191817;
  --graphite: #34312E;
  --orange: #D95C35;
  --orange-dark: #B8481F;
  --green: #789B5A;
  --green-dark: #566E3F;
  --mustard: #E6B84A;
  --sand: #DED6C8;
  --light-grey: #EAE6DE;
  --line: #D8CFBF;
  --muted: #6B655C;

  /* Fonts */
  --font-editorial: Georgia, "Times New Roman", serif;
  --font-ui: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
  --font-code: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;

  /* Layout */
  --maxw: 1180px;
  --readw: 46rem;
  --radius: 6px;
  --radius-lg: 12px;
  --shadow: 0 1px 2px rgba(25,24,23,.06), 0 6px 18px rgba(25,24,23,.06);
  --gap: clamp(1rem, 2.4vw, 1.6rem);
}

*, *::before, *::after { box-sizing: border-box; }

html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .001ms !important; transition-duration: .001ms !important; }
}

body {
  margin: 0;
  font-family: var(--font-ui);
  font-size: 1.0625rem;
  line-height: 1.65;
  color: var(--ink);
  background: var(--paper);
  overflow-x: hidden;
  text-rendering: optimizeLegibility;
}

/* ---------- Typography ---------- */
h1, h2, h3, h4 { font-family: var(--font-editorial); line-height: 1.2; color: var(--ink); font-weight: 700; }
h1 { font-size: clamp(1.9rem, 4.5vw, 2.9rem); margin: 0 0 .5rem; letter-spacing: -.01em; }
h2 { font-size: clamp(1.4rem, 3vw, 1.9rem); margin: 2.4rem 0 .8rem; padding-top: .4rem; }
h3 { font-size: clamp(1.15rem, 2.2vw, 1.35rem); margin: 1.8rem 0 .6rem; }
h4 { font-size: 1.05rem; margin: 1.4rem 0 .4rem; font-family: var(--font-ui); font-weight: 700; }
p { margin: 0 0 1rem; }
a { color: var(--orange-dark); text-underline-offset: .16em; }
a:hover { color: var(--orange); }
strong { font-weight: 700; }
small { font-size: .85rem; color: var(--muted); }
code, kbd, samp { font-family: var(--font-code); font-size: .92em; background: var(--light-grey); padding: .1em .35em; border-radius: 4px; }
pre { background: var(--graphite); color: #f4efe6; padding: 1rem 1.1rem; border-radius: var(--radius); overflow-x: auto; font-family: var(--font-code); font-size: .9rem; line-height: 1.5; }
pre code { background: none; padding: 0; color: inherit; }
hr { border: 0; border-top: 1px solid var(--line); margin: 2rem 0; }
ul, ol { margin: 0 0 1rem; padding-left: 1.3rem; }
li { margin: .3rem 0; }
blockquote { margin: 1.2rem 0; padding: .4rem 0 .4rem 1.1rem; border-left: 4px solid var(--mustard); color: var(--graphite); font-family: var(--font-editorial); font-style: italic; }

/* ---------- Skip link & focus ---------- */
.skip-link {
  position: absolute; left: -999px; top: 0; z-index: 1000;
  background: var(--ink); color: #fff; padding: .7rem 1rem; border-radius: 0 0 var(--radius) 0;
}
.skip-link:focus { left: 0; }
:focus-visible { outline: 3px solid var(--orange); outline-offset: 2px; border-radius: 3px; }

/* ---------- Layout helpers ---------- */
.container { width: 100%; max-width: var(--maxw); margin-inline: auto; padding-inline: clamp(1rem, 4vw, 2rem); }
.prose { max-width: var(--readw); }
.prose h2, .prose h3 { max-width: 100%; }
.section { padding-block: clamp(2.2rem, 5vw, 3.6rem); }
.section--tint { background: var(--warm-white); border-block: 1px solid var(--line); }
.section--sand { background: var(--sand); }
.grid { display: grid; gap: var(--gap); }
.grid-2 { grid-template-columns: repeat(auto-fit, minmax(min(100%, 20rem), 1fr)); }
.grid-3 { grid-template-columns: repeat(auto-fit, minmax(min(100%, 16rem), 1fr)); }
.grid-4 { grid-template-columns: repeat(auto-fit, minmax(min(100%, 13rem), 1fr)); }
.center { text-align: center; }
.mt0 { margin-top: 0; } .mb0 { margin-bottom: 0; }

/* ---------- Header / navigation ---------- */
.site-header { position: sticky; top: 0; z-index: 100; background: var(--warm-white); border-bottom: 1px solid var(--line); }
.site-header .container { max-width: 1340px; }
.topbar { display: flex; align-items: center; gap: 1rem; padding-block: .6rem; }
.brand { display: inline-flex; align-items: center; gap: .55rem; text-decoration: none; color: var(--ink); font-weight: 700; }
.brand svg { display: block; height: 30px; width: auto; }
.brand__sub { font-size: .66rem; color: var(--muted); letter-spacing: .02em; display: none; }
@media (min-width: 1440px) { .brand__sub { display: block; } }
.nav { margin-left: auto; }
.nav__list { list-style: none; display: flex; gap: .05rem; margin: 0; padding: 0; align-items: center; }
.nav__item { position: relative; }
.nav__link { display: inline-block; padding: .5rem .5rem; border-radius: var(--radius); text-decoration: none; color: var(--graphite); font-weight: 600; font-size: .9rem; white-space: nowrap; }
.nav__link:hover, .nav__item:focus-within > .nav__link { background: var(--light-grey); color: var(--ink); }
.nav__panel {
  position: absolute; top: 100%; left: 0; min-width: 16rem;
  background: var(--warm-white); border: 1px solid var(--line); border-radius: var(--radius);
  box-shadow: var(--shadow); padding: .5rem; list-style: none; margin: .2rem 0 0;
  opacity: 0; visibility: hidden; transform: translateY(4px); transition: opacity .12s, transform .12s;
}
.nav__item:hover > .nav__panel, .nav__item:focus-within > .nav__panel { opacity: 1; visibility: visible; transform: translateY(0); }
.nav__panel a { display: block; padding: .45rem .6rem; border-radius: var(--radius); text-decoration: none; color: var(--graphite); font-size: .92rem; }
.nav__panel a:hover { background: var(--light-grey); color: var(--ink); }
.nav__utility a { color: var(--muted); font-weight: 600; }
.nav__item--mobile { display: none; }

.nav-toggle { display: none; margin-left: auto; background: var(--ink); color: #fff; border: 0; border-radius: var(--radius); padding: .55rem .8rem; font: inherit; font-weight: 600; cursor: pointer; align-items: center; gap: .4rem; }
.nav-toggle svg { width: 18px; height: 18px; }
/* Close button: hidden everywhere by default; only shown inside the open mobile menu. */
.nav-close { display: none; }
/* Header search + Tool-Finder button (desktop utility area) */
.nav-search { display: inline-flex; align-items: center; justify-content: center; width: 2.4rem; height: 2.4rem; border-radius: var(--radius); color: var(--graphite); text-decoration: none; }
.nav-search:hover { background: var(--light-grey); color: var(--ink); }
.nav-search svg { width: 20px; height: 20px; }
.nav-cta { white-space: nowrap; }
.header-utils { display: flex; align-items: center; gap: .4rem; margin-left: .6rem; }
@media (max-width: 1200px) { .header-utils { margin-left: auto; } .header-utils .nav-cta { display: none; } }

@media (max-width: 1200px) {
  .nav-toggle { display: inline-flex; }
  .nav {
    position: fixed; inset: 0 0 0 auto; width: min(88vw, 22rem); margin: 0;
    background: var(--warm-white); border-left: 1px solid var(--line);
    transform: translateX(100%); transition: transform .2s ease; overflow-y: auto; padding: 4.2rem 1rem 2rem; z-index: 200;
  }
  .nav[data-open="true"] { transform: translateX(0); box-shadow: -8px 0 30px rgba(0,0,0,.15); }
  .nav__list { flex-direction: column; align-items: stretch; gap: .1rem; }
  .nav__panel { position: static; opacity: 1; visibility: visible; transform: none; box-shadow: none; border: 0; border-left: 2px solid var(--line); border-radius: 0; margin: .1rem 0 .5rem .6rem; padding: .2rem; }
  .nav__link { font-size: 1rem; }
  .nav__item--mobile { display: block; border-top: 1px solid var(--line); margin-top: .3rem; padding-top: .3rem; }
  .nav-close { position: fixed; top: .8rem; right: .8rem; z-index: 210; background: var(--ink); color:#fff; border:0; border-radius: var(--radius); width: 2.4rem; height: 2.4rem; font-size: 1.3rem; cursor: pointer; display: none; }
  .nav[data-open="true"] ~ .nav-close, body[data-nav-open="true"] .nav-close { display: block; }
  .nav-backdrop { position: fixed; inset: 0; background: rgba(25,24,23,.4); z-index: 150; opacity: 0; visibility: hidden; transition: opacity .2s; }
  body[data-nav-open="true"] .nav-backdrop { opacity: 1; visibility: visible; }
  body[data-nav-open="true"] { overflow: hidden; }
}

/* ---------- Breadcrumbs ---------- */
.breadcrumbs { font-size: .85rem; color: var(--muted); padding-block: .7rem; }
.breadcrumbs ol { list-style: none; display: flex; flex-wrap: wrap; gap: .3rem; margin: 0; padding: 0; }
.breadcrumbs li::after { content: "›"; margin-left: .3rem; color: var(--line); }
.breadcrumbs li:last-child::after { content: ""; }
.breadcrumbs a { color: var(--muted); text-decoration: none; }
.breadcrumbs a:hover { color: var(--orange-dark); text-decoration: underline; }

/* ---------- Hero ---------- */
.hero { background: linear-gradient(180deg, var(--warm-white), var(--paper)); border-bottom: 1px solid var(--line); position: relative; }
.hero__grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: clamp(1.5rem, 4vw, 3rem); align-items: center; }
@media (max-width: 860px) { .hero__grid { grid-template-columns: 1fr; } }
.hero .eyebrow { color: var(--orange-dark); }
.hero__art { border: 1px solid var(--line); border-radius: var(--radius-lg); background: var(--warm-white); padding: 1rem; box-shadow: var(--shadow); }
.hero__art svg { width: 100%; height: auto; display: block; }

.eyebrow { font-family: var(--font-ui); text-transform: uppercase; letter-spacing: .12em; font-size: .78rem; font-weight: 700; color: var(--muted); margin-bottom: .6rem; }

/* ---------- Lead / direct answer ---------- */
.lead { font-size: 1.2rem; line-height: 1.55; color: var(--graphite); font-family: var(--font-editorial); }
.answer {
  border-left: 4px solid var(--orange); background: var(--warm-white);
  padding: 1rem 1.2rem; border-radius: 0 var(--radius) var(--radius) 0; margin: 1.2rem 0 1.6rem;
}
.answer p:last-child { margin-bottom: 0; }
.answer strong { color: var(--orange-dark); }

/* ---------- Buttons ---------- */
.btn { display: inline-flex; align-items: center; gap: .5rem; font: inherit; font-weight: 600; text-decoration: none; cursor: pointer; border-radius: var(--radius); padding: .7rem 1.15rem; border: 2px solid transparent; transition: background .12s, border-color .12s; line-height: 1.1; }
.btn--primary { background: var(--orange); color: #fff; }
.btn--primary:hover { background: var(--orange-dark); color: #fff; }
.btn--ghost { background: transparent; border-color: var(--graphite); color: var(--graphite); }
.btn--ghost:hover { background: var(--graphite); color: #fff; }
.btn--sm { padding: .45rem .8rem; font-size: .9rem; }
.btn-row { display: flex; flex-wrap: wrap; gap: .7rem; margin-top: 1.2rem; }

/* ---------- Cards ---------- */
.card { background: var(--warm-white); border: 1px solid var(--line); border-radius: var(--radius-lg); padding: 1.2rem; box-shadow: var(--shadow); display: flex; flex-direction: column; }
.card h3 { margin-top: 0; }
.card--link { text-decoration: none; color: inherit; transition: transform .12s, border-color .12s; }
.card--link:hover { transform: translateY(-2px); border-color: var(--orange); }
.card__tag { display: inline-block; font-size: .72rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--green-dark); margin-bottom: .4rem; }
.card__icon { width: 40px; height: 40px; margin-bottom: .7rem; color: var(--orange); }
.card p { color: var(--graphite); }
.card .card__more { margin-top: auto; padding-top: .6rem; font-weight: 600; color: var(--orange-dark); }

/* ---------- Callouts ---------- */
.callout { border: 1px solid var(--line); border-left: 4px solid var(--green); background: var(--warm-white); padding: 1rem 1.15rem; border-radius: 0 var(--radius) var(--radius) 0; margin: 1.4rem 0; }
.callout--warn { border-left-color: var(--orange); }
.callout--legal { border-left-color: var(--mustard); background: #fbf6e9; }
.callout--info { border-left-color: var(--graphite); }
.callout__title { font-weight: 700; margin-bottom: .3rem; display: block; }
.callout p:last-child { margin-bottom: 0; }

/* ---------- Next step ---------- */
.nextstep { background: #e9f0e0; border: 1px solid var(--green); border-left: 5px solid var(--green); border-radius: 0 var(--radius) var(--radius) 0; padding: 1rem 1.2rem; margin: 1.8rem 0; }
.nextstep__label { display: block; font-size: .75rem; text-transform: uppercase; letter-spacing: .06em; font-weight: 700; color: var(--green-dark); margin-bottom: .3rem; }
.nextstep p { margin: 0; font-family: var(--font-editorial); font-size: 1.1rem; }
.nextstep a { font-weight: 700; }

/* ---------- Meta line (dates) ---------- */
.pagemeta { display: flex; flex-wrap: wrap; gap: .4rem 1.2rem; font-size: .82rem; color: var(--muted); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); padding: .7rem 0; margin: 1.2rem 0 1.6rem; }
.pagemeta b { color: var(--graphite); font-weight: 600; }
.affiliate-note { display: inline-block; font-size: .8rem; background: #fbf6e9; border: 1px solid var(--mustard); color: var(--graphite); padding: .3rem .6rem; border-radius: var(--radius); margin: .4rem 0; }

/* ---------- Tables ---------- */
.table-wrap { overflow-x: auto; margin: 1.2rem 0; border: 1px solid var(--line); border-radius: var(--radius); }
table { border-collapse: collapse; width: 100%; font-size: .95rem; min-width: 34rem; }
caption { text-align: left; font-size: .85rem; color: var(--muted); padding: .5rem .6rem; }
th, td { text-align: left; padding: .6rem .75rem; border-bottom: 1px solid var(--line); vertical-align: top; }
thead th { background: var(--light-grey); font-family: var(--font-ui); font-weight: 700; position: sticky; left: auto; }
tbody tr:nth-child(even) { background: rgba(222,214,200,.28); }
th[scope="row"] { font-weight: 600; }

/* ---------- Definition list / glossary ---------- */
.gloss { display: grid; gap: 1rem; }
.gloss__item { background: var(--warm-white); border: 1px solid var(--line); border-radius: var(--radius); padding: 1rem 1.1rem; scroll-margin-top: 5rem; }
.gloss__item h3 { margin: 0 0 .3rem; }
.gloss__term-links a { display: inline-block; margin: .2rem .3rem .2rem 0; font-size: .82rem; background: var(--light-grey); padding: .15rem .5rem; border-radius: 20px; text-decoration: none; color: var(--graphite); }

/* ---------- Sources ---------- */
.sources { background: var(--light-grey); border-radius: var(--radius); padding: 1.1rem 1.3rem; margin: 2rem 0 1rem; }
.sources h2 { margin-top: .2rem; font-size: 1.15rem; }
.sources ol { margin: 0; padding-left: 1.2rem; }
.sources li { margin: .5rem 0; font-size: .92rem; }
.sources .src-type { color: var(--muted); font-size: .82rem; }

/* ---------- FAQ ---------- */
.faq details { border: 1px solid var(--line); border-radius: var(--radius); background: var(--warm-white); margin: .6rem 0; padding: .2rem .3rem; }
.faq summary { cursor: pointer; font-weight: 600; padding: .8rem 1rem; list-style: none; font-family: var(--font-ui); }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::before { content: "+"; display: inline-block; width: 1.2rem; color: var(--orange); font-weight: 700; }
.faq details[open] summary::before { content: "–"; }
.faq details > p, .faq details > ul { padding: 0 1rem 1rem 2.2rem; margin: 0; }

/* ---------- Chips / TOC ---------- */
.chips { display: flex; flex-wrap: wrap; gap: .5rem; margin: 1rem 0; padding: 0; list-style: none; }
.chips a { display: inline-block; background: var(--warm-white); border: 1px solid var(--line); border-radius: 20px; padding: .35rem .8rem; text-decoration: none; color: var(--graphite); font-size: .88rem; font-weight: 600; }
.chips a:hover { border-color: var(--orange); color: var(--orange-dark); }
.toc { background: var(--warm-white); border: 1px solid var(--line); border-radius: var(--radius); padding: 1rem 1.2rem; margin: 1.4rem 0; }
.toc strong { display: block; margin-bottom: .4rem; }
.toc ul { columns: 2; column-gap: 2rem; margin: 0; }
@media (max-width: 640px) { .toc ul { columns: 1; } }

/* ---------- Status badges ---------- */
.badge { display: inline-block; font-size: .72rem; font-weight: 700; padding: .12rem .5rem; border-radius: 20px; letter-spacing: .02em; }
.badge--green { background: #e5efdb; color: var(--green-dark); }
.badge--orange { background: #f9e2d8; color: var(--orange-dark); }
.badge--grey { background: var(--light-grey); color: var(--muted); }
.badge--mustard { background: #f7eccb; color: #8a6b16; }

/* ---------- Tool UI (local browser tools) ---------- */
.tool { background: var(--warm-white); border: 1px solid var(--line); border-radius: var(--radius-lg); padding: clamp(1rem,3vw,1.6rem); box-shadow: var(--shadow); }
.tool fieldset { border: 1px solid var(--line); border-radius: var(--radius); padding: 1rem 1.1rem; margin: 0 0 1.2rem; }
.tool legend { font-weight: 700; padding: 0 .4rem; font-family: var(--font-editorial); }
.field { margin-bottom: 1rem; }
.field > label { display: block; font-weight: 600; margin-bottom: .3rem; }
.field .hint { font-size: .82rem; color: var(--muted); margin: .2rem 0 .4rem; }
input[type=text], input[type=number], input[type=email], input[type=search], select, textarea {
  width: 100%; font: inherit; padding: .6rem .7rem; border: 1px solid var(--line); border-radius: var(--radius); background: var(--paper); color: var(--ink);
}
textarea { min-height: 6rem; resize: vertical; }
.opts { display: flex; flex-wrap: wrap; gap: .5rem; }
.opts label { display: inline-flex; align-items: center; gap: .4rem; background: var(--paper); border: 1px solid var(--line); border-radius: 20px; padding: .4rem .8rem; cursor: pointer; font-size: .92rem; }
.opts input { accent-color: var(--orange); }
.opts label:has(input:checked) { border-color: var(--orange); background: #fbeee8; }
output, .result { display: block; }
.result-card { background: var(--paper); border: 1px solid var(--line); border-left: 4px solid var(--green); border-radius: 0 var(--radius) var(--radius) 0; padding: 1rem 1.1rem; margin: .8rem 0; }
.copybar { display: flex; gap: .6rem; flex-wrap: wrap; align-items: center; }
.big-number { font-family: var(--font-editorial); font-size: 1.9rem; color: var(--ink); }
.visually-hidden { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }

/* ---------- Search ---------- */
.searchbox { display: flex; gap: .5rem; margin: 1rem 0; }
.search-results li { list-style: none; }
.search-results { padding: 0; }
.search-hit { display: block; background: var(--warm-white); border: 1px solid var(--line); border-radius: var(--radius); padding: .8rem 1rem; margin: .6rem 0; text-decoration: none; color: inherit; }
.search-hit:hover { border-color: var(--orange); }
.search-hit .kicker { font-size: .75rem; text-transform: uppercase; letter-spacing: .05em; color: var(--green-dark); font-weight: 700; }

/* ---------- Footer ---------- */
.site-footer { background: var(--ink); color: #d9d3c8; margin-top: 3rem; }
.site-footer a { color: #ecdccf; text-decoration: none; }
.site-footer a:hover { color: #fff; text-decoration: underline; }
.footer__grid { display: grid; grid-template-columns: 1.4fr repeat(5, 1fr); gap: 1.4rem; padding-block: 2.4rem; }
@media (max-width: 980px) { .footer__grid { grid-template-columns: 1fr 1fr; } }
@media (max-width: 520px) { .footer__grid { grid-template-columns: 1fr; } }
.footer__brand svg { height: 30px; margin-bottom: .6rem; }
.footer__col h4 { color: #fff; font-family: var(--font-ui); font-size: .82rem; text-transform: uppercase; letter-spacing: .08em; margin: 0 0 .6rem; }
.footer__col ul { list-style: none; margin: 0; padding: 0; }
.footer__col li { margin: .3rem 0; font-size: .92rem; }
.footer__bottom { border-top: 1px solid #3a3733; padding-block: 1.1rem; font-size: .82rem; color: #b7b0a4; display: flex; flex-wrap: wrap; gap: .6rem 1.4rem; justify-content: space-between; }

/* ---------- Utility ---------- */
.eq-note { font-size: .82rem; color: var(--muted); }
.pill-list { display: flex; flex-wrap: wrap; gap: .4rem; padding: 0; list-style: none; margin: .6rem 0; }
.pill-list li { background: var(--light-grey); border-radius: 20px; padding: .2rem .7rem; font-size: .85rem; }
img { max-width: 100%; height: auto; }
figure { margin: 1.4rem 0; }
figure svg { width: 100%; height: auto; border: 1px solid var(--line); border-radius: var(--radius); background: var(--warm-white); }
figcaption { font-size: .85rem; color: var(--muted); margin-top: .4rem; }

/* ---------- Content layout with sidebar ---------- */
:root { --header-height: 58px; }
.content-layout { display: grid; grid-template-columns: minmax(0, 780px) minmax(280px, 320px); gap: clamp(32px, 4vw, 56px); align-items: start; }
.content-layout__main { min-width: 0; max-width: 820px; }
.content-layout__sidebar { display: flex; flex-direction: column; gap: 1rem; font-size: .95rem; }
@media (max-width: 1024px) { .content-layout { grid-template-columns: minmax(0, 1fr) 280px; gap: 32px; } }
@media (max-width: 860px) { .content-layout { grid-template-columns: minmax(0, 1fr); } .content-layout__sidebar { order: 3; margin-top: 1.5rem; } }

.sidebar-card { background: var(--warm-white); border: 1px solid var(--line); border-radius: var(--radius); padding: 1rem 1.1rem; }
.sidebar-card__eyebrow { font-size: .72rem; text-transform: uppercase; letter-spacing: .08em; font-weight: 700; color: var(--muted); margin: 0 0 .5rem; }
.sidebar-card ul { list-style: none; margin: 0; padding: 0; }
.sidebar-card li { margin: .35rem 0; }
.sidebar-card li a { text-decoration: none; color: var(--graphite); }
.sidebar-card li a:hover { color: var(--orange-dark); text-decoration: underline; }
.sidebar-card p { margin: 0 0 .5rem; }
.sidebar-card p:last-child { margin-bottom: 0; }
.sidebar-toc ul { border-left: 2px solid var(--line); padding-left: .8rem; }
.sidebar-toc li a { font-size: .9rem; }

.author-card__header { display: flex; gap: .7rem; align-items: center; margin-bottom: .5rem; }
.author-card__header img { border-radius: 50%; width: 64px; height: 64px; object-fit: cover; flex: 0 0 auto; border: 1px solid var(--line); }
.author-card__name { margin: 0; font-weight: 700; }
.author-card__name a { text-decoration: none; color: var(--ink); }
.author-card__role { margin: 0; font-size: .85rem; color: var(--muted); }
.author-card__description { font-size: .9rem; color: var(--graphite); margin: .3rem 0 .5rem; }
.author-card__review { font-size: .85rem; color: var(--muted); margin: .2rem 0 .5rem; }
.author-card__more { font-weight: 600; font-size: .9rem; text-decoration: none; }

.sidebar-ad { min-height: 250px; display: flex; flex-direction: column; justify-content: center; background: var(--paper); }
.ad-label { font-size: .66rem; text-transform: uppercase; letter-spacing: .08em; font-weight: 700; color: var(--muted); border: 1px solid var(--line); border-radius: 20px; padding: .12rem .55rem; align-self: flex-start; margin-bottom: .7rem; }
.ad-body { text-decoration: none; color: inherit; display: block; }
.ad-body strong { display: block; color: var(--ink); margin-bottom: .35rem; font-family: var(--font-editorial); font-size: 1.08rem; }
.ad-body span { color: var(--graphite); font-size: .9rem; }
.ad-body:hover strong { color: var(--orange-dark); }

@media (min-width: 1025px) { .sidebar-sticky { position: sticky; top: calc(var(--header-height) + 20px); } }
@media (max-height: 720px) and (min-width: 1025px) { .sidebar-sticky { position: static; } }

/* Author profile page bits */
.author-profile__head { display: flex; gap: 1.2rem; align-items: center; flex-wrap: wrap; margin: 1rem 0 1.4rem; }
.author-profile__head img { width: 120px; height: 120px; border-radius: 50%; object-fit: cover; border: 1px solid var(--line); }
.authors-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr)); gap: 1rem; }
.authors-grid .author-card__header img { width: 72px; height: 72px; }

/* Author hero (ProfilePage) */
.author-hero { display: grid; grid-template-columns: 148px 1fr; gap: clamp(1rem, 3vw, 2rem); align-items: start; background: var(--warm-white); border: 1px solid var(--line); border-radius: var(--radius-lg); padding: clamp(1.1rem, 3vw, 1.7rem); margin: 0 0 1.6rem; box-shadow: var(--shadow); }
.author-hero__media { align-self: start; }
.author-mono { width: 148px; height: 148px; border-radius: 18px; object-fit: cover; border: 1px solid var(--line); background: var(--light-grey); display: block; }
.author-mono--photo { border-radius: 50%; border: 2px solid var(--mustard); background: var(--warm-white); }
.author-hero__body { min-width: 0; }
.author-hero__pos { font-family: var(--font-editorial); font-size: clamp(1.1rem, 2.4vw, 1.3rem); line-height: 1.3; color: var(--ink); margin: 0 0 .5rem; }
.author-hero__lead { color: var(--graphite); margin: 0 0 .9rem; }
.author-hero__actions { display: flex; flex-wrap: wrap; gap: .5rem; margin: .2rem 0 .8rem; }
.author-hero__updated { font-size: .82rem; color: var(--muted); margin: .7rem 0 0; }
.author-hero .social-links { margin: .3rem 0 0; }
@media (max-width: 640px) {
  .author-hero { grid-template-columns: 96px 1fr; gap: 1rem; padding: 1rem; }
  .author-mono { width: 96px; height: 96px; }
}

/* Profile-Fakten (Label/Wert – bewusst KEINE Datentabelle für Personen) */
.profile-facts { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 14rem), 1fr)); gap: .5rem .9rem; margin: .6rem 0 .2rem; padding: 0; }
.profile-fact { border-left: 3px solid var(--sand); padding: .1rem 0 .1rem .7rem; }
.profile-fact dt { font-size: .72rem; letter-spacing: .04em; text-transform: uppercase; color: var(--muted); margin: 0; }
.profile-fact dd { margin: .05rem 0 0; font-weight: 600; color: var(--ink); font-size: .95rem; }

/* Expertise-Karten (statt Mini-Tag-Wolke) */
.expertise-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr)); gap: .9rem; margin: 1rem 0 .4rem; }
.expertise-card { border: 1px solid var(--line); border-radius: var(--radius-lg); background: var(--warm-white); padding: 1rem; }
.expertise-card__tag { display: inline-block; font-size: .68rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--orange-dark); background: #fbeee6; border-radius: 20px; padding: .12rem .6rem; margin-bottom: .4rem; }
.expertise-card h3 { margin: .1rem 0 .3rem; font-size: 1.05rem; }
.expertise-card p { margin: 0; font-size: .92rem; color: var(--graphite); }

/* Beiträge eines Autors (direkt unter dem Hero) */
.author-posts { margin: 0 0 1.8rem; }
.author-posts__head { display: flex; flex-wrap: wrap; align-items: baseline; gap: .3rem .8rem; }
.author-posts__head h2 { margin: 0; }
.author-posts__count { font-size: .88rem; color: var(--muted); margin: 0; }
.post-featured { display: block; border: 1px solid var(--line); border-left: 4px solid var(--orange); border-radius: var(--radius-lg); background: var(--warm-white); padding: 1rem 1.1rem; margin: .8rem 0; text-decoration: none; color: var(--ink); box-shadow: var(--shadow); }
.post-featured:hover, .post-featured:focus-visible { border-color: var(--ink); border-left-color: var(--orange); }
.post-featured__kind { display: inline-block; font-size: .68rem; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; color: var(--orange-dark); margin-bottom: .25rem; }
.post-featured__title { display: block; font-family: var(--font-editorial); font-size: 1.2rem; font-weight: 700; line-height: 1.3; }
.post-featured__desc { display: block; color: var(--graphite); font-size: .95rem; margin-top: .25rem; }
.post-featured__meta { display: block; color: var(--muted); font-size: .82rem; margin-top: .4rem; }
.post-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 15rem), 1fr)); gap: .8rem; margin: .3rem 0; }
.post-card { display: flex; flex-direction: column; border: 1px solid var(--line); border-radius: var(--radius-lg); background: var(--warm-white); padding: .8rem .9rem; text-decoration: none; color: var(--ink); }
.post-card:hover, .post-card:focus-visible { border-color: var(--ink); background: var(--light-grey); }
.post-card__kind { font-size: .68rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--muted); }
.post-card__title { font-weight: 700; line-height: 1.3; }
.post-card__desc { font-size: .86rem; color: var(--graphite); margin-top: .2rem; }
.post-card__meta { font-size: .78rem; color: var(--muted); margin-top: .45rem; }
.author-posts__more { font-size: .9rem; color: var(--graphite); margin: .7rem 0 0; }
.author-posts__reviewed { margin-top: 1rem; }
.author-posts__reviewed h3 { font-size: 1rem; margin: 0 0 .3rem; }
.link-list { margin: 0; padding-left: 1.1rem; }
.link-list li { margin: .15rem 0; }

/* Social links */
.social-links { display: flex; flex-wrap: wrap; gap: .5rem; list-style: none; padding: 0; margin: .8rem 0; }
.social-links a { display: inline-flex; align-items: center; gap: .4rem; padding: .4rem .7rem; border: 1px solid var(--line); border-radius: 20px; background: var(--paper); text-decoration: none; color: var(--graphite); font-size: .85rem; font-weight: 600; }
.social-links a:hover { border-color: var(--orange); color: var(--orange-dark); }
.social-links svg { width: 16px; height: 16px; flex: 0 0 auto; }

/* Facts table (author) */
.facts th { width: 34%; }

/* Transparency note */
.transparency { font-size: .85rem; color: var(--muted); background: var(--light-grey); border-radius: var(--radius); padding: .6rem .8rem; margin: 0 0 1.4rem; }

/* End-of-article author box */
.author-box-end { display: flex; gap: 1rem; align-items: flex-start; background: var(--warm-white); border: 1px solid var(--line); border-left: 4px solid var(--green); border-radius: 0 var(--radius) var(--radius) 0; padding: 1rem 1.1rem; margin: 2rem 0 0; }
.author-box-end img { width: 72px; height: 72px; border-radius: 50%; object-fit: cover; flex: 0 0 auto; border: 1px solid var(--line); }
.author-box-end__name { font-weight: 700; margin: .1rem 0 .3rem; }
.author-box-end__name a { text-decoration: none; color: var(--ink); }
.author-box-end__name span { font-weight: 400; color: var(--muted); font-size: .9rem; }
.author-box-end p { margin: 0 0 .4rem; font-size: .92rem; }

/* Pending/approval banner */
.pending-banner { background: #fbf6e9; border: 1px solid var(--mustard); border-radius: var(--radius); padding: .8rem 1rem; margin: 0 0 1.2rem; font-size: .9rem; }

/* ---------- Homepage author cards ---------- */
.author-home-card__head { display: flex; gap: .7rem; align-items: center; margin-bottom: .6rem; }
.author-home-card__head img { width: 64px; height: 64px; border-radius: 50%; object-fit: cover; border: 1px solid var(--line); flex: 0 0 auto; }
.author-home-card__head h3 { margin: 0; }
.author-home-card__role { margin: 0; font-size: .85rem; color: var(--muted); }
.author-home-card__label { font-size: .78rem; text-transform: uppercase; letter-spacing: .05em; color: var(--muted); font-weight: 700; margin: .4rem 0 .2rem; }
.author-home-card__arts { margin: 0 0 .6rem; padding-left: 1.1rem; font-size: .92rem; }
.author-home-card__arts li { margin: .15rem 0; }

/* ---------- Glossary ---------- */
.glossary-controls { position: sticky; top: var(--header-height); background: var(--paper); padding: .8rem 0; z-index: 5; border-bottom: 1px solid var(--line); margin-bottom: 1.4rem; }
.az-nav ul { display: flex; flex-wrap: wrap; gap: .2rem; list-style: none; padding: 0; margin: .6rem 0 .3rem; overflow-x: auto; }
.az-nav a, .az-nav span { display: inline-flex; align-items: center; justify-content: center; min-width: 1.9rem; height: 1.9rem; border-radius: var(--radius); font-weight: 700; font-size: .82rem; text-decoration: none; }
.az-nav a { background: var(--warm-white); border: 1px solid var(--line); color: var(--graphite); }
.az-nav a:hover { border-color: var(--orange); color: var(--orange-dark); }
.az-nav span[aria-disabled] { color: var(--line); }
.glossary-filter { display: flex; flex-wrap: wrap; gap: .4rem; margin: .3rem 0; }
.chip-btn { font: inherit; font-size: .85rem; font-weight: 600; padding: .3rem .75rem; border-radius: 20px; border: 1px solid var(--line); background: var(--warm-white); color: var(--graphite); cursor: pointer; }
.chip-btn.is-active { background: var(--ink); color: #fff; border-color: var(--ink); }
.chip-btn:hover { border-color: var(--orange); }
.gloss-group { margin-bottom: 1.4rem; }
.gloss-letter { font-size: 1.6rem; color: var(--orange-dark); border-bottom: 2px solid var(--line); padding-bottom: .2rem; margin: 1.2rem 0 .8rem; }
.gloss-term { background: var(--warm-white); border: 1px solid var(--line); border-radius: var(--radius); padding: 1rem 1.1rem; margin: .7rem 0; scroll-margin-top: 8rem; }
.gloss-term__head { display: flex; align-items: baseline; justify-content: space-between; gap: .6rem; flex-wrap: wrap; }
.gloss-term__head h3 { margin: 0; }
.gloss-term__eng { font-size: .82rem; color: var(--muted); margin: .1rem 0 .5rem; font-family: var(--font-code); }
.gloss-term__links { font-size: .85rem; margin-top: .4rem; }
.gloss-term p { margin: .3rem 0; }

/* ---------- Print ---------- */
@media print {
  .site-header, .site-footer, .nav-toggle, .btn-row, .breadcrumbs, .nav-backdrop { display: none !important; }
  body { background: #fff; color: #000; font-size: 11pt; }
  a { color: #000; text-decoration: underline; }
  .card, .tool, .callout, .answer { break-inside: avoid; border-color: #999; box-shadow: none; }
  .section { padding-block: .6rem; }
  h2, h3 { break-after: avoid; }
}

/* =========================================================
   KI-Tool-Verzeichnis & Finder (Rev. 5)
   ========================================================= */
.tool-toolbar{display:flex;flex-wrap:wrap;gap:.7rem;align-items:flex-end;margin:1rem 0 .5rem}
.tool-search{flex:1 1 240px;min-width:0;display:flex;flex-direction:column;gap:.25rem}
.tool-search label{font-weight:600;font-size:.9rem}
.tool-search input[type=search]{width:100%;padding:.6rem .75rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--warm-white);font:inherit}
.tool-quick{display:flex;flex-wrap:wrap;gap:.4rem;flex:2 1 100%}
.tool-quick button,.tool-watchbtn{border:1px solid var(--line);background:var(--warm-white);border-radius:999px;padding:.35rem .8rem;font:inherit;font-size:.85rem;cursor:pointer;color:var(--ink)}
.tool-quick button[aria-pressed=true]{background:var(--ink);color:var(--warm-white);border-color:var(--ink)}
.tool-watchbtn{margin-left:.2rem}
.tool-sortrow{display:flex;gap:.6rem;align-items:center;flex:1 1 100%;justify-content:flex-end}
.tool-sort{display:flex;align-items:center;gap:.4rem;font-size:.85rem}
.tool-sort select{padding:.4rem .5rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--warm-white);font:inherit}
.filter-count{display:inline-block;min-width:1.3em;padding:0 .35em;border-radius:999px;background:var(--orange);color:#fff;font-size:.75rem;text-align:center}
#filter-open{display:none}
.tool-count{font-size:.9rem;color:var(--muted);margin:.3rem 0 .8rem}
.tool-activefilters{display:flex;flex-wrap:wrap;gap:.4rem;margin:.3rem 0}
.chip{display:inline-flex;align-items:center;gap:.3rem;border:1px solid var(--line);background:var(--light-grey);border-radius:999px;padding:.25rem .6rem;font-size:.8rem;cursor:pointer;font:inherit}
.chip--reset{background:transparent;border-style:dashed}
.chip button{border:0;background:transparent;cursor:pointer;font:inherit;padding:0 0 0 .2rem}

.tool-directory-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(1.4rem,3vw,2.5rem);align-items:start;max-width:1280px}
.tool-directory-main{min-width:0}
.tool-filter-sidebar{position:sticky;top:1rem;max-height:calc(100vh - 2rem);overflow:auto;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--warm-white);padding:1rem}
.tfs__head{display:flex;justify-content:space-between;align-items:center;margin-bottom:.6rem}
.tfg{border:0;border-top:1px solid var(--line);padding:.7rem 0 .3rem;margin:0}
.tfg legend{font-weight:600;font-size:.9rem;padding:0}
.tfg label{display:flex;align-items:center;gap:.45rem;padding:.2rem 0;font-size:.87rem;cursor:pointer}
.tfg__n{margin-left:auto;color:var(--muted);font-size:.78rem}
.tfg__note{font-size:.75rem;color:var(--muted);margin:.2rem 0}
.tfg__toggle{margin-top:.2rem}
.tfs__cats{border-top:1px solid var(--line);margin-top:.6rem;padding-top:.6rem;font-size:.87rem}
.tfs__cats ul{list-style:none;padding:0;margin:.4rem 0 0;columns:2;gap:1rem}
.tfs__cats li{margin:.15rem 0}
.tfs__applybar{display:none;gap:.5rem;margin-top:.8rem}

.tool-results{display:flex;flex-direction:column;gap:.8rem}
.tcard{display:flex;gap:.9rem;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--warm-white);padding:.9rem 1rem}
.tcard[hidden]{display:none}
.tcard__logo{flex:0 0 46px;width:46px;height:46px;border-radius:10px;background:var(--light-grey);display:flex;align-items:center;justify-content:center;font-weight:700;color:var(--graphite);font-family:var(--font-ui)}
.tcard__body{min-width:0;flex:1}
.tcard__name{margin:.1rem 0 .2rem;font-size:1.05rem}
.tcard__prov{font-weight:400;color:var(--muted);font-size:.85rem}
.tcard__desc{margin:.1rem 0 .35rem}
.tcard__meta{font-size:.82rem;color:var(--muted);margin:.2rem 0;display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}
.tcard__cat{color:var(--ink);font-weight:600}
.tcard__uc{list-style:none;display:flex;flex-wrap:wrap;gap:.3rem .6rem;padding:0;margin:.2rem 0;font-size:.8rem;color:var(--muted)}
.tcard__uc li::before{content:"›\00a0"}
.tcard__uc-inline{font-size:.82rem;color:var(--muted);margin:.2rem 0}
.tcard__reason{font-size:.82rem;background:#F3EEDF;border-left:3px solid var(--green);padding:.35rem .5rem;border-radius:4px;margin:.3rem 0}
.tcard__foot{font-size:.76rem;color:var(--muted);margin:.3rem 0 .2rem}
.tcard__actions{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.3rem}
.tcard__save[aria-pressed=true],.tcard__cmp[aria-pressed=true]{background:var(--green);color:#fff;border-color:var(--green)}
.badge--warn{background:var(--mustard);color:#3a2f10}

.tool-compare-bar{position:sticky;top:.4rem;z-index:5;background:var(--ink);color:var(--warm-white);border-radius:var(--radius-lg);padding:.7rem .9rem;margin-bottom:.8rem}
.tool-compare-bar[hidden]{display:none}
.tcb__row{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}
.tool-compare-bar .chip{background:rgba(255,255,255,.12);color:var(--warm-white);border-color:rgba(255,255,255,.25)}
.tool-compare-bar .chip button{color:var(--warm-white)}
.compare-table{width:100%;border-collapse:collapse;margin-top:.6rem;background:var(--warm-white);color:var(--ink);font-size:.86rem}
.compare-table th,.compare-table td{border:1px solid var(--line);padding:.4rem .55rem;text-align:left;vertical-align:top}
.compare-table thead th{background:var(--light-grey)}

.tool-empty{border:1px dashed var(--line);border-radius:var(--radius-lg);padding:1rem;background:var(--warm-white)}
.tool-empty[hidden]{display:none}
.tool-more{margin:1rem 0;text-align:center}
.tool-editorial{margin-top:2rem;border-top:2px solid var(--line);padding-top:1.2rem}
.tool-suggest{border:1px solid var(--line);border-radius:var(--radius-lg);padding:1rem;background:var(--warm-white);max-width:34rem}
.tool-suggest .field{margin:.5rem 0;display:flex;flex-direction:column;gap:.25rem}
.tool-suggest input,.tool-suggest textarea{padding:.5rem;border:1px solid var(--line);border-radius:var(--radius);font:inherit;background:var(--paper)}

/* Sprachumschalter (i18n) */
.lang-switch{border-bottom:1px solid var(--line);background:var(--warm-white)}
.lang-switch .container{display:flex;gap:.6rem;align-items:center;padding-block:.35rem;font-size:.85rem;color:var(--muted)}
.lang-switch a{font-weight:600;text-decoration:none;padding:.1rem .35rem;border-radius:4px}
.lang-switch a[aria-current="true"]{background:var(--ink);color:var(--warm-white)}

/* ===== Ein-Bildschirm-Finder (Cockpit) ===== */
.finder-page main .container{max-width:72rem}
/* Kompakter Kopf, damit das Cockpit + alle Antworten in den Viewport passen */
.finder-page .container.section{padding-top:.7rem;padding-bottom:1rem}
.finder-page header .eyebrow{display:none}
.finder-page main h1{font-size:clamp(1.35rem,2.6vw,1.75rem);margin:.1rem 0 .3rem;line-height:1.15}
.finder-page .answer{border-left:0;background:none;padding:0;border-radius:0;margin:.1rem 0 .5rem}
.finder-page .answer p{font-size:.92rem;color:var(--muted)}
.finder-shell{
  --fh: var(--header-height,58px);
  height: calc(100svh - var(--fh) - 5.5rem);
  min-height:140px;
  display:grid; grid-template-rows:auto minmax(0,1fr) auto;
  overflow:hidden;
  border:1px solid var(--line); border-radius:var(--radius-lg);
  background:var(--warm-white); margin:.5rem 0 1.4rem;
}
@supports (height:100dvh){ .finder-shell{ height: calc(100dvh - var(--fh) - 5.5rem); } }
.finder-fallback{padding:1.2rem}
.finder-fallback__list{columns:2;gap:1rem;margin:.6rem 0 1rem;padding-left:1.1rem}
@media (max-width:520px){ .finder-fallback__list{columns:1} }
.finder-head{padding:.6rem 1rem;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:.8rem;flex-wrap:wrap}
.finder-progress-label{font-weight:700;font-size:.92rem;margin:0}
.finder-dots{display:flex;gap:.35rem;list-style:none;margin:0;padding:0}
.finder-dots li{width:11px;height:11px;border-radius:50%;border:2px solid var(--muted);background:transparent}
.finder-dots li[data-state=done]{background:var(--muted)}
.finder-dots li[data-state=current]{background:var(--orange);border-color:var(--orange)}
.finder-bar{flex-basis:100%;height:4px;background:var(--light-grey);border-radius:2px;overflow:hidden}
.finder-bar__fill{height:100%;background:var(--orange);transition:width .25s ease}
.finder-body{overflow:auto;padding:.8rem 1rem;display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:1.2rem;align-content:start;-webkit-overflow-scrolling:touch}
@media (max-width:820px){ .finder-body{grid-template-columns:1fr} .finder-summary{display:none} }
.finder-q{border:0;padding:0;margin:0;min-width:0}
.finder-q legend{font-size:clamp(1.05rem,2.4vw,1.3rem);font-weight:700;padding:0;margin:0 0 .15rem;outline:none}
.finder-q legend:focus-visible{outline:3px solid var(--orange);outline-offset:3px;border-radius:4px}
.finder-help{color:var(--muted);font-size:.88rem;margin:.1rem 0 .6rem}
.finder-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.45rem;border:0;padding:0;margin:0}
@media (max-width:560px){ .finder-options{grid-template-columns:1fr} }
.finder-opt{position:relative;min-width:0}
.finder-opt input{position:absolute;top:.55rem;left:.6rem;width:18px;height:18px;margin:0}
.finder-opt label{display:flex;flex-direction:column;gap:0;min-height:44px;justify-content:center;border:2px solid var(--line);border-radius:10px;background:var(--paper);padding:.42rem .7rem .42rem 2.1rem;cursor:pointer;line-height:1.2}
.finder-opt label:hover{border-color:var(--ink)}
.finder-opt input:checked + label{border-color:var(--orange);background:#fff7f1;box-shadow:inset 0 0 0 1px var(--orange)}
.finder-opt input:focus-visible + label{outline:3px solid var(--orange);outline-offset:2px}
.finder-opt label.is-confirm{border-color:var(--orange);background:#fff2e8}
.finder-opt__name{font-weight:600}
.finder-opt__desc{font-size:.82rem;color:var(--muted)}
.finder-summary{border-left:1px solid var(--line);padding-left:1.1rem}
.finder-summary h2{font-size:.95rem;margin:.1rem 0 .5rem}
.finder-summary dl{margin:0;font-size:.88rem}
.finder-summary dt{color:var(--muted);margin-top:.5rem}
.finder-summary dd{margin:0;font-weight:600}
.finder-link{background:none;border:0;color:var(--orange);text-decoration:underline;cursor:pointer;font:inherit;padding:.6rem 0 0}
.finder-link:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.finder-actions{padding:.5rem 1rem;border-top:1px solid var(--line);display:flex;gap:.5rem;align-items:center;padding-bottom:max(.5rem,env(safe-area-inset-bottom))}
.finder-actions .spacer{flex:1}
.finder-results h2,.finder-result-empty h2{margin:.1rem 0 .3rem;outline:none}
.finder-hit{border:1px solid var(--line);border-left:4px solid var(--green);border-radius:var(--radius-lg);background:var(--paper);padding:.85rem 1rem;margin:.7rem 0}
.finder-hit h3{margin:0 0 .2rem;font-size:1.05rem}
.finder-hit__prov{font-weight:400;color:var(--muted);font-size:.85rem}
.finder-hit__desc{margin:.1rem 0 .4rem}
.finder-hit__why{margin:.3rem 0;padding:.4rem .6rem .4rem 1.5rem;background:#F3EEDF;border-radius:6px;font-size:.86rem}
.finder-hit__why li{margin:.1rem 0}
.finder-hit__limit{font-size:.85rem;color:var(--graphite);margin:.3rem 0}
.finder-hit__meta{font-size:.78rem;color:var(--muted);margin:.3rem 0}
.finder-allmore{margin:.8rem 0 .2rem}
.finder-editorial{margin-top:.4rem}
@media (prefers-reduced-motion: reduce){ .finder-bar__fill{transition:none} .finder-opt label.is-confirm{transition:none} }

@media (max-width:900px){
  .tool-directory-layout{grid-template-columns:1fr}
  #filter-open{display:inline-flex;align-items:center;gap:.4rem}
  .tool-filter-sidebar{position:fixed;inset:0 0 0 auto;width:min(90vw,340px);max-height:100vh;height:100vh;border-radius:0;transform:translateX(100%);transition:transform .2s ease;z-index:60;box-shadow:var(--shadow)}
  .tool-filter-sidebar.is-open{transform:none}
  .tfs__applybar{display:flex;position:sticky;bottom:0;background:var(--warm-white);padding-top:.6rem;border-top:1px solid var(--line)}
  body.filters-open{overflow:hidden}
  body.filters-open::after{content:"";position:fixed;inset:0;background:rgba(25,24,23,.4);z-index:55}
  .tool-sortrow{justify-content:space-between}
}

/* KI-für-Unternehmen: Use-Case-Karten & Navigator (Rev. 6) */
.uc-card{border:1px solid var(--line);border-left:4px solid var(--green);border-radius:var(--radius-lg);background:var(--warm-white);padding:.9rem 1.1rem;margin:.8rem 0}
.uc-card h3{margin:.1rem 0 .5rem}
.uc-dl{display:grid;grid-template-columns:auto 1fr;gap:.15rem .8rem;margin:0;font-size:.9rem}
.uc-dl dt{font-weight:700;color:var(--graphite)}
.uc-dl dd{margin:0}
.uc-links{font-size:.85rem;color:var(--muted);margin:.5rem 0 0}
.uc-flow{background:#F3EEDF;border-radius:6px;padding:.5rem .7rem;font-size:.88rem;margin:.4rem 0 1rem}
#uc-result:empty{display:none}
.uc-nav-list{margin:.3rem 0}
.uc-nav-risk{background:#F3EEDF;border-radius:6px;padding:.4rem .6rem;margin:.4rem 0}
.uc-nav-warn{background:#FBE9D6;border-left:4px solid var(--orange);border-radius:6px;padding:.5rem .7rem;margin:.4rem 0}
.uc-nav-step{margin:.4rem 0}
.uc-nav-cta{display:flex;flex-wrap:wrap;gap:.4rem;margin:.5rem 0 0}
@media (max-width:520px){.uc-dl{grid-template-columns:1fr}.uc-dl dt{margin-top:.3rem}}

/* Startseiten-Hero-Suche + kompakter Tool-Hero (Rev. 7) */
.hero--search{position:relative;overflow:hidden;background:linear-gradient(180deg,var(--warm-white),var(--paper))}
/* Dezentes Hero-Hintergrundbild: Foto rechts, warmer Verlauf hält die linke Seite (Text + Suche) gut lesbar. */
.hero--search::before{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:
    linear-gradient(90deg, rgba(250,247,240,.96) 0%, rgba(250,247,240,.90) 34%, rgba(250,247,240,.66) 66%, rgba(250,247,240,.48) 100%),
    url("/assets/images/hero-bg.webp");
  background-repeat:no-repeat,no-repeat;
  background-size:cover,cover;
  background-position:center,center right;
}
.hero--search > .container{position:relative;z-index:1}
.hero--search .container.section{padding-block:clamp(1.1rem,3vw,2rem)}
.hero--search h1{margin:.1rem 0 .5rem}
.hero__sub{max-width:52rem;font-size:1.05rem;color:var(--graphite);margin:0 0 1rem}
.home-search{display:block;position:relative;max-width:44rem}
.home-search label{display:block;font-weight:600;font-size:.9rem;margin-bottom:.3rem}
.home-search__row{display:flex;gap:.5rem}
.home-search input[type=search]{flex:1;min-width:0;padding:.75rem .9rem;border:2px solid var(--line);border-radius:var(--radius);background:var(--warm-white);font:inherit;font-size:1.02rem}
.home-search input[type=search]:focus{outline:3px solid var(--orange);outline-offset:1px;border-color:var(--orange)}
.home-search .btn{white-space:nowrap;padding-inline:1.1rem}
.home-suggest{list-style:none;margin:.25rem 0 0;padding:.25rem;position:absolute;left:0;right:0;top:100%;z-index:30;background:var(--warm-white);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow)}
.home-suggest__it{padding:.5rem .6rem;border-radius:4px;cursor:pointer;font-size:.95rem}
.home-suggest__it.is-active,.home-suggest__it:hover{background:var(--light-grey)}
.home-examples{margin:.5rem 0 0;max-width:44rem}
.home-quick{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0 .3rem}
.chip-btn{display:inline-flex;align-items:center;min-height:40px;padding:.4rem .95rem;border:1px solid var(--line);border-radius:999px;background:var(--warm-white);color:var(--ink);text-decoration:none;font-weight:600;font-size:.92rem}
.chip-btn:hover{background:var(--ink);color:var(--warm-white);border-color:var(--ink)}
.chip-btn--ghost{border-style:dashed;font-weight:400}
.chip-btn:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.home-finder-cta{margin:.6rem 0 .3rem;font-size:1rem}
.home-trust{margin:.4rem 0 0}
.tool-trust{margin:.1rem 0 .8rem}
.tool-trust a{white-space:nowrap}
@media (max-width:520px){
  .home-search__row{flex-direction:column}
  .home-search .btn{width:100%}
  .home-quick{gap:.4rem}
}
/* Auf schmalen Viewports das Hintergrundbild stärker abschwächen, damit Text und Suche klar lesbar bleiben. */
@media (max-width:760px){
  .hero--search::before{
    background-image:
      linear-gradient(180deg, rgba(250,247,240,.90) 0%, rgba(250,247,240,.86) 55%, rgba(250,247,240,.80) 100%),
      url("/assets/images/hero-bg.webp");
    background-position:center,center;
  }
}

/* /ki-tools/: kompakter Kopf, damit Suche + erste Ergebnisse + Filterbeginn above the fold liegen */
.ki-tools-page .container.section{padding-top:.9rem}
.ki-tools-page header h1{margin:.1rem 0 .3rem}
.ki-tools-page .answer{margin-bottom:.5rem}
.ki-tools-page .tool-toolbar{margin:.5rem 0 .3rem}
.ki-tools-page .tool-search label{font-size:.85rem;margin-bottom:.1rem}
.ki-tools-page .tool-count{margin:.2rem 0 .1rem}
.ki-tools-page .tool-trust{margin:.1rem 0 .5rem}
.ki-tools-page .tool-quick{margin:.1rem 0}

/* Mobil: Schnellfilter als eine horizontal scrollbare Reihe (spart vertikalen Platz) */
@media (max-width:700px){
  .ki-tools-page .tool-quick{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:.25rem;scrollbar-width:thin}
  .ki-tools-page .tool-quick button{flex:0 0 auto}
  .ki-tools-page .tool-sortrow{margin-top:.2rem}
  .ki-tools-page .answer{font-size:.95rem}
}

/* Off-Canvas-Panels im geschlossenen Zustand komplett aus dem Layout nehmen –
   verhindert horizontale Seitenverschiebung bei schmalen Viewports, ohne Root-Overflow
   (sticky-Sidebars und vertikales Scrollen bleiben unangetastet). */
@media (max-width:900px){
  .nav:not([data-open="true"]){display:none !important}
  .tool-filter-sidebar:not(.is-open){display:none !important}
}

/* Sehr schmale Viewports: Header-Toolbar kompakt halten (kein horizontaler Überlauf bei 320px) */
@media (max-width:360px){
  .topbar{gap:.5rem}
  .nav-toggle span{display:none}
  .nav-toggle{padding:.5rem .6rem}
}

/* Ergebnis-orientierter Kopf auf /ki-tools/ (Ergebnisse vor redaktionellem Text) */
.ki-tools-page .container.section{padding-top:.6rem}
.ki-tools-page .breadcrumbs{margin-bottom:0}
.ki-tools-page header{margin:0}
.ki-tools-page header .eyebrow{display:none}
.ki-tools-page header h1{font-size:clamp(1.5rem,3vw,2rem);margin:.1rem 0 .3rem}
.ki-tools-page .answer{background:none;border:0;box-shadow:none;padding:0;margin:.1rem 0 .5rem;font-size:.98rem;color:var(--muted)}
.ki-tools-page .answer p{margin:0}
.tool-context{margin:.1rem 0 .3rem;font-family:var(--font-editorial);font-weight:700;font-size:1.15rem;color:var(--ink)}
.tool-context[hidden]{display:none}
.about-directory{margin-top:1.6rem;border-top:1px solid var(--line);padding-top:1rem;font-size:.92rem;color:var(--muted)}
.about-directory h2{font-size:1.15rem;margin:.2rem 0 .4rem}
.about-directory a{white-space:nowrap}

/* Autorenlaufband „Menschen hinter BOMOTS" (CSS-only Endlosschleife, barrierearm, ohne CDN) */
.authors-section .section-heading{max-width:62rem;margin-bottom:1rem}
.authors-section .section-heading p{color:var(--muted);margin:.25rem 0 0}
.authors-marquee{overflow:hidden;position:relative;margin:.4rem 0}
/* Original + gleich breites Duplikat im selben Track: -50% ergibt eine nahtlose Schleife. */
.authors-marquee__track{display:flex;width:max-content;animation:authors-marquee-scroll var(--am-seconds,30s) linear infinite;will-change:transform}
.authors-marquee__group{display:flex;list-style:none;margin:0;padding:.35rem 0}
.authors-marquee__item{flex:0 0 auto;margin-inline-end:.9rem}
.author-mcard{display:flex;gap:.7rem;align-items:center;width:250px;box-sizing:border-box;border:1px solid var(--line);border-radius:12px;background:var(--warm-white);padding:.6rem .75rem;text-decoration:none;color:var(--ink)}
.author-mcard:hover,.author-mcard:focus-visible{border-color:var(--ink);background:var(--light-grey)}
.author-mcard__img{width:56px;height:56px;border-radius:50%;object-fit:cover;flex:0 0 auto;background:var(--light-grey)}
.author-mcard__body{display:flex;flex-direction:column;line-height:1.2;min-width:0}
.author-mcard__name{font-weight:700}
.author-mcard__role{color:var(--muted);font-size:.82rem;margin-top:.05rem}
.author-mcard__focus{color:var(--ink);font-size:.8rem;margin-top:.15rem}
/* Pause bei Hover, Tastaturfokus und aktiver Touch-/Scroll-Interaktion */
.authors-marquee:hover .authors-marquee__track,
.authors-marquee:focus-within .authors-marquee__track,
.authors-marquee.is-interacting .authors-marquee__track{animation-play-state:paused}
.authors-marquee.is-interacting{overflow-x:auto}
@keyframes authors-marquee-scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}
/* Reduzierte Bewegung: keine Animation, statische, horizontal scrollbare Liste ohne Duplikat */
@media (prefers-reduced-motion: reduce){
  .authors-marquee{overflow-x:auto}
  .authors-marquee__track{animation:none;width:auto}
  .authors-marquee__duplicate{display:none}
}
@media (max-width:560px){
  .author-mcard{width:234px}
}

/* --- Sensible/redaktionelle Verantwortung (neutral) --- */
.author-card--review{border-left:4px solid var(--muted)}
/* --- Nero: Redaktionshund von BOMOTS (dezente, warme Kennzeichnung) --- */
.author-card--nero{border-left:4px solid var(--mustard)}
.author-card--nero .author-card__header img{border-color:var(--mustard);background:var(--warm-white)}
.author-box-end--nero{border-left-color:var(--mustard)}
.author-box-end--nero img{border-color:var(--mustard)}
.author-hero--nero{border-left:4px solid var(--mustard)}
/* Nero-Chip auf der Startseite: klar als Redaktionshund erkennbar, ruhig */
.nero-chip{display:inline-flex;gap:.75rem;align-items:center;max-width:34rem;margin:.6rem 0 0;padding:.55rem .8rem;border:1px solid var(--line);border-left:4px solid var(--mustard);border-radius:12px;background:var(--warm-white);text-decoration:none;color:var(--ink)}
.nero-chip:hover,.nero-chip:focus-visible{border-color:var(--mustard);background:var(--light-grey)}
.nero-chip__img{width:48px;height:48px;border-radius:50%;object-fit:cover;flex:0 0 auto;border:1px solid var(--mustard);background:var(--warm-white)}
.nero-chip__body{display:flex;flex-direction:column;line-height:1.25;min-width:0}
.nero-chip__name{font-weight:700}
.nero-chip__tag{display:inline-block;margin-left:.4rem;font-size:.68rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--green-dark);background:#eef3e6;border-radius:20px;padding:.08rem .5rem;vertical-align:middle}
.nero-chip__desc{color:var(--muted);font-size:.84rem;margin-top:.15rem}
/* Nero-„I love you“-Box auf der Nero-Seite (sekundär, sparsam) */
.nero-love{display:grid;grid-template-columns:220px 1fr;gap:clamp(1rem,3vw,1.8rem);align-items:center;background:var(--warm-white);border:1px solid var(--line);border-left:4px solid var(--mustard);border-radius:var(--radius-lg);padding:clamp(1rem,3vw,1.6rem);margin:1.8rem 0}
.nero-love img{width:100%;max-width:220px;height:auto;justify-self:center}
@media (max-width:560px){
  .nero-love{grid-template-columns:1fr;text-align:center}
  .nero-love img{max-width:180px}
}

/* ===== Menschen hinter BOMOTS – Startseite (kompakt, editorial) ===== */
.section-heading--left{max-width:62rem;text-align:left;margin-inline:0}
.people-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin:.4rem 0 1rem}
.person-mini{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--warm-white);padding:1.1rem;box-shadow:var(--shadow)}
.person-mini__mono{width:72px;height:72px;border-radius:14px;object-fit:cover;border:1px solid var(--line);background:var(--light-grey);display:block;margin-bottom:.6rem}
.person-mini__name{margin:0;font-weight:700;font-size:1.08rem}
.person-mini__name a{color:var(--ink);text-decoration:none}
.person-mini__name a:hover{color:var(--orange-dark)}
.person-mini__role{margin:.05rem 0 .35rem;font-size:.8rem;color:var(--muted)}
.person-mini__pos{margin:0 0 .6rem;font-size:.92rem;color:var(--graphite);line-height:1.45}
.person-mini__link{font-weight:600;font-size:.88rem;text-decoration:none;color:var(--orange-dark)}
.person-mini__link:hover{text-decoration:underline}
.people-nero{display:flex;gap:.9rem;align-items:center;max-width:52rem;margin:.2rem 0 1rem;padding:.7rem .9rem;border:1px solid var(--line);border-left:4px solid var(--mustard);border-radius:12px;background:var(--warm-white)}
.people-nero__img{width:64px;height:64px;border-radius:50%;object-fit:cover;flex:0 0 auto;border:1px solid var(--mustard);background:var(--warm-white)}
.people-nero p{margin:0;font-size:.9rem;color:var(--graphite)}
.people-nero a{color:var(--ink)}
.people-section__all{margin:.4rem 0 0}
@media (max-width:760px){.people-row{grid-template-columns:1fr}}

/* ===== /autoren/ – redaktionelle Übersicht ===== */
.authors-people{margin-bottom:1.4rem}
.person-list{display:grid;gap:1rem;margin:.6rem 0 0}
.person-card{display:grid;grid-template-columns:104px 1fr;gap:1.1rem;align-items:start;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--warm-white);padding:1.1rem;box-shadow:var(--shadow)}
.person-card__media{align-self:start}
.person-card .author-mono,.person-card__media img{width:104px;height:104px;border-radius:14px;object-fit:cover;border:1px solid var(--line);background:var(--light-grey);display:block}
.person-card__body{min-width:0}
.person-card__eyebrow{margin:0;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}
.person-card__name{margin:.1rem 0 .2rem;font-size:1.2rem}
.person-card__name a{color:var(--ink);text-decoration:none}
.person-card__name a:hover{color:var(--orange-dark)}
.person-card__pos{margin:0 0 .4rem;font-family:var(--font-editorial);font-size:1.02rem;color:var(--graphite)}
.person-card__lead{margin:0 0 .5rem;font-size:.92rem;color:var(--graphite)}
.theme-chips{display:flex;flex-wrap:wrap;gap:.35rem;list-style:none;margin:0 0 .55rem;padding:0}
.theme-chips li{font-size:.75rem;background:var(--light-grey);color:var(--graphite);border-radius:20px;padding:.12rem .6rem}
.person-card__posts{font-size:.86rem;color:var(--graphite);margin:0 0 .5rem}
.person-card__posts span{color:var(--muted)}
.person-card__more{font-weight:600;font-size:.9rem;text-decoration:none;color:var(--orange-dark)}
.person-card__more:hover{text-decoration:underline}
.behind-scenes{margin:1.8rem 0}
.nero-strip{display:flex;gap:1rem;align-items:center;border:1px solid var(--line);border-left:4px solid var(--mustard);border-radius:var(--radius-lg);background:var(--warm-white);padding:1rem 1.1rem}
.nero-strip__img{width:120px;height:120px;border-radius:50%;object-fit:cover;flex:0 0 auto;border:2px solid var(--mustard);background:var(--warm-white)}
.nero-strip__name{margin:0 0 .3rem;font-weight:700}
.nero-strip__name a{color:var(--ink);text-decoration:none}
.nero-strip p{margin:0 0 .4rem}
.nero-strip p:last-child{margin-bottom:0}
@media (max-width:640px){
  .person-card{grid-template-columns:72px 1fr;gap:.8rem;padding:.9rem}
  .person-card .author-mono,.person-card__media img{width:72px;height:72px}
  .nero-strip{flex-direction:column;text-align:center}
  .nero-strip__img{width:96px;height:96px}
}

/* ===== Prompting-Cluster: Vorher/Nachher, Prompt-Cards ===== */
.ba{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1.2rem 0 .4rem}
.ba__col{border:1px solid var(--line);border-radius:var(--radius);padding:.8rem .9rem;background:var(--warm-white)}
.ba--weak{border-left:4px solid var(--muted)}
.ba--strong{border-left:4px solid var(--green)}
.ba__label{font-size:.72rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin:0 0 .4rem;color:var(--muted)}
.ba--strong .ba__label{color:var(--green-dark)}
.ba__text{font-family:var(--font-code);font-size:.86rem;line-height:1.5;white-space:pre-wrap;word-break:break-word;margin:0;background:transparent;padding:0;border:0}
.ba__why{background:#eef3e6;border:1px solid var(--green);border-left:5px solid var(--green);border-radius:0 var(--radius) var(--radius) 0;padding:.8rem 1rem;margin:.2rem 0 1.4rem}
.ba__why-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--green-dark);margin:0 0 .3rem}
.ba__why ul{margin:0;padding-left:1.1rem}
.ba__why li{margin:.15rem 0}
@media (max-width:640px){.ba{grid-template-columns:1fr}}

.pcard{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--warm-white);padding:1rem 1.1rem;margin:1rem 0;box-shadow:var(--shadow)}
.pcard__head{display:flex;flex-wrap:wrap;gap:.4rem .8rem;align-items:baseline;justify-content:space-between}
.pcard__uc{margin:0;font-size:1.02rem}
.pcard__meta{display:flex;gap:.4rem}
.pcard__tag,.pcard__level{font-size:.7rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;border-radius:20px;padding:.1rem .55rem}
.pcard__tag{background:#f9e2d8;color:var(--orange-dark)}
.pcard__level{background:#eef3e6;color:var(--green-dark)}
.pcard__body{font-family:var(--font-code);font-size:.86rem;line-height:1.5;white-space:pre-wrap;word-break:break-word;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:.7rem .8rem;margin:.6rem 0}
.pcard__foot{display:flex;gap:.6rem}
.pcard__why{font-size:.88rem;color:var(--graphite);margin:.5rem 0 0}
.pcard__copy.is-copied{border-color:var(--green);color:var(--green-dark)}

/* ===== Prompt-Builder / Prompt-Compiler (natürlicher Seitenfluss, kein Doppel-Scroll) ===== */
.pb-intro{color:var(--graphite);margin:.2rem 0 1rem;max-width:52rem}
.pb-quick{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center;margin:0 0 1.1rem}
.pb-quick__label{font-weight:700;font-size:.85rem;color:var(--muted);margin-right:.15rem}
.pb-quick .chip-btn{min-height:34px;padding:.3rem .8rem;font-size:.86rem}
.pb-quick__more{display:inline-block}
.pb-quick__more>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;min-height:34px;padding:.3rem .8rem;border:1px dashed var(--line);border-radius:999px;font-size:.86rem;font-weight:600;color:var(--muted)}
.pb-quick__more>summary::-webkit-details-marker{display:none}
.pb-quick__more[open]>summary{color:var(--ink);border-color:var(--orange)}
.pb-quick__list{display:flex;flex-wrap:wrap;gap:.45rem;margin:.6rem 0 0;flex-basis:100%}
.pb-fallback{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--warm-white);padding:1.1rem 1.2rem}

/* Layout: Hauptbereich + Angaben-Spalte, beide wachsen mit dem Inhalt */
.pbx{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:1.4rem;align-items:start}
.pbx-main{min-width:0}
@media (max-width:900px){.pbx{grid-template-columns:1fr}}

.pbx-progress{margin:0 0 .7rem}
.pbx-progress__txt{display:block;font-size:.82rem;font-weight:700;color:var(--muted);margin-bottom:.35rem}
.pbx-bar{height:5px;background:var(--light-grey);border-radius:3px;overflow:hidden}
.pbx-bar i{display:block;height:100%;background:var(--orange);transition:width .25s ease}

.pbx-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--warm-white);padding:clamp(1rem,2.5vw,1.5rem);box-shadow:var(--shadow)}
.pbx-legend{font-size:clamp(1.15rem,2.4vw,1.5rem);margin:.1rem 0 .3rem;line-height:1.2}
.pbx-help{color:var(--muted);font-size:.92rem;margin:0 0 .9rem}
.pbx-input{width:100%;font:inherit;font-size:1rem;padding:.7rem .8rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);color:var(--ink);resize:vertical}
.pbx-input--big{min-height:7rem}
.pbx-hint{color:var(--orange-dark);font-size:.85rem;margin:.4rem 0 0}

.pbx-options{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.6rem;margin:.2rem 0 0}
.pbx-opt{position:relative}
.pbx-opt input{position:absolute;opacity:0;width:1px;height:1px}
.pbx-opt label{display:flex;flex-direction:column;gap:.15rem;height:100%;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);padding:.6rem .75rem;cursor:pointer;transition:border-color .12s,background .12s}
.pbx-opt label:hover{border-color:var(--orange)}
.pbx-opt input:checked+label{border-color:var(--orange);background:#fbeee8}
.pbx-opt input:focus-visible+label{outline:3px solid var(--orange);outline-offset:2px}
.pbx-opt input:checked+label.is-confirm{background:#f6e0d6}
.pbx-opt__name{font-weight:600}
.pbx-opt__desc{font-size:.82rem;color:var(--muted)}

.pbx-actions{display:flex;align-items:center;gap:.6rem;margin:1.1rem 0 0}
.pbx-spacer{flex:1 1 auto}

/* Aufgaben-Picker */
.pbx-card--pick{padding:clamp(1rem,2.5vw,1.5rem)}
.pbx-tasks{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:.6rem;margin:.4rem 0 0}
.pbx-tasks--more{margin-top:.7rem}
.pbx-task{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);padding:.7rem .8rem;cursor:pointer;font:inherit;text-align:left;transition:border-color .12s,background .12s;min-height:74px}
.pbx-task:hover,.pbx-task:focus-visible{border-color:var(--orange);background:#fbeee8}
.pbx-task__icon{font-size:1.3rem;line-height:1}
.pbx-task__label{font-weight:600;color:var(--ink)}
.pbx-more{margin-top:1rem}
.pbx-more>summary{cursor:pointer;font-weight:700;color:var(--graphite)}

/* Ergebnis: Prompt gut lesbar, dunkler Text, keine Transparenz, natürliche Höhe */
.pbx-result{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--warm-white);padding:clamp(1rem,2.5vw,1.5rem);box-shadow:var(--shadow)}
.pbx-result__head{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;justify-content:space-between;margin:0 0 .8rem}
.pbx-result__head h2{margin:0;font-size:1.3rem}
.pbx-prompt{font-family:var(--font-code);font-size:.92rem;line-height:1.6;white-space:pre-wrap;word-break:break-word;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:0 var(--radius) var(--radius) 0;padding:1.1rem 1.2rem;margin:0 0 1rem}
.pbx-warn{margin:0 0 1rem}
.pbx-warn ul{margin:.2rem 0 0;padding-left:1.1rem}
.pbx-expert{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);padding:.4rem .9rem;margin:0 0 1rem}
.pbx-expert>summary{cursor:pointer;font-weight:700;padding:.45rem 0}
.pbx-expert__grid{display:grid;grid-template-columns:1fr 1fr;gap:.8rem;padding:.4rem 0 .6rem}
.pbx-expert .field label{display:block;font-size:.82rem;font-weight:600;margin-bottom:.2rem}
.pbx-expert .field input,.pbx-expert .field textarea{width:100%;font:inherit;padding:.55rem .65rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--warm-white);color:var(--ink)}
.pbx-note{margin:0}
.pbx-miss{margin:.4rem 0 0;padding-left:1.2rem}
.pbx-miss li{margin:.2rem 0}
@media (max-width:640px){.pbx-expert__grid{grid-template-columns:1fr}}

/* Angaben-Spalte: sticky OHNE eigenen Scrollcontainer */
.pbx-summary{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--warm-white);padding:1rem 1.1rem}
@media (min-width:901px){.pbx-summary{position:sticky;top:calc(var(--header-height) + 14px)}}
.pbx-summary h2{font-size:1rem;margin:0 0 .5rem}
.pbx-summary dl{margin:0;display:grid;grid-template-columns:auto;gap:.1rem .5rem}
.pbx-summary dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;color:var(--muted);font-weight:700;margin-top:.5rem}
.pbx-summary dd{margin:0;font-size:.9rem;color:var(--graphite)}
.pbx-link{margin-top:.9rem;background:none;border:0;color:var(--orange-dark);font:inherit;font-weight:600;cursor:pointer;padding:0;text-decoration:underline}
.pb-editorial{margin-top:2rem;padding-top:1.4rem;border-top:1px solid var(--line)}

/* ===== Rev.17: kompakte Artikel-Metadaten, Editorial-Hinweis, Mitwirkende, Editorial-Footer ===== */
.article-meta{display:flex;flex-wrap:wrap;align-items:center;gap:.15rem .55rem;font-size:.85rem;color:var(--muted);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:.55rem 0;margin:.9rem 0 1.5rem;line-height:1.5}
.article-meta .am-by{color:var(--graphite)}
.article-meta a{color:var(--graphite);font-weight:600;text-decoration:none}
.article-meta a:hover{color:var(--orange-dark);text-decoration:underline}
.article-meta abbr{text-decoration:none;border-bottom:1px dotted var(--muted);cursor:help}
.article-meta time{color:var(--graphite);font-weight:600}
.am-sep{color:var(--line)}

.editorial-note{margin:2.2rem 0 0;padding-top:1rem;border-top:1px solid var(--line);font-size:.82rem;color:var(--muted);max-width:var(--readw)}
.editorial-note p{margin:0}
.editorial-note strong{color:var(--graphite)}
.editorial-note a{color:var(--orange-dark)}

.contrib-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;margin:.2rem 0 1.2rem}
.contrib-card{display:flex;gap:.9rem;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--warm-white);padding:1rem;box-shadow:var(--shadow)}
.contrib-card--nero{border-left:4px solid var(--mustard)}
.contrib-card__img{width:80px;height:80px;border-radius:50%;object-fit:cover;flex:0 0 auto;border:1px solid var(--line);background:var(--light-grey)}
.contrib-card--nero .contrib-card__img{border-color:var(--mustard);background:var(--warm-white)}
.contrib-card__body{min-width:0}
.contrib-card__name{margin:0;font-weight:700;font-size:1.02rem}
.contrib-card__name a{color:var(--ink);text-decoration:none}
.contrib-card__name a:hover{color:var(--orange-dark)}
.contrib-card__role{margin:.05rem 0 .3rem;font-size:.82rem;color:var(--muted)}
.contrib-card__desc{margin:0 0 .45rem;font-size:.88rem;color:var(--graphite);line-height:1.45}
.contrib-card__focus{display:flex;flex-wrap:wrap;gap:.3rem;list-style:none;margin:0 0 .55rem;padding:0}
.contrib-card__focus li{font-size:.72rem;background:var(--light-grey);color:var(--graphite);border-radius:20px;padding:.1rem .55rem}
.contrib-card__link{font-weight:600;font-size:.85rem;text-decoration:none;color:var(--orange-dark)}
.contrib-card__link:hover{text-decoration:underline}

/* Editorial-Footer */
.footer-editorial{display:grid;grid-template-columns:1.1fr 3fr;gap:2.2rem;padding-block:2.4rem}
@media (max-width:900px){.footer-editorial{grid-template-columns:1fr;gap:1.6rem}}
.ef-brand svg{height:30px;margin-bottom:.6rem}
.ef-tag{font-family:var(--font-editorial);font-size:1rem;color:#e7ddd0;margin:.2rem 0;max-width:20rem}
.ef-acr{font-size:.8rem;color:#9a9388;margin:.2rem 0}
.ef-org{font-size:.82rem;color:#9a9388;margin:.6rem 0 0;line-height:1.55}
.ef-modules{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem}
@media (max-width:1024px){.ef-modules{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.ef-modules{grid-template-columns:1fr}}
.ef-mod h3{color:#fff;font-family:var(--font-ui);font-size:.78rem;text-transform:uppercase;letter-spacing:.07em;margin:0 0 .5rem}
.ef-mod p{font-size:.85rem;color:#b9b2a6;margin:0 0 .6rem;line-height:1.5}
.ef-links{list-style:none;margin:0;padding:0}
.ef-links li{margin:.25rem 0;font-size:.9rem}
.footer-utility{border-top:1px solid #3a3733;padding-block:1.1rem;display:flex;flex-wrap:wrap;gap:.35rem 1.2rem;align-items:center;justify-content:space-between}
.fu-copy{font-size:.82rem;color:#b7b0a4;margin:0}
.fu-nav ul{list-style:none;display:flex;flex-wrap:wrap;gap:.25rem .95rem;margin:0;padding:0}
.fu-nav li{font-size:.82rem}
.fu-nav a{color:#c7c0b4}
@media (max-width:640px){.footer-utility{flex-direction:column;align-items:flex-start;gap:.7rem}}

/* ===== Rev.18: Hub-Sidebar-Nav, Aktuell-Feed, Korrekturen ===== */
.sidebar-hubnav ul{list-style:none;margin:0;padding:0}
.sidebar-hubnav li{margin:.32rem 0;font-size:.92rem}
.sidebar-hubnav a[aria-current=page]{font-weight:700;color:var(--orange-dark)}

.update-feed{list-style:none;margin:1.2rem 0;padding:0;max-width:var(--readw)}
.update-item{border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:0 var(--radius) var(--radius) 0;background:var(--warm-white);padding:.9rem 1.1rem;margin:.7rem 0}
.update-item__meta{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin:0 0 .3rem;font-size:.8rem;color:var(--muted)}
.update-badge{font-size:.68rem;font-weight:700;letter-spacing:.03em;text-transform:uppercase;border-radius:20px;padding:.12rem .55rem;background:var(--light-grey);color:var(--graphite)}
.update-badge--new,.update-badge--feature{background:#eef3e6;color:var(--green-dark)}
.update-badge--legal-update{background:#f9e2d8;color:var(--orange-dark)}
.update-badge--model-update,.update-badge--data-update,.update-badge--tool-update{background:#f3eede;color:#8a6d1f}
.update-item__title{font-size:1.08rem;margin:.1rem 0 .3rem}
.update-item__title a{color:var(--ink);text-decoration:none}
.update-item__title a:hover{color:var(--orange-dark)}
.update-item__desc{margin:0;font-size:.92rem;color:var(--graphite)}

.correction-list{list-style:none;margin:1rem 0;padding:0;max-width:var(--readw)}
.correction-item{border:1px solid var(--line);border-radius:var(--radius);background:var(--warm-white);padding:.9rem 1.1rem;margin:.7rem 0}
.correction-item__meta{margin:0 0 .35rem;font-size:.82rem;color:var(--muted)}
.correction-item__body{margin:0;font-size:.92rem}
.correction-empty{background:var(--warm-white);border:1px dashed var(--line);border-radius:var(--radius);padding:1rem 1.1rem;color:var(--muted);max-width:var(--readw)}

/* ============================================================
   BOMOTS – einheitliche Verzeichnis-/Suchkomponente (.dir)
   Suchen zuerst: Finder-Hero + Suche + Vorschläge + Filter +
   Trefferanzahl + Sortierung + Ergebnisgrid. Danach Redaktion.
   ============================================================ */
.dir{margin:0 0 1.4rem}
.dir-hero{position:relative;overflow:hidden;border:1px solid var(--line);border-radius:var(--radius-lg);
  background-color:var(--warm-white);margin:0 0 1rem;box-shadow:var(--shadow)}
.dir-hero::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:
    linear-gradient(90deg, rgba(250,247,240,.97) 0%, rgba(250,247,240,.92) 40%, rgba(250,247,240,.70) 72%, rgba(250,247,240,.52) 100%),
    var(--dir-hero-img);
  background-repeat:no-repeat,no-repeat;background-size:cover,cover;background-position:center,center right}
.dir-hero__inner{position:relative;z-index:1;padding:clamp(1.1rem,3vw,1.9rem);max-width:56rem}
.dir-hero__title{margin:.1rem 0 .4rem;font-size:clamp(1.5rem,3.4vw,2.1rem)}
.dir-hero__intro{margin:0 0 1rem;color:var(--graphite);font-size:1.03rem;max-width:48rem}
.dir-search{display:flex;gap:.5rem;max-width:44rem}
.dir-search__input{flex:1;min-width:0;padding:.75rem .9rem;border:2px solid var(--line);border-radius:var(--radius);
  background:var(--warm-white);font:inherit;font-size:1.02rem}
.dir-search__input:focus{outline:3px solid var(--orange);outline-offset:1px;border-color:var(--orange)}
.dir-search__btn{white-space:nowrap;padding-inline:1.2rem}
.dir-suggest{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:.7rem 0 0;max-width:52rem}
.dir-suggest__label{font-size:.85rem;color:var(--muted);font-weight:600}
.dir-suggest__chips{display:flex;flex-wrap:wrap;gap:.45rem}
.dir-suggest .chip-btn{min-height:34px;padding:.28rem .8rem;font-size:.88rem}

.dir-toolbar{display:flex;flex-wrap:wrap;gap:.6rem 1rem;align-items:center;justify-content:space-between;margin:.2rem 0 .6rem}
.dir-filters{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center}
.dir-filter{appearance:none;cursor:pointer;font:inherit;font-size:.86rem;font-weight:600;
  display:inline-flex;align-items:center;min-height:36px;padding:.3rem .8rem;border:1px solid var(--line);
  border-radius:999px;background:var(--warm-white);color:var(--ink)}
.dir-filter:hover{border-color:var(--ink)}
.dir-filter:focus-visible{outline:3px solid var(--orange);outline-offset:2px}
.dir-filter[aria-pressed="true"],.dir-filter.is-active{background:var(--ink);color:var(--warm-white);border-color:var(--ink)}
.dir-filter--reset{border-style:dashed;font-weight:500;color:var(--graphite)}
.dir-filter--reset:hover{color:var(--orange-dark);border-color:var(--orange-dark)}
.dir-meta{display:flex;align-items:center;gap:.7rem 1rem;flex-wrap:wrap}
.dir-count{margin:0;font-size:.92rem}
.dir-count [data-dir-count]{font-weight:700}
.dir-count [data-dir-count-label]{color:var(--muted)}
.dir-sort{display:inline-flex;align-items:center;gap:.4rem;font-size:.88rem;color:var(--muted)}
.dir-sort select{font:inherit;padding:.35rem .5rem;border:1px solid var(--line);border-radius:var(--radius);background:var(--warm-white)}

.dir-comparebar{position:sticky;top:calc(var(--header-height,58px) + .4rem);z-index:20;
  display:flex;flex-wrap:wrap;gap:.6rem;align-items:center;margin:0 0 .8rem;padding:.6rem .9rem;
  background:var(--ink);color:var(--warm-white);border-radius:var(--radius);box-shadow:var(--shadow)}
.dir-comparebar__txt{margin-right:auto}
.dir-comparebar strong{color:var(--mustard)}

.dir-results{display:grid;gap:.9rem;margin:.2rem 0 0}
.dir-results--tools{grid-template-columns:repeat(auto-fill,minmax(min(100%,20rem),1fr))}
.dir-results--models{grid-template-columns:repeat(auto-fill,minmax(min(100%,23rem),1fr))}
.dir-results>[hidden]{display:none!important}
.dir-filter[hidden],.dir-comparebar[hidden],.dir-suggest [hidden]{display:none!important}
.dir-empty{margin:1rem 0;padding:1.1rem 1.2rem;border:1px dashed var(--line);border-radius:var(--radius-lg);
  background:var(--warm-white);max-width:44rem}
.dir-empty p{margin:0 0 .5rem}
.dir-editorial{margin-top:2rem;border-top:1px solid var(--line);padding-top:1.2rem}
.dir-editorial>.model-meta,.dir-editorial>.eq-note{color:var(--muted)}

/* Tool-Karten im Grid: bestehende .tcard-Optik, als Grid-Item volle Höhe */
.dir-results--tools .tcard{margin:0;height:100%}

/* ---- Modellkarte (mcard) – vorher ungestylt (Ursache der „kaputten" Liste) ---- */
.mcard{display:flex;flex-direction:column;gap:.5rem;border:1px solid var(--line);border-radius:var(--radius-lg);
  background:var(--warm-white);padding:1rem 1.1rem;box-shadow:var(--shadow);height:100%}
.mcard.is-compared{border-color:var(--orange);box-shadow:0 0 0 2px var(--orange) inset}
.mcard__head{display:flex;flex-direction:column;gap:.1rem}
.mcard__name{margin:0;font-size:1.12rem}
.mcard__name a{color:var(--ink);text-decoration:none}
.mcard__name a:hover{color:var(--orange-dark)}
.mcard__prov{margin:0;font-size:.85rem;color:var(--muted)}
.mcard__country{color:var(--graphite)}
.mcard__desc{margin:.1rem 0;font-size:.92rem;color:var(--graphite);line-height:1.5}
.mcard__variants{margin:0;font-size:.84rem;color:var(--muted)}
.mcard__variants strong{color:var(--graphite)}
.mcard__badges,.mcard__caps{list-style:none;margin:.15rem 0 0;padding:0;display:flex;flex-wrap:wrap;gap:.35rem}
.mbadge{font-size:.72rem;font-weight:700;letter-spacing:.02em;padding:.14rem .55rem;border-radius:20px;
  background:var(--light-grey);color:var(--graphite)}
.mbadge--status{background:#eef1e8;color:var(--graphite)}
.mbadge--open{background:#e5efdb;color:var(--green-dark)}
.mbadge--closed{background:var(--light-grey);color:var(--muted)}
.mcard__caps li{font-size:.74rem;color:var(--graphite);background:transparent;border:1px solid var(--line);
  border-radius:20px;padding:.08rem .5rem}
.mcard__foot{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin-top:auto;padding-top:.5rem;
  border-top:1px solid var(--line)}
.mcard__ver{font-size:.78rem;color:var(--muted)}
.mcard__more{font-weight:600;font-size:.86rem;text-decoration:none;color:var(--orange-dark);margin-left:auto}
.mcard__more:hover{text-decoration:underline}
.mcard__cmp{white-space:nowrap}
.mcard__cmp[aria-pressed="true"],.mcard__cmp.is-active{background:var(--ink);color:var(--warm-white);border-color:var(--ink)}

/* Sprungziele nicht unter den Sticky-Header schieben */
.dir [id],.dir-editorial [id]{scroll-margin-top:calc(var(--header-height,58px) + 1rem)}

@media (max-width:560px){
  .dir-search{flex-direction:column}
  .dir-search__btn{width:100%}
  .dir-filters{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:.2rem}
  .dir-filter{flex:0 0 auto}
  .dir-toolbar{align-items:stretch}
}

/* Kompakte Modell-Listen auf Länder-/Sammelseiten (nutzen dieselbe mcard-Optik) */
.model-minigrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,18rem),1fr));gap:.8rem;margin:.7rem 0}
.mcard--mini{padding:.8rem .9rem}
.mcard--mini .mcard__desc{font-size:.86rem}

/* Modellarten-Einstiegskarten auf /ki-modelle/ (waren zuvor ungestylte Links) */
.modeltype-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,17rem),1fr));gap:.9rem;margin:.7rem 0 1.2rem}
.modeltype-card{display:block;border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--warm-white);
  padding:1rem 1.1rem;text-decoration:none;color:var(--ink);box-shadow:var(--shadow)}
.modeltype-card:hover,.modeltype-card:focus-visible{border-color:var(--ink);background:var(--light-grey)}
.modeltype-card h3{margin:0 0 .3rem;font-size:1.1rem}
.modeltype-card p{margin:0 0 .35rem;font-size:.9rem;color:var(--graphite)}
.modeltype-card .mt-count{font-weight:700;color:var(--orange-dark);font-size:.86rem}
.modeltype-card .mt-tasks{font-size:.82rem;color:var(--muted)}
/* Entscheidungs-Weiche (Anwendung nutzen vs. Modell integrieren) */
.hub-weiche{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,18rem),1fr));gap:.9rem;margin:1rem 0}
.hub-weiche__card{border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:var(--radius-lg);
  background:var(--warm-white);padding:1rem 1.1rem}
.hub-weiche__card h3{margin:0 0 .3rem;font-size:1.05rem}
.hub-weiche__card p{margin:0 0 .6rem;font-size:.9rem;color:var(--graphite)}

/* ============================================================
   Rev.21 – Autorenprofile Full-Width + Kontext-Sidebar Tool-Kategorie
   ============================================================ */
/* H1 im Autoren-Hero (kein isolierter Seitenkopf mehr) */
.author-hero__name{margin:.1rem 0 .3rem;font-size:clamp(1.7rem,3.6vw,2.3rem);line-height:1.15}
.author-hero .eyebrow{margin:0 0 .1rem}
/* Full-Width-Profil: Hero + Grids nutzen Breite, Fließtext bleibt lesbar */
.author-profile .author-hero{max-width:none}
.author-profile .author-hero__body{max-width:60rem}
.author-profile > .container.section > article,
body.author-profile main > .container.section{max-width:none}
.author-profile p:not([class]),
.author-profile .author-posts__more,
.author-profile ul:not([class]),
.author-profile ol:not([class]),
.author-profile h2:not([class]),
.author-profile h3:not([class]){max-width:62rem}
/* Weitere-Autoren-/Redaktions-Abschlussbereich (statt Sidebar) */
.author-more{margin:2rem 0 0;border-top:1px solid var(--line);padding-top:1.3rem}
.author-more__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,16rem),1fr));gap:.9rem;margin:.6rem 0 0}

/* Redaktions-Karte in Sidebar (Nero-Ersatz für neutrale Übersichten) */
.author-card--redaktion{border-left:4px solid var(--line)}

/* Tool-Kategorie: Editorial mit kompakter Kontext-Spalte (nur wenn Verantwortlicher existiert) */
.dir-editorial--withcontext{display:grid;grid-template-columns:minmax(0,1fr) 17rem;gap:1.6rem;align-items:start}
.dir-editorial__main{min-width:0}
.dir-editorial__context{display:flex;flex-direction:column;gap:.8rem;position:sticky;top:calc(var(--header-height,58px) + 1rem)}
@media (max-width:900px){
  .dir-editorial--withcontext{grid-template-columns:1fr}
  .dir-editorial__context{position:static;flex-direction:row;flex-wrap:wrap}
  .dir-editorial__context>*{flex:1 1 14rem}
}
.resp-card{border:1px solid var(--line);border-left:4px solid var(--orange);border-radius:var(--radius-lg);background:var(--warm-white);padding:1rem 1.1rem;box-shadow:var(--shadow)}
.resp-card__eyebrow{margin:0 0 .5rem;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;color:var(--orange-dark);font-weight:700}
.resp-card__head{display:flex;gap:.7rem;align-items:center}
.resp-card__mono{width:56px;height:56px;border-radius:12px;object-fit:cover;border:1px solid var(--line);background:var(--light-grey);flex:0 0 auto}
.resp-card__name{margin:0;font-weight:700}
.resp-card__name a{color:var(--ink);text-decoration:none}
.resp-card__role{margin:.05rem 0 0;font-size:.82rem;color:var(--muted)}
.resp-card__by{margin:.6rem 0 0;font-size:.86rem}
.resp-card__rev{margin:.3rem 0 0;font-size:.82rem;color:var(--muted)}
.ctx-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--warm-white);padding:.8rem .9rem}
.ctx-card__eyebrow{margin:0 0 .4rem;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;color:var(--muted);font-weight:700}
.ctx-card p{margin:0;font-size:.9rem}

/* Lange deutsche Komposita im Autoren-Hero sauber umbrechen (Mobile) */
.author-hero__lead,.author-hero__pos,.author-hero__name{overflow-wrap:break-word;hyphens:auto}
