/*
Theme Name: TruyenFull
Author: NQT
Author URI: https://nqtno1.com/
Description: Giao diện đọc truyện chuyển từ client Laravel truyenv6, giữ CSS và class gốc.
Version: 1.2.6
Requires at least: 6.5
Requires PHP: 7.4
Text Domain: truyenfull
License: GNU General Public License v2 or later
*/

html, body { overflow-x: clip; }
#list-page .list > .row > div { display: block; }
.title-list.full-width { width: 100%; }
.header-logo img { width: 100%; height: 100%; object-fit: contain; }
.index-intro .item .item-img { object-fit: cover; }
#truyen-slide .list-thumbnail img { width: auto; height: auto; }
.navbar-nav .dropdown-toggle { white-space: nowrap; }
.navbar-nav .dropdown-menu .dropdown-menu { max-width: none; }
.navbar-nav .dropdown-menu .dropdown-menu a { overflow: hidden; text-overflow: ellipsis; }
.navbar-collapse.in { display: block; }
.breadcrumb h1 { display: inline; }
.breadcrumb-container > h1 { display: inline; margin: 0; font: inherit; color: inherit; }
/* Home page SEO text box */
#home-seo { margin-top: 20px; margin-bottom: 20px; }
.home-seo-box { position: relative; border: 1px solid #d9d9d9; border-radius: 4px; background: #fff; padding: 16px 20px; font-size: 14px; line-height: 1.7; color: #333; text-align: left; overflow: hidden; }
.home-seo-box.is-collapsed { max-height: 320px; }
.home-seo-box.is-collapsed::after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 80px; background: linear-gradient(rgba(255, 255, 255, 0), #fff); pointer-events: none; }
.home-seo-box h2 { font-size: 18px; font-weight: 700; margin: 22px 0 10px; text-transform: none; }
.home-seo-box h3 { font-size: 15px; font-weight: 700; margin: 16px 0 8px; }
.home-seo-box > :first-child { margin-top: 0; }
.home-seo-box > :last-child { margin-bottom: 0; }
.home-seo-box ul, .home-seo-box ol { padding-left: 22px; margin: 0 0 10px; }
.home-seo-more { text-align: center; margin-top: 10px; }
.dark-theme .home-seo-box { background: #2b2b2b; border-color: #444; color: #b1b1b1; }
.dark-theme .home-seo-box.is-collapsed::after { background: linear-gradient(rgba(43, 43, 43, 0), #2b2b2b); }
.home-seo-box a, .home-faq-answer a { color: #0b63ce; font-weight: 600; text-decoration: none; }
.home-seo-box a:hover, .home-seo-box a:focus, .home-faq-answer a:hover, .home-faq-answer a:focus { color: #084a9b; text-decoration: underline; }
.dark-theme .home-seo-box a, .dark-theme .home-faq-answer a { color: #6cb2ff; }
/* Home page FAQ accordion */
.home-faq { margin-top: 24px; text-align: left; }
.home-faq-title { font-size: 20px; font-weight: 700; margin: 0 0 10px; text-transform: none; color: #222; }
.home-faq-item { border: 1px solid #d9d9d9; border-radius: 4px; background: #fff; margin-bottom: 8px; }
.home-faq-item > summary { display: flex; align-items: center; gap: 12px; padding: 12px 16px; cursor: pointer; list-style: none; }
.home-faq-item > summary::-webkit-details-marker { display: none; }
.home-faq-item > summary::before { content: ""; flex: none; width: 9px; height: 9px; margin-top: -4px; border-right: 2px solid #555; border-bottom: 2px solid #555; transform: rotate(45deg); transition: transform .15s; }
.home-faq-item[open] > summary::before { transform: rotate(-135deg); margin-top: 4px; }
.home-faq-item > summary h3 { margin: 0; font-size: 15px; font-weight: 400; line-height: 1.4; color: #222; }
.home-faq-item > summary:focus-visible { outline: 2px solid #31708f; outline-offset: 2px; }
.home-faq-answer { padding: 0 16px 12px 37px; font-size: 14px; line-height: 1.7; color: #333; }
.home-faq-answer > :last-child { margin-bottom: 0; }
.dark-theme .home-faq-title, .dark-theme .home-faq-item > summary h3 { color: #d0d0d0; }
.dark-theme .home-faq-item { background: #2b2b2b; border-color: #444; }
.dark-theme .home-faq-item > summary::before { border-color: #aaa; }
.dark-theme .home-faq-answer { color: #b1b1b1; }
.empty-state { padding: 25px 15px; clear: both; }
.chapter-c { overflow-wrap: anywhere; }
.chapter-c p { margin-bottom: 1em; }
.chapter-c figure { max-width: 100%; }
.chapter-nav { margin: 15px 0; }
.chapter-nav select.chapter_jump { width: 160px; float: left; height: 47px; margin: 0 5px; }
.chapter-nav a.disabled { pointer-events: none; }
.toggle-nav-open { display: inline-block !important; }
.reading-start { margin: 12px 0; }
.comment-box { clear: both; margin-top: 20px; }
.comment-list { padding: 15px 0; list-style: none; }
.comment-list .children { list-style: none; padding-left: 20px; }
.comment-list article { margin-bottom: 15px; padding: 10px; border-bottom: 1px solid #ddd; }
.comment-list .comment-meta { margin-bottom: 8px; font-size: 13px; }
.comment-list .avatar-wrap img { max-width: 100%; }
.comment-form textarea, .comment-form input:not([type=checkbox]):not([type=submit]):not([type=hidden]) { width: 100%; }
.comment-form textarea { min-height: 100px; }
.comment-respond { text-align: left; }
.comment-form .submit { padding: 8px 16px; }
.user-page ul { list-style: none; padding-left: 0; }
.user-page, .login-wrapper { margin: 20px 0; }
.login-action .login-link + .login-link { margin-left: 10px; }
.user-sidebar figure img { max-width: 80px; }
.user-page .info-detail .group { overflow-wrap: anywhere; }
.site-footer { padding: 20px 0; margin-top: 30px; background: #ececec; clear: both; }
.site-footer .footer-widget + .footer-widget { margin-top: 16px; }
.site-footer .footer-widget-title { display: block; margin: 0 0 10px; font-size: 16px; font-weight: 700; }
.site-footer .footer-widget .container { width: 100%; padding-left: 0; padding-right: 0; }
.site-footer .footer-widget a { white-space: normal; overflow-wrap: anywhere; }
.site-footer ul { padding: 0; margin: 0; list-style: none; }
.site-footer li { display: inline-block; margin: 0 12px 8px 0; }
.site-footer a { white-space: nowrap; }
.dark-theme .site-footer { background: #2e3740; }
.filter-form { padding: 15px; clear: both; }
.filter-form .form-group { margin-right: 12px; }
.rating-buttons { display: inline-flex; flex-wrap: wrap; gap: 2px; }
.rating-buttons button { padding: 0; border: 0; background: transparent; line-height: 16px; }
.rating-buttons img { width: 16px; height: 16px; }
.follow button { margin: 10px 0; }
.sr-status { margin: 8px 0; }
#history-holder-side-mobile { display: none; }
a:focus-visible, button:focus-visible, input:focus-visible, select:focus-visible, textarea:focus-visible { outline: 2px solid #428bca; outline-offset: 3px; }
@media (max-width: 991px) {
  .index-intro .item .item-img { height: auto; aspect-ratio: 129 / 192; object-fit: cover; }
  #history-holder-side-mobile { display: block; }
  .multi-column { max-width: 100%; }
  .navbar-nav .multi-column .col-md-4 { width: 33.333%; float: left; padding: 0; }
  .navbar-nav .multi-column a { padding: 6px; font-size: 13px; }
}
@media (max-width: 480px) {
  .chapter-nav .btn-group a { width: 100px; }
  .chapter-nav select.chapter_jump { width: 54px; }
  .chapter-nav .btn-chapter-nav { padding: 11px 6px; }
  .toggle-nav-open { padding: 5px; left: 4px; }
  .chapter .truyen-title { max-width: calc(100% - 70px); overflow-wrap: anywhere; }
  .title-list .new-select { max-width: 90px; }
  #list-index .col-title { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
  .login-wrapper { padding: 0 15px; }
}
@media (max-width: 767px) {
  /* Home "new" list on phones: the title takes the free width, the chapter number hugs the right edge.
     The list is a CSS table elsewhere; as a table it grows to the longest title once the title's
     max-width is lifted, so on phones each row is a flex line instead. */
  #list-index .list-new { display: block; }
  #list-index .list-new > .row { display: flex; margin-left: 0; margin-right: 0; }
  #list-index .list-new > .row > .col-title { float: none; flex: 1 1 auto; min-width: 0; max-width: none; width: auto; }
  #list-index .list-new > .row > .col-chap { float: none; flex: 0 0 auto; width: auto; min-width: 53px; padding-left: 6px; padding-right: 10px !important; text-align: right; } /* !important: the base sheet forces 5px on .list > .row > div below 480px */
}
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { animation-duration: .01ms !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}
