/* M1.3 — linked for desktop screens only. Document and print CSS stay separate. */
@import url("aliatcore-tokens.css");

body {
    --m13-field-border: #7587a1;
    --m13-workspace-width: 1536px;
    --m13-workspace-gutter: 32px;
}

/* Operational actions and access forms. */
.v4-m1-shell .content-shell .btn:is(.hc-table-action-secondary, .unit-action-edit, .acf-btn-secondary) {
    color: var(--aliatcore-navy);
    background-color: #fff;
    border-color: var(--m13-field-border);
}

.v4-m1-shell .content-shell .btn:is(.hc-table-action-secondary, .unit-action-edit, .acf-btn-secondary):hover {
    color: var(--aliatcore-navy);
    background-color: #edf2f8;
}

.v4-m1-shell .content-shell .gov-product-form .gov-actions > button.btn {
    color: var(--aliatcore-deep);
    background-color: var(--aliatcore-gold);
    border-color: var(--aliatcore-gold);
}

.v4-m1-shell .content-shell .gov-product-form .gov-actions > button.btn:hover {
    color: var(--aliatcore-deep);
    background-color: #dfbd74;
}

.v4-m1-shell :is(.content-shell, .top) .btn:focus-visible,
.v4-m1-shell .user-table-shell:focus-visible,
.m13-recovery .btn:focus-visible {
    outline: 2px solid var(--aliatcore-navy);
    outline-offset: 3px;
}

.v4-m1-login .m1-login-card .alert.bad {
    color: #842433;
    background: #fce7ea;
    border-color: #c36570;
}

.v4-m1-login .login-form :is(input[type="email"], input[type="password"]):enabled:not(:focus, [aria-invalid="true"]),
.v4-m1-shell :is(.content-shell, .top) :is(
    select, textarea, input:not([type="checkbox"], [type="radio"], [type="file"], [type="hidden"])
):enabled:not(:focus, [readonly], [aria-invalid="true"]),
.m13-recovery input[type="email"]:enabled:not(:focus, [aria-invalid="true"]) {
    border-color: var(--m13-field-border);
}

.v4-m1-shell :is(.content-shell, .top) :is(
    select, textarea, input:not([type="checkbox"], [type="radio"], [type="file"], [type="hidden"])
):enabled:focus:not([readonly], [aria-invalid="true"]) {
    border-color: var(--aliatcore-navy);
}

.public .trial-signup-head .eyebrow,
.public .legal-document-hero > .eyebrow {
    color: var(--aliatcore-navy);
}

.m13-recovery .first-access-card {
    font-family: var(--aliatcore-font);
}

.m13-recovery .first-access-card .btn {
    min-height: 48px;
    border-radius: 7px;
    font: 650 14px/1.4 var(--aliatcore-font);
}

.m13-recovery .first-access-card button.btn {
    color: #fff;
    background: var(--aliatcore-navy);
    border-color: var(--aliatcore-navy);
    box-shadow: none;
}

.m13-recovery .first-access-card button.btn:hover {
    background: var(--aliatcore-deep);
}

.m13-recovery .first-access-card button.btn[aria-disabled="true"] {
    opacity: .75;
    cursor: progress;
}

/* The approved Core sidebar stays untouched. Other shells adopt its measures. */
body.hc-app:not(.v4-m1-shell) {
    --sidebar-width: 224px;
}

.hc-app:not(.v4-m1-shell) #app-sidebar,
:is(#aei-sidebar, #gov-navigation) {
    font-family: var(--aliatcore-font);
}

body.aei-app {
    --aex-sidebar-width: 224px;
}

body.gov-body {
    --platform-sidebar-width: 224px;
    --m13-gov-nav-space: var(--platform-sidebar-width);
}

body.gov-body.sidebar-collapsed {
    --m13-gov-nav-space: 76px;
}

#gov-navigation {
    width: var(--m13-gov-nav-space);
}

:is(#aei-sidebar, #gov-navigation) {
    padding: 16px;
    overflow: hidden;
}

:is(#aei-sidebar .aex-sidebar-heading, #gov-navigation .gov-sidebar__brand) {
    flex: 0 0 auto;
    min-height: 113px;
    padding: 0;
    gap: 0;
}

:is(#aei-sidebar .aex-brand, #gov-navigation .gov-sidebar__brand > a) {
    display: flex;
    flex: 1;
    align-items: center;
    min-width: 0;
    padding-inline: 4px;
}

:is(#aei-sidebar .aex-brand, #gov-navigation .gov-sidebar__brand > a) > img {
    max-width: 143px;
}

#gov-navigation .gov-desktop-toggle {
    display: inline-grid;
    flex: 0 0 auto;
    place-items: center;
    width: 40px;
    height: 40px;
    padding: 0;
    border: 1px solid var(--sidebar-line);
    border-radius: 8px;
    color: #fff;
    background: var(--sidebar-hover);
    cursor: pointer;
}

#gov-navigation .gov-desktop-toggle:hover {
    background: var(--sidebar-active);
}

:is(#aei-sidebar .aex-sidebar-toggle, #gov-navigation .gov-desktop-toggle) > i {
    font-size: 14px;
    line-height: 1;
}

:is(#aei-sidebar, #gov-navigation) nav {
    display: flex;
    min-height: 0;
    flex-direction: column;
    margin: 20px 0 0;
    padding: 0;
    gap: 4px;
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: var(--sidebar-line) transparent;
}

#gov-navigation .gov-nav__group {
    margin: 0;
}

#gov-navigation .gov-nav__group + .gov-nav__group {
    margin-top: 16px;
}

:is(#aei-sidebar .aex-sidebar-section, #gov-navigation .gov-nav__group > span) {
    padding: 0 12px 8px;
    color: var(--sidebar-label);
    font-size: 10px;
    font-weight: 600;
    line-height: 1.55;
    letter-spacing: .14em;
    text-transform: uppercase;
}

:is(#aei-sidebar, #gov-navigation) nav :is(a, .aex-nav-disabled) {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    min-height: 42px;
    gap: 12px;
    padding: 0 12px;
    border: 1px solid transparent;
    border-radius: 8px;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.3;
}

:is(#aei-sidebar, #gov-navigation) nav :is(a, .aex-nav-disabled) > i:first-child {
    display: grid;
    flex: 0 0 20px;
    place-items: center;
    font-size: 16px;
    line-height: 1;
}

:is(#aei-sidebar, #gov-navigation) nav :is(a, .aex-nav-disabled) > span:not(.visually-hidden) {
    min-width: 0;
    overflow-wrap: anywhere;
    white-space: normal;
}

:is(#aei-sidebar .aex-sidebar-user, #gov-navigation .gov-sidebar__identity) {
    flex: 0 0 auto;
    padding: 16px 0 0;
}

.sidebar-collapsed #gov-navigation .gov-sidebar__brand {
    justify-content: center;
}

.sidebar-collapsed #gov-navigation .gov-sidebar__brand > a,
.sidebar-collapsed #gov-navigation :is(.gov-nav__group > span, .gov-nav a > span, .gov-sidebar__identity) {
    display: none;
}

.sidebar-collapsed #gov-navigation .gov-desktop-toggle {
    position: absolute;
    top: 32px;
}

.sidebar-collapsed :is(#aei-sidebar .aex-sidebar-toggle, #gov-navigation .gov-desktop-toggle) > i {
    transform: rotate(180deg);
}

.sidebar-collapsed :is(#aei-sidebar, #gov-navigation) nav :is(a, .aex-nav-disabled) {
    justify-content: center;
    padding-inline: 0;
}

.sidebar-collapsed #aei-sidebar .aex-nav-lock {
    display: none;
}

/* Common operational content line; report bodies retain their original widths. */
.v4-m1-shell .top,
.aei-app:not(:has(.aed-document)) .aex-topbar {
    padding-inline: max(var(--m13-workspace-gutter), calc((100% - var(--m13-workspace-width)) / 2 + var(--m13-workspace-gutter)));
}

.aei-app:not(:has(.aed-document)) :is(.aex-shell-main, .aex-shell-container) {
    width: min(100%, var(--m13-workspace-width));
    padding-inline: var(--m13-workspace-gutter);
}

.gov-body :is(.gov-header, .gov-main, .gov-footer) {
    margin-left: var(--m13-gov-nav-space);
}

.gov-body .gov-header {
    padding-inline: max(var(--m13-workspace-gutter), calc((100% - var(--m13-gov-nav-space) - var(--m13-workspace-width)) / 2 + var(--m13-workspace-gutter)));
}

.gov-body :is(.gov-main:not(:has(.gov-ceo)), .gov-footer) {
    width: min(calc(100% - var(--m13-gov-nav-space)), var(--m13-workspace-width));
    max-width: none;
    margin-left: max(var(--m13-gov-nav-space), calc((100% + var(--m13-gov-nav-space) - var(--m13-workspace-width)) / 2));
    padding-inline: var(--m13-workspace-gutter);
}

.hc-app:not(.v4-m1-shell, .sidebar-collapsed):has(.executive-result-header) .content-shell {
    width: min(calc(100% - 40px), var(--content-max-width));
}

.m13-report-title-original { display: none; }
.m13-report-title-screen { display: inline !important; }

.aei-app:not(.sidebar-collapsed):has(.aed-document) .aex-shell-main {
    width: min(1240px, calc(100% - 88px));
}

.gov-body:not(.sidebar-collapsed) .gov-main:has(.gov-ceo) {
    width: min(calc(100% - 264px), var(--platform-content-width));
}

/* Densidade desktop — preserve table order, actions and data. */
.user-table-scroll-hint {
    margin: 0 16px 8px;
}

@media (max-width: 1599px) {
    .v4-m1-shell .user-table--admin { min-width: 65.5rem; }
    .v4-m1-shell .user-table--client { min-width: 60.5rem; }
    .v4-m1-shell .user-table .user-col-identity { width: 13rem !important; }
    .v4-m1-shell .user-table .user-col-company { width: 10rem !important; }
    .v4-m1-shell .user-table .user-col-role { width: 8rem !important; }
    .v4-m1-shell .user-table .user-col-account { width: 6.25rem !important; }
    .v4-m1-shell .user-table .user-col-presence,
    .v4-m1-shell .user-table .user-col-activity { width: 6.5rem !important; }
    .v4-m1-shell .user-table .user-col-created { width: 6rem !important; }
    .v4-m1-shell .user-table :is(th, td) { padding-inline: 8px; }
    .v4-m1-shell .user-table th { letter-spacing: .045em; }
    .v4-m1-shell .user-table .user-col-activity { white-space: normal; }
}

.m13-dashboard .top {
    min-height: 76px;
    padding-block: 8px;
}

.m13-dashboard .top h1 {
    font-size: clamp(24px, 1.8vw, 30px);
    line-height: 1.15;
}

.m13-dashboard .top-summary { margin-top: 3px; }

.m13-dashboard .content-shell {
    padding-block: 16px 24px;
}

.m13-dashboard .content-shell:has(> .ux-dashboard-filter) {
    display: grid;
    grid-template-columns: minmax(0, 2.1fr) minmax(270px, 1fr);
    grid-auto-rows: max-content;
    align-content: start;
    gap: 10px;
}

.m13-dashboard .content-shell:has(> .ux-dashboard-filter) > * { grid-column: 1 / -1; }

.m13-dashboard .content-shell:has(> .ux-dashboard-filter) > .ux-next-step {
    grid-column: 1;
    margin: 0;
}

.m13-dashboard .content-shell > .ux-dashboard-filter {
    display: grid;
    grid-column: 2;
    grid-template-columns: minmax(0, 1fr) auto;
    align-content: center;
    margin: 0;
}

.m13-dashboard .ux-dashboard-filter label { min-width: 0; }

.m13-dashboard .content-shell:has(> .ux-dashboard-filter) > .ux-dashboard-workspace {
    margin-top: 0;
}

.m13-dashboard .dashboard-overview {
    align-items: center;
    margin-bottom: 0;
    padding: 12px 16px;
    gap: 12px;
}

.m13-dashboard .dashboard-overview h2 { margin: 2px 0; }
.m13-dashboard .dashboard-overview .hc-signal-list div { padding: 6px 10px; }
.m13-dashboard .dashboard-overview .hc-signal-list dd { margin-top: 2px; }
.m13-dashboard .dashboard-overview .hc-signal-list dd small { margin-top: 2px; }

.m13-dashboard .ux-next-step {
    margin: 10px 0;
    padding: 10px 16px;
    gap: 16px;
}

.m13-dashboard .ux-next-step h2,
.m13-dashboard .ux-next-step p { margin: 2px 0; }
.m13-dashboard .ux-next-step .ux-actions { flex-shrink: 0; gap: 8px; }
.m13-dashboard .content-shell:has(> .ux-dashboard-filter) .ux-next-step .ux-actions {
    display: grid;
    gap: 4px;
}
.m13-dashboard .ux-dashboard-filter { margin-bottom: 10px; padding: 8px 16px; }
.m13-dashboard .hc-metrics { gap: 8px; }

.m13-dashboard .hc-metrics .hc-metric-card {
    min-height: 0;
    padding: 8px 12px;
    gap: 2px;
}

.m13-dashboard .hc-metrics .hc-metric-card strong { margin: 2px 0; font-size: 1.6rem; }
.m13-dashboard .ux-dashboard-workspace { margin-top: 10px; }
.m13-dashboard .ux-dashboard-workspace > .hc-section-card { padding: 12px 16px; }
.m13-dashboard .ux-dashboard-workspace > .hc-section-card h2 { margin: 2px 0; }
.m13-dashboard .dashboard-table,
.m13-dashboard .dashboard-table table { margin-top: 8px; }
.m13-dashboard .dashboard-table :is(th, td) { padding-block: 6px; }
