/* Lumi OS V3 skin for Lumi Lingo (Baxter screens 15a-15c). Preview only: every rule needs html.los, which the
   inline head check sets on the homebase preview channel and localhost only, never on lumi-academy.org.
   Restyle and regroup only. Every screen, button, handler and the audio are Lingo's own.
   Selectors start "html.los body" so they outrank the in-page html.lfx rules without !important.
   Chrome 103 safe: no :has(), no container queries, no nesting. */
html.los{--v3-stage:#04060D;--v3-ink:#fff;--v3-ink88:rgba(255,255,255,.88);--v3-ink78:rgba(255,255,255,.78);--v3-dim:#A9B1C4;--v3-label:#A3ACC0;--v3-hair:rgba(255,255,255,.09);--v3-hair2:rgba(255,255,255,.16);--v3-gold:#F2C14E;--v3-gold2:#FFB84D;--v3-teal:#35E0C8;--v3-glass:rgba(10,14,31,.78);--v3l-gut:clamp(16px,5.5vw,120px)}
html.los body{background:var(--v3-stage)!important;font-family:Inter,"Segoe UI",system-ui,sans-serif;color:var(--v3-ink)}
html.los body .lfx-vig,html.los body .lfx-star,html.los body #lfx-sky{display:none!important}

/* ---------- stage art (15a/15c): heavy scrim so every word on top stays AA ---------- */
#v3l-art{display:none}
html.los.v3l-art-on body #v3l-art{display:block;position:absolute;left:0;right:0;top:0;height:min(78vh,760px);height:min(78dvh,760px);z-index:0;pointer-events:none;overflow:hidden}
html.los body #v3l-art i{position:absolute;inset:0;background:url(/landing/hero-town-1600.webp) center 62%/cover no-repeat;opacity:.5}
html.los body #v3l-art b{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,6,13,.86) 0%,rgba(4,6,13,.62) 48%,rgba(4,6,13,.5) 100%),linear-gradient(180deg,rgba(4,6,13,.25) 0%,rgba(4,6,13,.55) 55%,#04060D 100%)}
html.los body .screen{position:relative;z-index:1}

/* ---------- V3 bar: Lingo-local, built on the existing #stats strip (same buttons, same handlers) ---------- */
html.los body .stats{position:sticky;top:0;z-index:40;gap:14px;min-height:64px;padding:8px var(--v3l-gut);background:#04060D;border-bottom:1px solid var(--v3-hair);font-family:Inter,system-ui,sans-serif}
@supports ((-webkit-backdrop-filter:blur(2px)) or (backdrop-filter:blur(2px))){html.los body .stats{background:rgba(4,6,13,.86);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}}
html.los body .stats .los-wm{display:none}
.v3l-wm,.v3l-tabs,.v3l-right,.v3l-sup,.v3l-pow,.v3l-online{display:none}
html.los body .v3l-wm{display:inline-flex;align-items:center;gap:10px;flex:none;color:#fff;text-decoration:none;font:500 13px Inter,system-ui,sans-serif;letter-spacing:5px;min-height:44px}
html.los body .v3l-wm img{width:22px;height:22px;object-fit:contain}
html.los body .v3l-tabs{display:flex;align-items:center;gap:4px;min-width:0;flex:0 1 auto;overflow:hidden}
html.los body .v3l-tab{all:unset;box-sizing:border-box;cursor:pointer;min-height:44px;padding:0 12px;display:inline-flex;align-items:center;font:500 14px Inter,system-ui,sans-serif;color:#B4BCCD;white-space:nowrap;border-radius:10px}
html.los body .v3l-tab.on{color:#fff}
html.los body .v3l-tab.on::after{content:"";display:block}
html.los body .v3l-tab:hover{color:#fff}
html.los body .v3l-tab:focus-visible,html.los body .v3l-sup:focus-visible,html.los body .v3l-pow:focus-visible,html.los body .stats button:focus-visible{outline:2px solid var(--v3-teal);outline-offset:2px}
html.los body .stats .stat{font:500 15px Inter,system-ui,sans-serif;color:#E6E9F2;letter-spacing:0;padding:0 8px;margin:0;min-height:44px;min-width:44px;border-radius:10px}
html.los body .stats .stat.flame,html.los body .stats .stat.gem{color:#E6E9F2}
html.los body .stats .stat.flame.hot{animation:none}
html.los body .stats .stat .v3l-u{font-size:13px;color:var(--v3-label);margin-left:2px}
html.los body .stats #s-streak{margin-left:auto}
html.los body .stats .who{margin-left:0;display:inline-flex;align-items:center;gap:8px;border:0;background:none;color:#fff;font:500 14px Inter,system-ui,sans-serif;padding:0 6px;min-height:44px;max-width:22vw}
html.los body .stats .who .v3l-av{width:26px;height:26px;border-radius:50%;object-fit:cover;background:rgba(255,255,255,.08);flex:none}
html.los body .v3l-online{display:inline-flex;align-items:center;gap:6px;font:500 13px Inter,system-ui,sans-serif;color:var(--v3-dim);white-space:nowrap}
html.los body .v3l-online i{width:7px;height:7px;border-radius:50%;background:var(--v3-teal)}
html.los body .v3l-online.off i{background:#8A93A8}
html.los body .v3l-sup{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;min-height:44px;padding:0 10px;font:500 14px Inter,system-ui,sans-serif;color:#C9CFDC;white-space:nowrap;border-radius:10px}
html.los body .v3l-sup:hover{color:#fff}
html.los body .v3l-pow{all:unset;box-sizing:border-box;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;flex:none;width:44px;height:44px;border-radius:50%;background:linear-gradient(160deg,var(--v3-gold2),var(--v3-gold));box-shadow:0 0 18px rgba(242,193,78,.32);color:#2A1E02}
html.los body .v3l-pow svg{width:20px;height:20px}
html.los.v3l-hassup #los-sup{display:none!important}
@media (max-width:1180px){html.los body .v3l-online span{display:none}}
@media (max-width:1023px){html.los body .v3l-tabs .v3l-tab.v3l-opt{display:none}html.los body .stats{gap:8px}}
@media (max-width:760px){html.los body .v3l-tabs{display:none}html.los body .v3l-online{display:none}}
@media (max-width:600px){
  html.los body .stats{padding:6px 12px;gap:2px;min-height:56px}
  html.los body .v3l-wm{letter-spacing:3px;font-size:12px;gap:7px}
  html.los body .v3l-wm span{display:none}
  html.los body .stats .stat{font-size:14px;padding:0 4px}
  html.los body .stats .stat .v3l-u{display:none}
  html.los body .stats .who{max-width:28vw;font-size:13px;padding:0 2px}
  html.los body .stats .who .v3l-nm{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
  html.los body .v3l-sup{padding:0 6px;font-size:13px}
  html.los body .v3l-pow{width:44px;height:44px}
}
@media (max-width:360px){html.los body .stats .who .v3l-nm{display:none}}
html.los body .trial-banner{background:#0B1022;border-bottom:1px solid var(--v3-hair);color:#E6E9F2;font:500 14px Inter,system-ui,sans-serif;padding:10px var(--v3l-gut)}
html.los body .trial-banner-cta{background:none;border:1px solid rgba(242,193,78,.55);color:var(--v3-gold);border-radius:999px;min-height:44px;display:inline-flex;align-items:center;font-weight:600}
html.los body .trial-banner-x{min-width:44px;min-height:44px;color:var(--v3-dim)}

/* ---------- shared type ---------- */
html.los body .screen{padding:28px 0 calc(150px + env(safe-area-inset-bottom))}
html.los body .wrap{max-width:none;padding:0 var(--v3l-gut)}
html.los body h1{font-family:Inter,"Segoe UI",system-ui,sans-serif!important;font-weight:300!important;letter-spacing:-.025em;line-height:1.02;color:#fff;text-shadow:none!important}
html.los body h1 span{color:#fff!important;-webkit-text-fill-color:#fff!important;background:none!important}
html.los body h2{font-family:Inter,system-ui,sans-serif!important;font-weight:500!important;letter-spacing:-.01em}
html.los body .sub,html.los body .los-sub,html.los body .note{color:var(--v3-dim);font:400 17px/1.5 Inter,system-ui,sans-serif}
.v3l-label{display:none}
html.los body .v3l-label{display:block;font:600 12px Inter,system-ui,sans-serif;letter-spacing:2.6px;text-transform:uppercase;color:var(--v3-label);margin:0 0 8px}
html.los body .v3l-label b{font-weight:600;color:#D5DAE5}
@media (max-width:600px){html.los body .sub,html.los body .los-sub,html.los body .note{font-size:15px}}

/* ---------- 15a: languages home (#s-lang) ---------- */
html.los body #s-lang .wrap{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);column-gap:clamp(32px,4vw,64px);align-items:start;position:relative;max-width:1880px;margin:0 auto}
html.los body #s-lang .wrap > *{grid-column:1/-1}
html.los body #s-lang h1{font-size:clamp(46px,6.2vw,96px);margin:8px 0 10px;padding-right:200px}
html.los body #s-lang .los-sub{margin:0 0 6px;max-width:760px;padding-right:200px;color:#C9CFDC;font-size:19px}
html.los body #lang-guide{position:absolute;right:var(--v3l-gut);top:-6px;margin:0!important;flex-direction:column;align-items:flex-end!important;gap:6px!important;max-width:380px;z-index:2}
html.los body #lang-guide .lg-guide{display:flex;flex-direction:row-reverse;align-items:flex-end;gap:8px}
html.los body #lang-guide .lg-guide img{width:118px;height:auto;filter:drop-shadow(0 8px 18px rgba(0,0,0,.5))}
html.los body .lg-bubble{background:#0B1022!important;color:#fff!important;border:1px solid var(--v3-hair2)!important;box-shadow:none!important;font:500 14px/1.35 Inter,system-ui,sans-serif!important;border-radius:14px!important}
html.los body .lg-bubble::before,html.los body .lg-guide::before{display:none!important}
html.los body #lang-guide .lg-bubble{max-width:200px;margin-bottom:22px}
html.los body .guide-chip{background:none!important;border:1px solid var(--v3-hair2)!important;color:#D5DAE5!important;font:500 13px Inter,system-ui,sans-serif!important;min-height:44px;border-radius:999px!important;box-shadow:none!important}
#v3l-stats{display:none}
html.los body #v3l-stats{display:flex;justify-content:space-between;gap:24px;border-top:1px solid var(--v3-hair);border-bottom:1px solid var(--v3-hair);padding:18px 0 20px;margin:22px 0 30px}
html.los body #v3l-stats > div{min-width:0}
html.los body #v3l-stats .v{font:300 clamp(26px,2.4vw,38px)/1.1 Inter,system-ui,sans-serif;letter-spacing:-.5px;color:#fff;white-space:nowrap}
html.los body #v3l-stats .l{font:600 12px Inter,system-ui,sans-serif;letter-spacing:2.4px;text-transform:uppercase;color:var(--v3-label);margin-bottom:6px;white-space:nowrap}
html.los body #s-lang .v3l-label.langs{grid-column:1;grid-row:5}
html.los body #s-lang #lang-list{grid-column:1;grid-row:6;display:block!important}
html.los body #s-lang .v3l-label.today{grid-column:2;grid-row:5}
html.los body #s-lang #quest-card{grid-column:2;grid-row:6}
html.los body #s-lang .v3l-place{grid-column:1;grid-row:7}
html.los body .lang-card{display:flex!important;align-items:center;gap:18px;width:100%;margin:0!important;min-height:64px;padding:12px 14px!important;background:none!important;border:0!important;border-top:1px solid var(--v3-hair)!important;border-radius:0!important;box-shadow:none!important;color:#fff;text-align:left;transform:none!important;flex-wrap:nowrap!important}
html.los body .lang-card:first-child{border-top:0!important}
html.los body .lang-card:not(:disabled):hover{background:rgba(255,255,255,.035)!important;border-radius:10px!important}
html.los body .lang-card:focus-visible{outline:2px solid var(--v3-teal);outline-offset:2px;border-radius:10px!important}
html.los body .lang-card.v3l-started{background:rgba(255,255,255,.035)!important;border-radius:10px!important}
html.los body .lang-card.v3l-started + .lang-card{border-top-color:transparent!important}
html.los body .lang-card .lc-flag,html.los body .lang-card .lc-deco{display:none!important}
html.los body .lang-card .lc-main{flex:1;min-width:0;display:grid;grid-template-columns:minmax(120px,170px) minmax(0,1fr);column-gap:18px;align-items:center}
html.los body .lang-card .lc-name{font:500 22px Inter,system-ui,sans-serif!important;color:#fff;grid-row:1/3;letter-spacing:-.2px}
html.los body .lang-card .lc-meta{font:400 15px Inter,system-ui,sans-serif!important;color:var(--v3-dim)!important;opacity:1!important}
html.los body .lang-card .v3l-q{display:block;font:400 14px Inter,system-ui,sans-serif;color:#B4BCCD;margin-top:2px}
html.los body .lang-card .lc-bar{grid-column:2;height:3px;margin-top:8px;background:rgba(255,255,255,.12)!important;border-radius:99px;max-width:260px}
html.los body .lang-card .lc-bar i{background:var(--v3-teal)!important;box-shadow:none!important}
html.los body .lang-card .lc-go{flex:none;font:600 13px Inter,system-ui,sans-serif!important;letter-spacing:2px;text-transform:uppercase;color:#D5DAE5!important;background:none!important;border:0!important;padding:0 6px!important;min-height:44px;display:inline-flex;align-items:center;opacity:1!important}
html.los body .lang-card.v3l-started .lc-go{letter-spacing:0;text-transform:none;font:500 15px Inter,system-ui,sans-serif!important;color:var(--v3-gold)!important;border:1px solid rgba(242,193,78,.5)!important;background:rgba(242,193,78,.06)!important;border-radius:999px!important;padding:0 22px!important}
html.los body .lang-card:disabled{opacity:.6}
html.los body .quest-card{background:none!important;border:0!important;border-radius:0!important;padding:0!important;margin:0!important;box-shadow:none!important}
html.los body .quest-card h3{display:none}
html.los body .quest-row{display:flex;align-items:center;gap:14px;min-height:56px;padding:10px 0;border-top:1px solid var(--v3-hair);font:400 16px/1.4 Inter,system-ui,sans-serif;color:#fff;opacity:1!important;transform:none!important}
html.los body .quest-row:first-of-type{border-top:0}
html.los body .quest-row .qic{font-size:0!important;width:18px;height:18px;border-radius:50%;border:1.5px solid rgba(255,255,255,.4);flex:none}
html.los body .quest-row.done{color:#fff}
html.los body .quest-row.done .qic{background:var(--v3-teal);border-color:var(--v3-teal)}
html.los body .quest-row .qxp{font:600 12px Inter,system-ui,sans-serif;letter-spacing:1.5px;color:var(--v3-label)}
html.los body .quest-row.done .qxp{color:var(--v3-teal)}
html.los body .v3l-place{margin-top:18px;font:400 15px Inter,system-ui,sans-serif;color:var(--v3-dim)}
@media (max-width:1099px){
  html.los body #s-lang .wrap{grid-template-columns:minmax(0,1fr)}
  html.los body #s-lang .v3l-label.langs,html.los body #s-lang #lang-list,html.los body #s-lang .v3l-label.today,html.los body #s-lang #quest-card,html.los body #s-lang .v3l-place{grid-column:1;grid-row:auto}
  html.los body #s-lang .v3l-label.today{margin-top:34px}
  html.los body #s-lang .v3l-label.langs{order:1}html.los body #s-lang #lang-list{order:2}html.los body #s-lang .v3l-place{order:3}html.los body #s-lang .v3l-label.today{order:4}html.los body #s-lang #quest-card{order:5}
}
@media (max-width:700px){
  html.los body #s-lang h1{padding-right:96px;font-size:clamp(40px,12vw,56px)}
  html.los body #s-lang .los-sub{padding-right:92px;font-size:16px}
  html.los body #lang-guide{right:12px;top:-10px;max-width:96px}
  html.los body #lang-guide .lg-guide img{width:78px}
  html.los body #lang-guide .lg-bubble{display:none}
  html.los body #lang-guide .guide-chip{font-size:0!important;padding:0!important;width:44px;height:44px;justify-content:center;gap:0!important}
  html.los body #lang-guide .guide-chip img{margin:0!important}
  html.los body #v3l-stats{display:grid;grid-template-columns:1fr 1fr;row-gap:16px}
  html.los body .lang-card .lc-main{grid-template-columns:minmax(0,1fr)}
  html.los body .lang-card .lc-name{grid-row:auto;font-size:20px!important}
  html.los body .lang-card .lc-bar{grid-column:1}
  html.los body .lang-card.v3l-started .lc-go{padding:0 16px!important}
}

/* ---------- 15a: a language's skills (#s-topics) ---------- */
html.los body #s-topics .wrap{max-width:1880px;margin:0 auto;display:block}
html.los body #s-topics .goal{display:flex;align-items:center;gap:14px;background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important;margin:0 0 18px!important;max-width:none!important}
html.los body #s-topics .goal .ring{width:48px;height:48px}
html.los body #s-topics .goal .ring .fg{filter:none}
html.los body #s-topics .goal h2{font:600 12px Inter,system-ui,sans-serif!important;letter-spacing:2.4px;text-transform:uppercase;color:var(--v3-label);margin:0 0 2px}
html.los body #s-topics .goal p{font:400 16px Inter,system-ui,sans-serif;color:#fff}
html.los body #s-topics h1{font-size:clamp(44px,5.6vw,88px);margin:0 0 6px;max-width:none!important}
html.los body #s-topics #topic-sub{max-width:none!important;color:#C9CFDC;margin-bottom:18px}
html.los body .level-picker{max-width:none!important;gap:10px;margin:0 0 26px!important;align-items:center}
html.los body .level-btn{flex:none;background:none!important;border:1px solid var(--v3-hair2)!important;color:#D5DAE5!important;font:500 14px Inter,system-ui,sans-serif!important;padding:0 18px!important;min-height:44px;border-radius:999px!important}
html.los body .level-btn.on{border-color:rgba(255,255,255,.7)!important;color:#fff!important;background:rgba(255,255,255,.06)!important}
html.los body .level-picker .placement-link{flex-basis:auto;width:auto;text-align:left;color:#fff!important;font:500 15px Inter,system-ui,sans-serif!important;padding:0 6px!important;margin-left:8px!important;min-height:44px;text-decoration:underline;text-decoration-color:rgba(255,255,255,.4);text-underline-offset:4px}
html.los body #topic-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:clamp(24px,3vw,56px);max-width:none!important}
html.los body #topic-list > *{grid-column:1/-1}
html.los body #topic-list > .tile{grid-column:auto}
html.los body #topic-list > .tile,html.los body .tile.review-tile,html.los body .tile.stories-tile,html.los body .tile.convos-tile{display:block;background:none!important;border:0!important;border-top:1px solid var(--v3-hair)!important;border-radius:0!important;box-shadow:none!important;animation:none!important;padding:18px 0 16px!important;margin:0 0 8px!important;min-height:44px;color:#fff;transform:none!important}
html.los body #topic-list > .tile::after{display:none!important}
html.los body #topic-list > .tile .ic{display:none}
html.los body #topic-list > .tile > span{display:block;font:500 23px Inter,system-ui,sans-serif;letter-spacing:-.2px}
html.los body #topic-list > .tile .meta{font:400 15px/1.45 Inter,system-ui,sans-serif;color:var(--v3-dim);margin-top:6px}
html.los body #topic-list > .tile .v3l-eb{display:block;font:600 12px Inter,system-ui,sans-serif;letter-spacing:2.4px;text-transform:uppercase;color:var(--v3-label);margin-bottom:8px}
html.los body #topic-list > .tile:hover > span{text-decoration:underline;text-decoration-color:rgba(255,255,255,.35);text-underline-offset:5px}
html.los body #topic-list > .tile:focus-visible{outline:2px solid var(--v3-teal);outline-offset:4px}
html.los body .lvl{display:flex!important;background:none!important;border:0!important;box-shadow:none!important;color:var(--v3-label)!important;font:600 12px Inter,system-ui,sans-serif!important;letter-spacing:2.6px!important;padding:0!important;margin:30px 0 4px!important;border-radius:0!important;text-transform:uppercase}
html.los body .lvl::before{display:none!important}
html.los body .lvl .lv-name{color:#D5DAE5;font-weight:600;margin-left:6px;letter-spacing:2.6px}
html.los body .skill-path{border:0!important;outline:0!important;box-shadow:none!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(32px,4vw,64px);padding:0!important;background:none!important;border-radius:0!important;align-items:stretch}
html.los body .skill-path::before,html.los body .skill-path::after{display:none!important}
html.los body .skill-node-wrap{position:relative;width:auto!important;transform:none!important;margin:0!important;display:block!important;padding:13px 0 14px;border-top:1px solid var(--v3-hair);min-height:44px}
html.los body .skill-node{position:absolute!important;inset:0;width:auto!important;height:auto!important;border:0!important;border-radius:8px!important;background:none!important;box-shadow:none!important;font-size:0!important;animation:none!important;transform:none!important;z-index:2;cursor:pointer}
html.los body .skill-node::before,html.los body .skill-node::after{display:none!important}
html.los body .skill-node > *{display:none!important}
html.los body .skill-node:hover{background:rgba(255,255,255,.035)!important}
html.los body .skill-node:focus-visible{outline:2px solid var(--v3-teal);outline-offset:2px}
html.los body .path-guide{display:none!important}
html.los body .skill-node-label{display:block;max-width:none!important;background:none!important;padding:0 !important;text-align:left!important;font:500 18.5px/1.3 Inter,system-ui,sans-serif!important;color:#fff!important;padding-right:170px!important}
html.los body .v3l-crowns{position:absolute;right:0;top:15px;display:flex;align-items:center;gap:10px;z-index:1}
html.los body .v3l-crowns .d{display:flex;gap:5px}
html.los body .v3l-crowns .d i{width:9px;height:9px;border-radius:50%;background:var(--v3-gold)}
html.los body .v3l-crowns .d i.e{background:transparent;border:1px solid rgba(255,255,255,.4);box-sizing:border-box}
html.los body .v3l-crowns .t{font:500 13px Inter,system-ui,sans-serif;color:#B4BCCD;white-space:nowrap}
html.los body .v3l-next .v3l-crowns .t{color:var(--v3-gold)}
html.los body .v3l-track{display:block;height:4px;border-radius:99px;background:rgba(255,255,255,.12);overflow:hidden;margin-top:10px}
html.los body .v3l-track i{display:block;height:100%;border-radius:99px;background:var(--v3-teal)}
html.los body #back-lang{display:inline-flex!important;width:auto;background:none!important;border:1px solid var(--v3-hair2)!important;border-radius:999px!important;box-shadow:none!important;color:#D5DAE5;font:500 15px Inter,system-ui,sans-serif;padding:0 20px;min-height:44px;margin-top:30px!important;max-width:none!important;margin-left:0!important}
@media (max-width:1099px){html.los body #topic-list{grid-template-columns:minmax(0,1fr)}html.los body .skill-path{grid-template-columns:minmax(0,1fr)}html.los body #topic-list > .tile{margin:0!important}}
@media (max-width:600px){
  html.los body .skill-node-label{font-size:17px!important;padding-right:0!important}
  html.los body .v3l-crowns{position:static;margin-top:8px}
  html.los body .level-picker .placement-link{margin-left:0!important;flex-basis:100%}
  html.los body #topic-list > .tile > span{font-size:20px}
}

/* ---------- 15b: lesson ---------- */
html.los body .bar{background:#04060D!important;border-bottom:1px solid var(--v3-hair)!important;min-height:60px;padding:8px var(--v3l-gut);gap:16px}
html.los body .bar .quit{color:#D5DAE5;font-size:24px;min-width:44px;min-height:44px;border-radius:50%}
html.los body .bar .quit:focus-visible{outline:2px solid var(--v3-teal)}
html.los body .bar .track{height:3px!important;border-radius:99px;background:rgba(255,255,255,.14)!important}
html.los body .bar .fill{background:var(--v3-gold)!important;box-shadow:none!important;border-radius:99px}
html.los body .bar .combo{font:600 13px Inter,system-ui,sans-serif;color:var(--v3-gold)}
html.los body .bar .v3l-sup{display:inline-flex}
html.los body #s-lesson .wrap,html.los body #s-placement .wrap,html.los body #s-story .wrap,html.los body #s-convo .wrap,html.los body #s-done .wrap{max-width:1240px;margin:0 auto}
#v3l-lhead{display:none}
html.los body #v3l-lhead{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin:4px 0 8px}
html.los body #v3l-lhead .v3l-label{margin:0}
html.los body #v3l-lhead .c{font:500 14px Inter,system-ui,sans-serif;color:#B4BCCD;white-space:nowrap}
html.los body #v3l-lhead .c b{color:#fff;font-weight:600}
html.los body #lesson-guide{display:flex;justify-content:center;margin:6px 0 2px}
html.los body #lesson-guide .lg-guide{display:inline-flex;align-items:center;gap:10px}
html.los body #lesson-guide .lg-guide img{width:52px;height:auto}
html.los body #lesson-guide .lg-bubble{font-size:14px!important;padding:8px 12px!important}
html.los body .qkind{text-align:center;color:var(--v3-label)!important;font:600 12px Inter,system-ui,sans-serif!important;letter-spacing:3.4px!important;margin:18px 0 8px}
html.los body #q-body .prompt,html.los body #q-body > div.prompt{font-family:Inter,"Segoe UI",system-ui,sans-serif!important;font-weight:300;font-size:clamp(30px,4.4vw,68px);line-height:1.12;letter-spacing:-.02em;text-align:center;color:var(--v3-ink88);margin:6px auto 26px;max-width:1180px;overflow-wrap:anywhere;text-shadow:none}
html.los body #q-body .prompt .tgt{color:#fff!important;font-weight:500;text-shadow:none!important;-webkit-text-fill-color:#fff!important;background:none!important}
html.los body .rom{color:#C9CFDC!important;font-size:16px}
html.los body #q-body .prompt .rom{font-size:clamp(17px,1.6vw,22px);font-weight:400;letter-spacing:0}
html.los body .speak-btn{display:flex!important;margin:0 auto 26px!important;width:auto!important;min-height:52px!important;padding:0 26px!important;border-radius:999px!important;background:none!important;border:1px solid rgba(255,255,255,.22)!important;color:#fff!important;font:500 16px Inter,system-ui,sans-serif!important;box-shadow:none!important}
html.los body .speak-btn.big{min-height:56px!important;font-size:17px!important;max-width:420px}
html.los body .speak-btn:hover{border-color:rgba(242,193,78,.6)!important}
html.los body #q-body .choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;counter-reset:v3l}
html.los body #q-body .choices.sign-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
html.los body .choice{background:#0A0E1A!important;border:1px solid rgba(255,255,255,.14)!important;border-radius:14px!important;box-shadow:none!important;color:#fff!important;font:400 clamp(18px,1.6vw,26px)/1.3 Inter,system-ui,sans-serif!important;min-height:76px!important;padding:14px 14px 14px 22px!important;gap:18px!important;overflow-wrap:anywhere;text-align:left}
html.los body #q-body .choices:not(.sign-grid) > .choice::before{counter-increment:v3l;content:counter(v3l,upper-alpha);flex:none;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.22);display:flex;align-items:center;justify-content:center;font:500 15px Inter,system-ui,sans-serif;color:#D5DAE5;position:static!important;background:none!important;opacity:1!important;transform:none!important;animation:none!important}
html.los body .choice > span:first-child{flex:1;min-width:0}
html.los body .choice .say{flex:none;width:44px;height:44px;margin-left:auto;padding:0!important;border-radius:50%;border:1px solid rgba(255,255,255,.18);opacity:1!important;font-size:0!important;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23F2C14E' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M11 5 6 9H3v6h3l5 4z'/%3E%3Cpath d='M15.5 8.5a5 5 0 0 1 0 7'/%3E%3Cpath d='M18.5 5.5a9 9 0 0 1 0 13'/%3E%3C/svg%3E") center/20px no-repeat}
html.los body .choice:hover{border-color:rgba(255,255,255,.34)!important}
html.los body .choice.sel{border-color:var(--v3-gold)!important;background:rgba(242,193,78,.07)!important;box-shadow:0 0 0 1px rgba(242,193,78,.45)!important}
html.los body .choice.sel::before{border-color:var(--v3-gold)!important;color:var(--v3-gold)!important}
html.los body .choice.right{border-color:#69F0AE!important;background:rgba(105,240,174,.08)!important;box-shadow:0 0 0 1px rgba(105,240,174,.4)!important}
html.los body .choice.wrong{border-color:#FCA5A5!important;background:rgba(252,165,165,.08)!important}
html.los body .choice.right::after,html.los body .choice.wrong::after{display:none!important}
html.los body .match{gap:14px}
html.los body .match .choice{font-size:18px!important;min-height:60px!important;padding:12px 16px!important}
html.los body .sign-choice{justify-content:center;padding:10px!important;min-height:110px!important}
html.los body .sign-box svg{filter:none}
.v3l-hint{display:none}
html.los body .v3l-hint{display:block;text-align:center;font:400 15px Inter,system-ui,sans-serif;color:var(--v3-dim);margin:20px 0 0}
html.los body .slot{border-bottom:1px solid rgba(255,255,255,.22)!important;background:none!important}
html.los body .word{background:#0A0E1A!important;border:1px solid rgba(255,255,255,.18)!important;border-radius:12px!important;font:500 18px Inter,system-ui,sans-serif!important;color:#fff!important;box-shadow:none!important;min-height:48px}
html.los body input.typed{background:#0A0E1A!important;border:1px solid rgba(255,255,255,.22)!important;border-radius:14px!important;font:400 22px Inter,system-ui,sans-serif!important;color:#fff;min-height:60px;max-width:760px;display:block;margin:0 auto}
html.los body input.typed:focus{border-color:var(--v3-gold)!important;box-shadow:0 0 0 1px rgba(242,193,78,.4)!important}
html.los body .idk-btn{color:#D5DAE5;font:500 15px Inter,system-ui,sans-serif;min-height:44px;text-decoration:underline;text-decoration-color:rgba(255,255,255,.35);text-underline-offset:4px}
html.los body #q-body .go{display:block;max-width:420px;margin:12px auto 0!important}
/* foot: Check (primary, gold) and the verdict panel */
html.los body .foot-static,html.los body .foot{background:#04060D!important;border-top:1px solid var(--v3-hair)!important;padding:14px var(--v3l-gut) calc(14px + env(safe-area-inset-bottom))!important}
html.los body .foot-static .wrap,html.los body .foot .wrap{max-width:1240px;margin:0 auto;padding:0}
html.los body .foot-static .wrap{display:flex;justify-content:flex-end}
html.los body .go,html.los body .lgp-go,html.los body .story-nav .cta,html.los body #placement-body .cta,html.los body #s-done .cta{font-family:Inter,system-ui,sans-serif!important;font-weight:600!important;font-size:18px!important;color:#231a02!important;background:linear-gradient(160deg,var(--v3-gold2),var(--v3-gold))!important;border:0!important;border-radius:999px!important;min-height:56px;box-shadow:0 6px 22px rgba(242,193,78,.24)!important;text-shadow:none!important}
html.los body .go::after,html.los body .lgp-go::after{display:none!important}
html.los body .foot-static .go{width:auto;min-width:240px;padding:0 40px}
html.los body .go[disabled]{background:none!important;border:1px solid rgba(255,255,255,.2)!important;color:#B4BCCD!important;box-shadow:none!important;opacity:1!important;filter:none!important}
html.los body .foot.good{border-top-color:rgba(105,240,174,.55)!important;background:#06130E!important}
html.los body .foot.bad{border-top-color:rgba(252,165,165,.55)!important;background:#160909!important}
html.los body .foot::after{display:none!important}
html.los body .verdict{font:600 22px Inter,system-ui,sans-serif!important;letter-spacing:-.2px}
html.los body .correction{font:400 16px/1.45 Inter,system-ui,sans-serif;color:#D5DAE5}
html.los body .foot .go{max-width:420px;margin-left:auto;display:block}
html.los body .hearts{font-size:16px}
@media (max-width:767px){
  html.los body #q-body .choices{grid-template-columns:minmax(0,1fr);gap:12px}
  html.los body #q-body .choices.sign-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  html.los body .choice{min-height:64px!important;font-size:19px!important;padding:10px 10px 10px 14px!important;gap:14px!important}
  html.los body #q-body .prompt{font-size:clamp(28px,8vw,40px);margin-bottom:20px}
  html.los body .foot-static .go{width:100%;min-width:0}
  html.los body .foot .go{max-width:none}
  html.los body #lesson-guide .lg-guide img{width:40px}
  html.los body .qkind{margin-top:10px}
}
@media (max-height:520px) and (min-width:600px){
  html.los body #q-body .choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  html.los body .choice{min-height:52px!important;font-size:17px!important;padding:4px 6px 4px 12px!important}
  html.los body #q-body .choices:not(.sign-grid) > .choice::before{width:36px;height:36px}
  html.los body #q-body .prompt{font-size:28px;margin-bottom:12px}
  html.los body #lesson-guide{display:none}
  html.los body .qkind{margin:6px 0 4px}
  html.los body .screen{padding-top:12px}
  html.los body .foot-static,html.los body .foot{padding-top:8px!important;padding-bottom:calc(8px + env(safe-area-inset-bottom))!important}
  html.los body .go{min-height:48px}
  html.los body .v3l-hint{display:none}
  html.los body .bar{min-height:52px;padding-top:4px;padding-bottom:4px}
}

/* ---------- placement, stories, conversations, done: same V3 surface ---------- */
html.los body .story-progress{height:3px!important;background:rgba(255,255,255,.14)!important;border-radius:99px}
html.los body .story-progress .fill{background:var(--v3-gold)!important}
html.los body .story-q{font:300 clamp(26px,3.2vw,44px)/1.2 Inter,system-ui,sans-serif;letter-spacing:-.015em;color:var(--v3-ink88);text-align:center;margin:18px 0 26px}
html.los body .story-q .tgt{color:#fff;font-weight:500}
html.los body .story-choice,html.los body .convo-choice{background:#0A0E1A!important;border:1px solid rgba(255,255,255,.14)!important;border-radius:14px!important;box-shadow:none!important;color:#fff!important;font:400 19px/1.35 Inter,system-ui,sans-serif!important;min-height:60px;max-width:900px;margin-left:auto!important;margin-right:auto!important}
html.los body .story-choice.right,html.los body .convo-choice.picked{border-color:#69F0AE!important;background:rgba(105,240,174,.08)!important}
html.los body .story-choice.wrong{border-color:#FCA5A5!important;background:rgba(252,165,165,.08)!important}
html.los body .story-choice::before,html.los body .story-choice::after,html.los body .convo-choice::before{display:none!important}
html.los body .convo-choice .en{color:var(--v3-dim);font-size:14px}
html.los body .story-line,html.los body .convo-scene{background:#0A0E1A!important;border:1px solid var(--v3-hair2)!important;box-shadow:none!important}
html.los body .story-line::before,html.los body .convo-scene::before,html.los body .convo-scene::after{display:none!important}
html.los body .story-line .speaker{color:var(--v3-label);letter-spacing:2.4px;font:600 12px Inter,system-ui,sans-serif}
html.los body .story-line .tgt-line{font:500 22px/1.35 Inter,system-ui,sans-serif}
html.los body .story-line .en-line{color:var(--v3-dim);font-size:16px}
html.los body #story-close,html.los body #convo-close,html.los body #placement-close,html.los body #stories-back,html.los body #convos-back{display:inline-flex!important;width:auto;background:none!important;border:1px solid var(--v3-hair2)!important;border-radius:999px!important;box-shadow:none!important;color:#D5DAE5;font:500 15px Inter,system-ui,sans-serif;min-height:44px;padding:0 20px}
html.los body #stories-list .tile,html.los body #convos-list .tile{background:none!important;border:0!important;border-top:1px solid var(--v3-hair)!important;border-radius:0!important;box-shadow:none!important;font:500 19px Inter,system-ui,sans-serif;margin:0!important}
html.los body #stories-list .tile .meta,html.los body #convos-list .tile .meta{font:400 15px Inter,system-ui,sans-serif;color:var(--v3-dim)}
html.los body .reward h1{font-size:clamp(40px,5vw,72px)}
html.los body .xp-chip{background:none!important;border:1px solid var(--v3-hair2)!important;box-shadow:none!important;font-family:Inter,system-ui,sans-serif!important}
html.los body .xp-chip::after{display:none!important}

/* ---------- 15c: Memory Check (shown before Lingo's own Daily Review starts) ---------- */
#v3l-mc{display:none}
html.los body #v3l-mc{display:block;position:fixed;left:0;right:0;bottom:0;top:var(--v3l-top,64px);z-index:38;background:#04060D;overflow-y:auto;-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
html.los body #v3l-mc[hidden]{display:none}
html.los.v3l-mc-on body{overflow:hidden}
html.los body #v3l-mc .art{position:absolute;left:0;right:0;top:0;height:560px;pointer-events:none;overflow:hidden}
html.los body #v3l-mc .art i{position:absolute;inset:0;background:url(/landing/hero-town-1600.webp) center 60%/cover no-repeat;opacity:.46}
html.los body #v3l-mc .art b{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,6,13,.88),rgba(4,6,13,.6) 55%,rgba(4,6,13,.5)),linear-gradient(180deg,rgba(4,6,13,.2),rgba(4,6,13,.6) 60%,#04060D)}
html.los body #v3l-mc .in{position:relative;max-width:1880px;margin:0 auto;padding:34px var(--v3l-gut) 130px;min-height:100%;box-sizing:border-box;display:flex;flex-direction:column}
html.los body #v3l-mc .gd{position:absolute;right:var(--v3l-gut);top:14px;width:132px;height:auto;filter:drop-shadow(0 8px 18px rgba(0,0,0,.5))}
html.los body #v3l-mc h1{font-size:clamp(40px,5.6vw,92px);margin:6px 0 12px;padding-right:160px}
html.los body #v3l-mc .why{font:400 19px/1.5 Inter,system-ui,sans-serif;color:#C9CFDC;max-width:820px;padding-right:160px}
html.los body #v3l-mc .st{display:flex;gap:clamp(28px,6vw,110px);border-top:1px solid var(--v3-hair);border-bottom:1px solid var(--v3-hair);padding:16px 0 18px;margin:26px 0 10px}
html.los body #v3l-mc .st .l{font:600 12px Inter,system-ui,sans-serif;letter-spacing:2.4px;text-transform:uppercase;color:var(--v3-label);margin-bottom:6px;white-space:nowrap}
html.los body #v3l-mc .st .v{font:300 clamp(26px,2.4vw,36px)/1.1 Inter,system-ui,sans-serif;color:#fff;white-space:nowrap}
html.los body #v3l-mc .list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:clamp(32px,4vw,72px)}
html.los body #v3l-mc .v3l-w{display:flex;align-items:center;gap:18px;min-height:80px;padding:12px 0;border-top:1px solid var(--v3-hair)}
html.los body #v3l-mc .v3l-w .tx{flex:1;min-width:0}
html.los body #v3l-mc .v3l-w .t{font:500 clamp(22px,1.9vw,30px)/1.2 Inter,system-ui,sans-serif;color:#fff;overflow-wrap:anywhere}
html.los body #v3l-mc .v3l-w .e{font:400 16px/1.4 Inter,system-ui,sans-serif;color:var(--v3-dim);margin-top:3px;overflow-wrap:anywhere}
html.los body #v3l-mc .v3l-w .r{font:400 15px Inter,system-ui,sans-serif;color:#C9CFDC}
html.los body #v3l-mc .v3l-w .cr{flex:none;display:flex;flex-direction:column;align-items:flex-end;gap:6px;text-align:right}
html.los body #v3l-mc .v3l-w .cr .d{display:flex;gap:5px}
html.los body #v3l-mc .v3l-w .cr .d i{width:9px;height:9px;border-radius:50%;background:var(--v3-gold)}
html.los body #v3l-mc .v3l-w .cr .d i.e{background:transparent;border:1px solid rgba(255,255,255,.4);box-sizing:border-box}
html.los body #v3l-mc .v3l-w .cr .k{font:500 13px Inter,system-ui,sans-serif;color:#B4BCCD;white-space:nowrap;max-width:200px;overflow:hidden;text-overflow:ellipsis}
html.los body #v3l-mc .hear{all:unset;box-sizing:border-box;cursor:pointer;flex:none;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.22);display:flex;align-items:center;justify-content:center;color:var(--v3-gold)}
html.los body #v3l-mc .hear:hover{border-color:rgba(242,193,78,.6)}
html.los body #v3l-mc .hear:focus-visible,html.los body #v3l-mc .act button:focus-visible{outline:2px solid var(--v3-teal);outline-offset:2px}
html.los body #v3l-mc .hear svg{width:20px;height:20px}
html.los body #v3l-mc .act{position:fixed;left:0;right:0;bottom:0;z-index:2;background:#04060D;border-top:1px solid var(--v3-hair);padding:14px var(--v3l-gut) calc(14px + env(safe-area-inset-bottom))}
html.los body #v3l-mc .act .ai{max-width:1880px;margin:0 auto;display:flex;align-items:center;gap:22px}
html.los body #v3l-mc .act .go{width:auto;min-width:200px;padding:0 34px;margin:0!important;max-width:none}
html.los body #v3l-mc .act .no{all:unset;box-sizing:border-box;cursor:pointer;min-height:48px;padding:0 10px;display:inline-flex;align-items:center;font:500 16px Inter,system-ui,sans-serif;color:#D5DAE5}
html.los body #v3l-mc .act .hint{margin-left:auto;font:400 15px Inter,system-ui,sans-serif;color:var(--v3-dim);text-align:right}
@media (max-width:1099px){html.los body #v3l-mc .list{grid-template-columns:minmax(0,1fr)}}
@media (max-width:700px){
  html.los body #v3l-mc .in{padding-top:22px}
  html.los body #v3l-mc .gd{width:76px;top:10px;right:12px}
  html.los body #v3l-mc h1{padding-right:84px;font-size:clamp(34px,10vw,48px)}
  html.los body #v3l-mc .why{padding-right:0;font-size:16px}
  html.los body #v3l-mc .st{gap:16px;justify-content:space-between}
  html.los body #v3l-mc .st > div{flex:1;min-width:0}
  html.los body #v3l-mc .st .l{white-space:normal;letter-spacing:1.6px;line-height:1.3}
  html.los body #v3l-mc .st .v{font-size:26px}
  html.los body #v3l-mc .v3l-w{gap:12px;min-height:72px}
  html.los body #v3l-mc .v3l-w .cr .k{display:none}
  html.los body #v3l-mc .act .hint{display:none}
  html.los body #v3l-mc .act .go{flex:1;min-width:0;padding:0 18px}
}
@media (max-height:520px){html.los body #v3l-mc .in{padding-top:14px}html.los body #v3l-mc .gd{display:none}html.los body #v3l-mc h1{padding-right:0;font-size:36px}html.los body #v3l-mc .why{padding-right:0}html.los body #v3l-mc .st{margin-top:12px}html.los body #v3l-mc .act{padding-top:8px;padding-bottom:calc(8px + env(safe-area-inset-bottom))}}
@media print{#v3l-mc,#v3l-art,#v3l-leave{display:none!important}}
/* Leave lesson check (in-page, replaces the browser confirm) */
html.los body #v3l-leave{position:fixed;inset:0;z-index:99996;background:rgba(4,6,13,.72);display:flex;align-items:center;justify-content:center;padding:16px;box-sizing:border-box}
html.los body #v3l-leave .bx{width:100%;max-width:420px;box-sizing:border-box;background:#0B1022;border:1px solid var(--v3-hair);border-radius:20px;padding:24px;color:var(--v3-ink);font-family:Inter,system-ui,sans-serif;box-shadow:0 24px 60px rgba(0,0,0,.5)}
html.los body #v3l-leave h2{margin:0 0 8px;font:600 22px/1.25 Inter,system-ui,sans-serif;color:#fff}
html.los body #v3l-leave p{margin:0 0 20px;font-size:16px;line-height:1.5;color:var(--v3-dim)}
html.los body #v3l-leave .rw{display:flex;gap:10px;flex-wrap:wrap}
html.los body #v3l-leave button{flex:1 1 150px;min-height:48px;border-radius:999px;font:600 16px Inter,system-ui,sans-serif;cursor:pointer}
html.los body #v3l-leave .stay{background:transparent;border:1px solid rgba(255,255,255,.22);color:#fff}
html.los body #v3l-leave .go{background:linear-gradient(180deg,#FFD97A,#F2C14E);border:0;color:#231a02}
html.los body #v3l-leave button:focus-visible{outline:2px solid var(--v3-teal);outline-offset:2px}
@media (prefers-reduced-motion:reduce){html.los body .v3l-track i{transition:none}}
html.los body .stats .who.v3l-hasav{padding-left:42px;background-repeat:no-repeat;background-position:6px center;background-size:28px 28px}
