@charset "UTF-8";
[data-theme="dark"] {
  color: #DDDDDD; }
  [data-theme="dark"], [data-theme="dark"] body {
    background-color: #1A1A1A !important; }
  [data-theme="dark"] h1, [data-theme="dark"] h2, [data-theme="dark"] h3, [data-theme="dark"] h4, [data-theme="dark"] h5, [data-theme="dark"] h6 {
    color: #EEEEEE !important; }
  [data-theme="dark"] .masthead {
    background-color: #222222 !important;
    border-bottom: 1px solid #333333 !important; }
  [data-theme="dark"] .greedy-nav {
    background: transparent !important; }
    [data-theme="dark"] .greedy-nav a {
      color: #EEEEEE !important;
      font-weight: bold !important; }
      [data-theme="dark"] .greedy-nav a:hover {
        color: #FFFFFF !important;
        text-decoration: underline !important; }
  [data-theme="dark"] .masthead__menu-item a {
    color: #EEEEEE !important;
    font-weight: bold !important; }
  [data-theme="dark"] .sidebar {
    background-color: #1A1A1A;
    color: #CCCCCC !important; }
    [data-theme="dark"] .sidebar a {
      color: #CCCCCC !important; }
      [data-theme="dark"] .sidebar a:hover {
        color: #FFFFFF !important; }
      [data-theme="dark"] .sidebar a.active-sidebar-link {
        color: #4da3ff !important; }
    [data-theme="dark"] .sidebar .author__name {
      color: #EEEEEE !important; }
    [data-theme="dark"] .sidebar .author__bio,
    [data-theme="dark"] .sidebar .author__location {
      color: #AAAAAA !important; }
  [data-theme="dark"] .page__content {
    color: #D1D5DB !important; }
    [data-theme="dark"] .page__content h1, [data-theme="dark"] .page__content h2, [data-theme="dark"] .page__content h3, [data-theme="dark"] .page__content h4, [data-theme="dark"] .page__content h5, [data-theme="dark"] .page__content h6 {
      color: #EEEEEE !important; }
    [data-theme="dark"] .page__content p, [data-theme="dark"] .page__content li, [data-theme="dark"] .page__content blockquote {
      color: #D1D5DB !important; }
    [data-theme="dark"] .page__content :not(pre) > code {
      background-color: #2D2D2D !important;
      color: #D1D5DB !important; }
  [data-theme="dark"] .archive__item-excerpt,
  [data-theme="dark"] .archive-post-excerpt,
  [data-theme="dark"] .archive-project-description,
  [data-theme="dark"] .featured-project-card__content p {
    color: #CCCCCC !important; }
  [data-theme="dark"] .highlight,
  [data-theme="dark"] pre,
  [data-theme="dark"] code,
  [data-theme="dark"] div.highlighter-rouge,
  [data-theme="dark"] figure.highlight {
    background-color: #2D2D2D !important;
    color: #D1D5DB !important;
    border-color: #333333 !important; }
  [data-theme="dark"] thead {
    background-color: #2D2D2D !important;
    border-bottom: 2px solid #444444 !important; }
  [data-theme="dark"] th {
    color: #EEEEEE !important; }
  [data-theme="dark"] td {
    border-bottom: 1px solid #333333 !important;
    color: #D1D5DB !important; }
  [data-theme="dark"] hr {
    border-color: #333333; }
  [data-theme="dark"] .page__footer {
    background-color: #222222 !important;
    border-top-color: #333333 !important; }

html {
  font-size: 15px !important; }
  @media (min-width: 48em) {
    html {
      font-size: 16px !important; } }
  @media (min-width: 64em) {
    html {
      font-size: 18px !important; } }
  @media (min-width: 80em) {
    html {
      font-size: 20px !important; } }

html, body {
  background-color: #f7f8f9 !important; }

.masthead {
  background-color: #f7f8f9 !important; }

.page .page__inner-wrap {
  margin-top: 0.5em !important; }

.page__content {
  font-size: 0.92em !important; }
  @media (max-width: 47.99em) {
    .page__content {
      font-size: 1.05rem !important;
      /* Tăng kích thước nội dung trên smartphone */ } }

@media (max-width: 47.99em) {
  .page__title {
    font-size: 1.6rem !important;
    /* Tăng kích thước tiêu đề bài viết/trang trên smartphone */ } }

@media (max-width: 47.99em) {
  .page__meta {
    font-size: 0.85rem !important;
    /* Tăng kích thước meta (ngày đăng, thời gian đọc) trên smartphone */ } }

.grid__item .page__meta {
  margin: 0 0 10px !important;
  font-size: 0.75em; }

.page__post-image {
  margin: 1em 0 1.5em; }
  .page__post-image-img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 4px; }

.site-banner {
  max-width: 1280px;
  /* Căn theo chiều rộng tối đa của layout Minimal Mistakes */
  margin: 0 auto 0 auto;
  /* Căn giữa và tăng khoảng cách phía dưới với menu */
  width: 100%;
  height: 300px;
  /* Độ cao mặc định trên desktop */
  overflow: hidden;
  border-radius: 0 0 4px 4px;
  background: transparent !important;
  /* Không có background */ }
  @media (max-width: 767px) {
    .site-banner {
      height: auto;
      /* Chiều cao header banner tự động co giãn theo hình ảnh trên mobile */
      border-radius: 0; } }
  .site-banner__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    /* Giữ nguyên hiệu ứng cover trên desktop */
    object-position: center;
    display: block; }
    @media (max-width: 767px) {
      .site-banner__image {
        height: auto;
        /* Ảnh tự động tính chiều cao theo tỷ lệ rộng trên mobile */
        object-fit: contain;
        /* Đảm bảo hình ảnh vừa khít, không bị cắt bớt */ } }

.page__hero,
.page__hero--overlay {
  display: none !important; }

.masthead {
  position: sticky;
  top: 0;
  z-index: 20;
  background-color: #ffffff;
  /* Nền trắng cho Light mode */
  padding-top: 0.6rem;
  /* Tạo khoảng cách 1rem phía trên menu */ }
  [data-theme="dark"] .masthead {
    background-color: #111111;
    /* Nền tối cho Dark mode */ }
  .masthead .masthead__inner-wrap {
    padding-top: 0;
    padding-bottom: 0;
    background-color: transparent !important;
    /* Đảm bảo đồng bộ màu nền */ }

.site-title,
.site-subtitle,
.site-logo {
  display: none !important; }

.greedy-nav {
  justify-content: flex-end;
  background: transparent !important; }
  .greedy-nav .visible-links {
    margin-left: auto;
    display: flex;
    align-items: center; }

.masthead__menu-item {
  font-size: 0.85rem !important;
  /* Text nhỏ lại */
  font-weight: bold !important;
  /* In đậm menu */
  margin-left: 0 !important;
  /* Giảm bớt khoảng cách giữa các item */ }
  .masthead__menu-item a {
    display: inline-block !important;
    text-decoration: none !important;
    position: relative;
    padding-bottom: 2px;
    color: inherit;
    transition: color 0.2s ease-in-out; }
    .masthead__menu-item a::after {
      content: "";
      position: absolute;
      left: 0;
      bottom: 0;
      width: 0;
      height: 2px;
      background-color: currentColor;
      transition: width 0.2s ease-in-out; }
  .masthead__menu-item.active a::after,
  .masthead__menu-item a:hover::after {
    width: 100% !important; }

.initial-content {
  margin-top: 1rem;
  /* Giảm khoảng cách để thanh lịch hơn, cân đối với khoảng cách từ banner */ }

/* Cấu hình các block với khoảng cách nhỏ hơn, thanh lịch hơn */
.section--featured-articles,
.section--featured-project,
.section--latest-updates {
  clear: both;
  display: block;
  width: 100%;
  margin-bottom: 2rem;
  /* Giảm khoảng cách các block lớn xuống 2rem để thanh lịch hơn */ }

/* Chỉ hiển thị bài viết nổi bật với số cột tương ứng số bài viết trên Desktop/Tablet, và 1 cột trên Mobile */
.section--featured-articles .entries-grid {
  display: grid;
  grid-template-columns: 1fr;
  /* 1 cột trên Mobile */
  gap: 1.5rem;
  /* Khoảng cách giữa các cột bài viết */ }
  @media (max-width: 47.99em) {
    .section--featured-articles .entries-grid .archive__item-title {
      font-size: 1.25rem !important;
      /* Tăng cỡ chữ tiêu đề */ }
    .section--featured-articles .entries-grid .archive__item-excerpt {
      font-size: 0.95rem !important;
      /* Tăng cỡ chữ mô tả */ }
    .section--featured-articles .entries-grid .page__meta {
      font-size: 0.85rem !important;
      /* Tăng cỡ chữ metadata */ } }
  .section--featured-articles .entries-grid.cols-1 .archive__item-teaser img {
    height: 200px;
    object-fit: cover; }
  .section--featured-articles .entries-grid.cols-2 .archive__item-teaser, .section--featured-articles .entries-grid.cols-3 .archive__item-teaser {
    display: none !important; }
  @media (min-width: 768px) {
    .section--featured-articles .entries-grid.cols-1 {
      grid-template-columns: 1fr; }
      .section--featured-articles .entries-grid.cols-1 .archive__item:has(.archive__item-teaser) {
        display: grid;
        grid-template-columns: 30% 1fr;
        column-gap: 2rem;
        row-gap: 0.25rem;
        align-items: start; }
        .section--featured-articles .entries-grid.cols-1 .archive__item:has(.archive__item-teaser) .archive__item-teaser {
          grid-column: 1;
          grid-row: 1 / 4;
          margin-bottom: 0;
          max-height: none !important; }
          .section--featured-articles .entries-grid.cols-1 .archive__item:has(.archive__item-teaser) .archive__item-teaser img {
            width: 100%;
            height: 200px;
            display: block;
            border-radius: 6px;
            object-fit: cover; }
        .section--featured-articles .entries-grid.cols-1 .archive__item:has(.archive__item-teaser) .archive__item-title {
          grid-column: 2;
          grid-row: 1;
          margin-top: 0;
          margin-bottom: 0.5rem;
          font-size: 1.15rem !important; }
        .section--featured-articles .entries-grid.cols-1 .archive__item:has(.archive__item-teaser) .page__meta {
          grid-column: 2;
          grid-row: 2;
          margin-top: 0;
          margin-bottom: 0.5rem;
          font-size: 0.75rem !important; }
        .section--featured-articles .entries-grid.cols-1 .archive__item:has(.archive__item-teaser) .archive__item-excerpt {
          grid-column: 2;
          grid-row: 3;
          margin-top: 0;
          margin-bottom: 0;
          font-size: 0.85rem !important; }
    .section--featured-articles .entries-grid.cols-2 {
      grid-template-columns: repeat(2, 1fr); }
    .section--featured-articles .entries-grid.cols-3 {
      grid-template-columns: repeat(3, 1fr); } }
  .section--featured-articles .entries-grid::after {
    display: none;
    /* Không cần dùng clear float hack nữa */ }
  .section--featured-articles .entries-grid .grid__item {
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important; }

.latest-posts-list {
  list-style: none !important;
  padding-left: 0 !important;
  margin-top: 1rem; }
  .latest-posts-list li {
    display: flex;
    align-items: center;
    padding: 0;
    /* Giảm padding dọc giúp danh sách đơn giản và nhỏ gọn */
    font-size: 0.85rem;
    border-bottom: none;
    /* Loại bỏ đường viền rườm rà */ }
    @media (max-width: 47.99em) {
      .latest-posts-list li {
        font-size: 1rem;
        /* Tăng kích thước text trên smartphone */ } }
    .latest-posts-list li time {
      font-size: 0.85rem;
      color: #888888;
      font-family: monospace;
      /* Giúp căn lề các ký tự số thẳng đều */
      margin-right: 1.5rem;
      /* Cách một khoảng thì đến tiêu đề bài viết */
      white-space: nowrap; }
      @media (max-width: 47.99em) {
        .latest-posts-list li time {
          font-size: 0.9rem;
          /* Tăng kích thước trên smartphone */ } }
    .latest-posts-list li a {
      font-weight: normal;
      /* Không cần in đậm */
      color: #0275d8;
      text-decoration: none; }
      [data-theme="dark"] .latest-posts-list li a {
        color: #4da3ff; }
      .latest-posts-list li a:hover {
        text-decoration: underline; }

.latest-updates-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem; }
  @media (min-width: 768px) {
    .latest-updates-grid {
      grid-template-columns: 1fr 1fr; } }

.featured-project-card {
  padding: 0;
  border: 1px solid #E0E0E0;
  border-radius: 6px;
  background-color: #FFFFFF;
  margin-top: 1rem;
  overflow: hidden; }
  .featured-project-card__image {
    width: 100%;
    overflow: hidden; }
    .featured-project-card__image img {
      width: 100%;
      height: auto;
      display: block;
      object-fit: cover;
      max-height: 250px; }
  .featured-project-card__content {
    padding: 1rem; }
    .featured-project-card__content h3 {
      margin-top: 0;
      font-size: 1.25rem; }
      @media (max-width: 47.99em) {
        .featured-project-card__content h3 {
          font-size: 1.4rem;
          /* Tăng kích thước trên smartphone */ } }
      .featured-project-card__content h3 a {
        color: inherit;
        text-decoration: none; }
        .featured-project-card__content h3 a:hover {
          text-decoration: underline; }
    .featured-project-card__content p {
      font-size: 0.95rem;
      color: #666666;
      margin-bottom: 1.25rem; }
      @media (max-width: 47.99em) {
        .featured-project-card__content p {
          font-size: 1.05rem;
          /* Tăng kích thước trên smartphone */ } }
      [data-theme="dark"] .featured-project-card__content p {
        color: #BBBBBB; }
    .featured-project-card__content .tech-tags {
      list-style: none !important;
      padding-left: 0 !important;
      display: flex;
      flex-wrap: wrap;
      gap: 0.5rem;
      margin-bottom: 1.25rem; }
      .featured-project-card__content .tech-tags li {
        font-size: 0.8rem;
        padding: 0.2rem 0.6rem;
        background-color: #F0F0F0;
        color: #444444;
        border-radius: 4px;
        font-weight: 500; }
        @media (max-width: 47.99em) {
          .featured-project-card__content .tech-tags li {
            font-size: 0.85rem;
            /* Tăng kích thước trên smartphone */ } }
        [data-theme="dark"] .featured-project-card__content .tech-tags li {
          background-color: #333333;
          color: #DDDDDD; }
    .featured-project-card__content .btn--primary {
      display: inline-block;
      padding: 0.4rem 1rem;
      font-size: 0.85rem;
      font-weight: bold;
      text-decoration: none;
      border: 1px solid #111111;
      color: #111111;
      background-color: transparent;
      border-radius: 4px;
      transition: all 0.2s ease-in-out; }
      @media (max-width: 47.99em) {
        .featured-project-card__content .btn--primary {
          font-size: 0.95rem;
          /* Tăng kích thước trên smartphone */ } }
      .featured-project-card__content .btn--primary:hover {
        background-color: #111111;
        color: #FFFFFF; }
      [data-theme="dark"] .featured-project-card__content .btn--primary {
        border-color: #EEEEEE;
        color: #EEEEEE; }
        [data-theme="dark"] .featured-project-card__content .btn--primary:hover {
          background-color: #EEEEEE;
          color: #111111; }
  [data-theme="dark"] .featured-project-card {
    border-color: #333333;
    background-color: #222222; }

.active-sidebar-link {
  font-weight: bold !important;
  color: #0275d8 !important;
  text-decoration: underline !important; }
  [data-theme="dark"] .active-sidebar-link {
    color: #4da3ff !important; }

.nav__list .nav__items ul li {
  margin-bottom: 0.6rem !important;
  /* Tăng khoảng cách dòng để dễ đọc hơn */
  position: relative;
  padding-left: 0.75rem !important;
  /* Tạo khoảng trống hiển thị bullet */ }
  .nav__list .nav__items ul li::before {
    content: "•";
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    color: #888888;
    font-size: 0.8rem;
    line-height: 1; }
    [data-theme="dark"] .nav__list .nav__items ul li::before {
      color: #666666; }
  .nav__list .nav__items ul li:has(a.active-sidebar-link)::before {
    color: #0275d8; }
    [data-theme="dark"] .nav__list .nav__items ul li:has(a.active-sidebar-link)::before {
      color: #4da3ff; }
  .nav__list .nav__items ul li a {
    font-size: 0.85rem !important;
    line-height: 1.35 !important;
    color: inherit;
    transition: color 0.15s ease-in-out; }
    .nav__list .nav__items ul li a:hover {
      text-decoration: underline !important; }

.archive__item-title a {
  color: #0275d8 !important;
  text-decoration: none; }
  [data-theme="dark"] .archive__item-title a {
    color: #4da3ff !important; }
  .archive__item-title a:hover {
    text-decoration: underline !important; }

.archive-posts-list,
.archive-projects-list {
  list-style: none !important;
  padding-left: 0 !important;
  margin-top: 2rem; }

.archive-post-item, .archive-project-item {
  margin-bottom: 1.5rem;
  padding-bottom: 0rem;
  border-bottom: 1px solid #E0E0E0; }
  [data-theme="dark"] .archive-post-item,
  [data-theme="dark"] .archive-project-item {
    border-bottom-color: #333333; }
  .archive-post-item:last-child, .archive-project-item:last-child {
    border-bottom: none; }

.archive-post-title,
.archive-project-title {
  margin-top: 0;
  margin-bottom: 0.5rem;
  font-size: 1.15rem !important; }
  .archive-post-title a, .archive-project-title a {
    color: #0275d8 !important;
    text-decoration: none; }
    [data-theme="dark"] .archive-post-title a,
    [data-theme="dark"] .archive-project-title a {
      color: #4da3ff !important; }
    .archive-post-title a:hover, .archive-project-title a:hover {
      text-decoration: underline !important; }

.archive-post-meta {
  font-size: 0.7rem !important;
  color: #888888;
  margin-bottom: 0.5rem;
  display: flex;
  gap: 1.5rem; }
  .archive-post-meta span {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem; }

.archive-post-excerpt, .archive-project-description {
  font-size: 0.85rem !important;
  line-height: 1.5;
  color: #555555;
  margin-top: 0;
  margin-bottom: 0.75rem !important; }
  [data-theme="dark"] .archive-post-excerpt,
  [data-theme="dark"] .archive-project-description {
    color: #CCCCCC; }

.tech-tags {
  list-style: none !important;
  padding-left: 0 !important;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-top: 0.5rem;
  margin-bottom: 0.5rem; }
  .tech-tags li {
    font-size: 0.8rem;
    padding: 0.2rem 0.6rem;
    background-color: #F0F0F0;
    color: #444444;
    border-radius: 4px;
    font-weight: 500; }
    [data-theme="dark"] .tech-tags li {
      background-color: #333333;
      color: #DDDDDD; }

.custom-post-pagination {
  clear: both;
  /* Ngăn chặn chồng lấn float từ nội dung phía trên */
  width: 100%;
  /* Chiếm trọn bề ngang */
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 1.5rem;
  margin-top: 2.5rem;
  padding-top: 1.5rem;
  border-top: 1px dashed #E0E0E0; }
  [data-theme="dark"] .custom-post-pagination {
    border-top-color: #333333; }
  .custom-post-pagination .pagination-link {
    font-size: 0.85rem;
    color: #0275d8;
    text-decoration: none;
    font-weight: bold;
    transition: color 0.15s ease-in-out; }
    [data-theme="dark"] .custom-post-pagination .pagination-link {
      color: #4da3ff; }
    .custom-post-pagination .pagination-link:hover {
      text-decoration: underline !important; }

@media (min-width: 64em) {
  .wide .page,
  .wide .archive,
  .wide .page__related,
  .wide .breadcrumbs ol {
    float: none !important;
    width: 100% !important;
    padding-inline-end: 0 !important; }

  .page:not(:has(.sidebar__right)),
  .archive:not(:has(.sidebar__right)) {
    padding-inline-end: 0 !important; } }
@media (min-width: 80em) {
  .wide .page,
  .wide .archive,
  .wide .page__related,
  .wide .breadcrumbs ol {
    float: none !important;
    width: 100% !important;
    padding-inline-end: 0 !important; }

  .page:not(:has(.sidebar__right)),
  .archive:not(:has(.sidebar__right)) {
    padding-inline-end: 0 !important; } }
#main {
  padding-inline: 0 !important; }

@media (max-width: 1280px) {
  #main {
    padding-inline: 1.5em !important; } }
.page__date {
  display: none !important; }

.page__footer {
  text-align: center !important;
  padding: 0 !important;
  /* Xóa bỏ padding của khung ngoài */
  margin-top: 1rem !important;
  /* Thu hẹp margin phía trên của toàn bộ footer */
  border-top: 1px solid #E5E5E5 !important;
  /* Viền mỏng phân cách */ }
  [data-theme="dark"] .page__footer {
    border-top-color: #2D2D2D !important; }
  .page__footer footer {
    margin-top: 0.75rem !important;
    padding: 0 1.5em 0.75rem !important;
    /* Thu gọn padding-bottom từ 2em xuống còn 0.75rem */ }
  .page__footer .page__footer-follow {
    margin-bottom: 0.25rem !important; }
    .page__footer .page__footer-follow .social-icons {
      display: flex !important;
      justify-content: center !important;
      flex-wrap: wrap !important;
      padding-left: 0 !important;
      list-style: none !important;
      gap: 1rem !important;
      margin: 0 auto 0.25rem auto !important; }
      .page__footer .page__footer-follow .social-icons li {
        margin-right: 0 !important;
        font-size: 0.8rem !important;
        /* Giảm cỡ chữ */
        color: #888888 !important; }
        [data-theme="dark"] .page__footer .page__footer-follow .social-icons li {
          color: #666666 !important; }
        .page__footer .page__footer-follow .social-icons li a {
          color: inherit !important;
          text-decoration: none;
          transition: color 0.15s ease-in-out; }
          .page__footer .page__footer-follow .social-icons li a:hover {
            color: #0275d8 !important;
            text-decoration: underline !important; }
            [data-theme="dark"] .page__footer .page__footer-follow .social-icons li a:hover {
              color: #4da3ff !important; }
        .page__footer .page__footer-follow .social-icons li strong {
          margin-right: 0.25rem !important;
          font-weight: normal !important;
          /* Không in đậm chữ Follow */
          opacity: 0.7; }
  .page__footer .page__footer-copyright {
    text-align: center !important;
    font-size: 0.75rem !important;
    /* Cỡ chữ copyright cực nhỏ gọn */
    color: #999999 !important;
    opacity: 0.7;
    margin-top: 0.25rem !important; }
    [data-theme="dark"] .page__footer .page__footer-copyright {
      color: #777777 !important; }

.masthead__menu-item--toggle {
  display: flex !important;
  align-items: center !important;
  height: 100%;
  margin-left: 1rem !important;
  /* spacing from adjacent links */
  padding-bottom: 4px;
  /* match adjacent a links vertical padding */ }

.theme-switch-wrapper {
  display: flex;
  align-items: center; }

.theme-switch {
  display: inline-block;
  height: 20px;
  position: relative;
  width: 40px;
  margin: 0; }

.theme-switch input {
  display: none; }

.slider {
  background-color: #cbd5e1;
  /* slate-300 */
  bottom: 0;
  cursor: pointer;
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  transition: .3s ease;
  border-radius: 20px; }
  .slider::after {
    content: "🌙";
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 10px;
    line-height: 1;
    opacity: 0.8; }
  .slider::before {
    background-color: #fff;
    bottom: 3px;
    content: "";
    height: 14px;
    left: 3px;
    position: absolute;
    transition: .3s ease;
    width: 14px;
    border-radius: 50%;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3);
    z-index: 2; }

input:checked + .slider {
  background-color: #4da3ff; }
  input:checked + .slider::after {
    content: "☀️";
    left: 5px;
    right: auto; }
  input:checked + .slider::before {
    transform: translateX(20px); }

/* 1. Avatar Styling */
.author__avatar {
  background: transparent !important;
  /* Không có background */ }

.author__avatar a {
  background: transparent !important;
  /* Không có background */ }

.author__avatar img {
  border-radius: 0 !important;
  border: none !important;
  padding: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  max-width: 100% !important;
  /* Tránh tràn dòng trên mobile */
  height: auto !important; }

@media (min-width: 64em) {
  .author__avatar {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin-bottom: 15px !important; }

  .author__avatar a {
    display: block !important;
    width: 100% !important; }

  .author__avatar img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 400px !important;
    object-fit: contain !important;
    /* Dùng contain để không bị crop mất góc ảnh trong suốt */ } }
/* B. Desktop Sidebar Profile (min-width: 64em) */
@media (min-width: 64em) {
  .author__avatar {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin-bottom: 15px !important; }

  .author__avatar a {
    display: block !important;
    width: 100% !important; }

  .author__avatar img {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    max-height: 400px !important;
    object-fit: contain !important; }

  .author__urls {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: left !important;
    /* Căn trái hàng ngang theo yêu cầu */
    align-items: center !important;
    gap: 10px !important;
    padding: 0 !important;
    margin: 20px 0 0 0 !important; }

  .author__urls li {
    margin: 0 !important;
    padding: 0 !important;
    display: inline-flex !important; }

  /* Buttons style */
  .author__urls a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 38px !important;
    height: 38px !important;
    border-radius: 50% !important;
    background-color: #ffffff !important;
    border: 1px solid #dcdcdc !important;
    color: #333333 !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06) !important;
    transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1) !important; }

  .author__urls a:hover {
    background-color: #f8f9fa !important;
    border-color: #b0b3b8 !important;
    color: #0275d8 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.08) !important; }

  .author__urls a span.label {
    display: none !important; }

  .author__urls a i {
    font-size: 1.1em !important;
    margin: 0 !important; }

  .author__bio {
    font-size: 0.9em !important; }

  .author__location {
    font-size: 0.75em !important; }

  /* Dark Mode buttons */
  [data-theme="dark"] .author__urls a {
    background-color: #1a1a1a !important;
    border-color: #3a3a3a !important;
    color: #d1d5db !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.3) !important; }

  [data-theme="dark"] .author__urls a:hover {
    background-color: #262626 !important;
    border-color: #555555 !important;
    color: #4da3ff !important;
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.4) !important; } }
/* C. Mobile Smartphone Sidebar Profile (max-width: 63.99em) */
@media (max-width: 63.99em) {
  .author__profile {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    text-align: center !important; }

  .author__avatar {
    display: block !important;
    width: 200px !important;
    /* Hiển thị ảnh đại diện lớn ở đầu */
    height: auto !important;
    margin: 0 auto 15px auto !important; }

  .author__avatar img {
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    object-fit: contain !important; }

  .author__content {
    display: block !important;
    padding-left: 0 !important;
    width: 100% !important; }

  .author__name {
    margin-top: 0 !important;
    margin-bottom: 8px !important;
    font-size: 1.5em !important; }

  .author__bio {
    margin-bottom: 5px !important;
    font-size: 0.9em !important; }

  .author__location {
    margin-top: 5px !important;
    margin-bottom: 15px !important;
    text-align: left !important;
    font-size: 0.9em !important; }

  /* Style Webrick follow popup dropdown */
  .author__urls {
    padding: 12px !important;
    display: none;
    flex-direction: row !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 10px !important; }

  .author__urls.is--visible {
    display: flex !important;
    /* Hiển thị dạng flex khi click Follow */ }

  .author__urls li {
    margin: 0 !important;
    padding: 0 !important;
    display: inline-flex !important; }

  .author__urls a {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 38px !important;
    height: 38px !important;
    border-radius: 50% !important;
    background-color: #ffffff !important;
    border: 1px solid #dcdcdc !important;
    color: #333333 !important;
    padding: 0 !important;
    margin: 0 !important;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.06) !important; }

  .author__urls a span.label {
    display: none !important; }

  .author__urls a i {
    font-size: 1.1em !important;
    margin: 0 !important; }

  /* Dark mode support for Webrick follow popup dropdown background and arrow */
  [data-theme="dark"] .author__urls {
    background-color: #1a1a1a !important;
    /* Nền tối ở dark mode */
    border-color: #333333 !important;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.5) !important; }

  [data-theme="dark"] .author__urls::before {
    border-bottom-color: #333333 !important; }

  [data-theme="dark"] .author__urls::after {
    border-bottom-color: #1a1a1a !important; }

  /* Dark mode support for buttons inside popup */
  [data-theme="dark"] .author__urls a {
    background-color: #2b2b2b !important;
    border-color: #444444 !important;
    color: #e0e0e0 !important; } }
/* Hide checkbox and mobile button by default (Desktop) */
.nav-menu-toggle {
  display: none !important; }

.nav-menu-btn {
  display: none !important; }

/* Custom Nav layout on desktop */
.custom-nav {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  width: 100% !important; }

.custom-nav .visible-links {
  display: flex !important;
  align-items: center !important;
  list-style: none !important;
  margin: 0 1.2rem 0.4rem 0 !important;
  /* Tạo khoảng cách với nút theme switch */
  padding: 0 !important; }

.custom-nav .visible-links li {
  margin: 0 1.2rem !important;
  list-style: none !important; }

.custom-nav .visible-links li a {
  text-decoration: none !important;
  font-weight: 600 !important;
  color: #6f777d !important;
  transition: color 0.2s ease-in-out !important; }

.custom-nav .visible-links li a:hover {
  color: #111111 !important; }

[data-theme="dark"] .custom-nav .visible-links li a {
  color: #b0b3b8 !important; }

[data-theme="dark"] .custom-nav .visible-links li a:hover {
  color: #ffffff !important; }

/* Single Theme toggle container on desktop */
.theme-toggle-container {
  display: block !important;
  margin-bottom: 0.4rem !important; }

/* Mobile Screens (max-width: 47.99em) */
@media (max-width: 47.99em) {
  .custom-nav {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: space-between !important;
    align-items: center !important;
    width: 100% !important;
    position: relative !important;
    padding: 5px 0 !important;
    box-sizing: border-box !important; }

  /* Show Hamburger button on the left */
  .nav-menu-btn {
    display: flex !important;
    align-items: center !important;
    cursor: pointer !important;
    height: 30px !important;
    width: 30px !important;
    user-select: none !important;
    order: 1 !important; }

  .nav-menu-btn .navicon {
    background: #6f777d !important;
    display: block !important;
    height: 2px !important;
    position: relative !important;
    transition: background 0.2s ease-out !important;
    width: 22px !important; }

  [data-theme="dark"] .nav-menu-btn .navicon {
    background: #d1d5db !important; }

  .nav-menu-btn .navicon::before,
  .nav-menu-btn .navicon::after {
    background: #6f777d !important;
    content: '' !important;
    display: block !important;
    height: 100% !important;
    position: absolute !important;
    transition: all 0.2s ease-out !important;
    width: 100% !important; }

  [data-theme="dark"] .nav-menu-btn .navicon::before,
  [data-theme="dark"] .nav-menu-btn .navicon::after {
    background: #d1d5db !important; }

  .nav-menu-btn .navicon::before {
    top: 6px !important; }

  .nav-menu-btn .navicon::after {
    top: -6px !important; }

  /* Show Theme switcher on the right */
  .theme-toggle-container {
    display: block !important;
    order: 2 !important;
    margin-bottom: 0 !important; }

  /* Dropdown Menu overlay */
  .custom-nav .visible-links {
    display: none !important;
    /* Hidden by default */
    flex-direction: column !important;
    width: 100% !important;
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    background-color: #ffffff !important;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.08) !important;
    border: 1px solid rgba(0, 0, 0, 0.05) !important;
    border-radius: 6px !important;
    padding: 10px 0 !important;
    margin: 5px 0 0 0 !important;
    z-index: 9999 !important;
    order: 3 !important; }

  [data-theme="dark"] .custom-nav .visible-links {
    background-color: #1d2021 !important;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.5) !important;
    border-color: #333333 !important; }

  .custom-nav .visible-links li {
    width: 100% !important;
    margin: 0 !important;
    text-align: center !important; }

  .custom-nav .visible-links li a {
    display: block !important;
    padding: 14px 0 !important;
    font-size: 1.15rem !important;
    /* Tăng cỡ chữ lên 1 bậc */
    font-weight: 500 !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.03) !important; }

  [data-theme="dark"] .custom-nav .visible-links li a {
    border-bottom-color: rgba(255, 255, 255, 0.03) !important; }

  .custom-nav .visible-links li:last-child a {
    border-bottom: none !important; }

  /* Toggling logic */
  .nav-menu-toggle:checked ~ .visible-links {
    display: flex !important; }

  /* Hamburger to X animation */
  .nav-menu-toggle:checked ~ .nav-menu-btn .navicon {
    background: transparent !important; }

  .nav-menu-toggle:checked ~ .nav-menu-btn .navicon::before {
    transform: rotate(-45deg) !important;
    top: 0 !important; }

  .nav-menu-toggle:checked ~ .nav-menu-btn .navicon::after {
    transform: rotate(45deg) !important;
    top: 0 !important; } }
/* 4. Hide Page Title Override */
.hide-title .page__title {
  display: none !important; }

/* ============================================================
   POST ATTACHMENTS STYLE
   ============================================================ */
.post-attachments {
  margin: 2rem 0 !important;
  padding: 1.25rem !important;
  border: 1px solid #E0E0E0 !important;
  border-radius: 6px !important;
  background-color: #fafbfc !important; }
  .post-attachments h4 {
    margin-top: 0 !important;
    margin-bottom: 0.75rem !important;
    font-size: 1rem !important;
    font-weight: bold !important; }
  .post-attachments ul {
    margin: 0 !important;
    padding-left: 1.25rem !important;
    list-style-type: disc !important; }
  .post-attachments li {
    margin-bottom: 0.5rem !important;
    font-size: 0.9rem !important; }
    .post-attachments li:last-child {
      margin-bottom: 0 !important; }
  .post-attachments a {
    color: #0275d8 !important;
    text-decoration: none !important;
    font-weight: 500 !important; }
    .post-attachments a:hover {
      text-decoration: underline !important; }
  [data-theme="dark"] .post-attachments {
    border-color: #333333 !important;
    background-color: #222222 !important; }
    [data-theme="dark"] .post-attachments a {
      color: #4da3ff !important; }

.project-type-badge {
  display: inline-block;
  padding: 3px 8px;
  font-size: 0.68rem;
  font-weight: bold;
  border-radius: 4px;
  margin-left: 8px;
  vertical-align: middle;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  line-height: 1.2;
  background-color: #f3e5f5;
  color: #4a148c;
  border: 1px solid #e1bee7; }
  [data-theme="dark"] .project-type-badge {
    background-color: rgba(142, 36, 170, 0.15);
    color: #e1bee7;
    border-color: rgba(225, 190, 231, 0.2); }
  .project-type-badge--ca-nhan-freelance, .project-type-badge--ca-nhan-amp-freelance, .project-type-badge--ca-nhan-and-freelance {
    background-color: #f3e5f5;
    color: #4a148c;
    border: 1px solid #e1bee7; }
    [data-theme="dark"] .project-type-badge--ca-nhan-freelance, [data-theme="dark"] .project-type-badge--ca-nhan-amp-freelance, [data-theme="dark"] .project-type-badge--ca-nhan-and-freelance {
      background-color: rgba(142, 36, 170, 0.15);
      color: #e1bee7;
      border-color: rgba(225, 190, 231, 0.2); }

.page h2 {
  border-bottom: none !important; }
