/* compact-v2: one static identity, one activity row, original learning content. */
html.lesson-compact-v2 [hidden]{display:none!important}
:root.journey-v29.lesson-compact-v2 body .app>.hd.journey-header{position:static!important;min-height:0!important;padding:8px 18px!important;margin-bottom:0!important;box-shadow:none!important;transform:none!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
:root.journey-v29.lesson-compact-v2 body .app>.hd.journey-header .hd-row{grid-template-columns:44px minmax(0,1fr) 44px!important;gap:8px!important;max-width:1120px;margin:0 auto}
html.journey-v29.lesson-compact-v2 .hd-back{display:flex!important;align-items:center;justify-content:center;box-shadow:none!important}
html.journey-v29.lesson-compact-v2 .hd-tt{min-width:0;text-align:left!important}
html.journey-v29.lesson-compact-v2 .hd-kicker{margin:0!important;line-height:1.3!important;font-size:12px!important;letter-spacing:0!important}
html.journey-v29.lesson-compact-v2 .hd-name{margin:4px 0 0!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:18px!important;line-height:1.4!important}
html.journey-v29.lesson-compact-v2 .pbar{height:2px!important;max-width:1120px;margin:8px auto 0!important}
html.journey-v29.lesson-compact-v2 .app>.journey-toolbox{max-width:1156px;margin:0 auto;padding:0 18px;border:0;border-radius:0;box-shadow:none;background:transparent;backdrop-filter:none}
html.journey-v29.lesson-compact-v2 .journey-tools-title{display:none}
:root.journey-v29.lesson-compact-v2 body .app>.journey-toolbox .bnav{position:static!important;inset:auto!important;transform:none!important;width:100%!important;max-width:none!important;display:flex!important;justify-content:flex-start;gap:8px!important;padding:0!important;border:0!important;border-bottom:1px solid var(--tl-hair,currentColor)!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important}
:root.journey-v29.lesson-compact-v2 body .app>.journey-toolbox .bnav button{min-width:44px!important;min-height:44px!important;padding:8px 12px!important;border:0!important;border-bottom:2px solid transparent!important;border-radius:0!important;background:transparent!important;font:500 16px/1.5 var(--tl-font-ui,system-ui)!important;white-space:nowrap}
:root.journey-v29.lesson-compact-v2 body .app>.journey-toolbox .bnav button.on{border-bottom-color:var(--tl-seal,currentColor)!important;color:var(--tl-seal,currentColor)!important;font-weight:650!important}
:root.journey-v29.lesson-compact-v2 body .app>.journey-toolbox .bnav button .ic{display:none!important}
html.journey-v29.lesson-compact-v2 .journey-shell{display:block;max-width:1156px;min-height:0;margin:0 auto;padding:12px 18px 26px}
html.journey-v29.lesson-compact-v2 .journey-stage{min-height:0;padding:18px;border-radius:var(--tl-radius-panel,22px)}
html.journey-v29.lesson-compact-v2 .journey-chrome-reveal,html.journey-v29.lesson-compact-v2 .journey-chrome-close{display:none!important}
html.lesson-compact-v2 .lesson-compact-settings-trigger{display:flex!important;align-items:center;justify-content:center;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:8px!important;border:1px solid var(--tl-hair,currentColor)!important;border-radius:var(--tl-radius-control,12px)!important;background:transparent!important;box-shadow:none!important;color:var(--tl-ink,currentColor)!important}
html.lesson-compact-v2 .lesson-compact-settings-trigger svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}
/* Reused theme buttons must not paint their old masked icon over Settings. */
html.lesson-compact-v2 .lesson-compact-settings-trigger::before,html.lesson-compact-v2 .lesson-compact-settings-trigger::after{content:none!important;display:none!important}
html.lesson-compact-v2 .lesson-compact-settings{box-sizing:border-box;width:min(640px,calc(100vw - 24px));max-height:88dvh;overflow:auto;margin:auto;padding:18px;color:var(--tl-ink,CanvasText);background:var(--tl-glass-strong,Canvas);border:1px solid var(--tl-hair,currentColor);border-radius:var(--tl-radius-panel,22px);font:16px/1.7 var(--tl-font-ui,system-ui)}
html.lesson-compact-v2 .lesson-compact-settings::backdrop{background:rgba(0,0,0,.4);backdrop-filter:blur(6px)}
html.lesson-compact-v2 .lesson-compact-settings>header{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--tl-hair,currentColor)}
html.lesson-compact-v2 .lesson-compact-settings h2{margin:0;font:650 22px/1.4 var(--tl-font-ui,system-ui)}
html.lesson-compact-v2 .lesson-compact-settings h3{margin:12px 0 8px;font:600 16px/1.5 var(--tl-font-ui,system-ui)}
html.lesson-compact-v2 .lesson-compact-settings button,html.lesson-compact-v2 .lesson-compact-settings a,html.lesson-compact-v2 .lesson-compact-settings summary{min-height:44px!important;min-width:44px;color:inherit;font:500 16px/1.5 var(--tl-font-ui,system-ui)}
html.lesson-compact-v2 .lesson-compact-settings>header button{padding:8px 12px;border:1px solid var(--tl-hair,currentColor);border-radius:12px;background:transparent}
html.lesson-compact-v2 .lesson-compact-details .pmeta{display:flex!important;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:0;font-size:14px!important}
html.lesson-compact-v2 .lesson-compact-details summary{display:flex;align-items:center;cursor:pointer;border-top:1px solid var(--tl-hair,currentColor);margin-top:12px}
html.lesson-compact-v2 .lesson-compact-details .journey-panel,html.lesson-compact-v2 .lesson-compact-details .journey-companion{position:static;display:block;max-height:none;min-height:0;margin:0;padding:8px;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none}
html.lesson-compact-v2 .lesson-compact-details .journey-panel__title,html.lesson-compact-v2 .lesson-compact-details .journey-companion__mark,html.lesson-compact-v2 .lesson-compact-details .journey-companion>small{display:none}
html.lesson-compact-v2 .lesson-compact-details .journey-step-list{display:block;overflow:visible}
html.lesson-compact-v2 .lesson-compact-details .journey-step{width:100%;max-width:none;margin:4px 0;min-height:44px}
html.lesson-compact-v2 .lesson-compact-settings [hidden]{display:none!important}
html.lesson-compact-v2 .lesson-compact-settings :focus-visible,html.lesson-compact-v2 .lesson-compact-settings-trigger:focus-visible{outline:2px solid var(--tl-focus,currentColor);outline-offset:3px}
@media(max-width:780px){
 :root.journey-v29.lesson-compact-v2 body .app>.journey-toolbox .bnav button{flex:1;padding-inline:4px!important}
 html.journey-v29.lesson-compact-v2 .journey-shell{padding:8px 8px 18px}
 :root.journey-v29.lesson-compact-v2 body .app>.hd.journey-header{padding:8px 12px!important}
 html.journey-v29.lesson-compact-v2 .hd-name{font-size:16px!important}
 html.journey-v29.lesson-compact-v2 .app>.journey-toolbox{padding-inline:12px}
 html.journey-v29.lesson-compact-v2 .journey-stage{padding:12px}
}
/* The study surface, not the window, owns the word/meaning breakpoint. */
html.lesson-compact-v2 .word-focus-card{container-type:inline-size}
html.lesson-compact-v2.word-focus-v30 .word-focus-panel--full>.word-focus-panel:first-child>.word-focus-kicker{display:none}
html.lesson-compact-v2.word-focus-v30 .word-focus-panel--full>.word-focus-panel{padding:18px}
html.lesson-compact-v2.word-focus-v30 #flowBox.word-focus-v30-active>.fl-top{padding:8px 0!important}
html.lesson-compact-v2.word-focus-v30 #flowBox.word-focus-v30-active .fl-step{font-size:13px!important;line-height:1.5!important;letter-spacing:0!important;text-transform:none!important}
@container(max-width:640px){
 html.lesson-compact-v2.word-focus-v30 .word-focus-hero-grid{grid-template-columns:minmax(0,1fr);gap:18px;align-items:start}
 html.lesson-compact-v2.word-focus-v30 .word-focus-hero-copy{padding:18px 0 0;border-left:0;border-top:1px solid var(--wf-hair)}
 html.lesson-compact-v2.word-focus-v30 .word-focus-meaning{max-width:none;font-size:18px;line-height:1.7}
 html.lesson-compact-v2.word-focus-v30 .word-focus-meta{grid-template-columns:repeat(2,minmax(0,1fr))}
 html.lesson-compact-v2.word-focus-v30 .word-focus-meaning-label{font-size:12px}
}
html.lesson-compact-v2 .lesson-compact-setting-row{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid var(--tl-hair,currentColor);padding:8px 0}
html.lesson-compact-v2 .lesson-compact-settings #tl-ctl,html.lesson-compact-v2 .lesson-compact-settings #tl-furi,html.lesson-compact-v2 .lesson-compact-settings #hnc-am,html.lesson-compact-v2 .lesson-compact-settings #tln-bell,html.lesson-compact-v2 .lesson-compact-settings #tlp-btn{position:static!important;inset:auto!important;transform:none!important;margin:0!important}
:root.journey-v29.lesson-compact-v2 body .app>.hd.journey-header .hd-row>.hd-back{grid-column:1!important;grid-row:1!important}
:root.journey-v29.lesson-compact-v2 body .app>.hd.journey-header .hd-row>.hd-tt{grid-column:2!important;grid-row:1!important;justify-self:stretch!important}
:root.journey-v29.lesson-compact-v2 body .app>.hd.journey-header .hd-row>.lesson-compact-settings-trigger{grid-column:3!important;grid-row:1!important;justify-self:end!important}
html.lesson-compact-v2 .lm-switch{margin-bottom:8px!important}
html.lesson-compact-v2 .fl-chunkmap,html.lesson-compact-v2 .fl-dots{display:none!important}
html.lesson-compact-v2 #flowBox>.fl-top{display:flex!important;align-items:center;gap:8px;padding:8px 0!important;margin:0!important;min-height:0!important}
html.lesson-compact-v2 #flowBox .fl-step{font-size:13px!important;line-height:1.5!important;letter-spacing:0!important;text-transform:none!important}
html.lesson-compact-v2 #flowBox{padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important}
/* The current item is already identified by the lesson position line. */
:root.journey-v29.lesson-compact-v2 .app .wcard:has(.hw-box)>.w-num{display:none!important}
html.lesson-compact-v2.word-focus-v30 .word-focus-title[data-length=xlong]{display:block;white-space:normal;overflow-wrap:normal;line-break:strict;line-height:1.7}
html.lesson-compact-v2.word-focus-v30 .word-focus-title[data-length=xlong] .word-focus-piece{display:inline}

:root.lesson-compact-v2 .app button{min-height:44px!important;min-width:44px!important}
/* These dialects already own their paper; remove only the redundant outer surface. */
:root.journey-v29.lesson-compact-v2 .journey-stage:has(.word-focus-card),:root.journey-v29.lesson-compact-v2 .journey-stage:has(.grammar-focus-card),:root.journey-v29.lesson-compact-v2 .journey-stage:has(.tl-day__man){padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;backdrop-filter:none}
:root.journey-v29.lesson-compact-v2 .journey-stage:has(.word-focus-card)::before,:root.journey-v29.lesson-compact-v2 .journey-stage:has(.grammar-focus-card)::before,:root.journey-v29.lesson-compact-v2 .journey-stage:has(.tl-day__man)::before{display:none}

/* WV01 — local journey settings repair, appended to captured compact CSS.
 * No global token, typography, geometry, lesson/runtime or source-link change.
 * DS token preimage: 7f7f3f0f8acbce95fab791214463ed6677d0a03ea7a7b394a908a23ddf386eab.
 * Compact CSS a55953b4 line 23 otherwise falls back to Canvas/CanvasText,
 * while chrome CSS uses --j-muted. Keep one coherent, scoped color family.
 */
html.journey-v29.lesson-compact-v2 dialog.journey-settings-dialog.lesson-compact-settings {
  --j-ink:var(--tl-ink,#172833);
  /* The small/intro text needs primary ink on translucent glass. Soft ink
   * does not guarantee 4.5:1 when the glass is composited over black. */
  --j-muted:var(--tl-ink,#172833);
  --j-line:var(--tl-hair,color-mix(in srgb,var(--j-ink) 16%,transparent));
  --j-edge:var(--tl-glass-border,rgba(255,255,255,.62));
  --j-glass-raised:var(--tl-glass-strong,rgba(250,252,249,.82));
  --wv01-focus:var(--tl-focus,#1f7087);
  background:var(--j-glass-raised);
  color:var(--j-ink);
  border-color:var(--j-line);
}
html.journey-v29.lesson-compact-v2[data-mode="dark"] dialog.journey-settings-dialog.lesson-compact-settings {
  --j-ink:var(--tl-ink,#f0eee6);
  --j-muted:var(--tl-ink,#f0eee6);
  --j-line:var(--tl-hair,rgba(210,235,248,.19));
  --j-edge:var(--tl-glass-border,rgba(255,255,255,.16));
  --j-glass-raised:var(--tl-glass-strong,rgba(5,18,30,.84));
  --wv01-focus:var(--tl-focus,#78c9db);
}
html.journey-v29.lesson-compact-v2 dialog.journey-settings-dialog.lesson-compact-settings > .journey-settings-dialog__head {
  background:var(--j-glass-raised);
  color:var(--j-ink);
  border-bottom-color:var(--j-line);
}
html.journey-v29.lesson-compact-v2 dialog.journey-settings-dialog.lesson-compact-settings :focus-visible {
  outline:2px solid var(--wv01-focus);
  outline-offset:3px;
}
html.journey-v29.lesson-compact-v2 .journey-settings-trigger.lesson-compact-settings-trigger:focus-visible {
  outline:2px solid var(--tl-focus,#1f7087);
  outline-offset:3px;
}
html.journey-v29.lesson-compact-v2[data-mode="dark"] .journey-settings-trigger.lesson-compact-settings-trigger:focus-visible {
  outline-color:var(--tl-focus,#78c9db);
}
@media (prefers-reduced-transparency:reduce) {
  html.journey-v29.lesson-compact-v2 dialog.journey-settings-dialog.lesson-compact-settings {
    --j-glass-raised:rgb(250,252,249);
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
  }
  html.journey-v29.lesson-compact-v2[data-mode="dark"] dialog.journey-settings-dialog.lesson-compact-settings {
    --j-glass-raised:rgb(5,18,30);
  }
  html.journey-v29.lesson-compact-v2 dialog.journey-settings-dialog.lesson-compact-settings > .journey-settings-dialog__head,
  html.journey-v29.lesson-compact-v2 dialog.journey-settings-dialog.lesson-compact-settings::backdrop {
    -webkit-backdrop-filter:none;
    backdrop-filter:none;
  }
}

/* WV01 V2 — root actual-render finding: intro14px/hints12px are too small.
 * Raise only these instructional texts; preserve family, colors, DOM,
 * control44, source guards, runtime and every geometry declaration. */
html.journey-v29.lesson-compact-v2 dialog.journey-settings-dialog.lesson-compact-settings .journey-settings-dialog__intro,
html.journey-v29.lesson-compact-v2 dialog.journey-settings-dialog.lesson-compact-settings .journey-settings-row__copy small {
  font-size:16px;
  line-height:1.6;
}

/* WV01 source control — the legacy .hd-mode::after is masked only inside
 * .hd-row. Moving this labeled source link into Settings leaves an unmasked
 * 21px square. The visible source label already names the action; suppress
 * only that orphan icon box, preserving link, mode icons and control44. */
html.journey-v29.lesson-compact-v2 dialog.journey-settings-dialog.lesson-compact-settings [data-journey-settings-slot="source"] > a.hd-mode.journey-settings-control::after {
  content:none;
  display:none;
}

/* WV01 paired moved controls: both legacy absolute ::after icons anchor to
 * the dialog once their owners become static. Native metadata proves the
 * two owners below; their real emoji/source text and accessible labels stay.
 * content:none prevents generation even where the older mode rule keeps
 * display:inline-block!important. No display:none or global icon override. */
html.journey-v29.lesson-compact-v2 dialog.journey-settings-dialog.lesson-compact-settings [data-journey-settings-slot="display"] > button#modeBtn.hd-mode.journey-settings-control::after,
html.journey-v29.lesson-compact-v2 dialog.journey-settings-dialog.lesson-compact-settings [data-journey-settings-slot="source"] > a.hd-mode.journey-settings-control::after {
  content:none;
}
