/* PAINEL UI 2.1 — fonte executável compartilhada; namespace ui-*; mobile first. */
html{font-size:20px;scrollbar-gutter:stable}
:root{
 --ui-font:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
 --ui-font-small:.70rem;--ui-font-medium:.85rem;--ui-font-large:1rem;--ui-main-card-number:1.5rem;
 --ui-fs-13:var(--ui-font-small);--ui-fs-14:var(--ui-font-small);--ui-fs-15:var(--ui-font-medium);--ui-fs-16:var(--ui-font-medium);--ui-fs-17:var(--ui-font-large);--ui-fs-18:var(--ui-font-large);--ui-fs-20:var(--ui-font-large);--ui-fs-24:var(--ui-font-large);--ui-fs-30:var(--ui-font-large);
 --ui-weight-weak:300;--ui-weight-medium:400;--ui-weight-strong:500;--ui-weight-title:600;
 /* Seis níveis oficiais de superfície; o nível 1 é o fundo externo. */
 --ui-surface-root:#071522;--ui-surface-deep:#0D2234;--ui-surface-panel:#0E2437;--ui-surface-header:#16334D;--ui-surface-card:#1D4262;--ui-surface-raised:#245177;--ui-surface-highlight:#2B6090;
 --ui-level-1:var(--ui-surface-root);--ui-level-2:var(--ui-surface-panel);--ui-level-3:var(--ui-surface-header);--ui-level-4:var(--ui-surface-card);--ui-level-5:var(--ui-surface-raised);--ui-level-6:var(--ui-surface-highlight);
 --ui-tone-faded:#6F91B0;--ui-tone-medium:#B2CAEA;--ui-tone-strong:#FFFFFF;--ui-on-color-strong:#FFFFFF;--ui-on-color-medium:color-mix(in srgb,var(--ui-on-color-strong) 68%,transparent);
 --ui-text:var(--ui-tone-strong);--ui-text-soft:var(--ui-tone-medium);--ui-text-muted:var(--ui-tone-faded);--ui-placeholder:var(--ui-tone-medium);
 --ui-icon-faded:var(--ui-tone-faded);--ui-icon-medium:var(--ui-tone-medium);--ui-icon-strong:var(--ui-tone-strong);
 --ui-stroke-faded:var(--ui-tone-faded);--ui-stroke-medium:var(--ui-tone-medium);--ui-stroke-strong:var(--ui-tone-strong);
 --ui-line:#182C40;--ui-line-strong:#1E3550;--ui-line-hover:#294761;--ui-focus:var(--ui-blue-readable);
 /* Paleta oficial. 700=escuro; 550=intermediário escuro; 500=base; 300/readable=claro para texto, linha, contorno e ícone. */
--ui-red-700:#7B1E17;--ui-red-550:#8C271F;--ui-red-500:#CA382C;--ui-red-300:#F0786E;--ui-red-readable:var(--ui-red-300);
--ui-orange-700:#7A340D;--ui-orange-550:#8D4110;--ui-orange-500:#C85C17;--ui-orange-300:#EF8645;--ui-orange-readable:var(--ui-orange-300);
--ui-amber-700:#7D4B0C;--ui-amber-550:#8D5515;--ui-amber-500:#CE7C1F;--ui-amber-300:#EAAA48;--ui-amber-readable:var(--ui-amber-300);
--ui-green-700:#03471F;--ui-green-550:#035324;--ui-green-500:#057734;--ui-green-300:#27B95E;--ui-green-readable:var(--ui-green-300);
--ui-cyan-700:#025066;--ui-cyan-550:#005F75;--ui-cyan-500:#007D9A;--ui-cyan-300:#39B8D3;--ui-cyan-readable:var(--ui-cyan-300);
 --ui-blue-700:#163B6A;--ui-blue-550:#0B4587;--ui-blue-500:#0F5FBA;--ui-blue-300:#3EACFF;--ui-blue-readable:var(--ui-blue-300);
 /* Paleta meteorológica oficial, extraída das referências visuais do programa Clima. */
 --ui-weather-blue-detail:#0B4FA8;--ui-weather-blue-mid:#083F8F;--ui-weather-blue-deep:#062F70;
 --ui-weather-blue-main:var(--ui-blue-500);--ui-weather-surface:var(--ui-surface-header);--ui-weather-yellow:#F3C85D;
--ui-purple-700:#362254;--ui-purple-550:#3F2C62;--ui-purple-500:#5F4394;--ui-purple-300:#B18BE6;--ui-purple-readable:var(--ui-purple-300);
--ui-pink-700:#7B2342;--ui-pink-550:#8C2C4C;--ui-pink-500:#C4456F;--ui-pink-300:#EA7DA3;--ui-pink-readable:var(--ui-pink-300);
--ui-slate-700:#26353C;--ui-slate-550:#2F3E44;--ui-slate-500:#455A64;--ui-slate-300:#88AAB5;--ui-slate-readable:var(--ui-slate-300);
 /* Ordem oficial das séries: azul, ciano, verde, laranja, vermelho, rosa, roxo e ardósia. */
 --ui-chart-color-1:var(--ui-blue-readable);--ui-chart-color-2:var(--ui-cyan-readable);--ui-chart-color-3:var(--ui-green-readable);--ui-chart-color-4:var(--ui-orange-readable);--ui-chart-color-5:var(--ui-red-readable);--ui-chart-color-6:var(--ui-pink-readable);--ui-chart-color-7:var(--ui-purple-readable);--ui-chart-color-8:var(--ui-slate-readable);
 --ui-accent:var(--ui-orange-500);--ui-accent-readable:var(--ui-orange-readable);--ui-info:var(--ui-blue-500);--ui-success:var(--ui-green-500);--ui-warning:var(--ui-orange-500);--ui-danger:var(--ui-red-500);--ui-notification:#E53935;
 --ui-space-short:6px;--ui-space-medium:12px;--ui-space-long:18px;--ui-panel-content-padding:var(--ui-space-short);
 --ui-gap-short:6px;--ui-gap-medium:12px;--ui-gap-long:18px;
 --ui-radius-base:6px;--ui-radius-short:var(--ui-radius-base);--ui-radius-medium:calc(var(--ui-radius-base) * 2);--ui-radius-long:999px;
 /* Contrato dimensional de ações: botão, badge e bloco/círculo de ícone. */
 --ui-action-size:40px;--ui-action-padding-y:10px;--ui-action-padding-x:14px;--ui-action-gap:6px;--ui-action-margin:0;--ui-data-inline-space:var(--ui-space-short);--ui-outline-width:1.5px;--ui-role-outline-width:1px;--ui-icon-stroke-width:1.5;--ui-operational-icon-stroke-width:1.25px;--ui-chart-line-width:1.5px;
 --ui-action-font-size:var(--ui-fs-13);--ui-action-font-weight:var(--ui-weight-medium);--ui-action-icon-size:19px;--ui-domain-abbr-text-width:3ch;--ui-domain-badge-min-width:calc((var(--ui-action-padding-x) * 2) + (var(--ui-action-icon-size) - 2px) + var(--ui-gap-short) + var(--ui-domain-abbr-text-width));--ui-domain-badge-width:var(--ui-domain-badge-min-width);
 --ui-program-icon-tile-size:72px;--ui-program-icon-glyph-size:38px;--ui-program-icon-stroke-width:2.25;--ui-header-brand-icon-size:24px;--ui-header-brand-icon-stroke-width:2.25;
 --ui-badge-large-size:var(--ui-action-size);--ui-badge-large-padding-y:var(--ui-action-padding-y);--ui-badge-large-padding-x:var(--ui-action-padding-x);
 --ui-badge-small-size:var(--ui-action-size);--ui-badge-small-padding-y:var(--ui-action-padding-y);--ui-badge-small-padding-x:var(--ui-action-padding-x);--ui-header-badge-size:32px;--ui-header-tool-icon-size:24px;--ui-notification-badge-size:20px;--ui-role-readable:#39E978;
 --ui-hierarchy-row-size:56px;--ui-hierarchy-compact-row-size:var(--ui-hierarchy-row-size);
 --ui-control-padding-y:10px;--ui-control-padding-x:12px;--ui-textarea-min-height:88px;--ui-content-icon-size:16px;
 --ui-modal-width:560px;--ui-modal-small-width:460px;--ui-modal-min-height:300px;--ui-question-icon-size:calc(var(--ui-action-size) * 2);--ui-question-glyph-size:calc(var(--ui-action-icon-size) * 2);--ui-question-actions-space:calc(var(--ui-gap-long) + var(--ui-gap-short));--ui-reminder-icon-size:calc(var(--ui-action-icon-size) * 1.3);
 --ui-space-1:var(--ui-space-short);--ui-space-2:var(--ui-space-short);--ui-space-3:var(--ui-space-short);--ui-space-4:var(--ui-space-medium);--ui-space-5:var(--ui-space-medium);--ui-space-6:var(--ui-space-medium);--ui-space-7:var(--ui-space-long);--ui-space-8:var(--ui-space-long);--ui-space-9:var(--ui-space-long);
 --ui-radius-sm:var(--ui-radius-short);--ui-radius-control:var(--ui-radius-short);--ui-radius-card:var(--ui-radius-medium);--ui-radius-modal:var(--ui-radius-medium);--ui-radius-pill:var(--ui-radius-long);--ui-button-standard-h:var(--ui-action-size);--ui-control-h:54px;--ui-max:1200px;--ui-fast:150ms;--ui-normal:180ms;--ui-shadow-card:0 4px 10px rgba(0,0,0,.18);--ui-shadow-popover:0 12px 28px rgba(0,0,0,.38);--ui-shadow-modal:0 18px 60px rgba(0,0,0,.45)
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html,body{min-height:100%}body{font-family:var(--ui-font);font-size:var(--ui-fs-14);line-height:1.45;background:var(--ui-surface-root);color:var(--ui-text);display:flex;justify-content:center;-webkit-font-smoothing:antialiased}button,input,textarea,select{font:inherit;color:inherit}button,[role=button]{touch-action:manipulation}button{appearance:none}a{color:inherit}[hidden]{display:none!important}svg{fill:none;stroke:currentColor;stroke-width:var(--ui-icon-stroke-width);stroke-linecap:round;stroke-linejoin:round}.ui-program-glyph--filled{fill:currentColor;stroke:none}:focus-visible{outline:2px solid var(--ui-focus);outline-offset:2px}.ui-sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important;border:0!important}.ui-ellipsis{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
/* Estrutura */
.ui-app{width:100%;max-width:var(--ui-max);min-height:100vh;background:var(--ui-surface-panel);border-inline:1px solid var(--ui-line);display:flex;flex-direction:column}.ui-header{min-height:58px;padding:12px 16px;background:var(--ui-surface-header);border-bottom:1px solid var(--ui-line);display:flex;align-items:center;justify-content:space-between;gap:var(--ui-gap-long)}.ui-header-title{min-width:0;display:flex;align-items:center;gap:var(--ui-gap-short);font-size:var(--ui-fs-18);font-weight:var(--ui-weight-strong);white-space:nowrap}.ui-header-title svg{width:var(--ui-header-brand-icon-size);height:var(--ui-header-brand-icon-size);color:var(--ui-accent-readable);stroke-width:var(--ui-header-brand-icon-stroke-width)}.ui-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:var(--ui-gap-short);min-width:0}.ui-role-pill{height:var(--ui-header-badge-size);min-height:var(--ui-header-badge-size);display:inline-flex;align-items:center;justify-content:center;padding:1px 9px;border:var(--ui-role-outline-width) solid var(--ui-role-readable);border-radius:var(--ui-radius-short);background:transparent;color:var(--ui-role-readable);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-weak);line-height:1;letter-spacing:.04em}.ui-panel-link{display:inline-flex;align-items:center;gap:var(--ui-gap-short);color:var(--ui-text-soft);text-decoration:none;font-size:var(--ui-fs-15);white-space:nowrap}.ui-panel-link:hover{color:var(--ui-text)}.ui-panel-link svg{width:15px;height:15px}.ui-panel-link .ui-back-panel-icon{stroke-width:1.5}.ui-main-nav{display:flex;gap:var(--ui-gap-short);margin:0 16px;padding:4px 0;border-bottom:1px solid var(--ui-line);overflow-x:auto;scrollbar-width:thin;scrollbar-color:#1E3A58 transparent}.ui-nav-link{position:relative;flex:1 1 0;min-width:94px;min-height:58px;padding:14px 12px;border-radius:var(--ui-radius-control);display:flex;align-items:center;justify-content:center;gap:var(--ui-gap-short);text-decoration:none;font-size:var(--ui-fs-13);font-weight:var(--ui-weight-strong);white-space:nowrap}.ui-nav-link:hover{background:rgba(255,255,255,.06)}.ui-nav-link.is-active{background:var(--ui-accent);color:#fff;font-weight:var(--ui-weight-strong)}.ui-nav-link svg{width:17px;height:17px;color:var(--ui-accent-readable)}.ui-nav-link.is-active svg{color:#fff}.ui-nav-icon{position:relative;display:inline-flex;flex:0 0 18px}.ui-main{flex:1;min-width:0;margin:0;padding:var(--ui-space-short);display:flex;flex-direction:column;gap:var(--ui-gap-short)}.ui-footer{padding:15px 16px;border-top:1px solid rgba(255,255,255,.025);text-align:center;color:#5F7D9B;font-size:var(--ui-fs-13)}
/* Tipografia e composição */
h1,.ui-h1{font-size:var(--ui-fs-20);font-weight:var(--ui-weight-strong);line-height:1.25}h2,.ui-h2{font-size:var(--ui-fs-18);font-weight:var(--ui-weight-strong);line-height:1.3}h3,.ui-h3,h4,.ui-h4,h5,.ui-h5,h6,.ui-h6{font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong);line-height:1.35}.ui-text{font-size:var(--ui-fs-14);color:var(--ui-text-soft)}.ui-text-muted{font-size:var(--ui-fs-13);color:var(--ui-text-muted)}.ui-kicker{color:var(--ui-accent-readable);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-strong);text-transform:uppercase;letter-spacing:.055em}.ui-section{margin:0;scroll-margin-top:var(--ui-space-medium);display:flex;flex-direction:column;gap:var(--ui-gap-short)}.ui-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--ui-gap-medium);margin:0}.ui-section-head p{margin-top:3px;color:var(--ui-text-muted);font-size:var(--ui-fs-13)}.ui-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:var(--ui-gap-medium)}.ui-col-12{grid-column:span 12}.ui-col-9{grid-column:span 9}.ui-col-8{grid-column:span 8}.ui-col-6{grid-column:span 6}.ui-col-4{grid-column:span 4}.ui-col-3{grid-column:span 3}.ui-grid-2,.ui-grid-3,.ui-grid-4,.ui-grid-5,.ui-grid-6{display:grid;gap:var(--ui-gap-medium)}.ui-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.ui-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.ui-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.ui-grid-5{grid-template-columns:repeat(5,minmax(0,1fr))}.ui-grid-6{grid-template-columns:repeat(6,minmax(0,1fr))}.ui-stack{display:flex;flex-direction:column;gap:var(--ui-gap-short)}.ui-stack-lg{display:flex;flex-direction:column;gap:var(--ui-gap-medium)}.ui-row{display:flex;align-items:center;gap:var(--ui-gap-short);flex-wrap:wrap}.ui-row-between{display:flex;align-items:center;justify-content:space-between;gap:var(--ui-gap-medium);flex-wrap:wrap}.ui-row-end{display:flex;align-items:center;justify-content:flex-end;gap:var(--ui-gap-short);flex-wrap:wrap}
/* Tokens visuais */
.ui-surface-grid{display:grid;grid-template-columns:1fr;gap:var(--ui-gap-short);width:100%}.ui-surface-sample{width:100%;min-height:128px;padding:var(--ui-space-medium);border:0;border-radius:var(--ui-radius-medium);display:flex;flex-direction:column;gap:var(--ui-gap-medium);box-shadow:var(--ui-shadow-card)}.ui-surface-sample-head{display:flex;align-items:center;justify-content:space-between;gap:var(--ui-gap-medium)}.ui-surface-sample-head strong{font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong)}.ui-surface-sample code,.ui-color-step code{font:inherit;font-size:var(--ui-fs-13);color:var(--ui-tone-medium)}.ui-surface-tones{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--ui-gap-short)}.ui-surface-tone{min-width:0;display:flex;align-items:center;gap:var(--ui-action-gap);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium)}.ui-surface-tone-icon{width:var(--ui-action-size);height:var(--ui-action-size);flex:0 0 var(--ui-action-size);display:inline-flex;align-items:center;justify-content:center;border-radius:var(--ui-radius-short);background:rgba(0,0,0,.16)}.ui-surface-tone-icon svg{width:var(--ui-action-icon-size);height:var(--ui-action-icon-size)}.ui-surface-tone.is-strong{color:var(--ui-tone-strong);font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong)}.ui-surface-tone.is-medium{color:var(--ui-tone-medium)}.ui-surface-tone.is-faded{color:var(--ui-tone-faded)}.ui-color-matrix{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.ui-color-family{overflow:hidden;border-radius:var(--ui-radius-card);background:var(--ui-surface-card);box-shadow:var(--ui-shadow-card)}.ui-color-family>header{padding:8px 10px;background:rgba(0,0,0,.15);display:flex;justify-content:space-between;gap:8px}.ui-color-scales{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.ui-color-step{min-height:72px;padding:8px;display:flex;flex-direction:column;justify-content:flex-end}.ui-color-step span{font-size:var(--ui-fs-13);font-weight:var(--ui-weight-strong)}.ui-color-step code{white-space:nowrap}
/* Ações */
.ui-btn,.ui-icon-btn,.ui-filter-btn,.ui-select-control,.ui-dropdown-toggle,.ui-field-button,.ui-switch,.ui-accordion-head,.ui-modal-close,.ui-pagination-btn,.ui-date-day,.ui-time-option{border:0;outline:0;box-shadow:none;cursor:pointer}.ui-btn{min-height:36px;padding:9px 14px;border-radius:var(--ui-radius-control);display:inline-flex;align-items:center;justify-content:center;gap:6px;color:#fff;text-decoration:none;font-size:var(--ui-fs-13);font-weight:var(--ui-weight-strong);white-space:nowrap}.ui-btn:hover{filter:brightness(1.1)}.ui-btn svg{width:16px;height:16px}.ui-btn-primary{background:var(--ui-accent)}.ui-btn-blue{background:var(--ui-blue-500)}.ui-btn-green{background:var(--ui-green-500)}.ui-btn-orange{background:var(--ui-orange-500)}.ui-btn-red{background:var(--ui-red-500)}.ui-btn-neutral{background:#294761}.ui-btn-soft{background:#17314C;color:var(--ui-text-soft);border:var(--ui-outline-width) solid #294761}.ui-btn-outline{background:transparent;border:var(--ui-outline-width) solid currentColor;color:var(--ui-accent-readable)}.ui-btn[disabled],.ui-btn.is-disabled{opacity:.48;cursor:not-allowed;filter:none;pointer-events:none}.ui-icon-btn{width:32px;height:32px;padding:0;border:var(--ui-outline-width) solid var(--ui-line-strong);border-radius:var(--ui-radius-control);background:transparent;color:var(--ui-tone-faded);display:inline-flex;align-items:center;justify-content:center}.ui-icon-btn:hover{color:#fff;border-color:#4D739A;background:#1D3854}.ui-icon-btn.is-danger:hover{color:#FF8F7A;border-color:#9A493C}.ui-icon-btn svg{width:16px;height:16px}.ui-filter-btn{min-height:34px;padding:8px 11px;border:var(--ui-outline-width) solid #35536D;border-radius:8px;background:transparent;color:var(--ui-text-soft);font-size:var(--ui-fs-13)}.ui-filter-btn.is-active{border-color:var(--ui-accent-readable);color:var(--ui-accent-readable)}.ui-badge{display:inline-flex;align-items:center;justify-content:center;min-height:28px;padding:5px 8px;border-radius:7px;font-size:var(--ui-fs-13);font-weight:var(--ui-weight-strong);line-height:1.1;white-space:nowrap}.ui-badge-pill{min-height:26px;border-radius:999px;padding:4px 10px}.ui-badge-blue{background:var(--ui-blue-500)}.ui-badge-green{background:var(--ui-green-500)}.ui-badge-orange{background:var(--ui-orange-500)}.ui-badge-red{background:var(--ui-red-500)}.ui-badge-purple{background:var(--ui-purple-500)}.ui-badge-outline{background:transparent;border:var(--ui-outline-width) solid currentColor;color:var(--ui-text-soft)}.ui-notification-badge{display:inline-flex;align-items:center;justify-content:center;min-width:20px;height:20px;padding:0 6px;border-radius:999px;background:var(--ui-notification);color:#fff;font-size:var(--ui-fs-13);font-weight:var(--ui-weight-strong)}
/* Cards e métricas */
.ui-card{padding:14px;border:0;border-radius:var(--ui-radius-card);background:var(--ui-surface-card);box-shadow:0 3px 9px rgba(0,0,0,.12)}.ui-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.ui-card-title{font-size:var(--ui-fs-16);font-weight:var(--ui-weight-title)}.ui-metric-grid{display:grid;grid-template-columns:1fr;gap:8px}.ui-metric-card{min-height:92px;padding:12px 16px;border-radius:10px;display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:13px;align-items:center;color:#fff;box-shadow:var(--ui-shadow-card)}.ui-metric-card.is-blue{background:var(--ui-blue-500)}.ui-metric-card.is-green{background:var(--ui-green-500)}.ui-metric-card.is-orange{background:var(--ui-orange-500)}.ui-metric-card.is-cyan{background:var(--ui-cyan-500)}.ui-metric-icon{width:48px;height:48px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.12)}.ui-metric-icon svg{width:24px;height:24px}.ui-metric-copy{min-width:0}.ui-metric-label{font-size:var(--ui-fs-16);font-weight:var(--ui-weight-title)}.ui-metric-sub{margin-top:3px;font-size:var(--ui-fs-13);color:rgba(255,255,255,.76)}.ui-metric-value{text-align:right;font-size:var(--ui-fs-30);font-weight:var(--ui-weight-strong);line-height:1;white-space:nowrap}.ui-empty{min-height:112px;padding:20px;border:1px dashed var(--ui-line-strong);border-radius:10px;display:grid;place-items:center;text-align:center;color:var(--ui-text-muted);font-size:var(--ui-fs-13)}.ui-lazy-state{min-height:44px;padding:10px 12px;display:flex;align-items:center;justify-content:center;gap:8px;color:var(--ui-text-muted);font-size:var(--ui-fs-13)}.ui-lazy-state>i{width:14px;height:14px;border:1.5px solid var(--ui-line-strong);border-top-color:var(--ui-accent-readable);border-radius:50%;animation:ui-lazy-spin .7s linear infinite}@keyframes ui-lazy-spin{to{transform:rotate(360deg)}}
/* Formulários */
.ui-form{padding:15px;border-radius:10px;background:var(--ui-surface-card)}.ui-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 10px}.ui-full{grid-column:1/-1}.ui-field{display:block;min-width:0}.ui-label{display:block;margin-bottom:5px;font-size:var(--ui-fs-13);font-weight:var(--ui-weight-strong)}.ui-help{display:block;margin-top:5px;color:var(--ui-text-muted);font-size:var(--ui-fs-13)}.ui-input,.ui-textarea,.ui-select-control,.ui-field-button{width:100%;border:1px solid var(--ui-level-3);border-radius:8px;background:var(--ui-level-2);color:var(--ui-text-soft);font-size:var(--ui-fs-13);outline:0}.ui-input{min-height:var(--ui-control-h);padding:10px 12px}.ui-textarea{min-height:88px;padding:10px 12px;line-height:1.42;resize:vertical}.ui-input::placeholder,.ui-textarea::placeholder{color:var(--ui-placeholder);opacity:1}.ui-input:focus,.ui-textarea:focus,.ui-select-control:focus-visible,.ui-select-control[aria-expanded=true],.ui-field-button:focus-visible{border-color:var(--ui-focus);outline:0}.ui-field-icon{position:relative}.ui-field-icon>.ui-leading-icon{position:absolute;left:12px;top:50%;width:16px;height:16px;transform:translateY(-50%);color:var(--ui-accent-readable);pointer-events:none;z-index:2}.ui-field-icon>.ui-input{padding-left:38px}.ui-field.is-error .ui-input,.ui-field.is-error .ui-textarea{border-color:var(--ui-red-300)}.ui-field.is-error .ui-help{color:#FF9B91}.ui-field.is-locked .ui-input,.ui-input[readonly],.ui-input:disabled,.ui-field-button:disabled{background:#0A1725;color:#718AA3;border-style:dashed;cursor:not-allowed;opacity:.72}
.ui-select,.ui-dropdown,.ui-time{position:relative}.ui-native-select{position:absolute!important;width:1px!important;height:1px!important;opacity:0!important;pointer-events:none!important;overflow:hidden!important;clip:rect(0 0 0 0)!important}.ui-select-control,.ui-dropdown-toggle,.ui-field-button{position:relative;min-height:var(--ui-control-h);padding:10px 34px 10px 12px;text-align:left;cursor:pointer}.ui-select-control::after,.ui-dropdown-toggle::after{content:"";position:absolute;right:12px;top:50%;width:7px;height:7px;border-right:1.5px solid var(--ui-text-muted);border-bottom:1.5px solid var(--ui-text-muted);transform:translateY(-65%) rotate(45deg)}.ui-select-control[aria-expanded=true]::after,.ui-dropdown-toggle[aria-expanded=true]::after{transform:translateY(-25%) rotate(225deg)}.ui-select-popover,.ui-dropdown-menu,.ui-time-popover{position:absolute;z-index:80;min-width:100%;max-height:230px;overflow-y:auto;padding:5px;border:1px solid var(--ui-line-strong);border-radius:8px;background:#0D1E2F;box-shadow:var(--ui-shadow-popover)}.ui-select-popover,.ui-time-popover{inset-inline:0;top:calc(100% + 4px)}.ui-dropdown-menu{top:calc(100% + 6px);left:0;min-width:180px}.ui-select-option,.ui-dropdown-item,.ui-time-option{display:flex;width:100%;min-height:36px;padding:8px 9px;border:0;border-radius:6px;background:transparent;color:var(--ui-text-soft);font-size:var(--ui-fs-13);text-align:left;align-items:center;cursor:pointer;text-decoration:none}.ui-select-option:hover,.ui-select-option:focus-visible,.ui-dropdown-item:hover,.ui-dropdown-item:focus-visible,.ui-time-option:hover,.ui-time-option:focus-visible,.ui-select-option.is-selected,.ui-time-option.is-selected{outline:0;background:#193650;color:#fff}.ui-field-button{display:flex;align-items:center}.ui-field-button.has-icon{padding-left:38px}.ui-field-button>.ui-leading-icon{position:absolute;left:12px;top:50%;width:16px;height:16px;transform:translateY(-50%);color:var(--ui-accent-readable)}.ui-field-button>.ui-trailing-icon{position:absolute;right:12px;top:50%;width:15px;height:15px;transform:translateY(-50%);color:var(--ui-text-muted)}
.ui-choice{display:inline-flex;align-items:center;gap:9px;min-height:34px;cursor:pointer;color:var(--ui-text-soft);font-size:var(--ui-fs-13);user-select:none}.ui-choice input{position:absolute;opacity:0}.ui-choice-mark{width:18px;height:18px;flex:0 0 18px;border:1.5px solid #37526A;background:#102236;display:inline-flex;align-items:center;justify-content:center}.ui-choice-checkbox .ui-choice-mark{border-radius:5px}.ui-choice-radio .ui-choice-mark{border-radius:50%}.ui-choice-mark::after{content:"";display:block;opacity:0}.ui-choice-checkbox .ui-choice-mark::after{width:8px;height:4px;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:translateY(-1px) rotate(-45deg)}.ui-choice-radio .ui-choice-mark::after{width:8px;height:8px;border-radius:50%;background:#fff}.ui-choice input:checked+.ui-choice-mark{background:var(--ui-accent);border-color:var(--ui-accent-readable)}.ui-choice input:checked+.ui-choice-mark::after{opacity:1}.ui-choice input:focus-visible+.ui-choice-mark{outline:2px solid var(--ui-focus);outline-offset:2px}.ui-choice input:disabled+.ui-choice-mark,.ui-choice input:disabled~span{opacity:.48;cursor:not-allowed}.ui-switch{position:relative;width:38px;height:22px;border:1px solid #37526A;border-radius:999px;background:#263C51}.ui-switch::before{content:"";position:absolute;left:3px;top:3px;width:14px;height:14px;border-radius:50%;background:#9AB0C4;transition:transform var(--ui-normal)}.ui-switch[aria-checked=true]{background:var(--ui-green-500);border-color:#2B8C62}.ui-switch[aria-checked=true]::before{transform:translateX(16px);background:#fff}.ui-switch-row{min-height:58px;padding:10px 0;display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;border-bottom:1px solid rgba(255,255,255,.055)}.ui-switch-row strong{display:block;font-size:var(--ui-fs-13);font-weight:var(--ui-weight-strong)}.ui-switch-row p{margin-top:2px;color:var(--ui-text-muted);font-size:var(--ui-fs-13)}.ui-upload{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px}.ui-upload input[type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.ui-upload-name{min-height:40px;padding:10px 12px;border:1.5px solid var(--ui-line-strong);border-radius:8px;background:#0D1E2F;color:var(--ui-text-muted);font-size:var(--ui-fs-13);display:flex;align-items:center;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-upload.has-file .ui-upload-name{color:var(--ui-text-soft)}
.ui-select-popover.is-viewport-layer{position:fixed;inset:auto;z-index:1100;min-width:0;max-height:300px;margin:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:var(--ui-surface-highlight) var(--ui-surface-panel)}
.ui-select-popover.is-viewport-layer::-webkit-scrollbar{width:var(--ui-space-short)}.ui-select-popover.is-viewport-layer::-webkit-scrollbar-track{background:var(--ui-surface-panel)}.ui-select-popover.is-viewport-layer::-webkit-scrollbar-thumb{border-radius:var(--ui-radius-long);background:var(--ui-surface-highlight)}
/* Navegação contextual, sanfonas e tabelas */
.ui-breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:4px;margin-bottom:12px;padding:6px 0}.ui-crumb{min-height:34px;padding:7px 12px;border:1px solid #2E986B;border-radius:8px;background:var(--ui-green-500);color:#fff;text-decoration:none;font-size:var(--ui-fs-13);font-weight:var(--ui-weight-strong);display:inline-flex;align-items:center}.ui-crumb.is-disabled{background:#14263A;border-color:#20364F;color:#7890A8;pointer-events:none}.ui-crumb-sep{color:#6785A3;font-size:var(--ui-fs-16)}.ui-dropdown-toggle{min-width:150px;border:1px solid var(--ui-line-strong);border-radius:8px;background:#20364F;color:var(--ui-text-soft);font-size:var(--ui-fs-13)}
.ui-accordion-group{display:flex;flex-direction:column;gap:8px}.ui-accordion{overflow:hidden;border-radius:10px;background:#101F31}.ui-accordion-head{width:100%;min-height:var(--ui-hierarchy-compact-row-size);padding:10px 40px 10px 13px;background:var(--ui-surface-card);color:#fff;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;text-align:left;position:relative}.ui-accordion-head::after{content:"";position:absolute;right:15px;top:50%;width:8px;height:8px;border-right:2px solid var(--ui-text-muted);border-bottom:2px solid var(--ui-text-muted);transform:translateY(-65%) rotate(45deg)}.ui-accordion-head[aria-expanded=true]::after{transform:translateY(-35%) rotate(225deg);border-color:#fff}.ui-accordion-title{min-width:0;font-size:var(--ui-fs-14);font-weight:var(--ui-weight-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-accordion-meta{justify-self:end;color:var(--ui-text-muted);font-size:var(--ui-fs-13)}.ui-accordion-body{min-width:0;padding:0 12px 12px;background:#101F31;color:var(--ui-text-soft);font-size:var(--ui-fs-13);overflow-anchor:none}.ui-accordion-body[hidden]{display:none!important}.ui-accordion-body-inner{padding-top:12px}.ui-drill-list{display:flex;flex-direction:column}.ui-drill-row{min-height:43px;padding:8px 30px 8px 7px;border-top:1px solid #1B3148;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;color:#B9D4FB;text-decoration:none;position:relative}.ui-drill-row::after{content:"›";position:absolute;right:10px;color:var(--ui-text-muted);font-size:var(--ui-fs-18)}.ui-drill-row span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ui-drill-value{padding:4px 8px;border-radius:6px;background:var(--ui-green-500);color:#fff}
.ui-table-wrap{overflow:auto;border:1px solid var(--ui-line);border-radius:10px;background:var(--ui-surface-panel)}.ui-table{width:100%;min-width:620px;border-collapse:collapse;font-size:var(--ui-fs-13)}.ui-table th,.ui-table td{padding:10px;border-bottom:1px solid rgba(255,255,255,.055);text-align:left;color:var(--ui-text-soft)}.ui-table th{background:#1F334F;font-weight:var(--ui-weight-strong);white-space:nowrap}.ui-table tbody tr:hover td{background:#13263B}.ui-table tr:last-child td{border-bottom:0}.ui-table .is-number{text-align:right;font-variant-numeric:tabular-nums}.ui-table .is-sticky{position:sticky;left:0;z-index:2;background:#101F31;box-shadow:5px 0 7px rgba(0,0,0,.12)}.ui-table th.is-sticky{z-index:3;background:#1F334F}.ui-pagination{display:flex;justify-content:flex-end;gap:5px;margin-top:10px}.ui-pagination-btn{min-width:34px;height:34px;padding:0 8px;border:1px solid var(--ui-line-strong);border-radius:8px;background:#14263A;color:var(--ui-text-soft);font-size:var(--ui-fs-13)}.ui-pagination-btn.is-active{background:var(--ui-accent);border-color:var(--ui-accent);color:#fff}.ui-progress{height:7px;border-radius:999px;overflow:hidden;background:#263C51}.ui-progress>span{display:block;height:100%;width:var(--ui-progress,0%);background:var(--ui-accent)}
/* Feedback, modais e calendário */
.ui-banner{min-height:58px;padding:10px 14px;border-radius:10px;display:flex;align-items:center;gap:10px;background:var(--ui-surface-card)}.ui-banner-icon,.ui-message-icon{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex:0 0 auto;background:rgba(255,255,255,.10);color:#fff}.ui-banner-icon svg,.ui-message-icon svg{width:18px;height:18px}.ui-banner-copy strong{display:block;font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong)}.ui-banner-copy span{display:block;margin-top:2px;font-size:var(--ui-fs-13);color:var(--ui-text-soft)}.ui-banner.is-success{background:var(--ui-green-700)}.ui-banner.is-warning{background:var(--ui-orange-700)}.ui-banner.is-info{background:var(--ui-blue-700)}.ui-banner.is-danger{background:var(--ui-red-700)}.ui-skeleton{min-height:14px;border-radius:6px;background:linear-gradient(90deg,#162A42 25%,#203A57 45%,#162A42 65%);background-size:220% 100%;animation:ui-shimmer 1.3s infinite}.ui-spinner{width:22px;height:22px;border:3px solid rgba(255,255,255,.2);border-top-color:var(--ui-accent-readable);border-radius:50%;animation:ui-spin .75s linear infinite}.ui-loading{min-height:72px;display:flex;align-items:center;justify-content:center;gap:10px;color:var(--ui-text-soft);font-size:var(--ui-fs-13)}@keyframes ui-spin{to{transform:rotate(360deg)}}@keyframes ui-shimmer{to{background-position:-220% 0}}
.ui-toast-region{position:fixed;left:50%;bottom:18px;z-index:2000;width:min(calc(100% - 32px),calc(var(--ui-max) - 32px));transform:translateX(-50%);pointer-events:none;overflow-anchor:none}.ui-toast{width:100%;min-height:70px;padding:10px 14px;border-radius:10px;display:flex;align-items:center;gap:10px;background:var(--ui-info);color:#fff;box-shadow:0 10px 30px rgba(0,0,0,.42);font-size:var(--ui-fs-13);opacity:0;transform:translateY(18px);visibility:hidden;transition:opacity var(--ui-normal),transform var(--ui-normal);overflow-anchor:none}.ui-toast.is-visible{opacity:1;transform:none;visibility:visible}.ui-toast.is-success{background:var(--ui-green-500)}.ui-toast.is-warning{background:var(--ui-orange-500)}.ui-toast.is-info{background:var(--ui-blue-500)}.ui-toast.is-danger{background:var(--ui-red-500)}.ui-toast .ui-message-icon{background:rgba(0,0,0,.16)}.ui-toast-copy{font-size:var(--ui-fs-13);font-weight:var(--ui-weight-strong)}
.ui-modal-bg{position:fixed;inset:0;z-index:1000;padding:var(--ui-space-short);background:rgba(2,8,15,.8);display:none;align-items:center;justify-content:center}
.ui-modal-bg.is-open{display:flex}
.ui-modal{width:min(var(--ui-modal-width),100%);min-height:var(--ui-modal-min-height);max-height:calc(100dvh - (var(--ui-space-short) * 2));padding:var(--ui-space-long) 0;overflow:hidden;border:1px solid var(--ui-line-strong);border-radius:var(--ui-radius-medium);background:var(--ui-surface-panel);box-shadow:var(--ui-shadow-modal);display:flex;flex-direction:column;justify-content:center;gap:var(--ui-gap-long)}
.ui-modal-sm{width:min(var(--ui-modal-small-width),100%)}
.ui-modal:not(.ui-modal-operational)>.ui-modal-head,.ui-modal:not(.ui-modal-operational) .ui-modal-close{display:none!important}
.ui-modal-body{min-height:0;padding:0 var(--ui-space-short);overflow:auto;color:var(--ui-text-soft);font-size:var(--ui-fs-13);display:flex;flex-direction:column;gap:var(--ui-gap-long)}
.ui-modal-actions{padding:0 var(--ui-space-short);display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--ui-gap-short)}
.ui-modal-message{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ui-gap-long);text-align:center}
.ui-modal-message h4{font-size:var(--ui-fs-16)}
.ui-modal-message p{margin:0;font-size:var(--ui-fs-13)}
.ui-modal-message.is-danger .ui-message-icon{background:var(--ui-red-500)}
.ui-modal-message.is-success .ui-message-icon{background:var(--ui-green-500)}
.ui-modal-message.is-warning .ui-message-icon{background:var(--ui-orange-500)}
.ui-modal-message.is-info .ui-message-icon{background:var(--ui-blue-500)}
.ui-date-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.ui-date-head>div{text-align:center}.ui-date-head strong{display:block;font-size:var(--ui-fs-16)}.ui-date-head span,.ui-date-week span{color:var(--ui-text-muted);font-size:var(--ui-fs-13)}.ui-date-nav{width:34px;height:34px;border:0;border-radius:8px;background:#17324F;color:var(--ui-text-soft);font-size:var(--ui-fs-20);cursor:pointer}.ui-date-week,.ui-date-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.ui-date-week span{padding:5px 0;text-align:center}.ui-date-day{aspect-ratio:1;border-radius:7px;background:transparent;color:var(--ui-text-soft);font-size:var(--ui-fs-13)}.ui-date-day:hover{background:#1D3552}.ui-date-day.is-today{border:1px solid var(--ui-accent-readable)}.ui-date-day.is-selected{background:var(--ui-accent);color:#fff}.ui-date-day:disabled{opacity:.28}.ui-code{overflow:auto;padding:12px;border-radius:8px;background:#071421;color:#B9D4FB;font:var(--ui-fs-13)/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre}.ui-token-table{display:grid;grid-template-columns:minmax(130px,.7fr) minmax(0,1.3fr);border-radius:10px;overflow:hidden}.ui-token-table>div{padding:9px 10px;border-bottom:1px solid var(--ui-line);font-size:var(--ui-fs-13)}.ui-token-table>div:nth-child(odd){background:#101F31}.ui-token-table>div:nth-child(even){background:var(--ui-surface-card);color:var(--ui-text-soft)}
/* Painel UI 2.1 — apresentação consolidada a partir do tema2. */
html{scroll-behavior:smooth}

/* Faixa fixa e navegação compensada. */
.ui-header{
 position:sticky;top:0;z-index:100;
}
.ui-main-nav{
 position:sticky;top:58px;z-index:90;
 margin:0;padding:var(--ui-space-short);
 border-bottom:1px solid var(--ui-line);
 background:rgba(9,23,38,.98);container-type:inline-size;container-name:ui-main-nav;
}
.ui-nav-link{
 flex:1 0 84px;min-width:84px;min-height:64px;padding:var(--ui-space-short);
 border-radius:var(--ui-radius-short);flex-direction:column;font-size:var(--ui-fs-13);font-weight:var(--ui-weight-strong);
}
.ui-nav-link svg{width:var(--ui-action-icon-size);height:var(--ui-action-icon-size)}
.ui-nav-leading{min-width:0;display:inline-flex;align-items:center;justify-content:center;gap:var(--ui-gap-short);line-height:1}
.ui-nav-label{min-width:0;display:block;text-align:center;line-height:1.2}
.ui-nav-badge{min-width:var(--ui-notification-badge-size);height:var(--ui-notification-badge-size);padding-inline:4px;border-radius:var(--ui-radius-long);display:inline-grid;place-items:center;background:var(--ui-notification);color:var(--ui-tone-strong);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);line-height:1}
.ui-header-tool.ui-icon-btn{width:var(--ui-badge-small-size);height:var(--ui-badge-small-size);min-width:var(--ui-badge-small-size);min-height:var(--ui-badge-small-size);flex:0 0 var(--ui-badge-small-size);padding:0;border-color:transparent;background:transparent;color:var(--ui-tone-medium)}
.ui-header-tool.ui-icon-btn:is(:hover,:focus-visible,.is-on){border-color:transparent;background:var(--ui-level-4);color:var(--ui-tone-medium)}
.ui-header-tool.ui-icon-btn svg{width:var(--ui-header-tool-icon-size);height:var(--ui-header-tool-icon-size);stroke-width:var(--ui-operational-icon-stroke-width)}
.ui-panel-return{width:var(--ui-header-badge-size);height:var(--ui-header-badge-size);flex:0 0 var(--ui-header-badge-size);border:var(--ui-role-outline-width) solid var(--ui-role-readable);border-radius:var(--ui-radius-short);display:inline-flex;align-items:center;justify-content:center;background:transparent;color:var(--ui-role-readable)}
.ui-panel-return:hover{background:color-mix(in srgb,var(--ui-role-readable) 12%,transparent);color:var(--ui-role-readable)}
.ui-panel-return .ui-back-panel-icon{width:14px;height:14px;stroke-width:var(--ui-icon-stroke-width)}
.ui-header-return-group{margin-left:auto;display:flex;align-items:center;justify-content:flex-end;gap:var(--ui-gap-short)}
.ui-role-pill[href]{text-decoration:none;cursor:pointer}
.ui-role-pill[href]:hover{filter:brightness(1.12)}
.ui-section{scroll-margin-top:112px}
.ui-section-head{align-items:center;justify-content:flex-start;gap:9px;margin:0}
.ui-section-head::after{content:"";height:1px;min-width:20px;flex:1;background:var(--ui-line-strong)}
.ui-section-head h2{font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong);white-space:nowrap}

/* Escala tipográfica: somente 13, 14, 15, 16 e 17px; pesos de 300 a 600. */
h1,.ui-h1{font-size:var(--ui-font-large);font-weight:var(--ui-weight-strong)}
h2,.ui-h2{font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong)}
h3,.ui-h3,h4,.ui-h4,h5,.ui-h5,h6,.ui-h6{font-size:var(--ui-fs-15);font-weight:var(--ui-weight-strong)}
strong,b{font-weight:var(--ui-weight-strong)}
.ui-header-title{font-size:var(--ui-font-large);font-weight:var(--ui-weight-strong)}
.ui-kicker,.ui-notification-badge,.ui-metric-value{font-weight:var(--ui-weight-strong)}
.ui-modal-close,.ui-date-nav{font-size:var(--ui-font-large);font-weight:var(--ui-weight-medium)}

/* Escalas oficiais: curto 6px, médio 12px e longo 18px. */
.ui-tone-scale{margin-top:var(--ui-space-medium);display:grid;gap:var(--ui-gap-medium)}
.ui-tone-sample{min-width:0;display:grid;grid-template-columns:18px minmax(0,1fr) 42px;align-items:center;gap:var(--ui-gap-medium)}
.ui-tone-sample.is-faded{color:var(--ui-tone-faded)}
.ui-tone-sample.is-medium{color:var(--ui-tone-medium)}
.ui-tone-sample.is-strong{color:var(--ui-tone-strong)}
.ui-tone-sample svg{width:18px;height:18px}
.ui-tone-sample span{min-width:0;display:flex;flex-direction:column;gap:var(--ui-gap-short)}
.ui-tone-sample strong{font-size:var(--ui-fs-13);font-weight:var(--ui-weight-strong)}
.ui-tone-sample small{font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium)}
.ui-tone-sample i{height:1px;background:currentColor}
.ui-grid-preview-list{display:grid;gap:var(--ui-gap-medium)}
.ui-grid-preview-row{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:var(--ui-gap-medium)}
.ui-grid-preview-row>b{color:var(--ui-tone-medium);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);text-align:center}
.ui-grid-preview{display:grid;grid-template-columns:repeat(var(--ui-columns),minmax(0,1fr));gap:var(--ui-gap-short)}
.ui-grid-preview>span{min-height:28px;border-radius:var(--ui-radius-short);background:#1D3854}
.ui-btn,.ui-icon-btn,.ui-filter-btn,.ui-color-demo,.ui-color-tab,.ui-select-control,.ui-dropdown-toggle,.ui-field-button{border-radius:var(--ui-radius-short)}
.ui-card,.ui-form,.ui-modal,.ui-metric-card,.ui-profile-card,.ui-color-metric{border-radius:var(--ui-radius-medium)}
.ui-input,.ui-textarea,.ui-upload-name{border-radius:var(--ui-radius-medium)}

/* Paleta em tabs; os cards reproduzem a composição horizontal do programa Visitas. */
.ui-color-tablist{margin-bottom:10px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ui-color-tab{
 min-width:0;min-height:40px;padding:10px 8px;border:1.5px solid transparent;border-radius:9px;
 background:var(--tab-base);color:#fff;font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;
}
.ui-color-tab:hover{filter:brightness(1.1)}
.ui-color-tab.is-active{border-color:var(--tab-readable);box-shadow:inset 0 0 0 2px color-mix(in srgb,var(--tab-readable) 42%,transparent)}
.ui-color-matrix{grid-template-columns:1fr;gap:0}
.ui-color-family{overflow:visible;border-radius:0;background:transparent;box-shadow:none}
.ui-color-family>header{display:none}
.ui-color-card-stack{display:grid;grid-template-columns:1fr;gap:8px}
.ui-color-metric{
 width:100%;min-height:96px;padding:var(--ui-space-long) 16px;border:1px solid rgba(255,255,255,.035);border-radius:10px;
 display:grid;grid-template-columns:48px minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:13px;row-gap:3px;
 align-items:center;justify-content:stretch;color:#fff;text-align:left;overflow:hidden;box-shadow:var(--ui-shadow-card);
}
.ui-color-metric.is-light{background:transparent;border:1.5px solid var(--family-light);color:var(--family-light);box-shadow:none}
.ui-color-metric.is-base{background:var(--family-base)}
.ui-color-metric.is-dark{background:var(--family-dark)}
.ui-color-metric.is-light .ui-color-metric-icon{border:1.5px solid currentColor;background:transparent;color:var(--family-light)}
.ui-color-metric.is-light .ui-color-metric-copy strong,.ui-color-metric.is-light>b{color:var(--family-light)}
.ui-color-metric.is-light .ui-color-metric-copy span{color:color-mix(in srgb,var(--family-light) 78%,transparent)}
.ui-color-metric-icon{
 grid-column:1;grid-row:1/3;width:48px;height:48px;align-self:center;border:0;border-radius:50%;
 display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.12);color:rgba(255,255,255,.92);
}
.ui-color-metric-icon svg{width:25px;height:25px}
.ui-color-metric-copy{grid-column:2;grid-row:1/3;min-width:0;display:grid;grid-template-rows:auto auto;row-gap:3px;align-self:stretch}
.ui-color-metric-copy strong{align-self:end;color:var(--ui-on-color-strong);font-size:var(--ui-fs-16);font-weight:var(--ui-weight-title);line-height:1.1;text-transform:uppercase;letter-spacing:.02em}
.ui-color-metric-copy span{align-self:start;color:var(--ui-on-color-medium);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);line-height:1.15}
.ui-color-metric>b{grid-column:3;grid-row:1/3;align-self:center;margin:0;color:#fff;font-size:var(--ui-main-card-number);font-weight:var(--ui-weight-strong);line-height:1;text-align:right;letter-spacing:-.02em;white-space:nowrap}

/* Mostruários de cor: preenchimento, contorno e aplicação em fonte/linha. */
.ui-action-showcase{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ui-action-showcase>.ui-card{padding:15px;border-radius:16px}
.ui-card-title{margin-bottom:13px;font-size:var(--ui-fs-16);font-weight:var(--ui-weight-title)}
.ui-tone-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.ui-tone-head{padding:0 4px 2px;color:var(--ui-text-muted);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);text-align:center}
.ui-color-demo{
 min-width:0;min-height:var(--ui-button-standard-h);padding:10px 8px;border-radius:9px;border:1.5px solid transparent;
 display:flex;align-items:center;justify-content:center;overflow:hidden;
 font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);text-align:center;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;
}
.ui-color-demo.is-fill{background:var(--demo);color:#fff}
.ui-color-demo.is-line{background:transparent;border-color:var(--demo);color:var(--demo)}
.ui-color-demo:hover{filter:brightness(1.12)}
.ui-color-demo.is-icon-top{min-height:76px;padding:10px 6px;flex-direction:column;gap:6px}
.ui-color-demo.is-icon-top svg{width:20px;height:20px;flex:0 0 20px}
.ui-color-demo.is-icon-top span{max-width:100%;overflow:hidden;text-overflow:ellipsis}
.ui-readable-card{grid-column:1/-1}
.ui-color-badge-grid{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ui-color-pill{
 width:40px;height:40px;min-height:40px;padding:0;border:1.5px solid var(--demo);border-radius:50%;
 display:inline-flex;align-items:center;justify-content:center;
 background:color-mix(in srgb,var(--demo) 9%,transparent);color:var(--demo);font-size:0;
}
.ui-color-pill::after{content:"";width:12px;height:12px;border-radius:50%;background:var(--demo)}
.ui-status-library{margin-top:20px}
.ui-status-showcase{display:grid;grid-template-columns:1fr;gap:8px}
.ui-status-row{
 width:100%;min-height:70px;padding:0;border:0;border-radius:var(--ui-radius-short);
 display:grid;grid-template-columns:auto auto 18px minmax(0,1fr);align-items:center;gap:8px;
 background:transparent;color:#fff;text-align:left;cursor:pointer;
}
.ui-status-row:hover{background:transparent}
.ui-status-row:focus-visible{outline:2px solid var(--row-readable);outline-offset:2px}
.ui-status-date{
 min-height:40px;padding:10px 14px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;
 background:var(--row-base);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);white-space:nowrap;
}
.ui-status-total{min-width:0;display:flex;align-items:baseline;gap:4px;white-space:nowrap}
.ui-status-total small,.ui-status-badge-amount small{color:var(--row-readable);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium)}
.ui-status-total strong{font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong)}
.ui-status-arrow{width:18px;height:18px;color:var(--ui-text-soft)}
.ui-status-badge{
 min-height:40px;padding:9px 12px;border:1.5px solid var(--row-readable);border-radius:999px;
 display:inline-flex;align-items:center;justify-content:center;justify-self:end;gap:8px;color:var(--row-readable);
 font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);white-space:nowrap;
}
.ui-status-badge-amount{display:inline-flex;align-items:baseline;gap:3px;color:#fff}
.ui-status-badge-amount strong{font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong)}
.ui-icon-library{margin-top:10px}
.ui-icon-library-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(76px,1fr));gap:10px}
.ui-icon-sample{min-width:0;display:flex;flex-direction:column;align-items:center;gap:6px;color:var(--ui-text-soft);font-size:var(--ui-fs-13)}
.ui-icon-sample>.ui-icon-btn{width:40px;height:40px;border-radius:9px;color:var(--ui-accent-readable)}
.ui-icon-sample>.ui-icon-btn.is-agenda-calendar{color:var(--ui-blue-readable)}
.ui-icon-sample>.ui-icon-btn.is-favorite{color:var(--ui-orange-readable)}
.ui-icon-sample>.ui-icon-btn.is-favorite svg{fill:var(--ui-orange-readable);stroke:var(--ui-orange-readable);stroke-width:var(--ui-icon-stroke-width)}
.ui-icon-sample>.ui-icon-btn.is-agenda-check{color:var(--ui-green-500)}
.ui-icon-sample>.ui-icon-btn.is-agenda-check .ui-confirm-box{fill:var(--ui-green-500);stroke:var(--ui-green-500)}
.ui-icon-sample>.ui-icon-btn.is-agenda-check .ui-confirm-mark{fill:none;stroke:#fff;stroke-width:var(--ui-icon-stroke-width)}
.ui-action-utilities{margin-top:10px}
.ui-btn{min-width:var(--ui-action-size);min-height:var(--ui-button-standard-h);padding:var(--ui-action-padding-y) var(--ui-action-padding-x);border-radius:var(--ui-radius-short);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-strong)}
.ui-icon-btn{width:36px;height:36px;border-radius:9px}
.ui-icon-btn svg{width:17px;height:17px}
.ui-icon-btn.is-danger svg{width:18px;height:18px}
.ui-filter-btn{min-height:40px;padding:10px 14px;border-radius:9px;font-size:var(--ui-fs-13)}
.ui-badge,.ui-badge-pill{
 min-width:var(--ui-action-size);min-height:var(--ui-action-size);padding:var(--ui-action-padding-y) var(--ui-action-padding-x);border-radius:var(--ui-radius-long);
 font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);
}
.ui-crumb{min-width:var(--ui-action-size);min-height:var(--ui-action-size);padding:var(--ui-action-padding-y) var(--ui-action-padding-x);border-radius:999px;font-weight:var(--ui-weight-medium)}
.ui-dropdown-toggle{height:var(--ui-action-size);min-height:var(--ui-action-size);border-radius:9px}

/* Formulários: sem rótulo externo, com ícone dentro do próprio controle. */
.ui-form{padding:15px;border-radius:14px;background:var(--ui-surface-card)}
.ui-form-grid{gap:10px}
.ui-input,.ui-textarea,.ui-select-control,.ui-field-button,.ui-upload-name{
 border:1px solid var(--ui-level-3);border-radius:11px;
 background:var(--ui-level-2);color:var(--ui-text-soft);font-size:var(--ui-fs-14);
}
.ui-input,.ui-select-control,.ui-field-button,.ui-upload-name{height:var(--ui-control-h);min-height:var(--ui-control-h)}
.ui-input{padding:var(--ui-action-padding-y) var(--ui-action-padding-x)}
.ui-textarea{min-height:112px;padding:16px 14px;line-height:1.45}
.ui-field-icon{display:block;position:relative}
.ui-field-icon>.ui-leading-icon,.ui-select-icon>.ui-leading-icon{
 position:absolute;left:14px;top:50%;z-index:3;width:17px;height:17px;
 transform:translateY(-50%);color:var(--ui-orange-300);pointer-events:none;
}
.ui-field-icon>.ui-leading-icon.ui-money-icon{left:12px;width:20px;height:20px}
.ui-field-icon>.ui-input,.ui-select-icon>.ui-select-control{padding-left:42px}
.ui-field-icon-textarea>.ui-leading-icon{top:18px;transform:none}
.ui-field-icon-textarea>.ui-textarea{padding-left:42px}
.ui-select-icon{display:block;position:relative}
.ui-select-control,.ui-field-button{padding:var(--ui-action-padding-y) 38px var(--ui-action-padding-y) 14px}
.ui-field-button.has-icon{padding-left:42px}
.ui-field-button>.ui-leading-icon{left:14px;width:17px;height:17px}
.ui-field-button>.ui-trailing-icon{right:14px;width:16px;height:16px}
.ui-select-control::after,.ui-dropdown-toggle::after{right:15px}
.ui-select-popover,.ui-dropdown-menu,.ui-time-popover{border-radius:11px}
.ui-select-option,.ui-dropdown-item,.ui-time-option{min-height:40px;padding:10px;font-size:var(--ui-fs-13)}
.ui-upload{gap:10px}
.ui-upload>.ui-btn{height:var(--ui-action-size);min-height:var(--ui-action-size);border-radius:11px}
.ui-upload-name{padding:var(--ui-action-padding-y) 14px}

/* Controles de escolha com área de toque e geometria próprias. */
.ui-choice{
 min-height:42px;padding:8px 13px;border:1px solid var(--ui-line-strong);border-radius:999px;
 background:#0D1E2F;gap:10px;font-size:var(--ui-fs-14);font-weight:var(--ui-weight-medium);
}
.ui-choice-mark{width:22px;height:22px;flex-basis:22px;border:2px solid #557692;background:#10263B}
.ui-choice-checkbox .ui-choice-mark{border-radius:7px}
.ui-choice-checkbox .ui-choice-mark::after{width:9px;height:5px}
.ui-choice-radio .ui-choice-mark{border-radius:50%}
.ui-choice-radio .ui-choice-mark::after{width:8px;height:8px}
.ui-choice input:checked+.ui-choice-mark{background:var(--ui-green-500);border-color:var(--ui-green-300)}
.ui-switch-row{min-height:52px;padding:5px 0;border:0;grid-template-columns:42px minmax(0,1fr);gap:10px}
.ui-switch-row strong{font-size:var(--ui-fs-14);font-weight:var(--ui-weight-strong)}

/* Cards de métrica: card escuro e identidade de cor restrita ao ícone. */
.ui-component-block{margin-bottom:20px}
.ui-profile-grid{display:grid;grid-template-columns:1fr;gap:10px}
.ui-profile-card{
 position:relative;min-width:0;min-height:108px;margin:0;padding:20px 12px;border:0;border-radius:10px;
 display:grid;grid-template-columns:69px minmax(0,1fr);align-items:start;column-gap:18px;
 background:var(--ui-surface-card);color:var(--ui-text-soft);box-shadow:var(--ui-shadow-card);
}
.ui-profile-avatar{
 grid-column:1;grid-row:1;align-self:center;width:69px;height:69px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;
 background:color-mix(in srgb,var(--profile-base) 22%,var(--ui-surface-card));color:var(--profile-readable);
 overflow:hidden;font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong);
}
.ui-profile-avatar>img{width:100%;height:100%;display:block;object-fit:cover}
.ui-profile-card-body{grid-column:2;grid-row:1;min-width:0;width:100%;display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:5.6px}
.ui-profile-card-title{min-width:0;width:100%;padding-right:72px;display:flex;align-items:center}
.ui-profile-card-title>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#F7FBFF;font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong)}
.ui-profile-status{
 position:absolute;top:20px;right:12px;min-height:34px;padding:0 13px;border:var(--ui-outline-width) solid var(--profile-readable);border-radius:999px;
 display:inline-flex;align-items:center;justify-content:center;color:var(--profile-readable);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);line-height:1;white-space:nowrap;
}
.ui-profile-card-meta{min-width:0;width:100%;display:flex;flex-direction:column;align-items:flex-start;gap:5.6px}
.ui-profile-percent{color:var(--profile-readable);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-strong)}
.ui-profile-percent small{margin-inline-start:var(--ui-space-short);color:var(--ui-tone-medium);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium)}
.ui-profile-contact-row{min-width:0;width:100%;display:flex;align-items:center;justify-content:space-between;gap:8px}
.ui-profile-whatsapp{min-width:0;max-width:100%;display:inline-flex;align-items:center;gap:6px;color:var(--profile-readable);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);text-decoration:none}
.ui-profile-whatsapp:hover{filter:brightness(1.15)}
.ui-profile-whatsapp svg{width:18px;height:18px;flex:0 0 18px;stroke-width:var(--ui-icon-stroke-width)}
.ui-profile-whatsapp span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ui-profile-actions{flex:0 0 auto;min-width:0;margin:0;padding:0;display:flex;align-items:center;justify-content:flex-end;gap:10px}
.ui-profile-actions>form{display:contents;margin:0}
.ui-profile-actions .ui-icon-btn{width:32px;height:32px;border-color:transparent;color:#6F8EAE}
.ui-profile-actions .ui-icon-btn svg{width:17px;height:17px}
.ui-profile-actions .ui-icon-btn.is-danger svg{width:18px;height:18px}
.ui-metric-grid{gap:10px}
.ui-metric-card{
 min-height:104px;padding:14px;border:0;border-radius:14px;
 grid-template-columns:52px minmax(0,1fr) auto;grid-template-rows:auto auto;gap:2px 13px;
 background:var(--ui-surface-header)!important;color:var(--ui-text);box-shadow:var(--ui-shadow-card);
}
.ui-metric-icon{grid-column:1;grid-row:1/3;width:52px;height:52px;border-radius:12px;color:#fff;align-self:center}
.ui-metric-card.is-red .ui-metric-icon{background:var(--ui-red-500)}
.ui-metric-card.is-blue .ui-metric-icon{background:var(--ui-blue-500)}
.ui-metric-card.is-green .ui-metric-icon{background:var(--ui-green-500)}
.ui-metric-card.is-orange .ui-metric-icon{background:var(--ui-orange-500)}
.ui-metric-card.is-amber .ui-metric-icon{background:var(--ui-amber-500)}
.ui-metric-card.is-cyan .ui-metric-icon{background:var(--ui-cyan-500)}
.ui-metric-card.is-pink .ui-metric-icon{background:var(--ui-pink-500)}
.ui-metric-card.is-purple .ui-metric-icon{background:var(--ui-purple-500)}
.ui-metric-card.is-slate .ui-metric-icon{background:var(--ui-slate-500)}
.ui-metric-icon svg{width:25px;height:25px}
.ui-metric-copy{grid-column:2;grid-row:1/3;display:flex;min-width:0;flex-direction:column;justify-content:center}
.ui-metric-label{font-size:var(--ui-fs-16);font-weight:var(--ui-weight-title);line-height:1.2}
.ui-metric-sub{margin-top:3px;color:var(--ui-text-soft);font-size:var(--ui-fs-13)}
.ui-metric-value{grid-column:3;grid-row:1/3;align-self:center;justify-self:end;margin:0;color:#fff;font-size:var(--ui-font-large);line-height:1;text-align:right}

/* O feedback cobre o rodapé inteiro; nenhum conteúdo fica visível por baixo. */
.ui-toast-region{
 left:0;right:0;bottom:0;width:100%;max-width:none;transform:none;
}
.ui-toast{
 min-height:70px;padding:10px max(14px,env(safe-area-inset-right)) max(10px,env(safe-area-inset-bottom)) max(14px,env(safe-area-inset-left));
 border-radius:0;transform:translateY(100%);font-size:var(--ui-fs-13);
}
.ui-toast-copy{font-size:var(--ui-fs-13);font-weight:var(--ui-weight-strong)}
.ui-banner-copy strong{font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong)}
.ui-feedback-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.ui-feedback-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.ui-feedback-trigger{
 width:52px;height:52px;border:0;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;
 color:#fff;cursor:pointer;box-shadow:none;
}
.ui-feedback-trigger svg{width:21px;height:21px}
.ui-feedback-trigger.is-success{background:var(--ui-green-500)}
.ui-feedback-trigger.is-warning{background:var(--ui-orange-500)}
.ui-feedback-trigger.is-info{background:var(--ui-blue-500)}
.ui-feedback-trigger.is-danger{background:var(--ui-red-500)}
.ui-feedback-trigger:hover{filter:brightness(1.1)}
.ui-field-icon>.ui-leading-icon,.ui-select-icon>.ui-leading-icon{color:var(--ui-orange-readable)}
.ui-field.is-error .ui-input,.ui-field.is-error .ui-textarea{border-color:var(--ui-red-readable)}
.ui-choice input:checked+.ui-choice-mark{border-color:var(--ui-green-readable)}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}

/* Precedência final dos fundamentos oficiais. */
.ui-btn,.ui-icon-btn,.ui-filter-btn,.ui-color-demo,.ui-color-tab,.ui-select-control,.ui-dropdown-toggle,.ui-field-button{border-radius:var(--ui-radius-short)}
.ui-card,.ui-form,.ui-modal,.ui-metric-card,.ui-profile-card,.ui-color-metric{border-radius:var(--ui-radius-medium)}
.ui-input,.ui-textarea,.ui-upload-name{border-radius:var(--ui-radius-medium)}
.ui-color-tablist,.ui-color-card-stack,.ui-tone-grid,.ui-status-showcase{gap:var(--ui-gap-short)}
.ui-action-showcase,.ui-icon-library-grid,.ui-profile-grid,.ui-metric-grid,.ui-feedback-grid{gap:var(--ui-gap-medium)}
.ui-profile-card{column-gap:var(--ui-gap-long)}
.ui-profile-card-body,.ui-profile-card-meta{gap:var(--ui-gap-short)}
.ui-status-row,.ui-status-badge{gap:var(--ui-gap-short)}

/* Contrato final de ações: o conteúdo define a largura; a altura, o ritmo e a tipografia são comuns. */
.ui-surface-grid{grid-template-columns:1fr}
.ui-surface-sample{min-height:0;padding:12px}
.ui-btn,.ui-filter-btn,.ui-color-demo,.ui-color-tab,.ui-badge,.ui-badge-pill,.ui-crumb,.ui-profile-status,.ui-status-date,.ui-status-badge{
 min-width:var(--ui-action-size);min-height:var(--ui-action-size);margin:var(--ui-action-margin);padding:var(--ui-action-padding-y) var(--ui-action-padding-x);
 gap:var(--ui-action-gap);font-size:var(--ui-action-font-size);font-weight:var(--ui-action-font-weight);line-height:1.2;
}
.ui-btn,.ui-filter-btn,.ui-color-demo:not(.is-icon-top),.ui-color-tab,.ui-badge,.ui-badge-pill,.ui-crumb,.ui-profile-status,.ui-status-date,.ui-status-badge{height:var(--ui-action-size)}
.ui-badge-square{min-width:var(--ui-action-size);border-radius:var(--ui-radius-short)}
.ui-filter-btn.ui-filter-neutral{border:0;background:var(--ui-level-3);color:var(--ui-tone-medium)}
.ui-filter-btn.ui-filter-neutral:hover,.ui-filter-btn.ui-filter-neutral:focus-visible{background:var(--ui-level-4);color:var(--ui-tone-strong)}
.ui-filter-btn.ui-filter-neutral:is(.is-active,.is-on){border:0;background:var(--ui-level-4);color:var(--ui-tone-strong)}
.ui-btn svg,.ui-filter-btn svg,.ui-color-demo:not(.is-icon-top) svg,.ui-color-tab svg,.ui-badge svg,.ui-crumb svg,.ui-profile-status svg,.ui-status-date svg,.ui-status-badge svg{
 width:var(--ui-action-icon-size);height:var(--ui-action-icon-size);flex:0 0 var(--ui-action-icon-size);
}
.ui-icon-btn,.ui-feedback-trigger,.ui-color-pill,.ui-banner-icon,.ui-message-icon{
 width:var(--ui-action-size);height:var(--ui-action-size);min-width:var(--ui-action-size);min-height:var(--ui-action-size);
 margin:var(--ui-action-margin);padding:0;border-radius:var(--ui-radius-short);font-size:var(--ui-action-font-size);font-weight:var(--ui-action-font-weight);
}
.ui-modal-close,.ui-pagination-btn,.ui-date-nav{width:var(--ui-action-size);height:var(--ui-action-size);min-width:var(--ui-action-size);min-height:var(--ui-action-size)}
.ui-icon-btn svg,.ui-feedback-trigger svg,.ui-color-pill svg,.ui-banner-icon svg,.ui-message-icon svg{
 width:var(--ui-action-icon-size);height:var(--ui-action-icon-size);
}
.ui-icon-btn.ui-chevron-prev svg{transform:rotate(180deg)}
.ui-icon-btn.is-circle,.ui-message-icon{border-radius:var(--ui-radius-long)}
.ui-color-pill::after{width:var(--ui-action-icon-size);height:var(--ui-action-icon-size)}
.ui-profile-actions .ui-icon-btn{width:var(--ui-action-size);height:var(--ui-action-size);border-radius:var(--ui-radius-short)}
.ui-profile-actions .ui-icon-btn svg,.ui-profile-actions .ui-icon-btn.is-danger svg{width:var(--ui-action-icon-size);height:var(--ui-action-icon-size)}
.ui-notification-badge{
 box-sizing:border-box;min-width:var(--ui-notification-badge-size);width:auto;height:var(--ui-notification-badge-size);min-height:var(--ui-notification-badge-size);margin:0;padding:0 4px;
 border:0;border-radius:var(--ui-radius-long);display:inline-flex;align-items:center;justify-content:center;
 background:var(--ui-notification);color:var(--ui-tone-strong);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-strong);line-height:1;
}
.ui-row,.ui-feedback-actions,.ui-profile-actions,.ui-modal-actions,.ui-action-standard-demo{gap:var(--ui-action-gap)}
.ui-color-demo.is-icon-top{margin:var(--ui-action-margin);padding:var(--ui-action-padding-y) var(--ui-action-padding-x);gap:var(--ui-action-gap);font-size:var(--ui-action-font-size);font-weight:var(--ui-action-font-weight)}
.ui-color-demo.is-icon-top svg{width:var(--ui-action-icon-size);height:var(--ui-action-icon-size);flex-basis:var(--ui-action-icon-size)}
/* A biblioteca mostra todos os desenhos no tom médio; a semântica de cor pertence ao componente que os consome. */
.ui-icon-btn,.ui-profile-actions .ui-icon-btn{color:var(--ui-tone-medium)}
.ui-icon-library .ui-icon-sample>.ui-icon-btn{color:var(--ui-tone-medium)}
.ui-icon-library .ui-icon-sample>.ui-icon-btn.is-favorite svg{fill:currentColor;stroke:currentColor}
.ui-icon-library .ui-icon-sample>.ui-icon-btn.is-agenda-check .ui-confirm-box{fill:currentColor;stroke:currentColor}
.ui-icon-library .ui-icon-sample>.ui-icon-btn.is-agenda-check .ui-confirm-mark{stroke:var(--ui-tone-strong)}

/* Tabs dos mostruários: um formato por vez, sem empilhar matrizes concorrentes. */
.ui-showcase-tabs{display:flex;flex-direction:column;gap:var(--ui-gap-medium)}
.ui-showcase-tablist{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--ui-gap-short)}
.ui-showcase-tab{
 min-width:0;min-height:var(--ui-action-size);margin:0;padding:var(--ui-action-padding-y) var(--ui-action-padding-x);
 border:1px solid var(--ui-line-strong);border-radius:var(--ui-radius-short);background:#17314C;color:var(--ui-tone-medium);
 font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;
}
.ui-showcase-tab.is-active{border-color:var(--ui-orange-readable);background:var(--ui-orange-500);color:#fff}
.ui-action-showcase{grid-template-columns:1fr;gap:0}
.ui-action-showcase>.ui-showcase-panel{width:100%;border-radius:var(--ui-radius-medium)}
.ui-readable-card{margin-top:0}
.ui-badge-tablist{grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:var(--ui-gap-short)}
.ui-button-tablist{grid-template-columns:repeat(2,minmax(0,1fr))}
[data-ui-showcase-panel="left"] .ui-color-demo::before{content:"";width:8px;height:5px;flex:0 0 8px;border-left:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-1px) rotate(-45deg)}
[data-ui-showcase-panel="left"] .ui-tone-grid button:nth-of-type(3n),[data-ui-showcase-panel="top"] .ui-tone-grid button:nth-of-type(3n){background:transparent;border-color:var(--demo);color:var(--demo)}
[data-ui-showcase-panel="left"] .ui-color-demo,[data-ui-showcase-panel="top"] .ui-color-demo{align-items:center;justify-content:flex-start;text-align:left}
[data-ui-showcase-panel="top"] .ui-color-demo{padding:var(--ui-space-short);align-items:center;justify-content:center;text-align:center}

/* Badges expansíveis; a linha replica a hierarquia final de Parcelas. */
.ui-status-accordion{overflow:hidden;border:0;border-radius:var(--ui-radius-short);background:transparent}
.ui-status-accordion .ui-status-row{border-radius:0}
.ui-status-accordion .ui-accordion-head::after{display:none}
.ui-status-row[aria-expanded=true] .ui-status-arrow{transform:rotate(90deg)}
.ui-status-arrow{transition:none}
.ui-status-position{display:inline-flex;align-items:baseline;gap:1px;color:#fff}
.ui-status-position strong{font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong)}
.ui-status-position small{font-size:var(--ui-fs-16);font-weight:var(--ui-weight-medium)}
[data-ui-badge-shape="square"] .ui-status-date,[data-ui-badge-shape="square"] .ui-status-badge{border-radius:var(--ui-radius-short)}
[data-ui-badge-shape="round"] .ui-status-date,[data-ui-badge-shape="round"] .ui-status-badge{border-radius:var(--ui-radius-long)}
.ui-status-detail{padding:0;background:var(--ui-level-4);color:var(--ui-tone-medium)}
.ui-status-detail>strong{display:block;padding:12px 15px 7px;color:#fff;font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong)}
[data-ui-installment-demo]{display:flex;flex-direction:column;background:transparent}
.ui-installment-demo-item{
 box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-height:58px;padding:8px var(--ui-space-short);
 display:grid;grid-template-columns:minmax(40px,52px) minmax(0,1fr) max-content minmax(72px,92px);
 gap:var(--ui-gap-short);align-items:center;border:0;color:var(--ui-tone-medium);
}
.ui-installment-demo-item:last-child{min-height:66px;padding-bottom:16px}
.ui-installment-demo-item>*{min-width:0}
.ui-installment-demo-item>strong{color:#fff;font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong)}
.ui-installment-demo-item time{color:var(--ui-tone-medium);font-size:var(--ui-fs-14);font-weight:var(--ui-weight-medium);white-space:nowrap}
.ui-installment-demo-value{display:flex;align-items:baseline;justify-content:flex-end;gap:4px;white-space:nowrap}
.ui-installment-demo-value small{color:var(--ui-tone-faded);font-size:var(--ui-font-small);font-weight:var(--ui-weight-medium)}
.ui-installment-demo-value b{color:#fff;font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong)}
.ui-installment-demo-action{width:100%;min-width:0;max-width:92px;min-height:34px;padding:6px 8px;border:1.5px solid var(--row-readable);border-radius:var(--ui-radius-long);background:transparent;color:var(--row-readable);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);cursor:pointer}



/* A própria referência consome o contrato do tema, sem superfícies paralelas. */
.ui-model-shell{display:flex;flex-direction:column;gap:var(--ui-gap-medium)}
.ui-panel{--ui-panel-surface:var(--ui-level-3);box-sizing:border-box;width:100%;container-type:inline-size;min-width:0;margin:0;padding:0;gap:0;border:0;border-radius:var(--ui-radius-medium);background:var(--ui-panel-surface);box-shadow:var(--ui-shadow-card)}
/* Safari: auto-fit e inline-size containment no mesmo elemento colapsam as trilhas.
   A grade distribui a largura; consultas de tamanho permanecem nos painéis filhos. */
.ui-main-card-grid{box-sizing:border-box;width:100%;min-width:0;margin:0;padding:0;container-type:normal;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));align-content:start;gap:var(--ui-gap-short)}
.ui-panel-group,.ui-structural-slot{box-sizing:border-box;width:100%;min-width:0;margin:0;padding:0;gap:0;border:0;border-radius:0;background:var(--ui-panel-surface);box-shadow:none}
.ui-panel-stack{display:flex;flex-direction:column;gap:0}
.ui-panel-stack>.ui-panel-heading.is-inside,.ui-panel-stack>.ui-panel-body{min-width:0;width:100%;margin:0}
.ui-panel-stack>.ui-panel-body{border:0;background:var(--ui-panel-surface);box-shadow:none}
.ui-panel-stack>.ui-panel-body:not(.ui-panel-content){padding:0}
.ui-panel.is-edge-to-edge{padding:0;gap:0}
.ui-panel.is-unframed{padding:0;border-radius:0;background:transparent;box-shadow:none}
.ui-panel-head{box-sizing:border-box;width:100%;min-width:0;min-height:var(--ui-action-size);margin:0;padding:0;display:flex;align-items:center;justify-content:space-between;gap:var(--ui-gap-short);background:var(--ui-panel-surface)}
.ui-panel-content{box-sizing:border-box;width:100%;min-width:0;margin:0;padding:var(--ui-panel-content-padding);display:flex;flex-direction:column;gap:var(--ui-gap-short);border:0;background:var(--ui-panel-surface);box-shadow:none}
.ui-panel-content.is-hierarchy{padding:var(--ui-panel-content-padding) 0 0;gap:0}
.ui-panel-content.is-flush{padding:0;gap:0}
.ui-section.ui-panel>.ui-section-head{padding:0;border-bottom:0;justify-content:flex-start}
.ui-section.ui-panel>.ui-section-head::after{display:none}
.ui-section.ui-panel>:is(.ui-panel,.ui-panel-group,.ui-form):not(.ui-panel-content){box-sizing:border-box;width:100%;min-width:0;margin:0;padding:0;gap:0;border:0;border-radius:0;background:var(--ui-panel-surface);box-shadow:none}
.page-dominios .domain-table-panel .domain-table th:first-child,.page-dominios .domain-table-panel .domain-table td:first-child{padding-inline-start:var(--ui-data-inline-space)}
.page-dominios .domain-table-panel .domain-table th:last-child,.page-dominios .domain-table-panel .domain-table td:last-child{padding-inline-end:var(--ui-data-inline-space);text-align:right}
.page-dominios .domain-table-panel .domain-table-badge-col{width:calc(max(var(--ui-domain-badge-width),var(--ui-domain-badge-min-width)) + var(--ui-data-inline-space))}
.ui-domain-abbr-badge{box-sizing:border-box;width:var(--ui-domain-badge-width);min-width:var(--ui-domain-badge-min-width);max-width:100%;height:var(--ui-button-standard-h);min-height:var(--ui-button-standard-h);justify-content:center;flex-wrap:nowrap;white-space:nowrap;overflow:hidden}
.ui-domain-abbr-badge>span:last-child{min-width:var(--ui-domain-abbr-text-width);white-space:nowrap;overflow-wrap:normal;word-break:normal}
.ui-domain-logo.ui-domain-abbr-badge{width:var(--ui-domain-badge-width);height:var(--ui-button-standard-h);min-height:var(--ui-button-standard-h);padding:var(--ui-badge-small-padding-y) var(--ui-action-padding-x);display:inline-flex;align-items:center;gap:var(--ui-gap-short)}
.ui-domain-abbr-icon{width:calc(var(--ui-action-icon-size) - 2px);height:calc(var(--ui-action-icon-size) - 2px);flex:0 0 calc(var(--ui-action-icon-size) - 2px);display:grid;place-items:center;color:var(--ui-tone-strong)}
.ui-domain-abbr-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:var(--ui-icon-stroke-width)}
.ui-panel-heading{min-width:0;display:flex;align-items:center;gap:var(--ui-gap-short);color:var(--ui-tone-strong)}
.ui-panel-heading.is-inside{width:max-content;max-width:100%;min-height:var(--ui-action-size);padding:var(--ui-space-medium) var(--ui-action-padding-x);border-radius:var(--ui-radius-short);overflow:hidden;background:var(--ui-accent)}
.ui-panel-heading.is-outside{width:100%;margin-bottom:var(--ui-space-medium)}
.ui-panel-title-icon{width:var(--ui-action-icon-size);height:var(--ui-action-icon-size);flex:0 0 var(--ui-action-icon-size);display:inline-flex;align-items:center;justify-content:center;color:var(--ui-tone-strong)}
.ui-panel-heading.is-outside .ui-panel-title-icon{width:var(--ui-action-size);height:var(--ui-action-size);flex-basis:var(--ui-action-size);border-radius:var(--ui-radius-short);background:var(--ui-accent)}
.ui-panel-title-icon svg{width:var(--ui-action-icon-size);height:var(--ui-action-icon-size)}
.ui-panel-title-label{min-width:0;overflow:hidden;color:var(--ui-tone-strong);font-size:var(--ui-fs-16);font-weight:var(--ui-weight-medium);text-overflow:ellipsis;white-space:nowrap}
.ui-panel-title-models{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:var(--ui-gap-short)}
.ui-panel-title-sample{min-height:88px;display:flex;flex-direction:column;gap:0;color:var(--ui-tone-medium)}
.ui-table-model-panel{display:flex;flex-direction:column;gap:var(--ui-gap-short)}
.ui-surface-tone-icon{background:transparent}
.ui-status-library,.ui-icon-library{margin:0}
.ui-main-nav{gap:var(--ui-gap-short);background:var(--ui-surface-header)}
.ui-nav-link{font-weight:var(--ui-weight-medium)}
.ui-main-nav .ui-nav-link{color:var(--ui-tone-strong)}
.ui-main-nav .ui-nav-link svg{color:var(--ui-accent-readable)}
.ui-main-nav .ui-nav-link.is-active{background:var(--ui-accent);color:var(--ui-tone-strong);font-weight:var(--ui-weight-strong)}
.ui-main-nav .ui-nav-link.is-active svg{color:var(--ui-tone-strong)}
.ui-main-nav.ui-program-nav{position:static;top:auto;z-index:auto}
/* Cabeçalho de todos os programas: composição de Visitas, sem medidas locais. */
.ui-header.ui-program-header{min-height:58px;padding:var(--ui-space-short) var(--ui-space-medium);gap:var(--ui-gap-short);flex-wrap:wrap;background:var(--ui-level-3)}
.ui-program-header .ui-header-title{margin:0;gap:var(--ui-gap-short);font-size:var(--ui-font-large);font-weight:var(--ui-weight-strong);color:var(--ui-tone-strong);line-height:1.2}
.ui-program-header :where(.ui-header-title) svg{display:block;flex:0 0 var(--ui-header-brand-icon-size)}
.ui-program-header .ui-header-actions{max-width:100%;margin-left:auto;gap:var(--ui-gap-short)}
.ui-program-header .ui-header-return-group{min-width:0;gap:var(--ui-gap-short)}
.ui-program-header .ui-role-pill{height:auto;min-height:var(--ui-header-badge-size);min-width:0;max-width:100%;text-align:center;white-space:normal;overflow-wrap:anywhere}
.ui-program-header .ui-header-tool{border-radius:var(--ui-radius-short);text-decoration:none}
.ui-program-header :where(.ui-panel-return){padding:0}
.ui-program-header .ui-panel-return svg{display:block;width:14px;height:14px;stroke-width:var(--ui-icon-stroke-width)}
.ui-program-header :is(.ui-header-tool,.ui-panel-return,.ui-role-pill):focus-visible{outline:var(--ui-outline-width) solid var(--ui-focus);outline-offset:2px}
.ui-program-nav .ui-nav-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 var(--ui-action-icon-size);width:var(--ui-action-icon-size);height:var(--ui-action-icon-size)}
.ui-card,.ui-form,.ui-profile-card{background:var(--ui-level-4)}
.ui-status-accordion,.ui-status-accordion .ui-status-row{background:transparent}
.ui-input,.ui-textarea,.ui-upload-name,.ui-select-control,.ui-dropdown-toggle,.ui-field-button{background:var(--ui-level-2)}
.ui-table-wrap{background:var(--ui-level-3)}
.ui-table th{background:var(--ui-level-4)}
.ui-table .is-sticky{background:var(--ui-level-3)}
.ui-table th.is-sticky{background:var(--ui-level-4)}
.ui-section,.ui-scroll-target{scroll-margin-top:130px}
.ui-section-head h2{font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong)}

/* Tipografia e ritmo: leitura horizontal, sem faixas decorativas concorrentes. */
.ui-typography-card{display:flex;flex-direction:column;gap:var(--ui-gap-short)}
.ui-type-scale{display:flex;align-items:baseline;gap:var(--ui-gap-medium);flex-wrap:wrap}
.ui-tone-scale{margin-top:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--ui-gap-short)}
.ui-tone-sample{display:flex;align-items:center;gap:var(--ui-gap-short)}
.ui-tone-sample svg{width:16px;height:16px;flex:0 0 16px}
.ui-tone-sample span{display:flex;min-width:0;flex-direction:row;align-items:baseline;gap:var(--ui-gap-short);white-space:nowrap}
.ui-tone-sample strong,.ui-tone-sample small{font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium)}
.ui-tone-sample i{display:none}
.ui-rhythm-lines{display:flex;flex-direction:column;gap:var(--ui-gap-short);color:var(--ui-tone-medium)}
.ui-rhythm-lines p{font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium)}
.ui-rhythm-lines strong{color:var(--ui-tone-strong);font-weight:var(--ui-weight-strong)}
.ui-typography-contract{padding:var(--ui-panel-content-padding);display:flex;flex-direction:column;gap:var(--ui-gap-short)}
.ui-typography-contract p{display:flex;align-items:baseline;gap:var(--ui-gap-medium);flex-wrap:wrap;color:var(--ui-tone-medium);font-size:var(--ui-font-small);font-weight:var(--ui-weight-medium)}
.ui-typography-contract p>strong{min-width:72px;color:var(--ui-tone-strong);font-size:var(--ui-font-medium);font-weight:var(--ui-weight-strong)}
.ui-type-small{font-size:var(--ui-font-small)}
.ui-type-medium{font-size:var(--ui-font-medium)}
.ui-type-large{font-size:var(--ui-font-large)}
.ui-weight-weak{font-weight:var(--ui-weight-weak)}
.ui-weight-medium{font-weight:var(--ui-weight-medium)}
.ui-weight-strong{font-weight:var(--ui-weight-strong)}

/* Aplicações dos tons claros: cada tab apresenta um único modelo. */
.ui-reference-tabs{margin-top:var(--ui-gap-medium)}
.ui-reference-panel{display:grid;grid-template-columns:repeat(auto-fit,minmax(40px,1fr));gap:var(--ui-gap-short);align-items:center}
.ui-reference-font{min-height:40px;display:grid;place-items:center;color:var(--demo);font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong)}
.ui-reference-line{height:2px;border-radius:var(--ui-radius-long);background:var(--demo)}
.ui-reference-icon{width:40px;height:40px;justify-self:center;display:grid;place-items:center;border:1.5px solid var(--demo);border-radius:var(--ui-radius-short);color:var(--demo);background:color-mix(in srgb,var(--demo) 8%,transparent)}
.ui-reference-icon.is-circle{border-radius:var(--ui-radius-long)}
.ui-reference-icon svg{width:var(--ui-action-icon-size);height:var(--ui-action-icon-size)}

/* Biblioteca de ícones: quatro presets alteram somente o traço dos desenhos. */
.ui-icon-tone-tablist{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,120px),1fr));gap:var(--ui-gap-short);margin-bottom:var(--ui-gap-medium)}
.ui-icon-tone-tab{width:100%;min-width:0;min-height:var(--ui-action-size);padding:var(--ui-action-padding-y) var(--ui-action-padding-x);border:1.5px solid var(--ui-line-strong);border-radius:var(--ui-radius-short);display:inline-flex;align-items:center;justify-content:flex-start;gap:var(--ui-action-gap);background:var(--ui-level-3);color:var(--ui-tone-medium);font-size:var(--ui-action-font-size);font-weight:var(--ui-action-font-weight);text-align:left;cursor:pointer;white-space:normal}
.ui-icon-tone-tab::before{content:"";width:18px;height:18px;flex:0 0 18px;border-radius:var(--ui-radius-short);background:var(--tone)}
.ui-icon-tone-tab.is-spectrum::before{background:conic-gradient(var(--ui-red-readable),var(--ui-orange-readable),var(--ui-amber-readable),var(--ui-green-readable),var(--ui-cyan-readable),var(--ui-blue-readable),var(--ui-purple-readable),var(--ui-pink-readable),var(--ui-slate-readable),var(--ui-red-readable))}
.ui-icon-tone-tab.is-active{border-color:var(--ui-line-strong);background:var(--ui-level-4);box-shadow:none;color:var(--ui-tone-strong)}
[data-ui-icon-tone="strong"] .ui-icon-sample>.ui-icon-btn{color:var(--ui-tone-strong)}
[data-ui-icon-tone="medium"] .ui-icon-sample>.ui-icon-btn{color:var(--ui-tone-medium)}
[data-ui-icon-tone="faded"] .ui-icon-sample>.ui-icon-btn{color:var(--ui-tone-faded)}
[data-ui-icon-tone="colors"] .ui-icon-sample:nth-child(9n+1)>.ui-icon-btn{color:var(--ui-red-readable)}
[data-ui-icon-tone="colors"] .ui-icon-sample:nth-child(9n+2)>.ui-icon-btn{color:var(--ui-orange-readable)}
[data-ui-icon-tone="colors"] .ui-icon-sample:nth-child(9n+3)>.ui-icon-btn{color:var(--ui-amber-readable)}
[data-ui-icon-tone="colors"] .ui-icon-sample:nth-child(9n+4)>.ui-icon-btn{color:var(--ui-green-readable)}
[data-ui-icon-tone="colors"] .ui-icon-sample:nth-child(9n+5)>.ui-icon-btn{color:var(--ui-cyan-readable)}
[data-ui-icon-tone="colors"] .ui-icon-sample:nth-child(9n+6)>.ui-icon-btn{color:var(--ui-blue-readable)}
[data-ui-icon-tone="colors"] .ui-icon-sample:nth-child(9n+7)>.ui-icon-btn{color:var(--ui-purple-readable)}
[data-ui-icon-tone="colors"] .ui-icon-sample:nth-child(9n+8)>.ui-icon-btn{color:var(--ui-pink-readable)}
[data-ui-icon-tone="colors"] .ui-icon-sample:nth-child(9n)>.ui-icon-btn{color:var(--ui-slate-readable)}

/* As três linhas do perfil compartilham exatamente o mesmo intervalo vertical. */
.ui-profile-card-body{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:repeat(3,32px);align-content:center;row-gap:0}
.ui-profile-card-meta{display:contents}
.ui-profile-card-title,.ui-profile-percent,.ui-profile-contact-row{min-height:32px;align-items:center}
.ui-profile-percent{display:inline-flex}
.ui-profile-actions .ui-icon-btn{width:var(--ui-action-size);height:var(--ui-action-size);min-width:var(--ui-action-size);min-height:var(--ui-action-size)}

/* Blocos de card: ícone, texto e dois indicadores quadrados em quatro colunas. */
.ui-metric-card{min-height:0;padding:var(--ui-space-long);grid-template-columns:52px minmax(0,1fr) 52px 52px;grid-template-rows:52px;gap:var(--ui-gap-medium)}
.ui-metric-icon{grid-column:1;grid-row:1;width:52px;height:52px;align-self:center}
.ui-metric-copy{grid-column:2;grid-row:1;height:52px;padding:0;justify-content:center;overflow:hidden;background:transparent}
.ui-metric-label,.ui-metric-sub{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ui-metric-number{width:52px;height:52px;display:grid;place-items:center;border-radius:var(--ui-radius-medium);background:var(--ui-surface-card);color:var(--ui-tone-strong);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-strong);line-height:1;text-align:center}
.ui-choice-mark{background:none!important}
.ui-choice{min-height:34px;padding:0;border:0;border-radius:0;background:none!important}
.ui-choice-group{display:flex;align-items:center;flex-wrap:wrap;column-gap:var(--ui-gap-long);row-gap:var(--ui-gap-medium)}
.ui-switch,.ui-switch[aria-checked=true]{border:0}
.ui-choice input:checked+.ui-choice-mark{background:none!important;border-color:var(--ui-green-readable)}
.ui-choice-checkbox input:checked+.ui-choice-mark::after{border-color:var(--ui-green-readable)}
.ui-choice-radio input:checked+.ui-choice-mark::after{background:var(--ui-green-readable)}
.ui-choice-mark{border-width:var(--ui-outline-width)}
.ui-choice-checkbox .ui-choice-mark::after{border-left-width:var(--ui-outline-width);border-bottom-width:var(--ui-outline-width)}
.ui-choice.ui-choice-operational{position:relative;width:var(--ui-action-size);height:var(--ui-action-size);min-width:var(--ui-action-size);min-height:var(--ui-action-size);margin:0;padding:0;display:inline-flex;align-items:center;justify-content:center;overflow:hidden;border:0;border-radius:0;background:transparent;color:var(--ui-tone-faded)}
.ui-choice.ui-choice-operational>input[type="checkbox"]{position:absolute!important;inset:0!important;z-index:1;width:100%!important;height:100%!important;min-height:0!important;margin:0!important;padding:0!important;border:0!important;opacity:0;cursor:pointer}
.ui-choice-checkbox.ui-choice-operational .ui-choice-mark{width:20px;height:20px;flex:0 0 20px;color:var(--ui-tone-faded);border-width:var(--ui-operational-icon-stroke-width);border-color:currentColor}
.ui-choice-checkbox.ui-choice-operational .ui-choice-mark{pointer-events:none}
.ui-choice-checkbox.ui-choice-operational .ui-choice-mark::after{width:7px;height:3px;opacity:1;border-left-width:var(--ui-operational-icon-stroke-width);border-bottom-width:var(--ui-operational-icon-stroke-width);border-color:currentColor}
.ui-choice-checkbox.ui-choice-operational input:checked+.ui-choice-mark{color:var(--ui-green-readable);border-color:currentColor}
.ui-choice-checkbox.ui-choice-operational input:checked+.ui-choice-mark::after{border-color:currentColor}
.ui-feedback-models{display:flex;flex-direction:column;gap:var(--ui-gap-short)}
.ui-feedback-models .ui-card{display:flex;flex-direction:column;gap:var(--ui-gap-medium)}

/* AJAX/DOM: regras operacionais apresentadas com os mesmos cards e tons do tema. */
.ui-ajax-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--ui-gap-short)}
.ui-ajax-rule{min-width:0;padding:var(--ui-space-long);border-radius:var(--ui-radius-medium);display:grid;grid-template-columns:40px minmax(0,1fr);gap:var(--ui-gap-medium);align-items:start;background:var(--ui-level-3);box-shadow:var(--ui-shadow-card)}
.ui-ajax-rule-icon{width:40px;height:40px;display:grid;place-items:center;border-radius:var(--ui-radius-short);background:var(--ui-level-4);color:var(--ui-tone-medium)}
.ui-ajax-rule-icon svg{width:var(--ui-action-icon-size);height:var(--ui-action-icon-size)}
.ui-ajax-rule h3{color:var(--ui-tone-strong);font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong)}
.ui-ajax-rule p{margin-top:var(--ui-space-short);color:var(--ui-tone-medium);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);line-height:1.45}
.ui-ajax-rule code{color:var(--ui-blue-readable);font:inherit;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}

/* Componentes semânticos consomem exclusivamente a paleta oficial. */
.ui-role-pill{border-color:var(--ui-role-readable);background:transparent;color:var(--ui-role-readable)}
.ui-icon-btn.is-danger:hover{border-color:var(--ui-red-readable);color:var(--ui-red-readable)}
.ui-field.is-error .ui-help{color:var(--ui-red-readable)}
.ui-switch[aria-checked=true]{border-color:var(--ui-green-readable);background:var(--ui-green-500)}
.ui-crumb{border-color:var(--ui-green-readable)}
.ui-drill-row,.ui-code{color:var(--ui-tone-medium)}
.ui-metric-card.is-red{order:1}.ui-metric-card.is-orange{order:2}.ui-metric-card.is-amber{order:3}
.ui-metric-card.is-green{order:4}.ui-metric-card.is-cyan{order:5}.ui-metric-card.is-blue{order:6}
.ui-metric-card.is-purple{order:7}.ui-metric-card.is-pink{order:8}.ui-metric-card.is-slate{order:9}

/* Drilldown hierárquico: composição inspirada nas referências, dimensões exclusivas do tema. */
.ui-drill-caption{margin-bottom:var(--ui-space-medium);color:var(--ui-tone-strong);font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong)}
.ui-drill-root{--ui-drill-icon:var(--ui-action-icon-size);--ui-drill-meta:calc(var(--ui-badge-small-size) + var(--ui-space-long));--ui-drill-arrow:var(--ui-action-icon-size);gap:var(--ui-gap-medium)}
.ui-drill-root>.ui-accordion{border-radius:var(--ui-radius-medium);overflow:hidden;box-shadow:var(--ui-shadow-card)}
.ui-drill-group{margin:0;padding:0;gap:0}
.ui-drill-group>.ui-accordion{border-radius:0;overflow:hidden;box-shadow:none}
.ui-drill-group>.ui-accordion+.ui-accordion{border-top:1px solid var(--ui-line)}
.ui-drill-root .ui-accordion-head{
 min-height:var(--ui-hierarchy-row-size);padding:var(--ui-space-short) var(--ui-space-medium);
 grid-template-columns:var(--ui-drill-icon) minmax(0,1fr) var(--ui-drill-meta) var(--ui-drill-arrow);
 gap:var(--ui-gap-medium);align-items:center;
}
.ui-drill-root .ui-accordion-head::after{display:none}
.ui-drill-level-1{background:var(--ui-level-3)}
.ui-drill-level-2{background:var(--ui-level-4)}
.ui-drill-level-3{background:var(--ui-level-5)}
.ui-drill-level-1>.ui-accordion-head{background:var(--ui-level-3)}
.ui-drill-level-2>.ui-accordion-head{background:var(--ui-level-4)}
.ui-drill-level-3>.ui-accordion-head{background:var(--ui-level-5)}
.ui-accordion-icon{width:var(--ui-drill-icon);height:var(--ui-drill-icon);display:grid;place-items:center;background:transparent;color:var(--ui-tone-medium)}
.ui-accordion-icon::before{content:"";width:var(--ui-action-icon-size);height:var(--ui-action-icon-size);border:1px solid currentColor;border-radius:var(--ui-radius-short)}
.ui-drill-level-2>.ui-accordion-head .ui-accordion-icon::before{border-radius:50%}
.ui-drill-level-3>.ui-accordion-head .ui-accordion-icon::before{width:var(--ui-space-short);height:var(--ui-space-short);border:0;border-radius:var(--ui-radius-long);background:currentColor}
.ui-drill-level-3.ui-drill-static>.ui-accordion-head>.ui-accordion-meta{grid-column:3/5;justify-self:end;transform:none}
.ui-drill-level-3.ui-drill-static>.ui-accordion-head>.ui-accordion-arrow{display:none}
.ui-drill-root .ui-accordion-title{font-size:var(--ui-fs-13);font-weight:var(--ui-weight-strong)}
.ui-drill-root .ui-accordion-meta{width:var(--ui-drill-meta);justify-self:stretch;overflow:hidden;color:var(--ui-tone-medium);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);text-align:right;text-overflow:ellipsis;white-space:nowrap;transform:translateX(var(--ui-space-short))}
.ui-drill-count{width:var(--ui-badge-small-size);height:var(--ui-badge-small-size);margin-left:auto;border-radius:var(--ui-radius-short);display:grid;place-items:center;background:var(--ui-orange-500);color:var(--ui-tone-strong);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);font-variant-numeric:tabular-nums}
.ui-accordion-arrow{width:var(--ui-drill-arrow);height:var(--ui-drill-arrow);justify-self:end;color:var(--ui-tone-medium);transition:none}
.ui-drill-root .ui-accordion-head[aria-expanded=true] .ui-accordion-arrow{transform:rotate(90deg);color:var(--ui-tone-strong)}
.ui-drill-root .ui-accordion-body{margin:0;padding:0;background:transparent}
.ui-drill-root .ui-accordion-body-inner{margin:0;padding:0}
.ui-hierarchy-item>.ui-accordion-body,.ui-hierarchy-item>.ui-accordion-body>.ui-accordion-body-inner,.ui-hierarchy-item .ui-accordion-group,.ui-hierarchy-item .ui-accordion{box-sizing:border-box;width:100%;max-width:100%;margin-inline:0;padding-inline:0}
.ui-drill-detail{min-height:var(--ui-hierarchy-row-size);margin:0;padding:var(--ui-space-medium) var(--ui-space-medium) var(--ui-space-medium) calc(var(--ui-space-medium) + var(--ui-drill-icon) + var(--ui-gap-medium));display:flex;align-items:center;background:var(--ui-level-2);color:var(--ui-tone-medium);font-size:var(--ui-fs-13)}
.ui-drill-static>.ui-accordion-head{cursor:default}

/* Sanfonas de dados consolidadas no primeiro programa (Visitas). */
.ui-data-sections{gap:0;padding:0}
.ui-section.ui-panel>.ui-table-reference-panel:not(.ui-panel-content){--ui-accent:var(--ui-blue-500);--ui-accent-readable:var(--ui-blue-readable);box-sizing:border-box;width:100%;min-width:0;margin:0;padding:0;border:0;border-radius:0;display:flex;flex-direction:column;gap:0;background:var(--ui-panel-surface);box-shadow:none}
.ui-data-sections>.ui-section-accordion{width:100%;margin:0;overflow:hidden;border-radius:var(--ui-radius-short);background:transparent}
.ui-data-sections>.ui-section-accordion>.ui-accordion-head{box-sizing:border-box;min-height:var(--ui-hierarchy-compact-row-size);padding:var(--ui-space-short);grid-template-columns:minmax(0,1fr) max-content var(--ui-action-icon-size);gap:var(--ui-gap-medium);background:var(--ui-level-3)}
.ui-data-sections>.ui-section-accordion>.ui-accordion-head::after{display:none}
.ui-data-sections>.ui-section-accordion>.ui-accordion-head>.ui-accordion-arrow{width:var(--ui-action-icon-size);height:var(--ui-action-icon-size);color:var(--ui-tone-medium)}
.ui-data-sections>.ui-section-accordion>.ui-accordion-head[aria-expanded=true]>.ui-accordion-arrow{transform:rotate(90deg);color:var(--ui-tone-strong)}
.ui-data-sections>.ui-section-accordion>.ui-accordion-body{margin:0;padding:0;overflow-x:auto;background:var(--ui-level-3)}
.ui-section-total{min-width:var(--ui-badge-small-size);height:var(--ui-badge-small-size);min-height:var(--ui-badge-small-size);margin-inline:var(--ui-space-medium);padding:var(--ui-badge-small-padding-y) var(--ui-badge-small-padding-x);border:var(--ui-outline-width) solid var(--ui-accent-readable);border-radius:var(--ui-radius-short);display:inline-flex;align-items:center;justify-content:center;background:transparent;color:var(--ui-tone-medium);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);font-variant-numeric:tabular-nums;white-space:nowrap}
.ui-data-sections>.ui-section-accordion>.ui-section-static-head{grid-template-columns:minmax(0,1fr) max-content;cursor:default}
.ui-data-sections>.ui-section-accordion.is-fixed-open>.ui-accordion-body{display:block!important}
.ui-section-total.is-plain{min-width:0;height:auto;min-height:0;margin-inline:var(--ui-space-medium);padding:0;border:0;border-radius:0;background:transparent;color:var(--ui-tone-medium);font-size:var(--ui-fs-20);font-weight:var(--ui-weight-medium)}
.ui-data-sections [aria-busy=true]{cursor:wait}

/* Tabela hierárquica: três primeiros níveis no mesmo tom, eleva e regride. */
.ui-hierarchy-table tr[data-ui-tree-level="0"] td,.ui-hierarchy-table tr[data-ui-tree-level="0"] .is-sticky,.ui-hierarchy-table tr[data-ui-tree-level="1"] td,.ui-hierarchy-table tr[data-ui-tree-level="1"] .is-sticky,.ui-hierarchy-table tr[data-ui-tree-level="2"] td,.ui-hierarchy-table tr[data-ui-tree-level="2"] .is-sticky{background:var(--ui-level-3)!important}
.ui-hierarchy-table tr[data-ui-tree-level="3"] td,.ui-hierarchy-table tr[data-ui-tree-level="3"] .is-sticky{background:var(--ui-level-4)!important}
.ui-hierarchy-table tr[data-ui-tree-level="4"] td,.ui-hierarchy-table tr[data-ui-tree-level="4"] .is-sticky{background:var(--ui-level-5)!important}
.ui-hierarchy-table .is-tree{max-width:150px}
.ui-hierarchy-table .ui-table-tree-toggle{width:max-content;max-width:150px;grid-template-columns:max-content minmax(0,max-content) max-content;gap:var(--ui-gap-short)}
.ui-hierarchy-table .ui-table-tree-arrow,.ui-hierarchy-table .ui-table-tree-toggle[aria-expanded=true] .ui-table-tree-arrow{color:var(--ui-tone-medium)}
.ui-hierarchy-table .ui-table thead tr,
.ui-hierarchy-table .ui-table tbody tr,
.ui-hierarchy-table .ui-table th,
.ui-hierarchy-table .ui-table td{height:var(--ui-hierarchy-compact-row-size)}
.ui-hierarchy-detail{margin:0;padding:0;overflow-x:auto;background:inherit}
.ui-hierarchy-detail>.ui-table-wrap,.ui-hierarchy-detail>.tbl-wrap{margin:0;border:0;border-radius:0;background:inherit;box-shadow:none}

/* Tabela mensal AJAX oficial copiada da sessão Visitas. */
.ui-async-tree-wrap{container-type:inline-size;overflow-anchor:none;scroll-behavior:auto}
[data-ui-async-tree]{--ui-table-first-column:108px;--ui-async-accent:var(--ui-accent);--ui-async-accent-readable:var(--ui-accent-readable);font-variant-numeric:tabular-nums}
[data-ui-async-tree].ui-month-table{table-layout:fixed}
[data-ui-async-tree] .is-tree{width:var(--ui-table-first-column)!important;min-width:var(--ui-table-first-column)!important;max-width:var(--ui-table-first-column)!important}
[data-ui-async-tree] th,[data-ui-async-tree] td{height:var(--ui-hierarchy-compact-row-size);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium)}
[data-ui-async-tree] td:not(.is-tree){color:var(--ui-tone-medium)}
[data-ui-async-tree] .ui-table-tree-label{overflow:visible;color:var(--ui-tone-strong);text-overflow:clip;white-space:normal;overflow-wrap:break-word;word-break:normal}
[data-ui-async-tree] .ui-table-tree-label.is-ui-async-measuring{width:max-content!important;max-width:none!important;justify-self:start!important;white-space:nowrap!important;overflow-wrap:normal!important;word-break:normal!important}
[data-ui-async-tree] .ui-async-tree-toggle{width:100%;max-width:100%;grid-template-columns:calc(var(--ui-action-icon-size) + var(--ui-space-short)) minmax(0,1fr) calc(var(--ui-action-icon-size) - 3px)}
[data-ui-async-tree] .ui-async-tree-toggle.is-domain{grid-template-columns:minmax(0,1fr) calc(var(--ui-action-icon-size) - 3px)}
[data-ui-async-tree] .ui-table-tree-arrow{width:calc(var(--ui-action-icon-size) - 3px);height:calc(var(--ui-action-icon-size) - 3px);justify-self:end;color:var(--ui-tone-medium)}
[data-ui-async-tree] .ui-table-tree-arrow svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:var(--ui-icon-stroke-width);stroke-linecap:round;stroke-linejoin:round}
.ui-async-domain-badge{height:var(--ui-action-size);min-height:var(--ui-action-size);max-width:100%;padding:var(--ui-badge-small-padding-y) var(--ui-action-padding-x);border-radius:var(--ui-radius-short);display:inline-flex;align-items:center;gap:var(--ui-gap-short);overflow:hidden;background:var(--ui-async-color);color:var(--ui-tone-strong);line-height:1}
.ui-async-domain-icon,.ui-async-tree-icon{width:calc(var(--ui-action-icon-size) - 2px);height:calc(var(--ui-action-icon-size) - 2px);flex:0 0 calc(var(--ui-action-icon-size) - 2px);display:grid;place-items:center;color:var(--ui-async-readable)}
.ui-async-domain-icon{color:var(--ui-tone-strong)}
.ui-async-domain-icon svg,.ui-async-tree-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:var(--ui-icon-stroke-width);stroke-linecap:round;stroke-linejoin:round}
.ui-async-domain-badge .ui-table-tree-label,.ui-async-tree-row.is-category .ui-table-tree-label{color:var(--ui-tone-strong);font-weight:var(--ui-weight-medium)}
[data-ui-async-tree] .ui-async-tree-dot::before{inset:var(--ui-space-short);width:auto;height:auto;top:var(--ui-space-short);border:0;border-radius:var(--ui-radius-long);background:var(--ui-async-readable);transform:none}
.ui-async-month-link{padding:0;border:0;background:transparent;color:var(--ui-tone-medium);font:inherit;font-weight:var(--ui-weight-medium);cursor:pointer}
.ui-async-month-link:hover,.ui-async-month-link[aria-expanded=true]{color:var(--ui-async-readable)}
.ui-async-month-link.is-zero{color:var(--ui-tone-faded)}
.ui-async-month-link[aria-expanded=true]{min-width:var(--ui-badge-small-size);height:var(--ui-badge-small-size);min-height:var(--ui-badge-small-size);padding:var(--ui-badge-small-padding-y) var(--ui-badge-small-padding-x);border-radius:var(--ui-radius-short);display:inline-flex;align-items:center;justify-content:center;background:var(--ui-async-color);color:var(--ui-tone-strong);font-size:var(--ui-fs-16);font-weight:var(--ui-weight-medium);line-height:1}
.ui-async-tree-loading td{height:calc(var(--ui-hierarchy-row-size) * 3)!important;background:var(--ui-level-3)!important;color:var(--ui-tone-faded);text-align:center}
[data-ui-async-tree] .ui-async-calendar-row>td{position:relative;height:auto!important;padding:0!important;border:0!important;background:var(--ui-level-3)!important}
.ui-async-calendar-shell{position:sticky;left:0;z-index:3;width:100cqw;max-width:none;padding:0;box-sizing:border-box;background:var(--ui-level-3);transform:none!important;transition:none!important}
.ui-async-calendar{width:100%;max-width:none;min-width:0;border:0;border-collapse:collapse;border-spacing:0;background:transparent;box-shadow:none;table-layout:fixed}
.ui-async-calendar caption{padding:0;padding-inline-start:calc(((100% / 7) - 3ch) / 2 - 2px);color:var(--ui-tone-strong);font-size:var(--ui-fs-16);font-weight:var(--ui-weight-medium);text-align:left}
.ui-async-calendar caption span{color:var(--ui-tone-faded)}
.ui-async-calendar col{width:calc(100% / 7)}
.ui-month-table[data-ui-async-tree] .ui-async-calendar>thead>tr>th,
.ui-month-table[data-ui-async-tree] .ui-async-calendar>tbody>tr>td{
 width:calc(100% / 7)!important;min-width:0!important;max-width:none!important;height:auto!important;
 padding:3px 2px!important;border:0!important;background:transparent!important;text-align:center!important
}
.ui-async-calendar th{color:var(--ui-tone-strong);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium)}
.ui-async-calendar tbody td{height:38px!important}
.ui-async-calendar-badge{width:100%;height:var(--ui-action-size);min-height:var(--ui-action-size);padding:7px 2px;border:0;border-radius:calc(var(--ui-radius-short) / 2);box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--ui-level-3)}
.ui-async-calendar-badge.is-filled{background:var(--ui-async-accent)}
.ui-async-calendar-day{display:block;color:var(--ui-tone-faded);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);line-height:1}
.ui-async-calendar-badge.is-filled .ui-async-calendar-day{color:color-mix(in srgb,var(--ui-async-accent-readable) 70%,var(--ui-tone-strong));font-weight:var(--ui-weight-weak)}
.ui-async-calendar-value{display:block;margin-top:3px;color:var(--ui-tone-faded);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);line-height:1}
.ui-async-calendar-badge.is-filled .ui-async-calendar-value{color:var(--ui-tone-strong)}
.ui-async-calendar-badge.is-zero{justify-content:flex-start}
.ui-async-calendar-badge.is-zero .ui-async-calendar-value{display:none}
[data-ui-async-tree] .ui-month-total-badge{background:var(--ui-accent);color:var(--ui-tone-strong)}

/* Modelo exato de Mais Visitados do Dashboard do programa Visitas. */
.ui-async-rank-wrap{width:100%;min-width:0;overflow:hidden;border:0;border-radius:var(--ui-radius-short);background:transparent;box-shadow:none}
.ui-async-rank-table{width:100%;min-width:0!important;display:block;table-layout:fixed;border-collapse:collapse;font-variant-numeric:tabular-nums}
.ui-async-rank-table colgroup{display:none}
.ui-async-rank-table tbody{display:block;width:100%}
.ui-async-rank-table .ui-async-rank-row{width:100%;display:grid;grid-template-columns:var(--ui-table-first-column) minmax(0,1fr)}
.ui-async-rank-table .is-tree{width:auto!important;min-width:0!important;max-width:none!important;padding-inline:var(--ui-space-short) 0!important}
.ui-async-rank-table td:nth-child(2),.ui-async-rank-table td:last-child{width:auto!important;padding-inline:0 var(--ui-space-short)!important;text-align:right}
.ui-async-rank-table .ui-async-rank-row{position:relative;cursor:pointer}
.ui-async-rank-table .ui-async-rank-row>.is-tree>.ui-async-tree-toggle::after{content:"";position:absolute;inset:0;z-index:2;cursor:pointer}
.ui-async-rank-table .ui-async-rank-row td{height:var(--ui-hierarchy-compact-row-size);padding-block:var(--ui-space-short)}
.ui-async-rank-table .ui-async-rank-value{display:flex;align-items:center;justify-content:flex-end}
.ui-async-rank-table .ui-async-tree-toggle{color:var(--ui-tone-strong);text-decoration:none}
.ui-table-reference-panel .ui-section-total.is-plain{font-size:var(--ui-fs-16)}
.ui-async-rank-table .ui-month-total-badge{min-width:50px;padding-inline:var(--ui-space-medium);background:var(--ui-blue-500);color:var(--ui-tone-strong)}
.ui-async-rank-table .ui-async-tree-row.is-category .ui-table-tree-label{color:var(--ui-tone-strong)!important}
.ui-async-rank-table tr[data-ui-tree-level="1"] td,.ui-async-rank-table tr[data-ui-tree-level="1"] .is-sticky,.ui-async-rank-table tr[data-ui-tree-level="2"] td,.ui-async-rank-table tr[data-ui-tree-level="2"] .is-sticky{background:var(--ui-level-3)!important}
.ui-async-rank-table tr[data-ui-tree-level="3"] td,.ui-async-rank-table tr[data-ui-tree-level="3"] .is-sticky{background:var(--ui-level-4)!important}
.ui-async-rank-table tr[data-ui-tree-level="4"] td,.ui-async-rank-table tr[data-ui-tree-level="4"] .is-sticky{background:var(--ui-level-5)!important}
.ui-async-rank-table tr[data-ui-tree-level="3"] .ui-async-tree-dot::before{inset:1px;border:var(--ui-outline-width) solid var(--ui-async-readable);border-radius:var(--ui-radius-long);background:transparent;transform:none}
.ui-async-rank-table .ui-async-tree-loading{width:100%;display:block}
.ui-async-rank-table .ui-async-tree-loading td{width:100%;display:block;box-sizing:border-box}

.ui-ajax-example{margin:0;padding:var(--ui-panel-content-padding);display:flex;flex-direction:column;gap:var(--ui-gap-short)}
.ui-ajax-example .ui-code{padding:var(--ui-space-medium);border-radius:var(--ui-radius-medium);background:var(--ui-level-4);color:var(--ui-tone-medium);font-size:var(--ui-fs-13)}

/* Estados e componentes auxiliares seguem somente níveis adjacentes. */
.ui-btn-neutral,.ui-btn-soft,.ui-icon-btn:hover{background:var(--ui-level-4)}
.ui-showcase-tab,.ui-pagination-btn{background:var(--ui-level-3)}
.ui-select-popover,.ui-dropdown-menu,.ui-time-popover{background:var(--ui-level-2)}
.ui-select-option:hover,.ui-select-option:focus-visible,.ui-dropdown-item:hover,.ui-dropdown-item:focus-visible,.ui-time-option:hover,.ui-time-option:focus-visible,.ui-select-option.is-selected,.ui-time-option.is-selected{background:var(--ui-level-3)}
.ui-field.is-locked .ui-input,.ui-input[readonly],.ui-input:disabled,.ui-field-button:disabled{background:var(--ui-level-2)}
.ui-switch{background:var(--ui-level-4)}
.ui-table tbody tr:hover td{background:var(--ui-level-4)}
.ui-table .is-status .ui-badge{border:0;color:var(--ui-tone-strong);font-weight:var(--ui-weight-medium)}
.ui-table .is-status .ui-badge-green{background:var(--ui-green-500);color:var(--ui-tone-strong)}
.ui-table .is-status .ui-badge-orange{background:var(--ui-orange-500);color:var(--ui-tone-strong)}
.ui-table .is-status .ui-badge-red{background:var(--ui-red-500);color:var(--ui-tone-strong)}
.ui-table .is-status .ui-badge-blue{background:var(--ui-blue-500);color:var(--ui-tone-strong)}
.ui-table .is-status .ui-badge-purple{background:var(--ui-purple-500);color:var(--ui-tone-strong)}
.ui-table th.is-sticky{color:var(--ui-tone-strong);font-weight:var(--ui-weight-strong)}
.ui-table-profile{display:inline-flex;align-items:center;gap:var(--ui-gap-short);color:var(--ui-tone-strong);font-weight:var(--ui-weight-strong);white-space:nowrap}
.ui-table-profile svg{width:16px;height:16px;flex:0 0 16px;color:var(--ui-tone-medium)}
.ui-progress{background:var(--ui-level-4)}
.ui-modal{background:var(--ui-level-2)}
.ui-modal{min-width:min(250px,100%)}
.ui-modal-head{background:transparent}
.ui-modal-close{background:var(--ui-level-4)}
.ui-date-nav{background:var(--ui-level-3)}
.ui-grid-preview>span{background:var(--ui-level-4)}
.ui-status-row:hover{background:transparent;filter:brightness(1.06)}

/* Modais de pergunta: conteúdo centralizado, sem cabeçalho ou fechamento duplicado e ações após a pergunta. */
.ui-modal{height:auto;min-height:var(--ui-modal-min-height);padding:var(--ui-space-long) 0;display:flex;flex-direction:column;justify-content:center;gap:var(--ui-gap-long)}
.ui-modal:not(.ui-modal-operational)>.ui-modal-head,.ui-modal:not(.ui-modal-operational) .ui-modal-close{display:none!important}
.ui-modal-body{min-height:0;flex:0 1 auto;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:var(--ui-gap-long);padding:0 var(--ui-space-short)}
.ui-modal-message{width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ui-gap-long);text-align:center}
.ui-modal-message h4{color:var(--ui-tone-medium);font-size:var(--ui-fs-16);font-weight:var(--ui-weight-medium)}
.ui-modal-actions{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--ui-gap-short);padding:0 var(--ui-space-short)}
.ui-modal-actions .ui-btn{width:auto}
.ui-modal-actions .ui-btn:only-child{margin-inline:0}

/* O calendário preserva uma composição vertical própria e não herda a centralização dos modais de mensagem. */
.ui-date-modal-body{width:100%;display:block;align-items:initial;justify-content:initial;padding:var(--ui-space-long);overflow:auto}
.ui-date-modal .ui-date-head{margin-bottom:var(--ui-gap-medium)}
.ui-date-modal .ui-date-week,.ui-date-modal .ui-date-grid{width:100%;gap:var(--ui-gap-short)}
.ui-date-modal .ui-date-day{min-width:0}

/* Botões preenchidos indicam seleção somente pela mudança de fundo. */
.ui-pagination-btn.is-active,.ui-showcase-tab.is-active,.ui-icon-tone-tab.is-active{border:0;box-shadow:none}
.ui-color-tab.is-active{border:0;background:color-mix(in srgb,var(--tab-base) 88%,white);box-shadow:none}
.ui-pagination-btn.is-active:focus-visible,.ui-showcase-tab.is-active:focus-visible,.ui-icon-tone-tab.is-active:focus-visible,.ui-color-tab.is-active:focus-visible{outline:0}

/* Cores padrão agrupadas em três abas; cada card usa somente a cor base oficial. */
.ui-standard-color-panel{display:flex;flex-direction:column;gap:var(--ui-gap-short)}
.ui-standard-color-panel .ui-color-tablist{margin-bottom:0;grid-template-columns:repeat(3,minmax(0,1fr))}
.ui-standard-color-panel .ui-color-tab,.ui-standard-color-panel .ui-color-tab.is-active{border:0;background:var(--ui-level-4);box-shadow:none;filter:none;color:var(--ui-tone-medium)}
.ui-standard-color-panel .ui-color-tab.is-active{color:var(--ui-tone-strong);font-weight:var(--ui-weight-strong)}

/* Todas as variações preservam a altura oficial; os aliases mantêm apenas paddings próprios. */
.ui-badge-large,.ui-status-date,.ui-status-badge{min-width:var(--ui-badge-large-size);height:var(--ui-badge-large-size);min-height:var(--ui-badge-large-size);padding:var(--ui-badge-large-padding-y) var(--ui-badge-large-padding-x)}
.ui-badge-small,.ui-installment-demo-action,.ui-profile-status,.ui-table .is-status .ui-badge{min-width:var(--ui-badge-small-size);height:var(--ui-badge-small-size);min-height:var(--ui-badge-small-size);padding:var(--ui-badge-small-padding-y) var(--ui-badge-small-padding-x);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);line-height:1.2}
.ui-badge-square.ui-badge-small{min-width:var(--ui-badge-small-size)}
.ui-icon-btn.ui-icon-btn-small{width:var(--ui-badge-small-size);height:var(--ui-badge-small-size);min-width:var(--ui-badge-small-size);min-height:var(--ui-badge-small-size);padding:0}
.ui-profile-status{background:transparent;border:var(--ui-outline-width) solid currentColor;border-radius:var(--ui-radius-long)}
.ui-table .is-status .ui-badge{border:0;border-radius:var(--ui-radius-long)}

/* Tabela compacta: badge e ação preservam a altura oficial dentro da linha. */
.ui-table th,.ui-table td{padding:var(--ui-space-short) 10px}
.ui-table thead tr,.ui-table tbody tr,.ui-table th,.ui-table td{height:var(--ui-hierarchy-row-size)}
.ui-table td .ui-icon-btn{width:var(--ui-badge-small-size);height:var(--ui-badge-small-size);min-width:var(--ui-badge-small-size);min-height:var(--ui-badge-small-size)}

/* Tabela hierárquica: réplica dimensional do drilldown com rolagem após a coluna fixa. */
.ui-table-wrap,.ui-drill-root{margin-inline:0}
.ui-table-wrap{border:0;border-radius:var(--ui-radius-short);background:transparent;box-shadow:none}
.ui-table-tree thead th{background:var(--ui-level-2);color:var(--ui-tone-strong);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-strong)}
.ui-table-tree thead th.is-sticky{background:var(--ui-level-2)}
.ui-table-tree{--ui-table-first-column:128px;width:100%;max-width:none;min-width:620px}
.ui-table-tree:not(.ui-month-table){table-layout:fixed}
.ui-table-tree:not(.ui-month-table) .is-tree{width:var(--ui-table-first-column)!important}
.ui-table-tree:not(.ui-month-table) th:nth-child(2),.ui-table-tree:not(.ui-month-table) td:nth-child(2){width:37%}
.ui-table-tree:not(.ui-month-table) th.is-status,.ui-table-tree:not(.ui-month-table) td.is-status{width:24%}
.ui-table-tree:not(.ui-month-table) th.is-number,.ui-table-tree:not(.ui-month-table) td.is-number{width:23%}
.ui-table-tree:not(.ui-month-table) th:last-child,.ui-table-tree:not(.ui-month-table) td:last-child{width:16%}
.ui-table-tree th,.ui-table-tree td{padding:var(--ui-space-short);border:0}
.ui-table-tree thead th{border-bottom:1px solid var(--ui-line)}
.ui-table-tree tbody tr+tr td{border-top:1px solid var(--ui-line)}
.ui-table-tree th:nth-child(2),.ui-table-tree td:nth-child(2){width:auto;white-space:nowrap}
.ui-table-tree th.is-status,.ui-table-tree td.is-status,.ui-table-tree th.is-number,.ui-table-tree td.is-number,.ui-table-tree th:last-child,.ui-table-tree td:last-child{width:1%;white-space:nowrap}
.ui-table-tree .is-tree{width:var(--ui-table-first-column);min-width:var(--ui-table-first-column);max-width:150px;padding-inline:var(--ui-space-short)}
.ui-table-tree-toggle{width:100%;height:100%;padding:0;border:0;outline:0;display:grid;grid-template-columns:calc(var(--ui-action-icon-size) + var(--ui-space-short)) minmax(0,1fr) var(--ui-action-icon-size);gap:var(--ui-gap-short);align-items:center;background:transparent;color:var(--ui-tone-strong);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-strong);text-align:left}
.ui-table-tree-toggle[aria-expanded]{cursor:pointer}
.ui-table-tree-label{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1.2}
.ui-table-tree-icon,.ui-table-tree-mark{width:var(--ui-action-icon-size);height:var(--ui-action-icon-size);display:block;color:var(--ui-tone-medium)}
.ui-table-tree-icon{stroke-width:var(--ui-icon-stroke-width)}
.ui-table-tree-mark{position:relative}
.ui-table-tree-mark::before{content:"";position:absolute;inset:0;border:1px solid var(--ui-tone-medium);border-radius:var(--ui-radius-short)}
.ui-table-tree tr[data-ui-tree-level="2"] .ui-table-tree-mark::before,.ui-table-tree tr[data-ui-tree-level="3"] .ui-table-tree-mark::before{inset:1px;border:var(--ui-outline-width) solid currentColor;border-radius:var(--ui-radius-long);background:transparent;transform:none}
.ui-table-tree tr[data-ui-tree-level="4"] .ui-table-tree-mark::before{inset:var(--ui-space-short);width:auto;height:auto;top:var(--ui-space-short);border:0;border-radius:var(--ui-radius-long);background:currentColor;transform:none}
.ui-table-tree-arrow{width:var(--ui-action-icon-size);height:var(--ui-action-icon-size);color:var(--ui-tone-medium);transition:transform var(--ui-normal)}
.ui-table-tree-toggle[aria-expanded="true"] .ui-table-tree-arrow{transform:rotate(90deg);color:var(--ui-tone-strong)}
.ui-table-tree tr[data-ui-tree-level="1"] td,.ui-table-tree tr[data-ui-tree-level="2"] td{background:var(--ui-level-3)}
.ui-table-tree tr[data-ui-tree-level="3"] td{background:var(--ui-level-4)}
.ui-table-tree tr[data-ui-tree-level="4"] td{background:var(--ui-level-5)}
.ui-table-tree tr[data-ui-tree-level="1"] .is-sticky,.ui-table-tree tr[data-ui-tree-level="2"] .is-sticky{background:var(--ui-level-3)}
.ui-table-tree tr[data-ui-tree-level="3"] .is-sticky{background:var(--ui-level-4)}
.ui-table-tree tr[data-ui-tree-level="4"] .is-sticky{background:var(--ui-level-5)}
.ui-table-tree tr[data-ui-tree-level="1"]:hover td,.ui-table-tree tr[data-ui-tree-level="1"]:active td,.ui-table-tree tr[data-ui-tree-level="2"]:hover td,.ui-table-tree tr[data-ui-tree-level="2"]:active td{background:var(--ui-level-3)}
.ui-table-tree tr[data-ui-tree-level="3"]:hover td,.ui-table-tree tr[data-ui-tree-level="3"]:active td{background:var(--ui-level-4)}
.ui-table-tree tr[data-ui-tree-level="4"]:hover td,.ui-table-tree tr[data-ui-tree-level="4"]:active td{background:var(--ui-level-5)}
.ui-table-tree tr.is-expandable{cursor:pointer}
.ui-table-tree .is-sticky{box-shadow:none}

/* Tabela mensal: meses em colunas, totais calculados e navegação somente por sanfona. */
.ui-month-table-model{display:flex;flex-direction:column;gap:var(--ui-gap-medium)}
.ui-month-table-model>h3{margin-bottom:var(--ui-space-medium);color:var(--ui-tone-strong);font-size:var(--ui-fs-16);font-weight:var(--ui-weight-medium)}
.ui-month-table-wrap{background:var(--ui-level-3)}
.ui-month-table{min-width:1080px;font-variant-numeric:tabular-nums}
.ui-month-table th:nth-child(n+2),.ui-month-table td:nth-child(n+2){width:68px;min-width:68px;text-align:center;white-space:nowrap}
.ui-month-table th:last-child,.ui-month-table td:last-child{width:82px;min-width:82px}
.ui-month-table thead th,.ui-month-table thead th.is-sticky,.ui-month-table tbody tr[data-ui-tree-level="1"] td,.ui-month-table tbody tr[data-ui-tree-level="1"] .is-sticky,.ui-month-table .ui-month-total-row td,.ui-month-table .ui-month-total-row .is-sticky{background:var(--ui-level-3);color:var(--ui-tone-strong)}
.ui-month-table tbody tr[data-ui-tree-level="2"] td,.ui-month-table tbody tr[data-ui-tree-level="2"] .is-sticky{background:var(--ui-level-3)}
.ui-month-table tbody tr[data-ui-tree-level="3"] td,.ui-month-table tbody tr[data-ui-tree-level="3"] .is-sticky{background:var(--ui-level-4)}
.ui-month-table tbody tr[data-ui-tree-level="4"] td,.ui-month-table tbody tr[data-ui-tree-level="4"] .is-sticky{background:var(--ui-level-5)}
.ui-month-table tbody tr[data-ui-tree-level="1"]:hover td,.ui-month-table tbody tr[data-ui-tree-level="1"]:active td{background:var(--ui-level-3)}
.ui-month-table tbody tr[data-ui-tree-level="2"]:hover td,.ui-month-table tbody tr[data-ui-tree-level="2"]:active td{background:var(--ui-level-3)}
.ui-month-table tbody tr[data-ui-tree-level="3"]:hover td,.ui-month-table tbody tr[data-ui-tree-level="3"]:active td{background:var(--ui-level-4)}
.ui-month-table tbody tr[data-ui-tree-level="4"]:hover td,.ui-month-table tbody tr[data-ui-tree-level="4"]:active td{background:var(--ui-level-5)}
/* O mês corrente sobe exatamente um tom em relação a cada hierarquia. */
.ui-month-table thead th.is-current-month,.ui-month-table .ui-month-total-row td.is-current-month,.ui-month-table tbody tr[data-ui-tree-level="1"] td.is-current-month,.ui-month-table tbody tr[data-ui-tree-level="2"] td.is-current-month{background:var(--ui-level-4)!important}
.ui-month-table tbody tr[data-ui-tree-level="3"] td.is-current-month{background:var(--ui-level-5)!important}
.ui-month-table tbody tr[data-ui-tree-level="4"] td.is-current-month{background:var(--ui-level-6)!important}
.ui-month-table tbody tr[data-ui-tree-level="1"] .ui-table-tree-mark::before{border-color:var(--month-accent)}
.ui-month-table tbody tr[data-ui-tree-level="1"] .ui-table-tree-label{color:var(--month-accent)}
.ui-month-table .ui-month-total-row td{font-weight:var(--ui-weight-medium)}
.ui-month-total-badge{min-width:var(--ui-badge-small-size);height:var(--ui-badge-small-size);min-height:var(--ui-badge-small-size);padding:var(--ui-badge-small-padding-y) var(--ui-badge-small-padding-x);border-radius:var(--ui-radius-short);display:inline-flex;align-items:center;justify-content:center;background:var(--ui-green-500);color:var(--ui-tone-strong);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);white-space:nowrap}

/* Perfis e blocos usam o mesmo intervalo vertical curto dos cards de badges. */
.ui-profile-grid,.ui-metric-grid{row-gap:var(--ui-gap-short)}

/* Cards e componentes internos mantêm somente o espaçamento funcional; a superfície estrutural pertence a .ui-panel. */
.ui-card,.ui-action-showcase>.ui-card{padding:var(--ui-space-medium)}
.ui-form.ui-panel{padding:0;gap:0;background:var(--ui-level-3)}

/* Mostruário de notificações: círculo semântico, mensagem breve e uma linha por evento. */
.ui-notification-preview-list{display:flex;flex-direction:column;gap:var(--ui-gap-medium)}
.ui-notification-preview{width:100%;min-height:var(--ui-hierarchy-row-size);padding:var(--ui-space-short) 0;border:0;display:grid;grid-template-columns:var(--ui-action-size) minmax(0,1fr);gap:var(--ui-gap-medium);align-items:center;background:transparent;color:var(--ui-tone-strong);font-size:var(--ui-font-medium);font-weight:var(--ui-weight-medium);text-align:left;cursor:pointer}
.ui-notification-preview-icon{width:var(--ui-action-size);height:var(--ui-action-size);display:grid;place-items:center;border-radius:var(--ui-radius-long);color:var(--ui-tone-strong)}
.ui-notification-preview-icon svg{width:var(--ui-action-icon-size);height:var(--ui-action-icon-size)}
.ui-notification-preview-icon.is-info{background:var(--ui-blue-500)}
.ui-notification-preview-icon.is-success{background:var(--ui-green-500)}
.ui-notification-preview-icon.is-warning{background:var(--ui-orange-500)}
.ui-notification-preview-icon.is-danger{background:var(--ui-red-500)}
.ui-notification-preview>span:last-child,.ui-toast-copy{font-size:var(--ui-fs-16);font-weight:var(--ui-weight-medium)}

/* Blocos de card: cinco composições reaproveitando somente níveis e tokens oficiais. */
.ui-card-block-tablist{grid-template-columns:repeat(4,minmax(0,1fr))}
.ui-card-block-panel{padding:0;background:transparent}
.ui-card-block-list,.ui-domain-list{display:flex;flex-direction:column;gap:var(--ui-gap-short)}
.ui-block-card,.ui-social-card,.ui-domain-card{min-width:0;padding:0;border-radius:0;background:transparent}
.ui-block-card{display:grid;align-items:stretch;gap:var(--ui-gap-medium)}
.ui-block-grid-four{grid-template-columns:var(--ui-hierarchy-row-size) minmax(0,1fr) repeat(2,minmax(calc(var(--ui-hierarchy-row-size) + var(--ui-space-medium)),max-content));gap:var(--ui-gap-medium)}
.ui-block-grid-three{grid-template-columns:var(--ui-hierarchy-row-size) minmax(calc(var(--ui-hierarchy-row-size) + var(--ui-space-long)),1fr) minmax(calc(var(--ui-hierarchy-row-size) + var(--ui-space-medium)),max-content)}
.ui-block-action-row{grid-template-columns:var(--ui-action-size) minmax(0,1fr) max-content}
.ui-block-icon,.ui-block-stat{min-width:0;min-height:var(--ui-hierarchy-row-size);border-radius:var(--ui-radius-short);display:flex;align-items:center;justify-content:center}
.ui-block-icon{width:var(--ui-hierarchy-row-size);height:var(--ui-hierarchy-row-size);color:var(--ui-tone-strong)}
.ui-block-icon svg{width:var(--ui-action-icon-size);height:var(--ui-action-icon-size)}
.ui-block-copy{min-width:0;display:flex;flex-direction:column;justify-content:center;gap:var(--ui-gap-short)}
.ui-block-grid-four .ui-block-icon,.ui-block-grid-three .ui-block-icon,.ui-block-grid-four .ui-block-copy,.ui-block-grid-three .ui-block-copy{align-self:center}
.ui-block-grid-four .ui-block-copy,.ui-block-grid-three .ui-block-copy{margin-inline-start:0}
.ui-block-copy strong,.ui-block-stat strong{overflow:hidden;color:var(--ui-tone-strong);font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong);line-height:1.1;text-overflow:ellipsis;white-space:nowrap}
.ui-block-copy small,.ui-block-stat small{overflow:hidden;color:var(--ui-tone-medium);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);line-height:1.1;text-overflow:ellipsis;white-space:nowrap}
.ui-block-stat{padding:var(--ui-space-medium);flex-direction:column;gap:var(--ui-gap-short);background:var(--ui-level-5);text-align:center}
.ui-block-card.is-colored .ui-block-icon{background:var(--block-base)}
.ui-block-grid-four :is(.ui-block-icon,.ui-block-stat),
.ui-block-grid-three :is(.ui-block-icon,.ui-block-stat){height:var(--ui-action-size);min-height:var(--ui-action-size)}
.ui-block-grid-four .ui-block-stat,
.ui-block-grid-three .ui-block-stat{padding-block:0;gap:0}

.ui-social-card{padding-block:0;padding-inline:var(--ui-data-inline-space);display:grid;grid-template-columns:var(--ui-hierarchy-row-size) minmax(0,1fr) max-content;grid-template-rows:auto auto auto;gap:var(--ui-gap-medium);align-items:center}
.ui-profile-card{padding:var(--ui-space-medium)}
.ui-profile-status{top:var(--ui-space-medium)}
.ui-social-logo{grid-column:1;grid-row:1;width:var(--ui-hierarchy-row-size);height:var(--ui-hierarchy-row-size);border-radius:var(--ui-radius-short);display:grid;place-items:center;background:var(--block-base);color:var(--ui-tone-strong);font-size:var(--ui-fs-20);font-weight:var(--ui-weight-strong)}
.ui-social-logo svg{width:calc(var(--ui-action-icon-size) * 1.2);height:calc(var(--ui-action-icon-size) * 1.2)}
.ui-social-copy{grid-column:2;grid-row:1;min-width:0;display:flex;flex-direction:column;gap:var(--ui-gap-short)}
.ui-social-copy strong,.ui-social-copy small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ui-social-copy strong{color:var(--ui-tone-strong);font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong)}
.ui-social-copy small{color:var(--ui-tone-medium);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium)}
.ui-social-stats{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:repeat(2,minmax(var(--ui-hierarchy-row-size),1fr));gap:var(--ui-gap-short)}
.ui-social-stats>span,.ui-domain-stat{min-height:var(--ui-hierarchy-row-size);padding:var(--ui-space-short);border-radius:var(--ui-radius-short);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--ui-gap-short);background:var(--ui-level-5);text-align:center}
.ui-social-stats strong,.ui-domain-stat strong{color:var(--ui-tone-strong);font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong);line-height:1}
.ui-social-stats small,.ui-domain-stat small{color:var(--ui-tone-medium);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);line-height:1;text-transform:none}
.ui-social-status{grid-column:3;grid-row:1;justify-self:end;height:var(--ui-badge-small-size);min-height:var(--ui-badge-small-size);padding:var(--ui-badge-small-padding-y) var(--ui-badge-small-padding-x);border:var(--ui-outline-width) solid var(--block-readable);border-radius:var(--ui-radius-short);display:inline-flex;align-items:center;color:var(--block-readable);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);white-space:nowrap}
.ui-social-actions{grid-column:1/-1;grid-row:3;display:flex;align-items:center;justify-content:flex-end;gap:var(--ui-gap-short)}
.ui-social-actions .ui-icon-btn{width:var(--ui-badge-small-size);height:var(--ui-badge-small-size);min-width:var(--ui-badge-small-size);min-height:var(--ui-badge-small-size);border:0;color:var(--ui-tone-medium)}
.ui-social-actions .ui-icon-btn svg{width:var(--ui-action-icon-size);height:var(--ui-action-icon-size)}
.ui-icon-btn:has(use[href="#i-link"]),.ui-icon-btn:has(use[href="#i-open"]),.ui-icon-btn:has(use[href="#i-edit"]),.ui-icon-btn:has(use[href$="trash"]){color:var(--ui-tone-faded)}
.ui-icon-btn:has(use[href$="edit"]) svg,.ui-icon-btn:has(use[href$="trash"]) svg{stroke-width:var(--ui-operational-icon-stroke-width)}
.ui-icon-btn:has(use[href$="trash"]) svg{width:calc(var(--ui-action-icon-size) + 2px);height:calc(var(--ui-action-icon-size) + 2px)}

.ui-domain-card{display:grid;grid-template-columns:repeat(4,minmax(var(--ui-hierarchy-row-size),1fr));gap:var(--ui-gap-short);align-items:stretch}
.ui-domain-logo{width:100%;min-height:var(--ui-hierarchy-row-size);border-radius:var(--ui-radius-short);display:grid;place-items:center;background:var(--block-base);color:var(--ui-tone-strong);font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong)}
.ui-domain-stat{min-height:var(--ui-hierarchy-row-size);padding:var(--ui-space-short);border:0;border-radius:var(--ui-radius-short);background:transparent;color:var(--block-readable)}
.ui-domain-stat strong{min-height:0;padding:0;border:0;display:inline-flex;align-items:center;justify-content:center;color:var(--ui-tone-strong)}
.ui-domain-stat small{color:var(--ui-tone-faded);text-transform:uppercase}

.ui-domain-card .ui-domain-logo.ui-domain-abbr-badge{width:100%;height:var(--ui-button-standard-h);min-height:var(--ui-button-standard-h);padding:var(--ui-space-medium) var(--ui-space-short)}
.ui-block-action-row .ui-block-icon{width:var(--ui-action-size);height:var(--ui-action-size);min-height:var(--ui-action-size);background:var(--block-base)}
.ui-block-action{min-width:var(--ui-badge-large-size);height:var(--ui-badge-large-size);min-height:var(--ui-badge-large-size);padding:var(--ui-badge-large-padding-y) var(--ui-badge-large-padding-x);border:var(--ui-outline-width) solid var(--block-readable);border-radius:var(--ui-radius-short);align-self:center;background:transparent;color:var(--block-readable);font-size:var(--ui-fs-16);font-weight:var(--ui-weight-medium);cursor:pointer}

.ui-backlink-list{width:100%;max-width:100%;display:flex;flex-direction:column;gap:var(--ui-gap-short);overflow:hidden}
.ui-backlink-card{width:100%;max-width:100%;min-width:0;padding:0;border-radius:0;display:grid;grid-template-columns:repeat(4,minmax(var(--ui-hierarchy-row-size),1fr));gap:var(--ui-gap-short);align-items:center;background:transparent}
.ui-backlink-domain.ui-domain-logo.ui-domain-abbr-badge{width:100%;height:var(--ui-button-standard-h);min-height:var(--ui-button-standard-h);padding:var(--ui-space-short)}
.ui-backlink-stat{height:var(--ui-action-size);min-height:var(--ui-action-size);padding:0;gap:0;overflow:hidden;background:transparent;color:var(--ui-tone-strong);text-align:center}
.ui-backlink-stat strong{font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong);line-height:1}
.ui-backlink-stat small{max-width:100%;min-width:0;overflow:hidden;color:var(--ui-tone-faded);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);line-height:1;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap}

/* Os cinco modelos repetem a geometria consagrada em Visitas por domínio. */
.ui-card-block-tabs{
 --ui-card-action-control-height:calc(var(--ui-fs-16) + var(--ui-space-medium) + var(--ui-space-medium) + var(--ui-outline-width) + var(--ui-outline-width));
 --ui-card-block-row-height:calc(var(--ui-hierarchy-row-size) + var(--ui-space-short) + var(--ui-space-short))
}
.ui-card-block-tabs :is(.ui-card-block-list,.ui-domain-list,.ui-backlink-list){gap:0}
.ui-card-block-tabs :is(.ui-block-card,.ui-domain-card,.ui-backlink-card){min-height:var(--ui-card-block-row-height);padding:var(--ui-space-short) 0;align-items:center}
.ui-card-block-tabs :is(.ui-domain-card,.ui-backlink-card){
 grid-template-columns:var(--ui-domain-badge-width) repeat(3,minmax(var(--ui-action-size),1fr));gap:0
}
.ui-card-block-tabs .ui-block-grid-four{
 grid-template-columns:var(--ui-domain-badge-width) minmax(0,1fr) repeat(2,minmax(calc(var(--ui-hierarchy-row-size) + var(--ui-space-medium)),max-content))
}
.ui-card-block-tabs .ui-block-grid-three{
 grid-template-columns:var(--ui-domain-badge-width) minmax(calc(var(--ui-hierarchy-row-size) + var(--ui-space-long)),1fr) minmax(calc(var(--ui-hierarchy-row-size) + var(--ui-space-medium)),max-content)
}
.ui-card-block-tabs .ui-block-action-row{
 grid-template-columns:var(--ui-domain-badge-width) minmax(0,1fr) max-content
}
.ui-card-block-tabs :is(.ui-block-icon,.ui-domain-logo.ui-domain-abbr-badge){
 box-sizing:border-box;width:var(--ui-domain-badge-width);min-width:var(--ui-domain-badge-min-width);max-width:var(--ui-domain-badge-width);
 align-self:center;gap:var(--ui-gap-short);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium)
}
.ui-card-block-tabs .ui-block-icon{height:var(--ui-card-action-control-height);min-height:var(--ui-card-action-control-height);padding:var(--ui-space-medium) var(--ui-action-padding-x)}
.ui-card-block-tabs .ui-domain-logo.ui-domain-abbr-badge{height:var(--ui-button-standard-h);min-height:var(--ui-button-standard-h);padding:var(--ui-badge-small-padding-y) var(--ui-action-padding-x)}
.ui-card-block-tabs :is(.ui-block-stat,.ui-domain-stat,.ui-backlink-stat){
 box-sizing:border-box;width:100%;height:auto;min-height:var(--ui-hierarchy-row-size);padding:var(--ui-space-medium) var(--ui-space-short);gap:var(--ui-gap-short);
 align-self:stretch;justify-self:stretch;align-items:center;justify-content:center;background:transparent;text-align:center;font-variant-numeric:tabular-nums
}
.ui-card-block-tabs :is(.ui-block-stat,.ui-domain-stat,.ui-backlink-stat)>:is(strong,small){width:100%;justify-content:center;text-align:center}
.ui-card-block-tabs .ui-block-action-row .ui-block-icon,
.ui-card-block-tabs .ui-block-action{
 height:var(--ui-card-action-control-height);min-height:var(--ui-card-action-control-height);padding-block:var(--ui-space-medium);line-height:1
}

/* Tabelas e sanfonas: linhas e hierarquias ocupam 100%; somente o conteúdo recebe 6px. */
.ui-data-layout-panel{padding:0;gap:0}
.ui-data-layout-panel>.ui-panel-head,.ui-data-layout-panel>.ui-panel-heading{box-sizing:border-box;width:100%;margin:0}
.ui-data-layout-panel>.ui-panel-body{box-sizing:border-box;width:100%;margin:0}
.ui-data-layout-panel>.ui-panel-body:not(.ui-panel-content){padding:0}
.ui-data-layout-panel :is(.ui-table,.data-table) :is(th,td):first-child{padding-inline-start:var(--ui-data-inline-space)}
.ui-data-layout-panel :is(.ui-table,.data-table) :is(th,td):last-child{padding-inline-end:var(--ui-data-inline-space)}
.ui-section.ui-panel.ui-data-layout-panel>.ui-section-head{
 width:100%;margin:0;padding:0
}
.ui-section.ui-panel.ui-data-layout-panel>.ui-data-sections:not(.ui-panel-content){
 width:100%;margin:0;padding:0;border-radius:0
}
.ui-data-layout-panel .ui-data-sections>.ui-section-accordion{margin:0}
.ui-data-layout-panel .ui-data-sections>.ui-section-accordion>.ui-accordion-head{
 width:100%;margin:0;padding-inline:var(--ui-data-inline-space)
}
.ui-data-layout-panel .ui-data-sections>.ui-section-accordion>.ui-accordion-body{margin:0;padding:0}
.ui-data-layout-panel .ui-data-sections>.ui-section-accordion>.ui-accordion-body>.ui-table-wrap{
 width:100%;margin:0
}
#feedback>.ui-feedback-models>.ui-card{padding-inline:0}
#ajax-dom>.ui-ajax-grid>.ui-ajax-rule,
#feedback>.ui-feedback-models>.ui-card,
#ajax-dom>.ui-ajax-grid>.ui-ajax-rule{
 border-radius:0;background:var(--ui-panel-surface,var(--ui-level-3));box-shadow:none
}




/* Mantém o indicador do switch centralizado mesmo sem contorno no estado ativo. */
.ui-switch::before{top:50%;transform:translateY(-50%)}
.ui-switch[aria-checked=true]::before{transform:translate(16px,-50%)}

/* O quarto nível preserva o tom do terceiro e troca a bolinha por um traço. */
.ui-drill-detail{
 grid-template-columns:var(--ui-drill-icon) minmax(0,1fr);
 gap:var(--ui-gap-medium);
 padding:var(--ui-space-medium);
 background:var(--ui-level-5);
}
.ui-drill-detail::before{
 content:"";
 width:var(--ui-space-medium);
 height:1px;
 justify-self:center;
 background:var(--ui-tone-medium);
}

/* Modal mantém 300px de altura mínima; o grupo de conteúdo fica central e somente o corpo rola quando faltar espaço. */
.ui-modal{--ui-panel-surface:var(--ui-level-3);height:auto;min-height:var(--ui-modal-min-height);max-height:calc(100dvh - (2 * var(--ui-space-short)));padding:var(--ui-space-long) 0;display:flex;flex-direction:column;justify-content:center;gap:var(--ui-gap-long);overflow:hidden;background:var(--ui-panel-surface)}
.ui-modal>form{box-sizing:border-box;width:100%;min-width:0;min-height:0;max-height:inherit;flex:0 1 auto;margin:0;padding:0;display:flex;flex-direction:column;justify-content:center;gap:var(--ui-gap-long);overflow:hidden;background:var(--ui-panel-surface)}
.ui-modal>.ui-modal-body,.ui-modal>form>.ui-modal-body{
 box-sizing:border-box;
 flex:0 1 auto;
 width:100%;
 min-height:0;
 max-height:calc(100dvh - (2 * var(--ui-space-short)) - var(--ui-action-size) - (3 * var(--ui-space-long)));
 margin:0;
 padding:0 var(--ui-space-short);
 background:var(--ui-panel-surface);
 display:flex;
 flex-direction:column;
 align-items:stretch;
 justify-content:center;
 gap:var(--ui-gap-long);
 overflow-x:hidden;
 overflow-y:auto;
 overscroll-behavior:contain;
}
.ui-modal>.ui-modal-actions,.ui-modal>form>.ui-modal-actions{
 box-sizing:border-box;
 width:100%;
 max-width:none;
 min-height:var(--ui-action-size);
 flex:0 0 auto;
 margin:0;
 padding:0 var(--ui-space-short);
 background:var(--ui-panel-surface);
 display:flex;
 align-items:center;
 justify-content:center;
 flex-wrap:wrap;
 gap:var(--ui-gap-short);
}
.ui-modal :is(.ui-modal-actions)>.ui-btn{width:auto;min-width:var(--ui-action-size);margin:0}
.ui-modal:has(.ui-modal-message)>.ui-modal-actions,.ui-modal>form:has(.ui-modal-message)>.ui-modal-actions{margin-top:var(--ui-question-actions-space)}
.ui-form-actions{
 box-sizing:border-box;
 width:100%;
 min-height:var(--ui-action-size);
 margin:var(--ui-space-short) 0 0;
 padding:0;
 display:flex;
 align-items:center;
 justify-content:flex-end;
 flex-wrap:wrap;
 gap:var(--ui-gap-short);
}
.ui-form-actions>.ui-btn{width:auto;min-width:var(--ui-action-size);margin:0}

/* O ritmo vertical entre campos, seleções e ações do formulário é sempre curto. */
.ui-form-grid{row-gap:var(--ui-gap-short)}

/* A escala preserva blocos aninhados, mas o próximo nível ocupa toda a largura do pai. */
#fundos .ui-surface-grid{gap:0;background:var(--ui-panel-surface)}
#fundos .ui-surface-sample{min-height:0;padding:0;gap:0;border-radius:0;box-shadow:none}
#fundos .ui-surface-grid>.ui-surface-sample{border-radius:var(--ui-radius-short);overflow:hidden}
#fundos .ui-surface-sample-head{min-height:var(--ui-hierarchy-row-size);padding:var(--ui-space-medium)}
#fundos .ui-surface-tones{
 padding:var(--ui-space-medium);grid-template-columns:minmax(0,1fr);gap:var(--ui-gap-short);justify-items:start
}
#fundos .ui-surface-tone-icon{
 width:var(--ui-action-icon-size);height:var(--ui-action-size);flex:0 0 var(--ui-action-icon-size);justify-content:flex-start
}

/* Cards principais: curva curta; círculo na mesma família, sempre no tom 550. */
.ui-metric-card,.ui-profile-card{border-radius:var(--ui-radius-short)}
.ui-metric-icon{border-radius:var(--ui-radius-long)}
.ui-metric-card.is-red .ui-metric-icon{background:var(--ui-red-550)}
.ui-metric-card.is-orange .ui-metric-icon{background:var(--ui-orange-550)}
.ui-metric-card.is-amber .ui-metric-icon{background:var(--ui-amber-550)}
.ui-metric-card.is-green .ui-metric-icon{background:var(--ui-green-550)}
.ui-metric-card.is-cyan .ui-metric-icon{background:var(--ui-cyan-550)}
.ui-metric-card.is-blue .ui-metric-icon{background:var(--ui-blue-550)}
.ui-metric-card.is-purple .ui-metric-icon{background:var(--ui-purple-550)}
.ui-metric-card.is-pink .ui-metric-icon{background:var(--ui-pink-550)}
.ui-metric-card.is-slate .ui-metric-icon{background:var(--ui-slate-550)}

/* Cores padrão: abas e cards ocupam o slot completo, sem o recuo estrutural do painel. */
#cores{padding:0}
#cores>.ui-section-head{padding:0}
#cores>.ui-standard-color-panel{width:100%;margin:0;padding:var(--ui-panel-content-padding)}

/* Abas de painel usam somente a curvatura mínima oficial. */
:is(.ui-color-tab,.ui-showcase-tab,.ui-icon-tone-tab){border-radius:var(--ui-radius-short)}
.ui-standard-color-panel .ui-color-tab,
.ui-showcase-tabs .ui-showcase-tab,
.ui-status-library .ui-showcase-tab,
.ui-icon-library .ui-icon-tone-tab{
 border-color:var(--ui-line-strong);background:var(--ui-level-3);color:var(--ui-tone-medium);box-shadow:none;filter:none
}
.ui-standard-color-panel .ui-color-tab.is-active,
.ui-showcase-tabs .ui-showcase-tab.is-active,
.ui-status-library .ui-showcase-tab.is-active,
.ui-icon-library .ui-icon-tone-tab.is-active{
 border-color:var(--ui-line-strong);background:var(--ui-level-4);color:var(--ui-tone-strong);box-shadow:none;filter:none
}

/* O mostruário de botões não cria uma superfície adicional sob as abas. */
#botoes .ui-action-showcase,
#botoes .ui-action-showcase>.ui-showcase-panel{
 margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none
}

/* Cada card expansível de badge usa somente o padding vertical curto. */
#badges .ui-status-row{
 min-height:calc(var(--ui-badge-large-size) + var(--ui-space-short) + var(--ui-space-short));padding-block:var(--ui-space-short)
}

/* Ações exclusivas da seção ficam entre o card de título e o conteúdo. */
.ui-section-action-bar{
 box-sizing:border-box;
 width:100%;
 min-width:0;
 margin:0;
 padding:var(--ui-space-short);
 border:0;
 border-radius:0;
 background:transparent;
 box-shadow:none;
 display:flex;
 align-items:center;
 justify-content:flex-end;
 flex-wrap:wrap;
 gap:var(--ui-gap-short);
}
.ui-section-action-bar:empty{display:none}
.ui-section-action-bar>:is(form,.ui-form){width:auto;min-width:0;margin:0;padding:0}

/* Títulos de seção repetem a anatomia e as dimensões dos cards principais. */
:is(.ui-section.ui-panel>.ui-section-head>h2,.ui-section-title-card){
 box-sizing:border-box;
 width:100%;
 max-width:none;
 min-height:96px;
 margin:0;
 padding:var(--ui-space-long) 16px;
 border:0;
 border-radius:var(--ui-radius-short);
 display:grid;
 grid-template-columns:48px minmax(0,1fr) auto;
 grid-template-rows:auto auto;
 align-self:stretch;
 column-gap:13px;
 row-gap:3px;
 align-items:center;
 background:var(--ui-title-card-base,var(--ui-accent));
 color:var(--ui-on-color-strong);
 overflow:hidden;
 box-shadow:none;
}
.ui-section-title-icon{
 grid-column:1;
 grid-row:1/3;
 width:48px;
 height:48px;
 align-self:center;
 border-radius:var(--ui-radius-long);
 display:grid;
 place-items:center;
 background:var(--ui-title-card-icon-base,color-mix(in srgb,var(--ui-title-card-base,var(--ui-accent)) 78%,#000));
 color:var(--ui-on-color-strong);
}
.ui-section-title-icon svg{width:25px;height:25px}
.ui-section-title-copy{
 grid-column:2;
 grid-row:1/3;
 min-width:0;
 display:grid;
 grid-template-rows:auto auto;
 row-gap:3px;
 align-self:stretch;
}
.ui-section-title-copy strong{
 align-self:end;
 min-width:0;
 overflow:hidden;
 color:var(--ui-on-color-strong);
 font-size:var(--ui-fs-16);
 font-weight:var(--ui-weight-title);
 line-height:1.1;
 text-overflow:ellipsis;
 white-space:nowrap;
}
.ui-section-title-copy small{
 align-self:start;
 min-width:0;
 overflow:hidden;
 color:var(--ui-on-color-medium);
 font-size:var(--ui-fs-13);
 font-weight:var(--ui-weight-medium);
 line-height:1.15;
 text-overflow:ellipsis;
 white-space:nowrap;
}
.ui-section-title-control{
 position:relative;
 z-index:12;
 grid-column:2;
 grid-row:1/3;
 min-width:0;
 align-self:stretch;
}
:is(.ui-section.ui-panel>.ui-section-head>h2.ui-section-title-card.is-selectable,.ui-section-title-card.is-selectable){position:relative;z-index:30;overflow:visible}
.ui-section-title-control>.ui-section-title-copy{grid-column:auto;grid-row:auto;width:100%;height:100%}
.ui-section-title-select{
 padding:0;
 border:0;
 outline:0;
 background:transparent;
 color:inherit;
 text-align:left;
 cursor:pointer;
}
.ui-section-title-select>strong{display:flex;align-items:center;gap:var(--ui-gap-short)}
.ui-section-title-select>strong>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ui-section-title-select svg{width:var(--ui-content-icon-size);height:var(--ui-content-icon-size);flex:0 0 var(--ui-content-icon-size);transition:transform var(--ui-fast) ease}
.ui-section-title-select[aria-expanded="true"] svg{transform:rotate(180deg)}
.ui-manual-title-dropdown{
 position:relative;
 z-index:80;
 width:100%;
 min-width:0;
 height:100%;
 align-self:stretch;
}
.ui-manual-title-toggle.ui-dropdown-toggle{
 width:100%;
 height:100%;
 min-height:0;
 padding:0 calc(var(--ui-space-long) + var(--ui-content-icon-size)) 0 0;
 border:0;
 border-radius:0;
 display:flex;
 align-items:center;
 background:transparent;
 color:var(--ui-on-color-strong);
}
.ui-manual-title-toggle.ui-dropdown-toggle::after{
 right:var(--ui-space-short);
 border-color:var(--ui-on-color-medium);
}
.ui-manual-current{
 min-width:0;
 display:flex;
 align-items:baseline;
 overflow:hidden;
 text-overflow:ellipsis;
 white-space:nowrap;
}
.ui-manual-current strong{
 color:var(--ui-on-color-strong);
 font-size:var(--ui-fs-16);
 font-weight:var(--ui-weight-title);
 line-height:1.1;
}
.ui-manual-current small{
 min-width:0;
 overflow:hidden;
 color:var(--ui-on-color-medium);
 font-size:var(--ui-fs-13);
 font-weight:var(--ui-weight-medium);
 line-height:1.15;
 text-overflow:ellipsis;
 white-space:nowrap;
}
.ui-manual-menu.ui-dropdown-menu{
 top:calc(100% + var(--ui-gap-short));
 left:0;
 right:0;
 width:100%;
 max-height:min(360px,70vh);
 padding:var(--ui-space-short);
 border:0;
 border-radius:var(--ui-radius-short);
 background:var(--ui-title-card-icon-base,color-mix(in srgb,var(--ui-title-card-base,var(--ui-accent)) 78%,#000));
}
.ui-manual-link.ui-dropdown-item{
 min-height:var(--ui-action-size);
 padding:var(--ui-space-short) var(--ui-space-medium);
 border-radius:var(--ui-radius-short);
 justify-content:space-between;
 gap:var(--ui-gap-short);
 color:var(--ui-on-color-medium);
}
.ui-manual-link span{
 color:var(--ui-on-color-strong);
 font-size:var(--ui-fs-13);
 font-weight:var(--ui-weight-strong);
}
.ui-manual-link small{
 color:var(--ui-on-color-medium);
 font-size:var(--ui-fs-13);
 font-weight:var(--ui-weight-medium);
}
.ui-manual-link:is(:hover,:focus-visible,.is-active){background:var(--ui-orange-700);color:var(--ui-on-color-strong)}
.ui-manual-link:is(:hover,:focus-visible,.is-active) small{color:var(--ui-on-color-strong)}
.ui-section-title-value{
 grid-column:3;
 grid-row:1/3;
 align-self:center;
 justify-self:end;
 color:var(--ui-tone-strong);
 font-size:var(--ui-main-card-number);
 font-weight:var(--ui-weight-strong);
 line-height:1;
 letter-spacing:-.02em;
 white-space:nowrap;
}

/* O título opcional é texto simples do corpo; modal não usa cabeçalho nem card de título. */
.ui-modal-title{
 width:100%;
 max-width:100%;
 min-height:0;
 margin:0;
 padding:0;
 color:var(--ui-tone-strong);
 font-size:var(--ui-fs-16);
 font-weight:var(--ui-weight-medium);
 text-align:center;
}

/* Switch: desligado em contorno verde; ligado preenchido e sem contorno. */
.ui-switch{border:var(--ui-outline-width) solid var(--ui-green-readable);background:transparent}
.ui-switch[aria-checked="true"]{border:0;background:var(--ui-green-500)}

/* Select múltiplo: cópia reutilizável do seletor de permissões do perfil em Sociais. */
.ui-multi-select,.ui-multi-select>.ui-accordion-group,.ui-multi-select-group{
 box-sizing:border-box;width:100%;max-width:100%;min-width:0;margin:0;padding:0;border:0;border-radius:0;background:var(--ui-panel-surface,var(--ui-level-3));box-shadow:none
}
.ui-multi-select>.ui-accordion-group{gap:0}
.ui-multi-select-group+.ui-multi-select-group{border-top:var(--ui-outline-width) solid var(--ui-line)}
.ui-multi-select-head{
 box-sizing:border-box;width:100%;min-height:var(--ui-hierarchy-row-size);margin:0;padding:var(--ui-space-short) 0;
 grid-template-columns:var(--ui-domain-badge-width) var(--ui-action-icon-size) minmax(0,1fr) max-content;align-items:center;gap:var(--ui-gap-short);background:var(--ui-panel-surface,var(--ui-level-3))
}
.ui-multi-select-head::after{display:none}
.ui-multi-select-domain{
 width:var(--ui-domain-badge-width);max-width:100%;height:var(--ui-button-standard-h);min-height:var(--ui-button-standard-h);padding:var(--ui-badge-small-padding-y) var(--ui-action-padding-x);border:0;border-radius:var(--ui-radius-short);
 display:inline-flex;align-items:center;justify-content:center;gap:var(--ui-gap-short);overflow:hidden;background:var(--multi-select-base,var(--ui-accent));color:var(--ui-tone-strong);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);line-height:1;white-space:nowrap
}
.ui-multi-select-domain>svg{width:calc(var(--ui-action-icon-size) - 2px);height:calc(var(--ui-action-icon-size) - 2px);flex:0 0 calc(var(--ui-action-icon-size) - 2px)}
.ui-multi-select-chevron{grid-column:2;width:var(--ui-action-icon-size);height:var(--ui-action-icon-size);color:var(--ui-tone-medium);transition:none}
.ui-multi-select-head[aria-expanded="true"] .ui-multi-select-chevron{transform:rotate(90deg);color:var(--ui-tone-strong)}
.ui-multi-select-total{
 grid-column:4;box-sizing:border-box;min-width:var(--ui-badge-small-size);height:var(--ui-badge-small-size);min-height:var(--ui-badge-small-size);padding:var(--ui-badge-small-padding-y) var(--ui-badge-small-padding-x);border:var(--ui-outline-width) solid var(--ui-cyan-readable);border-radius:var(--ui-radius-short);
 display:inline-flex;align-items:center;justify-content:center;background:transparent;color:var(--ui-cyan-readable);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);line-height:1;font-variant-numeric:tabular-nums;white-space:nowrap
}
.ui-multi-select-total.is-selected{border-color:var(--ui-cyan-500);background:var(--ui-cyan-500);color:var(--ui-tone-strong)}
.ui-multi-select-group>.ui-accordion-body,.ui-multi-select-group>.ui-accordion-body>.ui-accordion-body-inner{box-sizing:border-box;width:100%;max-width:100%;margin:0;border:0;border-radius:0;background:var(--ui-panel-surface,var(--ui-level-3))}
.ui-multi-select-group>.ui-accordion-body{padding:0}
.ui-multi-select-options{padding:var(--ui-space-short) 0;display:flex;flex-direction:column;gap:0}
.ui-multi-select-options>.ui-choice{position:relative;width:100%;min-width:0;padding:var(--ui-space-short) 0}
.ui-multi-select-options>.ui-choice>input[type="checkbox"]{position:absolute;inset:auto;inset-inline-start:0;top:50%;width:22px;height:22px;margin:0;transform:translateY(-50%);opacity:0;cursor:pointer}
.ui-multi-select .ui-choice-mark,.ui-multi-select .ui-choice input:checked+.ui-choice-mark{border-color:var(--ui-cyan-readable);color:var(--ui-cyan-readable)}
.ui-multi-select .ui-choice-checkbox input:checked+.ui-choice-mark::after{border-color:var(--ui-cyan-readable)}
.ui-multi-select-copy{min-width:0;display:flex;align-items:center;gap:var(--ui-gap-short);overflow:hidden}
.ui-multi-select-copy>strong,.ui-multi-select-copy>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium)}
.ui-multi-select-copy>strong{color:var(--ui-tone-strong)}
.ui-multi-select-copy>span{color:var(--ui-tone-medium)}

/* Cards principais: raio curto e círculo no tom intermediário 550 da família. */
.ui-color-metric{border-radius:var(--ui-radius-short)}
.ui-color-metric:not(.is-light) .ui-color-metric-icon{background:var(--family-mid,var(--family-base))}
/* Perguntas em modal: somente semântica, textos, ícone e ações variam por fluxo. */
.ui-modal:has(.ui-modal-message){
 width:min(var(--ui-modal-small-width),100%);
 min-height:var(--ui-modal-min-height);
 padding:var(--ui-space-long) 0;
 justify-content:center;
 gap:0;
 background:var(--ui-panel-surface,var(--ui-level-3));
}
.ui-modal>form:has(.ui-modal-message){gap:0}
.ui-modal:not(.ui-date-modal) .ui-modal-message{
 --ui-question-color:var(--ui-blue-500);
 width:100%;max-width:100%;margin:0;padding:0;
 display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;
 color:var(--ui-tone-medium);text-align:center;
}
.ui-modal:not(.ui-date-modal) .ui-modal-message.is-danger{--ui-question-color:var(--ui-red-500)}
.ui-modal:not(.ui-date-modal) .ui-modal-message.is-error{--ui-question-color:var(--ui-red-500)}
.ui-modal:not(.ui-date-modal) .ui-modal-message.is-success{--ui-question-color:var(--ui-green-500)}
.ui-modal:not(.ui-date-modal) .ui-modal-message.is-warning{--ui-question-color:var(--ui-orange-500)}
.ui-modal:not(.ui-date-modal) .ui-modal-message.is-info{--ui-question-color:var(--ui-blue-500)}
.ui-modal:not(.ui-date-modal) .ui-modal-message>div{display:contents}
.ui-modal:not(.ui-date-modal) .ui-modal-message>.ui-message-icon{
 order:0;
 width:var(--ui-question-icon-size);height:var(--ui-question-icon-size);min-width:var(--ui-question-icon-size);min-height:var(--ui-question-icon-size);
 margin:0 0 var(--ui-gap-long);padding:0;border:0;border-radius:var(--ui-radius-long);
 display:grid;place-items:center;flex:0 0 var(--ui-question-icon-size);
 background:var(--ui-question-color);color:var(--ui-tone-strong);
}
.ui-modal:not(.ui-date-modal) .ui-modal-message>.ui-message-icon svg{
 width:var(--ui-question-glyph-size);height:var(--ui-question-glyph-size);
 stroke-width:var(--ui-icon-stroke-width);
}
.ui-modal:not(.ui-date-modal) .ui-modal-message>.ui-message-icon>b{
 font-size:calc(var(--ui-action-font-size) * 2);font-weight:var(--ui-weight-weak);line-height:1;
}
.ui-modal:not(.ui-date-modal) .ui-modal-message>:is(.ui-modal-title,h3,h4),.ui-modal:not(.ui-date-modal) .ui-modal-message>div>:is(.ui-modal-title,h3,h4){
 order:1;width:100%;max-width:100%;min-height:0;margin:0;padding:0;
 color:var(--ui-tone-strong);font-size:var(--ui-fs-16);font-weight:var(--ui-weight-medium);line-height:1.35;text-align:center;
}
.ui-modal:not(.ui-date-modal) .ui-modal-message>p,.ui-modal:not(.ui-date-modal) .ui-modal-message>div>p{
 order:2;width:100%;max-width:100%;margin:var(--ui-gap-short) 0 0;padding:0;
 color:var(--ui-tone-medium);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);line-height:1.45;text-align:center;
}
.ui-modal:not(.ui-date-modal) .ui-modal-message>p:empty,.ui-modal:not(.ui-date-modal) .ui-modal-message>div>p:empty{display:none}
.ui-modal:has(.ui-modal-message)>.ui-modal-actions,.ui-modal>form:has(.ui-modal-message)>.ui-modal-actions{
 width:100%;min-height:var(--ui-action-size);margin-top:var(--ui-question-actions-space);padding:0 var(--ui-space-short);
 display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:var(--ui-action-gap);
}
.ui-modal:has(.ui-modal-message)>.ui-modal-actions>.ui-btn,.ui-modal>form:has(.ui-modal-message)>.ui-modal-actions>.ui-btn{
 width:auto;min-width:var(--ui-action-size);margin:0;
}

/* No mobile, as colunas usam somente o espaço exigido pelo conteúdo. */


/* Na coluna Ações, os ícones usam o tom médio do tema. */
.ui-table td:last-child .ui-icon-btn{color:var(--ui-tone-medium)}

/* Valores e frações dos cards de badges usam o peso médio oficial. */
.ui-status-total strong,
.ui-status-badge-amount strong,
.ui-status-position strong,
.ui-status-position small{font-weight:var(--ui-weight-medium)}

/* Backlinks repete a linha de quatro badges do modelo Por domínio. */
.ui-backlink-card{row-gap:var(--ui-gap-short)}

/* Gráficos simples: progresso e duas linhas, sem efeitos decorativos. */
.ui-chart-tablist{grid-template-columns:repeat(3,minmax(0,1fr))}
.ui-chart-panel{
 min-width:0;
 padding:0;
 border-radius:0;
 background:transparent;
}
.ui-chart-panel.ui-panel{padding:0;gap:0;border-radius:var(--ui-radius-medium);background:var(--ui-level-3)}
.ui-chart-head{display:flex;align-items:center;justify-content:space-between;gap:0;margin:0}
.ui-chart-head h3{color:var(--ui-tone-strong);font-size:var(--ui-fs-16);font-weight:var(--ui-weight-medium)}
.ui-chart-title-copy>span{display:block;margin-top:var(--ui-space-short);color:var(--ui-tone-medium);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium)}
.ui-chart-head>strong{margin-inline:var(--ui-space-medium);color:var(--ui-tone-medium);font-size:var(--ui-fs-20);font-weight:var(--ui-weight-medium);white-space:nowrap}
.ui-chart-heading{min-width:0;display:flex;align-items:center;gap:var(--ui-gap-medium)}
.ui-chart-title-copy{min-width:0}
.ui-chart-title-mark{width:var(--ui-action-size);height:var(--ui-action-size);flex:0 0 var(--ui-action-size);display:grid;place-items:center;color:var(--ui-tone-strong);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium)}
.ui-chart-title-mark.is-domain{border-radius:var(--ui-radius-short);background:var(--ui-cyan-500)}
.ui-chart-title-mark.is-block{border-radius:var(--ui-radius-short);background:var(--ui-blue-500)}
.ui-hour-chart-panel .ui-chart-title-mark.is-block{background:var(--ui-orange-500);color:#fff}
.ui-chart-static-title{width:auto;height:var(--ui-action-size);flex:0 1 auto;padding-inline:var(--ui-space-medium);white-space:nowrap}
.ui-chart-title-mark.is-icon{color:var(--ui-green-readable)}
.ui-chart-title-mark svg{width:var(--ui-action-icon-size);height:var(--ui-action-icon-size)}
.ui-chart-period-dropdown{position:relative;z-index:12;flex:0 0 auto}
[data-ui-chart-view-selector]>.ui-chart-head,[data-ui-hour-period-selector]>.ui-chart-head{position:relative;z-index:2;overflow:visible}
[data-ui-chart-view-selector]>.ui-panel-content,[data-ui-hour-period-selector]>.ui-panel-content{position:relative;z-index:1}
[data-ui-chart-view-selector].is-chart-view-menu-open,[data-ui-hour-period-selector].is-hour-period-menu-open{position:relative;z-index:120}
.ui-chart-period-toggle{width:auto;min-width:0;max-width:100%;height:var(--ui-action-size);flex:0 1 auto;padding:var(--ui-space-short) var(--ui-space-medium);border:0;grid-template-columns:minmax(0,1fr) 12px;gap:var(--ui-gap-short);background:var(--ui-orange-500);color:#fff;cursor:pointer}
.ui-chart-title-mark.ui-chart-period-toggle{background:var(--ui-orange-500);color:#fff}
.ui-chart-period-toggle>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;line-height:1}
.ui-chart-period-toggle svg{width:12px;height:12px;color:var(--ui-tone-strong);transition:transform var(--ui-fast) ease}
.ui-chart-period-toggle[aria-expanded="true"] svg{transform:rotate(180deg)}
.ui-chart-period-toggle.ui-section-title-select{width:100%;max-width:none;height:100%;padding:0;display:grid;grid-template-columns:1fr;grid-template-rows:auto auto;gap:3px;background:transparent;color:inherit}
.ui-chart-period-arrow{box-sizing:border-box;width:24px;height:24px;flex:0 0 24px;border-radius:var(--ui-radius-long);display:grid;place-items:center;background:var(--ui-chart-period-arrow-base,var(--ui-title-card-icon-base,var(--ui-title-card-base,var(--ui-accent))));color:var(--ui-chart-period-arrow-color,var(--ui-on-color-strong))}
.ui-chart-period-toggle.ui-section-title-select .ui-chart-period-arrow svg{width:15px;height:15px;color:inherit;stroke-width:2.5}
.ui-chart-period-menu{position:absolute;top:calc(100% + var(--ui-gap-short));left:0;z-index:80;width:max-content;min-width:100%;max-width:100cqi;padding:var(--ui-space-short);border:0;border-radius:var(--ui-radius-short);background:var(--ui-chart-period-menu-base,var(--ui-title-card-base,var(--ui-accent)));box-shadow:var(--ui-shadow-popover)}
.ui-chart-period-menu button{width:100%;min-height:var(--ui-badge-small-size);padding:var(--ui-space-short) var(--ui-space-medium);border:0;border-radius:var(--ui-radius-short);display:flex;align-items:center;justify-content:flex-start;background:transparent;color:var(--ui-on-color-medium);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);white-space:nowrap;cursor:pointer}
.ui-chart-period-menu button:hover,.ui-chart-period-menu button:focus-visible{outline:0;background:var(--ui-chart-period-menu-hover,var(--ui-chart-period-arrow-base,var(--ui-title-card-icon-base,var(--ui-accent))));color:var(--ui-on-color-strong)}
.ui-chart-period-menu button[aria-checked="true"]{background:var(--ui-chart-period-menu-active,var(--ui-orange-700));color:var(--ui-on-color-strong)}
.ui-hour-chart{min-width:0;--analysis-accent:var(--ui-orange-500);--analysis-accent-readable:var(--ui-orange-readable)}
.dashboard-hour-clock-wrap{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:334px;margin-top:-6px;padding:5px 10px 7px;background:transparent}
.dashboard-hour-clock{display:block;width:min(100%,360px);height:auto;overflow:visible}
.hour-clock-sector path{stroke:none}
.hour-clock-track{fill:var(--ui-level-4)}
.hour-clock-previous{fill:var(--analysis-accent);opacity:.72}
.hour-clock-current{fill:var(--analysis-accent-readable);opacity:1}
.dashboard-hour-clock text{stroke:none}
.hour-clock-count{fill:var(--ui-tone-strong);font-family:var(--ui-font);font-size:14px;font-weight:400;text-anchor:middle;dominant-baseline:middle}
.hour-clock-count.zero{fill:var(--ui-tone-faded)}
.hour-clock-quarter-bg{fill:transparent;stroke:none}
.hour-clock-quarter-label{fill:var(--analysis-accent-readable);font-family:var(--ui-font);font-size:12px;font-weight:500;text-anchor:middle;dominant-baseline:middle}
.hour-clock-center{fill:var(--ui-level-3);stroke:none}
.hour-clock-center-caption{fill:var(--ui-tone-faded);font-family:var(--ui-font);font-size:9px;font-weight:500;text-anchor:middle;letter-spacing:1.1px}
.hour-clock-center-value{fill:var(--ui-tone-strong);font-family:var(--ui-font);font-size:20px;font-weight:400;text-anchor:middle}
.dashboard-clock-period-icon{position:absolute;z-index:8;width:56px;height:56px;display:flex;align-items:center;justify-content:center;pointer-events:none}
.dashboard-clock-period-icon svg{display:block;width:56px;height:56px;fill:none;stroke:none}
.dashboard-clock-period-icon .moon-shape{fill:currentColor;stroke:none}
.dashboard-clock-period-icon .sun-core{fill:currentColor;stroke:none}
.dashboard-clock-period-icon .sun-rays{fill:none;stroke:currentColor;stroke-width:var(--ui-icon-stroke-width);stroke-linecap:round}
.dashboard-clock-moon{left:8px;top:7px}
.dashboard-clock-sun{right:8px;bottom:7px}
.clock-day .dashboard-clock-moon{color:var(--ui-tone-faded);filter:none}
.clock-day .dashboard-clock-sun{color:var(--ui-amber-readable);filter:drop-shadow(0 0 4px rgba(234,170,72,.28))}
.clock-night .dashboard-clock-moon{color:var(--ui-tone-strong);filter:drop-shadow(0 0 4px rgba(255,255,255,.28))}
.clock-night .dashboard-clock-sun{color:var(--ui-tone-faded);filter:none}
.ui-progress-chart{display:flex;flex-direction:column;gap:var(--ui-gap-medium)}
.ui-progress-chart-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--ui-gap-short);align-items:center}
.ui-progress-chart-row>span,.ui-progress-chart-row>strong{font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium)}
.ui-progress-chart-row>span{color:var(--ui-tone-medium)}
.ui-progress-chart-row>strong{color:var(--ui-tone-strong)}
.ui-progress-chart-row>i{grid-column:1/-1;height:var(--ui-space-medium);overflow:hidden;border-radius:var(--ui-radius-long);background:var(--ui-level-4)}
.ui-progress-chart-row>i>b{display:block;width:var(--chart-value);height:100%;border-radius:inherit;background:var(--ui-cyan-500)}
.ui-line-chart-grid{display:grid;grid-template-columns:1fr;gap:var(--ui-gap-medium)}
.ui-line-chart-model{min-width:0;padding:0;background:transparent}
.ui-chart-view-model>.ui-chart-head{display:none}
.ui-progress-view{--ui-progress-view-height:300px;height:var(--ui-progress-view-height);min-height:var(--ui-progress-view-height)}
.ui-progress-view .ui-week-progress{height:100%;padding-right:var(--ui-space-short);display:grid;grid-template-columns:minmax(0,1fr);grid-auto-rows:calc((var(--ui-progress-view-height) - (6 * var(--ui-gap-short)))/7);gap:var(--ui-gap-short);overflow-x:hidden;overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--ui-level-5) var(--ui-level-2)}
.ui-progress-view .ui-week-progress::-webkit-scrollbar{width:6px}
.ui-progress-view .ui-week-progress::-webkit-scrollbar-track{background:var(--ui-level-2);border-radius:var(--ui-radius-long)}
.ui-progress-view .ui-week-progress::-webkit-scrollbar-thumb{background:var(--ui-level-5);border-radius:var(--ui-radius-long)}
.ui-week-progress{display:flex;flex-direction:column;gap:var(--ui-gap-short)}
.ui-week-progress-row{display:grid;grid-template-columns:32px minmax(0,1fr) 58px;align-items:center;gap:var(--ui-gap-medium)}
.ui-week-progress-row>span,.ui-week-progress-row>strong{font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium)}
.ui-week-progress-row>span{color:var(--ui-tone-medium)}
.ui-week-progress-row>strong{color:var(--ui-tone-strong);text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.ui-week-progress-row>i{position:relative;height:6px;overflow:hidden;border-radius:var(--ui-radius-long);background:var(--ui-level-4)}
.ui-week-progress-row>i>b{position:absolute;left:0;display:block;border-radius:inherit}
.ui-week-progress-row>i>.ui-progress-previous{top:0;height:6px;background:var(--ui-progress-dark,var(--ui-orange-500));opacity:.72}
.ui-week-progress-row>i>.ui-progress-current{top:0;height:6px;background:var(--ui-progress-color,var(--ui-orange-readable))}
.ui-line-chart-figure{min-width:0}
.ui-line-chart-stage{width:100%;display:flex;flex-direction:column}
.ui-line-chart{display:block;width:100%;height:238px;overflow:visible}
.ui-chart-scale-value{display:none}
.ui-chart-scale-value.is-top{margin-bottom:var(--ui-space-short)}
.ui-chart-scale-value.is-bottom{margin-top:var(--ui-space-short)}
.ui-chart-guide{fill:none;stroke:var(--ui-line);stroke-width:1;vector-effect:non-scaling-stroke}
.ui-chart-period-guides{fill:none;stroke:var(--ui-tone-faded);stroke-width:1;vector-effect:non-scaling-stroke}
.ui-chart-period-guides{opacity:.28}
.ui-chart-line{fill:none;stroke-width:var(--ui-chart-line-width);stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.ui-line-chart.is-blue .ui-chart-line{stroke:var(--ui-blue-readable)}
.ui-line-chart.is-blue .ui-chart-points{fill:var(--ui-blue-readable)}
.ui-line-chart.is-green .ui-chart-line{stroke:var(--ui-green-readable)}
.ui-line-chart.is-green .ui-chart-points{fill:var(--ui-green-readable)}
.ui-chart-points{stroke:none}
.ui-chart-series{--series-color:var(--ui-cyan-readable)}
.ui-chart-series.is-purple{--series-color:var(--ui-purple-readable)}
.ui-chart-series.is-cyan{--series-color:var(--ui-cyan-readable)}
.ui-chart-series.is-blue{--series-color:var(--ui-blue-readable)}
.ui-chart-series.is-green{--series-color:var(--ui-green-readable)}
.ui-chart-series.is-orange{--series-color:var(--ui-orange-readable)}
.ui-chart-series.is-red{--series-color:var(--ui-red-readable)}
.ui-chart-series.is-pink{--series-color:var(--ui-pink-readable)}
.ui-chart-series.is-slate{--series-color:var(--ui-slate-readable)}
.ui-series-line{fill:none;stroke:var(--series-color);stroke-width:var(--ui-chart-line-width);stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}
.ui-series-current-marker{fill:var(--series-color);stroke:none}
.ui-series-points{display:none}
.ui-chart-series.is-series-hidden{display:none}
.ui-series-key{fill:var(--series-color);stroke:none}
.ui-series-label{fill:var(--ui-tone-strong);stroke:none;font-family:var(--ui-font);font-size:10px;font-weight:var(--ui-weight-medium);text-anchor:middle;dominant-baseline:middle}
.ui-line-chart:has(.ui-chart-series){max-height:none}
.ui-series-key,.ui-series-label{display:none}
.ui-chart-legend{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);align-items:center;gap:var(--ui-gap-short);width:100%;margin-top:var(--ui-space-medium)}
.ui-chart-legend-item{--series-dark:var(--ui-cyan-700);--series-color:var(--ui-cyan-500);--series-readable:var(--ui-cyan-readable);min-width:0;display:flex;align-items:center;justify-content:center;border:0;background:transparent}
.ui-chart-legend-item.is-purple{--series-dark:var(--ui-purple-700);--series-color:var(--ui-purple-500);--series-readable:var(--ui-purple-readable)}
.ui-chart-legend-item.is-cyan{--series-dark:var(--ui-cyan-700);--series-color:var(--ui-cyan-500);--series-readable:var(--ui-cyan-readable)}
.ui-chart-legend-item.is-blue{--series-dark:var(--ui-blue-700);--series-color:var(--ui-blue-500);--series-readable:var(--ui-blue-readable)}
.ui-chart-legend-item.is-green{--series-dark:var(--ui-green-700);--series-color:var(--ui-green-500);--series-readable:var(--ui-green-readable)}
.ui-chart-legend-item.is-orange{--series-dark:var(--ui-orange-700);--series-color:var(--ui-orange-500);--series-readable:var(--ui-orange-readable)}
.ui-chart-legend-item.is-red{--series-dark:var(--ui-red-700);--series-color:var(--ui-red-500);--series-readable:var(--ui-red-readable)}
.ui-chart-legend-item.is-pink{--series-dark:var(--ui-pink-700);--series-color:var(--ui-pink-500);--series-readable:var(--ui-pink-readable)}
.ui-chart-legend-item.is-slate{--series-dark:var(--ui-slate-700);--series-color:var(--ui-slate-500);--series-readable:var(--ui-slate-readable)}
.ui-chart-legend-item.is-all{--series-dark:var(--ui-level-2);--series-color:var(--ui-level-4);--series-readable:var(--ui-tone-strong)}
.ui-chart-legend-item>span{width:var(--ui-badge-small-size);height:var(--ui-badge-small-size);display:grid;place-items:center;border-radius:var(--ui-radius-short);background:var(--series-dark);color:var(--ui-tone-strong);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);line-height:1}
.ui-chart-domain-footer{grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:repeat(6,minmax(0,1fr))}
.ui-hour-chart-panel>.ui-chart-domain-footer{transform:translateY(-10px)}
.ui-chart-domain-footer .ui-chart-legend-item>span{width:auto;min-width:var(--ui-badge-small-size);padding-inline:var(--ui-space-short)}
.ui-chart-legend:has(>button.ui-chart-legend-item){width:100%;gap:var(--ui-gap-short)}
.ui-chart-legend>button.ui-chart-legend-item{width:100%;min-width:0}
.ui-chart-legend>button.ui-chart-legend-item>span,
.ui-chart-domain-footer>button.ui-chart-legend-item>span{width:100%;min-width:0;padding-inline:var(--ui-space-short)}
.ui-chart-legend button.ui-chart-legend-item{cursor:pointer}
.ui-chart-legend button.ui-chart-legend-item>span{border:var(--ui-outline-width) solid transparent}
.ui-chart-legend button.ui-chart-legend-item:not(.is-all)[aria-pressed="false"]>span{border-color:var(--series-readable);background:transparent;color:var(--series-readable)}
.ui-chart-legend button.ui-chart-legend-item[aria-pressed="true"]>span{background:var(--series-color);color:var(--ui-tone-strong)}
.ui-chart-legend button.ui-chart-legend-item.is-all[aria-pressed="true"]>span{background:var(--ui-level-4);color:var(--ui-tone-strong)}
.ui-chart-legend button.ui-chart-legend-item.is-all[aria-pressed="false"]>span{background:var(--ui-level-2);color:var(--ui-tone-medium)}
.ui-chart-legend button.ui-chart-legend-item:focus-visible{outline:0}
.ui-chart-labels{width:100%;display:flex;align-items:center;justify-content:space-between;gap:0;margin-top:var(--ui-space-short);color:var(--ui-tone-medium);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);text-align:center}
.ui-chart-labels>span{white-space:nowrap}
.ui-chart-labels.is-year{position:relative;display:block;height:var(--ui-fs-16)}
.ui-chart-labels.is-year>span{position:absolute;left:calc(var(--ui-chart-point)*100%/(var(--ui-chart-columns) - 1));min-width:0;transform:translateX(-50%);text-align:center}
.ui-chart-labels.is-year>span:first-child{transform:none;text-align:left}
.ui-chart-labels.is-year>span:last-child{transform:translateX(-100%);text-align:right}
.ui-chart-labels.is-month-end{position:relative;display:block;height:var(--ui-fs-16)}
.ui-chart-labels.is-month-end>span{position:absolute;left:calc(var(--ui-chart-point)*100%/(var(--ui-chart-columns) - 1));min-width:0;transform:translateX(-100%);text-align:right}
.ui-chart-labels.is-interval-end{position:relative;display:block;height:var(--ui-fs-16)}
.ui-chart-labels.is-interval-end>span{position:absolute;left:calc(var(--ui-chart-point)*100%/(var(--ui-chart-columns) - 1));min-width:0;transform:translateX(-100%);text-align:right}
.ui-chart-labels.is-interval-end>span.is-after-guide{transform:none;text-align:left}
.ui-chart-labels.is-dynamic{display:grid;grid-template-columns:repeat(var(--ui-chart-columns),minmax(0,1fr))}
.ui-chart-labels.is-six{grid-template-columns:none}

/* Geometria compartilhada dos três painéis analíticos de Visitas e WhatsApp. */
.visitas-chart-card .ui-line-chart{height:297px}
.visitas-chart-card .ui-progress-view{--ui-progress-view-height:320px}
.visitas-chart-card .ui-progress-view .ui-week-progress{grid-auto-rows:calc((var(--ui-progress-view-height) - (9 * var(--ui-gap-short)))/10)}
.visitas-chart-card .dashboard-hour-clock-wrap{margin-top:var(--ui-space-short);padding-inline:0}
.visitas-chart-card.ui-hour-chart-panel .dashboard-hour-clock-wrap{transform:translateY(2px)}
.visitas-chart-card.ui-hour-chart-panel .ui-chart-domain-footer{transform:translateY(-4px)}

/* Responsividade contínua: o painel fornece o espaço; os filhos fluem sem versões por dispositivo. */
.ui-header{padding-inline:clamp(10px,2vw,16px)}
.ui-grid-2,.ui-grid-3,.ui-grid-4,.ui-grid-5,.ui-grid-6{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
.ui-form-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,max(260px,calc((100% - var(--ui-gap-short))/2))),1fr))}
.ui-metric-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}
.ui-profile-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
.ui-feedback-grid,.ui-ajax-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))}
.ui-showcase-tablist,.ui-color-tablist,.ui-card-block-tablist{grid-template-columns:repeat(auto-fit,minmax(min(100%,96px),1fr))}
.ui-action-showcase{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}
.ui-surface-tones{grid-template-columns:repeat(auto-fit,minmax(min(100%,150px),1fr))}
.ui-color-action-grid,.ui-color-badge-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,110px),1fr))}
.ui-upload{grid-template-columns:auto minmax(0,1fr)}
.ui-token-table{grid-template-columns:minmax(min(100%,130px),.7fr) minmax(min(100%,220px),1.3fr)}
.ui-chart-head{align-items:center}
.ui-line-chart{min-height:0}
.ui-week-progress-row{grid-template-columns:minmax(30px,max-content) minmax(0,1fr) minmax(44px,max-content)}
.dashboard-hour-clock-wrap{min-height:0;padding:4px 0 8px}
.dashboard-hour-clock{width:min(98%,360px);max-width:100%}
@container ui-main-nav (min-width:720px){.ui-main-nav .ui-nav-link{min-height:var(--ui-action-size);flex-direction:row;justify-content:center}.ui-main-nav .ui-nav-leading{flex:0 0 auto}}
@container (max-width:540px){.ui-grid>.ui-col-9,.ui-grid>.ui-col-8,.ui-grid>.ui-col-6,.ui-grid>.ui-col-4,.ui-grid>.ui-col-3{grid-column:1/-1}}

/* Contrato executável dos programas consumidores: a UI é a fonte de verdade. */
.ui-program-page{background:var(--ui-level-1);color:var(--ui-tone-strong)}
.ui-program-page>.ui-app,.ui-program-shell{background:var(--ui-level-2)}
.ui-structural-slot{box-sizing:border-box;width:100%;max-width:100%;min-width:0;margin:0;padding:0;border:0;border-radius:0;background:var(--ui-panel-surface,var(--ui-level-3));box-shadow:none}
.ui-hierarchy-stack{box-sizing:border-box;width:100%;max-width:100%;min-width:0;margin:0;padding:0;border:0;border-radius:0;display:flex;flex-direction:column;gap:0;background:var(--ui-panel-surface,var(--ui-level-3));box-shadow:none}
.ui-hierarchy-item{box-sizing:border-box;width:100%;max-width:100%;min-width:0;margin:0;padding:0;border:0;border-radius:0;background:inherit;box-shadow:none}
.ui-hierarchy-item+.ui-hierarchy-item{border-top:var(--ui-role-outline-width) solid var(--ui-line)}
.ui-hierarchy-trigger{box-sizing:border-box;width:100%;max-width:100%;min-height:var(--ui-hierarchy-compact-row-size);margin:0;padding:var(--ui-space-short);border:0;border-radius:0;background:inherit}
.ui-hierarchy-content{box-sizing:border-box;width:100%;max-width:100%;min-width:0;margin:0;padding:0;border:0;border-radius:0;background:inherit;box-shadow:none}
.ui-hierarchy-table .ui-table thead tr,.ui-hierarchy-table .ui-table tbody tr,.ui-hierarchy-table .ui-table th,.ui-hierarchy-table .ui-table td{height:var(--ui-hierarchy-compact-row-size)}
.ui-drill-root>.ui-hierarchy-item{border-radius:0;overflow:visible;box-shadow:none}
.ui-drill-root .ui-hierarchy-trigger{width:100%;max-width:100%;min-height:var(--ui-hierarchy-compact-row-size);padding:var(--ui-space-short);border-radius:0}
.ui-input{padding:var(--ui-control-padding-y) var(--ui-control-padding-x)}
.ui-textarea{min-height:var(--ui-textarea-min-height);padding:var(--ui-control-padding-y) var(--ui-control-padding-x)}
.ui-modal-bg{padding:var(--ui-space-short)}
.ui-modal{width:min(var(--ui-modal-width),100%);min-height:var(--ui-modal-min-height);max-height:calc(100dvh - (var(--ui-space-short) * 2));padding:var(--ui-space-long) 0;border-radius:var(--ui-radius-medium);justify-content:center;gap:var(--ui-gap-long)}
.ui-modal.ui-modal-sm{width:min(var(--ui-modal-small-width),100%)}
.ui-reminder-icon>svg{width:var(--ui-reminder-icon-size);height:var(--ui-reminder-icon-size)}

/* Exemplo visível do contrato de consumo pelos programas. */
.ui-program-contract{display:flex;flex-direction:column;gap:0}
.ui-program-contract-list{width:100%;margin:0;padding:0;display:flex;flex-direction:column;gap:0;background:var(--ui-panel-surface,var(--ui-level-3))}
.ui-program-contract-row{min-height:var(--ui-hierarchy-compact-row-size);padding:var(--ui-space-short) 0;border-top:var(--ui-role-outline-width) solid var(--ui-line);display:grid;grid-template-columns:var(--ui-action-icon-size) minmax(0,1fr);align-items:center;gap:var(--ui-gap-short);color:var(--ui-tone-medium);font-size:var(--ui-fs-13)}
.ui-program-contract-row svg{width:var(--ui-action-icon-size);height:var(--ui-action-icon-size);color:var(--ui-accent-readable)}
.ui-program-contract-row strong{color:var(--ui-tone-strong);font-weight:var(--ui-weight-medium)}

/* Calendário diário: mês, linhas e hierarquias em largura integral. */
.ui-day-calendar{
 --ui-day-calendar-number-column:clamp(34px,7cqi,48px);
 --ui-day-calendar-weekday-column:clamp(68px,16cqi,110px);
 --ui-day-calendar-row-surface:var(--ui-level-3);
 box-sizing:border-box;width:100%;max-width:100%;min-width:0;margin:0;padding:0;border:0;border-radius:0;
 display:flex;flex-direction:column;gap:0;overflow:visible;background:var(--ui-level-3);box-shadow:none;
 container-type:inline-size;
}
.ui-day-calendar-head{
 box-sizing:border-box;width:100%;min-height:var(--ui-hierarchy-row-size);margin:0;padding:var(--ui-space-short);
 display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:var(--ui-gap-short);
 border:0;border-bottom:var(--ui-role-outline-width) solid var(--ui-line);border-radius:0;background:inherit;
}
.ui-day-calendar-side{min-width:0;display:flex;align-items:center;gap:var(--ui-gap-short)}
.ui-day-calendar-side.is-previous{justify-content:flex-start}.ui-day-calendar-side.is-next{justify-content:flex-end}
.ui-day-calendar-nav,.ui-day-calendar-outside-badge{flex:0 0 auto;margin:0;text-decoration:none}
.ui-day-calendar-outside-badge{border:0;color:var(--ui-tone-strong)}
.ui-day-calendar-month{min-width:0;display:flex;align-items:baseline;justify-content:center;gap:var(--ui-gap-short);white-space:nowrap;text-align:center}
.ui-day-calendar-month strong{color:var(--ui-tone-strong);font-size:var(--ui-fs-16);font-weight:var(--ui-weight-medium)}
.ui-day-calendar-month span{color:var(--ui-tone-faded);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium)}
.ui-day-calendar-list,.ui-day-calendar-content{
 box-sizing:border-box;width:100%;max-width:100%;min-width:0;margin:0;padding:0;display:flex;flex-direction:column;gap:0;background:inherit;
}
.ui-day-calendar-row{
 box-sizing:border-box;position:relative;z-index:0;width:100%;max-width:100%;min-width:0;min-height:var(--ui-hierarchy-row-size);
 margin:0;padding:var(--ui-space-short) var(--ui-space-medium);border:0;border-bottom:var(--ui-role-outline-width) solid var(--ui-line);border-radius:0;
 display:flex;align-items:center;gap:var(--ui-gap-short);background:var(--ui-day-calendar-row-surface);color:var(--ui-tone-strong);text-align:left;
}
.ui-day-calendar-toggle{flex:1 1 auto;min-width:0;align-self:stretch;padding:0;border:0;background:transparent;color:inherit;display:flex;align-items:center;gap:var(--ui-gap-short);text-align:left;cursor:pointer}
.ui-day-calendar-toggle{cursor:pointer}.ui-day-calendar-row.is-disabled{cursor:default;color:var(--ui-tone-faded)}
.ui-day-calendar-row:is(:hover,.is-current,.is-open){background:var(--ui-day-calendar-row-surface)}
.ui-day-calendar-number{flex:0 0 var(--ui-day-calendar-number-column);font-size:var(--ui-fs-16);font-weight:var(--ui-weight-strong);font-variant-numeric:tabular-nums;color:var(--ui-tone-strong)}
.ui-day-calendar-weekday{flex:0 0 var(--ui-day-calendar-weekday-column);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ui-tone-medium);font-size:var(--ui-fs-16);font-weight:var(--ui-weight-medium)}
.ui-day-calendar-main{position:relative;z-index:1;flex:1 1 auto;min-width:0;height:var(--ui-action-size);display:flex;align-items:center}
.ui-day-calendar-title{min-width:0;padding-right:var(--ui-space-short);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--ui-tone-strong);font-size:var(--ui-fs-16);font-weight:var(--ui-weight-medium)}
.ui-day-calendar-badges{position:absolute;z-index:2;top:0;right:0;min-width:max-content;height:var(--ui-action-size);display:flex;align-items:center;justify-content:flex-end;flex-wrap:nowrap;gap:var(--ui-gap-short);overflow:visible;white-space:nowrap}
.ui-day-calendar-badges:empty{display:none}.ui-day-calendar-badges>*{flex:0 0 auto}
.ui-day-calendar-badge{border:0;color:var(--ui-tone-strong)}
.ui-day-calendar-badge.is-accent{background:var(--ui-accent)}.ui-day-calendar-badge.is-info{background:var(--ui-blue-500)}
.ui-day-calendar-badge.is-success{background:var(--ui-green-500)}.ui-day-calendar-badge.is-warning{background:var(--ui-orange-500)}
.ui-day-calendar-badge.is-danger{background:var(--ui-red-500)}.ui-day-calendar-badge.is-neutral{background:var(--ui-level-4);color:var(--ui-tone-medium)}
.ui-day-calendar-notification-slot{
 position:relative;z-index:3;box-sizing:border-box;flex:0 0 var(--ui-action-size);width:var(--ui-action-size);min-width:var(--ui-action-size);height:var(--ui-action-size);min-height:var(--ui-action-size);
 margin:0 calc(var(--ui-gap-short) * -1) 0 0;padding:0 var(--ui-gap-short) 0 0;border:0;border-radius:var(--ui-radius-short);
 display:inline-grid;place-items:center end;background:var(--ui-day-calendar-row-surface);
}
.ui-day-calendar-notification-slot>.ui-notification-badge{position:relative;z-index:1}
.ui-day-calendar-actions{flex:0 0 auto;min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:var(--ui-gap-short)}
.ui-day-calendar-actions:empty{display:none}.ui-day-calendar-action{flex:0 0 auto;margin:0}
.ui-day-calendar-body{box-sizing:border-box;width:100%;max-width:100%;min-width:0;margin:0;padding:0;border:0;border-radius:0;background:var(--ui-level-3);box-shadow:none}
.ui-day-calendar-body[hidden]{display:none!important}
.ui-day-calendar-row.is-disabled :is(.ui-day-calendar-number,.ui-day-calendar-weekday,.ui-day-calendar-title){color:var(--ui-tone-faded)}

@container (max-width:480px){
 .ui-day-calendar-row{padding-inline:var(--ui-space-short)}
 .ui-day-calendar{--ui-day-calendar-weekday-column:clamp(58px,15cqi,72px)}
}

/* O foco por teclado prevalece sobre estados visuais e resets locais dos controles. */
:where(a[href],button,[role="button"],input,textarea,select,[tabindex]:not([tabindex="-1"])):focus-visible{
 outline:var(--ui-outline-width) solid var(--ui-focus)!important;
 outline-offset:2px!important;
}
:where(.ui-hierarchy-trigger,.ui-accordion-head,.ui-day-calendar-toggle,.ui-table-tree-toggle):focus-visible{
 outline-offset:-2px!important;
}

/* Contrato único dos campos: mesma superfície, inclusive no preenchimento automático.
   O foco ocupa a própria borda, sem desenhar um segundo retângulo externo. */
.ui-input,.ui-textarea,.ui-select-control,.ui-field-button,.ui-upload-name{
 min-width:0;max-width:100%;color-scheme:dark;
 background:var(--ui-level-2);border-radius:var(--ui-radius-medium);
}
:is(.ui-input,.ui-textarea)::placeholder{color:var(--ui-placeholder)!important;opacity:1}
:is(.ui-input,.ui-textarea,.ui-select-control,.ui-field-button):is(:focus,:focus-visible){
 border-color:var(--ui-focus)!important;
 outline:var(--ui-outline-width) solid var(--ui-focus)!important;
 outline-offset:calc(-1 * var(--ui-outline-width))!important;
 box-shadow:none!important;
}
:is(.ui-input,.ui-textarea):autofill{
 background:var(--ui-level-2)!important;color:var(--ui-tone-medium)!important;
 box-shadow:0 0 0 1000px var(--ui-level-2) inset!important;
 -webkit-text-fill-color:var(--ui-tone-medium);caret-color:var(--ui-tone-strong);
}
:is(.ui-input,.ui-textarea):-webkit-autofill{
 -webkit-box-shadow:0 0 0 1000px var(--ui-level-2) inset!important;
 -webkit-text-fill-color:var(--ui-tone-medium);caret-color:var(--ui-tone-strong);
}
.ui-select-control{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ui-select-control:disabled,.ui-textarea:disabled,.ui-textarea[readonly]{border-style:dashed;color:var(--ui-tone-faded);cursor:not-allowed;opacity:.72}
.ui-year-select{width:100%;min-width:0;flex:1 1 100%}
.ui-year-select>select,.ui-year-select>.ui-select-control{width:100%;min-width:0}
.ui-year-select>select,.ui-year-select>.ui-select-control{height:100%;min-height:var(--ui-action-size);padding:var(--ui-action-padding-y) var(--ui-action-padding-x);border:0;border-radius:var(--ui-radius-short);background:var(--ui-level-4);color:var(--ui-tone-medium);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-medium);line-height:1;text-align:center;text-align-last:center}
.ui-year-select>select{appearance:none;background-image:none}
.ui-year-select>.ui-select-control{display:flex;align-items:center;justify-content:center}
.ui-year-select>.ui-select-control::after{display:none}
.ui-year-select>.ui-select-popover{min-width:max-content;background:var(--ui-level-4)}
.ui-field.is-error :is(.ui-select-control,.ui-field-button),.ui-select-control[aria-invalid=true]{border-color:var(--ui-red-readable)}
.ui-form{width:100%;min-width:0;height:auto;min-height:0;margin:0;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none}
.ui-form-grid{width:100%;min-width:0;gap:var(--ui-gap-short)}
.ui-form-grid>*{min-width:0;max-width:100%}
.ui-form-actions{grid-column:1/-1}
.ui-form-actions>:is(.ui-btn,.ui-icon-btn){flex:0 0 auto}
.ui-field-icon>.ui-leading-icon>svg,.ui-select-icon>.ui-leading-icon>svg,.ui-field-button>.ui-leading-icon>svg{display:block;width:100%;height:100%}
.ui-field-icon>.ui-leading-icon,.ui-select-icon>.ui-leading-icon{color:var(--ui-accent-readable)}
/* O foco do input invisível é publicado apenas na caixa visual do checkbox/radio. */
.ui-choice{position:relative}
.ui-choice:not(.ui-choice-operational) input{width:1px;height:1px;min-width:0;min-height:0;padding:0;margin:0;pointer-events:none}
.ui-choice input:focus-visible{outline:0!important}
.ui-upload{min-width:0;grid-template-columns:auto minmax(0,1fr);gap:var(--ui-gap-short)}
.ui-upload-name{min-width:0}
.ui-record-operations{width:100%;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:var(--ui-gap-short)}
.ui-record-operator{min-width:0;overflow:hidden;color:var(--ui-tone-medium);font-size:var(--ui-fs-13);font-weight:var(--ui-weight-weak);line-height:1.35;text-overflow:ellipsis;white-space:nowrap}
.ui-record-operation-actions{min-width:0;margin-left:auto;display:inline-flex;align-items:center;justify-content:flex-end;gap:var(--ui-action-gap);flex-wrap:wrap}
.ui-record-operation-actions>form{display:contents;margin:0}
