/* ASTROCORE · Context Engine Astro Module – bendri stiliai dashboard moduliams */
@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@500;700;800&family=Inter:wght@400;500;600;700&display=swap');

* { box-sizing: border-box; }

:root {
  --quantum: #00f0ff;
  --cosmic-purple: #a855f7;
  --cosmic-blue: #3b82f6;
  --cosmic-pink: #ec4899;
  --bg-deep: #050510;
  --bg-dark: #0a0a1a;
  --text-main: #e6edf3;
  --text-muted: #8b949e;
  --border-subtle: rgba(0, 240, 255, 0.18);
}

body {
  font-family: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;
  margin: 0;
  background:
    radial-gradient(1200px 600px at 15% -10%, rgba(0, 240, 255, 0.12), transparent 60%),
    radial-gradient(900px 500px at 85% -20%, rgba(168, 85, 247, 0.14), transparent 60%),
    linear-gradient(180deg, var(--bg-dark) 0%, var(--bg-deep) 100%);
  color: var(--text-main);
  min-height: 100vh;
  line-height: 1.5;
  letter-spacing: 0.01em;
}

/* Header & nav */
.header {
  background: rgba(10, 10, 30, 0.8);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  padding: 1rem 1.5rem;
  border-bottom: 1px solid var(--border-subtle);
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.75rem;
  box-shadow: 0 8px 28px rgba(0, 0, 0, 0.28);
}
.header h1 {
  margin: 0;
  font-family: "Orbitron", sans-serif;
  font-size: 1.1rem;
  color: var(--quantum);
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  text-shadow: 0 0 18px rgba(0, 240, 255, 0.35);
  flex-shrink: 0;
}
.nav {
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem;
  justify-content: center;
  flex: 1;
  min-width: 0;
}
.nav-item {
  color: var(--text-muted);
  text-decoration: none;
  padding: 0.4rem 0.8rem;
  border-radius: 10px;
  border: 1px solid transparent;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.04em;
  transition: color 0.2s, background 0.2s, border-color 0.2s, transform 0.2s;
  text-transform: uppercase;
}
.nav-item:hover {
  color: #fff;
  background: rgba(0, 240, 255, 0.08);
  border-color: rgba(0, 240, 255, 0.35);
  transform: translateY(-1px);
}
.nav-item.active {
  color: #fff;
  background: linear-gradient(135deg, rgba(0, 240, 255, 0.16), rgba(168, 85, 247, 0.2));
  border-color: rgba(168, 85, 247, 0.42);
  box-shadow: 0 0 14px rgba(168, 85, 247, 0.2);
}

/* Main content */
main {
  padding: 1.5rem;
  max-width: 1280px;
  margin: 0 auto;
}
main h2 {
  color: #c084fc;
  margin-top: 0;
  margin-bottom: 1rem;
  font-size: 1.4rem;
  font-family: "Orbitron", sans-serif;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

/* Cards – bendras blokas */
.card {
  background: linear-gradient(145deg, #141925 0%, #1a2130 100%);
  border: 1px solid rgba(139, 92, 246, 0.26);
  border-radius: 12px;
  padding: 1.25rem;
  margin-bottom: 1rem;
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.22);
}
.card h3 {
  margin: 0 0 0.75rem;
  font-size: 1rem;
  color: #c084fc;
  font-weight: 600;
  letter-spacing: 0.02em;
}

/* Forms */
.form-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 0.75rem 1rem;
  align-items: end;
}
.form-group {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.form-group label {
  font-size: 0.8125rem;
  color: #8b949e;
}
input, select, textarea, button {
  background: rgba(10, 16, 28, 0.86);
  border: 1px solid rgba(139, 92, 246, 0.3);
  color: var(--text-main);
  padding: 0.5rem 0.75rem;
  border-radius: 10px;
  font-size: 0.9375rem;
  font-family: inherit;
}
input:focus, select:focus, textarea:focus {
  outline: none;
  border-color: rgba(0, 240, 255, 0.5);
  box-shadow: 0 0 0 3px rgba(0, 240, 255, 0.18);
}
input::placeholder, textarea::placeholder {
  color: #6e7681;
}
button {
  cursor: pointer;
  font-weight: 500;
  transition: background 0.15s, border-color 0.15s;
}
button:hover {
  background: rgba(0, 240, 255, 0.1);
  border-color: rgba(0, 240, 255, 0.35);
}
button.primary {
  background: linear-gradient(135deg, #7c3aed 0%, #a855f7 100%);
  border-color: rgba(168, 85, 247, 0.6);
  color: #fff;
}
button.primary:hover {
  background: linear-gradient(135deg, #8b5cf6 0%, #c084fc 100%);
  border-color: rgba(192, 132, 252, 0.7);
}
button.secondary {
  background: rgba(59, 130, 246, 0.14);
  color: #93c5fd;
}
button.secondary:hover {
  background: rgba(59, 130, 246, 0.24);
}

/* Output / report */
.out { margin-top: 0.5rem; }
.err { color: #f85149; }
.ok { color: #3fb950; }
pre {
  background: #0d1117;
  padding: 1rem;
  border-radius: 6px;
  overflow: auto;
  font-size: 0.8rem;
  white-space: pre-wrap;
  border: 1px solid #30363d;
}

/* Atskaitos blokai – „smiles“ / gražus teksto išdėstymas */
.report {
  margin-top: 1rem;
}
.report-section {
  background: #0d1117;
  border: 1px solid #30363d;
  border-radius: 8px;
  padding: 1rem 1.25rem;
  margin-bottom: 0.75rem;
}
.report-section h4 {
  margin: 0 0 0.5rem;
  font-size: 0.9375rem;
  color: #58a6ff;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.report-section .icon {
  font-size: 1.1rem;
}
.report-section p {
  margin: 0.25rem 0;
  font-size: 0.9375rem;
  color: #e6edf3;
}
.report-section .muted {
  color: #8b949e;
  font-size: 0.875rem;
}
.report-row {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 1.5rem;
  margin-top: 0.5rem;
}
.report-kv {
  display: flex;
  gap: 0.35rem;
}
.report-kv .k { color: #8b949e; }
.report-kv .v { color: #e6edf3; }
.report-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 1rem;
}
.report-image {
  margin-top: 0.5rem;
}
.report-image img {
  max-width: 100%;
  border-radius: 8px;
  border: 1px solid #30363d;
}

/* Loading state */
.loading {
  color: #8b949e;
  font-style: italic;
}
.loading::after {
  content: "";
  animation: dots 1.2s steps(4, end) infinite;
}
@keyframes dots {
  0%, 20% { content: "."; }
  40% { content: ".."; }
  60%, 100% { content: "..."; }
}

/* Kosmogramos ataskaita – dviejų dalių struktūra */
.kosmo-report-wrap {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.kosmo-report-header {
  background: linear-gradient(135deg, #161b22 0%, #21262d 100%);
  border: 1px solid #30363d;
  border-radius: 12px;
  padding: 1.5rem 1.75rem;
  text-align: center;
}
.kosmo-report-header .report-title {
  font-size: 1.35rem;
  font-weight: 700;
  color: #58a6ff;
  letter-spacing: 0.05em;
  margin: 0 0 0.5rem;
}
.kosmo-report-header .report-calc-time {
  font-size: 0.9rem;
  color: #8b949e;
}
.kosmo-report-header .report-calc-time strong {
  color: #e6edf3;
  font-weight: 600;
}

/* 2 dalis: Dabartinis momentas – dangaus kūnų išdėstymas */
.kosmo-now-block {
  background: #161b22;
  border: 1px solid #388bfd;
  border-radius: 12px;
  padding: 1.5rem 1.75rem;
}
.kosmo-now-block .block-title {
  font-size: 1.1rem;
  font-weight: 700;
  color: #58a6ff;
  letter-spacing: 0.03em;
  margin: 0 0 0.25rem;
}
.kosmo-now-block .block-datetime {
  font-size: 0.95rem;
  color: #8b949e;
  margin-bottom: 1rem;
}
.now-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));
  gap: 1rem 1.25rem;
  margin-bottom: 1rem;
}
.now-card-main {
  grid-column: 1 / -1;
  min-width: 0;
}
@media (min-width: 640px) {
  .now-card-main {
    grid-column: span 2;
  }
}
.now-card-main .now-datetime {
  font-size: 1.15rem;
  font-weight: 600;
  color: #e6edf3;
  margin: 0 0 0.25rem;
}
.now-card-main .now-tz {
  font-size: 0.9rem;
  margin: 0 0 0.5rem;
}
.now-card-main .now-meta {
  font-size: 0.8rem;
  color: #8b949e;
  margin: 0;
}
.celestial-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 0.75rem;
}
.celestial-item {
  background: #0d1117;
  border: 1px solid #30363d;
  border-radius: 8px;
  padding: 0.75rem 1rem;
  text-align: center;
  transition: border-color 0.15s;
}
.celestial-item:hover {
  border-color: #484f58;
}
.celestial-item .symbol {
  font-size: 1.5rem;
  display: block;
  margin-bottom: 0.25rem;
}
.celestial-item .name {
  font-size: 0.75rem;
  color: #8b949e;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}
.celestial-item .position {
  font-size: 1rem;
  font-weight: 600;
  color: #e6edf3;
  margin-top: 0.25rem;
}
.celestial-item .sign {
  font-size: 0.8rem;
  color: #58a6ff;
}
.kosmo-part-natal {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}

/* Dabartinis momentas – pilnas vaizdas */
.now-row {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 1.5rem;
  margin-bottom: 1rem;
}
.now-card {
  background: #0d1117;
  border: 1px solid #30363d;
  border-radius: 8px;
  padding: 0.75rem 1rem;
  min-width: 160px;
}
.now-card h5 {
  margin: 0 0 0.35rem;
  font-size: 0.7rem;
  color: #8b949e;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.now-card p {
  margin: 0;
  font-size: 0.9rem;
  color: #e6edf3;
}
.now-recs {
  list-style: none;
  padding: 0;
  margin: 0.5rem 0 0;
}
.now-recs li {
  padding: 0.25rem 0;
  font-size: 0.875rem;
  color: #e6edf3;
  border-bottom: 1px solid #21262d;
}
.now-recs li:last-child { border-bottom: none; }
.now-moon {
  font-size: 0.9rem;
  color: #58a6ff;
}

/* Transitai – gražus išdėstymas */
.transits-intro {
  font-size: 0.9rem;
  color: #8b949e;
  margin-bottom: 1rem;
}
.transits-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 0.75rem;
}
.transit-item {
  background: #0d1117;
  border: 1px solid #30363d;
  border-radius: 8px;
  padding: 1rem;
  transition: border-color 0.15s;
}
.transit-item:hover {
  border-color: #484f58;
}
.transit-item .tr-header {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.5rem;
  padding-bottom: 0.5rem;
  border-bottom: 1px solid #21262d;
}
.transit-item .tr-symbol {
  font-size: 1.25rem;
}
.transit-item .tr-name {
  font-size: 0.85rem;
  font-weight: 600;
  color: #e6edf3;
}
.transit-item .tr-row {
  font-size: 0.8rem;
  margin-top: 0.35rem;
  display: flex;
  justify-content: space-between;
  gap: 0.5rem;
}
.transit-item .tr-row .k { color: #8b949e; }
.transit-item .tr-row .v { color: #e6edf3; }
.transit-item .tr-aspect {
  margin-top: 0.5rem;
  font-size: 0.75rem;
  padding: 0.25rem 0.5rem;
  background: #21262d;
  border-radius: 4px;
  color: #58a6ff;
  display: inline-block;
}
.transit-item .tr-aspect.conjunction { color: #3fb950; }
.transit-item .tr-aspect.square { color: #f85149; }
.transit-item .tr-aspect.trine { color: #58a6ff; }
.transit-item .tr-aspect.sextile { color: #a371f7; }
.transit-item .tr-aspect.opposition { color: #d29922; }

/* Transitų ataskaita – lentelė ir download */
.transit-report-card {
  background: linear-gradient(145deg, #161b22 0%, #1c2128 100%);
  border: 1px solid rgba(139, 92, 246, 0.35);
  border-radius: 16px;
  padding: 0;
  margin-bottom: 1.5rem;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
  overflow: hidden;
}
.transit-report-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.75rem;
  padding: 1.25rem 1.75rem;
  border-bottom: 1px solid rgba(139, 92, 246, 0.2);
  background: rgba(0, 0, 0, 0.2);
}
.transit-report-title {
  font-size: 1.25rem;
  font-weight: 600;
  color: #c084fc;
  margin: 0;
}
.transit-report-download {
  display: flex;
  gap: 0.5rem;
}
.btn-download {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  background: rgba(124, 58, 237, 0.25);
  border: 1px solid rgba(139, 92, 246, 0.5);
  color: #c084fc;
  padding: 0.5rem 1rem;
  border-radius: 10px;
  font-size: 0.875rem;
  font-weight: 500;
  cursor: pointer;
  text-decoration: none;
  transition: background 0.2s, border-color 0.2s, transform 0.15s;
}
.btn-download:hover {
  background: rgba(124, 58, 237, 0.4);
  border-color: #a78bfa;
  color: #e9d5ff;
  transform: translateY(-1px);
}
.transit-report-body {
  padding: 1.25rem 1.75rem;
}
.transit-report-meta {
  font-size: 0.9rem;
  color: #9ca3af;
  margin-bottom: 1.25rem;
}
.transit-report-meta strong { color: #e6edf3; }
.transit-table-wrap {
  overflow-x: auto;
  border-radius: 12px;
  border: 1px solid rgba(139, 92, 246, 0.2);
}
.transit-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.9rem;
}
.transit-table th,
.transit-table td {
  padding: 0.75rem 1rem;
  text-align: left;
  border-bottom: 1px solid rgba(255, 255, 255, 0.06);
}
.transit-table th {
  background: rgba(139, 92, 246, 0.12);
  color: #c084fc;
  font-weight: 600;
  white-space: nowrap;
}
.transit-table tr:last-child td { border-bottom: none; }
.transit-table tr:hover td { background: rgba(255, 255, 255, 0.02); }
.transit-table .tr-symbol { font-size: 1.2rem; }
.transit-table .tr-aspect-badge {
  display: inline-block;
  padding: 0.2rem 0.5rem;
  border-radius: 6px;
  font-size: 0.8rem;
  font-weight: 500;
}
.transit-table .tr-aspect-badge.conjunction { background: rgba(63, 185, 80, 0.2); color: #3fb950; }
.transit-table .tr-aspect-badge.square { background: rgba(248, 81, 73, 0.2); color: #f85149; }
.transit-table .tr-aspect-badge.trine { background: rgba(88, 166, 255, 0.2); color: #58a6ff; }
.transit-table .tr-aspect-badge.sextile { background: rgba(163, 113, 247, 0.2); color: #a371f7; }
.transit-table .tr-aspect-badge.opposition { background: rgba(210, 153, 34, 0.2); color: #d29922; }
.transit-table .tr-aspect-badge.no-major-aspect { background: rgba(139, 148, 158, 0.2); color: #8b949e; }

/* Nataliniai aspektai */
.aspects-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 0.75rem;
  margin-top: 0.75rem;
}
.aspect-item {
  background: #161b22;
  border: 1px solid #30363d;
  border-radius: 8px;
  padding: 0.65rem 0.85rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.aspect-item .aspect-planets {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.35rem;
  font-size: 0.85rem;
}
.aspect-item .asp-symbol { opacity: 0.9; }
.aspect-item .asp-name { color: #e6edf3; }
.aspect-item .asp-sep { color: #8b949e; margin: 0 0.15rem; }
.aspect-item .aspect-type {
  font-size: 0.8rem;
  font-weight: 600;
  padding: 0.2rem 0.5rem;
  border-radius: 4px;
  background: #21262d;
  color: #58a6ff;
  display: inline-block;
  width: fit-content;
}
.aspect-item .aspect-type.conjunction { color: #3fb950; }
.aspect-item .aspect-type.square { color: #f85149; }
.aspect-item .aspect-type.trine { color: #58a6ff; }
.aspect-item .aspect-type.sextile { color: #a371f7; }
.aspect-item .aspect-type.opposition { color: #d29922; }

/* ========== Cosmic / glass stilius (Kosmograma ir dashboard) ========== */
.glass-effect {
  background: rgba(255, 255, 255, 0.04);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, 0.08);
}

/* Kosmogramos forma – toks pat dizainas kaip „Enter Your Birth Details” */
.kosmo-form-card {
  background: linear-gradient(145deg, #161b22 0%, #1c2128 100%);
  border: 1px solid rgba(139, 92, 246, 0.35);
  border-radius: 16px;
  padding: 1.75rem 2rem;
  margin-bottom: 1.5rem;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
}
.kosmo-form-card .cosmic-form-title {
  font-size: 1.25rem;
  font-weight: 600;
  color: #c084fc;
  margin: 0 0 0.5rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.kosmo-form-card .cosmic-form-desc {
  font-size: 0.9rem;
  color: #8b949e;
  margin: 0 0 1.25rem;
}
.kosmo-form-card .form-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 1rem 1.25rem;
  align-items: end;
}
.kosmo-form-card .form-group {
  display: flex;
  flex-direction: column;
  gap: 0.35rem;
}
.kosmo-form-card .form-group label {
  font-size: 0.8125rem;
  color: #9ca3af;
  font-weight: 500;
}
.kosmo-form-card input,
.kosmo-form-card select {
  width: 100%;
  background: rgba(13, 17, 23, 0.85);
  border: 1px solid #374151;
  border-radius: 10px;
  padding: 0.65rem 0.9rem;
  color: #e6edf3;
  font-size: 0.9375rem;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.kosmo-form-card input:focus,
.kosmo-form-card select:focus {
  outline: none;
  border-color: #a78bfa;
  box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.2);
}
.kosmo-form-card input::placeholder {
  color: #6b7280;
}
.kosmo-form-card .form-group-submit {
  grid-column: 1 / -1;
}
.kosmo-form-card .btn-kosmo {
  background: linear-gradient(135deg, #7c3aed 0%, #a855f7 50%, #c084fc 100%);
  border: none;
  color: #fff;
  font-weight: 600;
  padding: 0.75rem 1.5rem;
  border-radius: 10px;
  cursor: pointer;
  font-size: 0.9375rem;
  transition: transform 0.15s, box-shadow 0.15s;
  margin-top: 0.25rem;
}
.kosmo-form-card .btn-kosmo:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(124, 58, 237, 0.4);
}

/* Kosmograma loading / error / result – sutapatinti su cosmic kortele */
#kosmo-loading.kosmo-loading-card {
  background: linear-gradient(145deg, #161b22 0%, #1c2128 100%);
  border: 1px solid rgba(59, 130, 246, 0.35);
  border-radius: 16px;
  padding: 2rem;
  text-align: center;
}
#kosmo-loading.kosmo-loading-card .loading {
  color: #93c5fd;
  font-style: normal;
}
#kosmo-error.kosmo-error-card {
  background: linear-gradient(145deg, #161b22 0%, #1c2128 100%);
  border: 1px solid rgba(248, 81, 73, 0.35);
  border-radius: 16px;
  padding: 1.25rem 2rem;
}
#kosmo-error.kosmo-error-card .err {
  color: #fca5a5;
}

/* ========== Premium Context Module kortelės – Temporal, Annual, Relationship, Development, Symbolic Number, Pattern Logic ========== */
.cosmic-card {
  background: linear-gradient(145deg, #161b22 0%, #1c2128 100%);
  border: 1px solid rgba(139, 92, 246, 0.35);
  border-radius: 16px;
  padding: 1.75rem 2rem;
  margin-bottom: 1.5rem;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.3);
}
.cosmic-card h3 {
  font-size: 1.25rem;
  font-weight: 600;
  color: #c084fc;
  margin: 0 0 1rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.cosmic-card p {
  font-size: 0.9rem;
  color: #9ca3af;
  margin: 0 0 0.75rem;
}
.cosmic-card .form-row {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem 1rem;
  margin-bottom: 1rem;
}
.cosmic-card .form-row label,
.cosmic-card .form-row .label {
  font-size: 0.8125rem;
  color: #9ca3af;
  white-space: nowrap;
}
.cosmic-card input,
.cosmic-card select,
.cosmic-card textarea {
  background: rgba(13, 17, 23, 0.85);
  border: 1px solid #374151;
  border-radius: 10px;
  padding: 0.5rem 0.75rem;
  color: #e6edf3;
  font-size: 0.9375rem;
  font-family: inherit;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.cosmic-card input:focus,
.cosmic-card select:focus,
.cosmic-card textarea:focus {
  outline: none;
  border-color: #a78bfa;
  box-shadow: 0 0 0 3px rgba(139, 92, 246, 0.2);
}
.cosmic-card input::placeholder,
.cosmic-card textarea::placeholder {
  color: #6b7280;
}
.cosmic-card input[type="number"] { min-width: 6rem; }
.cosmic-card input[type="text"],
.cosmic-card input[type="date"],
.cosmic-card input[type="time"] { min-width: 8rem; }
.cosmic-card textarea {
  width: 100%;
  min-height: 4rem;
  resize: vertical;
}
.cosmic-card .btn-kosmo {
  background: linear-gradient(135deg, #7c3aed 0%, #a855f7 50%, #c084fc 100%);
  border: none;
  color: #fff;
  font-weight: 600;
  padding: 0.6rem 1.25rem;
  border-radius: 10px;
  cursor: pointer;
  font-size: 0.9375rem;
  transition: transform 0.15s, box-shadow 0.15s;
}
.cosmic-card .btn-kosmo:hover {
  transform: translateY(-1px);
  box-shadow: 0 6px 20px rgba(124, 58, 237, 0.4);
}
.cosmic-card pre.out {
  margin-top: 1rem;
  margin-bottom: 0;
  background: rgba(13, 17, 23, 0.9);
  border: 1px solid rgba(139, 92, 246, 0.2);
  border-radius: 12px;
  padding: 1rem 1.25rem;
  font-size: 0.8rem;
  color: #e6edf3;
}
.cosmic-card pre.out.err { color: #fca5a5; }
.cosmic-card pre.out.ok { color: #86efac; }

/* ========== ASTROCORE statuso blokas – statistika + gyvi duomenys ========== */
.astrocore-status-card {
  background: linear-gradient(160deg, #0f172a 0%, #1e1b4b 35%, #1c2128 100%);
  border: 1px solid rgba(99, 102, 241, 0.4);
  border-radius: 16px;
  padding: 1.75rem 2rem;
  margin-bottom: 1.5rem;
  box-shadow: 0 12px 40px rgba(0, 0, 0, 0.4), 0 0 0 1px rgba(255, 255, 255, 0.03);
}
.astrocore-status-header {
  margin-bottom: 1.25rem;
  padding-bottom: 1rem;
  border-bottom: 1px solid rgba(139, 92, 246, 0.25);
}
.astrocore-status-title {
  font-size: 1.35rem;
  font-weight: 700;
  color: #e0e7ff;
  margin: 0 0 0.35rem;
  letter-spacing: 0.02em;
}
.astrocore-status-desc {
  font-size: 0.875rem;
  color: #94a3b8;
  margin: 0;
  line-height: 1.5;
}
.astrocore-stats {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
  gap: 1rem;
  margin-bottom: 1.5rem;
}
.astrocore-stat-box {
  background: rgba(15, 23, 42, 0.7);
  border: 1px solid rgba(99, 102, 241, 0.3);
  border-radius: 12px;
  padding: 1rem 1.25rem;
  text-align: center;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.astrocore-stat-box:hover {
  border-color: rgba(139, 92, 246, 0.5);
  box-shadow: 0 4px 16px rgba(99, 102, 241, 0.15);
}
.astrocore-stat-label {
  display: block;
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  color: #64748b;
  margin-bottom: 0.35rem;
}
.astrocore-stat-value {
  font-size: 1.1rem;
  font-weight: 700;
  color: #e0e7ff;
}
.astrocore-endpoints {
  display: flex;
  flex-direction: column;
  gap: 0;
  border-radius: 12px;
  overflow: hidden;
  border: 1px solid rgba(99, 102, 241, 0.25);
  background: rgba(15, 23, 42, 0.4);
}
.astrocore-endpoint-row {
  display: grid;
  grid-template-columns: 1fr 1.4fr 0.7fr 0.8fr 1.2fr;
  gap: 1rem;
  align-items: center;
  padding: 0.75rem 1.25rem;
  font-size: 0.875rem;
  border-bottom: 1px solid rgba(99, 102, 241, 0.12);
}
.astrocore-endpoint-row:last-child {
  border-bottom: none;
}
.astrocore-endpoint-row:hover:not(.astrocore-endpoint-header) {
  background: rgba(99, 102, 241, 0.08);
}
.astrocore-endpoint-row.astrocore-endpoint-header {
  background: rgba(30, 27, 75, 0.8);
  font-weight: 600;
  color: #a5b4fc;
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.astrocore-ep-name { color: #c7d2fe; }
.astrocore-ep-path {
  font-family: ui-monospace, monospace;
  font-size: 0.8rem;
  color: #94a3b8;
  word-break: break-all;
}
.astrocore-ep-status {
  font-weight: 600;
  padding: 0.2rem 0.5rem;
  border-radius: 6px;
  font-size: 0.75rem;
}
.astrocore-ep-status.ok {
  background: rgba(34, 197, 94, 0.2);
  color: #22c55e;
}
.astrocore-ep-status.fail {
  background: rgba(239, 68, 68, 0.2);
  color: #ef4444;
}
.astrocore-ep-status.pending {
  background: rgba(148, 163, 184, 0.2);
  color: #94a3b8;
}
.astrocore-ep-ms {
  color: #64748b;
  font-variant-numeric: tabular-nums;
}
.astrocore-ep-data {
  color: #a5b4fc;
  font-size: 0.8rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
}
@media (max-width: 768px) {
  .astrocore-endpoint-row {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto;
    gap: 0.25rem 1rem;
  }
  .astrocore-endpoint-row .astrocore-ep-path { grid-column: 1 / -1; }
}

/* ========== DASHBOARD pagrindinis – suvestinės, grafikai, system health, endpointai ========== */
.dash-overview-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 1rem;
  margin-bottom: 1.5rem;
}
.dash-summary-card {
  background: linear-gradient(145deg, #161b22 0%, #1c2128 100%);
  border: 1px solid rgba(139, 92, 246, 0.3);
  border-radius: 14px;
  padding: 1.25rem;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.dash-summary-card:hover {
  border-color: rgba(139, 92, 246, 0.5);
  box-shadow: 0 6px 24px rgba(0, 0, 0, 0.25);
}
.dash-summary-card .dash-card-title {
  font-size: 0.75rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  color: #9ca3af;
  margin: 0 0 0.5rem;
}
.dash-summary-card .dash-card-value {
  font-size: 1.25rem;
  font-weight: 600;
  color: #c084fc;
  margin: 0;
}
.dash-summary-card .dash-card-extra {
  font-size: 0.8rem;
  color: #8b949e;
  margin-top: 0.35rem;
}
.dash-charts-row {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
  gap: 1.25rem;
  margin-bottom: 1.5rem;
}
.dash-charts-section .cosmic-card { margin-bottom: 0; }
.dash-charts-desc {
  font-size: 0.875rem;
  color: #94a3b8;
  margin: -0.5rem 0 1rem;
}
.dash-chart-card {
  background: linear-gradient(145deg, #161b22 0%, #1c2128 100%);
  border: 1px solid rgba(139, 92, 246, 0.3);
  border-radius: 14px;
  padding: 1.25rem;
}
.dash-chart-card .dash-chart-title {
  font-size: 0.9rem;
  font-weight: 600;
  color: #c084fc;
  margin: 0 0 0.75rem;
}
.dash-chart-wrap {
  height: 160px;
  position: relative;
  min-height: 160px;
}
.dash-chart-wrap canvas { max-height: 160px; min-height: 120px; }
.dash-chart-hint {
  font-size: 0.7rem;
  color: #64748b;
  margin: 0.5rem 0 0;
}
.dash-endpoints-table {
  width: 100%;
  border-collapse: collapse;
  font-size: 0.85rem;
}
.dash-endpoints-table th,
.dash-endpoints-table td {
  padding: 0.5rem 0.75rem;
  text-align: left;
  border-bottom: 1px solid rgba(255,255,255,0.06);
}
.dash-endpoints-table th {
  color: #9ca3af;
  font-weight: 600;
}
.dash-endpoints-table .ep-status-ok { color: #3fb950; }
.dash-endpoints-table .ep-status-fail { color: #f85149; }
.dash-endpoints-table .ep-status-pending { color: #8b949e; }
.dash-endpoints-table .ep-status-post { color: #8b949e; font-style: italic; }
.dash-endpoints-table .ep-status-num { color: #8b949e; }

/* Skyrių spalvos – pirmas stulpelis */
.dash-endpoints-table td.ep-section { font-weight: 600; border-left: 3px solid transparent; }
.dash-endpoints-table tr[data-section="root"] td.ep-section { color: #60a5fa; border-left-color: #60a5fa; }
.dash-endpoints-table tr[data-section="calendar"] td.ep-section { color: #34d399; border-left-color: #34d399; }
.dash-endpoints-table tr[data-section="utilities"] td.ep-section { color: #a78bfa; border-left-color: #a78bfa; }
.dash-endpoints-table tr[data-section="natal"] td.ep-section { color: #fbbf24; border-left-color: #fbbf24; }
.dash-endpoints-table tr[data-section="transits"] td.ep-section { color: #f472b6; border-left-color: #f472b6; }
.dash-endpoints-table tr[data-section="solar"] td.ep-section { color: #fb923c; border-left-color: #fb923c; }
.dash-endpoints-table tr[data-section="progressions"] td.ep-section { color: #2dd4bf; border-left-color: #2dd4bf; }
.dash-endpoints-table tr[data-section="astro"] td.ep-section { color: #818cf8; border-left-color: #818cf8; }
.dash-endpoints-table tr[data-section="synastry"] td.ep-section { color: #c084fc; border-left-color: #c084fc; }
.dash-endpoints-table tr[data-section="kabbalah"] td.ep-section { color: #e879f9; border-left-color: #e879f9; }
.dash-endpoints-table tr[data-section="consciousness"] td.ep-section { color: #94a3b8; border-left-color: #94a3b8; }
.dash-endpoints-table tr[data-section="aspects"] td.ep-section { color: #38bdf8; border-left-color: #38bdf8; }
.dash-endpoints-table tr[data-section="assistant"] td.ep-section { color: #4ade80; border-left-color: #4ade80; }
.dash-endpoints-table tr[data-section="charts"] td.ep-section { color: #a8a29e; border-left-color: #a8a29e; }

.dash-section-title {
  font-size: 1rem;
  font-weight: 600;
  color: #c084fc;
  margin: 0 0 0.75rem;
}
.dash-health-badge {
  display: inline-block;
  padding: 0.2rem 0.6rem;
  border-radius: 8px;
  font-size: 0.8rem;
  font-weight: 500;
}
.dash-health-badge.ok { background: rgba(63, 185, 80, 0.2); color: #3fb950; }
.dash-health-badge.pending { background: rgba(148, 163, 184, 0.2); color: #94a3b8; }
.dash-health-badge.warn { background: rgba(210, 153, 34, 0.2); color: #d29922; }
.dash-health-badge.fail { background: rgba(248, 81, 73, 0.2); color: #f85149; }

/* System health – modern card */
.dash-health-section .cosmic-card { margin-bottom: 0; }
.dash-health-modern {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 1rem;
}
.dash-health-card {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
  background: rgba(15, 23, 42, 0.6);
  border: 1px solid rgba(99, 102, 241, 0.28);
  border-radius: 14px;
  padding: 1.25rem 1.5rem;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.dash-health-card:hover {
  border-color: rgba(99, 102, 241, 0.45);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
}
.dash-health-card:has(.dash-health-badge.ok) {
  border-color: rgba(34, 197, 94, 0.4);
  background: linear-gradient(135deg, rgba(15, 23, 42, 0.8) 0%, rgba(22, 101, 52, 0.12) 100%);
}
.dash-health-card:has(.dash-health-badge.ok) .dash-health-icon { color: #22c55e; }
.dash-health-card:has(.dash-health-badge.fail) {
  border-color: rgba(239, 68, 68, 0.4);
  background: linear-gradient(135deg, rgba(15, 23, 42, 0.8) 0%, rgba(127, 29, 29, 0.12) 100%);
}
.dash-health-card:has(.dash-health-badge.fail) .dash-health-icon { color: #ef4444; }
.dash-health-card:has(.dash-health-badge.pending) .dash-health-icon {
  color: #94a3b8;
  animation: dash-health-pulse 1.5s ease-in-out infinite;
}
@keyframes dash-health-pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.5; }
}
.dash-health-icon-wrap {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  border-radius: 12px;
  background: rgba(99, 102, 241, 0.15);
  display: flex;
  align-items: center;
  justify-content: center;
}
.dash-health-card:has(.dash-health-badge.ok) .dash-health-icon-wrap { background: rgba(34, 197, 94, 0.15); }
.dash-health-card:has(.dash-health-badge.fail) .dash-health-icon-wrap { background: rgba(239, 68, 68, 0.15); }
.dash-health-icon {
  font-size: 1.5rem;
  line-height: 1;
  color: #6366f1;
  font-weight: 700;
}
.dash-health-body { min-width: 0; }
.dash-health-label {
  font-size: 0.7rem;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  color: #94a3b8;
  margin: 0 0 0.35rem;
}
.dash-health-value {
  font-size: 1.1rem;
  font-weight: 600;
  color: #e0e7ff;
  margin: 0;
}
.dash-health-detail {
  font-size: 0.8125rem;
  color: #64748b;
  margin: 0.35rem 0 0;
}
.dash-health-ms {
  font-weight: 700;
  color: #e0e7ff;
  font-variant-numeric: tabular-nums;
}
.dash-health-card .dash-health-icon-ms {
  font-size: 1.25rem;
  color: #6366f1;
}

/* ========== Compact typography for Astro lead panels ========== */
.dash-lead-section {
  font-size: 12px;
}

.dash-lead-section .dash-section-title {
  font-size: 0.95rem !important;
}

.dash-lead-section [id^="lead_"] {
  font-size: 0.82rem !important;
  line-height: 1.28 !important;
  white-space: normal !important;
  overflow-wrap: anywhere !important;
  word-break: break-word !important;
}

.dash-lead-section #lead_datetime,
.dash-lead-section #lead_astro_local_time,
.dash-lead-section #lead_timestamps_iso,
.dash-lead-section #lead_timestamps_rfc,
.dash-lead-section #lead_timestamps_rfc3339,
.dash-lead-section #lead_current_json,
.dash-lead-section #lead_astro_json,
.dash-lead-section #lead_planetary_json {
  font-size: 0.75rem !important;
}

/* ========== AI interpretacija (Quantara) – kosmogramos išvedimo stilius ========== */
.kosmo-ai-content {
  font-size: 0.95rem;
  line-height: 1.55;
  color: var(--text-main);
}
.kosmo-ai-content .kosmo-ai-p {
  margin: 0 0 0.75rem 0;
}
.kosmo-ai-content .kosmo-ai-p:empty { display: none; }
.kosmo-ai-content .kosmo-ai-h3 {
  margin: 1.25rem 0 0.5rem 0;
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--cosmic-purple);
  font-family: "Orbitron", system-ui, sans-serif;
  letter-spacing: 0.02em;
  line-height: 1.3;
}
.kosmo-ai-content .kosmo-ai-h4 {
  margin: 1rem 0 0.45rem 0;
  font-size: 1.05rem;
  font-weight: 700;
  color: #c084fc;
  letter-spacing: 0.02em;
  line-height: 1.3;
}
.kosmo-ai-content .kosmo-ai-h5 {
  margin: 1rem 0 0.4rem 0;
  font-size: 0.98rem;
  font-weight: 600;
  color: var(--cosmic-purple);
}
.kosmo-ai-content .kosmo-ai-hr-wrap {
  margin: 1.25rem 0;
}
.kosmo-ai-content .kosmo-ai-hr {
  border: none;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(0,240,255,0.2), rgba(168,85,247,0.4), rgba(0,240,255,0.2), transparent);
  margin: 0.5rem 0;
}
.kosmo-ai-content .kosmo-ai-blockquote {
  margin: 0.5rem 0;
  padding-left: 0.75rem;
  border-left: 3px solid rgba(0,240,255,0.5);
  color: rgba(255,255,255,0.85);
  font-style: italic;
}
.kosmo-ai-content .kosmo-ai-spacer {
  height: 0.75rem;
  margin: 0;
  padding: 0;
  border: none;
}
.kosmo-ai-content .kosmo-ai-li {
  margin: 0.35rem 0 0.25rem 0.75rem;
  padding: 0.15rem 0;
  list-style: none;
  color: #e5e7eb;
}
.kosmo-ai-content .kosmo-ai-li::before {
  content: "• ";
  color: var(--quantum);
  margin-right: 0.35rem;
}
.kosmo-ai-content .kosmo-ai-strong,
.kosmo-ai-content strong {
  color: var(--quantum);
  font-weight: 600;
}
/* ===================================================== */
/* MetaCore ecosystem footer for AstroCore dashboard */
/* ===================================================== */
.eco-footer{
  margin: 56px 0 0;
  padding: 0 0 44px;
  color:#dbeafe;
  font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;
}
.eco-footer-container{
  width:min(1180px,calc(100% - 32px));
  margin:0 auto;
}
.eco-shell{
  border:1px solid rgba(0,240,255,.18);
  border-radius:28px;
  background:
    radial-gradient(circle at 12% 0%, rgba(0,240,255,.10), transparent 34%),
    radial-gradient(circle at 88% 0%, rgba(168,85,247,.12), transparent 36%),
    linear-gradient(145deg, rgba(255,255,255,.062), rgba(255,255,255,.026));
  box-shadow:0 24px 80px rgba(0,0,0,.28), 0 0 60px rgba(0,240,255,.06);
  overflow:hidden;
}
.eco-inner{padding:34px 34px 28px;}
.eco-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(0,240,255,.20);
  background:rgba(0,240,255,.07);
  color:#20e8ff;
  font-size:11px;
  font-weight:900;
  letter-spacing:.16em;
  text-transform:uppercase;
  margin-bottom:16px;
}
.eco-kicker:before{
  content:"";
  width:7px;height:7px;border-radius:50%;
  background:#20e8ff;
  box-shadow:0 0 14px rgba(32,232,255,.8);
}
.eco-title{
  margin:0 0 16px!important;
  color:#fff!important;
  font-family:Orbitron,Inter,sans-serif!important;
  font-size:clamp(1.55rem,3vw,2.8rem)!important;
  line-height:1!important;
  letter-spacing:-.035em!important;
  text-transform:uppercase;
}
.eco-text{
  max-width:1020px;
  margin:0 0 12px;
  color:#c9d7ef;
  line-height:1.72;
  font-size:.98rem;
}
.eco-text strong{color:#fff;}
.eco-text--dim{color:#9fb0cb;}
.eco-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin:26px 0 22px;
}
.eco-card{
  display:block;
  min-height:132px;
  padding:16px;
  border-radius:20px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(255,255,255,.045);
  color:#dbeafe;
  text-decoration:none!important;
  transition:transform .2s ease, border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.eco-card:hover{
  transform:translateY(-2px);
  border-color:rgba(0,240,255,.34);
  background:rgba(0,240,255,.075);
  box-shadow:0 16px 40px rgba(0,0,0,.22), 0 0 28px rgba(0,240,255,.08);
}
.eco-card-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}
.eco-card-title{
  color:#fff;
  font-weight:900;
  letter-spacing:-.02em;
  line-height:1.15;
}
.eco-badge{
  flex:0 0 auto;
  padding:4px 7px;
  border-radius:999px;
  color:#20e8ff;
  background:rgba(0,240,255,.08);
  border:1px solid rgba(0,240,255,.16);
  font-size:9px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.10em;
}
.eco-note{
  color:#9fb0cb;
  font-size:.82rem;
  line-height:1.5;
}
.eco-card--core{border-color:rgba(0,240,255,.24);}
.eco-card--activate{border-color:rgba(52,211,153,.24);}
.eco-mid{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  padding:18px 0 16px;
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(255,255,255,.08);
}
.eco-mid a{
  color:#9eefff;
  text-decoration:none!important;
  font-size:.86rem;
  font-weight:800;
  padding:8px 10px;
  border-radius:999px;
  background:rgba(0,240,255,.055);
  border:1px solid rgba(0,240,255,.12);
}
.eco-mid a:hover{color:#fff;border-color:rgba(0,240,255,.30);}
.eco-tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:18px 0 16px;
}
.eco-tags span{
  padding:7px 10px;
  border-radius:999px;
  color:#b9c9e3;
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.075);
  font-size:.78rem;
  font-weight:700;
}
.eco-legal{
  margin:14px 0 0;
  color:#8494b2;
  font-size:.82rem;
  line-height:1.6;
}
.eco-bottom-links{
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  margin-top:12px;
}
.eco-bottom-links a{
  color:#20e8ff;
  text-decoration:none!important;
  font-size:.82rem;
}
.eco-bottom-links a:hover{color:#fff;}
@media(max-width:980px){
  .eco-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .eco-inner{padding:26px 20px 22px;}
}
@media(max-width:620px){
  .eco-footer-container{width:min(100% - 24px,1180px);}
  .eco-grid{grid-template-columns:1fr;}
  .eco-card{min-height:auto;}
}

/* metacore_eco_footer merged into dashboard.css */


/* ===================================================== */
/* B2 PUBLIC SHELL TRANSPLANT – activation/demo/mobile UI */
/* ===================================================== */
.b2-public-header .header-brand__row{display:flex;align-items:center;gap:14px}
.header-mark{width:16px;height:16px;border-radius:999px;background:linear-gradient(135deg,var(--quantum,#00f0ff),#8bf3d1);box-shadow:0 0 0 6px rgba(0,240,255,.10),0 0 24px rgba(0,240,255,.20);display:inline-block;flex:0 0 auto}
.header-meta{font-size:.74rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#9fb2cc;margin-top:3px}
.dashboard-main{max-width:1460px;margin:0 auto;padding:28px 22px 56px}
.dashboard-shell{display:flex;flex-direction:column;gap:18px}
.dashboard-shell>section,.dashboard-shell>article{margin:0}
.dashboard-shell>h2{margin:0 0 2px;font-family:Orbitron,Inter,sans-serif;font-size:clamp(1.25rem,2vw,2rem);letter-spacing:-.03em;color:#fff}
.b2-menu-toggle{display:none;width:48px;height:48px;align-items:center;justify-content:center;background:linear-gradient(180deg,rgba(255,255,255,.08),rgba(255,255,255,.04));border:1px solid rgba(255,255,255,.10);border-radius:14px;color:#fff;cursor:pointer;font-size:1.4rem;box-shadow:0 12px 30px rgba(0,0,0,.18)}
.b2-mobile-overlay{display:none;position:fixed;inset:0;z-index:100;background:rgba(5,9,22,.72);backdrop-filter:blur(12px);opacity:0;visibility:hidden;transition:opacity .24s ease,visibility .24s ease}
.b2-mobile-overlay.open{opacity:1;visibility:visible}
.b2-mobile-menu{position:absolute;inset:18px;border-radius:26px;background:linear-gradient(180deg,rgba(8,15,31,.98),rgba(7,13,26,.96));border:1px solid rgba(255,255,255,.08);box-shadow:0 28px 60px rgba(0,0,0,.30);display:flex;flex-direction:column;padding:18px;overflow:auto}
.b2-mobile-menu__top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:18px}
.b2-mobile-brand{display:flex;flex-direction:column;gap:4px}.b2-mobile-brand strong{color:#fff;font-family:Orbitron,Inter,sans-serif;font-size:1.05rem;letter-spacing:-.02em}.b2-mobile-brand span{color:#9fb2cc;font-size:.76rem;text-transform:uppercase;letter-spacing:.08em;font-weight:700}.b2-mobile-close{width:46px;height:46px;border:none;border-radius:14px;background:rgba(255,255,255,.06);color:#fff;font-size:1.5rem;cursor:pointer}.b2-mobile-nav{display:flex;flex-direction:column;gap:10px}.b2-mobile-nav-item{display:block;width:100%;padding:14px 16px;font-size:1rem;font-weight:700;color:#c7d2fe;text-align:left;text-decoration:none;border-radius:16px;border:1px solid rgba(255,255,255,.06);background:rgba(255,255,255,.03)}.b2-mobile-nav-item.active{color:#fff;background:linear-gradient(180deg,rgba(0,240,255,.10),rgba(168,85,247,.10));border-color:rgba(0,240,255,.20)}.b2-mobile-note{margin-top:16px;padding:14px 16px;border-radius:16px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.03);color:#cdd8ea;line-height:1.65;font-size:.92rem}
.demo-callout{display:flex;justify-content:space-between;gap:18px;align-items:center;flex-wrap:wrap;padding:18px 20px;border-radius:20px;border:1px solid rgba(255,255,255,.08);background:linear-gradient(135deg,rgba(255,255,255,.04),rgba(0,240,255,.05));box-shadow:0 18px 44px rgba(0,0,0,.22)}
.demo-callout strong{display:block;color:#fff;font-family:Orbitron,Inter,sans-serif;margin-bottom:6px}.demo-callout p{margin:0;color:#d7e3f7;line-height:1.65}.demo-callout__content{display:flex;flex-direction:column;gap:10px;max-width:880px}.demo-callout__actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.demo-callout__badge{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;padding:7px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:#eaf4ff;font-size:.78rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.demo-callout--soft{border-color:rgba(0,240,255,.20);background:linear-gradient(135deg,rgba(0,240,255,.08),rgba(168,85,247,.06))}.demo-callout--warn{border-color:rgba(255,184,77,.22);background:linear-gradient(135deg,rgba(255,184,77,.10),rgba(168,85,247,.06))}.demo-callout--limit{border-color:rgba(255,90,122,.24);background:linear-gradient(135deg,rgba(255,90,122,.12),rgba(168,85,247,.08))}.demo-callout--soft .demo-callout__badge{border-color:rgba(0,240,255,.24);background:rgba(0,240,255,.10);color:#9df7ff}.demo-callout--warn .demo-callout__badge{border-color:rgba(255,184,77,.26);background:rgba(255,184,77,.12);color:#ffd38f}.demo-callout--limit .demo-callout__badge{border-color:rgba(255,90,122,.26);background:rgba(255,90,122,.12);color:#ffb6c4}
.gate-modal__backdrop{position:fixed;inset:0;z-index:200;background:rgba(4,8,20,.72);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:20px}.gate-modal{position:relative;max-width:640px;width:100%;padding:28px;border-radius:26px;border:1px solid rgba(255,255,255,.10);background:linear-gradient(180deg,rgba(11,18,39,.96),rgba(7,13,28,.98));box-shadow:0 30px 80px rgba(0,0,0,.45)}.gate-modal__eyebrow{display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;border:1px solid rgba(0,240,255,.18);background:rgba(0,240,255,.08);color:#9df7ff;font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:12px}.gate-modal h3{margin:0 0 12px;color:#fff;font-family:Orbitron,Inter,sans-serif;font-size:1.35rem}.gate-modal p{margin:0;color:#dce7fb;line-height:1.75;font-size:1rem}.gate-modal__meta{margin-top:14px;color:#9fb4d0;font-size:.9rem}.gate-modal__actions{margin-top:18px;display:flex;gap:10px;flex-wrap:wrap}.gate-modal__close{position:absolute;top:14px;right:14px;width:40px;height:40px;border:none;border-radius:999px;background:rgba(255,255,255,.06);color:#fff;font-size:1.4rem;cursor:pointer}
@media(max-width:980px){.b2-menu-toggle{display:flex}.header .nav{display:none}.b2-mobile-overlay{display:block}.dashboard-main{padding:22px 16px 46px}.dashboard-shell{gap:14px}.dashboard-shell>h2{font-size:1.5rem}.demo-callout__actions{width:100%}.demo-callout__actions .nav-item{flex:1 1 100%}.gate-modal__actions .nav-item{flex:1 1 100%}}


/* ===================================================== */
/* PUBLIC HUB TEXT + B2 VISUAL CARDS – restored */
/* ===================================================== */
.hub-hero{padding:24px;background:linear-gradient(135deg, rgba(0,240,255,.09), rgba(168,85,247,.10))}
.hub-hero__top{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;flex-wrap:wrap}
.hub-eyebrow,.hub-kicker{display:inline-flex;align-items:center;padding:7px 12px;border-radius:999px;border:1px solid rgba(0,240,255,.18);background:rgba(0,240,255,.08);color:#9df7ff;font-size:.74rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:10px}
.hub-hero h3,.hub-section__head h3{margin:0 0 12px;font-family:Orbitron,Inter,sans-serif;font-size:clamp(1.3rem,2vw,2.05rem);color:#fff;letter-spacing:-.03em}
.hub-hero p,.hub-section__head p,.hub-module-card p,.hub-layer-card p,.hub-note p{margin:0;color:#dde8fb;line-height:1.75}
.hub-actions{display:flex;gap:10px;flex-wrap:wrap;align-items:center}
.hub-stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px;margin-top:18px}
.hub-stat{padding:18px 20px;border-radius:18px;background:rgba(6,12,28,.42);border:1px solid rgba(255,255,255,.08)}
.hub-stat .label{display:block;color:var(--text-muted,#98accb);font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:8px}
.hub-stat strong{display:block;color:#fff;font-family:Orbitron,Inter,sans-serif;line-height:1.45}
.hub-stat small{display:block;color:#bdd0e8;margin-top:8px}
.hub-section{margin-top:18px}
.hub-section__head{display:flex;justify-content:space-between;gap:18px;align-items:flex-end;margin-bottom:16px;padding:0 2px}
.hub-module-grid,.hub-layer-grid,.engine-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.hub-module-card,.hub-layer-card{position:relative;overflow:hidden;background:var(--bg-card,rgba(10,18,38,.86));border:1px solid var(--border,rgba(255,255,255,.10));border-radius:22px;box-shadow:var(--shadow,0 18px 44px rgba(0,0,0,.22));padding:20px 22px}
.hub-module-card::before,.hub-layer-card::before,.hub-hero::before,.hub-note::before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg, rgba(255,255,255,.05), transparent 28%)}
.hub-module-card h4,.hub-layer-card h4{margin:0 0 10px;color:#fff;font-family:Orbitron,Inter,sans-serif;letter-spacing:-.02em}
.hub-module-card .badge{display:inline-flex;align-items:center;padding:6px 10px;margin-bottom:12px;border-radius:999px;border:1px solid rgba(0,240,255,.18);background:rgba(0,240,255,.08);color:#9df7ff;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.hub-link-list{margin-top:12px;display:flex;flex-wrap:wrap;gap:10px}
.hub-link-list a{display:inline-flex;align-items:center;padding:8px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);color:#dff3ff;font-size:.82rem;text-decoration:none}
.hub-link-list a:hover{border-color:rgba(0,240,255,.24);background:rgba(0,240,255,.08);color:#fff}
.hub-note{margin-top:18px;background:linear-gradient(135deg, rgba(255,255,255,.04), rgba(0,240,255,.04))}
.hub-hero.card,.hub-note.card,.hub-module-card,.hub-layer-card{width:100%}
@media(max-width:980px){.hub-hero,.hub-module-card,.hub-layer-card{padding:18px}.hub-actions{width:100%}.hub-actions .nav-item{flex:1 1 100%}.hub-section__head{align-items:flex-start;flex-direction:column}.hub-module-grid,.hub-layer-grid{grid-template-columns:1fr}}


/* ===================================================== */
/* AstroCore ecosystem footer polish */
/* ===================================================== */
.eco-subline{
  margin: -4px 0 16px;
  color:#9eefff;
  font-size:.86rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.eco-card.is-here{
  border-color:rgba(0,240,255,.42)!important;
  background:linear-gradient(145deg, rgba(0,240,255,.12), rgba(168,85,247,.08));
  box-shadow:0 18px 54px rgba(0,0,0,.22), 0 0 34px rgba(0,240,255,.12);
}
.eco-card.is-here .eco-badge{
  color:#050816;
  background:#20e8ff;
  border-color:#20e8ff;
}
.eco-footer a:focus-visible{
  outline:2px solid rgba(0,240,255,.75);
  outline-offset:3px;
}


/* ===================================================== */
/* AstroCore Premium modules dropdown */
/* ===================================================== */
.premium-nav{position:relative;display:inline-flex;align-items:center}
.premium-nav-button{cursor:default;font-family:inherit}
.premium-nav-menu{
  position:absolute;
  top:calc(100% + 10px);
  right:0;
  min-width:220px;
  padding:10px;
  border-radius:16px;
  border:1px solid rgba(255,255,255,.10);
  background:linear-gradient(180deg,rgba(8,15,31,.98),rgba(7,13,26,.98));
  box-shadow:0 24px 60px rgba(0,0,0,.36);
  display:none;
  flex-direction:column;
  gap:6px;
  z-index:60;
}
.premium-nav:hover .premium-nav-menu,
.premium-nav:focus-within .premium-nav-menu{display:flex}
.premium-nav-link{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:10px 12px;
  border-radius:12px;
  color:#c7d2fe;
  text-decoration:none;
  font-size:.84rem;
  font-weight:700;
  border:1px solid rgba(255,255,255,.06);
  background:rgba(255,255,255,.025);
}
.premium-nav-link:after{content:'Premium';font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:#9df7ff;opacity:.72}
.premium-nav-link:hover,.premium-nav-link.active{
  color:#fff;
  border-color:rgba(0,240,255,.20);
  background:linear-gradient(180deg,rgba(0,240,255,.09),rgba(168,85,247,.08));
}
.premium-mobile:before{content:'★ ';color:#9df7ff;opacity:.85}
@media(max-width:980px){.premium-nav{display:none}}


/* ===================================================== */
/* AstroCore premium product cards */
/* ===================================================== */
.premium-product-card{
  position:relative;
  overflow:hidden;
  margin:0 0 18px;
  padding:24px;
  border-radius:24px;
  border:1px solid rgba(0,240,255,.14);
  background:
    radial-gradient(circle at 12% 0%, rgba(0,240,255,.10), transparent 34%),
    radial-gradient(circle at 88% 0%, rgba(168,85,247,.12), transparent 32%),
    linear-gradient(145deg, rgba(10,18,38,.92), rgba(5,8,22,.94));
  box-shadow:0 28px 80px rgba(0,0,0,.30), inset 0 1px 0 rgba(255,255,255,.04);
}
.premium-product-card:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(255,255,255,.05),transparent 38%)}
.premium-product-top{position:relative;display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px}
.premium-product-kicker{display:inline-flex;align-items:center;padding:7px 12px;margin-bottom:10px;border-radius:999px;border:1px solid rgba(0,240,255,.18);background:rgba(0,240,255,.08);color:#9df7ff;font-size:.72rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.premium-product-card h3{margin:0 0 8px;color:#fff;font-family:Orbitron,Inter,sans-serif;font-size:clamp(1.25rem,2vw,1.9rem);letter-spacing:-.03em}
.premium-product-subtitle{margin:0;max-width:760px;color:#dbeafe;line-height:1.7;font-size:1rem}
.premium-product-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;min-width:260px}
.premium-product-btn{display:inline-flex;align-items:center;justify-content:center;padding:10px 14px;border-radius:999px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.04);color:#dff7ff;text-decoration:none;font-size:.82rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap}
.premium-product-btn.primary{border-color:rgba(0,240,255,.30);background:linear-gradient(135deg,rgba(0,240,255,.16),rgba(168,85,247,.12));color:#fff;box-shadow:0 0 24px rgba(0,240,255,.10)}
.premium-product-grid{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.premium-product-grid article{padding:15px 16px;border-radius:18px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035)}
.premium-product-grid span{display:block;margin-bottom:8px;color:#9df7ff;font-size:.72rem;font-weight:900;letter-spacing:.09em;text-transform:uppercase}
.premium-product-grid p{margin:0;color:#cdd8ea;line-height:1.65;font-size:.92rem}
@media(max-width:980px){.premium-product-card{padding:18px}.premium-product-top{flex-direction:column}.premium-product-actions{width:100%;min-width:0;justify-content:flex-start}.premium-product-btn{flex:1 1 100%}.premium-product-grid{grid-template-columns:1fr}}


/* Stable Safari-friendly date input: DD.MM.YYYY */
.astro-date-input{
  letter-spacing:.03em;
  font-variant-numeric:tabular-nums;
}
.astro-date-input::placeholder{color:rgba(180,190,210,.45)!important;}
.date-format-hint{display:block;margin-top:4px;font-size:10px;color:rgba(180,190,210,.38);letter-spacing:.04em;}


/* Jewelry polish: modal heading without parser-noisy inline h3 */
.gate-modal__title{
  margin:10px 0 12px;
  color:#fff;
  font-size:clamp(1.2rem,2.4vw,1.65rem);
  line-height:1.14;
  font-weight:900;
  letter-spacing:-.025em;
}


/* Premium module dictionary polish */
.premium-product-grid--five{grid-template-columns:repeat(5,minmax(0,1fr));}
.premium-safe-note{margin-top:18px;padding:16px 18px;border-radius:18px;border:1px solid rgba(52,211,153,.18);background:rgba(52,211,153,.055);color:#cfeee3;line-height:1.6;font-size:.92rem;}
.premium-safe-note strong{color:#fff;}
@media(max-width:1180px){.premium-product-grid--five{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media(max-width:720px){.premium-product-grid--five{grid-template-columns:1fr;}}


/* Conversion MVP: personal snapshot cards */
.ac-snapshot{margin:18px 0 20px;padding:18px;border-radius:18px;border:1px solid rgba(0,240,255,.18);background:radial-gradient(circle at 15% 0%,rgba(0,240,255,.11),transparent 34%),linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.025));box-shadow:0 18px 46px rgba(0,0,0,.20)}
.ac-snap-kicker{display:inline-flex;margin-bottom:10px;padding:6px 9px;border-radius:999px;border:1px solid rgba(0,240,255,.18);background:rgba(0,240,255,.065);color:#00f0ff;font-size:9px;font-weight:900;letter-spacing:.16em;text-transform:uppercase}
.ac-snapshot h3{margin:0 0 12px!important;color:#fff!important;font-size:1.12rem!important;letter-spacing:-.02em!important;text-transform:none!important;font-family:Inter,system-ui,sans-serif!important}
.ac-pills{display:flex;flex-wrap:wrap;gap:7px;margin:10px 0 14px}.ac-pills span{padding:5px 9px;border-radius:999px;background:rgba(168,85,247,.08);border:1px solid rgba(168,85,247,.16);color:#d8c6ff;font-size:10px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.ac-profile-line{margin:9px 0;color:#cbd5e1;font-size:13px;line-height:1.65}.ac-profile-line strong{color:#fff}
.ac-snap-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:14px 0}.ac-snap-grid article{padding:12px;border-radius:13px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.035)}.ac-snap-grid span{display:block;color:#00f0ff;font-size:9px;font-weight:900;letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px}.ac-snap-grid p,.ac-snap-grid li{margin:0;color:#cbd5e1;font-size:12px;line-height:1.55}.ac-snap-grid ol,.ac-snap-grid ul{margin:0;padding-left:18px;display:grid;gap:3px}
.ac-reflection{margin:12px 0;padding:12px 13px;border-radius:13px;background:rgba(0,240,255,.055);border:1px solid rgba(0,240,255,.14);color:#dffaff;font-size:12px;line-height:1.55}.ac-reflection strong{color:#fff}
.ac-depth{margin:14px 0;padding:13px;border-radius:14px;background:rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.07);display:grid;grid-template-columns:.8fr 1.2fr;gap:14px}.ac-depth strong{display:block;color:#fff;font-size:13px}.ac-depth small{display:block;color:rgba(180,190,210,.48);font-size:10px;margin-top:2px}.ac-bars{display:grid;gap:6px}.ac-bars label{display:flex;justify-content:space-between;color:#aab8d4;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.ac-bars b{color:#00f0ff}.ac-bars span{height:5px;border-radius:99px;overflow:hidden;background:rgba(255,255,255,.08)}.ac-bars i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#00f0ff,#a855f7)}.ac-bars i.locked{opacity:.35;background:linear-gradient(90deg,#64748b,#a855f7)}
.ac-locked{margin-top:12px;padding:13px;border-radius:14px;border:1px solid rgba(168,85,247,.18);background:rgba(168,85,247,.055);color:#cbd5e1;font-size:12px;line-height:1.55}.ac-locked strong{display:block;color:#fff;margin-bottom:4px}.ac-locked a{display:inline-flex;margin-top:10px;color:#00f0ff;text-decoration:none;font-weight:900;letter-spacing:.08em;text-transform:uppercase;font-size:10px}
.ac-relationship-card{border-color:rgba(168,85,247,.24);background:radial-gradient(circle at 85% 0%,rgba(168,85,247,.13),transparent 36%),linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.025))}.ac-transit-card{border-color:rgba(52,211,153,.20);background:radial-gradient(circle at 20% 0%,rgba(52,211,153,.10),transparent 35%),linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.025))}
@media(max-width:760px){.ac-snap-grid,.ac-depth{grid-template-columns:1fr}.ac-snapshot{padding:15px}}


/* Conversion MVP v2: share/copy and premium unlock detail */
.ac-share-row{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin:8px 0 13px}.ac-share-row span{color:rgba(180,190,210,.48);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.ac-copy-btn{border:1px solid rgba(0,240,255,.26);background:rgba(0,240,255,.08);color:#00f0ff;border-radius:999px;padding:7px 11px;font-size:10px;font-weight:900;letter-spacing:.09em;text-transform:uppercase;cursor:pointer}.ac-copy-btn:hover{background:rgba(0,240,255,.14);border-color:rgba(0,240,255,.45)}.ac-locked ul{margin:8px 0 0;padding-left:18px;columns:2;column-gap:22px}.ac-locked li{break-inside:avoid;margin:2px 0;color:#d7e3f4}@media(max-width:720px){.ac-locked ul{columns:1}}


/* Conversion MVP v3: activation hook / lead capture bridge */
.ac-save-hook{margin-top:14px;padding:14px;border-radius:14px;border:1px solid rgba(52,211,153,.22);background:linear-gradient(145deg,rgba(52,211,153,.08),rgba(0,240,255,.035));color:#d7e3f4}.ac-save-hook strong{display:block;color:#fff;margin-bottom:4px}.ac-save-hook p{margin:0 0 10px;color:#aebbd3;font-size:12px;line-height:1.55}.ac-lead-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.ac-lead-row input{flex:1 1 240px;min-height:40px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:rgba(0,0,0,.22);color:#fff;padding:0 12px;outline:none}.ac-lead-row input:focus{border-color:rgba(0,240,255,.38);box-shadow:0 0 0 3px rgba(0,240,255,.08)}.ac-lead-row button{min-height:40px;border-radius:12px;border:0;background:linear-gradient(90deg,#00f0ff,#34d399);color:#041018;font-weight:900;letter-spacing:.08em;text-transform:uppercase;font-size:10px;padding:0 13px;cursor:pointer}.ac-lead-row button:hover{filter:brightness(1.08)}


/* Subscriber Guest Access message */
.ac-lead-msg{margin-top:8px;color:#90a4c2;font-size:11px;line-height:1.55}.ac-lead-msg:not(:empty){padding-top:6px}


/* Subscriber Guest Runtime Enforcement */
.ac-credit-runtime{margin-top:12px;padding:10px 12px;border-radius:12px;font-size:11px;line-height:1.45;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.045);color:#cbd5e1}.ac-credit-runtime.ok{border-color:rgba(52,211,153,.25);background:rgba(52,211,153,.07);color:#d7f8ec}.ac-credit-runtime.info{border-color:rgba(0,240,255,.22);background:rgba(0,240,255,.055);color:#dffaff}.ac-credit-runtime.warn{border-color:rgba(251,191,36,.28);background:rgba(251,191,36,.08);color:#fde7b0}


/* AstroCore header credit wallet badge */
.astro-header-wallet{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:34px;
  padding:7px 11px;
  margin-left:10px;
  border:1px solid rgba(34,211,238,.24);
  border-radius:999px;
  background:linear-gradient(135deg,rgba(34,211,238,.09),rgba(168,85,247,.08));
  color:#dff7ff;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 0 18px rgba(34,211,238,.06);
}
.astro-header-wallet__dot{
  width:7px;
  height:7px;
  border-radius:50%;
  background:#22d3ee;
  box-shadow:0 0 12px rgba(34,211,238,.95);
}
.astro-header-wallet__label{color:rgba(221,244,255,.72)}
.astro-header-wallet strong{
  color:#fff;
  font-weight:1000;
  min-width:26px;
  text-align:center;
}
@media(max-width:1080px){
  .astro-header-wallet{margin-left:auto;margin-right:8px;min-height:32px;padding:6px 10px;font-size:10px;}
  .astro-header-wallet__label{display:none;}
}
@media(max-width:620px){
  .astro-header-wallet{display:none;}
}


/* AstroCore premium header/titlebar order */
.header.b2-public-header{
  min-height:72px;
  padding:12px 28px;
  border-bottom:1px solid rgba(34,211,238,.18);
  background:linear-gradient(180deg,rgba(6,8,24,.96),rgba(6,8,24,.88));
  backdrop-filter:blur(18px);
}
.header.b2-public-header .header-brand h1{
  font-size:clamp(15px,1.05vw,20px);
  letter-spacing:.045em;
  line-height:1;
}
.header-meta{
  font-size:.66rem!important;
  letter-spacing:.105em!important;
  opacity:.82;
}
.header.b2-public-header .nav{
  gap:8px;
  align-items:center;
}
.header.b2-public-header .nav-item{
  min-height:32px;
  padding:8px 12px;
  font-size:.74rem;
  letter-spacing:.06em;
  border-radius:10px;
}
.premium-nav-menu{
  min-width:178px;
  padding:7px;
  border-radius:14px;
}
.premium-nav-link{
  min-height:38px;
  padding:9px 10px;
  font-size:.74rem;
}
.premium-nav-link:after{
  content:''!important;
  display:none!important;
}
.astro-page-titlebar{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:18px;
  margin:4px 0 6px;
  padding:0 4px;
}
.astro-page-titlebar span{
  order:2;
  color:rgba(103,232,249,.72);
  font-size:.68rem;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  white-space:nowrap;
}
.astro-page-titlebar h2{
  order:1;
  margin:0!important;
  font-family:Orbitron,Inter,sans-serif;
  font-size:clamp(1.45rem,2.1vw,2.28rem)!important;
  letter-spacing:-.045em!important;
  color:#fff;
  text-shadow:0 0 24px rgba(34,211,238,.08);
}
.astro-header-wallet{
  min-height:30px!important;
  padding:6px 10px!important;
  font-size:10px!important;
  opacity:.9;
}
.astro-header-wallet__label{display:inline!important;}
@media(max-width:1180px){
  .header.b2-public-header{padding:12px 18px;}
  .header.b2-public-header .nav-item{padding:8px 9px;font-size:.68rem;}
  .astro-page-titlebar{align-items:flex-start;flex-direction:column;gap:5px;}
  .astro-page-titlebar span{order:1;}
  .astro-page-titlebar h2{order:2;}
}
@media(max-width:980px){
  .header.b2-public-header{min-height:64px;}
  .astro-page-titlebar{margin-top:0;}
}
@media(max-width:620px){
  .astro-page-titlebar h2{font-size:1.55rem!important;}
  .astro-page-titlebar span{font-size:.6rem;white-space:normal;}
}


/* Runtime/header premium dropdown recovery v2 */
.dashboard-main{
  padding-top:22px!important;
}
.dashboard-shell{
  gap:14px!important;
}
.header.b2-public-header .nav{
  gap:10px!important;
}
.premium-nav{position:relative!important;z-index:1200!important;}
.premium-nav-button{
  border-color:rgba(168,85,247,.48)!important;
  background:linear-gradient(135deg,rgba(168,85,247,.22),rgba(34,211,238,.08))!important;
  box-shadow:0 0 22px rgba(168,85,247,.18),inset 0 1px 0 rgba(255,255,255,.06)!important;
}
.premium-nav-menu{
  top:calc(100% + 10px)!important;
  right:0!important;
  min-width:250px!important;
  padding:10px!important;
  gap:7px!important;
  border-radius:16px!important;
  border:1px solid rgba(34,211,238,.20)!important;
  background:linear-gradient(180deg,rgba(10,18,38,.98),rgba(5,9,22,.98))!important;
  box-shadow:0 24px 70px rgba(0,0,0,.52),0 0 0 1px rgba(168,85,247,.10),inset 0 1px 0 rgba(255,255,255,.05)!important;
  backdrop-filter:blur(18px)!important;
  z-index:9999!important;
}
.premium-nav-menu:before{
  content:"";
  position:absolute;
  top:-6px;right:28px;
  width:10px;height:10px;
  transform:rotate(45deg);
  border-left:1px solid rgba(34,211,238,.18);
  border-top:1px solid rgba(34,211,238,.18);
  background:rgba(10,18,38,.98);
}
.premium-nav-link{
  min-height:50px!important;
  padding:11px 12px!important;
  border-radius:12px!important;
  border:1px solid rgba(255,255,255,.07)!important;
  background:rgba(255,255,255,.035)!important;
  color:#dce8ff!important;
  font-size:.76rem!important;
  line-height:1.18!important;
  display:grid!important;
  grid-template-columns:1fr auto!important;
  align-items:center!important;
  gap:12px!important;
}
.premium-nav-link:after{
  content:'PREMIUM'!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:3px 6px!important;
  border-radius:999px!important;
  border:1px solid rgba(34,211,238,.16)!important;
  background:rgba(34,211,238,.055)!important;
  color:#9df7ff!important;
  font-size:.52rem!important;
  letter-spacing:.08em!important;
  opacity:.9!important;
}
.premium-nav-link:hover,.premium-nav-link.active{
  color:#fff!important;
  border-color:rgba(34,211,238,.32)!important;
  background:linear-gradient(135deg,rgba(34,211,238,.10),rgba(168,85,247,.10))!important;
  box-shadow:0 0 18px rgba(34,211,238,.08)!important;
}
.astro-page-titlebar{display:none!important;}
@media(max-width:1180px){
  .premium-nav-menu{right:-8px!important;min-width:230px!important;}
}


/* Premium dropdown above all hero cards */
.header.b2-public-header{
  position:sticky!important;
  top:0!important;
  z-index:2147483000!important;
  overflow:visible!important;
  isolation:isolate!important;
}
.header.b2-public-header .nav,
.header.b2-public-header .premium-nav{
  position:relative!important;
  z-index:2147483001!important;
  overflow:visible!important;
}
.premium-nav-menu{
  z-index:2147483002!important;
  pointer-events:auto!important;
}
.dashboard-main,
.dashboard-shell{
  position:relative!important;
  z-index:1!important;
  overflow:visible!important;
}
/* common premium hero wrappers must not cover header dropdown */
.rtm,.engine-profile,.engine-shell,.syn-page,.team-shell,.tr-page,.solar-page,.cosmo-page,.num-page,.asp-page,
.rtm *,.engine-profile *,.team-shell *,.tr-page *,.solar-page *{
  transform-style:flat;
}

/* AstroCore full-width polish for wide analytical modules */
.dashboard-shell:has(.pg-shell),
.dashboard-shell:has(.int-page){
  width:100%!important;
  max-width:none!important;
}
.dashboard-shell:has(.pg-shell)>h2,
.dashboard-shell:has(.int-page)>h2{
  display:none!important;
}
.dashboard-shell .pg-shell,
.dashboard-shell .int-page{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}
.dashboard-shell .int-hero,
.dashboard-shell .int-credit,
.dashboard-shell .int-layout,
.dashboard-shell .pg-hero,
.dashboard-shell .pg-explain,
.dashboard-shell .pg-form,
.dashboard-shell .pg-report{
  width:100%!important;
  max-width:none!important;
}


/* AstroCore full-width polish for Transitai report modules */
.dashboard-shell:has(.trx-shell){
  width:100%!important;
  max-width:none!important;
}
.dashboard-shell:has(.trx-shell)>h2{
  display:none!important;
}
.dashboard-shell .trx,
.dashboard-shell .trx-shell,
.dashboard-shell .trx-report,
.dashboard-shell .trx-panel,
.dashboard-shell .trx-result-intro,
.dashboard-shell .trx-cosmo,
.dashboard-shell .trx-recommendations,
.dashboard-shell .trx-decoder-grid,
.dashboard-shell .trx-preview-days,
.dashboard-shell .trx-formbar,
.dashboard-shell .trx-context,
.dashboard-shell .trx-credit-strip{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}

/* Transitai generated report full-width final override · 20260520 */
body:has(#tr-dashboard) .dashboard-main,
body:has(#tr-dashboard) .dashboard-shell,
body:has(#tr-dashboard) .astro-main,
body:has(#tr-dashboard) .astro-content,
body:has(#tr-dashboard) .content,
body:has(#tr-dashboard) main.dashboard-shell{
  width:100%!important;
  max-width:none!important;
}
body:has(#tr-dashboard) .dashboard-shell > h2{
  display:none!important;
}
body:has(#tr-dashboard) .trx,
body:has(#tr-dashboard) .trx-shell,
body:has(#tr-dashboard) #tr-dashboard,
body:has(#tr-dashboard) .trx-main,
body:has(#tr-dashboard) .trx-result-intro,
body:has(#tr-dashboard) .trx-cards,
body:has(#tr-dashboard) .trx-recommendations,
body:has(#tr-dashboard) #tr-cosmo-block,
body:has(#tr-dashboard) .trx-cosmo,
body:has(#tr-dashboard) .trx-decoder,
body:has(#tr-dashboard) .trx-grid,
body:has(#tr-dashboard) .trx-timegrid,
body:has(#tr-dashboard) .trx-preview-locked,
body:has(#tr-dashboard) .trx-downloads{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}
body:has(#tr-dashboard) #tr-dashboard{
  display:none;
}
body:has(#tr-dashboard) #tr-dashboard[style*="display: block"],
body:has(#tr-dashboard) #tr-dashboard[style*="display:block"],
body:has(#tr-dashboard) #tr-dashboard:not([style*="display:none"]){
  display:block!important;
}
body:has(#tr-dashboard) .trx-shell{
  padding-left:clamp(14px,1.4vw,26px)!important;
  padding-right:clamp(14px,1.4vw,26px)!important;
}
body:has(#tr-dashboard) .trx-cards{
  grid-template-columns:repeat(5,minmax(0,1fr))!important;
}
body:has(#tr-dashboard) .trx-recommendations{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
body:has(#tr-dashboard) .trx-cosmo{
  grid-template-columns:minmax(620px,1.15fr) minmax(420px,.85fr)!important;
}
body:has(#tr-dashboard) .trx-grid{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(360px,.75fr)!important;
}
body:has(#tr-dashboard) .trx-timegrid{
  grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr) minmax(320px,.75fr) minmax(360px,.85fr)!important;
}
@media(max-width:1280px){
  body:has(#tr-dashboard) .trx-cards,
  body:has(#tr-dashboard) .trx-recommendations,
  body:has(#tr-dashboard) .trx-grid,
  body:has(#tr-dashboard) .trx-timegrid,
  body:has(#tr-dashboard) .trx-cosmo{grid-template-columns:1fr!important;}
}
