:root {
  --atlas2-bg:#0b1625;
  --atlas2-surface:#122338;
  --atlas2-surface-2:#172b42;
  --atlas2-surface-3:#1c334d;
  --atlas2-text:#eef4fb;
  --atlas2-muted:#a8b7c8;
  --atlas2-line:#29425e;
  --atlas2-accent:#29b7a9;
  --atlas2-accent-2:#5eead4;
  --atlas2-success:#2fb86a;
  --atlas2-warning:#e0c92f;
  --atlas2-danger:#e6473b;
  --atlas2-shadow:0 14px 36px rgba(0,0,0,.30);
  --atlas2-radius:14px;
}

body.atlas2-public,
.atlas2-auth-page {
  min-height:100vh;
  background:
    radial-gradient(circle at 10% 12%, rgba(41,183,169,.14), transparent 30%),
    radial-gradient(circle at 88% 76%, rgba(68,112,181,.16), transparent 34%),
    linear-gradient(145deg,#07111e 0%,#0b1828 48%,#08121f 100%);
  color:var(--atlas2-text);
}

/* Shell premium overrides */
[data-bs-theme="dark"] {
  --app-bg:var(--atlas2-bg);
  --app-card-bg:var(--atlas2-surface);
  --app-text:var(--atlas2-text);
  --app-text-muted:var(--atlas2-muted);
  --app-border:var(--atlas2-line);
  --app-input-bg:var(--atlas2-surface-2);
  --app-hover:var(--atlas2-surface-3);
  --sidebar-bg:#07111e;
  --sidebar-text:#b8c7d8;
  --sidebar-border:#1b324b;
  --sidebar-hover:rgba(41,183,169,.09);
  --header-bg:#0d1c2d;
  --header-border:#203a55;
  --primary:var(--atlas2-accent);
}

body { background:var(--app-bg); }
#app-sidebar { background:linear-gradient(180deg,#06101c 0%,#0b1b2d 100%) !important; border-right:1px solid var(--atlas2-line); }
#app-content-col > header { background:rgba(13,28,45,.96) !important; backdrop-filter:blur(12px); }
#page-content { padding:1.5rem 1.65rem 3rem !important; }
.atlas2-brand-mark { width:42px;height:42px;border-radius:12px;background:linear-gradient(145deg,var(--atlas2-accent),var(--atlas2-accent-2));color:#05231f;display:grid;place-items:center;font-weight:900;box-shadow:0 8px 20px rgba(41,183,169,.24); }
.atlas2-conn-pill { display:inline-flex;align-items:center;gap:.45rem;margin-right:auto;padding:.4rem .75rem;border:1px solid rgba(47,184,106,.28);background:rgba(47,184,106,.08);border-radius:999px;color:#7ee7a7;font-size:.72rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase; }
.atlas2-conn-pill i { width:7px;height:7px;border-radius:50%;background:var(--atlas2-success);box-shadow:0 0 0 4px rgba(47,184,106,.12); }

/* Dashboard */
.atlas2-dashboard { max-width:1500px;margin:0 auto;animation:atlas2Fade .25s ease; }
@keyframes atlas2Fade { from{opacity:0;transform:translateY(6px)} to{opacity:1;transform:none} }
.atlas2-page-head { display:flex;justify-content:space-between;gap:1rem;align-items:flex-start;margin-bottom:1.25rem; }
.atlas2-page-head h1 { margin:.25rem 0 .35rem;font-size:clamp(1.8rem,3vw,2.65rem);letter-spacing:-.035em;font-weight:800;color:var(--atlas2-text); }
.atlas2-page-head p { margin:0;color:var(--atlas2-muted);font-size:.92rem; }
.atlas2-eyebrow { color:var(--atlas2-accent-2);font-size:.68rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase; }
.atlas2-head-actions { display:flex;gap:.65rem;align-items:center;flex-wrap:wrap;justify-content:flex-end; }
.atlas2-demo-badge,.atlas2-chip { display:inline-flex;align-items:center;gap:.4rem;border:1px solid var(--atlas2-line);background:var(--atlas2-surface-2);padding:.42rem .7rem;border-radius:999px;font-size:.7rem;font-weight:800;color:var(--atlas2-muted); }
.atlas2-demo-badge { color:#8ee9dd;border-color:rgba(41,183,169,.28);background:rgba(41,183,169,.08); }
.atlas2-secondary-btn,.atlas2-text-btn,.atlas2-icon-btn { border:1px solid var(--atlas2-line);background:var(--atlas2-surface-2);color:var(--atlas2-text);border-radius:10px;cursor:pointer;font-weight:700; }
.atlas2-secondary-btn { padding:.52rem .8rem;display:inline-flex;align-items:center;gap:.45rem; }
.atlas2-text-btn { border:none;background:transparent;color:var(--atlas2-accent-2);padding:.35rem .2rem; }
.atlas2-icon-btn { width:36px;height:36px;display:grid;place-items:center;margin-left:auto; }

.atlas2-metrics { display:grid;gap:.85rem;margin-bottom:1rem; }
.atlas2-metrics-4 { grid-template-columns:repeat(4,minmax(0,1fr)); }
.atlas2-metric-card { position:relative;overflow:hidden;background:linear-gradient(145deg,var(--atlas2-surface),#102033);border:1px solid var(--atlas2-line);border-radius:var(--atlas2-radius);box-shadow:var(--atlas2-shadow);padding:1.05rem 1.15rem;min-height:148px; }
.atlas2-metric-card::after { content:"";position:absolute;width:110px;height:110px;border-radius:50%;right:-52px;bottom:-62px;background:rgba(41,183,169,.055); }
.atlas2-metric-icon { width:38px;height:38px;border-radius:10px;display:grid;place-items:center;background:rgba(41,183,169,.10);border:1px solid rgba(41,183,169,.18);color:var(--atlas2-accent-2);margin-bottom:.65rem; }
.atlas2-metric-value { font-size:1.8rem;font-weight:850;letter-spacing:-.04em;line-height:1;color:#fff; }
.atlas2-metric-label { font-size:.78rem;font-weight:800;color:#dce8f5;margin-top:.4rem; }
.atlas2-metric-hint { font-size:.67rem;color:var(--atlas2-muted);margin-top:.2rem; }

.atlas2-page-grid { display:grid;grid-template-columns:minmax(0,1.35fr) minmax(320px,.8fr);gap:1rem; }
.atlas2-panel { background:var(--atlas2-surface);border:1px solid var(--atlas2-line);border-radius:var(--atlas2-radius);box-shadow:var(--atlas2-shadow);padding:1.05rem 1.15rem;min-width:0; }
.atlas2-panel-spaced { margin-top:1rem; }
.atlas2-panel-head { display:flex;justify-content:space-between;align-items:flex-start;gap:.75rem;margin-bottom:.95rem; }
.atlas2-panel-head span:first-child { font-size:.62rem;font-weight:850;letter-spacing:.10em;color:var(--atlas2-muted); }
.atlas2-panel-head h3 { margin:.22rem 0 0;font-size:1rem;font-weight:800;color:var(--atlas2-text); }
.atlas2-live { display:inline-flex;align-items:center;gap:.4rem;color:#78e4a4;font-size:.66rem !important;font-weight:850;letter-spacing:.06em; }
.atlas2-live i { width:7px;height:7px;border-radius:50%;background:var(--atlas2-success);box-shadow:0 0 0 4px rgba(47,184,106,.12); }

.atlas2-activity-list,.atlas2-service-list,.atlas2-progress-list { display:flex;flex-direction:column;gap:.15rem; }
.atlas2-activity-item { display:grid;grid-template-columns:42px 34px minmax(0,1fr);align-items:center;gap:.55rem;padding:.58rem 0;border-bottom:1px solid rgba(41,66,94,.75); }
.atlas2-activity-item:last-child { border-bottom:0; }
.atlas2-activity-time { color:var(--atlas2-muted);font-size:.67rem;font-variant-numeric:tabular-nums; }
.atlas2-activity-icon { width:30px;height:30px;border-radius:9px;background:var(--atlas2-surface-2);display:grid;place-items:center;color:var(--atlas2-accent-2); }
.atlas2-activity-item strong,.atlas2-activity-item span { display:block; }
.atlas2-activity-item strong { font-size:.75rem;color:#e7f0fa; }
.atlas2-activity-item span { font-size:.66rem;color:var(--atlas2-muted);margin-top:.1rem; }

.atlas2-service-row { display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:.66rem 0;border-bottom:1px solid rgba(41,66,94,.75); }
.atlas2-service-row:last-child { border-bottom:0; }
.atlas2-service-row > div { display:flex;align-items:center;gap:.55rem;min-width:0; }
.atlas2-service-row > div:last-child { display:block;text-align:right; }
.atlas2-service-row strong { font-size:.76rem; }
.atlas2-service-row span { font-size:.7rem;color:#7ee7a7; }
.atlas2-service-row small { display:block;color:var(--atlas2-muted);font-size:.62rem;margin-top:.12rem; }
.atlas2-status-dot { width:8px;height:8px;border-radius:50%;display:inline-block;background:var(--atlas2-success);box-shadow:0 0 0 3px rgba(47,184,106,.12); }

.atlas2-direction-row,.atlas2-team-row { display:flex;align-items:center;gap:.7rem;padding:.65rem 0;border-bottom:1px solid rgba(41,66,94,.75); }
.atlas2-direction-row:last-child,.atlas2-team-row:last-child { border-bottom:0; }
.atlas2-direction-row > div:first-child,.atlas2-team-row > div:nth-child(2) { flex:1;min-width:0; }
.atlas2-direction-row strong,.atlas2-team-row strong { display:block;font-size:.76rem;color:#e6eef8; }
.atlas2-direction-row small,.atlas2-team-row small { display:block;font-size:.64rem;color:var(--atlas2-muted);margin-top:.1rem; }
.atlas2-direction-value { font-size:1.05rem;font-weight:850;color:#fff; }
.atlas2-avatar { width:34px;height:34px;border-radius:10px;background:linear-gradient(145deg,#21445e,#1b6b68);display:grid;place-items:center;font-size:.7rem;font-weight:850;color:#dffbf6;flex-shrink:0; }
.atlas2-team-row > span { font-size:.75rem;font-weight:800;color:var(--atlas2-accent-2); }

.atlas2-channel-stat { display:grid;grid-template-columns:62px 35px minmax(0,1fr);gap:.55rem;align-items:center;margin:.7rem 0; }
.atlas2-channel-stat span,.atlas2-channel-stat strong { font-size:.72rem; }
.atlas2-channel-stat > div { height:8px;background:var(--atlas2-surface-3);border-radius:999px;overflow:hidden; }
.atlas2-channel-stat > div i { display:block;height:100%;background:linear-gradient(90deg,var(--atlas2-accent),var(--atlas2-accent-2));border-radius:999px; }
.atlas2-license-box { margin-top:1rem;padding:.85rem;border:1px solid var(--atlas2-line);background:var(--atlas2-surface-2);border-radius:12px;display:grid;grid-template-columns:1fr auto;align-items:end; }
.atlas2-license-box span { color:var(--atlas2-muted);font-size:.68rem; }
.atlas2-license-box strong { grid-row:1 / span 2;grid-column:2;font-size:1.4rem;color:#fff; }
.atlas2-license-box small { font-size:.62rem;color:var(--atlas2-accent-2); }

.atlas2-progress-row { padding:.62rem 0;border-bottom:1px solid rgba(41,66,94,.75); }
.atlas2-progress-row:last-child { border-bottom:0; }
.atlas2-progress-head { display:flex;justify-content:space-between;gap:.6rem;font-size:.72rem; }
.atlas2-progress-head strong { color:var(--atlas2-accent-2); }
.atlas2-progress-track { height:7px;background:var(--atlas2-surface-3);border-radius:999px;overflow:hidden;margin:.4rem 0; }
.atlas2-progress-track span { display:block;height:100%;background:linear-gradient(90deg,var(--atlas2-accent),var(--atlas2-accent-2));border-radius:999px; }
.atlas2-progress-row small { color:var(--atlas2-muted);font-size:.63rem; }

.atlas2-alert-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem; }
.atlas2-alert { display:flex;gap:.6rem;padding:.75rem;border:1px solid var(--atlas2-line);background:var(--atlas2-surface-2);border-radius:12px; }
.atlas2-alert > i { margin-top:.1rem; }
.atlas2-alert.warning > i { color:#f3d95a; }.atlas2-alert.success > i { color:#75e2a0; }.atlas2-alert.info > i { color:#7cc8ff; }
.atlas2-alert strong,.atlas2-alert small { display:block; }.atlas2-alert strong { font-size:.72rem; }.atlas2-alert small { color:var(--atlas2-muted);font-size:.64rem;margin-top:.15rem; }

.atlas2-audit-cards { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem; }
.atlas2-audit-card { appearance:none;text-align:left;border:1px solid var(--atlas2-line);background:var(--atlas2-surface-2);color:var(--atlas2-text);border-radius:12px;padding:.85rem;cursor:pointer;transition:.16s ease; }
.atlas2-audit-card:hover { transform:translateY(-2px);border-color:rgba(41,183,169,.5); }
.atlas2-audit-top { display:flex;justify-content:space-between;gap:.5rem;align-items:center;font-size:.66rem;color:var(--atlas2-muted); }
.atlas2-audit-card > strong { display:block;font-size:.82rem;margin:.55rem 0 .1rem; }.atlas2-audit-card > small { display:block;color:var(--atlas2-muted);font-size:.64rem; }
.atlas2-badge { padding:.22rem .45rem;border-radius:999px;background:rgba(41,183,169,.10);color:#77dfd2;font-size:.58rem; }
.atlas2-audit-meta { display:flex;gap:.7rem;color:var(--atlas2-muted);font-size:.62rem;margin-top:.45rem; }.atlas2-audit-meta span:last-child { margin-left:auto;color:#fff;font-weight:800; }.atlas2-audit-meta i { margin-right:.22rem; }

.atlas2-quick-grid { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem; }
.atlas2-quick-action { display:grid;grid-template-columns:38px minmax(0,1fr) auto;gap:.65rem;align-items:center;text-align:left;border:1px solid var(--atlas2-line);background:var(--atlas2-surface-2);color:var(--atlas2-text);border-radius:12px;padding:.8rem;cursor:pointer;transition:.16s ease; }
.atlas2-quick-action:hover { transform:translateY(-2px);border-color:rgba(41,183,169,.5); }
.atlas2-quick-action > span { width:36px;height:36px;border-radius:10px;background:rgba(41,183,169,.10);display:grid;place-items:center;color:var(--atlas2-accent-2); }.atlas2-quick-action strong,.atlas2-quick-action small { display:block; }.atlas2-quick-action strong { font-size:.73rem; }.atlas2-quick-action small { color:var(--atlas2-muted);font-size:.62rem;margin-top:.1rem; }
.atlas2-quick-action > i { color:var(--atlas2-muted); }

.atlas2-next-meeting { display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:.7rem;align-items:center;padding:.8rem;background:var(--atlas2-surface-2);border:1px solid var(--atlas2-line);border-radius:12px; }
.atlas2-next-meeting > i { width:40px;height:40px;border-radius:10px;background:rgba(41,183,169,.10);display:grid;place-items:center;color:var(--atlas2-accent-2); }.atlas2-next-meeting strong,.atlas2-next-meeting span { display:block; }.atlas2-next-meeting strong { font-size:.75rem; }.atlas2-next-meeting span { color:var(--atlas2-muted);font-size:.64rem;margin-top:.1rem; }.atlas2-next-meeting button { border:0;background:linear-gradient(135deg,var(--atlas2-accent),var(--atlas2-accent-2));color:#05231f;border-radius:9px;padding:.45rem .65rem;font-weight:800;font-size:.68rem; }

@media (max-width:1100px) {
  .atlas2-metrics-4 { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .atlas2-page-grid { grid-template-columns:1fr; }
  .atlas2-quick-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .atlas2-audit-cards { grid-template-columns:1fr; }
  .atlas2-alert-grid { grid-template-columns:1fr; }
}
@media (max-width:640px) {
  #page-content { padding:1rem !important; }
  .atlas2-page-head { flex-direction:column; }
  .atlas2-head-actions { width:100%;justify-content:space-between; }
  .atlas2-metrics-4,.atlas2-quick-grid { grid-template-columns:1fr; }
  .atlas2-metric-card { min-height:124px; }
  .atlas2-next-meeting { grid-template-columns:38px minmax(0,1fr); }.atlas2-next-meeting button { grid-column:1/-1;width:100%; }
}

/* ATLAS 2.0 — tablas responsivas reutilizadas del framework Elections */
.table-responsive { width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
.table-responsive table { min-width:560px; }
.table-cards { display:none; flex-direction:column; gap:.65rem; }
.table-card { background:var(--atlas2-surface-2); border:1px solid var(--atlas2-line); border-radius:12px; padding:.8rem .9rem; }
.table-card-actions { display:flex; flex-wrap:wrap; gap:.5rem; margin-bottom:.65rem; }
.table-card-row { display:flex; justify-content:space-between; align-items:baseline; gap:.75rem; padding:.38rem 0; border-bottom:1px solid rgba(41,66,94,.75); font-size:.78rem; }
.table-card-row:last-child { border-bottom:none; }
.table-card-label { color:var(--atlas2-muted); font-size:.62rem; font-weight:800; text-transform:uppercase; letter-spacing:.04em; flex-shrink:0; }
.table-card-value { text-align:right; font-weight:650; color:var(--atlas2-text); word-break:break-word; }
.table-card-message { text-align:center; color:var(--atlas2-muted); padding:1rem; }
@media (max-width:640px) {
  .table-responsive.has-cards { display:none; }
  .table-cards.active { display:flex; }
}

/* ═══════════════════════════════════════════════════════════════════════════
   ATLAS 2.0 — UX unificada (dark-only + loader + widgets de propuesta)
   ═══════════════════════════════════════════════════════════════════════════ */
html[data-bs-theme="dark"], body {
  color-scheme: dark;
}

.atlas2-sidebar-footer {
  min-height:64px;
  padding:.8rem .95rem;
  border-top:1px solid var(--sidebar-border);
  display:flex;
  align-items:center;
  gap:.65rem;
  overflow:hidden;
}
.atlas2-sidebar-status-dot {
  width:9px;
  height:9px;
  border-radius:50%;
  background:var(--atlas2-success);
  box-shadow:0 0 0 4px rgba(47,184,106,.12);
  flex:0 0 auto;
}
.atlas2-sidebar-footer strong,.atlas2-sidebar-footer small { display:block;white-space:nowrap; }
.atlas2-sidebar-footer strong { color:#e9f3fc;font-size:.73rem;letter-spacing:.04em; }
.atlas2-sidebar-footer small { color:#7890a8;font-size:.61rem;margin-top:.1rem; }

/* Loader global ATLAS: un único círculo, sin tarjeta ni texto. */
.loader {
  position:fixed !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  background:rgba(3,10,18,.44) !important;
  backdrop-filter:blur(1.5px);
  justify-content:center !important;
  align-items:center !important;
  z-index:20000 !important;
}
.loader .spinner,
.atlas-only-spinner {
  width:48px !important;
  height:48px !important;
  border:4px solid rgba(94,234,212,.18) !important;
  border-top-color:var(--atlas2-accent-2) !important;
  border-radius:50% !important;
  background:transparent !important;
  box-shadow:0 0 24px rgba(41,183,169,.12);
  animation:spin .72s linear infinite !important;
}

.atlas2-panel-spaced-sm { margin-top:.35rem;margin-bottom:1rem; }
.atlas2-compact-grid {
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:.7rem;
}
.atlas2-compact-card {
  min-width:0;
  display:flex;
  align-items:center;
  gap:.65rem;
  padding:.75rem .8rem;
  background:linear-gradient(145deg,#102033,var(--atlas2-surface));
  border:1px solid var(--atlas2-line);
  border-radius:12px;
  box-shadow:0 10px 24px rgba(0,0,0,.18);
}
.atlas2-compact-icon {
  width:34px;height:34px;border-radius:9px;
  display:grid;place-items:center;flex:0 0 auto;
  color:var(--atlas2-accent-2);
  background:rgba(41,183,169,.09);
  border:1px solid rgba(41,183,169,.14);
}
.atlas2-compact-card strong,.atlas2-compact-card span,.atlas2-compact-card small { display:block; }
.atlas2-compact-card strong { color:#fff;font-size:1rem;line-height:1.05; }
.atlas2-compact-card span { color:#dbe9f6;font-size:.66rem;font-weight:750;margin-top:.18rem; }
.atlas2-compact-card small { color:var(--atlas2-muted);font-size:.57rem;margin-top:.12rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis; }

.atlas2-metric-card.is-accent .atlas2-metric-icon { color:#67f2df;background:rgba(41,183,169,.14); }
.atlas2-metric-card.is-warning .atlas2-metric-icon { color:#f1d75a;background:rgba(224,201,47,.10);border-color:rgba(224,201,47,.20); }
.atlas2-metric-card.is-success .atlas2-metric-icon { color:#76e7a4;background:rgba(47,184,106,.10);border-color:rgba(47,184,106,.20); }
.atlas2-metric-card.is-danger .atlas2-metric-icon { color:#ff8d83;background:rgba(230,71,59,.10);border-color:rgba(230,71,59,.20); }

.atlas2-directions-scroll { max-height:390px;overflow:auto;padding-right:.25rem; }
.atlas2-control-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin-bottom:.85rem; }
.atlas2-donut-wrap { display:grid;place-items:center;padding:.45rem; }
.atlas2-donut {
  --atlas2-pct:50;
  width:132px;height:132px;border-radius:50%;
  display:grid;place-items:center;
  background:conic-gradient(var(--atlas2-accent-2) calc(var(--atlas2-pct) * 1%), var(--atlas2-surface-3) 0);
  position:relative;
  box-shadow:0 0 0 1px rgba(94,234,212,.08), inset 0 0 28px rgba(0,0,0,.18);
}
.atlas2-donut::after { content:"";position:absolute;inset:12px;border-radius:50%;background:#102136;border:1px solid var(--atlas2-line); }
.atlas2-donut > div { position:relative;z-index:1;text-align:center; }
.atlas2-donut strong,.atlas2-donut span { display:block; }
.atlas2-donut strong { color:#fff;font-size:1.35rem; }
.atlas2-donut span { color:var(--atlas2-muted);font-size:.61rem;text-transform:uppercase;letter-spacing:.07em;margin-top:.12rem; }
.atlas2-inline-status { display:flex;align-items:center;justify-content:space-between;gap:.8rem;padding:.65rem .75rem;border-top:1px solid rgba(41,66,94,.70);font-size:.68rem; }
.atlas2-inline-status span { color:var(--atlas2-muted); }.atlas2-inline-status i { color:var(--atlas2-accent-2);margin-right:.35rem; }.atlas2-inline-status strong { color:#eaf5ff;font-size:.7rem; }

.atlas2-ops-kpis { display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem;margin-top:.85rem; }
.atlas2-ops-kpis span { padding:.62rem;background:var(--atlas2-surface-2);border:1px solid var(--atlas2-line);border-radius:10px;text-align:center; }
.atlas2-ops-kpis small,.atlas2-ops-kpis strong { display:block; }.atlas2-ops-kpis small { color:var(--atlas2-muted);font-size:.58rem;text-transform:uppercase;letter-spacing:.05em; }.atlas2-ops-kpis strong { color:#fff;font-size:.82rem;margin-top:.16rem; }

.atlas2-meeting-list,.atlas2-call-list { display:flex;flex-direction:column; }
.atlas2-meeting-row,.atlas2-call-row { display:grid;grid-template-columns:34px minmax(0,1fr);gap:.6rem;align-items:center;padding:.62rem 0;border-bottom:1px solid rgba(41,66,94,.72); }
.atlas2-meeting-row:last-child,.atlas2-call-row:last-child { border-bottom:0; }
.atlas2-meeting-icon,.atlas2-call-icon { width:32px;height:32px;border-radius:9px;display:grid;place-items:center;color:var(--atlas2-accent-2);background:var(--atlas2-surface-2);border:1px solid var(--atlas2-line); }
.atlas2-meeting-row strong,.atlas2-meeting-row small,.atlas2-call-row strong,.atlas2-call-row small { display:block; }
.atlas2-meeting-row strong,.atlas2-call-row strong { color:#eaf4fe;font-size:.72rem; }
.atlas2-meeting-row small,.atlas2-call-row small { color:var(--atlas2-muted);font-size:.62rem;margin-top:.12rem; }
.atlas2-call-row { grid-template-columns:34px minmax(0,1fr) auto; }
.atlas2-call-row > div:last-child { text-align:right; }

@media (max-width:1280px) {
  .atlas2-compact-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .atlas2-compact-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .atlas2-control-grid { grid-template-columns:1fr; }
  .atlas2-donut { width:116px;height:116px; }
}
@media (max-width:480px) {
  .atlas2-compact-grid { grid-template-columns:1fr; }
}

/* ATLAS 2.0 — panels secundarios no comprimen alertas en columnas estrechas */
.atlas2-page-grid > .atlas2-panel .atlas2-alert-grid {
  grid-template-columns: 1fr;
}

/* ═══════════════════════════════════════════════════════════════════════════
   ATLAS 2.0 — Entrega 2.1 hardening: tema único, telemetría y vistas por rol
   ═══════════════════════════════════════════════════════════════════════════ */
html, html[data-bs-theme="dark"], body {
  color-scheme: dark;
  background: #071421 !important;
}

/* El producto de propuesta opera en un único tema oscuro. */
#theme-toggle-btn,
.theme-toggle-label,
[data-action="theme-toggle"] { display:none !important; }

.atlas2-bootstrap-error {
  min-height:100vh;display:grid;place-items:center;padding:2rem;background:#071421;color:#eaf5ff;text-align:center;
}
.atlas2-bootstrap-error > div { max-width:560px;padding:2rem;border:1px solid var(--atlas2-line);background:var(--atlas2-surface);border-radius:18px;box-shadow:0 24px 70px rgba(0,0,0,.35); }
.atlas2-bootstrap-error i { font-size:2.2rem;color:var(--atlas2-accent-2); }
.atlas2-bootstrap-error h1 { margin:.8rem 0 .4rem;font-size:1.6rem; }
.atlas2-bootstrap-error p { color:var(--atlas2-muted); }

.atlas2-telemetry-grid { display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.7rem; }
.atlas2-telemetry-card { min-width:0;padding:.8rem .85rem .55rem;border-radius:13px;border:1px solid var(--atlas2-line);background:linear-gradient(155deg,#102238,#0d1b2d);overflow:hidden;position:relative; }
.atlas2-telemetry-head { display:flex;align-items:center;justify-content:space-between;gap:.5rem;color:var(--atlas2-muted);font-size:.58rem;text-transform:uppercase;letter-spacing:.05em;font-weight:750; }
.atlas2-telemetry-head > span:first-child { display:flex;gap:.38rem;align-items:center;white-space:nowrap; }
.atlas2-telemetry-head > span:first-child i { color:var(--atlas2-accent-2);font-size:.78rem; }
.atlas2-telemetry-card .atlas2-live { font-size:.49rem; }
.atlas2-telemetry-value { display:flex;align-items:flex-end;justify-content:space-between;gap:.4rem;margin-top:.45rem; }
.atlas2-telemetry-value strong { color:#f4fbff;font-size:1.2rem;letter-spacing:-.02em; }
.atlas2-telemetry-value small { color:#8ba2ba;font-size:.55rem;padding-bottom:.12rem; }
.atlas2-sparkline { width:100%;height:36px;margin-top:.28rem;overflow:visible; }
.atlas2-sparkline polyline { fill:none;stroke:#45d8c8;stroke-width:2;vector-effect:non-scaling-stroke;filter:drop-shadow(0 0 5px rgba(69,216,200,.25));transition:points .5s ease; }

.atlas2-role-section .atlas2-section-head { margin-bottom:1.2rem; }
.atlas2-table-wrap { overflow:auto; }
.atlas2-table { width:100%;border-collapse:collapse;font-size:.72rem; }
.atlas2-table th { color:#8197af;text-transform:uppercase;letter-spacing:.045em;font-size:.58rem;font-weight:750;text-align:left;padding:.7rem;border-bottom:1px solid var(--atlas2-line); }
.atlas2-table td { color:#dce9f5;padding:.78rem .7rem;border-bottom:1px solid rgba(41,66,94,.55);white-space:nowrap; }
.atlas2-table tr:last-child td { border-bottom:0; }

.atlas2-report-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem; }
.atlas2-report-card { display:grid;grid-template-columns:42px minmax(0,1fr) 34px;gap:.7rem;align-items:center;padding:.85rem;border:1px solid var(--atlas2-line);border-radius:12px;background:var(--atlas2-surface-2); }
.atlas2-report-card > span { width:38px;height:38px;border-radius:10px;display:grid;place-items:center;color:var(--atlas2-accent-2);background:rgba(41,183,169,.10);border:1px solid rgba(41,183,169,.16); }
.atlas2-report-card strong,.atlas2-report-card small { display:block; }
.atlas2-report-card strong { color:#eaf5ff;font-size:.74rem; }
.atlas2-report-card small { color:var(--atlas2-muted);font-size:.61rem;margin-top:.13rem; }

.atlas2-settings-grid { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem; }
.atlas2-settings-grid article { display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:.75rem;align-items:center;padding:1rem;border-radius:13px;border:1px solid var(--atlas2-line);background:var(--atlas2-surface); }
.atlas2-settings-grid article > span { width:42px;height:42px;border-radius:11px;display:grid;place-items:center;color:var(--atlas2-accent-2);background:rgba(41,183,169,.1); }
.atlas2-settings-grid strong,.atlas2-settings-grid small { display:block; }
.atlas2-settings-grid strong { color:#eef7ff;font-size:.78rem; }.atlas2-settings-grid small { color:var(--atlas2-muted);font-size:.62rem;margin-top:.14rem; }
.atlas2-settings-grid b { color:#79e4d5;font-size:.64rem;border:1px solid rgba(69,216,200,.18);padding:.3rem .48rem;border-radius:999px;background:rgba(69,216,200,.06); }

.atlas2-session-bars { display:flex;flex-direction:column;gap:.85rem; }
.atlas2-session-bars > div { display:grid;grid-template-columns:160px 55px minmax(120px,1fr);align-items:center;gap:.7rem;color:#dce9f5;font-size:.7rem; }
.atlas2-session-bars b { text-align:right;color:#fff; }
.atlas2-session-bars i { height:8px;border-radius:999px;background:#1a314a;overflow:hidden; }
.atlas2-session-bars em { display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#29b7a9,#6ae6d5); }

.atlas2-license-hero { display:grid;grid-template-columns:1fr auto;align-items:center;gap:1rem;padding:1.3rem 1.4rem;border:1px solid var(--atlas2-line);border-radius:15px;background:linear-gradient(145deg,#102238,#0d1c2e);margin-bottom:1rem; }
.atlas2-license-hero span,.atlas2-license-hero strong,.atlas2-license-hero small { display:block; }
.atlas2-license-hero span { color:var(--atlas2-muted);font-size:.6rem;font-weight:800;letter-spacing:.08em; }
.atlas2-license-hero strong { color:#fff;font-size:2rem;margin:.25rem 0 .12rem; }.atlas2-license-hero small { color:#9fb2c5;font-size:.68rem; }
.atlas2-license-ring { --pct:50; width:92px;height:92px;border-radius:50%;display:grid;place-items:center;background:conic-gradient(#45d8c8 calc(var(--pct)*1%),#173149 0);position:relative; }
.atlas2-license-ring::after { content:"";position:absolute;inset:9px;border-radius:50%;background:#0d1c2e; }.atlas2-license-ring b { position:relative;z-index:1;color:#fff; }

.atlas2-error-list { display:flex;flex-direction:column;gap:.6rem; }
.atlas2-error-list > div { display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:.65rem;padding:.7rem;border:1px solid var(--atlas2-line);border-radius:10px;background:var(--atlas2-surface-2); }
.atlas2-error-list i { color:#f4c95d; }.atlas2-error-list strong,.atlas2-error-list small { display:block; }.atlas2-error-list strong{color:#edf6ff;font-size:.7rem}.atlas2-error-list small{color:var(--atlas2-muted);font-size:.6rem}.atlas2-error-list b{font-size:.55rem;color:#f4c95d}

.atlas2-report-summary { display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;margin-bottom:1rem; }
.atlas2-report-summary > div { padding:1rem;border:1px solid var(--atlas2-line);border-radius:12px;background:var(--atlas2-surface); }
.atlas2-report-summary span,.atlas2-report-summary strong { display:block; }.atlas2-report-summary span{color:var(--atlas2-muted);font-size:.61rem;text-transform:uppercase}.atlas2-report-summary strong{color:#fff;font-size:1.15rem;margin-top:.25rem}

.atlas2-team-table .atlas2-team-row { grid-template-columns:36px minmax(180px,1fr) minmax(120px,1.2fr) 48px; }
.atlas2-mini-progress { height:7px;border-radius:999px;background:#173149;overflow:hidden; }.atlas2-mini-progress i{display:block;height:100%;background:#45d8c8;border-radius:inherit}

@media (max-width:1280px){ .atlas2-telemetry-grid{grid-template-columns:repeat(3,minmax(0,1fr));} }
@media (max-width:800px){ .atlas2-report-grid,.atlas2-settings-grid,.atlas2-report-summary{grid-template-columns:1fr 1fr}.atlas2-session-bars>div{grid-template-columns:100px 45px minmax(80px,1fr)} }
@media (max-width:560px){ .atlas2-telemetry-grid,.atlas2-report-grid,.atlas2-settings-grid,.atlas2-report-summary{grid-template-columns:1fr}.atlas2-license-hero{grid-template-columns:1fr}.atlas2-license-ring{width:78px;height:78px}.atlas2-team-table .atlas2-team-row{grid-template-columns:34px 1fr 46px}.atlas2-team-table .atlas2-mini-progress{grid-column:2/4} }


/* Entrega 3 — Security Center / runtime quick wins */
.atlas2-toggle-list,.atlas2-policy-list,.atlas2-device-list,.atlas2-security-alerts{display:flex;flex-direction:column;gap:.55rem}
.atlas2-toggle-row{display:flex;justify-content:space-between;align-items:center;gap:1rem;width:100%;border:1px solid var(--atlas2-line);background:var(--atlas2-surface-2);border-radius:11px;padding:.75rem .85rem;color:var(--atlas2-text);text-align:left;cursor:pointer}
.atlas2-toggle-row strong,.atlas2-toggle-row small{display:block}.atlas2-toggle-row strong{font-size:.72rem;text-transform:capitalize}.atlas2-toggle-row small{font-size:.6rem;color:var(--atlas2-muted);margin-top:.12rem}.atlas2-toggle-row b{font-size:.55rem;padding:.3rem .48rem;border-radius:999px}.atlas2-toggle-row b.on{color:#79e4a1;background:rgba(47,184,106,.1);border:1px solid rgba(47,184,106,.2)}.atlas2-toggle-row b.off{color:#c2d0de;background:#152941;border:1px solid var(--atlas2-line)}
.atlas2-policy-list>div{display:flex;justify-content:space-between;gap:1rem;padding:.66rem .2rem;border-bottom:1px solid rgba(41,66,94,.6);font-size:.68rem}.atlas2-policy-list span{color:var(--atlas2-muted)}.atlas2-policy-list b{color:#e9f5ff;font-weight:700;text-align:right}
.atlas2-device-row{display:grid;grid-template-columns:36px minmax(0,1fr) auto auto;gap:.65rem;align-items:center;padding:.72rem;border:1px solid var(--atlas2-line);background:var(--atlas2-surface-2);border-radius:11px}.atlas2-device-icon{width:34px;height:34px;border-radius:9px;display:grid;place-items:center;color:var(--atlas2-accent-2);background:rgba(41,183,169,.1)}.atlas2-device-row strong,.atlas2-device-row small{display:block}.atlas2-device-row strong{font-size:.7rem}.atlas2-device-row small{font-size:.59rem;color:var(--atlas2-muted);margin-top:.1rem}.atlas2-security-status{font-size:.54rem;font-weight:800;padding:.28rem .44rem;border-radius:999px;border:1px solid var(--atlas2-line)}.atlas2-security-status.autorizado{color:#79e4a1}.atlas2-security-status.pendiente{color:#f0d35e}.atlas2-security-status.bloqueado{color:#ff9188}.atlas2-device-actions{display:flex;gap:.35rem}.atlas2-device-actions button{border:1px solid var(--atlas2-line);background:#0e2136;color:#dce9f6;border-radius:8px;padding:.34rem .48rem;font-size:.58rem;cursor:pointer}.atlas2-device-actions button:hover{border-color:#45d8c8;color:#fff}
.atlas2-security-alerts>div{display:grid;grid-template-columns:28px 1fr;gap:.55rem;align-items:center;padding:.65rem;border:1px solid var(--atlas2-line);border-radius:10px;background:var(--atlas2-surface-2)}.atlas2-security-alerts i{color:var(--atlas2-accent-2)}.atlas2-security-alerts .warning i{color:#f0d35e}.atlas2-security-alerts .success i{color:#79e4a1}.atlas2-security-alerts strong,.atlas2-security-alerts small{display:block}.atlas2-security-alerts strong{font-size:.68rem}.atlas2-security-alerts small{font-size:.58rem;color:var(--atlas2-muted);margin-top:.1rem}
@media(max-width:760px){.atlas2-device-row{grid-template-columns:34px 1fr}.atlas2-security-status,.atlas2-device-actions{grid-column:2}.atlas2-device-actions{justify-content:flex-start}}


/* Entrega 4 — Audit & Recording Premium */
.atlas2-audit-workspace-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.85rem}.atlas2-audit-workspace-card{border:1px solid var(--atlas2-line);background:linear-gradient(145deg,#102238,#0d1b2d);border-radius:14px;padding:1rem;text-align:left;color:var(--atlas2-text);cursor:pointer;box-shadow:var(--atlas2-shadow)}.atlas2-audit-workspace-card:hover{border-color:rgba(94,234,212,.45);transform:translateY(-1px)}.atlas2-audit-workspace-card h3{font-size:.9rem;margin:.75rem 0 .35rem}.atlas2-audit-workspace-card p{font-size:.65rem;line-height:1.45;color:var(--atlas2-muted);min-height:2.7em}.atlas2-participants{display:flex;flex-wrap:wrap;gap:.55rem}.atlas2-participants span{display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--atlas2-line);background:var(--atlas2-surface-2);padding:.45rem .65rem;border-radius:999px;font-size:.64rem;color:#dce9f5}.atlas2-participants i{color:var(--atlas2-accent-2)}
.atlas2-recording-premium{margin-top:.85rem;border:1px solid var(--atlas2-line);border-radius:14px;background:#0c1c2e;padding:1rem}.atlas2-recording-head{display:grid;grid-template-columns:42px 1fr auto;gap:.7rem;align-items:center}.atlas2-record-icon{width:40px;height:40px;border-radius:11px;display:grid;place-items:center;background:rgba(41,183,169,.1);color:var(--atlas2-accent-2)}.atlas2-recording-head strong,.atlas2-recording-head small{display:block}.atlas2-recording-head strong{font-size:.78rem}.atlas2-recording-head small{font-size:.6rem;color:var(--atlas2-muted);margin-top:.12rem}.atlas2-integrity-pill{font-size:.56rem;color:#7ee7a7;border:1px solid rgba(47,184,106,.2);background:rgba(47,184,106,.08);padding:.34rem .5rem;border-radius:999px}.atlas2-recording-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:.55rem;margin:.8rem 0}.atlas2-recording-meta>span{padding:.55rem;border:1px solid var(--atlas2-line);border-radius:9px;background:var(--atlas2-surface-2);font-size:.58rem;color:var(--atlas2-muted)}.atlas2-recording-meta b,.atlas2-recording-meta code{display:block;color:#eaf5ff;margin-top:.16rem;font-size:.62rem}.atlas2-recording-columns{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.atlas2-recording-columns>div{border-top:1px solid var(--atlas2-line);padding-top:.75rem}.atlas2-recording-columns h4{font-size:.68rem;color:#dce9f6;margin:0 0 .55rem}.atlas2-version-row,.atlas2-annotation-row{display:grid;grid-template-columns:42px 1fr auto;gap:.55rem;align-items:center;padding:.52rem 0;border-bottom:1px solid rgba(41,66,94,.5)}.atlas2-version-row>span,.atlas2-annotation-row>code{color:var(--atlas2-accent-2);font-size:.6rem}.atlas2-version-row strong,.atlas2-version-row small,.atlas2-annotation-row strong,.atlas2-annotation-row small{display:block}.atlas2-version-row strong,.atlas2-annotation-row strong{font-size:.64rem}.atlas2-version-row small,.atlas2-annotation-row small{font-size:.56rem;color:var(--atlas2-muted);margin-top:.1rem}.atlas2-version-row>b{font-size:.52rem;color:#7ee7a7}.atlas2-annotation-form{display:grid;gap:.45rem;margin-top:.65rem}.atlas2-annotation-form>div{display:grid;grid-template-columns:1fr 1fr;gap:.45rem}.atlas2-annotation-form input{width:100%;border:1px solid var(--atlas2-line);background:#0b1b2d;color:#eaf5ff;border-radius:8px;padding:.48rem .55rem;font-size:.62rem}.atlas2-evidence-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem;margin-top:.8rem}.atlas2-evidence-strip>span{display:flex;align-items:center;gap:.5rem;padding:.6rem;border:1px solid var(--atlas2-line);border-radius:9px;background:var(--atlas2-surface-2)}.atlas2-evidence-strip i{color:var(--atlas2-accent-2)}.atlas2-evidence-strip b,.atlas2-evidence-strip small{display:block}.atlas2-evidence-strip b{font-size:.62rem}.atlas2-evidence-strip small{font-size:.54rem;color:var(--atlas2-muted)}.atlas2-integrity-result{margin-bottom:.7rem;padding:.65rem .75rem;border-radius:10px;font-size:.64rem;border:1px solid var(--atlas2-line)}.atlas2-integrity-result.ok{color:#7ee7a7;background:rgba(47,184,106,.08);border-color:rgba(47,184,106,.2)}.atlas2-integrity-result.bad{color:#ff9188;background:rgba(230,71,59,.08);border-color:rgba(230,71,59,.2)}
@media(max-width:1000px){.atlas2-audit-workspace-grid{grid-template-columns:1fr 1fr}.atlas2-recording-columns{grid-template-columns:1fr}}@media(max-width:650px){.atlas2-audit-workspace-grid,.atlas2-recording-meta,.atlas2-evidence-strip{grid-template-columns:1fr}.atlas2-recording-head{grid-template-columns:40px 1fr}.atlas2-integrity-pill{grid-column:2}}


/* Entrega 5 — Technical scoring / Proposal Candidate */
.atlas2-capability-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.atlas2-capability-group{border:1px solid var(--atlas2-line);background:var(--atlas2-surface);border-radius:13px;padding:.9rem}.atlas2-capability-list{display:flex;flex-direction:column;gap:.45rem}.atlas2-capability-list>div{display:flex;justify-content:space-between;align-items:center;gap:.7rem;padding:.55rem .65rem;border:1px solid rgba(41,66,94,.7);background:var(--atlas2-surface-2);border-radius:9px}.atlas2-capability-list strong,.atlas2-capability-list small{display:block}.atlas2-capability-list strong{font-size:.66rem;color:#eaf5ff}.atlas2-capability-list small{font-size:.56rem;color:var(--atlas2-muted);margin-top:.1rem}.atlas2-capability-list b{flex:0 0 auto;font-size:.51rem;padding:.28rem .42rem;border-radius:999px;border:1px solid var(--atlas2-line)}.atlas2-capability-list b.ok{color:#7ee7a7;background:rgba(47,184,106,.08);border-color:rgba(47,184,106,.2)}.atlas2-capability-list b.pending{color:#f0d35e;background:rgba(224,201,47,.08);border-color:rgba(224,201,47,.18)}.atlas2-capability-list b.base{color:#8ed7ff;background:rgba(61,150,220,.08)}.atlas2-coverage-big{display:grid;gap:.3rem;padding:.5rem}.atlas2-coverage-big strong{font-size:2rem;color:#fff}.atlas2-coverage-big span{font-size:.68rem;color:#dce9f6;font-weight:700}.atlas2-coverage-big small{font-size:.58rem;color:var(--atlas2-muted)}@media(max-width:850px){.atlas2-capability-grid{grid-template-columns:1fr}}

/* Entrega 5.3 — alta y asociación de auditorías desde el perfil Auditor */
.atlas2-primary-btn{display:inline-flex;align-items:center;gap:.42rem;border:0;border-radius:10px;padding:.62rem .82rem;background:linear-gradient(135deg,#2bb7a9,#5eead4);color:#062219;font-size:.64rem;font-weight:800;cursor:pointer;box-shadow:0 8px 24px rgba(43,183,169,.18)}
.atlas2-primary-btn:hover{filter:brightness(1.05);transform:translateY(-1px)}
.atlas2-inline-actions{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}
.atlas2-form{display:grid;gap:.8rem}.atlas2-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.72rem}.atlas2-form-grid label{display:grid;gap:.34rem}.atlas2-form-grid label>span{font-size:.58rem;font-weight:700;letter-spacing:.02em;color:#adc2d6}.atlas2-form-grid .span-2{grid-column:1/-1}.atlas2-form-grid input,.atlas2-form-grid select,.atlas2-form-grid textarea{width:100%;border:1px solid var(--atlas2-line);background:#0b1b2d;color:#eaf5ff;border-radius:9px;padding:.58rem .65rem;font-size:.64rem;outline:none}.atlas2-form-grid input:focus,.atlas2-form-grid select:focus,.atlas2-form-grid textarea:focus{border-color:rgba(94,234,212,.55);box-shadow:0 0 0 2px rgba(94,234,212,.08)}.atlas2-form-grid textarea{resize:vertical;min-height:80px}.atlas2-form-help{margin:0;padding:.65rem .72rem;border:1px solid var(--atlas2-line);border-radius:9px;background:rgba(41,183,169,.06);color:var(--atlas2-muted);font-size:.59rem;line-height:1.45}.atlas2-form-help i{color:var(--atlas2-accent-2);margin-right:.35rem}.atlas2-form-error{margin-bottom:.7rem;padding:.62rem .7rem;border:1px solid rgba(230,71,59,.28);background:rgba(230,71,59,.08);color:#ffaaa3;border-radius:9px;font-size:.62rem}.atlas2-participants span>span{display:grid;gap:.05rem}.atlas2-participants small{font-size:.5rem;color:var(--atlas2-muted)}
.atlas2-empty-state{display:grid;place-items:center;text-align:center;gap:.35rem;padding:2rem 1rem;border:1px dashed var(--atlas2-line);border-radius:12px;color:var(--atlas2-muted);background:rgba(10,27,45,.45)}.atlas2-empty-state i{font-size:1.35rem;color:var(--atlas2-accent-2)}.atlas2-empty-state strong{font-size:.72rem;color:#eaf5ff}.atlas2-empty-state span{font-size:.58rem;max-width:480px}.atlas2-evidence-add{display:flex;align-items:center;gap:.5rem;padding:.6rem;border:1px dashed rgba(94,234,212,.28);border-radius:9px;background:rgba(41,183,169,.05);color:#dce9f5;text-align:left;cursor:pointer}.atlas2-evidence-add:hover{border-color:rgba(94,234,212,.5);background:rgba(41,183,169,.09)}.atlas2-evidence-add i{color:var(--atlas2-accent-2)}.atlas2-evidence-add b,.atlas2-evidence-add small{display:block}.atlas2-evidence-add b{font-size:.62rem}.atlas2-evidence-add small{font-size:.54rem;color:var(--atlas2-muted)}
@media(max-width:650px){.atlas2-form-grid{grid-template-columns:1fr}.atlas2-form-grid .span-2{grid-column:auto}.atlas2-head-actions{flex-wrap:wrap}.atlas2-inline-actions{justify-content:flex-start}}

/* Entrega 5.4 — flujo simple Grabación principal + Evidencias */
.atlas2-record-source{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.5rem;margin:.75rem 0}.atlas2-record-source>span{padding:.55rem .6rem;border:1px solid var(--atlas2-line);border-radius:9px;background:var(--atlas2-surface-2);min-width:0}.atlas2-record-source small,.atlas2-record-source b{display:block}.atlas2-record-source small{font-size:.52rem;color:var(--atlas2-muted);text-transform:uppercase;letter-spacing:.05em}.atlas2-record-source b{font-size:.61rem;color:#eaf5ff;margin-top:.13rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.atlas2-record-actions{margin:.15rem 0 .7rem}.atlas2-source-picker{display:grid;grid-template-columns:1fr 1fr;gap:.65rem;margin-bottom:1rem}.atlas2-source-option{display:block;cursor:pointer}.atlas2-source-option input{position:absolute;opacity:0;pointer-events:none}.atlas2-source-option>span{display:flex;gap:.65rem;align-items:flex-start;border:1px solid var(--atlas2-line);border-radius:12px;padding:.8rem;background:#0b1b2d;min-height:76px}.atlas2-source-option input:checked+span{border-color:rgba(94,234,212,.62);box-shadow:0 0 0 2px rgba(94,234,212,.08);background:rgba(41,183,169,.07)}.atlas2-source-option i{font-size:1rem;color:var(--atlas2-accent-2);margin-top:.1rem}.atlas2-source-option b,.atlas2-source-option small{display:block}.atlas2-source-option b{font-size:.68rem;color:#edf7ff}.atlas2-source-option small{font-size:.56rem;color:var(--atlas2-muted);margin-top:.2rem;line-height:1.4}.atlas2-field-label{display:block;font-size:.58rem;color:var(--atlas2-muted);margin:0 0 .35rem}.atlas2-select-wide{width:100%;border:1px solid var(--atlas2-line);background:#0b1b2d;color:#eaf5ff;border-radius:9px;padding:.65rem .7rem;font-size:.63rem}.atlas2-audit-evidence-list{display:grid;gap:.5rem}.atlas2-audit-evidence-row{display:grid;grid-template-columns:42px 1fr 36px;gap:.65rem;align-items:center;padding:.65rem .7rem;border:1px solid var(--atlas2-line);border-radius:10px;background:var(--atlas2-surface-2)}.atlas2-evidence-icon{width:38px;height:38px;border-radius:9px;display:grid;place-items:center;background:rgba(41,183,169,.1);color:var(--atlas2-accent-2)}.atlas2-audit-evidence-row strong,.atlas2-audit-evidence-row small{display:block}.atlas2-audit-evidence-row strong{font-size:.65rem;color:#edf7ff}.atlas2-audit-evidence-row small{font-size:.54rem;color:var(--atlas2-muted);margin-top:.1rem}.atlas2-icon-btn{width:34px;height:34px;border:1px solid var(--atlas2-line);border-radius:8px;background:#0b1b2d;color:#dce9f5;display:grid;place-items:center;cursor:pointer}.atlas2-icon-btn:hover{border-color:rgba(94,234,212,.45);color:var(--atlas2-accent-2)}.atlas2-empty-state.compact{padding:1.15rem}.atlas2-form-error{padding:.65rem .75rem;border:1px solid rgba(230,71,59,.3);background:rgba(230,71,59,.08);color:#ff9c94;border-radius:9px;font-size:.62rem;margin-bottom:.75rem}
@media(max-width:1100px){.atlas2-record-source{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:700px){.atlas2-record-source,.atlas2-source-picker{grid-template-columns:1fr}.atlas2-audit-evidence-row{grid-template-columns:38px 1fr 34px}}

/* ATLAS 2.0 Entrega 5.5 — auditoría multimedia y visor de evidencias */
.atlas2-media-shell{margin-top:.85rem;border:1px solid var(--atlas2-line);border-radius:12px;background:#06111e;min-height:180px;display:grid;place-items:center;overflow:hidden}.atlas2-media-shell video{width:100%;max-height:520px;background:#000;display:block}.atlas2-media-shell audio{width:min(760px,92%);margin:2rem auto}.atlas2-media-loading,.atlas2-media-error{display:flex;align-items:center;gap:.55rem;color:var(--atlas2-muted);font-size:.65rem;padding:1rem}.atlas2-mini-spinner{width:16px;height:16px;border:2px solid rgba(72,219,205,.2);border-top-color:var(--atlas2-accent-2);border-radius:50%;animation:atlas2spin .7s linear infinite}@keyframes atlas2spin{to{transform:rotate(360deg)}}.atlas2-media-toolbar{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;margin:.65rem 0 .8rem}.atlas2-media-toolbar label{display:flex;align-items:center;gap:.4rem;color:var(--atlas2-muted);font-size:.6rem}.atlas2-media-toolbar select{background:#0b1b2d;color:#eaf5ff;border:1px solid var(--atlas2-line);border-radius:8px;padding:.45rem .55rem}.atlas2-annotation-seek{width:100%;background:none;border:0;color:inherit;text-align:left;cursor:pointer}.atlas2-annotation-seek:hover{background:rgba(72,219,205,.04)}.atlas2-annotation-seek>i{color:var(--atlas2-accent-2)}.atlas2-empty-note{font-size:.58rem;color:var(--atlas2-muted);padding:.45rem 0}.atlas2-time-markers{display:grid!important;grid-template-columns:1fr 1fr!important;gap:.5rem!important}.atlas2-time-markers label>span{display:block;color:var(--atlas2-muted);font-size:.55rem;margin-bottom:.2rem}.atlas2-time-markers label>div{display:grid;grid-template-columns:1fr 36px;gap:.3rem}.atlas2-time-markers button{border:1px solid var(--atlas2-line);background:#10263d;color:var(--atlas2-accent-2);border-radius:8px;cursor:pointer}.atlas2-evidence-actions{display:flex;gap:.35rem;align-items:center}@media(max-width:760px){.atlas2-recording-columns{grid-template-columns:1fr}.atlas2-time-markers{grid-template-columns:1fr!important}.atlas2-record-source{grid-template-columns:1fr 1fr}.atlas2-media-toolbar{align-items:stretch}.atlas2-media-toolbar .atlas2-secondary-btn{flex:1}}

/* Entrega 6.0 — Microflujos aislados: botones alineados, sin espacios colapsados. */
.atlas2-participants > span { display:inline-flex; gap:.45rem; align-items:center; }
.atlas2-participants > span > span { display:block; padding:0; border:0; border-radius:0; background:transparent; min-width:0; margin-right:.2rem; }
.atlas2-participants > span > span small { display:block; margin-top:.12rem; color:var(--atlas2-muted); }
.atlas2-participants .atlas2-icon-btn { flex:0 0 32px; margin-left:0; width:32px; height:32px; }
.atlas2-audit-evidence-row { grid-template-columns:42px minmax(0,1fr) auto; }
.atlas2-audit-evidence-row > div:nth-child(2) { min-width:0; overflow-wrap:anywhere; }
.atlas2-evidence-actions,.atlas2-version-actions { display:flex; align-items:center; justify-content:flex-end; gap:.4rem; flex-wrap:nowrap; min-width:max-content; }
.atlas2-evidence-actions .atlas2-icon-btn,.atlas2-version-actions .atlas2-icon-btn { flex:0 0 34px; width:34px; height:34px; margin-left:0; }
.atlas2-evidence-actions [data-delete-evidence],.atlas2-version-actions [data-discard-version] { color:#ffaaa5; }
.atlas2-active-tag { font-size:.52rem; font-weight:800; color:#7ee7a7; white-space:nowrap; margin-right:.15rem; }
.atlas2-version-row { grid-template-columns:42px minmax(0,1fr) auto; }
.atlas2-version-row > div:nth-child(2) { min-width:0; overflow-wrap:anywhere; }
.atlas2-annotation-row { display:flex; gap:.5rem; align-items:center; }
.atlas2-annotation-seek { flex:1; min-width:0; }
.atlas2-annotation-row > .atlas2-icon-btn { flex:0 0 34px; margin-left:0; }
[data-active-watermark-action] .atlas2-secondary-btn { display:inline-flex; gap:.4rem; align-items:center; margin-top:.5rem; }
@media(max-width:700px) {
  .atlas2-audit-evidence-row { grid-template-columns:38px minmax(0,1fr); }
  .atlas2-evidence-actions { grid-column:2; justify-content:flex-start; }
  .atlas2-version-row { grid-template-columns:40px minmax(0,1fr); }
  .atlas2-version-actions { grid-column:2; justify-content:flex-start; }
}

/* Entrega 6.1 — espacio de trabajo audiovisual sin saltos de foco */
.atlas2-audit-media-grid {
  display:grid;
  grid-template-columns:minmax(0, 7fr) minmax(310px, 3fr);
  gap:1rem;
  align-items:start;
  min-width:0;
}
.atlas2-audit-video-area,.atlas2-audit-side-area { min-width:0; }
.atlas2-audit-side-area { display:grid;gap:.9rem;align-content:start; }
.atlas2-audit-media-grid .atlas2-media-shell { margin-top:0; }
.atlas2-audit-media-grid .atlas2-media-shell video { width:100%;max-height:520px;object-fit:contain; }
.atlas2-audit-media-grid .atlas2-media-toolbar { margin:.65rem 0; }
.atlas2-audit-media-grid .atlas2-recording-meta { margin:.7rem 0; }
.atlas2-recording-history,.atlas2-audit-annotation-panel {
  border:1px solid var(--atlas2-line);border-radius:11px;padding:.8rem;
  min-width:0;background:#0b1b2d;
}
.atlas2-recording-history h4,.atlas2-audit-annotation-panel h4 {
  color:#eaf5ff;font-size:.74rem;margin:0 0 .6rem;
}
.atlas2-annotation-list { max-height:225px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable; }
.atlas2-audit-annotation-panel .atlas2-annotation-row { padding:.55rem .2rem; }
.atlas2-audit-annotation-panel .atlas2-annotation-seek { padding:.35rem;border-radius:8px; }
.atlas2-audit-annotation-panel .atlas2-annotation-form { margin-top:.7rem; }
.atlas2-audit-annotation-panel .atlas2-annotation-form>div.atlas2-annotation-controls {
  display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:.45rem;
}
.atlas2-annotation-controls>.atlas2-secondary-btn { min-width:0;white-space:normal;text-align:center;justify-content:center; }
.atlas2-annotation-controls>[type=submit] { grid-column:1/-1; }
.atlas2-audit-side-area [data-evidence-panel] { margin:0;min-width:0; }
.atlas2-audit-side-area .atlas2-panel-head { display:flex;align-items:center;gap:.5rem;flex-wrap:wrap; }
.atlas2-audit-side-area .atlas2-panel-head .atlas2-secondary-btn { margin-left:auto; }
.atlas2-audit-side-area .atlas2-audit-evidence-list { max-height:260px;overflow-y:auto;overscroll-behavior:contain;scrollbar-gutter:stable; }
.atlas2-audit-side-area .atlas2-audit-evidence-row { grid-template-columns:30px minmax(0,1fr);gap:.55rem;padding:.55rem; }
.atlas2-audit-side-area .atlas2-evidence-icon { width:30px;height:30px; }
.atlas2-audit-side-area .atlas2-evidence-actions { grid-column:2;justify-content:flex-start; }
.atlas2-audit-side-area .atlas2-evidence-actions .atlas2-icon-btn { width:30px;height:30px;flex:0 0 30px; }
@media(max-width:1199px) {
  .atlas2-audit-media-grid { grid-template-columns: minmax(0,1fr); }
  .atlas2-audit-side-area { grid-template-columns: minmax(0,1fr) minmax(0,1fr);align-items:start; }
  .atlas2-annotation-list { max-height:220px; }
}
@media(max-width:750px) {
  .atlas2-audit-side-area {grid-template-columns:minmax(0,1fr);}
  .atlas2-audit-media-grid .atlas2-media-shell video {max-height:65vh;}
}
