/* Visucio native workspace 1.21.
 * Extends the bundled Visucio UI 1.2.0: one calm material system, with aura
 * reserved for the VisuAI welcome. Loaded last by the Core application shell. */
:root {
  --vis-brand: #678fff;
  --vis-action: #365dcc;
  --vis-on-action: #fff;
  --vis-bg: #f5f6f8;
  --vis-surface: #fff;
  --vis-surface-soft: #eff1f5;
  --vis-ink: #20242d;
  --vis-muted: #626c7c;
  --vis-border: #dce1e9;
  --vis-control-border: #8591a6;
  --vis-glass: rgb(255 255 255 / 88%);
  --vis-glass-edge: rgb(255 255 255 / 92%);
  --vis-accent-soft: #edf2ff;
  --vis-accent-ink: #365dcc;
  --vis-shadow-sm: 0 2px 4px rgb(24 34 54 / 2%), 0 8px 24px rgb(24 34 54 / 3%);
  --vis-shadow-md: 0 4px 12px rgb(24 34 54 / 4%), 0 20px 48px rgb(24 34 54 / 6%);
  --native-panel: #fbfcfe;
  --native-hairline: #e8ebf0;
  --native-control: #fff;
  --native-edge-highlight: inset 0 1px 0 rgb(255 255 255 / 86%);
  --visucio-primary: var(--vis-brand);
  --visucio-primary-strong: var(--vis-action);
  --visucio-primary-soft: var(--vis-accent-soft);
  --visucio-background: var(--vis-bg);
  --visucio-surface: var(--vis-surface);
  --visucio-text: var(--vis-ink);
  --visucio-text-secondary: var(--vis-muted);
  --visucio-border: var(--vis-border);
}
html[data-theme="dark"], html[data-vis-theme="dark"] {
  --vis-action: #a4bbff;
  --vis-on-action: #172547;
  --vis-bg: #11151c;
  --vis-surface: #1c222c;
  --vis-surface-soft: #252e3b;
  --vis-ink: #f1f4fa;
  --vis-muted: #acb7c9;
  --vis-border: #384252;
  --vis-control-border: #79879b;
  --vis-glass: rgb(28 34 44 / 91%);
  --vis-glass-edge: rgb(220 233 255 / 12%);
  --vis-accent-soft: #273751;
  --vis-accent-ink: #b1c6ff;
  --vis-shadow-sm: 0 4px 16px rgb(0 0 0 / 10%);
  --vis-shadow-md: 0 14px 44px rgb(0 0 0 / 20%);
  --native-panel: #171d26;
  --native-hairline: #2d3644;
  --native-control: #202936;
  --native-edge-highlight: inset 0 1px 0 rgb(225 238 255 / 5%);
}
.vis-ui { background: var(--vis-bg); color: var(--vis-ink); }
.vis-ui :is(h1,h2,h3,h4) { text-wrap: balance; }
.vis-ui :is(p,small,td,dd) { overflow-wrap: anywhere; }
.vis-ui button { -webkit-tap-highlight-color: transparent; }
.vis-ui button:disabled { cursor: not-allowed; }
.vis-ui :is(button,a,input,textarea,select,summary,[tabindex]):focus-visible {
  outline: 3px solid var(--vis-action); outline-offset: 3px;
}
.vis-ui .visuai-brand-mark, .visuai-brand-mark {
  display: inline-block; width: 24px; height: 24px; flex: 0 0 auto;
  fill: currentColor; stroke: none; vertical-align: middle;
}
.vis-ui .sidebar .visuai-brand-mark { width: 20px; height: 20px; }
.vis-ui :is(.app-shell,.main,.client-main) { background: var(--vis-bg); }
.vis-ui .page { width: 100%; max-width: 1480px; margin-inline: auto; padding: 32px clamp(22px,3vw,46px) 44px; }
.vis-ui .page-header { gap: 24px; margin-bottom: 28px; align-items: center; }
.vis-ui .page-header h1 { font-size: clamp(27px,2.6vw,36px); line-height: 1.2; letter-spacing: -.045em; font-weight: 600; }
.vis-ui .page-header p:not(.eyebrow) { max-width: 70ch; font-size: 13px; line-height: 1.75; margin-top: 9px; color: var(--vis-muted); }
.vis-ui .eyebrow { color: var(--vis-muted); font-size: 10px; letter-spacing: .11em; font-weight: 600; }
.vis-ui .page-actions { flex-wrap: wrap; align-items: center; gap: 8px; }
.vis-ui :is(.topbar,.client-header) { background: var(--vis-surface); border-color: var(--native-hairline); box-shadow: none; }
.vis-ui .topbar { min-height: 78px; padding-inline: clamp(22px,3vw,46px); }
.vis-ui .breadcrumbs { font-size: 12px; color: var(--vis-muted); }
.vis-ui .breadcrumbs strong { color: var(--vis-ink); font-weight: 500; }
.vis-ui .sidebar { background: var(--native-panel); border-color: var(--native-hairline); box-shadow: none; }
.vis-ui .sidebar-logo { padding-bottom: 24px; }
.vis-ui .sidebar-logo img { width: 145px; }
.vis-ui .unit-card { border: 1px solid var(--native-hairline); background: var(--vis-surface); border-radius: 14px; padding: 12px; box-shadow: var(--native-edge-highlight); }
.vis-ui .unit-avatar { border-radius: 11px; background: var(--vis-accent-soft); color: var(--vis-accent-ink); box-shadow: none; }
.vis-ui .unit-card strong { font-weight: 600; font-size: 12px; }
.vis-ui .unit-card span { color: var(--vis-muted); font-size: 10px; }
.vis-ui .nav { gap: 4px; padding-top: 12px; scrollbar-width: thin; scrollbar-color: var(--vis-border) transparent; }
.vis-ui .nav-group-title { padding: 18px 13px 7px; margin: 0; font-size: 9px; letter-spacing: .1em; font-weight: 600; color: var(--vis-muted); }
.vis-ui .nav-button { min-height: 44px; padding: 11px 13px; gap: 11px; border-radius: 11px; color: var(--vis-muted); font-weight: 500; font-size: 12px; }
.vis-ui .nav-button svg { width: 19px; height: 19px; stroke-width: 1.65; }
.vis-ui .nav-button.is-visuai svg { stroke: none; }
.vis-ui .nav-button.active, .vis-ui .nav-button.is-visuai.active { color: var(--vis-accent-ink); font-weight: 600; background: transparent; }
.vis-ui .sidebar-nav-indicator { border: 1px solid var(--vis-border); border-radius: 11px; background: var(--vis-surface); box-shadow: 0 2px 6px rgb(30 46 76 / 4%); }
.vis-ui .sidebar-footer { border-color: var(--native-hairline); padding-top: 18px; }
.vis-ui .profile-compact strong { font-size: 11px; font-weight: 600; }
.vis-ui .profile-compact span { color: var(--vis-muted); font-size: 10px; }
.vis-ui :is(.avatar,.client-avatar) { color: var(--vis-accent-ink); background: var(--vis-accent-soft); box-shadow: none; font-weight: 600; }
.vis-ui :is(.logout-button,.icon-button) { min-width: 40px; min-height: 40px; border: 1px solid transparent; border-radius: 12px; color: var(--vis-muted); background: transparent; box-shadow: none; }
.vis-ui .client-top-nav { border-color: var(--native-hairline); background: var(--vis-surface-soft); box-shadow: none; padding: 4px; border-radius: 14px; }
.vis-ui .client-top-nav button { min-height: 39px; padding: 9px 15px; font-weight: 500; font-size: 11px; color: var(--vis-muted); }
.vis-ui .client-top-nav button.active { color: var(--vis-accent-ink); }
.vis-ui .client-top-nav-indicator { background: var(--vis-surface); border-color: var(--vis-border); border-radius: 10px; box-shadow: 0 2px 5px rgb(24 34 54 / 5%); }
.vis-ui .client-sidebar-toggle { min-height: 42px; border-color: var(--native-hairline); color: var(--vis-muted); background: transparent; font-size: 10px; }
.vis-ui .visuai-fab { width: 48px; height: 48px; border: 1px solid var(--vis-border); border-radius: 17px; color: var(--vis-accent-ink); background: var(--vis-surface); box-shadow: var(--vis-shadow-md); animation: none; }
.vis-ui .visuai-fab::before,.vis-ui .visuai-fab::after { display: none; }
.vis-ui .mobile-nav { background: var(--vis-surface); border-color: var(--native-hairline); box-shadow: 0 -4px 24px rgb(24 34 54 / 4%); }
.vis-ui .mobile-nav button { min-height: 48px; color: var(--vis-muted); font-size: 9px; font-weight: 500; }
.vis-ui .mobile-nav button.active { color: var(--vis-accent-ink); background: var(--vis-accent-soft); border-radius: 12px; }

/* A clear surface hierarchy for dashboards, forms, tables and dialogs. */
.vis-ui :is(.card,.table-card,.metric-card,.client-advisor-card,.client-notification-card,.client-product-card) {
  background: var(--vis-surface); color: var(--vis-ink); border: 1px solid var(--vis-border); border-radius: 20px; box-shadow: var(--vis-shadow-sm);
}
.vis-ui .card { padding: 26px; }
.vis-ui .card-header { gap: 18px; margin-bottom: 22px; }
.vis-ui .card-header h2 { color: var(--vis-ink); font-size: 18px; font-weight: 600; letter-spacing: -.025em; }
.vis-ui .card-header p:not(.eyebrow) { color: var(--vis-muted); font-size: 12px; margin-top: 5px; line-height: 1.7; }
.vis-ui .metrics { gap: 16px; margin-bottom: 24px; }
.vis-ui .metric-card { padding: 23px; }
.vis-ui .metric-card strong { color: var(--vis-ink); font-size: clamp(28px,3vw,36px); font-weight: 550; letter-spacing: -.055em; font-variant-numeric: tabular-nums; }
.vis-ui .metric-card small { color: var(--vis-muted); font-size: 11px; font-weight: 500; }
.vis-ui .metric-icon { width: 36px; height: 36px; border-radius: 11px; background: var(--vis-accent-soft); color: var(--vis-accent-ink); }
.vis-ui .dashboard-grid { gap: 24px; }
.vis-ui .activity-item { padding-block: 17px; border-color: var(--native-hairline); }
.vis-ui .activity-item strong { color: var(--vis-ink); font-size: 12px; font-weight: 550; }
.vis-ui .activity-item :is(span,time) { color: var(--vis-muted); font-size: 10px; line-height: 1.6; }
.vis-ui .activity-dot { border-radius: 12px; background: var(--vis-surface-soft); color: var(--vis-muted); }
.vis-ui .quick-action { border: 1px solid var(--native-hairline); border-radius: 15px; background: var(--native-panel); color: var(--vis-ink); padding: 18px; box-shadow: none; }
.vis-ui .quick-action strong { font-size: 12px; font-weight: 550; }
.vis-ui .quick-action span { font-size: 10px; line-height: 1.6; color: var(--vis-muted); }
.vis-ui .quick-action > svg { width: 21px; height: 21px; color: var(--vis-accent-ink); }
.vis-ui :is(.client-section-heading,.section-heading) h2 { color: var(--vis-ink); font-size: 23px; font-weight: 600; letter-spacing: -.04em; }
.vis-ui .client-product-card { padding: 25px; }
.vis-ui .client-product-icon { border-radius: 14px; background: var(--vis-surface-soft); color: var(--vis-accent-ink); box-shadow: none; }
.vis-ui .client-product-card h3 { color: var(--vis-ink); font-size: 16px; font-weight: 600; }
.vis-ui .client-product-card p { color: var(--vis-muted); font-size: 12px; line-height: 1.7; }
.vis-ui .button { min-height: 44px; padding: 11px 17px; gap: 8px; border: 1px solid transparent; border-radius: 12px; background: var(--vis-action); color: var(--vis-on-action); font-size: 12px; font-weight: 550; line-height: 1.5; box-shadow: none; transition: background-color 160ms ease,border-color 160ms ease,box-shadow 160ms ease; }
.vis-ui .button svg { width: 17px; height: 17px; }
.vis-ui .button.secondary { background: var(--vis-surface); border-color: var(--vis-border); color: var(--vis-ink); box-shadow: var(--native-edge-highlight); }
.vis-ui .button.ghost { background: transparent; color: var(--vis-accent-ink); border-color: transparent; }
.vis-ui .button.danger { background: var(--vis-danger-soft); color: var(--vis-danger); border-color: transparent; }
.vis-ui .button.small { min-height: 36px; padding: 8px 12px; font-size: 11px; border-radius: 10px; }
.vis-ui .field { min-width: 0; gap: 8px; margin-bottom: 20px; }
.vis-ui .field > label { color: var(--vis-ink); font-size: 12px; font-weight: 550; line-height: 1.5; }
.vis-ui .field :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea),.vis-ui .search-field input {
  min-width: 0; min-height: 46px; padding: 12px 14px; color: var(--vis-ink); background: var(--native-control); border: 1px solid var(--vis-control-border); border-radius: 12px; font-size: 13px; line-height: 1.6; box-shadow: none;
}
.vis-ui .field textarea { min-height: 110px; resize: vertical; }
.vis-ui .field :is(input,select,textarea):focus { border-color: var(--vis-action); box-shadow: 0 0 0 3px var(--vis-accent-soft); }
.vis-ui .field :is(input,textarea)::placeholder { color: var(--vis-muted); opacity: 1; }
.vis-ui .field :is(input,select,textarea)[aria-invalid="true"] { border-color: var(--vis-danger); }
.vis-ui .field small { color: var(--vis-muted); font-size: 11px; line-height: 1.65; }
.vis-ui .field :is(input,select,textarea):disabled { background: var(--vis-surface-soft); color: var(--vis-muted); opacity: .8; cursor: not-allowed; }
.vis-ui .form-grid { column-gap: 22px; row-gap: 0; }
.vis-ui .form-actions { padding-top: 18px; gap: 10px; border-color: var(--native-hairline); }
.vis-ui .table-scroll { scrollbar-width: thin; overscroll-behavior-x: contain; border-radius: inherit; }
.vis-ui .data-table { color: var(--vis-ink); font-size: 12px; }
.vis-ui .data-table th { padding: 16px 20px; color: var(--vis-muted); background: var(--native-panel); border-color: var(--native-hairline); font-size: 10px; font-weight: 600; letter-spacing: .04em; }
.vis-ui .data-table td { padding: 17px 20px; border-color: var(--native-hairline); }
.vis-ui .data-table tbody tr:last-child td { border-bottom: 0; }
.vis-ui .table-actions { gap: 6px; }
.vis-ui .badge { border-radius: 7px; padding: 5px 8px; font-size: 10px; font-weight: 500; line-height: 1.5; }
.vis-ui .empty-state { padding: 44px 24px; }
.vis-ui .empty-icon { background: var(--vis-surface-soft); color: var(--vis-muted); border-radius: 17px; box-shadow: none; }
.vis-ui .empty-state h3 { font-size: 16px; font-weight: 600; color: var(--vis-ink); letter-spacing: -.02em; }
.vis-ui .empty-state p { max-width: 48ch; color: var(--vis-muted); font-size: 12px; line-height: 1.75; }
.vis-ui .modal-backdrop { background: rgb(17 26 42 / 32%); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); }
.vis-ui .modal { border: 1px solid var(--vis-border); border-radius: 24px; background: var(--vis-surface); color: var(--vis-ink); box-shadow: 0 28px 90px rgb(8 18 36 / 22%); }
.vis-ui .modal-header { border-color: var(--native-hairline); padding: 26px 28px 20px; }
.vis-ui .modal-header h2 { font-size: 22px; font-weight: 600; letter-spacing: -.04em; }
.vis-ui .modal-body { padding: 24px 28px; }
.vis-ui .toast { border: 1px solid var(--vis-border); border-radius: 16px; background: var(--vis-surface); color: var(--vis-ink); box-shadow: var(--vis-shadow-md); }
.vis-ui .native-resources { margin-bottom: 24px; }
.vis-ui .native-resource-brand { display: flex; align-items: center; gap: 14px; }
.vis-ui .native-resource-brand > .badge { margin-left: auto; }
.vis-ui .native-resource-mark { display: grid; place-items: center; width: 49px; height: 49px; border: 1px solid var(--vis-border); border-radius: 16px; background: var(--vis-accent-soft); color: var(--vis-accent-ink); }
.vis-ui .native-resource-brand h2 { font-size: 22px; letter-spacing: -.04em; font-weight: 600; }
.vis-ui .native-resource-card > p { color: var(--vis-muted); font-size: 13px; line-height: 1.7; margin-top: 18px; max-width: 70ch; }
.vis-ui .native-resource-footer { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 18px; padding-top: 20px; margin-top: 20px; border-top: 1px solid var(--native-hairline); }
.vis-ui .native-resource-footer > span { color: var(--vis-muted); font-size: 11px; }
.vis-ui .native-resource-footer .entity-actions { margin: 0; }

/* Authentication: photography carries the emotion; the form stays quiet. */
.vis-ui .login-shell { gap: 16px; padding: 18px; background: var(--vis-bg); grid-template-columns: minmax(320px,1.08fr) minmax(380px,.92fr); }
.vis-ui .login-brand { border-radius: 27px; min-height: calc(100dvh - 36px); padding: clamp(30px,4.8vw,72px); }
.vis-ui .login-brand::after { display: none; }
.vis-ui .login-brand .brand-logo { width: 175px; }
.vis-ui .login-copy { padding-block: 64px; }
.vis-ui .login-copy h1 { max-width: 13ch; font-size: clamp(38px,4.3vw,65px); line-height: 1.05; font-weight: 550; letter-spacing: -.055em; }
.vis-ui .login-copy > p:not(.eyebrow) { max-width: 42ch; font-size: 14px; color: #e3e9f6; line-height: 1.85; }
.vis-ui .login-copy .eyebrow { color: #d0ddff; font-weight: 500; }
.vis-ui .login-points { gap: 8px; margin-top: 28px; }
.vis-ui .login-points span { padding: 9px 12px; border: 1px solid rgb(255 255 255 / 26%); background: rgb(12 20 36 / 20%); color: #f8faff; border-radius: 10px; font-size: 10px; font-weight: 500; }
.vis-ui .login-panel { min-width: 0; padding: clamp(34px,5.5vw,85px); margin: 0; border: 1px solid var(--native-hairline); border-radius: 27px; background: var(--vis-surface); }
.vis-ui .login-form { width: min(390px,100%); }
.vis-ui .login-form h2 { color: var(--vis-ink); font-size: clamp(28px,2.6vw,36px); line-height: 1.2; font-weight: 600; letter-spacing: -.045em; }
.vis-ui .login-form > p:not(.eyebrow) { font-size: 13px; line-height: 1.8; color: var(--vis-muted); margin: 12px 0 30px; }
.vis-ui .login-form .field { margin-bottom: 20px; }
.vis-ui .login-form .button { min-height: 48px; }
.vis-ui .auth-security-label { color: var(--vis-muted); margin-bottom: 15px; }
.vis-ui .auth-install { border-color: var(--native-hairline); }
.vis-ui .auth-install-button { font-size: 11px; }
.vis-ui .google-button { border-color: var(--vis-border); color: var(--vis-ink); background: var(--vis-surface); }
.vis-ui .auth-divider { color: var(--vis-muted); font-size: 10px; }
.vis-ui .login-status:empty { display: none; }
.vis-ui .login-status { font-size: 12px; line-height: 1.7; }
.vis-ui .text-button { min-height: 40px; color: var(--vis-accent-ink); font-size: 12px; font-weight: 500; }
.vis-ui .auth-theme-toggle { border-color: var(--vis-border); background: var(--vis-surface); color: var(--vis-ink); }

/* Welcome aura remains within its own card. All routine work uses neutral panels. */
.vis-ui .visuai-home.card { border-radius: 30px; padding: 44px 32px 30px; }
.vis-ui .visuai-home .home-aura { contain: paint; }
.vis-ui .visuai-home #visuai-home-title { font-weight: 550; }
.vis-ui .visuai-home-intro > p:not(.eyebrow) { font-size: 14px; }
.vis-ui .visuai-home-suggestions button { min-height: 44px; font-size: 11px; }
.vis-ui .home-text-link { min-height: 36px; font-size: 11px; }
.vis-ui .visuai-home .home-composer-label { color: var(--vis-ink); }
.vis-ui .visuai-home-composer-bottom > span { font-size: 11px; }
.vis-ui .visuai-home form .button { color: #fff; background: #365dcc; min-height: 44px; font-size: 12px; }
@supports (backdrop-filter: blur(1px)) {
  .vis-ui :is(.topbar,.client-header,.mobile-nav) { background: var(--vis-glass); backdrop-filter: blur(24px) saturate(130%); -webkit-backdrop-filter: blur(24px) saturate(130%); }
}
@media (hover:hover) {
  .vis-ui :is(.nav-button,.icon-button,.logout-button):hover { color: var(--vis-ink); background: var(--vis-surface-soft); }
  .vis-ui .button:hover { filter: none; transform: none; box-shadow: 0 3px 10px rgb(30 50 91 / 10%); }
  .vis-ui :is(.button.secondary,.quick-action):hover { border-color: var(--vis-control-border); background: var(--native-panel); }
  .vis-ui .button.ghost:hover { background: var(--vis-accent-soft); box-shadow: none; }
  .vis-ui .data-table tbody tr:hover { background: var(--native-panel); }
  .vis-ui .client-product-card:hover { transform: translateY(-2px); box-shadow: var(--vis-shadow-md); }
}
@media (max-width:1100px) {
  .vis-ui .client-top-nav button { padding-inline: 11px; font-size: 10px; }
  .vis-ui .page { padding-inline: 26px; }
  .vis-ui .login-panel { padding-inline: 34px; }
}
@media (max-width:900px) {
  .vis-ui .login-shell { grid-template-columns: 1fr; gap: 0; padding: 0; }
  .vis-ui .login-brand { display: none; }
  .vis-ui .login-panel { min-height: 100dvh; padding: 74px 28px 42px; border: 0; border-radius: 0; }
  .vis-ui .login-form { width: min(410px,100%); }
  .vis-ui .login-form .mobile-logo { display: block; width: 154px; margin-bottom: 38px; }
}
@media (max-width:700px) {
  .vis-ui .page { padding: 23px 16px calc(28px + env(safe-area-inset-bottom)); }
  .vis-ui .topbar { min-height: 65px; padding-inline: 16px; }
  .vis-ui .page-header { gap: 18px; margin-bottom: 22px; align-items: stretch; }
  .vis-ui .page-header h1 { font-size: 27px; }
  .vis-ui .page-header p:not(.eyebrow) { font-size: 12px; }
  .vis-ui .page-actions { width: 100%; }
  .vis-ui .card { padding: 20px; border-radius: 18px; }
  .vis-ui .card-header { flex-wrap: wrap; margin-bottom: 18px; }
  .vis-ui .metrics { gap: 10px; }
  .vis-ui .metric-card { padding: 17px; border-radius: 17px; }
  .vis-ui .metric-card strong { font-size: 28px; }
  .vis-ui .metric-icon { width: 30px; height: 30px; }
  .vis-ui .metric-icon svg { width: 17px; height: 17px; }
  .vis-ui .dashboard-grid { gap: 18px; }
  .vis-ui .field :is(input:not([type="checkbox"]):not([type="radio"]),select,textarea),.vis-ui .search-field input { font-size: 16px; }
  .vis-ui .table-actions .button { min-height: 40px; }
  .vis-ui .data-table td { padding: 13px 16px; }
  .vis-ui .modal { max-height: calc(100dvh - 24px); border-radius: 20px; }
  .vis-ui .modal-header { padding: 22px 20px 18px; }
  .vis-ui .modal-body { padding: 20px; }
  .vis-ui .visuai-home.card { padding: 30px 18px 22px; border-radius: 24px; }
  .vis-ui .visuai-home-intro > p:not(.eyebrow) { font-size: 12px; }
  .vis-ui .visuai-home-suggestions button { min-height: 48px; font-size: 10px; }
  .vis-ui .visuai-home-composer-bottom > span { max-width: 100px; font-size: 9px; }
  .vis-ui .visuai-home form .button { font-size: 11px; }
  .vis-ui .visuai-fab { bottom: calc(85px + env(safe-area-inset-bottom)); }
}
@media (prefers-reduced-motion:reduce) {
  html { scroll-behavior: auto; }
  .vis-ui *, .vis-ui *::before, .vis-ui *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
  .vis-ui :is(.home-aura i,.home-assistant-emblem::before) { animation: none !important; }
  .vis-ui :is(.button,.quick-action,.client-product-card,.visuai-home-suggestions button):hover { transform: none; }
}
@media (prefers-reduced-transparency:reduce) {
  .vis-ui :is(.topbar,.client-header,.mobile-nav,.modal-backdrop) { backdrop-filter: none; -webkit-backdrop-filter: none; }
  .vis-ui :is(.topbar,.client-header,.mobile-nav) { background: var(--vis-surface); }
  .vis-ui .modal-backdrop { background: rgb(17 26 42 / 80%); }
}
@media (forced-colors:active) {
  .vis-ui :is(.button,.card,.metric-card,.modal,.sidebar-nav-indicator,.client-top-nav-indicator,.visuai-fab) { border: 1px solid ButtonText; box-shadow: none; }
  .vis-ui :is(.nav-button,.client-top-nav button,.mobile-nav button).active { outline: 2px solid Highlight; outline-offset: -2px; }
  .vis-ui .visuai-brand-mark { color: ButtonText; }
  .vis-ui .home-aura,.vis-ui .home-assistant-emblem::before { display: none; }
}
