/* Visual refresh: warm paper, deep pine, quieter chrome. */
:root {
  --ink: #1c2430;
  --muted: #5c6b7a;
  --line: #e6dfd4;
  --brand: #1f6b4a;
  --soft: #e8f4ee;
  --danger: #b42318;
  --paper: #f3f0e8;
  --card: #fffcf8;
}

::selection { background: #d7ebdf; color: #143528; }

body {
  color: var(--ink);
  background:
    radial-gradient(900px 420px at 100% -10%, rgba(196, 165, 116, .16), transparent 55%),
    radial-gradient(800px 380px at -10% 0%, rgba(31, 107, 74, .08), transparent 50%),
    var(--paper);
  font-family: "PingFang SC", "Hiragino Sans GB", "Noto Sans SC", "Microsoft YaHei", sans-serif;
  -webkit-font-smoothing: antialiased;
}

h1, h2, h3 { letter-spacing: -.03em; }

a { color: #176344; }
a:hover { color: #0f4a32; }

.eyebrow {
  color: #1f6b4a !important;
  letter-spacing: .08em;
  text-transform: none;
  font-size: 12px;
}

.primary, .button-link {
  background: #1f6b4a;
  border-radius: 11px;
  box-shadow: none;
  transition: background .15s ease, transform .15s ease;
}
.primary:hover, .button-link:hover { background: #18573c; }
.button-link.subtle {
  background: #e8f4ee !important;
  color: #14573c !important;
}
.button-link.subtle:hover { background: #d7ebdf !important; }
.button-link.danger { background: #fff1f1 !important; }

label input, label textarea, label select,
.inline-form select, .inline-form input,
.task-center-actions select {
  border-color: #ddd4c6;
  border-radius: 10px;
  background: #fff;
  transition: border-color .15s ease, box-shadow .15s ease;
}
label input:focus, label textarea:focus, label select:focus,
.composer input:focus {
  border-color: #1f6b4a;
  box-shadow: 0 0 0 3px rgba(31, 107, 74, .14);
  outline: none;
}

.notice { background: #e8f6ee; color: #14643a; border-radius: 10px; }
.error { border-radius: 10px; }

.admin-body { padding: 22px 16px 40px; }
.admin-shell {
  background: var(--card);
  border: 1px solid #e7e0d4;
  border-radius: 22px;
  box-shadow: 0 18px 50px rgba(48, 36, 22, .06);
}
.admin-shell.wide, .management-shell { max-width: 1180px; }

.app-topbar {
  margin: -28px -28px 22px;
  padding: 12px 22px;
  background: rgba(255, 252, 248, .9);
  border-bottom: 1px solid #efe8dc;
  backdrop-filter: blur(16px);
}
.app-brand { gap: 9px; font-size: 14px; }
.app-brand span {
  width: 28px;
  height: 28px;
  border-radius: 9px;
  background: #1f6b4a;
  box-shadow: none;
}
.app-primary-nav a {
  color: #526170;
  border-radius: 999px;
  font-weight: 600;
}
.app-primary-nav a:hover { background: #f3efe7; color: #1c2430; }
.app-primary-nav a.is-active {
  background: #e8f4ee;
  color: #14573c;
}
.app-user-menu .app-help-link {
  border-color: #d5e6db;
  background: #f4faf7;
  color: #176344;
}
.app-user-menu .app-help-link.is-active { background: #e8f4ee; border-color: #b7d7c6; }
.link-button { color: #176344; }
.global-nav-active, .team-nav-active {
  color: #14573c !important;
  border-bottom-color: #1f6b4a;
}

.subpage-bar { border-bottom-color: #efe8dc; }

.admin-panel, .business-panel, .business-funnel, .activity-panel, .contact-card, .agent-card, .stats > div {
  border-color: #e7e0d4 !important;
  background: #fff !important;
  box-shadow: none;
}
.admin-panel { border-radius: 16px; }
.admin-panel h2 { border-left-color: #1f6b4a; }
table th { background: #faf7f2; color: #5c6b7a; }
.table-wrap { border-color: #e7e0d4; border-radius: 14px; }
th, td { border-bottom-color: #f0ebe3; }

.page-guide {
  margin: 0 0 18px !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}
.page-guide:before,
.page-guide + .admin-panel:before,
.page-guide + .team-kpis:before,
.page-guide + .org-tree:before,
.page-guide + .digital-flow-panel:before { content: none !important; display: none !important; }
.page-guide article {
  padding: 12px 14px !important;
  border: 1px solid #e7e0d4 !important;
  border-radius: 14px !important;
  background: #faf7f2 !important;
}
.page-guide article + article { border-left: 1px solid #e7e0d4 !important; }
.page-guide .guide-key {
  height: auto !important;
  margin: 0 0 6px !important;
  padding: 0 !important;
  background: transparent !important;
  color: #1f6b4a !important;
  font-size: 11px !important;
  letter-spacing: .04em;
}
.page-guide b { color: #1c2430 !important; font-size: 13px !important; }
.page-guide small { color: #5c6b7a !important; font-size: 12px !important; }

.section-number, .member-avatar, .metric-icon { background: #e8f4ee; color: #14573c; }
.task-card, .task-center-card, .org-card { border-left-color: #1f6b4a; }
.focus-card, .ai-create-card, .wechat-card, .schedule-progress { border-color: #d5e6db !important; }
.add-row, .draft-examples button.is-active, .ai-create-title > span { background: #1f6b4a; }
.add-row { background: #f4faf7; color: #14573c; border-color: #b7d7c6; }
.draft-examples button { border-color: #d5e6db; color: #14573c; }
.draft-examples button.is-active { color: #fff; border-color: #1f6b4a; }
.model-mode label, .template-strip, .secondary-details, .advanced-details { border-color: #e7e0d4; }
.model-mode label, .template-strip { background: #faf7f2; }

.login-body {
  min-height: 100dvh;
  padding: 28px 18px;
  background:
    radial-gradient(520px 280px at 15% 10%, rgba(255, 236, 205, .22), transparent 60%),
    radial-gradient(640px 360px at 90% 90%, rgba(196, 165, 116, .28), transparent 55%),
    linear-gradient(165deg, #10281e 0%, #1b5a3e 58%, #2f6d4f 100%);
}
.login-card {
  width: min(100%, 420px);
  padding: 34px 32px 28px;
  border: 0;
  border-radius: 28px;
  background: #fffcf8;
  box-shadow: 0 30px 80px rgba(8, 24, 16, .35);
}
.login-card .brand-mark {
  width: 46px;
  height: 46px;
  border-radius: 15px;
  background: #1f6b4a;
  font-size: 0;
  box-shadow: 0 8px 18px rgba(31, 107, 74, .25);
}
.login-card .brand-mark::before { content: "✦"; font-size: 20px; }
.login-card h1 { margin: 16px 0 6px; font-size: 28px; letter-spacing: -.04em; }
.login-card > p { color: #5c6b7a; line-height: 1.55; }
.login-card .primary { width: 100%; margin-top: 4px; padding: 12px 16px; }
.login-card small a { font-weight: 700; text-decoration: none; }

.customer-body {
  background:
    radial-gradient(500px 240px at 80% 0%, rgba(196, 165, 116, .25), transparent 60%),
    #143528;
}
.phone-shell { background: #fffcf8; }
.avatar, .user, .composer button { background: #1f6b4a; }
.bot { background: #f4f1ea; }
.quick-actions button {
  border-color: #d5e6db;
  background: #f4faf7;
  color: #14573c;
}
.booking-cta { background: #f8f1e3; color: #8a5a12; }
.store-header, .composer { border-color: #efe8dc; }
.store-meta { background: #faf7f2; }
@media (min-width: 620px) {
  .phone-shell { box-shadow: 0 24px 60px rgba(8, 24, 16, .35); }
}

.board-page, .digital-page { background: transparent; }
.board-page .admin-shell, .digital-page .admin-shell {
  border-color: #e7e0d4;
  box-shadow: 0 18px 50px rgba(48, 36, 22, .06);
}
.workspace-heading h1 { letter-spacing: -.04em; }
.priority-strip {
  border-color: #d5e6db;
  background: #f4faf7;
  border-radius: 16px;
}
.priority-strip.has-pending { background: #fff8ee; border-color: #f0d7b0; }
.priority-symbol { color: #14573c; background: #d7ebdf; }
.has-pending .priority-symbol { color: #92400e; background: #fde8c8; }
.board-page .business-kpis > a,
.business-kpis > a,
.task-status-kpis > a,
.attention-item,
.role-directory > article {
  border-color: #e7e0d4;
  border-radius: 16px;
}
.board-page .business-kpis > a:hover,
.business-kpis > a:hover,
.task-status-kpis > a:hover,
.attention-item:hover,
.cohort-track > a:hover {
  border-color: #8fbfa6;
  background: #f7fbf8;
  box-shadow: none;
  transform: none;
}
.board-page .business-kpis b, .business-kpis b { letter-spacing: -.04em; }
.role-symbol { background: #e8f4ee; color: #14573c; }
.chart-legend .lead::before, .trend-bars .lead { background: #3d7ea6; }
.trend-bars .task { background: #c4a574; }
.trend-bars .done { background: #1f6b4a; }
.chart-legend .task::before { background: #c4a574; }
.chart-legend .done::before { background: #1f6b4a; }
.workspace-help > div { background: #faf7f2; border-left-color: #1f6b4a; }
.digital-page .flow-depth { background: linear-gradient(160deg, #f7fbf8, #fffcf8 62%); border-color: #e7e0d4; }
.employee-subnav a.is-active, .workbench-switcher a.is-active { background: #e8f4ee; color: #14573c; border-color: #b7d7c6; }
.org-root { background: #f4faf7; border-color: #d5e6db; }
.org-root-icon { background: #1f6b4a; }

dialog, .app-page-dialog, .member-workbench-dialog, .flow-action-dialog {
  border-radius: 18px;
}
dialog::backdrop, .app-page-dialog::backdrop { background: rgba(20, 32, 26, .55); }

.clickable-card:hover, .clickable-card:focus,
.employee-card:hover, .employee-card:focus-visible {
  border-color: #8fbfa6;
  box-shadow: 0 10px 24px rgba(31, 107, 74, .08);
}

@media (max-width: 760px) {
  .app-topbar { margin: -20px -20px 16px; }
  .admin-shell { border-radius: 0; border: 0; box-shadow: none; }
  .page-guide article + article { border-left: 0 !important; border-top: 1px solid #e7e0d4 !important; }
}
