@charset "UTF-8";
/*------------------------------------*\
  # Theme
\*------------------------------------*/
/*------------------------------------*\
  # Colors
\*------------------------------------*/
/** identity 기본 변수 - 부트스트랩 오버라이딩 변수 포함 **/
/** App Identity Variables - New!!, Not Bootstrap variables **/
/** 부트스트랩 기본 z-index **/
/** 부트스트랩 기본 변수 오버라이드 항목 **/
/** 아래는 정리 필요 **/
/** grid **/
/** Link **/
/*------------------------------------*\
  # Colors
\*------------------------------------*/
/*------------------------------------*\
  # Font, Text Custom Variables
\*------------------------------------*/
/*--------------------------------------*\
  # Layout 요소
\*--------------------------------------*/
/*--------------------------------------*\
  #Button Variables, Placeholder, Mixin
\*--------------------------------------*/
/*------------------------------------*\
  #요 아래 친구들은 지울 수 있게 정리하자
\*------------------------------------*/
/** Form **/
/** grid **/
/** space **/
/** padding **/
.image-icon.svelte-1otn7i8 {
  --image-icon-primary: var(--pm-main, #900290);
  --image-icon-primary-rgb: var(--pm-main-rgb, 144, 2, 144);
  --image-icon-primary-contrast: var(--pm-main-contrast, #fff);
  --image-icon-gradient-main: var(
  	--pm-grad-main,
  	linear-gradient(135deg, var(--image-icon-primary), #d946ef)
  );
  --image-icon-bg: linear-gradient(
  	180deg,
  	#ffffff,
  	color-mix(in oklab, #ffffff, var(--image-icon-primary) 5%)
  );
  --image-icon-radius: 999px;
  --image-icon-frame-fill: #ffffff;
  --image-icon-border-width: 1px;
  --image-icon-border: rgb(15 23 42 / 8%);
  --image-icon-frame-shadow: 0 0 #0000;
  --image-icon-shadow: inset 0 1px 0 rgb(255 255 255 / 72%);
  --image-icon-effect-padding: 0.24rem;
  --image-icon-width: 32px;
  --image-icon-height: 32px;
  --image-icon-animation-duration: 2.2s;
  --image-icon-animation-count: infinite;
  --image-icon-animation-direction: normal;
  --image-icon-layer-animation-duration: 2.6s;
  --image-icon-layer-animation-count: infinite;
  --image-icon-layer-animation-direction: normal;
  position: relative;
  box-sizing: border-box;
  display: inline-flex;
  width: var(--image-icon-width);
  height: var(--image-icon-height);
  align-items: center;
  justify-content: center;
  flex: 0 0 auto;
  isolation: isolate;
  overflow: hidden;
  padding: var(--image-icon-padding, 0);
  border: var(--image-icon-border-width) solid var(--image-icon-border);
  border-radius: var(--image-icon-radius);
  color: var(--image-icon-primary);
  background: var(--image-icon-bg);
  box-shadow: var(--image-icon-frame-shadow), var(--image-icon-shadow);
  line-height: 1;
  vertical-align: middle;
  transition: transform 150ms ease, border-color 160ms ease, background 160ms ease, box-shadow 180ms ease, filter 160ms ease, opacity 160ms ease;
}

.image-icon.svelte-1otn7i8::before,
.image-icon.svelte-1otn7i8::after {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  content: "";
  pointer-events: none;
}

.image-icon.svelte-1otn7i8::before {
  z-index: 3;
  opacity: 0;
}

.image-icon.svelte-1otn7i8::after {
  z-index: 2;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.42), transparent 42%), linear-gradient(315deg, transparent 64%, rgba(255, 255, 255, 0.18));
  opacity: 0;
}

.image-icon--shape-circle.svelte-1otn7i8 {
  --image-icon-radius: 999px;
}

.image-icon--shape-rounded.svelte-1otn7i8 {
  --image-icon-radius: 8px;
}

.image-icon--shape-rect.svelte-1otn7i8 {
  --image-icon-radius: 6px;
}

.image-icon--shape-square.svelte-1otn7i8 {
  --image-icon-radius: 4px;
}

.image-icon--surface-plain.svelte-1otn7i8 {
  --image-icon-bg: transparent;
  --image-icon-border: transparent;
  --image-icon-shadow: 0 0 #0000;
}

.image-icon--surface-white.svelte-1otn7i8 {
  --image-icon-bg: linear-gradient(
  	180deg,
  	#ffffff,
  	color-mix(in oklab, #ffffff, var(--image-icon-primary) 5%)
  );
  --image-icon-frame-fill: #ffffff;
  --image-icon-border: rgb(15 23 42 / 8%);
  --image-icon-shadow: inset 0 1px 0 rgb(255 255 255 / 72%);
}

.image-icon--surface-soft.svelte-1otn7i8 {
  --image-icon-bg: linear-gradient(
  	135deg,
  	color-mix(in oklab, var(--image-icon-primary), #ffffff 91%),
  	color-mix(in oklab, var(--image-icon-primary), #ffffff 84%)
  );
  --image-icon-frame-fill: color-mix(in oklab, var(--image-icon-primary), #ffffff 89%);
  --image-icon-border: color-mix(in oklab, var(--image-icon-primary), transparent 78%);
  --image-icon-shadow: inset 0 1px 0 rgb(255 255 255 / 62%);
}

.image-icon--surface-bordered.svelte-1otn7i8 {
  --image-icon-bg: #ffffff;
  --image-icon-frame-fill: #ffffff;
  --image-icon-border: color-mix(in oklab, var(--image-icon-primary), transparent 72%);
  --image-icon-shadow: inset 0 1px 0 rgb(255 255 255 / 72%), 0 6px 16px rgb(15 23 42 / 8%);
}

.image-icon--frame-outline.svelte-1otn7i8 {
  --image-icon-border-width: 1px;
  --image-icon-border: rgb(15 23 42 / 12%);
}

.image-icon--frame-brand-ring.svelte-1otn7i8 {
  --image-icon-border-width: 2px;
  --image-icon-border: color-mix(in oklab, var(--image-icon-primary), #ffffff 22%);
  --image-icon-frame-shadow:
  	0 0 0 3px color-mix(in oklab, var(--image-icon-primary), transparent 90%),
  	0 6px 16px color-mix(in oklab, var(--image-icon-primary), transparent 88%);
}

.image-icon--frame-gradient-ring.svelte-1otn7i8 {
  --image-icon-border-width: 2px;
  border-color: transparent;
  background: linear-gradient(var(--image-icon-frame-fill), var(--image-icon-frame-fill)) padding-box, var(--image-icon-gradient-main) border-box;
  --image-icon-frame-shadow: 0 8px 20px
  	color-mix(in oklab, var(--image-icon-primary), transparent 86%);
}

.image-icon--frame-active-ring.svelte-1otn7i8 {
  --image-icon-border-width: 2px;
  --image-icon-border: color-mix(in oklab, var(--image-icon-primary), #ffffff 16%);
  --image-icon-bg: linear-gradient(
  	135deg,
  	color-mix(in oklab, var(--image-icon-primary), #ffffff 88%),
  	#ffffff
  );
  --image-icon-frame-shadow:
  	0 0 0 2px #ffffff, 0 0 0 5px color-mix(in oklab, var(--image-icon-primary), transparent 78%),
  	0 12px 28px color-mix(in oklab, var(--image-icon-primary), transparent 82%);
}

.image-icon--effect-lift.svelte-1otn7i8 {
  --image-icon-shadow:
  	inset 0 1px 0 rgb(255 255 255 / 68%), 0 10px 24px rgb(15 23 42 / 12%),
  	0 5px 14px color-mix(in oklab, var(--image-icon-primary), transparent 88%);
}

.image-icon--effect-glow.svelte-1otn7i8 {
  --image-icon-border: color-mix(in oklab, var(--image-icon-primary), transparent 64%);
  --image-icon-shadow:
  	inset 0 1px 0 rgb(255 255 255 / 64%),
  	0 0 0 3px color-mix(in oklab, var(--image-icon-primary), transparent 91%),
  	0 10px 28px color-mix(in oklab, var(--image-icon-primary), transparent 76%);
}

.image-icon--effect-glass.svelte-1otn7i8 {
  --image-icon-padding: var(--image-icon-effect-padding);
  --image-icon-border: color-mix(in oklab, var(--image-icon-primary), #ffffff 42%);
  --image-icon-shadow:
  	inset 0 1px 0 rgb(255 255 255 / 36%),
  	0 10px 24px color-mix(in oklab, var(--image-icon-primary), transparent 78%);
}

.image-icon--effect-glass.svelte-1otn7i8 {
  --image-icon-bg:
  	linear-gradient(145deg, rgb(255 255 255 / 74%), rgb(255 255 255 / 28%)),
  	color-mix(in oklab, var(--image-icon-primary), transparent 84%);
  backdrop-filter: blur(8px);
}

.image-icon--effect-glass.svelte-1otn7i8::after {
  opacity: 0.52;
}

.image-icon--effect-lift.svelte-1otn7i8:hover,
.image-icon--effect-glow.svelte-1otn7i8:hover,
.image-icon--effect-glass.svelte-1otn7i8:hover {
  transform: translateY(-1px);
}

.image-icon--animation-pulse.svelte-1otn7i8 {
  animation: svelte-1otn7i8-image-icon-pulse var(--image-icon-animation-duration) ease-in-out var(--image-icon-animation-count) var(--image-icon-animation-direction);
}

.image-icon--animation-breathe.svelte-1otn7i8 {
  animation: svelte-1otn7i8-image-icon-breathe var(--image-icon-animation-duration) ease-in-out var(--image-icon-animation-count) var(--image-icon-animation-direction);
}

.image-icon--animation-float.svelte-1otn7i8 {
  animation: svelte-1otn7i8-image-icon-float var(--image-icon-animation-duration) ease-in-out var(--image-icon-animation-count) var(--image-icon-animation-direction);
}

.image-icon--layer-animation-shimmer.svelte-1otn7i8::before {
  inset: -45%;
  background: linear-gradient(115deg, transparent 34%, rgba(255, 255, 255, 0.68) 50%, transparent 66%);
  transform: translateX(-70%) rotate(8deg);
  animation: svelte-1otn7i8-image-icon-shimmer var(--image-icon-layer-animation-duration) ease-in-out var(--image-icon-layer-animation-count) var(--image-icon-layer-animation-direction);
}

.image-icon--layer-animation-scan.svelte-1otn7i8::before {
  background: linear-gradient(180deg, transparent 0%, rgba(255, 255, 255, 0) 34%, rgba(255, 255, 255, 0.58) 50%, rgba(255, 255, 255, 0) 66%, transparent 100%);
  transform: translateY(-100%);
  animation: svelte-1otn7i8-image-icon-scan var(--image-icon-layer-animation-duration) ease-in-out var(--image-icon-layer-animation-count) var(--image-icon-layer-animation-direction);
}

.image-icon.is-disabled.svelte-1otn7i8 {
  filter: grayscale(1);
  opacity: 0.52;
}

.image-icon__img.svelte-1otn7i8 {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: 100%;
  border-radius: max(2px, var(--image-icon-radius) - 2px);
  object-fit: contain;
  object-position: center;
}

.image-icon--fit-cover.svelte-1otn7i8 .image-icon__img:where(.svelte-1otn7i8) {
  object-fit: cover;
}

.image-icon__fallback-text.svelte-1otn7i8 {
  position: relative;
  z-index: 1;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 0.2em;
  color: currentColor;
  font-size: 0.68em;
  font-weight: 900;
  line-height: 1;
  text-align: center;
}

@keyframes svelte-1otn7i8-image-icon-pulse {
  0%, 100% {
    transform: scale(1);
    filter: drop-shadow(0 0 0 color-mix(in oklab, var(--image-icon-primary), transparent 100%));
  }
  50% {
    transform: scale(1.05);
    filter: drop-shadow(0 0 0.65rem color-mix(in oklab, var(--image-icon-primary), transparent 66%));
  }
}
@keyframes svelte-1otn7i8-image-icon-breathe {
  0%, 100% {
    opacity: 0.86;
    transform: scale(0.98);
  }
  50% {
    opacity: 1;
    transform: scale(1.04);
  }
}
@keyframes svelte-1otn7i8-image-icon-float {
  0%, 100% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-3px);
  }
}
@keyframes svelte-1otn7i8-image-icon-shimmer {
  0% {
    opacity: 0;
    transform: translateX(-72%) rotate(8deg);
  }
  26% {
    opacity: 0.95;
  }
  52%, 100% {
    opacity: 0;
    transform: translateX(72%) rotate(8deg);
  }
}
@keyframes svelte-1otn7i8-image-icon-scan {
  0% {
    opacity: 0;
    transform: translateY(-100%);
  }
  20% {
    opacity: 0.9;
  }
  55%, 100% {
    opacity: 0;
    transform: translateY(100%);
  }
}
@media (prefers-reduced-motion: reduce) {
  .image-icon--animation-pulse.svelte-1otn7i8,
  .image-icon--animation-breathe.svelte-1otn7i8,
  .image-icon--animation-float.svelte-1otn7i8,
  .image-icon--layer-animation-shimmer.svelte-1otn7i8::before,
  .image-icon--layer-animation-scan.svelte-1otn7i8::before {
    animation: none;
  }
}