/* Impeccable admin design layer (v20260415-1) */
:root {
  --imp-bg-page: #f5f7fb;
  --imp-bg-surface: #ffffff;
  --imp-bg-surface-soft: #f8fafc;
  --imp-text-main: #10223d;
  --imp-text-sub: #5f728f;
  --imp-line: #dde5ef;
  --imp-primary: #14b8a6;
  --imp-primary-soft: rgba(20, 184, 166, 0.16);
  --imp-sidebar-bg: #091733;
  --imp-sidebar-bg-soft: #112248;
}

html,
body {
  color: var(--imp-text-main);
  background: var(--imp-bg-page) !important;
  font-family: "PingFang SC", "Noto Sans SC", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;
}

body.layui-layout-body,
.layui-native-shell,
.layui-standard-main {
  background: var(--imp-bg-page) !important;
}

.layui-native-sidebar,
aside {
  background: linear-gradient(180deg, var(--imp-sidebar-bg-soft) 0%, var(--imp-sidebar-bg) 52%) !important;
}

.layui-native-sidebar .layui-side-scroll {
  border-right: 1px solid #ffffff;
}

.layui-native-sidebar .p-6.flex.items-center {
  position: relative;
  padding: 16px 16px 14px !important;
  gap: 10px !important;
}

.layui-native-sidebar .p-6.flex.items-center .iconify.text-orange-500 {
  color: #fb923c !important;
  font-size: 24px !important;
}

.layui-native-sidebar .brand-text,
.layui-native-sidebar .p-6.flex.items-center .text-xl.font-bold {
  white-space: nowrap;
  font-size: 20px !important;
  line-height: 1.2;
  color: #eff6ff !important;
  font-weight: 700;
  letter-spacing: 0.02em;
  padding-right: 8px;
  min-width: 0;
  flex: 1 1 auto;
  overflow: hidden;
  text-overflow: ellipsis;
}

.layui-native-sidebar #sidebar-nav-host {
  padding-bottom: 8px;
}

.layui-native-sidebar #sidebar-nav-host .layui-nav-item > a {
  border-radius: 8px;
}

.layui-native-sidebar #sidebar-nav-host .layui-nav-item.layui-this > a {
  background: var(--imp-primary-soft) !important;
  border: 1px solid rgba(20, 184, 166, 0.45) !important;
  color: #e6fffb !important;
}

.layui-native-sidebar #sidebar-nav-host .layui-nav-item-group {
  color: #8ea4c0 !important;
  font-size: 12px !important;
  font-weight: 700;
}

.layui-native-sidebar .p-4.mt-auto.border-t {
  border-top: 1px solid rgba(133, 153, 187, 0.22) !important;
}

.layui-native-body {
  background: var(--imp-bg-page) !important;
}

main > header,
.layui-body > header,
.layui-native-body > header {
  min-height: 62px !important;
  height: 62px !important;
  padding: 0 22px !important;
  border-bottom: 1px solid var(--imp-line) !important;
  background: rgba(255, 255, 255, 0.94) !important;
}

main > section,
.layui-body > section,
.layui-native-body > section {
  margin: 0 !important;
  padding: 0 !important;
}

main > section > *,
.layui-body > section > *,
.layui-native-body > section > * {
  border-radius: 0 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

main > section > * + *,
.layui-body > section > * + *,
.layui-native-body > section > * + * {
  border-top: 1px solid var(--imp-line) !important;
}

.layui-standard-card,
.layui-native-card {
  border-radius: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
  background: var(--imp-bg-surface) !important;
}

.layui-native-card + .layui-native-card {
  border-top: 1px solid var(--imp-line) !important;
}

[class*="shadow-sm"],
[class*="shadow-md"],
[class*="shadow-lg"],
[class*="shadow-xl"] {
  box-shadow: none !important;
}

[class*="rounded-2xl"],
[class*="rounded-xl"],
[class*="rounded-lg"] {
  border-radius: 12px !important;
}

main table,
.layui-table,
main .overflow-x-auto table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0;
  background: var(--imp-bg-surface);
}

main thead,
main thead tr,
main .bg-gray-50,
main .bg-slate-50 {
  background: var(--imp-bg-surface-soft) !important;
}

main th,
main td,
.layui-table th,
.layui-table td {
  border-bottom: 1px solid var(--imp-line) !important;
}

main th,
.layui-table th {
  color: #5d708b !important;
  font-weight: 700;
}

main tr:hover td,
.layui-table tr:hover td {
  background: #f9fbff !important;
}

input[type="text"],
input[type="search"],
input[type="number"],
input[type="password"],
input[type="date"],
input[type="datetime-local"],
input[type="email"],
select,
textarea,
.layui-input,
.layui-select,
.layui-textarea {
  border: 1px solid var(--imp-line) !important;
  background: #fff !important;
  border-radius: 10px !important;
  color: var(--imp-text-main) !important;
}

input:focus,
select:focus,
textarea:focus,
.layui-input:focus,
.layui-textarea:focus {
  border-color: rgba(20, 184, 166, 0.66) !important;
  box-shadow: 0 0 0 3px rgba(20, 184, 166, 0.12) !important;
  outline: none !important;
}

button,
.layui-btn,
a.layui-btn {
  border-radius: 10px !important;
}

.layui-btn,
.layui-btn-normal {
  background: var(--imp-primary) !important;
  border-color: var(--imp-primary) !important;
}

.layui-btn:hover,
.layui-btn-normal:hover {
  background: #0ea796 !important;
  border-color: #0ea796 !important;
  box-shadow: none !important;
  transform: none !important;
}

.layui-btn-primary {
  border-color: var(--imp-line) !important;
  color: var(--imp-text-main) !important;
  background: #fff !important;
}

.layui-badge,
[class*="rounded-full"] {
  border-radius: 999px !important;
}

/* Workbench tabs */
.workbench-tabbar {
  background: var(--imp-bg-surface) !important;
  border-bottom: 1px solid var(--imp-line) !important;
}

#workbench-tabs .wb-tab {
  background: transparent !important;
  border-right: 1px solid var(--imp-line) !important;
  border-bottom: 2px solid transparent !important;
  color: #5d708b !important;
}

#workbench-tabs .wb-tab.active {
  background: var(--imp-bg-surface) !important;
  color: var(--imp-text-main) !important;
  border-bottom-color: var(--imp-primary) !important;
}

#workbench-tabs .wb-tab:hover {
  background: #f7fafc !important;
}

/* Login page refinement */
body:has(#login-form) {
  background: radial-gradient(circle at top right, rgba(20, 184, 166, 0.08), transparent 48%), #f3f6fb !important;
}

#login-form + .mt-8 {
  border-top-color: var(--imp-line) !important;
}

@media (max-width: 1024px) {
  .layui-native-sidebar {
    width: 240px !important;
  }
  .layui-native-sidebar .layui-side-scroll {
    width: 240px;
  }
  .layui-native-body {
    left: 240px !important;
    width: calc(100% - 240px) !important;
  }
}
