/* Consolidated resource page styles. Keep section order: later sections intentionally refine earlier rules. */

/* Base: list, detail, modal, and responsive foundations */

.renewal-lab-resources,
.renewal-lab-resource-detail,
.renewal-resource-modal { color: #141414; font-family: "Pretendard Variable", Pretendard, "Noto Sans KR", sans-serif; }
.renewal-lab-resources *, .renewal-lab-resource-detail *, .renewal-resource-modal * { box-sizing: border-box; }
.renewal-resource-intro { width: min(648px, calc(100% - 40px)); margin: 80px auto; text-align: center; }
.renewal-resource-intro h2 { margin: 0; font-size: 36px; font-weight: 600; line-height: 50px; letter-spacing: -.72px; }
.renewal-resource-intro p { margin: 32px 0 0; color: #424242; font-size: 20px; line-height: 30px; letter-spacing: -.4px; }
.renewal-resource-guide { display: flex; width: min(1320px, calc(100% - 40px)); min-height: 152px; margin: 0 auto 40px; padding: 24px; flex-direction: column; justify-content: center; gap: 16px; border-radius: 24px; background: #f7f7f7; }
.renewal-resource-guide p { display: flex; margin: 0; align-items: flex-start; gap: 16px; color: #424242; font-size: 18px; line-height: 28px; }
.renewal-resource-tag { display: inline-flex; min-width: 66px; min-height: 32px; padding: 7px 12px; flex: 0 0 auto; align-items: center; justify-content: center; border-radius: 16px; font-size: 16px; font-weight: 600; line-height: 16px; letter-spacing: -.16px; }
.renewal-resource-tag--public { color: #fff; background: #292929; }
.renewal-resource-tag--partner { color: #525252; background: #e5e5e5; }
.renewal-resource-table-wrap { width: min(1320px, calc(100% - 40px)); margin: 0 auto; overflow-x: auto; }
.renewal-resource-table { width: 100%; border-collapse: collapse; table-layout: fixed; font-size: 18px; line-height: 28px; }
.renewal-resource-table th, .renewal-resource-table td { height: 60px; padding: 14px 24px; border: 1px solid #d6d6d6; vertical-align: middle; text-align: left; }
.renewal-resource-table th { height: 48px; color: #525252; background: #f7f7f7; font-size: 16px; font-weight: 600; line-height: 20px; }
.renewal-resource-table th:nth-child(1), .renewal-resource-table td:nth-child(1) { width: 114px; }
.renewal-resource-table th:nth-child(2), .renewal-resource-table td:nth-child(2) { width: auto; }
.renewal-resource-table th:nth-child(3), .renewal-resource-table td:nth-child(3) { width: 154px; }
.renewal-resource-table th:nth-child(4), .renewal-resource-table td:nth-child(4) { width: 160px; color: #737373; }
.renewal-resource-table th:nth-child(5), .renewal-resource-table td:nth-child(5), .renewal-resource-table th:nth-child(6), .renewal-resource-table td:nth-child(6) { width: 112px; color: #737373; }
.renewal-resource-table__title { display: block; overflow: hidden; color: #424242; font-weight: 600; text-decoration: none; text-overflow: ellipsis; white-space: nowrap; }
.renewal-resource-table__title:hover { text-decoration: underline; }
.renewal-resource-action { display: inline-flex; min-height: 32px; padding: 7px 12px; align-items: center; gap: 8px; border: 0; border-radius: 8px; color: #525252; background: #f7f7f7; font: inherit; font-size: 16px; font-weight: 600; line-height: 16px; cursor: pointer; }
.renewal-resource-action .material-symbols-outlined { font-size: 18px; }
.renewal-resource-action:hover { background: #e5e5e5; }
.renewal-resource-action:disabled { cursor: not-allowed; opacity: .45; }
.renewal-resource-empty { width: min(1320px, calc(100% - 40px)); min-height: 240px; margin: 0 auto; padding: 90px 20px; border-block: 1px solid #d6d6d6; color: #737373; text-align: center; }
.renewal-resource-pagination { display: flex; margin: 80px auto 160px; align-items: center; justify-content: center; gap: 4px; }
.renewal-resource-pagination a { display: grid; width: 32px; height: 32px; place-items: center; border-radius: 50%; color: #737373; font-size: 16px; font-weight: 600; text-decoration: none; }
.renewal-resource-pagination a:hover { background: #f7f7f7; }
.renewal-resource-pagination a[aria-current="page"] { color: #141414; text-decoration: underline; }
.renewal-resource-modal[hidden] { display: none; }
.renewal-resource-modal { position: fixed; z-index: 10020; inset: 0; display: grid; padding: 40px 20px; place-items: center; }
.renewal-resource-modal__backdrop { position: absolute; inset: 0; background: rgb(0 0 0 / 70%); }
.renewal-resource-modal__dialog { position: relative; width: min(540px, 100%); max-height: calc(100vh - 80px); padding: 40px; overflow-y: auto; border-radius: 32px; background: #fff; }
.renewal-resource-modal__dialog form > h3 { margin: 16px 0 40px; font-size: 20px; font-weight: 600; line-height: 30px; overflow-wrap: anywhere; }
.renewal-resource-modal__heading { display: flex; align-items: center; gap: 16px; }
.renewal-resource-modal__heading h2 { margin: 0; font-size: 36px; font-weight: 600; line-height: 50px; letter-spacing: -.72px; }
.renewal-resource-fields { display: flex; flex-direction: column; gap: 12px; }
.renewal-resource-field { display: grid; min-height: 60px; padding: 0 16px; grid-template-columns: 120px 1fr; align-items: center; border: 1px solid #d6d6d6; border-radius: 12px; color: #737373; font-size: 18px; font-weight: 600; line-height: 28px; }
.renewal-resource-field input, .renewal-resource-field select, .renewal-resource-field textarea { width: 100%; min-width: 0; border: 0; outline: 0; color: #141414; background: transparent; font: inherit; font-weight: 500; }
.renewal-resource-field input::placeholder, .renewal-resource-field textarea::placeholder { color: #a3a3a3; }
.renewal-resource-field select { height: 58px; cursor: pointer; }
.renewal-resource-field textarea { min-height: 76px; padding: 12px 0; resize: vertical; }
.renewal-resource-field--other { margin-top: 12px; }
.renewal-resource-field--other[hidden] { display: none; }
.renewal-resource-modal__dialog--public .renewal-resource-field { margin-top: 40px; }
.renewal-resource-check { display: flex; margin-top: 24px; align-items: flex-start; gap: 8px; color: #424242; font-size: 16px; font-weight: 500; line-height: 24px; }
.renewal-resource-check + .renewal-resource-check { margin-top: 14px; }
.renewal-resource-check input { width: 20px; height: 20px; margin: 2px 0 0; flex: 0 0 20px; accent-color: #141414; }
.renewal-resource-check a { border-bottom: 1px solid; color: #424242; font: inherit; font-weight: 600; text-decoration: none; }
.renewal-resource-form-status { min-height: 24px; margin: 16px 0 0; color: #525252; font-size: 14px; line-height: 22px; }
.renewal-resource-modal__actions { display: grid; margin-top: 64px; grid-template-columns: 1fr 1fr; gap: 16px; }
.renewal-resource-button { display: inline-flex; min-height: 60px; padding: 14px 24px; align-items: center; justify-content: center; border: 0; border-radius: 12px; font: inherit; font-size: 18px; font-weight: 600; line-height: 28px; text-decoration: none; cursor: pointer; }
.renewal-resource-button--tonal { color: #525252; background: #f7f7f7; }
.renewal-resource-button--filled { color: #fff; background: #000; }
.renewal-resource-button--filled:hover { background: #424242; }
.renewal-resource-button:disabled { cursor: wait; opacity: .55; }
.renewal-resource-modal__dialog--public { min-height: 524px; }
.renewal-resource-modal__dialog--public .renewal-resource-modal__actions { margin-top: 112px; }
body.renewal-resource-modal-open { overflow: hidden; }
.renewal-lab-resource-detail { padding: 80px 20px 160px; }
.renewal-lab-resource-detail > article { width: min(1096px, 100%); margin: 0 auto; }
.renewal-resource-detail__header { padding: 24px; border-radius: 24px; background: #f7f7f7; }
.renewal-resource-detail__meta { display: flex; min-height: 32px; align-items: center; gap: 8px; color: #737373; font-size: 16px; line-height: 24px; }
.renewal-resource-detail__meta-primary, .renewal-resource-detail__stats, .renewal-resource-detail__stat { display: flex; align-items: center; }
.renewal-resource-detail__meta-primary { gap: 8px; }
.renewal-resource-detail__stats { margin-left: auto; gap: 16px; }
.renewal-resource-detail__stat-label { width: 56px; font-weight: 400; }
.renewal-resource-detail__stat strong { font-weight: 600; }
.renewal-resource-detail__header h2 { margin: 16px 0 0; padding-top: 16px; border-top: 1px solid #d6d6d6; font-size: 36px; font-weight: 600; line-height: 50px; letter-spacing: -.72px; }
.renewal-resource-detail__content { width: min(872px, 100%); margin: 40px auto 0; color: #292929; font-size: 18px; line-height: 30px; }
.renewal-resource-detail__content img { max-width: 100%; height: auto; border-radius: 24px; }
.renewal-resource-detail__actions { display: flex; margin-top: 64px; justify-content: center; gap: 16px; }
.renewal-resource-detail__actions .renewal-resource-button { min-width: 208px; min-height: 52px; }
@media (max-width: 900px) {
  .renewal-resource-intro { width: calc(100% - 40px); margin: 64px auto; text-align: left; }
  .renewal-resource-intro h2 { font-size: 32px; line-height: 44px; letter-spacing: -.32px; }
  .renewal-resource-intro p { display: none; }
  .renewal-resource-guide { width: calc(100% - 40px); min-height: 278px; margin-bottom: 40px; padding: 24px; gap: 16px; border-radius: 16px; }
  .renewal-resource-guide p { display: block; font-size: 14px; line-height: 22px; }
  .renewal-resource-guide .renewal-resource-tag { display: flex; width: max-content; margin-bottom: 8px; }
  .renewal-resource-tag { min-width: 47px; min-height: 22px; padding: 3px 8px; border-radius: 12px; font-size: 12px; line-height: 16px; }
  .renewal-resource-table-wrap { width: calc(100% - 40px); overflow: visible; }
  .renewal-resource-table, .renewal-resource-table tbody, .renewal-resource-table tr, .renewal-resource-table td { display: block; width: 100%; }
  .renewal-resource-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .renewal-resource-table tr { position: relative; min-height: 132px; padding: 18px 104px 18px 16px; border-top: 1px solid #d6d6d6; }
  .renewal-resource-table tr:last-child { border-bottom: 1px solid #d6d6d6; }
  .renewal-resource-table td, .renewal-resource-table td:nth-child(n) { width: auto; height: auto; padding: 0; border: 0; font-size: 14px; line-height: 22px; }
  .renewal-resource-table td::before { display: none; }
  .renewal-resource-table td:nth-child(1) { margin-bottom: 8px; }
  .renewal-resource-table td:nth-child(2) { margin-bottom: 8px; }
  .renewal-resource-table td:nth-child(3) { position: absolute; top: 50%; right: 16px; transform: translateY(-50%); }
  .renewal-resource-table td:nth-child(4), .renewal-resource-table td:nth-child(5), .renewal-resource-table td:nth-child(6) { display: inline; margin-right: 10px; color: #737373; font-size: 12px; }
  .renewal-resource-table td:nth-child(5)::before { display: inline; content: '조회 '; }
  .renewal-resource-table td:nth-child(6)::before { display: inline; content: '신청 '; }
  .renewal-resource-table__title { white-space: normal; }
  .renewal-resource-action { min-width: 76px; justify-content: center; font-size: 14px; }
  .renewal-resource-action .material-symbols-outlined { display: none; }
  .renewal-resource-pagination { margin: 64px auto 80px; }
  .renewal-resource-modal { padding: 20px; }
  .renewal-resource-modal__dialog { max-height: calc(100vh - 40px); padding: 24px; border-radius: 24px; }
  .renewal-resource-modal__dialog form > h3 { margin: 8px 0 24px; font-size: 16px; line-height: 24px; }
  .renewal-resource-modal__heading { gap: 8px; }
  .renewal-resource-modal__heading h2 { font-size: 22px; line-height: 30px; letter-spacing: -.22px; }
  .renewal-resource-field { min-height: 48px; padding: 0 12px; grid-template-columns: 88px 1fr; border-radius: 12px; font-size: 14px; line-height: 22px; }
  .renewal-resource-field select { height: 46px; }
  .renewal-resource-check { margin-top: 16px; font-size: 14px; line-height: 22px; }
  .renewal-resource-check input { width: 16px; height: 16px; margin-top: 3px; flex-basis: 16px; }
  .renewal-resource-modal__actions { margin-top: 40px; gap: 16px; }
  .renewal-resource-button { min-height: 52px; padding: 12px 16px; font-size: 16px; line-height: 24px; }
  .renewal-resource-modal__dialog--public { min-height: 398px; }
  .renewal-resource-modal__dialog--public .renewal-resource-field { margin-top: 24px; }
  .renewal-resource-modal__dialog--public .renewal-resource-modal__actions { margin-top: 48px; }
  .renewal-lab-resource-detail { padding: 64px 20px 80px; }
  .renewal-resource-detail__header { padding: 16px; border-radius: 24px; background: #f7f7f7; }
  .renewal-resource-detail__meta { min-height: 0; flex-direction: column; align-items: flex-start; gap: 8px; color: #424242; font-size: 14px; font-weight: 400; line-height: 22px; letter-spacing: -.14px; }
  .renewal-resource-detail__meta-primary { gap: 8px; }
  .renewal-resource-detail__header .renewal-resource-tag { min-width: 0; min-height: 22px; padding: 2px 8px; border-radius: 12px; color: #141414; background: #e5e5e5; font-size: 12px; font-weight: 600; line-height: 18px; letter-spacing: -.12px; }
  .renewal-resource-detail__header .renewal-resource-tag--public { color: #fff; background: #292929; }
  .renewal-resource-detail__stats { width: auto; margin-left: 0; gap: 16px; }
  .renewal-resource-detail__stat-label { width: 48px; }
  .renewal-resource-detail__header h2 { margin-top: 8px; padding-top: 8px; color: #000; font-size: 22px; font-weight: 600; line-height: 30px; letter-spacing: -.22px; }
  .renewal-resource-detail__content { font-size: 16px; line-height: 26px; }
  .renewal-resource-detail__actions { flex-direction: column; }
  .renewal-resource-detail__actions .renewal-resource-button { width: 100%; }
}

/* Select field fallback and spacing */

.renewal-resource-field--select { display: block !important; padding: 10px 16px 12px; }
.renewal-resource-field--select > span { display: block; margin-bottom: 6px; color: #525252; font-size: 14px; line-height: 22px; }
.renewal-resource-field--select select { display: block !important; width: 100% !important; height: 40px; padding: 0 36px 0 0; border: 0; color: #141414; background-color: #fff; font-size: 16px; line-height: 24px; appearance: auto; opacity: 1 !important; visibility: visible !important; }
.renewal-resource-modal__dialog--public .renewal-resource-field--select { margin-top: 0; }
.renewal-resource-modal__dialog--public .renewal-resource-modal__actions { margin-top: 56px; }
@media (max-width: 900px) {
  .renewal-resource-field--select { padding: 8px 12px 10px; }
  .renewal-resource-field--select select { height: 34px; font-size: 14px; }
  .renewal-resource-modal__dialog--public .renewal-resource-modal__actions { margin-top: 32px; }
}

/* Public select fallback */

.renewal-resource-modal__dialog--public .renewal-resource-field:not([hidden]) { display: block !important; padding: 10px 16px 12px; }
.renewal-resource-modal__dialog--public .renewal-resource-field:not([hidden]) > span { display: block; margin-bottom: 6px; color: #525252; font-size: 14px; line-height: 22px; }
.renewal-resource-modal__dialog--public .renewal-resource-field select { display: block !important; width: 100% !important; height: 40px; padding: 0 36px 0 0; border: 0; color: #141414; background: #fff; font-size: 16px; line-height: 24px; appearance: auto; opacity: 1 !important; visibility: visible !important; }
@media (max-width: 900px) {
  .renewal-resource-modal__dialog--public .renewal-resource-field:not([hidden]) { padding: 8px 12px 10px; }
  .renewal-resource-modal__dialog--public .renewal-resource-field select { height: 34px; font-size: 14px; }
}

/* Custom select */

/* Figma 2590:20699 - resource modal dropdown */
.renewal-resource-select {
  position: relative;
  display: block !important;
  min-height: 60px;
  padding: 0 !important;
  border: 0 !important;
  overflow: visible;
}
.renewal-resource-native-select { display: none !important; }
.renewal-resource-select__button {
  display: grid;
  width: 100%;
  min-height: 60px;
  padding: 15px 12px 15px 16px;
  grid-template-columns: 120px minmax(0, 1fr) 24px;
  align-items: center;
  border: 1px solid #d6d6d6;
  border-radius: 12px;
  color: #141414;
  background: #fff;
  font-family: inherit;
  font-size: 18px;
  font-weight: 600;
  line-height: 28px;
  letter-spacing: -.18px;
  text-align: left;
  cursor: pointer;
}
.renewal-resource-select__button:hover,
.renewal-resource-select__button:focus-visible { border-color: #737373; outline: none; }
.renewal-resource-select__button:focus-visible { box-shadow: 0 0 0 3px rgb(20 20 20 / 12%); }
.renewal-resource-select__button.is-invalid { border-color: #c43527; }
.renewal-resource-select__label { color: #737373; }
.renewal-resource-select__value {
  min-width: 0;
  overflow: hidden;
  color: #141414;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.renewal-resource-select__value.is-placeholder { color: #a3a3a3; }
.renewal-resource-select__chevron {
  display: block;
  width: 24px;
  height: 24px;
}
.renewal-resource-select.is-open .renewal-resource-select__chevron { transform: none; }
.renewal-resource-select__menu {
  position: absolute;
  z-index: 20;
  top: calc(100% + 4px);
  left: 0;
  display: flex;
  flex-direction: column;
  gap: 4px;
  width: 100%;
  max-height: 276px;
  padding: 8px;
  overflow-y: auto;
  border: 0;
  border-radius: 12px;
  background: #fff;
  box-shadow: inset 0 0 0 1px #d6d6d6, 0 0 16px rgb(0 0 0 / 20%);
}
.renewal-resource-select__menu[hidden] { display: none !important; }
.renewal-resource-select__option {
  display: block;
  flex: 0 0 40px;
  width: 100%;
  min-height: 40px;
  padding: 8px 12px;
  border: 0;
  border-radius: 8px;
  color: #525252;
  background: #fff;
  font-family: inherit;
  font-size: 16px;
  font-weight: 600;
  line-height: 16px;
  letter-spacing: -.16px;
  text-align: left;
  cursor: pointer;
}
.renewal-resource-select__option:hover,
.renewal-resource-select__option:focus-visible { color: #141414; background: #eee; outline: none; }
.renewal-resource-select__option.is-active,
.renewal-resource-select__option[aria-selected="true"] { color: #141414; background: #eee; font-weight: 600; }
.renewal-resource-modal__dialog--public .renewal-resource-select { margin-top: 40px; }
.renewal-resource-modal__dialog--public .renewal-resource-select__button { min-height: 60px; }

@media (max-width: 900px) {
  .renewal-resource-select { min-height: 48px; }
  .renewal-resource-select__button {
    min-height: 48px;
    padding: 9px 12px;
    grid-template-columns: 88px minmax(0, 1fr) 20px;
    font-size: 14px;
    line-height: 22px;
    letter-spacing: -.14px;
  }
  .renewal-resource-select__chevron { width: 20px; height: 20px; padding: 6px 2px; }
  .renewal-resource-select__menu { max-height: min(288px, 42vh); padding: 6px; }
  .renewal-resource-select__option { min-height: 44px; padding: 10px; font-size: 14px; line-height: 22px; }
  .renewal-resource-modal__dialog--public .renewal-resource-select { margin-top: 24px; }
}

/* Enhanced select compatibility */

/* Resolve legacy native-select rules after the Figma dropdown enhancement. */
.renewal-resource-modal__dialog .renewal-resource-field.renewal-resource-select {
  display: block !important;
  padding: 0 !important;
  border: 0 !important;
}
.renewal-resource-modal .renewal-resource-select > select.renewal-resource-native-select {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  padding: 0 !important;
  opacity: 0 !important;
  visibility: hidden !important;
}

/* Public download modal */

/* Figma 2609:15568, 2590:21419, 2590:21474 */
.renewal-resource-modal__dialog--public {
  width: min(540px, 100%);
  height: 524px;
  min-height: 524px;
  padding: 40px;
  border-radius: 32px;
}
.renewal-resource-modal__dialog--public form > h3 {
  width: 414px;
  max-width: 100%;
  margin: 16px 0 40px;
  font-size: 22px;
  font-weight: 600;
  line-height: 30px;
  letter-spacing: -.22px;
}
.renewal-resource-modal__dialog--public .renewal-resource-select {
  width: 460px;
  max-width: 100%;
  margin-top: 0;
}
.renewal-resource-modal__dialog--public .renewal-resource-select__button {
  min-height: 60px;
  padding: 15px 12px 15px 16px;
  grid-template-columns: 120px minmax(0, 1fr) 24px;
  border: 1px solid #d6d6d6;
  border-radius: 12px;
  font-size: 18px;
  font-weight: 600;
  line-height: 28px;
  letter-spacing: -.18px;
}
.renewal-resource-modal__dialog--public .renewal-resource-select__label { color: #737373; }
.renewal-resource-modal__dialog--public .renewal-resource-select__value.is-placeholder { color: #a3a3a3; }
.renewal-resource-modal__dialog--public .renewal-resource-select__value.is-error { color: #f44336; }
.renewal-resource-modal__dialog--public .renewal-resource-select__button.is-invalid { border-color: #d6d6d6; }
.renewal-resource-modal__dialog--public .renewal-resource-select__inline-input {
  position: absolute;
  z-index: 2;
  top: 1px;
  right: 44px;
  left: 136px;
  width: auto;
  height: 58px;
  padding: 0;
  border: 0;
  outline: 0;
  color: #141414;
  background: #fff;
  caret-color: #3396d7;
  font-family: inherit;
  font-size: 18px;
  font-weight: 600;
  line-height: 28px;
  letter-spacing: -.18px;
}
.renewal-resource-modal__dialog--public .renewal-resource-select__inline-input[hidden] { display: none !important; }
.renewal-resource-modal__dialog--public .renewal-resource-select__inline-input::placeholder { color: #f44336; opacity: 1; }
.renewal-resource-modal__dialog--public .renewal-resource-select.is-direct-entry .renewal-resource-select__value { visibility: hidden; }
.renewal-resource-modal__dialog--public .renewal-resource-check {
  width: 450px;
  max-width: 100%;
  margin-top: 24px;
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  letter-spacing: -.16px;
}
.renewal-resource-modal__dialog--public .renewal-resource-form-status:empty { display: none; }
.renewal-resource-modal__dialog--public .renewal-resource-modal__actions {
  margin-top: 116px;
  grid-template-columns: 222px 222px;
  gap: 16px;
}
.renewal-resource-modal__dialog--public .renewal-resource-button {
  width: 222px;
  min-height: 60px;
  padding: 20px 40px;
  border-radius: 12px;
  font-size: 20px;
  line-height: 20px;
  letter-spacing: -.2px;
}
.renewal-resource-copyright-error {
  margin: 14px 0 0;
  padding-left: 28px;
  color: #f44336;
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  letter-spacing: -.16px;
}
.renewal-resource-copyright-error[hidden] { display: none !important; }
.renewal-resource-modal__dialog--public form.has-validation-errors .renewal-resource-modal__actions { margin-top: 78px; }

@media (max-width: 900px) {
  .renewal-resource-modal__dialog--public { height: auto; min-height: 398px; padding: 24px; border-radius: 24px; }
  .renewal-resource-modal__dialog--public form > h3 { margin: 8px 0 24px; font-size: 16px; line-height: 24px; }
  .renewal-resource-modal__dialog--public .renewal-resource-select__button {
    min-height: 48px;
    padding: 9px 12px;
    grid-template-columns: 88px minmax(0, 1fr) 20px;
    font-size: 14px;
    line-height: 22px;
  }
  .renewal-resource-modal__dialog--public .renewal-resource-select__inline-input {
    top: 1px;
    right: 40px;
    left: 100px;
    height: 46px;
    font-size: 14px;
    line-height: 22px;
  }
  .renewal-resource-modal__dialog--public .renewal-resource-check { margin-top: 16px; font-size: 14px; line-height: 22px; }
  .renewal-resource-modal__dialog--public .renewal-resource-modal__actions,
  .renewal-resource-modal__dialog--public form.has-validation-errors .renewal-resource-modal__actions {
    margin-top: 48px;
    grid-template-columns: 1fr 1fr;
  }
  .renewal-resource-modal__dialog--public .renewal-resource-button { width: 100%; min-height: 52px; padding: 12px 16px; font-size: 16px; line-height: 24px; }
  .renewal-resource-copyright-error { margin-top: 10px; padding-left: 24px; font-size: 14px; line-height: 22px; }
}

/* Public modal checkbox */

/* Exact checkbox assets exported from the referenced Figma states. */
.renewal-resource-modal__dialog--public .renewal-resource-check input[type="checkbox"] {
  width: 20px;
  height: 20px;
  margin: 2px 0 0;
  flex: 0 0 20px;
  border: 0;
  border-radius: 0;
  appearance: none;
  background: #fff url('/assets/img/redesign/icons/resource-checkbox-off.svg') center / 20px 20px no-repeat;
  cursor: pointer;
}
.renewal-resource-modal__dialog--public .renewal-resource-check input[type="checkbox"]:checked {
  background-image: url('/assets/img/redesign/icons/resource-checkbox-on.svg');
}
.renewal-resource-modal__dialog--public .renewal-resource-check input[type="checkbox"]:focus-visible {
  outline: 2px solid #3396d7;
  outline-offset: 2px;
}
@media (max-width: 900px) {
  .renewal-resource-modal__dialog--public .renewal-resource-check input[type="checkbox"] {
    width: 20px;
    height: 20px;
    flex-basis: 20px;
    background-size: 20px 20px;
  }
}

/* Inline direct entry */

/* Single-field structure for Figma node 2590:21429. */
.renewal-resource-modal .renewal-resource-select > select.renewal-resource-native-select,
.renewal-resource-modal .renewal-resource-select > select.renewal-resource-native-select[hidden] {
  position: absolute !important;
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
  visibility: hidden !important;
}
.renewal-resource-modal .renewal-resource-select > .ui-selectmenu-button {
  display: none !important;
}
.renewal-resource-modal__dialog--public .renewal-resource-select {
  isolation: isolate;
}
.renewal-resource-modal__dialog--public .renewal-resource-select.is-open {
  z-index: 30;
}
.renewal-resource-modal__dialog--public .renewal-resource-select__inline-input {
  box-sizing: border-box !important;
  display: block;
  min-width: 0;
  margin: 0;
  border-radius: 0;
  appearance: none;
  box-shadow: none;
}
.renewal-resource-modal__dialog--public .renewal-resource-select__inline-input[hidden] {
  display: none !important;
}

/* Resource list table and responsive layout */

/* Figma 2590:10402 - resource list table */
@media (min-width: 901px) {
  .renewal-resource-table {
    border-collapse: separate;
    border-spacing: 0;
    table-layout: fixed;
  }
  .renewal-resource-table th,
  .renewal-resource-table td {
    height: 60px;
    padding: 15px 24px;
    border: 0;
    border-top: 1.2px solid #d6d6d6;
    border-right: 1.2px solid #d6d6d6;
    background-clip: padding-box;
  }
  .renewal-resource-table th {
    color: #424242;
    background: #fcfcfc;
    font-size: 18px;
    font-weight: 400;
    line-height: 28px;
    letter-spacing: -.18px;
    text-align: left;
  }
  .renewal-resource-table thead th:nth-child(n) {
    color: #424242;
  }
  .renewal-resource-table tbody td {
    background: #fff;
    transition: background-color 160ms ease;
  }
  .renewal-resource-table tbody tr:hover td {
    background: #f7f7f7;
  }
  .renewal-resource-table tbody tr:hover td:nth-child(4),
  .renewal-resource-table tbody tr:hover td:nth-child(5),
  .renewal-resource-table tbody tr:hover td:nth-child(6) {
    color: #000;
  }
  .renewal-resource-table tbody tr:last-child td {
    border-bottom: 1.2px solid #d6d6d6;
  }
  .renewal-resource-table th:first-child,
  .renewal-resource-table td:first-child {
    border-left: 0;
  }
  .renewal-resource-table th:last-child,
  .renewal-resource-table td:last-child {
    border-right: 0;
  }
}

.renewal-resource-action__icon {
  display: block;
  width: 18px;
  height: 18px;
  flex: 0 0 18px;
}

.renewal-resource-pagination-slot {
  min-height: 272px;
  padding: 80px 0 160px;
}

.renewal-resource-pagination-slot .renewal-resource-pagination {
  margin: 0 auto;
}

@media (max-width: 900px) {
  .renewal-resource-pagination-slot {
    min-height: 176px;
    padding: 64px 0 80px;
  }
  .renewal-resource-action__icon {
    display: none;
  }
}

/* Figma 2609:14231 - mobile resource page */
@media (max-width: 900px) {
  .renewal-resource-intro {
    display: flex;
    width: calc(100% - 40px);
    margin: 64px auto;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    text-align: center;
  }
  .renewal-resource-intro p {
    display: block;
    margin: 0;
    font-size: 18px;
    font-weight: 400;
    line-height: 28px;
    letter-spacing: -.18px;
  }
  .renewal-resource-intro__desktop { display: none; }
  .renewal-resource-intro__mobile {
    display: block;
    white-space: nowrap;
  }
  .renewal-resource-guide {
    width: calc(100% - 40px);
    min-height: 256px;
    margin-bottom: 40px;
    padding: 24px;
    gap: 16px;
  }
  .renewal-resource-guide p {
    display: flex;
    flex-direction: column;
    gap: 8px;
  }
  .renewal-resource-guide .renewal-resource-tag {
    margin-bottom: 0;
  }
  .renewal-resource-table-wrap {
    width: calc(100% - 40px);
    overflow: hidden;
  }
  .renewal-resource-table {
    display: table;
    width: 100%;
    border-collapse: separate;
    border-spacing: 0;
    table-layout: fixed;
  }
  .renewal-resource-table thead {
    position: static;
    display: table-header-group;
    width: auto;
    height: auto;
    overflow: visible;
    clip: auto;
  }
  .renewal-resource-table tbody { display: table-row-group; }
  .renewal-resource-table tr {
    display: table-row;
    width: auto;
    min-height: 0;
    padding: 0;
    border: 0;
  }
  .renewal-resource-table th,
  .renewal-resource-table td,
  .renewal-resource-table td:nth-child(n) {
    display: table-cell;
    height: 48px;
    margin: 0;
    padding: 8px;
    border: 0;
    border-top: 1.2px solid #d6d6d6;
    border-right: 1.2px solid #d6d6d6;
    vertical-align: middle;
  }
  .renewal-resource-table th {
    color: #424242;
    background: #fcfcfc;
    font-size: 14px;
    font-weight: 400;
    line-height: 22px;
    letter-spacing: -.14px;
  }
  .renewal-resource-table tbody td { background: #fff; }
  .renewal-resource-table tbody tr:last-child td {
    border-bottom: 1.2px solid #d6d6d6;
  }
  .renewal-resource-table th:nth-child(1),
  .renewal-resource-table td:nth-child(1) { width: 20%; }
  .renewal-resource-table th:nth-child(2),
  .renewal-resource-table td:nth-child(2) { width: 25%; }
  .renewal-resource-table th:nth-child(3),
  .renewal-resource-table td:nth-child(3) { width: 31.875%; }
  .renewal-resource-table td:nth-child(3) {
    position: static;
    top: auto;
    right: auto;
    transform: none;
  }
  .renewal-resource-table th:nth-child(4),
  .renewal-resource-table td:nth-child(4) {
    width: 23.125%;
    border-right: 0;
  }
  .renewal-resource-table th:nth-child(5),
  .renewal-resource-table td:nth-child(5),
  .renewal-resource-table th:nth-child(6),
  .renewal-resource-table td:nth-child(6) { display: none; }
  .renewal-resource-table td::before { display: none !important; }
  .renewal-resource-table__title {
    color: #000;
    font-size: 14px;
    line-height: 22px;
    letter-spacing: -.14px;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .renewal-resource-table td:nth-child(4) {
    position: static;
    color: #737373;
    font-size: 12px;
    line-height: 18px;
    letter-spacing: -.12px;
    transform: none;
    white-space: nowrap;
  }
  .renewal-resource-tag {
    min-width: 47px;
    min-height: 22px;
    padding: 2px 8px;
    font-size: 12px;
    line-height: 18px;
    letter-spacing: -.12px;
  }
  .renewal-resource-action {
    min-width: 0;
    min-height: 26px;
    padding: 5px 8px;
    gap: 6px;
    border-radius: 8px;
    font-size: 14px;
    line-height: 14px;
    letter-spacing: -.14px;
    white-space: nowrap;
  }
  .renewal-resource-action__icon {
    display: block;
    width: 16px;
    height: 16px;
    flex-basis: 16px;
  }
  .renewal-resource-pagination-slot {
    min-height: 80px;
    padding: 0;
  }
  .renewal-resource-pagination-slot--has-pagination {
    min-height: 212px;
    padding: 80px 0;
  }
}

.renewal-resource-intro__desktop { display: block; }
.renewal-resource-intro__mobile { display: none; }

@media (max-width: 900px) {
  .renewal-resource-intro__desktop { display: none; }
  .renewal-resource-intro__mobile {
    display: block;
    white-space: nowrap;
  }
}

/* Partner modal validation */

/* Figma 2448:14559 - partner request validation and inline organization entry. */
.renewal-resource-select--inline-entry {
  isolation: isolate;
}

.renewal-resource-select--inline-entry.is-open {
  z-index: 30;
}

.renewal-resource-select--inline-entry .renewal-resource-select__inline-input {
  position: absolute;
  z-index: 2;
  top: 1px;
  right: 44px;
  left: 136px;
  box-sizing: border-box;
  display: block;
  width: auto;
  min-width: 0;
  height: 58px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 0;
  outline: 0;
  color: #141414;
  background: #fff;
  caret-color: #3396d7;
  box-shadow: none;
  font-family: inherit;
  font-size: 18px;
  font-weight: 600;
  line-height: 28px;
  letter-spacing: -.18px;
  appearance: none;
}

.renewal-resource-select--inline-entry .renewal-resource-select__inline-input[hidden] {
  display: none !important;
}

.renewal-resource-select--inline-entry.is-direct-entry .renewal-resource-select__value {
  visibility: hidden;
}

.renewal-resource-field input.is-error::placeholder,
.renewal-resource-field textarea.is-error::placeholder,
.renewal-resource-select__inline-input.is-error::placeholder {
  color: #f44336;
  opacity: 1;
}

.renewal-resource-modal__dialog--partner .renewal-resource-select__value.is-error {
  color: #f44336;
}

.renewal-resource-modal__dialog--partner .renewal-resource-select__button.is-invalid {
  border-color: #d6d6d6;
}

.renewal-resource-modal__dialog--partner .renewal-resource-field input,
.renewal-resource-modal__dialog--partner .renewal-resource-field textarea {
  font-weight: 600;
}

.renewal-resource-consent-error {
  margin: 14px 0 0;
  padding-left: 28px;
  color: #f44336;
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  letter-spacing: -.16px;
}

.renewal-resource-consent-error[hidden] {
  display: none !important;
}

.renewal-resource-modal__dialog--partner .renewal-resource-consent-error + .renewal-resource-check {
  margin-top: 14px;
}

.renewal-resource-modal__dialog--partner .renewal-resource-form-status:empty {
  display: none;
}

.renewal-resource-modal__dialog--partner form.has-validation-errors .renewal-resource-modal__actions {
  margin-top: 40px;
}

/* Keep the partner modal scrollable without a visually heavy scrollbar. */
.renewal-resource-modal__dialog--partner {
  scrollbar-width: thin;
  scrollbar-color: rgb(20 20 20 / 16%) transparent;
}

.renewal-resource-modal__dialog--partner::-webkit-scrollbar {
  width: 4px;
}

.renewal-resource-modal__dialog--partner::-webkit-scrollbar-track {
  background: transparent;
}

.renewal-resource-modal__dialog--partner::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgb(20 20 20 / 16%);
}

.renewal-resource-modal__dialog--partner::-webkit-scrollbar-thumb:hover {
  background: rgb(20 20 20 / 26%);
}

@media (max-width: 900px) {
  .renewal-resource-select--inline-entry .renewal-resource-select__inline-input {
    top: 1px;
    right: 40px;
    left: 100px;
    height: 46px;
    font-size: 14px;
    line-height: 22px;
    letter-spacing: -.14px;
  }

  .renewal-resource-consent-error {
    margin-top: 10px;
    padding-left: 24px;
    font-size: 14px;
    line-height: 22px;
    letter-spacing: -.14px;
  }
}

/* Resource list interaction states */

/* Resource list Default/Hover states from the supplied visual reference. */
@media (min-width: 901px) {
  .renewal-resource-table tbody td {
    background-color: #fff;
    transition: background-color 160ms ease, color 160ms ease;
  }
  .renewal-resource-table__title {
    color: #424242;
    text-decoration: none;
    transition: color 160ms ease;
  }
  .renewal-resource-action {
    color: #525252;
    background-color: #f7f7f7;
    transition: color 160ms ease, background-color 160ms ease;
  }
}

@media (min-width: 901px) and (hover: hover) and (pointer: fine) {
  .renewal-resource-table tbody tr:hover td {
    color: #000;
    background-color: #f7f7f7;
  }
  .renewal-resource-table tbody tr:hover .renewal-resource-table__title {
    color: #000;
    text-decoration: none;
  }
  .renewal-resource-table__title:hover {
    color: #000;
    text-decoration: none;
  }
  .renewal-resource-action:hover,
  .renewal-resource-action:focus-visible {
    color: #000;
    background-color: #eee;
  }
}

.renewal-resource-action:focus-visible {
  outline: 2px solid #292929;
  outline-offset: 2px;
}

/* Partner success modal and CTA states */

/* Figma 2609:17321 - partner request completion modal */
.renewal-resource-modal__dialog--partner-success {
  width: min(320px, 100%);
  min-height: 298px;
  padding: 24px;
  overflow: hidden;
  border-radius: 24px;
}
.renewal-resource-partner-success__content {
  display: flex;
  min-height: 250px;
  flex-direction: column;
  justify-content: space-between;
  gap: 40px;
}
.renewal-resource-partner-success__copy {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.renewal-resource-partner-success__heading {
  display: flex;
  margin-bottom: 8px;
  align-items: center;
  gap: 8px;
}
.renewal-resource-partner-success__heading h2 {
  margin: 0;
  color: #141414;
  font-size: 22px;
  font-weight: 600;
  line-height: 30px;
  letter-spacing: -.22px;
}
.renewal-resource-partner-success__heading .renewal-resource-tag {
  min-width: 0;
  min-height: 22px;
  padding: 2px 8px;
  border-radius: 12px;
  color: #141414;
  background: #e5e5e5;
  font-size: 12px;
  font-weight: 600;
  line-height: 18px;
  letter-spacing: -.12px;
}
.renewal-resource-partner-success__copy > p {
  width: 272px;
  margin: 0;
  color: #141414;
  font-size: 16px;
  font-weight: 600;
  line-height: 24px;
  letter-spacing: -.16px;
}
.renewal-resource-partner-success__copy > p + p {
  margin-top: 24px;
}
.renewal-resource-partner-success__close {
  display: flex;
  width: 272px;
  min-height: 52px;
  padding: 18px 24px;
  align-items: center;
  justify-content: center;
  border: 0;
  border-radius: 12px;
  color: #525252;
  background: #f7f7f7;
  font-family: inherit;
  font-size: 18px;
  font-weight: 600;
  line-height: 16px;
  letter-spacing: -.18px;
  cursor: pointer;
  transition: color 160ms ease, background-color 160ms ease;
}
.renewal-resource-partner-success__close:hover,
.renewal-resource-partner-success__close:focus-visible {
  color: #141414;
  background: #eee;
}
.renewal-resource-partner-success__close:focus-visible {
  outline: 2px solid #292929;
  outline-offset: 2px;
}

/* Resource CTA interaction states: Default / Hover / Pressed reference. */
.renewal-resource-button,
.renewal-resource-action {
  transition: color .15s ease, background-color .15s ease, box-shadow .1s ease;
  -webkit-tap-highlight-color: transparent;
}

@media (hover: hover) and (pointer: fine) {
  .renewal-resource-button--tonal:not(:disabled):hover,
  .renewal-resource-action:not(:disabled):hover {
    color: #000;
    background: #e5e5e5;
  }
  .renewal-resource-button--filled:not(:disabled):hover {
    color: #fff;
    background: #424242;
  }
}

.renewal-resource-button:focus-visible,
.renewal-resource-action:focus-visible {
  outline: 0;
  box-shadow: 0 0 0 3px rgb(20 20 20 / 18%);
}

.renewal-resource-button--tonal:not(:disabled):active {
  color: #000;
  background: #e5e5e5;
  box-shadow: 0 0 0 8px #f2f2f2;
}

.renewal-resource-button--filled:not(:disabled):active {
  color: #fff;
  background: #242424;
  box-shadow: 0 0 0 8px #e5e5e5;
}

.renewal-resource-action:not(:disabled):active {
  color: #000;
  background: #e5e5e5;
  box-shadow: 0 0 0 4px #f2f2f2;
}

.renewal-resource-button__list-icon {
  display: block;
  width: 24px;
  height: 24px;
  padding: 3px;
  flex: 0 0 24px;
  object-fit: fill;
}

/* Resource list: shared news filters, date/type/title/action order. */
.renewal-resource-filter,
.renewal-resource-list { width: min(1320px, calc(100% - 40px)); margin: 0 auto; }
.renewal-resource-list { padding: 0; list-style: none; }
.renewal-resource-list__row { display: grid; grid-template-columns: 120px 88px minmax(0, 1fr) 140px; align-items: center; gap: 24px; min-height: 60px; margin: 0; padding: 14px 8px; box-shadow: inset 0 -1.2px #d6d6d6; font-size: 18px; line-height: 28px; }
.renewal-resource-list__row:first-child { box-shadow: inset 0 1.2px #d6d6d6, inset 0 -1.2px #d6d6d6; }
.renewal-resource-list__row:hover { background: #f7f7f7; }
.renewal-resource-list__row time { color: #737373; }
.renewal-resource-list__title { min-width: 0; color: #424242; font-weight: 600; text-decoration: none; overflow-wrap: anywhere; }
.renewal-resource-list__title:hover { text-decoration: underline; }
.renewal-resource-list__row .renewal-resource-action { justify-self: end; white-space: nowrap; }

/* Contain editor floats and wrap long unbroken text inside the article. */
.renewal-resource-detail__header h2 { overflow-wrap: anywhere; }
.renewal-resource-detail__content { display: flow-root; min-width: 0; overflow-wrap: anywhere; word-break: normal; }
.renewal-resource-detail__content :where(p, div, span, a, h1, h2, h3, h4, h5, h6, li, blockquote, figcaption) { overflow-wrap: anywhere; white-space: normal; }
.renewal-resource-detail__content :where(div, figure, blockquote, table, pre, iframe, video) { max-width: 100%; }
.renewal-resource-detail__content figure { margin-left: 0; margin-right: 0; }
.renewal-resource-detail__content img { max-width: 100% !important; height: auto !important; }
.renewal-resource-detail__content pre { white-space: pre-wrap; overflow-wrap: anywhere; }
.renewal-resource-detail__content table { table-layout: fixed; width: 100%; }
.renewal-resource-detail__content th,
.renewal-resource-detail__content td { overflow-wrap: anywhere; }
.renewal-resource-detail__actions { clear: both; }
@media (max-width: 900px) {
  .renewal-resource-list__row { grid-template-columns: auto minmax(0, 1fr); gap: 8px 16px; padding: 16px 8px; font-size: 14px; line-height: 22px; }
  .renewal-resource-list__row time { grid-column: 1; }
  .renewal-resource-list__row .renewal-news-category { grid-column: 2; }
  .renewal-resource-list__title { grid-column: 1 / -1; }
  .renewal-resource-list__row .renewal-resource-action { grid-column: 1 / -1; }
  .renewal-resource-detail__content .alignleft,
  .renewal-resource-detail__content .alignright { float: none !important; margin-left: 0; margin-right: 0; }
}

/* Resource request privacy disclosure */
.renewal-resource-check label { display: inline; margin: 0; color: inherit; font: inherit; cursor: pointer; }
.renewal-resource-privacy-toggle {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0;
  border: 0;
  color: inherit;
  background: transparent;
  font: inherit;
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 3px;
  cursor: pointer;
}
.renewal-resource-privacy-toggle:focus-visible { outline: 2px solid #3396d7; outline-offset: 3px; }
.renewal-resource-privacy-toggle__arrow {
  width: 8px;
  height: 8px;
  border-right: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  transform: translateY(-2px) rotate(45deg);
}
.renewal-resource-privacy-toggle[aria-expanded="true"] .renewal-resource-privacy-toggle__arrow {
  transform: translateY(2px) rotate(225deg);
}
.renewal-resource-privacy-details { margin: 12px 0 0 28px; color: #424242; font-size: 14px; line-height: 1.6; overflow-wrap: anywhere; }
.renewal-resource-privacy-details[hidden] { display: none !important; }
.renewal-resource-privacy-details ol { margin: 0; padding-left: 20px; list-style: decimal; }
.renewal-resource-privacy-details p { margin: 8px 0 0; font: inherit; }
.renewal-resource-privacy-details em { color: #d32f2f; font-style: normal; }
.renewal-resource-privacy-details + .renewal-resource-check { margin-top: 14px; }
@media (max-width: 900px) {
  .renewal-resource-privacy-details { margin-left: 24px; }
}
