/* hipercubo.css – página „O Hipercubo“ (hipercubo.html, js/hipercubo.js, Bühne js/hipercubo3d.js) */
.hc{padding-top:76px}
/* Aufruf mit #anker (KU-03, Rest-CLS 04.10.2026): Der erste Aufbau füllt alle JS-Blöcke über dem Ziel auf einmal; deren Höhe hängt vom
   Datum und von der Sprache ab (Tageskarte 325–492 px, Kreislauf-Text 132–304 px …), feste Platzhalter treffen sie nie genau. Chromes
   Scroll-Verankerung gleicht diesen ersten Aufbau nicht aus (gemessen), das Ziel rutschte bis 210 px (CLS bis 0,44).
   Lösung: Die Blöcke sind content-visibility:auto. Außerhalb des Bildschirms rechnet der Browser mit contain-intrinsic-size statt mit dem
   Inhalt – das Füllen ändert dann nichts am Layout. Kommt ein Block später ins Bild, misst er sich (danach merkt sich „auto“ die echte
   Höhe); das geschieht beim Scrollen, und dann greift die Verankerung. Die Werte unten = typische echte Höhen (nur für die Bildlaufleiste);
   nur die Höhe (contain-intrinsic-height) – ein Wert für beide Achsen wäre zugleich eine Mindestbreite.
   overflow-clip-margin: Leuchten und Fokusringe am Rand nicht abschneiden (content-visibility schließt paint containment ein). */
.hc-cv,.hc-day,.hc-legend,.hc-pls,.hc-jr,.hc-cub,.hc-mc{content-visibility:auto;overflow-clip-margin:30px}
.hc-day{contain-intrinsic-height:auto 505px}.hc-legend{contain-intrinsic-height:auto 185px}
.hc-cv-pts{contain-intrinsic-height:auto 471px}.hc-cv-circ{contain-intrinsic-height:auto 622px}
.hc-pls{contain-intrinsic-height:auto 411px}.hc-jr{contain-intrinsic-height:auto 258px}.hc-cub{contain-intrinsic-height:auto 268px}.hc-mc{contain-intrinsic-height:auto 734px}
/* „Alle Punkte“ (pontos-todos.js) kommt erst mit dem Skript unter #hc-pts: 44 px Zeile + Rand + 22 px Abstand vorab freihalten */
.hc-cv-pts:not(:has(> .pts-more))::after{content:"";display:block;height:68px}
.hc > :has(~ :target),.hc > :has(~ * :target){overflow-anchor:none}   /* später (Bild-, Schrift-Nachladen): Anker im Ziel, nicht im Abschnitt davor */
.hc-hero{padding:80px 0 30px;background:radial-gradient(900px 500px at 70% 10%,rgba(123,92,196,.35),transparent 65%)}
.hc-hero h1{font-size:clamp(34px,5.4vw,60px);margin:14px 0 18px}
.hc-bar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:26px}
.hc-bar .icon-btn{font-size:20px;cursor:pointer}
.hc-bar .icon-btn:disabled{opacity:.35;cursor:default}
.hc-bar .field{min-width:0}
.hc-today{padding:11px 18px;font-size:12px}
.hc-today.dc-on{border-color:var(--gold);color:var(--gold);background:rgba(227,191,110,.1)}
.hc-toc{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.hc-toc a{padding:9px 14px;border-radius:999px;border:1px solid var(--line);color:var(--muted);text-decoration:none;font-size:13px;background:rgba(255,255,255,.03)}
.hc-toc a:hover,.hc-toc a:focus-visible{color:var(--gold);border-color:var(--gold)}
.hc-sec{padding:60px 0 70px}
.hc-sec.alt{background:linear-gradient(180deg,var(--bg-2),var(--bg))}
.hc-intro{color:var(--muted);font-size:16.5px;max-width:860px}
.hc-note{font-size:13.5px;color:var(--faint);max-width:860px}
.hc-note a,.hc-text a,.hc-src a{color:var(--gold)}
.hc-h3{font:700 clamp(20px,2.4vw,26px)/1.25 var(--display);margin:34px 0 14px}
.hc-gl{display:inline-flex;vertical-align:middle;margin-right:6px}
.hc-gl svg{display:block}
.hc-sw{display:inline-block;width:12px;height:12px;border-radius:3px;background:var(--c);box-shadow:0 0 8px color-mix(in srgb,var(--c) 60%,transparent);margin-right:7px;vertical-align:-1px}
.hc .chip{display:inline-flex;align-items:center;gap:4px;min-height:36px;padding:7px 12px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--muted);font:600 12.5px/1.2 var(--font);cursor:pointer;transition:.2s}
.hc .chip:hover,.hc .chip:focus-visible{color:var(--gold);border-color:var(--gold)}
.hc .chip[aria-pressed=true]{color:#1a1405;background:var(--gold);border-color:var(--gold)}
@media (pointer:coarse){.hc .chip{min-height:40px}}

/* ---------- Bühne ---------- */
.hc-grid{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:18px;margin-top:26px}
.hc-stage{position:relative;height:clamp(480px,74vh,720px);border:1px solid var(--line);border-radius:22px;overflow:hidden;
  background:radial-gradient(700px 520px at 50% 45%,rgba(123,92,196,.26),transparent 70%),#05071a;box-shadow:var(--shadow)}
.hc-canvas{position:absolute;inset:0}
.hc-canvas canvas{width:100%!important;height:100%!important;display:block;cursor:grab;touch-action:none}
.hc-loading{position:absolute;inset:0;display:grid;place-items:center;color:var(--faint);font-size:14px;letter-spacing:.08em}
.hc-tip{position:absolute;z-index:3;max-width:280px;pointer-events:none;background:rgba(13,17,48,.96);border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-size:12.5px;line-height:1.5;color:var(--muted)}
.hc-tip b{color:var(--text)}
.hc-tip hr{border:0;border-top:1px solid var(--line);margin:6px 0}
.hc-tip .hc-tip-c{color:var(--gold)}
.hc-hudlab{position:absolute;right:12px;bottom:calc(var(--hc-hud,150px) + 14px);max-width:calc(100% - 24px);text-align:right;white-space:nowrap;font:600 10.5px/1.2 var(--font);letter-spacing:.1em;text-transform:uppercase;color:var(--gold);pointer-events:none;opacity:.85}
.hc-pause{position:absolute;right:14px;top:14px;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:rgba(7,10,28,.7);color:var(--text);cursor:pointer}
.hc-pause:hover,.hc-pause:focus-visible{border-color:var(--gold);color:var(--gold)}
.hc-side{display:flex;flex-direction:column;gap:14px;padding:18px;border:1px solid var(--line);border-radius:22px;background:var(--panel)}
.hc-side-t{font:700 18px var(--display);margin:0}
.hc-day{min-height:505px}
/* Platz für die per JS gefüllten Bereiche über #pontos vorab reservieren (Aufruf mit #pontos ohne Sprung, GR-04);
   Endhöhen gemessen (PT/DE/EN): Woche 142–156, Legende 163 (Desktop) / 252 (768 px) / 527–551 (390 px), Tageskarte
   465–511 (Desktop; die Seitenleiste ist dort höher als die Bühne und bestimmt die Zeilenhöhe) / 346–365 (768) / 423–488 (390) */
.hc-week:empty{min-height:150px}
.hc-legend:empty{min-height:160px}
.hc-pts:empty,.hc-pts:has(> .hc-load){min-height:403px}   /* echte Höhe ab 1170 px (4 Spalten): 354–403, meist 403 */
@media (min-width:981px) and (max-width:1169px){.hc-pts:empty,.hc-pts:has(> .hc-load){min-height:487px}.hc-cv-pts{contain-intrinsic-height:auto 555px}}   /* 3 Spalten: 354–537, meist 487 */
@media (min-width:981px){#pontos > .wrap{min-height:600px}}            /* Abschnitt samt „Alle Punkte“ (pontos-todos.js) wächst nicht mehr in #circuitos hinein */
.hc-play{margin:0;padding:8px 10px;border:1px solid rgba(227,191,110,.45);border-radius:10px;background:rgba(227,191,110,.08);font-size:12.5px;line-height:1.5;color:var(--muted)}
.hc-play b{color:var(--gold)}
.hc-dh{display:flex;gap:12px;align-items:center;margin-bottom:10px}
.hc-dh svg{flex:none}
.hc-dh b{display:block;font-size:15px;line-height:1.3}
.hc-dh small{color:var(--faint);font-size:12.5px}
.hc-dl{margin:0;display:grid;gap:6px}
.hc-dl>div{display:grid;grid-template-columns:86px minmax(0,1fr);gap:8px;align-items:center;font-size:13.5px}
.hc-dl dt{color:var(--faint);font-size:12px;letter-spacing:.04em}
.hc-dl dd{margin:0;color:var(--text)}
.hc-dl small{color:var(--faint)}
.hc-txt,.hc-cd,.hc-special{font-size:12.5px;line-height:1.55;color:var(--muted);margin:10px 0 0}
.hc-txt span{color:var(--faint)}
.hc-special{color:var(--gold)}
.hc-cd{border-left:2px solid rgba(227,191,110,.4);padding-left:10px}
.hc-go{display:inline-block;margin-top:10px;font-size:13px;color:var(--gold);text-decoration:none}
.hc-go:hover,.hc-go:focus-visible{text-decoration:underline}
@media (pointer:coarse){.hc-go{padding:6px 0;margin:4px 0 -6px}}   /* KU-05: 32 px hoch, Abstände wie vorher */
.hc-ctrl{display:flex;flex-wrap:wrap;align-items:center;gap:6px}
.hc-ctrl-l{flex:0 0 100%;font:600 11px/1 var(--font);letter-spacing:.18em;text-transform:uppercase;color:var(--gold)}
.hc-hint{font-size:12px;color:var(--faint);margin:0}

/* Woche */
.hc-week{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.hc-week li{display:flex;min-width:0}
.hc-wk{position:relative;flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:3px;padding:22px 6px 10px;border-radius:14px;border:1px solid var(--line);
  background:rgba(255,255,255,.03);color:var(--text);font:500 12px/1.3 var(--font);text-align:center;cursor:pointer;transition:border-color .2s,background .2s,box-shadow .3s}
.hc-wk:hover,.hc-wk:focus-visible{border-color:var(--gold)}
.hc-wk-n{position:absolute;top:6px;left:8px;font:700 11px var(--font);color:var(--gold)}
.hc-wk-d{color:var(--faint);font-size:11.5px}
.hc-wk b{font-size:13.5px}
.hc-wk-s{color:var(--c);font-weight:600}
.hc-wk small{color:var(--faint);font-size:11px}
.hc-wk.sel{border-color:var(--gold);background:rgba(227,191,110,.1)}
.hc-wk.on{box-shadow:0 0 0 2px var(--c),0 0 26px -4px var(--c);background:color-mix(in srgb,var(--c) 14%,transparent)}
.hc-wk-none{grid-column:1/-1;color:var(--faint);font-size:14px}

/* Legende */
.hc-legend{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}
.hc-lg-t{font-size:12.5px;color:var(--faint);margin:0 0 8px}
.hc-lg ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px}
.hc-lg-i{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;border-radius:10px;border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--muted);font:500 12.5px/1.2 var(--font)}
button.hc-lg-i{cursor:pointer}
button.hc-lg-i:hover,button.hc-lg-i:focus-visible{border-color:var(--gold);color:var(--text)}
.hc-lg-i b{color:var(--text)}
.hc-lg-i small{color:var(--faint);margin-left:4px}
.hc-lg-i.sel{border-color:var(--gold);color:var(--text);background:rgba(227,191,110,.08)}
@media (pointer:coarse){button.hc-lg-i,.hc-ct tbody th button{min-height:40px}}   /* Touch-Ziele (GR-14) */

/* Text */
.hc-text{max-width:900px}
.hc-text p{color:var(--muted);font-size:16.5px}
.hc-steps{margin:18px 0 22px;padding-left:22px;display:grid;gap:10px;color:var(--muted);font-size:16px}
.hc-steps b{color:var(--text)}
.hc-quote{margin:22px 0;padding:16px 20px;border-left:3px solid var(--gold);background:rgba(227,191,110,.06);border-radius:0 12px 12px 0}
.hc-quote p{margin:0 0 6px;color:var(--text);font-style:italic}
.hc-quote .hc-qsrc{margin:0;font-size:13px;font-style:normal;color:var(--faint)}

/* Punkte je Schale */
.hc-ptl{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:12px}
.hc-ptc{padding:12px 14px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}
.hc-ptc.sel{border-color:rgba(227,191,110,.55)}
.hc-ptc-h{margin:0 0 8px;font-size:14px}
.hc-ptc-h small{display:block;color:var(--faint);font-size:12px;margin-left:19px}
.hc-ptc-l{display:flex;flex-wrap:wrap;gap:6px}
.hc-pt{display:inline-grid;grid-template-columns:auto auto;column-gap:6px;align-items:baseline;padding:6px 10px;border-radius:10px;border:1px solid color-mix(in srgb,var(--c) 45%,var(--line));
  background:rgba(255,255,255,.03);color:var(--text);font:600 12.5px/1.25 var(--font);cursor:pointer}
.hc-pt b{color:var(--c)}
.hc-pt small{grid-column:1/-1;color:var(--faint);font-weight:500;font-size:11px}
.hc-pt:hover,.hc-pt:focus-visible,.hc-pt.on{background:color-mix(in srgb,var(--c) 18%,transparent);border-color:var(--c)}
#pontos .pts-more{margin-top:22px}

/* Kreisläufe */
.hc-circ{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:22px;align-items:start;margin-top:24px}
.hc-rings{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.hc-rings figure{margin:0;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}
.hc-rings figcaption{font-size:13px;color:var(--muted);margin-bottom:8px}
.hc-rings figcaption b{color:var(--gold)}
.hc-rings figcaption small{display:block;color:var(--faint);font-size:11.5px}
.hc-rsvg{width:100%;height:auto;display:block}
.hc-ring{stroke:var(--c);stroke-width:2;stroke-opacity:.75;cursor:pointer;animation:hc-breath 7s ease-in-out infinite;animation-delay:calc(var(--k) * .55s)}
.hc-ring.on{stroke-width:3.2;stroke-opacity:1;filter:drop-shadow(0 0 4px var(--c))}
.hc-ring:hover{stroke-width:3.2;stroke-opacity:1}
@keyframes hc-breath{0%,100%{stroke-opacity:.45}12%{stroke-opacity:1}30%{stroke-opacity:.5}}
.hc-ct{width:100%;border-collapse:collapse;font-size:13.5px}
.hc-ct th,.hc-ct td{padding:6px 8px;border-bottom:1px solid var(--line);text-align:left;vertical-align:middle}
.hc-ct thead th{font:600 11px var(--font);letter-spacing:.16em;text-transform:uppercase;color:var(--gold)}
.hc-ct tbody th button{background:none;border:0;color:var(--text);font:500 13.5px var(--font);cursor:pointer;padding:6px 0;text-align:left}
.hc-ct tbody th button b{color:var(--gold);margin-right:4px}
.hc-ct td{color:var(--muted)}
.hc-ct td.on{color:var(--text);background:rgba(227,191,110,.1);box-shadow:inset 0 0 0 1px rgba(227,191,110,.5)}
.hc-ct tr.pick th button{color:var(--gold)}
.hc-ct tr:hover td,.hc-ct tr:hover th{background:rgba(255,255,255,.03)}
.hc-cdesc{margin-top:16px;max-width:900px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--muted);font-size:14.5px}
.hc-cdesc:empty{display:none}
.hc-circ:empty{min-height:594px}
/* Platzhalter der übrigen JS-Blöcke (gemessene Höhen je Breite): kein Nachrücken beim Direktaufruf von #plasmas, #viagem, #cubagem … */
.hc-pls:empty{min-height:411px}.hc-jr:empty{min-height:258px}.hc-cub:empty{min-height:268px}.hc-mc:empty{min-height:734px}   /* Platz für Ringe + Beschreibung (#hc-cdesc wird im selben Zug gefüllt): kein Nachrücken bei #circuitos */
.hc-cdesc p{margin:0 0 6px}
.hc-cdesc b{color:var(--text)}

/* Plasmen */
.hc-pls{display:grid;gap:16px;margin-top:22px}
.hc-plr-t{margin:0 0 8px;font-size:13.5px;color:var(--muted)}
.hc-plr-t b{color:var(--gold);margin-right:6px}
.hc-plr ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.hc-plr li{display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px 10px;border:1px solid var(--line);border-radius:14px;background:rgba(255,255,255,.025);text-align:center;font-size:12.5px}
.hc-plr li.sel{border-color:var(--gold);background:rgba(227,191,110,.09)}
.hc-plr li small{color:var(--faint);font-size:11.5px}
.hc-csvg{display:block;max-width:100%;height:auto}
.hc-cf{stroke:rgba(214,220,255,.55);stroke-width:1.1;stroke-linejoin:round;fill:none}
.hc-cf.hid{stroke-dasharray:3 2.5;stroke:rgba(214,220,255,.35)}
.hc-cf.vis{fill:rgba(255,255,255,.02)}
.hc-cf.on{fill:var(--c);fill-opacity:.82;stroke:var(--c);stroke-opacity:1}
.hc-cf.on.hid{fill-opacity:.5}
.hc-cf.lit{fill:var(--c);fill-opacity:.18}
.hc-cc{fill:var(--c);stroke:#0a0b16;stroke-width:1}
.hc-cl{fill:var(--gold)}

/* 20 Tage */
.hc-jr{list-style:none;margin:22px 0 0;padding:0;display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:6px}
.hc-jr li{display:flex;min-width:0}
.hc-jr-turn{grid-column:1/-1;justify-content:center;font:600 11px/1 var(--font);letter-spacing:.18em;text-transform:uppercase;color:var(--gold);padding:4px 0}
.hc-jr-turn span{padding:6px 14px;border:1px dashed rgba(227,191,110,.5);border-radius:999px}
.hc-jr-d{flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:2px;padding:8px 4px;border-radius:12px;border:1px solid var(--line);background:rgba(255,255,255,.03);color:var(--text);font:500 12px/1.25 var(--font);cursor:pointer;text-align:center}
.hc-jr-d b{font:700 18px var(--display);color:var(--c)}
.hc-jr-d .hc-gl{margin:0}
.hc-jr-p{font-size:11.5px;color:var(--muted);max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hc-jr-d small{color:var(--faint);font-size:10.5px}
.hc-jr-d.SP{background:rgba(95,212,240,.04)}
.hc-jr-d:hover,.hc-jr-d:focus-visible{border-color:var(--gold)}
.hc-jr-d.sel{border-color:var(--gold);background:rgba(227,191,110,.12);box-shadow:0 0 0 1px var(--gold)}

/* Cubando o cubo */
.hc-cub-tabs{display:flex;flex-wrap:wrap;gap:6px;margin:18px 0 14px}
.hc-cub-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.hc-cub-o{margin:0;display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px;border:1px solid var(--line);border-radius:16px;background:var(--panel);text-align:center}
.hc-cub-o figcaption{display:grid;gap:2px;font-size:13px}
.hc-cub-o figcaption span{color:var(--gold);font-weight:600}
.hc-cub-o figcaption small{color:var(--faint);font-size:12px}
.hc-ne{position:relative;width:108px;height:117px}
.hc-ne i{position:absolute;inset:calc(var(--i,0) * 13px);border:1.5px solid rgba(214,220,255,.5);border-radius:4px}
.hc-ne i:nth-child(1){--i:0;border-color:rgba(214,220,255,.75)}
.hc-ne i:nth-child(2){--i:1;border-color:rgba(123,92,196,.8)}
.hc-ne i:nth-child(3){--i:2;border-color:rgba(127,227,196,.7)}
.hc-ne i:nth-child(4){--i:3;border-color:rgba(255,143,107,.8)}

/* Matriz cúbica */
.hc-mc{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:22px;margin-top:22px;align-items:start}
.hc-mc-n{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.hc-mc-n p{margin:0;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--panel);color:var(--muted);font-size:13px;line-height:1.4}
.hc-mc-n b{display:block;font:700 24px var(--display);color:var(--gold);margin-bottom:4px}
.hc-lay{list-style:none;margin:0;padding:0;display:grid;gap:3px}
.hc-lay li{display:grid;grid-template-columns:110px minmax(0,1fr) auto;gap:10px;align-items:center;padding:5px 10px;border-radius:8px;border-left:4px solid var(--c,#fff);background:rgba(255,255,255,.03);font-size:13px}
.hc-lay-r{color:var(--faint);font-variant-numeric:tabular-nums;font-size:12px}
.hc-lay li small{color:var(--faint);font-size:11.5px;white-space:nowrap}
.hc-lay li.SP{background:rgba(95,212,240,.035)}
.hc-lay li.sel{background:rgba(227,191,110,.13);box-shadow:inset 0 0 0 1px rgba(227,191,110,.6)}
.hc-lay-m{border-left-color:#fff!important;background:rgba(255,255,255,.08)!important}
.hc-lay-m b{color:var(--gold)}

/* Originalgrafiken */
.hc-figs{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:26px}
.hc-fig{margin:0;padding:10px;border:1px solid var(--line);border-radius:16px;background:#fff}
.hc-fig.wide{grid-column:1/-1}
.hc-fig img{width:100%;height:auto;border-radius:8px}
.hc-fig figcaption{font-size:12.5px;color:#3a3f5c;margin-top:6px}
.hc-src{color:var(--muted);font-size:14.5px;padding-left:20px}

/* ---------- schmal ---------- */
@media (max-width:980px){
  .hc-grid{grid-template-columns:minmax(0,1fr)}
  .hc-stage{height:clamp(420px,62vh,560px)}
  .hc-day{min-height:0}
  .hc-day:empty{min-height:350px}
  .hc-circ,.hc-mc{grid-template-columns:minmax(0,1fr)}
  .hc-circ:empty{min-height:1028px}
  .hc-jr:empty{min-height:483px}.hc-cub:empty{min-height:520px}.hc-mc:empty{min-height:934px}
  .hc-legend{grid-template-columns:minmax(0,1fr)}
  .hc-legend:empty{min-height:250px}
  .hc-pts:empty,.hc-pts:has(> .hc-load){min-height:620px}   /* echte Höhe 768 px: 621–755 (kein Nachrücken von #circuitos) */
  .hc-jr{grid-template-columns:repeat(5,minmax(0,1fr))}
  .hc-cub-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hc-day{contain-intrinsic-height:auto 330px}.hc-legend{contain-intrinsic-height:auto 250px}
  .hc-cv-pts{contain-intrinsic-height:auto 689px}.hc-cv-circ{contain-intrinsic-height:auto 1050px}
  .hc-jr{contain-intrinsic-height:auto 483px}.hc-cub{contain-intrinsic-height:auto 539px}.hc-mc{contain-intrinsic-height:auto 975px}
}
@media (max-width:700px){
  .hc-week{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:6px;scrollbar-width:thin}
  .hc-week li{flex:0 0 112px;scroll-snap-align:start}
  /* Platzhalter nahe an der echten Höhe (KU-03: sonst rutscht #pontos nach dem Ankersprung weg). Legende: Höhe fällt mit der Breite
     (360 px ≈ 500, 390 ≈ 470, 700 ≈ 252); Tageskarte je Sprache (DE-Texte länger) */
  .hc-legend:empty{min-height:clamp(252px,calc(763px - 73vw),520px)}
  .hc-day:empty{min-height:430px}
  :lang(de) .hc-day:empty{min-height:485px}
  :lang(en) .hc-day:empty{min-height:460px}
  .hc-week:empty{min-height:148px}
  .hc-circ:empty{min-height:980px}
  .hc-pts:empty,.hc-pts:has(> .hc-load){min-height:1150px}  /* echte Höhe 390 px: 1155–1289 */
  .hc-pls:empty{min-height:761px}.hc-cub:empty{min-height:580px}.hc-mc:empty{min-height:1590px}
  .hc-day{contain-intrinsic-height:auto 430px}.hc-legend{contain-intrinsic-height:auto 490px}
  .hc-cv-pts{contain-intrinsic-height:auto 1223px}.hc-cv-circ{contain-intrinsic-height:auto 950px}
  .hc-pls{contain-intrinsic-height:auto 761px}.hc-jr{contain-intrinsic-height:auto 500px}.hc-cub{contain-intrinsic-height:auto 600px}.hc-mc{contain-intrinsic-height:auto 1620px}
  .hc-plr ol{grid-template-columns:repeat(4,minmax(0,1fr))}
  .hc-figs{grid-template-columns:minmax(0,1fr)}
  .hc-lay li{grid-template-columns:86px minmax(0,1fr)}
  .hc-lay li small{grid-column:2}
}
@media (max-width:420px){
  .hc-stage{height:420px}
  .hc-rings{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px}
  .hc-rings figure{padding:8px}
  .hc-ct{font-size:12.5px}
  .hc-ct th,.hc-ct td{padding:5px 4px}
  .hc-ct .hc-gl{display:none}
  .hc-mc-n{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .hc-mc-n b{font-size:19px}
}
@media (prefers-reduced-motion:reduce){.hc-ring{animation:none}}
