/* Focused constellations: readable labels, direct purchases, stable details. */
.consolidated-shop{width:min(1500px,98vw);height:96vh;max-height:96vh;display:flex;flex-direction:column;overflow:hidden}
.consolidated-shop>.tree-view-part{display:none!important}
.consolidated-shop>header{flex-shrink:0}.consolidated-shop .shop-view-tabs{flex-shrink:0}
#systemShop{flex:1;min-height:0;overflow:auto;padding:18px 22px;color:#e9e3cd;background:#30372e;font:15px/1.45 Arial,sans-serif;scrollbar-color:#929b76 #30372e;scrollbar-width:thin}
#systemShop[hidden]{display:none}
#systemShop button{font:600 14px/1.3 Arial,sans-serif;letter-spacing:0;text-transform:none;border:1px solid #72795f;border-radius:3px;background:#3e463a;color:#ebe5cf;min-height:38px;cursor:pointer}
#systemShop button:disabled{opacity:.45;cursor:default}#systemShop button:focus-visible,#modulePanel button:focus-visible{outline:3px solid #e4bd6d;outline-offset:3px}
#systemShop button:hover:not(:disabled){border-color:#e6cc8a;background:#4c5647}
#systemShop h3,#systemShop h4{font-family:Arial,sans-serif;letter-spacing:0;margin:0;color:inherit}
#systemShop p{font:15px/1.5 Arial,sans-serif;color:#c5ccb7;margin:8px 0}
.system-toolbar{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:18px}.system-filters,.purchase-amount{display:flex;gap:6px;align-items:center;flex-wrap:wrap}
#systemShop button[aria-pressed=true]{background:#d0b371;color:#222a22;border-color:#d0b371}
#systemShop .select-upgrade[aria-pressed=true] small{color:#39412f}
#systemShop .select-upgrade[aria-pressed=true]>span{color:#65442f}
#systemSearch{width:240px;max-width:40%;padding:10px 12px;color:#eee7d1;background:#252c25;border:1px solid #717b60;border-radius:3px;font-size:15px}
.system-intro{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.system-intro h3{font-size:21px}.system-intro>span{font-size:13px;color:#b8c2a4}
.system-catalog{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
#systemShop .system-tile{text-align:left;position:relative;min-height:190px;padding:20px;border-top:3px solid var(--system-color);background:#363e33;display:flex;flex-direction:column;gap:12px}
.system-symbol{font-size:36px;color:var(--system-color);line-height:1}.system-tile h3{font-size:20px}.system-tile p{font-size:13px!important;font-weight:400}.system-tile small{font-size:11px;color:#bfc8ad}.enter-system{position:absolute;right:17px;top:16px;font-size:22px;color:var(--system-color)}
.system-pages{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:18px;font-size:13px;color:#bec6af}.system-pages>div{display:flex;align-items:center;gap:12px}
.system-focus{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:24px;align-items:start}.system-hub{display:flex;gap:20px;align-items:center;margin:4px 0 24px}.system-hub>span{display:grid;place-items:center;width:82px;height:82px;flex-shrink:0;border:2px solid var(--system-color);border-radius:50%;font-size:44px;color:var(--system-color);box-shadow:0 0 0 6px #ffffff05}.system-hub small{color:var(--system-color);letter-spacing:2px}.system-hub h3{font-size:29px}
.system-nodes{position:relative;margin-left:40px;padding-left:28px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;border-left:2px solid var(--system-color)}
.system-node{position:relative;border:1px solid #64725c;border-radius:4px;background:#384232;padding:10px;min-width:0}.system-node:before{content:'';position:absolute;left:-29px;top:35px;width:28px;border-top:1px solid var(--system-color);opacity:.55}.system-node.selected{border-color:var(--system-color);box-shadow:0 0 0 1px var(--system-color)}
#systemShop .select-upgrade{display:flex;align-items:center;gap:12px;text-align:left;border:0;background:transparent;width:100%;padding:4px 0;color:#eee7d1}.select-upgrade>span{font-size:27px;color:var(--system-color);min-width:30px;text-align:center}.select-upgrade b{display:block;font-size:16px}.select-upgrade small{display:block;font-size:12px;color:#c0caae;margin-top:5px}
#systemShop .buy-upgrade{width:100%;margin-top:10px;background:#c6ad72;color:#252d24;border-color:#c6ad72}
.system-help{margin:18px 0!important;font-size:13px!important}.system-details{background:#e9e1ca;color:#30382d;border-radius:4px;padding:22px}.system-details>small{font-size:11px;letter-spacing:1px}.system-details h3{font-size:25px;margin:12px 0!important}.system-details p{color:#48543e!important}.system-details h4{margin:24px 0 12px!important;font-size:13px;letter-spacing:2px!important}
.stat-change{display:flex;align-items:center;justify-content:space-between;gap:8px;border-top:1px solid #b8b59b;border-bottom:1px solid #b8b59b;padding:15px 0;margin:18px 0;font-size:11px}.stat-change b{display:block;font-size:23px;margin-top:4px}.stat-change em{font-style:normal;font-size:24px}
.stat-change[hidden]{display:none}.continuing-preview>small{display:block;margin-top:18px;font-size:12px;line-height:1.4;color:#48543e}

/* Hybrid / Relic atlases share the upgrade screen's symbol language. */
.collection-detail{min-width:0}.symbol-collection .collection-detail h3{white-space:normal!important;overflow-wrap:anywhere;max-width:100%}
.consolidated-shop .symbol-collection{padding:18px 22px;background-color:#2c342b;background-image:radial-gradient(#b8c6a412 .8px,transparent .8px);background-size:24px 24px;color:#e9e3cd;flex:1;min-height:0;overflow:auto}
.symbol-collection>header{border:0!important;margin-bottom:6px!important;padding:0!important}.symbol-collection>header h3{color:#eee6ca;font-size:24px!important}.symbol-collection>header b{color:#b6c6a4}
.symbol-collection>p{color:#bbc8ae!important;font:14px/1.5 Arial,sans-serif!important;margin:5px 0 20px!important}
#shopSynergyGrid.collection-layout,#relicGrid.collection-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:26px;align-items:start}
.collection-atlas{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 10px;align-content:start}
.symbol-collection .collection-item{display:flex;align-items:center;flex-direction:column;gap:7px;min-width:0;min-height:130px;border:0;background:none;box-shadow:none;border-radius:0;padding:9px 3px;color:#e9e3cd;text-transform:none;letter-spacing:0;cursor:pointer}
.symbol-collection .collection-item:hover{background:#d8e4bd06}.collection-item b{font:600 15px/1.2 Arial,sans-serif;text-align:center;max-width:100%}.collection-item small{font:10px/1.3 Arial,sans-serif;letter-spacing:.6px;color:#b3bfa5}
.collection-orb{position:relative;display:grid;place-items:center;width:58px;height:58px;flex-shrink:0;font:29px/1 Arial,sans-serif;border:1px solid #889879;border-radius:50%;color:#b7cda0;background:#30392e;box-shadow:0 0 0 4px #2c342b,0 0 0 5px #96aa7425;margin:2px 0 7px}
.online .collection-orb{border-color:#bccd8e;background:#455238;color:#e5edc9}.collection-item[aria-pressed=true] .collection-orb{border-color:#e9cc7f;box-shadow:0 0 0 4px #2c342b,0 0 0 5px #e9cc7f;color:#f1d58b}
.symbol-collection button:focus-visible{outline:2px solid #ecd591;outline-offset:3px}.recipe-dots{display:flex;gap:5px;margin-top:1px}.recipe-dots i{width:5px;height:5px;border:1px solid #839371;border-radius:50%}.recipe-dots i.filled{background:#d2ce95;border-color:#d2ce95}
.collection-detail{background:#e9e1ca;color:#30382d;border-radius:3px;padding:22px;position:sticky;top:0}.collection-detail>small{font:11px/1.4 Arial,sans-serif;letter-spacing:1px;color:#5a654b}.collection-detail h3{font:600 25px/1.2 Arial,sans-serif!important;letter-spacing:0;margin:10px 0!important;color:#30382d!important}.collection-detail p{font:15px/1.55 Arial,sans-serif!important;color:#48543e!important}.detail-emblem{font-size:39px;color:#6c7856;margin:18px 0 10px;line-height:1}.collection-detail h4{font:600 11px Arial,sans-serif;letter-spacing:1.5px;margin:24px 0 12px}
.recipe-ingredients{display:flex;flex-direction:column;gap:8px}.symbol-collection .ingredient{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 8px;border:1px solid #a3aa8b;background:transparent;color:#39432f;box-shadow:none;font:13px/1.3 Arial,sans-serif;letter-spacing:0;text-align:left;text-transform:none}.ingredient b{white-space:nowrap}.symbol-collection .ingredient.complete{background:#7085571a;border-color:#738963}.collection-detail .collection-footnote{font-size:12px!important;color:#626d54!important;margin-top:16px}
.relic-atlas{gap:40px 18px;padding:18px 0}.relic-atlas .collection-item{min-height:190px}.relic-atlas .collection-orb{width:88px;height:88px;font-size:42px;border-color:#b7a167;color:#e3c889;box-shadow:0 0 0 5px #2c342b,0 0 0 6px #b7a16755;margin-bottom:17px}.relic-atlas .collection-item b{font-size:15px;letter-spacing:.5px}.relic-atlas .relic-price{font:600 15px Arial,sans-serif;color:#dec78b;letter-spacing:0}.relic-availability{font:10px Arial,sans-serif;letter-spacing:1px;color:#b9c3a8;margin-top:3px}
.collection-cost{border-top:1px solid #b4b79d;border-bottom:1px solid #b4b79d;padding:17px 0;margin:22px 0;display:flex;flex-direction:column;gap:6px}.collection-cost small{font:11px Arial,sans-serif;letter-spacing:1px}.collection-cost b{font:600 30px Arial,sans-serif}.collection-cost span{font:13px Arial,sans-serif}.symbol-collection .collection-purchase{width:100%;background:#775240;color:#f9ebca;border:0;padding:14px 8px;font:600 14px Arial,sans-serif;text-transform:none;letter-spacing:0}.symbol-collection .collection-purchase:disabled{background:#858673;color:#eee8d3;opacity:.7;cursor:default}
@media(max-width:1100px){#shopSynergyGrid.collection-layout,#relicGrid.collection-layout{grid-template-columns:minmax(0,1fr) 270px;gap:16px}.collection-item b{font-size:13px}.relic-atlas{gap:24px 8px}.relic-atlas .collection-orb{width:70px;height:70px;font-size:35px}}
@media(max-width:760px){#shopSynergyGrid.collection-layout,#relicGrid.collection-layout{grid-template-columns:1fr}.collection-detail{position:static;order:-1;padding:18px}.collection-detail .detail-emblem{display:none}.collection-atlas{grid-template-columns:repeat(3,minmax(0,1fr))}.consolidated-shop .symbol-collection{padding:14px}.collection-detail p{font-size:14px!important}.relic-atlas{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.collection-item b{font-size:14px}}
#systemShop .detail-purchase{width:100%;background:#7a4f3e;color:#fff0d4;border-color:#7a4f3e;padding:12px}.system-warning{font-weight:bold}
.connection{padding:12px;border:1px solid #849071;margin-bottom:12px;border-radius:4px}.connection.online{border-left:4px solid #698c71}.connection header{display:flex;justify-content:space-between;gap:12px;align-items:center}.connection header b{font:600 16px Arial,sans-serif}.connection small{font-size:10px;letter-spacing:1px}.connection p{font:14px/1.45 Arial,sans-serif!important}.connection .requirement{font:12px/1.4 Arial,sans-serif!important;min-height:28px!important;padding:5px!important;margin:3px 0;border:1px solid #849071!important;background:transparent!important;color:inherit!important}.connection .met{font-weight:bold!important;background:#76966c22!important}
.consolidated-shop #modulePanel,.consolidated-shop #relicPanel{overflow:auto;min-height:0;scrollbar-color:#929b76 #30372e}.consolidated-shop .synergy-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.consolidated-shop .synergy-grid .connection{background:#e8e0ca;color:#30382d;margin:0}
@media(max-width:1100px){.system-catalog{grid-template-columns:repeat(3,minmax(0,1fr))}.system-focus{grid-template-columns:minmax(0,1fr) 290px}.system-nodes{margin-left:12px;padding-left:16px;gap:10px}.system-node:before{left:-17px;width:16px}}
@media(max-width:760px){#systemShop{padding:12px}.system-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}.system-focus{grid-template-columns:1fr}.system-toolbar,.system-intro{align-items:flex-start;flex-direction:column}#systemSearch{max-width:100%;width:100%}.system-details{padding:18px}.system-pages{flex-wrap:wrap}.consolidated-shop .synergy-grid{grid-template-columns:1fr}.system-hub h3{font-size:24px}.consolidated-shop>header h2{font-size:20px}.system-tile h3{font-size:17px}#systemShop .system-tile{padding:14px;min-height:170px}}
@media(max-width:420px){.system-nodes{grid-template-columns:1fr}.system-catalog{gap:9px}.system-hub>span{width:60px;height:60px;font-size:32px}.system-hub{gap:12px}}

/* Symbol atlas and focused constellations — no rectangular upgrade cards. */
#systemShop{background-color:#2c342b;background-image:radial-gradient(#b8c6a412 .8px,transparent .8px);background-size:24px 24px}
.system-catalog{gap:22px 16px}
#systemShop .system-tile{border:0;background:none;box-shadow:none;align-items:center;text-align:center;min-height:205px;padding:8px 10px;gap:18px}
#systemShop .system-tile:hover:not(:disabled){background:#d8e4bd06;border:0}
.system-tile .system-symbol{position:relative;display:grid;place-items:center;width:84px;height:84px;border:2px solid var(--system-color);border-radius:50%;box-shadow:0 0 0 7px #2c342b,0 0 0 8px #9ba68b40;background:#303a2e;font-size:40px}
.system-tile .system-symbol:after{content:'';position:absolute;width:8px;height:8px;left:50%;top:50%;border:2px solid var(--system-color);border-radius:50%;background:#2c342b;pointer-events:none;transform:translate(-50%,-50%) rotate(-40deg) translateX(49px);animation:system-satellite-orbit 18s linear infinite}
.system-tile:nth-child(3n+2) .system-symbol:after{animation-duration:22s;animation-delay:-7s}
.system-tile:nth-child(3n) .system-symbol:after{animation-duration:26s;animation-delay:-15s}
@keyframes system-satellite-orbit{from{transform:translate(-50%,-50%) rotate(-40deg) translateX(49px)}to{transform:translate(-50%,-50%) rotate(320deg) translateX(49px)}}
@media(prefers-reduced-motion:reduce){.system-tile .system-symbol:after{animation:none}}
/* Every system lives on this overview; adapt density, never paginate. */
#systemShop .system-catalog{grid-template-columns:repeat(7,minmax(0,1fr));gap:24px 12px}
#systemShop .system-catalog .system-tile{min-height:185px;padding:12px 4px}
#systemShop .system-catalog .system-tile h3{font-size:17px;line-height:1.25}
#systemShop .system-catalog .system-tile small{line-height:1.5}
@media(max-width:1199px){#systemShop .system-catalog{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:900px){#systemShop .system-catalog{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:600px){#systemShop .system-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}}
.system-tile p{display:none}.system-tile small{display:block;margin-top:10px;font-size:11px}.system-tile .enter-system{display:none}.system-tile h3{font-size:20px}
.system-focus{gap:20px;grid-template-columns:minmax(0,1fr) 310px}.system-hub{margin:0 0 8px;gap:0}.system-hub>span{display:none}.system-hub h3{font-size:25px}.system-hub p{font-size:13px!important;margin:4px 0!important}.system-hub small{font-size:10px}
.constellation-viewport{height:clamp(440px,calc(100vh - 290px),710px);position:relative;overflow:hidden;touch-action:none;cursor:grab;isolation:isolate}
.constellation-viewport.panning{cursor:grabbing}
.system-nodes.constellation-world{position:absolute;left:0;top:0;width:720px;height:720px;display:block;margin:0;padding:0;border:0;transform-origin:0 0}
.constellation-lines{position:absolute;width:720px;height:640px;inset:0;pointer-events:none;overflow:visible}.constellation-lines path{fill:none;stroke:var(--system-color);stroke-width:1.5}.constellation-lines .uninvested{opacity:.32}.constellation-lines .invested{opacity:.9;stroke-width:2}.orbit-guide{fill:none;stroke:var(--system-color);opacity:.13;stroke-width:1;stroke-dasharray:3 9}
.constellation-core{position:absolute;left:360px;top:295px;transform:translate(-50%,-50%);display:flex;align-items:center;flex-direction:column;width:160px;pointer-events:none;text-align:center;background:#2c342b;padding:12px 0}
.constellation-core>span{width:84px;height:84px;display:grid;place-items:center;font-size:43px;color:var(--system-color);border:2px solid var(--system-color);border-radius:50%;box-shadow:0 0 0 6px #2c342b,0 0 0 7px #9ba68b40;margin-bottom:15px}.constellation-core b{font-size:18px}.constellation-core small{font-size:10px;letter-spacing:1px;color:#bec8af;margin-top:6px}
.constellation-world .system-node{position:absolute;width:170px;transform:translate(-50%,-34px);padding:0;border:0;background:none;box-shadow:none!important;text-align:center}
.constellation-world .system-node:before{display:none}
#systemShop .constellation-world .select-upgrade{display:flex;flex-direction:column;gap:9px;align-items:center;text-align:center;min-height:112px;padding:0;border:0;background:none!important;box-shadow:none;color:#eee7d1!important}
#systemShop .constellation-world .select-upgrade>span{display:grid;place-items:center;flex-shrink:0;width:68px;height:68px;border:2px solid #7f8a72;border-radius:50%;background:#30392e;color:var(--system-color);font-size:30px;box-shadow:0 0 0 5px #2c342b}
#systemShop .constellation-world .invested .select-upgrade>span{border-color:var(--system-color);background:#414c38}
#systemShop .constellation-world .selected .select-upgrade>span{border-color:#f0d997;box-shadow:0 0 0 5px #2c342b,0 0 0 6px #ecd591;color:#f3dfa8}
.constellation-world .select-upgrade b{font-size:15px;line-height:1.2;background:#2c342be8;padding:2px 3px}.constellation-world .select-upgrade small{font-size:11px;color:#c4ceb7!important;background:#2c342be8;margin-top:3px}
#systemShop .constellation-world .buy-upgrade{display:block;min-height:28px;width:max-content;max-width:170px;min-width:98px;margin:7px auto 0;padding:5px 10px;font-size:12px;border:1px solid #b3a26a;border-radius:18px;background:#30392e;color:#e0c989;box-shadow:none}
#systemShop .constellation-world .buy-upgrade:hover:not(:disabled){background:#c6ad72;color:#252d24}
.constellation-controls{position:absolute;left:10px;bottom:5px;display:flex;gap:5px;align-items:center;background:#2c342bed;padding:6px;border-radius:3px;z-index:2}.constellation-controls span{font-size:11px;color:#b9c5a9;margin-left:7px}.constellation-controls button{min-width:35px;min-height:30px!important;padding:4px 9px!important}
.system-details{padding:18px;max-height:calc(96vh - 202px);overflow:auto;scrollbar-color:#939775 #e9e1ca;scrollbar-width:thin}.system-details>.connection{padding:10px 0;border:0;border-top:1px solid #b7b99f;border-radius:0}.system-details summary{cursor:pointer;list-style:none}.system-details summary:after{content:'Details +';font-size:11px;color:#626e50}.system-details details[open] summary:after{content:'Details −'}.system-details .connection header b{font-size:14px}.system-details p{font-size:14px!important}
@media(max-width:1100px){.system-focus{grid-template-columns:minmax(0,1fr) 270px}.system-catalog{grid-template-columns:repeat(4,minmax(0,1fr))}.system-tile h3{font-size:17px}}
@media(max-width:760px){.system-focus{grid-template-columns:1fr}.system-catalog{grid-template-columns:repeat(2,minmax(0,1fr))}#systemShop .system-tile{min-height:190px;padding:12px 4px}.constellation-viewport{height:530px}.system-details{max-height:none}.system-hub{margin-top:8px}.system-toolbar{flex-direction:row;flex-wrap:wrap}.constellation-controls span{display:none}.system-details{overflow:visible}}
