/* 안전보건조직도 & 선임서식 전용 스타일 (consult.css 위에 얹어서 사용) */

.toolnav{display:flex;gap:2px;border:1px solid var(--line);border-radius:5px;overflow:hidden;margin-bottom:28px;width:fit-content}
.toolnav button{font-family:"IBM Plex Sans KR",sans-serif;font-size:13px;font-weight:600;padding:10px 18px;border:none;background:var(--surface);color:var(--ink-soft);cursor:pointer}
.toolnav button.on{background:var(--navy);color:#fff}
.toolnav button:not(.on):hover{background:var(--paper)}

.toolpane{display:none}
.toolpane.on{display:block}

/* ---- 조직도 생성기 ---- */
.orggrid{display:grid;grid-template-columns:1fr 1.3fr;gap:0;border:1px solid var(--line);border-radius:6px;background:var(--surface);box-shadow:var(--shadow);overflow:hidden}
@media (max-width:820px){.orggrid{grid-template-columns:1fr}}
.orginputs{padding:24px;display:flex;flex-direction:column;gap:16px;border-right:1px solid var(--line);max-height:720px;overflow-y:auto}
@media (max-width:820px){.orginputs{border-right:none;border-bottom:1px solid var(--line);max-height:none}}
.orgfield label{display:block;font-size:12px;font-weight:600;color:var(--ink-soft);margin-bottom:5px}
.orgfield input[type="text"],.orgfield select{width:100%;padding:9px 10px;border:1px solid var(--line-strong);border-radius:3px;background:var(--paper);color:var(--ink);font:inherit;font-size:13.5px}
.orgcheck{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink-soft)}
.orgcheck input{accent-color:var(--accent)}
.orgdivider{border-top:1px solid var(--line);padding-top:16px;margin-top:4px;font-size:11px;font-weight:700;color:var(--accent);text-transform:uppercase;letter-spacing:.06em}
.superrow{display:grid;grid-template-columns:1fr 1fr auto;gap:8px;align-items:end}
.superrow input{width:100%}
.rmv{background:none;border:none;color:var(--alert);font-size:16px;cursor:pointer;padding:8px 4px}
.addbtn{padding:8px 14px;border:1px dashed var(--line-strong);border-radius:4px;background:var(--paper);color:var(--ink-soft);font-size:12.5px;cursor:pointer;align-self:flex-start}
.addbtn:hover{background:var(--accent-soft);color:var(--accent)}

.orgpreview{padding:28px;background:var(--paper);overflow-x:auto}
.orgpreview__toolbar{display:flex;justify-content:flex-end;margin-bottom:14px}
#orgchart{min-width:560px}
.oc-level{display:flex;justify-content:center;gap:20px;position:relative;margin-bottom:34px}
.oc-level::before{content:"";position:absolute;top:-17px;left:50%;width:1px;height:17px;background:var(--line-strong)}
.oc-level:first-child::before{display:none}
.oc-box{background:var(--surface);border:1px solid var(--line-strong);border-radius:4px;padding:10px 16px;text-align:center;min-width:120px;box-shadow:var(--shadow);position:relative}
.oc-box .role{font-size:10.5px;color:var(--accent);font-family:"IBM Plex Mono",monospace;text-transform:uppercase}
.oc-box .name{font-size:13.5px;font-weight:700;margin-top:2px}
.oc-box .cite{font-size:9.5px;color:var(--ink-soft);margin-top:3px}
.oc-row{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;position:relative;padding-top:18px}
.oc-row::before{content:"";position:absolute;top:0;left:50%;width:1px;height:18px;background:var(--line-strong)}
.oc-box--stack{display:flex;flex-direction:column;align-items:center;gap:0}

/* ---- 선임서식 ---- */
.formtool{display:grid;grid-template-columns:1fr 1.2fr;gap:0;border:1px solid var(--line);border-radius:6px;background:var(--surface);box-shadow:var(--shadow);overflow:hidden}
@media (max-width:820px){.formtool{grid-template-columns:1fr}}
.formtool__inputs{padding:24px;display:flex;flex-direction:column;gap:14px;border-right:1px solid var(--line)}
@media (max-width:820px){.formtool__inputs{border-right:none;border-bottom:1px solid var(--line)}}
.docpreview{padding:32px;background:#fff}
.doctitle{text-align:center;font-family:"Gowun Batang",serif;font-size:19px;font-weight:700;margin-bottom:22px;padding-bottom:14px;border-bottom:2px solid var(--ink)}
.doctable{width:100%;border-collapse:collapse;font-size:13px;margin-bottom:16px}
.doctable th,.doctable td{border:1px solid var(--line-strong);padding:9px 12px;text-align:left}
.doctable th{background:var(--paper);width:130px;font-weight:600;font-size:12px;color:var(--ink-soft)}
.doclaw{font-size:11.5px;color:var(--ink-soft);line-height:1.7;padding:12px 14px;background:var(--paper);border-radius:3px;margin-bottom:20px}
.docsign{display:flex;justify-content:flex-end;gap:40px;margin-top:36px;font-size:13px}
.docsign .box{text-align:center}
.docsign .line{width:130px;border-bottom:1px solid var(--ink);margin-top:36px;padding-top:4px;font-size:11px;color:var(--ink-soft)}

@media print{
  .backbar,.toolnav,.orginputs,.formtool__inputs,.orgpreview__toolbar,.no-print{display:none !important}
  body.csvc{background:#fff}
  .wrap{max-width:none;padding:0}
  .csec{padding:0;border:none}
  .orgpreview,.docpreview{padding:0;background:#fff}
  .orggrid,.formtool{border:none;box-shadow:none;display:block}
}
