
/* ==========================================================
   Video Library V15
   Scoped to .vl-body / .vl-main to avoid global conflicts.
   ========================================================== */
.vl-body{--vl-green:#174d3f;--vl-green-2:#0f3b31;--vl-gold:#b88a3b;--vl-gold-soft:#f2e7cf;--vl-card:#fff;--vl-bg:#f6f8f5;--vl-text:#1c2c27;--vl-muted:#66756f;--vl-border:rgba(23,77,63,.14);--vl-shadow:0 12px 35px rgba(20,49,40,.08);background:var(--vl-bg);color:var(--vl-text)}
html.dark .vl-body,html[data-theme="dark"] .vl-body,body.dark.vl-body{--vl-card:#17221f;--vl-bg:#101714;--vl-text:#eef5f2;--vl-muted:#a9b8b2;--vl-border:rgba(255,255,255,.1);--vl-gold-soft:#352d1f;--vl-shadow:0 12px 35px rgba(0,0,0,.25)}
.vl-main{width:min(1180px,calc(100% - 28px));margin-inline:auto;padding:18px 0 48px}
.vl-breadcrumb{display:flex;gap:8px;align-items:center;font-size:.9rem;color:var(--vl-muted);margin:8px 0 16px}
.vl-breadcrumb a{color:var(--vl-green);text-decoration:none;font-weight:700}
html.dark .vl-breadcrumb a,html[data-theme="dark"] .vl-breadcrumb a{color:#9cc9bb}
.vl-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:1fr auto;gap:26px;align-items:center;padding:34px;border:1px solid var(--vl-border);border-radius:26px;background:linear-gradient(135deg,rgba(23,77,63,.97),rgba(15,59,49,.94));color:#fff;box-shadow:var(--vl-shadow)}
.vl-hero:after{content:"";position:absolute;inset:auto -70px -100px auto;width:260px;height:260px;border:1px solid rgba(255,255,255,.11);border-radius:50%}
.vl-kicker{display:inline-flex;padding:6px 11px;border:1px solid rgba(255,255,255,.22);border-radius:999px;font-size:.82rem;color:#f2dec0;background:rgba(255,255,255,.06)}
.vl-hero h1{margin:12px 0 10px;font-size:clamp(1.8rem,4vw,3rem);line-height:1.25}
.vl-hero p{margin:0;max-width:760px;color:#e7efec;font-size:1rem;line-height:1.9}
.vl-hero__stats{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px}
.vl-hero__stats span{padding:8px 11px;border:1px solid rgba(255,255,255,.14);border-radius:12px;background:rgba(255,255,255,.07);font-size:.85rem}
.vl-hero__stats strong{color:#f1d69e}
.vl-hero__mark{width:150px;aspect-ratio:1;border-radius:24px;display:grid;place-items:center;align-content:center;gap:8px;background:linear-gradient(145deg,#c69a4d,#9f7330);box-shadow:inset 0 0 0 1px rgba(255,255,255,.26),0 18px 30px rgba(0,0,0,.16)}
.vl-hero__mark span{font-size:2.4rem;transform:translateX(-2px)}
.vl-hero__mark small{font-size:.76rem}
.vl-tools{position:relative;z-index:2;margin:-1px 18px 0;display:grid;grid-template-columns:1.7fr 1fr auto;gap:12px;align-items:end;padding:18px;border:1px solid var(--vl-border);border-radius:0 0 20px 20px;background:var(--vl-card);box-shadow:var(--vl-shadow)}
.vl-tools label{display:block;margin-bottom:7px;font-size:.82rem;color:var(--vl-muted);font-weight:700}
.vl-search-box{position:relative}
.vl-search-box input,.vl-filter-wrap select{width:100%;height:46px;border:1px solid var(--vl-border);border-radius:13px;background:var(--vl-bg);color:var(--vl-text);font:inherit;outline:none}
.vl-search-box input{padding:0 14px 0 44px;direction:rtl;text-align:right}
.vl-search-box input::placeholder{color:var(--vl-muted);opacity:1}
.vl-search-box input:focus,.vl-filter-wrap select:focus{border-color:var(--vl-gold);box-shadow:0 0 0 3px rgba(184,138,59,.12)}
.vl-search-box button{position:absolute;left:7px;top:7px;width:32px;height:32px;border:0;border-radius:9px;background:var(--vl-gold-soft);color:var(--vl-text);font-size:1.25rem;cursor:pointer}
.vl-filter-wrap select{padding:0 12px;cursor:pointer;direction:rtl;text-align:right;color-scheme:light dark}
.vl-filter-wrap select option{background:var(--vl-card);color:var(--vl-text)}
.vl-view-wrap{display:flex;gap:5px;padding:4px;border:1px solid var(--vl-border);border-radius:12px;background:var(--vl-bg)}
.vl-view-wrap button{height:36px;padding:0 11px;border:0;border-radius:9px;background:transparent;color:var(--vl-muted);cursor:pointer}
.vl-view-wrap button.is-active{background:var(--vl-green);color:#fff}
.vl-results-count{grid-column:1/-1;margin:0;color:var(--vl-muted);font-size:.84rem}
.vl-featured,.vl-library{margin-top:30px}
.vl-section-head span{font-size:.78rem;color:var(--vl-gold);font-weight:800}
.vl-section-head h2{margin:5px 0 14px;font-size:1.35rem}
.vl-featured__grid{display:flex;flex-wrap:wrap;gap:8px}
.vl-featured__grid button{border:1px solid var(--vl-border);background:var(--vl-card);color:var(--vl-text);border-radius:999px;padding:9px 14px;font:inherit;cursor:pointer}
.vl-featured__grid button:hover{border-color:var(--vl-gold);background:var(--vl-gold-soft)}
.vl-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.vl-card.is-filtered-out,.vl-card[hidden]{display:none!important}
.vl-card{position:relative;display:grid;grid-template-columns:auto 1fr;gap:12px;align-items:start;padding:16px;border:1px solid var(--vl-border);border-radius:17px;background:var(--vl-card);content-visibility:auto;contain-intrinsic-size:150px;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}
.vl-card:hover{transform:translateY(-2px);border-color:rgba(184,138,59,.55);box-shadow:var(--vl-shadow)}
.vl-card__num{display:grid;place-items:center;min-width:42px;height:42px;border-radius:12px;background:var(--vl-gold-soft);color:#7a571f;font-size:.76rem;font-weight:800}
html.dark .vl-card__num,html[data-theme="dark"] .vl-card__num{color:#edcc8c}
.vl-card__body h3{margin:0;font-size:1rem;line-height:1.65;font-weight:800}
.vl-card__body h3 a{color:var(--vl-text);text-decoration:none}
.vl-card__speaker{margin:6px 0 0;color:var(--vl-muted);font-size:.82rem}
.vl-card__actions{grid-column:1/-1;display:flex;gap:7px;margin-top:2px}
.vl-watch,.vl-open{display:inline-flex;align-items:center;justify-content:center;min-height:36px;border-radius:10px;padding:0 11px;font:inherit;font-size:.8rem;text-decoration:none;cursor:pointer}
.vl-watch{border:0;background:var(--vl-green);color:#fff;font-weight:800}
.vl-open{border:1px solid var(--vl-border);color:var(--vl-text);background:var(--vl-bg)}
.vl-card.is-unavailable{opacity:.58}
.vl-card__status{margin:0;color:var(--vl-muted);font-size:.88rem}
.vl-grid.is-compact{grid-template-columns:repeat(2,minmax(0,1fr))}
.vl-grid.is-compact .vl-card{grid-template-columns:auto 1fr auto;align-items:center;padding:11px}
.vl-grid.is-compact .vl-card__actions{grid-column:auto;margin:0}
.vl-grid.is-compact .vl-open{display:none}
.vl-empty{padding:25px;text-align:center;border:1px dashed var(--vl-border);border-radius:16px;color:var(--vl-muted)}
.vl-related{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px;padding-top:20px;border-top:1px solid var(--vl-border)}
.vl-related a{padding:9px 12px;border:1px solid var(--vl-border);border-radius:10px;color:var(--vl-text);text-decoration:none;font-size:.86rem;background:var(--vl-card)}
.vl-related a.is-primary{background:var(--vl-green);color:#fff;border-color:var(--vl-green)}
.vl-modal[hidden]{display:none!important}
.vl-modal{position:fixed;inset:0;z-index:2147483000;display:grid;place-items:center;padding:18px}
.vl-modal__backdrop{position:absolute;inset:0;background:rgba(3,12,9,.76);backdrop-filter:blur(4px)}
.vl-modal__panel{position:relative;width:min(920px,100%);max-height:calc(100vh - 36px);overflow:auto;border:1px solid rgba(255,255,255,.12);border-radius:22px;background:#101714;color:#fff;box-shadow:0 30px 90px rgba(0,0,0,.45)}
.vl-modal__head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:16px 18px;border-bottom:1px solid rgba(255,255,255,.1)}
.vl-modal__head span{color:#d6bb83;font-size:.82rem}
.vl-modal__head h2{margin:4px 0 0;font-size:1.15rem}
.vl-modal__close{width:38px;height:38px;border:1px solid rgba(255,255,255,.15);border-radius:12px;background:rgba(255,255,255,.08);color:#fff;font-size:1.4rem;cursor:pointer}
.vl-player-shell{min-height:260px;display:grid;place-items:center;background:#050807}
.vl-player-shell video,.vl-player-shell iframe{display:block;width:100%;max-height:68vh;aspect-ratio:16/9;background:#000;border:0}
.vl-player-loading{color:#aebbb6;padding:60px 20px;text-align:center}
.vl-player-error{padding:42px 20px;text-align:center;color:#d9e5e0}
.vl-modal__foot{display:flex;gap:8px;justify-content:flex-end;padding:12px 16px;border-top:1px solid rgba(255,255,255,.1)}
.vl-modal__foot a,.vl-modal__foot button{min-height:38px;padding:0 12px;border-radius:10px;font:inherit;font-size:.82rem}
.vl-modal__foot a{display:inline-flex;align-items:center;text-decoration:none;background:#b88a3b;color:#111}
.vl-modal__foot button{border:1px solid rgba(255,255,255,.15);background:transparent;color:#fff;cursor:pointer}
body.vl-modal-open{overflow:hidden}
@media(max-width:900px){
  .vl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .vl-tools{grid-template-columns:1fr 1fr}.vl-view-wrap{grid-column:1/-1;width:max-content}
}
@media(max-width:680px){
  .vl-main{width:min(100% - 18px,1180px);padding-top:10px}
  .vl-hero{grid-template-columns:1fr;padding:24px 18px;border-radius:20px}.vl-hero__mark{display:none}
  .vl-tools{margin:0 6px;padding:12px;grid-template-columns:1fr;border-radius:0 0 16px 16px}
  .vl-view-wrap{grid-column:auto}
  .vl-grid,.vl-grid.is-compact{grid-template-columns:1fr}
  .vl-grid.is-compact .vl-card{grid-template-columns:auto 1fr}
  .vl-grid.is-compact .vl-card__actions{grid-column:1/-1}
  .vl-card{padding:13px}
  .vl-modal{padding:8px}.vl-modal__panel{max-height:calc(100vh - 16px);border-radius:16px}
  .vl-modal__foot{justify-content:stretch}.vl-modal__foot>*{flex:1;justify-content:center}
}
@media(prefers-reduced-motion:reduce){.vl-card{transition:none}}
