/* Forwardzz / Argon: reference-inspired two-column layout, 2026-10-10. */
body { background: #eef7fb !important; }
body::before { content: none !important; }
#banner.section-shaped {
  background-position: center center !important;
  background-size: cover !important;
  background-repeat: no-repeat !important;
}
html.banner-as-cover #banner.section-shaped {
  height: 100vh !important;
  height: 100svh !important;
  min-height: 520px;
}
#banner.section-shaped::before { display: none !important; }
#banner.section-shaped::after {
  background: linear-gradient(180deg, rgba(20,65,96,.12), rgba(20,65,96,.23)) !important;
}
#banner .shape { display: none !important; }
#banner .banner-title-inner {
  font-weight: 600 !important;
  letter-spacing: 1.5px !important;
  text-shadow: 0 2px 16px rgba(12,51,78,.65) !important;
}
#banner .banner-subtitle {
  text-shadow: 0 2px 10px rgba(12,51,78,.65);
  letter-spacing: 1px;
}
#content { padding-top: 30px; }
#content::before { opacity: .92 !important; }
#main .post.card,
#main .page-information-card,
#leftbar .card {
  background: rgba(255,255,255,.94) !important;
  border: 1px solid rgba(255,255,255,.55) !important;
  border-radius: 8px !important;
  box-shadow: 0 6px 24px rgba(19,58,87,.08) !important;
}
#main .post.card:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 10px 30px rgba(19,58,87,.13) !important;
}
#main .post.card .card-body { background: transparent !important; }
#main .post.card .card-title a { color: #269bc6 !important; font-weight: 500; }
#main .post.card .card-title a:hover { color: #106384 !important; }
#main .post-content { color: #33415c !important; }
#main .post-content h1,
#main .post-content h2,
#main .post-content h3 { color: #22364b !important; }
.navbar.navbar-ontop,
.navbar.navbar-transparent { background: transparent !important; backdrop-filter: none !important; }
.navbar.headroom--not-top:not(.navbar-ontop) { background: rgba(24,89,122,.91) !important; }
#leftbar .leftbar-banner { background: linear-gradient(135deg,#62b9ed,#2c9de5) !important; }
#leftbar #leftbar_overview_author_image { width: 100px; height: 100px; background-size: cover; background-position: center; }
#leftbar .leftbar-menu a { color: #33415c; }
.navbar-icon img { border-radius: 50%; width: 32px; height: 32px; object-fit: cover; }
#leftbar #leftbar_search_container { background: #e0f2fc; color: #33415c; }
@media (min-width: 992px) {
  #content { max-width: 1180px !important; margin-inline: auto !important; }
  #main .post.card .card-body { padding: 1.75rem !important; }
}
html.darkmode body { background: #101c29 !important; }
html.darkmode #main .post.card,
html.darkmode #main .page-information-card,
html.darkmode #leftbar .card { background: rgba(22,36,52,.95) !important; border-color: rgba(126,186,214,.16) !important; }
html.darkmode #main .post-content { color: #d3e1ee !important; }
html.darkmode #main .post-content h1,
html.darkmode #main .post-content h2,
html.darkmode #main .post-content h3 { color: #edf5fb !important; }
html.darkmode #main .post.card .card-title a { color: #81d0ed !important; }
@media (max-width: 767px) {
  #banner.section-shaped { background-position: 20% center !important; }
  html.banner-as-cover #banner.section-shaped { min-height: 460px; }
  #banner .banner-title-inner { font-size: 2rem !important; letter-spacing: 1px !important; }
  #banner .banner-subtitle { font-size: .93rem; padding-inline: 20px; }
  #main .post.card .card-body { padding: 1.2rem !important; }
  #main .post.card .card-title { font-size: 1.25rem; }
  #content { padding-top: 18px; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto !important; }
  #main .post.card { transition: none !important; }
  #main .post.card:hover { transform: none !important; }
}

/* Click/keyboard/touch dropdowns, using the reference blog's grouped hierarchy. */
.forwardzz-site-menu { display:flex; align-items:center; gap:6px; list-style:none; margin:0; padding:0; }
.forwardzz-site-menu>li { position:relative; }
#navbar-main .forwardzz-site-menu { color:#fff; text-shadow:0 1px 5px rgba(16,45,68,.6); }
.forwardzz-dropdown>ul { text-shadow:none; }
.forwardzz-site-menu>li>a,.forwardzz-dropdown>summary { display:block; padding:10px 14px; color:inherit; font-size:14px; border-radius:8px; cursor:pointer; text-decoration:none; }
.forwardzz-dropdown>summary { list-style:none; }
.forwardzz-dropdown>summary::-webkit-details-marker { display:none; }
.forwardzz-dropdown>summary span { margin-left:5px; }
.forwardzz-site-menu>li>a:hover,.forwardzz-dropdown[open]>summary { background:rgba(255,255,255,.18); }
.forwardzz-dropdown>ul { position:absolute; top:100%; left:0; min-width:185px; padding:8px; margin:4px 0 0; list-style:none; background:rgba(255,255,255,.98); color:#285c75; border:1px solid #dcebf3; border-radius:12px; box-shadow:0 10px 30px rgba(30,65,90,.16); z-index:1100; }
.forwardzz-dropdown>ul a { display:block; padding:10px 12px; border-radius:7px; color:inherit; white-space:nowrap; }
.forwardzz-dropdown>ul a:hover { background:#eaf5fc; text-decoration:none; }
.forwardzz-site-menu a:focus-visible,.forwardzz-dropdown summary:focus-visible { outline:2px solid #68c9ea; outline-offset:2px; }
html.darkmode .forwardzz-dropdown>ul { background:#203447; color:#e1f2ff; border-color:#395366; }
html.darkmode .forwardzz-dropdown>ul a:hover { background:#314b62; }
@media(max-width:991px) {
  .forwardzz-site-menu { flex-wrap:wrap; gap:0; width:100%; padding:8px 0; }
  .forwardzz-site-menu>li>a,.forwardzz-dropdown>summary { padding:10px 9px; color:#285c75; }
  .forwardzz-dropdown>ul { position:relative; min-width:150px; box-shadow:none; }
  html.darkmode .forwardzz-site-menu>li>a,html.darkmode .forwardzz-dropdown>summary { color:#e1f2ff; }
}

/* Navigation and reading refinements: retain the homepage cover and theme controls. */
#navbar_global { align-items:center; gap:12px; }
#navbar_global .forwardzz-nav-search ~ .navbar-nav { display:none; }
#navbar_global .navbar-collapse-header .input-group { display:none; }
.forwardzz-nav-search { display:flex; align-items:center; gap:4px; margin:0 0 0 auto; padding:4px; border-radius:24px; background:rgba(255,255,255,.96); border:1px solid #d5e8f0; box-shadow:0 3px 16px rgba(19,58,87,.08); }
.forwardzz-nav-search input { width:140px; min-width:0; padding:7px 10px; border:0; background:transparent; color:#243d50; font-size:14px; outline:none; }
.forwardzz-nav-search input::placeholder { color:#566d7c; }
.forwardzz-nav-search button { display:flex; align-items:center; gap:5px; padding:7px 11px; border:0; border-radius:20px; background:#167494; color:#fff; font-size:13px; cursor:pointer; }
.forwardzz-nav-search button:hover { background:#105971; }
.forwardzz-nav-search:focus-within { outline:3px solid #68c9ea; outline-offset:2px; }
.forwardzz-site-menu > li > a,.forwardzz-dropdown > summary { min-height:44px; }
.forwardzz-dropdown > ul { min-width:205px; }
.forwardzz-dropdown > ul a { min-height:44px; }
.forwardzz-dropdown > summary span { display:inline-block; transition:transform .15s ease; }
.forwardzz-dropdown[open] > summary span { transform:rotate(180deg); }
html.banner-as-cover:not(:has(#main.article-list-home)) #banner.section-shaped,
html.banner-mini #banner.section-shaped { height:240px !important; min-height:240px !important; }
html.banner-as-cover:not(:has(#main.article-list-home)) #content,
html.banner-mini #content { margin-top:0 !important; }
html.banner-as-cover:not(:has(#main.article-list-home)) .cover-scroll-down { display:none; }
html.banner-as-cover:not(:has(#main.article-list-home)) #banner .banner-title,
html.banner-mini #banner .banner-title { font-size:2rem; }
#post_content { line-height:1.9; overflow-wrap:break-word; }
#post_content h2,#post_content h3,#post_content [id] { scroll-margin-top:100px; }
#post_content pre { overflow:auto; overflow-wrap:normal; }
#post_content table { display:block; max-width:100%; overflow-x:auto; }
#post_content a:focus-visible { outline:2px solid #167494; outline-offset:3px; }
#ez-toc-container { width:100%; border-radius:12px; border-color:#d5e8f0; padding:16px; background:#f2f9fc; box-shadow:none; }
#leftbar_part1_menu a { min-height:44px; }
@media(min-width:992px) {
  html:has(#leftbar_catalog) #post_content #ez-toc-container { display:none; }
  #main .post-full:hover { transform:none !important; }
  html:has(#main .post-full) #leftbar_part1_menu { display:none; }
  html:has(#main .post-full) #leftbar .leftbar-banner { padding:18px; }
  html:has(#main .post-full) #leftbar .leftbar-banner-title { font-size:20px; }
  html:has(#main .post-full) #leftbar .leftbar-banner-subtitle { display:none; }
}
html.darkmode .forwardzz-nav-search { background:#203447; border-color:#395366; }
html.darkmode .forwardzz-nav-search input { color:#e1f2ff; }
html.darkmode .forwardzz-nav-search input::placeholder { color:#b2c7d6; }
html.darkmode #ez-toc-container { background:#203447; color:#e1f2ff; border-color:#395366; }
@media(max-width:991px) {
  #navbar_global { max-height:calc(100svh - 85px); overflow-y:auto; }
  .forwardzz-site-menu { display:block; padding:0; }
  .forwardzz-site-menu > li { width:100%; }
  .forwardzz-site-menu > li > a,.forwardzz-dropdown > summary { padding:12px 14px; text-shadow:none; }
  .forwardzz-dropdown > summary { display:flex; justify-content:space-between; }
  .forwardzz-dropdown > ul { margin:0 12px 8px; border:0; background:#f1f8fc; }
  .forwardzz-nav-search { margin:12px 0 0; width:100%; }
  .forwardzz-nav-search input { flex:1; width:auto; }
  html.banner-as-cover:not(:has(#main.article-list-home)) #banner.section-shaped,
  html.banner-mini #banner.section-shaped { height:190px !important; min-height:190px !important; }
  html.darkmode .forwardzz-dropdown > ul { background:#203447; }
}
@media(prefers-reduced-motion:reduce) {
  .forwardzz-dropdown > summary span { transition:none; }
}
