:root{--bg:#070709;--card:#101217;--card2:#151925;--txt:#f2f4ff;--muted:#9aa1bc;--line:#2a3045;--pri:#c9ff35;--pri2:#7efff2;--danger:#ff4d6d}
*{box-sizing:border-box}body{margin:0;font-family:"Inter","Noto Sans TC",sans-serif;background:radial-gradient(circle at 85% -10%,#1e2440 0,#070709 42%),#070709;color:var(--txt)}
a{text-decoration:none;color:inherit}.wrap{width:min(1220px,92vw);margin:0 auto}
.top{position:sticky;top:0;z-index:30;background:rgba(7,7,9,.82);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav{display:flex;justify-content:space-between;align-items:center;padding:12px 0}.logo{display:flex;gap:10px;align-items:center}.logo img{width:56px;height:auto}.logo b{font-size:16px}.logo span{font-size:12px;color:var(--muted)}
.menu{display:flex;gap:14px;font-size:14px;color:#c6cbe0}.menu a{padding:8px 10px;border-radius:8px}.menu a:hover{background:#1a2032}
.hero{padding:46px 0 26px}.hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:16px;align-items:stretch}.badge{display:inline-block;background:#1a2032;border:1px solid #353e5a;color:var(--pri);padding:6px 10px;border-radius:999px;font-size:11px;font-weight:800;letter-spacing:.08em}
h1{font-size:clamp(30px,5vw,56px);line-height:1.02;margin:12px 0}.lead{max-width:620px;color:#bec4dc;line-height:1.75}
.hero-box{background:linear-gradient(145deg,#101217,#151925);border:1px solid var(--line);border-radius:20px;padding:18px;box-shadow:0 20px 50px rgba(0,0,0,.4)}
.hero-box img{width:100%;max-height:310px;object-fit:contain;background:#0b0d12;border:1px solid #252b3d;border-radius:12px}
.tick{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px}.tick div{background:#0f1320;border:1px solid #2a3248;border-radius:10px;padding:10px 12px;font-size:13px;color:#d5dbef}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.btn{border:1px solid transparent;border-radius:12px;padding:11px 16px;font-weight:800;cursor:pointer}.btn-main{background:linear-gradient(90deg,var(--pri),var(--pri2));color:#0c1200}.btn-ghost{border-color:#36405f;background:#13192a;color:#d7ddf0}
.sec{padding:28px 0}.head{display:flex;justify-content:space-between;gap:12px;align-items:end;flex-wrap:wrap}.head h2{margin:0;font-size:28px}.head p{margin:0;color:var(--muted)}
.plan-grid{display:grid;grid-template-columns:repeat(7,minmax(155px,1fr));gap:10px;margin-top:14px}.plan{background:linear-gradient(180deg,#101217,#151b2b);border:1px solid #2e3650;border-radius:14px;padding:12px;display:flex;flex-direction:column;gap:8px;min-height:250px}
.ribbon{display:inline-block;background:#c9ff35;color:#111a00;border-radius:999px;padding:3px 8px;font-size:11px;font-weight:900}.plan h3{margin:0;font-size:16px}.plan .qty{font-size:13px;color:#c2cae6}.plan .note{font-size:12px;color:#9da5c2;line-height:1.55;min-height:56px}.price{font-size:26px;font-weight:900;color:#efff9f}
.plan img{width:100%;height:88px;object-fit:contain;background:#0d111c;border:1px solid #2b3248;border-radius:10px;padding:6px}
.row{display:flex;gap:6px;margin-top:auto}.row .btn{padding:8px 9px;font-size:12px;flex:1}
.strip{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:12px}.strip article{border:1px solid #2a3247;border-radius:12px;padding:12px;background:#0f1320}.strip h3{margin:0 0 6px;font-size:15px}.strip p{margin:0;font-size:13px;color:var(--muted);line-height:1.6}
.blog-grid{display:grid;grid-template-columns:repeat(5,minmax(160px,1fr));gap:10px;margin-top:12px}.b{border:1px solid #2e3650;border-radius:12px;overflow:hidden;background:#101421}.b img{width:100%;height:96px;object-fit:cover}.b div{padding:10px}.b h3{margin:0 0 6px;font-size:14px;line-height:1.4}.b p{margin:0;color:#9ea7c6;font-size:12px;line-height:1.5}
.foot{border-top:1px solid var(--line);padding:22px 0 30px;color:#aeb5cf}
/* old article-wrap compact rule removed; see enhanced block below */
.info{display:grid;grid-template-columns:1fr 1fr;gap:8px}.info div{background:#0f1320;border:1px solid #2a3248;border-radius:10px;padding:10px;font-size:13px}
.cart{position:fixed;right:16px;bottom:16px;background:#101524;border:1px solid #334060;border-radius:12px;padding:10px 12px;color:#dbe3ff;font-size:13px}
@media(max-width:1180px){.plan-grid{grid-template-columns:repeat(4,1fr)}.blog-grid{grid-template-columns:repeat(3,1fr)}.hero-grid{grid-template-columns:1fr}}
@media(max-width:760px){.plan-grid{grid-template-columns:repeat(2,1fr)}.blog-grid{grid-template-columns:repeat(2,1fr)}.strip{grid-template-columns:1fr}.menu{display:none}}


/* ===== Article detail polish ===== */
.article-wrap{
  width:min(920px,92vw);
  margin:34px auto 50px;
  padding:28px 28px 34px;
  background:linear-gradient(180deg,#121826,#0e1320);
  border:1px solid #3a4564;
  border-radius:18px;
  box-shadow:0 18px 40px rgba(0,0,0,.35);
}
.article-wrap h1{
  font-size:clamp(26px,4vw,38px);
  line-height:1.2;
  margin:8px 0 12px;
  letter-spacing:-.02em;
}
.article-wrap > p{color:#c7cee6;line-height:1.85;font-size:15px}
.article-wrap a{color:var(--pri2);text-decoration:underline;text-underline-offset:3px}
.article-wrap a:hover{color:var(--pri)}
.crumb{font-size:12px;color:#8f97b3;margin:0 0 14px;letter-spacing:.04em}
.crumb a{color:var(--pri2);text-decoration:none}
.cover{margin:18px 0 22px}
.cover img{width:100%;max-height:360px;object-fit:cover;border-radius:14px;border:1px solid #3a4564}

.article-wrap h2{
  font-size:20px;
  margin:34px 0 12px;
  padding:10px 14px;
  color:#0c1200;
  background:linear-gradient(90deg,var(--pri),var(--pri2));
  border-radius:10px;
  display:inline-block;
  max-width:100%;
}
.article-wrap h3{
  font-size:16px;
  margin:22px 0 10px;
  color:#eaff8f;
  padding-left:10px;
  border-left:3px solid var(--pri);
}
.article-wrap ul,.article-wrap ol{
  padding:12px 12px 12px 1.4rem;
  margin:10px 0 16px;
  background:#0b101c;
  border:1px solid #2f3a55;
  border-radius:12px;
}
.article-wrap li{
  color:#d0d7ef;
  line-height:1.85;
  margin:6px 0;
}
.article-wrap strong{color:#f4ffe0}

/* Tables */
.table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;margin:16px 0 22px;border-radius:12px}
.table-wrap table{margin:0;min-width:520px}
.article-wrap table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  margin:16px 0 22px;
  font-size:13.5px;
  border:1px solid #445175;
  border-radius:12px;
  overflow:hidden;
  background:#0b101c;
  display:table;
}
.article-wrap th,
.article-wrap td{
  border-bottom:1px solid #2f3a55;
  border-right:1px solid #2f3a55;
  padding:12px 14px;
  text-align:left;
  vertical-align:top;
  color:#d5dced;
}
.article-wrap th:last-child,
.article-wrap td:last-child{border-right:none}
.article-wrap tr:last-child td{border-bottom:none}
.article-wrap thead th,
.article-wrap tr:first-child th,
.article-wrap th{
  background-color:#1a2440 !important;
  background-image:linear-gradient(180deg,#243356,#172038) !important;
  color:#efff9f !important;
  font-weight:800;
  letter-spacing:.02em;
  white-space:nowrap;
}
.article-wrap td{background-color:#0b101c}
.article-wrap tr:nth-child(even) td{background-color:#121a2e !important}
.article-wrap tr:hover td{background-color:#1a2440 !important}
.article-wrap th strong,
.article-wrap td strong{color:#efff9f}

/* BMI calculator */
.bmi{
  position:relative;
  border:1px solid #4a5a82;
  border-radius:16px;
  background:
    radial-gradient(circle at 100% 0%, rgba(201,255,53,.12), transparent 40%),
    linear-gradient(160deg,#151d31,#0d1322 55%,#10182a);
  padding:22px;
  margin:8px 0 26px;
  box-shadow:0 12px 28px rgba(0,0,0,.28), inset 0 1px 0 rgba(255,255,255,.04);
}
.bmi::before{
  content:"BMI TOOL";
  position:absolute;
  top:14px;right:16px;
  font-size:10px;
  letter-spacing:.18em;
  color:#8fa0c8;
  font-weight:800;
}
.bmi h3{
  color:var(--pri);
  margin:0 0 8px;
  font-size:20px;
  border:none;
  padding:0;
}
.bmi > p{color:#aeb7d4;font-size:13px;line-height:1.7;margin:0 0 14px;max-width:520px}
.bmi-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 14px}
.bmi label{display:block;font-size:12px;color:#b8c1dc;margin-bottom:7px;font-weight:700}
.bmi input{
  width:100%;
  padding:12px 14px;
  border:1px solid #4a5a82;
  border-radius:10px;
  background:#070b14;
  color:#fff;
  font-size:15px;
  outline:none;
  transition:.15s border-color,.15s box-shadow;
}
.bmi input::placeholder{color:#667294}
.bmi input:focus{
  border-color:var(--pri2);
  box-shadow:0 0 0 3px rgba(126,255,242,.18);
}
.bmi .btn-main{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:140px;
  margin-top:2px;
}
.bmi-result{
  display:none;
  border:1px solid #4a5a82;
  border-radius:12px;
  padding:16px;
  text-align:center;
  margin-top:16px;
  background:rgba(7,11,20,.72);
}
.bmi-result.show{display:block}
.bmi-result-value{
  font-size:2.4rem;
  color:var(--pri);
  font-weight:900;
  line-height:1.1;
  letter-spacing:-.03em;
}
.bmi-result-label{
  display:inline-block;
  margin-top:8px;
  padding:4px 10px;
  border-radius:999px;
  background:rgba(201,255,53,.14);
  color:#efff9f;
  font-weight:800;
  font-size:13px;
}
.bmi-result-tip{font-size:13px;color:#aeb7d4;margin:10px 0 0;line-height:1.6}

/* Related */
.related{
  margin-top:36px;
  padding-top:20px;
  border-top:1px solid #36425f;
}
.related h3{
  margin:0 0 12px;
  color:#eaff8f;
  border:none;
  padding:0;
  font-size:18px;
}
.rg{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.rg a{
  border:1px solid #3a4564;
  border-radius:12px;
  background:linear-gradient(180deg,#151d31,#101727);
  padding:14px;
  display:block;
  text-decoration:none !important;
  transition:.15s border-color,.15s transform;
  min-height:96px;
}
.rg a:hover{border-color:var(--pri);transform:translateY(-2px)}
.rg a strong{
  display:block;
  font-size:13px;
  line-height:1.45;
  margin-bottom:8px;
  color:#f2f6ff;
}
.rg a span{font-size:12px;color:#93a0c0}

.article-wrap .btn-ghost{
  display:inline-flex;
  text-decoration:none !important;
}

@media(max-width:760px){
  .article-wrap{padding:18px 16px 24px;margin:20px auto 40px}
  .bmi-form,.rg{grid-template-columns:1fr}
  .bmi::before{display:none}
  .article-wrap h2{font-size:16px;padding:8px 12px}
}
/* Sticky footer v4 — margin-top:auto 推页脚到底 */
html{height:100%}
body{
  min-height:100vh!important;
  min-height:100dvh!important;
  display:flex!important;
  flex-direction:column!important;
}
body>header,body>.top,body>.hdr,body>.hyper-hdr,body>.wl-top,body>.ap-top,body>.ticker,body>.announce{flex-shrink:0}
body>main{flex:1 0 auto!important;width:100%}
footer.foot,body>footer,body>.foot,body>.hyper-foot,body>.wl-foot,body>.ap-foot{
  flex-shrink:0!important;
  width:100%;
  margin-top:auto!important;
}
/* article-detail-fix */
.article-wrap section.bmi h2{font-size:20px;color:#7e3bff;margin:0 0 8px;border:none;padding:0}
.article-wrap .bmi-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:0 0 14px}
.article-wrap .bmi label{display:block;font-size:12px;color:#b8c1dc;margin-bottom:7px;font-weight:700}
.article-wrap .bmi input{width:100%;padding:11px 12px;border:1px solid #2a3148;border-radius:10px;background:#12182a;color:#e8ecf8;font:inherit}
.article-wrap .bmi button{display:inline-flex;min-width:140px;justify-content:center;padding:11px 16px;border:0;border-radius:10px;background:linear-gradient(135deg,#7e3bff,#5a2fb8);color:#fff;font-weight:700;cursor:pointer}
.article-wrap .bmi-out{margin-top:14px;padding:14px;border:1px dashed #3a4160;border-radius:12px;background:#0f1424;font-size:14px;color:#aeb7d4}
.article-wrap section.related h3{font-size:18px;color:#7e3bff;margin:0 0 12px;border:none;padding:0}
@media(max-width:760px){.article-wrap .bmi-grid,.article-wrap .rg{grid-template-columns:1fr}}
/* article-layout-wide */
.article-wrap {
  width: min(960px, 94vw) !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* article-no-mid-cover */
.page-content [class$="-cover"],
.page-content .article-cover,
.content [class$="-cover"],
.content .article-cover,
.prose [class$="-cover"],
.prose .article-cover,
.hyper-prose [class$="-cover"],
.tk-prose [class$="-cover"],
.tk-prose .article-cover,
.body [class$="-cover"],
.body .article-cover,
.bl-prose [class$="-cover"],
.bl-prose .article-cover,
.hz-prose [class$="-cover"],
.vx-prose [class$="-cover"],
.sf-prose [class$="-cover"],
.np-prose [class$="-cover"],
.ap-prose [class$="-cover"],
.wl-prose [class$="-cover"] {
  display: none !important;
}
