/* PALETA OFICIAL DO DMO (decisão do Diogo, 17/10/2026; docs/ui-reference/paleta-oficial.md).
   As cinco cores abaixo são o template de cores de toda a app, incluindo o
   logo do login e os PDFs (Infrastructure/Pdf/DmoPdfPalette.cs). Cor nova na
   interface sai daqui; não se escrevem azuis soltos. Todas as outras cores azuis
   saem daqui: a escala --dmo-brand-* usa estas cinco e os tons mais escuros
   (texto) e mais claros (fundos) derivam da #44647c e da #afd1f2.
   Botões, cabeçalhos e linha selecionada: --dmo-palette-slate (branco 6,3:1).
   Hover das linhas: --dmo-palette-sky. Para mudar a paleta, muda-se só aqui. */
:root{--dmo-palette-sky:#afd1f2;--dmo-palette-mist:#92b4cc;--dmo-palette-steel:#6494b4;--dmo-palette-ocean:#4c7c9c;--dmo-palette-slate:#44647c}
:root{--dmo-brand-950:#1b2832;--dmo-brand-900:#253744;--dmo-brand-800:#334b5d;--dmo-brand-700:#3c586d;--dmo-brand-600:var(--dmo-palette-slate);--dmo-brand-500:var(--dmo-palette-ocean);--dmo-brand-400:var(--dmo-palette-steel);--dmo-brand-300:var(--dmo-palette-mist);--dmo-brand-200:var(--dmo-palette-sky);--dmo-brand-100:#d7e8f8;--dmo-brand-050:#e3eef8;--dmo-page:#e4ebf2;--dmo-card:#fff;--dmo-subtle:#edf3f8;--dmo-border:#cbd9e4;--dmo-text:var(--dmo-brand-950);--dmo-muted:#577389;--dmo-row-hover:var(--dmo-brand-200);--dmo-focus-ring:rgba(68,100,124,.18);--dmo-success:#527c72;--dmo-success-soft:#e5f0eb;--dmo-warning:#a97943;--dmo-warning-soft:#f7f0e7;--dmo-danger:#9a625d;--dmo-danger-soft:#f3e9e7;--dmo-disabled:#cbd5df;--dmo-r-control:8px;--dmo-r-card:12px;--dmo-r-modal:16px;--dmo-shadow:0 8px 24px rgba(27,40,50,.06);--dmo-fast:150ms ease}
/* Mais tons e modo escuro (Diogo, 21/10/2026: «está demasiado branco»).
   O fundo da página, as barras e os campos deixam de ser brancos; só os
   cartões ficam brancos, para se destacarem. As cores de estado e os fundos
   escuros (painel das máquinas, avisos flutuantes) também saem daqui:
   --dmo-deep-* fica escuro nos dois modos, as --dmo-brand-* escuras são cor
   de texto e clareiam no modo escuro. */
:root{--dmo-bar:#f0f5f9;--dmo-field:#f8fafc;--dmo-deep-700:#3c586d;--dmo-deep-800:#334b5d;--dmo-deep-900:#253744;--dmo-deep-950:#1b2832;--dmo-deep-text:#d7e8f8;--dmo-ok:#15803d;--dmo-ok-line:#9fd5b3;--dmo-ok-soft:#effaf3;--dmo-nok:#b91c1c;--dmo-nok-line:#efb1b1;--dmo-nok-soft:#fdf2f2;--dmo-amber:#8a5a00;--dmo-amber-line:#e3c58f;--dmo-amber-soft:#fdf8ec;--dmo-neutral:#94a3b8;--dmo-neutral-soft:#eef1f4}
/* Modo escuro: escolhido no botão do cabeçalho e guardado no browser
   (data-theme no <html>). Só no ecrã: a impressão sai sempre clara. */
@media screen{:root[data-theme="dark"]{color-scheme:dark;--dmo-page:#0f171d;--dmo-card:#18232c;--dmo-subtle:#1f2c36;--dmo-bar:#141e26;--dmo-field:#121b22;--dmo-border:#2e3f4c;--dmo-text:#e3ebf1;--dmo-muted:#9fb3c3;--dmo-brand-950:#e3ebf1;--dmo-brand-900:#d3e1ec;--dmo-brand-800:#c0d6e7;--dmo-brand-700:#afd1f2;--dmo-brand-600:#52809f;--dmo-palette-slate:#52809f;--dmo-brand-200:#2a4357;--dmo-brand-100:#243a4b;--dmo-brand-050:#1c2e3c;--dmo-row-hover:#2a4357;--dmo-focus-ring:rgba(175,209,242,.3);--dmo-success:#8cc7b4;--dmo-success-soft:#1b322c;--dmo-warning:#ddb07c;--dmo-warning-soft:#36291b;--dmo-danger:#e39d96;--dmo-danger-soft:#3a2523;--dmo-disabled:#3b4b58;--dmo-ok:#6fcf97;--dmo-ok-line:#2f6b4a;--dmo-ok-soft:#173226;--dmo-nok:#f19189;--dmo-nok-line:#7a3a35;--dmo-nok-soft:#3a1f1d;--dmo-amber:#e6b65c;--dmo-amber-line:#6b5223;--dmo-amber-soft:#33291a;--dmo-neutral:#7d8fa1;--dmo-neutral-soft:#222e38;--dmo-shadow:0 8px 24px rgba(0,0,0,.35);--dmo-machine-b2:#6fb08f;--dmo-machine-c1:#a98bd0;--dmo-machine-c2:#6a9cf0;--dmo-machine-c3:#d88080;--dmo-machine-b1:#7fa9c6}}
:root{--dmo-surface-page:var(--dmo-page);--dmo-surface-card:var(--dmo-card);--dmo-surface-subtle:var(--dmo-subtle);--dmo-text-muted:var(--dmo-muted);--dmo-text-on-color:#fff;--dmo-radius-control:var(--dmo-r-control);--dmo-radius-card:var(--dmo-r-card);--dmo-radius-modal:var(--dmo-r-modal);--dmo-radius-pill:999px;--dmo-control-height:40px;--dmo-control-height-compact:34px;--dmo-sidebar-width:276px;--dmo-header-height:76px;--dmo-tabs-height:52px;--dmo-shadow-card:var(--dmo-shadow);--dmo-shadow-menu:0 10px 24px rgba(27,40,50,.22);--dmo-shadow-modal:0 25px 70px rgba(27,40,50,.35);--dmo-transition-fast:var(--dmo-fast);--dmo-space-1:4px;--dmo-space-2:8px;--dmo-space-3:12px;--dmo-space-4:16px;--dmo-space-5:20px;--dmo-space-6:24px;--dmo-space-8:32px}
*{box-sizing:border-box}body{margin:0;background:var(--dmo-page);color:var(--dmo-text);font:14px/1.45 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}button,input,select,textarea{font:inherit}.dmo-pill{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:var(--dmo-brand-050);color:var(--dmo-brand-700);font-size:10px;font-weight:800}.dmo-pill.active{background:var(--dmo-success-soft);color:var(--dmo-success)}.dmo-pill.inactive{background:var(--dmo-neutral-soft);color:var(--dmo-muted)}.dmo-table-wrap{overflow:auto;border:1px solid var(--dmo-border);border-radius:9px}.dmo-table{width:100%;border-collapse:collapse;white-space:nowrap}.dmo-table th{background:var(--dmo-subtle);color:var(--dmo-muted);font-size:10px;text-transform:uppercase;text-align:left;padding:10px 12px}.dmo-table td{padding:11px 12px;border-top:1px solid var(--dmo-border)}.dmo-table tr[data-row]{cursor:pointer}.dmo-table tr[data-row]:hover{background:var(--dmo-page)}.dmo-table tr.selected{background:var(--dmo-border)}.dmo-modal-backdrop{display:none;position:fixed;z-index:80;inset:0;background:rgba(27,40,50,.68);padding:24px;align-items:center;justify-content:center}.dmo-modal-backdrop.open{display:flex}.dmo-modal{width:min(560px,100%);background:var(--dmo-card);border-radius:var(--dmo-r-modal);box-shadow:0 25px 70px rgba(27,40,50,.35)}.dmo-modal-head{display:flex;align-items:center;padding:18px 20px;border-bottom:1px solid var(--dmo-border)}.dmo-modal-head h2{margin:0;font-size:18px}.dmo-modal-body{padding:20px}.dmo-toast{position:fixed;right:22px;bottom:22px;z-index:100;background:var(--dmo-deep-950);color:var(--dmo-text-on-color);padding:11px 15px;border-radius:9px;box-shadow:var(--dmo-shadow);opacity:0;transform:translateY(50px);transition:.2s}.dmo-toast.show{opacity:1;transform:none}

/* Machine identity is independent of page, production and selection. */
:root{--dmo-machine-b1:var(--dmo-brand-600);--dmo-machine-b2:#3d7a5a;--dmo-machine-b3:var(--dmo-warning);--dmo-machine-c1:#7a5aa0;--dmo-machine-c2:#2563c7;--dmo-machine-c3:#b05555}
/* Canonical control sizing. Context wins over the base button size. */
.search > .btn,
.search > .dmo-button{
  min-height: var(--dmo-control-height);
}

@media(max-width:720px){.dmo-modal-backdrop{padding:12px}.dmo-table{min-width:760px}}

/* Canonical selectable lists */
[data-dmo-list] [data-dmo-row]{cursor:pointer;transition:background var(--dmo-fast),border-color var(--dmo-fast)}
/* O destaque fica dentro do cartão: cantos arredondados e barra fina à esquerda (Diogo, 17/10/2026). */
[data-dmo-list] [data-dmo-row]:hover{background:var(--dmo-row-hover);border-radius:var(--dmo-r-control);box-shadow:inset 3px 0 0 var(--dmo-brand-600)}
[data-dmo-list] [data-dmo-row]:focus-visible{outline:3px solid rgba(68,100,124,.2);outline-offset:1px}
[data-dmo-list] [data-dmo-row].selected{background:var(--dmo-brand-100);border-color:var(--dmo-brand-600);color:var(--dmo-brand-700)}
[data-dmo-list] [data-dmo-row].selected :is(h4,strong){color:inherit}

/* Canonical record states: shared by weight controls and comparisons */
.dmo-pill.pending{background:var(--dmo-brand-050);color:var(--dmo-brand-700)}
.dmo-pill.approved{background:var(--dmo-success-soft);color:var(--dmo-success)}
.dmo-pill.rejected{background:var(--dmo-danger-soft);color:var(--dmo-danger)}

/* Canonical interactive components. Pages control layout; this file controls appearance. */
html body :is(.dmo-button,.button,.btn){min-height:var(--dmo-control-height);padding:9px 14px;border:1px solid var(--button-color,var(--dmo-brand-600));border-radius:var(--dmo-r-control);background:var(--button-color,var(--dmo-brand-600));color:var(--dmo-text-on-color);font-size:13px;font-weight:800;line-height:1.2;cursor:pointer;text-decoration:none;transition:background var(--dmo-fast),color var(--dmo-fast),border-color var(--dmo-fast);display:inline-flex;align-items:center;justify-content:center;text-align:center;white-space:nowrap}
html body :is(.dmo-button,.button,.btn):hover,html body :is(.dmo-button,.button,.btn):focus-visible{background:var(--dmo-card);color:var(--button-color,var(--dmo-brand-600));outline:0}
html body :is(.dmo-button,.button,.btn):focus-visible{box-shadow:0 0 0 3px var(--dmo-focus-ring)}
html body :is(.dmo-button,.button,.btn):active:not(:disabled):not([aria-disabled="true"]){background:var(--button-press,var(--dmo-palette-steel));border-color:var(--button-press,var(--dmo-palette-steel));color:var(--dmo-text-on-color);box-shadow:none}
html body :is(.dmo-button,.button,.btn):is(.danger,.success){--button-press:color-mix(in srgb,var(--button-color) 70%,#fff)}
html body :is(.dmo-button,.button,.btn).danger{--button-color:var(--dmo-danger)}
html body :is(.dmo-button,.button,.btn).success{--button-color:var(--dmo-success)}
html body :is(.dmo-button,.button,.btn):disabled{--button-color:var(--dmo-disabled);background:var(--dmo-disabled);color:var(--dmo-text-on-color);cursor:not-allowed}
.dmo-primary-nav,.dmo-secondary-nav{display:flex;align-items:stretch;background:var(--dmo-bar);border-bottom:1px solid var(--dmo-border);overflow-x:auto}
.dmo-primary-nav{min-height:48px;gap:22px;padding:0 22px}
.dmo-secondary-nav{min-height:46px;gap:20px;padding:0 18px}
.dmo-primary-nav :is(a,button),.dmo-secondary-nav :is(a,button){display:inline-flex;align-items:center;min-width:max-content;padding:0 5px;border:0;border-bottom:3px solid transparent;background:none;color:var(--dmo-muted);font-size:13px;font-weight:800;text-decoration:none}
.dmo-primary-nav :is(a,button):hover,.dmo-primary-nav :is(a,button).active,.dmo-secondary-nav :is(a,button):hover,.dmo-secondary-nav :is(a,button).active{color:var(--dmo-brand-700);border-bottom-color:var(--dmo-brand-600)}
/* «Definições» sempre encostado à direita da barra do módulo (Diogo, 17/10/2026). */
.dmo-secondary-nav .dmo-tab-direita{margin-inline-start:auto}
@media(max-width:600px){.dmo-primary-nav,.dmo-secondary-nav{gap:14px;padding-inline:12px}.dmo-primary-nav :is(a,button),.dmo-secondary-nav :is(a,button){font-size:12px}}

/* Global readability pass: increase text sizing without changing page structure. */
body{font-size:16px}
.dmo-primary-nav :is(a,button),.dmo-secondary-nav :is(a,button){font-size:15px}

/* When both navigation levels are direct page rows, keep them stacked while scrolling. */
body > .dmo-primary-nav{position:sticky;top:0;z-index:46}
body > .dmo-primary-nav + .dmo-secondary-nav{position:sticky;top:48px;z-index:45}

/* Canonical page hierarchy; aliases keep older mockups aligned during migration. */
html body :is(.dmo-page-head,.page-head,.page-heading){display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:18px}
html body :is(.dmo-page-head,.page-head,.page-heading) :is(h1,h2){margin:0;color:var(--dmo-text);font-family:inherit;font-size:24px !important;font-weight:800 !important;line-height:1.2;letter-spacing:-.015em}
html body :is(.dmo-page-head,.page-head,.page-heading) p{margin:4px 0 0;color:var(--dmo-muted);font-family:inherit;font-size:12px !important;line-height:1.45}
html body :is(.dmo-page-head,.page-head,.page-heading) .eyebrow{display:block;margin-bottom:4px;color:var(--dmo-brand-600);font-size:10px;font-weight:800;letter-spacing:.06em;text-transform:uppercase}

/* Common header aliases. Each page may still own fixed/sticky positioning. */
html body :is(.dmo-app-header,.app-header,.header){min-height:var(--dmo-header-height);align-items:center;padding-block:10px;background:var(--dmo-bar);border-bottom:1px solid var(--dmo-border);font-family:inherit}
html body :is(.dmo-app-header__page,.brand-copy,.header .brand > div,.header .head,.app-header .brand) :is(h1,strong){margin:0;color:var(--dmo-text);font-family:inherit;font-size:18px !important;font-weight:800 !important;line-height:1.2}
html body :is(.dmo-app-header__page,.brand-copy,.header .brand > div,.header .head,.app-header .brand) :is(p,span){margin:3px 0 0;color:var(--dmo-muted);font-family:inherit;font-size:11px !important;line-height:1.3}
html body :is(.dmo-app-header__user,.user-block,.header .user){font-family:inherit}
@media(max-width:600px){html body :is(.dmo-page-head,.page-head,.page-heading){align-items:flex-start;flex-direction:column}html body :is(.dmo-page-head,.page-head,.page-heading) :is(h1,h2){font-size:21px}}

/* Shared cards and operational fields: one appearance authority. */
html body :is(.surface,.dmo-card,.beta-bq-layout .card){min-width:0;border:1px solid var(--dmo-border);border-radius:var(--dmo-r-card);background:var(--dmo-card);box-shadow:var(--dmo-shadow)}
html body :is(.dmo-card,.beta-bq-layout .card) h3{margin:0;font-size:17px;line-height:1.3}
html body :is(.dmo-card,.beta-bq-layout .card) .card-note{margin:4px 0 14px;color:var(--dmo-muted);font-size:12px;line-height:1.45}
html body :is(.dmo-card,.beta-bq-layout .card)>p{color:var(--dmo-muted);font-size:12px;line-height:1.45}
/* The same field treatment for native forms, filters and tool pickers. */
html body .dmo-field{min-width:0}
html body .dmo-field label{display:block;margin:0 0 6px;color:var(--dmo-muted);font-size:12px;font-weight:750}
html body :is(.dmo-field input:not([type=radio]):not([type=checkbox]),.dmo-field select,.dmo-field textarea,.beta-light-fields input,.beta-light-fields select,.beta-light-tool-view input,.beta-light-tool-view select,.dmo-search-form input[type="search"]){box-sizing:border-box;min-width:0;min-height:var(--dmo-control-height);padding:9px 11px;border:1px solid var(--dmo-border);border-radius:var(--dmo-r-control);background:var(--dmo-field);color:var(--dmo-text);font-family:inherit;font-size:14px;line-height:1.2}
html body :is(.dmo-field input:not([type=radio]):not([type=checkbox]),.dmo-field select,.dmo-field textarea,.beta-light-fields input,.beta-light-fields select,.beta-light-tool-view input,.beta-light-tool-view select,.dmo-search-form input[type="search"]):focus{border-color:var(--dmo-brand-600);outline:none;box-shadow:0 0 0 3px rgba(68,100,124,.13)}
html body :is(.dmo-field input,.dmo-field select,.dmo-field textarea):disabled{background:var(--dmo-subtle);color:var(--dmo-muted);cursor:not-allowed}

html body :is(.dmo-field input:not([type=radio]):not([type=checkbox]),.dmo-field select,.dmo-field textarea,.beta-light-fields input,.beta-light-fields select,.beta-light-tool-view input,.beta-light-tool-view select){width:100%}
html body .dmo-search-form input[type="search"]{width:auto;flex:1 1 180px}
html body :is(.dmo-field select,.beta-light-fields select,.beta-light-tool-view select){height:var(--dmo-control-height)}
/* Dense matrices keep every machine visible; long facts wrap inside a cell. */
.dmo-table.dmo-matrix{table-layout:fixed;white-space:normal}
.dmo-matrix th:first-child{width:84px}
.dmo-matrix td:first-child{overflow-wrap:normal}
.dmo-matrix .dmo-matrix-weekday{font-size:11px}
.dmo-matrix td{vertical-align:top;font-size:12px;line-height:1.4;overflow-wrap:anywhere}
.dmo-matrix [data-dmo-row]{min-width:0;padding:6px;border-radius:6px;overflow-wrap:anywhere}
.dmo-matrix [data-dmo-row]+[data-dmo-row]{margin-top:6px}
/* Editar no próprio valor (Diogo, 17/10/2026: «para editar, clica-se no valor da linha e muda-se ali mesmo»): o valor parece texto; a borda aparece ao passar o rato e ao editar. Grava ao sair do campo (0_ASSET_CANONICAL_INTERACTIONS.js, [data-dmo-valor]). */
input.dmo-valor{width:100%;min-width:64px;height:auto;min-height:0;margin:0;padding:5px 8px;border:1px solid transparent;border-radius:6px;background:transparent;box-shadow:none;color:var(--dmo-text);font:inherit;transition:border-color var(--dmo-fast),background-color var(--dmo-fast)}
input.dmo-valor::placeholder{color:var(--dmo-muted)}
input.dmo-valor:hover{border-color:var(--dmo-border);cursor:text}
input.dmo-valor:focus{border-color:var(--dmo-brand-400);background:var(--dmo-card);outline:none;box-shadow:0 0 0 3px var(--dmo-focus-ring)}
input.dmo-valor.dmo-valor-gravado{background:var(--dmo-brand-050)}
input.dmo-valor[aria-invalid=true]{border-color:var(--dmo-warning)}
/* Aviso amarelo discreto quando falta um dado que devia existir (Diogo, 17/10/2026), por exemplo o total do lote de uma máquina. */
.dmo-aviso-discreto{display:inline-block;margin:6px 0 0;padding:6px 10px;border-left:3px solid var(--dmo-warning);background:var(--dmo-warning-soft);border-radius:6px;color:var(--dmo-text);font-size:12.5px}
.dmo-aviso-discreto:empty{display:none}
/* A escolha «Sem Job On» / «Associar Job On» no cartão do registo (Diogo, 17/10/2026): botões normais, com o tamanho que vem só da letra e do padding da casa (sem larguras fixas). O que não está escolhido fica branco com contorno e, como qualquer botão, inverte a cor ao passar o rato. */
.dmo-modo{display:inline-flex;position:relative}
/* O tipo de registo num dropdown (21/10/2026): abre para a esquerda e o escolhido fica a negrito. */
html body .dmo-modo .dmo-options-list{left:auto;right:0}
html body .dmo-modo .dmo-options-item[aria-current="page"]{font-weight:700;color:var(--dmo-brand-700)}
.dmo-modo-head{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px}
.dmo-modo-head h3{margin:0}
/* Cabeçalho de card com ações no canto superior direito (regra do Diogo, 18/10) */
/* «Metem os botões em baixo aumenta espaço, sempre canto superior direito dentro dos cards»: o título do card à esquerda e os botões dele (Guardar, Opções…) na mesma linha, à direita, com o tamanho que vem só da letra e do padding do botão. Num card que abre e fecha, o <summary> é a linha do título (o ▸/▾ vai antes do título); como nada interativo vai dentro do <summary>, o card leva .dmo-card-dobravel e as ações (.dmo-card-topo-acoes) vêm a seguir ao <details>, sobre a linha do título, à direita: clicar nelas não abre nem fecha o card. */
.dmo-card-topo{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--dmo-space-3)}
/* Na linha do título o espaço vem do gap: o título não leva margem (nem a do título com dica, dmo-normalize.css). */
.dmo-card-topo>:is(h2,h3,h4){margin:0 !important}
.dmo-card-topo-acoes{display:flex;flex-wrap:wrap;align-items:center;gap:var(--dmo-space-3);margin-left:auto}
/* No telemóvel os botões da casa ocupam a largura toda (0_ASSET_SHELL.css); no canto do card ficam do tamanho do texto. */
.dmo-card-topo-acoes :is(.dmo-button,.button,.btn){width:auto}
summary.dmo-card-topo{cursor:pointer;list-style:none}
summary.dmo-card-topo::-webkit-details-marker{display:none}
/* Triângulo de recolher (só para isto): estreito, antes do título aponta para ele; aberto aponta para baixo. */
summary.dmo-card-topo>:first-child::before{content:"";display:inline-block;padding:4.5px 3px;margin-right:.45em;vertical-align:.08em;background:currentColor;clip-path:polygon(0 0,100% 50%,0 100%);transition:transform var(--dmo-fast)}
details[open]>summary.dmo-card-topo>:first-child::before{transform:rotate(90deg)}
.dmo-card-dobravel{display:grid}
.dmo-card-dobravel>:is(details,.dmo-card-topo-acoes){grid-area:1/1;min-width:0}
.dmo-card-dobravel>.dmo-card-topo-acoes{align-self:start;justify-self:end}
.dmo-card-dobravel>details>summary.dmo-card-topo{min-height:var(--dmo-control-height)}
/* Um clique ou uma gravação à espera do servidor (aria-busy no data-dmo-troca):
   uma barra fina no topo, fixa (não mexe no layout), ao fim de 150 ms para não
   piscar nas respostas rápidas. Lentidão, 22/10/2026: o clique nunca parece ignorado. */
[data-dmo-troca][aria-busy="true"]{cursor:progress}
[data-dmo-troca][aria-busy="true"]::before{content:"";position:fixed;inset:0 0 auto 0;block-size:3px;z-index:9999;pointer-events:none;background:linear-gradient(90deg,transparent,var(--dmo-brand-600),transparent);background-size:40% 100%;background-repeat:no-repeat;opacity:0;animation:dmo-ocupado-entra 1ms linear 150ms forwards,dmo-ocupado-anda 1.1s ease-in-out 150ms infinite}
@keyframes dmo-ocupado-entra{to{opacity:1}}
@keyframes dmo-ocupado-anda{from{background-position:-40% 0}to{background-position:140% 0}}
@media (prefers-reduced-motion:reduce){[data-dmo-troca][aria-busy="true"]::before{animation:dmo-ocupado-entra 1ms linear 150ms forwards;background:var(--dmo-brand-600)}}
