*{box-sizing:border-box}html,body{color:#f4f4f4;background:#05054f;min-height:100%;margin:0;font-family:Segoe UI,sans-serif}body{background:#05054f;min-height:100vh;padding:20px 20px 40px}#app{width:min(100%,760px);margin:0 auto}.topbar{width:min(100%,760px);box-shadow:none;background:0 0;border:none;border-radius:0;justify-content:space-between;align-items:center;gap:12px;margin:0 auto 24px;padding:0;display:flex}.brand-wrap{align-items:center;display:flex}.brand-copy{flex-direction:column;display:flex}.brand-copy strong{letter-spacing:.06em;text-transform:uppercase;font-size:.78rem;font-weight:600}.main-nav{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.nav-button{color:#fffc;letter-spacing:.08em;text-transform:uppercase;background:0 0;border:1px solid #ffffff3d;border-radius:999px;padding:6px 10px;font-size:.62rem}.nav-button:hover,.nav-button:focus-visible,.nav-button.active{color:#f5f5f5;background:#ffffff14}.page-shell{width:min(100%,760px);margin:0 auto}.space-card{box-shadow:none;background:0 0;border:none;border-radius:0;padding:0}.status-row{color:#fff9;letter-spacing:.12em;text-transform:uppercase;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:18px;font-size:.7rem;display:flex}h1{letter-spacing:-.05em;color:#f5f5f5;margin:0 0 20px;font-size:clamp(2.2rem,5vw,4rem);font-weight:500;line-height:1.02}.image-panel{border:none;border-radius:0;margin:0 0 22px;overflow:hidden}img{object-fit:cover;border-radius:0;width:100%;max-height:640px;display:block}p{color:#fffc;margin:0;font-size:1.02rem;line-height:1.8}button{font:inherit;cursor:pointer}.gallery-button,.back-button{color:#f5f5f5;letter-spacing:.1em;text-transform:uppercase;background:0 0;border:1px solid #ffffff73;border-radius:999px;margin-top:28px;padding:12px 17px;font-size:.72rem;transition:background .18s,color .18s,border-color .18s}.gallery-button:hover,.gallery-button:focus-visible,.back-button:hover,.back-button:focus-visible{color:#05054f;background:#f5f5f5}.gallery-view{width:min(100%,1100px);margin:0 auto}.gallery-heading{justify-content:space-between;align-items:end;gap:24px;margin-bottom:34px;display:flex}.gallery-heading h1{margin-top:12px;margin-bottom:0}.back-button{flex-shrink:0;margin-top:0}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.gallery-item{background:#ffffff0a;border:1px solid #ffffff1f;border-radius:0;overflow:hidden}.gallery-item img,.gallery-skeleton{aspect-ratio:4/3;object-fit:cover;width:100%}.gallery-item-info{padding:14px}.gallery-item h2{margin:0 0 8px;font-size:.95rem;font-weight:500;line-height:1.25}.gallery-item-info span{color:#ffffff8c;letter-spacing:.08em;font-size:.72rem}.gallery-skeleton{background:#ffffff14;animation:1.4s ease-in-out infinite alternate pulse}.weather-card{padding-bottom:16px}.weather-status{margin-bottom:24px}.weather-pill{color:#fffc;text-transform:uppercase;letter-spacing:.08em;background:0 0;border:1px solid #ffffff59;border-radius:999px;align-items:center;padding:7px 10px;font-size:.68rem;display:inline-flex}.weather-alert{color:#ff6b6b;margin-bottom:18px;padding:8px 0;font-size:.9rem;font-weight:500;display:inline-block}.weather-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 22px;display:grid}.weather-stat{background:#ffffff05;border:1px solid #ffffff1f;border-radius:0;padding:14px 12px}.stat-label{color:#fff9;letter-spacing:.1em;text-transform:uppercase;margin-bottom:10px;font-size:.65rem;display:block}.weather-stat strong{letter-spacing:-.05em;font-size:clamp(1.1rem,2.8vw,1.8rem)}.news-view{width:min(100%,760px);margin:0 auto}.news-heading{justify-content:space-between;align-items:flex-end;margin-bottom:28px;display:flex}.news-heading h1{margin-top:12px;margin-bottom:0}.news-list{flex-direction:column;gap:18px;display:flex}.news-item{background:#ffffff05;border:1px solid #ffffff1f;border-radius:0;padding:16px 14px;transition:background .18s,border-color .18s}.news-item:hover,.news-item:focus-within{background:#ffffff0f;border-color:#ffffff38}.news-item a{color:inherit;flex-direction:column;gap:8px;text-decoration:none;display:flex}.news-item h2{color:#f5f5f5;margin:0;font-size:1rem;font-weight:500;line-height:1.32}.news-source{color:#ffffff8c;letter-spacing:.1em;text-transform:uppercase;width:fit-content;font-size:.65rem;display:inline-block}.news-skeleton{background:#ffffff14;border-radius:0;min-height:68px;animation:1.4s ease-in-out infinite alternate pulse}@keyframes pulse{to{opacity:.45}}.loading-block{background:#ffffff0a;border:1px solid #ffffff1f;border-radius:18px;min-height:220px}.live-view{width:min(100%,760px);margin:0 auto}.live-heading{justify-content:space-between;align-items:flex-end;margin-bottom:28px;display:flex}.live-heading h1{margin-top:12px;margin-bottom:0}.earth-container{background:#ffffff05;border:1px solid #ffffff1f;border-radius:0;justify-content:center;margin:0 0 28px;padding:20px;display:flex}.world-map{aspect-ratio:2;background:#071a32;border:1px solid #ffffff1f;width:min(100%,520px);position:relative;overflow:hidden}.world-map img{object-fit:cover;width:100%;height:100%;display:block}.map-point{z-index:2;border-radius:50%;width:12px;height:12px;position:absolute;transform:translate(-50%,-50%);box-shadow:0 0 0 3px #ffffff1f}.user-point{background:#64f0a4;border:2px solid #0006}.iss-point{background:#ff6b6b;border:2px solid #0006}.geo-status{color:#ffffffb8;letter-spacing:.04em;margin:-8px 0 18px;font-size:.76rem}.iss-info{background:#ffffff05;border:1px solid #ffffff1f;border-radius:0;padding:16px 14px}.iss-info h2{color:#f5f5f5;margin:0 0 16px;font-size:.95rem;font-weight:500}#iss-data{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.iss-stat{background:#ffffff05;border:1px solid #ffffff1a;flex-direction:column;gap:6px;padding:10px;display:flex}.iss-stat span{color:#ffffff8c;letter-spacing:.1em;text-transform:uppercase;font-size:.65rem}.iss-stat strong{color:#ff6b6b;font-size:1.1rem}@media (width<=720px){.topbar{flex-direction:column;align-items:stretch}.main-nav{justify-content:flex-start}}@media (width<=640px){body{padding:20px 16px 28px}.status-row,.gallery-heading{flex-direction:column;align-items:flex-start}.gallery-grid,.weather-grid,#iss-data{grid-template-columns:1fr}}
