:root {
  --awx-bg: #eef2f7;
  --awx-surface: #ffffff;
  --awx-surface-soft: #f7f9fc;
  --awx-border: #d8e0ea;
  --awx-text: #0f172a;
  --awx-muted: #4b5a70;
  --awx-accent: #1d4ed8;
  --awx-accent-soft: #e8efff;
  --awx-side-bg: #0b1220;
  --awx-side-bg-soft: #111b2d;
  --awx-side-text: #f8fafc;
  --awx-side-muted: #b9c6db;
  --awx-shadow: 0 10px 26px rgba(15, 23, 42, 0.08);
}

body {
  background: linear-gradient(180deg, #f5f7fb 0%, var(--awx-bg) 100%) !important;
  color: var(--awx-text) !important;
}

.analyst-shell {
  max-width: none !important;
  width: calc(100% - 20px) !important;
}

.analyst-shell .analyst-hero {
  padding: 10px 14px !important;
  border-radius: 14px !important;
  border: 1px solid var(--awx-border) !important;
  background: #ffffff !important;
  box-shadow: 0 6px 18px rgba(15, 23, 42, 0.05) !important;
}

.analyst-shell .analyst-platform-bar {
  padding: 10px 12px !important;
  border-radius: 12px !important;
  border: 1px solid var(--awx-border) !important;
  background: var(--awx-surface-soft) !important;
  box-shadow: none !important;
}

.analyst-shell .analyst-header-title-block h1 {
  margin: 0 !important;
  font-size: clamp(1.55rem, 2vw, 2rem) !important;
  line-height: 1.12 !important;
  color: var(--awx-text) !important;
}

.analyst-shell .analyst-header-subtitle {
  margin-top: 4px !important;
  color: var(--awx-muted) !important;
  font-size: 0.95rem !important;
}

.analyst-shell .analyst-toolbar {
  margin-top: 8px !important;
}

.analyst-shell .analyst-layout {
  grid-template-columns: 296px minmax(0, 1fr) !important;
  gap: 14px !important;
  align-items: start !important;
}

.analyst-shell .analyst-sidebar {
  margin-top: 14px !important;
  border-radius: 14px !important;
  border: 1px solid #0b1220 !important;
  background:
    radial-gradient(560px 260px at 15% -18%, rgba(29, 78, 216, 0.28), transparent 60%),
    linear-gradient(180deg, var(--awx-side-bg) 0%, var(--awx-side-bg-soft) 100%) !important;
  box-shadow: var(--awx-shadow) !important;
  padding: 14px !important;
}

.analyst-shell .analyst-sidebar-head {
  padding-bottom: 12px !important;
  margin-bottom: 10px !important;
  border-bottom: 1px solid rgba(255, 255, 255, 0.14) !important;
}

.analyst-shell .analyst-sidebar-logo {
  width: 32px !important;
  height: 32px !important;
  border-radius: 9px !important;
  background: linear-gradient(145deg, #1d4ed8, #2563eb) !important;
  color: #ffffff !important;
}

.analyst-shell .analyst-sidebar-title,
.analyst-shell .analyst-sidebar > h2,
.analyst-shell .analyst-nav-text,
.analyst-shell .analyst-side-value {
  color: var(--awx-side-text) !important;
}

.analyst-shell .analyst-sidebar-sub,
.analyst-shell .analyst-nav-group-label,
.analyst-shell .analyst-side-label {
  color: var(--awx-side-muted) !important;
}

.analyst-shell .analyst-sidebar > h2 {
  font-size: 1rem !important;
  margin: 0 0 10px !important;
}

.analyst-shell .analyst-nav-group-label {
  margin: 10px 4px 6px !important;
  font-size: 0.69rem !important;
  letter-spacing: 0.1em !important;
}

.analyst-shell .analyst-nav-btn {
  min-height: 44px !important;
  border-radius: 11px !important;
  padding: 8px 10px !important;
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  background: rgba(255, 255, 255, 0.05) !important;
  transition: background 170ms ease, border-color 170ms ease, transform 170ms ease !important;
}

.analyst-shell .analyst-nav-btn:hover {
  background: rgba(255, 255, 255, 0.12) !important;
  border-color: rgba(255, 255, 255, 0.32) !important;
}

.analyst-shell .analyst-nav-btn.is-active {
  background: rgba(29, 78, 216, 0.28) !important;
  border-color: rgba(147, 197, 253, 0.62) !important;
  box-shadow: inset 3px 0 0 #93c5fd !important;
}

.analyst-shell .analyst-nav-icon {
  width: 28px !important;
  height: 28px !important;
  border-radius: 8px !important;
  background: rgba(255, 255, 255, 0.12) !important;
  border: 1px solid rgba(255, 255, 255, 0.22) !important;
  color: #e2e8f0 !important;
}

.analyst-shell .analyst-nav-meta {
  background: rgba(255, 255, 255, 0.16) !important;
  color: #f8fafc !important;
  border: 1px solid rgba(255, 255, 255, 0.22) !important;
}

.analyst-shell .analyst-side-box {
  border-radius: 11px !important;
  border: 1px solid rgba(255, 255, 255, 0.16) !important;
  background: rgba(255, 255, 255, 0.06) !important;
}

.analyst-shell .analyst-side-value {
  font-size: 1rem !important;
  font-weight: 740 !important;
}

.analyst-shell #awSideReadiness[data-state="ready"] {
  color: #86efac !important;
}

.analyst-shell #awSideReadiness[data-state="monitor"] {
  color: #fcd34d !important;
}

.analyst-shell #awSideReadiness[data-state="hold"] {
  color: #fca5a5 !important;
}

.analyst-shell .analyst-sidebar-toggle {
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(255, 255, 255, 0.24) !important;
  color: #e2e8f0 !important;
}

.analyst-shell .analyst-main .panel,
.analyst-shell .analyst-main .analyst-card-surface {
  border-radius: 14px !important;
  border: 1px solid var(--awx-border) !important;
  background: var(--awx-surface) !important;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.05) !important;
}

.analyst-shell .analyst-panel {
  padding: 14px !important;
}

.analyst-shell .analyst-title-row {
  font-size: 1rem !important;
  font-weight: 760 !important;
  color: var(--awx-text) !important;
}

.analyst-shell .analyst-section-help,
.analyst-shell .analyst-chart-desc,
.analyst-shell .status,
.analyst-shell .analyst-summary-sub {
  color: var(--awx-muted) !important;
}

.analyst-shell .analyst-kpi-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

.analyst-shell .analyst-kpi {
  border-radius: 12px !important;
  border: 1px solid #dbe4f0 !important;
  background: linear-gradient(180deg, #ffffff 0%, #f9fbff 100%) !important;
  box-shadow: none !important;
}

.analyst-shell .analyst-kpi-value {
  font-size: 1.14rem !important;
  font-weight: 780 !important;
}

.analyst-shell .analyst-summary-card {
  border-radius: 12px !important;
  border: 1px solid #dbe4f0 !important;
  background: #ffffff !important;
}

.analyst-shell .analyst-dropzone {
  border-radius: 12px !important;
  border: 1px dashed #9fb3d8 !important;
  background: #f8fbff !important;
}

.analyst-shell .analyst-dropzone.is-dragover {
  border-color: #1d4ed8 !important;
  background: #edf3ff !important;
}

.analyst-shell .analyst-cta-primary {
  border: 1px solid #1d4ed8 !important;
  background: linear-gradient(180deg, #2563eb 0%, #1d4ed8 100%) !important;
  color: #ffffff !important;
}

.analyst-shell .analyst-cta-secondary,
.analyst-shell .btn-secondary {
  border: 1px solid #c9d6ea !important;
  background: #f5f8ff !important;
  color: #193a78 !important;
}

.analyst-shell .analyst-cta-secondary:hover,
.analyst-shell .btn-secondary:hover {
  background: #eaf0ff !important;
}

.analyst-shell .aw-help {
  border-color: #cdd8e8 !important;
  background: #f4f8ff !important;
  color: #2c4d87 !important;
}

@media (max-width: 1180px) {
  .analyst-shell .analyst-kpi-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 980px) {
  .analyst-shell .analyst-layout {
    grid-template-columns: 1fr !important;
  }
  .analyst-shell .analyst-sidebar {
    position: static !important;
  }
}
