/* 협력사 창구(partner.egscompany.co.kr) — 키트(/shared/kit tokens·base) 위에 이 파일만. 색은 키트 토큰만(새 색 리터럴 없음).
   직원 앱 CSS(portal.css·app.css)는 싣지 않는다 — 필요한 부품(머리·알림 띠·칩·키값 목록·접기)만 같은 모양으로. */
body{background:var(--bg)}
.pa-head{position:sticky;top:0;z-index:var(--z-nav);background:var(--surface);border-bottom:1px solid var(--line)}
.pa-head-in{max-width:68rem;margin:0 auto;padding:0 1.5rem;height:var(--header-h);display:flex;align-items:center;gap:1rem}
.pa-brand{display:inline-flex;align-items:center;gap:.625rem;color:var(--text);font-weight:var(--fw-bold);font-size:var(--fs-title);text-decoration:none;
  white-space:nowrap;flex:none}      /* 메뉴가 늘어도(7단계 담당자·내 정보) 이름이 두 줄로 꺾이지 않게 — 메뉴 쪽이 줄바꿈 */
.pa-brand img{height:1.75rem;width:auto}
.pa-me{margin-left:auto;display:flex;align-items:center;gap:.875rem;font-size:var(--fs-label);flex-wrap:wrap}
.pa-me a{color:var(--text-sub)}
.pa-out{margin:0}
.pa-out button{background:none;border:0;padding:0;font:inherit;color:var(--text-sub)}
.pa-who{font-weight:var(--fw-semibold)}
.pa-main{max-width:68rem;margin:0 auto;padding:1.5rem 1.5rem 2.5rem}
.pa-foot{max-width:68rem;margin:0 auto;padding:0 1.5rem 2rem;font-size:var(--fs-hint);color:var(--text-sub)}
.pa-title{font-size:var(--fs-page-title);font-weight:var(--fw-bold);margin:0 0 .75rem}
.pa-titlebar{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:.75rem}
.pa-titlebar .pa-title{margin:0}
.pa-sub{margin:-.25rem 0 1rem;color:var(--text-sub);font-size:var(--fs-label)}
.card{margin-bottom:var(--gap)}
.card h2{font-size:var(--fs-title);font-weight:var(--fw-semibold);margin:0 0 .75rem}
.card h3{font-size:var(--fs-body);font-weight:var(--fw-semibold);margin:1rem 0 .5rem}
.pa-login{max-width:26rem;margin:2.5rem auto}
.pa-wide{width:100%}
.pa-fs{border:0;margin:0;padding:0;min-width:0}
.field{display:flex;flex-direction:column;margin-bottom:.875rem;min-width:0}   /* 칸 사이 간격 = 업무포털(감사 F11 — 로그인·비밀번호·견적 칸이 위아래로 붙어 있었다) */
.field .input{width:100%}
.tbl.text th,.tbl.text td{text-align:left;white-space:normal}
.tbl.text .num{text-align:right;white-space:nowrap}
.tbl.text .nowrap{white-space:nowrap}
.btn.dark{background:var(--ink);border-color:var(--ink);color:var(--on-ink)}
.flash{padding:.625rem .875rem;border-radius:var(--radius-sm);margin:0 0 .75rem;font-size:var(--fs-label);background:var(--th-bg);color:var(--text)}
.flash.error{background:var(--red-soft)}
.flash.success{background:var(--green-soft)}
.flash.warn{background:var(--yellow-soft)}
.chip{display:inline-flex;align-items:center;height:var(--chip-h);padding:0 .5625rem;border-radius:var(--radius-pill);
  font-size:var(--fs-badge);font-weight:var(--fw-semibold);white-space:nowrap;background:var(--th-bg);color:var(--text-sub)}
.chip.pa-open{background:var(--accent-soft);color:var(--accent)}
.chip.pa-sent,.chip.pa-won{background:var(--ink);color:var(--on-ink)}
.chip.pa-late{background:var(--red-soft);color:var(--red)}
.kv{margin:0;display:flex;flex-direction:column;gap:.5rem}
.kv div{display:grid;grid-template-columns:7rem minmax(0,1fr);gap:.5rem;font-size:var(--fs-label)}
.kv dt{color:var(--text-sub)}
.kv dd{margin:0}
.kv .pre{white-space:pre-line}
.pa-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.5rem}
.form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 .875rem}
.form-actions>.btn.dark,.form-actions>form:has(>.btn.dark){order:1}   /* 주 단추 맨 끝(키트 '폼 저장 단추 줄') */
.req{color:var(--red)}
.pa-files{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.375rem;font-size:var(--fs-label)}
.pa-files a{color:var(--text)}
.pa-qtbl .input.sm{width:100%;min-width:0;text-align:right}
.pa-qtbl{table-layout:fixed;width:100%}
.pa-qtbl .c-name{width:30%}.pa-qtbl .c-spec{width:22%}.pa-qtbl .c-qty{width:12%}.pa-qtbl .c-price{width:18%}.pa-qtbl .c-amt{width:18%}
.pa-amt,.pa-total td{font-variant-numeric:tabular-nums;white-space:nowrap}
.pa-total td{font-weight:var(--fw-bold);border-top:1px solid var(--line)}
.pa-tbl a{color:var(--text);font-weight:var(--fw-semibold)}
.fold{margin-top:.5rem}
.fold>summary{display:inline-flex;align-items:center;min-height:var(--ctl-h-sm);padding:0 .625rem;border:1px solid var(--line);
  border-radius:var(--radius-sm);background:var(--surface);font-size:var(--fs-btn-sm);font-weight:var(--fw-medium);list-style:none}
.fold>summary::-webkit-details-marker{display:none}
.fold[open]>summary{margin-bottom:.625rem;background:var(--th-bg)}
.fold>form{padding:.75rem;border-radius:var(--radius-sm);background:var(--surface2)}
.fold>form+form{margin-top:.5rem}
.fold>form{white-space:normal}       /* 표 칸(휴대폰 카드 줄 nowrap) 안에서도 안내 글이 줄바꿈되게 */
/* 담당자·내 정보(7단계 7-2 — partner/people): 맡은 일 체크 · 한 번만 보이는 비밀번호 · 읽기 전용 값 */
.pa-checks{display:flex;flex-wrap:wrap;gap:.375rem .875rem;margin-bottom:.75rem}
.pa-check{display:inline-flex;align-items:center;gap:.375rem;font-size:var(--fs-label);margin-bottom:.75rem}
.pa-checks .pa-check{margin-bottom:0}
.pa-pw{font-family:var(--font-mono);font-size:var(--fs-title);letter-spacing:.06em}
.pa-ro{display:flex;align-items:center;min-height:var(--ctl-h);font-size:var(--fs-body)}
.pa-me-roles{margin-bottom:.75rem}
/* 창구 메뉴·할 일(7단계 7-3 — partner/todo): 포털 앱 탭 모양(검정 글자 + 검정 밑줄) · 할 일 목록 줄 */
.pa-tabs{border-top:1px solid var(--line)}
.pa-tabs-in{max-width:68rem;margin:0 auto;padding:0 1.5rem;display:flex;gap:1.25rem;overflow-x:auto;scrollbar-width:none}
.pa-tabs a{display:inline-flex;align-items:center;height:2.5rem;color:var(--text-sub);font-size:var(--fs-tab);white-space:nowrap;
  border-bottom:2px solid transparent;text-decoration:none}
.pa-tabs a.on{color:var(--text);font-weight:var(--fw-semibold);border-bottom-color:var(--ink)}
@media (hover:hover) and (pointer:fine){.pa-tabs a:hover{color:var(--text)}}
.pa-todo{list-style:none;margin:0;padding:0}
.pa-todo li{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem .75rem;padding:.625rem 0;border-top:1px solid var(--line)}
.pa-todo li:first-child{border-top:0;padding-top:0}
.pa-todo a{color:var(--text);font-weight:var(--fw-semibold)}
.pa-tools{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:0 0 .875rem}
.pa-tools form{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.5rem;margin:0}
.pa-tools .file-input{max-width:16rem}
/* 납기 회신(7-5 — partner/orders.po_reply): 줄마다 묶음 칸(날짜 · 수량) */
.pa-reply{border:1px solid var(--line);border-radius:var(--radius-sm);padding:.625rem .75rem;margin:0 0 .75rem;min-width:0}
.pa-reply legend{padding:0 .25rem;font-size:var(--fs-label)}
.pa-reply-row{display:grid;grid-template-columns:minmax(0,11rem) minmax(0,9rem);gap:.5rem;margin-top:.375rem}
.pa-reply-row .df{display:block;width:100%}                  /* 날짜 칸 부품(달력)이 칸 폭을 넘어 수량 칸을 덮지 않게 */
.pa-reply-row .input{width:100%;min-width:0}
/* 입고 표기(7-6a — portal/buy/marks): 품목 줄 표기 번호 · 기준·체크리스트 접는 칸 */
.pa-mark{margin-top:.25rem;font-size:var(--fs-label)}
.pa-markbox{padding:.75rem;border-radius:var(--radius-sm);background:var(--surface2)}
.pa-markbox ol{list-style:decimal;padding-left:1.25rem;margin:0 0 .75rem}
/* 납품 등록·라벨(7-6b — partner/ships): 체크리스트 줄 · 라벨 틀(사내 입고 라벨 sq-label 과 같은 모양 · 인쇄 2열) */
.pa-checklist{display:flex;flex-direction:column;gap:.25rem}
.pa-checklist .pa-check{margin-bottom:0;align-items:flex-start}
.pa-labels{display:grid;grid-template-columns:repeat(auto-fill,minmax(20rem,1fr));gap:.75rem}
.pa-label{display:grid;grid-template-columns:minmax(0,1fr) 6.875rem;gap:.75rem;align-items:center;padding:.875rem 1rem;
  border:2px solid var(--ink);border-radius:var(--radius-sm);background:var(--surface);break-inside:avoid}
.pa-label-top{margin:0;font-size:var(--fs-hint);color:var(--text-sub)}
.pa-label-name{margin:2px 0;font-size:var(--fs-title);font-weight:var(--fw-bold)}
.pa-label-no{margin:0 0 .375rem;font-family:var(--font-mono);font-size:var(--fs-label)}
.pa-label-kv{margin:0;display:flex;flex-direction:column;gap:2px;font-size:var(--fs-label)}
.pa-label-kv div{display:flex;gap:.375rem}
.pa-label-kv dt{font-weight:var(--fw-bold);min-width:1.125rem}
.pa-label-kv dd{margin:0}
.pa-qr svg{display:block;width:100%;height:auto}
@media print{
  .pa-head,.pa-foot,.no-print,.flash{display:none!important}
  body{background:#fff}
  .pa-main{padding:0;max-width:none}
  .pa-labels{grid-template-columns:repeat(2,minmax(0,1fr));gap:6mm}
}
@media (max-width:946px){
  .pa-cols,.form-grid{grid-template-columns:minmax(0,1fr)}
}
@media (max-width:640px){
  .pa-head-in,.pa-main,.pa-foot,.pa-tabs-in{padding-left:1rem;padding-right:1rem}
  .pa-qtbl{table-layout:auto}
  .kv div{grid-template-columns:6rem minmax(0,1fr)}
  .input{font-size:16px}            /* iOS 포커스 확대 방지(휴대폰 입력칸 16px 이상) */
}
/* 견적의뢰 품목 줄의 부품 사진(구매포탈 단계 S-6c — partner/rfq.html): 썸네일 몇 장, 누르면 원본 */
.pv-phstrip{display:flex;flex-wrap:wrap;gap:.25rem;margin-top:.375rem}
.pv-phstrip img{display:block;width:3.5rem;height:3.5rem;object-fit:cover;border:1px solid var(--line);border-radius:var(--radius-sm)}
