/* MovieBox - BossV Template */
@import url('https://fonts[class~="googleapis"][class~="com"]/css?family=Asap:400,500,700|Inconsolata:400,700&display=swap');

:root {
  --accent: #e63946;
  --dark: #1d3557;
  --body-bg: #f9f8f6;
  --text: #2b2b2b;
  --text-light: #666;
  --border: #e0ddd8;
  --card-bg: #fff;
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

body {
  font-family: "Asap", sans-serif;
  background: var(--body-bg);
  color: var(--text);
  line-height: 1.6;
}

a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }

/* OUTER WRAP */
[class~="outer-wrap"] { max-width: 1200px; margin: 0 auto; padding: 0 20px; }

/* HEADER */
[class~="site-header"] {
  background: var(--dark);
  color: #fff;
  padding: 24px 0 0;
}

[class~="site-header"] [class~="outer-wrap"] {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
}

[class~="site-info"] [class~="site-title"] {
  font-family: "Inconsolata", monospace;
  font-size: 2.2rem;
  font-weight: 700;
  color: #fff;
  letter-spacing: -0.5px;
}

[class~="site-info"] [class~="site-description"] {
  font-size: 0.85rem;
  color: rgba(255,255,255,0.65);
  margin-top: 4px;
  letter-spacing: 1px;
}

[class~="main-menu"] { padding-bottom: 0; }

[class~="main-menu"] ul {
  list-style: none;
  display: flex;
  gap: 4px;
}

[class~="main-menu"] ul li a {
  display: block;
  padding: 10px 16px;
  color: rgba(255,255,255,0.75);
  font-size: 13px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  border-top: 3px solid transparent;
  transition: all 0.2s;
}

[class~="main-menu"] ul li a:hover,
[class~="main-menu"] ul li[class~="current"] a {
  color: #fff;
  border-top-color: var(--accent);
}

/* SEARCH BAR */
[class~="header-search"] {
  background: var(--dark);
  padding: 10px 0;
  border-top: 1px solid rgba(255,255,255,0.1);
}

[class~="header-search"] [class~="outer-wrap"] {
  display: flex;
  justify-content: flex-end;
}

[class~="header-search"] form {
  display: flex;
  border-radius: 4px;
  overflow: hidden;
  border: 1px solid rgba(255,255,255,0.2);
}

[class~="header-search"] input {
  background: rgba(255,255,255,0.1);
  border: none;
  outline: none;
  padding: 8px 16px;
  color: #fff;
  font-family: Asap, sans-serif;
  font-size: 13px;
  width: 220px;
}

[class~="header-search"] input::placeholder { color: rgba(255,255,255,0.5); }

[class~="header-search"] button {
  background: var(--accent);
  border: none;
  padding: 8px 16px;
  color: #fff;
  cursor: pointer;
}

/* CONTENT AREA */
[class~="content-area"] {
  display: flex;
  gap: 30px;
  padding: 30px 0;
}

[class~="main-content-area"] { flex: 1; min-width: 0; }

[class~="widget-area"] {
  width: 280px;
  flex-shrink: 0;
}

/* POSTS / MOVIE CARDS */
[class~="posts"] {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  margin: 0 -10px;
}

[class~="post"] {
  padding: 0 10px 20px;
  margin-bottom: 0;
}

[class~="post-half"] { width: 50%; }
[class~="post-one-third"] { width: 33.33%; }
[class~="post-full"] { width: 100%; }

[class~="post"] a {
  display: block;
  background: var(--card-bg);
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 2px 8px rgba(0,0,0,[class~="06"]);
  transition: transform [class~="2s"], box-shadow [class~="2s"];
  height: 100%;
}

[class~="post"] a:hover {
  transform: translateY(-4px);
  box-shadow: 0 8px 20px rgba(0,0,0,[class~="12"]);
}

[class~="post"] img {
  width: 100%;
  aspect-ratio: 16/9;
  object-fit: cover;
}

[class~="post-content"] {
  padding: 16px;
}

[class~="post-content"] h2 {
  font-family: "Inconsolata", monospace;
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--dark);
  margin-bottom: 8px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

[class~="post-content"] p {
  font-size: 0.85rem;
  color: var(--text-light);
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

/* WIDGET (sidebar) */
[class~="widget"] {
  background: var(--card-bg);
  border-radius: 6px;
  padding: 20px;
  margin-bottom: 24px;
  box-shadow: 0 2px 8px rgba(0,0,0,[class~="06"]);
}

[class~="widget-title"] {
  font-family: "Inconsolata", monospace;
  font-size: 1rem;
  font-weight: 700;
  color: var(--dark);
  border-bottom: 2px solid var(--accent);
  padding-bottom: 8px;
  margin-bottom: 16px;
}

/* SECTION TITLE (general) */
[class~="section-title"] {
  font-family: "Inconsolata", monospace;
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--dark);
  border-left: 4px solid var(--accent);
  padding-left: 12px;
  margin-bottom: 20px;
}

/* PAGINATION */
[class~="pagination-wrap"] { padding: 20px 0; display: flex; gap: 8px; justify-content: center; flex-wrap: wrap; }
[class~="pagination-wrap"] a, [class~="pagination-wrap"] span { display: inline-block; padding: 8px 16px; background: var(--card-bg); border: 1px solid var(--border); border-radius: 4px; font-size: 14px; color: var(--text); transition: all [class~="2s"]; }
[class~="pagination-wrap"] a:hover { background: var(--accent); color: #fff; border-color: var(--accent); }

/* DETAIL PAGE */
[class~="detail-wrap"] { display: flex; gap: 30px; flex-wrap: wrap; margin-bottom: 30px; }
[class~="detail-poster"] img { width: 220px; border-radius: 8px; box-shadow: 0 4px 16px rgba(0,0,0,[class~="15"]); }
[class~="detail-info"] { flex: 1; min-width: 280px; }
[class~="detail-info"] h1 { font-family: "Inconsolata", monospace; font-size: 2rem; font-weight: 700; color: var(--dark); margin-bottom: 12px; }
[class~="detail-badge"] { background: #f0f0f0; color: #555; padding: 4px 12px; border-radius: 20px; font-size: 12px; display: inline-block; margin: 0 4px 8px 0; }
[class~="detail-rating"] { color: var(--accent); font-weight: 700; font-size: 1.1rem; }
[class~="detail-desc"] { color: var(--text-light); font-size: 15px; line-height: 1.7; margin: 16px 0; }
[class~="btn-watch"] { background: var(--accent); color: #fff; border: none; padding: 12px 28px; border-radius: 6px; font-size: 15px; font-weight: 600; display: inline-flex; align-items: center; gap: 8px; text-decoration: none; font-family: Asap, sans-serif; cursor: pointer; }
[class~="btn-watch"]:hover { background: #c62935; color: #fff; }

/* PLAYER */
[class~="player-wrapper"] { position: relative; padding-bottom: 56.25%; height: 0; background: #000; border-radius: 8px; overflow: hidden; margin-bottom: 20px; }
[class~="player-wrapper"] iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none; }

/* EPISODE LIST */
[class~="episode-list"] { display: flex; flex-wrap: wrap; gap: 8px; margin: 16px 0; }
[class~="episode-list"] a { padding: 6px 14px; background: #f0f0f0; border-radius: 4px; font-size: 13px; color: var(--text); border: 1px solid var(--border); transition: all [class~="2s"]; }
[class~="episode-list"] a:hover { background: var(--accent); color: #fff; border-color: var(--accent); }

/* SEARCH */
[class~="search-page"] { padding: 40px 0; }
[class~="search-form-lg"] { display: flex; max-width: 640px; margin: 0 auto 30px; border-radius: 6px; overflow: hidden; border: 2px solid var(--accent); }
[class~="search-form-lg"] input { flex: 1; border: none; outline: none; padding: 14px 20px; font-family: Asap, sans-serif; font-size: 15px; background: #fff; color: var(--text); }
[class~="search-form-lg"] button { background: var(--accent); border: none; padding: 14px 24px; color: #fff; cursor: pointer; font-size: 15px; font-family: Asap, sans-serif; }

/* 404 */
[class~="not-found"] { text-align: center; padding: 80px 20px; }
[class~="not-found"] [class~="code"] { font-family: "Inconsolata", monospace; font-size: 120px; font-weight: 700; color: var(--accent); line-height: 1; }
[class~="not-found"] h1 { font-size: 2rem; color: var(--dark); margin: 20px 0; }
[class~="not-found"] p { color: var(--text-light); margin-bottom: 24px; }

/* NEWS */
[class~="news-item"] { display: flex; gap: 16px; background: var(--card-bg); border-radius: 6px; overflow: hidden; margin-bottom: 16px; box-shadow: 0 2px 8px rgba(0,0,0,[class~="06"]); }
[class~="news-item"] img { width: 200px; height: 130px; object-fit: cover; flex-shrink: 0; }
[class~="news-item-body"] { padding: 16px; }
[class~="news-item-title"] { font-family: "Inconsolata", monospace; font-size: 1rem; font-weight: 700; color: var(--dark); margin-bottom: 8px; }
[class~="news-item-date"] { font-size: 12px; color: var(--text-light); margin-bottom: 8px; }
[class~="news-item-excerpt"] { font-size: 13px; color: var(--text-light); }

/* ARTICLE */
[class~="article-wrap"] { max-width: 860px; margin: 0 auto; padding: 30px 0; }
[class~="article-wrap"] h1 { font-family: "Inconsolata", monospace; font-size: 2rem; font-weight: 700; color: var(--dark); margin-bottom: 16px; }
[class~="article-meta"] { color: var(--text-light); font-size: 13px; margin-bottom: 20px; padding-bottom: 16px; border-bottom: 1px solid var(--border); }
[class~="article-cover"] { width: 100%; border-radius: 8px; margin-bottom: 24px; }
[class~="article-content"] { font-size: 15px; line-height: 1.85; color: var(--text); }

/* BREADCRUMB */
[class~="breadcrumb-bar"] { font-size: 13px; color: var(--text-light); padding: 12px 0; }
[class~="breadcrumb-bar"] a { color: var(--text-light); }
[class~="breadcrumb-bar"] a:hover { color: var(--accent); }
[class~="breadcrumb-bar"] span { margin: 0 8px; }

/* FOOTER */
[class~="site-footer"] {
  background: var(--dark);
  color: rgba(255,255,255,0.75);
  padding: 40px 0 20px;
}
[class~="site-footer"] a { color: rgba(255,255,255,0.75); }
[class~="site-footer"] a:hover { color: #fff; }
[class~="footer-inner"] { display: flex; flex-wrap: wrap; gap: 40px; padding-bottom: 24px; border-bottom: 1px solid rgba(255,255,255,0.1); }
[class~="footer-brand"] [class~="site-title"] { font-family: "Inconsolata", monospace; font-size: 1.5rem; color: #fff; margin-bottom: 8px; display: block; }
[class~="footer-desc"] { font-size: 13px; max-width: 280px; }
[class~="footer-nav"] ul { list-style: none; display: flex; flex-wrap: wrap; gap: 16px; }
[class~="footer-nav"] a { font-size: 13px; }
[class~="footer-bottom"] { padding-top: 20px; text-align: center; font-size: 12px; }

/* FILTER BAR */
[class~="filter-bar"] { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 20px; padding: 16px; background: var(--card-bg); border-radius: 6px; box-shadow: 0 2px 8px rgba(0,0,0,[class~="06"]); }
[class~="filter-bar"] a { padding: 6px 14px; background: #f0f0f0; border-radius: 4px; font-size: 13px; color: var(--text); border: 1px solid var(--border); transition: all [class~="2s"]; }
[class~="filter-bar"] a:hover, [class~="filter-bar"] a[class~="active"] { background: var(--accent); color: #fff; border-color: var(--accent); }

/* RANK */
[class~="rank-section"] { margin-bottom: 30px; }
[class~="rank-list"] { counter-reset: rank; }
[class~="rank-item"] { display: flex; align-items: center; gap: 16px; padding: 12px 16px; background: var(--card-bg); border-radius: 6px; margin-bottom: 8px; box-shadow: 0 1px 4px rgba(0,0,0,[class~="04"]); counter-increment: rank; }
[class~="rank-item"]::before { content: counter(rank); font-family: "Inconsolata", monospace; font-size: 1.2rem; font-weight: 700; color: var(--accent); min-width: 28px; text-align: center; }
[class~="rank-item"] img { width: 60px; height: 80px; object-fit: cover; border-radius: 4px; flex-shrink: 0; }
[class~="rank-item-info"] { flex: 1; }
[class~="rank-item-title"] { font-family: "Inconsolata", monospace; font-weight: 700; color: var(--dark); }
[class~="rank-item-meta"] { font-size: 12px; color: var(--text-light); }

/* SITEMAP GRID */
[class~="sitemap-grid"] { display: flex; flex-wrap: wrap; gap: 8px; }
[class~="sitemap-grid"] a { display: inline-block; padding: 6px 14px; background: var(--card-bg); border: 1px solid var(--border); border-radius: 4px; font-size: 13px; color: var(--text); transition: all [class~="2s"]; }
[class~="sitemap-grid"] a:hover { background: var(--accent); color: #fff; border-color: var(--accent); }

/* RESPONSIVE */
@media (max-width: 900px) {
  [class~="content-area"] { flex-direction: column; }
  [class~="widget-area"] { width: 100%; }
  [class~="post-half"] { width: 100%; }
  [class~="post-one-third"] { width: 50%; }
}
@media (max-width: 600px) {
  [class~="post-one-third"] { width: 100%; }
  [class~="detail-wrap"] { flex-direction: column; }
  [class~="news-item"] { flex-direction: column; }
  [class~="news-item"] img { width: 100%; height: 180px; }
  [class~="site-header"] [class~="outer-wrap"] { flex-direction: column; align-items: flex-start; }
}

/* pic-list grid fix: .posts wraps ul.pic-list */
[class~="posts"] { display: block !important; }
[class~="posts"] ul[class~="pic-list"] { display: grid !important; list-style: none; padding: 0; margin: 0; gap: 12px; grid-template-columns: repeat(2, 1fr); }
@media (min-width: 576px)  { [class~="posts"] ul[class~="pic-list"] { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 768px)  { [class~="posts"] ul[class~="pic-list"] { grid-template-columns: repeat(4, 1fr); } }
@media (min-width: 1024px) { [class~="posts"] ul[class~="pic-list"] { grid-template-columns: repeat(6, 1fr); } }
[class~="posts"] ul[class~="pic-list"] li { list-style: none; }
[class~="posts"] ul[class~="pic-list"] [class~="pic-img"] img { width: 100%; aspect-ratio: 2/3; object-fit: cover; display: block; border-radius: 4px; }
/* sidebar reset */
[class~="sidebar"] ul[class~="pic-list"], [class~="widget"] ul[class~="pic-list"] { display: block !important; }

/* Logo text fallback */
[class~="logo-text"] {
    font-size: 1.5rem;
    font-weight: 700;
    color: inherit;
    text-decoration: none;
    display: inline-block;
}

/* 相关推荐网格布局 */
[class~="detail-related"] .pic-list,
[class~="detail-related"] [class*="pic-list"] {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 12px !important;
}
[class~="detail-related"] .pic-list li,
[class~="detail-related"] [class*="pic-list"] li {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
}
[class~="detail-related"] .pic-img,
[class~="detail-related"] [class*="pic-img"] {
    display: block !important;
    position: relative !important;
    aspect-ratio: 2/3 !important;
    overflow: hidden !important;
    border-radius: 6px !important;
}
[class~="detail-related"] .pic-img img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
}
[class~="detail-related"] .movie-title {
    font-size: 0.85rem !important;
    padding: 4px 0 0 !important;
    white-space: nowrap !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
}
[class~="detail-related"] .movie-title a {
    text-decoration: none !important;
}
@media (max-width: 768px) {
    [class~="detail-related"] .pic-list,
    [class~="detail-related"] [class*="pic-list"] {
        grid-template-columns: repeat(3, 1fr) !important;
    }
}
