:root{--type-xs:.75rem;--type-sm:.844rem;--type-base:.95rem;--type-md:1.069rem;--type-lg:1.201rem;--type-xl:1.352rem;--type-2xl:1.521rem}#cosmicflows-root{--cf-bg:#04060f;--cf-text:#c8d8e8d9;--cf-text-dim:#c8d8e88c;--cf-text-muted:#c8d8e873;--cf-accent:#00bfff;--cf-accent-dim:#00bfff99;--cf-accent-subtle:#00bfff21;--cf-panel-bg:#04060fed;--cf-panel-border:#00bfff21;--cf-divider:#00bfff12;--header-offset:80px}body:has(#cosmicflows-root){overflow:hidden}body:has(#cosmicflows-root)>footer{display:none}#cosmicflows-root{background:var(--cf-bg);width:100%;height:100dvh;font-family:var(--font-body);position:relative;overflow:hidden}#cosmicflows-root>canvas:first-child{display:block;position:absolute;inset:0}#cosmicflows-root #loading{background:var(--cf-bg);color:var(--cf-text-dim);font-family:var(--font-body);font-size:var(--type-xs);letter-spacing:.06em;z-index:100;flex-direction:column;justify-content:center;align-items:center;gap:14px;display:flex;position:absolute;inset:0}#cosmicflows-root .loading-title{font-size:var(--type-xs);letter-spacing:.22em;text-transform:uppercase;font-weight:500}#cosmicflows-root #loading-bar-wrap{background:var(--cf-accent-subtle);width:220px;height:1px}#cosmicflows-root #loading-bar{background:var(--cf-accent);width:0%;height:100%;transition:width .3s}#cosmicflows-root #loading-msg{opacity:.55;font-size:var(--type-xs)}#cosmicflows-root #label-layer{pointer-events:none;z-index:10;position:absolute;inset:0}#cosmicflows-root .obj-label{font-family:var(--font-body);font-size:var(--type-xs);letter-spacing:.04em;color:#ffffffd1;white-space:nowrap;pointer-events:auto;cursor:pointer;user-select:none;text-shadow:0 0 5px #000c,0 0 2px #0009;transition:color .2s,text-shadow .2s,opacity .3s;position:absolute;transform:translate(9px,-50%)}#cosmicflows-root .obj-label.hovered{color:#ffc8b4f2;text-shadow:0 0 8px #ff783c80}#cosmicflows-root .obj-label.selected{color:#ff8c78;text-shadow:0 0 10px #ff3c2899}#cosmicflows-root .obj-label.home{color:#fff;font-weight:700;font-size:var(--type-base);letter-spacing:.08em;z-index:100}#cosmicflows-root .obj-label.attractor{color:#ffffffa6;font-size:var(--type-xs)}#cosmicflows-root .zshell-label{display:none}#cosmicflows-root .obj-label.void-label{color:#ffdcb4bf;font-size:var(--type-xs);font-style:italic}#cosmicflows-root .obj-label .sub{font-size:var(--type-xs);opacity:.55;letter-spacing:.02em;margin-top:1px;line-height:1.1;display:block}#cosmicflows-root .dist-ring-label{font-family:var(--font-body);font-size:var(--type-xs);letter-spacing:.06em;color:#78aad2cc;white-space:nowrap;pointer-events:none;font-weight:500;position:absolute;transform:translate(6px,-50%)}#cosmicflows-root .dist-ring-label .sub{opacity:.6;font-weight:400;font-size:var(--type-xs);margin-left:4px;display:inline}#cosmicflows-root .labels-off .obj-label{display:none!important}#cosmicflows-root .labels-off .obj-label.home{display:block!important}#cosmicflows-root .mw-label-off .obj-label.home{display:none!important}#cosmicflows-root #mw-ring,#cosmicflows-root #mw-ring2{pointer-events:none;z-index:10;border-radius:50%;position:absolute}#cosmicflows-root #mw-ring{border:1px solid #00bfff40;width:18px;height:18px;transform:translate(-50%,-50%)}#cosmicflows-root #mw-ring2{border:1px solid #00bfff38;border-radius:50%;width:34px;height:34px;animation:2.8s ease-out .7s infinite mw-pulse;transform:translate(-50%,-50%)}@keyframes mw-pulse{0%{opacity:.9;transform:translate(-50%,-50%)scale(1)}to{opacity:0;transform:translate(-50%,-50%)scale(2.2)}}#cosmicflows-root #select-ring{pointer-events:none;z-index:11;border:2px solid #ff3c3ce6;border-radius:50%;width:24px;height:24px;animation:2.2s ease-out infinite select-pulse;display:none;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 10px #ff282880,inset 0 0 6px #ff282826}@keyframes select-pulse{0%{opacity:1;border-color:#ff3c3ce6;transform:translate(-50%,-50%)scale(1);box-shadow:0 0 10px #ff282880}70%{opacity:.3;border-color:#ff28284d;transform:translate(-50%,-50%)scale(2.8);box-shadow:0 0 14px #ff28281a}to{opacity:0;border-color:#ff282800;transform:translate(-50%,-50%)scale(3.5);box-shadow:0 0 #ff282800}}#cosmicflows-root .panel{z-index:50;background:var(--cf-panel-bg);color:var(--cf-text);font-family:var(--font-body);font-size:var(--type-sm);backdrop-filter:blur(10px);border:none;border-radius:0;transition:height .3s;position:absolute}#cosmicflows-root .panel-toggle{font-size:var(--type-sm);letter-spacing:.1em;text-transform:uppercase;color:var(--cf-accent-dim);cursor:pointer;user-select:none;border-bottom:1px solid var(--cf-divider);justify-content:space-between;align-items:center;gap:8px;margin:0;padding:10px 12px 8px;font-weight:500;display:flex}#cosmicflows-root .panel-toggle:hover{color:var(--cf-accent)}#cosmicflows-root .toggle-chevron{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;width:12px;height:12px;transition:transform .25s}#cosmicflows-root .panel.collapsed .toggle-chevron{transform:rotate(-90deg)}#cosmicflows-root .panel-body{max-height:2000px;padding:8px 12px 12px;transition:max-height .3s,opacity .2s,padding .3s;overflow:hidden}#cosmicflows-root .panel.collapsed .panel-body{opacity:0;max-height:0;padding-top:0;padding-bottom:0}#cosmicflows-root .panel h3{font-size:var(--type-sm);letter-spacing:.12em;text-transform:uppercase;color:var(--cf-accent-dim);border-bottom:1px solid var(--cf-divider);justify-content:space-between;align-items:center;margin-bottom:10px;padding-bottom:7px;font-weight:500;display:flex}#cosmicflows-root .sec{font-size:var(--type-sm);letter-spacing:.08em;text-transform:uppercase;color:var(--cf-accent-dim);margin:6px 0 3px;font-weight:500}#cosmicflows-root .sec.collapsible{cursor:pointer;user-select:none;justify-content:space-between;align-items:center;display:flex}#cosmicflows-root .sec.collapsible.nested{font-size:var(--type-xs);border-left:1px solid var(--cf-divider);opacity:.8;margin-left:4px;padding-left:8px}#cosmicflows-root .sec.collapsible:hover{color:var(--cf-text)}#cosmicflows-root .sec .chevron{font-size:var(--type-xs);opacity:.7;color:var(--cf-accent-dim);transition:transform .25s}#cosmicflows-root .sec.collapsible:hover .chevron{opacity:1;color:var(--cf-accent)}#cosmicflows-root .sec.collapsed .chevron{transform:rotate(-90deg)}#cosmicflows-root .sec-body{opacity:1;max-height:1000px;transition:max-height .25s ease-out,opacity .2s;overflow:hidden}#cosmicflows-root .sec-body.collapsed{opacity:0;max-height:0;margin:0}#cosmicflows-root .sec-num{width:18px;height:18px;color:var(--cf-accent-dim);font-size:var(--type-xs);letter-spacing:0;background:#00bfff1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-right:7px;font-weight:600;line-height:1;display:inline-flex}#cosmicflows-root hr.div{border:none;border-top:1px solid #00bfff26;margin:8px 0}#cosmicflows-root .trow{cursor:pointer;user-select:none;min-height:30px;font-size:var(--type-sm);align-items:center;gap:6px;padding:4px 0;display:flex}#cosmicflows-root .trow[data-off]{opacity:.55}#cosmicflows-root .trow-label{white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}#cosmicflows-root .dot{border-radius:50%;flex-shrink:0;width:8px;height:8px}#cosmicflows-root .chk{border:1px solid #c8d8e84d;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;width:14px;height:14px;transition:background .12s,border-color .12s;display:flex}#cosmicflows-root .chk.on{border-color:var(--cf-accent-dim);background:#00bfff40}#cosmicflows-root .chk.on:after{content:"";background:var(--cf-accent);border-radius:1px;width:6px;height:6px}#cosmicflows-root .solo-btn,#cosmicflows-root .reveal-btn{cursor:pointer;width:22px;height:22px;font-size:var(--type-xs);color:var(--cf-text-muted);border:1px solid #c8d8e833;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;line-height:1;transition:border-color .15s,background .15s,color .15s;display:flex}#cosmicflows-root .solo-btn:hover,#cosmicflows-root .reveal-btn:hover{border-color:var(--cf-accent-dim);color:var(--cf-accent)}#cosmicflows-root .solo-btn.active{border-color:var(--cf-accent);color:var(--cf-accent);background:#00bfff33}#cosmicflows-root .reveal-btn.active{color:var(--cf-accent)}#cosmicflows-root .beyond-range{opacity:.35}#cosmicflows-root .beyond-range .trow-label .sub:after{content:" · beyond survey limit";color:#ff8c3cb3}#cosmicflows-root .denfield-cluster-list{border-top:1px solid var(--cf-divider);margin-top:4px;padding-top:4px}#cosmicflows-root .dcl-title{font-family:var(--font-body);font-size:var(--type-xs);text-transform:uppercase;letter-spacing:.08em;color:#c8d8e880;margin-bottom:3px}#cosmicflows-root .dcl-items{flex-direction:column;gap:1px;display:flex}#cosmicflows-root .dcl-item{cursor:pointer;user-select:none;border-radius:3px;align-items:center;gap:5px;padding:2px 4px;transition:opacity .15s,background .15s;display:flex}#cosmicflows-root .dcl-item:hover{background:#ffffff0f}#cosmicflows-root .dcl-item.dimmed{opacity:.2}#cosmicflows-root .dcl-item.active{background:#ffffff14}#cosmicflows-root .dcl-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px}#cosmicflows-root .dcl-name{font-size:var(--type-sm);color:#c8d8e8d9;white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}#cosmicflows-root .dcl-solo{font-size:var(--type-xs);text-transform:uppercase;letter-spacing:.05em;color:#c8d8e859;border:1px solid #c8d8e826;border-radius:2px;flex-shrink:0;padding:1px 4px;transition:color .15s,border-color .15s}#cosmicflows-root .dcl-item:hover .dcl-solo{color:#c8d8e899;border-color:#c8d8e84d}#cosmicflows-root .dcl-item.active .dcl-solo{color:var(--cf-accent);border-color:var(--cf-accent)}#cosmicflows-root .dcl-show-all{border-top:1px solid var(--cf-divider);margin-top:2px;padding-top:3px}#cosmicflows-root .dcl-show-all .dcl-name{color:#c8d8e880;font-size:var(--type-xs)}#cosmicflows-root .dcl-clip{font-size:var(--type-xs);text-transform:uppercase;letter-spacing:.05em;color:#c8d8e859;cursor:pointer;border:1px solid #c8d8e826;border-radius:2px;flex-shrink:0;margin-right:3px;padding:1px 4px;transition:color .15s,border-color .15s,background .15s}#cosmicflows-root .dcl-item:hover .dcl-clip{color:#c8d8e899;border-color:#c8d8e84d}#cosmicflows-root .dcl-clip:hover{color:#ffd080;background:#ffd08014;border-color:#ffd08080}#cosmicflows-root .gizmo-toggle{color:#c8d8e873;cursor:pointer;vertical-align:middle;background:0 0;border:1px solid #c8d8e833;border-radius:3px;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;margin-left:6px;padding:0;transition:color .15s,border-color .15s,background .15s;display:inline-flex}#cosmicflows-root .gizmo-toggle:hover{color:#c8d8e8cc;background:#ffffff0a;border-color:#c8d8e866}#cosmicflows-root .gizmo-toggle.active{color:var(--cf-accent);border-color:var(--cf-accent);background:#00bfff1a;box-shadow:0 0 6px #00bfff26}#cosmicflows-root .gizmo-toggle svg{width:12px;height:12px}#cosmicflows-root .survey-opts{padding:2px 0 0}#cosmicflows-root .sub-controls{border-left:1px solid var(--cf-divider);margin-bottom:4px;margin-left:6px;padding:0 0 2px 20px}#cosmicflows-root .trow.mini{min-height:24px;padding:1px 0}#cosmicflows-root .survey-sub{border-left:1px solid var(--cf-divider);margin-bottom:6px;margin-left:6px;padding:0 0 4px 20px;transition:opacity .2s}#cosmicflows-root .survey-sub.disabled{opacity:.3;pointer-events:none}#cosmicflows-root .panel select{color:var(--cf-text);font-family:var(--font-body);font-size:var(--type-sm);cursor:pointer;background:#0a0e18f2;border:1px solid #00bfff2e;border-radius:3px;outline:none;flex:1;padding:3px 6px}#cosmicflows-root .panel select:focus{border-color:var(--cf-accent-dim)}#cosmicflows-root .slider-row{align-items:center;gap:8px;min-height:28px;padding:3px 0;display:flex;position:relative}#cosmicflows-root .slider-val{font-variant-numeric:tabular-nums;color:#00bfffe6;pointer-events:none;opacity:0;background:#000a14d9;border-radius:3px;padding:1px 5px;font-size:12px;transition:opacity .35s;position:absolute;top:-18px;right:0}#cosmicflows-root .slider-val.visible{opacity:1;transition:none}#cosmicflows-root #denfield-dist-val{opacity:.7;flex-shrink:0;margin-left:6px;position:static;top:0}#cosmicflows-root .region-val{opacity:.7;text-align:right;font-variant-numeric:tabular-nums;flex-shrink:0;min-width:36px;margin-left:6px;position:static;top:0}#cosmicflows-root .slider-row label{width:84px;font-size:var(--type-sm);color:var(--cf-text-dim);white-space:nowrap;flex-shrink:0}#cosmicflows-root input[type=range]{appearance:none;cursor:pointer;background:#00bfff1f;border-radius:1px;outline:none;flex:1;height:2px}#cosmicflows-root input[type=range]::-webkit-slider-thumb{appearance:none;background:var(--cf-accent-dim);cursor:pointer;border:none;border-radius:50%;width:12px;height:12px;transition:background .2s,box-shadow .2s}#cosmicflows-root input[type=range]::-webkit-slider-thumb:hover{background:var(--cf-accent);box-shadow:0 0 8px #00bfff66}#cosmicflows-root input[type=range]::-moz-range-thumb{background:var(--cf-accent-dim);cursor:pointer;border:none;border-radius:50%;width:12px;height:12px}#cosmicflows-root input[type=range]::-moz-range-track{background:#00bfff1f;border:none;border-radius:1px;height:2px}#cosmicflows-root input[type=range]:focus-visible::-webkit-slider-thumb{outline:2px solid var(--cf-accent);outline-offset:2px}#cosmicflows-root #controls{top:var(--header-offset);border:none;border-radius:0;width:310px;max-height:none;padding:10px 16px 14px;display:none;bottom:0;left:0;overflow:hidden auto}#cosmicflows-root .action-btns{gap:2px;padding:2px 0 0;display:flex}#cosmicflows-root .action-btn{cursor:pointer;color:var(--cf-text-muted);font-family:var(--font-body);user-select:none;background:0 0;border:none;border-radius:4px;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:0;padding:8px 0;transition:background .15s,color .15s;display:flex;position:relative}#cosmicflows-root .action-icon{justify-content:center;align-items:center;font-size:1.15rem;line-height:1;display:flex}#cosmicflows-root .action-icon svg{width:18px;height:18px}#cosmicflows-root .action-label{font-size:var(--type-xs);letter-spacing:.04em;text-transform:uppercase;transform-origin:top;opacity:0;white-space:nowrap;max-height:0;margin-top:0;transition:max-height .2s,opacity .15s,margin-top .2s;overflow:hidden;transform:scale(.82)}#cosmicflows-root .action-btn:hover .action-label,#cosmicflows-root .action-btn.active .action-label{opacity:1;max-height:1.2em;margin-top:3px}#cosmicflows-root .action-btn:hover{color:var(--cf-accent);background:#00bfff14}#cosmicflows-root .action-btn.active{color:var(--cf-accent);background:#00bfff1f;box-shadow:0 0 8px #00bfff1a}#cosmicflows-root .preset-grid{flex-direction:column;gap:1px;padding:2px 0 0;display:flex}#cosmicflows-root .preset-btn{cursor:pointer;color:var(--cf-text-dim);font-family:var(--font-body);font-size:var(--type-xs);letter-spacing:.03em;user-select:none;background:#c8d8e808;border:none;border-radius:3px;align-items:center;padding:5px 8px;line-height:1.3;transition:background .15s,color .15s;display:flex}#cosmicflows-root .preset-btn:hover{color:var(--cf-text);background:#00bfff14}#cosmicflows-root .preset-btn.active{color:var(--cf-accent);background:#00bfff24;box-shadow:inset 0 0 6px #00bfff14}#cosmicflows-root .preset-capture{cursor:pointer;width:100%;color:var(--cf-accent-dim);font-family:var(--font-body);font-size:var(--type-xs);letter-spacing:.06em;text-transform:uppercase;user-select:none;background:#00bfff0a;border:1px dashed #00bfff40;border-radius:3px;margin:3px 0;padding:5px 0;transition:background .15s,color .15s,border-color .15s}#cosmicflows-root .preset-capture:hover{color:var(--cf-accent);background:#00bfff1a;border-color:#00bfff66}#cosmicflows-root #about-overlay{z-index:60;opacity:0;pointer-events:none;background:#0009;justify-content:center;align-items:center;transition:opacity .3s;display:flex;position:absolute;inset:0}#cosmicflows-root #about-overlay.open{opacity:1;pointer-events:auto}#cosmicflows-root .about-inner{border:1px solid var(--cf-panel-border);backdrop-filter:blur(16px);width:calc(100% - 40px);max-width:560px;max-height:calc(100% - 60px);font-family:var(--font-body);color:var(--cf-text);background:#04060ff7;border-radius:12px;padding:32px 28px;position:relative;overflow-y:auto}#cosmicflows-root .about-inner h2{font-size:var(--type-lg);letter-spacing:.08em;text-transform:uppercase;color:var(--cf-accent);margin-bottom:4px;font-weight:600}#cosmicflows-root .about-subtitle{font-size:var(--type-xs);color:var(--cf-accent-dim);letter-spacing:.06em;margin-bottom:20px}#cosmicflows-root .about-inner h3{font-size:var(--type-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--cf-accent-dim);border-bottom:1px solid var(--cf-divider);margin:20px 0 8px;padding-bottom:6px;font-weight:500}#cosmicflows-root .about-inner p{font-size:var(--type-sm);color:var(--cf-text);margin-bottom:12px;line-height:1.65}#cosmicflows-root .about-inner strong{color:#c8d8e8f2;font-weight:500}#cosmicflows-root .about-inner .stat-row{font-size:var(--type-xs);gap:10px;margin:4px 0;display:flex}#cosmicflows-root .about-inner .stat-key{color:var(--cf-accent-dim);flex-shrink:0;min-width:100px}#cosmicflows-root .about-inner .stat-val{color:var(--cf-text)}#cosmicflows-root .about-inner a{color:var(--cf-accent-dim);text-decoration:none}#cosmicflows-root .about-inner a:hover{color:var(--cf-accent)}#cosmicflows-root .about-inner .ref-item{font-size:var(--type-xs);color:var(--cf-text-dim);margin-bottom:8px;line-height:1.6}#cosmicflows-root .about-inner .ref-item strong{color:var(--cf-text)}#cosmicflows-root .about-section{border-bottom:1px solid var(--cf-divider);margin-bottom:4px;padding-bottom:4px}#cosmicflows-root .about-section:last-of-type{border-bottom:none}#cosmicflows-root .about-section>summary{cursor:pointer;align-items:center;gap:6px;list-style:none;display:flex}#cosmicflows-root .about-section>summary::-webkit-details-marker{display:none}#cosmicflows-root .about-section>summary:before{content:"▸";font-size:var(--type-xs);color:var(--cf-accent-dim);flex-shrink:0;transition:transform .2s}#cosmicflows-root .about-section[open]>summary:before{transform:rotate(90deg)}#cosmicflows-root .about-section>summary h3{margin:12px 0 6px;display:inline}#cosmicflows-root .about-inner .ref-group-label{font-size:var(--type-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--cf-accent-dim);opacity:.7;margin:14px 0 6px}#cosmicflows-root .about-inner .ref-group-label:first-child{margin-top:4px}#cosmicflows-root #about-close{cursor:pointer;width:36px;height:36px;font-size:var(--type-sm);color:var(--cf-text-dim);border:1px solid #c8d8e833;border-radius:50%;justify-content:center;align-items:center;transition:color .15s,border-color .15s;display:flex;position:absolute;top:16px;right:16px}#cosmicflows-root #about-close:hover{color:var(--cf-accent);border-color:var(--cf-accent-dim)}#cosmicflows-root #basin-card{z-index:55;background:var(--cf-panel-bg);border:1px solid var(--cf-panel-border);font-family:var(--font-body);backdrop-filter:blur(10px);border-radius:8px;width:calc(100% - 40px);max-width:420px;padding:14px 16px;transition:opacity .2s;display:none;position:absolute;bottom:56px;left:50%;transform:translate(-50%)}#cosmicflows-root #basin-card .bc-name{font-size:var(--type-base);color:var(--cf-accent);align-items:center;gap:8px;margin-bottom:6px;font-weight:500;display:flex}#cosmicflows-root #basin-card .bc-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px}#cosmicflows-root #basin-card .bc-short{font-size:var(--type-sm);color:var(--cf-text);margin-bottom:8px;line-height:1.55}#cosmicflows-root #basin-card .bc-stats{font-size:var(--type-xs);color:var(--cf-text-dim);line-height:1.7}#cosmicflows-root #basin-card .bc-sci{font-size:var(--type-xs);color:var(--cf-text-dim);border-top:1px solid var(--cf-divider);margin-top:8px;padding-top:8px;line-height:1.6}#cosmicflows-root #basin-card .bc-close{cursor:pointer;width:28px;height:28px;font-size:var(--type-xs);color:var(--cf-text-dim);border-radius:50%;justify-content:center;align-items:center;transition:color .15s;display:flex;position:absolute;top:8px;right:8px}#cosmicflows-root #basin-card .bc-close:hover{color:var(--cf-accent)}#cosmicflows-root #basin-card .bc-warn{font-size:var(--type-xs);color:#ffb43cbf;margin-top:6px;line-height:1.55}#cosmicflows-root #panel-header{border-bottom:1px solid var(--cf-divider);justify-content:space-between;align-items:flex-start;margin-bottom:6px;padding:0 0 8px;display:flex}#cosmicflows-root #panel-header button{width:28px;height:28px;color:var(--cf-text-dim);cursor:pointer;background:0 0;border:none;border-radius:0;flex-shrink:0;justify-content:center;align-items:center;transition:color .2s,border-color .2s,background .2s;display:flex}#cosmicflows-root #panel-header button:hover{color:var(--cf-accent)}#cosmicflows-root #btn-local.active{color:#8da;background:#88ddaa1f;border-radius:4px}#cosmicflows-root #panel-search{color:var(--cf-text-dim);background:#00bfff0a;border:1px solid #00bfff1f;border-radius:4px;align-items:center;gap:7px;margin-bottom:6px;padding:5px 8px;display:flex}#cosmicflows-root #panel-search svg{opacity:.5;flex-shrink:0}#cosmicflows-root #panel-search-input{color:var(--cf-text);font-family:var(--font-body);font-size:var(--type-xs);letter-spacing:.03em;background:0 0;border:none;outline:none;flex:1;min-width:0;padding:0}#cosmicflows-root #panel-search-input::placeholder{color:var(--cf-text-muted);font-style:normal}#cosmicflows-root #panel-search:focus-within{border-color:var(--cf-accent-dim)}#cosmicflows-root #panel-search:focus-within svg{opacity:.8;color:var(--cf-accent)}#cosmicflows-root .search-hidden{display:none!important}#cosmicflows-root #btn-panel-toggle .plus-vert{transform-origin:50%;transition:transform .25s,opacity .25s}#cosmicflows-root #btn-panel-toggle.is-minus .plus-vert{opacity:0;transform:rotate(90deg)}#cosmicflows-root #controls.panel-closed{backdrop-filter:none;background:0 0;border:none;width:auto;padding:10px 16px;bottom:auto;overflow:hidden}#cosmicflows-root #controls.panel-closed #panel-header{border:none;margin:0;padding:0}#cosmicflows-root #controls.panel-closed>:not(#panel-header){display:none!important}#cosmicflows-root #controls.panel-closed #panel-header #about-btn,#cosmicflows-root #controls.panel-closed #panel-header #btn-fullscreen,#cosmicflows-root #controls.panel-closed #panel-header #btn-local,#cosmicflows-root #controls.panel-closed #panel-header #btn-theme{display:none}#cosmicflows-root #controls.panel-closed #panel-header button{backdrop-filter:blur(6px);background:#04060fb3}body.cf-immersive>header,body.cf-immersive>nav{display:none!important}body.cf-immersive #cosmicflows-root{--header-offset:0px}#cosmicflows-root #info{pointer-events:none;color:var(--cf-text-muted);font-family:var(--font-body);font-size:var(--type-xs);letter-spacing:.04em;gap:12px;display:flex;position:absolute;bottom:14px;left:50%;transform:translate(-50%)}#cosmicflows-root #badge{text-align:right;color:var(--cf-text-muted);font-family:var(--font-body);font-size:var(--type-xs);line-height:1.6;position:absolute;bottom:14px;right:16px}#cosmicflows-root #badge a{color:var(--cf-accent-dim);text-decoration:none}#cosmicflows-root #badge a:hover{color:var(--cf-accent)}#cosmicflows-root #cine-vignette{pointer-events:none;z-index:5;opacity:0;background:radial-gradient(#0000 40%,#04060f73 100%);transition:opacity 1.2s;position:absolute;inset:0}#cosmicflows-root #cine-vignette.active{opacity:1}#cf-tooltip{z-index:10000;border:1px solid var(--cf-panel-border);width:240px;color:var(--cf-text);font-family:var(--font-body);font-size:var(--type-xs);letter-spacing:.01em;white-space:normal;pointer-events:none;opacity:0;backdrop-filter:blur(8px);background:#04060ff7;border-radius:6px;padding:8px 10px;line-height:1.55;transition:opacity .18s;position:fixed;box-shadow:0 4px 16px #0006}#cf-tooltip.visible{opacity:1}@media (width<=640px){#cf-tooltip{display:none}}@media (prefers-reduced-motion:reduce){#cosmicflows-root #mw-ring,#cosmicflows-root #mw-ring2,#cosmicflows-root #select-ring{opacity:.5;animation:none}#cosmicflows-root #cine-vignette,#cosmicflows-root .panel-body,#cosmicflows-root #about-overlay{transition:none}}#cosmicflows-root .panel::-webkit-scrollbar{width:4px}#cosmicflows-root .about-inner::-webkit-scrollbar{width:4px}#cosmicflows-root .panel::-webkit-scrollbar-track{background:0 0}#cosmicflows-root .about-inner::-webkit-scrollbar-track{background:0 0}#cosmicflows-root .panel::-webkit-scrollbar-thumb{background:#00bfff26;border-radius:2px}#cosmicflows-root .about-inner::-webkit-scrollbar-thumb{background:#00bfff26;border-radius:2px}#cosmicflows-root #color-legend{z-index:15;-webkit-backdrop-filter:blur(10px);background:#04060fbf;border:1px solid #00bfff14;border-radius:8px;width:min(680px,100% - 320px);padding:8px 16px 10px;display:none;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}#cosmicflows-root .color-legend-title{font-family:var(--font-body);font-size:var(--type-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--cf-text-muted);text-align:center;margin-bottom:5px}#cosmicflows-root .color-legend-bar{cursor:crosshair;position:relative}#cosmicflows-root #color-legend-canvas{border:1px solid #00bfff1a;border-radius:3px;width:100%;height:12px;display:block}#cosmicflows-root .color-legend-ticks{height:14px;font-family:var(--font-body);font-size:var(--type-xs);color:var(--cf-text-dim);margin-top:2px;position:relative}#cosmicflows-root .color-legend-ticks.alt{color:var(--cf-text-muted);font-size:var(--type-xs);height:12px;margin-top:0}#cosmicflows-root .color-legend-ticks .tick{white-space:nowrap;position:absolute;transform:translate(-50%)}#cosmicflows-root .color-legend-ticks .tick:first-child{transform:none}#cosmicflows-root .color-legend-ticks .tick:last-child{transform:translate(-100%)}#cosmicflows-root #cluster-legend{z-index:15;-webkit-backdrop-filter:blur(10px);background:#04060fcc;border:1px solid #00bfff14;border-radius:8px;flex-wrap:wrap;gap:2px 12px;max-width:min(780px,100% - 320px);padding:10px 16px;display:none;position:absolute;bottom:24px;left:50%;transform:translate(-50%)}#cosmicflows-root .cluster-legend-title{width:100%;font-family:var(--font-body);font-size:var(--type-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--cf-text-muted);margin-bottom:4px}#cosmicflows-root .cluster-legend-items{flex-wrap:wrap;gap:2px 10px;display:flex}#cosmicflows-root .cluster-legend-item{cursor:pointer;user-select:none;border-radius:3px;align-items:center;gap:5px;padding:2px 4px;transition:opacity .2s,background .2s;display:flex}#cosmicflows-root .cluster-legend-item:hover{background:#ffffff0f}#cosmicflows-root .cluster-legend-item.dimmed{opacity:.25}#cosmicflows-root .cluster-legend-item.separator{border-left:1px solid #ffffff1a;margin-left:8px;padding-left:12px}#cosmicflows-root .cluster-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;display:inline-block}#cosmicflows-root .cluster-name{font-family:var(--font-body);font-size:var(--type-xs);color:#ffffffd9;white-space:nowrap}#cosmicflows-root .cluster-count{font-family:var(--font-body);font-size:var(--type-xs);color:var(--cf-text-muted);margin-left:2px}#cosmicflows-root #galaxy-card{z-index:55;font-family:var(--font-body);backdrop-filter:blur(14px);background:#04060ff5;border:1px solid #00bfff59;border-radius:8px;min-width:200px;max-width:280px;padding:12px 14px;display:none;position:fixed;box-shadow:0 4px 20px #0009}#cosmicflows-root #galaxy-card .gc-close{cursor:pointer;width:24px;height:24px;font-size:var(--type-xs);color:var(--cf-text-dim);border-radius:50%;justify-content:center;align-items:center;transition:color .15s;display:flex;position:absolute;top:6px;right:6px}#cosmicflows-root #galaxy-card .gc-close:hover{color:var(--cf-accent)}#cosmicflows-root #galaxy-card .gc-title{font-size:var(--type-sm);color:var(--cf-accent);margin-bottom:8px;padding-right:20px;font-weight:500}#cosmicflows-root .gc-row{font-size:var(--type-xs);color:var(--cf-text);gap:8px;line-height:1.7;display:flex}#cosmicflows-root .gc-key{color:var(--cf-text-dim);flex-shrink:0;min-width:65px}#cosmicflows-root #z-histogram{z-index:15;border:1px solid var(--cf-panel-border);border-radius:6px;display:none;position:absolute;bottom:40px;right:16px}#cosmicflows-root.light-mode{--cf-text:#0d1117;--cf-text-dim:#0d1117a6;--cf-text-muted:#0d11176b;--cf-accent:#1a56db;--cf-accent-dim:#1a56dbd9;--cf-accent-subtle:#1a56db1a;--cf-panel-bg:#fffffff7;--cf-panel-border:#1a56db2e;--cf-divider:#1a56db1c}#cosmicflows-root.light-mode #panel-search{background:#1a56db0a;border-color:#1a56db24}#cosmicflows-root.light-mode .sec-num{background:#1a56db1a}#cosmicflows-root.light-mode hr.div{border-top-color:#1a56db24}#cosmicflows-root.light-mode .chk{border-color:#0d111747}#cosmicflows-root.light-mode .chk.checked{background:#1a56db38;border-color:#1a56db8c}#cosmicflows-root.light-mode #controls.panel-closed #panel-header button{background:#ffffffeb}#cosmicflows-root.light-mode #btn-local.active{color:#167a3e;background:#167a3e1c}#cosmicflows-root.light-mode #btn-theme{color:var(--cf-accent);background:#1a56db17;border-radius:4px}#cosmicflows-root.light-mode .panel select{color:var(--cf-text);background:#fff;border-color:#1a56db38}#cosmicflows-root.light-mode .slider-val{color:var(--cf-accent);background:#f0f4fff5}#cosmicflows-root.light-mode .preset-btn{background:#1a56db0a}#cosmicflows-root.light-mode .dcl-title{color:var(--cf-text-muted)}#cosmicflows-root.light-mode .dcl-item:hover{background:#1a56db0f}#cosmicflows-root.light-mode .dcl-solo{color:var(--cf-text-muted);border-color:#0d11172e}#cosmicflows-root.light-mode .dcl-item:hover .dcl-solo{color:var(--cf-text-dim);border-color:#0d11174d}#cosmicflows-root.light-mode .dcl-clip{color:var(--cf-text-muted);border-color:#0d11172e}#cosmicflows-root.light-mode .dcl-item:hover .dcl-clip{color:var(--cf-text-dim);border-color:#0d11174d}#cosmicflows-root.light-mode .dcl-show-all .dcl-name{color:var(--cf-text-muted)}#cosmicflows-root.light-mode .gizmo-toggle{color:var(--cf-text-muted);border-color:#0d111738}#cosmicflows-root.light-mode .gizmo-toggle:hover{color:var(--cf-text-dim);background:#0d11170a;border-color:#0d111766}#cosmicflows-root.light-mode .about-inner{background:#fffffffa}#cosmicflows-root.light-mode .about-inner strong{color:var(--cf-text)}#cosmicflows-root.light-mode #cf-tooltip{background:#fffffffa;border-color:#1a56db38}#cosmicflows-root.light-mode #color-legend,#cosmicflows-root.light-mode #cluster-legend{background:#ffffffeb;border:1px solid #1a56db26}#cosmicflows-root.light-mode #galaxy-card{background:#fffffffa;border-color:#1a56db4d}@media (width<=640px){#cosmicflows-root #controls{width:auto;bottom:auto;left:0;right:0;top:var(--header-offset);max-height:calc(100% - var(--header-offset) - 60px);border:none;border-radius:0}#cosmicflows-root #nav-panel{border:none;border-radius:0;width:auto;max-height:50vh;inset:auto 0 0;overflow-y:auto}#cosmicflows-root #basin-card{max-width:none;bottom:48px;left:12px;right:12px;transform:none}#cosmicflows-root .about-inner{max-width:calc(100% - 24px);max-height:calc(100% - 40px);padding:24px 20px}#cosmicflows-root #info{display:none}#cosmicflows-root #color-legend,#cosmicflows-root #cluster-legend,#cosmicflows-root #z-histogram{display:none!important}#cosmicflows-root #galaxy-card{max-width:none;bottom:48px;right:12px;top:auto!important;left:12px!important}}
