/* 手机端优先版电影模板 - ID: bounding973 - 风格: 网格 - 标题位置: 下方 - 对齐: 中 */
:root{
  --primary: #8B5CF6;
  --secondary: #7C3AED;
  --accent: #EC4899;
  --bg: #0F0B1E;
  --surface: #1A1B3E;
  --text: #F5F3FF;
  --border: #4C4D8C;
  --radius: 8px;
  --radius-sm: 4px;
  --shadow: 0 2px 8px rgba(0,0,0,0.15);
  --page-max-width: 450px;
  --page-padding: 12px;
  --header-height: 60px;
}

*{margin:0;padding:0;box-sizing:border-box}
body{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,sans-serif;background:var(--bg);color:var(--text);line-height:1.5;font-size:14px;min-height:100vh;display:flex;flex-direction:column;width:100%;overflow-x:hidden}
a{color:var(--text);text-decoration:none}
.page-wrapper{
  width:100%;
  max-width:var(--page-max-width);
  margin:0 auto;
  background:var(--bg);
  position:relative;
  box-shadow:0 0 20px rgba(0,0,0,0.2);
}

.container{
  max-width:var(--page-max-width);
  margin:0 auto;
  padding:0 var(--page-padding);
  width:100%;
}

.play-title{text-align:center;margin-bottom:10px}
.promo-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;margin-bottom:20px}
.promo-item{position:relative;aspect-ratio:16/9;overflow:hidden;border-radius:var(--radius);background:var(--surface);border:1px solid var(--border)}
.promo-item img{width:100%;height:100%;object-fit:cover}
.promo-overlay{position:absolute;bottom:0;left:0;right:0;padding:8px;background:linear-gradient(transparent,rgba(0,0,0,0.8));color:#fff;font-size:12px}

.header{background:var(--surface);border-bottom:1px solid var(--border);padding:12px 0;width:100%}
.header .container{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap}
.logo{display:flex;align-items:center;gap:8px}
.logo-icon{font-size:24px}
.logo h1{font-size:18px;font-weight:600}

.nav{background:var(--surface);border-bottom:1px solid var(--border);width:100%}
.nav .container{display:flex;align-items:center;height:44px}
.nav-list{display:flex;list-style:none;gap:16px;overflow-x:auto;white-space:nowrap;padding:0 8px;scrollbar-width:none}
.nav-list::-webkit-scrollbar{display:none}
.nav-link{display:flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--radius-sm);font-size:13px;transition:all 0.3s}
.nav-link:hover,.nav-link.active{background:var(--primary);color:#fff}

.search-box{width:100%;margin:10px 0}
.search-form{display:flex;height:40px}
.search-input{flex:1;padding:0 12px;border:none;border-radius:var(--radius-sm) 0 0 var(--radius-sm);font-size:14px;outline:none}
.search-btn{background:var(--accent);color:#fff;border:none;padding:0 16px;border-radius:0 var(--radius-sm) var(--radius-sm) 0;cursor:pointer;font-size:14px}

.user-actions{display:flex;gap:8px}
.btn-login{padding:4px 12px;border-radius:var(--radius-sm);background:rgba(255,255,255,0.1);color:#fff;font-size:13px}

.banner{background:linear-gradient(135deg,var(--primary),var(--secondary));padding:20px 0;text-align:center;width:100%}
.banner .container{padding:0 var(--page-padding)}
.banner h2{font-size:18px;font-weight:600;color:#fff}
.main{padding:20px 0;flex:1;width:100%}
.section{margin-bottom:30px;width:100%}
.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:6px;border-bottom:1px solid var(--border);flex-wrap:wrap;gap:8px}
.section-title{font-size:18px;font-weight:600;display:flex;align-items:center;gap:4px;color:var(--primary)}
.section-more{padding:4px 12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:12px}
.section-more:hover{background:var(--primary);color:#fff}

.movie-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.movie-card{background:var(--surface);border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);transition:all 0.3s}
.movie-card:hover{transform:translateY(-2px);border-color:var(--primary);box-shadow:var(--shadow)}
.movie-poster{position:relative;aspect-ratio:16/9;overflow:hidden;background:#000}
.movie-poster img{width:100%;height:100%;object-fit:cover;transition:transform 0.5s}
.movie-card:hover .movie-poster img{transform:scale(1.03)}
.play-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.3);opacity:0;transition:opacity 0.3s;display:flex;align-items:center;justify-content:center}
.movie-card:hover .play-overlay{opacity:1}
.play-btn{width:36px;height:36px;background:var(--primary);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-size:16px;transform:scale(0.8);transition:all 0.3s}
.movie-card:hover .play-btn{transform:scale(1)}

.movie-badge{position:absolute;top:6px;right:6px;background:var(--accent);color:#fff;padding:2px 6px;border-radius:var(--radius-sm);font-size:10px}
.score-badge{position:absolute;top:6px;left:6px;background:rgba(0,0,0,0.8);color:#FFD700;padding:2px 6px;border-radius:var(--radius-sm);font-size:10px;display:flex;align-items:center;gap:2px}
.tag-bottom-right{position:absolute;bottom:6px;right:6px;display:flex;gap:4px}
.tag-item{background:rgba(0,0,0,0.85);color:#fff;padding:2px 6px;border-radius:var(--radius-sm);font-size:9px;display:flex;align-items:center;gap:2px}

.movie-info{padding:10px}
.movie-title{font-size:14px;font-weight:600;line-height:1.4;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

.list-view{display:flex;flex-direction:column;gap:12px}
.list-item{display:flex;align-items:center;gap:12px;padding:10px;background:var(--surface);border-radius:var(--radius);border:1px solid var(--border);transition:all 0.3s}
.list-item:hover{background:rgba(59,130,246,0.1);border-color:var(--primary);transform:translateX(2px)}
.list-index{width:24px;height:24px;background:var(--primary);color:#fff;border-radius:4px;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:12px;flex-shrink:0}
.list-poster{width:60px;height:60px;border-radius:var(--radius-sm);overflow:hidden;background:#000;flex-shrink:0}
.list-poster img{width:100%;height:100%;object-fit:cover}
.list-info{flex:1;min-width:0}
.list-title{font-weight:600;margin-bottom:4px;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.list-meta{display:flex;gap:8px;font-size:11px;opacity:0.8}

.pagination{display:flex;justify-content:center;gap:4px;margin-top:25px;flex-wrap:wrap}
.page-item{padding:6px 12px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);font-size:12px}
.page-item:hover,.page-item.active{background:var(--primary);color:#fff}

.player-wrapper{position:relative;width:100%;aspect-ratio:16/9;background:#000;border-radius:var(--radius);overflow:hidden;margin-bottom:15px}
.player-container{width:100%;height:100%;position:absolute;top:0;left:0}
.player-container video{width:100%;height:100%;object-fit:contain;background:#000}
.plyr{--plyr-color-main:var(--primary);--plyr-video-background:#000;width:100%;height:100%}
.plyr video{width:100%;height:100%;object-fit:contain}
.video-meta{display:flex;flex-wrap:wrap;gap:15px;margin-top:15px;padding:12px;background:rgba(255,255,255,0.03);border-radius:var(--radius-sm)}
.meta-item{display:flex;align-items:center;gap:4px;font-size:12px}
.meta-item i{color:var(--primary)}

.play-page .sidebar-card{margin-bottom:20px}
.play-page .section-title{font-size:16px;margin-bottom:12px}

.list-page .main{padding:20px 0}
.list-page .section-header{margin-bottom:15px}
.list-page .section-title{font-size:18px}

.footer{background:var(--surface);padding:20px 0;margin-top:auto;border-top:1px solid var(--border);width:100%}
.footer .container{text-align:center}
.footer-bottom{width:100%}
.about-us{max-width:100%;margin:0 auto 15px;font-size:12px;opacity:0.9;line-height:1.6;padding:0 5px}
.copyright{font-size:11px;opacity:0.8;margin-bottom:8px}
.seo-title{margin-top:8px;font-size:10px;opacity:0.6}
.footer-divider{margin:0 4px;opacity:0.3}

.back-top{position:fixed;bottom:20px;right:20px;width:40px;height:40px;background:var(--primary);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;opacity:0;transform:translateY(10px);transition:all 0.3s;font-size:16px;box-shadow:0 2px 8px rgba(0,0,0,0.2)}
.back-top.visible{opacity:1;transform:translateY(0)}

@media (min-width:768px){
  body{
    background:var(--bg);
    display:flex;
    justify-content:center;
    padding:20px 0;
  }
  .page-wrapper{
    border-radius:16px;
    overflow:hidden;
    box-shadow:0 10px 30px rgba(0,0,0,0.3);
  }
  .header{
    border-radius:16px 16px 0 0;
  }
  .footer{
    border-radius:0 0 16px 16px;
  }
}

