/* Reset & 基础样式，兼容移动端和PC端，补充 iOS/安卓容差处理 */

/* 主题色变量定义 */
:root {
  --primary-color: #188eee;
  --primary-color-light: #40a9ff;
  --primary-color-dark: #096dd9;
  --primary-gradient: linear-gradient(135deg, #188eee 0%, #096dd9 100%);
  --primary-shadow: rgba(24, 142, 238, 0.3);
  --primary-shadow-light: rgba(24, 142, 238, 0.1);
  --primary-shadow-dark: rgba(24, 142, 238, 0.4);
}

/* 1. 通用 Reset */
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;
}

/* 2. HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

/* 3. 列表、表格、图片等 */
ol,
ul {
  list-style: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
img {
  max-width: 100%;
  display: block;
  border: 0;
}

/* 4. 链接、按钮等 */
a {
  color: inherit;
  text-decoration: none;
}
button,
input,
select,
textarea {
  font: inherit;
  outline: none;
  border: none;
  background: none;
  box-shadow: none;
  appearance: none;
}

/* 5. 滚动条美化（可选） */
::-webkit-scrollbar {
  width: 8px;
  background: transparent;
}
::-webkit-scrollbar-thumb {
  background: #e0e0e0;
  border-radius: 4px;
}

/* 6. 移动端/PC端兼容基础样式 */

// 安全区域CSS变量定义
:root {
  --safe-area-top: 0px;
  --safe-area-bottom: 0px;
  --safe-area-left: 0px;
  --safe-area-right: 0px;
  --status-bar-height: 0px;
  --nav-bar-height: 44px;
}

html,
body {
  height: 100%;
  overflow: hidden; // 禁止 body 滚动和回弹
  -webkit-tap-highlight-color: transparent; // 移动端点击无高亮
  -webkit-text-size-adjust: 100%; // 禁止iOS自动调整字体
  text-size-adjust: 100%;
  /* iOS/安卓容差补充 */
  /* 解决 iOS 12+ 及部分安卓机型底部安全区适配 */
  padding-bottom: constant(safe-area-inset-bottom);
  padding-bottom: env(safe-area-inset-bottom);
  /* 解决 iOS 顶部刘海屏安全区 */
  padding-top: constant(safe-area-inset-top);
  padding-top: env(safe-area-inset-top);
}

#root,
.app-content {
  height: 100vh;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch; // iOS 惯性滚动
  /* 安卓部分 WebView 兼容 */
  overscroll-behavior: contain;
}

body {
  font-family:
    -apple-system, BlinkMacSystemFont, "Segoe UI", "Roboto", "Oxygen", "Ubuntu",
    "Cantarell", "Fira Sans", "Droid Sans", "Helvetica Neue", sans-serif;
  background: #f5f5f5;
  color: #222;
  line-height: 1.5;
  /* 安卓部分机型字体抗锯齿 */
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* iOS input、textarea 默认圆角和阴影去除 */
input,
textarea {
  border-radius: 0;
  box-shadow: none;
}

/* 安卓部分 WebView 点击延迟优化 */
body,
input,
textarea,
select,
button {
  touch-action: manipulation;
}

// 导航栏样式
.nav-title {
  font-size: 18px;
  font-weight: 600;
  color: var(--primary-color);
}

// 搜索相关样式
.search-bar {
  display: flex;
  gap: 12px;
  align-items: center;
  padding: 12px;
}

.search-input-wrapper {
  position: relative;
  flex: 1;

  .ant-input {
    border-radius: 8px;
  }
}

.refresh-btn {
  height: 40px;
  width: 40px;
  padding: 0;
  border-radius: 8px;
}

.new-task-btn {
  height: 32px;
  padding: 0 12px;
  border-radius: 6px;
  font-size: 14px;
  display: flex;
  align-items: center;
  gap: 6px;
}
.pagination-container {
  display: flex;
  justify-content: center;
  padding: 14px 0;
  background: white;
  border-radius: 12px;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);

  :global(.ant-pagination) {
    .ant-pagination-item {
      border-radius: 6px;
      border: 1px solid #d9d9d9;

      &:hover {
        border-color: var(--primary-color);
      }

      &.ant-pagination-item-active {
        background: var(--primary-color);
        border-color: var(--primary-color);

        a {
          color: white;
        }
      }
    }

    .ant-pagination-prev,
    .ant-pagination-next {
      border-radius: 6px;
      border: 1px solid #d9d9d9;

      &:hover {
        border-color: var(--primary-color);
        color: var(--primary-color);
      }
    }
  }
}

//底部下一步上一步组合按钮
.footer-btn-group {
  padding: 12px;
  display: flex;
  gap: 8px;
  justify-content: center;
  background-color: #fff;
  .ant-btn {
    flex: 1;
  }
}
