/* OTOPREP_ORAL_RUNTIME=9.4.0 FEEDBACK_CONTRACT=9 RELIABILITY_CONTRACT=2026-08-20.2 */
/* OtoPrep Written and quiz route stylesheet v4 | generated from otoprep-app.css for Quiz Maker 23.0.96 */
/*
 * OtoPrep App Shell Styles
 *
 * IMPORTANT:
 * - Scoped under body.otoprep-app to avoid leaking to the rest of the site.
 * - Progress/dashboard refinements include Milestone 1 + 2 updates.
 */

body.otoprep-app{
  /* theme tokens */
  --otoprep-blue:#1075BC;
  --otoprep-orange:#E7694B;
  --otoprep-ink:#13202A;
  --otoprep-muted:#5b6b77;
  --otoprep-border:#e6eef5;

  background:#F3F6F9;
  margin:0;
  color:var(--otoprep-ink);
  font-family:system-ui,-apple-system,Segoe UI,Roboto,Inter,Helvetica,Arial,sans-serif;
}

body.otoprep-app a{color:inherit}

body.otoprep-app .otoprep-shell{
  max-width:1100px;
  margin:0 auto;
  padding:14px 14px 90px;
}

body.otoprep-app .otoprep-topbar{
  position:sticky;
  top:0;
  z-index:50;
  /* Match the app hero gradient (Portal / Open OtoPrep app) */
  background:linear-gradient(180deg, rgba(16,117,188,.06), rgba(255,255,255,1));
  border:1px solid #e6eef5;
  border-radius:18px;
  box-shadow:0 10px 30px rgba(16,117,188,.10);
  backdrop-filter:blur(10px);
  padding:calc(10px + env(safe-area-inset-top)) 12px 12px;
}

body.otoprep-app .otoprep-topbar__row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}

body.otoprep-app .otoprep-brand{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:950;
}

body.otoprep-app .otoprep-brand__logo{
  width:36px;
  height:36px;
  object-fit:contain;
  border-radius:12px;
  border:1px solid rgba(16,117,188,.14);
  background:#fff;
}

body.otoprep-app .otoprep-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(16,117,188,.18);
  background:rgba(16,117,188,.08);
  color:#1075BC;
  font-weight:850;
  font-size:13px;
}

/* Trial header: keep trial remaining + upgrade CTA visually grouped */
body.otoprep-app .otoprep-trialbar{
  display:inline-flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

/* Upgrade CTA pill (trial users) */
body.otoprep-app .otoprep-pill--upgrade{
  gap:6px;
  background:rgba(231,105,75,.12);
  border-color:rgba(231,105,75,.28);
  color:var(--otoprep-orange);
  text-decoration:none;
}
body.otoprep-app .otoprep-pill--upgrade:hover{
  background:rgba(231,105,75,.16);
}
body.otoprep-app .otoprep-pill--upgrade:focus{
  outline:2px solid rgba(231,105,75,.55);
  outline-offset:2px;
}

body.otoprep-app .otoprep-upgrade__label{font-weight:950;}
body.otoprep-app .otoprep-upgrade__sep{opacity:.85;}
body.otoprep-app .otoprep-upgrade__meta{font-weight:850;}
body.otoprep-app .otoprep-upgrade__meta--short{display:none;}

@media (max-width: 520px){
  body.otoprep-app .otoprep-upgrade__meta--long{display:none;}
  body.otoprep-app .otoprep-upgrade__meta--short{display:inline;}
}

body.otoprep-app .otoprep-card{
  background:#fff;
  border:1px solid #e6eef5;
  border-radius:18px;
  box-shadow:0 10px 30px rgba(16,117,188,.10);
  padding:16px;
}

/* Watermarked card (used in Results → Question review) */
body.otoprep-app .otoprep-card--watermarked{
  position:relative;
  overflow:hidden;
}
body.otoprep-app .otoprep-card--watermarked .otoprep-watermark{
  position:absolute;
  inset:0;
  background-repeat:repeat;
  background-size:320px 200px;
  background-position:0 0;
  opacity:.08;
  pointer-events:none;
  user-select:none;
  mix-blend-mode:multiply;
  z-index:2;
}
body.otoprep-app .otoprep-card--watermarked .otoprep-watermark__content{
  position:relative;
  z-index:1;
}

/* Per-question watermark stamp (used in Results → Question review) */
body.otoprep-app .otoprep-qreview-body{
  position:relative;
  overflow:hidden;
}
body.otoprep-app .otoprep-qreview-stamp{
  position:absolute;
  pointer-events:none;
  user-select:none;
  z-index:2;
  opacity:.12;
  mix-blend-mode:multiply;
}
body.otoprep-app .otoprep-qreview-body > *:not(.otoprep-qreview-stamp){
  position:relative;
  z-index:1;
}

/* Utility: card with no internal padding (used for iframe portals) */
body.otoprep-app .otoprep-card--flush{padding:0;}

/* In-app embedded portal (iframe) */
body.otoprep-app .otoprep-iframeWrap{
  overflow:hidden;
  border-radius:18px;
  border:1px solid var(--otoprep-border);
  background:#fff;
}
body.otoprep-app .otoprep-iframe{
  width:100%;
  height:620px; /* JS may resize this for billing portals */
  border:0;
  display:block;
  background:#fff;
}

/*
 * NOTE (M23): We use two distinct grid systems.
 * - .otoprep-grid   : responsive card grid (Practice/Review etc)
 * - .otoprep-grid12 : 12-column layout grid (Progress analytics)
 *
 * Previously both used the same .otoprep-grid class which caused “squeezed”
 * cards on mobile (Practice/Review inheriting the 12-col layout).
 */
body.otoprep-app .otoprep-grid12{
  display:grid;
  grid-template-columns:repeat(12, 1fr);
  gap:12px;
}

body.otoprep-app .otoprep-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
}

@media (min-width: 720px){
  body.otoprep-app .otoprep-grid{grid-template-columns:repeat(2, 1fr);} 
}

@media (min-width: 980px){
  body.otoprep-app .otoprep-grid{grid-template-columns:repeat(3, 1fr);} 
}

body.otoprep-app .otoprep-col-12{grid-column:span 12;}
body.otoprep-app .otoprep-col-6{grid-column:span 6;}

body.otoprep-app .otoprep-h1{font-size:24px;margin:10px 0 6px;}
body.otoprep-app .otoprep-muted{color:#5b6b77;font-size:13px;}

body.otoprep-app .otoprep-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:10px;}
body.otoprep-app .otoprep-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 14px;
  border-radius:12px;
  background:#1075BC;
  color:#fff;
  text-decoration:none;
  font-weight:900;
  border:none;
  cursor:pointer;
}
body.otoprep-app .otoprep-btn--ghost{
  background:rgba(16,117,188,.10);
  color:#1075BC;
  border:1px solid rgba(16,117,188,.20);
}

body.otoprep-app .otoprep-btn--primary{
  background: var(--otoprep-blue);
  color: #fff;
  border: 2px solid transparent;
}

body.otoprep-app .otoprep-btn--outline{
  background: #fff;
  color: var(--otoprep-blue);
  border: 2px solid var(--otoprep-blue);
}

body.otoprep-app .otoprep-btn--outline:hover{
  background: rgba(16,117,188,.06);
}

/* Bottom tabs */
body.otoprep-app .otoprep-tabs{
  position:fixed;
  left:0;
  right:0;
  bottom:0;
  z-index:100;
  background:#fff;
  border-top:1px solid #e6eef5;
  padding:8px 10px calc(8px + env(safe-area-inset-bottom));
}
body.otoprep-app .otoprep-tabs__inner{
  max-width:1100px;
  margin:0 auto;
  display:flex;
  gap:10px;
}
body.otoprep-app .otoprep-tab{
  flex:1 1 0;
  text-align:center;
  padding:8px 6px;
  border-radius:12px;
  text-decoration:none;
  font-weight:800;
  color:#5b6b77;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:4px;
  min-height:52px;
}
body.otoprep-app .otoprep-tab__icon{
  display:inline-flex;
  line-height:0;
}
body.otoprep-app .otoprep-tab__icon svg{
  width:22px;
  height:22px;
}
body.otoprep-app .otoprep-tab__label{
  font-size:12px;
  line-height:1.1;
  letter-spacing:.2px;
}
body.otoprep-app .otoprep-tab.is-active{
  background:rgba(16,117,188,.10);
  color:#1075BC;
}


/* AI Coach meta line */
body.otoprep-app .otoprep-ai-meta{
  margin:0 0 10px;
  color:#6b7a86;
  font-size:12px;
}
/* Embed mode */
body.otoprep-app.otoprep-embed .otoprep-tabs,
body.otoprep-app.otoprep-embed .otoprep-topbar{display:none;}
body.otoprep-app.otoprep-embed .otoprep-shell{padding-bottom:14px;}

/* Quiz mode (full-screen task): hide bottom tabs to avoid covering quiz navigation */
body.otoprep-app.otoprep-view-quiz .otoprep-tabs{display:none;}
body.otoprep-app.otoprep-view-quiz .otoprep-shell{padding-top:0; padding-bottom:14px;}

/* Question session theme variables (configurable in wp-admin → OtoPrep App Mode) */
body.otoprep-app.otoprep-view-quiz{
  --otoprep-qs-primary: var(--otoprep-blue);
  --otoprep-qs-primary-contrast: #ffffff;
  --otoprep-qs-accent: var(--otoprep-orange);
  --otoprep-qs-accent-contrast: #ffffff;

  --otoprep-qs-controls-bg: rgba(243,246,249,.92);
  --otoprep-qs-controls-border: rgba(16,117,188,.14);

  /* Bottom nav buttons */
  --otoprep-qs-btn-bg: var(--otoprep-qs-primary);
  --otoprep-qs-btn-text: var(--otoprep-qs-primary-contrast);
  --otoprep-qs-btn-border: rgba(16,117,188,.35);

  --otoprep-qs-finish-bg: var(--otoprep-qs-accent);
  --otoprep-qs-finish-text: var(--otoprep-qs-accent-contrast);
  --otoprep-qs-finish-border: rgba(231,105,75,.45);

  /* Question navigation (number grid) */
  --otoprep-qs-qnav-bg: #ffffff;
  --otoprep-qs-qnav-text: var(--otoprep-ink);
  --otoprep-qs-qnav-border: rgba(0,0,0,.14);

  --otoprep-qs-qnav-active-bg: rgba(16,117,188,.10);
  --otoprep-qs-qnav-active-text: var(--otoprep-qs-primary);
  --otoprep-qs-qnav-active-border: rgba(16,117,188,.28);

  --otoprep-qs-qnav-answered-bg: #F5F5F5;
  --otoprep-qs-qnav-answered-text: #6B7280;
  --otoprep-qs-qnav-answered-border: rgba(0,0,0,.10);

  --otoprep-qs-qnav-correct-bg: rgba(39,174,96,0.40);
  --otoprep-qs-qnav-correct-text: var(--otoprep-ink);
  --otoprep-qs-qnav-wrong-bg: rgba(243,134,129,0.40);
  --otoprep-qs-qnav-wrong-text: var(--otoprep-ink);
}

/* Quiz mode: keep the branded top bar visible (and re-layout it for quiz controls) */
body.otoprep-app.otoprep-view-quiz .otoprep-topbar{display:block;}
body.otoprep-app.otoprep-view-quiz .otoprep-topbar--quiz{margin-bottom:10px;}

body.otoprep-app.otoprep-view-quiz .otoprep-topbar__row--quiz{
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:10px;
}

body.otoprep-app.otoprep-view-quiz .otoprep-brand--quiz{font-weight:900;}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__left{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__back{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid rgba(16,117,188,.18);
  background:rgba(16,117,188,.08);
  color:var(--otoprep-qs-primary, var(--otoprep-blue));
  font-weight:900;
  font-size:13px;
  text-decoration:none;
  white-space:nowrap;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__mid{min-width:0;}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__title{font-weight:950; font-size:14px; line-height:1.2; white-space:nowrap; overflow:hidden; text-overflow:ellipsis;}
body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__sub{font-size:12px; color:var(--otoprep-muted); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; margin-top:2px;}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__bar{height:4px; background:rgba(16,117,188,.12); border-radius:999px; overflow:hidden; margin-top:6px;}
body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__barfill{height:100%; background:var(--otoprep-qs-primary, var(--otoprep-blue)); width:0%;}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__right{display:flex; flex-direction:column; align-items:flex-end; gap:6px;}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__meta{display:flex; align-items:center; gap:8px; flex-wrap:wrap; justify-content:flex-end;}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__progress,
body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__timer{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(16,117,188,.18);
  background:rgba(16,117,188,.08);
  color:var(--otoprep-qs-primary, var(--otoprep-blue));
  font-weight:950;
  font-size:13px;
  line-height:1;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__ai{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(231,105,75,.28);
  background:rgba(231,105,75,.12);
  color:var(--otoprep-qs-accent, var(--otoprep-orange));
  font-weight:950;
  font-size:13px;
  cursor:pointer;
}

/* If both AI Coach and Live Coach buttons are present, add spacing */
body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__ai + .otoprep-quizbar__ai{
  margin-left:8px;
}

/* Live Coach button variant */
body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__ai--live{
  background:var(--otoprep-qs-primary, #1b4dff);
  border-color:var(--otoprep-qs-primary, #1b4dff);
  color:#ffffff;
}
body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__ai--live:hover{
  opacity:0.92;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__timer.is-hidden{display:none;}

/* Docked mark toolbar lives under the timer in the quiz top bar */
body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__marks{display:flex; align-items:center; justify-content:flex-end; gap:8px;}
body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__marks .ays-quiz-questions-nav-bookmark-box{
  position:static !important;
  top:auto !important;
  right:auto !important;
  margin:0 !important;
}

@media (max-width: 720px){
  body.otoprep-app.otoprep-view-quiz .otoprep-topbar__row--quiz{
    grid-template-columns:1fr;
    align-items:stretch;
  }
  body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__right{align-items:flex-start;}
  body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__meta{justify-content:flex-start;}
  body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__marks{justify-content:flex-start;}
  body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box{justify-content:flex-start;}
}

/* Quiz wrapper */
body.otoprep-app .otoprep-quiz-wrap{
  background:#fff;
  border:1px solid #e6eef5;
  border-radius:18px;
  padding:14px;
  box-shadow:0 10px 30px rgba(16,117,188,.10);
}

/* Back row (result views, legacy) */
body.otoprep-app .otoprep-subnav{margin:0 0 10px;}
body.otoprep-app .otoprep-back,
body.otoprep-app .otoprep-subnav__back{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 12px;
  border-radius:12px;
  text-decoration:none;
  color:#1075BC;
  font-weight:950;
  background:rgba(16,117,188,.08);
  border:1px solid rgba(16,117,188,.18);
}
body.otoprep-app .otoprep-back:focus,
body.otoprep-app .otoprep-subnav__back:focus{outline:3px solid rgba(16,117,188,.28); outline-offset:2px;}

/* In-quiz header (Milestone 9): slim sticky controls row */
body.otoprep-app .otoprep-quizhead{
  position:sticky;
  top:0;
  z-index:90;
  background:rgba(243,246,249,.92);
  backdrop-filter:blur(8px);
  padding:10px 0;
  margin:0 0 10px;
  border-bottom:1px solid rgba(0,0,0,.06);
  display:grid;
  grid-template-columns:auto 1fr auto;
  gap:10px;
  align-items:center;
}

body.otoprep-app .otoprep-quizhead__back{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:10px 12px;
  border-radius:12px;
  text-decoration:none;
  color:#1075BC;
  font-weight:950;
  background:rgba(16,117,188,.08);
  border:1px solid rgba(16,117,188,.18);
  white-space:nowrap;
}

body.otoprep-app .otoprep-quizhead__mid{min-width:0;}
body.otoprep-app .otoprep-quizhead__title{
  font-weight:950;
  font-size:14px;
  line-height:1.1;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
body.otoprep-app .otoprep-quizhead__sub{
  margin-top:2px;
  font-size:12px;
  color:var(--otoprep-muted);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

body.otoprep-app .otoprep-quizhead__meta{
  margin-top:4px;
  display:flex;
  align-items:center;
  gap:10px;
}

body.otoprep-app .otoprep-quizhead__progress{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(16,117,188,.08);
  border:1px solid rgba(16,117,188,.18);
  color:#1075BC;
  font-weight:900;
  font-size:12px;
}

body.otoprep-app .otoprep-quizhead__ai{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(16,117,188,.22);
  background:#fff;
  color:#0f172a;
  font-weight:800;
  font-size:12px;
  line-height:1;
  cursor:pointer;
}

body.otoprep-app .otoprep-quizhead__ai:active{
  transform:translateY(1px);
}

body.otoprep-app .otoprep-quizhead__bar{
  margin-top:8px;
  height:6px;
  border-radius:999px;
  background:rgba(0,0,0,.06);
  overflow:hidden;
}
body.otoprep-app .otoprep-quizhead__barfill{
  height:100%;
  width:0%;
  background:rgba(16,117,188,.65);
  border-radius:999px;
  transition:width .12s ease;
}

body.otoprep-app .otoprep-quizhead__right{display:flex;justify-content:flex-end;}
body.otoprep-app .otoprep-quizhead__timer{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:64px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(0,0,0,.06);
  border:1px solid rgba(0,0,0,.10);
  color:var(--otoprep-ink);
  font-weight:900;
  font-size:12px;
}
body.otoprep-app .otoprep-quizhead__timer.is-hidden{display:none;}

@media (max-width: 520px){
  body.otoprep-app .otoprep-quizhead{
    grid-template-columns:auto 1fr;
  }
  body.otoprep-app .otoprep-quizhead__right{display:none;}
  body.otoprep-app .otoprep-quizhead__title{font-size:13px;}
}

/*
  Quiz timer (App Mode)

  We used to hide the native Quiz Maker timer block and mirror it into the
  sticky in-quiz header.

  Timed Mode now requires a visible countdown inside the quiz container as
  well (especially for mobile layouts where the header timer may be hidden).
*/
body.otoprep-app.otoprep-view-quiz section.ays_quiz_timer_container{
  display:block;
  margin:0 0 12px;
  padding:0;
  border:0;
}

body.otoprep-app.otoprep-view-quiz section.ays_quiz_timer_container hr{
  display:none;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-timer{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:86px;
  padding:8px 12px;
  border-radius:999px;
  background:rgba(0,0,0,.06);
  border:1px solid rgba(0,0,0,.10);
  color:var(--otoprep-ink);
  font-weight:900;
  font-size:12px;
  letter-spacing:.02em;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-after-timer{
  display:none;
}

body.otoprep-app.otoprep-view-quiz.otoprep-has-timer section.ays_quiz_timer_container{
  display:none !important;
}

body.otoprep-app.otoprep-view-quiz.otoprep-has-timer .ays-quiz-container .ays-quiz-timer{
  display:none !important;
}

body.otoprep-app.otoprep-view-quiz.otoprep-has-timer .ays-quiz-container .ays-quiz-after-timer{
  display:none !important;
}

/* Timed mode setup (minutes picker) shown on the quiz start screen */
body.otoprep-app .otoprep-timed-setup{
  margin:14px 0 12px;
  padding:12px;
  border-radius:14px;
  border:1px solid rgba(16,117,188,.18);
  background:rgba(16,117,188,.06);
}
body.otoprep-app .otoprep-timed-setup__title{
  margin:0 0 10px;
  font-weight:900;
  font-size:13px;
  color:var(--otoprep-ink);
}
body.otoprep-app .otoprep-timed-setup__row{
  display:flex;
  align-items:center;
  gap:10px;
}
body.otoprep-app .otoprep-timed-setup__row label{
  font-size:12px;
  font-weight:800;
  color:var(--otoprep-muted);
  margin:0;
}
body.otoprep-app .otoprep-timed-setup__minutes{
  width:92px;
  padding:8px 10px;
  border-radius:12px;
  border:1px solid rgba(0,0,0,.12);
  background:#fff;
  color:var(--otoprep-ink);
  font-weight:900;
}
body.otoprep-app .otoprep-timed-setup__chips{
  margin-top:10px;
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
body.otoprep-app .otoprep-timed-setup__chip{
  border:1px solid rgba(0,0,0,.10);
  background:rgba(255,255,255,.9);
  color:var(--otoprep-ink);
  border-radius:999px;
  padding:6px 10px;
  font-size:12px;
  font-weight:900;
  cursor:pointer;
}
body.otoprep-app .otoprep-timed-setup__chip:active{
  transform:translateY(1px);
}
body.otoprep-app .otoprep-timed-setup__hint{
  margin:10px 0 0;
  font-size:12px;
  color:var(--otoprep-muted);
}

/* AYS Quiz cosmetics (light touch, mostly to avoid “ugly” defaults) */
body.otoprep-app .ays-quiz-container{
  border:none !important;
  background:transparent !important;
  padding:0 !important;
  margin:0 !important;
}

/*
  Fullscreen mode (AYS):
  The fullscreen API promotes .ays-quiz-container to the fullscreen root.
  In the app we normally keep this container transparent because it sits inside
  our white “card” wrapper.

  In fullscreen there is no underlying card, so a transparent background causes
  iOS/WKWebView (and some browsers) to show a black backdrop, making the quiz
  text/options look “missing” or unreadable (low contrast).
*/
body.otoprep-app .ays-quiz-container:fullscreen,
body.otoprep-app .ays-quiz-container:-webkit-full-screen,
body.otoprep-app .ays-quiz-container:-moz-full-screen,
body.otoprep-app .ays-quiz-container:-ms-fullscreen{
  background:#fff !important;
  width:100% !important;
  height:100% !important;
  overflow:auto !important;
  box-sizing:border-box;
  padding:16px 16px calc(16px + env(safe-area-inset-bottom)) !important;
}


/* Keep the quiz itself inside our card theme */
body.otoprep-app .otoprep-quiz-card{overflow:hidden;}

/* Normalize AYS quiz themes inside the app shell so question content uses the
   full card width instead of the legacy split-screen Modern theme layout. */
body.otoprep-app.otoprep-view-quiz .ays-quiz-container .step[data-question-id],
body.otoprep-app.otoprep-view-quiz .ays-quiz-container .step.ays-scenario-step,
body.otoprep-app.otoprep-view-quiz .ays-quiz-container .step.ays-scenario-child-step{
  justify-content:center !important;
  align-items:stretch !important;
  padding-top:0 !important;
  padding-right:0 !important;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-container .step[data-question-id] > .ays-abs-fs,
body.otoprep-app.otoprep-view-quiz .ays-quiz-container .step.ays-scenario-step > .ays-abs-fs,
body.otoprep-app.otoprep-view-quiz .ays-quiz-container .step.ays-scenario-child-step > .ays-abs-fs{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}

/* Hide the AYS question counter; we mirror progress into the in-quiz header. */
body.otoprep-app .otoprep-quiz-card p.ays-question-counter,
body.otoprep-app .otoprep-quiz-card .ays-question-counter{
  display:none !important;
}

/* Question typography: align with the app */
body.otoprep-app .otoprep-quiz-card .ays_quiz_question,
body.otoprep-app .otoprep-quiz-card .ays_quiz_question *{
  font-family:var(--otoprep-font) !important;
  color:var(--otoprep-ink) !important;
}
body.otoprep-app .otoprep-quiz-card .ays_quiz_question{
  font-size:16px;
  line-height:1.5;
  margin-bottom:12px;
  text-align:left !important;
}

body.otoprep-app .otoprep-quiz-card .ays_quiz_question p,
body.otoprep-app .otoprep-quiz-card .ays_quiz_question li{
  text-align:left !important;
}

/* Hints/messages: keep them subtle */
body.otoprep-app .otoprep-quiz-card .ays_question_hint,
body.otoprep-app .otoprep-quiz-card .ays_message,
body.otoprep-app .otoprep-quiz-card .ays_score_message{
  color:var(--otoprep-muted) !important;
}

/* Make answer options feel like tappable cards */
body.otoprep-app .ays-quiz-answers .ays-field input~label[for^="ays-answer-"]{
  border:1px solid rgba(16,117,188,.18);
  border-radius:14px;
  padding:12px 12px;
  line-height:1.5;
  color:var(--otoprep-ink);
  background:#fff;
  box-shadow:0 6px 18px rgba(16,117,188,.06);
}

/* Some AYS themes set generic <p> text to white (dark themes). In app mode we render the quiz on a
   light card background, so ensure paragraphs remain readable. */
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-container p{
  color:var(--otoprep-ink);
}

/* Buttons */
body.otoprep-app input.ays_next,
body.otoprep-app input.ays_previous,
body.otoprep-app input.ays_finish{
  border-radius:12px !important;
}

/* Quiz navigation bar (AYS) – make it feel like a native app control row */
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-wrap{padding-bottom:24px;}
body.otoprep-app.otoprep-view-quiz .ays-quiz-container .ays_buttons_div{
  position:sticky;
  bottom:calc(12px + env(safe-area-inset-bottom));
  z-index:40;
  background:var(--otoprep-qs-controls-bg);
  backdrop-filter:blur(8px);
  border:1px solid var(--otoprep-qs-controls-border);
  border-radius:16px;
  padding:10px;
  margin-top:14px;
  box-shadow:0 10px 24px rgba(16,117,188,.10);
  display:flex;
  gap:10px;
  justify-content:space-between;
  flex-wrap:wrap;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_previous,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_next,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_finish,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_previous,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_next,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_finish{
  flex:1 1 140px;
  min-height:44px;
}

/* Fill + text colors for the native <input> navigation buttons */
body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_previous,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_next,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_previous,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_next{
  background:var(--otoprep-qs-btn-bg) !important;
  color:var(--otoprep-qs-btn-text) !important;
  border:2px solid var(--otoprep-qs-btn-border) !important;
  font-weight:900 !important;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_finish,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_finish{
  background:var(--otoprep-qs-finish-bg) !important;
  color:var(--otoprep-qs-finish-text) !important;
  border:2px solid var(--otoprep-qs-finish-border) !important;
  font-weight:900 !important;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_previous.action-button,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_next.action-button,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_finish.action-button{
  width:44px;
  height:44px;
  border-radius:12px;
  border:2px solid var(--otoprep-qs-btn-border);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:var(--otoprep-qs-btn-bg);
  color:var(--otoprep-qs-btn-text);
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_finish.action-button{
  border-color:var(--otoprep-qs-finish-border);
  background:var(--otoprep-qs-finish-bg);
  color:var(--otoprep-qs-finish-text);
}

/* Question navigation grid button colors (numbered buttons) */
body.otoprep-app.otoprep-view-quiz [id^="ays-quiz-questions-nav-wrap-"] a.ays_questions_nav_question{
  background:var(--otoprep-qs-qnav-bg) !important;
  color:var(--otoprep-qs-qnav-text) !important;
  border:1px solid var(--otoprep-qs-qnav-border) !important;
}

body.otoprep-app.otoprep-view-quiz [id^="ays-quiz-questions-nav-wrap-"] .ays-quiz-questions-nav-item-active a.ays_questions_nav_question{
  background:var(--otoprep-qs-qnav-active-bg) !important;
  color:var(--otoprep-qs-qnav-active-text) !important;
  border:1px solid var(--otoprep-qs-qnav-active-border) !important;
}

body.otoprep-app.otoprep-view-quiz [id^="ays-quiz-questions-nav-wrap-"] .ays-quiz-questions-nav-item-answered a.ays_questions_nav_question{
  background:var(--otoprep-qs-qnav-answered-bg) !important;
  color:var(--otoprep-qs-qnav-answered-text) !important;
  border:1px solid var(--otoprep-qs-qnav-answered-border) !important;
}

body.otoprep-app.otoprep-view-quiz [id^="ays-quiz-questions-nav-wrap-"] a.ays_questions_nav_question.ays_quiz_correct_answer{
  background:var(--otoprep-qs-qnav-correct-bg) !important;
  color:var(--otoprep-qs-qnav-correct-text) !important;
}

body.otoprep-app.otoprep-view-quiz [id^="ays-quiz-questions-nav-wrap-"] a.ays_questions_nav_question.ays_quiz_wrong_answer{
  background:var(--otoprep-qs-qnav-wrong-bg) !important;
  color:var(--otoprep-qs-qnav-wrong-text) !important;
}

@media (max-width: 900px){
  body.otoprep-app .otoprep-col-6{grid-column:span 12;}
}
/* Milestone 2 additions */
body.otoprep-app .otoprep-topbar__right{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}

body.otoprep-app .otoprep-exam-switch{
  display:flex;
  align-items:center;
  gap:6px;
  flex-wrap:wrap;
}

body.otoprep-app .otoprep-exam-current{
  font-size:13px;
  padding:6px 10px;
  border:1px solid rgba(0,0,0,.14);
  border-radius:999px;
  background:rgba(255,255,255,.85);
}

body.otoprep-app .otoprep-chip{
  display:inline-flex;
  align-items:center;
  font-size:13px;
  padding:6px 10px;
  border:1px solid rgba(0,0,0,.14);
  border-radius:999px;
  text-decoration:none;
  background:rgba(255,255,255,.85);
}

body.otoprep-app .otoprep-chip.is-active{
  font-weight:700;
}

body.otoprep-app .otoprep-exam-grid{
  display:grid;
  grid-template-columns: repeat( auto-fit, minmax( 220px, 1fr ) );
  gap:12px;
}

body.otoprep-app .otoprep-exam-card{
  border:1px solid rgba(0,0,0,.10);
  border-radius:12px;
  background:rgba(255,255,255,.85);
  padding:12px;
}

body.otoprep-app .otoprep-exam-card__title{
  font-weight:800;
  margin-bottom:10px;
}

body.otoprep-app .otoprep-divider{
  height:1px;
  background:rgba(0,0,0,.08);
  margin:12px 0;
}


body.otoprep-app .otoprep-levels{
  margin:10px 0 0;
  padding:0;
  list-style:none;
  display:grid;
  gap:8px;
}

body.otoprep-app .otoprep-level{
  border:1px solid rgba(0,0,0,.10);
  border-radius:12px;
  background:rgba(255,255,255,.85);
  padding:10px 12px;
}

body.otoprep-app .otoprep-level__name{
  font-weight:800;
}

body.otoprep-app .otoprep-level__meta{
  font-size:13px;
  opacity:.85;
  margin-top:4px;
}

/* Segmented control */
.otoprep-seg{
  display:inline-flex;
  gap:6px;
  padding:4px;
  border:1px solid rgba(16,117,188,.18);
  border-radius:999px;
  background:rgba(16,117,188,.06);
}
.otoprep-seg__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 14px;
  min-height:40px;
  border-radius:999px;
  text-decoration:none;
  font-weight:800;
  font-size:13px;
  color:var(--otoprep-blue);
  border:1px solid transparent;
}
.otoprep-seg__btn.is-active{
  color:#fff;
  background:var(--otoprep-blue);
  border-color:var(--otoprep-blue);
  box-shadow:0 10px 22px rgba(16,117,188,.18);
}

/* Simple grids */
.otoprep-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
}
@media (min-width: 720px){
  .otoprep-grid{grid-template-columns:repeat(2, 1fr);} 
}

.otoprep-grid__item{
  background:#fff;
  border:1px solid var(--otoprep-border);
  border-radius:18px;
  padding:16px;
  box-shadow:0 10px 24px rgba(16,117,188,.08);
}

.otoprep-chiprow{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:10px;
}

body.otoprep-app .otoprep-chiprow--quick-mixed{
  justify-content:flex-start;
  gap:12px;
}

body.otoprep-app .otoprep-quick-mixed-btn{
  min-width:82px;
  min-height:54px;
  padding:0 18px;
  border-radius:18px;
  font-size:22px;
  line-height:1;
  letter-spacing:-.02em;
  box-shadow:0 12px 24px rgba(16,117,188,.18);
}

body.otoprep-app .otoprep-quick-mixed-btn:hover,
body.otoprep-app .otoprep-quick-mixed-btn:focus{
  transform:translateY(-1px);
}

body.otoprep-app .otoprep-command-centre{
  margin:12px 0 0;
}

body.otoprep-app .otoprep-command-centre > summary{
  align-items:flex-start;
}

body.otoprep-app .otoprep-command-centre__summary{
  display:flex;
  flex-direction:column;
  gap:4px;
}

body.otoprep-app .otoprep-command-centre__body{
  padding:14px;
}

body.otoprep-app .otoprep-command-centre .otoprep-feature-section{
  background:transparent;
  border:0;
  box-shadow:none;
  padding:0;
}

body.otoprep-app .otoprep-command-centre .otoprep-feature-section__head{
  display:none;
}

body.otoprep-app .otoprep-command-centre .otoprep-feature-grid{
  margin:0;
}

.otoprep-card__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:10px;
}

.otoprep-btn--ghost{
  background:rgba(16,117,188,.08);
  border-color:rgba(16,117,188,.18);
  color:var(--otoprep-blue);
}
.otoprep-btn--ghost:hover{
  background:rgba(16,117,188,.12);
}

.otoprep-notice{
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(231,105,75,.35);
  background:rgba(231,105,75,.08);
  margin:12px 0;
}

/* Forms */
.otoprep-form{
  display:grid;
  gap:12px;
}
.otoprep-form__row{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
}
@media (min-width: 720px){
  .otoprep-form__row{grid-template-columns:1fr 1fr;}
}

.otoprep-form__field label{
  display:block;
  font-weight:800;
  margin-bottom:6px;
}

.otoprep-form__field input[type="number"],
.otoprep-form__field select{
  width:100%;
  padding:10px 12px;
  border-radius:12px;
  border:1px solid var(--otoprep-border);
  background:#fff;
  font-size:14px;
}

.otoprep-form__help{
  margin:6px 0 0;
  color:var(--otoprep-muted);
  font-size:13px;
}

.otoprep-list{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:10px;
}

.otoprep-check{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 12px;
  border:1px solid var(--otoprep-border);
  border-radius:14px;
  background:#fff;
}

.otoprep-check__main{
  display:flex;
  flex-direction:column;
  gap:2px;
}

.otoprep-check__title{font-weight:900;}
.otoprep-check__meta{font-size:13px;color:var(--otoprep-muted);}

.otoprep-check input[type="checkbox"]{
  width:20px;
  height:20px;
}
/* --------------------------------------------------------------------- */
/* Review tab helpers */
/* --------------------------------------------------------------------- */

.otoprep-btn-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.otoprep-btn--sm {
  padding: 8px 10px;
  font-size: 13px;
  line-height: 1;
}

.otoprep-meta {
  margin: 0 0 10px;
  opacity: 0.85;
}

.otoprep-notice {
  border-left: 4px solid rgba(0,0,0,.12);
}

/* --------------------------------------------------------------------- */
/* Quiz marks (Flagged / Unsure) */
/* --------------------------------------------------------------------- */

/* The mark toolbar appears at the top-right of each question in /app.
 * We enhance it with labels + a moved Report button in milestone 1.
 */
body.otoprep-app .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar {
  display:flex;
  justify-content:center;
  gap:14px;
  align-items:flex-start;
  flex-wrap:wrap;
  width:100%;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box{
  display:block;
  width:100%;
  margin:0 0 14px;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box .ays-quiz-questions-nav-bookmark-box,
body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar{
  position:static !important;
  top:auto !important;
  right:auto !important;
  z-index:auto !important;
  width:100%;
  margin:0 !important;
  justify-content:center;
  gap:14px;
  flex-wrap:wrap;
}

/* When timed mode is active (timer present) but the toolbar has not yet been
 * docked into the top bar, nudge it up so it sits under the timer and does
 * not cover question text.
 */
body.otoprep-app.otoprep-view-quiz.otoprep-has-timer .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar{
  top:14px !important;
  right:14px !important;
}

body.otoprep-app .otoprep-mark-item{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:6px;
  flex:0 0 62px;
  max-width:62px;
}

body.otoprep-app .otoprep-mark-item--flag{order:1;}
body.otoprep-app .otoprep-mark-item--report{order:2;}
body.otoprep-app .otoprep-mark-item--unsure{order:3;}
body.otoprep-app .otoprep-mark-item--review{order:4;}

body.otoprep-app .otoprep-mark-item--review .otoprep-mark-item__label{
  white-space:normal;
}

body.otoprep-app .otoprep-mark-item__icon{
  width:44px;
  height:44px;
  border:1px solid rgba(16,117,188,.14);
  background:#fff;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  box-shadow:0 8px 18px rgba(16,117,188,.10);
  position:relative;
  flex-shrink:0;
}

body.otoprep-app .otoprep-mark-item__label{
  width:100%;
  min-height:26px;
  font-size:11px;
  line-height:1.15;
  text-align:center;
  color:var(--otoprep-muted);
  font-weight:800;
  display:flex;
  align-items:flex-start;
  justify-content:center;
  white-space:normal;
}

body.otoprep-app .otoprep-mark-item--flag.is-on .otoprep-mark-item__icon{
  background:rgba(16,117,188,.10);
  border-color:rgba(16,117,188,.28);
}

body.otoprep-app .otoprep-mark-item--unsure.is-on .otoprep-mark-item__icon{
  background:rgba(0,0,0,.85);
  border-color:rgba(0,0,0,.85);
}

body.otoprep-app .otoprep-mark-item--review.is-on .otoprep-mark-item__icon{
  background:rgba(231,105,75,.12);
  border-color:rgba(231,105,75,.28);
}

/* Flag icon visual */
body.otoprep-app .otoprep-mark-item--flag .ays-navbar-bookmark{
  width:20px;
  height:20px;
  display:block;
  opacity:1;
}

body.otoprep-app .otoprep-mark-item--review .otoprep-mark-item__icon::before{
  content:"";
  width:18px;
  height:18px;
  display:block;
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
}

body.otoprep-app .otoprep-mark-item--review .ays-question-review-later-toggle{
  position:absolute;
  inset:0;
  display:block;
  width:100%;
  height:100%;
  min-height:0 !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:999px !important;
  background:transparent !important;
  box-shadow:none !important;
  opacity:0;
  color:transparent !important;
  font-size:0 !important;
  line-height:0 !important;
}

body.otoprep-app .otoprep-mark-item--review .otoprep-mark-item__icon::before{
  background-image:url("../images/review-later-outline.svg");
}

body.otoprep-app .otoprep-mark-item--review.is-on .otoprep-mark-item__icon::before{
  background-image:url("../images/review-later-filled.svg");
}

/* Unsure */
body.otoprep-app .otoprep-mark-item--unsure .otoprep-unsure-btn{
  width:100%;
  height:100%;
  border:0;
  background:transparent;
  padding:0;
  border-radius:999px;
  font-weight:900;
  font-size:18px;
  line-height:1;
  color:rgba(0,0,0,.75);
  cursor:pointer;
}

body.otoprep-app .otoprep-mark-item--unsure.is-on .otoprep-unsure-btn{
  color:#fff;
}

/* Report */
body.otoprep-app .otoprep-mark-item--report .ays-quiz-open-report-window{
  width:18px;
  height:18px;
  display:block;
}

body.otoprep-app .ays_questions_nav_question.otoprep-unsure {
  position: relative;
}

body.otoprep-app .ays_questions_nav_question.otoprep-unsure::after {
  content: "?";
  position: absolute;
  top: -6px;
  right: -6px;
  width: 16px;
  height: 16px;
  border-radius: 999px;
  background: rgba(0,0,0,.85);
  color: #fff;
  font-size: 11px;
  line-height: 16px;
  text-align: center;
}

/* -------------------------------------------------------------------------
 * Progress / Analytics (Milestone 5)
 * ---------------------------------------------------------------------- */

body.otoprep-app .otoprep-h3{
  margin:0 0 6px;
  font-size:18px;
  font-weight:950;
  line-height:1.2;
}

body.otoprep-app .otoprep-kpi{
  display:flex;
  flex-direction:column;
  gap:6px;
}

body.otoprep-app .otoprep-kpi__label{
  font-size:13px;
  color:var(--otoprep-muted);
  font-weight:850;
  letter-spacing:.01em;
}

body.otoprep-app .otoprep-kpi__value{
  font-size:34px;
  line-height:1;
  font-weight:950;
  color:var(--otoprep-ink);
}

body.otoprep-app .otoprep-kpi__sub{
  font-size:13px;
  color:var(--otoprep-muted);
  line-height:1.4;
}

body.otoprep-app .otoprep-queue{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:8px;
}

body.otoprep-app .otoprep-queue__item{
  flex:1 1 0;
  min-width:120px;
  text-decoration:none;
  background:rgba(16,117,188,.06);
  border:1px solid rgba(16,117,188,.14);
  border-radius:14px;
  padding:12px;
  display:flex;
  flex-direction:column;
  gap:4px;
}

body.otoprep-app .otoprep-queue__num{
  font-size:22px;
  font-weight:950;
  color:var(--otoprep-ink);
}

body.otoprep-app .otoprep-queue__label{
  font-size:13px;
  font-weight:900;
  color:var(--otoprep-blue);
}

body.otoprep-app .otoprep-tableWrap{
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  border-radius:14px;
}

body.otoprep-app .otoprep-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  background:#fff;
  border:1px solid var(--otoprep-border);
  border-radius:14px;
  overflow:hidden;
}

body.otoprep-app .otoprep-table th,
body.otoprep-app .otoprep-table td{
  padding:10px 12px;
  text-align:left;
  border-bottom:1px solid var(--otoprep-border);
  font-size:13px;
  vertical-align:top;
}

body.otoprep-app .otoprep-table th{
  color:var(--otoprep-muted);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
  font-size:11px;
}

body.otoprep-app .otoprep-table tr:last-child td{
  border-bottom:none;
}

body.otoprep-app .otoprep-spark{
  height:72px;
  display:flex;
  align-items:flex-end;
  gap:4px;
  margin-top:10px;
}

body.otoprep-app .otoprep-spark__bar{
  flex:1 1 0;
  max-width:14px;
  border-radius:10px;
  background:rgba(16,117,188,.65);
  border:1px solid rgba(16,117,188,.25);
  min-height:6px;
}

body.otoprep-app .otoprep-spark__bar.is-empty{
  background:rgba(0,0,0,.06);
  border-color:rgba(0,0,0,.06);
}

/* Mock papers list */
.otoprep-mocks{
  display:grid;
  gap:12px;
  margin-top:14px;
}
.otoprep-mock{
  background:#fff;
  border:1px solid var(--otoprep-border);
  border-radius:16px;
  padding:14px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.otoprep-mock__meta{
  display:flex;
  align-items:center;
  gap:10px;
  min-width:0;
}
.otoprep-mock__title{
  font-weight:900;
  font-size:15px;
  line-height:1.25;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:46vw;
}
.otoprep-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  border-radius:999px;
  font-size:12px;
  font-weight:900;
  color:var(--otoprep-blue);
  background:rgba(16,117,188,.08);
  border:1px solid rgba(16,117,188,.18);
  white-space:nowrap;
}
.otoprep-badge--muted{
  color:var(--otoprep-muted);
  background:rgba(0,0,0,.04);
  border:1px solid rgba(0,0,0,.10);
}

@media (max-width: 520px){
  .otoprep-mock{
    align-items:flex-start;
    flex-direction:column;
  }
  .otoprep-mock__title{
    max-width:100%;
  }
  .otoprep-mock .otoprep-actions{
    width:100%;
  }
  .otoprep-mock .otoprep-btn{
    width:100%;
  }
}


/* ---------------------------------------------------------------------
   Results view + redirect overlay
   --------------------------------------------------------------------- */

body.otoprep-app .otoprep-title-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

body.otoprep-app .otoprep-result-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}

body.otoprep-app .otoprep-results-hero{
  overflow:hidden;
}

body.otoprep-app .otoprep-kpis{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:12px;
}

@media (min-width: 820px){
  body.otoprep-app .otoprep-kpis{
    grid-template-columns:repeat(4, minmax(0, 1fr));
  }
}

body.otoprep-app .otoprep-kpis .otoprep-kpi{
  padding:16px;
  border-radius:18px;
  border:1px solid rgba(16,117,188,.14);
  background:linear-gradient(180deg, rgba(16,117,188,.08) 0%, rgba(255,255,255,.96) 100%);
}

body.otoprep-app .otoprep-subtle{
  color: rgba(0,0,0,0.6);
  font-size: 13px;
  line-height: 1.4;
  margin-top: 4px;
}

/* Results redirect overlay (shows briefly after submit to avoid ugly native result flashes). */
body.otoprep-app .otoprep-redirect-overlay{
  position: fixed;
  inset: 0;
  display: none;
  align-items: center;
  justify-content: center;
  background: rgba(255,255,255,0.85);
  z-index: 99999;
  padding: 24px;
}

body.otoprep-app.otoprep-redirecting .otoprep-redirect-overlay{
  display: flex;
}

body.otoprep-app .otoprep-redirect-overlay__inner{
  display:flex;
  align-items:center;
  gap:12px;
  padding: 14px 16px;
  background:#fff;
  border:1px solid rgba(0,0,0,0.08);
  border-radius: 12px;
  box-shadow: 0 10px 30px rgba(0,0,0,0.08);
  font-weight: 600;
}

body.otoprep-app .otoprep-spinner{
  width: 18px;
  height: 18px;
  border-radius: 999px;
  border: 2px solid currentColor;
  border-top-color: transparent;
  animation: otoprepSpin 1s linear infinite;
  flex: 0 0 auto;
}

@keyframes otoprepSpin{
  to { transform: rotate(360deg); }
}


/* ---------------------------------------------------------------------
   M18 UI polish (Practice + Builder)
   --------------------------------------------------------------------- */

/* Consistent vertical rhythm in non-quiz views */
body.otoprep-app:not(.otoprep-view-quiz) .otoprep-main > * + *{
  margin-top:12px;
}

/* Card typography */
body.otoprep-app .otoprep-card h2{
  margin:0 0 6px;
  font-weight:950;
  letter-spacing:-0.01em;
}
body.otoprep-app .otoprep-card h3{
  margin:0 0 6px;
}

/* Practice mode explainer */
body.otoprep-app .otoprep-modehelp{
  margin-top:12px;
  padding:12px 14px;
  border-radius:16px;
  border:1px solid var(--otoprep-border);
  background:#fff;
  box-shadow:0 10px 24px rgba(16,117,188,.06);
}
body.otoprep-app .otoprep-modehelp__title{
  font-weight:950;
  font-size:14px;
}
body.otoprep-app .otoprep-modehelp__list{
  margin:8px 0 0;
  padding-left:18px;
  color:var(--otoprep-muted);
  font-size:13px;
  line-height:1.45;
}
body.otoprep-app .otoprep-modehelp--tutor{
  border-color:rgba(16,117,188,.18);
  background:rgba(16,117,188,.04);
}
body.otoprep-app .otoprep-modehelp--exam{
  border-color:rgba(0,0,0,.12);
  background:rgba(0,0,0,.02);
}
body.otoprep-app .otoprep-modehelp--timed{
  border-color:rgba(231,105,75,.22);
  background:rgba(231,105,75,.04);
}

/* Alerts (builder errors, etc.) */
body.otoprep-app .otoprep-alert{
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(0,0,0,.12);
  background:#fff;
  border-left-width:4px;
  margin:12px 0;
}
body.otoprep-app .otoprep-alert ul{
  margin:0;
  padding-left:18px;
}
body.otoprep-app .otoprep-alert--error{
  border-color:rgba(231,105,75,.35);
  background:rgba(231,105,75,.06);
  border-left-color:rgba(231,105,75,.65);
}

/* Builder actions row */
body.otoprep-app .otoprep-form__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:6px;
}

/* Builder: topic list */
body.otoprep-app .otoprep-topichead{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:10px;
}
body.otoprep-app .otoprep-topichead__label{
  margin:0;
}

body.otoprep-app .otoprep-topichead__actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

body.otoprep-app .otoprep-topiclist{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
}
@media (min-width: 720px){
  body.otoprep-app .otoprep-topiclist{
    grid-template-columns:repeat(2, 1fr);
  }
}

body.otoprep-app .otoprep-topic{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 12px;
  border:1px solid var(--otoprep-border);
  border-radius:14px;
  background:#fff;
  cursor:pointer;
  transition:background .12s ease, border-color .12s ease, box-shadow .12s ease;
}
body.otoprep-app .otoprep-topic:hover{
  border-color:rgba(16,117,188,.22);
  box-shadow:0 8px 18px rgba(16,117,188,.06);
}
body.otoprep-app .otoprep-topic input[type="checkbox"]{
  width:20px;
  height:20px;
  flex:0 0 auto;
  accent-color:var(--otoprep-blue);
}
body.otoprep-app .otoprep-topic__title{
  font-weight:900;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
}
body.otoprep-app .otoprep-topic__meta{
  font-size:12px;
  font-weight:900;
  color:var(--otoprep-muted);
  padding:5px 9px;
  border-radius:999px;
  background:rgba(0,0,0,.04);
  border:1px solid rgba(0,0,0,.10);
  white-space:nowrap;
}
body.otoprep-app .otoprep-topic.is-on{
  background:rgba(16,117,188,.05);
  border-color:rgba(16,117,188,.28);
}
body.otoprep-app .otoprep-topic.is-on .otoprep-topic__meta{
  background:rgba(16,117,188,.08);
  border-color:rgba(16,117,188,.18);
  color:var(--otoprep-blue);
}

/* Disabled button styles (builder submit) */
body.otoprep-app .otoprep-btn:disabled,
body.otoprep-app button.otoprep-btn[disabled]{
  opacity:.55;
  cursor:not-allowed;
  transform:none;
}

/* AI Coach overlay (scoped to /app) */
body.otoprep-app .otoprep-ai-overlay{
  position:fixed;
  inset:0;
  z-index:999999;
  background:rgba(0,0,0,.35);
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding:14px;
}
body.otoprep-app .otoprep-ai-sheet{
  width:100%;
  max-width:560px;
  background:#fff;
  border-radius:18px;
  box-shadow:0 12px 40px rgba(0,0,0,.25);
  overflow:hidden;
  max-height:82vh;
  display:flex;
  flex-direction:column;
}
body.otoprep-app .otoprep-ai-sheet__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:12px 14px;
  border-bottom:1px solid rgba(0,0,0,.08);
}
body.otoprep-app .otoprep-ai-sheet__title{
  font-weight:900;
  font-size:14px;
}
body.otoprep-app .otoprep-ai-sheet__close{
  border:0;
  background:transparent;
  font-size:22px;
  line-height:1;
  padding:4px 8px;
  cursor:pointer;
  color:var(--otoprep-ink);
}
body.otoprep-app .otoprep-ai-sheet__body{
  padding:14px;
  overflow:auto;
}
body.otoprep-app .otoprep-ai-sheet__loading{
  font-weight:900;
  color:var(--otoprep-muted);
}
body.otoprep-app .otoprep-ai-sheet__error{
  color:#b32d2e;
  font-weight:900;
}
body.otoprep-app .otoprep-ai-sheet__body p{margin:0 0 10px;}
body.otoprep-app .otoprep-ai-sheet__body ul{margin:0 0 10px 18px; padding:0;}
body.otoprep-app .otoprep-ai-sheet__body li{margin:0 0 6px;}

/* AI Live Coach overlay (Realtime) */
body.otoprep-app .otoprep-live-controls{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin-bottom:10px;
}
body.otoprep-app .otoprep-live-label{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-weight:900;
  font-size:12px;
}
body.otoprep-app .otoprep-live-select{
  padding:8px 10px;
  border:1px solid rgba(0,0,0,.18);
  border-radius:12px;
  font-size:13px;
  min-height:40px;
  background:#fff;
}
body.otoprep-app .otoprep-live-action{
  border:1px solid rgba(0,0,0,.18);
  background:#fff;
  border-radius:12px;
  padding:10px 12px;
  min-height:40px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  font-weight:900;
  font-size:13px;
}
body.otoprep-app .otoprep-live-action--primary{
  background:var(--otoprep-blue);
  border-color:var(--otoprep-blue);
  color:#fff;
}
body.otoprep-app .otoprep-live-action--danger{
  background:#b32d2e;
  border-color:#b32d2e;
  color:#fff;
}
body.otoprep-app .otoprep-live-action:disabled{
  opacity:.55;
  cursor:not-allowed;
}
body.otoprep-app .otoprep-live-status{
  margin:8px 0 10px;
  font-size:12px;
  font-weight:900;
  color:var(--otoprep-muted);
}
body.otoprep-app .otoprep-live-log{
  border:1px solid rgba(0,0,0,.12);
  border-radius:12px;
  padding:10px;
  background:rgba(0,0,0,.02);
  max-height:42vh;
  overflow:auto;
}
body.otoprep-app .otoprep-live-line{
  font-size:13px;
  line-height:1.45;
  margin:0 0 8px;
  padding:8px 10px;
  border-radius:12px;
  background:#fff;
  border:1px solid rgba(0,0,0,.06);
}
body.otoprep-app .otoprep-live-line--user{
  background:rgba(27,77,255,.06);
  border-color:rgba(27,77,255,.12);
}
body.otoprep-app .otoprep-live-line--assistant{
  background:rgba(231,105,75,.08);
  border-color:rgba(231,105,75,.16);
}
body.otoprep-app .otoprep-live-line--system{
  background:rgba(0,0,0,.03);
}

/* =========================
   Voice Live Coach (Full-screen)
   ========================= */

body.otoprep-app.otoprep-view-voice .otoprep-tabs{
  display:none;
}

body.otoprep-app.otoprep-view-voice .otoprep-shell{
  max-width:1400px;
  padding-top:12px;
  padding-bottom:18px;
}

body.otoprep-app.otoprep-view-voice .otoprep-topbar--voice{
  position:sticky;
  top:0;
  z-index:1000;
  /* Keep the same “app hero” styling as the main topbar so Voice mode feels cohesive */
  background:linear-gradient(180deg, rgba(16,117,188,.06), rgba(255,255,255,1));
  border:1px solid #e6eef5;
  border-radius:18px;
  box-shadow:0 10px 30px rgba(16,117,188,.10);
  backdrop-filter:blur(10px);
  margin-bottom:10px;
}

body.otoprep-app.otoprep-view-voice .otoprep-topbar__row--voice{
  display:grid;
  grid-template-columns: auto 1fr auto;
  align-items:center;
  gap:10px;
}

body.otoprep-app.otoprep-view-voice .otoprep-topbar__row--voice .otoprep-quizbar__right{
  justify-self:end;
  display:flex;
  flex-direction:column;
  align-items:flex-end;
  gap:6px;
}

body.otoprep-app .otoprep-topbar__row--voice .otoprep-quizbar__meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  row-gap:6px;
}

@media (max-width: 720px){
  body.otoprep-app.otoprep-view-voice .otoprep-topbar__row--voice{
    grid-template-columns: 1fr;
    justify-items:stretch;
  }
  body.otoprep-app.otoprep-view-voice .otoprep-topbar__row--voice .otoprep-quizbar__right{
    justify-self:start;
    align-items:flex-start;
  }
  body.otoprep-app .otoprep-topbar__row--voice .otoprep-quizbar__meta{
    justify-content:flex-start;
  }
  body.otoprep-app.otoprep-view-voice .otoprep-topbar__row--voice .otoprep-live-action--danger{
    width:100%;
  }
}

body.otoprep-app.otoprep-view-voice .otoprep-quizbar__progress,
body.otoprep-app.otoprep-view-voice .otoprep-quizbar__timer,
body.otoprep-app.otoprep-view-voice .otoprep-quizbar__credits{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:6px 10px;
  border-radius:999px;
  border:1px solid rgba(16,117,188,.18);
  background:rgba(16,117,188,.08);
  color:var(--otoprep-blue);
  font-weight:950;
  font-size:13px;
  line-height:1;
}

body.otoprep-app.otoprep-view-voice .otoprep-quizbar__timer.is-hidden,
body.otoprep-app.otoprep-view-voice .otoprep-quizbar__credits.is-hidden{display:none;}











/* Contextual callout shown for Simulation/Viva completion guidance. */











/* Optional "New information" reveal card (e.g. labs / scan report / histology). */












/* Image Atlas (Viva prompts) */










/* Image modal (image atlas prompts in Viva) */






































































/* =========================
   Voice mode UX refinements
   ========================= */

/* Make the transcript feel more like a chat and improve mobile readability */
body.otoprep-app .otoprep-live-line{
  max-width: 88%;
}

body.otoprep-app .otoprep-live-line--user{
  margin-left: auto;
  border-radius:14px 14px 6px 14px;
}

body.otoprep-app .otoprep-live-line--assistant{
  margin-right: auto;
  border-radius:14px 14px 14px 6px;
}

body.otoprep-app .otoprep-live-line--system{
  max-width: 100%;
  text-align: center;
}

/* Pre-start mode picker */








/* Sticky controls should respect iOS safe-area */


/* =========================
   Viva modules library (Practice)
   ========================= */















body.otoprep-app .otoprep-acc{
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 16px;
  background: #fff;
  overflow: hidden;
  margin: 0 0 10px;
}

body.otoprep-app .otoprep-acc > summary{
  list-style: none;
  cursor: pointer;
  padding: 12px 14px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  font-weight: 900;
}

body.otoprep-app .otoprep-acc > summary::-webkit-details-marker{display:none;}

body.otoprep-app .otoprep-acc[open] > summary{
  border-bottom: 1px solid rgba(0,0,0,.06);
}

body.otoprep-app .otoprep-acc__title{
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
}

body.otoprep-app .otoprep-acc__meta{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
}

body.otoprep-app .otoprep-acc__desc{
  padding: 10px 14px 0;
  font-size: 12px;
  opacity: .85;
}

/* Nested accordion inside a course (topic grouping). */
body.otoprep-app .otoprep-acc--sub{
  margin: 10px 12px 0;
  border-radius: 14px;
  background: rgba(0,0,0,.015);
}

body.otoprep-app .otoprep-acc--sub > summary{
  padding: 10px 12px;
  font-weight: 900;
}

body.otoprep-app .otoprep-acc--sub[open] > summary{
  border-bottom: 1px solid rgba(0,0,0,.06);
}



/* Highlight the "enroll to unlock" group a touch. */













/* =========================
   OtoPrep Auth UI (/app)
   ========================= */

body.otoprep-app.otoprep-view-auth .otoprep-tabs{
  display:none;
}

body.otoprep-app.otoprep-view-auth .otoprep-shell{
  padding-bottom: 24px;
}



body.otoprep-app .otoprep-field{
  margin: 12px 0;
}

body.otoprep-app .otoprep-label{
  display:block;
  font-weight: 800;
  font-size: 13px;
  margin-bottom: 6px;
  color: var(--otoprep-text);
}

body.otoprep-app .otoprep-input{
  width: 100%;
  box-sizing: border-box;
  padding: 12px 12px;
  border-radius: 12px;
  border: 1px solid rgba(0,0,0,.12);
  background: #fff;
  font-size: 16px;
}

body.otoprep-app .otoprep-input:focus{
  outline: none;
  border-color: rgba(16,117,188,.55);
  box-shadow: 0 0 0 3px rgba(16,117,188,.12);
}

body.otoprep-app .otoprep-btn--block{
  width: 100%;
  justify-content: center;
}







/* --------------------------------------------------------------------- */
/* Account portal helpers */
/* --------------------------------------------------------------------- */

body.otoprep-app .otoprep-portal-hero{
  border: 1px solid rgba(16,117,188,.18);
  background: linear-gradient(180deg, rgba(16,117,188,.06), rgba(255,255,255,1));
}

body.otoprep-app .otoprep-kv{
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}

@media (min-width: 560px){
  body.otoprep-app .otoprep-kv{
    grid-template-columns: repeat(2, 1fr);
  }
}

body.otoprep-app .otoprep-kv__item{
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 12px;
  padding: 10px 12px;
  background: rgba(16,117,188,.04);
}

body.otoprep-app .otoprep-kv__k{
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .02em;
  text-transform: uppercase;
  color: var(--otoprep-muted);
  margin-bottom: 6px;
}

body.otoprep-app .otoprep-kv__v{
  font-weight: 900;
  word-break: break-word;
}

body.otoprep-app .otoprep-alert{
  border-radius: 12px;
  padding: 10px 12px;
  margin: 10px 0 14px;
  font-size: 14px;
}

body.otoprep-app .otoprep-alert--error{
  background: rgba(231,105,75,.10);
  border: 1px solid rgba(231,105,75,.25);
  color: var(--otoprep-orange);
}

body.otoprep-app .otoprep-alert--notice{
  background: rgba(16,117,188,.08);
  border: 1px solid rgba(16,117,188,.20);
  color: var(--otoprep-blue);
}









/* ------------------------------------------------------------
 * Onboarding survey (scoped to /app)
 * ------------------------------------------------------------ */


body.otoprep-app .otoprep-required{
  margin-left: 4px;
  color: #d63638;
  font-weight: 900;
}





body.otoprep-app .otoprep-check{
  display:flex;
  align-items:flex-start;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px solid rgba(0,0,0,.08);
  background: rgba(255,255,255,.92);
}

body.otoprep-app .otoprep-check input[type="checkbox"]{
  margin-top: 3px;
}

body.otoprep-app .otoprep-field--error .otoprep-label{
  color: #d63638;
}

body.otoprep-app .otoprep-field--error .otoprep-input{
  border-color: rgba(214,54,56,.9);
  box-shadow: 0 0 0 2px rgba(214,54,56,.15);
}

body.otoprep-app .otoprep-hint{
  margin-top: 6px;
  font-size: 13px;
  opacity: .85;
}

/* ------------------------------------------------------------
 * First-use walkthrough tour (scoped to /app)
 * ------------------------------------------------------------ */
body.otoprep-app .otoprep-tour{
  position: fixed;
  inset: 0;
  z-index: 99999;
  background: rgba(0,0,0,.45);
  display:flex;
  align-items:flex-end;
  justify-content:center;
  padding: 18px;
}

body.otoprep-app .otoprep-tour__sheet{
  width: 100%;
  max-width: 560px;
  background: #fff;
  border-radius: 18px;
  overflow:hidden;
  box-shadow: 0 20px 60px rgba(0,0,0,.25);
}

body.otoprep-app .otoprep-tour__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding: 14px 16px;
  border-bottom: 1px solid rgba(0,0,0,.06);
}

body.otoprep-app .otoprep-tour__title{
  font-weight: 900;
  font-size: 18px;
}

body.otoprep-app .otoprep-tour__close{
  border: 0;
  background: transparent;
  cursor:pointer;
  font-size: 24px;
  line-height: 1;
  padding: 0 8px;
}

body.otoprep-app .otoprep-tour__body{
  padding: 16px;
}

body.otoprep-app .otoprep-tour__step-title{
  font-weight: 900;
  font-size: 16px;
  margin-bottom: 8px;
}

body.otoprep-app .otoprep-tour__step-body{
  font-size: 15px;
  opacity: .9;
}

body.otoprep-app .otoprep-tour__dots{
  display:flex;
  gap: 8px;
  margin-top: 14px;
}

body.otoprep-app .otoprep-tour__dot{
  width: 8px;
  height: 8px;
  border-radius: 99px;
  background: rgba(0,0,0,.18);
}

body.otoprep-app .otoprep-tour__dot.is-active{
  background: rgba(0,0,0,.55);
}

body.otoprep-app .otoprep-tour__foot{
  display:flex;
  gap: 10px;
  justify-content:flex-end;
  padding: 14px 16px;
  border-top: 1px solid rgba(0,0,0,.06);
}

body.otoprep-app .otoprep-tour__skip{
  margin-right:auto;
}

body.otoprep-app .otoprep-tab.is-tour-highlight{
  position: relative;
}

body.otoprep-app .otoprep-tab.is-tour-highlight::after{
  content: "";
  position: absolute;
  inset: -6px;
  border-radius: 18px;
  border: 2px solid rgba(16,117,188,.7);
  box-shadow: 0 0 0 6px rgba(16,117,188,.18), 0 10px 30px rgba(0,0,0,.25);
  animation: otoprep-tour-pulse 1.6s ease-in-out infinite;
  pointer-events: none;
}

/* Generic highlight for tours (used on Voice pages for buttons/panels). */
body.otoprep-app .otoprep-tour-highlight{
  position: relative;
}

body.otoprep-app .otoprep-tour-highlight::after{
  content: "";
  position: absolute;
  inset: -6px;
  border-radius: 14px;
  border: 2px solid rgba(16,117,188,.7);
  box-shadow: 0 0 0 6px rgba(16,117,188,.18), 0 10px 30px rgba(0,0,0,.25);
  animation: otoprep-tour-pulse 1.6s ease-in-out infinite;
  pointer-events: none;
}

/* ------------------------------------------------------------
 * Small in-session nudges (Voice)
 * ------------------------------------------------------------ */
body.otoprep-app .otoprep-nudge{
  position: fixed;
  z-index: 99998;
  max-width: 320px;
  background: #fff;
  border: 1px solid rgba(0,0,0,.12);
  border-radius: 14px;
  box-shadow: 0 14px 40px rgba(0,0,0,.22);
  padding: 10px 12px;
  font-size: 14px;
  line-height: 1.35;
}

body.otoprep-app .otoprep-nudge__row{
  display:flex;
  gap: 10px;
  align-items:flex-start;
}

body.otoprep-app .otoprep-nudge__msg{
  flex: 1;
}

body.otoprep-app .otoprep-nudge__btn{
  border: 1px solid rgba(0,0,0,.18);
  background: rgba(0,0,0,.02);
  border-radius: 999px;
  padding: 6px 10px;
  font-weight: 900;
  cursor: pointer;
}

body.otoprep-app .otoprep-nudge__btn:hover{
  background: rgba(0,0,0,.05);
}

body.otoprep-app .otoprep-nudge-highlight{
  position: relative;
}

body.otoprep-app .otoprep-nudge-highlight::after{
  content: "";
  position: absolute;
  inset: -6px;
  border-radius: 14px;
  border: 2px solid rgba(16,117,188,.70);
  box-shadow: 0 0 0 6px rgba(16,117,188,.18), 0 10px 30px rgba(0,0,0,.25);
  animation: otoprep-tour-pulse 1.6s ease-in-out infinite;
  pointer-events: none;
}

@keyframes otoprep-tour-pulse{
  0%{ transform: scale(1); opacity: .95; }
  50%{ transform: scale(1.01); opacity: 1; }
  100%{ transform: scale(1); opacity: .95; }
}

/* ------------------------------------------------------------
   Subscription confirmation (PMPro)
   ------------------------------------------------------------ */
body.otoprep-app .otoprep-subconfirm{
  position: fixed;
  inset: 0;
  z-index: 100000;
  background: rgba(0,0,0,.45);
  display: flex;
  align-items: flex-end;
  justify-content: center;
  padding: 18px 18px 22px;
}

body.otoprep-app .otoprep-subconfirm__sheet{
  width: 100%;
  max-width: 620px;
  background: #fff;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 20px 60px rgba(0,0,0,.25);
}

body.otoprep-app .otoprep-subconfirm__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding: 14px 16px;
  border-bottom: 1px solid rgba(0,0,0,.06);
}

body.otoprep-app .otoprep-subconfirm__title{
  font-weight: 900;
  font-size: 18px;
}

body.otoprep-app .otoprep-subconfirm__close{
  border: 0;
  background: transparent;
  cursor:pointer;
  font-size: 24px;
  line-height: 1;
  padding: 0 8px;
}

body.otoprep-app .otoprep-subconfirm__body{
  padding: 16px;
}

body.otoprep-app .otoprep-subconfirm__levels{
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 8px;
}

body.otoprep-app .otoprep-subconfirm__level{
  display: flex;
  gap: 10px;
  align-items: flex-start;
  padding: 10px 12px;
  border: 1px solid rgba(0,0,0,.08);
  border-radius: 14px;
  cursor: pointer;
  background: rgba(255,255,255,.7);
}

body.otoprep-app .otoprep-subconfirm__level input{
  margin-top: 3px;
}

body.otoprep-app .otoprep-subconfirm__level-name{
  font-weight: 800;
  display:block;
}

body.otoprep-app .otoprep-subconfirm__level-meta{
  display:block;
  font-size: 13px;
  opacity: .85;
  margin-top: 2px;
}

body.otoprep-app .otoprep-subconfirm__foot{
  display:flex;
  gap: 10px;
  justify-content:flex-end;
  padding: 14px 16px;
  border-top: 1px solid rgba(0,0,0,.06);
}

body.otoprep-app .otoprep-subconfirm__status{
  font-size: 13px;
  opacity: .9;
}

body.otoprep-app .otoprep-subconfirm__status.is-error{
  color: #b42318;
  opacity: 1;
}

/* ------------------------------------------------------------
   Progress → Rank trends
   ------------------------------------------------------------ */
body.otoprep-app .otoprep-ranktrends{
  display: grid;
  grid-template-columns: 1fr;
  gap: 12px;
  margin-top: 12px;
}

@media (min-width: 720px){
  body.otoprep-app .otoprep-ranktrends{
    grid-template-columns: repeat(3, 1fr);
  }
}

body.otoprep-app .otoprep-ranktrends__item{
  padding: 10px 12px;
  border: 1px solid rgba(0,0,0,.06);
  border-radius: 14px;
  background: rgba(255,255,255,.55);
}

body.otoprep-app .otoprep-ranktrends__title{
  font-weight: 600;
  margin: 0;
}

/* ------------------------------------------------------------
   Checkout (PMPro + Woo embedded inside /app/checkout)
   ------------------------------------------------------------ */







/* Form controls */
body.otoprep-app.otoprep-view-checkout input[type="text"],
body.otoprep-app.otoprep-view-checkout input[type="email"],
body.otoprep-app.otoprep-view-checkout input[type="password"],
body.otoprep-app.otoprep-view-checkout input[type="tel"],
body.otoprep-app.otoprep-view-checkout input[type="number"],
body.otoprep-app.otoprep-view-checkout select,
body.otoprep-app.otoprep-view-checkout textarea{
  border: 1px solid var(--otoprep-border);
  border-radius: 12px;
  padding: 10px 12px;
  font: inherit;
  background: #fff;
}

/* Primary buttons (Woo + PMPro) */
body.otoprep-app.otoprep-view-checkout .woocommerce button.button,
body.otoprep-app.otoprep-view-checkout .woocommerce a.button,
body.otoprep-app.otoprep-view-checkout .woocommerce input.button,
body.otoprep-app.otoprep-view-checkout .pmpro_btn,
body.otoprep-app.otoprep-view-checkout .pmpro_btn-submit,
body.otoprep-app.otoprep-view-checkout .pmpro_btn-primary,
body.otoprep-app.otoprep-view-checkout button#place_order{
  background: var(--otoprep-blue);
  color: #fff;
  border: 1px solid rgba(0,0,0,.02);
  border-radius: 14px;
  padding: 12px 16px;
  font-weight: 800;
  text-decoration: none;
  box-shadow: 0 8px 16px rgba(16,117,188,.18);
}
body.otoprep-app.otoprep-view-checkout .woocommerce button.button:hover,
body.otoprep-app.otoprep-view-checkout .woocommerce a.button:hover,
body.otoprep-app.otoprep-view-checkout .pmpro_btn:hover,
body.otoprep-app.otoprep-view-checkout button#place_order:hover{
  filter: brightness(0.98);
}

/* Secondary / outline buttons */
body.otoprep-app.otoprep-view-checkout .woocommerce .button.alt,
body.otoprep-app.otoprep-view-checkout .woocommerce button.button.alt{
  background: var(--otoprep-blue);
}

/* Cards/panels inside embedded checkouts */
body.otoprep-app.otoprep-view-checkout .woocommerce .woocommerce-checkout-review-order,
body.otoprep-app.otoprep-view-checkout .woocommerce .woocommerce-checkout-payment,
body.otoprep-app.otoprep-view-checkout .pmpro_checkout-fields{
  border: 1px solid var(--otoprep-border);
  border-radius: 16px;
  padding: 12px;
  background: rgba(255,255,255,.65);
}

/* Make third-party headings feel like the app */
body.otoprep-app.otoprep-view-checkout .woocommerce h3,
body.otoprep-app.otoprep-view-checkout .woocommerce h2,
body.otoprep-app.otoprep-view-checkout #pmpro_checkout h3,
body.otoprep-app.otoprep-view-checkout #pmpro_checkout h2{
  font-family: inherit;
  letter-spacing: -0.2px;
}

/* Collapsible details blocks (e.g. Progress -> Voice sessions) */
body.otoprep-app .otoprep-details{
  border: 1px solid var(--otoprep-border);
  border-radius: 12px;
  padding: 8px 10px;
  background: rgba(255,255,255,.6);
}
body.otoprep-app .otoprep-details > summary{
  cursor: pointer;
  font-weight: 800;
}
body.otoprep-app .otoprep-pre{
  white-space: pre-wrap;
  word-break: break-word;
  margin: 10px 0 0 0;
  font-size: 13px;
  line-height: 1.45;
}
body.otoprep-app .otoprep-feedback{
  font-size: 14px;
  line-height: 1.5;
}


/* ------------------------------------------------------------
 * Voice Live Coach sticky panel (embedded contexts)
 * Ensures the Timer/Credits + Extend controls stay visible while the
 * conversation log scrolls, even when the body does not have the
 * `otoprep-app` class (e.g., shortcode embeds).
 * ------------------------------------------------------------ */




/* Keep the session meta (Timer + Credits) pinned at the top of the panel */


/* Keep controls reachable (Extend button) */


/* ------------------------------------------------------------
 * Mobile / PWA deepening (Milestone 10)
 * Install banner + reduced motion support for app shell.
 * ------------------------------------------------------------ */
body.otoprep-app .otoprep-install-banner{
  position: fixed;
  left: 16px;
  right: 16px;
  bottom: calc(16px + env(safe-area-inset-bottom, 0px));
  z-index: 120;
  opacity: 0;
  transform: translateY(14px);
  transition: opacity .22s ease, transform .22s ease;
}

body.otoprep-app .otoprep-install-banner[hidden]{
  display: none !important;
}

body.otoprep-app .otoprep-install-banner.is-visible{
  opacity: 1;
  transform: translateY(0);
}

body.otoprep-app .otoprep-install-banner__content{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 14px 16px;
  border-radius: 18px;
  border: 1px solid var(--otoprep-border);
  background: rgba(255,255,255,.96);
  box-shadow: 0 18px 40px rgba(19,32,42,.14);
  backdrop-filter: blur(12px);
}

body.otoprep-app .otoprep-install-banner__text{
  min-width: 0;
  flex: 1 1 auto;
}

body.otoprep-app .otoprep-install-banner__title{
  font-size: 16px;
  line-height: 1.2;
  font-weight: 900;
  margin: 0 0 4px;
}

body.otoprep-app .otoprep-install-banner__body{
  font-size: 14px;
  line-height: 1.45;
  color: var(--otoprep-muted);
}

body.otoprep-app .otoprep-install-banner__actions{
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

body.otoprep-app .otoprep-install-banner__button{
  appearance: none;
  border: 1px solid var(--otoprep-border);
  border-radius: 999px;
  min-height: 44px;
  padding: 0 16px;
  font: inherit;
  font-weight: 800;
  cursor: pointer;
  background: #fff;
  color: var(--otoprep-ink);
}

body.otoprep-app .otoprep-install-banner__button--primary{
  background: var(--otoprep-blue);
  border-color: var(--otoprep-blue);
  color: #fff;
}

body.otoprep-app .otoprep-install-banner__button--secondary{
  background: rgba(255,255,255,.92);
}

body.otoprep-app .otoprep-install-banner.is-ios .otoprep-install-banner__button--primary{
  background: #fff;
  border-color: var(--otoprep-border);
  color: var(--otoprep-ink);
}

@media (min-width: 783px){
  body.otoprep-app .otoprep-install-banner{
    left: auto;
    right: 24px;
    width: min(460px, calc(100vw - 48px));
  }
}

@media (max-width: 782px){
  body.otoprep-app .otoprep-install-banner__content{
    flex-direction: column;
    align-items: stretch;
  }

  body.otoprep-app .otoprep-install-banner__actions{
    justify-content: stretch;
  }

  body.otoprep-app .otoprep-install-banner__button{
    flex: 1 1 0;
  }
}

body.otoprep-app.otoprep-reduced-motion .otoprep-install-banner,
body.otoprep-app.otoprep-reduced-motion .otoprep-install-banner *{
  transition: none !important;
  animation: none !important;
}

/* ------------------------------------------------------------
 * OtoPrep app-shell UX optimisation
 * Native cards for draft resume, adaptive practice, and saved study sets.
 * ------------------------------------------------------------ */
body.otoprep-app .otoprep-feature-section__head{
  margin-bottom: 14px;
}

body.otoprep-app details.otoprep-feature-section--collapsible{
  padding:0;
  overflow:hidden;
}

body.otoprep-app .otoprep-feature-section--collapsible > summary{
  list-style:none;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:20px 22px;
  cursor:pointer;
}

body.otoprep-app .otoprep-feature-section--collapsible > summary::-webkit-details-marker{
  display:none;
}

body.otoprep-app .otoprep-feature-section__summarytext{
  display:grid;
  gap:6px;
  min-width:0;
}

body.otoprep-app .otoprep-feature-section__summarytitle{
  margin:0;
}

body.otoprep-app .otoprep-feature-section__summaryintro{
  display:block;
  max-width:54ch;
}

body.otoprep-app .otoprep-feature-section__summarytoggle{
  position:relative;
  flex:0 0 auto;
  width:36px;
  height:36px;
  border-radius:999px;
  border:1px solid rgba(16,117,188,.14);
  background:rgba(16,117,188,.08);
  box-shadow:0 6px 16px rgba(16,117,188,.08);
}

body.otoprep-app .otoprep-feature-section__summarytoggle::before,
body.otoprep-app .otoprep-feature-section__summarytoggle::after{
  content:"";
  position:absolute;
  top:50%;
  left:50%;
  width:10px;
  height:2px;
  border-radius:999px;
  background:var(--otoprep-blue);
  transform-origin:center;
}

body.otoprep-app .otoprep-feature-section__summarytoggle::before{
  transform:translate(-6px,-50%) rotate(45deg);
}

body.otoprep-app .otoprep-feature-section__summarytoggle::after{
  transform:translate(0,-50%) rotate(-45deg);
}

body.otoprep-app .otoprep-feature-section--collapsible[open] > summary{
  border-bottom:1px solid rgba(16,117,188,.10);
}

body.otoprep-app .otoprep-feature-section--collapsible[open] .otoprep-feature-section__summarytoggle::before{
  transform:translate(-6px,-50%) rotate(-45deg);
}

body.otoprep-app .otoprep-feature-section--collapsible[open] .otoprep-feature-section__summarytoggle::after{
  transform:translate(0,-50%) rotate(45deg);
}

body.otoprep-app .otoprep-feature-section--collapsible .otoprep-feature-grid{
  padding:18px;
}

body.otoprep-app .otoprep-feature-grid,
body.otoprep-app .otoprep-feature-collections{
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 14px;
}

body.otoprep-app .otoprep-feature-card,
body.otoprep-app .otoprep-feature-collection{
  position: relative;
  border: 1px solid var(--otoprep-border);
  border-radius: 20px;
  background: linear-gradient(180deg, rgba(255,255,255,.98), rgba(246,248,252,.96));
  padding: 18px;
  box-shadow: 0 10px 24px rgba(16, 28, 45, .06);
}

body.otoprep-app .otoprep-feature-card__eyebrow{
  display: inline-flex;
  align-items: center;
  gap: 6px;
  min-height: 28px;
  padding: 0 10px;
  border-radius: 999px;
  background: rgba(16,117,188,.10);
  color: var(--otoprep-blue);
  font-size: 12px;
  font-weight: 900;
  letter-spacing: .02em;
  text-transform: uppercase;
}

body.otoprep-app .otoprep-feature-card__title,
body.otoprep-app .otoprep-feature-collection__title{
  margin: 12px 0 6px;
  font-size: 20px;
  line-height: 1.2;
}

body.otoprep-app .otoprep-feature-card__body,
body.otoprep-app .otoprep-feature-collection__intro{
  margin: 0;
  color: var(--otoprep-muted);
  line-height: 1.55;
}

body.otoprep-app .otoprep-feature-card__meta,
body.otoprep-app .otoprep-feature-quizrow__sub{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
  color: var(--otoprep-muted);
  font-size: 13px;
  line-height: 1.45;
}

body.otoprep-app .otoprep-feature-card__meta--reason{
  margin-top: 12px;
  padding: 12px 14px;
  border-radius: 16px;
  background: rgba(16,117,188,.06);
}

body.otoprep-app .otoprep-feature-stats{
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
}

body.otoprep-app .otoprep-feature-stat{
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 40px;
  padding: 8px 12px;
  border: 1px solid rgba(16,117,188,.10);
  border-radius: 999px;
  background: rgba(16,117,188,.04);
  font-size: 13px;
  font-weight: 700;
}

body.otoprep-app .otoprep-feature-stat strong{
  font-size: 15px;
  color: var(--otoprep-ink);
}

body.otoprep-app .otoprep-feature-collection__head{
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

body.otoprep-app .otoprep-feature-collection__count{
  flex: 0 0 auto;
  min-width: 52px;
  min-height: 52px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 18px;
  background: rgba(16,117,188,.08);
  color: var(--otoprep-blue);
  font-size: 22px;
  font-weight: 900;
}

body.otoprep-app .otoprep-feature-collection__empty{
  padding: 14px;
  border-radius: 16px;
  background: rgba(16, 28, 45, .04);
  color: var(--otoprep-muted);
}

body.otoprep-app .otoprep-feature-quizlist{
  display: grid;
  gap: 12px;
}

body.otoprep-app .otoprep-feature-quizrow{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px;
  border-radius: 16px;
  background: rgba(255,255,255,.85);
  border: 1px solid rgba(16, 28, 45, .06);
}

body.otoprep-app .otoprep-feature-quizrow__meta{
  min-width: 0;
  flex: 1 1 auto;
}

body.otoprep-app .otoprep-feature-quizrow__title{
  font-size: 15px;
  font-weight: 800;
  color: var(--otoprep-ink);
}

body.otoprep-app .otoprep-actions--stack-sm{
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

body.otoprep-app .otoprep-qreview-explanation--tutor{
  margin-top: 12px;
}

body.otoprep-app .otoprep-qreview-explanation--tutor .ays-qm-tutor-card{
  border-radius: 18px;
  box-shadow: none;
}

body.otoprep-app .otoprep-qreview-explanation--tutor .ays-qm-tutor-card-header{
  margin-bottom: 4px;
}

body.otoprep-app .otoprep-qreview-explanation--tutor .ays-qm-save-to-review{
  min-height: 44px;
  padding: 0 16px;
  border-radius: 999px;
}

body.otoprep-app details.otoprep-qreview{
  border:1px solid rgba(16,117,188,.14);
  border-radius:18px;
  background:#fff;
  overflow:hidden;
  box-shadow:0 10px 24px rgba(16,117,188,.08);
}

body.otoprep-app details.otoprep-qreview > summary{
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:16px 18px;
  background:linear-gradient(180deg, rgba(16,117,188,.08) 0%, rgba(16,117,188,.03) 100%);
}

body.otoprep-app details.otoprep-qreview > summary::-webkit-details-marker{
  display:none;
}

body.otoprep-app details.otoprep-qreview[open] > summary{
  border-bottom:1px solid rgba(16,117,188,.10);
}

body.otoprep-app .otoprep-qreview-body{
  padding:18px;
  background:#fff;
}

body.otoprep-app .otoprep-qreview-question{
  font-size:16px;
  line-height:1.6;
}

body.otoprep-app .otoprep-qreview-answers{
  display:grid;
  gap:10px;
}

body.otoprep-app .otoprep-qreview-answers > div{
  padding:14px 16px;
  border-radius:16px;
  border:1px solid rgba(16,117,188,.10);
  background:rgba(16,117,188,.04);
}

body.otoprep-app .otoprep-qreview-explanation{
  margin-top:14px;
  padding:14px 16px;
  border-radius:16px;
  border:1px solid rgba(16,117,188,.12);
  background:rgba(16,117,188,.05);
}

@media (max-width: 782px){
  body.otoprep-app .otoprep-feature-grid,
  body.otoprep-app .otoprep-feature-collections{
    grid-template-columns: 1fr;
  }

  body.otoprep-app .otoprep-feature-collection__head,
  body.otoprep-app .otoprep-feature-quizrow{
    flex-direction: column;
    align-items: stretch;
  }

  body.otoprep-app .otoprep-feature-collection__count{
    align-self: flex-start;
  }

  body.otoprep-app .otoprep-actions--stack-sm,
  body.otoprep-app .otoprep-feature-card .otoprep-actions{
    justify-content: stretch;
  }

  body.otoprep-app .otoprep-actions--stack-sm .otoprep-btn,
  body.otoprep-app .otoprep-feature-card .otoprep-actions .otoprep-btn{
    flex: 1 1 auto;
    text-align: center;
  }

  body.otoprep-app .otoprep-title-row,
  body.otoprep-app .otoprep-result-actions{
    flex-direction:column;
    align-items:stretch;
  }

  body.otoprep-app .otoprep-result-actions .otoprep-btn{
    width:100%;
  }

  body.otoprep-app .otoprep-command-centre__body{
    padding:12px;
  }

  body.otoprep-app .otoprep-quick-mixed-btn{
    flex:1 1 calc(50% - 6px);
    min-width:0;
  }
}


/* --------------------------------------------------------------------- */
/* Result review polish + toolbar placement follow-up (21.7.17.5.71) */
/* --------------------------------------------------------------------- */

body.otoprep-app.otoprep-view-result .otoprep-shell{
  max-width:1240px;
}

body.otoprep-app.otoprep-view-result .otoprep-card--review{
  padding:18px;
}

body.otoprep-app .otoprep-results-review__title{
  font-size:30px;
  line-height:1.08;
  letter-spacing:-0.03em;
}

body.otoprep-app .otoprep-results-review__intro{
  margin:0 0 6px;
}

body.otoprep-app .otoprep-results-review__hint{
  margin:0 0 14px;
  color:var(--otoprep-muted);
  font-size:14px;
  font-weight:700;
}

body.otoprep-app .otoprep-qreview-summary__left,
body.otoprep-app .otoprep-qreview-summary__right{
  display:flex;
  align-items:center;
  gap:10px;
}

body.otoprep-app .otoprep-qreview-summary__left{
  min-width:0;
  flex:1 1 auto;
}

body.otoprep-app .otoprep-qreview-summary__index{
  font-size:17px;
  font-weight:950;
  color:var(--otoprep-ink);
}

body.otoprep-app .otoprep-qreview-summary__status{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:6px 12px;
  border-radius:999px;
  font-size:12px;
  line-height:1;
  font-weight:900;
  border:1px solid rgba(16,117,188,.12);
  background:rgba(16,117,188,.08);
  color:var(--otoprep-blue);
}

body.otoprep-app .otoprep-qreview-summary__status--correct{
  background:rgba(48,163,95,.12);
  border-color:rgba(48,163,95,.22);
  color:#237347;
}

body.otoprep-app .otoprep-qreview-summary__status--missed{
  background:rgba(185,77,98,.10);
  border-color:rgba(185,77,98,.18);
  color:#B94D62;
}

body.otoprep-app .otoprep-qreview-summary__status--unknown{
  background:rgba(95,109,122,.10);
  border-color:rgba(95,109,122,.16);
  color:#4d5e6a;
}

body.otoprep-app .otoprep-qreview-summary__hint{
  font-size:12px;
  line-height:1;
  font-weight:800;
  color:var(--otoprep-muted);
}

body.otoprep-app .otoprep-qreview-summary__hint--open{
  display:none;
}

body.otoprep-app details.otoprep-qreview[open] .otoprep-qreview-summary__hint--open{
  display:inline;
}

body.otoprep-app details.otoprep-qreview[open] .otoprep-qreview-summary__hint--closed{
  display:none;
}

body.otoprep-app .otoprep-qreview-summary__chevron{
  width:11px;
  height:11px;
  border-right:2px solid var(--otoprep-blue);
  border-bottom:2px solid var(--otoprep-blue);
  transform:rotate(45deg);
  transition:transform .18s ease;
  flex:0 0 auto;
}

body.otoprep-app details.otoprep-qreview[open] .otoprep-qreview-summary__chevron{
  transform:rotate(225deg);
}

body.otoprep-app .otoprep-qreview-body,
body.otoprep-app .otoprep-qreview-question,
body.otoprep-app .otoprep-qreview-answers,
body.otoprep-app .otoprep-qreview-explanation{
  max-width:none;
}

body.otoprep-app .otoprep-qreview-question,
body.otoprep-app .otoprep-qreview-answers > div,
body.otoprep-app .otoprep-qreview-explanation,
body.otoprep-app .otoprep-qreview-explanation--tutor .ays-qm-tutor-card-section-content,
body.otoprep-app .otoprep-qreview-explanation--tutor .ays-qm-tutor-card-legacy{
  overflow-wrap:break-word;
}

body.otoprep-app .otoprep-qreview-question img,
body.otoprep-app .otoprep-qreview-answers img,
body.otoprep-app .otoprep-qreview-explanation img,
body.otoprep-app .otoprep-qreview-explanation--tutor img{
  max-width:100%;
  height:auto;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box{
  justify-content:center;
  margin:8px 0 18px;
  padding-top:4px;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box .ays-quiz-questions-nav-bookmark-box,
body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar{
  justify-content:center;
}

body.otoprep-app.otoprep-view-quiz.otoprep-has-timer .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar{
  top:auto !important;
  right:auto !important;
}

body.otoprep-app .ays-quiz-question-state-box.otoprep-mark-toolbar-ready > .ays-question-review-later-toggle{
  display:none !important;
}

@media (max-width: 782px){
  body.otoprep-app.otoprep-view-result .otoprep-shell{
    padding:10px 10px 90px;
  }

  body.otoprep-app.otoprep-view-result .otoprep-card--review{
    padding:12px;
  }

  body.otoprep-app.otoprep-view-result details.otoprep-qreview > summary{
    padding:14px 12px;
  }

  body.otoprep-app.otoprep-view-result .otoprep-qreview-body{
    padding:14px 12px;
  }

  body.otoprep-app.otoprep-view-result .otoprep-qreview-answers > div,
  body.otoprep-app.otoprep-view-result .otoprep-qreview-explanation{
    padding:12px 13px;
  }

  body.otoprep-app .otoprep-qreview-summary__right{
    gap:8px;
  }

  body.otoprep-app .otoprep-qreview-summary__hint{
    font-size:11px;
  }

  body.otoprep-app .otoprep-results-review__title{
    font-size:24px;
  }
}


/* --------------------------------------------------------------------- */
/* Follow-up polish (21.7.17.5.71)                                       */
/* --------------------------------------------------------------------- */

body.otoprep-app.otoprep-view-result .otoprep-shell{
  max-width:1360px;
  padding:12px 10px 90px;
}

body.otoprep-app.otoprep-view-result .otoprep-card--review{
  padding:14px;
}

body.otoprep-app .otoprep-results-review__hint{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 14px;
  border-radius:14px;
  border:1px solid rgba(16,117,188,.14);
  background:rgba(16,117,188,.06);
}

body.otoprep-app .otoprep-results-review__hint::before{
  content:"↕";
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:24px;
  height:24px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(16,117,188,.14);
  color:var(--otoprep-blue);
  font-weight:900;
  flex:0 0 auto;
}

body.otoprep-app details.otoprep-qreview > summary{
  cursor:pointer;
  transition:background .16s ease;
}

body.otoprep-app details.otoprep-qreview > summary:hover{
  background:linear-gradient(180deg, rgba(16,117,188,.11) 0%, rgba(16,117,188,.05) 100%);
}

body.otoprep-app details.otoprep-qreview > summary:focus-visible{
  outline:2px solid rgba(16,117,188,.45);
  outline-offset:2px;
}

body.otoprep-app .otoprep-qreview-summary__right{
  flex:0 0 auto;
}

body.otoprep-app .otoprep-qreview-summary__hint{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  border:1px solid rgba(16,117,188,.14);
  background:#fff;
  color:var(--otoprep-blue);
}

body.otoprep-app .otoprep-qreview-body{
  padding:16px 14px;
}

body.otoprep-app .otoprep-qreview-answers > div,
body.otoprep-app .otoprep-qreview-explanation{
  padding:13px 14px;
}

body.otoprep-app .otoprep-qreview-explanation--tutor .ays-qm-tutor-card-header,
body.otoprep-app .otoprep-qreview-explanation--tutor .ays-qm-tutor-card-body,
body.otoprep-app .otoprep-qreview-explanation--tutor .ays-qm-tutor-card-footer{
  padding-left:14px;
  padding-right:14px;
}

body.otoprep-app.otoprep-view-quiz .ays-question-counter{
  margin:0 0 10px;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box{
  margin:10px 0 20px;
  clear:both;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar{
  row-gap:10px;
}

body.otoprep-app.otoprep-view-quiz.otoprep-mode-exam .ays_check_answer,
body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed .ays_check_answer,
body.otoprep-app.otoprep-view-quiz.otoprep-mode-exam .right_answer_text,
body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed .right_answer_text,
body.otoprep-app.otoprep-view-quiz.otoprep-mode-exam .wrong_answer_text,
body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed .wrong_answer_text,
body.otoprep-app.otoprep-view-quiz.otoprep-mode-exam .ays_questtion_explanation,
body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed .ays_questtion_explanation{
  display:none !important;
}

@media (max-width: 782px){
  body.otoprep-app.otoprep-view-result .otoprep-shell{
    padding:8px 6px 90px;
  }

  body.otoprep-app.otoprep-view-result .otoprep-card--review{
    padding:10px;
  }

  body.otoprep-app .otoprep-results-review__hint{
    padding:10px 11px;
    gap:8px;
  }

  body.otoprep-app.otoprep-view-result details.otoprep-qreview > summary{
    padding:12px 10px;
  }

  body.otoprep-app.otoprep-view-result .otoprep-qreview-body{
    padding:12px 10px;
  }

  body.otoprep-app.otoprep-view-result .otoprep-qreview-answers > div,
  body.otoprep-app.otoprep-view-result .otoprep-qreview-explanation{
    padding:11px 10px;
  }

  body.otoprep-app .otoprep-qreview-summary__hint{
    min-height:24px;
    padding:0 8px;
  }
}


/* --------------------------------------------------------------------- */
/* 21.7.17.5.72 follow-up polish                                         */
/* --------------------------------------------------------------------- */

body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box{
  margin:16px 0 30px !important;
  padding-top:10px !important;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar{
  margin-top:12px !important;
  margin-bottom:6px !important;
  gap:18px !important;
  row-gap:12px !important;
}

body.otoprep-app .otoprep-mark-item{
  gap:7px !important;
  flex:0 0 68px !important;
  max-width:68px !important;
}

body.otoprep-app .otoprep-mark-item__icon{
  width:48px !important;
  height:48px !important;
  overflow:hidden;
}

body.otoprep-app .otoprep-mark-item--flag .ays-navbar-bookmark{
  position:absolute;
  inset:0;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  opacity:0.01;
}

body.otoprep-app .otoprep-mark-item--flag .otoprep-mark-item__icon::before,
body.otoprep-app .otoprep-mark-item--review .otoprep-mark-item__icon::before{
  content:"";
  position:absolute;
  left:50%;
  top:50%;
  transform:translate(-50%,-50%);
  display:block;
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
}

body.otoprep-app .otoprep-mark-item--flag .otoprep-mark-item__icon::before{
  width:24px;
  height:24px;
  background-image:url("../images/bookmark-empty.svg");
}

body.otoprep-app .otoprep-mark-item--flag.is-on .otoprep-mark-item__icon::before{
  background-image:url("../images/bookmark-filled.svg");
}

body.otoprep-app .otoprep-mark-item--review .otoprep-mark-item__icon::before{
  width:25px;
  height:25px;
  background-image:url("../images/review-later-outline.svg");
}

body.otoprep-app .otoprep-mark-item--review.is-on .otoprep-mark-item__icon::before{
  background-image:url("../images/review-later-filled.svg");
}

body.otoprep-app .otoprep-mark-item--review .ays-question-review-later-toggle{
  opacity:0.01 !important;
}

body.otoprep-app .otoprep-card--review details.otoprep-qreview{
  display:block !important;
  border:1px solid rgba(16,117,188,.18) !important;
  border-radius:18px !important;
  overflow:hidden !important;
  background:#fff !important;
  box-shadow:0 10px 24px rgba(16,117,188,.08) !important;
}

body.otoprep-app .otoprep-card--review details.otoprep-qreview > summary{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:12px !important;
  padding:15px 16px !important;
  background:linear-gradient(180deg, rgba(16,117,188,.12) 0%, rgba(16,117,188,.06) 100%) !important;
  cursor:pointer !important;
}

body.otoprep-app .otoprep-card--review details.otoprep-qreview[open] > summary{
  border-bottom:1px solid rgba(16,117,188,.10) !important;
}

body.otoprep-app .otoprep-qreview-summary__left,
body.otoprep-app .otoprep-qreview-summary__right{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
}

body.otoprep-app .otoprep-qreview-summary__right{
  margin-left:auto;
}

body.otoprep-app .otoprep-qreview-summary__hint{
  display:none !important;
}

body.otoprep-app .otoprep-qreview-summary__chevron{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:30px !important;
  height:30px !important;
  border:1px solid rgba(16,117,188,.18) !important;
  border-radius:999px !important;
  background:#fff !important;
  color:var(--otoprep-blue) !important;
  font-size:18px !important;
  font-weight:900 !important;
  line-height:1 !important;
  transition:transform .18s ease;
}

body.otoprep-app details.otoprep-qreview[open] .otoprep-qreview-summary__chevron{
  transform:rotate(180deg);
}

body.otoprep-app .otoprep-qreview-stamp{
  display:inline-flex !important;
  flex-direction:column !important;
  gap:2px !important;
  line-height:1.15 !important;
  max-width:min(100%, 440px) !important;
}

body.otoprep-app .otoprep-qreview-stamp__line{
  display:block;
}

@media (max-width: 782px){
  body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box{
    margin:14px 0 26px !important;
  }

  body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar{
    gap:16px !important;
    row-gap:12px !important;
  }

  body.otoprep-app .otoprep-mark-item{
    flex:0 0 64px !important;
    max-width:64px !important;
  }

  body.otoprep-app .otoprep-mark-item__icon{
    width:46px !important;
    height:46px !important;
  }
}


/* --------------------------------------------------------------------- */
/* 21.7.17.5.73 explanation width + watermark readability                */
/* --------------------------------------------------------------------- */

body.otoprep-app.otoprep-view-result .otoprep-card--watermarked .otoprep-watermark{
  z-index:0 !important;
  mix-blend-mode:normal !important;
}

body.otoprep-app.otoprep-view-result .otoprep-card--watermarked .otoprep-watermark__content{
  position:relative;
  z-index:1 !important;
}

body.otoprep-app.otoprep-view-result .otoprep-qreview-stamp{
  z-index:0 !important;
  mix-blend-mode:normal !important;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  letter-spacing:.01em;
}

body.otoprep-app.otoprep-view-result .otoprep-qreview-body > *:not(.otoprep-qreview-stamp){
  position:relative;
  z-index:1 !important;
}

body.otoprep-app.otoprep-view-result .otoprep-results-review__title,
body.otoprep-app.otoprep-view-result .otoprep-qreview-question,
body.otoprep-app.otoprep-view-result .otoprep-qreview-answers > div,
body.otoprep-app.otoprep-view-result .otoprep-qreview-explanation,
body.otoprep-app.otoprep-view-result .otoprep-qreview-explanation--tutor .ays-qm-tutor-card-section-content,
body.otoprep-app.otoprep-view-result .otoprep-qreview-explanation--tutor .ays-qm-tutor-card-legacy{
  color:#16212B;
}

body.otoprep-app.otoprep-view-result .otoprep-results-review__intro{
  color:#536575;
}

body.otoprep-app.otoprep-view-result .otoprep-results-review__hint{
  color:#4E6576;
  background:rgba(16,117,188,.045);
  border-color:rgba(16,117,188,.10);
}

body.otoprep-app.otoprep-view-result .otoprep-qreview-explanation--tutor{
  margin-top:14px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
}

body.otoprep-app.otoprep-view-result .otoprep-qreview-explanation--tutor .ays-qm-tutor-card,
body.otoprep-app.otoprep-view-quiz .ays_questtion_explanation .ays-qm-tutor-card{
  width:100%;
  max-width:none;
  margin:0;
  box-sizing:border-box;
}

body.otoprep-app.otoprep-view-result .otoprep-qreview-explanation--tutor .ays-qm-tutor-card{
  border-radius:18px;
  box-shadow:0 10px 24px rgba(15, 23, 42, 0.05);
}

body.otoprep-app.otoprep-view-result .otoprep-qreview-explanation--tutor .ays-qm-tutor-card-header,
body.otoprep-app.otoprep-view-result .otoprep-qreview-explanation--tutor .ays-qm-tutor-card-body,
body.otoprep-app.otoprep-view-result .otoprep-qreview-explanation--tutor .ays-qm-tutor-card-footer,
body.otoprep-app.otoprep-view-quiz .ays_questtion_explanation .ays-qm-tutor-card-header,
body.otoprep-app.otoprep-view-quiz .ays_questtion_explanation .ays-qm-tutor-card-body,
body.otoprep-app.otoprep-view-quiz .ays_questtion_explanation .ays-qm-tutor-card-footer{
  padding-left:18px;
  padding-right:18px;
}

body.otoprep-app.otoprep-view-quiz .ays_questtion_explanation{
  width:100%;
  max-width:none;
  margin:14px 0 0;
}

body.otoprep-app.otoprep-view-quiz .ays_questtion_explanation .ays-qm-tutor-card{
  border-radius:18px;
}

@media (max-width: 782px){
  body.otoprep-app.otoprep-view-result .otoprep-qreview-explanation--tutor .ays-qm-tutor-card-header,
  body.otoprep-app.otoprep-view-result .otoprep-qreview-explanation--tutor .ays-qm-tutor-card-body,
  body.otoprep-app.otoprep-view-result .otoprep-qreview-explanation--tutor .ays-qm-tutor-card-footer,
  body.otoprep-app.otoprep-view-quiz .ays_questtion_explanation .ays-qm-tutor-card-header,
  body.otoprep-app.otoprep-view-quiz .ays_questtion_explanation .ays-qm-tutor-card-body,
  body.otoprep-app.otoprep-view-quiz .ays_questtion_explanation .ays-qm-tutor-card-footer{
    padding-left:14px;
    padding-right:14px;
  }
}

/* --------------------------------------------------------------------- */
/* 21.7.17.5.74 shared review UI + visible inline watermarks             */
/* --------------------------------------------------------------------- */

body.otoprep-app .otoprep-quiz-card--watermarked,
body.otoprep-app .otoprep-card--review{
  --otoprep-inline-wm-image:none;
  --otoprep-inline-wm-size:240px 150px;
  --otoprep-inline-wm-position:0 0;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-container .step[data-question-id] > .ays-abs-fs,
body.otoprep-app.otoprep-view-quiz .ays-quiz-container .step.ays-scenario-child-step > .ays-abs-fs,
body.otoprep-app.otoprep-view-quiz .ays-quiz-container .step.ays-scenario-step > .ays-abs-fs{
  display:flex;
  flex-direction:column;
  gap:14px;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_quiz_question{
  margin:0 0 2px;
  padding:20px 20px 18px;
  border:1px solid rgba(16,117,188,.12);
  border-radius:24px;
  background-color:rgba(239,246,252,.9);
  background-image:var(--otoprep-inline-wm-image);
  background-repeat:repeat;
  background-size:var(--otoprep-inline-wm-size);
  background-position:var(--otoprep-inline-wm-position);
  box-shadow:0 10px 26px rgba(16,117,188,.08);
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_quiz_question p:last-child,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .right_answer_text p:last-child,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .wrong_answer_text p:last-child,
body.otoprep-app.otoprep-view-result .otoprep-qreview-answers > div p:last-child,
body.otoprep-app.otoprep-view-result .otoprep-qreview-explanation p:last-child{
  margin-bottom:0;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers{
  display:grid;
  gap:12px;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field{
  margin:0;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .right_answer_text,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .wrong_answer_text,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation,
body.otoprep-app.otoprep-view-result .otoprep-qreview-answers > div,
body.otoprep-app.otoprep-view-result .otoprep-qreview-explanation,
body.otoprep-app.otoprep-view-result .otoprep-qreview-explanation--tutor .ays-qm-tutor-card,
body.otoprep-app.otoprep-view-result details.otoprep-qreview,
body.otoprep-app.otoprep-view-result .otoprep-qreview-body{
  background-image:var(--otoprep-inline-wm-image);
  background-repeat:repeat;
  background-size:var(--otoprep-inline-wm-size);
  background-position:var(--otoprep-inline-wm-position);
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .right_answer_text,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .wrong_answer_text,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation{
  margin-top:0;
  padding:18px 18px 16px;
  border-radius:22px;
  border:1px solid rgba(16,117,188,.12);
  background-color:#fff;
  box-shadow:0 10px 24px rgba(15,23,42,.05);
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .right_answer_text{
  background-color:rgba(239,246,252,.9);
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .wrong_answer_text{
  background-color:rgba(255,246,246,.92);
  border-color:rgba(185,77,98,.16);
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation .ays-qm-tutor-card,
body.otoprep-app.otoprep-view-result .otoprep-qreview-explanation--tutor .ays-qm-tutor-card{
  background-color:rgba(255,255,255,.94);
  background-image:var(--otoprep-inline-wm-image);
  background-repeat:repeat;
  background-size:var(--otoprep-inline-wm-size);
  background-position:var(--otoprep-inline-wm-position);
}

body.otoprep-app.otoprep-view-result details.otoprep-qreview{
  background-color:rgba(233,243,251,.86);
}

body.otoprep-app.otoprep-view-result .otoprep-qreview-body{
  background-color:rgba(255,255,255,.96);
}

body.otoprep-app.otoprep-view-result .otoprep-qreview-answers > div{
  background-color:rgba(239,246,252,.9);
}

body.otoprep-app.otoprep-view-result .otoprep-qreview-explanation{
  background-color:rgba(255,255,255,.94);
}

@media (max-width: 782px){
  body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_quiz_question,
  body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .right_answer_text,
  body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .wrong_answer_text,
  body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation{
    padding:16px 14px;
    border-radius:20px;
  }
}


/* --------------------------------------------------------------------- */
/* 21.7.17.5.75 watermark visibility tune                                */
/* --------------------------------------------------------------------- */

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_quiz_question,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .right_answer_text,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .wrong_answer_text,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation .ays-qm-tutor-card,
body.otoprep-app.otoprep-view-result .otoprep-qreview-answers > div,
body.otoprep-app.otoprep-view-result .otoprep-qreview-explanation,
body.otoprep-app.otoprep-view-result .otoprep-qreview-explanation--tutor .ays-qm-tutor-card,
body.otoprep-app.otoprep-view-result .otoprep-qreview-body,
body.otoprep-app.otoprep-view-result details.otoprep-qreview,
body.otoprep-app.otoprep-view-quiz .ays-review-before-submit-page,
body.otoprep-app.otoprep-view-quiz .ays-review-before-submit-card,
body.otoprep-app.otoprep-view-quiz .ays-review-before-submit-map-item{
  background-blend-mode:multiply;
}

body.otoprep-app.otoprep-view-result details.otoprep-qreview > summary{
  background-image:linear-gradient(180deg, rgba(16,117,188,.12) 0%, rgba(16,117,188,.06) 100%), var(--otoprep-inline-wm-image) !important;
  background-repeat:no-repeat, repeat !important;
  background-size:auto, var(--otoprep-inline-wm-size) !important;
  background-position:0 0, var(--otoprep-inline-wm-position) !important;
  background-blend-mode:normal, multiply !important;
}


/* --------------------------------------------------------------------- */
/* 21.8.5 exam-player polish pass                                        */
/* --------------------------------------------------------------------- */

body.otoprep-app.otoprep-view-quiz{
  --otoprep-player-surface:#ffffff;
  --otoprep-player-surface-soft:#f8fafc;
  --otoprep-player-border:rgba(19,32,42,.08);
  --otoprep-player-border-strong:rgba(16,117,188,.18);
  --otoprep-player-shadow:0 16px 34px rgba(15,23,42,.08);
  --otoprep-player-shadow-soft:0 8px 20px rgba(15,23,42,.05);
  --otoprep-player-chip-bg:rgba(19,32,42,.04);
  --otoprep-question-font-size:18px;
  --otoprep-answer-font-size:16px;
  --otoprep-answer-radius:20px;
}

body.otoprep-app.otoprep-view-quiz.otoprep-textsize-lg{
  --otoprep-question-font-size:20px;
  --otoprep-answer-font-size:17px;
}

body.otoprep-app.otoprep-view-quiz.otoprep-textsize-xl{
  --otoprep-question-font-size:22px;
  --otoprep-answer-font-size:19px;
}

body.otoprep-app.otoprep-view-quiz .otoprep-shell{
  max-width:960px;
  padding-top:8px;
}

body.otoprep-app.otoprep-view-quiz .otoprep-topbar--quiz{
  margin-bottom:12px;
  padding:calc(10px + env(safe-area-inset-top)) 12px 10px;
  border-radius:20px;
  border:1px solid var(--otoprep-player-border);
  background:rgba(255,255,255,.92);
  box-shadow:0 10px 24px rgba(15,23,42,.06);
  backdrop-filter:blur(14px);
}

body.otoprep-app.otoprep-view-quiz .otoprep-topbar__row--quiz{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__left,
body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__right{
  display:flex;
  align-items:center;
  min-width:0;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__right{
  justify-content:flex-end;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__mid{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__eyebrow{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  min-width:0;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__back{
  min-height:40px;
  padding:8px 10px;
  border-radius:14px;
  border:1px solid var(--otoprep-player-border);
  background:#fff;
  color:var(--otoprep-ink);
  font-weight:900;
  box-shadow:none;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__mode{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:5px 10px;
  border-radius:999px;
  border:1px solid rgba(16,117,188,.18);
  background:rgba(16,117,188,.08);
  color:var(--otoprep-blue);
  font-size:12px;
  line-height:1;
  font-weight:900;
  letter-spacing:.01em;
}

body.otoprep-app.otoprep-view-quiz.otoprep-mode-exam .otoprep-quizbar__mode{
  border-color:rgba(19,32,42,.10);
  background:rgba(19,32,42,.05);
  color:var(--otoprep-ink);
}

body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed .otoprep-quizbar__mode{
  border-color:rgba(231,105,75,.28);
  background:rgba(231,105,75,.12);
  color:var(--otoprep-orange);
}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__sub{
  font-size:12px;
  line-height:1.3;
  color:var(--otoprep-muted);
  white-space:normal;
  overflow:visible;
  text-overflow:initial;
  margin:0;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__title{
  font-size:16px;
  line-height:1.25;
  font-weight:950;
  color:var(--otoprep-ink);
}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__bar{
  margin-top:0;
  height:5px;
  border-radius:999px;
  background:rgba(16,117,188,.10);
}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__barfill{
  border-radius:999px;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__meta{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__progress,
body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__timer,
body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__ai,
body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__textsize{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:8px 12px;
  border-radius:14px;
  border:1px solid var(--otoprep-player-border);
  background:#fff;
  color:var(--otoprep-ink);
  font-weight:900;
  font-size:13px;
  line-height:1;
  box-shadow:none;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__progress{
  letter-spacing:.01em;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__timer{
  min-width:78px;
}

body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed .otoprep-quizbar__timer{
  border-color:rgba(231,105,75,.24);
  background:rgba(231,105,75,.08);
  color:var(--otoprep-orange);
}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__ai{
  border-color:rgba(16,117,188,.18);
  background:rgba(16,117,188,.06);
  color:var(--otoprep-blue);
  cursor:pointer;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__textsize{
  min-width:44px;
  padding-inline:10px;
  cursor:pointer;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__marks{
  display:none !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-wrap{
  background:transparent;
  border:0;
  box-shadow:none;
  padding:0;
}

body.otoprep-app.otoprep-view-quiz .otoprep-card.otoprep-quiz-card{
  padding:22px 20px 24px;
  border-radius:26px;
  border:1px solid var(--otoprep-player-border);
  background:rgba(255,255,255,.98);
  box-shadow:var(--otoprep-player-shadow);
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-container .step[data-question-id] > .ays-abs-fs,
body.otoprep-app.otoprep-view-quiz .ays-quiz-container .step.ays-scenario-step > .ays-abs-fs,
body.otoprep-app.otoprep-view-quiz .ays-quiz-container .step.ays-scenario-child-step > .ays-abs-fs{
  gap:18px;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box{
  margin:0;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box .ays-quiz-questions-nav-bookmark-box,
body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar{
  justify-content:flex-start;
  gap:8px;
  margin:0 !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-mark-item{
  display:inline-flex;
  flex-direction:row;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
  max-width:none;
  min-height:40px;
  padding:4px 12px 4px 6px;
  border:1px solid var(--otoprep-player-border);
  border-radius:999px;
  background:#fff;
  box-shadow:var(--otoprep-player-shadow-soft);
}

body.otoprep-app.otoprep-view-quiz .otoprep-mark-item__icon{
  width:30px;
  height:30px;
  border-radius:999px;
  border:0;
  background:rgba(19,32,42,.06);
  box-shadow:none;
}

body.otoprep-app.otoprep-view-quiz .otoprep-mark-item__label{
  width:auto;
  min-height:0;
  font-size:12px;
  line-height:1;
  color:var(--otoprep-ink);
  font-weight:800;
  align-items:center;
  white-space:nowrap;
}

body.otoprep-app.otoprep-view-quiz .otoprep-mark-item--flag.is-on,
body.otoprep-app.otoprep-view-quiz .otoprep-mark-item--review.is-on,
body.otoprep-app.otoprep-view-quiz .otoprep-mark-item--unsure.is-on{
  border-color:rgba(16,117,188,.18);
  background:rgba(16,117,188,.06);
}

body.otoprep-app.otoprep-view-quiz .otoprep-mark-item--unsure.is-on{
  border-color:rgba(19,32,42,.18);
  background:rgba(19,32,42,.06);
}

body.otoprep-app.otoprep-view-quiz .otoprep-mark-item--flag.is-on .otoprep-mark-item__icon,
body.otoprep-app.otoprep-view-quiz .otoprep-mark-item--review.is-on .otoprep-mark-item__icon,
body.otoprep-app.otoprep-view-quiz .otoprep-mark-item--unsure.is-on .otoprep-mark-item__icon{
  background:rgba(255,255,255,.92);
}

body.otoprep-app.otoprep-view-quiz .otoprep-question-meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  margin:0 0 2px;
}

body.otoprep-app.otoprep-view-quiz .otoprep-question-chip{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:6px 12px;
  border-radius:999px;
  border:1px solid var(--otoprep-player-border);
  background:var(--otoprep-player-chip-bg);
  color:var(--otoprep-muted);
  font-size:12px;
  line-height:1;
  font-weight:850;
}

body.otoprep-app.otoprep-view-quiz .otoprep-question-chip--index,
body.otoprep-app.otoprep-view-quiz .otoprep-question-chip--mode{
  border-color:rgba(16,117,188,.18);
  background:rgba(16,117,188,.08);
  color:var(--otoprep-blue);
}

body.otoprep-app.otoprep-view-quiz.otoprep-mode-exam .otoprep-question-chip--mode{
  border-color:rgba(19,32,42,.10);
  background:rgba(19,32,42,.05);
  color:var(--otoprep-ink);
}

body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed .otoprep-question-chip--mode{
  border-color:rgba(231,105,75,.28);
  background:rgba(231,105,75,.10);
  color:var(--otoprep-orange);
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_quiz_question{
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  font-size:var(--otoprep-question-font-size) !important;
  line-height:1.68 !important;
  font-weight:700;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_quiz_question p,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_quiz_question li,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_quiz_question td,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_quiz_question blockquote{
  font-size:1em !important;
  line-height:1.68 !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_quiz_question strong{
  font-weight:800;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers{
  display:grid;
  gap:12px;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field{
  position:relative;
  margin:0;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > input[type="radio"],
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > input[type="checkbox"]{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field .answer-icon{
  display:none !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > label.otoprep-answer__label{
  display:flex !important;
  align-items:flex-start;
  gap:14px;
  width:100%;
  min-height:56px;
  margin:0 !important;
  padding:16px 18px !important;
  border:1px solid var(--otoprep-player-border) !important;
  border-radius:var(--otoprep-answer-radius) !important;
  background:var(--otoprep-player-surface) !important;
  box-shadow:var(--otoprep-player-shadow-soft) !important;
  color:var(--otoprep-ink) !important;
  font-size:var(--otoprep-answer-font-size) !important;
  font-weight:650;
  line-height:1.55 !important;
  text-align:left !important;
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease, transform .18s ease;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > label.otoprep-answer__label::before,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > label.otoprep-answer__label::after{
  content:none !important;
  display:none !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-answer__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  flex:0 0 32px;
  border-radius:999px;
  border:1px solid rgba(19,32,42,.10);
  background:var(--otoprep-player-surface-soft);
  color:var(--otoprep-ink);
  font-size:13px;
  line-height:1;
  font-weight:900;
  margin-top:1px;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field:hover > label.otoprep-answer__label{
  border-color:rgba(16,117,188,.22) !important;
  box-shadow:0 12px 24px rgba(16,117,188,.08) !important;
  transform:translateY(-1px);
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field.is-selected > label.otoprep-answer__label,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > input[type="radio"]:checked + label.otoprep-answer__label,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > input[type="checkbox"]:checked + label.otoprep-answer__label{
  border-color:rgba(16,117,188,.36) !important;
  background:rgba(16,117,188,.06) !important;
  box-shadow:0 0 0 3px rgba(16,117,188,.10), 0 14px 28px rgba(16,117,188,.10) !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field.is-selected > label.otoprep-answer__label .otoprep-answer__badge,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > input[type="radio"]:checked + label.otoprep-answer__label .otoprep-answer__badge,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > input[type="checkbox"]:checked + label.otoprep-answer__label .otoprep-answer__badge{
  border-color:rgba(16,117,188,.24);
  background:#fff;
  color:var(--otoprep-blue);
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > input[type="radio"]:focus-visible + label.otoprep-answer__label,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > input[type="checkbox"]:focus-visible + label.otoprep-answer__label{
  box-shadow:0 0 0 4px rgba(16,117,188,.16), var(--otoprep-player-shadow-soft) !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field.is-correct > label.otoprep-answer__label,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > label.otoprep-answer__label.answered.correct{
  border-color:rgba(22,163,74,.28) !important;
  background:rgba(22,163,74,.08) !important;
  color:#14532d !important;
  box-shadow:none !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field.is-wrong > label.otoprep-answer__label,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > label.otoprep-answer__label.answered.wrong{
  border-color:rgba(220,38,38,.24) !important;
  background:rgba(220,38,38,.06) !important;
  color:#7f1d1d !important;
  box-shadow:none !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field.is-correct > label.otoprep-answer__label .otoprep-answer__badge,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > label.otoprep-answer__label.answered.correct .otoprep-answer__badge{
  border-color:rgba(22,163,74,.24);
  background:#fff;
  color:#166534;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field.is-wrong > label.otoprep-answer__label .otoprep-answer__badge,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > label.otoprep-answer__label.answered.wrong .otoprep-answer__badge{
  border-color:rgba(220,38,38,.20);
  background:#fff;
  color:#991b1b;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > label.ays_answer_image{
  display:block;
  margin:10px 0 0 50px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-answer-image{
  display:block;
  max-width:100%;
  border-radius:16px;
}

body.otoprep-app.otoprep-view-quiz [id^="ays-quiz-questions-nav-wrap-"] a.ays_questions_nav_question{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:40px;
  min-height:40px;
  border-radius:12px !important;
  font-weight:850;
  box-shadow:none !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .right_answer_text,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .wrong_answer_text,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation{
  margin-top:2px;
  padding:18px 18px 16px;
  border-radius:20px;
  border:1px solid var(--otoprep-player-border);
  background:#fff;
  box-shadow:none;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .right_answer_text{
  border-color:rgba(22,163,74,.18);
  background:rgba(22,163,74,.05);
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .wrong_answer_text{
  border-color:rgba(220,38,38,.16);
  background:rgba(220,38,38,.04);
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation{
  background:rgba(248,250,252,.95);
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-container .ays_buttons_div{
  position:sticky;
  bottom:calc(10px + env(safe-area-inset-bottom));
  gap:10px;
  padding:10px;
  border-radius:18px;
  border:1px solid var(--otoprep-player-border);
  background:rgba(255,255,255,.94);
  box-shadow:0 16px 32px rgba(15,23,42,.08);
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-container .ays_buttons_div i.ays_arrow,
body.otoprep-app.otoprep-view-quiz .ays-quiz-container .ays_buttons_div i.action-button{
  display:none !important;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.action-button,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.action-button,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_previous,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_next,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_finish{
  min-height:48px;
  border-radius:14px !important;
  box-shadow:none !important;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_previous,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_previous{
  flex:0 1 auto;
  min-width:112px;
  background:#fff !important;
  color:var(--otoprep-ink) !important;
  border:1px solid var(--otoprep-player-border) !important;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_next:not(.ays_finish),
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_next:not(.ays_finish){
  flex:1 1 220px;
  background:var(--otoprep-qs-btn-bg) !important;
  color:var(--otoprep-qs-btn-text) !important;
  border:1px solid var(--otoprep-qs-btn-border) !important;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_finish,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_finish{
  flex:1 1 220px;
  background:var(--otoprep-qs-finish-bg) !important;
  color:var(--otoprep-qs-finish-text) !important;
  border:1px solid var(--otoprep-qs-finish-border) !important;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_clear_answer,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_early_finish,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_clear_answer,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_early_finish{
  flex:0 1 auto;
  min-width:auto;
  padding-inline:14px;
  background:transparent !important;
  color:var(--otoprep-muted) !important;
  border:1px solid var(--otoprep-player-border) !important;
}

@media (max-width: 860px){
  body.otoprep-app.otoprep-view-quiz .otoprep-topbar__row--quiz{
    grid-template-columns:auto minmax(0,1fr);
  }

  body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__right{
    grid-column:1 / -1;
    justify-content:space-between;
  }

  body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__meta{
    width:100%;
    justify-content:flex-start;
  }
}

@media (max-width: 640px){
  body.otoprep-app.otoprep-view-quiz .otoprep-card.otoprep-quiz-card{
    padding:16px 14px 20px;
    border-radius:22px;
  }

  body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__title{
    font-size:15px;
  }

  body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__sub{
    font-size:11px;
  }

  body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__progress,
  body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__timer,
  body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__ai,
  body.otoprep-app.otoprep-view-quiz .otoprep-quizbar__textsize{
    min-height:36px;
    padding:7px 10px;
    border-radius:12px;
  }

  body.otoprep-app.otoprep-view-quiz .otoprep-question-meta{
    gap:6px;
  }

  body.otoprep-app.otoprep-view-quiz .otoprep-question-chip{
    min-height:28px;
    padding:6px 10px;
    font-size:11px;
  }

  body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > label.otoprep-answer__label{
    min-height:52px;
    padding:14px 14px !important;
    gap:12px;
  }

  body.otoprep-app.otoprep-view-quiz .otoprep-answer__badge{
    width:30px;
    height:30px;
    flex-basis:30px;
  }

  body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > label.ays_answer_image{
    margin-left:42px !important;
  }

  body.otoprep-app.otoprep-view-quiz .ays-quiz-container .ays_buttons_div{
    padding:8px;
  }

  body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_previous,
  body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_previous{
    min-width:96px;
  }
}

/* --------------------------------------------------------------------- */
/* 21.8.6 exam-player follow-up fixes                                    */
/* --------------------------------------------------------------------- */

body.otoprep-app.otoprep-view-quiz .otoprep-topbar--quiz{
  background:linear-gradient(180deg, rgba(229,242,250,.97) 0%, rgba(244,249,253,.96) 100%) !important;
  border:1px solid rgba(16,117,188,.16) !important;
  box-shadow:0 14px 30px rgba(16,117,188,.10) !important;
  backdrop-filter:blur(18px) !important;
  -webkit-backdrop-filter:blur(18px) !important;
}

body.otoprep-app.otoprep-view-quiz [id^="ays-quiz-questions-nav-wrap-"]{
  margin:0 0 18px !important;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box{
  display:block !important;
  clear:both !important;
  width:100% !important;
  margin:18px 0 14px !important;
  padding:0 !important;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  justify-content:stretch !important;
  align-items:start !important;
  width:100% !important;
  gap:12px !important;
  row-gap:12px !important;
  margin:14px 0 0 !important;
  padding-top:2px !important;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar .otoprep-mark-item{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:8px !important;
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  min-height:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar .otoprep-mark-item__icon{
  width:44px !important;
  height:44px !important;
  border-radius:999px !important;
  border:1px solid rgba(16,117,188,.12) !important;
  background:rgba(255,255,255,.96) !important;
  box-shadow:0 8px 18px rgba(15,23,42,.06) !important;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar .otoprep-mark-item__label{
  width:100% !important;
  min-height:0 !important;
  font-size:12px !important;
  line-height:1.2 !important;
  text-align:center !important;
  color:var(--otoprep-ink) !important;
  font-weight:800 !important;
  white-space:normal !important;
  align-items:flex-start !important;
  justify-content:center !important;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar .otoprep-mark-item--flag.is-on .otoprep-mark-item__icon,
body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar .otoprep-mark-item--review.is-on .otoprep-mark-item__icon{
  background:rgba(16,117,188,.10) !important;
  border-color:rgba(16,117,188,.28) !important;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar .otoprep-mark-item--unsure.is-on .otoprep-mark-item__icon{
  background:rgba(19,32,42,.88) !important;
  border-color:rgba(19,32,42,.88) !important;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-some-items-icons-wrap{
  display:flex !important;
  align-items:flex-start !important;
  justify-content:space-between !important;
  gap:12px !important;
  padding:0 0 14px !important;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-full-screen-wrap{
  flex:0 0 auto !important;
  padding:0 !important;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-full-screen-container{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:44px !important;
  height:44px !important;
  border-radius:14px !important;
  border:1px solid rgba(16,117,188,.14) !important;
  background:#fff !important;
  box-shadow:none !important;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-full-screen-container svg,
body.otoprep-app.otoprep-view-quiz .ays-quiz-full-screen-container img{
  width:18px !important;
  height:18px !important;
}

body.otoprep-app.otoprep-view-quiz .ays-qm-draft-toolbar{
  display:flex !important;
  flex:1 1 260px !important;
  align-items:stretch !important;
  justify-content:flex-start !important;
  gap:8px !important;
  margin:0 !important;
  padding:0 !important;
}

body.otoprep-app.otoprep-view-quiz .ays-qm-draft-save-exit{
  width:100% !important;
  min-height:46px !important;
  padding:0 18px !important;
  border-radius:14px !important;
  border:1px solid rgba(16,117,188,.24) !important;
  background:rgba(16,117,188,.08) !important;
  color:var(--otoprep-blue) !important;
  box-shadow:none !important;
}

body.otoprep-app.otoprep-view-quiz .ays-qm-draft-save-exit:hover,
body.otoprep-app.otoprep-view-quiz .ays-qm-draft-save-exit:focus{
  background:rgba(16,117,188,.12) !important;
  border-color:rgba(16,117,188,.34) !important;
  color:var(--otoprep-blue) !important;
}

body.otoprep-app.otoprep-view-quiz .ays-qm-draft-status{
  text-align:center !important;
  color:var(--otoprep-muted) !important;
  font-size:13px !important;
  font-weight:700 !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation{
  margin-top:14px !important;
  padding:12px !important;
  border-radius:22px !important;
  border:1px solid rgba(16,117,188,.14) !important;
  background:rgba(233,243,251,.86) !important;
  box-shadow:0 10px 24px rgba(16,117,188,.08) !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation .ays-qm-tutor-card{
  border:1px solid rgba(16,117,188,.12) !important;
  border-radius:18px !important;
  background:rgba(255,255,255,.96) !important;
  box-shadow:none !important;
  overflow:hidden !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation .ays-qm-tutor-card-header,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation .ays-qm-tutor-card-body,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation .ays-qm-tutor-card-footer{
  padding-left:18px !important;
  padding-right:18px !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation .ays-qm-tutor-card-header{
  padding-top:16px !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation .ays-qm-tutor-card-body{
  padding-top:12px !important;
  padding-bottom:18px !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation .ays-qm-tutor-card-footer{
  padding-bottom:18px !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation .ays-qm-tutor-card-kicker{
  color:#4E6576 !important;
  letter-spacing:.06em !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation .ays-qm-tutor-card-section-takeaway{
  border:1px solid rgba(16,117,188,.10) !important;
  background:rgba(16,117,188,.07) !important;
}

@media (max-width: 782px){
  body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box{
    margin:16px 0 12px !important;
  }

  body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar{
    gap:10px !important;
    row-gap:12px !important;
  }

  body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar .otoprep-mark-item__icon{
    width:42px !important;
    height:42px !important;
  }

  body.otoprep-app.otoprep-view-quiz .ays-qm-draft-toolbar{
    flex-direction:column !important;
  }

  body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation{
    padding:10px !important;
  }

  body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation .ays-qm-tutor-card-header,
  body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation .ays-qm-tutor-card-body,
  body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation .ays-qm-tutor-card-footer{
    padding-left:14px !important;
    padding-right:14px !important;
  }
}



/* --------------------------------------------------------------------- */
/* 21.8.7 save/submit follow-up tweaks                                   */
/* --------------------------------------------------------------------- */

body.otoprep-app.otoprep-view-quiz .ays-quiz-some-items-icons-wrap{
  padding-top:8px !important;
}

body.otoprep-app.otoprep-view-quiz .ays-qm-draft-save-exit{
  border:2px solid rgba(16,117,188,.30) !important;
  background:rgba(233,243,251,.76) !important;
}

body.otoprep-app.otoprep-view-quiz .ays-qm-draft-save-exit:hover,
body.otoprep-app.otoprep-view-quiz .ays-qm-draft-save-exit:focus{
  border-color:rgba(16,117,188,.38) !important;
  background:rgba(233,243,251,.92) !important;
}

/* --------------------------------------------------------------------- */
/* 21.8.8 centered meta chips + tutor watermark parity                   */
/* --------------------------------------------------------------------- */

body.otoprep-app.otoprep-view-quiz .otoprep-question-meta{
  justify-content:center !important;
  text-align:center !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation .ays-qm-tutor-card{
  background-color:rgba(255,255,255,.94) !important;
  background-image:var(--otoprep-inline-wm-image) !important;
  background-repeat:repeat !important;
  background-size:var(--otoprep-inline-wm-size) !important;
  background-position:var(--otoprep-inline-wm-position) !important;
  background-blend-mode:multiply !important;
}


/* 21.8.10 question crowd stats / answer distribution                    */
body.otoprep-app .otoprep-crowd-stats-slot:empty{
  display:none;
}
body.otoprep-app .otoprep-crowd-stats{
  margin-top:18px;
  padding:16px 16px 14px;
  border:1px solid rgba(16,117,188,.14);
  border-radius:18px;
  background:
    linear-gradient(180deg, rgba(16,117,188,.05) 0%, rgba(16,117,188,.02) 100%),
    #fff;
  box-shadow:0 10px 24px rgba(16,117,188,.06);
}
body.otoprep-app .otoprep-crowd-stats__header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:14px;
}
body.otoprep-app .otoprep-crowd-stats__title{
  margin:0;
  font-size:15px;
  line-height:1.2;
  font-weight:900;
  color:#16212B;
}
body.otoprep-app .otoprep-crowd-stats__meta{
  margin:4px 0 0;
  font-size:13px;
  line-height:1.45;
  color:#5C6D7C;
}
body.otoprep-app .otoprep-crowd-stats__grid{
  display:grid;
  grid-template-columns:96px minmax(0,1fr);
  gap:14px;
  align-items:start;
}
body.otoprep-app .otoprep-crowd-stats__chart-wrap{
  display:flex;
  align-items:center;
  justify-content:center;
}
body.otoprep-app .otoprep-crowd-stats__chart{
  position:relative;
  width:88px;
  height:88px;
  border-radius:999px;
  box-shadow:inset 0 0 0 1px rgba(16,117,188,.08);
}
body.otoprep-app .otoprep-crowd-stats__chart::after{
  content:"";
  position:absolute;
  inset:14px;
  border-radius:999px;
  background:#fff;
  box-shadow:inset 0 0 0 1px rgba(16,117,188,.08);
}
body.otoprep-app .otoprep-crowd-stats__chart-inner{
  position:absolute;
  inset:18px;
  z-index:1;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  color:#16212B;
}
body.otoprep-app .otoprep-crowd-stats__chart-inner strong{
  display:block;
  font-size:20px;
  line-height:1;
  font-weight:900;
}
body.otoprep-app .otoprep-crowd-stats__chart-inner span{
  display:block;
  margin-top:4px;
  font-size:11px;
  line-height:1.1;
  font-weight:700;
  color:#5C6D7C;
  text-transform:uppercase;
  letter-spacing:.02em;
}
body.otoprep-app .otoprep-crowd-stats__legend{
  list-style:none;
  margin:0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:9px;
}
body.otoprep-app .otoprep-crowd-stats__legend-item{
  display:grid;
  grid-template-columns:12px 26px minmax(0,1fr) auto;
  align-items:center;
  gap:10px;
  font-size:13px;
  line-height:1.4;
  color:#16212B;
}
body.otoprep-app .otoprep-crowd-stats__legend-swatch{
  width:12px;
  height:12px;
  border-radius:999px;
  box-shadow:0 0 0 1px rgba(16,117,188,.08);
}
body.otoprep-app .otoprep-crowd-stats__legend-choice{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:26px;
  min-height:26px;
  border-radius:999px;
  border:1px solid rgba(16,117,188,.14);
  background:rgba(255,255,255,.9);
  font-size:12px;
  font-weight:900;
  color:#16212B;
}
body.otoprep-app .otoprep-crowd-stats__legend-text{
  min-width:0;
  font-weight:700;
  color:#16212B;
}
body.otoprep-app .otoprep-crowd-stats__legend-pct{
  font-weight:900;
  color:#1075BC;
  white-space:nowrap;
}
body.otoprep-app .otoprep-crowd-stats__legend-pill{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:22px;
  padding:3px 9px;
  border-radius:999px;
  font-size:11px;
  line-height:1;
  font-weight:900;
  white-space:nowrap;
}
body.otoprep-app .otoprep-crowd-stats__legend-pill--correct{
  border:1px solid rgba(48,163,95,.22);
  background:rgba(48,163,95,.12);
  color:#237347;
}
body.otoprep-app .otoprep-crowd-stats__legend-pill--you{
  border:1px solid rgba(16,117,188,.18);
  background:rgba(16,117,188,.10);
  color:#1075BC;
}
body.otoprep-app .otoprep-crowd-stats__foot{
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid rgba(16,117,188,.10);
  font-size:12px;
  line-height:1.5;
  color:#5C6D7C;
}
body.otoprep-app.otoprep-view-quiz .ays-qm-tutor-card .otoprep-crowd-stats{
  margin-top:20px;
}
body.otoprep-app .otoprep-qreview-body .otoprep-crowd-stats{
  position:relative;
  z-index:1;
}
@media (max-width: 767px){
  body.otoprep-app .otoprep-crowd-stats{
    padding:15px 14px 13px;
  }
  body.otoprep-app .otoprep-crowd-stats__grid{
    grid-template-columns:1fr;
    gap:12px;
  }
  body.otoprep-app .otoprep-crowd-stats__chart-wrap{
    justify-content:flex-start;
  }
  body.otoprep-app .otoprep-crowd-stats__legend-item{
    grid-template-columns:12px 26px minmax(0,1fr) auto;
    gap:8px;
  }
}


/* --------------------------------------------------------------------- */
/* 21.8.17 sticky quiz header solid-surface pass                         */
/* --------------------------------------------------------------------- */

body.otoprep-app.otoprep-view-quiz{
  --otoprep-player-topbar-bg-start:#edf6fc;
  --otoprep-player-topbar-bg-end:#f5f9fd;
  --otoprep-player-topbar-bg-solid:#f5f9fd;
}

body.otoprep-app.otoprep-view-quiz .otoprep-topbar--quiz{
  overflow:hidden;
  isolation:isolate;
  background:linear-gradient(180deg, var(--otoprep-player-topbar-bg-start) 0%, var(--otoprep-player-topbar-bg-end) 100%) !important;
  background-color:var(--otoprep-player-topbar-bg-solid) !important;
  background-clip:padding-box;
  border-color:rgba(16,117,188,.16) !important;
  box-shadow:0 14px 30px rgba(16,117,188,.10), inset 0 1px 0 rgba(255,255,255,.92) !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-topbar--quiz::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  border-radius:inherit;
  background:linear-gradient(180deg, var(--otoprep-player-topbar-bg-start) 0%, var(--otoprep-player-topbar-bg-end) 100%);
}

body.otoprep-app.otoprep-view-quiz .otoprep-topbar--quiz > *{
  position:relative;
  z-index:1;
}

@media (max-width: 640px){
  body.otoprep-app.otoprep-view-quiz .otoprep-topbar--quiz{
    background:var(--otoprep-player-topbar-bg-solid) !important;
    box-shadow:0 12px 24px rgba(16,117,188,.10), inset 0 1px 0 rgba(255,255,255,.9) !important;
  }

  body.otoprep-app.otoprep-view-quiz .otoprep-topbar--quiz::before{
    background:var(--otoprep-player-topbar-bg-solid);
  }
}


/* --------------------------------------------------------------------- */
/* 21.8.18 quiz sticky header stacking + solid-surface correction        */
/* --------------------------------------------------------------------- */

body.otoprep-app.otoprep-view-quiz .otoprep-topbar--quiz{
  z-index:1205 !important;
  position:sticky;
  top:0;
  isolation:isolate;
  background:#f5f9fd !important;
  background-image:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-topbar--quiz::before{
  background:#f5f9fd !important;
}

/* AYS quiz themes can put the active step on z-index:998; keep the quiz
   header above that layer so the question never paints through it. */
body.otoprep-app.otoprep-view-quiz .ays-quiz-container .step,
body.otoprep-app.otoprep-view-quiz .ays-quiz-container .step:first-of-type,
body.otoprep-app.otoprep-view-quiz .ays-quiz-container .step:last-of-type,
body.otoprep-app.otoprep-view-quiz .ays-quiz-container .step.ays-custom-step{
  z-index:auto !important;
}


/* --------------------------------------------------------------------- */
/* 21.8.19 quiz action icon visibility + empty feedback cleanup          */
/* --------------------------------------------------------------------- */

body.otoprep-app.otoprep-view-quiz{
  --otoprep-player-action-icon-blue:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%231075BC' d='M14.71 6.71a1 1 0 0 1 0 1.41L10.83 12l3.88 3.88a1 1 0 1 1-1.41 1.41l-4.59-4.59a1 1 0 0 1 0-1.41l4.59-4.59a1 1 0 0 1 1.41 0Z'/%3E%3C/svg%3E");
  --otoprep-player-action-icon-white:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M9.29 6.71a1 1 0 0 1 1.41 0l4.59 4.59a1 1 0 0 1 0 1.41l-4.59 4.59a1 1 0 1 1-1.41-1.41L13.17 12 9.29 8.12a1 1 0 0 1 0-1.41Z'/%3E%3C/svg%3E");
  --otoprep-player-finish-icon-white:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23ffffff' d='M5 2a1 1 0 0 1 1 1v17a1 1 0 1 1-2 0V3a1 1 0 0 1 1-1Z'/%3E%3Cpath fill='%23ffffff' d='M7 4h10a1 1 0 0 1 .8 1.6L16 8l1.8 2.4A1 1 0 0 1 17 12H7V4Z'/%3E%3Cpath fill='%230b1720' fill-opacity='.18' d='M12 4h5a1 1 0 0 1 .8 1.6L16 8l1.8 2.4A1 1 0 0 1 17 12h-5V8l2-4Z'/%3E%3Cpath fill='%230b1720' fill-opacity='.18' d='M7 8h5v4H7z'/%3E%3C/svg%3E");
  --otoprep-player-finish-icon-accent:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23e7694b' d='M5 2a1 1 0 0 1 1 1v17a1 1 0 1 1-2 0V3a1 1 0 0 1 1-1Z'/%3E%3Cpath fill='%23e7694b' d='M7 4h10a1 1 0 0 1 .8 1.6L16 8l1.8 2.4A1 1 0 0 1 17 12H7V4Z'/%3E%3Cpath fill='%23ffffff' fill-opacity='.9' d='M12 4h5a1 1 0 0 1 .8 1.6L16 8l1.8 2.4A1 1 0 0 1 17 12h-5V8l2-4Z'/%3E%3Cpath fill='%23ffffff' fill-opacity='.9' d='M7 8h5v4H7z'/%3E%3C/svg%3E");
  --otoprep-player-eraser-icon-muted:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%235c6d7c' d='m15.81 4.94 3.25 3.25a2 2 0 0 1 0 2.82l-6.58 6.58A2 2 0 0 1 11.07 18H6.93a2 2 0 0 1-1.41-.59l-1.58-1.58a2 2 0 0 1 0-2.82l7.04-7.07a2 2 0 0 1 2.83 0Zm.88 4.13-2.63-2.62L6 14.51 7.42 15.93h3.65l5.62-5.61Z'/%3E%3C/svg%3E");
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_previous,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_previous{
  color:var(--otoprep-blue) !important;
  border-color:rgba(16,117,188,.24) !important;
  background-color:#fff !important;
  background-image:var(--otoprep-player-action-icon-blue) !important;
  background-repeat:no-repeat !important;
  background-position:16px center !important;
  background-size:18px 18px !important;
  padding-left:44px !important;
  box-shadow:0 10px 22px rgba(16,117,188,.06) !important;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_next:not(.ays_finish),
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_next:not(.ays_finish){
  background-image:var(--otoprep-player-action-icon-white) !important;
  background-repeat:no-repeat !important;
  background-position:calc(100% - 16px) center !important;
  background-size:18px 18px !important;
  padding-right:44px !important;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_finish,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_finish{
  background-image:var(--otoprep-player-finish-icon-white) !important;
  background-repeat:no-repeat !important;
  background-position:calc(100% - 16px) center !important;
  background-size:18px 18px !important;
  padding-right:44px !important;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_early_finish,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_early_finish{
  background-image:var(--otoprep-player-finish-icon-accent) !important;
  background-repeat:no-repeat !important;
  background-position:16px center !important;
  background-size:18px 18px !important;
  padding-left:44px !important;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_clear_answer,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_clear_answer{
  background-image:var(--otoprep-player-eraser-icon-muted) !important;
  background-repeat:no-repeat !important;
  background-position:16px center !important;
  background-size:18px 18px !important;
  padding-left:44px !important;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_previous.action-button:not(.ays_display_none),
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_next.action-button:not(.ays_display_none),
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_finish.action-button:not(.ays_display_none),
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_early_finish.action-button:not(.ays_display_none),
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_clear_answer.action-button:not(.ays_display_none){
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  flex:0 0 48px;
  width:48px;
  height:48px;
  min-width:48px;
  min-height:48px;
  margin:0 !important;
  padding:0 !important;
  border-radius:14px !important;
  box-shadow:0 10px 22px rgba(15,23,42,.06) !important;
  font-size:0 !important;
  line-height:0 !important;
  text-indent:-9999px;
  overflow:hidden;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_previous.action-button:not(.ays_display_none),
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_clear_answer.action-button:not(.ays_display_none){
  border:1px solid rgba(16,117,188,.18) !important;
  background:#fff !important;
  color:var(--otoprep-blue) !important;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_next.action-button:not(.ays_finish):not(.ays_display_none),
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_next.ays_next_arrow.action-button:not(.ays_finish):not(.ays_display_none){
  border:1px solid var(--otoprep-qs-btn-border) !important;
  background:var(--otoprep-qs-btn-bg) !important;
  color:var(--otoprep-qs-btn-text) !important;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_finish.action-button:not(.ays_display_none),
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_early_finish.action-button:not(.ays_display_none){
  border:1px solid var(--otoprep-qs-finish-border) !important;
  background:var(--otoprep-qs-finish-bg) !important;
  color:var(--otoprep-qs-finish-text) !important;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_previous.action-button:not(.ays_display_none)::before,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_next.action-button:not(.ays_display_none)::before,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_finish.action-button:not(.ays_display_none)::before,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_early_finish.action-button:not(.ays_display_none)::before,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_clear_answer.action-button:not(.ays_display_none)::before{
  content:"";
  display:block;
  width:18px;
  height:18px;
  background-position:center;
  background-repeat:no-repeat;
  background-size:contain;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_previous.action-button:not(.ays_display_none)::before{
  background-image:var(--otoprep-player-action-icon-blue);
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_next.action-button:not(.ays_finish):not(.ays_display_none)::before{
  background-image:var(--otoprep-player-action-icon-white);
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_finish.action-button:not(.ays_display_none)::before,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_early_finish.action-button:not(.ays_display_none)::before{
  background-image:var(--otoprep-player-finish-icon-white);
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_clear_answer.action-button:not(.ays_display_none)::before{
  background-image:var(--otoprep-player-eraser-icon-muted);
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div .action-button:disabled,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div .action-button[disabled]{
  opacity:.65;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_previous.action-button[disabled]:not(.ays_display_none),
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_next.action-button[disabled]:not(.ays_display_none),
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_finish.action-button[disabled]:not(.ays_display_none),
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_early_finish.action-button[disabled]:not(.ays_display_none),
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_clear_answer.action-button[disabled]:not(.ays_display_none){
  color:rgba(19,32,42,.34) !important;
  background:rgba(243,246,249,.96) !important;
  border-color:rgba(19,32,42,.12) !important;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_next.action-button[disabled]:not(.ays_finish):not(.ays_display_none)::before,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_finish.action-button[disabled]:not(.ays_display_none)::before,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_early_finish.action-button[disabled]:not(.ays_display_none)::before{
  background-image:var(--otoprep-player-action-icon-blue);
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .wrong_answer_text,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .right_answer_text{
  position:relative;
  overflow:hidden;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .wrong_answer_text > :last-child,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .right_answer_text > :last-child{
  margin-bottom:0 !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .wrong_answer_text:not(:empty){
  border-color:rgba(185,77,98,.18) !important;
  background:linear-gradient(180deg, rgba(255,246,246,.96) 0%, rgba(255,249,250,.96) 100%) !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .right_answer_text:not(:empty){
  border-color:rgba(16,117,188,.18) !important;
  background:linear-gradient(180deg, rgba(239,246,252,.96) 0%, rgba(247,251,254,.96) 100%) !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .wrong_answer_text:empty,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .right_answer_text:empty{
  display:none !important;
}

/* --------------------------------------------------------------------- */
/* 21.8.21 app-wrapper button-only quiz navigation                       */
/* --------------------------------------------------------------------- */

body.otoprep-app.otoprep-view-quiz .ays-quiz-container .ays_buttons_div{
  flex-direction:column;
  flex-wrap:nowrap;
  align-items:stretch;
  justify-content:flex-start;
  gap:8px;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_previous.action-button,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_next.action-button,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_finish.action-button,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_early_finish.action-button,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_clear_answer.action-button,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div i.ays_arrow.action-button{
  display:none !important;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_previous,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_next,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_finish,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_early_finish,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_clear_answer,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_previous,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_next,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_finish,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_early_finish,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_clear_answer{
  width:100%;
  min-width:0 !important;
  flex:0 0 auto !important;
  background-image:none !important;
  padding-left:16px !important;
  padding-right:16px !important;
  text-align:center !important;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_previous,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_previous{
  order:20;
  background:#fff !important;
  color:var(--otoprep-ink) !important;
  border:1px solid rgba(16,117,188,.18) !important;
  box-shadow:none !important;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_next:not(.ays_finish),
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_next:not(.ays_finish),
body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_finish,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_finish{
  order:30;
  box-shadow:none !important;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_clear_answer,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_clear_answer{
  order:40;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_early_finish,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_early_finish{
  order:50;
}

body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_clear_answer,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_clear_answer,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_early_finish,
body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_early_finish{
  background:#fff !important;
  color:var(--otoprep-muted) !important;
  border:1px solid rgba(16,117,188,.14) !important;
  box-shadow:none !important;
}


/* --------------------------------------------------------------------- */
/* 21.8.29 progress dashboard milestone 1-5                              */
/* --------------------------------------------------------------------- */

.otoprep-progress-hero{
  position:relative;
  overflow:hidden;
}

.otoprep-progress-hero__eyebrow{
  margin-bottom:8px;
  text-transform:uppercase;
  letter-spacing:.08em;
}

.otoprep-progress-herochips{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}

.otoprep-progress-herochip{
  display:inline-flex;
  align-items:center;
  min-height:32px;
  padding:6px 12px;
  border-radius:999px;
  border:1px solid rgba(16,117,188,.12);
  background:rgba(16,117,188,.08);
  color:var(--otoprep-ink);
  font-size:12px;
  font-weight:700;
}

.otoprep-progress-herochart{
  position:relative;
  overflow:hidden;
}

.otoprep-progress-charthead{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
}

.otoprep-progress-charthead__eyebrow{
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--otoprep-muted);
  font-size:12px;
  font-weight:700;
}

.otoprep-progress-charthead__title{
  margin:6px 0 0;
  font-size:clamp(30px,4.4vw,44px);
  line-height:1.05;
  letter-spacing:-.03em;
  color:var(--otoprep-ink);
}

.otoprep-progress-charthead__meta{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:6px 12px;
  border-radius:999px;
  background:rgba(16,117,188,.08);
  border:1px solid rgba(16,117,188,.12);
  color:var(--otoprep-ink);
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}

.otoprep-progress-hero--status{
  overflow:visible;
}

.otoprep-progress-rankcards{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}

.otoprep-progress-rankcard{
  padding:16px 18px;
  border:1px solid rgba(16,117,188,.12);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.99) 0%, rgba(247,250,253,.97) 100%);
  box-shadow:0 10px 24px rgba(16,117,188,.06);
}

.otoprep-progress-rankcard.is-available{
  border-color:rgba(16,117,188,.20);
  background:linear-gradient(180deg, rgba(239,246,252,.99) 0%, rgba(247,251,254,.97) 100%);
}

.otoprep-progress-rankcard__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.otoprep-progress-rankcard__title{
  color:var(--otoprep-muted);
  font-size:13px;
  font-weight:700;
  letter-spacing:.01em;
}

.otoprep-progress-rankcard__value{
  font-size:24px;
  line-height:1.16;
  font-weight:800;
  color:var(--otoprep-ink);
  text-align:right;
}

.otoprep-progress-rankcard__sub{
  margin-top:10px;
  color:var(--otoprep-muted);
  font-size:13px;
  line-height:1.55;
}

.otoprep-progress-benchmeter{
  margin-top:12px;
  height:10px;
  border-radius:999px;
  background:rgba(16,117,188,.10);
  overflow:hidden;
}

.otoprep-progress-benchmeter__fill{
  display:block;
  height:100%;
  border-radius:inherit;
  background:#1075bc;
}

.otoprep-progress-rankcard.is-locked .otoprep-progress-benchmeter__fill{
  background:rgba(16,117,188,.18);
}

.otoprep-progress-empty{
  margin-top:14px;
  padding:18px;
  border:1px dashed rgba(16,117,188,.18);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(250,252,254,.99) 0%, rgba(247,250,253,.97) 100%);
}

.otoprep-progress-empty--quiet{
  background:linear-gradient(180deg, rgba(250,252,254,.99) 0%, rgba(247,250,253,.97) 100%);
}

.otoprep-progress-empty--warmup{
  border-color:rgba(16,117,188,.22);
  background:linear-gradient(180deg, rgba(239,246,252,.99) 0%, rgba(247,251,254,.97) 100%);
}

.otoprep-progress-empty--calm{
  border-color:rgba(83,139,105,.20);
  background:linear-gradient(180deg, rgba(246,252,248,.99) 0%, rgba(249,253,250,.97) 100%);
}

.otoprep-progress-empty__title{
  margin:0;
  font-size:18px;
  line-height:1.3;
  color:var(--otoprep-ink);
}

.otoprep-progress-empty__body{
  margin:8px 0 0;
  color:var(--otoprep-muted);
  font-size:14px;
  line-height:1.6;
}

.otoprep-progress-empty__actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:14px;
}

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

.otoprep-progress-metric,
.otoprep-progress-supportitem,
.otoprep-progress-planitem,
.otoprep-progress-risk{
  border:1px solid rgba(16,117,188,.12);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(247,250,253,.96) 100%);
  box-shadow:0 10px 24px rgba(16,117,188,.06);
}

.otoprep-progress-metric{
  padding:18px;
}

.otoprep-progress-metric--strong{
  border-color:rgba(16,117,188,.22);
  background:linear-gradient(180deg, rgba(239,246,252,.98) 0%, rgba(247,251,254,.96) 100%);
}

.otoprep-progress-metric--steady,
.otoprep-progress-metric--building,
.otoprep-progress-metric--restarting,
.otoprep-progress-metric--slipping,
.otoprep-progress-metric--cold,
.otoprep-progress-metric--low,
.otoprep-progress-metric--starting,
.otoprep-progress-metric--calibrating,
.otoprep-progress-metric--coverage,
.otoprep-progress-metric--status{
  background:linear-gradient(180deg, rgba(255,255,255,.98) 0%, rgba(248,250,252,.96) 100%);
}

.otoprep-progress-metric__value{
  margin-top:8px;
  font-size:28px;
  line-height:1.12;
  font-weight:800;
  color:var(--otoprep-ink);
}

.otoprep-progress-metric__sub,
.otoprep-progress-supportitem__sub{
  margin-top:8px;
  color:var(--otoprep-muted);
  font-size:14px;
  line-height:1.55;
}

.otoprep-progress-meta{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}

.otoprep-progress-meta__item{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:4px 10px;
  border-radius:999px;
  background:rgba(16,117,188,.08);
  color:var(--otoprep-ink);
  font-size:12px;
  font-weight:700;
}


.otoprep-home-snapshot__head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
}

.otoprep-home-snapshot__head .otoprep-muted{
  margin:4px 0 0;
}

.otoprep-home-snapshot__head .otoprep-progress-meta{
  margin-top:0;
  justify-content:flex-end;
}

.otoprep-home-snapshot__grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:16px;
}

.otoprep-home-snapshot__item{
  min-height:100%;
}

.otoprep-home-snapshot__foot{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  margin-top:14px;
  padding-top:14px;
  border-top:1px solid rgba(16,117,188,.12);
}

.otoprep-home-snapshot__note{
  margin:0;
  max-width:48ch;
}

.otoprep-home-snapshot__sparkrow{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:14px;
  margin-top:16px;
  padding:12px 14px;
  border:1px solid rgba(16,117,188,.10);
  border-radius:16px;
  background:rgba(247,250,253,.88);
}

.otoprep-home-snapshot__sparkmeta{
  display:grid;
  gap:4px;
  min-width:0;
}

.otoprep-home-snapshot__sparklabel{
  color:var(--otoprep-muted);
  font-size:13px;
  font-weight:700;
}

.otoprep-home-snapshot__sparksub{
  color:var(--otoprep-muted);
  font-size:12px;
  line-height:1.45;
}

.otoprep-home-snapshot__spark{
  flex:1 1 220px;
  max-width:260px;
  margin-top:0;
}

.otoprep-home-snapshot__spark .otoprep-spark__bar.is-latest{
  background:#1075bc;
  border-color:rgba(16,117,188,.35);
}

.otoprep-progress-risklist{
  display:grid;
  gap:12px;
}

.otoprep-progress-risk{
  padding:16px 18px;
  display:grid;
  gap:12px;
}

.otoprep-progress-risk--warning{
  border-color:rgba(185,77,98,.22);
  background:linear-gradient(180deg, rgba(255,246,246,.98) 0%, rgba(255,249,250,.96) 100%);
}

.otoprep-progress-risk__title,
.otoprep-progress-planitem__title{
  margin:0;
  font-size:16px;
  line-height:1.35;
  color:var(--otoprep-ink);
}

.otoprep-progress-plangrid{
  display:grid;
  gap:12px;
}

.otoprep-progress-planitem{
  display:flex;
  gap:14px;
  padding:16px 18px;
}

.otoprep-progress-planitem__step{
  flex:0 0 36px;
  width:36px;
  height:36px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:rgba(16,117,188,.1);
  color:var(--otoprep-ink);
  font-weight:800;
}

.otoprep-progress-planitem__body{
  flex:1 1 auto;
  min-width:0;
}

.otoprep-progress-supportgrid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.otoprep-progress-supportitem{
  padding:16px 18px;
}

.otoprep-progress-supportitem--full{
  grid-column:1 / -1;
}

.otoprep-progress-supportitem__label{
  color:var(--otoprep-muted);
  font-size:13px;
  font-weight:700;
  letter-spacing:.01em;
}

.otoprep-progress-supportitem__value{
  margin-top:8px;
  font-size:24px;
  line-height:1.18;
  font-weight:800;
  color:var(--otoprep-ink);
}

.otoprep-progress-focusgrid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}

.otoprep-progress-focuscard{
  border:1px solid rgba(16,117,188,.14);
  border-radius:20px;
  background:linear-gradient(180deg, rgba(255,255,255,.99) 0%, rgba(247,250,253,.97) 100%);
  box-shadow:0 12px 28px rgba(16,117,188,.06);
  padding:18px;
}

.otoprep-progress-focuscard--high{
  border-color:rgba(16,117,188,.24);
  background:linear-gradient(180deg, rgba(239,246,252,.99) 0%, rgba(247,251,254,.97) 100%);
}

.otoprep-progress-focuscard--mid{
  border-color:rgba(16,117,188,.18);
}

.otoprep-progress-focuscard__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.otoprep-progress-focuscard__title{
  margin:0;
  font-size:18px;
  line-height:1.3;
  color:var(--otoprep-ink);
}

.otoprep-progress-focuscard__summary{
  margin:8px 0 0;
  color:var(--otoprep-muted);
  font-size:14px;
  line-height:1.55;
}

.otoprep-progress-focuscard__score{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:6px 12px;
  border-radius:999px;
  background:rgba(16,117,188,.1);
  color:var(--otoprep-ink);
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}

.otoprep-progress-focusstats{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:14px;
}

.otoprep-progress-focusstat{
  padding:12px 13px;
  border-radius:16px;
  background:rgba(16,117,188,.05);
}

.otoprep-progress-focusstat__label{
  color:var(--otoprep-muted);
  font-size:12px;
  font-weight:700;
  letter-spacing:.01em;
}

.otoprep-progress-focusstat__value{
  margin-top:6px;
  font-size:20px;
  line-height:1.2;
  font-weight:800;
  color:var(--otoprep-ink);
}

.otoprep-progress-focusstat__sub{
  margin-top:6px;
  color:var(--otoprep-muted);
  font-size:13px;
  line-height:1.45;
}

.otoprep-progress-focusdetail{
  margin-top:16px;
  border-top:1px solid rgba(16,117,188,.12);
  padding-top:12px;
}

.otoprep-progress-focusdetail summary{
  cursor:pointer;
  color:var(--otoprep-ink);
  font-weight:700;
}

@media (max-width: 960px){
  .otoprep-progress-overview,
  .otoprep-progress-focusgrid,
  .otoprep-home-snapshot__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .otoprep-home-snapshot__foot{
    flex-direction:column;
  }
}

@media (max-width: 640px){
  .otoprep-progress-overview,
  .otoprep-progress-supportgrid,
  .otoprep-progress-focusgrid,
  .otoprep-progress-focusstats,
  .otoprep-home-snapshot__grid{
    grid-template-columns:minmax(0,1fr);
  }

  .otoprep-progress-planitem,
  .otoprep-progress-focuscard__head,
  .otoprep-home-snapshot__head,
  .otoprep-home-snapshot__foot{
    flex-direction:column;
  }

  .otoprep-progress-planitem__step{
    flex:0 0 auto;
  }

  .otoprep-progress-herochips,
  .otoprep-progress-empty__actions{
    gap:8px;
  }

  .otoprep-home-snapshot__head .otoprep-progress-meta{
    justify-content:flex-start;
  }

  .otoprep-progress-empty__actions .otoprep-btn{
    width:100%;
    justify-content:center;
  }
}


.otoprep-progress-debtgrid{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}

.otoprep-progress-debtcard,
.otoprep-progress-debtcatcard,
.otoprep-progress-debtempty{
  border:1px solid rgba(16,117,188,.12);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.99) 0%, rgba(247,250,253,.97) 100%);
  box-shadow:0 10px 24px rgba(16,117,188,.06);
}

.otoprep-progress-debtcard{
  padding:16px 18px;
}

.otoprep-progress-debtcard--due{
  border-color:rgba(16,117,188,.20);
  background:linear-gradient(180deg, rgba(239,246,252,.99) 0%, rgba(247,251,254,.97) 100%);
}

.otoprep-progress-debtcard--overdue{
  border-color:rgba(185,77,98,.22);
  background:linear-gradient(180deg, rgba(255,247,248,.99) 0%, rgba(255,250,251,.97) 100%);
}

.otoprep-progress-debtcard--recent,
.otoprep-progress-debtcard--flagged,
.otoprep-progress-debtcard--unsure{
  background:linear-gradient(180deg, rgba(255,255,255,.99) 0%, rgba(248,250,252,.97) 100%);
}

.otoprep-progress-debtcard__label,
.otoprep-progress-debtcats__intro{
  color:var(--otoprep-muted);
  font-size:13px;
  font-weight:700;
  letter-spacing:.01em;
}

.otoprep-progress-debtcard__value{
  margin-top:8px;
  font-size:30px;
  line-height:1.1;
  font-weight:800;
  color:var(--otoprep-ink);
}

.otoprep-progress-debtcard__sub,
.otoprep-progress-debtcatcard__summary{
  margin-top:8px;
  color:var(--otoprep-muted);
  font-size:14px;
  line-height:1.55;
}

.otoprep-progress-debtempty{
  margin-top:14px;
  padding:18px;
}

.otoprep-progress-debtcats{
  margin-top:18px;
  padding-top:14px;
  border-top:1px solid rgba(16,117,188,.12);
}

.otoprep-progress-debtcatgrid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}

.otoprep-progress-debtcatcard{
  padding:16px 18px;
}

.otoprep-progress-debtcatcard__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.otoprep-progress-debtcatcard__title{
  margin:0;
  font-size:18px;
  line-height:1.3;
  color:var(--otoprep-ink);
}

.otoprep-progress-debtcatcard__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:34px;
  padding:6px 12px;
  border-radius:999px;
  background:rgba(16,117,188,.1);
  color:var(--otoprep-ink);
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}

@media (max-width: 1200px){
  .otoprep-progress-debtgrid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (max-width: 960px){
  .otoprep-progress-debtgrid,
  .otoprep-progress-debtcatgrid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 640px){
  .otoprep-progress-debtgrid,
  .otoprep-progress-debtcatgrid{
    grid-template-columns:minmax(0,1fr);
  }

  .otoprep-progress-debtcatcard__head{
    flex-direction:column;
  }
}


.otoprep-progress-trendsummary{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}

.otoprep-progress-benchsummary,
.otoprep-progress-deltagrid{
  display:grid;
  gap:12px;
  margin-top:14px;
}

.otoprep-progress-benchsummary{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.otoprep-progress-deltagrid{
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.otoprep-progress-trendmetric,
.otoprep-progress-chartcard,
.otoprep-progress-trendcard,
.otoprep-progress-mover,
.otoprep-progress-modeitem,
.otoprep-progress-pacedetail__item{
  border:1px solid rgba(16,117,188,.12);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.99) 0%, rgba(247,250,253,.97) 100%);
  box-shadow:0 10px 24px rgba(16,117,188,.06);
}

.otoprep-progress-trendmetric{
  padding:16px 18px;
}

.otoprep-progress-benchsummary__item,
.otoprep-progress-deltacard{
  min-height:100%;
}

.otoprep-progress-benchsummary__item--calm,
.otoprep-progress-deltacard--calm,
.otoprep-progress-rankcard--calm{
  border-color:rgba(16,117,188,.20);
  background:linear-gradient(180deg, rgba(239,246,252,.99) 0%, rgba(247,251,254,.97) 100%);
}

.otoprep-progress-benchsummary__item--warm,
.otoprep-progress-deltacard--warm,
.otoprep-progress-rankcard--warm{
  border-color:rgba(240,179,46,.24);
  background:linear-gradient(180deg, rgba(255,250,240,.99) 0%, rgba(255,253,247,.97) 100%);
}

.otoprep-progress-benchsummary__item--positive,
.otoprep-progress-deltacard--positive{
  border-color:rgba(83,139,105,.22);
  background:linear-gradient(180deg, rgba(246,252,248,.99) 0%, rgba(249,253,250,.97) 100%);
}

.otoprep-progress-benchsummary__item--negative,
.otoprep-progress-deltacard--negative{
  border-color:rgba(185,77,98,.18);
  background:linear-gradient(180deg, rgba(255,247,248,.99) 0%, rgba(255,250,251,.97) 100%);
}

.otoprep-progress-benchsummary__item--mixed,
.otoprep-progress-deltacard--mixed{
  border-color:rgba(112,122,144,.20);
  background:linear-gradient(180deg, rgba(250,252,254,.99) 0%, rgba(247,250,253,.97) 100%);
}

.otoprep-progress-benchsummary__item--quiet,
.otoprep-progress-deltacard--quiet,
.otoprep-progress-rankcard--quiet{
  background:linear-gradient(180deg, rgba(255,255,255,.99) 0%, rgba(247,250,253,.97) 100%);
}

.otoprep-progress-trendmetric__label,
.otoprep-progress-trendcard__title,
.otoprep-progress-modeitem__label,
.otoprep-progress-pacedetail__title,
.otoprep-progress-mover__eyebrow{
  color:var(--otoprep-muted);
  font-size:13px;
  font-weight:700;
  letter-spacing:.01em;
}

.otoprep-progress-trendmetric__value,
.otoprep-progress-modeitem__value,
.otoprep-progress-mover__value{
  margin-top:8px;
  font-size:26px;
  line-height:1.16;
  font-weight:800;
  color:var(--otoprep-ink);
}

.otoprep-progress-trendmetric__sub,
.otoprep-progress-modeitem__sub,
.otoprep-progress-mover__sub,
.otoprep-progress-pacedetail__sub,
.otoprep-progress-chartlegend,
.otoprep-progress-trendaxis{
  color:var(--otoprep-muted);
  font-size:13px;
  line-height:1.5;
}

.otoprep-progress-chartcard{
  margin-top:14px;
  padding:18px;
}

.otoprep-progress-chartlegend{
  display:flex;
  flex-wrap:wrap;
  gap:10px 16px;
}

.otoprep-progress-chartlegend__item{
  display:inline-flex;
  align-items:center;
  gap:8px;
}

.otoprep-progress-chartlegend__swatch{
  display:inline-block;
  width:16px;
  height:10px;
  border-radius:999px;
  background:rgba(16,117,188,.18);
}

.otoprep-progress-chartlegend__swatch--bar{
  background:rgba(16,117,188,.20);
}

.otoprep-progress-chartlegend__swatch--accuracy{
  background:#1075bc;
}

.otoprep-progress-chartlegend__swatch--readiness{
  background:#6d7c90;
}

.otoprep-progress-chartwrap{
  margin-top:14px;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}

.otoprep-progress-chart{
  display:block;
  width:100%;
  min-width:560px;
  height:auto;
}

.otoprep-progress-chart__grid{
  stroke:rgba(16,117,188,.10);
  stroke-width:1;
  stroke-dasharray:4 6;
}

.otoprep-progress-chart__axis{
  stroke:rgba(16,117,188,.18);
  stroke-width:1;
}

.otoprep-progress-chart__bar{
  fill:rgba(16,117,188,.18);
  rx:8;
  ry:8;
}

.otoprep-progress-chart__bar.is-empty{
  fill:rgba(16,117,188,.08);
}

.otoprep-progress-chart__line{
  fill:none;
  stroke-width:3;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.otoprep-progress-chart__line--accuracy{
  stroke:#1075bc;
}

.otoprep-progress-chart__line--readiness{
  stroke:#6d7c90;
}

.otoprep-progress-trendaxis{
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-top:10px;
}

.otoprep-progress-trendgrid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}

.otoprep-progress-trendcard{
  padding:18px;
}

.otoprep-progress-analyticsgrid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}

.otoprep-progress-intelcard{
  min-width:0;
}

.otoprep-progress-intelheadline,
.otoprep-progress-intelsignal__head,
.otoprep-progress-modebar__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.otoprep-progress-intelheadline{
  margin-top:12px;
}

.otoprep-progress-intelvalue,
.otoprep-progress-intelsignal__value{
  font-size:28px;
  line-height:1.12;
  font-weight:800;
  color:var(--otoprep-ink);
}

.otoprep-progress-intelbadge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:5px 11px;
  border-radius:999px;
  background:rgba(16,117,188,.10);
  color:var(--otoprep-ink);
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}

.otoprep-progress-intelbadge--quiet,
.otoprep-progress-intelbadge--calibrating{
  background:rgba(16,117,188,.08);
}

.otoprep-progress-intelbadge--stable{
  background:rgba(83,139,105,.16);
}

.otoprep-progress-intelbadge--mixed{
  background:rgba(240,179,46,.18);
}

.otoprep-progress-intelbadge--swingy{
  background:rgba(185,77,98,.12);
}

.otoprep-progress-minichartwrap{
  margin-top:14px;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
}

.otoprep-progress-minichart{
  display:block;
  width:100%;
  min-width:320px;
  height:auto;
}

.otoprep-progress-minichart__grid{
  stroke:rgba(16,117,188,.10);
  stroke-width:1;
  stroke-dasharray:4 6;
}

.otoprep-progress-minichart__axis{
  stroke:rgba(16,117,188,.16);
  stroke-width:1;
}

.otoprep-progress-minichart__line{
  fill:none;
  stroke-width:3;
  stroke-linecap:round;
  stroke-linejoin:round;
}

.otoprep-progress-minichart__line--coverage{
  stroke:#1075bc;
}

.otoprep-progress-intelsignal{
  margin-top:14px;
  padding:14px 16px;
  border:1px solid rgba(16,117,188,.12);
  border-radius:16px;
  background:linear-gradient(180deg, rgba(239,246,252,.92) 0%, rgba(247,251,254,.94) 100%);
}

.otoprep-progress-intelsignal__label,
.otoprep-progress-modebar__label{
  color:var(--otoprep-muted);
  font-size:13px;
  font-weight:700;
  letter-spacing:.01em;
}

.otoprep-progress-modebars{
  display:grid;
  gap:12px;
  margin-top:14px;
}

.otoprep-progress-modebar{
  padding:14px 16px;
  border:1px solid rgba(16,117,188,.12);
  border-radius:16px;
  background:linear-gradient(180deg, rgba(255,255,255,.99) 0%, rgba(247,250,253,.97) 100%);
}

.otoprep-progress-modebar__share{
  font-size:16px;
  line-height:1.2;
  font-weight:800;
  color:var(--otoprep-ink);
}

.otoprep-progress-modebar__sub{
  margin-top:8px;
  color:var(--otoprep-muted);
  font-size:13px;
  line-height:1.55;
}

.otoprep-progress-benchmeter__fill--mode{
  opacity:.85;
}

.otoprep-progress-consistency .otoprep-spark__bar.is-latest{
  background:#1075bc;
  border-color:rgba(16,117,188,.35);
}

.otoprep-progress-trendcard__title{
  margin:0;
  color:var(--otoprep-ink);
  font-size:18px;
  line-height:1.3;
}

.otoprep-progress-movergrid,
.otoprep-progress-modegrid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin-top:12px;
}

.otoprep-progress-mover{
  padding:14px 16px;
}

.otoprep-progress-mover--positive{
  background:linear-gradient(180deg, rgba(239,246,252,.99) 0%, rgba(247,251,254,.97) 100%);
  border-color:rgba(16,117,188,.20);
}

.otoprep-progress-mover--negative{
  background:linear-gradient(180deg, rgba(255,247,248,.99) 0%, rgba(255,250,251,.97) 100%);
  border-color:rgba(185,77,98,.18);
}

.otoprep-progress-mover__title,
.otoprep-progress-pacedetail__value,
.otoprep-progress-paceline__value{
  margin-top:8px;
  font-size:20px;
  line-height:1.2;
  font-weight:800;
  color:var(--otoprep-ink);
}

.otoprep-progress-paceline{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin-top:12px;
}

.otoprep-progress-paceline__value{
  margin-top:0;
}

.otoprep-progress-pacedetail__value{
  margin-top:0;
  white-space:nowrap;
}

.otoprep-progress-paceline__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:5px 11px;
  border-radius:999px;
  font-size:12px;
  font-weight:800;
  color:var(--otoprep-ink);
  background:rgba(16,117,188,.08);
}

.otoprep-progress-paceline__badge--slow{
  background:rgba(185,77,98,.12);
}

.otoprep-progress-paceline__badge--deliberate{
  background:rgba(240,179,46,.18);
}

.otoprep-progress-paceline__badge--steady{
  background:rgba(16,117,188,.10);
}

.otoprep-progress-paceline__badge--fast{
  background:rgba(83,139,105,.16);
}

.otoprep-progress-paceline__badge--unknown{
  background:rgba(16,117,188,.08);
}

.otoprep-progress-pacedetail{
  display:grid;
  gap:12px;
  margin-top:14px;
}

.otoprep-progress-pacedetail__item{
  padding:14px 16px;
}

.otoprep-progress-pacedetail__row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.otoprep-progress-modeitem{
  padding:14px 16px;
}

@media (max-width: 1200px){
  .otoprep-progress-trendsummary{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }

  .otoprep-progress-analyticsgrid,
  .otoprep-progress-rankcards{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 960px){
  .otoprep-progress-trendsummary,
  .otoprep-progress-trendgrid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .otoprep-progress-rankcards{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 640px){
  .otoprep-progress-analyticsgrid,
  .otoprep-progress-trendsummary,
  .otoprep-progress-trendgrid,
  .otoprep-progress-movergrid,
  .otoprep-progress-modegrid,
  .otoprep-progress-rankcards{
    grid-template-columns:minmax(0,1fr);
  }

  .otoprep-progress-charthead,
  .otoprep-progress-rankcard__head,
  .otoprep-progress-intelheadline,
  .otoprep-progress-intelsignal__head,
  .otoprep-progress-modebar__head,
  .otoprep-progress-charthead__meta{
    align-items:flex-start;
  }

  .otoprep-progress-charthead,
  .otoprep-progress-rankcard__head,
  .otoprep-progress-intelheadline,
  .otoprep-progress-intelsignal__head,
  .otoprep-progress-modebar__head{
    flex-direction:column;
  }

  .otoprep-progress-pacedetail__row{
    flex-direction:column;
  }

  .otoprep-progress-chart{
    min-width:480px;
  }
}


/* 21.8.36 progress analytics tabs compact copy + theme-style polish */
.otoprep-progress-analyticsdeck{
  position:relative;
}

body.otoprep-app .otoprep-progress-switcher{
  position:sticky;
  top:78px;
  z-index:24;
  padding:12px 14px;
  background:rgba(255,255,255,.94);
  border-color:var(--otoprep-border);
  box-shadow:0 10px 24px rgba(16,117,188,.10);
  backdrop-filter:blur(10px);
}

body.otoprep-app .otoprep-progress-switcher__head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
}

body.otoprep-app .otoprep-progress-switcher__title{
  margin:0;
  color:var(--otoprep-muted);
  font-size:13px;
  font-weight:800;
  line-height:1.2;
}

body.otoprep-app .otoprep-progress-switcher__tabs{
  display:flex;
  align-items:center;
  gap:6px;
  width:100%;
  max-width:100%;
  margin-top:8px;
  overflow-x:auto;
  overflow-y:hidden;
  padding:4px;
  padding-bottom:4px;
  -webkit-overflow-scrolling:touch;
}

body.otoprep-app .otoprep-progress-switcher__tabs::-webkit-scrollbar{
  height:6px;
}

body.otoprep-app .otoprep-progress-switcher__tabs::-webkit-scrollbar-thumb{
  background:rgba(16,117,188,.18);
  border-radius:999px;
}

body.otoprep-app button.otoprep-progress-switcher__tab{
  -webkit-appearance:none;
  appearance:none;
  flex:0 0 auto;
  min-height:40px;
  padding:10px 14px;
  border:1px solid transparent;
  border-radius:999px;
  background:transparent;
  color:var(--otoprep-blue);
  font-family:inherit;
  font-size:13px;
  font-weight:800;
  line-height:1.2;
  white-space:nowrap;
  cursor:pointer;
  box-shadow:none;
  -webkit-tap-highlight-color:transparent;
  transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease;
}

body.otoprep-app button.otoprep-progress-switcher__tab:hover{
  background:rgba(16,117,188,.08);
}

body.otoprep-app button.otoprep-progress-switcher__tab:focus,
body.otoprep-app button.otoprep-progress-switcher__tab:focus-visible{
  outline:none;
  box-shadow:0 0 0 3px rgba(16,117,188,.16);
}

body.otoprep-app button.otoprep-progress-switcher__tab.is-active,
body.otoprep-app button.otoprep-progress-switcher__tab[aria-selected="true"]{
  color:#fff;
  background:var(--otoprep-blue);
  border-color:var(--otoprep-blue);
  box-shadow:0 10px 22px rgba(16,117,188,.18);
}

.otoprep-progress-panels{
  position:relative;
}

.otoprep-progress-panels.is-enhanced .otoprep-progress-panel{
  display:none;
}

.otoprep-progress-panels.is-enhanced .otoprep-progress-panel.is-active{
  display:block;
}

.otoprep-progress-panel[hidden]{
  display:none !important;
}

.otoprep-progress-centilebands{
  min-height:126px;
}

.otoprep-progress-intelbadge--starting{
  background:rgba(16,117,188,.08);
}

.otoprep-progress-intelbadge--building{
  background:rgba(240,179,46,.18);
}

.otoprep-progress-intelbadge--steady{
  background:rgba(16,117,188,.12);
}

.otoprep-progress-intelbadge--strong{
  background:rgba(83,139,105,.16);
}










































.otoprep-progress-centilebands .otoprep-progress-histogram__bar,
.otoprep-progress-centilebands__bar{
  height:76px !important;
  min-height:76px;
}

.otoprep-progress-centilebands__bar.is-user{
  box-shadow:0 12px 26px rgba(16,117,188,.18);
  transform:translateY(-4px);
}

/* 21.8.34 advanced progress intelligence */
.otoprep-progress-chartlegend__swatch--adjusted{
  background:#1075bc;
}

.otoprep-progress-chart__line--adjusted{
  stroke:#1075bc;
}

.otoprep-progress-histogram{
  padding:18px;
}

.otoprep-progress-histogram__bars{
  display:grid;
  grid-template-columns:repeat(10,minmax(0,1fr));
  gap:10px;
  align-items:end;
  margin-top:18px;
  min-height:170px;
}

.otoprep-progress-histogram__col{
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:8px;
  min-width:0;
}

.otoprep-progress-histogram__bar{
  width:100%;
  min-height:10px;
  border-radius:12px 12px 6px 6px;
  background:rgba(16,117,188,.18);
  border:1px solid rgba(16,117,188,.14);
  box-shadow:0 8px 18px rgba(16,117,188,.06);
}

.otoprep-progress-histogram__bar.is-user{
  background:#1075bc;
  border-color:#1075bc;
}

.otoprep-progress-histogram__bar.is-empty{
  background:rgba(16,117,188,.08);
}

.otoprep-progress-histogram__label{
  color:var(--otoprep-muted);
  font-size:12px;
  line-height:1.3;
  text-align:center;
}

.otoprep-progress-ranktrendgrid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}

.otoprep-progress-ranktrendcard__value{
  font-size:24px;
  line-height:1.15;
  font-weight:800;
  color:var(--otoprep-ink);
}

.otoprep-progress-ranktrendbars .otoprep-spark__bar.is-latest{
  background:#1075bc;
}

.otoprep-progress-timeintel{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-top:14px;
}

.otoprep-progress-timeintel__item{
  border:1px solid rgba(16,117,188,.10);
  border-radius:16px;
  padding:14px;
  background:rgba(247,250,253,.92);
}

.otoprep-progress-timeintel__label{
  color:var(--otoprep-muted);
  font-size:12px;
  font-weight:700;
}

.otoprep-progress-timeintel__value{
  margin-top:6px;
  color:var(--otoprep-ink);
  font-size:22px;
  line-height:1.15;
  font-weight:800;
}

.otoprep-progress-timeintel__sub{
  margin-top:6px;
  color:var(--otoprep-muted);
  font-size:13px;
  line-height:1.45;
}

.otoprep-progress-blueprintgrid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:14px;
}

.otoprep-progress-blueprintrow{
  border:1px solid rgba(16,117,188,.12);
  border-radius:18px;
  padding:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.99) 0%, rgba(247,250,253,.97) 100%);
  box-shadow:0 10px 24px rgba(16,117,188,.06);
}

.otoprep-progress-blueprintrow__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.otoprep-progress-blueprintrow__title{
  font-size:18px;
  line-height:1.25;
  font-weight:800;
  color:var(--otoprep-ink);
}

.otoprep-progress-blueprintrow__priority{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:5px 11px;
  border-radius:999px;
  background:rgba(16,117,188,.10);
  color:var(--otoprep-ink);
  font-size:12px;
  font-weight:800;
  white-space:nowrap;
}

.otoprep-progress-blueprintrow__metrics{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(140px,1fr));
  gap:10px;
  margin-top:14px;
}

.otoprep-progress-blueprintrow__metric{
  border:1px solid rgba(16,117,188,.08);
  border-radius:14px;
  padding:12px;
  background:rgba(247,250,253,.88);
}

.otoprep-progress-blueprintrow__metriclabel{
  color:var(--otoprep-muted);
  font-size:12px;
  font-weight:700;
}

.otoprep-progress-blueprintrow__metricvalue{
  margin-top:6px;
  color:var(--otoprep-ink);
  font-size:18px;
  line-height:1.2;
  font-weight:800;
}

.otoprep-progress-blueprintrow__heat{
  margin-top:14px;
  height:10px;
  border-radius:999px;
  background:rgba(16,117,188,.08);
  overflow:hidden;
}

.otoprep-progress-blueprintrow__heatfill{
  display:block;
  height:100%;
  border-radius:inherit;
  background:#1075bc;
}

.otoprep-progress-blueprintrow__foot{
  margin-top:10px;
  color:var(--otoprep-muted);
  font-size:13px;
  line-height:1.45;
}


.otoprep-progress-blueprintrow__badges{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}

.otoprep-progress-blueprintrow__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:4px 10px;
  border-radius:999px;
  background:rgba(16,117,188,.08);
  border:1px solid rgba(16,117,188,.14);
  color:var(--otoprep-ink);
  font-size:12px;
  font-weight:700;
  line-height:1.2;
}

.otoprep-progress-blueprintrow__metricsub{
  margin-top:6px;
  color:var(--otoprep-muted);
  font-size:12px;
  line-height:1.4;
}

.otoprep-progress-blueprintrow__note + .otoprep-progress-blueprintrow__note{
  margin-top:8px;
}

.otoprep-progress-blueprintrow__note--trial{
  color:var(--otoprep-ink);
}

.otoprep-progress-blueprinttrial{
  margin-top:14px;
  border:1px solid rgba(16,117,188,.12);
  border-radius:18px;
  padding:16px;
  background:linear-gradient(180deg, rgba(247,250,253,.98) 0%, rgba(255,255,255,.98) 100%);
}

.otoprep-progress-blueprinttrial__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}

.otoprep-progress-blueprinttrial__title{
  color:var(--otoprep-ink);
  font-size:16px;
  line-height:1.3;
  font-weight:800;
}

.otoprep-progress-blueprinttrial__body{
  margin-top:6px;
  color:var(--otoprep-muted);
  font-size:13px;
  line-height:1.5;
}

.otoprep-progress-blueprinttrial__cta{
  flex-shrink:0;
}

.otoprep-progress-blueprinttrial__grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:10px;
  margin-top:14px;
}

.otoprep-progress-blueprinttrial__item{
  border:1px solid rgba(16,117,188,.08);
  border-radius:14px;
  padding:12px;
  background:rgba(255,255,255,.88);
}

.otoprep-progress-blueprinttrial__itemtitle{
  color:var(--otoprep-ink);
  font-size:14px;
  line-height:1.35;
  font-weight:800;
}

.otoprep-progress-blueprinttrial__itemsub{
  margin-top:6px;
  color:var(--otoprep-muted);
  font-size:12px;
  line-height:1.45;
}

@media (max-width: 980px){
  .otoprep-progress-ranktrendgrid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .otoprep-progress-blueprintrow__metrics{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media (max-width: 640px){
  .otoprep-progress-histogram__bars{
    gap:6px;
    min-height:140px;
  }

  .otoprep-progress-ranktrendgrid{
    grid-template-columns:1fr;
  }

  .otoprep-progress-timeintel{
    grid-template-columns:1fr;
  }

  .otoprep-progress-blueprintrow__metrics{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 980px){
  body.otoprep-app .otoprep-progress-switcher{
    top:74px;
  }
}

@media (max-width: 640px){
  body.otoprep-app .otoprep-progress-switcher{
    top:70px;
    padding:10px 12px;
  }

  body.otoprep-app button.otoprep-progress-switcher__tab{
    min-height:38px;
    padding:8px 12px;
    font-size:13px;
  }

  .otoprep-progress-centilebands{
    min-height:112px;
  }

  .otoprep-progress-centilebands .otoprep-progress-histogram__bar,
  .otoprep-progress-centilebands__bar{
    height:64px !important;
    min-height:64px;
  }
}

/* 21.8.38 trial-aware progress conversion hero */
.otoprep-progress-trialbanner,
.otoprep-progress-trialstrip,
.otoprep-progress-trackhero{
  position:relative;
  overflow:hidden;
}

.otoprep-progress-trialbanner{
  border-color:rgba(16,117,188,.16);
  background:linear-gradient(180deg, rgba(239,246,252,.98) 0%, rgba(247,251,254,.96) 100%);
}

.otoprep-progress-trialbanner__head,
.otoprep-progress-trialstrip__head,
.otoprep-progress-trackhero__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}

.otoprep-progress-trialbanner__eyebrow,
.otoprep-progress-trialstrip__eyebrow{
  text-transform:uppercase;
  letter-spacing:.08em;
  margin-bottom:8px;
}

.otoprep-progress-trialbanner__summary,
.otoprep-progress-trialstrip__summary,
.otoprep-progress-trackhero__summary{
  margin-top:10px;
}

.otoprep-progress-trackhero__chart{
  margin-top:16px;
}

.otoprep-progress-activitychart--hero .otoprep-progress-chartlegend{
  margin-top:0;
}

.otoprep-progress-activitychart--hero .otoprep-progress-chartcard{
  margin-top:10px;
  border-color:rgba(16,117,188,.12);
  background:linear-gradient(180deg, rgba(255,255,255,.99), rgba(244,249,253,.96));
}

.otoprep-progress-trialbanner__cta,
.otoprep-progress-trialstrip__cta{
  flex:0 0 auto;
}

.otoprep-progress-stackbar{
  display:flex;
  align-items:stretch;
  height:14px;
  margin-top:14px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(16,117,188,.08);
  border:1px solid rgba(16,117,188,.08);
}

.otoprep-progress-stackbar__seg{
  display:block;
  height:100%;
}

.otoprep-progress-stackbar__seg--used{
  background:#1075bc;
}

.otoprep-progress-stackbar__seg--remaining{
  background:rgba(16,117,188,.40);
}

.otoprep-progress-stackbar__seg--locked{
  background:rgba(16,117,188,.14);
}

.otoprep-progress-stacklegend{
  display:flex;
  flex-wrap:wrap;
  gap:10px 16px;
  margin-top:12px;
  color:var(--otoprep-muted);
  font-size:13px;
  font-weight:700;
}

.otoprep-progress-stacklegend__item{
  display:inline-flex;
  align-items:center;
  gap:8px;
}

.otoprep-progress-stacklegend__swatch{
  display:inline-block;
  width:10px;
  height:10px;
  border-radius:999px;
  box-shadow:0 0 0 1px rgba(16,117,188,.12);
}

.otoprep-progress-stacklegend__swatch--used{
  background:#1075bc;
}

.otoprep-progress-stacklegend__swatch--remaining{
  background:rgba(16,117,188,.40);
}

.otoprep-progress-stacklegend__swatch--locked{
  background:rgba(16,117,188,.14);
}

.otoprep-progress-trialstats,
.otoprep-progress-trackhero__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}

.otoprep-progress-trialstat,
.otoprep-progress-trackhero__item,
.otoprep-progress-unlock,
.otoprep-progress-trackweak{
  border:1px solid rgba(16,117,188,.10);
  border-radius:18px;
  padding:16px 18px;
  background:linear-gradient(180deg, rgba(255,255,255,.99) 0%, rgba(247,250,253,.96) 100%);
  box-shadow:0 10px 24px rgba(16,117,188,.05);
}

.otoprep-progress-trialstat__label,
.otoprep-progress-unlock__label{
  color:var(--otoprep-muted);
  font-size:12px;
  font-weight:700;
}

.otoprep-progress-trialstat__value,
.otoprep-progress-unlock__value{
  margin-top:8px;
  color:var(--otoprep-ink);
  font-size:24px;
  line-height:1.15;
  font-weight:800;
}

.otoprep-progress-trialstat__sub,
.otoprep-progress-unlock__sub,
.otoprep-progress-trackhero__footnote,
.otoprep-progress-trackweak__sub{
  margin-top:6px;
  color:var(--otoprep-muted);
  font-size:13px;
  line-height:1.45;
}

.otoprep-progress-trialstrip__nexthead,
.otoprep-progress-trackhero__foot{
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid rgba(16,117,188,.10);
}

.otoprep-progress-trialstrip__nexttitle,
.otoprep-progress-trackhero__footlabel{
  color:var(--otoprep-ink);
  font-size:14px;
  font-weight:800;
}

.otoprep-progress-trialstrip__nextnote{
  margin-top:4px;
  color:var(--otoprep-muted);
  font-size:13px;
  line-height:1.45;
}

.otoprep-progress-unlockgrid,
.otoprep-progress-trackweakgrid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:12px;
}

.otoprep-progress-unlock.is-done{
  border-color:rgba(16,117,188,.18);
  background:linear-gradient(180deg, rgba(239,246,252,.99) 0%, rgba(247,251,254,.96) 100%);
}

.otoprep-progress-unlock__top,
.otoprep-progress-trackweak__row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}

.otoprep-progress-unlock__status,
.otoprep-progress-trackweak__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:5px 10px;
  border-radius:999px;
  background:rgba(16,117,188,.08);
  color:var(--otoprep-ink);
  font-size:11px;
  font-weight:800;
  white-space:nowrap;
}

.otoprep-progress-unlock .otoprep-progress-benchmeter{
  margin-top:12px;
}

.otoprep-progress-benchmeter__fill--unlock{
  background:rgba(16,117,188,.38);
}

.otoprep-progress-benchmeter__fill--unlockdone{
  background:#1075bc;
}

.otoprep-progress-trackweak__title{
  color:var(--otoprep-ink);
  font-size:16px;
  line-height:1.3;
  font-weight:800;
}

@media (max-width: 1200px){
  .otoprep-progress-trialstats,
  .otoprep-progress-trackhero__grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 980px){
  body.otoprep-app .otoprep-feature-section--collapsible > summary{
    padding:18px;
  }

  .otoprep-progress-trialbanner__head,
  .otoprep-progress-trialstrip__head,
  .otoprep-progress-trackhero__head{
    flex-direction:column;
    align-items:flex-start;
  }

  .otoprep-progress-unlockgrid,
  .otoprep-progress-trackweakgrid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 640px){
  body.otoprep-app .otoprep-feature-section--collapsible > summary{
    padding:16px;
  }

  body.otoprep-app .otoprep-feature-section--collapsible .otoprep-feature-grid{
    padding:16px;
  }

  .otoprep-progress-stackbar{
    height:12px;
  }

  .otoprep-progress-trialstats,
  .otoprep-progress-unlockgrid,
  .otoprep-progress-trackhero__grid,
  .otoprep-progress-trackweakgrid{
    grid-template-columns:minmax(0,1fr);
  }

  .otoprep-progress-trialbanner__cta,
  .otoprep-progress-trialstrip__cta{
    width:100%;
    justify-content:center;
  }
}


@media (max-width: 1200px){
  .otoprep-progress-deltagrid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 960px){
  .otoprep-progress-benchsummary{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media (max-width: 640px){
  .otoprep-home-snapshot__sparkrow{
    flex-direction:column;
    align-items:stretch;
  }

  .otoprep-home-snapshot__spark{
    max-width:none;
    width:100%;
  }

  .otoprep-progress-benchsummary,
  .otoprep-progress-deltagrid{
    grid-template-columns:minmax(0,1fr);
  }
}

/* Lightweight structured question feedback popovers */
body.otoprep-app .otoprep-feedback-slot{
  position:relative;
  margin-top:14px;
  width:100%;
}

body.otoprep-app .otoprep-feedback-slot--toolbar{
  margin-top:16px;
}

body.otoprep-app .otoprep-feedback-slot--prepend{
  margin-top:0;
  margin-bottom:12px;
}

body.otoprep-app .ays-quiz-question-state-box > .otoprep-feedback-slot--toolbar{
  width:100%;
}

body.otoprep-app .otoprep-feedback-popover{
  position:relative;
  width:min(100%, 560px);
  background:#fff;
  border:1px solid rgba(16,117,188,.14);
  border-radius:16px;
  box-shadow:0 14px 34px rgba(16,117,188,.12);
  padding:14px;
  color:var(--otoprep-ink);
  opacity:0;
  transform:translateY(6px);
  transition:opacity .18s ease, transform .18s ease, box-shadow .18s ease;
}

body.otoprep-app .otoprep-feedback-popover.is-visible{
  opacity:1;
  transform:translateY(0);
}

body.otoprep-app .otoprep-feedback-popover.is-complete{
  border-color:rgba(16,117,188,.18);
  box-shadow:0 10px 24px rgba(16,117,188,.10);
}

body.otoprep-app .otoprep-feedback__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  margin-bottom:8px;
}

body.otoprep-app .otoprep-feedback__eyebrow{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(16,117,188,.09);
  color:var(--otoprep-blue);
  font-size:12px;
  line-height:1;
  font-weight:800;
  letter-spacing:.01em;
}

body.otoprep-app .otoprep-feedback-popover--report .otoprep-feedback__eyebrow{
  background:rgba(231,105,75,.12);
  color:var(--otoprep-orange);
}

body.otoprep-app .otoprep-feedback__close{
  appearance:none;
  -webkit-appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  width:38px;
  height:38px;
  border:1px solid rgba(16,117,188,.12);
  border-radius:999px;
  background:#fff;
  color:var(--otoprep-muted);
  font-size:22px;
  line-height:1;
  cursor:pointer;
  transition:border-color .18s ease, color .18s ease, transform .18s ease, box-shadow .18s ease;
}

body.otoprep-app .otoprep-feedback__close:hover,
body.otoprep-app .otoprep-feedback__close:focus-visible{
  color:var(--otoprep-blue);
  border-color:rgba(16,117,188,.24);
  box-shadow:0 0 0 3px rgba(16,117,188,.10);
}

body.otoprep-app .otoprep-feedback__question{
  margin:0 0 12px;
  color:var(--otoprep-ink);
  font-size:16px;
  line-height:1.35;
  font-weight:800;
}

body.otoprep-app .otoprep-feedback__question--thanks{
  margin-bottom:0;
  color:var(--otoprep-blue);
}

body.otoprep-app .otoprep-feedback__choices,
body.otoprep-app .otoprep-feedback__tags{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}

body.otoprep-app .otoprep-feedback__chip{
  appearance:none;
  -webkit-appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:10px 14px;
  border:1px solid var(--otoprep-border);
  border-radius:999px;
  background:#fff;
  color:var(--otoprep-ink);
  font-size:14px;
  line-height:1.2;
  font-weight:700;
  cursor:pointer;
  text-align:center;
  transition:border-color .18s ease, box-shadow .18s ease, color .18s ease, background-color .18s ease, transform .18s ease;
}

body.otoprep-app .otoprep-feedback__chip:hover,
body.otoprep-app .otoprep-feedback__chip:focus-visible{
  border-color:rgba(16,117,188,.30);
  color:var(--otoprep-blue);
  box-shadow:0 0 0 3px rgba(16,117,188,.10);
}

body.otoprep-app .otoprep-feedback__chip.is-selected,
body.otoprep-app .otoprep-feedback__chip[aria-pressed="true"]{
  border-color:rgba(16,117,188,.34);
  background:rgba(16,117,188,.08);
  color:var(--otoprep-blue);
}

body.otoprep-app .otoprep-feedback-popover--report .otoprep-feedback__chip.is-selected,
body.otoprep-app .otoprep-feedback-popover--report .otoprep-feedback__chip[aria-pressed="true"]{
  border-color:rgba(231,105,75,.28);
  background:rgba(231,105,75,.10);
  color:var(--otoprep-orange);
}

body.otoprep-app .otoprep-feedback__followup{
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid rgba(16,117,188,.10);
}

body.otoprep-app .otoprep-feedback__mini-label{
  margin:0 0 8px;
  color:var(--otoprep-muted);
  font-size:12px;
  line-height:1.4;
  font-weight:700;
}

body.otoprep-app .otoprep-feedback__note{
  display:block;
  margin-top:12px;
}

body.otoprep-app .otoprep-feedback__textarea{
  display:block;
  width:100%;
  min-height:84px;
  margin:0;
  padding:11px 12px;
  border:1px solid var(--otoprep-border);
  border-radius:14px;
  background:#fff;
  color:var(--otoprep-ink);
  font-size:14px;
  line-height:1.45;
  resize:vertical;
}

body.otoprep-app .otoprep-feedback__textarea:focus{
  outline:none;
  border-color:rgba(16,117,188,.30);
  box-shadow:0 0 0 3px rgba(16,117,188,.10);
}

body.otoprep-app .otoprep-feedback__actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:10px;
  margin-top:12px;
}

body.otoprep-app .otoprep-feedback__submit{
  appearance:none;
  -webkit-appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:10px 16px;
  border:1px solid var(--otoprep-blue);
  border-radius:999px;
  background:var(--otoprep-blue);
  color:#fff;
  font-size:14px;
  line-height:1.2;
  font-weight:800;
  cursor:pointer;
  transition:transform .18s ease, box-shadow .18s ease, opacity .18s ease;
}

body.otoprep-app .otoprep-feedback-popover--report .otoprep-feedback__submit{
  border-color:var(--otoprep-orange);
  background:var(--otoprep-orange);
}

body.otoprep-app .otoprep-feedback__submit:hover,
body.otoprep-app .otoprep-feedback__submit:focus-visible{
  box-shadow:0 10px 22px rgba(16,117,188,.18);
  transform:translateY(-1px);
}

body.otoprep-app .otoprep-feedback-popover--report .otoprep-feedback__submit:hover,
body.otoprep-app .otoprep-feedback-popover--report .otoprep-feedback__submit:focus-visible{
  box-shadow:0 10px 22px rgba(231,105,75,.20);
}

body.otoprep-app .otoprep-feedback__submit:disabled{
  cursor:wait;
  opacity:.75;
  transform:none;
  box-shadow:none;
}

body.otoprep-app .otoprep-feedback__status{
  flex:1 1 180px;
  min-height:20px;
  color:var(--otoprep-muted);
  font-size:13px;
  line-height:1.4;
}

body.otoprep-app .otoprep-feedback__status.is-error{
  color:var(--otoprep-orange);
}

body.otoprep-app .otoprep-feedback__status.is-success{
  color:var(--otoprep-blue);
}

body.otoprep-app.otoprep-view-result .otoprep-qreview-body > .otoprep-feedback-slot .otoprep-feedback-popover,
body.otoprep-app.otoprep-view-quiz .ays_questtion_explanation > .otoprep-feedback-slot .otoprep-feedback-popover,
body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box > .otoprep-feedback-slot--toolbar .otoprep-feedback-popover{
  max-width:100%;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-question-state-box > .otoprep-feedback-slot--toolbar .otoprep-feedback-popover{
  margin-left:0;
}

body.otoprep-app .otoprep-feedback-popover :focus-visible{
  outline:none;
}

body.otoprep-app.otoprep-reduced-motion .otoprep-feedback-popover,
body.otoprep-app.otoprep-reduced-motion .otoprep-feedback__close,
body.otoprep-app.otoprep-reduced-motion .otoprep-feedback__chip,
body.otoprep-app.otoprep-reduced-motion .otoprep-feedback__submit{
  transition:none;
}

@media (prefers-reduced-motion: reduce){
  body.otoprep-app .otoprep-feedback-popover,
  body.otoprep-app .otoprep-feedback__close,
  body.otoprep-app .otoprep-feedback__chip,
  body.otoprep-app .otoprep-feedback__submit{
    transition:none;
  }
}

@media (max-width: 782px){
  body.otoprep-app .otoprep-feedback-slot{
    margin-top:12px;
  }

  body.otoprep-app .otoprep-feedback-popover{
    width:100%;
    padding:14px 12px 12px;
    border-radius:18px;
  }

  body.otoprep-app .otoprep-feedback__choices,
  body.otoprep-app .otoprep-feedback__tags{
    gap:8px;
  }

  body.otoprep-app .otoprep-feedback__choice,
  body.otoprep-app .otoprep-feedback__chip--tag{
    flex:1 1 calc(50% - 4px);
  }

  body.otoprep-app .otoprep-feedback__submit{
    width:100%;
  }

  body.otoprep-app .otoprep-feedback__actions{
    align-items:stretch;
  }

  body.otoprep-app .otoprep-feedback__status{
    flex:1 1 100%;
  }
}

/* Embedded OtoPrep question rating + below-explanation feedback surfaces */
body.otoprep-app .otoprep-feedback-footer{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  gap:12px;
  width:100%;
  margin-top:14px;
}

body.otoprep-app .otoprep-feedback-footer[hidden]{
  display:none !important;
}

body.otoprep-app .otoprep-feedback-footer > .otoprep-feedback-slot{
  margin:0;
}

body.otoprep-app .otoprep-feedback-footer > .otoprep-feedback-slot .otoprep-feedback-popover{
  max-width:100%;
}

body.otoprep-app .otoprep-inline-rating{
  width:min(100%, 560px);
  background:#fff;
  border:1px solid rgba(16,117,188,.14);
  border-radius:16px;
  box-shadow:0 10px 24px rgba(16,117,188,.08);
  padding:14px;
  color:var(--otoprep-ink);
}

body.otoprep-app .otoprep-inline-rating.is-saved{
  border-color:rgba(16,117,188,.18);
  box-shadow:0 8px 18px rgba(16,117,188,.08);
}

body.otoprep-app .otoprep-inline-rating__head{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-start;
  justify-content:space-between;
  gap:8px 12px;
}

body.otoprep-app .otoprep-inline-rating__label{
  font-size:15px;
  line-height:1.3;
  font-weight:800;
  color:var(--otoprep-ink);
}

body.otoprep-app .otoprep-inline-rating__hint{
  flex:1 1 220px;
  font-size:13px;
  line-height:1.45;
  color:var(--otoprep-muted);
}

body.otoprep-app .otoprep-inline-rating__stars{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}

body.otoprep-app .otoprep-inline-rating__star{
  appearance:none;
  -webkit-appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:48px;
  min-height:48px;
  padding:0;
  border:1px solid var(--otoprep-border);
  border-radius:14px;
  background:rgba(16,117,188,.03);
  color:#B8C3D0;
  font-size:24px;
  line-height:1;
  cursor:pointer;
  transition:border-color .18s ease, box-shadow .18s ease, color .18s ease, background-color .18s ease, transform .18s ease;
}

body.otoprep-app .otoprep-inline-rating__star:hover,
body.otoprep-app .otoprep-inline-rating__star:focus-visible{
  border-color:rgba(231,105,75,.28);
  box-shadow:0 0 0 3px rgba(231,105,75,.10);
  color:var(--otoprep-orange);
}

body.otoprep-app .otoprep-inline-rating__star.is-filled{
  color:var(--otoprep-orange);
}

body.otoprep-app .otoprep-inline-rating__star.is-selected{
  border-color:rgba(231,105,75,.28);
  background:rgba(231,105,75,.08);
  box-shadow:0 0 0 3px rgba(231,105,75,.08);
}

body.otoprep-app .otoprep-inline-rating__followup{
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid rgba(16,117,188,.10);
}

body.otoprep-app .otoprep-inline-rating__saved{
  margin-top:10px;
  color:var(--otoprep-blue);
  font-size:13px;
  line-height:1.4;
  font-weight:700;
}

body.otoprep-app .otoprep-inline-rating__dismiss{
  appearance:none;
  -webkit-appearance:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:10px 16px;
  border:1px solid var(--otoprep-border);
  border-radius:999px;
  background:#fff;
  color:var(--otoprep-ink);
  font-size:14px;
  line-height:1.2;
  font-weight:700;
  cursor:pointer;
  transition:border-color .18s ease, box-shadow .18s ease, color .18s ease, background-color .18s ease;
}

body.otoprep-app .otoprep-inline-rating__dismiss:hover,
body.otoprep-app .otoprep-inline-rating__dismiss:focus-visible{
  border-color:rgba(16,117,188,.24);
  box-shadow:0 0 0 3px rgba(16,117,188,.10);
  color:var(--otoprep-blue);
}

body.otoprep-app.otoprep-reduced-motion .otoprep-inline-rating__star,
body.otoprep-app.otoprep-reduced-motion .otoprep-inline-rating__dismiss{
  transition:none;
}

@media (prefers-reduced-motion: reduce){
  body.otoprep-app .otoprep-inline-rating__star,
  body.otoprep-app .otoprep-inline-rating__dismiss{
    transition:none;
  }
}

@media (max-width: 782px){
  body.otoprep-app .otoprep-feedback-footer{
    margin-top:12px;
  }

  body.otoprep-app .otoprep-inline-rating{
    width:100%;
    padding:14px 12px 12px;
    border-radius:18px;
  }

  body.otoprep-app .otoprep-inline-rating__star{
    flex:1 1 calc(20% - 7px);
    min-width:0;
  }

  body.otoprep-app .otoprep-inline-rating__dismiss{
    width:100%;
  }
}


/* =========================
   Oral workspace toggle + session cards
   ========================= */










































body.otoprep-app .otoprep-topbar__sub--surface{
  margin-top:12px;
  padding-top:12px;
  border-top:1px solid rgba(16,117,188,.12);
}

body.otoprep-app .otoprep-topbar__surface{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
}

body.otoprep-app .otoprep-topbar__surfaceLabel{
  font-size:12px;
  line-height:1;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:var(--otoprep-muted);
}

body.otoprep-app .otoprep-topbar__surfaceSeg{
  flex:0 0 auto;
}

body.otoprep-app .otoprep-topbar__surfaceHint{
  flex:1 1 240px;
  min-width:220px;
  font-size:13px;
  color:var(--otoprep-muted);
}

body.otoprep-app .otoprep-topbar__surfaceDetails{
  display:block;
}

body.otoprep-app .otoprep-topbar__surfaceSummary{
  display:none;
}

body.otoprep-app .otoprep-topbar__surfacePanel{
  display:block;
}

body.otoprep-app .otoprep-topbar__surfaceSummary::-webkit-details-marker{
  display:none;
}



@media (max-width: 720px){
  body.otoprep-app .otoprep-topbar__sub--surface{
    position:relative;
    display:flex;
    justify-content:flex-end;
    align-items:flex-start;
    margin-top:4px;
    padding-top:0;
    border-top:0;
    min-height:0;
  }

  body.otoprep-app .otoprep-topbar__surfaceDetails{
    position:relative;
    width:auto;
    max-width:100%;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    overflow:visible;
    margin-left:auto;
  }

  body.otoprep-app .otoprep-topbar__surfaceSummary{
    list-style:none;
    cursor:pointer;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:6px;
    padding:6px 10px;
    border:1px solid rgba(16,117,188,.14);
    border-radius:999px;
    background:rgba(255,255,255,.92);
    box-shadow:0 8px 18px rgba(16,117,188,.06);
    min-height:0;
    white-space:nowrap;
  }

  body.otoprep-app .otoprep-topbar__surfaceSummaryLabel{
    display:none;
  }

  body.otoprep-app .otoprep-topbar__surfaceSummaryValue{
    display:inline-flex;
    align-items:center;
    gap:4px;
    font-size:12px;
    font-weight:900;
    color:var(--otoprep-blue);
    line-height:1.1;
  }

  body.otoprep-app .otoprep-topbar__surfaceSummary::after{
    content:"▾";
    flex:0 0 auto;
    color:var(--otoprep-muted);
    font-size:12px;
    line-height:1;
  }

  body.otoprep-app .otoprep-topbar__surfaceDetails[open] .otoprep-topbar__surfaceSummary::after{
    content:"▴";
  }

  body.otoprep-app .otoprep-topbar__surfacePanel{
    display:none;
    position:absolute;
    top:calc(100% + 8px);
    right:0;
    width:min(92vw, 320px);
    padding:12px;
    border:1px solid rgba(16,117,188,.12);
    border-radius:16px;
    background:rgba(255,255,255,.98);
    box-shadow:0 18px 40px rgba(16,117,188,.14);
    z-index:30;
  }

  body.otoprep-app .otoprep-topbar__surfaceDetails[open] .otoprep-topbar__surfacePanel{
    display:block;
  }

  body.otoprep-app .otoprep-topbar__surface{
    align-items:stretch;
    gap:10px;
  }

  body.otoprep-app .otoprep-topbar__surfaceLabel,
  body.otoprep-app .otoprep-topbar__surfaceHint{
    flex:1 1 100%;
    min-width:0;
  }

  body.otoprep-app .otoprep-topbar__surfaceSeg{
    width:100%;
    display:flex;
  }

  body.otoprep-app .otoprep-topbar__surfaceSeg .otoprep-seg__btn{
    flex:1 1 0;
  }

  body.otoprep-app .otoprep-topbar__surfaceHint{
    margin-top:-2px;
    font-size:12px;
    line-height:1.4;
  }
}





























/* ------------------------------------------------------------
 * Voice Live Coach mobile-first assessment refactor (21.9.9)
 * Keeps the voice/oral/viva surface inside the OtoPrep wrapper.
 * ------------------------------------------------------------ */


body.otoprep-app.otoprep-view-voice .otoprep-shell{
  max-width:1400px;
  overflow-x:clip;
}



body.otoprep-app.otoprep-view-voice .otoprep-topbar--voice{
  top:max(0px, env(safe-area-inset-top));
  padding:12px 14px;
  box-shadow:0 14px 40px rgba(16,117,188,.12);
}

body.otoprep-app.otoprep-view-voice .otoprep-topbar__row--voice{
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
}

body.otoprep-app.otoprep-view-voice .otoprep-quizbar__left--voice,
body.otoprep-app.otoprep-view-voice .otoprep-quizbar__mid--voice,
body.otoprep-app.otoprep-view-voice .otoprep-quizbar__right--voice{
  min-width:0;
}

body.otoprep-app.otoprep-view-voice .otoprep-quizbar__left--voice{
  display:flex;
  align-items:center;
  gap:10px;
}

body.otoprep-app.otoprep-view-voice .otoprep-quizbar__back{
  display:inline-flex;
  align-items:center;
  gap:6px;
  min-height:44px;
  padding:0 12px;
  border-radius:14px;
  border:1px solid rgba(16,117,188,.14);
  background:rgba(255,255,255,.88);
  text-decoration:none;
  font-weight:900;
}

body.otoprep-app.otoprep-view-voice .otoprep-brand--quiz{
  min-width:0;
}

body.otoprep-app.otoprep-view-voice .otoprep-brand--quiz .otoprep-brand__logo{
  width:34px;
  height:34px;
  border-radius:11px;
}

body.otoprep-app.otoprep-view-voice .otoprep-brand--quiz .otoprep-brand__wordmark{
  font-size:14px;
  line-height:1.1;
}

body.otoprep-app.otoprep-view-voice .otoprep-quizbar__eyebrow--voice{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:8px;
  margin-bottom:4px;
  font-size:12px;
}

body.otoprep-app.otoprep-view-voice .otoprep-quizbar__mode--voice{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:0 9px;
  border-radius:999px;
  border:1px solid rgba(16,117,188,.14);
  background:rgba(16,117,188,.07);
  color:var(--otoprep-blue);
  font-weight:900;
}

body.otoprep-app.otoprep-view-voice .otoprep-quizbar__title{
  font-size:20px;
  line-height:1.15;
  letter-spacing:-.02em;
  white-space:normal;
}

body.otoprep-app.otoprep-view-voice .otoprep-quizbar__meta{
  gap:8px;
}

body.otoprep-app.otoprep-view-voice .otoprep-quizbar__progress,
body.otoprep-app.otoprep-view-voice .otoprep-quizbar__timer,
body.otoprep-app.otoprep-view-voice .otoprep-quizbar__credits{
  min-height:36px;
  padding:0 11px;
  font-size:12px;
  font-weight:900;
}

body.otoprep-app.otoprep-view-voice .otoprep-topbar__sub--voice{
  position:relative;
  margin-top:0;
}

body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceSurface{
  position:relative;
}

body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceSurface > summary::-webkit-details-marker{
  display:none;
}

body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummary{
  list-style:none;
  display:inline-flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  min-height:44px;
  min-width:116px;
  padding:10px 12px;
  border-radius:14px;
  border:1px solid rgba(16,117,188,.14);
  background:rgba(255,255,255,.92);
  cursor:pointer;
  font-weight:900;
  box-shadow:0 8px 24px rgba(16,117,188,.10);
}

body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummaryLabel{
  color:#11202a;
}

body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummaryValue{
  color:var(--otoprep-blue);
  font-size:12px;
}

body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceSurfacePanel{
  position:absolute;
  right:0;
  top:calc(100% + 10px);
  width:min(340px, calc(100vw - 32px));
  z-index:20;
}

body.otoprep-app.otoprep-view-voice .otoprep-topbar__surface--voice{
  padding:14px;
  border-radius:18px;
  border:1px solid rgba(16,117,188,.14);
  background:rgba(255,255,255,.98);
  box-shadow:0 18px 44px rgba(18,32,42,.16);
}

body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceLabel{
  font-weight:900;
  color:#11202a;
}

body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceHint{
  margin-top:4px;
  color:var(--otoprep-muted);
  font-size:12px;
  line-height:1.45;
}

body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceSetting{
  display:flex;
  flex-direction:column;
  gap:6px;
  margin-top:12px;
}

body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceSetting > span{
  font-size:12px;
  font-weight:900;
  color:#11202a;
}

body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceActions{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-top:14px;
}

body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceActions .otoprep-live-action{
  width:100%;
  min-height:44px;
}

body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceActions .otoprep-live-action--danger{
  background:rgba(179,45,46,.08);
  border-color:rgba(179,45,46,.18);
  color:#8d2627;
}













































body.otoprep-app.otoprep-view-voice .otoprep-voice__modepickLabel,
body.otoprep-app.otoprep-view-voice .otoprep-timed-setup__title{
  color:#11202a;
}

































































body.otoprep-app.otoprep-view-voice .otoprep-live-line{
  max-width:90%;
  display:flex;
  flex-direction:column;
  gap:6px;
  padding:12px 13px;
  border-radius:16px;
}

body.otoprep-app.otoprep-view-voice .otoprep-live-line__role{
  font-size:11px;
  font-weight:900;
  letter-spacing:.03em;
  text-transform:uppercase;
  color:var(--otoprep-muted);
}

body.otoprep-app.otoprep-view-voice .otoprep-live-line__text{
  font-size:14px;
  line-height:1.5;
  color:#11202a;
  white-space:pre-wrap;
}

body.otoprep-app.otoprep-view-voice .otoprep-live-line.is-partial{
  opacity:.82;
}















@media (min-width: 981px){
  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummary{
    display:none;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceSurfacePanel{
    position:static;
    width:auto;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surface--voice{
    display:flex;
    align-items:flex-end;
    gap:10px;
    padding:0;
    border:0;
    box-shadow:none;
    background:transparent;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceLabel,
  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceHint{
    display:none;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceSetting{
    margin-top:0;
    min-width:170px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceActions{
    margin-top:0;
  }

  
}

@media (max-width: 980px){
  body.otoprep-app.otoprep-view-voice .otoprep-shell{
    padding-top:10px;
    padding-bottom:calc(var(--otoprep-voice-dock-offset, 134px) + 18px + env(safe-area-inset-bottom));
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar--voice{
    padding:10px 12px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__row--voice{
    grid-template-columns:minmax(0, 1fr) auto;
    grid-template-areas:
      "left right"
      "mid right";
    align-items:start;
    gap:8px 10px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__left--voice{grid-area:left;}
  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__mid--voice{grid-area:mid;}
  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__right--voice{
    grid-area:right;
    align-items:flex-end;
    justify-self:end;
    gap:8px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-brand--quiz .otoprep-brand__wordmark{
    display:none;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__title{
    font-size:17px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__eyebrow--voice .otoprep-quizbar__sub{
    display:none;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__progress,
  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__timer,
  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__credits{
    min-height:34px;
    padding:0 10px;
    font-size:11px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummaryLabel{
    display:none;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummaryValue{
    font-size:13px;
    font-weight:900;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummary::after{
    content:"▾";
    flex:0 0 auto;
    color:var(--otoprep-muted);
    font-size:12px;
    line-height:1;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceSurface[open] .otoprep-topbar__surfaceSummary::after{
    content:"▴";
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceSurfacePanel{
    display:none;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceSurface[open] .otoprep-topbar__voiceSurfacePanel{
    display:block;
  }

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  
}

@media (max-width: 520px){
  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__back{
    padding:0 10px;
  }

  

  
}


/* ------------------------------------------------------------
 * Voice Live Coach milestone 2: mobile-first hierarchy polish (21.9.11)
 * Compresses the header, keeps the stage first, and anchors the dock
 * to the OtoPrep shell instead of the full viewport.
 * ------------------------------------------------------------ */
body.otoprep-app.otoprep-view-voice{
  --otoprep-voice-dock-left:12px;
  --otoprep-voice-dock-right:12px;
  --otoprep-voice-dock-offset:134px;
}













@media (max-width: 980px){
  body.otoprep-app.otoprep-view-voice .otoprep-shell{
    padding-top:10px;
    padding-bottom:calc(var(--otoprep-voice-dock-offset, 134px) + 18px + env(safe-area-inset-bottom));
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar--voice{
    margin-bottom:8px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__mid--voice{
    display:grid;
    gap:2px;
    padding-right:6px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__title{
    display:-webkit-box;
    max-width:100%;
    overflow:hidden;
    -webkit-box-orient:vertical;
    -webkit-line-clamp:2;
  }

  

  

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__meta{
    max-width:min(238px, 58vw);
    justify-content:flex-end;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__sub--voice{
    display:flex;
    justify-content:flex-end;
    width:100%;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummary{
    min-width:84px;
    padding:10px 11px;
  }

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  
}




/* ------------------------------------------------------------
 * Voice Live Coach milestone 3: sheet interaction model
 * Adds richer sheet summaries, a safer mobile end-session guard,
 * and accessibility polish for the in-wrapper utility surfaces.
 * ------------------------------------------------------------ */
body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceActionNote{
  font-size:12px;
  line-height:1.45;
}



















@media (max-width: 980px){
  body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceActions .otoprep-live-action--danger{
    background:rgba(179,45,46,.06);
    box-shadow:none;
  }

  
}



/* ------------------------------------------------------------
 * Voice Live Coach milestone 4: stage polish + review distinction
 * Refines the stage for future avatar/video use, clarifies transcript
 * roles, improves focus states, and makes review mode feel distinct.
 * ------------------------------------------------------------ */



























@keyframes otoprepVoiceWave{
  0%, 100%{transform:scaleY(.62); opacity:.44;}
  50%{transform:scaleY(1); opacity:.92;}
}



















body.otoprep-app.otoprep-view-voice .otoprep-live-line{
  position:relative;
  gap:8px;
  border-radius:18px;
  box-shadow:0 8px 18px rgba(18,32,42,.04);
}

body.otoprep-app.otoprep-view-voice .otoprep-live-line--assistant{
  margin-right:auto;
  border-radius:18px 18px 18px 8px;
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(245,250,255,.96));
  border-color:rgba(16,117,188,.14);
}

body.otoprep-app.otoprep-view-voice .otoprep-live-line--user{
  margin-left:auto;
  border-radius:18px 18px 8px 18px;
  background:linear-gradient(180deg, rgba(16,117,188,.08), rgba(255,255,255,.98));
  border-color:rgba(16,117,188,.18);
}

body.otoprep-app.otoprep-view-voice .otoprep-live-line--system{
  max-width:100%;
  margin-left:auto;
  margin-right:auto;
  background:rgba(244,249,255,.88);
  border-style:dashed;
}

body.otoprep-app.otoprep-view-voice .otoprep-live-line__role{
  display:inline-flex;
  align-items:center;
  align-self:flex-start;
  min-height:22px;
  padding:0 8px;
  border-radius:999px;
  border:1px solid rgba(16,117,188,.12);
  background:rgba(16,117,188,.05);
  color:#0a5584;
}

body.otoprep-app.otoprep-view-voice .otoprep-live-line--user .otoprep-live-line__role{
  background:rgba(16,117,188,.08);
  border-color:rgba(16,117,188,.18);
  color:var(--otoprep-blue);
}

body.otoprep-app.otoprep-view-voice .otoprep-live-line--assistant .otoprep-live-line__role{
  background:rgba(240,247,255,.96);
  border-color:rgba(16,117,188,.12);
}

body.otoprep-app.otoprep-view-voice .otoprep-live-line--system .otoprep-live-line__role{
  background:rgba(18,32,42,.04);
  border-color:rgba(18,32,42,.08);
  color:var(--otoprep-muted);
}

body.otoprep-app.otoprep-view-voice .otoprep-live-line__text{
  overflow-wrap:break-word;
}

body.otoprep-app.otoprep-view-voice .otoprep-live-line.is-partial{
  border-style:dashed;
  box-shadow:none;
}

body.otoprep-app.otoprep-view-voice .otoprep-live-line--preview{
  box-shadow:none;
}

body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummary,
body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceSetting .otoprep-live-select,
body.otoprep-app.otoprep-view-voice .otoprep-voice__mediaSummaryBtn,
body.otoprep-app.otoprep-view-voice .otoprep-voice__utilityChip,
body.otoprep-app.otoprep-view-voice .otoprep-voice__transcriptPreviewAction,
body.otoprep-app.otoprep-view-voice .otoprep-voice__sheetClose,
body.otoprep-app.otoprep-view-voice .otoprep-voice__sheetActions .otoprep-btn,
body.otoprep-app.otoprep-view-voice .otoprep-voice__sheetActions .otoprep-live-action,
body.otoprep-app.otoprep-view-voice .otoprep-voice__controls .otoprep-live-action,
body.otoprep-app.otoprep-view-voice .otoprep-voice__modepick .otoprep-seg__btn{
  transition:box-shadow .18s ease, border-color .18s ease, transform .18s ease, background .18s ease;
}

body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummary:focus-visible,
body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceSetting .otoprep-live-select:focus-visible,
body.otoprep-app.otoprep-view-voice .otoprep-voice__mediaSummaryBtn:focus-visible,
body.otoprep-app.otoprep-view-voice .otoprep-voice__utilityChip:focus-visible,
body.otoprep-app.otoprep-view-voice .otoprep-voice__transcriptPreviewAction:focus-visible,
body.otoprep-app.otoprep-view-voice .otoprep-voice__sheetClose:focus-visible,
body.otoprep-app.otoprep-view-voice .otoprep-voice__sheetActions .otoprep-btn:focus-visible,
body.otoprep-app.otoprep-view-voice .otoprep-voice__sheetActions .otoprep-live-action:focus-visible,
body.otoprep-app.otoprep-view-voice .otoprep-voice__controls .otoprep-live-action:focus-visible,
body.otoprep-app.otoprep-view-voice .otoprep-voice__modepick .otoprep-seg__btn:focus-visible{
  outline:3px solid rgba(16,117,188,.22);
  outline-offset:2px;
  box-shadow:0 0 0 4px rgba(16,117,188,.10);
}


















/* ------------------------------------------------------------
 * Voice Live Coach 21.9.15: mobile stability + compact chrome
 * Fixes mobile jitter, reduces copy noise, keeps the top bar to
 * one row, and replaces the floating multi-row dock with a solid
 * single-row action bar that can be hidden or shown.
 * ------------------------------------------------------------ */
body.otoprep-app.otoprep-view-voice{
  --otoprep-voice-dock-left:12px;
  --otoprep-voice-dock-right:12px;
  --otoprep-voice-dock-offset:88px;
}





@media (max-width: 980px){
  body.otoprep-app.otoprep-view-voice .otoprep-shell{
    padding-bottom:calc(var(--otoprep-voice-dock-offset, 88px) + env(safe-area-inset-bottom));
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar--voice{
    padding:8px 10px;
    margin-bottom:8px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__row--voice{
    display:flex;
    align-items:center;
    gap:8px;
    min-height:52px;
    grid-template-columns:none;
    grid-template-areas:none;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__left--voice,
  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__mid--voice,
  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__right--voice{
    grid-area:auto;
    min-width:0;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__left--voice{
    flex:0 0 auto;
    gap:8px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-brand--quiz,
  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__eyebrow--voice{
    display:none !important;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__mid--voice{
    flex:1 1 auto;
    display:block;
    min-width:0;
    padding-right:0;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__title{
    display:block;
    font-size:14px;
    line-height:1.2;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    -webkit-line-clamp:1;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__right--voice{
    flex:0 0 auto;
    display:flex;
    align-items:center;
    justify-self:auto;
    gap:5px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__meta{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    flex-wrap:nowrap;
    gap:5px;
    max-width:none;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__progress,
  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__timer,
  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__credits{
    flex:0 0 auto;
    min-height:30px;
    padding:0 7px;
    font-size:10.5px;
    line-height:1;
    white-space:nowrap;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__back{
    min-height:38px;
    padding:0 9px;
    border-radius:14px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__sub--voice{
    flex:0 0 auto;
    width:auto;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummary{
    min-width:52px;
    min-height:30px;
    padding:0 8px;
    gap:5px;
    border-radius:999px;
    box-shadow:none;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummaryLabel{
    display:none;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummaryValue{
    font-size:10.5px;
    line-height:1;
    white-space:nowrap;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummary::after{
    font-size:10px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceSurfacePanel{
    top:calc(100% + 8px);
    width:min(320px, calc(100vw - 24px));
  }

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  
}

@media (max-width: 520px){
  body.otoprep-app.otoprep-view-voice .otoprep-topbar--voice{
    padding:8px 9px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__back{
    min-height:36px;
    padding:0 8px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__title{
    font-size:13px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__progress,
  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__timer,
  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__credits,
  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummary{
    min-height:28px;
    padding:0 6px;
    font-size:10px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummary{
    min-width:34px;
    width:34px;
    padding:0;
    justify-content:center;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummaryValue{
    display:none;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummary::before{
    content:"⋯";
    color:var(--otoprep-blue);
    font-size:18px;
    line-height:1;
    font-weight:900;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummary::after{
    display:none;
  }

  

  

  

  
}

/* =========================================================
   21.9.16 oral quick access + mobile header/dock refinements
   ========================================================= */
body.otoprep-app .otoprep-pill__label--long{
  display:inline;
}

body.otoprep-app .otoprep-pill__label--short{
  display:none;
}







































@media (max-width: 980px){
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar{
    padding:calc(8px + env(safe-area-inset-top)) 10px 8px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__row{
    gap:8px;
    align-items:center;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-brand{
    min-width:0;
    font-size:17px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-brand__logo{
    width:32px;
    height:32px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right{
    flex:1 1 auto;
    min-width:0;
    justify-content:flex-end;
    flex-wrap:nowrap;
    overflow-x:auto;
    overflow-y:hidden;
    scrollbar-width:none;
    padding-bottom:2px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right::-webkit-scrollbar{
    display:none;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-exam-switch,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-trialbar{
    flex-wrap:nowrap;
    white-space:nowrap;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-pill,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-chip,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-exam-current{
    flex:0 0 auto;
    min-height:34px;
    padding:0 10px;
    font-size:12px;
    white-space:nowrap;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-pill__label--long{
    display:none;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-pill__label--short{
    display:inline;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__sub--surface{
    margin-top:6px;
    padding-top:0;
    border-top:0;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummary{
    min-height:34px;
    padding:0 10px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummaryValue{
    font-size:12px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar--voice{
    padding:calc(8px + env(safe-area-inset-top)) 10px 8px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__row--voice{
    display:grid;
    grid-template-columns:auto minmax(0, 1fr) auto !important;
    grid-template-areas:"left mid right" !important;
    align-items:center;
    gap:10px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__left--voice{
    grid-area:left;
    display:flex;
    align-items:center;
    gap:8px;
    min-width:0;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-brand--quiz{
    display:none;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__mid--voice{
    grid-area:mid;
    min-width:0;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar--voice .otoprep-quizbar__eyebrow--voice{
    display:none !important;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__title{
    font-size:18px;
    line-height:1.18;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__row--voice .otoprep-quizbar__right,
  body.otoprep-app.otoprep-view-voice .otoprep-topbar__row--voice .otoprep-quizbar__right--voice{
    grid-area:right;
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center;
    justify-content:flex-end;
    gap:6px;
    min-width:0;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__row--voice .otoprep-quizbar__meta,
  body.otoprep-app.otoprep-view-voice .otoprep-topbar__row--voice .otoprep-quizbar__meta[data-otoprep-voice-topmeta]{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center;
    gap:6px;
    min-width:0;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__sub--voice{
    flex:0 0 auto;
    margin-top:0;
    padding-top:0;
    border-top:0;
    min-width:0;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__progress,
  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__timer,
  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__credits{
    flex:0 0 auto;
    min-height:38px;
    min-width:46px;
    padding:0 10px;
    font-size:14px;
    line-height:1;
    white-space:nowrap;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__credits{
    min-width:auto;
    padding:0 12px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummary{
    flex:0 0 auto;
    min-height:38px;
    width:38px;
    min-width:38px;
    padding:0;
    justify-content:center;
    gap:0;
    border-radius:999px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummaryLabel,
  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummaryValue{
    display:none !important;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummary::before{
    content:"⋯";
    color:var(--otoprep-blue);
    font-size:20px;
    line-height:1;
    font-weight:900;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummary::after{
    display:none;
  }

  

  

  

  

  

  

  

  

  

  

  

  

  

  
}

@media (max-width: 720px){
  

  

  

  

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar{
    padding:calc(7px + env(safe-area-inset-top)) 9px 7px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-brand{
    font-size:16px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__back{
    min-height:40px;
    padding:0 12px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__title{
    font-size:16px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__progress,
  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__timer,
  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__credits{
    min-height:36px;
    min-width:42px;
    padding:0 9px;
    font-size:13px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummary{
    min-height:36px;
    min-width:36px;
    width:36px;
  }
}


/* =========================================================
   21.9.17 mobile header + oral access hardening
   ========================================================= */
@media (max-width: 980px){
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar{
    display:grid;
    grid-template-columns:minmax(0, 1fr) auto;
    grid-template-areas:"row surface";
    align-items:center;
    gap:8px;
    padding:calc(7px + env(safe-area-inset-top)) 10px 7px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__row{
    grid-area:row;
    min-width:0;
    gap:8px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-brand{
    flex:0 1 auto;
    min-width:0;
    max-width:32vw;
    gap:8px;
    font-size:15px;
    line-height:1.15;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right{
    flex:1 1 auto;
    min-width:0;
    gap:6px;
    flex-wrap:nowrap;
    overflow-x:auto;
    overflow-y:hidden;
    justify-content:flex-end;
    scrollbar-width:none;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right::-webkit-scrollbar{
    display:none;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-pill,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-chip,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-exam-current{
    flex:0 0 auto;
    min-height:32px;
    padding:0 9px;
    font-size:12px;
    white-space:nowrap;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__sub--surface{
    grid-area:surface;
    align-self:center;
    justify-self:end;
    margin-top:0;
    padding-top:0;
    border-top:0;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummary{
    min-height:32px;
    padding:0 10px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummaryLabel{
    display:none;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__row--voice .otoprep-quizbar__right,
  body.otoprep-app.otoprep-view-voice .otoprep-topbar__row--voice .otoprep-quizbar__right--voice,
  body.otoprep-app.otoprep-view-voice .otoprep-topbar__row--voice .otoprep-quizbar__meta,
  body.otoprep-app.otoprep-view-voice .otoprep-topbar__row--voice .otoprep-quizbar__meta[data-otoprep-voice-topmeta]{
    flex-shrink:0;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__mid--voice{
    min-width:0;
    overflow:hidden;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__title{
    font-size:17px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__progress,
  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__timer,
  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__credits{
    min-height:40px;
    min-width:50px;
    padding:0 10px;
    font-size:14px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__credits{
    min-width:62px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummary{
    min-height:40px;
    width:40px;
    min-width:40px;
  }

  

  

  

  

  
}

@media (max-width: 720px){
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar{
    grid-template-columns:minmax(0, 1fr) auto;
    gap:6px;
    padding:calc(6px + env(safe-area-inset-top)) 9px 6px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-brand{
    max-width:24vw;
    font-size:14px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummary{
    min-height:30px;
    padding:0 9px;
    font-size:12px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__title{
    font-size:16px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__progress,
  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__timer,
  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__credits{
    min-height:38px;
    min-width:48px;
    padding:0 9px;
    font-size:13px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__credits{
    min-width:58px;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummary{
    min-height:38px;
    width:38px;
    min-width:38px;
  }

  

  
}

/* =========================================================
   21.9.18 oral simulation UX refinements
   ========================================================= */






























@keyframes otoprep-voice-feedback-loader{
  0%, 80%, 100%{
    transform:translateY(0);
    opacity:.38;
  }
  40%{
    transform:translateY(-4px);
    opacity:1;
  }
}








/* =========================================================
   21.9.19 oral transcript return-path refinements
   ========================================================= */








/* =========================================================
   21.9.20 oral session polish: stable dock + feedback loader
   ========================================================= */

























/* =========================================================
   21.9.21 mobile parity + robust feedback overlay
   ========================================================= */
:root{
  --otoprep-feedback-vw:100vw;
  --otoprep-feedback-vh:100vh;
  --otoprep-feedback-top:0px;
  --otoprep-feedback-left:0px;
}

@supports (height: 100dvh){
  :root{
    --otoprep-feedback-vh:100dvh;
  }
}









































@keyframes otoprep-voice-feedback-ring{
  to{
    transform:rotate(360deg);
  }
}



/* Oral question review surfaces */














































/* =========================================================
   21.9.28 QC hardening for PMPro grant dedupe
   ========================================================= */
html body.otoprep-app{
  min-height:100dvh;
}

body.otoprep-app{
  min-height:100dvh;
  overflow-x:hidden;
  overscroll-behavior-y:none;
}

body.otoprep-app .otoprep-shell{
  min-height:100dvh;
  box-sizing:border-box;
  padding-bottom:calc(96px + env(safe-area-inset-bottom));
}

body.otoprep-app .otoprep-tabs{
  padding-bottom:max(8px, env(safe-area-inset-bottom));
  box-shadow:0 -10px 28px rgba(19,32,42,.10);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  transform:translateZ(0);
}

body.otoprep-app .otoprep-tabs__inner{
  align-items:stretch;
}

body.otoprep-app .otoprep-acc > summary,
body.otoprep-app .otoprep-acc--sub > summary{
  list-style:none;
}

body.otoprep-app .otoprep-acc > summary::marker,
body.otoprep-app .otoprep-acc--sub > summary::marker,
body.otoprep-app details.otoprep-qreview > summary::marker,
body.otoprep-app .otoprep-topbar__surfaceDetails > summary::marker,
body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceSurface > summary::marker{
  content:"";
  display:none;
}

body.otoprep-app .otoprep-acc > summary::-webkit-details-marker,
body.otoprep-app .otoprep-acc--sub > summary::-webkit-details-marker,
body.otoprep-app details.otoprep-qreview > summary::-webkit-details-marker,
body.otoprep-app .otoprep-topbar__surfaceDetails > summary::-webkit-details-marker,
body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceSurface > summary::-webkit-details-marker{
  display:none;
}

body.otoprep-app .otoprep-acc > summary,
body.otoprep-app .otoprep-acc--sub > summary{
  display:grid;
  grid-template-columns:minmax(0, 1fr) auto;
  align-items:center;
}

body.otoprep-app .otoprep-acc__title{
  min-width:0;
  flex:1 1 auto;
}

body.otoprep-app .otoprep-acc > summary > .otoprep-pill,
body.otoprep-app .otoprep-acc--sub > summary > .otoprep-pill{
  flex:0 0 auto;
  justify-self:end;
}







@media (max-width: 980px){
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar{
    display:grid;
    grid-template-columns:minmax(0, 1fr) auto;
    grid-template-areas:"main surface";
    align-items:start;
    gap:10px 12px;
    padding:calc(10px + env(safe-area-inset-top)) 12px 12px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__row{
    grid-area:main;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:10px;
    min-width:0;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-brand{
    flex:0 1 auto;
    min-width:0;
    max-width:40vw;
    gap:8px;
    font-size:16px;
    line-height:1.18;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right{
    flex:1 1 100%;
    width:100%;
    min-width:0;
    justify-content:flex-start;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
    overflow:visible;
    padding-bottom:0;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-exam-switch,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-trialbar{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:wrap;
    white-space:normal;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-pill,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-chip,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-exam-current{
    flex:0 0 auto;
    min-height:38px;
    padding:0 12px;
    font-size:13px;
    white-space:nowrap;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__sub--surface{
    grid-area:surface;
    align-self:start;
    justify-self:end;
    margin-top:0;
    padding-top:0;
    border-top:0;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummary{
    min-height:38px;
    padding:0 14px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummaryLabel{
    display:none;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummaryValue{
    font-size:13px;
    font-weight:900;
  }

  
}

@media (max-width: 720px){
  body.otoprep-app .otoprep-shell{
    padding-left:12px;
    padding-right:12px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar{
    gap:8px 10px;
    padding:calc(9px + env(safe-area-inset-top)) 10px 10px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-brand{
    max-width:36vw;
    font-size:15px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right{
    gap:7px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-pill,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-chip,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-exam-current,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummary{
    min-height:36px;
    font-size:12px;
  }

  

  
}

/* =========================================================
   21.9.29 mobile oral header + course library tidy-up
   ========================================================= */
body.otoprep-app a.otoprep-pill{
  text-decoration:none;
}















@media (max-width:980px){
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar{
    gap:8px 10px;
    padding:calc(8px + env(safe-area-inset-top)) 10px 10px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__row{
    gap:8px;
    align-items:flex-start;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-brand{
    max-width:none;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-brand__logo{
    width:30px;
    height:30px;
    border-radius:10px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right{
    align-items:center;
    gap:6px 8px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-exam-switch,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-exam-current{
    flex:1 1 220px;
    min-width:0;
    max-width:100%;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-exam-switch{
    display:flex;
    align-items:center;
    gap:6px;
    flex-wrap:nowrap;
    overflow-x:auto;
    overflow-y:hidden;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    padding-bottom:2px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-exam-switch::-webkit-scrollbar,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-trialbar::-webkit-scrollbar{
    display:none;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-exam-switch .otoprep-chip{
    flex:0 0 auto;
    min-height:34px;
    padding:0 11px;
    font-size:12px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-exam-current,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-pill,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-trialbar > .otoprep-pill{
    min-height:34px;
    padding:0 11px;
    font-size:12px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-trialbar{
    display:flex;
    align-items:center;
    gap:6px;
    flex-wrap:nowrap;
    overflow-x:auto;
    max-width:100%;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    padding-bottom:2px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummary{
    min-height:36px;
    padding:6px 12px;
    gap:6px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummaryLabel{
    display:inline-block;
    font-size:10px;
    line-height:1;
    font-weight:900;
    color:var(--otoprep-muted);
    white-space:nowrap;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummaryValue{
    font-size:13px;
    line-height:1.1;
  }

  

  

  

  

  

  

  

  

  

  

  
}

@media (max-width:720px){
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-exam-switch,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-exam-current{
    flex-basis:100%;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummary{
    padding:6px 10px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummaryLabel{
    font-size:9px;
  }

  
}


/* =========================================================
   21.9.31 mock review recovery + submission resilience
   ========================================================= */

/* Hide native/theme markers so Safari/iOS does not show stray square glyphs. */
body.otoprep-app .otoprep-topbar__surfaceSummary,
body.otoprep-app [data-otoprep-vmod-course] > summary,
body.otoprep-app [data-otoprep-vmod-topicgroup] > summary,
body.otoprep-app [data-otoprep-vmod-standalone] > summary{
  list-style:none !important;
  list-style-image:none !important;
  -webkit-appearance:none;
  appearance:none;
  background-image:none !important;
}

body.otoprep-app .otoprep-topbar__surfaceSummary::before,
body.otoprep-app [data-otoprep-vmod-course] > summary::before,
body.otoprep-app [data-otoprep-vmod-topicgroup] > summary::before,
body.otoprep-app [data-otoprep-vmod-standalone] > summary::before{
  content:none !important;
  display:none !important;
}

body.otoprep-app .otoprep-topbar__surfaceSummary::marker,
body.otoprep-app [data-otoprep-vmod-course] > summary::marker,
body.otoprep-app [data-otoprep-vmod-topicgroup] > summary::marker,
body.otoprep-app [data-otoprep-vmod-standalone] > summary::marker{
  content:none !important;
  color:transparent !important;
  display:none !important;
}

body.otoprep-app .otoprep-topbar__surfaceSummary::-webkit-details-marker,
body.otoprep-app [data-otoprep-vmod-course] > summary::-webkit-details-marker,
body.otoprep-app [data-otoprep-vmod-topicgroup] > summary::-webkit-details-marker,
body.otoprep-app [data-otoprep-vmod-standalone] > summary::-webkit-details-marker{
  display:none !important;
  opacity:0 !important;
}

@media (max-width: 980px){
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar{
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) auto;
    grid-template-areas:
      "brand surface"
      "meta meta";
    align-items:center;
    gap:10px 12px;
    padding:calc(10px + env(safe-area-inset-top)) 12px 12px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__row{
    display:contents;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-brand{
    grid-area:brand;
    min-width:0;
    max-width:none;
    font-size:15px;
    line-height:1.15;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-brand__logo{
    width:32px;
    height:32px;
    border-radius:10px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right{
    grid-area:meta;
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:flex-start;
    gap:8px;
    width:100%;
    min-width:0;
    overflow:visible;
    padding:0;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-exam-switch,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-exam-current{
    order:1;
    flex:1 1 100%;
    min-width:0;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-exam-switch{
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:nowrap;
    overflow-x:auto;
    overflow-y:hidden;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    padding-bottom:2px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-exam-switch::-webkit-scrollbar,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-trialbar::-webkit-scrollbar{
    display:none;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-exam-current{
    justify-content:flex-start;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-trialbar{
    order:2;
    display:flex;
    align-items:center;
    gap:8px;
    flex-wrap:nowrap;
    overflow-x:auto;
    max-width:100%;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    padding-bottom:2px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-pill{
    order:2;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-pill,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-trialbar > .otoprep-pill,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-exam-current,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-exam-switch .otoprep-chip{
    min-height:36px;
    padding:0 12px;
    font-size:12px;
    white-space:nowrap;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-pill .otoprep-pill__label--long,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-trialbar > .otoprep-pill .otoprep-pill__label--long{
    display:none;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-pill .otoprep-pill__label--short,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__right > .otoprep-trialbar > .otoprep-pill .otoprep-pill__label--short{
    display:inline;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__sub--surface{
    grid-area:surface;
    align-self:center;
    justify-self:end;
    margin:0;
    padding:0;
    border:0;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceDetails{
    display:block;
    position:relative;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummary{
    display:block !important;
    position:relative;
    min-height:36px;
    padding:9px 34px 9px 14px;
    border:1px solid rgba(16,117,188,.14);
    border-radius:999px;
    background:rgba(255,255,255,.96);
    box-shadow:0 8px 18px rgba(16,117,188,.06);
    white-space:nowrap;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummaryLabel{
    display:inline-block !important;
    margin-right:8px;
    font-size:11px;
    line-height:1;
    font-weight:800;
    color:var(--otoprep-muted);
    vertical-align:middle;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummaryValue{
    display:inline-block !important;
    font-size:15px;
    line-height:1;
    font-weight:900;
    color:var(--otoprep-blue);
    vertical-align:middle;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummary::after{
    content:"▾";
    position:absolute;
    top:50%;
    right:13px;
    transform:translateY(-50%);
    color:var(--otoprep-muted);
    font-size:12px;
    line-height:1;
    transition:transform .18s ease;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceDetails[open] .otoprep-topbar__surfaceSummary::after{
    transform:translateY(-50%) rotate(180deg);
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfacePanel{
    top:calc(100% + 8px);
    right:0;
    width:min(92vw, 320px);
  }

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  

  
}

@media (max-width: 640px){
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar{
    gap:9px 10px;
    padding:calc(9px + env(safe-area-inset-top)) 10px 10px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummary{
    padding:8px 32px 8px 12px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummaryLabel{
    font-size:10px;
    margin-right:6px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummaryValue{
    font-size:14px;
  }

  

  
}

/* 21.9.54: mobile-first /app Progress action dashboard + certificates */
body.otoprep-app .otoprep-progress-sectionhead{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}

body.otoprep-app .otoprep-progress-statgrid{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  margin-top:12px;
}

body.otoprep-app .otoprep-progress-statcard{
  border:1px solid rgba(16,117,188,.12);
  background:#f8fbfe;
  border-radius:18px;
  padding:14px;
  box-shadow:0 8px 20px rgba(19,32,42,.04);
}

body.otoprep-app .otoprep-progress-statcard__label{
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
  color:var(--otoprep-muted);
}

body.otoprep-app .otoprep-progress-statcard__value{
  margin-top:6px;
  font-size:24px;
  line-height:1.05;
  font-weight:900;
  color:var(--otoprep-ink);
}

body.otoprep-app .otoprep-progress-statcard__sub{
  margin-top:6px;
  font-size:13px;
  line-height:1.35;
  color:var(--otoprep-muted);
}

body.otoprep-app .otoprep-progress-actionlist,
body.otoprep-app .otoprep-progress-historylist,
body.otoprep-app .otoprep-progress-certificate-options{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  margin-top:12px;
}

body.otoprep-app .otoprep-progress-actioncard{
  display:flex;
  gap:12px;
  border:1px solid rgba(16,117,188,.13);
  background:#ffffff;
  border-radius:18px;
  padding:14px;
}

body.otoprep-app .otoprep-progress-actioncard--warning{
  border-color:rgba(231,105,75,.28);
  background:#fffaf7;
}

body.otoprep-app .otoprep-progress-actioncard__icon{
  flex:0 0 34px;
  width:34px;
  height:34px;
  border-radius:12px;
  display:grid;
  place-items:center;
  background:rgba(16,117,188,.10);
  color:var(--otoprep-blue);
  font-weight:900;
}

body.otoprep-app .otoprep-progress-actioncard--warning .otoprep-progress-actioncard__icon{
  background:rgba(231,105,75,.12);
  color:var(--otoprep-orange);
}

body.otoprep-app .otoprep-progress-actioncard__body{min-width:0;}
body.otoprep-app .otoprep-progress-actioncard__eyebrow{
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.08em;
  color:var(--otoprep-muted);
}

body.otoprep-app .otoprep-progress-actioncard__title,
body.otoprep-app .otoprep-progress-historyitem__title{
  margin:3px 0 0;
  font-size:16px;
  line-height:1.25;
  color:var(--otoprep-ink);
}

body.otoprep-app .otoprep-progress-certificate{
  display:flex;
  align-items:flex-start;
  gap:14px;
  border-color:rgba(16,117,188,.18);
  background:linear-gradient(135deg,#ffffff 0%,#f6fbff 100%);
}

body.otoprep-app .otoprep-progress-certificate__icon{
  flex:0 0 42px;
  width:42px;
  height:42px;
  border-radius:16px;
  display:grid;
  place-items:center;
  background:rgba(16,117,188,.10);
  color:var(--otoprep-blue);
  font-weight:900;
  font-size:20px;
}

body.otoprep-app .otoprep-progress-certificate__body{min-width:0; flex:1 1 auto;}
body.otoprep-app .otoprep-progress-certificate__actions{margin-top:12px; gap:8px; flex-wrap:wrap;}

body.otoprep-app .otoprep-progress-certificate-summary{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  margin-top:14px;
}

body.otoprep-app .otoprep-progress-certificate-summary > div,
body.otoprep-app .otoprep-progress-certificate-option{
  border:1px solid var(--otoprep-border);
  background:#ffffff;
  border-radius:16px;
  padding:13px;
}

body.otoprep-app .otoprep-progress-certificate-summary strong{
  display:block;
  font-size:12px;
  color:var(--otoprep-muted);
  text-transform:uppercase;
  letter-spacing:.04em;
  margin-bottom:4px;
}

body.otoprep-app .otoprep-progress-certificate-summary span{
  display:block;
  font-weight:800;
  color:var(--otoprep-ink);
}

body.otoprep-app .otoprep-progress-historyitem{
  display:grid;
  grid-template-columns:38px minmax(0,1fr) auto 30px;
  align-items:center;
  gap:10px;
  border:1px solid var(--otoprep-border);
  border-radius:18px;
  padding:12px;
  background:#ffffff;
}

body.otoprep-app .otoprep-progress-historyitem__icon{
  width:38px;
  height:38px;
  border-radius:14px;
  display:grid;
  place-items:center;
  background:rgba(16,117,188,.10);
  color:var(--otoprep-blue);
  font-weight:900;
}

body.otoprep-app .otoprep-progress-historyitem__main{min-width:0;}
body.otoprep-app .otoprep-progress-historyitem__title{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body.otoprep-app .otoprep-progress-historyitem__meta{
  margin-top:4px;
  font-size:13px;
  color:var(--otoprep-muted);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body.otoprep-app .otoprep-progress-historyitem__score{
  text-align:right;
  font-size:18px;
  line-height:1.1;
  font-weight:900;
  color:var(--otoprep-blue);
}

body.otoprep-app .otoprep-progress-historyitem__score span{
  display:block;
  margin-top:3px;
  font-size:11px;
  font-weight:700;
  color:var(--otoprep-muted);
}

body.otoprep-app .otoprep-progress-historyitem__review{
  width:30px;
  height:30px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:var(--otoprep-muted);
  text-decoration:none;
  font-size:30px;
  line-height:1;
}

@media (max-width: 480px){
  body.otoprep-app .otoprep-progress-historyitem{
    grid-template-columns:34px minmax(0,1fr) 30px;
  }
  body.otoprep-app .otoprep-progress-historyitem__score{
    grid-column:2 / 3;
    text-align:left;
    font-size:15px;
  }
  body.otoprep-app .otoprep-progress-historyitem__review{
    grid-column:3 / 4;
    grid-row:1 / 3;
  }
}

@media (min-width: 720px){
  body.otoprep-app .otoprep-progress-statgrid,
  body.otoprep-app .otoprep-progress-certificate-summary{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  body.otoprep-app .otoprep-progress-certificate-options{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* 21.9.55 Account certificates + Home refresh */
body.otoprep-app .otoprep-home-undertrack-actions{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  flex-wrap:wrap;
  margin-top:12px;
}
body.otoprep-app .otoprep-home-undertrack-actions__copy{max-width:520px;}
body.otoprep-app .otoprep-home-quickstart{margin-top:12px;}
body.otoprep-app .otoprep-home-quickgrid{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:14px;
}
body.otoprep-app .otoprep-home-quickcard{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:7px;
  min-height:112px;
  padding:15px;
  border-radius:18px;
  border:1px solid var(--otoprep-border);
  background:#fff;
  color:var(--otoprep-ink);
  text-decoration:none;
  box-shadow:0 10px 26px rgba(15,23,42,.06);
  overflow:hidden;
}
body.otoprep-app .otoprep-home-quickcard:after{
  content:"›";
  position:absolute;
  top:12px;
  right:14px;
  font-size:28px;
  line-height:1;
  color:var(--otoprep-muted);
}
body.otoprep-app .otoprep-home-quickcard:hover,
body.otoprep-app .otoprep-home-quickcard:focus{
  transform:translateY(-1px);
  box-shadow:0 16px 32px rgba(15,23,42,.10);
}
body.otoprep-app .otoprep-home-quickcard__eyebrow{
  width:max-content;
  max-width:100%;
  border-radius:999px;
  padding:4px 9px;
  background:rgba(16,117,188,.10);
  color:var(--otoprep-blue);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}
body.otoprep-app .otoprep-home-quickcard strong{
  padding-right:20px;
  font-size:17px;
  line-height:1.2;
}
body.otoprep-app .otoprep-home-quickcard > span:last-child{
  color:var(--otoprep-muted);
  font-size:13px;
  line-height:1.35;
}
body.otoprep-app .otoprep-home-quickcard--primary{
  border-color:rgba(16,117,188,.32);
  background:linear-gradient(135deg, rgba(16,117,188,.10), #fff 54%);
}
body.otoprep-app .otoprep-home-quickcard--oral{
  border-color:rgba(124,58,237,.28);
  background:linear-gradient(135deg, rgba(124,58,237,.11), #fff 58%);
}
body.otoprep-app .otoprep-home-quickcard--oral .otoprep-home-quickcard__eyebrow{
  background:rgba(124,58,237,.12);
  color:#6d28d9;
}

body.otoprep-app .otoprep-account-cert-card{
  position:relative;
  overflow:hidden;
  border-color:rgba(16,117,188,.18);
  background:linear-gradient(135deg, #ffffff 0%, #f6fbff 100%);
  margin-top:12px;
}
body.otoprep-app .otoprep-account-cert-card__shine{
  position:absolute;
  width:170px;
  height:170px;
  right:-58px;
  top:-72px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(16,117,188,.20), rgba(16,117,188,0) 68%);
  pointer-events:none;
}
body.otoprep-app .otoprep-account-cert-card__head{
  position:relative;
  display:flex;
  gap:14px;
  align-items:flex-start;
}
body.otoprep-app .otoprep-account-cert-card__brand{
  flex:0 0 58px;
  width:58px;
  height:58px;
  border-radius:18px;
  display:grid;
  place-items:center;
  background:#fff;
  border:1px solid rgba(16,117,188,.18);
  box-shadow:0 10px 22px rgba(15,23,42,.08);
  overflow:hidden;
}
body.otoprep-app .otoprep-account-cert-card__brand img{
  max-width:48px;
  max-height:48px;
  object-fit:contain;
}
body.otoprep-app .otoprep-account-cert-card__brand span{
  color:var(--otoprep-blue);
  font-size:22px;
  font-weight:900;
}
body.otoprep-app .otoprep-account-cert-card__preview{
  position:relative;
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  margin-top:14px;
}
body.otoprep-app .otoprep-account-cert-card__preview > div{
  border:1px solid rgba(16,117,188,.12);
  border-radius:15px;
  background:rgba(255,255,255,.86);
  padding:11px 12px;
}
body.otoprep-app .otoprep-account-cert-card__preview span{
  display:block;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.05em;
  color:var(--otoprep-muted);
  font-weight:900;
  margin-bottom:4px;
}
body.otoprep-app .otoprep-account-cert-card__preview strong{
  display:block;
  color:var(--otoprep-ink);
  line-height:1.25;
}
body.otoprep-app .otoprep-account-cert-topics{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}
body.otoprep-app .otoprep-account-cert-topics span{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  border-radius:999px;
  padding:4px 10px;
  background:#fff;
  border:1px solid rgba(16,117,188,.16);
  color:var(--otoprep-blue);
  font-size:12px;
  font-weight:800;
}
body.otoprep-app .otoprep-account-cert-centre-head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
  flex-wrap:wrap;
}
body.otoprep-app .otoprep-account-cert-exams .otoprep-seg{
  flex-wrap:wrap;
}
body.otoprep-app .otoprep-account-cert-exams .otoprep-seg a{
  text-decoration:none;
  border-radius:999px;
  padding:8px 12px;
  color:var(--otoprep-muted);
  font-weight:800;
}
body.otoprep-app .otoprep-account-cert-exams .otoprep-seg a.is-active{
  background:#fff;
  color:var(--otoprep-blue);
  box-shadow:0 4px 12px rgba(15,23,42,.08);
}
body.otoprep-app .otoprep-account-cert-hero{
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
  background:linear-gradient(135deg, #f8fbff, #fff);
}
body.otoprep-app .otoprep-account-cert-hero__paper{
  position:relative;
  border:1px solid rgba(16,117,188,.28);
  border-radius:22px;
  background:#fff;
  padding:20px;
  min-height:360px;
  box-shadow:0 18px 38px rgba(15,23,42,.10);
}
body.otoprep-app .otoprep-account-cert-hero__paper:before{
  content:"";
  position:absolute;
  inset:10px;
  border:1px solid rgba(16,117,188,.18);
  border-radius:17px;
  pointer-events:none;
}
body.otoprep-app .otoprep-account-cert-hero__brandrow{
  position:relative;
  display:flex;
  align-items:center;
  gap:10px;
}
body.otoprep-app .otoprep-account-cert-hero__brandrow img{
  width:48px;
  height:48px;
  object-fit:contain;
  border-radius:12px;
  background:#fff;
}
body.otoprep-app .otoprep-account-cert-hero__brandrow strong,
body.otoprep-app .otoprep-account-cert-hero__brandrow span{
  display:block;
}
body.otoprep-app .otoprep-account-cert-hero__brandrow span{
  color:var(--otoprep-muted);
  font-size:12px;
}
body.otoprep-app .otoprep-account-cert-hero__title{
  position:relative;
  margin-top:34px;
  font-size:28px;
  line-height:1.1;
  font-weight:900;
  color:var(--otoprep-ink);
  text-align:center;
}
body.otoprep-app .otoprep-account-cert-hero__paper p{
  position:relative;
  text-align:center;
  color:var(--otoprep-muted);
  margin:18px 0 0;
}
body.otoprep-app .otoprep-account-cert-hero__paper h2,
body.otoprep-app .otoprep-account-cert-hero__paper h3{
  position:relative;
  text-align:center;
  margin:12px 0 0;
  color:var(--otoprep-ink);
}
body.otoprep-app .otoprep-account-cert-hero__paper h2{
  font-size:26px;
  border-bottom:1px solid rgba(16,117,188,.24);
  padding-bottom:10px;
}
body.otoprep-app .otoprep-account-cert-hero__paper h3{font-size:20px;}
body.otoprep-app .otoprep-account-cert-hero__meta{
  position:relative;
  display:grid;
  grid-template-columns:1fr;
  gap:8px;
  margin-top:28px;
}
body.otoprep-app .otoprep-account-cert-hero__meta span{
  border-radius:12px;
  background:rgba(16,117,188,.07);
  padding:9px 10px;
  color:var(--otoprep-muted);
  font-size:12px;
}
body.otoprep-app .otoprep-account-cert-hero__meta strong{color:var(--otoprep-ink);}
body.otoprep-app .otoprep-account-cert-hero__side{min-width:0;}
body.otoprep-app .otoprep-account-cert-downloads{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin-top:14px;
}
body.otoprep-app .otoprep-account-cert-downloads article{
  border:1px solid var(--otoprep-border);
  border-radius:18px;
  background:#fff;
  padding:14px;
}
body.otoprep-app .otoprep-account-cert-topics-card,
body.otoprep-app .otoprep-account-cert-report-preview{margin-top:12px;}
body.otoprep-app .otoprep-account-cert-topicgrid{
  display:grid;
  grid-template-columns:1fr;
  gap:10px;
  margin-top:14px;
}
body.otoprep-app .otoprep-account-cert-topicgrid article{
  border:1px solid var(--otoprep-border);
  border-radius:16px;
  background:#fff;
  padding:12px;
}
body.otoprep-app .otoprep-account-cert-topicgrid strong,
body.otoprep-app .otoprep-account-cert-topicgrid span{
  display:block;
}
body.otoprep-app .otoprep-account-cert-topicgrid span{
  color:var(--otoprep-muted);
  font-size:12px;
  margin-top:4px;
}

@media (min-width: 640px){
  body.otoprep-app .otoprep-home-quickgrid{grid-template-columns:repeat(2,minmax(0,1fr));}
  body.otoprep-app .otoprep-account-cert-card__preview{grid-template-columns:repeat(3,minmax(0,1fr));}
  body.otoprep-app .otoprep-account-cert-hero__meta{grid-template-columns:repeat(2,minmax(0,1fr));}
  body.otoprep-app .otoprep-account-cert-downloads{grid-template-columns:repeat(2,minmax(0,1fr));}
  body.otoprep-app .otoprep-account-cert-topicgrid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (min-width: 900px){
  body.otoprep-app .otoprep-account-cert-hero{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);}
}
@media (max-width: 480px){
  body.otoprep-app .otoprep-account-cert-card__head{flex-direction:column;}
  body.otoprep-app .otoprep-account-cert-hero__paper{padding:16px;}
  body.otoprep-app .otoprep-account-cert-hero__title{font-size:23px;}
  body.otoprep-app .otoprep-account-cert-hero__paper h2{font-size:22px;}
}

/* Home chart-only on-track card (carried forward) */
body.otoprep-app .otoprep-progress-trackhero--compact{
  padding-bottom:16px;
}
body.otoprep-app .otoprep-progress-trackhero--compact .otoprep-progress-trackhero__chart{
  margin-top:12px;
}
body.otoprep-app .otoprep-progress-activitychart--home .otoprep-progress-chartlegend{
  margin-top:0;
}
body.otoprep-app .otoprep-progress-activitychart--home .otoprep-progress-chartcard{
  margin-top:10px;
  border-color:rgba(16,117,188,.12);
  background:linear-gradient(180deg, rgba(255,255,255,.99), rgba(244,249,253,.96));
}

/* 21.9.57 Phase 1 conversion wrapper update */
body.otoprep-app .otoprep-conversion-hero{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(260px,.85fr);
  gap:18px;
  align-items:stretch;
  overflow:hidden;
}

body.otoprep-app .otoprep-conversion-hero__eyebrow{
  text-transform:uppercase;
  letter-spacing:.08em;
  font-weight:900;
  color:var(--otoprep-blue);
}

body.otoprep-app .otoprep-conversion-hero__title{
  margin:8px 0 0;
  font-size:clamp(24px, 4vw, 38px);
  line-height:1.05;
  letter-spacing:-.04em;
}

body.otoprep-app .otoprep-conversion-hero__body{
  margin:12px 0 0;
  color:var(--otoprep-muted);
  font-size:15px;
  line-height:1.55;
  max-width:720px;
}

body.otoprep-app .otoprep-conversion-hero__actions{
  margin-top:18px;
}

body.otoprep-app .otoprep-conversion-hero__note{
  margin:14px 0 0;
}

body.otoprep-app .otoprep-conversion-hero__panel{
  display:grid;
  gap:10px;
  padding:14px;
  border-radius:16px;
  background:linear-gradient(180deg, rgba(16,117,188,.09), rgba(16,117,188,.03));
  border:1px solid rgba(16,117,188,.14);
}

body.otoprep-app .otoprep-conversion-stat{
  display:grid;
  gap:4px;
  padding:12px;
  border-radius:14px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(16,117,188,.10);
}

body.otoprep-app .otoprep-conversion-stat strong{
  font-size:14px;
  font-weight:950;
}

body.otoprep-app .otoprep-conversion-stat span{
  color:var(--otoprep-muted);
  font-size:13px;
  line-height:1.4;
}

body.otoprep-app .otoprep-conversion-section{
  margin-top:14px;
}

body.otoprep-app .otoprep-conversion-section__note{
  margin:14px 0 0;
}

body.otoprep-app .otoprep-exam-grid--conversion{
  margin-top:14px;
}

body.otoprep-app .otoprep-exam-card--conversion{
  display:flex;
  flex-direction:column;
  gap:10px;
  border-color:rgba(16,117,188,.14);
  box-shadow:0 8px 20px rgba(16,117,188,.06);
}

body.otoprep-app .otoprep-exam-card--conversion .otoprep-actions{
  margin-top:auto;
}

body.otoprep-app .otoprep-exam-card__summary{
  margin:0;
  line-height:1.45;
}

body.otoprep-app .otoprep-exam-card__chips{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
}

body.otoprep-app .otoprep-mini-chip{
  display:inline-flex;
  align-items:center;
  min-height:26px;
  padding:0 9px;
  border-radius:999px;
  background:rgba(16,117,188,.08);
  border:1px solid rgba(16,117,188,.14);
  color:var(--otoprep-blue);
  font-size:12px;
  font-weight:850;
}

body.otoprep-app .otoprep-plan-section{
  margin-top:14px;
}

body.otoprep-app .otoprep-plan-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));
  gap:12px;
  margin-top:14px;
}

body.otoprep-app .otoprep-plan-group{
  margin-top:16px;
}

body.otoprep-app .otoprep-plan-group__title{
  font-weight:900;
  margin-bottom:8px;
}

body.otoprep-app .otoprep-plan-card{
  position:relative;
  display:flex;
  flex-direction:column;
  gap:10px;
  min-height:100%;
  padding:14px;
  border-radius:16px;
  background:#fff;
  border:1px solid rgba(16,117,188,.16);
  box-shadow:0 10px 24px rgba(16,117,188,.07);
}

body.otoprep-app .otoprep-plan-card.is-featured{
  border-color:rgba(231,105,75,.36);
  box-shadow:0 14px 30px rgba(231,105,75,.12);
}

body.otoprep-app .otoprep-plan-card__badge{
  align-self:flex-start;
  padding:5px 9px;
  border-radius:999px;
  background:rgba(231,105,75,.12);
  border:1px solid rgba(231,105,75,.25);
  color:var(--otoprep-orange);
  font-size:12px;
  font-weight:950;
}

body.otoprep-app .otoprep-plan-card__title{
  margin:0;
  font-size:17px;
  line-height:1.2;
  font-weight:950;
}

body.otoprep-app .otoprep-plan-card__price{
  font-size:18px;
  font-weight:950;
  color:var(--otoprep-blue);
}

body.otoprep-app .otoprep-plan-card__meta{
  margin:0;
  color:var(--otoprep-muted);
  font-size:13px;
  line-height:1.45;
}

body.otoprep-app .otoprep-plan-card__benefits{
  margin:0 0 2px;
  padding:0;
  list-style:none;
  display:grid;
  gap:7px;
  color:var(--otoprep-ink);
  font-size:13px;
  line-height:1.35;
}

body.otoprep-app .otoprep-plan-card__benefits li{
  position:relative;
  padding-left:18px;
}

body.otoprep-app .otoprep-plan-card__benefits li::before{
  content:"✓";
  position:absolute;
  left:0;
  top:0;
  color:var(--otoprep-blue);
  font-weight:950;
}

body.otoprep-app .otoprep-plan-card .otoprep-btn{
  margin-top:auto;
}

body.otoprep-app .otoprep-lock-card--trial{
  border-color:rgba(231,105,75,.24);
  background:linear-gradient(180deg, rgba(231,105,75,.06), #fff 46%);
}

body.otoprep-app .otoprep-lock-card__eyebrow{
  display:inline-flex;
  align-items:center;
  padding:5px 9px;
  border-radius:999px;
  background:rgba(231,105,75,.12);
  border:1px solid rgba(231,105,75,.24);
  color:var(--otoprep-orange);
  font-size:12px;
  font-weight:950;
}

body.otoprep-app .otoprep-lock-card__title{
  margin:10px 0 0;
  font-size:24px;
  line-height:1.12;
}

body.otoprep-app .otoprep-lock-card__copy{
  margin:10px 0 0;
  line-height:1.5;
}

body.otoprep-app .otoprep-lock-card__bullets{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:12px 0 0;
  padding:0;
  list-style:none;
}

body.otoprep-app .otoprep-lock-card__bullets li{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(16,117,188,.08);
  border:1px solid rgba(16,117,188,.14);
  color:var(--otoprep-blue);
  font-size:12px;
  font-weight:850;
}

@media (max-width: 760px){
  body.otoprep-app .otoprep-conversion-hero{
    grid-template-columns:1fr;
  }

  body.otoprep-app .otoprep-conversion-hero__title{
    font-size:28px;
  }

  body.otoprep-app .otoprep-plan-grid{
    grid-template-columns:1fr;
  }
}


/* 22.1.2 Phase 2 trial-to-paid funnel update */
body.otoprep-app .otoprep-home-trial,
body.otoprep-app .otoprep-result-upsell,
body.otoprep-app .otoprep-trial-moment{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(260px,.8fr);
  gap:20px;
  align-items:stretch;
  overflow:hidden;
}
body.otoprep-app .otoprep-home-trial{
  position:relative;
  border-color:rgba(37,99,235,.24);
}
body.otoprep-app .otoprep-home-trial__copy,
body.otoprep-app .otoprep-result-upsell__copy{
  min-width:0;
}
body.otoprep-app .otoprep-home-trial__eyebrow,
body.otoprep-app .otoprep-result-upsell__eyebrow,
body.otoprep-app .otoprep-trial-home__eyebrow{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin-bottom:8px;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:#1d4ed8;
}
body.otoprep-app .otoprep-home-trial__title,
body.otoprep-app .otoprep-result-upsell__title{
  margin:0;
  font-size:clamp(22px,3vw,32px);
  line-height:1.08;
  letter-spacing:-.03em;
}
body.otoprep-app .otoprep-home-trial__body,
body.otoprep-app .otoprep-result-upsell__body{
  margin:10px 0 0;
  max-width:760px;
}
body.otoprep-app .otoprep-home-trial__chips,
body.otoprep-app .otoprep-result-upsell__stats{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
}
body.otoprep-app .otoprep-result-upsell__stats span{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:7px 10px;
  border:1px solid rgba(148,163,184,.34);
  border-radius:999px;
  background:rgba(248,250,252,.84);
  color:#475569;
  font-size:13px;
}
body.otoprep-app .otoprep-home-trial__actions,
body.otoprep-app .otoprep-result-upsell__actions,
body.otoprep-app .otoprep-trial-moment__actions{
  margin-top:18px;
}
body.otoprep-app .otoprep-home-trial__meter,
body.otoprep-app .otoprep-result-upsell__side,
body.otoprep-app .otoprep-trial-moment__meter{
  border:1px solid rgba(148,163,184,.28);
  border-radius:20px;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,250,252,.9));
  padding:16px;
  min-width:0;
}
body.otoprep-app .otoprep-home-trial__meterhead,
body.otoprep-app .otoprep-result-upsell__meterhead{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
  color:#0f172a;
}
body.otoprep-app .otoprep-home-trial__meterhead span,
body.otoprep-app .otoprep-result-upsell__meterhead span{
  color:#64748b;
  font-size:13px;
  font-weight:700;
}
body.otoprep-app .otoprep-home-trial__bar{
  height:12px;
  border-radius:999px;
  overflow:hidden;
  background:rgba(226,232,240,.92);
  box-shadow:inset 0 0 0 1px rgba(148,163,184,.24);
}
body.otoprep-app .otoprep-home-trial__bar span{
  display:block;
  height:100%;
  min-width:4px;
  border-radius:inherit;
  background:linear-gradient(90deg,#2563eb,#14b8a6);
}
body.otoprep-app .otoprep-home-trial__numbers{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin-top:12px;
}
body.otoprep-app .otoprep-home-trial__numbers span{
  display:block;
  border:1px solid rgba(148,163,184,.22);
  border-radius:14px;
  padding:10px;
  background:#fff;
  color:#64748b;
  font-size:12px;
}
body.otoprep-app .otoprep-home-trial__numbers strong{
  display:block;
  color:#0f172a;
  font-size:20px;
  line-height:1.1;
}
body.otoprep-app .otoprep-home-quickcard--upgrade{
  border-color:rgba(37,99,235,.38);
  background:linear-gradient(180deg,rgba(239,246,255,.92),rgba(255,255,255,.96));
}
body.otoprep-app .otoprep-home-quickcard--upgrade .otoprep-home-quickcard__eyebrow{
  color:#1d4ed8;
}
body.otoprep-app .otoprep-result-upsell{
  border-color:rgba(20,184,166,.28);
}
body.otoprep-app .otoprep-trial-moment__content{
  display:contents;
}
body.otoprep-app .otoprep-trial-path__grid{
  margin-top:14px;
}
@media (max-width: 780px){
  body.otoprep-app .otoprep-home-trial,
  body.otoprep-app .otoprep-result-upsell,
  body.otoprep-app .otoprep-trial-moment{
    grid-template-columns:1fr;
  }
  body.otoprep-app .otoprep-home-trial__numbers{
    grid-template-columns:1fr;
  }
  body.otoprep-app .otoprep-home-trial__actions .otoprep-btn,
  body.otoprep-app .otoprep-result-upsell__actions .otoprep-btn,
  body.otoprep-app .otoprep-trial-moment__actions .otoprep-btn{
    width:100%;
    justify-content:center;
  }
}

/* -------------------------------------------------------------
 * OtoPrep /app Phase 2: trial-to-paid funnel surfaces
 * ------------------------------------------------------------- */
body.otoprep-app .otoprep-trial-home{
  overflow:hidden;
  border-color:rgba(16,117,188,.18);
  background:linear-gradient(135deg, rgba(16,117,188,.08), rgba(231,105,75,.07) 54%, #fff 100%);
}

body.otoprep-app .otoprep-trial-home__hero{
  display:grid;
  grid-template-columns:minmax(0, 1.45fr) minmax(260px, .75fr);
  gap:18px;
  align-items:stretch;
}

body.otoprep-app .otoprep-trial-home__copy{
  min-width:0;
}

body.otoprep-app .otoprep-trial-home__eyebrow,
body.otoprep-app .otoprep-result-upsell__eyebrow{
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(231,105,75,.12);
  border:1px solid rgba(231,105,75,.24);
  color:var(--otoprep-orange);
  font-size:12px;
  font-weight:950;
  letter-spacing:.01em;
}

body.otoprep-app .otoprep-trial-home h2{
  margin:10px 0 8px;
  font-size:clamp(25px, 4vw, 38px);
  line-height:1.05;
  letter-spacing:-.03em;
  color:var(--otoprep-ink);
}

body.otoprep-app .otoprep-trial-home__actions,
body.otoprep-app .otoprep-trial-moment__actions,
body.otoprep-app .otoprep-result-upsell__actions{
  margin-top:16px;
}

body.otoprep-app .otoprep-trial-home__metercard{
  display:flex;
  align-items:center;
  min-width:0;
  padding:16px;
  border-radius:18px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(16,117,188,.14);
  box-shadow:0 16px 36px rgba(16,117,188,.10);
}

body.otoprep-app .otoprep-trial-meter{
  width:100%;
}

body.otoprep-app .otoprep-trial-meter__top,
body.otoprep-app .otoprep-result-upsell__meterhead{
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:flex-start;
  color:var(--otoprep-ink);
  font-size:13px;
}

body.otoprep-app .otoprep-trial-meter__top span,
body.otoprep-app .otoprep-result-upsell__meterhead span{
  color:var(--otoprep-muted);
  font-weight:750;
}

body.otoprep-app .otoprep-trial-meter__top strong{
  text-align:right;
  font-size:13px;
  line-height:1.25;
}

body.otoprep-app .otoprep-trial-meter__track,
body.otoprep-app .otoprep-home-trial__bar{
  position:relative;
  height:12px;
  margin-top:11px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(16,117,188,.11);
  border:1px solid rgba(16,117,188,.12);
}

body.otoprep-app .otoprep-trial-meter__fill,
body.otoprep-app .otoprep-home-trial__bar span{
  display:block;
  height:100%;
  min-width:4px;
  border-radius:inherit;
  background:linear-gradient(90deg, var(--otoprep-blue), var(--otoprep-orange));
}

body.otoprep-app .otoprep-trial-meter__meta{
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-top:9px;
  color:var(--otoprep-muted);
  font-size:12px;
  font-weight:750;
}

body.otoprep-app .otoprep-trial-meter--compact .otoprep-trial-meter__top{
  display:block;
}

body.otoprep-app .otoprep-trial-meter--compact .otoprep-trial-meter__top strong{
  display:block;
  margin-top:3px;
  text-align:left;
}

body.otoprep-app .otoprep-trial-dashboard,
body.otoprep-app .otoprep-trial-path{
  border-color:rgba(16,117,188,.14);
}

body.otoprep-app .otoprep-trial-kpis{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:12px;
}

body.otoprep-app .otoprep-trial-path__grid{
  margin-top:14px;
}

body.otoprep-app .otoprep-home-quickcard--upgrade{
  border-color:rgba(231,105,75,.30);
  background:linear-gradient(180deg, rgba(231,105,75,.09), #fff 72%);
}

body.otoprep-app .otoprep-home-quickcard--upgrade .otoprep-home-quickcard__eyebrow{
  color:var(--otoprep-orange);
}

body.otoprep-app .otoprep-trial-moment,
body.otoprep-app .otoprep-result-upsell{
  border-color:rgba(231,105,75,.25);
  background:linear-gradient(135deg, rgba(231,105,75,.08), #fff 48%, rgba(16,117,188,.05));
}

body.otoprep-app .otoprep-trial-moment__content,
body.otoprep-app .otoprep-result-upsell{
  display:grid;
  grid-template-columns:minmax(0, 1.35fr) minmax(260px, .75fr);
  gap:16px;
  align-items:center;
}

body.otoprep-app .otoprep-trial-moment__score{
  margin-top:8px;
  font-weight:800;
}

body.otoprep-app .otoprep-trial-moment__meter,
body.otoprep-app .otoprep-result-upsell__side{
  min-width:0;
  padding:14px;
  border-radius:16px;
  background:rgba(255,255,255,.88);
  border:1px solid rgba(16,117,188,.13);
}

body.otoprep-app .otoprep-result-upsell__copy{
  min-width:0;
}

body.otoprep-app .otoprep-result-upsell__title{
  margin:10px 0 0;
  font-size:24px;
  line-height:1.12;
}

body.otoprep-app .otoprep-result-upsell__body{
  margin-top:8px;
}

body.otoprep-app .otoprep-result-upsell__stats{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:12px;
}

body.otoprep-app .otoprep-result-upsell__stats span{
  display:inline-flex;
  align-items:center;
  gap:4px;
  min-height:28px;
  padding:0 10px;
  border-radius:999px;
  background:rgba(16,117,188,.08);
  border:1px solid rgba(16,117,188,.13);
  color:var(--otoprep-blue);
  font-size:12px;
  font-weight:850;
}

body.otoprep-app .otoprep-result-upsell__meterhead{
  margin-bottom:0;
}

@media (max-width: 900px){
  body.otoprep-app .otoprep-trial-home__hero,
  body.otoprep-app .otoprep-trial-moment__content,
  body.otoprep-app .otoprep-result-upsell{
    grid-template-columns:1fr;
  }

  body.otoprep-app .otoprep-trial-kpis{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px){
  body.otoprep-app .otoprep-trial-home,
  body.otoprep-app .otoprep-trial-dashboard,
  body.otoprep-app .otoprep-trial-path,
  body.otoprep-app .otoprep-trial-moment,
  body.otoprep-app .otoprep-result-upsell{
    border-radius:18px;
  }

  body.otoprep-app .otoprep-trial-home__metercard,
  body.otoprep-app .otoprep-trial-moment__meter,
  body.otoprep-app .otoprep-result-upsell__side{
    padding:12px;
  }

  body.otoprep-app .otoprep-trial-kpis{
    grid-template-columns:1fr;
  }

  body.otoprep-app .otoprep-trial-meter__top,
  body.otoprep-app .otoprep-trial-meter__meta,
  body.otoprep-app .otoprep-result-upsell__meterhead{
    display:block;
  }

  body.otoprep-app .otoprep-trial-meter__top strong,
  body.otoprep-app .otoprep-result-upsell__meterhead span{
    display:block;
    margin-top:3px;
    text-align:left;
  }
}

/* 22.1.3 Phase 3 mobile shell polish: compact topbar, tap targets, focus states */
body.otoprep-app{
  --otoprep-focus-ring:rgba(16,117,188,.42);
}

body.otoprep-app .otoprep-topbar--app-shell{
  display:grid;
  gap:8px;
}

body.otoprep-app .otoprep-topbar--app-shell .otoprep-topbar__row--primary{
  align-items:center;
  min-width:0;
}

body.otoprep-app .otoprep-topbar--app-shell .otoprep-brand{
  min-height:44px;
  min-width:0;
  padding:0 6px 0 0;
  border-radius:14px;
  text-decoration:none;
  color:var(--otoprep-ink);
}

body.otoprep-app .otoprep-topbar--app-shell .otoprep-brand__text{
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}

body.otoprep-app .otoprep-topbar--app-shell .otoprep-topbar__right{
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}

body.otoprep-app .otoprep-topbar__examSlot,
body.otoprep-app .otoprep-topbar__statusSlot{
  min-width:0;
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}

body.otoprep-app .otoprep-topbar__examSlot{
  flex:1 1 220px;
}

body.otoprep-app .otoprep-topbar__statusSlot{
  flex:0 1 auto;
}

body.otoprep-app .otoprep-pill,
body.otoprep-app .otoprep-chip,
body.otoprep-app .otoprep-btn,
body.otoprep-app .otoprep-seg__btn,
body.otoprep-app .otoprep-tab,
body.otoprep-app .otoprep-exam-current,
body.otoprep-app .otoprep-topbar__surfaceSummary,
body.otoprep-app .otoprep-live-action,
body.otoprep-app .otoprep-live-select{
  min-height:44px;
}

body.otoprep-app .otoprep-pill,
body.otoprep-app .otoprep-chip,
body.otoprep-app .otoprep-btn,
body.otoprep-app .otoprep-seg__btn,
body.otoprep-app .otoprep-exam-current,
body.otoprep-app .otoprep-topbar__surfaceSummary{
  touch-action:manipulation;
  -webkit-tap-highlight-color:rgba(16,117,188,.12);
}

body.otoprep-app :where(a,button,input,select,textarea,summary,[tabindex]):focus-visible{
  outline:3px solid var(--otoprep-focus-ring);
  outline-offset:3px;
  border-radius:12px;
}

body.otoprep-app .otoprep-exam-menu{
  position:relative;
  display:inline-block;
  max-width:100%;
}

body.otoprep-app .otoprep-exam-menu__summary,
body.otoprep-app .otoprep-exam-current--single{
  position:relative;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:1px;
  min-width:170px;
  max-width:min(320px, 42vw);
  padding:7px 34px 7px 12px;
  line-height:1.12;
  list-style:none;
  cursor:pointer;
}

body.otoprep-app .otoprep-exam-current--single{
  cursor:default;
  padding-right:12px;
}

body.otoprep-app .otoprep-exam-menu__summary::-webkit-details-marker{
  display:none;
}

body.otoprep-app .otoprep-exam-menu__summary::after{
  content:"▾";
  position:absolute;
  right:12px;
  top:50%;
  transform:translateY(-50%);
  color:var(--otoprep-muted);
  font-size:13px;
  transition:transform .16s ease;
}

body.otoprep-app .otoprep-exam-menu[open] .otoprep-exam-menu__summary::after{
  transform:translateY(-50%) rotate(180deg);
}

body.otoprep-app .otoprep-exam-menu__label{
  display:block;
  color:var(--otoprep-muted);
  font-size:10px;
  font-weight:900;
  letter-spacing:.07em;
  text-transform:uppercase;
}

body.otoprep-app .otoprep-exam-menu__value{
  display:block;
  max-width:100%;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  color:var(--otoprep-ink);
  font-size:13px;
  font-weight:950;
}

body.otoprep-app .otoprep-exam-menu__panel{
  display:none;
  position:absolute;
  top:calc(100% + 8px);
  right:0;
  z-index:120;
  min-width:260px;
  max-width:min(92vw, 380px);
  padding:8px;
  border:1px solid rgba(16,117,188,.16);
  border-radius:16px;
  background:#fff;
  box-shadow:0 22px 48px rgba(15,23,42,.18);
}

body.otoprep-app .otoprep-exam-menu[open] .otoprep-exam-menu__panel{
  display:grid;
  gap:6px;
}

body.otoprep-app .otoprep-exam-menu__item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-height:44px;
  padding:9px 11px;
  border-radius:12px;
  text-decoration:none;
  color:var(--otoprep-ink);
  font-size:13px;
  font-weight:850;
}

body.otoprep-app .otoprep-exam-menu__item:hover,
body.otoprep-app .otoprep-exam-menu__item:focus-visible{
  background:rgba(16,117,188,.08);
}

body.otoprep-app .otoprep-exam-menu__item.is-active{
  background:rgba(16,117,188,.10);
  color:var(--otoprep-blue);
}

body.otoprep-app .otoprep-exam-menu__activeText{
  flex:0 0 auto;
  color:var(--otoprep-muted);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}

body.otoprep-app .otoprep-topbar--app-shell .otoprep-trialbar{
  align-items:center;
  gap:8px;
}

body.otoprep-app .otoprep-topbar--app-shell .otoprep-pill--upgrade{
  box-shadow:0 8px 18px rgba(231,105,75,.10);
}

@media (max-width: 860px){
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell{
    padding:calc(8px + env(safe-area-inset-top)) 10px 10px;
    border-radius:16px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__row--primary{
    display:grid;
    grid-template-columns:minmax(0, auto) minmax(0, 1fr);
    grid-template-areas:
      "brand exam"
      "status status";
    gap:8px 10px;
    align-items:center;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-brand{
    grid-area:brand;
    max-width:42vw;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-brand__logo{
    width:32px;
    height:32px;
    flex:0 0 32px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__right{
    display:contents;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__examSlot{
    grid-area:exam;
    justify-self:end;
    width:100%;
    justify-content:flex-end;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__statusSlot{
    grid-area:status;
    width:100%;
    justify-content:stretch;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__statusSlot:empty{
    display:none;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__statusSlot > .otoprep-pill,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__statusSlot > .otoprep-trialbar{
    width:100%;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-trialbar{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:8px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-trialbar > .otoprep-pill{
    width:100%;
    padding-left:10px;
    padding-right:10px;
    white-space:normal;
    text-align:center;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-exam-menu,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-exam-current--single{
    width:min(100%, 240px);
    max-width:100%;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-exam-menu__summary,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-exam-current--single{
    min-width:0;
    width:100%;
    max-width:100%;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-exam-menu__panel{
    right:0;
    left:auto;
    min-width:min(320px, calc(100vw - 28px));
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__sub--surface{
    margin-top:0;
    padding-top:8px;
    border-top:1px solid rgba(16,117,188,.10);
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummary{
    width:100%;
    justify-content:space-between;
    min-height:44px;
  }
}

@media (max-width: 520px){
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-brand__text{
    max-width:26vw;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-exam-menu__label,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-exam-current--single .otoprep-exam-menu__label{
    display:none;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-exam-menu__value{
    font-size:12px;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-trialbar{
    grid-template-columns:1fr;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-upgrade__sep,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-upgrade__meta--short{
    display:none;
  }
}


/* 22.1.4 Phase 4: progressive onboarding and value-moment retention nudges */


body.otoprep-app .otoprep-onboard__eyebrow,
body.otoprep-app .otoprep-retention-card__eyebrow{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin:0 0 8px;
  padding:5px 10px;
  border-radius:999px;
  background:rgba(16,117,188,.10);
  color:#0b5f9d;
  font-size:12px;
  font-weight:800;
  letter-spacing:.02em;
  text-transform:uppercase;
}













body.otoprep-app .otoprep-retention-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:18px;
  align-items:center;
  margin:18px 0;
  padding:20px;
  border:1px solid rgba(16,117,188,.20);
  border-radius:20px;
  background:linear-gradient(135deg, rgba(247,251,255,.98), rgba(255,255,255,.98));
  box-shadow:0 16px 40px rgba(15,43,74,.08);
}

body.otoprep-app .otoprep-retention-card__copy h2,
body.otoprep-app .otoprep-retention-card__copy h3{
  margin:0 0 8px;
  color:#142235;
  font-size:clamp(20px, 2.4vw, 26px);
  line-height:1.15;
}

body.otoprep-app .otoprep-retention-card__copy p{
  margin:0;
  max-width:620px;
  color:#516070;
  font-size:15px;
  line-height:1.55;
}

body.otoprep-app .otoprep-retention-card__actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:10px;
  min-width:min(100%, 260px);
}

body.otoprep-app .otoprep-retention-card__actions .otoprep-btn{
  min-height:44px;
}

body.otoprep-app .otoprep-retention-card [data-otoprep-install-trigger]{
  border-style:dashed;
}

body.otoprep-app .otoprep-install-banner--manual .otoprep-install-banner__title::after{
  content:" · after your result";
  color:#64748b;
  font-size:12px;
  font-weight:700;
}

@media (max-width: 760px){
  

  

  

  body.otoprep-app .otoprep-retention-card{
    grid-template-columns:1fr;
    padding:18px;
  }

  body.otoprep-app .otoprep-retention-card__actions{
    justify-content:stretch;
    min-width:0;
  }

  body.otoprep-app .otoprep-retention-card__actions .otoprep-btn{
    flex:1 1 100%;
    justify-content:center;
  }
}



/* Speaking Practice UX refresh */








































/* =========================================================
   22.1.10 /app header fit + oral simulation desktop controls
   ========================================================= */

/* Main /app wrapper: keep the header as a compact information row instead of
   stacking brand, exam/status, and Quiz/Oral controls into a tall card. */
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell{
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) auto !important;
  grid-template-areas:"primary surface" !important;
  align-items:center !important;
  gap:8px 12px !important;
  padding:calc(8px + env(safe-area-inset-top)) 10px 8px !important;
  border-radius:16px !important;
}

body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__row--primary{
  grid-area:primary !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  min-width:0 !important;
}

body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-brand--home{
  flex:0 1 auto !important;
  min-width:0 !important;
  max-width:clamp(112px, 22vw, 220px) !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}

body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-brand__logo{
  flex:0 0 32px !important;
  width:32px !important;
  height:32px !important;
}

body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-brand__text,
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-brand__wordmark{
  min-width:0 !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}

body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__right{
  display:flex !important;
  flex:1 1 auto !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:8px !important;
  min-width:0 !important;
  width:auto !important;
  overflow:visible !important;
  padding:0 !important;
}

body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__examSlot,
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__statusSlot{
  min-width:0 !important;
  width:auto !important;
}

body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__examSlot{
  flex:0 1 260px !important;
}

body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__statusSlot{
  flex:0 1 auto !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:8px !important;
  flex-wrap:nowrap !important;
}

body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-trialbar{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  flex-wrap:nowrap !important;
  max-width:100% !important;
}

body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-pill,
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-chip,
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-exam-current,
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-exam-menu__summary{
  min-height:40px !important;
  white-space:nowrap !important;
}

body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-exam-menu,
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-exam-current--single{
  width:100% !important;
  max-width:100% !important;
}

body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-exam-menu__summary,
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-exam-current--single{
  min-width:0 !important;
  max-width:100% !important;
  padding-top:5px !important;
  padding-bottom:5px !important;
}

body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__sub--surface{
  grid-area:surface !important;
  align-self:center !important;
  justify-self:end !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  min-width:0 !important;
}

body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__surfaceDetails{
  position:relative !important;
  display:block !important;
  width:auto !important;
  max-width:100% !important;
}

/* Desktop/laptop: show the actual Quiz / Oral segmented control inline. */
@media (min-width: 981px){
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__surfaceSummary{
    display:none !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__surfacePanel{
    display:block !important;
    position:static !important;
    width:auto !important;
    padding:0 !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__surface{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__surfaceLabel,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__surfaceHint{
    display:none !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__surfaceSeg{
    display:inline-flex !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__surfaceSeg .otoprep-seg__btn{
    min-height:38px !important;
    padding:0 13px !important;
  }
}

/* Phone/tablet: keep the same controls available through a clear compact chip;
   the dropdown panel is hidden until opened so it cannot make the header tall. */
@media (max-width: 980px){
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell{
    grid-template-columns:minmax(0, 1fr) auto !important;
    grid-template-areas:"primary surface" !important;
    gap:7px 8px !important;
  }

  html:not(.otoprep-layout-v3) body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__right{
    flex-wrap:nowrap !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    -webkit-overflow-scrolling:touch !important;
    scrollbar-width:none !important;
  }

  html:not(.otoprep-layout-v3) body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__right::-webkit-scrollbar{
    display:none !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__examSlot,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__statusSlot,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-trialbar,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-pill{
    flex:0 0 auto !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__examSlot{
    max-width:min(44vw, 250px) !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-pill,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-chip,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-exam-current,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-exam-menu__summary{
    min-height:36px !important;
    padding-top:4px !important;
    padding-bottom:4px !important;
    font-size:12px !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__surfaceSummary{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:6px !important;
    min-height:36px !important;
    width:auto !important;
    padding:0 28px 0 11px !important;
    border:1px solid rgba(16,117,188,.14) !important;
    border-radius:999px !important;
    background:rgba(255,255,255,.96) !important;
    box-shadow:0 8px 18px rgba(16,117,188,.06) !important;
    white-space:nowrap !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__surfaceSummaryLabel{
    display:inline !important;
    font-size:10px !important;
    line-height:1 !important;
    font-weight:900 !important;
    color:var(--otoprep-muted) !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__surfaceSummaryValue{
    display:inline !important;
    font-size:13px !important;
    line-height:1 !important;
    font-weight:950 !important;
    color:var(--otoprep-blue) !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__surfaceSummary::after{
    content:"▾" !important;
    position:absolute !important;
    top:50% !important;
    right:10px !important;
    transform:translateY(-50%) !important;
    display:block !important;
    color:var(--otoprep-muted) !important;
    font-size:12px !important;
    line-height:1 !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__surfaceDetails[open] .otoprep-topbar__surfaceSummary::after{
    transform:translateY(-50%) rotate(180deg) !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__surfacePanel{
    display:none !important;
    position:absolute !important;
    top:calc(100% + 8px) !important;
    right:0 !important;
    width:min(92vw, 320px) !important;
    padding:12px !important;
    border:1px solid rgba(16,117,188,.14) !important;
    border-radius:16px !important;
    background:#fff !important;
    box-shadow:0 18px 40px rgba(16,117,188,.16) !important;
    z-index:200 !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__surfaceDetails[open] .otoprep-topbar__surfacePanel{
    display:block !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__surfacePanel .otoprep-topbar__surface{
    display:grid !important;
    gap:10px !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__surfacePanel .otoprep-topbar__surfaceSeg{
    width:100% !important;
    display:flex !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__surfacePanel .otoprep-seg__btn{
    flex:1 1 0 !important;
  }
}

@media (max-width: 520px){
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell{
    padding:calc(6px + env(safe-area-inset-top)) 8px 6px !important;
    gap:6px !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-brand--home{
    max-width:42px !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-brand__text,
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-brand__wordmark{
    display:none !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-brand__logo{
    width:30px !important;
    height:30px !important;
    flex-basis:30px !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__examSlot{
    max-width:min(48vw, 210px) !important;
  }

  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__surfaceSummaryLabel{
    display:none !important;
  }
}

/* Oral/voice simulation topbar: expose the Quiz / Oral switch and keep desktop
   settings behind a More menu so the header and stage fit on laptops. */






@media (min-width: 981px){
  body.otoprep-app.otoprep-view-voice .otoprep-topbar--voice{
    padding:10px 12px !important;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__row--voice{
    grid-template-columns:auto minmax(220px, 1fr) auto !important;
    gap:12px !important;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__right--voice{
    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:8px !important;
  }

  

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__sub--voice{
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummary{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:6px !important;
    min-height:36px !important;
    min-width:76px !important;
    padding:0 12px !important;
    border-radius:999px !important;
    white-space:nowrap !important;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummaryLabel{
    display:none !important;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummaryValue{
    display:inline !important;
    font-size:12px !important;
    font-weight:950 !important;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummary::before{
    content:none !important;
    display:none !important;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummary::after{
    content:"▾" !important;
    display:inline !important;
    position:static !important;
    transform:none !important;
    color:var(--otoprep-muted) !important;
    font-size:12px !important;
    line-height:1 !important;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceSurface[open] .otoprep-topbar__surfaceSummary::after{
    content:"▴" !important;
    transform:none !important;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceSurfacePanel{
    display:none !important;
    position:absolute !important;
    right:0 !important;
    top:calc(100% + 10px) !important;
    width:min(360px, calc(100vw - 32px)) !important;
    z-index:220 !important;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceSurface[open] .otoprep-topbar__voiceSurfacePanel{
    display:block !important;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surface--voice{
    display:grid !important;
    gap:12px !important;
    padding:14px !important;
    border:1px solid rgba(16,117,188,.14) !important;
    border-radius:18px !important;
    background:#fff !important;
    box-shadow:0 18px 44px rgba(18,32,42,.16) !important;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceLabel,
  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceHint{
    display:block !important;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceSetting,
  body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceActions{
    margin-top:0 !important;
    min-width:0 !important;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-topbar__voiceActions .otoprep-live-action{
    width:100% !important;
  }

  

  
}

@media (max-width: 1160px) and (min-width: 981px){
  body.otoprep-app.otoprep-view-voice .otoprep-brand--quiz .otoprep-brand__wordmark{
    display:none !important;
  }

  body.otoprep-app.otoprep-view-voice .otoprep-quizbar__title{
    font-size:18px !important;
  }
}



@media (max-width: 980px){
  body.otoprep-app.otoprep-view-voice .otoprep-topbar__surfaceSummary::before{
    content:"⋯" !important;
    display:block !important;
    color:var(--otoprep-blue) !important;
    font-size:20px !important;
    line-height:1 !important;
    font-weight:900 !important;
  }
}


/* 22.1.11 Home command-centre refresh */
body.otoprep-app .otoprep-home-today{
  display:flex;
  justify-content:space-between;
  align-items:stretch;
  gap:18px;
  border-color:rgba(16,117,188,.22);
  background:linear-gradient(135deg, rgba(16,117,188,.10), #ffffff 54%, rgba(14,165,233,.07));
}
body.otoprep-app .otoprep-home-today__copy{
  min-width:0;
  max-width:760px;
}
body.otoprep-app .otoprep-home-today__eyebrow,
body.otoprep-app .otoprep-home-datecard__eyebrow,
body.otoprep-app .otoprep-home-focus__eyebrow,
body.otoprep-app .otoprep-home-oral__eyebrow{
  display:inline-flex;
  align-items:center;
  width:max-content;
  max-width:100%;
  border-radius:999px;
  padding:4px 10px;
  background:rgba(16,117,188,.10);
  color:var(--otoprep-blue);
  font-size:11px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
body.otoprep-app .otoprep-home-today__title{
  margin:10px 0 0;
  font-size:clamp(24px,3vw,34px);
  line-height:1.08;
  letter-spacing:-.03em;
}
body.otoprep-app .otoprep-home-today__body{
  margin:10px 0 0;
  max-width:680px;
  font-size:15px;
  line-height:1.5;
}
body.otoprep-app .otoprep-home-today__chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
}
body.otoprep-app .otoprep-home-today__actions{
  flex:0 0 230px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:10px;
}
body.otoprep-app .otoprep-home-today__actions .otoprep-btn{
  width:100%;
  justify-content:center;
}

body.otoprep-app .otoprep-home-datecard{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:14px;
  margin-top:12px;
  padding:14px 16px;
}
body.otoprep-app .otoprep-home-datecard__summary{
  min-width:0;
}
body.otoprep-app .otoprep-home-datecard__summary strong,
body.otoprep-app .otoprep-home-datecard__summary span{
  display:block;
}
body.otoprep-app .otoprep-home-datecard__summary strong{
  margin-top:7px;
  font-size:16px;
  line-height:1.25;
}
body.otoprep-app .otoprep-home-datecard__summary span{
  margin-top:3px;
  color:var(--otoprep-muted);
  font-size:13px;
}
body.otoprep-app .otoprep-home-datecard__edit{
  flex:0 0 auto;
  min-width:0;
  text-align:right;
}
body.otoprep-app .otoprep-home-datecard__edit > summary{
  list-style:none;
  cursor:pointer;
}
body.otoprep-app .otoprep-home-datecard__edit > summary::-webkit-details-marker{
  display:none;
}
body.otoprep-app .otoprep-home-datecard__form{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  align-items:flex-end;
  gap:8px;
  margin-top:10px;
}
body.otoprep-app .otoprep-home-datecard__form label{
  display:flex;
  flex-direction:column;
  gap:5px;
  min-width:190px;
  text-align:left;
}
body.otoprep-app .otoprep-home-datecard__form label .otoprep-muted{
  font-weight:800;
  font-size:12px;
}

body.otoprep-app .otoprep-home-focus{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:16px;
  border-color:rgba(16,117,188,.18);
  background:linear-gradient(135deg, #ffffff, rgba(16,117,188,.055));
}
body.otoprep-app .otoprep-home-focus__copy{
  min-width:0;
  max-width:680px;
}
body.otoprep-app .otoprep-home-focus__copy .otoprep-h3{
  margin-top:9px;
}
body.otoprep-app .otoprep-home-focus--locked{
  border-style:dashed;
  background:#fff;
}

body.otoprep-app .otoprep-home-oral{
  border-color:rgba(124,58,237,.20);
  background:linear-gradient(135deg, rgba(124,58,237,.08), #ffffff 58%);
}
body.otoprep-app .otoprep-home-oral__eyebrow{
  background:rgba(124,58,237,.12);
  color:#6d28d9;
}
body.otoprep-app .otoprep-home-oral__head{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:16px;
}
body.otoprep-app .otoprep-home-oral__head .otoprep-h3{
  margin-top:9px;
}
body.otoprep-app .otoprep-home-oral__minutes{
  flex:0 0 140px;
  border:1px solid rgba(124,58,237,.20);
  border-radius:16px;
  padding:10px 12px;
  background:#fff;
  text-align:right;
}
body.otoprep-app .otoprep-home-oral__minutes span,
body.otoprep-app .otoprep-home-oral__minutes strong{
  display:block;
}
body.otoprep-app .otoprep-home-oral__minutes span{
  color:var(--otoprep-muted);
  font-size:11px;
  font-weight:900;
  letter-spacing:.04em;
  text-transform:uppercase;
}
body.otoprep-app .otoprep-home-oral__minutes strong{
  margin-top:4px;
  color:#6d28d9;
  font-size:22px;
  line-height:1;
}
body.otoprep-app .otoprep-home-oral__resume{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  margin-top:14px;
  border:1px solid rgba(124,58,237,.18);
  border-radius:18px;
  padding:12px;
  background:#fff;
}
body.otoprep-app .otoprep-home-oral__resumeMain{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:0;
}
body.otoprep-app .otoprep-home-oral__resumeKicker{
  color:#6d28d9;
  font-size:12px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}
body.otoprep-app .otoprep-home-oral__resumeMain strong{
  font-size:17px;
  line-height:1.25;
}
body.otoprep-app .otoprep-home-oral__actions{
  margin-top:12px;
}
body.otoprep-app .otoprep-home-oral__locked{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:14px;
  margin-top:14px;
  border:1px dashed rgba(124,58,237,.24);
  border-radius:18px;
  padding:12px;
  background:#fff;
}
body.otoprep-app .otoprep-home-oral__empty{
  margin-top:12px;
}

body.otoprep-app .otoprep-home-glance__grid{
  margin-top:14px;
}

@media (min-width: 1040px){
  body.otoprep-app .otoprep-home-quickgrid{grid-template-columns:repeat(4,minmax(0,1fr));}
}
@media (max-width: 760px){
  body.otoprep-app .otoprep-home-today,
  body.otoprep-app .otoprep-home-datecard,
  body.otoprep-app .otoprep-home-focus,
  body.otoprep-app .otoprep-home-oral__head,
  body.otoprep-app .otoprep-home-oral__resume,
  body.otoprep-app .otoprep-home-oral__locked{
    flex-direction:column;
    align-items:stretch;
  }
  body.otoprep-app .otoprep-home-today__actions,
  body.otoprep-app .otoprep-home-oral__minutes{
    flex:initial;
  }
  body.otoprep-app .otoprep-home-oral__minutes{
    text-align:left;
  }
  body.otoprep-app .otoprep-home-datecard__edit{
    width:100%;
    text-align:left;
  }
  body.otoprep-app .otoprep-home-datecard__form{
    justify-content:flex-start;
  }
  body.otoprep-app .otoprep-home-datecard__form label,
  body.otoprep-app .otoprep-home-datecard__form .otoprep-input,
  body.otoprep-app .otoprep-home-datecard__form .otoprep-btn,
  body.otoprep-app .otoprep-home-focus .otoprep-btn,
  body.otoprep-app .otoprep-home-oral__resume .otoprep-btn,
  body.otoprep-app .otoprep-home-oral__locked .otoprep-btn{
    width:100%;
  }
}

/* 22.1.12 Home Oral/Quiz mode switch */
body.otoprep-app .otoprep-home-oral-hero{
  border-color:rgba(124,58,237,.24);
  background:linear-gradient(135deg, rgba(124,58,237,.11), #ffffff 52%, rgba(139,92,246,.08));
}
body.otoprep-app .otoprep-home-oral-hero .otoprep-home-today__eyebrow{
  background:rgba(124,58,237,.12);
  color:#6d28d9;
}
body.otoprep-app .otoprep-home-oralstats{
  border-color:rgba(124,58,237,.18);
}
body.otoprep-app .otoprep-home-oralstats__grid{
  margin-top:14px;
}
body.otoprep-app .otoprep-home-oral-actions .otoprep-home-quickcard--primary{
  border-color:rgba(124,58,237,.24);
  background:linear-gradient(135deg, rgba(124,58,237,.10), #fff);
}
body.otoprep-app .otoprep-home-written-bridge{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:18px;
  border-style:dashed;
  background:linear-gradient(135deg, #fff, rgba(16,117,188,.045));
}
body.otoprep-app .otoprep-home-written-bridge__copy{
  min-width:0;
  max-width:720px;
}
body.otoprep-app .otoprep-home-written-bridge__copy .otoprep-h3{
  margin-top:9px;
}
body.otoprep-app .otoprep-home-written-bridge__actions{
  flex:0 0 auto;
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
}
body.otoprep-app .otoprep-home-written-bridge__actions .otoprep-btn{
  white-space:nowrap;
}
@media (min-width: 1040px){
  body.otoprep-app .otoprep-home-oral-actions .otoprep-home-quickgrid{
    grid-template-columns:repeat(5,minmax(0,1fr));
  }
}
@media (max-width: 760px){
  body.otoprep-app .otoprep-home-written-bridge{
    flex-direction:column;
    align-items:stretch;
  }
  body.otoprep-app .otoprep-home-written-bridge__actions{
    justify-content:flex-start;
  }
  body.otoprep-app .otoprep-home-written-bridge__actions .otoprep-btn{
    width:100%;
    justify-content:center;
  }
}

/* 22.1.14 Install app journey */
body.otoprep-app [data-otoprep-hide-when-installed][hidden],
body.otoprep-app [data-otoprep-show-when-installed][hidden]{
  display:none !important;
}

body.otoprep-app.otoprep-is-standalone .otoprep-install-cta,
html.otoprep-standalone body.otoprep-app .otoprep-install-cta,
html.otoprep-standalone body.otoprep-app .otoprep-topbar__install{
  display:none !important;
}

body.otoprep-app .otoprep-pill--install{
  border-color:rgba(16,117,188,.22);
  background:rgba(16,117,188,.08);
  color:#0f5f98;
}
body.otoprep-app .otoprep-pill--install:hover{
  background:rgba(16,117,188,.13);
}
body.otoprep-app .otoprep-pill__label--short{
  display:none;
}

body.otoprep-app .otoprep-install-cta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  border-color:rgba(16,117,188,.22);
  background:linear-gradient(135deg, rgba(16,117,188,.075), #fff 52%, rgba(16,117,188,.04));
}
body.otoprep-app .otoprep-install-cta--oral{
  border-color:rgba(124,58,237,.24);
  background:linear-gradient(135deg, rgba(124,58,237,.10), #fff 52%, rgba(139,92,246,.05));
}
body.otoprep-app .otoprep-install-cta__copy{
  min-width:0;
  max-width:720px;
}
body.otoprep-app .otoprep-install-cta__eyebrow,
body.otoprep-app .otoprep-install-hero__eyebrow{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:3px 9px;
  border-radius:999px;
  background:rgba(16,117,188,.12);
  color:#0f5f98;
  font-size:12px;
  font-weight:850;
  letter-spacing:.01em;
  text-transform:uppercase;
}
body.otoprep-app .otoprep-install-cta--oral .otoprep-install-cta__eyebrow{
  background:rgba(124,58,237,.13);
  color:#6d28d9;
}
body.otoprep-app .otoprep-install-cta__copy .otoprep-h3{
  margin:8px 0 6px;
}
body.otoprep-app .otoprep-install-cta__actions{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-end;
  gap:8px;
  flex:0 0 auto;
}

body.otoprep-app .otoprep-install-page{
  display:grid;
  gap:16px;
  max-width:1180px;
  margin:0 auto;
}
body.otoprep-app .otoprep-install-hero{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:24px;
  overflow:hidden;
  border-color:rgba(16,117,188,.22);
  background:
    radial-gradient(circle at 100% 0%, rgba(16,117,188,.12), transparent 34%),
    linear-gradient(135deg, #fff, rgba(16,117,188,.055));
}
body.otoprep-app .otoprep-install-page[data-otoprep-install-surface="oral"] .otoprep-install-hero{
  border-color:rgba(124,58,237,.24);
  background:
    radial-gradient(circle at 100% 0%, rgba(124,58,237,.14), transparent 34%),
    linear-gradient(135deg, #fff, rgba(124,58,237,.055));
}
body.otoprep-app .otoprep-install-hero__icon{
  flex:0 0 auto;
  align-self:flex-start;
  width:88px;
  height:88px;
  border-radius:24px;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  border:1px solid rgba(16,117,188,.16);
  box-shadow:0 16px 38px rgba(15,23,42,.14);
}
body.otoprep-app .otoprep-install-page[data-otoprep-install-surface="oral"] .otoprep-install-hero__icon{
  border-color:rgba(124,58,237,.18);
}
body.otoprep-app .otoprep-install-hero__icon img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
body.otoprep-app .otoprep-install-hero__copy{
  min-width:0;
  max-width:720px;
}
body.otoprep-app .otoprep-install-hero__title{
  margin:10px 0;
  color:#142235;
  font-size:clamp(30px, 4.8vw, 54px);
  line-height:1.02;
  letter-spacing:-.045em;
}
body.otoprep-app .otoprep-install-hero__body{
  max-width:680px;
  font-size:16px;
}
body.otoprep-app .otoprep-install-hero__badges{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:14px;
}
body.otoprep-app .otoprep-install-hero__actions{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:10px;
  min-width:min(100%, 260px);
}
body.otoprep-app .otoprep-install-status{
  display:block;
  max-width:280px;
  color:#5b6b77;
  font-size:13px;
  line-height:1.35;
  text-align:center;
}
body.otoprep-app .otoprep-install-status--success{
  color:#047857;
  font-weight:800;
}
body.otoprep-app .otoprep-install-grid{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:14px;
}
body.otoprep-app .otoprep-install-guide-card{
  display:flex;
  flex-direction:column;
  gap:10px;
  min-height:100%;
}
body.otoprep-app .otoprep-install-guide-card__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:15px;
  background:rgba(16,117,188,.10);
  color:#0f5f98;
  font-size:22px;
  font-weight:900;
}
body.otoprep-app .otoprep-install-guide-card--ios .otoprep-install-guide-card__icon{
  background:rgba(124,58,237,.12);
  color:#6d28d9;
}
body.otoprep-app .otoprep-install-guide-card .otoprep-h3{
  margin:0;
}
body.otoprep-app .otoprep-install-guide-card .otoprep-btn,
body.otoprep-app .otoprep-install-guide-card .otoprep-actions{
  margin-top:auto;
}
body.otoprep-app .otoprep-install-steps{
  margin:2px 0 0;
  padding-left:20px;
  color:#334155;
  font-size:14px;
  line-height:1.5;
}
body.otoprep-app .otoprep-install-steps li + li{
  margin-top:5px;
}
body.otoprep-app .otoprep-install-offline-note,
body.otoprep-app .otoprep-install-disabled{
  border-style:dashed;
  background:linear-gradient(135deg, rgba(248,251,253,.96), #fff);
}
body.otoprep-app .otoprep-install-offline-note{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
}
body.otoprep-app .otoprep-install-offline-note .otoprep-h3{
  margin:0 0 6px;
}

body.otoprep-app .otoprep-install-banner__steps{
  margin-top:9px;
  color:#334155;
  font-size:13px;
  line-height:1.45;
}
body.otoprep-app .otoprep-install-banner__steps[hidden]{
  display:none !important;
}
body.otoprep-app .otoprep-install-banner__steps ol{
  margin:0;
  padding-left:19px;
}
body.otoprep-app .otoprep-install-banner__steps li + li{
  margin-top:3px;
}

@media (max-width: 1120px){
  body.otoprep-app .otoprep-install-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 782px){
  body.otoprep-app .otoprep-pill__label--long{
    display:none;
  }
  body.otoprep-app .otoprep-pill__label--short{
    display:inline;
  }
  body.otoprep-app .otoprep-install-cta,
  body.otoprep-app .otoprep-install-hero,
  body.otoprep-app .otoprep-install-offline-note{
    flex-direction:column;
    align-items:stretch;
  }
  body.otoprep-app .otoprep-install-cta__actions,
  body.otoprep-app .otoprep-install-hero__actions{
    justify-content:flex-start;
    width:100%;
  }
  body.otoprep-app .otoprep-install-hero__icon{
    width:72px;
    height:72px;
    border-radius:20px;
  }
  body.otoprep-app .otoprep-install-cta__actions .otoprep-btn,
  body.otoprep-app .otoprep-install-hero__actions .otoprep-btn,
  body.otoprep-app .otoprep-install-offline-note .otoprep-btn{
    width:100%;
    justify-content:center;
  }
  body.otoprep-app .otoprep-install-status{
    text-align:left;
  }
}
@media (max-width: 640px){
  body.otoprep-app .otoprep-install-grid{
    grid-template-columns:1fr;
  }
}

/* 22.1.18 First-login install walkthrough */
body.otoprep-app .otoprep-install-walkthrough[hidden]{
  display:none !important;
}
body.otoprep-app .otoprep-install-walkthrough{
  position:fixed;
  inset:0;
  z-index:220;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:calc(18px + env(safe-area-inset-top, 0px)) 18px calc(18px + env(safe-area-inset-bottom, 0px));
  opacity:0;
  pointer-events:none;
  transition:opacity .22s ease;
}
body.otoprep-app .otoprep-install-walkthrough.is-visible{
  opacity:1;
  pointer-events:auto;
}
body.otoprep-app .otoprep-install-walkthrough__backdrop{
  position:absolute;
  inset:0;
  background:rgba(15,23,42,.48);
  backdrop-filter:blur(10px);
}
body.otoprep-app .otoprep-install-walkthrough__dialog{
  position:relative;
  width:min(680px, 100%);
  max-height:min(760px, calc(100vh - 36px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px)));
  overflow:auto;
  border-radius:26px;
  border:1px solid rgba(148,163,184,.36);
  background:#fff;
  color:#142235;
  box-shadow:0 28px 80px rgba(15,23,42,.28);
  padding:24px;
  transform:translateY(10px) scale(.985);
  transition:transform .22s ease;
}
body.otoprep-app .otoprep-install-walkthrough.is-visible .otoprep-install-walkthrough__dialog{
  transform:translateY(0) scale(1);
}
body.otoprep-app .otoprep-install-walkthrough__close{
  position:absolute;
  top:14px;
  right:14px;
  width:38px;
  height:38px;
  border-radius:999px;
  border:1px solid rgba(148,163,184,.42);
  background:#fff;
  color:#334155;
  font-size:24px;
  line-height:1;
  cursor:pointer;
}
body.otoprep-app .otoprep-install-walkthrough__hero{
  display:flex;
  align-items:flex-start;
  gap:16px;
  padding-right:34px;
}
body.otoprep-app .otoprep-install-walkthrough__icon{
  flex:0 0 auto;
  width:68px;
  height:68px;
  border-radius:20px;
  overflow:hidden;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  border:1px solid rgba(16,117,188,.18);
  box-shadow:0 14px 30px rgba(15,23,42,.13);
}
body.otoprep-app .otoprep-install-walkthrough[data-surface="oral"] .otoprep-install-walkthrough__icon{
  border-color:rgba(124,58,237,.2);
}
body.otoprep-app .otoprep-install-walkthrough__icon img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}
body.otoprep-app .otoprep-install-walkthrough__copy{
  min-width:0;
}
body.otoprep-app .otoprep-install-walkthrough__eyebrow{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:3px 9px;
  border-radius:999px;
  background:rgba(16,117,188,.12);
  color:#0f5f98;
  font-size:12px;
  font-weight:850;
  letter-spacing:.01em;
  text-transform:uppercase;
}
body.otoprep-app .otoprep-install-walkthrough[data-surface="oral"] .otoprep-install-walkthrough__eyebrow{
  background:rgba(124,58,237,.13);
  color:#6d28d9;
}
body.otoprep-app .otoprep-install-walkthrough__copy h2{
  margin:9px 0 8px;
  font-size:clamp(25px, 4vw, 38px);
  line-height:1.06;
  letter-spacing:-.035em;
}
body.otoprep-app .otoprep-install-walkthrough__copy p{
  margin:0;
  font-size:15px;
  line-height:1.55;
}
body.otoprep-app .otoprep-install-walkthrough__benefits{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:8px;
  margin:18px 0 14px;
}
body.otoprep-app .otoprep-install-walkthrough__benefits span{
  min-height:40px;
  display:flex;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:8px 10px;
  border-radius:14px;
  border:1px solid rgba(16,117,188,.14);
  background:rgba(16,117,188,.055);
  color:#0f5f98;
  font-size:12px;
  font-weight:850;
  line-height:1.2;
}
body.otoprep-app .otoprep-install-walkthrough[data-surface="oral"] .otoprep-install-walkthrough__benefits span{
  border-color:rgba(124,58,237,.14);
  background:rgba(124,58,237,.06);
  color:#6d28d9;
}
body.otoprep-app .otoprep-install-walkthrough__devices{
  margin:0 0 18px;
}
body.otoprep-app .otoprep-install-walkthrough__device{
  border:1px solid rgba(148,163,184,.28);
  border-radius:18px;
  background:linear-gradient(135deg, rgba(248,251,253,.96), #fff);
  padding:14px 16px;
}
body.otoprep-app .otoprep-install-walkthrough__device strong{
  display:block;
  margin:0 0 6px;
  color:#142235;
  font-size:15px;
}
body.otoprep-app .otoprep-install-walkthrough__device p,
body.otoprep-app .otoprep-install-walkthrough__device ol{
  margin:0;
  color:#5b6b77;
  font-size:14px;
  line-height:1.5;
}
body.otoprep-app .otoprep-install-walkthrough__device p + p{
  margin-top:8px;
}
body.otoprep-app .otoprep-install-walkthrough__device ol{
  padding-left:20px;
}
body.otoprep-app .otoprep-install-walkthrough__device li + li{
  margin-top:4px;
}
body.otoprep-app .otoprep-install-walkthrough[data-device] .otoprep-install-walkthrough__device{
  display:none;
}
body.otoprep-app .otoprep-install-walkthrough[data-device="android"] .otoprep-install-walkthrough__device[data-otoprep-install-walkthrough-platform="android"],
body.otoprep-app .otoprep-install-walkthrough[data-device="ios"] .otoprep-install-walkthrough__device[data-otoprep-install-walkthrough-platform="ios"],
body.otoprep-app .otoprep-install-walkthrough[data-device="desktop"] .otoprep-install-walkthrough__device[data-otoprep-install-walkthrough-platform="desktop"]{
  display:block;
}
body.otoprep-app .otoprep-install-walkthrough__actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  align-items:center;
  gap:9px;
}
body.otoprep-app .otoprep-install-walkthrough__actions [hidden]{
  display:none !important;
}
body.otoprep-app.otoprep-reduced-motion .otoprep-install-walkthrough,
body.otoprep-app.otoprep-reduced-motion .otoprep-install-walkthrough *{
  transition:none !important;
  animation:none !important;
}
@media (max-width: 782px){
  body.otoprep-app .otoprep-install-walkthrough{
    align-items:flex-end;
    padding-left:12px;
    padding-right:12px;
  }
  body.otoprep-app .otoprep-install-walkthrough__dialog{
    width:100%;
    max-height:calc(100vh - 24px - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
    border-radius:24px 24px 18px 18px;
    padding:20px;
  }
  body.otoprep-app .otoprep-install-walkthrough__hero{
    flex-direction:column;
    padding-right:34px;
  }
  body.otoprep-app .otoprep-install-walkthrough__icon{
    width:60px;
    height:60px;
    border-radius:18px;
  }
  body.otoprep-app .otoprep-install-walkthrough__benefits{
    grid-template-columns:repeat(2, minmax(0, 1fr));
  }
  body.otoprep-app .otoprep-install-walkthrough__actions{
    flex-direction:column;
    align-items:stretch;
  }
  body.otoprep-app .otoprep-install-walkthrough__actions .otoprep-btn{
    width:100%;
    justify-content:center;
  }
}

/* Offline Practice Mode */
.otoprep-offline-card{
  position:relative;
  overflow:hidden;
}

body.otoprep-app .otoprep-offline-card--home{
  margin-top:12px;
  margin-bottom:12px;
  border-color:rgba(16,117,188,.20);
  background:linear-gradient(135deg, rgba(16,117,188,.08), #fff 58%, rgba(34,197,94,.06));
}
body.otoprep-app .otoprep-offline-card--home .otoprep-h3{
  margin-top:0;
}
body.otoprep-app .otoprep-offline-card--home .otoprep-offline-actions{
  max-width:920px;
}
body.otoprep-app .otoprep-offline-card--home.is-playing{
  margin-top:0;
  margin-bottom:0;
}
.otoprep-offline-card__head,
.otoprep-offline-question__top{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:10px;
}
.otoprep-offline-status{
  display:inline-flex;
  align-items:center;
  gap:6px;
  font-size:13px;
  font-weight:800;
  color:#5b6b77;
}
.otoprep-offline-status[data-tone="ok"]{color:#16794b;}
.otoprep-offline-status[data-tone="bad"]{color:#b42318;}
.otoprep-offline-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  margin-top:12px;
}
.otoprep-offline-local{
  display:grid;
  gap:10px;
  margin-top:14px;
}
.otoprep-offline-empty{
  margin:0;
}
.otoprep-offline-pack{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  padding:12px;
  border:1px solid rgba(16,117,188,.14);
  border-radius:16px;
  background:rgba(16,117,188,.045);
}
.otoprep-offline-pack__meta{
  display:grid;
  gap:3px;
  min-width:0;
}
.otoprep-offline-pack__meta span{
  color:#5b6b77;
  font-size:13px;
}
.otoprep-offline-pack__actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.otoprep-offline-player{
  margin-top:16px;
  padding:16px;
  border:1px solid rgba(15,23,42,.12);
  border-radius:18px;
  background:#fff;
  box-shadow:0 14px 34px rgba(15,23,42,.08);
}
.otoprep-offline-question__top{
  color:#5b6b77;
  font-size:13px;
  font-weight:800;
}
.otoprep-offline-stem{
  margin:10px 0 14px;
  line-height:1.6;
}
.otoprep-offline-question__image,
.otoprep-offline-answer img{
  max-width:100%;
  height:auto;
  border-radius:12px;
  display:block;
  margin-top:8px;
}
.otoprep-offline-flags{
  display:flex;
  align-items:center;
  gap:12px;
  flex-wrap:wrap;
  margin:10px 0 14px;
  padding:10px;
  border-radius:14px;
  background:#f7fafc;
  color:#334155;
  font-size:13px;
}
.otoprep-offline-flags label{
  display:inline-flex;
  align-items:center;
  gap:6px;
}
.otoprep-offline-answers{
  display:grid;
  gap:10px;
  margin:12px 0;
}
.otoprep-offline-answer{
  display:flex;
  align-items:flex-start;
  gap:10px;
  width:100%;
  padding:12px;
  border:1px solid #dfe8f0;
  border-radius:14px;
  background:#fff;
  cursor:pointer;
  line-height:1.45;
}
.otoprep-offline-answer:hover,
.otoprep-offline-answer:focus-within{
  border-color:rgba(16,117,188,.55);
  box-shadow:0 0 0 3px rgba(16,117,188,.08);
}
.otoprep-offline-feedback{
  margin-top:12px;
}
.otoprep-offline-result{
  display:grid;
  gap:10px;
  padding:12px;
  border-radius:14px;
  border:1px solid #dfe8f0;
  background:#f8fbfd;
}
.otoprep-offline-result.is-correct{
  border-color:rgba(22,121,75,.28);
  background:rgba(22,121,75,.07);
}
.otoprep-offline-result.is-wrong{
  border-color:rgba(180,35,24,.24);
  background:rgba(180,35,24,.06);
}
.otoprep-offline-explanation{
  padding:12px;
  border-radius:12px;
  background:#fff;
  border:1px solid rgba(15,23,42,.10);
  line-height:1.55;
}
.otoprep-offline-session-done{
  display:grid;
  gap:10px;
}
.otoprep-offline-card--fallback{
  padding:16px;
  border:1px solid rgba(16,117,188,.16);
  border-radius:18px;
  background:#fff;
}
@media(max-width:640px){
  .otoprep-offline-pack{
    display:grid;
  }
  .otoprep-offline-pack__actions,
  .otoprep-offline-actions{
    justify-content:stretch;
  }
  .otoprep-offline-pack__actions .otoprep-btn,
  .otoprep-offline-actions .otoprep-btn{
    width:100%;
    justify-content:center;
  }
}
.otoprep-offline-card .otoprep-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:42px;
  padding:0 14px;
  border-radius:999px;
  border:1px solid #dfe8f0;
  background:#fff;
  color:#13202a;
  text-decoration:none;
  font-weight:850;
  cursor:pointer;
  font:inherit;
}
.otoprep-offline-card .otoprep-btn--primary{
  background:#1075BC;
  border-color:#1075BC;
  color:#fff;
}
.otoprep-offline-card .otoprep-btn--ghost{
  background:transparent;
}
.otoprep-offline-answer[aria-disabled="true"]{
  cursor:default;
  opacity:.82;
}

/* 22.2.1 Offline Practice: render downloaded questions with the same online quiz visual system. */
.otoprep-offline-card.is-playing{
  grid-column:1 / -1;
  padding:0;
  border:0;
  background:transparent;
  box-shadow:none;
  overflow:visible;
}
.otoprep-offline-card.is-playing > .otoprep-offline-card__head,
.otoprep-offline-card.is-playing > .otoprep-h3,
.otoprep-offline-card.is-playing > .otoprep-muted,
.otoprep-offline-card.is-playing > .otoprep-offline-actions,
.otoprep-offline-card.is-playing > .otoprep-offline-local,
.otoprep-offline-card.is-playing > .otoprep-alert{
  display:none !important;
}
.otoprep-offline-card.is-playing.otoprep-offline-card--fallback > h2,
.otoprep-offline-card.is-playing.otoprep-offline-card--fallback > p,
.otoprep-offline-card.is-playing.otoprep-offline-card--fallback > .otoprep-offline-status,
.otoprep-offline-card.is-playing.otoprep-offline-card--fallback > .otoprep-offline-local{
  display:none !important;
}
.otoprep-offline-card.is-playing .otoprep-offline-player,
.otoprep-offline-player{
  --otoprep-ink:#13202A;
  --otoprep-muted:#5b6b77;
  --otoprep-blue:#1075BC;
  --otoprep-orange:#E7694B;
  --otoprep-font:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Inter,Helvetica,Arial,sans-serif;
  --otoprep-player-surface:#ffffff;
  --otoprep-player-surface-soft:#f8fafc;
  --otoprep-player-border:rgba(19,32,42,.08);
  --otoprep-player-border-strong:rgba(16,117,188,.18);
  --otoprep-player-shadow:0 16px 34px rgba(15,23,42,.08);
  --otoprep-player-shadow-soft:0 8px 20px rgba(15,23,42,.05);
  --otoprep-player-chip-bg:rgba(19,32,42,.04);
  --otoprep-question-font-size:18px;
  --otoprep-answer-font-size:16px;
  --otoprep-answer-radius:20px;
  margin:0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
  color:var(--otoprep-ink);
  font-family:var(--otoprep-font);
}
.otoprep-offline-player[hidden]{
  display:none !important;
}
.otoprep-offline-player .otoprep-topbar--quiz{
  display:block;
  margin-bottom:12px;
  padding:calc(10px + env(safe-area-inset-top, 0px)) 12px 10px;
  border-radius:20px;
  border:1px solid var(--otoprep-player-border);
  background:rgba(255,255,255,.92);
  box-shadow:0 10px 24px rgba(15,23,42,.06);
  backdrop-filter:blur(14px);
}
.otoprep-offline-player .otoprep-topbar__row--quiz{
  display:grid;
  grid-template-columns:auto minmax(0, 1fr) auto;
  gap:12px;
  align-items:center;
}
.otoprep-offline-player .otoprep-quizbar__left,
.otoprep-offline-player .otoprep-quizbar__right{
  display:flex;
  align-items:center;
  min-width:0;
}
.otoprep-offline-player .otoprep-quizbar__right{
  justify-content:flex-end;
}
.otoprep-offline-player .otoprep-quizbar__mid{
  display:flex;
  flex-direction:column;
  gap:6px;
  min-width:0;
}
.otoprep-offline-player .otoprep-quizbar__eyebrow{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:8px;
  min-width:0;
}
.otoprep-offline-player .otoprep-quizbar__back{
  min-height:40px;
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:8px 10px;
  border-radius:14px;
  border:1px solid var(--otoprep-player-border);
  background:#fff;
  color:var(--otoprep-ink);
  font-weight:900;
  font-size:13px;
  line-height:1;
  box-shadow:none;
  cursor:pointer;
  text-decoration:none;
  font-family:inherit;
}
.otoprep-offline-player .otoprep-quizbar__mode{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  padding:5px 10px;
  border-radius:999px;
  border:1px solid rgba(16,117,188,.18);
  background:rgba(16,117,188,.08);
  color:var(--otoprep-blue);
  font-size:12px;
  line-height:1;
  font-weight:900;
  letter-spacing:.01em;
}
.otoprep-offline-player .otoprep-quizbar__sub{
  font-size:12px;
  line-height:1.3;
  color:var(--otoprep-muted);
  white-space:normal;
  overflow:visible;
  text-overflow:initial;
  margin:0;
}
.otoprep-offline-player .otoprep-quizbar__title{
  font-size:16px;
  line-height:1.25;
  font-weight:950;
  color:var(--otoprep-ink);
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.otoprep-offline-player .otoprep-quizbar__bar{
  margin-top:0;
  height:5px;
  border-radius:999px;
  background:rgba(16,117,188,.10);
  overflow:hidden;
}
.otoprep-offline-player .otoprep-quizbar__barfill{
  height:100%;
  border-radius:999px;
  background:var(--otoprep-blue);
  transition:width .12s ease;
}
.otoprep-offline-player .otoprep-quizbar__meta{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.otoprep-offline-player .otoprep-quizbar__progress,
.otoprep-offline-player .otoprep-quizbar__timer{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:8px 12px;
  border-radius:14px;
  border:1px solid var(--otoprep-player-border);
  background:#fff;
  color:var(--otoprep-ink);
  font-weight:900;
  font-size:13px;
  line-height:1;
  box-shadow:none;
}
.otoprep-offline-player .otoprep-quizbar__progress{
  letter-spacing:.01em;
}
.otoprep-offline-player .otoprep-quizbar__timer{
  min-width:78px;
  border-color:rgba(16,117,188,.18);
  background:rgba(16,117,188,.06);
  color:var(--otoprep-blue);
}
.otoprep-offline-player .otoprep-quiz-wrap{
  background:transparent;
  border:0;
  box-shadow:none;
  padding:0 0 24px;
}
.otoprep-offline-player .otoprep-card.otoprep-quiz-card{
  padding:22px 20px 24px;
  border-radius:26px;
  border:1px solid var(--otoprep-player-border);
  background:rgba(255,255,255,.98);
  box-shadow:var(--otoprep-player-shadow);
  overflow:hidden;
}
.otoprep-offline-player .ays-quiz-container{
  border:none !important;
  background:transparent !important;
  padding:0 !important;
  margin:0 !important;
}
.otoprep-offline-player .step[data-question-id]{
  justify-content:center !important;
  align-items:stretch !important;
  padding-top:0 !important;
  padding-right:0 !important;
}
.otoprep-offline-player .step[data-question-id] > .ays-abs-fs{
  display:flex;
  flex-direction:column;
  gap:18px;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.otoprep-offline-player .otoprep-question-meta{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:8px;
  margin:0 0 2px;
}
.otoprep-offline-player .otoprep-question-chip{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:6px 12px;
  border-radius:999px;
  border:1px solid var(--otoprep-player-border);
  background:var(--otoprep-player-chip-bg);
  color:var(--otoprep-muted);
  font-size:12px;
  line-height:1;
  font-weight:850;
}
.otoprep-offline-player .otoprep-question-chip--index,
.otoprep-offline-player .otoprep-question-chip--mode{
  border-color:rgba(16,117,188,.18);
  background:rgba(16,117,188,.08);
  color:var(--otoprep-blue);
}
.otoprep-offline-player .otoprep-offline-question-title{
  margin:0;
  color:var(--otoprep-ink);
  font-size:16px;
  font-weight:900;
}
.otoprep-offline-player .ays_quiz_question,
.otoprep-offline-player .ays_quiz_question *{
  font-family:var(--otoprep-font) !important;
  color:var(--otoprep-ink) !important;
}
.otoprep-offline-player .ays_quiz_question{
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  font-size:var(--otoprep-question-font-size) !important;
  line-height:1.68 !important;
  font-weight:700;
  text-align:left !important;
}
.otoprep-offline-player .ays_quiz_question p,
.otoprep-offline-player .ays_quiz_question li,
.otoprep-offline-player .ays_quiz_question td,
.otoprep-offline-player .ays_quiz_question blockquote{
  font-size:1em !important;
  line-height:1.68 !important;
  text-align:left !important;
}
.otoprep-offline-player .ays_quiz_question p:last-child{
  margin-bottom:0;
}
.otoprep-offline-player .otoprep-offline-question__image,
.otoprep-offline-player .ays-answer-image{
  display:block;
  max-width:100%;
  height:auto;
  border-radius:16px;
  margin-top:10px;
}
.otoprep-offline-player .ays-quiz-question-state-box{
  margin:0;
}
.otoprep-offline-player .ays-quiz-questions-nav-bookmark-box,
.otoprep-offline-player .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar{
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  justify-content:flex-start;
  gap:8px;
  margin:0 !important;
}
.otoprep-offline-player .otoprep-mark-item{
  display:inline-flex;
  flex-direction:row;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
  max-width:none;
  min-height:40px;
  padding:4px 12px 4px 6px;
  border:1px solid var(--otoprep-player-border);
  border-radius:999px;
  background:#fff;
  box-shadow:var(--otoprep-player-shadow-soft);
  color:var(--otoprep-ink);
  cursor:pointer;
}
.otoprep-offline-player .otoprep-mark-item__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  border-radius:999px;
  border:0;
  background:rgba(19,32,42,.06);
  box-shadow:none;
}
.otoprep-offline-player .otoprep-mark-item__label{
  width:auto;
  min-height:0;
  font-size:12px;
  line-height:1;
  color:var(--otoprep-ink);
  font-weight:800;
  align-items:center;
  white-space:nowrap;
}
.otoprep-offline-player .otoprep-mark-item.is-on,
.otoprep-offline-player .otoprep-mark-item--flag.is-on,
.otoprep-offline-player .otoprep-mark-item--unsure.is-on{
  border-color:rgba(16,117,188,.18);
  background:rgba(16,117,188,.06);
}
.otoprep-offline-player .otoprep-mark-item.is-on .otoprep-mark-item__icon{
  background:rgba(255,255,255,.92);
}
.otoprep-offline-player .otoprep-mark-item input[type="checkbox"]{
  width:16px;
  height:16px;
  margin:0;
  accent-color:var(--otoprep-blue);
}
.otoprep-offline-player .otoprep-mark-item select{
  min-height:30px;
  border:1px solid rgba(19,32,42,.10);
  border-radius:999px;
  background:rgba(248,250,252,.96);
  color:var(--otoprep-ink);
  font:inherit;
  font-size:12px;
  font-weight:850;
  padding:4px 24px 4px 10px;
}
.otoprep-offline-player .ays-quiz-answers{
  display:grid;
  gap:12px;
}
.otoprep-offline-player .ays-quiz-answers .ays-field{
  position:relative;
  margin:0;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.otoprep-offline-player .ays-quiz-answers .ays-field > input[type="radio"],
.otoprep-offline-player .ays-quiz-answers .ays-field > input[type="checkbox"]{
  position:absolute;
  opacity:0;
  pointer-events:none;
}
.otoprep-offline-player .ays-quiz-answers .ays-field > label.otoprep-answer__label{
  display:flex !important;
  align-items:flex-start;
  gap:14px;
  width:100%;
  min-height:56px;
  margin:0 !important;
  padding:16px 18px !important;
  border:1px solid var(--otoprep-player-border) !important;
  border-radius:var(--otoprep-answer-radius) !important;
  background:var(--otoprep-player-surface) !important;
  box-shadow:var(--otoprep-player-shadow-soft) !important;
  color:var(--otoprep-ink) !important;
  font-size:var(--otoprep-answer-font-size) !important;
  font-weight:650;
  line-height:1.55 !important;
  text-align:left !important;
  cursor:pointer;
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease, transform .18s ease;
}
.otoprep-offline-player .ays-quiz-answers .ays-field > label.otoprep-answer__label::before,
.otoprep-offline-player .ays-quiz-answers .ays-field > label.otoprep-answer__label::after{
  content:none !important;
  display:none !important;
}
.otoprep-offline-player .otoprep-answer__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  flex:0 0 32px;
  border-radius:999px;
  border:1px solid rgba(19,32,42,.10);
  background:var(--otoprep-player-surface-soft);
  color:var(--otoprep-ink);
  font-size:13px;
  line-height:1;
  font-weight:900;
  margin-top:1px;
}
.otoprep-offline-player .otoprep-answer__content{
  min-width:0;
}
.otoprep-offline-player .ays-quiz-answers .ays-field:hover > label.otoprep-answer__label{
  border-color:rgba(16,117,188,.22) !important;
  box-shadow:0 12px 24px rgba(16,117,188,.08) !important;
  transform:translateY(-1px);
}
.otoprep-offline-player .ays-quiz-answers .ays-field.is-selected > label.otoprep-answer__label,
.otoprep-offline-player .ays-quiz-answers .ays-field > input[type="radio"]:checked + label.otoprep-answer__label,
.otoprep-offline-player .ays-quiz-answers .ays-field > input[type="checkbox"]:checked + label.otoprep-answer__label{
  border-color:rgba(16,117,188,.36) !important;
  background:rgba(16,117,188,.06) !important;
  box-shadow:0 0 0 3px rgba(16,117,188,.10), 0 14px 28px rgba(16,117,188,.10) !important;
}
.otoprep-offline-player .ays-quiz-answers .ays-field.is-selected > label.otoprep-answer__label .otoprep-answer__badge,
.otoprep-offline-player .ays-quiz-answers .ays-field > input[type="radio"]:checked + label.otoprep-answer__label .otoprep-answer__badge,
.otoprep-offline-player .ays-quiz-answers .ays-field > input[type="checkbox"]:checked + label.otoprep-answer__label .otoprep-answer__badge{
  border-color:rgba(16,117,188,.24);
  background:#fff;
  color:var(--otoprep-blue);
}
.otoprep-offline-player .ays-quiz-answers .ays-field > input[type="radio"]:focus-visible + label.otoprep-answer__label,
.otoprep-offline-player .ays-quiz-answers .ays-field > input[type="checkbox"]:focus-visible + label.otoprep-answer__label{
  box-shadow:0 0 0 4px rgba(16,117,188,.16), var(--otoprep-player-shadow-soft) !important;
}
.otoprep-offline-player .ays-quiz-answers .ays-field.is-correct > label.otoprep-answer__label,
.otoprep-offline-player .ays-quiz-answers .ays-field > label.otoprep-answer__label.answered.correct{
  border-color:rgba(22,163,74,.28) !important;
  background:rgba(22,163,74,.08) !important;
  color:#14532d !important;
  box-shadow:none !important;
}
.otoprep-offline-player .ays-quiz-answers .ays-field.is-wrong > label.otoprep-answer__label,
.otoprep-offline-player .ays-quiz-answers .ays-field > label.otoprep-answer__label.answered.wrong{
  border-color:rgba(220,38,38,.24) !important;
  background:rgba(220,38,38,.06) !important;
  color:#7f1d1d !important;
  box-shadow:none !important;
}
.otoprep-offline-player .ays-quiz-answers .ays-field.is-correct > label.otoprep-answer__label .otoprep-answer__badge,
.otoprep-offline-player .ays-quiz-answers .ays-field > label.otoprep-answer__label.answered.correct .otoprep-answer__badge{
  border-color:rgba(22,163,74,.24);
  background:#fff;
  color:#166534;
}
.otoprep-offline-player .ays-quiz-answers .ays-field.is-wrong > label.otoprep-answer__label .otoprep-answer__badge,
.otoprep-offline-player .ays-quiz-answers .ays-field > label.otoprep-answer__label.answered.wrong .otoprep-answer__badge{
  border-color:rgba(220,38,38,.20);
  background:#fff;
  color:#991b1b;
}
.otoprep-offline-player .otoprep-offline-feedback{
  margin-top:2px;
}
.otoprep-offline-player .right_answer_text,
.otoprep-offline-player .wrong_answer_text,
.otoprep-offline-player .ays_questtion_explanation{
  margin-top:2px;
  padding:18px 18px 16px;
  border-radius:20px;
  border:1px solid var(--otoprep-player-border);
  background:#fff;
  box-shadow:none;
  color:var(--otoprep-ink);
  line-height:1.55;
}
.otoprep-offline-player .right_answer_text{
  border-color:rgba(22,163,74,.18);
  background:rgba(22,163,74,.05);
}
.otoprep-offline-player .wrong_answer_text{
  border-color:rgba(220,38,38,.16);
  background:rgba(220,38,38,.04);
}
.otoprep-offline-player .ays_questtion_explanation{
  background:rgba(248,250,252,.95);
}
.otoprep-offline-player .right_answer_text p:last-child,
.otoprep-offline-player .wrong_answer_text p:last-child,
.otoprep-offline-player .ays_questtion_explanation p:last-child{
  margin-bottom:0;
}
.otoprep-offline-player .ays_buttons_div,
.otoprep-offline-player .otoprep-offline-buttons{
  position:sticky;
  bottom:calc(10px + env(safe-area-inset-bottom, 0px));
  z-index:40;
  display:flex;
  gap:10px;
  justify-content:space-between;
  flex-wrap:wrap;
  margin-top:14px;
  padding:10px;
  border-radius:18px;
  border:1px solid var(--otoprep-player-border);
  background:rgba(255,255,255,.94);
  box-shadow:0 16px 32px rgba(15,23,42,.08);
  backdrop-filter:blur(8px);
}
.otoprep-offline-player .otoprep-offline-feedback .ays_buttons_div{
  position:static;
  margin-top:12px;
}
.otoprep-offline-player .ays_buttons_div button.action-button,
.otoprep-offline-player .otoprep-offline-buttons button.action-button{
  flex:1 1 140px;
  min-height:48px;
  border-radius:14px !important;
  box-shadow:none !important;
  border:1px solid var(--otoprep-player-border) !important;
  font-weight:900 !important;
  font-family:inherit;
  cursor:pointer;
}
.otoprep-offline-player .ays_buttons_div button.ays_previous,
.otoprep-offline-player .otoprep-offline-buttons button.ays_previous{
  flex:0 1 auto;
  min-width:112px;
  background:#fff !important;
  color:var(--otoprep-ink) !important;
}
.otoprep-offline-player .ays_buttons_div button.ays_next,
.otoprep-offline-player .otoprep-offline-buttons button.ays_next,
.otoprep-offline-player .otoprep-offline-action-primary{
  flex:1 1 220px;
  background:var(--otoprep-blue) !important;
  color:#fff !important;
  border-color:rgba(16,117,188,.35) !important;
}
.otoprep-offline-player .ays_buttons_div button[disabled],
.otoprep-offline-player .otoprep-offline-buttons button[disabled]{
  opacity:.65;
  cursor:not-allowed;
}
.otoprep-offline-player .otoprep-offline-session-done{
  display:grid;
  gap:10px;
}
.otoprep-offline-player .otoprep-offline-session-done h3,
.otoprep-offline-player .otoprep-offline-session-done p{
  margin:0;
}
@media (max-width: 860px){
  .otoprep-offline-player .otoprep-topbar__row--quiz{
    grid-template-columns:auto minmax(0, 1fr);
  }
  .otoprep-offline-player .otoprep-quizbar__right{
    grid-column:1 / -1;
    justify-content:space-between;
  }
  .otoprep-offline-player .otoprep-quizbar__meta{
    width:100%;
    justify-content:flex-start;
  }
}
@media (max-width: 640px){
  .otoprep-offline-player{
    --otoprep-question-font-size:17px;
    --otoprep-answer-font-size:15px;
  }
  .otoprep-offline-player .otoprep-card.otoprep-quiz-card{
    padding:16px 14px 20px;
    border-radius:22px;
  }
  .otoprep-offline-player .otoprep-quizbar__title{
    font-size:15px;
  }
  .otoprep-offline-player .otoprep-quizbar__sub{
    font-size:11px;
  }
  .otoprep-offline-player .otoprep-quizbar__progress,
  .otoprep-offline-player .otoprep-quizbar__timer{
    min-height:36px;
    padding:7px 10px;
    border-radius:12px;
  }
  .otoprep-offline-player .otoprep-question-meta{
    gap:6px;
  }
  .otoprep-offline-player .otoprep-question-chip{
    min-height:28px;
    padding:6px 10px;
    font-size:11px;
  }
  .otoprep-offline-player .ays-quiz-answers .ays-field > label.otoprep-answer__label{
    min-height:52px;
    padding:14px 14px !important;
    gap:12px;
  }
  .otoprep-offline-player .otoprep-answer__badge{
    width:30px;
    height:30px;
    flex-basis:30px;
  }
  .otoprep-offline-player .ays_buttons_div,
  .otoprep-offline-player .otoprep-offline-buttons{
    padding:8px;
  }
  .otoprep-offline-player .ays_buttons_div button.ays_previous,
  .otoprep-offline-player .otoprep-offline-buttons button.ays_previous{
    min-width:96px;
  }
}
body:not(.otoprep-app).otoprep-offline-practice-playing .wrap{
  align-items:flex-start;
}
body:not(.otoprep-app).otoprep-offline-practice-playing .card{
  width:min(100%,960px);
}

/* 22.2.3 Header app install shortcut */
body.otoprep-app .otoprep-pill--app-icon{
  gap:7px;
}
body.otoprep-app .otoprep-pill--app-icon .otoprep-pill__icon{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:18px;
  height:18px;
  flex:0 0 18px;
}
body.otoprep-app .otoprep-pill--app-icon .otoprep-pill__icon svg{
  display:block;
  width:18px;
  height:18px;
}
@media(max-width:640px){
  body.otoprep-app .otoprep-pill--app-icon{
    padding-inline:10px;
  }
}

/* 22.2.3 Offline topic builder */
body.otoprep-app .otoprep-offline-builder{
  margin-top:14px;
  border:1px solid rgba(16,117,188,.16);
  border-radius:18px;
  background:rgba(255,255,255,.82);
  box-shadow:0 10px 24px rgba(15,23,42,.045);
  overflow:hidden;
}
body.otoprep-app .otoprep-offline-builder > summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 16px;
  color:#13202A;
  font-weight:900;
  cursor:pointer;
  list-style:none;
}
body.otoprep-app .otoprep-offline-builder > summary::-webkit-details-marker{
  display:none;
}
body.otoprep-app .otoprep-offline-builder > summary::after{
  content:"+";
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:26px;
  height:26px;
  border-radius:999px;
  background:rgba(16,117,188,.10);
  color:#1075BC;
  font-weight:950;
}
body.otoprep-app .otoprep-offline-builder[open] > summary::after{
  content:"–";
}
body.otoprep-app .otoprep-offline-builder__body{
  padding:0 16px 16px;
}
body.otoprep-app .otoprep-offline-builder__controls{
  margin-top:0;
}
body.otoprep-app .otoprep-offline-builder input[type="number"]{
  max-width:150px;
}
body.otoprep-app .otoprep-offline-builder__summary{
  align-items:flex-start;
}
body.otoprep-app .otoprep-offline-topiclist{
  margin-top:10px;
  max-height:360px;
  overflow:auto;
  padding:2px 2px 8px;
  overscroll-behavior:contain;
}
body.otoprep-app .otoprep-offline-topic.is-on,
body.otoprep-app .otoprep-offline-topic:has(input[type="checkbox"]:checked){
  background:rgba(16,117,188,.06);
  border-color:rgba(16,117,188,.32);
  box-shadow:0 10px 22px rgba(16,117,188,.08);
}
body.otoprep-app .otoprep-offline-builder__actions{
  align-items:center;
  margin-top:12px;
}
body.otoprep-app .otoprep-offline-builder__empty{
  margin-top:10px;
}
@media(max-width:640px){
  body.otoprep-app .otoprep-offline-builder__body{
    padding:0 12px 12px;
  }
  body.otoprep-app .otoprep-offline-builder > summary{
    padding:13px 12px;
  }
  body.otoprep-app .otoprep-offline-topiclist{
    max-height:300px;
  }
}

/* 22.2.3 Offline question UI parity: full app-width player instead of squeezed home/practice card */
body.otoprep-app.otoprep-offline-practice-playing{
  overflow:hidden;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-card.is-playing .otoprep-offline-player{
  position:fixed !important;
  inset:0;
  z-index:2147483000;
  display:block;
  overflow-y:auto;
  overscroll-behavior:contain;
  margin:0 !important;
  padding:calc(10px + env(safe-area-inset-top, 0px)) max(12px, env(safe-area-inset-left, 0px)) calc(24px + env(safe-area-inset-bottom, 0px)) max(12px, env(safe-area-inset-right, 0px));
  background:#f3f6f9;
  box-sizing:border-box;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-offline-question{
  width:min(100%, 1100px);
  margin:0 auto;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-topbar--quiz{
  position:sticky;
  top:0;
  z-index:60;
  margin-bottom:14px;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-quiz-wrap{
  width:100%;
  max-width:none;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-card.otoprep-quiz-card{
  width:100%;
  box-sizing:border-box;
}
@media(max-width:640px){
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-card.is-playing .otoprep-offline-player{
    padding:calc(8px + env(safe-area-inset-top, 0px)) max(8px, env(safe-area-inset-left, 0px)) calc(18px + env(safe-area-inset-bottom, 0px)) max(8px, env(safe-area-inset-right, 0px));
  }
}
.otoprep-offline-card.is-playing > .otoprep-offline-builder,
.otoprep-offline-card.is-playing > .otoprep-offline-builder__empty{
  display:none !important;
}

/* 22.2.6 Offline player/header QC fixes */
body.otoprep-app.otoprep-offline-practice-playing{
  overflow:hidden !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-tabs,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-bottom-tabs,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-topbar--app-shell{
  display:none !important;
}
body.otoprep-app.otoprep-offline-practice-playing > .otoprep-offline-player[data-otoprep-offline-player-floating="1"],
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-card.is-playing .otoprep-offline-player{
  position:fixed !important;
  inset:0 !important;
  left:0 !important;
  right:0 !important;
  top:0 !important;
  bottom:0 !important;
  width:100vw !important;
  max-width:none !important;
  min-width:0 !important;
  height:100dvh !important;
  max-height:100dvh !important;
  z-index:2147483647 !important;
  display:block !important;
  overflow-y:auto !important;
  -webkit-overflow-scrolling:touch;
  overscroll-behavior:contain;
  margin:0 !important;
  padding:calc(10px + env(safe-area-inset-top, 0px)) max(12px, env(safe-area-inset-left, 0px)) calc(24px + env(safe-area-inset-bottom, 0px)) max(12px, env(safe-area-inset-right, 0px)) !important;
  background:#f3f6f9 !important;
  box-sizing:border-box !important;
}
body.otoprep-app.otoprep-offline-practice-playing > .otoprep-offline-player[data-otoprep-offline-player-floating="1"] .otoprep-offline-question,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-offline-question{
  width:min(100%, 960px) !important;
  max-width:960px !important;
  margin:0 auto !important;
  box-sizing:border-box !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-topbar--quiz{
  position:sticky !important;
  top:0 !important;
  z-index:1205 !important;
  overflow:hidden !important;
  isolation:isolate !important;
  background:#f5f9fd !important;
  background-image:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
  border-color:rgba(16,117,188,.16) !important;
  box-shadow:0 14px 30px rgba(16,117,188,.10), inset 0 1px 0 rgba(255,255,255,.92) !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-topbar--quiz::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  border-radius:inherit;
  background:#f5f9fd !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-topbar--quiz > *{
  position:relative;
  z-index:1;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-question-meta{
  justify-content:flex-start !important;
  text-align:left !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-quiz-wrap,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-card.otoprep-quiz-card,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .ays_quiz_question,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .ays-quiz-answers{
  width:100% !important;
  max-width:none !important;
  box-sizing:border-box !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-quiz-card{
  overflow:visible !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-offline-tools{
  align-items:center !important;
  justify-content:flex-start !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-mark-item{
  flex-direction:row !important;
  width:auto !important;
  height:auto !important;
  min-height:40px !important;
  border-radius:999px !important;
  padding:6px 10px !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-mark-item__icon{
  width:30px !important;
  height:30px !important;
  flex:0 0 30px !important;
}
body.otoprep-app .otoprep-topbar--app-shell .otoprep-topbar__install{
  order:-2 !important;
  display:inline-flex !important;
  flex:0 0 auto !important;
  white-space:nowrap !important;
  box-shadow:0 8px 18px rgba(16,117,188,.10);
}
@media(max-width:640px){
  body.otoprep-app .otoprep-topbar--app-shell .otoprep-topbar__install{
    min-width:42px !important;
    padding-inline:10px !important;
  }
  body.otoprep-app .otoprep-topbar--app-shell .otoprep-topbar__install .otoprep-pill__label--long{
    display:none !important;
  }
  body.otoprep-app .otoprep-topbar--app-shell .otoprep-topbar__install .otoprep-pill__label--short{
    display:inline !important;
  }
  body.otoprep-app.otoprep-offline-practice-playing > .otoprep-offline-player[data-otoprep-offline-player-floating="1"],
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-card.is-playing .otoprep-offline-player{
    padding:calc(8px + env(safe-area-inset-top, 0px)) max(8px, env(safe-area-inset-left, 0px)) calc(18px + env(safe-area-inset-bottom, 0px)) max(8px, env(safe-area-inset-right, 0px)) !important;
  }
}

/* 22.2.6 Native offline player: use cached AYS shortcode markup and keep the shell full-width. */
body.otoprep-app.otoprep-offline-practice-playing > .otoprep-offline-player[data-otoprep-offline-player-floating="1"] .otoprep-offline-native-player,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-offline-native-player{
  width:min(100%, 1100px) !important;
  max-width:1100px !important;
  margin:0 auto !important;
  box-sizing:border-box !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-native-closebar{
  position:sticky;
  top:0;
  z-index:1200;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:8px 0 12px;
  margin:0 0 4px;
  background:#f3f6f9;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-native-closebar .otoprep-quizbar__back{
  background:#fff;
  border:1px solid rgba(16,117,188,.16);
  box-shadow:0 10px 24px rgba(16,117,188,.08);
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-native-html .otoprep-quiz-wrap{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-native-html .otoprep-card.otoprep-quiz-card{
  width:100% !important;
  max-width:none !important;
  box-sizing:border-box !important;
}
@media(max-width:640px){
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-native-closebar{
    padding:6px 0 10px;
  }
}

/* --------------------------------------------------------------------- */
/* 22.2.7 exact native offline quiz parity                               */
/* --------------------------------------------------------------------- */
body.otoprep-app.otoprep-offline-practice-playing > .otoprep-offline-player.otoprep-offline-player--native-exact[data-otoprep-offline-player-floating="1"]{
  padding:0 !important;
  background:#F3F6F9 !important;
}
body.otoprep-app.otoprep-offline-practice-playing > .otoprep-offline-player.otoprep-offline-player--native-exact[data-otoprep-offline-player-floating="1"] .otoprep-offline-native-shell.otoprep-shell{
  max-width:960px !important;
  width:100% !important;
  margin:0 auto !important;
  padding:8px 14px 24px !important;
  box-sizing:border-box !important;
}
body.otoprep-app.otoprep-offline-practice-playing > .otoprep-offline-player.otoprep-offline-player--native-exact[data-otoprep-offline-player-floating="1"] .otoprep-main{
  padding:0 !important;
  margin:0 !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-topbar--quiz{
  position:sticky !important;
  top:0 !important;
  z-index:50 !important;
  margin-bottom:12px !important;
  padding:calc(10px + env(safe-area-inset-top)) 12px 10px !important;
  border-radius:20px !important;
  border:1px solid rgba(16,117,188,.16) !important;
  background:linear-gradient(180deg, rgba(229,242,250,.97) 0%, rgba(244,249,253,.96) 100%) !important;
  box-shadow:0 14px 30px rgba(16,117,188,.10) !important;
  backdrop-filter:blur(18px) !important;
  -webkit-backdrop-filter:blur(18px) !important;
  overflow:visible !important;
  isolation:auto !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-topbar--quiz::before{
  content:none !important;
  display:none !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-topbar--quiz > *{
  position:static !important;
  z-index:auto !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-topbar__row--quiz{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) auto !important;
  gap:12px !important;
  align-items:center !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__left,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__right{
  display:flex !important;
  align-items:center !important;
  min-width:0 !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__right{
  justify-content:flex-end !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__mid{
  display:flex !important;
  flex-direction:column !important;
  gap:6px !important;
  min-width:0 !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__eyebrow{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:8px !important;
  min-width:0 !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__back{
  min-height:40px !important;
  padding:8px 10px !important;
  border-radius:14px !important;
  border:1px solid var(--otoprep-player-border) !important;
  background:#fff !important;
  color:var(--otoprep-ink) !important;
  font-weight:900 !important;
  box-shadow:none !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__mode{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:28px !important;
  padding:5px 10px !important;
  border-radius:999px !important;
  border:1px solid rgba(16,117,188,.18) !important;
  background:rgba(16,117,188,.08) !important;
  color:var(--otoprep-blue) !important;
  font-size:12px !important;
  line-height:1 !important;
  font-weight:900 !important;
  letter-spacing:.01em !important;
}
body.otoprep-app.otoprep-offline-practice-playing.otoprep-mode-timed .otoprep-offline-player--native-exact .otoprep-quizbar__mode{
  border-color:rgba(231,105,75,.28) !important;
  background:rgba(231,105,75,.12) !important;
  color:var(--otoprep-orange) !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__sub{
  font-size:12px !important;
  line-height:1.3 !important;
  color:var(--otoprep-muted) !important;
  white-space:normal !important;
  overflow:visible !important;
  text-overflow:initial !important;
  margin:0 !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__title{
  font-size:16px !important;
  line-height:1.25 !important;
  font-weight:950 !important;
  color:var(--otoprep-ink) !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__bar{
  margin-top:0 !important;
  height:5px !important;
  border-radius:999px !important;
  background:rgba(16,117,188,.10) !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__meta{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  flex-wrap:wrap !important;
  justify-content:flex-end !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__progress,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__timer,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__ai,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__textsize{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:38px !important;
  padding:8px 12px !important;
  border-radius:14px !important;
  border:1px solid var(--otoprep-player-border) !important;
  background:#fff !important;
  color:var(--otoprep-ink) !important;
  font-weight:900 !important;
  font-size:13px !important;
  line-height:1 !important;
  box-shadow:none !important;
}
body.otoprep-app.otoprep-offline-practice-playing.otoprep-mode-timed .otoprep-offline-player--native-exact .otoprep-quizbar__timer{
  border-color:rgba(231,105,75,.24) !important;
  background:rgba(231,105,75,.08) !important;
  color:var(--otoprep-orange) !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quiz-wrap{
  width:auto !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
  box-sizing:border-box !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-card.otoprep-quiz-card{
  width:auto !important;
  max-width:none !important;
  padding:22px 20px 24px !important;
  border-radius:26px !important;
  border:1px solid var(--otoprep-player-border) !important;
  background:rgba(255,255,255,.98) !important;
  box-shadow:var(--otoprep-player-shadow) !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .ays-quiz-container{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  box-sizing:border-box !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .ays-quiz-container .step[data-question-id] > .ays-abs-fs,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .ays-quiz-container .step.ays-scenario-step > .ays-abs-fs,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .ays-quiz-container .step.ays-scenario-child-step > .ays-abs-fs{
  gap:18px !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-question-meta{
  justify-content:center !important;
  text-align:center !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quiz-card .ays_quiz_question{
  width:auto !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:var(--otoprep-ink) !important;
  font-size:var(--otoprep-question-font-size) !important;
  line-height:1.68 !important;
  font-weight:700 !important;
  text-align:left !important;
  overflow:visible !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quiz-card .ays_quiz_question p,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quiz-card .ays_quiz_question li,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quiz-card .ays_quiz_question td,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quiz-card .ays_quiz_question blockquote{
  font-size:1em !important;
  line-height:1.68 !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quiz-card .ays-quiz-answers{
  display:grid !important;
  gap:12px !important;
  width:100% !important;
  max-width:none !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quiz-card .ays-quiz-answers .ays-field{
  position:relative !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quiz-card .ays-quiz-answers .ays-field > label.otoprep-answer__label{
  display:flex !important;
  align-items:flex-start !important;
  gap:14px !important;
  width:100% !important;
  min-height:56px !important;
  margin:0 !important;
  padding:16px 18px !important;
  border:1px solid var(--otoprep-player-border) !important;
  border-radius:var(--otoprep-answer-radius) !important;
  background:var(--otoprep-player-surface) !important;
  box-shadow:var(--otoprep-player-shadow-soft) !important;
  color:var(--otoprep-ink) !important;
  font-size:var(--otoprep-answer-font-size) !important;
  font-weight:650 !important;
  line-height:1.55 !important;
  text-align:left !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-answer__badge{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:32px !important;
  height:32px !important;
  flex:0 0 32px !important;
  border-radius:999px !important;
  border:1px solid rgba(19,32,42,.10) !important;
  background:var(--otoprep-player-surface-soft) !important;
  color:var(--otoprep-ink) !important;
  font-size:13px !important;
  line-height:1 !important;
  font-weight:900 !important;
  margin-top:1px !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .ays-quiz-question-state-box{
  display:block !important;
  clear:both !important;
  width:100% !important;
  margin:18px 0 14px !important;
  padding:0 !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .ays-quiz-question-state-box .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar{
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  justify-content:stretch !important;
  align-items:start !important;
  width:100% !important;
  gap:12px !important;
  row-gap:12px !important;
  margin:14px 0 0 !important;
  padding-top:2px !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .ays-quiz-question-state-box .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar .otoprep-mark-item{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:8px !important;
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  min-height:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .ays-quiz-question-state-box .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar .otoprep-mark-item__icon{
  width:44px !important;
  height:44px !important;
  flex:0 0 44px !important;
  border-radius:999px !important;
  border:1px solid rgba(16,117,188,.12) !important;
  background:rgba(255,255,255,.96) !important;
  box-shadow:0 8px 18px rgba(15,23,42,.06) !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .ays-quiz-question-state-box .ays-quiz-questions-nav-bookmark-box.otoprep-mark-toolbar .otoprep-mark-item__label{
  width:100% !important;
  min-height:0 !important;
  font-size:12px !important;
  line-height:1.2 !important;
  text-align:center !important;
  color:var(--otoprep-ink) !important;
  font-weight:800 !important;
  white-space:normal !important;
  align-items:flex-start !important;
  justify-content:center !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .ays_buttons_div,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-buttons{
  position:sticky !important;
  bottom:calc(10px + env(safe-area-inset-bottom)) !important;
  gap:10px !important;
  padding:10px !important;
  border-radius:18px !important;
  border:1px solid var(--otoprep-player-border) !important;
  background:rgba(255,255,255,.94) !important;
  box-shadow:0 16px 32px rgba(15,23,42,.08) !important;
}
@media (max-width: 860px){
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-topbar__row--quiz{
    grid-template-columns:auto minmax(0,1fr) !important;
  }
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__right{
    grid-column:1 / -1 !important;
    justify-content:space-between !important;
  }
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__meta{
    width:100% !important;
    justify-content:flex-start !important;
  }
}
@media (max-width: 640px){
  body.otoprep-app.otoprep-offline-practice-playing > .otoprep-offline-player.otoprep-offline-player--native-exact[data-otoprep-offline-player-floating="1"] .otoprep-offline-native-shell.otoprep-shell{
    padding:8px 14px 20px !important;
  }
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-card.otoprep-quiz-card{
    padding:16px 14px 20px !important;
    border-radius:22px !important;
  }
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__title{
    font-size:15px !important;
  }
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__sub{
    font-size:11px !important;
  }
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__progress,
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__timer,
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__ai,
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quizbar__textsize{
    min-height:36px !important;
    padding:7px 10px !important;
    border-radius:12px !important;
  }
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-question-meta{
    gap:6px !important;
  }
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-question-chip{
    min-height:28px !important;
    padding:6px 10px !important;
    font-size:11px !important;
  }
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quiz-card .ays-quiz-answers .ays-field > label.otoprep-answer__label{
    min-height:52px !important;
    padding:14px 14px !important;
    gap:12px !important;
  }
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-answer__badge{
    width:30px !important;
    height:30px !important;
    flex-basis:30px !important;
  }
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .ays_buttons_div,
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-buttons{
    padding:8px !important;
  }
}

/* 22.2.10 offline tutor/result parity: native offline result review */
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact.otoprep-offline-player--result .otoprep-card.otoprep-quiz-card{
  padding-bottom:24px !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-native-results{
  display:block !important;
  width:100% !important;
  margin:0 auto !important;
  color:var(--otoprep-ink) !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-result-summary{
  display:block !important;
  margin:0 0 16px !important;
  padding:18px !important;
  border:1px solid var(--otoprep-player-border) !important;
  border-radius:22px !important;
  background:#fff !important;
  box-shadow:0 14px 30px rgba(15,23,42,.06) !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-result-summary h3{
  margin:0 0 8px !important;
  font-size:22px !important;
  line-height:1.2 !important;
  color:var(--otoprep-ink) !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-result-score{
  display:flex !important;
  flex-wrap:wrap !important;
  align-items:center !important;
  gap:10px !important;
  margin-top:14px !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-result-score strong,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-result-score span{
  display:inline-flex !important;
  align-items:center !important;
  min-height:36px !important;
  padding:8px 12px !important;
  border-radius:999px !important;
  background:rgba(16,117,188,.08) !important;
  color:var(--otoprep-blue) !important;
  font-weight:900 !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-result-score small{
  color:var(--otoprep-muted) !important;
  font-weight:700 !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-result-questions{
  display:grid !important;
  gap:16px !important;
  margin:0 !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-native-result-question{
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:18px !important;
  border:1px solid var(--otoprep-player-border) !important;
  border-radius:22px !important;
  background:#fff !important;
  box-shadow:0 14px 30px rgba(15,23,42,.06) !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-native-result-question .otoprep-offline-result-question-meta{
  display:inline-flex !important;
  align-items:center !important;
  min-height:30px !important;
  margin:0 0 12px !important;
  padding:6px 10px !important;
  border-radius:999px !important;
  background:rgba(15,23,42,.05) !important;
  color:var(--otoprep-muted) !important;
  font-size:12px !important;
  font-weight:900 !important;
  letter-spacing:.01em !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-native-result-question .ays-quiz-answers{
  pointer-events:none !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-results-actions{
  margin-top:18px !important;
}
@media(max-width:640px){
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-result-summary,
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-native-result-question{
    padding:14px !important;
    border-radius:20px !important;
  }
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-result-score{
    align-items:flex-start !important;
    flex-direction:column !important;
  }
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .ays-quiz-answers .ays-field.correct_div,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .ays-quiz-answers .ays-field.is-correct{
  border-color:rgba(22,163,74,.28) !important;
  background:rgba(22,163,74,.06) !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .ays-quiz-answers .ays-field.wrong_div,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .ays-quiz-answers .ays-field.is-wrong{
  border-color:rgba(220,38,38,.24) !important;
  background:rgba(220,38,38,.05) !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .ays-quiz-answers .ays-field label.correct,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .ays-quiz-answers .ays-field label.answered.correct{
  color:#14532d !important;
  font-weight:800 !important;
}
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .ays-quiz-answers .ays-field label.wrong,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .ays-quiz-answers .ays-field label.answered.wrong{
  color:#7f1d1d !important;
  font-weight:800 !important;
}

/* 22.2.11 offline wrapper parity: keep native/offline quiz, feedback and result pages inside the app shell */
body.otoprep-app,
body.otoprep-app *,
body.otoprep-app *::before,
body.otoprep-app *::after{
  box-sizing:border-box;
}

body.otoprep-app{
  overflow-x:hidden;
}

body.otoprep-app .otoprep-shell,
body.otoprep-app .otoprep-main,
body.otoprep-app .otoprep-card,
body.otoprep-app .otoprep-quiz-wrap,
body.otoprep-app .otoprep-quiz-card,
body.otoprep-app .ays-quiz-container,
body.otoprep-app .ays-abs-fs,
body.otoprep-app .step,
body.otoprep-app .ays-quiz-answers,
body.otoprep-app .ays-field,
body.otoprep-app .otoprep-offline-player,
body.otoprep-app .otoprep-offline-native-shell,
body.otoprep-app .otoprep-offline-native-results,
body.otoprep-app .otoprep-offline-result-summary,
body.otoprep-app .otoprep-offline-result-questions,
body.otoprep-app .otoprep-offline-native-result-question,
body.otoprep-app .otoprep-qreview,
body.otoprep-app .otoprep-qreview-body{
  min-width:0 !important;
  max-width:100% !important;
}

body.otoprep-app img,
body.otoprep-app svg,
body.otoprep-app video,
body.otoprep-app iframe{
  max-width:100%;
}

body.otoprep-app img,
body.otoprep-app video{
  height:auto;
}

body.otoprep-app .otoprep-card table,
body.otoprep-app .otoprep-quiz-card table,
body.otoprep-app .otoprep-qreview-body table,
body.otoprep-app .otoprep-offline-native-results table{
  max-width:100%;
  display:block;
  overflow-x:auto;
}

body.otoprep-app .otoprep-card pre,
body.otoprep-app .otoprep-card code,
body.otoprep-app .otoprep-quiz-card pre,
body.otoprep-app .otoprep-quiz-card code,
body.otoprep-app .otoprep-offline-native-results pre,
body.otoprep-app .otoprep-offline-native-results code{
  max-width:100%;
  overflow-x:auto;
  white-space:pre-wrap;
}

/* Native Quiz Maker prints a second label for answer images. Empty image labels can sit beside
   the answer label in the old flex row and create the phantom right-hand column seen on mobile. */
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field,
body.otoprep-app.otoprep-view-result .otoprep-qreview-answers .ays-field,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .ays-quiz-answers .ays-field,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quiz-card .ays-quiz-answers .ays-field,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-native-results .ays-quiz-answers .ays-field{
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) !important;
  gap:8px !important;
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > label.otoprep-answer__label,
body.otoprep-app.otoprep-view-result .otoprep-qreview-answers .ays-field > label.otoprep-answer__label,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .ays-quiz-answers .ays-field > label.otoprep-answer__label,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-quiz-card .ays-quiz-answers .ays-field > label.otoprep-answer__label,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-native-results .ays-quiz-answers .ays-field > label.otoprep-answer__label{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  box-sizing:border-box !important;
}

body.otoprep-app .otoprep-answer__content,
body.otoprep-app .otoprep-quiz-card .ays_quiz_question,
body.otoprep-app .otoprep-quiz-card .ays_quiz_question *,
body.otoprep-app .otoprep-qreview-question,
body.otoprep-app .otoprep-qreview-answers,
body.otoprep-app .otoprep-qreview-explanation,
body.otoprep-app .right_answer_text,
body.otoprep-app .wrong_answer_text,
body.otoprep-app .ays_questtion_explanation,
body.otoprep-app .ays-question-explanation,
body.otoprep-app .ays-questtion-explanation{
  min-width:0 !important;
  max-width:100% !important;
  overflow-wrap:break-word;
  word-break:normal;
}

body.otoprep-app .ays-quiz-answers .ays-field > label.ays_answer_image.otoprep-empty-answer-image,
body.otoprep-app .ays-quiz-answers .ays-field > label.ays_answer_image[hidden],
body.otoprep-app .ays-quiz-answers .ays-field > label.ays_answer_image:empty{
  display:none !important;
}

body.otoprep-app .ays-quiz-answers .ays-field > label.ays_answer_image{
  width:auto !important;
  max-width:100% !important;
  min-width:0 !important;
  margin:8px 0 0 50px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  line-height:0 !important;
  overflow:hidden !important;
}

body.otoprep-app .ays-quiz-answers .ays-field > label.ays_answer_image:not(:has(img)),
body.otoprep-app .ays-quiz-answers .ays-field > label.ays_answer_image:not(.otoprep-has-answer-image):has(img[src=""], img:not([src])){
  display:none !important;
}

body.otoprep-app .ays-quiz-answers .ays-field > label.ays_answer_image img,
body.otoprep-app .ays-quiz-answers .ays-field > label.ays_answer_image .ays-answer-image{
  display:block !important;
  max-width:100% !important;
  height:auto !important;
  border-radius:16px;
}

body.otoprep-app .otoprep-offline-result-summary,
body.otoprep-app .otoprep-offline-native-result-question,
body.otoprep-app .otoprep-offline-session-done{
  overflow:hidden !important;
}

@media (max-width:640px){
  body.otoprep-app .ays-quiz-answers .ays-field > label.ays_answer_image{
    margin-left:42px !important;
  }

  body.otoprep-app .otoprep-offline-player,
  body.otoprep-app.otoprep-offline-practice-playing > .otoprep-offline-player.otoprep-offline-player--native-exact[data-otoprep-offline-player-floating="1"],
  body.otoprep-app.otoprep-offline-practice-playing > .otoprep-offline-player.otoprep-offline-player--native-exact[data-otoprep-offline-player-floating="1"] .otoprep-offline-native-shell.otoprep-shell{
    width:100% !important;
    max-width:100% !important;
  }

  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-topbar--quiz,
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-card.otoprep-quiz-card,
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-result-summary,
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-native-result-question{
    max-width:100% !important;
    overflow:hidden !important;
  }

  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .ays_buttons_div,
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-buttons{
    width:100% !important;
    max-width:100% !important;
    flex-wrap:wrap !important;
  }

  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .ays_buttons_div button,
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player--native-exact .otoprep-offline-buttons button{
    min-width:0 !important;
    max-width:100% !important;
  }
}

/* App navigation loading overlay. */
body.otoprep-app .otoprep-page-loading[hidden]{
  display:none !important;
}

body.otoprep-app .otoprep-page-loading{
  position:fixed;
  inset:0;
  z-index:2147483000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(6px);
}

body.otoprep-app .otoprep-page-loading__panel{
  display:inline-flex;
  align-items:center;
  gap:12px;
  min-height:52px;
  max-width:min(92vw,360px);
  padding:13px 18px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(16,117,188,.16);
  box-shadow:0 18px 60px rgba(16,25,45,.18);
  color:#14233a;
  font-weight:700;
}

body.otoprep-app .otoprep-page-loading__spinner{
  width:22px;
  height:22px;
  border-radius:999px;
  border:3px solid rgba(16,117,188,.18);
  border-top-color:var(--otoprep-primary,#1075BC);
  animation:otoprep-page-loading-spin .8s linear infinite;
}

html.otoprep-page-loading-active body.otoprep-app{
  cursor:progress;
}

@keyframes otoprep-page-loading-spin{
  to{ transform:rotate(360deg); }
}

@media (prefers-reduced-motion:reduce){
  body.otoprep-app .otoprep-page-loading__spinner{
    animation:none;
  }
}

/* 22.2.22: lightweight app-shell navigation guard for tabs/pages. */
body.otoprep-app .otoprep-page-loading[data-otoprep-page-loader="1"]{
  position:fixed;
  inset:0;
  z-index:2147483001;
  display:none;
  align-items:flex-start;
  justify-content:center;
  padding:calc(18px + env(safe-area-inset-top)) 16px 16px;
  background:rgba(243,246,249,.28);
  backdrop-filter:blur(2px);
  pointer-events:auto;
}
body.otoprep-app.otoprep-is-loading .otoprep-page-loading[data-otoprep-page-loader="1"]{
  display:flex;
}
body.otoprep-app .otoprep-page-loading__box{
  display:inline-flex;
  align-items:center;
  gap:10px;
  max-width:min(92vw,320px);
  min-height:44px;
  padding:10px 14px;
  border-radius:999px;
  background:#fff;
  border:1px solid rgba(16,117,188,.16);
  box-shadow:0 14px 40px rgba(16,25,45,.16);
  color:#14233a;
  font-weight:800;
  font-size:14px;
}
body.otoprep-app .otoprep-page-loading__box .otoprep-page-loading__spinner,
body.otoprep-app .otoprep-quiz-start-loader__spinner{
  width:18px;
  height:18px;
  flex:0 0 18px;
  border-radius:999px;
  border:3px solid rgba(16,117,188,.18);
  border-top-color:var(--otoprep-blue,#1075BC);
  animation:otoprep-page-loading-spin .8s linear infinite;
}
body.otoprep-app.otoprep-is-loading,
html.otoprep-is-loading body.otoprep-app{
  cursor:progress;
}
body.otoprep-app.otoprep-is-loading .otoprep-tab,
body.otoprep-app.otoprep-is-loading .otoprep-btn{
  pointer-events:none;
}

/* 22.2.22: while App Mode auto-starts an AYS attempt, hide the legacy start screen chrome. */
body.otoprep-app.otoprep-view-quiz .ays-quiz-container.otoprep-autostart-pending .ays-start-page:not(.information_form){
  min-height:220px;
  display:flex !important;
  align-items:center;
  justify-content:center;
  padding:24px !important;
}
body.otoprep-app.otoprep-view-quiz .ays-quiz-container.otoprep-autostart-pending .ays-start-page:not(.information_form) > *:not(.otoprep-quiz-start-loader){
  display:none !important;
}
body.otoprep-app .otoprep-quiz-start-loader{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:52px;
  max-width:min(92vw,360px);
  padding:13px 18px;
  border-radius:18px;
  background:#fff;
  border:1px solid rgba(16,117,188,.16);
  box-shadow:0 18px 60px rgba(16,25,45,.14);
  color:#14233a;
  font-weight:850;
  text-align:center;
}
body.otoprep-app .otoprep-quiz-start-loader__text{
  line-height:1.25;
}
@media (prefers-reduced-motion:reduce){
  body.otoprep-app .otoprep-page-loading__box .otoprep-page-loading__spinner,
  body.otoprep-app .otoprep-quiz-start-loader__spinner{
    animation:none;
  }
}

/* 22.2.29: trial-start clarity and checkout reminder dismissal. */
body.otoprep-app .otoprep-trial-reassurance,
body.otoprep-app .otoprep-home-trial__reassurance{
  margin:10px 0 0;
  font-size:13px;
  line-height:1.45;
  color:rgba(20,35,58,.78);
}
body.otoprep-app .otoprep-trial-locks{
  margin-top:14px;
}
body.otoprep-app .otoprep-trial-locks__head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}
body.otoprep-app .otoprep-trial-locks__head h3{
  margin:0;
}
body.otoprep-app .otoprep-trial-lockgrid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
body.otoprep-app .otoprep-trial-lockcard{
  padding:14px;
  border:1px solid rgba(16,117,188,.16);
  border-radius:18px;
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(246,250,255,.96));
  box-shadow:0 12px 28px rgba(16,25,45,.06);
}
body.otoprep-app .otoprep-trial-lockcard__icon{
  display:inline-flex;
  width:28px;
  height:28px;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  background:rgba(16,117,188,.10);
  margin-bottom:8px;
}
body.otoprep-app .otoprep-trial-lockcard h4{
  margin:0 0 4px;
  font-size:15px;
}
body.otoprep-app .otoprep-trial-lockcard p{
  margin:0;
  font-size:13px;
  line-height:1.45;
}
body.otoprep-app .otoprep-sticky-conversion{
  position:sticky;
  bottom:calc(84px + env(safe-area-inset-bottom, 0px));
  z-index:120;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:14px 0;
  padding:12px 14px;
  border:1px solid rgba(16,117,188,.18);
  border-radius:20px;
  background:rgba(255,255,255,.96);
  box-shadow:0 16px 44px rgba(16,25,45,.14);
  backdrop-filter:blur(12px);
}
body.otoprep-app .otoprep-sticky-conversion__copy{
  min-width:0;
}
body.otoprep-app .otoprep-sticky-conversion__copy strong{
  display:block;
  font-size:14px;
  line-height:1.25;
}
body.otoprep-app .otoprep-sticky-conversion__copy span{
  display:block;
  margin-top:2px;
  font-size:12px;
  color:rgba(20,35,58,.72);
}
body.otoprep-app .otoprep-mock-readiness,
body.otoprep-app .otoprep-mock-followup,
body.otoprep-app .otoprep-mock-bundle{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  margin-top:14px;
  border-color:rgba(16,117,188,.18);
  background:linear-gradient(135deg,rgba(255,255,255,1),rgba(241,248,255,.94));
}
body.otoprep-app .otoprep-mock-readiness__copy,
body.otoprep-app .otoprep-mock-bundle__copy{
  min-width:0;
}
body.otoprep-app .otoprep-mock-readiness__chips,
body.otoprep-app .otoprep-mock-bundle__chips{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:10px;
}
body.otoprep-app .otoprep-mock-readiness__chips span,
body.otoprep-app .otoprep-mock-bundle__chips span,
body.otoprep-app .otoprep-mock__facts span{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  padding:4px 8px;
  border-radius:999px;
  background:rgba(16,117,188,.09);
  color:#14233a;
  font-size:12px;
  font-weight:750;
}
body.otoprep-app .otoprep-mock-readiness__actions,
body.otoprep-app .otoprep-mock-followup__actions,
body.otoprep-app .otoprep-mock-bundle__actions{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:8px;
  flex:0 0 auto;
}
body.otoprep-app .otoprep-mock__headline{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}
body.otoprep-app .otoprep-mock__body{
  margin:8px 0 0;
  line-height:1.45;
}
body.otoprep-app .otoprep-mock__facts{
  display:flex;
  flex-wrap:wrap;
  gap:7px;
  margin-top:10px;
}
body.otoprep-app .otoprep-mock__attempts{
  margin:8px 0 0;
  font-size:13px;
  color:rgba(20,35,58,.72);
}
body.otoprep-app .otoprep-mock.is-locked{
  border-color:rgba(16,117,188,.18);
  background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(246,250,255,.96));
}
body.otoprep-app .otoprep-mock.is-completed{
  border-color:rgba(31,135,76,.22);
}














@media (max-width:760px){
  body.otoprep-app .otoprep-trial-lockgrid,
  body.otoprep-app .otoprep-checkout-summary__grid{
    grid-template-columns:1fr;
  }
  body.otoprep-app .otoprep-sticky-conversion,
  body.otoprep-app .otoprep-mock-readiness,
  body.otoprep-app .otoprep-mock-followup,
  body.otoprep-app .otoprep-mock-bundle,
  body.otoprep-app .otoprep-checkout-recovery{
    align-items:stretch;
    flex-direction:column;
  }
  body.otoprep-app .otoprep-sticky-conversion .otoprep-btn,
  body.otoprep-app .otoprep-mock-readiness__actions .otoprep-btn,
  body.otoprep-app .otoprep-mock-followup__actions .otoprep-btn,
  body.otoprep-app .otoprep-mock-bundle__actions .otoprep-btn,
  body.otoprep-app .otoprep-checkout-recovery__actions .otoprep-btn{
    width:100%;
    justify-content:center;
  }
  body.otoprep-app .otoprep-mock-readiness__actions,
  body.otoprep-app .otoprep-mock-followup__actions,
  body.otoprep-app .otoprep-mock-bundle__actions,
  body.otoprep-app .otoprep-checkout-recovery__actions{
    justify-content:stretch;
  }
}
body.otoprep-app .otoprep-trial-lockcard strong{
  display:block;
  margin:0 0 4px;
  font-size:15px;
}
body.otoprep-app .otoprep-trial-lockcard > span:not(.otoprep-trial-lockcard__icon){
  display:block;
  margin:0;
  font-size:13px;
  line-height:1.45;
  color:rgba(20,35,58,.72);
}

/* 22.2.30: frontend update notice + mobile mock card layout fixes. */
body.otoprep-app .otoprep-app-update-notice{
  display:flex;
  align-items:flex-start;
  gap:8px;
  max-width:var(--otoprep-shell-max, 1120px);
  margin:8px auto 0;
  padding:10px 14px;
  border:1px solid rgba(16,117,188,.18);
  border-radius:16px;
  background:rgba(240,248,255,.96);
  color:#14233a;
  font-size:13px;
  line-height:1.45;
  box-shadow:0 8px 24px rgba(16,117,188,.08);
}
body.otoprep-app .otoprep-app-update-notice__icon{
  flex:0 0 auto;
  color:var(--otoprep-blue);
  font-weight:900;
}
body.otoprep-app .otoprep-app-update-notice__message{
  min-width:0;
}
body.otoprep-app .otoprep-mock{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  align-items:start;
  gap:14px;
}
body.otoprep-app .otoprep-mock__meta{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  gap:0;
  min-width:0;
}
body.otoprep-app .otoprep-mock__headline{
  width:100%;
}
body.otoprep-app .otoprep-mock__title{
  max-width:none;
  white-space:normal;
  overflow:visible;
  text-overflow:clip;
  overflow-wrap:break-word;
}
body.otoprep-app .otoprep-mock__body{
  max-width:62ch;
  color:rgba(20,35,58,.76);
}
body.otoprep-app .otoprep-mock__facts span{
  white-space:normal;
  overflow-wrap:break-word;
}
body.otoprep-app .otoprep-mock__actions{
  align-self:start;
  min-width:190px;
  display:flex;
  justify-content:flex-end;
}
@media (max-width:760px){
  body.otoprep-app .otoprep-app-update-notice{
    margin:8px 12px 0;
    border-radius:14px;
  }
  body.otoprep-app .otoprep-mock{
    grid-template-columns:1fr;
  }
  body.otoprep-app .otoprep-mock__headline{
    align-items:flex-start;
  }
  body.otoprep-app .otoprep-mock__facts span{
    flex:1 1 130px;
  }
  body.otoprep-app .otoprep-mock__actions{
    width:100%;
    min-width:0;
    justify-content:stretch;
  }
  body.otoprep-app .otoprep-mock__actions .otoprep-btn{
    width:100%;
    justify-content:center;
  }
}

/* 22.2.30: when Timed mode pauses on the native start screen, show a clean
   OtoPrep time picker and suppress legacy quiz image/title/description content. */
body.otoprep-app .ays-start-page.otoprep-timed-start-page > .ays_quiz_image,
body.otoprep-app .ays-start-page.otoprep-timed-start-page > .ays-fs-title,
body.otoprep-app .ays-start-page.otoprep-timed-start-page > .ays-fs-subtitle,
body.otoprep-app .ays-start-page.otoprep-timed-start-page > figure,
body.otoprep-app .ays-start-page.otoprep-timed-start-page > img{
  display:none !important;
}
body.otoprep-app .ays-start-page.otoprep-timed-start-page .otoprep-timed-setup{
  width:100%;
  box-sizing:border-box;
}
body.otoprep-app .ays-quiz-container.otoprep-timed-start-ready .ays_buttons_div,
body.otoprep-app .ays-quiz-container.otoprep-timed-start-ready .ays-qm-start-actions{
  width:100%;
}
body.otoprep-app .ays-quiz-container.otoprep-timed-start-ready .ays-qm-default-start-button-wrap,
body.otoprep-app .ays-quiz-container.otoprep-timed-start-ready .ays-qm-default-start-button-wrap input,
body.otoprep-app .ays-quiz-container.otoprep-timed-start-ready .ays_buttons_div input.start_button{
  width:100%;
}

/* 22.2.32: server-side timed setup gate, used before the native quiz player loads. */
body.otoprep-app .otoprep-timed-gate__form{
  margin-top:14px;
}
body.otoprep-app .otoprep-timed-gate__minutes input[type="number"]{
  max-width:140px;
  font-weight:900;
}
body.otoprep-app .otoprep-timed-gate__chips{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:12px 0 4px;
}
body.otoprep-app .otoprep-timed-gate__chips .is-active{
  border-color:rgba(16,117,188,.45);
  background:rgba(16,117,188,.08);
}

/* 22.2.35: Oral Mock Assessment production UI. */


















/* Oral Practice dashboard refresh */










































/* 22.2.41 Oral dashboard QA: mobile width, bottom-tab and mock feedback polish */
body.otoprep-app{
  max-width:100%;
  overflow-x:hidden;
}
body.otoprep-app .otoprep-shell,
body.otoprep-app .otoprep-card,
body.otoprep-app .otoprep-grid,
body.otoprep-app .otoprep-grid__item,
body.otoprep-app .otoprep-oralDash,
body.otoprep-app .otoprep-oralDashHero,
body.otoprep-app .otoprep-oralCourses,
body.otoprep-app .otoprep-oralCourses__grid,
body.otoprep-app .otoprep-oralCourseCard,
body.otoprep-app .otoprep-oralMockCard,
body.otoprep-app .otoprep-oralUtilityGrid,
body.otoprep-app .otoprep-oralMockReview,
body.otoprep-app .otoprep-oralMockStation,
body.otoprep-app .otoprep-oralMockWhole{
  box-sizing:border-box;
  max-width:100%;
  min-width:0;
}





























@media (max-width:720px){
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-shell{
    padding-left:max(10px, env(safe-area-inset-left));
    padding-right:max(10px, env(safe-area-inset-right));
    padding-bottom:calc(82px + env(safe-area-inset-bottom));
    min-height:auto;
  }
  body.otoprep-app .otoprep-main > *:last-child{
    margin-bottom:0;
  }
  
  
  
  
  
  
  
  
}

/* 22.2.41: Oral dashboard mobile alignment and mock feedback polish */
body.otoprep-app{
  overflow-x:hidden;
}
body.otoprep-app .otoprep-shell,
body.otoprep-app .otoprep-card,
body.otoprep-app .otoprep-oralDash,
body.otoprep-app .otoprep-oralDash *,
body.otoprep-app .otoprep-oralCourses *,
body.otoprep-app .otoprep-oralMockReview,
body.otoprep-app .otoprep-oralMockReview *{
  box-sizing:border-box;
}
body.otoprep-app .otoprep-shell,
body.otoprep-app .otoprep-card,
body.otoprep-app .otoprep-oralDash,
body.otoprep-app .otoprep-oralDashHero,
body.otoprep-app .otoprep-oralMockCard,
body.otoprep-app .otoprep-oralCourses,
body.otoprep-app .otoprep-oralCourses__grid,
body.otoprep-app .otoprep-oralCourseCard{
  max-width:100%;
  min-width:0;
}





@media (max-width:720px){
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz):not(.otoprep-view-result) .otoprep-shell{
    width:100%;
    padding-left:12px;
    padding-right:12px;
    padding-bottom:calc(82px + env(safe-area-inset-bottom));
  }
  
  
  
  
  
  
  
  
}


















body.otoprep-app .otoprep-btn.is-busy{
  opacity:.78;
  cursor:wait;
}
body.otoprep-app .otoprep-btn--sm{
  padding:10px 12px;
  border-radius:11px;
  font-size:13px;
}


/* 22.2.41: Oral dashboard mobile containment + mock feedback review polish. */
body.otoprep-app,
body.otoprep-app .otoprep-shell,
body.otoprep-app .otoprep-card,
body.otoprep-app .otoprep-oralDash,
body.otoprep-app .otoprep-oralDash *,
body.otoprep-app .otoprep-oralCourses,
body.otoprep-app .otoprep-oralCourses *,
body.otoprep-app .otoprep-oralCourseCard,
body.otoprep-app .otoprep-oralMockCard,
body.otoprep-app .otoprep-oralDashHero,
body.otoprep-app .otoprep-oralMockReview,
body.otoprep-app .otoprep-oralMockReview *{
  box-sizing:border-box;
}
body.otoprep-app .otoprep-shell{
  width:100%;
  max-width:1100px;
  overflow-x:hidden;
}




















@media (max-width:720px){
  html body.otoprep-app,
  body.otoprep-app{
    overflow-x:hidden;
  }
  body.otoprep-app .otoprep-shell{
    padding-left:12px;
    padding-right:12px;
    padding-bottom:calc(76px + env(safe-area-inset-bottom));
    min-height:auto;
  }
  body.otoprep-app.otoprep-tab-practice .otoprep-shell{
    padding-bottom:calc(72px + env(safe-area-inset-bottom));
  }
  
  
  
  
  
  
  
  
}



@media (max-width:720px){
  body.otoprep-app.otoprep-tab-practice .otoprep-shell{
    min-height:auto !important;
    padding-bottom:calc(76px + env(safe-area-inset-bottom)) !important;
  }
  
}


/* 22.2.42: Mobile shell scroll lock.
   Keep the bottom tabs as a real app footer and make only the main panel scroll,
   so iOS Safari cannot scroll into a blank area below the footer. */
@media (max-width: 782px){
  html:not(.otoprep-layout-v3).otoprep-app-root--bottom-shell,
  html:not(.otoprep-layout-v3).otoprep-app-root--bottom-shell body.otoprep-app{
    height:100%;
    min-height:100%;
    overflow:hidden !important;
    overscroll-behavior:none;
    background:#F3F6F9;
  }

  html:not(.otoprep-layout-v3).otoprep-app-root--bottom-shell body.otoprep-app{
    position:fixed;
    inset:0;
    width:100%;
    max-width:100%;
    touch-action:manipulation;
  }

  html:not(.otoprep-layout-v3).otoprep-app-root--bottom-shell body.otoprep-app .otoprep-shell{
    width:100%;
    max-width:none;
    height:var(--otoprep-visual-vh, 100dvh);
    min-height:0 !important;
    max-height:var(--otoprep-visual-vh, 100dvh);
    margin:0;
    padding:14px 14px 0 !important;
    position:relative;
    display:flex;
    flex-direction:column;
    overflow:hidden !important;
    box-sizing:border-box;
  }

  html:not(.otoprep-layout-v3).otoprep-app-root--bottom-shell body.otoprep-app .otoprep-topbar,
  html:not(.otoprep-layout-v3).otoprep-app-root--bottom-shell body.otoprep-app .otoprep-app-update-notice,
  html:not(.otoprep-layout-v3).otoprep-app-root--bottom-shell body.otoprep-app .otoprep-tabs{
    flex:0 0 auto;
  }

  html:not(.otoprep-layout-v3).otoprep-app-root--bottom-shell body.otoprep-app .otoprep-main{
    flex:1 1 auto;
    min-height:0;
    overflow-y:auto;
    overflow-x:hidden;
    -webkit-overflow-scrolling:touch;
    overscroll-behavior:contain;
    padding-bottom:14px;
    box-sizing:border-box;
  }

  html:not(.otoprep-layout-v3).otoprep-app-root--bottom-shell body.otoprep-app .otoprep-tabs{
    position:relative !important;
    left:auto !important;
    right:auto !important;
    bottom:auto !important;
    width:auto;
    margin:0 -14px;
    z-index:100;
    padding:8px 10px max(8px, env(safe-area-inset-bottom)) !important;
    box-shadow:0 -10px 28px rgba(19,32,42,.10);
    transform:none !important;
  }

  html:not(.otoprep-layout-v3).otoprep-app-root--bottom-shell body.otoprep-app .otoprep-tabs__inner{
    width:100%;
    max-width:none;
  }

  html:not(.otoprep-layout-v3).otoprep-app-root--bottom-shell body.otoprep-app .otoprep-sticky-conversion{
    position:absolute;
    left:14px;
    right:14px;
    bottom:calc(var(--otoprep-tabs-height, 76px) + 10px + env(safe-area-inset-bottom));
  }
}

/* 22.2.47: Quiz / Oral / Daily Dx / Cards surfaces + standalone Cards UI */
body.otoprep-app .otoprep-topbar__surfaceSeg--four{
  grid-template-columns:repeat(4,minmax(0,1fr));
}
body.otoprep-app .otoprep-topbar__surfaceSeg--four .otoprep-seg__btn{
  min-width:0;
  text-align:center;
}

































































@media (max-width:782px){
  body.otoprep-app .otoprep-topbar__surfaceSeg--four{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  
  
  
  
  
}


/* Flashcard access / funnel polish (22.2.48) */
body.otoprep-app .otoprep-mini-chip--lock{
  background:rgba(245,158,11,.12);
  color:#92400e;
  border-color:rgba(245,158,11,.28);
}





/* Flashcard answer checking: typed is free, oral consumes Practice credits (22.2.51) */














body.otoprep-app .otoprep-mini-chip--accent{
  background:rgba(16,117,188,.10);
  color:var(--otoprep-blue);
}






body.otoprep-app .otoprep-btn--danger{
  border-color:#b42318 !important;
  background:#b42318 !important;
  color:#fff !important;
}
body.otoprep-app .otoprep-alert{
  border-radius:16px;
  padding:12px 14px;
  border:1px solid var(--otoprep-border);
  background:#fff;
}
body.otoprep-app .otoprep-alert--notice{
  border-color:rgba(245,158,11,.28);
  background:rgba(255,251,235,.86);
}


/* Flashcard answer checking (22.2.51) */

















body.otoprep-app .otoprep-mini-chip--accent{
  background:rgba(16,117,188,.10);
  color:var(--otoprep-blue);
  border-color:rgba(16,117,188,.22);
}










/* 22.2.51: Flashcard typed/oral answer checking */










































/* OtoPrep Cards UX refresh — missions, session builder and oral sprints */






































/* 22.2.56: Flashcard mobile typing + sprint-state fixes */




@media (max-width: 720px){
  html.otoprep-app-root--bottom-shell body.otoprep-app.otoprep-keyboard-active .otoprep-tabs,
  body.otoprep-app.otoprep-keyboard-active .otoprep-tabs{
    display:none !important;
  }
  html.otoprep-app-root--bottom-shell body.otoprep-app.otoprep-keyboard-active .otoprep-main,
  body.otoprep-app.otoprep-keyboard-active .otoprep-main{
    padding-bottom:18px !important;
  }
  
  
  
  
}

/* 22.2.57: flashcard mobile answer panels + image cards */




@media (max-width: 720px){
  html.otoprep-app-root--bottom-shell body.otoprep-app.otoprep-answer-panel-active .otoprep-tabs,
  body.otoprep-app.otoprep-answer-panel-active .otoprep-tabs{
    display:none !important;
  }
  html.otoprep-app-root--bottom-shell body.otoprep-app.otoprep-answer-panel-active .otoprep-main,
  body.otoprep-app.otoprep-answer-panel-active .otoprep-main{
    padding-bottom:18px !important;
  }
  body.otoprep-app.otoprep-answer-panel-active .otoprep-sticky-conversion{
    display:none !important;
  }
  
  
  
  
}


/* 22.3.2: visible loading state for flashcard AI answer checks. */




@keyframes otoprep-fc-answer-spin{
  to{ transform:rotate(360deg); }
}



/* 22.3.4: keep the bottom app tabs available during flashcard answer review; only hide them for the real mobile keyboard state. */
@media (max-width: 720px){
  html.otoprep-app-root--bottom-shell body.otoprep-app.otoprep-answer-panel-active:not(.otoprep-keyboard-active) .otoprep-tabs,
  body.otoprep-app.otoprep-answer-panel-active:not(.otoprep-keyboard-active) .otoprep-tabs{
    display:block !important;
  }
  html.otoprep-app-root--bottom-shell body.otoprep-app.otoprep-answer-panel-active:not(.otoprep-keyboard-active) .otoprep-main,
  body.otoprep-app.otoprep-answer-panel-active:not(.otoprep-keyboard-active) .otoprep-main{
    padding-bottom:var(--otoprep-tabs-offset, 88px) !important;
  }
  
}







/* 22.3.5: flashcard session blocking loader + clearer no-voice path. */














@keyframes otoprep-fc-session-loader{
  0%,80%,100%{ transform:translateY(0); opacity:.52; }
  40%{ transform:translateY(-6px); opacity:1; }
}



/* 22.3.6: Oral Sprint card sync controls + wider mobile flashcard review layout. */












/* 22.3.7: flatter Oral Sprint UI and non-blocking end-debrief display. */
















/* 22.3.8: flatten flashcard UI surfaces so content uses the main card instead of boxes inside boxes. */





























/* 22.3.8: make older saved sprint/debrief markup flat too. */










/* 22.3.9: Oral Sprint-only flashcard UX, stronger contrast, flat sectioning. */





































/* 22.3.11: unified /app transition loader + contextual walkthrough polish. */
@view-transition {
  navigation: auto;
}

::view-transition-old(root),
::view-transition-new(root){
  animation-duration:.22s;
  animation-timing-function:ease-out;
}

body.otoprep-app .otoprep-page-loading[hidden]{
  display:none !important;
}

body.otoprep-app .otoprep-page-loading{
  position:fixed !important;
  inset:0 !important;
  z-index:2147483000 !important;
  display:flex !important;
  align-items:flex-start !important;
  justify-content:center !important;
  padding:calc(14px + env(safe-area-inset-top)) 16px 16px !important;
  background:linear-gradient(180deg,rgba(243,246,249,.72),rgba(243,246,249,.28) 42%,rgba(243,246,249,.12)) !important;
  backdrop-filter:blur(3px) !important;
  pointer-events:auto !important;
}

body.otoprep-app .otoprep-page-loading__panel,
body.otoprep-app .otoprep-page-loading__box{
  display:inline-flex !important;
  align-items:center !important;
  gap:12px !important;
  min-height:46px !important;
  max-width:min(92vw,430px) !important;
  padding:10px 14px !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.96) !important;
  border:1px solid rgba(16,117,188,.18) !important;
  box-shadow:0 16px 44px rgba(16,25,45,.18) !important;
  color:#14233a !important;
  font-weight:850 !important;
  line-height:1.2 !important;
  animation:otoprep-loader-pill-in .24s ease-out both;
}

body.otoprep-app .otoprep-page-loading__copy{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
}

body.otoprep-app .otoprep-page-loading__text{
  display:block;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

body.otoprep-app .otoprep-page-loading__subtext{
  display:none;
  max-width:320px;
  color:rgba(20,35,58,.72);
  font-size:12px;
  font-weight:700;
  white-space:normal;
}

body.otoprep-app.otoprep-is-loading-recover .otoprep-page-loading__subtext{
  display:block;
}

body.otoprep-app .otoprep-page-loading__spinner{
  width:20px !important;
  height:20px !important;
  flex:0 0 20px !important;
  border-radius:999px !important;
  border:3px solid rgba(16,117,188,.18) !important;
  border-top-color:var(--otoprep-blue,#1075BC) !important;
  animation:otoprep-page-loading-spin .75s linear infinite !important;
}

body.otoprep-app .otoprep-page-loading__skeleton{
  display:none;
  position:absolute;
  left:50%;
  top:calc(92px + env(safe-area-inset-top));
  width:min(92vw,720px);
  transform:translateX(-50%);
  pointer-events:none;
}

body.otoprep-app.otoprep-is-loading-skeleton .otoprep-page-loading__skeleton{
  display:block;
  animation:otoprep-loader-skeleton-in .22s ease-out both;
}

body.otoprep-app .otoprep-page-loading__sk-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:12px;
}

body.otoprep-app .otoprep-page-loading__sk-card{
  position:relative;
  overflow:hidden;
  min-height:92px;
  padding:14px;
  border-radius:18px;
  background:rgba(255,255,255,.86);
  border:1px solid rgba(16,117,188,.10);
  box-shadow:0 12px 30px rgba(16,25,45,.08);
}

body.otoprep-app .otoprep-page-loading__sk-card--hero{
  min-height:118px;
}

body.otoprep-app .otoprep-page-loading__skeletonInner{
  display:block;
}

body.otoprep-app .otoprep-page-loading__sk-card b,
body.otoprep-app .otoprep-page-loading__sk-card strong{
  display:block;
  margin:0 0 12px;
  color:rgba(20,35,58,.74);
  font-size:13px;
  font-weight:900;
  letter-spacing:.01em;
}

body.otoprep-app .otoprep-page-loading__sk-card--hero b{
  font-size:15px;
}

body.otoprep-app .otoprep-page-loading__sk-card em{
  display:inline-flex;
  align-items:center;
  margin-top:2px;
  min-height:22px;
  padding:3px 8px;
  border-radius:999px;
  background:rgba(16,117,188,.08);
  color:rgba(20,35,58,.68);
  font-size:12px;
  font-style:normal;
  font-weight:800;
}

body.otoprep-app .otoprep-page-loading__sk-card--mini{
  min-height:88px;
}

body.otoprep-app .otoprep-page-loading[data-skeleton="quiz"] .otoprep-page-loading__sk-card--hero,
body.otoprep-app .otoprep-page-loading[data-skeleton="voice"] .otoprep-page-loading__sk-card--hero,
body.otoprep-app .otoprep-page-loading[data-skeleton="mock"] .otoprep-page-loading__sk-card--hero{
  min-height:136px;
}

body.otoprep-app .otoprep-page-loading[data-skeleton="checkout"] .otoprep-page-loading__sk-card--hero,
body.otoprep-app .otoprep-page-loading[data-skeleton="account"] .otoprep-page-loading__sk-card--hero{
  border-color:rgba(16,117,188,.16);
}

body.otoprep-app .otoprep-page-loading__sk-card span{
  display:block;
  height:11px;
  width:72%;
  margin:0 0 10px;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(16,117,188,.08),rgba(16,117,188,.18),rgba(16,117,188,.08));
  background-size:220% 100%;
  animation:otoprep-loader-shimmer 1.12s ease-in-out infinite;
}

body.otoprep-app .otoprep-page-loading__sk-card span:nth-child(2){width:52%;}
body.otoprep-app .otoprep-page-loading__sk-card span:nth-child(3){width:36%;}

body.otoprep-app.otoprep-is-loading .otoprep-main{
  opacity:.64;
  transform:translateY(2px);
  transition:opacity .18s ease-out, transform .18s ease-out;
}

body.otoprep-app.otoprep-is-loading-skeleton .otoprep-main{
  opacity:.32;
}

body.otoprep-app .otoprep-tab.is-loading,
body.otoprep-app .otoprep-btn.is-loading{
  opacity:.82;
}

body.otoprep-app .otoprep-tab.is-loading .otoprep-tab__icon{
  animation:otoprep-loader-tab-breathe .8s ease-in-out infinite alternate;
}

body.otoprep-app .otoprep-pill--help{
  gap:6px;
  background:rgba(20,35,58,.06);
  border-color:rgba(20,35,58,.14);
  color:#14233a;
  appearance:none;
  font:inherit;
}

body.otoprep-app .otoprep-pill--help > span[aria-hidden="true"]{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:18px;
  height:18px;
  border-radius:999px;
  background:rgba(16,117,188,.12);
  color:var(--otoprep-blue,#1075BC);
  font-weight:950;
}

body.otoprep-app .otoprep-quizbar__help{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  border-radius:999px;
  border:1px solid rgba(16,117,188,.22);
  background:rgba(255,255,255,.94);
  color:var(--otoprep-blue,#1075BC);
  font-weight:950;
  cursor:pointer;
}

body.otoprep-app .otoprep-quizbar__help:hover,
body.otoprep-app .otoprep-pill--help:hover{
  background:rgba(16,117,188,.10);
}

body.otoprep-app .otoprep-tour{
  background:radial-gradient(circle at var(--otoprep-tour-target-x,50%) 42%,rgba(255,255,255,.10),rgba(0,0,0,.42) 28%,rgba(0,0,0,.56) 100%) !important;
  animation:otoprep-tour-backdrop-in .2s ease-out both;
}

body.otoprep-app .otoprep-tour.is-closing{
  animation:otoprep-tour-backdrop-out .18s ease-in both;
}

body.otoprep-app .otoprep-tour__sheet{
  position:relative;
  z-index:100001;
  border:1px solid rgba(16,117,188,.14);
  box-shadow:0 24px 80px rgba(0,0,0,.30);
  animation:otoprep-tour-sheet-in .28s cubic-bezier(.2,.9,.2,1) both;
}

body.otoprep-app .otoprep-tour.is-closing .otoprep-tour__sheet{
  animation:otoprep-tour-sheet-out .18s ease-in both;
}

body.otoprep-app .otoprep-tour__progress{
  margin-top:3px;
  color:rgba(20,35,58,.58);
  font-size:12px;
  font-weight:850;
}

body.otoprep-app .otoprep-tour__step-title{
  font-size:17px;
}

body.otoprep-app .otoprep-tour__step-body{
  line-height:1.48;
}

body.otoprep-app .otoprep-tour__dot{
  transition:width .18s ease-out, background-color .18s ease-out, opacity .18s ease-out;
}

body.otoprep-app .otoprep-tour__dot.is-active{
  width:22px;
  background:var(--otoprep-blue,#1075BC);
}

body.otoprep-app .otoprep-tour-highlight,
body.otoprep-app .otoprep-tab.is-tour-highlight{
  position:relative;
  z-index:100000;
}

body.otoprep-app .otoprep-tour-highlight::after,
body.otoprep-app .otoprep-tab.is-tour-highlight::after{
  border-color:rgba(16,117,188,.82) !important;
  box-shadow:0 0 0 7px rgba(16,117,188,.18),0 14px 42px rgba(0,0,0,.30) !important;
  animation:otoprep-tour-pulse 1.35s ease-in-out 2 !important;
}

@keyframes otoprep-loader-pill-in{
  from{ opacity:0; transform:translateY(-8px) scale(.98); }
  to{ opacity:1; transform:translateY(0) scale(1); }
}

@keyframes otoprep-loader-skeleton-in{
  from{ opacity:0; transform:translateX(-50%) translateY(6px); }
  to{ opacity:1; transform:translateX(-50%) translateY(0); }
}

@keyframes otoprep-loader-shimmer{
  0%{ background-position:120% 0; }
  100%{ background-position:-120% 0; }
}

@keyframes otoprep-loader-tab-breathe{
  from{ transform:translateY(0) scale(1); }
  to{ transform:translateY(-1px) scale(1.04); }
}

@keyframes otoprep-tour-backdrop-in{
  from{ opacity:0; }
  to{ opacity:1; }
}

@keyframes otoprep-tour-backdrop-out{
  from{ opacity:1; }
  to{ opacity:0; }
}

@keyframes otoprep-tour-sheet-in{
  from{ opacity:0; transform:translateY(18px) scale(.985); }
  to{ opacity:1; transform:translateY(0) scale(1); }
}

@keyframes otoprep-tour-sheet-out{
  from{ opacity:1; transform:translateY(0) scale(1); }
  to{ opacity:0; transform:translateY(10px) scale(.99); }
}

@media (max-width:720px){
  body.otoprep-app .otoprep-page-loading__sk-grid{
    grid-template-columns:1fr;
  }
  body.otoprep-app .otoprep-page-loading__sk-grid .otoprep-page-loading__sk-card:nth-child(n/**/+2){
    display:none;
  }
  body.otoprep-app .otoprep-pill--help .otoprep-pill__label--long{
    display:none;
  }
}

@media (prefers-reduced-motion:reduce){
  ::view-transition-old(root),
  ::view-transition-new(root),
  body.otoprep-app .otoprep-page-loading__panel,
  body.otoprep-app .otoprep-page-loading__box,
  body.otoprep-app .otoprep-page-loading__spinner,
  body.otoprep-app .otoprep-page-loading__sk-card span,
  body.otoprep-app .otoprep-tab.is-loading .otoprep-tab__icon,
  body.otoprep-app .otoprep-tour,
  body.otoprep-app .otoprep-tour__sheet,
  body.otoprep-app .otoprep-tour-highlight::after,
  body.otoprep-app .otoprep-tab.is-tour-highlight::after{
    animation:none !important;
  }
  body.otoprep-app.otoprep-is-loading .otoprep-main{
    transform:none;
    transition:none;
  }
}

/* 22.3.12: loader recovery controls, richer skeleton copy, and scoped sheet help. */
body.otoprep-app .otoprep-page-loading__actions{
  display:none;
  align-items:center;
  gap:8px;
  margin-left:4px;
}

body.otoprep-app.otoprep-is-loading-recover .otoprep-page-loading__actions{
  display:inline-flex;
}

body.otoprep-app.otoprep-is-loading-recover .otoprep-page-loading__panel{
  border-radius:24px !important;
  align-items:flex-start !important;
}

body.otoprep-app .otoprep-page-loading__action{
  appearance:none;
  border:1px solid rgba(16,117,188,.22);
  border-radius:999px;
  background:var(--otoprep-blue,#1075BC);
  color:#fff;
  cursor:pointer;
  font:inherit;
  font-size:12px;
  font-weight:900;
  line-height:1;
  padding:8px 11px;
  white-space:nowrap;
}

body.otoprep-app .otoprep-page-loading__action--ghost{
  background:rgba(255,255,255,.88);
  color:var(--otoprep-blue,#1075BC);
}

body.otoprep-app .otoprep-page-loading__skeletonInner{
  display:block;
}

body.otoprep-app .otoprep-page-loading__sk-card b,
body.otoprep-app .otoprep-page-loading__sk-card strong{
  color:#14233a;
  letter-spacing:-.01em;
}

body.otoprep-app .otoprep-page-loading__sk-card em{
  display:inline-flex;
  align-items:center;
  min-height:24px;
  margin-top:4px;
  padding:5px 9px;
  border-radius:999px;
  background:rgba(16,117,188,.08);
  color:rgba(20,35,58,.72);
  font-size:12px;
  font-style:normal;
  font-weight:850;
}

body.otoprep-app .otoprep-page-loading__skeletonInner--progress .otoprep-page-loading__sk-card--hero,
body.otoprep-app .otoprep-page-loading__skeletonInner--daily_dx .otoprep-page-loading__sk-card--hero,
body.otoprep-app .otoprep-page-loading__skeletonInner--mock .otoprep-page-loading__sk-card--hero{
  background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(16,117,188,.055));
}

body.otoprep-app .otoprep-page-loading__skeletonInner--checkout .otoprep-page-loading__sk-grid,
body.otoprep-app .otoprep-page-loading__skeletonInner--account .otoprep-page-loading__sk-grid{
  grid-template-columns:1.2fr .9fr .9fr;
}

body.otoprep-app .otoprep-page-loading__skeletonInner--flashcards .otoprep-page-loading__sk-card--mini,
body.otoprep-app .otoprep-page-loading__skeletonInner--voice .otoprep-page-loading__sk-card--mini{
  min-height:104px;
}

body.otoprep-app .otoprep-ai-sheet__head{
  gap:10px;
}

body.otoprep-app .otoprep-ai-sheet__title{
  min-width:0;
  flex:1 1 auto;
}

body.otoprep-app .otoprep-ai-sheet__help{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:30px;
  height:30px;
  flex:0 0 30px;
  border-radius:999px;
  border:1px solid rgba(16,117,188,.22);
  background:rgba(16,117,188,.08);
  color:var(--otoprep-blue,#1075BC);
  cursor:pointer;
  font:inherit;
  font-size:15px;
  font-weight:950;
  line-height:1;
}

body.otoprep-app .otoprep-ai-sheet__help:hover,
body.otoprep-app .otoprep-page-loading__action--ghost:hover{
  background:rgba(16,117,188,.12);
}

@media (max-width:720px){
  body.otoprep-app.otoprep-is-loading-recover .otoprep-page-loading__panel{
    width:min(92vw,430px);
    flex-wrap:wrap;
    border-radius:20px !important;
  }
  body.otoprep-app .otoprep-page-loading__actions{
    width:100%;
    margin-left:32px;
  }
  body.otoprep-app .otoprep-page-loading__action{
    flex:1 1 auto;
  }
}

@media (prefers-reduced-motion:reduce){
  body.otoprep-app .otoprep-page-loading__action,
  body.otoprep-app .otoprep-ai-sheet__help{
    transition:none !important;
  }
}


/* 22.3.12: contextual tour placement and subscription confirmation help. */
body.otoprep-app .otoprep-tour[data-target-region="top"]{
  align-items:flex-end;
}

body.otoprep-app .otoprep-tour[data-target-region="bottom"]{
  align-items:flex-start;
  padding-top:calc(76px + env(safe-area-inset-top,0px));
}

body.otoprep-app .otoprep-tour[data-target-region="middle"] .otoprep-tour__sheet{
  transform-origin:center bottom;
}

body.otoprep-app .otoprep-subconfirm__help{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:32px;
  height:32px;
  margin-left:auto;
  border-radius:999px;
  border:1px solid rgba(16,117,188,.22);
  background:rgba(255,255,255,.92);
  color:var(--otoprep-blue,#1075BC);
  cursor:pointer;
  font:inherit;
  font-size:15px;
  font-weight:950;
  line-height:1;
}

body.otoprep-app .otoprep-subconfirm__help:hover{
  background:rgba(16,117,188,.10);
}

@media (prefers-reduced-motion:reduce){
  body.otoprep-app .otoprep-subconfirm__help{
    transition:none !important;
  }
}

/* Contextual guided-help nudge (small, replayable, non-blocking). */
body.otoprep-app .otoprep-tour-nudge{
  position:fixed;
  right:max(18px,env(safe-area-inset-right));
  bottom:calc(86px + env(safe-area-inset-bottom));
  z-index:9990;
  width:min(360px,calc(100vw - 32px));
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:12px 12px 12px 14px;
  border:1px solid rgba(16,117,188,.18);
  border-radius:18px;
  background:rgba(255,255,255,.96);
  box-shadow:0 18px 46px rgba(10,24,40,.18);
  backdrop-filter:blur(12px);
  animation:otoprepTourNudgeIn .24s ease-out both;
}
body.otoprep-app .otoprep-tour-nudge__copy{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:2px;
}
body.otoprep-app .otoprep-tour-nudge__copy strong{
  color:#14233a;
  font-size:13px;
  font-weight:950;
  letter-spacing:-.01em;
}
body.otoprep-app .otoprep-tour-nudge__copy span{
  color:rgba(20,35,58,.68);
  font-size:12px;
  line-height:1.35;
}
body.otoprep-app .otoprep-tour-nudge__actions{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:7px;
}
body.otoprep-app .otoprep-tour-nudge__close{
  width:30px;
  height:30px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  border:1px solid rgba(16,117,188,.18);
  background:rgba(16,117,188,.06);
  color:rgba(20,35,58,.72);
  cursor:pointer;
  font:inherit;
  font-size:18px;
  font-weight:900;
  line-height:1;
}
body.otoprep-app .otoprep-tour-nudge__close:hover{
  background:rgba(16,117,188,.12);
  color:#14233a;
}
@keyframes otoprepTourNudgeIn{
  from{ opacity:0; transform:translateY(10px) scale(.98); }
  to{ opacity:1; transform:translateY(0) scale(1); }
}
@media (max-width:720px){
  body.otoprep-app .otoprep-tour-nudge{
    right:16px;
    left:16px;
    bottom:calc(78px + env(safe-area-inset-bottom));
    width:auto;
  }
}
@media (prefers-reduced-motion:reduce){
  body.otoprep-app .otoprep-tour-nudge{
    animation:none !important;
  }
}

/* 22.3.13: final walkthrough edge cases and richer destination skeletons. */
body.otoprep-app .otoprep-context-help{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  white-space:nowrap;
}
body.otoprep-app .otoprep-context-help--icon{
  width:28px;
  height:28px;
  flex:0 0 28px;
  margin-left:auto;
  border-radius:999px;
  border:1px solid rgba(16,117,188,.20);
  background:rgba(16,117,188,.08);
  color:var(--otoprep-blue,#1075BC);
  cursor:pointer;
  font:inherit;
  font-size:14px;
  font-weight:950;
  line-height:1;
}
body.otoprep-app .otoprep-context-help--icon:hover{
  background:rgba(16,117,188,.13);
}
body.otoprep-app .otoprep-page-loading__skeletonInner--offline .otoprep-page-loading__sk-card--hero,
body.otoprep-app .otoprep-page-loading__skeletonInner--install .otoprep-page-loading__sk-card--hero,
body.otoprep-app .otoprep-page-loading__skeletonInner--flashcards_empty .otoprep-page-loading__sk-card--hero,
body.otoprep-app .otoprep-page-loading__skeletonInner--flashcards_locked .otoprep-page-loading__sk-card--hero,
body.otoprep-app .otoprep-page-loading__skeletonInner--mock_locked .otoprep-page-loading__sk-card--hero,
body.otoprep-app .otoprep-page-loading__skeletonInner--daily_dx_unavailable .otoprep-page-loading__sk-card--hero{
  min-height:148px;
}
body.otoprep-app .otoprep-page-loading__sk-detail{
  display:flex;
  gap:8px;
  margin-top:14px;
  align-items:flex-end;
}
body.otoprep-app .otoprep-page-loading__sk-detail i{
  display:block;
  border-radius:999px;
  background:linear-gradient(90deg,rgba(16,117,188,.07),rgba(16,117,188,.18),rgba(16,117,188,.07));
  background-size:220% 100%;
  animation:otoprep-loader-shimmer 1.12s ease-in-out infinite;
}
body.otoprep-app .otoprep-page-loading__sk-detail--chart{
  align-items:flex-end;
  min-height:48px;
}
body.otoprep-app .otoprep-page-loading__sk-detail--chart i{
  flex:1 1 0;
  height:32px;
  border-radius:12px 12px 6px 6px;
}
body.otoprep-app .otoprep-page-loading__sk-detail--chart i:nth-child(2){height:44px;}
body.otoprep-app .otoprep-page-loading__sk-detail--chart i:nth-child(3){height:24px;}
body.otoprep-app .otoprep-page-loading__sk-detail--chart i:nth-child(4){height:52px;}
body.otoprep-app .otoprep-page-loading__sk-detail--queues,
body.otoprep-app .otoprep-page-loading__sk-detail--question,
body.otoprep-app .otoprep-page-loading__sk-detail--steps{
  flex-direction:column;
  align-items:stretch;
}
body.otoprep-app .otoprep-page-loading__sk-detail--queues i,
body.otoprep-app .otoprep-page-loading__sk-detail--question i,
body.otoprep-app .otoprep-page-loading__sk-detail--steps i{
  height:12px;
  width:100%;
}
body.otoprep-app .otoprep-page-loading__sk-detail--question i:nth-child(1){width:92%;}
body.otoprep-app .otoprep-page-loading__sk-detail--question i:nth-child(2){width:80%;}
body.otoprep-app .otoprep-page-loading__sk-detail--question i:nth-child(3){width:86%;}
body.otoprep-app .otoprep-page-loading__sk-detail--question i:nth-child(4){width:68%;}
body.otoprep-app .otoprep-page-loading__sk-detail--flashcards{
  align-items:stretch;
}
body.otoprep-app .otoprep-page-loading__sk-detail--flashcards i{
  flex:1 1 0;
  min-height:54px;
  border-radius:16px;
}
body.otoprep-app .otoprep-page-loading__sk-detail--secure{
  align-items:center;
}
body.otoprep-app .otoprep-page-loading__sk-detail--secure i{
  height:36px;
  flex:1 1 0;
  border-radius:16px;
}
body.otoprep-app .otoprep-offline-card__head .otoprep-context-help--icon{
  margin-left:auto;
}
body.otoprep-app .otoprep-fc-empty .otoprep-actions,
body.otoprep-app .otoprep-dx-app-notice .otoprep-actions,
body.otoprep-app .otoprep-mock__actions{
  flex-wrap:wrap;
}
@media (max-width:720px){
  body.otoprep-app .otoprep-context-help{
    white-space:normal;
  }
}
@media (prefers-reduced-motion:reduce){
  body.otoprep-app .otoprep-context-help,
  body.otoprep-app .otoprep-page-loading__sk-detail i{
    animation:none !important;
    transition:none !important;
  }
}



/* 22.3.13: contextual edge-state help layout. */
body.otoprep-app .otoprep-fc-empty__head,
body.otoprep-app .otoprep-dx-app-notice__head,
body.otoprep-app .otoprep-mocks__intro,
body.otoprep-app .otoprep-checkout__head-actions{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
body.otoprep-app .otoprep-fc-empty__head .otoprep-h2,
body.otoprep-app .otoprep-dx-app-notice__head .otoprep-h3,
body.otoprep-app .otoprep-mocks__intro h2{
  margin-top:0;
}
body.otoprep-app .otoprep-mocks__intro{
  margin:10px 0 18px;
}

body.otoprep-app [data-otoprep-tour-launch]:focus-visible,
body.otoprep-app .otoprep-context-help:focus-visible,
body.otoprep-app .otoprep-tour-nudge__close:focus-visible{
  outline:3px solid rgba(16,117,188,.36);
  outline-offset:3px;
}
@media (max-width:720px){
  body.otoprep-app .otoprep-fc-empty__head,
  body.otoprep-app .otoprep-dx-app-notice__head,
  body.otoprep-app .otoprep-mocks__intro,
  body.otoprep-app .otoprep-checkout__head-actions{
    align-items:stretch;
    flex-direction:column;
  }
}


/* 22.3.17: learner-safe flashcard answer points (tags/rubric/probes stay available to AI/admin but are hidden from the public card face). */







/* 23.0.0: make the app workspace switcher visible and compact on desktop and mobile. */
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell{
  grid-template-columns:minmax(0,1fr) auto !important;
  grid-template-areas:"primary surface" !important;
  overflow:visible !important;
}
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__primary{
  min-width:0 !important;
}
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__sub--surface{
  grid-area:surface !important;
  display:flex !important;
  justify-content:flex-end !important;
  align-items:center !important;
  position:relative !important;
  z-index:80 !important;
  min-width:0 !important;
  width:auto !important;
  margin:0 !important;
}
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceDetails{
  position:relative !important;
  display:inline-block !important;
  min-width:0 !important;
}
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummary{
  display:inline-flex !important;
  align-items:center !important;
  gap:8px !important;
  min-height:42px !important;
  max-width:min(320px,40vw) !important;
  padding:8px 13px !important;
  border:1px solid rgba(16,117,188,.18) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.9) !important;
  box-shadow:0 8px 18px rgba(13,41,66,.08) !important;
  color:var(--otoprep-ink,#13202a) !important;
  cursor:pointer !important;
  white-space:nowrap !important;
  overflow:hidden !important;
}
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummary::after{
  content:"⌄" !important;
  flex:0 0 auto !important;
  color:var(--otoprep-muted,#5b6873) !important;
  font-weight:900 !important;
  line-height:1 !important;
  transform:translateY(-1px) !important;
}
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummaryLabel{
  display:inline !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  color:var(--otoprep-muted,#5b6873) !important;
  font-size:12px !important;
  font-weight:750 !important;
}
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummaryValue{
  display:inline-flex !important;
  flex:0 0 auto !important;
  align-items:center !important;
  padding:3px 9px !important;
  border-radius:999px !important;
  background:rgba(16,117,188,.10) !important;
  color:var(--otoprep-blue,#1075bc) !important;
  font-size:13px !important;
  font-weight:900 !important;
}
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfacePanel{
  display:none !important;
  position:absolute !important;
  top:calc(100% + 10px) !important;
  right:0 !important;
  left:auto !important;
  width:min(94vw,380px) !important;
  min-width:min(94vw,320px) !important;
  padding:14px !important;
  border:1px solid rgba(16,117,188,.16) !important;
  border-radius:22px !important;
  background:rgba(255,255,255,.98) !important;
  box-shadow:0 22px 48px rgba(13,41,66,.18) !important;
  backdrop-filter:blur(14px) !important;
}
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceDetails[open] .otoprep-topbar__surfacePanel{
  display:block !important;
}
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfacePanel .otoprep-topbar__surface{
  display:grid !important;
  gap:10px !important;
  align-items:stretch !important;
}
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfacePanel .otoprep-topbar__surfaceLabel{
  display:block !important;
  color:var(--otoprep-muted,#5b6873) !important;
  font-size:12px !important;
  font-weight:900 !important;
  letter-spacing:.04em !important;
  text-transform:uppercase !important;
}
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfacePanel .otoprep-topbar__surfaceSeg{
  display:grid !important;
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:8px !important;
  width:100% !important;
  padding:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfacePanel .otoprep-seg__btn{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  min-height:44px !important;
  padding:9px 10px !important;
  border:1px solid rgba(16,117,188,.16) !important;
  border-radius:14px !important;
  background:rgba(246,251,255,.92) !important;
  font-weight:900 !important;
  text-align:center !important;
}
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfacePanel .otoprep-seg__btn.is-active{
  background:var(--otoprep-blue,#1075bc) !important;
  color:#fff !important;
  box-shadow:0 10px 22px rgba(16,117,188,.22) !important;
}
body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfacePanel .otoprep-topbar__surfaceHint{
  display:block !important;
  color:var(--otoprep-muted,#5b6873) !important;
  font-size:12px !important;
  line-height:1.4 !important;
}
@media (max-width:720px){
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell{
    grid-template-columns:minmax(0,1fr) auto !important;
  }
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummary{
    max-width:46vw !important;
    min-height:40px !important;
    padding:8px 11px !important;
  }
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummaryLabel{
    display:none !important;
  }
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfacePanel{
    right:0 !important;
    width:min(92vw,360px) !important;
    min-width:min(92vw,300px) !important;
  }
}
@media (max-width:430px){
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfaceSummaryValue{
    max-width:78px !important;
    overflow:hidden !important;
    text-overflow:ellipsis !important;
  }
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar__surfacePanel .otoprep-topbar__surfaceSeg{
    grid-template-columns:1fr !important;
  }
}

/* 23.0.26: compact five-workspace surface switcher */
body.otoprep-app .otoprep-topbar__surfaceSeg--five{
  grid-template-columns:repeat(5,minmax(0,1fr));
}
body.otoprep-app .otoprep-topbar__surfaceSeg--five .otoprep-seg__btn{
  min-width:0;
  text-align:center;
}
@media (max-width:782px){
  body.otoprep-app .otoprep-topbar__surfaceSeg--five{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* 23.0.26: keep the five-workspace selector styled like the earlier compact grid. */
@media (max-width: 980px){
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__surfacePanel .otoprep-topbar__surfaceSeg--five{
    display:grid !important;
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:8px !important;
    width:100% !important;
    min-width:0 !important;
    overflow:visible !important;
  }
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__surfacePanel .otoprep-topbar__surfaceSeg--five .otoprep-seg__btn{
    min-width:0 !important;
    width:100% !important;
    white-space:normal !important;
  }
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__surfacePanel .otoprep-topbar__surfaceSeg--five .otoprep-seg__btn:nth-child(5):last-child{
    grid-column:1 / -1 !important;
  }
}


/* 23.0.30: /app wrapper stability for Safari/iPad and wider desktop workspaces. */
html.otoprep-app-root,
html.otoprep-app-root body.otoprep-app{
  min-height:100%;
}
body.otoprep-app{
  --otoprep-visual-vh:100dvh;
  --otoprep-tabs-height:76px;
  --otoprep-topbar-height:0px;
  -webkit-text-size-adjust:100%;
}
body.otoprep-app .otoprep-main,
body.otoprep-app .otoprep-shell{
  min-width:0;
  box-sizing:border-box;
}
@supports (height: 100dvh){
  html.otoprep-app-root body.otoprep-app{
    min-height:100dvh;
  }
}
@media (min-width: 1024px){
  body.otoprep-app .otoprep-shell{
    max-width:1280px;
    padding-left:24px;
    padding-right:24px;
  }
  body.otoprep-app .otoprep-topbar__row--primary{
    gap:14px;
  }
  body.otoprep-app .otoprep-topbar__right{
    min-width:0;
  }
}

/* 23.0.31: desktop/laptop app rail, topbar status hydration, and Builder ergonomics. */
body.otoprep-app .otoprep-rail{
  display:none;
}
body.otoprep-app .otoprep-topbar-status-wrap[data-loading="1"] .otoprep-pill--status,
body.otoprep-app .otoprep-topbar-status-wrap[data-loaded="0"] .otoprep-pill--status{
  opacity:.76;
}
body.otoprep-app .otoprep-builder-shell__intro{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
}
body.otoprep-app .otoprep-builder-shell__intro h2{
  margin-bottom:4px;
}
body.otoprep-app .otoprep-builder-shell__summary{
  flex:0 0 auto;
  margin:4px 0 0;
  padding:8px 12px;
  border:1px solid rgba(16,117,188,.14);
  border-radius:999px;
  background:rgba(246,251,255,.92);
  white-space:nowrap;
}
body.otoprep-app .otoprep-builder-shell .otoprep-topichead{
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
}
body.otoprep-app .otoprep-topichead__search{
  flex:1 1 240px;
  min-width:220px;
}
body.otoprep-app .otoprep-topic-search{
  width:100%;
  min-height:40px;
  box-sizing:border-box;
  padding:9px 12px;
  border:1px solid rgba(31,42,55,.14);
  border-radius:12px;
  background:#fff;
  font:inherit;
}
body.otoprep-app .otoprep-topic-search:focus{
  outline:2px solid rgba(16,117,188,.22);
  outline-offset:2px;
  border-color:rgba(16,117,188,.38);
}
body.otoprep-app .otoprep-topic[hidden]{
  display:none !important;
}
body.otoprep-app .otoprep-builder-visible-count{
  display:inline;
}
@media (max-width: 720px){
  body.otoprep-app .otoprep-builder-shell__intro{
    display:block;
  }
  body.otoprep-app .otoprep-builder-shell__summary{
    display:inline-flex;
    flex-wrap:wrap;
    gap:4px;
    white-space:normal;
    border-radius:14px;
  }
  body.otoprep-app .otoprep-topichead__search{
    flex-basis:100%;
    min-width:0;
  }
  body.otoprep-app .otoprep-builder-visible-count{
    display:block;
    margin-top:3px;
  }
}
@media (min-width: 1024px){
  body.otoprep-app .otoprep-shell--with-rail{
    width:100%;
    max-width:none;
    min-height:var(--otoprep-visual-vh,100dvh);
    display:grid;
    grid-template-columns:236px minmax(0,1fr);
    gap:20px;
    align-items:start;
    padding:18px 24px 24px;
  }
  body.otoprep-app .otoprep-shell--with-rail .otoprep-rail{
    grid-column:1;
    grid-row:1 / span 6;
    position:sticky;
    top:18px;
    display:flex;
    flex-direction:column;
    min-height:calc(var(--otoprep-visual-vh,100dvh) - 36px);
    padding:16px;
    border:1px solid rgba(16,117,188,.14);
    border-radius:24px;
    background:rgba(255,255,255,.94);
    box-shadow:0 18px 45px rgba(31,42,55,.08);
    box-sizing:border-box;
  }
  body.otoprep-app .otoprep-shell--with-rail .otoprep-topbar,
  body.otoprep-app .otoprep-shell--with-rail .otoprep-app-update-notice,
  body.otoprep-app .otoprep-shell--with-rail .otoprep-main,
  body.otoprep-app .otoprep-shell--with-rail .otoprep-sticky-conversion{
    grid-column:2;
    min-width:0;
  }
  body.otoprep-app .otoprep-shell--with-rail .otoprep-tabs{
    display:none !important;
  }
  body.otoprep-app .otoprep-shell--with-rail .otoprep-topbar .otoprep-brand--home{
    display:none;
  }
  body.otoprep-app .otoprep-rail__brand{
    display:flex;
    align-items:center;
    gap:10px;
    min-height:46px;
    padding:6px 8px 14px;
    color:var(--otoprep-ink,#1f2a37);
    text-decoration:none;
    font-weight:900;
  }
  body.otoprep-app .otoprep-rail__logo{
    width:38px;
    height:38px;
    border-radius:14px;
    object-fit:cover;
    box-shadow:0 8px 22px rgba(16,117,188,.18);
  }
  body.otoprep-app .otoprep-rail__mark{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:38px;
    height:38px;
    border-radius:14px;
    background:var(--otoprep-blue,#1075bc);
    color:#fff;
    font-weight:900;
  }
  body.otoprep-app .otoprep-rail__name{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  body.otoprep-app .otoprep-rail__nav{
    display:flex;
    flex-direction:column;
    gap:6px;
    margin-top:8px;
  }
  body.otoprep-app .otoprep-rail__link{
    display:flex;
    align-items:center;
    gap:10px;
    min-height:44px;
    padding:10px 12px;
    border-radius:14px;
    color:var(--otoprep-ink,#1f2a37);
    text-decoration:none;
    font-weight:800;
  }
  body.otoprep-app .otoprep-rail__link:hover,
  body.otoprep-app .otoprep-rail__link:focus{
    background:rgba(16,117,188,.08);
    color:var(--otoprep-blue,#1075bc);
    outline:none;
  }
  body.otoprep-app .otoprep-rail__link.is-active{
    background:var(--otoprep-blue,#1075bc);
    color:#fff;
    box-shadow:0 10px 24px rgba(16,117,188,.22);
  }
  body.otoprep-app .otoprep-rail__icon{
    display:inline-flex;
    width:22px;
    min-width:22px;
    align-items:center;
    justify-content:center;
  }
  body.otoprep-app .otoprep-rail__icon svg{
    width:21px;
    height:21px;
    display:block;
  }
  body.otoprep-app .otoprep-rail__text{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
  body.otoprep-app .otoprep-builder-shell .otoprep-topiclist{
    grid-template-columns:repeat(3,minmax(0,1fr));
    max-height:min(62vh,720px);
    overflow:auto;
    padding-right:4px;
    scrollbar-gutter:stable;
  }
}

/* 23.0.32: Builder async topic hydration and offline runtime polish. */
body.otoprep-app .otoprep-builder-shell.is-loading .otoprep-topiclist{
  min-height:220px;
}
body.otoprep-app .otoprep-builder-topic-loading{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:10px;
  width:100%;
}
body.otoprep-app .otoprep-builder-topic-loading__text{
  grid-column:1/-1;
  color:var(--otoprep-muted,#6b7280);
  font-weight:800;
}
body.otoprep-app .otoprep-topic--skeleton{
  min-height:58px;
  pointer-events:none;
  overflow:hidden;
}
body.otoprep-app .otoprep-topic--skeleton .otoprep-topic__title,
body.otoprep-app .otoprep-topic--skeleton .otoprep-topic__meta{
  display:block;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(148,163,184,.18), rgba(148,163,184,.32), rgba(148,163,184,.18));
  background-size:220% 100%;
  animation:otoprep-builder-skeleton 1.15s ease-in-out infinite;
}
body.otoprep-app .otoprep-topic--skeleton .otoprep-topic__title{
  width:68%;
  height:13px;
}
body.otoprep-app .otoprep-topic--skeleton .otoprep-topic__meta{
  width:42px;
  height:12px;
}
body.otoprep-app .otoprep-builder-ajax-notice{
  grid-column:1/-1;
  margin:0;
}
body.otoprep-app .otoprep-builder-shell__fallback a{
  font-weight:900;
}
body.otoprep-app .otoprep-builder-shell.is-loaded .otoprep-builder-shell__fallback{
  display:none;
}
@keyframes otoprep-builder-skeleton{
  0%{ background-position:120% 0; }
  100%{ background-position:-120% 0; }
}
@media (min-width:1024px){
  body.otoprep-app .otoprep-builder-topic-loading{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media (prefers-reduced-motion:reduce){
  body.otoprep-app .otoprep-topic--skeleton .otoprep-topic__title,
  body.otoprep-app .otoprep-topic--skeleton .otoprep-topic__meta{
    animation:none;
  }
}


/* 23.0.33: make the existing app workspaces visible after the desktop shell refresh. */
body.otoprep-app .otoprep-workspace-strip{
  display:none;
}
body.otoprep-app .otoprep-rail__workspace{
  display:none;
}

@media (min-width: 1024px){
  body.otoprep-app .otoprep-shell--with-rail .otoprep-rail__workspace{
    display:block;
    margin-top:18px;
    padding-top:16px;
    border-top:1px solid rgba(16,117,188,.12);
  }
  body.otoprep-app .otoprep-rail__workspaceLabel{
    margin:0 8px 8px;
    color:var(--otoprep-muted,#5b6873);
    font-size:11px;
    font-weight:950;
    letter-spacing:.07em;
    text-transform:uppercase;
  }
  body.otoprep-app .otoprep-rail__workspaceLinks{
    display:grid;
    gap:6px;
  }
  body.otoprep-app .otoprep-rail__workspaceLink{
    display:flex;
    align-items:center;
    min-height:38px;
    padding:8px 10px;
    border:1px solid rgba(16,117,188,.12);
    border-radius:12px;
    background:rgba(246,251,255,.72);
    color:var(--otoprep-ink,#1f2a37);
    text-decoration:none;
    font-size:13px;
    font-weight:850;
  }
  body.otoprep-app .otoprep-rail__workspaceLink:hover,
  body.otoprep-app .otoprep-rail__workspaceLink:focus{
    background:rgba(16,117,188,.08);
    color:var(--otoprep-blue,#1075bc);
    outline:none;
  }
  body.otoprep-app .otoprep-rail__workspaceLink.is-active{
    border-color:rgba(16,117,188,.28);
    background:rgba(16,117,188,.12);
    color:var(--otoprep-blue,#1075bc);
    box-shadow:inset 3px 0 0 var(--otoprep-blue,#1075bc);
  }
  body.otoprep-app .otoprep-shell--with-rail .otoprep-workspace-strip{
    display:none !important;
  }
}

@media (min-width: 640px) and (max-width: 1023px){
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-workspace-strip{
    display:flex;
    align-items:center;
    gap:10px;
    width:auto;
    max-width:1280px;
    margin:0 auto 12px;
    padding:8px 10px;
    border:1px solid rgba(16,117,188,.13);
    border-radius:18px;
    background:rgba(255,255,255,.94);
    box-shadow:0 10px 28px rgba(31,42,55,.06);
    box-sizing:border-box;
  }
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-workspace-strip__label{
    flex:0 0 auto;
    color:var(--otoprep-muted,#5b6873);
    font-size:11px;
    font-weight:950;
    letter-spacing:.07em;
    text-transform:uppercase;
  }
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-workspace-strip__links{
    display:flex;
    align-items:center;
    gap:6px;
    min-width:0;
    overflow-x:auto;
    overflow-y:hidden;
    -webkit-overflow-scrolling:touch;
    scrollbar-width:none;
  }
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-workspace-strip__links::-webkit-scrollbar{
    display:none;
  }
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-workspace-strip__link{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:38px;
    padding:0 13px;
    border:1px solid rgba(16,117,188,.13);
    border-radius:999px;
    background:rgba(246,251,255,.92);
    color:var(--otoprep-ink,#1f2a37);
    text-decoration:none;
    font-size:13px;
    font-weight:900;
    white-space:nowrap;
  }
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-workspace-strip__link.is-active{
    border-color:rgba(16,117,188,.30);
    background:var(--otoprep-blue,#1075bc);
    color:#fff;
    box-shadow:0 8px 18px rgba(16,117,188,.18);
  }
  body.otoprep-app:not(.otoprep-view-voice):not(.otoprep-view-quiz) .otoprep-topbar--app-shell .otoprep-topbar__sub--surface{
    display:none !important;
  }
}

@media (max-width: 639px){
  body.otoprep-app .otoprep-workspace-strip{
    display:none !important;
  }
}

/* 23.0.33 follow-up: the desktop rail owns workspace navigation when visible. */
@media (min-width: 1024px){
  body.otoprep-app .otoprep-shell--with-rail .otoprep-topbar--app-shell .otoprep-topbar__sub--surface{
    display:none !important;
  }
  body.otoprep-app .otoprep-rail__wordmark{
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
  }
}

/* --------------------------------------------------------------------- */
/* 23.0.34: Option A visual polish for quiz, flashcards, and oral UI     */
/* --------------------------------------------------------------------- */
body.otoprep-app{
  --otoprep-learning-panel:#ffffff;
  --otoprep-learning-soft:#f6f9fd;
  --otoprep-learning-line:rgba(16,117,188,.13);
  --otoprep-learning-line-strong:rgba(16,117,188,.24);
  --otoprep-learning-shadow:0 18px 44px rgba(15,23,42,.10);
  --otoprep-learning-shadow-soft:0 10px 26px rgba(15,23,42,.07);
  --otoprep-learning-radius:28px;
  --otoprep-learning-radius-sm:18px;
}

/* Written quiz: keep native Quiz Maker mechanics, but present the active step
   as a cleaner, calmer card with stronger answer affordances. */
body.otoprep-app.otoprep-view-quiz .otoprep-shell{
  max-width:min(1120px, calc(100vw - 24px));
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-wrap{
  max-width:1060px;
  margin-inline:auto;
}

body.otoprep-app.otoprep-view-quiz .otoprep-card.otoprep-quiz-card,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-card.otoprep-quiz-card{
  position:relative;
  padding:24px !important;
  border-radius:var(--otoprep-learning-radius) !important;
  border:1px solid var(--otoprep-learning-line) !important;
  border-top:5px solid rgba(16,117,188,.78) !important;
  background:
    radial-gradient(circle at 0 0, rgba(16,117,188,.07), transparent 340px),
    linear-gradient(180deg, rgba(255,255,255,.99), rgba(248,251,255,.98)) !important;
  box-shadow:var(--otoprep-learning-shadow) !important;
  overflow:visible;
}

body.otoprep-app.otoprep-view-quiz .ays-quiz-container .step[data-question-id] > .ays-abs-fs,
body.otoprep-app.otoprep-view-quiz .ays-quiz-container .step.ays-scenario-step > .ays-abs-fs,
body.otoprep-app.otoprep-view-quiz .ays-quiz-container .step.ays-scenario-child-step > .ays-abs-fs,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .ays-quiz-container .step[data-question-id] > .ays-abs-fs{
  gap:20px !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-question-meta,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-question-meta{
  gap:9px !important;
  margin-bottom:0 !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-question-chip,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-question-chip{
  min-height:32px;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  border-color:rgba(16,117,188,.14);
  box-shadow:0 7px 16px rgba(15,23,42,.045);
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_quiz_question,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-quiz-card .ays_quiz_question{
  padding:22px 22px 20px !important;
  border:1px solid rgba(16,117,188,.12) !important;
  border-radius:24px !important;
  background:
    linear-gradient(180deg, rgba(247,251,255,.98), rgba(255,255,255,.98)),
    var(--otoprep-inline-wm-image, none) !important;
  background-repeat:no-repeat, repeat !important;
  background-size:auto, var(--otoprep-inline-wm-size, 240px 150px) !important;
  background-position:0 0, var(--otoprep-inline-wm-position, 0 0) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.82), 0 10px 26px rgba(16,117,188,.06) !important;
  color:#101828 !important;
  font-weight:720;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_quiz_question img,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-quiz-card .ays_quiz_question img{
  display:block;
  max-width:100%;
  height:auto;
  margin:14px auto 0;
  border-radius:18px;
  border:1px solid rgba(16,117,188,.12);
  background:#fff;
  box-shadow:0 10px 24px rgba(15,23,42,.07);
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-quiz-card .ays-quiz-answers{
  gap:13px !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > label.otoprep-answer__label,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-quiz-card .ays-quiz-answers .ays-field > label.otoprep-answer__label{
  min-height:62px;
  padding:16px 18px !important;
  border-color:rgba(15,32,42,.10) !important;
  border-radius:22px !important;
  background:rgba(255,255,255,.98) !important;
  box-shadow:0 9px 22px rgba(15,23,42,.055) !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field:hover > label.otoprep-answer__label,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-quiz-card .ays-quiz-answers .ays-field:hover > label.otoprep-answer__label{
  border-color:rgba(16,117,188,.28) !important;
  box-shadow:0 13px 28px rgba(16,117,188,.09) !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-answer__badge,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-answer__badge{
  width:34px;
  height:34px;
  flex-basis:34px;
  border-color:rgba(16,117,188,.18);
  background:linear-gradient(180deg, #f4fbff, #ffffff);
  color:var(--otoprep-blue,#1075bc);
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field.is-selected > label.otoprep-answer__label,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > input[type="radio"]:checked + label.otoprep-answer__label,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > input[type="checkbox"]:checked + label.otoprep-answer__label,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-quiz-card .ays-quiz-answers .ays-field.is-selected > label.otoprep-answer__label,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-quiz-card .ays-quiz-answers .ays-field > input[type="radio"]:checked + label.otoprep-answer__label,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-quiz-card .ays-quiz-answers .ays-field > input[type="checkbox"]:checked + label.otoprep-answer__label{
  border-color:rgba(22,160,133,.44) !important;
  background:linear-gradient(180deg, rgba(237,255,250,.98), rgba(255,255,255,.98)) !important;
  box-shadow:0 0 0 3px rgba(22,160,133,.12), 0 15px 30px rgba(22,160,133,.11) !important;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field.is-selected > label.otoprep-answer__label .otoprep-answer__badge,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > input[type="radio"]:checked + label.otoprep-answer__label .otoprep-answer__badge,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > input[type="checkbox"]:checked + label.otoprep-answer__label .otoprep-answer__badge,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-quiz-card .ays-quiz-answers .ays-field.is-selected > label.otoprep-answer__label .otoprep-answer__badge{
  border-color:rgba(22,160,133,.30);
  background:#fff;
  color:#08745f;
}

body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .right_answer_text,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .wrong_answer_text,
body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_questtion_explanation,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-quiz-card .right_answer_text,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-quiz-card .wrong_answer_text,
body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-quiz-card .ays_questtion_explanation{
  border-radius:22px !important;
  box-shadow:0 10px 24px rgba(15,23,42,.05) !important;
}

body.otoprep-app.otoprep-view-quiz [id^="ays-quiz-questions-nav-wrap-"]{
  padding:12px !important;
  border:1px solid rgba(16,117,188,.12) !important;
  border-radius:20px !important;
  background:rgba(255,255,255,.88) !important;
  box-shadow:0 10px 24px rgba(15,23,42,.045) !important;
}

body.otoprep-app.otoprep-view-quiz [id^="ays-quiz-questions-nav-wrap-"] a.ays_questions_nav_question{
  min-width:38px;
  min-height:38px;
  border-radius:13px !important;
}

/* Flashcards: restore a tactile card surface for standard card study while
   leaving sprint/debrief mechanics intact. */






































/* Oral simulations: keep the same session layout but make the scenario stage,
   transcript rail, and mobile control dock feel more like a dedicated simulator. */


















body.otoprep-app.otoprep-view-voice .otoprep-live-line{
  border:1px solid rgba(16,117,188,.10);
  box-shadow:0 7px 16px rgba(15,23,42,.04);
}

body.otoprep-app.otoprep-view-voice .otoprep-live-line--assistant,
body.otoprep-app.otoprep-view-voice .otoprep-live-line.is-assistant,
body.otoprep-app.otoprep-view-voice .otoprep-live-line[data-role="assistant"]{
  background:#fff;
}

body.otoprep-app.otoprep-view-voice .otoprep-live-line--user,
body.otoprep-app.otoprep-view-voice .otoprep-live-line.is-user,
body.otoprep-app.otoprep-view-voice .otoprep-live-line[data-role="user"]{
  margin-left:auto;
  border-color:rgba(22,160,133,.18);
  background:rgba(237,255,250,.96);
}





@media (min-width: 1024px){
  body.otoprep-app.otoprep-view-quiz .otoprep-topbar--quiz,
  body.otoprep-app.otoprep-view-voice .otoprep-topbar--voice{
    border-radius:24px !important;
  }

  body.otoprep-app.otoprep-view-quiz .ays-quiz-container .ays_buttons_div{
    bottom:18px;
  }
}

@media (max-width: 782px){
  body.otoprep-app.otoprep-view-quiz .otoprep-shell,
  body.otoprep-app.otoprep-view-voice .otoprep-shell{
    max-width:100%;
  }

  body.otoprep-app.otoprep-view-quiz .otoprep-card.otoprep-quiz-card,
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-card.otoprep-quiz-card,
  body.otoprep-app .otoprep-fc-player:not(.otoprep-fc-player--sprint),
  body.otoprep-app.otoprep-view-voice .otoprep-voice__stimulus,
  body.otoprep-app.otoprep-view-voice .otoprep-voice__panel{
    padding:16px !important;
    border-radius:22px !important;
  }

  body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays_quiz_question,
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-quiz-card .ays_quiz_question{
    padding:17px 16px !important;
    border-radius:20px !important;
  }

  body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > label.otoprep-answer__label,
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-quiz-card .ays-quiz-answers .ays-field > label.otoprep-answer__label{
    min-height:56px;
    padding:14px 13px !important;
    gap:11px;
    border-radius:18px !important;
  }

  body.otoprep-app.otoprep-view-quiz .otoprep-answer__badge,
  body.otoprep-app.otoprep-offline-practice-playing .otoprep-offline-player .otoprep-answer__badge{
    width:30px;
    height:30px;
    flex-basis:30px;
  }

  body.otoprep-app.otoprep-view-quiz .ays-quiz-container .ays_buttons_div{
    bottom:calc(8px + env(safe-area-inset-bottom));
    display:grid !important;
    grid-template-columns:1fr 1fr;
  }

  body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_next:not(.ays_finish),
  body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_next:not(.ays_finish),
  body.otoprep-app.otoprep-view-quiz .ays_buttons_div input.ays_finish,
  body.otoprep-app.otoprep-view-quiz .ays_buttons_div button.ays_finish{
    grid-column:1 / -1;
    min-width:0;
  }

  

  

  

  

  

  
}

@media (max-width: 520px){
  body.otoprep-app.otoprep-view-quiz .ays-quiz-container .ays_buttons_div{
    grid-template-columns:1fr;
  }

  

  

  

  
}

@media (prefers-reduced-motion: reduce){
  body.otoprep-app.otoprep-view-quiz .otoprep-quiz-card .ays-quiz-answers .ays-field > label.otoprep-answer__label,
  body.otoprep-app .otoprep-fc-player:not(.otoprep-fc-player--sprint) .otoprep-fc-card{
    transition:none !important;
  }
}


/* 23.0.35: Option C immersive focus polish for active learning surfaces.
   Visual-only layer: no scoring, routing, payment, access, quiz submission, flashcard scheduling, or oral runtime changes. */
body.otoprep-app{
  --otoprep-focus-bg:#f4f8fc;
  --otoprep-focus-glass:rgba(255,255,255,.88);
  --otoprep-focus-card:rgba(255,255,255,.985);
  --otoprep-focus-line:rgba(16,117,188,.16);
  --otoprep-focus-line-strong:rgba(16,117,188,.28);
  --otoprep-focus-shadow:0 32px 86px rgba(15,23,42,.15);
  --otoprep-focus-shadow-soft:0 18px 52px rgba(15,23,42,.10);
  --otoprep-focus-radius:36px;
  --otoprep-focus-radius-sm:24px;
}

/* Written quiz: Option C is scoped to timed/exam/timer sessions so Tutor explanations stay familiar. */
body.otoprep-app.otoprep-view-quiz.otoprep-mode-exam,
body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed,
body.otoprep-app.otoprep-view-quiz.otoprep-has-timer{
  background:
    radial-gradient(circle at 50% -10%, rgba(16,117,188,.15), transparent 440px),
    radial-gradient(circle at 96% 8%, rgba(231,105,75,.09), transparent 360px),
    linear-gradient(180deg, #f7fbff 0%, #f3f7fb 56%, #eef4f8 100%);
  overflow-x:hidden;
}

body.otoprep-app.otoprep-view-quiz.otoprep-mode-exam .otoprep-shell,
body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed .otoprep-shell,
body.otoprep-app.otoprep-view-quiz.otoprep-has-timer .otoprep-shell{
  max-width:100%;
  padding-inline:clamp(10px, 2.4vw, 30px);
  padding-bottom:calc(18px + env(safe-area-inset-bottom));
}

body.otoprep-app.otoprep-view-quiz.otoprep-mode-exam .otoprep-topbar--quiz,
body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed .otoprep-topbar--quiz,
body.otoprep-app.otoprep-view-quiz.otoprep-has-timer .otoprep-topbar--quiz{
  position:sticky;
  top:calc(8px + env(safe-area-inset-top));
  z-index:120;
  width:min(1120px, calc(100vw - 24px));
  margin:8px auto clamp(10px, 1.8vw, 18px);
  padding:10px 12px;
  border:1px solid rgba(16,117,188,.12);
  border-radius:24px !important;
  background:var(--otoprep-focus-glass) !important;
  box-shadow:0 12px 34px rgba(15,23,42,.075) !important;
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}

body.otoprep-app.otoprep-view-quiz.otoprep-mode-exam .otoprep-quiz-wrap,
body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed .otoprep-quiz-wrap,
body.otoprep-app.otoprep-view-quiz.otoprep-has-timer .otoprep-quiz-wrap{
  width:min(1040px, 100%);
  margin-inline:auto;
  padding:0 0 24px !important;
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}

body.otoprep-app.otoprep-view-quiz.otoprep-mode-exam .otoprep-card.otoprep-quiz-card,
body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed .otoprep-card.otoprep-quiz-card,
body.otoprep-app.otoprep-view-quiz.otoprep-has-timer .otoprep-card.otoprep-quiz-card{
  width:100%;
  min-height:min(760px, calc(var(--otoprep-visual-vh, 100vh) - var(--otoprep-topbar-height, 74px) - 34px));
  padding:clamp(18px, 3.2vw, 42px) !important;
  border:1px solid rgba(255,255,255,.74) !important;
  border-top:0 !important;
  border-radius:var(--otoprep-focus-radius) !important;
  background:
    radial-gradient(circle at 50% 0, rgba(255,255,255,.96), transparent 300px),
    linear-gradient(180deg, rgba(255,255,255,.98), rgba(248,251,255,.94)) !important;
  box-shadow:var(--otoprep-focus-shadow) !important;
}

body.otoprep-app.otoprep-view-quiz.otoprep-mode-exam .otoprep-card.otoprep-quiz-card:before,
body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed .otoprep-card.otoprep-quiz-card:before,
body.otoprep-app.otoprep-view-quiz.otoprep-has-timer .otoprep-card.otoprep-quiz-card:before{
  left:50%;
  right:auto;
  top:14px;
  width:min(180px, 42%);
  height:5px;
  transform:translateX(-50%);
  border-radius:999px;
}

body.otoprep-app.otoprep-view-quiz.otoprep-mode-exam .otoprep-quiz-card .ays_quiz_question,
body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed .otoprep-quiz-card .ays_quiz_question,
body.otoprep-app.otoprep-view-quiz.otoprep-has-timer .otoprep-quiz-card .ays_quiz_question{
  max-width:860px;
  margin:0 auto 18px !important;
  padding:clamp(18px, 2.4vw, 30px) !important;
  border-radius:28px !important;
  background:linear-gradient(180deg, rgba(255,255,255,.98), rgba(247,251,255,.96)) !important;
  box-shadow:0 18px 42px rgba(15,23,42,.075) !important;
  font-size:clamp(17px, 1.8vw, 23px) !important;
  line-height:1.55 !important;
}

body.otoprep-app.otoprep-view-quiz.otoprep-mode-exam .otoprep-quiz-card .ays-quiz-answers,
body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed .otoprep-quiz-card .ays-quiz-answers,
body.otoprep-app.otoprep-view-quiz.otoprep-has-timer .otoprep-quiz-card .ays-quiz-answers{
  width:min(820px, 100%);
  margin-inline:auto;
}

body.otoprep-app.otoprep-view-quiz.otoprep-mode-exam .otoprep-quiz-card .ays-quiz-answers .ays-field > label.otoprep-answer__label,
body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed .otoprep-quiz-card .ays-quiz-answers .ays-field > label.otoprep-answer__label,
body.otoprep-app.otoprep-view-quiz.otoprep-has-timer .otoprep-quiz-card .ays-quiz-answers .ays-field > label.otoprep-answer__label{
  min-height:62px;
  border-radius:22px !important;
  background:rgba(255,255,255,.90) !important;
  box-shadow:0 14px 34px rgba(15,23,42,.075) !important;
}

body.otoprep-app.otoprep-view-quiz.otoprep-mode-exam .ays-quiz-container .ays_buttons_div,
body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed .ays-quiz-container .ays_buttons_div,
body.otoprep-app.otoprep-view-quiz.otoprep-has-timer .ays-quiz-container .ays_buttons_div{
  width:min(820px, 100%);
  margin:18px auto 0 !important;
  border-color:rgba(16,117,188,.13) !important;
  border-radius:999px !important;
  background:rgba(255,255,255,.86) !important;
  box-shadow:0 20px 54px rgba(15,23,42,.13) !important;
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}

/* Flashcards: large single-card focus with the existing reveal, typed answer, and confidence controls. */
















/* Oral simulations: larger focused stage with existing transcript, sheets, and controls preserved. */
body.otoprep-app.otoprep-view-voice{
  background:
    radial-gradient(circle at 50% -8%, rgba(16,117,188,.16), transparent 460px),
    radial-gradient(circle at 95% 8%, rgba(22,160,133,.10), transparent 360px),
    linear-gradient(180deg, #f7fbff 0%, #f3f8fb 55%, #eef5f8 100%);
}

body.otoprep-app.otoprep-view-voice .otoprep-shell{
  max-width:1520px;
  padding-inline:clamp(10px, 2.2vw, 30px);
}

body.otoprep-app.otoprep-view-voice .otoprep-topbar--voice{
  width:min(1320px, calc(100vw - 24px));
  margin-inline:auto;
  border:1px solid rgba(16,117,188,.12);
  background:var(--otoprep-focus-glass);
  box-shadow:0 12px 34px rgba(15,23,42,.07);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}



















@media (max-width:782px){
  body.otoprep-app.otoprep-view-quiz.otoprep-mode-exam .otoprep-topbar--quiz,
  body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed .otoprep-topbar--quiz,
  body.otoprep-app.otoprep-view-quiz.otoprep-has-timer .otoprep-topbar--quiz,
  body.otoprep-app.otoprep-view-voice .otoprep-topbar--voice{
    top:calc(4px + env(safe-area-inset-top));
    width:calc(100vw - 16px);
    border-radius:20px !important;
  }
  body.otoprep-app.otoprep-view-quiz.otoprep-mode-exam .otoprep-card.otoprep-quiz-card,
  body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed .otoprep-card.otoprep-quiz-card,
  body.otoprep-app.otoprep-view-quiz.otoprep-has-timer .otoprep-card.otoprep-quiz-card,
  body.otoprep-app .otoprep-fc-player,
  body.otoprep-app .otoprep-fc-card,
  body.otoprep-app.otoprep-view-voice .otoprep-voice__stimulus,
  body.otoprep-app.otoprep-view-voice .otoprep-voice__panel{
    border-radius:var(--otoprep-focus-radius-sm) !important;
  }
  
  body.otoprep-app .otoprep-fc-front-actions,
  body.otoprep-app .otoprep-fc-controls,
  body.otoprep-app .otoprep-fc-rating,
  body.otoprep-app.otoprep-view-quiz.otoprep-mode-exam .ays-quiz-container .ays_buttons_div,
  body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed .ays-quiz-container .ays_buttons_div,
  body.otoprep-app.otoprep-view-quiz.otoprep-has-timer .ays-quiz-container .ays_buttons_div{
    border-radius:22px !important;
  }
}

@media (max-width:520px){
  body.otoprep-app.otoprep-view-quiz.otoprep-mode-exam .otoprep-shell,
  body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed .otoprep-shell,
  body.otoprep-app.otoprep-view-quiz.otoprep-has-timer .otoprep-shell,
  body.otoprep-app.otoprep-view-voice .otoprep-shell{
    padding-inline:8px;
  }
  body.otoprep-app.otoprep-view-quiz.otoprep-mode-exam .otoprep-card.otoprep-quiz-card,
  body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed .otoprep-card.otoprep-quiz-card,
  body.otoprep-app.otoprep-view-quiz.otoprep-has-timer .otoprep-card.otoprep-quiz-card,
  body.otoprep-app .otoprep-fc-player,
  body.otoprep-app.otoprep-view-voice .otoprep-voice__stimulus,
  body.otoprep-app.otoprep-view-voice .otoprep-voice__panel{
    padding:14px !important;
  }
  
  
}

@media (prefers-reduced-motion:reduce){
  body.otoprep-app.otoprep-view-quiz.otoprep-mode-exam .otoprep-card.otoprep-quiz-card,
  body.otoprep-app.otoprep-view-quiz.otoprep-mode-timed .otoprep-card.otoprep-quiz-card,
  body.otoprep-app.otoprep-view-quiz.otoprep-has-timer .otoprep-card.otoprep-quiz-card,
  body.otoprep-app .otoprep-fc-card,
  body.otoprep-app.otoprep-view-voice .otoprep-voice__stageFrame{
    transition:none !important;
  }
}

/* 23.0.36: Flashcard mobile cleanup.
   Keep flashcard controls in the page flow and remove the mobile/tablet app footer during active card study so controls never float over cards. */






/* Pass 2: explicit workspace availability states. These labels distinguish
 * owned content, browse-to-buy surfaces and minute-metered Oral practice
 * without hiding discovery routes from signed-in learners. */
body.otoprep-app .otoprep-workspace-strip__link,
body.otoprep-app .otoprep-rail__workspaceLink{
  gap:7px;
}
body.otoprep-app .otoprep-workspace-link__label{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.otoprep-app .otoprep-workspace-link__state{
  flex:0 0 auto;
  margin-left:auto;
  padding:2px 6px;
  border:1px solid rgba(16,117,188,.16);
  border-radius:999px;
  background:rgba(255,255,255,.72);
  color:var(--otoprep-muted,#5b6873);
  font-size:9px;
  font-weight:900;
  line-height:1.2;
  letter-spacing:.02em;
  white-space:nowrap;
}
body.otoprep-app .otoprep-workspace-strip__link.state-browseable,
body.otoprep-app .otoprep-rail__workspaceLink.state-browseable{
  border-style:dashed;
}
body.otoprep-app .otoprep-workspace-strip__link.state-metered .otoprep-workspace-link__state,
body.otoprep-app .otoprep-rail__workspaceLink.state-metered .otoprep-workspace-link__state{
  border-color:rgba(231,105,75,.24);
  background:rgba(231,105,75,.08);
  color:var(--otoprep-ink,#1f2a37);
}
body.otoprep-app .otoprep-workspace-strip__link.state-locked,
body.otoprep-app .otoprep-rail__workspaceLink.state-locked{
  opacity:.82;
}
body.otoprep-app .otoprep-workspace-strip__link.is-active .otoprep-workspace-link__state,
body.otoprep-app .otoprep-rail__workspaceLink.is-active .otoprep-workspace-link__state{
  border-color:rgba(255,255,255,.38);
  background:rgba(255,255,255,.18);
  color:inherit;
}
@media (min-width:640px) and (max-width:1023px){
  body.otoprep-app .otoprep-workspace-strip__link{
    justify-content:space-between !important;
    padding-left:10px !important;
    padding-right:8px !important;
  }
}

/* Pass 3: canonical learning identity with commercial access kept secondary. */
body.otoprep-app .otoprep-exam-menu__identity{
  display:flex;
  min-width:0;
  flex:1 1 auto;
  flex-direction:column;
  align-items:flex-start;
  gap:2px;
  overflow:hidden;
}
body.otoprep-app .otoprep-exam-menu__identity .otoprep-exam-menu__value{
  display:block;
  width:100%;
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.otoprep-app .otoprep-exam-menu__access{
  display:block;
  max-width:100%;
  overflow:hidden;
  color:var(--otoprep-muted,#5b6873);
  font-size:11px;
  font-weight:700;
  line-height:1.25;
  text-overflow:ellipsis;
  white-space:nowrap;
}
body.otoprep-app .otoprep-exam-menu__summary .otoprep-exam-menu__identity,
body.otoprep-app .otoprep-exam-current--single .otoprep-exam-menu__identity{
  padding-right:4px;
}
body.otoprep-app .otoprep-exam-menu__summary[aria-expanded="true"] .otoprep-exam-menu__access{
  color:inherit;
  opacity:.78;
}
@media (max-width:430px){
  body.otoprep-app .otoprep-exam-menu__identity .otoprep-exam-menu__value{
    font-size:14px;
  }
  body.otoprep-app .otoprep-exam-menu__access{
    font-size:11px;
  }
}


/* 23.6.57: isolate Back contrast from theme link/button interaction rules. */
body .otoprep-quizbar a.otoprep-quizbar__back,
body .otoprep-quizbar a.otoprep-quizbar__back:link,
body .otoprep-quizbar a.otoprep-quizbar__back:visited,
body .otoprep-quizbar a.otoprep-quizbar__back:hover,
body .otoprep-quizbar a.otoprep-quizbar__back:focus,
body .otoprep-quizbar a.otoprep-quizbar__back:active,
body .otoprep-quizbar a.otoprep-quizbar__back span {
 color: #13202a !important; -webkit-text-fill-color: #13202a !important;
 text-shadow: none !important; opacity: 1 !important;
}
body .otoprep-quizbar a.otoprep-quizbar__back { background: #fff !important; }
body .otoprep-quizbar a.otoprep-quizbar__back:focus-visible { outline: 3px solid #1765a0 !important; outline-offset: 3px; }
