:root {
  color-scheme: light;
  --ink: #17201c;
  --muted: #5f6f68;
  --line: #dce4df;
  --paper: #fbfcfa;
  --panel: #ffffff;
  --accent: #0f766e;
  --accent-strong: #115e59;
  --warn: #b42318;
  --tab: #f2f7f4;
  --tab-shadow: rgba(18, 40, 31, .14);
  --rail: 66px;
  --shadow: 0 18px 50px rgba(31, 42, 36, .1);
}

body.theme-dark {
  color-scheme: dark;
  --ink: #edf7f2;
  --muted: #acc5ba;
  --line: #2f4a41;
  --paper: #101815;
  --panel: #17231f;
  --accent: #54d3bd;
  --accent-strong: #32b69f;
  --warn: #ff8a7a;
  --tab: #21322d;
  --tab-shadow: rgba(0, 0, 0, .28);
  --shadow: 0 18px 50px rgba(0, 0, 0, .32);
}

body.density-compact {
  --rail: 58px;
}

body.reduce-motion *,
body.reduce-motion *::before,
body.reduce-motion *::after {
  animation-duration: .001ms !important;
  animation-iteration-count: 1 !important;
  scroll-behavior: auto !important;
  transition-duration: .001ms !important;
}

* {
  box-sizing: border-box;
}

body {
  margin: 0;
  min-height: 100vh;
  color: var(--ink);
  background:
    linear-gradient(120deg, rgba(15, 118, 110, .08), rgba(91, 141, 104, .08) 45%, rgba(205, 227, 213, .32)),
    var(--paper);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body.theme-dark {
  background:
    linear-gradient(120deg, rgba(84, 211, 189, .08), rgba(39, 91, 79, .16) 45%, rgba(15, 24, 21, .72)),
    var(--paper);
}

button,
input,
textarea,
select {
  font: inherit;
}

button {
  cursor: pointer;
}

[hidden] {
  display: none !important;
}

dialog {
  width: min(720px, calc(100vw - 24px));
  max-width: calc(100vw - 24px);
  max-height: calc(100dvh - 24px);
  padding: 0;
  border: 0;
  border-radius: 8px;
  overflow: hidden;
}

dialog::backdrop {
  background: rgba(23, 32, 28, .28);
}

svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2;
}

.app-shell {
  display: grid;
  grid-template-columns: var(--rail) minmax(0, 1fr);
  min-height: 100vh;
}

.auth-locked .app-shell {
  grid-template-columns: minmax(0, 1fr);
}

.auth-locked .sidebar,
.auth-locked .workspace-bar {
  display: none;
}

.auth-locked .workspace-main {
  display: grid;
  align-content: start;
  min-height: 100vh;
  padding: 28px;
}

.floating-scroll-controls {
  display: none !important;
  position: fixed;
  right: 18px;
  top: var(--floating-scroll-top, 104px);
  bottom: var(--floating-scroll-bottom, 18px);
  z-index: 1200;
  width: min(260px, calc(100vw - 36px));
  max-height: calc(100dvh - var(--floating-scroll-top, 104px) - var(--floating-scroll-bottom, 18px));
}

.floating-scroll-card {
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  gap: 10px;
  height: 100%;
  min-height: 0;
  padding: 10px;
  border: 1px solid rgba(15, 118, 110, .24);
  border-radius: 10px;
  background: rgba(255, 255, 255, .94);
  box-shadow: 0 10px 24px rgba(23, 32, 28, .15);
  backdrop-filter: blur(10px);
}

.floating-scroll-title {
  font-size: .72rem;
  font-weight: 850;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: var(--muted);
}

.floating-section-list {
  display: grid;
  align-content: start;
  gap: 6px;
  min-height: 0;
  overflow: auto;
  overscroll-behavior: contain;
  padding-right: 2px;
}

.floating-section-list button {
  display: block;
  justify-content: flex-start;
  width: 100%;
  max-width: 100%;
  min-height: 34px;
  height: auto;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  text-align: left;
  white-space: nowrap;
}

.floating-scroll-controls .floating-section-list button {
  display: block;
  min-width: 0;
  max-width: 100%;
  padding: 8px 10px;
}

.floating-scroll-actions {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px;
}

.floating-scroll-controls button {
  display: inline-flex;
  gap: 6px;
  align-items: center;
  justify-content: center;
  min-width: 92px;
  min-height: 40px;
  padding: 8px 10px;
  border: 1px solid rgba(15, 118, 110, .24);
  border-radius: 8px;
  background: rgba(255, 255, 255, .78);
  color: var(--accent-strong);
}

.floating-scroll-controls button:disabled {
  cursor: default;
  opacity: .45;
}

.floating-scroll-controls svg {
  width: 16px;
  height: 16px;
}

body.theme-dark .floating-scroll-card {
  background: rgba(23, 35, 31, .94);
  border-color: rgba(84, 211, 189, .28);
}

body.theme-dark .floating-scroll-controls button {
  background: rgba(17, 24, 39, .78);
  border-color: rgba(84, 211, 189, .28);
}

.auth-locked .console-workspace {
  max-width: 980px;
  width: 100%;
  margin: 0 auto;
}

.sidebar {
  position: sticky;
  top: 0;
  z-index: 15;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 14px;
  height: 100vh;
  padding: 14px 0;
  background: rgba(255, 255, 255, .78);
  border-right: 1px solid var(--line);
  backdrop-filter: blur(14px);
  overflow: visible;
}

.brand-block {
  display: none;
  place-items: center;
}

.brand-mark {
  display: grid;
  place-items: center;
  width: 46px;
  height: 46px;
  color: #fff;
  background: #1d6f62;
  border-radius: 8px;
}

.brand-mark svg {
  width: 32px;
  height: 32px;
}

.brand-mark path:first-child {
  fill: currentColor;
  opacity: .16;
}

.brand-block h1,
.brand-block p,
.panel h2 {
  margin: 0;
}

.brand-block h1 {
  font-size: 1.08rem;
  line-height: 1.2;
}

.brand-block p {
  margin-top: 3px;
  color: var(--muted);
  font-size: .85rem;
}

.tab-control-button,
.stacked-form button,
.preferences-button,
.update-manager-button,
.sync-backup-button,
.logout-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 42px;
  border: 0;
  border-radius: 8px;
  color: #fff;
  background: var(--accent);
}

.tab-control-button {
  min-height: 38px;
  padding: 0 12px;
}

.tab-control-button:hover,
.stacked-form button:hover,
.preferences-button:hover,
.update-manager-button:hover,
.sync-backup-button:hover,
.logout-button:hover {
  background: var(--accent-strong);
}

.tab-control-button {
  color: var(--accent);
  background: #eef8f5;
  border: 1px solid #bdd6cb;
}

.tab-control-button:hover {
  color: #fff;
}

.preferences-button,
.update-manager-button,
.sync-backup-button,
.logout-button {
  padding: 0 12px;
  white-space: nowrap;
}

.preferences-button svg,
.update-manager-button svg,
.sync-backup-button svg,
.logout-button svg {
  width: 18px;
  height: 18px;
}

.logout-button {
  border: 1px solid rgba(127, 29, 29, .22);
  background: #991b1b;
}

.logout-button:hover {
  background: #7f1d1d;
}

.preferences-button {
  color: #123b36;
  border: 1px solid #bdd6cb;
  background: #eef8f5;
}

.preferences-button:hover,
.preferences-button[aria-expanded="true"] {
  color: #fff;
  background: var(--accent-strong);
}

.update-manager-button {
  color: #123b36;
  border: 1px solid #bdd6cb;
  background: #eef8f5;
}

.update-manager-button[data-update-status="available"] {
  color: #7c2d12;
  border-color: #fb923c;
  background: #ffedd5;
}

.update-manager-button[data-update-status="updating"],
.update-manager-button[data-update-status="checking"] {
  color: #075985;
  border-color: #7dd3fc;
  background: #e0f2fe;
}

.update-manager-button[data-update-status="error"],
.update-manager-button[data-update-status="offline"] {
  color: #991b1b;
  border-color: #fca5a5;
  background: #fee2e2;
}

.workspace-tabs {
  display: none !important;
  flex: 1;
  flex-direction: column;
  align-items: flex-start;
  gap: 12px;
  width: 100%;
  min-height: 220px;
  overflow-y: auto;
  overflow-x: visible;
  padding: 8px 0 8px 8px;
  scrollbar-width: thin;
}

.subtab-rail,
.sectiontab-rail {
  display: none !important;
}

select {
  border-color: #f2b35d;
  background-color: #fff4dd;
}

body.theme-dark select,
body.theme-dark input,
body.theme-dark textarea {
  color: var(--ink);
  border-color: #6f5f33;
  background-color: #2a2518;
}

body.theme-dark .sidebar,
body.theme-dark .workspace-bar,
body.theme-dark .sync-popover,
body.theme-dark .preferences-popover,
body.theme-dark .panel,
body.theme-dark .security-card,
body.theme-dark .apps-drive-workspace {
  background-color: rgba(23, 35, 31, .92);
}

body.density-compact .sidebar {
  gap: 9px;
  padding-top: 10px;
}

body.density-compact .rail-control-tab,
body.density-compact .security-tab,
body.density-compact .calendar-tab {
  min-height: 76px;
}

body.density-compact .files-tab,
body.density-compact .apps-tab,
body.density-compact .utility-tab {
  min-height: 68px;
}

.workspace-tab {
  --tab-color: #f4efe3;
  --tab-color-deep: #d9b96e;
  display: grid;
  grid-template-rows: 16px minmax(0, 1fr) 12px;
  gap: 8px;
  justify-items: center;
  align-items: center;
  width: 42px;
  min-height: 136px;
  margin-left: 0;
  padding: 9px 5px 11px;
  position: relative;
  border: 1px solid rgba(92, 99, 85, .2);
  border-left: 0;
  border-radius: 0 8px 8px 0;
  color: var(--ink);
  background:
    linear-gradient(180deg, rgba(255, 255, 255, .78), rgba(255, 255, 255, .18)),
    var(--tab-color);
  box-shadow: 7px 8px 18px var(--tab-shadow), inset 0 1px 0 rgba(255, 255, 255, .78);
  text-align: center;
  transition: transform .16s ease, box-shadow .16s ease, border-color .16s ease;
  touch-action: manipulation;
}

.workspace-tab:nth-child(6n + 1) {
  --tab-color: #edf7f4;
  --tab-color-deep: #0f766e;
}

.workspace-tab:nth-child(6n + 2) {
  --tab-color: #f7f1df;
  --tab-color-deep: #b7791f;
}

.workspace-tab:nth-child(6n + 3) {
  --tab-color: #eef2fb;
  --tab-color-deep: #4263a5;
}

.workspace-tab:nth-child(6n + 4) {
  --tab-color: #f6eaf1;
  --tab-color-deep: #9f4777;
}

.workspace-tab:nth-child(6n + 5) {
  --tab-color: #eef5e8;
  --tab-color-deep: #4f7f32;
}

.workspace-tab:nth-child(6n) {
  --tab-color: #f0edf8;
  --tab-color-deep: #6b4aa0;
}

.workspace-tab::before {
  content: "";
  position: absolute;
  inset: 8px auto 8px 0;
  width: 7px;
  border-radius: 0 5px 5px 0;
  background: var(--tab-color-deep);
  box-shadow: inset -1px 0 0 rgba(255, 255, 255, .32);
}

.workspace-tab::after {
  content: "";
  position: absolute;
  inset: 0 -7px 0 auto;
  width: 10px;
  border: 1px solid rgba(92, 99, 85, .2);
  border-left: 0;
  border-radius: 0 8px 8px 0;
  background: var(--tab-color);
  box-shadow: 8px 7px 16px rgba(18, 40, 31, .08);
}

.workspace-tab:hover,
.workspace-tab:focus-visible {
  border-color: rgba(15, 118, 110, .34);
  box-shadow: 0 10px 24px rgba(18, 40, 31, .17), inset 0 1px 0 rgba(255, 255, 255, .82);
  transform: translateX(7px);
}

.workspace-tab:focus-visible {
  outline: 3px solid rgba(15, 118, 110, .18);
  outline-offset: 2px;
}

.workspace-tab.active {
  z-index: 2;
  border-color: rgba(15, 118, 110, .46);
  box-shadow: 9px 14px 30px rgba(18, 40, 31, .22), inset 5px 0 0 var(--tab-color-deep);
  transform: translateX(13px);
}

.tab-grip {
  display: grid;
  grid-template-columns: repeat(3, 3px);
  gap: 2px;
  justify-items: center;
  width: auto;
  position: relative;
  z-index: 1;
}

.tab-grip span {
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background: color-mix(in srgb, var(--tab-color-deep) 62%, #fff);
  box-shadow: 0 1px 0 rgba(255, 255, 255, .55);
}

.tab-copy {
  display: grid;
  place-items: center;
  min-width: 0;
  min-height: 80px;
  position: relative;
  z-index: 1;
}

.tab-edge {
  width: 22px;
  height: 1px;
  position: relative;
  z-index: 1;
  background: rgba(92, 99, 85, .16);
}

.tab-name {
  display: block;
  max-height: 96px;
  overflow: visible;
  font-weight: 750;
  font-size: .82rem;
  line-height: 1;
  text-orientation: mixed;
  transform: rotate(180deg);
  white-space: nowrap;
  writing-mode: vertical-rl;
}

.rail-control-tab,
.security-tab,
.calendar-tab,
.files-tab,
.apps-tab,
.utility-tab,
.trash-tab {
  display: grid;
  place-items: center;
  width: 34px;
  min-height: 92px;
  border: 1px solid rgba(92, 99, 85, .2);
  border-left: 0;
  border-radius: 0 9px 9px 0;
  color: #17322c;
  background: #fff;
  box-shadow: 5px 7px 14px rgba(18, 40, 31, .1);
}

.rail-control-tab {
  min-height: 112px;
  padding: 9px 0;
  color: #123b36;
  background: #eef8f5;
}

.rail-control-tab svg {
  width: 18px;
  height: 18px;
}

.security-tab {
  min-height: 96px;
  color: #17322c;
  background: #fff7ed;
}

.calendar-tab {
  min-height: 92px;
  color: #17322c;
  background: #f1f8ff;
}

.files-tab {
  min-height: 82px;
  color: #17322c;
  background: #eef2fb;
}

.apps-tab {
  min-height: 82px;
  color: #1e3a34;
  background: #f6fbf8;
}

.trash-tab {
  min-height: 52px;
  color: #5f2c28;
  background: #fff7f5;
}

.trash-tab svg {
  width: 20px;
  height: 20px;
}

.rail-control-tab:hover,
.security-tab:hover,
.calendar-tab:hover,
.files-tab:hover,
.apps-tab:hover,
.utility-tab:hover,
.trash-tab:hover {
  color: var(--accent);
  transform: translateX(8px);
}

.rail-control-tab[aria-expanded="true"],
.security-tab[aria-expanded="true"],
.calendar-tab[aria-expanded="true"],
.files-tab[aria-expanded="true"],
.apps-tab[aria-expanded="true"],
.utility-tab[aria-expanded="true"],
.trash-tab[aria-expanded="true"] {
  color: var(--accent);
  border-color: rgba(15, 118, 110, .35);
  transform: translateX(8px);
}

.rail-control-tab span,
.security-tab span,
.calendar-tab span,
.files-tab span,
.apps-tab span,
.utility-tab span {
  font-size: .78rem;
  font-weight: 800;
  transform: rotate(180deg);
  writing-mode: vertical-rl;
}

.workspace-bar {
  --main-tab-select-width: clamp(180px, 20vw, 300px);
  position: fixed;
  top: 0;
  left: var(--rail);
  right: 0;
  z-index: 1600;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-height: 50px;
  width: auto;
  max-width: none;
  margin: 0;
  padding: 7px 16px;
  border: 1px solid var(--line);
  border-left: 0;
  border-right: 0;
  border-radius: 0;
  background: rgba(255, 255, 255, .76);
}

.workspace-bar-title {
  display: flex;
  align-items: center;
  gap: 10px;
  flex: 1 1 210px;
  min-width: 0;
  text-align: left;
}

.workhub-logo {
  width: 52px;
  height: 32px;
  flex: 0 0 auto;
  border: 1px solid rgba(255, 255, 255, .5);
  border-radius: 6px;
  background: #000;
  box-shadow: 0 6px 18px rgba(23, 32, 28, .16);
  object-fit: contain;
}

.workspace-title-copy {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.workspace-bar-title strong,
.workspace-title-copy span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.workspace-title-copy span {
  color: var(--muted);
  font-size: .82rem;
}

.workspace-jump-group {
  display: inline-flex;
  flex: 0 1 auto;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 8px;
  max-width: 100%;
  min-height: 42px;
  padding: 4px 6px;
  border: 1px solid #c9d7d2;
  border-radius: 8px;
  background: rgba(255, 255, 255, .72);
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .6);
}

.workspace-bar-actions {
  display: inline-flex;
  flex: 1 1 210px;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px;
  min-width: 0;
}

.app-refresh-button {
  min-width: 0;
}

.app-refresh-button span {
  white-space: nowrap;
}

.main-tab-jump {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 38px;
  padding: 0 6px;
  font-size: .78rem;
  font-weight: 850;
  white-space: nowrap;
}

.main-tab-jump span {
  color: var(--muted);
}

.main-tab-jump select {
  min-height: 30px;
  width: var(--main-tab-select-width);
  max-width: min(var(--main-tab-select-width), calc(100vw - var(--rail) - 96px));
  border: 1px solid #f2b35d;
  border-radius: 8px;
  outline: 0;
  background: #fff4dd;
  font-weight: 850;
  padding: 0 8px;
}

.sub-main-jump select {
  width: clamp(118px, 11vw, 160px);
  max-width: 100%;
}

.workspace-main.drive-mode .top-strip,
.workspace-main.drive-mode .status-band,
.workspace-main.drive-mode .work-grid {
  display: none;
}

.status-band,
[data-panel="purpose"],
[data-panel="files"],
[data-panel="links"] {
  display: none !important;
}

.workspace-main.drive-mode .workspace-title-copy > span {
  display: none;
}

.container-badge {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 10px;
  border: 1px solid #bdd6cb;
  border-radius: 8px;
  color: #115e59;
  background: #eef8f5;
  font-size: .78rem;
  font-weight: 800;
  white-space: nowrap;
}

.container-badge.shared {
  border-color: #dcc48a;
  color: #8a5a12;
  background: #fbf5e6;
}

.subtab-rail {
  position: absolute;
  left: 58px;
  top: var(--subtab-top, 82px);
  z-index: 12;
  transition: top .16s ease;
}

.subtab-current {
  display: grid;
  place-items: center;
  width: 28px;
  min-height: 112px;
  border: 1px solid rgba(92, 99, 85, .22);
  border-left: 0;
  border-radius: 0 8px 8px 0;
  color: #21433b;
  background: #ffffff;
  box-shadow: 6px 9px 18px rgba(18, 40, 31, .12);
}

.subtab-current span {
  font-size: .72rem;
  font-weight: 850;
  transform: rotate(180deg);
  writing-mode: vertical-rl;
}

.subtab-current[aria-expanded="true"] {
  color: var(--accent);
  transform: translateX(6px);
}

.subtab-menu {
  position: absolute;
  top: 0;
  left: 36px;
  display: grid;
  gap: 6px;
  width: 132px;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 16px 36px rgba(18, 40, 31, .16);
}

.subtab-menu[hidden] {
  display: none;
}

.subtab-menu button {
  min-height: 34px;
  border: 1px solid transparent;
  border-radius: 8px;
  color: var(--ink);
  background: #f8fbf9;
  font-size: .85rem;
  font-weight: 750;
}

.subtab-menu strong {
  padding: 2px 4px;
  color: var(--muted);
  font-size: .74rem;
  font-weight: 850;
}

.subtab-menu button.active,
.subtab-menu button:hover {
  border-color: #bdd6cb;
  color: var(--accent);
  background: #eef8f5;
}

.sectiontab-rail {
  position: absolute;
  left: 90px;
  top: var(--sectiontab-top, 122px);
  z-index: 11;
  transition: top .16s ease;
}

.sectiontab-current {
  display: grid;
  place-items: center;
  width: 26px;
  min-height: 104px;
  border: 1px solid rgba(92, 99, 85, .22);
  border-left: 0;
  border-radius: 0 8px 8px 0;
  color: #23352f;
  background: #f8fbf9;
  box-shadow: 5px 8px 16px rgba(18, 40, 31, .1);
}

.sectiontab-current span {
  display: block;
  max-height: 92px;
  overflow: hidden;
  font-size: .68rem;
  font-weight: 850;
  transform: rotate(180deg);
  writing-mode: vertical-rl;
}

.sectiontab-current[aria-expanded="true"] {
  color: var(--accent);
  transform: translateX(6px);
}

.sectiontab-menu {
  position: absolute;
  top: 0;
  left: 34px;
  display: grid;
  gap: 6px;
  width: min(220px, calc(100vw - var(--rail) - 70px));
  max-height: calc(100vh - var(--sectiontab-top, 122px) - 20px);
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 16px 36px rgba(18, 40, 31, .16);
  overflow-y: auto;
  overscroll-behavior: contain;
}

.sectiontab-menu[hidden] {
  display: none;
}

.sectiontab-menu button {
  min-height: 34px;
  height: auto;
  max-width: 100%;
  min-width: 0;
  border: 1px solid transparent;
  border-radius: 8px;
  color: var(--ink);
  background: #f8fbf9;
  font-size: .78rem;
  font-weight: 750;
  overflow: hidden;
  overflow-wrap: anywhere;
  text-align: left;
  white-space: normal;
}

.sectiontab-menu button.active,
.sectiontab-menu button:hover {
  border-color: #bdd6cb;
  color: var(--accent);
  background: #eef8f5;
}

.sync-popover,
.preferences-popover {
  position: fixed;
  top: var(--sync-popover-top, 72px);
  left: var(--sync-popover-left, calc(var(--rail) + 18px));
  z-index: 20;
  width: min(320px, calc(100vw - var(--rail) - 24px));
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 18px 42px rgba(18, 40, 31, .16);
}

.preferences-popover {
  width: min(360px, calc(100vw - var(--rail) - 24px));
}

.sync-popover[hidden],
.preferences-popover[hidden] {
  display: none;
}

.sync-header {
  display: flex;
  align-items: center;
  gap: 9px;
}

.sync-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #22a06b;
  box-shadow: 0 0 0 4px rgba(34, 160, 107, .14);
}

.sync-dot.pending {
  background: #d97706;
  box-shadow: 0 0 0 4px rgba(217, 119, 6, .14);
}

.sync-popover p {
  margin: 8px 0 12px;
  color: var(--muted);
  font-size: .83rem;
  line-height: 1.45;
}

.sync-notice {
  margin: 0 0 12px;
  padding: 9px 10px;
  border: 1px solid #f1c27d;
  border-radius: 8px;
  color: #7c4a03;
  background: #fff7ed;
  font-weight: 750;
}

.sync-actions {
  display: flex;
  gap: 8px;
}

.sync-actions button,
.icon-button,
.inline-form button {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--ink);
  background: #fff;
}

.sync-actions button[hidden] {
  display: none !important;
}

.sync-actions button:hover,
.icon-button:hover,
.inline-form button:hover {
  border-color: #b6cbc0;
  color: var(--accent);
}

#importFile {
  display: none;
}

.workspace-main {
  min-width: 0;
  padding: 92px 24px 24px;
}

.top-strip,
.status-band {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  max-width: 1220px;
  margin: 0 auto;
}

.top-strip {
  padding-bottom: 18px;
}

.top-strip > div:first-child {
  min-width: 0;
  flex: 1 1 auto;
}

.eyebrow {
  margin: 0 0 3px;
  color: var(--accent);
  font-size: .78rem;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}

.workspace-title {
  width: 100%;
  padding: 0;
  border: 0;
  outline: 0;
  color: var(--ink);
  background: transparent;
  font-size: clamp(1.7rem, 3.1vw, 3.05rem);
  font-weight: 850;
  line-height: 1;
}

.top-actions {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-shrink: 0;
}

.box-move-mode {
  min-height: 38px;
  max-width: 150px;
  padding: 0 28px 0 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--ink);
  background: #fff;
  font-size: .78rem;
  font-weight: 850;
}

.danger {
  color: var(--warn);
}

.status-band {
  display: grid;
  grid-template-columns: repeat(4, minmax(120px, 1fr));
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255, 255, 255, .7);
}

.status-band div {
  min-width: 0;
}

.metric {
  display: block;
  font-size: 1.45rem;
  font-weight: 850;
}

.status-band span:last-child {
  color: var(--muted);
  font-size: .82rem;
}

.cas-context-panel {
  display: grid;
  grid-template-columns: minmax(260px, 1fr) minmax(220px, 320px) minmax(260px, .85fr);
  gap: 12px;
  align-items: stretch;
  max-width: 1220px;
  margin: 16px auto 0;
  padding: 14px;
  border: 1px solid #bdd6cb;
  border-radius: 8px;
  background: #eef8f5;
  box-shadow: var(--shadow);
}

.cas-context-panel[hidden] {
  display: none;
}

.cas-pinned-business-panel {
  max-width: 1220px;
  margin: 16px auto 0;
  border-color: #bdd6cb;
  background: #fbfdfc;
}

.cas-pinned-business-panel[hidden] {
  display: none;
}

.cas-context-main,
.cas-client-picker,
.cas-boundary-card {
  min-width: 0;
}

.cas-context-main h2 {
  margin: 2px 0 4px;
  font-size: 1.05rem;
}

.cas-context-main p:last-child,
.cas-boundary-card span {
  margin: 0;
  color: var(--muted);
  font-size: .84rem;
  font-weight: 750;
}

.cas-client-picker {
  display: grid;
  gap: 6px;
  align-content: center;
}

.cas-client-picker span {
  color: var(--muted);
  font-size: .74rem;
  font-weight: 850;
  text-transform: uppercase;
}

.cas-client-picker select {
  min-height: 38px;
  border: 1px solid #f1c27d;
  border-radius: 8px;
  background: #fff8ed;
  font-weight: 850;
}

.cas-boundary-card {
  display: grid;
  gap: 4px;
  align-content: center;
  padding: 10px;
  border: 1px solid #bdd6cb;
  border-radius: 8px;
  background: #f8fbf9;
}

.cas-boundary-card strong {
  text-transform: capitalize;
}

.apps-drive-workspace {
  display: grid;
  gap: 14px;
  max-width: 1360px;
  margin: 0 auto;
}

.apps-drive-workspace.project-management-workspace {
  margin: clamp(32px, 5vh, 72px) auto 0;
  padding-top: 0;
}

.apps-drive-workspace[hidden] {
  display: none;
}

.drive-workspace-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.drive-workspace-title h2 {
  margin: 0;
  font-size: 1.15rem;
}

.project-management-workspace .drive-workspace-title {
  display: grid;
  grid-template-columns: minmax(44px, 1fr) auto minmax(44px, 1fr);
  align-items: center;
  justify-content: stretch;
  padding: 12px 0 18px;
}

.project-management-workspace .drive-workspace-title h2 {
  grid-column: 2;
  justify-self: center;
  text-align: center;
}

.project-management-workspace .drive-workspace-title .icon-button {
  grid-column: 3;
  justify-self: end;
}

.project-management-workspace > .drive-workspace-title {
  display: none;
}

.project-management-title-block {
  display: grid;
  justify-items: center;
  gap: 4px;
  width: 100%;
  margin: 0 auto;
  padding: clamp(28px, 4.5vw, 52px) 0 clamp(20px, 3.5vw, 38px);
  text-align: center;
}

.project-management-title-block h2 {
  margin: 0;
  color: var(--ink);
  font-size: clamp(1.75rem, 3vw, 2.7rem);
  font-weight: 900;
  line-height: 1.05;
}

.project-management-panel > .security-summary {
  position: relative;
  justify-content: center;
  padding-top: 20px;
  padding-bottom: 20px;
  text-align: center;
}

.project-management-panel > .security-summary .security-status {
  position: absolute;
  right: 16px;
}

.work-grid {
  display: grid;
  grid-template-columns: minmax(280px, 1.05fr) minmax(280px, .95fr);
  gap: 16px;
  max-width: 1220px;
  margin: 16px auto 0;
  position: relative;
}

.panel {
  min-width: 0;
  padding: 16px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: var(--panel);
  box-shadow: var(--shadow);
  resize: vertical;
  overflow: auto;
}

.focus-panel {
  grid-column: 1 / -1;
}

.panel-wide,
.panel-tall {
  grid-column: 1 / -1;
}

.panel-tall {
  min-height: 420px;
}

.panel-hidden-by-user {
  display: none;
}

.panel-loose {
  cursor: grab;
  grid-column: auto;
  position: relative;
  z-index: 2;
  transform: translate(var(--panel-x, 0), var(--panel-y, 0));
}

.panel-loose.focus-panel,
.panel-loose.panel-wide,
.panel-loose.panel-tall {
  grid-column: auto;
}

.panel-loose:active {
  cursor: grabbing;
}

.panel-loose .panel-heading::before {
  content: "Loose";
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 7px;
  border: 1px solid #dcc48a;
  border-radius: 8px;
  color: #8a5a12;
  background: #fbf5e6;
  font-size: .72rem;
  font-weight: 850;
}

.panel-grid-locked .panel-heading::before {
  content: "Grid";
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 7px;
  border: 1px solid #bdd6cb;
  border-radius: 8px;
  color: var(--accent);
  background: #eef8f5;
  font-size: .72rem;
  font-weight: 850;
}

.panel-heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.panel-controls {
  display: inline-flex;
  gap: 4px;
  margin-left: auto;
}

.panel-controls button {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--muted);
  background: #fff;
}

.panel-controls button:hover {
  border-color: #bdd6cb;
  color: var(--accent);
  background: #eef8f5;
}

.panel-controls svg {
  width: 16px;
  height: 16px;
}

.hidden-panel-shelf {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
  grid-column: 1 / -1;
  padding: 10px;
  border: 1px dashed #bdd6cb;
  border-radius: 8px;
  background: #f6fbf8;
}

.hidden-panel-shelf strong {
  color: var(--muted);
  font-size: .82rem;
}

.hidden-panel-shelf button {
  min-height: 30px;
  border: 1px solid #bdd6cb;
  border-radius: 8px;
  color: var(--accent);
  background: #fff;
  font-size: .82rem;
  font-weight: 800;
}

.panel h2 {
  font-size: 1rem;
}

textarea,
input,
select {
  width: 100%;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--ink);
  background: #fcfdfc;
}

textarea,
input,
select {
  padding: 11px 12px;
}

textarea {
  min-height: 108px;
  resize: vertical;
  line-height: 1.5;
}

input:focus,
textarea:focus,
select:focus {
  border-color: var(--accent);
  outline: 3px solid rgba(15, 118, 110, .12);
}

.inline-form {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 42px;
  gap: 8px;
  margin-bottom: 12px;
}

.stacked-form {
  display: grid;
  gap: 8px;
  margin-bottom: 12px;
}

.item-list {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.item {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  min-height: 44px;
  padding: 9px 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fcfdfc;
}

.item.done {
  color: var(--muted);
  text-decoration: line-through;
}

.item-main {
  min-width: 0;
}

.item-title,
.item-subtitle {
  display: block;
  overflow-wrap: anywhere;
}

.item-title {
  font-weight: 700;
}

.item-subtitle {
  margin-top: 2px;
  color: var(--muted);
  font-size: .82rem;
}

.remove-item {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border: 0;
  border-radius: 8px;
  color: var(--warn);
  background: transparent;
}

dialog {
  width: min(440px, calc(100vw - 32px));
  border: 0;
  border-radius: 8px;
  padding: 0;
  box-shadow: var(--shadow);
  transform: translate(var(--dialog-x, 0), var(--dialog-y, 0));
}

#tabControlDialog {
  width: min(1180px, calc(100vw - 24px));
}

#appsDialog {
  width: min(980px, calc(100vw - 32px));
}

#filesDialog {
  width: min(1320px, calc(100vw - 24px));
}

dialog::backdrop {
  background: rgba(20, 32, 28, .36);
}

.dialog-card {
  display: grid;
  gap: 14px;
  padding: 18px;
  width: 100%;
  max-height: calc(100dvh - 24px);
  overflow: auto;
}

.dialog-card h2 {
  margin: 0;
}

#appDeleteDialog .dialog-card > h2,
#subWorkspaceDialog .dialog-card > h2 {
  cursor: move;
}

.dialog-card label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: .86rem;
}

.control-dialog {
  width: min(1180px, calc(100vw - 24px));
}

.apps-dialog {
  width: min(1120px, calc(100vw - 24px));
}

.files-dialog {
  width: min(1180px, calc(100vw - 24px));
}

.files-dialog .apps-panel {
  min-width: min(1040px, calc(100vw - 64px));
  overflow: auto;
}

.box-save-dialog {
  width: min(620px, calc(100vw - 24px));
}

.small-dialog {
  width: min(520px, calc(100vw - 24px));
}

.box-save-dialog .assignment-list {
  grid-template-columns: repeat(auto-fit, minmax(120px, 1fr));
}

.box-save-dialog .dialog-note {
  margin: 0;
  padding: 10px 12px;
  border: 1px solid #bdd6cb;
  border-radius: 8px;
  color: #37534b;
  background: #eef8f5;
}

.sync-mode-row {
  display: grid;
  gap: 6px;
  margin: 10px 0;
  color: var(--muted);
  font-size: .82rem;
  font-weight: 800;
}

.sync-mode-row select {
  min-height: 36px;
}

.control-title-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  cursor: move;
}

.control-title-row h2 {
  margin: 0;
}

.saved-pill {
  display: inline-flex;
  align-items: center;
  min-height: 28px;
  padding: 0 10px;
  border: 1px solid #bdd6cb;
  border-radius: 999px;
  color: #115e59;
  background: #eef8f5;
  font-size: .78rem;
  font-weight: 800;
}

.saved-pill.pulse {
  background: #dcfce7;
}

.tab-control-panel,
.control-section {
  display: grid;
  gap: 12px;
}

.tab-control-view-row {
  justify-items: start;
}

.control-section {
  padding-top: 4px;
}

.control-section h3 {
  margin: 0;
  font-size: .95rem;
}

.control-row {
  display: grid;
  grid-template-columns: minmax(170px, 1fr) 140px 34px;
  gap: 8px;
  align-items: start;
  min-width: 0;
}

.main-control-row.add-control-row {
  grid-template-columns: minmax(220px, 1fr) 38px;
}

.add-control-row {
  padding: 10px;
  border: 1px dashed #bdd6cb;
  border-radius: 8px;
  background: #f6fbf8;
}

.sub-control-row {
  grid-template-columns: minmax(140px, .7fr) minmax(170px, 1fr) minmax(150px, .8fr) minmax(116px, auto) 34px;
}

.sub-control-row.add-control-row {
  grid-template-columns: minmax(150px, .8fr) minmax(170px, 1fr) minmax(150px, .8fr) 38px;
}

.system-sub-control-row {
  grid-template-columns: minmax(140px, .7fr) minmax(170px, 1fr) minmax(150px, .8fr);
}

.connection-map-section {
  gap: 10px;
}

.connection-card {
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fcfdfc;
}

.connection-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
}

.connection-title strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.connection-title span,
.connection-group > span {
  color: var(--muted);
  font-size: .74rem;
  font-weight: 850;
}

.connection-group {
  display: grid;
  gap: 6px;
  min-width: 0;
}

.connection-pills {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  min-width: 0;
}

.connection-pill {
  max-width: 100%;
  padding: 6px 8px;
  border: 1px solid #bdd6cb;
  border-radius: 8px;
  color: #115e59;
  background: #eef8f5;
  font-size: .78rem;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.connection-pill.empty {
  color: var(--muted);
  background: #f7f9f7;
}

.tab-hierarchy-section {
  gap: 18px;
}

.tab-hierarchy-card,
.hierarchy-sub-card {
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fcfdfc;
}

.tab-hierarchy-card {
  position: relative;
  padding: 14px;
  border: 2px solid #9dc9b8;
  background: #f7fbf9;
  box-shadow: 0 10px 26px rgba(31, 42, 36, .06);
}

.hierarchy-main-row {
  display: grid;
  grid-template-columns: 86px minmax(160px, .9fr) minmax(180px, 1.1fr) 34px;
  gap: 8px;
  align-items: center;
  min-width: 0;
}

.hierarchy-sub-list,
.hierarchy-section-list {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.hierarchy-sub-card {
  position: relative;
  margin-left: 0;
  padding: 12px;
  border-color: #bdd6cb;
  background: #ffffff;
}

.hierarchy-sub-row {
  display: grid;
  gap: 8px;
  align-items: center;
  min-width: 0;
}

.hierarchy-section-list {
  margin-left: 28px;
  padding-left: 18px;
  border-left: 2px solid #bdd6cb;
}

.hierarchy-section-row {
  display: grid;
  position: relative;
  grid-template-columns: 78px minmax(120px, .75fr) minmax(140px, .8fr) minmax(140px, .85fr) minmax(130px, .75fr) minmax(132px, auto) 34px;
  gap: 8px;
  align-items: center;
  min-width: 0;
  padding: 8px;
  border: 1px solid #dce4df;
  border-radius: 8px;
  background: #fbfdfc;
}

.hierarchy-sub-list {
  position: relative;
  margin-left: 22px;
  padding-left: 22px;
  border-left: 3px solid #b8d8cc;
}

.hierarchy-sub-card::before {
  content: "";
  position: absolute;
  top: 24px;
  left: -22px;
  width: 22px;
  border-top: 3px solid #b8d8cc;
}

.hierarchy-section-row::before {
  content: "";
  position: absolute;
  top: 26px;
  left: -18px;
  width: 18px;
  border-top: 2px solid #bdd6cb;
}

.hierarchy-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 28px;
  padding: 0 8px;
  border-radius: 8px;
  font-size: .68rem;
  font-weight: 900;
  text-transform: uppercase;
  white-space: nowrap;
}

.hierarchy-badge.main {
  color: #fff;
  background: #0f766e;
}

.hierarchy-badge.sub {
  color: #115e59;
  background: #dff3ed;
  border: 1px solid #9dc9b8;
}

.hierarchy-badge.section {
  color: #4263a5;
  background: #eef2fb;
  border: 1px solid #cbd6ee;
}

.section-control-row {
  grid-template-columns: minmax(150px, .8fr) minmax(190px, 1fr) minmax(170px, .85fr) minmax(132px, auto) 34px;
}

.section-control-row.add-control-row {
  grid-template-columns: minmax(160px, .8fr) minmax(190px, 1fr) minmax(170px, .85fr) 38px;
}

.hierarchy-section-row.section-control-row {
  grid-template-columns: 78px minmax(140px, .8fr) minmax(220px, 1.2fr) 34px;
}

.hierarchy-title {
  min-width: 0;
  font-size: .95rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.hierarchy-edit {
  min-width: 0;
  justify-self: end;
}

.hierarchy-edit summary {
  display: inline-flex;
  align-items: center;
  min-height: 32px;
  padding: 0 10px;
  border: 1px solid #bdd6cb;
  border-radius: 8px;
  color: #115e59;
  background: #eef8f5;
  font-size: .78rem;
  font-weight: 850;
  cursor: pointer;
}

.hierarchy-edit[open] {
  display: grid;
  gap: 8px;
  justify-self: stretch;
}

.control-name {
  min-height: 38px;
  min-width: 0;
}

.control-field {
  display: grid;
  gap: 5px;
  min-width: 0;
}

.control-field > span {
  color: var(--muted);
  font-size: .74rem;
  font-weight: 850;
}

.control-add-button {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border: 1px solid #bdd6cb;
  border-radius: 8px;
  color: var(--accent);
  background: #fff;
}

.control-add-button:hover {
  color: #fff;
  background: var(--accent);
}

.assignment-list {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fcfdfc;
}

.assignment-list.compact {
  grid-template-columns: repeat(auto-fit, minmax(82px, 1fr));
}

.assignment-option {
  display: flex;
  align-items: center;
  gap: 7px;
  min-width: 0;
  color: var(--ink);
  font-size: .82rem;
  font-weight: 700;
}

.assignment-option span {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

dialog {
  width: min(1180px, calc(100vw - 24px));
  max-width: calc(100vw - 24px);
  max-height: calc(100dvh - 24px);
  overflow: hidden;
}

dialog .dialog-card {
  max-height: calc(100dvh - 24px);
  overflow: auto;
}

#workspaceDialog,
#subWorkspaceDialog,
#appDeleteDialog,
#boxSaveDialog,
#boxSavedDialog {
  width: min(620px, calc(100vw - 24px));
}

#appsDialog,
#filesDialog,
#tabControlDialog,
#trashDialog {
  width: min(1180px, calc(100vw - 24px));
}

#trashDialog {
  width: min(760px, calc(100vw - 24px));
}

#trashDialog.anchored-dialog[open] {
  position: fixed;
  inset: var(--anchored-dialog-top, 12px) auto auto var(--anchored-dialog-left, 12px) !important;
  margin: 0 !important;
  transform: none !important;
}

.apps-dialog .apps-panel {
  min-width: min(1040px, calc(100vw - 64px));
  overflow: auto;
}

#trashDialog .apps-panel {
  min-width: 0;
}

.sync-popover,
.preferences-popover {
  max-height: calc(100dvh - 24px);
  overflow: auto;
}

.assignment-option input {
  width: auto;
}

.share-option {
  display: flex;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  padding: 0 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--ink);
  background: #fcfdfc;
  font-size: .82rem;
  font-weight: 800;
}

.share-option input {
  width: auto;
}

.data-mode-select {
  min-height: 38px;
  font-size: .82rem;
  font-weight: 750;
}

.apps-panel {
  display: grid;
  gap: 14px;
}

.apps-toolbar {
  display: flex;
  justify-content: flex-end;
}

.apps-add-grid {
  display: grid;
  grid-template-columns: minmax(150px, .8fr) minmax(180px, 1fr) 150px 38px;
  gap: 8px;
  align-items: start;
  padding: 10px;
  border: 1px dashed #bdd6cb;
  border-radius: 8px;
  background: #f6fbf8;
}

.apps-add-grid.app-add {
  grid-template-columns: minmax(140px, .7fr) minmax(180px, 1fr) 150px 150px minmax(210px, 1fr) 38px;
}

.apps-add-grid.files-category-add {
  grid-template-columns: minmax(180px, 1fr) 38px;
}

.apps-add-grid.file-add {
  grid-template-columns: minmax(150px, .75fr) minmax(220px, 1fr) 160px 130px minmax(240px, 1fr) 38px;
}

.app-category {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.app-category.recent {
  border-color: #87b9a4;
  box-shadow: 0 0 0 3px rgba(15, 118, 110, .1);
}

.app-category-header {
  display: flex;
  align-items: center;
  gap: 8px;
}

.category-list-item .app-list {
  padding-left: 36px;
}

.category-count {
  min-width: 68px;
  color: var(--muted);
  font-size: .8rem;
  font-weight: 800;
  text-align: right;
}

.app-category-header strong {
  min-width: 28px;
  color: var(--muted);
  font-size: .82rem;
}

.app-list {
  display: grid;
  gap: 8px;
}

.app-row {
  display: grid;
  grid-template-columns: minmax(140px, .8fr) minmax(170px, 1fr) 150px minmax(210px, 1fr) repeat(2, 34px);
  gap: 8px;
  align-items: start;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fcfdfc;
}

.file-row {
  display: grid;
  grid-template-columns: 34px minmax(150px, .75fr) minmax(220px, 1fr) 160px 130px minmax(240px, 1fr) repeat(2, 34px);
  gap: 8px;
  align-items: start;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fcfdfc;
}

.linklike {
  margin: 0;
  padding: 0;
  border: 0;
  color: var(--accent);
  background: transparent;
  font: inherit;
  font-weight: 800;
  text-align: left;
  cursor: pointer;
}

.app-index {
  display: grid;
  place-items: center;
  min-height: 38px;
  color: var(--muted);
  font-size: .8rem;
  font-weight: 850;
}

.launch-app-button[disabled] {
  cursor: not-allowed;
  opacity: .38;
}

.apps-drive {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  align-items: stretch;
  gap: 18px;
}

.console-workspace {
  display: block;
  min-width: 0;
}

.console-workspace > .apps-panel,
.console-workspace > .tab-control-panel,
.console-workspace > .security-panel {
  width: 100%;
  max-width: 1180px;
  margin: 0 auto;
}

.security-panel {
  display: grid;
  gap: 14px;
}

.calendar-console {
  grid-template-columns: minmax(0, 1fr);
}

.calendar-selector-list,
.calendar-event-list,
.calendar-conflict-list {
  display: grid;
  gap: 10px;
}

.calendar-source-option,
.calendar-inline-option {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 10px 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fbfdfc;
}

.calendar-source-option.workspace-calendar {
  border-color: rgba(15, 118, 110, .3);
  background: #f0fdfa;
}

.calendar-source-option span,
.calendar-inline-option span {
  font-weight: 800;
}

.calendar-source-option small {
  color: var(--muted);
  text-align: right;
}

.calendar-model-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 10px;
}

.calendar-privacy-grid,
.calendar-ics-import {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 10px;
  margin-top: 12px;
}

.calendar-privacy-grid div {
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fffaf0;
}

.calendar-privacy-grid strong {
  display: block;
  margin-bottom: 5px;
  color: var(--ink);
}

.calendar-privacy-grid span {
  color: var(--muted);
  font-size: .84rem;
  line-height: 1.4;
}

.calendar-ics-import {
  align-items: end;
}

.calendar-ics-import label:not(.assignment-option) {
  display: grid;
  gap: 6px;
  min-width: 0;
  color: var(--muted);
  font-size: .8rem;
  font-weight: 800;
}

.calendar-ics-import input,
.calendar-ics-import select {
  width: 100%;
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px 11px;
  font: inherit;
  color: var(--ink);
  background: #fff;
}

.calendar-model-grid > div,
.calendar-model-steps {
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fbfdfc;
}

.calendar-model-grid strong,
.calendar-model-steps strong {
  display: block;
  margin-bottom: 5px;
  color: var(--ink);
}

.calendar-model-grid p,
.calendar-model-steps li {
  margin: 0;
  color: var(--muted);
  font-size: .86rem;
  line-height: 1.45;
}

.calendar-model-steps {
  margin-top: 10px;
}

.calendar-model-steps ol {
  margin: 6px 0 0 18px;
  padding: 0;
}

.calendar-model-steps li + li {
  margin-top: 5px;
}

.calendar-event-form,
.calendar-source-form {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 12px;
  align-items: end;
}

.calendar-event-form label,
.calendar-source-form label {
  display: grid;
  gap: 6px;
  min-width: 0;
  color: var(--muted);
  font-size: .8rem;
  font-weight: 800;
}

.calendar-event-form input,
.calendar-event-form select,
.calendar-event-form textarea,
.calendar-source-form input,
.calendar-source-form select {
  width: 100%;
  min-width: 0;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px 11px;
  font: inherit;
  color: var(--ink);
  background: #fff;
}

.calendar-wide-field {
  grid-column: 1 / -1;
}

.calendar-window-row {
  margin-top: 12px;
}

.calendar-view-toolbar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 12px;
}

.calendar-view-mode-group,
.calendar-view-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.calendar-view-date-pickers {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: end;
}

.calendar-view-date-pickers label {
  display: grid;
  gap: 4px;
  color: var(--muted);
  font-size: .72rem;
  font-weight: 900;
}

.calendar-view-date-pickers select {
  min-width: 112px;
  border: 1px solid rgba(234, 88, 12, .32);
  border-radius: 8px;
  padding: 8px 28px 8px 10px;
  color: var(--ink);
  font: inherit;
  font-size: .82rem;
  font-weight: 900;
  background: #fff7ed;
}

.calendar-view-mode-group button,
.calendar-view-nav button {
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 8px 10px;
  color: var(--ink);
  font: inherit;
  font-size: .82rem;
  font-weight: 900;
  background: #fff7ed;
  cursor: pointer;
}

.calendar-view-mode-group button.active {
  border-color: rgba(15, 118, 110, .45);
  color: #0f766e;
  background: #ecfdf5;
}

.calendar-full-view {
  display: grid;
  gap: 10px;
  min-width: 0;
}

.calendar-month-overview {
  margin: 12px 0 6px;
}

.calendar-detail-hidden {
  display: none;
}

.calendar-month-grid,
.calendar-week-grid {
  display: grid;
  gap: 8px;
  min-width: 0;
}

.calendar-month-grid {
  grid-template-columns: repeat(7, minmax(94px, 1fr));
}

.calendar-week-grid {
  grid-template-columns: repeat(7, minmax(120px, 1fr));
  overflow-x: auto;
  padding-bottom: 4px;
}

.calendar-month-heading {
  color: var(--muted);
  font-size: .76rem;
  text-align: center;
}

.calendar-month-day,
.calendar-week-day {
  min-width: 0;
  min-height: 116px;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.calendar-month-day.outside-month {
  background: #f8fafc;
}

.calendar-month-date,
.calendar-week-day h4,
.calendar-agenda-day h4 {
  margin: 0 0 7px;
  color: var(--ink);
  font-size: .84rem;
  font-weight: 900;
}

.calendar-week-day p {
  margin: 0;
  color: var(--muted);
  font-size: .78rem;
}

.calendar-view-event {
  display: grid;
  gap: 2px;
  margin-top: 5px;
  padding: 6px 7px;
  border: 1px solid rgba(15, 118, 110, .18);
  border-radius: 7px;
  background: #f0fdfa;
}

.calendar-view-event.conflict {
  border-color: #fecaca;
  background: #fff1f2;
}

.calendar-view-event strong,
.calendar-view-event span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.calendar-view-event strong {
  color: var(--ink);
  font-size: .75rem;
}

.calendar-view-event span {
  color: var(--muted);
  font-size: .7rem;
}

.calendar-agenda-day,
.calendar-conflict-card {
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.calendar-agenda-events,
.calendar-conflict-grid {
  display: grid;
  gap: 8px;
}

.calendar-agenda-event {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 10px;
  border: 1px solid rgba(15, 118, 110, .18);
  border-radius: 8px;
  background: #fbfdfc;
}

.calendar-agenda-event.conflict,
.calendar-conflict-card {
  border-color: #fecaca;
  background: #fff7f7;
}

.calendar-agenda-event span,
.calendar-agenda-event small,
.calendar-conflict-card span,
.calendar-conflict-card small {
  color: var(--muted);
  font-size: .82rem;
}

.calendar-conflict-row {
  padding: 10px 12px;
  border: 1px solid #fecaca;
  border-radius: 8px;
  color: #7f1d1d;
  background: #fff1f2;
  font-weight: 800;
}

.calendar-event-row {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.calendar-event-row.conflict {
  border-color: #fecaca;
  background: #fff7f7;
}

.calendar-event-row div {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.calendar-event-row span,
.calendar-event-row small {
  color: var(--muted);
}

.security-summary,
.security-card {
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: var(--shadow);
}

.security-summary {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 16px;
}

.security-summary h3,
.security-summary p,
.security-card h3 {
  margin: 0;
}

.security-summary p {
  margin-top: 6px;
  color: var(--muted);
  font-size: .88rem;
}

.security-summary-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  gap: 8px;
}

.security-summary-actions .small-btn {
  min-height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 6px 10px;
  background: #0f766e;
  color: #fff;
  font-size: .78rem;
  font-weight: 850;
  text-decoration: none;
  white-space: nowrap;
}

.ai-usage-ledger-list {
  display: grid;
  gap: 8px;
}

.ai-client-cost-review {
  display: grid;
  gap: 8px;
}

.ai-client-cost-review h4,
.ai-client-cost-review p {
  margin: 0;
}

.ai-client-cost-review p {
  color: var(--muted);
  font-size: .86rem;
}

.ai-client-cost-list {
  display: grid;
  gap: 8px;
}

.ai-usage-ledger-row,
.ai-client-cost-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  border: 1px solid var(--line);
  border-radius: 8px;
  padding: 10px;
  background: #f8fbfa;
}

.ai-client-cost-row.billing_review,
.ai-client-cost-row.pricing_review_required,
.ai-client-cost-row.billable_usage {
  border-color: #f7b267;
  background: #fff8ed;
}

.ai-usage-ledger-row div,
.ai-client-cost-row div {
  min-width: 0;
  display: grid;
  gap: 3px;
}

.ai-usage-ledger-row strong,
.ai-usage-ledger-row span,
.ai-usage-ledger-row small,
.ai-client-cost-row strong,
.ai-client-cost-row span,
.ai-client-cost-row small {
  min-width: 0;
  overflow-wrap: anywhere;
}

.ai-usage-ledger-row small,
.ai-client-cost-row small {
  color: var(--muted);
}

.security-status {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 0 10px;
  border: 1px solid #bdd6cb;
  border-radius: 999px;
  color: #115e59;
  background: #eef8f5;
  font-size: .78rem;
  font-weight: 850;
  white-space: nowrap;
}

.security-grid {
  display: grid;
  grid-template-columns: minmax(280px, .9fr) minmax(320px, 1.1fr);
  gap: 14px;
}

.security-card {
  display: grid;
  gap: 12px;
  align-content: start;
  padding: 16px;
}

.auth-status-card {
  grid-template-columns: minmax(260px, 1fr) auto;
  align-items: center;
}

.auth-status-card p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: .88rem;
}

.auth-status-card button {
  min-height: 38px;
  padding: 0 12px;
  border: 0;
  border-radius: 8px;
  color: #fff;
  background: var(--accent);
  font-weight: 850;
}

.auth-status-text.ok {
  color: #166534;
}

.auth-status-text.warn {
  color: #9a3412;
}

.auth-gate-banner {
  margin: 12px 0 0;
  padding: 10px 12px;
  border-radius: 8px;
  border: 1px solid rgba(15, 118, 110, .18);
  background: rgba(255, 255, 255, .92);
  font-size: .92rem;
  line-height: 1.45;
}

.auth-gate-banner.ok {
  border-color: rgba(22, 101, 52, .28);
  color: #166534;
  background: #f0fdf4;
}

.auth-gate-banner.warn {
  border-color: rgba(154, 52, 18, .24);
  color: #9a3412;
  background: #fff7ed;
}

.auth-gate-banner.pending {
  border-color: rgba(15, 118, 110, .24);
  color: #0f766e;
  background: #ecfeff;
}

.security-status.locked,
.client-status.locked {
  border-color: #f1c27d;
  color: #9a3412;
  background: #fff7ed;
}

.security-login-form,
.security-mfa-actions,
.client-form {
  display: grid;
  gap: 8px;
}

.security-login-form {
  grid-template-columns: minmax(160px, 1fr) minmax(160px, 1fr) 96px;
}

.security-mfa-actions {
  grid-template-columns: 112px minmax(140px, 1fr) 86px;
}

.security-login-form button,
.security-mfa-actions button,
.client-form button {
  min-height: 38px;
  border: 0;
  border-radius: 8px;
  color: #fff;
  background: var(--accent);
  font-weight: 850;
}

.security-mfa-actions button:disabled {
  cursor: not-allowed;
  color: #6b7280;
  background: #d1d5db;
  opacity: .72;
}

.security-help,
.mfa-secret-box span {
  margin: 0;
  color: var(--muted);
  font-size: .84rem;
}

.mfa-setup-box {
  display: grid;
  grid-template-columns: 176px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  padding: 10px;
  border: 1px solid #f1c27d;
  border-radius: 8px;
  background: #fff7ed;
}

.mfa-setup-box[hidden] {
  display: none;
}

.mfa-qr-box {
  display: grid;
  place-items: center;
  min-height: 156px;
  border: 1px solid #fed7aa;
  border-radius: 8px;
  background: #fff;
}

.mfa-qr-box svg {
  display: block;
  width: min(148px, 100%);
  height: auto;
}

.mfa-secret-box {
  display: grid;
  gap: 5px;
}

.mfa-secret-box code {
  overflow-wrap: anywhere;
  font-weight: 850;
}

@media (max-width: 720px) {
  .auth-locked .workspace-main {
    padding: 18px;
  }

  .auth-status-card {
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
  }

  .auth-status-card > button,
  .auth-status-card > .security-status {
    width: 100%;
    justify-self: stretch;
  }

  .security-login-form,
  .security-mfa-actions {
    grid-template-columns: minmax(0, 1fr);
  }

  .security-login-form input,
  .security-login-form button,
  .security-mfa-actions input,
  .security-mfa-actions button {
    width: 100%;
    min-width: 0;
  }

  .mfa-setup-box {
    grid-template-columns: 1fr;
  }
}

.business-client-panel[hidden] {
  display: none !important;
}

.business-client-panel {
  grid-column: 1 / -1;
}

.client-status {
  padding: 10px;
  border: 1px solid #bdd6cb;
  border-radius: 8px;
  color: #115e59;
  background: #eef8f5;
  font-size: .86rem;
  font-weight: 800;
}

.client-form {
  grid-template-columns: minmax(160px, 1fr) minmax(160px, 1fr) 140px;
}

.client-form textarea,
.client-form button {
  grid-column: 1 / -1;
}

.client-list {
  display: grid;
  gap: 8px;
}

.client-approval-section {
  display: grid;
  gap: 8px;
  padding: 10px;
  border: 1px solid #f1c27d;
  border-radius: 8px;
  background: #fff8ed;
}

.client-approval-section h3 {
  margin: 0;
  font-size: .9rem;
}

.client-empty {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fbf9;
}

.client-row {
  display: grid;
  gap: 10px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fbf9;
}

.client-row-main {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  min-width: 0;
}

.client-row strong,
.client-row span {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.client-row span,
.client-empty {
  color: var(--muted);
  font-size: .84rem;
}

.client-pill {
  flex: 0 0 auto;
  min-height: 28px;
  padding: 5px 9px;
  border: 1px solid #bdd6cb;
  border-radius: 999px;
  color: #115e59;
  background: #eef8f5;
  font-weight: 850;
  text-transform: capitalize;
}

.client-pill.pending {
  border-color: #f1c27d;
  color: #8a4b08;
  background: #fff1d8;
}

.client-request-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.client-request-actions button {
  min-height: 34px;
  border: 1px solid #bdd6cb;
  border-radius: 8px;
  color: #115e59;
  background: #eef8f5;
  font-weight: 850;
}

.client-assignment-details {
  display: grid;
  gap: 8px;
  padding-top: 8px;
  border-top: 1px solid var(--line);
}

.client-assignment-details summary {
  cursor: pointer;
  color: var(--ink);
  font-size: .84rem;
  font-weight: 850;
}

.client-assignment-summary {
  margin: 0;
  color: var(--muted);
  font-size: .82rem;
  font-weight: 750;
}

.client-assignment-details button {
  justify-self: start;
  min-height: 34px;
  border: 1px solid #bdd6cb;
  border-radius: 8px;
  color: #115e59;
  background: #eef8f5;
  font-weight: 850;
}

.client-row-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.security-card label {
  display: grid;
  gap: 6px;
  color: var(--muted);
  font-size: .78rem;
  font-weight: 850;
}

.security-card select,
.security-card input {
  min-height: 38px;
  width: 100%;
}

.security-checks {
  display: grid;
  gap: 8px;
}

.security-user-form {
  display: grid;
  grid-template-columns: minmax(120px, 1fr) minmax(180px, 1.2fr) minmax(160px, .9fr) 104px;
  gap: 8px;
}

.security-user-form button {
  min-height: 38px;
  border: 0;
  border-radius: 8px;
  color: #fff;
  background: var(--accent);
  font-weight: 850;
}

.security-user-list,
.security-role-list {
  display: grid;
  gap: 8px;
}

.security-card h4 {
  margin: 12px 0 0;
  color: var(--ink);
  font-size: .9rem;
}

.security-invite-message {
  margin: 0;
  padding: 10px;
  border: 1px solid #f1c27d;
  border-radius: 8px;
  color: #9a3412;
  background: #fff7ed;
  font-size: .82rem;
  font-weight: 800;
  overflow-wrap: anywhere;
}

.security-invite-message[hidden] {
  display: none;
}

.invite-setup-form {
  display: grid;
  gap: 8px;
  max-width: 520px;
}

.invite-setup-form button {
  min-height: 38px;
  border: 0;
  border-radius: 8px;
  color: #fff;
  background: var(--accent);
  font-weight: 850;
}

.invite-setup-form button:disabled,
.invite-setup-form input:disabled {
  cursor: not-allowed;
  opacity: .65;
}

.security-user-row em {
  display: block;
  margin-top: 3px;
  color: #9a3412;
  font-size: .78rem;
  font-style: normal;
  font-weight: 800;
}

.security-user-row,
.security-role-row {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) minmax(96px, auto);
  gap: 8px;
  align-items: center;
  min-width: 0;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fbf9;
}

.server-user-row {
  grid-template-columns: minmax(220px, 1fr) minmax(96px, auto);
}

.server-user-row > select {
  grid-column: 1 / 2;
  width: min(260px, 100%);
}

.server-user-row > .security-user-actions {
  grid-column: 2 / 3;
  align-self: start;
}

.security-user-row .security-permission-overrides {
  grid-column: 1 / -1;
}

.security-user-row.inactive {
  opacity: .72;
}

.security-user-row:has(.security-status) .security-status {
  text-align: center;
}

.security-user-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
  min-width: 0;
}

.security-user-actions button {
  flex: 0 0 auto;
  min-height: 32px;
  padding: 0 10px;
  border: 1px solid #bdd6cb;
  border-radius: 8px;
  color: #115e59;
  background: #eef8f5;
  font-weight: 850;
}

.security-user-actions button:disabled {
  cursor: not-allowed;
  opacity: .55;
}

.security-user-actions button:first-child {
  border-color: #f1c27d;
  color: #9a3412;
  background: #fff7ed;
}

.security-role-row {
  grid-template-columns: minmax(150px, .38fr) minmax(220px, .7fr) minmax(240px, 1fr);
}

.security-user-row > select {
  min-width: 0;
}

@media (max-width: 760px) {
  .security-user-row,
  .server-user-row,
  .security-role-row {
    grid-template-columns: 1fr;
  }

  .server-user-row > select,
  .server-user-row > .security-user-actions {
    grid-column: 1 / -1;
  }

  .security-user-actions {
    justify-content: flex-start;
  }
}

.security-role-row > span,
.security-role-row > em {
  padding-left: 12px;
  border-left: 1px solid #d6e4de;
  white-space: normal;
  overflow: visible;
  text-overflow: clip;
}

.security-permission-overrides summary {
  cursor: pointer;
  color: var(--muted);
  font-size: .82rem;
  font-weight: 850;
}

.security-permission-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 8px;
  margin-top: 8px;
}

.security-permission-row {
  display: grid;
  grid-template-columns: 1fr;
  gap: 6px;
  align-items: stretch;
  padding: 8px;
  border: 1px solid #d6e4de;
  border-radius: 8px;
  background: #fff;
}

.security-permission-row span {
  min-width: 0;
  overflow-wrap: anywhere;
  color: var(--muted);
  font-size: .78rem;
  font-weight: 850;
}

.security-permission-row select {
  width: 100%;
  min-width: 0;
}

.security-section-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
}

.security-activity-panel > summary {
  cursor: pointer;
  list-style-position: inside;
  color: var(--muted);
  font-weight: 850;
}

.security-lockdown-card,
.security-shutdown-card {
  border-color: #f1c27d;
  background: #fffaf3;
}

.security-shutdown-card {
  border-color: #fecaca;
  background: #fff7f7;
}

.security-lockdown-card button,
.security-shutdown-card button {
  min-height: 38px;
  padding: 0 12px;
  border: 0;
  border-radius: 8px;
  color: #fff;
  background: var(--accent);
  font-weight: 850;
}

.security-lockdown-card button.danger,
.security-shutdown-card button.danger {
  background: #b91c1c;
}

.security-key-map {
  display: grid;
  gap: 6px;
  padding: 10px;
  border: 1px solid #d6e4de;
  border-radius: 8px;
  background: #f8fbf9;
}

.security-key-map strong,
.security-key-map p {
  margin: 0;
}

.security-key-map p {
  color: var(--muted);
  font-size: .8rem;
  line-height: 1.35;
}

.zero-trust-plan-card {
  border-color: #bfdbfe;
  background: #f8fbff;
}

.cloud-app-plan-card {
  border-color: #bbf7d0;
  background: #f7fdf9;
}

.tenant-platform-plan-card {
  border-color: #e9d5ff;
  background: #fcfaff;
}

.ai-platform-plan-card {
  border-color: #bae6fd;
  background: #f7fcff;
}

.secure-browser-card {
  border-color: #fed7aa;
  background: #fffaf3;
}

.developer-tools-plan-card {
  border-color: #c7d2fe;
  background: #f8f9ff;
}

.secure-browser-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 10px;
}

.secure-browser-download,
.secure-browser-actions button {
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 12px;
  border: 0;
  border-radius: 8px;
  color: #fff;
  background: #c2410c;
  font-size: .85rem;
  font-weight: 850;
  text-decoration: none;
}

.secure-browser-actions button {
  background: #115e59;
}

.secure-browser-download.windows {
  background: #2563eb;
}

.secure-browser-download.linux {
  background: #4d7c0f;
}

.secure-browser-actions span {
  min-width: 220px;
  flex: 1;
  color: var(--muted);
  font-size: .82rem;
  line-height: 1.35;
}

.zero-trust-grid,
.cloud-app-policy-grid,
.tenant-platform-grid,
.ai-platform-grid,
.developer-tools-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(150px, 1fr));
  gap: 10px;
  margin-top: 10px;
}

.zero-trust-grid > div,
.cloud-app-policy-grid > div,
.tenant-platform-grid > div,
.ai-platform-grid > div,
.developer-tools-grid > div,
.zero-trust-steps {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 10px;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #ffffff;
}

.zero-trust-grid strong,
.cloud-app-policy-grid strong,
.tenant-platform-grid strong,
.ai-platform-grid strong,
.developer-tools-grid strong,
.zero-trust-steps strong {
  color: #1d4ed8;
  font-size: .82rem;
}

.cloud-app-policy-grid strong {
  color: #047857;
}

.ai-feature-toggle-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 320px), 1fr));
  gap: 12px;
}

.ai-feature-toggle-card {
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 12px;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #f8fbff;
}

.ai-feature-toggle-card.is-enabled {
  border-color: #86efac;
  background: #f0fdf4;
}

.ai-feature-toggle-card h4,
.ai-feature-toggle-card p {
  margin: 0;
}

.ai-feature-toggle-card p {
  color: var(--muted);
  font-size: .84rem;
  line-height: 1.45;
}

.ai-feature-toggle-card__header {
  display: flex;
  align-items: start;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
}

.ai-feature-toggle-fields {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 150px), 1fr));
  gap: 8px;
}

.ai-feature-toggle-fields label {
  display: grid;
  gap: 4px;
  min-width: 0;
  color: #334155;
  font-size: .72rem;
  font-weight: 800;
}

.ai-feature-toggle-fields select {
  width: 100%;
  min-height: 34px;
  min-width: 0;
  border: 1px solid #fed7aa;
  border-radius: 7px;
  background: #fff7ed;
  color: #1f2937;
  font: inherit;
  font-size: .78rem;
}

.ai-feature-toggle-card__meta {
  color: #64748b;
  font-size: .72rem;
}

.ai-feature-toggle-card__readiness {
  padding: 8px;
  border: 1px solid #bfdbfe;
  border-radius: 7px;
  background: #eff6ff;
  overflow-wrap: anywhere;
}

.ai-developer-connection-list {
  display: grid;
  gap: 10px;
}

.ai-developer-connection-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-width: 0;
  padding: 12px;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #ffffff;
}

.ai-developer-connection-row h4,
.ai-developer-connection-row p {
  margin: 0;
}

.ai-developer-connection-row p {
  color: var(--muted);
  font-size: .84rem;
  line-height: 1.45;
}

.ai-developer-connection-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: end;
  gap: 8px;
}

.ai-developer-connection-actions button {
  min-height: 34px;
  border: 1px solid var(--line);
  border-radius: 7px;
  background: #fff7ed;
  color: #1f2937;
  font-weight: 800;
}

.ai-gateway-summary,
.ai-gateway-control-grid {
  display: grid;
  gap: 10px;
}

.ai-gateway-summary {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 150px), 1fr));
}

.ai-gateway-control-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr));
}

.ai-gateway-summary > div,
.ai-gateway-control-grid > div {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 10px;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #ffffff;
}

.ai-gateway-summary strong,
.ai-gateway-control-grid strong {
  color: #1d4ed8;
  font-size: .8rem;
}

.ai-gateway-summary span,
.ai-gateway-control-grid span {
  color: #0f172a;
  font-size: .82rem;
  font-weight: 850;
}

.ai-gateway-control-grid p {
  margin: 0;
  color: var(--muted);
  font-size: .82rem;
  line-height: 1.45;
}

.ai-workbench-dashboard {
  display: grid;
  gap: 12px;
}

.ai-workbench-split {
  display: grid;
  grid-template-columns: minmax(280px, .9fr) minmax(320px, 1.1fr);
  gap: 12px;
  align-items: start;
}

.ai-workbench-composer,
.ai-workbench-readiness {
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 12px;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #f8fafc;
}

.ai-workbench-composer h4,
.ai-workbench-readiness h4 {
  margin: 0;
  color: #0f172a;
}

.ai-live-readiness-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 175px), 1fr));
  gap: 8px;
}

.ai-live-readiness-grid article {
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 9px;
  border: 1px solid #e2e8f0;
  border-left: 4px solid #94a3b8;
  border-radius: 8px;
  background: #ffffff;
}

.ai-live-readiness-grid article.ready {
  border-left-color: #16a34a;
}

.ai-live-readiness-grid article.blocked {
  border-left-color: #dc2626;
}

.ai-live-readiness-grid article.planned {
  border-left-color: #f59e0b;
}

.ai-live-readiness-grid strong,
.ai-workbench-conversation-card h4 {
  color: #111827;
}

.ai-live-readiness-grid span {
  color: #1d4ed8;
  font-size: .75rem;
  font-weight: 850;
  text-transform: uppercase;
}

.ai-live-readiness-grid p,
.ai-workbench-message-preview p {
  margin: 0;
  overflow-wrap: anywhere;
  line-height: 1.45;
}

.ai-workbench-message-preview {
  display: grid;
  gap: 5px;
  margin-top: 8px;
  padding: 9px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #ffffff;
}

.ai-work-window {
  display: grid;
  grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
  gap: 12px;
  min-width: 0;
}

.priority-work-window {
  border-color: #0ea5e9;
  box-shadow: 0 0 0 1px rgba(14, 165, 233, .18);
}

.ai-work-window-start {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  margin: 0 0 12px;
  padding: 10px 12px;
  border: 1px solid #fde68a;
  border-radius: 8px;
  background: #fffbeb;
  color: #78350f;
  font-size: .86rem;
  line-height: 1.4;
}

.ai-work-window-start strong {
  color: #92400e;
}

.ai-work-window-start span {
  min-width: 0;
  overflow-wrap: anywhere;
}

.ai-work-window-sidebar {
  display: grid;
  gap: 9px;
  align-content: start;
  min-width: 0;
  padding: 12px;
  border: 1px solid #bae6fd;
  border-radius: 8px;
  background: #f0f9ff;
}

.ai-work-window-sidebar label {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.ai-work-window-sidebar span {
  color: #075985;
  font-size: .74rem;
  font-weight: 850;
  text-transform: uppercase;
}

.ai-work-window-history {
  display: grid;
  gap: 10px;
  min-width: 0;
  margin-top: 12px;
  padding: 12px;
  border: 1px solid #bae6fd;
  border-radius: 8px;
  background: #ffffff;
}

.ai-work-window-history > header {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  min-width: 0;
}

.ai-work-window-history > header strong {
  color: #075985;
  font-size: .86rem;
  font-weight: 900;
  text-transform: uppercase;
}

.ai-work-window-history > header span {
  color: #64748b;
  font-size: .78rem;
  font-weight: 750;
  overflow-wrap: anywhere;
}

.ai-work-window-history > header button {
  min-height: 32px;
  padding: 5px 10px;
  border: 1px solid #7dd3fc;
  border-radius: 7px;
  background: #e0f2fe;
  color: #075985;
  font-size: .76rem;
  font-weight: 900;
}

.ai-work-window-history > div {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
  gap: 8px;
  max-height: 280px;
  overflow-y: auto;
}

.ai-work-window-history article {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 7px 8px;
  border: 1px solid #e0f2fe;
  border-radius: 7px;
  background: #f8fafc;
}

.ai-work-window-history article.active {
  border-color: #0284c7;
  background: #e0f2fe;
}

.ai-work-window-history article > div {
  display: grid;
  gap: 2px;
  min-width: 0;
}

.ai-work-window-history nav {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 5px;
}

.ai-work-window-history button {
  min-height: 30px;
  border: 1px solid #7dd3fc;
  border-radius: 6px;
  background: #ffffff;
  color: #075985;
  font-size: .72rem;
  font-weight: 900;
}

.ai-work-window-history button.danger {
  border-color: #991b1b;
  background: #dc2626;
  color: #ffffff;
}

.ai-work-window-history article span,
.ai-work-window-history article small {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.ai-work-window-history article span {
  font-size: .79rem;
  font-weight: 850;
}

.ai-work-window-history article small {
  color: #64748b;
  font-size: .68rem;
}

.ai-work-window-sidebar input,
.ai-work-window-sidebar select,
.ai-work-window-composer textarea {
  width: 100%;
  min-width: 0;
  border: 1px solid #7dd3fc;
  border-radius: 7px;
  background: #ffffff;
  color: #0f172a;
  font: inherit;
  font-size: .84rem;
}

.ai-work-window-main {
  display: grid;
  grid-template-rows: auto auto minmax(260px, 52vh) auto;
  min-width: 0;
  overflow: hidden;
  border: 1px solid #cbd5e1;
  border-radius: 8px;
  background: #ffffff;
}

.ai-work-window-main > header {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: start;
  min-width: 0;
  padding: 12px;
  border-bottom: 1px solid #e2e8f0;
  background: #f8fafc;
}

.ai-work-window-main h4,
.ai-work-window-main p {
  margin: 0;
  overflow-wrap: anywhere;
}

.ai-work-window-status-box,
.ai-work-window-decision-box,
.ai-work-window-chat-box {
  display: grid;
  min-width: 0;
  border-bottom: 1px solid #e2e8f0;
}

.ai-work-window-status-box > header,
.ai-work-window-decision-box > header,
.ai-work-window-chat-box > header {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center;
  min-width: 0;
  padding: 8px 12px;
  border-bottom: 1px solid #e2e8f0;
  background: #ffffff;
}

.ai-work-window-status-box > header strong,
.ai-work-window-decision-box > header strong,
.ai-work-window-chat-box > header strong {
  color: #0f172a;
  font-size: .82rem;
}

.ai-work-window-status-box > header span,
.ai-work-window-decision-box > header span,
.ai-work-window-chat-box > header span {
  color: #64748b;
  font-size: .75rem;
  font-weight: 750;
  overflow-wrap: anywhere;
}

.ai-work-window-status-box {
  background: #f0fdf4;
}

.ai-work-window-decision-box {
  background: #fff7ed;
}

.ai-work-window-chat-box {
  min-height: 0;
  overflow: hidden;
  background: #f8fafc;
}

.ai-work-window-status-strip {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 8px;
  min-width: 0;
  padding: 10px 12px;
  border: 1px solid #bbf7d0;
  border-width: 0 0 1px;
  background: #f0fdf4;
}

.ai-work-window-status-strip div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.ai-work-window-status-strip strong {
  color: #166534;
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.ai-work-window-status-strip span {
  min-width: 0;
  color: #0f172a;
  font-size: .76rem;
  font-weight: 700;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.ai-work-window-decision-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
  min-width: 0;
  padding: 10px 12px;
  border-bottom: 1px solid #fed7aa;
}

.ai-work-window-decision-grid div,
.ai-work-window-source-evidence,
.ai-work-window-test-prompts,
.ai-work-window-decision-actions {
  display: grid;
  gap: 4px;
  min-width: 0;
  padding: 8px;
  border: 1px solid #fed7aa;
  background: #ffffff;
}

.ai-work-window-decision-grid div.active {
  border-color: #fb923c;
  background: #ffedd5;
}

.ai-work-window-decision-grid strong,
.ai-work-window-source-evidence strong,
.ai-work-window-test-prompts strong {
  color: #9a3412;
  font-size: .68rem;
  font-weight: 900;
  letter-spacing: .02em;
  text-transform: uppercase;
}

.ai-work-window-decision-grid span,
.ai-work-window-source-evidence li,
.ai-work-window-test-prompts button,
.ai-work-window-decision-actions button {
  min-width: 0;
  color: #0f172a;
  font-size: .76rem;
  font-weight: 750;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.ai-work-window-source-evidence,
.ai-work-window-test-prompts,
.ai-work-window-decision-actions {
  margin: 10px 12px;
}

.ai-work-window-source-evidence ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.ai-work-window-source-evidence li span {
  color: #9a3412;
  font-size: .7rem;
  font-weight: 900;
}

.ai-work-window-test-prompts {
  grid-template-columns: 1fr;
}

.ai-work-window-decision-actions {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  background: #fffbeb;
}

.ai-work-window-test-prompts button {
  width: 100%;
  border: 1px solid #fdba74;
  background: #fff7ed;
  text-align: left;
}

.ai-work-window-decision-actions button {
  border: 1px solid #f59e0b;
  background: #ffffff;
}

.ai-controlled-test-monitor {
  display: grid;
  gap: 8px;
  margin-top: 12px;
  padding: 12px;
  border: 1px solid #bfdbfe;
  background: #eff6ff;
}

.ai-controlled-test-monitor h4,
.ai-controlled-test-monitor p {
  margin: 0;
}

.ai-controlled-test-monitor h4 {
  color: #1e3a8a;
  font-size: .9rem;
}

.ai-controlled-test-monitor p {
  color: #475569;
  font-size: .78rem;
  font-weight: 750;
}

.ai-work-window-thread {
  display: grid;
  align-content: start;
  gap: 10px;
  min-width: 0;
  overflow-y: auto;
  padding: 12px;
  background: #f8fafc;
}

.ai-work-window-message {
  display: grid;
  gap: 6px;
  max-width: min(100%, 760px);
  padding: 10px;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #ffffff;
}

.ai-work-window-message.user {
  justify-self: end;
  border-color: #bfdbfe;
  background: #eff6ff;
}

.ai-work-window-message.assistant {
  justify-self: start;
  border-color: #bbf7d0;
  background: #f0fdf4;
}

.ai-work-window-message.is-held {
  border-color: #f59e0b;
  background: #fffbeb;
}

.ai-work-window-message div {
  display: flex;
  justify-content: space-between;
  gap: 8px;
  color: #334155;
  font-size: .75rem;
}

.ai-work-window-message p {
  margin: 0;
  overflow-wrap: anywhere;
  line-height: 1.45;
}

.ai-work-window-answer-review,
.ai-ops-test-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  color: #475569;
  font-size: .78rem;
}

.ai-work-window-message .ai-work-window-answer-review {
  justify-content: flex-start;
}

.ai-work-window-answer-review button,
.ai-ops-test-actions button {
  border: 1px solid #cbd5e1;
  border-radius: 6px;
  background: #ffffff;
  color: #0f172a;
  padding: 6px 9px;
  font-size: .78rem;
  font-weight: 750;
}

.ai-work-window-answer-review button:hover,
.ai-ops-test-actions button:hover {
  border-color: #0f766e;
  color: #0f766e;
}

.ai-training-review-history {
  display: grid;
  gap: 4px;
  margin-top: 8px;
  padding: 8px;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #eff6ff;
}

.ai-training-review-history strong {
  color: #1e3a8a;
  font-size: .8rem;
}

.ai-training-review-history p {
  margin: 0;
  color: #334155;
  font-size: .8rem;
  overflow-wrap: anywhere;
}

.ai-training-log-summary {
  display: grid;
  grid-template-columns: minmax(120px, .55fr) minmax(120px, .55fr) minmax(240px, 1.6fr) auto;
  gap: 10px;
  align-items: stretch;
  margin: 10px 0 14px;
}

.ai-training-log-summary div,
.ai-training-log-summary button {
  min-width: 0;
  border: 1px solid #d8e2ef;
  border-radius: 8px;
  background: #f8fafc;
  padding: 9px 10px;
}

.ai-training-log-summary strong,
.ai-training-log-summary span {
  display: block;
  overflow-wrap: anywhere;
}

.ai-training-log-summary strong {
  color: #0f172a;
  font-size: .88rem;
}

.ai-training-log-summary span {
  color: #475569;
  font-size: .76rem;
}

.ai-training-log-summary button {
  color: #0f172a;
  font-weight: 750;
  cursor: pointer;
}

.ai-health-check-list {
  display: grid;
  gap: 8px;
  margin-top: 12px;
}

.ai-health-check-list h4,
.ai-health-check-list p {
  margin: 0;
}

.ai-health-check-row {
  display: grid;
  grid-template-columns: minmax(0, 1.6fr) minmax(180px, .8fr);
  gap: 10px;
  padding: 10px;
  border: 1px solid #d8e2ef;
  border-left: 4px solid #14b8a6;
  border-radius: 8px;
  background: #f8fafc;
}

.ai-health-check-row.attention {
  border-left-color: #f97316;
  background: #fff7ed;
}

.ai-health-check-row strong,
.ai-health-check-row span,
.ai-health-check-row small {
  display: block;
  overflow-wrap: anywhere;
}

.ai-health-check-row small {
  color: #64748b;
  font-size: .78rem;
}

.ai-work-window-composer {
  display: grid;
  gap: 8px;
  padding: 12px;
  border-top: 1px solid #e2e8f0;
  background: #ffffff;
}

.ai-work-window-composer-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(180px, 240px);
  gap: 10px;
  align-items: start;
}

.ai-work-window-composer span {
  color: #475569;
  font-size: .78rem;
  overflow-wrap: anywhere;
}

.ai-work-window-actions {
  display: grid;
  gap: 7px;
  min-width: 0;
}

.ai-work-window-composer button {
  width: 100%;
  min-height: 38px;
  border: 1px solid #0284c7;
  border-radius: 7px;
  background: #e0f2fe;
  color: #075985;
  font-weight: 850;
}

.ai-work-window-composer button.danger,
.ai-work-window-composer button[data-ai-work-window-stop] {
  border-color: #991b1b;
  background: #dc2626;
  color: #ffffff;
}

.ai-work-window-composer button.danger:disabled,
.ai-work-window-composer button[data-ai-work-window-stop]:disabled {
  border-color: #fecaca;
  background: #fca5a5;
  color: #ffffff;
  opacity: .75;
}

.ai-request-form {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 170px), 1fr));
  gap: 10px;
}

.ai-request-form input,
.ai-request-form select,
.ai-request-form textarea {
  width: 100%;
  min-width: 0;
  border: 1px solid #fed7aa;
  border-radius: 7px;
  background: #fff7ed;
  color: #1f2937;
  font: inherit;
  font-size: .84rem;
}

.ai-request-form textarea {
  grid-column: span 2;
  min-height: 84px;
  resize: vertical;
}

.ai-request-form button {
  min-height: 38px;
  border: 1px solid #f97316;
  border-radius: 7px;
  background: #ffedd5;
  color: #7c2d12;
  font-weight: 850;
}

.ai-executor-result {
  grid-column: 1 / -1;
  display: grid;
  gap: 4px;
  padding: 10px 12px;
  border: 1px solid #fed7aa;
  border-radius: 8px;
  background: #fff7ed;
  color: #7c2d12;
  font-size: .84rem;
  overflow-wrap: anywhere;
}

.ai-executor-result.passed {
  border-color: #86efac;
  background: #f0fdf4;
  color: #14532d;
}

.ai-executor-result.needs-work,
.ai-executor-result.blocked {
  border-color: #fecaca;
  background: #fef2f2;
  color: #7f1d1d;
}

.ai-executor-version-notes {
  grid-column: 1 / -1;
  display: grid;
  gap: 8px;
  padding: 10px 12px;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  background: #eff6ff;
  color: #1e3a8a;
  font-size: .84rem;
}

.ai-executor-version-notes div {
  display: grid;
  gap: 3px;
  min-width: 0;
}

.ai-executor-version-notes span,
.ai-executor-version-notes p {
  margin: 0;
  overflow-wrap: anywhere;
}

.ai-executor-readiness {
  grid-column: 1 / -1;
  display: grid;
  gap: 8px;
  padding: 10px 12px;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  background: #f9fafb;
  color: #111827;
  font-size: .84rem;
}

.ai-executor-readiness > div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.ai-executor-readiness span {
  display: inline-flex;
  align-items: center;
  min-height: 26px;
  padding: 3px 8px;
  border: 1px solid #e5e7eb;
  border-radius: 999px;
  background: #ffffff;
  color: #374151;
  font-weight: 750;
  overflow-wrap: anywhere;
}

.ai-executor-readiness span.ready {
  border-color: #86efac;
  background: #f0fdf4;
  color: #14532d;
}

.ai-executor-readiness span.needs-work {
  border-color: #fed7aa;
  background: #fff7ed;
  color: #7c2d12;
}

.ai-executor-summary {
  grid-column: 1 / -1;
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 11px 12px;
  border: 1px solid #bfdbfe;
  border-radius: 8px;
  background: #eff6ff;
  color: #1e3a8a;
  font-size: .84rem;
}

.ai-executor-summary > div:first-child {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px;
  min-width: 0;
}

.ai-executor-summary > div:first-child span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 2px 8px;
  border-radius: 999px;
  background: #dbeafe;
  color: #1e40af;
  font-weight: 850;
}

.ai-executor-summary.passed {
  border-color: #86efac;
  background: #f0fdf4;
  color: #14532d;
}

.ai-executor-summary.passed > div:first-child span {
  background: #dcfce7;
  color: #14532d;
}

.ai-executor-summary.needs-work {
  border-color: #fed7aa;
  background: #fff7ed;
  color: #7c2d12;
}

.ai-executor-summary.needs-work > div:first-child span {
  background: #ffedd5;
  color: #7c2d12;
}

.ai-executor-summary.blocked {
  border-color: #fecaca;
  background: #fef2f2;
  color: #7f1d1d;
}

.ai-executor-summary.blocked > div:first-child span {
  background: #fee2e2;
  color: #7f1d1d;
}

.ai-executor-summary-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr));
  gap: 8px;
}

.ai-executor-summary-grid div {
  display: grid;
  gap: 3px;
  min-width: 0;
  padding: 8px;
  border: 1px solid rgba(30, 64, 175, .14);
  border-radius: 7px;
  background: rgba(255, 255, 255, .68);
}

.ai-executor-summary p,
.ai-executor-summary span,
.ai-executor-summary strong {
  margin: 0;
  overflow-wrap: anywhere;
}

.ai-executor-summary-notes {
  display: grid;
  gap: 5px;
}

.ai-executor-file-queue {
  grid-column: 1 / -1;
  display: grid;
  gap: 10px;
  padding: 10px 12px;
  border: 1px solid #d1d5db;
  border-radius: 8px;
  background: #ffffff;
  color: #111827;
  font-size: .84rem;
}

.ai-executor-file-queue p {
  margin: 0;
  color: #4b5563;
}

.ai-executor-file-queue > div {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 240px), 1fr));
  gap: 8px;
}

.ai-executor-file-queue article {
  display: grid;
  gap: 8px;
  min-width: 0;
  padding: 9px;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #f9fafb;
}

.ai-executor-file-queue article.active {
  border-color: #38bdf8;
  background: #f0f9ff;
}

.ai-executor-file-queue article > div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  align-items: center;
  min-width: 0;
}

.ai-executor-file-queue article > div:first-child {
  justify-content: space-between;
}

.ai-executor-file-queue strong,
.ai-executor-file-queue span {
  overflow-wrap: anywhere;
}

.ai-executor-file-queue article > div:first-child span {
  color: #6b7280;
}

.ai-executor-file-queue span.ready,
.ai-executor-file-queue span.needs-work {
  display: inline-flex;
  min-height: 24px;
  padding: 2px 7px;
  border-radius: 999px;
  font-weight: 750;
}

.ai-executor-file-queue span.ready {
  border: 1px solid #86efac;
  background: #f0fdf4;
  color: #14532d;
}

.ai-executor-file-queue span.needs-work {
  border: 1px solid #fed7aa;
  background: #fff7ed;
  color: #7c2d12;
}

.ai-release-gate-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  min-width: 0;
  overflow: hidden;
}

.ai-release-gate-controls {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto auto;
  gap: 8px;
  align-items: center;
  min-width: 0;
}

.ai-release-gate-controls input {
  width: 100%;
  min-width: 0;
  border: 1px solid #fed7aa;
  border-radius: 7px;
  background: #fff7ed;
  color: #1f2937;
  font: inherit;
  font-size: .82rem;
}

.ai-request-list {
  display: grid;
  gap: 10px;
}

.ai-request-filter {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  min-width: 0;
}

.ai-request-filter span {
  color: var(--muted);
  font-size: .78rem;
  font-weight: 800;
}

.ai-request-filter select {
  width: min(100%, 220px);
  border: 1px solid rgba(15, 23, 42, .14);
  border-radius: 8px;
  background: #fff7ed;
  padding: 8px 10px;
  color: #0f172a;
  font: inherit;
  font-size: .84rem;
}

.ai-request-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  min-width: 0;
  padding: 12px;
  border: 1px solid #dbeafe;
  border-radius: 8px;
  background: #ffffff;
}

.ai-request-row h4,
.ai-request-row p,
.ai-request-row blockquote,
.ai-request-row small {
  margin: 0;
}

.ai-request-row p,
.ai-request-row small {
  color: var(--muted);
  font-size: .84rem;
  line-height: 1.45;
}

.ai-request-row blockquote {
  padding: 8px 10px;
  border-left: 3px solid #f97316;
  border-radius: 6px;
  background: #fff7ed;
  color: #7c2d12;
  font-size: .82rem;
  line-height: 1.45;
}

.ai-request-row__meta {
  display: grid;
  align-content: start;
  justify-items: end;
  gap: 6px;
  color: #475569;
  font-size: .78rem;
}

.ai-request-row__meta span {
  max-width: 220px;
  text-align: right;
  overflow-wrap: anywhere;
}

.ai-request-evidence {
  grid-column: 1 / -1;
  display: grid;
  gap: 10px;
  padding: 10px;
  border: 1px solid rgba(15, 23, 42, .1);
  border-radius: 8px;
  background: #f8fafc;
}

.ai-request-evidence h5,
.ai-request-evidence p {
  margin: 0;
}

.ai-request-evidence h5 {
  color: #0f172a;
  font-size: .84rem;
}

.ai-request-evidence-grid,
.ai-request-evidence-columns {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 8px;
}

.ai-request-evidence-grid div,
.ai-request-evidence-columns > div,
.ai-request-evidence-block {
  min-width: 0;
  padding: 8px;
  border: 1px solid rgba(15, 23, 42, .08);
  border-radius: 7px;
  background: #fff;
}

.ai-request-evidence strong,
.ai-request-evidence span {
  display: block;
  overflow-wrap: anywhere;
}

.ai-request-evidence strong {
  color: #1e40af;
  font-size: .75rem;
}

.ai-request-evidence span,
.ai-request-evidence p {
  color: var(--muted);
  font-size: .76rem;
  line-height: 1.4;
  overflow-wrap: anywhere;
}

.tenant-platform-grid strong {
  color: #7e22ce;
}

.ai-platform-grid strong,
.ai-platform-steps strong {
  color: #0369a1;
}

.developer-tools-grid strong {
  color: #4338ca;
}

.developer-tools-steps strong {
  color: #4338ca;
}

.developer-project-console {
  display: grid;
  gap: 10px;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid #c7d2fe;
}

.trusted-device-card {
  display: grid;
  gap: 10px;
}

.trusted-device-register {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto;
  gap: 8px;
}

.trusted-device-register input {
  min-height: 38px;
}

.trusted-device-register button,
.trusted-device-actions button {
  min-height: 34px;
  border: 1px solid #c7d2fe;
  border-radius: 8px;
  color: #3730a3;
  background: #eef2ff;
  font-weight: 850;
}

.offline-continuity-card {
  border-color: #bae6fd;
  background: #f0f9ff;
}

.offline-continuity-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(170px, 1fr));
  gap: 8px;
}

.offline-continuity-grid div {
  min-width: 0;
  padding: 10px;
  border: 1px solid #bae6fd;
  border-radius: 8px;
  background: #fff;
}

.offline-continuity-grid strong,
.offline-continuity-grid span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.offline-continuity-grid span {
  margin-top: 4px;
  color: var(--muted);
  font-size: .82rem;
}

.local-backup-health-card {
  border-color: #bbf7d0;
  background: #f0fdf4;
}

.local-backup-health-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(180px, 1fr));
  gap: 8px;
}

.local-backup-health-grid div {
  min-width: 0;
  padding: 10px;
  border: 1px solid #bbf7d0;
  border-radius: 8px;
  background: #fff;
}

.local-backup-health-grid strong,
.local-backup-health-grid span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.local-backup-health-grid span {
  margin-top: 4px;
  color: var(--muted);
  font-size: .82rem;
}

.encrypted-backup-card {
  border-color: #c7d2fe;
  background: #f8faff;
}

.encrypted-backup-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(150px, 1fr));
  gap: 8px;
}

.encrypted-backup-grid div {
  min-width: 0;
  padding: 10px;
  border: 1px solid #c7d2fe;
  border-radius: 8px;
  background: #fff;
}

.encrypted-backup-grid strong,
.encrypted-backup-grid span {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.encrypted-backup-grid span {
  margin-top: 4px;
  color: var(--muted);
  font-size: .82rem;
}

.encrypted-backup-form {
  display: grid;
  grid-template-columns: minmax(180px, 1fr) minmax(180px, 1fr) auto;
  gap: 8px;
}

.encrypted-backup-form input {
  min-width: 0;
}

.trusted-device-list {
  display: grid;
  gap: 8px;
}

.trusted-device-row {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto auto;
  gap: 10px;
  align-items: center;
  min-width: 0;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.trusted-device-row.pending {
  border-color: #fed7aa;
  background: #fff7ed;
}

.trusted-device-row.revoked {
  opacity: .72;
}

.trusted-device-row strong,
.trusted-device-row span,
.trusted-device-row em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.trusted-device-row span,
.trusted-device-row em {
  color: var(--muted);
  font-size: .8rem;
}

.trusted-device-actions {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.local-ide-checklist-card {
  border-color: #bae6fd;
  background: #f0f9ff;
}

.local-ide-checklist {
  display: grid;
  gap: 8px;
  margin: 0;
  padding-left: 22px;
}

.local-ide-checklist li {
  padding: 8px;
  border: 1px solid #bae6fd;
  border-radius: 8px;
  background: #fff;
}

.local-ide-checklist strong,
.local-ide-checklist span {
  display: block;
}

.local-ide-checklist strong {
  color: #0369a1;
  font-size: .84rem;
}

.local-ide-checklist span {
  color: var(--muted);
  font-size: .82rem;
  line-height: 1.35;
}

.platform-launcher-plan {
  display: grid;
  grid-template-columns: repeat(3, minmax(160px, 1fr));
  gap: 10px;
  margin-top: 10px;
}

.platform-launcher-plan > div {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 10px;
  border: 1px solid #bae6fd;
  border-radius: 8px;
  background: #fff;
}

.platform-launcher-plan strong {
  color: #0369a1;
  font-size: .84rem;
}

.platform-launcher-plan span {
  color: var(--muted);
  font-size: .82rem;
  line-height: 1.35;
}

.ussw-wishlist-card {
  border-color: #ddd6fe;
  background: #faf5ff;
}

.ussw-wishlist-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(170px, 1fr));
  gap: 10px;
  margin-top: 10px;
}

.ussw-wishlist-grid > div {
  display: grid;
  gap: 6px;
  min-width: 0;
  padding: 10px;
  border: 1px solid #ddd6fe;
  border-radius: 8px;
  background: #fff;
}

.ussw-wishlist-grid strong {
  color: #7e22ce;
  font-size: .84rem;
}

.ussw-wishlist-grid span {
  color: var(--muted);
  font-size: .82rem;
  line-height: 1.35;
}

.ussw-ticket-board {
  display: grid;
  grid-template-columns: repeat(3, minmax(190px, 1fr));
  gap: 10px;
  margin-top: 12px;
}

.ussw-ticket-column {
  display: grid;
  align-content: start;
  gap: 8px;
  min-width: 0;
  padding: 10px;
  border: 1px solid #ddd6fe;
  border-radius: 8px;
  background: #fff;
}

.ussw-ticket-column h4 {
  margin: 0;
  color: #581c87;
  font-size: .9rem;
}

.project-board-column-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.project-board-archive-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
}

.project-board-sort-control {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  gap: 6px;
  margin-bottom: 10px;
}

.project-board-sort-control span {
  color: var(--muted);
  font-size: .78rem;
  font-weight: 900;
}

.project-board-sort-control button {
  border: 1px solid #fed7aa;
  border-radius: 6px;
  background: #fff7ed;
  color: #7c2d12;
  cursor: pointer;
  font-size: .75rem;
  font-weight: 900;
  padding: 5px 8px;
}

.project-board-sort-control button.active {
  border-color: #fb923c;
  background: #ffedd5;
  color: #431407;
}

.project-board-archive-button {
  border: 1px solid #c4b5fd;
  border-radius: 6px;
  background: #f5f3ff;
  color: #4c1d95;
  cursor: pointer;
  font-size: .75rem;
  font-weight: 900;
  padding: 5px 8px;
}

.project-board-archive-note {
  margin: 0;
  color: var(--muted);
  font-size: .8rem;
  line-height: 1.35;
}

.project-board-archive-details,
.project-board-active-completed {
  display: grid;
  gap: 8px;
}

.project-board-archive-details summary {
  cursor: pointer;
  color: #581c87;
  font-size: .82rem;
  font-weight: 900;
}

.project-board-archive-log {
  display: grid;
  gap: 10px;
  margin-top: 12px;
  padding: 12px;
  border: 1px solid #ddd6fe;
  border-radius: 8px;
  background: #fff;
}

.project-board-archive-log h4 {
  margin: 0 0 4px;
  color: #581c87;
  font-size: .9rem;
}

.project-board-archive-log-content article {
  display: grid;
  gap: 6px;
  padding: 10px;
  border: 1px solid #eadcff;
  border-radius: 8px;
  background: #faf5ff;
}

.project-board-archive-list {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 4px 14px;
  margin: 0;
  padding-left: 18px;
  color: var(--muted);
  font-size: .8rem;
  line-height: 1.35;
}

.ussw-ticket-column article {
  position: relative;
  display: grid;
  gap: 5px;
  min-width: 0;
  padding: 9px 64px 9px 9px;
  border: 1px solid #eadcff;
  border-radius: 8px;
  background: #faf5ff;
}

.project-item-note-button,
.project-item-done-button {
  position: absolute;
  top: 7px;
  height: 22px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  font-size: 0.68rem;
  font-weight: 900;
  line-height: 1;
  padding: 0 7px;
}

.project-item-note-button {
  right: 78px;
  border: 1px solid rgba(3, 105, 161, 0.24);
  background: #eff6ff;
  color: #075985;
}

.project-item-note-button:hover {
  background: #dbeafe;
  border-color: rgba(3, 105, 161, 0.42);
}

.project-item-done-button {
  right: 34px;
  border: 1px solid rgba(21, 128, 61, 0.24);
  background: #f0fdf4;
  color: #166534;
}

.project-item-done-button:hover {
  background: #dcfce7;
  border-color: rgba(21, 128, 61, 0.42);
}

.project-item-retire-button {
  position: absolute;
  top: 7px;
  right: 7px;
  width: 22px;
  height: 22px;
  display: inline-grid;
  place-items: center;
  border: 1px solid rgba(127, 29, 29, 0.22);
  border-radius: 999px;
  background: #fff;
  color: #991b1b;
  font-size: 0.72rem;
  font-weight: 900;
  line-height: 1;
}

.project-item-retire-button:hover {
  background: #fee2e2;
  border-color: rgba(127, 29, 29, 0.42);
}

.project-item-note-editor,
.project-item-complete-editor,
.project-board-completed-history {
  display: grid;
  gap: 8px;
}

.project-item-note-preview {
  padding: 7px 8px;
  border: 1px solid rgba(3, 105, 161, 0.16);
  border-radius: 8px;
  background: #eff6ff;
  color: #075985;
}

.project-item-note-editor,
.project-item-complete-editor {
  margin-top: 4px;
  padding: 8px;
  border-radius: 8px;
}

.project-item-note-editor {
  border: 1px solid rgba(3, 105, 161, 0.18);
  background: #eff6ff;
}

.project-item-complete-editor {
  border: 1px solid rgba(21, 128, 61, 0.18);
  background: #f0fdf4;
}

.project-item-note-editor label,
.project-item-complete-editor label {
  display: grid;
  gap: 5px;
  font-size: .78rem;
  font-weight: 900;
}

.project-item-note-editor label {
  color: #075985;
}

.project-item-complete-editor label {
  color: #166534;
}

.project-item-note-editor textarea,
.project-item-complete-editor textarea {
  min-height: 76px;
  resize: vertical;
  border-radius: 8px;
  padding: 8px;
  font: inherit;
  color: var(--ink);
}

.project-item-note-editor textarea {
  border: 1px solid rgba(3, 105, 161, 0.24);
}

.project-item-complete-editor textarea {
  border: 1px solid rgba(21, 128, 61, 0.24);
}

.project-item-note-editor > div,
.project-item-complete-editor > div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.project-board-retired-log {
  display: grid;
  gap: 10px;
  margin-top: 12px;
  padding: 12px;
  border: 1px solid rgba(127, 29, 29, 0.18);
  border-radius: 8px;
  background: #fff;
}

.project-board-retired-log h4 {
  margin: 0 0 4px;
  color: #7f1d1d;
  font-size: .9rem;
}

.project-board-retired-log-content {
  display: grid;
  gap: 8px;
}

.project-board-retired-log-content article {
  display: grid;
  gap: 6px;
  border: 1px solid rgba(127, 29, 29, 0.16);
  border-radius: 8px;
  background: #fff7ed;
  padding: 10px;
}

.project-board-retired-log-content article > div {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
}

.project-board-retired-log-content strong {
  color: #1e293b;
  font-size: .84rem;
}

.project-board-retired-log-content p,
.project-board-retired-log-content span {
  margin: 0;
  color: var(--muted);
  font-size: .8rem;
  line-height: 1.35;
}

.ussw-ticket-column article strong {
  color: var(--ink);
  font-size: .84rem;
}

.ussw-ticket-column article p {
  margin: 0;
  color: var(--muted);
  font-size: .8rem;
  line-height: 1.35;
}

.ticket-priority {
  justify-self: start;
  padding: 3px 7px;
  border-radius: 999px;
  color: #fff;
  font-size: .72rem;
  font-weight: 900;
}

.ticket-priority.high {
  background: #b91c1c;
}

.ticket-priority.medium {
  background: #b45309;
}

.ticket-priority.low {
  background: #047857;
}

.ticket-priority.done {
  background: #2563eb;
}

.developer-project-console h4 {
  margin: 0;
}

.pm-task-push-console {
  display: grid;
  gap: 12px;
  margin-top: 16px;
  padding-top: 14px;
  border-top: 1px solid var(--line);
}

.pm-task-push-form {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 10px;
}

.pm-task-push-form textarea,
.pm-task-push-form button {
  grid-column: 1 / -1;
}

.pm-task-push-list {
  display: grid;
  gap: 10px;
}

.pm-task-push-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.pm-task-push-row.pending-approval {
  border-color: #f1c27d;
  background: #fff8ed;
}

.pm-task-push-row.approved {
  border-color: #bdd6cb;
  background: #f0fdfa;
}

.pm-task-push-row.blocked {
  border-color: #fecaca;
  background: #fff1f2;
}

.pm-task-push-row.completed {
  opacity: .76;
}

.pm-task-push-row div:first-child {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.pm-task-push-row span,
.pm-task-push-row em {
  color: var(--muted);
}

.pm-task-approval-route {
  color: #92400e;
  font-size: 0.82rem;
  line-height: 1.35;
}

.pm-task-push-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 8px;
}

.time-tracking-card {
  display: grid;
  gap: 14px;
}

.time-summary-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
}

.time-summary-grid div {
  display: grid;
  gap: 4px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fbf9;
}

.time-summary-grid span,
.time-entry-row span,
.time-entry-row p {
  color: var(--muted);
}

.time-entry-form {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 10px;
  align-items: center;
}

.time-entry-form textarea,
.time-entry-form button {
  grid-column: 1 / -1;
}

.time-tracking-actions {
  display: flex;
  justify-content: flex-end;
}

.time-entry-list {
  display: grid;
  gap: 10px;
}

.time-entry-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-width: 0;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.time-entry-row.billable {
  border-color: #bdd6cb;
  background: #f8fbf9;
}

.time-entry-row div:first-child {
  display: grid;
  gap: 4px;
  min-width: 0;
}

.user-access-card {
  border-color: rgba(15, 118, 110, 0.22);
}

.user-access-grid,
.user-access-admin-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
  margin: 14px 0;
}

.user-access-grid div,
.user-access-admin-grid div,
.user-access-panel {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.82);
  padding: 12px;
}

.user-access-grid strong,
.user-access-admin-grid strong {
  display: block;
  color: #334155;
  font-size: 0.78rem;
  margin-bottom: 4px;
}

.user-access-grid span,
.user-access-admin-grid span {
  color: #0f172a;
  font-size: 0.92rem;
  overflow-wrap: anywhere;
}

.user-access-columns {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

.user-access-panel h4 {
  margin: 0 0 10px;
  color: #0f172a;
}

.user-access-list {
  display: grid;
  gap: 10px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.user-access-list li {
  display: grid;
  gap: 3px;
}

.user-access-list strong {
  color: #334155;
  font-size: 0.82rem;
}

.user-access-list span {
  color: #475569;
  font-size: 0.88rem;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.user-access-admin {
  border-top: 1px solid rgba(15, 23, 42, 0.1);
  margin-top: 14px;
  padding-top: 14px;
}

.work-item-status-card {
  border-color: rgba(124, 58, 237, 0.2);
}

.work-item-lifecycle,
.work-item-alert-grid,
.work-item-routing-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 190px), 1fr));
  gap: 10px;
  margin: 14px 0;
}

.work-item-state-pill,
.work-item-alert-grid div,
.work-item-alert-grid article,
.work-item-routing-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
  min-width: 0;
}

.work-item-state-pill strong,
.work-item-alert-grid strong,
.work-item-routing-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
  overflow-wrap: anywhere;
}

.work-item-state-pill span,
.work-item-alert-grid small,
.work-item-routing-grid span,
.pm-task-push-row small {
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.work-item-alert-grid span {
  display: block;
  color: #0f172a;
  font-size: clamp(.82rem, 1.8vw, 1.1rem);
  font-weight: 800;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.work-item-alert-grid p {
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.35;
  margin: 3px 0 0;
  overflow-wrap: anywhere;
}

.work-item-alert-grid .attention {
  border-color: rgba(190, 24, 93, 0.24);
  background: #fff7fb;
}

.security-checklist {
  margin: 14px 0 0;
  padding: 12px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #f8fafc;
}

.security-checklist h4 {
  margin: 0 0 8px;
  color: #0f172a;
  font-size: .86rem;
}

.security-checklist ul {
  display: grid;
  gap: 6px;
  margin: 0;
  padding-left: 18px;
}

.security-checklist li {
  color: #475569;
  font-size: .82rem;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.ai-prompt-registry-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
  gap: 12px;
  margin-top: 14px;
}

.ai-prompt-registry-card {
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-left-width: 5px;
  border-radius: 8px;
  background: #fff;
}

.ai-prompt-registry-card.enabled {
  border-left-color: #059669;
  background: #f0fdf4;
}

.ai-prompt-registry-card.planned {
  border-left-color: #d97706;
  background: #fffbeb;
}

.ai-prompt-registry-card.blocked {
  border-left-color: #dc2626;
  background: #fff1f2;
}

.ai-prompt-registry-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
}

.ai-prompt-registry-head strong,
.ai-prompt-registry-head small {
  display: block;
  overflow-wrap: anywhere;
}

.ai-prompt-registry-head strong {
  color: #0f172a;
  font-size: .9rem;
}

.ai-prompt-registry-head small {
  margin-top: 2px;
  color: var(--muted);
  font-size: .72rem;
}

.ai-prompt-registry-head span {
  flex: 0 0 auto;
  padding: 4px 7px;
  border: 1px solid rgba(15, 23, 42, .12);
  border-radius: 999px;
  background: rgba(255, 255, 255, .76);
  color: #0f172a;
  font-size: .7rem;
  font-weight: 900;
  white-space: nowrap;
}

.ai-prompt-registry-badges {
  display: flex;
  flex: 0 0 auto;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
  max-width: min(100%, 180px);
}

.ai-prompt-registry-badges .ticket-priority {
  margin: 0;
}

.ai-prompt-registry-card dl {
  display: grid;
  gap: 6px;
  margin: 0;
}

.ai-prompt-registry-card dl div {
  display: grid;
  grid-template-columns: 82px minmax(0, 1fr);
  gap: 8px;
  min-width: 0;
}

.ai-prompt-registry-card dt,
.ai-prompt-registry-card dd,
.ai-prompt-registry-card p {
  margin: 0;
  font-size: .8rem;
  line-height: 1.35;
  overflow-wrap: anywhere;
}

.ai-prompt-registry-card dt {
  color: #475569;
  font-weight: 850;
}

.ai-prompt-registry-card dd,
.ai-prompt-registry-card p {
  color: #1f2937;
}

.superuser-approval-route-card {
  border-color: rgba(180, 83, 9, 0.24);
}

.superuser-route-grid,
.superuser-audit-field-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.superuser-route-grid div,
.superuser-audit-field-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.superuser-route-grid strong,
.superuser-audit-field-grid strong {
  display: block;
  color: #92400e;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.superuser-route-grid span,
.superuser-audit-field-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.email-naming-card {
  border-color: rgba(2, 132, 199, 0.24);
}

.email-naming-grid,
.email-naming-rule-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.email-naming-area,
.email-naming-rule-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.email-naming-area h4 {
  color: #0369a1;
  margin: 0 0 10px;
}

.email-naming-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.email-naming-area li,
.email-naming-rule-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.email-naming-rule-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.marketing-outreach-card {
  border-color: rgba(190, 24, 93, 0.24);
}

.marketing-outreach-grid,
.marketing-outreach-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.marketing-outreach-area,
.marketing-outreach-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.marketing-outreach-area h4 {
  color: #9f1239;
  margin: 0 0 10px;
}

.marketing-outreach-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.marketing-outreach-area li,
.marketing-outreach-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.marketing-outreach-recommendation-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.client-provisioning-localization-card {
  border-color: rgba(13, 148, 136, 0.24);
}

.client-provisioning-localization-grid,
.client-provisioning-localization-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.client-provisioning-localization-area,
.client-provisioning-localization-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.client-provisioning-localization-area h4 {
  color: #0f766e;
  margin: 0 0 10px;
}

.client-provisioning-localization-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.client-provisioning-localization-area li,
.client-provisioning-localization-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.client-provisioning-localization-recommendation-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.advanced-accessibility-card {
  border-color: rgba(79, 70, 229, 0.24);
}

.advanced-accessibility-grid,
.advanced-accessibility-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.advanced-accessibility-area,
.advanced-accessibility-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.advanced-accessibility-area h4 {
  color: #4338ca;
  margin: 0 0 10px;
}

.advanced-accessibility-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.advanced-accessibility-area li,
.advanced-accessibility-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.advanced-accessibility-recommendation-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.business-development-card {
  border-color: rgba(20, 83, 45, 0.24);
}

.business-development-grid,
.business-development-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.business-development-area,
.business-development-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.business-development-area h4 {
  color: #14532d;
  margin: 0 0 10px;
}

.business-development-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.business-development-area li,
.business-development-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.business-development-recommendation-grid strong {
  display: block;
  color: #14532d;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.erp-contact-client-card {
  border-color: rgba(15, 118, 110, 0.24);
}

.erp-contact-client-grid,
.erp-contact-client-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.erp-contact-client-area,
.erp-contact-client-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.erp-contact-client-area h4 {
  color: #0f766e;
  margin: 0 0 10px;
}

.erp-contact-client-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.erp-contact-client-area li,
.erp-contact-client-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.erp-contact-client-recommendation-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.server-data-explorer-card {
  border-color: rgba(79, 70, 229, 0.24);
}

.server-data-explorer-grid,
.server-data-explorer-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.server-data-explorer-area,
.server-data-explorer-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.server-data-explorer-area h4 {
  color: #4338ca;
  margin: 0 0 10px;
}

.server-data-explorer-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.server-data-explorer-area li,
.server-data-explorer-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.server-data-explorer-recommendation-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.server-hardening-followup-card {
  border-color: rgba(190, 90, 24, 0.24);
}

.server-hardening-followup-grid,
.server-hardening-followup-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.server-hardening-followup-area,
.server-hardening-followup-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.server-hardening-followup-area h4 {
  color: #b45309;
  margin: 0 0 10px;
}

.server-hardening-followup-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.server-hardening-followup-area li,
.server-hardening-followup-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.server-hardening-followup-recommendation-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.toggle-filtered-navigation-card {
  border-color: rgba(4, 120, 87, 0.24);
}

.toggle-filtered-navigation-grid,
.toggle-filtered-navigation-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.toggle-filtered-navigation-area,
.toggle-filtered-navigation-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.toggle-filtered-navigation-area h4 {
  color: #047857;
  margin: 0 0 10px;
}

.toggle-filtered-navigation-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.toggle-filtered-navigation-area li,
.toggle-filtered-navigation-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.toggle-filtered-navigation-recommendation-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.permanent-audit-archive-card {
  border-color: rgba(124, 58, 237, 0.24);
}

.permanent-audit-archive-grid,
.permanent-audit-archive-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.permanent-audit-archive-area,
.permanent-audit-archive-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.permanent-audit-archive-area h4 {
  color: #6d28d9;
  margin: 0 0 10px;
}

.permanent-audit-archive-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.permanent-audit-archive-area li,
.permanent-audit-archive-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.permanent-audit-archive-recommendation-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.permanent-workbook-safe-removal-card {
  border-color: rgba(180, 83, 9, 0.24);
}

.permanent-workbook-safe-removal-grid,
.permanent-workbook-safe-removal-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.permanent-workbook-safe-removal-area,
.permanent-workbook-safe-removal-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.permanent-workbook-safe-removal-area h4 {
  color: #b45309;
  margin: 0 0 10px;
}

.permanent-workbook-safe-removal-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.permanent-workbook-safe-removal-area li,
.permanent-workbook-safe-removal-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.permanent-workbook-safe-removal-recommendation-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.deleted-workspace-archive-panel {
  border: 1px solid rgba(180, 83, 9, 0.22);
  border-radius: 8px;
  background: #fff7ed;
  padding: 12px;
  margin: 14px 0;
}

.deleted-workspace-archive-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 10px;
}

.deleted-workspace-archive-header strong,
.deleted-workspace-archive-list article strong {
  display: block;
  color: #7c2d12;
  font-size: 0.88rem;
}

.deleted-workspace-archive-header span,
.deleted-workspace-archive-list article span,
.deleted-workspace-archive-panel p {
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.35;
}

.deleted-workspace-archive-list {
  display: grid;
  gap: 8px;
}

.deleted-workspace-archive-list article {
  border: 1px solid rgba(180, 83, 9, 0.18);
  border-radius: 8px;
  background: #fff;
  padding: 10px;
}

.deleted-workspace-archive-list article p {
  margin: 5px 0 0;
}

.project-board-retire-card {
  border-color: rgba(220, 38, 38, 0.24);
}

.project-board-retire-grid,
.project-board-retire-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.project-board-retire-area,
.project-board-retire-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.project-board-retire-area h4 {
  color: #b91c1c;
  margin: 0 0 10px;
}

.project-board-retire-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.project-board-retire-area li,
.project-board-retire-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.project-board-retire-recommendation-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.research-options-checkpoint-card {
  border-color: rgba(8, 145, 178, 0.24);
}

.research-options-checkpoint-grid,
.research-options-checkpoint-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.research-options-checkpoint-area,
.research-options-checkpoint-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.research-options-checkpoint-area h4 {
  color: #0e7490;
  margin: 0 0 10px;
}

.research-options-checkpoint-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.research-options-checkpoint-area li,
.research-options-checkpoint-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.research-options-checkpoint-recommendation-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.interaction-latency-card {
  border-color: rgba(217, 119, 6, 0.26);
}

.interaction-latency-grid,
.interaction-latency-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.interaction-latency-area,
.interaction-latency-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.interaction-latency-area h4 {
  color: #b45309;
  margin: 0 0 10px;
}

.interaction-latency-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.interaction-latency-area li,
.interaction-latency-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.interaction-latency-recommendation-grid strong {
  display: block;
  color: #b45309;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.tab-hierarchy-naming-card {
  border-color: rgba(99, 102, 241, 0.26);
}

.tab-hierarchy-naming-grid,
.tab-hierarchy-naming-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.tab-hierarchy-naming-area,
.tab-hierarchy-naming-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.tab-hierarchy-naming-area h4 {
  color: #4f46e5;
  margin: 0 0 10px;
}

.tab-hierarchy-naming-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.tab-hierarchy-naming-area li,
.tab-hierarchy-naming-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.tab-hierarchy-naming-recommendation-grid strong {
  display: block;
  color: #4f46e5;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.console-responsive-cleanup-card {
  border-color: rgba(8, 145, 178, 0.26);
}

.console-responsive-cleanup-grid,
.console-responsive-cleanup-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.console-responsive-cleanup-area,
.console-responsive-cleanup-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.console-responsive-cleanup-area h4 {
  color: #0e7490;
  margin: 0 0 10px;
}

.console-responsive-cleanup-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.console-responsive-cleanup-area li,
.console-responsive-cleanup-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.console-responsive-cleanup-recommendation-grid strong {
  display: block;
  color: #0e7490;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.unipersonal-site-card {
  border-color: rgba(192, 38, 211, 0.24);
}

.unipersonal-site-grid,
.unipersonal-site-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.unipersonal-site-area,
.unipersonal-site-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.unipersonal-site-area h4 {
  color: #a21caf;
  margin: 0 0 10px;
}

.unipersonal-site-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.unipersonal-site-area li,
.unipersonal-site-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.unipersonal-site-recommendation-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.ai-task-push-mode-card {
  border-color: rgba(37, 99, 235, 0.24);
}

.ai-task-push-mode-grid,
.ai-task-push-mode-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.ai-task-push-mode-area,
.ai-task-push-mode-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.ai-task-push-mode-area h4 {
  color: #1d4ed8;
  margin: 0 0 10px;
}

.ai-task-push-mode-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.ai-task-push-mode-area li,
.ai-task-push-mode-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.ai-task-push-mode-recommendation-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.ai-provider-bridge-card {
  border-color: rgba(79, 70, 229, 0.24);
}

.ai-provider-bridge-grid,
.ai-provider-bridge-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.ai-provider-bridge-area,
.ai-provider-bridge-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.ai-provider-bridge-area h4 {
  color: #4f46e5;
  margin: 0 0 10px;
}

.ai-provider-bridge-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.ai-provider-bridge-area li,
.ai-provider-bridge-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.ai-provider-bridge-recommendation-grid strong {
  display: block;
  color: #4f46e5;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.proprietary-access-card {
  border-color: rgba(180, 83, 9, 0.24);
}

.proprietary-access-grid,
.proprietary-access-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.proprietary-access-area,
.proprietary-access-control-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.proprietary-access-area h4 {
  color: #b45309;
  margin: 0 0 10px;
}

.proprietary-access-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.proprietary-access-area li,
.proprietary-access-control-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.proprietary-access-control-grid strong {
  display: block;
  color: #b45309;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.database-scale-card {
  border-color: rgba(21, 94, 117, 0.24);
}

.database-scale-grid,
.database-scale-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.database-scale-area,
.database-scale-control-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.database-scale-area h4 {
  color: #155e75;
  margin: 0 0 10px;
}

.database-scale-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.database-scale-area li,
.database-scale-control-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.database-scale-control-grid strong {
  display: block;
  color: #155e75;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.multi-user-conflict-card {
  border-color: rgba(37, 99, 235, 0.24);
}

.multi-user-conflict-grid,
.multi-user-conflict-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.multi-user-conflict-area,
.multi-user-conflict-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.multi-user-conflict-area h4 {
  margin: 0 0 10px;
  color: #1d4ed8;
}

.multi-user-conflict-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.multi-user-conflict-area li,
.multi-user-conflict-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.multi-user-conflict-recommendation-grid strong {
  display: block;
  color: #1d4ed8;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.ai-upgrade-control-card {
  border-color: rgba(14, 116, 144, 0.24);
}

.ai-upgrade-control-grid,
.ai-upgrade-control-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.ai-upgrade-control-area,
.ai-upgrade-control-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.ai-upgrade-control-area h4 {
  color: #0e7490;
  margin: 0 0 10px;
}

.ai-upgrade-control-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.ai-upgrade-control-area li,
.ai-upgrade-control-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.ai-upgrade-control-recommendation-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.notes-workspace-system-card {
  border-color: rgba(124, 58, 237, 0.24);
}

.manual-workspace-panel {
  display: grid;
  gap: 18px;
}

.manual-library-section {
  display: grid;
  gap: 14px;
}

.manual-library-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 12px;
}

.manual-library-card,
.manual-policy-grid div {
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255, 255, 255, .72);
}

.manual-library-card h3 {
  margin: 8px 0 6px;
  font-size: .98rem;
}

.manual-library-card p,
.manual-library-meta,
.manual-library-lock-note,
.manual-policy-grid span {
  margin: 0;
  color: var(--muted);
  font-size: .86rem;
  line-height: 1.45;
}

.manual-library-scope {
  width: fit-content;
  padding: 3px 8px;
  border-radius: 999px;
  background: rgba(15, 118, 110, .12);
  color: var(--accent-strong);
  font-size: .72rem;
  font-weight: 850;
  text-transform: uppercase;
}

.manual-library-scope.protected {
  background: rgba(161, 98, 7, .13);
  color: #92400e;
}

.manual-library-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  align-items: center;
  justify-content: space-between;
}

.manual-library-meta a {
  color: var(--accent-strong);
  font-weight: 800;
}

.manual-policy-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 12px;
}

.manual-abbreviation-section {
  display: grid;
  gap: 14px;
}

.manual-abbreviation-guidelines {
  display: grid;
  gap: 8px;
  color: var(--muted);
  font-size: .88rem;
  line-height: 1.45;
}

.manual-abbreviation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(180px, 1fr));
  gap: 8px;
}

.manual-abbreviation-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 10px;
  min-width: 0;
  padding: 9px 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: rgba(255, 255, 255, .68);
}

.manual-abbreviation-row span,
.manual-abbreviation-row strong {
  min-width: 0;
  overflow-wrap: anywhere;
}

.manual-abbreviation-row span {
  color: var(--muted);
  font-size: .84rem;
}

.manual-abbreviation-row strong {
  color: var(--ink);
  font-size: .86rem;
  text-align: right;
}

.manual-applied-title {
  margin-top: 8px;
}

.manual-abbreviation-grid.applied .control-empty {
  grid-column: 1 / -1;
}

.manual-abbreviation-row.applied strong {
  color: var(--accent-strong);
}

body.theme-dark .manual-library-card,
body.theme-dark .manual-policy-grid div,
body.theme-dark .manual-abbreviation-row {
  background: rgba(17, 24, 39, .58);
}

.notes-workspace-system-grid,
.notes-workspace-system-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.notes-workspace-system-area,
.notes-workspace-system-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.notes-workspace-system-area h4 {
  color: #6d28d9;
  margin: 0 0 10px;
}

.notes-workspace-system-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.notes-workspace-system-area li,
.notes-workspace-system-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.notes-workspace-system-recommendation-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.department-workspace-card {
  border-color: rgba(71, 85, 105, 0.28);
}

.department-workspace-grid,
.department-workspace-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.department-workspace-area,
.department-workspace-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.department-workspace-area h4 {
  color: #334155;
  margin: 0 0 10px;
}

.department-workspace-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.department-workspace-area li,
.department-workspace-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.department-workspace-recommendation-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.major-workspace-reorg-card {
  border-color: rgba(79, 70, 229, 0.24);
}

.major-workspace-reorg-grid,
.major-workspace-reorg-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.major-workspace-reorg-area,
.major-workspace-reorg-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.major-workspace-reorg-area h4 {
  color: #4338ca;
  margin: 0 0 10px;
}

.major-workspace-reorg-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.major-workspace-reorg-area li,
.major-workspace-reorg-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.major-workspace-reorg-recommendation-grid strong {
  display: block;
  color: #4338ca;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.employee-signin-authority-card {
  border-color: rgba(5, 150, 105, 0.26);
}

.employee-signin-authority-grid,
.employee-signin-authority-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.employee-signin-authority-area,
.employee-signin-authority-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.employee-signin-authority-area h4 {
  color: #047857;
  margin: 0 0 10px;
}

.employee-signin-authority-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.employee-signin-authority-area li,
.employee-signin-authority-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.employee-signin-authority-recommendation-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.cloud-refresher-card {
  border-color: rgba(2, 132, 199, 0.24);
}

.cloud-refresher-grid,
.cloud-refresher-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.cloud-refresher-area,
.cloud-refresher-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.cloud-refresher-area h4 {
  color: #0284c7;
  margin: 0 0 10px;
}

.cloud-refresher-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.cloud-refresher-area li,
.cloud-refresher-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.cloud-refresher-recommendation-grid strong {
  display: block;
  color: #0284c7;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.mobile-tablet-access-card {
  border-color: rgba(13, 148, 136, 0.24);
}

.mobile-tablet-access-grid,
.mobile-tablet-access-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.mobile-tablet-access-area,
.mobile-tablet-access-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.mobile-tablet-access-area h4 {
  color: #0d9488;
  margin: 0 0 10px;
}

.mobile-tablet-access-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.mobile-tablet-access-area li,
.mobile-tablet-access-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.mobile-tablet-access-recommendation-grid strong {
  display: block;
  color: #0d9488;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.ussw-enforcement-card {
  border-color: rgba(30, 64, 175, 0.24);
}

.ussw-enforcement-grid,
.ussw-enforcement-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.ussw-enforcement-area,
.ussw-enforcement-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.ussw-enforcement-area h4 {
  color: #1e40af;
  margin: 0 0 10px;
}

.ussw-enforcement-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.ussw-enforcement-area li,
.ussw-enforcement-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.ussw-enforcement-recommendation-grid strong {
  display: block;
  color: #1e40af;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.remote-browser-calibration-card {
  border-color: rgba(124, 45, 18, 0.24);
}

.remote-browser-calibration-grid,
.remote-browser-calibration-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.remote-browser-calibration-area,
.remote-browser-calibration-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.remote-browser-calibration-area h4 {
  color: #7c2d12;
  margin: 0 0 10px;
}

.remote-browser-calibration-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.remote-browser-calibration-area li,
.remote-browser-calibration-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.remote-browser-calibration-recommendation-grid strong {
  display: block;
  color: #7c2d12;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.remote-work-test-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 12px;
  margin: 14px 0 0;
}

.remote-work-test-card {
  display: grid;
  gap: 10px;
  min-width: 0;
  padding: 12px;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
}

.remote-work-test-card.pass {
  border-color: rgba(22, 163, 74, 0.32);
  background: #f7fdf9;
}

.remote-work-test-card.issue {
  border-color: rgba(220, 38, 38, 0.34);
  background: #fff7f7;
}

.remote-work-test-heading {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 10px;
  min-width: 0;
}

.remote-work-test-heading h4 {
  margin: 6px 0 0;
  color: #111827;
  font-size: 0.92rem;
  line-height: 1.25;
}

.remote-work-test-heading > span,
.remote-work-test-meta,
.remote-work-test-card p {
  color: var(--muted);
  font-size: 0.82rem;
  line-height: 1.35;
}

.remote-work-test-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.remote-work-test-actions button {
  border: 1px solid #cbd5e1;
  border-radius: 6px;
  background: #f8fafc;
  color: #0f172a;
  font-weight: 700;
  padding: 6px 10px;
  cursor: pointer;
}

.remote-work-test-card label {
  display: grid;
  gap: 5px;
  color: #334155;
  font-size: 0.82rem;
  font-weight: 700;
}

.remote-work-test-card textarea {
  width: 100%;
  min-width: 0;
  resize: vertical;
}

.pm-task-push-row small {
  display: block;
}

.barebones-unisite-card {
  border-color: rgba(14, 116, 144, 0.22);
}

.barebones-profile-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(230px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.barebones-profile-card,
.barebones-setup-flow div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.barebones-profile-section {
  display: grid;
  gap: 6px;
  margin-top: 12px;
}

.barebones-profile-section strong,
.barebones-setup-flow strong {
  color: #1e293b;
  font-size: 0.84rem;
}

.barebones-profile-section ul {
  display: grid;
  gap: 4px;
  margin: 0;
  padding-left: 18px;
}

.barebones-profile-section li,
.barebones-setup-flow span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.barebones-setup-flow {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
  gap: 10px;
}

.barebones-setup-flow div {
  display: grid;
  gap: 5px;
}

.employee-workspace-landing-card {
  border-color: rgba(20, 184, 166, 0.24);
}

.employee-workspace-landing-grid,
.employee-workspace-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.employee-workspace-landing-area,
.employee-workspace-control-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.employee-workspace-landing-area h4 {
  margin: 0 0 8px;
  color: #0f766e;
}

.employee-workspace-landing-area ul {
  display: grid;
  gap: 4px;
  margin: 0;
  padding-left: 18px;
}

.employee-workspace-landing-area li,
.employee-workspace-control-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.employee-workspace-control-grid strong {
  display: block;
  margin-bottom: 5px;
  color: #1e293b;
}

.client-file-portal-card {
  border-color: rgba(14, 165, 233, 0.24);
}

.client-file-portal-grid,
.client-file-portal-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.client-file-portal-area,
.client-file-portal-control-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.client-file-portal-area h4 {
  color: #1e293b;
  margin: 0 0 10px;
}

.client-file-portal-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.client-file-portal-area li,
.client-file-portal-control-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.client-file-portal-control-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.client-secure-onboarding-card {
  border-color: rgba(234, 88, 12, 0.24);
}

.client-secure-onboarding-grid,
.client-secure-onboarding-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.client-secure-onboarding-area,
.client-secure-onboarding-control-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.client-secure-onboarding-area h4 {
  margin: 0 0 10px;
  color: #9a3412;
}

.client-secure-onboarding-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.client-secure-onboarding-area li,
.client-secure-onboarding-control-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.client-secure-onboarding-control-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.client-access-request-card {
  border-color: rgba(22, 101, 52, 0.24);
}

.client-access-request-grid,
.client-access-request-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.client-access-request-area,
.client-access-request-control-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.client-access-request-area h4 {
  margin: 0 0 10px;
  color: #166534;
}

.client-access-request-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.client-access-request-area li,
.client-access-request-control-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.client-access-request-control-grid strong {
  display: block;
  color: #166534;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.remote-support-console-card {
  border-color: rgba(37, 99, 235, 0.24);
}

.remote-support-console-grid,
.remote-support-control-grid,
.remote-support-research-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.remote-support-console-area,
.remote-support-control-grid div,
.remote-support-research-grid article {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.remote-support-console-area h4 {
  margin: 0 0 10px;
  color: #1d4ed8;
}

.remote-support-console-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.remote-support-console-area li,
.remote-support-control-grid span,
.remote-support-research-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.remote-support-control-grid strong,
.remote-support-research-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.technical-task-toggle-card {
  border-color: rgba(180, 83, 9, 0.24);
}

.technical-task-toggle-grid,
.technical-task-toggle-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.technical-task-toggle-area,
.technical-task-toggle-control-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.technical-task-toggle-area h4 {
  color: #92400e;
  margin: 0 0 10px;
}

.technical-task-toggle-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.technical-task-toggle-area li,
.technical-task-toggle-control-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.technical-task-toggle-control-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.contractor-system-card {
  border-color: rgba(79, 70, 229, 0.22);
}

.contractor-system-grid,
.contractor-dashboard-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.contractor-system-area,
.contractor-dashboard-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.contractor-system-area h4 {
  color: #1e293b;
  margin: 0 0 10px;
}

.contractor-system-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.contractor-system-area li,
.contractor-dashboard-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.contractor-dashboard-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.invoicing-system-card {
  border-color: rgba(20, 83, 45, 0.22);
}

.invoicing-system-grid,
.invoicing-permission-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.invoicing-system-area,
.invoicing-permission-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.invoicing-system-area h4 {
  color: #1e293b;
  margin: 0 0 10px;
}

.invoicing-system-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.invoicing-system-area li,
.invoicing-permission-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.invoicing-permission-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.receivables-system-card {
  border-color: rgba(13, 148, 136, 0.22);
}

.receivables-system-grid,
.receivables-permission-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.receivables-system-area,
.receivables-permission-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.receivables-system-area h4 {
  color: #1e293b;
  margin: 0 0 10px;
}

.receivables-system-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.receivables-system-area li,
.receivables-permission-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.receivables-permission-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.afs-system-card {
  border-color: rgba(15, 23, 42, 0.22);
}

.afs-system-grid,
.afs-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.afs-system-area,
.afs-control-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.afs-system-area h4 {
  color: #1e293b;
  margin: 0 0 10px;
}

.afs-system-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.afs-system-area li,
.afs-control-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.afs-control-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.tax-services-card {
  border-color: rgba(127, 29, 29, 0.24);
}

.tax-services-grid,
.tax-services-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.tax-services-area,
.tax-services-control-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.tax-services-area h4 {
  color: #7f1d1d;
  margin: 0 0 10px;
}

.tax-services-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.tax-services-area li,
.tax-services-control-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.tax-services-control-grid strong {
  display: block;
  color: #7f1d1d;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.backup-failover-card {
  border-color: rgba(67, 56, 202, 0.24);
}

.backup-failover-grid,
.backup-failover-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.backup-failover-area,
.backup-failover-control-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.backup-failover-area h4 {
  color: #4338ca;
  margin: 0 0 10px;
}

.backup-failover-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.backup-failover-area li,
.backup-failover-control-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.backup-failover-control-grid strong {
  display: block;
  color: #4338ca;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.provider-strategy-card {
  border-color: rgba(14, 116, 144, 0.24);
}

.provider-strategy-grid,
.provider-strategy-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.provider-strategy-area,
.provider-strategy-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.provider-strategy-area h4 {
  color: #0e7490;
  margin: 0 0 10px;
}

.provider-strategy-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.provider-strategy-area li,
.provider-strategy-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.provider-strategy-recommendation-grid strong {
  display: block;
  color: #0e7490;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.business-banking-card {
  border-color: rgba(88, 28, 135, 0.24);
}

.business-banking-grid,
.business-banking-recommendation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.business-banking-area,
.business-banking-recommendation-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.business-banking-area h4 {
  color: #581c87;
  margin: 0 0 10px;
}

.business-banking-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.business-banking-area li,
.business-banking-recommendation-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.business-banking-recommendation-grid strong {
  display: block;
  color: #581c87;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.tenant-barebones-card {
  border-color: rgba(15, 118, 110, 0.24);
}

.tenant-barebones-grid,
.tenant-barebones-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.tenant-barebones-area,
.tenant-barebones-control-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.tenant-barebones-area h4 {
  color: #0f766e;
  margin: 0 0 10px;
}

.tenant-barebones-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.tenant-barebones-area li,
.tenant-barebones-control-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.tenant-barebones-control-grid strong {
  display: block;
  color: #0f766e;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.time-off-request-card {
  border-color: rgba(37, 99, 235, 0.24);
}

.time-off-request-grid,
.time-off-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.time-off-request-area,
.time-off-control-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.time-off-request-area h4 {
  color: #1e293b;
  margin: 0 0 10px;
}

.time-off-request-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.time-off-request-area li,
.time-off-control-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.time-off-control-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.hrms-system-card {
  border-color: rgba(79, 70, 229, 0.24);
}

.hrms-system-grid,
.hrms-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.hrms-system-area,
.hrms-control-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.hrms-system-area h4 {
  color: #3730a3;
  margin: 0 0 10px;
}

.hrms-system-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.hrms-system-area li,
.hrms-control-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.hrms-control-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.legal-employee-board-card {
  border-color: rgba(180, 83, 9, 0.24);
}

.legal-employee-board-grid,
.legal-employee-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.legal-employee-board-area,
.legal-employee-control-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.legal-employee-board-area h4 {
  color: #1e293b;
  margin: 0 0 10px;
}

.legal-employee-board-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.legal-employee-board-area li,
.legal-employee-control-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.legal-employee-control-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.communication-board-card {
  border-color: rgba(8, 145, 178, 0.24);
}

.communication-board-grid,
.communication-board-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.communication-board-area,
.communication-board-control-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.communication-board-area h4 {
  color: #1e293b;
  margin: 0 0 10px;
}

.communication-board-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.communication-board-area li,
.communication-board-control-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.communication-board-control-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.collaborative-communication-card {
  border-color: rgba(99, 102, 241, 0.24);
}

.collaborative-communication-grid,
.collaborative-communication-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.collaborative-communication-area,
.collaborative-communication-control-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.collaborative-communication-area h4 {
  color: #1e293b;
  margin: 0 0 10px;
}

.collaborative-communication-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.collaborative-communication-area li,
.collaborative-communication-control-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.collaborative-communication-control-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.video-call-log-panel {
  display: grid;
  gap: 12px;
  margin-top: 14px;
  padding: 12px;
  border: 1px solid rgba(14, 165, 233, 0.18);
  border-radius: 8px;
  background: #f8fafc;
}

.video-call-log-panel h4 {
  margin: 0;
}

.video-call-log-grid,
.video-call-log-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
}

.video-call-log-area,
.video-call-log-control-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.video-call-log-area h4 {
  margin: 0 0 8px;
  color: #075985;
  font-size: .9rem;
}

.video-call-log-area p,
.video-call-log-control-grid span {
  margin: 0;
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.video-call-log-control-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.media-captioning-card {
  border-color: rgba(234, 88, 12, 0.24);
}

.media-captioning-grid,
.media-captioning-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.media-captioning-area,
.media-captioning-control-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.media-captioning-area h4 {
  margin: 0 0 8px;
  color: #c2410c;
  font-size: .9rem;
}

.media-captioning-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.media-captioning-area li,
.media-captioning-control-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.media-captioning-control-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.employee-benefit-system-card {
  border-color: rgba(15, 118, 110, 0.24);
}

.employee-benefit-system-grid,
.employee-benefit-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.employee-benefit-system-area,
.employee-benefit-control-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.employee-benefit-system-area h4 {
  color: #1e293b;
  margin: 0 0 10px;
}

.employee-benefit-system-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.employee-benefit-system-area li,
.employee-benefit-control-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.employee-benefit-control-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.internal-portal-research-card {
  border-color: rgba(99, 102, 241, 0.24);
}

.internal-portal-research-grid,
.internal-portal-tier-grid,
.internal-portal-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.internal-portal-research-area,
.internal-portal-tier-card,
.internal-portal-control-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.internal-portal-tier-grid {
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.internal-portal-tier-card {
  background: #f8f7ff;
}

.internal-portal-research-area h4,
.internal-portal-tier-card h4 {
  color: #1e293b;
  margin: 0 0 10px;
}

.internal-portal-tier-card p {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.4;
  margin: 0 0 10px;
}

.internal-portal-research-area ul,
.internal-portal-tier-card ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.internal-portal-research-area li,
.internal-portal-tier-card li,
.internal-portal-control-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.internal-portal-control-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.public-website-system-card {
  border-color: rgba(2, 132, 199, 0.24);
}

.public-website-system-grid,
.public-website-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.public-website-system-area,
.public-website-control-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.public-website-system-area h4 {
  color: #1e293b;
  margin: 0 0 10px;
}

.public-website-system-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.public-website-system-area li,
.public-website-control-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.public-website-control-grid strong {
  display: block;
  color: #1e293b;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.tbdo-public-site-integration-card {
  border-color: rgba(14, 116, 144, 0.24);
}

.tbdo-public-site-integration-grid,
.tbdo-public-site-integration-control-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(210px, 1fr));
  gap: 12px;
  margin: 14px 0;
}

.tbdo-public-site-integration-area,
.tbdo-public-site-integration-control-grid div {
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

.tbdo-public-site-integration-area h4 {
  color: #0e7490;
  margin: 0 0 10px;
}

.tbdo-public-site-integration-area ul {
  display: grid;
  gap: 5px;
  margin: 0;
  padding-left: 18px;
}

.tbdo-public-site-integration-area li,
.tbdo-public-site-integration-control-grid span {
  color: var(--muted);
  font-size: 0.84rem;
  line-height: 1.35;
}

.tbdo-public-site-integration-control-grid strong {
  display: block;
  color: #0e7490;
  font-size: 0.84rem;
  margin-bottom: 5px;
}

.developer-project-form {
  display: grid;
  grid-template-columns: repeat(3, minmax(150px, 1fr));
  gap: 8px;
}

.developer-project-form input,
.developer-project-form select {
  min-width: 0;
}

.developer-assignment-list {
  display: grid;
  gap: 6px;
  min-width: 0;
  max-height: 132px;
  overflow: auto;
  padding: 8px;
  border: 1px solid #c7d2fe;
  border-radius: 8px;
  background: #fff;
}

.developer-local-approval {
  min-height: 38px;
  align-items: center;
  padding: 8px;
  border: 1px solid #fed7aa;
  border-radius: 8px;
  background: #fff7ed;
}

.developer-boundary-preview {
  display: flex;
  align-items: center;
  gap: 8px;
  grid-column: 1 / -1;
  min-height: 38px;
  padding: 8px;
  border: 1px solid #c7d2fe;
  border-radius: 8px;
  color: #3730a3;
  background: #eef2ff;
  font-size: .82rem;
  font-weight: 800;
}

.developer-boundary-preview.warn {
  border-color: #fed7aa;
  color: #9a3412;
  background: #fff7ed;
}

.developer-boundary-preview.ok {
  border-color: #bdd6cb;
  color: #115e59;
  background: #eef8f5;
}

.developer-boundary-preview button {
  flex: 0 0 auto;
  min-height: 30px;
  margin-left: auto;
  border: 1px solid currentColor;
  border-radius: 8px;
  color: inherit;
  background: #fff;
  font-weight: 850;
}

.developer-project-form button,
.developer-project-actions button,
.pm-task-push-form button,
.pm-task-push-actions button {
  min-height: 34px;
  padding: 0 10px;
  border: 1px solid #c7d2fe;
  border-radius: 8px;
  color: #3730a3;
  background: #eef2ff;
  font-weight: 850;
}

.developer-project-form button {
  color: #fff;
  background: #4338ca;
}

.developer-project-list {
  display: grid;
  gap: 8px;
}

.developer-project-row {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) auto;
  gap: 10px;
  align-items: center;
  min-width: 0;
  padding: 10px;
  border: 1px solid #c7d2fe;
  border-radius: 8px;
  background: #fff;
}

.developer-project-row strong,
.developer-project-row span,
.developer-project-row em {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.developer-project-row span,
.developer-project-row em {
  color: var(--muted);
  font-size: .82rem;
  font-style: normal;
}

.developer-project-actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  gap: 6px;
}

.developer-project-actions button:disabled {
  cursor: not-allowed;
  opacity: .5;
}

.developer-project-safety {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.developer-project-safety span {
  padding: 4px 8px;
  border: 1px solid #fed7aa;
  border-radius: 999px;
  color: #9a3412;
  background: #fff7ed;
  font-size: .76rem;
  font-weight: 800;
}

.developer-project-safety span.ok {
  border-color: #bbf7d0;
  color: #047857;
  background: #f0fdf4;
}

.developer-project-actions button.danger,
.developer-project-form button.danger {
  border-color: #fecaca;
  color: #991b1b;
  background: #fff1f2;
}

.developer-project-edit,
.developer-project-history {
  grid-column: 1 / -1;
}

.developer-project-edit summary,
.developer-project-history summary {
  cursor: pointer;
  color: #4338ca;
  font-size: .82rem;
  font-weight: 850;
}

.developer-history-list {
  display: grid;
  gap: 4px;
  margin-top: 8px;
}

.developer-history-list p {
  margin: 0;
  color: var(--muted);
  font-size: .8rem;
  overflow-wrap: anywhere;
}

.zero-trust-grid p,
.cloud-app-policy-grid p,
.tenant-platform-grid p,
.ai-platform-grid p,
.developer-tools-grid p,
.zero-trust-steps ol {
  margin: 0;
  color: var(--muted);
  font-size: .82rem;
  line-height: 1.4;
}

.zero-trust-steps {
  margin-top: 10px;
}

.zero-trust-steps ol {
  padding-left: 20px;
}

.security-section-title button {
  min-height: 32px;
  padding: 0 10px;
  border: 1px solid #bdd6cb;
  border-radius: 8px;
  color: #115e59;
  background: #eef8f5;
  font-weight: 850;
}

.security-activity-filter-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  padding: 8px 0;
}

.security-activity-filter-bar span {
  color: var(--muted);
  font-size: .82rem;
  font-weight: 800;
}

.security-activity-filter-bar button {
  min-height: 30px;
  padding: 0 10px;
  border: 1px solid #bdd6cb;
  border-radius: 8px;
  color: #115e59;
  background: #eef8f5;
  font-weight: 850;
}

.security-activity-filter-bar button:disabled {
  cursor: not-allowed;
  opacity: .55;
}

.security-activity-filters {
  display: grid;
  grid-template-columns: repeat(4, minmax(150px, 1fr));
  gap: 10px;
  margin-bottom: 10px;
}

.ticket-console-card {
  grid-column: 1 / -1;
}

.ticket-form {
  display: grid;
  grid-template-columns: 140px minmax(180px, 1fr) 140px;
  gap: 8px;
}

.ticket-form input,
.ticket-form select,
.ticket-form textarea {
  min-width: 0;
}

.ticket-form input[type="text"] {
  grid-column: span 2;
}

.ticket-form textarea,
.ticket-form button {
  grid-column: 1 / -1;
}

.ticket-list {
  display: grid;
  gap: 8px;
}

.ticket-row {
  display: grid;
  grid-template-columns: minmax(240px, 1fr) minmax(120px, auto) minmax(130px, auto);
  gap: 10px;
  align-items: start;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.ticket-row.client {
  border-color: #bdd6cb;
  background: #f8fbf9;
}

.ticket-row strong,
.ticket-row span,
.ticket-row p {
  display: block;
  min-width: 0;
  overflow-wrap: anywhere;
}

.ticket-row p {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: .84rem;
}

.ticket-row span {
  color: var(--muted);
  font-size: .8rem;
  font-weight: 750;
}

.ticket-scope {
  justify-self: start;
  padding: 5px 9px;
  border: 1px solid #bdd6cb;
  border-radius: 999px;
  background: #eef8f5;
  color: #115e59 !important;
  font-weight: 850 !important;
}

.security-filter-group {
  display: grid;
  align-content: start;
  gap: 6px;
  min-width: 0;
  padding: 10px;
  border: 1px solid #d6e4de;
  border-radius: 8px;
  background: #f8fbf9;
}

.security-filter-group strong {
  font-size: .78rem;
  text-transform: uppercase;
  color: #115e59;
}

.security-filter-group .assignment-option span {
  overflow-wrap: anywhere;
}

.security-activity-list {
  display: grid;
  gap: 8px;
}

.security-activity-row {
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fbf9;
}

.security-activity-row summary {
  display: grid;
  grid-template-columns: minmax(150px, .45fr) minmax(220px, 1fr) minmax(150px, auto);
  gap: 8px;
  cursor: pointer;
  align-items: center;
}

.security-activity-row span,
.security-activity-row em {
  min-width: 0;
  overflow-wrap: anywhere;
  color: var(--muted);
  font-size: .82rem;
  font-style: normal;
}

.security-activity-row pre {
  max-height: 220px;
  overflow: auto;
  margin: 10px 0 0;
  padding: 10px;
  border-radius: 8px;
  background: #111827;
  color: #f9fafb;
  font-size: .78rem;
}

@media (max-width: 760px) {
  .security-permission-row,
  .security-activity-row summary {
    grid-template-columns: 1fr;
  }

  .security-activity-filters {
    grid-template-columns: 1fr;
  }

  .zero-trust-grid {
    grid-template-columns: 1fr;
  }

  .cloud-app-policy-grid {
    grid-template-columns: 1fr;
  }

  .tenant-platform-grid {
    grid-template-columns: 1fr;
  }

  .ai-platform-grid {
    grid-template-columns: 1fr;
  }

  .developer-tools-grid {
    grid-template-columns: 1fr;
  }

  .developer-project-form,
  .developer-project-row {
    grid-template-columns: 1fr;
  }

  .developer-project-actions {
    justify-content: flex-start;
  }
}

.security-user-row strong,
.security-user-row span,
.security-role-row strong,
.security-role-row span {
  display: block;
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.security-user-row span,
.security-role-row span,
.security-role-row em {
  color: var(--muted);
  font-size: .82rem;
}

.security-role-row em {
  min-width: 0;
  overflow-wrap: anywhere;
  font-style: normal;
}

.security-role-row span,
.security-role-row em {
  overflow: visible;
  overflow-wrap: anywhere;
  text-overflow: clip;
  white-space: normal;
}

.security-invite-history {
  display: grid;
  gap: 8px;
  margin-top: 10px;
}

.security-invite-history summary {
  cursor: pointer;
  color: var(--muted);
  font-weight: 850;
}

.drive-filter-bar {
  display: grid;
  grid-column: 1 / -1;
  grid-template-columns: minmax(220px, 1fr) minmax(190px, auto) minmax(190px, auto);
  gap: 8px;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.drive-filter-bar input,
.drive-filter-bar select {
  min-height: 38px;
}

.drive-empty {
  grid-column: 1 / -1;
  margin: 0;
  padding: 14px;
  border: 1px dashed #bdd6cb;
  border-radius: 8px;
  color: var(--muted);
  background: #f6fbf8;
}

.drive-assignment-group {
  display: grid;
  gap: 8px;
}

.drive-assignment-group h4 {
  margin: 4px 0 0;
  color: var(--muted);
  font-size: .76rem;
  font-weight: 900;
  text-transform: uppercase;
}

.drive-app-card em {
  display: inline-flex;
  width: fit-content;
  margin-top: 3px;
  padding: 2px 6px;
  border: 1px solid #bdd6cb;
  border-radius: 8px;
  color: #115e59;
  background: #eef8f5;
  font-size: .68rem;
  font-style: normal;
  font-weight: 900;
}

.drive-category {
  display: grid;
  grid-template-rows: auto minmax(190px, 1fr);
  gap: 10px;
  min-width: 0;
  min-height: 300px;
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.drive-category:not(.locked) {
  cursor: grab;
}

.drive-category.locked {
  cursor: default;
}

.drive-category.stretched {
  min-height: 500px;
}

.drive-category.drag-over {
  border-radius: 8px;
  outline: 3px solid rgba(15, 118, 110, .14);
  outline-offset: 3px;
}

.drive-category-title {
  display: grid;
  gap: 8px;
}

.drive-category-heading {
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 10px;
  min-height: 32px;
}

.drive-category-title h3 {
  margin: 0;
  min-width: 0;
  overflow-wrap: anywhere;
  font-size: 1rem;
  line-height: 1.2;
}

.drive-category-heading span {
  display: inline-flex;
  align-items: center;
  min-height: 24px;
  padding: 0 7px;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--muted);
  background: #f8fbf9;
  font-size: .76rem;
  font-weight: 850;
}

.drive-category-controls {
  display: grid;
  grid-template-columns: minmax(118px, 1fr) repeat(3, 28px);
  gap: 6px;
  align-items: center;
}

.drive-category-controls button {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 1px solid var(--line);
  border-radius: 8px;
  color: var(--muted);
  background: #fff;
}

.drive-category-controls select {
  width: 100%;
  min-height: 28px;
  padding: 0 24px 0 8px;
  font-size: .76rem;
  font-weight: 800;
}

.drive-category-controls button:hover {
  border-color: #bdd6cb;
  color: var(--accent);
  background: #eef8f5;
}

.drive-category-controls svg {
  width: 15px;
  height: 15px;
}

.drive-box {
  display: grid;
  align-content: start;
  gap: 8px;
  min-height: 190px;
  max-height: 280px;
  overflow-y: auto;
  padding: 10px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #f8fbf9;
}

.drive-category.stretched .drive-box {
  max-height: none;
}

.drive-box.drag-over {
  border-color: #87b9a4;
  box-shadow: inset 0 0 0 2px rgba(15, 118, 110, .14);
}

.drive-app-card {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 34px 34px;
  gap: 8px;
  align-items: center;
  min-height: 58px;
  padding: 9px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: 0 8px 18px rgba(18, 40, 31, .08);
}

.drive-app-card span {
  min-width: 0;
}

.drive-app-card strong,
.drive-app-card small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.drive-app-card small {
  margin-top: 2px;
  color: var(--muted);
  font-size: .76rem;
}

.dialog-note {
  margin: 0;
  color: var(--muted);
  line-height: 1.5;
}

.trash-note,
.trash-empty-message {
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fcfdfc;
}

.box-hide-confirm {
  position: fixed;
  z-index: 50;
  display: grid;
  gap: 10px;
  width: min(360px, calc(100vw - 24px));
  padding: 12px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
  box-shadow: var(--shadow);
}

.box-hide-confirm[hidden] {
  display: none;
}

.box-hide-confirm p {
  margin: 0;
  color: var(--muted);
  font-size: .86rem;
  line-height: 1.45;
}

.split-actions {
  flex-wrap: wrap;
}

.danger-action {
  color: #fff !important;
  background: var(--warn) !important;
}

.trash-row {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr) auto 34px;
  gap: 8px;
  align-items: center;
  padding: 8px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fcfdfc;
}

.trash-main {
  min-width: 0;
}

.trash-main strong,
.trash-main small {
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.trash-main small {
  margin-top: 2px;
  color: var(--muted);
  font-size: .76rem;
}

.control-empty {
  margin: 0;
  color: var(--muted);
  font-size: .86rem;
}

.dialog-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
}

.dialog-actions button {
  min-height: 38px;
  padding: 0 14px;
  border: 1px solid var(--line);
  border-radius: 8px;
  background: #fff;
}

.dialog-actions button:last-child {
  color: #fff;
  background: var(--accent);
}

@media (max-width: 1280px) {
  .workspace-bar {
    justify-content: center;
  }

  .workspace-bar-title {
    flex: 1 1 260px;
  }

  .workspace-jump-group {
    order: 3;
    flex: 1 1 100%;
  }

  .workspace-bar-actions {
    flex: 0 1 auto;
  }
}

@media (max-width: 1120px) {
  .floating-scroll-controls {
    display: none;
  }

  .workspace-main {
    padding-top: 156px;
  }

  .workspace-bar-title,
  .workspace-jump-group,
  .workspace-bar-actions {
    flex: 1 1 100%;
  }

  .workspace-bar-title {
    justify-content: center;
  }

  .workspace-jump-group,
  .workspace-bar-actions {
    justify-content: center;
    flex-wrap: wrap;
  }
}

@media (max-width: 700px) {
  .app-shell {
    grid-template-columns: 1fr;
  }

  .workspace-bar {
    left: 0;
  }

  .sidebar {
    position: static;
    padding: 18px 14px;
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }

  .brand-block,
  .sync-popover,
  .preferences-popover {
    margin-right: 0;
    padding-right: 0;
  }

  .sync-popover,
  .preferences-popover {
    left: 14px;
    right: 14px;
    top: 118px;
    width: auto;
  }

  .workspace-bar {
    width: auto;
    margin: 0 0 18px;
    border: 1px solid var(--line);
    border-radius: 8px;
  }

  .subtab-rail {
    display: none;
  }

  .workspace-tabs {
    flex: initial;
    flex-direction: row;
    min-height: 0;
    max-height: none;
    overflow-x: auto;
    overflow-y: hidden;
    padding: 4px 2px 12px;
  }

  .workspace-tab {
    grid-template-columns: 18px minmax(112px, 1fr);
    min-width: 172px;
    width: auto;
    min-height: 58px;
    margin-left: 0;
    padding-right: 12px;
    border: 1px solid rgba(92, 99, 85, .2);
    border-bottom: 0;
    border-radius: 8px 8px 0 0;
  }

  .workspace-tab::before {
    inset: -6px 7px auto 7px;
    width: auto;
    height: 10px;
    border-radius: 6px 6px 0 0;
  }

  .workspace-tab::after,
  .tab-edge {
    display: none;
  }

  .workspace-tab:hover,
  .workspace-tab:focus-visible {
    transform: translateY(-4px);
  }

.workspace-tab.active {
    box-shadow: 0 12px 22px rgba(18, 40, 31, .18), inset 0 4px 0 var(--tab-color-deep);
    transform: translateY(-8px);
  }

  .cas-context-panel,
  .encrypted-backup-form,
  .encrypted-backup-grid,
  .local-backup-health-grid,
  .offline-continuity-grid,
  .status-band,
  .work-grid {
    grid-template-columns: 1fr;
  }

  .drive-filter-bar {
    grid-template-columns: 1fr;
  }

  #filesDialog {
    width: calc(100vw - 16px);
  }

  .files-dialog {
    padding: 14px;
  }

  .files-dialog .apps-panel {
    min-width: 940px;
  }
}

.apps-drive-temp-tab {
  --tab-color: #eaf5ff;
  --tab-color-deep: #2472a4;
}

.website-editor-layout {
  display: grid;
  gap: 16px;
  grid-template-columns: minmax(220px, .8fr) minmax(320px, 1.15fr) minmax(300px, 1fr);
  align-items: start;
}

.website-editor-builder-note,
.website-editor-live-workspace-note,
.website-builder-comparison-grid,
.website-builder-blueprint-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-bottom: 16px;
}

.website-editor-builder-note div,
.website-editor-live-workspace-note div,
.website-builder-comparison-card,
.website-builder-blueprint-card {
  display: grid;
  gap: 4px;
  padding: 12px;
  border: 1px solid rgba(34, 75, 54, .14);
  border-radius: 8px;
  background: #f7faf5;
}

.website-editor-builder-note span,
.website-editor-live-workspace-note span {
  color: #5d6b60;
  font-size: .92em;
}

.website-builder-comparison-card {
  background: #fffdf7;
}

.website-builder-comparison-card h4,
.website-builder-comparison-card p,
.website-builder-blueprint-card ul {
  margin: 0;
}

.website-builder-comparison-card p {
  color: #4f5e52;
  line-height: 1.45;
}

.website-builder-comparison-card div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.website-builder-comparison-card span {
  padding: 4px 7px;
  border-radius: 999px;
  background: rgba(15, 118, 110, .1);
  color: var(--accent-strong);
  font-size: .78rem;
  font-weight: 800;
}

.website-builder-blueprint-card {
  background: #f6fbf8;
}

.website-builder-blueprint-card ul {
  display: grid;
  gap: 4px;
  padding-left: 18px;
  color: #59685d;
}

.website-editor-standalone-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
  margin: -4px 0 16px;
  padding: 12px;
  border: 1px solid rgba(15, 118, 110, .18);
  border-radius: 8px;
  background: #f6fbf8;
}

.website-editor-standalone-actions a,
.website-editor-standalone-actions button {
  display: inline-flex;
  min-height: 36px;
  align-items: center;
  padding: 8px 12px;
  border: 0;
  border-radius: 999px;
  background: var(--accent);
  color: #ffffff;
  cursor: pointer;
  font: inherit;
  font-weight: 900;
  text-decoration: none;
}

.website-editor-standalone-actions span {
  color: #5d6b60;
  font-size: .9em;
}

.website-editor-site-settings {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(180px, 1.1fr) repeat(3, minmax(160px, 1fr));
  align-items: end;
  margin-bottom: 16px;
  padding: 12px;
  border: 1px solid rgba(34, 75, 54, .14);
  border-radius: 8px;
  background: #fbfcf8;
}

.website-editor-site-settings > div,
.website-editor-site-settings label {
  display: grid;
  gap: 5px;
}

.website-editor-site-settings span {
  color: #5d6b60;
  font-size: .88em;
}

.website-editor-site-settings input {
  width: 100%;
  min-height: 36px;
  padding: 8px 10px;
  border: 1px solid rgba(34, 75, 54, .18);
  border-radius: 8px;
  background: #ffffff;
}

.website-editor-site-summary {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(220px, 1.4fr) repeat(6, minmax(78px, 1fr));
  align-items: stretch;
  margin: -6px 0 16px;
}

.website-editor-site-summary > div,
.website-editor-site-summary article {
  display: grid;
  gap: 4px;
  align-content: center;
  min-height: 68px;
  padding: 10px;
  border: 1px solid rgba(34, 75, 54, .14);
  border-radius: 8px;
  background: #ffffff;
}

.website-editor-site-summary > div {
  background: #f6fbf8;
}

.website-editor-site-summary strong {
  color: #1f3b2c;
  font-size: 1rem;
}

.website-editor-site-summary article strong {
  color: var(--accent);
  font-size: 1.2rem;
}

.website-editor-site-summary span {
  color: #5d6b60;
  font-size: .82rem;
  font-weight: 800;
}

.website-editor-key-map {
  margin-bottom: 16px;
  padding: 12px;
  border: 1px solid rgba(34, 75, 54, .14);
  border-radius: 8px;
  background: #fffef9;
}

.website-editor-key-map summary {
  cursor: pointer;
  font-weight: 800;
}

.website-editor-key-map p {
  color: #59685d;
  margin: 10px 0;
}

.website-editor-key-map-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.website-editor-key-map-grid article {
  display: grid;
  gap: 5px;
  padding: 10px;
  border: 1px solid rgba(34, 75, 54, .12);
  border-radius: 8px;
  background: #ffffff;
}

.website-editor-key-map-grid span {
  color: #405244;
}

.website-editor-key-map-grid small,
.website-editor-manual-link {
  color: #657365;
  font-size: .88em;
}

.website-editor-publishing-workflow {
  display: grid;
  gap: 14px;
  margin-bottom: 16px;
  padding: 14px;
  border: 1px solid rgba(15, 118, 110, .18);
  border-radius: 8px;
  background: #f6fbf8;
}

.website-editor-workflow-header {
  display: flex;
  gap: 12px;
  align-items: start;
  justify-content: space-between;
}

.website-editor-workflow-header h4,
.website-editor-workflow-header p,
.website-editor-workflow-grid p,
.website-editor-workflow-log p {
  margin: 0;
}

.website-editor-workflow-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.website-editor-workflow-grid article,
.website-editor-workflow-log article,
.website-editor-staging-snapshots article {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid rgba(34, 75, 54, .12);
  border-radius: 8px;
  background: #ffffff;
}

.website-editor-workflow-grid span,
.website-editor-workflow-log span,
.website-editor-staging-snapshots span,
.website-editor-staging-snapshots small {
  color: #64715d;
  font-size: .86em;
}

.website-editor-checklist {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.website-editor-checklist span {
  padding: 5px 9px;
  border-radius: 999px;
  background: rgba(15, 118, 110, .1);
  color: var(--accent-strong);
  font-size: .78rem;
  font-weight: 800;
}

.website-editor-workflow-log,
.website-editor-staging-snapshots {
  display: grid;
  gap: 8px;
}

.website-editor-staging-snapshots article div {
  display: flex;
  gap: 8px;
  align-items: start;
  justify-content: space-between;
}

.website-editor-staging-snapshots h5,
.website-editor-staging-snapshots p {
  margin: 0;
}

.website-editor-staging-snapshots h5 {
  color: #25362a;
  font-size: .96rem;
}

.website-editor-map,
.website-editor-form,
.website-editor-preview {
  min-width: 0;
}

.website-editor-preview {
  display: grid;
  gap: 10px;
}

.website-editor-preview-toolbar {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
  padding: 10px;
  border: 1px solid rgba(34, 75, 54, .14);
  border-radius: 8px;
  background: #fffef9;
}

.website-editor-preview-toolbar > span {
  color: #4f5e52;
  font-size: .82rem;
  font-weight: 900;
  text-transform: uppercase;
}

.website-editor-preview-toolbar div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}

.website-editor-preview-toolbar button {
  padding: 6px 9px;
}

.website-editor-preview-toolbar button.active {
  background: var(--accent);
  color: #ffffff;
}

.website-editor-map {
  display: grid;
  gap: 8px;
}

.website-editor-area {
  display: grid;
  gap: 5px;
  padding: 12px;
  border: 1px solid rgba(34, 75, 54, .18);
  border-radius: 8px;
  background: #fffdf7;
  color: #17261d;
  text-align: left;
  cursor: pointer;
}

.website-editor-area.active {
  border-color: #1f7a4d;
  box-shadow: 0 0 0 3px rgba(31, 122, 77, .12);
}

.website-editor-area span,
.website-editor-area em,
.website-editor-actions span,
.website-editor-publish-note,
.website-editor-preview-page small {
  color: #64715d;
  font-size: .86em;
  font-style: normal;
}

.website-editor-area-title {
  color: #25362a;
  font-weight: 700;
}

.website-editor-area-heading {
  color: #3d4c40;
  font-size: .92em;
}

.website-editor-area-body {
  display: -webkit-box;
  overflow: hidden;
  color: #5d6b60;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-height: 1.35;
}

.website-editor-area-meta {
  text-transform: uppercase;
}

.website-editor-form {
  display: grid;
  gap: 12px;
  padding: 14px;
  border: 1px solid rgba(34, 75, 54, .14);
  border-radius: 8px;
  background: #ffffff;
}

.website-editor-form-header,
.website-editor-actions {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
}

.website-editor-form label {
  display: grid;
  gap: 6px;
  color: #425043;
  font-weight: 700;
}

.website-editor-guide {
  display: grid;
  gap: 10px;
  padding: 12px;
  border: 1px solid rgba(180, 107, 34, .22);
  border-radius: 8px;
  background: #fff8ec;
}

.website-editor-guide span {
  color: #8a551d;
  font-size: .76rem;
  font-weight: 900;
  text-transform: uppercase;
}

.website-editor-guide p {
  margin: 4px 0 0;
  color: #4f5e52;
  line-height: 1.45;
}

.website-editor-guide-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.website-editor-guide-grid article {
  display: grid;
  gap: 6px;
  padding: 10px;
  border: 1px solid rgba(34, 75, 54, .12);
  border-radius: 8px;
  background: rgba(255, 255, 255, .72);
}

.website-editor-guide-grid ul {
  display: grid;
  gap: 4px;
  margin: 0;
  padding-left: 18px;
  color: #59685d;
}

.website-editor-form input,
.website-editor-form textarea,
.website-editor-form select {
  width: 100%;
  box-sizing: border-box;
}

.website-editor-block-tools {
  display: grid;
  gap: 8px;
  padding: 12px;
  border: 1px solid rgba(34, 75, 54, .14);
  border-radius: 8px;
  background: #f8fbf6;
}

.website-editor-block-tools span {
  color: #617066;
  font-size: .9em;
}

.website-editor-block-group {
  display: grid;
  gap: 6px;
}

.website-editor-block-group > span {
  color: #8a551d;
  font-size: .74rem;
  font-weight: 900;
  text-transform: uppercase;
}

.website-editor-block-group > div {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.website-editor-block-group button {
  padding: 7px 10px;
}

.website-editor-field-row {
  display: grid;
  gap: 10px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.website-editor-tool-grid {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) 96px;
  align-items: end;
  padding: 10px;
  border: 1px solid rgba(34, 75, 54, .12);
  border-radius: 8px;
  background: #f9fbf6;
}

.website-editor-preview-page {
  --preview-bg: #f8fbf6;
  --preview-surface: #ffffff;
  --preview-ink: #1f3027;
  --preview-muted: #607064;
  display: grid;
  gap: 10px;
  padding: 0;
  border: 1px solid rgba(34, 75, 54, .16);
  border-radius: 8px;
  background: var(--preview-bg);
  color: var(--preview-ink);
  overflow: hidden;
}

.website-editor-preview-frame {
  display: grid;
  justify-items: center;
  padding: 12px;
  border: 1px solid rgba(34, 75, 54, .1);
  border-radius: 8px;
  background: #f3f6f1;
  overflow-x: auto;
}

.website-editor-preview-frame .website-editor-preview-page {
  width: 100%;
}

.website-editor-preview-desktop .website-editor-preview-page {
  max-width: 980px;
}

.website-editor-preview-tablet .website-editor-preview-page {
  max-width: 720px;
}

.website-editor-preview-phone .website-editor-preview-page {
  max-width: 390px;
}

.website-editor-preview-phone .website-editor-preview-meta,
.website-editor-preview-phone .website-editor-readiness-grid {
  grid-template-columns: 1fr;
}

.website-editor-preview-hero {
  display: grid;
  gap: 12px;
  padding: 18px;
  border-top: 6px solid var(--website-accent, #1f7a4d);
}

.website-editor-preview-page h3,
.website-editor-preview-page h4,
.website-editor-preview-page p,
.website-editor-preview-meta div {
  margin: 0;
}

.website-editor-preview-page p {
  color: var(--preview-muted);
  white-space: pre-wrap;
}

.website-editor-preview-page button {
  justify-self: start;
  opacity: .75;
}

.website-editor-preview-media {
  padding: 14px;
  border: 1px dashed color-mix(in srgb, var(--website-accent, #1f7a4d) 55%, #ffffff);
  border-radius: 8px;
  background: color-mix(in srgb, var(--website-accent, #1f7a4d) 9%, #ffffff);
  color: #45534a;
  overflow-wrap: anywhere;
}

.website-editor-preview-blocks {
  display: grid;
  gap: 10px;
  padding: 14px 18px;
  background: var(--preview-surface);
}

.website-editor-content-block {
  display: grid;
  gap: 5px;
  padding: 12px;
  border: 1px solid rgba(34, 75, 54, .12);
  border-left: 4px solid var(--website-accent, #1f7a4d);
  border-radius: 8px;
  background: var(--preview-surface);
}

.website-editor-content-block span {
  color: #69756c;
  font-size: .78rem;
  font-weight: 800;
  text-transform: uppercase;
}

.website-editor-content-block p {
  color: var(--preview-muted);
  line-height: 1.45;
}

.website-editor-preview-meta {
  display: grid;
  gap: 8px;
  padding: 14px 18px 18px;
  background: color-mix(in srgb, var(--preview-surface) 76%, transparent);
}

.website-editor-preview-meta div {
  display: grid;
  gap: 3px;
}

.website-editor-preview-meta span {
  color: #617066;
  font-size: .9em;
}

.website-editor-readiness {
  display: grid;
  gap: 10px;
  padding: 14px 18px 18px;
  border-top: 1px solid rgba(34, 75, 54, .12);
  background: #fffaf1;
}

.website-editor-readiness-head {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
}

.website-editor-readiness-head div {
  display: grid;
  gap: 3px;
}

.website-editor-readiness-head span {
  color: #8a551d;
  font-size: .76rem;
  font-weight: 900;
  text-transform: uppercase;
}

.website-editor-readiness-head em {
  color: #667161;
  font-size: .84rem;
  font-style: normal;
  font-weight: 800;
}

.website-editor-readiness-grid {
  display: grid;
  gap: 8px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.website-editor-readiness-grid article {
  display: grid;
  gap: 4px;
  padding: 10px;
  border: 1px solid rgba(34, 75, 54, .12);
  border-radius: 8px;
  background: #ffffff;
}

.website-editor-readiness-grid article.ready {
  border-color: rgba(31, 122, 77, .24);
  background: #f3fbf6;
}

.website-editor-readiness-grid article.needs-work {
  border-color: rgba(180, 107, 34, .26);
  background: #fff8ec;
}

.website-editor-readiness-grid span {
  color: #607064;
  font-size: .86em;
}

.website-editor-preview-professional {
  --preview-bg: #f8fbf6;
  --preview-surface: #ffffff;
  --preview-ink: #1f3027;
  --preview-muted: #607064;
}

.website-editor-preview-clear {
  --preview-bg: #fbfaf7;
  --preview-surface: #ffffff;
  --preview-ink: #242a25;
  --preview-muted: #606963;
}

.website-editor-preview-modern {
  --preview-bg: #f5f6fb;
  --preview-surface: #ffffff;
  --preview-ink: #191b2c;
  --preview-muted: #5b6172;
}

.website-editor-preview-executive {
  --preview-bg: #f3f6f7;
  --preview-surface: #ffffff;
  --preview-ink: #14242b;
  --preview-muted: #56676e;
}

@media (max-width: 1120px) {
  .website-editor-layout {
    grid-template-columns: minmax(190px, .7fr) minmax(280px, 1.3fr);
  }

  .website-editor-preview {
    grid-column: 1 / -1;
  }

  .website-editor-workflow-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 760px) {
  .website-editor-layout,
  .website-editor-field-row,
  .website-editor-tool-grid,
  .website-editor-guide-grid,
  .website-editor-readiness-grid,
  .website-editor-builder-note,
  .website-editor-live-workspace-note,
  .website-editor-site-settings,
  .website-editor-site-summary,
  .website-builder-comparison-grid,
  .website-builder-blueprint-grid,
  .website-editor-key-map-grid {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .workspace-main {
    padding: 176px 14px 18px;
  }

  .floating-scroll-controls {
    display: none !important;
  }

  .floating-scroll-actions span {
    display: none;
  }

  .calendar-month-grid,
  .calendar-week-grid,
  .user-access-columns {
    grid-template-columns: minmax(180px, 1fr);
  }

  .calendar-month-heading {
    display: none;
  }

  .top-strip {
    align-items: flex-start;
    flex-direction: column;
  }

  .status-band {
    gap: 10px;
  }
}

/* Final dialog safety rules: keep every popup inside the visible work area. */
dialog,
#appsDialog,
#filesDialog,
#tabControlDialog,
#trashDialog {
  box-sizing: border-box;
  width: min(720px, calc(100vw - 180px));
  max-width: calc(100vw - 180px);
  overflow: visible;
}

#trashDialog {
  width: min(520px, calc(100vw - 220px));
  max-width: calc(100vw - 220px);
}

#trashDialog.anchored-dialog[open] {
  inset: var(--anchored-dialog-top, 12px) auto auto var(--anchored-dialog-left, 128px) !important;
}

dialog .dialog-card,
.control-dialog,
.apps-dialog,
.files-dialog,
.small-dialog,
.box-save-dialog {
  box-sizing: border-box;
  width: 100%;
  max-width: 100%;
  min-width: 0;
}

.apps-dialog .apps-panel,
.files-dialog .apps-panel,
#trashDialog .apps-panel {
  min-width: 0;
  max-width: 100%;
  overflow-x: hidden;
}

.tab-control-panel,
.control-section,
.tab-hierarchy-card,
.hierarchy-sub-card,
.hierarchy-sub-list,
.hierarchy-section-list {
  max-width: 100%;
  min-width: 0;
}

.sub-control-row,
.section-control-row,
.hierarchy-section-row.section-control-row {
  grid-template-columns: 1fr;
}

.system-sub-control-row,
.hierarchy-sub-row.system-sub-control-row {
  grid-template-columns: minmax(140px, .8fr) minmax(180px, 1fr);
}

.file-row {
  grid-template-columns: 28px minmax(140px, 1fr);
}

.apps-add-grid,
.apps-add-grid.app-add,
.apps-add-grid.files-category-add,
.apps-add-grid.file-add {
  grid-template-columns: 1fr;
}

.ai-work-window,
.ai-workbench-split {
  grid-template-columns: 1fr;
}

.ai-work-window-main {
  grid-template-rows: auto auto minmax(220px, 48vh) auto;
}

.ai-work-window-composer-row,
.ai-work-window-main > header {
  flex-wrap: wrap;
}

.app-row {
  grid-template-columns: minmax(140px, 1fr);
}

.app-row > *,
.file-row > * {
  min-width: 0;
}

.app-category-header {
  flex-wrap: wrap;
}

.category-list-item .app-list {
  padding-left: 0;
}

.trash-row {
  grid-template-columns: 30px minmax(0, 1fr);
}

.trash-row .tab-control-button,
.trash-row .remove-item {
  justify-self: start;
}

.assignment-option {
  cursor: pointer;
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 22px minmax(0, 1fr);
  align-items: center;
  min-height: 34px;
}

.assignment-option input,
.share-option input {
  width: 18px;
  height: 18px;
  min-width: 18px;
  min-height: 18px;
  opacity: 1;
  appearance: auto;
  -webkit-appearance: checkbox;
  position: relative;
  z-index: 3;
  cursor: pointer;
  flex: 0 0 auto;
  pointer-events: auto;
}

.assignment-option span {
  pointer-events: none;
}

.tab-hierarchy-section .hierarchy-main-row {
  grid-template-columns: 86px minmax(160px, .9fr) minmax(180px, 1.1fr) 34px;
}

.tab-hierarchy-section .hierarchy-sub-row.sub-control-row {
  grid-template-columns: 86px minmax(150px, .9fr) minmax(220px, 1.1fr) 34px;
}

.tab-hierarchy-section .hierarchy-sub-row.system-sub-control-row {
  grid-template-columns: 86px minmax(150px, .9fr) minmax(220px, 1.1fr) 34px;
}

.tab-hierarchy-section .hierarchy-section-row.section-control-row {
  grid-template-columns: 78px minmax(140px, .8fr) minmax(220px, 1.2fr) 34px;
}

.box-hide-confirm[hidden] {
  display: none;
  pointer-events: none;
}

.proprietary-source-notice {
  position: fixed;
  left: 50%;
  bottom: 22px;
  z-index: 2000;
  width: min(560px, calc(100vw - 32px));
  padding: 12px 14px;
  border: 1px solid #f59e0b;
  border-radius: 8px;
  background: #fff7ed;
  color: #7c2d12;
  box-shadow: 0 18px 40px rgba(15, 23, 42, 0.18);
  font-size: .86rem;
  font-weight: 800;
  line-height: 1.4;
  opacity: 0;
  pointer-events: none;
  transform: translate(-50%, 12px);
  transition: opacity .18s ease, transform .18s ease;
}

.proprietary-source-notice.is-visible {
  opacity: 1;
  transform: translate(-50%, 0);
}

@media (max-width: 900px) {
  dialog,
  #appsDialog,
  #filesDialog,
  #tabControlDialog,
  #trashDialog {
    width: calc(100vw - 48px);
    max-width: calc(100vw - 48px);
  }

  #trashDialog {
    width: calc(100vw - 96px);
    max-width: calc(100vw - 96px);
  }

  .system-sub-control-row,
  .hierarchy-sub-row.system-sub-control-row,
  .trash-row {
    grid-template-columns: 1fr;
  }

  .ai-feature-toggle-grid,
  .ai-feature-toggle-fields,
  .ai-developer-connection-row,
  .ai-gateway-summary,
  .ai-gateway-control-grid,
  .ai-work-window-status-strip,
  .ai-work-window-composer-row,
  .ai-request-form,
  .ai-request-row {
    grid-template-columns: 1fr;
  }

  .ai-developer-connection-actions {
    justify-content: start;
  }

  .ai-request-form textarea {
    grid-column: auto;
  }

  .ai-request-row__meta {
    justify-items: start;
  }
}

@media (max-width: 1180px), (max-height: 720px) {
  .sectiontab-rail {
    display: none !important;
  }

  .floating-scroll-controls {
    display: none !important;
  }
}
