/* XiaoFilm is a clearly isolated catalog, never a hidden playback proxy. */
.xf-top{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:12px}.xf-back{border:1px solid #45506a;padding:9px 12px;border-radius:12px;color:#e4dbff;font-size:12px;font-weight:700}.xf-back:hover{background:#2b2d47}.xf-main{padding-top:27px}.xf-banner{position:relative;border:1px solid #4c466c;background:linear-gradient(122deg,#282044,#16283b 80%);border-radius:22px;padding:clamp(23px,5vw,40px);overflow:hidden;margin-bottom:20px}.xf-banner:after{content:"";position:absolute;inset:-180px -120px auto auto;width:340px;height:340px;background:radial-gradient(circle,#9a85ee40,transparent 70%);pointer-events:none}.xf-tag{display:inline-flex;color:#baf4e3;border:1px solid #619482a1;background:#1a403d99;padding:6px 10px;border-radius:30px;font-size:10px;letter-spacing:1.2px;font-weight:850}.xf-banner h1{font-size:clamp(29px,5.5vw,44px);margin:18px 0 10px;letter-spacing:-1.5px}.xf-banner p{color:#cad2e2;max-width:650px;font-size:13px;line-height:1.65;margin:0 0 20px}.xf-searchbox{max-width:580px;display:flex;gap:10px;align-items:center;background:#11172bd9;border:1px solid #54567f;border-radius:13px;padding:0 14px;height:47px}.xf-searchbox:focus-within{border-color:#a38cff;box-shadow:0 0 0 3px #9b82ff21}.xf-searchbox svg{width:18px;height:18px;color:#b9b0ed}.xf-searchbox input{flex:1;min-width:0;background:transparent;border:0;outline:0;color:#fff;font-size:14px}.xf-line{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:18px 0 26px;color:#9da6bb;font-size:12px}.xf-refresh{border:1px solid #454c68;border-radius:10px;background:#1a2134;color:#e2e7f4;padding:9px 13px;font-weight:700}.xf-refresh:hover{background:#2d3350}.xf-refresh:disabled{opacity:.5}.xf-group{margin:0 0 36px;animation:fade-up .2s both}.xf-group-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin:0 0 17px}.xf-group h2{font-size:clamp(18px,3vw,24px);margin:0;letter-spacing:-.5px}.xf-group-count{font-size:11px;color:#8794ad}.xf-group .movie-grid{min-height:0}.xf-stamp{position:absolute;left:8px;top:8px;z-index:1;border:1px solid #75baab80;background:#143f39eb;border-radius:6px;padding:5px 7px;font-size:10px;color:#c9fff4;font-weight:800}.xf-note{margin:36px 0 65px;background:#121b28;color:#99b2ba;border-left:2px solid #60a897;border-radius:6px;padding:15px;font-size:12px;line-height:1.7}.xf-modal-body{max-width:560px}.xf-detail-poster{width:110px;height:164px;object-fit:cover;border-radius:12px;background:#292f40;flex-shrink:0}.xf-details-top{display:flex;gap:16px;margin:12px 26px 18px 0}.xf-details-top h2{font-size:clamp(20px,4vw,27px);margin:0 0 7px;line-height:1.35}.xf-details-top p{font-size:13px;color:#aeb8ce;line-height:1.6;margin:5px 0}.xf-message{background:#192338;border-radius:13px;border:1px solid #465275;padding:16px;color:#c9d3ed;font-size:13px;line-height:1.65}.xf-description{margin:14px 0 0;color:#aeb9ce;line-height:1.7;font-size:13px}.xf-empty{color:#b5bfd3;padding:25px 0}.xf-top .brand-mark{font-size:17px}.xf-skeleton{height:215px;border-radius:12px;background:linear-gradient(100deg,#20263a 20%,#303b55 45%,#20263a 75%);background-size:200% 100%;animation:shimmer 1.5s linear infinite}
@media(max-width:650px){.xf-top{min-height:59px}.xf-back{font-size:11px;padding:8px}.xf-banner{padding:22px;border-radius:17px}.xf-banner p{font-size:12px}.xf-group{margin-bottom:26px}.xf-details-top{gap:12px}.xf-detail-poster{width:78px;height:117px}}
@media(prefers-reduced-motion:reduce){.xf-skeleton{animation:none}}
