/* Atlas components share the KIS palette; no global component overrides. */
.atlas { padding:1.5rem 0 3rem; color:var(--text-main); }
.atlas a { color:var(--accent); text-underline-offset:4px; }
.atlas .btn-primary { color:#0b0d10; }
.atlas-breadcrumb { display:flex; flex-wrap:wrap; align-items:center; gap:.7rem; margin-bottom:1.5rem; font-size:.82rem; color:var(--text-muted); }
.atlas-breadcrumb a { color:var(--text-muted); text-decoration:none; }
.atlas-breadcrumb a:hover { color:var(--text-main); }
.atlas-hero { display:grid; grid-template-columns:1fr auto; gap:2rem; padding:2.5rem; border:1px solid var(--border-color); border-radius:14px; background:var(--bg-elevated); position:relative; overflow:hidden; }
.atlas-hero::before { content:""; position:absolute; top:0; left:2.5rem; width:4rem; height:3px; background:var(--accent); }
.atlas-eyebrow { color:var(--text-muted); font-size:.68rem; letter-spacing:.13em; font-weight:700; line-height:1.7; margin-bottom:.65rem; }
.atlas h1 { font-size:clamp(2rem,4vw,3.3rem); letter-spacing:-.04em; line-height:1.12; font-weight:700; margin:0 0 1rem; }
.atlas-intro { color:var(--text-muted); line-height:1.75; font-size:1rem; }
.atlas-tags { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:1.2rem; }
.atlas-tags > * { background:var(--bg-soft); border:1px solid var(--border-color); border-radius:5px; padding:.35rem .65rem; font-size:.74rem; text-decoration:none; }
.atlas-counter { padding-left:2rem; border-left:1px solid var(--border-color); min-width:180px; display:flex; flex-direction:column; justify-content:center; }
.atlas-counter strong { font-size:4.5rem; line-height:1; letter-spacing:-.05em; font-weight:500; color:var(--accent); }
.atlas-counter span { margin:.75rem 0; font-size:.85rem; }
.atlas-counter small { color:var(--text-muted); font-size:.73rem; line-height:1.6; }
.atlas-notice { display:flex; gap:.85rem; align-items:flex-start; margin:1.2rem 0 1.7rem; font-size:.8rem; line-height:1.7; color:var(--text-muted); }
.atlas-notice p { margin:0; }
.atlas-notice-mark { flex:none; border:1px solid var(--border-color); border-radius:50%; width:23px; height:23px; text-align:center; color:var(--accent); font-style:italic; }
.atlas-filters { display:grid; grid-template-columns:minmax(180px,1.6fr) repeat(3,minmax(140px,1fr)) auto; gap:.9rem; align-items:end; padding:1.1rem; background:var(--bg-elevated); border:1px solid var(--border-color); border-radius:10px; }
.atlas-filters label { display:block; margin-bottom:.45rem; font-size:.78rem; color:var(--text-muted); }
.atlas-filters .form-control,.atlas-filters .form-select { min-height:43px; font-size:.88rem; }
.atlas-filters .btn { min-height:43px; }
.atlas-results { display:flex; justify-content:space-between; gap:1rem; margin:1.2rem 0; font-size:.78rem; color:var(--text-muted); }
.atlas-results p { margin:0; }
.vehicle-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.2rem; }
.vehicle-card { min-width:0; border:1px solid var(--border-color); border-radius:12px; overflow:hidden; background:var(--bg-elevated); transition:border-color .2s; }
.vehicle-card:hover,.vehicle-card:focus-within { border-color:var(--accent); }
.vehicle-picture { display:block; position:relative; aspect-ratio:16/10; background:#e5e7e9; border-bottom:1px solid var(--border-color); }
.vehicle-picture img { width:100%; height:100%; display:block; object-fit:contain; }
.vehicle-picture img.fit-cover { object-fit:cover; }
.vehicle-continuity { position:absolute; top:.75rem; left:.75rem; color:#dbe4ff; background:#172137; border:1px solid #405074; border-radius:4px; padding:.25rem .55rem; font-size:.64rem; letter-spacing:.07em; text-transform:uppercase; }
.vehicle-continuity.legends { color:#ecd3a3; background:#30281c; border-color:#5e4b2f; }
.vehicle-placeholder { min-height:220px; height:100%; display:flex; flex-direction:column; gap:1rem; align-items:center; justify-content:center; padding:1.5rem; text-align:center; color:var(--text-muted); background:var(--bg-soft); }
.vehicle-placeholder strong { font-weight:500; letter-spacing:.1em; font-size:1.7rem; color:var(--text-main); }
.vehicle-placeholder span { max-width:24rem; font-size:.78rem; line-height:1.8; }
.vehicle-card-content { padding:1.2rem; }
.vehicle-card h2 { font-size:1.7rem; letter-spacing:-.025em; margin:0 0 .4rem; }
.vehicle-card h2 a { color:var(--text-main); text-decoration:none; }
.vehicle-role { font-size:.86rem; margin:0 0 .4rem; }
.vehicle-fullname { font-size:.72rem; color:var(--text-muted); min-height:2.7em; margin:0; line-height:1.5; }
.vehicle-card-bottom { border-top:1px solid var(--border-color); display:flex; justify-content:space-between; align-items:center; gap:.5rem; margin-top:1rem; padding-top:.9rem; }
.vehicle-card-bottom > span { font-size:.62rem; color:var(--text-muted); }
.vehicle-card-bottom > a { font-size:.78rem; text-decoration:none; white-space:nowrap; }
.atlas-empty { grid-column:1/-1; padding:4rem 1rem; text-align:center; border:1px dashed var(--border-color); border-radius:12px; }
.atlas-empty h2 { font-size:1.4rem; }
.atlas-empty p { color:var(--text-muted); }
.atlas-method { margin-top:2rem; border-top:1px solid var(--border-color); padding:1.3rem 0; font-size:.85rem; color:var(--text-muted); line-height:1.8; }
.atlas-method summary { cursor:pointer; color:var(--text-main); margin-bottom:1rem; }
.dossier-heading { margin-bottom:1.8rem; }
.dossier-heading h1 { font-size:clamp(2.8rem,6vw,4.7rem); margin-bottom:.5rem; }
.dossier-heading > p:not(.atlas-eyebrow) { color:var(--text-muted); }
.dossier-overview { display:grid; grid-template-columns:1.3fr 1fr; gap:2rem; align-items:start; }
.dossier-figure { margin:0; min-width:0; border:1px solid var(--border-color); border-radius:12px; overflow:hidden; background:var(--bg-elevated); }
.dossier-image { background:#e5e7e9; }
.dossier-image img { display:block; width:100%; height:auto; aspect-ratio:16/10; object-fit:contain; }
.dossier-figure figcaption { padding:.9rem 1rem; font-size:.69rem; color:var(--text-muted); line-height:1.8; }
.dossier-about { padding:.5rem 0; font-size:.94rem; line-height:1.85; }
.atlas h2 { font-weight:650; }
.dossier-about h2,.dossier-panel h2,.dossier-section h2 { font-size:1.25rem; line-height:1.4; margin:0 0 1rem; }
.dossier-about ul,.dossier-panel ul { padding-left:1.1rem; }
.dossier-about li,.dossier-panel li { margin-bottom:.65rem; }
.dossier-about ul { color:var(--text-muted); font-size:.85rem; }
.dossier-section { margin:2rem 0; }
.dossier-section-heading { display:flex; justify-content:space-between; align-items:baseline; gap:1rem; }
.dossier-section-heading span { color:var(--text-muted); font-size:.73rem; }
.vehicle-facts { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1px; border:1px solid var(--border-color); border-radius:10px; overflow:hidden; background:var(--border-color); }
.vehicle-facts > div { padding:1.1rem; background:var(--bg-elevated); }
.vehicle-facts dt { font-weight:400; font-size:.8rem; color:var(--text-muted); }
.vehicle-facts dd { font-size:1.35rem; font-weight:600; margin:.5rem 0; line-height:1.4; }
.fact-source { display:block; color:var(--text-muted); font-size:.64rem; line-height:1.6; }
.fact-source.card { color:#d7b883; background:transparent; border:0; box-shadow:none; border-radius:0; }
[data-theme="light"] .fact-source.card { color:#826024; }
.dossier-columns { display:grid; grid-template-columns:1fr 1.4fr; gap:1.2rem; align-items:start; }
.dossier-panel { padding:1.5rem; background:var(--bg-elevated); border:1px solid var(--border-color); border-radius:12px; font-size:.88rem; line-height:1.85; }
.dossier-panel > :last-child { margin-bottom:0; }
.dossier-notes { border-left:3px solid var(--accent); }
.dossier-notes p:not(.atlas-eyebrow) { color:var(--text-muted); }
.dossier-sources { border-top:1px solid var(--border-color); padding-top:1.5rem; font-size:.82rem; line-height:1.8; }
.dossier-sources li { margin-bottom:.8rem; overflow-wrap:anywhere; }
.dossier-sources li span { display:block; color:var(--text-muted); font-size:.73rem; }
.dossier-sources > p { color:var(--text-muted); }
.atlas a:focus-visible,.atlas summary:focus-visible { outline:2px solid var(--accent); outline-offset:4px; }
@media (max-width:1000px) { .vehicle-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .atlas-filters { grid-template-columns:repeat(2,minmax(0,1fr)); } .dossier-overview { grid-template-columns:1fr 1fr; gap:1.2rem; } }
@media (max-width:650px) { .atlas { padding-top:1rem; } .atlas-hero { grid-template-columns:1fr; padding:1.5rem; gap:1.5rem; } .atlas-counter { border-left:0; border-top:1px solid var(--border-color); padding:1rem 0 0; flex-direction:row; align-items:center; justify-content:flex-start; gap:1rem; min-width:0; } .atlas-counter strong { font-size:2.5rem; } .atlas-counter small { display:none; } .vehicle-grid { grid-template-columns:1fr; } .atlas-filters { padding:.85rem; } .atlas-search { grid-column:1/-1; } .atlas-filters .btn { grid-column:1/-1; } .atlas-results > span { display:none; } .dossier-overview,.dossier-columns { grid-template-columns:1fr; } .vehicle-facts { grid-template-columns:repeat(2,minmax(0,1fr)); } .vehicle-facts dd { font-size:1.1rem; } .dossier-section-heading { display:block; margin-bottom:1rem; } .dossier-section-heading h2 { margin-bottom:.3rem; } .dossier-panel { padding:1.2rem; } }
