:root {
  --oaim-ui-blue: #246bfe;
  --oaim-ui-blue-deep: #1554d1;
  --oaim-ui-ink: #101828;
  --oaim-ui-slate: #475467;
  --oaim-ui-muted: #667085;
  --oaim-ui-line: #dfe5ee;
  --oaim-ui-paper: #f7f9fc;
  --oaim-ui-surface: #ffffff;
  --oaim-ui-success: #12b76a;
  --oaim-ui-radius: 10px;
  --oaim-ui-shadow: 0 12px 32px rgba(16, 24, 40, .07);
}

body,
.layui-body,
.o-content-inner,
.o-service-pc-body,
.oaim-widget {
  color: var(--oaim-ui-ink);
  font-family: "Alibaba PuHuiTi", "PingFang SC", "Microsoft YaHei", system-ui, sans-serif;
}

/* 后台内容页：merchant + super 共用 */
.o-content-inner {
  min-height: 100vh;
  padding: 24px;
  background: var(--oaim-ui-paper);
}

.o-breadcrumb {
  min-height: 42px;
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 0 0 20px;
  padding: 0 14px;
  border: 1px solid var(--oaim-ui-line);
  border-radius: 8px;
  color: var(--oaim-ui-muted);
  background: var(--oaim-ui-surface);
  font-size: 13px;
}

.o-breadcrumb a,
.o-breadcrumb .current { color: var(--oaim-ui-slate); }
.o-breadcrumb a:hover { color: var(--oaim-ui-blue); }
.o-breadcrumb-refresh { margin-left: auto; }

.layui-card {
  margin-bottom: 18px;
  border: 1px solid var(--oaim-ui-line);
  border-radius: var(--oaim-ui-radius);
  background: var(--oaim-ui-surface);
  box-shadow: none;
}

.layui-card-header {
  min-height: 54px;
  display: flex;
  align-items: center;
  padding: 0 20px;
  border-bottom: 1px solid var(--oaim-ui-line);
  color: var(--oaim-ui-ink);
  font-size: 16px;
  font-weight: 700;
}

.layui-card-body { padding: 20px; color: var(--oaim-ui-slate); }
.layui-btn { min-height: 34px; padding: 0 14px; border-radius: 7px; font-weight: 600; }
.layui-btn-primary { border-color: var(--oaim-ui-line); color: var(--oaim-ui-slate); background: #fff; }
.layui-btn-normal,
.layui-btn-warm,
.layui-btn-danger { border-color: var(--oaim-ui-blue); background: var(--oaim-ui-blue); }
.layui-btn-normal:hover,
.layui-btn-warm:hover,
.layui-btn-danger:hover { background: var(--oaim-ui-blue-deep); }

.layui-input,
.layui-textarea,
.layui-select-title input {
  border-color: #cfd8e6;
  border-radius: 7px;
  color: var(--oaim-ui-ink);
  background: #fff;
}

.layui-input:focus,
.layui-textarea:focus,
.layui-select-title input:focus {
  border-color: var(--oaim-ui-blue) !important;
  box-shadow: 0 0 0 3px rgba(36, 107, 254, .12);
}

.layui-form-label { color: var(--oaim-ui-slate); font-weight: 600; }
.layui-table { border-color: var(--oaim-ui-line); color: var(--oaim-ui-slate); }
.layui-table thead tr,
.layui-table-header { background: #f5f8fd; }
.layui-table th { color: var(--oaim-ui-slate); font-weight: 700; }
.layui-table td,
.layui-table th { border-color: var(--oaim-ui-line); }
.layui-table tbody tr:hover { background: #f8fbff; }
.layui-laypage a,
.layui-laypage span { border-radius: 5px; }
.layui-laypage .layui-laypage-curr .layui-laypage-em { background: var(--oaim-ui-blue); }

/* 后台主框架：merchant + super */
.o-layout-admin { background: var(--oaim-ui-paper); }
.o-header {
  border-bottom: 1px solid var(--oaim-ui-line);
  background: var(--oaim-ui-surface);
}
.o-header-brand { color: var(--oaim-ui-ink); }
.o-brand-mark { border-radius: 8px; background: var(--oaim-ui-blue); }
.o-brand-title { color: var(--oaim-ui-ink); }
.o-brand-title small { color: var(--oaim-ui-muted); }
.o-header-btn { border-radius: 7px; color: var(--oaim-ui-slate); }
.o-header-btn:hover { color: var(--oaim-ui-blue); background: #eef4ff; }
.o-sidebar { border-right: 1px solid var(--oaim-ui-line); background: #fff; }
.o-sidebar-item > a,
.o-sidebar-group > a,
.o-sidebar-submenu a { color: var(--oaim-ui-slate); }
.o-sidebar-item.active > a,
.o-sidebar-item > a:hover,
.o-sidebar-group > a:hover,
.o-sidebar-submenu a:hover,
.o-sidebar-submenu li.active a { color: var(--oaim-ui-blue); background: #eef4ff; }
.o-body { background: var(--oaim-ui-paper); }

/* 登录页 */
.login-page {
  min-height: 100vh;
  display: grid;
  place-items: center;
  padding: 24px;
  background: var(--oaim-ui-paper);
}
.login-page-inner { width: min(100%, 460px); }
.login-panel {
  width: min(100%, 460px);
  margin: 0 auto;
  padding: 34px;
  border: 1px solid var(--oaim-ui-line);
  border-radius: 12px;
  background: #fff;
  box-shadow: var(--oaim-ui-shadow);
}
.login-brand { margin-bottom: 30px; }
.login-brand h1 { color: var(--oaim-ui-ink); }
.login-brand .sub,
.login-tips { color: var(--oaim-ui-muted); }
.login-brand-mark { border-radius: 9px; background: var(--oaim-ui-blue); }
.login-input { border-color: #cfd8e6; border-radius: 7px; }
.login-input:focus { border-color: var(--oaim-ui-blue); box-shadow: 0 0 0 3px rgba(36,107,254,.12); }
.login-submit { min-height: 44px; border-radius: 7px; background: var(--oaim-ui-blue); }
.login-submit:hover { background: var(--oaim-ui-blue-deep); }

/* 客服工作台 */
.o-service-pc-body { background: var(--oaim-ui-paper); }
.o-service-login { background: var(--oaim-ui-paper); }
.o-service-login__panel { border: 1px solid var(--oaim-ui-line); border-radius: 12px; background: #fff; box-shadow: var(--oaim-ui-shadow); }
.o-service-login__brand h1,
.o-service-home__head h1 { color: var(--oaim-ui-ink); }
.o-service-login__brand p,
.o-service-home__head p { color: var(--oaim-ui-muted); }
.o-service-primary { border-radius: 7px; background: var(--oaim-ui-blue); }
.o-service-primary:hover { background: var(--oaim-ui-blue-deep); }
.o-service-nav { border-right: 1px solid var(--oaim-ui-line); background: #fff; }
.o-service-nav__brand { color: var(--oaim-ui-ink); }
.o-service-nav__items button { color: var(--oaim-ui-slate); }
.o-service-nav__items button.is-active,
.o-service-nav__items button:hover { color: var(--oaim-ui-blue); background: #eef4ff; }
.o-service-home { background: var(--oaim-ui-paper); }
.o-service-secondary { border-color: var(--oaim-ui-line); border-radius: 7px; color: var(--oaim-ui-slate); background: #fff; }
.o-service-secondary:hover { border-color: var(--oaim-ui-blue); color: var(--oaim-ui-blue); }

/* 访客 Widget */
.oaim-widget { border-color: var(--oaim-ui-line); background: #fff; }
.oaim-widget__head { border-bottom-color: var(--oaim-ui-line); background: #fff; }
.oaim-widget__avatar { border-radius: 9px; background: var(--oaim-ui-blue); }
.oaim-widget__title strong { color: var(--oaim-ui-ink); }
.oaim-widget__close { color: var(--oaim-ui-muted); }
.oaim-widget__messages { background: #f8fafc; }
.oaim-widget__chip { border-color: #dce6f7; color: var(--oaim-ui-blue); background: #fff; }
.oaim-widget__compose { border-top-color: var(--oaim-ui-line); background: #fff; }
.oaim-widget__input { color: var(--oaim-ui-ink); }
.oaim-widget__send { border-radius: 7px; background: var(--oaim-ui-blue); }
.oaim-widget__send:not([disabled]):hover { background: var(--oaim-ui-blue-deep); }

@media (max-width: 768px) {
  .o-content-inner { padding: 14px; }
  .o-breadcrumb { margin-bottom: 14px; }
  .layui-card-body { padding: 14px; }
  .login-panel { padding: 26px 20px; }
}
