/**
 * 后台内容区 UI（全局）
 * - 不含顶栏 / 侧栏 / skin 皮肤
 * - 按钮颜色沿用 FastAdmin / Bootstrap，不在此覆盖语义色
 * - 弹窗内输入框直角；卡片等仅轻微圆角；禁止全圆/胶囊
 */

:root {
  --pd-bg: #f3f4f6;
  --pd-card: #ffffff;
  --pd-line: #e5e7eb;
  --pd-line-soft: #f3f4f6;
  --pd-text: #1f2937;
  --pd-muted: #6b7280;
  --pd-radius: 6px;
  --pd-radius-sm: 4px;
}

/* ---------- 内容区背景（不动 header / sidebar） ---------- */
.content-wrapper,
.content-wrapper > .content {
  background: var(--pd-bg) !important;
}
body.is-dialog {
  background: #f9fafb !important;
  color: var(--pd-text);
}

/* ---------- 面板 / 卡片：轻微圆角 ---------- */
.content-wrapper .panel,
.content-wrapper .box,
.content-wrapper .panel-intro,
body.is-dialog .panel,
body.is-dialog .box {
  border: 1px solid var(--pd-line) !important;
  border-radius: var(--pd-radius) !important;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04) !important;
  background: var(--pd-card);
  overflow: hidden;
}

.content-wrapper .panel-intro > .panel-heading,
.content-wrapper .panel > .panel-heading,
.content-wrapper .box > .box-header {
  background: #fff !important;
  border-bottom: 1px solid var(--pd-line) !important;
  padding-top: 12px;
  padding-bottom: 10px;
}

.content-wrapper .panel-intro .nav-tabs {
  border-bottom: none;
}
.content-wrapper .panel-intro .nav-tabs > li > a {
  border: 1px solid transparent !important;
  border-radius: var(--pd-radius-sm) !important;
  color: var(--pd-muted);
  padding: 7px 14px;
  margin-right: 4px;
  font-weight: 500;
}
.content-wrapper .panel-intro .nav-tabs > li.active > a,
.content-wrapper .panel-intro .nav-tabs > li.active > a:hover,
.content-wrapper .panel-intro .nav-tabs > li.active > a:focus {
  background: #fff !important;
  border-color: var(--pd-line) !important;
  border-bottom-color: #fff !important;
  color: var(--pd-text) !important;
  font-weight: 600;
}
.content-wrapper .panel-intro .nav-tabs > li > a:hover {
  background: #f9fafb !important;
  color: var(--pd-text) !important;
}

/* ---------- 按钮：不改颜色，仅整理形状与间距 ---------- */
.content-wrapper .btn,
body.is-dialog .btn,
.layui-layer .btn {
  border-radius: var(--pd-radius-sm) !important;
  font-weight: 500;
  box-shadow: none !important;
  transition: background-color .15s ease, border-color .15s ease, color .15s ease;
}
.content-wrapper .btn:hover,
body.is-dialog .btn:hover,
.layui-layer .btn:hover {
  transform: none;
}
.content-wrapper .btn .fa,
body.is-dialog .btn .fa {
  margin-right: 2px;
}
/* 纯图标操作钮去掉右边距 */
.content-wrapper .btn-editone .fa,
.content-wrapper .btn-delone .fa,
.content-wrapper .btn-change .fa,
.content-wrapper .btn-dragsort .fa,
.content-wrapper td[data-field="operate"] .btn .fa,
.content-wrapper td.operate .btn .fa,
body.is-dialog .btn-editone .fa,
body.is-dialog .btn-delone .fa {
  margin-right: 0 !important;
}

.content-wrapper .toolbar .btn,
.content-wrapper .bs-bars .btn,
.content-wrapper .fixed-table-toolbar .btn {
  min-height: 32px;
  padding: 5px 12px;
  font-size: 13px;
  margin-right: 6px;
}

.content-wrapper .layer-footer .btn,
body.is-dialog .layer-footer .btn,
.layui-layer .layer-footer .btn {
  min-width: 96px;
  height: 36px;
}

/* ---------- 表单 ---------- */
.content-wrapper form.form-horizontal,
body.is-dialog form.form-horizontal {
  padding: 6px 4px 4px;
}
.content-wrapper form.form-horizontal .form-group,
body.is-dialog form.form-horizontal .form-group {
  margin-left: 0;
  margin-right: 0;
  margin-bottom: 14px;
}
.content-wrapper form.form-horizontal .control-label,
body.is-dialog form.form-horizontal .control-label {
  color: var(--pd-muted);
  font-weight: 500;
  padding-top: 8px;
}

/* 页面内输入框：轻微圆角 */
.content-wrapper .form-control,
.content-wrapper .selectpage,
.content-wrapper .sp_input,
.content-wrapper .bootstrap-select .btn,
.content-wrapper .city-picker-input {
  border-radius: var(--pd-radius-sm) !important;
  border-color: #d1d5db !important;
  box-shadow: none !important;
  height: 34px;
  padding: 6px 10px;
  transition: border-color .15s ease, box-shadow .15s ease;
}
.content-wrapper textarea.form-control {
  height: auto;
  min-height: 84px;
}
.content-wrapper .form-control:focus {
  border-color: #93c5fd !important;
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.15) !important;
}

/* 弹窗内输入框：直角（无弧度） */
.layui-layer .form-control,
.layui-layer .selectpage,
.layui-layer .sp_input,
.layui-layer .bootstrap-select .btn,
.layui-layer .city-picker-input,
.layui-layer .city-picker-span,
body.is-dialog .form-control,
body.is-dialog .selectpage,
body.is-dialog .sp_input,
body.is-dialog .bootstrap-select .btn,
body.is-dialog .city-picker-input,
body.is-dialog .city-picker-span,
body.is-dialog textarea.form-control {
  border-radius: 0 !important;
}
body.is-dialog .form-control,
.layui-layer .form-control {
  border-color: #d1d5db !important;
  box-shadow: none !important;
  height: 34px;
  padding: 6px 10px;
}
body.is-dialog textarea.form-control,
.layui-layer textarea.form-control {
  height: auto;
  min-height: 84px;
}
body.is-dialog .form-control:focus,
.layui-layer .form-control:focus {
  border-color: #93c5fd !important;
  box-shadow: 0 0 0 2px rgba(59, 130, 246, 0.12) !important;
}

/* 校验提示：固定在输入框下方 */
.n-bootstrap .msg-box.n-bottom,
.n-bootstrap span.msg-box.n-bottom {
  display: block !important;
  width: 100%;
  margin: 6px 0 0;
  line-height: 1.4;
  position: static !important;
  left: auto !important;
  top: auto !important;
  text-align: left !important;
}
.n-bootstrap .n-bottom .msg-wrap,
.n-bootstrap .msg-box.n-bottom .msg-wrap {
  position: static !important;
  margin: 0 !important;
  top: auto !important;
  white-space: normal;
}
.n-bootstrap .n-bottom .n-arrow {
  display: none !important;
}
.n-bootstrap .n-bottom .n-error,
.n-bootstrap .n-bottom .n-ok,
.n-bootstrap .n-bottom .n-tip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 3px 8px;
  border-radius: var(--pd-radius-sm);
  font-size: 12px;
  font-weight: 500;
}
.n-bootstrap .n-bottom .n-error {
  color: #b91c1c;
  background: #fef2f2;
}
.n-bootstrap .n-bottom .n-ok {
  color: #047857;
  background: #ecfdf5;
}

.layer-footer {
  background: #fafafa !important;
  border-top: 1px solid var(--pd-line);
  padding: 12px 16px !important;
  margin: 0 !important;
}

/* ---------- 弹层外壳：轻微圆角 ---------- */
.layui-layer-page .layui-layer-content,
.layui-layer-iframe iframe {
  background: #f9fafb !important;
}
.layui-layer-title {
  background: #fff !important;
  color: var(--pd-text) !important;
  border-bottom: 1px solid var(--pd-line) !important;
  height: 44px !important;
  line-height: 44px !important;
  font-weight: 600 !important;
  font-size: 14px !important;
  padding-left: 16px !important;
}
.layui-layer-setwin .layui-layer-close1 {
  background-position: 1px -40px;
}
.layui-layer {
  border-radius: var(--pd-radius) !important;
  overflow: hidden;
  box-shadow: 0 12px 40px rgba(15, 23, 42, 0.18) !important;
  border: 1px solid var(--pd-line);
}

/* ---------- 列表 / 表格 ---------- */
.content-wrapper .bootstrap-table .fixed-table-toolbar {
  padding: 4px 2px 8px;
}
.content-wrapper .bootstrap-table .fixed-table-toolbar .bs-bars,
.content-wrapper .bootstrap-table .fixed-table-toolbar .search,
.content-wrapper .bootstrap-table .fixed-table-toolbar .columns {
  margin-top: 6px;
  margin-bottom: 6px;
}
.content-wrapper .bootstrap-table .fixed-table-toolbar .search input {
  border-radius: var(--pd-radius-sm) !important;
  border: 1px solid #d1d5db;
  padding-left: 12px;
  box-shadow: none;
  height: 32px;
}
.content-wrapper .bootstrap-table .fixed-table-container {
  border: 1px solid var(--pd-line) !important;
  border-radius: var(--pd-radius) !important;
  overflow: hidden;
  background: #fff;
}
.content-wrapper .bootstrap-table .table,
.content-wrapper .table-bordered {
  border: none !important;
}
.content-wrapper .bootstrap-table .table > thead > tr > th,
.content-wrapper .table > thead > tr > th {
  background: #fafafa !important;
  border-bottom: 1px solid var(--pd-line) !important;
  border-top: none !important;
  color: var(--pd-muted);
  font-weight: 600;
  white-space: nowrap;
  padding: 10px 12px !important;
  font-size: 13px;
}
.content-wrapper .bootstrap-table .table > tbody > tr > td,
.content-wrapper .table > tbody > tr > td {
  border-color: var(--pd-line-soft) !important;
  vertical-align: middle !important;
  padding: 10px 12px !important;
  color: var(--pd-text);
  font-size: 13px;
}
.content-wrapper .bootstrap-table .table-striped > tbody > tr:nth-of-type(odd) {
  background: #fff;
}
.content-wrapper .bootstrap-table .table > tbody > tr:hover {
  background: #f9fafb !important;
}
.content-wrapper .bootstrap-table .fixed-table-pagination {
  padding: 10px 4px 4px;
}
.content-wrapper .bootstrap-table .pagination > li > a,
.content-wrapper .bootstrap-table .pagination > li > span {
  border-radius: var(--pd-radius-sm) !important;
  margin: 0 2px;
  border-color: var(--pd-line) !important;
  color: var(--pd-muted);
}
/* 分页激活态沿用 Bootstrap primary，不自定义品牌色 */

.content-wrapper .label {
  border-radius: 3px !important;
  font-weight: 500;
  padding: 3px 8px;
}

.content-wrapper .commonsearch-table,
.content-wrapper .form-commonsearch {
  background: #fff;
  border-radius: var(--pd-radius);
  padding: 12px 14px 4px;
  margin-bottom: 12px;
  border: 1px solid var(--pd-line);
  box-shadow: none;
}
.content-wrapper .commonsearch-table .form-group {
  margin-bottom: 10px;
}
.content-wrapper .commonsearch-table .control-label {
  font-weight: 500;
  color: var(--pd-muted);
}

/* 操作列居中 */
.content-wrapper .bootstrap-table .fixed-table-container table thead th[data-field="operate"],
.content-wrapper .bootstrap-table .fixed-table-container table tbody td[data-field="operate"],
.content-wrapper .bootstrap-table table thead th.operate,
.content-wrapper .bootstrap-table table tbody td.operate {
  text-align: center !important;
}
.content-wrapper .bootstrap-table .table > tbody > tr > td[data-field="operate"] > *,
.content-wrapper .bootstrap-table .table > tbody > tr > td.operate > * {
  float: none !important;
}
.content-wrapper .bootstrap-table .table > tbody > tr > td[data-field="operate"] .btn,
.content-wrapper .bootstrap-table .table > tbody > tr > td.operate .btn {
  float: none !important;
  display: inline-block;
  margin: 0 2px;
  vertical-align: middle;
}

/* ---------- 控制台卡片：轻微圆角 ---------- */
.content-wrapper .sm-st {
  border-radius: var(--pd-radius) !important;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
  border: 1px solid var(--pd-line);
  transition: none;
}
.content-wrapper .sm-st:hover {
  transform: none;
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
}
.content-wrapper .sm-st-icon {
  border-radius: var(--pd-radius-sm) !important;
}
.content-wrapper #echart,
.content-wrapper .card.sameheight-item {
  background: #fff;
  border-radius: var(--pd-radius);
  box-shadow: 0 1px 2px rgba(15, 23, 42, 0.04);
  border: 1px solid var(--pd-line);
  padding: 8px;
}

/* 拼豆表单分区（页面内已有 pd-form 时统一圆角尺度） */
.content-wrapper .pd-form .pd-sec,
body.is-dialog .pd-form .pd-sec {
  border-radius: var(--pd-radius);
}
body.is-dialog .pd-form .form-control,
body.is-dialog .pd-form .sp_input,
body.is-dialog .pd-form .bootstrap-select .btn {
  border-radius: 0 !important;
}
