/* Phase 7 시각 통일. 토큰(design-tokens.css)만 쓴다. */
/* VIS-01: 표준 화면은 한 바탕 — 네온 그리드(GP 배경 그림)는 캠페인(.wux-campaign)에만 */
html:has(body.wux-std),body.wux-std{background:var(--wux-bg-page)!important;background-image:none!important}
body.wux-std .site,body.wux-std #page{background-image:none!important}
/* 표준 화면 제목: 영어 대문자 강제(text-transform) 해제 — "CONTACT", "PRIVACY POLICY" */
body.wux-std .entry-title,body.wux-std .page-title{text-transform:none!important;letter-spacing:normal!important}
body.wux-std .entry-content{font-size:var(--wux-fs-m);line-height:var(--wux-lh)}
/* VIS-04: 일반 페이지 본문의 옛 버튼(알약·그라데이션·네온) → 토큰 버튼 모양. 캠페인·도서 상세 구매 영역은 제외 */
body.wux-std:not(.single-download) .entry-content :is(.wp-block-button__link,.wp-element-button,a.button,button.button,input[type=submit]){display:inline-flex;align-items:center;justify-content:center;min-height:var(--wux-btn-h);padding:0 var(--wux-sp-4);border:1px solid var(--wux-p)!important;border-radius:var(--wux-r-m)!important;background:var(--wux-p)!important;background-image:none!important;color:#fff!important;box-shadow:none!important;font-weight:700;text-shadow:none!important}
body.wux-std:not(.single-download) .entry-content .is-style-outline .wp-block-button__link{background:var(--wux-bg)!important;color:var(--wux-p-d)!important}

/* ── 바닥글(VIS-03) ── */
.wux-ft{margin-top:var(--wux-sp-7);background:var(--wux-g-900);color:#e6ebf0;font-size:var(--wux-fs-s);line-height:1.6}
.wux-ft a{color:#e6ebf0;text-decoration:none}
.wux-ft a:hover{color:#fff;text-decoration:underline}
.wux-ft a:focus-visible,.wux-ft summary:focus-visible{outline:var(--wux-focus-w) solid var(--wux-focus);outline-offset:var(--wux-focus-o);border-radius:4px}
.wux-ft-in{box-sizing:border-box;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,3fr);gap:var(--wux-sp-6);max-width:1200px;margin:0 auto;padding:var(--wux-sp-7) var(--wux-sp-4) var(--wux-sp-5)}
.wux-ft-logo img{display:block;height:40px;width:auto;background:#fff;border-radius:var(--wux-r-s);padding:4px 8px}
.wux-ft-logo{display:inline-block;color:#fff;font-weight:800;font-size:20px}
.wux-ft-catch{margin:var(--wux-sp-3) 0;color:#c5d0db;font-size:var(--wux-fs-s)}
.wux-ft-social{display:flex;gap:var(--wux-sp-2);list-style:none;margin:0;padding:0}
.wux-ft-social a{display:inline-grid;place-items:center;width:44px;height:44px;border:1px solid #52606d;border-radius:50%}
.wux-ft-social .wux-ico{width:20px;height:20px}
.wux-ft-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--wux-sp-5)}
.wux-ft-col summary{display:flex;align-items:center;justify-content:space-between;gap:8px;list-style:none;margin:0 0 var(--wux-sp-2);color:#fff;font-weight:700;font-size:var(--wux-fs-s);cursor:default}
.wux-ft-col summary::-webkit-details-marker{display:none}
.wux-ft-col summary .wux-ico{display:none}
.wux-ft-col ul{list-style:none;margin:0;padding:0}
.wux-ft-col li a{display:inline-flex;align-items:center;gap:4px;min-height:32px;padding:2px 0}
.wux-ft-col li .wux-ico{width:14px;height:14px;opacity:.7}
.wux-ft-family summary{cursor:pointer}
.wux-ft-family summary .wux-ico{display:inline;transition:transform var(--wux-dur)}
.wux-ft-family[open] summary .wux-ico{transform:rotate(180deg)}
.wux-ft-bottom{box-sizing:border-box;max-width:1200px;margin:0 auto;padding:var(--wux-sp-4) var(--wux-sp-4) var(--wux-sp-6);border-top:1px solid #3e4c59;color:#c5d0db;font-size:var(--wux-fs-xs)}
.wux-ft-biz summary{display:inline-flex;align-items:center;gap:6px;min-height:44px;cursor:pointer;color:#e6ebf0;font-weight:600;list-style:none}
.wux-ft-biz summary::-webkit-details-marker{display:none}
.wux-ft-biz[open] summary .wux-ico{transform:rotate(180deg)}
.wux-ft-biz dl{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:4px var(--wux-sp-5);margin:var(--wux-sp-2) 0}
.wux-ft-biz dl div{display:flex;gap:8px}
.wux-ft-biz dt{font-weight:700;color:#e6ebf0;flex:none}
.wux-ft-biz dd{margin:0}
.wux-ft-notice{margin:var(--wux-sp-2) 0 0}
.wux-ft-copy{margin:var(--wux-sp-3) 0 0}
@media (max-width:1023px){.wux-ft-in{grid-template-columns:minmax(0,1fr)}.wux-ft-nav{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* 모바일: 열마다 아코디언(JS 가 open 을 뗀다. JS 없으면 펼친 채로) */
@media (max-width:767px){
  .wux-ft-nav{grid-template-columns:minmax(0,1fr);gap:0}
  .wux-ft-col{border-bottom:1px solid #3e4c59}
  .wux-ft-col summary{min-height:48px;margin:0;cursor:pointer}
  .wux-ft-col summary .wux-ico{display:inline;transition:transform var(--wux-dur)}
  .wux-ft-col[open] summary .wux-ico{transform:rotate(180deg)}
  .wux-ft-col ul{padding-bottom:var(--wux-sp-3)}
  .wux-ft-col li a{min-height:44px}
}

/* ── 404 ── */
.wux-404{box-sizing:border-box;max-width:1200px;margin:0 auto;padding:var(--wux-sp-6) var(--wux-sp-4) var(--wux-sp-7);color:var(--wux-ink)}
.wux-404-in{max-width:640px;margin:0 auto var(--wux-sp-7);text-align:center}
.wux-404-code{margin:0;font-size:72px;font-weight:800;line-height:1;color:var(--wux-p)}
.wux-404 h1{margin:var(--wux-sp-3) 0;font-size:var(--wux-fs-2xl);font-weight:var(--wux-fw-h)}
.wux-404-msg{margin:0 0 var(--wux-sp-5);font-size:var(--wux-fs-m);color:var(--wux-mut)}
.wux-404-search{display:flex;gap:var(--wux-sp-2);margin:0 0 var(--wux-sp-5)}
.wux-404-search input{box-sizing:border-box;flex:1;min-width:0;min-height:var(--wux-btn-h);padding:0 var(--wux-sp-4);border:1px solid var(--wux-border-strong);border-radius:var(--wux-r-m);font:inherit;font-size:var(--wux-fs-m);background:var(--wux-bg);color:var(--wux-ink)}
.wux-404-search input:focus-visible{outline:var(--wux-focus-w) solid var(--wux-focus);outline-offset:var(--wux-focus-o)}
.wux-404-links{display:flex;flex-wrap:wrap;justify-content:center;gap:var(--wux-sp-2);list-style:none;margin:0;padding:0}

/* ── 용어 설명(COPY-02) ── */
.wux-term-wrap{position:relative;display:inline}
.wux-term-q{display:inline-grid;place-items:center;width:24px;height:24px;margin-inline-start:2px;padding:0;border:1px solid var(--wux-border-strong);border-radius:50%;background:var(--wux-bg);color:var(--wux-p-d);font:700 13px/1 system-ui,sans-serif;vertical-align:middle;cursor:pointer}
.wux-term-q:focus-visible{outline:var(--wux-focus-w) solid var(--wux-focus);outline-offset:var(--wux-focus-o)}
.wux-term-tip{position:fixed;z-index:100005;top:0;left:0;width:max-content;max-width:min(300px,calc(100vw - 16px));padding:var(--wux-sp-3);border-radius:var(--wux-r-m);background:var(--wux-g-900);color:#fff;font-size:var(--wux-fs-s);font-weight:400;line-height:1.5;text-align:start;box-shadow:var(--wux-sh-2)}
.wux-term-tip[hidden]{display:none}
.wux-term-tip a{color:#cfe3f5;text-decoration:underline}
/* 작가 등록(COPY-01) */
.wux-author{max-width:720px;font-size:var(--wux-fs-m);line-height:var(--wux-lh)}
.wux-au-lead{font-size:var(--wux-fs-l);font-weight:600}
.wux-au-steps{padding-inline-start:1.4em}
.wux-au-steps li{margin:.4em 0}
.wux-author h2{font-size:var(--wux-fs-xl);margin:1.4em 0 .5em}
.wux-ft{--wux-focus:#f59e0b}
/* 본문 속 링크는 밑줄로 구분(색만으로는 1.4.1 위반 — 테마 링크색이 본문색과 비슷한 화면이 있다) */
/* 색은 강제하지 않는다 — 자기 바탕을 가진 버튼형 링크(소식 글 124편의 "코리안투데이에서 전문 보기" 등)가 어두운 바탕에 어두운 글자가 됐다(Phase 7 deep-QA H1) */
body.wux-std .entry-content :is(p,li,td,dd) a:not(.wux-b):not([class*=btn]):not([class*=button]):not([style*=background]),.wux-author :is(p,li) a:not(.wux-b){text-decoration:underline!important;text-underline-offset:.18em}
.wux-author :is(p,li) a:not(.wux-b){color:var(--wux-p-d)}
/* 한국어 제목은 낱말 단위로 줄바꿈("없습니\n다" 방지) */
.wux-404 :is(h1,p),.wux-author :is(h1,h2,p),body.wux-std .entry-title{word-break:keep-all;overflow-wrap:anywhere}
@media (max-width:480px){.wux-404-search{flex-wrap:wrap}.wux-404-search input{flex:1 1 100%}.wux-404-search .wux-b{flex:1 1 100%}}
