.lt-app{--lt-accent:#1e90ff;font:inherit;color:inherit;margin:12px 0}.lt-app *{box-sizing:border-box}.lt-shell{display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:20px;align-items:start}.lt-main,.lt-sidebar{background:#fff;color:#20252b;border:1px solid #e2e7ed;border-radius:14px;padding:20px;min-width:0}.lt-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:18px}.lt-header h2{margin:0;font-size:1.35rem}.lt-app button{font:inherit;cursor:pointer}.lt-btn{display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--lt-accent);background:var(--lt-accent);color:white!important;border-radius:9px;padding:11px 16px;text-decoration:none!important;font-weight:600;min-height:44px}.lt-secondary{background:white;color:var(--lt-accent)!important}.lt-link{background:none;border:0;color:var(--lt-accent);padding:6px}.lt-muted,.lt-step{color:#64748b;font-size:.93rem}.lt-step{margin:0 0 16px}.lt-word{text-align:center;background:#f7f9fc;border-radius:14px;padding:24px 12px;margin-bottom:20px}.lt-hanzi{font-size:clamp(2.5rem,8vw,4rem);line-height:1.35;font-weight:700;overflow-wrap:anywhere}.lt-pinyin{font-size:1.3rem;margin:5px 0}.lt-word h3{font-size:1.25rem;margin:15px 0}.lt-prompt-ru{font-size:clamp(1.4rem,5vw,2rem)}.lt-actions{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap}.lt-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:15px 0}.lt-option{min-height:78px;border:1px solid #cbd5e1;background:white;border-radius:12px;padding:14px 8px;font-weight:600;overflow-wrap:anywhere;line-height:1.4}.lt-option:hover:not(:disabled){border-color:var(--lt-accent);background:#f0f8ff}.lt-option.lt-right{background:#e6f8ed;border-color:#16a34a}.lt-option.lt-wrong{background:#fff0f0;border-color:#dc2626}.lt-feedback{font-weight:600}.lt-lessons{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}.lt-lesson{display:flex;flex-direction:column;gap:7px;text-align:left;border:1px solid #dbe2ea;background:#f9fbfd;padding:16px;border-radius:10px}.lt-lesson small,.lt-history-link small{color:#64748b}.lt-sidebar summary{font-weight:700;cursor:pointer}.lt-history{margin-top:12px;display:grid;gap:6px}.lt-history-link{background:#f8fafc;border:0;text-align:left;border-radius:8px;padding:9px;display:flex;flex-direction:column;gap:3px}.lt-invite{border:1px solid #bddcff;background:#f1f8ff;border-radius:12px;padding:16px;margin:18px 0}.lt-invite p{font-size:.94rem}.lt-result h3{margin-top:0}@media(max-width:760px){.lt-shell{grid-template-columns:1fr}.lt-main,.lt-sidebar{padding:14px}.lt-sidebar details:not([open]){padding:0}.lt-options{gap:9px}.lt-option{min-height:72px;padding:12px 7px}.lt-header h2{font-size:1.1rem}.lt-sidebar details{display:block}.lt-sidebar details[open] .lt-history{max-height:220px;overflow:auto}}@media(max-width:360px){.lt-options{grid-template-columns:1fr}.lt-option{min-height:56px}}

/* 1.0.1: Make answer labels readable regardless of WordPress theme button styles. */
.lt-app .lt-options button.lt-option,
.lt-app .lt-options button.lt-option:disabled {
  color:#172b4d !important;
  -webkit-text-fill-color:#172b4d !important;
  opacity:1 !important;
  font-size:clamp(16px, 1.25vw, 20px) !important;
  font-weight:700 !important;
  line-height:1.45 !important;
  text-shadow:none !important;
  background:#fff !important;
  border:1px solid #b6c7dc !important;
  box-shadow:none !important;
}
.lt-app .lt-options button.lt-option.lt-right,
.lt-app .lt-options button.lt-option.lt-right:disabled {background:#e6f8ed !important;border-color:#16a34a !important;color:#14532d !important;-webkit-text-fill-color:#14532d !important}
.lt-app .lt-options button.lt-option.lt-wrong,
.lt-app .lt-options button.lt-option.lt-wrong:disabled {background:#fff0f0 !important;border-color:#dc2626 !important;color:#991b1b !important;-webkit-text-fill-color:#991b1b !important}
.lt-app .lt-options button.lt-option:hover:not(:disabled) {background:#eef6ff !important;border-color:#1e90ff !important}
.lt-app .lt-options button.lt-option * {color:inherit !important;-webkit-text-fill-color:inherit !important}

/* 1.0.2: Comprehensive, theme-independent contrast for every trainer screen. */
.lt-app,.lt-app .lt-shell,.lt-app .lt-main,.lt-app .lt-sidebar{color:#172b4d!important;-webkit-text-fill-color:#172b4d}
.lt-app .lt-main,.lt-app .lt-sidebar{background:#fff!important}
.lt-app :is(h1,h2,h3,h4,p,strong,b,span,div,summary,small){text-shadow:none}
.lt-app :is(.lt-header h2,.lt-word,.lt-word h3,.lt-hanzi,.lt-pinyin,.lt-prompt-ru,.lt-question p,.lt-result,.lt-result h3,.lt-feedback,.lt-invite strong){color:#172b4d!important;-webkit-text-fill-color:#172b4d!important}
.lt-app :is(.lt-muted,.lt-step,.lt-lesson small,.lt-history-link small){color:#52647c!important;-webkit-text-fill-color:#52647c!important}
.lt-app .lt-word{background:#f7f9fc!important}
.lt-app button.lt-btn,.lt-app a.lt-btn{background:#1e90ff!important;color:#fff!important;-webkit-text-fill-color:#fff!important;border-color:#1e90ff!important;opacity:1!important;text-shadow:none!important}
.lt-app button.lt-btn.lt-secondary,.lt-app a.lt-btn.lt-secondary{background:#fff!important;color:#1266b6!important;-webkit-text-fill-color:#1266b6!important}
.lt-app button.lt-link{background:transparent!important;color:#1266b6!important;-webkit-text-fill-color:#1266b6!important;border:0!important;opacity:1!important;text-shadow:none!important}
.lt-app button.lt-lesson,.lt-app button.lt-history-link{background:#f8fafc!important;color:#172b4d!important;-webkit-text-fill-color:#172b4d!important;border:1px solid #dbe2ea!important;opacity:1!important;text-shadow:none!important}
.lt-app button.lt-lesson :is(strong,span),.lt-app button.lt-history-link{color:#172b4d!important;-webkit-text-fill-color:#172b4d!important}
.lt-app button.lt-lesson small,.lt-app button.lt-history-link small{color:#52647c!important;-webkit-text-fill-color:#52647c!important}
.lt-app .lt-invite{background:#f1f8ff!important;color:#172b4d!important}
.lt-app .lt-options button.lt-option{color:#172b4d!important;-webkit-text-fill-color:#172b4d!important}
.lt-app .lt-options button.lt-option.lt-right{color:#14532d!important;-webkit-text-fill-color:#14532d!important}
.lt-app .lt-options button.lt-option.lt-wrong{color:#991b1b!important;-webkit-text-fill-color:#991b1b!important}
.lt-app :is(button,a):focus-visible{outline:3px solid #1e90ff!important;outline-offset:3px!important}

/* Quiz audio control: accessible tap target on desktop and mobile */
.lt-app .lt-quiz-audio{display:flex;justify-content:center;margin:12px 0 0}
.lt-app .lt-quiz-audio .lt-btn{display:inline-flex!important;align-items:center;justify-content:center;min-height:44px;max-width:100%;white-space:normal}

/* 1.1.7: compact always-visible auto-next feedback after answering. */
.lt-app .lt-auto-toast {position:fixed;z-index:2147482000;right:12px;top:calc(env(safe-area-inset-top, 0px) + 66px);max-width:min(320px,calc(100vw - 24px));border-radius:12px;padding:10px 14px;background:#17365f!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font-size:14px;line-height:1.4;box-shadow:0 6px 20px rgba(0,0,0,.22);pointer-events:none;text-align:center;}
.lt-app .lt-auto-toast strong {color:#fff!important;-webkit-text-fill-color:#fff!important;}

.lt-app .lt-levels{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 18px}
.lt-app .lt-levels .lt-level{border:1px solid #9bb2cc!important;border-radius:12px;background:#f4f8fd!important;color:#17365f!important;padding:10px 16px;cursor:pointer;font-weight:700;min-height:48px}
.lt-app .lt-levels .lt-level small{display:block;font-size:11px;font-weight:400}
.lt-app .lt-levels .lt-level.lt-level-active{background:#1e90ff!important;color:white!important;border-color:#1e90ff!important}
.lt-app .lt-levels .lt-level.lt-level-active small{color:white!important}

/* Stage 2: show approximate Russian pronunciation under pinyin */
.lt-app .lt-stage2-ru{margin-top:5px;font-size:1rem;line-height:1.5;}

/* 1.2.3: responsive pronunciation toolbar, shared across all stages. */
.lt-app .lt-audio-controls{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin:16px auto 4px;max-width:100%;}
.lt-app button.lt-audio-play{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 18px;border:1px solid #1e90ff!important;border-radius:14px;background:#1e90ff!important;color:#fff!important;-webkit-text-fill-color:#fff!important;font:inherit;font-weight:700;cursor:pointer;box-shadow:0 3px 12px rgba(30,144,255,.16);}
.lt-app .lt-speed-control{display:flex;align-items:center;gap:10px;min-height:46px;padding:5px 7px 5px 12px;border:1px solid #dce6f3;border-radius:14px;background:#f5f8fc;max-width:100%;}
.lt-app .lt-speed-label{font-size:12px;font-weight:650;color:#52647c!important;-webkit-text-fill-color:#52647c!important;white-space:nowrap;}
.lt-app .lt-speed-options{display:flex;gap:3px;align-items:center;}
.lt-app button.lt-speed-choice{min-width:46px;min-height:38px;padding:7px 8px;border:0!important;border-radius:10px;background:transparent!important;color:#28466b!important;-webkit-text-fill-color:#28466b!important;font:inherit;font-size:13px;font-weight:700;cursor:pointer;transition:background .15s ease,color .15s ease;}
.lt-app button.lt-speed-choice.is-active{background:#1e90ff!important;color:#fff!important;-webkit-text-fill-color:#fff!important;box-shadow:0 2px 7px rgba(30,144,255,.2);}
.lt-app button.lt-speed-choice:hover:not(.is-active){background:#e5effc!important;}
.lt-app :is(.lt-audio-play,.lt-speed-choice):focus-visible{outline:3px solid #1e90ff!important;outline-offset:2px;}
@media(max-width:600px){.lt-app .lt-audio-controls{flex-direction:column;gap:9px;width:100%;}.lt-app button.lt-audio-play{width:100%;max-width:360px;min-height:48px;}.lt-app .lt-speed-control{width:100%;max-width:360px;justify-content:space-between;gap:5px;padding-left:10px;}.lt-app .lt-speed-options{flex:1;justify-content:flex-end;}.lt-app button.lt-speed-choice{flex:1;min-width:0;min-height:42px;padding:7px 5px;}}
@media(max-width:360px){.lt-app .lt-speed-label{font-size:11px;}.lt-app button.lt-speed-choice{font-size:12px;}}

/* 1.2.4: space-efficient responsive learning cards. Keep all tap targets >=44px. */
.lt-app .lt-main{padding:clamp(10px,1.5vw,18px)}
.lt-app .lt-step{margin:0 0 9px;font-size:.88rem}
.lt-app .lt-word{padding:clamp(12px,2vw,20px) clamp(10px,2vw,18px);margin-bottom:12px;border-radius:16px}
.lt-app .lt-hanzi{font-size:clamp(2.5rem,5vw,3.5rem);line-height:1.16}
.lt-app .lt-pinyin{font-size:clamp(1.05rem,2vw,1.2rem);margin:5px 0 2px;line-height:1.3}
.lt-app .lt-word .lt-muted{font-size:.92rem;line-height:1.3;margin:3px 0}
.lt-app .lt-word p{margin:6px 0 0;line-height:1.35}
.lt-app .lt-word h3{margin:9px 0;font-size:1.12rem}
.lt-app .lt-audio-controls{gap:8px;margin:12px auto 0}
.lt-app button.lt-audio-play{min-height:44px;padding:8px 13px;border-radius:12px;box-shadow:0 2px 8px rgba(30,144,255,.12);font-size:.95rem}
.lt-app .lt-speed-control{min-height:44px;padding:3px 5px 3px 9px;gap:5px;border-radius:12px}
.lt-app button.lt-speed-choice{min-height:38px;min-width:42px;padding:7px 5px;border-radius:9px;font-size:12px}
.lt-app .lt-quiz-audio{margin:7px 0 0}
.lt-app .lt-options{gap:9px;margin:10px 0}
.lt-app .lt-options button.lt-option{min-height:60px;padding:10px 9px;font-size:clamp(15px,1.1vw,18px)!important;line-height:1.25!important;border-radius:12px}
.lt-app .lt-feedback{margin:8px 0}
.lt-app .lt-stage2-ru{margin-top:2px;font-size:.92rem;line-height:1.3}
@media(max-width:760px){
 .lt-app .lt-shell{gap:10px}
 .lt-app .lt-main,.lt-app .lt-sidebar{padding:11px}
 .lt-app .lt-header{margin-bottom:10px}
 .lt-app .lt-levels{margin:7px 0 11px;gap:6px}
 .lt-app .lt-levels .lt-level{padding:7px 10px;min-height:44px}
 .lt-app .lt-word{padding:12px 10px;margin-bottom:10px}
 .lt-app .lt-hanzi{font-size:clamp(2.45rem,11vw,3.25rem)}
 .lt-app .lt-audio-controls{flex-direction:row;flex-wrap:wrap;gap:7px;width:100%;margin-top:10px}
 .lt-app button.lt-audio-play{width:auto;max-width:none;min-height:44px;flex:0 0 auto;padding:8px 12px}
 .lt-app .lt-speed-control{width:auto;max-width:100%;flex:0 1 auto;justify-content:center;min-height:44px;padding:3px 5px}
 .lt-app .lt-speed-options{flex:0 0 auto;justify-content:center}
 .lt-app button.lt-speed-choice{flex:0 0 auto;min-height:38px;min-width:40px;padding:6px 4px}
 .lt-app .lt-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:9px 0}
 .lt-app .lt-options button.lt-option{min-height:58px;padding:8px 6px;font-size:clamp(14px,3.7vw,17px)!important}
}
@media(max-width:430px){
 .lt-app .lt-audio-controls{flex-direction:column;align-items:stretch;gap:6px}
 .lt-app button.lt-audio-play{width:100%;max-width:none;min-height:44px}
 .lt-app .lt-speed-control{width:100%;justify-content:space-between}
 .lt-app .lt-speed-options{flex:1;justify-content:space-evenly}
 .lt-app button.lt-speed-choice{min-width:40px;min-height:38px}
}
@media(max-width:360px){
 .lt-app .lt-options{grid-template-columns:repeat(2,minmax(0,1fr))}
 .lt-app .lt-options button.lt-option{min-height:56px;font-size:14px!important}
 .lt-app .lt-speed-label{font-size:11px}
 .lt-app button.lt-speed-choice{min-width:36px;font-size:11px}
}

/* 1.2.5: registration reminder in sidebar for guests. */
.lt-app .lt-sidebar-invite .lt-invite{margin:0 0 15px;padding:13px;border-radius:12px}
.lt-app .lt-sidebar-invite .lt-invite strong{display:block;font-size:.98rem;line-height:1.35}
.lt-app .lt-sidebar-invite .lt-invite p{font-size:.85rem;line-height:1.45;margin:8px 0 12px}
.lt-app .lt-sidebar-invite .lt-invite .lt-btn{width:100%;padding:9px 10px;min-height:44px;font-size:.9rem;text-align:center}
@media(max-width:760px){.lt-app .lt-sidebar-invite .lt-invite{padding:12px}.lt-app .lt-sidebar-invite .lt-invite p{margin:6px 0 10px}}

/* 1.2.6: keep registration CTA on one line in narrow sidebars. */
.lt-app .lt-sidebar-invite .lt-invite .lt-btn{display:flex;width:100%;max-width:100%;padding:10px 6px;font-size:clamp(12px,1vw,14px);line-height:1.2;white-space:nowrap;word-break:normal;overflow-wrap:normal;letter-spacing:-.15px;box-sizing:border-box}

/* 1.4.1: consistent navigation and quick actions */
.lt-app .lt-navigation{margin-bottom:16px}.lt-app .lt-nav-heading{font-size:12px;font-weight:800;letter-spacing:.02em;color:#51657d;margin:10px 0 7px}.lt-app .lt-nav-items{display:flex;gap:6px;flex-wrap:wrap}.lt-app .lt-nav-choice{flex:1 1 auto;background:#f4f8fd!important;border:1px solid #b8cce0!important;border-radius:9px;padding:8px 10px;color:#17365f!important;font-weight:650;min-height:42px;overflow-wrap:anywhere}.lt-app .lt-nav-choice.is-active{background:#1e90ff!important;border-color:#1e90ff!important;color:#fff!important}.lt-app .lt-nav-choice small{display:block;font-weight:400;font-size:11px}.lt-app .lt-side-section{border-bottom:1px solid #e2e7ed;padding:0 0 14px;margin-bottom:14px}.lt-app .lt-side-section h3{font-size:15px;margin:5px 0 9px}.lt-app .lt-side-action{display:block;width:100%;min-height:40px;border:1px solid #b8cce0;border-radius:8px;background:#f4f8fd;color:#17365f;font-weight:650;padding:8px}.lt-app .lt-progress-details{font-size:13px;margin-bottom:8px}.lt-app .lt-progress-track{height:8px;background:#e4edf7;border-radius:12px;overflow:hidden;margin-bottom:12px}.lt-app .lt-progress-track span{display:block;height:100%;background:#1e90ff}.lt-app .lt-mobile-navigation{display:none}.lt-app .lt-sidebar .lt-invite{margin:0 0 14px}.lt-app .lt-sidebar details{margin-top:10px}
@media(max-width:760px){.lt-app .lt-mobile-navigation{display:block;padding:10px;background:#f7faff;border:1px solid #dfebf7;border-radius:12px}.lt-app .lt-desktop-navigation{display:none}.lt-app .lt-mobile-navigation .lt-nav-choice{min-height:44px}.lt-app .lt-sidebar .lt-side-section{display:none}}

/* 1.4.2: self-contained, unified learning surface on desktop/mobile */
.lt-app{--lt-accent:#1e90ff;isolation:isolate;max-width:1280px;margin:18px auto!important;padding:clamp(10px,2vw,22px)!important;background:#eef3fa!important;border:1px solid #d7e4f3!important;border-radius:22px!important;font-family:system-ui,-apple-system,"Segoe UI",Arial,sans-serif!important;font-size:15px!important;line-height:1.5!important}
.lt-app .lt-shell{gap:16px!important;grid-template-columns:minmax(0,1fr) 250px!important}
.lt-app .lt-main,.lt-app .lt-sidebar{border-radius:16px!important;border:1px solid #dce5f0!important;box-shadow:0 3px 15px rgba(28,60,95,.045)!important}
.lt-app .lt-main{padding:clamp(15px,2vw,25px)!important}
.lt-app .lt-sidebar{padding:18px!important}
.lt-app .lt-header{padding:0 0 13px!important;border-bottom:1px solid #e7edf4!important;gap:10px!important}
.lt-app .lt-header h2{font-size:clamp(19px,2vw,25px)!important;color:#18345a!important;line-height:1.25!important}
.lt-app .lt-primary-navigation{display:block!important;padding:12px!important;margin:0 0 17px!important;background:#f5f9ff!important;border:1px solid #dce9f7!important;border-radius:13px!important}
.lt-app .lt-nav-heading:first-child{margin-top:0!important}
.lt-app .lt-nav-items{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
.lt-app .lt-nav-choice{flex:0 1 auto!important;min-height:44px!important;padding:9px 13px!important;border-radius:10px!important;white-space:normal!important}
.lt-app .lt-sidebar .lt-side-section{display:block!important}
.lt-app .lt-btn,.lt-app button,.lt-app a.lt-btn{font-family:inherit!important}
.lt-app .lt-sidebar-invite .lt-btn{white-space:normal!important;font-size:13px!important;min-height:45px!important}
@media(max-width:760px){
 .lt-app{margin:8px 0!important;padding:8px!important;border-radius:16px!important}
 .lt-app .lt-shell{grid-template-columns:minmax(0,1fr)!important;gap:10px!important}
 .lt-app .lt-main,.lt-app .lt-sidebar{padding:14px!important}
 .lt-app .lt-primary-navigation{padding:10px!important;margin-bottom:11px!important}
 .lt-app .lt-nav-choice{flex:1 1 90px!important;padding:9px 7px!important}
 .lt-app .lt-sidebar .lt-side-section{display:block!important}
 .lt-app .lt-sidebar .lt-side-section:nth-of-type(3){display:none!important}
 .lt-app .lt-sidebar-invite{margin-top:8px!important}
}

/* 1.3.2: Automatic language navigation, isolated from theme button styles */
.lt-language-nav{box-sizing:border-box;max-width:100%;margin:0 0 16px;padding:14px 16px;background:#fff;border:1px solid #dbe5f0;border-radius:14px;font-family:inherit}
.lt-language-nav *{box-sizing:border-box}
.lt-language-label{display:block;color:#52647b;font-size:13px;font-weight:700;margin-bottom:10px}
.lt-language-links{display:flex;flex-wrap:wrap;gap:8px}
.lt-language-nav a.lt-language-choice{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:9px 15px;border:1px solid #d2ddea;border-radius:10px;background:#f7f9fc;color:#213750!important;text-decoration:none!important;font-size:14px;font-weight:650;line-height:1.2;transition:background .15s,border-color .15s}
.lt-language-nav a.lt-language-choice:hover{background:#eaf4ff;border-color:#80b9f2}
.lt-language-nav a.lt-language-choice.is-active{background:#1e90ff;border-color:#1e90ff;color:#fff!important}
@media(max-width:560px){.lt-language-nav{padding:12px}.lt-language-links{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.lt-language-nav a.lt-language-choice{padding:10px 7px;min-width:0;overflow-wrap:anywhere;text-align:center}}

/* 1.5.0: registration invitation, no changes to trainer logic */
.lt-app .lt-register-side{background:#f1f8ff;border:1px solid #c8dff7;border-radius:12px;padding:14px}
.lt-app .lt-register-side p{font-size:14px;line-height:1.5;margin:8px 0 12px}
.lt-app .lt-register-link{display:block;text-align:center;text-decoration:none!important;background:#1e90ff;color:#fff!important;border-color:#1e90ff}

/* Guided Hangul lessons */
.lt-guide{max-width:740px;margin:0 auto;padding:1rem 0}.lt-guide p{line-height:1.65}.lt-guide-examples{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:10px;margin:12px 0 22px}.lt-guide-example{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:12px;border:1px solid #d8dce4;border-radius:10px}.lt-guide-example strong{font-size:1.5rem}.lt-guide-example small{display:block;width:100%;opacity:.75}

.lt-desktop-account{max-width:340px;border:1px solid #d8e1ec;border-radius:14px;padding:16px;margin:16px 0;background:#fff}.lt-desktop-account h3{margin-top:0}.lt-billing-account p{margin:8px 0}

.lt-account-side .lt-billing-account p{margin:8px 0}.lt-account-side .lt-side-action{display:block;margin:8px 0}.lt-account-side .lt-muted{overflow-wrap:anywhere}

.lt-lesson.lt-lesson-locked{position:relative;opacity:.72;cursor:not-allowed;background:#eef1f5!important;border:1px solid #cad2dc!important}.lt-lesson-locked:after{content:"🔒";position:absolute;top:8px;right:8px}.lt-paywall{padding:18px;margin-top:15px;border-radius:12px;background:#edf4fc;border:1px solid #cadced}.lt-paywall a{font-weight:700}

/* Embedded partner view: keep lessons and levels; remove account sidebar entirely. */
.lt-app .lt-shell.lt-embed-shell{display:block!important;grid-template-columns:minmax(0,1fr)!important}
.lt-app .lt-embed-shell>.lt-sidebar{display:none!important}
.lt-app .lt-embed-shell>.lt-main{width:100%!important;max-width:none!important}

/* Locked lesson cards must remain clickable to explain the paywall. */
.lt-app .lt-lesson.lt-lesson-locked{cursor:pointer;opacity:.88}.lt-app .lt-lesson.lt-lesson-locked:hover{border-color:#1e90ff!important;background:#e8f3ff!important}.lt-locked-detail{padding:30px 18px;border:1px solid #cadced;border-radius:12px;background:#f5f9ff;text-align:center}.lt-lock-icon{font-size:30px}.lt-locked-detail .lt-actions{justify-content:center}.lt-locked-detail .lt-actions a{cursor:pointer}

/* Independent toolbar for partner iframe; never affects normal pages or PWA. */
.lt-app .lt-embed-shell .lt-header{display:none!important}
.lt-app .lt-embed-shell .lt-embed-toolbar{display:grid!important;gap:10px!important;position:relative!important;z-index:5!important;background:#f4f8fd!important;border:1px solid #cddff0!important;border-radius:14px!important;padding:13px!important;margin:0 0 16px!important;pointer-events:auto!important}
.lt-app .lt-embed-shell .lt-embed-toolbar-title{display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.lt-app .lt-embed-shell .lt-embed-toolbar-title span{font-size:13px;opacity:.75}
.lt-app .lt-embed-shell .lt-embed-levels,.lt-app .lt-embed-shell .lt-embed-controls{display:flex!important;gap:8px!important;flex-wrap:wrap!important;align-items:stretch!important}
.lt-app .lt-embed-shell .lt-embed-level,.lt-app .lt-embed-shell .lt-embed-control{appearance:none!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;cursor:pointer!important;pointer-events:auto!important;position:relative!important;z-index:6!important;background:white!important;color:#123453!important;border:1px solid #b5cde4!important;border-radius:9px!important;padding:10px 14px!important;text-decoration:none!important;font:inherit!important;font-size:14px!important;min-height:42px!important;white-space:normal!important}
.lt-app .lt-embed-shell .lt-embed-level.is-active{background:#1768bc!important;color:#fff!important;border-color:#1768bc!important}
.lt-app .lt-embed-shell .lt-embed-control:hover,.lt-app .lt-embed-shell .lt-embed-level:hover{filter:brightness(.94)}
.lt-app .lt-embed-shell .lt-lesson[disabled]{cursor:not-allowed!important;opacity:.66!important;pointer-events:none!important}
@media(max-width:600px){.lt-app .lt-embed-shell .lt-embed-level{flex:1 1 28%;padding:9px 6px!important}.lt-app .lt-embed-shell .lt-embed-controls>*{flex:1 1 40%;font-size:12px!important;padding:9px 7px!important}}

/* Tariffs displayed inside trainer, including embedded PWA */
#lt-pricing-overlay{position:fixed;inset:0;z-index:2147483500;display:flex;flex-direction:column;background:#05070b;color:#f4f6f8}#lt-pricing-overlay .lt-pricing-bar{height:52px;flex:0 0 52px;display:flex;align-items:center;justify-content:space-between;padding:8px 14px;background:#101827;border-bottom:1px solid #30425e;font:600 16px system-ui,sans-serif}#lt-pricing-overlay .lt-pricing-close{width:38px;height:36px;color:#fff;background:#233953;border:0;border-radius:9px;font-size:20px;cursor:pointer}#lt-pricing-overlay iframe{width:100%;height:100%;flex:1;border:0;background:#05070b}
