/* 민희라 & 김일홍 · 수묵화·한지 테마 */
:root{
  --paper:#f2ebdd; --paper-2:#e9e0cd; --ink:#1f1b16; --ink-soft:#4a4238; --ink-faint:#7d7264;
  --wash:#c9bfae; --line:#d6ccb8; --seal:#a8321f; --seal-ink:#fbf6ec; --mist:rgba(31,27,22,.07);
  color-scheme:light;
}
@media (prefers-color-scheme: dark){:root:not([data-theme="light"]){
  --paper:#16130f; --paper-2:#1e1a15; --ink:#ece4d4; --ink-soft:#c2b8a6; --ink-faint:#9a8f7e;
  --wash:#3a332a; --line:#332c24; --seal:#d0604a; --seal-ink:#16130f; --mist:rgba(236,228,212,.05); color-scheme:dark}}
:root[data-theme="dark"]{
  --paper:#16130f; --paper-2:#1e1a15; --ink:#ece4d4; --ink-soft:#c2b8a6; --ink-faint:#9a8f7e;
  --wash:#3a332a; --line:#332c24; --seal:#d0604a; --seal-ink:#16130f; --mist:rgba(236,228,212,.05); color-scheme:dark}

*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"Gowun Batang","Nanum Myeongjo","Apple SD Gothic Neo","Malgun Gothic",serif;font-size:1.0625rem;line-height:1.9;padding-inline:clamp(16px,5vw,48px);padding-block:0;word-break:keep-all;overflow-wrap:anywhere;
  background-image:radial-gradient(circle at 15% 8%,var(--mist),transparent 40%),radial-gradient(circle at 90% 60%,var(--mist),transparent 45%);background-attachment:fixed}
img{max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
h1,h2,h3,h4{font-family:"Nanum Myeongjo",serif;text-wrap:balance;line-height:1.4;margin:0}
.wrap{max-width:1040px;margin-inline:auto}
.read{max-width:700px;margin-inline:auto}
.skip{position:absolute;left:-999px}.skip:focus{left:16px;top:16px;background:var(--ink);color:var(--paper);padding:8px 12px;z-index:9}

/* header */
.site-head{display:flex;align-items:center;justify-content:space-between;gap:10px 16px;flex-wrap:wrap;padding-block:22px;border-bottom:1px solid var(--line)}
.brand{font-family:"Nanum Myeongjo",serif;font-weight:800;font-size:1.15rem;letter-spacing:.02em}
.site-nav{display:flex;gap:clamp(12px,3vw,28px);flex-wrap:wrap;font-size:.95rem;color:var(--ink-soft)}
.site-nav a{padding-block:4px;border-bottom:1px solid transparent}
.site-nav a:hover,.site-nav a[aria-current]{color:var(--ink);border-color:var(--seal)}

/* home hero */
.hero{position:relative;padding-block:clamp(56px,10vw,110px) clamp(40px,7vw,80px);text-align:center;overflow:hidden}
.hero .mist{position:absolute;inset:auto 0 0 0;width:100%;height:60%;z-index:0}
.hero>*:not(.mist){position:relative;z-index:1}
.kicker{font-size:.8rem;letter-spacing:.32em;color:var(--ink-faint)}
.hero h1{font-size:clamp(2.4rem,7vw,4.6rem);font-weight:800;letter-spacing:.04em;margin-block:14px 18px}
.hero h1 .amp{color:var(--seal);font-weight:400}
.hero .sub{font-size:clamp(1.05rem,2.2vw,1.3rem);color:var(--ink-soft);margin:0}
.brush{display:block;width:120px;height:10px;margin:28px auto 0}
.welcome{max-width:62ch;margin:0 auto;padding-block:clamp(32px,6vw,56px);text-align:center;color:var(--ink-soft)}
.welcome p{margin:0 0 1em}
.welcome strong{color:var(--ink)}

/* sections */
.sec{padding-block:clamp(36px,6vw,64px);border-top:1px solid var(--line)}
.sec-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:28px}
.sec-head h2{font-size:clamp(1.5rem,3.4vw,2rem)}
.en-label{font-size:.75rem;letter-spacing:.28em;color:var(--seal);text-transform:uppercase}
.more{font-size:.9rem;color:var(--ink-faint)}
.more:hover{color:var(--seal)}

/* parents */
.parents{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:clamp(24px,4vw,40px)}
.parent{display:grid;grid-template-columns:120px minmax(0,1fr);gap:20px;align-items:start}
.portrait{width:120px;aspect-ratio:3/4;max-width:100%;object-fit:cover;border:1px solid var(--line);padding:5px;background:var(--paper-2)}
.parent h3{font-size:1.5rem}
.parent h3 small{font-size:.9rem;color:var(--ink-faint);font-weight:400;margin-right:6px}
.date{font-size:.88rem;color:var(--seal);font-variant-numeric:tabular-nums;letter-spacing:.04em}
.parent p{margin:.6em 0 .8em;color:var(--ink-soft);font-size:.98rem}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chips a{font-size:.82rem;padding:2px 12px;border:1px solid var(--line);border-radius:999px;color:var(--ink-soft);line-height:1.8}
.chips a:hover,.chips a[aria-current]{border-color:var(--seal);color:var(--ink)}

/* cards */
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,220px),1fr));gap:clamp(20px,3vw,30px)}
.card{display:flex;flex-direction:column;gap:8px;min-width:0}
.card .thumb{aspect-ratio:4/3;max-width:100%;width:100%;object-fit:cover;border:1px solid var(--line);background:var(--paper-2)}
.card .thumb.empty{display:grid;place-items:center;color:var(--wash);font-family:"Nanum Myeongjo",serif;font-size:2rem}
.card .cat{font-size:.74rem;letter-spacing:.12em;color:var(--seal)}
.card h3{font-size:1.08rem;line-height:1.5}
.card:hover h3{color:var(--seal)}
.card p{margin:0;font-size:.9rem;color:var(--ink-soft);line-height:1.7;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.card time{font-size:.8rem;color:var(--ink-faint);font-variant-numeric:tabular-nums}

.rooms{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.room{background:var(--paper);padding:26px 24px;display:flex;flex-direction:column;gap:8px}
.room:hover{background:var(--paper-2)}
.room .num{font-family:"Nanum Myeongjo",serif;font-size:2rem;color:var(--wash);line-height:1}
.room h3{font-size:1.25rem}
.room p{margin:0;color:var(--ink-soft);font-size:.95rem}

/* archive */
.arch-head{padding-block:clamp(36px,6vw,64px) 28px;border-bottom:1px solid var(--line);margin-bottom:36px}
.arch-head h1{font-size:clamp(2rem,5vw,3rem);font-weight:800;margin-block:6px 12px}
.arch-head p{color:var(--ink-soft);margin:0 0 18px;max-width:60ch}

/* post */
.crumb{font-size:.85rem;color:var(--ink-faint);padding-top:28px}
.crumb a:hover{color:var(--seal)}
.post-head{padding-block:clamp(24px,5vw,44px) 26px;border-bottom:1px solid var(--line);margin-bottom:32px}
.post-head h1{font-size:clamp(1.8rem,5vw,2.8rem);font-weight:800;line-height:1.3;margin-block:8px 12px}
.post-meta{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:.88rem;color:var(--ink-faint);font-variant-numeric:tabular-nums}

.content>*{margin-block:0 1.1em}
.content h2{font-size:clamp(1.35rem,3vw,1.75rem);margin-block:2.2em .8em}
.content h3{font-size:1.18rem;margin-block:1.8em .6em}
.content h4{font-size:1.05rem;margin-block:1.5em .5em}
.content a{color:var(--seal);border-bottom:1px solid color-mix(in srgb,var(--seal) 40%,transparent)}
.content a:hover{border-color:var(--seal)}
.content ul,.content ol{padding-left:1.3em}
.content li{margin-bottom:.35em}
.content figure{margin-inline:0}
.content img{display:block;margin-inline:auto;border-radius:2px}
.content figcaption{font-size:.85rem;color:var(--ink-faint);text-align:center;margin-top:8px}
.content hr{border:0;height:10px;margin-block:2.4em;background:no-repeat center/90px 10px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 90 10'%3E%3Cpath d='M2 6 C25 2 55 9 88 4' stroke='%23a8321f' stroke-width='3' fill='none' stroke-linecap='round'/%3E%3C/svg%3E")}
.content blockquote,.content .wp-block-pullquote{margin-inline:0;padding:18px 22px;background:var(--paper-2);border-left:3px solid var(--seal);color:var(--ink-soft)}
.content blockquote p{margin:0 0 .5em}
.content blockquote p:last-child{margin:0}
.content .wp-block-pullquote blockquote{padding:0;border:0;background:none}
.content table{border-collapse:collapse;width:100%;font-size:.92rem}
.content .wp-block-table{overflow-x:auto}
.content th,.content td{border:1px solid var(--line);padding:8px 10px;text-align:left}
.content th{background:var(--paper-2)}
.content .has-text-align-center{text-align:center}
.content .has-medium-font-size{font-size:1.15rem}
.content strong{color:var(--ink)}
.content audio{width:100%}
.content .wp-block-media-text{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:center}
.content .wp-block-media-text.has-media-on-the-right .wp-block-media-text__media{order:2}
.content .wp-block-media-text__content>*{margin-block:0 .8em}
.content .wp-block-media-text__content>*:last-child{margin-bottom:0}
.content .wp-block-media-text__media{margin:0}
@media (max-width:640px){.content .wp-block-media-text{grid-template-columns:1fr}.content .wp-block-media-text.has-media-on-the-right .wp-block-media-text__media{order:0}}
.content .wp-block-gallery,.content .gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,180px),1fr));gap:10px}
.content .wp-block-gallery figure,.content .gallery figure{margin:0}
.content .wp-block-gallery img,.content .gallery img{width:100%;height:100%;aspect-ratio:1/1;object-fit:cover}
.content .wp-block-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:24px}
.content .gb-headline-text:empty{display:none}
.btn,.content .wp-block-button__link,.content .gb-button{display:inline-block;padding:10px 20px;border:1px solid var(--ink);border-radius:999px;color:var(--ink)!important;font-size:.95rem;border-bottom-width:1px!important}
.btn:hover,.content .wp-block-button__link:hover,.content .gb-button:hover{background:var(--ink);color:var(--paper)!important}

/* youtube lite */
.yt{position:relative;display:block;aspect-ratio:16/9;width:100%;max-width:100%;background:#111 center/cover no-repeat;border-radius:4px;overflow:hidden;border:0!important;cursor:pointer;padding:0}
.yt::before{content:"";position:absolute;inset:0;background:linear-gradient(transparent 60%,rgba(0,0,0,.45))}
.yt .play{position:absolute;left:50%;top:50%;width:68px;height:48px;margin:-24px 0 0 -34px;border-radius:12px;background:#a8321f;opacity:.92}
.yt .play::after{content:"";position:absolute;left:27px;top:13px;border-left:18px solid #fff;border-top:11px solid transparent;border-bottom:11px solid transparent}
.yt .yt-label{position:absolute;left:14px;bottom:10px;color:#fff;font-size:.85rem}
.yt iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.ext{display:flex;align-items:center;gap:10px;padding:14px 18px;border:1px solid var(--line);background:var(--paper-2);border-radius:4px}

/* lyrics */
.ly-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-block:2.2em .8em}
.ly-head h2{margin:0!important}
.entog{font:inherit;font-size:.85rem;background:transparent;color:var(--ink-soft);border:1px solid var(--line);border-radius:999px;padding:4px 14px;cursor:pointer}
.entog[aria-pressed="true"]{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.lyrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,290px),1fr));gap:24px 40px;margin-bottom:1.4em}
.stanza{min-width:0}
.stanza .tag{font-size:.72rem;letter-spacing:.2em;color:var(--seal);margin-bottom:6px;text-transform:uppercase}
.stanza p{margin:0 0 .55em;line-height:1.65}
.stanza .en{display:none;font-size:.86rem;color:var(--ink-faint);font-style:italic}
.lyrics.show-en .stanza .en{display:block}
.stanza.ch{padding-left:14px;border-left:2px solid var(--wash)}

/* ads */
.ad{margin-block:2em;min-height:100px;text-align:center}
.ad-label{display:block;font-size:.7rem;letter-spacing:.2em;color:var(--ink-faint);margin-bottom:4px}
.ad-preview{border:1px dashed var(--wash);padding:30px 12px;font-size:.8rem;color:var(--ink-faint)}

/* comments (read-only archive) */
.comments{margin-top:48px;padding-top:28px;border-top:1px solid var(--line)}
.comments h2{font-size:1.2rem;margin-bottom:16px}
.cmt{padding:16px 18px;background:var(--paper-2);border-radius:4px;margin-bottom:12px}
.cmt.reply{margin-left:clamp(16px,6vw,48px);border-left:2px solid var(--seal)}
.cmt b{font-family:"Nanum Myeongjo",serif}
.cmt time{font-size:.8rem;color:var(--ink-faint);margin-left:8px}
.cmt p{margin:.4em 0 0;font-size:.97rem}

.next{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,200px),1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-block:48px}
.next a{background:var(--paper);padding:18px 20px;display:flex;flex-direction:column;gap:4px;font-size:.98rem;line-height:1.5}
.next a small{font-size:.72rem;letter-spacing:.14em;color:var(--seal)}
.next a:hover{background:var(--paper-2)}

.site-foot{border-top:1px solid var(--line);margin-top:56px;padding-block:32px 48px;display:flex;justify-content:space-between;gap:16px 32px;flex-wrap:wrap;font-size:.85rem;color:var(--ink-faint)}
.site-foot nav{display:flex;gap:8px 18px;flex-wrap:wrap}
.site-foot a:hover{color:var(--seal)}
.notfound{text-align:center;padding-block:100px}
.notfound h1{font-size:2rem;margin-bottom:12px}

/* 바이오그라피 전용 구성 */
.content .lead{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(20px,4vw,40px);align-items:center;margin-bottom:2em}
.content .lead p{margin:0;font-size:1.1rem}
.content .lead p::first-letter{font-family:"Nanum Myeongjo",serif;font-size:2.6em;float:left;line-height:1;margin:.08em .12em 0 0;color:var(--seal)}
@media (max-width:640px){.content .lead{grid-template-columns:1fr}}
.content img.ph{width:100%;height:100%;object-fit:cover;border:1px solid var(--line);padding:5px;background:var(--paper-2)}
.content .lead img.ph{aspect-ratio:3/4;height:auto}
.content section{padding-block:clamp(24px,5vw,40px);border-top:1px solid var(--line)}
.content .sh{display:flex;align-items:baseline;gap:14px;margin-bottom:22px}
.content .sh .en{font-size:.72rem;letter-spacing:.28em;color:var(--seal)}
.content .sh h2{margin:0;font-size:clamp(1.35rem,3vw,1.75rem)}
.content .tl{list-style:none;margin:0;padding:0;position:relative}
.content .tl::before{content:"";position:absolute;left:4.2rem;top:.6em;bottom:.6em;width:1px;background:var(--line)}
.content .tl>li{display:grid;grid-template-columns:4.2rem minmax(0,1fr);gap:22px;padding-block:8px;margin:0;position:relative}
.content .tl time{font-family:"Nanum Myeongjo",serif;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ink-soft);text-align:right;padding-right:6px}
.content .tl>li::after{content:"";position:absolute;left:calc(4.2rem - 4px);top:1.05em;width:9px;height:9px;border-radius:50%;background:var(--paper);border:2px solid var(--wash)}
.content .tl>li.key::after{background:var(--seal);border-color:var(--seal)}
.content .tl>li.key time{color:var(--seal)}
.content .tl ul{margin:.2em 0 0;padding-left:1.1em;color:var(--ink-soft)}
.content .note{margin-top:22px;padding:18px 20px;background:var(--paper-2);border-left:3px solid var(--seal);color:var(--ink-soft);font-size:.98rem}
.content .songwrap{display:grid;grid-template-columns:minmax(0,180px) minmax(0,1fr);gap:28px;align-items:start}
.content .songwrap img.ph{aspect-ratio:3/4;height:auto}
@media (max-width:600px){.content .songwrap{grid-template-columns:1fr}.content .songwrap figure{max-width:220px}}
.content .songs{list-style:none;margin:0;padding:0;columns:2 240px;column-gap:40px}
.content .songs li{break-inside:avoid;display:flex;justify-content:space-between;gap:12px;padding-block:9px;border-bottom:1px dotted var(--line);margin:0}
.content .songs span{color:var(--ink-faint);font-size:.85rem;text-align:right}
.content .songs li:first-child b{color:var(--seal)}
.content .story{display:flex;flex-direction:column;gap:18px}
.content .story>*{margin:0}
.content .g2,.content .g3{display:grid;gap:12px}
.content .g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.content .g3{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr))}
.content .g2 img.ph,.content .g3 img.ph{aspect-ratio:4/5;height:auto}
.content img.ph.wide{aspect-ratio:16/10;height:auto}
.content .letter{text-align:center;padding-block:clamp(36px,6vw,64px)}
.content .letter p{margin:0 auto 1em;max-width:34em;font-size:1.1rem}
.content .letter .sign{font-family:"Nanum Myeongjo",serif;color:var(--ink-faint);font-size:.95rem;margin-top:24px}
.content .letter svg{width:90px;height:10px;display:block;margin:0 auto 24px}
