@font-face {
    font-family: 'MaruBuri';
    src:
      url('https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-ExtraLight.woff2') format('woff2'),
      url('https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-ExtraLight.woff') format('woff');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
  }
  @font-face {
    font-family: 'MaruBuri';
    src:
      url('https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Light.woff2') format('woff2'),
      url('https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Light.woff') format('woff');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
  }
  @font-face {
    font-family: 'MaruBuri';
    src:
      url('https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.woff2') format('woff2'),
      url('https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Regular.woff') format('woff');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
  }
  @font-face {
    font-family: 'MaruBuri';
    src:
      url('https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-SemiBold.woff2') format('woff2'),
      url('https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-SemiBold.woff') format('woff');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
  }
  @font-face {
    font-family: 'MaruBuri';
    src:
      url('https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Bold.woff2') format('woff2'),
      url('https://hangeul.pstatic.net/hangeul_static/webfont/MaruBuri/MaruBuri-Bold.woff') format('woff');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
  }

:root {
  --black: #1a1a1a;  
  --gray-600: #666666;
}

/* 클릭 시 하이라이트 효과 제거 */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Pretendard Variable', sans-serif;
    text-decoration: none;
    list-style: none;
    border: none;
    outline: none;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

/* 포커스 아웃라인 스타일 재정의 */
*:focus {
    outline: none;
}

/* 필요한 경우에만 텍스트 선택 가능하도록 예외 처리 */
input, textarea {
    -webkit-user-select: text;
    -moz-user-select: text;
    -ms-user-select: text;
    user-select: text;
}

/* 텍스트 요소에만 기본 색상 적용 */
p, h1, h2, h3, h4, h5, h6, span, a, label, input, textarea {
    color: var(--black);
}

html {
    /* 스크롤바 항상 표시 */
    overflow-y: scroll;
}

html, body {
    height: 100%;
    font-size: 16px;
    line-height: 1.5;
}

body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

main {
    flex: 1;
}

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

input, button, select, textarea {
    background-color: transparent;
    font: inherit;
}

button {
    cursor: pointer;
}

a {
    color: inherit;
    cursor: pointer;
}

/* 괄호 아이콘 회전 */
[data-svg="icons/icon-parenthesis"].end svg {
    transform: rotate(180deg);
}