body.llmapi-admin-theme {
  --llmapi-bg: #fff8f1;
  --llmapi-bg-strong: #fff3e7;
  --llmapi-surface: rgba(255, 251, 246, 0.96);
  --llmapi-surface-strong: rgba(255, 247, 238, 0.98);
  --llmapi-brand: #d47448;
  --llmapi-brand-deep: #b9603b;
  --llmapi-brand-soft: #f4d9c9;
  --llmapi-border: rgba(193, 133, 94, 0.22);
  --llmapi-text: #2f251f;
  --llmapi-muted: #7b675c;
  --llmapi-shadow: 0 24px 60px rgba(168, 103, 67, 0.12);
  background:
    radial-gradient(circle at top left, rgba(255, 214, 183, 0.42), transparent 30%),
    radial-gradient(circle at top right, rgba(255, 236, 212, 0.78), transparent 34%),
    linear-gradient(180deg, #fffdf9 0%, #fff7ef 100%) !important;
  color: var(--llmapi-text);
  font-family: "Plus Jakarta Sans", "PingFang SC", "Microsoft YaHei", sans-serif;
}

body.llmapi-admin-theme,
body.llmapi-admin-theme #root {
  min-height: 100vh;
}

body.llmapi-route-admin #root,
body.llmapi-route-admin [class*="min-h-screen"] {
  background: transparent !important;
}

body.llmapi-admin-theme a {
  color: var(--llmapi-brand-deep);
}

body.llmapi-admin-theme button,
body.llmapi-admin-theme [role="button"],
body.llmapi-admin-theme a[class] {
  cursor: pointer;
}

body.llmapi-admin-theme main,
body.llmapi-admin-theme main.p-4,
body.llmapi-admin-theme main.p-4.md\:p-6.lg\:p-8,
body.llmapi-admin-theme .p-4.md\:p-6.lg\:p-8:is(main, div, section) {
  background:
    linear-gradient(180deg, rgba(255, 251, 246, 0.9) 0%, rgba(255, 247, 239, 0.88) 100%) !important;
}

body.llmapi-route-admin main {
  border-radius: 28px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72);
}

body.llmapi-admin-theme .bg-white,
body.llmapi-admin-theme .bg-gray-50,
body.llmapi-admin-theme .bg-orange-50,
body.llmapi-admin-theme .bg-primary-50,
body.llmapi-admin-theme .bg-card,
body.llmapi-admin-theme .llmapi-surface-card {
  background: var(--llmapi-surface) !important;
  border-color: var(--llmapi-border) !important;
}

body.llmapi-admin-theme .shadow,
body.llmapi-admin-theme .shadow-sm,
body.llmapi-admin-theme .shadow-md,
body.llmapi-admin-theme .shadow-lg,
body.llmapi-admin-theme .llmapi-surface-card {
  box-shadow: var(--llmapi-shadow) !important;
}

body.llmapi-admin-theme .border,
body.llmapi-admin-theme .border-gray-100,
body.llmapi-admin-theme .border-gray-200,
body.llmapi-admin-theme .border-gray-300,
body.llmapi-admin-theme .border-slate-200,
body.llmapi-admin-theme .border-slate-300,
body.llmapi-admin-theme .border-orange-100,
body.llmapi-admin-theme .border-primary-100 {
  border-color: var(--llmapi-border) !important;
}

body.llmapi-admin-theme .text-gray-900,
body.llmapi-admin-theme .text-slate-900,
body.llmapi-admin-theme .text-foreground,
body.llmapi-admin-theme .text-card-foreground,
body.llmapi-admin-theme .text-primary-foreground,
body.llmapi-admin-theme h1,
body.llmapi-admin-theme h2,
body.llmapi-admin-theme h3,
body.llmapi-admin-theme h4 {
  color: var(--llmapi-text) !important;
}

body.llmapi-admin-theme .text-gray-500,
body.llmapi-admin-theme .text-gray-600,
body.llmapi-admin-theme .text-slate-500,
body.llmapi-admin-theme .text-slate-600,
body.llmapi-admin-theme .text-muted-foreground,
body.llmapi-admin-theme p,
body.llmapi-admin-theme small,
body.llmapi-admin-theme label {
  color: var(--llmapi-muted) !important;
}

body.llmapi-admin-theme .bg-primary,
body.llmapi-admin-theme .bg-primary-500,
body.llmapi-admin-theme .bg-primary-600,
body.llmapi-admin-theme .bg-blue-600,
body.llmapi-admin-theme .bg-blue-500,
body.llmapi-admin-theme .bg-slate-900,
body.llmapi-admin-theme .bg-gray-900,
body.llmapi-admin-theme .bg-black,
body.llmapi-admin-theme .bg-orange-500,
body.llmapi-admin-theme .bg-orange-600,
body.llmapi-admin-theme .btn-primary,
body.llmapi-admin-theme button[type="submit"],
body.llmapi-admin-theme button[class*="bg-"],
body.llmapi-admin-theme a[class*="bg-"],
body.llmapi-admin-theme .llmapi-primary-action {
  background: linear-gradient(135deg, #e18a5f 0%, #d47448 60%, #bb613b 100%) !important;
  border-color: rgba(185, 103, 67, 0.72) !important;
  color: #fff !important;
  box-shadow: 0 16px 34px rgba(196, 108, 68, 0.2) !important;
}

body.llmapi-admin-theme .bg-primary-700,
body.llmapi-admin-theme .bg-orange-700,
body.llmapi-admin-theme .bg-primary-800,
body.llmapi-admin-theme .bg-orange-800,
body.llmapi-admin-theme .bg-blue-700,
body.llmapi-admin-theme .bg-blue-800,
body.llmapi-admin-theme .btn-primary:active {
  background: #b9603b !important;
  color: #fff !important;
}

body.llmapi-admin-theme .hover\:bg-primary-700:hover,
body.llmapi-admin-theme .hover\:bg-orange-700:hover,
body.llmapi-admin-theme .hover\:bg-blue-700:hover,
body.llmapi-admin-theme .btn-primary:hover,
body.llmapi-admin-theme button[type="submit"]:hover,
body.llmapi-admin-theme button[class*="bg-"]:hover,
body.llmapi-admin-theme a[class*="bg-"]:hover,
body.llmapi-admin-theme .llmapi-primary-action:hover {
  filter: saturate(1.04) brightness(0.98);
  transform: translateY(-1px);
}

body.llmapi-admin-theme .btn-primary:focus,
body.llmapi-admin-theme .btn-primary:focus-visible {
  outline: none !important;
  box-shadow:
    0 16px 34px rgba(196, 108, 68, 0.2),
    0 0 0 4px rgba(212, 116, 72, 0.14) !important;
}

body.llmapi-admin-theme button,
body.llmapi-admin-theme a[class*="inline-flex"] {
  transition:
    transform 180ms cubic-bezier(.2,.8,.2,1),
    box-shadow 180ms cubic-bezier(.2,.8,.2,1),
    background-color 180ms cubic-bezier(.2,.8,.2,1),
    border-color 180ms cubic-bezier(.2,.8,.2,1);
}

body.llmapi-admin-theme input,
body.llmapi-admin-theme textarea,
body.llmapi-admin-theme select {
  background: rgba(255, 253, 250, 0.94) !important;
  border-color: rgba(198, 140, 104, 0.28) !important;
  color: var(--llmapi-text) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
}

body.llmapi-admin-theme input:focus,
body.llmapi-admin-theme textarea:focus,
body.llmapi-admin-theme select:focus {
  border-color: rgba(212, 116, 72, 0.62) !important;
  box-shadow: 0 0 0 4px rgba(212, 116, 72, 0.12) !important;
  outline: none !important;
}

body.llmapi-admin-theme aside,
body.llmapi-admin-theme nav,
body.llmapi-admin-theme .llmapi-surface-sidebar {
  background: linear-gradient(180deg, rgba(255, 249, 241, 0.96) 0%, rgba(255, 244, 232, 0.96) 100%) !important;
  border-color: var(--llmapi-border) !important;
}

body.llmapi-route-admin aside {
  box-shadow:
    inset -1px 0 0 rgba(193, 133, 94, 0.14),
    0 20px 45px rgba(176, 119, 85, 0.08);
}

body.llmapi-route-admin aside a,
body.llmapi-route-admin aside button {
  border-radius: 16px !important;
}

body.llmapi-route-admin aside a[aria-current="page"],
body.llmapi-route-admin aside a.active,
body.llmapi-route-admin aside button[aria-current="page"],
body.llmapi-route-admin aside button.active,
body.llmapi-route-admin aside [data-active="true"],
body.llmapi-route-admin aside .bg-primary-100,
body.llmapi-route-admin aside .bg-orange-100,
body.llmapi-route-admin .llmapi-sidebar-active {
  background: linear-gradient(135deg, rgba(232, 141, 95, 0.16) 0%, rgba(212, 116, 72, 0.22) 100%) !important;
  color: var(--llmapi-brand-deep) !important;
  border: 1px solid rgba(212, 116, 72, 0.22) !important;
  box-shadow: 0 12px 24px rgba(196, 108, 68, 0.12) !important;
}

body.llmapi-route-admin aside a[aria-current="page"] svg,
body.llmapi-route-admin aside a.active svg,
body.llmapi-route-admin aside button[aria-current="page"] svg,
body.llmapi-route-admin aside .llmapi-sidebar-active svg,
body.llmapi-route-admin aside a[aria-current="page"] .lucide,
body.llmapi-route-admin aside .bg-primary-100 svg {
  color: var(--llmapi-brand) !important;
  stroke: var(--llmapi-brand) !important;
}

body.llmapi-route-admin aside a:hover,
body.llmapi-route-admin aside button:hover {
  background: rgba(247, 224, 208, 0.56) !important;
}

body.llmapi-admin-theme .bg-gray-100,
body.llmapi-admin-theme .bg-slate-100,
body.llmapi-admin-theme .bg-primary-100,
body.llmapi-admin-theme .bg-orange-100,
body.llmapi-admin-theme .bg-teal-100,
body.llmapi-admin-theme .hover\:bg-teal-200:hover,
body.llmapi-admin-theme .dark\:bg-teal-900\/30:is(.dark *) {
  background: rgba(244, 223, 205, 0.52) !important;
}

body.llmapi-admin-theme .text-orange-500,
body.llmapi-admin-theme .text-orange-600,
body.llmapi-admin-theme .text-primary-500,
body.llmapi-admin-theme .text-primary-600,
body.llmapi-admin-theme .text-blue-600,
body.llmapi-admin-theme .text-blue-500,
body.llmapi-admin-theme .text-blue-700,
body.llmapi-admin-theme .text-teal-500,
body.llmapi-admin-theme .text-teal-600,
body.llmapi-admin-theme .text-teal-700,
body.llmapi-admin-theme .dark\:text-teal-400:is(.dark *) {
  color: var(--llmapi-brand-deep) !important;
}

body.llmapi-admin-theme .ring-primary-500,
body.llmapi-admin-theme .ring-orange-500,
body.llmapi-admin-theme .ring-blue-500,
body.llmapi-admin-theme .ring-teal-500,
body.llmapi-admin-theme .focus-visible\:ring-orange-500:focus-visible,
body.llmapi-admin-theme .focus-visible\:ring-primary-500:focus-visible,
body.llmapi-admin-theme .focus-visible\:ring-blue-500:focus-visible,
body.llmapi-admin-theme .focus-visible\:ring-teal-500:focus-visible {
  --tw-ring-color: rgba(212, 116, 72, 0.26) !important;
}

body.llmapi-admin-theme .border-teal-500,
body.llmapi-admin-theme .border-teal-400,
body.llmapi-admin-theme .border-teal-200 {
  border-color: rgba(212, 116, 72, 0.3) !important;
}

body.llmapi-admin-theme .from-teal-500,
body.llmapi-admin-theme .via-teal-500,
body.llmapi-admin-theme .to-teal-50,
body.llmapi-admin-theme .dark\:to-teal-900\/20:is(.dark *) {
  --tw-gradient-to: rgba(244, 223, 205, 0.58) var(--tw-gradient-to-position) !important;
  --tw-gradient-stops: var(--tw-gradient-from), rgba(232, 141, 95, 0.16) var(--tw-gradient-via-position), var(--tw-gradient-to) !important;
}

body.llmapi-route-admin .llmapi-sidebar-icon {
  width: 16px;
  height: 16px;
  margin-right: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #bb613b;
  flex: 0 0 auto;
}

body.llmapi-route-admin .llmapi-sidebar-icon svg {
  width: 16px;
  height: 16px;
  stroke: currentColor;
}

body.llmapi-route-admin .llmapi-menu-has-icon {
  display: inline-flex !important;
  align-items: center;
}

body.llmapi-route-admin .border-dashed,
body.llmapi-route-admin .border-slate-300\/60,
body.llmapi-route-admin .border-gray-300\/60 {
  border-color: rgba(212, 116, 72, 0.18) !important;
}

body.llmapi-route-auth .min-h-screen,
body.llmapi-route-auth [class*="min-h-screen"] {
  background: transparent !important;
}

body.llmapi-route-auth .max-w-md,
body.llmapi-route-auth .max-w-lg,
body.llmapi-route-auth form {
  position: relative;
}

body.llmapi-route-auth .max-w-md > div,
body.llmapi-route-auth .max-w-lg > div,
body.llmapi-route-auth form,
body.llmapi-route-auth .bg-white.rounded-lg,
body.llmapi-route-auth .bg-white.shadow-sm {
  border-radius: 28px !important;
}

body.llmapi-route-auth .llmapi-auth-mark {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 18px;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(255, 247, 238, 0.9);
  border: 1px solid rgba(212, 116, 72, 0.16);
  color: var(--llmapi-brand-deep);
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.01em;
}

body.llmapi-route-auth .llmapi-auth-mark img {
  width: 18px;
  height: 18px;
  border-radius: 6px;
}

body.llmapi-route-admin header,
body.llmapi-route-admin [class*="sticky top-0"],
body.llmapi-route-admin [class*="backdrop-blur"] {
  background: rgba(255, 250, 245, 0.82) !important;
  border-color: var(--llmapi-border) !important;
  backdrop-filter: blur(16px);
}

body.llmapi-route-admin table {
  border-color: var(--llmapi-border) !important;
}

body.llmapi-route-admin tr:hover td {
  background: rgba(253, 241, 230, 0.68) !important;
}

@media (max-width: 768px) {
  body.llmapi-admin-theme {
    background:
      radial-gradient(circle at top center, rgba(255, 223, 197, 0.48), transparent 28%),
      linear-gradient(180deg, #fffdf9 0%, #fff6ed 100%) !important;
  }
}
