/* 1. Global Reset & Box Sizing */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
font: inherit;
vertical-align: baseline;
box-sizing: border-box;
font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont,
system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo",
"Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji",
"Segoe UI Symbol", sans-serif;
}
/* 2. HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
display: block;
}
/* 3. HTML & Body Basic */
html {
font-size: 100%;
-webkit-text-size-adjust: 100%;
-ms-text-size-adjust: 100%;
}
body {
line-height: 1;
}
/* 4. List & Quote Style */
ol, ul, li {
list-style: none;
}
blockquote, q {
quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: '';
content: none;
}
/* 5. Table Reset */
table {
border-collapse: collapse;
border-spacing: 0;
}
/* 6. Interaction & Links */
:focus {
outline: 0;
}
a {
text-decoration: none;
color: inherit;
}
a:focus {
outline: thin dotted;
}
a:active, a:hover {
outline: 0;
}
/* 7. Media elements */
img {
max-width: 100%; /* 유동형 레이아웃 대응을 위해 추가 권장 */
border: 0;
-ms-interpolation-mode: bicubic;
}
/* 8. Form Elements Common */
button, input, select, textarea {
font-family: "Pretendard Variable", sans-serif;
font-size: 100%;
font-weight: 400;
margin: 0;
vertical-align: baseline;
}
button, input {
line-height: normal;
}
button, select {
text-transform: none;
}
button {
border: 0;
background: none;
cursor: pointer;
letter-spacing: -0.25px;
}
/* 9. Input & Select Specifics */
select {
background-color: #fff;
appearance: none;
-webkit-appearance: none;
-moz-appearance: none;
}
select::-ms-expand {
display: none; /* IE10, 11 */
}
select::-ms-value {
background: none;
color: #555;
}
input[type="checkbox"],
input[type="radio"] {
box-sizing: border-box;
padding: 0;
}
input[type="search"] {
-webkit-appearance: textfield;
box-sizing: content-box;
}
/* 10. Textarea Style */
textarea {
overflow: auto;
vertical-align: top;
resize: vertical;
border: 1px solid #ccc;
border-radius: 5px;
padding: 5px;
min-height: 20px;
}
textarea:focus {
border: 1px solid #0388d2;
}
/* 11. Disabled State */
button[disabled],
html input[disabled] {
cursor: default;
background-color: #f5f7fa;
color: #aaa;
text-align: center;
}
/* 12. Misc */
[hidden] {
display: none;
}
button::-moz-focus-inner,
input::-moz-focus-inner {
border: 0;
padding: 0;
}