/* Asteroid settlements: independent Star Wars colony dossier and builder. */
.astro-screen{--astro-gold:#e7b77f;--astro-cyan:#93d4e0;--astro-panel:#101f2c;--astro-border:#36556a}
.astro-title{border-bottom:1px solid var(--astro-border);padding:1rem 0 1.8rem}
.astro-eyebrow{color:var(--astro-gold);font-size:.72rem;letter-spacing:.22em;font-weight:800}
.astro-title h1{font-size:clamp(2.7rem,6vw,5rem);line-height:1.03;margin:.6rem 0 1rem;letter-spacing:-.02em}
.astro-title p{max-width:77ch;color:#c0d1dc;line-height:1.75}
.astro-layout{display:grid;grid-template-columns:minmax(200px,245px) minmax(0,1fr);align-items:start;gap:1.25rem}
.astro-directory{position:sticky;top:6rem;min-width:0}
.astro-directory h2{font-size:1.55rem}
.astro-directory nav{display:grid;gap:.5rem}
.astro-directory nav a{display:grid;gap:.3rem;padding:.8rem;border:1px solid #344c5a;border-radius:9px;background:#0d1c29;color:#e5f3f6;text-decoration:none;overflow-wrap:anywhere}
.astro-directory nav a:hover,.astro-directory nav a:focus-visible,.astro-directory nav a.selected{border-color:#8dc9d2;background:#1a3847}
.astro-directory nav a strong{font:700 1.05rem Inter,system-ui,sans-serif}
.astro-directory nav a small{color:#a7bfc8;font-size:.75rem}
.astro-detail{display:grid;gap:1.15rem;min-width:0}
.astro-world{position:relative;min-height:355px;isolation:isolate;overflow:hidden;border:1px solid #536a7c;border-radius:15px;background:
 radial-gradient(circle at 22% 30%,#dfe8ef90 0 1px,transparent 2px),
 radial-gradient(circle at 72% 17%,#dfe8ef80 0 1px,transparent 2px),
 radial-gradient(circle at 80% 67%,#dfe8ef60 0 1px,transparent 2px),
 radial-gradient(ellipse at 45% 42%,#3f6a7e50,transparent 65%),linear-gradient(143deg,#07111e,#111f2c 54%,#060e1b)}
.astro-orbit{position:absolute;z-index:0;width:84%;height:42%;left:8%;top:15%;border:1px solid #a5c0cf43;border-radius:50%;transform:rotate(-17deg);box-shadow:0 0 28px #5f8ea51c}
.astro-asteroid{position:absolute;z-index:1;width:290px;height:230px;left:50%;top:43%;transform:translate(-50%,-50%) rotate(-11deg);
 clip-path:polygon(22% 4%,54% 1%,79% 15%,94% 34%,88% 68%,65% 96%,32% 94%,5% 69%,0 31%);
 background:radial-gradient(ellipse at 24% 24%,#b4a390,#6c6b67 34%,#3a424d 62%,#171e2a 86%);
 filter:drop-shadow(0 25px 25px #000b)}
.astro-asteroid i{position:absolute;width:34%;height:25%;border-radius:50%;border:1px solid #0d141986;box-shadow:inset 8px 9px 16px #060f176e;background:#26313b88;transform:rotate(-22deg)}
.astro-asteroid i:nth-child(1){top:20%;left:21%}.astro-asteroid i:nth-child(2){top:53%;left:58%;width:27%}.astro-asteroid i:nth-child(3){top:70%;left:19%;width:20%;height:16%}
.astro-rock-ice .astro-asteroid{background:radial-gradient(ellipse at 24% 24%,#e8f1f5,#83b7c5 32%,#4b7f9a 64%,#1b354b)}
.astro-rock-iron .astro-asteroid{background:radial-gradient(ellipse at 24% 24%,#baab94,#977b69 36%,#5a4241 67%,#271c28)}
.astro-rock-crystal .astro-asteroid{background:radial-gradient(ellipse at 24% 24%,#c3d5db,#7985b3 32%,#514d8d 64%,#262d5c)}
.astro-glow-cyan .astro-asteroid{box-shadow:0 0 35px #50cdda66}.astro-glow-red .astro-asteroid{box-shadow:0 0 35px #e65e6c66}
.astro-glow-violet .astro-asteroid{box-shadow:0 0 35px #a38aec66}.astro-glow-amber .astro-asteroid{box-shadow:0 0 35px #eebc7166}
.astro-banner{position:absolute;z-index:1;inset:0;width:100%;height:100%;object-fit:cover;opacity:.84}
.astro-shade{position:absolute;z-index:2;inset:0;background:linear-gradient(0deg,#06101ff7 0%,#0d1b2eae 28%,transparent 77%)}
.astro-world-caption{position:absolute;z-index:3;left:1.45rem;right:6rem;bottom:1.35rem;min-width:0}
.astro-world-caption span{font-size:.65rem;font-weight:800;letter-spacing:.17em;color:#e7bb7f}
.astro-world-caption h2{font-size:clamp(2rem,4vw,3.3rem);line-height:1.08;margin:.25rem 0 .5rem;color:#f7f2e9;overflow-wrap:anywhere}
.astro-world-caption p{color:#c8d5df;max-width:60ch;margin:0;line-height:1.5;overflow-wrap:anywhere}
.astro-emblem{position:absolute;right:1.2rem;bottom:1.2rem;width:75px;height:75px;z-index:4;object-fit:contain;padding:.35rem;border:1px solid #d4e8f288;background:#091725c9;border-radius:11px}
.astro-unapproved{padding:.6rem .85rem;border:1px dashed #b99563;border-radius:8px;color:#e8ceaa;background:#57412528;font-size:.83rem}
.astro-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.65rem}
.astro-metrics>div{display:flex;flex-direction:column;justify-content:center;padding:1rem;border:1px solid #365465;border-radius:10px;background:#0f2230;min-width:0}
.astro-metrics span{text-transform:uppercase;font-weight:750;letter-spacing:.09em;font-size:.7rem;color:#aebfc9}
.astro-metrics strong{font:800 clamp(1.25rem,2.6vw,2rem) 'Barlow Condensed',sans-serif;color:#f3e0c4;margin:.35rem 0;overflow-wrap:anywhere}
.astro-metrics small{font-size:.74rem;color:#9cbdc6}
.astro-built,.astro-market{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}
.astro-built article,.astro-market article{padding:1.1rem;border:1px solid #385566;border-radius:10px;background:linear-gradient(144deg,#162e40,#0c1b29);min-width:0}
.astro-built article>span,.astro-market-header>span{font-size:.67rem;letter-spacing:.14em;text-transform:uppercase;color:#a7c3d1;font-weight:750}
.astro-built h3,.astro-market h3{font-size:1.25rem;line-height:1.23;margin:.6rem 0}
.astro-built p,.astro-market p{font-size:.86rem;color:#bcd0dc;line-height:1.6}
.astro-built strong,.astro-weekly{color:#abdcae!important;font-size:.8rem}
.astro-effect{border-top:1px solid #365364;padding-top:.7rem}
.astro-market-header{display:flex;gap:.6rem;align-items:center;justify-content:space-between}
.astro-market-header strong{font-size:1.1rem;color:#f0bb7d;white-space:nowrap}
.astro-market form{margin-top:auto}.astro-market article{display:flex;flex-direction:column}
.astro-market .btn:disabled{opacity:.55;cursor:not-allowed}
.astro-two{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.95rem}
.astro-uploads{margin-top:1.5rem}
.astro-uploads>div{border-top:1px solid #334d5d;padding-top:1.2rem;display:grid;align-content:start;gap:.75rem}
.astro-uploads form{display:grid;gap:.6rem}.astro-uploads input[type=file]{min-width:0;font-size:.8rem}
.astro-credit-total{color:#f4d19d;font-size:1.05rem}
.astro-ledger summary{cursor:pointer;font-size:1.15rem;font-weight:750}
.astro-ledger summary:focus-visible{outline:3px solid #c7dce7;outline-offset:3px}
.astro-review{display:grid;gap:.6rem;padding:1rem;border-top:1px solid #526075;margin-top:1rem}
.astro-review img{max-width:100%;width:290px;max-height:140px;object-fit:contain;object-position:left}
.astro-screen .card h2{font-size:1.65rem}
@media(max-width:920px){.astro-layout{grid-template-columns:minmax(0,1fr)}.astro-directory{position:static}.astro-directory nav{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}}
@media(max-width:630px){.astro-built,.astro-market,.astro-two{grid-template-columns:minmax(0,1fr)}.astro-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.astro-metrics>div:last-child{grid-column:1/-1}.astro-world{min-height:330px}.astro-asteroid{width:230px;height:195px}.astro-world-caption{left:1rem;right:1rem;bottom:1rem;padding-right:55px}.astro-emblem{right:.7rem;bottom:.7rem;width:48px;height:48px}.astro-title h1{font-size:2.65rem}.astro-market .btn{width:100%}}

/* Physical facility markers anchored to the illustrated rock. These markers never
   change ownership or income; they mirror already-purchased building rows. */
.astro-installed{position:absolute;inset:0;z-index:3;pointer-events:none}
.astro-structure{position:absolute;display:flex;flex-direction:column;align-items:center;gap:3px;transform:translate(-50%,-50%);min-width:54px}
.astro-structure-shape{display:block;position:relative;width:36px;height:27px;border:1px solid #d6e6df;clip-path:polygon(0 28%,25% 28%,25% 4%,70% 4%,70% 28%,100% 28%,100% 100%,0 100%);background:linear-gradient(110deg,#e5b677,#536b76 45%,#1c3547 88%);box-shadow:0 0 12px #82c5d7ad}
.astro-structure-shape:after{content:"";position:absolute;left:10px;right:10px;top:8px;height:4px;background:#a5e8e6;box-shadow:0 9px 0 #a5e8e6}
.astro-structure small{font-size:.62rem;color:#f2f3e9;font-weight:750;white-space:nowrap;letter-spacing:.025em;text-shadow:0 1px 5px #020913,0 0 4px #020913;background:#071727b5;border:1px solid #477382;border-radius:4px;padding:1px 4px}
.astro-structure-salvage_rig{left:31%;top:33%}.astro-structure-hydroponic_bay{left:52%;top:23%}
.astro-structure-trading_dock{left:66%;top:43%}.astro-structure-medical_bay{left:41%;top:47%}
.astro-structure-sensor_mast{left:58%;top:15%}.astro-structure-defense_battery{left:72%;top:29%}
.astro-structure-engineering_bay{left:29%;top:48%}
.astro-structure-sensor_mast .astro-structure-shape{clip-path:polygon(40% 0,60% 0,60% 25%,73% 25%,100% 100%,0 100%,27% 25%,40% 25%)}
.astro-structure-defense_battery .astro-structure-shape{clip-path:polygon(12% 42%,34% 42%,34% 0,66% 0,66% 42%,88% 42%,100% 100%,0 100%)}
.astro-structure-trading_dock .astro-structure-shape{width:49px;clip-path:polygon(0 35%,20% 35%,20% 10%,85% 10%,85% 35%,100% 35%,100% 100%,0 100%)}
.astro-structure-hydroponic_bay .astro-structure-shape{border-radius:50% 50% 15% 15%;clip-path:none;background:linear-gradient(135deg,#c3e5d5,#4a8778 50%,#1b3944)}
.astro-structure-medical_bay .astro-structure-shape:after{background:#ffd6d2;box-shadow:0 9px 0 #ffd6d2}
.astro-structure-defense_battery .astro-structure-shape:after{background:#ffb6a4;box-shadow:0 9px 0 #ffb6a4}
.astro-preview-note{color:#a5dac0;font-size:.76rem}
@media(max-width:630px){
 .astro-installed{transform:scale(.77);transform-origin:center 34%}
 .astro-structure small{font-size:.58rem}
 .astro-structure-sensor_mast{top:20%}.astro-structure-defense_battery{top:36%}
}
