/* CIOne 6.2.0 — experiência institucional unificada. Camada aditiva, sem alterar regras de negócio. */
.fx-ti-app.cione-app {
  --cione-space-1: 4px; --cione-space-2: 8px; --cione-space-3: 12px; --cione-space-4: 16px;
  --cione-space-5: 24px; --cione-space-6: 32px; --cione-space-7: 48px;
  --cione-radius-sm: 8px; --cione-radius-md: 12px; --cione-radius-lg: 16px;
  --cione-shadow-soft: 0 1px 2px rgba(15,23,42,.04), 0 8px 24px rgba(15,23,42,.05);
  --cione-control-height: 44px; --cione-content-max: 1560px;
  color-scheme: light dark;
}
.fx-ti-app.cione-app *, .fx-ti-app.cione-app *::before, .fx-ti-app.cione-app *::after { box-sizing: border-box; }
.fx-ti-app.cione-app .cione-skip-link { position: fixed; inset: 8px auto auto 8px; z-index: 100000; transform: translateY(-160%); padding: 10px 14px; border-radius: 8px; background: var(--cione-primary, #1f4f7a); color: #fff; font-weight: 700; }
.fx-ti-app.cione-app .cione-skip-link:focus { transform: translateY(0); }
.fx-ti-app.cione-app .fx-ti-main { min-width: 0; background: var(--cione-page-bg, #f5f7fa); }
.fx-ti-app.cione-app .fx-ti-content { width: min(100%, var(--cione-content-max)); margin-inline: auto; padding: clamp(16px, 2.2vw, 32px); }
.fx-ti-app.cione-app .cione-ui-page-header { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 16px 24px; align-items: end; margin: 0 0 24px; padding: 0 0 20px; border-bottom: 1px solid var(--cione-border, #dfe4ea); }
.fx-ti-app.cione-app .cione-ui-page-header h1 { margin: 0; max-width: 24ch; font-size: clamp(1.55rem, 2vw, 2rem); line-height: 1.15; letter-spacing: -.025em; }
.fx-ti-app.cione-app .cione-ui-page-header p { max-width: 72ch; margin: 8px 0 0; color: var(--cione-muted, #5f6b7a); font-size: .96rem; line-height: 1.55; }
.fx-ti-app.cione-app .cione-page-context { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 12px; }
.fx-ti-app.cione-app .cione-context-chip { display: inline-flex; align-items: center; min-height: 30px; padding: 4px 10px; border: 1px solid var(--cione-border, #dfe4ea); border-radius: 999px; background: var(--cione-surface, #fff); color: var(--cione-text, #1d2733); font-size: .78rem; font-weight: 650; }
.fx-ti-app.cione-app :where(button,.button,input,select,textarea,[role="button"],[role="tab"],[role="menuitem"],a):focus-visible { outline: 3px solid color-mix(in srgb, var(--cione-focus, #2b6cb0) 42%, transparent); outline-offset: 2px; }
.fx-ti-app.cione-app :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea) { min-height: var(--cione-control-height); border-radius: var(--cione-radius-sm); }
.fx-ti-app.cione-app :where(.button,button:not(.fx-ti-sidebar-toggle):not(.fx-ti-mobile-menu-button)) { min-height: var(--cione-control-height); border-radius: var(--cione-radius-sm); }
.fx-ti-app.cione-app :where(.fx-ti-card,.cione-ui-card,.cione-cockpit-panel,.cione-gov-panel,.cione-finance-panel,.postbox) { border: 1px solid var(--cione-border, #dfe4ea); border-radius: var(--cione-radius-md); box-shadow: var(--cione-shadow-soft); background: var(--cione-surface, #fff); }
.fx-ti-app.cione-app :where(.fx-ti-grid,.cione-grid,.cione-kpi-grid,.cione-cockpit-kpis,.cione-gov-kpis) { gap: clamp(12px, 1.5vw, 20px); }
.fx-ti-app.cione-app .fx-ti-table-wrap, .fx-ti-app.cione-app .cione-table-container { overflow: auto; max-width: 100%; border: 1px solid var(--cione-border, #dfe4ea); border-radius: var(--cione-radius-md); background: var(--cione-surface, #fff); }
.fx-ti-app.cione-app table.fx-ti-table { width: 100%; border-collapse: separate; border-spacing: 0; }
.fx-ti-app.cione-app table.fx-ti-table th { position: sticky; top: 0; z-index: 2; background: var(--cione-table-header-bg, #f4f6f8); color: var(--cione-text, #1d2733); font-size: .76rem; letter-spacing: .02em; text-transform: none; }
.fx-ti-app.cione-app table.fx-ti-table th, .fx-ti-app.cione-app table.fx-ti-table td { padding: 12px 14px; vertical-align: top; border-bottom: 1px solid var(--cione-table-border, #e5e9ef); }
.fx-ti-app.cione-app table.fx-ti-table tbody tr:hover { background: var(--cione-table-row-hover, #f7f9fb); }
.fx-ti-app.cione-app table.fx-ti-table td[data-cione-numeric="true"], .fx-ti-app.cione-app table.fx-ti-table .is-numeric { text-align: right; font-variant-numeric: tabular-nums; }
.fx-ti-app.cione-app .cione-empty-state, .fx-ti-app.cione-app [data-cione-empty-state] { display: grid; place-items: center; min-height: 180px; padding: 32px; text-align: center; color: var(--cione-muted, #5f6b7a); }
.fx-ti-app.cione-app :where(.notice,.fx-ti-notice,.cione-alert,[role="alert"],[role="status"]) { border-radius: var(--cione-radius-sm); }
.fx-ti-app.cione-app :where(.fx-ti-modal,.cione-modal,[role="dialog"]) { max-width: min(760px, calc(100vw - 32px)); max-height: min(88vh, 900px); }
.fx-ti-app.cione-app :where(.fx-ti-modal__body,.cione-modal__body,[data-cione-dialog-body]) { overflow: auto; overscroll-behavior: contain; }
.fx-ti-app.cione-app .cione-sidebar-nav { scrollbar-width: thin; }
.fx-ti-app.cione-app .cione-nav-group-label { margin: 18px 12px 6px; font-size: .68rem; letter-spacing: .08em; text-transform: uppercase; color: var(--cione-muted, #667085); }
.fx-ti-app.cione-app .cione-sidebar-nav a { min-height: 42px; border-radius: 9px; }
.fx-ti-app.cione-app .cione-sidebar-nav a[aria-current="page"] { font-weight: 700; box-shadow: inset 3px 0 0 var(--cione-primary, #1f4f7a); }
.fx-ti-app.cione-app .cione-user-menu__panel, .fx-ti-app.cione-app [role="menu"] { border-radius: 12px; box-shadow: 0 18px 50px rgba(15,23,42,.18); }
.fx-ti-app.cione-app .cione-mobile-card-label { display: none; }
@media (max-width: 900px) {
  .fx-ti-app.cione-app .cione-ui-page-header { grid-template-columns: 1fr; align-items: start; }
  .fx-ti-app.cione-app .fx-ti-content { padding: 16px; }
}
@media (max-width: 720px) {
  .fx-ti-app.cione-app .fx-ti-table-wrap table[data-cione-responsive-table="true"] thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .fx-ti-app.cione-app .fx-ti-table-wrap table[data-cione-responsive-table="true"],
  .fx-ti-app.cione-app .fx-ti-table-wrap table[data-cione-responsive-table="true"] tbody,
  .fx-ti-app.cione-app .fx-ti-table-wrap table[data-cione-responsive-table="true"] tr,
  .fx-ti-app.cione-app .fx-ti-table-wrap table[data-cione-responsive-table="true"] td { display: block; width: 100%; }
  .fx-ti-app.cione-app .fx-ti-table-wrap table[data-cione-responsive-table="true"] tr { margin: 10px; width: calc(100% - 20px); border: 1px solid var(--cione-border, #dfe4ea); border-radius: 12px; background: var(--cione-surface, #fff); }
  .fx-ti-app.cione-app .fx-ti-table-wrap table[data-cione-responsive-table="true"] td { display: grid; grid-template-columns: minmax(110px, 38%) 1fr; gap: 12px; padding: 10px 12px; }
  .fx-ti-app.cione-app .fx-ti-table-wrap table[data-cione-responsive-table="true"] td::before { content: attr(data-cione-label); color: var(--cione-muted, #667085); font-size: .75rem; font-weight: 700; }
}
@media (prefers-reduced-motion: reduce) {
  .fx-ti-app.cione-app *, .fx-ti-app.cione-app *::before, .fx-ti-app.cione-app *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
}
@media print {
  .fx-ti-app.cione-app .fx-ti-sidebar, .fx-ti-app.cione-app .fx-ti-topbar, .fx-ti-app.cione-app .cione-page-context, .fx-ti-app.cione-app button { display: none !important; }
  .fx-ti-app.cione-app .fx-ti-content { width: 100%; max-width: none; padding: 0; }
}
