@charset "utf-8";
/* ==========================================================
   HIVE NECTAR 전용 디자인 (2026-10-29)
   방향: 로고 기준 — 따뜻한 크림 바탕 + 꽃잎 분홍(#EC407A → 글자용 #C2185B) + 꿀색(#F9AB00) 강조 + 짙은 밤색 글자
   공통 부품(vp.css) 위에 색·모양을 바꾸고, 홈·머리말·업무 화면은 전용 모양(nt-)을 쓴다.
   ========================================================== */
body.th-nectar {
  --c-bg: #FFFAF2;
  --c-surface: #FFFFFF;
  --c-surface-2: #FBF0DD;
  --c-line: #EADCC6;
  --c-text: #2A1D12;
  --c-text-2: #5A4636;
  --c-muted: #7A6553;
  --c-brand: #C2185B;
  --c-brand-strong: #A3134B;
  --c-on-brand: #FFFFFF;
  --c-accent: #F9AB00;
  --c-focus: #C2185B;
  --nt-petal: #EC407A;
  --nt-honey: #F9AB00;
  --nt-honey-2: #FFD36B;
  --nt-honey-ink: #8A5A00;   /* 크림 바탕 위 꿀색 글자 (대비 5:1 이상) */
  --nt-ink: #2A1D12;
  --nt-ink-2: #3A2A1C;
  --r: 10px;
  --r-lg: 16px;
  --shadow: 0 2px 4px rgba(42,29,18,.04), 0 14px 32px -18px rgba(42,29,18,.25);
  background: var(--c-bg);
  letter-spacing: -.01em;
}

/* HIVE KEEPER·HIVE BUZZ 안에서 HIVE NECTAR 화면 조각을 쓸 때 (2026-10-29 배네타로 합침) — nt- 색 이름만 (공통 색은 각 프로그램 것 그대로) */
:root {
  --nt-petal: #EC407A;
  --nt-honey: #F9AB00;
  --nt-honey-2: #FFD36B;
  --nt-honey-ink: #8A5A00;
  --nt-ink: #2A1D12;
  --nt-ink-2: #3A2A1C;
}
.nt-ws .nt-catnav { margin-top: var(--s-4); }

/* ---------- 로고 ---------- */
.ntlogo { display: inline-flex; align-items: center; gap: 8px; color: var(--nt-ink); line-height: 1; }
.ntlogo__mark { display: block; width: 36px; height: 36px; }
.ntlogo__word { font-size: 18px; font-weight: 800; letter-spacing: .02em; white-space: nowrap; }
.ntlogo__word b { color: var(--c-brand); font-weight: 900; }
@media (max-width: 480px) { .ntlogo__mark { width: 30px; height: 30px; } .ntlogo__word { font-size: 16px; } }

/* ---------- 머리말 ---------- */
.th-nectar .nt-hd { background: rgba(255,250,242,.96); border-bottom: 1px solid var(--c-line); backdrop-filter: blur(8px); }
.th-nectar .nt-hd__in { min-height: 70px; }
.th-nectar .nt-nav a { font-size: 15px; font-weight: 600; color: var(--c-text-2); }
.th-nectar .nt-nav a:hover { color: var(--c-text); }
.th-nectar .nt-nav a[aria-current="page"] { color: var(--c-brand); background: transparent; }
.th-nectar .nt-nav .linklike { color: var(--c-text-2); font-size: 15px; }
.th-nectar .nt-nav__cta { padding: var(--s-2) 0; }
.th-nectar .nt-nav__cta .btn { color: #fff; border-radius: 999px; padding: 0 20px; min-height: 42px; }
@media (min-width: 960px) {
  .th-nectar .nt-nav__menu { gap: 2px !important; }
  .th-nectar .nt-nav__util { border-left: 0 !important; padding-left: var(--s-2) !important; gap: 2px; display: flex; align-items: center; }
  .th-nectar .nt-nav__util a, .th-nectar .nt-nav__util .linklike { font-size: 14px; color: var(--c-muted); }
  .th-nectar .nt-nav__cta { padding: 0 0 0 var(--s-2); }
}

/* ---------- 공통 부품 ---------- */
.th-nectar .btn { border-radius: var(--r); font-weight: 700; }
.th-nectar .btn--primary { background: var(--c-brand); border-color: var(--c-brand); color: #fff; }
.th-nectar .btn--primary:hover { background: var(--c-brand-strong); }
.th-nectar .btn--secondary { background: #fff; border-color: var(--c-line); color: var(--c-text); }
.th-nectar .btn--secondary:hover { border-color: var(--c-brand); color: var(--c-brand); }
.th-nectar .btn--lg { min-height: 54px; padding: 0 26px; font-size: 17px; }
.th-nectar .btn--sm { min-height: 40px; padding: 0 14px; font-size: 14px; }
.th-nectar .btn[disabled] { opacity: .45; cursor: not-allowed; }
.nt-btn--line { background: transparent; border: 1.5px solid var(--nt-ink); color: var(--nt-ink); }
.nt-btn--line:hover { background: var(--nt-ink); color: #fff; }
.nt-btn--honey { background: var(--nt-honey); border: 0; color: var(--nt-ink); }
.nt-btn--honey:hover { background: var(--nt-honey-2); color: var(--nt-ink); }
.th-nectar .table th { background: var(--c-surface-2); }
.th-nectar .kv { background: var(--c-surface-2); }
.th-nectar .kv[aria-current="page"] { background: var(--nt-ink); color: #fff; }
.nt-badge--warn { color: #8A4B00; background: #FFF1D6; border-color: currentColor; }
.th-nectar .notice--warning { border-left: 4px solid var(--nt-honey); }
.th-nectar .field input[readonly] { background: var(--c-surface-2); color: var(--c-muted); }

/* ---------- 글자 ---------- */
.nt-kicker, .nt-eyebrow { margin: 0 0 var(--s-3); font-size: 13px; font-weight: 800; letter-spacing: .16em; color: var(--nt-honey-ink); text-transform: uppercase; }
.nt-h1 { margin: 0 0 var(--s-3); font-size: clamp(24px, 3.2vw, 32px); line-height: 1.25; font-weight: 800; letter-spacing: -.02em; }
.nt-h2 { margin: 0 0 var(--s-5); font-size: clamp(24px, 3.4vw, 36px); line-height: 1.25; font-weight: 800; letter-spacing: -.025em; }
.nt-h2 em, .nt-hero__title em { font-style: normal; color: var(--c-brand); }
.nt-h3 { margin: var(--s-5) 0 var(--s-2); font-size: 17px; font-weight: 800; }
.nt-h4 { margin: var(--s-4) 0 var(--s-1); font-size: 14px; font-weight: 800; color: var(--c-text-2); }
.nt-lead { font-size: 17px; line-height: 1.7; color: var(--c-text-2); max-width: 60ch; }

/* ---------- 구역 ---------- */
.nt-section { padding: clamp(48px, 7vw, 88px) 0; }
.nt-section--app, .nt-section--form { padding: var(--s-6) 0 clamp(48px, 7vw, 80px); }
.nt-soft { background: var(--c-surface-2); }
.nt-split { display: grid; gap: var(--s-6); align-items: center; }
.nt-split--top { align-items: start; }
@media (min-width: 900px) { .nt-split { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--s-8); } }

/* 히어로 */
.nt-hero { position: relative; overflow: hidden; padding: clamp(56px, 9vw, 112px) 0 clamp(48px, 7vw, 88px);
  background: radial-gradient(640px 360px at 88% 10%, rgba(249,171,0,.22), transparent 62%), radial-gradient(520px 320px at 70% 90%, rgba(236,64,122,.14), transparent 60%), var(--c-bg); }
.nt-hero__in { display: grid; gap: var(--s-6); align-items: center; }
@media (min-width: 900px) { .nt-hero__in { grid-template-columns: minmax(0, 1.4fr) minmax(0, .8fr); } }
.nt-hero__title { margin: 0 0 var(--s-4); font-size: clamp(32px, 5.4vw, 56px); line-height: 1.15; font-weight: 900; letter-spacing: -.035em; word-break: keep-all; }
.nt-hero__lead { margin: 0 0 var(--s-5); font-size: clamp(16px, 1.8vw, 19px); line-height: 1.7; color: var(--c-text-2); max-width: 46ch; word-break: keep-all; }
.nt-hero__actions { display: flex; flex-wrap: wrap; gap: var(--s-3); margin: 0 0 var(--s-4); }
.nt-hero__sub { color: var(--c-muted); font-size: 15px; }
.nt-hero__sub a { color: var(--c-brand); font-weight: 700; }
.nt-hero__art { display: flex; justify-content: center; }
.nt-hero__art img { width: min(240px, 60vw); height: auto; filter: drop-shadow(0 24px 36px rgba(194,24,91,.22)); }
@media (max-width: 899px) { .nt-hero__art { display: none; } }

/* 머리 구역 (안내 페이지) */
.nt-pagehead { padding: clamp(40px, 6vw, 72px) 0 var(--s-6); background: radial-gradient(520px 260px at 92% 0%, rgba(249,171,0,.2), transparent 60%), var(--c-surface-2); border-bottom: 1px solid var(--c-line); }
.nt-pagehead__title { margin: 0 0 var(--s-3); font-size: clamp(28px, 4.4vw, 44px); font-weight: 900; letter-spacing: -.03em; }
.nt-pagehead__lead { margin: 0; max-width: 62ch; font-size: 17px; line-height: 1.7; color: var(--c-text-2); word-break: keep-all; }
.nt-toc { display: flex; flex-wrap: wrap; gap: var(--s-2); padding-top: var(--s-4); padding-bottom: var(--s-2); }
.nt-toc a { display: inline-flex; align-items: center; min-height: 40px; padding: 0 16px; border-radius: 999px; border: 1px solid var(--c-line); background: #fff; color: var(--c-text); font-weight: 700; text-decoration: none; }
.nt-toc a:hover { border-color: var(--c-brand); color: var(--c-brand); }

/* HIVE 네 단계 */
.nt-flow { display: grid; gap: var(--s-3); margin: 0; padding: 0; list-style: none; counter-reset: f; }
@media (min-width: 760px) { .nt-flow { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.nt-flow__item { position: relative; display: flex; flex-direction: column; gap: 4px; padding: var(--s-5); border-radius: var(--r-lg); background: #fff; border: 1px solid var(--c-line); }
.nt-flow__item.is-here { background: var(--nt-ink); border-color: var(--nt-ink); color: #F6EBDD; }
.nt-flow__name { font-size: 13px; font-weight: 900; letter-spacing: .12em; color: var(--nt-honey-ink); }
.nt-flow__item.is-here .nt-flow__name { color: var(--nt-honey); }
.nt-flow__ko { font-size: 20px; font-weight: 800; }
.nt-flow__body { font-size: 14px; line-height: 1.6; color: var(--c-text-2); }
.nt-flow__item.is-here .nt-flow__body { color: #DCCAB6; }
@media (min-width: 760px) { .nt-flow__item:not(:last-child)::after { content: "→"; position: absolute; right: -14px; top: 50%; transform: translateY(-50%); color: var(--nt-honey-ink); font-weight: 900; z-index: 1; } }

/* 단계 */
.nt-steps { display: grid; gap: var(--s-4); margin: 0; padding: 0; list-style: none; }
@media (min-width: 760px) { .nt-steps { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .nt-steps { grid-template-columns: repeat(4, minmax(0, 1fr)); } }
.nt-steps__item { padding: var(--s-5); border-radius: var(--r-lg); background: #fff; border: 1px solid var(--c-line); }
.nt-steps__item p { margin: 0; color: var(--c-text-2); line-height: 1.65; font-size: 15px; word-break: keep-all; }
.nt-steps__no { display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 50%; background: var(--nt-honey); color: var(--nt-ink); font-weight: 900; }
.nt-steps__title { margin: var(--s-3) 0 var(--s-2); font-size: 18px; font-weight: 800; }

/* 공급사 / 셀러 두 칸 */
.nt-two { display: grid; gap: var(--s-4); }
@media (min-width: 860px) { .nt-two { grid-template-columns: 1fr 1fr; } }
.nt-two__col { padding: var(--s-6); border-radius: var(--r-lg); background: #fff; border: 1px solid var(--c-line); }
.nt-two__col--dark { background: var(--nt-ink); border-color: var(--nt-ink); color: #F6EBDD; }
.nt-two__title { margin: 0 0 var(--s-4); font-size: 20px; font-weight: 800; }
.nt-checks { margin: 0 0 var(--s-5); padding: 0; list-style: none; display: grid; gap: var(--s-2); }
.nt-checks li { position: relative; padding-left: 28px; line-height: 1.6; word-break: keep-all; }
.nt-checks li::before { content: ""; position: absolute; left: 0; top: .35em; width: 16px; height: 16px; border-radius: 50%; background: var(--nt-honey); box-shadow: inset 0 0 0 4px #fff; border: 1px solid var(--nt-honey); }
.nt-two__col--dark .nt-checks li::before { box-shadow: inset 0 0 0 4px var(--nt-ink); }

/* 점수 막대 */
.nt-bars { margin: 0; padding: var(--s-5); list-style: none; display: grid; gap: var(--s-3); background: #fff; border-radius: var(--r-lg); border: 1px solid var(--c-line); }
.nt-bars li { display: grid; grid-template-columns: 7.5em minmax(0, 1fr) 2.5em; align-items: center; gap: var(--s-3); font-weight: 700; font-size: 15px; }
.nt-bars__bar { height: 12px; border-radius: 999px; background: linear-gradient(90deg, var(--nt-petal), var(--nt-honey)); }
.nt-bars__bar[data-w="20"] { width: 100%; }
.nt-bars__bar[data-w="15"] { width: 75%; }
.nt-bars__bar[data-w="10"] { width: 50%; }
.nt-bars__num { text-align: right; color: var(--c-brand); font-variant-numeric: tabular-nums; }

/* 마무리 호출 */
.nt-cta { padding: clamp(48px, 7vw, 80px) 0; background: var(--nt-ink); color: #F6EBDD; text-align: center; }
.nt-cta__title { margin: 0 0 var(--s-2); font-size: clamp(22px, 3vw, 30px); font-weight: 800; color: #fff; }
.nt-cta p { margin: 0 0 var(--s-5); color: #DCCAB6; }

/* 카드·서류·심사 */
.nt-cards { display: grid; gap: var(--s-4); }
@media (min-width: 760px) { .nt-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1100px) { .nt-cards:not(.nt-cards--2) { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.nt-card { padding: var(--s-5); border-radius: var(--r-lg); background: #fff; border: 1px solid var(--c-line); }
.nt-card p { margin: 0; line-height: 1.65; color: var(--c-text-2); word-break: keep-all; }
.nt-card__title { margin: 0 0 var(--s-3); font-size: 17px; font-weight: 800; }
.nt-card .nt-checks { margin-bottom: var(--s-3); }
.nt-card__opt { font-size: 14px; color: var(--c-muted) !important; }
.nt-gates { margin: 0; padding-left: 1.4em; display: grid; gap: var(--s-2); line-height: 1.6; }
.nt-gates li::marker { color: var(--c-brand); font-weight: 800; }
.nt-grades { display: grid; gap: var(--s-3); margin: var(--s-6) 0 0; padding: 0; list-style: none; }
@media (min-width: 760px) { .nt-grades { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.nt-grades__item { display: flex; flex-direction: column; gap: 2px; padding: var(--s-4) var(--s-5); border-radius: var(--r-lg); background: #fff; border: 1px solid var(--c-line); border-top: 4px solid var(--nt-honey); }
.nt-grades__item:first-child { border-top-color: #2E7D32; }
.nt-grades__item:last-child { border-top-color: var(--c-brand); }
.nt-grades__label { font-size: 20px; font-weight: 900; }
.nt-cats { display: flex; flex-wrap: wrap; gap: var(--s-3); margin: 0 0 var(--s-3); padding: 0; list-style: none; }
.nt-cats li { display: flex; align-items: baseline; gap: 8px; padding: var(--s-3) var(--s-4); border-radius: var(--r); background: #fff; border: 1px solid var(--c-line); }
.nt-cats strong { font-size: 22px; color: var(--c-brand); }
.nt-actions { margin-top: var(--s-5); }

/* 소개 CI */
.nt-ci { display: flex; justify-content: center; padding: var(--s-6); border-radius: var(--r-lg); background: #fff; border: 1px solid var(--c-line); }
.nt-ci__list { margin: 0; display: grid; gap: var(--s-4); }
.nt-ci__list dt { font-weight: 800; font-size: 17px; }
.nt-ci__list dd { margin: 4px 0 0; color: var(--c-text-2); line-height: 1.65; }

/* 꼬리말 */
.th-nectar .nt-ft { background: var(--nt-ink); color: #CDBBA6; padding: var(--s-7, 48px) 0 var(--s-6); border-top: 0; }
.nt-ft__in { display: grid; gap: var(--s-4); }
.nt-ft .ntlogo { color: #fff; }
.nt-ft .ntlogo__word b { color: var(--nt-honey); }
.nt-ft__tag { margin: var(--s-2) 0 0; font-size: 14px; }
.nt-ft__links { display: flex; flex-wrap: wrap; gap: var(--s-1) var(--s-4); margin: 0; padding: 0; list-style: none; }
.nt-ft__links a { color: #F6EBDD; text-decoration: none; font-size: 14px; }
.nt-ft__links a:hover { text-decoration: underline; }
.nt-ft__info { display: flex; flex-wrap: wrap; gap: 2px var(--s-3); font-style: normal; font-size: 13px; }
.nt-ft__copy { margin: 0; font-size: 13px; }

/* ---------- 양식 ---------- */
.nt-fset { margin: 0 0 var(--s-5); padding: var(--s-5); border: 1px solid var(--c-line); border-radius: var(--r-lg); background: #fff; min-width: 0; }
.nt-fset > legend { padding: 0 var(--s-2); font-weight: 800; font-size: 16px; }
.nt-plain { margin: 0; padding: 0; border: 0; min-width: 0; }
.nt-code { margin: 8px 0 0; padding: 12px 14px; border-radius: 10px; background: var(--nt-soft, #f6f2ea); font: 13px/1.6 ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; white-space: pre-wrap; overflow-wrap: anywhere; }
.nt-fgrid { display: grid; gap: 0 var(--s-4); }
@media (min-width: 640px) { .nt-fgrid { grid-template-columns: repeat(2, minmax(0, 1fr)); } .nt-fgrid--3 { grid-template-columns: repeat(3, minmax(0, 1fr)); } .nt-fgrid__wide { grid-column: 1 / -1; } }
.nt-flabel { display: block; margin-bottom: var(--s-2); font-weight: 700; }
.nt-chips { display: flex; flex-wrap: wrap; gap: var(--s-2); }
.nt-chip { position: relative; display: inline-flex; cursor: pointer; }
.nt-chip input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.nt-chip span { display: inline-flex; align-items: center; min-height: 40px; padding: 0 16px; border-radius: 999px; border: 1.5px solid var(--c-line); background: #fff; font-weight: 600; }
.nt-chip input:checked + span { border-color: var(--c-brand); background: #FDE7EF; color: var(--c-brand-strong); }
.nt-chip input:focus-visible + span { outline: 3px solid var(--c-focus); outline-offset: 2px; }
.nt-progress { display: flex; gap: var(--s-2); margin: 0 0 var(--s-5); padding: 0; list-style: none; counter-reset: p; overflow-x: auto; }
.nt-progress li { flex: 1 0 auto; counter-increment: p; padding: var(--s-2) var(--s-3); border-radius: var(--r); background: var(--c-surface-2); color: var(--c-muted); font-size: 14px; font-weight: 700; white-space: nowrap; }
.nt-progress li::before { content: counter(p) ". "; }
.nt-progress li.is-on { background: var(--nt-ink); color: #fff; }

/* ---------- 상품 탐색 ---------- */
.nt-apphead { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--s-3); margin-bottom: var(--s-3); }
.nt-apphead .nt-h1 { margin: 0; }
.nt-catnav { display: flex; gap: var(--s-2); overflow-x: auto; padding-bottom: var(--s-2); }
.nt-catnav a { flex: 0 0 auto; display: inline-flex; align-items: center; min-height: 40px; padding: 0 16px; border-radius: 999px; border: 1px solid var(--c-line); background: #fff; color: var(--c-text); text-decoration: none; font-weight: 700; font-size: 14px; }
.nt-catnav a[aria-current="page"] { background: var(--nt-ink); border-color: var(--nt-ink); color: #fff; }
.nt-plist { display: grid; gap: var(--s-4); margin: var(--s-4) 0 0; padding: 0; list-style: none; }
@media (min-width: 640px) { .nt-plist { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (min-width: 1040px) { .nt-plist { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
.nt-pcard__link { display: flex; flex-direction: column; gap: 6px; height: 100%; padding: var(--s-5); border-radius: var(--r-lg); background: #fff; border: 1px solid var(--c-line); color: var(--c-text); text-decoration: none; transition: border-color .15s, box-shadow .15s; }
.nt-pcard__link:hover { border-color: var(--c-brand); box-shadow: var(--shadow); }
.nt-pcard__top { display: flex; justify-content: space-between; align-items: center; }
.nt-tag { display: inline-flex; align-items: center; min-height: 24px; padding: 0 10px; border-radius: 999px; background: #FFF1D6; color: var(--nt-honey-ink); font-size: 12px; font-weight: 800; }
.nt-score { font-size: 13px; font-weight: 900; color: var(--c-brand); }
.nt-pcard__brand { font-size: 13px; color: var(--c-muted); font-weight: 700; }
.nt-pcard__name { font-size: 17px; line-height: 1.4; }
.nt-pcard__spec { font-size: 13px; color: var(--c-muted); }
.nt-pcard__nums { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--s-2); margin-top: auto; padding-top: var(--s-3); border-top: 1px dashed var(--c-line); font-weight: 800; font-variant-numeric: tabular-nums; font-size: 15px; }
.nt-pcard__nums small { display: block; font-size: 11px; font-weight: 700; color: var(--c-muted); }
.nt-pcard__margin { color: var(--c-brand); }
.nt-pcard__flags { display: flex; flex-wrap: wrap; gap: 4px; }
.nt-empty { padding: var(--s-6); text-align: center; background: #fff; border: 1px dashed var(--c-line); border-radius: var(--r-lg); }
.nt-back { margin: 0 0 var(--s-3); font-size: 14px; }
.nt-back a { color: var(--c-text-2); }

/* 상품 자세히 */
.nt-item { display: grid; gap: var(--s-6); }
@media (min-width: 1000px) { .nt-item { grid-template-columns: minmax(0, 1fr) 380px; align-items: start; } .nt-item__side { position: sticky; top: 90px; } }
.nt-item__meta { margin: 0 0 var(--s-2); color: var(--c-muted); font-size: 14px; }
.nt-item__spec { color: var(--c-text-2); margin: 0 0 var(--s-4); }
.nt-item__side { padding: var(--s-5); border-radius: var(--r-lg); background: #fff; border: 1px solid var(--c-line); box-shadow: var(--shadow); }
.nt-item__side .nt-h3 { margin-top: 0; }
.nt-nums { display: grid; grid-template-columns: repeat(auto-fit, minmax(130px, 1fr)); gap: var(--s-2); margin: 0 0 var(--s-4); }
.nt-nums > div { padding: var(--s-3) var(--s-4); border-radius: var(--r); background: #fff; border: 1px solid var(--c-line); }
.nt-nums > div.is-key { background: var(--nt-ink); border-color: var(--nt-ink); color: #fff; }
.nt-nums dt { font-size: 12px; font-weight: 700; color: var(--c-muted); }
.nt-nums .is-key dt { color: var(--nt-honey); }
.nt-nums dd { margin: 2px 0 0; font-size: 18px; font-weight: 900; font-variant-numeric: tabular-nums; }
.nt-kv { display: grid; gap: 0; margin: 0 0 var(--s-3); }
.nt-kv > div { display: grid; grid-template-columns: 9em minmax(0, 1fr); gap: var(--s-3); padding: var(--s-2) 0; border-bottom: 1px solid var(--c-line); }
.nt-kv dt { color: var(--c-muted); font-size: 14px; font-weight: 700; }
.nt-kv dd { margin: 0; word-break: break-word; }
@media (max-width: 520px) { .nt-kv > div { grid-template-columns: 1fr; gap: 2px; } }
.nt-claims { display: grid; gap: var(--s-3); margin: var(--s-4) 0; }
@media (min-width: 700px) { .nt-claims { grid-template-columns: 1fr 1fr; } }
.nt-claims > div { padding: var(--s-4); border-radius: var(--r); border: 1px solid var(--c-line); background: #fff; }
.nt-claims .nt-h3 { margin-top: 0; }
.nt-claims__ok { border-left: 4px solid #2E7D32 !important; }
.nt-claims__ban { border-left: 4px solid var(--c-brand) !important; }
.nt-links { display: flex; flex-wrap: wrap; gap: var(--s-4); font-weight: 700; }
.nt-pform .agree-box { display: grid; gap: var(--s-2); margin-bottom: var(--s-4); }
.nt-pform .agree-box .check { align-items: flex-start; line-height: 1.5; font-size: 14px; }
.nt-pform .agree-box .check input { flex: 0 0 auto; margin-top: 2px; }

/* 제안 목록 (셀러·공급사·MD 공용) */
.nt-props { display: grid; gap: var(--s-3); margin: var(--s-4) 0 0; padding: 0; list-style: none; }
.nt-prop { padding: var(--s-4) var(--s-5); border-radius: var(--r-lg); background: #fff; border: 1px solid var(--c-line); }
.nt-prop__head { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2); margin-bottom: var(--s-2); }
.nt-prop__line { margin: 0 0 4px; color: var(--c-text-2); }
.nt-prop__ok { margin-top: var(--s-3); padding: var(--s-3) var(--s-4); border-radius: var(--r); background: #F1F8EE; }
.nt-prop__ok p { margin: 0 0 6px; }
.nt-row-actions { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2); margin-top: var(--s-3); }

/* ---------- 업무 화면 (공급사 포털·MD) ---------- */
.th-nectar.workspace { background: #FBF6EE; }
.nt-wshead { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--s-3); margin-bottom: var(--s-3); }
.nt-wshead .h-section { margin: 0; }
.nt-wsbox { padding: var(--s-5); margin: 0 0 var(--s-5); border-radius: var(--r-lg); background: #fff; border: 1px solid var(--c-line); min-width: 0; }
.nt-wsbox .h-sub { margin-top: 0; }
.nt-cols { display: grid; gap: var(--s-4); }
@media (min-width: 1100px) { .nt-cols { grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr); align-items: start; } }
.nt-todo { display: grid; gap: var(--s-2); margin: 0 0 var(--s-3); padding: 0; list-style: none; counter-reset: t; }
.nt-todo li { counter-increment: t; display: flex; align-items: center; gap: var(--s-3); }
.nt-todo li::before { content: counter(t); display: inline-flex; align-items: center; justify-content: center; width: 28px; height: 28px; border-radius: 50%; border: 2px solid var(--c-line); font-weight: 800; font-size: 13px; }
.nt-todo li.is-done::before { content: "✓"; background: #2E7D32; border-color: #2E7D32; color: #fff; }
.nt-need { display: flex; flex-wrap: wrap; gap: var(--s-2); margin: var(--s-3) 0; padding: 0; list-style: none; }
.nt-need li { padding: 6px 12px; border-radius: 999px; background: #FFF1D6; font-size: 14px; }
.nt-need li.is-done { background: #E6F4E7; }
.nt-need li.is-done::before { content: "✓ "; color: #2E7D32; font-weight: 900; }
.nt-upload { display: flex; flex-wrap: wrap; align-items: flex-end; gap: var(--s-3); margin: var(--s-4) 0; padding: var(--s-4); background: #fff; border: 1px solid var(--c-line); border-radius: var(--r-lg); }
.nt-upload .field { margin: 0; flex: 1 1 180px; min-width: 0; }
.nt-upload .actions { margin: 0; }
.nt-wsform { max-width: 900px; }
.nt-mini li { padding: 6px 0; border-bottom: 1px solid var(--c-line); }
.nt-gatelist { margin: 0 0 var(--s-4); padding-left: 1.3em; display: grid; gap: var(--s-3); }
.nt-gatelist li { line-height: 1.5; }
.nt-gatelist li > span:first-child { display: block; margin-bottom: 4px; }
.nt-pf { display: inline-flex; gap: var(--s-4); }
.nt-pf label { display: inline-flex; align-items: center; gap: 6px; min-height: 36px; font-weight: 700; cursor: pointer; }
.nt-pf input { width: 18px; height: 18px; accent-color: var(--c-brand); }
.nt-score-in { width: 4.5em; min-height: 36px; padding: 0 6px; border: 1px solid var(--c-line); border-radius: 8px; text-align: right; font-weight: 800; }
.th-nectar .admin-header { background: #fff; }
.th-nectar .ws-svc-mark { margin-right: 6px; vertical-align: middle; }
@media (max-width: 640px) { .nt-score-how { display: none; } }

/* ---------- 원고 사전 검수 (2026-10-29) ---------- */
.nt-draftbox { margin-top: var(--s-4); padding: var(--s-4); border-radius: var(--r); background: var(--c-surface-2); }
.nt-draftbox .nt-h4 { margin-top: 0; }
.nt-draftform .field { margin-bottom: var(--s-3); }
.nt-drafts { display: grid; gap: var(--s-3); margin: var(--s-3) 0 0; padding: 0; list-style: none; }
.nt-draft { padding: var(--s-3) var(--s-4); border-radius: var(--r); background: #fff; border: 1px solid var(--c-line); }
.nt-draft__head { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2); margin-bottom: var(--s-2); }
.nt-draft__body { margin: 0 0 var(--s-2); padding: var(--s-3); border-radius: 8px; background: var(--c-bg); font-size: 15px; line-height: 1.6; word-break: break-word; }
.nt-draft__act { margin-top: var(--s-2); }
.nt-draft__act input[type="text"] { flex: 1 1 220px; max-width: none; }
.nt-flags { margin: 0 0 var(--s-2); padding: var(--s-2) var(--s-3) var(--s-2) 1.6em; border-radius: 8px; background: #FDE7EF; color: var(--c-brand-strong); font-size: 14px; }
.nt-flags-ok { margin: 0 0 var(--s-2); color: #2E7D32; }

/* ---------- 공급사 등급 (2026-10-29) ---------- */
.nt-grade { display: flex; flex-wrap: wrap; align-items: stretch; gap: var(--s-3); margin: 0 0 var(--s-3); }
.nt-grade__badge { display: flex; flex-direction: column; align-items: center; justify-content: center; min-width: 96px; padding: var(--s-3); border-radius: var(--r-lg); background: var(--c-surface-2); border: 1px solid var(--c-line); }
.nt-grade__letter { font-size: 36px; font-weight: 900; line-height: 1; }
.nt-grade__parts { flex: 1 1 260px; display: grid; gap: 0; margin: 0; padding: var(--s-2) var(--s-4); border-radius: var(--r-lg); background: #fff; border: 1px solid var(--c-line); }
.nt-grade__parts > div { display: flex; flex-wrap: wrap; justify-content: space-between; gap: var(--s-2); padding: var(--s-2) 0; border-bottom: 1px solid var(--c-line); }
.nt-grade__parts > div:last-child { border-bottom: 0; }
.nt-grade__parts dt { font-weight: 700; }
.nt-grade__parts dd { margin: 0; font-weight: 800; font-variant-numeric: tabular-nums; }
.nt-gtag { display: inline-flex; align-items: center; min-height: 22px; padding: 0 8px; border-radius: 999px; font-size: 12px; font-weight: 900; }
.nt-grade--s { background: var(--nt-ink); color: var(--nt-honey); border-color: var(--nt-ink); }
.nt-grade--a { background: #FDE7EF; color: var(--c-brand-strong); }
.nt-grade--b { background: #FFF1D6; color: var(--nt-honey-ink); }
.nt-grade--c, .nt-grade--none { background: var(--c-surface-2); color: var(--c-muted); }

/* ---------- 샘플 발송·수령 (2026-10-29) ---------- */
.nt-sample { margin-top: var(--s-3); padding: var(--s-3) var(--s-4); border-radius: var(--r); background: #fff; border: 1px dashed var(--c-line); }
.nt-sample__head { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2); margin: 0 0 var(--s-2); }
.nt-sample__form { margin: var(--s-2) 0; }
.nt-sample__form input[type="text"] { flex: 1 1 180px; max-width: none; }
.nt-late { background: #FDE7EF !important; color: var(--c-brand-strong); font-weight: 800; }
.nt-prop, .nt-sample, .nt-draft, .nt-draftbox { min-width: 0; }
.nt-sample__form select { flex: 0 1 auto; min-width: 0; max-width: 100%; }
.nt-sample__form, .nt-draft__act { flex-wrap: wrap; }
.nt-draft__act input[type="text"], .nt-sample__form input[type="text"] { min-width: 0; width: 100%; box-sizing: border-box; }
@media (max-width: 640px) { .nt-draft__act input[type="text"], .nt-sample__form input[type="text"] { flex: 1 1 100%; } }

/* ================================================================== 업체 발굴 (2026-10-29, /admin/leads) — ld- 접두, 기존 클래스는 건드리지 않음 */
.ld-subnav { margin-bottom: var(--s-4); }
.ld-subnav ul { flex-wrap: wrap; }
.ld-stats { grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); }
.ld-grid { display: grid; gap: var(--s-4); margin-top: var(--s-4); }
@media (min-width: 900px) { .ld-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.ld-grid .nt-wsbox { min-width: 0; }
.ld-bars { margin: 0; padding: 0; list-style: none; display: grid; gap: 6px; }
.ld-bars li { display: grid; grid-template-columns: minmax(5em, 9em) minmax(0, 1fr) 3.5em; align-items: center; gap: var(--s-2); font-size: 14px; }
.ld-bars__name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; color: var(--c-muted); font-weight: 600; }
.ld-bars__track { height: 10px; border-radius: 999px; background: var(--c-surface-2); overflow: hidden; }
.ld-bars__bar { display: block; height: 100%; width: 0; border-radius: 999px; background: linear-gradient(90deg, var(--nt-petal), var(--nt-honey)); }
.ld-bars__bar[data-p="0"] { width: 0%; }
.ld-bars__bar[data-p="5"] { width: 5%; }
.ld-bars__bar[data-p="10"] { width: 10%; }
.ld-bars__bar[data-p="15"] { width: 15%; }
.ld-bars__bar[data-p="20"] { width: 20%; }
.ld-bars__bar[data-p="25"] { width: 25%; }
.ld-bars__bar[data-p="30"] { width: 30%; }
.ld-bars__bar[data-p="35"] { width: 35%; }
.ld-bars__bar[data-p="40"] { width: 40%; }
.ld-bars__bar[data-p="45"] { width: 45%; }
.ld-bars__bar[data-p="50"] { width: 50%; }
.ld-bars__bar[data-p="55"] { width: 55%; }
.ld-bars__bar[data-p="60"] { width: 60%; }
.ld-bars__bar[data-p="65"] { width: 65%; }
.ld-bars__bar[data-p="70"] { width: 70%; }
.ld-bars__bar[data-p="75"] { width: 75%; }
.ld-bars__bar[data-p="80"] { width: 80%; }
.ld-bars__bar[data-p="85"] { width: 85%; }
.ld-bars__bar[data-p="90"] { width: 90%; }
.ld-bars__bar[data-p="95"] { width: 95%; }
.ld-bars__bar[data-p="100"] { width: 100%; }
.ld-bars__num { text-align: right; font-variant-numeric: tabular-nums; font-weight: 700; }
.ld-prog { width: 4.5em; height: 8px; vertical-align: middle; accent-color: var(--c-brand); }
.ld-prog--wide { width: min(260px, 60%); }
.ld-st, .ld-job, .ld-plan, .ld-ready, .ld-flag, .ld-src { display: inline-flex; align-items: center; min-height: 22px; padding: 0 8px; border-radius: 999px; font-size: 12px; font-weight: 700; white-space: nowrap; background: var(--c-surface-2); color: var(--c-muted); }
.ld-st--new, .ld-plan--new { background: #E8F1FE; color: #1E4FA8; }
.ld-st--collect, .ld-st--review, .ld-job--preview, .ld-job--queued, .ld-job--running, .ld-plan--update { background: #FFF1D6; color: var(--nt-honey-ink); }
.ld-st--verified, .ld-job--done, .ld-ready--ok, .ld-flag--ok { background: #E3F4E8; color: #1D6B36; }
.ld-st--needs, .ld-job--partial, .ld-plan--dupe, .ld-ready--untested, .ld-ready--nokey { background: #FDE7EF; color: var(--c-brand-strong); }
.ld-st--excluded, .ld-st--merged, .ld-job--canceled, .ld-plan--skip, .ld-ready--off, .ld-ready--nocollector { background: #EEE8E1; color: #5E5146; }
.ld-job--failed, .ld-plan--error, .ld-ready--blocked, .ld-flag--dupe { background: #FBE3E1; color: #A2281B; }
.ld-src { min-height: 18px; padding: 0 6px; font-size: 11px; font-weight: 600; margin-left: 4px; }
.ld-flag { min-height: 20px; font-size: 11px; margin-left: 2px; }
.ld-filter { margin: var(--s-3) 0; border: 1px solid var(--c-line); border-radius: var(--r); background: #fff; }
.ld-filter > summary { cursor: pointer; padding: var(--s-2) var(--s-3); font-weight: 700; min-height: 44px; display: flex; align-items: center; }
.ld-ffields { display: grid; gap: 0 var(--s-3); padding: 0 var(--s-3) var(--s-3); grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); }
.ld-ffields .field { margin-bottom: var(--s-2); min-width: 0; }
.ld-ffields select, .ld-ffields input { width: 100%; min-width: 0; }
.ld-ffields__act { grid-column: 1 / -1; margin: 0; }
.ld-table td { vertical-align: top; }
.ld-chk { width: 36px; text-align: center; }
.ld-chk input { width: 20px; height: 20px; }
.ld-bulk { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2); margin: var(--s-3) 0; padding: var(--s-3); border: 1px solid var(--c-line); border-radius: var(--r); background: var(--c-surface-2); }
.ld-bulk legend { font-weight: 700; padding: 0 var(--s-1); }
.ld-bulk select, .ld-bulk input { min-height: 40px; min-width: 0; max-width: 100%; }
.ld-pager { display: flex; flex-wrap: wrap; gap: var(--s-1); align-items: center; margin: var(--s-3) 0; }
.ld-pager a { display: inline-flex; align-items: center; justify-content: center; min-width: 40px; min-height: 40px; border-radius: var(--r); border: 1px solid var(--c-line); background: #fff; font-weight: 700; text-decoration: none; }
.ld-pager a[aria-current] { background: var(--nt-ink); color: #fff; border-color: var(--nt-ink); }
.ld-title small { font-size: .7em; font-weight: 600; }
.ld-stagebar { display: flex; flex-wrap: wrap; align-items: flex-start; gap: var(--s-2); margin: var(--s-2) 0 var(--s-4); }
.ld-more > summary { list-style: none; cursor: pointer; }
.ld-more > summary::-webkit-details-marker { display: none; }
.ld-reason { display: flex; flex-wrap: wrap; align-items: center; gap: var(--s-2); margin-top: var(--s-2); padding: var(--s-3); border: 1px solid var(--c-line); border-radius: var(--r); background: #fff; }
.ld-reason input { min-height: 40px; flex: 1 1 220px; min-width: 0; }
.ld-itemtabs ul { flex-wrap: wrap; }
.ld-val { max-width: 22em; word-break: break-word; }
.ld-row-pending td { background: #FFF8E8; }
.ld-row-err td { background: #FDF0EE; }
.ld-diff td { background: #FFF8E8; font-weight: 700; }
.ld-collab input, .ld-collab select { width: 100%; min-width: 0; min-height: 38px; }
.ld-collab td { min-width: 9em; }
.ld-collab th[scope="row"] { white-space: nowrap; font-weight: 700; }
.ld-collab-status { max-width: 320px; }
.ld-check { display: flex; align-items: flex-start; gap: var(--s-2); margin: var(--s-2) 0; line-height: 1.5; cursor: pointer; }
.ld-check input { width: 20px; height: 20px; flex: none; margin-top: 2px; }
.ld-notes { margin: var(--s-3) 0 0; padding-left: 1.2em; display: grid; gap: 4px; }
.ld-jobkv > div { grid-template-columns: 6em minmax(0, 1fr); }
.ld-jobact { display: flex; flex-wrap: wrap; gap: var(--s-2); margin: var(--s-3) 0; }
@media (max-width: 520px) {
  .ld-bars li { grid-template-columns: 5.5em minmax(0, 1fr) 2.8em; }
  .ld-bulk > * { flex: 1 1 100%; }
}
/* MD 메뉴에 [업체 발굴]이 더해져(2026-10-29) 1200~1439px 에서 머리글이 넘치지 않게 — 이름 표시를 줄이고 간격을 좁힘 (NECTAR 화면만) */
@media (min-width: 1200px) and (max-width: 1439px) {
  .th-nectar.admin .site-nav a, .th-nectar.admin .site-nav .linklike { padding: 0 7px; font-size: 14px; }
  .th-nectar.admin .admin-me { display: none; }
}
/* 협업 정보 표: 좁은 화면에서는 항목마다 세로로 쌓음 (옆으로 밀지 않고 바로 입력) */
@media (max-width: 640px) {
  .ld-collab thead { display: none; }
  .ld-collab, .ld-collab tbody, .ld-collab tr, .ld-collab th, .ld-collab td { display: block; width: 100%; }
  .ld-collab tr { padding: var(--s-2) var(--s-3); border-bottom: 1px solid var(--c-line); }
  .ld-collab th[scope="row"], .ld-collab td { padding: 4px 0; border: 0; min-width: 0; }
  .ld-collab td.small:empty, .ld-collab td.small:last-child { color: var(--c-muted); }
}
.ld-infoact { display: flex; flex-wrap: wrap; gap: var(--s-2); align-items: center; }

/* 업체 발굴 E단계 (2026-10-29) — 평가 등급·근거 표·입점 초대 */
.ld-grade, .ld-fs { display: inline-flex; align-items: center; min-height: 22px; padding: 0 8px; border-radius: 999px; font-size: 12px; font-weight: 700; white-space: nowrap; background: var(--c-surface-2); color: var(--c-muted); text-decoration: none; }
.ld-grade--top, .ld-fs--ok { background: #E3F4E8; color: #1D6B36; }
.ld-grade--review, .ld-fs--ask { background: #FFF1D6; color: var(--nt-honey-ink); }
.ld-grade--fill, .ld-fs--unknown { background: #EEE8E1; color: #5E5146; }
.ld-grade--no, .ld-fs--no { background: #FBE3E1; color: #A2281B; }
a.ld-grade:hover { filter: brightness(.96); }
.ld-headtags { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 0; }
.ld-score { display: flex; align-items: center; gap: var(--s-4); margin: var(--s-2) 0 var(--s-3); }
.ld-score__num { margin: 0; display: flex; align-items: baseline; gap: 4px; }
.ld-score__num strong { font-size: 44px; line-height: 1; font-variant-numeric: tabular-nums; color: var(--nt-ink); }
.ld-score__num span { color: var(--c-muted); font-weight: 700; }
.ld-ftable th[scope="row"] { font-weight: 700; white-space: nowrap; }
.ld-ftable td { vertical-align: top; }
.ld-copy { width: 100%; margin-top: 6px; font-family: ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; font-size: 13px; }
@media (max-width: 640px) {
  .ld-score__num strong { font-size: 36px; }
  /* 좁은 화면: 항목마다 한 덩어리 (항목·점수·상태 한 줄, 근거는 아래) */
  .ld-ftable thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .ld-ftable, .ld-ftable tbody { display: block; }
  .ld-ftable tr { display: grid; grid-template-columns: 1fr auto auto; gap: 4px 8px; align-items: center; padding: 10px 12px; border-bottom: 1px solid var(--c-line); }
  .ld-ftable th[scope="row"], .ld-ftable td { display: block; padding: 0; border: 0; background: none; white-space: normal; }
  .ld-ftable td:last-child { grid-column: 1 / -1; }
}
.nt-invite { text-align: center; }
.nt-invite .nt-lead { margin-inline: auto; max-width: 560px; }
