@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&family=Space+Grotesk:wght@500;600;700&display=swap');
:root{
  --bg:#070810; --bg2:#0c0d18; --panel:rgba(18,20,34,.82); --panel2:rgba(24,27,45,.78);
  --line:rgba(255,255,255,.085); --line2:rgba(139,92,246,.24);
  --text:#f5f7ff; --muted:#8d94ad; --muted2:#6f7690;
  --violet:#8b5cf6; --violet2:#6d5dfc; --cyan:#22d3ee; --green:#34d399; --amber:#fbbf24; --red:#fb7185;
}
*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif;min-height:100vh}
button,input{font:inherit}.app-bg{position:fixed;inset:0;pointer-events:none;background:
 radial-gradient(circle at 78% 4%,rgba(139,92,246,.14),transparent 30%),
 radial-gradient(circle at 38% 35%,rgba(34,211,238,.05),transparent 26%),
 linear-gradient(180deg,#090a12 0%,#070810 100%);z-index:0}
.shell{position:relative;z-index:1;display:grid;grid-template-columns:248px 1fr;min-height:100vh}
aside{position:sticky;top:0;height:100vh;padding:28px 18px;border-right:1px solid var(--line);background:rgba(7,8,16,.72);backdrop-filter:blur(18px);display:flex;flex-direction:column}
.brand{display:flex;gap:13px;align-items:center;padding:2px 8px 28px;font-family:Space Grotesk,sans-serif;font-weight:700;letter-spacing:.18em;font-size:14px}
.brand span small{display:block;font-family:Inter,sans-serif;font-weight:400;letter-spacing:0;color:var(--muted);font-size:11px;margin-top:5px}
.brand-mark{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(145deg,var(--violet),#4f46e5 55%,var(--cyan));box-shadow:0 12px 35px rgba(109,93,252,.28);font-family:Space Grotesk,sans-serif;font-size:17px}
.brand-mark.large{width:64px;height:64px;border-radius:20px;font-size:24px}
nav{display:flex;flex-direction:column;gap:7px}nav a{color:#9299b2;text-decoration:none;padding:12px 13px;border-radius:12px;display:flex;align-items:center;gap:11px;font-size:14px;cursor:pointer;border:1px solid transparent;transition:.2s}
nav a span{width:18px;text-align:center;color:#787f9d}nav a:hover{background:rgba(255,255,255,.035);color:#fff}
nav a.active{background:linear-gradient(90deg,rgba(139,92,246,.16),rgba(34,211,238,.035));border-color:rgba(139,92,246,.18);color:#fff}
nav a.active span{color:#b7a3ff}nav i{margin-left:auto;background:rgba(251,191,36,.15);color:#fbbf24;border-radius:999px;font-style:normal;padding:2px 7px;font-size:11px}
.aside-bottom{margin-top:auto}.tenant{border-top:1px solid var(--line);padding:19px 9px 12px}.tenant span,.tenant small{display:block;color:var(--muted2);font-size:10px;letter-spacing:.08em}.tenant strong{display:block;margin:7px 0 5px;font-size:12px}
.logout{width:100%;border:1px solid var(--line);background:transparent;color:#8d94ad;border-radius:10px;padding:10px;cursor:pointer}.logout:hover{color:#fff;border-color:rgba(139,92,246,.35)}
main{padding:30px 32px 56px;max-width:1600px;width:100%;margin:0 auto}.topbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:26px}.eyebrow,.micro{font-size:10px;letter-spacing:.19em;font-weight:800;color:#a78bfa}.topbar h1{font-family:Space Grotesk,sans-serif;margin:6px 0 0;font-size:25px;letter-spacing:-.02em}.actions{display:flex;align-items:center;gap:10px}.live,.clock{border:1px solid var(--line);background:rgba(15,17,30,.66);padding:10px 13px;border-radius:11px;color:#a5abc0;font-size:12px}.live i{display:inline-block;width:6px;height:6px;background:var(--green);border-radius:50%;margin-right:8px;box-shadow:0 0 14px var(--green)}
.primary{background:linear-gradient(135deg,var(--violet),#635bff);color:#fff;border:0;border-radius:12px;padding:11px 16px;font-weight:700;cursor:pointer;box-shadow:0 9px 26px rgba(109,93,252,.28)}.primary span{margin-left:8px}
.hero{position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center;gap:30px;padding:38px 40px;margin-bottom:18px;border:1px solid rgba(139,92,246,.20);border-radius:23px;background:
 linear-gradient(120deg,rgba(139,92,246,.12),rgba(15,17,29,.82) 48%,rgba(34,211,238,.045)),
 rgba(17,19,32,.85);box-shadow:0 18px 60px rgba(0,0,0,.20)}
.hero:before{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(139,92,246,.11);border-radius:50%;right:-120px;top:-185px;box-shadow:0 0 100px rgba(139,92,246,.09)}
.hero-copy{position:relative;z-index:1}.hero h2{font-family:Space Grotesk,sans-serif;font-size:36px;line-height:1.12;letter-spacing:-.045em;margin:11px 0 14px;max-width:760px}.hero h2 em{font-style:normal;background:linear-gradient(90deg,#fff,#bba7ff 55%,#75e9f6);-webkit-background-clip:text;background-clip:text;color:transparent}.hero p{color:#9ba2b8;max-width:690px;font-size:15px;line-height:1.7}.hero-chips{display:flex;gap:8px;margin-top:21px;flex-wrap:wrap}.hero-chips span{font-size:10px;padding:7px 10px;border:1px solid var(--line);border-radius:999px;color:#aeb4c8;background:rgba(255,255,255,.025)}
.director-orb{position:relative;min-width:250px;display:grid;grid-template-columns:86px 1fr;align-items:center;gap:18px}.orb-ring{position:absolute;width:116px;height:116px;border:1px solid rgba(139,92,246,.28);border-radius:50%;left:-15px;box-shadow:inset 0 0 40px rgba(139,92,246,.07)}.orb-core{position:relative;z-index:1;width:86px;height:86px;border-radius:28px;display:grid;place-items:center;background:linear-gradient(145deg,#a78bfa,#615fff 48%,#22d3ee);font-family:Space Grotesk;font-size:30px;font-weight:700;box-shadow:0 15px 45px rgba(109,93,252,.36)}.orb-copy span{display:block;font-family:Space Grotesk;font-size:15px;font-weight:700}.orb-copy small{display:block;color:#8f96ad;margin-top:5px;font-size:11px}
.metrics{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:12px}.metrics article,.panel{border:1px solid var(--line);background:linear-gradient(180deg,rgba(20,22,37,.84),rgba(13,15,27,.86));border-radius:18px;box-shadow:inset 0 1px 0 rgba(255,255,255,.02)}
.metrics article{padding:19px 20px}.metric-top{display:flex;justify-content:space-between;align-items:center;color:#8d94ad;font-size:11px}.metric-top i{font-style:normal;color:#585f77;font-family:Space Grotesk}.metrics strong{display:block;font-family:Space Grotesk;font-size:29px;margin:10px 0 5px}.metrics strong.small{font-size:20px;margin-top:14px}.metrics small{font-size:10px;color:#7e859e}.ok{color:var(--green)!important}.warn{color:var(--amber)!important}
.grid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(290px,.8fr);gap:12px}.panel{padding:20px}.ph{display:flex;align-items:center;justify-content:space-between;margin-bottom:17px}.ph h3{font-family:Space Grotesk;margin:5px 0 0;font-size:17px}.ghost,.tasks-toolbar button{border:1px solid var(--line);background:rgba(255,255,255,.025);color:#bec4d7;border-radius:9px;padding:8px 11px;cursor:pointer}.ghost:hover,.tasks-toolbar button:hover{border-color:rgba(139,92,246,.35);color:white}
.agents{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.agents article{display:flex;gap:11px;padding:14px;border:1px solid var(--line);background:rgba(255,255,255,.018);border-radius:14px;min-height:112px}.agents article>b{width:35px;height:35px;flex:0 0 35px;display:grid;place-items:center;border-radius:11px;background:linear-gradient(135deg,rgba(139,92,246,.32),rgba(34,211,238,.22));color:#fff;font-size:12px}.agents strong{font-size:11px}.agents em{font-style:normal;font-size:8px;color:var(--green);margin-left:5px}.agents p{color:#8e95ad;font-size:10px;line-height:1.5;margin:7px 0}.agents small{color:#636a82;font-size:9px}
.health{display:flex;flex-direction:column;gap:9px}.health-row,.gateway-row{display:flex;justify-content:space-between;color:#9299b0;font-size:11px}.health strong{color:#fff;font-size:11px}.health meter{width:100%;height:5px}.gateway-row{margin-top:9px;padding-top:14px;border-top:1px solid var(--line)}meter::-webkit-meter-bar{background:#24283a;border:0;border-radius:10px}meter::-webkit-meter-optimum-value{background:linear-gradient(90deg,var(--violet),var(--cyan))}
.timeline{display:flex;flex-direction:column}.timeline p{position:relative;margin:0;padding:12px 10px 12px 23px;border-bottom:1px solid var(--line);color:#8f96ad;font-size:11px}.timeline p:last-child{border-bottom:0}.timeline p:before{content:"";position:absolute;left:4px;top:17px;width:6px;height:6px;background:#8b5cf6;border-radius:50%;box-shadow:0 0 12px rgba(139,92,246,.8)}.timeline b{color:#e9ebf6}.timeline time{color:#5e657d}.live-dot,.mini-status{font-size:9px;color:var(--green);letter-spacing:.08em}
.approval article{text-align:center;padding:23px 13px}.approval-icon{margin:0 auto 13px;width:39px;height:39px;border-radius:12px;display:grid;place-items:center;background:rgba(52,211,153,.08);border:1px solid rgba(52,211,153,.18);color:var(--green)}.approval strong{font-size:12px}.approval p{color:#777f98;font-size:10px;line-height:1.55}
.drawer{position:fixed;z-index:20;right:0;top:0;height:100vh;width:min(480px,100vw);background:#0c0e18;border-left:1px solid var(--line2);transform:translateX(102%);transition:.25s;display:grid;grid-template-rows:auto 1fr auto;box-shadow:-30px 0 80px rgba(0,0,0,.35)}.drawer.open{transform:none}.drawer header{display:flex;justify-content:space-between;padding:22px;border-bottom:1px solid var(--line)}.drawer h3{font-family:Space Grotesk;margin:5px 0}.drawer header button,.task-detail header button,.tasks-header button{border:0;background:transparent;color:#8d94ad;font-size:27px;cursor:pointer}.chat{padding:20px;overflow:auto}.chat>p{background:#151827;border:1px solid var(--line);padding:13px;border-radius:13px;color:#a5abc0;font-size:12px;line-height:1.55}.chat-user{margin-left:35px;background:rgba(139,92,246,.13)!important;border-color:rgba(139,92,246,.22)!important;color:#e8e3ff!important}.chat-error{border-color:rgba(251,113,133,.25)!important;color:#ff9aab!important}.drawer footer{display:flex;gap:8px;padding:15px;border-top:1px solid var(--line)}.drawer input{flex:1;background:#121522;border:1px solid var(--line);border-radius:11px;padding:12px;color:white;outline:0}.drawer footer button{border:0;border-radius:11px;padding:0 17px;background:linear-gradient(135deg,var(--violet),#635bff);color:white;font-weight:700;cursor:pointer}
.tasks-overlay{position:fixed;inset:0;z-index:30;background:rgba(4,5,11,.82);backdrop-filter:blur(12px);display:none;padding:32px;overflow:auto}.tasks-overlay.open{display:block}.tasks-window{max-width:1180px;margin:0 auto;background:#0d0f19;border:1px solid var(--line2);border-radius:20px;overflow:hidden}.tasks-header{display:flex;justify-content:space-between;padding:24px 26px;border-bottom:1px solid var(--line)}.tasks-header h2{font-family:Space Grotesk;margin:6px 0}.tasks-header p{color:#777f96;font-size:11px;margin:0}.tasks-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;padding:18px}.tasks-summary article{border:1px solid var(--line);border-radius:13px;padding:14px;background:#11131f}.tasks-summary span{color:#858ca4;font-size:10px}.tasks-summary strong{display:block;margin-top:8px;font-size:20px;font-family:Space Grotesk}.tasks-toolbar{display:flex;justify-content:space-between;align-items:center;padding:0 18px 13px;color:#6e758d;font-size:10px}.tasks-table-wrap{overflow:auto}.tasks-table{width:100%;border-collapse:collapse;font-size:11px}.tasks-table th,.tasks-table td{text-align:left;padding:13px 16px;border-top:1px solid var(--line)}.tasks-table th{color:#6f7690;font-size:9px;letter-spacing:.08em}.task-clickable{cursor:pointer}.task-clickable:hover{background:rgba(139,92,246,.055)}.task-status{font-size:9px;font-weight:800}.task-done{color:var(--green)}.task-warning{color:var(--amber)}.task-failed{color:var(--red)}.task-running{color:var(--cyan)}.task-unknown{color:#7e859c}
.task-detail{position:fixed;z-index:40;right:0;top:0;height:100vh;width:min(520px,100vw);background:#0c0e18;border-left:1px solid var(--line2);transform:translateX(102%);transition:.25s;overflow:auto}.task-detail.open{transform:none}.task-detail header{display:flex;justify-content:space-between;padding:22px;border-bottom:1px solid var(--line)}.task-detail h3{font-family:Space Grotesk;margin:5px 0}.task-detail-body{padding:20px}.detail-row{display:flex;justify-content:space-between;padding:11px 0;border-bottom:1px solid var(--line);font-size:11px}.detail-row span,.detail-block>span{color:#777f97}.detail-block{margin-top:17px}.detail-block code{display:block;margin-top:7px;padding:10px;border-radius:9px;background:#11131f;border:1px solid var(--line);font-size:10px;color:#aeb5ca;overflow-wrap:anywhere}.detail-history{margin-top:8px;padding:10px;background:#090b13;border:1px solid var(--line);border-radius:10px;max-height:360px;overflow:auto;font-family:monospace;font-size:9px;color:#8f96ad}.history-line{padding:4px}.history-error{color:#ff9aab}.history-success{color:#58e2ae}.history-tool{color:#7ee7f4}

/* Login */
.login-body{min-height:100vh;overflow:hidden;background:
 radial-gradient(circle at 16% 10%,rgba(139,92,246,.22),transparent 30%),
 radial-gradient(circle at 84% 88%,rgba(34,211,238,.08),transparent 25%),#070810}
.login-body:before{content:"";position:fixed;inset:0;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:48px 48px;mask-image:linear-gradient(to bottom,rgba(0,0,0,.65),transparent)}
.login-shell{position:relative;z-index:2;min-height:100vh;display:grid;grid-template-columns:1.2fr .8fr;align-items:center;gap:70px;max-width:1180px;margin:0 auto;padding:55px}.login-branding{max-width:630px}.login-branding .eyebrow{margin-top:24px}.login-branding h1{font-family:Space Grotesk;font-size:50px;line-height:1.04;letter-spacing:-.055em;margin:18px 0}.login-branding p{font-size:16px;line-height:1.7;color:#9299b2;max-width:560px}.login-points{display:flex;gap:9px;flex-wrap:wrap;margin-top:27px}.login-points span{border:1px solid var(--line);background:rgba(255,255,255,.025);border-radius:999px;padding:8px 11px;color:#9ba2b8;font-size:10px}.login-points i{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--violet);margin-right:7px;box-shadow:0 0 12px var(--violet)}
.login-card{padding:28px;border-radius:22px;background:linear-gradient(180deg,rgba(23,25,41,.92),rgba(12,14,24,.96));border:1px solid rgba(139,92,246,.22);box-shadow:0 30px 90px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.03)}.login-card-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:26px}.login-card h2{font-family:Space Grotesk;font-size:23px;margin:8px 0 3px}.login-card-top p{margin:0;color:#777f98;font-size:11px}.pulse-badge{font-size:9px;color:var(--green);border:1px solid rgba(52,211,153,.17);border-radius:999px;padding:7px 9px;background:rgba(52,211,153,.04)}.pulse-badge span{display:inline-block;width:5px;height:5px;background:var(--green);border-radius:50%;margin-right:6px}
.login-card label{display:block;color:#9ba2b7;font-size:10px;margin:14px 0 7px}.login-card input{width:100%;background:#0d0f19;border:1px solid var(--line);border-radius:11px;color:#fff;padding:13px 14px;outline:0}.login-card input:focus{border-color:rgba(139,92,246,.6);box-shadow:0 0 0 3px rgba(139,92,246,.08)}.password-wrap{position:relative}.password-wrap input{padding-right:54px}.password-wrap button{position:absolute;right:7px;top:7px;height:31px;border:0;background:transparent;color:#777f98;font-size:10px;cursor:pointer}.primary-login{width:100%;margin-top:19px;padding:13px;border:0;border-radius:11px;background:linear-gradient(135deg,var(--violet),#625bff 55%,#3b82f6);color:white;font-weight:700;cursor:pointer;box-shadow:0 12px 30px rgba(109,93,252,.25)}.primary-login:disabled{opacity:.6}.login-error{min-height:18px;margin-top:10px;color:#ff9aae;font-size:10px}.login-foot{display:flex;justify-content:space-between;margin-top:20px;padding-top:16px;border-top:1px solid var(--line);color:#626a83;font-size:9px}
.login-orbit{position:fixed;border-radius:50%;border:1px solid rgba(139,92,246,.12);pointer-events:none}.orbit-a{width:700px;height:700px;left:-350px;top:-350px}.orbit-b{width:520px;height:520px;right:-260px;bottom:-260px}

@media(max-width:1150px){.metrics{grid-template-columns:repeat(2,1fr)}.agents{grid-template-columns:repeat(2,1fr)}.hero h2{font-size:31px}.login-shell{grid-template-columns:1fr;max-width:680px}.login-branding{display:none}}
@media(max-width:850px){.shell{grid-template-columns:1fr}aside{position:relative;height:auto;display:block;border-right:0;border-bottom:1px solid var(--line)}nav{display:grid;grid-template-columns:repeat(3,1fr)}.aside-bottom{display:none}main{padding:20px}.topbar{align-items:flex-start;gap:15px}.actions{flex-wrap:wrap;justify-content:flex-end}.hero{padding:28px;display:block}.director-orb{margin-top:30px}.grid{grid-template-columns:1fr}.login-shell{padding:28px}.agents{grid-template-columns:1fr 1fr}}
@media(max-width:560px){nav{grid-template-columns:1fr 1fr}.metrics{grid-template-columns:1fr}.agents{grid-template-columns:1fr}.topbar{display:block}.actions{justify-content:flex-start;margin-top:14px}.hero h2{font-size:28px}.director-orb{min-width:0}.login-shell{padding:18px}.login-card{padding:22px}}

/* CELESTE V4 · Sistemas y capacidades */
.systems-overlay{position:fixed;inset:0;background:rgba(4,6,16,.82);backdrop-filter:blur(10px);z-index:80;display:none;align-items:center;justify-content:center;padding:24px}.systems-overlay.open{display:flex}
.systems-window{width:min(1050px,96vw);max-height:90vh;overflow:auto;background:#0d1020;border:1px solid rgba(129,92,246,.28);border-radius:24px;box-shadow:0 30px 90px rgba(0,0,0,.5);padding:28px}
.systems-header{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.systems-header h2{margin:4px 0 6px;font-size:28px}.systems-header p{margin:0;color:#9096aa}.systems-header button{border:1px solid #252a3d;background:#141829;color:#fff;border-radius:12px;width:40px;height:40px;font-size:24px;cursor:pointer}
.platform-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}.platform-summary article{background:#111525;border:1px solid #242941;border-radius:16px;padding:16px}.platform-summary span{display:block;color:#8f95aa;font-size:12px;margin-bottom:7px}.platform-summary strong{font-size:20px}
.systems-toolbar{display:flex;justify-content:space-between;align-items:center;margin:10px 0 14px;color:#858ca2;font-size:12px}.systems-toolbar button{background:#151a2c;border:1px solid #2b3148;color:#dce0ec;padding:8px 13px;border-radius:9px;cursor:pointer}
.systems-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.system-card{background:#111525;border:1px solid #232940;border-radius:16px;padding:16px}.system-card>div{display:flex;justify-content:space-between;gap:15px;align-items:center}.system-card strong{font-size:15px}.system-card p{color:#969caf;margin:9px 0;font-size:13px}.system-card small{color:#686f86}
.sys-ok,.sys-warn{font-size:10px;font-weight:800;letter-spacing:.08em;padding:5px 8px;border-radius:99px}.sys-ok{color:#47e6aa;background:rgba(71,230,170,.1)}.sys-warn{color:#ffca62;background:rgba(255,202,98,.1)}
.hermes-card{display:grid;grid-template-columns:1fr auto;gap:6px 16px;align-items:center;margin-top:14px;background:linear-gradient(135deg,rgba(124,92,255,.12),rgba(39,209,255,.06));border:1px solid rgba(124,92,255,.25);border-radius:16px;padding:16px}.hermes-card span{font-size:11px;letter-spacing:.12em;color:#a58dff;font-weight:800}.hermes-card strong{font-size:13px}.hermes-card small{grid-column:1/-1;color:#868da3}
.ok{color:#43dfaa!important}.warn{color:#ffc65b!important}nav a{cursor:pointer}
@media(max-width:760px){.platform-summary{grid-template-columns:1fr 1fr}.systems-grid{grid-template-columns:1fr}.systems-overlay{padding:10px}.systems-window{padding:18px}.systems-header h2{font-size:22px}}

/* CELESTE V5 · Monitor de VPS */
.server-monitor{margin-top:18px;padding-top:18px;border-top:1px solid var(--line)}
.server-monitor-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:12px}
.server-monitor-head h3{font-family:Space Grotesk;margin:5px 0 0;font-size:17px}
.server-monitor-head>span{color:#747c95;font-size:10px}
.server-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.server-card{background:#111525;border:1px solid #232940;border-radius:16px;padding:16px}
.server-card>div{display:flex;justify-content:space-between;align-items:center;gap:12px}
.server-card strong{font-size:14px}.server-card code{display:block;margin:12px 0 8px;color:#9ca6c7;font-size:11px}
.server-card small{color:#747d98;font-size:10px}
@media(max-width:760px){.server-grid{grid-template-columns:1fr}.server-monitor-head{align-items:flex-start;flex-direction:column}}

/* CELESTE V5 · Proyectos y empresas */
.projects-overlay{position:fixed;inset:0;background:rgba(4,6,16,.84);backdrop-filter:blur(10px);z-index:85;display:none;align-items:center;justify-content:center;padding:24px}.projects-overlay.open{display:flex}
.projects-window{width:min(1180px,96vw);max-height:91vh;overflow:auto;background:#0d1020;border:1px solid rgba(129,92,246,.28);border-radius:24px;box-shadow:0 30px 90px rgba(0,0,0,.5);padding:28px}
.projects-header{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.projects-header h2{margin:4px 0 6px;font-size:28px}.projects-header p{margin:0;color:#9096aa}.projects-header button{border:1px solid #252a3d;background:#141829;color:#fff;border-radius:12px;width:40px;height:40px;font-size:24px;cursor:pointer}
.projects-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin:24px 0}.projects-summary article{background:#111525;border:1px solid #242941;border-radius:16px;padding:16px}.projects-summary span{display:block;color:#8f95aa;font-size:12px;margin-bottom:7px}.projects-summary strong{font-size:20px}
.projects-toolbar{display:flex;justify-content:space-between;align-items:center;margin:10px 0 14px;color:#858ca2;font-size:12px}.projects-toolbar button{background:#151a2c;border:1px solid #2b3148;color:#dce0ec;padding:8px 13px;border-radius:9px;cursor:pointer}
.projects-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.project-card{background:#111525;border:1px solid #232940;border-radius:16px;padding:17px}.project-card-top{display:flex;justify-content:space-between;gap:15px;align-items:flex-start}.project-card-top strong{display:block;font-size:16px}.project-card-top small{display:block;color:#7f879d;margin-top:4px}.project-live{font-size:9px;font-weight:800;letter-spacing:.08em;padding:5px 8px;border-radius:99px}.project-live.online{color:#47e6aa;background:rgba(71,230,170,.1)}.project-live.offline{color:#ffca62;background:rgba(255,202,98,.1)}
.project-server{color:#9ca3b8;font-size:12px;margin:13px 0}.project-domains{display:flex;gap:6px;flex-wrap:wrap}.project-domains span{font-size:10px;color:#bac0d2;border:1px solid #2a3048;background:#0d1120;border-radius:999px;padding:5px 8px}.project-agents{margin-top:12px;color:#8f96ab;font-size:11px}.project-card em{display:block;margin-top:12px;color:#6f7690;font-size:9px;font-style:normal;letter-spacing:.08em}
@media(max-width:760px){.projects-summary{grid-template-columns:1fr 1fr}.projects-grid{grid-template-columns:1fr}.projects-overlay{padding:10px}.projects-window{padding:18px}.projects-header h2{font-size:22px}}

/* CELESTE V6 · Ficha completa de proyecto */
.project-card{cursor:pointer;transition:.18s}.project-card:hover,.project-card:focus{transform:translateY(-2px);border-color:rgba(139,92,246,.34);outline:none}
.project-detail{position:fixed;z-index:95;right:0;top:0;height:100vh;width:min(720px,100vw);background:#0b0e19;border-left:1px solid var(--line2);transform:translateX(102%);transition:.25s;overflow:auto;box-shadow:-30px 0 90px rgba(0,0,0,.45)}
.project-detail.open{transform:none}.project-detail header{display:flex;justify-content:space-between;gap:20px;padding:26px;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(11,14,25,.96);backdrop-filter:blur(14px);z-index:2}.project-detail header h2{font-family:Space Grotesk;margin:6px 0;font-size:28px}.project-detail header p{margin:0;color:#858ca3}.project-detail header button{border:0;background:transparent;color:#8d94ad;font-size:30px;cursor:pointer}
.project-detail-body{padding:22px}.project-detail-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.project-detail-summary article{background:#111525;border:1px solid #232940;border-radius:15px;padding:14px}.project-detail-summary span,.project-detail-summary small{display:block;color:#7f879e;font-size:10px}.project-detail-summary strong{display:block;font-size:15px;margin:7px 0 4px;overflow-wrap:anywhere}
.project-detail-section{margin-top:22px}.project-detail-section h3{font-family:Space Grotesk;font-size:15px;margin:0 0 11px}.project-detail-domains{display:grid;grid-template-columns:1fr 1fr;gap:8px}.project-domain-row{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#101421;border:1px solid #22283d;border-radius:11px;padding:10px 12px;font-size:11px}.project-domain-row>span{overflow-wrap:anywhere}.project-domain-row a{color:#9d8bff;text-decoration:none;white-space:nowrap}.project-domain-row small{color:#6f7690}
.project-detail-tags{display:flex;flex-wrap:wrap;gap:8px}.project-detail-tag{padding:8px 10px;border-radius:999px;background:rgba(139,92,246,.09);border:1px solid rgba(139,92,246,.2);font-size:10px;color:#d7d2ff}.project-detail-tag.muted{color:#747b91;border-color:var(--line);background:#11131f}
@media(max-width:620px){.project-detail-summary{grid-template-columns:1fr 1fr}.project-detail-domains{grid-template-columns:1fr}.project-detail-body{padding:16px}}

/* CELESTE V6 · Identidad y Command Center */
:root{--celeste:#65c8ff;--celeste2:#d7f1ff;--celeste3:#0b2a46;--violet:#55b8ff;--violet2:#2e8ed4;--cyan:#7ad9ff;--line2:rgba(101,200,255,.24)}
body{background:#040914}.app-bg{background:radial-gradient(circle at 78% 8%,rgba(61,145,211,.18),transparent 28%),radial-gradient(circle at 45% 36%,rgba(62,183,255,.08),transparent 25%),linear-gradient(180deg,#06101d 0%,#030711 100%)}
.shell{grid-template-columns:260px 1fr}aside{background:linear-gradient(180deg,rgba(4,10,20,.96),rgba(3,8,16,.92));border-right:1px solid rgba(101,200,255,.10);box-shadow:18px 0 55px rgba(0,0,0,.18)}
.brand{gap:12px;padding:0 8px 30px;font-size:15px;letter-spacing:.24em}.brand-mark{width:45px;height:45px;border-radius:14px;background:linear-gradient(145deg,#0a1a2c,#07111f);border:1px solid rgba(101,200,255,.2);box-shadow:0 10px 30px rgba(25,139,217,.2);overflow:hidden}
.brand-mark img{width:100%;height:100%;display:block;padding:4px;object-fit:contain}.brand span small{font-size:8px;letter-spacing:.16em;color:#71869d;margin-top:5px}
nav a{border-radius:11px;color:#8292a7}nav a:hover{background:rgba(101,200,255,.045)}nav a.active{background:linear-gradient(90deg,rgba(52,153,225,.18),rgba(20,77,119,.05));border-color:rgba(101,200,255,.2);box-shadow:inset 3px 0 0 #61c7ff;color:#fff}nav a.active span{color:#72d1ff}
main{max-width:1680px;padding:26px 32px 60px}.topbar{margin-bottom:20px}.eyebrow,.micro{color:#69c9ff}.topbar h1{font-size:26px;letter-spacing:.01em}.live,.clock{background:rgba(6,16,29,.78);border-color:rgba(101,200,255,.10)}
.primary{background:linear-gradient(135deg,#58c6ff,#167ac2);box-shadow:0 10px 32px rgba(37,152,226,.28);border:1px solid rgba(185,232,255,.22);text-shadow:0 1px 8px rgba(0,0,0,.2)}
.hero-command{min-height:330px;padding:42px 44px;border-radius:24px;border:1px solid rgba(101,200,255,.18);background:linear-gradient(105deg,rgba(6,18,34,.98) 0%,rgba(8,23,42,.92) 44%,rgba(5,14,27,.55) 72%,rgba(5,14,27,.88) 100%);box-shadow:0 24px 75px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.025)}
.hero-command:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(90deg,rgba(0,0,0,.45),transparent 66%);pointer-events:none}
.hero-copy{width:min(640px,58%);z-index:3}.hero-brandline{display:flex;align-items:center;gap:10px;color:#8ed8ff;font-size:10px;letter-spacing:.22em;font-weight:800}.hero-brandline img{width:35px;height:35px}.hero-command h2{font-size:48px;line-height:1.02;letter-spacing:-.045em;margin:16px 0 14px}.hero-command h2 em{background:linear-gradient(90deg,#f7fbff 0%,#b9e6ff 43%,#62c9ff 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero-manifesto{font-size:13px!important;letter-spacing:.06em;text-transform:uppercase;color:#8fa8bf!important;margin:0 0 22px!important}.hero-chips span{border-color:rgba(101,200,255,.13);background:rgba(101,200,255,.04);color:#9fb3c9}.hero-statusline{display:flex;align-items:center;gap:10px;margin-top:22px}.hero-statusline>i{width:9px;height:9px;border-radius:50%;background:#35df9e;box-shadow:0 0 18px rgba(53,223,158,.9)}.hero-statusline strong{display:block;font-size:12px;letter-spacing:.06em}.hero-statusline small{display:block;margin-top:4px;color:#6e8197;font-size:10px}
.hero-visual{position:absolute;right:0;top:0;width:48%;height:100%;overflow:hidden}.planet-glow{position:absolute;width:520px;height:520px;border-radius:50%;right:-120px;top:72px;background:radial-gradient(circle at 35% 25%,#2d78a8 0 3%,#0d365a 18%,#071a30 48%,#030a13 70%);box-shadow:-40px -20px 80px rgba(64,183,255,.16),inset 18px 22px 60px rgba(105,206,255,.18),0 0 0 1px rgba(123,205,255,.11)}
.planet-glow:before{content:"";position:absolute;inset:-4px;border-radius:50%;border:2px solid rgba(121,211,255,.15);box-shadow:0 0 26px rgba(91,192,255,.38)}.planet-glow:after{content:"";position:absolute;inset:15% 12%;border-radius:50%;background:radial-gradient(circle at 20% 30%,rgba(100,209,255,.8) 0 1px,transparent 2px),radial-gradient(circle at 60% 18%,rgba(255,255,255,.65) 0 1px,transparent 2px),radial-gradient(circle at 74% 55%,rgba(97,202,255,.6) 0 1px,transparent 2px),radial-gradient(circle at 45% 75%,rgba(97,202,255,.45) 0 1px,transparent 2px);background-size:38px 38px,52px 52px,44px 44px,60px 60px;opacity:.75}
.planet-grid{position:absolute;right:-30px;bottom:-2px;width:560px;height:160px;background:linear-gradient(180deg,transparent,rgba(18,82,125,.09));border-top:1px solid rgba(101,200,255,.1);transform:perspective(380px) rotateX(64deg);transform-origin:bottom}
.hero-emblem{position:absolute;right:28%;top:46%;width:104px;height:104px;border-radius:28px;background:rgba(2,10,19,.72);border:1px solid rgba(101,200,255,.2);backdrop-filter:blur(8px);box-shadow:0 20px 70px rgba(0,0,0,.36),0 0 35px rgba(61,170,235,.18);display:grid;place-items:center}.hero-emblem img{width:86px;height:86px}
.visual-orbit{position:absolute;border:1px solid rgba(101,200,255,.10);border-radius:50%}.orbit-a1{width:360px;height:360px;right:22px;top:-54px}.orbit-a2{width:270px;height:270px;right:68px;top:-8px}.signal{position:absolute;width:7px;height:7px;border-radius:50%;background:#73d6ff;box-shadow:0 0 15px #55c6ff}.signal-one{right:39%;top:25%}.signal-two{right:18%;top:39%}.signal-three{right:44%;top:74%}
.metrics{gap:14px;margin-top:14px;margin-bottom:14px}.metrics article,.panel{background:linear-gradient(180deg,rgba(9,22,39,.88),rgba(6,15,28,.9));border-color:rgba(101,200,255,.10);box-shadow:inset 0 1px 0 rgba(255,255,255,.025),0 14px 30px rgba(0,0,0,.10)}.metrics article{position:relative;overflow:hidden;padding:21px 21px}.metrics article:after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:linear-gradient(90deg,#57c9ff,transparent);opacity:.45}.metric-top{color:#8296aa}.metric-top i{color:#41617d}.metrics strong{font-size:32px;color:#f6fbff}.metrics small{color:#667a90}
.panel{border-radius:20px}.ph h3{font-size:18px}.agents article{background:linear-gradient(145deg,rgba(11,29,50,.76),rgba(7,18,33,.82));border-color:rgba(101,200,255,.09)}.agents article>b{background:linear-gradient(135deg,rgba(62,167,235,.32),rgba(30,95,142,.24));border:1px solid rgba(101,200,255,.12)}
.timeline p:before{background:#63c9ff;box-shadow:0 0 12px rgba(99,201,255,.8)}meter::-webkit-meter-optimum-value{background:linear-gradient(90deg,#2d93d4,#77d9ff)}
.systems-window,.projects-window{background:linear-gradient(180deg,#071522,#050e19);border-color:rgba(101,200,255,.18)}.system-card,.server-card,.project-card,.projects-summary article,.platform-summary article{background:linear-gradient(145deg,rgba(10,28,48,.92),rgba(6,17,31,.95));border-color:rgba(101,200,255,.10)}
.project-card:hover{transform:translateY(-2px);border-color:rgba(101,200,255,.28);box-shadow:0 15px 40px rgba(0,0,0,.22)}.project-card{transition:.2s ease}.projects-header h2,.systems-header h2{letter-spacing:-.02em}
.drawer,.task-detail{background:#06101d;border-color:rgba(101,200,255,.18)}.drawer input{background:#081626;border-color:rgba(101,200,255,.12)}.drawer footer button{background:linear-gradient(135deg,#58c6ff,#167ac2)}
@media(max-width:1150px){.hero-command h2{font-size:40px}.hero-copy{width:62%}.hero-visual{width:44%}}
@media(max-width:850px){.shell{grid-template-columns:1fr}.hero-command{min-height:420px;padding:30px}.hero-copy{width:100%;max-width:620px}.hero-visual{opacity:.38;width:100%;height:100%}.hero-command h2{font-size:38px}.hero-emblem{right:9%;top:58%}}
@media(max-width:560px){.hero-command{min-height:430px;padding:24px}.hero-command h2{font-size:34px}.hero-brandline span{font-size:8px}.hero-emblem{width:78px;height:78px}.hero-emblem img{width:64px;height:64px}.planet-glow{right:-280px;top:120px}.brand{padding-bottom:20px}}

/* CELESTE V7 · Login móvil con identidad propia */
.login-mobile-brand{display:none}
@media(max-width:1150px){.login-shell{display:flex;justify-content:center;align-items:center;min-height:100svh;max-width:none;padding:24px}.login-branding{display:none}.login-card{width:min(560px,100%);margin:0 auto}}
@media(max-width:560px){.login-body{overflow:auto;background:radial-gradient(circle at 18% 14%,rgba(42,106,180,.18),transparent 34%),radial-gradient(circle at 80% 82%,rgba(34,211,238,.07),transparent 28%),#050811}.login-shell{min-height:100svh;padding:18px 16px 28px;align-items:flex-start}.login-card{margin-top:max(18px,env(safe-area-inset-top));padding:20px 18px 18px;border-radius:24px}.login-mobile-brand{display:flex;align-items:center;justify-content:center;gap:13px;margin:0 0 22px;padding:2px 0 18px;border-bottom:1px solid rgba(255,255,255,.07);text-align:left}.login-mobile-brand img{width:58px;height:58px;filter:drop-shadow(0 0 18px rgba(83,188,255,.32))}.login-mobile-brand strong{display:block;font-family:Space Grotesk,sans-serif;font-size:22px;letter-spacing:.24em;font-weight:600}.login-mobile-brand span{display:block;margin-top:6px;max-width:220px;color:#7f93ac;font-size:8px;line-height:1.45;letter-spacing:.15em}.login-card-top{margin-bottom:20px}.login-card h2{font-size:29px}.login-card-top p{font-size:12px}.login-card label{font-size:11px}.login-card input{padding:15px 14px;font-size:16px}.primary-login{min-height:54px;font-size:16px;margin-top:16px}.login-foot{margin-top:18px}.login-orbit{opacity:.55}.orbit-a{width:460px;height:460px;left:-270px;top:-180px}.orbit-b{width:380px;height:380px;right:-230px;bottom:-140px}}

/* CELESTE V8 · cierre de sesión móvil */
.mobile-logout{display:none}
@media(max-width:850px){
  aside{position:sticky;top:0;z-index:70;padding:14px 14px 12px;background:rgba(5,10,20,.94);backdrop-filter:blur(18px)}
  .brand{padding:0 96px 12px 4px}
  .mobile-logout{display:flex;position:absolute;right:14px;top:14px;align-items:center;gap:7px;border:1px solid rgba(94,185,255,.26);background:rgba(13,28,45,.84);color:#dcecff;border-radius:11px;padding:9px 11px;font-size:11px;font-weight:700;cursor:pointer;box-shadow:0 8px 24px rgba(0,0,0,.22)}
  .mobile-logout:active{transform:translateY(1px);background:rgba(25,54,84,.95)}
}
@media(max-width:430px){.mobile-logout span{display:none}.mobile-logout{width:42px;height:42px;justify-content:center;padding:0;font-size:18px;border-radius:12px}}

/* CELESTE V9 Connector Hub */
.connectors-overlay{position:fixed;inset:0;background:rgba(4,6,16,.84);backdrop-filter:blur(10px);z-index:88;display:none;align-items:center;justify-content:center;padding:24px}.connectors-overlay.open{display:flex}
.connectors-window{width:min(1040px,96vw);max-height:90vh;overflow:auto;background:linear-gradient(180deg,#071522,#050e19);border:1px solid rgba(101,200,255,.18);border-radius:24px;box-shadow:0 30px 90px rgba(0,0,0,.5);padding:28px}
.connectors-header{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}.connectors-header h2{margin:4px 0 6px;font-size:28px}.connectors-header p{margin:0;color:#9096aa}.connectors-header button{border:1px solid #252a3d;background:#141829;color:#fff;border-radius:12px;width:40px;height:40px;font-size:24px;cursor:pointer}
.connectors-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:24px 0}.connectors-summary article,.connector-card{background:linear-gradient(145deg,rgba(10,28,48,.92),rgba(6,17,31,.95));border:1px solid rgba(101,200,255,.10);border-radius:16px;padding:16px}
.connectors-summary span{display:block;color:#8f95aa;font-size:12px;margin-bottom:7px}.connectors-summary strong{font-size:18px}.connectors-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.connector-card>div{display:flex;justify-content:space-between;gap:14px;align-items:center}.connector-card strong{font-size:15px}.connector-card p{color:#969caf;font-size:12px;line-height:1.55}.connector-card small{display:block;color:#707b93;margin-bottom:13px}
.connector-action{border:1px solid rgba(101,200,255,.24);background:rgba(40,143,205,.12);color:#d8efff;border-radius:10px;padding:9px 12px;cursor:pointer;font-weight:700}.connector-action:hover{background:rgba(40,143,205,.22)}
@media(max-width:760px){.connectors-summary{grid-template-columns:1fr}.connectors-grid{grid-template-columns:1fr}.connectors-overlay{padding:10px}.connectors-window{padding:18px}.connectors-header h2{font-size:22px}}

/* CELESTE V9 · Connector Hub */
.connectors-overlay{position:fixed;inset:0;background:rgba(4,6,16,.84);backdrop-filter:blur(10px);z-index:88;display:none;align-items:center;justify-content:center;padding:24px}
.connectors-overlay.open{display:flex}
.connectors-window{width:min(980px,96vw);max-height:91vh;overflow:auto;background:linear-gradient(180deg,#071522,#050e19);border:1px solid rgba(101,200,255,.18);border-radius:24px;box-shadow:0 30px 90px rgba(0,0,0,.5);padding:28px}
.connectors-header{display:flex;justify-content:space-between;gap:24px;align-items:flex-start}
.connectors-header h2{margin:4px 0 6px;font-size:28px}
.connectors-header p{margin:0;color:#9096aa}
.connectors-header button{border:1px solid #252a3d;background:#141829;color:#fff;border-radius:12px;width:40px;height:40px;font-size:24px;cursor:pointer}
.connectors-toolbar{display:flex;justify-content:space-between;align-items:center;margin:24px 0 14px;color:#858ca2;font-size:12px}
.connectors-toolbar button{background:#151a2c;border:1px solid #2b3148;color:#dce0ec;padding:8px 13px;border-radius:9px;cursor:pointer}
.connectors-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.connector-card{background:linear-gradient(145deg,rgba(10,28,48,.92),rgba(6,17,31,.95));border:1px solid rgba(101,200,255,.10);border-radius:16px;padding:18px}
.connector-card>div{display:flex;justify-content:space-between;gap:15px;align-items:center}
.connector-card strong{font-size:15px}.connector-card p{color:#969caf;font-size:13px;line-height:1.55}
.connector-card small{display:block;color:#6f7890;font-size:10px;line-height:1.55;margin-bottom:15px}
.connector-card button{border:1px solid rgba(101,200,255,.18);background:rgba(101,200,255,.07);color:#b8dcf3;border-radius:10px;padding:9px 12px;cursor:pointer}
.connector-card button:disabled{opacity:.55;cursor:not-allowed}
@media(max-width:760px){.connectors-grid{grid-template-columns:1fr}.connectors-overlay{padding:10px}.connectors-window{padding:18px}.connectors-header h2{font-size:22px}}
