.cvme-cna-wrap,.cvme-cna-player{font-family:Arial,Helvetica,sans-serif;max-width:1180px;margin:28px auto;padding:0 18px;color:#072b4f}.cvme-cna-wrap{background:var(--cvme-bg,#f5f9ff);padding:26px;border-radius:24px}.cvme-cna-hero{background:linear-gradient(135deg,var(--cvme-primary,#073a6a),#0f6aa8);color:#fff;border-radius:30px;padding:38px;box-shadow:0 20px 50px rgba(7,43,79,.20);margin-bottom:26px}.cvme-cna-kicker{text-transform:uppercase;letter-spacing:.08em;font-size:12px;font-weight:900;color:var(--cvme-accent,#ffd04a)}.cvme-cna-hero h1{font-size:48px;line-height:1.05;margin:10px 0 12px;color:#fff}.cvme-cna-hero p{font-size:18px;max-width:820px;margin:0}.cvme-cna-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.cvme-cna-card{background:#fff;border:1px solid #c9dff2;border-radius:22px;padding:22px;box-shadow:var(--cvme-card-shadow,0 18px 40px rgba(7,43,79,.10));min-height:280px;display:flex;flex-direction:column;gap:12px}.cvme-cna-card-top{text-transform:uppercase;font-size:12px;letter-spacing:.05em;font-weight:900;color:#0f5f9f}.cvme-cna-card h2{font-size:22px;line-height:1.05;margin:0;color:var(--cvme-primary,#073a6a)}.cvme-cna-card p{font-size:15px;line-height:1.45;color:#3b4c63;flex:1}.cvme-cna-status{display:inline-block;background:#e8f3ff;color:#074a83;border-radius:999px;padding:7px 12px;font-size:12px;font-weight:900;width:max-content}.cvme-cna-card.is-disabled{opacity:.72}.cvme-cna-btn{display:inline-flex;align-items:center;justify-content:center;border-radius:15px;padding:13px 18px;font-weight:900;text-decoration:none;border:0;cursor:pointer;font-size:15px;line-height:1.1}.cvme-cna-btn-primary{background:var(--cvme-accent,#ffd04a);color:#101820;border:2px solid #0067d4}.cvme-cna-btn-primary:hover{filter:brightness(.96);color:#101820}.cvme-cna-btn-secondary{background:#fff;color:var(--cvme-primary,#073a6a);border:2px solid #b9d4ef}.cvme-cna-btn-soft{background:#eef4fb;color:#34465c}.cvme-cna-btn-disabled{background:#dfe5ec;color:#677386;cursor:not-allowed}.cvme-cna-btn-finish{background:#1f8a4c;color:#fff;border:2px solid #146836}.cvme-cna-empty{background:#fff;border-radius:22px;padding:34px;border:1px solid #c9dff2}.cvme-cna-player{max-width:1160px;background:linear-gradient(180deg,#f7fbff,#fff);border-radius:26px;padding:26px;box-shadow:0 18px 45px rgba(7,43,79,.12)}.cvme-cna-player-topbar{display:grid;grid-template-columns:190px 1fr 130px;align-items:center;gap:12px;margin-bottom:14px}.cvme-cna-back{font-weight:900;color:var(--cvme-primary,#073a6a);text-decoration:none;background:#eef4fb;border-radius:14px;padding:12px 14px;text-align:center}.cvme-cna-player-title{text-align:center;font-weight:900;font-size:18px}.cvme-cna-progress-text{text-align:right;font-weight:900;color:#41536a}.cvme-cna-progress{height:12px;background:#dfeaf5;border-radius:999px;overflow:hidden;margin-bottom:18px}.cvme-cna-progress-bar{height:100%;width:0;background:var(--cvme-primary,#0f6aa8);border-radius:999px;transition:width .25s ease}.cvme-cna-slides{position:relative}.cvme-cna-slide{display:none}.cvme-cna-slide.active{display:block}.cvme-cna-slide-inner{min-height:590px;background:#fff;border:1px solid #c8dff4;border-radius:30px;padding:46px;box-shadow:var(--cvme-card-shadow,0 18px 40px rgba(7,43,79,.10))}.cvme-cna-slide-label{text-transform:uppercase;letter-spacing:.08em;font-size:13px;font-weight:900;color:#0f6aa8;margin-bottom:10px}.cvme-cna-slide h2{font-size:44px;line-height:1.05;margin:0 0 18px;color:var(--cvme-primary,#062f58)}.cvme-cna-body{font-size:var(--cvme-body-size,20px);line-height:1.58;color:#1d2a3a}.cvme-cna-bullets{font-size:var(--cvme-body-size,20px);line-height:1.45;display:grid;gap:10px;margin:18px 0 0;padding-left:26px}.cvme-cna-callout{background:#eaf6ff;border-left:7px solid #0f6aa8;border-radius:14px;padding:18px 20px;font-size:19px;font-weight:800;margin-top:20px;color:#06345d}.cvme-cna-safety{background:#fff0f0;border-left:7px solid #c81e1e;border-radius:14px;padding:18px 20px;font-size:19px;margin-top:20px;color:#591313}.cvme-cna-media-zone{background:#f8fbff;border:1px dashed #9fc4e8;border-radius:18px;margin-top:22px;padding:18px;display:grid;gap:14px}.cvme-cna-media-note{font-weight:900;color:#46627c}.cvme-cna-image{margin:0;background:#fff;border-radius:16px;padding:12px;border:1px solid #dbe8f5}.cvme-cna-image img{display:block;width:100%;max-height:380px;object-fit:contain;border-radius:12px;background:#f4f7fb}.cvme-cna-image figcaption{font-size:13px;color:#53657a;margin-top:8px;font-weight:700}.cvme-cna-video{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fff;border:1px solid #dbe8f5;border-radius:16px;padding:14px}.cvme-cna-video-title{font-weight:900}.cvme-cna-resources{background:#fff9e8;border:1px solid #f0d27a;border-radius:18px;margin-top:22px;padding:18px}.cvme-cna-resources h3{margin:0 0 10px;color:#573d00}.cvme-cna-resource-link{display:block;background:#fff;border-radius:12px;padding:12px 14px;margin-top:8px;text-decoration:none;font-weight:900;color:#074a83}.cvme-cna-activity{background:#f4fff7;border:1px solid #9cd4ac;border-radius:18px;margin-top:22px;padding:20px}.cvme-cna-activity h3{font-size:24px;margin:0 0 8px;color:#146836}.cvme-cna-activity p{font-size:18px;font-weight:800}.cvme-cna-choice-list{display:grid;gap:10px;margin-top:12px}.cvme-cna-choice{background:#fff;border:2px solid #cfe3d3;border-radius:14px;padding:14px 16px;font-size:17px;font-weight:800;text-align:left;cursor:pointer}.cvme-cna-choice.correct{border-color:#198754;background:#e9f9ef}.cvme-cna-choice.wrong{border-color:#c81e1e;background:#fff0f0}.cvme-cna-feedback{font-weight:900;margin-top:10px}.cvme-cna-reflection{width:100%;min-height:120px;border-radius:14px;border:1px solid #aac5df;padding:14px;font-size:16px}.cvme-cna-sample-answer{background:#fff;border-radius:14px;padding:14px;margin-top:10px}.cvme-cna-controls{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:18px}.cvme-cna-completion-panel{background:#fff;border:2px solid #1f8a4c;border-radius:20px;padding:24px;margin-top:18px;box-shadow:0 10px 25px rgba(7,43,79,.08)}.cvme-cna-completion-panel label{display:block;font-weight:900;margin-top:12px}.cvme-cna-completion-panel input{width:100%;max-width:520px;border:1px solid #aac5df;border-radius:12px;padding:12px;margin-top:6px}.cvme-cna-save-message{font-weight:900;margin-top:12px}@media(max-width:1000px){.cvme-cna-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.cvme-cna-slide h2{font-size:34px}.cvme-cna-slide-inner{padding:28px}}@media(max-width:640px){.cvme-cna-grid{grid-template-columns:1fr}.cvme-cna-player-topbar{grid-template-columns:1fr}.cvme-cna-progress-text{text-align:left}.cvme-cna-slide-inner{min-height:auto;padding:22px}.cvme-cna-slide h2{font-size:28px}.cvme-cna-body,.cvme-cna-bullets{font-size:17px}.cvme-cna-controls{flex-direction:column}.cvme-cna-btn{width:100%}}

/* v1.4.9 admin preview banner */
.cvme-cna-preview-banner {
    display: flex;
    flex-wrap: wrap;
    gap: 10px 14px;
    align-items: center;
    justify-content: center;
    margin: 0 0 16px 0;
    padding: 14px 18px;
    border: 2px solid #b45309;
    border-radius: 14px;
    background: #fff7ed;
    color: #7c2d12;
    text-align: center;
    box-shadow: 0 8px 24px rgba(0,0,0,.08);
}
.cvme-cna-preview-banner strong {
    font-size: 16px;
    letter-spacing: .02em;
}
.cvme-cna-preview-banner span {
    font-size: 14px;
}
.cvme-cna-preview-banner a {
    display: inline-block;
    padding: 8px 12px;
    border-radius: 999px;
    background: #7c2d12;
    color: #fff !important;
    text-decoration: none;
    font-weight: 700;
}

/* v1.4.15.20 no-scroll lesson card navigation */
.cvme-cna-player,
.cvme-cna-slides,
.cvme-cna-slide,
.cvme-cna-slide-inner {
    overflow-anchor: none;
}

/* v1.4.14 interactive workbook activity engine */
.cvme-cna-activity {
    background: #fff;
    border: 1px solid #b9d8f2;
    border-radius: 22px;
    margin-top: 24px;
    padding: 24px;
    box-shadow: 0 12px 26px rgba(7,43,79,.08);
}
.cvme-cna-activity-kicker {
    color: #0f6aa8;
    font-size: 12px;
    font-weight: 900;
    letter-spacing: .08em;
    margin-bottom: 8px;
    text-transform: uppercase;
}
.cvme-cna-activity h3 {
    color: #062f58;
    font-size: 26px;
    line-height: 1.15;
    margin: 0 0 10px;
}
.cvme-cna-activity p,
.cvme-cna-activity-directions,
.cvme-cna-activity-prompt {
    color: #213347;
    font-size: 18px;
    font-weight: 700;
    line-height: 1.45;
    margin: 8px 0 14px;
}
.cvme-cna-definition-bank {
    background: #f4f9ff;
    border: 1px solid #d5e8f8;
    border-radius: 16px;
    display: grid;
    gap: 8px;
    margin: 14px 0 18px;
    padding: 14px;
}
.cvme-cna-definition-choice {
    background: #fff;
    border: 1px solid #e0edf8;
    border-radius: 12px;
    color: #25384c;
    font-size: 15px;
    line-height: 1.35;
    padding: 10px 12px;
}
.cvme-cna-matching-table {
    border: 1px solid #d7e7f5;
    border-radius: 16px;
    overflow: hidden;
}
.cvme-cna-matching-row {
    align-items: center;
    background: #fff;
    display: grid;
    gap: 14px;
    grid-template-columns: minmax(180px, 1fr) minmax(240px, 1.4fr);
    padding: 13px 14px;
}
.cvme-cna-matching-row + .cvme-cna-matching-row {
    border-top: 1px solid #e3eff8;
}
.cvme-cna-matching-head {
    background: #eaf6ff;
    color: #06345d;
    font-size: 13px;
    font-weight: 900;
    letter-spacing: .04em;
    text-transform: uppercase;
}
.cvme-cna-term {
    color: #0b2f54;
    font-size: 17px;
    font-weight: 900;
}
.cvme-cna-match-select,
.cvme-cna-match-input,
.cvme-cna-fill-input {
    background: #fff;
    border: 2px solid #bfd8ee;
    border-radius: 12px;
    color: #1e3248;
    font-size: 16px;
    min-height: 44px;
    padding: 9px 12px;
    width: 100%;
}
.cvme-cna-match-select.is-correct,
.cvme-cna-fill-input.is-correct {
    border-color: #198754;
    background: #effaf3;
}
.cvme-cna-match-select.is-wrong,
.cvme-cna-fill-input.is-wrong {
    border-color: #c81e1e;
    background: #fff4f4;
}
.cvme-cna-word-bank {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin: 12px 0 18px;
}
.cvme-cna-word-bank span {
    background: #eaf6ff;
    border: 1px solid #b8d7f0;
    border-radius: 999px;
    color: #06345d;
    font-size: 14px;
    font-weight: 900;
    padding: 8px 12px;
}
.cvme-cna-fill-list {
    display: grid;
    gap: 12px;
}
.cvme-cna-fill-item {
    align-items: start;
    background: #f8fbff;
    border: 1px solid #d7e7f5;
    border-radius: 14px;
    display: grid;
    gap: 12px;
    grid-template-columns: 36px 1fr;
    padding: 14px;
}
.cvme-cna-fill-number {
    align-items: center;
    background: #0f6aa8;
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: 14px;
    font-weight: 900;
    height: 30px;
    justify-content: center;
    width: 30px;
}
.cvme-cna-fill-text {
    color: #213347;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.7;
}
.cvme-cna-fill-text .cvme-cna-fill-input {
    display: inline-block;
    margin: 0 6px;
    max-width: 220px;
    vertical-align: middle;
}
.cvme-cna-scenario-box {
    background: #eaf6ff;
    border-left: 7px solid #0f6aa8;
    border-radius: 14px;
    color: #06345d;
    font-size: 18px;
    font-weight: 800;
    line-height: 1.5;
    margin: 12px 0 16px;
    padding: 16px 18px;
}
.cvme-cna-choice-list {
    display: grid;
    gap: 10px;
    margin-top: 14px;
}
.cvme-cna-choice {
    align-items: center;
    background: #fff;
    border: 2px solid #c7dff3;
    border-radius: 14px;
    color: #102b46;
    display: grid;
    font-size: 16px;
    font-weight: 900;
    gap: 12px;
    grid-template-columns: 34px 1fr;
    line-height: 1.35;
    padding: 13px 15px;
    text-align: left;
}
.cvme-cna-choice span {
    align-items: center;
    background: #eaf6ff;
    border-radius: 999px;
    color: #06345d;
    display: inline-flex;
    height: 30px;
    justify-content: center;
    width: 30px;
}
.cvme-cna-choice.selected {
    border-color: #0f6aa8;
    background: #f4f9ff;
}
.cvme-cna-choice.correct {
    border-color: #198754;
    background: #e9f9ef;
}
.cvme-cna-choice.wrong {
    border-color: #c81e1e;
    background: #fff0f0;
}
.cvme-cna-reflection {
    background: #fff;
    border: 2px solid #bfd8ee;
    border-radius: 14px;
    min-height: 130px;
    padding: 14px;
}
.cvme-cna-sample-answer,
.cvme-cna-import-preview {
    background: #f8fbff;
    border: 1px solid #d7e7f5;
    border-radius: 14px;
    color: #26394f;
    font-size: 15px;
    line-height: 1.45;
    margin-top: 12px;
    padding: 14px;
}
.cvme-cna-check-matching,
.cvme-cna-show-sample {
    margin-top: 14px;
}
@media(max-width:640px){
    .cvme-cna-activity{padding:18px}
    .cvme-cna-matching-row{grid-template-columns:1fr;gap:8px}
    .cvme-cna-matching-head{display:none}
    .cvme-cna-fill-item{grid-template-columns:1fr}
    .cvme-cna-fill-text .cvme-cna-fill-input{display:block;margin:8px 0 0;max-width:none}
    .cvme-cna-choice{grid-template-columns:30px 1fr}
}

.cvme-cna-answer-review{background:#fff;border:1px solid #cfe1f2;border-radius:14px;padding:12px 14px;margin-top:12px;color:#072b4f;font-size:15px;line-height:1.45}.cvme-cna-answer-review ul{margin:8px 0 0;padding-left:20px;display:grid;gap:8px}.cvme-cna-answer-review li{background:#f7fbff;border-left:5px solid #aac5df;border-radius:10px;padding:8px 10px}.cvme-cna-answer-review li.is-correct,.cvme-cna-answer-review.is-correct{border-color:#198754;background:#e9f9ef}.cvme-cna-answer-review li.is-wrong,.cvme-cna-answer-review.is-wrong{border-color:#c81e1e;background:#fff0f0}

/* v1.4.15.3 top navigation and instructor override */
.cvme-cna-controls-top{
  margin: 14px 0 18px;
  justify-content: space-between;
  position: sticky;
  top: 0;
  z-index: 20;
  background: rgba(255,255,255,.96);
  padding: 10px 0;
  border-bottom: 1px solid rgba(10,77,140,.12);
}
.cvme-cna-answer-override{margin-top:8px;}
.cvme-cna-override-btn{
  border: 1px solid #9cc7ef;
  background:#eef7ff;
  color:#073b66;
  border-radius:10px;
  padding:6px 10px;
  font-weight:700;
  cursor:pointer;
}
.cvme-cna-correction-saved{
  margin-top:6px;
  font-size:12px;
  color:#166534;
  font-weight:700;
}

.cvme-cna-card .cvme-cna-btn{
  width:100%;
  min-height:48px;
  text-align:center;
  white-space:normal;
  overflow-wrap:anywhere;
}

.cvme-cna-card .cvme-cna-status{
  max-width:100%;
  white-space:normal;
}

/* v1.4.15.7 module card/button layout safety */
.cvme-cna-wrap{
  max-width:100%;
  overflow-x:hidden;
}
.cvme-cna-grid{
  align-items:stretch;
  grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));
  max-width:100%;
  overflow:hidden;
  width:100%;
}
.cvme-cna-card{
  box-sizing:border-box;
  min-width:0;
  overflow:hidden;
  width:100%;
}
.cvme-cna-card > *{
  box-sizing:border-box;
  min-width:0;
  max-width:100%;
}
.cvme-cna-card-actions{
  box-sizing:border-box;
  display:flex;
  flex-direction:column;
  gap:8px;
  max-width:100%;
  min-width:0;
  overflow:hidden;
  width:100%;
}
.cvme-cna-card p,
.cvme-cna-card h2,
.cvme-cna-card h3,
.cvme-cna-card .cvme-cna-status,
.cvme-cna-card-actions,
.cvme-cna-card .cvme-cna-btn{
  max-width:100%;
  overflow-wrap:anywhere;
  word-break:normal;
}
.cvme-cna-card .cvme-cna-status{
  box-sizing:border-box;
  display:block;
  text-align:center;
  width:100%;
}
.cvme-cna-card .cvme-cna-btn{
  align-items:center;
  box-sizing:border-box;
  display:flex;
  flex:0 0 auto;
  justify-content:center;
  line-height:1.25;
  margin-left:0;
  margin-right:0;
  min-width:0 !important;
  padding-left:14px;
  padding-right:14px;
  white-space:normal;
  width:100%;
}
.cvme-cna-card a.cvme-cna-btn,
.cvme-cna-card span.cvme-cna-btn{
  max-width:100%;
  min-width:0 !important;
  overflow:hidden;
  width:100%;
}
@media(max-width:640px){
  .cvme-cna-wrap{
    padding-left:16px;
    padding-right:16px;
  }
  .cvme-cna-grid{
    gap:14px;
    grid-template-columns:1fr;
  }
  .cvme-cna-card{
    min-height:auto;
    padding:18px;
  }
  .cvme-cna-card .cvme-cna-btn{
    min-height:50px;
  }
}
