﻿/* AppleCMS adapter: target stylesheets provide the original theme/card rules. */
html,body{overflow-x:hidden!important}body.theme-dark.card{margin:0!important;background:#2c2a2a!important;color:#ddd!important;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Microsoft YaHei",sans-serif!important}.cg-header{position:sticky;top:0;z-index:100;border-bottom:1px solid rgba(255,255,255,.08);background:#343232}.cg-nav{display:flex;align-items:center;gap:20px;min-height:64px}.navbar-brand.text-brand{display:flex;align-items:center;gap:9px;color:#fff!important;font-size:18px!important;font-weight:700;text-decoration:none!important}.cg-logo-dot{width:10px;height:10px;border-radius:50%;background:#1abc9c}.cg-nav-links{display:flex;gap:3px}.cg-nav-links a{padding:8px 9px;border-radius:3px;color:#cfcfcf!important;font-size:14px;text-decoration:none!important}.cg-nav-links a:hover,.cg-nav-links a.active{color:#fff!important;background:rgba(255,255,255,.11)}.nav-search-container{display:flex;align-items:center;width:210px;height:34px;margin-left:auto!important;padding:0 8px!important;border:1px solid #4a4a4a;border-radius:4px!important;background:#292929!important;box-shadow:none!important}.nav-search-container .input-control{width:100%!important;color:#eee!important;background:transparent!important;border:0!important;outline:0!important;font-size:13px!important}.nav-search-container button{border:0;color:#aaa;background:transparent;font-size:18px;cursor:pointer}.cg-menu-toggle{display:none;margin-left:auto;border:0;color:#fff;background:transparent;font-size:22px}.cg-hero,.cg-page-banner{color:#fff;background:#343232}.cg-hero .container{padding-top:52px;padding-bottom:48px}.cg-page-banner .container{padding-top:36px;padding-bottom:36px}.cg-hero span,.cg-page-banner span{color:#1abc9c;font-size:12px;letter-spacing:1px}.cg-hero h1,.cg-page-banner h1{margin:8px 0 0;color:#fff;font-size:36px;font-weight:400}.cg-filter{padding-top:30px}.cg-category-nav,.cg-sort{display:flex;flex-wrap:wrap;gap:8px}.cg-category-nav{padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.12)}.cg-sort{padding:18px 0}.cg-category-nav a,.cg-sort a{padding:6px 10px;border:1px solid rgba(255,255,255,.18);border-radius:3px;color:#cfcfcf!important;font-size:13px;text-decoration:none!important}.cg-category-nav .active,.cg-category-nav a:hover,.cg-sort a:hover{border-color:#1abc9c;color:#fff!important;background:rgba(26,188,156,.18)}.cg-sort span{padding:6px 4px;color:#aaa;font-size:13px}.cg-type-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.cg-type-grid a{display:flex;justify-content:space-between;padding:17px;border:1px solid rgba(255,255,255,.14);border-radius:3px;color:#eee!important;background:#343232;text-decoration:none!important}.cg-type-grid small{color:#1abc9c}.cg-page-search{display:flex;width:min(100%,520px);border:1px solid rgba(255,255,255,.25)}.cg-page-search input{flex:1;min-width:0;padding:11px;border:0;color:#fff;background:#292929;outline:0}.cg-page-search button{padding:0 20px;border:0;color:#fff;background:#1abc9c}.cg-result-title{color:#ddd}.cg-pagination{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin-top:26px}.cg-pagination a,.cg-pagination span{min-width:34px;padding:7px 10px;border:1px solid #555;color:#ddd!important;text-align:center;text-decoration:none!important}.cg-pagination .active{border-color:#1abc9c;background:#1abc9c}.cg-detail{display:grid;grid-template-columns:300px 1fr;gap:36px;padding:48px 0}.cg-detail-cover img{display:block;width:100%;border-radius:4px}.cg-detail-copy h1{color:#fff}.cg-detail-copy p{line-height:1.85;color:#bbb}.cg-detail-copy .cg-meta{font-size:13px;color:#999}.cg-primary{display:inline-block;padding:11px 18px;color:#fff!important;background:#1abc9c;text-decoration:none!important}.cg-episodes{display:flex;flex-wrap:wrap;gap:8px;padding:16px}.cg-episodes a{padding:8px 12px;border:1px solid #555;color:#ddd!important;text-decoration:none!important}.cg-watch-intro{padding:38px 0 0}.cg-watch-head{padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,.12)}.cg-watch-head h1{margin:8px 0;color:#fff;font-size:32px}.cg-watch-head p{margin:0;color:#aaa;font-size:13px}.cg-watch-head>span,.cg-notice>span{color:#1abc9c;font-size:12px}.cg-screenshots{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.cg-screenshots img{display:block;width:100%;height:165px;object-fit:cover}.cg-watch-content{padding:18px 0}.cg-watch-content h2,.cg-notice h2{margin:0 0 10px;color:#fff;font-size:20px}.cg-watch-content p,.cg-notice p{margin:0;color:#bbb;line-height:1.8}.cg-player-wrap{position:relative;overflow:hidden;width:min(1240px,calc(100vw - 32px));height:530px;margin:16px auto 0;background:#000}.cg-player-wrap #bofang_box,.cg-player-wrap .MacPlayer,.cg-player-wrap iframe,.cg-player-wrap video{display:block;width:100%!important;height:100%!important;border:0}.cg-player-wrap #bofang_box{position:absolute;inset:0}.cg-player-wrap .MacPlayer{position:absolute!important;inset:0}.cg-after-play{padding-top:30px}.cg-notice{padding:22px;border-left:3px solid #1abc9c;background:#343232}.cg-after-play>.cg-section-head{display:flex;align-items:end;justify-content:space-between;margin:40px 0 16px}.cg-section-head span{color:#1abc9c;font-size:12px}.cg-section-head h2{margin:6px 0 0;color:#fff;font-size:23px}.cg-section-head a{color:#1abc9c!important;text-decoration:none!important}.cg-recommend-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.cg-recommend-grid a{overflow:hidden;color:#fff!important;background:#343232;text-decoration:none!important}.cg-recommend-grid img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}.cg-recommend-grid span{display:grid;gap:5px;padding:10px}.cg-recommend-grid strong{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cg-recommend-grid em{color:#aaa;font-size:12px;font-style:normal}.cg-comments{margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.12)}.cg-comments .mac_comment{min-height:110px;padding:15px;background:#343232}.cg-footer{padding:36px 0;margin-top:38px;color:#aaa;background:#242222}.cg-footer .container{display:flex;gap:18px;align-items:center;flex-wrap:wrap}.cg-footer strong{color:#fff}.cg-footer p{margin:0;flex:1}.cg-footer div{display:flex;gap:13px}.cg-footer a{color:#bbb!important;text-decoration:none!important}/* Keep the original source selectors and sizes in charge of the card itself. */body.card #index article,body.card #archive article{display:block;width:100%}body.card #index article .post-card,body.card #archive article .post-card{width:100%}body.card #index article .post-card-info,body.card #archive article .post-card-info{display:flex!important;gap:7px;align-items:center}@media(max-width:767px){.cg-nav{min-height:58px;gap:10px}.cg-menu-toggle{display:block}.cg-nav-links{position:absolute;top:58px;right:0;left:0;display:none;flex-direction:column;padding:10px 16px;background:#343232}.cg-nav-links.open{display:flex}.nav-search-container{width:150px}.cg-hero .container{padding-top:38px;padding-bottom:38px}.cg-hero h1,.cg-page-banner h1{font-size:29px}.cg-type-grid{grid-template-columns:repeat(2,1fr)}.cg-detail{grid-template-columns:1fr;padding:32px 0}.cg-detail-cover{max-width:220px}.cg-screenshots img{height:100px}.cg-player-wrap{width:calc(100% - 24px);height:auto;aspect-ratio:16/9}.cg-recommend-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:480px){.navbar-brand.text-brand{font-size:15px!important}.nav-search-container{width:124px}.cg-page-banner .container{padding-top:28px;padding-bottom:28px}.cg-type-grid{grid-template-columns:1fr}.cg-screenshots{gap:6px}.cg-screenshots img{height:76px}.cg-footer .container{display:block}.cg-footer p{margin:9px 0}.cg-footer div{flex-wrap:wrap}}


/* Source-nav DOM adapter: preserve the source navbar structure and keep it fixed. */
html,
body {
  overflow-x: hidden !important;
  overflow-y: auto !important;
}
body.theme-dark.card {
  min-height: 100vh;
}
#masthead.cg-header {
  height: 4.5rem !important;
  min-height: 4.5rem !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
}
#masthead.cg-header > #navbar.cg-navbar {
  min-height: 4.5rem;
  padding: 0.875rem 0;
  background: #343232;
  border-bottom: 1px solid rgba(255,255,255,.08);
  box-sizing: border-box;
}
#masthead.cg-header > #navbar.cg-navbar .cg-navbar-inner {
  width: min(92rem, calc(100vw - 2rem));
  max-width: 92rem;
  min-height: 2.75rem;
  padding: 0;
}
#masthead.cg-header .navbar-brand.text-brand.home-brand-logo {
  display: inline-flex;
  flex: 0 0 auto;
  width: 11.25rem;
  height: 1.625rem;
  margin-right: 1.5rem;
}
#masthead.cg-header .cg-main-nav {
  align-items: center;
  gap: 0.125rem;
}
#masthead.cg-header .cg-main-nav .nav-item {
  display: flex;
}
#masthead.cg-header .cg-main-nav .nav-link {
  display: flex;
  align-items: center;
  height: 2.5rem;
  padding: 0 0.75rem;
  border-radius: 0.25rem;
  color: #c9c9c9 !important;
  font-size: 0.9375rem;
  line-height: 1;
  text-decoration: none !important;
  transition: background .2s ease, color .2s ease;
}
#masthead.cg-header .cg-main-nav .nav-link:hover,
#masthead.cg-header .cg-main-nav .nav-link.active {
  color: #fff !important;
  background: #1f1e1e;
}
#masthead.cg-header .cg-social-toolbar {
  flex: 0 0 auto;
  margin: 0 0.875rem 0 1rem;
}
#masthead.cg-header .nav-search-container {
  flex: 0 0 auto;
  width: 13.125rem;
  height: 2.5rem;
  margin-left: 0 !important;
}
/* The content list scrolls under the fixed source navbar; it expands responsively to 1000px. */
body.card #index > .container,
body.card #archive > .container {
  width: min(1000px, calc(100vw - 2.5rem)) !important;
  max-width: 1000px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
body.card #index,
body.card #archive,
.cg-main {
  overflow: visible !important;
}
@media (max-width: 767px) {
  #masthead.cg-header {
    height: 3.875rem !important;
    min-height: 3.875rem !important;
  }
  #masthead.cg-header > #navbar.cg-navbar {
    min-height: 3.875rem;
    padding: 0.625rem 0;
  }
  #masthead.cg-header > #navbar.cg-navbar .cg-navbar-inner {
    width: calc(100vw - 1.5rem);
  }
  #masthead.cg-header .navbar-brand.text-brand.home-brand-logo {
    width: 8.5rem;
    height: 1.5rem;
    margin-right: auto;
  }
  #masthead.cg-header .cg-menu-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    margin: 0 0.375rem 0 0;
    padding: 0;
    border: 0;
    color: #ddd;
    background: #2c2a2a;
    border-radius: 50%;
  }
  #masthead.cg-header .cg-nav-collapse {
    position: absolute;
    top: 100%;
    right: 0;
    left: 0;
    z-index: 892;
    max-height: calc(100vh - 3.875rem);
    overflow-y: auto;
    padding: 0.625rem 0.75rem 0.875rem;
    background: #343232;
    border-bottom: 1px solid rgba(255,255,255,.08);
  }
  #masthead.cg-header .cg-nav-collapse.show {
    display: block !important;
  }
  #masthead.cg-header .cg-main-nav {
    display: grid;
    grid-template-columns: repeat(3,minmax(0,1fr));
    width: 100%;
    gap: 0.375rem;
  }
  #masthead.cg-header .cg-main-nav .nav-link {
    justify-content: center;
    width: 100%;
    padding: 0 0.4rem;
    background: rgba(255,255,255,.05);
  }
  #masthead.cg-header .cg-social-toolbar {
    margin: 0 0.5rem 0 0;
  }
  #masthead.cg-header .cg-social-toolbar li {
    margin: 0 0.125rem;
  }
  #masthead.cg-header .nav-search-container {
    width: min(8.5rem, 30vw);
    height: 2.25rem;
  }
  body.card #index > .container,
  body.card #archive > .container {
    width: calc(100vw - 1.5rem) !important;
  }
}


/* The source theme sets #body as a viewport panel; CMS archive pages must remain document-scrollable. */
body.theme-dark.card {
  display: block !important;
  height: auto !important;
  min-height: 100vh !important;
}
body.theme-dark.card #body.bg-black {
  display: block !important;
  height: auto !important;
  min-height: calc(100vh - 4.5rem) !important;
  overflow: visible !important;
}
@media (max-width: 767px) {
  body.theme-dark.card #body.bg-black {
    min-height: calc(100vh - 3.875rem) !important;
  }
}


@media (max-width: 767px) {
  #masthead.cg-header > #navbar.cg-navbar .cg-navbar-inner {
    flex-wrap: nowrap !important;
  }
  /* Keep the source mobile bar to one fixed row; the social toolbar remains on desktop. */
  #masthead.cg-header .cg-social-toolbar {
    display: none !important;
  }
}


/* Requested source-layout refinements. */
.cg-hero,
.cg-page-banner {
  background: transparent !important;
}
/* Two-row fixed navigation: utility row above, white subcategory navigation below. */
#masthead.cg-header {
  height: 7.5rem !important;
  min-height: 7.5rem !important;
}
#masthead.cg-header > #navbar.cg-navbar {
  min-height: 7.5rem;
  padding: 0.5rem 0 0.625rem;
  background: rgba(52, 50, 50, .78) !important;
  -webkit-backdrop-filter: blur(14px);
  backdrop-filter: blur(14px);
}
#masthead.cg-header > #navbar.cg-navbar .cg-navbar-inner {
  display: block;
}
#masthead.cg-header .cg-navbar-top {
  display: flex;
  align-items: center;
  min-height: 2.75rem;
}
#masthead.cg-header .cg-navbar-top .home-brand-logo {
  margin-right: auto;
}
#masthead.cg-header .cg-social-toolbar {
  margin: 0 0.875rem 0 1rem;
}
#masthead.cg-header .cg-nav-collapse {
  display: block !important;
  width: 100%;
  min-height: 2.5rem;
  margin-top: 0.375rem;
  border-top: 1px solid rgba(255,255,255,.12);
}
#masthead.cg-header .cg-main-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-width: 0;
  overflow-x: auto;
  flex-wrap: nowrap;
  scrollbar-width: none;
}
#masthead.cg-header .cg-main-nav::-webkit-scrollbar { display: none; }
#masthead.cg-header .cg-main-nav .nav-item { flex: 0 0 auto; }
#masthead.cg-header .cg-main-nav .nav-link {
  height: 2.625rem;
  padding: 0 0.875rem;
  color: #fff !important;
  font-size: 1.0625rem;
  font-weight: 500;
}
#masthead.cg-header .cg-main-nav .nav-link:hover,
#masthead.cg-header .cg-main-nav .nav-link.active {
  background: rgba(255,255,255,.14);
  color: #fff !important;
}
body.card #index article .post-card,
body.card #archive article .post-card,
body.card #index article .post-card-mask,
body.card #archive article .post-card-mask,
body.card #index article .blog-background,
body.card #archive article .blog-background {
  border-radius: 0 !important;
}
body.card #index article .post-card-title,
body.card #archive article .post-card-title {
  font-size: 18px !important;
}
/* Keep every player-page region on the same responsive 1000px content rail. */
.cg-watch-intro.container,
.cg-after-play.container,
.cg-player-wrap {
  width: min(1000px, calc(100vw - 2.5rem)) !important;
  max-width: 1000px !important;
}
.cg-player-wrap {
  height: 530px;
}
#footer.cg-footer {
  margin-top: 3rem;
  padding: 0;
  background: #242222;
}
#footer.cg-footer .container {
  display: block;
  width: min(1000px, calc(100vw - 2.5rem));
  max-width: 1000px;
  padding: 1.25rem 0 1.875rem;
}
#footer.cg-footer .protocol {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 0.75rem 1.5rem;
}
#footer.cg-footer .protocol a {
  color: #939292 !important;
  font-size: 0.875rem;
  font-weight: 500;
  text-decoration: none !important;
}
#footer.cg-footer .protocol a:hover { color: #fff !important; }
@media (max-width: 767px) {
  #masthead.cg-header {
    height: 6.5rem !important;
    min-height: 6.5rem !important;
  }
  #masthead.cg-header > #navbar.cg-navbar {
    min-height: 6.5rem;
    padding: 0.375rem 0 0.5rem;
  }
  #masthead.cg-header .cg-navbar-top { min-height: 2.5rem; }
  #masthead.cg-header .cg-navbar-top .home-brand-logo { width: 7.25rem; }
  #masthead.cg-header .cg-nav-collapse {
    display: block !important;
    position: static;
    max-height: none;
    overflow: hidden;
    margin-top: 0.25rem;
    padding: 0;
    border-bottom: 0;
    background: transparent;
  }
  #masthead.cg-header .cg-main-nav {
    display: flex;
    justify-content: flex-start;
    gap: 0.25rem;
  }
  #masthead.cg-header .cg-main-nav .nav-link {
    height: 2.375rem;
    padding: 0 0.75rem;
    font-size: 1rem;
    background: transparent;
  }
  #masthead.cg-header .cg-menu-toggle { display: none !important; }
  .cg-watch-intro.container,
  .cg-after-play.container,
  .cg-player-wrap {
    width: calc(100vw - 1.5rem) !important;
  }
  .cg-player-wrap { height: auto; }
  body.theme-dark.card #body.bg-black { min-height: calc(100vh - 6.5rem) !important; }
  #footer.cg-footer .container { width: calc(100vw - 1.5rem); }
}

/* Keep the second navigation row horizontal on small screens. */
@media (max-width: 767px) {
  #masthead.cg-header .cg-main-nav {
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
  }
  #masthead.cg-header .cg-main-nav .nav-item {
    width: auto !important;
    min-width: max-content !important;
  }
}

/* Source navigation: two category rows on the left, social icons on the right. */
#masthead.cg-header {
  height: 6.75rem !important;
  min-height: 6.75rem !important;
}
#masthead.cg-header > #navbar.cg-navbar {
  min-height: 6.75rem !important;
  padding: 0.375rem 0 !important;
  background: rgba(52, 50, 50, .78) !important;
}
#masthead.cg-header > #navbar.cg-navbar .cg-navbar-inner {
  display: flex !important;
  align-items: center !important;
  gap: 1.125rem;
  height: 6rem;
}
#masthead.cg-header .cg-category-stack {
  display: grid;
  grid-template-rows: repeat(2, minmax(0, 1fr));
  flex: 1 1 auto;
  min-width: 0;
  height: 100%;
}
#masthead.cg-header .cg-category-stack .cg-main-nav {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  width: 100%;
  min-width: 0;
  height: 3rem;
  margin: 0 !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scrollbar-width: none;
}
#masthead.cg-header .cg-category-stack .cg-main-nav::-webkit-scrollbar { display: none; }
#masthead.cg-header .cg-category-stack .cg-main-nav .nav-item {
  flex: 0 0 auto;
  width: auto !important;
}
#masthead.cg-header .cg-category-stack .cg-nav-heading {
  display: flex;
  flex: 0 0 3.75rem;
  align-items: center;
  color: #fff;
  font-size: 1.125rem;
  font-weight: 700;
  letter-spacing: .04em;
}
#masthead.cg-header .cg-category-stack .nav-link {
  display: flex;
  align-items: center;
  height: 2.5rem;
  padding: 0 .8rem;
  color: #fff !important;
  font-size: 1rem;
  font-weight: 500;
  white-space: nowrap;
}
#masthead.cg-header .cg-category-stack .nav-link:hover,
#masthead.cg-header .cg-category-stack .nav-link.active {
  color: #fff !important;
  background: rgba(255, 255, 255, .14);
}
#masthead.cg-header .cg-social-toolbar {
  display: flex !important;
  flex: 0 0 auto;
  align-items: center;
  justify-content: flex-end;
  gap: .5rem;
  margin: 0 !important;
  padding: 0 !important;
}
#masthead.cg-header .cg-social-toolbar li { margin: 0 !important; }
#masthead.cg-header .cg-social-toolbar a {
  display: flex !important;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  border: 1px solid rgba(255, 255, 255, .26);
  border-radius: 50%;
  color: #fff !important;
  font-size: 1rem;
  text-decoration: none !important;
}
#masthead.cg-header .cg-social-toolbar a:hover {
  background: rgba(255, 255, 255, .16);
  border-color: rgba(255, 255, 255, .56);
}
/* The heading strip shares the same visual ground as the source navigation. */
.cg-hero,
.cg-page-banner {
  background: rgba(52, 50, 50, .78) !important;
  border-bottom: 1px solid rgba(255, 255, 255, .08);
}
@media (max-width: 767px) {
  #masthead.cg-header {
    height: 6.25rem !important;
    min-height: 6.25rem !important;
  }
  #masthead.cg-header > #navbar.cg-navbar {
    min-height: 6.25rem !important;
  }
  #masthead.cg-header > #navbar.cg-navbar .cg-navbar-inner {
    gap: .5rem;
    height: 5.5rem;
  }
  #masthead.cg-header .cg-category-stack .cg-main-nav { height: 2.75rem; }
  #masthead.cg-header .cg-category-stack .cg-nav-heading {
    flex-basis: 3.25rem;
    font-size: 1rem;
  }
  #masthead.cg-header .cg-category-stack .nav-link {
    height: 2.25rem;
    padding: 0 .6rem;
    font-size: .9375rem;
  }
  #masthead.cg-header .cg-social-toolbar {
    display: flex !important;
    gap: .25rem;
  }
  #masthead.cg-header .cg-social-toolbar a {
    width: 1.65rem;
    height: 1.65rem;
    font-size: .8rem;
  }
  body.theme-dark.card #body.bg-black { min-height: calc(100vh - 6.25rem) !important; }
}

/* Restore the backend-configured logo at the source theme size. */
#masthead.cg-header .home-brand-logo {
  display: flex !important;
  flex: 0 0 11.25rem;
  width: 11.25rem;
  height: 1.625rem;
  margin: 0 !important;
  overflow: hidden;
}
#masthead.cg-header .home-brand-logo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: left center;
}
/* Make the homepage and list heading strips a stable source-nav grey. */
.cg-hero,
.cg-page-banner {
  background: #343232 !important;
}
@media (max-width: 767px) {
  #masthead.cg-header .home-brand-logo {
    flex-basis: 7.25rem;
    width: 7.25rem;
    height: 1.25rem;
  }
}

/* Keep the full-width title strips uniform instead of allowing the inner container to show through. */
.cg-hero > .container,
.cg-page-banner > .container {
  background: #343232 !important;
}

/* The target sheet colors its centered content rail; override it with a more specific full-strip rule. */
body.theme-dark.card .cg-main > .cg-hero > .container,
body.theme-dark.card .cg-main > .cg-page-banner > .container {
  background: #343232 !important;
}
/* Recommendation titles stay visible in a dedicated caption below each cover. */
.cg-recommend-grid .cg-recommend-caption {
  display: block !important;
  min-height: 3.875rem;
  padding: .7rem .75rem .8rem;
  background: #343232;
}
.cg-recommend-grid .cg-recommend-caption strong {
  display: block !important;
  overflow: hidden;
  color: #fff;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.4;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cg-recommend-grid .cg-recommend-caption em {
  display: block !important;
  margin-top: .25rem;
  overflow: hidden;
  color: #aaa;
  font-size: .75rem;
  font-style: normal;
  line-height: 1.3;
  text-overflow: ellipsis;
  white-space: nowrap;
}
/* The source card sheet can crop card children; reserve a visible caption row below every recommendation cover. */
.cg-recommend-grid > a {
  display: flex !important;
  flex-direction: column !important;
  height: auto !important;
  min-height: 0 !important;
  overflow: visible !important;
}
.cg-recommend-grid > a > img {
  display: block !important;
  flex: 0 0 auto !important;
}
.cg-recommend-grid > a > .cg-recommend-caption {
  position: relative !important;
  z-index: 2 !important;
  flex: 0 0 auto !important;
  width: 100% !important;
  height: auto !important;
  max-height: none !important;
  visibility: visible !important;
  opacity: 1 !important;
  box-sizing: border-box !important;
}
.cg-recommend-grid > a > .cg-recommend-caption strong,
.cg-recommend-grid > a > .cg-recommend-caption em {
  position: static !important;
  visibility: visible !important;
  opacity: 1 !important;
}
/* Center the cover title and metadata for every homepage/archive card. */
body.card #index article .post-card,
body.card #archive article .post-card{position:relative;overflow:hidden}
body.card #index article .blog-background,
body.card #archive article .blog-background{transform:scale(1);transform-origin:center center;transition:transform .42s ease;will-change:transform}
body.card #index article.scale-up:hover .blog-background,
body.card #archive article.scale-up:hover .blog-background{transform:scale(1.08)}
body.card #index article .post-card-container,
body.card #archive article .post-card-container{top:0;right:0;bottom:0;left:0;min-height:0!important;height:100%!important;padding:1rem!important;text-align:center!important;background:rgba(0,0,0,.30)!important}
body.card #index article .post-card-title,
body.card #archive article .post-card-title{position:absolute;top:50%;right:1rem;left:1rem;max-height:3em!important;margin:0!important;overflow:hidden;text-align:center!important;text-shadow:0 2px 6px rgba(0,0,0,.88);transform:translateY(-50%);-webkit-line-clamp:2!important}
body.card #index article .post-card-info,
body.card #archive article .post-card-info{position:absolute;top:calc(50% + 1.9rem);right:1rem;left:1rem;display:flex!important;flex-wrap:wrap;justify-content:center;gap:0 .4rem;margin:0!important;color:rgba(255,255,255,.88)!important;font-size:12px!important;line-height:1.5;text-align:center!important;text-shadow:0 1px 3px rgba(0,0,0,.8)}
@media (max-width:767px){body.card #index article .post-card-title,body.card #archive article .post-card-title{right:.65rem;left:.65rem;font-size:16px!important}body.card #index article .post-card-info,body.card #archive article .post-card-info{top:calc(50% + 1.7rem);right:.5rem;left:.5rem;font-size:11px!important}}
/* Top-right social buttons: use the Font Awesome brand fonts already bundled by the target stylesheet. */
#masthead.cg-header .cg-social-toolbar {
  align-self: center;
  padding-right: .25rem !important;
}
#masthead.cg-header .cg-social-toolbar .cg-social-icon {
  transition: transform .18s ease, background-color .18s ease, border-color .18s ease;
}
#masthead.cg-header .cg-social-toolbar .cg-social-icon i {
  display: block;
  line-height: 1;
}
#masthead.cg-header .cg-social-toolbar .cg-social-icon:hover {
  transform: translateY(-1px);
}

/* Player-page corrections: enlarge the uploaded logo and keep recommendation cards constrained. */
#masthead.cg-header .home-brand-logo {
  flex-basis: 14rem;
  width: 14rem;
  height: 2rem;
}
.cg-after-play .cg-recommend-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  width: 100% !important;
  margin: 0 !important;
  gap: .75rem !important;
}
.cg-after-play .cg-recommend-grid > a {
  display: flex !important;
  flex-direction: column !important;
  min-width: 0 !important;
  max-width: 100% !important;
  height: auto !important;
  overflow: hidden !important;
}
.cg-after-play .cg-recommend-grid > a > img {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  height: auto !important;
  aspect-ratio: 16 / 10 !important;
  object-fit: cover !important;
}
@media (max-width: 767px) {
  #masthead.cg-header .home-brand-logo {
    flex-basis: 9rem;
    width: 9rem;
    height: 1.55rem;
  }
  .cg-after-play .cg-recommend-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
/* Exact backend-logo dimensions. Inline markup above uses the same values so cached style sheets cannot override them. */
#masthead.cg-header .navbar-brand.text-brand.home-brand-logo {
  display: flex !important;
  flex: 0 0 200px !important;
  width: 200px !important;
  height: 60px !important;
  min-width: 200px !important;
  max-width: none !important;
}
#masthead.cg-header .navbar-brand.text-brand.home-brand-logo > img {
  display: block !important;
  width: 200px !important;
  height: 60px !important;
  min-width: 200px !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
}
/* Align the two-row category navigation with the content rail. */
@media (min-width: 768px) {
  #masthead.cg-header .cg-category-stack {
    position: relative;
    left: -40px;
  }
}
/* duoku99_91cg play recommendation and nav alignment fix */
/* Keep the "you may also like" cards contained beneath the player. */
.cg-after-play .cg-recommend-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:12px!important;width:100%;margin:0;padding:0}
.cg-after-play .cg-recommend-grid>a{display:block!important;min-width:0;overflow:hidden;color:#fff!important;background:#343232;text-decoration:none!important}
.cg-after-play .cg-recommend-grid>a>img{display:block!important;width:100%!important;height:auto!important;max-width:100%!important;aspect-ratio:16/10;object-fit:cover}
.cg-after-play .cg-recommend-caption{display:grid!important;gap:5px;padding:10px}
.cg-after-play .cg-recommend-caption strong{display:block;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.cg-after-play .cg-recommend-caption em{display:block;color:#aaa;font-size:12px;font-style:normal}
/* Move only the two-row category navigation left; the logo and social buttons remain unchanged. */
@media(min-width:768px){#masthead.cg-header .cg-category-stack{position:relative;left:-40px}}
@media(max-width:767px){.cg-after-play .cg-recommend-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
