/*
Theme Name: 實況野球新聞
Theme URI: https://www.gameimp.net/
Description: GeneratePress 子主題。以「活動情報／故事／攻略」三區重建的版型，配色取夜間球場計分板。
Author: gameimp.net
Template: generatepress
Version: 1.0.0
Text Domain: gameimp
*/

/* ============ 色票 ============ */
:root{
  --gi-night:#0B1410;
  --gi-night-2:#132119;
  --gi-line-dark:#22362B;
  --gi-paper:#EEF2EA;
  --gi-card:#FFFFFF;
  --gi-ink:#0F1A14;
  --gi-ink-2:#5A6B60;
  --gi-line:#D8E0D5;
  --gi-led:#FFC531;
  --gi-clay:#C0553A;
  --gi-sky:#2E6FD9;
  --gi-turf:#2E7D57;
  --gi-sans:"Noto Sans TC",-apple-system,"PingFang TC","Microsoft JhengHei",sans-serif;
  --gi-serif:"Noto Serif TC",Georgia,"Songti TC","PMingLiU",serif;
  --gi-num:"Anton",var(--gi-sans);
}

body{background:var(--gi-paper); color:var(--gi-ink); font-family:var(--gi-sans);}
a{color:inherit;}

/* ============ 頁首：計分板 ============ */
.gi-header{background:var(--gi-night); color:#E8EFE7;}
.gi-inner{max-width:1060px; margin:0 auto; padding:0 24px;}
.gi-topbar{display:flex; align-items:center; justify-content:space-between; gap:16px; padding:16px 0 14px;}
.gi-brand{display:flex; align-items:baseline; gap:11px; min-width:0;}
.gi-brand a{text-decoration:none; display:flex; align-items:baseline; gap:11px; flex-wrap:wrap;}
.gi-mark{font-family:var(--gi-num); font-size:15px; letter-spacing:.06em; color:var(--gi-night);
  background:var(--gi-led); padding:4px 8px 3px; border-radius:2px; line-height:1;}
.gi-name{font-weight:900; font-size:19px; letter-spacing:.02em; color:#fff;}
.gi-sub{font-size:12px; color:#8FA79A;}
.gi-util{display:flex; gap:14px; align-items:center; font-size:13px; color:#9FB4A8;}
.gi-util a{text-decoration:none;}
.gi-util .gi-btn{border:1px solid #2E4438; padding:5px 11px; border-radius:2px;}
.gi-util .gi-btn:hover{border-color:var(--gi-led); color:var(--gi-led);}
.gi-search{display:flex; align-items:center;}
.gi-search input{background:transparent; border:0; border-bottom:1px solid #2E4438; color:#E8EFE7;
  font-family:inherit; font-size:13px; padding:4px 2px; width:110px; transition:width .2s ease;}
.gi-search input::placeholder{color:#6F8779;}
.gi-search input:focus{outline:none; border-bottom-color:var(--gi-led); width:170px;}

.gi-rail{border-top:1px solid var(--gi-line-dark); display:flex; gap:0; font-size:14px;
  overflow-x:auto; -webkit-overflow-scrolling:touch; scrollbar-width:none;}
.gi-rail::-webkit-scrollbar{display:none;}
.gi-rail a{padding:11px 0; margin-right:26px; font-weight:700; color:#C9D8CE; text-decoration:none;
  border-bottom:3px solid transparent; display:flex; align-items:center; gap:7px; white-space:nowrap;}
.gi-rail a .gi-n{font-family:var(--gi-num); font-size:11px; color:#6F8779; font-variant-numeric:tabular-nums;}
.gi-rail a:hover{color:#fff;}
.gi-rail a.is-current{color:#fff; border-bottom-color:var(--gi-led);}

/* ============ 首頁容器脫離 GP 的格線 ============ */
.home #page.grid-container,
.home #page{max-width:none; padding:0; margin:0; background:transparent;}
.home .site-content{display:block; padding:0;}
.home #primary{width:100%; float:none; padding:0;}
.home .site-main{margin:0;}

/* ============ 首頁：頭條 ============ */
.gi-hero{background:var(--gi-night-2); display:grid; grid-template-columns:1.05fr 1fr;}
.gi-hero__pic{position:relative; min-height:300px; background:#0B1410 center/cover no-repeat;}
.gi-hero__pic::after{content:""; position:absolute; inset:0;
  background:linear-gradient(90deg,rgba(11,20,16,0) 55%,rgba(19,33,25,.96) 100%);}
.gi-hero__txt{padding:36px 34px 34px; display:flex; flex-direction:column; justify-content:center;
  gap:12px; color:#E8EFE7;}
.gi-kicker{display:flex; align-items:center; gap:10px; font-size:12px; color:#9FB4A8; flex-wrap:wrap;}
.gi-chip{font-size:11px; font-weight:700; letter-spacing:.06em; padding:3px 8px; border-radius:2px;
  background:var(--gi-led); color:#231A00; text-decoration:none;}
.gi-chip--ghost{background:transparent; border:1px solid #3A5145; color:#9FB4A8;}
.gi-chip--clay{background:var(--gi-clay); color:#fff;}
.gi-chip--sky{background:var(--gi-sky); color:#fff;}
.gi-chip--turf{background:var(--gi-turf); color:#fff;}
.gi-hero__txt h2{font-family:var(--gi-serif); font-weight:900; font-size:30px; line-height:1.4;
  margin:0; color:#fff; text-wrap:balance;}
.gi-hero__txt h2 a{text-decoration:none;}
.gi-hero__txt h2 a:hover{color:var(--gi-led);}
.gi-nameplate{display:inline-flex; align-items:center; gap:8px; font-family:var(--gi-serif);
  font-size:13px; font-weight:700; color:var(--gi-led); letter-spacing:.08em;}
.gi-nameplate::before{content:""; width:22px; height:1px; background:var(--gi-led);}
.gi-hero__txt p{margin:0; color:#B8C9BE; font-size:14.5px; line-height:1.85;}
.gi-more{font-size:13px; font-weight:700; color:var(--gi-led); text-decoration:none;}
time{font-variant-numeric:tabular-nums; letter-spacing:.02em;}

/* ============ 區塊 ============ */
.gi-sec{padding:42px 0 0;}
.gi-sec:last-of-type{padding-bottom:48px;}
.gi-sec__title{display:flex; align-items:baseline; gap:12px; margin-bottom:18px;
  border-bottom:2px solid var(--gi-ink); padding-bottom:8px; flex-wrap:wrap;}
.gi-sec__title h2{margin:0; font-size:19px; font-weight:900; letter-spacing:.01em;}
.gi-sec__title .gi-en{font-family:var(--gi-num); font-size:11px; letter-spacing:.16em;
  color:var(--gi-ink-2); text-transform:uppercase;}
.gi-sec__title .gi-all{margin-left:auto; font-size:13px; color:var(--gi-ink-2); text-decoration:none;}
.gi-sec__title .gi-all:hover{color:var(--gi-ink);}

/* ---- 角色圖鑑 ---- */
.gi-roster{display:grid; grid-template-columns:repeat(4,1fr); gap:16px;}
.gi-card{background:var(--gi-card); border:1px solid var(--gi-line); border-radius:3px;
  overflow:hidden; display:flex; flex-direction:column; text-decoration:none;}
.gi-card:hover{border-color:var(--gi-ink-2);}
.gi-card__thumb{aspect-ratio:1/1; background:#DDE4DA center/cover no-repeat; position:relative;
  display:block; overflow:hidden;}
.gi-card__thumb img{width:100%; height:100%; object-fit:cover; display:block;}
.gi-card__plate{position:absolute; left:0; bottom:0; background:var(--gi-night); color:#fff;
  font-family:var(--gi-serif); font-weight:700; font-size:14px; padding:5px 11px 4px; letter-spacing:.06em;}
.gi-card__body{padding:12px 13px 14px; display:flex; flex-direction:column; gap:7px; flex:1;}
.gi-card__t{font-size:14.5px; font-weight:700; line-height:1.55; text-wrap:balance; color:var(--gi-ink);}
.gi-card__m{margin-top:auto; font-size:11.5px; color:var(--gi-ink-2); display:flex; gap:8px; align-items:center;}
.gi-card__thumb--none{background:repeating-linear-gradient(135deg,#12201A 0 9px,#152419 9px 18px);
  display:flex; align-items:center; justify-content:center;}
.gi-card__thumb--none .gi-big{font-family:var(--gi-serif); font-weight:900; font-size:38px;
  color:var(--gi-led); writing-mode:vertical-rl; letter-spacing:.14em; line-height:1;
  max-height:82%; overflow:hidden;}
.gi-card__thumb--none .gi-big--muted{color:#3E5548; font-size:26px;}

/* ---- 活動情報 ---- */
.gi-feed{display:flex; flex-direction:column;}
.gi-feed a{display:grid; grid-template-columns:96px 1fr; gap:16px; padding:13px 0;
  border-bottom:1px solid var(--gi-line); align-items:start; text-decoration:none;}
.gi-feed a:hover .gi-feed__h{color:var(--gi-turf);}
.gi-feed__d{font-family:var(--gi-num); font-size:13px; color:var(--gi-ink-2);
  font-variant-numeric:tabular-nums; padding-top:3px; letter-spacing:.05em;}
.gi-feed__h{font-size:15.5px; font-weight:700; line-height:1.6; color:var(--gi-ink); text-wrap:balance;}
.gi-feed__x{font-size:13px; color:var(--gi-ink-2); margin-top:3px; line-height:1.65;}

/* ---- 劇本故事 ---- */
.gi-story a{display:grid; grid-template-columns:78px 1fr; gap:14px; padding:14px 0;
  border-bottom:1px solid var(--gi-line); align-items:start; text-decoration:none;}
.gi-story__yr{font-family:var(--gi-num); font-size:13px; color:var(--gi-ink-2);
  font-variant-numeric:tabular-nums; padding-top:4px; letter-spacing:.05em;}
.gi-story__h{font-family:var(--gi-serif); font-weight:700; font-size:16px; line-height:1.6;
  color:var(--gi-ink); text-wrap:balance;}
.gi-story a:hover .gi-story__h{color:var(--gi-turf);}
.gi-story__x{font-size:13px; color:var(--gi-ink-2); margin-top:3px; line-height:1.65;}

/* ---- 攻略：學校索引 ---- */
.gi-schools{display:flex; flex-wrap:wrap; gap:8px; margin-bottom:18px;}
.gi-schools a{border:1px solid var(--gi-line); background:var(--gi-card); padding:6px 12px;
  border-radius:2px; font-size:13.5px; font-weight:700; display:flex; gap:7px; align-items:center;
  text-decoration:none; color:var(--gi-ink);}
.gi-schools a:hover{border-color:var(--gi-turf); color:var(--gi-turf);}
.gi-schools a .gi-n{font-family:var(--gi-num); font-size:11px; color:var(--gi-ink-2);
  font-variant-numeric:tabular-nums;}
.gi-schools a.gi-more-link{border-style:dashed; color:var(--gi-ink-2); font-weight:500;}
.gi-guides{display:grid; grid-template-columns:repeat(3,1fr); gap:14px;}
.gi-guide{background:var(--gi-card); border:1px solid var(--gi-line); border-left:3px solid var(--gi-turf);
  border-radius:3px; padding:13px 14px 14px; display:flex; flex-direction:column; gap:6px;
  text-decoration:none; color:var(--gi-ink);}
.gi-guide:hover{border-color:var(--gi-turf);}
.gi-guide__sch{font-size:11px; font-weight:700; color:var(--gi-turf); letter-spacing:.04em;}
.gi-guide__t{font-size:14.5px; font-weight:700; line-height:1.55; text-wrap:balance;}
.gi-guide__m{font-size:11.5px; color:var(--gi-ink-2); margin-top:auto; font-variant-numeric:tabular-nums;}

/* ---- 兩欄 ---- */
.gi-two{display:grid; grid-template-columns:1.25fr 1fr; gap:34px; align-items:start;}
.gi-ref{background:var(--gi-card); border:1px solid var(--gi-line); border-radius:3px; padding:16px 18px 18px;}
.gi-ref h3{margin:0 0 2px; font-size:15px; font-weight:900;}
.gi-ref .gi-hint{margin:0 0 10px; font-size:12.5px; color:var(--gi-ink-2);}
.gi-ref ul{list-style:none; margin:0; padding:0;}
.gi-ref li{border-top:1px solid var(--gi-line); padding:9px 0; font-size:14px;}
.gi-ref li a{text-decoration:none; color:var(--gi-ink);}
.gi-ref li a:hover{color:var(--gi-turf);}

/* ============ 內頁 ============ */
.single .entry-title,
.page .entry-title{font-family:var(--gi-serif); font-weight:900; line-height:1.4;}
.gi-serif .entry-content p,
.gi-serif .entry-content li{font-family:var(--gi-serif); line-height:2.0;}
.gi-serif .entry-content p{margin-bottom:1.1em;}
.separate-containers .inside-article,
.separate-containers .comments-area,
.separate-containers .page-header,
.separate-containers .paging-navigation,
.one-container .site-content{background-color:var(--gi-card);}

/* ============ 頁尾 ============ */
.site-footer{background:var(--gi-night); color:#7E9488;}
.site-footer .site-info{background:transparent; color:#7E9488; font-size:12.5px; border-top:1px solid #1D2E24;}
.site-footer a{color:#9FB4A8;}
.site-footer a:hover{color:var(--gi-led);}

/* ============ 無障礙 ============ */
a:focus-visible,
button:focus-visible,
input:focus-visible{outline:2px solid var(--gi-led); outline-offset:2px;}

/* ============ 響應式 ============ */
@media (max-width:900px){
  .gi-hero{grid-template-columns:1fr;}
  .gi-hero__pic{min-height:190px;}
  .gi-hero__pic::after{background:linear-gradient(180deg,rgba(11,20,16,0) 40%,rgba(19,33,25,.98) 100%);}
  .gi-hero__txt{padding:20px 22px 24px;}
  .gi-hero__txt h2{font-size:23px;}
  .gi-roster{grid-template-columns:1fr 1fr; gap:12px;}
  .gi-guides{grid-template-columns:1fr;}
  .gi-two{grid-template-columns:1fr; gap:26px;}
  .gi-sec{padding:30px 0 0;}
}
@media (max-width:600px){
  .gi-inner{padding:0 16px;}
  .gi-sub{display:none;}
  .gi-util .gi-btn{display:none;}
  .gi-feed a{grid-template-columns:64px 1fr; gap:12px;}
  .gi-story a{grid-template-columns:60px 1fr; gap:10px;}
  .gi-card__t{font-size:13.5px;}
}

/* ============ 頁尾選單 ============ */
.gi-footer-nav{background:var(--gi-night); padding:20px 0 4px;}
.gi-footer-menu{list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:20px;}
.gi-footer-menu a{color:#C9D8CE; text-decoration:none; font-size:13.5px; font-weight:700;}
.gi-footer-menu a:hover{color:var(--gi-led);}

/* ============ 單篇文章 ============ */
.gi-arthead{background:var(--gi-night-2); color:#E8EFE7; padding:0;}
.gi-arthead__grid{display:grid; grid-template-columns:1fr; gap:0;}
.gi-arthead.has-pic .gi-arthead__grid{grid-template-columns:1fr 300px; gap:28px; align-items:stretch;}
.gi-arthead__txt{padding:34px 0 32px; display:flex; flex-direction:column; gap:11px; justify-content:center;}
.gi-arthead__pic{background:#0B1410 center 25%/cover no-repeat; min-height:230px; margin:0 -24px 0 0;}
.gi-crumb{display:flex; gap:8px; align-items:center; font-size:12.5px; color:#8FA79A; flex-wrap:wrap;}
.gi-crumb a{color:#8FA79A; text-decoration:none;}
.gi-crumb a:hover{color:var(--gi-led);}
.gi-arthead__h1{font-family:var(--gi-serif); font-size:clamp(23px,3.4vw,32px); font-weight:900;
  line-height:1.45; margin:0; color:#fff; text-wrap:balance;}
.gi-artmeta{display:flex; gap:8px; align-items:center; font-size:12.5px; color:#9FB4A8; flex-wrap:wrap;}

/* 閱讀欄 */
.single #page.grid-container{max-width:880px;}
.single .entry-content{max-width:40em; margin-left:auto; margin-right:auto;}
.single .entry-content p{font-size:17px; line-height:1.95; margin:0 0 1.15em;}
.gi-serif .entry-content p{font-family:var(--gi-serif); line-height:2.05;}
/* 開頭那段當導言 */
.single .entry-content > p:first-child{border-left:3px solid var(--gi-led); padding-left:16px;
  font-size:17.5px; color:#26362D;}
.single .entry-content a{color:var(--gi-turf);}
.single .entry-content img{max-width:100%; height:auto;}
.single .entry-content figure{margin:1.6em 0;}
.single .entry-content .wp-block-embed__wrapper iframe,
.single .entry-content iframe{width:100%; aspect-ratio:16/9; height:auto; max-width:100%;}
.single .entry-content h2{font-size:21px; font-weight:900; margin:1.8em 0 .6em;
  border-bottom:2px solid var(--gi-ink); padding-bottom:7px;}
.single .entry-content h3{font-size:17.5px; font-weight:900; margin:1.6em 0 .5em;}

/* 文末分類 */
.single .entry-meta .cat-links a{background:var(--gi-turf); color:#fff; padding:3px 9px;
  border-radius:2px; font-size:12px; text-decoration:none;}

/* 上一篇／下一篇 */
.post-navigation{margin:8px 0 0;}
.post-navigation .nav-previous a,
.post-navigation .nav-next a{color:var(--gi-ink-2); text-decoration:none; font-size:14px;}
.post-navigation a:hover{color:var(--gi-turf);}

/* 同分類其他文章 */
.gi-related{margin:34px 0 8px;}
.gi-related .gi-sec__title h2{font-size:17px;}
.gi-related .gi-roster{grid-template-columns:repeat(4,1fr);}

@media (max-width:900px){
  .gi-arthead.has-pic .gi-arthead__grid{grid-template-columns:1fr; gap:0;}
  .gi-arthead__pic{margin:0 -24px; min-height:170px; order:-1;}
  .gi-arthead__txt{padding:22px 0 24px;}
  .single .entry-content p{font-size:16.5px;}
  .gi-related .gi-roster{grid-template-columns:1fr 1fr;}
}
@media (max-width:600px){
  .gi-arthead__pic{margin:0 -16px;}
  .gi-related .gi-roster{grid-template-columns:1fr 1fr;}
}
