@font-face{font-family:NeoSansPro;src:url('assets/NeoSansPro-Regular.ttf') format('truetype');font-weight:400;font-display:swap}
@font-face{font-family:NeoSansPro;src:url('assets/NeoSansPro-Medium.ttf') format('truetype');font-weight:500 800;font-display:swap}
:root{--bg:#101112;--panel:#181b1e;--line:#383d41;--text:#e7e9eb;--muted:#a4a9ad;--accent:#6db7ee;--font:NeoSansPro,Arial,sans-serif}
html,body{min-height:100%;background:#101112}
body{font-family:var(--font);color:var(--text)}
button,input,select{font-family:inherit}
.topbar{height:64px;max-width:none;margin:0;padding:0 22px;gap:26px;background:#17191b;border-bottom:1px solid #33373a;position:relative;z-index:15}
.brand{gap:10px;letter-spacing:0;font-size:14px;line-height:1.15}
.brand img{width:40px;height:40px;object-fit:cover;border-radius:50%}
.brand span{display:flex;flex-direction:column;gap:3px}
.brand strong{font-size:17px;letter-spacing:0}
.brand small{font-size:11px;letter-spacing:0;font-weight:400;color:#aeb7bc}
.header-count{margin-left:auto;display:flex;align-items:baseline;gap:7px;color:#aeb7bc;font-size:12px;white-space:nowrap}
.header-count strong{font-size:19px;color:#e8f5ff;font-variant-numeric:tabular-nums}
.about-menu{position:relative;color:#e1e5e9;font-size:13px}
.about-menu summary{cursor:pointer;list-style:none;padding:9px 11px;border:1px solid #424a50;border-radius:5px}
.about-menu summary::-webkit-details-marker{display:none}
.about-menu summary:hover{border-color:#79b8e4}
.language-switch{display:flex;gap:2px;border:1px solid #424a50;border-radius:5px;padding:2px;flex:none}
.language-switch button{border:0;border-radius:3px;padding:6px 7px;background:transparent;color:#adb9c0;cursor:pointer;font-size:11px}
.language-switch button[aria-pressed="true"]{background:#b7d9ef;color:#142330}
.language-switch button:focus-visible{outline:2px solid #e4f2fa;outline-offset:2px}
.about-panel{position:absolute;right:0;top:calc(100% + 12px);width:min(420px,calc(100vw - 28px));padding:20px;background:#202428;border:1px solid #485059;box-shadow:0 12px 40px #0009;border-radius:6px;line-height:1.55}
.about-panel h2{font-size:18px;margin:0 0 10px}
.about-panel p{font-size:12px;color:#c3cbd1;margin:10px 0}
.about-links{display:flex;flex-wrap:wrap;gap:9px 16px;font-size:12px;color:#8dccf4}
.wrap{max-width:none;padding-left:0;padding-right:0}
.catalog{padding:0;display:flex;flex-direction:column;min-height:calc(100dvh - 64px)}
.toolbar{margin:0;padding:10px 18px;gap:8px;align-items:center;background:#17191b;border-bottom:1px solid #30353a}
.search,select,.difference{height:38px;background:#24282c;border:1px solid #40474d;border-radius:5px;color:#e0e6e9}
.search{flex:1 1 215px;max-width:390px}
.search input::placeholder{color:#909ba2}
.search>span:first-child{color:#9cc9eb}
.toolbar label:not(.search):not(.difference){flex:0 1 auto}
select{font-size:12px;max-width:175px}
.difference{font-size:11px;white-space:nowrap}
.difference input{accent-color:#78b9e6}
.count{font-size:11px;font-weight:400;color:#aeb9bf;vertical-align:initial;margin:0 0 0 auto;white-space:nowrap}
.size-range input:focus-visible,.filter-reset:focus-visible{outline:2px solid #a7d7f5;outline-offset:2px}
.filter-reset:disabled{opacity:.48;cursor:not-allowed}
#toolbarResetHost .filter-reset{height:38px;padding:0 10px;border:1px solid #59636b;border-radius:5px;background:#24282c;color:#dce8ee;cursor:pointer;white-space:nowrap;font-size:12px}
#toolbarResetHost .filter-reset:disabled{cursor:not-allowed}
.size-range{display:flex;align-items:center;gap:4px;color:#aeb9bf}.size-range[hidden]{display:none}.size-range input{width:78px;height:38px;padding:0 6px;border:1px solid #40474d;border-radius:5px;background:#24282c;color:#e0e6e9;font-size:12px}
.view-switch{flex:0 0 auto;border:1px solid #40474d;border-radius:5px}
.view-switch button{padding:10px 12px;color:#bdc6cc}
.view-switch button.active{background:#bdddf3;color:#13202a}
.filter-help{padding:8px 18px;margin:0;background:#252a2e;color:#c1d6e5}
.poster-viewport{border:0;border-radius:0;height:calc(100dvh - 123px);min-height:440px;max-height:none;background:#101112;isolation:isolate;overflow:hidden;overflow:clip;user-select:none}
body[data-view="poster"] .catalog{height:calc(100dvh - 64px);min-height:0}
body[data-view="poster"] .toolbar{flex:0 0 auto}
body[data-view="poster"] .poster-viewport{flex:1 1 0;height:auto;min-height:0}
.poster-board{background:#101112;background-image:none}
.space-ship{color:#e7ecee;display:block;overflow:hidden}
.space-ship img{position:absolute;display:block;object-fit:contain;max-width:none;pointer-events:none}
.bounded-art{display:block;position:relative;overflow:hidden;aspect-ratio:var(--art-ratio)}
.bounded-art img{position:absolute;display:block;width:var(--art-width)!important;height:auto!important;max-width:none!important;left:var(--art-x);top:var(--art-y)}
.visual .bounded-art{height:112px;max-width:84%}
.drawer-visual .bounded-art{height:180px;max-width:90%}
.compare-picture .bounded-art{width:100%}
@media(max-width:700px){.visual .bounded-art{height:95px}}
.space-ship .space-label{top:auto;left:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-align:center;width:100%;font-family:NeoSansPro,Arial,sans-serif;font-size:var(--label-size,11px);line-height:var(--label-line,15px);font-weight:500;letter-spacing:0;color:#d0d8dc;text-shadow:0 1px 2px #000;pointer-events:none}
.space-ship .space-label small{font-size:90%;font-weight:400;color:#9eabb2}
.space-ship:hover,.space-ship:focus-visible{outline:1px solid #90c9ee;outline-offset:-1px;z-index:auto}
.space-ship:hover img,.space-ship:focus-visible img{filter:none}
.space-ship:hover img.matte-white,.space-ship:focus-visible img.matte-white{filter:url(#easWhiteMatte)}
.space-ship:hover img.matte-light,.space-ship:focus-visible img.matte-light{filter:invert(1)}
.space-status{background:#25292ddd;border-color:#424b50;color:#d9e2e8}
.drawer-compare:disabled,.add:disabled{opacity:.48;cursor:not-allowed}
.space-tooltip{background:#e7f2f8;color:#14222b}
.map-controls{right:14px;bottom:14px;gap:8px;background:#22272bdd;border:1px solid #555f66;border-radius:6px;padding:4px}
.scale-notice{position:absolute;right:0;bottom:calc(100% + 6px);width:max-content;max-width:90vw;padding:4px 6px;background:#22272bf0;border:1px solid #555f66;border-radius:4px;font-size:10px;color:#d5e0e6;pointer-events:none}
.map-controls button{height:32px}
.scale-switch,.zoom-group{display:flex;align-items:center}
.scale-switch{gap:2px}
.scale-switch button{width:auto;padding:0 9px;font-size:11px;color:#bdcbd3;border-radius:4px;white-space:nowrap}
.scale-switch button.active{background:#b7d9ef;color:#142330}
.map-controls .scale-switch button:hover{background:#719ab5;color:#101a20}
.poster-navigation{position:absolute;z-index:6;left:14px;bottom:14px;display:flex;align-items:center;gap:8px;padding:5px 8px;background:#22272bef;border:1px solid #555f66;border-radius:6px;color:#dce8ee;font-size:11px;cursor:default}
.poster-navigation #posterResetHost{position:absolute;left:0;bottom:calc(100% + 6px)}
.poster-navigation .filter-reset{width:auto;padding:0 9px;border:1px solid #56636c;background:#2a3339;font-size:11px;white-space:nowrap}
.poster-navigation .filter-reset:disabled{cursor:not-allowed}
.poster-navigation .filter-reset:disabled:hover{background:#2a3339}
.poster-navigation strong{font-size:11px}.poster-navigation small{color:#aab7bf;font-size:10px}.poster-navigation .zoom-group{border:0;padding:0}
.poster-navigation button{width:30px;height:32px;border:0;border-radius:4px;background:transparent;color:#d5ebef;font-size:18px;cursor:pointer}
.poster-navigation button:hover{background:#385364}.poster-navigation .zoom-group span{min-width:45px;text-align:center;font-variant-numeric:tabular-nums}
.zoom-group{border-left:1px solid #4e5b62;padding-left:6px}
.zoom-group button{width:30px;font-size:18px}
.zoom-group span{min-width:45px}
.compare{margin:24px;border:1px solid #374149;background:#1a1e22}
.grid{padding:18px;gap:10px}
.ship{background:#1c2023;border-color:#3a4248}
.visual,.drawer-visual{background-color:#171a1d;background-image:none}
.ship-universe,.drawer-universe,.drawer-top,.detail-stats strong,.drawer a.inline,.add{color:#9fcdf0}
.drawer{z-index:30;background:#1c2023;border-color:#45515b}
.scrim{z-index:29}.scrim[hidden]{display:none!important}.toast{z-index:31}
.drawer-compare{background:#acd6f2}
.empty{margin:20px;border-color:#45515b}
body[data-view="cards"] .catalog,body[data-view="compare"] .catalog{min-height:0}
.poster-viewport[hidden],.grid[hidden],.compare[hidden],.filter-help[hidden],.toolbar label[hidden]{display:none!important}
@media(max-width:1000px){.difference{display:none}.count{display:none}.search{max-width:none}.topbar{gap:15px}}
@media(max-width:700px){
  .topbar{height:59px;padding:0 12px;gap:9px}
  .brand img{width:35px;height:35px}.brand strong{font-size:15px}.brand small{font-size:10px}
  .header-count{gap:4px;font-size:10px}.header-count strong{font-size:16px}
  .about-menu summary{padding:8px;font-size:11px}
  .catalog{min-height:calc(100dvh - 59px)}
  body[data-view="poster"] .catalog{height:calc(100dvh - 59px)}
  .toolbar{padding:8px;gap:6px}
  .search{flex:1 1 100%;height:36px}
  .toolbar label:not(.search):not(.difference){flex:1 1 28%}
  .toolbar select{width:100%;max-width:none;height:36px}
  .view-switch button{padding:9px 8px;font-size:10px}
  .poster-viewport{height:calc(100dvh - 151px);min-height:390px}
  .map-controls{bottom:10px;right:8px;gap:3px}
  .poster-navigation{left:8px;bottom:10px;gap:4px}.poster-navigation small{display:none}.poster-navigation strong{font-size:10px}.poster-navigation button{width:26px}.poster-navigation .zoom-group span{min-width:38px}
  .scale-switch button{font-size:10px;padding:0 6px}
  .zoom-group{padding-left:3px}.zoom-group button{width:26px}.zoom-group span{min-width:38px}
  .grid{padding:10px}.compare{margin:10px}
}
@media(max-width:520px){.header-count span{display:none}.brand small{display:none}.topbar{gap:6px}.language-switch button{padding:6px}.about-menu summary{padding:8px 6px}.poster-navigation strong{display:none}}
.atlas-nav{display:inline-flex;align-items:center;gap:2px;flex:none;padding:3px;border:1px solid #424a50;border-radius:5px;background:#17191b;font-size:11px;white-space:nowrap}
.atlas-nav a,.atlas-nav span{display:block;padding:6px 10px;border-radius:3px;color:#adb9c0;line-height:1;text-decoration:none}
.atlas-nav [aria-current=page]{color:#142330;background:#b7d9ef}
.atlas-nav a:hover{color:#e7e9eb;background:#30353a}
.atlas-nav a:focus-visible{text-decoration:underline;text-underline-offset:3px}
.space-ship .space-sprite{position:absolute;display:block;max-width:none;pointer-events:none;background-repeat:no-repeat}
.space-ship .space-sprite.matte-dark{mix-blend-mode:screen}
.space-ship .space-sprite.matte-white{filter:url(#easWhiteMatte)}
.space-ship .space-sprite.matte-light{filter:invert(1);mix-blend-mode:screen}
@media(max-width:700px){.atlas-nav{font-size:10px}.atlas-nav a,.atlas-nav span{padding:6px 7px}}
@media(max-width:420px){.topbar .atlas-nav [aria-current=page]{display:none}.topbar .atlas-nav a{padding:6px 7px}}
