/* 법령 지도 (page-lawmap.php) — design/v2 토큰을 쓰고, 없을 때를 대비해 값을 함께 둔다 */
.lm{--lm-ink:var(--kd-ink-title,#141412);--lm-body:var(--kd-ink-body,#2A2924);--lm-meta:var(--kd-ink-meta,#66635A);--lm-faint:var(--kd-ink-faint,#8F8B80);
  --lm-rule:var(--kd-rule,#DEDACF);--lm-rule2:var(--kd-border-strong,#C9C4B6);--lm-card:var(--kd-surface,#FFFEFA);--lm-sig:var(--kd-sig,#E8452A);--lm-sig-ink:var(--kd-sig-ink,#B8310F);
  --lm-sig-wash:#FBE5DE;--lm-live:#2B6A52;--lm-live-wash:#E2EFE7;--lm-amend:#8A6A1F;--lm-amend-wash:#F3ECD9;--lm-dead:#8A8780;--lm-dead-wash:#ECEAE4;--lm-draft:#55607A;--lm-draft-wash:#E5E8EF;
  display:flex;flex-direction:column;gap:var(--kd-sp-5,20px);padding-block:var(--kd-sp-6,28px) var(--kd-sp-8,56px);word-break:keep-all}
.lm-eyebrow{font:600 12px var(--kd-font-mono,ui-monospace,monospace);letter-spacing:.14em;color:var(--lm-meta);margin:0}
.lm-title{font-size:var(--kd-fs-title,40px);font-weight:700;color:var(--lm-ink);margin:0;line-height:1.15}
.lm-lede{margin:0;color:var(--lm-meta);max-width:var(--kd-readw,68ch)}
.lm-disclaimer{margin:0;font-size:13px;color:var(--lm-body);max-width:var(--kd-readw,68ch);border-left:3px solid var(--lm-rule2);padding-left:10px}
.lm-disclaimer a{color:var(--lm-sig-ink)}
.lm-stats{display:flex;flex-wrap:wrap;gap:8px 24px;font-size:13px;color:var(--lm-meta);border-bottom:2px solid var(--lm-ink);padding-bottom:14px}
.lm-stats b{font-family:var(--kd-font-serif,Georgia,serif);font-size:22px;font-weight:700;color:var(--lm-ink);margin-right:5px;font-variant-numeric:tabular-nums}
.lm-tabs{display:flex;flex-wrap:wrap;gap:6px}
.lm-tab{border:1px solid var(--lm-rule2);background:var(--lm-card);padding:6px 11px;cursor:pointer;font:inherit;font-size:14px;color:var(--lm-body);border-radius:0}
.lm-tab[aria-selected="true"]{background:var(--lm-ink);color:var(--kd-paper,#F8F6F0);border-color:var(--lm-ink)}
.lm-tab .c{font:500 12px var(--kd-font-mono,ui-monospace,monospace);opacity:.75;margin-left:6px;white-space:nowrap}
.lm-sectors .lm-tab{font-weight:600}
.lm-ladder-cap{margin:0 0 6px;font-size:12.5px;color:var(--lm-meta)}
.lm-ladder{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));border:1px solid var(--lm-rule2);background:var(--lm-card)}
.lm-rung{padding:10px 12px;border-right:1px solid var(--lm-rule);display:flex;flex-direction:column;gap:2px;min-width:0}
.lm-rung:last-child{border-right:0}
.lm-rung .lv{font:600 11.5px var(--kd-font-mono,ui-monospace,monospace);letter-spacing:.04em;overflow-wrap:anywhere}
.lm-rung .ko{font-size:12.5px;color:var(--lm-body)}
.lm-rung .n{font-family:var(--kd-font-serif,Georgia,serif);font-size:19px;font-weight:700;color:var(--lm-ink);font-variant-numeric:tabular-nums}
.lm-bar{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;justify-content:space-between}
.lm-filters{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:13px;color:var(--lm-meta);align-items:center}
.lm-filters label{display:inline-flex;gap:6px;align-items:center;cursor:pointer}
.lm-ctl{display:flex;gap:6px}
.lm-ctl button,.lm .lm-ctl button:focus{border:1px solid var(--lm-rule2);background:transparent;color:var(--lm-body);padding:4px 9px;font:inherit;font-size:12.5px;line-height:1.4;cursor:pointer;border-radius:0;box-shadow:none;text-transform:none}
.lm .lm-ctl button:hover{border-color:var(--lm-ink);color:var(--lm-ink);background:transparent}
.lm-search{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--lm-meta);flex:1 1 260px;max-width:440px}
.lm-search input{flex:1 1 auto;height:36px;border:1px solid var(--lm-faint);border-radius:0;background:transparent;padding:0 10px;font:inherit;font-size:14px;color:var(--lm-ink)}
.lm-hit{font:500 11.5px var(--kd-font-mono,ui-monospace,monospace);color:var(--lm-meta);padding:10px 4px 2px;list-style:none}
.lm-subhead h2{font-size:21px;font-weight:700;color:var(--lm-ink);margin:0}
.lm-subhead p{margin:4px 0 0;font-size:13px;color:var(--lm-meta)}
.lm-tree{list-style:none;margin:0;padding:0;border-top:1px solid var(--lm-ink)}
.lm-tree ul{list-style:none;margin:0 0 0 13px;padding:0 0 0 22px;border-left:1px dashed var(--lm-rule2)}
.lm-node{border-bottom:1px solid var(--lm-rule)}
.lm-tree ul .lm-node{border-bottom:0;border-top:1px solid var(--lm-rule)}
.lm-row{display:grid;grid-template-columns:20px 96px minmax(0,1fr) auto;gap:4px 10px;align-items:start;padding:8px 4px;cursor:pointer}
.lm-row:hover{background:var(--lm-sig-wash)}
.lm-row:focus-visible{outline:2px solid var(--lm-sig);outline-offset:1px}
.lm-tw{font:500 13px var(--kd-font-mono,ui-monospace,monospace);color:var(--lm-faint);text-align:center;user-select:none;padding-top:2px}
.lm-badge{font:600 11px var(--kd-font-mono,ui-monospace,monospace);padding:3px 6px;border:1px solid currentColor;text-align:center;white-space:nowrap}
.lv-UU,.lv-PERPPU{color:#B8310F}.lv-PP{color:#C25B1C}.lv-PERPRES{color:#8A6A1F}.lv-PERMEN{color:#2B6A52}.lv-PER-LEMBAGA{color:#2F6F7E}.lv-KEPMEN{color:#55607A}.lv-SE{color:#66635A}.lv-PUTUSAN-MK{color:#6E4A86}
.lm-t{min-width:0}
.lm-t .ko{font-weight:600;color:var(--lm-ink);overflow-wrap:anywhere}
.lm-t .ref{font:500 12px var(--kd-font-mono,ui-monospace,monospace);color:var(--lm-meta);margin-right:6px}
.lm-t .id{display:block;font-size:12px;color:var(--lm-faint);font-style:italic;overflow-wrap:anywhere}
.lm-chips{display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end;align-items:center}
.lm-chip{font-size:11px;padding:2px 7px;white-space:nowrap}
.lm-s-berlaku{background:var(--lm-live-wash);color:var(--lm-live)}
.lm-s-diubah{background:var(--lm-amend-wash);color:var(--lm-amend)}
.lm-s-dicabut{background:var(--lm-dead-wash);color:var(--lm-dead);text-decoration:line-through}
.lm-s-rancangan{background:var(--lm-draft-wash);color:var(--lm-draft)}
.lm-s-plan{background:#E3ECF6;color:#2C5A86}
.lm-s-x{background:var(--lm-dead-wash);color:var(--lm-meta)}
.lm-kd{background:var(--lm-sig);color:var(--lm-ink);font-weight:700;text-decoration:none}
a.lm-kd:hover{background:var(--lm-ink);color:var(--kd-paper,#F8F6F0);text-decoration:none}
/* 전문 번역 보기 — PDF 내려받기 단추와 같은 무게(2026-10-22 발행인 지시) */
.lm .lm-detail a.lm-tbtn{display:inline-block;background:var(--lm-sig);color:var(--lm-ink);font:700 14px var(--kd-font-sans,sans-serif);letter-spacing:.06em;padding:10px 20px;margin:4px 0;text-decoration:none;border:0}
.lm .lm-detail a.lm-tbtn:hover{background:var(--lm-ink);color:var(--kd-paper,#F8F6F0)}
.lm-art{font:500 11.5px var(--kd-font-mono,ui-monospace,monospace);color:var(--lm-meta);font-variant-numeric:tabular-nums}
.lm-rel{font:500 11px var(--kd-font-mono,ui-monospace,monospace);color:var(--lm-faint)}
.lm-dots{font-size:10px;letter-spacing:1px;color:var(--lm-sig)}
.lm-dots i{color:var(--lm-rule2);font-style:normal}
.lm-detail{grid-column:3/-1;font-size:12.5px;color:var(--lm-body);display:grid;grid-template-columns:auto minmax(0,1fr);gap:3px 12px;padding:6px 0 4px;margin:0;border-top:1px dotted var(--lm-rule2)}
.lm-detail dt{color:var(--lm-meta)}
.lm-detail dd{margin:0;overflow-wrap:anywhere}
.lm-detail a{color:var(--lm-sig-ink)}
.lm-cross{font:500 11.5px var(--kd-font-mono,ui-monospace,monospace);color:var(--lm-meta);padding:6px 4px}
.lm-empty{padding:18px 4px;color:var(--lm-meta)}
.lm-legend{display:flex;flex-wrap:wrap;gap:6px 14px;font-size:12px;color:var(--lm-meta);align-items:center}
.lm-note{font-size:12px;border-top:1px solid var(--lm-rule);padding-top:10px;margin:0}
@media (max-width:760px){
  .lm-ladder{grid-template-columns:repeat(3,minmax(0,1fr))}
  .lm-rung:nth-child(3n){border-right:0}
  .lm-rung:nth-child(-n+6){border-bottom:1px solid var(--lm-rule)}
  .lm-row{grid-template-columns:18px 76px minmax(0,1fr)}
  .lm-chips{grid-column:3;justify-content:flex-start}
  .lm-detail{grid-column:1/-1}
  .lm-tree ul{padding-left:12px;margin-left:8px}
}
