/* Unified UI V2: scoped visual enhancement of the existing admin application. */
html.ui-unified body.ui-admin {
  --p: var(--ui-primary); --dark: var(--ui-ink); --text: var(--ui-ink);
  --gray: var(--ui-muted); --line: var(--ui-border); --bg: var(--ui-bg);
  --shadow: var(--ui-shadow); --workspace-green: var(--ui-primary);
  --workspace-ink: var(--ui-ink); --workspace-line: var(--ui-border);
  --tet-admin-primary: var(--ui-primary); --tet-admin-muted: var(--ui-muted);
  --tet-admin-border: var(--ui-border); --tet-admin-soft: #eaf5f1;
  font-family: var(--ui-font-body); font-size: 14px; line-height: 1.6;
  background: var(--ui-bg); color: var(--ui-ink);
}
html.ui-unified body.ui-admin #adminShell {
  --workspace-green: var(--ui-primary); --workspace-ink: var(--ui-ink);
  --workspace-line: var(--ui-border);
}
html.ui-unified body.ui-admin :is(h1,h2,h3,h4) { font-family: var(--ui-font-heading); color: var(--ui-ink); line-height: 1.45; }
html.ui-unified body.ui-admin :is(.adminMain,.adminView) { min-width: 0; background: var(--ui-bg); }
html.ui-unified body.ui-admin .adminView { padding: 28px; }
html.ui-unified body.ui-admin .adminTopbar {
  min-height: 108px; height: auto; padding: 20px 28px; gap: 16px;
  top: var(--ui-top-offset,0px); border-color: var(--ui-border);
  background: #fff; box-shadow: 0 2px 12px #173d3804;
}
html.ui-unified body.ui-admin .adminTopbar > div:first-of-type { min-width: 0; }
html.ui-unified body.ui-admin .adminTopbar #viewTitle { font-size: 25px; line-height: 1.4; white-space: normal; overflow-wrap: anywhere; }
html.ui-unified body.ui-admin .workspaceBreadcrumb { color: var(--ui-muted); font-size: 12px; line-height: 1.6; margin-bottom: 5px; overflow-wrap: anywhere; }
html.ui-unified body.ui-admin .adminTopbar #viewSubtitle { color: var(--ui-muted); margin: 4px 0 0; font-size: 13px; }
html.ui-unified body.ui-admin .adminSidebar {
  top: var(--ui-top-offset,0px); width: 250px; padding: 24px 16px 16px;
  background: #173d38; box-shadow: 4px 0 24px #173d3808;
}
html.ui-unified body.ui-admin .adminSidebar nav { min-height: 0; flex: 1; overflow-y: auto; overscroll-behavior: contain; }
html.ui-unified body.ui-admin .adminBrand { padding-bottom: 24px; }
html.ui-unified body.ui-admin .adminSidebar nav a { border-radius: 10px; min-height: 44px; font-weight: 500; color: #c5ded6; }
html.ui-unified body.ui-admin .adminSidebar nav a.active { color: #173d38; background: #d8eee5; font-weight: 700; }
html.ui-unified body.ui-admin .adminSidebar .admin-nav-group-toggle { color: #b9d9cd; letter-spacing: .03em; }
html.ui-unified body.ui-admin .sidebarBottom { flex-shrink: 0; margin-top: 14px; border-top: 1px solid #ffffff1a; }

/* Reuse each page's structure, with one surface language. */
html.ui-unified body.ui-admin :is(.adminPanel,.reviewCard,.guideEditorCard,.guideSideCard,.rs-panel,.managementTools,.storeWorkspaceSection,.aiMaterialsCard,.siteQaCard,.aiSourceCard,.merchantStoreCard) {
  background: #fff; border-color: var(--ui-border); border-radius: var(--ui-radius); box-shadow: var(--ui-shadow); min-width: 0;
}
html.ui-unified body.ui-admin :is(.managementWorkspace,.rs-admin,.aiWorkspace) { color: var(--ui-ink); }
html.ui-unified body.ui-admin .managementWorkspace a.managementEntry { border-color: var(--ui-border); border-radius: var(--ui-radius); color: var(--ui-ink); box-shadow: var(--ui-shadow); }
html.ui-unified body.ui-admin .managementWorkspace a.managementEntry:hover { border-color: #83b4a6; background: #fcfefd; }
html.ui-unified body.ui-admin :is(.managementIntro p,.managementGroupHead p,.managementEntryBody>span,.workbenchIntro p,.workspaceUpdated,.workspaceFootnote,.workspaceCustomer,.rs-muted,.aiWorkspaceHeader p) { color: var(--ui-muted); }
html.ui-unified body.ui-admin :is(.panelHead,.detailHeader,.settingsFormHead,.businessDataHead,.aiWorkspaceHeader,.petReviewHeader) { gap: 16px; align-items: flex-start; }
html.ui-unified body.ui-admin :is(.panelHead,.settingsFormHead,.aiWorkspaceHeader) h2 { font-size: 20px; }

/* Labels + values: regular metrics and compact metrics retain their layouts. */
html.ui-unified body.ui-admin :is(.statsGrid,.guideAdminStats,.mediaStats,.adminQueueGrid,.taskOverview,.rs-kpis,.businessDataCards,.dataMetricGrid,.marketKpiGrid,.analyticsCards) { gap: 16px; }
html.ui-unified body.ui-admin :is(.statsGrid>article,.guideAdminStats>article,.mediaStats>article,.adminQueueCard,.taskOverview>a,.businessDataCards>a,.dataMetric,.marketMetric,.analyticsCards>div,.rs-kpi) {
  border: 1px solid var(--ui-border); border-radius: var(--ui-radius);
  padding: 20px; background: #fff; box-shadow: var(--ui-shadow); min-width: 0;
  color: var(--ui-ink); text-decoration: none;
}
html.ui-unified body.ui-admin :is(.statsGrid>article,.guideAdminStats>article,.mediaStats>article,.adminQueueCard,.taskOverview>a,.businessDataCards>a,.dataMetric,.marketMetric,.analyticsCards>div,.rs-kpi) :is(span,small,h3) { color: var(--ui-muted); }
html.ui-unified body.ui-admin :is(.statsGrid b,.guideAdminStats b,.mediaStats b,.adminQueueCard strong,.taskOverview strong,.businessDataCards strong,.dataMetric strong,.marketMetricValue strong,.analyticsCards strong,.rs-kpi strong) {
  display: block; font-family: var(--ui-font-heading); color: var(--ui-ink);
  font-size: 28px; font-weight: 600; line-height: 1.3; margin: 6px 0 2px; font-variant-numeric: tabular-nums;
}
html.ui-unified body.ui-admin .subscriptionMetric { border-color: var(--ui-border); border-radius: 12px; background: #fff; padding: 16px; }
html.ui-unified body.ui-admin .subscriptionMetric span { color: var(--ui-muted); font-size: 12px; }
html.ui-unified body.ui-admin .subscriptionMetric strong { font-family: var(--ui-font-heading); font-size: 24px; color: var(--ui-ink); line-height: 1.3; }
html.ui-unified body.ui-admin .analyticsCards .analyticsTotal { background: var(--ui-primary); border-color: var(--ui-primary); }
html.ui-unified body.ui-admin .analyticsCards .analyticsTotal :is(span,strong) { color: #fff; }
html.ui-unified body.ui-admin .adminQueueCard.risk { border-top: 3px solid #b64238; }

/* Same selected-view treatment for links and buttons, preserving tab variants. */
html.ui-unified body.ui-admin :is(.workspaceTabs,.customerViewNavigation,.dataViewTabs,.storeWorkspaceTabs,.planWorkspaceTabs,.settingsGroupTabs,.subscriptionDisplayTabs,.rs-admin nav) { gap: 8px; }
html.ui-unified body.ui-admin :is(.workspaceTabs,.customerViewNavigation,.dataViewTabs,.storeWorkspaceTabs,.planWorkspaceTabs,.settingsGroupTabs,.subscriptionDisplayTabs,.rs-admin nav) > :is(a,button) {
  min-width: 0; min-height: 44px; padding: 10px 16px; border: 1px solid var(--ui-border);
  border-radius: 10px; font-family: var(--ui-font-body); font-size: 14px; font-weight: 600;
  line-height: 1.5; text-decoration: none; background: #fff; color: var(--ui-muted);
}
html.ui-unified body.ui-admin :is(.workspaceTabs,.customerViewNavigation,.dataViewTabs,.storeWorkspaceTabs,.planWorkspaceTabs,.settingsGroupTabs,.subscriptionDisplayTabs,.rs-admin nav) > :is(a,button):is(.active,[aria-current=page],[aria-current=true],[aria-pressed=true]) {
  color: #fff; border-color: var(--ui-primary); background: var(--ui-primary);
}
html.ui-unified body.ui-admin :is(.workspaceTabs,.settingsGroupTabs) { scrollbar-width: thin; padding-bottom: 10px; }
html.ui-unified body.ui-admin :is(.filterGrid,.mediaFilterGrid,.dataFilters,.marketMetricsFilters,.analyticsFilters,.managementForm) label { color: var(--ui-ink); }
html.ui-unified body.ui-admin :is(.adminMain,.loginCard) :is(input:not([type=checkbox]):not([type=radio]),select,textarea) { border-color: #bfd5cc; border-radius: 10px; background: #fcfefd; color: var(--ui-ink); }
html.ui-unified body.ui-admin :is(.adminStatus,.adminError,.adminLoadMessage,.workspaceError,.emptyState,.managementEmpty) { border-radius: 12px; line-height: 1.7; }
html.ui-unified body.ui-admin :is(.tableWrap,.taskTableWrap,.marketGroupsWrap,.rs-table-wrap,.ui-table-wrap) { max-width: 100%; min-width: 0; overflow-x: auto; overscroll-behavior-x: contain; border-radius: 12px; scrollbar-width: thin; }
html.ui-unified body.ui-admin table.ui-data-table { min-width: var(--ui-table-min,680px); table-layout: auto; }
html.ui-unified body.ui-admin table.ui-data-table :is(th,td) { word-break: normal; overflow-wrap: normal; }
html.ui-unified body.ui-admin th { color: var(--ui-muted); background: #f2f8f5; font-size: 12px; font-weight: 600; line-height: 1.5; }
html.ui-unified body.ui-admin :is(th,td) { border-color: #e1ece6; }
html.ui-unified body.ui-admin .ui-scroll-hint { display: block; margin: 0 0 7px; color: var(--ui-muted); font-size: 11px; letter-spacing: .02em; text-align: right; }

/* The guide header uses real document rows, so variable-length crumbs/statuses cannot collide. */
html.ui-unified body.ui-admin .adminTopbar.guideEditorTopbar {
  display: grid; grid-template-columns: minmax(0,1fr); justify-content: stretch;
  align-items: center; gap: 16px; min-height: 0; height: auto; padding: 18px 28px;
}
html.ui-unified body.ui-admin .adminTopbar.guideEditorTopbar > div:first-of-type {
  position: static; inset: auto; transform: none; width: 100%; max-width: none;
  z-index: auto; pointer-events: auto; text-align: center;
}
html.ui-unified body.ui-admin .adminTopbar.guideEditorTopbar #guideActionBar {
  position: static; inset: auto; transform: none; z-index: auto; pointer-events: auto;
  display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center;
  gap: 10px 18px; padding: 0; margin: 0; border: 0; background: transparent; box-shadow: none;
}
html.ui-unified body.ui-admin .adminTopbar.guideEditorTopbar :is(.guideActionLeft,.guideActionRight) {
  display: flex; min-width: 0; width: auto; align-items: center; flex-wrap: wrap; gap: 8px;
  position: static; pointer-events: auto;
}
html.ui-unified body.ui-admin .adminTopbar.guideEditorTopbar .guideActionRight { justify-content: flex-end; }
html.ui-unified body.ui-admin #guideLastSaved { color: var(--ui-muted); line-height: 1.6; white-space: normal; overflow-wrap: anywhere; }
html.ui-unified body.ui-admin .adminTopbar.guideEditorTopbar .guideActionFeedbacks {
  position: static; inset: auto; transform: none; grid-column: 1 / -1; max-width: 100%;
  min-width: 0; pointer-events: auto; text-align: left;
}
html.ui-unified body.ui-admin .adminTopbar.guideEditorTopbar .guideActionFeedbacks:not(:has(>p:not([hidden]))) { display: none; }
html.ui-unified body.ui-admin .adminTopbar.guideEditorTopbar .topActions:has(> :not([hidden])) { justify-content: flex-end; }
html.ui-unified body.ui-admin .adminTopbar.guideEditorTopbar .topActions:not(:has(> :not([hidden]))) { display: none; }
html.ui-unified body.ui-admin #guideForm .guideSideFields { top: calc(var(--ui-top-offset,0px) + 186px); }

@media (max-width: 1100px) {
  html.ui-unified body.ui-admin .adminTopbar.guideEditorTopbar #guideActionBar { grid-template-columns: minmax(0,1fr); }
  html.ui-unified body.ui-admin .adminTopbar.guideEditorTopbar .guideActionRight { justify-content: flex-end; }
}
@media (max-width: 850px) {
  html.ui-unified body.ui-admin .adminSidebar { width: min(292px,calc(100vw - 32px)); z-index: 60; }
  html.ui-unified body.ui-admin .adminSidebar nav { max-height: none; }
  html.ui-unified body.ui-admin .adminMain { margin-left: 0; }
  html.ui-unified body.ui-admin .adminTopbar { padding: 16px; min-height: 96px; flex-wrap: wrap; }
  html.ui-unified body.ui-admin .adminTopbar #viewTitle { font-size: 22px; }
  html.ui-unified body.ui-admin .adminTopbar #viewSubtitle { display: block; }
  html.ui-unified body.ui-admin #sidebarToggle { display: inline-flex; flex: 0 0 44px; align-items: center; justify-content: center; align-self: start; }
  html.ui-unified body.ui-admin .adminTopbar > div:first-of-type { flex: 1 1 180px; }
  html.ui-unified body.ui-admin .adminTopbar.guideEditorTopbar { grid-template-columns: 44px minmax(0,1fr); gap: 12px; padding: 16px; }
  html.ui-unified body.ui-admin .adminTopbar.guideEditorTopbar > div:first-of-type { grid-column: 2; text-align: left; }
  html.ui-unified body.ui-admin .adminTopbar.guideEditorTopbar #guideActionBar { grid-column: 1 / -1; }
  html.ui-unified body.ui-admin .adminView { padding: 20px 16px; }
  html.ui-unified body.ui-admin :is(.guideAdminStats,.mediaStats,.rs-kpis) { grid-template-columns: repeat(2,minmax(0,1fr)); }
  html.ui-unified body.ui-admin #guideForm .guideSideFields { position: static; }
  html.ui-unified body.ui-admin :is(.storeWorkspaceTabs,.dataViewTabs) { grid-template-columns: repeat(2,minmax(0,1fr)); }
}
@media (max-width: 520px) {
  html.ui-unified body.ui-admin .adminView { padding: 16px 12px; }
  html.ui-unified body.ui-admin .adminTopbar { padding: 14px 12px; gap: 10px; }
  html.ui-unified body.ui-admin .adminTopbar #viewTitle { font-size: 21px; }
  html.ui-unified body.ui-admin .adminTopbar .topActions { margin-left: auto; flex-wrap: wrap; }
  html.ui-unified body.ui-admin .adminTopbar.guideEditorTopbar { padding: 14px 12px; }
  html.ui-unified body.ui-admin .adminTopbar.guideEditorTopbar .guideActionLeft { gap: 8px; }
  html.ui-unified body.ui-admin .adminTopbar.guideEditorTopbar .guideActionLeft .secondary { flex-basis: 100%; width: fit-content; }
  html.ui-unified body.ui-admin .adminTopbar.guideEditorTopbar .guideActionRight { display: grid; grid-template-columns: .8fr 1.3fr .8fr; width: 100%; gap: 6px; }
  html.ui-unified body.ui-admin .adminTopbar.guideEditorTopbar .guideActionRight button { min-width: 0; padding: 10px 8px; font-size: 14px; white-space: normal; }
  html.ui-unified body.ui-admin :is(.statsGrid,.guideAdminStats,.mediaStats,.adminQueueGrid,.taskOverview,.rs-kpis,.businessDataCards,.analyticsCards) { gap: 10px; }
  html.ui-unified body.ui-admin :is(.statsGrid>article,.guideAdminStats>article,.mediaStats>article,.adminQueueCard,.taskOverview>a,.businessDataCards>a,.analyticsCards>div,.rs-kpi) { padding: 16px 12px; border-radius: 14px; }
  html.ui-unified body.ui-admin :is(.statsGrid b,.guideAdminStats b,.mediaStats b,.adminQueueCard strong,.taskOverview strong,.businessDataCards strong,.analyticsCards strong,.rs-kpi strong) { font-size: 25px; }
  html.ui-unified body.ui-admin :is(.panelHead,.detailHeader,.settingsFormHead,.aiWorkspaceHeader) { flex-wrap: wrap; }
  html.ui-unified body.ui-admin .customerViewNavigation { grid-template-columns: repeat(2,minmax(0,1fr)); }
  html.ui-unified body.ui-admin :is(.customerViewNavigation,.storeWorkspaceTabs,.dataViewTabs) > :is(a,button) { padding: 10px 8px; }
  html.ui-unified body.ui-admin .rs-admin nav { gap: 6px; }
  html.ui-unified body.ui-admin .rs-admin nav button { flex: 1 1 100px; padding: 10px; }
  html.ui-unified body.ui-admin .loginCard { padding: 24px; }
}
@media (max-width: 760px) {
  html.ui-unified body.ui-admin .rs-admin .rs-lead-table.ui-data-table { min-width: 0; }
}
@media (max-width: 700px) {
  html.ui-unified body.ui-admin .auditWorkbench .taskTable.ui-data-table { min-width: 0; }
}
@media (prefers-reduced-motion: reduce) {
  html.ui-unified body.ui-admin * { scroll-behavior: auto; }
}

/* V2: action-first workspace; original controls, links and access scope retained. */
html.ui-unified body.ui-admin .ui-action-first { margin:0; }
html.ui-unified body.ui-admin .ui-action-first .taskCenterHead { margin-bottom:12px; }
html.ui-unified body.ui-admin .ui-account-notice { padding:12px 14px; margin:0 0 14px; border-left:3px solid #a77a27; background:#fff7e8; border-radius:8px; font-size:13px; }
html.ui-unified body.ui-admin .ui-account-notice .ui-next-step { display:flex; width:fit-content; min-height:44px; align-items:center; font-weight:600; color:var(--ui-primary); }
html.ui-unified body.ui-admin .ui-account-notice small { display:block; font-size:12px; line-height:1.7; }
html.ui-unified body.ui-admin .ui-action-first .taskOverview { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
html.ui-unified body.ui-admin .ui-action-first .taskOverview>a { padding:12px; border-radius:12px; box-shadow:none; gap:2px; background:#f0f8f4; }
html.ui-unified body.ui-admin .ui-action-first .taskOverview strong { font-size:24px; margin:2px 0; }
html.ui-unified body.ui-admin .ui-action-first .taskOverview small { font-size:11px; }
html.ui-unified body.ui-admin :is(.ui-task-context,.ui-task-filter-disclosure) { padding:8px 0; border:0; border-top:1px solid var(--ui-border); border-radius:0; margin-top:14px; background:transparent; }
html.ui-unified body.ui-admin :is(.ui-task-context,.ui-task-filter-disclosure)>summary { cursor:pointer; min-height:44px; align-content:center; color:var(--ui-primary); font-weight:600; font-size:13px; }
html.ui-unified body.ui-admin .ui-task-context p { font-size:12px; color:var(--ui-muted); }
html.ui-unified body.ui-admin .ui-task-empty strong { display:block; margin:4px 0 8px; color:var(--ui-ink); }
html.ui-unified body.ui-admin .ui-task-empty::before { display:none; }
html.ui-unified body.ui-admin .ui-task-filter-disclosure .taskFilters { margin:8px 0; }
html.ui-unified body.ui-admin .ui-filter-button,
html.ui-unified body.ui-admin .ui-list-view-toggle,
html.ui-unified body.ui-admin #refreshButton { background:#edf6f2!important; color:var(--ui-primary)!important; border:1px solid var(--ui-border)!important; box-shadow:none!important; }
@media (max-width:850px) {
  html.ui-unified body.ui-admin .adminTopbar:not(.guideEditorTopbar) { display:grid; grid-template-columns:44px minmax(0,1fr) auto; align-items:center; min-height:96px; gap:6px 10px; padding:12px; }
  html.ui-unified body.ui-admin .adminTopbar:not(.guideEditorTopbar)>div:first-of-type { display:contents; }
  html.ui-unified body.ui-admin .adminTopbar:not(.guideEditorTopbar) #sidebarToggle { grid-column:1; grid-row:1; margin:0; align-self:center; }
  html.ui-unified body.ui-admin .adminTopbar:not(.guideEditorTopbar) #viewTitle { grid-column:2; grid-row:1; font-size:20px; margin:0; }
  html.ui-unified body.ui-admin .adminTopbar:not(.guideEditorTopbar) .topActions { grid-column:3; grid-row:1; margin:0; gap:6px; }
  html.ui-unified body.ui-admin .adminTopbar:not(.guideEditorTopbar) #workspaceBreadcrumb { grid-column:1/-1; grid-row:2; margin:0; font-size:11px; }
  html.ui-unified body.ui-admin .adminTopbar:not(.guideEditorTopbar) #workspaceBreadcrumb { display:none; }
  html.ui-unified body.ui-admin .adminTopbar:not(.guideEditorTopbar) #viewSubtitle { grid-column:1/-1; grid-row:3; margin:0; font-size:12px; }
  html.ui-unified body.ui-admin #workbenchView .adminPanel { padding:16px; box-shadow:none; }
}
html.ui-unified body.ui-admin .ui-list-view-toggle { display:none; }
@media (max-width:700px) {
  html.ui-unified body.ui-admin .ui-list-view-toggle { display:inline-flex; margin:8px 0 12px; }
  html.ui-unified body.ui-admin table.ui-mobile-summary-table:not(.ui-list-full) { display:block; min-width:0!important; width:100%; }
  html.ui-unified body.ui-admin .ui-mobile-summary-table:not(.ui-list-full) thead { display:none; }
  html.ui-unified body.ui-admin .ui-mobile-summary-table:not(.ui-list-full) tbody { display:grid; gap:12px; }
  html.ui-unified body.ui-admin .ui-mobile-summary-table:not(.ui-list-full) tr { display:grid; grid-template-columns:minmax(0,1fr); border:1px solid var(--ui-border); border-radius:12px; padding:12px; background:white; }
  html.ui-unified body.ui-admin .ui-mobile-summary-table:not(.ui-list-full) td { display:none; border:0; height:auto; min-width:0; max-width:none; padding:6px 0; white-space:normal; overflow-wrap:anywhere; }
  html.ui-unified body.ui-admin .ui-mobile-summary-table:not(.ui-list-full) td:is(.ui-summary-cell,[colspan]) { display:block; }
  html.ui-unified body.ui-admin .ui-mobile-summary-table:not(.ui-list-full) td:before { content:attr(data-label); display:block; font-size:11px; color:var(--ui-muted); margin-bottom:3px; }
  html.ui-unified body.ui-admin .ui-mobile-summary-table:not(.ui-list-full) td:first-child { font-weight:600; }
  html.ui-unified body.ui-admin .ui-mobile-summary-table:not(.ui-list-full) td:last-child { display:flex; flex-wrap:wrap; gap:6px; }
  html.ui-unified body.ui-admin .ui-mobile-summary-table:not(.ui-list-full) td:last-child:before { flex-basis:100%; }
}

