/* Compact NEO layout; shared satellite styles first, shared navigation last. */
.row-badge{display:inline-block;padding:3px 7px;border-radius:999px;border:1px solid var(--border);background:var(--panel2);color:var(--muted);font:inherit;font-size:10px;white-space:nowrap}.risk-zero{color:var(--text);border-color:#8b98ab}.risk-normal{color:#7ee787;border-color:#448e57}.risk-attention{color:#ffd86a;border-color:#ad8730}.risk-threat{color:#ffb86c;border-color:#b57328}.risk-certain{color:#ff9c9c;border-color:#d86464}:root[data-theme=light] .risk-normal{color:#196a32}:root[data-theme=light] .risk-attention{color:#705100}:root[data-theme=light] .risk-threat{color:#8c4000}:root[data-theme=light] .risk-certain{color:#a51616}.sort-heading{font:inherit;text-transform:inherit;letter-spacing:inherit;font-weight:750;background:none;border:0;color:var(--muted);padding:3px 0;cursor:pointer}.sort-heading:hover{color:var(--accent)}.info-button{font:inherit;color:var(--accent);background:transparent;border:0;cursor:help;padding:3px}.table-key{display:flex;flex-wrap:wrap;gap:14px;margin:7px 0;font-size:11px}#neoTooltip{position:fixed;z-index:3000;width:290px;max-width:calc(100vw - 16px);padding:10px 12px;background:var(--panel);color:var(--text);border:1px solid var(--accent);border-radius:10px;box-shadow:var(--shadow);font:12px/1.5 system-ui;pointer-events:none}.observer-fields{display:flex;flex-wrap:wrap;gap:10px;margin:10px 0}.observer-fields label{font-size:11px;flex:1;min-width:140px}.observer-fields input{font-size:12px}.observer-fields button{align-self:end}
body{font-size:13px;line-height:1.45}.neo-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0 10px}.neo-heading h1{font-size:16px;margin:0}.muted,.caption{color:var(--muted)}.neo-heading span{font-size:11px}.card{margin-bottom:10px;padding:13px}.tabs,.chips{display:flex;flex-wrap:wrap;gap:6px}.tabs{margin-bottom:12px;padding:7px;background:var(--panel2);border:1px solid var(--border);border-radius:12px}.chip,.tab,.button{font:inherit;font-size:12px;font-weight:750;white-space:nowrap;border:1px solid var(--border);background:var(--pill);color:var(--text);border-radius:999px;padding:7px 11px;cursor:pointer}.tab[aria-pressed=true],.chip[aria-pressed=true]{background:linear-gradient(180deg,#2588ff,var(--pillActive));border-color:#4ea1ff;color:#fff}.button:disabled{opacity:.45;cursor:default}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.overview-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin:0 0 10px}.overview-stats .mini{padding:10px;border-radius:12px}.overview-stats .v{font-size:15px}.overview-stats .k{font-size:11px}.overview-stats .mini:last-child .v{font-size:12px}.next-object{display:grid;grid-template-columns:1fr auto;gap:6px 12px}.next-object h2{grid-column:1/-1}.next-object .hint{margin:0;font-size:12px}.hero{display:grid;grid-template-columns:minmax(0,1fr) 190px;gap:16px;align-items:center}.hero h2{font-size:19px;margin:5px 0}.hero p{font-size:12px;margin:8px 0;color:var(--muted)}.eyebrow{font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--accent2);font-weight:800}.badge{font-size:10px;border:1px solid var(--border);border-radius:999px;padding:4px 8px;background:var(--pill);color:var(--muted)}.safe{color:var(--accent2)}.stats{display:flex;flex-wrap:wrap;gap:24px;margin:12px 0}.stat strong{display:block;font-size:17px}.stat span{font-size:10px;color:var(--muted)}.hero-art svg{width:100%;display:block}.caption{font-size:10px!important;text-align:center}.topline{display:flex;align-items:center;justify-content:space-between;gap:10px}.topline h2{margin:0}.feed-status{padding:7px 10px;background:var(--pill);border:1px solid var(--border);border-radius:8px;color:var(--muted);font-size:11px}.feed-status.warn{border-color:var(--warn)}#viewDescription{font-size:12px;color:var(--muted);margin:8px 0}.tools{display:flex;gap:10px;align-items:end;margin:10px 0}.tools label{font-size:11px;color:var(--muted)}.tools label:first-child{flex:1}input,select{display:block;width:100%;font:inherit;border-radius:10px;border:1px solid var(--border);background:var(--pill);color:var(--text);padding:8px 10px;margin-top:4px}.filters{padding:9px 12px;background:var(--panel2);border:1px solid var(--border);border-radius:12px}.filter{display:grid;grid-template-columns:72px 1fr;gap:8px;margin:6px 0}.filter-label{font-size:10px;text-transform:uppercase;color:var(--muted);font-weight:800;align-self:center}.chip{padding:6px 10px;font-size:11px}.table-wrap{overflow:auto;border:1px solid var(--border);border-radius:12px;background:var(--pill)}table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:12px}th,td{padding:9px 11px;text-align:left;border-bottom:1px solid var(--border)}th{font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--muted);background:var(--panel2)}td small{display:block;color:var(--muted);font-size:10px}caption{font-size:11px;text-align:left;padding:8px 11px}tbody tr:hover{background:rgba(89,195,255,.06)}.empty{padding:24px;text-align:center;white-space:normal;color:var(--muted)}#resultCount{color:var(--muted);font-size:11px;margin:8px 0}.pagination{display:flex;align-items:center;justify-content:space-between;margin-top:10px;font-size:11px}.help-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px}.help-grid .card{box-shadow:none;background:transparent;padding:10px}.help-grid h3{font-size:13px;margin:0}.help-grid p,details p{font-size:12px;color:var(--muted)}summary{cursor:pointer;font-size:12px;font-weight:700}.source-links{display:flex;gap:15px;flex-wrap:wrap;font-size:12px}footer{font-size:11px;color:var(--muted);padding:6px 0 15px}[hidden]{display:none!important}
@media(max-width:700px){.wrap{padding:10px}.overview-stats{grid-template-columns:repeat(2,1fr)}.hero{grid-template-columns:1fr}.hero-art{display:none}.help-grid{grid-template-columns:1fr}.tools{flex-wrap:wrap}.tools label:first-child{min-width:160px}.filter{grid-template-columns:58px 1fr}.stats{gap:20px}.neo-heading{flex-wrap:wrap}.next-object{grid-template-columns:1fr}.next-object button{justify-self:start}}
/* Use the width for filter groups, not empty space after each row. */
.filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 18px;align-items:start}
#approachFilters{display:contents}
.filters .filter{display:flex;flex-direction:column;align-items:stretch;gap:6px;margin:0;min-width:0}
.filters .filter-label{align-self:flex-start}
.filters .chips{width:100%;gap:6px}
.filters .chip{flex:1 0 auto;display:inline-flex;align-items:center;justify-content:center;gap:5px}
.chip-count{display:inline-block;min-width:20px;padding:1px 5px;border-radius:999px;background:rgba(159,176,204,.15);font-size:10px;font-variant-numeric:tabular-nums}
.chip[aria-pressed=true] .chip-count{background:rgba(255,255,255,.22);color:#fff}
.hero{display:block}.hero .stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
@media(min-width:1120px){.filters{grid-template-columns:1.05fr 1.55fr 1fr 1.1fr}.filters .chips{gap:5px}.filters .chip{padding:6px 8px}}
@media(max-width:650px){.filters{grid-template-columns:1fr}.hero .stats{gap:8px}}
/* Compact contextual headers and numeric comparison cells. */
.tabs{align-items:center}.tabs .feed-status{margin-left:auto;font:inherit;font-size:10px;padding:4px 7px;border:0;background:transparent;color:var(--muted);cursor:help;text-align:right}.tabs .feed-status.warn{color:var(--warn)}
#explorerPanel>.topline{justify-content:flex-start;flex-wrap:wrap;gap:5px 12px}#viewDescription{margin:0;font-size:11px;color:var(--muted)}
.metric{--metric-rgb:89,195,255;position:relative;display:inline-flex;flex-direction:column;align-items:flex-start;gap:4px;min-width:88px;padding:5px 7px 4px;border:1px solid rgba(var(--metric-rgb),.18);border-radius:6px;background:rgba(var(--metric-rgb),var(--tone));color:var(--text);font:inherit;font-variant-numeric:tabular-nums;cursor:help;text-align:left}.metric-speed{--metric-rgb:174,148,255}.metric-size{--metric-rgb:79,209,197}.metric span{position:relative}.metric i{display:block;width:var(--fill);height:3px;min-width:3px;border-radius:3px;background:rgb(var(--metric-rgb))}:root[data-theme=light] .metric{color:#132033}:root[data-theme=light] .metric-distance{--metric-rgb:25,118,210}:root[data-theme=light] .metric-speed{--metric-rgb:112,70,175}:root[data-theme=light] .metric-size{--metric-rgb:15,133,115}
@media(max-width:800px){.tabs .feed-status{max-width:100%;text-align:left;margin-left:0}.tabs{gap:5px}}
/* Impact monitoring uses full-width, natural-size chip rows. */
.filters.risk-filters{display:flex;flex-direction:column;gap:10px}
#riskFilters{display:contents}
.filters.risk-filters .filter{width:100%;display:grid;grid-template-columns:130px minmax(0,1fr);gap:10px;align-items:center}
.filters.risk-filters .filter-label{align-self:center}
.filters.risk-filters .chips{justify-content:flex-start;gap:6px}
.filters.risk-filters .chip{flex:0 0 auto;padding:7px 11px}
.filters.risk-filters .filter+.filter{padding-top:9px;border-top:1px solid var(--border)}
@media(max-width:620px){.filters.risk-filters .filter{grid-template-columns:1fr;gap:6px}.filters.risk-filters .chip{padding:6px 9px}}
.hero{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,1fr);gap:20px}.flyby{margin:0;background:#0c1729;border:1px solid #263a54;border-radius:12px;padding:10px;color:#eaf2ff}.flyby-top{display:flex;justify-content:space-between;align-items:center;font-size:11px}.flyby svg{display:block;width:100%;max-height:250px}.flyby figcaption{font-size:10px;color:#a5b8cf;line-height:1.4}.flyby .button{padding:3px 8px}#flybyDialog{width:min(800px,94vw);border:1px solid var(--border);border-radius:15px;background:var(--panel);color:var(--text);padding:15px}#flybyDialog::backdrop{background:#000b}#flybyLarge{margin-top:10px}#flybyLarge svg{max-height:65vh}@media(max-width:740px){.hero{grid-template-columns:1fr}.flyby svg{max-height:210px}}
.time-controls{display:flex;align-items:center;gap:5px;font-size:11px;color:var(--muted)}.time-controls .chip{padding:4px 9px;font-size:11px}.time-controls [aria-pressed=true]{background:var(--pillActive);color:#fff;border-color:var(--accent)}
/* Natural-width chips and a single-line compact search toolbar. */
.tools.compact-search{display:flex;align-items:center;justify-content:flex-start;gap:8px;margin:10px 0;flex-wrap:wrap}
.tools.compact-search label:first-child{flex:0 0 auto;min-width:0;font-size:11px;white-space:nowrap}
.tools.compact-search input{flex:0 1 280px;width:280px;max-width:100%;min-width:120px;margin:0;padding:7px 10px;font-size:12px}
.tools.compact-search .button{padding:7px 11px}
.filters .chips{justify-content:flex-start;align-content:flex-start}
.filters .chip,.filters.risk-filters .chip{flex:0 0 auto;width:auto;padding:6px 10px;min-height:29px}
@media(min-width:1120px){.filters{grid-template-columns:1.1fr 1.55fr 1fr 1.15fr}}
@media(max-width:430px){.tools.compact-search input{flex:1 1 140px}.tools.compact-search label:first-child{font-size:10px}}
/* Readable links and luminous, colour-coded controls. */
:root[data-theme="light"] #explorerPanel .table-wrap a{color:#075499!important;font-weight:700}
:root[data-theme="light"] #explorerPanel .table-wrap a:hover{color:#003768!important;text-decoration:underline}
:root[data-theme="light"] .wrap>details a,:root[data-theme="light"] .hero a{color:#075499!important}
.filters [data-group="type"]{--chip-rgb:72,159,255;--chip-ink:#074c91}
.filters [data-group="size"]{--chip-rgb:54,200,177;--chip-ink:#075b4f}
.filters [data-group="days"]{--chip-rgb:168,131,255;--chip-ink:#59358e}
.filters [data-group="distance"]{--chip-rgb:74,183,228;--chip-ink:#075675}
.filters [data-group="torino"]{--chip-rgb:72,159,255;--chip-ink:#074c91}
.filters [data-group="palermo"]{--chip-rgb:168,131,255;--chip-ink:#59358e}
.filters .chip{background:linear-gradient(180deg,rgba(var(--chip-rgb),.18),rgba(var(--chip-rgb),.06));border-color:rgba(var(--chip-rgb),.48);color:var(--text);transition:background .16s,border-color .16s,box-shadow .16s}
.filters .chip:hover,.filters .chip:focus-visible{background:rgba(var(--chip-rgb),.25);border-color:rgb(var(--chip-rgb));box-shadow:0 0 0 1px rgba(var(--chip-rgb),.2),0 0 13px rgba(var(--chip-rgb),.25)}
.filters .chip[aria-pressed="true"]{background:linear-gradient(180deg,rgba(var(--chip-rgb),.42),rgba(var(--chip-rgb),.22));color:#fff;border-color:rgb(var(--chip-rgb));box-shadow:inset 0 1px 0 #ffffff22,0 0 10px rgba(var(--chip-rgb),.2)}
:root[data-theme="light"] .filters .chip{color:var(--chip-ink);background:rgba(var(--chip-rgb),.1);border-color:rgba(var(--chip-rgb),.65)}
:root[data-theme="light"] .filters .chip:hover,:root[data-theme="light"] .filters .chip:focus-visible{background:rgba(var(--chip-rgb),.21)}
:root[data-theme="light"] .filters .chip[aria-pressed="true"]{background:rgba(var(--chip-rgb),.28);color:var(--chip-ink);border-color:var(--chip-ink);box-shadow:inset 0 0 0 1px var(--chip-ink),0 0 10px rgba(var(--chip-rgb),.18)}
:root[data-theme="light"] .filters .chip-count{color:var(--chip-ink);background:rgba(var(--chip-rgb),.18)}
.tabs .tab{--tab-rgb:89,195,255;transition:border-color .18s,box-shadow .18s,background .18s}
.tabs .tab[data-view="overview"]{--tab-rgb:79,209,197}
.tabs .tab[data-view="risk"]{--tab-rgb:174,148,255}
.tabs .tab:hover,.tabs .tab:focus-visible{border-color:rgb(var(--tab-rgb));background:rgba(var(--tab-rgb),.15);box-shadow:0 0 0 1px rgba(var(--tab-rgb),.2),0 0 18px rgba(var(--tab-rgb),.32),inset 0 0 12px rgba(var(--tab-rgb),.08)}
.tabs .tab[aria-pressed="true"]{box-shadow:0 0 14px rgba(var(--tab-rgb),.22),inset 0 1px 0 #ffffff33}
.tabs .tab[aria-pressed="true"]:hover{background:linear-gradient(180deg,#2588ff,var(--pillActive));box-shadow:0 0 22px rgba(var(--tab-rgb),.44),inset 0 1px 0 #ffffff44}
@media(prefers-reduced-motion:reduce){.tabs .tab,.filters .chip{transition:none}}

/* Semantic Torino colours retain readable text in both themes. */
.filters [data-group=torino] [data-value=zero]{--chip-rgb:170,183,200;--chip-ink:#354358}
.filters [data-group=torino] [data-value=normal]{--chip-rgb:79,202,112;--chip-ink:#17622e}
.filters [data-group=torino] [data-value=attention]{--chip-rgb:242,201,76;--chip-ink:#6b5000}
.filters [data-group=torino] [data-value=threat]{--chip-rgb:247,154,66;--chip-ink:#843a00}
.filters [data-group=torino] [data-value=certain]{--chip-rgb:244,100,100;--chip-ink:#9d1616}
.tabs .tab[data-view=history]{--tab-rgb:247,184,94}.tabs .tab[data-view=sources]{--tab-rgb:147,169,209}
#historyPanel p,#historyPanel .topline span{font-size:11px}#historyTypes{display:flex;flex-wrap:wrap;gap:6px}#historyTypes .chip{width:auto;flex:0 0 auto}#historyTypes [aria-pressed=true]{background:var(--pillActive);color:white;border-color:var(--accent)}
#historyPanel td.history-note{white-space:normal;min-width:220px;max-width:340px;line-height:1.5}#historyPanel td small{margin-top:4px}#sourcesPanel a,#historyPanel a{color:#80c6ff}:root[data-theme=light] #sourcesPanel a,:root[data-theme=light] #historyPanel a{color:#075499!important}#historyStatus{margin:8px 0}.tabs{flex-wrap:wrap}

/* Flags identify the present-day location of a historical impact. */
#historyPanel .history-location{display:flex;align-items:center;gap:6px}#historyPanel .history-flag{width:20px;height:14px;object-fit:contain;flex:none;border-radius:2px}

/* Active sorting is visible on first render and after every header click. */
.table-wrap th:is([aria-sort="ascending"],[aria-sort="descending"]){background:#193c60;box-shadow:inset 0 -3px 0 #59c3ff}
.table-wrap th:is([aria-sort="ascending"],[aria-sort="descending"]) .sort-heading{color:#bce9ff}
:root[data-theme="light"] .table-wrap th:is([aria-sort="ascending"],[aria-sort="descending"]){background:#d6eaff;box-shadow:inset 0 -3px 0 #0869b4}
:root[data-theme="light"] .table-wrap th:is([aria-sort="ascending"],[aria-sort="descending"]) .sort-heading{color:#064f88}
/* Compact overview polish with consistent actions and restrained accents. */
#overviewPanel .mini{position:relative;border:1px solid var(--border);border-top:2px solid #55bce8;background:linear-gradient(135deg,rgba(74,183,228,.08),transparent),var(--panel2);padding:12px}
#overviewPanel .mini:nth-child(2){border-top-color:#a994e9}#overviewPanel .mini:nth-child(3){border-top-color:#80b9d9}#overviewPanel .mini:nth-child(4){border-top-color:#6ad5bd}
#overviewPanel .mini .k{margin-bottom:5px}#overviewPanel .mini .v{font-variant-numeric:tabular-nums;font-weight:750}
#overviewPanel .next-object{border-left:3px solid #59c3ff;align-items:center;background:linear-gradient(110deg,rgba(89,195,255,.07),transparent),var(--panel)}
#overviewPanel .next-object h2{font-size:14px;margin:0 0 3px}#overviewPanel .next-object .hint{line-height:1.65}
#overviewPanel .overview-action{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 13px;border:1px solid #4ca4d7;border-radius:999px;font-size:12px;font-weight:750;text-decoration:none;background:rgba(89,195,255,.1);color:var(--text)}
#overviewPanel .overview-action:hover,#overviewPanel .overview-action:focus-visible{background:rgba(89,195,255,.2);box-shadow:0 0 14px rgba(89,195,255,.23)}
#overviewPanel .primary-action{background:#1767bc;border-color:#59aaff;color:white}
#overviewPanel .primary-action:hover,#overviewPanel .primary-action:focus-visible{background:#1d78d3}
#overviewPanel .stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0}
#overviewPanel .stat{border:1px solid var(--border);border-radius:9px;padding:9px;background:var(--panel2)}#overviewPanel .stat strong{font-size:16px}#overviewPanel .stat span{display:block;margin-top:3px}
#overviewPanel .safe{display:inline-flex;margin-top:4px;border-color:#439783;background:rgba(88,189,156,.09)}
@media(max-width:430px){#overviewPanel .stats{grid-template-columns:1fr}#overviewPanel .stat{display:flex;align-items:center;justify-content:space-between;gap:8px}}

/* Keep the original tinted chips; clarify selection without solid fills. */
#distanceFilters{display:contents}
.filters .selection-tick{display:inline-block;width:10px;flex:0 0 10px;visibility:hidden;font-weight:900}
.filters .chip[aria-pressed="true"] .selection-tick{visibility:visible}
.filters .chip[aria-pressed="true"]{border-color:#d6efff;box-shadow:inset 0 0 0 1px rgba(var(--chip-rgb),.65),0 0 8px rgba(var(--chip-rgb),.18)}
:root[data-theme="light"] .filters .chip[aria-pressed="true"]{border-color:var(--chip-ink);box-shadow:inset 0 0 0 1px var(--chip-ink)}
@media(min-width:1120px){.filters:not(.risk-filters){grid-template-columns:1.1fr 1fr 1.55fr 1.15fr}}

.filters .chip:disabled{opacity:.55;cursor:help;box-shadow:none}.filters .chip:disabled:hover{box-shadow:none}

.apophis-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin:14px 0 10px}.apophis-facts>div{border:1px solid var(--border);border-radius:9px;padding:8px;background:rgba(89,195,255,.045)}.apophis-facts strong{display:block;font-size:11px}.apophis-facts span{display:block;margin-top:3px;font-size:10px;color:var(--muted);line-height:1.35}.apophis-more{margin-top:10px;border-top:1px solid var(--border);padding-top:9px}.apophis-more summary{color:var(--accent);font-size:11px}.apophis-more p{font-size:11px;margin:7px 0}.apophis-more a{color:#80c6ff}@media(max-width:740px){.apophis-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Probability shading uses the full feed for a stable comparison across filters. */
.probability-cell{background:rgba(65,155,235,var(--probability-tone));font-variant-numeric:tabular-nums}.probability-value{color:var(--text);font:inherit;font-weight:700;background:transparent;border:0;padding:4px 0;cursor:help}.probability-value:hover{text-decoration:underline}:root[data-theme="light"] .probability-value{color:#07365b}

#neoTooltip{white-space:pre-line}#explorerPanel td>small{margin-top:5px}

/* Plain-language scales with their technical ranges retained. */
.scale-chip-label{display:inline-flex;align-items:baseline;gap:6px}.scale-range{font-size:10px;font-weight:500;color:var(--muted)}.filters .chip[aria-pressed="true"] .scale-range{color:inherit}.filters [data-group="palermo"] .chip{white-space:normal;text-align:left}.filters [data-group="palermo"] .scale-chip-label{flex-wrap:wrap;gap:2px 6px}

.diameter-icon{display:inline-flex;align-items:center;justify-content:center;width:14px;height:14px;flex:0 0 14px;line-height:1;color:currentColor}.diameter-icon-all{font-size:17px}.diameter-icon-small{font-size:7px}.diameter-icon-medium{font-size:11px}.diameter-icon-large{font-size:16px}

.diameter-icon{width:19px;height:19px;flex-basis:19px}.diameter-icon-small{font-size:10px}.diameter-icon-medium{font-size:15px}.diameter-icon-large{font-size:21px}.diameter-icon-all{font-size:22px}.neo-detail-dialog{width:min(850px,94vw);max-height:85vh;overflow:auto;background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:14px;padding:18px}.neo-detail-dialog::backdrop{background:#000a}.neo-detail-dialog h2{font-size:16px}.neo-detail-dialog p{font-size:12px;color:var(--muted)}.detail-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;margin:12px 0}.detail-facts>div{border:1px solid var(--border);border-radius:8px;padding:9px}.detail-facts small,.detail-facts strong{display:block}.detail-facts small{color:var(--muted)}

/* Geometric circles avoid font baseline differences. */
.diameter-icon{font-size:0!important;position:relative;align-self:center;width:20px;height:20px;flex:0 0 20px}.diameter-icon::before{content:"";display:block;background:currentColor;border-radius:50%;width:var(--diameter-dot,10px);height:var(--diameter-dot,10px)}.diameter-icon-small{--diameter-dot:6px}.diameter-icon-medium{--diameter-dot:11px}.diameter-icon-large{--diameter-dot:17px}.diameter-icon-all::before{width:15px;height:15px;background:transparent;border:1.5px solid currentColor;box-sizing:border-box}

/* Summary risk timeline */
.risk-chart{margin:12px 0;border:1px solid var(--border,#304560);border-radius:12px;padding:12px}
.risk-chart[hidden]{display:none}
.risk-chart summary{cursor:pointer;font-weight:700}
.risk-chart p{font-size:12px;line-height:1.5;margin:8px 0}
.risk-chart-scroll{overflow-x:auto}
.risk-chart svg{width:100%;min-width:680px;display:block;color:inherit}.risk-chart-scroll{overflow-x:auto;overflow-y:hidden}.risk-chart-scroll svg{width:auto}
.risk-chart svg text{fill:currentColor;font:12px system-ui,sans-serif}
.chart-grid{stroke:currentColor;opacity:.15;fill:none}
.chart-object{cursor:pointer;opacity:.65}
.chart-object:hover,.chart-object:focus{opacity:1;outline:none;filter:drop-shadow(0 0 3px currentColor)}
.chart-object:focus circle,.chart-object:hover circle{stroke:currentColor;stroke-width:4}
.chart-selection{min-height:36px;padding:8px;border:1px solid #55859b;border-radius:8px}

.overview-events{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.overview-events .next-object{grid-template-columns:1fr;align-content:start}.overview-events .next-object button{justify-self:start;white-space:normal}.overview-events p{font-size:11px;margin:0}.overview-events .hint{overflow-wrap:anywhere}@media(max-width:760px){.overview-events{grid-template-columns:1fr;gap:0}}

/* Lead the featured encounter with the distance diagram. */
.hero{grid-template-columns:minmax(0,1fr);gap:12px}
.hero .apophis-heading h2{margin-bottom:0}
.hero>.flyby{width:100%;box-sizing:border-box;border-color:#437393;background:radial-gradient(ellipse at center,rgba(41,99,149,.18),transparent 70%),#0c1729}
.hero>.flyby svg{max-height:340px;margin:0 auto}
.hero>.flyby .flyby-top{font-size:12px}
.hero>.flyby figcaption{text-align:center}
.hero .apophis-facts{margin:0}
.hero .apophis-more{margin-top:0}
@media(max-width:740px){.hero>.flyby svg{max-height:280px}}
.neo-loading{display:flex;align-items:center;justify-content:center;gap:12px;min-height:150px;margin:10px 0;padding:20px;border:1px solid #37617e;border-radius:12px;background:radial-gradient(circle at 50% 45%,rgba(63,176,230,.16),transparent 58%),var(--panel2);text-align:left}.neo-loading strong,.neo-loading small{display:block}.neo-loading strong{font-size:13px}.neo-loading small{margin-top:4px;color:var(--muted);font-size:11px}.neo-loading-orbit{display:grid;place-items:center;width:45px;height:45px;border:1px solid #55c7f2;border-radius:50%;font-size:21px;animation:neo-loading-spin 2.8s linear infinite}@keyframes neo-loading-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}

.apophis-visibility{display:grid;grid-template-columns:minmax(420px,1.6fr) minmax(260px,1fr);align-items:center;gap:16px;padding:12px;border:1px solid var(--border);border-radius:12px;background:linear-gradient(90deg,rgba(8,20,35,.5),var(--panel)),url('/assets/images/earth-horizon.webp') center/cover}.apophis-visibility canvas{width:100%;max-width:100%;display:block}.apophis-visibility h3{font-size:14px;margin:0}.hero .apophis-visibility p{font-size:12px}.apophis-visibility a{font-size:12px}@media(max-width:600px){.apophis-visibility{grid-template-columns:1fr}.apophis-visibility canvas{margin:auto;max-width:100%}}
