:root{--bny-ink:#213547;--bny-muted:#6c7a86;--bny-blue:#dfeffc;--bny-pink:#fcebf2;--bny-mint:#e8f8ef;--bny-purple:#efeafb;--bny-yellow:#fff3cf;--bny-white:#fff;--bny-shadow:0 18px 46px rgba(44,73,92,.11)}.bny-action{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;border-radius:999px;padding:11px 18px;font-weight:800;border:0;cursor:pointer}.bny-action--primary{background:#284f67;color:#fff}.bny-action--soft{background:#edf6fc;color:#284f67}.bny-kicker{display:inline-flex;color:#557185;font-size:13px;font-weight:800;letter-spacing:.01em}.bny-program-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.bny-program-card{background:#fff;border:1px solid rgba(77,111,132,.13);border-radius:24px;overflow:hidden;box-shadow:var(--bny-shadow)}.bny-program-card__visual{height:230px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--bny-blue),var(--bny-pink));font-size:88px}.bny-program-card__visual img{width:100%;height:100%;object-fit:cover}.bny-program-card__body{padding:24px}.bny-program-card h2{font-size:25px;margin:8px 0}.bny-program-card h2 a{text-decoration:none;color:var(--bny-ink)}.bny-program-card p{color:var(--bny-muted)}.bny-program-card__meta{display:flex;gap:12px;flex-wrap:wrap;margin:15px 0;font-size:13px;font-weight:700}.bny-linear-progress{height:8px;background:#edf0f2;border-radius:99px;overflow:hidden;margin:16px 0}.bny-linear-progress i{display:block;height:100%;background:#56b89c;border-radius:inherit}.bny-content-card{background:#fff;border:1px solid rgba(77,111,132,.14);border-radius:20px;overflow:hidden;transition:.2s;min-width:0}.bny-content-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px rgba(44,73,92,.12)}.bny-content-card__media{height:165px;position:relative;display:flex;background:linear-gradient(135deg,#edf6fc,#fcebf2);align-items:center;justify-content:center;text-decoration:none;overflow:hidden}.bny-content-card__media img{width:100%;height:100%;object-fit:cover}.bny-content-placeholder{font-size:58px}.bny-content-card__type{position:absolute;right:12px;bottom:12px;background:rgba(255,255,255,.92);color:#294e65;padding:5px 10px;border-radius:999px;font-size:11px;font-weight:900}.bny-content-card__lock{position:absolute;left:12px;top:12px;background:#fff;padding:7px;border-radius:50%}.bny-content-card__body{padding:16px}.bny-content-card__body h3{font-size:17px;margin:7px 0}.bny-content-card__body h3 a{text-decoration:none;color:var(--bny-ink)}.bny-content-card__meta{display:flex;gap:8px;flex-wrap:wrap;font-size:11px;color:var(--bny-muted)}.bny-content-card__note{font-size:12px;color:#526877;margin:10px 0 0;background:#f6fafc;padding:9px;border-radius:10px}.bny-content-card--compact .bny-content-card__media{height:105px}.bny-content-card--compact .bny-content-card__body{padding:12px}.bny-review-badge{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:10px;font-weight:900;background:#e8f8ef;color:#28745d}.bny-review-badge--level-review,.bny-review-badge--spiral{background:#fff3cf;color:#8c6300}.bny-learning-dashboard{display:grid;gap:22px}.bny-dashboard-hero{display:flex;justify-content:space-between;gap:20px;align-items:center;padding:28px;border-radius:26px;background:linear-gradient(135deg,#e8f3fb,#fcecf3);box-shadow:var(--bny-shadow)}.bny-dashboard-hero h1{margin:5px 0 6px;font-size:32px}.bny-progress-ring{width:122px;height:122px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;background:conic-gradient(#4ea98c calc(var(--progress)*1%),rgba(255,255,255,.65) 0);position:relative;flex:0 0 auto}.bny-progress-ring:before{content:"";position:absolute;inset:11px;background:#fff;border-radius:50%}.bny-progress-ring>*{position:relative}.bny-progress-ring strong{font-size:22px}.bny-progress-ring span{font-size:10px;color:var(--bny-muted)}.bny-current-week-card{background:#fff;border-radius:26px;padding:26px;border:1px solid rgba(77,111,132,.12);box-shadow:var(--bny-shadow)}.bny-current-week-card__head{display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid #edf0f2;padding-bottom:20px}.bny-current-week-card__head h2{margin:5px 0}.bny-today-plan{padding-top:20px}.bny-section-title{display:flex;align-items:flex-start;gap:12px}.bny-section-title>span{font-size:28px}.bny-section-title h3{margin:0 0 3px}.bny-section-title p{margin:0;color:var(--bny-muted);font-size:13px}.bny-today-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:16px}.bny-today-item__session{display:block;font-size:12px;font-weight:900;margin-bottom:7px;color:#526d7f}.bny-lock,.bny-dashboard-login,.bny-empty,.bny-demo-placeholder{text-align:center;padding:36px;border-radius:24px;background:#fff;border:1px solid rgba(77,111,132,.14)}.bny-lock>span,.bny-dashboard-login>span,.bny-empty>span,.bny-demo-placeholder>span{display:block;font-size:52px;margin-bottom:12px}.bny-media-player{background:#14232d;border-radius:22px;overflow:hidden}.bny-media-player video{display:block;width:100%;max-height:70vh;background:#000}.bny-media-player--audio{background:linear-gradient(135deg,#e7f4fc,#fcebf2);padding:36px}.bny-media-player audio{width:100%}.bny-file-download{display:flex;align-items:center;gap:18px;padding:24px;border-radius:20px;background:#f4f9fc}.bny-file-download>span{font-size:42px}.bny-file-download>div{flex:1}.bny-content-image img{display:block;max-width:100%;margin:auto;border-radius:20px}.bny-week-is-complete [data-bny-toggle-week]{background:#2f8e70;color:#fff}@media(max-width:900px){.bny-program-grid,.bny-today-grid{grid-template-columns:1fr}.bny-dashboard-hero,.bny-current-week-card__head{align-items:flex-start;flex-direction:column}.bny-progress-ring{width:100px;height:100px}.bny-file-download{align-items:flex-start;flex-wrap:wrap}.bny-file-download .bny-action{width:100%}}

/* Bunny Core 1.1.0 — Phosphor Duotone front-end icons */
.bny-icon,.bunny-icon.ph-duotone{display:inline-block;width:1.25em;height:1.25em;flex:0 0 auto;vertical-align:-.18em;fill:currentColor;overflow:visible}
.bunny-icon.ph-duotone [opacity="0.2"]{opacity:1;fill:var(--ph-secondary,#f4bfd4)}
.bny-content-placeholder{display:grid;place-items:center;font-size:0}
.bny-content-placeholder .bunny-icon{width:72px;height:72px;color:#66519a;--ph-secondary:#f5bfd6}
.bny-content-card__lock{display:grid;place-items:center;width:36px;height:36px;padding:0;color:#725598;--ph-secondary:#f6bfd5}
.bny-content-card__lock .bunny-icon{width:20px;height:20px}
.bny-content-card__meta span,.bny-program-card__meta span,.bny-today-item__session{display:inline-flex;align-items:center;gap:5px}
.bny-content-card__meta .bunny-icon{width:14px;height:14px;color:#725d91;--ph-secondary:#efc4d6}
.bny-program-card__meta .bunny-icon,.bny-today-item__session .bunny-icon{width:17px;height:17px;color:#6b5595;--ph-secondary:#f2bdd4}
.bny-program-card__visual>span{display:grid;place-items:center;width:110px;height:110px;border-radius:32px;background:rgba(255,255,255,.55);color:#66519a;--ph-secondary:#f4bcd3}
.bny-program-card__visual>span .bunny-icon{width:64px;height:64px}
.bny-program-card__visual img.bny-program-card__illustration{width:100%;height:100%;padding:18px 24px;object-fit:contain;background:transparent;filter:drop-shadow(0 14px 22px rgba(49,64,96,.14))}
.bny-lock>span,.bny-dashboard-login>span,.bny-empty>span,.bny-demo-placeholder>span{display:grid;place-items:center;width:84px;height:84px;margin:0 auto 12px;border-radius:25px;background:linear-gradient(180deg,#fff2f7,#eef6ff);color:#66519a;--ph-secondary:#f4bdd4;font-size:0}
.bny-lock>span .bunny-icon,.bny-dashboard-login>span .bunny-icon,.bny-empty>span .bunny-icon,.bny-demo-placeholder>span .bunny-icon{width:46px;height:46px}
.bny-section-title>span{display:grid;place-items:center;width:44px;height:44px;border-radius:14px;background:#fff2f7;color:#66519a;--ph-secondary:#f4bdd4;font-size:0}
.bny-section-title>span .bunny-icon{width:24px;height:24px}
.bny-file-download>span{display:grid;place-items:center;width:64px;height:64px;border-radius:19px;background:#fff;color:#66519a;--ph-secondary:#f4bdd4;font-size:0}
.bny-file-download>span .bunny-icon{width:34px;height:34px}
.bny-action .bunny-icon{width:18px;height:18px;--ph-secondary:rgba(255,255,255,.34)}
.bunny-icon.ph-duotone,.bunny-icon.ph-duotone *{stroke:none!important}

/* Bunny Core 1.2.0 — audio-only weekly curriculum */
.bny-audio-dashboard-summary{display:flex;flex-wrap:wrap;gap:10px;padding-top:18px}.bny-audio-dashboard-summary span{display:inline-flex;align-items:center;gap:7px;padding:9px 12px;border-radius:999px;background:#f5f9fc;color:#50677a;font-size:12px}.bny-audio-dashboard-summary .bunny-icon{width:18px;height:18px;color:#6c5598;--ph-secondary:#f1bdd3}
.bny-audio-week-player{background:#fff;border:1px solid rgba(77,111,132,.14);border-radius:30px;padding:28px;box-shadow:var(--bny-shadow)}
.bny-audio-week-player__top{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:18px;align-items:center;padding-bottom:22px;border-bottom:1px solid #edf1f4}
.bny-audio-week-player__icon{width:70px;height:70px;display:grid;place-items:center;border-radius:22px;background:linear-gradient(145deg,#e8f4fc,#fceaf2);color:#66519a;--ph-secondary:#f1bad1}.bny-audio-week-player__icon .bunny-icon{width:38px;height:38px}
.bny-audio-week-player__intro h2{margin:4px 0 5px;font-size:28px;color:var(--bny-ink)}.bny-audio-week-player__intro p{margin:0;color:var(--bny-muted)}
.bny-audio-play-all:disabled{opacity:.55;cursor:not-allowed}.bny-audio-play-all .bunny-icon{width:19px;height:19px}
.bny-audio-now-playing{display:grid;grid-template-columns:minmax(160px,.45fr) minmax(260px,1fr);gap:18px;align-items:center;margin:20px 0;padding:16px 18px;border-radius:18px;background:linear-gradient(135deg,#f3f9fd,#fff4f8)}.bny-audio-now-playing small{display:block;color:#74818e;font-size:11px}.bny-audio-now-playing strong{display:block;color:var(--bny-ink);margin-top:3px}.bny-audio-now-playing audio{width:100%}
.bny-audio-track-list{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:10px;counter-reset:none}.bny-audio-track{margin:0;border:1px solid #e7ecf1;border-radius:17px;overflow:hidden;background:#fff;transition:.2s}.bny-audio-track:hover{border-color:#d4c7e7;box-shadow:0 10px 24px rgba(51,67,92,.07)}.bny-audio-track.is-active{border-color:#846ab0;background:#fbf9ff;box-shadow:0 12px 28px rgba(102,81,154,.13)}.bny-audio-track.is-missing{background:#fafbfc;opacity:.77}
.bny-audio-track__button{display:grid;grid-template-columns:38px 42px minmax(0,1fr) auto auto;gap:12px;align-items:center;width:100%;padding:13px 15px;border:0;background:transparent;text-align:right;color:inherit;cursor:pointer}.bny-audio-track__button:disabled{cursor:default}.bny-audio-track__number{display:grid;place-items:center;width:32px;height:32px;border-radius:11px;background:#edf5fb;color:#4e6b80;font-size:12px;font-weight:900}.bny-audio-track__play{display:grid;place-items:center;width:40px;height:40px;border-radius:14px;background:#fff0f6;color:#75589c;--ph-secondary:#f5bfd5}.bny-audio-track__play .bunny-icon{width:22px;height:22px}.bny-audio-track__copy{min-width:0}.bny-audio-track__copy strong{display:block;font-size:15px;color:var(--bny-ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bny-audio-track__copy small{display:block;margin-top:4px;font-size:11px;color:var(--bny-muted)}.bny-audio-track__status{font-size:11px;color:#6f7f8b;white-space:nowrap}.bny-audio-track.is-active .bny-audio-track__play{background:#7659a2;color:#fff;--ph-secondary:rgba(255,255,255,.35)}
@media(max-width:780px){.bny-audio-week-player{padding:20px}.bny-audio-week-player__top{grid-template-columns:auto minmax(0,1fr)}.bny-audio-play-all{grid-column:1/-1;width:100%}.bny-audio-now-playing{grid-template-columns:1fr}.bny-audio-track__button{grid-template-columns:32px 38px minmax(0,1fr);gap:9px}.bny-audio-track__status,.bny-audio-track__button>.bny-review-badge{grid-column:3}.bny-audio-track__copy strong{white-space:normal}.bny-audio-track__status{justify-self:start}}

/* Bunny Core 1.2.5 — continuous playlist and automatic completion */
.bny-audio-week-player.is-week-complete{border-color:rgba(47,142,112,.28)}
.bny-audio-week-player.is-week-complete .bny-audio-week-player__icon{background:#e8f8ef;color:#2f8e70}


/* Embedded HTML mini-apps such as the Bunny coloring game. */
.bny-html-game{overflow:hidden;border:1px solid #dfe6ef;border-radius:24px;background:#fff;box-shadow:0 18px 44px rgba(48,61,92,.10)}
.bny-html-game__toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px;border-bottom:1px solid #e8edf3;background:linear-gradient(90deg,#f3f9ff,#fff3f7)}
.bny-html-game__toolbar strong{color:#2f3b59}
.bny-html-game__toolbar a{font-size:13px;font-weight:700;text-decoration:none;color:#315f7a}
.bny-html-game iframe{display:block;width:100%;height:var(--bny-game-height,680px);border:0;background:#fff}
.bny-demo-placeholder--game{background:linear-gradient(135deg,#f0f8ff,#fff1f6)}
@media(max-width:720px){.bny-html-game__toolbar{align-items:flex-start;flex-direction:column}.bny-html-game iframe{height:min(72vh,var(--bny-game-height,680px))}}


/* Age-stage access gate */
.bny-program-card{position:relative}.bny-program-card.is-age-locked{isolation:isolate}.bny-program-card.is-age-locked .bny-program-card__visual,.bny-program-card.is-age-locked .bny-program-card__body{opacity:.52;filter:saturate(.65)}.bny-program-card.is-age-locked:hover{transform:none}.bny-program-card__age-lock{position:absolute;z-index:4;inset:78px 50% auto auto;transform:translateX(50%);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-width:230px;padding:18px 22px;border-radius:20px;background:rgba(255,255,255,.95);border:1px solid rgba(80,103,126,.18);box-shadow:0 16px 38px rgba(34,53,71,.15);text-align:center;color:#263f56}.bny-program-card__age-lock>span{display:grid;place-items:center;width:46px;height:46px;border-radius:14px;background:#f2eafa;color:#7655a0}.bny-program-card__age-lock .bunny-icon{width:24px;height:24px}.bny-program-card__age-lock strong{font-size:15px}.bny-program-card__age-lock small{color:#6c7a86}.bny-action--disabled{cursor:not-allowed;background:#eef1f4;color:#75828c;pointer-events:none}.bny-age-route-notice{display:flex;align-items:flex-start;gap:14px;margin:0 0 22px;padding:18px 20px;border:1px solid #f0cfdc;border-radius:18px;background:#fff7fa;color:#334e63}.bny-age-route-notice>span{display:grid;place-items:center;flex:0 0 44px;width:44px;height:44px;border-radius:13px;background:#fce7f0;color:#a54b74}.bny-age-route-notice strong{display:block;margin-bottom:4px;font-size:16px}.bny-age-route-notice p{margin:0;color:#657784;line-height:1.8}@media(max-width:700px){.bny-program-card__age-lock{inset:62px 50% auto auto;min-width:210px;padding:15px 17px}.bny-age-route-notice{align-items:flex-start}}


/* Bunny Core 1.4.0 — collapsible listening levels */
.program-level-list--audio .program-level-block__facts{align-items:center}
.bny-level-collapse-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:8px 12px;border:1px solid #d8e5ed;border-radius:999px;background:#fff;color:#315970;font:inherit;font-size:11px;font-weight:900;line-height:1;cursor:pointer;white-space:nowrap;box-shadow:0 5px 15px rgba(49,89,112,.07);transition:background-color .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease}
.bny-level-collapse-toggle:hover{background:#f7fbfd;border-color:#bfd6e4;transform:translateY(-1px);box-shadow:0 8px 20px rgba(49,89,112,.11)}
.bny-level-collapse-toggle:focus-visible{outline:3px solid rgba(102,81,154,.22);outline-offset:2px}
.bny-level-collapse-toggle svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s ease}
.bny-level-collapse-toggle[aria-expanded="true"]{background:#f3effb;border-color:#d9cbea;color:#66519a}
.bny-level-collapse-toggle[aria-expanded="true"] svg{transform:rotate(180deg)}
.bny-level-collapsible__body[hidden]{display:none!important}
.program-level-block.is-level-collapsed{box-shadow:0 10px 28px rgba(50,80,99,.06)}
.program-level-block.is-level-collapsed .program-level-block__surface>header{margin-bottom:0}
.program-level-block.is-level-collapsed .program-level-block__surface{padding-bottom:0}
.program-level-block.is-level-expanded{border-color:rgba(102,81,154,.20)}
@media(max-width:720px){.program-level-list--audio .program-level-block__facts{justify-content:flex-start}.bny-level-collapse-toggle{min-height:38px;padding:9px 12px}.program-level-list--audio .program-level-block>header{gap:12px}}


/* Bunny Core 1.4.1 — RTL and mixed-language direction fixes */
.bny-program-grid,
.bny-program-card,
.bny-content-card,
.bny-learning-dashboard,
.bny-dashboard-hero,
.bny-current-week-card,
.bny-today-plan,
.bny-age-route-notice,
.bny-lock,
.bny-dashboard-login,
.bny-empty,
.bny-demo-placeholder,
.bny-audio-week-player,
.bny-audio-level-preview,
.bny-file-download,
.bny-html-game,
.bny-level-accordion,
.bny-level-card,
.bny-level-section,
.bny-week-card,
.bny-explorer-route,
.bny-explorer-week,
.bny-parent-guide {
  direction: rtl;
  text-align: right;
}

.bny-program-card__body,
.bny-content-card__body,
.bny-program-card__age-lock,
.bny-dashboard-hero > div,
.bny-current-week-card__head > div,
.bny-audio-week-player__intro,
.bny-audio-level-guide,
.bny-audio-level-preview__head,
.bny-audio-track__copy,
.bny-section-title > div,
.bny-file-download > div,
.bny-html-game__toolbar,
.bny-age-route-notice > div {
  direction: rtl;
  text-align: right;
}

/* Let the browser resolve each mixed Persian/English phrase from its first strong character. */
.bny-program-card h1,
.bny-program-card h2,
.bny-program-card h3,
.bny-program-card p,
.bny-program-card small,
.bny-content-card h1,
.bny-content-card h2,
.bny-content-card h3,
.bny-content-card p,
.bny-kicker,
.bny-dashboard-hero h1,
.bny-current-week-card h2,
.bny-current-week-card h3,
.bny-audio-week-player h2,
.bny-audio-week-player h3,
.bny-audio-track__copy strong,
.bny-audio-track__copy small,
.bny-level-card h2,
.bny-level-card h3,
.bny-week-card h2,
.bny-week-card h3 {
  direction: rtl;
  text-align: right;
  unicode-bidi: plaintext;
}

/* Inline Latin fragments stay intact inside RTL sentences. */
.bny-program-card bdi,
.bny-content-card bdi,
.bny-learning-dashboard bdi,
.bny-audio-week-player bdi,
.bny-level-card bdi,
.bny-week-card bdi,
.bny-ltr,
[lang="en"].bny-inline,
[dir="ltr"].bny-inline {
  direction: ltr;
  unicode-bidi: isolate;
  display: inline-block;
}

.bny-program-card__meta,
.bny-content-card__meta,
.bny-audio-level-guide__stats,
.bny-audio-track__button,
.bny-section-title,
.bny-age-route-notice,
.bny-file-download,
.bny-action {
  direction: rtl;
}

.bny-program-card__meta,
.bny-content-card__meta,
.bny-audio-level-guide__stats {
  justify-content: flex-start;
}

/* Native media controls, URLs, filenames and technical values must remain LTR. */
.bny-media-player audio,
.bny-media-player video,
.bny-audio-now-playing audio,
.bny-html-game iframe,
.bny-file-url,
.bny-technical-value,
.bny-code,
.bny-shortcode,
.bny-content-card code {
  direction: ltr;
  text-align: left;
  unicode-bidi: isolate;
}

/* Keep progress geometry independent from text direction. */
.bny-linear-progress,
.bny-progress-ring {
  direction: ltr;
}


/* Additional mixed-title and level layout normalization */
.bny-program-card h2 a,
.bny-content-card h3 a,
.bny-dashboard-hero h1,
.bny-current-week-card h2,
.bny-audio-track__copy strong,
.bny-audio-level-preview strong,
.program-level-list--audio,
.program-level-block,
.program-level-block__surface,
.program-level-block__surface > header,
.program-level-block__facts,
.bny-level-collapse-toggle {
  direction: rtl;
  text-align: right;
}
.bny-program-card h2 a,
.bny-content-card h3 a,
.bny-dashboard-hero h1,
.bny-current-week-card h2,
.bny-audio-track__copy strong,
.bny-audio-level-preview strong,
.program-level-block h1,
.program-level-block h2,
.program-level-block h3,
.program-level-block p {
  unicode-bidi: plaintext;
}
.program-level-block__surface > header,
.program-level-block__facts {
  justify-content: flex-start;
}
.bny-level-collapse-toggle .bunny-icon,
.bny-level-collapse-toggle svg {
  flex: 0 0 auto;
}


/* Bunny Core 1.4.2 — compact locked levels and unified progress */
.bny-program-progress{display:grid;gap:7px;margin:17px 0 16px;padding:12px 14px;border:1px solid #e3ebf0;border-radius:16px;background:#f9fcfd}
.bny-program-progress__copy{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:12px;color:#587080;font-weight:800}
.bny-program-progress__copy strong{font-size:14px;color:#284f67}
.bny-program-progress .bny-linear-progress{margin:0;height:9px}
.bny-program-progress small{color:#7a8993;font-size:11px}
.bny-program-progress-panel{direction:rtl;text-align:right;margin:0 0 22px;padding:18px 20px;border:1px solid rgba(77,111,132,.14);border-radius:20px;background:linear-gradient(135deg,#f4f9fd,#fff7fb);box-shadow:0 12px 32px rgba(44,73,92,.08)}
.bny-program-progress-panel__head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:11px}
.bny-program-progress-panel__head>div{display:flex;align-items:baseline;gap:10px}.bny-program-progress-panel__head small{font-weight:900;color:#587080}.bny-program-progress-panel__head strong{font-size:24px;color:#284f67}.bny-program-progress-panel__head>span{font-size:12px;color:#6c7a86;font-weight:700}
.bny-program-progress-panel .bny-linear-progress{height:10px;margin:0;background:#e7edf1}.bny-program-progress-panel .bny-linear-progress i{background:linear-gradient(90deg,#56b89c,#79c7ae)}
:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact{min-height:0!important;height:auto!important;overflow:hidden!important;padding:0!important;box-shadow:0 10px 28px rgba(50,80,99,.06)!important}
:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact .program-level-block__surface{min-height:0!important;height:auto!important;padding-bottom:0!important;background:#fff!important}
:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact .program-level-block__surface>header{min-height:0!important;margin-bottom:0!important;padding-bottom:20px!important}
:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact:before,:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact:after{display:none!important}
.bny-locked-level-badge{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:7px 10px;border:1px solid #eadcf0;border-radius:999px;background:#faf5fc;color:#7b5891;font-size:11px;font-weight:900;white-space:nowrap}
.bny-locked-level-badge svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.bny-locked-level-open-button{font-family:inherit;cursor:pointer;white-space:nowrap!important}
.bny-locked-level-next-note{display:inline-flex;align-items:center;min-height:36px;padding:8px 12px;border:1px dashed #c9b8d8;border-radius:999px;color:#806995;font-size:11px;font-weight:800;white-space:nowrap}
.program-level-block .program-level-block__surface>header{display:flex!important;align-items:flex-start!important;justify-content:space-between!important;gap:18px!important}
.program-level-block .program-level-block__surface>header h3{margin:5px 0!important}
.program-level-block .program-level-block__surface>header p{margin:0!important}
.bny-level-card-header-status{flex:1 0 100%;margin-top:2px;color:#5f7487;font-size:11px;font-weight:900;line-height:1.5;white-space:nowrap}
.program-level-block .bny-level-card-progress{padding:8px 22px 14px!important}
.program-level-block .bny-level-card-progress .bny-linear-progress{margin:10px 0 0!important}
.bny-locked-level-badge,.bny-level-card-progress,.bny-level-card-header-status{display:none!important}
@media(max-width:760px){.program-level-block .program-level-block__surface>header{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important}}
@media(max-width:720px){.bny-program-progress-panel__head{align-items:flex-start;flex-direction:column;gap:5px}.bny-program-progress-panel__head>div{width:100%;justify-content:space-between}:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact .program-level-block__surface>header{padding-bottom:16px!important}.bny-locked-level-badge{min-height:32px}}


/* Bunny Core 1.4.5 — deterministic mixed-title run layout */
.bny-mixed-title{
  display:inline-flex!important;
  flex-flow:row wrap!important;
  align-items:baseline!important;
  justify-content:flex-start!important;
  max-width:100%;
  direction:rtl!important;
  unicode-bidi:isolate!important;
  column-gap:.22em;
  row-gap:0;
  text-align:right!important;
}
.bny-mixed-title__rtl{
  display:inline-block;
  direction:rtl!important;
  unicode-bidi:isolate!important;
  text-align:right!important;
}
.bny-mixed-title__ltr{
  display:inline-block;
  direction:ltr!important;
  unicode-bidi:isolate!important;
  text-align:left!important;
  white-space:nowrap;
}
.bny-mixed-title__separator{
  display:inline-block;
  direction:ltr!important;
  unicode-bidi:isolate!important;
  text-align:center!important;
  white-space:nowrap;
}
.bny-directional-title--ltr{direction:ltr!important;unicode-bidi:isolate!important;text-align:left!important;display:inline-block}
.bny-directional-title--rtl{direction:rtl!important;unicode-bidi:isolate!important;text-align:right!important;display:inline-block}
[data-bny-text-direction="ltr"]{direction:ltr!important;text-align:left!important;unicode-bidi:isolate!important}
[data-bny-text-direction="rtl"]{direction:rtl!important;text-align:right!important;unicode-bidi:isolate!important}
.bny-program-card h2,
.bny-program-card h2 a,
.bny-dashboard-hero h1,
.bny-current-week-card h2,
.program-level-block h1,
.program-level-block h2,
.program-level-block h3,
.single-bny_program .entry-title,
.single-bny_level .entry-title,
.single-bny_week .entry-title,
.single-bny_content .entry-title,
.post-type-archive-bny_program .page-title,
.post-type-archive-bny_content .page-title,
.wp-block-post-title,
.entry-header .entry-title{
  direction:rtl!important;
  unicode-bidi:isolate!important;
  text-align:right!important;
}

/* Bunny Core 1.4.4 — unclipped compact soft-lock cards */
:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact{
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  overflow:hidden!important;
  padding:0!important;
  border-radius:24px!important;
}
:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact [data-bny-level-modal]{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}
:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact .program-level-block__surface{
  display:block!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:inherit!important;
  background:linear-gradient(135deg,#f7fbfe 0%,#fff7fb 100%)!important;
}
:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact .program-level-block__surface>header{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  flex-wrap:wrap!important;
  gap:14px 20px!important;
  min-height:112px!important;
  margin:0!important;
  padding:20px 24px!important;
  overflow:visible!important;
}
:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact .program-level-block__surface>header>*{
  min-width:0;
}
:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact .program-level-block__facts{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:0!important;
}
:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact .bny-locked-level-badge,
:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact .bny-locked-level-open-button{
  position:static!important;
  transform:none!important;
  flex:0 0 auto!important;
}
:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact .bny-locked-level-open-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  max-width:100%!important;
}
@media(max-width:720px){
  :is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact .program-level-block__surface>header{
    min-height:0!important;
    padding:17px 18px!important;
    gap:12px!important;
  }
  :is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact .program-level-block__facts{
    width:100%!important;
    justify-content:flex-start!important;
  }
  :is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact .bny-locked-level-open-button{
    min-height:38px!important;
  }
}


/* Bunny Core 1.4.6 — hard stop for legacy soft-lock overlay cropping */
:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact{
  display:block!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  contain:none!important;
}
:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact>.bny-level-lock-overlay,
:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact .bny-level-lock-overlay,
:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact [data-bny-level-lock-overlay]{
  display:none!important;
  visibility:hidden!important;
  opacity:0!important;
  pointer-events:none!important;
  position:static!important;
  width:0!important;
  height:0!important;
  min-height:0!important;
  overflow:hidden!important;
}
:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact .program-level-block__surface{
  filter:none!important;
  opacity:1!important;
  pointer-events:auto!important;
  user-select:auto!important;
  transform:none!important;
  overflow:visible!important;
}
:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact .program-level-block__surface>header{
  min-height:92px!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  padding:18px 22px!important;
}
:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact .program-level-block__surface>header>div:first-child{
  flex:1 1 320px!important;
}
:is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact .program-level-block__facts{
  flex:0 1 auto!important;
}
@media(max-width:720px){
  :is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact .program-level-block__surface>header{
    display:grid!important;
    grid-template-columns:minmax(0,1fr)!important;
    min-height:0!important;
    padding:16px!important;
  }
  :is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact .program-level-block__facts{
    width:100%!important;
  }
}

/* Global mixed-direction primitives used by Bunny Core and Bunny Theme. */
.bny-mixed-title--global{vertical-align:baseline}


/* Bunny Core 1.4.7 — equal program cards and locked-route progress placeholder */
.bny-program-grid{align-items:stretch}
.bny-program-card{display:flex;flex-direction:column;height:100%}
.bny-program-card__visual{flex:0 0 230px}
.bny-program-card__body{display:flex;flex:1 1 auto;flex-direction:column;min-height:0}
.bny-program-card__body>.bny-program-progress{margin-top:auto}
.bny-program-card__body>.bny-action{align-self:flex-start}
.bny-program-progress.is-route-locked{background:#f8fafc;border-color:#e5eaee}
.bny-program-progress.is-route-locked .bny-linear-progress i{width:0!important;background:#b9c2ca}
.bny-program-progress.is-route-locked small{display:block;min-height:1.55em}
@media(max-width:900px){.bny-program-card__visual{flex-basis:210px}}


/* Bunny media player — Plyr 3.8.4 */
.bny-media-player,
.bny-audio-now-playing {
    --plyr-color-main: #7b55b5;
    --plyr-video-background: #15243a;
    --plyr-menu-background: rgba(255,255,255,.98);
    --plyr-menu-color: #21324a;
    --plyr-tooltip-background: #21324a;
    --plyr-tooltip-color: #fff;
    --plyr-audio-controls-background: transparent;
    --plyr-audio-control-color: #21324a;
    --plyr-audio-control-color-hover: #fff;
    --plyr-control-radius: 12px;
    --plyr-range-fill-background: #7b55b5;
    --plyr-range-thumb-background: #fff;
    --plyr-font-family: inherit;
}

.bny-media-player .plyr,
.bny-audio-now-playing .plyr {
    width: 100%;
    max-width: 100%;
    direction: ltr;
    border-radius: 20px;
}

.bny-media-player--audio .plyr,
.bny-audio-now-playing .plyr--audio {
    background: linear-gradient(135deg, #f4f9fd 0%, #fff3f8 100%);
    border: 1px solid #e7edf4;
    padding: 8px 10px;
}

.bny-media-player--audio .plyr__controls,
.bny-audio-now-playing .plyr--audio .plyr__controls {
    width: 100%;
    padding: 8px;
    border-radius: 16px;
    background: transparent;
}

.bny-media-player--video .plyr {
    overflow: hidden;
    box-shadow: 0 18px 45px rgba(31, 47, 71, .14);
}

.bny-media-player--video .plyr__video-wrapper {
    background: #15243a;
}

.bny-media-player .plyr__control,
.bny-audio-now-playing .plyr__control {
    border-radius: 11px;
}

.bny-media-player .plyr__menu__container,
.bny-audio-now-playing .plyr__menu__container {
    direction: rtl;
    text-align: right;
    border-radius: 16px;
    box-shadow: 0 18px 50px rgba(31, 47, 71, .18);
}

.bny-media-player .plyr__tooltip,
.bny-audio-now-playing .plyr__tooltip {
    font-family: inherit;
}

.bny-media-player audio,
.bny-media-player video,
.bny-audio-now-playing audio {
    width: 100%;
    max-width: 100%;
}

.bny-audio-now-playing > .plyr {
    min-width: 0;
}

@media (max-width: 640px) {
    .bny-media-player--audio .plyr,
    .bny-audio-now-playing .plyr--audio {
        padding: 5px;
        border-radius: 16px;
    }

    .bny-media-player--audio .plyr__controls,
    .bny-audio-now-playing .plyr--audio .plyr__controls {
        padding: 6px 4px;
        gap: 2px;
    }

    .bny-media-player .plyr__volume,
    .bny-audio-now-playing .plyr__volume {
        min-width: 34px;
        width: auto;
    }
}


/* Plyr fullscreen hardening and Persian settings direction — Bunny Core 1.4.11 */
.bny-media-player .plyr__menu__container,
.bny-audio-now-playing .plyr__menu__container,
.bny-media-player .plyr__menu__container [role="menu"],
.bny-audio-now-playing .plyr__menu__container [role="menu"] {
    direction: rtl !important;
    text-align: right !important;
}

.bny-media-player .plyr__menu__container button,
.bny-audio-now-playing .plyr__menu__container button {
    direction: rtl;
    text-align: right;
}

.bny-media-player .plyr__menu__container [data-plyr="speed"],
.bny-audio-now-playing .plyr__menu__container [data-plyr="speed"],
.bny-media-player .plyr__menu__value,
.bny-audio-now-playing .plyr__menu__value {
    unicode-bidi: isolate;
}

html.bny-plyr-fullscreen-open,
body.bny-plyr-fullscreen-open {
    overflow: hidden !important;
    overscroll-behavior: none;
}

.bny-media-player--video.bny-plyr-css-fullscreen,
.bny-media-player--video:fullscreen,
.bny-media-player--video:-webkit-full-screen,
.bny-media-player--video.bny-plyr-fullscreen-active {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483646 !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #000 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
}

.bny-media-player--video.bny-plyr-fullscreen-active .plyr,
.bny-media-player--video.bny-plyr-css-fullscreen .plyr,
.bny-media-player--video:fullscreen .plyr,
.bny-media-player--video:-webkit-full-screen .plyr {
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    border-radius: 0 !important;
    background: #000 !important;
}

.bny-media-player--video.bny-plyr-fullscreen-active .plyr__video-wrapper,
.bny-media-player--video.bny-plyr-css-fullscreen .plyr__video-wrapper,
.bny-media-player--video:fullscreen .plyr__video-wrapper,
.bny-media-player--video:-webkit-full-screen .plyr__video-wrapper {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #000 !important;
}

.bny-media-player--video.bny-plyr-fullscreen-active video,
.bny-media-player--video.bny-plyr-css-fullscreen video,
.bny-media-player--video:fullscreen video,
.bny-media-player--video:-webkit-full-screen video {
    width: 100% !important;
    height: 100% !important;
    max-height: 100% !important;
    object-fit: contain !important;
}

.bny-media-player--video.bny-plyr-fullscreen-active .plyr__controls,
.bny-media-player--video.bny-plyr-css-fullscreen .plyr__controls {
    padding-bottom: max(12px, env(safe-area-inset-bottom)) !important;
}


/* Plyr settings menu BiDi/layout fix — Bunny Core 1.4.12 */
.bny-media-player .plyr__menu__container,
.bny-audio-now-playing .plyr__menu__container {
    min-width: 220px;
    max-width: min(92vw, 320px);
    box-sizing: border-box;
    overflow: visible;
}

.bny-media-player .plyr__menu__container [role="menu"],
.bny-audio-now-playing .plyr__menu__container [role="menu"] {
    width: 100%;
    box-sizing: border-box;
}

.bny-media-player .plyr__menu__container button,
.bny-audio-now-playing .plyr__menu__container button {
    width: 100%;
    min-width: 0;
    min-height: 40px;
    box-sizing: border-box;
    white-space: nowrap;
}

.bny-media-player .plyr__menu__container .plyr__control--forward,
.bny-audio-now-playing .plyr__menu__container .plyr__control--forward,
.bny-media-player .plyr__menu__container .bny-plyr-menu-forward,
.bny-audio-now-playing .plyr__menu__container .bny-plyr-menu-forward {
    position: relative !important;
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    direction: rtl !important;
    text-align: right !important;
    padding-inline-start: 12px !important;
    padding-inline-end: 36px !important;
}

.bny-media-player .plyr__menu__container .plyr__control--forward::after,
.bny-audio-now-playing .plyr__menu__container .plyr__control--forward::after,
.bny-media-player .plyr__menu__container .bny-plyr-menu-forward::after,
.bny-audio-now-playing .plyr__menu__container .bny-plyr-menu-forward::after {
    position: absolute !important;
    inset-inline-end: 12px !important;
    inset-inline-start: auto !important;
    margin: 0 !important;
}

.bny-media-player .plyr__menu__container .plyr__menu__value,
.bny-audio-now-playing .plyr__menu__container .plyr__menu__value,
.bny-media-player .plyr__menu__container .bny-plyr-menu-value,
.bny-audio-now-playing .plyr__menu__container .bny-plyr-menu-value {
    display: inline-flex !important;
    align-items: center !important;
    flex: 0 0 auto !important;
    margin: 0 !important;
    padding: 0 !important;
    direction: ltr !important;
    unicode-bidi: isolate !important;
    text-align: left !important;
    white-space: nowrap !important;
    line-height: 1 !important;
}

.bny-media-player .plyr__menu__container .plyr__control--back,
.bny-audio-now-playing .plyr__menu__container .plyr__control--back,
.bny-media-player .plyr__menu__container .bny-plyr-menu-back,
.bny-audio-now-playing .plyr__menu__container .bny-plyr-menu-back {
    position: relative !important;
    direction: rtl !important;
    text-align: right !important;
    padding-inline-start: 36px !important;
    padding-inline-end: 12px !important;
}

.bny-media-player .plyr__menu__container .plyr__control--back::before,
.bny-audio-now-playing .plyr__menu__container .plyr__control--back::before,
.bny-media-player .plyr__menu__container .bny-plyr-menu-back::before,
.bny-audio-now-playing .plyr__menu__container .bny-plyr-menu-back::before {
    position: absolute !important;
    inset-inline-start: 12px !important;
    inset-inline-end: auto !important;
    margin: 0 !important;
}

@media (max-width: 480px) {
    .bny-media-player .plyr__menu__container,
    .bny-audio-now-playing .plyr__menu__container {
        min-width: 210px;
        max-width: calc(100vw - 24px);
    }
}


/* Bunny Core 1.4.13 — Plyr seek direction and fullscreen portal hardening */
.bny-media-player .plyr__controls,
.bny-audio-now-playing .plyr__controls,
.bny-media-player .plyr__progress,
.bny-audio-now-playing .plyr__progress,
.bny-media-player .plyr__progress__container,
.bny-audio-now-playing .plyr__progress__container,
.bny-media-player .plyr__time,
.bny-audio-now-playing .plyr__time {
    direction: ltr !important;
    text-align: left !important;
}

.bny-media-player .plyr__controls,
.bny-audio-now-playing .plyr__controls {
    flex-direction: row !important;
}

.bny-media-player .plyr input[data-plyr="seek"],
.bny-audio-now-playing .plyr input[data-plyr="seek"],
.bny-media-player .plyr input[data-plyr="volume"],
.bny-audio-now-playing .plyr input[data-plyr="volume"],
.bny-media-player .plyr__progress input[type="range"],
.bny-audio-now-playing .plyr__progress input[type="range"],
.bny-media-player .plyr__volume input[type="range"],
.bny-audio-now-playing .plyr__volume input[type="range"] {
    direction: ltr !important;
    unicode-bidi: isolate !important;
}

.bny-media-player .plyr__progress input[type="range"]::-webkit-slider-runnable-track,
.bny-audio-now-playing .plyr__progress input[type="range"]::-webkit-slider-runnable-track,
.bny-media-player .plyr__volume input[type="range"]::-webkit-slider-runnable-track,
.bny-audio-now-playing .plyr__volume input[type="range"]::-webkit-slider-runnable-track {
    direction: ltr !important;
}

.bny-plyr-css-placeholder {
    display: block;
    width: 100%;
    border-radius: 20px;
    background: transparent;
    pointer-events: none;
}

.bny-media-player--video.bny-plyr-fullscreen-active,
.bny-media-player--video.bny-plyr-css-fullscreen,
.bny-media-player--video:fullscreen,
.bny-media-player--video:-webkit-full-screen {
    transform: none !important;
    contain: none !important;
}

.bny-media-player--video.bny-plyr-fullscreen-active .plyr,
.bny-media-player--video.bny-plyr-css-fullscreen .plyr,
.bny-media-player--video:fullscreen .plyr,
.bny-media-player--video:-webkit-full-screen .plyr,
.bny-media-player--video.bny-plyr-fullscreen-active .plyr__video-wrapper,
.bny-media-player--video.bny-plyr-css-fullscreen .plyr__video-wrapper,
.bny-media-player--video:fullscreen .plyr__video-wrapper,
.bny-media-player--video:-webkit-full-screen .plyr__video-wrapper {
    min-width: 100% !important;
    min-height: 100% !important;
}


/* Bunny Core 1.4.14 — viewport-sized fullscreen on every Plyr target */
:is(
    .bny-media-player--video.bny-plyr-fullscreen-active,
    .bny-media-player--video.bny-plyr-css-fullscreen,
    .bny-media-player--video:fullscreen,
    .bny-media-player--video:-webkit-full-screen,
    .bny-media-player--video .plyr.plyr--fullscreen-active,
    .bny-media-player--video .plyr:fullscreen,
    .bny-media-player--video .plyr:-webkit-full-screen
) {
    box-sizing: border-box !important;
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    min-width: 100vw !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    transform: none !important;
    aspect-ratio: auto !important;
    background: #000 !important;
    overflow: hidden !important;
}

:is(
    .bny-media-player--video.bny-plyr-fullscreen-active,
    .bny-media-player--video.bny-plyr-css-fullscreen,
    .bny-media-player--video:fullscreen,
    .bny-media-player--video:-webkit-full-screen,
    .bny-media-player--video .plyr.plyr--fullscreen-active,
    .bny-media-player--video .plyr:fullscreen,
    .bny-media-player--video .plyr:-webkit-full-screen
) .plyr__video-wrapper {
    box-sizing: border-box !important;
    position: absolute !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    min-width: 100vw !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    aspect-ratio: auto !important;
    background: #000 !important;
    overflow: hidden !important;
}

:is(
    .bny-media-player--video.bny-plyr-fullscreen-active,
    .bny-media-player--video.bny-plyr-css-fullscreen,
    .bny-media-player--video:fullscreen,
    .bny-media-player--video:-webkit-full-screen,
    .bny-media-player--video .plyr.plyr--fullscreen-active,
    .bny-media-player--video .plyr:fullscreen,
    .bny-media-player--video .plyr:-webkit-full-screen
) .plyr__video-wrapper::before {
    display: none !important;
    padding: 0 !important;
}

:is(
    .bny-media-player--video.bny-plyr-fullscreen-active,
    .bny-media-player--video.bny-plyr-css-fullscreen,
    .bny-media-player--video:fullscreen,
    .bny-media-player--video:-webkit-full-screen,
    .bny-media-player--video .plyr.plyr--fullscreen-active,
    .bny-media-player--video .plyr:fullscreen,
    .bny-media-player--video .plyr:-webkit-full-screen
) video,
video.bny-plyr-video-fullscreen,
video[data-bny-plyr]:fullscreen,
video[data-bny-plyr]:-webkit-full-screen {
    box-sizing: border-box !important;
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
    width: 100vw !important;
    height: 100vh !important;
    height: 100dvh !important;
    min-width: 100vw !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    transform: none !important;
    object-fit: contain !important;
    object-position: center center !important;
    background: #000 !important;
}

:is(
    .bny-media-player--video.bny-plyr-fullscreen-active,
    .bny-media-player--video.bny-plyr-css-fullscreen,
    .bny-media-player--video:fullscreen,
    .bny-media-player--video:-webkit-full-screen,
    .bny-media-player--video .plyr.plyr--fullscreen-active,
    .bny-media-player--video .plyr:fullscreen,
    .bny-media-player--video .plyr:-webkit-full-screen
) .plyr__poster {
    position: absolute !important;
    inset: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-size: contain !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
}

:is(
    .bny-media-player--video.bny-plyr-fullscreen-active,
    .bny-media-player--video.bny-plyr-css-fullscreen,
    .bny-media-player--video:fullscreen,
    .bny-media-player--video:-webkit-full-screen,
    .bny-media-player--video .plyr.plyr--fullscreen-active,
    .bny-media-player--video .plyr:fullscreen,
    .bny-media-player--video .plyr:-webkit-full-screen
) .plyr__controls {
    position: absolute !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    width: 100% !important;
    max-width: none !important;
    z-index: 5 !important;
    padding-bottom: max(12px, env(safe-area-inset-bottom)) !important;
}


/* ----------------------------------------------------------------------
 * Bunny Core 1.4.15 — native dark-mode dashboard coverage
 * Converts dashboard, current-week, empty/login states and utility cards
 * to dark surfaces when the Bunny theme enables dark mode.
 * ------------------------------------------------------------------- */
html[data-bunny-theme="dark"]{
    --bny-ink:#eef5ff;
    --bny-muted:#aebdce;
    --bny-blue:#1c2f43;
    --bny-pink:#2a2232;
    --bny-mint:#1c3029;
    --bny-purple:#241f34;
    --bny-yellow:#302914;
    --bny-white:#182538;
    --bny-shadow:0 18px 46px rgba(0,0,0,.28);
}

html[data-bunny-theme="dark"] :is(
    .bny-learning-dashboard,
    .bny-program-grid,
    .bny-today-grid,
    .bny-media-player,
    .bny-media-player--audio
){
    color: var(--bny-ink);
}

html[data-bunny-theme="dark"] :is(
    .bny-dashboard-hero,
    .bny-current-week-card,
    .bny-lock,
    .bny-dashboard-login,
    .bny-empty,
    .bny-demo-placeholder,
    .bny-file-download,
    .bny-program-progress,
    .bny-program-progress-panel
){
    background:#182538 !important;
    color:#eef5ff !important;
    border-color:#34475f !important;
    box-shadow:0 18px 46px rgba(0,0,0,.28) !important;
}

html[data-bunny-theme="dark"] .bny-dashboard-hero{
    background:
      radial-gradient(circle at 12% 12%,rgba(183,101,134,.18),transparent 28%),
      radial-gradient(circle at 88% 88%,rgba(80,132,174,.18),transparent 32%),
      linear-gradient(135deg,#182a3d,#231c29 58%,#162333) !important;
}

html[data-bunny-theme="dark"] .bny-current-week-card__head,
html[data-bunny-theme="dark"] .bny-receipt-preview-meta,
html[data-bunny-theme="dark"] .bny-file-download,
html[data-bunny-theme="dark"] .bny-program-progress,
html[data-bunny-theme="dark"] .bny-program-progress-panel{
    border-color:#34475f !important;
}

html[data-bunny-theme="dark"] :is(
    .bny-kicker,
    .bny-dashboard-hero h1,
    .bny-current-week-card h2,
    .bny-current-week-card h3,
    .bny-section-title h3,
    .bny-progress-ring strong,
    .bny-lock h2,
    .bny-dashboard-login h2,
    .bny-empty h2,
    .bny-demo-placeholder h2,
    .bny-file-download strong,
    .bny-program-progress__copy strong
){
    color:#f4f8ff !important;
    opacity:1 !important;
}

html[data-bunny-theme="dark"] :is(
    .bny-dashboard-hero p,
    .bny-current-week-card p,
    .bny-section-title p,
    .bny-progress-ring span,
    .bny-program-card p,
    .bny-file-download p,
    .bny-lock p,
    .bny-dashboard-login p,
    .bny-empty p,
    .bny-demo-placeholder p,
    .bny-program-progress small,
    .bny-program-progress-panel small,
    .bny-today-item__session,
    .bny-program-card__meta span,
    .bny-content-card__meta span
){
    color:#b8c7d7 !important;
    opacity:1 !important;
}

html[data-bunny-theme="dark"] .bny-progress-ring{
    background: conic-gradient(#b76586 calc(var(--progress)*1%), #24384d 0) !important;
}
html[data-bunny-theme="dark"] .bny-progress-ring:before{
    background:#182538 !important;
}
html[data-bunny-theme="dark"] .bny-linear-progress,
html[data-bunny-theme="dark"] .bny-program-progress-panel .bny-linear-progress{
    background:#24384d !important;
}
html[data-bunny-theme="dark"] .bny-linear-progress i,
html[data-bunny-theme="dark"] .bny-program-progress-panel .bny-linear-progress i{
    background:linear-gradient(90deg,#5fa6d6,#84c7b0) !important;
}
html[data-bunny-theme="dark"] .bny-program-progress.is-route-locked .bny-linear-progress i{
    background:#5d6d7d !important;
}

html[data-bunny-theme="dark"] .bny-action--primary{
    background:linear-gradient(135deg,#416d91,#9d5877) !important;
    color:#fff !important;
}
html[data-bunny-theme="dark"] .bny-action--soft{
    background:#1b2d43 !important;
    color:#dce9f7 !important;
    border:1px solid #40556f !important;
}
html[data-bunny-theme="dark"] .bny-action--disabled{
    background:#23364a !important;
    color:#8fa1b5 !important;
    border:1px solid #3c4f63 !important;
}

html[data-bunny-theme="dark"] .bny-lock > span,
html[data-bunny-theme="dark"] .bny-dashboard-login > span,
html[data-bunny-theme="dark"] .bny-empty > span,
html[data-bunny-theme="dark"] .bny-demo-placeholder > span,
html[data-bunny-theme="dark"] .bny-file-download > span{
    background:linear-gradient(180deg,#1c3047,#241d2a) !important;
    color:#d9b9ee !important;
}

html[data-bunny-theme="dark"] .bny-file-download{
    background:#142033 !important;
}
html[data-bunny-theme="dark"] .bny-media-player--audio{
    background:linear-gradient(135deg,#142033,#221c28) !important;
}


/* ----------------------------------------------------------------------
 * Bunny Core 1.4.16 — complete dark mode for locked routes and audio levels
 * ------------------------------------------------------------------- */
html[data-bunny-theme="dark"] .bny-program-card.is-age-locked{
    background:#182538 !important;
    border-color:#34475f !important;
}
html[data-bunny-theme="dark"] .bny-program-card.is-age-locked .bny-program-card__visual,
html[data-bunny-theme="dark"] .bny-program-card.is-age-locked .bny-program-card__body{
    opacity:.72 !important;
    filter:saturate(.72) !important;
}
html[data-bunny-theme="dark"] .bny-program-card__age-lock{
    background:rgba(20,32,51,.96) !important;
    color:#eef5ff !important;
    border-color:#40556f !important;
    box-shadow:0 18px 44px rgba(0,0,0,.38) !important;
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
}
html[data-bunny-theme="dark"] .bny-program-card__age-lock>span{
    background:#2b2137 !important;
    color:#d8b8ef !important;
    border:1px solid #504163 !important;
}
html[data-bunny-theme="dark"] .bny-program-card__age-lock strong{
    color:#f4f8ff !important;
}
html[data-bunny-theme="dark"] .bny-program-card__age-lock small{
    color:#b8c7d7 !important;
}

html[data-bunny-theme="dark"] :is(.bny-audio-week-player,.bny-audio-level-player){
    background:#182538 !important;
    color:#eef5ff !important;
    border-color:#34475f !important;
    box-shadow:0 18px 44px rgba(0,0,0,.28) !important;
}
html[data-bunny-theme="dark"] .bny-audio-week-player__top{
    border-color:#34475f !important;
}
html[data-bunny-theme="dark"] .bny-audio-week-player__icon{
    background:linear-gradient(145deg,#1b3047,#2b2134) !important;
    color:#d9b9ee !important;
}
html[data-bunny-theme="dark"] .bny-audio-week-player__intro :is(h1,h2,h3,strong){
    color:#f4f8ff !important;
}
html[data-bunny-theme="dark"] .bny-audio-week-player__intro p{
    color:#b8c7d7 !important;
}
html[data-bunny-theme="dark"] .bny-audio-track{
    background:#142033 !important;
    color:#eef5ff !important;
    border-color:#304158 !important;
    box-shadow:none !important;
}
html[data-bunny-theme="dark"] .bny-audio-track:hover{
    background:#182a3e !important;
    border-color:#49627f !important;
    box-shadow:0 10px 28px rgba(0,0,0,.26) !important;
}
html[data-bunny-theme="dark"] .bny-audio-track.is-active{
    background:linear-gradient(135deg,#1b2f44,#2a2133) !important;
    border-color:#8b6bb2 !important;
    box-shadow:0 12px 30px rgba(0,0,0,.3) !important;
}
html[data-bunny-theme="dark"] .bny-audio-track.is-missing{
    background:#172231 !important;
    opacity:.82 !important;
}
html[data-bunny-theme="dark"] .bny-audio-track__button{
    color:#eef5ff !important;
}
html[data-bunny-theme="dark"] .bny-audio-track__number{
    background:#20344a !important;
    color:#cfe3f4 !important;
    border:1px solid #3a526b !important;
}
html[data-bunny-theme="dark"] .bny-audio-track__play{
    background:#332333 !important;
    color:#e3b9d2 !important;
    border:1px solid #533b50 !important;
}
html[data-bunny-theme="dark"] .bny-audio-track.is-active .bny-audio-track__play{
    background:#8b5d93 !important;
    color:#fff !important;
}
html[data-bunny-theme="dark"] .bny-audio-track__copy strong{
    color:#f4f8ff !important;
}
html[data-bunny-theme="dark"] .bny-audio-track__copy small,
html[data-bunny-theme="dark"] .bny-audio-track__status{
    color:#aebdce !important;
}

html[data-bunny-theme="dark"] .program-level-block{
    background:#182538 !important;
    color:#eef5ff !important;
    border-color:#34475f !important;
    box-shadow:0 16px 42px rgba(0,0,0,.26) !important;
}
html[data-bunny-theme="dark"] .program-level-block__surface{
    background:#182538 !important;
    color:#eef5ff !important;
}
html[data-bunny-theme="dark"] .program-level-block :is(h1,h2,h3,h4,strong){
    color:#f4f8ff !important;
}
html[data-bunny-theme="dark"] .program-level-block :is(p,small,.program-level-description){
    color:#b8c7d7 !important;
}
html[data-bunny-theme="dark"] .program-level-block--audio>header,
html[data-bunny-theme="dark"] .program-level-block__surface>header{
    border-color:#34475f !important;
}
html[data-bunny-theme="dark"] .program-level-block__facts b{
    background:#1b2d43 !important;
    color:#dce9f7 !important;
    border:1px solid #40556f !important;
    box-shadow:none !important;
}
html[data-bunny-theme="dark"] .program-level-block__facts .bunny-icon{
    color:#d9b9ee !important;
}
html[data-bunny-theme="dark"] .bny-level-collapse-toggle{
    background:#1b2d43 !important;
    color:#dce9f7 !important;
    border-color:#40556f !important;
    box-shadow:none !important;
}
html[data-bunny-theme="dark"] .bny-level-collapse-toggle:hover,
html[data-bunny-theme="dark"] .bny-level-collapse-toggle[aria-expanded="true"]{
    background:#2a2134 !important;
    color:#eadcf8 !important;
    border-color:#705887 !important;
}

html[data-bunny-theme="dark"] .program-level-block.is-soft-locked{
    border-color:#44566e !important;
    box-shadow:0 18px 46px rgba(0,0,0,.3) !important;
}
html[data-bunny-theme="dark"] .program-level-block.is-soft-locked .program-level-block__surface{
    background:linear-gradient(135deg,#17263a,#241f2e) !important;
}
html[data-bunny-theme="dark"] .bny-level-lock-overlay{
    background:linear-gradient(135deg,rgba(12,21,34,.92),rgba(37,25,34,.94)) !important;
}
html[data-bunny-theme="dark"] .bny-level-lock-overlay__card{
    background:rgba(24,37,56,.97) !important;
    color:#eef5ff !important;
    border-color:#40556f !important;
    box-shadow:0 24px 65px rgba(0,0,0,.42) !important;
}
html[data-bunny-theme="dark"] .bny-level-lock-overlay__card :is(h1,h2,h3,h4,strong){
    color:#f4f8ff !important;
}
html[data-bunny-theme="dark"] .bny-level-lock-overlay__card :is(p,small){
    color:#b8c7d7 !important;
}
html[data-bunny-theme="dark"] .bny-level-lock-overlay__icon{
    background:linear-gradient(145deg,#1b3047,#35212f) !important;
    color:#d9b9ee !important;
    border:1px solid #4c4962 !important;
}
html[data-bunny-theme="dark"] .bny-level-soft-lock{
    background:linear-gradient(135deg,#17263a,#241f2e) !important;
    color:#eef5ff !important;
    border-color:#45566e !important;
}
html[data-bunny-theme="dark"] .bny-level-soft-lock__copy h4{
    color:#f4f8ff !important;
}
html[data-bunny-theme="dark"] .bny-level-soft-lock__copy p{
    color:#b8c7d7 !important;
}
html[data-bunny-theme="dark"] .bny-level-soft-lock__copy small{
    color:#e2a9c2 !important;
}
html[data-bunny-theme="dark"] .bny-level-soft-lock__icon{
    background:#1b3047 !important;
    color:#d9b9ee !important;
    border:1px solid #40556f !important;
}

html[data-bunny-theme="dark"] :is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact{
    background:linear-gradient(135deg,#17263a,#241f2e) !important;
    border-color:#40556f !important;
    box-shadow:0 14px 38px rgba(0,0,0,.28) !important;
}
html[data-bunny-theme="dark"] :is(.program-level-list--audio,.program-level-list--mixed) .program-level-block.is-soft-locked.is-level-locked-compact .program-level-block__surface{
    background:linear-gradient(135deg,#17263a,#241f2e) !important;
    color:#eef5ff !important;
}
html[data-bunny-theme="dark"] .bny-locked-level-badge{
    background:#2b2134 !important;
    color:#e5c9f4 !important;
    border-color:#5e486e !important;
}
html[data-bunny-theme="dark"] .bny-level-card-header-status{color:#dce9f7!important}
html[data-bunny-theme="dark"] .bny-locked-level-next-note{
    color:#d8c1e8 !important;
    border-color:#5e486e !important;
}

/* ----------------------------------------------------------------------
 * Bunny Core 1.4.18 — now-playing dark mode and native-audio fallback
 * ------------------------------------------------------------------- */
html[data-bunny-theme="dark"] .bny-audio-now-playing{
  background:linear-gradient(135deg,#142033,#241d2a)!important;
  color:#eef5ff!important;
  border:1px solid #34475f!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.02)!important;
}
html[data-bunny-theme="dark"] .bny-audio-now-playing small{
  color:#aebdce!important;
  opacity:1!important;
}
html[data-bunny-theme="dark"] .bny-audio-now-playing strong{
  color:#f4f8ff!important;
  opacity:1!important;
}
html[data-bunny-theme="dark"] .bny-audio-now-playing audio{
  color-scheme:dark!important;
  background:#182538!important;
  border-radius:999px!important;
}
html[data-bunny-theme="dark"] .bny-audio-now-playing>.plyr,
html[data-bunny-theme="dark"] .bny-audio-now-playing .plyr--audio,
html[data-bunny-theme="dark"] .bny-audio-now-playing .plyr__controls{
  background:#182538!important;
  color:#eef5ff!important;
  border-color:#34475f!important;
}

/* Keep playlist copy and the player within their card at every viewport. */
.bny-audio-now-playing,
.bny-audio-now-playing>*{
  min-width:0;
  max-width:100%;
  box-sizing:border-box;
}
.bny-audio-now-playing audio,
.bny-audio-now-playing .plyr{
  min-width:0!important;
  max-width:100%!important;
}


/* ----------------------------------------------------------------------
 * Bunny Core 1.4.20 — contrast-safe level UI and review badges
 * Native fallback so Core remains readable even with another theme.
 * ------------------------------------------------------------------- */
html[data-bunny-theme="dark"] .program-level-list--audio .program-level-block{
    box-shadow:none!important;
    border-color:#40556f!important;
}
html[data-bunny-theme="dark"] .program-level-list--audio .program-level-block__surface>header{
    box-shadow:none!important;
    text-shadow:none!important;
}
html[data-bunny-theme="dark"] .program-level-list--audio .program-level-block__facts b{
    background:#1b2d43!important;
    color:#eef5ff!important;
    border:1px solid #40556f!important;
    box-shadow:none!important;
    opacity:1!important;
}
html[data-bunny-theme="dark"] .program-level-list--audio .program-level-block__facts .bunny-icon{
    color:#d8b8ef!important;
    opacity:1!important;
}
html[data-bunny-theme="dark"] .bny-review-badge,
html[data-bunny-theme="dark"] .bny-review-badge--new{
    background:#255844!important;
    color:#d9f4e7!important;
    border:1px solid #3d8064!important;
    box-shadow:none!important;
    opacity:1!important;
}
html[data-bunny-theme="dark"] .bny-review-badge--level-review,
html[data-bunny-theme="dark"] .bny-review-badge--spiral{
    background:#4a391c!important;
    color:#ffe3a0!important;
    border:1px solid #755d2d!important;
}


/* Bunny Core 1.4.21 — sequential age locks and mobile game scrolling */
.bny-program-card__age-lock small{
    max-width:28ch;
    line-height:1.85;
    text-align:center;
}
.bny-program-card.is-age-locked .bny-action--disabled{
    white-space:normal!important;
    text-align:center;
    line-height:1.65;
}
.bny-html-game{
    width:100%;
    max-width:100%;
    min-width:0;
    overflow:auto;
    overscroll-behavior:auto;
    touch-action:pan-x pan-y;
    -webkit-overflow-scrolling:touch;
}
.bny-html-game iframe{
    display:block;
    max-width:100%;
    touch-action:auto;
}
@media(max-width:720px){
    .bny-html-game{border-radius:18px;overflow:auto}
    .bny-html-game__toolbar{position:relative;z-index:2}
    .bny-html-game iframe{width:100%;min-width:0}
}


/* ----------------------------------------------------------------------
 * Bunny Core 1.4.22 — current listening dashboard dark facts
 * Native fallback for themes that do not provide Bunny late overrides.
 * ------------------------------------------------------------------- */
html[data-bunny-theme="dark"] .bny-audio-dashboard-summary span{
    min-height:40px;
    background:#1b2d43!important;
    color:#eef5ff!important;
    border:1px solid #40556f!important;
    box-shadow:none!important;
    opacity:1!important;
}
html[data-bunny-theme="dark"] .bny-audio-dashboard-summary span :is(b,strong,small){
    color:#eef5ff!important;
    opacity:1!important;
}
html[data-bunny-theme="dark"] .bny-audio-dashboard-summary .bunny-icon{
    color:#d8b8ef!important;
    opacity:1!important;
}
@media(max-width:720px){
    .bny-audio-dashboard-summary{
        width:100%;
        display:grid;
        grid-template-columns:1fr;
    }
    .bny-audio-dashboard-summary span{
        width:100%;
        justify-content:flex-start;
        box-sizing:border-box;
    }
}


/* Bunny Core 1.4.28 — RTL semantic progress bars (media seek stays LTR) */
.bny-linear-progress {
  direction: rtl !important;
}
.bny-linear-progress > i,
.bny-linear-progress > span {
  display: block;
  margin-right: 0;
  margin-left: auto;
  transform-origin: right center;
}
.bny-progress-ring {
  direction: ltr;
}


/* Bunny Core 1.4.29 — shared compact soft-lock styling for mixed and audio levels */

/* Bunny Core 1.4.30 — today suggestion dark contrast and flat placeholder icon */
.bny-content-placeholder .bunny-icon [opacity="0.2"]{
  display:none!important;
}
.bny-content-placeholder .bunny-icon{
  --ph-secondary:transparent!important;
}

html[data-bunny-theme="dark"] .bny-today-plan{
  color:#eef5ff!important;
}
html[data-bunny-theme="dark"] .bny-section-title h3{
  color:#f7fbff!important;
}
html[data-bunny-theme="dark"] .bny-section-title p{
  color:#c0cede!important;
}
html[data-bunny-theme="dark"] .bny-section-title>span{
  background:#203249!important;
  color:#d9b9ee!important;
  border:1px solid #40556f!important;
  box-shadow:none!important;
}
html[data-bunny-theme="dark"] .bny-today-item__session{
  color:#d9e5f2!important;
}
html[data-bunny-theme="dark"] .bny-today-item>.bny-content-card,
html[data-bunny-theme="dark"] .bny-content-card--compact{
  background:#182538!important;
  color:#eef5ff!important;
  border-color:#40556f!important;
  box-shadow:none!important;
}
html[data-bunny-theme="dark"] .bny-today-item>.bny-content-card:hover,
html[data-bunny-theme="dark"] .bny-content-card--compact:hover{
  border-color:#58718f!important;
  box-shadow:none!important;
}
html[data-bunny-theme="dark"] .bny-today-item .bny-content-card__media,
html[data-bunny-theme="dark"] .bny-content-card--compact .bny-content-card__media{
  background:linear-gradient(145deg,#202a42,#252039)!important;
  border-bottom:1px solid #40556f!important;
}
html[data-bunny-theme="dark"] .bny-today-item .bny-content-placeholder .bunny-icon,
html[data-bunny-theme="dark"] .bny-content-card--compact .bny-content-placeholder .bunny-icon{
  color:#d3a5df!important;
  --ph-secondary:transparent!important;
}
html[data-bunny-theme="dark"] .bny-today-item .bny-content-card__type,
html[data-bunny-theme="dark"] .bny-content-card--compact .bny-content-card__type{
  background:#14243a!important;
  color:#dcecff!important;
  border:1px solid #45617e!important;
}
html[data-bunny-theme="dark"] .bny-today-item .bny-content-card__body,
html[data-bunny-theme="dark"] .bny-content-card--compact .bny-content-card__body{
  background:#182538!important;
}
html[data-bunny-theme="dark"] .bny-today-item .bny-content-card__body h3 a,
html[data-bunny-theme="dark"] .bny-content-card--compact .bny-content-card__body h3 a{
  color:#f7fbff!important;
}
html[data-bunny-theme="dark"] .bny-today-item .bny-content-card__meta,
html[data-bunny-theme="dark"] .bny-content-card--compact .bny-content-card__meta,
html[data-bunny-theme="dark"] .bny-today-item .bny-content-card__meta span,
html[data-bunny-theme="dark"] .bny-content-card--compact .bny-content-card__meta span{
  color:#c0cede!important;
}
html[data-bunny-theme="dark"] .bny-today-item .bny-content-card__note,
html[data-bunny-theme="dark"] .bny-content-card--compact .bny-content-card__note{
  background:#203249!important;
  color:#eef5ff!important;
  border:1px solid #40556f!important;
  box-shadow:none!important;
  opacity:1!important;
}


/* Bunny Core 1.4.31 — compact weekly featured badge and equal today-card heights */
.bny-content-card__badges{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:6px;
  min-height:22px;
  margin:0 0 7px;
}
.bny-content-card__badges .bny-review-badge{
  min-height:22px;
  padding:4px 8px;
  line-height:1;
  white-space:nowrap;
}
.bny-review-badge--week-featured{
  background:#f3e9fb;
  color:#6f4f91;
}
.bny-today-grid .bny-today-item,
.bny-today-grid .bny-content-card{
  height:100%;
}
.bny-today-grid .bny-content-card{
  display:flex;
  flex-direction:column;
}
.bny-today-grid .bny-content-card__body{
  flex:1 1 auto;
}
html[data-bunny-theme="dark"] .bny-review-badge--week-featured{
  background:#3b2a4d!important;
  color:#eadcf8!important;
  border:1px solid #6b4d86!important;
}
html[data-bunny-theme="dark"] .bny-today-plan .bny-content-card__media,
html[data-bunny-theme="dark"] .bny-content-card--compact .bny-content-card__media{
  background:#202a42!important;
}
html[data-bunny-theme="dark"] .bny-today-plan .bny-content-placeholder,
html[data-bunny-theme="dark"] .bny-content-card--compact .bny-content-placeholder{
  background:transparent!important;
  box-shadow:none!important;
}

/* Bunny Core 1.4.32 — repair today-card sizing and containment */
.bny-current-week-card{
  overflow:visible;
  box-sizing:border-box;
}
.bny-today-plan{
  min-width:0;
  padding-bottom:0;
}
.bny-today-grid{
  align-items:stretch;
  grid-auto-rows:1fr;
  margin-bottom:0;
}
.bny-today-grid .bny-today-item{
  display:grid;
  grid-template-rows:auto minmax(0,1fr);
  height:auto;
  min-width:0;
  min-height:0;
}
.bny-today-grid .bny-today-item__session{
  align-self:start;
  min-height:20px;
  margin:0 0 8px;
}
.bny-today-grid .bny-today-item>.bny-content-card,
.bny-today-grid .bny-content-card--compact{
  display:grid;
  grid-template-rows:105px minmax(0,1fr);
  align-self:stretch;
  width:100%;
  height:auto;
  min-width:0;
  min-height:0;
  overflow:hidden;
  box-sizing:border-box;
}
.bny-today-grid .bny-content-card__media,
.bny-today-grid .bny-content-card--compact .bny-content-card__media{
  width:100%;
  height:105px;
  min-height:105px;
  overflow:hidden;
  box-sizing:border-box;
}
.bny-today-grid .bny-content-card__body,
.bny-today-grid .bny-content-card--compact .bny-content-card__body{
  display:flex;
  flex-direction:column;
  align-items:stretch;
  justify-content:flex-start;
  gap:0;
  min-width:0;
  min-height:0;
  padding:12px 14px 14px;
  overflow:visible;
  box-sizing:border-box;
}
.bny-today-grid .bny-content-card__badges{
  flex:0 0 auto;
  flex-wrap:nowrap;
  min-width:0;
  min-height:22px;
  margin:0 0 7px;
  overflow:visible;
}
.bny-today-grid .bny-content-card__badges .bny-review-badge{
  max-width:100%;
  box-sizing:border-box;
}
.bny-today-grid .bny-content-card__body h3{
  flex:0 0 auto;
  min-width:0;
  margin:4px 0 0;
  line-height:1.55;
}
.bny-today-grid .bny-content-card__meta{
  flex:0 0 auto;
  min-width:0;
  margin-top:8px;
}
.bny-today-grid .bny-content-card__note{
  flex:0 0 auto;
}
@media(max-width:520px){
  .bny-today-grid .bny-content-card__badges{flex-wrap:wrap}
}


/* Bunny Core 1.4.33 — card surface ownership in dark mode */
html[data-bunny-theme="dark"] .bny-learning-dashboard{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
html[data-bunny-theme="dark"] :is(
  .program-level-block__surface,
  .program-level-block.is-soft-locked .program-level-block__surface,
  .program-level-list--audio .program-level-block__surface,
  .program-level-list--mixed .program-level-block__surface
){
  background:transparent!important;
  box-shadow:none!important;
}

/* Bunny Core 1.4.49 — playful audio feedback and progress celebrations */
.bny-audio-week-player,
.bny-audio-level-player{
  --bny-track-hue:205;
}
.bny-audio-now-playing{
  grid-template-columns:64px minmax(150px,.42fr) minmax(260px,1fr);
  background:linear-gradient(135deg,hsl(var(--bny-track-hue) 68% 96%),#fff5f9);
  border:1px solid hsl(var(--bny-track-hue) 48% 86%);
  transition:background .45s ease,border-color .45s ease,transform .28s ease;
  overflow:hidden;
}
.bny-audio-pulse{
  width:58px;
  height:52px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:4px;
  border-radius:18px;
  background:linear-gradient(145deg,hsl(var(--bny-track-hue) 70% 92%),hsl(calc(var(--bny-track-hue) + 42) 72% 93%));
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.72),0 10px 22px rgba(64,83,126,.1);
}
.bny-audio-pulse i{
  width:5px;
  height:13px;
  border-radius:999px;
  background:hsl(var(--bny-track-hue) 55% 52%);
  transform-origin:center;
  animation:bny-audio-wave .78s ease-in-out infinite alternate;
  animation-play-state:paused;
}
.bny-audio-pulse i:nth-child(2){height:24px;animation-delay:-.38s}
.bny-audio-pulse i:nth-child(3){height:34px;animation-delay:-.62s}
.bny-audio-pulse i:nth-child(4){height:22px;animation-delay:-.24s}
.bny-audio-pulse i:nth-child(5){height:15px;animation-delay:-.51s}
:is(.bny-audio-week-player,.bny-audio-level-player).is-playing .bny-audio-pulse i{animation-play-state:running}
:is(.bny-audio-week-player,.bny-audio-level-player).is-track-switching .bny-audio-now-playing{animation:bny-audio-card-switch .5s cubic-bezier(.2,.8,.25,1)}

.bny-audio-track{position:relative;transition:border-color .25s ease,box-shadow .25s ease,background .25s ease,transform .25s ease}
.bny-audio-track.is-active{
  border-color:hsl(var(--bny-track-hue) 48% 58%);
  background:linear-gradient(135deg,hsl(var(--bny-track-hue) 70% 97%),#fff8fb);
  transform:translateY(-2px);
}
.bny-audio-track.is-active .bny-audio-track__play{
  position:relative;
  overflow:hidden;
  background:hsl(var(--bny-track-hue) 43% 49%);
}
.bny-audio-track.is-heard .bny-audio-track__status{color:#2d8a69;font-weight:900}
.bny-audio-track.is-heard .bny-audio-track__status::before{content:"✓";display:inline-block;margin-inline-end:5px}
:is(.bny-audio-week-player,.bny-audio-level-player).is-playing .bny-audio-track.is-active .bny-audio-track__play .bunny-icon{opacity:0;transform:scale(.7)}
:is(.bny-audio-week-player,.bny-audio-level-player).is-playing .bny-audio-track.is-active .bny-audio-track__play::before,
:is(.bny-audio-week-player,.bny-audio-level-player).is-playing .bny-audio-track.is-active .bny-audio-track__play::after{
  content:"";
  position:absolute;
  top:12px;
  bottom:12px;
  width:5px;
  border-radius:999px;
  background:#fff;
  animation:bny-audio-pause-bars .65s ease-in-out infinite alternate;
}
:is(.bny-audio-week-player,.bny-audio-level-player).is-playing .bny-audio-track.is-active .bny-audio-track__play::before{right:13px}
:is(.bny-audio-week-player,.bny-audio-level-player).is-playing .bny-audio-track.is-active .bny-audio-track__play::after{left:13px;animation-delay:-.3s}
.bny-linear-progress i{transition:width .72s cubic-bezier(.2,.8,.25,1)}

html[data-bunny-theme="dark"] .bny-audio-now-playing{
  background:linear-gradient(135deg,hsl(var(--bny-track-hue) 28% 18%),#241d2a)!important;
  border-color:hsl(var(--bny-track-hue) 25% 35%)!important;
}
html[data-bunny-theme="dark"] .bny-audio-pulse{
  background:linear-gradient(145deg,hsl(var(--bny-track-hue) 28% 25%),#2c2940);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05),0 12px 24px rgba(0,0,0,.25);
}
html[data-bunny-theme="dark"] .bny-audio-pulse i{background:hsl(var(--bny-track-hue) 62% 69%)}
html[data-bunny-theme="dark"] .bny-audio-track.is-active{
  background:linear-gradient(135deg,hsl(var(--bny-track-hue) 25% 20%),#241f2b)!important;
  border-color:hsl(var(--bny-track-hue) 40% 57%)!important;
}
html[data-bunny-theme="dark"] .bny-audio-track.is-heard .bny-audio-track__status{color:#8ed9bc!important}

@keyframes bny-audio-wave{0%{transform:scaleY(.48);opacity:.62}100%{transform:scaleY(1.18);opacity:1}}
@keyframes bny-audio-card-switch{0%{transform:scale(.985);opacity:.72}55%{transform:scale(1.012)}100%{transform:none;opacity:1}}
@keyframes bny-audio-pause-bars{0%{transform:scaleY(.72)}100%{transform:scaleY(1.15)}}

@media(max-width:720px){
  .bny-audio-now-playing{grid-template-columns:54px minmax(0,1fr);gap:12px}
  .bny-audio-now-playing>.plyr,.bny-audio-now-playing>audio{grid-column:1/-1}
  .bny-audio-pulse{width:52px;height:48px;border-radius:16px}
}
@media(prefers-reduced-motion:reduce){
  .bny-audio-pulse i,
  :is(.bny-audio-week-player,.bny-audio-level-player).is-track-switching .bny-audio-now-playing,
  :is(.bny-audio-week-player,.bny-audio-level-player).is-playing .bny-audio-track.is-active .bny-audio-track__play::before,
  :is(.bny-audio-week-player,.bny-audio-level-player).is-playing .bny-audio-track.is-active .bny-audio-track__play::after{animation:none!important}
  .bny-audio-track.is-active{transform:none}
}

/* Bunny Core 1.4.51 — level-based playful learning path */
.bny-level-path{
  --bny-path-ink:#344760;
  --bny-path-muted:#718095;
  --bny-path-surface:rgba(255,255,255,.9);
  position:relative;
  margin:0 0 28px;
  padding:24px;
  border:1px solid rgba(87,103,148,.14);
  border-radius:30px;
  background:
    radial-gradient(circle at 9% 16%,rgba(246,200,95,.22),transparent 18rem),
    radial-gradient(circle at 92% 10%,rgba(235,117,169,.18),transparent 19rem),
    linear-gradient(145deg,rgba(255,255,255,.96),rgba(239,246,255,.88));
  box-shadow:0 22px 58px rgba(56,74,120,.11);
  overflow:hidden;
}
.bny-level-path::before,
.bny-level-path::after{
  content:"";
  position:absolute;
  border-radius:50%;
  pointer-events:none;
  opacity:.72;
}
.bny-level-path::before{width:90px;height:90px;right:-34px;bottom:-38px;background:rgba(121,201,231,.22)}
.bny-level-path::after{width:58px;height:58px;left:5%;top:-26px;background:rgba(118,91,156,.13)}
.bny-level-path__head{
  position:relative;
  z-index:2;
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:22px;
  margin-bottom:18px;
}
.bny-level-path__head h3{margin:5px 0 6px;font-size:23px;color:var(--bny-path-ink)}
.bny-level-path__head p{max-width:670px;margin:0;color:var(--bny-path-muted);line-height:1.8;font-size:13px}
.bny-level-path__head>strong{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  gap:5px;
  min-height:42px;
  padding:9px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.78);
  color:#66518d;
  border:1px solid rgba(118,91,156,.13);
  box-shadow:0 10px 24px rgba(65,50,112,.08);
  font-size:13px;
}
.bny-level-path__viewport{
  position:relative;
  z-index:2;
  direction:ltr;
  overflow-x:auto;
  overflow-y:hidden;
  overscroll-behavior-inline:contain;
  scrollbar-width:thin;
  scrollbar-color:rgba(118,91,156,.28) transparent;
  scroll-snap-type:x proximity;
  padding:8px 0 12px;
}
.bny-level-path__viewport::-webkit-scrollbar{height:6px}
.bny-level-path__viewport::-webkit-scrollbar-track{background:transparent}
.bny-level-path__viewport::-webkit-scrollbar-thumb{background:rgba(118,91,156,.24);border-radius:999px}
.bny-level-path__track{
  position:relative;
  display:grid;
  grid-template-columns:repeat(var(--bny-level-count),minmax(132px,1fr));
  gap:0;
  width:100%;
  min-width:calc(var(--bny-level-count) * 142px);
  padding:8px 34px 5px;
  direction:rtl;
}
.bny-level-path__line{
  position:absolute;
  z-index:0;
  top:41px;
  right:84px;
  left:84px;
  height:8px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(118,91,156,.12);
  box-shadow:inset 0 1px 3px rgba(72,55,104,.08);
}
.bny-level-path__line i{
  position:absolute;
  inset-block:0;
  right:0;
  width:var(--bny-level-progress,0%);
  border-radius:inherit;
  background:linear-gradient(90deg,#79c9e7,#765b9c 52%,#eb75a9);
  box-shadow:0 0 18px rgba(118,91,156,.28);
  transition:width .75s cubic-bezier(.2,.8,.25,1);
}
.bny-level-path__item{
  position:relative;
  z-index:1;
  display:grid;
  justify-items:center;
  align-content:start;
  gap:10px;
  min-width:0;
  padding:0 6px 10px;
  color:var(--bny-path-ink);
  text-decoration:none;
  text-align:center;
  width:100%;
  direction:rtl;
  scroll-snap-align:center;
  outline:none;
}
.bny-level-path__marker{
  position:relative;
  display:grid;
  place-items:center;
  width:68px;
  height:68px;
  border:6px solid rgba(255,255,255,.94);
  border-radius:24px;
  background:#edf1f6;
  color:#7b8797;
  box-shadow:0 12px 28px rgba(54,69,105,.13),inset 0 0 0 1px rgba(71,87,125,.08);
  font-weight:950;
  font-size:18px;
  transform:rotate(-2deg);
  transition:transform .24s ease,box-shadow .24s ease,filter .24s ease;
}
.bny-level-path__marker .bunny-icon{width:25px;height:25px}
.bny-level-path__copy{display:grid;justify-items:center;min-width:0;line-height:1.45}
.bny-level-path__copy strong{font-size:14px;color:inherit;white-space:nowrap}
.bny-level-path__copy small{
  display:block;
  width:100%;
  margin-top:2px;
  overflow:hidden;
  color:var(--bny-path-muted);
  font-size:11px;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.bny-level-path__copy em{margin-top:5px;color:#8a779f;font-size:10px;font-style:normal;white-space:nowrap}
.bny-level-path__item:hover .bny-level-path__marker,
.bny-level-path__item:focus-visible .bny-level-path__marker{transform:translateY(-4px) rotate(2deg);box-shadow:0 18px 34px rgba(54,69,105,.18),inset 0 0 0 1px rgba(71,87,125,.08)}
.bny-level-path__item:focus-visible .bny-level-path__marker{outline:3px solid rgba(63,112,160,.3);outline-offset:3px}
.bny-level-path__item.is-complete .bny-level-path__marker{
  background:linear-gradient(145deg,#55bd99,#83d9bd);
  color:#fff;
  border-radius:50%;
  box-shadow:0 14px 30px rgba(50,154,120,.23),inset 0 0 0 1px rgba(255,255,255,.32);
}
.bny-level-path__item.is-complete .bny-level-path__copy strong{color:#33856b}
.bny-level-path__item.is-current .bny-level-path__marker{
  background:linear-gradient(145deg,#765b9c,#eb75a9);
  color:#fff;
  transform:scale(1.08) rotate(2deg);
  box-shadow:0 17px 38px rgba(118,91,156,.3),0 0 0 8px rgba(235,117,169,.12),inset 0 0 0 1px rgba(255,255,255,.3);
  animation:bny-level-current-float 2.4s ease-in-out infinite;
}
.bny-level-path__item.is-current .bny-level-path__marker::after{
  content:"";
  position:absolute;
  inset:-11px;
  border:2px dashed rgba(235,117,169,.42);
  border-radius:30px;
  animation:bny-level-current-orbit 8s linear infinite;
}
.bny-level-path__item.is-current .bny-level-path__copy strong{color:#765b9c;font-size:15px}
.bny-level-path__item.is-open .bny-level-path__marker{background:linear-gradient(145deg,#fff5cc,#ffe49a);color:#8b6817}
.bny-level-path__item.is-locked{color:#8b94a1}
.bny-level-path__item.is-locked .bny-level-path__marker{background:rgba(228,233,240,.82);color:#8a94a1;filter:saturate(.5)}
.bny-level-path__item.is-locked .bny-level-path__copy{opacity:.72}
.bny-level-path__item.is-rattling .bny-level-path__marker{animation:bny-level-lock-rattle .42s ease}
.bny-level-path__item.is-just-completed .bny-level-path__marker{animation:bny-level-complete-pop .72s cubic-bezier(.2,.9,.2,1)}
.bny-level-path__legend{
  position:relative;
  z-index:2;
  display:flex;
  justify-content:center;
  gap:18px;
  flex-wrap:wrap;
  margin-top:10px;
  color:#7a8796;
  font-size:10px;
  font-weight:800;
}
.bny-level-path__legend span{display:inline-flex;align-items:center;gap:6px}
.bny-level-path__legend i{width:9px;height:9px;border-radius:50%;background:#cbd1da}
.bny-level-path__legend i.is-complete{background:#55bd99}
.bny-level-path__legend i.is-current{background:#d36ca3;box-shadow:0 0 0 4px rgba(211,108,163,.12)}
.bny-level-path__legend i.is-locked{background:#adb5c0}

.program-level-block.is-lock-attention{animation:bny-level-card-attention .62s ease;box-shadow:0 0 0 5px rgba(235,117,169,.13),0 18px 44px rgba(70,54,108,.12)!important}

.bny-level-path--dashboard{margin-bottom:0}
.bny-level-path--dashboard .bny-level-path__head h3{font-size:27px}

html[data-bunny-theme="dark"] .bny-level-path{
  --bny-path-ink:#eef4fb;
  --bny-path-muted:#a9b7c8;
  --bny-path-surface:rgba(27,40,58,.92);
  background:
    radial-gradient(circle at 9% 16%,rgba(210,169,77,.12),transparent 18rem),
    radial-gradient(circle at 92% 10%,rgba(200,93,144,.12),transparent 19rem),
    linear-gradient(145deg,rgba(24,37,55,.98),rgba(18,29,45,.96));
  border-color:rgba(190,209,232,.12);
  box-shadow:0 22px 58px rgba(0,0,0,.28);
}
html[data-bunny-theme="dark"] .bny-level-path__head>strong{background:rgba(35,51,72,.78);color:#d7c8ef;border-color:rgba(204,187,232,.12);box-shadow:0 10px 24px rgba(0,0,0,.2)}
html[data-bunny-theme="dark"] .bny-level-path__line{background:rgba(190,205,225,.12);box-shadow:inset 0 1px 3px rgba(0,0,0,.24)}
html[data-bunny-theme="dark"] .bny-level-path__marker{border-color:#23354c;background:#2b3d54;color:#b8c4d2;box-shadow:0 12px 28px rgba(0,0,0,.24),inset 0 0 0 1px rgba(255,255,255,.04)}
html[data-bunny-theme="dark"] .bny-level-path__item.is-open .bny-level-path__marker{background:linear-gradient(145deg,#5b4b2d,#6d5831);color:#ffe4a0}
html[data-bunny-theme="dark"] .bny-level-path__item.is-locked .bny-level-path__marker{background:#25364b;color:#8391a2}
html[data-bunny-theme="dark"] .bny-level-path__item.is-complete .bny-level-path__copy strong{color:#8ed9bc}
html[data-bunny-theme="dark"] .bny-level-path__item.is-current .bny-level-path__copy strong{color:#e9b2d0}
html[data-bunny-theme="dark"] .bny-level-path__copy em{color:#b8a9c9}

@keyframes bny-level-card-attention{0%,100%{transform:none}30%{transform:translateX(5px)}60%{transform:translateX(-4px)}}
@keyframes bny-level-current-float{0%,100%{translate:0 0}50%{translate:0 -5px}}
@keyframes bny-level-current-orbit{to{rotate:360deg}}
@keyframes bny-level-lock-rattle{0%,100%{transform:rotate(-2deg)}25%{transform:translateX(5px) rotate(4deg)}50%{transform:translateX(-5px) rotate(-5deg)}75%{transform:translateX(3px) rotate(3deg)}}
@keyframes bny-level-complete-pop{0%{transform:scale(.7) rotate(-12deg)}45%{transform:scale(1.2) rotate(7deg)}75%{transform:scale(.96) rotate(-2deg)}100%{transform:none}}

@media(max-width:760px){
  .bny-level-path{padding:19px 14px;border-radius:25px}
  .bny-level-path__head{display:grid;gap:12px}
  .bny-level-path__head h3{font-size:20px}
  .bny-level-path__head>strong{justify-self:start}
  .bny-level-path__viewport{margin-inline:-2px}
  .bny-level-path__track{display:flex;flex-direction:row-reverse;gap:8px;width:max-content;min-width:100%;padding-inline:20px;direction:ltr}
  .bny-level-path__item{flex:0 0 132px;width:132px}
  .bny-level-path__line{right:69px;left:69px}
  .bny-level-path__marker{width:62px;height:62px;border-radius:21px}
  .bny-level-path__legend{gap:12px}
}
@media(prefers-reduced-motion:reduce){
  .bny-level-path__item.is-current .bny-level-path__marker,
  .bny-level-path__item.is-current .bny-level-path__marker::after,
  .bny-level-path__item.is-rattling .bny-level-path__marker,
  .bny-level-path__item.is-just-completed .bny-level-path__marker{animation:none!important}
  .bny-level-path__marker{transition:none!important}
}

/* Bunny Core 1.4.52 — explicit active-course selection and age-stage soft lock */
.bny-program-card.is-soft-selectable .bny-program-card__visual{cursor:pointer}
.bny-program-card.is-soft-selectable .bny-program-card__age-lock{min-width:min(290px,calc(100% - 32px));pointer-events:auto}
.bny-program-card__soft-select{margin-top:5px;justify-content:center;white-space:nowrap}
.bny-program-card.is-soft-selectable .bny-program-card__age-lock small{max-width:245px;line-height:1.75}
@media(max-width:700px){
  .bny-program-card.is-soft-selectable .bny-program-card__age-lock{inset:54px 50% auto auto;min-width:min(260px,calc(100% - 24px));padding:14px 15px}
  .bny-program-card__soft-select{width:100%}
}

/* Bunny Core 1.4.57 — larger program artwork and earlier responsive stacking */
.bny-program-card__visual{
  min-height:270px;
  flex-basis:270px;
  overflow:hidden;
}
.bny-program-card__visual img.bny-program-card__illustration{
  padding:4px 12px;
  transform:scale(1.27);
  transform-origin:center;
}
@media(max-width:1050px){
  .bny-program-grid{grid-template-columns:1fr}
  .bny-program-card__visual{min-height:255px;flex-basis:255px}
  .bny-program-card__visual img.bny-program-card__illustration{transform:scale(1.24)}
}
@media(max-width:640px){
  .bny-program-grid{gap:18px}
  .bny-program-card__visual{min-height:220px;flex-basis:220px}
  .bny-program-card__visual img.bny-program-card__illustration{padding:0 8px;transform:scale(1.22)}
  .bny-program-card__body{padding:20px}
  .bny-program-card h2{font-size:22px;line-height:1.55}
  .bny-program-card__meta{gap:8px 10px}
  .bny-program-card__body>.bny-action{width:100%}
}
