/* ==========================================================================
   全盘搜索前端样式 — 基于 F:\pdd\2\shouye\1 设计重写
   包含: reset + brand + search + orbit + loading + results + filter + modal
   ========================================================================== */

*,:after,:before{box-sizing:border-box}
html{height:100%;-webkit-tap-highlight-color:transparent;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%;line-height:1.6;font-size:14px}
input,button,textarea,select{outline:none;resize:none;border:none;-webkit-appearance:none;appearance:none;background:transparent;color:inherit;font:inherit}
body,input,textarea,select,button{-webkit-touch-callout:none;-webkit-font-smoothing:antialiased;font-family:-apple-system-font,BlinkMacSystemFont,"Helvetica Neue","PingFang SC","Hiragino Sans GB","Microsoft YaHei UI","Microsoft YaHei",Arial,sans-serif}
body{color:#464646;padding:0;margin:0;display:flex;min-height:100vh;flex-direction:column;background:#fff}
img{border:none}em{font-style:normal}
button{cursor:pointer;background:none;border:none}
ul,li{list-style:none}
a{text-decoration:none;color:#464646;outline:none}
a:hover{text-decoration:none;color:#283593}
p{color:#464646}

/* ---- 主容器 ---- */
main{margin:0 auto;flex:1 0 auto}
.home{width:100%;max-width:720px;margin:0 auto;padding:0 20px}
.page-search{background:#fff}

/* ---- 品牌区 ---- */
.brand{display:grid;justify-items:center;align-items:end;position:relative;grid-template-rows:minmax(0,1fr);height:300px;margin-bottom:40px;transition:height .4s ease,margin-bottom .4s ease;overflow:hidden}
.brand-logo{display:block;width:180px}
.brand-logo img{width:100%;display:block}
.brand-slogan{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.brand-slogan-strong{background:url(../images/title_bg.webp) no-repeat right 95%;background-size:100%;padding-bottom:5px}
.brand-subtitle{margin-top:18px}
.brand-subtitle-item{display:inline-block;padding:0 10px;font-size:15px}
.brand-subtitle-item .icon-yes{display:inline-block;width:11px;height:11px;vertical-align:1px;margin-right:6px}
.brand.shrink{height:120px;margin-bottom:25px}
.brand.shrink .brand-logo{display:inline-block}
.brand.shrink .brand-slogan{display:none}
.brand.shrink .brand-subtitle{display:none}

/* ---- 搜索框 ---- */
.search{padding:0 15px;transition:padding .4s ease}
.search-form{display:flex;align-items:stretch;gap:0;background:#fff;transition:all .3s;border-radius:14px;padding:2px;position:relative;border:2px solid #6d81e2}
.search-input{flex:1;border:none;outline:none;background:transparent;padding:3px 12px;font-size:16px;color:#1f2937;min-width:0}
.search-form.big .search-input{padding:10px 15px;font-size:16px}
.search-btn{border:none;font-weight:600;width:48px;border-radius:10px;cursor:pointer;font-size:18px;letter-spacing:1px}
.search-btn .icon-search{display:inline-block;width:20px;height:20px}
.search-form:hover{background:#f4faff}
.search-form:hover .search-btn svg{stroke:#28c566}
.search-btn .loader{margin:0 auto;width:22px;aspect-ratio:1;border-radius:50%;background:radial-gradient(farthest-side,#28c566 100%,transparent) top no-repeat,conic-gradient(transparent 30%,#d965ff,#658eff);background-size:8px 8px,100% 100%;-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 5px),#000 0);mask:radial-gradient(farthest-side,transparent calc(100% - 5px),#000 0);animation:l13 .5s infinite linear}
@keyframes l13{100%{transform:rotate(1turn)}}

/* ---- 热门搜索 ---- */
.hot-search{display:none;flex-direction:column;align-items:flex-start;gap:10px;width:100%;max-width:560px;margin:18px 0 0;padding:0 10px;opacity:0;transform:translateY(6px);transition:opacity .3s ease,transform .3s ease}
.hot-search.show{display:flex;opacity:1;transform:none}
.hot-label{font-size:13px;color:#5268ff;font-weight:700;white-space:nowrap;flex-shrink:0;display:flex;align-items:center;gap:5px}
.hot-label::before{content:'';display:inline-block;width:3px;height:13px;background:linear-gradient(to bottom,#5268ff,#a78bfa);border-radius:2px}
.hot-tags{display:flex;flex-wrap:wrap;gap:8px 8px;justify-content:flex-start;width:100%}
.hot-tag{font-size:13px;color:#374151;background:#f3f4f6;border:1px solid #e5e7eb;padding:5px 12px;border-radius:999px;cursor:pointer;white-space:nowrap;transition:background .15s,color .15s,border-color .15s,transform .1s;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.hot-tag:hover{background:#eef2ff;color:#5268ff;border-color:#c7d2fe}
.hot-tag:active{transform:scale(.96)}
.hot-tag.rank-1{background:#fef3c7;color:#92400e;border-color:#fcd34d;font-weight:600}
.hot-tag.rank-1:hover{background:#fde68a;color:#78350f;border-color:#fbbf24}
.hot-tag.rank-2{background:#fce7f3;color:#9d174d;border-color:#f9a8d4;font-weight:600}
.hot-tag.rank-2:hover{background:#fbcfe8;color:#831843;border-color:#f472b6}
.hot-tag.rank-3{background:#dbeafe;color:#1e40af;border-color:#93c5fd;font-weight:600}
.hot-tag.rank-3:hover{background:#bfdbfe;color:#1e3a8a;border-color:#60a5fa}
.hot-rank-num{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;font-size:10px;font-weight:700;margin-right:4px;line-height:1;flex-shrink:0}
.hot-tag.rank-1 .hot-rank-num{background:#f59e0b;color:#fff}
.hot-tag.rank-2 .hot-rank-num{background:#ec4899;color:#fff}
.hot-tag.rank-3 .hot-rank-num{background:#3b82f6;color:#fff}

/* ---- 热门搜索响应式 ---- */
@media(max-width:480px){
  .hot-search{padding:0 12px;gap:8px;margin:14px 0 0}
  .hot-tags{gap:6px 6px}
  .hot-tag{font-size:12px;padding:4px 10px}
  .hot-rank-num{width:14px;height:14px;font-size:9px}
  .hot-label{font-size:12px}
}
@media(max-width:360px){
  .hot-tag{font-size:11px;padding:3px 8px}
  .hot-tags{gap:5px 5px}
}

/* ---- 搜索加载动画 ---- */
.search-loading{height:240px;display:flex;align-items:center;justify-content:center;flex-direction:column}
.loading{height:80px;width:250px;margin:0 auto 10px;overflow:hidden;padding:15px;position:relative}
.loading::before,.loading::after{content:'';position:absolute;top:0;height:100%;width:60px;z-index:1}
.loading::before{background:linear-gradient(to left,transparent 0%,#fff 90%);left:0}
.loading::after{background:linear-gradient(to right,transparent 0%,#fff 90%);right:0}
.loading-box{display:flex;gap:5px;width:max-content;animation:belt-move 8.8s infinite}
.loading-dot{height:48px;width:48px;padding:13px;background:#fff;border-radius:50px;flex-shrink:0;box-shadow:0 4px 14px rgba(15,23,42,0.12)}
.loading-dot img{height:100%}
.loading-text{font-size:15px;font-weight:700;padding:8px 30px;border-radius:50px;border:1px solid #e5e7ed}
@keyframes belt-move{0%{transform:translateX(0px)}3.40909%{transform:translateX(-45px)}9.09091%{transform:translateX(-45px)}12.5%{transform:translateX(-90px)}18.18182%{transform:translateX(-90px)}21.59091%{transform:translateX(-135px)}27.27273%{transform:translateX(-135px)}30.68182%{transform:translateX(-180px)}36.36364%{transform:translateX(-180px)}39.77273%{transform:translateX(-225px)}45.45455%{transform:translateX(-225px)}48.86364%{transform:translateX(-270px)}54.54545%{transform:translateX(-270px)}57.95455%{transform:translateX(-315px)}63.63636%{transform:translateX(-315px)}67.04545%{transform:translateX(-360px)}72.72727%{transform:translateX(-360px)}76.13636%{transform:translateX(-405px)}81.81818%{transform:translateX(-405px)}85.22727%{transform:translateX(-450px)}90.90909%{transform:translateX(-450px)}94.31818%{transform:translateX(-495px)}100%{transform:translateX(-495px)}}

/* ---- 结果区 ---- */
.result-main{padding-top:25px}
.result-meta{font-size:14px;color:#6b7280;margin-bottom:12px}
.result-meta strong{color:#1f2937;font-size:16px}

/* ---- 分类列表（横向一排） ---- */
.cat-list{display:flex;flex-direction:row;flex-wrap:nowrap;overflow-x:auto;gap:8px;padding:10px 0 0;margin:0;list-style:none;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.cat-list::-webkit-scrollbar{display:none}
.cat-item{position:relative;cursor:pointer;background:#f3f4f6;border:1px solid transparent;border-radius:999px;padding:7px 16px;display:flex;flex-direction:row;align-items:center;justify-content:center;transition:background .15s,border-color .15s,box-shadow .15s;flex-shrink:0;white-space:nowrap}
.cat-item:hover{background:#eef0f3}
.cat-item .cat-name{font-size:14px;font-weight:600;color:#374151;line-height:1.3}
.cat-item .cat-count{display:none}
.cat-item.active{background:#fff;border-color:#5268ff;box-shadow:0 0 0 1px #5268ff inset}
.cat-item.active .cat-name{color:#5268ff}
.cat-list.hidden{display:none}

/* ---- 结果卡片 ---- */
.tabpanel{min-height:200px}
.link-list{padding:0;margin:0}
.link-item{display:flex;align-items:center;gap:15px;padding:15px;border:1px solid #e5e7ed;transition:opacity .25s;margin-top:10px;border-radius:12px;cursor:pointer}
.link-item:hover{background:#f7fcff}
.link-type{width:32px;height:32px;border-radius:12px;display:grid;place-items:center;flex-shrink:0}
.link-type img{height:65%;width:65%}
.link-body{flex:1;min-width:0}
.link-note{color:#1f2937;font-size:15px;font-weight:700;margin-bottom:5px;word-break:break-all;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;overflow:hidden;transition:color .12s}
.link-item:hover .link-note{color:#2356dc}
.link-item-bad{cursor:default;opacity:.6}
.link-item-bad .link-note{text-decoration:line-through;text-decoration-color:#d1d5db}
.link-item-bad .link-type{filter:grayscale(.6)}
.link-item-bad .link-note:hover{color:#1f2937}
.link-tags{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 15px}
.link-tag{font-size:12px;line-height:1;padding:6px 7px;border-radius:5px;background:#f1f3f5;color:#5b6370;font-weight:500;white-space:nowrap}
.link-tag.tag-reso{background:#eaf1ff;color:#2356dc}
.link-tag.tag-quality{background:#fff0f0;color:#cd3535}
.link-tag.tag-year{background:#f8f0de;color:#b35e27}
.link-tag.tag-ep{background:#f3ecff;color:#7c3aed}
.link-tag.tag-fps{background:#fdeef6;color:#c026a3}
.link-tag.tag-codec{background:#eafaf1;color:#1e874b}
.link-tag.tag-audio{background:#e7f7f8;color:#0e7c86}
.link-tag.tag-lang{background:#eef1f6;color:#4b5670}
.link-item-bad .link-tag{opacity:.7}
.link-meta{display:flex;flex-wrap:wrap;gap:10px;line-height:1;color:#6b7280;font-size:13px;align-items:center}
.link-meta .link-name{font-weight:500}
.link-meta .link-name ~ span,.link-meta .link-name ~ div{padding-left:10px;border-left:2px solid #ddd}
.link-actions{display:flex;flex-direction:column;gap:6px;flex-shrink:0;align-items:stretch}
.btn-primary{border:none;border-radius:8px;padding:6px 0;font-size:13px;cursor:pointer;text-align:center;font-weight:500;padding:6px 18px;background:#edf3ff;color:#2356dc;transition:background .25s,color .25s}
.btn-primary:hover{background:linear-gradient(135deg,#4577fc,#2356dc);color:#fff}
.btn-primary:disabled{background:#e5e7eb!important;color:#9ca3af!important;cursor:not-allowed;opacity:.7}

/* ---- 状态徽章 ---- */
.state{font-size:11px;padding:0;border-radius:50px;padding:3px 10px}
.state i{font-size:10px;margin:0 3px 0 -1px}
.state-checking{color:green}
.state-pending,.state-uncertain{color:#505050;background:#f7f8f9}
.state-ok{color:green;background:linear-gradient(90deg,#e0fde0,transparent)}
.state-bad{color:#d53131;background:linear-gradient(90deg,#ffebeb,transparent)}

/* ---- 筛选栏 ---- */
.filter-and-count-container{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:12px 0;flex-wrap:wrap;min-height:16px}
.filter-and-count-container.d-none{display:none!important}
.filter-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;width:100%}
.result-count{font-size:14px;color:#6b7280}
.filter-actions{display:flex;gap:8px;align-items:center;margin-left:auto}
.filter-toggle-button,.check-all-btn{font-size:13px;padding:5px 12px;border-radius:8px;border:1px solid #e5e7ed;background:#fff;color:#4b5563;cursor:pointer;transition:background .15s,border-color .15s}
.filter-toggle-button:hover,.check-all-btn:hover{background:#f3f4f6;border-color:#d1d5db}
.check-all-btn.d-none{display:none!important}
.advanced-filter-panel{width:100%;margin-top:8px}
.advanced-filter-panel.d-none{display:none!important}
#advanced-filter-bar{display:flex;gap:8px;flex-wrap:wrap;align-items:flex-end}
.advanced-filter-group{flex:1;min-width:120px}
.advanced-filter-label{font-size:12px;color:#6b7280;padding:4px 8px;background:#f3f4f6;border-radius:6px;white-space:nowrap}
.advanced-filter-input{width:100%;padding:5px 8px;font-size:13px;border:1px solid #e5e7eb;border-radius:6px}
.advanced-filter-apply{padding:5px 14px;font-size:13px;border-radius:6px;background:#5268ff;color:#fff;border:none;cursor:pointer}
.advanced-filter-apply:hover{background:#4577fc}

/* ---- 空状态 ---- */
.empty,.error-box{text-align:center;padding:80px 20px;color:#6b7280}
.empty-icon{font-size:48px;margin-bottom:12px}
.empty-title{color:#1f2937;font-size:16px;margin-bottom:6px;font-weight:700}
.empty-tip{color:#9ca3af;font-size:13px}
.empty-tip a{color:#6366f1;text-decoration:none}
.empty-tip a:hover{text-decoration:underline}
.tab-empty{text-align:center;padding:60px 20px;color:#9ca3af;font-size:14px}
.load-more-sentinel{text-align:center;padding:18px 20px;color:#9ca3af;font-size:13px}

/* ---- Toast ---- */
.toast{position:fixed;bottom:40px;left:50%;transform:translateX(-50%) translateY(20px);background:rgba(31,41,55,0.92);color:#fff;padding:10px 20px;border-radius:8px;font-size:13px;pointer-events:none;opacity:0;transition:opacity .2s,transform .2s;z-index:300}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* ---- 页脚 ---- */
.footbar{font-size:13px;text-align:center;flex-shrink:0;color:#888;padding:25px 0}
.footer-container{margin-top:44px}
.footer-logo{text-align:center;padding:20px 0 10px}
.footer-logo img{max-height:100px;max-width:250px}
.footer-description{text-align:center;padding:20px 0 10px;color:#94a3b8;font-size:.85rem}
.footer-copyright{text-align:center;padding:0 0 30px;color:#64748b;font-size:.85rem}
.footer-copyright a{color:#5268ff;text-decoration:none;font-weight:600;cursor:pointer}
.footer-copyright a:hover{color:#4577fc}
.footer-divider{margin:0 8px;color:#94a3b8}
.footer-friendly-links{text-align:center;padding:0 0 16px;display:flex;flex-wrap:wrap;justify-content:center;gap:14px}
.footer-friendly-links a{color:#64748b;text-decoration:none;font-size:.85rem;transition:color .2s}
.footer-friendly-links a:hover{color:#5268ff}
.container-fluid-custom{max-width:720px;padding:0 20px;margin:auto;width:100%;position:relative;z-index:1}
@media(max-width:540px){.container-fluid-custom{padding:0 14px}}

/* ---- 导航栏 ---- */
#mainNav{position:fixed;top:0;left:0;right:0;z-index:1000;background:rgba(255,255,255,0.92);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(148,163,184,0.1);padding:10px 0;transform:translateY(-100%);transition:transform .3s ease}
#mainNav.show{transform:translateY(0)}
#mainNav .nav-inner{max-width:720px;margin:auto;padding:0 20px;display:flex;align-items:center;gap:16px}
#mainNav .nav-inner a{display:flex;align-items:center}
#mainNav .nav-inner img{height:40px;object-fit:contain}

/* ---- 资源详情弹窗 ---- */
.transfer-modal{position:fixed;inset:0;z-index:200;background:rgba(15,23,42,0.55);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;padding:16px;animation:transfer-fade-in .2s ease-out}
.transfer-modal[hidden]{display:none!important}
@keyframes transfer-fade-in{from{opacity:0}to{opacity:1}}
.transfer-modal-box{width:100%;max-width:400px;max-height:90vh;overflow-y:auto;background:#fff;border-radius:16px;box-shadow:0 20px 60px rgba(15,23,42,0.25);animation:transfer-pop-in .25s cubic-bezier(0.2,0.7,0.3,1);display:flex;flex-direction:column}
@keyframes transfer-pop-in{from{transform:translateY(16px) scale(.96);opacity:0}to{transform:translateY(0) scale(1);opacity:1}}
.transfer-header{display:flex;align-items:center;justify-content:space-between;padding:18px 22px 12px}
.transfer-title{font-size:16px;font-weight:600;color:#1f2937;display:flex;align-items:center;gap:8px}
.transfer-close{background:none;border:none;color:#9ca3af;font-size:22px;line-height:1;cursor:pointer;width:30px;height:30px;border-radius:6px;transition:background .15s,color .15s}
.transfer-close:hover{background:#f3f4f6;color:#1f2937}
.transfer-body{padding:20px 35px 30px}
.transfer-loading{text-align:center;padding:20px 0}
.transfer-loading .spinner{display:inline-block;width:40px;height:40px;border:3px solid #e5e7eb;border-top-color:#5268ff;border-radius:50%;animation:spin .6s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.transfer-loading-text{font-size:14px;color:#6b7280;margin-top:12px}
.transfer-result{padding:14px}
.transfer-result-title{font-size:18px;font-weight:600;color:#15803d;margin-bottom:5px;word-break:break-all;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:1;line-clamp:1;overflow:hidden;text-align:center}
.transfer-result-link{display:flex;align-items:center;gap:8px;margin-bottom:10px;flex-wrap:wrap}
.transfer-result-link .k{font-size:12px;color:#6b7280;width:56px;flex-shrink:0}
.link-box{flex:1;min-width:0;background:#fff;border:1px solid #d1fae5;border-radius:6px;padding:6px 8px;overflow:hidden}
.result-link{color:#2563eb;font-size:12px;word-break:break-all;line-height:1.5;text-decoration:none}
.result-link:hover{text-decoration:underline}
.transfer-result-pwd{display:flex;align-items:center;gap:8px;margin-bottom:14px;flex-wrap:wrap}
.transfer-result-pwd .k{font-size:12px;color:#6b7280;width:56px;flex-shrink:0}
.pwd-code{background:#fff;border:1px solid #d1fae5;color:#15803d;padding:4px 10px;border-radius:6px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px}
.transfer-actions{display:flex;gap:12px;margin-top:18px}
.transfer-actions .transfer-btn{flex:1;padding:13px 0;font-size:15px;font-weight:600;border-radius:12px;text-align:center;display:inline-flex;align-items:center;justify-content:center;min-height:48px;transition:filter .15s,box-shadow .15s;cursor:pointer;border:none}
.transfer-actions .transfer-btn:active{filter:brightness(.95)}
.transfer-copy{background:#fff!important;color:#2356dc!important;border:1.5px solid #c7d2fe!important}
.transfer-copy:hover{background:#f4f7ff!important;border-color:#2356dc!important}
.transfer-open{background:linear-gradient(135deg,#22c55e,#16a34a)!important;color:#fff!important;border:1.5px solid transparent!important;box-shadow:0 4px 12px rgba(34,197,94,.25)}
.transfer-open:hover{background:linear-gradient(135deg,#34d977,#17bd56)!important;color:#fff!important}
.transfer-warning{background:#fffbeb;border:1px solid #fef3c7;border-radius:10px;padding:10px 14px;margin-bottom:12px;font-size:13px;color:#92400e}

/* ---- 移动端响应式 ---- */
@media(max-width:720px){
  .transfer-modal{padding:0;align-items:flex-end}
  .transfer-modal-box{max-width:100%;max-height:92vh;border-radius:16px 16px 0 0;animation:transfer-sheet-up .25s cubic-bezier(0.2,0.7,0.3,1)}
  @keyframes transfer-sheet-up{from{transform:translateY(100%)}to{transform:translateY(0)}}
  .brand{height:230px;margin-bottom:35px}
  .brand.shrink{height:55px;margin-bottom:20px}
  .search{padding:0 15px}
  .home{max-width:100%;padding:0 20px}
  .brand-logo{display:inline-block;transition:width .4s ease}
  .brand.shrink .brand-logo{width:150px}
  .brand-slogan{display:none}
  .brand-subtitle{display:none}
  .orbit{height:180px;margin:0 -15px}
  .link-item{position:relative;gap:0}
  .link-type{display:none}
  .link-actions{display:flex;flex-direction:row;gap:6px;flex-shrink:0;align-items:center}
  .link-actions .js-check{display:none}
  .link-actions .js-view{position:absolute;right:0;bottom:0;border-radius:10px 0}
  .state{position:static;border-radius:50px}
  .link-meta{font-size:12px}
  .state-checking{background:#f7f8f9}
  .link-note{margin-bottom:8px;font-size:14px}
  .cat-list{padding-left:0;padding-right:0}
  .transfer-body{padding:16px 20px 24px}
}

/* ---- 分类浏览区（首页） ---- */
.category-tab-bar{margin-top:16px}
.category-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:8px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
.category-tabs::-webkit-scrollbar{display:none}
.category-tab{flex-shrink:0;padding:6px 14px;border-radius:999px;font-size:14px;color:#4b5563;background:#f3f4f6;cursor:pointer;transition:background .15s,color .15s;white-space:nowrap}
.category-tab.active{background:#5268ff;color:#fff}
.category-tab:hover{background:#eef2ff}
.category-tab.tab-more{color:#5268ff;background:transparent}
.resource-list{margin-top:12px}
.resource-item{display:flex;gap:12px;padding:12px;border:1px solid #e5e7eb;border-radius:10px;margin-bottom:8px;transition:background .15s;text-decoration:none;color:inherit}
.resource-item:hover{background:#f7fcff}
.resource-thumb{width:40px;height:40px;border-radius:8px;background:#eef2ff;color:#5268ff;display:flex;align-items:center;justify-content:center;font-size:18px;font-weight:700;flex-shrink:0}
.resource-info{flex:1;min-width:0}
.resource-title{font-size:14px;font-weight:600;color:#1f2937;margin-bottom:4px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.resource-meta{display:flex;gap:10px;font-size:12px;color:#9ca3af}
.resource-platform{margin-top:4px}
.platform-badge{font-size:11px;color:#5268ff;background:#eef2ff;padding:2px 8px;border-radius:4px}

/* ---- 影视热搜榜 ---- */
.yingshi-ranking-section{margin-top:30px}
.yingshi-ranking-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;flex-wrap:wrap;gap:10px}
.yingshi-ranking-title{font-size:18px;font-weight:700;color:#1f2937}
.yingshi-channel-tabs{display:flex;gap:6px;flex-wrap:wrap}
.yingshi-channel-tab{padding:4px 12px;border-radius:999px;font-size:13px;color:#4b5563;background:#f3f4f6;cursor:pointer;transition:background .15s;white-space:nowrap}
.yingshi-channel-tab.active{background:#5268ff;color:#fff}
.yingshi-channel-tab:hover{background:#eef2ff}
.yingshi-ranking-loading{display:flex;align-items:center;justify-content:center;padding:40px;color:#9ca3af;font-size:14px}
.yingshi-ranking-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:12px}
.yingshi-card{cursor:pointer;transition:transform .15s}
.yingshi-card:hover{transform:translateY(-2px)}
.yingshi-card-poster{position:relative;width:100%;aspect-ratio:2/3;border-radius:8px;overflow:hidden;background:#f3f4f6}
.ys-poster-img{width:100%;height:100%;object-fit:cover}
.ys-poster-fallback{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#9ca3af;font-size:24px}
.yingshi-card-rank{position:absolute;top:4px;left:4px;width:22px;height:22px;border-radius:50%;background:rgba(0,0,0,0.5);color:#fff;font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center}
.yingshi-card-rank.rank-top1{background:#f59e0b}
.yingshi-card-rank.rank-top2{background:#9ca3af}
.yingshi-card-rank.rank-top3{background:#b45309}
.yingshi-card-label{position:absolute;top:4px;right:4px;font-size:10px;padding:2px 6px;border-radius:4px;font-weight:600}
.label-hot{background:#ef4444;color:#fff}
.label-new{background:#10b981;color:#fff}
.yingshi-card-body{padding:6px 2px}
.yingshi-card-title{font-size:13px;font-weight:600;color:#1f2937;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.yingshi-card-meta{display:flex;gap:8px;margin-top:2px;font-size:11px;color:#9ca3af}
.yingshi-card-score{color:#f59e0b;font-weight:500}
.yingshi-card-hot{color:#ef4444}
.yingshi-empty{text-align:center;padding:40px;color:#9ca3af;font-size:14px;grid-column:1/-1}

/* ---- 免责声明弹窗 ---- */
.disclaimer-modal-content{border-radius:16px;border:none;box-shadow:0 20px 60px rgba(15,23,42,0.25)}
.disclaimer-modal-body{font-size:14px;color:#4b5563;line-height:1.8}
.disclaimer-note-block{margin:10px 0}
.disclaimer-note-block p{margin-bottom:6px;font-size:13px;color:#6b7280}
.disclaimer-thanks{margin-top:10px;font-weight:600;color:#1f2937}
