/* Speaking entry page. Uses the current learning-space brand tokens. */
.speaking-shell { min-height:100svh; }
.speaking-shell .speaking-header-label { color:var(--muted); font-size:13px; }
.speaking-shell .workspace-nav a { font-size:15px; }
.speaking-shell .workspace-nav-group > a { color:var(--navy); }
.speaking-shell .translation-switcher {
  max-width:1104px; margin:0 auto; padding:26px 32px 0;
  display:flex; align-items:center; justify-content:space-between; gap:20px;
}
.speaking-breadcrumb { display:flex; align-items:center; gap:12px; font-size:13px; color:var(--line); }
.speaking-breadcrumb a { display:inline-flex; align-items:center; min-height:44px; color:var(--muted); text-decoration:none; font-size:13px; padding:0; }
.speaking-breadcrumb a:last-child { color:var(--ink); }
.speaking-breadcrumb a:hover { color:var(--cyan-dark); text-decoration:underline; text-underline-offset:4px; }
.speaking-shell .translation-nav { margin:0; padding:4px; gap:4px; background:#e8f1f3; border:1px solid var(--line); border-radius:14px; }
.speaking-shell .translation-nav a { min-height:44px; padding:8px 28px; border:1px solid transparent; border-radius:10px; background:transparent; color:var(--muted); font-size:14px; font-weight:600; }
.speaking-shell .translation-nav a[aria-current="page"] { background:var(--card); border-color:var(--line); color:var(--cyan-dark); box-shadow:0 2px 6px #12356b06; }
.speaking-shell .translation-nav a:hover { color:var(--cyan-dark); }
.speaking-shell #notice:empty { display:none; }
.speaking-shell #workspace.dual-layout { width:100%; max-width:1104px; margin:0 auto 44px; padding:32px; }
.speaking-shell .dual-nav:empty { display:none; }
.speaking-shell .dual-entry { color:var(--ink); }
.speaking-intro { margin-bottom:30px; }
.speaking-shell .speaking-eyebrow { display:flex; align-items:center; gap:9px; margin:0 0 12px; font-size:10px; font-weight:700; letter-spacing:1.5px; color:var(--cyan-dark); line-height:1.5; }
.speaking-eyebrow::before { content:""; width:6px; height:6px; flex:0 0 6px; border-radius:50%; background:var(--yellow); }
.speaking-shell .speaking-intro h1 { margin:0 0 10px; font-size:36px; line-height:1.35; font-weight:700; letter-spacing:-.5px; color:var(--navy); }
.speaking-shell .speaking-intro-copy { margin:0; font-size:15px; color:var(--muted); line-height:1.8; }
.speaking-shell .speaking-home-grid { gap:22px; grid-template-columns:repeat(2,minmax(0,1fr)); }
.speaking-shell .speaking-entry { display:flex; flex-direction:column; margin:0; padding:30px; border:1px solid var(--line); border-radius:22px; background:var(--card); box-shadow:var(--shadow); }
.speaking-shell .speaking-entry--reasons { background:#f0f9f7; border-color:#d5eae5; }
.speaking-entry-head { display:flex; align-items:center; gap:16px; }
.speaking-entry-icon { display:grid; place-items:center; width:54px; height:54px; flex:0 0 54px; border:1px solid #d6eaf5; border-radius:16px; background:#edf6fc; color:var(--navy); }
.speaking-entry--reasons .speaking-entry-icon { background:#def2ec; border-color:#cce8df; color:var(--cyan-dark); }
.speaking-entry svg,.speaking-home-note svg { display:block; width:26px; height:26px; fill:none; stroke:currentColor; stroke-width:1.65; stroke-linecap:round; stroke-linejoin:round; }
.speaking-entry-heading { min-width:0; }
.speaking-entry-label { display:block; margin-bottom:4px; font-size:11px; font-weight:500; letter-spacing:.7px; color:var(--muted); }
.speaking-shell .speaking-entry h2 { margin:0; font-size:21px; line-height:1.5; letter-spacing:-.3px; color:var(--navy); }
.speaking-shell .speaking-entry-copy { margin:22px 0 16px; font-size:14px; line-height:1.75; color:var(--muted); }
.speaking-entry-steps { list-style:none; display:flex; flex-wrap:wrap; gap:8px 0; margin:0 0 28px; padding:0; color:var(--ink); font-size:12px; line-height:1.6; }
.speaking-entry-steps li { display:flex; align-items:center; }
.speaking-entry-steps li + li::before { content:""; width:5px; height:5px; margin:0 12px 0 10px; border-top:1px solid #91a9b6; border-right:1px solid #91a9b6; transform:rotate(45deg); }
.speaking-shell .speaking-entry-action { width:100%; min-height:48px; display:flex; align-items:center; justify-content:space-between; gap:14px; margin-top:auto; padding:12px 18px; border:1px solid var(--cyan-dark); border-radius:12px; font-size:14px; line-height:1.5; font-weight:600; background:var(--cyan-dark); color:#fff; transition:background .15s,border-color .15s; }
.speaking-shell .speaking-entry--reasons .speaking-entry-action { background:var(--card); color:var(--cyan-dark); border-color:#a6d1cb; }
.speaking-entry-action svg { width:19px; height:19px; flex:0 0 19px; }
@media (hover:hover) {
  .speaking-shell .speaking-entry-action:hover:not(:disabled) { background:var(--navy); border-color:var(--navy); color:#fff; }
  .speaking-shell .speaking-entry--reasons .speaking-entry-action:hover:not(:disabled) { background:var(--mint-strong); border-color:var(--cyan-dark); color:var(--cyan-dark); }
}
.speaking-shell .speaking-home-note { display:flex; align-items:center; justify-content:center; gap:10px; margin:26px 0 0; color:var(--muted); }
.speaking-home-note svg { width:16px; height:16px; flex:0 0 16px; color:var(--cyan-dark); }
.speaking-shell .speaking-home-note p { margin:0; font-size:12px; line-height:1.8; }
.speaking-shell .app-footer { max-width:1040px; margin:0 32px; padding:18px 0; gap:10px 24px; font-size:11px; line-height:1.8; flex-wrap:wrap; }
.speaking-shell .dual-entry :is(button,summary):focus-visible { outline:3px solid var(--sky); outline-offset:4px; }
@media(min-width:1340px) { .speaking-shell .app-footer { margin-inline:auto; } }
@media(min-width:1100px) { .speaking-shell .workspace-nav a { padding-inline:14px; } }
@media(min-width:761px) and (max-width:1099px) {
  .speaking-shell .app-header-inner { gap:24px; }
  .speaking-shell .workspace-nav .workspace-nav-group { display:contents; }
  .speaking-shell .app-header-meta { display:none; }
}
@media(max-width:760px) {
  .speaking-shell .app-header-inner { min-height:66px; }
  .speaking-shell .workspace-nav a { font-size:13px; min-height:56px; padding:7px 4px !important; }
  .speaking-shell .workspace-nav-group > a { background:var(--mint); color:var(--cyan-dark); }
  .speaking-shell .speaking-header-label { font-size:12px; }
  .speaking-shell .translation-switcher { display:block; padding:12px 20px 0; margin:0; }
  .speaking-breadcrumb { gap:10px; margin-bottom:8px; }
  .speaking-breadcrumb a { min-height:32px; font-size:12px; }
  .speaking-shell .translation-nav { width:100%; }
  .speaking-shell .translation-nav a { flex:1; min-height:44px; font-size:14px; padding:8px 12px; }
  .speaking-shell #workspace.dual-layout { margin:0 auto 24px; padding:24px 20px 0; }
  .speaking-intro { margin-bottom:20px; }
  .speaking-shell .speaking-eyebrow { font-size:9px; letter-spacing:1px; margin-bottom:8px; }
  .speaking-shell .speaking-intro h1 { font-size:28px; margin:0 0 8px; line-height:1.35; }
  .speaking-shell .speaking-intro-copy { font-size:13px; line-height:1.7; max-width:26em; }
  .speaking-shell .speaking-home-grid { grid-template-columns:minmax(0,1fr); gap:12px; }
  .speaking-shell .speaking-entry { padding:18px; border-radius:18px; }
  .speaking-entry-head { gap:12px; }
  .speaking-entry-icon { width:44px; height:44px; flex-basis:44px; border-radius:13px; }
  .speaking-entry-icon svg { width:23px; height:23px; }
  .speaking-entry-label { font-size:10px; margin-bottom:2px; }
  .speaking-shell .speaking-entry h2 { font-size:19px; line-height:1.5; }
  .speaking-shell .speaking-entry-copy { margin:14px 0 10px; font-size:13px; }
  .speaking-entry-steps { font-size:11px; margin-bottom:18px; }
  .speaking-entry-steps li + li::before { margin-inline:9px 10px; }
  .speaking-shell .speaking-entry-action { min-height:44px; padding:10px 14px; font-size:14px; border-radius:10px; }
  .speaking-shell .speaking-home-note { justify-content:flex-start; align-items:flex-start; gap:8px; margin-top:20px; }
  .speaking-home-note svg { margin-top:2px; }
  .speaking-shell .speaking-home-note p { font-size:11px; }
  .speaking-shell .app-footer { margin-inline:20px; padding:16px 0; gap:4px; font-size:10px; }
}
@media(max-width:359px) {
  .speaking-shell .translation-switcher { padding-inline:16px; }
  .speaking-shell #workspace.dual-layout { padding-inline:16px; }
  .speaking-shell .speaking-entry { padding:17px; }
  .speaking-shell .speaking-entry h2 { font-size:17px; }
  .speaking-entry-head { gap:10px; }
}

/* Practice recommendations: follow the entry cards' existing brand and spacing. */
.speaking-shell .speaking-entry-recommendation {
  margin:0 0 20px; padding:12px 14px;
  border-left:3px solid var(--cyan-dark); border-radius:0 10px 10px 0;
  background:var(--mint); color:var(--ink);
  font-size:14px; line-height:1.8; overflow-wrap:break-word;
}
.speaking-shell .speaking-entry-recommendation strong {
  display:block; margin-bottom:4px; color:var(--navy); font-weight:600;
}
.speaking-shell .speaking-entry--reasons .speaking-entry-recommendation {
  background:var(--card);
}
@media(max-width:760px) {
  .speaking-shell .speaking-entry-recommendation {
    margin-bottom:16px; padding:10px 12px; font-size:14px; line-height:1.8;
  }
}
