/* Quiz popup shell follows the accepted Calendar V7.47 Settings reference. */
#teamTalkQuizBody {
  color: #071a3d;
  font-size: 17px;
  line-height: 1.55;
}
#teamTalkQuizBody *, #teamTalkQuizBody *::before, #teamTalkQuizBody *::after { box-sizing: border-box; }
#teamTalkQuizBody .ttq-start { padding: 6px 0 2px; text-align: center; }
#teamTalkQuizBody .ttq-question, #teamTalkQuizBody .ttq-result { max-width: 760px; margin: 0 auto; }
#teamTalkQuizBody .ttq-email-entry { display: grid; gap: 14px; max-width: 420px; margin: 0 auto; padding: 6px 0; }
#teamTalkQuizBody .ttq-email-entry label { color: #071a3d; font-size: 17px; font-weight: 750; }
#teamTalkQuizBody .ttq-email-entry input { width: 100%; min-width: 0; min-height: 48px; padding: 11px 13px; border: 1px solid #a8b8cc; border-radius: 9px; background: #fff; color: #071a3d; font: inherit; font-size: 17px; }
#teamTalkQuizBody .ttq-email-entry input:focus-visible { outline: 2px solid #78b4d6; outline-offset: 2px; }
#teamTalkQuizBody .ttq-email-entry .ttq-button { justify-self: center; margin-top: 4px; }
#teamTalkQuizBody .ttq-question, #teamTalkQuizBody .ttq-result,
#teamTalkQuizBody [tabindex="-1"] {
  scroll-margin-top: 12px;
}
#teamTalkQuizBody .ttq-progress-row { display: flex; gap: 12px; align-items: baseline; justify-content: space-between; }
#teamTalkQuizBody .ttq-progress-label, #teamTalkQuizBody .ttq-progress-count { margin: 0; font-size: 14px; white-space: nowrap; }
#teamTalkQuizBody .ttq-progress-label { color: #061838; font-weight: 800; }
#teamTalkQuizBody .ttq-progress-count { color: #53657d; }
#teamTalkQuizBody .ttq-progress { height: 5px; margin: 9px 0 20px; border-radius: 3px; background: #e2e8f0; overflow: hidden; }
#teamTalkQuizBody .ttq-progress > span { display: block; height: 100%; background: #ffc52f; }
#teamTalkQuizBody .ttq-question-title { margin: 0 0 20px; color: #071a3d; font-size: clamp(19px, 2.4vw, 24px); line-height: 1.4; font-weight: 750; letter-spacing: 0; text-transform: none; }
#teamTalkQuizBody .ttq-options { display: grid; gap: 10px; min-width: 0; margin: 0; padding: 0; border: 0; }
#teamTalkQuizBody .ttq-option { position: relative; display: grid; grid-template-columns: 30px minmax(0, 1fr); gap: 12px; align-items: start; margin: 0; padding: 13px 15px; border: 1px solid #d5deea; border-radius: 14px; color: #071a3d; background: #fff; font-size: 17px; line-height: 1.5; cursor: pointer; }
#teamTalkQuizBody .ttq-option input { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
#teamTalkQuizBody .ttq-option:focus-within { outline: 3px solid #78b4d6; outline-offset: 3px; }
#teamTalkQuizBody .ttq-option-letter { display: inline-flex; width: 29px; height: 29px; align-items: center; justify-content: center; border: 1px solid #bbc9da; border-radius: 6px; color: #061838; font-size: 14px; font-weight: 800; }
#teamTalkQuizBody .ttq-option-content { display: flex; min-width: 0; flex-direction: column; gap: 4px; }
#teamTalkQuizBody .ttq-option-selected { border-color: #ffc52f; box-shadow: inset 0 0 0 1px #ffc52f; background: #fff7dd; }
#teamTalkQuizBody .ttq-option-selected .ttq-option-letter { background: #ffc52f; border-color: #ffc52f; color: #07172d; }
#teamTalkQuizBody .ttq-option:has(input:disabled) { cursor: default; }
#teamTalkQuizBody .ttq-option-correct { border-color: #3b9467; background: #eef8f1; }
#teamTalkQuizBody .ttq-option-wrong { border-color: #bc535a; background: #fff0f1; }
#teamTalkQuizBody .ttq-option-result { color: #17633d; font-size: 13px; font-weight: 800; }
#teamTalkQuizBody .ttq-option-wrong .ttq-option-result { color: #942e38; }
#teamTalkQuizBody .ttq-feedback { margin-top: 18px; padding: 15px 17px; border-left: 3px solid #78b4d6; border-radius: 0 8px 8px 0; background: #fff; color: #071a3d; }
#teamTalkQuizBody .ttq-feedback p { margin: 0; font-size: 16px; line-height: 1.6; }
#teamTalkQuizBody .ttq-feedback .ttq-feedback-label { margin-bottom: 5px; color: #061838; font-weight: 800; }
#teamTalkQuizBody .ttq-feedback strong { color: #071a3d; }
#teamTalkQuizBody .ttq-nav { display: flex; justify-content: space-between; gap: 14px; margin-top: 20px; }
#teamTalkQuizBody .ttq-button { appearance: none; display: inline-flex; align-items: center; justify-content: center; gap: 6px; min-height: 46px; max-width: 100%; margin: 0; padding: 11px 19px; border: 1px solid #769fc6; border-radius: 9px; background: #fff; color: #061838; font: inherit; font-size: 16px; line-height: 1.2; font-weight: 800; text-align: center; text-decoration: none; white-space: nowrap; cursor: pointer; }
#teamTalkQuizBody .ttq-button-primary { border-color: #ffc52f; background: #ffc52f; color: #07172d; }
#teamTalkQuizBody .ttq-button:disabled { opacity: 0.42; cursor: default; }
#teamTalkQuizBody .ttq-button:focus-visible { outline: 3px solid #78b4d6; outline-offset: 4px; }
#teamTalkQuizBody .ttq-result { text-align: center; }
#teamTalkQuizBody .ttq-result-heading { margin: 0; color: #315c77; font-size: 19px; line-height: 1.3; font-weight: 800; text-transform: none; letter-spacing: 0; }
#teamTalkQuizBody .ttq-score { margin: 8px 0 12px; color: #061838; font-size: 64px; line-height: 1.2; font-weight: 850; }
#teamTalkQuizBody .ttq-score span { color: #53657d; font-size: 30px; font-weight: 600; }
#teamTalkQuizBody .ttq-result-title { margin: 0 0 9px; color: #071a3d; font-size: 23px; line-height: 1.35; font-weight: 800; }
#teamTalkQuizBody .ttq-result-message { margin: 0; color: #31455f; font-size: 17px; }
#teamTalkQuizBody .ttq-save-status { margin: 19px 0; color: #53657d; font-size: 14px; }
@media (hover: hover) {
  #teamTalkQuizBody .ttq-option:not(:has(input:disabled)):hover { border-color: #ffc52f; }
  #teamTalkQuizBody .ttq-button:not(:disabled):hover { filter: brightness(1.08); }
}
@media (max-width: 480px) {
  #teamTalkQuizBody .ttq-option { grid-template-columns: 27px minmax(0, 1fr); gap: 9px; padding: 12px 11px; font-size: 16px; }
  #teamTalkQuizBody .ttq-option-letter { width: 26px; height: 27px; }
  #teamTalkQuizBody .ttq-question-title { margin-bottom: 16px; }
  #teamTalkQuizBody .ttq-progress-count, #teamTalkQuizBody .ttq-progress-label { font-size: 13px; }
  #teamTalkQuizBody .ttq-nav { gap: 10px; }
  #teamTalkQuizBody .ttq-button { padding: 11px 15px; }
  #teamTalkQuizBody .ttq-feedback { padding: 12px 13px; }
}

html.ttq-modal-open, html.ttq-modal-open body { overflow: hidden; }
.quiz-launcher { text-align: center; }
.quiz-launcher .btn { min-height: 46px; }
.ttq-dialog {
  position: fixed; inset: 0; margin: auto; padding: 0;
  width: min(620px, calc(100% - 24px)); max-width: none;
  max-height: calc(100vh - 24px);
  max-height: calc(100dvh - max(24px, env(safe-area-inset-top) + env(safe-area-inset-bottom)));
  overflow: hidden; border: 2px solid #ffc52f; border-radius: 16px;
  background: #fff; color: #071a3d; box-shadow: 0 24px 60px #00000057, 0 0 0 1px #ffc52f33;
}
.ttq-dialog[open] { display: flex; flex-direction: column; }
.ttq-dialog::backdrop { background: #0618388f; backdrop-filter: blur(12px) saturate(120%); -webkit-backdrop-filter: blur(12px) saturate(120%); }
.ttq-dialog-header { display: flex; flex-shrink: 0; align-items: center; justify-content: space-between; gap: 12px; min-height: 62px; padding: 8px 10px 8px 16px; background: #061838; border-bottom: 1.5px solid #ffc52f; }
.ttq-dialog-header .ttq-dialog-kicker { margin: 0 0 2px; color: #ffc52f; font: 600 10px/1.2 Oswald, 'Arial Narrow', sans-serif; letter-spacing: .1em; text-transform: uppercase; }
.ttq-dialog-header h2 { margin: 0; color: #fff; font: 700 24px/1.2 Oswald, 'Arial Narrow', sans-serif; letter-spacing: .025em; text-transform: uppercase; }
.ttq-dialog-close { display: grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px; padding: 0 0 3px; border: 1px solid #8aa2bd; border-radius: 50%; background: #122f55; color: #fff; font: 300 32px/1 system-ui; cursor: pointer; }
.ttq-dialog-close:focus-visible { outline: 3px solid #ffc52f; outline-offset: 2px; }
.ttq-dialog-body { padding: 18px; min-height: 0; overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; scrollbar-gutter: stable; }
#teamTalkQuizBody .ttq-option { box-shadow: 0 2px 6px #0618380f; }
#teamTalkQuizBody .ttq-option-selected { box-shadow: inset 0 0 0 1px #ffc52f; }
#teamTalkQuizBody .ttq-nav { position: sticky; bottom: -18px; margin-bottom: -18px; padding: 12px 0 18px; background: #fff; border-top: 1px solid #e2e8f0; }
#teamTalkQuizBody .ttq-feedback { background: #f3f7fb; }
@media (max-width: 720px) { .ttq-dialog { width: min(420px, calc(100% - 24px)); } }
@media (max-width: 360px) {
  .ttq-dialog-body { padding: 14px; }
  #teamTalkQuizBody .ttq-question-title { font-size: 18px; }
  #teamTalkQuizBody .ttq-nav { bottom: -14px; margin-bottom: -14px; padding-bottom: 14px; }
}

/* Keep the accepted popup shell; distinguish the question surface from answers. */
.ttq-dialog,.ttq-dialog-body,#teamTalkQuizBody .ttq-nav{background:#EDF3F8}
#teamTalkQuizBody [tabindex="-1"]:focus{outline:none;box-shadow:none}
#teamTalkQuizBody .ttq-feedback{background:#FFF;border-left-color:#FFC52F}
#teamTalkQuizBody .ttq-option{border-color:#C6D3E1}

/* Phone quiz: readable text with less vertical bulk inside the accepted popup. */
@media(max-width:600px){
 .ttq-dialog-header h2{font-size:22px}
 #teamTalkQuizBody .ttq-question-title{font-size:16px;line-height:1.4;margin-bottom:12px}
 #teamTalkQuizBody .ttq-options{gap:8px}
 #teamTalkQuizBody .ttq-option{font-size:15px;line-height:1.4;padding:10px;gap:8px;min-height:48px;border-radius:10px}
 #teamTalkQuizBody .ttq-feedback{margin-top:12px;padding:10px 12px}
 #teamTalkQuizBody .ttq-feedback p{font-size:15px;line-height:1.5}
 #teamTalkQuizBody .ttq-result-title{font-size:19px}
 #teamTalkQuizBody .ttq-result-message{font-size:15px}
}
