/*
Theme Name: 環域財經（商業名錄）
Template: nvbase
Description: biz.eco-nic.net 專屬子主題：商業名錄。奶油底、暖赭黃主色＋深咖啡輔色；今日商情索引、工整的卡片瀑布流、各縣市上市櫃公司名錄（政府開放資料）。
Version: 1.0.0
*/
:root{
	--oc:#A8690F;--oc2:#C98A26;--oc3:#F6E7C8;--cf:#3D281B;--cf2:#5A3D2B;
	--ink:#2B1F16;--muted:#6F5E4F;--rule:#E5D6BC;--rule2:#EFE5D2;--bg:#FBF6EC;--bg2:#F4EAD6;--card:#FFFDF8;
	--sans:"Noto Sans TC",system-ui,-apple-system,"PingFang TC","Microsoft JhengHei",sans-serif;
	--num:"IBM Plex Sans Condensed","Noto Sans TC",system-ui,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.bz{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.7;overflow-x:hidden}
a{color:inherit;text-decoration:none}
a:hover{color:var(--oc)}
img{max-width:100%;display:block}
h1,h2,h3,h4{line-height:1.4;margin:0;font-weight:700}
[hidden]{display:none!important}
time{font-family:var(--num);font-variant-numeric:tabular-nums}
.bz-in{max-width:1220px;margin:0 auto;padding:0 24px}

/* ---------- 頁首 ---------- */
.bz-strip{background:var(--cf);color:#E9DCC8;font-size:12.5px}
.bz-strip-in{display:flex;justify-content:space-between;gap:16px;min-height:32px;align-items:center}
.bz-strip-r{color:#D9B67A;letter-spacing:.08em}
.bz-mast{display:flex;align-items:center;gap:24px;padding-top:20px;padding-bottom:18px}
.bz-brand{display:flex;align-items:center;gap:14px;color:var(--cf)}
.bz-brand:hover{color:var(--cf)}
.bz-brand-mark{display:grid;grid-template-columns:repeat(3,9px);gap:3px;align-items:end;height:34px}
.bz-brand-mark i{display:block;background:var(--oc);border-radius:1px}
.bz-brand-mark i:nth-child(1){height:16px;background:var(--oc2)}
.bz-brand-mark i:nth-child(2){height:26px}
.bz-brand-mark i:nth-child(3){height:34px;background:var(--cf)}
.bz-brand-txt{display:flex;flex-direction:column;line-height:1.15}
.bz-brand strong{font-size:30px;font-weight:900;letter-spacing:.1em}
.bz-brand small{font-family:var(--num);font-size:11.5px;letter-spacing:.32em;color:var(--oc);margin-top:5px;font-weight:600}
.bz-mast-search{margin-left:auto;width:300px}
.nv-search{display:flex;background:var(--card);border:1px solid var(--rule);border-radius:3px;overflow:hidden}
.nv-search input{flex:1;min-width:0;border:0;background:transparent;padding:8px 12px;font:inherit;font-size:14px;color:var(--ink);outline:none}
.nv-search button{border:0;background:var(--cf);color:#fff;font:inherit;font-size:13px;font-weight:700;padding:8px 16px;cursor:pointer}
.nv-search button:hover{background:var(--oc)}
.bz-burger{display:none;margin-left:auto;width:42px;height:40px;border:1px solid var(--rule);background:var(--card);border-radius:3px;flex-direction:column;justify-content:center;align-items:center;gap:5px;cursor:pointer}
.bz-burger span{display:block;width:20px;height:2px;background:var(--cf);transition:.2s}
.bz-burger.x span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.bz-burger.x span:nth-child(2){opacity:0}
.bz-burger.x span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.bz-nav{border-top:1px solid var(--cf);border-bottom:3px solid var(--oc);background:var(--card)}
.bz-nav-in{display:flex;flex-wrap:wrap;gap:0 4px}
.bz-nav a{position:relative;padding:11px 14px;font-weight:700;font-size:15px;color:var(--cf)}
.bz-nav a.on,.bz-nav a:hover{color:var(--oc)}
.bz-nav a.on:after{content:"";position:absolute;left:14px;right:14px;bottom:0;height:3px;background:var(--cf)}
.bz-nav a.bz-nav-dir{margin-left:auto;color:var(--oc)}
.bz-nav a.bz-nav-dir:before{content:"";display:inline-block;width:8px;height:8px;background:var(--oc);margin-right:7px;vertical-align:1px}
.bz-nav-search{display:none}

/* ---------- 區塊標題 ---------- */
.bz-sec-head{display:flex;align-items:baseline;gap:14px;border-bottom:1px solid var(--rule);padding-bottom:10px;margin-bottom:18px}
.bz-sec{font-size:22px;font-weight:900;color:var(--cf);display:flex;align-items:center;gap:10px}
.bz-sec:before{content:"";width:12px;height:12px;background:var(--oc)}
.bz-sec-head p{margin:0;color:var(--muted);font-size:13.5px}

/* ---------- 今日商情 ---------- */
.bz-top{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(0,1fr);gap:32px;padding-top:28px;padding-bottom:30px}
.bz-lead{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--rule)}
.bz-lead-fig{display:block;aspect-ratio:16/9;overflow:hidden;background:var(--bg2)}
.bz-lead-fig img{width:100%;height:100%;object-fit:cover}
.bz-lead-body{padding:20px 24px 24px;border-top:4px solid var(--oc)}
.bz-kick{display:flex;gap:12px;align-items:center;margin:0 0 8px;font-size:13px;color:var(--muted)}
.bz-kick span{font-weight:700;color:var(--oc);letter-spacing:.06em}
.bz-lead h1{font-size:28px;font-weight:900;line-height:1.45;color:var(--cf)}
.bz-lead-ex{margin:10px 0 0;color:var(--muted);font-size:15px}
.bz-index{background:var(--cf);color:#F3E8D6;padding:20px 22px 12px}
.bz-index-h{font-size:15px;letter-spacing:.2em;color:#E2BE7E;border-bottom:1px solid rgba(255,255,255,.18);padding-bottom:10px;margin-bottom:4px}
.bz-index ol{list-style:none;margin:0;padding:0}
.bz-index li{display:grid;grid-template-columns:40px minmax(0,1fr);gap:8px;padding:12px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.bz-index li:last-child{border-bottom:0}
.bz-index-no{font-family:var(--num);font-size:22px;font-weight:700;color:#E2BE7E;line-height:1.1}
.bz-index-cat{margin:0 0 2px;font-size:12px;color:#BFA88C}
.bz-index a{font-size:15px;font-weight:600;line-height:1.55;color:#FFF8EC}
.bz-index a:hover{color:#E2BE7E}

/* ---------- 企業動態（卡片瀑布流） ---------- */
.bz-split{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:36px;padding-bottom:44px;align-items:start}
.bz-flow{columns:3 230px;column-gap:18px}
.bz-card{break-inside:avoid;margin:0 0 18px;background:var(--card);border:1px solid var(--rule);border-top:3px solid var(--oc);display:flex;flex-direction:column}
.bz-card.has-img{border-top-color:var(--cf)}
.bz-card-fig{display:block;overflow:hidden;background:#fff;border-bottom:1px solid var(--rule2)}
.bz-card-fig img{width:100%;height:auto;max-height:230px;object-fit:contain;margin:0 auto}
.bz-card-body{padding:12px 14px 14px}
.bz-card-cat{margin:0 0 4px;font-size:12px;font-weight:700;color:var(--oc);letter-spacing:.08em}
.bz-card h3{font-size:16px;line-height:1.55;color:var(--cf)}
.bz-card-ex{margin:8px 0 0;font-size:13.5px;color:var(--muted)}
.bz-card time{display:block;margin-top:10px;font-size:12.5px;color:var(--muted);border-top:1px dashed var(--rule);padding-top:8px}
.bz-more{display:inline-block;margin-top:4px;font-weight:700;color:var(--oc);border-bottom:2px solid var(--oc2)}

/* ---------- 側欄 ---------- */
.nv-side{min-width:0}

.nv-side>*{margin-bottom:22px}
.nv-side .news-classified-ads-block{border-top:3px solid var(--oc)!important}
.nv-widget-title{font-size:16px;font-weight:900;border-bottom:2px solid var(--oc);padding-bottom:6px;margin-bottom:10px}

/* ---------- 上市櫃公司名錄 ---------- */
.bz-dir{background:var(--bg2);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:40px 0 36px}
.bz-dir.is-loading .bz-groups{opacity:.45;transition:opacity .2s}
.bz-dir-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:18px}
.bz-dir-k{margin:0;font-family:var(--num);font-size:12px;letter-spacing:.4em;color:var(--oc);font-weight:700}
.bz-dir-head h2{font-size:28px;font-weight:900;color:var(--cf);margin:2px 0 6px}
.bz-dir-lede{margin:0;color:var(--muted)}
.bz-dir-lede b{font-family:var(--num);color:var(--oc);font-size:18px}
.bz-seg{display:flex;border:1px solid var(--cf);border-radius:3px;overflow:hidden;flex-shrink:0}
.bz-seg button{border:0;background:var(--card);color:var(--cf);font:inherit;font-size:14px;font-weight:700;padding:7px 18px;cursor:pointer}
.bz-seg button+button{border-left:1px solid var(--cf)}
.bz-seg button[aria-pressed="true"]{background:var(--cf);color:#fff}
.bz-cities{display:flex;flex-wrap:wrap;gap:6px;padding:14px 0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.bz-cities button{border:1px solid var(--rule);background:var(--card);color:var(--cf);font:inherit;font-size:14px;padding:5px 12px;border-radius:2px;cursor:pointer;display:inline-flex;gap:6px;align-items:baseline}
.bz-cities button small{font-family:var(--num);font-size:12px;color:var(--muted)}
.bz-cities button:hover{border-color:var(--oc)}
.bz-cities button[aria-pressed="true"]{background:var(--oc);border-color:var(--oc);color:#fff;font-weight:700}
.bz-cities button[aria-pressed="true"] small{color:#FCEFD6}
.bz-city-sel{display:none}
.bz-dir-sum{display:flex;align-items:baseline;gap:12px;margin:20px 0 8px}
.bz-dir-sum b{font-size:24px;font-weight:900;color:var(--cf)}
.bz-dir-sum span{color:var(--muted);font-family:var(--num)}
.bz-jump{display:flex;flex-wrap:wrap;gap:4px 14px;margin-bottom:10px;font-size:13.5px}
.bz-jump a{color:var(--cf2);border-bottom:1px solid transparent}
.bz-jump a:hover{border-bottom-color:var(--oc);color:var(--oc)}
.bz-jump small{font-family:var(--num);color:var(--oc);margin-left:3px}
.bz-group{padding-top:20px;scroll-margin-top:12px}
.bz-group-h{display:flex;align-items:baseline;gap:10px;font-size:18px;font-weight:900;color:var(--cf);border-bottom:2px solid var(--cf);padding-bottom:6px;margin-bottom:14px}
.bz-group-h span{font-family:var(--num);font-size:13px;font-weight:600;color:var(--oc)}
.bz-cos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.bz-co{background:var(--card);border:1px solid var(--rule);border-left:4px solid var(--oc);padding:12px 14px 12px;display:flex;flex-direction:column;min-width:0}
.bz-co.otc{border-left-color:var(--cf2)}
.bz-co-top{display:flex;justify-content:space-between;align-items:center;font-family:var(--num);font-size:12.5px}
.bz-co-code{font-weight:700;color:var(--oc);letter-spacing:.06em}
.bz-co-mkt{color:var(--muted);border:1px solid var(--rule);padding:0 6px;border-radius:2px;font-size:11.5px}
.bz-co-name{font-size:19px;font-weight:900;color:var(--cf);margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bz-co-full{margin:0 0 8px;font-size:12px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bz-co-dl{margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;border-top:1px dashed var(--rule);padding-top:8px}
.bz-co-dl div{min-width:0}
.bz-co-dl dt{color:var(--muted);font-size:11.5px}
.bz-co-dl dd{margin:0;font-size:13.5px;font-weight:700;color:var(--cf);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--num),var(--sans)}
.bz-co-web{margin-top:8px;align-self:flex-start;font-size:12.5px;font-weight:700;color:var(--oc)}
.bz-allg{display:block;width:100%;margin-top:24px;border:1px solid var(--oc);background:var(--card);color:var(--oc);font:inherit;font-size:15px;font-weight:700;padding:11px;border-radius:2px;cursor:pointer}
.bz-allg:hover{background:var(--oc);color:#fff}
.bz-group-more{margin-top:12px;border:1px solid var(--cf);background:transparent;color:var(--cf);font:inherit;font-size:13.5px;font-weight:700;padding:6px 16px;border-radius:2px;cursor:pointer}
.bz-group-more:hover{background:var(--cf);color:#fff}
.bz-empty{color:var(--muted);margin:16px 0}
.bz-note{font-size:13px;color:var(--muted);margin:24px 0 0}
.nv-govcredit{font-size:12px;color:var(--muted);margin:8px 0 0;line-height:1.6}
.nv-govcredit a{color:var(--oc);text-decoration:underline}

/* ---------- 分類目錄 ---------- */
.bz-cats{padding-top:36px;padding-bottom:44px}
.bz-cats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.bz-cat{border-top:3px solid var(--cf);padding-top:10px;display:flex;flex-direction:column}
.bz-cat-h{display:flex;justify-content:space-between;align-items:baseline;font-size:19px;font-weight:900;color:var(--cf);margin-bottom:6px}
.bz-cat-h small{font-family:var(--num);font-size:12px;color:var(--oc);font-weight:600}
.bz-cat ul{list-style:none;margin:0;padding:0;flex:1}
.bz-cat li{padding:8px 0;border-bottom:1px solid var(--rule2);font-size:14.5px;line-height:1.55}
.bz-cat li time{display:block;font-size:12px;color:var(--muted);margin-top:2px}
.bz-cat-more{margin-top:10px;font-size:13.5px;font-weight:700;color:var(--oc)}

/* ---------- 頁尾 ---------- */
.bz-foot{background:var(--cf);color:#E7D9C4;padding:34px 0 30px;margin-top:0}
.bz-foot-in{display:grid;gap:14px}
.bz-foot-brand{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap}
.bz-foot-brand strong{font-size:22px;letter-spacing:.1em;color:#fff}
.bz-foot-brand span{color:#D9B67A;font-size:13px}
.bz-foot-cats{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:14px;border-top:1px solid rgba(255,255,255,.15);padding-top:14px}
.bz-foot-cats a:hover{color:#E2BE7E}
.bz-foot-note{margin:0;font-size:12.5px;color:#BFA88C}

/* ---------- 內頁 ---------- */
.nv-wrap{max-width:1220px;margin:0 auto;padding:0 24px}
.nv-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:36px;padding-top:26px;padding-bottom:48px;align-items:start}
.nv-main{min-width:0}
.nv-crumb{font-size:13px;color:var(--muted);margin-bottom:14px}
.nv-crumb a{color:var(--oc)}
.nv-crumb .sep{margin:0 6px;color:var(--rule)}
.nv-page-head{border-bottom:2px solid var(--cf);padding-bottom:12px;margin-bottom:6px}
.nv-page-title{font-size:28px;font-weight:900;color:var(--cf);display:flex;align-items:center;gap:12px}
.nv-page-title:before{content:"";width:14px;height:14px;background:var(--oc);flex-shrink:0}
.nv-page-desc{color:var(--muted);font-size:14px;margin-top:6px}
.nv-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;padding-top:16px}
.nv-list-item{background:var(--card);border:1px solid var(--rule);border-top:3px solid var(--oc);display:flex;flex-direction:column}
.nv-list-item .nv-card-media{display:block;aspect-ratio:16/9;overflow:hidden;background:#fff;border-bottom:1px solid var(--rule2)}
.nv-list-item .nv-card-media img{width:100%;height:100%;object-fit:contain}
.nv-list-item .nv-card-body{padding:12px 16px 14px}
.nv-card-body{min-width:0;display:flex;flex-direction:column}
.nv-card-cat{font-size:12px;font-weight:700;color:var(--oc);letter-spacing:.08em}
.nv-card-title{font-size:17px;line-height:1.55;margin:3px 0 6px;color:var(--cf)}
.nv-card-excerpt{margin:0 0 8px;font-size:13.5px;color:var(--muted)}
.nv-card-time{font-size:12.5px;color:var(--muted);border-top:1px dashed var(--rule);padding-top:7px;margin-top:auto}
.nv-pagination{display:flex;flex-wrap:wrap;gap:6px;margin-top:26px}
.nv-pagination a,.nv-pagination span{font-family:var(--num);border:1px solid var(--rule);background:var(--card);padding:6px 13px;border-radius:2px;font-size:14px}
.nv-pagination .current{background:var(--cf);border-color:var(--cf);color:#fff}
.nv-pagination a:hover{border-color:var(--oc);color:var(--oc)}
.nv-empty{color:var(--muted)}
.nv-article{background:var(--card);border:1px solid var(--rule);padding:26px 32px 30px}
.nv-article-head{border-bottom:1px solid var(--rule);padding-bottom:16px;margin-bottom:22px}
.nv-article-cat{display:inline-block;font-size:13px;font-weight:700;color:#fff;background:var(--oc);padding:2px 12px;border-radius:2px}
.nv-article-title{font-size:30px;font-weight:900;line-height:1.45;margin:12px 0 10px;color:var(--cf)}
.nv-article-meta{display:flex;flex-wrap:wrap;gap:16px;font-size:13.5px;color:var(--muted)}
.nv-article-meta time{color:var(--oc);font-weight:600}
.nv-article-body{font-size:17px;line-height:1.95}
.nv-article-body p{margin:0 0 1.15em}
.nv-article-body img{height:auto}
.nv-article-body a{color:var(--oc);text-decoration:underline}
.nv-article-body h2,.nv-article-body h3{margin:1.4em 0 .6em;padding-left:12px;border-left:5px solid var(--oc);color:var(--cf)}
.nv-article-body figure{margin:1em 0;max-width:100%}
.nv-article-body figcaption{font-size:13px;color:var(--muted)}
.nv-article-body table{border-collapse:collapse;max-width:100%;display:block;overflow-x:auto}
.nv-article-body td,.nv-article-body th{border:1px solid var(--rule);padding:6px 8px}
.nv-article-body blockquote{margin:1em 0;padding:12px 18px;background:var(--oc3);border-left:4px solid var(--oc)}
.nv-tags{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}
.nv-tags a{font-size:13px;color:var(--cf);background:var(--oc3);padding:3px 10px;border-radius:2px}
.nv-sec-title{font-size:19px;font-weight:900;color:var(--cf);border-top:3px solid var(--cf);padding-top:10px;margin:30px 0 14px}
.nv-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.nv-related-grid .nv-card{display:flex;flex-direction:column}
.nv-related-grid .nv-card-media{display:block;aspect-ratio:3/2;overflow:hidden;background:var(--bg2);margin-bottom:8px}
.nv-related-grid .nv-card-media img{width:100%;height:100%;object-fit:cover}
.nv-related-grid .nv-card-title{font-size:15px}
.nv-related-grid .nv-card-time{border-top:0;padding-top:0}
.nv-prevnext{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:28px;border-top:1px solid var(--rule);padding-top:14px;font-size:14.5px}
.nv-prevnext .next{text-align:right}
.nv-prevnext a{color:var(--oc)}
.nv-404{padding-top:40px;padding-bottom:50px}
.nv-404 .nv-search{max-width:440px;margin:14px 0 10px}
.nv-404 .nv-page-title{margin-bottom:10px}

/* ---------- 平板 ---------- */
@media (max-width:1080px){
	.bz-top{grid-template-columns:1fr}
	.bz-cats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
	.nv-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:900px){
	.bz-split,.nv-layout{grid-template-columns:1fr}
	.bz-side{position:static}
	.bz-cos{grid-template-columns:repeat(2,minmax(0,1fr))}
	.bz-mast-search{display:none}
	.bz-burger{display:flex}
	.bz-nav{border-top:0}
	.bz-nav-in{display:none;flex-direction:column;padding:6px 16px 14px}
	.bz-nav.is-open .bz-nav-in{display:flex}
	.bz-nav a{padding:10px 4px;border-bottom:1px solid var(--rule2)}
	.bz-nav a.on:after{left:-8px;right:auto;width:4px;top:10px;bottom:10px;height:auto;background:var(--oc)}
	.bz-nav a.bz-nav-dir{margin-left:0}
	.bz-nav-search{display:block;margin-top:12px}
}
/* ---------- 手機 ---------- */
@media (max-width:720px){
	.bz-in,.nv-wrap{padding:0 16px}
	.bz-strip-r{display:none}
	.bz-mast{padding-top:14px;padding-bottom:12px;gap:12px}
	.bz-brand strong{font-size:23px}
	.bz-brand small{font-size:10px;letter-spacing:.22em}
	.bz-brand-mark{height:28px}
	.bz-top{padding-top:16px;padding-bottom:28px;gap:18px}
	.bz-lead-body{padding:14px 16px 18px}
	.bz-lead h1{font-size:21px}
	.bz-lead-ex{font-size:14px}
	.bz-sec-head{flex-direction:column;gap:2px}
	.bz-flow{columns:2 150px;column-gap:12px}
	.bz-card{margin-bottom:12px}
	.bz-card h3{font-size:14.5px}
	.bz-card-body{padding:10px 11px 11px}
	.bz-card-ex{font-size:13px}
	.bz-dir{padding:28px 0}
	.bz-dir-head{flex-direction:column;align-items:stretch;gap:12px}
	.bz-dir-head h2{font-size:23px}
	.bz-seg button{flex:1;padding:8px 6px}
	.bz-cities{display:none}
	.bz-city-sel{display:flex;align-items:center;gap:10px;font-weight:700;color:var(--cf)}
	.bz-city-sel select{flex:1;min-width:0;font:inherit;font-size:15px;padding:9px 10px;border:1px solid var(--cf);border-radius:3px;background:var(--card);color:var(--ink)}
	.bz-jump{flex-wrap:nowrap;overflow-x:auto;padding-bottom:6px;white-space:nowrap}
	.bz-cos{grid-template-columns:1fr 1fr;gap:10px}
	.bz-co{padding:10px 10px 10px 11px}
	.bz-co-name{font-size:17px}
	.bz-co-dl{grid-template-columns:1fr 1fr}
	.bz-co-dl div:first-child{grid-column:1 / -1}
	.bz-cats-grid{grid-template-columns:1fr;gap:20px}
	.nv-list{grid-template-columns:1fr}
	.nv-article{padding:16px 16px 20px;border-left:0;border-right:0;margin:0 -16px}
	.nv-article-title{font-size:23px}
	.nv-article-body{font-size:16px}
	.nv-related-grid{grid-template-columns:1fr 1fr;gap:12px}
	.nv-prevnext{grid-template-columns:1fr}
	.nv-prevnext .next{text-align:left}
}
