/* Customer tools and design content only; development chrome remains native. See lode/ui/platform-theme.md.
   Screen chrome only: documents, machining colours and renderer geometry stay local. */
@font-face{font-family:"Amosys Customer Inter";src:url('/fonts/inter-latin-wght-normal.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@media screen {
:is(html[data-amosys-theme="standard"],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) {
  --amosys-font:"Amosys Customer Inter",Inter,"Segoe UI",Arial,sans-serif;
  --amosys-brand:#174f3d;--amosys-brand-hover:#103d2e;--amosys-selected:#edf3f0;
  --amosys-ink:#222b32;--amosys-muted:#65717b;--amosys-page:#f5f6f7;
  --amosys-panel:#fff;--amosys-border:#d3d9de;--amosys-control-border:#cbd3d9;
  --amosys-focus:#627e93;--amosys-control-radius:2px;--amosys-card-radius:4px;
  --ink:var(--amosys-ink);--ink-soft:var(--amosys-muted);--muted:var(--amosys-muted);
  --navy:var(--amosys-brand);--teal:var(--amosys-brand);--teal-soft:var(--amosys-selected);
  --line:var(--amosys-border);--surface:var(--amosys-panel);--canvas:var(--amosys-page);
  --page-bg:var(--amosys-page);--panel-bg:#fff;--field-bg:#fff;
  --text-primary:var(--amosys-ink);--text-secondary:var(--amosys-muted);
  --border-panel:var(--amosys-border);--border-control:var(--amosys-control-border);
  --topbar-height:56px;
  font-family:var(--amosys-font);color:var(--amosys-ink);background:var(--amosys-page);
}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(body,button,input,select,textarea,table,dialog,h1,h2,h3,h4,label,summary){font-family:var(--amosys-font)!important}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) body{background:var(--amosys-page);color:var(--amosys-ink)}
html[data-amosys-surface=platform] body{font-size:14px}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(button,input,select,textarea){border-radius:var(--amosys-control-radius)!important}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :where(button){min-height:44px;padding:8px 14px;border:1px solid var(--amosys-control-border);background:#fff;color:var(--amosys-ink);font-size:14px;font-weight:550;line-height:1.35;cursor:pointer}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :where(button):hover:not(:disabled){border-color:var(--amosys-brand);background:var(--amosys-selected)}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(input[type=checkbox],input[type=radio],input[type=range]){accent-color:var(--amosys-brand)}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(button,a,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--amosys-focus)!important;outline-offset:3px}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(button,input,select,textarea):disabled{opacity:.55;cursor:not-allowed}
/* A calm identity strip above light navigation and white working ribbons. */
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .sidebar{background:#fafbfc;color:var(--amosys-ink);border-right:1px solid var(--amosys-border);padding-top:0}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .sidebar .brand{min-height:56px;margin:0 -12px 16px;padding:8px 20px;background:var(--amosys-brand);color:#fff;gap:12px;box-sizing:border-box}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .sidebar .brand :is(.brand-mark,.mark){width:32px;height:32px;color:#fff;border:1px solid #ffffff80;border-radius:2px;background:transparent;font-size:18px}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .sidebar .brand strong{font-size:14px;letter-spacing:.08em;font-weight:650}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .sidebar .brand small{color:#e0eae5;font-size:10px}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .sidebar :is(.nav-item,nav>a,.nav-folder,.nav-folder>summary,.back){color:var(--amosys-muted);font-size:13px;font-weight:500;border-radius:4px}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .sidebar :is(.nav-item,nav>a,.nav-folder>summary){min-height:44px}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .sidebar :is(.nav-item,nav>a,.nav-folder>summary):hover{background:var(--amosys-selected);color:var(--amosys-brand)}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .sidebar :is(.nav-item.active,nav>a.active,nav>a[aria-current=page]){background:var(--amosys-selected)!important;color:var(--amosys-brand);box-shadow:inset 3px 0 var(--amosys-brand);font-weight:600}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .sidebar .nav-folder>summary{color:var(--amosys-ink);font-weight:600}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .sidebar :is(.nav-folder>summary small,.nav-label){color:var(--amosys-muted)}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .sidebar .nav-folder-items{border-color:var(--amosys-border)}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .sidebar #primary-navigation>a[href="#overview"]{background:#fafbfc}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .sidebar :is(.environment-card,.identity){background:#fff;border:1px solid var(--amosys-border);border-radius:4px;color:var(--amosys-ink);box-shadow:none}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .sidebar :is(.environment-card small,.identity small){color:var(--amosys-muted)}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.app-shell,.workspace)>main>.topbar,
html[data-amosys-surface=users] body>header{background:var(--amosys-brand);color:white;min-height:56px;height:56px;border:0;box-shadow:none;backdrop-filter:none;padding-block:4px}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.app-shell,.workspace)>main>.topbar :is(h1,.eyebrow,.topbar-actions>span){color:white}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.app-shell,.workspace)>main>.topbar h1{font-size:20px;font-weight:650;line-height:1.3;margin:0}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.app-shell,.workspace)>main>.topbar .eyebrow{font-size:9px;letter-spacing:.08em;opacity:.8}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .topbar :is(#platform-logout,#sign-out){color:white;background:transparent;border:1px solid #ffffff80;min-height:36px;padding:6px 12px}
/* Reusable actions; dense tables and drawing toolbars retain their sizing. */
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.primary-button,.secondary-button,.btn,.primary,.secondary,.amosys-ribbon-button,.amorini-page-button,.cc-icon-button,.welcome-signin,.hero-cta){font-size:14px;font-weight:550;line-height:1.35;min-height:44px;border-radius:2px!important;box-shadow:none;align-items:center}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.primary-button:not(.secondary),button.primary,a.primary,.btn-primary,.btn.primary,.amosys-ribbon-button--primary,.amorini-page-button--primary,.cc-new-button,.welcome-signin,.hero-cta,.cp-editor-actions button){background:var(--amosys-brand)!important;color:#fff!important;border-color:var(--amosys-brand)!important;box-shadow:none}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.primary-button:not(.secondary),button.primary,a.primary,.btn-primary,.btn.primary,.amosys-ribbon-button--primary,.amorini-page-button--primary,.cc-new-button,.welcome-signin,.hero-cta,.cp-editor-actions button):hover:not(:disabled){background:var(--amosys-brand-hover)!important;border-color:var(--amosys-brand-hover)!important;transform:none}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.secondary-button,button.secondary,.primary-button.secondary,.btn.secondary){color:var(--amosys-ink)!important;background:white!important;border:1px solid var(--amosys-control-border);box-shadow:none}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.field,.form-grid,.di-filters,.cc-directory-controls,.library-filters) :is(input:not([type=checkbox]):not([type=radio]):not([type=range]):not([type=color]),select){min-height:44px;font-size:14px;background:white;color:var(--amosys-ink);border:1px solid var(--amosys-control-border);padding:8px 12px}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.cc-ribbon,.library-ribbon,.asset-command-ribbon,.cabinet-build-toolbar,.amosys-action-ribbon){background:white;color:var(--amosys-ink);border:1px solid var(--amosys-border);border-radius:4px;box-shadow:none}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.asset-command-ribbon,.cabinet-build-toolbar) :is(h2,h3,strong,small,label,span){color:var(--amosys-ink)}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .asset-command-ribbon .asset-mode-tabs button{background:white;color:var(--amosys-muted);border-color:var(--amosys-control-border)}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .asset-command-ribbon .asset-mode-tabs button.active{background:var(--amosys-selected);color:var(--amosys-brand);border-color:var(--amosys-brand)}
/* Panel hierarchy and choice cards use the same precise edges as BTD. */
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.panel,.module-card,.module-hero,.workspace-welcome,.workspace-tile,.cp-card,.di-job,.work-centre-card,.table-wrap,.customer-tool-frame,.creative-card,.form-card){border-radius:4px;box-shadow:none;border-color:var(--amosys-border)}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.workspace-tile,.module-card){color:var(--amosys-ink);transition:border-color .15s,background-color .15s}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.workspace-tile,.module-card):hover{background:#f7faf8;border-color:var(--amosys-brand);box-shadow:none;transform:none}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.workspace-symbol,.module-icon,.large-module-icon,.workspace-count){background:var(--amosys-selected);color:var(--amosys-brand);border-radius:4px}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.workspace-open,.module-footer strong){color:var(--amosys-brand)}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.workspace-welcome,.workspace-tile,.module-card) :is(p,.eyebrow){color:var(--amosys-muted)}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .workspace-welcome h2{font-size:28px;font-weight:650}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .workspace-tile h4{font-size:16px;font-weight:600}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.hero-panel,.viewer-entry,.rules-entry,.cabinet-build-hero){background:var(--amosys-brand);border-radius:4px;box-shadow:none}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .hero-metric strong{color:#fff}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) dialog{border:1px solid var(--amosys-border);border-radius:4px;box-shadow:0 20px 60px rgb(25 35 43 / 20%);color:var(--amosys-ink);background:white}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) dialog::backdrop{background:rgb(27 36 43 / 36%)}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) dialog :is(.dialog-header,.modal-header){background:white;color:var(--amosys-ink);border-bottom:1px solid var(--amosys-border)}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(th,thead){background:#f5f6f7;color:var(--amosys-muted)}
/* Embedded tool documents receive this stylesheet through the gateway. */
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.amorini-identity-ribbon,.tenant-brandbar){background:var(--btd-identity-bg,var(--amosys-brand));color:var(--btd-identity-text,#fff);border-bottom:0;min-height:56px;box-shadow:none}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .amorini-identity-ribbon :is(.amorini-identity-ribbon__company,.amorini-identity-ribbon__tool){color:inherit;font-weight:600}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .amosys-action-ribbon{--amosys-carbon:#fff;--amosys-ribbon-muted:var(--amosys-muted);--amosys-ribbon-border:var(--amosys-control-border);background:#fff;color:var(--amosys-ink)}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .amosys-action-ribbon .amosys-ribbon-button:not(.amosys-ribbon-button--primary){background:white;color:var(--amosys-ink);border-color:var(--amosys-control-border)}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .amosys-action-ribbon .amosys-ribbon-button:is(.active,[aria-current=page]){background:var(--amosys-selected);color:var(--amosys-brand);border-color:var(--amosys-brand)}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.welcome-story){background:var(--amosys-brand)}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .welcome-mark{color:white;border-color:#ffffff80;border-radius:2px}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .welcome-access{background:var(--amosys-page)}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .welcome-eyebrow{color:var(--amosys-brand)}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .welcome-story .welcome-eyebrow{color:#e0eae5}
/* Portal tokens live on its React root rather than on :root. */
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) [data-theme=amorini-light]{
  --t-brand-identity:var(--amosys-brand);--t-brand-carbon:var(--amosys-ink);--t-brand-keyline:var(--amosys-border);
  --t-page:var(--amosys-page);--t-surface:#fff;--t-surface-soft:var(--amosys-selected);
  --t-line:var(--amosys-border);--t-line-strong:var(--amosys-control-border);
  --t-ink:var(--amosys-ink);--t-text:var(--amosys-ink);--t-text-soft:var(--amosys-muted);
  --t-primary:var(--amosys-brand);--t-primary-hover:var(--amosys-brand-hover);--t-on-primary:#fff;
  --t-accent:var(--amosys-brand);--t-accent-ink:var(--amosys-brand);--t-accent-tint:var(--amosys-selected);--t-focus:var(--amosys-focus);
  --t-font-display:var(--amosys-font);--t-font-body:var(--amosys-font);--t-font-action:var(--amosys-font);
  --t-radius-lg:4px;--t-radius-md:4px;--t-radius-sm:2px;--t-shadow-panel:none;
}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .dashboard .db-topbar{background:var(--amosys-brand);color:#fff;border-bottom:0;min-height:56px}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .dashboard .db-topbar :is(.db-application-name,.db-brand,.db-company-name){color:white}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.at-workspace,.ad-inspector){background:var(--amosys-page);color:var(--amosys-ink);font-family:var(--amosys-font)}
/* The CAD editor owns its midnight header and blue tool states in DesignerAppearance.css. */
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .di-editor header{background:var(--amosys-brand)}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .at-toolbar{background:#fff;border-color:var(--amosys-border)}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .at-toolbar a{color:var(--amosys-brand)}
:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .ot-configurator{--ot-accent:var(--amosys-brand);--ot-line:var(--amosys-border);font-family:var(--amosys-font)}
html[data-amosys-surface=users] body>header .brand{color:white}
@media(max-width:600px){
  :is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .sidebar .brand{margin:-18px -18px 12px;padding:12px 18px}
  :is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.app-shell,.workspace)>main>.topbar{flex-wrap:wrap;gap:10px}
  :is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.app-shell,.workspace)>main>.topbar,html[data-amosys-surface=users] body>header{height:auto;min-height:56px}
  :is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) .workspace-welcome h2{font-size:24px}
}
@media(prefers-reduced-motion:reduce){:is(html[data-amosys-theme],.design-it-workspace,.design-intelligence-workspace,.customer-tool-workspace) :is(.workspace-tile,.module-card){transition:none}}
}

/* AMOSYS_SCREEN_FIT_START */
/* Universal AMOSYS viewport contract. No typography, zoom or drawing transforms.
   Keep this layer after application CSS in every authored entry document. */
@media screen {
  html { max-width: 100%; }
  body { min-width: 0 !important; }
  body > main, #root, #app, .shell, .workspace, .layout, .panel,
  .form-grid > *, .fields > *, .two-column > *, .decor-images > * {
    min-width: 0;
  }
  body > main { max-width: none; }
  .scroll, .table-wrap, .table-scroll, .register-scroll, .exact-ribbon-scroll {
    min-width: 0; max-width: 100%; overflow-x: auto;
  }
  dialog { box-sizing: border-box; min-width: 0; max-width: calc(100vw - 24px); max-height: calc(100dvh - 24px); overflow: auto; }
  .dialog-body, .dialog-content, .modal-body, .modal-content { min-width: 0; min-height: 0; }
  .actions, .actions > div, .heading, .page-heading, .panel-heading,
  .register-heading, .dialog-heading, .cutout-heading, .cutout-actions,
  .decor-filter-row, .decor-selection-row { flex-wrap: wrap; }
  .fields input, .fields select, .filters input, .filters select { max-width: 100%; }
  .panel pre, .dialog-body pre { white-space: pre-wrap; overflow-wrap: anywhere; }

  /* Company Control owns a standalone document, not the main AMOSYS shell. */
  body:has(> aside):has(#company-name) {
    --fit-nav: clamp(165px, 13vw, 210px);
    display: grid; grid-template-columns: var(--fit-nav) minmax(0, 1fr);
    grid-template-rows: auto minmax(0, 1fr); height: 100dvh;
  }
  body:has(> aside):has(#company-name) > header {
    position: static; grid-column: 1 / -1; height: auto; min-height: 64px;
    padding: 10px 16px; grid-template-columns: calc(var(--fit-nav) - 16px) minmax(0, 1fr) auto;
  }
  body:has(> aside):has(#company-name) > header > span { margin-left: 12px; flex-wrap: wrap; }
  body:has(> aside):has(#company-name) > aside {
    position: static; width: auto; min-height: 0; padding: 12px; overflow: auto;
  }
  body:has(> aside):has(#company-name) > main {
    position: static; min-height: 0; overflow: auto; padding: 0 clamp(12px, 1.2vw, 24px) 12px;
  }
  body:has(> aside):has(#company-name) #content { min-width: 0; }
  body:has(> aside):has(#company-name) .inventory-controls {
    flex-wrap: wrap; overflow: visible; gap: 10px 16px;
  }
  body:has(> aside):has(#company-name) .inventory-controls .filters,
  body:has(> aside):has(#company-name) .inventory-controls .held-rule {
    flex-wrap: wrap; flex: 1 1 auto; min-width: 0;
  }
  body:has(> aside):has(#company-name) .inventory { width: 100%; max-width: none; }
  body:has(> aside):has(#company-name) .mode-tiers { width: 100%; }
  body:has(> aside):has(#company-name) .panel .scroll:has(.mode-tiers) { max-width: 100%; }
  body:has(> aside):has(#company-name) #content:has(.account-editor) { display: flex; flex-direction: column; }
  body:has(> aside):has(#company-name) .account-editor { flex: 1; min-height: min(320px, 50dvh); height: auto; width: 100%; }
  body:has(> aside):has(#company-name) #decor-editor .scroll { overflow: auto; }
  body:has(> aside):has(#company-name) .costing-breakdown { max-width: 100%; overflow: auto; }
  body:has(> aside):has(#company-name) .decor-layout, body:has(> aside):has(#company-name) .cutout-layout { min-width: 0; }
  body:has(> aside):has(#company-name) .fields .check-decor { min-width: min(300px, 100%); }
  body:has(> aside):has(#company-name) .fields label { min-width: min(180px, 100%); }

  /* User/access, campaign and portal management headers must reflow too. */
  body > header:has(nav) { flex-wrap: wrap; }
  body > header > nav { flex-wrap: wrap; }
  .platform-header, .brand-ribbon { min-width: 0; }
  .workspace, .users-main { overflow-wrap: anywhere; }
  .savebar { flex-wrap: wrap; gap: 10px; }
  .asset-workspace-shell, .template-viewer-shell { width: 100%; height: 100dvh; min-width: 0; }
  .asset-command-ribbon, .asset-sub-ribbon, .asset-ribbon-actions, .template-command-ribbon { flex-wrap: wrap; }
  .asset-workspace-shell { grid-template-rows: auto auto minmax(0, 1fr); }
  .asset-cabinet-picker { min-width: 0; grid-template-columns: auto minmax(0, 1fr); }
  .template-lookup, .asset-workspace-grid > * { min-width: 0; }
  .modules { grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr)); }

  @media (max-height: 720px) {
    body:has(> aside):has(#company-name) #content:has(.inventory) { overflow: auto; }
    body:has(> aside):has(#company-name) #content > .scroll { flex: 1 0 auto; min-height: 160px; max-height: 55dvh; }
    body:has(> aside):has(#company-name) .ribbon { padding-block: 8px; }
  }
  @media (max-width: 1000px) {
    body:has(> aside):has(#company-name) .decor-layout, body:has(> aside):has(#company-name) .cutout-layout { grid-template-columns: minmax(0, 1fr); }
    body:has(> aside):has(#company-name) .decor-images { grid-template-columns: minmax(0, 1fr); }
    body:has(> aside):has(#company-name) .cutout-filter-row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .heading, .page-heading { align-items: flex-start; }
  }
  @media (max-width: 600px) {
    .asset-workspace-grid:not(.bot-view-active) { grid-template-columns: minmax(0, 1fr); overflow: auto; }
    .asset-workspace-grid .asset-viewer-panel { min-height: 40dvh; }
    .asset-workspace-grid .dxf-inspection-sidebar { min-height: 220px; }
    .asset-command-ribbon { max-height: 35dvh; overflow: auto; }
    .template-command-ribbon { max-height: 40dvh; overflow: auto; }
    body:has(> aside):has(#company-name) { grid-template-columns: minmax(0, 1fr); grid-template-rows: auto auto minmax(0, 1fr); }
    body:has(> aside):has(#company-name) > header { grid-template-columns: minmax(0, 1fr) auto; gap: 8px; }
    body:has(> aside):has(#company-name) > header > div { grid-column: 1; grid-row: 2; }
    body:has(> aside):has(#company-name) > header > span { grid-column: 2; grid-row: 1 / 3; }
    body:has(> aside):has(#company-name) > aside { max-height: 24dvh; }
    body:has(> aside):has(#company-name) > aside nav { display: flex; gap: 6px; flex-wrap: wrap; }
    body:has(> aside):has(#company-name) > aside nav button { width: auto; }
    body:has(> aside):has(#company-name) > aside nav h3 { flex-basis: 100%; }
    body:has(> aside):has(#company-name) #content:has(.inventory) { overflow: auto; }
    body:has(> aside):has(#company-name) #content > .scroll { flex: 1 0 auto; min-height: 180px; max-height: 55dvh; }
    body:has(> aside):has(#company-name) .cutout-filter-row, body:has(> aside):has(#company-name) .cutout-fields { grid-template-columns: minmax(0, 1fr); }
    body:has(> aside):has(#company-name) .cutout-file { grid-template-columns: minmax(0, 1fr) auto; }
    body:has(> aside):has(#company-name) .decor-filter-row label { width: 100%; min-width: 0; flex: 1 1 100%; }
    .form-grid, .legacy-facts, .legacy-source { grid-template-columns: minmax(0, 1fr); }
    .brand-ribbon { height: auto; min-height: 64px; grid-template-columns: minmax(0, 1fr) auto; gap: 8px; padding: 10px 12px; }
    .brand-ribbon .brand-title { grid-column: 1; grid-row: 2; }
    .brand-ribbon .company { display: none; }
  }
}

/* AMOSYS_SCREEN_FIT_END */