
.lrmce{--ink:#101828;--muted:#667085;--line:#d0d5dd;--blue:#175cd3;--gold:#f0c96b;--deep:#102f57;max-width:1060px;margin:24px auto 56px;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.45}
.lrmce *{box-sizing:border-box}.lrmce button{font:inherit;color:#102a56!important;-webkit-text-fill-color:#102a56!important;opacity:1!important}.lrmce button:disabled{opacity:1!important;color:#102a56!important;-webkit-text-fill-color:#102a56!important;cursor:default}.lrmce-heading{position:relative;overflow:hidden;border:1px solid #173a69;border-radius:16px;padding:22px 24px 20px;margin-bottom:18px;background:linear-gradient(135deg,#0f2f57 0%,#173f73 62%,#102c4f 100%);box-shadow:0 10px 28px rgba(16,24,40,.14)}.lrmce-heading:after{content:"";position:absolute;right:-36px;top:-46px;width:150px;height:150px;border-radius:50%;background:rgba(255,255,255,.06)}.lrmce-eyebrow{display:inline-block;position:relative;z-index:1;font-size:12px;font-weight:900;letter-spacing:.04em;color:#f3cf72;background:rgba(255,255,255,.08);border:1px solid rgba(243,207,114,.35);border-radius:999px;padding:6px 10px;margin-bottom:12px}.lrmce-heading h1{position:relative;z-index:1;font-size:39px;line-height:1.08;margin:0 0 5px;color:#fff;letter-spacing:-.02em}.lrmce-secondary{position:relative;z-index:1;font-size:21px;font-weight:800;color:var(--gold);margin:0}
.lrmce-intro{border-left:4px solid var(--blue);background:#f8fbff;padding:13px 15px;margin:14px 0 24px;line-height:1.65}.lrmce-section{margin-top:34px}.lrmce-section>h2,.lrmce-review h2{font-size:22px;font-weight:900;margin:0 0 14px;padding-bottom:8px;border-bottom:2px solid #111827}.lrmce-section>h2 span,.lrmce-review h2 span{color:#b58118;font-size:18px;margin-left:8px}.lrmce-dialogue{border:1px solid var(--line);border-radius:10px;overflow:visible}.lrmce-dialogue-row{display:grid;grid-template-columns:90px 1fr auto;gap:12px;padding:14px 16px;border-top:1px solid #eaecf0;align-items:start;position:relative}.lrmce-dialogue-row:first-child{border-top:0}.lrmce-dialogue-row>div>strong{display:block;font-size:18px}.lrmce-dialogue-row small{display:block;color:#475467;margin-top:3px}.lrmce-dialogue-row p{margin:5px 0 0;color:#344054}
.lrmce-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:8px}.lrmce-vocab{border-collapse:collapse;width:100%;min-width:820px}.lrmce-vocab th{background:#0f5eb8;color:#fff;text-align:left;padding:10px 12px;font-size:13px;line-height:1.2}.lrmce-vocab td{padding:11px 12px;border-top:1px solid #e4e7ec;vertical-align:top}.lrmce-mainword{font-weight:800;font-size:17px}.lrmce-center{text-align:center}.lrmce-note{font-size:13px;color:var(--muted);margin-top:8px}.lrmce-write-jump,.lrmce-hanzi-jump{border:1px solid #98a2b3;background:#fff;border-radius:7px;padding:7px 9px;cursor:pointer;font-weight:700}.lrmce-write-jump:hover,.lrmce-hanzi-jump:hover{border-color:var(--blue);color:var(--blue)}
.lrmce-audio-wrap{display:inline-block;position:relative}.lrmce-audio-toggle{width:38px;height:38px;border-radius:50%;border:1px solid #98a2b3;background:#fff;cursor:pointer}.lrmce-audio-menu{position:absolute;z-index:30;right:0;top:44px;width:190px;padding:8px;border:1px solid #d0d5dd;border-radius:10px;background:#fff;box-shadow:0 12px 30px rgba(16,24,40,.18)}.lrmce-audio-menu button{display:block;width:100%;text-align:left;border:0;background:#fff;padding:8px;border-radius:6px;cursor:pointer}.lrmce-audio-menu button:hover{background:#eef4ff}.lrmce-audio-menu small{display:block;padding:7px 8px 3px;color:#667085;line-height:1.35}.lrmce-voice.is-playing{background:#ecfdf3}
.lrmce-section-help{margin:-2px 0 14px;padding:11px 13px;border-left:4px solid #175cd3;background:#f8fbff;border-radius:0 8px 8px 0;color:#344054;line-height:1.55}.lrmce-section-help strong{color:#102a56}.lrmce-section-help span{color:#475467}.lrmce-word-head:hover,.lrmce-word-head:focus{background:#f2f6fc!important}.lrmce-word-head:active{background:#eaf2ff!important}
.lrmce-details{display:grid;gap:12px}.lrmce-word-card{border:1px solid var(--line);border-radius:10px;overflow:hidden}.lrmce-word-head{display:flex;width:100%;justify-content:space-between;align-items:center;gap:12px;padding:13px 15px;background:#fafafa;border:0;cursor:pointer;text-align:left}.lrmce-word-head strong{font-size:18px}.lrmce-word-head small{color:var(--muted)}.lrmce-word-body{display:none;padding:15px 17px;line-height:1.65}.lrmce-word-card.is-open .lrmce-word-body{display:block}.lrmce-word-body h3{margin:12px 0 4px;font-size:15px;color:#344054}.lrmce-word-body p{margin:4px 0}.lrmce-example{background:#f8fafc;border-left:3px solid #98a2b3;padding:9px 11px;margin:6px 0}.lrmce-panels{display:grid;grid-template-columns:1fr;gap:20px}.lrmce-panels article{border:1px solid var(--line);border-radius:10px;padding:16px}.lrmce-panels h3{margin:0 0 8px;font-size:18px}.lrmce-panels p{margin:7px 0;line-height:1.6}
.lrmce-writing-shell{border:1px solid var(--line);border-radius:12px;padding:17px;background:#fcfcfd}.lrmce-writing-tabs,.lrmce-hanzi-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0 14px}.lrmce-writing-tab,.lrmce-hanzi-tabs button{border:1px solid #b8c4d6;background:#fff;border-radius:999px;padding:7px 11px;cursor:pointer;font-weight:800}.lrmce-writing-tab.is-active,.lrmce-hanzi-tabs button.is-active{background:#eef4ff;border-color:var(--blue);color:var(--blue)}.lrmce-writing-card{--writer-colour:#1769aa}.lrmce-writing-card.is-hidden{display:none}.lrmce-writing-card canvas{display:block;width:100%;height:auto;max-height:230px;border:2px dashed #b8c4d6;border-radius:12px;background:#fff;touch-action:none}.lrmce-writing-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px}.lrmce-writing-actions button{border:1px solid #98a2b3;background:#fff;border-radius:7px;padding:8px 11px;cursor:pointer;font-weight:700}.lrmce-writing-actions button span{display:block;font-size:11px;font-weight:500;color:#667085}.lrm-eng13-writing-status,.lrmce-hanzi-status{font-size:14px;color:#475467}.lrmce-hanzi-stage{min-height:210px;border:2px dashed #b8c4d6;border-radius:12px;background:#fff;display:grid;place-items:center}.lrmce-hanzi-placeholder{font-size:110px;color:#d0d5dd;font-weight:800}.lrmce-hanzi-stage svg{max-width:200px!important;max-height:200px!important}
.lrmce-practice{border:1px solid var(--line);border-radius:10px;padding:16px;color:#101828}.lrmce-practice>div{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.lrmce-practice button{border:1px solid #98a2b3;background:#fff;border-radius:8px;padding:8px 12px;cursor:pointer;color:#102a56!important;-webkit-text-fill-color:#102a56!important;font-weight:700}.lrmce-practice button.is-correct{background:#ecfdf3;border-color:#12b76a;color:#05603a!important;-webkit-text-fill-color:#05603a!important}.lrmce-practice button.is-wrong{background:#fef3f2;border-color:#f04438;color:#912018!important;-webkit-text-fill-color:#912018!important}.lrmce-practice-status{min-height:38px;margin:12px 0 0;padding:9px 11px;border-radius:8px;font-weight:800;color:#344054}.lrmce-practice-status:empty{display:none}.lrmce-practice-status.is-correct{display:block;background:#ecfdf3;border:1px solid #6ce9a6;color:#05603a!important}.lrmce-practice-status.is-wrong{display:block;background:#fef3f2;border:1px solid #fda29b;color:#912018!important}.lrmce-review{background:#102a56;color:#fff;border-radius:12px;padding:20px}.lrmce-review h2{color:#fff;border-color:rgba(255,255,255,.32)}.lrmce-review p{color:#f4f7fb}.lrmce-review>button,.lrmce-review-board button{background:#fff;border:1px solid #fff;color:#102a56!important;-webkit-text-fill-color:#102a56!important;border-radius:8px;padding:9px 13px;cursor:pointer;font-weight:800}.lrmce-review-board{margin-top:15px;padding:15px;background:rgba(255,255,255,.09);border-radius:10px;color:#fff}.lrmce-review-board p{color:#fff}.lrmce-review-choices{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}.lrmce-review-board .is-correct{background:#d1fadf;border-color:#6ce9a6;color:#05603a!important;-webkit-text-fill-color:#05603a!important}.lrmce-review-board .is-wrong{background:#fee4e2;border-color:#fda29b;color:#912018!important;-webkit-text-fill-color:#912018!important}.lrmce-review-feedback{margin-top:14px;padding:11px 13px;border-radius:8px;font-weight:800;line-height:1.45}.lrmce-review-feedback.is-correct{background:#d1fadf;border:1px solid #6ce9a6;color:#05603a!important}.lrmce-review-feedback.is-wrong{background:#fee4e2;border:1px solid #fda29b;color:#912018!important}.lrmce-next-review{margin-top:12px!important;background:#f3cf72!important;border-color:#f3cf72!important;color:#102a56!important;-webkit-text-fill-color:#102a56!important}.lrmce-nav{margin-top:30px;display:flex;justify-content:space-between;gap:12px}.lrmce-nav button{border:1px solid #98a2b3;background:#fff;border-radius:7px;padding:10px 14px;cursor:pointer;font-weight:700;color:#102a56!important;-webkit-text-fill-color:#102a56!important}
@media(max-width:760px){.lrmce{margin:12px 0 38px}.lrmce-heading{padding:18px 16px 17px;border-radius:13px}.lrmce-heading h1{font-size:31px}.lrmce-secondary{font-size:19px}.lrmce-section{margin-top:28px}.lrmce-section>h2{font-size:20px}.lrmce-dialogue-row{grid-template-columns:1fr auto}.lrmce-dialogue-row>b{grid-column:1/-1;font-size:13px}.lrmce-panels{grid-template-columns:1fr}.lrmce-audio-menu{right:0}.lrmce-nav{flex-direction:column}.lrmce-nav button{width:100%}}


/* v0.1.3 visual polish — CSS only, no extra images or libraries */
.lrmce{
  --soft-blue:#eef5ff;
  --soft-sky:#f3fbff;
  --soft-gold:#fff9e9;
  --soft-green:#f0fbf6;
  --soft-purple:#f7f4ff;
  --soft-coral:#fff5f2;
  --navy:#102a56;
}

/* Section headings: clearer identity without adding visual weight */
.lrmce-section>h2{
  color:#102a56;
  border-bottom:0;
  position:relative;
  padding:0 0 11px 0;
  margin-bottom:16px;
}
.lrmce-section>h2:after{
  content:"";
  position:absolute;
  left:0;
  bottom:0;
  width:72px;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg,#175cd3,#d8a72e);
}
.lrmce-section>h2 span{
  color:#b07a10;
}

/* Intro */
.lrmce-intro{
  border-left:5px solid #d8a72e;
  border-top:1px solid #dce7f7;
  border-right:1px solid #dce7f7;
  border-bottom:1px solid #dce7f7;
  border-radius:0 12px 12px 0;
  background:linear-gradient(135deg,#f6faff 0%,#fffaf0 100%);
  box-shadow:0 5px 16px rgba(16,42,86,.05);
}

/* Dialogue */
.lrmce-dialogue{
  border-color:#c7d7eb;
  border-radius:13px;
  box-shadow:0 6px 18px rgba(16,42,86,.05);
  overflow:hidden;
}
.lrmce-dialogue-row:nth-child(odd){background:#f5f9ff}
.lrmce-dialogue-row:nth-child(even){background:#fffaf1}
.lrmce-dialogue-row>b{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:5px 9px;
  border-radius:999px;
  background:#102a56;
  color:#fff;
  font-size:13px;
  line-height:1.1;
  align-self:start;
}
.lrmce-dialogue-row>div>strong{color:#102a56}

/* Vocabulary */
.lrmce-table-wrap{
  border-color:#bfd0e6;
  border-radius:12px;
  box-shadow:0 7px 20px rgba(16,42,86,.05);
}
.lrmce-vocab th{
  background:linear-gradient(180deg,#174f96 0%,#103d78 100%);
  border-right:1px solid rgba(255,255,255,.14);
  letter-spacing:.02em;
}
.lrmce-vocab th:last-child{border-right:0}
.lrmce-vocab tbody tr:nth-child(4n+1){background:#f5f9ff}
.lrmce-vocab tbody tr:nth-child(4n+2){background:#fffaf0}
.lrmce-vocab tbody tr:nth-child(4n+3){background:#f2fbf7}
.lrmce-vocab tbody tr:nth-child(4n+4){background:#faf7ff}
.lrmce-vocab tbody tr:hover{background:#eaf3ff}
.lrmce-vocab td{border-top-color:#dfe7f1}
.lrmce-mainword{color:#102a56}
.lrmce-write-jump,.lrmce-hanzi-jump{
  background:#fff8df;
  border-color:#dfbf68;
  color:#5e4305!important;
  -webkit-text-fill-color:#5e4305!important;
}
.lrmce-write-jump:hover,.lrmce-hanzi-jump:hover{
  background:#ffefb9;
  border-color:#c9951f;
  color:#493300!important;
  -webkit-text-fill-color:#493300!important;
}
.lrmce-audio-toggle{
  border-color:#96b7dd;
  background:#eef5ff;
}
.lrmce-audio-toggle:hover{background:#dceaff}

/* Help strip */
.lrmce-section-help{
  background:linear-gradient(90deg,#eef5ff,#f8fbff);
  border-left-color:#d5a12a;
  box-shadow:0 4px 12px rgba(16,42,86,.04);
}

/* Word explanation accordions */
.lrmce-word-card{
  border-color:#ccd8e8;
  box-shadow:0 4px 12px rgba(16,42,86,.035);
}
.lrmce-word-card:nth-child(4n+1) .lrmce-word-head{background:#eef5ff}
.lrmce-word-card:nth-child(4n+2) .lrmce-word-head{background:#fff8e8}
.lrmce-word-card:nth-child(4n+3) .lrmce-word-head{background:#f0faf5}
.lrmce-word-card:nth-child(4n+4) .lrmce-word-head{background:#f7f2ff}
.lrmce-word-card.is-open{
  border-color:#9fbbe0;
  box-shadow:0 7px 20px rgba(16,42,86,.07);
}
.lrmce-word-card.is-open .lrmce-word-head{
  box-shadow:inset 5px 0 0 #d5a12a;
}
.lrmce-word-body{
  background:#fff;
}
.lrmce-example{
  background:#f6f9fd;
  border-left-color:#5b8dcc;
  border-radius:0 8px 8px 0;
}

/* Grammar */
.lrmce-panels article{
  border-color:#cdd9e8;
  box-shadow:0 5px 15px rgba(16,42,86,.04);
}
.lrmce-panels article:nth-child(odd){
  background:linear-gradient(145deg,#f2f7ff,#ffffff);
  border-top:4px solid #4b84c5;
}
.lrmce-panels article:nth-child(even){
  background:linear-gradient(145deg,#fff9e9,#ffffff);
  border-top:4px solid #d5a12a;
}
.lrmce-panels h3{color:#102a56}

/* Writing */
.lrmce-writing-shell{
  border-color:#cad8e8;
  background:linear-gradient(145deg,#f8fbff 0%,#fffaf1 100%);
  box-shadow:0 7px 20px rgba(16,42,86,.05);
}
.lrmce-writing-tab,.lrmce-hanzi-tabs button{
  border-color:#9eb8d8;
}
.lrmce-writing-tab.is-active,.lrmce-hanzi-tabs button.is-active{
  background:#102a56;
  border-color:#102a56;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
.lrmce-writing-card canvas,.lrmce-hanzi-stage{
  border-color:#9eb8d8;
  background:
    linear-gradient(#f7fbff 1px,transparent 1px),
    linear-gradient(90deg,#f7fbff 1px,transparent 1px),
    #fff;
  background-size:28px 28px;
}
.lrmce-writing-actions button{
  background:#fff;
  border-color:#a5bad4;
}
.lrmce-writing-actions button:hover{
  background:#eef5ff;
  border-color:#5b8dcc;
}

/* Practice */
.lrmce-practice{
  border-color:#bfd0e6;
  background:linear-gradient(145deg,#f5f9ff 0%,#ffffff 70%);
  border-left:5px solid #4b84c5;
  box-shadow:0 6px 18px rgba(16,42,86,.05);
}
.lrmce-practice button{
  background:#fff;
  border-color:#9fb4cf;
}
.lrmce-practice button:hover:not(.is-correct):not(.is-wrong){
  background:#eef5ff;
  border-color:#5b8dcc;
}

/* Review */
.lrmce-review{
  background:linear-gradient(135deg,#102a56 0%,#173d75 65%,#102a56 100%);
  border:1px solid #254d82;
  box-shadow:0 10px 28px rgba(16,42,86,.16);
  position:relative;
  overflow:hidden;
}
.lrmce-review:after{
  content:"";
  position:absolute;
  width:150px;
  height:150px;
  right:-55px;
  top:-60px;
  border-radius:50%;
  background:rgba(240,201,107,.10);
  pointer-events:none;
}
.lrmce-review h2:after{background:#f0c96b}
.lrmce-review>button{
  background:#f5d77f!important;
  border-color:#f5d77f!important;
  color:#102a56!important;
  -webkit-text-fill-color:#102a56!important;
}
.lrmce-review>button:hover{background:#ffe7a5!important}
.lrmce-review-board{
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.10);
}

/* Navigation */
.lrmce-nav button{
  border-color:#9fb4cf;
  background:#f7faff;
}
.lrmce-nav button:hover{
  background:#eaf3ff;
  border-color:#5b8dcc;
}

/* Keep colour tasteful on small screens */
@media(max-width:760px){
  .lrmce-dialogue-row>b{
    width:max-content;
    min-width:70px;
  }
  .lrmce-section>h2:after{width:56px}
}


/* v0.1.4 shared flip-card review — CSS only, no images */
.lrmce-review-launch{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin:15px 0 4px;
}
.lrmce-review-launch>button{
  background:#fff!important;
  border:1px solid rgba(255,255,255,.85)!important;
  color:#102a56!important;
  -webkit-text-fill-color:#102a56!important;
  font-weight:800!important;
  border-radius:9px!important;
  padding:10px 14px!important;
}
.lrmce-review-launch>button:hover{
  background:#f5d77f!important;
  border-color:#f5d77f!important;
}
.lrmce-flip-board{
  margin-top:14px;
  padding:16px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:12px;
  background:rgba(255,255,255,.08);
}
.lrmce-flip-instruction{
  margin:0 0 14px!important;
  color:#eaf1fb!important;
}
.lrmce-flip-scene{
  width:min(100%,520px);
  min-height:230px;
  margin:0 auto 13px;
  perspective:1000px;
}
.lrmce button.lrmce-flip-card{
  display:block!important;
  width:100%!important;
  min-height:230px!important;
  padding:0!important;
  border:0!important;
  border-radius:16px!important;
  background:transparent!important;
  box-shadow:none!important;
  cursor:pointer!important;
  color:inherit!important;
  -webkit-text-fill-color:currentColor!important;
}
.lrmce-flip-inner{
  display:block;
  position:relative;
  width:100%;
  min-height:230px;
  transition:transform .42s ease;
  transform-style:preserve-3d;
}
.lrmce-flip-card.is-flipped .lrmce-flip-inner{
  transform:rotateY(180deg);
}
.lrmce-flip-face{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:12px;
  padding:24px;
  border-radius:16px;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  box-shadow:0 12px 28px rgba(0,0,0,.16);
}
.lrmce-flip-front{
  background:linear-gradient(135deg,#fff8df 0%,#ffffff 100%);
  border:2px solid #f0cf75;
  color:#102a56;
}
.lrmce-flip-back{
  background:linear-gradient(135deg,#eaf4ff 0%,#ffffff 100%);
  border:2px solid #8db4e4;
  color:#102a56;
  transform:rotateY(180deg);
}
.lrmce-flip-face small{
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
  color:#6b7280;
}
.lrmce-flip-face strong{
  font-size:clamp(30px,6vw,54px);
  line-height:1.1;
  text-align:center;
  overflow-wrap:anywhere;
}
.lrmce-flip-face em{
  font-style:normal;
  font-size:13px;
  color:#667085;
}
.lrmce-flip-status{
  min-height:24px;
  margin-top:7px;
  text-align:center;
  color:#f8e6ad;
  font-weight:700;
}
.lrmce-flip-controls{
  display:flex;
  justify-content:center;
  margin-top:11px;
}
.lrmce-flip-controls button{
  background:#f5d77f!important;
  border:1px solid #f5d77f!important;
  color:#102a56!important;
  -webkit-text-fill-color:#102a56!important;
  font-weight:900!important;
  border-radius:9px!important;
  padding:9px 14px!important;
}
.lrmce-flip-controls button:hover{
  background:#ffe7a5!important;
}
@media (prefers-reduced-motion: reduce){
  .lrmce-flip-inner{transition:none}
}
@media(max-width:760px){
  .lrmce-review-launch{display:grid;grid-template-columns:1fr}
  .lrmce-flip-scene,.lrmce-flip-inner,.lrmce button.lrmce-flip-card{min-height:205px!important}
}


/* v0.1.7 readability improvements */
.lrmce{
  font-size:17px;
  line-height:1.6;
}

/* Dialogue text */
.lrmce-dialogue-row{
  font-size:17px;
}
.lrmce-dialogue-row>div>strong{
  font-size:20px;
  line-height:1.35;
}
.lrmce-dialogue-row>div>small{
  display:block;
  font-size:15px;
  line-height:1.45;
  margin-top:4px;
  color:#475467;
}
.lrmce-support-first{
  font-size:18px!important;
  line-height:1.45!important;
  margin:0 0 4px!important;
  color:#25324a!important;
}

/* Speaker labels: all text white on blue */
.lrmce-dialogue-row>b{
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  font-size:15px!important;
  line-height:1.2!important;
  text-align:center;
}
.lrmce-dialogue-row>b small{
  display:block;
  color:#ffffff!important;
  -webkit-text-fill-color:#ffffff!important;
  font-size:13px!important;
  font-weight:700!important;
  opacity:1!important;
  margin-top:3px;
}

/* Vocabulary table readability */
.lrmce-vocab th{
  font-size:14px!important;
  line-height:1.3!important;
}
.lrmce-vocab td{
  font-size:16px!important;
  line-height:1.5!important;
}
.lrmce-mainword,
.lrmce-support-word{
  font-size:18px!important;
  font-weight:800!important;
}

/* Explanations and grammar */
.lrmce-word-head{
  font-size:17px!important;
}
.lrmce-word-head strong{
  font-size:19px!important;
}
.lrmce-word-head small{
  font-size:14px!important;
}
.lrmce-word-body,
.lrmce-panels article,
.lrmce-section-help,
.lrmce-intro,
.lrmce-practice,
.lrmce-review p{
  font-size:16.5px!important;
  line-height:1.65!important;
}

/* Buttons and controls */
.lrmce button,
.lrmce .lrmce-write-jump,
.lrmce .lrmce-hanzi-jump{
  font-size:15px!important;
}
.lrmce-writing-tab,
.lrmce-hanzi-tabs button{
  font-size:16px!important;
}
.lrmce-writing-actions button,
.lrmce-review-launch button,
.lrmce-flip-controls button,
.lrmce-nav button{
  font-size:16px!important;
}

/* Mobile: keep text comfortably readable */
@media(max-width:760px){
  .lrmce{
    font-size:16px;
  }
  .lrmce-dialogue-row>div>strong{
    font-size:19px;
  }
  .lrmce-support-first{
    font-size:17px!important;
  }
  .lrmce-vocab td{
    font-size:15.5px!important;
  }
}


/* v0.1.8 lesson-specific notes */
.lrmce-notes-section .lrmce-notes-box{
  border:1px solid #d7c27a;
  border-left:5px solid #d5a12a;
  border-radius:12px;
  padding:18px 20px;
  background:linear-gradient(135deg,#fffaf0 0%,#fffdf7 100%);
  box-shadow:0 6px 18px rgba(16,42,86,.045);
  color:#27364d;
  font-size:16.5px;
  line-height:1.7;
}
.lrmce-notes-section .lrmce-notes-box p{
  margin:0 0 12px;
}
.lrmce-notes-section .lrmce-notes-box p:last-child{
  margin-bottom:0;
}


/* v0.1.9 — word and phrase component breakdowns */
.lrmce-breakdown{
  margin:16px 0;
  padding:15px;
  border:1px solid #c7d7eb;
  border-radius:12px;
  background:linear-gradient(135deg,#f5f9ff 0%,#fff9e9 100%);
}
.lrmce-breakdown h4{
  margin:0 0 11px!important;
  color:#102a56!important;
  font-size:17px!important;
  font-weight:900!important;
}
.lrmce-breakdown-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
}
.lrmce-breakdown-compact .lrmce-breakdown-grid{
  grid-template-columns:repeat(3,minmax(0,1fr));
}
.lrmce-part{
  padding:12px;
  border:1px solid #d8e2ef;
  border-radius:10px;
  background:#fff;
}
.lrmce-part strong{
  display:block;
  color:#102a56!important;
  font-size:22px!important;
  line-height:1.2!important;
}
.lrmce-part span{
  display:block;
  margin-top:3px;
  color:#5c6678;
  font-size:14px;
}
.lrmce-part b{
  display:block;
  margin-top:7px;
  color:#8a6110!important;
  font-size:16px;
}
.lrmce-part p{
  margin:5px 0 0!important;
  font-size:15px!important;
  line-height:1.5!important;
}
.lrmce-breakdown-together{
  margin:12px 0 0!important;
  padding:10px 12px;
  border-left:4px solid #d5a12a;
  border-radius:0 8px 8px 0;
  background:#fff;
  font-size:16px!important;
  line-height:1.55!important;
}
.lrmce-breakdown-single p{
  margin:0!important;
}
@media(max-width:760px){
  .lrmce-breakdown-grid,
  .lrmce-breakdown-compact .lrmce-breakdown-grid{
    grid-template-columns:1fr;
  }
}

/* Course Engine v1.0 production additions */
.lrmce-eyebrow small{display:block;margin-top:3px;font-size:10px;letter-spacing:.08em;color:#fff;opacity:.82}
.lrmce-nav-link{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 14px;border:1px solid #9fb4cf;border-radius:8px;background:#f7faff;color:#102a56!important;-webkit-text-fill-color:#102a56!important;text-decoration:none!important;font-weight:800}
.lrmce-nav-link:hover{background:#eaf3ff;border-color:#5b8dcc;color:#102a56!important}
.lrmce-breakdown h4 span{font-weight:700;color:#667085}
.lrmce-practice-prompt{font-size:24px;font-weight:900;color:#102a56;margin:10px 0}
.lrmce-practice-choices{display:flex;gap:8px;flex-wrap:wrap}
.lrmce-notes-box{border:1px solid #d8c282;border-left:5px solid #d5a12a;border-radius:10px;background:#fffaf0;padding:15px 17px}
.lrmce-notes-box p:first-child{margin-top:0}.lrmce-notes-box p:last-child{margin-bottom:0}
.single-lrm_lesson header.entry-header,.single-lrm_lesson .entry-title{display:none!important}
@media(max-width:760px){.lrmce-nav-link{width:100%}}


/* v1.0.1 — audio voice chooser: all four voices visible, no internal scrolling */
.lrmce-audio-menu{
  width:246px!important;
  max-height:none!important;
  overflow:visible!important;
  padding:9px!important;
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:7px;
  z-index:99999!important;
}
.lrmce-audio-menu[hidden]{
  display:none!important;
}
.lrmce-audio-menu .lrmce-voice{
  display:flex!important;
  align-items:center;
  justify-content:center;
  min-height:43px;
  width:100%!important;
  padding:9px 8px!important;
  text-align:center!important;
  border:1px solid #c9d7e8!important;
  border-radius:8px!important;
  background:#f7faff!important;
  color:#102a56!important;
  -webkit-text-fill-color:#102a56!important;
  font-weight:800!important;
  white-space:normal;
}
.lrmce-audio-menu .lrmce-voice:hover{
  background:#e8f2ff!important;
  border-color:#7fa8d8!important;
}
.lrmce-audio-menu .lrmce-voice.is-playing{
  background:#ecfdf3!important;
  border-color:#6ce9a6!important;
  color:#05603a!important;
  -webkit-text-fill-color:#05603a!important;
}
.lrmce-audio-menu small{
  grid-column:1 / -1;
  padding:5px 4px 2px!important;
}

/* On ordinary desktop widths the vocabulary table does not need to clip popovers. */
@media(min-width:761px){
  .lrmce-table-wrap{
    overflow:visible!important;
  }
}

/* On phones the table can still scroll horizontally; the voice menu itself is
   positioned against the viewport by JavaScript, so it remains fully visible. */
@media(max-width:760px){
  .lrmce-audio-menu{
    width:min(246px,calc(100vw - 20px))!important;
  }
}


/* v1.0.2 — robust audio control and portal popup */
.lrmce .lrmce-vocab button.lrmce-audio-toggle,
.lrmce button.lrmce-audio-toggle{
  -webkit-appearance:none!important;
  appearance:none!important;
  width:auto!important;
  min-width:78px!important;
  height:40px!important;
  padding:7px 11px!important;
  margin:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  border:1px solid #7ea4d3!important;
  border-radius:999px!important;
  background:#eaf3ff!important;
  background-image:none!important;
  color:#102a56!important;
  -webkit-text-fill-color:#102a56!important;
  box-shadow:none!important;
  opacity:1!important;
  font-weight:900!important;
  line-height:1!important;
  cursor:pointer!important;
}
.lrmce .lrmce-vocab button.lrmce-audio-toggle:hover,
.lrmce button.lrmce-audio-toggle:hover{
  background:#dceaff!important;
  border-color:#4f83c2!important;
}
.lrmce .lrmce-vocab button.lrmce-audio-toggle:focus,
.lrmce button.lrmce-audio-toggle:focus{
  outline:3px solid rgba(23,92,211,.22)!important;
  outline-offset:2px!important;
}
.lrmce-speaker-icon{
  width:20px!important;
  height:20px!important;
  display:block!important;
  flex:0 0 20px!important;
  fill:#175cd3!important;
  stroke:#175cd3!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}
.lrmce-audio-label{
  display:inline-block!important;
  color:#102a56!important;
  -webkit-text-fill-color:#102a56!important;
  font-size:15px!important;
  font-weight:900!important;
}

/* The original menu stays hidden in the table and only supplies data. */
.lrmce-audio-menu{
  display:none!important;
}

/* Popup is appended directly to BODY, outside all lesson/table overflow. */
.lrmce-audio-portal{
  position:fixed!important;
  z-index:2147483000!important;
  width:270px!important;
  padding:10px!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
  border:1px solid #b9cbe2!important;
  border-radius:13px!important;
  background:#ffffff!important;
  box-shadow:0 18px 45px rgba(16,42,86,.28)!important;
}
.lrmce-audio-portal[hidden]{
  display:none!important;
}
.lrmce-audio-portal .lrmce-voice{
  -webkit-appearance:none!important;
  appearance:none!important;
  min-height:48px!important;
  width:100%!important;
  margin:0!important;
  padding:10px 8px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  border:1px solid #c9d7e8!important;
  border-radius:9px!important;
  background:#f5f9ff!important;
  background-image:none!important;
  color:#102a56!important;
  -webkit-text-fill-color:#102a56!important;
  box-shadow:none!important;
  font-size:15px!important;
  font-weight:900!important;
  text-align:center!important;
  cursor:pointer!important;
}
.lrmce-audio-portal .lrmce-voice:hover{
  background:#e7f1ff!important;
  border-color:#6f9ed5!important;
}
.lrmce-audio-portal .lrmce-voice.is-playing{
  background:#ecfdf3!important;
  border-color:#5acb8a!important;
  color:#05603a!important;
  -webkit-text-fill-color:#05603a!important;
}
.lrmce-audio-portal .lrmce-audio-help{
  grid-column:1 / -1!important;
  margin:1px 3px 0!important;
  padding:5px 3px 1px!important;
  color:#667085!important;
  font-size:12px!important;
  line-height:1.35!important;
}

/* No vertical scroller is created merely because the audio chooser opened. */
@media(min-width:761px){
  .lrmce-table-wrap{
    overflow-x:auto!important;
    overflow-y:hidden!important;
  }
}
@media(max-width:760px){
  .lrmce .lrmce-vocab button.lrmce-audio-toggle,
  .lrmce button.lrmce-audio-toggle{
    min-width:70px!important;
    padding:7px 9px!important;
  }
  .lrmce-audio-portal{
    width:min(270px,calc(100vw - 20px))!important;
  }
}


/* v1.0.3 — FINAL direct audio layout.
   No dropdown. No popup. No internal audio scrolling. */
.lrmce-audio-direct{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(76px,1fr))!important;
  gap:7px!important;
  width:176px!important;
  min-width:176px!important;
  max-width:176px!important;
  overflow:visible!important;
  position:relative!important;
}

.lrmce button.lrmce-direct-voice,
.lrmce .lrmce-vocab button.lrmce-direct-voice{
  -webkit-appearance:none!important;
  appearance:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:6px!important;
  width:100%!important;
  min-width:0!important;
  height:37px!important;
  min-height:37px!important;
  margin:0!important;
  padding:6px 8px!important;
  border:1px solid #8fb0d6!important;
  border-radius:8px!important;
  background:#eef5ff!important;
  background-image:none!important;
  box-shadow:none!important;
  color:#102a56!important;
  -webkit-text-fill-color:#102a56!important;
  opacity:1!important;
  font-size:13px!important;
  font-weight:900!important;
  line-height:1!important;
  text-align:left!important;
  white-space:nowrap!important;
  cursor:pointer!important;
}

.lrmce button.lrmce-direct-voice:hover,
.lrmce .lrmce-vocab button.lrmce-direct-voice:hover{
  background:#dceaff!important;
  border-color:#4f83c2!important;
}

.lrmce button.lrmce-direct-voice.is-playing,
.lrmce .lrmce-vocab button.lrmce-direct-voice.is-playing{
  background:#e8faef!important;
  border-color:#56c98a!important;
  color:#05603a!important;
  -webkit-text-fill-color:#05603a!important;
}

.lrmce-direct-speaker{
  display:block!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  flex:0 0 18px!important;
  fill:#175cd3!important;
  stroke:#175cd3!important;
  stroke-width:1.7!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
}

.lrmce-direct-voice.is-playing .lrmce-direct-speaker{
  fill:#067647!important;
  stroke:#067647!important;
}

.lrmce-direct-voice span{
  display:inline-block!important;
  color:inherit!important;
  -webkit-text-fill-color:inherit!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

.lrmce-audio-missing{
  grid-column:1 / -1!important;
  display:block!important;
  padding-top:2px!important;
  color:#b42318!important;
  font-size:11px!important;
  line-height:1.3!important;
}

/* Give the AUDIO column enough room for the 2x2 voice grid. */
.lrmce-vocab th:last-child,
.lrmce-vocab td:last-child{
  width:190px!important;
  min-width:190px!important;
}

/* The vocabulary wrapper may scroll horizontally on small screens,
   but it never needs a vertical scrollbar for audio controls. */
.lrmce-table-wrap{
  overflow-x:auto!important;
  overflow-y:hidden!important;
  max-height:none!important;
}

@media(max-width:760px){
  .lrmce-audio-direct{
    width:164px!important;
    min-width:164px!important;
    max-width:164px!important;
    grid-template-columns:repeat(2,minmax(70px,1fr))!important;
  }
  .lrmce-vocab th:last-child,
  .lrmce-vocab td:last-child{
    width:178px!important;
    min-width:178px!important;
  }
  .lrmce button.lrmce-direct-voice,
  .lrmce .lrmce-vocab button.lrmce-direct-voice{
    font-size:12px!important;
    padding:6px 7px!important;
  }
}


/* v1.0.4 — exact simple audio layout requested:
   🔊 Marin   🔊 Nova
   🔊 Cedar   🔊 Onyx
   No circles, no pills, no popup, no vertical label. */
.lrmce-audio-choices{
  display:grid!important;
  grid-template-columns:max-content max-content!important;
  column-gap:13px!important;
  row-gap:6px!important;
  align-items:center!important;
  justify-content:start!important;
  width:max-content!important;
  min-width:150px!important;
  max-width:none!important;
  padding:0!important;
  margin:0!important;
  overflow:visible!important;
}

.lrmce button.lrmce-audio-choice,
.lrmce .lrmce-vocab button.lrmce-audio-choice{
  all:unset!important;
  box-sizing:border-box!important;
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  cursor:pointer!important;
  color:#101828!important;
  -webkit-text-fill-color:#101828!important;
  font-family:inherit!important;
  font-size:14px!important;
  font-weight:800!important;
  line-height:1.25!important;
  white-space:nowrap!important;
  padding:1px 0!important;
  margin:0!important;
  border:0!important;
  border-radius:0!important;
  background:none!important;
  box-shadow:none!important;
  text-decoration:none!important;
  opacity:1!important;
}

.lrmce button.lrmce-audio-choice:hover .lrmce-audio-name,
.lrmce button.lrmce-audio-choice:focus .lrmce-audio-name{
  color:#175cd3!important;
  -webkit-text-fill-color:#175cd3!important;
  text-decoration:underline!important;
}

.lrmce button.lrmce-audio-choice:focus{
  outline:2px solid #8db4e4!important;
  outline-offset:2px!important;
}

.lrmce button.lrmce-audio-choice.is-playing .lrmce-audio-name{
  color:#067647!important;
  -webkit-text-fill-color:#067647!important;
}

.lrmce-audio-speaker{
  display:inline-block!important;
  width:auto!important;
  height:auto!important;
  min-width:0!important;
  font-size:14px!important;
  line-height:1!important;
  color:inherit!important;
  -webkit-text-fill-color:initial!important;
}

.lrmce-audio-name{
  display:inline!important;
  color:#101828!important;
  -webkit-text-fill-color:#101828!important;
  font-size:14px!important;
  font-weight:800!important;
  line-height:1.25!important;
}

/* Audio cell width only. No vertical scrolling. */
.lrmce-vocab th:last-child,
.lrmce-vocab td:last-child{
  width:180px!important;
  min-width:180px!important;
  max-width:180px!important;
}

.lrmce-table-wrap{
  overflow-x:auto!important;
  overflow-y:hidden!important;
  max-height:none!important;
}

@media(max-width:760px){
  .lrmce-audio-choices{
    column-gap:10px!important;
    row-gap:5px!important;
    min-width:142px!important;
  }
  .lrmce button.lrmce-audio-choice,
  .lrmce .lrmce-vocab button.lrmce-audio-choice,
  .lrmce-audio-name{
    font-size:13px!important;
  }
  .lrmce-audio-speaker{
    font-size:13px!important;
  }
  .lrmce-vocab th:last-child,
  .lrmce-vocab td:last-child{
    width:168px!important;
    min-width:168px!important;
    max-width:168px!important;
  }
}


/* v1.0.5 — alphabet writing: make uppercase/lowercase pairing obvious */
.lrmce-writing-tab{
  letter-spacing:.03em;
}
.lrmce-writing-card[data-writing-word*=" "] canvas{
  min-height:190px;
}


/* v1.0.6 — Alphabet Review */
.lrmce-alphabet-modes{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin:16px 0 14px;
}
.lrmce .lrmce-alphabet-modes button{
  min-height:48px;
  padding:10px 13px!important;
  border:1px solid rgba(255,255,255,.75)!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#102a56!important;
  -webkit-text-fill-color:#102a56!important;
  font-weight:900!important;
  text-align:center!important;
}
.lrmce .lrmce-alphabet-modes button:hover{
  background:#f7dc8c!important;
  border-color:#f7dc8c!important;
}
.lrmce-alphabet-board{
  min-height:190px;
  padding:18px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:12px;
  background:rgba(255,255,255,.10);
}
.lrmce-alpha-question{
  margin:0 0 15px!important;
  color:#fff!important;
  font-size:18px!important;
  line-height:1.55!important;
}
.lrmce-alpha-question strong{
  color:#f6d470!important;
  font-size:27px!important;
}
.lrmce .lrmce-alpha-play{
  display:inline-flex!important;
  align-items:center!important;
  gap:7px!important;
  margin:0 0 14px!important;
  padding:10px 15px!important;
  border:0!important;
  border-radius:9px!important;
  background:#f6d470!important;
  color:#102a56!important;
  -webkit-text-fill-color:#102a56!important;
  font-weight:900!important;
}
.lrmce .lrmce-alpha-play.is-playing{
  background:#b7f0cb!important;
}
.lrmce-alpha-choices{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  margin-top:10px;
}
.lrmce .lrmce-alpha-choices button{
  min-height:58px;
  padding:10px!important;
  border:2px solid transparent!important;
  border-radius:10px!important;
  background:#fff!important;
  color:#102a56!important;
  -webkit-text-fill-color:#102a56!important;
  font-size:21px!important;
  font-weight:900!important;
}
.lrmce .lrmce-alpha-choices button:hover:not(:disabled){
  border-color:#f6d470!important;
}
.lrmce .lrmce-alpha-choices button.is-correct{
  background:#d1fadf!important;
  border-color:#32d583!important;
  color:#05603a!important;
  -webkit-text-fill-color:#05603a!important;
}
.lrmce .lrmce-alpha-choices button.is-wrong{
  background:#fee4e2!important;
  border-color:#f97066!important;
  color:#912018!important;
  -webkit-text-fill-color:#912018!important;
}
.lrmce-alpha-feedback{
  margin-top:14px;
  padding:11px 13px;
  border-radius:9px;
  font-weight:900;
}
.lrmce-alpha-feedback.is-correct{
  background:#d1fadf;
  color:#05603a;
}
.lrmce-alpha-feedback.is-wrong{
  background:#fee4e2;
  color:#912018;
}
.lrmce .lrmce-alpha-next{
  margin-top:12px!important;
  padding:10px 14px!important;
  border:0!important;
  border-radius:9px!important;
  background:#f6d470!important;
  color:#102a56!important;
  -webkit-text-fill-color:#102a56!important;
  font-weight:900!important;
}
@media(max-width:760px){
  .lrmce-alphabet-modes{
    grid-template-columns:1fr;
  }
  .lrmce-alpha-choices{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* v1.0.11 — optional sample word block inside word explanations */
.lrmce-sample-word{
  margin:14px 0 10px;
  padding:12px 14px;
  border:1px solid var(--line);
  border-radius:10px;
  background:#f8fafc;
}
.lrmce-sample-word>h3{margin:0 0 8px}
.lrmce-sample-word-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.lrmce-sample-word-text{
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:8px 12px;
  min-width:0;
}
.lrmce-sample-word-text strong{font-size:20px}
.lrmce-sample-word-text small{
  color:var(--muted);
  font-size:14px;
}
.lrmce-sample-support{
  font-weight:700;
  font-size:17px;
}
.lrmce-sample-word-audio{flex:0 0 auto}
@media(max-width:760px){
  .lrmce-sample-word-row{
    align-items:flex-start;
    flex-direction:column;
  }
}

/* v1.0.12 — optional example-sentence audio.
   Each example can show one female and one male Audio Library v2 voice. */
.lrmce-example{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:14px;
  align-items:center;
}
.lrmce-example-text{min-width:0}
.lrmce-example-audio{justify-self:end}
.lrmce-example .lrmce-sentence-audio{
  grid-template-columns:max-content max-content!important;
  min-width:0!important;
  width:max-content!important;
  column-gap:11px!important;
}
.lrmce-example-audio-missing{
  display:inline-block;
  color:#b42318;
  font-size:12px;
  font-weight:700;
  white-space:nowrap;
}
@media(max-width:760px){
  .lrmce-example{grid-template-columns:1fr;gap:7px}
  .lrmce-example-audio{justify-self:start}
  .lrmce-example .lrmce-sentence-audio{grid-template-columns:1fr 1fr!important}
}

/* v1.0.13 — Mandarin vocabulary audio layout.
   Mandarin vocabulary normally uses a female + male pair. Stack those
   voices vertically so long labels such as "Marin - Female" and
   "Cedar - Male" stay inside the AUDIO column instead of widening the
   vocabulary table. English four-voice grids are intentionally unchanged. */
.lrmce-mandarin .lrmce-vocab td:last-child .lrmce-audio-choices{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-start!important;
  justify-content:flex-start!important;
  gap:7px!important;
  width:100%!important;
  min-width:0!important;
  max-width:100%!important;
  overflow:visible!important;
}

.lrmce-mandarin .lrmce-vocab td:last-child .lrmce-audio-choice{
  width:auto!important;
  max-width:100%!important;
}

.lrmce-mandarin .lrmce-vocab th:last-child,
.lrmce-mandarin .lrmce-vocab td:last-child{
  width:180px!important;
  min-width:180px!important;
  max-width:180px!important;
}


/* v1.0.14 — Mandarin Pinyin display rule.
   Pinyin is shown immediately with stored Hanzi learning content. The engine
   never guesses pronunciation: it uses the lesson's Pronunciation fields,
   word-breakdown pronunciation, or the new example-sentence Pinyin field. */
.lrmce-mandarin .lrmce-pinyin-line{
  display:block;
  margin-top:2px;
  color:#475467;
  font-size:.92em;
  font-weight:600;
  line-height:1.35;
}
.lrmce-mandarin .lrmce-example-text .lrmce-hanzi-line{
  display:block;
  color:#102a56;
  font-size:1.06em;
}
.lrmce-mandarin .lrmce-example-text .lrmce-example-english{
  display:block;
  margin-top:4px;
  color:#344054;
}
.lrmce-mandarin .lrmce-practice-prompt .lrmce-pinyin-line{
  font-size:16px;
  margin-top:4px;
}
.lrmce-mandarin .lrmce-review-board .lrmce-pinyin-line{
  font-size:16px;
  margin-top:4px;
}
.lrmce-mandarin .lrmce-flip-pinyin{
  display:block;
  margin-top:8px;
  font-size:17px;
  font-weight:700;
  color:inherit;
}
.lrmce-mandarin .lrmce-hanzi-tabs button{
  display:inline-flex;
  flex-direction:column;
  align-items:center;
  gap:1px;
  min-width:54px;
}
.lrmce-mandarin .lrmce-hanzi-tabs button strong{
  font-size:20px;
  line-height:1.1;
}
.lrmce-mandarin .lrmce-hanzi-tabs button small{
  display:block;
  font-size:11px;
  line-height:1.2;
  font-weight:600;
  color:#667085;
}
.lrmce-mandarin .lrmce-hanzi-tabs button.is-active small{
  color:inherit;
}
.lrmce-hanzi-stage-wrap{
  display:grid;
  gap:6px;
}
.lrmce-hanzi-stage-pinyin{
  min-height:22px;
  text-align:center;
  color:#475467;
  font-size:16px;
  font-weight:700;
}

/* v1.0.15 — richer Mandarin flip-card review.
   Front tests Hanzi recognition without giving away Pinyin. Back reveals
   Pinyin, meaning, short-use text, first example, and the existing connected
   Audio Library voices. English-course cards keep their bilingual pattern. */
.lrmce-flip-header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:18px;
  margin-bottom:14px;
}
.lrmce-flip-header .lrmce-flip-instruction{margin:0!important}
.lrmce-flip-progress{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:4px 10px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  color:#fff;
  font-size:13px;
  font-weight:800;
  white-space:nowrap;
}
.lrmce .lrmce-flip-card{
  display:block!important;
  width:100%!important;
  min-height:330px!important;
  padding:0!important;
  border:0!important;
  border-radius:16px!important;
  background:transparent!important;
  box-shadow:none!important;
  cursor:pointer!important;
  color:inherit!important;
  -webkit-text-fill-color:currentColor!important;
  outline:none;
}
.lrmce .lrmce-flip-card:focus-visible{
  box-shadow:0 0 0 3px rgba(245,215,127,.55)!important;
}
.lrmce-flip-scene,.lrmce-flip-inner{min-height:330px}
.lrmce-flip-face{
  justify-content:flex-start;
  overflow:auto;
}
.lrmce-flip-front{
  justify-content:center;
  gap:20px;
}
.lrmce-mandarin .lrmce-flip-front-word{
  font-size:clamp(64px,10vw,92px);
  line-height:1;
}
.lrmce-flip-question{
  color:#667085;
  font-size:16px;
  font-weight:700;
}
.lrmce-mandarin .lrmce-flip-back{
  gap:7px;
  padding:22px 28px;
}
.lrmce-flip-back-hanzi{
  color:#102a56;
  font-size:clamp(34px,5vw,50px);
  font-weight:900;
  line-height:1.05;
}
.lrmce-flip-back-pinyin{
  color:#475467;
  font-size:19px;
  font-weight:800;
  line-height:1.2;
}
.lrmce-flip-back-meaning{
  margin-top:2px;
  font-size:clamp(26px,4vw,38px)!important;
  line-height:1.1!important;
}
.lrmce-flip-back-use{
  max-width:430px;
  margin:2px auto 4px!important;
  color:#344054!important;
  font-size:15px;
  line-height:1.4;
  text-align:center;
}
.lrmce-flip-example{
  width:min(100%,430px);
  margin-top:4px;
  padding:10px 12px;
  border-left:3px solid #8db4e4;
  border-radius:8px;
  background:rgba(255,255,255,.72);
  text-align:left;
}
.lrmce-flip-example-hanzi,
.lrmce-flip-example-pinyin,
.lrmce-flip-example-english{display:block}
.lrmce-flip-example-hanzi{font-size:16px!important;line-height:1.3!important;color:#102a56}
.lrmce-flip-example-pinyin{margin-top:1px;color:#475467;font-size:14px;font-weight:700}
.lrmce-flip-example-english{margin-top:2px;color:#344054;font-size:14px}
.lrmce-flip-audio{margin-top:5px}
.lrmce-mandarin .lrmce-flip-audio .lrmce-audio-choices{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  align-items:center!important;
  gap:8px!important;
  width:auto!important;
}
.lrmce-mandarin .lrmce-flip-audio .lrmce-audio-choice{
  width:auto!important;
  max-width:none!important;
  padding:5px 9px!important;
  border:1px solid #d0d5dd!important;
  border-radius:8px!important;
  background:#fff!important;
}
.lrmce-flip-controls{
  justify-content:center;
  gap:10px;
}
.lrmce-flip-controls button:disabled{
  opacity:.45;
  cursor:not-allowed!important;
}
@media(max-width:760px){
  .lrmce-flip-header{display:block}
  .lrmce-flip-progress{margin-top:8px}
  .lrmce-flip-scene,.lrmce-flip-inner,.lrmce .lrmce-flip-card{min-height:360px!important}
  .lrmce-mandarin .lrmce-flip-back{padding:18px}
  .lrmce-mandarin .lrmce-flip-audio .lrmce-audio-choices{flex-direction:column!important}
}

/* v1.0.16 — cleaner Word Breakdown component */
.lrmce-breakdown{
  margin:16px 0;
  padding:0!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
}

.lrmce-breakdown h4{
  margin:0 0 10px!important;
  padding:0!important;
  color:#102a56!important;
  font-size:17px!important;
  font-weight:900!important;
}

.lrmce-breakdown-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}

.lrmce-breakdown-compact .lrmce-breakdown-grid{
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;
}

.lrmce-part{
  min-width:0;
  padding:14px 16px!important;
  border:1px solid #d7e1ee!important;
  border-left:4px solid #d5a12a!important;
  border-radius:10px!important;
  background:#fff!important;
  box-shadow:0 1px 2px rgba(16,42,86,.04);
}

.lrmce-part strong{
  display:block;
  color:#102a56!important;
  font-size:27px!important;
  line-height:1.15!important;
}

.lrmce-part span{
  display:block;
  margin-top:3px!important;
  color:#596579!important;
  font-size:14px!important;
  line-height:1.35!important;
  font-style:italic;
}

.lrmce-part b{
  display:block;
  margin-top:8px!important;
  color:#8a6110!important;
  font-size:16px!important;
  line-height:1.35!important;
}

.lrmce-part p{
  margin:6px 0 0!important;
  color:#26364d!important;
  font-size:15px!important;
  line-height:1.5!important;
}

.lrmce-breakdown-single .lrmce-breakdown-grid{
  grid-template-columns:1fr!important;
}

.lrmce-breakdown-single .lrmce-part{
  display:grid!important;
  grid-template-columns:minmax(64px,88px) minmax(90px,115px) minmax(115px,155px) minmax(0,1fr);
  align-items:center;
  column-gap:18px;
  width:100%;
  padding:16px 18px!important;
}

.lrmce-breakdown-single .lrmce-part strong,
.lrmce-breakdown-single .lrmce-part span,
.lrmce-breakdown-single .lrmce-part b,
.lrmce-breakdown-single .lrmce-part p{
  margin:0!important;
}

.lrmce-breakdown-single .lrmce-part strong{
  font-size:31px!important;
}

@media(max-width:760px){
  .lrmce-breakdown-grid,
  .lrmce-breakdown-compact .lrmce-breakdown-grid{
    grid-template-columns:1fr!important;
  }

  .lrmce-breakdown-single .lrmce-part{
    display:block!important;
    padding:14px 16px!important;
  }

  .lrmce-breakdown-single .lrmce-part span{
    margin-top:3px!important;
  }

  .lrmce-breakdown-single .lrmce-part b{
    margin-top:8px!important;
  }

  .lrmce-breakdown-single .lrmce-part p{
    margin-top:6px!important;
  }
}

/* v1.0.17 — keep flip-card pronunciation audio visible.
   Audio now appears immediately after the revealed meaning, before longer
   teaching text/examples. The card is also slightly taller on desktop so
   ordinary Lesson 1 vocabulary cards do not need an internal scrollbar. */
.lrmce .lrmce-flip-card,
.lrmce-flip-scene,
.lrmce-flip-inner{
  min-height:390px!important;
}

.lrmce-mandarin .lrmce-flip-back{
  overflow-y:auto;
  justify-content:flex-start!important;
}

.lrmce-flip-audio{
  width:100%;
  margin:2px 0 5px!important;
  text-align:center;
}

.lrmce-flip-audio-label{
  display:block;
  margin-bottom:5px;
  color:#667085;
  font-size:12px;
  font-weight:800;
  letter-spacing:.04em;
  text-transform:uppercase;
}

.lrmce-mandarin .lrmce-flip-audio .lrmce-audio-choices{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:wrap!important;
  justify-content:center!important;
  align-items:center!important;
  gap:7px!important;
}

@media(max-width:760px){
  .lrmce .lrmce-flip-card,
  .lrmce-flip-scene,
  .lrmce-flip-inner{
    min-height:430px!important;
  }
}


/* v1.0.19 — reusable lesson introduction and audio teaching examples */
.lrmce-introduction-box{
  background:#f8fbff;
  border:1px solid #d7e3f3;
  border-radius:14px;
  padding:22px;
}
.lrmce-recommended-reading{
  display:block;
  margin:0 0 18px;
  padding:14px 16px;
  border-radius:10px;
  background:#eef5ff;
  border:1px solid #cbdcf4;
  font-weight:700;
  text-decoration:none;
}
.lrmce-introduction-copy > :first-child{margin-top:0;}
.lrmce-introduction-copy > :last-child{margin-bottom:0;}
.lrmce-teaching-examples{
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid rgba(0,0,0,.1);
}
.lrmce-teaching-examples h4{
  margin:0 0 12px;
  font-size:1rem;
  letter-spacing:.02em;
}
.lrmce-teaching-example{
  margin-top:10px;
}
.lrmv1-teaching-examples-admin{
  margin-top:12px;
  padding:12px 14px;
  border-left:4px solid #2271b1;
  background:#f6f7f7;
}


/* v1.0.23 — larger, clearer expand/collapse indicator on Teaching Sections.
   The whole heading remains clickable; this simply gives the + / − cue a
   stronger visual/touch presence without changing lesson content or data. */
.lrmce .lrmce-word-head > b{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  min-width:56px;
  min-height:40px;
  padding:4px 8px;
  border:1px solid rgba(16,42,86,.16);
  border-radius:9px;
  background:rgba(255,255,255,.76);
  color:#102a56;
  font-size:22px!important;
  font-weight:900;
  line-height:1;
  letter-spacing:.02em;
}
@media(max-width:760px){
  .lrmce .lrmce-word-head > b{
    min-width:58px;
    min-height:42px;
    font-size:24px!important;
    padding:4px 9px;
  }
}

/* v1.1.3 — Course Dictionary UI polish */
.lrmdict{max-width:1100px;margin:0 auto 48px;color:#17233b}
.lrmdict-hero{padding:28px;border-radius:18px;background:linear-gradient(135deg,#102a56,#183f7a);color:#fff;box-shadow:0 10px 28px rgba(16,42,86,.16)}
.lrmdict-hero h1{margin:0 0 8px;color:#fff;font-size:clamp(1.85rem,4vw,2.8rem);line-height:1.08;letter-spacing:-.02em}
.lrmdict-hero p{margin:0 0 20px;max-width:760px;color:rgba(255,255,255,.92);line-height:1.5}
.lrmdict-search{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.lrmdict-search input[type="search"]{flex:1 1 420px;min-height:48px;padding:0 16px;border:0;border-radius:11px;background:#fff;color:#17233b;font-size:17px;box-shadow:inset 0 0 0 1px rgba(16,42,86,.08)}
.lrmdict-search button,.lrmdict-clear{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 20px;border:0;border-radius:11px;background:#f2c14e;color:#102a56;font-weight:800;text-decoration:none;cursor:pointer}
.lrmdict-clear{background:rgba(255,255,255,.14);color:#fff;border:1px solid rgba(255,255,255,.24)}
.lrmdict-summary{margin:18px 2px 11px;color:#748196;font-size:.92rem;font-weight:600}
.lrmdict-results{display:grid;gap:18px}
.lrmdict-entry{overflow:hidden;border:1px solid #dce4ee;border-radius:16px;background:#fff;box-shadow:0 5px 18px rgba(22,43,77,.06)}
.lrmdict-entry-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:21px 22px;background:#f7faff;border-bottom:1px solid #e3eaf2}
.lrmdict-headword-block{min-width:0}
.lrmdict-entry-head h2{margin:0;color:#102a56;font-size:clamp(1.85rem,4vw,2.45rem);font-weight:800;line-height:1.05;letter-spacing:-.02em}
.lrmdict-entry-head .lrmdict-pronunciation{display:block;margin:7px 0 0;color:#355f91;font-size:1.03rem;font-weight:750;line-height:1.2}
.lrmdict-pinyin{display:block;margin:4px 0 0;color:#49698d;font-size:.98rem;font-weight:700}
.lrmdict-audio{flex:0 0 auto}
/* Dictionary buttons must not inherit the site's red button styling. */
.lrmdict .lrmce-audio-choices{display:flex!important;grid-template-columns:none!important;flex-wrap:wrap!important;gap:8px!important;align-items:center!important;justify-content:flex-end!important;width:auto!important;min-width:0!important;max-width:100%!important;margin:0!important;padding:0!important}
.lrmdict button.lrmce-audio-choice{all:unset!important;box-sizing:border-box!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;min-height:38px!important;padding:7px 11px!important;border:1px solid #173f78!important;border-radius:9px!important;background:#173f78!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font-family:inherit!important;font-size:.88rem!important;font-weight:800!important;line-height:1!important;white-space:nowrap!important;cursor:pointer!important;box-shadow:0 2px 5px rgba(16,42,86,.10)!important;text-decoration:none!important}
.lrmdict button.lrmce-audio-choice:hover,.lrmdict button.lrmce-audio-choice:focus{background:#102a56!important;border-color:#102a56!important;outline:2px solid rgba(242,193,78,.55)!important;outline-offset:2px!important}
.lrmdict button.lrmce-audio-choice.is-playing{background:#0f6b4f!important;border-color:#0f6b4f!important}
.lrmdict .lrmce-audio-speaker{font-size:.92rem!important;line-height:1!important}
.lrmdict .lrmce-audio-name{color:#fff!important;-webkit-text-fill-color:#fff!important;text-decoration:none!important}
.lrmdict-senses{padding:4px 22px 18px}
.lrmdict-sense{padding:19px 0;border-bottom:1px solid #edf1f5}
.lrmdict-sense:last-child{border-bottom:0}
.lrmdict-sense h3{display:flex;align-items:center;gap:7px;margin:0 0 10px;color:#1d3151;font-size:1.16rem;line-height:1.3}
.lrmdict-sense-number{display:inline-flex;align-items:center;justify-content:center;flex:0 0 25px;width:25px;height:25px;border-radius:50%;background:#e9f0fa;color:#102a56;font-size:.82rem}
.lrmdict-sense-title{font-weight:800}
.lrmdict-short-use{margin:0 0 12px;color:#263a5a;font-weight:750;line-height:1.55}
.lrmdict-detail,.lrmdict-usage,.lrmdict-note{display:grid;grid-template-columns:92px minmax(0,1fr);gap:10px;align-items:start;line-height:1.55}
.lrmdict-detail,.lrmdict-usage{margin:10px 0}
.lrmdict-field-label{color:#102a56;font-size:.82rem;font-weight:850;letter-spacing:.01em;text-transform:uppercase}
.lrmdict-examples{margin-top:16px;padding:15px;border-radius:12px;background:#faf8f1;border:1px solid #eee5c9}
.lrmdict-examples h4{margin:0 0 10px;color:#70581b;font-size:1.02rem}
.lrmdict-example{display:flex;justify-content:space-between;gap:14px;padding:11px 0;border-top:1px solid rgba(112,88,27,.12)}
.lrmdict-example:first-of-type{border-top:0;padding-top:0}
.lrmdict-example>div:first-child{min-width:0}
.lrmdict-example strong,.lrmdict-example span{display:block}
.lrmdict-hanzi{font-size:1.18rem;color:#102a56;line-height:1.35}
.lrmdict-example-audio{align-self:center;flex:0 0 auto}
.lrmdict-note{margin-top:14px;padding:11px 12px;border-left:4px solid #84a6ca;background:#f3f7fb;border-radius:0 8px 8px 0}
.lrmdict-breakdown{margin:18px 22px 0;padding:14px;border:1px solid #d9e6f3;border-radius:12px;background:#f6fbff}
.lrmdict-breakdown h3{margin:0 0 8px;color:#102a56;font-size:1rem}
.lrmdict-breakdown-row{display:grid;grid-template-columns:minmax(34px,auto) minmax(70px,auto) minmax(90px,1fr) 2fr;gap:10px;padding:7px 0;border-top:1px solid #e4edf5;align-items:baseline}
.lrmdict-breakdown-row:first-of-type{border-top:0}
.lrmdict-breakdown-row strong{font-size:1.2rem;color:#102a56}
.lrmdict-breakdown-pronunciation{color:#49698d;font-weight:700}
.lrmdict-breakdown-meaning{color:#263a5a}
.lrmdict-breakdown-row small{color:#65758a}
.lrmdict-breakdown.is-single{padding:11px 14px}
.lrmdict-breakdown.is-single h3{margin-bottom:4px}
.lrmdict-breakdown.is-single .lrmdict-breakdown-row{grid-template-columns:minmax(34px,auto) minmax(68px,auto) 1fr;padding:4px 0}
.lrmdict-lessons{padding:14px 22px;background:#fbfcfe;border-top:1px solid #e9eef4;color:#536277}
.lrmdict-lessons a{font-weight:700}
.lrmdict-empty{padding:28px;border:1px dashed #bdc9d8;border-radius:14px;text-align:center;background:#fbfcfe}
.lrmdict-pagination{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:22px;padding:12px 2px}
.lrmdict-pagination a{font-weight:800;text-decoration:none}
@media(max-width:700px){
  .lrmdict-hero{padding:20px 16px;border-radius:14px}
  .lrmdict-search{display:grid;grid-template-columns:1fr 1fr}
  .lrmdict-search input[type="search"]{grid-column:1/-1;width:100%;min-width:0}
  .lrmdict-entry-head{padding:17px 16px;align-items:flex-start;flex-direction:column}
  .lrmdict-entry-head h2{font-size:2rem}
  .lrmdict-audio{width:100%}
  .lrmdict .lrmce-audio-choices{justify-content:flex-start!important}
  .lrmdict-senses{padding:2px 16px 14px}
  .lrmdict-detail,.lrmdict-usage,.lrmdict-note{grid-template-columns:1fr;gap:3px}
  .lrmdict-breakdown{margin:14px 16px 0}
  .lrmdict-breakdown-row{grid-template-columns:52px 1fr;gap:4px 10px}
  .lrmdict-breakdown-row small{grid-column:1/-1}
  .lrmdict-breakdown.is-single .lrmdict-breakdown-row{grid-template-columns:44px 66px 1fr;gap:5px 8px}
  .lrmdict-example{flex-direction:column}
  .lrmdict-example-audio{align-self:flex-start}
  .lrmdict-lessons{padding:13px 16px}
}

/* v1.1.4 — Random Review Card */
.lrmce-random-review-board{
  margin-top:14px;
  padding:16px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:12px;
  background:rgba(255,255,255,.08);
}
.lrmce-random-review-intro{
  margin:0 0 14px;
  text-align:center;
  color:#eef4ff;
  font-weight:800;
}
.lrmce-random-scene{
  width:min(100%,560px);
  min-height:300px;
  margin:0 auto;
  perspective:1100px;
}
.lrmce-random-card{
  position:relative;
  width:100%;
  min-height:300px;
  cursor:pointer;
  border-radius:20px;
  outline:none;
}
.lrmce-random-card:focus-visible{box-shadow:0 0 0 4px rgba(255,255,255,.45)}
.lrmce-random-inner{
  position:relative;
  width:100%;
  min-height:300px;
  transform-style:preserve-3d;
  transition:transform .42s ease;
}
.lrmce-random-card.is-flipped .lrmce-random-inner{transform:rotateY(180deg)}
.lrmce-random-face{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:28px;
  border-radius:20px;
  backface-visibility:hidden;
  -webkit-backface-visibility:hidden;
  color:#102a56;
  box-shadow:0 14px 32px rgba(0,0,0,.20);
  text-align:center;
  overflow:auto;
}
.lrmce-random-back{transform:rotateY(180deg);background:rgba(255,255,255,.94)}
.lrmce-random-card.is-theme-0 .lrmce-random-front{background:linear-gradient(135deg,#ffd56a,#fff2bd)}
.lrmce-random-card.is-theme-1 .lrmce-random-front{background:linear-gradient(135deg,#ff9fb6,#ffe0e8)}
.lrmce-random-card.is-theme-2 .lrmce-random-front{background:linear-gradient(135deg,#8cc9ff,#e0f2ff)}
.lrmce-random-card.is-theme-3 .lrmce-random-front{background:linear-gradient(135deg,#c5a7ff,#eee5ff)}
.lrmce-random-card.is-theme-4 .lrmce-random-front{background:linear-gradient(135deg,#8be0b2,#e0f8ea)}
.lrmce-random-card.is-theme-5 .lrmce-random-front{background:linear-gradient(135deg,#77ddd4,#dcfbf8)}
.lrmce-random-card.is-theme-6 .lrmce-random-front{background:linear-gradient(135deg,#ffb873,#ffead5)}
.lrmce-random-kicker{font-size:12px;font-weight:900;letter-spacing:.10em;text-transform:uppercase;opacity:.72}
.lrmce-random-word{font-size:clamp(38px,8vw,68px);line-height:1.05;overflow-wrap:anywhere}
.lrmce-random-pronunciation{font-size:19px;font-weight:800;color:#2f5f96}
.lrmce-random-answer{font-size:clamp(22px,4vw,32px);line-height:1.25}
.lrmce-random-prompt{font-weight:800}
.lrmce-random-use{margin:4px 0 0!important;color:#344054!important;max-width:46ch}
.lrmce-random-example{margin-top:6px;padding-top:10px;border-top:1px solid rgba(16,42,86,.18);width:100%;display:grid;gap:2px}
.lrmce-random-example strong{font-size:18px}
.lrmce-random-example span{display:block;color:#344054}
.lrmce-random-controls{display:flex;justify-content:center;gap:10px;flex-wrap:wrap;margin-top:14px}
.lrmce-random-controls button{
  background:#fff!important;
  border:1px solid rgba(255,255,255,.9)!important;
  color:#102a56!important;
  -webkit-text-fill-color:#102a56!important;
  border-radius:9px!important;
  padding:10px 14px!important;
  font-weight:900!important;
  cursor:pointer;
}
.lrmce-random-controls button:hover{background:#f5d77f!important;border-color:#f5d77f!important}
.lrmce-random-controls .is-playing{background:#d1fadf!important}
@media(prefers-reduced-motion:reduce){.lrmce-random-inner{transition:none}}
@media(max-width:760px){
  .lrmce-random-review-board{padding:12px}
  .lrmce-random-scene,.lrmce-random-card,.lrmce-random-inner{min-height:280px}
  .lrmce-random-face{padding:22px 18px}
  .lrmce-random-controls{display:grid;grid-template-columns:1fr;width:100%}
  .lrmce-random-controls button{width:100%}
}

/* v1.1.6 — Audio Match drag/tap review */
.lrmce-audio-match-board{
  margin-top:16px;
  padding:18px;
  border:1px solid #d9e2ef;
  border-radius:14px;
  background:#fff;
}
.lrmce-audio-match-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
}
.lrmce-audio-match-instruction{
  margin:0!important;
  font-weight:800;
  color:#14213d;
  line-height:1.5;
}
.lrmce-audio-match-count{
  flex:0 0 auto;
  font-size:12px;
  font-weight:900;
  color:#52657f;
  background:#f2f5f9;
  border-radius:999px;
  padding:6px 9px;
}
.lrmce-audio-match-bank{
  min-height:58px;
  display:flex;
  flex-wrap:wrap;
  gap:9px;
  align-items:center;
  padding:10px 0 16px;
}
.lrmce-audio-match-chip{
  appearance:none;
  -webkit-appearance:none;
  border:1px solid #d8e0eb!important;
  background:#f1f4f8!important;
  color:#102a56!important;
  -webkit-text-fill-color:#102a56!important;
  border-radius:8px!important;
  padding:9px 14px!important;
  font-size:18px!important;
  line-height:1.15!important;
  font-weight:900!important;
  box-shadow:none!important;
  cursor:grab;
  touch-action:manipulation;
}
.lrmce-english .lrmce-audio-match-chip{font-size:16px!important}
.lrmce-audio-match-chip:hover{background:#e7edf5!important;border-color:#b8c7da!important}
.lrmce-audio-match-chip.is-selected{
  background:#fff3bf!important;
  border-color:#d8a90b!important;
  box-shadow:0 0 0 3px rgba(216,169,11,.16)!important;
}
.lrmce-audio-match-chip.is-dragging{opacity:.55;cursor:grabbing}
.lrmce-audio-match-rows{display:grid;gap:9px}
.lrmce-audio-match-row{
  display:grid;
  grid-template-columns:76px minmax(0,1fr);
  min-height:64px;
  border:1px solid #dce4ef;
  border-radius:8px;
  overflow:hidden;
  background:#fff;
  transition:border-color .15s ease,background .15s ease,box-shadow .15s ease;
}
.lrmce-audio-match-row.is-correct{
  border-color:#2f9e62;
  background:#f0fbf5;
  box-shadow:0 0 0 2px rgba(47,158,98,.10);
}
.lrmce-audio-match-row.is-wrong{
  border-color:#d84a4a;
  background:#fff5f5;
  box-shadow:0 0 0 2px rgba(216,74,74,.08);
}
.lrmce-audio-match-play{
  width:100%!important;
  height:100%!important;
  min-height:62px!important;
  display:grid!important;
  place-items:center!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  border-right:1px solid #dce4ef!important;
  border-radius:0!important;
  background:#fff!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  font-size:0!important;
  cursor:pointer;
}
.lrmce-audio-match-play::before{
  content:'▶';
  width:32px;
  height:32px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:#173d6b;
  color:#fff;
  font-size:13px;
  line-height:1;
  padding-left:2px;
  box-shadow:0 2px 6px rgba(16,42,86,.2);
}
.lrmce-audio-match-play.is-playing::before{background:#d8a90b}
.lrmce-audio-match-play.is-missing::before{content:'!';background:#b42318;padding-left:0}
.lrmce-audio-match-drop{
  min-width:0;
  display:flex;
  align-items:center;
  padding:8px 12px;
  outline:none;
  background:#fff;
  cursor:pointer;
}
.lrmce-audio-match-drop.is-over,
.lrmce-audio-match-drop:focus-visible{
  background:#eef6ff;
  box-shadow:inset 0 0 0 2px #4b84c6;
}
.lrmce-audio-match-placeholder{
  color:#8a98aa;
  font-size:13px;
  font-weight:700;
}
.lrmce-audio-match-drop .lrmce-audio-match-chip{cursor:grab}
.lrmce-audio-match-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin-top:16px;
}
.lrmce-audio-match-status{
  min-height:24px;
  font-weight:900;
  color:#52657f;
}
.lrmce-audio-match-status.is-correct{color:#177245}
.lrmce-audio-match-status.is-wrong{color:#b42318}
.lrmce-audio-match-actions{display:flex;gap:9px;justify-content:flex-end}
.lrmce-audio-match-actions button{
  border-radius:999px!important;
  padding:10px 18px!important;
  font-weight:900!important;
  cursor:pointer;
}
.lrmce-audio-match-reset{
  background:#fff!important;
  border:1px solid #cdd7e5!important;
  color:#173d6b!important;
  -webkit-text-fill-color:#173d6b!important;
}
.lrmce-audio-match-check{
  background:#0b63f6!important;
  border:1px solid #0b63f6!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
.lrmce-review-note{
  margin-top:12px!important;
  padding:10px 12px;
  border-radius:8px;
  background:#fff8df;
  color:#6f5600;
  font-weight:700;
}
@media(max-width:760px){
  .lrmce-audio-match-board{padding:12px}
  .lrmce-audio-match-head{display:block}
  .lrmce-audio-match-count{display:inline-block;margin-top:8px}
  .lrmce-audio-match-bank{gap:7px;padding-bottom:13px}
  .lrmce-audio-match-chip{font-size:16px!important;padding:8px 11px!important}
  .lrmce-english .lrmce-audio-match-chip{font-size:15px!important}
  .lrmce-audio-match-row{grid-template-columns:58px minmax(0,1fr);min-height:58px}
  .lrmce-audio-match-play{min-height:56px!important}
  .lrmce-audio-match-play::before{width:30px;height:30px}
  .lrmce-audio-match-drop{padding:7px 9px}
  .lrmce-audio-match-footer{display:block}
  .lrmce-audio-match-actions{margin-top:10px;display:grid;grid-template-columns:1fr 1fr}
  .lrmce-audio-match-actions button{width:100%}
}

/* v1.2.7 — optional Bonus Word card. */
.lrmce-bonus-word-card{
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:16px;
  padding:18px 20px;
  border:1px solid #d7c27a;
  border-radius:14px;
  background:linear-gradient(135deg,#fffdf5 0%,#fff9e8 100%);
  box-shadow:0 6px 18px rgba(16,42,86,.05);
}
.lrmce-bonus-word-mark{
  display:flex;
  align-items:center;
  justify-content:center;
  width:42px;
  height:42px;
  border-radius:50%;
  background:#fff3bf;
  border:1px solid #dfbf68;
  color:#805d08;
  font-size:20px;
  line-height:1;
}
.lrmce-bonus-word-copy{
  min-width:0;
  display:flex;
  flex-wrap:wrap;
  align-items:baseline;
  gap:6px 12px;
}
.lrmce-bonus-word-target{
  color:#102a56;
  font-size:25px;
  font-weight:900;
  line-height:1.2;
}
.lrmce-bonus-word-pronunciation{
  color:#475467;
  font-size:15px;
  line-height:1.4;
}
.lrmce-bonus-word-support{
  flex-basis:100%;
  color:#344054;
  font-size:16px;
  line-height:1.45;
}
.lrmce-bonus-word-audio{
  min-width:0;
  justify-self:end;
}
.lrmce-bonus-word-audio .lrmce-audio-choices{
  max-width:220px!important;
}

@media(max-width:760px){
  .lrmce-bonus-word-card{
    grid-template-columns:auto minmax(0,1fr);
    gap:12px;
    padding:15px;
  }
  .lrmce-bonus-word-mark{
    width:38px;
    height:38px;
    font-size:18px;
  }
  .lrmce-bonus-word-target{font-size:22px}
  .lrmce-bonus-word-audio{
    grid-column:1 / -1;
    justify-self:start;
    padding-left:50px;
  }
  .lrmce-bonus-word-audio .lrmce-audio-choices{
    max-width:100%!important;
  }
}

@media(max-width:480px){
  .lrmce-bonus-word-card{grid-template-columns:1fr}
  .lrmce-bonus-word-mark{display:none}
  .lrmce-bonus-word-audio{
    grid-column:auto;
    padding-left:0;
  }
}

/* v1.1.7.5 — global mobile vocabulary cards
   Desktop keeps the full six-column table. Phones stack every vocabulary row
   into a readable card so no lesson depends on horizontal scrolling. */
@media (max-width:760px){
  .lrmce .lrmce-table-wrap{
    overflow:visible!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
  }
  .lrmce .lrmce-vocab{
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    border:0!important;
  }
  .lrmce .lrmce-vocab thead{
    display:none!important;
  }
  .lrmce .lrmce-vocab tbody{
    display:grid!important;
    gap:12px!important;
    width:100%!important;
  }
  .lrmce .lrmce-vocab tbody tr{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    grid-template-areas:
      "support target"
      "pron pron"
      "meaning meaning"
      "writing audio"!important;
    width:100%!important;
    min-width:0!important;
    border:1px solid #d9e3ef!important;
    border-radius:12px!important;
    overflow:hidden!important;
    box-shadow:0 2px 8px rgba(16,42,86,.06)!important;
  }
  .lrmce.lrmce-mandarin .lrmce-vocab tbody tr{
    grid-template-areas:
      "target pron"
      "support support"
      "meaning meaning"
      "writing audio"!important;
  }
  .lrmce .lrmce-vocab td{
    display:block!important;
    width:auto!important;
    min-width:0!important;
    max-width:none!important;
    padding:9px 10px!important;
    border:0!important;
    text-align:left!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
  .lrmce .lrmce-vocab td::before{
    content:attr(data-label);
    display:block;
    margin:0 0 3px;
    color:#667085;
    font-size:10px;
    line-height:1.2;
    font-weight:900;
    letter-spacing:.025em;
    text-transform:uppercase;
  }
  .lrmce .lrmce-vocab-support{grid-area:support!important}
  .lrmce .lrmce-vocab-target{grid-area:target!important}
  .lrmce .lrmce-vocab-pronunciation{grid-area:pron!important}
  .lrmce .lrmce-vocab-meaning{grid-area:meaning!important;border-top:1px solid rgba(148,163,184,.22)!important}
  .lrmce .lrmce-vocab-writing{grid-area:writing!important;border-top:1px solid rgba(148,163,184,.22)!important}
  .lrmce .lrmce-vocab-audio{grid-area:audio!important;border-top:1px solid rgba(148,163,184,.22)!important}

  .lrmce .lrmce-vocab-target.lrmce-mainword,
  .lrmce .lrmce-vocab-support.lrmce-mainword{
    font-size:18px!important;
    line-height:1.25!important;
  }
  .lrmce .lrmce-vocab-writing .lrmce-write-jump,
  .lrmce .lrmce-vocab-writing .lrmce-hanzi-jump{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:42px!important;
    padding:7px 8px!important;
  }
  .lrmce .lrmce-vocab-audio .lrmce-audio-choices{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    column-gap:6px!important;
    row-gap:5px!important;
    justify-content:stretch!important;
    margin:0!important;
  }
  .lrmce .lrmce-vocab-audio button.lrmce-audio-choice,
  .lrmce .lrmce-vocab-audio button.lrmce-direct-voice{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    min-height:30px!important;
    padding:4px 3px!important;
    justify-content:flex-start!important;
    gap:3px!important;
    font-size:11px!important;
    white-space:nowrap!important;
  }
  .lrmce .lrmce-vocab-audio .lrmce-audio-speaker{
    flex:0 0 auto!important;
    font-size:11px!important;
  }
  .lrmce .lrmce-vocab-audio .lrmce-audio-name{
    min-width:0!important;
    font-size:11px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
  }
}

@media (max-width:380px){
  .lrmce .lrmce-vocab tbody tr{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  }
  .lrmce .lrmce-vocab td{
    padding:8px!important;
  }
  .lrmce .lrmce-vocab-audio button.lrmce-audio-choice,
  .lrmce .lrmce-vocab-audio button.lrmce-direct-voice{
    font-size:10.5px!important;
  }
}


/* v1.1.7.6 — opt-in combined uppercase/lowercase alphabet breakdown */
.lrmce-alphabet-case-breakdown .lrmce-alphabet-case-pair{
  letter-spacing:.04em;
  word-spacing:.35em;
}


/* v1.1.7.7 — small mobile lesson-section breathing room.
   Keeps the existing layout; only prevents headings/cards touching the viewport edge. */
@media (max-width:760px){
  .lrmce .lrmce-section{
    padding-left:14px!important;
    padding-right:14px!important;
  }
}

/* v1.1.7.13 — lightweight Mandarin speaker badge; no external assets. */
.lrmce .lrmce-audio-speaker .lrmce-listen-icon,
.lrmdict .lrmce-audio-speaker .lrmce-listen-icon{
  display:block!important;
  width:32px!important;
  height:32px!important;
  max-width:none!important;
  flex-shrink:0!important;
}
.lrmce button.lrmce-audio-choice:has(.lrmce-listen-icon),
.lrmdict button.lrmce-audio-choice:has(.lrmce-listen-icon){
  min-height:44px!important;
  gap:7px!important;
}
.lrmce button.lrmce-audio-choice:focus-visible,
.lrmdict button.lrmce-audio-choice:focus-visible{
  outline:2px solid #175cd3!important;
  outline-offset:3px!important;
}


/* ==============================================================
   v1.1.7.14 — Modern lesson typography and editorial layout
   Presentation-only override. No markup, event or audio changes.
   Scoped to .lrmce so it does not restyle other site components.
   Uses installed/system fonts; does not load third-party resources.
   ============================================================== */
.lrmce{
  --ink:#17253b;
  --muted:#59677b;
  --line:#dde5f0;
  --blue:#205cb2;
  --gold:#e7bc5c;
  --deep:#102c53;
  color:var(--ink);
  font-family:Inter,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans CJK SC","Microsoft YaHei",sans-serif;
  font-size:16px;
  line-height:1.72;
  letter-spacing:normal;
  font-weight:400;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
.lrmce :is(p,li){line-height:1.75}
.lrmce p{margin-block:0 1em}
.lrmce :is(h1,h2,h3){font-family:inherit;text-wrap:balance;letter-spacing:-.025em}
.lrmce :is(button,input,select,textarea){font-family:inherit}
.lrmce-heading{
  padding:clamp(25px,4vw,42px) clamp(22px,4vw,40px);
  border-radius:18px;
  background:linear-gradient(118deg,#102c53 0%,#194678 100%);
  box-shadow:0 10px 28px rgba(16,44,83,.10);
}
.lrmce-heading h1{
  font-size:clamp(29px,4vw,42px);
  font-weight:750;
  line-height:1.22;
  letter-spacing:-.035em;
  margin:0 0 13px;
}
.lrmce-eyebrow{font-size:11px;font-weight:750;letter-spacing:.09em;text-transform:uppercase;padding:6px 12px;margin-bottom:18px}
.lrmce-secondary{font-size:clamp(17px,2vw,21px);font-weight:550;line-height:1.5;color:#f5d88e}
.lrmce-intro{
  padding:20px 23px;
  margin:24px 0 30px;
  border:1px solid #dfe8f3;
  border-left:4px solid #3974bc;
  border-radius:12px;
  background:#f7faff;
  box-shadow:none;
  color:#33445c;
  font-size:16px;
  line-height:1.85;
}
.lrmce-section{margin-top:clamp(35px,5vw,55px)}
.lrmce-section>h2,.lrmce-review h2{
  font-size:clamp(21px,2.5vw,26px);
  line-height:1.35;
  font-weight:750;
  margin-bottom:21px;
}
.lrmce-section>h2{padding-bottom:15px;color:#15335b}
.lrmce-section>h2:after{width:48px;height:3px;background:#cd9f47}
.lrmce-section>h2 span{font-size:.76em;font-weight:550;color:#8a6932;margin-left:9px}
.lrmce-section-help{
  margin:0 0 19px;
  padding:13px 16px;
  background:#f6f9fe;
  border-left:3px solid #8badde;
  border-radius:0 9px 9px 0;
  font-size:14px;
  line-height:1.75;
}
/* Quiet row styling replaces the older four-colour pattern. */
.lrmce .lrmce-vocab tbody tr:nth-child(n){background:#fff}
.lrmce .lrmce-vocab tbody tr:nth-child(even){background:#f8fafd}
.lrmce .lrmce-vocab tbody tr:hover{background:#eff5fc}
.lrmce-table-wrap{
  border:1px solid #dce5f0;
  border-radius:13px;
  box-shadow:0 3px 15px rgba(29,57,94,.045);
}
.lrmce-vocab th{background:#173d6a;font-size:12px;font-weight:750;letter-spacing:.055em;padding:13px 15px}
.lrmce-vocab td{padding:15px;border-top-color:#e5ebf2;font-size:15px;line-height:1.65}
.lrmce .lrmce-mainword{
  color:#163252;
  font-size:clamp(18px,1.9vw,21px);
  font-weight:650;
  line-height:1.45;
  letter-spacing:0;
}
.lrmce-mandarin .lrmce-vocab-target,
.lrmce-mandarin .lrmce-dialogue-row>div>strong,
.lrmce-mandarin .lrmce-word-head strong{
  font-family:"Noto Sans CJK SC","PingFang SC","Microsoft YaHei","Source Han Sans SC",Inter,"Segoe UI",sans-serif;
  letter-spacing:.015em;
}
.lrmce-dialogue{
  border:1px solid #dce5f0;
  border-radius:13px;
  box-shadow:0 3px 15px rgba(29,57,94,.04);
  overflow:visible;
}
.lrmce .lrmce-dialogue-row:nth-child(n){background:#fff}
.lrmce .lrmce-dialogue-row:nth-child(even){background:#f8fafd}
.lrmce-dialogue-row{padding:18px 19px;gap:16px;border-top-color:#e4eaf2}
.lrmce-dialogue-row>div>strong{font-size:19px;font-weight:650;line-height:1.55;color:#173457}
.lrmce-dialogue-row small{font-size:14px;line-height:1.65;color:#576984}
.lrmce-dialogue-row p{font-size:15px;line-height:1.7;color:#45566c}
.lrmce-details{gap:11px}
.lrmce-word-card{border:1px solid #dfe6ef;border-radius:12px;box-shadow:0 2px 8px rgba(29,57,94,.025)}
.lrmce-word-head{background:#fff;padding:17px 19px;gap:14px}
.lrmce-word-head strong{font-size:19px;font-weight:650;color:#193754;line-height:1.5}
.lrmce-word-head small{font-size:14px;font-weight:400;line-height:1.7;color:#617188}
.lrmce-word-body{padding:19px 22px 23px;font-size:15px;line-height:1.85;border-top:1px solid #e9eef5}
.lrmce-word-body h3{font-size:15px;font-weight:700;letter-spacing:0;color:#1b406d;margin:18px 0 9px}
.lrmce-example{background:#f6f9fd;border-left:3px solid #8aaee0;padding:13px 16px;margin:12px 0;border-radius:0 8px 8px 0;line-height:1.85}
.lrmce-panels{gap:18px}
.lrmce-panels article{border:1px solid #e0e8f1;border-radius:13px;padding:21px 23px;background:#fff;box-shadow:0 2px 10px rgba(29,57,94,.03)}
.lrmce-panels h3{font-weight:700;font-size:18px;line-height:1.4;color:#1c426f;margin-bottom:11px}
.lrmce-panels p{line-height:1.8}
.lrmce-note{font-size:13px;line-height:1.65;color:#65748a}
.lrmce-writing-shell,.lrmce-practice{border-color:#dde6f0;border-radius:13px;background:#fff}
.lrmce :is(.lrmce-write-jump,.lrmce-hanzi-jump){border-radius:8px}
.lrmce :is(button,a):focus-visible{outline:3px solid #6da8ee;outline-offset:3px}
@media(max-width:760px){
  .lrmce{font-size:15.5px;line-height:1.7}
  .lrmce-heading{padding:24px 20px;border-radius:14px}
  .lrmce-heading h1{font-size:30px;line-height:1.25}
  .lrmce-intro{margin:20px 13px 26px;padding:16px 18px;font-size:15px}
  .lrmce-section{margin-top:34px}
  .lrmce-section>h2{font-size:22px;margin-bottom:16px}
  .lrmce-dialogue-row{padding:15px 14px;gap:9px}
  .lrmce-word-head{padding:14px 15px}
  .lrmce-word-body{padding:15px 17px}
  .lrmce-panels article{padding:17px 18px}
  .lrmce .lrmce-vocab td{line-height:1.55}
}
@media(prefers-reduced-motion:reduce){.lrmce *{scroll-behavior:auto}}

/* v1.1.7.15 — actual lesson intro hierarchy, high-specificity override.
   Intentional !important only where legacy engine rules already use it. */
.lrmce.lrmce-mandarin, .lrmce.lrmce-english {
  font-family: "Segoe UI", Inter, system-ui, -apple-system, Arial, sans-serif!important;
  font-size:16px!important;
  line-height:1.75!important;
}
.lrmce .lrmce-heading h1{font-size:clamp(32px,3.1vw,41px)!important;line-height:1.2!important;font-weight:750!important;letter-spacing:-.035em!important}
.lrmce .lrmce-learning-outcomes{
  background:#fff!important;
  border:1px solid #dee6f0!important;
  border-left:4px solid #356fb4!important;
  border-radius:14px!important;
  box-shadow:0 7px 22px rgba(16,48,85,.055)!important;
  padding:clamp(22px,3vw,32px)!important;
  margin:24px 0 32px!important;
  font-size:16px!important;
  color:#263a53!important;
  line-height:1.8!important;
}
.lrmce .lrmce-learning-outcomes .lrmce-learning-title{
  color:#163862!important;font-family:inherit!important;
  font-size:clamp(21px,2.1vw,25px)!important;
  line-height:1.3!important;font-weight:750!important;
  letter-spacing:-.025em!important;
  margin:0 0 20px!important;padding:0 0 13px!important;
  border-bottom:1px solid #e3eaf3!important;
}
.lrmce .lrmce-learning-outcomes :is(.lrmce-learning-copy,.lrmce-learning-target){font-size:16px!important;line-height:1.8!important}
.lrmce .lrmce-learning-outcomes p{margin:0 0 17px!important;font-size:16px!important;line-height:1.8!important;max-width:75ch}
.lrmce .lrmce-learning-outcomes p:last-child{margin-bottom:0!important}
.lrmce .lrmce-learning-outcomes ul{padding-left:25px!important;margin:7px 0 19px!important;list-style:disc!important}
.lrmce .lrmce-learning-outcomes li{margin:6px 0!important;font-size:16px!important;line-height:1.7!important}
.lrmce .lrmce-learning-target{padding-top:13px;margin-top:16px;border-top:1px solid #e3eaf3}
.lrmce .lrmce-section > h2{font-size:clamp(23px,2.3vw,28px)!important;font-weight:750!important;line-height:1.35!important}
.lrmce .lrmce-introduction-copy, .lrmce .lrmce-introduction-copy p{font-size:16px!important;line-height:1.8!important}
@media(max-width:760px){
 .lrmce .lrmce-learning-outcomes{margin:18px 0 25px!important;padding:20px 18px!important}
 .lrmce .lrmce-learning-outcomes :is(p,li){font-size:15.5px!important}
}


/* v1.1.7.16 — overview editorial layout repair.
   The prior 75ch clamp created a narrow left column and wasted the card.
   Full-width paragraphs, readable type and semantic topic chips are confined
   to learning outcomes; no changes to audio, tables or lesson data. */
.lrmce .lrmce-learning-outcomes {
  width:100%!important;
  max-width:none!important;
  padding:clamp(22px,3vw,34px)!important;
  background:#ffffff!important;
  border:1px solid #dce5ee!important;
  border-left:4px solid #2c6bb7!important;
  border-radius:14px!important;
  box-shadow:0 4px 18px rgba(24,52,87,.045)!important;
}
.lrmce .lrmce-learning-outcomes .lrmce-learning-title {
  font-size:clamp(22px,2vw,26px)!important;
  font-weight:750!important;
  padding-bottom:17px!important;
  margin-bottom:23px!important;
}
.lrmce .lrmce-learning-outcomes .lrmce-learning-copy,
.lrmce .lrmce-learning-outcomes .lrmce-learning-target {
  width:100%!important;
  max-width:none!important;
  font-size:17px!important;
  line-height:1.72!important;
}
.lrmce .lrmce-learning-outcomes p {
  width:100%!important;
  max-width:none!important;
  font-size:17px!important;
  line-height:1.72!important;
  margin:0 0 21px!important;
  color:#28394d!important;
  overflow-wrap:break-word;
}
.lrmce .lrmce-learning-outcomes ul:not(.lrmce-learning-topics) {
  width:100%!important;
  max-width:none!important;
  margin:9px 0 22px!important;
  padding-left:27px!important;
}
.lrmce .lrmce-learning-outcomes li {font-size:17px!important;line-height:1.65!important}
.lrmce .lrmce-learning-outcomes .lrmce-learning-topics {
  display:flex!important;
  flex-wrap:wrap!important;
  align-items:center!important;
  gap:9px!important;
  list-style:none!important;
  margin:3px 0 23px!important;
  padding:0!important;
  width:100%!important;
}
.lrmce .lrmce-learning-outcomes .lrmce-learning-topics li {
  display:inline-flex!important;
  margin:0!important;
  padding:7px 12px!important;
  border:1px solid #d9e7f5!important;
  border-radius:8px!important;
  background:#f2f7fd!important;
  color:#24496f!important;
  font-size:14px!important;
  line-height:1.35!important;
  font-weight:600!important;
}
@media(max-width:760px) {
  .lrmce .lrmce-learning-outcomes{padding:20px 17px!important}
  .lrmce .lrmce-learning-outcomes p,
  .lrmce .lrmce-learning-outcomes li {font-size:16px!important;line-height:1.7!important}
  .lrmce .lrmce-learning-outcomes .lrmce-learning-topics li {font-size:13px!important}
}
