/* Existing map palette, compact progressive disclosure; no new rendering surface. */
#layer-catalog { min-width:0; width:100%; }
.catalog-group { border-bottom:1px solid #374151; min-width:0; }
.catalog-heading { display:flex; align-items:center; gap:10px; width:100%; min-height:46px; padding:10px 14px; border:0; border-radius:0; background:#111827; color:#e0e6ed; text-align:start; font-size:.92rem; }
.catalog-heading::after { content:'⌄'; margin-inline-start:auto; }
.catalog-heading[aria-expanded="true"]::after { content:'⌃'; }
.catalog-badge { background:#1e3a5f; color:#dbeafe; border-radius:12px; min-width:24px; padding:2px 6px; text-align:center; }
.catalog-body { padding:10px; display:flex; flex-direction:column; gap:6px; min-width:0; }
.catalog-body[hidden],.catalog-badge[hidden],#catalog-language-fallback[hidden],#sidebar .panel[hidden] { display:none; }
.catalog-body > .panel { padding:0; border:0; }
.catalog-body button,.catalog-body select { min-height:44px; }
.catalog-body button { white-space:normal; overflow-wrap:anywhere; min-width:0; }
.catalog-layer-control { align-items:center; }
.catalog-layer-control::after { content:''; flex-shrink:0; margin-inline-start:auto; border:1px solid #94a3b8; border-radius:10px; width:24px; height:12px; background:#374151; }
.catalog-layer-control[aria-pressed="true"]::after { background:#60a5fa; border-color:#bfdbfe; }
#catalog-language-fallback { padding:8px 12px; color:#cbd5e1; font-size:.78rem; }
#restore-classic-view { margin-top:8px; width:100%; }
.catalog-support,.interesting-routes { padding:10px 12px; border-top:1px solid #374151; }
.catalog-support h3,.interesting-routes > h3 { margin:0 0 8px; font-size:.88rem; color:#cbd5e1; }
.catalog-support button,.interesting-routes button { width:100%; min-height:44px; }
.interesting-routes > div { display:grid; gap:7px; }
.interesting-routes article { padding:8px; border:1px solid #374151; border-radius:7px; background:#111827; }
.interesting-routes h4 { margin:0 0 5px; font-size:.82rem; }
.interesting-routes details { margin:0 0 6px; color:#cbd5e1; font-size:.76rem; }
.interesting-routes details p { margin:5px 0; line-height:1.35; }
.interesting-fallback { color:#cbd5e1; font-size:.76rem; }
#layer-catalog :focus-visible { outline:3px solid #fbbf24; outline-offset:2px; }
@media(max-width:768px) {
 #sidebar.collapsed > :not(header) { display:none!important; }
 #sidebar .mobile-toggle { position:fixed; min-width:44px; min-height:44px; top:2px; }
 #layer-catalog,#layer-catalog * { max-width:100%; box-sizing:border-box; }
 .catalog-body { padding:8px; }
}
@media(prefers-reduced-motion:reduce) { #sidebar,#layer-catalog * { transition:none!important; animation:none!important; } }
/* Shared control primitives; map/renderer palette is intentionally unchanged. */
:is(#layer-catalog,#interesting-routes,.ae-sky-workbench,#ae-astrology-dialog,#ae-mariner-panel,.ae-sat-panel) {
 --control-radius:6px; --control-space:8px; --control-font:13px;
}
:is(#layer-catalog,#interesting-routes,.ae-sky-workbench,#ae-astrology-dialog,#ae-mariner-panel,.ae-sat-panel) :is(button,input,select,summary) {
 box-sizing:border-box; min-height:44px; min-width:0; max-width:100%; border-radius:var(--control-radius); font-size:var(--control-font); line-height:1.4;
}
:is(#layer-catalog,.ae-sky-workbench,#ae-astrology-dialog,#ae-mariner-panel,.ae-sat-panel) :is(input:not([type=checkbox]):not([type=radio]),select) {
 width:100%; padding:8px; border:1px solid #475569; background:#111827; color:#e0e6ed;
}
:is(#layer-catalog,.ae-sky-workbench,#ae-astrology-dialog,#ae-mariner-panel,.ae-sat-panel) label { display:block; margin:8px 0; font-size:13px; line-height:1.5; color:#cbd5e1; }
:is(#layer-catalog,.ae-sky-workbench,#ae-astrology-dialog,#ae-mariner-panel,.ae-sat-panel) :is(button,input,select,summary):focus-visible { outline:3px solid #fbbf24; outline-offset:2px; }
:is(#layer-catalog,.ae-sky-workbench,#ae-astrology-dialog,#ae-mariner-panel,.ae-sat-panel) button:not(:disabled):hover { border-color:#94a3b8; }
:is(#layer-catalog,.ae-sky-workbench,#ae-astrology-dialog,#ae-mariner-panel,.ae-sat-panel) :disabled { opacity:.55; cursor:not-allowed; }
.catalog-heading[aria-expanded=true] { background:#1e293b; box-shadow:inset 3px 0 #60a5fa; }
.ae-advanced { margin:8px 0; border:1px solid #374151; border-radius:6px; padding:0 8px; }
.ae-advanced > summary { padding:10px 0; cursor:pointer; color:#cbd5e1; }
.ae-provider-state { border:1px solid #475569; border-radius:6px; padding:10px; margin:8px 0; }
.ae-provider-state output { display:block; margin-top:8px; font-weight:600; color:#fbbf24; }
#ae-traffic-panel p,#real-scale-panel p { font-size:13px; line-height:1.5; overflow-wrap:anywhere; }
#ae-traffic-panel [hidden] { display:none!important; }
#ae-traffic-panel button { width:100%; margin:4px 0; }
#ae-traffic-panel dd { margin:0 0 8px; overflow-wrap:anywhere; }
#ae-traffic-panel dt { font-weight:600; }
#real-scale-notice:empty { display:none; }
#real-scale-notice { display:block; color:#fbbf24; padding:8px 0; }
#real-scale-morph:focus-visible { outline:3px solid #fbbf24; }
#real-scale-presets { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:4px; }
#real-scale-presets button { padding:4px; }
