/* v1.21.8 regression guard: Wissenskarten sind außerhalb des Vollbild-Viewers nie Carousels. */
.glossary-detail-overlay .glossary-detail-media .opti-card-carousel-button,
.glossary-detail-overlay .glossary-detail-media .opti-card-carousel-dots,
.glossary-detail-overlay .glossary-detail-media [data-card-carousel-prev],
.glossary-detail-overlay .glossary-detail-media [data-card-carousel-next],
.glossary-detail-overlay .glossary-detail-media [data-card-carousel-dot]{display:none!important}
.glossary-detail-overlay .glossary-detail-media.opti-card-carousel{display:block!important}
.glossary-detail-overlay .glossary-detail-media .opti-card-carousel-track{display:block!important;transform:none!important}
.glossary-detail-overlay .glossary-detail-media .opti-card-carousel-slide{display:none!important;width:100%!important}
.glossary-detail-overlay .glossary-detail-media .opti-card-carousel-slide:first-child{display:block!important}

/* OPTILeMO v1.21.15 · Wissenskarten: späterer Fokuswechsel + sticky Einzelbild + Viewer */
.glossary-detail-overlay.opx-glossary-context-detail .glossary-detail-shell,.glossary-detail-overlay.opx-glossary-inline-detail .glossary-detail-shell,.glossary-detail-overlay.opx-glossary-stacked-detail .glossary-detail-shell{width:min(1260px,100%)}
.glossary-detail-overlay.opx-glossary-context-detail .glossary-detail-layout{align-items:start}
.glossary-detail-overlay.opx-glossary-context-detail .glossary-detail-media.opx-glossary-context-media{position:sticky;top:14px;height:520px;min-height:520px;overflow:hidden;border-radius:26px;background:#17135e;box-shadow:0 22px 55px rgba(33,30,113,.2)}
.opx-topic-media-stage{position:relative;width:100%;height:100%;margin:0;overflow:hidden;background:#17135e;cursor:zoom-in}
.opx-topic-media-stage img{display:block;width:100%;height:100%;object-position:center;background:#17135e;transition:opacity .2s ease,transform .25s ease}
.opx-topic-media-stage.is-contain img{object-fit:contain}.opx-topic-media-stage.is-cover img{object-fit:cover}
.opx-topic-media-stage img.is-changing{opacity:.18;transform:scale(.992)}
.opx-topic-media-stage:focus-visible{outline:3px solid #46cce1;outline-offset:-3px}
.opx-topic-media-shade{position:absolute;inset:auto 0 0;height:34%;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(3,17,28,.8))}
.opx-topic-media-caption{position:absolute;right:62px;bottom:15px;left:15px;color:#fff;font-size:.78rem;font-weight:850;line-height:1.35;text-shadow:0 2px 10px rgba(0,0,0,.4)}
.opx-topic-media-count{position:absolute;top:14px;right:14px;padding:7px 10px;border:1px solid rgba(255,255,255,.38);border-radius:999px;color:#fff;background:rgba(3,17,28,.68);font-size:.66rem;font-weight:850;backdrop-filter:blur(8px)}
.opx-topic-media-count[hidden]{display:none}
.glossary-detail-grid article[data-topic-key]{scroll-margin-top:120px}

.glossary-detail-overlay.opx-glossary-inline-detail .glossary-detail-layout{grid-template-columns:1fr}
.glossary-detail-overlay.opx-glossary-inline-detail .glossary-detail-media.opx-glossary-inline-cover{position:relative;top:auto;height:auto;min-height:0;overflow:visible;border-radius:0;background:transparent;box-shadow:none}
.opx-topic-inline-media{display:grid;margin-top:18px;gap:14px}
.opx-glossary-media-stack{display:grid;width:100%;gap:20px;align-content:start}
.glossary-detail-overlay.opx-glossary-stacked-detail .glossary-detail-layout{align-items:start}
.glossary-detail-overlay.opx-glossary-stacked-detail .glossary-detail-media.opx-glossary-stacked-media{position:relative;top:auto;height:auto;min-height:0;overflow:visible;border-radius:0;background:transparent;box-shadow:none}
.opx-glossary-stack-frame{position:relative;width:100%;height:clamp(280px,31vw,500px);margin:0;overflow:hidden;border:1px solid rgba(120,166,181,.26);border-radius:24px;background:#17135e;box-shadow:0 18px 46px rgba(20,30,70,.15);cursor:zoom-in}
.opx-glossary-stack-frame img{display:block;width:100%;height:100%;object-position:center;background:#17135e;cursor:zoom-in}.opx-glossary-stack-frame.is-contain img{object-fit:contain}.opx-glossary-stack-frame.is-cover img{object-fit:cover}
.opx-glossary-stack-frame:focus-visible{outline:3px solid #46cce1;outline-offset:3px}
.opx-glossary-stack-frame figcaption{position:absolute;right:58px;bottom:12px;left:12px;overflow:hidden;padding:8px 10px;border-radius:11px;color:#fff;background:rgba(4,25,38,.76);font-size:.68rem;font-weight:760;line-height:1.35;text-overflow:ellipsis;white-space:nowrap;backdrop-filter:blur(8px)}
.opx-glossary-stack-zoom{position:absolute;right:12px;bottom:12px;display:grid;width:40px;height:40px;place-items:center;border:1px solid rgba(255,255,255,.55);border-radius:999px;color:#fff;background:rgba(4,25,38,.78);box-shadow:0 8px 22px rgba(0,0,0,.22);font-size:1.05rem;font-weight:900;pointer-events:none;backdrop-filter:blur(8px)}
.opx-glossary-stack-frame:hover .opx-glossary-stack-zoom,.opx-glossary-stack-frame:focus-visible .opx-glossary-stack-zoom,.opx-topic-media-stage:hover .opx-glossary-stack-zoom,.opx-topic-media-stage:focus-visible .opx-glossary-stack-zoom{background:#211e71}

.opx-glossary-image-viewer{position:fixed;z-index:320;inset:0;display:none;background:rgba(3,17,28,.96);backdrop-filter:blur(14px)}
.opx-glossary-image-viewer.is-open{display:grid;grid-template-rows:auto minmax(0,1fr)}
.opx-giv-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:max(12px,env(safe-area-inset-top)) max(16px,env(safe-area-inset-right)) 12px max(16px,env(safe-area-inset-left));color:#fff;border-bottom:1px solid rgba(255,255,255,.12);background:rgba(3,17,28,.72)}
.opx-giv-toolbar>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem}.opx-giv-toolbar>div{display:flex;gap:7px;align-items:center;flex:0 0 auto}
.opx-giv-toolbar button{min-width:42px;height:42px;padding:0 12px;border:1px solid rgba(255,255,255,.28);border-radius:999px;color:#fff;background:rgba(255,255,255,.08);cursor:pointer;font-weight:900}.opx-giv-toolbar button:hover,.opx-giv-toolbar button:focus-visible{border-color:#46cce1;background:rgba(70,204,225,.22);outline:none}
.opx-giv-stage{display:grid;min-height:0;padding:22px;overflow:auto;place-items:center;overscroll-behavior:contain;touch-action:pan-y pinch-zoom}
.opx-giv-stage img{display:block;max-width:calc(100vw - 44px);max-height:calc(100vh - 116px);max-height:calc(100dvh - 116px);object-fit:contain;background:#fff;box-shadow:0 24px 90px rgba(0,0,0,.42);transform:scale(var(--opx-giv-scale,1));transform-origin:center;transition:transform .14s ease}
body.opx-giv-open{overflow:hidden}.opx-giv-nav{position:fixed;z-index:2;top:50%;display:grid;width:54px;height:54px;padding:0;place-items:center;transform:translateY(-50%);border:1px solid rgba(255,255,255,.3);border-radius:999px;color:#fff;background:rgba(3,17,28,.72);box-shadow:0 10px 34px rgba(0,0,0,.28);font-size:2rem;line-height:1;cursor:pointer;backdrop-filter:blur(8px)}
.opx-giv-prev{left:max(18px,env(safe-area-inset-left))}.opx-giv-next{right:max(18px,env(safe-area-inset-right))}.opx-giv-nav:hover,.opx-giv-nav:focus-visible{border-color:#46cce1;background:rgba(70,204,225,.28);outline:none}.opx-giv-nav[hidden]{display:none}
.opx-giv-counter{position:fixed;left:50%;bottom:max(14px,env(safe-area-inset-bottom));z-index:2;min-width:58px;padding:7px 11px;transform:translateX(-50%);border:1px solid rgba(255,255,255,.22);border-radius:999px;color:#fff;background:rgba(3,17,28,.72);font-size:.72rem;font-weight:800;text-align:center;backdrop-filter:blur(8px)}.opx-giv-counter:empty{display:none}

@media(max-width:1040px){
 .opx-glossary-primary-frame{height:clamp(260px,58vw,480px)}
 .opx-topic-inline-media .opx-glossary-stack-frame{height:clamp(240px,58vw,460px);border-radius:20px}
 .opx-glossary-media-stack{gap:14px}.opx-glossary-stack-frame{height:clamp(240px,62vw,480px);border-radius:20px}
}
@media(max-width:720px){
 .opx-giv-nav{width:46px;height:46px;font-size:1.7rem}.opx-giv-prev{left:max(8px,env(safe-area-inset-left))}.opx-giv-next{right:max(8px,env(safe-area-inset-right))}.opx-giv-counter{bottom:max(8px,env(safe-area-inset-bottom))}
 .opx-glossary-primary-frame,.opx-topic-inline-media .opx-glossary-stack-frame,.opx-glossary-stack-frame{height:clamp(220px,72vw,400px);border-radius:16px}
 .opx-giv-toolbar{align-items:flex-start;flex-direction:column}.opx-giv-stage{padding:12px}.opx-giv-stage img{max-width:calc(100vw - 24px);max-height:calc(100vh - 150px);max-height:calc(100dvh - 150px)}
}
@media(prefers-reduced-motion:reduce){.opx-giv-stage img,.opx-topic-media-stage img{transition:none!important}}
