/* Reset */
* {
  margin: 0;
  padding: 0;
  border: 0;
  box-sizing: border-box;
  font-family: var(--textFont, "Nunito", Helvetica, sans-serif) !important;
}

h1, h2, h3, h4 {
  font-family: var(--headingFont, "Nunito", Helvetica, sans-serif) !important;
  font-weight: bold;
}

html, body {
  margin: 0;
  padding: 0;
  width: 100%;
  min-width: 600px;
  color: #0d0d0d;
  font-size: 11px;
  line-height: 140%;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  background: #fff;
}

@media print {
  html, body {
    min-width: 0;
    width: 100%;
  }
  * {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
  #g12 {
    filter: none !important;
    pointer-events: auto !important;
    user-select: auto !important;
    -webkit-user-select: auto !important;
  }
}

:root {
  --white: #ffffff;
  --grey80: #f8f8f6;
  --grey100: #f0f0ed;
  --grey400: #7c7c79;
  --grey600: #50514d;
  --grey900: #0d0d0d;
  --bahia50: #fafbf2;
  --bahia100: #edf1cf;
  --bahia300: #9fb755;
  --bahia400: #9fb755;
  --salmon600: #ff7e6d;
  --orange200: #ffc569;
  --orange400: #ae8749;
  --coral100: #ffe7e0;
  --red900: #bb574a;
}

strong { font-weight: bold; }

.x-cn {
  padding: 0 40px;
  position: relative;
  width: 100%;
}

hr {
  border: 1px solid #f0f0ed;
  margin: 16px 0;
}

/* Header */
.x-hd {
  display: flex;
  padding: 20px 40px 0;
  flex-direction: column;
  align-items: center;
  margin-bottom: 16px;
}

.x-hd.x-cfp {
  border-radius: 0 0 12px 12px;
  background: var(--bahia400);
  padding: 40px 40px 24px;
  margin-bottom: 0;
  box-shadow: 0 0 0 5px white;
}

.x-hdc {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

.x-ht {
  font-weight: 700;
  line-height: 130%;
  font-size: 14px;
  color: var(--grey400);
  display: flex;
  align-items: center;
}

.x-hd.x-cfp .x-ht {
  color: var(--white);
  font-size: 24px;
}

.x-hl.x-lf {
  filter: brightness(0) invert(1);
  width: 120px;
  height: auto;
  max-height: 60px;
  display: block;
  object-fit: contain;
}

/* Details */
.x-dt {
  display: flex;
  padding: 16px 0;
  justify-content: space-between;
  align-items: center;
}

.x-dco {
  display: flex;
  align-items: center;
  gap: 24px;
}

.x-db {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1px;
}

.x-dc {
  align-self: stretch;
  color: var(--grey400);
  font-weight: 700;
  font-size: 10px;
}

.x-dv {
  align-self: stretch;
  color: var(--grey400);
  font-size: 10px;
}

/* Chapter */
.x-ct {
  color: var(--grey900);
  font-size: 16px;
  font-weight: 700;
  line-height: 130%;
  border-radius: 8px;
  background: var(--bahia50);
  padding: 10px 20px;
  margin: 20px -20px 16px;
}

/* Disease section */
.x-ds {
  display: flex;
  margin-bottom: 16px;
  justify-content: center;
  gap: 80px;
}

.x-dsd {
  display: flex;
  flex-direction: column;
  gap: 12px;
  flex: 1 0 0;
}

.x-dst {
  display: inline-flex;
  padding: 5px 16px;
  align-items: center;
  border-radius: 20px;
  background: var(--bahia100);
  color: var(--grey900);
  font-size: 13px;
  font-weight: 700;
  line-height: 140%;
  align-self: flex-start;
}

.x-dst.x-dsa {
  background: var(--coral100);
}

.x-dse {
  color: var(--grey900);
  font-size: 11px;
  line-height: 140%;
}

.x-dse span {
  display: block;
  margin-top: 5px;
}

.x-dsc {
  width: 173px;
  flex-shrink: 0;
}

/* Traffic light */
.x-tl {
  width: 173px;
  position: relative;
  margin-top: 13px;
}

.x-tg {
  color: var(--grey400);
  font-size: 7px;
  line-height: 100%;
  display: flex;
  justify-content: space-between;
}

.x-tg span {
  background: white;
  z-index: 1;
}

.x-tm {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: absolute;
  margin-top: -15px;
  width: 100px;
}

.x-ti {
  height: 28px;
  width: 9.5px;
  margin-bottom: 3px;
}

.x-tv {
  color: var(--bahia400);
  text-align: center;
  font-size: 16px;
  font-weight: 700;
  line-height: 105%;
}

.x-te {
  color: var(--grey400);
  font-size: 7px;
  font-weight: 700;
  line-height: 100%;
}

.x-tm .x-ti circle {
  fill: var(--salmon600);
}

.x-tm .x-ti line {
  stroke: var(--salmon600);
}

.x-tm.x-ma .x-tv {
  color: var(--red900);
}

.x-tr {
  position: relative;
  border: 1px solid var(--grey400);
  border-bottom: none;
  height: 5px;
  border-radius: 5px 5px 0 0;
  margin-bottom: 1px;
}

.x-tr:before {
  content: "";
  position: absolute;
  top: -4px;
  left: calc(50% - 1px);
  width: 1px;
  height: 4px;
  background-color: var(--grey400);
}

.x-ta {
  position: absolute;
  color: var(--grey400);
  font-size: 6px;
  font-weight: 700;
  line-height: 100%;
  top: 0;
}

.x-tf {
  position: relative;
  padding-top: 10px;
}

.x-cc.x-ctl .x-tl {
  min-height: 70px;
}

/* Facts */
.x-ft {
  border-radius: 8px;
  background: #f8f8f6;
  padding: 12px 20px;
  margin: 0 -20px 12px;
}

.x-ft p {
  margin-bottom: 10px;
}

.x-ft p:last-child {
  margin-bottom: 0;
}

.x-fh img {
  margin-right: 5px;
  margin-bottom: -2px;
}

.x-fh strong {
  line-height: 12px;
  font-size: 11px;
}

/* PDF B2B footer box — hidden on screen, visible in print */
.x-b2b {
  display: none;
}

@media print {
  .x-b2b {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    margin: 32px 0 0;
    padding: 20px 24px;
    border-radius: 10px;
    background: #f5f7e5;
    border: 1px solid #dde5b4;
    page-break-inside: avoid;
  }
  .x-b2b-lock {
    width: 20px;
    height: 20px;
    stroke: rgb(52,61,32);
    flex-shrink: 0;
    margin-top: 2px;
  }
  .x-b2b-body {
    display: flex;
    flex-direction: column;
    gap: 6px;
  }
  .x-b2b-title {
    font-family: var(--headingFont, "Nunito", sans-serif);
    font-size: 14px;
    font-weight: 700;
    color: rgb(52,61,32);
  }
  .x-b2b-desc {
    font-size: 11px;
    color: rgb(80,81,77);
    line-height: 1.5;
  }
  .x-b2b-btn {
    display: inline-block;
    margin-top: 4px;
    font-size: 12px;
    font-weight: 700;
    color: rgb(82,96,51);
    text-decoration: none;
    letter-spacing: 0.5px;
  }
}
