/* Centrivo workspaces: information first, one set of controls, one safe-area owner. */
:root {
  --mobile-command-bar-height: 48px;
  --mobile-safe-bottom: env(safe-area-inset-bottom, 0px);
  --mobile-safe-top: env(safe-area-inset-top, 0px);
  --workspace-gap: 16px;
  --workspace-accent: #0369a1;
}
html.dark-mode { --workspace-accent: #8ed6ff; }
html { background-color: var(--surface, #f4f8fc); }
body.has-app-shell {
  height: 100dvh;
  min-height: 0;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
body.has-app-shell > .navbar { flex: 0 0 auto; }
body.has-app-shell .app { flex: 1 1 0; height: auto !important; min-height: 0 !important; }
body.has-app-shell main.content { min-width: 0; min-height: 0; overflow-y: auto; }
body.has-app-shell main.content .btn.btn-outline-secondary,
body.has-app-shell main.content .btn.btn-app-secondary,
body.has-app-shell main.content .btn.btn-app-neutral {
  background: var(--surface) !important;
  color: var(--text) !important;
  border-color: var(--border) !important;
  box-shadow: none;
}
body.has-app-shell main.content .modern-card { box-shadow: 0 3px 12px rgb(0 0 0 / 4%); }
body.has-app-shell main.content .modern-card .modern-card { box-shadow: none; }
body.has-app-shell main.content .form-control:disabled,
body.has-app-shell main.content .form-select:disabled { color: var(--text); opacity: 1; }
.app-legal-links { margin-top: 20px; }
.app-legal-links a { display: inline-flex; align-items: center; min-height: 32px; padding: 4px 8px; }
.mobile-sheet[hidden], .mobile-sheet-backdrop[hidden], .mobile-module-search[hidden] { display: none !important; }
.module-filter-shortcut, .record-details-toggle, .record-extra-action { display: none; }
.mobile-inline-action-menu { display: none !important; }
.saas-workspace-heading, .saas-secondary-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; }
.saas-workspace-heading { flex-wrap: nowrap; min-width: 0; }
.module-page-filter { display: flex; flex-wrap: wrap; gap: 10px; align-items: end; }
.module-page-filter > p { flex: 1 1 100%; }
.module-page-filter > label { flex: 1 1 180px; margin: 0; }
.module-page-filter > label > input, .module-page-filter > label > select { margin-top: 5px; }
body.has-app-shell main table tr[hidden] { display: none !important; }

/* A single, named workspace selector replaces nested accordion walls.
   Hidden panels retain their original form and field identities. */
.workspace-navigation { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; margin: 0 0 16px; }
.workspace-navigation__tabs { display: flex; flex: 1; gap: 4px; flex-wrap: wrap; }
.workspace-navigation button, .workspace-navigation select {
  min-height: 44px; border: 1px solid var(--border); border-radius: 9px;
  padding: 8px 12px; background: var(--surface); color: var(--text); font: inherit;
}
.workspace-navigation button[aria-pressed="true"] { background: var(--surface-3); border-color: var(--workspace-accent); color: var(--workspace-accent); font-weight: 700; }
.workspace-navigation__mobile { display: none; }
.workspace-navigation__all { font-size: .8125rem !important; color: var(--text-muted) !important; }
.workspace-panel[data-workspace-hidden="true"], .workspace-empty-column { display: none !important; }
.workspace-panel { scroll-margin-top: 12px; }
.workspace-root > .row > .workspace-single-column { width: 100%; max-width: 100%; flex: 1 1 100%; }
.workspace-root:not([data-workspace-view="all"]) .workspace-layout { display: block !important; }
.workspace-root:not([data-workspace-view="all"]) .workspace-layout > [class*="col-"] { width: 100%; padding-block: 0; }
.workspace-navigation { grid-column: 1 / -1; }
.workspace-single-track { grid-template-columns: minmax(0,1fr) !important; }
.workspace-single-column { min-width: 0; }
.workspace-root .row > .workspace-single-column { width: 100%; max-width: 100%; }
.workspace-root.row > .workspace-single-column { width: 100%; max-width: 100%; }
.workspace-root .workspace-layout .invoice-workspace-sticky { position: static; display: block; }
.workspace-root .workspace-navigation ~ .row { margin-top: 0; }
body.workspace-invoice-ready .invoice-workbench-hero { display: none; }
body.workspace-contract-ready .saas-contract-nav { display: none; }
body.workspace-offer-ready .offer-form-nav,
body.workspace-project-ready .workspace-legacy-navigation { display: none; }
body.workspace-customer-ready .customer-overview-nav { display: none; }
.workspace-panel > hr:first-child { display: none; }
.workspace-root .workspace-panel > .d-flex:first-child p { max-width: 72ch; }
.workspace-panel > summary { gap: 8px; }
.workspace-panel > summary::marker { color: var(--workspace-accent); }
.workspace-navigation button:focus-visible, .record-details-toggle:focus-visible, .module-filter-shortcut:focus-visible {
  outline: 3px solid var(--workspace-accent); outline-offset: 3px;
}

/* Invoice read view, equally useful on desktop and phone. */
.invoice-back-button { flex: 0 0 44px; width: 44px; min-width: 44px; height: 44px; padding: 0 !important; }
.invoice-back-icon { font-size: 1.4rem; line-height: 1; }
.invoice-back-label { display: none; }
.invoice-page-toolbar__title { min-width: 0; gap: 10px; }
.invoice-page-toolbar__title h1 { font-size: 1.35rem; margin: 0; }
.invoice-overview-context { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.invoice-overview-context strong { display: block; font-size: 1.125rem; overflow-wrap: anywhere; }
.invoice-overview-meta { display: flex; flex-wrap: wrap; gap: 6px 18px; font-size: .875rem; color: var(--text-muted); }
#invoice-workspace-overview { margin: 0 0 16px; padding: 18px !important; }
#invoice-workspace-overview .invoice-workspace-overview-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 10px; }
#invoice-workspace-overview .invoice-workspace-kpi { padding: 12px; border-radius: 10px; box-shadow: none; }
#invoice-workspace-overview .invoice-workspace-kpi__label { font-size: .75rem; letter-spacing: .03em; }
#invoice-workspace-overview .invoice-workspace-kpi__value { font-size: 1.25rem; }
.invoice-status-disclosure { margin-bottom: 12px; }
.invoice-status-disclosure > summary { cursor: pointer; color: var(--text-muted); font-size: .875rem; min-height: 44px; display: flex; align-items: center; gap: 8px; }
.invoice-status-disclosure > summary::before { content: '›'; font-size: 1.25rem; }
.invoice-status-disclosure[open] > summary::before { transform: rotate(90deg); }
.invoice-status-disclosure .invoice-status-region { margin-top: 6px; }
.invoice-reading-lines { padding: 16px; }
.invoice-reading-lines h2 { font-size: 1rem; margin-bottom: 12px; }
.invoice-reading-line { display: flex; justify-content: space-between; gap: 16px; padding: 12px 0; border-top: 1px solid var(--border); }
.invoice-reading-line__name { min-width: 0; overflow-wrap: anywhere; }
.invoice-reading-line__meta { color: var(--text-muted); font-size: .875rem; margin-top: 4px; }
.invoice-reading-line__amount { white-space: nowrap; font-weight: 700; }
.invoice-reading-notice { padding: 12px 0; color: var(--text-muted); font-size: .875rem; }
.invoice-document-tabs { gap: 4px; flex-wrap: nowrap; overflow-x: auto; }
.invoice-document-tabs .nav-link { white-space: nowrap; }
.invoice-status-disclosure .invoice-status-region__facts { display: grid; grid-template-columns: repeat(auto-fit,minmax(150px,1fr)); }
.invoice-workspace-card { margin-bottom: 14px; }
.workspace-root .invoice-form-section { margin-bottom: 14px; }
.workspace-root .invoice-step-index { display: none; }

/* Wide screens keep a calm, full-width work area and concise toolbars. */
@media (min-width: 1200px) {
  body.has-app-shell > .navbar { padding-block: 6px; min-height: 64px; }
  body.has-app-shell .navbar-brand-logo { height: 42px; }
  body.has-app-shell main.content { padding: 24px; max-width: none; }
  body.has-app-shell .sidebar { height: 100%; }
  .workspace-root .workspace-panel { max-width: 1440px; }
  .workspace-root .workspace-panel .row { --bs-gutter-y: .9rem; }
  .invoice-reading-lines { max-width: none; }
  .app-list-header { margin-bottom: 16px; }
  .dashboard-page-hero { padding: 20px 24px; }
}

/* Shared compact chrome on touch devices. The env() insets are counted once. */
@media (max-width: 1199.98px) {
  /* One viewport shell; navigation occupies a real flex row instead of floating
     above an independently sized 100dvh body and duplicated bottom padding. */
  body.has-app-shell { position: fixed; inset: 0; height: auto !important; min-height: 0 !important; background-color: var(--surface); }
  body.has-app-shell > .app { order: 1; }
  body.has-app-shell .navbar.sticky-top {
    min-height: 0; padding: calc(var(--mobile-safe-top) + 4px) max(10px,env(safe-area-inset-right,0px)) 4px max(10px,env(safe-area-inset-left,0px)) !important;
    background: var(--surface) !important; backdrop-filter: none; -webkit-backdrop-filter: none; box-shadow: none;
  }
  body.has-app-shell .navbar.sticky-top > .container-fluid { min-height: 44px; flex-wrap: nowrap; }
  body.has-app-shell .navbar-brand { margin: 0; padding: 0; }
  body.has-app-shell .navbar-brand-logo { height: 32px; max-width: 31vw; }
  body.has-app-shell .navbar #sidebarToggle { margin-right: 6px !important; }
  body.has-app-shell .navbar .app-shell-icon-btn {
    width: 44px !important; min-width: 44px; height: 44px !important; min-height: 44px; box-shadow: none;
    background: transparent !important; border-color: transparent !important;
  }
  body.has-app-shell .navbar .container-fluid > .ms-auto { gap: 0 !important; }
  body.has-app-shell main.content {
    max-width: none; width: 100%; padding: 16px;
    padding-bottom: 20px;
  }
  .mobile-command-bar {
    position: relative; inset: auto; order: 2; flex: 0 0 auto; width: 100%;
    box-sizing: border-box; height: calc(var(--mobile-command-bar-height) + var(--mobile-safe-bottom));
    min-height: 0; padding: 2px max(4px,env(safe-area-inset-right,0px)) calc(2px + var(--mobile-safe-bottom)) max(4px,env(safe-area-inset-left,0px));
    background: var(--surface); box-shadow: none;
    backdrop-filter: none; -webkit-backdrop-filter: none;
  }
  .mobile-command-bar__item, .mobile-command-bar__item--primary {
    height: 44px; min-height: 44px !important; padding: 2px; border-radius: 8px; gap: 2px;
    transform: none; box-shadow: none; border: 0;
  }
  .mobile-command-bar__item--primary { background: transparent; color: var(--workspace-accent); }
  .mobile-command-bar__item--primary:hover, .mobile-command-bar__item--primary:focus-visible { background: var(--surface-3); color: var(--workspace-accent); }
  .mobile-command-bar__item.is-active { background: var(--surface-3); color: var(--workspace-accent); box-shadow: none; }
  body.mobile-actions-ready [data-mobile-action-overflow] { display: none !important; }
  body.mobile-actions-ready .mobile-inline-action-menu { display: inline-flex !important; }
  .mobile-command-bar__icon { font-size: 20px; line-height: 20px; }
  .mobile-command-bar__icon svg { display: block; width: 20px; height: 20px; }
  .mobile-command-bar__label { font-size: 11px; line-height: 11px; font-weight: 600; white-space: normal; overflow: visible; text-align: center; }
  .mobile-sheet { bottom: 0; left: 0; right: 0; border-radius: 18px 18px 0 0; max-height: min(86dvh,760px); padding-bottom: var(--mobile-safe-bottom); }
  .mobile-sheet__header { padding: 8px 16px; }
  .mobile-sheet__body { padding: 14px 16px 20px; }
  .mobile-sheet__close { width: 44px; height: 44px; min-width: 44px; }
  .mobile-sheet__title { font-size: 1.125rem; }
  .mobile-module-filter-form { display: block !important; }
  .mobile-module-filter-form.row { display: flex !important; }
  .mobile-module-filter-form .row { --bs-gutter-y: 12px; }
  .mobile-module-filter-form > [class*="col-"] { width: 100%; }
  .mobile-module-filter-form .form-control, .mobile-module-filter-form .form-select { font-size: 16px; }
  .mobile-global-search { border-top: 1px solid var(--border); margin-top: 16px; padding-top: 8px; }
  .mobile-global-search > summary { color: var(--text-muted); font-weight: 600; }
  .mobile-global-search__body { padding-top: 12px; }
  .mobile-quick-create-card { min-height: 76px; box-shadow: none; }
  body.mobile-keyboard-open .mobile-sheet { bottom: 0; max-height: calc(var(--mobile-visual-height,100dvh) - 16px); }
  body.mobile-keyboard-open .mobile-command-bar { display: none !important; }
  body.mobile-keyboard-open main.content { padding-bottom: 20px; }
}

@media (max-width: 767.98px) {
  body.has-app-shell main.content { padding: 12px; padding-bottom: 16px; }
  body.has-app-shell main.content h1, body.has-app-shell .page-title { font-size: 1.375rem; line-height: 1.25; }
  body.has-app-shell main.content h2 { font-size: 1.125rem; }
  body.has-app-shell main.content h3, body.has-app-shell main.content h4, body.has-app-shell main.content h5 { font-size: 1rem; }
  body.has-app-shell main.content .form-label { font-size: .8125rem; letter-spacing: 0; margin-bottom: 5px; }
  body.has-app-shell main.content .form-control, body.has-app-shell main.content .form-select { min-height: 44px; font-size: 16px; padding: 9px 10px; border-radius: 9px; }
  body.has-app-shell main.content .form-text { font-size: .8125rem; line-height: 1.4; }
  body.has-app-shell main.content textarea.form-control { min-height: 76px; }
  body.has-app-shell main.content .btn { min-height: 44px; font-size: .875rem; padding: 8px 12px; }
  body.has-app-shell main.content .modern-card.p-4, body.has-app-shell main.content .modern-card.p-3, body.has-app-shell main.content .card-body { padding: 14px !important; }
  body.has-app-shell main.content .modern-card.mb-4 { margin-bottom: 14px !important; }
  body.has-app-shell main.content .row.g-4 { --bs-gutter-y: 14px; --bs-gutter-x: 14px; }
  body.has-app-shell main.content .row.g-3 { --bs-gutter-y: 12px; --bs-gutter-x: 12px; }
  body.has-app-shell .app-mobile-form-stack .row > .col-6,
  body.has-app-shell .app-mobile-form-stack .row > .mobile-keep-half { width: 50%; }
  body.has-app-shell .app-action-row, body.has-app-shell .page-actions, body.has-app-shell .form-actions {
    display: flex !important; flex-wrap: wrap; width: auto; gap: 8px !important;
  }
  body.has-app-shell .app-action-row > *, body.has-app-shell .page-actions > *, body.has-app-shell .form-actions > *,
  body.has-app-shell .app-action-row .btn, body.has-app-shell .page-actions .btn, body.has-app-shell .form-actions .btn { width: auto; flex: 0 1 auto; }
  .app-list-header { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-bottom: 12px; }
  .app-list-header__copy { flex: 1 1 160px; min-width: 0; }
  .app-list-header__copy .small { display: none; }
  .app-list-header__actions { display: flex; gap: 6px; flex-wrap: wrap; }
  .app-list-results-meta { padding: 8px 2px !important; margin: 0 !important; background: none !important; border: 0 !important; }
  .app-list-results-meta .small { font-size: .8125rem; }
  body.module-filters-ready main .app-mobile-context-filter,
  body.module-filters-ready main .app-mobile-filter-source { display: none !important; }
  .module-filter-shortcut, .record-details-toggle {
    display: inline-flex; align-items: center; justify-content: center; min-height: 44px;
    border: 1px solid var(--border); border-radius: 9px; background: var(--surface); color: var(--text);
    font: inherit; font-size: .8125rem; padding: 8px 10px;
  }
  .module-filter-shortcut { margin-bottom: 8px; }
  .app-list-header .module-filter-shortcut { margin: 0; }
  body.has-app-shell .app-module-kpi-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin: 0 0 14px; }
  body.has-app-shell .app-module-kpi-grid > [class*="col-"] { width: 100%; padding: 0; }
  body.has-app-shell .module-kpi { min-height: 0; padding: 10px; }
  body.has-app-shell .module-kpi-label { font-size: .6875rem; letter-spacing: 0; }
  body.has-app-shell .module-kpi-value { font-size: 1.125rem; margin-top: 4px; }

  .workspace-navigation { gap: 6px; margin-bottom: 12px; }
  .workspace-navigation__tabs { display: none; }
  .workspace-navigation__mobile { display: flex; align-items: center; gap: 8px; flex: 1; min-width: 0; font-size: .8125rem; }
  .workspace-navigation__mobile select { min-width: 0; width: 100%; font-size: 16px; }
  .workspace-navigation__all { padding: 8px !important; min-width: 44px; }
  .workspace-navigation__all[aria-pressed="true"] { border-color: var(--workspace-accent); }
  .workspace-root .workspace-panel > .d-flex:first-child { margin-bottom: 12px !important; padding-bottom: 0 !important; }
  .workspace-root .workspace-panel > .d-flex:first-child p { display: none; }
  .workspace-root .workspace-panel .gap-4 { gap: 14px !important; }
  .workspace-root .workspace-panel .saas-module-grid { grid-template-columns: 1fr; gap: 8px; }
  .offer-workspace-summary > .d-flex { display: none !important; }
  .offer-workspace-summary .row { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; margin: 0; }
  .offer-workspace-summary .row > div { width: auto; padding: 0; margin: 0; }
  .offer-workspace-summary .app-metric { padding: 8px; }
  .offer-workspace-summary .app-metric__value { font-size: .9375rem; overflow-wrap: anywhere; }
  .saas-cockpit-intro { display: none; }
  body.has-app-shell .integrations-kpis { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
  body.has-app-shell .integrations-kpi { padding: 10px; }
  body.has-app-shell .setup-card { padding: 14px !important; }
  .saas-module-card, .saas-package-card { padding: 12px; box-shadow: none !important; }
  .saas-module-card .small { line-height: 1.35; }
  .saas-calculator-summary > .modern-card > .d-flex { display: none !important; }
  .saas-calculator-summary .row { margin-top: 0 !important; }
  .saas-calculator-summary .app-metric { padding: 8px; }
  .saas-calculator-summary .app-metric__label { font-size: .75rem; }
  .saas-calculator-summary .app-metric__value { font-size: 1rem; }
  .saas-workspace-header { gap: 10px; }
  .saas-workspace-heading { flex: 1 1 100%; }
  .saas-workspace-header .saas-workspace-actions { margin-left: auto; }
  .saas-workspace-actions { display: flex; flex-wrap: wrap; gap: 8px; }
  .invoice-page-toolbar { display: flex; flex-direction: column; align-items: stretch; gap: 8px; margin-bottom: 12px; }
  .invoice-page-toolbar__title { display: flex; flex-wrap: nowrap; }
  .invoice-page-toolbar__title h1 { flex: 1; font-size: 1.125rem !important; }
  .invoice-page-toolbar__status { font-size: .6875rem; padding: 5px 7px; }
  .invoice-page-toolbar__actions { display: flex; flex-wrap: wrap; gap: 8px; justify-content: flex-end; }
  .invoice-page-toolbar__actions .btn-app-primary { order: -1; }
  .invoice-page-toolbar__actions > [data-open-tab-target] { display: none !important; }
  #invoice-workspace-overview { padding: 14px !important; margin-bottom: 10px; }
  #invoice-workspace-overview .invoice-workspace-overview-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
  #invoice-workspace-overview .invoice-workspace-kpi { padding: 10px; }
  #invoice-workspace-overview .invoice-workspace-kpi__value { font-size: 1.125rem; }
  #invoice-workspace-overview .invoice-workspace-kpi__label { font-size: .6875rem; }
  .invoice-overview-context { margin-bottom: 10px; gap: 6px; }
  .invoice-overview-meta { gap: 4px 12px; font-size: .8125rem; }
  .invoice-document-tabs { margin-bottom: 12px !important; }
  body.has-app-shell .invoice-document-tabs .nav-link { padding: 8px 10px; font-size: .8125rem; }
  .invoice-status-disclosure { margin-bottom: 6px; }
  .invoice-reading-line { gap: 10px; }
  #invoice-basics .invoice-customer-address { padding: 10px; }
  #invoice-basics .invoice-step-heading + p, #invoiceCustomerHelp { display: none; }
  body.has-app-shell #items .item-row { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin: 0 0 14px; border: 1px solid var(--border); border-radius: 10px; padding: 12px; }
  body.has-app-shell #items .item-row > div { width: 100% !important; padding: 0; }
  body.has-app-shell #items .item-row > [data-field-label="Bezeichnung"] { grid-column: 1 / -1; }
  #items .item-row > [data-field-label]::before { display: block; content: attr(data-field-label); font-size: .75rem; margin-bottom: 4px; color: var(--text-muted); }
  #items .item-row > [data-field-label="Aktion"]::before { content: none; }
  .invoice-items-summary { display: flex; flex-wrap: wrap; gap: 8px; }
  .invoice-items-summary__metric { flex: 1; min-width: 90px; padding: 8px; }
  .invoice-items-summary__label { font-size: .6875rem; }
  .invoice-items-summary__value { font-size: .875rem; }

  /* Readable records, not seven full-width label/value rows per invoice. */
  body.has-app-shell .table-mobile-stack, body.has-app-shell .table-mobile-smart { width: 100%; }
  body.has-app-shell .compact-records-table { display: block; table-layout: auto; }
  body.has-app-shell .compact-records-table > thead { display: none; }
  body.has-app-shell .table-mobile-stack tbody, body.has-app-shell .table-mobile-smart tbody { display: block; padding: 0; }
  body.has-app-shell .table-mobile-stack tbody .compact-record, body.has-app-shell .table-mobile-smart tbody .compact-record {
    display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 6px 14px;
    padding: 12px; margin: 0 0 10px; border: 1px solid var(--border); border-radius: 12px; box-shadow: none;
  }
  body.has-app-shell .compact-record > td {
    display: block !important; width: auto !important; min-width: 0; min-height: 0 !important;
    border: 0 !important; padding: 2px 0 !important; text-align: left !important; white-space: normal !important; overflow-wrap: anywhere;
    font-size: .9375rem; background: none !important;
  }
  body.has-app-shell .compact-record > td::before { display: block; width: auto; content: attr(data-label); font-size: .6875rem; line-height: 1.3; font-weight: 600; color: var(--text-muted); margin-bottom: 3px; }
  body.has-app-shell .compact-record > td > * { min-width: 0; max-width: 100%; }
  body.has-app-shell .compact-record > .record-actions { grid-column: 1 / -1; display: flex !important; flex-wrap: wrap; align-items: center; gap: 6px; margin-top: 4px; }
  body.has-app-shell .compact-record > .record-actions::before { content: none; }
  body.has-app-shell .compact-record > .record-selection { grid-column: 1 / -1; display: flex !important; align-items: center; gap: 8px; }
  body.has-app-shell .compact-record > .record-selection::before { margin: 0; }
  body.has-app-shell .compact-record > .record-selection input { width: 22px; height: 22px; margin: 0; }
  body.has-app-shell .product-list-table .compact-record > .product-unit-price { grid-column: 2; grid-row: 1; text-align: right !important; }
  .product-unit-price .product-price-unit { white-space: nowrap; }
  body.has-app-shell .compact-record:not(.record-expanded) > .record-secondary { display: none !important; }
  body.has-app-shell .compact-record .text-nowrap { white-space: normal !important; }
  body.has-app-shell .compact-record .btn-group { display: flex; flex-wrap: wrap; width: auto; gap: 6px; }
  body.has-app-shell .compact-record .btn-group .btn { width: auto; }
  body.has-app-shell .compact-record .btn { font-size: .8125rem; min-height: 44px; padding: 8px 10px; }
  body.has-app-shell .saas-contract-list-table .compact-record > td { overflow: visible; }
  .record-extra-action { display: flex; }
  .dashboard-page-hero { padding: 14px !important; margin-bottom: 12px; }
  .dashboard-page-intro, .dashboard-page-eyebrow { display: none; }
  .dashboard-page-title { margin-bottom: 4px; }
  .dashboard-page-welcome { font-size: .875rem; }
  .dashboard-context-pill { max-width: 100%; overflow: hidden; text-overflow: ellipsis; font-size: .75rem; }
  .dashboard-page-actions { gap: 8px; margin-top: 8px; }
  .dashboard-grid { gap: 12px; }
  .dashboard-grid .widget-body, .dashboard-grid .widget-item > .p-3 { padding: 14px !important; }
  .time-tracking-hero-card { text-align: left !important; }
  .time-tracking-hero-card .time-tracking-hero-timer { font-size: 2rem !important; }
  .time-tracking-hero-card form.row { display: grid; grid-template-columns: 1fr; margin: 0; gap: 10px; }
  .time-tracking-hero-card form.row > * { width: 100%; padding: 0; }
  .time-tracking-hero-card .input-group { min-width: 0; }
  .time-tracking-hero-card select, .time-tracking-hero-card input { min-width: 0; width: 100%; max-width: 100%; }
  .tracking-secondary { border-top: 1px solid var(--border); margin-top: 12px; }
  .tracking-secondary summary { font-weight: 600; color: var(--text-muted); }
  .tracking-secondary > .row { margin-top: 8px; }
}
@media (prefers-reduced-motion: reduce) {
  .mobile-sheet, .mobile-sheet-backdrop { transition: none; }
}
@media print {
  body.has-app-shell, body.has-app-shell .app, body.has-app-shell main.content { position: static; display: block; height: auto !important; overflow: visible !important; }
  .workspace-navigation, .module-filter-shortcut, .record-details-toggle { display: none !important; }
  .workspace-panel[data-workspace-hidden="true"], .workspace-empty-column { display: block !important; }
}
