/* Scoped to the video library; homepage, video detail and admin retain their templates. */
.av-library{padding:0 0 64px;background:#f8fafc;border-top:0}
.av-library .av-container{max-width:1160px}
.av-library-hero{position:relative;padding:26px 0 60px;background:linear-gradient(115deg,#f2f5fe 0%,#fafcff 55%,#eef2ff 100%);border-bottom:1px solid #e5e9f5}
.av-library-hero .av-breadcrumb{margin-bottom:28px;font-size:13px}
.av-library-hero .av-breadcrumb a{text-decoration:none;color:#64748b}
.av-library-hero .av-breadcrumb a:hover{text-decoration:underline}
.av-library-intro{display:flex;align-items:center;justify-content:space-between;gap:32px}
.av-library-intro>div:first-child{min-width:0}
.av-library-intro .av-eyebrow{display:flex;align-items:center;gap:8px;font-size:12px;letter-spacing:.12em;margin-bottom:10px}
.av-library-intro .av-eyebrow i{font-size:20px}
.av-library-intro h1{font-size:clamp(30px,3.4vw,46px);line-height:1.35;font-weight:800;letter-spacing:-.025em;color:#18365b;margin:0 0 12px}
.av-library-intro p{font-size:16px;line-height:1.8;color:#64748b;margin:0;max-width:690px}
.av-library-mark{flex:none;width:156px;display:flex;align-items:center;flex-direction:column;gap:12px;transform:rotate(-5deg)}
.av-library-mark>span{display:grid;place-items:center;width:90px;height:65px;border:1px solid #ffffff;border-radius:23px;background:#fff;color:var(--cmcity-pink,#1d4ed8);font-size:28px;box-shadow:0 12px 35px #1d4ed814}
.av-library-mark small{font-size:12px;color:#64748b}
.av-library-search{position:relative;margin:-28px 0 30px;padding:22px 24px;background:white;border:1px solid #e8edf4;border-radius:20px;box-shadow:0 8px 28px #18365b07;gap:14px}
.av-library-search label{font-size:14px;font-weight:600;color:#18365b;min-width:0;flex:1 1 260px}
.av-library-input{display:block;position:relative;margin-top:8px}
.av-library-input>i{position:absolute;left:16px;top:50%;transform:translateY(-50%);color:#94a3b8;pointer-events:none;font-size:15px}
.av-library .av-library-input input{margin:0;padding:13px 16px 13px 44px;height:50px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;font-weight:400;min-width:0}
.av-library .av-library-input input::placeholder{color:#94a3b8;opacity:1}
.av-library .av-library-search .av-submit{height:50px;border-radius:12px;background:#17335b;background:color-mix(in srgb,var(--cmcity-pink,#1d4ed8) 80%,#000);color:#fff;font-size:14px;padding:12px 24px;transition:filter .2s}
.av-library-search .av-submit:hover{filter:brightness(.93)}
.av-library-clear{font-size:13px;color:#64748b;min-height:50px;display:flex;align-items:center;text-decoration:underline;padding:0 6px}
.av-library-results{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 22px;scroll-margin-top:100px;flex-wrap:wrap}
.av-library-results h2{display:flex;align-items:center;gap:12px;flex-wrap:wrap;color:#18365b;font-size:21px;font-weight:700;margin:0}
.av-library-results h2 span{border-radius:30px;background:#e7edfc;color:#173b9d;font-size:12px;font-weight:500;padding:6px 12px}
.av-library-results p{color:#64748b;font-size:13px;margin:0;overflow-wrap:anywhere;max-width:100%}
.av-library .av-card{border-radius:18px;border-color:#e8edf4;box-shadow:0 3px 12px #18365b04}
.av-library .av-card:hover{box-shadow:0 10px 26px #18365b10;border-color:#cfd9f5}
.av-library .av-card h3{font-size:16px;line-height:1.75;color:#18365b}
.av-library .av-card-body{padding:18px 20px}
.av-library .av-text-link{font-size:13px}
.av-library .av-play{width:52px;height:38px;font-size:18px;border-radius:12px}
.av-library .av-pagination{justify-content:center;margin-top:36px}
.av-library .av-pagination a{background:#fff}
.av-library .av-pagination a[aria-current]{background:#17335b;color:white;border-color:#17335b}
.av-library-skip{position:fixed;top:-100px;left:16px;z-index:10000;background:#18365b;color:white;padding:12px 20px;border-radius:12px}
.av-library-skip:focus{top:12px}
@media(max-width:600px){
 .av-library{padding-bottom:40px}
 .av-library-hero{padding:20px 0 48px}
 .av-library-hero .av-breadcrumb{margin-bottom:22px}
 .av-library-intro{gap:0}
 .av-library-intro p{font-size:14px}
 .av-library-mark{display:none}
 .av-library-search{padding:18px;margin-top:-22px;margin-bottom:26px;gap:12px;border-radius:16px}
 .av-library-search label{flex-basis:100%}
 .av-library-search .av-submit{width:100%}
 .av-library-clear{justify-content:center;width:100%;min-height:36px}
 .av-library-results{align-items:flex-start;gap:8px}
 .av-library-results h2{font-size:19px}
 .av-library-results p{flex-basis:100%}
}
