/* Jägerklar theme (5 October 2026): loaded after site.css and app.css on the site and in the app.
   Forest green + blaze orange (the colour of drive-hunt vests) on pale sage, Manrope throughout, 8px corners.
   Derived from the Skipperklar theme (same layout rules, own palette); the palette matches the lesson videos ("jagd" in the video theme). */
@font-face { font-family: Manrope; src: url(/fonts/manrope-latin.woff2) format("woff2"); font-weight: 200 800; font-display: swap; }
:root {
  --green: #26341d; --green-deep: #1c2318; --green-soft: #dbe2cb; --moss: #4f6a2a;
  --orange: #c2410c; --orange-soft: #f6d3b5;
  --paper: #eef0ea; --cream: #e3e7da; --card: #ffffff;
  --ink: #1c2318; --muted: #5a6452; --line: #d4d9cb;
  --serif: Manrope, system-ui, sans-serif; --sans: Manrope, system-ui, sans-serif;
  --r: 8px;
}
body { font-size: 17px; }
h1, h2, h3 { font-weight: 800; letter-spacing: -0.02em; line-height: 1.08; }
.eyebrow { color: var(--orange); letter-spacing: .1em; font-weight: 700; }
.btn, .hero .chip, .pill, .lesson-list .free, .sample-card .dur, .mchip, .tabs button, .topicscores span { border-radius: 8px; }
.btn { font-weight: 700; }
.btn-primary { background: #e0620d; color: #fff; }
.btn-primary:hover { background: #c2540a; }
.btn-ghost { color: var(--green); }
header.site { background: rgba(238,240,234,.95); border-bottom: 3px solid #e0620d; }
.draft { background: repeating-linear-gradient(-45deg, #e0620d 0 18px, #ffffff 18px 36px); color: #1c2318; font-weight: 700; }
.hero::after { background: linear-gradient(90deg, rgba(22,30,17,.93) 0%, rgba(22,30,17,.72) 44%, rgba(22,30,17,.12) 80%); }
@media (max-width: 860px) { .hero::after { background: linear-gradient(180deg, rgba(22,30,17,.5) 0%, rgba(22,30,17,.84) 45%, rgba(22,30,17,.95) 100%); } }
.hero .chip { background: #e0620d; color: #fff; border: 0; font-weight: 700; }
.hero p.sub { color: #e2e8d8; }
.stats b { color: #ff9a4f; }
.stats span, .cta-band p, .page-hero p { color: #d6dfca; }
.crumbs, .crumbs-dark { color: #b3bfa4; }
.crumbs a, .crumbs-dark a, footer a, .app-foot a { color: #eef2e8; }
.final::after { background: rgba(22,30,17,.8); }
.final p { color: #eef2e8; }
footer { color: #c3ccb6; border-top: 6px solid #e0620d; }
footer .disclaimer, .app-foot { color: #a2ad94; }
footer .credits, .app-foot .seller { color: #8d9880; }
.page-hero.photo::after { background: linear-gradient(90deg, rgba(22,30,17,.94) 0%, rgba(22,30,17,.75) 55%, rgba(22,30,17,.3) 100%); }
.sample-card .dur { background: rgba(22,30,17,.88); }
.check-row.consent { background: #fff1e8; }
/* official catalogue question images (signs, lights, buoys) in quizzes */
.qimg { display: inline-block; max-height: 150px; max-width: 46%; margin: 6px 12px 10px 0; vertical-align: top; }
/* exam facts: pass marks per part */
.passrow { display: grid; grid-template-columns: 1fr auto; gap: 6px 18px; padding: 12px 0; border-bottom: 1px solid var(--line); }
.passrow b { font-weight: 700; }
.passrow span { color: var(--muted); }
.passrow em { font-style: normal; font-weight: 800; grid-row: span 2; align-self: center; font-size: 1.3rem; }
.contact-js { font-weight: 600; }


/* Additions (as ArboristPass) to the shared site.css: topic bars, exam facts, sample questions */
.weights { display: grid; gap: 4px; margin: 22px 0 26px; }
.wrow { display: grid; grid-template-columns: minmax(200px, 340px) 1fr minmax(150px, auto); gap: 8px 18px; align-items: center; padding: 9px 0; border-bottom: 1px solid var(--line); }
.wrow b { font-weight: 600; }
.wtrack { height: 10px; background: var(--card); border: 1px solid var(--line); border-radius: 6px; overflow: hidden; }
.wfill { display: block; height: 100%; background: #e0620d; }
.wn { color: var(--muted); font-size: .92rem; font-variant-numeric: tabular-nums; text-align: right; white-space: nowrap; }
@media (max-width: 720px) {
  .wrow { grid-template-columns: 1fr; gap: 6px; }
  .wn { text-align: left; }
}

.facts { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; margin: 0 0 30px; }
.facts div { background: var(--card); border: 1px solid var(--line); border-radius: var(--r); padding: 18px 20px; }
.facts b { display: block; font: 700 2rem/1.1 var(--serif); color: var(--green-deep); }
.facts span { color: var(--muted); font-size: .92rem; }
@media (max-width: 720px) { .facts { grid-template-columns: repeat(2, 1fr); } }

.sq { margin-bottom: 18px; }
.sq .eyebrow { margin-bottom: 6px; }
#preis .two-col { align-items: start; }
.lesson-video.placeholder, .sample .placeholder { aspect-ratio: 16/9; display: grid; place-items: center; background: var(--green-deep); color: #d6dfca; border-radius: var(--r); font-weight: 700; }
.qimgs { display: block; margin-top: 8px; }
.passrow em:not(.ok):not(.no) { color: var(--green); }
/* guides and catalogue pages */
figure.diagram { margin: 18px 0 22px; background: #fff; border: 1px solid var(--line); border-radius: var(--r); overflow: hidden; }
figure.diagram img { width: 100%; height: auto; }
.guide .note-box, .catalogue .note-box { margin: 14px 0 20px; }
.guide-more a { margin-right: 14px; }
.topic-tabs { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 18px; }
.topic-tabs a { padding: 6px 12px; border: 1px solid var(--line); border-radius: 8px; text-decoration: none; font-size: .9rem; background: var(--card); }
.topic-tabs a[aria-current] { background: var(--green); color: #fff; border-color: var(--green); }
.kq { padding: 14px 0; border-bottom: 1px solid var(--line); }
.kq .stem { font-weight: 600; margin-bottom: 6px; }
.kq .kn { display: inline-block; min-width: 2.4em; color: var(--orange); font-weight: 800; }
.kq .kans { margin: 6px 0 0; }
.kq .why { margin: 6px 0 0; color: var(--muted); font-size: .95rem; }
.navtypes li { margin-bottom: 4px; }
/* home page: one card per course */
.course-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 28px; margin-top: 32px; }
.course-cards .aside-card { position: static; display: flex; flex-direction: column; }
.course-cards .aside-card ul { flex: 1; }
.aside-card .ctitle { font-weight: 800; font-size: 1.25rem; margin: 0 0 2px; color: var(--ink); }
.aside-card .csub { color: var(--muted); font-size: .95rem; margin: 0 0 14px; }
/* optional audio clips in the lesson player (e.g. horn signals) */
.audio-clips .clip{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;padding:10px 0;border-top:1px solid var(--line,#ddd)}
.audio-clips .clip b{min-width:12em}
.audio-clips audio{width:100%;max-width:420px}
.audio-clips .small{font-size:.85em;margin-top:10px}
/* text lessons (sections with tables instead of a video) */
.textsec h2{margin-top:0}
.tablewrap{overflow-x:auto}
.ttable{border-collapse:collapse;width:100%;font-size:.95em}
.ttable th,.ttable td{border-bottom:1px solid var(--line,#ddd);padding:6px 8px;text-align:left;vertical-align:top}
.ttable th{font-weight:700}

/* Jägerklar additions */
.state-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 14px; margin: 18px 0 8px; }
.state-card { display: block; background: var(--card); border: 1px solid var(--line); border-radius: var(--r); padding: 16px 18px; color: var(--ink); text-decoration: none; }
.state-card:hover { border-color: var(--orange); }
.state-card b { display: block; font-size: 1.08rem; margin-bottom: 4px; }
.state-card span { color: var(--muted); font-size: .92rem; }
.state-card .tag { display: block; width: max-content; margin-top: 8px; font-size: .78rem; font-weight: 700; color: #fff; background: var(--green); border-radius: 6px; padding: 2px 8px; }
footer .cols { grid-template-columns: 1.4fr 1fr 1fr 1fr; }
@media (max-width: 760px) { footer .cols { grid-template-columns: 1fr; } }
.exam-parts { display: grid; gap: 12px; margin: 14px 0 20px; }
.exam-part { background: var(--card); border: 1px solid var(--line); border-left: 4px solid var(--orange); border-radius: var(--r); padding: 14px 18px; }
.exam-part h3 { margin: 0 0 6px; font-size: 1.05rem; }
.exam-part p { margin: 0 0 6px; }
.exam-part p.pass { margin: 0; color: var(--green); }
.pending { opacity: .6; }
