/* Unterricht interaktiv – Schaufenster für Eltern auf /digitaler-unterricht-auf-iserv/ (12.11.2026). Alle Regeln unter .ux. */
.ux{--ux-f:#8b5cf6;--ux-kurve:cubic-bezier(.32,.72,0,1);--ux-text:#1d1d1f;--ux-grau:#6e6e73;--ux-linie:rgba(0,0,0,.08);--ux-karte:#fff;--ux-schatten:0 1px 2px rgba(0,0,0,.04),0 8px 24px -10px rgba(0,0,0,.18);
  position:relative;overflow:hidden;isolation:isolate;padding:clamp(64px,9vw,130px) 16px clamp(56px,7vw,100px);
  background:linear-gradient(180deg,#f4f4f4,#fff 45%,#f4f4f4);color:var(--ux-text);font-family:"Glacial Indifference",-apple-system,"Segoe UI",Arial,sans-serif;line-height:1.4}
.ux *{box-sizing:border-box}
.ux :focus-visible{outline:3px solid var(--ux-f);outline-offset:3px}
.ux button{font:inherit;color:inherit}

/* Leuchten in der Fachfarbe hinter der Bühne */
.ux-glanz{position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:radial-gradient(60% 45% at 50% 55%,color-mix(in srgb,var(--ux-f) 14%,transparent),transparent 70%),
             radial-gradient(40% 30% at 15% 10%,rgba(255,138,31,.07),transparent 70%);transition:background .9s ease}
@supports not (color:color-mix(in srgb,red,blue)){.ux-glanz{background:radial-gradient(60% 45% at 50% 55%,rgba(139,92,246,.3),transparent 70%)}}
.ux-sterne{display:none;position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.5;
  background-image:radial-gradient(1px 1px at 12% 18%,#fff8,transparent),radial-gradient(1px 1px at 78% 12%,#fff6,transparent),
  radial-gradient(1.5px 1.5px at 62% 82%,#fff5,transparent),radial-gradient(1px 1px at 30% 70%,#fff4,transparent),
  radial-gradient(1px 1px at 90% 60%,#fff6,transparent),radial-gradient(1.5px 1.5px at 45% 30%,#fff3,transparent)}

/* Kopf */
.ux-kopf{max-width:900px;margin:0 auto;text-align:center}
.ux-kopf>*,.ux-zahlen,.ux-chips,.ux-buehne,.ux-leiste,.ux-wand,.ux-fuss{opacity:0;transform:translateY(28px);transition:opacity 1s ease,transform 1s var(--ux-kurve)}
.ux-an .ux-kopf>*,.ux-an .ux-zahlen,.ux-an .ux-chips,.ux-an .ux-buehne,.ux-an .ux-leiste,.ux-an .ux-wand,.ux-an .ux-fuss{opacity:1;transform:none}
.ux-an .ux-kopf>:nth-child(2){transition-delay:.08s}.ux-an .ux-kopf>:nth-child(3){transition-delay:.16s}
.ux-an .ux-zahlen{transition-delay:.24s}.ux-an .ux-chips{transition-delay:.3s}.ux-an .ux-buehne{transition-delay:.36s}
.ux-an .ux-leiste{transition-delay:.44s}.ux-an .ux-wand,.ux-an .ux-fuss{transition-delay:.5s}
.ux-marke{margin:0 0 12px;font-size:15px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#c2410c}
.ux h2{margin:0;font-size:clamp(40px,7vw,84px);line-height:1.02;letter-spacing:-.025em;font-weight:700;color:var(--ux-text)}
.ux h2 em{font-style:normal;color:#ea580c}
.ux-lead{margin:20px auto 0;max-width:680px;font-size:clamp(18px,2.1vw,23px);line-height:1.4;color:var(--ux-grau)}

/* Zahlen */
.ux-zahlen{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;max-width:940px;margin:clamp(34px,5vw,56px) auto 0;padding:0;list-style:none}
.ux-zahlen li{padding:18px 14px;border:1px solid var(--ux-linie);border-radius:20px;background:var(--ux-karte);box-shadow:var(--ux-schatten);text-align:center}
.ux-zahlen b{display:block;font-size:clamp(34px,4.6vw,52px);line-height:1;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ux-text)}
.ux-zahlen span{display:block;margin-top:8px;font-size:15px;line-height:1.25;color:var(--ux-grau)}

/* Fach-Knöpfe */
.ux-chips{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:1000px;margin:clamp(34px,5vw,54px) auto 0}
.ux-chip{appearance:none;display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 16px;border:1px solid var(--ux-linie);border-radius:999px;
  background:var(--ux-karte);box-shadow:var(--ux-schatten);font-size:15px;font-weight:700;cursor:pointer;transition:background .25s,border-color .25s,transform .2s}
.ux-chip i{width:9px;height:9px;border-radius:50%;background:var(--c,#fff)}
.ux-chip:hover{background:#f5f5f7}
.ux-chip:active{transform:scale(.96)}
.ux-chip[aria-pressed="true"]{background:#1d1d1f;color:#fff;border-color:#1d1d1f}
.ux-chip[aria-pressed="true"] i{background:var(--ux-f)}

/* Bühne: Gerät und Text */
.ux-buehne{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,1fr);align-items:center;gap:clamp(28px,4vw,64px);max-width:1240px;margin:clamp(30px,4vw,48px) auto 0}
.ux-platz{position:relative;display:flex;align-items:center;justify-content:center;height:var(--platz,520px);perspective:1800px;touch-action:pan-y}
.ux-geraet{position:relative;width:var(--gw,700px);height:var(--gh,486px);padding:clamp(9px,1.2vw,14px);border-radius:clamp(22px,2.6vw,34px);
  background:linear-gradient(145deg,#3a3a40,#151518 40%,#0c0c0e);box-shadow:0 0 0 1px rgba(255,255,255,.12) inset,0 1px 0 rgba(255,255,255,.18) inset,
  0 40px 70px -24px rgba(0,0,0,.4),0 0 120px -40px var(--ux-f);
  transition:width .9s var(--ux-kurve),height .9s var(--ux-kurve)}
.ux-geraet::before{content:"";position:absolute;top:50%;left:calc(clamp(9px,1.2vw,14px)/2 - 2px);width:4px;height:4px;border-radius:50%;background:#2c2c30;transform:translateY(-50%)}
.ux-geraet.ux-hoch::before{top:calc(clamp(9px,1.2vw,14px)/2 - 2px);left:50%;transform:translateX(-50%)}
.ux-schirm{position:relative;width:100%;height:100%;overflow:hidden;border-radius:clamp(13px,1.5vw,20px);background:#f2f2f4;isolation:isolate;transform:translateZ(0)}
.ux-ebene{position:absolute;inset:0;opacity:0;transition:opacity .7s ease}
.ux-ebene.ux-sicht{opacity:1;z-index:2}
.ux-ebene.ux-unter{opacity:1;z-index:1;transition:none}
.ux-ebene img,.ux-ebene canvas{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 0;transform-origin:var(--fx,50%) var(--fy,40%)}
.ux-ebene.ux-zoom img{will-change:transform;backface-visibility:hidden}
.ux-ebene.ux-zoom img{animation:ux-zoom var(--dauer,4s) ease-in-out forwards}
@keyframes ux-zoom{from{transform:scale(1)}to{transform:scale(1.16)}}
.ux-laden{position:absolute;inset:0;z-index:2;display:grid;place-items:center;background:rgba(255,255,255,.4);opacity:0;pointer-events:none;transition:opacity .3s}
.ux-laden.ux-sicht{opacity:1}
.ux-laden::after{content:"";width:34px;height:34px;border-radius:50%;border:3px solid rgba(0,0,0,.12);border-top-color:var(--ux-f);animation:ux-dreh .8s linear infinite}
@keyframes ux-dreh{to{transform:rotate(360deg)}}
.ux-schein{position:absolute;inset:auto -10% -14%;height:40%;z-index:-1;background:radial-gradient(50% 50% at 50% 50%,color-mix(in srgb,var(--ux-f) 18%,transparent),transparent 70%);pointer-events:none}

.ux-punkte{display:flex;justify-content:center;gap:6px;margin-top:16px;min-height:10px}
.ux-punkte button{appearance:none;width:28px;height:6px;padding:0;border:0;border-radius:6px;background:rgba(0,0,0,.14);cursor:pointer;transition:background .3s,width .4s var(--ux-kurve)}
.ux-punkte button[aria-current="true"]{width:44px;background:var(--ux-f)}
.ux-punkte button::before{content:"";display:block;margin:-19px 0;height:44px}

.ux-text{min-height:360px;display:flex;flex-direction:column;justify-content:center}
.ux-inhalt{transition:opacity .45s ease,transform .6s var(--ux-kurve)}
.ux-inhalt.ux-weg{opacity:0;transform:translateY(14px)}
.ux-fach{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 14px}
.ux-fach b{display:inline-flex;align-items:center;gap:7px;padding:5px 12px;border-radius:999px;background:color-mix(in srgb,var(--ux-f) 14%,#fff);color:var(--ux-text);font-size:14px;letter-spacing:.02em}
.ux-fach b .ux-logo{width:16px;height:24px;margin:-3px 0 -3px -4px}
.ux-fach span{font-size:14px;color:var(--ux-grau)}
.ux h3{margin:0;font-size:clamp(30px,3.4vw,44px);line-height:1.06;letter-spacing:-.015em;color:var(--ux-text)}
.ux-satz{margin:16px 0 0;font-size:clamp(17px,1.6vw,20px);line-height:1.45;color:#3a3a3e}
.ux-liste{margin:20px 0 0;padding:0;list-style:none;display:grid;gap:10px}
.ux-liste li{position:relative;padding-left:30px;font-size:16px;line-height:1.35;color:#2a2a2d}
.ux-liste li::before{content:"";position:absolute;left:0;top:1px;width:20px;height:20px;border-radius:50%;background:color-mix(in srgb,var(--ux-f) 16%,#fff)}
.ux-liste li::after{content:"";position:absolute;left:7px;top:5px;width:5px;height:9px;border:solid var(--ux-f);border-width:0 2px 2px 0;transform:rotate(45deg)}
.ux-steuer{display:flex;align-items:center;gap:10px;margin-top:28px}
.ux-rund{appearance:none;display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--ux-linie);border-radius:50%;background:var(--ux-karte);box-shadow:var(--ux-schatten);cursor:pointer;transition:background .2s,transform .2s}
.ux-rund:hover{background:#f5f5f7}
.ux-rund:active{transform:scale(.94)}
.ux-rund svg{width:16px;height:16px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.ux-rund .ux-play{display:none;fill:currentColor;stroke:none}
.ux-pause-an .ux-rund .ux-pause{display:none}.ux-pause-an .ux-rund .ux-play{display:block}
.ux-zaehler{margin-left:6px;font-size:14px;color:var(--ux-grau);font-variant-numeric:tabular-nums}
.ux-lauf{flex:1;height:3px;margin-left:8px;border-radius:3px;background:rgba(0,0,0,.08);overflow:hidden}
.ux-lauf i{display:block;height:100%;width:100%;background:var(--ux-f);transform:scaleX(0);transform-origin:0 50%}

/* Leiste aller Beispiele */
.ux-leiste{display:flex;gap:12px;max-width:1240px;margin:clamp(36px,5vw,60px) auto 0;padding:4px 2px 14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:rgba(0,0,0,.2) transparent;
  -webkit-mask:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent);mask:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent)}
.ux-karte{appearance:none;flex:0 0 auto;width:188px;padding:0;border:1px solid var(--ux-linie);border-radius:16px;background:var(--ux-karte);box-shadow:var(--ux-schatten);text-align:left;cursor:pointer;scroll-snap-align:center;overflow:hidden;
  transition:transform .35s var(--ux-kurve),border-color .3s,background .3s,opacity .3s}
.ux-karte:first-child{margin-left:20px}.ux-karte:last-child{margin-right:20px}
.ux-karte:hover{transform:translateY(-4px)}
.ux-karte img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover;object-position:50% 0;background:#ececf0}
.ux-karte span{display:block;padding:10px 12px 12px;font-size:14px;line-height:1.25;font-weight:700}
.ux-karte small{display:flex;align-items:center;gap:6px;margin-bottom:4px;font-size:12px;font-weight:400;color:var(--ux-grau)}
.ux-logo{display:block;flex:0 0 auto;width:14px;height:21px;border-radius:2px;box-shadow:0 0 0 1px rgba(0,0,0,.08)}
.ux-karte img.ux-logo{width:16px;height:24px;aspect-ratio:auto;object-fit:contain;background:none}
.ux-karte small{gap:7px;font-size:13px;min-width:0}
.ux-karte small{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ux-karte[aria-current="true"]{border-color:var(--c);box-shadow:0 0 0 1px var(--c) inset,0 10px 30px -12px var(--c)}
.ux-karte[hidden]{display:none}

/* Laufband mit allen Werkzeugen */
.ux-wand{max-width:none;margin:clamp(44px,6vw,80px) calc(50% - 50vw) 0;overflow:hidden;
  -webkit-mask:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent);mask:linear-gradient(90deg,transparent,#000 10%,#000 90%,transparent)}
.ux-wand-titel{margin:0 auto 18px;max-width:900px;padding:0 16px;text-align:center;font-size:15px;color:var(--ux-grau)}
.ux-band{display:flex;width:max-content;gap:10px;padding:5px 0;animation:ux-band var(--d,90s) linear infinite}
.ux-band.ux-rueck{animation-direction:reverse}
.ux-wand:hover .ux-band{animation-play-state:paused}
.ux-band span{display:inline-flex;align-items:center;gap:8px;white-space:nowrap;padding:9px 15px;border:1px solid var(--ux-linie);border-radius:999px;background:var(--ux-karte);font-size:15px;color:#2a2a2d}
.ux-band span::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--c,#fff)}
@keyframes ux-band{to{transform:translateX(-50%)}}

.ux-fuss{max-width:760px;margin:clamp(36px,5vw,56px) auto 0;text-align:center;font-size:15px;line-height:1.5;color:var(--ux-grau)}
.ux-fuss p{margin:0 0 6px}

/* Tablet und Handy */
@media (max-width:999px){
  .ux-buehne{grid-template-columns:minmax(0,1fr);gap:22px}
  .ux-text{min-height:0;text-align:left;max-width:640px;margin:0 auto;width:100%}
  .ux-zahlen{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:600px){
  .ux-chips{flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto;margin-left:-16px;margin-right:-16px;padding:0 16px 6px;scrollbar-width:none}
  .ux-chips::-webkit-scrollbar{display:none}
  .ux-chip{flex:0 0 auto}
  .ux-zahlen li{padding:14px 10px;border-radius:16px}
  .ux-zahlen span{font-size:13px}
  .ux-karte{width:150px}
  .ux-liste li{font-size:15px}
  .ux-band span{font-size:14px;padding:8px 13px}
}
@media (prefers-reduced-motion:reduce){
  .ux *,.ux *::before,.ux *::after,.ux-kopf>*{transition-duration:.01ms!important;animation:none!important}
  .ux-band{flex-wrap:wrap;width:auto;justify-content:center;padding:5px 16px}
  .ux-band.ux-doppel{display:none}
}

/* Gesamtzahl vorn hervorgehoben */
.ux-zahlen li.ux-gesamt{background:linear-gradient(135deg,#ff9a3c,#e5533c);border-color:transparent}
.ux-zahlen li.ux-gesamt b,.ux-zahlen li.ux-gesamt span{color:#fff}
/* vollständige Liste aller Angebote, nach Fächern (aufklappbar; im ruhigen Modus statt des Laufbands) */
.ux-alle{max-width:1240px;margin:22px auto 0;padding:0 16px}
.ux-alle summary{display:block;width:max-content;max-width:100%;margin:0 auto;padding:10px 20px;border:1px solid var(--ux-linie);border-radius:999px;background:var(--ux-karte);box-shadow:var(--ux-schatten);cursor:pointer;font-weight:700;color:var(--ux-text);list-style:none}
.ux-alle summary::-webkit-details-marker{display:none}
.ux-alle summary::after{content:" ▾";color:#c2410c}
.ux-alle[open] summary::after{content:" ▴"}
.ux-alle-raster{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;margin-top:18px}
.ux-alle section.ux-breit{grid-column:1/-1}
.ux-alle section.ux-breit ul{display:block;columns:4 210px;column-gap:26px}
.ux-alle section.ux-breit li{margin-bottom:6px;break-inside:avoid}
.ux-alle section{padding:16px 18px;border:1px solid var(--ux-linie);border-radius:18px;background:var(--ux-karte);box-shadow:var(--ux-schatten)}
.ux-alle h4{display:flex;align-items:center;gap:8px;margin:0 0 10px;font-size:17px;color:var(--ux-text)}
.ux-alle h4 small{margin-left:auto;font-size:14px;font-weight:400;color:var(--ux-grau)}
.ux-alle ul{margin:0;padding:0;list-style:none;display:grid;gap:6px}
.ux-alle li{position:relative;display:flex;align-items:baseline;gap:8px;padding-left:16px;font-size:15px;line-height:1.3;color:#2a2a2d}
.ux-alle li::before{content:"";position:absolute;left:0;top:.45em;width:8px;height:8px;border-radius:50%;background:var(--c)}
.ux-alle li em{margin-left:auto;font-style:normal;font-size:12px;color:var(--ux-grau);white-space:nowrap}
