/* 수정 | 2026-10-02 | 전체 페이지 라운드 통일: 큰 박스 12px·작은 콘텐츠 8px·버튼/입력 6px. 기존 타원형·원형 유지. */
/* 수정 | 2026-10-02 | 나라장터 상세 틀을 지원사업 상세의 패널·구획 규격으로 통일. */
/* 수정 | 2026-10-02 | 목록 검색 그림자/업무구분 강조선 제거, 비조작 라벨 12px로 축소. */
html body #main-content:has(#searchForm) :is(.nara-search-panel, .nara-search-panel-v12) { box-shadow: none !important; }
html body #main-content:has(#searchForm) :is(.nara-badge, .nara-line__dday) {
  box-sizing: border-box;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  height: 24px !important;
  min-height: 24px !important;
  padding: 2px 8px !important;
  font-size: 12px !important;
  line-height: 18px !important;
  font-weight: 600 !important;
  border-width: 1px !important;
  border-radius: var(--sc-radius-small) !important;
  letter-spacing: normal;
}
html body #main-content:has(#searchForm) .nara-line__ddaycol { gap: 5px !important; }
html body #main-content .nara-list-head-v10 { background-image: none !important; }
/* 수정 | 2026-10-02 | 원래 나라장터의 순서와 표 정렬 유지. */
/* 수정 | 2026-10-02 | 표 제목 칸 확대, 구획 제목 파란 세로선 및 상단 간격 축소. */
/* 수정 | 2026-10-02 | 정보표 외곽 12px, 수요기관 포함 좁은 화면 단일 열 및 빈 셀 제거. */
html body[data-bid-page="detail"] #main-content #detailView .nara-detail-dl {
  border-radius: var(--sc-radius-large) !important;
  overflow: hidden !important;
  min-width: 0;
}
@media (max-width: 980px) {
  html body[data-bid-page="detail"] #main-content #detailView .nara-detail-dl {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  html body[data-bid-page="detail"] #main-content #detailView .nara-doc-item {
    border-left: 0 !important;
  }
  html body[data-bid-page="detail"] #main-content #detailView .nara-doc-item--blank {
    display: none !important;
  }
}
html body[data-bid-page="detail"] #main-content #detailView .nara-section {
  margin-top: 16px !important;
  padding-top: 12px !important;
}
html body[data-bid-page="detail"] #main-content #detailView .nara-section h3 {
  border-left: 4px solid var(--sc-color-action-primary) !important;
  padding-left: 10px !important;
  margin-bottom: 10px !important;
}
html body[data-bid-page="detail"] #main-content #detailView .nara-doc-item {
  grid-template-columns: 140px minmax(0, 1fr) !important;
}
@media (max-width: 767px) {
  html body[data-bid-page="detail"] #main-content #detailView .nara-doc-item {
    grid-template-columns: 116px minmax(0, 1fr) !important;
  }
}
/* 수정 | 2026-10-02 | 첨부 시안 기준 상세 상단만 연한 배경의 12px 박스로 표시. */
html body[data-bid-page="detail"] #main-content #detailView.nara-detail .nara-detail__hero {
  padding: 32px 24px 24px !important;
  border: 1px solid var(--sc-color-border-default) !important;
  border-radius: var(--sc-radius-large) !important;
  background: var(--sc-color-surface-section) !important;
  box-shadow: none !important;
}
@media (max-width: 767px) {
  html body[data-bid-page="detail"] #main-content #detailView.nara-detail .nara-detail__hero {
    padding: 20px 16px !important;
  }
}
/* 수정 | 2026-10-02 | 상세 바깥 박스 및 정보 구획의 감싸는 면 제거. 데이터 표는 유지. */
html body[data-bid-page="detail"] #main-content #detailView,
html body[data-bid-page="detail"] #main-content #detailView .nara-detail__hero,
html body[data-bid-page="detail"] #main-content #detailView .nara-section {
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  padding-inline: 0 !important;
}
html body[data-bid-page="detail"] #main-content :is(.nara-detail, .nara-detail__hero, .nara-section, .nara-detail-dl) {
  box-shadow: none !important;
}
html body[data-bid-page="detail"] #main-content .nara-detail-dl { border-radius: 0 !important; }
html body[data-bid-page="detail"] #main-content .nara-detail { padding: 0 0 32px !important; }
html body[data-bid-page="detail"] #main-content .nara-detail__hero {
  padding: 32px 24px 24px !important;
  border: 1px solid var(--sc-color-border-default) !important;
  border-radius: var(--sc-radius-large) !important;
  background: var(--sc-color-surface-section) !important;
  gap: 24px;
}
html body[data-bid-page="detail"] #detailTitle {
  margin: 20px 0 8px !important;
  font-size: 32px !important;
  line-height: 44px !important;
  font-weight: 700;
  color: var(--sc-color-editorial-heading);
}
html body[data-bid-page="detail"] #main-content .nara-section {
  margin-top: 24px !important;
  padding: 20px !important;
  border: 1px solid var(--sc-color-border-default) !important;
  border-radius: 0 !important;
  background: var(--sc-color-surface-default);
}
html body[data-bid-page="detail"] #main-content .nara-section h3 {
  margin: 0 0 12px !important;
  padding: 0 !important;
  border: 0 !important;
  font-size: 20px !important;
  line-height: 30px !important;
  font-weight: 700;
}
html body[data-bid-page="detail"] #main-content .nara-badge {
  padding: 2px 8px !important;
  min-height: 24px;
  font-size: 12px !important;
  line-height: 18px !important;
  font-weight: 600;
  border-radius: var(--sc-radius-small) !important;
}
@media (max-width: 767px) {
  html body[data-bid-page="detail"] #main-content .nara-detail__hero { padding: 20px 16px !important; }
  html body[data-bid-page="detail"] #main-content .nara-section { padding: 16px !important; }
  html body[data-bid-page="detail"] #detailTitle { font-size: 24px !important; line-height: 34px !important; }
}
/*
 * 수정일자: 2026-10-02
 * 구분: 수정 / v1.6.20 기준
 * 변경내용: 입찰 D-Day·취소 배지 글자 대비 수정
 * 소스정리: 들여쓰기 2칸, 변경 구간 주석, 문법 검사
 */
/* Station C v1.5 | 나라장터 목록·상세 | 적용 화면 2개. 화면별 로드 순서는 PAGE_DEPENDENCY_MANIFEST.csv 참조. */
/* FO-ANN-BID-01 v1.1 layout, scoped to the COMMON content area. */

.sp-bid-page {
  /* Station C Design System - Semantic Color Tokens */
  --primary: var(--sc-color-action-primary);
  --secondary: var(--sc-color-text-heading);
  --accent: var(--sc-color-info);
  --neutral: var(--sc-color-text-secondary);
  --dday: var(--sc-color-warning);
  --success: var(--sc-color-success);
  --error: var(--sc-color-danger);
  --surface: var(--sc-color-surface-section);

  /* supporting primitives */
  --ink: var(--sc-color-text-heading);
  --text: var(--sc-color-text-primary);
  --muted: var(--sc-color-text-muted);
  --muted-2: var(--sc-color-text-muted);
  --line: var(--sc-color-border-default);
  --line-2: var(--sc-color-border-default);
  --soft: var(--sc-color-surface-subtle);
  --sky: var(--sc-color-surface-info);
  --mint: var(--sc-color-success-surface);
  --amber: var(--sc-color-warning-surface);
  --white: var(--sc-color-surface-default);

  /* legacy variable aliases used by this prototype */
  --navy: var(--secondary);
  --navy-2: var(--sc-color-text-heading);
  --blue: var(--primary);
  --blue-2: var(--primary);
  --teal: var(--accent);
  --soft-blue: var(--sky);
  --green: var(--success);
  --red: var(--error);

  --content: 87.5rem;
  --shadow: 0 0.625rem 1.75rem rgba(11, 41, 99, 0.08);
  --shadow-hover: 0 0.9375rem 2.375rem rgba(11, 41, 99, 0.12);
  --shadow-soft: 0 0.375rem 1.25rem rgba(11, 41, 99, 0.055);
  --focus: var(--sc-color-action-primary);

  --r-sm: var(--sc-radius-small);
  --r-md: var(--sc-radius-large);
  --r-lg: var(--sc-radius-large);
  --r-xl: 0.875rem;
  --r-pill: 62.4375rem;

  --motion-fast: 140ms;
  --motion-base: 220ms;
  --motion-slow: 320ms;
  --ease-out: cubic-bezier(0.22, 1, 0.36, 1);
  --ease-standard: cubic-bezier(0.2, 0.8, 0.2, 1);
}
/* ===== 나라장터 별도 탐색 ===== */
.sp-bid-page .nara-intro {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 1.5rem;
  padding: 1.0625rem 1.25rem;
  border: 0.0625rem solid var(--sc-color-border-default);
  border-radius: var(--sc-radius-large);
  background: var(--sc-color-surface-subtle);
  margin-bottom: 1.125rem;
}
.sp-bid-page .nara-intro__copy {
  display: flex;
  gap: 0.75rem;
  min-width: 0;
}
.sp-bid-page .nara-intro__icon {
  width: 2.125rem;
  height: 2.125rem;
  flex: 0 0 2.125rem;
  border-radius: var(--sc-radius-small);
  background: var(--sc-color-surface-info);
  display: grid;
  place-items: center;
  color: var(--primary);
}
.sp-bid-page .nara-intro__icon svg {
  width: 1.1875rem;
  height: 1.1875rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.sp-bid-page .nara-intro strong {
  display: block;
  color: var(--secondary);
  font-size: 0.9375rem;
  font-weight: 700;
}
.sp-bid-page .nara-intro p {
  margin-top: 0.1875rem;
  color: var(--sc-color-text-secondary);
  font-size: 0.875rem;
  line-height: 1.5;
}
.sp-bid-page .nara-intro__link {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.25rem;
  padding: 0 0.75rem;
  border: 0.0625rem solid var(--sc-color-border-default);
  border-radius: var(--sc-radius-small);
  background: var(--sc-color-surface-default);
  color: var(--primary);
  font-size: var(--sc-type-size-14);
  font-weight: 600;
}

.sp-bid-page .nara-filter {
  margin-top: 0;
  border: 0.0625rem solid var(--line);
  border-radius: var(--sc-radius-large);
  overflow: hidden;
  background: var(--sc-color-surface-default);
  box-shadow: var(--shadow-soft);
}
.sp-bid-page .nara-filter__head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding: 0.875rem 1.0625rem;
  background: var(--sc-color-surface-subtle);
  border-bottom: 0.0625rem solid var(--line);
}
.sp-bid-page .nara-filter__head h2 {
  font-size: 1.1875rem;
  line-height: 1.25;
  font-weight: 700;
}
.sp-bid-page .nara-filter__head p {
  margin-top: 0.1875rem;
  color: var(--muted);
  font-size: var(--sc-type-size-14);
}
.sp-bid-page .nara-reset {
  height: 2.125rem;
  border: 0;
  background: transparent;
  color: var(--sc-color-text-secondary);
  font-size: 0.9375rem;
  font-weight: 400;
  padding: 0 0.125rem;
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
}
.sp-bid-page .nara-reset svg {
  width: 0.875rem;
  height: 0.875rem;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.sp-bid-page .nara-reset:hover {
  color: var(--primary);
}
.sp-bid-page .nara-filter__row {
  display: grid;
  grid-template-columns: 9.0625rem minmax(0, 1fr);
  border-bottom: 0.0625rem solid var(--line);
}
.sp-bid-page .nara-filter__row:last-child {
  border-bottom: 0;
}
.sp-bid-page .nara-filter__label {
  padding: 0.8125rem 0.9375rem;
  background: var(--sc-color-surface-subtle);
  border-right: 0.0625rem solid var(--line);
  font-size: 0.9375rem;
  font-weight: 400;
  color: var(--sc-color-text-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.sp-bid-page .nara-filter__body {
  padding: 0.625rem 0.9375rem;
  display: flex;
  align-items: center;
  gap: 0.5rem 1.125rem;
  flex-wrap: wrap;
  min-width: 0;
}
.sp-bid-page .nara-checks {
  display: flex;
  align-items: center;
  gap: 0.5625rem 1.375rem;
  flex-wrap: wrap;
}
.sp-bid-page .nara-option {
  display: inline-flex;
  align-items: center;
  gap: 0.4375rem;
  min-height: 1.875rem;
  font-size: 0.9375rem;
  color: var(--sc-color-text-primary);
  cursor: pointer;
}
.sp-bid-page .nara-option input {
  appearance: none;
  -webkit-appearance: none;
  margin: 0;
  width: 1.125rem;
  height: 1.125rem;
  border: 0.09375rem solid var(--sc-color-border-control);
  background: var(--sc-color-surface-default);
  display: grid;
  place-items: center;
}
.sp-bid-page .nara-option input[type="radio"] {
  border-radius: 50%;
}
.sp-bid-page .nara-option input[type="radio"]:checked {
  border-color: var(--primary);
}
.sp-bid-page .nara-option input[type="radio"]:checked::after {
  content: "";
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: var(--primary);
}
.sp-bid-page .nara-option input[type="checkbox"] {
  border-radius: var(--sc-radius-control);
}
.sp-bid-page .nara-option input[type="checkbox"]:checked {
  border-color: var(--primary);
  background: var(--primary);
}
.sp-bid-page .nara-option input[type="checkbox"]:checked::after {
  content: "";
  width: 0.5rem;
  height: 0.3125rem;
  border-left: 0.125rem solid var(--sc-color-surface-default);
  border-bottom: 0.125rem solid var(--sc-color-surface-default);
  transform: rotate(-45deg) translateY(-0.0625rem);
}
.sp-bid-page .nara-text,
.sp-bid-page .nara-date {
  height: 2.625rem;
  border: 0.0625rem solid var(--line-2);
  border-radius: var(--sc-radius-control);
  background: var(--sc-color-surface-default);
  padding: 0 0.75rem;
  color: var(--sc-color-text-primary);
  font-size: 0.9375rem;
  outline: 0;
}
.sp-bid-page .nara-text:focus,
.sp-bid-page .nara-date:focus {
  border-color: var(--primary);
  box-shadow: 0 0 0 0.25rem rgba(7, 91, 216, 0.08);
}
.sp-bid-page .nara-text {
  width: min(35rem, 100%);
}
.sp-bid-page .nara-date {
  width: 10.625rem;
}
.sp-bid-page .nara-date-wrap {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.sp-bid-page .nara-date-wrap span {
  color: var(--sc-color-text-muted);
}
.sp-bid-page .nara-search-row {
  display: grid;
  grid-template-columns: 9.0625rem minmax(0, 1fr) auto;
  align-items: center;
}
.sp-bid-page .nara-search-row .nara-filter__label {
  align-self: stretch;
}
.sp-bid-page .nara-search-input {
  padding: 0.5625rem 0.625rem 0.5625rem 0.9375rem;
}
.sp-bid-page .nara-search-input .nara-text {
  width: 100%;
}
.sp-bid-page .nara-search-actions {
  display: flex;
  gap: 0.375rem;
  padding-right: 0.9375rem;
}
.sp-bid-page .nara-btn {
  height: 2.625rem;
  padding: 0 0.875rem;
  border: 0.0625rem solid var(--line-2);
  border-radius: var(--sc-radius-control);
  background: var(--sc-color-surface-default);
  color: var(--sc-color-text-primary);
  font-size: 0.9375rem;
  font-weight: 400;
}
.sp-bid-page .nara-btn--primary {
  min-width: 7.375rem;
  border-color: var(--secondary);
  background: var(--secondary);
  color: var(--sc-color-surface-default);
}
.sp-bid-page .nara-btn--primary:hover {
  background: var(--sc-color-text-heading);
}

.sp-bid-page .nara-applied {
  display: none;
  margin-top: 0.625rem;
  padding: 0.625rem 0.75rem;
  border: 0.0625rem solid var(--line);
  border-radius: var(--sc-radius-small);
  background: var(--sc-color-surface-subtle);
  align-items: flex-start;
  gap: 0.75rem;
}
.sp-bid-page .nara-applied.show {
  display: flex;
}
.sp-bid-page .nara-applied strong {
  font-size: 0.9375rem;
  font-weight: 400;
  color: var(--sc-color-text-primary);
  padding-top: 0.1875rem;
  white-space: nowrap;
}
.sp-bid-page .nara-tags {
  display: flex;
  gap: 0.375rem;
  flex-wrap: wrap;
}
.sp-bid-page .nara-tag {
  display: inline-flex;
  align-items: center;
  min-height: 1.875rem;
  padding: 0.25rem 0.625rem;
  border: 0.0625rem solid var(--sc-color-border-default);
  border-radius: 62.4375rem;
  background: var(--sc-color-surface-default);
  color: var(--sc-color-text-primary);
  font-size: var(--sc-type-size-14);
}

.sp-bid-page .nara-results {
  padding: 2.25rem 0 3.375rem;
}
.sp-bid-page .nara-results__head {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 1.25rem;
  margin-bottom: 0.875rem;
}
.sp-bid-page .nara-results__head h2 {
  font-size: 1.5625rem;
  letter-spacing: -0.035em;
  font-weight: 700;
}
.sp-bid-page .nara-results__head .count {
  color: var(--primary);
  font-weight: 700;
}
.sp-bid-page .nara-results__note {
  font-size: var(--sc-type-size-14);
  color: var(--sc-color-text-muted);
}
.sp-bid-page .nara-list {
  border-top: 0.125rem solid var(--secondary);
}
.sp-bid-page .nara-row {
  display: grid;
  grid-template-columns: 6.875rem minmax(0, 1fr) 13.125rem;
  gap: 1.375rem;
  padding: 1.375rem 1.125rem;
  border-bottom: 0.0625rem solid var(--sc-color-border-default);
  background: var(--sc-color-surface-default);
  transition:
    background-color 160ms ease,
    border-color 160ms ease;
}
.sp-bid-page .nara-row:hover {
  background: var(--sc-color-surface-default);
  border-bottom-color: var(--sc-color-border-default);
}
.sp-bid-page .nara-row__side {
  display: flex;
  align-items: flex-start;
  gap: 0.375rem;
  flex-wrap: wrap;
}
.sp-bid-page .nara-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 1.75rem;
  padding: 0 0.625rem;
  border-radius: 62.4375rem;
  font-size: var(--sc-type-size-14);
  font-weight: 700;
  border: 0.0625rem solid var(--sc-color-border-default);
  background: var(--sc-color-surface-subtle);
  color: var(--sc-color-text-secondary);
}
.sp-bid-page .nara-badge.open {
  background: var(--sc-color-success-surface);
  color: var(--sc-color-success);
  border-color: var(--sc-color-success);
}
.sp-bid-page .nara-badge.closed {
  background: var(--sc-color-surface-section);
  color: var(--sc-color-text-muted);
  border-color: var(--sc-color-border-default);
}
.sp-bid-page .nara-badge.type {
  background: var(--sc-color-surface-info);
  color: var(--sc-color-action-primary);
  border-color: var(--sc-color-border-default);
}
.sp-bid-page .nara-row__main {
  min-width: 0;
}
.sp-bid-page .nara-row__title {
  border: 0;
  background: none;
  padding: 0;
  text-align: left;
  color: var(--sc-color-text-heading);
  font-size: 1.125rem;
  line-height: 1.45;
  font-weight: 700;
  letter-spacing: -0.025em;
  cursor: pointer;
}
.sp-bid-page .nara-row__title:hover {
  color: var(--primary);
}
.sp-bid-page .nara-row__no {
  display: block;
  margin-top: 0.25rem;
  color: var(--sc-color-text-muted);
  font-size: var(--sc-type-size-14);
}
.sp-bid-page .nara-row__meta {
  display: grid;
  grid-template-columns: 4.375rem minmax(0, 1fr);
  gap: 0.25rem 0.5rem;
  margin-top: 0.75rem;
}
.sp-bid-page .nara-row__meta dt {
  color: var(--sc-color-text-muted);
  font-size: 0.875rem;
}
.sp-bid-page .nara-row__meta dd {
  color: var(--sc-color-text-primary);
  font-size: 0.875rem;
  min-width: 0;
}
.sp-bid-page .nara-row__dates {
  border-left: 0.0625rem solid var(--sc-color-border-default);
  padding-left: 1.25rem;
}
.sp-bid-page .nara-row__dates dl {
  display: grid;
  grid-template-columns: 3.4375rem 1fr;
  gap: 0.5rem 0.625rem;
}
.sp-bid-page .nara-row__dates dt {
  font-size: var(--sc-type-size-14);
  color: var(--sc-color-text-muted);
}
.sp-bid-page .nara-row__dates dd {
  font-size: 0.875rem;
  color: var(--sc-color-text-primary);
}
.sp-bid-page .nara-row__dates .deadline {
  color: var(--sc-color-danger);
  font-weight: 700;
}
.sp-bid-page .nara-empty {
  display: none;
  text-align: center;
  padding: 3.625rem 1.25rem;
  border-bottom: 0.0625rem solid var(--line);
  background: var(--sc-color-surface-subtle);
}
.sp-bid-page .nara-empty.show {
  display: block;
}
.sp-bid-page .nara-empty strong {
  font-size: 1.125rem;
}
.sp-bid-page .nara-empty p {
  margin-top: 0.4375rem;
  color: var(--sc-color-text-muted);
  font-size: 0.875rem;
}
.sp-bid-page .nara-empty .nara-btn {
  margin-top: 1rem;
}
.sp-bid-page .nara-pagination {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.25rem;
  margin-top: 1.375rem;
}
.sp-bid-page .nara-pagination button {
  min-width: 2rem;
  height: 2rem;
  border: 0.0625rem solid var(--line);
  border-radius: var(--sc-radius-control);
  background: var(--sc-color-surface-default);
  color: var(--sc-color-text-secondary);
  font-size: var(--sc-type-size-14);
}
.sp-bid-page .nara-pagination .current {
  background: var(--secondary);
  border-color: var(--secondary);
  color: var(--sc-color-surface-default);
  font-weight: 700;
}
.sp-bid-page .nara-pagination button:disabled {
  color: var(--sc-color-border-control);
  background: var(--sc-color-surface-canvas);
  cursor: not-allowed;
}

.sp-bid-page .nara-detail {
  display: none;
  padding: 0 0 3.75rem;
}
.sp-bid-page .nara-detail.show {
  display: block;
}
.sp-bid-page .nara-list-view.hidden {
  display: none;
}
.sp-bid-page .nara-detail__back {
  margin: 0.5rem 0 1.125rem;
  border: 0;
  background: none;
  color: var(--sc-color-text-secondary);
  font-size: 0.875rem;
  padding: 0;
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
}
.sp-bid-page .nara-detail__hero {
  padding: 1.5rem 0 1.375rem;
  border-top: 0.125rem solid var(--secondary);
  border-bottom: 0.0625rem solid var(--line);
}
.sp-bid-page .nara-detail__badges {
  display: flex;
  gap: 0.375rem;
  flex-wrap: wrap;
}
.sp-bid-page .nara-detail__hero h2 {
  margin-top: 0.75rem;
  font-size: 1.875rem;
  line-height: 1.35;
  letter-spacing: -0.035em;
  font-weight: 700;
}
.sp-bid-page .nara-detail__no {
  margin-top: 0.4375rem;
  color: var(--sc-color-text-muted);
  font-size: 0.875rem;
}
.sp-bid-page .nara-detail__cta {
  margin-top: 1.125rem;
  display: flex;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.sp-bid-page .nara-original {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.625rem;
  padding: 0 0.9375rem;
  border-radius: var(--sc-radius-control);
  background: var(--secondary);
  color: var(--sc-color-surface-default);
  font-size: 0.9375rem;
  font-weight: 600;
}
.sp-bid-page .nara-original:hover {
  background: var(--sc-color-text-heading);
}
.sp-bid-page .nara-detail__notice {
  margin-top: 0.875rem;
  padding: 0.6875rem 0.8125rem;
  border: 0.0625rem solid var(--sc-color-border-default);
  border-radius: var(--sc-radius-small);
  background: var(--sc-color-surface-subtle);
  color: var(--sc-color-text-secondary);
  font-size: var(--sc-type-size-14);
  line-height: 1.5;
}
.sp-bid-page .nara-section {
  margin-top: 1.75rem;
}
.sp-bid-page .nara-section h3 {
  font-size: 1.25rem;
  font-weight: 700;
  margin-bottom: 0.625rem;
}
.sp-bid-page .nara-detail-dl {
  display: grid;
  grid-template-columns: 10.625rem minmax(0, 1fr);
  border-top: 0.0625rem solid var(--sc-color-border-default);
}
.sp-bid-page .nara-detail-dl dt,
.sp-bid-page .nara-detail-dl dd {
  padding: 0.8125rem 1rem;
  border-bottom: 0.0625rem solid var(--sc-color-border-default);
}
.sp-bid-page .nara-detail-dl dt {
  background: var(--sc-color-surface-subtle);
  color: var(--sc-color-text-secondary);
  font-size: 0.875rem;
}
.sp-bid-page .nara-detail-dl dd {
  color: var(--sc-color-text-primary);
  font-size: 0.9375rem;
}
.sp-bid-page .nara-amount {
  font-variant-numeric: tabular-nums;
  font-weight: 600;
}
.sp-bid-page .nara-detail__bottom {
  margin-top: 1.75rem;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.875rem;
  border-top: 0.0625rem solid var(--line);
  padding-top: 1.125rem;
}
.sp-bid-page .nara-detail__bottom .nara-btn {
  min-width: 6.75rem;
}

@media (max-width: 68.75rem) {
  .sp-bid-page .nara-row {
    grid-template-columns: 5.9375rem minmax(0, 1fr) 11.25rem;
  }
  .sp-bid-page .nara-search-row {
    grid-template-columns: 9.0625rem minmax(0, 1fr);
  }
  .sp-bid-page .nara-search-actions {
    grid-column: 2;
    padding: 0 0.9375rem 0.75rem;
  }
  .sp-bid-page .nara-search-input {
    padding-right: 0.9375rem;
  }
}
@media (max-width: 56.25rem) {
  .sp-bid-page .nara-filter__row {
    grid-template-columns: 1fr;
  }
  .sp-bid-page .nara-filter__label {
    justify-content: flex-start;
    text-align: left;
    border-right: 0;
    border-bottom: 0.0625rem solid var(--line);
  }
  .sp-bid-page .nara-search-row {
    grid-template-columns: 1fr;
  }
  .sp-bid-page .nara-search-actions {
    grid-column: auto;
    padding: 0 0.875rem 0.75rem;
  }
  .sp-bid-page .nara-search-input {
    padding: 0.625rem 0.875rem;
  }
  .sp-bid-page .nara-row {
    grid-template-columns: 1fr;
    gap: 0.75rem;
    padding: 1.125rem 0.875rem;
  }
  .sp-bid-page .nara-row__dates {
    border-left: 0;
    border-top: 0.0625rem solid var(--sc-color-surface-section);
    padding: 0.75rem 0 0;
  }
  .sp-bid-page .nara-row__dates dl {
    grid-template-columns: 3.4375rem 1fr 3.4375rem 1fr;
  }
  .sp-bid-page .nara-detail-dl {
    grid-template-columns: 8.75rem 1fr;
  }
}
@media (max-width: 43.75rem) {
  .sp-bid-page .nara-intro {
    flex-direction: column;
  }
  .sp-bid-page .nara-intro__link {
    width: 100%;
  }
  .sp-bid-page .nara-results {
    padding-top: 1.875rem;
  }
  .sp-bid-page .nara-results__head {
    align-items: flex-start;
    flex-direction: column;
    gap: 0.3125rem;
  }
  .sp-bid-page .nara-date {
    width: 100%;
  }
  .sp-bid-page .nara-date-wrap {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    width: 100%;
  }
  .sp-bid-page .nara-row__dates dl {
    grid-template-columns: 3.4375rem 1fr;
  }
  .sp-bid-page .nara-detail__hero h2 {
    font-size: 1.5625rem;
  }
  .sp-bid-page .nara-detail-dl {
    grid-template-columns: 1fr;
  }
  .sp-bid-page .nara-detail-dl dt {
    padding-bottom: 0.375rem;
    border-bottom: 0;
  }
  .sp-bid-page .nara-detail-dl dd {
    padding-top: 0;
  }
  .sp-bid-page .nara-detail__bottom {
    flex-direction: column-reverse;
    align-items: stretch;
  }
  .sp-bid-page .nara-detail__bottom > * {
    width: 100%;
    justify-content: center;
  }
}

/* ===== 나라장터 v3 - 대량 공고 탐색용 고밀도 리스트 ===== */
.sp-bid-page .nara-intro {
  padding: 0.8125rem 1rem;
  margin-bottom: 1rem;
  align-items: center;
}
.sp-bid-page .nara-intro__icon {
  width: 1.875rem;
  height: 1.875rem;
  flex-basis: 1.875rem;
  border-radius: var(--sc-radius-small);
}
.sp-bid-page .nara-intro__icon svg {
  width: 1.0625rem;
  height: 1.0625rem;
}
.sp-bid-page .nara-intro strong {
  font-size: 0.875rem;
}
.sp-bid-page .nara-intro p {
  font-size: var(--sc-type-size-14);
  margin-top: 0.125rem;
}
.sp-bid-page .nara-intro__link {
  min-height: 2.125rem;
  font-size: var(--sc-type-size-14);
}

/* 검색은 한 줄, 필터는 압축 툴바로 구성 */
.sp-bid-page .nara-search-panel {
  border: 0.0625rem solid var(--line);
  border-radius: var(--sc-radius-large);
  background: var(--sc-color-surface-default);
  box-shadow: var(--shadow-soft);
  overflow: hidden;
}
.sp-bid-page .nara-search-main {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 0.5rem;
  padding: 0.875rem 1rem;
  background: var(--sc-color-surface-subtle);
  border-bottom: 0.0625rem solid var(--line);
}
.sp-bid-page .nara-search-main .nara-text {
  width: 100%;
  height: 2.75rem;
  background: var(--sc-color-surface-default);
}
.sp-bid-page .nara-search-main .nara-btn {
  height: 2.75rem;
  min-width: 6.75rem;
}
.sp-bid-page .nara-filter-bar {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.625rem 1rem;
  flex-wrap: wrap;
}
.sp-bid-page .nara-filter-control {
  height: 2.375rem;
  border: 0.0625rem solid var(--line-2);
  border-radius: var(--sc-radius-control);
  background: var(--sc-color-surface-default);
  color: var(--sc-color-text-primary);
  padding: 0 2.125rem 0 0.6875rem;
  font-size: 0.875rem;
  min-width: 7.875rem;
}
.sp-bid-page .nara-filter-control.institution {
  width: 15rem;
  padding-right: 0.6875rem;
}
.sp-bid-page .nara-filter-bar__spacer {
  flex: 1 1 auto;
}
.sp-bid-page .nara-detail-toggle {
  height: 2.375rem;
  padding: 0 0.75rem;
  border: 0.0625rem solid var(--line-2);
  border-radius: var(--sc-radius-small);
  background: var(--sc-color-surface-default);
  color: var(--primary);
  font-size: 0.875rem;
  display: inline-flex;
  align-items: center;
  gap: 0.375rem;
}
.sp-bid-page .nara-detail-toggle[aria-expanded="true"] {
  background: var(--sky);
  border-color: var(--sc-color-border-default);
}
.sp-bid-page .nara-reset {
  height: 2.375rem;
  font-size: 0.875rem;
  padding: 0 0.375rem;
}
.sp-bid-page .nara-advanced {
  display: none;
  padding: 0.75rem 1rem 0.875rem;
  border-top: 0.0625rem solid var(--line);
  background: var(--sc-color-surface-default);
}
.sp-bid-page .nara-advanced.show {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.875rem 1.375rem;
}
.sp-bid-page .nara-advanced__group {
  display: grid;
  grid-template-columns: 5.75rem minmax(0, 1fr);
  align-items: center;
  gap: 0.625rem;
}
.sp-bid-page .nara-advanced__label {
  font-size: 0.875rem;
  color: var(--sc-color-text-secondary);
}
.sp-bid-page .nara-advanced .nara-date {
  height: 2.375rem;
  font-size: 0.875rem;
  width: 10rem;
  border-radius: var(--sc-radius-small);
}
.sp-bid-page .nara-applied {
  margin-top: 0.5rem;
  padding: 0.5rem 0.625rem;
  min-height: 2.375rem;
}
.sp-bid-page .nara-applied strong {
  font-size: var(--sc-type-size-14);
}
.sp-bid-page .nara-tag {
  min-height: 1.625rem;
  padding: 0.1875rem 0.5rem;
  font-size: var(--sc-type-size-14);
}

/* 결과 상단: 총 건수 + 정렬 + 페이지당 표시 건수 */
.sp-bid-page .nara-results {
  padding: 1.875rem 0 3.375rem;
}
.sp-bid-page .nara-results__toolbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.125rem;
  margin-bottom: 0.625rem;
}
.sp-bid-page .nara-results__count {
  font-size: 1.25rem;
  font-weight: 700;
  letter-spacing: -0.025em;
}
.sp-bid-page .nara-results__count .count {
  color: var(--primary);
}
.sp-bid-page .nara-results__options {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  flex-wrap: wrap;
}
.sp-bid-page .nara-select-wrap {
  display: flex;
  align-items: center;
  gap: 0.375rem;
}
.sp-bid-page .nara-select-wrap label {
  font-size: var(--sc-type-size-14);
  color: var(--sc-color-text-muted);
  white-space: nowrap;
}
.sp-bid-page .nara-list-select {
  height: 2.25rem;
  min-width: 7.875rem;
  border: 0.0625rem solid var(--line-2);
  border-radius: var(--sc-radius-control);
  background: var(--sc-color-surface-default);
  padding: 0 1.875rem 0 0.625rem;
  color: var(--sc-color-text-primary);
  font-size: var(--sc-type-size-14);
}
.sp-bid-page .nara-list-select.page-size {
  min-width: 6rem;
}

/* 줄 리스트: 한 화면에 가능한 많은 공고를 스캔 */
.sp-bid-page .nara-list {
  border-top: 0.125rem solid var(--secondary);
  border-bottom: 0.0625rem solid var(--line);
  background: var(--sc-color-surface-default);
}
.sp-bid-page .nara-list-header,
.sp-bid-page .nara-line {
  display: grid;
  grid-template-columns: 4.875rem 4.5rem minmax(0, 1fr) 11.875rem 7rem 8.25rem;
  align-items: center;
  column-gap: 0.875rem;
}
.sp-bid-page .nara-list-header {
  min-height: 2.625rem;
  padding: 0 0.875rem;
  background: var(--sc-color-surface-subtle);
  border-bottom: 0.0625rem solid var(--sc-color-border-default);
  color: var(--sc-color-text-secondary);
  font-size: var(--sc-type-size-14);
  font-weight: 600;
  text-align: center;
}
.sp-bid-page .nara-list-header .title-col {
  text-align: left;
}
.sp-bid-page .nara-line {
  min-height: 4rem;
  padding: 0.5rem 0.875rem;
  border-bottom: 0.0625rem solid var(--sc-color-border-default);
  transition: background-color 150ms ease;
}
.sp-bid-page .nara-line:last-child {
  border-bottom: 0;
}
.sp-bid-page .nara-line:hover {
  background: var(--sc-color-surface-subtle);
}
.sp-bid-page .nara-line__status,
.sp-bid-page .nara-line__type {
  text-align: center;
  font-size: var(--sc-type-size-14);
}
.sp-bid-page .nara-status-text {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 3.5rem;
  height: 1.625rem;
  border-radius: 62.4375rem;
  border: 0.0625rem solid var(--sc-color-success);
  background: var(--sc-color-success-surface);
  color: var(--sc-color-success);
  font-weight: 600;
}
.sp-bid-page .nara-status-text.closed {
  border-color: var(--sc-color-border-default);
  background: var(--sc-color-surface-section);
  color: var(--sc-color-text-muted);
}
.sp-bid-page .nara-type-text {
  color: var(--sc-color-text-secondary);
}
.sp-bid-page .nara-line__title {
  min-width: 0;
}
.sp-bid-page .nara-line__title button {
  display: block;
  width: 100%;
  border: 0;
  background: none;
  padding: 0;
  text-align: left;
  color: var(--sc-color-text-heading);
  font-size: 0.9375rem;
  line-height: 1.35;
  font-weight: 700;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sp-bid-page .nara-line__title button:hover {
  color: var(--primary);
  text-decoration: underline;
  text-underline-offset: 0.1875rem;
}
.sp-bid-page .nara-line__no {
  display: block;
  margin-top: 0.1875rem;
  color: var(--sc-color-text-muted);
  font-size: var(--sc-type-size-14);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sp-bid-page .nara-line__institution {
  font-size: var(--sc-type-size-14);
  color: var(--sc-color-text-primary);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.sp-bid-page .nara-line__date {
  font-size: var(--sc-type-size-14);
  color: var(--sc-color-text-secondary);
  text-align: center;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
}
.sp-bid-page .nara-line__date.deadline {
  color: var(--sc-color-danger);
  font-weight: 700;
}
.sp-bid-page .nara-empty {
  border-bottom: 0;
}
.sp-bid-page .nara-pagination {
  margin-top: 1.125rem;
}

/* 목록이 짧아도 헤더와 툴바가 실제 대량목록 UI 구조를 보여주도록 유지 */
.sp-bid-page .nara-results__note {
  margin-top: 0.5rem;
  font-size: var(--sc-type-size-14);
  color: var(--sc-color-text-muted);
}

@media (max-width: 73.75rem) {
  .sp-bid-page .nara-list-header,
  .sp-bid-page .nara-line {
    grid-template-columns: 4.375rem 3.875rem minmax(0, 1fr) 10rem 6.25rem 7.375rem;
    column-gap: 0.625rem;
  }
  .sp-bid-page .nara-filter-control.institution {
    width: 12.5rem;
  }
}
@media (max-width: 56.25rem) {
  .sp-bid-page .nara-search-main {
    grid-template-columns: 1fr;
  }
  .sp-bid-page .nara-search-main .nara-btn {
    width: 100%;
  }
  .sp-bid-page .nara-filter-bar {
    align-items: stretch;
  }
  .sp-bid-page .nara-filter-control,
  .sp-bid-page .nara-filter-control.institution {
    flex: 1 1 11.25rem;
    width: auto;
  }
  .sp-bid-page .nara-filter-bar__spacer {
    display: none;
  }
  .sp-bid-page .nara-detail-toggle,
  .sp-bid-page .nara-reset {
    flex: 0 0 auto;
  }
  .sp-bid-page .nara-advanced.show {
    grid-template-columns: 1fr;
  }
  .sp-bid-page .nara-advanced__group {
    grid-template-columns: 1fr;
    gap: 0.4375rem;
  }
  .sp-bid-page .nara-date-wrap {
    width: 100%;
  }
  .sp-bid-page .nara-advanced .nara-date {
    flex: 1 1 8.75rem;
    width: auto;
  }
  .sp-bid-page .nara-results__toolbar {
    align-items: flex-start;
    flex-direction: column;
  }
  .sp-bid-page .nara-results__options {
    width: 100%;
  }
  .sp-bid-page .nara-select-wrap {
    flex: 1 1 auto;
  }
  .sp-bid-page .nara-list-select {
    flex: 1 1 auto;
    width: 100%;
  }
  .sp-bid-page .nara-list-header {
    display: none;
  }
  .sp-bid-page .nara-line {
    grid-template-columns: 4rem 3.375rem minmax(0, 1fr) 7.375rem;
    grid-template-areas: "status type title deadline" "status type institution published";
    min-height: 4.75rem;
    row-gap: 0.25rem;
    padding: 0.5625rem 0.625rem;
  }
  .sp-bid-page .nara-line__status {
    grid-area: status;
  }
  .sp-bid-page .nara-line__type {
    grid-area: type;
  }
  .sp-bid-page .nara-line__title {
    grid-area: title;
  }
  .sp-bid-page .nara-line__institution {
    grid-area: institution;
  }
  .sp-bid-page .nara-line__published {
    grid-area: published;
  }
  .sp-bid-page .nara-line__deadline {
    grid-area: deadline;
  }
  .sp-bid-page .nara-line__date {
    text-align: right;
  }
  .sp-bid-page .nara-line__no {
    display: none;
  }
}
@media (max-width: 40rem) {
  .sp-bid-page .container {
    width: min(var(--content), calc(100% - 1.75rem));
  }
  .sp-bid-page .nara-intro {
    align-items: flex-start;
    flex-direction: column;
  }
  .sp-bid-page .nara-intro__link {
    align-self: flex-start;
  }
  .sp-bid-page .nara-filter-bar {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .sp-bid-page .nara-filter-control,
  .sp-bid-page .nara-filter-control.institution {
    width: 100%;
    min-width: 0;
  }
  .sp-bid-page .nara-detail-toggle,
  .sp-bid-page .nara-reset {
    width: 100%;
    justify-content: center;
  }
  .sp-bid-page .nara-results__options {
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .sp-bid-page .nara-select-wrap {
    display: grid;
    gap: 0.25rem;
  }
  .sp-bid-page .nara-line {
    grid-template-columns: 3.25rem minmax(0, 1fr) 6.5rem;
    grid-template-areas: "type title deadline" "status institution published";
    column-gap: 0.5rem;
    min-height: 5.125rem;
  }
  .sp-bid-page .nara-status-text {
    min-width: 3rem;
    height: 1.5rem;
    font-size: var(--sc-type-size-14);
  }
  .sp-bid-page .nara-line__type {
    font-size: var(--sc-type-size-14);
  }
  .sp-bid-page .nara-line__title button {
    font-size: 0.875rem;
  }
  .sp-bid-page .nara-line__institution,
  .sp-bid-page .nara-line__date {
    font-size: var(--sc-type-size-14);
  }
}

/* ===== 나라장터 v4 - 정렬된 검색 + 헤더 없는 원라인 목록 ===== */
/* 맞춤사업추천 상단 요약 바와 동일한 시각 밀도 */
.sp-bid-page .nara-intro {
  min-height: 3.25rem !important;
  margin-bottom: 1.125rem !important;
  padding: 0.625rem 0.875rem !important;
  border-color: var(--sc-color-border-default) !important;
  border-radius: var(--sc-radius-large) !important;
  background: linear-gradient(
    180deg,
    var(--sc-color-surface-subtle) 0%,
    var(--sc-color-surface-info) 100%
  ) !important;
  box-shadow: none !important;
  align-items: center !important;
}
.sp-bid-page .nara-intro__copy {
  align-items: center !important;
  gap: 0.625rem !important;
  min-width: 0 !important;
  overflow: hidden !important;
}
.sp-bid-page .nara-intro__icon {
  width: 1.75rem !important;
  height: 1.75rem !important;
  flex: 0 0 1.75rem !important;
  border-radius: var(--sc-radius-small) !important;
}
.sp-bid-page .nara-intro__icon svg {
  width: 1rem !important;
  height: 1rem !important;
}
.sp-bid-page .nara-intro__line {
  display: flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  min-width: 0 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  font-size: var(--sc-type-size-14) !important;
  line-height: 1.4 !important;
  color: var(--sc-color-text-muted) !important;
}
.sp-bid-page .nara-intro__line strong {
  display: inline !important;
  flex: 0 0 auto !important;
  font-size: var(--sc-type-size-14) !important;
  font-weight: 700 !important;
  color: var(--secondary) !important;
}
.sp-bid-page .nara-intro__line span {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.sp-bid-page .nara-intro__link {
  min-height: 2rem !important;
  height: 2rem !important;
  padding: 0 0.625rem !important;
  border-radius: var(--sc-radius-small) !important;
  font-size: var(--sc-type-size-14) !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
}

/* 검색 필터: 한 줄 그리드 정렬 */
.sp-bid-page .nara-search-panel {
  padding: 0.875rem 1rem !important;
  overflow: visible !important;
  background: var(--sc-color-surface-subtle) !important;
  border-color: var(--sc-color-border-default) !important;
  box-shadow: none !important;
}
.sp-bid-page .nara-search-row-v4 {
  display: grid !important;
  grid-template-columns: minmax(22.5rem, 1fr) 7.875rem 8.875rem 13.125rem 7rem 4.875rem !important;
  gap: 0.5rem !important;
  align-items: center !important;
}
.sp-bid-page .nara-keyword-group {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 5.25rem !important;
  gap: 0.375rem !important;
  min-width: 0 !important;
}
.sp-bid-page .nara-keyword-group .nara-text,
.sp-bid-page .nara-keyword-group .nara-btn,
.sp-bid-page .nara-search-row-v4 .nara-filter-control,
.sp-bid-page .nara-search-row-v4 .nara-detail-toggle,
.sp-bid-page .nara-search-row-v4 .nara-reset {
  height: 2.625rem !important;
  margin: 0 !important;
}
.sp-bid-page .nara-keyword-group .nara-text {
  width: 100% !important;
  min-width: 0 !important;
  border-radius: var(--sc-radius-control) !important;
  font-size: 0.875rem !important;
}
.sp-bid-page .nara-keyword-group .nara-btn {
  min-width: 0 !important;
  padding: 0 0.75rem !important;
  border-radius: var(--sc-radius-control) !important;
  font-size: 0.875rem !important;
}
.sp-bid-page .nara-search-row-v4 .nara-filter-control {
  width: 100% !important;
  min-width: 0 !important;
  border-radius: var(--sc-radius-control) !important;
  font-size: 0.875rem !important;
  padding-left: 0.625rem !important;
}
.sp-bid-page .nara-search-row-v4 .institution {
  padding-right: 0.625rem !important;
}
.sp-bid-page .nara-search-row-v4 .nara-detail-toggle {
  width: 100% !important;
  justify-content: center !important;
  padding: 0 0.5625rem !important;
  font-size: 0.875rem !important;
}
.sp-bid-page .nara-search-row-v4 .nara-reset {
  width: 100% !important;
  justify-content: center !important;
  padding: 0 0.375rem !important;
  font-size: var(--sc-type-size-14) !important;
}
.sp-bid-page .nara-advanced {
  margin: 0.75rem -1rem -0.875rem !important;
  padding: 0.75rem 1rem 0.875rem !important;
}
.sp-bid-page .nara-applied {
  margin-top: 0.5rem !important;
}

/* 결과 툴바: 시각 라벨은 숨기고 셀렉트 자체 문구로 의미 전달 */
.sp-bid-page .nara-results {
  padding-top: 1.75rem !important;
}
.sp-bid-page .nara-results__toolbar {
  align-items: center !important;
  margin-bottom: 0.625rem !important;
}
.sp-bid-page .nara-results__count {
  font-size: 1.25rem !important;
}
.sp-bid-page .nara-results__options {
  gap: 0.375rem !important;
  flex-wrap: nowrap !important;
}
.sp-bid-page .nara-list-select {
  height: 2.25rem !important;
  min-width: 7.875rem !important;
  font-size: var(--sc-type-size-14) !important;
  border-radius: var(--sc-radius-control) !important;
}
.sp-bid-page .nara-list-select.page-size {
  min-width: 7.375rem !important;
}

/* 테이블 헤더를 없앤 고밀도 한 줄 리스트 */
.sp-bid-page .nara-list {
  border-top: 0.0625rem solid var(--sc-color-border-default) !important;
  border-bottom: 0.0625rem solid var(--sc-color-border-default) !important;
  overflow: hidden !important;
}
.sp-bid-page .nara-list-header {
  display: none !important;
}
.sp-bid-page .nara-line {
  display: grid !important;
  grid-template-columns: 3.75rem 2.75rem minmax(0, 1fr) 10rem 7rem 8.75rem !important;
  align-items: center !important;
  column-gap: 0.75rem !important;
  min-height: 3.375rem !important;
  height: 3.375rem !important;
  padding: 0 0.75rem !important;
  border-bottom: 0.0625rem solid var(--sc-color-border-subtle) !important;
  white-space: nowrap !important;
  overflow: hidden !important;
}
.sp-bid-page .nara-line:last-child {
  border-bottom: 0 !important;
}
.sp-bid-page .nara-line:hover {
  background: var(--sc-color-surface-subtle) !important;
}
.sp-bid-page .nara-status-text {
  min-width: 3.25rem !important;
  height: 1.5rem !important;
  padding: 0 0.5rem !important;
  font-size: var(--sc-type-size-14) !important;
  font-weight: 600 !important;
}
.sp-bid-page .nara-type-text {
  font-size: var(--sc-type-size-14) !important;
  color: var(--sc-color-text-secondary) !important;
  text-align: center !important;
}
.sp-bid-page .nara-line__title {
  display: flex !important;
  align-items: center !important;
  gap: 0.5625rem !important;
  min-width: 0 !important;
  overflow: hidden !important;
}
.sp-bid-page .nara-line__title button {
  display: block !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
  width: auto !important;
  font-size: 0.9375rem !important;
  line-height: 1.3 !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.sp-bid-page .nara-line__no {
  display: inline !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  max-width: 8.4375rem !important;
  color: var(--sc-color-text-muted) !important;
  font-size: var(--sc-type-size-14) !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.sp-bid-page .nara-line__institution {
  font-size: var(--sc-type-size-14) !important;
  color: var(--sc-color-text-primary) !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.sp-bid-page .nara-line__date {
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 0.3125rem !important;
  font-size: var(--sc-type-size-14) !important;
  text-align: right !important;
  white-space: nowrap !important;
}
.sp-bid-page .nara-inline-label {
  font-size: 0.875rem !important;
  color: var(--sc-color-text-muted) !important;
  font-weight: 400 !important;
}
.sp-bid-page .nara-line__deadline.deadline {
  color: var(--sc-color-danger) !important;
  font-weight: 700 !important;
}

@media (max-width: 73.75rem) {
  .sp-bid-page .nara-search-row-v4 {
    grid-template-columns: minmax(18.75rem, 1fr) 7.25rem 8rem 11.25rem 6.5rem 4.5rem !important;
  }
  .sp-bid-page .nara-line {
    grid-template-columns: 3.625rem 2.625rem minmax(0, 1fr) 9.0625rem 6.25rem 7.875rem !important;
    column-gap: 0.5625rem !important;
  }
  .sp-bid-page .nara-line__no {
    max-width: 6.875rem !important;
  }
}
@media (max-width: 61.25rem) {
  .sp-bid-page .nara-search-row-v4 {
    grid-template-columns: minmax(0, 1fr) 7.5rem 8.5rem !important;
  }
  .sp-bid-page .nara-keyword-group {
    grid-column: 1/-1 !important;
  }
  .sp-bid-page .nara-search-row-v4 .institution {
    grid-column: 1/2 !important;
  }
  .sp-bid-page .nara-search-row-v4 .nara-detail-toggle {
    grid-column: 2/3 !important;
  }
  .sp-bid-page .nara-search-row-v4 .nara-reset {
    grid-column: 3/4 !important;
  }
  .sp-bid-page .nara-line {
    grid-template-columns: 3.625rem minmax(0, 1fr) 8.25rem !important;
    height: 3.375rem !important;
    min-height: 3.375rem !important;
  }
  .sp-bid-page .nara-type-text,
  .sp-bid-page .nara-line__institution,
  .sp-bid-page .nara-line__published,
  .sp-bid-page .nara-line__no {
    display: none !important;
  }
  .sp-bid-page .nara-line__deadline {
    justify-content: flex-end !important;
  }
}
@media (max-width: 43.75rem) {
  .sp-bid-page .nara-intro {
    min-height: 3rem !important;
    padding: 0.5rem 0.625rem !important;
    gap: 0.5rem !important;
  }
  .sp-bid-page .nara-intro__icon {
    display: none !important;
  }
  .sp-bid-page .nara-intro__line span {
    display: none !important;
  }
  .sp-bid-page .nara-intro__line strong {
    font-size: var(--sc-type-size-14) !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }
  .sp-bid-page .nara-intro__link {
    font-size: 0.875rem !important;
    height: 1.875rem !important;
    min-height: 1.875rem !important;
  }
  .sp-bid-page .nara-search-panel {
    padding: 0.75rem !important;
  }
  .sp-bid-page .nara-search-row-v4 {
    grid-template-columns: 1fr 1fr !important;
  }
  .sp-bid-page .nara-keyword-group {
    grid-column: 1/-1 !important;
  }
  .sp-bid-page .nara-search-row-v4 .institution {
    grid-column: 1/-1 !important;
  }
  .sp-bid-page .nara-search-row-v4 .nara-detail-toggle,
  .sp-bid-page .nara-search-row-v4 .nara-reset {
    grid-column: auto !important;
  }
  .sp-bid-page .nara-advanced {
    margin: 0.625rem -0.75rem -0.75rem !important;
    padding: 0.625rem 0.75rem 0.75rem !important;
  }
  .sp-bid-page .nara-results__toolbar {
    gap: 0.625rem !important;
  }
  .sp-bid-page .nara-results__options {
    gap: 0.25rem !important;
  }
  .sp-bid-page .nara-list-select {
    min-width: 7rem !important;
    max-width: 8.125rem !important;
  }
  .sp-bid-page .nara-list-select.page-size {
    min-width: 6.875rem !important;
    max-width: 7.5rem !important;
  }
  .sp-bid-page .nara-line {
    grid-template-columns: 3.25rem minmax(0, 1fr) 6.75rem !important;
    column-gap: 0.4375rem !important;
    padding: 0 0.5rem !important;
    height: 3.125rem !important;
    min-height: 3.125rem !important;
  }
  .sp-bid-page .nara-line__title button {
    font-size: 0.875rem !important;
  }
  .sp-bid-page .nara-status-text {
    min-width: 2.875rem !important;
    height: 1.375rem !important;
    font-size: 0.875rem !important;
    padding: 0 0.375rem !important;
  }
  .sp-bid-page .nara-line__date {
    font-size: var(--sc-type-size-14) !important;
  }
  .sp-bid-page .nara-inline-label {
    display: none !important;
  }
}

/* ===== 나라장터 v5 - 검색 위계 / 원라인 20건 / 타이포 최종 ===== */
/* 안내바: 맞춤사업추천 요약바와 동일한 한 줄 밀도 */
.sp-bid-page .nara-intro__copy {
  display: flex !important;
  align-items: center !important;
  gap: 0.75rem !important;
  min-width: 0 !important;
  white-space: nowrap !important;
}
.sp-bid-page .nara-intro__label {
  flex: 0 0 auto !important;
  color: var(--primary) !important;
  font-size: var(--sc-type-size-14) !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
}
.sp-bid-page .nara-intro__divider {
  width: 0.0625rem !important;
  height: 0.875rem !important;
  background: var(--sc-color-border-default) !important;
  flex: 0 0 auto !important;
}
.sp-bid-page .nara-intro__line {
  display: block !important;
  margin: 0 !important;
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  color: var(--sc-color-text-primary) !important;
  font-size: 0.875rem !important;
  font-weight: 500 !important;
  line-height: 1.4 !important;
}

/* 검색영역: 1차 조건 -> 2차 공고검색의 위계 */
.sp-bid-page .nara-search-panel {
  padding: 1rem 1.125rem !important;
  background: var(--sc-color-surface-default) !important;
  border: 0.0625rem solid var(--line) !important;
  border-radius: var(--sc-radius-large) !important;
  box-shadow: 0 0.375rem 1.25rem rgba(11, 41, 99, 0.045) !important;
}
.sp-bid-page .nara-search-primary {
  display: grid !important;
  grid-template-columns: 9.375rem 9.375rem minmax(16.25rem, 1fr) 10rem !important;
  gap: 1rem !important;
  align-items: end !important;
}
.sp-bid-page .nara-field {
  display: grid !important;
  gap: 0.4375rem !important;
  min-width: 0 !important;
}
.sp-bid-page .nara-field__label,
.sp-bid-page .nara-keyword-label {
  color: var(--sc-color-text-primary) !important;
  font-size: 0.9375rem !important;
  font-weight: 600 !important;
  line-height: 1.35 !important;
}
.sp-bid-page .nara-field .nara-filter-control,
.sp-bid-page .nara-field .nara-detail-toggle {
  width: 100% !important;
  height: 2.625rem !important;
  margin: 0 !important;
  border-radius: var(--sc-radius-control) !important;
  font-size: 0.9375rem !important;
  font-weight: 400 !important;
}
.sp-bid-page .nara-field--institution .institution {
  padding: 0 0.75rem !important;
}
.sp-bid-page .nara-field--period .nara-detail-toggle {
  justify-content: space-between !important;
  padding: 0 0.75rem !important;
  background: var(--sc-color-surface-default) !important;
  color: var(--sc-color-text-primary) !important;
}
.sp-bid-page .nara-keyword-row {
  display: grid !important;
  grid-template-columns: 5.5rem minmax(0, 1fr) 5.75rem 4.875rem !important;
  gap: 0.5rem !important;
  align-items: center !important;
  margin-top: 1rem !important;
  padding-top: 0.875rem !important;
  border-top: 0.0625rem solid var(--sc-color-surface-section) !important;
}
.sp-bid-page .nara-keyword-row .nara-text,
.sp-bid-page .nara-keyword-row .nara-btn,
.sp-bid-page .nara-keyword-row .nara-reset {
  height: 2.625rem !important;
  margin: 0 !important;
  border-radius: var(--sc-radius-control) !important;
  font-size: 0.9375rem !important;
}
.sp-bid-page .nara-keyword-row .nara-text {
  width: 100% !important;
  min-width: 0 !important;
}
.sp-bid-page .nara-keyword-row .nara-btn {
  padding: 0 0.875rem !important;
}
.sp-bid-page .nara-keyword-row .nara-reset {
  width: 100% !important;
  justify-content: center !important;
  font-size: 0.875rem !important;
}
.sp-bid-page .nara-advanced {
  margin: 0.875rem -1.125rem -1rem !important;
  padding: 0.875rem 1.125rem 1rem !important;
  background: var(--sc-color-surface-subtle) !important;
}
.sp-bid-page .nara-advanced__label,
.sp-bid-page .nara-advanced .nara-date {
  font-size: 0.9375rem !important;
}

/* 목록: 행 전체를 완전한 1줄로 유지 */
.sp-bid-page .nara-line {
  grid-template-columns: 4rem 3.375rem minmax(0, 1fr) 11.25rem 7.375rem 8.625rem !important;
  column-gap: 0.75rem !important;
  min-height: 3.5rem !important;
  height: 3.5rem !important;
  padding: 0 0.75rem !important;
  overflow: hidden !important;
}
.sp-bid-page .nara-line__title {
  display: flex !important;
  align-items: center !important;
  gap: 0.625rem !important;
  min-width: 0 !important;
  overflow: hidden !important;
}
.sp-bid-page .nara-line__title button {
  display: block !important;
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 0 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  font-size: 0.9375rem !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  text-decoration: none !important;
}
.sp-bid-page .nara-line__title button:hover,
.sp-bid-page .nara-line__title button:focus-visible {
  color: var(--primary) !important;
  text-decoration: none !important;
  border-bottom: 0 !important;
}
.sp-bid-page .nara-line__no {
  display: inline !important;
  flex: 0 0 auto !important;
  margin: 0 !important;
  color: var(--sc-color-text-muted) !important;
  font-size: 0.9375rem !important;
  line-height: 1.35 !important;
  white-space: nowrap !important;
}
.sp-bid-page .nara-status-text {
  min-width: 3.375rem !important;
  height: 1.75rem !important;
  padding: 0 0.5rem !important;
  font-size: 0.9375rem !important;
  font-weight: 600 !important;
  line-height: 1 !important;
}
.sp-bid-page .nara-type-text,
.sp-bid-page .nara-line__institution,
.sp-bid-page .nara-line__date,
.sp-bid-page .nara-inline-label {
  font-size: 0.9375rem !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
}
.sp-bid-page .nara-line__date.deadline {
  font-weight: 600 !important;
}

/* 정렬/목록수는 컨트롤 자체 문구만 노출, 접근성 라벨은 sr-only 유지 */
.sp-bid-page .nara-results__options label {
  position: absolute !important;
  width: 0.0625rem !important;
  height: 0.0625rem !important;
  padding: 0 !important;
  margin: -0.0625rem !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

@media (max-width: 68.75rem) {
  .sp-bid-page .nara-search-primary {
    grid-template-columns: 1fr 1fr !important;
  }
  .sp-bid-page .nara-field--institution {
    grid-column: 1/2 !important;
  }
  .sp-bid-page .nara-field--period {
    grid-column: 2/3 !important;
  }
  .sp-bid-page .nara-line {
    grid-template-columns: 3.625rem 3rem minmax(0, 1fr) 9.375rem 6.75rem 8rem !important;
    column-gap: 0.5625rem !important;
  }
  .sp-bid-page .nara-line__no {
    display: none !important;
  }
}
@media (max-width: 47.5rem) {
  .sp-bid-page .nara-search-primary {
    grid-template-columns: 1fr 1fr !important;
    gap: 0.75rem !important;
  }
  .sp-bid-page .nara-field--institution,
  .sp-bid-page .nara-field--period {
    grid-column: auto !important;
  }
  .sp-bid-page .nara-keyword-row {
    grid-template-columns: 1fr 5.5rem 4.75rem !important;
  }
  .sp-bid-page .nara-keyword-label {
    grid-column: 1/-1 !important;
  }
  .sp-bid-page .nara-intro__divider {
    display: none !important;
  }
  .sp-bid-page .nara-intro__copy {
    gap: 0.4375rem !important;
    flex-wrap: wrap !important;
  }
  .sp-bid-page .nara-intro__line {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: clip !important;
  }
  .sp-bid-page .nara-line {
    grid-template-columns: 3rem minmax(0, 1fr) 6.875rem !important;
    grid-template-areas: none !important;
    height: 3.375rem !important;
    min-height: 3.375rem !important;
  }
  .sp-bid-page .nara-status-text,
  .sp-bid-page .nara-line__institution,
  .sp-bid-page .nara-line__published {
    display: none !important;
  }
  .sp-bid-page .nara-line__type,
  .sp-bid-page .nara-line__title,
  .sp-bid-page .nara-line__deadline {
    grid-area: auto !important;
  }
  .sp-bid-page .nara-line__date {
    text-align: right !important;
  }
}

/* ===== 나라장터 v6 - 검색 정렬 / 원라인 리스트 최종 조정 ===== */
/* 검색영역: 항목명과 입력영역의 시작선을 동일한 세로 기준선에 맞춤 */
.sp-bid-page .nara-search-panel {
  padding: 1rem 1.125rem 1.125rem !important;
  background: var(--sc-color-surface-default) !important;
  border: 0.0625rem solid var(--line) !important;
  border-radius: var(--sc-radius-large) !important;
  box-shadow: 0 0.375rem 1.25rem rgba(11, 41, 99, 0.045) !important;
  overflow: hidden !important;
}
.sp-bid-page .nara-search-head-v6 {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 1.25rem !important;
  padding-bottom: 0.8125rem !important;
  border-bottom: 0.0625rem solid var(--sc-color-border-subtle) !important;
}
.sp-bid-page .nara-search-head-v6 > div {
  display: flex !important;
  align-items: baseline !important;
  gap: 0.75rem !important;
  min-width: 0 !important;
}
.sp-bid-page .nara-search-head-v6 strong {
  font-size: 1.0625rem !important;
  line-height: 1.3 !important;
  font-weight: 700 !important;
  color: var(--sc-color-text-heading) !important;
  white-space: nowrap !important;
}
.sp-bid-page .nara-search-head-v6 span {
  font-size: var(--sc-type-size-14) !important;
  line-height: 1.4 !important;
  font-weight: 400 !important;
  color: var(--sc-color-text-muted) !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.sp-bid-page .nara-reset-v6 {
  height: 2.125rem !important;
  flex: 0 0 auto !important;
  padding: 0 0.25rem !important;
  font-size: var(--sc-type-size-14) !important;
  color: var(--sc-color-text-secondary) !important;
}
.sp-bid-page .nara-reset-v6 svg {
  width: 0.875rem !important;
  height: 0.875rem !important;
}

.sp-bid-page .nara-search-grid-v6 {
  display: grid !important;
  grid-template-columns: 8.25rem 8.25rem 13.75rem 11.875rem minmax(20.625rem, 1fr) !important;
  align-items: start !important;
  margin-top: 0.875rem !important;
}
.sp-bid-page .nara-search-item-v6 {
  display: grid !important;
  grid-template-rows: 1.3125rem 2.625rem !important;
  align-content: start !important;
  gap: 0.4375rem !important;
  min-width: 0 !important;
  padding: 0 1rem !important;
  border-left: 0.0625rem solid var(--sc-color-border-subtle) !important;
}

.sp-bid-page .nara-search-label-v6 {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--sc-color-text-primary) !important;
  font-size: 0.9375rem !important;
  font-weight: 600 !important;
  line-height: 1.3125rem !important;
  text-align: left !important;
  white-space: nowrap !important;
}
.sp-bid-page .nara-search-item-v6 .nara-filter-control,
.sp-bid-page .nara-search-item-v6 .nara-detail-toggle,
.sp-bid-page .nara-keyword-control-v6 .nara-text,
.sp-bid-page .nara-keyword-control-v6 .nara-btn {
  height: 2.625rem !important;
  min-height: 2.625rem !important;
  margin: 0 !important;
  border-radius: var(--sc-radius-control) !important;
  font-size: 0.9375rem !important;
  font-weight: 400 !important;
}
.sp-bid-page .nara-search-item-v6 .nara-filter-control {
  width: 100% !important;
  min-width: 0 !important;
  padding-left: 0.6875rem !important;
}
.sp-bid-page .nara-search-item-v6 .institution {
  padding-right: 0.6875rem !important;
}
.sp-bid-page .nara-search-item-v6 .nara-detail-toggle {
  width: 100% !important;
  justify-content: space-between !important;
  padding: 0 0.6875rem !important;
  color: var(--sc-color-text-primary) !important;
  background: var(--sc-color-surface-default) !important;
}
.sp-bid-page .nara-keyword-control-v6 {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 5.375rem !important;
  gap: 0.4375rem !important;
  min-width: 0 !important;
}
.sp-bid-page .nara-keyword-control-v6 .nara-text {
  width: 100% !important;
  min-width: 0 !important;
  padding: 0 0.75rem !important;
}
.sp-bid-page .nara-keyword-control-v6 .nara-btn {
  min-width: 0 !important;
  padding: 0 0.875rem !important;
}
.sp-bid-page .nara-advanced {
  margin: 0.875rem -1.125rem -1.125rem !important;
  padding: 0.875rem 1.125rem 1rem !important;
  background: var(--sc-color-surface-subtle) !important;
  border-top: 0.0625rem solid var(--sc-color-border-subtle) !important;
}

/* 목록: 상태 라벨 제거, 공고번호 전부 노출, 기관 중앙정렬, 날짜를 시작~마감 한 덩어리로 표시 */
.sp-bid-page .nara-list {
  overflow-x: auto !important;
}
.sp-bid-page .nara-line {
  display: grid !important;
  grid-template-columns: 3.625rem minmax(0, 1fr) 11.125rem 11.875rem 14.375rem !important;
  align-items: center !important;
  column-gap: 0.875rem !important;
  min-height: 3.5rem !important;
  height: 3.5rem !important;
  padding: 0 0.875rem !important;
  white-space: nowrap !important;
  overflow: visible !important;
}
.sp-bid-page .nara-status-text {
  display: none !important;
}
.sp-bid-page .nara-type-text {
  display: block !important;
  font-size: 0.9375rem !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
  color: var(--sc-color-text-secondary) !important;
  text-align: center !important;
}
.sp-bid-page .nara-line__title {
  display: block !important;
  min-width: 0 !important;
  overflow: hidden !important;
}
.sp-bid-page .nara-line__title button {
  display: block !important;
  width: 100% !important;
  min-width: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  color: var(--sc-color-text-heading) !important;
  font-size: 0.9375rem !important;
  line-height: 1.35 !important;
  font-weight: 700 !important;
  text-align: left !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  text-decoration: none !important;
}
.sp-bid-page .nara-line__title button:hover,
.sp-bid-page .nara-line__title button:focus-visible {
  color: var(--primary) !important;
  text-decoration: none !important;
  border-bottom: 0 !important;
}
.sp-bid-page .nara-line__no {
  display: block !important;
  max-width: none !important;
  margin: 0 !important;
  color: var(--sc-color-text-muted) !important;
  font-size: 0.9375rem !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: clip !important;
  text-align: left !important;
}
.sp-bid-page .nara-line__institution {
  display: block !important;
  color: var(--sc-color-text-primary) !important;
  font-size: 0.9375rem !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
  text-align: center !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
.sp-bid-page .nara-line__period {
  display: block !important;
  color: var(--sc-color-text-secondary) !important;
  font-size: 0.9375rem !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
  text-align: center !important;
  font-variant-numeric: tabular-nums !important;
  white-space: nowrap !important;
}
.sp-bid-page .nara-line__published,
.sp-bid-page .nara-line__deadline,
.sp-bid-page .nara-inline-label {
  display: none !important;
}

@media (max-width: 73.75rem) {
  .sp-bid-page .nara-search-grid-v6 {
    grid-template-columns: 7.5rem 7.5rem 11.875rem 10.625rem minmax(17.5rem, 1fr) !important;
  }
  .sp-bid-page .nara-search-item-v6 {
    padding: 0 0.75rem !important;
  }
  .sp-bid-page .nara-search-item-v6--first {
    padding-left: 0 !important;
  }
  .sp-bid-page .nara-search-item-v6--keyword {
    padding-right: 0 !important;
  }
  .sp-bid-page .nara-line {
    grid-template-columns: 3.375rem minmax(18.75rem, 1fr) 11.125rem 10.625rem 13.75rem !important;
    column-gap: 0.625rem !important;
  }
}
@media (max-width: 58.75rem) {
  .sp-bid-page .nara-search-head-v6 > div {
    align-items: flex-start !important;
    flex-direction: column !important;
    gap: 0.1875rem !important;
  }
  .sp-bid-page .nara-search-grid-v6 {
    grid-template-columns: 1fr 1fr !important;
    row-gap: 0.875rem !important;
  }
  .sp-bid-page .nara-search-item-v6 {
    padding: 0 0.875rem !important;
    border-left: 0 !important;
  }
  .sp-bid-page .nara-search-item-v6:nth-child(even) {
    border-left: 0.0625rem solid var(--sc-color-border-subtle) !important;
  }
  .sp-bid-page .nara-search-item-v6--first {
    padding-left: 0 !important;
  }
  .sp-bid-page .nara-search-item-v6:nth-child(2) {
    padding-right: 0 !important;
  }
  .sp-bid-page .nara-search-item-v6--keyword {
    grid-column: 1/-1 !important;
    padding: 0 !important;
    border-left: 0 !important;
  }
  .sp-bid-page .nara-list {
    overflow-x: auto !important;
  }
  .sp-bid-page .nara-line {
    min-width: 58.75rem !important;
    grid-template-columns: 3.625rem minmax(18.75rem, 1fr) 11.125rem 11.25rem 14.375rem !important;
  }
}
@media (max-width: 43.75rem) {
  .sp-bid-page .nara-search-panel {
    padding: 0.875rem !important;
  }
  .sp-bid-page .nara-search-head-v6 {
    align-items: flex-start !important;
  }
  .sp-bid-page .nara-search-head-v6 span {
    white-space: normal !important;
  }
  .sp-bid-page .nara-search-grid-v6 {
    grid-template-columns: 1fr !important;
  }
  .sp-bid-page .nara-search-item-v6,
  .sp-bid-page .nara-search-item-v6:nth-child(even) {
    padding: 0 !important;
    border-left: 0 !important;
  }
  .sp-bid-page .nara-search-item-v6--keyword {
    grid-column: auto !important;
  }
  .sp-bid-page .nara-advanced {
    margin: 0.75rem -0.875rem -0.875rem !important;
    padding: 0.75rem 0.875rem 0.875rem !important;
  }
  .sp-bid-page .nara-line {
    min-width: 56.25rem !important;
    height: 3.375rem !important;
    min-height: 3.375rem !important;
  }
}

/* ===== v7 final revisions: 검색 라벨+입력 한 줄 / 목록 제목 1.125rem / D-day ===== */
.sp-bid-page .nara-search-grid-v6 {
  grid-template-columns: 11.125rem 11.75rem 20.625rem 14.25rem minmax(24.375rem, 1fr) !important;
  align-items: center !important;
  margin-top: 0.875rem !important;
}
.sp-bid-page .nara-search-item-v6 {
  display: grid !important;
  grid-template-columns: auto minmax(0, 1fr) !important;
  grid-template-rows: none !important;
  align-items: center !important;
  align-content: center !important;
  gap: 0.625rem !important;
  min-width: 0 !important;
  min-height: 2.625rem !important;
  padding: 0 0.875rem !important;
  border-left: 0.0625rem solid var(--sc-color-border-subtle) !important;
}
.sp-bid-page .nara-search-item-v6--first {
  padding-left: 0 !important;
  border-left: 0 !important;
}
.sp-bid-page .nara-search-item-v6--keyword {
  padding-right: 0 !important;
}
.sp-bid-page .nara-search-label-v6 {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--sc-color-text-primary) !important;
  font-size: 0.9375rem !important;
  font-weight: 600 !important;
  line-height: 2.625rem !important;
  text-align: left !important;
  white-space: nowrap !important;
}
.sp-bid-page .nara-search-item-v6 .nara-filter-control,
.sp-bid-page .nara-search-item-v6 .nara-detail-toggle,
.sp-bid-page .nara-keyword-control-v6 .nara-text,
.sp-bid-page .nara-keyword-control-v6 .nara-btn {
  height: 2.625rem !important;
  min-height: 2.625rem !important;
}
.sp-bid-page .nara-keyword-control-v6 {
  grid-template-columns: minmax(0, 1fr) 5.125rem !important;
  gap: 0.4375rem !important;
}

/* 리스트 정보 밀도 */
.sp-bid-page .nara-line {
  grid-template-columns: 3.625rem minmax(0, 1fr) 11.125rem 11.875rem 17.875rem !important;
  min-height: 3.625rem !important;
  height: 3.625rem !important;
}
.sp-bid-page .nara-line__title button {
  font-size: 1.0625rem !important;
  line-height: 1.32 !important;
  font-weight: 600 !important;
  letter-spacing: -0.025em !important;
}
.sp-bid-page .nara-line__period {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 1.5625rem !important;
  font-size: 0.9375rem !important;
  line-height: 1.35 !important;
  color: var(--sc-color-text-secondary) !important;
  white-space: nowrap !important;
}
.sp-bid-page .nara-line__dday {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  flex: 0 0 auto !important;
  min-width: 3rem !important;
  height: 1.75rem !important;
  padding: 0 0.5625rem !important;
  border: 0.0625rem solid var(--sc-color-danger) !important;
  border-radius: 62.4375rem !important;
  background: var(--sc-color-danger-surface) !important;
  color: var(--sc-color-danger) !important;
  font-size: var(--sc-type-size-14) !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  font-variant-numeric: tabular-nums !important;
}
.sp-bid-page .nara-line__dday.closed {
  border-color: var(--sc-color-border-default) !important;
  background: var(--sc-color-surface-subtle) !important;
  color: var(--sc-color-text-muted) !important;
}

@media (max-width: 73.75rem) {
  .sp-bid-page .nara-search-grid-v6 {
    grid-template-columns: 10.3125rem 10.9375rem 17.8125rem 13.4375rem minmax(20.625rem, 1fr) !important;
  }
  .sp-bid-page .nara-search-item-v6 {
    padding: 0 0.625rem !important;
    gap: 0.5rem !important;
  }
  .sp-bid-page .nara-search-item-v6--first {
    padding-left: 0 !important;
  }
  .sp-bid-page .nara-search-item-v6--keyword {
    padding-right: 0 !important;
  }
  .sp-bid-page .nara-line {
    grid-template-columns: 3.375rem minmax(20rem, 1fr) 11.125rem 10.625rem 17.5rem !important;
    column-gap: 0.625rem !important;
  }
}
@media (max-width: 58.75rem) {
  .sp-bid-page .nara-search-grid-v6 {
    grid-template-columns: 1fr 1fr !important;
    row-gap: 0.75rem !important;
  }
  .sp-bid-page .nara-search-item-v6 {
    padding: 0 0.875rem !important;
    border-left: 0 !important;
  }
  .sp-bid-page .nara-search-item-v6:nth-child(even) {
    border-left: 0.0625rem solid var(--sc-color-border-subtle) !important;
  }
  .sp-bid-page .nara-search-item-v6--first {
    padding-left: 0 !important;
  }
  .sp-bid-page .nara-search-item-v6:nth-child(2) {
    padding-right: 0 !important;
  }
  .sp-bid-page .nara-search-item-v6--keyword {
    grid-column: 1/-1 !important;
    padding: 0 !important;
    border-left: 0 !important;
  }
  .sp-bid-page .nara-line {
    min-width: 64.375rem !important;
    grid-template-columns: 3.625rem minmax(21.25rem, 1fr) 11.125rem 11.25rem 17.875rem !important;
  }
}
@media (max-width: 43.75rem) {
  .sp-bid-page .nara-search-grid-v6 {
    grid-template-columns: 1fr !important;
  }
  .sp-bid-page .nara-search-item-v6,
  .sp-bid-page .nara-search-item-v6:nth-child(even) {
    padding: 0 !important;
    border-left: 0 !important;
  }
  .sp-bid-page .nara-search-item-v6--keyword {
    grid-column: auto !important;
  }
  .sp-bid-page .nara-search-item-v6 {
    grid-template-columns: 4.625rem minmax(0, 1fr) !important;
  }
  .sp-bid-page .nara-search-label-v6 {
    line-height: 2.625rem !important;
  }
  .sp-bid-page .nara-line {
    min-width: 64.375rem !important;
    height: 3.625rem !important;
    min-height: 3.625rem !important;
  }
}

/* ===== v9 웹접근성 최종 QA =====
   - KWCAG 2.2 / 디지털 정부서비스 UIUX 가이드 기준
   - 명시적 레이블, 키보드 초점, 비색상 정보, 조작 영역, 새 창 안내 보완
*/
.sp-bid-page .nara-line__dday {
  font-size: var(--sc-type-size-14) !important;
}
.sp-bid-page .nara-date-wrap > span {
  color: var(--sc-color-text-muted) !important;
}
.sp-bid-page .nara-line__title button {
  min-height: 2rem !important;
  display: flex !important;
  align-items: center !important;
}
.sp-bid-page .nara-list:focus-visible {
  outline: 0.1875rem solid rgba(7, 91, 216, 0.38) !important;
  outline-offset: 0.1875rem !important;
}
.sp-bid-page .nara-pagination button {
  min-width: 2rem !important;
  min-height: 2rem !important;
}
.sp-bid-page .nara-detail__back {
  min-height: 2rem !important;
  padding: 0 0.25rem !important;
}
.sp-bid-page .nara-reset-v6 {
  min-height: 2.125rem !important;
}
.sp-bid-page .nara-intro__link {
  min-height: 2.25rem !important;
}
.sp-bid-page .nara-results__options select:focus-visible,
.sp-bid-page .nara-filter-control:focus-visible,
.sp-bid-page .nara-detail-toggle:focus-visible,
.sp-bid-page .nara-text:focus-visible,
.sp-bid-page .nara-date:focus-visible {
  outline: 0.1875rem solid rgba(7, 91, 216, 0.38) !important;
  outline-offset: 0.125rem !important;
}
@media (prefers-reduced-motion: reduce) {
  .sp-bid-page {
    scroll-behavior: auto !important;
  }
  .sp-bid-page *,
  .sp-bid-page *::before,
  .sp-bid-page *::after {
    animation-duration: 0.001ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.001ms !important;
  }
}

/* ===== v10 목록 상단 항목명 - 테이블처럼 보이지 않는 가이드 헤더 ===== */
.sp-bid-page .nara-list-head-v10 {
  display: grid !important;
  grid-template-columns: 3.625rem minmax(0, 1fr) 11.125rem 11.875rem 17.875rem !important;
  align-items: center !important;
  column-gap: 0.875rem !important;
  min-height: 2.625rem !important;
  padding: 0 0.875rem !important;
  background: var(--sc-color-surface-section) !important;
  border-bottom: 0.0625rem solid var(--sc-color-border-default) !important;
  color: var(--sc-color-text-muted) !important;
  font-size: 0.875rem !important;
  line-height: 1.35 !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
}
.sp-bid-page .nara-list-head-v10 span {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.sp-bid-page .nara-list-head-v10 .head-type,
.sp-bid-page .nara-list-head-v10 .head-no,
.sp-bid-page .nara-list-head-v10 .head-inst,
.sp-bid-page .nara-list-head-v10 .head-period {
  text-align: center !important;
}
.sp-bid-page .nara-list-head-v10 .head-title {
  text-align: left !important;
  padding-left: 0 !important;
  color: var(--sc-color-text-secondary) !important;
}
/* 열 제목 줄만 옅은 면으로 구분하고 세로 구분선은 두지 않는다. */
.sp-bid-page .nara-list {
  border-top: 0.0625rem solid var(--sc-color-border-default) !important;
}

@media (max-width: 73.75rem) {
  .sp-bid-page .nara-list-head-v10 {
    grid-template-columns: 3.375rem minmax(20rem, 1fr) 11.125rem 10.625rem 17.5rem !important;
    column-gap: 0.625rem !important;
  }
}
@media (max-width: 58.75rem) {
  .sp-bid-page .nara-list-head-v10 {
    min-width: 64.375rem !important;
    grid-template-columns: 3.625rem minmax(21.25rem, 1fr) 11.125rem 11.25rem 17.875rem !important;
  }
}
@media (max-width: 43.75rem) {
  .sp-bid-page .nara-list-head-v10 {
    min-width: 64.375rem !important;
    min-height: 2.5rem !important;
  }
}

/* ===== 나라장터 v12 - 강원 전략산업 검색범위 / 검색 위계 / 공고번호 우선 ===== */
.sp-bid-page .nara-search-panel-v12 {
  padding: 0 !important;
  overflow: hidden !important;
  border: 0.0625rem solid var(--line) !important;
  border-radius: var(--sc-radius-large) !important;
  background: var(--sc-color-surface-default) !important;
  box-shadow: 0 0.375rem 1.25rem rgba(11, 41, 99, 0.045) !important;
}
.sp-bid-page .nara-scope-v12 {
  display: flex !important;
  align-items: center !important;
  min-height: 2.75rem !important;
  padding: 0 1.125rem !important;
  gap: 0.625rem !important;
  border-bottom: 0.0625rem solid var(--sc-color-border-subtle) !important;
  background: var(--sc-color-surface-subtle) !important;
  color: var(--sc-color-text-secondary) !important;
  font-size: 0.875rem !important;
  line-height: 1.35 !important;
  white-space: nowrap !important;
}
.sp-bid-page .nara-scope-v12 strong {
  color: var(--secondary) !important;
  font-size: 0.875rem !important;
  font-weight: 700 !important;
  margin-right: 0.25rem !important;
}
.sp-bid-page .nara-scope-dot {
  color: var(--sc-color-text-muted) !important;
}

.sp-bid-page .nara-search-panel-v12 form {
  padding: 0.9375rem 1.125rem 1.0625rem !important;
}
.sp-bid-page .nara-filter-row-v12 {
  display: grid !important;
  grid-template-columns: 1.05fr 0.9fr 1.35fr 1.05fr !important;
  gap: 1.25rem !important;
  align-items: center !important;
}
.sp-bid-page .nara-inline-field-v12 {
  display: grid !important;
  grid-template-columns: 4.25rem minmax(0, 1fr) !important;
  gap: 0.625rem !important;
  align-items: center !important;
  min-width: 0 !important;
}
.sp-bid-page .nara-inline-field-v12--institution {
  grid-template-columns: 4.5rem minmax(0, 1fr) !important;
}
.sp-bid-page .nara-inline-field-v12--period {
  grid-template-columns: 2.75rem minmax(0, 1fr) !important;
}
.sp-bid-page .nara-inline-label-v12 {
  color: var(--sc-color-text-primary) !important;
  font-size: 0.9375rem !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
  white-space: nowrap !important;
}
.sp-bid-page .nara-inline-field-v12 .nara-filter-control,
.sp-bid-page .nara-inline-field-v12 .nara-detail-toggle {
  width: 100% !important;
  min-width: 0 !important;
  height: 2.625rem !important;
  margin: 0 !important;
  border-radius: var(--sc-radius-control) !important;
  font-size: 0.9375rem !important;
  font-weight: 400 !important;
}
.sp-bid-page .nara-inline-field-v12 .nara-detail-toggle {
  justify-content: space-between !important;
  padding: 0 0.75rem !important;
}
.sp-bid-page .nara-keyword-row-v12 {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 5.5rem 4.875rem !important;
  gap: 0.5rem !important;
  align-items: center !important;
  margin-top: 0.875rem !important;
  padding-top: 0.875rem !important;
  border-top: 0.0625rem solid var(--sc-color-surface-section) !important;
}
.sp-bid-page .nara-keyword-field-v12 {
  display: grid !important;
  grid-template-columns: 4.25rem minmax(0, 1fr) !important;
  gap: 0.625rem !important;
  align-items: center !important;
  min-width: 0 !important;
}
.sp-bid-page .nara-keyword-field-v12 .nara-text {
  width: 100% !important;
  min-width: 0 !important;
  height: 2.625rem !important;
  margin: 0 !important;
  padding: 0 0.75rem !important;
  border-radius: var(--sc-radius-control) !important;
  font-size: 0.9375rem !important;
}
.sp-bid-page .nara-keyword-row-v12 > .nara-btn,
.sp-bid-page .nara-reset-v12 {
  height: 2.625rem !important;
  margin: 0 !important;
  border-radius: var(--sc-radius-small) !important;
  font-size: 0.9375rem !important;
}
.sp-bid-page .nara-reset-v12 {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.3125rem !important;
  padding: 0 0.5rem !important;
  border: 0 !important;
  background: transparent !important;
  color: var(--sc-color-text-secondary) !important;
}
.sp-bid-page .nara-reset-v12 svg {
  width: 0.875rem !important;
  height: 0.875rem !important;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 1.8 !important;
  stroke-linecap: round !important;
  stroke-linejoin: round !important;
}

.sp-bid-page .nara-search-panel-v12 .nara-advanced {
  margin: 0.875rem -1.125rem -1.0625rem !important;
  padding: 0.875rem 1.125rem 1rem !important;
  background: var(--sc-color-surface-subtle) !important;
  border-top: 0.0625rem solid var(--sc-color-border-subtle) !important;
}

/* 목록: 업무구분 → 공고번호 → 공고명 → 수요기관 → 공고기간 */
.sp-bid-page .nara-list-head-v10,
.sp-bid-page .nara-line {
  grid-template-columns: 3.875rem 11.875rem minmax(0, 1fr) 11.875rem 15.625rem !important;
  column-gap: 0.875rem !important;
  min-width: 77.5rem !important;
}
.sp-bid-page .nara-list-head-v10 {
  padding: 0 0.875rem !important;
}
.sp-bid-page .nara-list-head-v10 .head-no,
.sp-bid-page .nara-line__no {
  text-align: left !important;
}
.sp-bid-page .nara-list-head-v10 .head-title,
.sp-bid-page .nara-line__title {
  text-align: left !important;
}
.sp-bid-page .nara-line__no {
  display: block !important;
  margin: 0 !important;
  max-width: none !important;
  overflow: visible !important;
  text-overflow: clip !important;
  white-space: nowrap !important;
  color: var(--sc-color-text-secondary) !important;
  font-size: 0.9375rem !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
}
.sp-bid-page .nara-line__title button {
  font-size: 1.0625rem !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}
.sp-bid-page .nara-line__title button:hover,
.sp-bid-page .nara-line__title button:focus-visible {
  text-decoration: none !important;
  border-bottom: 0 !important;
}

.sp-bid-page .nara-line__period {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 1.5625rem !important;
}
.sp-bid-page .nara-line__dday {
  flex: 0 0 auto !important;
  min-width: 2.875rem !important;
  font-size: var(--sc-type-size-14) !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
}
.sp-bid-page .nara-line__period > span:last-child {
  font-size: 0.9375rem !important;
  font-variant-numeric: tabular-nums !important;
}

/* 대량 목록은 작은 화면에서도 한 줄 구조를 유지하고 가로 스크롤로 탐색 */
@media (max-width: 65.625rem) {
  .sp-bid-page .nara-filter-row-v12 {
    grid-template-columns: 1fr 1fr !important;
    gap: 0.75rem 1.125rem !important;
  }
}
@media (max-width: 43.75rem) {
  .sp-bid-page .nara-scope-v12 {
    overflow-x: auto !important;
    padding: 0 0.875rem !important;
  }
  .sp-bid-page .nara-search-panel-v12 form {
    padding: 0.875rem !important;
  }
  .sp-bid-page .nara-filter-row-v12 {
    grid-template-columns: 1fr !important;
    gap: 0.6875rem !important;
  }
  .sp-bid-page .nara-inline-field-v12,
  .sp-bid-page .nara-inline-field-v12--institution,
  .sp-bid-page .nara-inline-field-v12--period {
    grid-template-columns: 4.5rem minmax(0, 1fr) !important;
  }
  .sp-bid-page .nara-keyword-row-v12 {
    grid-template-columns: minmax(0, 1fr) 5.125rem !important;
  }
  .sp-bid-page .nara-keyword-field-v12 {
    grid-column: 1/-1 !important;
    grid-template-columns: 4.5rem minmax(0, 1fr) !important;
  }
  .sp-bid-page .nara-reset-v12 {
    grid-column: 1/-1 !important;
    justify-self: end !important;
    width: auto !important;
  }
  .sp-bid-page .nara-search-panel-v12 .nara-advanced {
    margin: 0.75rem -0.875rem -0.875rem !important;
    padding: 0.75rem 0.875rem 0.875rem !important;
  }
}

/* ===== v13 refinements: search layout + list column rebalance ===== */
.sp-bid-page .nara-search-panel-v12 .nara-advanced {
  display: none !important;
  margin: 0.625rem 0 0.75rem !important;
  padding: 0.75rem 0.875rem !important;
  border: 0.0625rem solid var(--sc-color-border-subtle) !important;
  border-radius: var(--sc-radius-small) !important;
  background: var(--sc-color-surface-subtle) !important;
}
.sp-bid-page .nara-search-panel-v12 .nara-advanced.show {
  display: grid !important;
  grid-template-columns: 1fr 1fr !important;
  gap: 0.75rem 1.375rem !important;
}
.sp-bid-page .nara-search-panel-v12 .nara-advanced__group {
  display: grid !important;
  grid-template-columns: 5.5rem minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 0.625rem !important;
}
.sp-bid-page .nara-search-panel-v12 .nara-advanced__label {
  font-size: 0.9375rem !important;
  color: var(--sc-color-text-primary) !important;
  font-weight: 600 !important;
}
.sp-bid-page .nara-keyword-row-v12 {
  margin-top: 0 !important;
  padding-top: 0.75rem !important;
  border-top: 0.0625rem solid var(--sc-color-surface-section) !important;
}

/* Header and row columns: move institution and dday earlier */
.sp-bid-page .nara-list-head-v10,
.sp-bid-page .nara-line {
  grid-template-columns: 3.75rem 10.625rem minmax(20rem, 1fr) 10rem 4.375rem 11.875rem !important;
  column-gap: 0.75rem !important;
  min-width: 73.75rem !important;
}
.sp-bid-page .nara-list-head-v10 .head-type,
.sp-bid-page .nara-list-head-v10 .head-no,
.sp-bid-page .nara-list-head-v10 .head-inst,
.sp-bid-page .nara-list-head-v10 .head-dday,
.sp-bid-page .nara-list-head-v10 .head-period {
  text-align: center !important;
}
.sp-bid-page .nara-list-head-v10 .head-dday {
  color: var(--sc-color-text-secondary) !important;
}
.sp-bid-page .nara-line__institution {
  text-align: center !important;
  font-size: 0.9375rem !important;
}
.sp-bid-page .nara-line__ddaycol {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.sp-bid-page .nara-line__periodtxt {
  display: block !important;
  font-size: 0.9375rem !important;
  line-height: 1.35 !important;
  font-variant-numeric: tabular-nums !important;
  white-space: nowrap !important;
}
.sp-bid-page .nara-line__dday {
  min-width: 2.875rem !important;
  font-size: var(--sc-type-size-14) !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
}

@media (max-width: 80rem) {
  .sp-bid-page .nara-list-head-v10,
  .sp-bid-page .nara-line {
    grid-template-columns: 3.625rem 10.375rem minmax(18.75rem, 1fr) 9.5rem 4.25rem 11.375rem !important;
    min-width: 70rem !important;
  }
}
@media (max-width: 43.75rem) {
  .sp-bid-page .nara-search-panel-v12 .nara-advanced.show {
    grid-template-columns: 1fr !important;
  }
  .sp-bid-page .nara-search-panel-v12 .nara-advanced__group {
    grid-template-columns: 1fr !important;
    gap: 0.5rem !important;
  }
  .sp-bid-page .nara-search-panel-v12 .nara-advanced {
    padding: 0.75rem !important;
  }
}

/* ===== v14: 수요기관 / D-Day 전진, 공고명 영역 축소 ===== */
.sp-bid-page .nara-list-head-v10,
.sp-bid-page .nara-line {
  grid-template-columns: 3.75rem 10.625rem minmax(15.625rem, 1fr) 9.0625rem 4rem 11.75rem !important;
  column-gap: 0.625rem !important;
  min-width: 67.5rem !important;
}
.sp-bid-page .nara-line__title {
  min-width: 0 !important;
  padding-right: 0.125rem !important;
}
.sp-bid-page .nara-line__title button {
  display: block !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.sp-bid-page .nara-line__institution {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.sp-bid-page .nara-line__ddaycol {
  justify-content: center !important;
}
@media (max-width: 80rem) {
  .sp-bid-page .nara-list-head-v10,
  .sp-bid-page .nara-line {
    grid-template-columns: 3.625rem 10.25rem minmax(14.6875rem, 1fr) 8.625rem 3.875rem 11.25rem !important;
    column-gap: 0.5625rem !important;
    min-width: 64.375rem !important;
  }
}

/* ===== v15: 공고명 영역 축소 / 헤더만 중앙정렬 ===== */
.sp-bid-page .nara-list-head-v10,
.sp-bid-page .nara-line {
  grid-template-columns: 3.75rem 10.625rem 26.875rem 11.25rem 4.25rem 11.875rem !important;
  column-gap: 0.625rem !important;
  min-width: 71.75rem !important;
}

/* 공고명 상단 항목명만 중앙정렬 */
.sp-bid-page .nara-list-head-v10 .head-title {
  text-align: center !important;
  padding-left: 0 !important;
}

/* 실제 공고명 내용은 왼쪽 정렬 유지 */
.sp-bid-page .nara-line__title {
  text-align: left !important;
  min-width: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.sp-bid-page .nara-line__title button {
  text-align: left !important;
  width: 100% !important;
  max-width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

@media (max-width: 80rem) {
  .sp-bid-page .nara-list-head-v10,
  .sp-bid-page .nara-line {
    grid-template-columns: 3.625rem 10.25rem 24.375rem 10.625rem 4rem 11.375rem !important;
    column-gap: 0.5625rem !important;
    min-width: 67.625rem !important;
  }
}

/* ===== v16: 행 내부 요소 합 100% + 공고기관 우측 배치 ===== */
.sp-bid-page .nara-list-head-v10,
.sp-bid-page .nara-line {
  width: 100% !important;
  min-width: 0 !important;
  display: grid !important;
  grid-template-columns:
    minmax(3.375rem, 6fr)
    minmax(9.375rem, 15fr)
    minmax(15.625rem, 28fr)
    minmax(8.125rem, 14fr)
    minmax(3.5rem, 7fr)
    minmax(10.625rem, 17fr)
    minmax(7.5rem, 13fr) !important;
  column-gap: 0 !important;
  align-items: center !important;
  box-sizing: border-box !important;
}
/* 6 + 15 + 28 + 14 + 7 + 17 + 13 = 100 */

.sp-bid-page .nara-list-head-v10 .head-title {
  text-align: center !important;
  padding-left: 0.5rem !important;
}
.sp-bid-page .nara-list-head-v10 .head-type,
.sp-bid-page .nara-list-head-v10 .head-no,
.sp-bid-page .nara-list-head-v10 .head-inst,
.sp-bid-page .nara-list-head-v10 .head-dday,
.sp-bid-page .nara-list-head-v10 .head-period,
.sp-bid-page .nara-list-head-v10 .head-notice-inst {
  text-align: center !important;
}

.sp-bid-page .nara-line__institution {
  text-align: center !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

.sp-bid-page .nara-line__periodtxt {
  text-align: center !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.sp-bid-page .nara-line__notice-inst {
  text-align: right !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  font-size: 0.9375rem !important;
  color: var(--sc-color-text-secondary) !important;
}
@media (max-width: 73.75rem) {
  .sp-bid-page .nara-list-head-v10,
  .sp-bid-page .nara-line {
    min-width: 67.5rem !important;
  }
}

/* ===== v17: 기관 컬럼 전진 + 검색영역 여백/초기화 위치 조정 ===== */

/* 검색 범위 라인 */
.sp-bid-page .nara-scope-v12 {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 1rem !important;
  min-height: 3.25rem !important;
  padding: 0 1.125rem !important;
}
.sp-bid-page .nara-scope-text {
  display: flex !important;
  align-items: center !important;
  gap: 0.625rem !important;
  min-width: 0 !important;
  flex-wrap: wrap !important;
}
.sp-bid-page .nara-reset--scope {
  flex: 0 0 auto !important;
  height: 2.25rem !important;
  padding: 0 0.625rem !important;
  border-radius: var(--sc-radius-small) !important;
  color: var(--sc-color-text-primary) !important;
}
.sp-bid-page .nara-reset--scope span {
  font-size: 0.9375rem !important;
  font-weight: 600 !important;
}

/* 기간상세설정 라인과 아래 공고검색 사이 여백 */
.sp-bid-page .nara-filter-row-v12 {
  margin-bottom: 0.875rem !important;
}
.sp-bid-page .nara-search-panel-v12 .nara-advanced {
  margin: 0 0 0.875rem !important;
  padding: 0.875rem 0.875rem !important;
}
.sp-bid-page .nara-keyword-row-v12 {
  margin-top: 0 !important;
  padding-top: 0.875rem !important;
  border-top: 0.0625rem solid var(--sc-color-surface-section) !important;
  grid-template-columns: minmax(0, 1fr) 5.5rem !important;
}

/* 리스트 컬럼: 수요기관/공고기관 전진, 공고기관 중앙정렬 */
.sp-bid-page .nara-list-head-v10,
.sp-bid-page .nara-line {
  width: 100% !important;
  min-width: 0 !important;
  display: grid !important;
  grid-template-columns:
    minmax(3.375rem, 6fr)
    minmax(9.375rem, 15fr)
    minmax(13.75rem, 25fr)
    minmax(7.875rem, 14fr)
    minmax(7.875rem, 14fr)
    minmax(3.5rem, 7fr)
    minmax(10.5rem, 19fr) !important;
  column-gap: 0 !important;
  align-items: center !important;
  box-sizing: border-box !important;
}
/* 6 + 15 + 25 + 14 + 14 + 7 + 19 = 100 */
.sp-bid-page .nara-list-head-v10 > *,
.sp-bid-page .nara-line > * {
  min-width: 0 !important;
  box-sizing: border-box !important;
  padding: 0 0.5rem !important;
}
.sp-bid-page .nara-list-head-v10 .head-type,
.sp-bid-page .nara-list-head-v10 .head-no,
.sp-bid-page .nara-list-head-v10 .head-inst,
.sp-bid-page .nara-list-head-v10 .head-notice-inst,
.sp-bid-page .nara-list-head-v10 .head-dday,
.sp-bid-page .nara-list-head-v10 .head-period {
  text-align: center !important;
}

.sp-bid-page .nara-line__title,
.sp-bid-page .nara-line__title button {
  text-align: left !important;
}
.sp-bid-page .nara-line__title button {
  display: block !important;
  width: 100% !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.sp-bid-page .nara-line__institution,
.sp-bid-page .nara-line__notice-inst,
.sp-bid-page .nara-line__periodtxt {
  text-align: center !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
.sp-bid-page .nara-line__notice-inst {
  font-size: 0.9375rem !important;
  color: var(--sc-color-text-secondary) !important;
}
.sp-bid-page .nara-line__ddaycol {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
}

@media (max-width: 73.75rem) {
  .sp-bid-page .nara-list-head-v10,
  .sp-bid-page .nara-line {
    min-width: 66.25rem !important;
  }
}
@media (max-width: 43.75rem) {
  .sp-bid-page .nara-scope-v12 {
    align-items: flex-start !important;
    padding: 0.75rem 0.875rem !important;
  }
  .sp-bid-page .nara-scope-text {
    flex: 1 1 auto !important;
  }
  .sp-bid-page .nara-keyword-row-v12 {
    grid-template-columns: minmax(0, 1fr) 5.125rem !important;
  }
}

/* ===== v18: 나라장터 원사이트 참고 - 컴팩트 기간 검색 ===== */
.sp-bid-page .nara-filter-row-v12 {
  grid-template-columns: 1fr 0.9fr 1.25fr !important;
  gap: 1.125rem !important;
  margin-bottom: 0 !important;
}

.sp-bid-page .nara-period-row-v18 {
  display: grid !important;
  grid-template-columns: 4.25rem 8rem minmax(20rem, 1fr) auto !important;
  align-items: center !important;
  gap: 0.625rem !important;
  min-height: 3.25rem !important;
  margin-top: 0.75rem !important;
  padding-top: 0.75rem !important;
  padding-bottom: 0.75rem !important;
  border-top: 0.0625rem solid var(--sc-color-surface-section) !important;
  border-bottom: 0.0625rem solid var(--sc-color-surface-section) !important;
}
.sp-bid-page .nara-period-type-v18 {
  height: 2.5rem !important;
  min-width: 0 !important;
  padding: 0 2rem 0 0.6875rem !important;
  border: 0.0625rem solid var(--sc-color-disabled) !important;
  border-radius: var(--sc-radius-control) !important;
  background: var(--sc-color-surface-default) !important;
  color: var(--sc-color-text-primary) !important;
  font: inherit !important;
  font-size: 0.9375rem !important;
}
.sp-bid-page .nara-period-dates-v18 {
  display: grid !important;
  grid-template-columns: minmax(8.75rem, 1fr) 1.125rem minmax(8.75rem, 1fr) !important;
  align-items: center !important;
  gap: 0.25rem !important;
}
.sp-bid-page .nara-date-v18 {
  width: 100% !important;
  min-width: 0 !important;
  height: 2.5rem !important;
  padding: 0 0.625rem !important;
  border: 0.0625rem solid var(--sc-color-disabled) !important;
  border-radius: var(--sc-radius-control) !important;
  background: var(--sc-color-surface-default) !important;
  color: var(--sc-color-text-primary) !important;
  font: inherit !important;
  font-size: 0.9375rem !important;
}
.sp-bid-page .nara-period-sep-v18 {
  text-align: center !important;
  color: var(--sc-color-text-muted) !important;
  font-size: 0.875rem !important;
}
.sp-bid-page .nara-period-quick-v18 {
  display: flex !important;
  align-items: center !important;
  gap: 0.375rem !important;
  white-space: nowrap !important;
}
.sp-bid-page .nara-period-chip-v18 {
  height: 2.25rem !important;
  padding: 0 0.625rem !important;
  border: 0.0625rem solid var(--sc-color-disabled) !important;
  border-radius: var(--sc-radius-small) !important;
  background: var(--sc-color-surface-default) !important;
  color: var(--sc-color-text-secondary) !important;
  font: inherit !important;
  font-size: 0.875rem !important;
  cursor: pointer !important;
}
.sp-bid-page .nara-period-chip-v18:hover {
  border-color: var(--sc-color-text-muted) !important;
  background: var(--sc-color-surface-canvas) !important;
}
.sp-bid-page .nara-period-chip-v18:focus-visible,
.sp-bid-page .nara-period-type-v18:focus-visible,
.sp-bid-page .nara-date-v18:focus-visible {
  outline: 0.1875rem solid rgba(7, 91, 216, 0.2) !important;
  outline-offset: 0.125rem !important;
  border-color: var(--primary) !important;
}

.sp-bid-page .nara-keyword-row-v12 {
  margin-top: 0.75rem !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}

/* 기존 펼침형 상세기간 스타일은 더 이상 사용하지 않음 */
.sp-bid-page .nara-advanced,
.sp-bid-page .nara-detail-toggle {
  display: none !important;
}

@media (max-width: 68.75rem) {
  .sp-bid-page .nara-filter-row-v12 {
    grid-template-columns: 1fr 1fr !important;
  }
  .sp-bid-page .nara-inline-field-v12--institution {
    grid-column: 1/-1 !important;
  }
  .sp-bid-page .nara-period-row-v18 {
    grid-template-columns: 4.25rem 8rem minmax(17.5rem, 1fr) !important;
  }
  .sp-bid-page .nara-period-quick-v18 {
    grid-column: 3 !important;
    flex-wrap: wrap !important;
  }
}
@media (max-width: 43.75rem) {
  .sp-bid-page .nara-filter-row-v12 {
    grid-template-columns: 1fr !important;
  }
  .sp-bid-page .nara-inline-field-v12--institution {
    grid-column: auto !important;
  }
  .sp-bid-page .nara-period-row-v18 {
    grid-template-columns: 4.5rem minmax(0, 1fr) !important;
    gap: 0.5rem 0.625rem !important;
  }
  .sp-bid-page .nara-period-type-v18 {
    grid-column: 2 !important;
  }
  .sp-bid-page .nara-period-dates-v18 {
    grid-column: 1/-1 !important;
  }
  .sp-bid-page .nara-period-quick-v18 {
    grid-column: 1/-1 !important;
  }
}

/* ===== v19: 검색 필터 초압축 - 1행 구성 ===== */
.sp-bid-page .nara-filter-row-v12,
.sp-bid-page .nara-period-row-v18 {
  display: none !important;
}

.sp-bid-page .nara-filter-compact-v19 {
  display: flex !important;
  align-items: center !important;
  gap: 1rem !important;
  width: 100% !important;
  min-width: 0 !important;
  padding: 0.125rem 0 0.625rem !important;
  border-bottom: 0.0625rem solid var(--sc-color-surface-section) !important;
  flex-wrap: nowrap !important;
}

.sp-bid-page .nara-compact-field-v19 {
  display: flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  flex: 0 0 auto !important;
  min-width: 0 !important;
}
.sp-bid-page .nara-compact-label-v19 {
  flex: 0 0 auto !important;
  color: var(--sc-color-text-primary) !important;
  font-size: 0.9375rem !important;
  line-height: 1.35 !important;
  font-weight: 600 !important;
  white-space: nowrap !important;
}

.sp-bid-page .nara-compact-field-v19 .nara-filter-control,
.sp-bid-page .nara-compact-period-v19 .nara-period-type-v18,
.sp-bid-page .nara-compact-period-v19 .nara-date-v18 {
  height: 2.375rem !important;
  font-size: 0.9375rem !important;
  border-radius: var(--sc-radius-control) !important;
}

.sp-bid-page .nara-compact-field-v19--strategy .nara-filter-control {
  width: 9.0625rem !important;
}
.sp-bid-page .nara-compact-field-v19--status .nara-filter-control {
  width: 7.5rem !important;
}
.sp-bid-page .nara-compact-field-v19--institution .nara-filter-control {
  width: 11.875rem !important;
}

.sp-bid-page .nara-compact-period-v19 {
  display: flex !important;
  align-items: center !important;
  gap: 0.4375rem !important;
  min-width: 0 !important;
  flex: 1 1 auto !important;
}
.sp-bid-page .nara-compact-period-v19 .nara-period-type-v18 {
  width: 7rem !important;
  flex: 0 0 7rem !important;
}
.sp-bid-page .nara-compact-period-v19 .nara-date-v18 {
  width: 8.25rem !important;
  flex: 0 0 8.25rem !important;
  padding: 0 0.4375rem !important;
}
.sp-bid-page .nara-compact-period-v19 .nara-period-sep-v18 {
  flex: 0 0 0.75rem !important;
}

.sp-bid-page .nara-period-quick-v19 {
  display: flex !important;
  align-items: center !important;
  gap: 0.25rem !important;
  flex: 0 0 auto !important;
}
.sp-bid-page .nara-period-chip-v19 {
  height: 2.125rem !important;
  padding: 0 0.5rem !important;
  border: 0.0625rem solid var(--sc-color-border-default) !important;
  border-radius: var(--sc-radius-large) !important;
  background: var(--sc-color-surface-default) !important;
  color: var(--sc-color-text-secondary) !important;
  font: inherit !important;
  font-size: var(--sc-type-size-14) !important;
  cursor: pointer !important;
  white-space: nowrap !important;
}
.sp-bid-page .nara-period-chip-v19:hover {
  background: var(--sc-color-surface-canvas) !important;
  border-color: var(--sc-color-text-muted) !important;
}
.sp-bid-page .nara-period-chip-v19:focus-visible {
  outline: 0.1875rem solid rgba(7, 91, 216, 0.2) !important;
  outline-offset: 0.125rem !important;
  border-color: var(--primary) !important;
}

.sp-bid-page .nara-keyword-row-v12 {
  margin-top: 0.625rem !important;
}

@media (max-width: 78.75rem) {
  .sp-bid-page .nara-filter-compact-v19 {
    gap: 0.75rem !important;
    flex-wrap: wrap !important;
  }
  .sp-bid-page .nara-compact-period-v19 {
    flex: 1 1 100% !important;
  }
}
@media (max-width: 43.75rem) {
  .sp-bid-page .nara-filter-compact-v19 {
    align-items: stretch !important;
    flex-direction: column !important;
    gap: 0.625rem !important;
  }
  .sp-bid-page .nara-compact-field-v19,
  .sp-bid-page .nara-compact-period-v19 {
    width: 100% !important;
  }
  .sp-bid-page .nara-compact-field-v19 {
    display: grid !important;
    grid-template-columns: 4.5rem minmax(0, 1fr) !important;
  }
  .sp-bid-page .nara-compact-field-v19 .nara-filter-control {
    width: 100% !important;
  }
  .sp-bid-page .nara-compact-period-v19 {
    flex-wrap: wrap !important;
  }
  .sp-bid-page .nara-compact-period-v19 .nara-period-type-v18 {
    flex: 1 1 8.125rem !important;
    width: auto !important;
  }
  .sp-bid-page .nara-compact-period-v19 .nara-date-v18 {
    flex: 1 1 8.125rem !important;
    width: auto !important;
  }
}

/* ===== v20: 수요기관 + 공고검색 동일 행 ===== */
.sp-bid-page .nara-compact-field-v19--institution {
  display: none !important;
}

.sp-bid-page .nara-filter-compact-v19 {
  gap: 1.125rem !important;
  padding: 0.125rem 0 0.75rem !important;
}
.sp-bid-page .nara-compact-field-v19--strategy .nara-filter-control {
  width: 9.0625rem !important;
}
.sp-bid-page .nara-compact-field-v19--status .nara-filter-control {
  width: 7.5rem !important;
}

.sp-bid-page .nara-keyword-row-v20 {
  display: grid !important;
  grid-template-columns: 16.25rem minmax(0, 1fr) 5.5rem !important;
  gap: 0.875rem !important;
  align-items: center !important;
  margin-top: 0.75rem !important;
  padding-top: 0 !important;
  border-top: 0 !important;
}
.sp-bid-page .nara-keyword-field-v20 {
  display: grid !important;
  align-items: center !important;
  min-width: 0 !important;
}
.sp-bid-page .nara-keyword-field-v20--institution {
  grid-template-columns: 4.25rem minmax(0, 1fr) !important;
  gap: 0.5rem !important;
}
.sp-bid-page .nara-keyword-field-v20--keyword {
  grid-template-columns: 4.25rem minmax(0, 1fr) !important;
  gap: 0.5rem !important;
}
.sp-bid-page .nara-keyword-field-v20 .nara-filter-control,
.sp-bid-page .nara-keyword-field-v20 .nara-text {
  width: 100% !important;
  min-width: 0 !important;
  height: 2.375rem !important;
  font-size: 0.9375rem !important;
  border-radius: var(--sc-radius-control) !important;
}
.sp-bid-page .nara-keyword-row-v20 > .nara-btn {
  height: 2.375rem !important;
  margin: 0 !important;
}

@media (max-width: 78.75rem) {
  .sp-bid-page .nara-keyword-row-v20 {
    grid-template-columns: 13.75rem minmax(0, 1fr) 5.125rem !important;
    gap: 0.625rem !important;
  }
}
@media (max-width: 43.75rem) {
  .sp-bid-page .nara-keyword-row-v20 {
    grid-template-columns: 1fr !important;
    gap: 0.625rem !important;
  }
  .sp-bid-page .nara-keyword-field-v20--institution,
  .sp-bid-page .nara-keyword-field-v20--keyword {
    grid-template-columns: 4.5rem minmax(0, 1fr) !important;
  }
}

/* ===== v21: 검색영역 세로 기준선 통일 + 각 행 100% 제한 ===== */
.sp-bid-page #searchForm {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  overflow: hidden !important;
  box-sizing: border-box !important;
}

/* 두 행이 동일한 3개 세로 영역을 공유
   1열: 전략산업 / 수요기관
   2열: 공고상태 / 공고검색
   3열: 기간 / 공고검색 확장영역 */
.sp-bid-page .nara-filter-compact-v19,
.sp-bid-page .nara-keyword-row-v21 {
  display: grid !important;
  grid-template-columns:
    minmax(0, 1.05fr)
    minmax(0, 0.95fr)
    minmax(0, 2.35fr) !important;
  gap: 1rem !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

/* 상단 한 줄 */
.sp-bid-page .nara-filter-compact-v19 {
  align-items: center !important;
  flex-wrap: unset !important;
  padding: 0.125rem 0 0.75rem !important;
}
.sp-bid-page .nara-compact-field-v19--strategy {
  grid-column: 1 !important;
}
.sp-bid-page .nara-compact-field-v19--status {
  grid-column: 2 !important;
}
.sp-bid-page .nara-compact-period-v19 {
  grid-column: 3 !important;
}

/* 각 항목은 동일한 제목폭을 사용해 입력 시작선도 정렬 */
.sp-bid-page .nara-compact-field-v19,
.sp-bid-page .nara-compact-period-v19,
.sp-bid-page .nara-keyword-field-v20 {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}
.sp-bid-page .nara-compact-field-v19 {
  display: grid !important;
  grid-template-columns: 4.5rem minmax(0, 1fr) !important;
  gap: 0.5rem !important;
  align-items: center !important;
}
.sp-bid-page .nara-compact-period-v19 {
  display: grid !important;
  grid-template-columns: 3.5rem minmax(0, 1fr) !important;
  gap: 0.5rem !important;
  align-items: center !important;
}

/* 상단 입력은 고정 px 폭 제거, 자기 영역 안에서 100% */
.sp-bid-page .nara-compact-field-v19--strategy .nara-filter-control,
.sp-bid-page .nara-compact-field-v19--status .nara-filter-control {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

/* 기간 컨트롤도 3열 내부를 절대 벗어나지 않도록 다시 구성 */
.sp-bid-page .nara-compact-period-v19 > .nara-compact-label-v19 {
  grid-column: 1 !important;
}
.sp-bid-page .nara-compact-period-v19 > .nara-period-type-v18,
.sp-bid-page .nara-compact-period-v19 > .nara-date-v18,
.sp-bid-page .nara-compact-period-v19 > .nara-period-sep-v18,
.sp-bid-page .nara-compact-period-v19 > .nara-period-quick-v19 {
  grid-column: auto !important;
}

/* 기간 제목 다음의 모든 조작요소를 하나의 유연 그리드처럼 배치 */
.sp-bid-page .nara-compact-period-v19 {
  grid-template-columns:
    3.5rem
    minmax(5.375rem, 0.8fr)
    minmax(7rem, 1fr)
    0.75rem
    minmax(7rem, 1fr)
    minmax(8.25rem, 1.05fr) !important;
}
.sp-bid-page .nara-compact-period-v19 .nara-period-type-v18,
.sp-bid-page .nara-compact-period-v19 .nara-date-v18 {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  flex: none !important;
}
.sp-bid-page .nara-compact-period-v19 .nara-period-sep-v18 {
  width: 0.75rem !important;
  min-width: 0 !important;
  text-align: center !important;
}
.sp-bid-page .nara-period-quick-v19 {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 0.25rem !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}
.sp-bid-page .nara-period-chip-v19 {
  width: 100% !important;
  min-width: 0 !important;
  padding: 0 0.25rem !important;
}

/* 하단 한 줄도 상단과 동일한 3열 기준 */
.sp-bid-page .nara-keyword-row-v21 {
  grid-template-columns:
    minmax(0, 1.05fr)
    minmax(0, 0.95fr)
    minmax(0, 2.35fr) !important;
  align-items: center !important;
  margin-top: 0.75rem !important;
  padding: 0 !important;
  border: 0 !important;
}
.sp-bid-page .nara-keyword-field-v20--institution {
  grid-column: 1 !important;
  display: grid !important;
  grid-template-columns: 4.5rem minmax(0, 1fr) !important;
  gap: 0.5rem !important;
  width: 100% !important;
}
.sp-bid-page .nara-search-combo-v21 {
  grid-column: 2 / 4 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 5.5rem !important;
  gap: 0.5rem !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}
.sp-bid-page .nara-keyword-field-v20--keyword {
  display: grid !important;
  grid-template-columns: 4.5rem minmax(0, 1fr) !important;
  gap: 0.5rem !important;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

/* 모든 입력/셀렉트/버튼은 자신의 셀보다 커질 수 없음 */
.sp-bid-page .nara-filter-compact-v19 input,
.sp-bid-page .nara-filter-compact-v19 select,
.sp-bid-page .nara-keyword-row-v21 input,
.sp-bid-page .nara-keyword-row-v21 select,
.sp-bid-page .nara-keyword-row-v21 button {
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}
.sp-bid-page .nara-keyword-row-v21 .nara-text,
.sp-bid-page .nara-keyword-row-v21 .nara-filter-control {
  width: 100% !important;
}
.sp-bid-page .nara-search-combo-v21 > .nara-btn {
  width: 5.5rem !important;
  height: 2.375rem !important;
  margin: 0 !important;
}

/* 87.5rem 콘텐츠 안에서만 구성되며 브라우저 축소 시 자연스럽게 재배치 */
@media (max-width: 73.75rem) {
  .sp-bid-page .nara-filter-compact-v19,
  .sp-bid-page .nara-keyword-row-v21 {
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: 0.75rem !important;
  }
  .sp-bid-page .nara-compact-field-v19--strategy {
    grid-column: 1 !important;
  }
  .sp-bid-page .nara-compact-field-v19--status {
    grid-column: 2 !important;
  }
  .sp-bid-page .nara-compact-period-v19 {
    grid-column: 1 / 3 !important;
  }
  .sp-bid-page .nara-keyword-field-v20--institution {
    grid-column: 1 !important;
  }
  .sp-bid-page .nara-search-combo-v21 {
    grid-column: 2 !important;
  }
  .sp-bid-page .nara-keyword-field-v20--keyword {
    grid-template-columns: 4.5rem minmax(0, 1fr) !important;
  }
}
@media (max-width: 47.5rem) {
  .sp-bid-page .nara-filter-compact-v19,
  .sp-bid-page .nara-keyword-row-v21 {
    grid-template-columns: 1fr !important;
  }
  .sp-bid-page .nara-compact-field-v19--strategy,
  .sp-bid-page .nara-compact-field-v19--status,
  .sp-bid-page .nara-compact-period-v19,
  .sp-bid-page .nara-keyword-field-v20--institution,
  .sp-bid-page .nara-search-combo-v21 {
    grid-column: 1 !important;
  }
  .sp-bid-page .nara-compact-period-v19 {
    grid-template-columns: 4.5rem minmax(0, 1fr) !important;
  }
  .sp-bid-page .nara-compact-period-v19 .nara-period-type-v18,
  .sp-bid-page .nara-compact-period-v19 .nara-date-v18,
  .sp-bid-page .nara-compact-period-v19 .nara-period-sep-v18,
  .sp-bid-page .nara-period-quick-v19 {
    grid-column: 2 !important;
  }
  .sp-bid-page .nara-search-combo-v21 {
    grid-template-columns: minmax(0, 1fr) 5.125rem !important;
  }
}

/* ===== v22: 검색영역 폰트/간격 정밀 조정 ===== */

/* 선택한 조건 */
.sp-bid-page .nara-applied {
  font-size: 0.9375rem !important;
}
.sp-bid-page .nara-applied strong,
.sp-bid-page .nara-tag {
  font-size: 0.9375rem !important;
}

/* 검색 범위 타이틀 */
.sp-bid-page .nara-scope-v12 strong {
  font-size: 0.9375rem !important;
}

/* 전체 초기화 */
.sp-bid-page .nara-reset--scope span {
  font-size: var(--sc-type-size-14) !important;
  font-weight: 600 !important;
}
.sp-bid-page .nara-reset--scope svg {
  width: 0.8125rem !important;
  height: 0.8125rem !important;
}

/* 제목과 컨트롤 간격 축소 */
.sp-bid-page .nara-compact-field-v19 {
  grid-template-columns: 4rem minmax(0, 1fr) !important;
  gap: 0.25rem !important;
}
.sp-bid-page .nara-keyword-field-v20--institution {
  grid-template-columns: 4rem minmax(0, 1fr) !important;
  gap: 0.25rem !important;
}
.sp-bid-page .nara-keyword-field-v20--keyword {
  grid-template-columns: 4rem minmax(0, 1fr) !important;
  gap: 0.25rem !important;
}

/* 기간도 제목과 입력 간격 축소 */
.sp-bid-page .nara-compact-period-v19 {
  grid-template-columns:
    3rem
    minmax(5.375rem, 0.8fr)
    minmax(7rem, 1fr)
    0.75rem
    minmax(7rem, 1fr)
    minmax(8.25rem, 1.05fr) !important;
  gap: 0.25rem !important;
}

/* 공고상태부터는 앞쪽 여백을 더 줘 영역 구분 강화 */
.sp-bid-page .nara-compact-field-v19--status {
  padding-left: 1.125rem !important;
}
.sp-bid-page .nara-compact-period-v19 {
  padding-left: 1.125rem !important;
}
.sp-bid-page .nara-search-combo-v21 {
  padding-left: 1.125rem !important;
}

/* 각 행 100% 유지 */
.sp-bid-page .nara-filter-compact-v19,
.sp-bid-page .nara-keyword-row-v21 {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  overflow: hidden !important;
}

/* 항목명 크기 유지 */
.sp-bid-page .nara-compact-label-v19,
.sp-bid-page .nara-inline-label-v12 {
  font-size: 0.9375rem !important;
  line-height: 1.35 !important;
  white-space: nowrap !important;
}

/* 반응형에서도 간격 과다 발생 방지 */
@media (max-width: 73.75rem) {
  .sp-bid-page .nara-compact-field-v19--status,
  .sp-bid-page .nara-compact-period-v19,
  .sp-bid-page .nara-search-combo-v21 {
    padding-left: 0.625rem !important;
  }
}
@media (max-width: 47.5rem) {
  .sp-bid-page .nara-compact-field-v19,
  .sp-bid-page .nara-keyword-field-v20--institution,
  .sp-bid-page .nara-keyword-field-v20--keyword {
    grid-template-columns: 4.5rem minmax(0, 1fr) !important;
    gap: 0.375rem !important;
  }
  .sp-bid-page .nara-compact-field-v19--status,
  .sp-bid-page .nara-compact-period-v19,
  .sp-bid-page .nara-search-combo-v21 {
    padding-left: 0 !important;
  }
}

/* ===== FINAL: 공고명 영역 소폭 확대 / 목록 100% 유연 배치 유지 ===== */
.sp-bid-page .nara-list-head-v10,
.sp-bid-page .nara-line {
  grid-template-columns:
    minmax(3.375rem, 6fr)
    minmax(9.375rem, 15fr)
    minmax(15.625rem, 28fr)
    minmax(7.375rem, 13fr)
    minmax(7.375rem, 13fr)
    minmax(3.5rem, 7fr)
    minmax(10rem, 18fr) !important;
}
/* 6 + 15 + 28 + 13 + 13 + 7 + 18 = 100 */

.sp-bid-page .nara-line__title,
.sp-bid-page .nara-line__title button {
  min-width: 0 !important;
  max-width: 100% !important;
  text-align: left !important;
}
.sp-bid-page .nara-list-head-v10 .head-title {
  text-align: center !important;
}

/* ===== v23: 상세페이지 문서형 2열 레이아웃 ===== */
.sp-bid-page .nara-detail {
  padding: 0.625rem 0 3.75rem !important;
}
.sp-bid-page .nara-detail.show {
  display: block !important;
  background: var(--sc-color-surface-default) !important;
  border: 0.0625rem solid var(--sc-color-border-default) !important;
  border-radius: var(--sc-radius-large) !important;
  box-shadow: 0 0.75rem 1.875rem rgba(11, 41, 99, 0.06) !important;
  padding: 1.75rem 2rem 2.5rem !important;
}

.sp-bid-page .nara-detail__back {
  margin: 0 0 1rem !important;
  font-size: 0.9375rem !important;
}
.sp-bid-page .nara-detail__hero {
  padding: 0.375rem 0 1.5rem !important;
  border-top: 0 !important;
  border-bottom: 0.0625rem solid var(--sc-color-border-default) !important;
}
.sp-bid-page .nara-detail__badges {
  gap: 0.5rem !important;
}
.sp-bid-page .nara-detail__hero h2 {
  margin-top: 0.875rem !important;
  font-size: 1.875rem !important;
  line-height: 1.4 !important;
  font-weight: 700 !important;
  letter-spacing: -0.03em !important;
}
.sp-bid-page .nara-detail__no {
  margin-top: 0.5rem !important;
  font-size: 0.9375rem !important;
}
.sp-bid-page .nara-detail__notice {
  margin-top: 1rem !important;
  padding: 0.875rem 1rem !important;
  border-radius: var(--sc-radius-large) !important;
  border: 0.0625rem solid var(--sc-color-border-default) !important;
  background: var(--sc-color-surface-canvas) !important;
  font-size: 0.875rem !important;
  line-height: 1.6 !important;
}

/* 섹션을 표처럼 꽉 막힌 박스가 아니라 공고문 문서의 문단처럼 */
.sp-bid-page .nara-section {
  margin-top: 1.75rem !important;
}
.sp-bid-page .nara-section h3 {
  margin-bottom: 0.75rem !important;
  font-size: 1.1875rem !important;
  font-weight: 700 !important;
  color: var(--sc-color-text-heading) !important;
}

/* dt/dd를 한 덩어리 필드로 묶고, 2개씩 한 줄 배치 */
.sp-bid-page .nara-detail-dl {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.75rem 1rem !important;
  border-top: 0 !important;
}
.sp-bid-page .nara-doc-item {
  display: flex !important;
  align-items: stretch !important;
  width: 100% !important;
  min-width: 0 !important;
  border: 0.0625rem solid var(--sc-color-border-default) !important;
  border-radius: var(--sc-radius-large) !important;
  background: var(--sc-color-surface-default) !important;
  overflow: hidden !important;
}
.sp-bid-page .nara-detail-dl dt,
.sp-bid-page .nara-detail-dl dd {
  border-bottom: 0 !important;
  padding: 0.875rem 1rem !important;
}
.sp-bid-page .nara-detail-dl dt {
  flex: 0 0 6.5rem !important;
  max-width: 6.5rem !important;
  background: var(--sc-color-surface-subtle) !important;
  border-right: 0.0625rem solid var(--sc-color-border-default) !important;
  color: var(--sc-color-text-secondary) !important;
  font-size: 0.875rem !important;
  line-height: 1.5 !important;
  font-weight: 600 !important;
}
.sp-bid-page .nara-detail-dl dd {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  background: var(--sc-color-surface-default) !important;
  color: var(--sc-color-text-primary) !important;
  font-size: 0.9375rem !important;
  line-height: 1.6 !important;
  word-break: keep-all !important;
}
.sp-bid-page .nara-detail-dl .nara-amount {
  font-variant-numeric: tabular-nums !important;
  font-weight: 700 !important;
}

/* 하단 액션 */
.sp-bid-page .nara-detail__bottom {
  margin-top: 2rem !important;
  padding-top: 1.25rem !important;
  border-top: 0.0625rem solid var(--sc-color-border-default) !important;
}

/* 모바일/좁은 화면에서는 한 줄 1개 */
@media (max-width: 61.25rem) {
  .sp-bid-page .nara-detail.show {
    padding: 1.5rem 1.375rem 2.125rem !important;
  }
  .sp-bid-page .nara-detail-dl {
    grid-template-columns: 1fr !important;
  }
}
@media (max-width: 43.75rem) {
  .sp-bid-page .nara-detail__hero h2 {
    font-size: 1.5625rem !important;
  }
  .sp-bid-page .nara-detail-dl dt {
    flex: 0 0 5.75rem !important;
    max-width: 5.75rem !important;
    padding: 0.75rem 0.8125rem !important;
  }
  .sp-bid-page .nara-detail-dl dd {
    padding: 0.75rem 0.875rem !important;
  }
}

/* ===== v24: 상세 공고문 문서형 최종 정리 ===== */

/* 기본 라운드: 외곽 10 / 내부 5 */
.sp-bid-page .nara-detail.show {
  border-radius: var(--sc-radius-large) !important;
  padding: 1.875rem 2rem 2.375rem !important;
}
.sp-bid-page .nara-detail__hero {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 20.625rem !important;
  gap: 2.25rem !important;
  align-items: start !important;
  padding: 0 0 1.5rem !important;
  border-bottom: 0.0625rem solid var(--sc-color-border-default) !important;
}
.sp-bid-page .nara-detail__hero-main {
  min-width: 0 !important;
}
.sp-bid-page .nara-detail__hero-side {
  min-width: 0 !important;
  padding-top: 0.125rem !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-end !important;
  gap: 0.625rem !important;
}
.sp-bid-page .nara-detail__cta {
  margin: 0 !important;
}

/* 원문보기 버튼 */
.sp-bid-page .nara-original {
  min-height: 2.75rem !important;
  border-radius: var(--sc-radius-control) !important;
  gap: 0.4375rem !important;
}
/* 안내문은 박스가 아니라 제목영역 우측의 보조 설명 */
.sp-bid-page .nara-detail__notice {
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--sc-color-text-muted) !important;
  font-size: var(--sc-type-size-14) !important;
  line-height: 1.55 !important;
  text-align: left !important;
}

/* 공고문 섹션 */
.sp-bid-page .nara-section {
  margin-top: 1.6875rem !important;
}
.sp-bid-page .nara-section h3 {
  margin: 0 0 0.625rem !important;
  font-size: 1.1875rem !important;
  font-weight: 700 !important;
  color: var(--sc-color-text-heading) !important;
}

/* 배치는 2열 유지. 개별 카드 제거하고 한 개의 정보표처럼 연결 */
.sp-bid-page .nara-detail-dl {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0 !important;
  width: 100% !important;
  border: 0.0625rem solid var(--sc-color-border-default) !important;
  border-radius: var(--sc-radius-small) !important;
  overflow: hidden !important;
  background: var(--sc-color-surface-default) !important;
}
.sp-bid-page .nara-doc-item {
  display: grid !important;
  grid-template-columns: 6.625rem minmax(0, 1fr) !important;
  align-items: stretch !important;
  min-width: 0 !important;
  width: 100% !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: var(--sc-color-surface-default) !important;
  overflow: visible !important;
}
/* 우측 컬럼 시작선 */
.sp-bid-page .nara-doc-item:nth-child(even) {
  border-left: 0.0625rem solid var(--sc-color-border-default) !important;
}
/* 3번째 항목부터 가로 구분선 */
.sp-bid-page .nara-doc-item:nth-child(n/**/+3) {
  border-top: 0.0625rem solid var(--sc-color-border-default) !important;
}

.sp-bid-page .nara-detail-dl dt,
.sp-bid-page .nara-detail-dl dd {
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  padding: 0.8125rem 0.875rem !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}
.sp-bid-page .nara-detail-dl dt {
  background: var(--sc-color-surface-subtle) !important;
  border-right: 0.0625rem solid var(--sc-color-border-default) !important;
  color: var(--sc-color-text-secondary) !important;
  font-size: 0.875rem !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  display: flex !important;
  align-items: center !important;
}
.sp-bid-page .nara-detail-dl dd {
  background: var(--sc-color-surface-default) !important;
  color: var(--sc-color-text-primary) !important;
  font-size: 0.9375rem !important;
  line-height: 1.55 !important;
  display: flex !important;
  align-items: center !important;
  word-break: keep-all !important;
}

/* 하단 액션은 .3125rem */
.sp-bid-page .nara-detail__bottom .nara-btn,
.sp-bid-page .nara-detail__bottom .nara-original {
  border-radius: var(--sc-radius-control) !important;
}

@media (max-width: 61.25rem) {
  .sp-bid-page .nara-detail.show {
    padding: 1.5rem 1.375rem 2rem !important;
  }
  .sp-bid-page .nara-detail__hero {
    grid-template-columns: 1fr !important;
    gap: 1.125rem !important;
  }
  .sp-bid-page .nara-detail__hero-side {
    align-items: flex-start !important;
  }
  .sp-bid-page .nara-detail__notice {
    max-width: 38.75rem !important;
  }
  .sp-bid-page .nara-detail-dl {
    grid-template-columns: 1fr !important;
  }
  .sp-bid-page .nara-doc-item:nth-child(even) {
    border-left: 0 !important;
  }
  .sp-bid-page .nara-doc-item:nth-child(n/**/+2) {
    border-top: 0.0625rem solid var(--sc-color-border-default) !important;
  }
}
@media (max-width: 43.75rem) {
  .sp-bid-page .nara-detail-dl .nara-doc-item {
    grid-template-columns: 5.75rem minmax(0, 1fr) !important;
  }
  .sp-bid-page .nara-detail-dl dt,
  .sp-bid-page .nara-detail-dl dd {
    padding: 0.75rem !important;
  }
}

/* ===== v25: 안내문 축약 + 홀수 항목 빈 틀 보강 ===== */
.sp-bid-page .nara-detail__notice {
  font-size: var(--sc-type-size-14) !important;
  line-height: 1.5 !important;
  max-width: 16.25rem !important;
}

.sp-bid-page .nara-doc-item--blank dt,
.sp-bid-page .nara-doc-item--blank dd {
  color: transparent !important;
}
.sp-bid-page .nara-doc-item--blank dt {
  background: var(--sc-color-surface-subtle) !important;
}
.sp-bid-page .nara-doc-item--blank dd {
  background: var(--sc-color-surface-default) !important;
}

/* ===== v26: 상세 하단 버튼 외부 배치 / 푸터 상단 여백 ===== */
.sp-bid-page .nara-detail__bottom {
  display: none !important;
}

.sp-bid-page .nara-detail-actions-outer {
  display: none;
  width: min(var(--content), calc(100% - 2rem));
  margin: 1.375rem auto 6.25rem;
  padding: 0;
  align-items: center;
  justify-content: space-between;
  gap: 0.875rem;
  border: 0 !important;
}
.sp-bid-page .nara-detail-actions-outer.show {
  display: flex !important;
}
.sp-bid-page .nara-detail-actions-outer .nara-btn,
.sp-bid-page .nara-detail-actions-outer .nara-original {
  min-height: 2.75rem !important;
  border-radius: var(--sc-radius-control) !important;
}
.sp-bid-page .nara-detail-actions-outer .nara-btn {
  min-width: 6rem !important;
}
.sp-bid-page .nara-detail-actions-outer .nara-original {
  min-width: 10.625rem !important;
}

/* 상세 박스 아래 불필요한 라인 정리 */
.sp-bid-page .nara-detail.show {
  margin-bottom: 0 !important;
}
.sp-bid-page .nara-detail__hero {
  border-bottom: 0 !important;
  padding-bottom: 1.125rem !important;
}
.sp-bid-page .nara-section:first-of-type {
  margin-top: 1.125rem !important;
}

/* 푸터 위 여백 */
.sp-bid-page .footer {
  margin-top: 6.25rem !important;
}

@media (max-width: 43.75rem) {
  .sp-bid-page .nara-detail-actions-outer {
    width: min(var(--content), calc(100% - 2rem));
    margin: 1.125rem auto 6.25rem;
    flex-direction: column-reverse;
    align-items: stretch;
  }
  .sp-bid-page .nara-detail-actions-outer > * {
    width: 100%;
    justify-content: center;
  }
}

/* ===== v27: 원문 안내문 우측 끝선 정렬 ===== */
.sp-bid-page .nara-detail__hero-side {
  align-items: flex-end !important;
}
.sp-bid-page .nara-detail__notice {
  width: auto !important;
  max-width: none !important;
  align-self: flex-end !important;
  margin: 0 !important;
  text-align: right !important;
  white-space: nowrap !important;
  font-size: var(--sc-type-size-14) !important;
  line-height: 1.45 !important;
}
@media (max-width: 61.25rem) {
  .sp-bid-page .nara-detail__hero-side {
    align-items: flex-start !important;
  }
  .sp-bid-page .nara-detail__notice {
    align-self: flex-start !important;
    text-align: left !important;
    white-space: normal !important;
  }
}

/* ===== v28: 아이들 원천필드 기준 상세정보 보강 ===== */
.sp-bid-page .nara-badge.notice-kind[hidden] {
  display: none !important;
}
.sp-bid-page .nara-badge.notice-kind {
  border-radius: 62.4375rem !important;
  font-size: var(--sc-type-size-14) !important;
  font-weight: 600 !important;
}
.sp-bid-page .nara-badge.notice-kind.change {
  color: var(--sc-color-warning-text-strong) !important;
  background: var(--sc-color-warning-surface) !important;
  border-color: var(--sc-color-warning) !important;
}
.sp-bid-page .nara-badge.notice-kind.re {
  color: var(--sc-color-action-primary) !important;
  background: var(--sc-color-surface-info) !important;
  border-color: var(--sc-color-info) !important;
}
.sp-bid-page .nara-badge.notice-kind.cancel {
  color: var(--sc-color-danger) !important;
  background: var(--sc-color-danger-surface) !important;
  border-color: var(--sc-color-danger) !important;
}
.sp-bid-page .nara-detail-dl dd {
  white-space: normal !important;
  overflow-wrap: anywhere !important;
}
.sp-bid-page #institutionInfo {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
}

/* ===== v29: KRDS 공식 아이콘 전면 적용 ===== */
.sp-bid-page .svg-icon {
  display: inline-block !important;
  width: 1em;
  height: 1em;
  flex: 0 0 auto;
  background-color: currentColor;
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center center;
  -webkit-mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  mask-size: contain;
}
.sp-bid-page .svg-icon.ico-go {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M4.29922%205.5002C4.29922%204.83745%204.83648%204.3002%205.49922%204.3002H11.9992V2.7002H5.49922C3.95282%202.7002%202.69922%203.9538%202.69922%205.5002V18.5002C2.69922%2020.0466%203.95282%2021.3002%205.49922%2021.3002H18.4992C20.0456%2021.3002%2021.2992%2020.0466%2021.2992%2018.5002V12.0002H19.6992V18.5002C19.6992%2019.1629%2019.162%2019.7002%2018.4992%2019.7002H5.49922C4.83648%2019.7002%204.29922%2019.1629%204.29922%2018.5002V5.5002ZM14.1992%203.5002C14.1992%203.94202%2014.5574%204.3002%2014.9992%204.3002H18.5678L10.4335%2012.4345C10.1211%2012.7469%2010.1211%2013.2535%2010.4335%2013.5659C10.746%2013.8783%2011.2525%2013.8783%2011.5649%2013.5659L19.6992%205.43157V9.0002C19.6992%209.44202%2020.0574%209.8002%2020.4992%209.8002C20.941%209.8002%2021.2992%209.44202%2021.2992%209.0002V2.7002H14.9992C14.5574%202.7002%2014.1992%203.05837%2014.1992%203.5002Z%22%20fill%3D%22%232D2D2D%22%2F%3E%0A%3C%2Fsvg%3E") !important;
  mask-image: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M4.29922%205.5002C4.29922%204.83745%204.83648%204.3002%205.49922%204.3002H11.9992V2.7002H5.49922C3.95282%202.7002%202.69922%203.9538%202.69922%205.5002V18.5002C2.69922%2020.0466%203.95282%2021.3002%205.49922%2021.3002H18.4992C20.0456%2021.3002%2021.2992%2020.0466%2021.2992%2018.5002V12.0002H19.6992V18.5002C19.6992%2019.1629%2019.162%2019.7002%2018.4992%2019.7002H5.49922C4.83648%2019.7002%204.29922%2019.1629%204.29922%2018.5002V5.5002ZM14.1992%203.5002C14.1992%203.94202%2014.5574%204.3002%2014.9992%204.3002H18.5678L10.4335%2012.4345C10.1211%2012.7469%2010.1211%2013.2535%2010.4335%2013.5659C10.746%2013.8783%2011.2525%2013.8783%2011.5649%2013.5659L19.6992%205.43157V9.0002C19.6992%209.44202%2020.0574%209.8002%2020.4992%209.8002C20.941%209.8002%2021.2992%209.44202%2021.2992%209.0002V2.7002H14.9992C14.5574%202.7002%2014.1992%203.05837%2014.1992%203.5002Z%22%20fill%3D%22%232D2D2D%22%2F%3E%0A%3C%2Fsvg%3E") !important;
  transform: none !important;
}
.sp-bid-page .svg-icon.ico-share {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M14.3984%206.3C14.3984%204.47746%2015.8759%203%2017.6984%203C19.521%203%2020.9984%204.47746%2020.9984%206.3C20.9984%208.12254%2019.521%209.6%2017.6984%209.6C16.6494%209.6%2015.7146%209.11047%2015.1102%208.34738L9.52782%2011.3105C9.57512%2011.5329%209.6%2011.7637%209.6%2012.0002C9.6%2012.3148%209.55597%2012.6191%209.47374%2012.9074L14.9792%2015.8297C15.5743%2014.966%2016.5703%2014.3999%2017.6984%2014.3999C19.521%2014.3999%2020.9984%2015.8774%2020.9984%2017.6999C20.9984%2019.5224%2019.521%2020.9999%2017.6984%2020.9999C15.8759%2020.9999%2014.3984%2019.5224%2014.3984%2017.6999C14.3984%2017.5793%2014.4049%2017.4602%2014.4175%2017.343L8.67279%2014.2936C8.07276%2014.9143%207.23145%2015.3002%206.3%2015.3002C4.47746%2015.3002%203%2013.8227%203%2012.0002C3%2010.1777%204.47746%208.7002%206.3%208.7002C7.3121%208.7002%208.21778%209.15582%208.82312%209.87314L14.4503%206.88619C14.4162%206.69595%2014.3984%206.50005%2014.3984%206.3ZM17.6984%204.6C16.7596%204.6%2015.9984%205.36112%2015.9984%206.3C15.9984%207.23888%2016.7596%208%2017.6984%208C18.6373%208%2019.3984%207.23888%2019.3984%206.3C19.3984%205.36112%2018.6373%204.6%2017.6984%204.6ZM4.6%2012.0002C4.6%2011.0613%205.36112%2010.3002%206.3%2010.3002C7.23888%2010.3002%208%2011.0613%208%2012.0002C8%2012.9391%207.23888%2013.7002%206.3%2013.7002C5.36112%2013.7002%204.6%2012.9391%204.6%2012.0002ZM15.9984%2017.6999C15.9984%2016.761%2016.7596%2015.9999%2017.6984%2015.9999C18.6373%2015.9999%2019.3984%2016.761%2019.3984%2017.6999C19.3984%2018.6388%2018.6373%2019.3999%2017.6984%2019.3999C16.7596%2019.3999%2015.9984%2018.6388%2015.9984%2017.6999Z%22%20fill%3D%22%2333363D%22%2F%3E%0A%3C%2Fsvg%3E") !important;
  mask-image: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M14.3984%206.3C14.3984%204.47746%2015.8759%203%2017.6984%203C19.521%203%2020.9984%204.47746%2020.9984%206.3C20.9984%208.12254%2019.521%209.6%2017.6984%209.6C16.6494%209.6%2015.7146%209.11047%2015.1102%208.34738L9.52782%2011.3105C9.57512%2011.5329%209.6%2011.7637%209.6%2012.0002C9.6%2012.3148%209.55597%2012.6191%209.47374%2012.9074L14.9792%2015.8297C15.5743%2014.966%2016.5703%2014.3999%2017.6984%2014.3999C19.521%2014.3999%2020.9984%2015.8774%2020.9984%2017.6999C20.9984%2019.5224%2019.521%2020.9999%2017.6984%2020.9999C15.8759%2020.9999%2014.3984%2019.5224%2014.3984%2017.6999C14.3984%2017.5793%2014.4049%2017.4602%2014.4175%2017.343L8.67279%2014.2936C8.07276%2014.9143%207.23145%2015.3002%206.3%2015.3002C4.47746%2015.3002%203%2013.8227%203%2012.0002C3%2010.1777%204.47746%208.7002%206.3%208.7002C7.3121%208.7002%208.21778%209.15582%208.82312%209.87314L14.4503%206.88619C14.4162%206.69595%2014.3984%206.50005%2014.3984%206.3ZM17.6984%204.6C16.7596%204.6%2015.9984%205.36112%2015.9984%206.3C15.9984%207.23888%2016.7596%208%2017.6984%208C18.6373%208%2019.3984%207.23888%2019.3984%206.3C19.3984%205.36112%2018.6373%204.6%2017.6984%204.6ZM4.6%2012.0002C4.6%2011.0613%205.36112%2010.3002%206.3%2010.3002C7.23888%2010.3002%208%2011.0613%208%2012.0002C8%2012.9391%207.23888%2013.7002%206.3%2013.7002C5.36112%2013.7002%204.6%2012.9391%204.6%2012.0002ZM15.9984%2017.6999C15.9984%2016.761%2016.7596%2015.9999%2017.6984%2015.9999C18.6373%2015.9999%2019.3984%2016.761%2019.3984%2017.6999C19.3984%2018.6388%2018.6373%2019.3999%2017.6984%2019.3999C16.7596%2019.3999%2015.9984%2018.6388%2015.9984%2017.6999Z%22%20fill%3D%22%2333363D%22%2F%3E%0A%3C%2Fsvg%3E") !important;
}
.sp-bid-page .svg-icon.ico-print {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M6.8%202C6.35817%202%206%202.35817%206%202.8V7H3.80282C2.80892%207%202.00312%207.80556%202.00282%208.79946L2%2018.2C1.99994%2018.4122%202.08419%2018.6157%202.23423%2018.7658C2.38427%2018.9159%202.58779%2019.0002%202.8%2019.0002H6.19922V21.2002C6.19922%2021.642%206.55739%2022.0002%206.99922%2022.0002H17.1992C17.641%2022.0002%2017.9992%2021.642%2017.9992%2021.2002V19.0002H21.2031C21.645%2019.0002%2022.0031%2018.642%2022.0031%2018.2002V8.8C22.0031%207.80589%2021.1972%207%2020.2031%207H17.9992V2.8C17.9992%202.35817%2017.641%202%2017.1992%202H6.8ZM16.3992%207V3.6H7.6V7H16.3992ZM20.4031%2017.4002H17.9992V14.0002C17.9992%2013.788%2017.9149%2013.5845%2017.7649%2013.4345C17.6149%2013.2845%2017.4114%2013.2002%2017.1992%2013.2002H6.99922C6.55739%2013.2002%206.19922%2013.5584%206.19922%2014.0002V17.4002H3.60024L3.60282%208.79994C3.60286%208.68951%203.69239%208.6%203.80282%208.6H20.2031C20.3136%208.6%2020.4031%208.68954%2020.4031%208.8V17.4002ZM7.79922%2014.8002V20.4002H16.3992V14.8002H7.79922Z%22%20fill%3D%22%2333363D%22%2F%3E%0A%3C%2Fsvg%3E") !important;
  mask-image: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M6.8%202C6.35817%202%206%202.35817%206%202.8V7H3.80282C2.80892%207%202.00312%207.80556%202.00282%208.79946L2%2018.2C1.99994%2018.4122%202.08419%2018.6157%202.23423%2018.7658C2.38427%2018.9159%202.58779%2019.0002%202.8%2019.0002H6.19922V21.2002C6.19922%2021.642%206.55739%2022.0002%206.99922%2022.0002H17.1992C17.641%2022.0002%2017.9992%2021.642%2017.9992%2021.2002V19.0002H21.2031C21.645%2019.0002%2022.0031%2018.642%2022.0031%2018.2002V8.8C22.0031%207.80589%2021.1972%207%2020.2031%207H17.9992V2.8C17.9992%202.35817%2017.641%202%2017.1992%202H6.8ZM16.3992%207V3.6H7.6V7H16.3992ZM20.4031%2017.4002H17.9992V14.0002C17.9992%2013.788%2017.9149%2013.5845%2017.7649%2013.4345C17.6149%2013.2845%2017.4114%2013.2002%2017.1992%2013.2002H6.99922C6.55739%2013.2002%206.19922%2013.5584%206.19922%2014.0002V17.4002H3.60024L3.60282%208.79994C3.60286%208.68951%203.69239%208.6%203.80282%208.6H20.2031C20.3136%208.6%2020.4031%208.68954%2020.4031%208.8V17.4002ZM7.79922%2014.8002V20.4002H16.3992V14.8002H7.79922Z%22%20fill%3D%22%2333363D%22%2F%3E%0A%3C%2Fsvg%3E") !important;
}
.sp-bid-page .svg-icon.ico-reset {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M3.86172%2012.0002C3.86172%207.51019%207.52324%203.8627%2012.0494%203.8627C15.2623%203.8627%2018.0423%205.70159%2019.3832%208.37745H15.293V9.97745H20.9377C21.3795%209.97745%2021.7377%209.61928%2021.7377%209.17745V3.53271H20.1377V6.51537C18.3753%203.94775%2015.4098%202.2627%2012.0494%202.2627C6.64805%202.2627%202.26172%206.6181%202.26172%2012.0002C2.26172%2017.3822%206.64805%2021.7377%2012.0494%2021.7377C16.9532%2021.7377%2021.0184%2018.1492%2021.7277%2013.4605C21.7938%2013.0236%2021.4932%2012.6159%2021.0564%2012.5498C20.6195%2012.4837%2020.2118%2012.7843%2020.1457%2013.2212C19.554%2017.1327%2016.1567%2020.1377%2012.0494%2020.1377C7.52325%2020.1377%203.86172%2016.4902%203.86172%2012.0002Z%22%20fill%3D%22%232D2D2D%22%2F%3E%0A%3C%2Fsvg%3E") !important;
  mask-image: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M3.86172%2012.0002C3.86172%207.51019%207.52324%203.8627%2012.0494%203.8627C15.2623%203.8627%2018.0423%205.70159%2019.3832%208.37745H15.293V9.97745H20.9377C21.3795%209.97745%2021.7377%209.61928%2021.7377%209.17745V3.53271H20.1377V6.51537C18.3753%203.94775%2015.4098%202.2627%2012.0494%202.2627C6.64805%202.2627%202.26172%206.6181%202.26172%2012.0002C2.26172%2017.3822%206.64805%2021.7377%2012.0494%2021.7377C16.9532%2021.7377%2021.0184%2018.1492%2021.7277%2013.4605C21.7938%2013.0236%2021.4932%2012.6159%2021.0564%2012.5498C20.6195%2012.4837%2020.2118%2012.7843%2020.1457%2013.2212C19.554%2017.1327%2016.1567%2020.1377%2012.0494%2020.1377C7.52325%2020.1377%203.86172%2016.4902%203.86172%2012.0002Z%22%20fill%3D%22%232D2D2D%22%2F%3E%0A%3C%2Fsvg%3E") !important;
}
.sp-bid-page .svg-icon.ico-angle {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M4.47243%208.39766C4.80494%208.10671%205.31035%208.1404%205.60129%208.47291L11.9992%2015.7848L18.3972%208.47291C18.6881%208.1404%2019.1935%208.10671%2019.526%208.39766C19.8585%208.6886%2019.8922%209.19401%2019.6013%209.52652L11.9992%2018.2146L4.39717%209.52652C4.10622%209.19401%204.13992%208.6886%204.47243%208.39766Z%22%20fill%3D%22%232D2D2D%22%2F%3E%0A%3C%2Fsvg%3E") !important;
  mask-image: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M4.47243%208.39766C4.80494%208.10671%205.31035%208.1404%205.60129%208.47291L11.9992%2015.7848L18.3972%208.47291C18.6881%208.1404%2019.1935%208.10671%2019.526%208.39766C19.8585%208.6886%2019.8922%209.19401%2019.6013%209.52652L11.9992%2018.2146L4.39717%209.52652C4.10622%209.19401%204.13992%208.6886%204.47243%208.39766Z%22%20fill%3D%22%232D2D2D%22%2F%3E%0A%3C%2Fsvg%3E") !important;
}
.sp-bid-page .svg-icon.ico-angle.left {
  transform: rotate(90deg) !important;
}
.sp-bid-page .svg-icon.ico-angle.right {
  transform: rotate(-90deg) !important;
}
.sp-bid-page .svg-icon.ico-all {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M2.19922%206.0002C2.19922%205.55837%202.55739%205.2002%202.99922%205.2002H20.9992C21.441%205.2002%2021.7992%205.55837%2021.7992%206.0002C21.7992%206.44202%2021.441%206.8002%2020.9992%206.8002H2.99922C2.55739%206.8002%202.19922%206.44202%202.19922%206.0002ZM2.19922%2012.0002C2.19922%2011.5584%202.55739%2011.2002%202.99922%2011.2002H20.9992C21.441%2011.2002%2021.7992%2011.5584%2021.7992%2012.0002C21.7992%2012.442%2021.441%2012.8002%2020.9992%2012.8002H2.99922C2.55739%2012.8002%202.19922%2012.442%202.19922%2012.0002ZM2.99922%2017.2002C2.55739%2017.2002%202.19922%2017.5584%202.19922%2018.0002C2.19922%2018.442%202.55739%2018.8002%202.99922%2018.8002H20.9992C21.441%2018.8002%2021.7992%2018.442%2021.7992%2018.0002C21.7992%2017.5584%2021.441%2017.2002%2020.9992%2017.2002H2.99922Z%22%20fill%3D%22%2333363D%22%2F%3E%0A%3C%2Fsvg%3E") !important;
  mask-image: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M2.19922%206.0002C2.19922%205.55837%202.55739%205.2002%202.99922%205.2002H20.9992C21.441%205.2002%2021.7992%205.55837%2021.7992%206.0002C21.7992%206.44202%2021.441%206.8002%2020.9992%206.8002H2.99922C2.55739%206.8002%202.19922%206.44202%202.19922%206.0002ZM2.19922%2012.0002C2.19922%2011.5584%202.55739%2011.2002%202.99922%2011.2002H20.9992C21.441%2011.2002%2021.7992%2011.5584%2021.7992%2012.0002C21.7992%2012.442%2021.441%2012.8002%2020.9992%2012.8002H2.99922C2.55739%2012.8002%202.19922%2012.442%202.19922%2012.0002ZM2.99922%2017.2002C2.55739%2017.2002%202.19922%2017.5584%202.19922%2018.0002C2.19922%2018.442%202.55739%2018.8002%202.99922%2018.8002H20.9992C21.441%2018.8002%2021.7992%2018.442%2021.7992%2018.0002C21.7992%2017.5584%2021.441%2017.2002%2020.9992%2017.2002H2.99922Z%22%20fill%3D%22%2333363D%22%2F%3E%0A%3C%2Fsvg%3E") !important;
}

/* 헤더 전체메뉴 */
.sp-bid-page .menu-btn {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.sp-bid-page .menu-btn .ico-all {
  width: 1.25rem !important;
  height: 1.25rem !important;
}

/* 페이지 기능: KRDS print/share */
.sp-bid-page .page-icon > svg {
  display: none !important;
}
.sp-bid-page .page-icon .svg-icon {
  width: 1.1875rem !important;
  height: 1.1875rem !important;
  color: currentColor !important;
}

/* 나라장터 바로가기 / 원문보기: KRDS ico-go */
.sp-bid-page .nara-intro__link {
  gap: 0.375rem !important;
}
.sp-bid-page .nara-intro__link .ico-go {
  width: 0.9375rem !important;
  height: 0.9375rem !important;
}
.sp-bid-page .nara-original .ico-go {
  width: 1rem !important;
  height: 1rem !important;
}

/* 전체 초기화: KRDS ico-reset */
.sp-bid-page .nara-reset > svg {
  display: none !important;
}
.sp-bid-page .nara-reset .ico-reset {
  width: 0.875rem !important;
  height: 0.875rem !important;
}

/* 브레드크럼 구분자도 KRDS angle */
.sp-bid-page .breadcrumb li + li::before {
  content: "" !important;
  display: inline-block !important;
  width: 0.875rem !important;
  height: 0.875rem !important;
  flex: 0 0 0.875rem !important;
  background-color: var(--sc-color-text-muted) !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M4.47243%208.39766C4.80494%208.10671%205.31035%208.1404%205.60129%208.47291L11.9992%2015.7848L18.3972%208.47291C18.6881%208.1404%2019.1935%208.10671%2019.526%208.39766C19.8585%208.6886%2019.8922%209.19401%2019.6013%209.52652L11.9992%2018.2146L4.39717%209.52652C4.10622%209.19401%204.13992%208.6886%204.47243%208.39766Z%22%20fill%3D%22%232D2D2D%22%2F%3E%0A%3C%2Fsvg%3E")
    center/contain no-repeat !important;
  mask: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M4.47243%208.39766C4.80494%208.10671%205.31035%208.1404%205.60129%208.47291L11.9992%2015.7848L18.3972%208.47291C18.6881%208.1404%2019.1935%208.10671%2019.526%208.39766C19.8585%208.6886%2019.8922%209.19401%2019.6013%209.52652L11.9992%2018.2146L4.39717%209.52652C4.10622%209.19401%204.13992%208.6886%204.47243%208.39766Z%22%20fill%3D%22%232D2D2D%22%2F%3E%0A%3C%2Fsvg%3E")
    center/contain no-repeat !important;
  transform: rotate(-90deg) !important;
}

/* 페이지네이션: KRDS angle */
.sp-bid-page .nara-pagination button .ico-angle {
  width: 1rem !important;
  height: 1rem !important;
  color: currentColor !important;
}

/* ===== v30: KRDS 아이콘 검수 정리 ===== */
.sp-bid-page .page-icon svg,
.sp-bid-page .nara-reset svg,
.sp-bid-page .nara-intro__link > span[aria-hidden="true"] {
  display: none !important;
}

/* 아이콘 버튼 공통 크기와 currentColor 상속 */
.sp-bid-page .page-icon,
.sp-bid-page .menu-btn {
  line-height: 1 !important;
}
.sp-bid-page .page-icon .svg-icon,
.sp-bid-page .menu-btn .svg-icon,
.sp-bid-page .nara-reset .svg-icon,
.sp-bid-page .nara-intro__link .svg-icon,
.sp-bid-page .nara-original .svg-icon {
  vertical-align: middle !important;
}

/* disabled 페이지네이션은 아이콘도 동일 상태 */
.sp-bid-page .nara-pagination button:disabled .svg-icon {
  opacity: 0.45 !important;
}

/* ===== v31: Station C 본문 타이포그래피 체계 =====
   Body Normal : 1rem / 400 / 1.5
   Body Bold   : 1rem / 600 / 1.5
   Small Normal: .875rem / 400 / 1.5
   Small Bold  : .875rem / 600 / 1.5
   ※ 본문/폼/목록/부가텍스트의 font-size는 rem 단위만 사용
*/

/* Typography tokens */
.sp-bid-page {
  --font-body: 1rem;
  --font-small: 0.875rem;
  --weight-regular: 400;
  --weight-semibold: 600;
  --line-body: 1.5;
}

/* Body Normal */
.sp-bid-page,
.sp-bid-page input,
.sp-bid-page select,
.sp-bid-page textarea,
.sp-bid-page button,
.sp-bid-page .nara-scope-v12,
.sp-bid-page .nara-filter-control,
.sp-bid-page .nara-period-type-v18,
.sp-bid-page .nara-date-v18,
.sp-bid-page .nara-text,
.sp-bid-page .nara-line,
.sp-bid-page .nara-line__no,
.sp-bid-page .nara-line__institution,
.sp-bid-page .nara-line__notice-inst,
.sp-bid-page .nara-line__periodtxt,
.sp-bid-page .nara-detail-dl dd,
.sp-bid-page .nara-detail__no,
.sp-bid-page .footer-info {
  font-size: var(--font-body) !important;
  font-weight: var(--weight-regular) !important;
  line-height: var(--line-body) !important;
}

/* Body Bold */
.sp-bid-page .nara-scope-v12 strong,
.sp-bid-page .nara-compact-label-v19,
.sp-bid-page .nara-inline-label-v12,
.sp-bid-page .nara-results__count,
.sp-bid-page .nara-line__title button,
.sp-bid-page .nara-detail-dl dd.nara-amount,
.sp-bid-page .nara-original,
.sp-bid-page .nara-btn,
.sp-bid-page .footer-links {
  font-size: var(--font-body) !important;
  font-weight: var(--weight-semibold) !important;
  line-height: var(--line-body) !important;
}

/* Small Normal */
.sp-bid-page .breadcrumb,
.sp-bid-page .page-actions,
.sp-bid-page .nara-intro,
.sp-bid-page .nara-applied,
.sp-bid-page .nara-tag,
.sp-bid-page .nara-detail__notice,
.sp-bid-page .nara-detail__no,
.sp-bid-page .footer-copy,
.sp-bid-page .sr-only {
  font-size: var(--font-small) !important;
  font-weight: var(--weight-regular) !important;
  line-height: var(--line-body) !important;
}

/* Small Bold */
.sp-bid-page .nara-badge,
.sp-bid-page .nara-line__dday,
.sp-bid-page .nara-reset--scope,
.sp-bid-page .nara-reset--scope span,
.sp-bid-page .nara-period-chip-v19,
.sp-bid-page .nara-list-head-v10,
.sp-bid-page .nara-list-select {
  font-size: var(--font-small) !important;
  font-weight: var(--weight-semibold) !important;
  line-height: var(--line-body) !important;
}

/* 목록 제목/본문 명확화 */
.sp-bid-page .nara-line__title button {
  font-size: var(--font-body) !important;
  font-weight: var(--weight-semibold) !important;
}
.sp-bid-page .nara-line > span:not(.nara-line__ddaycol),
.sp-bid-page .nara-line__institution,
.sp-bid-page .nara-line__notice-inst,
.sp-bid-page .nara-line__periodtxt {
  font-size: var(--font-body) !important;
  font-weight: var(--weight-regular) !important;
}

/* 상세 정보 라벨은 Small Bold */
.sp-bid-page .nara-detail-dl dt {
  font-size: var(--font-small) !important;
  font-weight: var(--weight-semibold) !important;
  line-height: var(--line-body) !important;
}

/* 선택한 조건 텍스트도 체계에 맞춤 */
.sp-bid-page .nara-applied strong {
  font-size: var(--font-body) !important;
  font-weight: var(--weight-semibold) !important;
  line-height: var(--line-body) !important;
}
.sp-bid-page .nara-tag {
  font-size: var(--font-body) !important;
  font-weight: var(--weight-regular) !important;
  line-height: var(--line-body) !important;
}

/* 폼 내부 힌트/부가 텍스트 */
.sp-bid-page ::placeholder {
  font-size: var(--font-small) !important;
  font-weight: var(--weight-regular) !important;
  line-height: var(--line-body) !important;
}

/* 기존 본문계열 px font-size 선언을 최종 토큰이 덮어쓰도록 함 */

/* ===== v32: 디지털 정부서비스 UI/UX 가이드라인(2025.08) 비교·보정 ===== */
.sp-bid-page {
  --control-border: var(--sc-color-text-muted);
  --focus: var(--sc-color-action-primary);
}

/* [타이포그래피]
   - Station C 확정 체계 유지: Body 1rem, Small .875rem
   - 본문 최소 1rem 보장
   - Pretendard는 Station C 확장형 디자인 체계로 유지 */
.sp-bid-page {
  font-size: 1rem !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}
.sp-bid-page ::placeholder {
  color: var(--sc-color-text-muted) !important;
  opacity: 1 !important;
}

/* [초점]
   반투명 포커스 대신 주조색 실선으로 명확하게 표시 */
.sp-bid-page a:focus-visible,
.sp-bid-page button:focus-visible,
.sp-bid-page input:focus-visible,
.sp-bid-page select:focus-visible,
.sp-bid-page textarea:focus-visible,
.sp-bid-page .nara-list:focus-visible {
  outline: 0.1875rem solid var(--focus) !important;
  outline-offset: 0.125rem !important;
}

/* [입력/선택]
   흰 배경에서 비텍스트 대비가 확보되는 경계색 사용.
   기존의 밝은 blue-gray 테두리는 인터랙티브 컨트롤에서만 강화 */
.sp-bid-page .nara-filter-control,
.sp-bid-page .nara-period-type-v18,
.sp-bid-page .nara-date-v18,
.sp-bid-page .nara-text,
.sp-bid-page .nara-list-select {
  border-color: var(--control-border) !important;
  background: var(--sc-color-surface-default) !important;
  color: var(--sc-color-text-primary) !important;
  border-radius: var(--sc-radius-control) !important;
}
.sp-bid-page .nara-filter-control:hover,
.sp-bid-page .nara-period-type-v18:hover,
.sp-bid-page .nara-date-v18:hover,
.sp-bid-page .nara-text:hover,
.sp-bid-page .nara-list-select:hover {
  border-color: var(--sc-color-text-secondary) !important;
}
.sp-bid-page .nara-filter-control:focus,
.sp-bid-page .nara-period-type-v18:focus,
.sp-bid-page .nara-date-v18:focus,
.sp-bid-page .nara-text:focus,
.sp-bid-page .nara-list-select:focus {
  border-color: var(--focus) !important;
  box-shadow: none !important;
}

/* 검색어 삭제 컨트롤 - KRDS ico_delete */
.sp-bid-page .nara-keyword-input-wrap {
  position: relative !important;
  width: 100% !important;
  min-width: 0 !important;
}
.sp-bid-page .nara-keyword-input-wrap .nara-text {
  width: 100% !important;
  padding-right: 2.625rem !important;
}
.sp-bid-page .nara-search-clear {
  position: absolute !important;
  top: 50% !important;
  right: 0.25rem !important;
  width: 2.25rem !important;
  height: 2.25rem !important;
  transform: translateY(-50%) !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  border-radius: var(--sc-radius-small) !important;
  background: transparent !important;
  color: var(--sc-color-text-secondary) !important;
}
.sp-bid-page .nara-search-clear[hidden] {
  display: none !important;
}
.sp-bid-page .svg-icon.ico-delete {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M17.159%2018.2938C17.4714%2018.6062%2017.9779%2018.6062%2018.2904%2018.2938C18.6028%2017.9814%2018.6028%2017.4748%2018.2904%2017.1624L13.0587%2011.9307L18.2918%206.69761C18.6042%206.38519%2018.6042%205.87866%2018.2918%205.56624C17.9794%205.25382%2017.4729%205.25382%2017.1604%205.56624L11.9273%2010.7994L6.69381%205.56586C6.38139%205.25344%205.87486%205.25344%205.56244%205.56586C5.25002%205.87828%205.25002%206.38481%205.56244%206.69723L10.7959%2011.9307L5.56388%2017.1628C5.25146%2017.4752%205.25146%2017.9817%205.56388%2018.2942C5.8763%2018.6066%206.38283%2018.6066%206.69525%2018.2942L11.9273%2013.0621L17.159%2018.2938Z%22%20fill%3D%22%232D2D2D%22%2F%3E%0A%3C%2Fsvg%3E") !important;
  mask-image: url("data:image/svg+xml,%3Csvg%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20fill-rule%3D%22evenodd%22%20clip-rule%3D%22evenodd%22%20d%3D%22M17.159%2018.2938C17.4714%2018.6062%2017.9779%2018.6062%2018.2904%2018.2938C18.6028%2017.9814%2018.6028%2017.4748%2018.2904%2017.1624L13.0587%2011.9307L18.2918%206.69761C18.6042%206.38519%2018.6042%205.87866%2018.2918%205.56624C17.9794%205.25382%2017.4729%205.25382%2017.1604%205.56624L11.9273%2010.7994L6.69381%205.56586C6.38139%205.25344%205.87486%205.25344%205.56244%205.56586C5.25002%205.87828%205.25002%206.38481%205.56244%206.69723L10.7959%2011.9307L5.56388%2017.1628C5.25146%2017.4752%205.25146%2017.9817%205.56388%2018.2942C5.8763%2018.6066%206.38283%2018.6066%206.69525%2018.2942L11.9273%2013.0621L17.159%2018.2938Z%22%20fill%3D%22%232D2D2D%22%2F%3E%0A%3C%2Fsvg%3E") !important;
  width: 1.125rem !important;
  height: 1.125rem !important;
}
.sp-bid-page .nara-search-clear:hover {
  background: var(--sc-color-surface-section) !important;
  color: var(--sc-color-text-primary) !important;
}

/* [버튼/링크 위계]
   화면 내 최상위 채움 CTA는 1개만 유지.
   상세 상단 원문보기 = 주 CTA, 상세 하단 원문보기 = 윤곽선 링크 */
.sp-bid-page .nara-btn--primary,
.sp-bid-page #originalLink {
  background: var(--secondary) !important;
  border-color: var(--secondary) !important;
  color: var(--sc-color-surface-default) !important;
}
.sp-bid-page #detailActionOuter #originalLinkBottom {
  background: var(--sc-color-surface-default) !important;
  border: 0.0625rem solid var(--secondary) !important;
  color: var(--secondary) !important;
}
.sp-bid-page #detailActionOuter #backToListBottom {
  background: var(--sc-color-surface-default) !important;
  border: 0.0625rem solid var(--control-border) !important;
  color: var(--sc-color-text-primary) !important;
}
.sp-bid-page .nara-btn,
.sp-bid-page .nara-original,
.sp-bid-page .header-btn {
  border-radius: var(--sc-radius-control) !important;
}

/* [아이콘 버튼]
   터치·클릭 목표영역을 44 CSS px 상당 이상으로 확보 */
.sp-bid-page .page-icon,
.sp-bid-page .menu-btn {
  width: 2.75rem !important;
  height: 2.75rem !important;
  min-width: 2.75rem !important;
  min-height: 2.75rem !important;
  border-color: var(--control-border) !important;
  border-radius: var(--sc-radius-small) !important;
}
.sp-bid-page .page-icon:hover,
.sp-bid-page .menu-btn:hover {
  border-color: var(--sc-color-text-secondary) !important;
  background: var(--sc-color-surface-subtle) !important;
}

/* 페이지네이션 조작영역 */
.sp-bid-page .nara-pagination button {
  min-width: 2.75rem !important;
  width: 2.75rem !important;
  height: 2.75rem !important;
  min-height: 2.75rem !important;
  border-color: var(--control-border) !important;
  border-radius: var(--sc-radius-control) !important;
}
.sp-bid-page .nara-pagination .current {
  background: var(--secondary) !important;
  border-color: var(--secondary) !important;
  color: var(--sc-color-surface-default) !important;
}
/* disabled 상태는 alpha/opacity에 의존하지 않고 고정 색상으로 구분 */
.sp-bid-page button:disabled,
.sp-bid-page [aria-disabled="true"] {
  opacity: 1 !important;
  color: var(--sc-color-text-muted) !important;
  background: var(--sc-color-surface-section) !important;
  border-color: var(--sc-color-text-muted) !important;
  cursor: not-allowed !important;
}
.sp-bid-page .nara-pagination button:disabled .svg-icon {
  opacity: 1 !important;
  color: var(--sc-color-text-muted) !important;
}

/* 부가 텍스트도 일반 텍스트 대비를 확보 */
.sp-bid-page .breadcrumb li,
.sp-bid-page .page-title p,
.sp-bid-page .nara-detail__notice,
.sp-bid-page .nara-detail__no {
  color: var(--sc-color-text-secondary) !important;
}

/* 구조화 목록의 빈 데이터는 기존 대시(—) 유지.
   정렬 컨트롤은 목록 우측 상단 배치 유지 */

/* 검색영역은 기존 Station C의 압축형 레이아웃을 유지하되
   레이블-컨트롤 관계와 100% 영역 제한을 보강 */
.sp-bid-page .nara-keyword-field-v20--keyword {
  min-width: 0 !important;
  max-width: 100% !important;
}
.sp-bid-page .nara-keyword-input-wrap,
.sp-bid-page .nara-keyword-input-wrap .nara-text {
  box-sizing: border-box !important;
  max-width: 100% !important;
}

/* 작은 화면에서 조작 요소가 콘텐츠 영역을 넘지 않음 */
@media (max-width: 47.5rem) {
  .sp-bid-page .page-icon,
  .sp-bid-page .menu-btn {
    width: 2.75rem !important;
    height: 2.75rem !important;
  }
}

/* ===== v33: KRDS/디지털 정부서비스 가이드 준수 인터랙션 =====
   - hover/focus/active 상태를 명확히 구분
   - 이동 효과는 fine pointer에서만 미세하게 적용
   - prefers-reduced-motion 환경에서는 모션 제거
*/
.sp-bid-page {
  --motion-fast: 120ms;
  --motion-base: 180ms;
  --motion-slow: 260ms;
  --ease-standard: cubic-bezier(0.2, 0, 0, 1);
  --ease-out: cubic-bezier(0, 0, 0.2, 1);
}

/* 공통 액션 요소 */
.sp-bid-page .nara-btn,
.sp-bid-page .nara-original,
.sp-bid-page .header-btn,
.sp-bid-page .menu-btn,
.sp-bid-page .page-icon,
.sp-bid-page .nara-intro__link,
.sp-bid-page .nara-reset,
.sp-bid-page .nara-period-chip-v19,
.sp-bid-page .nara-pagination button,
.sp-bid-page .nara-search-clear {
  transition:
    background-color var(--motion-base) var(--ease-standard),
    border-color var(--motion-base) var(--ease-standard),
    color var(--motion-base) var(--ease-standard),
    box-shadow var(--motion-base) var(--ease-out),
    transform var(--motion-fast) var(--ease-out);
}

/* 상단 유틸/아이콘 버튼 */
.sp-bid-page .header-btn:hover,
.sp-bid-page .menu-btn:hover,
.sp-bid-page .page-icon:hover {
  background: var(--sc-color-surface-info) !important;
  border-color: var(--sc-color-info) !important;
  color: var(--primary) !important;
  box-shadow: 0 0.25rem 0.75rem rgba(11, 41, 99, 0.08) !important;
}
.sp-bid-page .header-btn:active,
.sp-bid-page .menu-btn:active,
.sp-bid-page .page-icon:active {
  box-shadow: none !important;
}

/* 주요 CTA */
.sp-bid-page .nara-btn--primary:hover,
.sp-bid-page #originalLink:hover {
  background: var(--sc-color-text-heading) !important;
  border-color: var(--sc-color-text-heading) !important;
  box-shadow: 0 0.5rem 1rem rgba(11, 41, 99, 0.16) !important;
}
.sp-bid-page .nara-btn--primary:active,
.sp-bid-page #originalLink:active {
  background: var(--sc-color-text-heading) !important;
  box-shadow: 0 0.125rem 0.375rem rgba(11, 41, 99, 0.12) !important;
}

/* 보조 버튼/목록으로 */
.sp-bid-page .nara-btn:not(.nara-btn--primary):hover,
.sp-bid-page #backToListBottom:hover {
  background: var(--sc-color-surface-subtle) !important;
  border-color: var(--sc-color-info) !important;
  color: var(--primary) !important;
}

/* 외부 링크: 텍스트/아이콘 동시 피드백 */
.sp-bid-page .nara-intro__link:hover,
.sp-bid-page #originalLinkBottom:hover {
  background: var(--sc-color-surface-info) !important;
  border-color: var(--sc-color-info) !important;
  color: var(--primary) !important;
}
.sp-bid-page .nara-intro__link .ico-go,
.sp-bid-page .nara-original .ico-go {
  transition: transform var(--motion-base) var(--ease-out);
}

/* 초기화 */
.sp-bid-page .nara-reset:hover {
  color: var(--primary) !important;
  background: var(--sc-color-surface-info) !important;
}
.sp-bid-page .nara-reset .ico-reset {
  transition: transform var(--motion-slow) var(--ease-out);
}

/* 기간 빠른 선택 */
.sp-bid-page .nara-period-chip-v19:hover {
  background: var(--sc-color-surface-info) !important;
  border-color: var(--sc-color-info) !important;
  color: var(--primary) !important;
}
.sp-bid-page .nara-period-chip-v19:active {
  background: var(--sc-color-surface-info) !important;
}

/* 입력/셀렉트는 움직이지 않고 경계/배경만 피드백 */
.sp-bid-page .nara-filter-control,
.sp-bid-page .nara-period-type-v18,
.sp-bid-page .nara-date-v18,
.sp-bid-page .nara-text,
.sp-bid-page .nara-list-select {
  transition:
    border-color var(--motion-base) var(--ease-standard),
    background-color var(--motion-base) var(--ease-standard),
    box-shadow var(--motion-base) var(--ease-out);
}
.sp-bid-page .nara-filter-control:hover,
.sp-bid-page .nara-period-type-v18:hover,
.sp-bid-page .nara-date-v18:hover,
.sp-bid-page .nara-text:hover,
.sp-bid-page .nara-list-select:hover {
  background: var(--sc-color-surface-default) !important;
  border-color: var(--sc-color-info) !important;
}

/* 공고 목록: 대량목록이므로 과도한 이동 없이 명확한 hover */
.sp-bid-page .nara-line {
  position: relative;
  transition:
    background-color var(--motion-base) var(--ease-standard),
    box-shadow var(--motion-base) var(--ease-out);
}
.sp-bid-page .nara-line:hover {
  background: var(--sc-color-surface-subtle) !important;
  box-shadow: inset 0.1875rem 0 0 var(--primary) !important;
}
.sp-bid-page .nara-line__title button {
  transition: color var(--motion-base) var(--ease-standard);
}
.sp-bid-page .nara-line:hover .nara-line__title button,
.sp-bid-page .nara-line__title button:hover {
  color: var(--primary) !important;
}

/* 페이지네이션 */
.sp-bid-page .nara-pagination button:hover:not(:disabled):not(.current) {
  background: var(--sc-color-surface-info) !important;
  border-color: var(--sc-color-info) !important;
  color: var(--primary) !important;
}
.sp-bid-page .nara-pagination button:active:not(:disabled) {
  background: var(--sc-color-surface-info) !important;
}

/* 검색어 삭제 */
.sp-bid-page .nara-search-clear:hover {
  background: var(--sc-color-surface-info) !important;
  color: var(--primary) !important;
}

/* fine pointer에서만 미세한 이동/아이콘 반응 */
@media (hover: hover) and (pointer: fine) {
  .sp-bid-page .header-btn:hover,
  .sp-bid-page .menu-btn:hover,
  .sp-bid-page .page-icon:hover,
  .sp-bid-page .nara-btn:hover,
  .sp-bid-page .nara-original:hover,
  .sp-bid-page .nara-intro__link:hover,
  .sp-bid-page .nara-period-chip-v19:hover,
  .sp-bid-page .nara-pagination button:hover:not(:disabled) {
    transform: translateY(-0.0625rem);
  }
  .sp-bid-page .header-btn:active,
  .sp-bid-page .menu-btn:active,
  .sp-bid-page .page-icon:active,
  .sp-bid-page .nara-btn:active,
  .sp-bid-page .nara-original:active,
  .sp-bid-page .nara-intro__link:active,
  .sp-bid-page .nara-period-chip-v19:active,
  .sp-bid-page .nara-pagination button:active:not(:disabled) {
    transform: translateY(0) scale(0.985);
  }
  .sp-bid-page .nara-intro__link:hover .ico-go,
  .sp-bid-page .nara-original:hover .ico-go {
    transform: translate(0.125rem, -0.125rem);
  }
  .sp-bid-page .nara-reset:hover .ico-reset {
    transform: rotate(-28deg);
  }
}

/* 키보드 포커스는 hover보다 우선하여 명확하게 */
.sp-bid-page a:focus-visible,
.sp-bid-page button:focus-visible,
.sp-bid-page input:focus-visible,
.sp-bid-page select:focus-visible,
.sp-bid-page textarea:focus-visible {
  transform: none !important;
}

/* 사용자 모션 축소 설정 존중 */
@media (prefers-reduced-motion: reduce) {
  .sp-bid-page *,
  .sp-bid-page *::before,
  .sp-bid-page *::after {
    animation: none !important;
    transition: none !important;
    scroll-behavior: auto !important;
  }
  .sp-bid-page .header-btn:hover,
  .sp-bid-page .menu-btn:hover,
  .sp-bid-page .page-icon:hover,
  .sp-bid-page .nara-btn:hover,
  .sp-bid-page .nara-original:hover,
  .sp-bid-page .nara-intro__link:hover,
  .sp-bid-page .nara-period-chip-v19:hover,
  .sp-bid-page .nara-pagination button:hover:not(:disabled),
  .sp-bid-page .nara-intro__link:hover .ico-go,
  .sp-bid-page .nara-original:hover .ico-go,
  .sp-bid-page .nara-reset:hover .ico-reset {
    transform: none !important;
  }
}

/* ===== v34: 선택한 조건 태그 - KRDS 삭제형 태그 적용 ===== */
.sp-bid-page .nara-applied {
  align-items: center !important;
  gap: 0.75rem !important;
  padding: 0.625rem 0.75rem !important;
}
.sp-bid-page .nara-applied strong {
  padding-top: 0 !important;
  flex: 0 0 auto !important;
}
.sp-bid-page .nara-tags {
  display: flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  flex-wrap: wrap !important;
  min-width: 0 !important;
}
.sp-bid-page .nara-tag {
  min-height: 2.25rem !important;
  padding: 0.375rem 0.625rem !important;
  gap: 0.375rem !important;
  border: 0.0625rem solid var(--sc-color-border-default) !important;
  border-radius: 62.4375rem !important;
  background: var(--sc-color-surface-default) !important;
  color: var(--sc-color-text-primary) !important;
  box-sizing: border-box !important;
}
.sp-bid-page button.nara-tag--interactive {
  cursor: pointer !important;
  font: inherit !important;
  text-align: left !important;
  transition:
    background-color var(--motion-base) var(--ease-standard),
    border-color var(--motion-base) var(--ease-standard),
    color var(--motion-base) var(--ease-standard),
    box-shadow var(--motion-base) var(--ease-out) !important;
}
.sp-bid-page .nara-tag__label {
  display: block !important;
  line-height: 1.5 !important;
}
.sp-bid-page .nara-tag__delete {
  width: 1rem !important;
  height: 1rem !important;
  flex: 0 0 1rem !important;
  color: var(--sc-color-text-secondary) !important;
  transition:
    color var(--motion-base) var(--ease-standard),
    transform var(--motion-fast) var(--ease-out) !important;
}
.sp-bid-page button.nara-tag--interactive:hover {
  background: var(--sc-color-surface-info) !important;
  border-color: var(--sc-color-info) !important;
  color: var(--primary) !important;
}
.sp-bid-page button.nara-tag--interactive:hover .nara-tag__delete {
  color: var(--primary) !important;
}
.sp-bid-page button.nara-tag--interactive:active {
  background: var(--sc-color-surface-info) !important;
}
@media (hover: hover) and (pointer: fine) {
  .sp-bid-page button.nara-tag--interactive:hover .nara-tag__delete {
    transform: scale(1.08) !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  .sp-bid-page button.nara-tag--interactive,
  .sp-bid-page .nara-tag__delete {
    transition: none !important;
    transform: none !important;
  }
}

/* ===== v35: 목록 hover 좌측 파란 라인 제거 ===== */
.sp-bid-page .nara-line:hover {
  box-shadow: none !important;
}

.sp-bid-page {
  --primary: var(--sc-color-action-primary);
  --secondary: var(--sc-color-text-heading);
  --focus: var(--sc-color-focus);
  --line: var(--sc-color-border-default);
  --r-lg: var(--sc-radius-large);
  min-width: 0;
  padding-bottom: var(--sc-space-64);
}
.sp-bid-description {
  margin: 0 0 var(--sc-space-24);
  color: var(--sc-color-text-secondary);
  font-size: 1rem;
  line-height: 1.6;
}
.sp-bid-page .sr-only {
  position: absolute !important;
  width: 0.0625rem !important;
  height: 0.0625rem !important;
  padding: 0 !important;
  margin: -0.0625rem !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
@media (max-width: 47.5rem) {
  .sp-bid-page .nara-compact-period-v19 {
    grid-template-columns: minmax(0, 1fr) 0.75rem minmax(0, 1fr) !important;
    gap: 0.5rem !important;
  }
  .sp-bid-page .nara-compact-period-v19 > .nara-compact-label-v19 {
    grid-column: 1/-1 !important;
    grid-row: 1 !important;
  }
  .sp-bid-page .nara-compact-period-v19 > .nara-period-type-v18 {
    grid-column: 1/-1 !important;
    grid-row: 2 !important;
  }
  .sp-bid-page .nara-compact-period-v19 > .nara-date-v18:first-of-type {
    grid-column: 1 !important;
    grid-row: 3 !important;
  }
  .sp-bid-page .nara-compact-period-v19 > .nara-period-sep-v18 {
    grid-column: 2 !important;
    grid-row: 3 !important;
  }
  .sp-bid-page .nara-compact-period-v19 > .nara-date-v18:last-of-type {
    grid-column: 3 !important;
    grid-row: 3 !important;
  }
  .sp-bid-page .nara-compact-period-v19 > .nara-period-quick-v19 {
    grid-column: 1/-1 !important;
    grid-row: 4 !important;
  }
  .sp-bid-page .nara-period-quick-v19 {
    gap: 0.5rem !important;
  }
}

/* COMMON search input and pagination tokens override historical prototype rules. */
.sp-bid-page .nara-keyword-field-v20 .sc-search-field__input,
.sp-bid-page .nara-keyword-row-v21 .sc-search-field__input,
.sp-bid-page .nara-keyword-input-wrap .sc-search-field__input,
.sp-bid-page .sc-search-field__input {
  border-color: var(--sc-color-border-control) !important;
  border-radius: var(--sc-radius-control) !important;
  background: var(--sc-color-surface-canvas) !important;
  color: var(--sc-color-text-primary) !important;
}
.sp-bid-page .sc-search-field__input:hover {
  border-color: var(--sc-color-border-strong) !important;
  background: var(--sc-color-surface-canvas) !important;
}
.sp-bid-page .sc-search-field__input:focus-visible {
  border-color: var(--sc-color-action-primary) !important;
  background: var(--sc-color-surface-default) !important;
}

/* 업무구분과 공고번호도 공고명과 같은 핵심 식별 정보로 읽히게 한다. */
.sp-bid-page #resultList .nara-line > .nara-type-text,
.sp-bid-page #resultList .nara-line > .nara-line__no {
  color: var(--sc-color-text-heading) !important;
  font-weight: var(--sc-font-weight-semibold) !important;
}

.sp-bid-page .sp-bid-pagination {
  margin-top: var(--sc-space-24);
}
.sp-bid-page .sp-bid-pagination button {
  min-width: var(--sc-touch-min);
  width: var(--sc-touch-min);
  min-height: var(--sc-touch-min);
  height: var(--sc-touch-min);
  display: inline-grid;
  place-items: center;
  border: var(--sc-border-width-default) solid transparent;
  border-radius: var(--sc-radius-control);
  background: transparent;
  color: var(--sc-color-text-primary);
  font: inherit;
  cursor: pointer;
}
.sp-bid-page .sp-bid-pagination button:hover:not(:disabled) {
  background: var(--sc-color-surface-subtle);
}
.sp-bid-page .sp-bid-pagination button[aria-current="page"] {
  border-color: var(--sc-color-action-primary);
  background: var(--sc-color-surface-subtle);
  color: var(--sc-color-action-primary);
  font-weight: var(--sc-font-weight-bold) !important;
}
.sp-bid-page .sp-bid-pagination button:disabled {
  background: transparent !important;
  border-color: transparent !important;
  color: var(--sc-color-text-disabled) !important;
  cursor: default;
}
.sp-bid-page .sp-bid-pagination button:disabled img {
  opacity: 0.35;
}

@media (max-width: 52rem) {
  .sp-bid-page .nara-keyword-field-v20--keyword {
    grid-template-columns: minmax(0, 1fr) !important;
    gap: var(--sc-space-4) !important;
  }
}

/* 검색 조건 전체에 COMMON의 흰 입력 면과 연한 경계·Medium radius를 사용한다. */
.sp-bid-page
  #searchForm
  :is(
    select.nara-filter-control,
    select.nara-period-type-v18,
    input.nara-date-v18,
    input.sc-search-field__input
  ),
.sp-bid-page .nara-results__options select.nara-list-select {
  border-color: var(--sc-color-border-default) !important;
  border-radius: var(--sc-radius-control) !important;
  background-color: var(--sc-color-surface-default) !important;
  color: var(--sc-color-text-primary) !important;
  height: var(--sc-form-control-height) !important;
  min-height: var(--sc-form-control-height) !important;
}
.sp-bid-page
  #searchForm
  :is(
    select.nara-filter-control,
    select.nara-period-type-v18,
    input.nara-date-v18,
    input.sc-search-field__input
  ):hover,
.sp-bid-page .nara-results__options select.nara-list-select:hover {
  border-color: var(--sc-color-border-control) !important;
  background-color: var(--sc-color-surface-default) !important;
}
.sp-bid-page
  #searchForm
  :is(
    select.nara-filter-control,
    select.nara-period-type-v18,
    input.nara-date-v18,
    input.sc-search-field__input
  ):focus-visible,
.sp-bid-page .nara-results__options select.nara-list-select:focus-visible {
  border-color: var(--sc-color-action-primary) !important;
  background-color: var(--sc-color-surface-default) !important;
}
.sp-bid-page #searchForm .nara-search-combo-v21 > button.nara-btn--primary {
  height: var(--sc-button-visual-medium) !important;
  min-height: var(--sc-button-hit-medium) !important;
  border-radius: var(--sc-radius-control) !important;
  background: var(--sc-color-action-primary) !important;
  border-color: var(--sc-color-action-primary) !important;
}
.sp-bid-page #searchForm .nara-search-combo-v21 > button.nara-btn--primary:hover {
  background: var(--sc-color-action-primary-hover) !important;
}

/* 나라장터 검색 행: COMMON Small(2.5rem)로 한 단계 높이고 정렬을 통일한다. */
.sp-bid-page
  #searchForm
  :is(
    select.nara-filter-control,
    select.nara-period-type-v18,
    input.nara-date-v18,
    input.sc-search-field__input
  ),
.sp-bid-page #searchForm .nara-period-chip-v19,
.sp-bid-page #searchForm .nara-search-combo-v21 > button.nara-btn--primary,
.sp-bid-page .nara-results__options select.nara-list-select {
  height: var(--sc-touch-min) !important;
  min-height: var(--sc-touch-min) !important;
  box-sizing: border-box !important;
}
.sp-bid-page .nara-reset-v12 {
  min-height: var(--sc-touch-min) !important;
}

/* 공고검색 입력만 연한 브랜드 경계로 구분해 검색 시작점을 드러낸다. */
.sp-bid-page #searchForm .nara-keyword-input-wrap > input.sc-search-field__input {
  border-color: var(--sc-color-action-primary) !important;
  box-shadow: 0 0 0 0.125rem rgba(49, 88, 235, 0.08) !important;
}
.sp-bid-page #searchForm .nara-keyword-input-wrap > input.sc-search-field__input:hover,
.sp-bid-page #searchForm .nara-keyword-input-wrap > input.sc-search-field__input:focus-visible {
  border-color: var(--sc-color-action-primary) !important;
}

/* 목록의 공고명을 메타 정보보다 분명하게 표시한다. */
.sp-bid-page .nara-line__title button {
  min-height: var(--sc-touch-min) !important;
  color: var(--sc-color-navy) !important;
  font-weight: var(--sc-font-weight-bold) !important;
}

/* 셀렉트 화살표는 공통 아이콘을 사용하고 오른쪽 끝에서 안쪽으로 배치한다. */
.sp-bid-page #searchForm select,
.sp-bid-page .nara-results__options select.nara-list-select {
  appearance: none !important;
  -webkit-appearance: none !important;
  background-image: url("../../img/icons/chevron-down-20.svg") !important;
  background-repeat: no-repeat !important;
  background-size: var(--sc-icon-small) !important;
  background-position: right 1.125rem center !important;
  padding-right: 2.5rem !important;
}

/* 공고명만 강하게 남기고 나머지 목록 정보는 본문 보조색으로 낮춘다. */
.sp-bid-page
  #resultList
  .nara-line
  > :is(
    .nara-type-text,
    .nara-line__no,
    .nara-line__institution,
    .nara-line__notice-inst,
    .nara-line__periodtxt
  ) {
  color: var(--sc-color-text-secondary-strong) !important;
  font-weight: var(--sc-font-weight-regular) !important;
}

/* 상세 섹션 제목과 바로 아래 정보표를 한 그룹으로 읽히게 한다. */
.sp-bid-page .nara-section {
  margin-top: 1.25rem !important;
}
.sp-bid-page .nara-section h3 {
  margin-bottom: 0.375rem !important;
}

/* 열 제목은 본문보다 한 단계 큰 COMMON 16px과 가장 진한 타이틀 색을 사용한다. */
.sp-bid-page .nara-list-head-v10 {
  font-size: var(--sc-type-size-16) !important;
  color: var(--sc-color-navy) !important;
}
.sp-bid-page
  .nara-list-head-v10
  > span:is(
    .head-type,
    .head-no,
    .head-title,
    .head-inst,
    .head-notice-inst,
    .head-dday,
    .head-period
  ) {
  color: var(--sc-color-navy) !important;
}

/* Highlight structure without recoloring the bid status or its essential text. */
.sp-bid-page .nara-list-head-v10 {
  background-image: linear-gradient(
    var(--sc-color-accent-highlight),
    var(--sc-color-accent-highlight)
  ) !important;
  background-size: 3rem 0.25rem !important;
  background-position: left top !important;
  background-repeat: no-repeat !important;
}
.sp-bid-page .nara-section h3 {
  border-left: 0.25rem solid var(--sc-color-accent-highlight);
  padding-left: var(--sc-space-8);
}

/* v1.3: interaction state for HTML-owned sample records. */
.sp-bid-page [hidden] {
  display: none !important;
}

/* Keep notice-kind badges beside the title and give D-Day/status a 3px gap. */
.sp-bid-page .nara-line__title {
  display: flex !important;
  align-items: center;
  gap: var(--sc-space-8);
  min-width: 0;
  flex-wrap: nowrap !important;
}
.sp-bid-page .nara-line__title button {
  flex: 1 1 auto;
  width: auto !important;
  min-width: 0;
}
.sp-bid-page .nara-line__title .nara-badge.notice-kind {
  flex: 0 0 auto;
  white-space: nowrap !important;
  word-break: keep-all;
}
.sp-bid-page .nara-line__ddaycol {
  gap: 3px !important;
}

/* Share the support status badge dimensions and palette with the tender list/detail. */
.sp-bid-page .nara-badge:is(.open, .closed) {
  min-height: 1.5rem;
  padding: 0.125rem 0.5rem;
  border-radius: var(--sc-radius-small);
  font-size: 0.8125rem;
  line-height: 1.2;
  font-weight: 700;
}
.sp-bid-page .nara-badge.open {
  background: var(--sc-color-success-surface);
  color: var(--sc-color-success-text);
  border-color: var(--sc-color-success);
}
/* 변경 시작 | 2026-10-02 | 구간 01: 입찰 D-Day·취소 배지 글자 대비 수정 */
.sp-bid-page .nara-badge.closed {
  background: var(--sc-color-surface-subtle);
  color: var(--sc-color-text-secondary);
  border-color: var(--sc-color-border-default);
}

/* WCAG AA: 14px D-Day 텍스트 대비 4.5:1 이상 */
.sp-bid-page .nara-line__dday:not(.closed) {
  color: #b82b0e !important;
}

.sp-bid-page .nara-badge.notice-kind.cancel {
  color: #b82b0e !important;
}

/* 변경 끝 | 2026-10-02 | 구간 01 */
