/* Test-only presentation overlay. Existing business-state palettes remain semantic. */
html[data-chunshan-environment="test"] {
  --brand: #b32742;
  --brand-deep: #871b32;
  --brand-soft: #fbe9ed;
  --danger: #761722;
  --surface-muted: #fcf7f7;
  --line: #eadcdf;
  --shadow: 0 14px 38px rgb(100 27 40 / 9%);
  --test-banner-height: calc(44px + env(safe-area-inset-top, 0px));
  scroll-padding-top: calc(var(--test-banner-height) + 88px);
}
#chunshan-test-environment-banner { display: none; }
html[data-chunshan-environment="test"] #chunshan-test-environment-banner {
  position: fixed; inset: 0 0 auto; z-index: 100000;
  display: flex; align-items: center; justify-content: center; gap: 16px;
  height: var(--test-banner-height); padding: env(safe-area-inset-top, 0px) 12px 0;
  background: #b32742; color: #fff; border-bottom: 1px solid #871b32;
  font: 700 14px/1.3 system-ui, "PingFang SC", sans-serif;
  letter-spacing: .04em; text-align: center;
}
html[data-chunshan-environment="test"] #chunshan-test-environment-banner small { font-size: 12px; font-weight: 500; opacity: .9; }
html[data-chunshan-environment="test"] body { padding-top: var(--test-banner-height); background: #fcf7f7; }
html[data-chunshan-environment="test"] :is(.login-page,.full-page-status,.workbench-shell) { min-height: calc(100vh - var(--test-banner-height)); }
html[data-chunshan-environment="test"] .login-page { background: radial-gradient(circle at 18% 14%,#f4d8df,transparent 42%),radial-gradient(circle at 88% 88%,#f9e9e6,transparent 35%),#fcf7f7; }
html[data-chunshan-environment="test"] .brand-seal { box-shadow: 0 8px 18px rgb(179 39 66 / 18%); }
html[data-chunshan-environment="test"] .login-card h1 { color: #641b28; }
html[data-chunshan-environment="test"] .workbench-header { top: var(--test-banner-height); background: #fff0f3; border-color: #e9bdc7; padding-top: 10px; }
html[data-chunshan-environment="test"] .mobile-brand { color: #871b32; }
html[data-chunshan-environment="test"] .workbench-sidebar { top: var(--test-banner-height); height: calc(100vh - var(--test-banner-height)); background: #641b28; color: white; border-color: #641b28; }
html[data-chunshan-environment="test"] .workbench-sidebar :is(.brand-button small,.employee-badge small,.text-button) { color: #f6dce2; }
html[data-chunshan-environment="test"] .workbench-sidebar .employee-badge strong { color: #fff; }
html[data-chunshan-environment="test"] .workbench-navigation button:hover { background: #842c40; color: #fff; }
html[data-chunshan-environment="test"] .workbench-navigation button[aria-current="page"] { background: #fbe9ed; color: #641b28; font-weight: 800; }
html[data-chunshan-environment="test"] .mobile-navigation { background: #fff0f3; border-color: #e9bdc7; }
html[data-chunshan-environment="test"] .mobile-navigation button[aria-current="page"] { background: #f7dbe3; color: #871b32; border-radius: 10px; font-weight: 800; }
html[data-chunshan-environment="test"] .store-quick-switcher__item:hover { background: #fbe9ed; border-color: #d89dab; }
html[data-chunshan-environment="test"] .store-quick-switcher__item.is-selected { background: var(--brand); border-color: var(--brand); box-shadow: 0 4px 12px rgb(179 39 66 / 18%); }
html[data-chunshan-environment="test"] .dashboard-hero { background: linear-gradient(135deg,#871b32,#b32742 68%,#cb687a); }
html[data-chunshan-environment="test"] .dashboard-hero :is(.eyebrow,p:last-child) { color: #ffedf1; }
html[data-chunshan-environment="test"] .summary-card--store { background: linear-gradient(145deg,#fff 15%,#fbe9ed); }
html[data-chunshan-environment="test"] .study-navigation { background: #fbeff2; }
html[data-chunshan-environment="test"] .study-navigation button[aria-current="page"],
html[data-chunshan-environment="test"] .study-quote .primary-button { background: var(--brand); color: #fff; }
html[data-chunshan-environment="test"] .study-seat.is-selected { outline-color: var(--brand); }
html[data-chunshan-environment="test"] .study-customers button[aria-pressed="true"] { background: var(--brand-soft); border-color: var(--brand); }
html[data-chunshan-environment="test"] .study-section-anchor { scroll-margin-top: calc(var(--test-banner-height) + 100px); }
html[data-chunshan-environment="test"] .pindou-success-message { top: calc(var(--test-banner-height) + 12px); }
/* Success/info must not inherit the new brand red. */
html[data-chunshan-environment="test"] :is(.collection-cashier-status--success,.pindou-multi-seat-notice,.pindou-closing-empty) { color: #176749; background: #eaf7f0; }
html[data-chunshan-environment="test"] .collection-cashier-result--success > span { color: #fff; background: #176749; }
/* Danger is a darker ink, pale surface and explicit edge, unlike filled brand controls. */
html[data-chunshan-environment="test"] :is(.login-message--error,.member-message--error,.dashboard-reminder-error,.pindou-multi-seat-warning) { color: #761722; background: #fff0ed; border: 1px solid #d88884; border-left: 4px solid #761722; }
html[data-chunshan-environment="test"] .pindou-danger-button { background: #761722; border: 2px solid #4b0b14; }
html[data-chunshan-environment="test"] .pindou-danger-button:hover { background: #4b0b14; }
@media (max-width: 600px) {
  html[data-chunshan-environment="test"] #chunshan-test-environment-banner small { display: none; }
}
@media print {
  html[data-chunshan-environment="test"] #chunshan-test-environment-banner { position: static; color: #871b32; background: #fff; }
  html[data-chunshan-environment="test"] body { padding-top: 0; }
}
