/* Functional DOM adapters for the approved Classical desktop interface. */
:root[data-aiklava-ui] {
  --font: var(--font-body) !important;
  --serif: var(--font-heading) !important;
  --bg: var(--color-bg) !important;
  --paper: var(--color-bg) !important;
  --surface: var(--color-bg) !important;
  --surface-2: var(--color-surface) !important;
  --field: var(--color-bg) !important;
  --ink: var(--color-text) !important;
  --ink-2: color-mix(in srgb, var(--color-text) 82%, transparent) !important;
  --ink-soft: color-mix(in srgb, var(--color-text) 66%, transparent) !important;
  --ink-faint: color-mix(in srgb, var(--color-text) 48%, transparent) !important;
  --muted: color-mix(in srgb, var(--color-text) 62%, transparent) !important;
  --faint: color-mix(in srgb, var(--color-text) 48%, transparent) !important;
  --line: var(--color-divider) !important;
  --line-2: color-mix(in srgb, var(--color-text) 9%, transparent) !important;
  --line-dark: color-mix(in srgb, var(--color-text) 26%, transparent) !important;
  --brd: var(--color-divider) !important;
  --accent: var(--color-accent) !important;
  --accent-2: var(--color-accent-2) !important;
  --accent-soft: color-mix(in srgb, var(--color-accent) 11%, transparent) !important;
  --accent-ink: color-mix(in srgb, var(--color-accent) 76%, var(--color-text)) !important;
  --shadow: 0 3px 10px rgba(36, 31, 24, .10) !important;
  --shadow-hi: 0 18px 42px rgba(36, 31, 24, .18) !important;
  --r: 4px !important;
  --r-lg: 7px !important;
  --r-xl: 7px !important;
  --radius: 4px !important;
  --radius-md: 4px !important;
  --radius-lg: 7px !important;
  --radius-xl: 7px !important;
}

:root[data-aiklava-ui] body,
:root[data-aiklava-ui] button,
:root[data-aiklava-ui] input,
:root[data-aiklava-ui] select,
:root[data-aiklava-ui] textarea {
  font-family: var(--font-body);
  letter-spacing: 0;
}

:root[data-aiklava-ui] h1,
:root[data-aiklava-ui] h2,
:root[data-aiklava-ui] h3,
:root[data-aiklava-ui] h4,
:root[data-aiklava-ui] h5,
:root[data-aiklava-ui] h6 {
  font-family: var(--font-heading);
  font-weight: var(--font-heading-weight);
  letter-spacing: 0;
}

:root[data-aiklava-ui] .blob,
:root[data-aiklava-ui] .auth-blob,
:root[data-aiklava-ui] .admin-blob {
  display: none !important;
}

:root[data-aiklava-ui] .glass {
  border-color: var(--color-divider) !important;
  background: var(--color-bg) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

:root[data-aiklava-ui] :is(button, .btn, .iconbtn, .icon-btn, .modal-close) {
  border-radius: var(--radius-md);
}

:root[data-aiklava-ui] :is(input, textarea, select) {
  border-radius: var(--radius-md);
}

:root[data-aiklava-ui] .modal-backdrop {
  background: color-mix(in srgb, var(--color-neutral-900) 48%, transparent) !important;
  backdrop-filter: none !important;
}

:root[data-aiklava-ui] :is(.modal, .modal-card, .dialog, .action-dialog-card) {
  border: 1px solid var(--color-divider) !important;
  border-radius: var(--radius-lg) !important;
  background: var(--color-bg) !important;
  color: var(--color-text) !important;
  box-shadow: var(--shadow-lg) !important;
  backdrop-filter: none !important;
}

/* Cross-service navigation injected by aiklava-branding.js. */
:root[data-aiklava-ui]:not([data-aiklava-ui="portal"]) .aiklava-portal-nav {
  min-height: var(--aiklava-nav-height) !important;
  border: 0 !important;
  border-bottom: 1px solid var(--color-divider) !important;
  border-radius: 0 !important;
  background: var(--color-bg) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

:root[data-aiklava-ui]:not([data-aiklava-ui="portal"]) .aiklava-portal-nav :is(button, a) {
  border-radius: var(--radius-md) !important;
  font-family: var(--font-body) !important;
}

/* Portal: sign-in, user cabinet and administration. */
:root[data-aiklava-ui="portal"] body {
  background: var(--color-bg) !important;
  color: var(--color-text) !important;
}

:root[data-aiklava-ui="portal"] body:not(.portal-authenticated) {
  --auth-bg: var(--color-bg) !important;
  --auth-surface: var(--color-bg) !important;
  --auth-surface-2: var(--color-surface) !important;
  --auth-ink: var(--color-text) !important;
  --auth-ink-soft: color-mix(in srgb, var(--color-text) 66%, transparent) !important;
  --auth-ink-faint: color-mix(in srgb, var(--color-text) 48%, transparent) !important;
  --auth-line: var(--color-divider) !important;
  --auth-brd: var(--color-divider) !important;
  --auth-field: var(--color-bg) !important;
}

:root[data-aiklava-ui="portal"] .themebtn {
  top: 16px;
  right: 24px;
  width: 36px;
  height: 36px;
  border-radius: var(--radius-md);
  background: transparent;
}

:root[data-aiklava-ui="portal"] body:not(.portal-authenticated) .shell {
  padding: 72px 28px 32px;
}

:root[data-aiklava-ui="portal"] body:not(.portal-authenticated) .hero,
:root[data-aiklava-ui="portal"] body:not(.portal-authenticated) .grid {
  max-width: 1060px;
  grid-template-columns: minmax(0, 1.1fr) 420px;
  gap: 64px;
}

:root[data-aiklava-ui="portal"] body:not(.portal-authenticated) .auth-brand-logo {
  width: 64px;
  height: 64px;
  border: 1px solid var(--color-accent);
  border-radius: var(--radius-md);
  background: transparent;
  color: var(--color-accent);
  font-family: var(--font-heading);
  font-size: 38px;
  font-weight: 400;
  box-shadow: none;
}

:root[data-aiklava-ui="portal"] body:not(.portal-authenticated) .auth-brand b,
:root[data-aiklava-ui="portal"] .boot-gate-wordmark {
  font-family: var(--font-heading);
  font-weight: var(--font-heading-weight);
}

:root[data-aiklava-ui="portal"] body:not(.portal-authenticated) .hero h1 {
  max-width: 620px;
  margin-bottom: 18px;
  font-size: 54px;
  font-weight: 400;
  line-height: 1.04;
}

:root[data-aiklava-ui="portal"] body:not(.portal-authenticated) .hero p {
  color: var(--auth-ink-soft);
}

:root[data-aiklava-ui="portal"] body:not(.portal-authenticated) .auth-chip {
  padding: 5px 10px;
  border-color: var(--color-accent);
  border-radius: var(--radius-sm);
  background: transparent;
  color: var(--color-accent);
  box-shadow: none;
  font-family: var(--font-heading);
  font-weight: var(--font-heading-weight);
}

:root[data-aiklava-ui="portal"] body:not(.portal-authenticated) .auth-chip-icon {
  display: none;
}

:root[data-aiklava-ui="portal"] body:not(.portal-authenticated) #authPanel {
  border-radius: var(--radius-lg);
  background: var(--color-bg);
  box-shadow: var(--shadow-md);
  backdrop-filter: none;
}

:root[data-aiklava-ui="portal"] body:not(.portal-authenticated) #authPanel .panel-head {
  padding: 28px 28px 0;
}

:root[data-aiklava-ui="portal"] body:not(.portal-authenticated) #authPanel .panel-body {
  padding: 20px 28px 28px;
}

:root[data-aiklava-ui="portal"] body:not(.portal-authenticated) #authPanel .panel-title::after {
  color: var(--color-text);
  font-family: var(--font-heading);
  font-size: 26px;
  font-weight: var(--font-heading-weight);
}

:root[data-aiklava-ui="portal"] body:not(.portal-authenticated) .auth-input {
  border-radius: var(--radius-md);
  background: transparent;
}

:root[data-aiklava-ui="portal"] body:not(.portal-authenticated) .auth-input:focus-within {
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--color-accent) 18%, transparent);
}

:root[data-aiklava-ui="portal"] body:not(.portal-authenticated) .auth-submit {
  border: 1px solid var(--color-accent);
  border-radius: var(--radius-md);
  background: transparent;
  color: var(--color-accent);
  box-shadow: none;
  font-family: var(--font-heading);
}

:root[data-aiklava-ui="portal"] .boot-gate {
  background: var(--color-bg);
  color: var(--color-text);
}

:root[data-aiklava-ui="portal"] .boot-gate-logo {
  filter: none;
}

:root[data-aiklava-ui="portal"] body:is(.portal-user-dashboard, .portal-admin-dashboard) :is(.appbar, .admin-appbar) {
  min-height: 52px;
  padding: 8px 20px;
  border: 0;
  border-bottom: 1px solid var(--color-divider);
  border-radius: 0;
  background: var(--color-bg) !important;
}

:root[data-aiklava-ui="portal"] body.portal-user-dashboard .portal-dash .appbar {
  display: none !important;
}

:root[data-aiklava-ui="portal"] body.portal-user-dashboard .user-dashboard.portal-dash {
  min-height: calc(100vh - var(--aiklava-nav-height));
}

:root[data-aiklava-ui="portal"] body:is(.portal-user-dashboard, .portal-admin-dashboard) :is(.seg, .admin-seg) {
  padding: 2px;
  border: 1px solid var(--color-divider);
  border-radius: var(--radius-md);
  background: transparent;
  box-shadow: none;
}

:root[data-aiklava-ui="portal"] body:is(.portal-user-dashboard, .portal-admin-dashboard) :is(.seg button, .admin-tab) {
  border-radius: var(--radius-sm);
  font-family: var(--font-heading);
}

:root[data-aiklava-ui="portal"] body:is(.portal-user-dashboard, .portal-admin-dashboard) :is(.page, .admin-page) {
  background: var(--color-bg);
}

:root[data-aiklava-ui="portal"] body:is(.portal-user-dashboard, .portal-admin-dashboard) :is(.card, .panel-card, .admin-card-panel, .selection-card, .service-card) {
  border-color: var(--color-divider) !important;
  border-radius: var(--radius-lg) !important;
  background: transparent !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

:root[data-aiklava-ui="portal"] body:is(.portal-user-dashboard, .portal-admin-dashboard) :is(h1, h2, h3, .admin-greeting-title) {
  font-family: var(--font-heading) !important;
  letter-spacing: 0 !important;
}

/* Ordinary AI chats, including chats grouped into projects. */
:root[data-aiklava-ui="ai-chat"] body,
:root[data-aiklava-ui="ai-chat"] .layout,
:root[data-aiklava-ui="ai-chat"] .main,
:root[data-aiklava-ui="ai-chat"] .messages,
:root[data-aiklava-ui="ai-chat"] .composer-shell {
  background: var(--color-bg) !important;
}

:root[data-aiklava-ui="ai-chat"] .sidebar {
  border: 0 !important;
  border-right: 1px solid var(--color-divider) !important;
  border-radius: 0 !important;
  background: var(--color-bg) !important;
}

:root[data-aiklava-ui="ai-chat"] .topbar {
  border-color: var(--color-divider) !important;
  background: var(--color-bg) !important;
}

:root[data-aiklava-ui="ai-chat"] :is(.topbar h1, .welcome-panel h2, .modal h2, .pp-name, .pp-card h3) {
  font-family: var(--font-heading) !important;
}

:root[data-aiklava-ui="ai-chat"] :is(.new-chat, .primary-btn) {
  border: 1px solid var(--color-accent) !important;
  background: transparent !important;
  color: var(--color-accent) !important;
  box-shadow: none !important;
  font-family: var(--font-heading);
}

:root[data-aiklava-ui="ai-chat"] .pj-add {
  border: 0 !important;
  background: transparent !important;
  color: var(--color-accent) !important;
  box-shadow: none !important;
  font-family: var(--font-heading);
}

:root[data-aiklava-ui="ai-chat"] :is(.composer, .message, .modal, .pp-card, .pj-sheet) {
  border-radius: var(--radius-lg) !important;
  box-shadow: none !important;
}

/* Knowledge base and its collection/document dialogs. */
:root[data-aiklava-ui="knowledge-base"] body,
:root[data-aiklava-ui="knowledge-base"] .main,
:root[data-aiklava-ui="knowledge-base"] .workspace {
  background: var(--color-bg) !important;
}

:root[data-aiklava-ui="knowledge-base"] .app {
  grid-template-columns: 284px minmax(0, 1fr);
  gap: 0;
  padding: 0;
}

:root[data-aiklava-ui="knowledge-base"] .sidebar {
  padding: 18px 16px;
  border: 0 !important;
  border-right: 1px solid var(--color-divider) !important;
  border-radius: 0;
  background: var(--color-surface) !important;
}

:root[data-aiklava-ui="knowledge-base"] .main {
  border: 0 !important;
  border-radius: 0;
}

:root[data-aiklava-ui="knowledge-base"] .topbar {
  min-height: 58px;
  padding: 10px 24px;
  background: var(--color-bg);
}

:root[data-aiklava-ui="knowledge-base"] .topbar h1 {
  font-size: 22px;
}

:root[data-aiklava-ui="knowledge-base"] :is(.panel, .result, .source-card, .metric, .collection-item::before) {
  border-radius: var(--radius-md);
  background: transparent;
  box-shadow: none;
}

:root[data-aiklava-ui="knowledge-base"] .workspace {
  padding: 22px 28px 32px;
}

:root[data-aiklava-ui="knowledge-base"] :is(.btn.primary, .btn:not(.soft):not(.danger)) {
  border: 1px solid var(--color-accent);
  background: transparent;
  color: var(--color-accent);
  box-shadow: none;
  font-family: var(--font-heading);
}

:root[data-aiklava-ui="knowledge-base"] :is(.collection-item.active, .chip.q, .citation) {
  background: color-mix(in srgb, var(--color-accent) 10%, transparent);
  color: var(--accent-ink);
}

/* Notes: compact list plus a quiet document editor. */
:root[data-aiklava-ui="notes"] {
  --notes-bg: var(--color-bg) !important;
  --notes-panel: var(--color-bg) !important;
  --notes-panel-soft: var(--color-surface) !important;
  --notes-line: var(--color-divider) !important;
  --notes-shadow: none !important;
}

:root[data-aiklava-ui="notes"] body,
:root[data-aiklava-ui="notes"] .app {
  background: var(--color-bg) !important;
}

:root[data-aiklava-ui="notes"] .app {
  grid-template-columns: 292px minmax(0, 1fr);
  gap: 0;
  padding: 0;
}

:root[data-aiklava-ui="notes"] .list {
  border: 0;
  border-right: 1px solid var(--color-divider);
  border-radius: 0;
  background: var(--color-surface);
  box-shadow: none;
  backdrop-filter: none;
}

:root[data-aiklava-ui="notes"] .ed {
  border: 0;
  border-radius: 0;
  background: var(--color-bg);
  box-shadow: none;
  backdrop-filter: none;
}

:root[data-aiklava-ui="notes"] .ed .bar {
  position: sticky;
  top: 0;
  z-index: 5;
  margin: 0;
  padding: 10px 16px;
  border: 0;
  border-bottom: 1px solid var(--color-divider);
  border-radius: 0;
  background: var(--color-bg);
}

:root[data-aiklava-ui="notes"] .new {
  min-height: 38px;
  border: 1px solid var(--color-accent);
  border-radius: var(--radius-md);
  background: transparent;
  color: var(--color-accent);
  box-shadow: none;
  font-family: var(--font-heading);
}

:root[data-aiklava-ui="notes"] :is(.search, .card, .btn, .fmt, .chat .in textarea) {
  border-radius: var(--radius-md);
  box-shadow: none;
}

:root[data-aiklava-ui="notes"] .card.active {
  background: transparent;
  color: var(--accent-ink);
  box-shadow: inset 2px 0 0 var(--color-accent);
}

:root[data-aiklava-ui="notes"] .titlein,
:root[data-aiklava-ui="notes"] .preview :is(h1, h2) {
  font-family: var(--font-heading);
}

:root[data-aiklava-ui="notes"] .pane {
  padding: 30px 46px 60px;
}

/* Registry: dense desktop table and restrained destructive dialogs. */
:root[data-aiklava-ui="registry"] body,
:root[data-aiklava-ui="registry"] .page {
  background: var(--color-bg) !important;
}

:root[data-aiklava-ui="registry"] .appbar {
  min-height: 54px;
  margin: 0;
  padding: 8px 20px;
  border: 0 !important;
  border-bottom: 1px solid var(--color-divider) !important;
  border-radius: 0 !important;
}

:root[data-aiklava-ui="registry"] :is(.toolbar, .table-shell, .modal-card, .auth-shell) {
  border-color: var(--color-divider) !important;
  border-radius: var(--radius-lg) !important;
  background: var(--color-bg) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

:root[data-aiklava-ui="registry"] :is(.primary-btn, .btn.primary) {
  border: 1px solid var(--color-accent) !important;
  background: transparent !important;
  color: var(--color-accent) !important;
  box-shadow: none !important;
  font-family: var(--font-heading);
}

:root[data-aiklava-ui="registry"] :is(th, .modal-title, .app-title) {
  font-family: var(--font-heading);
  letter-spacing: 0;
}

/* Site audit only. Risk analytics keeps its independent, unreleased styling. */
:root[data-aiklava-ui="site-audit"] body {
  background: var(--color-bg) !important;
}

:root[data-aiklava-ui="site-audit"] .module-tabs {
  height: 52px !important;
  display: flex !important;
  align-items: stretch !important;
  gap: 2px !important;
  padding: 0 var(--space-4) !important;
  border: 0 !important;
  border-bottom: 1px solid var(--color-divider) !important;
  border-radius: 0 !important;
  background: var(--color-bg) !important;
  box-shadow: none !important;
}

:root[data-aiklava-ui="site-audit"] .module-tabs button {
  padding: 9px 14px !important;
  border: 0 !important;
  border-bottom: 2px solid transparent !important;
  border-radius: 0 !important;
  background: transparent !important;
  color: var(--color-text) !important;
  font-family: var(--font-heading) !important;
  font-size: 15px !important;
  box-shadow: none !important;
}

:root[data-aiklava-ui="site-audit"] .module-tabs button.active {
  border-bottom-color: var(--color-accent) !important;
  background: transparent !important;
  color: var(--color-accent) !important;
}

:root[data-aiklava-ui="site-audit"] #app:is(.app, .workspace) {
  grid-template-columns: 330px minmax(0, 1fr) !important;
  gap: 0 !important;
  height: calc(100dvh - var(--aiklava-nav-height, 0px)) !important;
  padding: 0 !important;
  background: var(--color-bg) !important;
}

:root[data-aiklava-ui="site-audit"] body:has(> .module-tabs) #app:is(.app, .workspace) {
  height: calc(100dvh - var(--aiklava-nav-height, 0px) - 52px) !important;
}

:root[data-aiklava-ui="site-audit"] #app:is(.app, .workspace).chat-open {
  grid-template-columns: 330px minmax(0, 1fr) 340px !important;
}

:root[data-aiklava-ui="site-audit"] #app > .col {
  border: 0 !important;
  border-right: 1px solid var(--color-divider) !important;
  border-radius: 0 !important;
  background: var(--color-bg) !important;
  box-shadow: none !important;
}

:root[data-aiklava-ui="site-audit"] #app > .col:last-child {
  border-right: 0 !important;
}

:root[data-aiklava-ui="site-audit"] .side .top {
  display: flex !important;
  flex-direction: column !important;
  gap: var(--space-3) !important;
  padding: var(--space-3) !important;
  border-bottom: 0 !important;
}

:root[data-aiklava-ui="site-audit"] .side h2 {
  margin: 0 !important;
  font-family: var(--font-heading) !important;
  font-size: 21px !important;
  font-weight: var(--font-heading-weight) !important;
}

:root[data-aiklava-ui="site-audit"] .side .field {
  margin: 0 !important;
}

:root[data-aiklava-ui="site-audit"] .side .field > label:not(.legacy-model-toggle) {
  display: block !important;
  margin: 0 0 5px !important;
  color: color-mix(in srgb, var(--color-text) 70%, transparent) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

:root[data-aiklava-ui="site-audit"] .side .field :is(input, select, textarea) {
  width: 100% !important;
  min-height: 36px !important;
  padding: 6px 10px !important;
  border: 1px solid var(--color-divider) !important;
  border-radius: var(--radius-md) !important;
  background: transparent !important;
  color: var(--color-text) !important;
  box-shadow: none !important;
  font-size: 14px !important;
}

:root[data-aiklava-ui="site-audit"] .side .legacy-model-toggle {
  margin-top: 7px !important;
  color: color-mix(in srgb, var(--color-text) 58%, transparent) !important;
  font-size: 12px !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

:root[data-aiklava-ui="site-audit"] #goBtn {
  min-height: 38px !important;
  margin: 0 !important;
  border: 1px solid var(--color-accent) !important;
  border-radius: var(--radius-md) !important;
  background: transparent !important;
  color: var(--color-accent) !important;
  box-shadow: none !important;
  font-family: var(--font-heading) !important;
  font-weight: var(--font-heading-weight) !important;
}

:root[data-aiklava-ui="site-audit"] .side .mode-hint {
  min-height: 0 !important;
  margin: 0 !important;
  color: color-mix(in srgb, var(--color-text) 52%, transparent) !important;
  font-size: 11.5px !important;
}

:root[data-aiklava-ui="site-audit"] .hist {
  padding: var(--space-2) !important;
  border-top: 1px solid var(--color-divider) !important;
}

:root[data-aiklava-ui="site-audit"] .hcard {
  margin: 0 0 2px !important;
  padding: 9px 11px !important;
  border: 1px solid transparent !important;
  border-radius: var(--radius-md) !important;
  background: transparent !important;
  box-shadow: none !important;
}

:root[data-aiklava-ui="site-audit"] .hcard:hover {
  background: color-mix(in srgb, var(--color-accent) 7%, transparent) !important;
}

:root[data-aiklava-ui="site-audit"] .hcard.active {
  border-color: var(--color-accent) !important;
  background: transparent !important;
  box-shadow: none !important;
}

:root[data-aiklava-ui="site-audit"] .hcard .t {
  font-family: var(--font-heading) !important;
  font-size: 14px !important;
}

:root[data-aiklava-ui="site-audit"] .main-bar {
  min-height: 54px !important;
  padding: var(--space-2) var(--space-4) !important;
  border: 0 !important;
  border-bottom: 1px solid var(--color-divider) !important;
  border-radius: 0 !important;
  background: var(--color-bg) !important;
  box-shadow: none !important;
}

:root[data-aiklava-ui="site-audit"] .main-bar #crumb {
  color: var(--color-text) !important;
  font-family: var(--font-heading) !important;
  font-size: 15px !important;
}

:root[data-aiklava-ui="site-audit"] .main-bar .tbtn {
  min-height: 36px !important;
  padding: 7px 12px !important;
  border: 1px solid var(--color-divider) !important;
  border-radius: var(--radius-md) !important;
  background: transparent !important;
  color: var(--color-text) !important;
  box-shadow: none !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 7px !important;
  font-family: var(--font-heading) !important;
}

:root[data-aiklava-ui="site-audit"] .main-bar .tbtn.a {
  color: var(--color-text) !important;
}

:root[data-aiklava-ui="site-audit"] .main-bar .tbtn svg {
  width: 15px;
  height: 15px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round;
}

:root[data-aiklava-ui="site-audit"] .main-bar #delBtn {
  color: #a3372e !important;
}

:root[data-aiklava-ui="site-audit"] .chat {
  border-left: 1px solid var(--color-divider) !important;
  background: var(--color-bg) !important;
}

:root[data-aiklava-ui="site-audit"] .chat .h {
  padding: var(--space-2) var(--space-3) !important;
  border-bottom: 1px solid var(--color-divider) !important;
  color: var(--color-text) !important;
  font-family: var(--font-heading) !important;
  font-size: 15px !important;
  font-weight: var(--font-heading-weight) !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

:root[data-aiklava-ui="site-audit"] .chat .in textarea {
  border-radius: var(--radius-md) !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* N8N agent builder. */
:root[data-aiklava-ui="n8n-agents"] body,
:root[data-aiklava-ui="n8n-agents"] .app {
  background: var(--color-bg) !important;
}

:root[data-aiklava-ui="n8n-agents"] .app {
  grid-template-columns: 292px minmax(420px, 1fr) 380px;
  gap: 0;
  padding: 0;
}

:root[data-aiklava-ui="n8n-agents"] .app > header {
  min-height: 54px;
  padding: 8px 20px;
  border: 0;
  border-bottom: 1px solid var(--color-divider);
  border-radius: 0;
  background: var(--color-bg);
  box-shadow: none;
  backdrop-filter: none;
}

:root[data-aiklava-ui="n8n-agents"] .app > :is(aside, main, .right) {
  border: 0;
  border-right: 1px solid var(--color-divider);
  border-radius: 0;
  background: var(--color-bg);
  box-shadow: none;
  backdrop-filter: none;
}

:root[data-aiklava-ui="n8n-agents"] .app > .right {
  border-right: 0;
}

:root[data-aiklava-ui="n8n-agents"] :is(button.primary, button.success) {
  border: 1px solid var(--color-accent);
  background: transparent;
  color: var(--color-accent);
  box-shadow: none;
  font-family: var(--font-heading);
}

:root[data-aiklava-ui="n8n-agents"] :is(.flow, .msg, pre, .check, input, textarea, button, .model-menu) {
  border-radius: var(--radius-md);
}

/* Presentations library and editor shell. Slide content and engine geometry stay isolated. */
:root[data-aiklava-ui="presentations"] {
  --app-bg: var(--color-bg) !important;
  --topbar: var(--color-bg) !important;
  --panel: var(--color-bg) !important;
  --panel-soft: var(--color-surface) !important;
  --blue: var(--color-accent) !important;
  --blue-soft: color-mix(in srgb, var(--color-accent) 10%, transparent) !important;
  --blue-mid: var(--color-accent-2) !important;
}

:root[data-aiklava-ui="presentations"] body,
:root[data-aiklava-ui="presentations"] .dashboard-page,
:root[data-aiklava-ui="presentations"] .app-shell {
  background: var(--color-bg) !important;
  color: var(--color-text) !important;
}

:root[data-aiklava-ui="presentations"] .ui-blob {
  display: none !important;
}

/* Library. */
:root[data-aiklava-ui="presentations"] .dashboard-page {
  grid-template-columns: 250px minmax(0, 1fr) !important;
  gap: 0 !important;
  height: calc(100dvh - var(--aiklava-nav-height, 0px)) !important;
  min-height: 0 !important;
  overflow: hidden !important;
}

:root[data-aiklava-ui="presentations"] .dashboard-sidebar {
  height: auto !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: var(--space-3) 0 !important;
  border: 0 !important;
  border-right: 1px solid var(--color-divider) !important;
  border-radius: 0 !important;
  background: var(--color-bg) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  display: flex !important;
  flex-direction: column !important;
  gap: var(--space-3) !important;
}

:root[data-aiklava-ui="presentations"] .dashboard-new-wrap {
  padding: 0 var(--space-3);
}

:root[data-aiklava-ui="presentations"] .dashboard-new-wrap .dashboard-primary {
  width: 100%;
  min-height: 42px;
}

:root[data-aiklava-ui="presentations"] .dashboard-nav {
  display: grid !important;
  gap: 2px !important;
}

:root[data-aiklava-ui="presentations"] .dashboard-nav-button {
  display: grid !important;
  grid-template-columns: 17px minmax(0, 1fr) auto !important;
  align-items: center !important;
  gap: 10px !important;
  width: 100% !important;
  min-height: 40px !important;
  padding: 8px 13px !important;
  border: 0 !important;
  border-left: 2px solid transparent !important;
  border-radius: 0 var(--radius-md) var(--radius-md) 0 !important;
  background: transparent !important;
  color: var(--color-text) !important;
  font-family: var(--font-body) !important;
  font-size: 13.5px !important;
  font-weight: 400 !important;
  box-shadow: none !important;
}

:root[data-aiklava-ui="presentations"] .dashboard-nav-button:hover {
  background: color-mix(in srgb, var(--color-accent) 7%, transparent) !important;
}

:root[data-aiklava-ui="presentations"] .dashboard-nav-button.active {
  border-left-color: var(--color-accent) !important;
  background: color-mix(in srgb, var(--color-accent) 9%, transparent) !important;
  color: var(--color-accent) !important;
}

:root[data-aiklava-ui="presentations"] .dashboard-nav-icon {
  width: 16px;
  height: 16px;
}

:root[data-aiklava-ui="presentations"] .dashboard-nav-count {
  color: color-mix(in srgb, var(--color-text) 50%, transparent);
  font-size: 11px;
  font-feature-settings: "tnum";
}

:root[data-aiklava-ui="presentations"] .dashboard-main {
  height: auto !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  overflow: auto !important;
}

:root[data-aiklava-ui="presentations"] .dashboard-content {
  width: min(100%, 1060px);
  margin: 0 auto;
  padding: 24px 28px 36px;
}

:root[data-aiklava-ui="presentations"] .dashboard-topbar {
  min-height: 0 !important;
  margin: 0 0 var(--space-4) !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: var(--space-3) !important;
}

:root[data-aiklava-ui="presentations"] .dashboard-eyebrow {
  margin-bottom: 5px;
  color: var(--color-accent);
  font-size: 11px;
  letter-spacing: .16em;
  text-transform: uppercase;
}

:root[data-aiklava-ui="presentations"] :is(.dashboard-title, .deck-title, .modal h2, .inv-title, .lp-title) {
  font-family: var(--font-heading) !important;
  font-weight: var(--font-heading-weight) !important;
  letter-spacing: 0 !important;
}

:root[data-aiklava-ui="presentations"] .dashboard-title {
  margin: 0 !important;
  font-size: 34px !important;
  line-height: 1.05 !important;
}

:root[data-aiklava-ui="presentations"] .dashboard-actions,
:root[data-aiklava-ui="presentations"] .dashboard-deck-controls {
  display: flex !important;
  align-items: center !important;
  gap: var(--space-2) !important;
  flex-wrap: nowrap !important;
}

:root[data-aiklava-ui="presentations"] .dashboard-search {
  width: 220px;
  min-height: 36px;
  padding: 6px 10px;
  border: 1px solid var(--color-divider);
  border-radius: var(--radius-md);
  background: transparent;
  color: var(--color-text);
  font: 13px var(--font-body);
}

:root[data-aiklava-ui="presentations"] .dashboard-sort {
  display: flex;
  border: 1px solid var(--color-divider);
  border-radius: var(--radius-md);
  overflow: hidden;
}

:root[data-aiklava-ui="presentations"] .dashboard-sort button {
  min-height: 34px;
  padding: 0 12px;
  border: 0;
  border-right: 1px solid var(--color-divider);
  background: transparent;
  color: var(--color-text);
  font: 12.5px var(--font-body);
}

:root[data-aiklava-ui="presentations"] .dashboard-sort button:last-child {
  border-right: 0;
}

:root[data-aiklava-ui="presentations"] .dashboard-sort button.active {
  color: var(--color-accent);
  box-shadow: inset 0 0 0 1px var(--color-accent);
}

:root[data-aiklava-ui="presentations"] :is(.dashboard-primary, .primary-button, .modal-primary, .inv-primary, .lp-primary) {
  min-height: 38px !important;
  padding: 7px 14px !important;
  border: 1px solid var(--color-accent) !important;
  border-radius: var(--radius-md) !important;
  background: transparent !important;
  color: var(--color-accent) !important;
  box-shadow: none !important;
  font-family: var(--font-heading) !important;
}

:root[data-aiklava-ui="presentations"] .dashboard-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: var(--space-3) !important;
}

:root[data-aiklava-ui="presentations"] :is(.dashboard-grid, .dashboard-empty, .dashboard-deck-controls, .dashboard-section-create)[hidden] {
  display: none !important;
}

:root[data-aiklava-ui="presentations"] .dashboard-card {
  display: flex !important;
  flex-direction: column !important;
  gap: 0 !important;
  min-width: 0 !important;
  padding: var(--space-3) !important;
  border: 1px solid var(--color-divider) !important;
  border-radius: var(--radius-md) !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

:root[data-aiklava-ui="presentations"] .dashboard-card:hover {
  border-color: var(--color-accent) !important;
  box-shadow: none !important;
}

:root[data-aiklava-ui="presentations"] .dashboard-card-preview {
  aspect-ratio: 16 / 9 !important;
  border: 1px solid var(--color-divider) !important;
  border-radius: var(--radius-sm) !important;
  background: var(--color-surface) !important;
}

:root[data-aiklava-ui="presentations"] .dashboard-card-body {
  display: grid !important;
  gap: var(--space-2) !important;
  padding: var(--space-2) 0 0 !important;
}

:root[data-aiklava-ui="presentations"] .dashboard-card-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  gap: var(--space-2);
}

:root[data-aiklava-ui="presentations"] .dashboard-card-title {
  min-height: 0 !important;
  font-family: var(--font-heading) !important;
  font-size: 17px !important;
  font-weight: var(--font-heading-weight) !important;
  line-height: 1.2 !important;
}

:root[data-aiklava-ui="presentations"] .deck-card-actions {
  position: static !important;
  display: flex !important;
  gap: 2px !important;
  opacity: 1 !important;
}

:root[data-aiklava-ui="presentations"] .deck-card-actions button {
  width: 26px !important;
  height: 26px !important;
  border: 0 !important;
  border-radius: var(--radius-sm) !important;
  background: transparent !important;
  color: var(--color-accent) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

:root[data-aiklava-ui="presentations"] .dashboard-card-meta {
  display: flex !important;
  justify-content: flex-start !important;
  align-items: center !important;
  gap: 6px !important;
  color: color-mix(in srgb, var(--color-text) 52%, transparent) !important;
  font-size: 11px !important;
}

:root[data-aiklava-ui="presentations"] .dashboard-status {
  margin-left: auto;
  padding: 2px 8px;
  border: 1px solid var(--color-accent);
  border-radius: var(--radius-sm);
  color: var(--color-accent);
}

:root[data-aiklava-ui="presentations"] .dashboard-empty {
  padding: var(--space-6) !important;
  border: 1px dashed var(--color-divider) !important;
  border-radius: var(--radius-md) !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Editor mode is its own full-screen workspace. */
:root.presentations-editor-route body,
:root[data-aiklava-ui="presentations"] body.presentations-editor-mode {
  padding-top: 0 !important;
  overflow: hidden !important;
}

:root.presentations-editor-route body > .aiklava-portal-nav,
:root[data-aiklava-ui="presentations"] body.presentations-editor-mode > .aiklava-portal-nav {
  display: none !important;
}

:root[data-aiklava-ui="presentations"] .app-shell {
  height: 100dvh !important;
  grid-template-rows: auto minmax(0, 1fr) !important;
}

:root[data-aiklava-ui="presentations"] .topbar {
  position: relative !important;
  z-index: 40 !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) !important;
  grid-template-rows: 54px 54px !important;
  align-items: stretch !important;
  gap: 0 !important;
  min-height: 108px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-bottom: 1px solid var(--color-divider) !important;
  border-radius: 0 !important;
  background: var(--color-bg) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

:root[data-aiklava-ui="presentations"] .doc-left {
  width: 100% !important;
  padding: var(--space-2) var(--space-3) !important;
  overflow: visible !important;
}

:root[data-aiklava-ui="presentations"] .editor-back-button {
  width: 36px !important;
  height: 36px !important;
  min-height: 36px !important;
  padding: 0 !important;
  border: 1px solid var(--color-divider) !important;
  border-radius: var(--radius-md) !important;
  background: transparent !important;
  color: var(--color-text) !important;
  box-shadow: none !important;
  display: grid !important;
  place-items: center !important;
}

:root[data-aiklava-ui="presentations"] .editor-back-button svg {
  width: 16px;
  height: 16px;
}

:root[data-aiklava-ui="presentations"] .deck-title {
  flex: 1 1 160px !important;
  max-width: 420px !important;
  padding: 4px !important;
  color: var(--color-text) !important;
  font-size: 17px !important;
}

:root[data-aiklava-ui="presentations"] .editor-save-state {
  flex: 0 0 auto;
  color: color-mix(in srgb, var(--color-text) 48%, transparent);
  font-size: 11.5px;
}

:root[data-aiklava-ui="presentations"] .editor-save-state[data-status="error"] {
  color: #a3372e;
}

:root[data-aiklava-ui="presentations"] .top-actions {
  width: 100% !important;
  min-width: 0 !important;
  padding: var(--space-2) var(--space-3) !important;
  justify-content: flex-start !important;
  gap: 6px !important;
  border-top: 1px solid var(--color-divider) !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
}

:root[data-aiklava-ui="presentations"] :is(.top-button, .select-button, .model-select, .history-button, .tool-button, .export-menu) {
  border-color: var(--color-divider) !important;
  border-radius: var(--radius-md) !important;
  background: transparent !important;
  color: var(--color-text) !important;
  box-shadow: none !important;
}

:root[data-aiklava-ui="presentations"] :is(.top-button, .select-button, .model-select) {
  min-height: 34px !important;
  font-family: var(--font-heading) !important;
  font-size: 12.5px !important;
}

:root[data-aiklava-ui="presentations"] .top-actions .model-select {
  flex: 0 1 150px !important;
  min-width: 96px !important;
  max-width: 160px !important;
}

:root[data-aiklava-ui="presentations"] .top-actions .model-select-image {
  flex-basis: 128px !important;
  max-width: 140px !important;
}

:root[data-aiklava-ui="presentations"] .top-actions .ai-tuning-control {
  border-color: var(--color-divider) !important;
  border-radius: var(--radius-md) !important;
  background: transparent !important;
}

:root[data-aiklava-ui="presentations"] :is(.top-button:hover, .history-button:hover:not(:disabled), .tool-button:hover, .export-menu button:hover) {
  background: color-mix(in srgb, var(--color-accent) 9%, transparent) !important;
  color: var(--color-accent) !important;
}

:root[data-aiklava-ui="presentations"] #saveButton {
  border-color: var(--color-accent) !important;
  color: var(--color-accent) !important;
}

:root[data-aiklava-ui="presentations"] .workspace {
  position: relative !important;
  display: grid !important;
  grid-template-columns: 190px minmax(0, 1fr) 56px !important;
  min-height: 0 !important;
  overflow: hidden !important;
  background: var(--color-bg) !important;
}

:root[data-aiklava-ui="presentations"] .left-filmstrip {
  position: relative !important;
  inset: auto !important;
  z-index: 1 !important;
  grid-column: 1 !important;
  width: auto !important;
  min-height: 0 !important;
  padding: var(--space-2) !important;
  border: 0 !important;
  border-right: 1px solid var(--color-divider) !important;
  border-radius: 0 !important;
  background: var(--color-bg) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  display: flex !important;
  flex-direction: column !important;
  gap: var(--space-2) !important;
}

:root[data-aiklava-ui="presentations"] .left-filmstrip .panel-head {
  display: none !important;
}

:root[data-aiklava-ui="presentations"] .thumbs {
  position: static !important;
  flex: 1 1 auto !important;
  min-height: 0 !important;
  padding: 0 4px 0 0 !important;
  display: grid !important;
  align-content: start !important;
  gap: 8px !important;
  overflow-y: auto !important;
}

:root[data-aiklava-ui="presentations"] .thumb {
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  width: 100% !important;
  padding: 8px 10px !important;
  border: 1px solid var(--color-divider) !important;
  border-radius: var(--radius-sm) !important;
  background: var(--color-surface) !important;
  box-shadow: none !important;
}

:root[data-aiklava-ui="presentations"] .thumb.active {
  border-color: var(--color-accent) !important;
  outline: 1px solid var(--color-accent) !important;
}

:root[data-aiklava-ui="presentations"] .thumb-meta {
  display: flex;
  justify-content: space-between;
  width: 100%;
  color: color-mix(in srgb, var(--color-text) 48%, transparent);
  font-size: 9.5px;
}

:root[data-aiklava-ui="presentations"] .thumb-meta span:first-child {
  color: var(--color-accent);
  font-size: 10px;
  font-feature-settings: "tnum";
}

:root[data-aiklava-ui="presentations"] .thumb-preview {
  grid-column: auto !important;
  grid-row: auto !important;
  border-color: transparent !important;
  border-radius: 0 !important;
  background: transparent !important;
}

:root[data-aiklava-ui="presentations"] .new-split {
  flex: 0 0 auto !important;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 30px !important;
  border: 1px solid var(--color-divider) !important;
  border-radius: var(--radius-md) !important;
  background: transparent !important;
}

:root[data-aiklava-ui="presentations"] .new-split button {
  height: 34px !important;
  color: var(--color-text) !important;
  font-family: var(--font-heading) !important;
  font-weight: var(--font-heading-weight) !important;
}

:root[data-aiklava-ui="presentations"] .new-split button:first-child {
  border-right-color: var(--color-divider) !important;
}

:root[data-aiklava-ui="presentations"] .canvas-area {
  position: relative !important;
  inset: auto !important;
  grid-column: 2 !important;
  min-width: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  transition: margin-right .15s ease;
}

:root[data-aiklava-ui="presentations"] .workspace.tool-open .canvas-area {
  margin-right: 270px !important;
}

:root[data-aiklava-ui="presentations"] .workspace.agent-open .canvas-area {
  margin-right: 300px !important;
  padding-right: 0 !important;
}

:root[data-aiklava-ui="presentations"] .slide-card {
  position: relative !important;
  width: 100% !important;
  height: 100% !important;
  min-height: 0 !important;
}

:root[data-aiklava-ui="presentations"] .slide-stack:not(.streaming-preview) .slide-stage:not(.active) {
  display: none !important;
}

:root[data-aiklava-ui="presentations"] .slide-stack:not(.portrait-deck) {
  justify-content: center !important;
}

:root[data-aiklava-ui="presentations"] .slide-stack.portrait-deck {
  justify-content: flex-start !important;
}

:root[data-aiklava-ui="presentations"] .text-toolbar {
  position: absolute !important;
  inset: 0 0 auto !important;
  z-index: 20 !important;
  width: 100% !important;
  min-height: 52px !important;
  padding: 6px var(--space-3) !important;
  border: 0 !important;
  border-bottom: 1px solid var(--color-divider) !important;
  border-radius: 0 !important;
  background: var(--color-bg) !important;
  box-shadow: none !important;
  transform: none !important;
  backdrop-filter: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 2px !important;
  overflow-x: auto !important;
}

:root[data-aiklava-ui="presentations"] .text-toolbar-label {
  margin-right: 6px !important;
  padding: 0 !important;
  color: color-mix(in srgb, var(--color-text) 55%, transparent) !important;
  font-size: 10.5px !important;
  letter-spacing: .1em !important;
}

:root[data-aiklava-ui="presentations"] .text-toolbar .toolbar-group {
  gap: 2px !important;
  padding: 0 6px !important;
  border-right: 1px solid var(--color-divider) !important;
}

:root[data-aiklava-ui="presentations"] .text-toolbar .toolbar-group:last-child {
  border-right: 0 !important;
}

:root[data-aiklava-ui="presentations"] .text-toolbar.inactive > .toolbar-group {
  opacity: .42;
  pointer-events: none;
}

:root[data-aiklava-ui="presentations"] .history-actions {
  flex: 0 0 auto;
  padding-right: 6px;
  border-right: 1px solid var(--color-divider);
}

:root[data-aiklava-ui="presentations"] :is(.history-button, .toolbar-button) {
  width: auto !important;
  min-width: 30px !important;
  height: 30px !important;
  padding: 0 8px !important;
  border: 1px solid transparent !important;
  border-radius: var(--radius-sm) !important;
  background: transparent !important;
  color: var(--color-text) !important;
  box-shadow: none !important;
}

:root[data-aiklava-ui="presentations"] .history-button svg {
  width: 14px !important;
  height: 14px !important;
}

:root[data-aiklava-ui="presentations"] .text-toolbar :is(select, input[type="number"]) {
  height: 30px !important;
  padding: 2px 8px !important;
  border: 1px solid var(--color-divider) !important;
  border-radius: var(--radius-sm) !important;
  background: transparent !important;
  color: var(--color-text) !important;
  font-size: 12.5px !important;
}

:root[data-aiklava-ui="presentations"] .text-toolbar input[type="color"] {
  width: 28px !important;
  height: 28px !important;
  border-radius: var(--radius-sm) !important;
}

:root[data-aiklava-ui="presentations"] .slide-viewport {
  inset: 52px 0 0 !important;
  padding: var(--space-3) var(--space-3) 56px !important;
  background: color-mix(in srgb, var(--color-text) 4%, var(--color-bg)) !important;
}

:root[data-aiklava-ui="presentations"] .canvas-mini-tools {
  left: auto !important;
  right: var(--space-3) !important;
  top: calc(52px + var(--space-3)) !important;
  gap: 2px !important;
  padding: 2px !important;
  border: 1px solid var(--color-divider) !important;
  border-radius: var(--radius-md) !important;
  background: var(--color-bg) !important;
}

:root[data-aiklava-ui="presentations"] .mini-tool {
  width: 30px !important;
  height: 30px !important;
  border: 0 !important;
  border-radius: var(--radius-sm) !important;
  background: transparent !important;
  color: var(--color-text) !important;
  box-shadow: none !important;
}

:root[data-aiklava-ui="presentations"] .zoom-ctl {
  left: var(--space-3) !important;
  bottom: var(--space-3) !important;
  border-color: var(--color-divider) !important;
  border-radius: var(--radius-md) !important;
  background: var(--color-bg) !important;
  box-shadow: none !important;
}

:root[data-aiklava-ui="presentations"] .slide-status {
  left: auto !important;
  right: var(--space-3) !important;
  bottom: var(--space-3) !important;
  transform: none !important;
  min-width: 0 !important;
  height: 36px !important;
  padding: 0 !important;
  border-radius: var(--radius-md) !important;
  background: transparent !important;
  box-shadow: none !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}

:root[data-aiklava-ui="presentations"] .slide-status .progress-caption {
  display: none !important;
}

:root[data-aiklava-ui="presentations"] .slide-status .progress-count {
  min-width: 46px;
  color: color-mix(in srgb, var(--color-text) 52%, transparent) !important;
  font-size: 12px;
  font-weight: 400 !important;
  text-align: center;
}

:root[data-aiklava-ui="presentations"] .slide-pager-button {
  width: 36px;
  height: 36px;
  border: 1px solid var(--color-divider);
  border-radius: var(--radius-md);
  background: transparent;
  color: var(--color-text);
  font-size: 24px;
  line-height: 1;
}

:root[data-aiklava-ui="presentations"] .slide-pager-button:disabled {
  opacity: .35;
  cursor: default;
}

:root[data-aiklava-ui="presentations"] .right-rail {
  position: relative !important;
  inset: auto !important;
  z-index: 22 !important;
  grid-column: 3 !important;
  width: 56px !important;
  min-height: 0 !important;
  padding: var(--space-2) 0 !important;
  border: 0 !important;
  border-left: 1px solid var(--color-divider) !important;
  border-radius: 0 !important;
  background: var(--color-bg) !important;
  box-shadow: none !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 2px !important;
  overflow-y: auto !important;
}

:root[data-aiklava-ui="presentations"] .workspace.agent-open .right-rail {
  display: flex !important;
}

:root[data-aiklava-ui="presentations"] .rail-button,
:root[data-aiklava-ui="presentations"] .help-button.rail-button {
  position: static !important;
  width: 44px !important;
  height: 44px !important;
  padding: 0 !important;
  border: 1px solid transparent !important;
  border-radius: var(--radius-md) !important;
  background: transparent !important;
  color: var(--color-text) !important;
  box-shadow: none !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 2px !important;
  font-family: var(--font-body) !important;
}

:root[data-aiklava-ui="presentations"] .rail-button :is(svg, b) {
  width: 16px !important;
  height: 16px !important;
  font-size: 15px !important;
  line-height: 16px !important;
}

:root[data-aiklava-ui="presentations"] .rail-button span {
  font-size: 8.5px;
  font-weight: 400;
  letter-spacing: 0;
}

:root[data-aiklava-ui="presentations"] .rail-button:hover {
  background: color-mix(in srgb, var(--color-accent) 9%, transparent) !important;
}

:root[data-aiklava-ui="presentations"] .rail-button.active {
  border-color: var(--color-accent) !important;
  background: transparent !important;
  color: var(--color-accent) !important;
}

:root[data-aiklava-ui="presentations"] .rail-spacer {
  flex: 1 1 auto;
}

:root[data-aiklava-ui="presentations"] .tool-popover {
  position: absolute !important;
  inset: 0 56px 0 auto !important;
  z-index: 21 !important;
  width: 270px !important;
  max-height: none !important;
  border: 0 !important;
  border-left: 1px solid var(--color-divider) !important;
  border-radius: 0 !important;
  background: var(--color-bg) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

:root[data-aiklava-ui="presentations"] .popover-head {
  padding: var(--space-2) var(--space-3) !important;
  border-bottom: 1px solid var(--color-divider) !important;
  background: transparent !important;
}

:root[data-aiklava-ui="presentations"] .popover-head strong {
  font-family: var(--font-heading) !important;
  font-size: 15px !important;
}

:root[data-aiklava-ui="presentations"] .popover-head span {
  margin-top: 2px !important;
  color: color-mix(in srgb, var(--color-text) 52%, transparent) !important;
  font-size: 10.5px !important;
}

:root[data-aiklava-ui="presentations"] .popover-body {
  padding: var(--space-3) !important;
}

:root[data-aiklava-ui="presentations"] .tool-section-title {
  margin: 0 2px var(--space-2) !important;
  color: color-mix(in srgb, var(--color-text) 50%, transparent) !important;
  font-size: 10.5px !important;
  letter-spacing: .1em !important;
}

:root[data-aiklava-ui="presentations"] .tool-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: var(--space-2) !important;
}

:root[data-aiklava-ui="presentations"] .tool-popover[data-tool="template"] .tool-grid {
  grid-template-columns: 1fr !important;
}

:root[data-aiklava-ui="presentations"] .tool-card {
  min-height: 82px !important;
  border: 1px solid var(--color-divider) !important;
  border-radius: var(--radius-sm) !important;
  background: var(--color-surface) !important;
  color: var(--color-text) !important;
  box-shadow: none !important;
  font-size: 12px !important;
}

:root[data-aiklava-ui="presentations"] .tool-card:hover {
  border-color: var(--color-accent) !important;
  box-shadow: none !important;
}

:root[data-aiklava-ui="presentations"] .agent-panel:not(.agent-panel--popup) {
  top: 0 !important;
  right: 56px !important;
  bottom: 0 !important;
  width: 300px !important;
  border-left: 1px solid var(--color-divider) !important;
  background: var(--color-bg) !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
}

:root[data-aiklava-ui="presentations"] :is(.inv-modal, .lp-shell) {
  background: var(--color-bg) !important;
  color: var(--color-text) !important;
}

:root[data-aiklava-ui="presentations"] :is(.lp-head, .lp-palette, .lp-props) {
  border-color: var(--color-divider) !important;
  background: var(--color-bg) !important;
  box-shadow: none !important;
}

:root[data-aiklava-ui="presentations"] :is(.form-card, .preview-card, .deck-action-modal, .inv-card, .lp-dialog-card) {
  border-color: var(--color-divider) !important;
  border-radius: var(--radius-lg) !important;
  background: transparent !important;
  box-shadow: none !important;
}
