/*
 * Nimble Management Console overview - approved Dashboard visual family.
 * Loaded after dashboard-polish.css. Only the overview markup is restyled.
 * Live counts remain authoritative; no historical trends are synthesized.
 */

#content > .page-heading[hidden] { display: none !important; }
.management-overview {
    min-width: 0;
    color: var(--dashboard-ink, #102d54);
}
.management-overview .management-hero {
    min-height: 153px;
    padding: 23px 29px;
    margin-bottom: 13px;
    border-radius: 13px;
}
.management-overview .management-hero .hero-copy {
    max-width: calc(100% - 220px);
}
.management-overview .management-hero .hero-intro {
    max-width: 820px;
    font-size: .87rem;
    line-height: 1.4;
}
.management-overview .management-hero .hero-context {
    column-gap: 24px;
    row-gap: 7px;
    margin-top: 13px;
}
.management-overview .management-hero .hero-context > span {
    font-size: .72rem;
}
.management-overview .management-hero .hero-promise {
    flex-basis: 170px;
    font-size: .87rem;
    font-weight: 500;
}
.management-overview .management-hero .hero-watermark {
    right: 15%;
    top: -37px;
    opacity: .19;
}
.management-overview .management-hero .hero-dots {
    right: 24%;
}

/* Global API counts: six compact tiles per row at full desktop width. */
.management-overview .management-counts {
    display: grid;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    gap: 11px;
    margin: 0 0 20px;
}
.management-overview .management-stat,
.management-overview .management-module {
    --mgmt-accent: #1478ee;
    --mgmt-soft: #e7f2ff;
    background: #fff;
    border: 1px solid var(--dashboard-line, #d6e4f6);
    box-shadow: var(--dashboard-elevation, 0 5px 16px rgba(22, 62, 108, .075));
}
.management-overview .management-tone-green {
    --mgmt-accent: #06a976;
    --mgmt-soft: #def9ed;
}
.management-overview .management-tone-teal {
    --mgmt-accent: #06a9a3;
    --mgmt-soft: #def9f8;
}
.management-overview .management-tone-purple {
    --mgmt-accent: #8b41e8;
    --mgmt-soft: #f1e7ff;
}
.management-overview .management-tone-orange {
    --mgmt-accent: #ed7916;
    --mgmt-soft: #fff0df;
}
.management-overview .management-tone-amber {
    --mgmt-accent: #dc821a;
    --mgmt-soft: #fff3e1;
}
.management-overview .management-tone-red {
    --mgmt-accent: #e33356;
    --mgmt-soft: #ffe8ed;
}
.management-overview .management-stat {
    min-width: 0;
    min-height: 84px;
    display: flex;
    align-items: center;
    gap: 10px;
    border-radius: 12px;
    padding: 11px 12px;
}
.management-overview .management-stat-icon,
.management-overview .management-module-icon {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    justify-content: center;
    color: var(--mgmt-accent);
    background: var(--mgmt-soft);
    border-radius: 50%;
}
.management-overview .management-stat-icon {
    width: 47px;
    height: 47px;
    font-size: 1.36rem;
}
.management-overview .management-stat-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    flex: 1;
    gap: 2px;
}
.management-overview .management-stat-copy strong {
    display: block;
    font-size: 1.27rem;
    line-height: 1.1;
    font-weight: 780;
    color: #102f5c;
    font-variant-numeric: tabular-nums;
}
.management-overview .management-stat-copy > span {
    font-size: .7rem;
    line-height: 1.27;
    color: #4c6a90;
    overflow-wrap: anywhere;
}
/* Flat accent denotes category. This is intentionally not a trend chart. */
.management-overview .management-stat-rule {
    flex: 0 0 16px;
    width: 16px;
    height: 2px;
    border-radius: 2px;
    opacity: .8;
    background: var(--mgmt-accent);
    align-self: center;
}

.management-overview .management-overview-section-heading {
    margin: 0 1px 10px;
    padding: 11px 0 0;
    border-top: 1px solid #d8e7f8;
}
.management-overview .management-overview-section-heading h2 {
    margin: 0 0 4px;
    font-size: 1.08rem;
    font-weight: 760;
    letter-spacing: -.018em;
    color: #102c54;
}
.management-overview .management-overview-section-heading p {
    margin: 0;
    font-size: .76rem;
    color: #526e90;
}
.management-overview .management-sections {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 9px;
    margin: 0;
    align-items: stretch;
}
.management-overview .management-module {
    min-width: 0;
    margin: 0;
    border-radius: 13px;
    padding: 11px 10px 13px;
}
.management-overview .management-module-heading {
    min-height: 65px;
    display: flex;
    align-items: flex-start;
    gap: 8px;
    padding: 0 0 10px;
}
.management-overview .management-module-icon {
    width: 42px;
    height: 42px;
    font-size: 1.24rem;
}
.management-overview .management-module-heading > div {
    min-width: 0;
    padding-top: 3px;
}
.management-overview .management-module-heading h3 {
    margin: 0 0 5px;
    font-size: .84rem;
    line-height: 1.25;
    font-weight: 760;
    color: #102d54;
}
.management-overview .management-module-heading p {
    margin: 0;
    color: #59718e;
    font-size: .62rem;
    line-height: 1.42;
}
.management-overview .management-links {
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.management-overview .management-resource-link {
    display: flex;
    align-items: center;
    gap: 8px;
    min-width: 0;
    min-height: 39px;
    margin: 0;
    padding: 8px 8px;
    border-radius: 8px;
    background: #f4f8ff;
    border: 1px solid #dce9fb;
    color: #086bdc;
    font-size: .7rem;
    font-weight: 585;
    text-decoration: none;
    line-height: 1.3;
    transition: background-color 130ms ease, border-color 130ms ease, transform 130ms ease;
}
.management-overview .management-resource-link > .bi:first-child {
    flex: 0 0 15px;
    width: 15px;
    text-align: center;
    font-size: .89rem;
}
.management-overview .management-resource-link > span:not(.management-api-heading) {
    min-width: 0;
    overflow-wrap: anywhere;
}
.management-overview .management-resource-link .management-link-chevron {
    margin-left: auto;
    flex: 0 0 auto;
    font-size: .72rem;
}
.management-overview .management-resource-link:hover {
    color: #0755bb;
    background: #e7f2ff;
    border-color: #add3ff;
    transform: translateY(-1px);
}
.management-overview .management-resource-link:focus-visible {
    outline: 2px solid #0877e7;
    outline-offset: 2px;
    border-color: #64a7f2;
}

/* API Access is prominent while retaining the system's palette/permissions. */
.management-overview .management-resource-link.management-api-link {
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 5px;
    min-height: 69px;
    background: #fff6ea;
    border-color: #ffe1bc;
    color: #15345b;
}
.management-overview .management-api-heading {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    min-width: 0;
    gap: 5px;
    line-height: 1.3;
}
.management-overview .management-api-heading > .bi:first-child {
    flex: 0 0 auto;
    color: #e1790c;
    font-size: .96rem;
}
.management-overview .management-api-heading strong {
    font-size: .7rem;
    font-weight: 755;
    color: #203c5f;
}
.management-overview .management-api-heading > .bi:last-child {
    margin-left: auto;
    font-size: .72rem;
    color: #c46808;
}
.management-overview .management-partner-label {
    flex: 0 0 auto;
    padding: 2px 5px;
    border-radius: 5px;
    background: #e67b12;
    color: #fff;
    font-size: .59rem;
    font-weight: 700;
}
.management-overview .management-api-description {
    padding-left: 22px;
    font-size: .66rem;
    line-height: 1.42;
    font-weight: 480;
    color: #576a82;
}
.management-overview .management-resource-link.management-api-link:hover {
    background: #ffedda;
    border-color: #efbd7c;
}

/* Preserve the original administrator and safeguards routes below modules. */
.management-overview .management-support-panels {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 20px;
}
.management-overview .management-support-panels .portal-panel {
    margin: 0;
    padding: 18px;
    border: 1px solid var(--dashboard-line, #d6e4f6);
    border-radius: 13px;
    box-shadow: var(--dashboard-elevation, 0 5px 16px rgba(22, 62, 108, .075));
}
.management-overview .management-support-panels .panel-title {
    margin-bottom: 12px;
    font-size: 1rem;
    color: #10325d;
}
.management-overview .management-support-panels p {
    font-size: .78rem;
    line-height: 1.5;
}

/* Dashboard-grade responsiveness; allow cards to wrap before text overflows. */
@media (max-width: 1599.98px) {
    .management-overview .management-counts { grid-template-columns: repeat(4, minmax(0, 1fr)); }
    .management-overview .management-sections { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .management-overview .management-module { padding: 16px; }
}
@media (min-width: 1600px) and (max-width: 1800px) {
    .management-overview .management-stat-rule { display: none; }
}
@media (max-width: 1099.98px) {
    .management-overview .management-counts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    .management-overview .management-sections { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .management-overview .management-support-panels { grid-template-columns: 1fr; }
}
@media (max-width: 799.98px) {
    .management-overview .management-hero { min-height: 170px; padding: 24px 18px; }
    .management-overview .management-hero .hero-copy { max-width: 100%; }
    .management-overview .management-hero .hero-promise { display: none; }
    .management-overview .management-hero .hero-watermark { right: -80px; }
    .management-overview .management-counts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 599.98px) {
    .management-overview .management-hero { min-height: 200px; }
    .management-overview .management-hero .hero-context { gap: 7px; }
    .management-overview .management-hero .hero-context > span { width: 100%; }
    .management-overview .management-stat { min-height: 82px; padding: 10px; }
    .management-overview .management-stat-icon { width: 40px; height: 40px; font-size: 1.1rem; }
    .management-overview .management-stat-copy strong { font-size: 1.14rem; }
    .management-overview .management-stat-copy > span { font-size: .66rem; }
    .management-overview .management-stat-rule { display: none; }
    .management-overview .management-sections { grid-template-columns: 1fr; }
    .management-overview .management-module { padding: 16px; }
}
@media (prefers-reduced-motion: reduce) {
    .management-overview .management-resource-link { transition: none; }
    .management-overview .management-resource-link:hover { transform: none; }
}


/* Compact Clinic Administration actions: match Management module typography. */
.management-overview .management-support-panels .portal-panel {
    padding: 12px 14px 11px;
}
.management-overview .management-support-panels .panel-title {
    margin-bottom: 9px;
    font-size: .83rem;
    font-weight: 730;
    line-height: 1.3;
}
.management-overview .management-support-panels .btn.btn-soft {
    min-height: 30px;
    padding: 5px 9px;
    border-radius: 7px;
    font-size: .69rem;
    font-weight: 590;
    line-height: 1.25;
}
.management-overview .management-support-panels .btn.btn-soft .bi {
    font-size: .82rem;
    margin-right: 5px !important;
}
.management-overview .management-support-panels .portal-panel > .d-flex {
    gap: 6px !important;
}
.management-overview .management-support-panels p {
    margin-bottom: 6px;
    font-size: .68rem;
    line-height: 1.42;
}

/* Seven-column metrics give 14 live counters two balanced desktop rows. */
@media (max-width: 1699.98px) and (min-width: 1600px) {
    .management-overview .management-counts { grid-template-columns: repeat(7, minmax(0, 1fr)); }
    .management-overview .management-stat { gap: 7px; padding: 10px 8px; }
    .management-overview .management-stat-icon { width: 39px; height: 39px; font-size: 1.13rem; }
    .management-overview .management-stat-rule { display: none; }
}
