:root {
  --font-family-inter: 'Inter', sans-serif;
  --text-black: rgba(0, 0, 0, 1);
  --text-rgb-55-65-81: rgba(55, 65, 81, 1);
  --text-white: rgba(255, 255, 255, 1);
  --text-rgb-68-68-68: rgba(68, 68, 68, 1);
}

.text-black {
  color: var(--text-black);
}

.text-rgb-55-65-81 {
  color: var(--text-rgb-55-65-81);
}

.text-white {
  color: var(--text-white);
}

.text-rgb-68-68-68 {
  color: var(--text-rgb-68-68-68);
}


/* CSS Reset */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

html {
  overflow-y: scroll; /* 항상 스크롤바 공간 확보 */
  scrollbar-gutter: stable; /* 스크롤바 공간을 항상 예약하여 레이아웃 시프트 방지 */
}

body {
  width: 100%;
  min-height: 100vh;
  overflow-x: hidden;
  overflow-y: scroll; /* 항상 스크롤바 공간 확보 */
  scrollbar-gutter: stable; /* 스크롤바 공간을 항상 예약하여 레이아웃 시프트 방지 */
  background-color: rgba(255, 255, 255, 1);
  border-left: 1px solid rgba(59, 130, 246, 1);
  border-top: 1px solid rgba(59, 130, 246, 1);
  border-right: 1px solid rgba(59, 130, 246, 1);
}


.main-container {
  width: 100%;
  display: flex;
  flex-direction: column;
}

img {
  max-width: 100%;
  height: auto;
}

.text-5 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  font-family: var(--font-family-inter);
  font-weight: 600;
  font-size: 20px;
  line-height: 28.79999542236328px;
  text-decoration: none;
  text-transform: none;
  color: var(--text-black);
}

.logo-section-4 {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  gap: 11.999998092651367px;
  padding: 0px;
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
}

.text-8 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  font-family: var(--font-family-inter);
  font-weight: 500;
  font-size: 13.999998092651367px;
  line-height: 16.799997329711914px;
  text-decoration: none;
  text-transform: none;
  color: var(--text-rgb-55-65-81);
}

.login-button-7 {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 0px;
  width: 71px;
  height: 40px;
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  border: 1px solid rgba(209, 213, 219, 1);
  border-radius: 5.999999046325684px;
  background-color: transparent;
  cursor: pointer;
}

.text-10 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  font-family: var(--font-family-inter);
  font-weight: 600;
  font-size: 13.999998092651367px;
  line-height: 16.799997329711914px;
  text-decoration: none;
  text-transform: none;
  color: var(--text-white);
}

.signup-button-9 {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 0px;
  width: 84px;
  height: 40px;
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  background-color: rgba(59, 130, 246, 1);
  border-radius: 5.999999046325684px;
  cursor: pointer;
  transition: background-color 0.2s ease;
}

.signup-button-9:hover,
.signup-button-9.active {
  background-color: rgba(37, 99, 235, 1);
}

.signup-button-9:active {
  background-color: rgba(29, 78, 216, 1);
}

.user-actions-6 {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  gap: 11.999998092651367px;
  padding: 0px;
  width: 167px;
  height: 40px;
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  position: relative;
}

.header-content-3 {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: 19.999998092651367px;
  padding: 0px;
  width: 800px;
  height: 40px;
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
}

.header-2 {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  padding: 20px 40px;
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  background-color: rgba(255, 255, 255, 1);
  border: 1px solid rgba(226, 232, 240, 1);
  border-radius: 20px;
  width: 880px;
  height: 80px;
  margin: 0 auto;
  box-shadow: 0px 2px 8px rgba(0, 0, 0, 0.1);
}

.hero-content-11 .text-12 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  font-family: var(--font-family-inter);
  font-weight: 700;
  font-size: 47.99999237060547px;
  line-height: 57.59999084472656px;
  text-align: center;
  text-decoration: none;
  text-transform: none;
  color: var(--text-black);
}

.text-13 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  font-family: var(--font-family-inter);
  font-weight: 400;
  font-size: 17.999998092651367px;
  line-height: 26.999998092651367px;
  text-align: center;
  text-decoration: none;
  text-transform: none;
  color: var(--text-rgb-68-68-68);
}

.icon-17 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  width: 19px;
  height: 19px;
  display: block;
}

.plus-circle-16 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.sell-button-15 .text-18 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  font-family: var(--font-family-inter);
  font-weight: 600;
  font-size: 20px;
  line-height: 20px;
  text-decoration: none;
  text-transform: none;
  color: var(--text-white);
}

.sell-button-15 {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 7.999999523162842px;
  padding: 0px;
  flex-grow: 0;
  flex-shrink: 1;
  width: 200px;
  height: 56px;
  background-color: rgba(16, 185, 129, 1);
  border-radius: 7.999999523162842px;
  cursor: pointer;
}

.icon-21 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  border: 1.6666666269302368px solid rgba(255, 255, 255, 1);
  border: none;
  outline: none;
}

.bell-20 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
}

.buy-button-19 .text-22 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  font-family: var(--font-family-inter);
  font-weight: 600;
  font-size: 20px;
  line-height: 20px;
  text-decoration: none;
  text-transform: none;
  color: var(--text-white);
}

.buy-button-19 {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 7.999999523162842px;
  padding: 0px;
  flex-grow: 0;
  flex-shrink: 1;
  width: 200px;
  height: 56px;
  background-color: rgba(59, 130, 246, 1);
  border-radius: 7.999999523162842px;
  cursor: pointer;
}

.cta-buttons-14 {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  gap: 15.999999046325684px;
  padding: 0px;
  width: 416px;
  height: 56px;
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
}

.hero-content-11 {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  gap: 24px;
  padding: 0px;
  width: 800px;
  height: 216px;
  margin: 80px auto 0 auto;
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
}

.hero-section-1 {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  gap: 0px;
  padding: 40px 0px;
  width: 100%;
  margin: 0 auto 30px auto;
  max-width: 1200px;
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  background-color: rgba(255, 255, 255, 1);
}

.divider-line {
  width: 100%;
  height: 1px;
  background-image: repeating-linear-gradient(
    to right,
    rgba(59, 130, 246, 1) 0px,
    rgba(59, 130, 246, 1) 8px,
    transparent 8px,
    transparent 16px
  );
  margin: 0 auto;
  max-width: 1200px;
}

@media (max-width: 1440px) {
  .hero-section-1 {
    padding-left: 24px;
    padding-right: 24px;
  }
}

@media (max-width: 768px) {
  .hero-section-1 {
    padding-left: 16px;
    padding-right: 16px;
  }
}

/* Features Section */
.text-3 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  font-family: var(--font-family-inter);
  font-weight: 700;
  font-size: 31.999998092651367px;
  line-height: 38.39999771118164px;
  text-decoration: none;
  text-transform: none;
  color: var(--text-black);
}

.text-4 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  font-family: var(--font-family-inter);
  font-weight: normal;
  font-size: 15.999999046325684px;
  line-height: 19.19999885559082px;
  text-decoration: none;
  text-transform: none;
  color: var(--text-rgb-68-68-68);
}

.features-header-2 {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  gap: 15.999999046325684px;
  padding: 0px;
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
}

.vector-9 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  border: 2.3333332538604736px solid rgba(59, 130, 246, 1);
  border: none;
  outline: none;
}

.vector-10 {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  border: 2.3333332538604736px solid rgba(59, 130, 246, 1);
  border: none;
  outline: none;
  width: auto;
  height: auto;
  max-width: 50%;
  max-height: 50%;
}

.shield-check-8 {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
}

.icon-7 {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 0px;
  flex-grow: 0;
  flex-shrink: 1;
  width: 57.6px;
  height: 57.6px;
  background-color: rgba(239, 246, 255, 1);
  border-radius: 11.999998092651367px;
}

.text-11 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  font-family: var(--font-family-inter);
  font-weight: 700;
  font-size: 19.999998092651367px;
  line-height: 23.999996185302734px;
  text-decoration: none;
  text-transform: none;
  color: var(--text-black);
}

.text-12 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  font-family: var(--font-family-inter);
  font-weight: normal;
  font-size: 13.999998092651367px;
  line-height: 20.999998092651367px;
  text-decoration: none;
  text-transform: none;
  color: var(--text-rgb-68-68-68);
}

.feature-1-6 {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 15.999999046325684px;
  padding: 31.999998092651367px;
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: 0;
  background-color: rgba(255, 255, 255, 1);
  border-radius: 11.999998092651367px;
}

.vector-16 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  border: 2.3333332538604736px solid rgba(16, 185, 129, 1);
  border: none;
  outline: none;
}

.zap-15 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
}

.icon-14 {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 0px;
  flex-grow: 0;
  flex-shrink: 1;
  width: 57.6px;
  height: 57.6px;
  background-color: rgba(240, 253, 244, 1);
  border-radius: 11.999998092651367px;
}

.text-17 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  font-family: var(--font-family-inter);
  font-weight: 700;
  font-size: 19.999998092651367px;
  line-height: 23.999996185302734px;
  text-decoration: none;
  text-transform: none;
  color: var(--text-black);
}

.text-18 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  font-family: var(--font-family-inter);
  font-weight: normal;
  font-size: 13.999998092651367px;
  line-height: 20.999998092651367px;
  text-decoration: none;
  text-transform: none;
  color: var(--text-rgb-68-68-68);
}

.feature-2-13 {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 15.999999046325684px;
  padding: 31.999998092651367px;
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: 0;
  background-color: rgba(255, 255, 255, 1);
  border-radius: 11.999998092651367px;
}

.icon-22 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  border: 2.3333332538604736px solid rgba(239, 68, 68, 1);
  border: none;
  outline: none;
}

.bell-21 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
}

.icon-20 {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 0px;
  flex-grow: 0;
  flex-shrink: 1;
  width: 57.6px;
  height: 57.6px;
  background-color: rgba(254, 243, 242, 1);
  border-radius: 11.999998092651367px;
}

.text-23 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  font-family: var(--font-family-inter);
  font-weight: 700;
  font-size: 19.999998092651367px;
  line-height: 23.999996185302734px;
  text-decoration: none;
  text-transform: none;
  color: var(--text-black);
}

.text-24 {
  flex-grow: 0;
  flex-shrink: 1;
  flex-basis: auto;
  font-family: var(--font-family-inter);
  font-weight: normal;
  font-size: 13.999998092651367px;
  line-height: 20.999998092651367px;
  text-decoration: none;
  text-transform: none;
  color: var(--text-rgb-68-68-68);
}

.feature-3-19 {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 15.999999046325684px;
  padding: 31.999998092651367px;
  flex-grow: 1;
  flex-shrink: 1;
  flex-basis: 0;
  background-color: rgba(255, 255, 255, 1);
  border-radius: 11.999998092651367px;
}

.features-grid-5 {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: stretch;
  gap: 23.999996185302734px;
  padding: 0px;
  flex-grow: 0;
  flex-shrink: 1;
  width: 93.33333333333333%;
}

.features-section-1 {
  width: 100%;
  background-color: rgba(241, 245, 249, 1);
  padding: 79.99999237060547px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.features-section-1 > .features-header-2,
.features-section-1 > .features-grid-5 {
  width: 100%;
  max-width: 1200px;
  padding: 0 39.999996185302734px;
  box-sizing: border-box;
}

.features-section-1 > .features-header-2 {
  margin-bottom: 47.99999237060547px;
}

/* Price Section */
.price-section {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 80px 40px;
  max-width: 1200px;
  margin: 0 auto;
  gap: 48px;
  background-color: rgba(255, 255, 255, 1);
}

.price-section-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.price-section-title-wrapper {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}

.trending-up-icon {
  width: 48px;
  height: 48px;
  flex-shrink: 0;
}

.price-section-main-title {
  font-family: var(--font-family-inter);
  font-weight: 700;
  font-size: 32px;
  line-height: 38.39999771118164px;
  color: #000000;
  margin: 0;
}

.price-section-notice {
  font-family: var(--font-family-inter);
  font-weight: 700;
  font-size: 16px;
  line-height: 38.39999771118164px;
  color: rgba(107, 114, 128, 1);
  margin: 0;
  text-align: center;
}

.price-container {
  width: 896px;
  height: 443px;
  background-color: rgba(255, 255, 255, 1);
  border: 1px solid rgba(226, 232, 240, 1);
  border-radius: 20px;
  padding: 32px 48px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.price-header-content {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  width: 800px;
  height: 39px;
}

.price-date-title {
  font-family: var(--font-family-inter);
  font-weight: 600;
  font-size: 28px;
  line-height: 38.39999771118164px;
  color: var(--text-black);
  margin: 0;
}

.price-header-info {
  display: flex;
  flex-direction: row;
  gap: 20px;
  align-items: center;
}

.inquiry-frame {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  width: 143px;
  height: 39px;
}

.inquiry-label {
  font-family: var(--font-family-inter);
  font-weight: 400;
  font-size: 14px;
  line-height: 38.39999771118164px;
  color: var(--text-black);
  margin: 0;
}

.inquiry-value {
  font-family: var(--font-family-inter);
  font-weight: 700;
  font-size: 14px;
  line-height: 38.39999771118164px;
  color: rgba(59, 130, 246, 1);
  margin: 0;
}

.market-frame {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  width: auto;
  height: 39px;
  white-space: nowrap;
}

.market-label {
  font-family: var(--font-family-inter);
  font-weight: 400;
  font-size: 14px;
  line-height: 38.39999771118164px;
  color: var(--text-black);
  margin: 0;
  white-space: nowrap;
}

.market-value {
  font-family: var(--font-family-inter);
  font-weight: 700;
  font-size: 14px;
  line-height: 38.39999771118164px;
  color: rgba(59, 130, 246, 1);
  margin: 0;
}

.price-rows {
  display: flex;
  flex-direction: column;
  gap: 0px;
  width: 800px;
}

.price-row {
  display: flex;
  flex-direction: row;
  width: 800px;
  height: 80px;
}

.price-row:first-child .category-cell {
  border-top: none;
}

.price-row:first-child .price-header-cell {
  border-top: none;
}

.price-row:first-child .change-header-cell {
  border-top: none;
}


.price-row:last-child .price-value-cell {
  border-bottom: none;
}

.price-row:last-child .change-value-cell {
  border-bottom: none;
}

.category-cell {
  width: 120px;
  height: 80px;
  background-color: rgba(255, 255, 255, 1);
  border-top: 1px solid rgba(220, 220, 220, 1);
  border-right: 1px solid rgba(220, 220, 220, 1);
  border-bottom: none;
  border-left: none;
  display: flex;
  align-items: center;
  justify-content: center;
}

.price-row:not(:last-child) .category-cell {
  border-bottom: 1px solid rgba(220, 220, 220, 1);
}

.category-text {
  font-family: var(--font-family-inter);
  font-weight: 500;
  font-size: 16px;
  line-height: 38.39999771118164px;
  color: var(--text-black);
  margin: 0;
  text-align: center;
}

.price-cell-group {
  width: 440px;
  height: 80px;
  display: flex;
  flex-direction: column;
}

.price-header-cell {
  width: 440px;
  height: 30px;
  background-color: rgba(255, 255, 255, 1);
  border-top: none;
  border-right: none;
  border-bottom: 1px solid rgba(220, 220, 220, 1);
  border-left: 1px solid rgba(220, 220, 220, 1);
  display: flex;
  align-items: center;
  justify-content: center;
}

.price-label {
  font-family: var(--font-family-inter);
  font-weight: 500;
  font-size: 14px;
  line-height: 38.39999771118164px;
  color: var(--text-black);
  margin: 0;
  text-align: center;
}

.price-value-cell {
  width: 440px;
  height: 50px;
  background-color: rgba(255, 255, 255, 1);
  border-top: none;
  border-right: none;
  border-bottom: 1px solid rgba(220, 220, 220, 1);
  border-left: 1px solid rgba(220, 220, 220, 1);
  display: flex;
  align-items: center;
  justify-content: center;
}

.price-amount {
  font-family: var(--font-family-inter);
  font-weight: 500;
  font-size: 24px;
  line-height: 38.39999771118164px;
  color: var(--text-black);
  margin: 0;
  text-align: center;
}

.change-cell-group {
  width: 240px;
  height: 80px;
  display: flex;
  flex-direction: column;
}

.change-header-cell {
  width: 240px;
  height: 30px;
  background-color: rgba(255, 255, 255, 1);
  border-top: none;
  border-right: none;
  border-bottom: 1px solid rgba(220, 220, 220, 1);
  border-left: none;
  display: flex;
  align-items: center;
  justify-content: center;
}

.change-label {
  font-family: var(--font-family-inter);
  font-weight: 500;
  font-size: 14px;
  line-height: 38.39999771118164px;
  color: var(--text-black);
  margin: 0;
  text-align: center;
}

.change-value-cell {
  width: 240px;
  height: 50px;
  background-color: rgba(255, 255, 255, 1);
  border-top: none;
  border-right: none;
  border-bottom: 1px solid rgba(220, 220, 220, 1);
  border-left: none;
  display: flex;
  align-items: center;
  justify-content: center;
}

.change-content {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
}

.chevron-icon {
  width: 18px;
  height: 22px;
  flex-shrink: 0;
}

.change-amount {
  font-family: var(--font-family-inter);
  font-weight: 500;
  font-size: 24px;
  line-height: 38.39999771118164px;
  margin: 0;
  text-align: center;
}

.price-up {
  color: rgba(220, 38, 38, 1);
}

.price-down {
  color: rgba(30, 64, 175, 1);
}

@media (max-width: 1440px) {
  .features-section-1 {
    padding-left: 24px;
    padding-right: 24px;
  }
}

@media (max-width: 768px) {
  .features-section-1 {
    padding-left: 16px;
    padding-right: 16px;
  }

  .price-section {
    padding: 40px 20px;
  }

  .price-title {
    font-size: 24px;
    line-height: 28.8px;
  }

  .price-table-container {
    padding: 16px;
    overflow-x: auto;
  }
}

/* Footer Section */
.footer-section {
  width: 100%;
  background-color: rgba(30, 41, 59, 1);
  padding: 60px 40px;
  margin-top: 0;
}

.footer-content {
  max-width: 1200px;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-start;
  gap: 80px;
}

.footer-left {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.footer-logo {
  font-family: var(--font-family-inter);
  font-weight: 700;
  font-size: 24px;
  line-height: 28.8px;
  color: rgba(255, 255, 255, 1);
  margin: 0;
}

.footer-subtitle {
  font-family: var(--font-family-inter);
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: rgba(203, 213, 225, 1);
  margin: 0;
}

.footer-right {
  display: flex;
  flex-direction: row;
  gap: 80px;
}

.footer-column {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.footer-column-title {
  font-family: var(--font-family-inter);
  font-weight: 600;
  font-size: 16px;
  line-height: 19.2px;
  color: rgba(255, 255, 255, 1);
  margin: 0;
}

.footer-link {
  font-family: var(--font-family-inter);
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  color: rgba(203, 213, 225, 1);
  margin: 0;
  cursor: pointer;
  transition: color 0.2s;
}

.footer-link:hover {
  color: rgba(255, 255, 255, 1);
}

@media (max-width: 768px) {
  .footer-content {
    flex-direction: column;
    gap: 40px;
  }

  .footer-right {
    flex-direction: column;
    gap: 40px;
  }

  .footer-section {
    padding: 40px 20px;
  }
}

/* Modal Styles */
.modal {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1000;
}

.modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 1000;
}

.modal-content {
  position: relative;
  background-color: rgba(255, 255, 255, 1);
  border-radius: 20px;
  padding: 32px;
  max-width: 400px;
  width: 90%;
  max-height: 90vh;
  overflow-y: auto;
  z-index: 1001;
  box-shadow: 0px 4px 32px rgba(0, 0, 0, 0.2);
}

.login-modal-content,
.find-id-modal-content {
  padding: 0;
  width: 480px;
  min-height: 388px;
  position: relative;
  overflow: hidden;
  background-color: rgba(255, 255, 255, 1);
  border: 1px solid rgba(226, 232, 240, 1);
  border-radius: 20px;
  display: flex;
  flex-direction: column;
}

.find-id-modal-content {
  min-height: 296px;
}

.modal-close {
  position: absolute;
  top: 16px;
  right: 16px;
  background: none;
  border: none;
  font-size: 32px;
  color: var(--text-black);
  cursor: pointer;
  padding: 0;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  z-index: 1002;
}

.modal-close:hover {
  opacity: 0.7;
}

.login-header-content,
.find-id-header-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  padding: 24px 40px 0px 40px;
  gap: 0px;
  box-sizing: border-box;
}

.login-logo-section,
.find-id-logo-section,
.find-id-success-logo-section,
.reset-password-logo-section {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 30px;
  margin-bottom: 3.225px;
}

.login-logo-text {
  font-family: var(--font-family-inter);
  font-weight: 600;
  font-size: 20px;
  line-height: 28.79999542236328px;
  color: var(--text-black);
  margin: 0;
  text-align: center;
}

.login-frame-22 {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
  margin-top: 6px;
  gap: 40px;
  flex-shrink: 0;
}

.login-user-actions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
  gap: 24px;
  flex-shrink: 0;
}

.login-frame-21 {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
  gap: 12px;
}

.login-error-message {
  font-family: var(--font-family-inter);
  font-weight: 500;
  font-size: 13.999998092651367px;
  line-height: 16.799997329711914px;
  color: rgba(255, 29, 25, 1);
  text-align: center;
  height: 17px;
  min-height: 17px;
  margin-top: 3.225px;
  margin-bottom: 3.225px;
  flex-shrink: 0;
  visibility: hidden;
  width: 100%;
  box-sizing: border-box;
}

.login-error-message.visible {
  visibility: visible;
}

.find-id-error-message {
  font-family: var(--font-family-inter);
  font-weight: 500;
  font-size: 13.999998092651367px;
  line-height: 16.799997329711914px;
  color: rgba(255, 29, 25, 1);
  text-align: center;
  height: 17px;
  min-height: 17px;
  max-height: 17px;
  margin-top: 3.225px;
  margin-bottom: 3.225px;
  flex-shrink: 0;
  visibility: hidden;
  width: 100%;
  box-sizing: border-box;
  overflow: hidden;
}

.find-id-error-message.visible {
  visibility: visible;
}


.login-input-field {
  width: 100%;
}

.login-input-field input {
  width: 100%;
  height: 40px;
  padding: 0 16px;
  border: 1px solid rgba(209, 213, 219, 1);
  border-radius: 5.999999046325684px;
  font-family: var(--font-family-inter);
  font-weight: 500;
  font-size: 13.999998092651367px;
  line-height: 16.799997329711914px;
  color: var(--text-rgb-55-65-81);
  box-sizing: border-box;
}

.login-input-field input::placeholder {
  color: var(--text-rgb-55-65-81);
}

.login-input-field input:focus {
  outline: none;
  border-color: rgba(59, 130, 246, 1);
}

.login-save-id {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  width: 97px;
  height: 20px;
}

.login-save-id input[type="checkbox"] {
  width: 20px;
  height: 20px;
  border: 1px solid rgba(209, 213, 219, 1);
  border-radius: 2px;
  cursor: pointer;
}

.login-save-id label {
  font-family: var(--font-family-inter);
  font-weight: 500;
  font-size: 13.999998092651367px;
  line-height: 16.799997329711914px;
  color: var(--text-rgb-55-65-81);
  cursor: pointer;
  margin: 0;
}

.login-submit-button {
  width: 100%;
  height: 40px;
  background-color: rgba(59, 130, 246, 1);
  color: var(--text-white);
  border: none;
  border-radius: 5.999999046325684px;
  font-family: var(--font-family-inter);
  font-weight: 600;
  font-size: 13.999998092651367px;
  line-height: 16.799997329711914px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}

.login-submit-button:hover {
  background-color: rgba(37, 99, 235, 1);
}

/* Find ID Modal Styles */
.find-id-user-actions {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
  gap: 24px;
  margin-top: 24px;
  flex-shrink: 0;
}

.find-id-business-info {
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: 0px;
}

.find-id-representative {
  display: flex;
  flex-direction: column;
  width: 100%;
  gap: 8px;
}

.find-id-label {
  font-family: var(--font-family-inter);
  font-weight: 600;
  font-size: 14px;
  line-height: 16.799999237060547px;
  color: var(--text-rgb-55-65-81);
  margin: 0;
}

.find-id-name-input {
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
  width: 100%;
  height: 48px;
  padding: 0px 16px;
  background-color: rgba(255, 255, 255, 1);
  border: 1px solid rgba(209, 213, 219, 1);
  border-radius: 8px;
  box-sizing: border-box;
}

.find-id-name-input input::placeholder {
  color: rgba(156, 163, 175, 1);
}

.find-id-name-input input:focus {
  outline: none;
}

.find-id-name-input:focus-within {
  border-color: rgba(59, 130, 246, 1);
}

.find-id-submit-button {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 0px 15.999999046325684px 0px 15.999999046325684px;
  flex-grow: 0;
  flex-shrink: 1;
  width: 100%;
  background-color: rgba(59, 130, 246, 1);
  border-radius: 5.999999046325684px;
  height: 40px;
  border: none;
  cursor: pointer;
}

.find-id-submit-button:hover {
  background-color: rgba(37, 99, 235, 1);
}

.login-links-frame {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 12px;
  width: 100%;
  height: 20px;
  flex-shrink: 0;
}

.login-link {
  font-family: var(--font-family-inter);
  font-weight: 600;
  font-size: 13.999998092651367px;
  line-height: 16.799997329711914px;
  color: rgba(136, 136, 136, 1);
  text-decoration: none;
}

.login-link:hover {
  text-decoration: underline;
}

.login-link-divider {
  width: 0px;
  height: 20px;
  border-left: 1px solid rgba(136, 136, 136, 1);
}

/* Find ID Success Modal Styles */
.find-id-success-modal-content {
  width: 480px;
  min-height: 388px;
  border-radius: 20px;
  border: 1px solid rgba(226, 232, 240, 1);
  display: flex;
  flex-direction: column;
  position: relative;
  background-color: #ffffff;
}

.find-id-success-header-content {
  width: 100%;
  padding: 0px 40px 0px 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  box-sizing: border-box;
}


.find-id-success-content {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
  gap: 20px;
}

.find-id-success-info-section {
  background-color: rgba(248, 249, 250, 1);
  border-radius: 8px;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.find-id-success-alert-icon {
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.find-id-success-title {
  font-family: var(--font-family-inter);
  font-weight: 600;
  font-size: 14px;
  line-height: 16.799999237060547px;
  color: rgba(17, 24, 39, 1);
  margin: 0;
}

.find-id-success-message {
  font-family: var(--font-family-inter);
  font-weight: 400;
  font-size: 13px;
  line-height: 18.200000762939453px;
  color: rgba(107, 114, 128, 1);
  margin: 0;
  white-space: pre-line;
}

#find-id-result {
  font-weight: 600;
  color: rgba(17, 24, 39, 1);
}

.find-id-success-contact-info {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.find-id-success-contact-title {
  font-family: var(--font-family-inter);
  font-weight: 600;
  font-size: 14px;
  line-height: 16.799999237060547px;
  color: rgba(17, 24, 39, 1);
  margin: 0;
}

.find-id-success-phone-frame {
  background-color: rgba(243, 244, 246, 1);
  border-radius: 8px;
  padding: 12px 16px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 12px;
}

.find-id-success-phone-icon {
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.find-id-success-phone-number {
  font-family: var(--font-family-inter);
  font-weight: 600;
  font-size: 16px;
  line-height: 19.200000762939453px;
  color: rgba(17, 24, 39, 1);
  margin: 0;
}

.find-id-success-hours {
  font-family: var(--font-family-inter);
  font-weight: 400;
  font-size: 12px;
  line-height: 14.399999618530273px;
  color: rgba(17, 24, 39, 1);
  text-align: center;
  margin: 0;
}

.find-id-success-close-button {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 0px 15.999999046325684px 0px 15.999999046325684px;
  flex-grow: 0;
  flex-shrink: 1;
  width: 100%;
  background-color: rgba(59, 130, 246, 1);
  border-radius: 8px;
  height: 44px;
  border: none;
  cursor: pointer;
}

.find-id-success-close-button:hover {
  background-color: rgba(37, 99, 235, 1);
}

/* Reset Password Modal Styles */
.reset-password-modal-content {
  width: 480px;
  min-height: 388px;
  border-radius: 20px;
  border: 1px solid rgba(226, 232, 240, 1);
  display: flex;
  flex-direction: column;
  position: relative;
  background-color: #ffffff;
}

.reset-password-header-content {
  width: 100%;
  padding: 0px 40px 0px 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  box-sizing: border-box;
}

.reset-password-logo-section {
  display: flex;
  justify-content: center;
  text-align: center;
  margin-bottom: 20px;
}

.reset-password-content {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
  gap: 20px;
}

.reset-password-info-section {
  background-color: rgba(248, 249, 250, 1);
  border-radius: 8px;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.reset-password-lock-icon {
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.reset-password-title {
  font-family: var(--font-family-inter);
  font-weight: 600;
  font-size: 14px;
  line-height: 16.799999237060547px;
  color: rgba(17, 24, 39, 1);
  margin: 0;
}

.reset-password-message {
  font-family: var(--font-family-inter);
  font-weight: 400;
  font-size: 13px;
  line-height: 18.200000762939453px;
  color: rgba(107, 114, 128, 1);
  margin: 0;
  white-space: pre-line;
}

.reset-password-contact-info {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.reset-password-contact-title {
  font-family: var(--font-family-inter);
  font-weight: 600;
  font-size: 14px;
  line-height: 16.799999237060547px;
  color: rgba(17, 24, 39, 1);
  margin: 0;
}

.reset-password-phone-frame {
  background-color: rgba(243, 244, 246, 1);
  border-radius: 8px;
  padding: 12px 16px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 12px;
}

.reset-password-phone-icon {
  width: 20px;
  height: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.reset-password-phone-number {
  font-family: var(--font-family-inter);
  font-weight: 600;
  font-size: 16px;
  line-height: 19.200000762939453px;
  color: rgba(17, 24, 39, 1);
  margin: 0;
}

.reset-password-hours {
  font-family: var(--font-family-inter);
  font-weight: 400;
  font-size: 12px;
  line-height: 14.399999618530273px;
  color: rgba(17, 24, 39, 1);
  text-align: center;
  margin: 0;
}

.reset-password-close-button {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  padding: 0px 15.999999046325684px 0px 15.999999046325684px;
  flex-grow: 0;
  flex-shrink: 1;
  width: 100%;
  background-color: rgba(59, 130, 246, 1);
  border-radius: 8px;
  height: 44px;
  border: none;
  cursor: pointer;
}

.reset-password-close-button:hover {
  background-color: rgba(37, 99, 235, 1);
}

/* MyPage Dropdown Menu Styles */
.mypage-dropdown-container {
  position: absolute;
  top: 100%;
  right: 0;
  margin-top: 8px;
  z-index: 1000;
}

.profile-dropdown-menu {
  width: 200px;
  background-color: #ffffff;
  border: 1px solid rgba(229, 231, 235, 1);
  border-radius: 8px;
  box-shadow: 0px 4px 6px -1px rgba(0, 0, 0, 0.1), 0px 2px 4px -1px rgba(0, 0, 0, 0.06);
}

.dropdown-menu-items {
  display: flex;
  flex-direction: column;
  padding: 8px;
  gap: 0;
}

.dropdown-menu-item {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 10px 8px;
  border-radius: 6px;
  cursor: pointer;
  gap: 12px;
  transition: background-color 0.2s;
}

.dropdown-menu-item:hover {
  background-color: rgba(249, 250, 251, 1);
}

.dropdown-icon {
  width: 18px;
  height: 18px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.dropdown-menu-text {
  font-family: var(--font-family-inter);
  font-weight: 500;
  font-size: 14px;
  line-height: 16.799999237060547px;
  color: rgba(55, 65, 81, 1);
  margin: 0;
  flex-grow: 1;
}

.dropdown-chevron {
  width: 14px;
  height: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.dropdown-divider {
  width: 184px;
  height: 1px;
  background-color: rgba(243, 244, 246, 1);
  margin: 0 8px;
}

/* Signup Page Styles */
.signup-page-container {
  width: 100%;
  min-height: 100vh;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 40px 20px;
}

.signup-agreement-container {
  width: 480px;
  max-width: 100%;
  padding: 48px 24px;
  display: flex;
  flex-direction: column;
  gap: 24px;
  background-color: #ffffff;
  border-radius: 16px;
  border: 1px solid rgba(226, 232, 240, 1);
}

.signup-header-section {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.signup-progress {
  display: flex;
  flex-direction: row;
  gap: 12px;
  align-items: center;
}

.signup-step {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: rgba(226, 232, 240, 1);
}

.signup-step-1 {
  background-color: rgba(59, 130, 246, 1);
}

.signup-title {
  font-family: var(--font-family-inter);
  font-weight: 700;
  font-size: 28px;
  line-height: 33.599998474121094px;
  color: rgba(30, 41, 59, 1);
  margin: 0;
}

.signup-description {
  font-family: var(--font-family-inter);
  font-weight: 500;
  font-size: 20px;
  line-height: 24px;
  color: rgba(107, 114, 128, 1);
  margin: 0;
}

.signup-terms-section {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.signup-select-all {
  background-color: rgba(240, 249, 255, 1);
  border: 1px solid rgba(226, 232, 240, 1);
  border-radius: 8px;
  padding: 16px;
}

.signup-all-check-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.signup-all-check {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 12px;
}

.signup-check {
  width: 20px;
  height: 20px;
  border-radius: 2px;
  border: 2px solid rgba(59, 130, 246, 1);
  background-color: rgba(59, 130, 246, 1);
  cursor: pointer;
  position: relative;
  flex-shrink: 0;
}

.signup-check::after {
  content: '✓';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
  font-size: 14px;
  font-weight: bold;
  display: none;
}

.signup-check.checked::after {
  display: block;
}

.signup-check:not(.checked) {
  background-color: transparent;
}

.signup-all-check-text {
  font-family: var(--font-family-inter);
  font-weight: 600;
  font-size: 16px;
  line-height: 19.200000762939453px;
  color: rgba(55, 65, 81, 1);
  margin: 0;
}

.signup-optional-text {
  font-family: var(--font-family-inter);
  font-weight: 400;
  font-size: 12px;
  line-height: 14.399999618530273px;
  color: rgba(59, 130, 246, 1);
  margin: 0;
}

.signup-terms-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.signup-age-check-row,
.signup-service-row,
.signup-privacy-req-row,
.signup-privacy-opt-row,
.signup-marketing-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.signup-age-check,
.signup-service-check,
.signup-privacy-req-check,
.signup-privacy-opt-check,
.signup-marketing-check {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 12px;
  flex: 1;
}

.signup-service-label,
.signup-privacy-req-label,
.signup-privacy-opt-label,
.signup-marketing-label {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
}

.signup-required-label {
  font-family: var(--font-family-inter);
  font-weight: 600;
  font-size: 14px;
  line-height: 16.799999237060547px;
  color: rgba(239, 68, 68, 1);
}

.signup-optional-label {
  font-family: var(--font-family-inter);
  font-weight: 600;
  font-size: 14px;
  line-height: 16.799999237060547px;
  color: rgba(107, 114, 128, 1);
}

.signup-age-text,
.signup-service-text,
.signup-privacy-req-text,
.signup-privacy-opt-text,
.signup-marketing-text {
  font-family: var(--font-family-inter);
  font-weight: 500;
  font-size: 14px;
  line-height: 16.799999237060547px;
  color: rgba(55, 65, 81, 1);
}

.signup-chevron-right {
  width: 16px;
  height: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.signup-notice-section {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.signup-notice-item {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: flex-start;
}

.signup-bullet {
  font-family: var(--font-family-inter);
  font-weight: 500;
  font-size: 12px;
  line-height: 14.399999618530273px;
  color: rgba(107, 114, 128, 1);
  flex-shrink: 0;
}

.signup-notice-text {
  font-family: var(--font-family-inter);
  font-weight: 400;
  font-size: 12px;
  line-height: 18px;
  color: rgba(107, 114, 128, 1);
  flex: 1;
}

.signup-submit-button {
  width: 100%;
  height: 56px;
  background-color: rgba(156, 163, 175, 1);
  border-radius: 8px;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.2s;
}

.signup-submit-button:not(:disabled) {
  background-color: rgba(59, 130, 246, 1);
  cursor: pointer;
}

.signup-submit-button:disabled {
  cursor: not-allowed;
}

.signup-submit-text {
  font-family: var(--font-family-inter);
  font-weight: 600;
  font-size: 16px;
  line-height: 19.200000762939453px;
  color: rgba(255, 255, 255, 1);
  margin: 0;
}

/* Notification Settings Page Styles */

.signup-progress {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center;
  height: 8px;
}

.signup-step {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #e2e8f0;
}

.signup-step-1 {
  background-color: #10b981;
}

.signup-step-2 {
  background-color: #10b981;
}

.signup-step-3 {
  background-color: #10b981;
}

.signup-step-4 {
  background-color: #3b82f6;
}

.signup-title {
  font-family: var(--font-family-inter);
  font-weight: 700;
  font-size: 28px;
  line-height: 33.6px;
  color: #1e293b;
  margin: 0;
}

.notification-header-section {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.notification-title-section {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.notification-main-title {
  font-family: var(--font-family-inter);
  font-weight: 700;
  font-size: 28px;
  line-height: 33.599998474121094px;
  color: #1e293b;
  margin: 0;
}

.notification-description {
  font-family: var(--font-family-inter);
  font-weight: 500;
  font-size: 20px;
  line-height: 24px;
  color: #6b7280;
  margin: 0;
}

.notification-info-message {
  background-color: rgba(240, 249, 255, 1);
  border: 1px solid rgba(226, 232, 240, 1);
  border-radius: 8px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.notification-info-header {
  display: flex;
  align-items: center;
}

.notification-info-title {
  font-family: var(--font-family-inter);
  font-weight: 600;
  font-size: 14px;
  line-height: 16.799999237060547px;
  color: #1e40af;
  margin: 0;
}

.notification-info-text {
  font-family: var(--font-family-inter);
  font-weight: 400;
  font-size: 14px;
  line-height: 19.600000381469727px;
  color: #1e40af;
  margin: 0;
}

.notification-categories-section {
  display: flex;
  flex-direction: column;
}

.notification-category {
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding: 0;
  background-color: rgba(255, 255, 255, 1);
  border: none;
  border-radius: 0;
}

.notification-category-header {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px;
  background-color: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  height: 52px;
  box-sizing: border-box;
}

.notification-category-check-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 12px;
}

.notification-check {
  width: 16px;
  height: 16px;
  border-radius: 3px;
  border: 1px solid #d1d5db;
  background-color: #ffffff;
  cursor: pointer;
  position: relative;
  flex-shrink: 0;
  transition: background-color 0.2s, border-color 0.2s;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
}

.notification-check::after {
  content: '✓';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: white;
  font-size: 12px;
  font-weight: bold;
  display: none;
}

.notification-check.checked {
  background-color: #3b82f6;
  border-color: #3b82f6;
}

.notification-check.checked::after {
  display: block;
}

.notification-category-title {
  font-family: var(--font-family-inter);
  font-weight: 700;
  font-size: 16px;
  line-height: 19.200000762939453px;
  color: #1e293b;
  margin: 0;
}

.notification-select-actions {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
}

.notification-select-all-btn {
  font-family: var(--font-family-inter);
  font-weight: 500;
  font-size: 12px;
  line-height: 14.399999618530273px;
  color: #3b82f6;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  transition: opacity 0.2s;
}

.notification-deselect-all-btn {
  font-family: var(--font-family-inter);
  font-weight: 500;
  font-size: 12px;
  line-height: 14.399999618530273px;
  color: #6b7280;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  transition: opacity 0.2s;
}

.notification-select-all-btn:hover,
.notification-deselect-all-btn:hover {
  opacity: 0.7;
}

.notification-divider {
  font-family: var(--font-family-inter);
  font-weight: 500;
  font-size: 12px;
  line-height: 14.399999618530273px;
  color: #d1d5db;
}

.notification-items-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  padding: 0 16px 16px 0;
}

.notification-item-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  cursor: pointer;
}

.notification-item-label {
  font-family: var(--font-family-inter);
  font-weight: 500;
  font-size: 14px;
  line-height: 16.799999237060547px;
  color: #374151;
  margin: 0;
  display: flex;
  align-items: center;
}

.notification-save-section {
  display: flex;
  justify-content: center;
  padding-top: 16px;
}

.notification-save-button {
  width: 100%;
  height: 56px;
  background-color: rgba(59, 130, 246, 1);
  border-radius: 8px;
  border: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background-color 0.2s;
}

.notification-save-button:hover {
  background-color: rgba(37, 99, 235, 1);
}

.notification-save-button:disabled {
  background-color: rgba(156, 163, 175, 1);
  cursor: not-allowed;
}

.notification-save-button:disabled:hover {
  background-color: rgba(156, 163, 175, 1);
}

.notification-save-text {
  font-family: var(--font-family-inter);
  font-weight: 600;
  font-size: 16px;
  line-height: 19.200000762939453px;
  color: rgba(255, 255, 255, 1);
  margin: 0;
}

/* 로그인 필요 모달 버튼 hover */
#login-required-login:hover {
  background-color: #2563eb !important;
}

#login-required-close:hover {
  background-color: #e5e7eb !important;
}

