/* 실무 가이드 지도 (page-guides.php) — design/v2 토큰을 쓰고, 없을 때를 대비해 값을 함께 둔다.
   라디우스 0, 그림자 없음, flexbox만. 분야 색은 그 분야 묶음 안에서만(한 묶음 = 한 색). */
.gm{--gm-ink:var(--kd-ink-title,#111110);--gm-body:var(--kd-ink-body,#24231F);--gm-meta:var(--kd-ink-meta,#5C5A52);--gm-faint:var(--kd-ink-faint,#7C7A70);
  --gm-rule:var(--kd-rule,#DCD9CF);--gm-line:var(--kd-hairline,#000);--gm-card:var(--kd-mono-bg,#EFEDE4);
  display:flex;flex-direction:column;gap:var(--kd-sp-5,24px);padding-block:var(--kd-sp-6,32px) var(--kd-sp-8,64px);word-break:keep-all}
/* 분야 색 — newsroom/style/sector-colors.json과 같은 칸. 사이트 전역 --kd-sig(호 색)가 먼저 잡히지 않도록 값을 직접 둔다(2026-10-16 라이브 점검) */
.gm [data-issue="03"]{--gm-sig:#35A7E8;--gm-sig-ink:#0B63B8}
.gm [data-issue="04"]{--gm-sig:#F25FA0;--gm-sig-ink:#C01E6B}
.gm [data-issue="05"]{--gm-sig:#FFC61E;--gm-sig-ink:#8A5A00}
.gm [data-issue="06"]{--gm-sig:#12B5A5;--gm-sig-ink:#0A6E67}
.gm [data-issue="07"]{--gm-sig:#FF8A1F;--gm-sig-ink:#9E4A00}
.gm [data-issue="11"]{--gm-sig:#4C7CF3;--gm-sig-ink:#1B47B5}
.gm-eyebrow{font:600 12px var(--kd-font-mono,ui-monospace,monospace);letter-spacing:.14em;color:var(--gm-meta);margin:0}
.gm-title{font-size:var(--kd-fs-title,40px);font-weight:700;color:var(--gm-ink);margin:0;line-height:1.15}
.gm-lede{margin:0;color:var(--gm-meta);max-width:var(--kd-readw,720px)}
.gm-disclaimer{margin:0;font-size:13px;color:var(--gm-body);max-width:var(--kd-readw,720px);border-left:3px solid var(--gm-rule);padding-left:10px}
.gm-disclaimer a,.gm-note a{color:var(--gm-ink)}
.gm-stats{display:flex;flex-wrap:wrap;gap:8px 24px;font-size:13px;color:var(--gm-meta);border-bottom:2px solid var(--gm-ink);padding-bottom:14px}
.gm-stats b{font-family:var(--kd-font-serif,Georgia,serif);font-size:22px;font-weight:700;color:var(--gm-ink);margin-right:5px;font-variant-numeric:tabular-nums}
.gm-tabs{display:flex;flex-wrap:wrap;gap:6px}
.gm .gm-tab{border:1px solid var(--gm-rule);background:transparent;box-shadow:none;text-transform:none;padding:6px 11px;cursor:pointer;font:inherit;font-size:14px;font-weight:600;color:var(--gm-body);border-radius:0}
.gm .gm-tab[aria-selected="true"]{background:var(--gm-ink);color:var(--kd-paper,#F8F6F0);border-color:var(--gm-ink)}
.gm-tab .c{font:500 12px var(--kd-font-mono,ui-monospace,monospace);opacity:.75;margin-left:6px;white-space:nowrap}
.gm-bar{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;justify-content:space-between}
.gm-search{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--gm-meta);flex:1 1 280px;max-width:420px}
.gm-search input{flex:1 1 auto;height:36px;border:1px solid var(--gm-faint);border-radius:0;background:transparent;padding:0 10px;font:inherit;font-size:14px;color:var(--gm-ink)}
.gm-filters{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13px;color:var(--gm-meta);align-items:center}
.gm-filters label{display:inline-flex;gap:6px;align-items:center;cursor:pointer}
.gm-ctl{display:flex;gap:6px}
.gm .gm-ctl button,.gm .gm-ctl button:hover,.gm .gm-ctl button:focus{border:1px solid var(--gm-rule);background:transparent;color:var(--gm-body);padding:4px 9px;font:inherit;font-size:12.5px;font-weight:400;line-height:1.4;cursor:pointer;border-radius:0;box-shadow:none;text-transform:none}
.gm .gm-ctl button:hover{border-color:var(--gm-ink);color:var(--gm-ink)}
#gm-body{display:flex;flex-direction:column;gap:var(--kd-sp-7,44px)}
.gm-sec{display:flex;flex-direction:column;gap:8px}
.gm-subhead{display:flex;flex-direction:column;gap:4px;border-left:6px solid var(--gm-sig,var(--gm-ink));padding-left:12px}
.gm-subhead h2{font-size:21px;font-weight:700;color:var(--gm-sig-ink,var(--gm-ink));margin:0}
.gm-subhead p{margin:0;font-size:13px;color:var(--gm-meta)}
.gm-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--gm-line)}
.gm-node{border-bottom:1px solid var(--gm-rule)}
.gm-row{display:flex;gap:10px;align-items:flex-start;padding:10px 4px;cursor:pointer}
.gm-row:hover{background:var(--gm-card)}
.gm-row:focus-visible{outline:2px solid var(--gm-sig,var(--gm-ink));outline-offset:1px}
.gm-tw{flex:0 0 18px;font:500 13px var(--kd-font-mono,ui-monospace,monospace);color:var(--gm-faint);text-align:center;user-select:none;padding-top:3px}
.gm-t{flex:1 1 0;min-width:0;display:flex;flex-direction:column;gap:3px}
.gm-q{font-family:var(--kd-font-serif,Georgia,serif);font-size:17px;font-weight:600;line-height:1.4;color:var(--gm-ink);overflow-wrap:anywhere}
.gm-a{font-size:12.5px;color:var(--gm-meta)}
.gm-chips{flex:0 0 auto;display:flex;gap:6px;align-items:center;padding-top:3px}
.gm-no{font:600 11px var(--kd-font-mono,ui-monospace,monospace);color:var(--gm-sig-ink,var(--gm-ink))}
.gm-chip{font-size:11px;font-weight:600;padding:2px 7px;white-space:nowrap;border:1px solid currentColor}
/* PDF 있음 — 법령 지도 「전문 번역본」 표시와 같은 무게(2026-10-22 발행인 지시) */
.gm a.gm-pdf,.gm a.gm-pdf:visited{background:var(--kd-sig,#FF4D2E);border-color:var(--kd-sig,#FF4D2E);color:#111110;font-weight:700;text-decoration:none}
.gm a.gm-pdf:hover{background:#111110;border-color:#111110;color:#F8F6F0}
.gm-s-pub{background:var(--gm-ink);border-color:var(--gm-ink);color:var(--kd-paper,#F8F6F0)}
.gm-s-wip{color:var(--gm-sig-ink,var(--gm-ink))}
.gm-s-plan{color:var(--gm-faint);border-color:var(--gm-rule)}
.gm-legend .gm-s-wip{color:var(--gm-ink)}
.gm-detail{display:flex;flex-wrap:wrap;gap:12px 32px;padding:4px 4px 16px 32px}
.gm-d-col{flex:1 1 260px;min-width:0;display:flex;flex-direction:column;gap:4px}
.gm-d-h{margin:0;font:600 11px var(--kd-font-sans,sans-serif);letter-spacing:.14em;color:var(--gm-meta)}
.gm-d-t{margin:0 0 8px;font-size:14px;color:var(--gm-body)}
.gm-covers{list-style:none;margin:0;padding:0;display:flex;flex-direction:column}
.gm-covers li{font-size:14px;line-height:1.55;color:var(--gm-body);padding:4px 0;border-bottom:1px solid var(--gm-rule)}
.gm-act{display:flex;flex-direction:column;gap:8px;margin:4px 0 0;font-size:13px}
.gm .gm-btn,.gm .gm-btn:visited{align-self:flex-start;background:var(--gm-sig,var(--gm-ink));color:var(--gm-ink);padding:9px 16px;font-weight:600;text-decoration:none}
.gm .gm-btn:hover{background:var(--gm-sig-ink,var(--gm-ink));color:var(--kd-paper,#F8F6F0)}
.gm-wait{color:var(--gm-meta)}
.gm-wait a,.gm-lm{color:var(--gm-sig-ink,var(--gm-ink))}
.gm-empty{color:var(--gm-meta);padding:18px 4px;margin:0}
.gm-legend{display:flex;flex-wrap:wrap;gap:6px 10px;font-size:12px;color:var(--gm-meta);align-items:center}
.gm-note{font-size:12px;border-top:1px solid var(--gm-rule);padding-top:10px;margin:0}
@media (max-width:760px){
  .gm-row{flex-wrap:wrap}
  .gm-chips{flex-basis:100%;padding-left:28px}
  .gm-detail{padding-left:4px}
  .gm-q{font-size:16px}
}

/* 회원 가입·로그인 (page-join.php) */
.mj-cols{display:flex;flex-wrap:wrap;gap:var(--kd-sp-7,44px)}
.mj-form{flex:1 1 320px;min-width:0;display:flex;flex-direction:column;gap:14px;border-top:2px solid var(--gm-ink);padding-top:16px}
.mj-form h2{font-size:21px;font-weight:700;color:var(--gm-ink);margin:0}
.mj-form label{display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--gm-body)}
.mj-form input[type=email],.mj-form input[type=password],.mj-form input[type=text]{height:48px;border:1px solid var(--gm-faint);border-radius:0;background:transparent;padding:0 12px;font:inherit;font-size:15px;color:var(--gm-ink)}
.mj-form .mj-check{flex-direction:row;align-items:flex-start;gap:8px;font-size:13.5px}
.mj-form .mj-check input{width:20px;height:20px;margin:0;flex:none}
.mj-consent{display:flex;flex-direction:column;gap:8px;border-top:1px solid var(--gm-rule);padding-top:12px}
.mj-consent details{font-size:12.5px;color:var(--gm-meta)}
.mj-consent summary{cursor:pointer}
.mj-consent details p{margin:6px 0 0}
.mj-form button{border:0;cursor:pointer;font:inherit;font-size:15px}
.mj-hp{position:absolute;left:-9999px}
.mj-msg{margin:0;padding:10px 12px;border-left:6px solid var(--kd-sig,#FF4D2E);background:var(--gm-card);color:var(--gm-ink)}
.mj-done{display:flex;flex-direction:column;gap:8px}
.mj-links{display:flex;gap:16px;align-items:center}
