/* ANTARES 2040 · lenguaje visual holográfico progresivo */
:root { --a2040-cyan:#67efff; --a2040-blue:#2388ff; --a2040-violet:#9b8cff; --a2040-ink:#050b18; }
.a2040-launch { position:absolute; z-index:8; top:12px; right:12px; display:flex; align-items:center; gap:9px; min-height:38px; padding:0 13px; border:1px solid rgba(103,239,255,.42); border-radius:999px; color:#dffcff; background:linear-gradient(110deg,rgba(9,28,52,.92),rgba(20,25,57,.84)); box-shadow:0 0 22px rgba(44,193,255,.13),inset 0 0 14px rgba(103,239,255,.06); font:700 10px/1 "Rajdhani",sans-serif; letter-spacing:.15em; cursor:pointer; backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); }
.a2040-launch:hover,.a2040-launch:focus-visible { border-color:var(--a2040-cyan); box-shadow:0 0 25px rgba(103,239,255,.3); outline:none; }
.a2040-launch-dot,.a2040-live i,.a2040-footer i { width:7px;height:7px;border-radius:50%;background:#64f5d0;box-shadow:0 0 10px #64f5d0; }
.a2040-launch-arrow { color:var(--a2040-cyan); font-size:14px; }
.a2040-overlay { position:fixed; z-index:99990; inset:0; overflow:auto; color:#e8f7ff; background:radial-gradient(ellipse at 50% 0%,rgba(24,83,132,.28),transparent 48%),linear-gradient(135deg,#030814,#071326 55%,#090d20); font-family:"Rajdhani",Arial,sans-serif; }
.a2040-overlay[hidden] { display:none; }
.a2040-grid { position:fixed; inset:0; pointer-events:none; opacity:.16; background-image:linear-gradient(rgba(103,239,255,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(103,239,255,.12) 1px,transparent 1px); background-size:44px 44px; mask-image:linear-gradient(to bottom,black,transparent 88%); }
.a2040-shell { position:relative; width:min(1500px,100%); min-height:100%; margin:auto; padding:20px clamp(14px,3vw,42px) 26px; }
.a2040-header { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:0 0 17px; border-bottom:1px solid rgba(120,200,239,.17); }
.a2040-brand { display:flex; align-items:center; gap:12px; }
.a2040-brand-mark { display:grid; place-items:center; width:42px;height:42px; border:1px solid rgba(103,239,255,.7); border-radius:13px; color:#eaffff; font:700 24px/1 "Orbitron",sans-serif; text-shadow:0 0 15px var(--a2040-cyan); box-shadow:inset 0 0 18px rgba(103,239,255,.13),0 0 20px rgba(103,239,255,.13); }
.a2040-brand p,.a2040-kicker,.a2040-overline,.a2040-rail-label { margin:0; color:#78bfd7; font-size:9px; font-weight:700; letter-spacing:.2em; }
.a2040-brand h2 { margin:3px 0 0; font:700 17px/1.2 "Orbitron",sans-serif; letter-spacing:.12em; }
.a2040-brand h2 span { color:var(--a2040-cyan); }
.a2040-header-right { display:flex; align-items:center; gap:18px; }
.a2040-live { display:flex; align-items:center; gap:8px; color:#a8d7e5; font-size:10px; letter-spacing:.13em; }
.a2040-close { width:38px;height:38px; border:1px solid rgba(153,205,230,.25); border-radius:50%; color:#d8f7ff; background:rgba(10,28,49,.7); font-size:25px; cursor:pointer; }
.a2040-body { display:grid; grid-template-columns:170px minmax(0,1fr); gap:30px; padding-top:23px; }
.a2040-rail { display:flex; flex-direction:column; gap:8px; min-height:650px; padding:12px 12px 14px 0; border-right:1px solid rgba(120,200,239,.14); }
.a2040-rail-label { margin:0 0 8px 10px; font-size:8px; }
.a2040-rail-btn { display:flex; align-items:center; gap:10px; min-height:42px; padding:0 11px; border:1px solid transparent; border-radius:9px; color:#9eb9cc; background:transparent; text-align:left; font:600 13px "Rajdhani",sans-serif; cursor:pointer; }
.a2040-rail-btn span { width:20px; color:#70dff0; font-size:18px; text-align:center; }
.a2040-rail-btn.active,.a2040-rail-btn:hover { border-color:rgba(103,239,255,.2); color:#e9fbff; background:linear-gradient(90deg,rgba(48,158,198,.17),rgba(103,239,255,.03)); }
.a2040-rail-bottom { display:flex; flex-direction:column; gap:4px; margin-top:auto; padding:13px 10px; border:1px solid rgba(103,239,255,.13); border-radius:9px; background:rgba(9,25,44,.5); }
.a2040-rail-bottom b { color:var(--a2040-cyan); font:700 17px "Orbitron",sans-serif; }
.a2040-rail-bottom small { color:#63899e; font-size:8px; letter-spacing:.12em; }
.a2040-main { min-width:0; }
.a2040-overline { margin:2px 0 12px; color:#8baec3; }
.a2040-overline span { color:var(--a2040-cyan); }
.a2040-hero { display:grid; grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr); align-items:center; gap:clamp(22px,5vw,75px); min-height:285px; padding:20px clamp(15px,3vw,42px); border:1px solid rgba(103,239,255,.2); border-radius:16px; background:linear-gradient(110deg,rgba(11,34,57,.83),rgba(9,17,39,.58)); box-shadow:inset 0 0 55px rgba(30,140,193,.06),0 15px 50px rgba(0,0,0,.15); overflow:hidden; }
.a2040-core-wrap { position:relative; display:grid; place-items:center; width:min(100%,260px); aspect-ratio:1; margin:auto; }
.a2040-orbit { position:absolute; inset:5%; border:1px solid rgba(103,239,255,.42); border-radius:50%; box-shadow:0 0 25px rgba(103,239,255,.08),inset 0 0 20px rgba(103,239,255,.05); }
.a2040-orbit::before { content:""; position:absolute; top:7%; left:50%; width:7px;height:7px; border-radius:50%; background:var(--a2040-cyan); box-shadow:0 0 14px var(--a2040-cyan); }
.a2040-orbit.orbit-one { animation:a2040-spin 19s linear infinite; }
.a2040-orbit.orbit-two { inset:13%; transform:rotateX(68deg) rotateZ(24deg); border-color:rgba(155,140,255,.55); animation:a2040-spin 15s linear infinite reverse; }
.a2040-orbit.orbit-three { inset:0; transform:rotateY(68deg) rotateZ(-24deg); border-style:dashed; border-color:rgba(103,239,255,.22); animation:a2040-spin 27s linear infinite; }
.a2040-core { position:relative; display:grid; place-items:center; width:48%; aspect-ratio:1; border:1px solid rgba(103,239,255,.65); border-radius:50%; background:radial-gradient(circle,rgba(48,161,205,.3),rgba(3,10,25,.96) 68%); box-shadow:0 0 45px rgba(46,190,255,.26),inset 0 0 25px rgba(103,239,255,.15); overflow:hidden; }
.a2040-core img { width:82%; height:82%; object-fit:cover; border-radius:50%; opacity:.9; filter:saturate(.85) contrast(1.08); }
.a2040-core-scan { position:absolute; inset:0; background:linear-gradient(transparent 45%,rgba(103,239,255,.23) 50%,transparent 55%); animation:a2040-scan 4s ease-in-out infinite; }
.a2040-core-caption { position:absolute; bottom:1%; color:#7beafa; font:700 9px "Orbitron",sans-serif; letter-spacing:.25em; }
.a2040-hero-copy h3 { margin:9px 0 10px; font:700 clamp(25px,3.5vw,43px)/1.08 "Orbitron",sans-serif; letter-spacing:-.04em; }
.a2040-hero-copy h3 em { color:var(--a2040-cyan); font-style:normal; text-shadow:0 0 20px rgba(103,239,255,.25); }
.a2040-hero-copy p { max-width:560px; margin:0; color:#a5bed0; font-size:15px; line-height:1.5; }
.a2040-hero-actions { display:flex; flex-wrap:wrap; gap:10px; margin-top:20px; }
.a2040-primary,.a2040-secondary { min-height:40px; padding:0 15px; border-radius:7px; font:700 10px "Rajdhani",sans-serif; letter-spacing:.12em; cursor:pointer; }
.a2040-primary { border:1px solid #67efff; color:#03121d; background:linear-gradient(100deg,#83f5ff,#40b9e6); box-shadow:0 0 20px rgba(103,239,255,.19); }
.a2040-secondary { border:1px solid rgba(103,239,255,.32); color:#bfeefa; background:rgba(10,35,55,.7); }
.a2040-status-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:15px; }
.a2040-status-card { min-width:0; padding:13px 15px; border:1px solid rgba(115,187,222,.17); border-radius:9px; background:rgba(8,23,42,.6); }
.a2040-status-card span { display:block; color:#759db4; font-size:8px; font-weight:700; letter-spacing:.16em; }
.a2040-status-card strong { display:block; margin:7px 0 3px; color:#dffaff; font:700 12px "Orbitron",sans-serif; overflow-wrap:anywhere; }
.a2040-status-card small { color:#6f8da3; font-size:10px; }
.a2040-section-head { display:flex; align-items:end; justify-content:space-between; gap:12px; margin:27px 0 12px; }
.a2040-section-head h3 { margin:4px 0 0; font:600 20px "Orbitron",sans-serif; }
.a2040-section-note { color:#64899e; font-size:8px; letter-spacing:.13em; }
.a2040-modules { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:11px; }
.a2040-module { display:flex; flex-direction:column; align-items:flex-start; min-height:135px; padding:14px; border:1px solid rgba(105,188,222,.17); border-radius:10px; color:#e3f6ff; background:linear-gradient(145deg,rgba(13,34,57,.8),rgba(7,17,34,.72)); text-align:left; cursor:pointer; transition:border-color .2s,transform .2s,box-shadow .2s; }
.a2040-module:hover,.a2040-module:focus-visible { transform:translateY(-2px); border-color:rgba(103,239,255,.6); box-shadow:0 8px 25px rgba(0,0,0,.2),0 0 18px rgba(103,239,255,.08); outline:none; }
.a2040-module-icon { display:grid; place-items:center; width:30px;height:30px; margin-bottom:10px; border:1px solid rgba(103,239,255,.3); border-radius:8px; color:var(--a2040-cyan); font-size:19px; }
.a2040-module b { font:700 11px "Orbitron",sans-serif; letter-spacing:.08em; }
.a2040-module small { margin-top:5px; color:#91aabd; font-size:11px; line-height:1.25; }
.a2040-module-open { margin-top:auto; padding-top:10px; color:#6fe7f6; font-size:9px; font-weight:700; letter-spacing:.14em; }
.a2040-footer { display:flex; flex-wrap:wrap; justify-content:space-between; gap:9px; margin-top:22px; padding-top:12px; border-top:1px solid rgba(120,200,239,.13); color:#607f94; font-size:8px; letter-spacing:.1em; }
.a2040-footer span:first-child { display:flex; align-items:center; gap:7px; color:#8eb9c8; }
@keyframes a2040-spin { to { transform:rotate(360deg); } }
@keyframes a2040-scan { 0%,100% { transform:translateY(-65%); opacity:0; } 20%,80% { opacity:.8; } 50% { transform:translateY(65%); opacity:.3; } }
body.a2040-open { overflow:hidden; }
@media(max-width:850px) { .a2040-body { grid-template-columns:1fr; gap:15px; } .a2040-rail { min-height:0; flex-direction:row; overflow-x:auto; border:0; padding:0 0 10px; } .a2040-rail-label,.a2040-rail-bottom { display:none; } .a2040-rail-btn { flex:0 0 auto; } .a2040-hero { grid-template-columns:200px minmax(0,1fr); } }
@media(max-width:600px) { .a2040-shell { padding:13px 12px 22px; } .a2040-brand p { font-size:7px; } .a2040-brand h2 { font-size:13px; } .a2040-brand-mark { width:36px;height:36px; } .a2040-live { font-size:0; } .a2040-header-right { gap:9px; } .a2040-hero { grid-template-columns:1fr; gap:7px; padding:15px; } .a2040-core-wrap { width:190px; } .a2040-hero-copy { text-align:center; } .a2040-hero-copy p { font-size:13px; } .a2040-hero-actions { justify-content:center; } .a2040-status-grid { grid-template-columns:1fr; gap:8px; } .a2040-status-card { padding:10px 12px; } .a2040-modules { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; } .a2040-module { min-height:128px; padding:11px; } .a2040-section-head { align-items:start; flex-direction:column; } .a2040-section-note { display:none; } .a2040-footer { flex-direction:column; } }
@media(prefers-reduced-motion:reduce) { .a2040-orbit,.a2040-core-scan { animation:none !important; } .a2040-module { transition:none; } }
.a2040-offline .a2040-live i{background:#ff5a72;box-shadow:0 0 10px #ff5a72}
.side-info .a2040-launch{position:static;margin:10px auto 0;display:inline-flex}
