/*
Theme Name: Lens Repo Magazine
Description: レンズレポ本体のトンマナ（白ベース・細ボーダー・ミニマル・Noto Sans JP）に合わせたデータ分析マガジン用オリジナルテーマ。Lens Repo Statsプラグインと併用。
Version: 1.0.1
Author: lens repo
Text Domain: lensrepo-magazine
*/

:root{
  --white:#fff;--bg:#fafafa;--bg2:#f2f2f2;--border:#e4e4e4;
  --text:#0e0e0e;--text2:#444;--muted:#999;--ultra:#c8c8c8;
  --font:'Noto Sans JP',sans-serif;
}
*{margin:0;padding:0;box-sizing:border-box;}
html{font-size:16px;-webkit-text-size-adjust:100%;}
body{font-family:var(--font);color:var(--text);background:var(--white);min-height:100vh;line-height:1.8;}
img{max-width:100%;height:auto;}
a{color:var(--text);}

.wrap{max-width:680px;margin:0 auto;background:var(--white);min-height:100vh;padding:0 20px;}

/* ── ヘッダー（本体サイトと同型）── */
.hd{position:sticky;top:0;z-index:200;height:52px;display:flex;align-items:center;gap:12px;
    margin:0 -20px;padding:0 20px;background:rgba(255,255,255,.96);
    backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border-bottom:1px solid var(--border);}
.hd-logo{font-size:16px;font-weight:700;color:var(--text);text-decoration:none;letter-spacing:-.03em;}
.hd-logo em{font-style:normal;font-weight:300;color:var(--muted);}
.hd-logo small{font-size:10px;font-weight:600;color:var(--muted);letter-spacing:.08em;margin-left:7px;}
.hd-back{margin-left:auto;font-size:11.5px;font-weight:600;color:var(--muted);text-decoration:none;white-space:nowrap;}
.hd-back:hover{color:var(--text);}

/* ── 記事一覧 ── */
.home-head{padding:30px 0 6px;}
.home-title{font-size:20px;font-weight:700;letter-spacing:-.02em;line-height:1.5;}
.home-title span{font-size:12px;font-weight:600;color:var(--muted);margin-left:6px;letter-spacing:0;}
.home-desc{font-size:13px;color:var(--text2);line-height:1.9;margin-top:8px;}
.post-list{padding:14px 0 40px;}
.pl-item{display:block;text-decoration:none;padding:20px 0;}
.pl-item + .pl-item{border-top:1px solid var(--border);}
.pl-date{font-size:10.5px;font-weight:700;letter-spacing:.08em;color:var(--muted);margin-bottom:6px;}
.pl-title{font-size:16px;font-weight:700;color:var(--text);line-height:1.6;margin-bottom:7px;}
.pl-item:hover .pl-title{text-decoration:underline;text-underline-offset:3px;}
.pl-excerpt{font-size:12.5px;color:var(--muted);line-height:1.9;}
.pl-thumb{width:100%;border-radius:6px;margin-bottom:12px;display:block;}

/* ── ページネーション ── */
.pagination{display:flex;gap:6px;justify-content:center;padding:8px 0 48px;font-size:13px;}
.pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;
  min-width:36px;height:36px;padding:0 8px;border-radius:100px;text-decoration:none;color:var(--text2);}
.pagination .page-numbers.current{background:var(--text);color:var(--white);font-weight:700;}
.pagination a.page-numbers:hover{background:var(--bg2);}

/* ── 記事ページ ── */
.art{padding:30px 0 48px;}
.art-label{font-size:10px;font-weight:700;letter-spacing:.12em;color:var(--muted);text-transform:uppercase;margin-bottom:10px;}
.art-title{font-size:22px;font-weight:700;line-height:1.55;letter-spacing:-.01em;margin-bottom:12px;}
.art-meta{font-size:11.5px;color:var(--muted);margin-bottom:26px;}
.art-thumb{border-radius:8px;margin-bottom:26px;display:block;}

/* 本文タイポグラフィ（レンズレポ記事と同型） */
.art-body{font-size:14.5px;color:var(--text2);line-height:2.05;}
.art-body p{margin:0 0 20px;}
.art-body h2{font-size:17px;font-weight:700;color:var(--text);line-height:1.5;margin:40px 0 16px;padding-left:12px;border-left:4px solid var(--text);}
.art-body h3{font-size:15px;font-weight:700;color:var(--text);margin:30px 0 12px;}
.art-body strong{color:var(--text);}
.art-body a{color:var(--text);text-underline-offset:3px;}
.art-body ul,.art-body ol{margin:0 0 20px;padding-left:1.5em;}
.art-body li{margin-bottom:6px;}
.art-body blockquote{background:var(--bg2);border-left:4px solid var(--ultra);padding:14px 16px;margin:0 0 20px;font-size:13px;}
.art-body table{width:100%;border-collapse:collapse;margin:0 0 20px;font-size:12.5px;}
.art-body th{text-align:left;font-size:11px;font-weight:700;color:var(--muted);padding:6px 8px 8px 0;border-bottom:1px solid var(--border);}
.art-body td{padding:9px 8px 9px 0;border-bottom:1px solid var(--border);vertical-align:middle;}
.art-body img{border-radius:6px;}
.art-body .wp-block-image{margin:0 0 20px;}
.art-body figcaption{font-size:11px;color:var(--muted);text-align:center;margin-top:6px;}

/* 記事下ナビ・CTA */
.art-cta{display:block;margin:34px 0 0;padding:14px;text-align:center;font-size:13.5px;font-weight:700;
  color:var(--white);background:var(--text);border-radius:100px;text-decoration:none;}
.art-cta:hover{opacity:.85;}
.post-nav{display:flex;gap:12px;justify-content:space-between;margin-top:30px;padding-top:22px;border-top:1px solid var(--border);}
.post-nav a{flex:1;font-size:12px;color:var(--text2);text-decoration:none;line-height:1.7;}
.post-nav a:hover{color:var(--text);}
.post-nav .nav-label{display:block;font-size:10px;font-weight:700;letter-spacing:.08em;color:var(--muted);margin-bottom:3px;}
.post-nav .nav-next{text-align:right;}

/* ── フッター ── */
.ft{margin:0 -20px;padding:30px 20px 40px;border-top:1px solid var(--border);background:var(--bg);}
.ft-logo{font-size:15px;font-weight:700;letter-spacing:-.02em;margin-bottom:6px;}
.ft-logo span{font-weight:300;color:var(--muted);}
.ft-desc{font-size:11.5px;color:var(--muted);line-height:1.9;margin-bottom:18px;}
.ft-links{font-size:12px;line-height:2.3;}
.ft-links a{color:var(--text2);text-decoration:none;margin-right:16px;}
.ft-links a:hover{color:var(--text);text-decoration:underline;text-underline-offset:3px;}
.ft-copy{font-size:10.5px;color:var(--ultra);margin-top:18px;}

/* ── 404・その他 ── */
.simple-page{padding:60px 0;text-align:center;}
.simple-page h1{font-size:18px;margin-bottom:12px;}
.simple-page p{font-size:13px;color:var(--muted);}

@media (max-width:480px){
  .art-title{font-size:19px;}
  .home-title{font-size:18px;}
}
