/* CSS Reset */

/* 设置全局盒模型 */
*, *::before, *::after {
    box-sizing: border-box;
}

/* CSS 重置 - 确保跨浏览器的一致性 */

/* 使用箱模型的标准模式 */
*,
*::before,
*::after {
    box-sizing: border-box;
}

/* 移除所有元素的默认外边距 */
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;
    vertical-align: baseline;
}

/* HTML5显示定义 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
    display: block;
}

/* 设置文档根元素字体大小为全局定义，便于rem单位使用 */
html {
    font-size: 16px;
    scroll-behavior: smooth;
}

/* 设置body默认行高 */
body {
    line-height: 1.5;
    min-height: 100vh;
}

/* 设置ol、ul列表样式 */
ol,
ul {
    list-style: none;
}

/* 引用样式重置 */
blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

/* 表格边框合并，确保单元格边框和间距保持一致 */
table {
    border-collapse: collapse;
    border-spacing: 0;
}

/* 图片默认为块级元素，并且不允许超出其容器 */
img {
    display: block;
    max-width: 100%;
    height: auto;
}

/* 确保textarea只能垂直调整大小 */
textarea {
    resize: vertical;
}

/* 设置按钮和输入框的默认样式 */
button,
input,
select,
textarea {
    font: inherit;
    color: inherit;
}

/* 确保按钮具有手型光标 */
button {
    cursor: pointer;
    background-color: transparent;
    border: none;
}

button:disabled {
    cursor: not-allowed;
}

/* 移除表单元素的默认外观 */
input[type="text"],
input[type="email"],
input[type="password"],
input[type="number"],
input[type="tel"],
input[type="url"],
input[type="search"],
input[type="date"],
textarea,
select {
    appearance: none;
}

/* 移除链接的默认样式 */
a {
    text-decoration: none;
    color: inherit;
}

/* 添加平滑滚动效果 */
@media (prefers-reduced-motion: no-preference) {
    :root {
        scroll-behavior: smooth;
    }
}

/* 更好的文本选择样式 */
::selection {
    background-color: rgba(52, 144, 220, 0.2);
    color: currentColor;
}

/* 默认的焦点样式 */
:focus {
    outline: none;
}

:focus-visible {
    outline: 2px solid var(--primary-brand);
    outline-offset: 2px;
}

/* 禁用用户缩放时的内容调整 */
@viewport {
    width: device-width;
    zoom: 1.0;
}

/* 修复音频和视频元素的问题 */
audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle;
}

/* 确保SVG具有正确的默认显示 */
svg:not(:root) {
    overflow: hidden;
}

/* 移除锚点链接的默认焦点外观 */
a:active,
a:hover {
    outline: 0;
}

/* 去除iOS点击元素产生的半透明灰色背景 */
a,
button,
input,
select,
textarea {
    -webkit-tap-highlight-color: transparent;
}

/* 修复表单元素字体大小不一致的问题 */
button,
input,
select,
textarea {
    font-size: 100%;
    margin: 0;
    vertical-align: baseline;
}

/* 修复Firefox内部边距问题 */
button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

/* 设置默认的垂直滚动条 */
html {
    overflow-y: scroll;
}

/* Basic Reset & Body Defaults */
*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    font-size: var(--font-size-base);
    line-height: var(--line-height-normal);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

body {
    font-family: var(--font-family-sans);
    color: var(--neutral-text-secondary);
    background-color: var(--primary-background);
    min-height: 100vh;
    display: flex;
    flex-direction: column;
} 