/* Workbench 01: shell chrome + home only. Business panels, forms and dialogs
   retain their existing component styles. Theme selection remains in app.js. */
:root {
  --hw-ui-bg: #f6f7f9;
  --hw-ui-sidebar: #fafafb;
  --hw-ui-surface: #fff;
  --hw-ui-text: #20252d;
  --hw-ui-muted: #626a75;
  --hw-ui-line: #e6e8ec;
  --hw-ui-accent: #a63a32;
  --hw-ui-primary: #a63a32;
  --hw-ui-primary-hover: #902d27;
  --hw-ui-on-primary: #fff;
  --hw-ui-soft: #f8ece9;
  --hw-ui-hover: #eeeff2;
  --hw-ui-focus: #a63a32;
  --hw-sidebar-color: var(--hw-ui-text);
  --hw-sidebar-muted: var(--hw-ui-muted);
  --hw-sidebar-background: var(--hw-ui-sidebar);
  --hw-sidebar-border: var(--hw-ui-line);
  --hw-sidebar-shadow: none;
  --hw-sidebar-accountBorder: var(--hw-ui-line);
  --hw-sidebar-avatarRing: var(--hw-ui-line);
  --hw-sidebar-toggleColor: var(--hw-ui-muted);
  --hw-sidebar-account-background: var(--hw-ui-surface);
}
html:root[data-theme="dark"] {
  --hw-ui-bg: #111317;
  --hw-ui-sidebar: #17191e;
  --hw-ui-surface: #1d2026;
  --hw-ui-text: #f3f4f6;
  --hw-ui-muted: #acb1bb;
  --hw-ui-line: #30343d;
  --hw-ui-accent: #ee9186;
  --hw-ui-primary: #b94338;
  --hw-ui-primary-hover: #a63a32;
  --hw-ui-soft: #362422;
  --hw-ui-hover: #24272e;
  --hw-ui-focus: #ee9186;
  --hw-sidebar-color: var(--hw-ui-text);
  --hw-sidebar-muted: var(--hw-ui-muted);
  --hw-sidebar-background: var(--hw-ui-sidebar);
  --hw-sidebar-border: var(--hw-ui-line);
  --hw-sidebar-shadow: none;
  --hw-sidebar-accountBorder: var(--hw-ui-line);
  --hw-sidebar-avatarRing: var(--hw-ui-line);
  --hw-sidebar-toggleColor: var(--hw-ui-muted);
  --hw-sidebar-account-background: var(--hw-ui-surface);
}
html:root:not(.react-student-embedded) body.mobile-navigation-enabled {
  --hw-sidebar-color: var(--hw-ui-text);
  --hw-sidebar-muted: var(--hw-ui-muted);
  --hw-sidebar-background: var(--hw-ui-sidebar);
  --hw-sidebar-border: var(--hw-ui-line);
  --hw-sidebar-shadow: none;
  --hw-sidebar-accountBorder: var(--hw-ui-line);
  --hw-sidebar-avatarRing: var(--hw-ui-line);
  --hw-sidebar-toggleColor: var(--hw-ui-muted);
  --hw-sidebar-account-background: var(--hw-ui-surface);
}
html:root:not(.react-student-embedded) body[data-active-panel] .shell > .main:has(> #workspaceCommandBar) {
  background: var(--hw-ui-bg) !important;
  background-image: none !important;
}
html:not(.react-student-embedded) body[data-active-panel] .shell > .sidebar,
html:not(.react-student-embedded) body #mobileNavigationDrawer .sidebar {
  background: var(--hw-ui-sidebar) !important;
  box-shadow: none !important;
  border-right-color: var(--hw-ui-line) !important;
}
/* The historical desktop lock uses two artificial :not(#id) selectors.
   Repeat the actual nav ID to outrank it without affecting other buttons. */
html:not(.react-student-embedded) body[data-active-panel] .shell > .sidebar #workspaceNavigation#workspaceNavigation#workspaceNavigation .menu-item,
html:not(.react-student-embedded) body #mobileNavigationDrawer #workspaceNavigation .menu-item {
  background: transparent !important;
  border-color: transparent !important;
  border-radius: 8px !important;
  box-shadow: none !important;
  text-shadow: none !important;
}
html:not(.react-student-embedded) body[data-active-panel] #workspaceNavigation#workspaceNavigation#workspaceNavigation .menu-item:hover,
html:not(.react-student-embedded) body #mobileNavigationDrawer #workspaceNavigation .menu-item:hover {
  background: var(--hw-ui-hover) !important;
}
html:not(.react-student-embedded) body[data-active-panel] .shell > .sidebar #workspaceNavigation#workspaceNavigation#workspaceNavigation .menu-item.active,
html:not(.react-student-embedded) body #mobileNavigationDrawer #workspaceNavigation .menu-item.active {
  --hw-sidebar-color: var(--hw-ui-accent);
  color: var(--hw-ui-accent) !important;
  background: var(--hw-ui-soft) !important;
  font-weight: 650 !important;
  box-shadow: none !important;
}
html body #workspaceNavigation .menu-item.active :is(.menu-item-icon,.menu-item-label,.workspace-nav-chevron) {
  color: var(--hw-ui-accent) !important;
}
html body #workspaceNavigation .menu-item.active .menu-item-icon::before {
  background-color: var(--hw-ui-accent) !important;
}
html body #workspaceNavigation :is(.workspace-nav-group-toggle,.menu-item):focus-visible {
  outline: 2px solid var(--hw-ui-focus) !important;
  outline-offset: -2px !important;
}
html body #workspaceNavigation [data-workspace-nav-group="growth"] {
  margin-top: 16px;
}
html body #workspaceNavigation .workspace-nav-subitem {
  color: var(--hw-ui-muted) !important;
}
html body .sidebar .brand-subtitle-text {
  color: var(--hw-ui-muted) !important;
  text-shadow: none !important;
}
html body .sidebar #sidebarAccountBtn {
  background: var(--hw-ui-surface) !important;
  border-color: var(--hw-ui-line) !important;
  box-shadow: none !important;
}
html body .shell > .main > #workspaceCommandBar {
  background: var(--hw-ui-surface) !important;
  border-bottom: 1px solid var(--hw-ui-line) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}
html body #workspaceCommandBar #pageTitle { color: var(--hw-ui-text) !important; }
html body #workspaceCommandBar #globalSearchControl {
  --search-surface: var(--hw-ui-bg);
  --search-surface-hover: var(--hw-ui-hover);
  --search-surface-focus: var(--hw-ui-surface);
  --search-border: var(--hw-ui-line);
  --search-border-hover: var(--hw-ui-muted);
  --search-focus: var(--hw-ui-focus);
  --search-ring: transparent;
  --search-text: var(--hw-ui-text);
  --search-muted: var(--hw-ui-muted);
  --search-action: var(--hw-ui-soft);
  --search-action-hover: var(--hw-ui-hover);
  --search-action-text: var(--hw-ui-accent);
  border-radius: 8px !important;
}
html body #workspaceCommandBar #companionTopbarEntry {
  background: var(--hw-ui-surface) !important;
  border-color: var(--hw-ui-line) !important;
  color: var(--hw-ui-text) !important;
  box-shadow: none !important;
}
html body #workspaceCommandBar #companionTopbarEntry :is(strong,small) { color: inherit !important; }
html body #homeDashboard.p10-journey-enabled {
  background: var(--hw-ui-bg) !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
#homeDashboard.p10-journey-enabled #p10Home.p10-workspace {
  --p10-bg: var(--hw-ui-surface);
  --p10-soft: var(--hw-ui-bg);
  --p10-text: var(--hw-ui-text);
  --p10-muted: var(--hw-ui-muted);
  --p10-line: var(--hw-ui-line);
  max-width: 1180px;
  padding: 36px 32px calc(48px + env(safe-area-inset-bottom, 0px));
  background: transparent !important;
}
/* Existing dark fallbacks target every classified div and names containing
   -hero/-route. Reset only this homepage's structural/text wrappers. */
#homeDashboard #p10Home :is(.p10-heading,.p10-start-grid,.p10-hero-meta,.p10-hero-icon,.p10-actions,.p10-journey,.p10-support-grid,.p10-hero-description,.p10-route-note) {
  background: transparent !important;
  box-shadow: none !important;
}
#homeDashboard #p10Home :is(h1,h2,h3) { color: var(--hw-ui-text) !important; }
#homeDashboard #p10Home :is(p,.p10-muted,.p10-eyebrow,.p10-summary-hint,.p10-hero-icon) { color: var(--hw-ui-muted) !important; }
#homeDashboard #p10Home .p10-heading { margin-bottom: 28px; max-width: 860px; }
#homeDashboard #p10Home .p10-heading h1 { font-size: clamp(26px, 2.5vw, 32px); margin: 10px 0 12px; font-weight: 650; }
#homeDashboard #p10Home .p10-heading .p10-eyebrow { display: flex; align-items: center; gap: 8px; letter-spacing: .02em; }
#homeDashboard #p10Home .p10-brand-dot { width: 7px; height: 7px; flex: 0 0 7px; border-radius: 50%; background: var(--hw-ui-accent); }
#homeDashboard #p10Home .p10-start-grid { display: grid; grid-template-columns: minmax(0,1.6fr) minmax(260px,1fr); gap: 24px; align-items: stretch; margin-bottom: 24px; }
#homeDashboard #p10Home :is(.p10-card,.p10-hero,.p10-route-card) { border-radius: 12px; border: 1px solid var(--hw-ui-line) !important; background: var(--hw-ui-surface) !important; box-shadow: none !important; }
#homeDashboard #p10Home .p10-hero { display: flex; flex-direction: column; padding: 30px; margin: 0; }
#homeDashboard #p10Home .p10-hero-meta { display: flex; justify-content: space-between; align-items: center; gap: 12px; margin: 0 0 24px; }
#homeDashboard #p10Home .p10-action-label { color: var(--hw-ui-accent) !important; background: var(--hw-ui-soft) !important; font-size: 13px; font-weight: 600; padding: 4px 10px; border-radius: 5px; }
#homeDashboard #p10Home .p10-hero-icon { display: grid; place-items: center; color: var(--hw-ui-muted); }
#homeDashboard #p10Home .p10-hero-icon svg { width: 28px; height: 28px; }
#homeDashboard #p10Home .p10-hero h2 { font-size: 25px; font-weight: 650; margin-top: 0; }
#homeDashboard #p10Home .p10-hero-description { color: var(--hw-ui-muted); margin-top: 14px; max-width: 480px; }
#homeDashboard #p10Home .p10-actions { gap: 12px; margin-top: 28px; }
#homeDashboard #p10Home .p10-button { border-radius: 7px; font-size: 15px; font-weight: 600; min-height: 44px; background: var(--hw-ui-surface) !important; color: var(--hw-ui-text) !important; border-color: var(--hw-ui-line) !important; }
#homeDashboard #p10Home .p10-button:not(.p10-primary):hover:not(:disabled) { background: var(--hw-ui-hover) !important; border-color: var(--hw-ui-line) !important; }
#homeDashboard #p10Home .p10-button.p10-primary { background: var(--hw-ui-primary) !important; border-color: var(--hw-ui-primary) !important; color: var(--hw-ui-on-primary) !important; padding: 13px 20px; }
#homeDashboard #p10Home .p10-button.p10-primary:hover:not(:disabled) { background: var(--hw-ui-primary-hover) !important; border-color: var(--hw-ui-primary-hover) !important; }
#homeDashboard #p10Home .p10-button:disabled { opacity: 1; background: var(--hw-ui-hover) !important; border-color: var(--hw-ui-line) !important; color: var(--hw-ui-muted) !important; }
#homeDashboard #p10Home :is(button,summary):focus-visible { outline: 2px solid var(--hw-ui-focus); outline-offset: 3px; }
#homeDashboard #p10Home .p10-action-note { margin-top: auto; padding-top: 28px; }
#homeDashboard #p10Home .p10-route-card { padding: 24px; }
#homeDashboard #p10Home .p10-route-card h2 { font-size: 17px; font-weight: 650; }
#homeDashboard #p10Home .p10-route-card > .p10-muted { margin-top: 3px; }
#homeDashboard #p10Home .p10-journey { display: grid; gap: 14px; list-style: none; padding: 0; margin: 20px 0 16px; }
#homeDashboard #p10Home .p10-journey li { display: grid; grid-template-columns: 28px minmax(0,1fr); gap: 12px; align-items: start; margin: 0; padding: 0; }
#homeDashboard #p10Home .p10-step-number { width: 28px; height: 28px; display: grid; place-items: center; border: 1px solid var(--hw-ui-line) !important; background: var(--hw-ui-bg) !important; border-radius: 50%; font-size: 11px; font-weight: 600; color: var(--hw-ui-muted) !important; }
#homeDashboard #p10Home .p10-journey h3 { font-size: 14px; font-weight: 650; line-height: 1.5; }
#homeDashboard.p10-journey-enabled #p10Home.p10-workspace .p10-journey p { font-size: 13px !important; line-height: 1.5 !important; color: var(--hw-ui-muted); margin-top: 2px; }
#homeDashboard.p10-journey-enabled #p10Home.p10-workspace .p10-route-note { font-size: 12px !important; line-height: 1.65 !important; color: var(--hw-ui-muted); border-top: 1px solid var(--hw-ui-line) !important; padding-top: 12px; }
#homeDashboard #p10Home .p10-support-grid { gap: 24px; }
#homeDashboard #p10Home .p10-support-grid .p10-card { display: flex; flex-direction: column; align-items: start; margin-bottom: 24px; padding: 24px; }
#homeDashboard #p10Home .p10-support-grid h2 { margin-top: 5px; font-size: 19px; font-weight: 650; }
#homeDashboard #p10Home .p10-support-grid .p10-card > p:not(.p10-eyebrow) { color: var(--hw-ui-muted); margin: 10px 0 20px; }
#homeDashboard #p10Home .p10-support-grid .p10-button { margin-top: auto; }
#homeDashboard #p10Home .p10-card.p10-availability { padding: 12px 20px; background: transparent !important; margin-bottom: 0; }
#homeDashboard #p10Home .p10-availability summary { min-height: 44px; font-size: 14px; line-height: 44px; color: var(--hw-ui-muted) !important; }
#homeDashboard #p10Home .p10-summary-hint { float: right; font-size: 12px; font-weight: 400; }
@media (max-width: 1100px) {
  #homeDashboard #p10Home .p10-start-grid { grid-template-columns: minmax(0,1.3fr) minmax(235px,1fr); gap: 18px; }
  #homeDashboard #p10Home :is(.p10-hero,.p10-route-card) { padding: 24px; }
  #homeDashboard #p10Home .p10-actions { flex-direction: column; align-items: stretch; }
}
@media (max-width: 940px) {
  #homeDashboard #p10Home .p10-start-grid { grid-template-columns: minmax(0,1fr); }
  #homeDashboard #p10Home .p10-journey { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #homeDashboard #p10Home .p10-hero { min-height: 300px; }
  #homeDashboard #p10Home .p10-support-grid { grid-template-columns: minmax(0,1fr); gap: 0; }
}
@media (max-width: 600px) {
  #homeDashboard.p10-journey-enabled #p10Home.p10-workspace { padding: 24px 16px calc(32px + env(safe-area-inset-bottom, 0px)); }
  #homeDashboard #p10Home .p10-heading { margin-bottom: 22px; }
  #homeDashboard #p10Home :is(.p10-hero,.p10-route-card,.p10-support-grid .p10-card) { padding: 20px; }
  #homeDashboard #p10Home .p10-hero h2 { font-size: 22px; }
  #homeDashboard #p10Home .p10-actions { margin-top: 22px; }
  #homeDashboard #p10Home .p10-actions > .p10-button { flex: none; width: 100%; }
  #homeDashboard #p10Home .p10-journey { grid-template-columns: minmax(0,1fr); }
  #homeDashboard #p10Home .p10-summary-hint { display: none; }
}
