/* Schulspanisch Lernempfehlungen v1.0 — vollständig gekapselt, mobile first. */
.slr-entry,.slr-dialog{--slr-bg:#fff;--slr-soft:#f6f7f9;--slr-text:#18202d;--slr-muted:#596476;--slr-line:#e4e7ed;--slr-blue:#1764d4;color:var(--slr-text);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.5;color-scheme:light}
.slr-entry{padding:24px 0 40px;background:transparent}
.slr-entry *,.slr-dialog *{box-sizing:border-box}
.slr-entry [hidden],.slr-dialog [hidden]{display:none!important}
.slr-trigger{display:flex;align-items:center;gap:16px;position:relative;width:100%;max-width:560px;min-height:76px;padding:18px 22px;border:1px solid var(--slr-line);border-radius:22px;background:var(--slr-bg);color:var(--slr-text);box-shadow:-7px 0 22px #e29ecb26,7px 2px 22px #75aaff29;font:650 17px/1.4 system-ui,sans-serif;text-align:left;text-decoration:none;cursor:pointer;transition:box-shadow .2s,transform .2s}
.slr-trigger:hover{box-shadow:-8px 0 27px #e29ecb40,8px 2px 27px #75aaff40;transform:translateY(-1px)}
.slr-spark{color:var(--slr-blue);font-size:32px;flex:none}.slr-trigger-arrow{margin-left:auto;color:var(--slr-muted)}
.slr-dialog{border:1px solid var(--slr-line);padding:0;width:calc(100% - 24px);max-width:920px;max-height:calc(100vh - 32px);max-height:calc(100dvh - 32px);margin:auto;border-radius:26px;background:var(--slr-bg);box-shadow:0 24px 90px #0003;overflow:auto;overscroll-behavior:contain}
.slr-dialog::backdrop{background:rgb(18 26 41 / .5);backdrop-filter:blur(6px)}
.slr-panel{padding:24px 18px}.slr-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:24px}.slr-dialog h2,.slr-dialog h3,.slr-dialog p{margin:0;letter-spacing:normal}
.slr-dialog .slr-overline{font-size:12px;letter-spacing:.07em;font-weight:650;color:var(--slr-blue);margin-bottom:8px}.slr-overline span{font-size:22px;vertical-align:middle;margin-right:5px}
.slr-head h2{font-size:clamp(23px,4vw,32px);line-height:1.16;letter-spacing:-.035em}.slr-head #slr-subtitle{font-size:15px;color:var(--slr-muted);margin-top:10px}
.slr-close,.slr-controls button{display:grid;place-items:center;flex:none;width:44px;height:44px;padding:0;border:1px solid var(--slr-line);border-radius:50%;background:var(--slr-soft);color:var(--slr-text);font:24px/1 system-ui;cursor:pointer}
.slr-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--slr-line) transparent;padding:0 0 12px;overscroll-behavior-x:contain}
.slr-card{flex:0 0 88%;min-width:0;scroll-snap-align:start;border:1px solid var(--slr-line);border-radius:20px;overflow:hidden;background:var(--slr-bg);box-shadow:0 4px 14px #192d4a06}
.slr-card:only-child{flex-basis:100%}.slr-card>img{display:block;width:100%;height:auto;aspect-ratio:12/7;object-fit:cover;background:var(--slr-soft)}
.slr-card-body{padding:20px}.slr-dialog .slr-category{font-size:11px;text-transform:uppercase;font-weight:750;letter-spacing:.08em;color:var(--slr-blue);margin-bottom:10px}.slr-card h3{font-size:21px;line-height:1.25;overflow-wrap:anywhere}.slr-card-body>p:not(.slr-category){margin-top:8px;color:var(--slr-muted);font-size:15px}
.slr-dialog a{display:inline-block;color:var(--slr-blue);text-decoration:none;font-size:15px;font-weight:600;padding:10px 0;min-height:44px}.slr-dialog a:hover{text-decoration:underline}.slr-card-body a{margin-top:8px}
.slr-controls{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:4px}.slr-position{font-size:13px;color:var(--slr-muted);margin-right:auto}.slr-controls button:disabled{opacity:.35;cursor:default}
.slr-books{margin-top:22px;border-top:1px solid var(--slr-line);padding-top:24px}.slr-books>h2{font-size:17px;line-height:1.4;margin-bottom:16px}.slr-book{display:flex;gap:16px;align-items:center;padding:16px;border:1px solid var(--slr-line);border-radius:18px;background:var(--slr-soft)}.slr-book img{flex:none;object-fit:contain;width:76px;height:96px}.slr-book>div{min-width:0}.slr-book h3{font-size:16px;line-height:1.3;overflow-wrap:anywhere}.slr-book p{color:var(--slr-muted);font-size:14px;margin-top:7px}
.slr-dialog :focus-visible,.slr-entry :focus-visible{outline:3px solid var(--slr-blue);outline-offset:4px}.slr-track:focus-visible{outline-offset:-3px}
@media(min-width:640px){.slr-panel{padding:36px}.slr-head{margin-bottom:28px}.slr-card{flex-basis:64%}.slr-card:only-child{display:grid;grid-template-columns:1.05fr 1fr}.slr-card:only-child>img{height:100%;min-height:240px}.slr-card:only-child .slr-card-body{align-self:center;padding:28px}.slr-book{padding:18px 24px;gap:24px}.slr-book img{width:100px;height:112px}.slr-book h3{font-size:18px}.slr-book p{font-size:15px}}
@media(prefers-color-scheme:dark){.slr-entry,.slr-dialog{--slr-bg:#1c1e24;--slr-soft:#252830;--slr-text:#f3f4f7;--slr-muted:#b3bccb;--slr-line:#393e49;--slr-blue:#87b6ff;color-scheme:dark}.slr-dialog::backdrop{background:rgb(0 0 0 / .65)}.slr-entry .slr-trigger{box-shadow:-2px 0 10px #cc70ad08,2px 1px 10px #518fff0d}.slr-entry .slr-trigger:hover{box-shadow:-2px 0 12px #cc70ad0b,2px 1px 12px #518fff12}}
@media(prefers-reduced-motion:reduce){.slr-trigger{transition:none}.slr-trigger:hover{transform:none}.slr-track{scroll-behavior:auto}}

/* v1.1: Empfehlung als kompakte sekundäre Aktion im Hero. */
.slr-entry.slr-entry--hero{padding:0;margin-top:40px;max-width:440px}
.slr-entry--hero .slr-trigger{min-height:54px;max-width:440px;padding:13px 17px;gap:12px;border-radius:17px;font-size:15px;font-weight:750;line-height:1.4}
.slr-entry--hero .slr-spark{font-size:24px}
/* Runde Buchbilder unverändert; feste Bildspalte verhindert große Leerflächen. */
.slr-dialog .slr-book{display:grid;grid-template-columns:76px minmax(0,1fr);justify-content:start;text-align:left}
.slr-dialog .slr-book>img{display:block;max-width:100%;margin:0;width:76px;height:76px;aspect-ratio:1;object-fit:contain;border-radius:50%}
@media(min-width:640px){.slr-dialog .slr-book{grid-template-columns:100px minmax(0,1fr)}.slr-dialog .slr-book>img{width:100px;height:100px}}

/* v1.2: Größerer Abstand, offene Buchempfehlung, bündige Themenbilder.
   Bewusst auf das Modul begrenzt; neutralisiert allgemeine img/article-Regeln. */
.slr-entry--hero .slr-trigger>span:not(.slr-spark){font-weight:750}
.slr-dialog .slr-track>.slr-card{padding:0;gap:0;overflow:hidden}
.slr-dialog .slr-track>.slr-card>img{
  display:block;position:static;width:100%;max-width:none;height:auto;min-width:0;
  margin:0;padding:0;border:0;border-radius:19px 19px 0 0;
  aspect-ratio:12/7;object-fit:cover;object-position:center;align-self:stretch;justify-self:stretch;
}
.slr-dialog .slr-books{margin-top:26px;padding-top:24px}
.slr-dialog .slr-books>h2{font-size:15px;font-weight:600;color:var(--slr-muted);margin-bottom:20px}
.slr-dialog .slr-book{
  padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;
  gap:20px;align-items:center;
}
.slr-dialog .slr-book>img{border:0;padding:0;background:transparent}
.slr-dialog .slr-book h3{font-size:18px;font-weight:700;letter-spacing:-.025em}
.slr-dialog .slr-book p{margin-top:5px;line-height:1.5}
.slr-dialog .slr-book a{margin-top:3px;font-weight:650}
@media(min-width:640px){
  .slr-entry.slr-entry--hero{margin-top:52px}
  .slr-dialog .slr-track>.slr-card:only-child{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}
  .slr-dialog .slr-track>.slr-card:only-child>img{height:100%;min-height:240px;aspect-ratio:auto;border-radius:19px 0 0 19px}
  .slr-dialog .slr-book{gap:24px;grid-template-columns:96px minmax(0,1fr)}
  .slr-dialog .slr-book>img{width:96px;height:96px}
  .slr-dialog .slr-book h3{font-size:20px}
}

/* v1.4: Grammatik-Karten mit echter HTML-Typografie statt Bilddateien. */
.slr-dialog .slr-grammar-visual{
  display:grid;place-items:center;aspect-ratio:12/7;min-width:0;
  padding:20px;margin:0;border-radius:19px 19px 0 0;
  background:linear-gradient(135deg,#edf4ff,#f1effc);color:#283653;
}
.slr-dialog .slr-grammar-example{display:grid;justify-items:center;gap:3px;text-align:center}
.slr-dialog .slr-grammar-label{font-size:10px;line-height:1.3;font-weight:650;letter-spacing:.13em;text-transform:uppercase;color:#596b86}
.slr-dialog .slr-grammar-word{font-size:clamp(24px,4vw,38px);font-weight:750;line-height:1.1;letter-spacing:-.045em}
.slr-dialog .slr-grammar-word--accent{color:#285ec8}
.slr-dialog .slr-grammar-transition{font-size:20px;line-height:1.3;color:#7d8ca9;margin:3px 0}
@media(min-width:640px){
 .slr-dialog .slr-card:only-child>.slr-grammar-visual{height:100%;min-height:240px;aspect-ratio:auto;border-radius:19px 0 0 19px}
 .slr-dialog .slr-grammar-example{gap:5px}
}
@media(prefers-color-scheme:dark){
 .slr-dialog .slr-grammar-visual{background:linear-gradient(135deg,#222e40,#2a283e);color:#eff3fc}
 .slr-dialog .slr-grammar-label{color:#b3c1d9}
 .slr-dialog .slr-grammar-word--accent{color:#9dbfff}
 .slr-dialog .slr-grammar-transition{color:#a7b3cd}
}

/* v1.5: Zwei ruhige räumliche Formen, ausschließlich hinter der Typografie. */
.slr-dialog .slr-grammar-visual{
  position:relative;isolation:isolate;overflow:hidden;
  background:radial-gradient(ellipse at 30% 18%,#ffffffb3,transparent 62%),linear-gradient(135deg,#eaf2ff,#eeecfb);
}
.slr-dialog .slr-grammar-visual::before,
.slr-dialog .slr-grammar-visual::after{
  content:"";position:absolute;z-index:0;pointer-events:none;
  border:1px solid rgb(255 255 255 / .8);border-radius:28px;
}
.slr-dialog .slr-grammar-visual::before{
  width:42%;height:68%;left:-15%;top:-12%;transform:rotate(-24deg);
  background:linear-gradient(145deg,#ffffffb3,#b6ccf438);
  box-shadow:14px 18px 36px rgb(67 98 162 / .09),inset 0 1px 0 #fff;
}
.slr-dialog .slr-grammar-visual::after{
  width:40%;height:64%;right:-16%;bottom:-17%;transform:rotate(25deg);
  background:linear-gradient(145deg,#d8d2f44d,#ffffffa6);
  box-shadow:-12px -8px 32px rgb(86 73 151 / .07),inset 0 1px 0 #ffffffb3;
}
.slr-dialog .slr-grammar-example{position:relative;z-index:1}
@media(prefers-color-scheme:dark){
 .slr-dialog .slr-grammar-visual{background:radial-gradient(ellipse at 30% 18%,#35446166,transparent 62%),linear-gradient(135deg,#222e40,#2a283e)}
 .slr-dialog .slr-grammar-visual::before{
   border-color:#8198c21f;background:linear-gradient(145deg,#43557738,#29334a26);
   box-shadow:12px 16px 28px #0c142126,inset 0 1px 0 #a2b7dc0d;
 }
 .slr-dialog .slr-grammar-visual::after{
   border-color:#a195cd17;background:linear-gradient(145deg,#53466b26,#3d405a33);
   box-shadow:-10px -6px 26px #10101d26,inset 0 1px 0 #b5acd70d;
 }
}

/* v1.6: Mobile Empfehlung unter dem Lernvideo. */
@media(max-width:767px){
 .sg-hero__visual>.slr-entry.slr-entry--hero{margin-top:24px;max-width:100%;width:100%}
 .sg-hero__visual>.slr-entry--hero .slr-trigger{max-width:100%;width:100%}
}

/* v1.7: Video-Container mobil ausdrücklich einspaltig halten. */
@media(max-width:767px){
 .sg-hero .sg-hero__visual{display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;min-width:0}
 .sg-hero .sg-hero__visual>.sg-hero-video{flex:none;width:100%;max-width:100%;min-width:0}
 .sg-hero .sg-hero__visual>.slr-entry.slr-entry--hero{flex:none;align-self:stretch;width:100%;max-width:100%;margin:24px 0 0;padding:0}
}

/* v1.8: Kompaktes mobiles Overlay; alle Inhalte bleiben zugänglich.
   Bei Zoom/Querformat bleibt Scrollen als Sicherheitsnetz möglich. */
@media(max-width:767px){
 .slr-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-radius:22px}
 .slr-dialog .slr-panel{padding:20px 14px}
 .slr-dialog .slr-head{position:relative;margin-bottom:18px;padding-right:36px;gap:0}
 .slr-dialog .slr-close{position:absolute;right:-4px;top:-4px;width:40px;height:40px;font-size:22px;background:transparent;border-color:transparent}
 .slr-dialog .slr-overline{font-size:10px;margin-bottom:5px}
 .slr-dialog .slr-overline span{font-size:16px}
 .slr-dialog .slr-head h2{font-size:21px;line-height:1.15}
 .slr-dialog .slr-head #slr-subtitle{font-size:12px;line-height:1.35;margin-top:6px}
 .slr-dialog .slr-track{gap:10px;padding-bottom:0;scrollbar-width:none}
 .slr-dialog .slr-track::-webkit-scrollbar{display:none}
 .slr-dialog .slr-track>.slr-card{flex-basis:94%;border-radius:16px;display:block}
 .slr-dialog .slr-track>.slr-card:only-child{flex-basis:100%}
 .slr-dialog .slr-track>.slr-card>img,
 .slr-dialog .slr-track>.slr-card>.slr-grammar-visual{height:clamp(90px,20dvh,145px);min-height:0;aspect-ratio:auto;border-radius:15px 15px 0 0}
 .slr-dialog .slr-grammar-visual{padding:8px}
 .slr-dialog .slr-grammar-example{gap:1px}
 .slr-dialog .slr-grammar-label{font-size:8px}
 .slr-dialog .slr-grammar-word{font-size:24px}
 .slr-dialog .slr-grammar-transition{font-size:14px;line-height:1;margin:1px 0}
 .slr-dialog .slr-card .slr-card-body{padding:12px 14px}
 .slr-dialog .slr-category{font-size:9px;margin-bottom:8px}
 .slr-dialog .slr-card h3{font-size:18px;line-height:1.2}
 .slr-dialog .slr-card-body>p:not(.slr-category){font-size:13px;line-height:1.35;margin-top:5px}
 .slr-dialog .slr-card-body a{font-size:13px;min-height:40px;padding:10px 0;margin-top:2px}
 .slr-dialog .slr-controls{gap:2px;margin-top:2px}
 .slr-dialog .slr-position{font-size:11px}
 .slr-dialog .slr-controls button{width:40px;height:40px;font-size:20px;background:transparent;border-color:transparent;color:var(--slr-muted)}
 .slr-dialog .slr-books{margin-top:10px;padding-top:16px}
 .slr-dialog .slr-books>h2{font-size:12px;line-height:1.3;margin-bottom:14px}
 .slr-dialog .slr-book{grid-template-columns:56px minmax(0,1fr);gap:12px}
 .slr-dialog .slr-book>img{width:56px;height:56px}
 .slr-dialog .slr-book h3{font-size:14px;line-height:1.25}
 .slr-dialog .slr-book p{font-size:12px;line-height:1.3;margin-top:3px}
 .slr-dialog .slr-book a{font-size:13px;min-height:40px;padding:10px 0;margin-top:0}
}

/* v1.9 (Rollout Grammatik 2026-10-30): Themen mit Video-Umschalter (.sg-hero-video-visual).
   Button mobil unter Video + Umschalter, gleiche Breite wie das Video. Desktop unverändert. */
@media(max-width:767px){
 .sg-hero .sg-hero-video-visual>.slr-entry.slr-entry--hero{display:block;width:100%;max-width:100%;margin:24px 0 0;padding:0}
 .sg-hero .sg-hero-video-visual>.slr-entry--hero .slr-trigger{width:100%;max-width:100%}
}

/* v1.10 (2026-10-30): Schließen-Button ohne blauen Fokusring.
   Safari/iOS zeigt den beim Öffnen automatisch gesetzten Fokus auch nach Maus/Touch als :focus-visible.
   Statt Ring: Tastaturfokus dezent über Rand und Fläche des Buttons. X, Fläche, Position, Größe unverändert. */
.slr-dialog .slr-close:focus,.slr-dialog .slr-close:focus-visible{outline:none}
.slr-dialog .slr-close:focus-visible{border-color:#8b95a7;background:var(--slr-soft)}
@media(prefers-color-scheme:dark){.slr-dialog .slr-close:focus-visible{border-color:#7d8799}}
