/*
Theme Name: 資本快報（雜誌封面）
Template: nvbase
Description: capital.itman.net.tw 專屬外觀：雜誌大圖封面、米白紙感＋黑字、股匯看板跑馬、本期目錄、理財試算（定期定額／房貸）。
Version: 1.0.0
*/
:root{
	--paper:#f3ede2; --paper2:#ebe3d4; --ink:#141210; --muted:#6b6358; --line:#d4c9b6;
	--accent:#a4161a; --up:#c0262d; --down:#1e7a46;
	--serif:"Noto Serif TC","Songti TC",serif; --sans:"Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif; --mono:"Roboto Mono",ui-monospace,monospace;
}
*{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.8 var(--sans)}
a{color:inherit;text-decoration:none}
a:hover{color:var(--accent)}
img{max-width:100%;display:block}
.cap-wrap{max-width:1200px;margin:0 auto;padding-inline:24px}
.nv-wrap{max-width:1200px;margin:0 auto;padding-inline:24px}

/* ---------- 報頭 ---------- */
.cap-head-in{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;padding-block:26px 14px}
.cap-mast{display:flex;flex-direction:column;line-height:1}
.cap-mast:hover{color:inherit}
.cap-en{font:700 14px var(--mono);letter-spacing:.6em;color:var(--accent);margin-bottom:8px}
.cap-zh{font:900 clamp(46px,7vw,86px)/1 var(--serif);letter-spacing:.06em}
.cap-issue{display:flex;flex-direction:column;align-items:flex-end;gap:4px;font:500 13px var(--mono);color:var(--muted)}
.cap-issue>span:first-child{font-size:22px;color:var(--ink);font-weight:700}
.nv-search{display:flex;margin-top:6px;border-bottom:1px solid var(--ink)}
.nv-search input{background:none;border:0;padding:4px 2px;width:170px;font:inherit;font-size:14px;outline:none}
.nv-search button{background:none;border:0;font:700 13px var(--sans);cursor:pointer}

.cap-nav{border-top:3px solid var(--ink);border-bottom:1px solid var(--ink)}
.cap-nav ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap}
.cap-nav a{display:block;padding:9px 16px 9px 0;margin-right:6px;font:700 15px var(--serif);letter-spacing:.12em}
.cap-nav li.on a{color:var(--accent);box-shadow:inset 0 -3px var(--accent)}
.cap-burger{display:none;background:none;border:0;font:700 15px var(--serif);padding:9px 0;cursor:pointer}

.cap-board{background:var(--ink);color:#efe8db;overflow:hidden;white-space:nowrap}
.cap-board-track{display:inline-flex;gap:38px;padding:9px 0;animation:caprun 60s linear infinite}
.cap-board:hover .cap-board-track{animation-play-state:paused}
.cap-q{display:inline-flex;align-items:baseline;gap:8px;font-size:13.5px}
.cap-q em{font-style:normal;color:#b9ae9c}
.cap-q b{font:700 15px var(--mono);color:#fff}
.cap-q small{font:500 12px var(--mono);color:#b9ae9c}
.cap-q.up small{color:#ff7b7b}.cap-q.down small{color:#6fd39b}
@keyframes caprun{to{transform:translateX(-50%)}}

/* ---------- 標題 ---------- */
.cap-h2{display:flex;align-items:baseline;gap:12px;font:900 24px var(--serif);margin:0 0 16px;padding-bottom:8px;border-bottom:1px solid var(--ink)}
.cap-h2 span{font:700 11.5px var(--mono);letter-spacing:.35em;color:var(--accent)}

/* ---------- 封面 ---------- */
.cap-cover{display:grid;grid-template-columns:1.45fr 1fr;margin-top:30px;min-height:480px;background:var(--ink);color:var(--paper)}
.cap-cover-img{display:block;overflow:hidden;position:relative}
.cap-cover-img img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(1.05);transition:transform .8s}
.cap-cover:hover .cap-cover-img img{transform:scale(1.03)}
.cap-cover-txt{padding:38px 36px;display:flex;flex-direction:column;justify-content:center}
.cap-label{font:700 13px var(--sans);letter-spacing:.2em;color:#e9b84a;margin:0 0 14px}
.cap-label span{font-family:var(--mono);color:#9d9282;margin-left:8px;letter-spacing:.3em}
.cap-cover h1{font:900 clamp(26px,3vw,40px)/1.35 var(--serif);margin:0 0 16px}
.cap-cover h1 a:hover{color:#e9b84a}
.cap-dek{color:#cfc5b4;font-size:15.5px;margin:0 0 22px}
.cap-read{align-self:flex-start;border:1px solid var(--paper);padding:8px 18px;font-weight:700;letter-spacing:.1em}
.cap-read:hover{background:var(--paper);color:var(--ink)}

/* ---------- 目錄 ---------- */
.cap-toc{margin-top:46px}
.cap-toc ol{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;column-gap:40px}
.cap-toc li{display:grid;grid-template-columns:64px 1fr;gap:14px;align-items:start;padding:14px 0;border-bottom:1px dashed var(--line)}
.cap-toc b{font:700 34px/1 var(--mono);color:var(--line);-webkit-text-stroke:1px var(--ink)}
.cap-toc em{display:block;font-style:normal;font-size:12.5px;font-weight:700;color:var(--accent);letter-spacing:.1em}
.cap-toc a{font:700 18px/1.5 var(--serif)}

/* ---------- 深度報導 ---------- */
.cap-deep{margin-top:46px}
.cap-deep-grid{display:grid;grid-template-columns:1.6fr 1fr;grid-template-rows:auto auto;gap:22px 28px}
.cap-deep-item.is-big{grid-row:span 2}
.cap-deep-img{display:block;overflow:hidden;aspect-ratio:16/10;background:var(--paper2);margin-bottom:10px}
.cap-deep-item.is-big .cap-deep-img{aspect-ratio:4/3}
.cap-deep-img img{width:100%;height:100%;object-fit:cover;filter:grayscale(.15)}
.cap-deep-item em{font-style:normal;font-size:12.5px;font-weight:700;color:var(--accent);letter-spacing:.1em}
.cap-deep-item h3{font:900 19px/1.45 var(--serif);margin:2px 0 6px}
.cap-deep-item.is-big h3{font-size:clamp(22px,2.4vw,28px)}
.cap-deep-item p{margin:0;color:var(--muted);font-size:15px}

/* ---------- 理財試算＋側欄 ---------- */
.cap-tools{display:grid;grid-template-columns:1fr 340px;gap:30px;margin-top:50px;align-items:start}
.cap-calc{background:#fbf8f2;border:1px solid var(--ink);padding:22px 24px;box-shadow:8px 8px 0 var(--ink)}
.cap-calc-tabs{display:flex;gap:0;margin-bottom:16px;border:1px solid var(--ink);width:max-content}
.cap-calc-tabs button{background:none;border:0;padding:6px 18px;font:700 15px var(--sans);cursor:pointer}
.cap-calc-tabs button[aria-selected="true"]{background:var(--ink);color:var(--paper)}
.cap-form{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.cap-form[hidden]{display:none}
.cap-form label{display:flex;flex-direction:column;font-size:13.5px;color:var(--muted);gap:4px}
.cap-form input{border:0;border-bottom:2px solid var(--ink);background:none;font:700 20px var(--mono);padding:4px 0;color:var(--ink);outline:none;width:100%}
.cap-form input:focus{border-color:var(--accent)}
.cap-out{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:8px;padding-top:14px;border-top:1px dashed var(--line)}
.cap-out small{display:block;font-size:13px;color:var(--muted)}
.cap-out b{font:700 clamp(18px,2.2vw,26px) var(--mono)}
.cap-out div:first-child b{color:var(--accent)}
.cap-note{font-size:12.5px;color:var(--muted);margin:14px 0 0}
.nv-side>*+*{margin-top:18px}

/* ---------- 三欄分類 ---------- */
.cap-cols{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:56px}
.cap-col-img{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--paper2);margin-bottom:10px}
.cap-col-img img{width:100%;height:100%;object-fit:cover}
.cap-col h3{font:900 18px/1.5 var(--serif);margin:0 0 8px}
.cap-col ul{list-style:none;margin:0;padding:0}
.cap-col li{padding:8px 0;border-top:1px solid var(--line);font-size:15px;line-height:1.55}

/* ---------- 頁尾 ---------- */
.cap-foot{background:var(--ink);color:#cfc5b4;margin-top:60px}
.cap-foot-in{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;padding-block:40px 24px}
.cap-foot .cap-zh{display:block;color:var(--paper);font-size:44px}
.cap-foot .cap-en{display:block}
.cap-foot p{margin:10px 0 0}
.cap-foot nav{display:grid;grid-template-columns:repeat(2,auto);gap:6px 30px;align-content:start;font-size:14.5px}
.cap-foot nav a:hover{color:#fff}
.cap-copy{border-top:1px solid #2e2a25;margin:0;padding:14px 24px;text-align:center;font-size:12.5px;color:#8c8273}

/* ---------- 內頁 ---------- */
.nv-layout{display:grid;grid-template-columns:1fr 330px;gap:36px;align-items:start;padding-top:10px}
.nv-crumb{font:12.5px var(--mono);color:var(--muted);margin:24px 0 8px;letter-spacing:.03em}
.nv-crumb .sep{margin:0 6px}
.nv-page-head{border-bottom:3px solid var(--ink);margin-bottom:6px;padding-bottom:8px}
.nv-page-title{font:900 36px var(--serif);margin:0}
.nv-list-item{display:grid;grid-template-columns:230px 1fr;gap:20px;padding:20px 0;border-bottom:1px solid var(--line)}
.nv-list-item .nv-card-media{aspect-ratio:4/3;overflow:hidden;background:var(--paper2)}
.nv-list-item .nv-card-media img{width:100%;height:100%;object-fit:cover}
.nv-list-item:not(:has(.nv-card-media)){grid-template-columns:1fr}
.nv-card-cat{font-size:12.5px;font-weight:700;color:var(--accent);letter-spacing:.1em}
.nv-card-title{font:900 20px/1.5 var(--serif);margin:2px 0 6px}
.nv-card-excerpt{margin:0 0 4px;font-size:15px;color:var(--muted)}
.nv-card-time{font:12px var(--mono);color:var(--muted)}
.nv-pagination{display:flex;flex-wrap:wrap;gap:6px;margin:26px 0}
.nv-pagination .page-numbers{border:1px solid var(--ink);padding:3px 12px;font:13px var(--mono)}
.nv-pagination .current{background:var(--ink);color:var(--paper)}
.nv-article-head{border-bottom:3px solid var(--ink);padding-bottom:16px;margin-bottom:24px}
.nv-article-cat{font-size:13px;font-weight:700;color:var(--accent);letter-spacing:.2em}
.nv-article-title{font:900 clamp(28px,3.6vw,42px)/1.35 var(--serif);margin:8px 0 12px}
.nv-article-meta{font:13px var(--mono);color:var(--muted);display:flex;gap:16px}
.nv-article-body{font-size:17.5px;line-height:2}
.nv-article-body>p:first-of-type::first-letter{float:left;font:900 3.2em/1 var(--serif);margin:.08em .12em 0 0;color:var(--accent)}
.nv-article-body p{margin:0 0 1.25em}
.nv-article-body a{color:var(--accent);text-decoration:underline}
.nv-article-body img{height:auto}
.nv-tags{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}
.nv-tags a{border:1px solid var(--ink);padding:1px 10px;font-size:13.5px}
.nv-sec-title{font:900 22px var(--serif);border-bottom:1px solid var(--ink);padding-bottom:6px;margin:40px 0 16px}
.nv-related-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.nv-related-grid .nv-card-media{display:block;aspect-ratio:4/3;overflow:hidden;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:15.5px}
.nv-prevnext{display:flex;justify-content:space-between;gap:20px;border-top:1px solid var(--ink);margin-top:30px;padding-top:14px;font:700 15px var(--serif)}
.nv-prevnext .next{text-align:right;margin-left:auto}
.nv-404{padding-block:40px}

/* ---------- 手機 ---------- */
@media (max-width:980px){
	.cap-cover{grid-template-columns:1fr}
	.cap-cover-img{aspect-ratio:16/10}
	.cap-cover-txt{padding:24px 22px}
	.cap-tools,.nv-layout{grid-template-columns:1fr}
	.cap-cols{grid-template-columns:1fr 1fr}
	.nv-related-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width:680px){
	.cap-wrap,.nv-wrap{padding-inline:16px}
	.cap-head-in{flex-direction:column;align-items:flex-start}
	.cap-issue{align-items:flex-start;flex-direction:row;flex-wrap:wrap;gap:4px 12px}
	.cap-issue>span:first-child{font-size:15px}
	.cap-burger{display:block}
	.cap-nav ul{display:none;flex-direction:column}
	.cap-nav.is-open ul{display:flex}
	.cap-nav a{border-top:1px solid var(--line)}
	.cap-toc ol,.cap-deep-grid,.cap-cols,.cap-form,.cap-out{grid-template-columns:1fr}
	.cap-deep-item.is-big{grid-row:auto}
	.cap-calc{box-shadow:5px 5px 0 var(--ink);padding:18px}
	.nv-list-item{grid-template-columns:110px 1fr;gap:12px}
	.nv-list-item .nv-card-excerpt{display:none}
	.nv-card-title{font-size:17px}
}
