:root{
  --bg:#EEF0F6; --surface:#FFFFFF; --surface2:#E3E6F0; --line:#C9CDDC;
  --text:#171A2E; --muted:#5B5F7A; --accent:#D9731A; --accent-soft:rgba(217,115,26,.12);
  --cyan:#1E8EA3; --cyan-soft:rgba(30,142,163,.12);
  /* 본문 기둥 폭. 머리글·목록·본문·푸터가 이 한 값에서 나온다 —
     ch 로 적으면 글자 크기가 다른 칸끼리 왼쪽 선이 어긋난다 (2026-09-03) */
  --measure:35rem; --gutter:1.25rem;
}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]){
    --bg:#0B0D1A; --surface:#151935; --surface2:#1C2145; --line:#2B3160;
    --text:#E6E4F0; --muted:#8F8DAD; --accent:#F28C28; --accent-soft:rgba(242,140,40,.14);
    --cyan:#4FC3D9; --cyan-soft:rgba(79,195,217,.12);
  }
}
:root[data-theme="dark"]{
  --bg:#0B0D1A; --surface:#151935; --surface2:#1C2145; --line:#2B3160;
  --text:#E6E4F0; --muted:#8F8DAD; --accent:#F28C28; --accent-soft:rgba(242,140,40,.14);
  --cyan:#4FC3D9; --cyan-soft:rgba(79,195,217,.12);
}
*{box-sizing:border-box}
/* 독자층이 고령이라 전체를 1.2배로 (2026-08-29 대표님). rem·ch 단위가 전부 따라 커진다 */
html{font-size:120%}
body{margin:0;background:var(--bg);color:var(--text);font-family:"Source Serif 4",Georgia,serif;font-size:1.0625rem;line-height:1.7}
img{max-width:100%;height:auto;display:block}
a{color:var(--cyan)}
h1,h2,h3{font-family:"Syne",sans-serif;text-wrap:balance;line-height:1.15;margin:0}
h1{font-size:clamp(2.4rem,7vw,4.6rem);font-weight:800;letter-spacing:-.015em}
h2{font-size:1.7rem;font-weight:700;margin-top:1rem}
h3{font-size:1.05rem;font-weight:700}
p{margin:0}
.mono{font-family:"JetBrains Mono",monospace}
.eyebrow{font-family:"JetBrains Mono",monospace;font-size:.7rem;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}

/* site chrome */
.nav{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid var(--line);font-family:"Syne",sans-serif}
.nav .brand{font-weight:800;font-size:1.2rem;letter-spacing:-.02em;color:var(--text);text-decoration:none}
.nav .brand span{color:var(--accent)}
.nav ul{display:flex;gap:1.4rem;list-style:none;margin:0;padding:0;font-size:.85rem}
.nav a{color:var(--muted);text-decoration:none}
/* 테마 단추. 메뉴 글자와 같은 모양이라 줄이 흐트러지지 않는다 (2026-09-03) */
.theme-btn{background:none;border:0;padding:.3rem 0;margin:0;font-family:"Syne",sans-serif;font-size:.85rem;
  color:var(--muted);cursor:pointer;line-height:inherit}
.theme-btn:hover{color:var(--text)}
/* 지금 라이트면 "Dark", 지금 다크면 "Light" 를 보인다 — 누르면 갈 곳을 적는다 */
.theme-btn .t-to-dark{display:inline}
.theme-btn .t-to-light{display:none}
@media (prefers-color-scheme: dark){
  :root:not([data-theme="light"]) .theme-btn .t-to-dark{display:none}
  :root:not([data-theme="light"]) .theme-btn .t-to-light{display:inline}
}
:root[data-theme="dark"] .theme-btn .t-to-dark{display:none}
:root[data-theme="dark"] .theme-btn .t-to-light{display:inline}
:root[data-theme="light"] .theme-btn .t-to-dark{display:inline}
:root[data-theme="light"] .theme-btn .t-to-light{display:none}
.theme-btn:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}

/* 매스트헤드 — 첫 화면과 About 이 같이 쓴다. 화면마다 베끼지 않는다(25조).
   264행쯤의 좁은 화면용 규칙이 이것을 덮어쓴다. */
.masthead{border-bottom:1px solid var(--line);padding:2.6rem var(--gutter) 2rem;text-align:left}
.masthead .wrap{max-width:calc(var(--measure) - 2 * var(--gutter));margin:0 auto;display:grid;gap:.6rem}
.masthead h1{font-size:clamp(2.6rem,7vw,5rem);letter-spacing:-.03em}
.masthead h1 span{color:var(--accent)}
.masthead p{color:var(--muted);font-size:1.1rem;max-width:60ch}
.masthead .tag,.masthead .eyebrow{font-family:"JetBrains Mono",monospace;font-size:.72rem;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}

/* hero */
.hero{position:relative;height:min(72vh,640px);overflow:hidden;background:#000}
.hero img{width:100%;height:100%;object-fit:cover;object-position:center 40%;opacity:.55}
.hero .text{position:absolute;inset:auto 0 0 0;padding:2.5rem var(--gutter) 2rem;background:linear-gradient(transparent,rgba(11,13,26,.92) 70%);color:#E6E4F0}
.hero .inner{max-width:calc(var(--measure) - 2 * var(--gutter));margin:0 auto;display:grid;gap:.9rem}
/* 글 제목은 첫 화면의 klausdream 워드마크와 같은 크기로 (2026-09-03 대표님).
   전역 h1 은 clamp(2.4rem,7vw,4.6rem) 이라 훨씬 컸다. 머리글 h1 과 같은 값을 쓴다. */
.hero .inner h1{font-size:clamp(1.8rem,4vw,2.7rem)}
.hero .deck{font-size:1.2rem;line-height:1.5;color:#C9C7DA;max-width:56ch}
/* 사진 없는 헤더. 출처를 확정한 이미지만 싣기로 해서(2026-08-30 대표님),
   원본을 못 대는 사진이 있던 자리는 활자만으로 간다. */
/* 사진 없는 머리는 배경·글자를 토큰에서 받는다. 색을 박아 두면 라이트에서 검은 띠가 된다 (2026-09-03) */
.hero.plain{height:auto;background:var(--bg);border-bottom:1px solid var(--line)}
.hero.plain .text{position:static;background:none;padding:4rem var(--gutter) 3rem;color:var(--text)}
.hero.plain .deck{color:var(--muted)}
.hero.plain .inner{gap:1.1rem}
.hero .credit{position:absolute;top:.6rem;right:.8rem;font-family:"JetBrains Mono",monospace;font-size:.62rem;color:rgba(230,228,240,.55)}
.byline{display:flex;flex-wrap:wrap;gap:1.2rem;font-family:"JetBrains Mono",monospace;font-size:.72rem;color:#8F8DAD;letter-spacing:.04em}
.byline b{color:var(--text);font-weight:500}

/* article body */
.article{max-width:var(--measure);margin:0 auto;padding:2.5rem var(--gutter) 4rem;display:grid;grid-template-columns:minmax(0,1fr);gap:1.4rem}
.article p.lede{font-size:1.25rem;line-height:1.55}
.article p.lede::first-letter{font-family:"Syne",sans-serif;font-weight:800;font-size:3.6em;float:left;line-height:.85;padding:.08em .12em 0 0;color:var(--accent)}
figure{margin:0;display:grid;gap:.5rem}
figcaption{font-family:"JetBrains Mono",monospace;font-size:.72rem;line-height:1.5;color:var(--muted)}
figcaption .src{opacity:.7}
.wide{width:min(100vw - 2.5rem, 960px);margin-left:50%;transform:translateX(-50%)}
.wide img{width:100%;border-radius:4px}
.float-r{float:right;width:44%;margin:.3rem 0 1rem 1.5rem}
.float-r img{border-radius:4px}
.clear{clear:both}
blockquote{margin:.8rem 0;padding:0;font-size:1.35rem;line-height:1.45;font-family:"Syne",sans-serif;font-weight:500;text-wrap:balance}
blockquote::before{content:"\201C";display:block;font-size:3rem;line-height:.6;color:var(--accent);margin-bottom:.4rem}
blockquote cite{display:block;font-family:"JetBrains Mono",monospace;font-size:.72rem;color:var(--muted);font-style:normal;margin-top:.5rem}

/* two branches */
.branches{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:.5rem 0}
.branch{background:var(--surface);border:1px solid var(--line);border-radius:6px;overflow:hidden;display:grid;grid-template-rows:auto 1fr}
.branch img{width:100%;aspect-ratio:4/3;object-fit:cover}
.branch .b{padding:.9rem 1rem;display:grid;gap:.4rem;font-size:.92rem}
.branch h3{font-size:1rem}
.branch .role{font-family:"JetBrains Mono",monospace;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.branch ul{margin:0;padding-left:1rem;color:var(--muted);font-size:.88rem;line-height:1.55}
.branch ul{display:grid;gap:.15rem}

/* album strip */
.albums{display:grid;grid-template-columns:repeat(auto-fit,minmax(216px,1fr));gap:1rem;margin:.5rem 0}
.album{display:grid;gap:.5rem;text-decoration:none;color:inherit}
.album img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:3px;box-shadow:0 8px 24px rgba(0,0,0,.35)}
.album .t{font-family:"Syne",sans-serif;font-weight:700;font-size:.92rem;line-height:1.2}
.album .y{font-family:"JetBrains Mono",monospace;font-size:.7rem;color:var(--muted)}
.album .n{font-size:.85rem;color:var(--muted);line-height:1.45}

/* gear figure */
.gear{display:grid;grid-template-columns:1.4fr 1fr;gap:.6rem}
.gear img{width:100%;height:100%;object-fit:cover;border-radius:4px;aspect-ratio:4/3}

/* callouts */
.box{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:1rem 1.2rem;display:grid;gap:.5rem;font-size:.95rem}
/* 박스 제목은 문서 목차에 들어갈 제목이 아니다(2026-09-03). 모양만 제목처럼 */
.box h3,.box .box-t{font-family:"Syne",sans-serif;font-weight:700;font-size:.95rem;line-height:1.15;margin:0}
.box ul{margin:0;padding-left:1.1rem;display:grid;gap:.25rem}
.box.cyan{background:var(--cyan-soft)}

/* start here */
.start{background:var(--surface2);border-radius:8px;padding:1.4rem 1.4rem 1.6rem;display:grid;gap:1rem;margin-top:.5rem}
.start h2{margin:0;font-size:1.4rem}

/* ── 첫 화면 목록 · About. 2026-09-03 에 템플릿 인라인 <style> 에서 옮겨 왔다.
   두 곳에 있으면 한쪽만 고쳐진다 — About 이 60ch 로 남아 본문보다 좁고 왼쪽으로
   치우쳐 보이던 것이 그 결과였다. 폭은 이제 --measure 하나에서 나온다. ── */
.issues{max-width:var(--measure);margin:0 auto;padding:2.4rem var(--gutter) 3.5rem;display:grid;grid-template-columns:minmax(0,1fr);gap:2.4rem}
.issues .eyebrow{display:block}
.entry{display:grid;grid-template-columns:96px minmax(0,1fr);gap:1.2rem;align-items:start;text-decoration:none;color:inherit}
.entry img{width:96px;height:96px;object-fit:cover;border-radius:3px;border:1px solid var(--line)}
.entry .meta{font-family:"JetBrains Mono",monospace;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.entry h2{font-size:1.35rem;margin:.35rem 0 .4rem;color:var(--text)}
.entry:hover h2{color:var(--accent)}
.entry .deck{color:var(--muted);font-size:.96rem;line-height:1.55}
@media (max-width:520px){.entry{grid-template-columns:1fr}.entry img{width:100%;height:180px}}

.about{max-width:var(--measure);margin:0 auto;padding:2.6rem var(--gutter) 3.4rem;display:grid;grid-template-columns:minmax(0,1fr);gap:1.3rem}
.about h2{font-size:1.35rem;margin:.8rem 0 0}
.about p{font-size:1.06rem}

/* About 첫 절 위의 워드마크 (2026-09-03 대표님) */
.about .mark{width:min(480px,100%);height:auto;margin:1rem auto 2rem}

/* footer */
.foot{border-top:1px solid var(--line);padding:2rem var(--gutter) 3rem;max-width:var(--measure);margin:0 auto;display:grid;gap:.8rem;font-size:.85rem;color:var(--muted)}
.credits{font-family:"JetBrains Mono",monospace;font-size:.66rem;line-height:1.6;color:var(--muted)}
@media (max-width:640px){.branches,.gear{grid-template-columns:1fr}.float-r{float:none;width:100%;margin:0}}

/* trio: three-person line-up */
.trio{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem;margin:.5rem 0}
.trio .branch img{aspect-ratio:1;object-fit:cover;filter:saturate(.85)}
.trio .branch .b{padding:.8rem .9rem}

/* timeline: minute-by-minute track walk */
.timeline{display:grid;gap:0;margin:.5rem 0;border-left:2px solid var(--line);padding-left:1.2rem;position:relative}
.timeline .t{display:grid;grid-template-columns:5.2rem 1fr;gap:.8rem;padding:.7rem 0;position:relative}
.timeline .t::before{content:"";position:absolute;left:calc(-1.2rem - 6px);top:1.05rem;width:10px;height:10px;border-radius:50%;background:var(--cyan);border:2px solid var(--bg)}
.timeline .t.key::before{background:var(--accent);width:14px;height:14px;left:calc(-1.2rem - 8px);top:.95rem}
.timeline .ts{font-family:"JetBrains Mono",monospace;font-size:.78rem;color:var(--accent);font-variant-numeric:tabular-nums;padding-top:.2rem}
.timeline .d{font-size:.95rem;line-height:1.55}
.timeline .d b{font-family:"Syne",sans-serif}

/* tracklist */
.tracks{width:100%;border-collapse:collapse;font-size:.92rem;margin:.3rem 0}
.tracks td{padding:.45rem .4rem;border-bottom:1px solid var(--line);vertical-align:top}
.tracks td:first-child{font-family:"JetBrains Mono",monospace;font-size:.75rem;color:var(--muted);width:2rem}
.tracks td:last-child{font-family:"JetBrains Mono",monospace;font-size:.78rem;color:var(--muted);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.tracks tr:last-child td{border-bottom:0}
.tracks .who{color:var(--muted);font-size:.85rem}

/* fact box */
.facts{font-size:.9rem}
.facts dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:.3rem 1rem}
.facts dt{font-family:"JetBrains Mono",monospace;font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding-top:.15rem}
.facts dd{margin:0}

/* buy */
.buy{display:grid;grid-template-columns:repeat(auto-fit,minmax(216px,1fr));gap:.7rem}
.buy a{display:grid;gap:.2rem;padding:.8rem 1rem;background:var(--surface);border:1px solid var(--line);border-radius:6px;text-decoration:none;color:inherit}
.buy a:hover{border-color:var(--accent)}
.buy .k{font-family:"Syne",sans-serif;font-weight:700;font-size:.95rem}
.buy .v{font-size:.85rem;color:var(--muted)}
@media (max-width:640px){.trio{grid-template-columns:1fr}}

/* ---- global navigation (site.js) ---- */
.nav{position:relative;z-index:20}
.nav-menu{display:flex;gap:1.4rem;list-style:none;margin:0;padding:0;font-size:.85rem;align-items:center}
.nav-menu>li{position:relative}
.nav-menu a{color:var(--muted);text-decoration:none;padding:.3rem 0;display:inline-block}
.nav-menu a:hover{color:var(--text)}
/* 지금 보고 있는 메뉴. 밑줄만 준다 — 왼쪽 굵은 선이나 배경 블록은 쓰지 않는다 */
.nav-menu a[aria-current="page"]{color:var(--text);border-bottom:1px solid var(--accent)}
.nav-menu .has-sub>a::after{content:" ▾";font-size:.7em}
.nav-menu .sub{display:none;position:absolute;top:100%;left:-1rem;min-width:22rem;background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:.5rem;list-style:none;margin:.3rem 0 0;box-shadow:0 12px 32px rgba(0,0,0,.35);z-index:30}
.nav-menu .has-sub:hover .sub,.nav-menu .has-sub:focus-within .sub{display:grid;grid-template-columns:1fr 1fr;gap:.15rem}
.nav-menu .sub a{display:grid;gap:.1rem;padding:.5rem .6rem;border-radius:4px;font-size:.8rem}
.nav-menu .sub a:hover{background:var(--surface2)}
.nav-menu .sub b{font-family:"Syne",sans-serif;color:var(--text)}
.nav-menu .sub span{color:var(--muted);font-size:.72rem;line-height:1.35;font-family:"Source Serif 4",serif}
.nav-toggle{display:none;background:none;border:1px solid var(--line);color:var(--text);border-radius:4px;font-size:1.1rem;padding:.2rem .6rem;cursor:pointer}
@media (max-width:760px){
  .nav-menu{display:none;position:absolute;top:100%;left:0;right:0;background:var(--surface);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0;padding:.5rem 1rem}
  .nav.open .nav-menu{display:flex}
  .nav-menu .sub{position:static;display:grid;grid-template-columns:1fr;box-shadow:none;border:0;background:none;min-width:0}
  .nav-toggle{display:inline-block}
}
.hero .eyebrow a{color:inherit;text-decoration:none;border-bottom:1px solid currentColor}

/* prev / next */
.pn{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.5rem;border-top:1px solid var(--line);padding-top:1.2rem}
.pn-a{display:grid;gap:.2rem;text-decoration:none;color:inherit}
.pn-r{text-align:right}
.pn-k{font-family:"JetBrains Mono",monospace;font-size:.68rem;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.pn-t{font-family:"Syne",sans-serif;font-weight:700;font-size:1.05rem;line-height:1.2}
.pn-a:hover .pn-t{color:var(--accent)}

/* more grid */
.more{display:grid;gap:.8rem;margin-top:1.5rem}
.more-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}
.more-card{display:grid;gap:.3rem;text-decoration:none;color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:6px;overflow:hidden;align-content:start}
.more-card img{width:100%;aspect-ratio:16/10;object-fit:cover}
.more-card>span{padding:0 .8rem}
.more-card>span:last-child{padding-bottom:.8rem}
.more-line{font-family:"JetBrains Mono",monospace;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);padding-top:.6rem}
.more-t{font-family:"Syne",sans-serif;font-weight:700;font-size:.95rem;line-height:1.2}
.more-d{font-size:.82rem;color:var(--muted);line-height:1.45}
.more-card:hover{border-color:var(--accent)}
@media (max-width:640px){.more-grid{grid-template-columns:1fr}.pn{grid-template-columns:1fr}.pn-r{text-align:left}}

/* home */
.home-hero .wrap,.home-sec .wrap{max-width:1248px;margin:0 auto;padding:2rem 1.25rem;display:grid;gap:1rem}
.home-sec{border-top:1px solid var(--line)}
.home-sec h2{font-size:1.6rem}
.home-p{color:var(--muted);max-width:66ch}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(276px,1fr));gap:1rem}
.card-post{display:grid;text-decoration:none;color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:6px;overflow:hidden;align-content:start}
.card-post img{width:100%;aspect-ratio:16/10;object-fit:cover}
.card-post .cp{padding:.8rem .9rem 1rem;display:grid;gap:.3rem}
.card-post .cp-t{font-family:"Syne",sans-serif;font-weight:700;font-size:1.05rem;line-height:1.2}
.card-post .cp-d{font-size:.85rem;color:var(--muted);line-height:1.45}
.card-post:hover{border-color:var(--accent)}
.card-post.big{grid-template-columns:1.3fr 1fr;background:none;border:0}
.card-post.big img{aspect-ratio:16/10;border-radius:6px}
.card-post.big .cp{padding:.5rem 0 0 1rem;align-content:center}
.card-post.big .cp-t{font-size:clamp(1.8rem,4vw,2.8rem);font-weight:800;letter-spacing:-.015em}
.card-post.big .cp-d{font-size:1.05rem}
.line-block{display:grid;gap:.8rem;padding:1.2rem 0;border-top:1px dashed var(--line)}
.line-head{display:grid;gap:.2rem}
.line-head h3{font-size:1.15rem}
.line-head p{color:var(--muted);font-size:.9rem}
@media (max-width:700px){.card-post.big{grid-template-columns:1fr}.card-post.big .cp{padding:.8rem 0 0}}

/* patch diagram */
.patch{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:1rem;overflow-x:auto}
.patch svg{width:100%;height:auto;display:block;font-family:"JetBrains Mono",monospace}
.settings{width:100%;border-collapse:collapse;font-size:.9rem}
.settings td{padding:.4rem .5rem;border-bottom:1px solid var(--line)}
.settings td:first-child{font-family:"JetBrains Mono",monospace;font-size:.78rem;color:var(--accent);white-space:nowrap}
.settings tr:last-child td{border-bottom:0}

/* now: release cards */
.releases{display:grid;gap:1rem}
.rel{display:grid;grid-template-columns:168px 1fr;gap:1rem;background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:1rem;align-items:start}
.rel img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:3px}
.rel .rb{display:grid;gap:.35rem}
.rel h3{font-size:1.05rem}
.rel .rm{font-family:"JetBrains Mono",monospace;font-size:.7rem;color:var(--muted);letter-spacing:.06em}
.rel p{font-size:.92rem}
.rel .buy-line{font-size:.82rem;color:var(--cyan)}
@media (max-width:560px){.rel{grid-template-columns:1fr}}

/* first listen: reader letters */
.letter{display:grid;grid-template-columns:240px 1fr;gap:1.2rem;padding:1.4rem 0;border-top:1px solid var(--line);align-items:start}
.letter:first-of-type{border-top:0}
.letter img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:4px}
.letter .who{font-family:"JetBrains Mono",monospace;font-size:.72rem;color:var(--muted);letter-spacing:.06em;margin-top:.5rem;display:block}
.letter .lb{display:grid;gap:.6rem}
.letter h3{font-size:1.15rem}
.letter p{font-size:.98rem}
@media (max-width:600px){.letter{grid-template-columns:1fr}}

/* cover art: sleeve wall */
.wall{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}
.wall figure img{aspect-ratio:1;object-fit:cover;width:100%;border-radius:3px;box-shadow:0 10px 30px rgba(0,0,0,.4)}
@media (max-width:600px){.wall{grid-template-columns:1fr 1fr}}

/* market chart */
.chart{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:1rem 1rem .6rem;display:grid;gap:.5rem;position:relative}
.chart h3{font-size:.95rem}
.chart .sub{font-size:.8rem;color:var(--muted);font-family:"JetBrains Mono",monospace}
.chart svg{width:100%;height:auto;display:block;font-family:"JetBrains Mono",monospace}
.chart .tip{position:absolute;pointer-events:none;background:var(--surface2);border:1px solid var(--line);border-radius:4px;padding:.35rem .55rem;font-size:.75rem;font-family:"JetBrains Mono",monospace;display:none;white-space:nowrap}
.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}
.stat{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:.9rem 1rem;display:grid;gap:.15rem}
.stat .k{font-family:"JetBrains Mono",monospace;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.stat .v{font-family:"Syne",sans-serif;font-weight:800;font-size:1.7rem;font-variant-numeric:tabular-nums;line-height:1.1}
.stat .d{font-size:.8rem;color:var(--muted)}
details.table{font-size:.85rem}
details.table summary{cursor:pointer;color:var(--cyan);font-family:"JetBrains Mono",monospace;font-size:.75rem}

/* ---- front page v2 ---- */
.wrap-w{max-width:1344px;margin:0 auto;padding:1.6rem 1.25rem;display:grid;gap:1rem}
.masthead{padding:1.4rem 1.25rem 1rem}
.masthead h1{font-size:clamp(2rem,5vw,3.2rem)}
.masthead p{font-size:.95rem}
.front .wrap-w{grid-template-columns:1.6fr 1fr;gap:1.2rem;align-items:stretch}
.lead{position:relative;display:block;border-radius:8px;overflow:hidden;min-height:504px;background:#000;text-decoration:none;color:#E6E4F0}
.lead img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.7;transition:transform .6s}
.lead:hover img{transform:scale(1.03)}
.lead-t{position:absolute;inset:auto 0 0 0;padding:2.5rem 1.6rem 1.5rem;background:linear-gradient(transparent,rgba(11,13,26,.95) 75%);display:grid;gap:.4rem}
.lead-t .more-line{color:#F28C28}
.lead-h{font-family:"Syne",sans-serif;font-weight:800;font-size:clamp(1.8rem,3.5vw,2.8rem);line-height:1.05;letter-spacing:-.02em;text-wrap:balance}
.lead-d{font-size:1rem;color:#C9C7DA;max-width:50ch}
.side{display:grid;gap:.8rem;align-content:stretch}
.mini{display:grid;grid-template-columns:132px 1fr;gap:.8rem;text-decoration:none;color:inherit;align-items:center;background:var(--surface);border:1px solid var(--line);border-radius:6px;overflow:hidden}
.mini img{width:100%;height:100%;aspect-ratio:1;object-fit:cover}
.mini .mb{display:grid;gap:.2rem;padding:.5rem .8rem .5rem 0}
.mini .more-line{padding-top:0}
.mini-t{font-family:"Syne",sans-serif;font-weight:700;font-size:1rem;line-height:1.2}
.mini:hover{border-color:var(--accent)}
.band{background:var(--surface2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.band .wrap-w{grid-template-columns:312px 1fr;align-items:center}
.band-head{display:grid;gap:.3rem}
.band-head h2{font-size:1.3rem}
.band-row{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}
.mosaic{display:grid;grid-template-columns:repeat(3,1fr);gap:.8rem}
.tile{position:relative;display:block;aspect-ratio:4/3;border-radius:6px;overflow:hidden;background:#000;text-decoration:none;color:#E6E4F0}
.tile img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.55;transition:opacity .3s,transform .6s}
.tile:hover img{opacity:.75;transform:scale(1.04)}
.tile-b{position:absolute;inset:auto 0 0 0;padding:1.6rem 1rem .9rem;background:linear-gradient(transparent,rgba(11,13,26,.92) 70%);display:grid;gap:.15rem}
.tile-l{font-family:"JetBrains Mono",monospace;font-size:.66rem;letter-spacing:.12em;text-transform:uppercase;color:#F28C28}
.tile-t{font-family:"Syne",sans-serif;font-weight:700;font-size:1.05rem;line-height:1.15}
.tile-d{font-size:.78rem;color:#C9C7DA;line-height:1.35}
.coverwall{display:grid;grid-template-columns:repeat(auto-fill,minmax(106px,1fr));gap:.5rem;margin-top:.6rem}
.coverwall img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:3px;box-shadow:0 6px 16px rgba(0,0,0,.35);transition:transform .2s}
.coverwall a:hover img{transform:translateY(-3px)}
table.list{width:100%;border-collapse:collapse;font-size:.92rem}
table.list td{padding:.6rem .5rem;border-bottom:1px solid var(--line);vertical-align:top}
table.list .ld{font-family:"JetBrains Mono",monospace;font-size:.72rem;color:var(--muted);white-space:nowrap;width:7rem}
table.list .ll{font-family:"JetBrains Mono",monospace;font-size:.68rem;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);white-space:nowrap;width:9rem}
table.list a{font-family:"Syne",sans-serif;font-weight:700;color:var(--text);text-decoration:none}
table.list a:hover{color:var(--accent)}
table.list .lm{display:block;font-size:.82rem;color:var(--muted)}
table.list .lr{font-family:"JetBrains Mono",monospace;font-size:.72rem;color:var(--muted);text-align:right;white-space:nowrap}
@media (max-width:820px){.front .wrap-w,.band .wrap-w{grid-template-columns:1fr}.mosaic,.band-row{grid-template-columns:1fr 1fr}.lead{min-height:300px}}
@media (max-width:520px){.mosaic,.band-row{grid-template-columns:1fr}table.list .ll,table.list .lr{display:none}}

/* interview */
.qa{display:grid;gap:1.1rem}
.qa .q{font-family:"Syne",sans-serif;font-weight:700;font-size:1.05rem;color:var(--accent);line-height:1.3}
.qa .a{margin-top:.3rem}
.qa .a p+p{margin-top:.6rem}
.sidebar{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:1rem 1.1rem;display:grid;gap:.5rem;font-size:.9rem}
.sidebar h3{font-size:.9rem}
.sidebar dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:.25rem .8rem}
.sidebar dt{font-family:"JetBrains Mono",monospace;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding-top:.15rem}
.sidebar dd{margin:0}

/* book review */
.bookcard{display:grid;grid-template-columns:216px 1fr;gap:1.2rem;background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:1.2rem;align-items:start}
.bookcard .spine{aspect-ratio:2/3;border-radius:3px;background:linear-gradient(160deg,var(--surface2),var(--bg));border:1px solid var(--line);display:grid;align-content:end;padding:.8rem;gap:.2rem}
.bookcard .spine b{font-family:"Syne",sans-serif;font-size:1rem;line-height:1.15}
.bookcard .spine span{font-family:"JetBrains Mono",monospace;font-size:.66rem;color:var(--muted)}
.bookcard dl{margin:0;display:grid;grid-template-columns:auto 1fr;gap:.3rem 1rem;font-size:.9rem}
.bookcard dt{font-family:"JetBrains Mono",monospace;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted);padding-top:.15rem}
.bookcard dd{margin:0}
.excerpt{background:var(--surface2);border-radius:6px;padding:1rem 1.2rem;font-size:.98rem;font-style:italic}
.excerpt cite{display:block;font-style:normal;font-family:"JetBrains Mono",monospace;font-size:.7rem;color:var(--muted);margin-top:.5rem}
.verdict{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.verdict .box h3{color:var(--cyan)}
@media (max-width:600px){.bookcard{grid-template-columns:1fr}.bookcard .spine{max-width:180px}.verdict{grid-template-columns:1fr}}

/* the five artists */
.five{background:var(--surface2)}
.five-row{display:grid;grid-template-columns:repeat(5,1fr);gap:.8rem}
.artist{display:grid;gap:.25rem;text-decoration:none;color:inherit;background:var(--surface);border:1px solid var(--line);border-radius:6px;overflow:hidden;align-content:start}
.artist img{width:100%;aspect-ratio:1;object-fit:cover;filter:saturate(.8)}
.artist .an{font-family:"Syne",sans-serif;font-weight:800;font-size:1.05rem;line-height:1.15;padding:.7rem .8rem 0}
.artist .ay{font-family:"JetBrains Mono",monospace;font-size:.66rem;color:var(--muted);letter-spacing:.06em;padding:0 .8rem}
.artist .ad{font-size:.82rem;color:var(--muted);line-height:1.4;padding:.2rem .8rem 0}
.artist .ag{font-family:"JetBrains Mono",monospace;font-size:.68rem;color:var(--accent);padding:.5rem .8rem .8rem}
.artist:hover{border-color:var(--accent)}
@media (max-width:900px){.five-row{grid-template-columns:repeat(3,1fr)}}
@media (max-width:560px){.five-row{grid-template-columns:1fr 1fr}}

/* 2026-08-29 MA4: 출처 없는 인용문을 지운 자리. 초안에만 보이며 발행본에는 남지 않는다.
   눈에 띄되 본문 읽기를 방해하지 않도록 조용하게 둔다 (copyright-review.md 부록 A) */
.pending{display:block;font-family:"JetBrains Mono",monospace;font-size:.72rem;
  letter-spacing:.02em;color:var(--muted);opacity:.75;font-style:normal}

/* ── 2026-09-03: post-02 전용 파일에 있던 .pick/.eras/.skip 을 여기로 합쳤다. 스타일시트는 하나다(CLAUDE.md) ── */

/* pick: numbered listening-guide entry */
.pick{display:grid;grid-template-columns:220px 1fr;gap:1.4rem;padding:1.6rem 0;border-top:1px solid var(--line);align-items:start}
.pick:first-of-type{border-top:0}
.pick .n{font-family:"Syne",sans-serif;font-weight:800;font-size:3rem;line-height:1;color:var(--accent);letter-spacing:-.03em}
.pick .cover{display:grid;gap:.6rem}
.pick .cover img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:3px;box-shadow:0 10px 30px rgba(0,0,0,.4)}
.pick .body{display:grid;gap:.7rem}
.pick h3{font-size:1.35rem;line-height:1.15}
.pick .meta{font-family:"JetBrains Mono",monospace;font-size:.72rem;color:var(--muted);letter-spacing:.06em}
.pick .try{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:.7rem .9rem;font-size:.9rem;display:grid;gap:.15rem}
.pick .try b{font-family:"Syne",sans-serif;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase;color:var(--cyan)}
.pick .next{font-size:.88rem;color:var(--muted)}

/* era strip */
.eras{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;margin:.5rem 0}
.era{background:var(--surface);border:1px solid var(--line);border-radius:6px;padding:.8rem .9rem;display:grid;gap:.3rem;border-top:4px solid var(--line)}
.era.hot{border-top-color:var(--accent)}
.era .y{font-family:"JetBrains Mono",monospace;font-size:.7rem;color:var(--muted);letter-spacing:.08em}
.era h3{font-size:.95rem}
.era p{font-size:.85rem;color:var(--muted);line-height:1.5}

/* skip list */
.skip{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.8rem}
.skip .album img{filter:grayscale(.6) brightness(.8)}
@media (max-width:640px){.pick{grid-template-columns:1fr}.pick .n{font-size:2.2rem}.eras{grid-template-columns:1fr 1fr}}

/* ::: draftnote — 발행되면 안 되는 표시. 초안에서만 보인다 */
.article p.note{font-size:.85rem;color:var(--muted);font-family:"JetBrains Mono",monospace}
