@font-face{font-family:'Noto Sans';src:url('./assets/fonts/noto-sans-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Noto Sans';src:url('./assets/fonts/noto-sans-bold.woff2') format('woff2');font-style:normal;font-weight:700;font-display:swap}
:root{--serif:'Noto Sans',Arial,sans-serif;--sans:'Noto Sans',Arial,sans-serif;--mono:'Noto Sans',Arial,sans-serif}
body{font-family:var(--sans);font-size:16px;line-height:1.65}h1,h2,h3{font-family:var(--sans);letter-spacing:normal;line-height:1.25;font-weight:700}h1 em,h2 em{font-style:normal;color:var(--accent)}button,input,select{font:inherit}p{line-height:1.7}.prose{font-size:18px;line-height:1.85}.prose p{line-height:1.85}.eyebrow,.tiny,.tag,.small-note,.card-foot,.dossier-number,.specimen{font-size:12px;letter-spacing:.035em}.hunter-card p,.chapter-card p,.faction-card p,.place-card p,.creature-card p{font-size:15px;line-height:1.75}.text-link,.button,.chip,.save-button,.filter-tabs a,select,input{font-size:14px}.header nav a{font-size:13px}.reader-deck,.intro{font-size:19px;line-height:1.75}.chapter-sidebar nav a{font-size:13px}.source-notes a,.source-notes p,.inline-sources a{font-size:14px}.metadata dt{font-size:11px}.metadata dd{font-size:14px}.hero h1{font-size:clamp(44px,6vw,80px);letter-spacing:-.025em}.hero-copy>p{font-size:17px}.hero-topline,.hero-bottom{font-size:11px}.hero-copy{max-width:730px}.brand{flex-shrink:0}.language-switch{display:flex;gap:2px;flex-shrink:0;border:1px solid var(--line);padding:3px;border-radius:4px}.language-switch button{background:none;color:var(--muted);border:0;padding:5px 7px;font-size:12px;cursor:pointer}.language-switch button[aria-pressed=true]{background:#b19a69;color:#101310;border-radius:2px}.hunter-card{display:flex;flex-direction:column}.hunter-card .card-foot{margin-top:auto}.hunter-portrait{display:block;width:100%;height:240px;object-fit:contain;background:radial-gradient(ellipse at bottom,#41403955,transparent 72%);margin:12px auto 20px}.portrait-placeholder{height:240px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:12px;color:var(--muted);font-size:12px;text-align:center}.portrait-placeholder img{opacity:.35}.dossier-portrait{margin:0;padding:24px;height:auto;min-width:0}.dossier-portrait .hunter-portrait{width:100%;height:360px}.dossier-portrait figcaption{font-size:12px;text-align:center;color:var(--muted);overflow-wrap:anywhere}.dossier-portrait figcaption p{margin:8px 0}.dossier-portrait figcaption a{color:var(--accent)}.tree-entry{margin:0 0 28px}.tree-filters{display:flex;align-items:end;gap:16px;flex-wrap:wrap}.tree-filters label{display:flex;flex-direction:column;gap:8px;font-size:13px;flex:1;min-width:180px}.tree-filters input{background:var(--panel);border:1px solid var(--line);color:var(--text);padding:12px;min-width:0;width:100%}.tree-legend{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0}.faction-tree{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;align-items:start}.tree-group{background:#191c18;border:1px solid var(--line);padding:24px;border-radius:3px}.tree-root{border-bottom:2px solid #a89062;padding:0 0 20px;position:relative}.tree-root h2{font-size:22px;margin:12px 0}.tree-root p{font-size:14px;color:var(--muted)}.tree-root h2 span{color:#b9a16e}.tree-branches{list-style:none;margin:0 0 0 18px;padding:22px 0 0 24px;border-left:1px solid #a89062}.tree-person{position:relative;list-style:none;margin:0 0 16px;padding:12px;background:#22261f;border:1px solid #3c4236;min-width:0}.tree-branches>.tree-person:before{content:'';position:absolute;left:-25px;top:45px;width:24px;border-top:1px solid #a89062}.tree-person>a:first-child{display:flex;align-items:center;gap:15px}.tree-person strong{display:block;font-size:16px}.tree-person small{display:block;font-size:12px;color:#c8b582;margin-top:5px}.tree-person .compact{width:64px;height:80px;flex-shrink:0;margin:0;object-fit:contain}.tree-person .portrait-placeholder.compact img{height:40px;width:30px}.tree-person .portrait-placeholder.compact span{font-size:9px;line-height:1.3}.tree-evidence{display:block;text-align:right;font-size:11px;color:var(--muted);padding-top:8px}.tree-unknown{margin:24px 0;font-size:14px;color:var(--muted)}.unassigned{margin-top:50px}.unassigned-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;padding:0}.unassigned h2{font-size:26px}.tree-person:hover{border-color:#a89062}.image-credits{display:grid;gap:12px}.image-credits a{font-size:14px}.footer{font-size:13px}.footer p,.footer a,.footer>div>span{font-size:12px}.keyboard-note{font-size:12px}.story-account summary{font-size:15px}.story-account summary span{font-size:12px}
@media(min-width:1101px){.header{gap:22px}.header nav{gap:23px}.search-label{display:none}}
@media(max-width:1100px){.header{flex-wrap:wrap;gap:12px}.menu-toggle{display:block;margin-left:auto}.header nav{display:none;order:5;width:100%;flex-basis:100%;padding:12px 0}.header nav.open{display:flex;flex-wrap:wrap}.search-label,.search-trigger kbd{display:none}.header nav a{font-size:14px}.hero-bottom{gap:20px}.hero-topline{max-width:600px}.unassigned-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.faction-tree{grid-template-columns:1fr}.tree-group{padding:18px}.tree-filters{align-items:stretch}.tree-filters label{flex-basis:100%}.tree-filters button{width:100%}.unassigned-grid{grid-template-columns:1fr}.hero h1{font-size:44px}.hero-topline{line-height:1.7}.hero-topline>span{display:none}.hero-copy{padding-top:42px}.hero-bottom{flex-wrap:wrap}.brand{font-size:14px}.language-switch button{padding:6px}.header{padding-left:16px;padding-right:16px}.hero-copy>p{font-size:16px}.dossier-portrait .hunter-portrait{height:280px}.prose{font-size:17px}.page-heading h1{font-size:36px}.reader h1{font-size:34px}.tree-root h2{font-size:21px}.hero-content{min-height:650px}}
@media print{.language-switch,.tree-filters,.tree-legend{display:none}.faction-tree{display:block}.tree-group{break-inside:avoid;background:white;color:black}.tree-person{background:white}.tree-person small{color:#333}.hunter-portrait{max-height:180px}}
.select-label{font-size:12px;letter-spacing:.04em}.source-table .eyebrow,.search-result .eyebrow,.creature-card .specimen{font-size:11px}.search-result>span:last-of-type,.source-external,.results-count,.chapter-pagination small{font-size:13px}.chapter-sidebar .eyebrow{font-size:11px}.dossier-portrait .hunter-portrait{max-height:360px}.tree-evidence{font-size:12px}.faction-tree:has(>.tree-group:only-child){grid-template-columns:minmax(0,850px)}
.stats{grid-template-columns:repeat(4,minmax(0,1fr))}.stats>a{min-width:0}.stats>a>span:not(.stats-arrow){overflow-wrap:anywhere}
@media(max-width:760px){.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stats>a{flex-wrap:wrap;padding:18px 12px;gap:8px}.stats>a>strong{font-size:30px}.stats>a>span:not(.stats-arrow){font-size:10px;line-height:1.6;flex-basis:100%}}
.tree-group{min-width:0;overflow-wrap:anywhere}.tree-person>a>span:last-child{min-width:0;overflow-wrap:anywhere}.tree-person>a:first-child{gap:10px}.unassigned-grid{min-width:0}
@media(max-width:700px){.faction-tree{grid-template-columns:minmax(0,1fr)}.unassigned-grid{grid-template-columns:minmax(0,1fr)}}
.heading-line h1{min-width:0;max-width:100%}
@media(max-width:700px){html[lang=de] h1,html[lang=de] h2,html[lang=de] h3{hyphens:auto;overflow-wrap:anywhere}.heading-line{min-width:0}}
.catalog-coverage{padding:18px 22px;border:1px solid var(--line);margin:20px 0;background:#191c18}.catalog-coverage p{font-size:13px;margin:5px 0;color:var(--muted)}.catalog-coverage p:first-child{color:var(--text)}.english-name{font-size:13px!important;color:var(--muted);margin:0 0 10px!important}.name-evidence{border-left:2px solid var(--accent);padding:4px 0 4px 18px;margin:22px 0}.name-evidence p{font-size:14px;margin:5px 0}.name-evidence .inline-sources{margin-top:8px}.pact-evidence{margin-top:28px}.pact-evidence p{font-size:14px}.search-toolbar[data-filter-form=hunters]{flex-wrap:wrap}.search-toolbar[data-filter-form=hunters] .search-field{flex:1 1 320px}.search-toolbar[data-filter-form=hunters] .select-label{min-width:160px;flex:1 1 160px}.search-toolbar[data-filter-form=hunters] select{max-width:100%}
@media(max-width:700px){.search-toolbar[data-filter-form=hunters] .search-field,.search-toolbar[data-filter-form=hunters] .select-label{flex-basis:100%;min-width:0}.name-evidence{overflow-wrap:anywhere}}
