:root { --atlas-accent:var(--g-600); --atlas-accent-2:var(--g-500); --atlas-wash:var(--p-200); --atlas-soft:var(--p-050); }
.atlas-page { background:var(--paper); }
.atlas-header { position:sticky; top:0; z-index:20; background:rgba(244,241,233,.95); backdrop-filter:blur(18px); }
.atlas-shell { width:100%; }
.atlas-intro { min-height:520px; display:grid; grid-template-columns:1.45fr 1fr; gap:6vw; align-items:end; padding:7rem max(var(--pad-x), calc((100vw - var(--page)) / 2)) 4rem; border-bottom:1px solid var(--line-strong); background:url("/bildsprache/cube-kante-paper.svg") right -300px top -260px / 640px auto no-repeat, var(--bg); }
.atlas-intro h1 { margin:0; max-width:980px; font-family:var(--font-serif); font-size:clamp(4.7rem,9vw,9.3rem); font-weight: var(--fw-regular); letter-spacing:-.07em; line-height:.82; }
.atlas-intro h1 em,.atlas-method h2 em { color:var(--atlas-accent); font-weight: var(--fw-regular); }
.atlas-intro-copy { align-self:end; }
.atlas-intro-copy>p { max-width:620px; margin:0 0 3rem; font-family:var(--font-serif); font-size:clamp(1.25rem,2vw,1.8rem); line-height: var(--lh-t1); }
.atlas-stats { display:grid; grid-template-columns:repeat(2,1fr); border-top:1px solid var(--ink); border-left:1px solid var(--ink); }
.atlas-stats span { min-height:78px; display:flex; align-items:baseline; gap:.5rem; padding:1rem; border-right:1px solid var(--ink); border-bottom:1px solid var(--line-strong); color:var(--muted); font-size:.7rem; letter-spacing:var(--ls-over); text-transform:uppercase; }
.atlas-stats strong { color:var(--ink); font-family:var(--font-serif); font-size:2rem; font-weight: var(--fw-regular); letter-spacing: var(--ls-lead); }
.atlas-index-link { display:block; width:fit-content; margin:1rem 0 0 auto; color:var(--atlas-accent); font-size:var(--fs-over); font-weight: var(--fw-medium); letter-spacing:var(--ls-over); text-transform:uppercase; }
.atlas-workspace { min-height:900px; display:grid; grid-template-columns:260px minmax(420px,1fr) minmax(330px,430px); border-bottom:1px solid var(--line-strong); }
.atlas-rail,.atlas-detail { background:var(--atlas-wash); }
.atlas-rail { border-right:1px solid var(--ink); padding:1.4rem 0 2rem; }
.rail-heading { display:flex; align-items:center; justify-content:space-between; padding:0 1rem 1rem; font-size: var(--fs-over); font-weight: var(--fw-medium); letter-spacing: var(--ls-over); text-transform:uppercase; }
.quiet-button { appearance:none; border:0; border-bottom:1px solid currentColor; padding:0 0 .1rem; background:none; color:var(--muted); font:inherit; cursor:pointer; }
.domain-list { border-top:1px solid var(--line); }
.domain-family { margin:0; padding:1.2rem 1rem .45rem; color:var(--muted); font-size: var(--fs-over); font-weight: var(--fw-medium); letter-spacing:.16em; text-transform:uppercase; }
.domain-button { width:100%; display:grid; grid-template-columns:1fr auto; gap:.7rem; align-items:start; border:0; border-bottom:1px solid rgba(21,21,18,.12); padding:.72rem 1rem; background:transparent; color:var(--ink); text-align:left; cursor:pointer; }
.domain-button span { font-size:.73rem; line-height:1.25; }
.domain-button small { display:inline-block; width:2.35rem; color:var(--muted); font-size: var(--fs-over); font-weight: var(--fw-medium); letter-spacing: var(--ls-over); }
.domain-button strong { padding:.1rem .35rem; background:rgba(21,21,18,.07); font-size: var(--fs-over); font-weight: var(--fw-medium); }
.domain-button:hover,.domain-button.active { background:var(--night); color:var(--night-ink); }
.domain-button:hover small,.domain-button.active small { color:var(--atlas-accent-2); }
.domain-button:hover strong,.domain-button.active strong { background:rgba(255,255,255,.13); }
.rail-note { display:flex; gap:.75rem; margin:2rem 1rem 0; padding-top:1.2rem; border-top:1px solid var(--line); color:var(--muted); font-size: var(--fs-over); }
.rail-note p { margin:0; }
.rail-note strong { color:var(--ink); }
.pulse-dot { width:8px; height:8px; flex:0 0 auto; margin-top:.3rem; border-radius:50%; background:var(--atlas-accent-2); box-shadow:0 0 0 5px rgba(57,198,200,.16); }
.atlas-main { min-width:0; padding:1.5rem 2vw 4rem; background:var(--atlas-soft); }
.atlas-toolbar { position:sticky; top:86px; z-index:10; padding-bottom:1rem; background:linear-gradient(var(--atlas-soft) 86%,transparent); }
.search-field { display:grid; grid-template-columns:auto 1fr auto; align-items:center; gap:1rem; padding:0 1rem; border:1px solid var(--ink); background:var(--p-050); }
.search-field>span { font-size: var(--fs-over); font-weight: var(--fw-medium); letter-spacing: var(--ls-over); text-transform:uppercase; }
.search-field input { min-width:0; height:64px; border:0; outline:0; background:transparent; color:var(--ink); font-family:var(--font-serif); font-size:1.12rem; }
.search-field kbd { border:1px solid var(--line); padding:.15rem .45rem; color:var(--muted); font:600 .7rem var(--font-sans); }
.view-tabs { display:grid; grid-template-columns:repeat(4,1fr); margin-top:.7rem; border:1px solid var(--ink); }
.view-tabs button { min-height:42px; border:0; border-right:1px solid var(--ink); background:transparent; color:var(--ink); font-size: var(--fs-over); font-weight: var(--fw-medium); letter-spacing: var(--ls-over); text-transform:uppercase; cursor:pointer; }
.view-tabs button:last-child { border-right:0; }
.view-tabs button:hover,.view-tabs button.active { background:var(--atlas-accent); color:var(--p-050); }
.filter-row { display:flex; gap:1rem; align-items:end; padding:.8rem 0 0; }
.filter-row label { display:grid; gap:.25rem; color:var(--muted); font-size: var(--fs-over); font-weight: var(--fw-medium); letter-spacing: var(--ls-over); text-transform:uppercase; }
.filter-row select { min-width:130px; border:0; border-bottom:1px solid var(--line); padding:.35rem .2rem; background:transparent; color:var(--ink); font-size:.75rem; }
.filter-row .sort-label { margin-left:auto; }
.result-heading { display:flex; justify-content:space-between; gap:2rem; align-items:baseline; padding:1.2rem 0 .8rem; border-bottom:1px solid var(--line-strong); font-size: var(--fs-over); font-weight: var(--fw-medium); letter-spacing: var(--ls-over); text-transform:uppercase; }
.result-heading p { margin:0; color:var(--muted); font-weight: var(--fw-regular); }
.result-list { border-left:1px solid var(--ink); }
.result-card { width:100%; display:grid; grid-template-columns:155px 1fr; gap:.8rem 1.2rem; padding:1.25rem; border:0; border-right:1px solid var(--ink); border-bottom:1px solid var(--line-strong); background:transparent; color:var(--ink); text-align:left; cursor:pointer;  }
.result-card:hover,.result-card:focus-visible { outline:0; background:var(--night); color:var(--night-ink); }
.result-code { color:var(--muted); font-size: var(--fs-over); font-weight: var(--fw-medium); letter-spacing: var(--ls-over); overflow-wrap:anywhere; }
.result-card:hover .result-code { color:var(--p-300); }
.result-domains { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:.25rem; }
.domain-tag { display:inline-flex; align-items:center; min-height:20px; padding:0 .4rem; border:1px solid currentColor; color:var(--atlas-accent); font-size:var(--fs-over); font-weight:var(--fw-semi); letter-spacing: var(--ls-over); }
.result-card:hover .domain-tag { color:var(--atlas-accent-2); }
.result-card>strong { grid-column:1/-1; max-width:920px; font-family:var(--font-serif); font-size:clamp(1.25rem,1.7vw,1.75rem); font-weight: var(--fw-regular); letter-spacing:-.025em; line-height:1.16; }
.result-card>p { grid-column:1/-1; max-width:820px; margin:.15rem 0; color:var(--muted); font-size:.82rem; }
.result-card:hover>p { color:var(--p-300); }
.result-footer { grid-column:1/-1; display:flex; flex-wrap:wrap; gap:1.2rem; justify-content:flex-end; padding-top:.75rem; border-top:1px solid rgba(98,95,88,.45); font-size: var(--fs-over); font-weight: var(--fw-medium); letter-spacing:var(--ls-over); text-transform:uppercase; }
.result-footer span:first-child { margin-right:auto; }
.state-pill { justify-self:end; display:inline-flex; width:max-content; padding:.25rem .5rem; border:1px solid currentColor; color:var(--atlas-accent); font-size:var(--fs-over); font-weight:var(--fw-semi); letter-spacing:var(--ls-over); text-transform:uppercase; }
.state-pill.observed { color:var(--sig-ok); }.state-pill.emerging { color:var(--g-600); }.state-pill.contested { color:var(--sig-alert); }.state-pill.not_observed { color:var(--ink-2); }
.load-more { width:100%; margin-top:1rem; border:1px solid var(--ink); padding:1rem; background:transparent; color:var(--ink); font-size: var(--fs-over); font-weight: var(--fw-medium); letter-spacing: var(--ls-over); text-transform:uppercase; cursor:pointer; }
.load-more:hover { background:var(--ink); color:var(--paper); }
.load-more[hidden],.filter-row[hidden] { display:none; }
.empty-results,.load-error { padding:5rem 2rem; border-right:1px solid var(--ink); border-bottom:1px solid var(--line-strong); text-align:center; }
.empty-results strong,.load-error strong { font-family:var(--font-serif); font-size:1.7rem; font-weight: var(--fw-regular); }
.empty-results p,.load-error p { color:var(--muted); }
.atlas-detail { position:sticky; top:86px; align-self:start; max-height:calc(100vh - 86px); overflow:auto; border-left:1px solid var(--ink); padding:2rem; }
.detail-empty { min-height:580px; display:flex; flex-direction:column; justify-content:center; }
.detail-index { color:var(--atlas-accent); font-size: var(--fs-over); font-weight:var(--fw-semi); letter-spacing: var(--ls-over); text-transform:uppercase; overflow-wrap:anywhere; }
.atlas-detail h2 { margin:1.5rem 0 2rem; font-family:var(--font-serif); font-size:clamp(2.1rem,3.2vw,3.5rem); font-weight: var(--fw-regular); letter-spacing: var(--ls-lead); line-height:.97; }
.detail-empty p,.atlas-detail section p { color:var(--muted); font-size:.82rem; }
.detail-top { display:flex; justify-content:space-between; gap:1rem; }
.detail-top button { border:0; background:none; color:var(--muted); font-size:1.6rem; cursor:pointer; }
.detail-domains { display:flex; gap:.35rem; flex-wrap:wrap; margin-top:1.2rem; }
.atlas-detail section { padding:1.2rem 0; border-top:1px solid var(--line); }
.atlas-detail section h3 { margin:0 0 .75rem; font-size: var(--fs-over); letter-spacing: var(--ls-over); text-transform:uppercase; }
.atlas-detail dl { margin:0; }
.atlas-detail dl>div { display:grid; grid-template-columns:95px 1fr; gap:1rem; padding:.45rem 0; border-top:1px solid rgba(98,95,88,.22); }
.atlas-detail dt { color:var(--muted); font-size:var(--fs-over); text-transform:uppercase; }
.atlas-detail dd { margin:0; font-size:.75rem; overflow-wrap:anywhere; }
.detail-date { margin-bottom:0; }
.source-links { display:grid; gap:.5rem; }
.source-links a, .source-record { display:grid; gap:.2rem; padding:.7rem; border:1px solid var(--line); text-decoration:none; overflow-wrap:anywhere; }
.source-links a:hover { border-color:var(--atlas-accent); color:var(--atlas-accent); }
.source-links span { font-size: var(--fs-over); font-weight: var(--fw-medium); letter-spacing:var(--ls-over); text-transform:uppercase; }
.source-links strong { font-size:var(--fs-over); font-weight: var(--fw-regular); }
.source-links small { color:var(--muted); font-size: var(--fs-over); }
.permalink { display:block; width:fit-content; margin-top:1.5rem; color:var(--atlas-accent); font-size: var(--fs-over); font-weight: var(--fw-medium); letter-spacing:var(--ls-over); text-transform:uppercase; }
.hash { font-family:ui-monospace,SFMono-Regular,Consolas,monospace; font-size: var(--fs-over)!important; }
.detail-trust { margin-top:1.5rem; padding:1rem; border:1px solid var(--line); color:var(--muted); font-size: var(--fs-over); }
.atlas-method { padding:8rem max(var(--pad-x), calc((100vw - var(--page)) / 2)); border-bottom:1px solid var(--line-strong); }
.atlas-method>div:first-child { display:grid; grid-template-columns:1fr 3fr; gap:max(var(--pad-x), calc((100vw - var(--page)) / 2)); }
.atlas-method h2,.atlas-action h2 { margin:0; font-family:var(--font-serif); font-size:clamp(3.5rem,7vw,7.5rem); font-weight: var(--fw-regular); letter-spacing:-.06em; line-height:.9; }
.method-grid { display:grid; grid-template-columns:repeat(4,1fr); margin-top:5rem; border-top:1px solid var(--ink); border-left:1px solid var(--ink); }
.method-grid article { min-height:300px; padding:1.5rem; border-right:1px solid var(--ink); border-bottom:1px solid var(--line-strong); }
.method-grid span { color:var(--atlas-accent); font-size: var(--fs-over); font-weight: var(--fw-medium); }
.method-grid h3 { margin:3rem 0 1rem; font-family:var(--font-serif); font-size:2rem; font-weight: var(--fw-regular); }
.method-grid p { color:var(--muted); font-size:.84rem; }
.atlas-action { padding:9rem max(var(--pad-x), calc((100vw - var(--page)) / 2)); background:var(--atlas-accent); color:var(--p-050); }
.atlas-action h2 { max-width:1000px; }
.atlas-action>p:not(.section-label) { max-width:680px; margin:3rem 0 2rem auto; font-family:var(--font-serif); font-size:1.25rem; }
.atlas-action>a { display:block; width:max-content; margin-left:auto; border-bottom:1px solid var(--a-paper-22); padding-bottom:.25rem; font-size: var(--fs-cap); font-weight: var(--fw-medium); letter-spacing: var(--ls-over); text-decoration:none; text-transform:uppercase; }
@media(max-width:1180px){.atlas-workspace{grid-template-columns:230px 1fr}.atlas-detail{display:none;position:fixed;inset:86px 0 0 230px;z-index:15;max-height:none}.atlas-detail.open{display:block}.result-card{grid-template-columns:130px 1fr}}
@media(max-width:800px){.atlas-intro{grid-template-columns:1fr;min-height:0;padding:5rem 1.25rem 3rem}.atlas-intro h1{font-size:clamp(4rem,18vw,7rem)}.atlas-workspace{display:block}.atlas-rail{border-right:0;border-bottom:1px solid var(--line-strong);padding:1rem}.rail-heading,.rail-note,.domain-family{display:none}.domain-list{display:flex;overflow:auto;border:0;scrollbar-width:thin}.domain-button{width:auto;min-width:76px;display:flex;padding:.65rem;border:1px solid var(--line);margin-right:.35rem}.domain-button span{white-space:nowrap}.domain-button span:not(small){font-size:0}.domain-button small{width:auto;font-size: var(--fs-over)}.domain-button strong{font-size:var(--fs-over)}.atlas-main{padding:1rem 1.25rem 4rem}.atlas-toolbar{top:0;position:relative}.search-field{grid-template-columns:1fr auto}.search-field>span{display:none}.view-tabs{overflow:auto;grid-template-columns:repeat(4,minmax(105px,1fr))}.filter-row{overflow:auto}.result-heading{align-items:flex-start;flex-direction:column;gap:.25rem}.result-card{grid-template-columns:1fr auto;padding:1rem}.atlas-detail{inset:0;z-index:40;padding:1.25rem}.atlas-method{padding:6rem 1.25rem}.atlas-method>div:first-child{grid-template-columns:1fr}.method-grid{grid-template-columns:1fr 1fr}.atlas-action{padding:6rem 1.25rem}}
@media(max-width:520px){.atlas-stats{grid-template-columns:1fr 1fr}.atlas-intro-copy>p{font-size:1.15rem}.filter-row label{min-width:130px}.result-card>strong{font-size:1.15rem}.result-footer{justify-content:flex-start}.result-footer span:first-child{margin-right:0}.method-grid{grid-template-columns:1fr}.method-grid article{min-height:230px}.atlas-method h2,.atlas-action h2{font-size:3.4rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.result-card{transition:none}}
