/*
Theme Name: Newsup KMH
Theme URI: https://www.kmhgame.com/
Description: Newsup 子主题（KMHGame 暗黑工业/知识库风格）
Author: Big White Horse
Template: newsup
Version: 1.0.0
Text Domain: newsup-kmh
*/

/* ===============
   KMH 暗黑工业皮肤 v1
   目标：更强的“独立开发/发行知识库”调性 + 更好的可读性
   =============== */

:root{
  --kmh-bg:#0b0f14;
  --kmh-bg2:#0e141c;
  --kmh-panel:#101923;
  --kmh-panel2:#0f1720;
  --kmh-border:rgba(160,190,220,.16);
  --kmh-border2:rgba(160,190,220,.10);
  --kmh-text:#d7e2f0;
  --kmh-muted:#9ab0c7;
  --kmh-muted2:#7f93a7;
  --kmh-link:#7ad3ff;
  --kmh-accent:#66f0c8;
  --kmh-accent2:#ffb86b;
  --kmh-danger:#ff5b5b;
  --kmh-shadow:0 18px 60px rgba(0,0,0,.55);
  --kmh-radius:14px;
  --kmh-radius-sm:10px;
  --kmh-max:1180px;
}

html{scroll-behavior:smooth;}
body{
  background:radial-gradient(1200px 700px at 20% -10%, rgba(102,240,200,.08), transparent 60%),
             radial-gradient(900px 600px at 110% 0%, rgba(122,211,255,.08), transparent 55%),
             linear-gradient(180deg, var(--kmh-bg), var(--kmh-bg2));
  color:var(--kmh-text);
  font-family:"IBM Plex Sans", system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;
  line-height:1.75;
}

h1,h2,h3,h4,h5,h6,
.site-title,
.entry-title{
  font-family:"IBM Plex Sans Condensed","IBM Plex Sans", system-ui, sans-serif;
  letter-spacing:.2px;
}

a{color:var(--kmh-link); text-decoration:none;}
a:hover{color:var(--kmh-accent); text-decoration:underline; text-underline-offset:3px;}

::selection{background:rgba(102,240,200,.22);}
:focus-visible{outline:2px solid rgba(102,240,200,.55); outline-offset:2px; border-radius:6px;}

/* ---------- containers / layout ---------- */
.container, .site-container, .aft-container, .af-container, .wrap{
  max-width:var(--kmh-max);
}

/* ---------- header / nav ---------- */
header, .site-header, .main-header, .top-header{
  background:rgba(10,14,20,.72);
  backdrop-filter:saturate(130%) blur(10px);
  border-bottom:1px solid var(--kmh-border2);
}

.site-branding a, .site-title a{color:var(--kmh-text);}
.site-branding a:hover, .site-title a:hover{color:var(--kmh-accent); text-decoration:none;}

.navbar, nav, .main-navigation{
  border-top:1px solid rgba(160,190,220,.08);
}

.main-navigation a,
.navbar a,
.menu a{
  color:rgba(215,226,240,.90);
}
.main-navigation a:hover,
.navbar a:hover,
.menu a:hover{color:var(--kmh-accent);}

/* ---------- global panels ---------- */
.widget, .sidebar .widget, .widget-area .widget,
article, .post, .page, .type-post,
.comments-area,
.search-form,
.pagination,
.entry-content .wp-block-group,
.entry-content .wp-block-cover,
.entry-content .wp-block-columns{
  border-radius:var(--kmh-radius);
}

/* Cards / list items (try to catch Newsup/AF themes selectors) */
article, .post, .blog-post, .grid-post, .af-post-box, .aft-post-wrapper,
.aft-post-listing, .af-grid-post, .af-postbox, .af-themed-post{
  background:linear-gradient(180deg, rgba(16,25,35,.88), rgba(15,23,32,.88));
  border:1px solid var(--kmh-border);
  box-shadow:0 10px 30px rgba(0,0,0,.22);
}

/* remove harsh whites in theme */
.site, .site-content, .content-area, .page-content, .entry-content{background:transparent;}

/* ---------- typography / readability ---------- */
.entry-content, .comment-content{
  font-size:16.5px;
}
.entry-content p{margin:0 0 1.05em;}
.entry-content strong{color:#eaf2ff;}
.entry-content hr, .wp-block-separator{border-color:rgba(160,190,220,.18); opacity:1;}

/* Headings spacing */
.entry-content h2{margin-top:1.8em; padding-top:.2em; border-top:1px solid rgba(160,190,220,.10);}
.entry-content h3{margin-top:1.4em;}

/* ---------- buttons / inputs ---------- */
button, .button, input[type=submit], input[type=button], .wp-block-button__link{
  background:linear-gradient(180deg, rgba(102,240,200,.20), rgba(102,240,200,.12));
  border:1px solid rgba(102,240,200,.40);
  color:var(--kmh-text);
  border-radius:999px;
  padding:.55em 1.05em;
  transition:transform .12s ease, background .12s ease, border-color .12s ease;
}
button:hover, .button:hover, input[type=submit]:hover, input[type=button]:hover, .wp-block-button__link:hover{
  transform:translateY(-1px);
  border-color:rgba(102,240,200,.65);
  text-decoration:none;
}

input[type=text], input[type=search], input[type=email], input[type=url], input[type=password], textarea, select{
  background:rgba(10,14,20,.65);
  border:1px solid rgba(160,190,220,.22);
  color:var(--kmh-text);
  border-radius:12px;
}
input::placeholder, textarea::placeholder{color:rgba(154,176,199,.65);}

/* ---------- meta / badges ---------- */
.entry-meta, .post-meta, .cat-links, .tags-links{
  color:rgba(154,176,199,.92);
}
.entry-meta a, .post-meta a{color:rgba(122,211,255,.95);}
.entry-meta a:hover, .post-meta a:hover{color:var(--kmh-accent);}

/* ---------- blockquotes / callouts ---------- */
blockquote, .wp-block-quote{
  background:linear-gradient(180deg, rgba(122,211,255,.08), rgba(102,240,200,.06));
  border-left:3px solid rgba(102,240,200,.55);
  padding:1em 1.1em;
  border-radius:var(--kmh-radius-sm);
  color:rgba(215,226,240,.95);
}

/* ---------- code blocks ---------- */
code, kbd, samp{
  font-family:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size:.95em;
  background:rgba(10,14,20,.65);
  border:1px solid rgba(160,190,220,.18);
  padding:.15em .35em;
  border-radius:8px;
}
pre, .wp-block-code, .wp-block-preformatted{
  font-family:"IBM Plex Mono", ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  background:linear-gradient(180deg, rgba(9,12,18,.85), rgba(9,12,18,.70));
  border:1px solid rgba(160,190,220,.18);
  color:rgba(231,242,255,.95);
  padding:1em 1.05em;
  border-radius:var(--kmh-radius);
  box-shadow:0 14px 40px rgba(0,0,0,.35);
  overflow:auto;
}
pre code{background:transparent; border:none; padding:0;}

/* ---------- tables ---------- */
table, .wp-block-table table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  overflow:hidden;
  border:1px solid rgba(160,190,220,.18);
  border-radius:var(--kmh-radius);
}
th, td{border-bottom:1px solid rgba(160,190,220,.14); padding:.75em .85em;}
th{background:rgba(16,25,35,.65); color:#eaf2ff;}
tr:last-child td{border-bottom:none;}

/* ---------- widgets / sidebar ---------- */
.widget, .sidebar .widget{
  background:linear-gradient(180deg, rgba(16,25,35,.78), rgba(15,23,32,.78));
  border:1px solid rgba(160,190,220,.16);
  padding:1.05em 1.05em;
  box-shadow:0 10px 30px rgba(0,0,0,.22);
}
.widget-title{
  font-size:1.05rem;
  margin:0 0 .8em;
  padding-left:.8em;
  border-left:3px solid rgba(102,240,200,.55);
}

/* ---------- pagination ---------- */
.pagination, .nav-links{
  background:rgba(16,25,35,.55);
  border:1px solid rgba(160,190,220,.16);
  padding:.65em;
}
.page-numbers, .nav-links a, .nav-links span{
  border-radius:999px;
  padding:.25em .7em;
}
.page-numbers.current{background:rgba(102,240,200,.18); border:1px solid rgba(102,240,200,.45);}

/* ---------- images ---------- */
img{border-radius:12px;}
.wp-block-image figcaption{color:rgba(154,176,199,.85);}

/* ---------- navigation / hub pages helper ---------- */
.entry-content a[href^="#"]{
  scroll-margin-top:90px;
}

/* ---------- footer ---------- */
footer, .site-footer{
  background:rgba(10,14,20,.80);
  border-top:1px solid rgba(160,190,220,.10);
  color:rgba(154,176,199,.95);
}

/* ---------- mobile tweaks ---------- */
@media (max-width: 768px){
  :root{--kmh-radius:12px;}
  .entry-content, .comment-content{font-size:16px;}
}


/* =========================
   FORCE OVERRIDES (Newsup/插件可能在后面覆盖颜色)
   ========================= */

body{
  background:radial-gradient(1200px 700px at 20% -10%, rgba(102,240,200,.08), transparent 60%),
             radial-gradient(900px 600px at 110% 0%, rgba(122,211,255,.08), transparent 55%),
             linear-gradient(180deg, var(--kmh-bg), var(--kmh-bg2)) !important;
  color:var(--kmh-text) !important;
}

#page, .site, .site-content, .content-area, .main-content, .page-wrap{
  background:transparent !important;
}

/* Header + menu */
.site-header, .main-header, .top-header, .header-wrap, .header, .header-style, .navbar, .nav-bar, .navigation, .main-navigation{
  background:rgba(10,14,20,.82) !important;
  border-color:rgba(160,190,220,.12) !important;
}

.main-navigation a, .menu a, .navbar a{
  color:rgba(215,226,240,.92) !important;
}
.main-navigation a:hover, .menu a:hover, .navbar a:hover{
  color:var(--kmh-accent) !important;
}

/* Cards */
article, .post, .page, .type-post,
.blog-post, .grid-post, .af-post-box, .aft-post-wrapper,
.aft-post-listing, .af-grid-post, .af-postbox, .af-themed-post,
.post-item, .newsup-post, .newsup-post-box,
.widget, .sidebar .widget{
  background:linear-gradient(180deg, rgba(16,25,35,.90), rgba(15,23,32,.90)) !important;
  border:1px solid rgba(160,190,220,.18) !important;
}

/* Typography */
.entry-title a, .post-title a, h1,h2,h3,h4,h5,h6{color:rgba(235,246,255,.96) !important;}
.entry-content, .comment-content, .post-excerpt, p{color:rgba(215,226,240,.92) !important;}

/* Links */
a{color:var(--kmh-link) !important;}
a:hover{color:var(--kmh-accent) !important;}

/* Buttons */
button, .button, input[type=submit], input[type=button], .wp-block-button__link{
  background:linear-gradient(180deg, rgba(102,240,200,.22), rgba(102,240,200,.12)) !important;
  border-color:rgba(102,240,200,.45) !important;
  color:var(--kmh-text) !important;
}

/* Inputs */
input[type=text], input[type=search], input[type=email], input[type=url], input[type=password], textarea, select{
  background:rgba(10,14,20,.75) !important;
  color:var(--kmh-text) !important;
  border-color:rgba(160,190,220,.25) !important;
}

/* Footer */
.site-footer, footer{
  background:rgba(10,14,20,.86) !important;
  border-color:rgba(160,190,220,.12) !important;
  color:rgba(154,176,199,.95) !important;
}


/* =========================
   CLASS PATTERN OVERRIDES
   说明：Newsup/Newsup 小工具很多 class 不统一，用通配选择器兜底
   ========================= */

/* any widget-like panel */
[class*="widget"], [class*="Widget"], [id*="widget"], [id*="Widget"],
[class*="sidebar"], [class*="Sidebar"],
[class*="tab"], [class*="Tab"],
[class*="post"], [class*="Post"]{
  background-color:rgba(16,25,35,.88) !important;
  color:var(--kmh-text) !important;
}

/* tab controls */
.nav-tabs, .nav-tabs li, .nav-tabs a,
[class*="tab"] a, [class*="Tab"] a{
  border-color:rgba(160,190,220,.14) !important;
}

/* common “white box” wrappers */
.container, .container-fluid, .row, .col, [class*="container"], [class*="wrap"], [class*="content"]{
  background-color:transparent !important;
}

/* make sure cards keep border */
[class*="post"], [class*="Post"], article{
  border-color:rgba(160,190,220,.18) !important;
}


/* =========================
   FINAL DARKEN PASS
   ========================= */

/* Most remaining white boxes use `background` not `background-color` */
[class*="widget"], [id*="widget"],
[class*="sidebar"],
[class*="tab"],
[class*="box"], [class*="panel"],
[class*="card"],
[class*="post"],
.section, .section-wrapper, .section-inner, .inner-wrapper, .outer-wrapper,
.tab-content, .tabs-content{
  background:linear-gradient(180deg, rgba(16,25,35,.90), rgba(15,23,32,.90)) !important;
  border-color:rgba(160,190,220,.18) !important;
}

/* Tag bars / tickers */
[class*="tag"], [class*="ticker"], [class*="trending"]{
  background:rgba(10,14,20,.65) !important;
  border-color:rgba(160,190,220,.14) !important;
}

/* Tab buttons */
.nav-tabs a, .nav-tabs li a, [class*="tab"] a{
  color:rgba(215,226,240,.92) !important;
}

.nav-tabs .active a, .nav-tabs .active, [class*="tab"] .active a{
  color:rgba(235,246,255,.98) !important;
}


/* =========================
   NEWSUP SPECIFIC FIXES (from HTML)
   ========================= */

#custom-background-css{
  background:transparent !important;
}

.mg-posts-sec-inner,
.mg-posts-sec-inner .container-fluid{
  background:rgba(10,14,20,.40) !important;
}

/* Easy Table of Contents plugin container */
#ez-toc-container, .ez-toc-container{
  background:linear-gradient(180deg, rgba(16,25,35,.90), rgba(15,23,32,.90)) !important;
  border:1px solid rgba(160,190,220,.18) !important;
  color:var(--kmh-text) !important;
}
#ez-toc-container a, .ez-toc-container a{color:var(--kmh-link) !important;}
#ez-toc-container a:hover, .ez-toc-container a:hover{color:var(--kmh-accent) !important;}
