/* NodeKeeper site overrides on HUD theme */
:root { --nk-brand:#5cb85c; --nk-bg:#1a1f24; }
body { background:var(--nk-bg); }
.site-header {
  position:sticky; top:0; z-index:100;
  background:rgba(20,26,32,.92); backdrop-filter: blur(8px);
  border-bottom:1px solid rgba(255,255,255,.06);
  padding:14px 0;
}
.site-header .brand-img-text { color:var(--nk-brand); font-weight:bold; font-size:18px; padding:4px 10px; border:1px solid var(--nk-brand); border-radius:6px; }
.site-header .nav-link { color:rgba(255,255,255,.7); margin:0 12px; text-decoration:none; font-weight:500; }
.site-header .nav-link:hover { color:var(--nk-brand); }
.site-header .lang-switch { color:rgba(255,255,255,.6); font-size:13px; margin-right:14px; text-decoration:none; }
.site-header .lang-switch:hover { color:#fff; }
.btn-brand { background:var(--nk-brand); color:#000; font-weight:600; border:none; padding:8px 18px; border-radius:6px; text-decoration:none; display:inline-block; }
.btn-brand:hover { background:#71c771; color:#000; }
.btn-outline-brand { border:1px solid var(--nk-brand); color:var(--nk-brand); padding:8px 18px; border-radius:6px; text-decoration:none; display:inline-block; }
.btn-outline-brand:hover { background:var(--nk-brand); color:#000; }
.hero { padding:80px 0 60px; }
.hero h1 { font-size:48px; font-weight:700; line-height:1.2; }
.hero h1 .text-theme { color:var(--nk-brand); }
.hero .lead { font-size:18px; color:rgba(255,255,255,.7); max-width:680px; }
.stat-band { background:rgba(92,184,92,.06); padding:24px 0; border-top:1px solid rgba(255,255,255,.05); border-bottom:1px solid rgba(255,255,255,.05); }
.stat-num { font-size:32px; font-weight:bold; color:var(--nk-brand); }
.stat-label { font-size:13px; color:rgba(255,255,255,.6); }
.feat-card { background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.06); border-radius:10px; padding:28px; height:100%; transition:.2s; }
.feat-card:hover { border-color:var(--nk-brand); transform:translateY(-4px); }
.feat-card .ico { font-size:32px; color:var(--nk-brand); margin-bottom:16px; }
.feat-card h4 { color:#fff; font-size:18px; font-weight:600; margin-bottom:10px; }
.feat-card p { color:rgba(255,255,255,.6); font-size:14px; margin:0; }
.section { padding:80px 0; }
.section h2 { font-size:36px; font-weight:700; color:#fff; margin-bottom:14px; }
.section .sec-lead { color:rgba(255,255,255,.6); font-size:16px; max-width:680px; margin:0 auto 50px; text-align:center; }
.price-card { background:rgba(255,255,255,.03); border:1px solid rgba(255,255,255,.08); border-radius:12px; padding:34px 28px; height:100%; transition:.2s; position:relative; }
.price-card.featured { border-color:var(--nk-brand); }
.price-card.featured::before { content:"推荐"; position:absolute; top:-12px; left:50%; transform:translateX(-50%); background:var(--nk-brand); color:#000; padding:4px 14px; border-radius:999px; font-size:12px; font-weight:bold; }
.price-card.featured-en::before { content:"Recommended"; }
.price-card .plan-name { font-size:15px; color:rgba(255,255,255,.6); text-transform:uppercase; letter-spacing:1px; }
.price-card .plan-price { font-size:42px; font-weight:bold; color:#fff; margin:14px 0 4px; }
.price-card .plan-price .ccy { font-size:24px; color:rgba(255,255,255,.6); margin-right:6px; }
.price-card .plan-cycle { color:rgba(255,255,255,.5); font-size:13px; margin-bottom:24px; }
.price-original { color:rgba(255,255,255,.35); text-decoration:line-through; font-size:14px; margin-right:8px; font-weight:normal; }
.launch-badge { display:inline-block; background:linear-gradient(135deg,#ff6b35,#ff8c42); color:#fff; font-size:10px; font-weight:bold; padding:2px 8px; border-radius:4px; margin-bottom:8px; letter-spacing:.5px; vertical-align:middle; }
.plan-launch-line { margin:6px 0 0; font-size:12px; color:rgba(255,255,255,.45); }
.plan-launch-line .price-original { font-size:13px; margin-right:6px; }
.price-card ul { list-style:none; padding:0; margin:24px 0; }
.price-card ul li { padding:6px 0; font-size:14px; color:rgba(255,255,255,.75); }
.price-card ul li.muted { color:rgba(255,255,255,.35); text-decoration:line-through; }
.price-card ul li i { color:var(--nk-brand); margin-right:8px; width:16px; }
.price-card .btn { width:100%; text-align:center; padding:12px; }
.cycle-toggle { display:inline-flex; background:rgba(255,255,255,.06); border-radius:30px; padding:4px; margin-bottom:40px; }
.cycle-toggle button { background:transparent; border:none; color:rgba(255,255,255,.7); padding:8px 24px; border-radius:30px; cursor:pointer; font-size:14px; }
.cycle-toggle button.active { background:var(--nk-brand); color:#000; font-weight:600; }
.cycle-toggle .save-tag { color:var(--nk-brand); font-size:11px; margin-left:6px; }
.faq-item { border-bottom:1px solid rgba(255,255,255,.06); padding:18px 0; }
.faq-item summary { color:#fff; font-weight:600; cursor:pointer; list-style:none; display:flex; align-items:center; }
.faq-item summary::-webkit-details-marker { display:none; }
.faq-item summary::after { content:"+"; margin-left:auto; color:var(--nk-brand); font-size:20px; }
.faq-item[open] summary::after { content:"−"; }
.faq-item p { color:rgba(255,255,255,.6); margin:14px 0 0; line-height:1.7; }
.site-footer { background:rgba(0,0,0,.4); padding:50px 0 30px; color:rgba(255,255,255,.5); font-size:13px; border-top:1px solid rgba(255,255,255,.06); }
.site-footer h6 { color:#fff; font-size:14px; font-weight:600; margin-bottom:14px; }
.site-footer a { color:rgba(255,255,255,.5); text-decoration:none; display:block; padding:3px 0; }
.site-footer a:hover { color:var(--nk-brand); }
.site-footer .copyright { text-align:center; padding-top:30px; margin-top:30px; border-top:1px solid rgba(255,255,255,.06); }
.feature-matrix { color:rgba(255,255,255,.8); font-size:14px; }
.feature-matrix th { background:rgba(255,255,255,.04); color:#fff; padding:12px; text-align:center; }
.feature-matrix th:first-child, .feature-matrix td:first-child { text-align:left; }
.feature-matrix td { padding:10px 12px; text-align:center; border-top:1px solid rgba(255,255,255,.05); }
.feature-matrix .yes { color:var(--nk-brand); font-weight:bold; }
.feature-matrix .no { color:rgba(255,255,255,.2); }
.feature-matrix .row-group { background:rgba(92,184,92,.05); font-weight:600; color:var(--nk-brand); }
@media (max-width: 768px) {
  .hero h1 { font-size:34px; }
  .section { padding:50px 0; }
  .section h2 { font-size:26px; }
  .price-card .plan-price { font-size:32px; }
}
