/* 누리집 서브 공통 레이아웃 */
.nuri-sub#sub-wrap {
  margin-top: calc(var(--header-high-expanded) + 42px);
}

.sub-main .container {
  padding:0;
}

.nuri-sub .nuri-member-intro-inner {
  padding: 0;
  max-width: 1600px;
}

.nuri-sub .nuri-member-intro-right {
  display: flex;
  align-items: center;
  margin-left: auto;
  gap: var(--spacing-l);
}

.nuri-sub .nuri-member-intro-content {
  display: flex;
  align-items: center;
}

.nuri-sub .nuri-member-intro-bg {
  position: static;
  max-width: 242px;
}

.nuri-sub .nuri-member-intro-object {
  position: absolute;
  width: 303px;
  bottom: 0;
  right: 0;
  z-index: -1;
}
.nuri-sub .nuri-member-intro .sub-hero-emblem {
  overflow: unset;
}
	
.nuri-sub .nuri-profile {
  align-items: center;
}

.nuri-sub .nuri-profile-name {
  font-size: var(--H3);
  letter-spacing: 0.1em;
  font-weight:normal;
}

.nuri-sub .nuri-profile-title {
  letter-spacing: 0.1em;
}

.nuri-sub .nuri-member-info {
  display: flex;
  flex-direction: column;
  width: 220px;
  margin-left: calc(var(--spacing-m) * -1);
  gap: var(--spacing-xs);
  border-radius: var(--radius-ms);
  padding: var(--spacing-s);
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(10px);
}

.nuri-sub .info-row {
  display: flex;
  align-items: center;
  gap: var(--spacing-xs);
}

.nuri-sub .info-row-dot {
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
}

.nuri-sub .info-row-label {
  display: block;
  width: 80px;
  font-weight: var(--bold);
  font-size: var(--body-2);
  line-height: normal;
  letter-spacing: 0;
}

.nuri-sub .info-row-value {
  font-weight: var(--medium);
  font-size: var(--body-2);
  line-height: normal;
  letter-spacing: 0;
}

.nuri-sub .nuri-member-intro .sub-hero-emblem-img {
  right: unset;
  left: 159px;
  bottom: 45px;
  height: 366px;
}

.nuri-sub .nuri-member-intro .sub-hero-banner {
  height: 422px;
}

/* 의원소개 - 인사말 */
.nuri-greet-wrap {
  display: flex;
  gap: var(--spacing-lm);
}

.nuri-greet-intro {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-lm);
  padding: var(--spacing-lm) 0 0;
  max-width: 627px;
}

.nuri-greet-content {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-m);
}

.nuri-greet-logo {
  width: 41px;
  height: 40px;
}

.nuri-greet-heading {
  font-weight: var(--bold);
  font-size: var(--H4);
  letter-spacing: 0px;
  color: var(--gray-900);
}

.nuri-greet-text {
  font-size: var(--Subtitle-1);
  color: var(--gray-600);
  letter-spacing: 0px;
}

.nuri-greet-profile {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: var(--spacing-lm) var(--spacing-ml);
  background: linear-gradient(90deg, #fffefd 0%, #e1d8cd 63.5%, #ffffff 100%);
}

.nuri-greet-photo {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  width: 480px;
  height: 560px;
  margin: 0 22px;
  border-radius: var(--radius-2xl) var(--radius-2xl) 0 0;
  background-image: url('/site/basic/img/nuri/img-greet-bg.png');
  background-size: cover;
  background-position: 50%;
}

.nuri-greet-image {
  max-width: 420px;
  height: auto;
  object-fit: cover;
}

.nuri-greet-info {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 118px;
  gap: var(--spacing-l);
  margin-top: calc(var(--spacing-lm) * -1);
  background: var(--basic-pattern), var(--violet-500);
  border-radius: var(--radius-l) var(--radius-l) var(--radius-ms) var(--radius-ms);
  color: var(--white);
}

.nuri-greet-slogan {
  font-weight: var(--bold);
  font-size: var(--Subtitle-1);
  line-height: 140%;
  letter-spacing: 0px;
}

.nuri-greet-name {
  font-family: var(--font-secondary);
  font-weight: var(--regular);
  font-size: var(--H4);
  letter-spacing: 0.1em;
}

/* 의원소개 - 프로필 */
.nuri-sub-profile .profile-modal-tabs {
  justify-content: space-between;
}

.nuri-sub-profile .member-profile-detail-col,
.nuri-sub-profile .profile-modal-contact-item {
  flex: 1;
  gap: var(--spacing-m);
}

.nuri-sub-profile .member-profile-details-wrapper {
  display: flex;
  gap: var(--spacing-m);
}

.nuri-sub-profile .member-profile-details {
  flex: 1;
}

.nuri-sub-profile .profile-modal-contact {
  flex-direction: row;
  gap: var(--spacing-m);
}

.nuri-sub-profile .profile-modal-profile {
  background-repeat: repeat-x;
}

.nuri-sub-profile .member-profile-attendance {
  width: fit-content;
}

.nuri-sub-profile .profile-history {
  flex-direction: row;
  max-height: unset;
  overflow: visible;
}

.nuri-sub-profile .profile-history-category {
  flex: 1;
}

.nuri-sub-profile .profile-modal-history {
  padding: var(--spacing-l) var(--spacing-m);
  border-radius: 0 0 var(--radius-l) var(--radius-l);
}

.nuri-sub .discl-stats {
  grid-template-columns: 1fr;
}

/* 의정활동 - 의원출석현황 */
.nuri-sub .member-activity-wrapper {
  display: flex;
  gap: var(--spacing-lm);
}

.nuri-sub .member-activity-inner {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-m);
  width: 100%;
}

.nuri-sub .member-activity {
  min-width: 420px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-lm);
}

.nuri-sub .member-activity-header {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-m);
}

.nuri-sub .member-activity-title {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

.nuri-sub .member-title-wrap {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-s);
}

.nuri-sub .member-title {
  font-weight: var(--bold);
  font-size: var(--H6);
  line-height: 140%;
  letter-spacing: 0px;
  color: var(--gray-400);
  margin-bottom: 0;
}

.nuri-sub .member-title-name {
  color: var(--gray-600);
}

.nuri-sub .member-period {
  padding: var(--spacing-2xs) var(--spacing-xs);
  font-weight: var(--bold);
  font-size: var(--body-2);
  line-height: normal;
  letter-spacing: 0px;
  color: var(--white);
  background-color: var(--gray-900);
  border-radius: var(--radius-2xs);
}

.nuri-sub .member-stats {
  display: flex;
  gap: var(--spacing-xs);
  margin-left: auto;
}

.nuri-sub .member-stat-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-2xs);
  padding: var(--spacing-s);
  background-color: var(--gray-50);
  border-radius: var(--radius-s);
}

.nuri-sub .member-stat-label {
  font-weight: var(--bold);
  font-size: var(--body-2);
  line-height: normal;
  letter-spacing: 0px;
}

.nuri-sub.member-stat-value {
  font-weight: var(--bold);
  font-size: var(--body-2);
  line-height: normal;
  letter-spacing: 0px;
}

.nuri-sub .member-stat-attend {
  background-color: var(--attend);
}

.nuri-sub .member-stat-attend-text {
  color: var(--attend);
}

.nuri-sub .member-stat-absent {
  background-color: var(--absent);
}

.nuri-sub .member-stat-absent-text {
  color: var(--absent);
}

.nuri-sub .member-stat-sick {
  background-color: var(--sick);
}

.nuri-sub .member-stat-sick-text {
  color: var(--sick);
}

.nuri-sub .member-activity-list {
  display: flex;
  flex-direction: column;
  height: 520px;
  gap: var(--spacing-xs);
  padding: var(--spacing-ms);
  background-color: var(--gray-50);
  border-radius: var(--radius-ms);
  box-shadow: 0 0 0 1px var(--gray-100);
  overflow-y: auto;
}

.nuri-sub .member-activity-item {
  display: flex;
  flex-direction: column;
  gap: 13px;
  padding: var(--spacing-m);
  padding-right: var(--spacing-l);
  background-color: var(--white);
  border-radius: var(--radius-ms);
}

.nuri-sub .member-status {
  display: flex;
  align-items: center;
  gap: var(--spacing-xs);
}

.nuri-sub .member-status-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  border-radius: var(--radius-xs);
}

.nuri-sub .member-status-icon-img {
  width: 14px;
  height: 14px;
}

.nuri-sub .member-status-text {
  font-weight: var(--medium);
  font-size: var(--body-2);
  line-height: normal;
  letter-spacing: 0px;
}

.nuri-sub .member-meeting {
  display: flex;
  justify-content: space-between;
}

.nuri-sub .member-meeting-title {
  font-weight: var(--bold);
  font-size: var(--body-1);
  line-height: 140%;
  letter-spacing: 0px;
}

.nuri-sub .member-meeting-info {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-xs);
}

.nuri-sub .member-meeting-type {
  display: flex;
  align-items: center;
  gap: var(--spacing-2xs);
}

.nuri-sub .member-meeting-dot {
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  flex-shrink: 0;
}

.nuri-sub .member-meeting-type-text {
  font-weight: var(--bold);
  font-size: var(--body-2);
  line-height: normal;
  letter-spacing: 0px;
}

.nuri-sub .member-meeting-date {
  font-weight: var(--bold);
  font-size: var(--body-2);
  line-height: normal;
  letter-spacing: 0px;
  color: var(--gray-400);
}

.nuri-sub .member-meeting-reason {
  display: flex;
  align-items: center;
  height: 32px;
  padding: 0 var(--spacing-s);
  background-color: var(--gray-100);
  border-radius: var(--radius-xs);
  font-weight: var(--medium);
  font-size: var(--body-2);
  line-height: normal;
}

.nuri-sub .member-activity .board-bottom-pagination {
  margin-top: 0;
}
