/* Small, tap-friendly definitions without introducing more disclaimer boxes. */
.lc-term-button {
  display: inline;
  vertical-align: baseline;
  appearance: none;
  border: 0;
  border-bottom: 1px dotted #31708c;
  border-radius: 0;
  background: transparent;
  padding: 0 0 1px;
  margin: 0;
  color: inherit;
  font: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: inherit;
  text-align: inherit;
  cursor: help;
  box-shadow: none;
  min-width: 0;
  min-height: 0;
  text-decoration: none;
}
.lc-term-button:hover { color: #075476; border-bottom-style: solid; }
.lc-term-button:focus-visible { outline: 3px solid #278cb2; outline-offset: 3px; border-radius: 3px; }
.lc-term-question {
  display: inline-flex;
  width: 15px;
  height: 15px;
  margin-left: 3px;
  border-radius: 50%;
  align-items: center;
  justify-content: center;
  vertical-align: .1em;
  color: #2c627b;
  background: #e9f2f6;
  font: 700 11px/1 system-ui, sans-serif;
}
.lc-term-dialog {
  position: fixed;
  inset: auto 12px max(12px, env(safe-area-inset-bottom)) 12px;
  margin: auto;
  width: min(460px, calc(100% - 24px));
  max-width: 460px;
  max-height: min(80vh, 550px);
  padding: 0;
  border: 1px solid #c9d7df;
  border-radius: 16px;
  background: #fff;
  color: #173448;
  box-shadow: 0 16px 64px #001b2d46;
  overflow: auto;
  z-index: 2147480000;
}
.lc-term-dialog::backdrop { background: rgba(14, 34, 47, .52); }
.lc-term-dialog-inner { position: relative; padding: 21px 22px 24px; }
.lc-term-dialog h2 {
  margin: 0 72px 12px 0;
  color: #143b50;
  font: 750 clamp(1.12rem, 3vw, 1.35rem)/1.25 system-ui, sans-serif;
}
.lc-term-dialog .lc-term-explanation {
  margin: 0;
  color: #2b4352;
  font: 400 1rem/1.62 system-ui, sans-serif;
  overflow-wrap: break-word;
}
.lc-term-close {
  position: absolute;
  right: 14px;
  top: 14px;
  min-height: 40px;
  padding: 7px 10px;
  border: 1px solid #cad8e0;
  border-radius: 9px;
  color: #1e4a60;
  background: #f4f8fa;
  font: 650 .84rem/1.1 system-ui, sans-serif;
  cursor: pointer;
}
.lc-term-close:hover, .lc-term-close:focus-visible { background: #e6f0f5; outline-offset: 3px; }
@media (min-width: 720px) {
  .lc-term-dialog { inset: 50% auto auto 50%; transform: translate(-50%, -50%); }
}

/* Nunavut verification: clear, compact, and expandable if the reader wants detail. */
.lc-nu-check {
  margin: 18px 0 23px;
  border: 1px solid #d2dce1;
  border-radius: 11px;
  background: #f6f9fa;
  color: #244253;
  overflow: hidden;
}
.lc-nu-check summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 13px 15px;
  cursor: pointer;
  list-style: none;
  font-size: .93rem;
  line-height: 1.45;
}
.lc-nu-check summary::-webkit-details-marker { display: none; }
.lc-nu-check summary::marker { content: ''; }
.lc-nu-check strong { font-weight: 700; color: #244253; }
.lc-nu-check .lc-nu-why { color: #135d7d; font-weight: 650; white-space: nowrap; }
.lc-nu-check[open] .lc-nu-why { text-decoration: underline; }
.lc-nu-check p { padding: 0 15px 15px; margin: 0; color: #465a67; font-size: .9rem; line-height: 1.55; }
.lc-nu-check a { color: #075678; text-underline-offset: 3px; }
.lc-nu-check :focus-visible { outline: 3px solid #308db7; outline-offset: -4px; }

/* Plain-answer cards that replace the old heavy warning-style callouts. */
.lc-direct-answer {
  position: relative;
  margin: 17px 0 23px;
  padding: 17px 18px 17px 20px;
  background: #f1f6f7;
  border: 1px solid #d6e1e4;
  border-left: 4px solid #417f91;
  border-radius: 10px;
  color: #203b4b;
  line-height: 1.6;
}
.lc-direct-answer strong { display: block; margin-bottom: 5px; color: #1d536b; font-size: .82rem; line-height: 1.3; letter-spacing: .01em; }
.lc-direct-answer.lc-answer-caution { background: #fff8ed; border-color: #edddc1; border-left-color: #bd8d48; }
.lc-direct-answer.lc-answer-caution strong { color: #754e20; }
