html,
body {
    min-height: 100%;
}

:root {
    --admin-accent: #0f6cbd;
    --admin-accent-dark: #0a4f8a;
    --admin-ink: #12324a;
    --admin-muted: #5f7386;
    --admin-surface: #ffffff;
    --admin-surface-soft: #f4f8fb;
    --admin-border: #d6e3ee;
    --admin-shadow: 0 10px 24px rgba(18, 50, 74, .08);
}

body {
    background:
        radial-gradient(circle at top right, rgba(15, 108, 189, .12), transparent 28%),
        linear-gradient(180deg, #f8fbfd 0%, #eef4f8 100%);
    color: #1f2937;
    font-family: "Segoe UI", Tahoma, Arial, sans-serif;
}

a {
    color: var(--admin-accent);
}

a:hover {
    color: var(--admin-accent-dark);
}

#Table {
    width: 100% !important;
    max-width: none;
    margin: 0;
    display: block;
}

.admin-app-wrapper {
    min-height: 100vh;
}

.admin-header-shell {
    backdrop-filter: none;
    background: #fff !important;
    box-shadow: 0 1px 0 rgba(18, 50, 74, .08);
    position: sticky;
    top: 0;
    z-index: 1045;
}

.admin-header-row {
    min-height: 4.5rem;
}

.admin-mobile-nav-toggle {
    align-items: center;
    border-radius: .85rem;
    color: var(--admin-ink);
    display: inline-flex;
    justify-content: center;
    min-height: 2.75rem;
    min-width: 2.75rem;
    text-decoration: none;
}

.admin-mobile-nav-toggle:hover {
    background: rgba(15, 108, 189, .08);
}

.admin-header-symbol {
    font-size: 1.3rem;
    line-height: 1;
}

.admin-header-brand {
    align-items: center;
    color: var(--admin-ink);
    display: inline-flex;
    gap: .75rem;
    text-decoration: none;
}

.admin-brand-badge,
.admin-header-link-icon,
.admin-modern-icon {
    align-items: center;
    background: linear-gradient(135deg, #0f6cbd 0%, #34a0d8 100%);
    border-radius: .9rem;
    box-shadow: 0 12px 24px rgba(15, 108, 189, .18);
    color: #fff;
    display: inline-flex;
    font-size: .72rem;
    font-weight: 700;
    justify-content: center;
    letter-spacing: .08em;
    line-height: 1;
    text-transform: uppercase;
}

.admin-brand-badge {
    height: 2.5rem;
    width: 2.5rem;
}

.admin-brand-copy {
    display: flex;
    flex-direction: column;
    line-height: 1.1;
}

.admin-brand-copy strong {
    color: var(--admin-ink);
    font-size: 1.02rem;
}

.admin-brand-copy small {
    color: var(--admin-muted);
    font-size: .72rem;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.admin-header-links {
    align-items: center;
    gap: .35rem;
}

.admin-header-links .nav-link {
    align-items: center;
    border-radius: .9rem;
    color: var(--admin-ink);
    display: inline-flex;
    gap: .55rem;
    min-height: 2.9rem;
    padding: .55rem .9rem;
    text-decoration: none;
}

.admin-header-links .nav-link:hover {
    background: rgba(15, 108, 189, .08);
}

.admin-utility-toggle {
    align-items: center;
    border-radius: .85rem;
    color: var(--admin-ink);
    display: inline-flex;
    justify-content: center;
    min-height: 2.75rem;
    min-width: 2.75rem;
    text-decoration: none;
}

.admin-utility-toggle:hover {
    background: rgba(15, 108, 189, .08);
}

.admin-header-link-icon {
    border-radius: .65rem;
    box-shadow: none;
    font-size: .6rem;
    height: 1.8rem;
    width: 1.8rem;
}

.admin-topnav-shell {
    background: transparent;
    position: sticky;
    top: 4.5rem;
    z-index: 1038;
}

body.admin-whatsapp-shell .app-content-header {
    display: none;
}

body.admin-whatsapp-shell .app-content {
    padding-top: .95rem;
}

body.admin-whatsapp-shell .admin-topnav-scroll {
    border-radius: 0 0 .9rem .9rem;
}

body.admin-whatsapp-shell {
    background:
        radial-gradient(circle at top right, rgba(15, 108, 189, .22), transparent 26%),
        linear-gradient(180deg, #eef5fb 0%, #dce9f5 100%);
}

body.admin-whatsapp-shell .admin-main-shell {
    background:
        radial-gradient(circle at 78% 0%, rgba(84, 181, 219, .18), transparent 24%),
        linear-gradient(180deg, rgba(240, 247, 252, .96) 0%, rgba(226, 238, 248, .98) 100%);
}

body.admin-whatsapp-shell .app-content {
    padding-top: .6rem;
}

body.admin-whatsapp-shell .admin-page-body {
    padding-top: .2rem;
}

body.admin-newsletter-shell .app-content-header {
    display: none;
}

body.admin-newsletter-shell .app-content {
    padding-top: .55rem;
}

body.admin-newsletter-shell .admin-topnav-scroll {
    border-radius: 0 0 .9rem .9rem;
    box-shadow: 0 1px 10px rgba(18, 50, 74, .06);
}

body.admin-newsletter-shell {
    background:
        radial-gradient(circle at top right, rgba(15, 108, 189, .16), transparent 28%),
        linear-gradient(180deg, #f7fbfe 0%, #eaf2f8 100%);
}

.app-content-header {
    padding: .75rem 0 .45rem;
}

.admin-page-meta {
    align-items: center;
    display: flex;
    gap: .85rem;
    justify-content: space-between;
}

.admin-page-head {
    color: var(--admin-ink);
    font-size: 1.15rem;
    font-weight: 800;
    line-height: 1.15;
    margin: 0;
}

.admin-page-message {
    flex: 1 1 auto;
}

.admin-topnav-scroll {
    background: #fff;
    border: 1px solid rgba(214, 227, 238, .98);
    border-radius: 0 0 .75rem .75rem;
    box-shadow: 0 1px 8px rgba(18, 50, 74, .05);
    margin: 0;
    overflow: visible;
    padding: .25rem .5rem;
}

.admin-newsletter-tools-bar {
    align-items: center;
    border-top: 1px solid rgba(214, 227, 238, .92);
    display: flex;
    flex-wrap: wrap;
    gap: .35rem;
    margin-top: .2rem;
    padding: .4rem .05rem 0;
}

.admin-newsletter-tools-title {
    color: var(--admin-accent-dark);
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .08em;
    margin-right: .2rem;
    text-transform: uppercase;
}

.admin-newsletter-tools-link {
    align-items: center;
    background: #fff;
    border: 1px solid var(--admin-border);
    border-radius: .6rem;
    box-shadow: none;
    color: var(--admin-ink);
    display: inline-flex;
    font-size: .82rem;
    font-weight: 700;
    min-height: 2.15rem;
    padding: .3rem .65rem;
    text-decoration: none;
}

.admin-newsletter-tools-link:hover,
.admin-newsletter-tools-link:focus,
.admin-newsletter-tools-link.active {
    background: rgba(15, 108, 189, .08);
    border-color: rgba(15, 108, 189, .16);
    color: var(--admin-accent-dark);
    text-decoration: none;
}

.admin-menu-host,
.admin-menu-host tbody,
.admin-menu-host tr,
.admin-menu-host td {
    border: 0;
    border-collapse: collapse;
    padding: 0;
    width: 100%;
}

.Menu {
    padding: 0;
}

.admin-top-nav {
    align-items: stretch;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    gap: .28rem;
    list-style: none;
    margin: 0;
    padding: 0;
    width: auto;
}

.admin-top-section {
    flex: 0 0 auto;
    padding-bottom: .1rem;
    position: relative;
}

.admin-top-link,
.admin-mega-title,
.admin-mega-link {
    align-items: center;
    color: var(--admin-ink);
    display: inline-flex;
    gap: .65rem;
    text-decoration: none;
}

.admin-top-link {
    background: #fff;
    border: 1px solid transparent;
    border-radius: .65rem;
    box-shadow: none;
    min-height: 2.5rem;
    padding: .42rem .7rem;
    position: relative;
    transition: background .15s ease, border-color .15s ease;
}

.admin-top-link:hover,
.admin-top-section.open > .admin-top-link,
.admin-top-link.active {
    background: rgba(15, 108, 189, .08);
    border-color: rgba(15, 108, 189, .16);
    color: var(--admin-accent-dark);
}

.admin-link-copy {
    font-weight: 600;
    line-height: 1.15;
}

.admin-link-caret {
    color: #6a7f91;
    font-size: .75rem;
    line-height: 1;
    margin-left: .1rem;
}

.admin-modern-icon {
    flex: 0 0 2rem;
    font-size: .68rem;
    height: 2rem;
    width: 2rem;
}

.admin-top-link .admin-modern-icon {
    border-radius: .55rem;
    box-shadow: none;
    height: 1.7rem;
    width: 1.7rem;
}

.admin-mega-menu {
    background: transparent;
    border: 0;
    box-shadow: none;
    display: none;
    left: 0;
    margin: 0;
    min-width: 19rem;
    padding: 0;
    position: absolute;
    top: calc(100% + .05rem);
    z-index: 2055;
}

.admin-top-section.open > .admin-mega-menu {
    display: block;
}

.admin-top-section:focus-within > .admin-mega-menu {
    display: block;
}

.admin-mega-grid {
    background: #fff;
    border: 1px solid var(--admin-border);
    border-radius: .85rem;
    box-shadow: var(--admin-shadow);
    display: grid;
    gap: .65rem;
    grid-template-columns: repeat(auto-fit, minmax(16rem, 1fr));
    min-width: min(72rem, calc(100vw - 3rem));
    padding: .7rem;
}

.admin-mega-group {
    background: #fafcfe;
    border: 1px solid var(--admin-border);
    border-radius: .75rem;
    box-shadow: none;
    min-width: 0;
    padding: .65rem;
}

.admin-mega-title {
    font-size: .9rem;
    font-weight: 700;
    margin-bottom: .35rem;
    width: 100%;
}

.admin-mega-title:hover,
.admin-mega-title.active {
    color: var(--admin-accent-dark);
}

.admin-mega-title .admin-modern-icon,
.admin-mega-link .admin-modern-icon {
    border-radius: .5rem;
    box-shadow: none;
    flex-basis: 1.55rem;
    height: 1.55rem;
    width: 1.55rem;
}

.admin-mega-links {
    display: grid;
    gap: .3rem;
}

.admin-mega-link {
    background: #fff;
    border: 1px solid rgba(214, 227, 238, .55);
    border-radius: .6rem;
    box-shadow: none;
    min-height: 2.35rem;
    padding: .4rem .55rem;
    transition: background .15s ease, border-color .15s ease;
    width: 100%;
}

.admin-mega-link:hover,
.admin-mega-link:focus,
.admin-mega-link.active {
    background: rgba(15, 108, 189, .08);
    border-color: rgba(15, 108, 189, .14);
    color: var(--admin-accent-dark);
}

.legacy-menu-icon {
    display: none !important;
}

.admin-main-shell {
    padding-bottom: 1.5rem;
}

.app-content-header {
    padding: .08rem 0 0;
}

.admin-page-meta {
    align-items: flex-start;
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    padding-top: .15rem;
}

.admin-page-head {
    flex: 1 1 auto;
    min-width: 0;
}

.admin-page-message {
    flex: 0 1 34rem;
    max-width: 100%;
}

#Head div {
    color: var(--admin-ink);
    font-size: 1.7rem;
    font-weight: 800;
    letter-spacing: -.02em;
    line-height: 1.15;
    margin: 0;
}

.app-content {
    padding: .3rem 0 1.25rem;
}

.admin-help-drawer {
    display: none;
    padding: .35rem 0 0;
}

body.admin-help-open .admin-help-drawer {
    display: block;
}

.admin-help-panel {
    background: rgba(255, 255, 255, .98);
    border: 1px solid rgba(214, 227, 238, .98);
    border-radius: 1.2rem;
    box-shadow: 0 18px 40px rgba(18, 50, 74, .1);
    margin: 0;
    overflow: hidden;
}

.admin-help-head {
    align-items: flex-start;
    background: linear-gradient(135deg, rgba(15, 108, 189, .1), rgba(52, 160, 216, .08));
    border-bottom: 1px solid rgba(214, 227, 238, .95);
    display: flex;
    gap: 1rem;
    justify-content: space-between;
    padding: 1rem 1.1rem;
}

.admin-help-kicker {
    color: var(--admin-accent-dark);
    font-size: .74rem;
    font-weight: 800;
    letter-spacing: .08em;
    margin-bottom: .25rem;
    text-transform: uppercase;
}

.admin-help-head h2 {
    color: var(--admin-ink);
    font-size: 1.2rem;
    font-weight: 800;
    margin: 0;
}

.admin-help-close {
    align-items: center;
    background: #fff;
    border: 1px solid var(--admin-border);
    border-radius: .85rem;
    color: var(--admin-accent-dark);
    display: inline-flex;
    font-weight: 700;
    min-height: 2.5rem;
    padding: .55rem .9rem;
    text-decoration: none;
}

.admin-help-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 1rem 1.1rem 1.1rem;
}

.admin-help-column {
    background: linear-gradient(180deg, rgba(244, 248, 251, .96), rgba(255, 255, 255, .98));
    border: 1px solid var(--admin-border);
    border-radius: 1rem;
    padding: 1rem;
}

.admin-help-column h3 {
    color: var(--admin-ink);
    font-size: 1rem;
    font-weight: 800;
    margin: 0 0 .8rem;
}

.admin-help-column-ar h3,
.admin-help-column-ar h4,
.admin-help-column-ar li {
    text-align: right;
}

.admin-help-block + .admin-help-block {
    margin-top: .9rem;
}

.admin-help-block h4 {
    color: var(--admin-accent-dark);
    font-size: .92rem;
    font-weight: 800;
    margin: 0 0 .45rem;
}

.admin-help-block ul {
    margin: 0;
    padding-left: 1rem;
}

.admin-help-column-ar .admin-help-block ul {
    padding-left: 0;
    padding-right: 1rem;
}

.admin-help-block li {
    color: #31485d;
    line-height: 1.55;
    margin-bottom: .35rem;
}

#Body {
    padding: 0;
    text-align: left;
}

#Body > div {
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    overflow-x: auto;
    padding: 0;
}

#Body table {
    max-width: 100%;
}

td,
th {
    font-family: "Segoe UI", Tahoma, Arial, sans-serif;
    vertical-align: middle;
}

.FormField,
.formfield {
    background: #fff;
    border: 1px solid #c8d6e3;
    border-radius: .75rem;
    color: #1f2937;
    line-height: 1.5;
    padding: .5rem .7rem;
}

textarea.FormField,
textarea.formfield {
    min-height: 7rem;
}

.FormButton,
.formbutton,
.DeleteButton {
    border: 1px solid transparent;
    border-radius: .8rem;
    box-shadow: none;
    color: #fff !important;
    cursor: pointer;
    display: inline-block;
    font-size: .9rem;
    font-weight: 700;
    line-height: 1.5;
    padding: .52rem 1rem;
    text-decoration: none;
}

.FormButton,
.formbutton {
    background: linear-gradient(135deg, var(--admin-accent), #2a93d5);
}

.DeleteButton {
    background: linear-gradient(135deg, #d64545, #f06b6b);
}

a.FormButton:hover,
.formbutton:hover {
    color: #fff !important;
    filter: brightness(.96);
    text-decoration: none;
}

.FormNote,
.formnote {
    color: #8a5a00;
    display: inline-block;
    margin-top: .25rem;
}

.TRTitle td,
td.TDTitle,
.TRTitle2 td,
.TrTitle2 td,
td.TDTitle2 {
    background: linear-gradient(135deg, #0f6cbd, #34a0d8);
    color: #fff;
    font-weight: 700;
    padding: .8rem .75rem;
}

.TRTitle2 td,
.TrTitle2 td,
td.TDTitle2 {
    background: linear-gradient(135deg, #597ea5, #7fa3c6);
}

.TRHead td,
td.TDHead {
    background: #eaf2f8;
    color: #16344c;
    font-weight: 700;
    padding: .7rem .75rem;
    text-align: center;
}

.TRPlain td,
td.TDPlain,
.TRMarked td,
td.TDMarked {
    color: #1f2937;
    padding: .7rem .75rem;
}

.TRPlain td,
td.TDPlain {
    background: rgba(255, 255, 255, .92);
}

.TRMarked td,
td.TDMarked {
    background: #f4f8fb;
}

.FilterTable {
    background: #fff;
    border: 1px solid var(--admin-border);
    border-radius: 1rem;
    margin: .5rem 0 1rem;
    overflow: hidden;
}

.admin-filter-card,
.admin-form-card,
.admin-grid-card,
.admin-dashboard-card {
    background: rgba(255, 255, 255, .96);
    border: 1px solid rgba(214, 227, 238, .95);
    border-radius: 1.2rem;
    box-shadow: 0 18px 40px rgba(18, 50, 74, .08);
    margin-bottom: 1rem;
    overflow: hidden;
}

.admin-filter-card .card-header,
.admin-form-card .card-header,
.admin-grid-card .card-header,
.admin-dashboard-card .card-header {
    background: #f7fbfe;
    border-bottom: 1px solid rgba(214, 227, 238, .95);
}

.admin-filter-card .card-body,
.admin-form-card .card-body,
.admin-dashboard-card .card-body {
    padding: 1rem 1.1rem;
}

.admin-grid-card .card-body {
    padding: 0;
}

.admin-dashboard-hero {
    align-items: center;
    background: linear-gradient(135deg, rgba(15, 108, 189, .95), rgba(52, 160, 216, .88));
    border-radius: 1.4rem;
    color: #fff;
    display: grid;
    gap: 1rem;
    grid-template-columns: minmax(0, 1.8fr) minmax(12rem, .8fr);
    margin-bottom: 1rem;
    overflow: hidden;
    padding: 1.4rem 1.5rem;
}

.admin-dashboard-kicker {
    display: inline-block;
    font-size: .72rem;
    font-weight: 700;
    letter-spacing: .12em;
    margin-bottom: .55rem;
    opacity: .82;
    text-transform: uppercase;
}

.admin-dashboard-hero h2 {
    color: #fff;
    font-size: 2rem;
    font-weight: 800;
    margin: 0 0 .45rem;
}

.admin-dashboard-hero p {
    margin: 0;
    max-width: 42rem;
    opacity: .92;
}

.admin-dashboard-spark {
    align-items: end;
    display: grid;
    gap: .6rem;
    grid-template-columns: repeat(3, 1fr);
    min-height: 9rem;
}

.admin-spark-line {
    background: rgba(255, 255, 255, .22);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: 1rem 1rem .35rem .35rem;
}

.admin-spark-line-1 { height: 4.6rem; }
.admin-spark-line-2 { height: 7.6rem; }
.admin-spark-line-3 { height: 5.9rem; }

.admin-metric-card .card-body {
    position: relative;
}

.admin-metric-badge {
    align-items: center;
    background: rgba(15, 108, 189, .1);
    border-radius: .85rem;
    color: var(--admin-accent-dark);
    display: inline-flex;
    font-size: .74rem;
    font-weight: 800;
    height: 2.2rem;
    justify-content: center;
    margin-bottom: .8rem;
    width: 2.2rem;
}

.admin-metric-label {
    color: var(--admin-muted);
    font-size: .78rem;
    font-weight: 700;
    letter-spacing: .08em;
    margin-bottom: .35rem;
    text-transform: uppercase;
}

.admin-metric-value {
    color: var(--admin-ink);
    font-size: 1.35rem;
    font-weight: 800;
    margin-bottom: .4rem;
}

.admin-metric-note,
.admin-chart-note {
    color: var(--admin-muted);
    margin: 0;
}

.admin-chart-placeholder {
    align-items: end;
    display: grid;
    gap: .85rem;
    grid-template-columns: repeat(7, minmax(0, 1fr));
    min-height: 12rem;
}

.admin-chart-bar {
    background: linear-gradient(180deg, rgba(52, 160, 216, .32), rgba(15, 108, 189, .9));
    border-radius: 1rem 1rem .4rem .4rem;
    display: block;
}

.admin-chart-bar-1 { height: 45%; }
.admin-chart-bar-2 { height: 62%; }
.admin-chart-bar-3 { height: 54%; }
.admin-chart-bar-4 { height: 80%; }
.admin-chart-bar-5 { height: 68%; }
.admin-chart-bar-6 { height: 92%; }
.admin-chart-bar-7 { height: 58%; }

.admin-quick-actions-card .card-body {
    display: grid;
    gap: .75rem;
}

.admin-quick-link {
    align-items: center;
    background: linear-gradient(180deg, #fff, #f7fbfe);
    border: 1px solid var(--admin-border);
    border-radius: 1rem;
    color: var(--admin-ink);
    display: flex;
    justify-content: space-between;
    min-height: 4.2rem;
    padding: .9rem 1rem;
    text-decoration: none;
}

.admin-quick-link span {
    color: var(--admin-muted);
    display: block;
    font-size: .84rem;
}

.admin-quick-link strong {
    color: var(--admin-accent-dark);
    font-size: .98rem;
}

.admin-quick-link:hover {
    border-color: rgba(15, 108, 189, .22);
    text-decoration: none;
}

.admin-top-link:focus,
.admin-mega-title:focus,
.admin-mega-link:focus,
.admin-mobile-nav-toggle:focus,
.admin-header-links .nav-link:focus {
    outline: 2px solid rgba(15, 108, 189, .28);
    outline-offset: 2px;
}

div.MessageDiv {
    background: rgba(255, 255, 255, .98);
    border: 1px solid var(--admin-border);
    border-left: .45rem solid var(--admin-accent);
    border-radius: 1rem;
    box-shadow: 0 15px 35px rgba(18, 50, 74, .08);
    color: var(--admin-ink);
    display: none;
    margin: 0;
    padding: .95rem 3rem .95rem 1rem;
    position: relative;
}

div.MessageDiv.WARNING { border-left-color: #f0ad4e; }
div.MessageDiv.FAILURE { border-left-color: #d64545; }

a.MessageClose,
a.MessageBack,
a.MessageBackBtn {
    text-decoration: none;
}

a.MessageClose,
a.MessageBack {
    color: #6a7f91;
    position: absolute;
    right: .9rem;
    top: .8rem;
}

a.MessageBackBtn {
    display: inline-block;
    font-weight: 700;
    margin-top: .65rem;
}

iframe {
    background: #fff;
}

.ImageButton {
    border-radius: .45rem;
    padding: .08rem;
}

.PCol1,
.PCol4,
.PCol5,
.PCol6,
.PCol7,
.PCol8,
.PCol9 {
    white-space: nowrap;
}

body.admin-mobile-nav-open {
    overflow: hidden;
}

@media (max-width: 991.98px) {
    .admin-header-links {
        display: none;
    }

    .admin-topnav-shell {
        inset: 4.5rem 0 auto 0;
        pointer-events: none;
        position: fixed;
        top: 4.5rem;
    }

    .admin-topnav-shell .container-fluid {
        padding-left: .75rem;
        padding-right: .75rem;
    }

    .admin-topnav-scroll {
        margin-top: 0;
        max-height: calc(100vh - 5.25rem);
        overflow: auto;
        pointer-events: auto;
        transform: translateY(-1rem);
        transition: opacity .2s ease, transform .2s ease;
        visibility: hidden;
        opacity: 0;
    }

    body.admin-mobile-nav-open .admin-topnav-scroll {
        transform: translateY(0);
        visibility: visible;
        opacity: 1;
    }

    .admin-top-nav {
        flex-direction: column;
    }

    .admin-newsletter-tools-bar {
        align-items: stretch;
        flex-direction: column;
    }

    .admin-newsletter-tools-link {
        justify-content: flex-start;
        width: 100%;
    }

    .admin-top-section {
        width: 100%;
    }

    .admin-top-link {
        justify-content: flex-start;
        width: 100%;
    }

    .admin-mega-menu {
        display: none;
        margin: .4rem 0 0;
        min-width: 0;
        position: static;
        width: 100%;
    }

    .admin-top-section.open > .admin-mega-menu {
        display: block;
    }

    .admin-mega-grid {
        gap: .75rem;
        grid-template-columns: 1fr;
        min-width: 0;
        padding: .75rem;
    }

    .app-content-header {
        padding: .45rem 0 .2rem;
    }

    .admin-page-meta {
        align-items: flex-start;
        flex-direction: column;
        gap: .35rem;
    }

    .admin-page-message {
        width: 100%;
    }

    .admin-help-grid {
        grid-template-columns: 1fr;
    }

    .admin-dashboard-hero {
        grid-template-columns: 1fr;
    }
}

@media (min-width: 992px) {
    .admin-mobile-nav-toggle {
        display: none;
    }
}

@media (max-width: 767.98px) {
    #Head div,
    .admin-page-head {
        font-size: 1rem;
    }

    .FormField,
    .formfield,
    .FormButton,
    .formbutton,
    .DeleteButton {
        width: 100%;
    }

    td,
    th {
        white-space: normal;
    }
}

/* 2026-04-01 admin shell simplification + module dashboards */
.admin-header-link-icon,
.admin-modern-icon,
.admin-utility-toggle,
.admin-help-drawer {
    display: none !important;
}

.admin-header-links {
    gap: .15rem;
}

.admin-header-links .nav-link {
    gap: .2rem;
    min-height: 2.45rem;
    padding: .45rem .7rem;
}

.admin-topnav-scroll {
    overflow-x: auto;
    overflow-y: visible;
    padding: .14rem .35rem;
}

.admin-top-nav {
    flex-wrap: nowrap;
    gap: .12rem;
}

.admin-top-link,
.admin-mega-title,
.admin-mega-link {
    gap: .25rem;
}

.admin-top-link {
    min-height: 2.2rem;
    padding: .28rem .55rem;
    white-space: nowrap;
}

.admin-link-copy {
    white-space: nowrap;
}

.app-content-header {
    background: transparent !important;
    padding: .18rem 0 .05rem;
}

#Head,
#Message,
#Head div {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    height: auto !important;
    margin: 0 !important;
    min-height: 0 !important;
    padding: 0 !important;
    width: auto !important;
}

.admin-page-meta {
    display: block;
}

.admin-page-head {
    background: transparent !important;
    margin: 0 0 .15rem;
}

.admin-page-message {
    background: transparent !important;
}

.admin-main-shell .container-fluid {
    padding-left: .95rem;
    padding-right: .95rem;
}

.admin-module-dashboard {
    display: grid;
    gap: 1rem;
}

.admin-module-hero {
    background: linear-gradient(135deg, #0f6cbd 0%, #1b84cd 55%, #54b5db 100%);
    border-radius: 1rem;
    box-shadow: 0 16px 34px rgba(15,108,189,.14);
    color: #fff;
    padding: 1.15rem 1.2rem;
}

.admin-module-kicker {
    color: rgba(255,255,255,.82);
    display: block;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .09em;
    margin-bottom: .45rem;
    text-transform: uppercase;
}

.admin-module-hero h1 {
    font-size: 1.55rem;
    line-height: 1.08;
    margin: 0 0 .35rem;
}

.admin-module-hero p {
    margin: 0;
    max-width: 60rem;
    opacity: .95;
}

.admin-module-subnav {
    display: flex;
    flex-wrap: wrap;
    gap: .45rem;
    margin-top: .9rem;
}

.admin-module-subnav a {
    background: rgba(255,255,255,.14);
    border: 1px solid rgba(255,255,255,.24);
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: .86rem;
    font-weight: 700;
    padding: .42rem .78rem;
    text-decoration: none;
}

.admin-module-subnav a:hover,
.admin-module-subnav a:focus {
    background: rgba(255,255,255,.2);
    color: #fff;
}

.admin-module-grid {
    display: grid;
    gap: 1rem;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
}

.admin-module-card {
    background: #fff;
    border: 1px solid var(--admin-border);
    border-radius: 1rem;
    box-shadow: 0 10px 22px rgba(18,50,74,.06);
    padding: 1rem;
}

.admin-module-card h3 {
    color: var(--admin-ink);
    font-size: 1rem;
    margin: 0 0 .35rem;
}

.admin-module-card p {
    color: var(--admin-muted);
    font-size: .88rem;
    margin: 0 0 .8rem;
}

.admin-module-links {
    display: flex;
    flex-direction: column;
    gap: .45rem;
}

.admin-module-links a {
    background: #f7fbfe;
    border: 1px solid var(--admin-border);
    border-radius: .75rem;
    color: var(--admin-accent-dark);
    display: block;
    font-size: .88rem;
    font-weight: 700;
    padding: .58rem .72rem;
    text-decoration: none;
}

.admin-module-links a:hover,
.admin-module-links a:focus {
    background: #eef7fd;
}

body.admin-messaginghub-dashboard-shell,
body.admin-newsletter-sender-dashboard-shell {
    background:
        radial-gradient(circle at top right, rgba(15, 108, 189, .12), transparent 28%),
        linear-gradient(180deg, #f8fbfd 0%, #eef4f8 100%) !important;
}

body.admin-messaginghub-dashboard-shell .admin-main-shell,
body.admin-newsletter-sender-dashboard-shell .admin-main-shell {
    background: transparent !important;
}

@media (max-width: 991.98px) {
    .admin-top-nav {
        flex-wrap: wrap;
    }
}

@media (max-width: 767.98px) {
    .admin-main-shell .container-fluid {
        padding-left: .75rem;
        padding-right: .75rem;
    }

    .admin-module-hero {
        padding: .95rem 1rem;
    }

    .admin-module-hero h1 {
        font-size: 1.3rem;
    }
}

/* 2026-04-01 single-level admin navigation + full module dashboards */
.admin-topnav-shell {
    top: 4.25rem;
}

.admin-topnav-scroll {
    overflow-x: auto;
    overflow-y: hidden;
    padding: .12rem .35rem;
}

.admin-top-nav {
    flex-wrap: nowrap !important;
    gap: .14rem !important;
    white-space: nowrap;
    width: max-content;
}

.admin-top-link-flat {
    border-radius: .6rem;
    font-size: .92rem;
    min-height: 2.1rem;
    padding: .28rem .56rem;
}

.admin-top-link-flat .admin-modern-icon,
.admin-top-link-flat .admin-link-caret {
    display: none !important;
}

.admin-top-link-flat .admin-link-copy {
    font-size: .9rem;
    font-weight: 700;
}

.admin-mega-menu,
.admin-mega-grid,
.admin-mega-group {
    display: none !important;
}

.app-content-header {
    background: transparent !important;
    padding: .05rem 0 0 !important;
}

#Head,
#Message,
#Head div {
    background: transparent !important;
    border: 0 !important;
    box-shadow: none !important;
    min-height: 0 !important;
}

#Head,
#Message {
    display: none !important;
}

.admin-page-body {
    padding-top: .1rem;
}

.admin-header-links .nav-link {
    min-height: 2.1rem;
    padding: .28rem .55rem;
}

.admin-module-stats {
    display: grid;
    gap: .8rem;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.admin-module-stat {
    background: #fff;
    border: 1px solid var(--admin-border);
    border-radius: .95rem;
    box-shadow: 0 8px 22px rgba(18, 50, 74, .06);
    padding: .9rem 1rem;
}

.admin-module-stat .label {
    color: var(--admin-muted);
    display: block;
    font-size: .77rem;
    font-weight: 800;
    letter-spacing: .04em;
    margin-bottom: .28rem;
    text-transform: uppercase;
}

.admin-module-stat .value {
    color: var(--admin-ink);
    font-size: 1.45rem;
    font-weight: 800;
    line-height: 1;
}

.admin-module-panels {
    display: grid;
    gap: 1rem;
    grid-template-columns: 1.35fr .9fr;
}

.admin-module-panel {
    background: #fff;
    border: 1px solid var(--admin-border);
    border-radius: 1rem;
    box-shadow: 0 8px 22px rgba(18, 50, 74, .06);
    padding: 1rem 1.05rem;
}

.admin-module-panel h3 {
    color: var(--admin-ink);
    font-size: 1rem;
    margin: 0 0 .65rem;
}

.admin-module-bullets {
    display: grid;
    gap: .55rem;
    margin: 0;
    padding-left: 1rem;
}

.admin-module-bullets li {
    color: #3d5366;
}

@media (max-width: 991.98px) {
    .admin-module-stats,
    .admin-module-grid,
    .admin-module-panels {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 767.98px) {
    .admin-top-nav {
        width: 100%;
    }

    .admin-module-stats,
    .admin-module-grid,
    .admin-module-panels {
        grid-template-columns: 1fr;
    }
}

/* 2026-05-12 AgentOps UX/RBAC/CRUD normalization */
:root {
    --agentra-blue: #2956A6;
    --agentra-orange: #FA9003;
    --agentra-red: #EE1807;
    --agentra-green: #33AA52;
    --agentra-dark: #1F2933;
    --agentra-light: #F5F7FA;
    --agentra-white: #FFFFFF;
}

.admin-module-dashboard {
    color: var(--agentra-dark);
}

.admin-module-dashboard .admin-module-hero {
    background:
        linear-gradient(135deg, rgba(41, 86, 166, .97) 0%, rgba(31, 41, 51, .96) 100%);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: .75rem;
    box-shadow: 0 16px 32px rgba(31, 41, 51, .12);
    overflow: hidden;
    position: relative;
}

.admin-module-dashboard .admin-module-hero::after {
    background: linear-gradient(90deg, var(--agentra-blue), var(--agentra-orange), var(--agentra-red), var(--agentra-green));
    bottom: 0;
    content: "";
    height: 4px;
    left: 0;
    position: absolute;
    right: 0;
}

.admin-module-dashboard .admin-module-kicker {
    color: rgba(255, 255, 255, .82);
    letter-spacing: .06em;
}

.admin-module-quicknav {
    display: flex;
    flex-wrap: wrap;
    gap: .5rem;
    margin-top: 1rem;
}

.admin-module-navgroups {
    display: grid;
    gap: .75rem;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    margin-top: 1rem;
}

.admin-module-navgroup {
    background: rgba(255, 255, 255, .1);
    border: 1px solid rgba(255, 255, 255, .18);
    border-radius: .65rem;
    padding: .7rem;
}

.admin-module-navgroup h2 {
    color: #fff;
    font-size: .78rem;
    font-weight: 800;
    letter-spacing: .04em;
    margin: 0 0 .5rem;
    text-transform: uppercase;
}

.admin-module-navlinks {
    display: flex;
    flex-wrap: wrap;
    gap: .38rem;
}

.admin-module-navlink {
    background: rgba(255, 255, 255, .12);
    border: 1px solid rgba(255, 255, 255, .25);
    border-radius: 999px;
    color: #fff;
    display: inline-flex;
    font-size: .82rem;
    font-weight: 700;
    line-height: 1.2;
    padding: .38rem .68rem;
    text-decoration: none;
}

.admin-module-navlink.quick {
    background: #fff;
    border-color: rgba(255, 255, 255, .75);
    color: var(--agentra-blue);
}

.admin-module-navlink.action,
.admin-module-links .agentops-action-link,
.admin-module-actions .agentops-action-link {
    background: var(--agentra-orange);
    border-color: var(--agentra-orange);
    color: #fff;
}

.admin-module-navlink:hover,
.admin-module-navlink:focus {
    background: rgba(255, 255, 255, .22);
    color: #fff;
}

.admin-module-navlink.quick:hover,
.admin-module-navlink.quick:focus {
    background: var(--agentra-light);
    color: var(--agentra-blue);
}

.admin-module-navlink.active {
    background: var(--agentra-green);
    border-color: var(--agentra-green);
    color: #fff;
}

.admin-module-dashboard .admin-module-card,
.admin-module-dashboard .admin-module-panel,
.admin-module-dashboard .admin-module-stat {
    background: var(--agentra-white);
    border-color: rgba(41, 86, 166, .14);
    border-radius: .65rem;
}

.admin-module-dashboard .admin-module-card h3,
.admin-module-dashboard .admin-module-panel h3 {
    color: var(--agentra-blue);
}

.admin-module-dashboard .admin-module-stat .value {
    color: var(--agentra-blue);
}

.admin-row-actions {
    display: flex;
    gap: .4rem;
    min-width: 7rem;
}

.agentops-detail-list {
    display: grid;
    gap: .65rem;
    margin: 0;
}

.agentops-detail-list div {
    border-bottom: 1px solid rgba(41, 86, 166, .12);
    display: grid;
    gap: .35rem;
    grid-template-columns: minmax(160px, 240px) 1fr;
    padding-bottom: .55rem;
}

.agentops-detail-list dt {
    color: var(--agentra-dark);
    font-weight: 800;
}

.agentops-detail-list dd {
    color: #3d5366;
    margin: 0;
    overflow-wrap: anywhere;
}

.agentops-status-badge {
    background: var(--agentra-light);
    border: 1px solid rgba(31, 41, 51, .16);
    border-radius: 999px;
    color: var(--agentra-dark);
    display: inline-flex;
    font-size: .76rem;
    font-weight: 800;
    padding: .2rem .55rem;
}

.agentops-status-badge.active {
    background: rgba(41, 86, 166, .1);
    border-color: rgba(41, 86, 166, .25);
    color: var(--agentra-blue);
}

.agentops-status-badge.action {
    background: rgba(250, 144, 3, .12);
    border-color: rgba(250, 144, 3, .32);
    color: #9b5600;
}

.agentops-status-badge.risk {
    background: rgba(238, 24, 7, .09);
    border-color: rgba(238, 24, 7, .28);
    color: var(--agentra-red);
}

.agentops-status-badge.success {
    background: rgba(51, 170, 82, .11);
    border-color: rgba(51, 170, 82, .28);
    color: var(--agentra-green);
}

@media (max-width: 767.98px) {
    .admin-module-navgroups,
    .agentops-detail-list div {
        grid-template-columns: 1fr;
    }
}
