:root{--bg:#0a0a0a;--panel:#121212;--ink:#f5f5f5;--muted:#9a9a9a;--line:#2a2a2a;--y:#ffe600;--hot:#ff3d6e}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"DIN Alternate","Noto Sans TC","PingFang TC",sans-serif;line-height:1.6}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}
.wrap{width:min(1200px,92vw);margin:0 auto}
.top{position:sticky;top:0;z-index:40;background:rgba(10,10,10,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.nav{display:flex;align-items:center;justify-content:space-between;padding:14px 0}
.logo img{width:62px;height:auto}
.menu{display:flex;gap:22px;font-size:13px;letter-spacing:.18em;text-transform:uppercase;color:var(--muted)}
.menu a:hover{color:var(--y)}
.hero{padding:56px 0 40px;border-bottom:1px solid var(--line)}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:28px;align-items:stretch}
.tag{display:inline-block;background:var(--y);color:#000;font-size:11px;font-weight:900;letter-spacing:.2em;padding:6px 12px;margin-bottom:18px}
h1{font-size:clamp(36px,6vw,72px);line-height:.95;letter-spacing:-.04em;margin:0 0 18px;text-transform:uppercase}
.lead{color:var(--muted);font-size:15px;line-height:1.85;max-width:560px;margin:0 0 26px}
.act{display:flex;gap:12px;flex-wrap:wrap}
.btn{border:1px solid var(--ink);background:transparent;color:var(--ink);padding:12px 20px;font-weight:800;font-size:13px;letter-spacing:.08em;cursor:pointer;border-radius:0}
.btn-main{background:var(--y);color:#000;border-color:var(--y)}.btn-main:hover{filter:brightness(1.05)}
.btn-ghost:hover{border-color:var(--y);color:var(--y)}
.hero-panel{background:var(--panel);border:1px solid var(--line);padding:18px;display:flex;flex-direction:column;gap:14px}
.hero-panel img{width:100%;height:240px;object-fit:contain;background:#000;border:1px solid var(--line)}
.meta{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.meta div{border:1px solid var(--line);padding:10px 12px;font-size:12px;color:var(--muted)}
.meta b{display:block;color:var(--ink);font-size:16px;margin-bottom:2px}
.sec{padding:54px 0;border-bottom:1px solid var(--line)}
.sec-head{display:flex;justify-content:space-between;gap:18px;align-items:end;flex-wrap:wrap;margin-bottom:24px}
.sec-head h2{margin:0;font-size:clamp(24px,3.5vw,40px);letter-spacing:-.03em}
.sec-head p{margin:0;color:var(--muted);max-width:420px;font-size:14px}
.masonry{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.card{background:var(--panel);border:1px solid var(--line);padding:14px;display:flex;flex-direction:column;gap:10px;min-height:280px}
.card.big{grid-column:span 2;grid-row:span 2;min-height:420px}
.card .flag{align-self:flex-start;background:var(--hot);color:#fff;font-size:10px;font-weight:900;letter-spacing:.14em;padding:4px 8px}
.card img{width:100%;height:120px;object-fit:contain;background:#000}
.card.big img{height:220px}
.card h3{margin:0;font-size:18px}.card .note{margin:0;color:var(--muted);font-size:13px;line-height:1.65;flex:1}
.card .price{font-size:28px;font-weight:900;color:var(--y)}
.card .row{display:flex;gap:8px}.card .row .btn{flex:1;padding:10px;font-size:12px;text-align:center}
.band{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.band article{border:1px solid var(--line);background:var(--panel);padding:20px}
.band b{display:block;color:var(--y);font-size:28px;margin-bottom:8px}
.band h3{margin:0 0 8px;font-size:16px}.band p{margin:0;color:var(--muted);font-size:13px;line-height:1.7}
.reserve{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.reserve a{display:grid;grid-template-columns:110px 1fr;gap:14px;border:1px solid var(--line);background:var(--panel);overflow:hidden}
.reserve a:hover{border-color:var(--y)}
.reserve img{width:110px;height:100%;object-fit:cover;min-height:96px}
.reserve .txt{padding:14px 14px 14px 0}
.reserve .no{font-size:11px;letter-spacing:.18em;color:var(--y);font-weight:800}
.reserve h3{margin:6px 0;font-size:15px;line-height:1.4}
.reserve p{margin:0;color:var(--muted);font-size:12px}
.foot{padding:40px 0 70px;color:var(--muted);font-size:13px}
.foot .cols{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:24px;margin-bottom:20px}
.foot a{display:block;margin-bottom:8px;color:var(--muted)}.foot a:hover{color:var(--y)}
.cart{position:fixed;right:18px;bottom:18px;background:var(--y);color:#000;padding:12px 14px;font-size:12px;font-weight:800;z-index:50}
.cart strong{display:block}
.page{padding:40px 0 70px}
.crumb{font-size:12px;letter-spacing:.12em;color:var(--muted);margin-bottom:16px}
.page h1{font-size:clamp(28px,4vw,48px);margin:0 0 16px}
.panel{background:var(--panel);border:1px solid var(--line);padding:24px}
.panel p,.panel li{color:#cfcfcf;line-height:1.85;font-size:14px}
.panel h2{font-size:18px;margin:28px 0 10px;color:var(--y)}
.cover img{width:100%;max-height:340px;object-fit:cover;border:1px solid var(--line);margin:16px 0 22px}
.buy{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.shot{background:#000;border:1px solid var(--line);padding:20px;text-align:center}
.shot img{max-height:260px;margin:0 auto}
.facts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:16px 0}
.facts div{border:1px solid var(--line);padding:12px;font-size:13px;color:var(--muted)}
.facts b{display:block;color:var(--ink);margin-bottom:4px}
.placeholder{border:1px dashed #444;padding:22px;color:var(--muted);font-size:14px;line-height:1.8;margin:18px 0}
@media(max-width:980px){.hero-grid,.buy{grid-template-columns:1fr}.masonry{grid-template-columns:repeat(2,1fr)}.card.big{grid-column:span 2;grid-row:span 1}.band{grid-template-columns:1fr}.reserve{grid-template-columns:1fr}.menu{display:none}}
@media(max-width:560px){.masonry{grid-template-columns:1fr}.card.big{grid-column:span 1}.reserve a{grid-template-columns:1fr}.reserve img{width:100%;height:140px}}

/* article polish */
.panel h3{font-size:16px;margin:20px 0 8px;color:var(--y)}
.panel .body strong{color:#fff}
.panel .related{margin-top:34px;padding-top:18px;border-top:1px solid var(--line)}
.panel .related ul{padding-left:18px}
.panel .table-wrap{overflow:auto;margin:16px 0 22px;border:1px solid var(--line);background:#0d0d0d}
.panel table{width:100%;border-collapse:collapse;font-size:13px}
.panel th,.panel td{padding:11px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top;color:#cfcfcf}
.panel th{background:#1a1a1a;color:var(--y);font-weight:800}
.panel tr:last-child td{border-bottom:none}
.bmi{margin:24px 0;padding:20px;border:1px solid var(--line);background:#0d0d0d}
.bmi h2{margin:0 0 8px;font-size:18px;color:var(--y)}
.bmi p{margin:0 0 14px;color:var(--muted);font-size:13px}
.bmi-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:12px}
.bmi label{display:grid;gap:6px;font-size:11px;letter-spacing:.08em;color:var(--muted);text-transform:uppercase}
.bmi input{border:1px solid var(--line);background:#121212;color:var(--ink);padding:11px 12px;font:inherit}
.bmi input:focus{outline:1px solid var(--y);border-color:var(--y)}
.bmi button{border:0;background:var(--y);color:#111;padding:11px 16px;font:inherit;font-weight:800;cursor:pointer}
.bmi button:hover{filter:brightness(1.05)}
.bmi-out{margin-top:14px;padding:12px 14px;border:1px dashed #444;background:#121212;font-size:14px;color:#cfcfcf}
@media(max-width:700px){.bmi-grid{grid-template-columns:1fr}}
/* 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 */
.panel .content section.related,.page .content section.related{margin-top:34px;padding-top:18px;border-top:1px solid var(--line)}
.panel .content section.related h2,.page .content section.related h2{font-size:16px;color:var(--y);margin:0 0 12px}
.panel .content section.related>a,.page .content section.related>a{display:block;padding:14px;border:1px solid var(--line);background:#0d0d0d;margin-bottom:10px;text-decoration:none}
.panel .content section.related>a strong{display:block;font-size:14px;color:var(--y);margin-bottom:6px}
.panel .content section.related>a span{font-size:12px;color:var(--muted);line-height:1.5}
/* article-layout-wide */
main.page .wrap {
  max-width: min(960px, 94vw);
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  box-sizing: border-box;
}
main.page .panel,
main.page .panel .content {
  max-width: 100%;
}

/* 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;
}
