/* gway 매거진 — 차분한 편집 디자인(2026-10-17, 사용자 시안 참고). 색 덩어리·칩을 줄이고 선과 여백으로 나눔 */
html:has(#mgz){scroll-behavior:smooth}
.st-app{background:var(--bg);overflow-x:clip}
.mz,.mz-shell,.mz-lay,.mz-art,.mz-side{min-width:0;max-width:100%}
.mz{--mz-text:var(--text);--mz-body:var(--text-2);--mz-mute:var(--text-3);--mz-line:var(--line);--mz-acc:var(--accent-text)}
.mz-k{font-family:'Outfit',sans-serif;font-size:11.5px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--mz-acc)}

/* ───── 글 머리: 사진 없이 글자로 ───── */
.mz-shell{max-width:1120px;margin:0 auto;padding:0 20px}
.mz-crumb{display:flex;gap:8px;align-items:center;padding:22px 0 0;font-size:12px;color:var(--mz-mute)}
.mz-crumb a:hover{color:var(--mz-acc)}
.mz-hero{position:relative;overflow:hidden;padding:26px 0 28px;border-bottom:1px solid var(--mz-line)}
.mz-hero .big{position:absolute;right:-4px;bottom:-34px;font-family:'Outfit',sans-serif;font-size:150px;font-weight:900;line-height:1;letter-spacing:-.08em;color:var(--mz-acc);opacity:.05;pointer-events:none}
.mz-hero h1{position:relative;margin:12px 0 12px;max-width:780px;font-size:26px;line-height:1.32;font-weight:760;letter-spacing:-.05em;word-break:keep-all}
.mz-hero h1 em{font-style:normal;color:var(--mz-acc)}
.mz-hero .sub{position:relative;margin:0;max-width:640px;font-size:15px;line-height:1.85;color:var(--mz-body);word-break:keep-all}
.mz-meta{position:relative;display:flex;gap:8px;flex-wrap:wrap;margin-top:18px}
.mz-meta span{height:28px;display:inline-flex;align-items:center;padding:0 12px;border-radius:30px;border:1px solid var(--mz-line);font-size:11.5px;color:var(--mz-mute);letter-spacing:.02em}

/* ───── 본문 + 왼쪽 목차 ───── */
.mz-lay{display:block;padding-top:36px}
.mz-side{margin-bottom:34px}
.mz-side .t{margin-bottom:12px}
.mz-toc{display:flex;gap:18px;overflow-x:auto;padding-bottom:8px;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x pan-y}
.mz-toc::-webkit-scrollbar{display:none}
.mz-toc a{flex:none;display:flex;gap:7px;align-items:baseline;padding:4px 0;font-size:13.5px;color:var(--mz-mute);white-space:nowrap}
.mz-toc a b{font-family:'Outfit',sans-serif;font-size:11px;font-weight:700;color:var(--mz-mute)}
.mz-toc a.on,.mz-toc a:hover{color:var(--mz-text)}
.mz-toc a.on b{color:var(--mz-acc)}
.mz-other{display:none}
.mz-art{max-width:760px;min-width:0}
.mz-open{padding:0 0 46px}
.mz-open p{margin:0 0 20px;font-size:16px;line-height:1.9;color:var(--mz-body);word-break:keep-all}
.mz-open p:first-child{font-size:17.5px;line-height:1.7;font-weight:600;letter-spacing:-.02em;color:var(--mz-text)}

/* 장소 */
.mz-f{padding:44px 0 46px;border-top:1px solid var(--mz-line);scroll-margin-top:16px}
.mz-fh{display:flex;gap:16px;align-items:flex-start}
.mz-fh .ix{flex:none;padding-top:8px;font-family:'Outfit',sans-serif;font-size:15px;font-weight:800;letter-spacing:.08em;color:var(--mz-acc)}
.mz-fh .nm{flex:1;min-width:0}
.mz-fh h2{margin:0 0 6px;font-size:28px;line-height:1.3;font-weight:730;letter-spacing:-.045em;overflow-wrap:anywhere}
.mz-fh .one{margin:0;font-size:14px;color:var(--mz-mute)}
.mz-fh .lg{flex:none;width:52px;height:52px;border-radius:12px;overflow:hidden;display:grid;place-items:center;border:1px solid var(--mz-line);background:var(--surface-2);font-family:'Outfit',sans-serif;font-weight:800;color:var(--mz-mute)}
.mz-fh .lg img{width:100%;height:100%;object-fit:contain}
.mz-ph{position:relative;display:block;width:100%;margin:26px 0 26px;border-radius:8px;overflow:hidden;border:1px solid var(--mz-line);background:var(--surface-2);aspect-ratio:2/1;padding:0;cursor:zoom-in}
.mz-ph img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.92)}
.mz-ph .cnt{position:absolute;right:10px;bottom:10px;height:24px;padding:0 10px;border-radius:30px;background:rgba(0,0,0,.55);color:#fff;font-size:11.5px;display:flex;align-items:center;gap:5px}
.mz-ph.none{display:flex;align-items:flex-end;justify-content:space-between;padding:20px 22px;cursor:default;background:linear-gradient(140deg,var(--surface-2),var(--bg) 70%)}
.mz-ph.none .vno{font-family:'Outfit',sans-serif;font-size:96px;line-height:1;font-weight:850;letter-spacing:-.08em;color:var(--mz-line)}
.mz-ph.none .vtag{font-size:10.5px;letter-spacing:.2em;color:var(--mz-mute);text-transform:uppercase}
.mz-f p{margin:0 0 18px;font-size:16px;line-height:1.95;color:var(--mz-body);word-break:keep-all}
.mz-dt{display:grid;grid-template-columns:1fr;gap:12px;margin:24px 0 24px}
.mz-dt div{border-top:1px solid var(--mz-line);padding-top:12px}
.mz-dt dt{margin-bottom:4px;font-family:'Outfit',sans-serif;font-size:10.5px;font-weight:600;letter-spacing:.12em;color:var(--mz-mute)}
.mz-dt dd{margin:0;font-size:13.5px;line-height:1.65;color:var(--mz-text);overflow-wrap:anywhere}
.mz-plk{color:var(--mz-acc);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}.mz-plk:hover{text-decoration-thickness:2px}
.mz-links{display:flex;flex-wrap:wrap;gap:8px}
.mz-go{display:inline-flex;align-items:center;gap:10px;height:42px;padding:0 16px;border-radius:6px;border:1px solid color-mix(in srgb,var(--mz-acc) 45%,transparent);font-size:13px;font-weight:600;color:var(--mz-acc);transition:background .2s}
.mz-go:hover{background:color-mix(in srgb,var(--mz-acc) 10%,transparent)}
.mz-go.alt{border-color:var(--mz-line);color:var(--mz-body)}
.mz-go.alt:hover{background:var(--surface-2)}

/* 코스형: 번호 자리에 시간 */

/* 맺음 */
.mz-end{padding:44px 0 20px;border-top:1px solid var(--mz-line)}
.mz-end h3{margin:0 0 16px;font-size:21px;font-weight:700;letter-spacing:-.04em}
.mz-end p{margin:0 0 18px;font-size:15px;line-height:1.95;color:var(--mz-body);word-break:keep-all}
.mz-end.meta{border-top:0;padding-top:8px}   /* 맺는 글은 블록으로 쓰고 여기엔 에디터·참고 자료만 */
.mz-endb .mz-p p{font-size:15px}
.mz-hsm .one{margin:-6px 0 12px;font-size:14px;color:var(--mz-mute)}
.mz-note{margin:26px 0 0;font-size:12.5px;line-height:1.8;color:var(--mz-mute)}
.mz-note a{text-decoration:underline;text-underline-offset:3px}
details.mz-src{margin-top:10px;font-size:12.5px;color:var(--mz-mute)}
details.mz-src summary{cursor:pointer;list-style:none;display:inline-flex;gap:6px}
details.mz-src summary::-webkit-details-marker{display:none}
details.mz-src summary::after{content:"＋"}
details.mz-src[open] summary::after{content:"－"}
details.mz-src ol{margin:10px 0 0;padding-left:18px;line-height:1.9}
details.mz-src a{color:var(--mz-body);text-decoration:underline;text-underline-offset:3px;word-break:break-all}

/* 다음 글 */
.mz-next{margin:40px 0 70px;border:1px solid var(--mz-line);border-radius:10px;background:var(--surface)}
.mz-next a{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:20px 22px;border-top:1px solid var(--mz-line)}
.mz-next a:first-child{border-top:0}
.mz-next a:hover strong{color:var(--mz-acc)}
.mz-next small{display:block;margin-bottom:4px;font-size:11.5px;color:var(--mz-mute);letter-spacing:.04em}
.mz-next strong{font-size:16px;font-weight:650;line-height:1.45;letter-spacing:-.02em;word-break:keep-all;transition:color .15s}
.mz-next i{flex:none;font-style:normal;color:var(--mz-mute)}
.mz-all{display:flex;justify-content:space-between;align-items:center;padding:16px 22px;border-top:1px solid var(--mz-line);font-size:13px;color:var(--mz-acc)}

/* 사진 크게 보기 */
.lb{position:fixed;inset:0;z-index:100;background:rgba(0,0,0,.93);display:none;align-items:center;justify-content:center}
.lb.on{display:flex}
.lb img{max-width:94vw;max-height:86vh;object-fit:contain}
.lb button{position:absolute;width:44px;height:44px;border-radius:50%;background:rgba(255,255,255,.12);color:#fff;font-size:22px;border:0;cursor:pointer}
.lb .x{top:16px;right:16px}.lb .p{left:12px;top:50%}.lb .n{right:12px;top:50%}
.lb .c{position:absolute;bottom:18px;left:0;right:0;text-align:center;color:rgba(255,255,255,.75);font-size:13px}

@media (min-width:600px){ .mz-dt{grid-template-columns:1fr 1fr;gap:14px} }
@media (min-width:900px) and (min-aspect-ratio:1/1){
  .mz-shell{padding:0 52px}
  .mz-hero{padding:40px 0 38px}
  .mz-hero .big{font-size:230px;bottom:-56px}
  .mz-hero h1{font-size:38px;line-height:1.26;margin:14px 0 14px}
  .mz-hero .sub{font-size:16.5px}
  .mz-meta{margin-top:22px}
  .mz-lay{display:grid;grid-template-columns:220px minmax(0,760px);gap:64px;padding-top:44px}
  .mz-side{position:sticky;top:26px;align-self:start;margin:0}
  .mz-toc{display:grid;gap:0;overflow:visible;padding:0}
  .mz-toc a{display:grid;grid-template-columns:26px 1fr;gap:6px;padding:11px 0;border-bottom:1px solid var(--line-soft);white-space:normal;line-height:1.45}
  .mz-other{display:block;margin-top:34px}
  .mz-other a{display:block;padding:9px 0;border-bottom:1px solid var(--line-soft);font-size:12.5px;line-height:1.5;color:var(--mz-mute)}
  .mz-other a:hover{color:var(--mz-text)}
  .mz-other a small{display:block;font-size:10.5px;letter-spacing:.08em;color:var(--mz-acc);opacity:.85}
  .mz-fh h2{font-size:38px}
  .mz-open p:first-child{font-size:21px}
}

/* ───── 홈 아래: 매거진 목록 ───── */
.down{position:absolute;right:calc(var(--gap) + 12px);bottom:calc(var(--gap) + 12px);z-index:5;width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:rgba(17,18,22,.7);backdrop-filter:blur(8px);color:#fff;border:1px solid rgba(255,255,255,.12);animation:bob 1.6s ease-in-out 3}
.down svg{width:20px;height:20px}
@keyframes bob{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}
@media (min-width:900px) and (min-aspect-ratio:1/1){ .down{right:calc(var(--pc-pad,52px) + 14px);bottom:42px} }
@media (prefers-reduced-motion:reduce){.down{animation:none}}
.mgz{background:var(--bg);padding:52px 0 36px;border-top:1px solid var(--line)}
.mgz .hd,.mgz .cf,.mgl{max-width:1120px;margin-left:auto;margin-right:auto;padding-left:20px;padding-right:20px}
.mgz h2{margin:12px 0 8px;font-size:30px;font-weight:760;letter-spacing:-.05em}
.mgz .sub{margin:0;font-size:14.5px;color:var(--text-2)}
.mgz .cf{display:flex;gap:20px;overflow-x:auto;margin-top:26px;border-bottom:1px solid var(--line);scrollbar-width:none}
.mgz .cf::-webkit-scrollbar{display:none}
.mgz .cf button{flex:none;height:40px;padding:0;border:0;background:none;font-size:14px;color:var(--text-3);cursor:pointer;box-shadow:inset 0 -2px 0 transparent}
.mgz .cf button[aria-pressed="true"]{color:var(--text);font-weight:600;box-shadow:inset 0 -2px 0 var(--accent-text)}
.mgl{margin-top:6px;display:grid;grid-template-columns:1fr}
.mc{display:flex;gap:16px;padding:20px 0;border-bottom:1px solid var(--line-soft);color:inherit}
.mc .im{flex:none;width:92px;height:72px;border-radius:8px;overflow:hidden;background:var(--surface-2);border:1px solid var(--line-soft)}
.mc .im img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.92)}
.mc .tx{min-width:0}
.mc .k{font-family:'Outfit',sans-serif;font-size:10.5px;font-weight:700;letter-spacing:.14em;color:var(--accent-text)}
.mc h3{margin:6px 0 6px;font-size:16.5px;line-height:1.42;font-weight:700;letter-spacing:-.03em;word-break:keep-all}
.mc:hover h3{color:var(--accent-text)}
.mc p{margin:0;font-size:13.5px;line-height:1.65;color:var(--text-3);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;word-break:keep-all}
@media (min-width:900px) and (min-aspect-ratio:1/1){
  .mgz{padding:80px 0 50px}
  .mgz .hd,.mgz .cf,.mgl{padding-left:52px;padding-right:52px}
  .mgz .cf{margin-left:52px;margin-right:52px;padding-left:0;padding-right:0;max-width:1016px}
  .mgz h2{font-size:42px}
  .mgl{grid-template-columns:repeat(3,minmax(0,1fr));gap:44px 28px;margin-top:34px}
  .mc{display:block;padding:0;border:0}
  .mc .im{width:100%;height:auto;aspect-ratio:16/9}
  .mc .tx{padding-top:16px}
  .mc h3{font-size:19px;margin:8px 0 8px}
  .mc p{font-size:14px}
}
.mgmore{display:flex;justify-content:center;margin-top:30px}
.mgmore button{height:42px;padding:0 22px;border-radius:6px;border:1px solid var(--line);background:none;color:var(--text-2);font-size:13.5px;cursor:pointer}

/* ───── 이달의 행사 틀 ───── */
.mz-main .mz-k{margin-bottom:14px}
.ev-top{display:grid;grid-template-columns:1fr;gap:18px;margin:24px 0 8px}
.ev-pos{display:block;width:100%;max-width:300px;border-radius:8px;overflow:hidden;border:1px solid var(--mz-line);background:var(--surface-2);padding:0;cursor:zoom-in}
.ev-pos img{display:block;width:100%;height:auto}
.ev-dt{margin:0}
.ev-blk{margin:30px 0 0}
.ev-blk h4{margin:0 0 12px;font-size:16px;font-weight:700;letter-spacing:-.02em;color:var(--mz-text)}
.ev-blk p{margin:0 0 10px;font-size:15.5px}
.ev-time{list-style:none;margin:0 0 6px;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr));gap:0 18px}   /* 폭에 따라 1~2단(2026-10-21) */
.ev-time li{display:flex;gap:14px;padding:9px 0;border-top:1px solid var(--line-soft);font-size:14px;color:var(--mz-body)}
.ev-time b{flex:none;min-width:44px;white-space:nowrap;font-family:'Outfit',sans-serif;font-weight:600;color:var(--mz-acc)}
.mz-main .mz-links{margin-top:26px}
.ev-with{padding:46px 0 0;border-top:1px solid var(--mz-line)}
.ev-with + .mz-f{border-top:0;padding-top:22px}
.ev-row{display:grid;grid-template-columns:1fr;gap:18px;margin:22px 0 0}
.ev-row .ev-pos{max-width:220px}
.ev-when{margin:0 0 12px !important;font-size:13.5px !important;color:var(--mz-acc) !important;font-weight:600}
.ev-week{margin:22px 0 22px;border-top:1px solid var(--mz-line)}
.ev-day{display:grid;grid-template-columns:72px 1fr;gap:12px;padding:12px 0;border-bottom:1px solid var(--line-soft)}
.ev-day .dd b{font-family:'Outfit',sans-serif;font-size:13.5px;font-weight:600;color:var(--mz-text)}
.ev-day ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}
.ev-day li a{display:flex;gap:10px;font-size:14px;line-height:1.5;color:var(--mz-body)}
.ev-day li a:hover .n{color:var(--mz-text);text-decoration:underline;text-underline-offset:3px}
.ev-day li .t{flex:none;width:40px;font-family:'Outfit',sans-serif;font-size:12.5px;color:var(--mz-mute);padding-top:1px}
.ev-day li.mn .n{color:var(--mz-acc);font-weight:600}
.ev-day li.no{color:var(--mz-mute);font-size:13px}
@media (min-width:700px){ .ev-top{grid-template-columns:260px 1fr;align-items:start} .ev-top .mz-dt{grid-template-columns:1fr} .ev-row{grid-template-columns:200px 1fr;gap:26px;align-items:start} }

/* 띄어쓰기 없는 긴 덩어리도 화면 안에서 줄바꿈(한국어 낱말은 그대로 지키되, 넘칠 때만 끊음) */
.mz p,.mz h1,.mz h2,.mz h4,.mz dd,.mz li,.mz .one,.mz-next strong,.mc h3,.mc p{overflow-wrap:anywhere}

/* 글 읽기 밝기 버튼 */
.mz-crumb .mz-theme{margin-left:auto;display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 12px;border-radius:30px;border:1px solid var(--line);background:none;color:var(--text-2);font-size:12px;cursor:pointer}
.mz-crumb .mz-theme:hover{color:var(--text);border-color:var(--text-3)}
:root[data-theme="light"] .mz-ph img,:root[data-theme="light"] .mc .im img{filter:none}
:root[data-theme="light"] .mz-hero .big{opacity:.07}

/* ───── 날짜별 코스 ───── */
.dv-big{display:grid;grid-template-columns:1fr;gap:18px;margin:22px 0 18px;padding:18px;border:1px solid var(--mz-line);border-radius:10px;background:var(--surface)}
.dv-big .ev-pos{max-width:200px}
.dv-big h3{margin:6px 0 8px;font-size:20px;font-weight:720;letter-spacing:-.035em;line-height:1.35;overflow-wrap:anywhere}
.dv-big .tx p{margin:0 0 12px;font-size:15px}
.dv-big .mz-dt{margin:12px 0 16px}
.dv-list{display:grid;margin:8px 0 0;border-top:1px solid var(--mz-line)}
.dv-row{display:flex;gap:14px;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--line-soft)}
.dv-row img,.dv-row .ni{flex:none;width:52px;height:66px;border-radius:6px;object-fit:cover;background:var(--surface-2);border:1px solid var(--line-soft)}
.dv-row .tx{min-width:0;display:grid;gap:3px}
.dv-row b{font-size:15px;font-weight:650;line-height:1.4;color:var(--mz-text);overflow-wrap:anywhere}
.dv-row small{font-size:12.5px;color:var(--mz-mute);overflow-wrap:anywhere}
.dv-row em{font-style:normal;font-size:14px;line-height:1.6;color:var(--mz-body);overflow-wrap:anywhere}
.dv-row:hover b{color:var(--mz-acc)}
.tg{margin:20px 0 0}
.tg h4{margin:0 0 8px;font-size:15px;font-weight:700;color:var(--mz-acc)}
.tg-l{display:flex;flex-wrap:wrap;gap:8px}
.tg-l a{display:inline-flex;flex-direction:column;gap:2px;max-width:100%;padding:9px 12px;border:1px solid var(--mz-line);border-radius:8px}
.tg-l a b{font-size:13.5px;font-weight:600;color:var(--mz-text);overflow-wrap:anywhere}
.tg-l a small{font-size:11.5px;color:var(--mz-mute)}
.tg-l a:hover{border-color:var(--mz-acc)}
details.kn{margin:14px 0 0;border-top:1px solid var(--mz-line);padding-top:12px}
details.kn summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;font-size:15px;font-weight:650;color:var(--mz-text)}
details.kn summary::-webkit-details-marker{display:none}
details.kn summary::after{content:"＋";color:var(--mz-mute)}
details.kn[open] summary::after{content:"－"}
details.kn p{margin:10px 0 0 !important;font-size:15px !important}
details.kn .ev-time,details.kn .ev-week{margin-top:12px}
@media (min-width:700px){ .dv-big{grid-template-columns:200px 1fr;align-items:start} }

/* ───── 이달의 행사: 소제목·포스터 줄·같이 고려할 곳·갤러리 ───── */
.pk-sub{display:inline-flex;align-items:center;gap:8px;margin:0 0 14px;padding:6px 12px;border-radius:30px;border:1px solid var(--mz-line);font-size:12.5px;font-weight:600;color:var(--mz-acc);letter-spacing:.01em}
.ev-pcol{display:grid;gap:8px;max-width:220px}
.ev-pcol .ev-pos{max-width:none}
.ev-strip{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.ev-strip button{aspect-ratio:3/4;border-radius:5px;overflow:hidden;border:1px solid var(--line-soft);background:var(--surface-2);padding:0;cursor:zoom-in}
.ev-strip img{width:100%;height:100%;object-fit:cover;display:block}
.pk-also{margin-top:26px}
.pk-also .mz-k{margin-bottom:6px}
.gal-w{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:20px 0 6px}
.gal-w button{position:relative;aspect-ratio:3/4;border-radius:6px;overflow:hidden;border:1px solid var(--line-soft);background:var(--surface-2);padding:0;cursor:zoom-in}
.gal-w img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.gal-w button:hover img{transform:scale(1.04)}
.gal-w span{position:absolute;left:6px;bottom:6px;padding:2px 7px;border-radius:20px;background:rgba(0,0,0,.6);color:#fff;font-size:11px}
@media (min-width:700px){ .gal-w{grid-template-columns:repeat(4,1fr)} }

/* ───── 블록: 정사각형 4장 갤러리 ───── */
.sq4{margin:22px 0 22px}
.sq4-h{display:flex;align-items:baseline;gap:10px;margin:0 0 10px}
.sq4-h b{font-size:15px;font-weight:700;color:var(--mz-text)}
.sq4-h span{font-size:12.5px;color:var(--mz-mute)}
.sq4-g{display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.sq4-g button{aspect-ratio:1;border-radius:6px;overflow:hidden;border:1px solid var(--line-soft);background:var(--surface-2);padding:0;cursor:zoom-in}
.sq4-g img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}
.sq4-g button:hover img{transform:scale(1.04)}
@media (min-width:700px){ .sq4-g{gap:10px} }

/* 편집기 미리보기: 고른 블록 잠깐 표시 */
.bi-flash{outline:2px solid var(--accent-text);outline-offset:6px;border-radius:6px;transition:outline-color .6s}
/* 구역 밖(맨 앞 등)에 놓인 문단·정보 상자도 본문과 같은 글자 */
.mz-art > .mz-p,.mz-art > .ev-blk{padding:0 0 10px}
.mz-art > .mz-p p,.mz-art > .ev-blk p{margin:0 0 18px;font-size:16px;line-height:1.95;color:var(--mz-body);word-break:keep-all}
/* 에디터 표시: 글 끝 오른쪽 푸른 박스 */
.mz-by{display:flex;justify-content:flex-end;margin:6px 0 14px}
.mz-by span{display:inline-flex;align-items:center;height:30px;padding:0 14px;border-radius:6px;border:1px solid color-mix(in srgb,var(--mz-acc) 45%,transparent);background:color-mix(in srgb,var(--mz-acc) 12%,transparent);color:var(--mz-acc);font-size:13px;font-weight:600;letter-spacing:-.01em}
/* 행사 포스터 한 장 + 장수 */
.ev-pos{position:relative}
.ev-pos .cnt{position:absolute;right:8px;bottom:8px;height:24px;padding:0 9px;border-radius:30px;background:rgba(0,0,0,.6);color:#fff;font-size:11.5px;display:flex;align-items:center;gap:5px}
.ev-pos .cnt svg{width:13px;height:13px}
/* 4장 갤러리 제목은 정보 상자 소제목과 같은 크기 */
.sq4{margin:18px 0 22px}
.sq4-h{margin:0 0 12px}
.sq4-h b{font-size:16px;letter-spacing:-.02em}
/* 다국어(2026-10-18): 언어 고르기 · AI 번역 표시 · 한국어만 있음 안내 · 목록 언어 표시 · 서버가 넣은 본문(자바스크립트 전) */
.mz-langs{display:inline-flex;gap:4px;margin-left:auto}
.mz-langs a{display:inline-flex;align-items:center;height:24px;padding:0 8px;border:1px solid var(--mz-line);border-radius:999px;font-size:11.5px;font-weight:600;color:var(--mz-mute);text-decoration:none}
.mz-langs a[aria-current]{color:var(--mz-acc);border-color:var(--mz-acc)}
.mz-langs + .mz-theme{margin-left:6px}
.mz-ai{margin:14px 0 0;font-size:12.5px;line-height:1.7;color:var(--mz-mute)}
.mz-ai a{color:var(--mz-acc);text-decoration:none;white-space:nowrap}
.mz-only{margin:12px 0 0;padding:8px 12px;border-radius:8px;border:1px solid var(--mz-line);font-size:13px;color:var(--mz-body)}
.mc-lg{display:inline-block;margin-left:6px;padding:0 6px;border-radius:4px;border:1px solid var(--line);font-size:10px;letter-spacing:0;color:var(--text-3);vertical-align:1px}
.mz-ssr{max-width:760px;margin:0 auto;padding:32px 20px 60px;font-size:16px;line-height:1.85;color:var(--text-2)}
.mz-ssr h1{font-size:28px;line-height:1.3;color:var(--text)} .mz-ssr h2{margin-top:36px;font-size:20px;color:var(--text)} .mz-ssr h3{font-size:16px;color:var(--text)}

/* 글 상자 제목: 크기는 원고에서(12~24, --ts), PC에서는 --tsp로 크게 */
.mz-ts{font-size:var(--ts,18px)!important;line-height:1.35;letter-spacing:-.03em;font-weight:720;overflow-wrap:anywhere}
.mz-tb{padding-top:4px}
.mz-tb .mz-ts{margin:17px 0 12px;color:var(--mz-text)}   /* 위 글과의 간격 28→21px(2026-10-19) */
.mz-tb .one{margin:-6px 0 12px;font-size:14px;color:var(--mz-mute)}
.mz-endb .mz-ts{margin:0 0 16px}
.mz-hs > .mz-p{margin-top:14px}   /* 구역 제목과 본문 사이 6→20px(2026-10-21) */
.mz-open .mz-ts{margin:0 0 14px}
@media (min-width:900px) and (min-aspect-ratio:1/1){ .mz-ts{font-size:var(--tsp,var(--ts,18px))!important} }

/* 첫 문단 강조: 따옴표 안, 글자·따옴표 모두 제목 강조색(--mz-acc)과 같은 색, 여닫는 따옴표 같은 크기 */
.mz .mz-lead{position:relative;margin:4px 0 22px!important;padding:0 0 0 30px;font-size:17px!important;line-height:1.75!important;font-weight:600;letter-spacing:-.015em;color:var(--mz-acc)!important;word-break:keep-all}
.mz .mz-lead::before,.mz .mz-lead::after{font:700 34px/0 Georgia,'Times New Roman',serif;color:var(--mz-acc)}
.mz .mz-lead::before{content:"\201C";position:absolute;left:0;top:.62em}
.mz .mz-lead::after{content:"\201D";display:inline-block;margin-left:.1em;transform:translateY(.42em)}
/* 장소 카드 이름 옆 영문 이름 */
.mz-fh h2 .mz-lat{margin-left:10px;font-size:.5em;font-weight:600;letter-spacing:.02em;color:var(--mz-mute);white-space:nowrap}

/* 글 언어 바꾸기(밝게 옆, 같은 알약 모양 + 작은 메뉴) */
.mz-crumb .mz-lsel{position:relative;margin-left:auto}
.mz-crumb .mz-lsel + .mz-theme{margin-left:6px}
.mz-lbtn{display:inline-flex;align-items:center;gap:6px;height:30px;padding:0 10px 0 12px;border-radius:30px;border:1px solid var(--line);background:none;color:var(--text-2);font:inherit;font-size:12px;cursor:pointer}
.mz-lbtn:hover,.mz-lbtn[aria-expanded="true"]{color:var(--text);border-color:var(--text-3)}
.mz-lbtn svg{width:14px;height:14px;flex:none}.mz-lbtn .cv{width:12px;height:12px;opacity:.7;transition:transform .15s}
.mz-lbtn[aria-expanded="true"] .cv{transform:rotate(180deg)}
.mz-lmenu{position:absolute;right:0;top:36px;z-index:20;min-width:150px;padding:6px;border:1px solid var(--line);border-radius:12px;background:var(--surface);box-shadow:0 12px 30px rgba(0,0,0,.35);display:grid}
.mz-lmenu[hidden]{display:none}
.mz-lmenu a{display:flex;align-items:center;height:34px;padding:0 10px;border-radius:8px;font-size:13px;color:var(--text-2);text-decoration:none}
.mz-lmenu a:hover{background:var(--surface-2);color:var(--text)}
.mz-lmenu a[aria-current]{color:var(--mz-acc);font-weight:700}
/* 매거진 목록 NEW(발행 30일 이내) */
.mc .im{position:relative}
.mz-new{position:absolute;left:6px;top:6px;z-index:1;padding:2px 7px;border-radius:5px;background:var(--accent-text);color:#08111f;font:800 10.5px/1.4 'Outfit',sans-serif;letter-spacing:.06em}
.mgz{scroll-margin-top:8px}
