@charset "UTF-8";

/**
 * EQNET 2.0 - CSS Reset
 * 브라우저 기본 스타일 초기화
 *
 * Note: Pretendard 웹폰트는 CDN을 통해 로드됨
 * @see index.php - Pretendard CDN Link
 */

/* CSS 초기화 */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var, b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    background: transparent;
}

/* HTML5 display-role reset */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
    display: block;
}

/* 기본 body 스타일 */
body {
    font-family: 'Pretendard', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Helvetica', 'Arial', sans-serif;
    font-size: 16px;
    line-height: 1.6;
    color: #1c1c1b;
    background-color: #fff;
    text-shadow: none;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* 리스트 초기화 */
nav ul, nav li, ul, ol, li {
    list-style: none;
}

/* 링크 초기화 */
a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    text-decoration: none;
    background: transparent;
    color: inherit;
    cursor: pointer;
}

a:hover, a:focus {
    text-decoration: none;
    outline: none;
}

/* 이미지 */
img {
    max-width: 100%;
    height: auto;
    vertical-align: middle;
    border: none;
}

/* 테이블 */
table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
}

/* 폼 요소 */
input, button, select, textarea {
    margin: 0;
    padding: 0;
    font-family: inherit;
    font-size: 100%;
    border: none;
    outline: none;
}

input[type="text"],
input[type="password"],
input[type="email"],
input[type="number"],
input[type="tel"],
input[type="url"],
input[type="search"],
select,
textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-radius: 0;
}

button {
    cursor: pointer;
    background: none;
    border: none;
}

/* 플레이스홀더 스타일 */
input::placeholder,
textarea::placeholder {
    color: #828991;
    opacity: 1;
}

input::-moz-placeholder,
textarea::-moz-placeholder {
    color: #828991;
    opacity: 1;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    color: #828991;
    opacity: 1;
}

/* 박스 사이징 */
* {
    box-sizing: border-box;
}

*:before,
*:after {
    box-sizing: border-box;
}

/* 선택 영역 스타일 */
::selection {
    background: #e2ecff;
    color: #1c1c1b;
}

::-moz-selection {
    background: #e2ecff;
    color: #1c1c1b;
}

/* 스크롤바 스타일 (Webkit 브라우저) */
::-webkit-scrollbar {
    width: 10px;
    height: 10px;
}

::-webkit-scrollbar-track {
    background: #f7f7f8;
}

::-webkit-scrollbar-thumb {
    background: #c0c5ca;
    border-radius: 5px;
}

::-webkit-scrollbar-thumb:hover {
    background: #828991;
}

/* 포커스 아웃라인 제거 (접근성 고려하여 사용자 정의 스타일 추가) */
:focus-visible {
    outline: 2px solid #1c45a5;
    outline-offset: 2px;
}

/* 기타 초기화 */
hr {
    border: 0;
    border-top: 1px solid #ecedee;
    margin: 20px 0;
}

blockquote, q {
    quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
