/* 섭외리스트 전체 출연자 보기 — 경쟁채널 분석 탭과 같은 톤(밝은 회색 바탕 · 흰 카드 · 작은 회색 라벨 · 진한 남색 주 버튼). */
#recruitingPage {
  --rd-ink: #111a2c;
  --rd-ink2: #2b364b;
  --rd-sub: #5d687c;
  --rd-mute: #9aa3b2;
  --rd-faint: #c3c9d3;
  --rd-hair: #e6e9ef;
  --rd-line: #eef0f4;
  --rd-wash: #f5f6f8;
  --rd-up: #0a7f80;
  --rd-card: 0 1px 2px rgba(17, 26, 44, .04), 0 8px 24px rgba(17, 26, 44, .04);
  background: #f2f4f7;
  font-feature-settings: "tnum";
}

#recruitingPage .recruiting-head { margin-bottom: 14px; }
#recruitingPage .recruiting-head h1 { font-size: 24px; letter-spacing: -.035em; color: var(--rd-ink); }

/* 요약: 큰 색 카드 → 한 줄 숫자 */
#recruitingPage .recruiting-summary-grid { gap: 10px; margin-bottom: 14px; }
#recruitingPage .recruiting-summary-card {
  min-height: 0;
  gap: 10px;
  padding: 10px 14px;
  border: 1px solid var(--rd-hair);
  border-radius: 12px;
  background: #fff;
  box-shadow: none;
}
#recruitingPage .recruiting-summary-card:hover { transform: none; border-color: var(--rd-ink); box-shadow: none; }
#recruitingPage .recruiting-summary-icon { width: 30px; height: 30px; flex: 0 0 30px; border-radius: 9px; font-size: 14px; }
#recruitingPage .recruiting-summary-card p { margin: 0; font-size: 12px; font-weight: 700; color: var(--rd-mute); }
#recruitingPage .recruiting-summary-card strong { font-size: 18px; line-height: 1.2; color: var(--rd-ink); }
#recruitingPage .recruiting-summary-card strong small { font-size: 12px; }
#recruitingPage .recruiting-summary-card em { display: none; }
#recruitingPage .recruiting-summary-card-arrow { display: none; }

/* 세 칸 배치: 필터 · 목록 · 상세 */
#recruitingPage .recruiting-workspace {
  display: grid;
  grid-template-columns: 200px minmax(0, 1fr);
  gap: 14px;
  min-height: 0;
}
#recruitingPage.active .recruiting-workspace { flex: 1 1 auto; }
/* 패널 자리는 넓은 화면의 전체 출연자 보기에서만 둔다. 그 밖에는 표 위에 겹쳐 띄워 표가 움직이지 않는다. */
#recruitingPage .recruiting-workspace { position: relative; }
#recruitingPage .recruiting-workspace.panel-docked { grid-template-columns: 200px minmax(0, 1fr) 330px; }
#recruitingPage .recruiting-workspace > .recruiting-list-card { min-width: 0; }

#recruitingPage .recruiting-list-card {
  border: 1px solid var(--rd-hair);
  border-radius: 16px;
  box-shadow: var(--rd-card);
}
#recruitingPage .recruiting-tabs-row { border-bottom-color: var(--rd-line); }
#recruitingPage .recruiting-table { border-radius: 0 0 16px 16px; }

/* 왼쪽 필터 */
.rd-rail {
  align-self: start;
  max-height: 100%;
  overflow: auto;
  padding: 12px 8px;
  border: 1px solid var(--rd-hair);
  border-radius: 16px;
  background: #fff;
  box-shadow: var(--rd-card);
}
.rd-rail h3 { margin: 14px 10px 6px; font-size: 12px; font-weight: 800; color: var(--rd-mute); }
.rd-seg {
  position: relative;
  display: grid;
  grid-template-columns: repeat(var(--rd-seg-count), 1fr);
  margin: 0 4px;
  padding: 3px;
  border-radius: 10px;
  background: var(--rd-wash);
}
.rd-seg > i {
  position: absolute;
  top: 3px;
  bottom: 3px;
  left: 3px;
  width: calc((100% - 6px) / var(--rd-seg-count));
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 1px 3px rgba(17, 26, 44, .12);
  transform: translateX(calc(100% * var(--rd-seg-index)));
  transition: transform .2s ease;
}
.rd-seg button {
  position: relative;
  height: 28px;
  border: 0;
  background: none;
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  color: var(--rd-sub);
  cursor: pointer;
}
.rd-seg button[aria-pressed="true"] { color: var(--rd-ink); }
.rd-groups { margin: 0; padding: 0; list-style: none; }
.rd-groups button {
  display: flex;
  align-items: center;
  gap: 8px;
  width: 100%;
  height: 32px;
  padding: 0 10px;
  border: 0;
  border-radius: 9px;
  background: none;
  font: inherit;
  font-size: 13px;
  font-weight: 700;
  color: var(--rd-ink2);
  text-align: left;
  cursor: pointer;
}
.rd-groups button:hover { background: var(--rd-wash); }
.rd-groups button[aria-pressed="true"] { background: #eceff3; color: var(--rd-ink); font-weight: 900; }
.rd-groups i { width: 8px; height: 8px; border-radius: 50%; background: var(--group-color); flex: none; }
.rd-groups span { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rd-groups b { font-size: 12px; font-weight: 800; color: var(--rd-mute); }

/* 간단 보기 표 */
#recruitingPage .recruiting-table.is-compact { background: #fff; }
.recruiting-table.is-compact .recruiting-table-head {
  min-height: 40px;
  background: #fff;
  color: var(--rd-mute);
  font-size: 12px;
  font-weight: 800;
  border-bottom: 1px solid var(--rd-line);
  box-shadow: none;
}
.recruiting-table.is-compact .recruiting-table-head > div { background: #fff; }
.recruiting-table.is-compact .recruiting-th-label { gap: 4px; min-width: 0; }
.recruiting-table.is-compact .recruiting-header-sort {
  width: 20px;
  height: 20px;
  flex: none;
  border: 0;
  background: none;
  color: var(--rd-faint);
  font-size: 10px;
}
.recruiting-table.is-compact .recruiting-header-sort.active { color: var(--rd-ink); }
.recruiting-table.is-compact .recruiting-header-sort:hover { background: var(--rd-wash); color: var(--rd-ink); }
.recruiting-table.is-compact .recruiting-owner-history-link { display: none; }
.recruiting-table.is-compact .recruiting-owner button { min-height: 0; padding: 4px 6px; font-size: 12.5px; }
.recruiting-table.is-compact .recruiting-owner-avatar { width: 22px; height: 22px; font-size: 10.5px; }
.recruiting-table.is-compact .recruiting-row {
  min-height: 52px;
  border-bottom-color: #f2f4f7;
  color: var(--rd-ink2);
  font-size: 13px;
}
.recruiting-table.is-compact .recruiting-row:hover,
.recruiting-table.is-compact .recruiting-row:hover > div { background: #f8f9fb; }
.recruiting-table.is-compact .recruiting-row.is-detail-open,
.recruiting-table.is-compact .recruiting-row.is-detail-open > div { background: #f3f7fb; }
.recruiting-table.is-compact .recruiting-row.is-detail-open > div:first-child { box-shadow: inset 3px 0 0 var(--rd-ink); }
.recruiting-table.is-compact .recruiting-row > div,
.recruiting-table.is-compact .recruiting-table-head > div { padding: 0 10px; }
.recruiting-table.is-compact .recruiting-editable-cell { min-height: 52px; }
.recruiting-table.is-compact .recruiting-table-head .sticky-title,
.recruiting-table.is-compact .recruiting-row > .sticky-title { border-right: 0; box-shadow: none; }
.recruiting-table.is-compact .recruiting-row.selecting { cursor: default; }

.recruiting-name-compact { display: flex; align-items: center; gap: 6px; min-width: 0; }
.recruiting-detail-open {
  display: grid;
  min-width: 0;
  padding: 4px 6px;
  margin-left: -6px;
  border: 0;
  border-radius: 8px;
  background: none;
  font: inherit;
  text-align: left;
  cursor: pointer;
}
.recruiting-detail-open:hover { background: var(--rd-wash); }
.recruiting-detail-open b { font-size: 13.5px; font-weight: 800; color: var(--rd-ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.recruiting-detail-open small { margin-top: 1px; font-size: 11.5px; font-weight: 600; color: var(--rd-mute); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

.recruiting-group-chip {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  max-width: 100%;
  height: 26px;
  padding: 0 8px;
  margin-left: -8px;
  border: 0;
  border-radius: 7px;
  background: none;
  font: inherit;
  font-size: 12px;
  font-weight: 700;
  color: var(--rd-sub);
  cursor: pointer;
}
.recruiting-group-chip::before { content: ""; flex: none; width: 7px; height: 7px; border-radius: 50%; background: var(--group-color); }
.recruiting-group-chip span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.recruiting-group-chip:hover { background: var(--rd-wash); color: var(--rd-ink); }

.recruiting-table.is-compact .recruiting-status,
.recruiting-table.is-compact .recruiting-target {
  min-height: 24px;
  padding: 0 8px;
  border-radius: 6px;
  font-size: 11.5px;
  font-weight: 800;
}
.recruiting-table.is-compact .recruiting-target.target-waiting,
.recruiting-table.is-compact .recruiting-channel.is-placeholder,
.rd-tiles .recruiting-channel.is-placeholder {
  border-color: transparent;
  background: none;
  color: var(--rd-faint);
}
.recruiting-target.target-month-1 { color: #0e7490; background: #cffafe; }
.recruiting-target.target-month-2 { color: #a16207; background: #fef9c3; }
.recruiting-target.target-month-3 { color: #15803d; background: #dcfce7; }
.recruiting-target.target-month-4 { color: #be123c; background: #ffe4e6; }
.recruiting-table.is-compact .recruiting-owner-empty { color: var(--rd-faint); }
.recruiting-table.is-compact .recruiting-memo-chip {
  width: 100%;
  min-height: 0;
  padding: 4px 6px;
  border: 0;
  background: none;
  color: var(--rd-sub);
  font-size: 12.5px;
}
.recruiting-table.is-compact .recruiting-memo-chip.is-empty { color: var(--rd-faint); }
.recruiting-table.is-compact .recruiting-memo-chip i { display: none; }

/* 목표월 구분줄 */
.recruiting-group-row {
  width: max-content;
  min-width: 100%;
  height: 34px;
  border-bottom: 1px solid var(--rd-line);
  background: #f7f8fa;
}
.recruiting-group-row > span {
  position: sticky;
  left: 0;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 100%;
  padding: 0 14px;
  font-size: 12px;
  font-weight: 900;
  color: var(--rd-ink2);
}
.recruiting-group-row small { font-size: 12px; font-weight: 800; color: var(--rd-mute); }
.recruiting-group-row em {
  height: 18px;
  padding: 0 6px;
  border-radius: 5px;
  background: var(--rd-ink);
  color: #fff;
  font-size: 10.5px;
  font-style: normal;
  font-weight: 800;
  display: inline-flex;
  align-items: center;
}

/* 오른쪽 상세 패널 */
.rd-panel {
  align-self: start;
  max-height: 100%;
  overflow: auto;
  padding: 18px;
  border: 1px solid var(--rd-hair);
  border-radius: 16px;
  background: #fff;
  box-shadow: 0 8px 28px rgba(17, 26, 44, .08);
  color: var(--rd-ink2);
}
.rd-panel[hidden] { display: none; }
.rd-panel .recruiting-editable-cell { min-height: 0; }
.rd-head { display: flex; align-items: flex-start; gap: 10px; }
.rd-grade .recruiting-cell-button { min-width: 34px; min-height: 34px; justify-content: center; }
.rd-title { flex: 1; min-width: 0; }
.rd-name {
  max-width: 100%;
  padding: 0 4px;
  margin-left: -4px;
  border: 0;
  border-radius: 7px;
  background: none;
  font: inherit;
  font-size: 20px;
  font-weight: 900;
  letter-spacing: -.03em;
  color: var(--rd-ink);
  text-align: left;
  cursor: pointer;
}
.rd-sub { display: flex; flex-wrap: wrap; align-items: center; gap: 2px 6px; margin-top: 2px; }
.rd-field, .rd-group {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  height: 24px;
  padding: 0 4px;
  border: 0;
  border-radius: 6px;
  background: none;
  font: inherit;
  font-size: 12.5px;
  font-weight: 700;
  color: var(--rd-sub);
  cursor: pointer;
}
.rd-field.is-empty { color: var(--rd-faint); }
.rd-group i { width: 7px; height: 7px; border-radius: 50%; background: var(--group-color); }
.rd-group small { font-size: 12px; font-weight: 600; color: var(--rd-mute); }
.rd-name:hover, .rd-field:hover, .rd-group:hover { background: var(--rd-wash); }
.rd-close {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border: 0;
  border-radius: 8px;
  background: none;
  color: var(--rd-mute);
  cursor: pointer;
}
.rd-close:hover { background: var(--rd-wash); color: var(--rd-ink); }
.rd-close svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; }
.rd-tiles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 16px 0 10px; }
.rd-tile {
  display: grid;
  gap: 4px;
  padding: 9px 10px;
  border-radius: 10px;
  background: #f7f8fa;
}
.rd-tile > span { font-size: 11px; font-weight: 800; color: var(--rd-mute); }
.rd-tile .recruiting-cell-button { justify-content: flex-start; min-height: 26px; max-width: 100%; font-size: 12.5px; font-weight: 800; }
.rd-owner { display: flex; align-items: center; gap: 10px; padding: 4px 2px 6px; }
.rd-owner > span { font-size: 12px; font-weight: 800; color: var(--rd-mute); }
.rd-owner .recruiting-owner { min-height: 0; }
.rd-section { padding: 12px 0 0; margin-top: 10px; border-top: 1px solid var(--rd-line); }
.rd-section > header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 6px; }
.rd-section h4 { margin: 0; font-size: 12px; font-weight: 800; color: var(--rd-mute); }
.rd-section p { margin: 0; font-size: 13px; line-height: 1.55; font-weight: 600; }
.rd-empty { color: var(--rd-faint); }
.rd-memo { white-space: pre-line; }
.rd-text-button {
  display: block;
  width: 100%;
  padding: 6px 8px;
  margin: 0 -8px;
  border: 0;
  border-radius: 8px;
  background: none;
  font: inherit;
  font-size: 13px;
  line-height: 1.55;
  font-weight: 600;
  color: var(--rd-ink2);
  text-align: left;
  white-space: pre-line;
  overflow-wrap: anywhere;
  cursor: pointer;
}
.rd-text-button.is-empty { color: var(--rd-faint); }
.rd-text-button:hover { background: var(--rd-wash); }
.rd-link {
  height: 26px;
  padding: 0 8px;
  border: 0;
  border-radius: 7px;
  background: none;
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  color: var(--rd-up);
  cursor: pointer;
}
.rd-link:hover { background: #e9f5f5; }
.rd-timeline { display: grid; gap: 10px; margin: 0 0 0 5px; padding: 0 0 0 14px; border-left: 2px solid var(--rd-line); list-style: none; }
.rd-timeline li { position: relative; }
.rd-timeline li::before {
  content: "";
  position: absolute;
  top: 4px;
  left: -20px;
  width: 8px;
  height: 8px;
  border: 2px solid #fff;
  border-radius: 50%;
  background: var(--rd-ink);
}
.rd-timeline small { display: block; font-size: 11px; font-weight: 800; color: var(--rd-mute); }
.rd-timeline p { font-size: 12.5px; line-height: 1.45; white-space: pre-line; overflow-wrap: anywhere; }
.rd-videos { display: grid; gap: 4px; margin: 0; padding: 0; list-style: none; }
.rd-videos a {
  display: block;
  padding: 6px 8px;
  border-radius: 8px;
  background: #f7f8fa;
  font-size: 12px;
  font-weight: 700;
  color: var(--rd-ink2);
  text-decoration: none;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.rd-videos a:hover { color: var(--rd-ink); background: #eef1f5; }
.rd-actions { display: flex; gap: 8px; margin-top: 18px; }
.rd-actions button {
  flex: 1;
  height: 38px;
  border: 1px solid var(--rd-hair);
  border-radius: 10px;
  background: #fff;
  font: inherit;
  font-size: 13px;
  font-weight: 800;
  color: var(--rd-ink);
  cursor: pointer;
}
.rd-actions button.is-primary { border-color: var(--rd-ink); background: var(--rd-ink); color: #fff; }

/* 분야 고르기 */
.recruiting-group-picker { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 14px; padding: 0; border: 0; }
.recruiting-group-picker legend { margin-bottom: 8px; font-size: 12px; font-weight: 800; color: #9aa3b2; }
.recruiting-group-picker label { position: relative; cursor: pointer; }
.recruiting-group-picker input { position: absolute; opacity: 0; pointer-events: none; }
.recruiting-group-picker span {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 30px;
  padding: 0 11px;
  border: 1px solid #e6e9ef;
  border-radius: 9px;
  font-size: 12.5px;
  font-weight: 800;
  color: #2b364b;
}
.recruiting-group-picker span::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: var(--group-color); }
.recruiting-group-picker input:checked + span { border-color: #111a2c; box-shadow: 0 0 0 1px #111a2c; color: #111a2c; }
.recruiting-group-picker input:focus-visible + span { outline: 2px solid #0a7f80; outline-offset: 2px; }
.recruiting-group-form-field > div { display: grid; grid-template-columns: minmax(0, 150px) minmax(0, 1fr); gap: 8px; }

/* 좁은 화면: 필터는 가로 줄, 상세는 아래에서 올라오는 창 */
@media (max-width: 900px) {
  #recruitingPage .recruiting-workspace,
  #recruitingPage .recruiting-workspace.panel-docked { grid-template-columns: minmax(0, 1fr); gap: 10px; }
  .rd-rail { display: flex; align-items: center; gap: 8px; padding: 8px; overflow-x: auto; overflow-y: hidden; }
  .rd-rail h3 { display: none; }
  .rd-seg { flex: none; width: 200px; margin: 0; }
  .rd-groups { display: flex; gap: 4px; }
  .rd-groups button { width: auto; white-space: nowrap; }
  .rd-groups b { margin-left: 2px; }
  .rd-panel {
    position: fixed;
    inset: 12vh 0 0 0;
    z-index: 120;
    max-height: none;
    border-radius: 18px 18px 0 0;
    box-shadow: 0 -12px 40px rgba(17, 26, 44, .18);
  }
}

/* 보기 전환 탭 */
#recruitingPage .recruiting-head > div { display: flex; align-items: center; gap: 18px; flex-wrap: wrap; }
.rd-views { display: flex; align-items: center; gap: 2px; height: 38px; padding: 0 4px; border: 1px solid var(--rd-hair); border-radius: 12px; background: #fff; }
.rd-views button {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  height: 100%;
  padding: 0 12px;
  border: 0;
  background: none;
  font: inherit;
  font-size: 13.5px;
  font-weight: 700;
  color: var(--rd-sub);
  cursor: pointer;
}
.rd-views button:hover { color: var(--rd-ink); }
.rd-views button[aria-pressed="true"] { color: var(--rd-ink); font-weight: 900; }
.rd-views button[aria-pressed="true"]::after { content: ""; position: absolute; left: 12px; right: 12px; bottom: -1px; height: 2px; border-radius: 2px; background: var(--rd-ink); }
.rd-views i { font-style: normal; font-size: 11.5px; font-weight: 800; color: var(--rd-mute); }
.rd-views em { min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px; background: #ef4444; color: #fff; font-size: 11px; font-style: normal; font-weight: 800; display: grid; place-items: center; }

/* 보기별 배치 */
#recruitingPage .recruiting-workspace[data-view="board"],
#recruitingPage .recruiting-workspace[data-view="cleanup"] { grid-template-columns: minmax(0, 1fr); }
#recruitingPage .recruiting-workspace:not([data-view="list"]) > .rd-rail,
#recruitingPage .recruiting-workspace:not([data-view="list"]) > .recruiting-list-card { display: none; }
.rd-view { min-width: 0; min-height: 0; overflow: auto; }
.rd-view[hidden] { display: none; }

/* 목표월 보드 */
.rd-board-head { display: flex; align-items: flex-end; gap: 16px; margin: 0 4px 12px; }
.rd-board-head dl { display: flex; gap: 26px; margin: 0; }
.rd-board-head dt { font-size: 12px; font-weight: 700; color: var(--rd-mute); }
.rd-board-head dd { margin: 2px 0 0; font-size: 18px; font-weight: 900; color: var(--rd-ink); }
.rd-add { margin-left: auto; height: 34px; padding: 0 14px; border: 0; border-radius: 10px; background: var(--rd-ink); color: #fff; font: inherit; font-size: 13px; font-weight: 800; cursor: pointer; }
.rd-board { display: grid; grid-template-columns: repeat(var(--rd-cols), minmax(230px, 1fr)); gap: 14px; align-items: start; padding-bottom: 8px; }
.rd-col { min-width: 0; border: 1px solid var(--rd-hair); border-radius: 16px; background: #fff; box-shadow: var(--rd-card); overflow: hidden; transition: box-shadow .15s, border-color .15s; }
.rd-col.is-waiting { background: #f7f8fa; box-shadow: none; }
.rd-col.is-past { background: #fffaf3; }
.rd-col.is-over { border-color: var(--rd-ink); box-shadow: 0 0 0 2px rgba(17, 26, 44, .12); }
.rd-col > header { display: flex; align-items: center; gap: 7px; height: 48px; padding: 0 14px; border-bottom: 1px solid var(--rd-line); }
.rd-col h2 { margin: 0; font-size: 14.5px; font-weight: 900; letter-spacing: -.025em; color: var(--rd-ink); white-space: nowrap; }
.rd-col > header em { height: 20px; padding: 0 7px; border-radius: 6px; background: var(--rd-ink); color: #fff; font-size: 11px; font-style: normal; font-weight: 800; display: inline-flex; align-items: center; white-space: nowrap; }
.rd-col > header em.is-past { background: #c2410c; }
.rd-col > header small { font-size: 12px; font-weight: 800; color: var(--rd-mute); }
.rd-col-bar { display: flex; width: 60px; height: 6px; margin-left: auto; overflow: hidden; border-radius: 3px; background: var(--rd-line); }
.rd-col-bar b { display: block; }
.rd-col-cards { display: grid; gap: 8px; max-height: calc(100dvh - 330px); min-height: 60px; padding: 10px; overflow: auto; }
.rd-col-empty { height: 42px; border: 1px dashed #d5dae2; border-radius: 12px; }
.rd-col-more { width: calc(100% - 20px); height: 36px; margin: 0 10px 12px; border: 1px solid var(--rd-hair); border-radius: 10px; background: #fff; font: inherit; font-size: 12.5px; font-weight: 800; color: var(--rd-sub); cursor: pointer; }
.rd-card {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 4px 10px;
  align-items: center;
  padding: 10px 12px;
  border: 1px solid var(--rd-line);
  border-radius: 12px;
  background: #fff;
  box-shadow: inset 3px 0 0 var(--row-highlight-accent, transparent);
  cursor: pointer;
  transition: border-color .15s, box-shadow .15s;
}
.rd-card[data-highlight]:not([data-highlight=""]) { background: var(--row-highlight); }
.rd-card:hover { border-color: #d5dae2; }
.rd-card.is-open { border-color: var(--rd-ink); box-shadow: inset 3px 0 0 var(--row-highlight-accent, var(--rd-ink)), 0 0 0 1px var(--rd-ink); }
.rd-card.is-dragging { opacity: .45; }
.rd-card-grade { grid-row: span 2; width: 26px; height: 26px; min-height: 0; padding: 0; border-radius: 7px; display: grid; place-items: center; font-size: 11.5px; font-weight: 900; }
.rd-card-grade.grade-undecided { background: none; border: 1px dashed #d5dae2; }
.rd-card-name { min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rd-card-name b { font-size: 13.5px; font-weight: 800; color: var(--rd-ink); }
.rd-card-name small { margin-left: 5px; font-size: 11.5px; font-weight: 600; color: var(--rd-mute); }
.rd-card-status { justify-self: end; min-height: 22px; padding: 0 7px; border-radius: 6px; font-size: 11px; font-weight: 800; display: inline-flex; align-items: center; white-space: nowrap; }
.rd-card-meta { grid-column: 2 / 4; display: flex; align-items: center; gap: 5px; min-width: 0; font-size: 11.5px; font-weight: 700; color: var(--rd-sub); white-space: nowrap; overflow: hidden; }
.rd-card-meta > i { flex: none; width: 7px; height: 7px; border-radius: 50%; background: var(--group-color); }
.rd-card-owner { width: 20px; height: 20px; margin-left: auto; flex: none; font-size: 10px; }

/* 정리 필요 */
.rd-clean-tiles { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-bottom: 14px; }
.rd-clean-tiles button { display: grid; gap: 4px; padding: 14px 16px; border: 1px solid var(--rd-hair); border-radius: 14px; background: #fff; font: inherit; text-align: left; cursor: pointer; }
.rd-clean-tiles button[aria-pressed="true"] { border-color: var(--rd-ink); box-shadow: 0 0 0 1px var(--rd-ink); }
.rd-clean-tiles span { font-size: 12px; font-weight: 800; color: var(--rd-mute); }
.rd-clean-tiles b { font-size: 22px; font-weight: 900; color: var(--rd-ink); }
.rd-clean-box { margin-bottom: 14px; border: 1px solid var(--rd-hair); border-radius: 16px; background: #fff; box-shadow: var(--rd-card); overflow: hidden; }
.rd-clean-box > header, .rd-clean-box > summary { display: flex; align-items: center; gap: 8px; min-height: 50px; padding: 0 18px; border-bottom: 1px solid var(--rd-line); }
.rd-clean-box > summary { cursor: pointer; list-style: none; }
.rd-clean-box > summary::-webkit-details-marker { display: none; }
.rd-clean-box h2 { margin: 0; font-size: 15px; font-weight: 900; color: var(--rd-ink); }
.rd-clean-box > header small, .rd-clean-box > summary small { font-size: 12px; font-weight: 800; color: var(--rd-mute); }
.rd-clean-empty { margin: 0; padding: 28px; text-align: center; font-size: 18px; font-weight: 900; color: var(--rd-up); }
.rd-separated:not([open]) > summary { border-bottom: 0; }
.rd-dup { display: flex; align-items: center; gap: 14px; padding: 14px 18px; border-bottom: 1px solid #f2f4f7; }
.rd-dup:last-child { border-bottom: 0; }
.rd-dup-people { display: flex; flex-wrap: wrap; gap: 10px; flex: 1; min-width: 0; }
.rd-dup-person { position: relative; display: flex; gap: 10px; align-items: flex-start; width: 300px; max-width: 100%; padding: 12px; border: 1px solid var(--rd-line); border-radius: 12px; cursor: pointer; }
.rd-dup-person:has(input:checked) { border-color: var(--rd-ink); box-shadow: 0 0 0 1px var(--rd-ink); }
.rd-dup-person:has(input:disabled) { cursor: not-allowed; opacity: .7; }
.rd-dup-person input { margin: 5px 0 0; accent-color: var(--rd-ink); }
.rd-dup-info { display: grid; gap: 2px; min-width: 0; font-size: 12px; font-weight: 600; color: var(--rd-sub); }
.rd-dup-info b { font-size: 14px; font-weight: 800; color: var(--rd-ink); }
.rd-dup-info b small { margin-left: 6px; font-size: 11.5px; font-weight: 700; color: var(--rd-up); }
.rd-dup-info span { overflow-wrap: anywhere; }
.rd-linked { position: absolute; top: 10px; right: 10px; height: 20px; padding: 0 7px; border-radius: 6px; background: #e9f5f5; color: var(--rd-up); font-size: 11px; font-style: normal; font-weight: 800; display: inline-flex; align-items: center; }
.rd-dup-actions { display: flex; gap: 8px; flex: none; }
.rd-dup-actions button { height: 36px; padding: 0 14px; border: 1px solid var(--rd-hair); border-radius: 10px; background: #fff; font: inherit; font-size: 13px; font-weight: 800; color: var(--rd-ink); cursor: pointer; white-space: nowrap; }
.rd-dup-actions .is-primary { border-color: var(--rd-ink); background: var(--rd-ink); color: #fff; }
.rd-dup-actions button:disabled { opacity: .4; cursor: not-allowed; }
.rd-rater > header select { margin-left: auto; height: 32px; padding: 0 10px; border: 1px solid var(--rd-hair); border-radius: 9px; background: #fff; font: inherit; font-size: 12.5px; font-weight: 700; color: var(--rd-ink2); }
.rd-rate-card { max-width: 640px; margin: 20px auto 14px; padding: 22px; border: 1px solid var(--rd-line); border-radius: 16px; background: #fff; }
.rd-rate-title { display: flex; flex-wrap: wrap; align-items: baseline; gap: 6px 10px; }
.rd-rate-title h3 { margin: 0; font-size: 24px; font-weight: 900; letter-spacing: -.03em; color: var(--rd-ink); }
.rd-rate-title > span { font-size: 13.5px; font-weight: 700; color: var(--rd-sub); }
.rd-rate-group { display: inline-flex; align-items: center; gap: 6px; }
.rd-rate-group i { width: 8px; height: 8px; border-radius: 50%; background: var(--group-color); }
.rd-rate-reason, .rd-rate-memo { margin: 14px 0 0; padding: 12px 14px; border-radius: 12px; background: #f7f8fa; font-size: 13.5px; line-height: 1.6; font-weight: 600; color: var(--rd-ink2); white-space: pre-line; }
.rd-rate-memo { background: #fffaf0; font-size: 12.5px; }
.rd-rate-facts { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 12px; font-size: 12px; font-weight: 700; color: var(--rd-mute); }
.rd-rate-facts a { padding: 3px 8px; border-radius: 6px; background: #f2f4f7; color: var(--rd-ink2); text-decoration: none; }
.rd-rate-keys { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin-top: 20px; }
.rd-rate-keys button { display: grid; place-items: center; gap: 2px; height: 64px; border: 0; border-radius: 14px; font: inherit; cursor: pointer; transition: transform .12s; }
.rd-rate-keys button:hover { transform: translateY(-1px); }
.rd-rate-keys b { font-size: 22px; font-weight: 900; }
.rd-rate-keys kbd, .rd-rate-nav kbd { font: inherit; font-size: 10.5px; font-weight: 800; opacity: .7; }
.rd-rate-nav { display: flex; justify-content: space-between; margin-top: 12px; }
.rd-rate-nav button { height: 32px; padding: 0 12px; border: 0; border-radius: 9px; background: none; font: inherit; font-size: 12.5px; font-weight: 800; color: var(--rd-sub); cursor: pointer; }
.rd-rate-nav button:hover:not(:disabled) { background: var(--rd-wash); color: var(--rd-ink); }
.rd-rate-nav button:disabled { opacity: .35; cursor: default; }
.rd-rate-next { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px; margin: 0 0 20px; padding: 0 18px; list-style: none; }
.rd-rate-next li { padding: 5px 10px; border-radius: 8px; background: #f7f8fa; font-size: 12px; font-weight: 800; color: var(--rd-sub); }
.rd-rate-next small { margin-left: 4px; font-weight: 600; color: var(--rd-mute); }
.rd-other-list { margin: 0; padding: 4px 0; list-style: none; }
.rd-other-list li { display: flex; align-items: center; gap: 12px; padding: 10px 18px; border-bottom: 1px solid #f2f4f7; font-size: 13px; }
.rd-other-list li:last-child { border-bottom: 0; }
.rd-other-list b { min-width: 90px; color: var(--rd-ink); }
.rd-other-list span { flex: 1; min-width: 0; color: var(--rd-sub); font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/* 상세 패널 줄 강조 */
.rd-highlight { display: flex; gap: 6px; margin: 12px 0 0 44px; }
.rd-highlight button { width: 18px; height: 18px; padding: 0; border: 2px solid #fff; border-radius: 50%; background: var(--highlight-swatch); box-shadow: 0 0 0 1px var(--rd-hair); cursor: pointer; }
.rd-highlight button[aria-pressed="true"] { box-shadow: 0 0 0 2px var(--rd-ink); }

/* 오른쪽 클릭 메뉴: 빠른 동작 */
.recruiting-context-quick { display: grid; gap: 6px; padding: 8px 0; border-top: 1px solid #eef0f4; border-bottom: 1px solid #eef0f4; }
.recruiting-context-quick > button { min-height: 28px; padding: 0 6px; border: 0; border-radius: 6px; background: transparent; font: inherit; font-size: 12px; font-weight: 700; text-align: left; cursor: pointer; }
.recruiting-context-quick > button:hover { background: #f2f4f7; }
.recruiting-context-months { display: flex; align-items: center; gap: 4px; padding: 0 6px; }
.recruiting-context-months span { margin-right: 4px; font-size: 11.5px; font-weight: 700; color: #9aa3b2; }
.recruiting-context-months button { height: 24px; padding: 0 8px; border: 1px solid #e6e9ef; border-radius: 6px; background: #fff; font: inherit; font-size: 11.5px; font-weight: 800; color: #2b364b; cursor: pointer; }
.recruiting-context-months button[aria-pressed="true"] { border-color: #111a2c; background: #111a2c; color: #fff; }

/* 오늘 챙길 일 */
@media (min-width: 901px) {
  .rd-panel.is-overlay {
    position: absolute;
    top: 0;
    right: 0;
    z-index: 40;
    width: min(360px, calc(100% - 24px));
    max-height: 100%;
    box-shadow: 0 18px 48px rgba(17, 26, 44, .18), 0 2px 6px rgba(17, 26, 44, .06);
  }
}
.rd-panel.rd-today { padding: 18px 16px; }
.rd-today-head { display: flex; align-items: baseline; gap: 8px; margin-bottom: 14px; }
.rd-today-head h2 { margin: 0; font-size: 17px; font-weight: 900; letter-spacing: -.03em; color: var(--rd-ink); }
.rd-today-head small { font-size: 12px; font-weight: 700; color: var(--rd-mute); }
.rd-today-head .rd-close { margin-left: auto; align-self: center; }
.rd-today-month { padding: 12px; border-radius: 12px; background: #f7f8fa; }
.rd-today-month-title { display: flex; align-items: baseline; gap: 6px; }
.rd-today-month-title b { font-size: 14px; font-weight: 900; color: var(--rd-ink); }
.rd-today-month-title small { font-size: 12px; font-weight: 800; color: var(--rd-mute); }
.rd-today-month-title .rd-link { margin-left: auto; }
.rd-today-bar { display: flex; gap: 2px; height: 8px; margin: 10px 0 8px; overflow: hidden; border-radius: 4px; background: var(--rd-line); }
.rd-today-bar i { display: block; }
.rd-today-legend { display: flex; flex-wrap: wrap; gap: 4px 10px; margin: 0; padding: 0; list-style: none; font-size: 11.5px; font-weight: 700; color: var(--rd-sub); }
.rd-today-legend li { display: inline-flex; align-items: center; gap: 4px; }
.rd-today-legend i { width: 7px; height: 7px; border-radius: 2px; }
.rd-today-legend b { color: var(--rd-ink); }
.rd-today-sec { margin-top: 16px; padding-top: 12px; border-top: 1px solid var(--rd-line); }
.rd-today-sec > header { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; margin-bottom: 6px; }
.rd-today-sec h4 { margin: 0; font-size: 12.5px; font-weight: 900; color: var(--rd-ink2); }
.rd-today-sec header small { font-size: 11.5px; font-weight: 700; color: var(--rd-mute); }
.rd-today-list { display: grid; gap: 2px; margin: 0; padding: 0; list-style: none; }
.rd-today-list li { display: flex; align-items: center; gap: 6px; min-height: 42px; padding: 0 4px; border-radius: 9px; }
.rd-today-list li:hover { background: var(--rd-wash); }
.rd-today-person { display: flex; align-items: center; gap: 8px; flex: 1; min-width: 0; padding: 4px 2px; border: 0; background: none; font: inherit; text-align: left; cursor: pointer; }
.rd-today-person .rd-card-grade { grid-row: auto; flex: none; width: 24px; height: 24px; }
.rd-today-name { display: grid; min-width: 0; }
.rd-today-name b { font-size: 13px; font-weight: 800; color: var(--rd-ink); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rd-today-name small { font-size: 11px; font-weight: 600; color: var(--rd-mute); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rd-today-list em { flex: none; font-size: 11.5px; font-style: normal; font-weight: 900; color: #c2410c; }
.rd-today-list time { flex: none; font-size: 11.5px; font-weight: 700; color: var(--rd-mute); }
.rd-today-log { flex: none; height: 24px; padding: 0 8px; border: 1px solid var(--rd-hair); border-radius: 7px; background: #fff; font: inherit; font-size: 11.5px; font-weight: 800; color: var(--rd-ink2); cursor: pointer; }
.rd-today-log:hover { border-color: var(--rd-ink); }
.rd-today-more { width: 100%; height: 30px; margin-top: 4px; border: 0; border-radius: 8px; background: var(--rd-wash); font: inherit; font-size: 12px; font-weight: 800; color: var(--rd-sub); cursor: pointer; }
.rd-today-clean { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; margin-top: 16px; padding-top: 12px; border-top: 1px solid var(--rd-line); }
.rd-today-clean button { display: grid; gap: 2px; padding: 8px 10px; border: 1px solid var(--rd-hair); border-radius: 10px; background: #fff; font: inherit; text-align: left; cursor: pointer; }
.rd-today-clean button:hover { border-color: var(--rd-ink); }
.rd-today-clean span { font-size: 11px; font-weight: 800; color: var(--rd-mute); }
.rd-today-clean b { font-size: 16px; font-weight: 900; color: var(--rd-ink); }
.rd-today-strip { display: flex; align-items: center; gap: 16px; min-height: 44px; padding: 0 16px; border-bottom: 1px solid var(--rd-line); border-radius: 16px 16px 0 0; background: #fbfcfd; font-size: 12.5px; font-weight: 700; color: var(--rd-ink2); }
.rd-today-strip[hidden] { display: none; }
.rd-today-strip b { font-weight: 900; color: var(--rd-ink); }
.rd-today-strip span { display: inline-flex; align-items: center; gap: 6px; white-space: nowrap; }
.rd-today-strip i { width: 8px; height: 8px; border-radius: 50%; }
.rd-today-strip .is-late { color: #c2410c; font-weight: 800; }
.rd-today-strip .is-late i { background: #c2410c; }
.rd-today-strip button { margin-left: auto; height: 28px; padding: 0 10px; border: 1px solid var(--rd-hair); border-radius: 8px; background: #fff; font: inherit; font-size: 12px; font-weight: 800; color: var(--rd-ink2); cursor: pointer; }

/* 넓은 화면 추가 칸 */
.recruiting-wide-cell { font-size: 12.5px; font-weight: 700; color: var(--rd-sub); }
.recruiting-wide-cell.is-empty { color: var(--rd-faint); }
.recruiting-wide-cell.is-late { color: #c2410c; font-weight: 900; }
.recruiting-contact-flag { color: var(--rd-up); font-size: 12px; }
.recruiting-video-count { color: #b91c1c; font-weight: 800; }

/* 모든 열 보기도 같은 톤으로 */
#recruitingPage .recruiting-table:not(.is-compact) .recruiting-table-head {
  min-height: 44px;
  background: #fff;
  color: var(--rd-mute);
  font-size: 12px;
  font-weight: 800;
  border-bottom: 1px solid var(--rd-line);
  box-shadow: none;
}
#recruitingPage .recruiting-table:not(.is-compact) .recruiting-table-head > div { background: #fff; }
#recruitingPage .recruiting-table:not(.is-compact) .recruiting-header-sort { width: 20px; height: 20px; border: 0; background: none; color: var(--rd-faint); font-size: 10px; }
#recruitingPage .recruiting-table:not(.is-compact) .recruiting-header-sort.active { color: var(--rd-ink); }
#recruitingPage .recruiting-table:not(.is-compact) .recruiting-row { min-height: 54px; border-bottom-color: #f2f4f7; color: var(--rd-ink2); font-size: 13px; }
#recruitingPage .recruiting-table:not(.is-compact) .recruiting-editable-cell { min-height: 54px; }
#recruitingPage .recruiting-table:not(.is-compact) .recruiting-row:hover,
#recruitingPage .recruiting-table:not(.is-compact) .recruiting-row:hover > div { background: #f8f9fb; }
#recruitingPage .recruiting-table:not(.is-compact) .recruiting-table-head .sticky-title,
#recruitingPage .recruiting-table:not(.is-compact) .recruiting-row > .sticky-title { border-right: 1px solid var(--rd-line); box-shadow: none; }
#recruitingPage .recruiting-table:not(.is-compact) .recruiting-status,
#recruitingPage .recruiting-table:not(.is-compact) .recruiting-target { min-height: 24px; padding: 0 8px; border-radius: 6px; font-size: 11.5px; font-weight: 800; }
#recruitingPage .recruiting-table:not(.is-compact) .is-placeholder,
#recruitingPage .recruiting-table:not(.is-compact) .recruiting-owner-empty,
#recruitingPage .recruiting-table:not(.is-compact) .recruiting-target.target-waiting { border-color: transparent; background: none; color: var(--rd-faint); }
#recruitingPage .recruiting-table:not(.is-compact) .recruiting-memo-chip { min-height: 0; padding: 6px 8px; border-color: transparent; background: none; color: var(--rd-sub); font-size: 12.5px; }
#recruitingPage .recruiting-table:not(.is-compact) .recruiting-memo-chip:hover { background: var(--rd-wash); }
#recruitingPage .recruiting-table:not(.is-compact) .recruiting-memo-chip.is-empty { color: var(--rd-faint); }
#recruitingPage .recruiting-title-field-cell.is-stacked { display: grid; align-content: center; gap: 0; min-width: 0; }
#recruitingPage .recruiting-title-field-cell.is-stacked .recruiting-editable-cell { min-height: 0; }
#recruitingPage .recruiting-title-field-cell.is-stacked .recruiting-cell-button { min-height: 24px; font-weight: 700; }
#recruitingPage .recruiting-title-field-cell.is-stacked .recruiting-group-chip { height: 22px; margin-left: 0; font-size: 11.5px; }
#recruitingPage .recruiting-table:not(.is-compact) .recruiting-name .recruiting-cell-button { font-weight: 800; color: var(--rd-ink); }
#recruitingPage .recruiting-table:not(.is-compact) .recruiting-history-trigger { min-height: 30px; border-color: var(--rd-hair); box-shadow: none; }

@media (max-width: 900px) {
  .rd-today-strip { flex-wrap: wrap; gap: 8px 14px; padding: 10px 14px; }
  .rd-board { grid-template-columns: repeat(var(--rd-cols), 260px); overflow-x: auto; }
  .rd-clean-tiles { grid-template-columns: 1fr; }
  .rd-dup { flex-direction: column; align-items: stretch; }
  .rd-rate-keys button { height: 56px; }
}

/* 디자인 A(차분한 글자형): 색 구분은 그대로, 색은 글자·점·옅은 바탕으로만 쓰고 굵기를 낮춘다. */
#recruitingPage { --g-s: #c81e1e; --g-a: #c2580c; --g-b: #a16207; --g-c: #64748b; }
#recruitingPage .recruiting-head h1 { font-weight: 800; }
#recruitingPage .rd-views button[aria-pressed="true"] { font-weight: 800; }
#recruitingPage .recruiting-grade { border-radius: 6px !important; font-weight: 800 !important; }
#recruitingPage .recruiting-grade.grade-s { color: var(--g-s); background: color-mix(in srgb, var(--g-s) 11%, #fff); }
#recruitingPage .recruiting-grade.grade-a { color: var(--g-a); background: color-mix(in srgb, var(--g-a) 11%, #fff); }
#recruitingPage .recruiting-grade.grade-b { color: var(--g-b); background: color-mix(in srgb, #eab308 16%, #fff); }
#recruitingPage .recruiting-grade.grade-c { color: var(--g-c); background: #f1f3f6; }
#recruitingPage .recruiting-table .recruiting-grade { width: 24px; min-width: 24px; height: 24px; min-height: 24px; padding: 0; justify-content: center; font-size: 11.5px; }
/* 진행: 칠한 알약 → 점 + 글자 */
#recruitingPage .recruiting-status { position: relative; background: none !important; border-color: transparent !important; padding-left: 13px !important; font-weight: 700 !important; }
#recruitingPage .recruiting-status::before { content: ""; position: absolute; left: 2px; top: 50%; width: 6px; height: 6px; margin-top: -3px; border-radius: 50%; background: currentColor; }
#recruitingPage .recruiting-status.status-waiting { color: #9aa3b2; }
/* 목표월: 글자색만 */
#recruitingPage .recruiting-target { background: none !important; border-color: transparent !important; font-weight: 700 !important; }
#recruitingPage .recruiting-target.target-waiting { color: #c3c9d3; }
/* 코너: 설정된 색은 작은 네모로 */
#recruitingPage .recruiting-channel:not(.is-placeholder) { position: relative; background: none !important; color: #2b364b !important; padding-left: 16px !important; font-weight: 600; }
#recruitingPage .recruiting-channel:not(.is-placeholder)::before { content: ""; position: absolute; left: 4px; top: 50%; width: 8px; height: 8px; margin-top: -4px; border-radius: 2px; background: var(--channel-bg); box-shadow: inset 0 0 0 1px rgba(17, 26, 44, .18); }
/* 요약 카드: 색 동그라미 → 왼쪽 가는 색 띠 */
#recruitingPage .recruiting-summary-card { position: relative; padding-left: 16px; }
#recruitingPage .recruiting-summary-icon { display: none; }
#recruitingPage .recruiting-summary-card::before { content: ""; position: absolute; left: 0; top: 14px; bottom: 14px; width: 3px; border-radius: 0 3px 3px 0; }
#recruitingPage .recruiting-summary-card.red::before { background: #dc2626; }
#recruitingPage .recruiting-summary-card.blue::before { background: #2563eb; }
#recruitingPage .recruiting-summary-card.orange::before { background: #ea580c; }
#recruitingPage .recruiting-summary-card.green::before { background: #0f9f6e; }
#recruitingPage .recruiting-summary-card.violet::before { background: #7c3aed; }
#recruitingPage .recruiting-summary-card strong { font-weight: 800; }
/* 글자 굵기·크기 정리 */
#recruitingPage .recruiting-detail-open b, #recruitingPage .rd-card-name b { font-weight: 700; }
#recruitingPage .recruiting-group-row > span { font-weight: 800; }
#recruitingPage .rd-col h2, #recruitingPage .rd-today-head h2, #recruitingPage .rd-board-head dd { font-weight: 800; }
#recruitingPage .recruiting-owner-avatar { width: 20px; height: 20px; font-size: 10px; }
#recruitingPage .rd-groups button[aria-pressed="true"] { font-weight: 800; }
/* 보드 카드: 테두리만, 상태는 점 */
#recruitingPage .rd-card { border-color: #eceff3; box-shadow: none; }
#recruitingPage .rd-card .rd-card-status { padding-left: 12px !important; }
#recruitingPage .rd-col > header em { background: #eef2f6; color: #2b364b; }
#recruitingPage .recruiting-group-row em { background: #eef2f6; color: #2b364b; }
#recruitingPage .rd-col > header em.is-past { background: #fff1e6; color: #c2410c; }

/* 분야 세분화: 큰 분류 묶음 제목 + 세부 분야 */
.rd-groups .rd-family button { height: 28px; margin-top: 6px; font-size: 11.5px; font-weight: 800; color: var(--rd-mute); }
.rd-groups .rd-family button i { border-radius: 2px; }
.rd-groups .rd-family button b { color: #c3c9d3; font-size: 11px; }
.rd-groups .rd-family button[aria-pressed="true"] { color: var(--rd-ink); }
.rd-groups .rd-fieldrow button { height: 28px; padding-left: 26px; font-size: 13px; font-weight: 600; }
.rd-groups .rd-fieldrow button[aria-pressed="true"] { font-weight: 800; }
.recruiting-group-picker.is-fields { display: grid; gap: 0; }
.recruiting-group-picker.is-fields legend { margin-bottom: 4px; }
.recruiting-field-family { display: grid; grid-template-columns: 104px minmax(0, 1fr); gap: 8px; align-items: start; padding: 7px 0; border-top: 1px solid #eef0f4; }
.recruiting-group-picker.is-fields .recruiting-field-family > span { display: flex; align-items: center; gap: 6px; height: auto; padding: 6px 0 0; border: 0; border-radius: 0; font-size: 12px; font-weight: 800; color: #5d687c; }
.recruiting-field-family > span i { width: 8px; height: 8px; border-radius: 2px; background: var(--group-color); }
.recruiting-field-family > div { display: flex; flex-wrap: wrap; gap: 6px; }
.recruiting-group-picker.is-fields .recruiting-field-family span::before { content: none; }
.recruiting-group-picker.is-fields .recruiting-field-family label span { height: 28px; padding: 0 10px; }
.recruiting-group-picker.is-fields .recruiting-field-family label span::before { content: none; }
#recruitingSubFieldForm.recruiting-detail-text-modal { width: min(780px, calc(100vw - 48px)); }

/* ===== v6 재설계: 왼쪽 패널 없음 · 위쪽 두 줄 메뉴 · 넓은 표 · 겹쳐 뜨는 상세 ===== */
#recruitingPage.rd-v2 { background: #fff; }
#recruitingPage.rd-v2 .recruiting-summary-grid,
#recruitingPage.rd-v2 .recruiting-summary-toggle,
#recruitingPage.rd-v2 .recruiting-head h1 > span,
#recruitingPage.rd-v2 #recruitingPriorityToggleButton { display: none !important; }
#recruitingPage.rd-v2 .recruiting-head { display: flex; align-items: center; gap: 14px; margin: 0; padding: 4px 0 0; }
#recruitingPage.rd-v2 .recruiting-head > div:first-child { display: flex; align-items: center; gap: 14px; min-width: 0; }
#recruitingPage.rd-v2 .recruiting-head h1 { margin: 0; font-size: 21px; font-weight: 800; letter-spacing: -.02em; white-space: nowrap; }
/* 보기 탭 */
#recruitingPage.rd-v2 .rd-views { gap: 2px; height: auto; padding: 0; border: 0; background: none; }
#recruitingPage.rd-v2 .rd-views button { display: inline-flex; align-items: center; gap: 6px; height: 34px; padding: 0 11px; border: 0; border-radius: 8px; background: none; font: inherit; font-size: 14px; font-weight: 600; color: #6b7280; cursor: pointer; white-space: nowrap; }
#recruitingPage.rd-v2 .rd-views button::after { content: none; }
#recruitingPage.rd-v2 .rd-views button:hover { background: #f3f4f6; color: #111827; }
#recruitingPage.rd-v2 .rd-views button[aria-pressed="true"] { background: #111827; color: #fff; font-weight: 700; }
#recruitingPage.rd-v2 .rd-views i { font-style: normal; font-size: 12.5px; font-weight: 600; color: #9ca3af; }
#recruitingPage.rd-v2 .rd-views button[aria-pressed="true"] i { color: #cbd5e1; }
#recruitingPage.rd-v2 .rd-views button.is-late i { color: #c2410c; font-weight: 800; }
#recruitingPage.rd-v2 .rd-views button[aria-pressed="true"].is-late i { color: #fdba74; }
/* 오른쪽: 표/보드 · 검색 · ＋출연자 */
#recruitingPage.rd-v2 .rd-head-side { display: flex; align-items: center; gap: 10px; margin-left: auto; }
.rd-seg-view { position: relative; display: grid; grid-template-columns: 1fr 1fr; padding: 3px; border-radius: 9px; background: #f3f4f6; }
.rd-seg-view > i { position: absolute; top: 3px; bottom: 3px; left: 3px; width: calc(50% - 3px); border-radius: 7px; background: #fff; box-shadow: 0 1px 2px rgba(0, 0, 0, .12); transform: translateX(calc(100% * var(--rd-seg-index))); transition: transform .18s ease; }
.rd-seg-view button { position: relative; height: 28px; padding: 0 14px; border: 0; background: none; font: inherit; font-size: 13px; font-weight: 700; color: #6b7280; cursor: pointer; }
.rd-seg-view button[aria-pressed="true"] { color: #111827; }
#recruitingPage.rd-v2 .rd-head-side .recruiting-owner-filters { width: 260px; margin: 0; }
#recruitingPage.rd-v2 .rd-head-side .recruiting-search-label > span { display: none; }
#recruitingPage.rd-v2 .rd-head-side .recruiting-search-label input { width: 100%; height: 36px; min-height: 36px; padding: 0 12px; border: 1px solid #e5e7eb; border-radius: 9px; background: #fff; font-size: 13.5px; }
#recruitingPage.rd-v2 .rd-head-side .recruiting-add-button { height: 36px; padding: 0 14px; border: 0; border-radius: 9px; background: #111827; color: #fff; font: inherit; font-size: 13.5px; font-weight: 700; white-space: nowrap; cursor: pointer; }
/* 2줄: 조건 */
#recruitingPage.rd-v2 > .recruiting-tabs-row { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; min-height: 0; margin: 0; padding: 12px 0 14px; border-bottom: 1px solid #e5e7eb; background: none; z-index: 30; }
#recruitingPage.rd-v2 > .recruiting-tabs-row > .recruiting-status-tabs { display: flex; flex: 1 1 auto; flex-wrap: wrap; align-items: center; gap: 6px; overflow: visible; }
#recruitingPage.rd-v2 > .recruiting-tabs-row > .recruiting-tools { order: 2; display: flex; gap: 6px; margin-left: auto; }
#recruitingPage.rd-v2 > .recruiting-tabs-row > .recruiting-toolbar-more { order: 3; }
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-filter-trigger,
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-tools > button,
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-pool-button { height: 32px; min-height: 32px; max-width: none; padding: 0 11px; border: 1px solid #e5e7eb; border-radius: 8px; background: #fff; color: #374151; font-size: 13.5px; font-weight: 600; gap: 6px; }
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-filter-trigger::after { content: none; }
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-filter-trigger > i { font-style: normal; font-size: 10px; color: #9ca3af; }
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-filter-trigger strong { max-width: 120px; color: #111827; font-size: 13.5px; font-weight: 800; }
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-filter-menu.active > .recruiting-filter-trigger,
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-filter-menu.open > .recruiting-filter-trigger { border-color: #111827; background: #fff; color: #374151; box-shadow: 0 0 0 1px #111827; }
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-tools .recruiting-completed-shortcut { color: #374151; border-color: #e5e7eb; background: #fff; }
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-toolbar-more > .recruiting-filter-trigger { width: 32px; padding: 0; border-color: transparent; font-size: 20px; color: #6b7280; }
.recruiting-filter-divider { width: 1px; height: 20px; margin: 0 4px; background: #e5e7eb; }
.recruiting-filter-chip { display: inline-flex; align-items: center; gap: 6px; height: 30px; padding: 0 10px; border: 0; border-radius: 8px; background: #eef2ff; color: #3730a3; font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; }
.recruiting-filter-chip i { font-style: normal; font-size: 11px; color: #818cf8; }
.recruiting-filter-chip:hover { background: #e0e7ff; }
.recruiting-filter-clear { height: 30px; padding: 0 6px; border: 0; background: none; font: inherit; font-size: 12.5px; font-weight: 700; color: #9ca3af; cursor: pointer; }
.recruiting-filter-clear:hover { color: #111827; }
/* 고르기 목록 */
#recruitingPage .recruiting-filter-menu-list,
.recruiting-filter-menu-list { border-color: #e5e7eb; border-radius: 12px; padding: 6px; box-shadow: 0 14px 40px rgba(17, 24, 39, .16); }
.recruiting-filter-menu-list button { gap: 9px; height: 36px; color: #1f2937; font-size: 13.5px; font-weight: 600; }
.recruiting-filter-menu-list button > span { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; text-align: left; }
.recruiting-filter-menu-list button.active { border-color: transparent; background: #f5f8ff; color: #111827; font-weight: 800; }
.recruiting-filter-menu-list button:hover { background: #f9fafb; }
.recruiting-filter-menu-list em { color: #9ca3af; font-weight: 700; font-size: 12px; }
.recruiting-pick-family { margin-top: 6px; padding-top: 6px; border-top: 1px solid #f1f2f4; }
.recruiting-pick-family button { height: 30px; font-size: 12px; font-weight: 800; color: #6b7280; }
.recruiting-pick-dot { width: 8px; height: 8px; flex: none; border-radius: 2px; background: var(--group-color); }
.recruiting-pick-swatch { width: 12px; height: 12px; flex: none; border-radius: 4px; background: var(--channel-bg); box-shadow: inset 0 0 0 1px rgba(17, 24, 39, .15); }
.recruiting-filter-menu-list .recruiting-owner-avatar { width: 26px; height: 26px; font-size: 11px; }
/* 표: 카드 테두리 없이 넓게 */
/* 세로로 쌓되 남은 높이를 표가 채워야 표 안에서 마우스 스크롤이 된다(display:block이면 표가 끝까지 늘어나 스크롤이 사라짐). */
#recruitingPage.rd-v2 .recruiting-workspace { display: flex; flex-direction: column; position: relative; min-height: 0; }
#recruitingPage.rd-v2 .recruiting-workspace > .recruiting-list-card,
#recruitingPage.rd-v2 .recruiting-workspace > .rd-view { flex: 1 1 auto; min-height: 0; }
#recruitingPage.rd-v2 .recruiting-list-card { border: 0; border-radius: 0; box-shadow: none; background: #fff; }
#recruitingPage.rd-v2 .recruiting-table { border-radius: 0; }
#recruitingPage.rd-v2 .recruiting-workspace:not([data-view="list"]) > .recruiting-list-card { display: none; }
.recruiting-table.is-compact .recruiting-table-head { min-height: 42px; font-size: 12.5px; font-weight: 700; color: #6b7280; }
.recruiting-table.is-compact .recruiting-row { min-height: 62px; font-size: 13.5px; }
.recruiting-table.is-compact .recruiting-editable-cell { min-height: 62px; }
.recruiting-table.is-compact .recruiting-detail-open b { display: flex; align-items: center; gap: 0; font-size: 15px; font-weight: 700; }
.recruiting-table.is-compact .recruiting-detail-open b > span { min-width: 0; overflow: hidden; text-overflow: ellipsis; }
.recruiting-table.is-compact .recruiting-detail-open small { font-size: 12.5px; color: #9ca3af; }
.recruiting-table.is-compact .recruiting-group-chip { font-size: 13.5px; font-weight: 600; color: #374151; }
.recruiting-table.is-compact .recruiting-status { font-size: 13.5px !important; font-weight: 600 !important; color: #1f2937; }
.recruiting-table.is-compact .recruiting-reason,
.recruiting-table.is-compact .recruiting-memo-chip { font-size: 13.5px; color: #374151; }
.recruiting-table.is-compact .recruiting-reason { display: block; width: 100%; min-height: 0; padding: 4px 6px; border: 0; background: none; text-align: left; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.recruiting-table.is-compact .recruiting-reason.is-placeholder { color: #c4c9d2; }
.recruiting-table.is-compact .recruiting-owner button { gap: 7px; font-size: 13.5px; font-weight: 600; color: #374151; }
.recruiting-table.is-compact .recruiting-owner-avatar { width: 24px; height: 24px; font-size: 11px; }
.recruiting-table.is-compact .recruiting-th[data-recruiting-column-key="fee"] { color: #b45309; }
/* 우선순위 꼬리표 */
.recruiting-priority-tag { display: inline-flex; align-items: center; flex: none; height: 20px; margin-left: 7px; padding: 0 7px; border-radius: 6px; font-size: 11.5px; font-style: normal; font-weight: 800; letter-spacing: -.01em; }
.recruiting-priority-tag.is-p1 { background: #fee2e2; color: #b91c1c; }
.recruiting-priority-tag.is-p2 { background: #ffedd5; color: #c2410c; }
.recruiting-priority-tag.is-p3 { background: #f1f5f9; color: #475569; }
/* 💵 출연료 */
.recruiting-fee { display: inline-flex; align-items: baseline; gap: 2px; min-height: 0 !important; padding: 4px 10px 4px 8px !important; border: 0 !important; border-radius: 8px !important; background: #fff4e0 !important; box-shadow: inset 0 0 0 1px #fed7aa; color: #9a3412 !important; font-variant-numeric: tabular-nums; cursor: pointer; }
.recruiting-fee i { font-style: normal; font-size: 14px; margin-right: 3px; align-self: center; }
.recruiting-fee b { font-size: 15px; font-weight: 800; }
.recruiting-fee small { font-size: 12px; font-weight: 700; opacity: .75; }
.recruiting-fee.is-high { background: #9a3412 !important; box-shadow: none; color: #fff !important; }
.recruiting-fee.is-placeholder { background: none !important; box-shadow: none; color: #c4c9d2 !important; }
/* 코너: 정한 색 바탕 + 읽히는 글자색 */
#recruitingPage .recruiting-channel:not(.is-placeholder) { min-height: 26px; padding: 0 9px !important; border: 0 !important; border-radius: 7px; background: var(--channel-bg) !important; color: var(--channel-color) !important; box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--channel-bg) 70%, #334155 30%); font-size: 13px; font-weight: 700; }
#recruitingPage .recruiting-channel:not(.is-placeholder)::before { content: none; }
/* 레퍼런스 칸: 유튜브 표시 + 개수 */
.recruiting-table.is-compact .recruiting-url-open { display: inline-flex; align-items: center; gap: 6px; height: 28px; padding: 0 9px 0 7px; border: 0; border-radius: 7px; background: #fff; box-shadow: inset 0 0 0 1px #e5e7eb; font: inherit; font-size: 14px; font-weight: 800; color: #111827; cursor: pointer; }
.recruiting-table.is-compact .recruiting-url-open.is-placeholder { color: #c4c9d2; box-shadow: inset 0 0 0 1px #f1f2f4; }
.recruiting-table.is-compact .recruiting-url-open:hover { box-shadow: inset 0 0 0 1.5px #111827; }
/* 레퍼런스 미리보기: 크게, 영상 두 개씩 */
.recruiting-url-hover-preview { padding: 14px; border-color: #e5e7eb; border-radius: 14px; }
.recruiting-url-hover-preview .recruiting-url-preview-head strong { font-size: 14px; font-weight: 800; }
.recruiting-url-hover-preview .recruiting-url-preview-head span { background: #f3f4f6; color: #374151; font-weight: 800; }
.recruiting-url-hover-preview .recruiting-url-preview-list.multi { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.recruiting-url-hover-preview .recruiting-url-card { display: grid; grid-template-columns: 1fr; gap: 8px; padding: 0; border: 0; background: none; }
.recruiting-url-hover-preview .recruiting-url-thumbnail,
.recruiting-url-hover-preview .recruiting-url-thumb-placeholder { width: 100%; min-width: 0; height: auto; aspect-ratio: 16 / 9; border-radius: 10px; }
.recruiting-url-hover-preview .recruiting-url-card-copy strong { font-size: 13.5px; }
/* 담당 슬랙 사진 */
[data-owner-photo] { background: var(--owner-photo) center / cover no-repeat !important; color: transparent !important; }
/* 상세: 오른쪽에 겹쳐 뜨는 창 */
#recruitingPage.rd-v2 .rd-panel.is-overlay { position: absolute; top: 0; right: 0; bottom: auto; z-index: 40; width: min(440px, calc(100% - 24px)); max-height: calc(100vh - 150px); overflow: auto; padding: 20px 22px; border: 1px solid #e5e7eb; border-radius: 14px 0 0 14px; box-shadow: -24px 0 60px rgba(17, 24, 39, .16); }
#recruitingPage.rd-v2 .rd-name-line { display: flex; align-items: center; }
#recruitingPage.rd-v2 .rd-name { font-size: 22px; font-weight: 800; }
#recruitingPage.rd-v2 .rd-tiles { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin: 16px 0 4px; }
#recruitingPage.rd-v2 .rd-tile { display: grid; gap: 6px; padding: 10px; border-radius: 10px; background: #f9fafb; }
#recruitingPage.rd-v2 .rd-tile.is-fee { background: #fff7ed; }
#recruitingPage.rd-v2 .rd-tile > span { font-size: 11.5px; font-weight: 700; color: #9ca3af; }
#recruitingPage.rd-v2 .rd-tile .recruiting-cell-button { justify-content: flex-start; max-width: 100%; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
#recruitingPage.rd-v2 .rd-tile .recruiting-fee { padding: 2px 8px 2px 6px !important; }
#recruitingPage.rd-v2 .rd-section { padding: 14px 0 0; margin-top: 12px; border-top: 1px solid #f1f2f4; }
.rd-refs { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.rd-ref { display: grid; gap: 5px; min-width: 0; color: inherit; text-decoration: none; }
.rd-ref-thumb { position: relative; display: grid; place-items: center; aspect-ratio: 16 / 9; border-radius: 9px; background: #111827 center / cover no-repeat; box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .08); }
.rd-ref-thumb i { display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: rgba(220, 38, 38, .92); color: #fff; font-size: 11px; font-style: normal; }
.rd-ref-thumb.is-link { background: #f3f4f6; color: #6b7280; }
.rd-ref small { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: 11.5px; color: #9ca3af; }
.rd-ref-add { align-self: start; aspect-ratio: 16 / 9; border: 1.5px dashed #e5e7eb; border-radius: 9px; background: #f9fafb; font: inherit; font-size: 13px; font-weight: 700; color: #9ca3af; cursor: pointer; }
.rd-ref-add:hover { color: #111827; border-color: #9ca3af; }
#recruitingPage.rd-v2 .rd-owner { display: flex; align-items: center; gap: 10px; margin-top: 12px; padding-top: 12px; border-top: 1px solid #f1f2f4; }
#recruitingPage.rd-v2 .rd-owner > span,
.rd-bottom > span { font-size: 12px; font-weight: 700; color: #9ca3af; }
.rd-bottom { display: flex; align-items: center; gap: 10px; margin-top: 12px; }
.rd-bottom .rd-highlight { margin: 0; }
.rd-bottom .recruiting-history-trigger { margin-left: auto; }
/* 오른쪽 클릭 메뉴(수정 창과 같은 모양) */
.recruiting-context-menu { width: 312px; padding: 8px !important; border-radius: 14px !important; border: 1px solid #e5e7eb !important; box-shadow: 0 18px 50px rgba(17, 24, 39, .22) !important; }
.recruiting-context-head { display: flex; align-items: center; gap: 10px; padding: 6px 8px 10px; }
.recruiting-context-head .recruiting-grade { display: inline-grid; place-items: center; width: 28px; height: 28px; font-size: 13px; }
.recruiting-context-head strong { display: block; font-size: 15.5px; font-weight: 800; color: #111827; }
.recruiting-context-head small { display: block; font-size: 12.5px; font-weight: 600; color: #9ca3af; }
.recruiting-context-line { display: flex; align-items: center; gap: 8px; padding: 5px 8px; border: 0 !important; margin: 0 !important; }
.recruiting-context-line > span { flex: none; width: 54px; font-size: 12px; font-weight: 700; color: #9ca3af; }
.recruiting-context-seg { display: inline-flex; flex: 1; padding: 3px; border-radius: 9px; background: #f3f4f6; }
.recruiting-context-seg button { flex: 1; display: grid; place-items: center; height: 30px; min-height: 0 !important; padding: 0 !important; border: 0; border-radius: 7px; background: none; font: inherit; font-size: 12.5px; font-weight: 700; color: #6b7280; cursor: pointer; }
.recruiting-context-seg button[aria-pressed="true"] { background: #fff; color: #111827; box-shadow: 0 1px 2px rgba(0, 0, 0, .12); }
.recruiting-context-seg .recruiting-priority-tag { margin: 0; }
.recruiting-context-menu .recruiting-highlight-colors { display: inline-flex; flex: 1; gap: 8px; }
.recruiting-context-menu hr { height: 1px; margin: 6px 4px; border: 0; background: #f1f2f4; }
.recruiting-context-item { display: flex !important; align-items: center; gap: 10px; width: 100%; height: 36px; padding: 0 10px !important; border: 0; border-radius: 8px; background: none; font: inherit; font-size: 14px !important; font-weight: 600; color: #1f2937; text-align: left; cursor: pointer; }
.recruiting-context-item:hover:not(:disabled) { background: #f5f8ff; }
.recruiting-context-item:disabled { color: #c4c9d2; cursor: default; }
.recruiting-context-item i { width: 18px; font-style: normal; text-align: center; color: #6b7280; }
.recruiting-context-item.is-warn,
.recruiting-context-item.is-warn i { color: #c2410c; }
/* 수정 창 우선순위 */
.recruiting-candidate-modal .priority-choice .recruiting-priority-tag { margin: 0; }
/* v6 보정: 예전 상태 탭 스타일(청록 알약) 덮기, 오른쪽 클릭 메뉴 폭 */
#recruitingPage.rd-v2 .recruiting-status-tabs button span { margin: 0; padding: 0; border-radius: 0; background: none; color: inherit; font-size: inherit; font-weight: inherit; }
#recruitingPage.rd-v2 .recruiting-status-tabs .recruiting-filter-trigger > span { color: #374151; }
#recruitingPage.rd-v2 .recruiting-status-tabs .recruiting-filter-menu-list button span { color: #1f2937; }
#recruitingPage.rd-v2 .recruiting-status-tabs .recruiting-filter-menu-list button.active { border-color: transparent; background: #f5f8ff; }
.row-context-menu.recruiting-context-menu { width: 312px; gap: 0; }
.recruiting-context-menu .recruiting-highlight-picker { display: flex; padding: 5px 8px; border: 0; }
.recruiting-context-menu .recruiting-highlight-colors { justify-content: flex-start; gap: 8px; }
.recruiting-context-menu .recruiting-highlight-colors button { width: 22px; height: 22px; min-width: 22px; min-height: 22px; }
.recruiting-context-menu .recruiting-highlight-clear { width: auto; margin-left: auto; background: none; color: #9ca3af; }
.recruiting-context-menu > .recruiting-context-item { min-height: 36px; }
.rd-bottom > span { white-space: nowrap; }
/* 더블클릭 수정 창: 왼쪽은 고르기(등급·우선순위·목표월·진행·코너·담당), 오른쪽은 글(연락처·선정 이유·기록·영상). 설명 글은 숨긴다. */
.modal.recruiting-candidate-modal { width: min(1080px, calc(100vw - 48px)); border-color: #e5e7eb; border-radius: 18px; box-shadow: 0 30px 80px rgba(17, 24, 39, .3); }
.recruiting-candidate-modal .recruiting-candidate-modal-head { min-height: 0; padding: 18px 24px; border-bottom: 1px solid #f1f2f4; background: #fff; }
.recruiting-candidate-modal .recruiting-candidate-modal-icon,
.recruiting-candidate-modal .recruiting-candidate-modal-title span:not(.recruiting-candidate-modal-icon),
.recruiting-candidate-modal .recruiting-candidate-modal-title p,
.recruiting-candidate-modal .recruiting-candidate-section-head small,
.recruiting-candidate-modal .recruiting-candidate-section-head > span,
.recruiting-candidate-modal .recruiting-candidate-modal-foot > span,
.recruiting-candidate-modal .recruiting-semi-fixed-toggle small { display: none !important; }
.recruiting-candidate-modal .recruiting-candidate-modal-title h2 { margin: 0; font-size: 20px; font-weight: 800; color: #111827; }
.recruiting-candidate-modal .recruiting-candidate-modal-body { padding: 0; background: #fff; }
.recruiting-candidate-modal .recruiting-candidate-grid { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: 0; align-items: start; }
.recruiting-candidate-modal .recruiting-candidate-grid > .recruiting-candidate-section { margin: 0; padding: 16px 24px; border: 0; border-radius: 0; background: none; box-shadow: none; }
.recruiting-candidate-modal .recruiting-candidate-grid > .recruiting-candidate-section::before { content: none; }
.recruiting-candidate-modal .recruiting-candidate-grid > .recruiting-candidate-section:nth-child(3) { grid-column: 2; grid-row: 1 / span 2; align-self: stretch; padding: 16px 22px; border-left: 1px solid #f1f2f4; background: #fafafa; }
.recruiting-candidate-modal .recruiting-candidate-section-head { margin: 0 0 10px; padding: 0; border: 0; }
.recruiting-candidate-modal .recruiting-candidate-section-head strong { font-size: 13px; font-weight: 800; color: #6b7280; }
.recruiting-candidate-modal .recruiting-candidate-section-grid { gap: 12px 14px; }
.recruiting-candidate-modal .recruiting-input-label,
.recruiting-candidate-modal .recruiting-form-field > span { font-size: 12.5px; font-weight: 700; color: #9ca3af; }
.recruiting-candidate-modal input[type="text"],
.recruiting-candidate-modal input[type="number"],
.recruiting-candidate-modal input[type="url"],
.recruiting-candidate-modal select,
.recruiting-candidate-modal textarea { border-color: #e5e7eb; border-radius: 10px; background: #fff; font-size: 14px; }
.recruiting-candidate-modal input[name="name"] { font-size: 17px; font-weight: 800; }
.recruiting-candidate-modal input[name="appearanceFee"] { border-color: #fed7aa; background: #fff7ed; color: #9a3412; font-size: 18px; font-weight: 800; }
/* 고르기 단추: 옅은 테두리, 고른 것만 진한 테두리 */
.recruiting-candidate-modal .recruiting-modal-choices { gap: 6px; }
.recruiting-candidate-modal .recruiting-modal-choices label span { min-height: 32px; height: 32px; padding: 0 12px; border: 1px solid #e5e7eb; border-radius: 8px; background: #fff; color: #374151; font-size: 13.5px; font-weight: 600; box-shadow: none; }
.recruiting-candidate-modal .recruiting-modal-choices label input:checked + span { border-color: #111827; box-shadow: 0 0 0 1px #111827; background: #fff; color: #111827; font-weight: 800; }
.recruiting-candidate-modal .grade-choice label:nth-child(1) span { color: #c81e1e; }
.recruiting-candidate-modal .grade-choice label:nth-child(2) span { color: #c2580c; }
.recruiting-candidate-modal .grade-choice label:nth-child(3) span { color: #a16207; }
.recruiting-candidate-modal .grade-choice label:nth-child(4) span { color: #64748b; }
.recruiting-candidate-modal .channel-choice label span[style] { background: var(--channel-bg); color: var(--channel-color); border-color: transparent; }
.recruiting-candidate-modal .channel-choice label input:checked + span[style] { box-shadow: 0 0 0 2px #fff, 0 0 0 4px #111827; }
.recruiting-candidate-modal .recruiting-modal-quick-actions .secondary-button,
.recruiting-candidate-modal .recruiting-modal-quick-actions .ghost-button { height: 32px; border: 0; background: none; color: #6b7280; font-size: 13px; font-weight: 700; }
.recruiting-candidate-modal .recruiting-semi-fixed-toggle { padding: 10px 12px; border-color: #f1f2f4; border-radius: 10px; background: #fff; }
.recruiting-candidate-modal .recruiting-candidate-modal-foot { padding: 14px 24px; border-top: 1px solid #f1f2f4; background: #fff; }
.recruiting-candidate-modal .recruiting-candidate-modal-foot .primary-button { background: #111827; border-color: #111827; }
.recruiting-candidate-modal .recruiting-candidate-modal-foot .danger-button { border: 0; background: none; color: #c2410c; }
.recruiting-candidate-modal .recruiting-candidate-section:nth-child(3) .recruiting-candidate-section-grid { grid-template-columns: 1fr; }
@media (max-width: 900px) {
  .recruiting-candidate-modal .recruiting-candidate-grid { grid-template-columns: 1fr; }
  .recruiting-candidate-modal .recruiting-candidate-grid > .recruiting-candidate-section:nth-child(3) { grid-column: auto; grid-row: auto; border-left: 0; }
}

.recruiting-candidate-modal .grade-choice label span { background: #fff !important; border: 1px solid #e5e7eb !important; }
.recruiting-candidate-modal .grade-choice label input:checked + span { border-color: #111827 !important; box-shadow: 0 0 0 1px #111827 !important; }
.recruiting-candidate-modal .recruiting-candidate-modal-foot { justify-content: flex-end; }
.recruiting-candidate-modal .recruiting-candidate-modal-foot > div { display: flex; flex: 1; align-items: center; gap: 8px; justify-content: flex-end; }
.recruiting-candidate-modal .recruiting-candidate-modal-foot .danger-button { margin-right: auto; }
.recruiting-context-menu .recruiting-highlight-picker { align-items: center; gap: 8px; margin: 0; }
.recruiting-context-menu .recruiting-highlight-picker > span { flex: none; width: 54px; font-size: 12px; font-weight: 700; color: #9ca3af; }
/* 수정 창: 고칠 때만 안내 글을 숨긴다(새 등록의 출연자풀 안내는 보인다). */
.recruiting-candidate-modal.is-create .recruiting-candidate-modal-title p { display: block !important; margin: 4px 0 0; font-size: 12.5px; color: #6b7280; }
@media (max-width: 1500px) {
  #recruitingPage.rd-v2 .recruiting-head { flex-wrap: wrap; }
  #recruitingPage.rd-v2 .rd-head-side { margin-left: 0; }
}
@media (max-width: 900px) {
  #recruitingPage.rd-v2 .recruiting-head > div:first-child { flex-wrap: wrap; width: 100%; }
  #recruitingPage.rd-v2 .rd-views { width: 100%; overflow-x: auto; flex-wrap: nowrap; }
  #recruitingPage.rd-v2 .rd-head-side { width: 100%; flex-wrap: wrap; }
  #recruitingPage.rd-v2 .rd-head-side .recruiting-owner-filters { flex: 1 1 160px; width: auto; }
  #recruitingPage.rd-v2 > .recruiting-tabs-row > .recruiting-tools { margin-left: 0; flex-wrap: wrap; }
  #recruitingPage.rd-v2 .rd-panel.is-overlay { position: fixed; inset: 12vh 0 0 0; width: auto; max-height: none; z-index: 120; border-radius: 18px 18px 0 0; box-shadow: 0 -12px 40px rgba(17, 26, 44, .18); }
  #recruitingPage.rd-v2 .rd-tiles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
#recruitingPage.rd-v2 .recruiting-sort-menu { margin-left: auto; }
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-sort-menu > .recruiting-filter-trigger { border-color: transparent; color: #6b7280; }
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-sort-menu.open > .recruiting-filter-trigger { border-color: #111827; }

#recruitingPage.rd-v2 .recruiting-status-tabs .recruiting-filter-menu-list .recruiting-owner-avatar { display: inline-grid; place-items: center; flex: none; width: 26px; height: 26px; border-radius: 50%; background: var(--owner-avatar-color); color: #fff; font-size: 11px; font-weight: 800; text-align: center; }
/* 간단 보기는 위쪽 정렬 메뉴를 쓰므로 머리글 정렬 단추를 숨긴다. */
.recruiting-table.is-compact .recruiting-header-sort { display: none; }
@media (max-width: 1700px) {
  #recruitingPage.rd-v2 .rd-head-side .recruiting-owner-filters { width: 190px; }
  #recruitingPage.rd-v2 .rd-views button { padding: 0 9px; font-size: 13.5px; }
}
@media (max-width: 1500px) and (min-width: 1301px) {
  #recruitingPage.rd-v2 .recruiting-head { flex-wrap: nowrap; }
  #recruitingPage.rd-v2 .rd-head-side { margin-left: auto; }
}

/* ===== v8: 목표월 칸 · 칸 고르기 창 통일 · 상세 하나로 ===== */
/* 목표월 칸 */
.recruiting-table.is-compact .recruiting-target { min-height: 26px; padding: 0 6px !important; font-size: 13.5px !important; color: #0e7490; }
.recruiting-table.is-compact .recruiting-target.target-waiting { color: #c4c9d2; }
/* 고르기 창: 흰 카드 · 고른 것 ✓ */
.recruiting-inline-choices.rc-pop { display: block; padding: 6px; border: 0; border-radius: 12px; background: #fff; box-shadow: 0 14px 40px rgba(17, 24, 39, .16), 0 0 0 1px #e5e7eb; overflow: auto; }
.rc-pop .rc-option { position: relative; display: flex; align-items: center; gap: 10px; width: 100%; min-height: 40px; height: auto; margin: 0; padding: 0 12px 0 10px; border: 0; border-radius: 8px; background: none; font: inherit; font-size: 14px; color: #1f2937; text-align: left; cursor: pointer; box-shadow: none; }
.rc-pop .rc-option:hover { background: #f9fafb; }
.rc-pop .rc-option.selected { background: #f5f8ff; }
.rc-pop .rc-option b { font-weight: 600; }
.rc-pop .rc-option.selected b { font-weight: 800; color: #111827; }
.rc-pop .rc-option small { font-size: 12px; color: #9ca3af; }
.rc-pop .rc-check { margin-left: auto; font-style: normal; font-weight: 800; color: #111827; }
.rc-pop .recruiting-owner-avatar { width: 26px; height: 26px; flex: none; border-radius: 50%; display: inline-grid; place-items: center; background: var(--owner-avatar-color, #94a3b8); color: #fff; font-size: 11px; font-weight: 800; }
.rc-pop .recruiting-owner-avatar.is-empty { background: #f3f4f6; color: #9ca3af; }
.rc-swatch { width: 16px; height: 16px; flex: none; border-radius: 5px; background: var(--channel-bg); box-shadow: inset 0 0 0 1px rgba(17, 24, 39, .15); }
.rc-swatch.is-empty { background: repeating-linear-gradient(45deg, #fff, #fff 3px, #e5e7eb 3px, #e5e7eb 5px); }
.rc-dot { width: 9px; height: 9px; flex: none; border-radius: 50%; }
.rc-pop .rc-foot { display: block; width: 100%; margin-top: 6px; padding: 10px 12px 6px; border: 0; border-top: 1px solid #f1f2f4; border-radius: 0; background: none; font: inherit; font-size: 13px; font-weight: 700; color: #6b7280; text-align: left; cursor: pointer; }
.rc-pop .rc-foot:hover { color: #111827; }
.rc-grid { display: grid; gap: 6px; padding: 4px; }
.rc-months { grid-template-columns: repeat(4, 1fr); }
.rc-months .rc-option { justify-content: center; min-height: 38px; padding: 0; background: #f9fafb; }
.rc-months .rc-option.is-now { box-shadow: inset 0 0 0 1px #0e7490; color: #0e7490; }
.rc-months .rc-option.selected { background: #111827; color: #fff; box-shadow: none; }
.rc-months .rc-option.selected b { color: #fff; }
.rc-months .rc-check, .rc-grades .rc-check, .rc-seg .rc-check { display: none; }
.rc-pop .rc-option.rc-wide { margin-top: 6px; border-top: 1px solid #f1f2f4; border-radius: 0 0 8px 8px; }
.rc-grades { grid-template-columns: repeat(5, 1fr); }
.rc-grades .rc-option { justify-content: center; min-height: 44px; padding: 0; border-radius: 10px !important; font-size: 16px; }
.rc-grades .rc-option b { font-weight: 800; }
.rc-grades .rc-option.selected { box-shadow: 0 0 0 2px #fff, 0 0 0 4px currentColor; }
.rc-seg { display: flex; padding: 4px; border-radius: 10px; background: #f3f4f6; }
.rc-seg .rc-option { flex: 1; justify-content: center; min-height: 34px; padding: 0; font-size: 13px; color: #6b7280; }
.rc-seg .rc-option.selected { background: #fff; box-shadow: 0 1px 2px rgba(0, 0, 0, .12); }
.rc-seg .recruiting-priority-tag { margin: 0; }
.rc-fee-form { display: flex; align-items: center; gap: 8px; padding: 8px; }
.rc-fee-form input { width: 110px; height: 42px; padding: 0 12px; border: 1px solid #fed7aa; border-radius: 10px; background: #fff7ed; font: inherit; font-size: 20px; font-weight: 800; color: #9a3412; }
.rc-fee-form span { font-weight: 700; color: #9a3412; }
.rc-fee-form button { margin-left: auto; height: 34px; padding: 0 14px; border: 0; border-radius: 8px; background: #111827; color: #fff; font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; }
.rc-fee-quick { display: flex; flex-wrap: wrap; gap: 6px; padding: 0 8px 8px; }
.rc-fee-quick button { height: 28px; padding: 0 10px; border: 0; border-radius: 7px; background: #fff4e0; color: #9a3412; font: inherit; font-size: 12.5px; font-weight: 700; cursor: pointer; }
.rc-fee-quick button.is-clear { background: none; color: #9ca3af; }
/* 상세: 여섯 칸 */
#recruitingPage.rd-v2 .rd-panel.is-overlay { width: min(480px, calc(100% - 24px)); }
#recruitingPage.rd-v2 .rd-tiles.is-six { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.rd-pick { display: flex !important; align-items: center; gap: 6px; width: 100%; min-height: 28px !important; padding: 0 !important; border: 0 !important; background: none !important; box-shadow: none !important; font: inherit; font-size: 14px; font-weight: 700; color: #111827; text-align: left; cursor: pointer; }
.rd-pick > * { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.rd-pick .rd-caret { margin-left: auto; flex: none; font-style: normal; font-size: 10px; color: #c4c9d2; }
.rd-pick:hover .rd-caret { color: #111827; }
.rd-pick .rd-month { color: #0e7490; }
.rd-pick .rd-month.is-wait, .rd-none { color: #c4c9d2; font-weight: 600; }
.rd-pick.is-owner { gap: 7px; }
.rd-pick.is-owner .recruiting-owner-avatar { width: 22px; height: 22px; flex: none; font-size: 10px; }
.rd-pick .recruiting-priority-tag { margin: 0; }
.rd-pick.is-plain { width: auto; margin-left: auto; font-size: 13px; color: #6b7280; }
.rd-links { display: inline-flex; gap: 10px; }
.rd-newlog { display: flex; align-items: center; gap: 8px; margin-bottom: 10px; padding: 4px 4px 4px 12px; border: 1px solid #e5e7eb; border-radius: 10px; }
.rd-newlog:focus-within { border-color: #111827; }
.rd-newlog input { flex: 1; min-width: 0; height: 32px; border: 0; outline: 0; font: inherit; font-size: 13.5px; }
.rd-newlog button { height: 32px; padding: 0 12px; border: 0; border-radius: 8px; background: #111827; color: #fff; font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; }
.rd-more-row { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-height: 40px; border-bottom: 1px solid #f6f7f9; font-size: 13.5px; color: #374151; }
.rd-more-row:last-child { border-bottom: 0; }
.rd-more-row .rd-highlight { margin: 0; }
.rd-more-row .recruiting-history-trigger { margin-left: auto; min-height: 30px; }
.rd-toggle { position: relative; width: 36px; height: 20px; padding: 0; border: 0; border-radius: 10px; background: #e5e7eb; cursor: pointer; transition: background .15s; }
.rd-toggle i { position: absolute; left: 2px; top: 2px; width: 16px; height: 16px; border-radius: 50%; background: #fff; box-shadow: 0 1px 2px rgba(0, 0, 0, .2); transition: transform .15s; }
.rd-toggle[aria-checked="true"] { background: #111827; }
.rd-toggle[aria-checked="true"] i { transform: translateX(16px); }
#recruitingPage.rd-v2 .rd-actions.is-flat { display: flex; gap: 6px; margin-top: 16px; padding-top: 14px; border-top: 1px solid #f1f2f4; }
#recruitingPage.rd-v2 .rd-actions.is-flat button { flex: none; height: 34px; padding: 0 12px; border: 1px solid #e5e7eb; border-radius: 8px; background: #fff; font: inherit; font-size: 13.5px; font-weight: 700; color: #374151; cursor: pointer; }
#recruitingPage.rd-v2 .rd-actions.is-flat .is-danger { margin-left: auto; border-color: transparent; color: #c2410c; }
/* 글·레퍼런스·분야·기록 창도 같은 흰 카드로 */
.modal.recruiting-detail-text-modal,
.modal.recruiting-link-modal { width: min(520px, calc(100vw - 32px)); border: 0; border-radius: 16px; box-shadow: 0 30px 80px rgba(17, 24, 39, .3); }
#recruitingSubFieldForm.recruiting-detail-text-modal { width: min(640px, calc(100vw - 32px)); }
.recruiting-detail-text-modal .modal-head,
.recruiting-link-modal .modal-head { padding: 16px 20px; border-bottom: 1px solid #f1f2f4; }
.recruiting-detail-text-modal .modal-head h2,
.recruiting-link-modal .modal-head h2 { font-size: 16px; font-weight: 800; color: #111827; }
.recruiting-detail-text-modal textarea { border-color: #e5e7eb; border-radius: 10px; font-size: 14px; line-height: 1.55; }
.recruiting-detail-text-modal .recruiting-progress-help { display: none; }
.recruiting-detail-text-modal .modal-foot,
.recruiting-link-modal .modal-foot { padding: 12px 20px; border-top: 1px solid #f1f2f4; }
.recruiting-detail-text-modal .modal-foot .primary-button,
.recruiting-link-modal .modal-foot .primary-button { background: #111827; border-color: #111827; }
.recruiting-detail-text-modal .modal-foot .secondary-button { border-color: transparent; background: none; color: #c2410c; }
.recruiting-link-modal .recruiting-url-list { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.recruiting-link-modal .recruiting-url-input-row { position: relative; display: block; }
.recruiting-link-modal .recruiting-url-input-row:not(.has-url-card) { grid-column: 1 / -1; display: flex; gap: 8px; }
.recruiting-link-modal .recruiting-url-card { display: grid; grid-template-columns: 1fr; gap: 6px; padding: 0; border: 0; background: none; }
.recruiting-link-modal .recruiting-url-thumbnail,
.recruiting-link-modal .recruiting-url-thumb-placeholder { width: 100%; min-width: 0; height: auto; aspect-ratio: 16 / 9; border-radius: 10px; }
.recruiting-link-modal .recruiting-url-input-row.has-url-card > .icon-button { position: absolute; top: 6px; right: 6px; width: 24px; height: 24px; border-radius: 50%; background: rgba(17, 24, 39, .7); color: #fff; }
.recruiting-link-modal .recruiting-url-editor-head { justify-content: flex-end; }
.recruiting-inline-choices.rc-pop { max-width: none; min-width: 0; max-height: min(440px, calc(100vh - 20px)); }
.rd-more-row > span { white-space: nowrap; }
.rd-more-row .recruiting-history-trigger { width: auto; max-width: 60%; flex: none; }
/* v10: 표는 화면 폭에 맞춤(가로 스크롤 없음)·머리줄 색 구분·글자 키움·굵기는 이름·머리줄·달 구분만, 상세는 가운데 팝업 */
#recruitingPage.rd-v2 .recruiting-list-card:has(.recruiting-table.is-compact) .recruiting-scroll-top { display: none; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-table-head,
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-row { width: 100%; min-width: 0; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-row > div { min-width: 0; }
#recruitingPage.rd-v2 .recruiting-table.is-compact { font-weight: 500; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-table-head { min-height: 46px; border-bottom: 1px solid #dfe5ee; background: #eef2f7; box-shadow: none; color: #334155; font-size: 13.5px; font-weight: 700; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-table-head > div { min-height: 46px; padding: 0 14px; border-right: 0; background: #eef2f7; cursor: default; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-th-label { display: inline-flex; align-items: center; gap: 4px; justify-content: flex-start; width: 100%; text-align: left; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-th[data-recruiting-column-key="fee"] { color: #334155; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-header-sort { color: #9aa5b4; background: none; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-header-sort.active { color: #0f172a; }
/* 칸 너비 손잡이: 머리줄 칸 사이 옅은 선, 올리면 진해진다 */
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-th > i { right: 0; width: 10px; cursor: col-resize; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-th > i::after { top: 14px; right: 0; width: 1px; height: 18px; background: #d3dae4; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-th > i:hover::after,
body.is-resizing-recruiting-column #recruitingPage.rd-v2 .recruiting-th > i::after { top: 0; width: 2px; height: 100%; background: #0e7490; }
body.is-resizing-recruiting-column { cursor: col-resize; user-select: none; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-th:last-child > i { display: none; }
/* 본문: 14.5px 미디움, 칸 여백 14px */
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-row { min-height: 66px; font-size: 14.5px; color: #1f2937; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-row > div { padding: 0 14px; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-editable-cell { min-height: 66px; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-detail-open b { font-size: 16px; font-weight: 700; color: #0f172a; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-detail-open small { margin-top: 2px; font-size: 13px; font-weight: 500; color: #8b95a3; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-group-chip,
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-owner button,
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-reason,
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-memo-chip { font-size: 14.5px; font-weight: 500; color: #374151; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-status { font-size: 14.5px !important; font-weight: 500 !important; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-target { font-size: 14.5px !important; font-weight: 600 !important; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-channel:not(.is-placeholder) { min-height: 28px; font-size: 13.5px; font-weight: 600; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-fee b { font-size: 15px; font-weight: 700; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-fee small { font-weight: 500; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-url-open { font-size: 14px; font-weight: 600; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-owner-avatar { width: 26px; height: 26px; }
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-grade { font-weight: 700; }
#recruitingPage.rd-v2 .recruiting-group-row { min-height: 40px; }
#recruitingPage.rd-v2 .recruiting-group-row > span { font-size: 13.5px; font-weight: 700; color: #0f172a; }
#recruitingPage.rd-v2 .recruiting-group-row small { font-weight: 500; }
/* 정렬 메뉴 맨 아래: 달별로 나누기 스위치 */
.recruiting-sort-switch { display: flex !important; align-items: center; gap: 10px; margin-top: 4px; border-top: 1px solid #f1f2f4 !important; border-radius: 0 0 8px 8px !important; }
.recruiting-sort-switch > span { flex: 1; text-align: left; }
.recruiting-sort-switch > i { position: relative; flex: none; width: 30px; height: 18px; border-radius: 9px; background: #e5e7eb; transition: background .15s; }
.recruiting-sort-switch > i::after { content: ""; position: absolute; left: 2px; top: 2px; width: 14px; height: 14px; border-radius: 50%; background: #fff; box-shadow: 0 1px 2px rgba(0, 0, 0, .2); transition: transform .15s; }
.recruiting-sort-switch[aria-checked="true"] > i { background: #111827; }
.recruiting-sort-switch[aria-checked="true"] > i::after { transform: translateX(12px); }
/* 상세 팝업: 가운데, 같은 간격·같은 크기 칸 */
.rd-scrim { position: fixed; inset: 0; z-index: 115; background: rgba(15, 23, 42, .32); }
.rd-scrim[hidden] { display: none; }
#recruitingPage.rd-v2 .rd-panel.is-popup { position: fixed; top: 50%; left: 50%; right: auto; bottom: auto; z-index: 120; width: min(600px, calc(100vw - 32px)); max-height: min(86vh, 880px); overflow: auto; padding: 26px 28px 22px; border: 0; border-radius: 18px; transform: translate(-50%, -50%); box-shadow: 0 30px 80px rgba(15, 23, 42, .28); font-weight: 500; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-head { align-items: center; gap: 14px; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-grade .recruiting-cell-button { width: 40px; min-width: 40px; height: 40px; min-height: 40px; border-radius: 10px; font-size: 16px; font-weight: 700; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-name { font-size: 22px; font-weight: 700; letter-spacing: -.02em; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-sub { margin-top: 4px; gap: 4px 10px; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-field,
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-group { height: 24px; font-size: 13.5px; font-weight: 500; color: #6b7280; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-close { align-self: flex-start; width: 34px; height: 34px; margin: -4px -6px 0 0; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-tiles.is-six { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 22px 0 6px; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-tile { display: flex; flex-direction: column; justify-content: space-between; gap: 6px; min-height: 68px; padding: 11px 14px; border-radius: 12px; background: #f6f7f9; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-tile.is-fee { background: #f6f7f9; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-tile > span { font-size: 12px; font-weight: 500; color: #8b95a3; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-pick { min-height: 26px !important; font-size: 15px; font-weight: 500; color: #111827; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-pick .rd-month { font-weight: 600; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-tile .recruiting-fee { align-self: flex-start; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-section { margin-top: 18px; padding-top: 16px; border-top: 1px solid #f1f2f4; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-section > header { min-height: 26px; margin-bottom: 8px; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-section h4 { font-size: 13px; font-weight: 600; color: #6b7280; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-link { font-size: 13px; font-weight: 500; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-text-button,
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-section p,
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-timeline p { font-size: 14.5px; font-weight: 500; line-height: 1.6; color: #1f2937; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-timeline small { font-size: 12px; font-weight: 500; color: #9ca3af; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-refs { grid-template-columns: repeat(3, minmax(0, 1fr)); }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-newlog { height: 42px; padding: 4px 4px 4px 14px; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-newlog input { font-size: 14px; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-newlog button { height: 34px; padding: 0 14px; font-weight: 600; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-more-row { min-height: 44px; font-size: 14px; font-weight: 500; color: #374151; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-pick.is-plain { font-size: 14px; color: #374151; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-actions.is-flat { display: grid; grid-template-columns: 1fr 1fr auto; gap: 8px; margin-top: 20px; padding-top: 18px; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-actions.is-flat button { height: 38px; font-size: 14px; font-weight: 600; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-actions.is-flat .is-danger { margin: 0; padding: 0 16px; }
@media (max-width: 760px) {
  #recruitingPage.rd-v2 .rd-panel.is-popup { top: auto; bottom: 0; left: 0; width: 100%; max-height: 88vh; border-radius: 18px 18px 0 0; transform: none; padding: 20px 18px; }
  #recruitingPage.rd-v2 .rd-panel.is-popup .rd-tiles.is-six { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-tile > span { display: block; text-align: left; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-tile .rd-pick { justify-content: flex-start; text-align: left; }
#recruitingPage.rd-v2 .recruiting-table.is-compact { resize: none; }
#recruitingPage.rd-v2 .recruiting-sort-menu .recruiting-filter-menu-list button { min-height: 36px; font-size: 13.5px; font-weight: 500; }
#recruitingPage.rd-v2 .recruiting-sort-menu .recruiting-filter-menu-list button.active { font-weight: 600; }
#recruitingPage.rd-v2 .rd-panel.is-popup .rd-tile.recruiting-editable-cell { align-items: stretch; text-align: left; }
/* 가로 스크롤이 없으니 왼쪽 칸 고정은 필요 없다(실제 너비와 고정 위치가 어긋나 겹치던 문제) */
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-table-head > [class*="sticky-"],
#recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-row > [class*="sticky-"] { position: relative; left: auto; box-shadow: none; }
@media (max-width: 1599px) {
  #recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-row > div,
  #recruitingPage.rd-v2 .recruiting-table.is-compact .recruiting-table-head > div { padding: 0 10px; }
}
/* 선정 이유·연락처·분야·진행 기록 창: 흰 카드, 가는 머리줄, 미디움 글자, 왼쪽 지우기·오른쪽 저장 */
.modal.recruiting-detail-text-modal,
.modal.recruiting-progress-modal { width: min(560px, calc(100vw - 32px)); border: 0; border-radius: 18px; background: #fff; box-shadow: 0 30px 80px rgba(15, 23, 42, .28); font-weight: 500; }
#recruitingSubFieldForm.recruiting-detail-text-modal { width: min(640px, calc(100vw - 32px)); }
.recruiting-detail-text-modal .modal-head,
.recruiting-progress-modal .modal-head { min-height: 0; padding: 18px 22px 14px; border-bottom: 0; background: #fff; }
.recruiting-detail-text-modal .modal-head h2,
.recruiting-progress-modal .modal-head h2 { margin: 0; font-size: 16px; font-weight: 600; letter-spacing: -.01em; color: #111827; }
.recruiting-detail-text-modal .modal-head .icon-button,
.recruiting-progress-modal .modal-head .icon-button { width: 32px; height: 32px; border: 0; border-radius: 8px; background: none; color: #9ca3af; font-size: 18px; box-shadow: none; }
.recruiting-detail-text-modal .modal-head .icon-button:hover,
.recruiting-progress-modal .modal-head .icon-button:hover { background: #f3f4f6; color: #111827; }
.recruiting-detail-text-modal .modal-body,
.recruiting-progress-modal .modal-body { display: grid; gap: 14px; padding: 0 22px 4px; background: #fff; }
/* 지난 기록: 얇은 목록. 아무것도 없으면 빈 상자를 보이지 않는다 */
.recruiting-detail-text-modal .recruiting-progress-history,
.recruiting-progress-modal .recruiting-progress-history { display: grid; gap: 0; max-height: 300px; overflow: auto; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; }
.recruiting-detail-text-modal .recruiting-progress-history:has(> .recruiting-progress-history-empty:only-child),
.recruiting-progress-modal .recruiting-progress-history:has(> .recruiting-progress-history-empty:only-child) { display: none; }
.recruiting-detail-text-modal .recruiting-progress-history-item,
.recruiting-progress-modal .recruiting-progress-history-item { display: grid; gap: 6px; margin: 0; padding: 12px 0; border: 0; border-bottom: 1px solid #f1f2f4; border-radius: 0; background: none; box-shadow: none; }
.recruiting-detail-text-modal .recruiting-progress-history-item:first-child,
.recruiting-progress-modal .recruiting-progress-history-item:first-child { padding-top: 2px; }
.recruiting-progress-history-meta { display: flex; align-items: center; gap: 8px; }
.recruiting-detail-text-modal .recruiting-progress-history-meta strong,
.recruiting-progress-modal .recruiting-progress-history-meta strong { padding: 0; border: 0; background: none; color: #8b95a3; font-size: 12.5px; font-weight: 500; }
.recruiting-progress-modal .recruiting-progress-history-meta label + strong { display: none; }
.recruiting-progress-modal .recruiting-progress-label-control { display: inline-flex; align-items: center; gap: 0; font-size: 0; color: transparent; }
.recruiting-progress-modal .recruiting-progress-label-control input { height: 26px; min-height: 0; padding: 0 6px; border: 0; border-radius: 6px; background: #f6f7f9; color: #6b7280; font: inherit; font-size: 12.5px; font-weight: 500; }
.recruiting-detail-text-modal .recruiting-progress-history-item p,
.recruiting-progress-modal .recruiting-progress-history-item p { margin: 0; font-size: 14.5px; font-weight: 500; line-height: 1.6; color: #1f2937; white-space: pre-line; overflow-wrap: anywhere; }
.recruiting-detail-text-modal .recruiting-progress-history-item.archived p,
.recruiting-progress-modal .recruiting-progress-history-item.archived p { color: #6b7280; }
.recruiting-history-edit { display: flex; flex-wrap: wrap; align-items: center; gap: 2px; }
.recruiting-detail-text-modal .recruiting-history-edit-button,
.recruiting-progress-modal .recruiting-history-edit-button,
.recruiting-detail-text-modal .recruiting-history-delete-button,
.recruiting-progress-modal .recruiting-history-delete-button { display: inline-flex; align-items: center; height: 24px; min-height: 0; padding: 0 6px; border: 0; border-radius: 6px; background: none; box-shadow: none; color: #9ca3af; font: inherit; font-size: 12.5px; font-weight: 500; cursor: pointer; }
.recruiting-detail-text-modal .recruiting-history-delete-button:hover,
.recruiting-progress-modal .recruiting-history-delete-button:hover { background: #fef2f2; color: #c2410c; }
.recruiting-detail-text-modal .recruiting-history-edit-button:hover,
.recruiting-progress-modal .recruiting-history-edit-button:hover { background: #f3f4f6; color: #111827; }
.recruiting-history-edit-button input { position: absolute; opacity: 0; pointer-events: none; }
.recruiting-history-edit-box { flex-basis: 100%; display: grid; gap: 6px; margin-top: 4px; }
.recruiting-history-edit-box textarea { padding: 10px 12px; border: 1px solid #e5e7eb; border-radius: 10px; font: inherit; font-size: 14px; font-weight: 500; }
.recruiting-history-edit-box .secondary-button { justify-self: end; height: 32px; padding: 0 14px; border: 0; border-radius: 8px; background: #111827; color: #fff; font-size: 13px; font-weight: 600; }
/* 새로 쓰는 칸 */
.recruiting-detail-text-modal .recruiting-progress-editor,
.recruiting-progress-modal .recruiting-progress-editor { display: grid; gap: 8px; margin: 0; padding: 0; border: 0; background: none; box-shadow: none; font-size: 13px; font-weight: 500; color: #6b7280; }
.recruiting-progress-modal .recruiting-progress-editor-title { display: flex; align-items: center; gap: 6px; font-size: 13px; font-weight: 600; color: #374151; }
.recruiting-progress-modal .recruiting-progress-editor-title strong { padding: 0; border: 0; background: none; color: #9ca3af; font-size: 12.5px; font-weight: 500; }
.recruiting-detail-text-modal textarea,
.recruiting-progress-modal textarea[name="memo"] { width: 100%; min-height: 128px; padding: 12px 14px; border: 1px solid #e5e7eb; border-radius: 12px; background: #fff; box-shadow: none; font: inherit; font-size: 14.5px; font-weight: 500; line-height: 1.6; color: #111827; resize: vertical; }
.recruiting-detail-text-modal textarea:focus,
.recruiting-progress-modal textarea:focus { border-color: #111827; outline: 0; box-shadow: 0 0 0 3px rgba(17, 24, 39, .06); }
.recruiting-detail-text-modal .recruiting-progress-help,
.recruiting-progress-modal .recruiting-progress-help { display: none; }
/* 아래 버튼 줄 */
.recruiting-detail-text-modal .modal-foot,
.recruiting-progress-modal .modal-foot { display: flex; align-items: center; justify-content: flex-end; gap: 8px; padding: 14px 22px 18px; border-top: 0; background: #fff; }
.recruiting-detail-text-modal .modal-foot .rc-clear { margin-right: auto; height: 38px; padding: 0 8px; border: 0; background: none; color: #c2410c; font: inherit; font-size: 14px; font-weight: 500; cursor: pointer; }
.recruiting-detail-text-modal .modal-foot .rc-clear:hover { text-decoration: underline; }
.recruiting-detail-text-modal .modal-foot .ghost-button { height: 38px; border: 0; background: none; color: #6b7280; font-size: 14px; font-weight: 500; }
.recruiting-detail-text-modal .modal-foot .secondary-button { margin-right: auto; height: 38px; border: 0; background: none; color: #c2410c; font-size: 14px; font-weight: 500; }
.recruiting-detail-text-modal .modal-foot .primary-button,
.recruiting-progress-modal .modal-foot .primary-button { height: 38px; min-width: 76px; padding: 0 18px; border: 0; border-radius: 10px; background: #111827; color: #fff; box-shadow: none; font-size: 14px; font-weight: 600; }
.recruiting-detail-text-modal .modal-foot .primary-button:hover,
.recruiting-progress-modal .modal-foot .primary-button:hover { background: #000; }
/* 분야 창 글자 굵기 정리 */
#recruitingSubFieldForm .recruiting-field-family > span { font-size: 12.5px; font-weight: 600; color: #6b7280; }
#recruitingSubFieldForm .recruiting-field-family label span { font-weight: 500; }
#recruitingSubFieldForm .recruiting-field-family input:checked + span { font-weight: 600; }
#recruitingSubFieldForm legend { display: none; }
#recruitingSubFieldForm .modal-body > label { display: grid; gap: 6px; font-size: 13px; font-weight: 500; color: #6b7280; }
#recruitingSubFieldForm .modal-body > label input { height: 40px; padding: 0 12px; border: 1px solid #e5e7eb; border-radius: 10px; font: inherit; font-size: 14px; font-weight: 500; }
.recruiting-detail-text-modal .recruiting-history-edit-button, .recruiting-progress-modal .recruiting-history-edit-button, .recruiting-detail-text-modal .recruiting-history-delete-button, .recruiting-progress-modal .recruiting-history-delete-button { border: 0 !important; background: none !important; box-shadow: none !important; color: #9ca3af !important; font-weight: 500 !important; }
.recruiting-detail-text-modal .recruiting-history-edit-button:hover, .recruiting-progress-modal .recruiting-history-edit-button:hover { background: #f3f4f6 !important; color: #111827 !important; }
.recruiting-detail-text-modal .recruiting-history-delete-button:hover, .recruiting-progress-modal .recruiting-history-delete-button:hover { background: #fef2f2 !important; color: #c2410c !important; }
.recruiting-detail-text-modal .modal-head .icon-button, .recruiting-progress-modal .modal-head .icon-button { border: 0 !important; box-shadow: none !important; background: none; }
.recruiting-detail-text-modal .recruiting-history-edit-button span, .recruiting-progress-modal .recruiting-history-edit-button span { min-height: 24px; padding: 0; border: 0; background: none; color: inherit; font-size: 12.5px; font-weight: 500; }
.recruiting-detail-text-modal .recruiting-history-edit-button input:checked + span, .recruiting-progress-modal .recruiting-history-edit-button input:checked + span { border: 0; background: none; color: #111827; }
.recruiting-detail-text-modal .modal-head .icon-button:focus, .recruiting-progress-modal .modal-head .icon-button:focus { outline: 0; }
.recruiting-detail-text-modal .modal-head .icon-button:focus-visible, .recruiting-progress-modal .modal-head .icon-button:focus-visible { background: #f3f4f6; }
/* ===== v11: 위쪽 메뉴 — 1줄 하는 일 · 2줄 보기 탭 · 3줄 검색→조건→정렬 ===== */
/* 1줄 */
#recruitingPage.rd-v2 .recruiting-head { display: flex; flex-wrap: nowrap; align-items: center; gap: 12px; margin: 0; }
#recruitingPage.rd-v2 .recruiting-head h1 { margin: 0 4px 0 0; font-size: 22px; font-weight: 700; letter-spacing: -.02em; white-space: nowrap; }
#recruitingPage.rd-v2 .recruiting-head .rd-seg-view button { font-weight: 500; }
#recruitingPage.rd-v2 .recruiting-head .rd-seg-view button[aria-pressed="true"] { font-weight: 600; }
#recruitingPage.rd-v2 .rd-head-side { display: flex; align-items: center; gap: 8px; margin-left: auto; }
#recruitingPage.rd-v2 .rd-head-side .pool-toolbar-group { display: inline-flex; }
#recruitingPage.rd-v2 .rd-head-side .recruiting-pool-button,
#recruitingPage.rd-v2 .rd-head-side .recruiting-completed-shortcut,
#recruitingPage.rd-v2 .rd-head-side .rd-head-button { display: inline-flex; align-items: center; gap: 6px; height: 36px; min-height: 36px; padding: 0 12px; border: 1px solid #e5e7eb; border-radius: 10px; background: #fff; box-shadow: none; color: #374151; font: inherit; font-size: 13.5px; font-weight: 500; white-space: nowrap; cursor: pointer; }
#recruitingPage.rd-v2 .rd-head-side .recruiting-pool-button:hover,
#recruitingPage.rd-v2 .rd-head-side .recruiting-completed-shortcut:hover,
#recruitingPage.rd-v2 .rd-head-side .rd-head-button:hover { border-color: #cbd2dc; background: #f9fafb; }
#recruitingPage.rd-v2 .rd-head-side .recruiting-completed-shortcut svg,
#recruitingPage.rd-v2 .rd-head-side .rd-head-button svg { width: 15px; height: 15px; fill: none; stroke: #6b7280; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
#recruitingPage.rd-v2 .rd-head-side .recruiting-completed-shortcut b { min-width: 0; padding: 0; background: none; color: #9ca3af; font-size: 12.5px; font-weight: 500; }
#recruitingPage.rd-v2 .rd-head-side .rd-head-button em { display: inline-grid; place-items: center; min-width: 18px; height: 18px; padding: 0 5px; border-radius: 9px; background: #ef4444; color: #fff; font-size: 11px; font-style: normal; font-weight: 600; }
#recruitingPage.rd-v2 .rd-head-side .rd-head-button[aria-pressed="true"] { border-color: #111827; box-shadow: 0 0 0 1px #111827; }
#recruitingPage.rd-v2 .rd-head-side .recruiting-toolbar-more > .recruiting-filter-trigger { display: grid; place-items: center; width: 36px; height: 36px; min-height: 36px; padding: 0; border: 1px solid #e5e7eb; border-radius: 10px; background: #fff; color: #6b7280; font-size: 18px; }
#recruitingPage.rd-v2 .rd-head-side .recruiting-add-button { height: 36px; padding: 0 16px; border: 0; border-radius: 10px; background: #111827; color: #fff; font: inherit; font-size: 14px; font-weight: 600; white-space: nowrap; cursor: pointer; }
#recruitingPage.rd-v2 .rd-head-side .recruiting-toolbar-tools-panel #recruitingTeamHighlightsButton { display: flex; align-items: center; gap: 8px; width: 100%; height: 36px; padding: 0 10px; border: 0; border-radius: 8px; background: none; color: #1f2937; font: inherit; font-size: 13.5px; font-weight: 500; text-align: left; }
#recruitingPage.rd-v2 .rd-head-side .recruiting-toolbar-tools-panel #recruitingTeamHighlightsButton svg { width: 15px; height: 15px; fill: none; stroke: #6b7280; stroke-width: 1.6; }
#recruitingPage.rd-v2 .rd-head-side .recruiting-toolbar-tools-panel #recruitingTeamHighlightsButton[aria-pressed="true"] { background: #f5f8ff; font-weight: 600; }
#recruitingPage.rd-v2 .rd-head-side .recruiting-toolbar-tools-panel button { font-weight: 500; }
/* 2줄: 보기 탭(밑줄) */
#recruitingPage.rd-v2 > .rd-views { display: flex; flex-wrap: nowrap; gap: 24px; align-items: flex-end; height: 46px; margin: 4px 0 0; padding: 0; border-bottom: 1px solid #e5e7eb; overflow-x: auto; }
#recruitingPage.rd-v2 > .rd-views button { display: inline-flex; align-items: center; gap: 6px; height: 42px; margin-bottom: -1px; padding: 0; border: 0; border-bottom: 2px solid transparent; border-radius: 0; background: none; color: #6b7280; font: inherit; font-size: 14.5px; font-weight: 500; white-space: nowrap; cursor: pointer; }
#recruitingPage.rd-v2 > .rd-views button:hover { background: none; color: #111827; }
#recruitingPage.rd-v2 > .rd-views button[aria-pressed="true"] { border-bottom-color: #111827; background: none; color: #111827; font-weight: 600; }
#recruitingPage.rd-v2 > .rd-views i { font-style: normal; font-size: 13px; font-weight: 500; color: #9ca3af; }
#recruitingPage.rd-v2 > .rd-views button[aria-pressed="true"] i { color: #374151; }
#recruitingPage.rd-v2 > .rd-views button.is-late i { color: #dc2626; font-weight: 600; }
#recruitingPage.rd-v2 > .rd-views button[aria-pressed="true"].is-late i { color: #dc2626; }
/* 3줄: 검색 → 조건 → 정렬 */
#recruitingPage.rd-v2 > .recruiting-tabs-row { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 14px 0 12px; border-bottom: 0; }
#recruitingPage.rd-v2 > .recruiting-tabs-row > .recruiting-owner-filters { order: 0; flex: none; width: 300px; margin: 0; }
#recruitingPage.rd-v2 > .recruiting-tabs-row .recruiting-search-label { display: block; position: relative; margin: 0; }
#recruitingPage.rd-v2 > .recruiting-tabs-row .recruiting-search-label > span { display: none; }
#recruitingPage.rd-v2 > .recruiting-tabs-row .recruiting-search-label::before { content: ""; position: absolute; left: 12px; top: 50%; width: 16px; height: 16px; transform: translateY(-50%); background: no-repeat center / 16px url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E"); pointer-events: none; }
#recruitingPage.rd-v2 > .recruiting-tabs-row .recruiting-search-label input { width: 100%; height: 38px; min-height: 38px; padding: 0 12px 0 36px; border: 1px solid #d1d5db; border-radius: 10px; background: #fff; font: inherit; font-size: 14px; font-weight: 500; color: #111827; }
#recruitingPage.rd-v2 > .recruiting-tabs-row .recruiting-search-label input:focus { border-color: #111827; outline: 0; box-shadow: 0 0 0 3px rgba(17, 24, 39, .06); }
#recruitingPage.rd-v2 > .recruiting-tabs-row > .recruiting-status-tabs { order: 1; display: flex; flex: 1 1 auto; flex-wrap: wrap; align-items: center; gap: 8px; min-width: 0; }
#recruitingPage.rd-v2 > .recruiting-tabs-row > .recruiting-tools { order: 2; margin: 0; }
#recruitingPage.rd-v2 > .recruiting-tabs-row > .recruiting-tools:not(:has(> :not([hidden]))) { display: none; }
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-filter-menu { position: relative; display: inline-flex; align-items: center; }
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-filter-trigger { display: inline-flex; align-items: center; gap: 6px; height: 38px; min-height: 38px; padding: 0 12px; border: 1px solid #e5e7eb; border-radius: 10px; background: #fff; box-shadow: none; color: #6b7280; font: inherit; font-size: 13.5px; font-weight: 500; white-space: nowrap; }
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-filter-trigger > span { color: #6b7280; font-weight: 500; }
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-filter-trigger strong { max-width: 140px; overflow: hidden; text-overflow: ellipsis; color: #111827; font-size: 13.5px; font-weight: 500; }
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-filter-trigger > i { font-style: normal; font-size: 10px; color: #9ca3af; }
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-filter-menu.active > .recruiting-filter-trigger { padding-right: 34px; border-color: #111827; background: #f8fafc; box-shadow: none; }
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-filter-menu.active > .recruiting-filter-trigger strong { font-weight: 600; }
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-filter-menu.open > .recruiting-filter-trigger { border-color: #111827; box-shadow: none; }
.recruiting-filter-x { position: absolute; right: 9px; top: 50%; display: grid; place-items: center; width: 18px; height: 18px; padding: 0; border: 0; border-radius: 50%; background: #e5e7eb; color: #374151; font-size: 10px; line-height: 1; transform: translateY(-50%); cursor: pointer; }
.recruiting-filter-x:hover { background: #111827; color: #fff; }
.recruiting-pick-status { width: 8px; height: 8px; flex: none; border-radius: 50%; }
/* 정렬: 오른쪽 끝, 말로 */
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-sort-menu { margin-left: auto; }
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-sort-menu > .recruiting-filter-trigger { border-color: transparent; background: none; }
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-sort-menu > .recruiting-filter-trigger:hover,
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-sort-menu.open > .recruiting-filter-trigger { border-color: transparent; background: #f3f4f6; }
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-sort-menu > .recruiting-filter-trigger svg { width: 15px; height: 15px; fill: none; stroke: #6b7280; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-sort-menu > .recruiting-filter-trigger strong { max-width: none; }
.recruiting-sort-menu .recruiting-filter-menu-list button em { color: #111827; font-size: 12px; }
/* 걸린 조건 한 줄 */
.recruiting-applied-line { order: 5; display: flex; flex-basis: 100%; align-items: center; gap: 10px; min-height: 22px; padding: 2px 2px 0; font-size: 13.5px; font-weight: 500; color: #6b7280; }
.recruiting-applied-line[hidden] { display: none; }
.recruiting-applied-line b { color: #111827; font-weight: 600; }
.recruiting-applied-line button { padding: 0; border: 0; background: none; color: #6b7280; font: inherit; font-size: 13.5px; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.recruiting-applied-line button:hover { color: #111827; }
/* 좁은 화면: 줄을 감싼다 */
@media (max-width: 1500px) {
  #recruitingPage.rd-v2 .recruiting-head { flex-wrap: nowrap; }
  #recruitingPage.rd-v2 > .recruiting-tabs-row > .recruiting-owner-filters { width: 240px; }
}
@media (max-width: 900px) {
  #recruitingPage.rd-v2 .recruiting-head { flex-wrap: wrap; }
  #recruitingPage.rd-v2 .rd-head-side { width: 100%; margin-left: 0; flex-wrap: wrap; }
  #recruitingPage.rd-v2 > .recruiting-tabs-row > .recruiting-owner-filters { width: 100%; }
  #recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-sort-menu { margin-left: 0; }
}
#recruitingPage.rd-v2 > .recruiting-head, #recruitingPage.rd-v2 > .rd-views, #recruitingPage.rd-v2 > .recruiting-tabs-row { flex: none; }
#recruitingPage.rd-v2 .recruiting-head > div:first-child { display: flex; align-items: center; gap: 12px; }
#recruitingPage.rd-v2 .rd-head-side .recruiting-filter-trigger::after { content: none; display: none; }
#recruitingPage.rd-v2 .rd-head-side .recruiting-toolbar-tools-panel button { display: flex; align-items: center; width: 100%; height: 36px; min-height: 36px; margin: 0; padding: 0 10px; border: 0; border-radius: 8px; background: none; box-shadow: none; color: #1f2937; font: inherit; font-size: 13.5px; font-weight: 500; text-align: left; opacity: 1; }
#recruitingPage.rd-v2 .rd-head-side .recruiting-toolbar-tools-panel button:hover { background: #f5f7fb; }
#recruitingPage.rd-v2 .rd-head-side .recruiting-toolbar-tools-panel button[aria-pressed="true"] { background: #f5f8ff; font-weight: 600; }
#recruitingPage.rd-v2 .rd-head-side .recruiting-toolbar-menu-heading { padding: 6px 10px 4px; font-size: 12px; font-weight: 500; color: #9ca3af; }
#recruitingPage.rd-v2 > .recruiting-tabs-row > .recruiting-status-tabs { flex: 1 1 360px; }
@media (max-width: 1360px) {
  #recruitingPage.rd-v2 .rd-head-side { gap: 6px; }
  #recruitingPage.rd-v2 .rd-head-side .recruiting-pool-button,
  #recruitingPage.rd-v2 .rd-head-side .recruiting-completed-shortcut,
  #recruitingPage.rd-v2 .rd-head-side .rd-head-button { padding: 0 10px; }
  #recruitingPage.rd-v2 > .recruiting-tabs-row > .recruiting-owner-filters { width: 210px; }
}
#recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-filter-trigger > span, #recruitingPage.rd-v2 .recruiting-tabs-row .recruiting-filter-trigger > strong { display: inline !important; }
