/* Identidade operacional: componentes compartilhados, sem alterar a tela de acesso. */
#app:not(.app--login) .sidebar { background:var(--surface);box-shadow:none; }
#app:not(.app--login) .sidebar__brand { border-bottom:1px solid var(--border); }
.sidebar__search { padding:16px 16px 0; }
.sidebar__search label { display:block;margin-bottom:6px;color:var(--text-muted);font-size:12px;font-weight:600; }
.sidebar__search input { width:100%;min-width:0;min-height:38px;padding:8px 10px;background:var(--bg);border:1px solid var(--border);border-radius:10px;color:var(--text); }
.sidebar__search-status { display:block;min-height:16px;margin-top:4px;font-size:11px;color:var(--text-muted); }
.is-collapsed .sidebar__search { display:none; }
.user-menu .user-menu__mobile-only { display:none; }
.user-menu svg { width:18px;height:18px;flex-shrink:0; }
.sidebar__nav { padding-top:12px; }
.sidebar__nav [hidden] { display:none!important; }
.sidebar__nav .nav-section { margin-bottom:12px; }
.sidebar__nav .nav-section__label { display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 10px;margin:0 0 4px;list-style:none;cursor:pointer;letter-spacing:.04em;font-size:11px;border-radius:8px; }
.sidebar__nav .nav-section__label::-webkit-details-marker { display:none; }
.sidebar__nav .nav-section__label:hover { background:var(--surface-alt); }
.nav-section__chevron { width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(-45deg);flex-shrink:0; }
.nav-section[open]>.nav-section__label .nav-section__chevron { transform:rotate(45deg); }
.is-collapsed .sidebar__nav .nav-section__label { display:none; }
.sidebar__nav .nav-item { min-height:42px;padding:9px 10px;font-size:13px;border-radius:10px;white-space:normal;line-height:1.4; }
.sidebar__nav .nav-item svg { width:20px;height:20px;flex-basis:20px; }
.sidebar__nav .nav-item.is-active { border-left-color:var(--primary-hover); }
#app:not(.app--login) .topbar { box-shadow:none; }
#app:not(.app--login) .topbar__toggle { min-height:36px;min-width:36px;align-items:center;justify-content:center; }
#app:not(.app--login) .company-select { min-height:40px;max-width:min(40vw,390px);text-overflow:ellipsis; }
.route-tutorial-bar { display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:16px; }
.route-breadcrumb { display:flex;align-items:center;flex-wrap:wrap;gap:8px;color:var(--text-muted);font-size:12px;line-height:1.6;min-width:0; }
.route-breadcrumb a { color:var(--primary-hover); }
.route-breadcrumb a:hover { text-decoration:underline; }
.route-breadcrumb [aria-current="page"] { color:var(--text);font-weight:600; }
.route-context { display:grid;gap:4px;min-width:0; }
.route-scope { color:var(--text-muted);font-size:12px;line-height:1.5;overflow-wrap:anywhere; }
#page-content { background-image:none; }
#page-content .card { box-shadow:none; }
#page-content .page-header-row { flex-wrap:wrap;gap:16px;align-items:flex-start; }
#page-content .data-table__toolbar { flex-wrap:wrap;gap:12px; }
#page-content .data-table__search { flex:1 1 260px;min-width:0;max-width:560px;min-height:42px;background:var(--surface); }
#page-content .data-table__search:focus-within { outline:2px solid var(--primary-hover);outline-offset:2px; }
#page-content .data-table__search svg { width:18px;height:18px;flex-shrink:0; }
#page-content .data-table th { text-transform:none;letter-spacing:0;font-size:12px; }
#page-content .data-table th[aria-sort="ascending"],#page-content .data-table th[aria-sort="descending"] { color:var(--primary-hover); }
#page-content .data-table td { vertical-align:middle;line-height:1.5; }
#page-content .data-table tr:focus-visible { outline:2px solid var(--primary-hover);outline-offset:-2px; }
#page-content .data-table__footer,#page-content .data-table__pagination { flex-wrap:wrap;gap:12px; }
#page-content .data-table__footer { border-top:1px solid var(--border-soft); }
#page-content .data-table__pagination button { min-width:32px;min-height:32px;justify-content:center;align-items:center; }
#page-content .data-table__count { font-variant-numeric:tabular-nums; }
#page-content :is(.filter-bar,.work-toolbar) { gap:12px; }
#page-content .filter-bar select { min-height:40px;max-width:100%; }
#page-content .form-field label { line-height:1.5; }
.modal__header h3 { line-height:1.4;overflow-wrap:anywhere; }
.modal__footer { flex-wrap:wrap; }
.modal__body .form-field label { text-transform:none;letter-spacing:0;line-height:1.5; }
.modal__body .form-field :is(input,select,textarea):focus-visible { outline:2px solid var(--primary-hover);outline-offset:2px; }
#page-content .work-metrics article,#page-content .work-groups article { box-shadow:none;border-radius:14px; }
#page-content .work-metrics strong { font-variant-numeric:tabular-nums;color:var(--primary-hover); }
#page-content .floorplan-list-item { border-radius:10px; }
#page-content .floorplan-choice span:first-child { white-space:normal;line-height:1.5; }
#page-content .floorplan-toolbar { display:flex;flex-wrap:wrap;align-items:center;gap:8px; }
#page-content .industrial-navigation { gap:12px;line-height:1.5; }
#page-content .detail-grid dt { text-transform:none;letter-spacing:0;font-weight:600; }
#page-content .detail-grid dd { overflow-wrap:anywhere; }
#app:not(.app--login) :is(button,a,input,select,summary):focus-visible { outline:2px solid var(--primary-hover);outline-offset:3px; }
@media(max-width:600px) {
  .user-menu .user-menu__mobile-only { display:flex; }
  #app:not(.app--login) .topbar { gap:8px;padding-inline:12px; }
  #app:not(.app--login) .topbar__left { gap:6px;min-width:0; }
  #app:not(.app--login) .company-select { max-width:42vw;min-width:0; }
  .route-breadcrumb { font-size:11px; }
  #page-content .data-table__toolbar { padding:12px; }
}
@media(prefers-reduced-motion:reduce) { .sidebar__nav .nav-item { transition:none; } }
