/* CyberCompany Clean shell standard v3
   Shared geometry and neutral ChatGPT-like states for every assistant. */

html[data-style="clean"] body,
html[data-style="clean"] body * {
  font-family: "Inter Variable", Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}

html[data-style="clean"] :is(.sidebar, .portal-sidebar) :is(.nav-item, .cc-feedback-nav) {
  box-sizing: border-box !important;
  min-height: 51px !important;
  padding: 11px 13px !important;
  gap: 12px !important;
  color: var(--cc-clean-nav-text) !important;
  border: 1px solid transparent !important;
  border-radius: 10px !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  filter: none !important;
  transform: none !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  font-style: normal !important;
  line-height: 1.2 !important;
  letter-spacing: -.012em !important;
}

html[data-style="clean"] :is(.sidebar, .portal-sidebar) :is(.nav-item, .cc-feedback-nav):is(:hover, :focus-visible, .active, [aria-current="page"]) {
  color: var(--cc-clean-nav-text) !important;
  border-color: transparent !important;
  background: var(--cc-clean-nav-highlight) !important;
  background-image: none !important;
  box-shadow: none !important;
  filter: none !important;
  transform: none !important;
}

html[data-style="clean"] :is(.sidebar, .portal-sidebar) :is(.nav-item, .cc-feedback-nav) :is(span, svg, .nav-icon, .nav-item-icon) {
  color: inherit !important;
  border-color: transparent !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
  filter: none !important;
  stroke: currentColor !important;
}

html[data-style="clean"] :is(.sidebar, .portal-sidebar) .cc-feedback-nav > svg {
  flex: 0 0 20px !important;
  width: 20px !important;
  height: 20px !important;
  margin: 0 !important;
}

html[data-style="clean"] :is(.sidebar, .portal-sidebar) :is(.nav-item, .cc-feedback-nav) :is(.nav-item-copy, .nav-item-copy strong) {
  color: inherit !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  font-style: normal !important;
  line-height: 1.2 !important;
  letter-spacing: -.012em !important;
}

html[data-style="clean"] :is(.sidebar, .portal-sidebar) .nav-item-copy {
  min-width: 0 !important;
  overflow: hidden !important;
}

html[data-style="clean"] :is(.sidebar, .portal-sidebar) .nav-item-copy strong {
  display: block !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}

html[data-style="clean"] :is(.sidebar, .portal-sidebar) :is(.nav-label, .sidebar-section-label, .sidebar-group-title, .nav-section-title) {
  color: var(--cc-clean-nav-muted) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  font-style: normal !important;
  line-height: 1.2 !important;
  letter-spacing: .075em !important;
  text-transform: none !important;
}

html[data-style="clean"] :is(.sidebar, .portal-sidebar) .assistant-selector {
  min-height: 48px !important;
  color: var(--cc-clean-nav-text) !important;
  border-color: var(--cc-clean-line) !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

html[data-style="clean"] :is(.sidebar, .portal-sidebar) .assistant-selector:is(:hover, :focus-visible, [aria-expanded="true"]) {
  color: var(--cc-clean-nav-text) !important;
  border-color: transparent !important;
  background: var(--cc-clean-nav-highlight) !important;
  box-shadow: none !important;
}

html[data-style="clean"] :is(.sidebar, .portal-sidebar) .assistant-selector-copy strong {
  color: var(--cc-clean-nav-text) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
  letter-spacing: -.012em !important;
}

html[data-style="clean"] :is(.sidebar, .portal-sidebar) .assistant-selector-copy small {
  color: var(--cc-clean-nav-muted) !important;
  font-size: 9px !important;
  font-weight: 600 !important;
  line-height: 1.1 !important;
  letter-spacing: .035em !important;
}

html[data-style="clean"] :is(.topbar, .app-topbar, .portal-topbar) :is(.language-toggle, .cc-language-trigger, .cc-language-standard:not(:has(> .cc-language-trigger))) {
  box-sizing: border-box !important;
  width: 70px !important;
  min-width: 70px !important;
  height: 40px !important;
  min-height: 40px !important;
  padding: 0 10px !important;
  color: var(--cc-clean-text) !important;
  border: 1px solid var(--cc-clean-line) !important;
  border-radius: 12px !important;
  background: var(--cc-clean-panel) !important;
  background-image: none !important;
  box-shadow: none !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}

html[data-style="clean"] :is(.topbar, .app-topbar, .portal-topbar) .cc-language-standard:has(> .cc-language-trigger) {
  box-sizing: border-box !important;
  width: 70px !important;
  min-width: 70px !important;
  height: 40px !important;
  min-height: 40px !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 12px !important;
  background: transparent !important;
  box-shadow: none !important;
}

html[data-style="clean"] :is(.topbar, .app-topbar, .portal-topbar) :is(.language-toggle, .cc-language-trigger, .cc-language-standard) :is(strong, .cc-language-code) {
  color: inherit !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  letter-spacing: normal !important;
}

/* Lock the CEO shell geometry and theme-specific neutral selection surface.
   Explicit theme values prevent an older assistant accent rule from leaking
   into the active item after switching between Clean Light and Clean Dark. */
html[data-style="clean"] body {
  --sidebar-w: 270px !important;
  --sidebar-width: 270px !important;
}

html[data-style="clean"] :is(.sidebar, .portal-sidebar) {
  width: 270px !important;
}

html[data-style="clean"][data-theme="light"] :is(.sidebar, .portal-sidebar) :is(.nav-item, .cc-feedback-nav):is(:hover, :focus-visible, .active, [aria-current="page"]) {
  color: #0d0d0d !important;
  background: #ececec !important;
}

html[data-style="clean"][data-theme="dark"] :is(.sidebar, .portal-sidebar) :is(.nav-item, .cc-feedback-nav):is(:hover, :focus-visible, .active, [aria-current="page"]) {
  color: #ececec !important;
  background: #2f2f2f !important;
}

html[data-style="clean"] :is(.profile, .user-mini, .user-profile, .profile-button, [data-cc-user-trigger]) strong {
  font-size: 13px !important;
  font-weight: 650 !important;
  line-height: 1.5 !important;
}

html[data-style="clean"] :is(.profile, .user-mini, .user-profile, .profile-button, [data-cc-user-trigger]) small {
  font-size: 11px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
}

/* User center stays neutral in Clean; status colors remain semantic. */
html[data-style="clean"] :is(.ccuc-menu, .ccuc-overlay) {
  --ccuc-accent: #4a4a4a !important;
  --ccuc-soft: var(--cc-clean-nav-highlight) !important;
  --ccuc-icon-accent: var(--ccuc-text) !important;
  --ccuc-icon-soft: var(--cc-clean-nav-highlight) !important;
}

html[data-style="clean"] :is(.ccuc-menu-icon, .ccuc-card-icon, .ccuc-tab-icon, .ccuc-session-icon) {
  color: var(--ccuc-text) !important;
  background: var(--cc-clean-nav-highlight) !important;
}

html[data-style="clean"] .ccuc-menu-head img {
  border-color: var(--cc-clean-line-strong) !important;
}

html[data-style="clean"] :is(.ccuc-tab.active, .ccuc-style-choice.active, .ccuc-segmented button.active) {
  color: var(--ccuc-text) !important;
  border-color: transparent !important;
  background: var(--cc-clean-nav-highlight) !important;
  box-shadow: none !important;
}

html[data-style="clean"] :is(.ccuc-tab, .ccuc-style-choice, .ccuc-segmented button):is(:hover, :focus-visible) {
  color: var(--ccuc-text) !important;
  border-color: transparent !important;
  background: var(--cc-clean-nav-highlight) !important;
  box-shadow: none !important;
}

html[data-style="clean"] .ccuc-section-heading span {
  color: var(--ccuc-text) !important;
}

html[data-style="clean"] .ccuc-panel {
  scrollbar-color: var(--cc-clean-nav-muted) var(--ccuc-bg-3) !important;
}

html[data-style="clean"] .ccuc-panel::-webkit-scrollbar-thumb {
  background: var(--cc-clean-nav-muted) !important;
}

@media (max-width: 1000px) {
  html[data-style="clean"] .mobile-nav-item {
    color: var(--cc-clean-nav-muted) !important;
    background: transparent !important;
    background-image: none !important;
    touch-action: manipulation !important;
    pointer-events: auto !important;
  }

  html[data-style="clean"] .mobile-nav-item > * {
    pointer-events: none !important;
  }

  html[data-style="clean"] .mobile-nav-item:is(:hover, :focus-visible, .active) {
    color: var(--cc-clean-nav-text) !important;
    background: var(--cc-clean-nav-highlight) !important;
    background-image: none !important;
    box-shadow: none !important;
  }

  html[data-style="clean"] .mobile-nav-item :is(span, svg, small) {
    color: inherit !important;
    background: transparent !important;
    box-shadow: none !important;
    filter: none !important;
  }
}

/* CFO uses its own profile/settings surfaces; keep them on the same neutral
   Clean language as the shared CEO user centre. */
html[data-style="clean"] .cc-sidebar-toggle {
  color: var(--cc-clean-nav-text) !important;
  border-color: var(--cc-clean-line) !important;
  background: transparent !important;
  background-image: none !important;
  box-shadow: none !important;
}

html[data-style="clean"] .cc-sidebar-toggle:is(:hover, :focus-visible) {
  color: var(--cc-clean-nav-text) !important;
  border-color: transparent !important;
  background: var(--cc-clean-nav-highlight) !important;
}

html[data-style="clean"] .cc-sidebar-toggle :is(span, svg) {
  color: inherit !important;
  background: transparent !important;
  stroke: currentColor !important;
}

html[data-style="clean"][data-theme] .profile-menu {
  color: var(--cc-clean-text) !important;
  border-color: var(--cc-clean-line) !important;
  background: var(--cc-clean-panel) !important;
  box-shadow: var(--cc-clean-shadow) !important;
}

html[data-style="clean"][data-theme] .profile-menu-head {
  color: var(--cc-clean-text) !important;
  border-color: var(--cc-clean-line) !important;
}

html[data-style="clean"][data-theme] .profile-menu-head img {
  border-color: var(--cc-clean-line-strong) !important;
}

html[data-style="clean"][data-theme] .profile-menu-head small {
  color: var(--cc-clean-muted) !important;
}

html[data-style="clean"][data-theme] .profile-menu :is(button, a) {
  min-height: 51px !important;
  color: var(--cc-clean-text) !important;
  border-color: transparent !important;
  background: transparent !important;
  font-size: 14px !important;
  font-weight: 500 !important;
  letter-spacing: -.012em !important;
}

html[data-style="clean"][data-theme] .profile-menu :is(button, a):is(:hover, :focus-visible) {
  color: var(--cc-clean-text) !important;
  background: var(--cc-clean-nav-highlight) !important;
}

html[data-style="clean"][data-theme] :is(.profile-menu-icon, .user-settings-nav button > span) {
  color: var(--cc-clean-text) !important;
  border-color: transparent !important;
  background: var(--cc-clean-nav-highlight) !important;
  box-shadow: none !important;
}

html[data-style="clean"][data-theme] .profile-menu-separator {
  background: var(--cc-clean-line) !important;
}

html[data-style="clean"][data-theme="light"] .profile-menu button em {
  color: #884000 !important;
  background: #fff2d8 !important;
}

html[data-style="clean"][data-theme="dark"] .profile-menu button em {
  color: #ffc078 !important;
  background: #3b2a1b !important;
}

html[data-style="clean"][data-theme="light"] .profile-menu button em.is-secure {
  color: #075f43 !important;
  background: #dff7ed !important;
}

html[data-style="clean"][data-theme="dark"] .profile-menu button em.is-secure {
  color: #68deb0 !important;
  background: #18372d !important;
}

html[data-style="clean"][data-theme="light"] .profile-menu .danger,
html[data-style="clean"][data-theme="light"] .profile-menu .danger:is(:hover, :focus-visible) {
  color: #a51f3a !important;
}

html[data-style="clean"][data-theme="dark"] .profile-menu .danger,
html[data-style="clean"][data-theme="dark"] .profile-menu .danger:is(:hover, :focus-visible) {
  color: #ff98aa !important;
}

html[data-style="clean"][data-theme] .user-settings-nav button {
  color: var(--cc-clean-muted) !important;
  border-color: transparent !important;
  background: transparent !important;
  box-shadow: none !important;
}

html[data-style="clean"][data-theme] .user-settings-nav button:is(:hover, :focus-visible, .active) {
  color: var(--cc-clean-text) !important;
  border-color: transparent !important;
  background: var(--cc-clean-nav-highlight) !important;
  box-shadow: none !important;
}

html[data-style="clean"][data-theme] .user-settings-modal .settings-segmented button {
  color: var(--cc-clean-muted) !important;
  border-color: transparent !important;
  background: transparent !important;
  box-shadow: none !important;
}

html[data-style="clean"][data-theme] .user-settings-modal .settings-segmented button:is(:hover, :focus-visible, .active) {
  color: var(--cc-clean-text) !important;
  border-color: transparent !important;
  background: var(--cc-clean-nav-highlight) !important;
  box-shadow: none !important;
}
