:root {
  --premium-navy: #033454;
  --premium-navy-deep: #021f34;
  --premium-green: #4C9B44;
  --premium-green-soft: #e6f4e4;
  --premium-paper: #f5f8f7;
  --premium-ink: #08283f;
  --premium-muted: #5f7284;
  --premium-line: rgba(3, 52, 84, .14);
  --premium-line-light: rgba(254, 254, 254, .18);
  --premium-radius: 10px;
  --premium-shadow: 0 24px 78px rgba(3, 52, 84, .14);
  --premium-shadow-dark: 0 30px 95px rgba(0, 20, 34, .30);
}

* {
  letter-spacing: 0 !important;
}

html {
  background: var(--premium-paper);
  scroll-padding-top: 96px;
}

body {
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
}

body::selection {
  background: rgba(76, 155, 68, .28);
}

header {
  border-bottom-color: rgba(3, 52, 84, .13) !important;
}

header .brand img,
.brand-lockup {
  height: auto;
  object-fit: contain;
}

.brand-title strong,
.brand-copy strong {
  font-size: 14px !important;
}

.brand-title span,
.brand-copy span {
  font-size: 12px !important;
}

.btn,
.nav-link,
.submit,
.toggle,
.open,
.answer-btn,
button,
label.btn {
  border-radius: var(--premium-radius) !important;
}

.btn,
.nav-link,
.submit,
.open,
label.btn {
  min-height: 46px;
  font-weight: 900 !important;
  white-space: nowrap !important;
  flex: 0 0 auto;
}

.btn.primary,
.nav-link.important,
.submit,
.open {
  background: linear-gradient(135deg, #4C9B44, #63b95a) !important;
  border-color: rgba(76, 155, 68, .92) !important;
  color: #FEFEFE !important;
  box-shadow: 0 15px 34px rgba(76, 155, 68, .23);
}

.btn.dark,
label.btn.dark {
  background: linear-gradient(135deg, #033454, #062b45) !important;
  border-color: rgba(3, 52, 84, .88) !important;
  color: #FEFEFE !important;
}

.btn:hover,
.nav-link:hover,
.submit:hover,
.open:hover,
.answer-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 38px rgba(3, 52, 84, .16);
}

input,
textarea,
select {
  min-height: 48px;
  border-radius: 10px !important;
  border-color: rgba(3, 52, 84, .18) !important;
  background: rgba(254, 254, 254, .92) !important;
  color: var(--premium-ink);
  font-size: 15px !important;
}

textarea {
  line-height: 1.65 !important;
}

input:focus,
textarea:focus,
select:focus {
  outline: 3px solid rgba(76, 155, 68, .18) !important;
  border-color: rgba(76, 155, 68, .72) !important;
  box-shadow: 0 0 0 1px rgba(76, 155, 68, .18);
}

.eyebrow,
.pill,
.status-pill,
.session-pill,
.access-pill,
.form-kicker,
.login-title small {
  min-height: 32px;
  border-radius: 999px !important;
  font-size: 12px !important;
  font-weight: 900 !important;
}

.dot,
.status-dot {
  box-shadow: 0 0 0 6px rgba(76, 155, 68, .18) !important;
}

.intro,
.panel,
.cert-panel,
.content-panel,
.expert-panel,
.expert-result,
.report-card,
.card,
.support-card,
.pocket-card,
.tool-card,
.product-card,
.upload-card,
.login-card,
.metric,
.message-box,
.quote,
.result-block,
.score-box,
.side,
.chat-shell,
.report-shell,
.timeline {
  border-radius: var(--premium-radius) !important;
}

.panel,
.cert-panel,
.content-panel,
.expert-panel,
.expert-result,
.report-card,
.card,
.support-card,
.pocket-card,
.upload-card,
.login-card,
.timeline {
  border-color: rgba(3, 52, 84, .13) !important;
  box-shadow: var(--premium-shadow) !important;
}

.intro,
.side-hero,
.report-hero,
.module-hero {
  box-shadow: var(--premium-shadow) !important;
}

.intro::before,
.panel::before,
.content-panel::before,
.login-card::before,
.cert-panel::before {
  border-radius: inherit;
}

main {
  width: 100% !important;
}

main > .hero,
main > .workspace,
main > .report,
main > .result,
main > .section-title,
main > .pocket-grid,
main > .expert {
  max-width: 1720px;
  margin-left: auto !important;
  margin-right: auto !important;
}

body:has(.panel) main {
  padding-left: 44px !important;
  padding-right: 44px !important;
}

body:has(.panel) main > .hero {
  grid-template-columns: minmax(430px, .86fr) minmax(560px, 1.14fr) !important;
  gap: 28px !important;
  align-items: stretch !important;
}

body:has(.panel) .intro {
  min-height: 520px;
  padding: 42px !important;
}

body:has(.panel) .panel {
  padding: 28px !important;
}

body:has(.panel) h1 {
  font-size: 58px !important;
  line-height: 1.02 !important;
}

body:has(.panel) .intro p,
body:has(.panel) .note,
body:has(.panel) .panel p {
  font-size: 15px !important;
  line-height: 1.75 !important;
}

body:has(.panel) .fields {
  gap: 18px !important;
}

body:has(.panel) .uploads,
body:has(.panel) .file-grid {
  gap: 18px !important;
}

body:has(.products) main {
  max-width: 1660px !important;
}

body:has(.products) .hero {
  grid-template-columns: minmax(420px, .78fr) minmax(600px, 1.22fr) !important;
  align-items: center !important;
  gap: 32px !important;
}

body:has(.products) h1 {
  font-size: 72px !important;
  line-height: 1 !important;
}

body:has(.products) .lead {
  font-size: 19px !important;
  line-height: 1.75 !important;
}

body:has(.products) .product-card {
  min-height: 430px;
  padding: 34px !important;
}

body:has(.products) .product-card h2 {
  font-size: 42px !important;
}

body:has(.products) .product-card p {
  font-size: 16px !important;
}

body:has(.tool-card) .hero {
  min-height: calc(100vh - 84px);
}

body:has(.tool-card) .hero-inner,
body:has(.tool-card) .tools,
body:has(.tool-card) .routine,
body:has(.tool-card) .section-title {
  max-width: 1720px !important;
}

body:has(.tool-card) .tool-card {
  padding: 30px !important;
  min-height: 330px;
}

body:has(.tool-card) .tool-card h3 {
  font-size: 24px !important;
  line-height: 1.18 !important;
}

body:has(.tool-card) .tool-card p {
  font-size: 15px !important;
  line-height: 1.68 !important;
}

body:has(.timeline) main {
  padding-left: 36px !important;
  padding-right: 36px !important;
}

body:has(.timeline) main > .hero {
  grid-template-columns: minmax(0, 1fr) minmax(380px, 440px) !important;
  gap: 28px !important;
}

body:has(.timeline) .hero .intro {
  min-height: 340px;
}

body:has(.timeline) .workspace {
  display: grid;
  grid-template-columns: minmax(280px, 340px) minmax(0, 1fr) !important;
  gap: 28px !important;
  align-items: start !important;
}

body:has(.timeline) .timeline {
  position: sticky;
  top: 96px;
  max-height: calc(100vh - 120px);
  overflow: auto;
}

body:has(.timeline) .content-panel {
  overflow: hidden;
}

body:has(.timeline) .module-hero {
  padding: 38px 42px !important;
}

body:has(.timeline) .module-hero h2 {
  font-size: 40px !important;
  line-height: 1.12 !important;
}

body:has(.timeline) .module-hero p {
  max-width: 980px;
  font-size: 18px !important;
  line-height: 1.72 !important;
}

body:has(.timeline) .module-grid {
  grid-template-columns: repeat(2, minmax(360px, 1fr)) !important;
  gap: 20px !important;
}

body:has(.timeline) .support-card {
  padding: 26px !important;
}

body:has(.timeline) .support-card h3,
body:has(.timeline) .quiz h3 {
  font-size: 20px !important;
  line-height: 1.25 !important;
}

body:has(.timeline) .support-card p,
body:has(.timeline) .support-card li,
body:has(.timeline) .quote,
body:has(.timeline) .quiz p,
body:has(.timeline) .quiz-feedback {
  font-size: 17px !important;
  line-height: 1.78 !important;
}

body:has(.timeline) .phase-btn {
  min-height: 66px;
  padding: 14px !important;
}

body:has(.timeline) .phase-btn strong {
  font-size: 14px !important;
}

body:has(.timeline) .phase-btn span,
body:has(.timeline) .phase-btn small {
  font-size: 12px !important;
}

body:has(.timeline) .answers {
  gap: 12px !important;
}

body:has(.timeline) .answer-btn {
  min-height: 62px;
  padding: 16px 18px !important;
  font-size: 16px !important;
  line-height: 1.52 !important;
  text-align: left;
}

body:has(.timeline) .pocket-card {
  padding: 26px !important;
}

body:has(.timeline) .pocket-card p,
body:has(.timeline) .expert-output,
body:has(.timeline) .result-block {
  font-size: 16px !important;
  line-height: 1.72 !important;
}

body:has(.chat-shell) {
  background-size: 48px 48px, 48px 48px !important;
}

body:has(.chat-shell) .app {
  background:
    linear-gradient(90deg, rgba(76, 155, 68, .045) 1px, transparent 1px),
    linear-gradient(0deg, rgba(3, 52, 84, .045) 1px, transparent 1px),
    var(--premium-paper);
  background-size: 44px 44px;
}

body:has(.chat-shell) header {
  background: rgba(254, 254, 254, .96) !important;
  box-shadow: 0 14px 42px rgba(3, 52, 84, .10);
}

body:has(.chat-shell) .workspace {
  padding: 20px !important;
  gap: 20px !important;
  grid-template-columns: minmax(330px, 430px) minmax(0, 1fr) !important;
}

body:has(.chat-shell) .chat-shell,
body:has(.chat-shell) .report-shell,
body:has(.chat-shell) .side {
  border-color: rgba(3, 52, 84, .13) !important;
}

body:has(.chat-shell) .message {
  border-radius: 12px !important;
  box-shadow: 0 10px 24px rgba(3, 52, 84, .07);
}

body:has(.login-card) .shell {
  grid-template-columns: minmax(0, 1.2fr) minmax(520px, 620px) !important;
}

body:has(.login-card) .showcase {
  padding-left: 72px !important;
  padding-right: 72px !important;
}

body:has(.login-card) .brand-lockup {
  width: 320px !important;
}

body:has(.login-card) h1 {
  max-width: 960px;
  font-size: 76px !important;
  line-height: .98 !important;
}

body:has(.login-card) .hero-copy p {
  font-size: 20px !important;
  line-height: 1.72 !important;
}

body:has(.login-card) .login-zone {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 42px !important;
}

body:has(.login-card) .login-card {
  width: min(100%, 460px) !important;
  padding: 34px !important;
}

body:has(.login-card) .login-title h2 {
  font-size: 36px !important;
  line-height: 1.12 !important;
}

body:has(.login-card) .login-title p,
body:has(.login-card) .security-note,
body:has(.login-card) .credential-hint {
  font-size: 14px !important;
  line-height: 1.62 !important;
}

body:has(.terminal-strip) .metric {
  min-height: 142px;
}

body:has(.terminal-strip) .metric span {
  font-size: 13px !important;
  line-height: 1.55 !important;
}

@media (max-width: 1180px) {
  body:has(.products) .hero,
  body:has(.panel) main > .hero,
  body:has(.timeline) main > .hero,
  body:has(.login-card) .shell {
    grid-template-columns: 1fr !important;
  }

  body:has(.login-card) .showcase {
    min-height: auto;
    padding: 38px 28px !important;
  }

  body:has(.login-card) .terminal-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }

  body:has(.timeline) .workspace,
  body:has(.chat-shell) .workspace {
    grid-template-columns: 1fr !important;
  }

  body:has(.timeline) .timeline {
    position: relative;
    top: auto;
    max-height: none;
  }
}

@media (max-width: 760px) {
  header {
    padding-left: 16px !important;
    padding-right: 16px !important;
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 12px !important;
    min-height: auto !important;
  }

  header .brand img {
    max-width: 190px !important;
  }

  .brand-title,
  .brand-copy {
    display: none !important;
  }

  .top-actions,
  nav {
    width: 100% !important;
    gap: 7px !important;
    display: flex !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    overflow-x: auto !important;
    padding-bottom: 4px !important;
    scrollbar-width: none;
  }

  .top-actions::-webkit-scrollbar,
  nav::-webkit-scrollbar {
    display: none;
  }

  .btn,
  .nav-link,
  .submit,
  .open,
  label.btn {
    min-height: 42px;
    padding-left: 12px !important;
    padding-right: 12px !important;
    font-size: 12px !important;
  }

  body:has(.panel) main,
  body:has(.timeline) main {
    padding: 18px 14px 44px !important;
  }

  body:has(.panel) h1,
  body:has(.products) h1,
  body:has(.login-card) h1 {
    font-size: 42px !important;
    line-height: 1.04 !important;
  }

  body:has(.timeline) .module-hero h2 {
    font-size: 32px !important;
  }

  body:has(.timeline) .module-grid {
    grid-template-columns: 1fr !important;
  }

  body:has(.timeline) .support-card p,
  body:has(.timeline) .support-card li,
  body:has(.timeline) .quote,
  body:has(.timeline) .quiz p,
  body:has(.timeline) .quiz-feedback {
    font-size: 16px !important;
  }

  body:has(.login-card) .login-zone {
    padding: 18px !important;
  }

  body:has(.login-card) .login-card {
    padding: 24px !important;
  }

  body:has(.chat-shell) .workspace {
    padding: 12px !important;
  }
}

:root {
  --exec-bg: #01182b;
  --exec-bg-2: #001120;
  --exec-card: rgba(7, 34, 58, .72);
  --exec-card-2: rgba(12, 48, 76, .62);
  --exec-border: rgba(172, 219, 255, .20);
  --exec-border-strong: rgba(178, 222, 255, .36);
  --exec-green: #5ec45a;
  --exec-green-2: #4C9B44;
  --exec-text: #f4fbff;
  --exec-muted: rgba(244, 251, 255, .72);
  --exec-muted-2: rgba(244, 251, 255, .56);
  --exec-shadow: 0 28px 90px rgba(0, 9, 18, .36);
  --exec-glow: 0 0 44px rgba(76, 155, 68, .18);
}

body {
  background:
    radial-gradient(circle at 75% 14%, rgba(76, 155, 68, .18), transparent 30%),
    radial-gradient(circle at 18% 90%, rgba(75, 162, 209, .13), transparent 34%),
    linear-gradient(90deg, rgba(147, 207, 255, .035) 1px, transparent 1px),
    linear-gradient(0deg, rgba(147, 207, 255, .035) 1px, transparent 1px),
    linear-gradient(135deg, var(--exec-bg-2), var(--exec-bg) 48%, #021e35) !important;
  background-size: auto, auto, 48px 48px, 48px 48px, auto !important;
  color: var(--exec-text) !important;
}

body::before {
  background:
    linear-gradient(115deg, rgba(1, 13, 24, .86), rgba(1, 24, 43, .58) 46%, rgba(0, 17, 31, .70)),
    radial-gradient(circle at 82% 58%, rgba(76, 155, 68, .13), transparent 34%) !important;
}

body::after {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  background:
    linear-gradient(120deg, transparent 0 58%, rgba(76, 155, 68, .12) 58.2% 58.55%, transparent 58.7%),
    linear-gradient(120deg, transparent 0 70%, rgba(125, 196, 255, .10) 70.1% 70.28%, transparent 70.4%);
  z-index: 0;
}

body > * {
  position: relative;
  z-index: 1;
}

body:not(:has(.login-card)) header {
  background: rgba(1, 18, 33, .86) !important;
  border-bottom: 1px solid rgba(172, 219, 255, .14) !important;
  box-shadow: 0 18px 60px rgba(0, 10, 20, .30) !important;
  backdrop-filter: blur(22px);
}

body:not(:has(.login-card)) .brand-title strong,
body:not(:has(.login-card)) .brand-copy strong {
  color: var(--exec-text) !important;
}

body:not(:has(.login-card)) .brand-title span,
body:not(:has(.login-card)) .brand-copy span {
  color: var(--exec-muted) !important;
}

.executive-topbar {
  grid-column: 1 / -1;
  min-height: 92px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  padding: 0 clamp(34px, 4vw, 58px);
  background: rgba(0, 14, 27, .78);
  border-bottom: 1px solid rgba(172, 219, 255, .14);
  box-shadow: 0 18px 58px rgba(0, 9, 18, .24);
  backdrop-filter: blur(22px);
}

.executive-brand img {
  width: 260px;
  max-width: 30vw;
  display: block;
}

.executive-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(24px, 3vw, 48px);
  color: rgba(244, 251, 255, .86);
  font-size: 15px;
  font-weight: 600;
}

.executive-pills {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 12px;
}

.executive-pills span {
  min-height: 38px;
  display: inline-flex;
  align-items: center;
  gap: 10px;
  border: 1px solid rgba(172, 219, 255, .22);
  border-radius: 999px;
  background: rgba(255, 255, 255, .045);
  color: rgba(244, 251, 255, .88);
  padding: 0 16px;
  font-size: 13px;
  font-weight: 700;
  white-space: nowrap;
}

.executive-pills i {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--exec-green);
  box-shadow: 0 0 0 6px rgba(76, 155, 68, .15);
}

body:has(.login-card) {
  place-items: stretch !important;
  background:
    linear-gradient(90deg, rgba(131, 196, 255, .045) 1px, transparent 1px),
    linear-gradient(0deg, rgba(131, 196, 255, .035) 1px, transparent 1px),
    linear-gradient(115deg, rgba(0, 13, 26, .98), rgba(2, 28, 51, .92) 45%, rgba(1, 20, 36, .96)),
    url("/assets/academia-hero-premium.webp") center / cover no-repeat !important;
  background-size: 56px 56px, 56px 56px, auto, cover !important;
}

body:has(.login-card) .shell {
  min-height: 100vh !important;
  width: 100vw !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.12fr) minmax(520px, .88fr) !important;
  grid-template-rows: 92px minmax(0, 1fr) !important;
  background: rgba(0, 12, 24, .42) !important;
  overflow: hidden;
}

body:has(.login-card) .shell::before,
body:has(.login-card) .shell::after {
  display: none !important;
}

body:has(.login-card) .showcase {
  min-height: 0 !important;
  padding: clamp(34px, 4vw, 56px) clamp(40px, 4.8vw, 72px) !important;
  background:
    linear-gradient(90deg, rgba(0, 17, 32, .98), rgba(1, 28, 50, .78) 58%, rgba(1, 24, 43, .42)),
    radial-gradient(circle at 78% 46%, rgba(96, 196, 90, .15), transparent 32%) !important;
  position: relative;
}

body:has(.login-card) .showcase::before {
  inset: 0 !important;
  border: 0 !important;
  border-right: 1px solid rgba(172, 219, 255, .16) !important;
  border-radius: 0 !important;
  background:
    linear-gradient(110deg, transparent 0 55%, rgba(95, 196, 90, .10) 55.2% 56%, transparent 56.2%),
    linear-gradient(110deg, transparent 0 72%, rgba(117, 199, 255, .10) 72.1% 72.28%, transparent 72.4%);
}

body:has(.login-card) .showcase::after {
  right: 2%;
  top: 8%;
  width: 42%;
  height: 72%;
  transform: none;
  opacity: .46;
  border: 0;
  background:
    linear-gradient(90deg, rgba(0, 14, 26, .10), rgba(0, 14, 26, .78)),
    url("/assets/academia-hero-premium.webp") center / cover no-repeat;
  mask-image: linear-gradient(90deg, transparent 0%, #000 28%, #000 78%, transparent 100%);
}

body:has(.login-card) .topline {
  display: none !important;
}

body:has(.login-card) .hero-copy {
  max-width: 800px !important;
  padding: clamp(18px, 2vw, 32px) 0 0 !important;
}

body:has(.login-card) h1 {
  max-width: 650px !important;
  color: var(--exec-text) !important;
  font-size: clamp(50px, 4.9vw, 78px) !important;
  line-height: .98 !important;
  text-shadow: 0 18px 46px rgba(0, 0, 0, .28);
}

body:has(.login-card) h1 span,
body:has(.login-card) .hero-copy strong {
  color: var(--exec-green) !important;
}

body:has(.login-card) h1 span {
  display: inline-block;
}

body:has(.login-card) h1::after {
  content: "";
  display: block;
  width: 76px;
  height: 4px;
  margin-top: 18px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--exec-green), rgba(94, 196, 90, .25));
}

body:has(.login-card) .hero-copy p {
  max-width: 620px !important;
  color: var(--exec-muted) !important;
  font-size: 18px !important;
  line-height: 1.72 !important;
}

body:has(.login-card) .terminal-strip {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
  max-width: 720px;
  margin-top: 28px !important;
}

body:has(.login-card) .metric.feature-card {
  min-height: 158px !important;
  display: grid;
  grid-template-columns: 72px 1fr;
  align-items: start;
  gap: 16px;
  padding: 20px !important;
  border: 1px solid rgba(172, 219, 255, .17) !important;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, .085), rgba(255, 255, 255, .025)),
    rgba(7, 31, 54, .58) !important;
  box-shadow: 0 18px 48px rgba(0, 7, 14, .24) !important;
  backdrop-filter: blur(18px);
}

body:has(.login-card) .feature-icon {
  grid-row: span 2;
  width: 64px;
  height: 64px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  border: 1px solid rgba(172, 219, 255, .18);
  background:
    radial-gradient(circle at 42% 28%, rgba(94, 196, 90, .36), transparent 48%),
    rgba(255, 255, 255, .06);
  color: var(--exec-green);
  font-size: 15px;
  font-weight: 900;
  box-shadow: 0 16px 34px rgba(0, 10, 20, .24), inset 0 0 26px rgba(94, 196, 90, .10);
}

body:has(.login-card) .feature-card strong {
  margin: 0 !important;
  color: var(--exec-text) !important;
  font-size: 18px !important;
  line-height: 1.28 !important;
  text-transform: none !important;
}

body:has(.login-card) .feature-card strong em {
  color: var(--exec-green);
  font-style: normal;
  margin-right: 6px;
}

body:has(.login-card) .feature-card p {
  grid-column: 2;
  margin: -6px 0 0 !important;
  color: var(--exec-muted-2) !important;
  font-size: 13px !important;
  line-height: 1.55 !important;
}

.evolution-panel {
  max-width: 720px;
  margin-top: 16px;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0;
  border: 1px solid rgba(172, 219, 255, .15);
  border-radius: 12px;
  background: rgba(4, 24, 43, .64);
  box-shadow: 0 18px 48px rgba(0, 7, 14, .22);
  overflow: hidden;
  backdrop-filter: blur(18px);
}

.evolution-panel > div {
  padding: 16px 18px;
  border-right: 1px solid rgba(172, 219, 255, .10);
}

.evolution-panel > div:last-child {
  border-right: 0;
}

.evolution-panel small {
  display: block;
  color: rgba(244, 251, 255, .70);
  font-size: 11px;
  font-weight: 700;
  line-height: 1.3;
}

.evolution-panel strong {
  display: block;
  margin-top: 9px;
  color: var(--exec-text);
  font-size: 24px;
  line-height: 1;
}

.evolution-panel span {
  display: block;
  margin-top: 4px;
  color: var(--exec-green);
  font-size: 12px;
  font-weight: 800;
}

.chart-card {
  min-width: 170px;
}

.mini-chart {
  height: 56px;
  display: flex;
  align-items: end;
  gap: 7px;
  padding-top: 12px;
}

.mini-chart i {
  flex: 1;
  min-width: 8px;
  border-radius: 999px 999px 0 0;
  background: linear-gradient(180deg, #8bea84, rgba(76, 155, 68, .20));
  box-shadow: 0 0 20px rgba(94, 196, 90, .20);
}

.mini-chart i:nth-child(1) { height: 24%; }
.mini-chart i:nth-child(2) { height: 38%; }
.mini-chart i:nth-child(3) { height: 32%; }
.mini-chart i:nth-child(4) { height: 56%; }
.mini-chart i:nth-child(5) { height: 72%; }
.mini-chart i:nth-child(6) { height: 90%; }

body:has(.login-card) .system-line {
  color: rgba(244, 251, 255, .72) !important;
  border-top-color: rgba(172, 219, 255, .14) !important;
}

body:has(.login-card) .login-zone {
  padding: clamp(42px, 5vw, 72px) !important;
  background:
    linear-gradient(135deg, rgba(2, 25, 45, .94), rgba(3, 39, 68, .88)),
    linear-gradient(90deg, rgba(172, 219, 255, .055) 1px, transparent 1px),
    linear-gradient(0deg, rgba(172, 219, 255, .045) 1px, transparent 1px) !important;
  background-size: auto, 44px 44px, 44px 44px !important;
  border-left: 1px solid rgba(172, 219, 255, .18);
}

body:has(.login-card) .login-card {
  width: min(100%, 560px) !important;
  min-height: auto !important;
  padding: clamp(28px, 3vw, 42px) !important;
  border: 1px solid rgba(190, 228, 255, .26) !important;
  border-radius: 22px !important;
  background:
    linear-gradient(180deg, rgba(9, 38, 66, .76), rgba(4, 25, 45, .86)),
    rgba(5, 32, 56, .78) !important;
  box-shadow: 0 34px 90px rgba(0, 8, 18, .42), inset 0 0 0 1px rgba(255, 255, 255, .035) !important;
  color: var(--exec-text) !important;
  backdrop-filter: blur(24px);
}

body:has(.login-card) .login-card::before {
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(190, 228, 255, .92), rgba(94, 196, 90, .58), transparent) !important;
  box-shadow: 0 0 30px rgba(148, 221, 255, .40);
}

body:has(.login-card) .login-head {
  justify-content: center !important;
  flex-direction: column-reverse !important;
  gap: 12px !important;
  margin-bottom: 14px !important;
}

body:has(.login-card) .form-kicker,
body:has(.login-card) .login-title small {
  background: transparent !important;
  border: 0 !important;
  color: rgba(180, 230, 172, .82) !important;
  justify-content: center;
  letter-spacing: .42em !important;
}

body:has(.login-card) .lock-badge {
  position: static;
  transform: none;
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  border-radius: 50% !important;
  border: 1px solid rgba(176, 231, 170, .38);
  background:
    radial-gradient(circle, rgba(94, 196, 90, .20), rgba(94, 196, 90, .04) 58%, transparent 60%),
    rgba(255, 255, 255, .035) !important;
  color: rgba(232, 255, 229, .92) !important;
  box-shadow: inset 0 0 28px rgba(94, 196, 90, .18), 0 0 36px rgba(94, 196, 90, .13);
}

body:has(.login-card) .login-title {
  padding-top: 0;
  text-align: center;
  margin-bottom: 16px !important;
}

body:has(.login-card) .login-title small {
  display: none !important;
}

body:has(.login-card) .login-title h2 {
  color: var(--exec-text) !important;
  font-size: clamp(32px, 3vw, 40px) !important;
  margin-top: 12px !important;
  margin-bottom: 8px !important;
}

body:has(.login-card) form {
  gap: 12px !important;
}

body:has(.login-card) .login-title p {
  color: var(--exec-muted) !important;
  max-width: 380px;
  margin-left: auto !important;
  margin-right: auto !important;
}

body:has(.login-card) label {
  color: rgba(244, 251, 255, .88) !important;
}

body:has(.login-card) input {
  min-height: 52px !important;
  border-color: rgba(190, 228, 255, .20) !important;
  background: rgba(0, 16, 30, .38) !important;
  color: var(--exec-text) !important;
}

body:has(.login-card) input::placeholder {
  color: rgba(244, 251, 255, .42) !important;
}

body:has(.login-card) .toggle {
  background: transparent !important;
  color: rgba(244, 251, 255, .66) !important;
  height: 34px !important;
  top: 9px !important;
}

body:has(.login-card) .submit {
  min-height: 56px !important;
  background: linear-gradient(135deg, #58b650, #3f9839) !important;
  box-shadow: 0 18px 48px rgba(76, 155, 68, .32) !important;
}

body:has(.login-card) .security-note,
body:has(.login-card) .credential-hint {
  border-color: rgba(172, 219, 255, .12) !important;
  background: transparent !important;
  color: var(--exec-muted) !important;
}

body:has(.login-card) .security-note span {
  background: rgba(76, 155, 68, .10) !important;
  color: var(--exec-green) !important;
}

body:has(.products) .shell,
body:has(.tool-card) .shell {
  background:
    radial-gradient(circle at 78% 12%, rgba(76, 155, 68, .15), transparent 28%),
    linear-gradient(90deg, rgba(1, 17, 32, .92), rgba(1, 26, 47, .78)),
    url("/assets/academia-hero-premium.webp") center / cover no-repeat !important;
}

body:has(.products) .product-card,
body:has(.tool-card) .tool-card,
body:has(.panel) .intro,
body:has(.panel) .panel,
body:has(.timeline) .intro,
body:has(.timeline) .cert-panel,
body:has(.timeline) .timeline,
body:has(.timeline) .content-panel,
body:has(.chat-shell) .side,
body:has(.chat-shell) .chat-shell,
body:has(.chat-shell) .report-shell {
  border: 1px solid var(--exec-border) !important;
  background:
    linear-gradient(150deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, .025)),
    rgba(6, 30, 52, .72) !important;
  color: var(--exec-text) !important;
  box-shadow: var(--exec-shadow), var(--exec-glow) !important;
  backdrop-filter: blur(20px);
}

body:has(.products) .product-card h2,
body:has(.tool-card) .tool-card h3,
body:has(.panel) .intro h1,
body:has(.panel) .panel h2,
body:has(.timeline) .intro h1,
body:has(.timeline) .cert-panel h2,
body:has(.timeline) .module-hero h2,
body:has(.chat-shell) h1,
body:has(.chat-shell) h2,
body:has(.chat-shell) h3 {
  color: var(--exec-text) !important;
}

body:has(.products) .product-card p,
body:has(.tool-card) .tool-card p,
body:has(.panel) .intro p,
body:has(.panel) .panel p,
body:has(.timeline) .intro p,
body:has(.timeline) .cert-panel p,
body:has(.timeline) .module-hero p,
body:has(.chat-shell) p {
  color: var(--exec-muted) !important;
}

body:has(.tool-card) .hero,
body:has(.panel) .intro,
body:has(.timeline) .intro,
body:has(.chat-shell) .side-hero {
  background:
    linear-gradient(115deg, rgba(0, 17, 32, .96), rgba(2, 42, 70, .70)),
    radial-gradient(circle at 78% 54%, rgba(76, 155, 68, .18), transparent 36%),
    url("/assets/academia-hero-premium.webp") center / cover no-repeat !important;
}

body:has(.chat-shell) .app {
  background:
    linear-gradient(90deg, rgba(172, 219, 255, .04) 1px, transparent 1px),
    linear-gradient(0deg, rgba(172, 219, 255, .035) 1px, transparent 1px),
    linear-gradient(135deg, #001321, #04233a 48%, #001726) !important;
  background-size: 44px 44px, 44px 44px, auto !important;
}

body:has(.chat-shell) .setup-card,
body:has(.chat-shell) .info-card {
  background: linear-gradient(150deg, rgba(255, 255, 255, .96), rgba(235, 244, 242, .91)) !important;
  color: var(--premium-ink) !important;
  border-color: rgba(3, 52, 84, .14) !important;
  box-shadow: 0 24px 72px rgba(0, 12, 24, .22) !important;
}

body:has(.chat-shell) .setup-card h1,
body:has(.chat-shell) .setup-card h2,
body:has(.chat-shell) .info-card h2 {
  color: var(--premium-ink) !important;
}

body:has(.chat-shell) .setup-card p,
body:has(.chat-shell) .info-card p,
body:has(.chat-shell) .info-card li {
  color: #52687a !important;
}

body:has(.chat-shell) .setup-card .pill {
  background: rgba(76, 155, 68, .10) !important;
  border-color: rgba(76, 155, 68, .22) !important;
  color: var(--exec-green-2) !important;
}

body:has(.panel) .panel,
body:has(.timeline) .cert-panel,
body:has(.timeline) .support-card,
body:has(.timeline) .quiz,
body:has(.timeline) .pocket-card,
body:has(.timeline) .expert-panel,
body:has(.timeline) .expert-result,
body:has(.panel) .upload-card,
body:has(.panel) .report-card,
body:has(.panel) .card {
  background:
    linear-gradient(150deg, rgba(255, 255, 255, .92), rgba(232, 243, 241, .86)) !important;
  color: var(--premium-ink) !important;
  border-color: rgba(3, 52, 84, .14) !important;
}

body:has(.timeline) .module-hero {
  background:
    linear-gradient(115deg, rgba(232, 245, 236, .92), rgba(255, 255, 255, .90)) !important;
  color: var(--premium-ink) !important;
}

body:has(.timeline) .module-hero h2,
body:has(.timeline) .support-card h3,
body:has(.timeline) .quiz h3,
body:has(.timeline) .pocket-card h3,
body:has(.timeline) .expert-panel h2,
body:has(.timeline) .expert-result h2,
body:has(.panel) .panel h2,
body:has(.panel) .report-card h3,
body:has(.panel) .card h3 {
  color: var(--premium-ink) !important;
}

body:has(.timeline) .module-hero p,
body:has(.timeline) .support-card p,
body:has(.timeline) .support-card li,
body:has(.timeline) .quiz p,
body:has(.timeline) .pocket-card p,
body:has(.panel) .panel p,
body:has(.panel) .note,
body:has(.panel) .report-card p,
body:has(.panel) .card p {
  color: #4e6476 !important;
}

body:has(.timeline) .cert-panel {
  background:
    linear-gradient(150deg, rgba(255, 255, 255, .08), rgba(255, 255, 255, .025)),
    rgba(6, 30, 52, .76) !important;
  color: var(--exec-text) !important;
  border-color: var(--exec-border) !important;
}

body:has(.timeline) .cert-panel h2,
body:has(.timeline) .section-title h2,
body:has(.timeline) .section-title h3 {
  color: var(--exec-text) !important;
}

body:has(.timeline) .cert-panel p,
body:has(.timeline) .cert-panel small,
body:has(.timeline) .section-title p {
  color: var(--exec-muted) !important;
}

body:has(.timeline) .cert-panel label {
  color: rgba(244, 251, 255, .86) !important;
}

body:has(.panel) label,
body:has(.timeline) label {
  color: var(--premium-ink) !important;
}

body:has(.panel) input,
body:has(.panel) textarea,
body:has(.panel) select,
body:has(.timeline) input,
body:has(.timeline) textarea,
body:has(.timeline) select {
  background: rgba(255, 255, 255, .94) !important;
}

.eyebrow,
.pill,
.status-pill,
.session-pill,
.access-pill,
.form-kicker {
  border-color: rgba(172, 219, 255, .20) !important;
  background: rgba(255, 255, 255, .055) !important;
  color: rgba(244, 251, 255, .88) !important;
}

.dot,
.status-dot {
  background: var(--exec-green) !important;
}

.btn,
.nav-link {
  border-color: rgba(172, 219, 255, .18) !important;
  background: rgba(255, 255, 255, .055) !important;
  color: var(--exec-text) !important;
}

.btn.primary,
.nav-link.important,
.submit,
.open {
  background: linear-gradient(135deg, #5ec45a, #3f9639) !important;
  color: #fff !important;
}

.academia-auth-chip {
  border-color: rgba(172, 219, 255, .18) !important;
  background: rgba(4, 24, 43, .82) !important;
  color: var(--exec-text) !important;
  box-shadow: 0 20px 62px rgba(0, 8, 18, .36) !important;
  backdrop-filter: blur(18px) !important;
}

.academia-auth-chip button {
  background: linear-gradient(135deg, #0a3b5e, #033454) !important;
}

@media (max-width: 1180px) {
  body:has(.login-card) .shell {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto auto !important;
    overflow: auto;
  }

  .executive-topbar {
    min-height: auto;
    align-items: flex-start;
    flex-direction: column;
    padding: 18px 22px;
  }

  .executive-brand img {
    max-width: 240px;
    width: 240px;
  }

  .executive-nav,
  .executive-pills {
    width: 100%;
    justify-content: flex-start;
    overflow-x: auto;
    padding-bottom: 4px;
  }

  body:has(.login-card) .terminal-strip,
  .evolution-panel {
    max-width: none;
  }
}

@media (max-width: 720px) {
  .executive-nav {
    gap: 18px;
    font-size: 13px;
  }

  .executive-pills span {
    min-height: 34px;
    font-size: 12px;
  }

  body:has(.login-card) .showcase {
    padding: 24px 18px !important;
  }

  body:has(.login-card) .terminal-strip,
  .evolution-panel {
    grid-template-columns: 1fr !important;
  }

  body:has(.login-card) .metric.feature-card {
    grid-template-columns: 58px 1fr;
    min-height: 132px !important;
  }

  body:has(.login-card) .feature-icon {
    width: 52px;
    height: 52px;
  }

  body:has(.login-card) .login-zone {
    padding: 18px !important;
  }
}

/* Login reference finish: dark executive product screen */
body:has(.login-card) {
  min-height: 100vh !important;
  overflow-x: hidden !important;
  background:
    linear-gradient(90deg, rgba(124, 205, 255, .045) 1px, transparent 1px),
    linear-gradient(0deg, rgba(124, 205, 255, .035) 1px, transparent 1px),
    radial-gradient(circle at 46% 40%, rgba(76, 155, 68, .12), transparent 28%),
    linear-gradient(120deg, #000a14 0%, #001629 42%, #02243d 100%) !important;
  background-size: 56px 56px, 56px 56px, auto, auto !important;
}

body:has(.login-card) .shell {
  min-height: 100vh !important;
  width: 100% !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1.36fr) minmax(460px, .94fr) !important;
  grid-template-rows: 88px minmax(760px, 1fr) 60px !important;
  background:
    linear-gradient(90deg, rgba(0, 9, 18, .18), rgba(0, 9, 18, .44)),
    url("/assets/academia-hero-premium.webp") center / cover no-repeat !important;
  overflow: auto !important;
}

body:has(.login-card) .shell::before,
body:has(.login-card) .shell::after {
  display: none !important;
}

.executive-topbar {
  min-height: 88px !important;
  padding: 0 clamp(42px, 4vw, 64px) !important;
  background: rgba(0, 12, 25, .88) !important;
  border-bottom: 1px solid rgba(139, 202, 245, .14) !important;
  box-shadow: 0 18px 54px rgba(0, 7, 14, .34) !important;
}

.executive-brand img {
  width: clamp(220px, 18vw, 292px) !important;
  max-width: none !important;
}

.executive-nav {
  gap: clamp(26px, 3.1vw, 52px) !important;
  color: rgba(246, 252, 255, .88) !important;
  font-size: 16px !important;
  letter-spacing: 0 !important;
}

.executive-pills span {
  min-height: 38px !important;
  padding: 0 18px !important;
  border: 1px solid rgba(186, 228, 255, .22) !important;
  background: rgba(255, 255, 255, .035) !important;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .025) !important;
}

.shield-pill svg,
.executive-footer svg,
.security-note svg,
.input-icon svg,
.lock-badge svg,
.feature-icon svg {
  width: 1em;
  height: 1em;
  fill: none;
  stroke: currentColor;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.shield-pill svg {
  width: 18px;
  height: 18px;
}

body:has(.login-card) .showcase {
  grid-row: 2;
  display: flex !important;
  min-height: 0 !important;
  padding: clamp(38px, 4.4vw, 62px) clamp(40px, 5vw, 72px) 28px !important;
  background:
    linear-gradient(90deg, rgba(0, 12, 24, .98) 0%, rgba(0, 22, 41, .88) 54%, rgba(0, 16, 30, .52) 100%),
    radial-gradient(ellipse at 73% 35%, rgba(180, 230, 255, .11), transparent 24%),
    radial-gradient(ellipse at 58% 64%, rgba(76, 155, 68, .16), transparent 32%) !important;
  overflow: hidden !important;
}

body:has(.login-card) .showcase::before {
  display: block !important;
  content: "" !important;
  position: absolute !important;
  inset: 0 !important;
  border: 0 !important;
  border-right: 1px solid rgba(180, 224, 255, .18) !important;
  border-radius: 0 !important;
  background:
    linear-gradient(108deg, transparent 0 60%, rgba(255, 255, 255, .07) 60.1% 60.25%, transparent 60.45%),
    linear-gradient(105deg, transparent 0 64%, rgba(76, 155, 68, .24) 64.1% 64.35%, transparent 64.6%),
    radial-gradient(ellipse at 78% 62%, rgba(94, 196, 90, .14), transparent 42%) !important;
  pointer-events: none !important;
}

body:has(.login-card) .showcase::after {
  content: "" !important;
  position: absolute !important;
  right: -8% !important;
  top: 1% !important;
  width: 56% !important;
  height: 96% !important;
  opacity: .78 !important;
  border: 0 !important;
  border-radius: 0 !important;
  transform: none !important;
  background:
    linear-gradient(90deg, rgba(0, 13, 25, .28), rgba(0, 13, 25, .82)),
    radial-gradient(ellipse at 28% 34%, rgba(255, 255, 255, .18), transparent 12%),
    url("/assets/academia-hero-premium.webp") 72% center / cover no-repeat !important;
  mix-blend-mode: screen;
  mask-image: linear-gradient(90deg, transparent 0%, #000 24%, #000 72%, transparent 100%);
  pointer-events: none !important;
}

body:has(.login-card) .hero-copy {
  position: relative !important;
  z-index: 2 !important;
  max-width: 700px !important;
  padding-top: clamp(12px, 2vw, 28px) !important;
}

body:has(.login-card) h1 {
  max-width: 690px !important;
  margin: 0 !important;
  color: #fff !important;
  font-size: clamp(56px, 5.2vw, 76px) !important;
  line-height: 1.03 !important;
  letter-spacing: 0 !important;
}

body:has(.login-card) h1 span {
  display: block !important;
  color: var(--exec-green-2) !important;
}

body:has(.login-card) h1::after {
  width: 70px !important;
  height: 4px !important;
  margin: 22px 0 0 !important;
  background: linear-gradient(90deg, var(--exec-green), rgba(94, 196, 90, .12)) !important;
}

body:has(.login-card) .hero-copy p {
  max-width: 610px !important;
  margin-top: 22px !important;
  color: rgba(244, 251, 255, .78) !important;
  font-size: 18px !important;
  line-height: 1.64 !important;
}

body:has(.login-card) .terminal-strip {
  max-width: 760px !important;
  margin-top: 26px !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

body:has(.login-card) .metric.feature-card {
  min-height: 148px !important;
  grid-template-columns: 72px 1fr !important;
  gap: 14px !important;
  padding: 19px 19px 18px !important;
  border-radius: 14px !important;
  border: 1px solid rgba(186, 228, 255, .18) !important;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, .075), rgba(255, 255, 255, .018)),
    rgba(4, 27, 49, .66) !important;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .025), 0 22px 58px rgba(0, 6, 12, .30) !important;
}

body:has(.login-card) .feature-icon {
  width: 62px !important;
  height: 62px !important;
  border-radius: 50% !important;
  color: #7bdc72 !important;
  font-size: 30px !important;
  background:
    radial-gradient(circle at 38% 28%, rgba(255, 255, 255, .16), transparent 28%),
    radial-gradient(circle at 50% 50%, rgba(94, 196, 90, .25), rgba(94, 196, 90, .04) 62%),
    rgba(255, 255, 255, .045) !important;
  box-shadow: inset 0 0 28px rgba(111, 210, 106, .18), 0 0 32px rgba(94, 196, 90, .16) !important;
}

body:has(.login-card) .feature-icon svg {
  width: 32px;
  height: 32px;
  stroke-width: 2.15;
}

body:has(.login-card) .feature-card strong {
  font-size: 19px !important;
  line-height: 1.24 !important;
}

body:has(.login-card) .feature-card p {
  margin-top: -2px !important;
  font-size: 13.5px !important;
  color: rgba(244, 251, 255, .64) !important;
}

.evolution-panel {
  max-width: 760px !important;
  margin-top: 14px !important;
  grid-template-columns: 1.45fr 1fr !important;
  border-radius: 12px !important;
  border-color: rgba(186, 228, 255, .14) !important;
  background: rgba(2, 19, 36, .56) !important;
}

.evolution-panel > div {
  border-right: 1px solid rgba(186, 228, 255, .10) !important;
}

.overview-card {
  padding: 17px 18px !important;
}

.panel-title {
  color: #fff;
  font-size: 13px;
  font-weight: 800;
  margin-bottom: 13px;
}

.panel-title b {
  float: right;
  padding: 4px 8px;
  border: 1px solid rgba(186, 228, 255, .13);
  border-radius: 6px;
  color: rgba(244, 251, 255, .62);
  font-size: 10px;
}

.overview-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
}

.overview-grid > div {
  padding: 0 !important;
  border: 0 !important;
}

.evolution-panel small {
  color: rgba(244, 251, 255, .58) !important;
  font-size: 10px !important;
}

.evolution-panel strong {
  font-size: 23px !important;
}

.chart-card {
  min-width: 0 !important;
  padding: 17px 18px !important;
}

.mini-chart {
  height: 58px !important;
  gap: 9px !important;
}

.mini-chart i {
  position: relative;
  border-radius: 999px 999px 0 0;
}

.mini-chart i::after {
  content: "";
  position: absolute;
  left: 50%;
  top: -4px;
  width: 7px;
  height: 7px;
  transform: translateX(-50%);
  border-radius: 50%;
  background: #a5f29e;
  box-shadow: 0 0 18px rgba(94, 196, 90, .62);
}

body:has(.login-card) .system-line {
  display: none !important;
}

body:has(.login-card) .login-zone {
  grid-row: 2;
  align-items: center !important;
  justify-content: center !important;
  padding: clamp(38px, 5vw, 70px) clamp(38px, 4.2vw, 62px) !important;
  background:
    linear-gradient(90deg, rgba(0, 15, 28, .82), rgba(2, 26, 49, .90)),
    linear-gradient(90deg, rgba(139, 202, 245, .040) 1px, transparent 1px),
    linear-gradient(0deg, rgba(139, 202, 245, .035) 1px, transparent 1px) !important;
  background-size: auto, 56px 56px, 56px 56px !important;
  border-left: 1px solid rgba(186, 228, 255, .18) !important;
}

body:has(.login-card) .login-card {
  width: min(100%, 570px) !important;
  padding: clamp(34px, 4vw, 48px) !important;
  border-radius: 24px !important;
  border: 1px solid rgba(211, 238, 255, .30) !important;
  background:
    radial-gradient(circle at 50% 0%, rgba(110, 184, 255, .14), transparent 36%),
    linear-gradient(180deg, rgba(6, 32, 58, .80), rgba(3, 20, 38, .90)) !important;
  box-shadow:
    0 0 0 1px rgba(255, 255, 255, .025) inset,
    0 0 72px rgba(101, 181, 255, .13),
    0 34px 100px rgba(0, 6, 12, .48) !important;
}

body:has(.login-card) .login-card::before {
  height: 1px !important;
  background: linear-gradient(90deg, transparent, rgba(211, 238, 255, .95), rgba(94, 196, 90, .55), transparent) !important;
}

body:has(.login-card) .login-head {
  margin-bottom: 18px !important;
  gap: 18px !important;
}

body:has(.login-card) .lock-badge {
  width: 78px !important;
  height: 78px !important;
  min-width: 78px !important;
  font-size: 40px !important;
  color: rgba(220, 255, 216, .95) !important;
  border-color: rgba(180, 230, 172, .36) !important;
  box-shadow: inset 0 0 34px rgba(94, 196, 90, .16), 0 0 54px rgba(116, 216, 110, .20) !important;
}

body:has(.login-card) .lock-badge svg {
  width: 46px;
  height: 46px;
  stroke-width: 1.7;
}

body:has(.login-card) .form-kicker {
  display: block !important;
  color: rgba(178, 231, 171, .86) !important;
  font-size: 12px !important;
  letter-spacing: .48em !important;
  text-align: center;
  text-transform: uppercase;
}

body:has(.login-card) .login-title h2 {
  font-size: clamp(35px, 3.1vw, 44px) !important;
  line-height: 1.08 !important;
  margin-top: 8px !important;
}

body:has(.login-card) .login-title p {
  max-width: 380px !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
}

body:has(.login-card) form {
  gap: 15px !important;
}

body:has(.login-card) label {
  gap: 8px !important;
  color: rgba(244, 251, 255, .92) !important;
  font-size: 12px !important;
  letter-spacing: .02em !important;
}

.input-wrap,
.password-wrap {
  position: relative;
  display: block;
}

.input-icon {
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
  display: grid;
  place-items: center;
  width: 22px;
  height: 22px;
  color: rgba(244, 251, 255, .52);
  pointer-events: none;
  z-index: 2;
}

body:has(.login-card) .input-wrap input,
body:has(.login-card) .password-wrap input {
  width: 100%;
  padding-left: 52px !important;
}

body:has(.login-card) input {
  min-height: 58px !important;
  border-radius: 10px !important;
  border-color: rgba(186, 228, 255, .22) !important;
  background: rgba(0, 12, 24, .34) !important;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .018) !important;
}

body:has(.login-card) input:focus {
  border-color: rgba(124, 218, 117, .58) !important;
  box-shadow: 0 0 0 3px rgba(94, 196, 90, .10), inset 0 0 0 1px rgba(255, 255, 255, .026) !important;
}

body:has(.login-card) .toggle {
  right: 14px !important;
  top: 12px !important;
  height: 34px !important;
  padding: 0 4px !important;
  color: rgba(244, 251, 255, .70) !important;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.login-options {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: -2px 0 4px;
  color: rgba(244, 251, 255, .82);
  font-size: 14px;
}

.remember-control {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 9px !important;
  margin: 0 !important;
  color: rgba(244, 251, 255, .84) !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
}

.remember-control input {
  appearance: none;
  width: 19px !important;
  height: 19px !important;
  min-height: 19px !important;
  border-radius: 5px !important;
  padding: 0 !important;
  background: linear-gradient(135deg, #85d67e, #4c9b44) !important;
  border: 1px solid rgba(180, 230, 172, .5) !important;
  position: relative;
}

.remember-control input::after {
  content: "";
  position: absolute;
  left: 5px;
  top: 3px;
  width: 7px;
  height: 10px;
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.forgot-link {
  color: #79d270;
  font-weight: 700;
  white-space: nowrap;
}

body:has(.login-card) .submit {
  min-height: 60px !important;
  border-radius: 10px !important;
  background: linear-gradient(135deg, #69c963, #3f9639) !important;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .12), 0 18px 48px rgba(76, 155, 68, .30) !important;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  font-size: 16px !important;
}

.button-arrow {
  font-size: 24px;
  line-height: 1;
}

.protected-divider {
  display: flex;
  align-items: center;
  gap: 18px;
  margin: 26px 0 22px;
  color: rgba(244, 251, 255, .42);
  font-size: 12px;
  letter-spacing: .42em;
  text-transform: uppercase;
}

.protected-divider::before,
.protected-divider::after {
  content: "";
  height: 1px;
  flex: 1;
  background: linear-gradient(90deg, transparent, rgba(186, 228, 255, .20), transparent);
}

body:has(.login-card) .security-note {
  margin-top: 0 !important;
  border-top: 0 !important;
  padding: 0 !important;
  display: grid !important;
  grid-template-columns: 44px 1fr !important;
  align-items: center !important;
  color: rgba(244, 251, 255, .74) !important;
}

body:has(.login-card) .security-note span {
  width: 42px !important;
  height: 42px !important;
  border-radius: 50% !important;
  color: #82dd79 !important;
  background: rgba(94, 196, 90, .10) !important;
  border: 1px solid rgba(94, 196, 90, .18) !important;
}

body:has(.login-card) .security-note svg {
  width: 24px;
  height: 24px;
}

body:has(.login-card) .credential-hint {
  display: none !important;
}

.executive-footer {
  grid-column: 1 / -1;
  grid-row: 3;
  min-height: 60px;
  padding: 0 clamp(42px, 4vw, 64px);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  border-top: 1px solid rgba(139, 202, 245, .13);
  background: rgba(0, 12, 25, .86);
  color: rgba(244, 251, 255, .66);
  font-size: 13px;
}

.executive-footer span {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.executive-footer svg {
  width: 22px;
  height: 22px;
  color: rgba(244, 251, 255, .74);
}

.executive-footer b {
  color: rgba(244, 251, 255, .28);
  font-weight: 700;
}

@media (max-width: 1320px) {
  body:has(.login-card) .shell {
    grid-template-columns: minmax(0, 1.18fr) minmax(430px, .82fr) !important;
  }

  .executive-nav {
    gap: 28px !important;
    font-size: 14px !important;
  }

  .executive-pills span {
    padding: 0 13px !important;
    font-size: 12px !important;
  }

  body:has(.login-card) h1 {
    font-size: clamp(48px, 5vw, 66px) !important;
  }

  body:has(.login-card) .metric.feature-card {
    min-height: 136px !important;
  }

  body:has(.login-card) .feature-card strong {
    font-size: 17px !important;
  }
}

@media (max-width: 1180px) {
  body:has(.login-card) .shell {
    grid-template-columns: 1fr !important;
    grid-template-rows: auto auto auto auto !important;
  }

  .executive-topbar {
    align-items: flex-start !important;
    flex-direction: column !important;
    padding: 18px 22px !important;
  }

  body:has(.login-card) .showcase,
  body:has(.login-card) .login-zone {
    grid-row: auto;
  }

  .executive-footer {
    grid-row: auto;
    flex-direction: column;
    align-items: flex-start;
    padding: 18px 22px;
  }
}

@media (max-width: 760px) {
  body:has(.login-card) .showcase {
    padding: 24px 18px !important;
  }

  body:has(.login-card) .terminal-strip,
  .evolution-panel,
  .overview-grid {
    grid-template-columns: 1fr !important;
  }

  body:has(.login-card) h1 {
    font-size: 42px !important;
  }

  body:has(.login-card) .hero-copy p {
    font-size: 16px !important;
  }

  body:has(.login-card) .metric.feature-card {
    grid-template-columns: 56px 1fr !important;
    min-height: auto !important;
  }

  body:has(.login-card) .feature-icon {
    width: 50px !important;
    height: 50px !important;
  }

  body:has(.login-card) .feature-icon svg {
    width: 26px;
    height: 26px;
  }

  body:has(.login-card) .login-zone {
    padding: 18px !important;
  }

  body:has(.login-card) .login-card {
    padding: 26px 20px !important;
  }

  .login-options {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
  }
}

/* Login compaction pass: closer to the reference proportions */
body:has(.login-card) .shell {
  grid-template-rows: 88px minmax(690px, 1fr) 58px !important;
}

body:has(.login-card) .showcase {
  padding: clamp(34px, 4vw, 56px) clamp(40px, 5vw, 72px) 24px !important;
}

body:has(.login-card) .hero-copy {
  padding-top: clamp(8px, 1.5vw, 22px) !important;
}

body:has(.login-card) h1 {
  font-size: clamp(52px, 5vw, 72px) !important;
}

body:has(.login-card) h1::after {
  margin-top: 18px !important;
}

body:has(.login-card) .hero-copy p {
  margin-top: 18px !important;
  font-size: 17px !important;
  line-height: 1.58 !important;
}

body:has(.login-card) .terminal-strip {
  margin-top: 22px !important;
}

body:has(.login-card) .metric.feature-card {
  min-height: 126px !important;
  grid-template-columns: 64px 1fr !important;
  gap: 13px !important;
  padding: 17px !important;
}

body:has(.login-card) .feature-icon {
  width: 56px !important;
  height: 56px !important;
}

body:has(.login-card) .feature-icon svg {
  width: 29px !important;
  height: 29px !important;
}

body:has(.login-card) .feature-card strong {
  font-size: 17px !important;
}

body:has(.login-card) .feature-card p {
  font-size: 12.8px !important;
  line-height: 1.48 !important;
}

.evolution-panel {
  margin-top: 13px !important;
}

.overview-card,
.chart-card {
  padding: 14px 16px !important;
}

.panel-title {
  margin-bottom: 10px !important;
}

.mini-chart {
  height: 48px !important;
}

body:has(.login-card) .login-zone {
  padding: clamp(28px, 4vw, 54px) clamp(34px, 4vw, 56px) !important;
}

body:has(.login-card) .login-card {
  padding: clamp(28px, 3vw, 38px) !important;
}

body:has(.login-card) .login-head {
  flex-direction: column !important;
  gap: 12px !important;
  margin-bottom: 12px !important;
}

body:has(.login-card) .lock-badge {
  width: 64px !important;
  height: 64px !important;
  min-width: 64px !important;
}

body:has(.login-card) .lock-badge svg {
  width: 40px !important;
  height: 40px !important;
}

body:has(.login-card) .form-kicker {
  font-size: 11px !important;
  letter-spacing: .42em !important;
}

body:has(.login-card) .login-title {
  margin-bottom: 12px !important;
}

body:has(.login-card) .login-title h2 {
  font-size: clamp(32px, 2.8vw, 40px) !important;
  margin-top: 6px !important;
  margin-bottom: 6px !important;
  white-space: nowrap !important;
}

body:has(.login-card) .login-title p {
  font-size: 14px !important;
  line-height: 1.5 !important;
}

body:has(.login-card) form {
  gap: 12px !important;
}

body:has(.login-card) input {
  min-height: 52px !important;
}

body:has(.login-card) .toggle {
  top: 9px !important;
}

body:has(.login-card) .submit {
  min-height: 54px !important;
}

.login-options {
  margin: -3px 0 2px !important;
}

.protected-divider {
  margin: 20px 0 18px !important;
}

body:has(.login-card) .security-note {
  grid-template-columns: 38px 1fr !important;
  font-size: 13px !important;
}

body:has(.login-card) .security-note span {
  width: 36px !important;
  height: 36px !important;
}

.remember-control input {
  width: 19px !important;
  height: 19px !important;
  min-width: 19px !important;
  min-height: 19px !important;
  flex: 0 0 19px !important;
}

body:has(.login-card) .remember-control input {
  width: 19px !important;
  height: 19px !important;
  min-width: 19px !important;
  min-height: 19px !important;
  border-radius: 5px !important;
}

@media (max-width: 480px) {
  body:has(.login-card) .login-title h2 {
    white-space: normal !important;
  }
}

/* Hard mobile containment for the executive login */
@media (max-width: 760px) {
  body:has(.login-card) {
    overflow-x: hidden !important;
  }

  body:has(.login-card) .shell {
    display: block !important;
    width: 100% !important;
    max-width: 100vw !important;
    min-width: 0 !important;
    overflow-x: hidden !important;
  }

  .executive-topbar {
    width: 100% !important;
    max-width: 100vw !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
    gap: 12px !important;
    overflow: hidden !important;
  }

  .executive-brand img {
    width: min(210px, 72vw) !important;
    max-width: 100% !important;
  }

  .executive-nav,
  .executive-pills {
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    justify-content: flex-start !important;
    scrollbar-width: none;
  }

  .executive-nav::-webkit-scrollbar,
  .executive-pills::-webkit-scrollbar {
    display: none;
  }

  body:has(.login-card) .showcase,
  body:has(.login-card) .login-zone,
  .executive-footer {
    width: 100% !important;
    max-width: 100vw !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  body:has(.login-card) .hero-copy {
    max-width: 100% !important;
    padding-top: 18px !important;
  }

  body:has(.login-card) h1 {
    max-width: 100% !important;
    font-size: 36px !important;
    line-height: 1.08 !important;
  }

  body:has(.login-card) .hero-copy p {
    max-width: 100% !important;
    font-size: 15px !important;
    line-height: 1.55 !important;
  }

  body:has(.login-card) .terminal-strip,
  .evolution-panel {
    width: 100% !important;
    max-width: 100% !important;
    grid-template-columns: 1fr !important;
  }

  body:has(.login-card) .metric.feature-card {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    grid-template-columns: 54px minmax(0, 1fr) !important;
  }

  body:has(.login-card) .feature-card strong,
  body:has(.login-card) .feature-card p {
    min-width: 0 !important;
    overflow-wrap: break-word !important;
  }

  body:has(.login-card) .login-card {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
  }

  body:has(.login-card) .login-title h2 {
    font-size: 30px !important;
    white-space: normal !important;
  }

  .protected-divider {
    letter-spacing: .28em !important;
  }
}

/* Global logo and readability pass */
header .brand img,
.executive-brand img {
  content: url("/assets/academia-connecta-premium-logo.svg");
  width: clamp(210px, 18vw, 300px) !important;
  max-width: 100% !important;
  height: auto !important;
  display: block !important;
  object-fit: contain !important;
}

body:not(:has(.login-card)) header .brand {
  min-width: 220px !important;
}

body:not(:has(.login-card)) .brand-title {
  border-left-color: rgba(186, 228, 255, .20) !important;
  padding-left: 18px !important;
}

body:not(:has(.login-card)) .brand-title strong,
body:not(:has(.login-card)) .brand-copy strong {
  color: #f8fcff !important;
  font-size: 15px !important;
}

body:not(:has(.login-card)) .brand-title span,
body:not(:has(.login-card)) .brand-copy span {
  color: rgba(244, 251, 255, .74) !important;
  font-size: 12px !important;
}

body:not(:has(.login-card)) {
  color: #f4fbff !important;
}

body:not(:has(.login-card)) main,
body:not(:has(.login-card)) section,
body:not(:has(.login-card)) article {
  text-shadow: none;
}

body:not(:has(.login-card)) h1,
body:not(:has(.login-card)) h2,
body:not(:has(.login-card)) h3,
body:not(:has(.login-card)) h4 {
  color: #f8fcff !important;
}

body:not(:has(.login-card)) main > p,
body:not(:has(.login-card)) section > p,
body:not(:has(.login-card)) .hero p,
body:not(:has(.login-card)) .intro p,
body:not(:has(.login-card)) .side-hero p,
body:not(:has(.login-card)) .product-card p,
body:not(:has(.login-card)) .tool-card p {
  color: rgba(244, 251, 255, .86) !important;
  font-size: clamp(16px, 1.1vw, 18px) !important;
  line-height: 1.68 !important;
}

body:not(:has(.login-card)) .product-card,
body:not(:has(.login-card)) .tool-card,
body:not(:has(.login-card)) .side,
body:not(:has(.login-card)) .chat-shell,
body:not(:has(.login-card)) .report-shell {
  background:
    linear-gradient(145deg, rgba(255, 255, 255, .105), rgba(255, 255, 255, .035)),
    rgba(4, 27, 49, .76) !important;
  border-color: rgba(190, 228, 255, .24) !important;
}

body:not(:has(.login-card)) .product-card h2,
body:not(:has(.login-card)) .tool-card h3,
body:not(:has(.login-card)) .side h2,
body:not(:has(.login-card)) .chat-shell h2,
body:not(:has(.login-card)) .report-shell h2,
body:not(:has(.login-card)) .report-shell h3 {
  color: #ffffff !important;
}

body:not(:has(.login-card)) .product-card p,
body:not(:has(.login-card)) .tool-card p,
body:not(:has(.login-card)) .side p,
body:not(:has(.login-card)) .chat-shell p,
body:not(:has(.login-card)) .report-shell p {
  color: rgba(244, 251, 255, .82) !important;
}

body:not(:has(.login-card)) .panel,
body:not(:has(.login-card)) .content-panel,
body:not(:has(.login-card)) .module-hero,
body:not(:has(.login-card)) .support-card,
body:not(:has(.login-card)) .quiz,
body:not(:has(.login-card)) .pocket-card,
body:not(:has(.login-card)) .expert-panel,
body:not(:has(.login-card)) .expert-result,
body:not(:has(.login-card)) .upload-card,
body:not(:has(.login-card)) .report-card,
body:not(:has(.login-card)) .card,
body:not(:has(.login-card)) .setup-card,
body:not(:has(.login-card)) .info-card,
body:not(:has(.login-card)) .form-card,
body:not(:has(.login-card)) .result-card {
  background:
    linear-gradient(145deg, rgba(255, 255, 255, .98), rgba(235, 244, 242, .94)) !important;
  color: #08283f !important;
  border-color: rgba(3, 52, 84, .16) !important;
  box-shadow: 0 24px 72px rgba(0, 12, 24, .18) !important;
}

body:not(:has(.login-card)) .panel h1,
body:not(:has(.login-card)) .panel h2,
body:not(:has(.login-card)) .panel h3,
body:not(:has(.login-card)) .content-panel h1,
body:not(:has(.login-card)) .content-panel h2,
body:not(:has(.login-card)) .content-panel h3,
body:not(:has(.login-card)) .module-hero h2,
body:not(:has(.login-card)) .support-card h3,
body:not(:has(.login-card)) .quiz h3,
body:not(:has(.login-card)) .pocket-card h3,
body:not(:has(.login-card)) .expert-panel h2,
body:not(:has(.login-card)) .expert-result h2,
body:not(:has(.login-card)) .upload-card h2,
body:not(:has(.login-card)) .report-card h3,
body:not(:has(.login-card)) .card h3,
body:not(:has(.login-card)) .setup-card h1,
body:not(:has(.login-card)) .setup-card h2,
body:not(:has(.login-card)) .info-card h2,
body:not(:has(.login-card)) .form-card h2,
body:not(:has(.login-card)) .result-card h2 {
  color: #08283f !important;
}

body:not(:has(.login-card)) .panel p,
body:not(:has(.login-card)) .panel li,
body:not(:has(.login-card)) .content-panel p,
body:not(:has(.login-card)) .content-panel li,
body:not(:has(.login-card)) .module-hero p,
body:not(:has(.login-card)) .module-hero li,
body:not(:has(.login-card)) .support-card p,
body:not(:has(.login-card)) .support-card li,
body:not(:has(.login-card)) .quiz p,
body:not(:has(.login-card)) .quiz li,
body:not(:has(.login-card)) .pocket-card p,
body:not(:has(.login-card)) .expert-panel p,
body:not(:has(.login-card)) .expert-result p,
body:not(:has(.login-card)) .upload-card p,
body:not(:has(.login-card)) .report-card p,
body:not(:has(.login-card)) .card p,
body:not(:has(.login-card)) .setup-card p,
body:not(:has(.login-card)) .info-card p,
body:not(:has(.login-card)) .info-card li,
body:not(:has(.login-card)) .form-card p,
body:not(:has(.login-card)) .result-card p,
body:not(:has(.login-card)) .note {
  color: #263f52 !important;
  font-size: clamp(15.5px, 1vw, 17px) !important;
  line-height: 1.72 !important;
}

body:not(:has(.login-card)) label,
body:not(:has(.login-card)) .field-label,
body:not(:has(.login-card)) .section-label {
  color: #08283f !important;
}

body:not(:has(.login-card)) input,
body:not(:has(.login-card)) textarea,
body:not(:has(.login-card)) select {
  color: #08283f !important;
  background: rgba(255, 255, 255, .98) !important;
  border-color: rgba(3, 52, 84, .22) !important;
}

body:not(:has(.login-card)) input::placeholder,
body:not(:has(.login-card)) textarea::placeholder {
  color: #6d8190 !important;
  opacity: 1 !important;
}

body:not(:has(.login-card)) .muted,
body:not(:has(.login-card)) small,
body:not(:has(.login-card)) .hint,
body:not(:has(.login-card)) .subtle {
  color: #5c7181 !important;
}

body:not(:has(.login-card)) .hero .muted,
body:not(:has(.login-card)) .intro .muted,
body:not(:has(.login-card)) .side-hero .muted,
body:not(:has(.login-card)) header small {
  color: rgba(244, 251, 255, .72) !important;
}

body:not(:has(.login-card)) .academy-note {
  border: 1px solid rgba(190, 228, 255, .24) !important;
  border-radius: 14px !important;
  background:
    radial-gradient(circle at 88% 20%, rgba(94, 196, 90, .16), transparent 34%),
    linear-gradient(135deg, rgba(3, 31, 54, .96), rgba(4, 47, 74, .92)) !important;
  box-shadow: 0 24px 72px rgba(0, 10, 20, .30), inset 0 0 0 1px rgba(255, 255, 255, .035) !important;
}

body:not(:has(.login-card)) .academy-note strong {
  color: #f8fcff !important;
  font-size: clamp(24px, 1.9vw, 30px) !important;
  line-height: 1.18 !important;
}

body:not(:has(.login-card)) .academy-note p {
  color: rgba(244, 251, 255, .84) !important;
  font-size: clamp(16px, 1vw, 18px) !important;
  line-height: 1.7 !important;
  max-width: 1120px;
}

body:not(:has(.login-card)) .academy-note .btn,
body:not(:has(.login-card)) .academy-note .btn.dark {
  border-color: rgba(94, 196, 90, .52) !important;
  background: linear-gradient(135deg, #5ec45a, #3f9639) !important;
  color: #fff !important;
  box-shadow: 0 18px 42px rgba(76, 155, 68, .24) !important;
}

body:has(.chat-shell) .bubble {
  color: #08283f !important;
  font-weight: 700 !important;
  text-shadow: none !important;
}

body:has(.chat-shell) .bubble small {
  color: #0b3858 !important;
  font-weight: 900 !important;
}

body:has(.chat-shell) .bubble.client {
  background: #ebfaef !important;
  border-color: #bde3c1 !important;
}

body:has(.chat-shell) .bubble.seller {
  background: #eaf3ff !important;
  border-color: #bdd3ea !important;
}

body:has(.chat-shell) .bubble.system {
  background: #fff2cc !important;
  border-color: #e8cb73 !important;
}

/* Usinas roteiro: generated report must stay readable over the executive theme */
body:has(#scriptForm) .result {
  color: #08283f !important;
}

body:has(#scriptForm) .result-hero {
  background:
    linear-gradient(145deg, rgba(255, 255, 255, .98), rgba(232, 244, 239, .96)) !important;
  border: 1px solid rgba(3, 52, 84, .18) !important;
  box-shadow: 0 26px 78px rgba(0, 12, 24, .22) !important;
  color: #08283f !important;
}

body:has(#scriptForm) .result-hero h2,
body:has(#scriptForm) .result-hero p,
body:has(#scriptForm) .result-hero strong {
  color: #08283f !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

body:has(#scriptForm) .result-hero p {
  color: #263f52 !important;
  font-size: clamp(16px, 1.1vw, 18px) !important;
  font-weight: 700 !important;
  line-height: 1.72 !important;
}

body:has(#scriptForm) .score-ring {
  background: #fefefe !important;
  color: #033454 !important;
  box-shadow: 0 18px 48px rgba(76, 155, 68, .22) !important;
  text-shadow: none !important;
}

body:has(#scriptForm) .result-grid .card,
body:has(#scriptForm) .flow-step,
body:has(#scriptForm) .metric {
  background: rgba(255, 255, 255, .98) !important;
  border-color: rgba(3, 52, 84, .17) !important;
  color: #08283f !important;
  text-shadow: none !important;
}

body:has(#scriptForm) .result-grid .card h3,
body:has(#scriptForm) .flow-top strong,
body:has(#scriptForm) .metric strong,
body:has(#scriptForm) .copy-panel strong {
  color: #08283f !important;
  opacity: 1 !important;
}

body:has(#scriptForm) .result-grid .card p,
body:has(#scriptForm) .result-grid .card li,
body:has(#scriptForm) .flow-top small,
body:has(#scriptForm) .flow-body,
body:has(#scriptForm) .cue,
body:has(#scriptForm) .quote,
body:has(#scriptForm) .metric span {
  color: #263f52 !important;
  opacity: 1 !important;
}

body:has(#scriptForm) .metric strong {
  display: block;
  font-size: 15px !important;
  line-height: 1.55 !important;
}

@media (max-width: 760px) {
  header .brand img,
  .executive-brand img {
    width: min(220px, 76vw) !important;
  }

  body:not(:has(.login-card)) header .brand {
    min-width: 0 !important;
  }

  body:not(:has(.login-card)) .brand-title {
    padding-left: 12px !important;
  }
}
