/* Logic365 Board v2
   Central tokens and components for application-quality Board surfaces. */
:root,
.c365-app--authenticated {
    --c365-board-background: var(--c365-color-bg-canvas, #07131b);
    --c365-board-background-deep: var(--c365-color-bg-page, #040b15);
    --c365-board-navigation: var(--c365-color-bg-sidebar, #061222);
    --c365-board-surface: var(--c365-color-surface-panel, #0a172a);
    --c365-board-card: var(--c365-color-surface-nested, #0b1d38);
    --c365-board-card-raised: var(--c365-color-surface-panel-raised, #0f2340);
    --c365-board-border: var(--c365-color-border-default, rgba(73, 119, 174, .48));
    --c365-board-border-strong: var(--c365-color-border-strong, rgba(90, 151, 207, .68));
    --c365-board-radius: 22px;
    --c365-board-control-radius: var(--c365-radius-md, 11px);
    --c365-board-gap: 14px;
    --c365-board-space-1: .375rem;
    --c365-board-space-2: .625rem;
    --c365-board-space-3: .875rem;
    --c365-board-space-4: 1.125rem;
    --c365-board-space-5: 1.5rem;
    --c365-board-text: var(--c365-color-text-primary, #f7f5ff);
    --c365-board-text-muted: var(--c365-color-text-muted, #8fa8c8);
    --c365-board-accent-primary: var(--c365-color-accent-primary, #34f3f2);
    --c365-board-accent-primary-rgb: var(--c365-color-accent-primary-rgb, 52, 243, 242);
    --c365-board-accent-secondary: var(--c365-color-accent-blue, #168bff);
    --c365-board-accent-secondary-rgb: 74, 146, 230;
    --c365-board-accent-coral: var(--c365-color-accent-coral, #ff6e58);
    --c365-board-glow: var(--c365-glow-primary, 0 0 22px rgba(52, 243, 242, .1));
    --c365-board-shadow: var(--c365-shadow-card, 0 18px 45px rgba(0, 0, 0, .3));
    --c365-board-sidebar-width: 17rem;
    --c365-board-ai-rail-width: clamp(340px, 25vw, 390px);
    --c365-board-rail-background: var(--c365-color-bg-sidebar, #061222);
    --c365-board-rail-border: var(--c365-color-border-subtle, rgba(73, 111, 164, .3));
    --c365-board-chart-edge-bleed: var(--c365-tile-padding);
    --c365-board-header-anchor-top: 4.125rem;
    --c365-board-title-anchor-top: 1.45rem;
    --c365-board-heading-rhythm: .45rem;
}

.c365-board-v2-page {
    --c365-board-chart-edge-bleed: calc(var(--c365-tile-padding) + .1rem);
    --c365-workspace-background:
        radial-gradient(circle at 72% 0%, rgba(37, 94, 169, .13), transparent 34%),
        linear-gradient(145deg, #071526, var(--c365-board-background) 50%, #040b15);
    color: var(--c365-board-text);
    background: var(--c365-board-background-deep);
}

.c365-board-v2-page .c365-app-layout {
    grid-template-columns: var(--c365-board-sidebar-width) minmax(0, 1fr);
    grid-template-rows: minmax(100vh, auto);
    min-height: 100vh;
    background: var(--c365-board-background-deep);
}

.c365-board-v2-page .c365-topbar.c365-workspace-bar {
    position: sticky;
    top: 0;
    z-index: var(--c365-layer-sticky-header, 700);
    grid-column: 1;
    grid-row: 1;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 1.1rem;
    width: var(--c365-board-sidebar-width);
    height: 100vh;
    min-height: 640px;
    padding: 1.45rem .95rem 1.1rem;
    border-right: 0;
    background: var(--c365-board-rail-background);
    box-shadow: 12px 0 42px rgba(0, 0, 0, .24);
}

.c365-board-v2-page .c365-topbar::after { display: none; }

.c365-board-v2-page .c365-topbar__brand {
    position: relative;
    display: flex;
    align-items: center;
    align-self: stretch;
    min-height: 42px;
    justify-content: flex-start;
    padding: 0 .7rem;
    color: #fff;
    font-size: 1.28rem;
    letter-spacing: .075em;
}

.c365-board-v2-page .c365-topbar__brand--app {
    align-items: flex-start;
    text-align: left;
}

.c365-board-v2-page .capture365-wordmark__capture { color: #f8f6ff; }
.c365-board-v2-page .capture365-wordmark__365 { color: var(--c365-brand, #48d0e2); }

.c365-board-v2-page .c365-topbar .c365-nav-panel,
.c365-board-v2-page .c365-topbar .c365-nav-panel.collapse:not(.show) {
    display: flex !important;
    flex: 1 1 auto;
    flex-direction: column;
    min-height: 0;
    width: 100%;
}

.c365-board-v2-page .c365-topbar .c365-nav__list {
    display: grid;
    align-content: start;
    grid-auto-rows: max-content;
    gap: .58rem;
    width: 100%;
    margin: 0;
    padding: 0 .1rem 0 0;
    overflow-y: auto;
    scrollbar-width: thin;
}

.c365-board-v2-page .c365-topbar .c365-nav__item { display: block; }

.c365-board-v2-page .c365-nav__section,
.c365-board-v2-page .c365-nav__children {
    display: grid;
    align-content: start;
    gap: .08rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.c365-board-v2-page .c365-nav__section + .c365-nav__section {
    padding-top: .58rem;
    border-top: 1px solid rgba(134, 109, 222, .12);
}

.c365-board-v2-page .c365-nav__section-row,
.c365-board-v2-page .c365-nav__child-item {
    position: relative;
    display: flex;
    align-items: center;
    min-width: 0;
}

.c365-board-v2-page .c365-nav__section-row:has(.c365-nav__overflow-trigger[aria-expanded="true"]),
.c365-board-v2-page .c365-nav__child-item:has(.c365-nav__overflow-trigger[aria-expanded="true"]) {
    z-index: 20;
}

.c365-board-v2-page .c365-nav__section-label {
    min-width: 0;
    padding: .06rem .68rem .22rem;
    color: #858198;
    font-size: .625rem;
    font-weight: 750;
    letter-spacing: .11em;
    text-transform: uppercase;
}

.c365-board-v2-page .c365-nav__separator {
    height: 1px;
    margin: .42rem .7rem;
    background: rgba(134, 109, 222, .18);
}

.c365-input-device-table th:last-child,
.c365-input-device-table td:last-child { text-align: right; }

.c365-board-v2-page .c365-nav__link--child {
    flex: 1 1 auto;
    min-width: 0;
    min-height: 33px !important;
    padding: .36rem 2.05rem .36rem .7rem !important;
    overflow: hidden;
    font-size: .79rem !important;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.c365-board-v2-page .c365-nav__overflow {
    position: absolute;
    z-index: 3;
    right: .24rem;
    top: calc(50% - 13.5px);
}

.c365-board-v2-page .c365-nav__overflow-trigger {
    display: grid;
    width: 27px;
    height: 27px;
    place-items: center;
    border: 0;
    border-radius: 7px;
    padding: 0 0 .35rem;
    color: #d8d3e2;
    background: rgba(35, 27, 77, .9);
    font-size: 1.08rem;
    line-height: 1;
    opacity: 0;
    pointer-events: none;
    transition: opacity .14s ease, color .14s ease, background-color .14s ease;
}

.c365-board-v2-page .c365-nav__section-row:hover .c365-nav__overflow-trigger,
.c365-board-v2-page .c365-nav__child-item:hover .c365-nav__overflow-trigger,
.c365-board-v2-page .c365-nav__section-row:focus-within .c365-nav__overflow-trigger,
.c365-board-v2-page .c365-nav__child-item:focus-within .c365-nav__overflow-trigger {
    opacity: 1;
    pointer-events: auto;
}

.c365-board-v2-page .c365-nav__overflow-trigger:hover,
.c365-board-v2-page .c365-nav__overflow-trigger:focus-visible,
.c365-board-v2-page .c365-nav__overflow-trigger[aria-expanded="true"] {
    color: #fff;
    background: rgba(77, 42, 161, .96);
}

.c365-board-v2-page .c365-nav__overflow-menu {
    --bs-dropdown-bg: var(--c365-board-card-raised);
    --bs-dropdown-border-color: var(--c365-board-border);
    --bs-dropdown-link-color: #ddd8e8;
    --bs-dropdown-link-hover-color: #fff;
    --bs-dropdown-link-hover-bg: rgba(87, 48, 182, .36);
    --bs-dropdown-link-active-color: #fff;
    --bs-dropdown-link-active-bg: rgba(87, 48, 182, .48);
    inset: calc(100% + .25rem) 0 auto auto !important;
    min-width: 10.75rem;
    border: 1px solid var(--c365-board-border) !important;
    border-radius: var(--c365-board-control-radius);
    padding: .38rem;
    background-color: rgba(10, 9, 36, .99) !important;
    background-image: linear-gradient(145deg, rgba(143, 72, 255, .09), transparent 58%);
    box-shadow: var(--c365-board-shadow), 0 0 22px rgba(var(--c365-board-accent-secondary-rgb), .08);
    transform: none !important;
    overflow: hidden;
}

.c365-board-v2-page .c365-nav__overflow-menu--viewport {
    position: fixed !important;
    z-index: var(--c365-layer-dropdown, 1800) !important;
    inset: auto !important;
    margin: 0 !important;
    background-color: #030516 !important;
}

.c365-board-v2-page .c365-nav__overflow-menu .dropdown-item {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 2.2rem;
    border: 0;
    border-radius: 8px;
    padding: .5rem .65rem;
    color: #ddd8e8 !important;
    background: transparent !important;
    font-family: "Manrope", sans-serif;
    font-size: .8rem;
    font-weight: 600;
    line-height: 1.2;
    text-decoration: none;
}

.c365-board-v2-page .c365-nav__overflow-menu .dropdown-item:hover,
.c365-board-v2-page .c365-nav__overflow-menu .dropdown-item:focus,
.c365-board-v2-page .c365-nav__overflow-menu .dropdown-item:active {
    color: #fff !important;
    background: rgba(87, 48, 182, .36) !important;
}

.c365-board-v2-page .c365-nav__overflow-menu .dropdown-divider {
    margin: .34rem .28rem;
    border-color: rgba(133, 111, 232, .25);
    opacity: 1;
}

.c365-board-v2-page .c365-nav__overflow-menu .dropdown-item.disabled {
    color: #716d80 !important;
    background: transparent !important;
    opacity: 1;
}

.c365-board-v2-page .c365-nav__overflow-menu .c365-nav__overflow-item--danger:hover,
.c365-board-v2-page .c365-nav__overflow-menu .c365-nav__overflow-item--danger:focus {
    color: #ffb5c5 !important;
    background: rgba(255, 102, 138, .12) !important;
}

.c365-app-builder-entry { position: relative; display: flex; align-items: center; }
.c365-app-builder-entry__link { flex: 1 1 auto; min-width: 0; padding-right: 2.7rem !important; }
.c365-app-builder-entry > .c365-overflow { position: absolute; right: .25rem; }
.c365-app-builder-entry .c365-overflow__trigger { width: 30px; height: 28px; font-size: 0; }
.c365-app-builder-entry .c365-overflow__trigger::before { content: "\2026"; font-size: 1.15rem; line-height: 1; }

.c365-board-v2-page .c365-topbar .c365-nav__link,
.c365-board-v2-page .c365-topbar .c365-nav__group {
    width: 100%;
    min-height: 34px;
    justify-content: flex-start;
    padding: .4rem .7rem;
    border: 1px solid transparent;
    border-radius: 8px;
    color: #bbb7cb;
    font-size: .8rem;
    font-weight: 560;
    letter-spacing: 0;
    text-transform: none;
}

.c365-board-v2-page .c365-topbar .c365-nav__link:hover,
.c365-board-v2-page .c365-topbar .c365-nav__group:hover,
.c365-board-v2-page .c365-topbar .c365-nav__link:focus-visible,
.c365-board-v2-page .c365-topbar .c365-nav__group:focus-visible {
    color: #fff;
    border-color: rgba(136, 93, 255, .2);
    background: rgba(88, 48, 180, .16);
}

.c365-board-v2-page .c365-topbar .c365-nav__link.active,
.c365-board-v2-page .c365-topbar .c365-nav__group.active {
    color: #fff;
    border-color: rgba(145, 94, 255, .36);
    background: linear-gradient(100deg, rgba(78, 43, 168, .76), rgba(55, 30, 128, .82));
    box-shadow: inset 0 0 18px rgba(119, 76, 255, .12);
}

.c365-board-v2-page .c365-topbar .c365-nav-menu {
    left: calc(100% + .45rem) !important;
    top: 0 !important;
    border-color: var(--c365-app-surface-border, var(--c365-board-border));
    border-radius: var(--c365-board-control-radius);
    background: var(--c365-app-surface-raised, linear-gradient(145deg, rgba(20, 42, 78, .96), rgba(8, 22, 44, .985)));
    box-shadow: var(--c365-app-surface-shadow, var(--c365-board-shadow));
}

.c365-board-v2-page .c365-nav-toggle { display: none !important; }

.c365-board-v2-page .c365-nav__footer {
    display: grid;
    gap: .65rem;
    margin-top: auto;
    padding-top: .45rem;
}

.c365-board-v2-page .c365-header-account {
    position: relative;
    inset: auto auto auto -.45rem;
    z-index: var(--c365-layer-page-menu, 600);
    grid-column: auto;
    grid-row: auto;
    width: calc(100% + .9rem);
    margin: 0 0 -1.1rem;
    padding: 0;
    border: 0;
    border-top: 1px solid var(--c365-board-border);
    justify-self: stretch;
}

.c365-board-v2-page .c365-nav__identity-button {
    width: 100%;
    min-width: 0;
    min-height: 54px;
    padding: .48rem .72rem;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    backdrop-filter: none;
}

.c365-board-v2-page .c365-nav__identity-mark {
    color: var(--c365-board-accent-primary);
    border-color: rgba(var(--c365-board-accent-secondary-rgb), .62);
    background: radial-gradient(circle at 34% 24%, rgba(var(--c365-board-accent-primary-rgb), .22), rgba(var(--c365-board-accent-secondary-rgb), .13));
    box-shadow: 0 0 18px rgba(var(--c365-board-accent-primary-rgb), .12);
}

.c365-board-v2-page .c365-workspace {
    grid-column: 2;
    grid-row: 1;
    min-width: 0;
    background: var(--c365-workspace-background);
}

.c365-global-bar {
    position: sticky;
    top: 0;
    z-index: 690;
    display: grid;
    grid-template-columns: minmax(16rem, 1fr) auto auto;
    align-items: center;
    gap: .75rem;
    min-height: 62px;
    padding: .65rem 1.5rem;
    border-bottom: 1px solid rgba(75, 111, 159, .26);
    background: rgba(6, 18, 34, .94);
    backdrop-filter: blur(18px);
}

.c365-global-help, .c365-global-notifications { display: grid; width: 38px; height: 38px; place-items: center; border: 0; border-radius: 50%; color: var(--c365-board-accent-primary); background: transparent; font-size: 1.05rem; text-decoration: none; }
.c365-global-help { border: 1px solid var(--c365-board-accent-primary); }
.c365-global-notifications { position: relative; color: #dce7ff; }
.c365-global-notifications span { position: absolute; top: 5px; right: 5px; width: 7px; height: 7px; border-radius: 50%; background: #ff536d; }

.c365-board-v2-page .c365-workspace .c365-main {
    width: 100%;
    max-width: none;
    padding: 1.45rem 2rem 2.2rem;
}

.c365-nav__app-group { display: grid; gap: .1rem; margin: 0; padding: 0; list-style: none; }
.c365-nav__link--app { display: flex !important; align-items: center; gap: .55rem; font-weight: 700 !important; }
.c365-nav__app-icon { display: grid; width: 24px; height: 24px; place-items: center; border-radius: 6px; color: #fff; background: var(--c365-color-app-runtime); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 0 12px color-mix(in srgb, var(--c365-color-app-runtime) 28%, transparent); font-size: .66rem; font-weight: 900; }
.c365-nav__app-icon[data-app-state="design"] { background: var(--c365-color-app-design); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 0 12px color-mix(in srgb, var(--c365-color-app-design) 28%, transparent); }
.c365-nav__app-icon[data-app-state="published"] { background: var(--c365-color-app-published); box-shadow: inset 0 1px 0 rgba(255, 255, 255, .2), 0 0 12px color-mix(in srgb, var(--c365-color-app-published) 28%, transparent); }
.c365-nav__app-group--builder { gap: .28rem; }
.c365-nav__app-group--instance .c365-nav__link--app-object { margin-left: 2.5rem; }
.c365-nav__app-branch { display: grid; gap: .08rem; margin-left: 1.75rem; padding: .18rem 0 .25rem .75rem; border-left: 1px solid rgba(112, 145, 191, .35); }
.c365-nav__app-branch-label { padding: .18rem .5rem; color: #817d9b; font-size: .64rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.c365-nav__app-branch-label[href] { border-radius: .35rem; text-decoration: none; transition: color .16s ease, background-color .16s ease; }
.c365-nav__app-branch-label[href]:hover, .c365-nav__app-branch-label[href]:focus-visible, .c365-nav__app-branch-label.active { color: #48d0e2; background: rgba(72, 208, 226, .08); }
.c365-nav__link--app-object { min-height: 28px !important; padding: .24rem .5rem !important; border-radius: 7px !important; color: #b9b6cc !important; font-size: .72rem !important; }
.c365-nav__link--app-object:hover, .c365-nav__link--app-object:focus-visible, .c365-nav__link--app-object.active { color: #fff !important; background: rgba(var(--c365-board-accent-secondary-rgb), .16) !important; }
.c365-topbar button.c365-nav__link { text-align: left; background: transparent; }

.c365-page-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 1rem; margin-bottom: 1.25rem; }
.c365-page-heading h1 { margin: 0; color: #f6f8ff; font-size: clamp(1.8rem, 2.4vw, 2.55rem); font-weight: 800; }
.c365-page-heading p { margin: .22rem 0 0; color: #9fb1cd; }
.c365-heading-actions, .c365-form-actions { display: flex; align-items: center; gap: .65rem; }
.c365-error-shell { max-width: 72rem; padding-top: .5rem; }
.c365-error-card { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 1rem; padding: 1.35rem; border-color: rgba(66, 119, 171, .48); background: linear-gradient(145deg, rgba(21, 32, 65, .96), rgba(9, 22, 43, .96)); }
.c365-error-card__icon { display: grid; width: 2.75rem; height: 2.75rem; place-items: center; border: 1px solid rgba(255, 93, 105, .52); border-radius: 12px; color: #ff8e98; background: rgba(255, 93, 105, .1); font-size: 1.35rem; font-weight: 800; }
.c365-error-card__copy h2 { margin: 0 0 .35rem; color: #f7f8ff; font-size: 1.25rem; }
.c365-error-card__copy > p { color: #9fb1cd; }
.c365-error-reference { display: grid; gap: .3rem; margin: 1rem 0; }
.c365-error-reference span { color: #8fa4c4; font-size: .7rem; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.c365-error-reference code { width: fit-content; max-width: 100%; padding: .5rem .65rem; overflow-wrap: anywhere; border: 1px solid rgba(72, 208, 226, .22); border-radius: 8px; color: #b9eaf2; background: rgba(5, 16, 31, .72); }
.c365-error-card__note { margin-top: .8rem; font-size: .8rem; }
.c365-app-overview { display: grid; grid-template-columns: repeat(3, minmax(9rem, 1fr)); gap: .75rem; margin: 0 0 1.3rem; }
.c365-app-overview > div { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: .15rem .75rem; min-height: 72px; padding: .85rem 1rem; border: 1px solid var(--c365-board-border); border-radius: 12px; background: linear-gradient(145deg, rgba(20, 38, 72, .78), rgba(8, 21, 42, .9)); }
.c365-app-overview strong { grid-row: span 2; color: #f7f3ff; font-size: 1.65rem; line-height: 1; }
.c365-app-overview span { color: #9fb1cd; font-size: .8rem; }
.c365-section-heading { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin: .4rem 0 .8rem; }
.c365-section-heading--spaced { margin-top: 1.8rem; }
.c365-section-heading h2 { margin: 0; color: #f6f8ff; font-size: 1.08rem; }
.c365-section-heading p { margin: .15rem 0 0; color: #8296b5; font-size: .78rem; }
.c365-section-heading > a { color: var(--c365-board-accent-primary); font-size: .78rem; font-weight: 750; text-decoration: none; }
.c365-app-card-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(340px, 1fr)); gap: 1rem; }
.c365-app-card { position: relative; display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 1rem; min-height: 194px; padding: 1.15rem; overflow: hidden; border: 1px solid var(--c365-board-border); border-radius: 13px; background: linear-gradient(145deg, rgba(24, 39, 78, .9), rgba(8, 21, 43, .96)); box-shadow: 0 16px 42px rgba(0,0,0,.2); }
.c365-app-card::after { position: absolute; inset: auto -3rem -4rem auto; width: 10rem; height: 10rem; border-radius: 50%; background: rgba(72, 208, 226, .055); content: ""; pointer-events: none; }
.c365-app-icon { display: grid; width: 48px; height: 48px; place-items: center; border-radius: 11px; color: #fff; background: linear-gradient(145deg, #8b5cff, #4d29be); box-shadow: 0 8px 22px rgba(83, 42, 189, .28); font-size: 1rem; font-weight: 900; }
.c365-app-icon[data-icon="home"] { background: linear-gradient(145deg, #ff9848, #d95421); box-shadow: 0 8px 22px rgba(217, 84, 33, .25); }
.c365-app-icon[data-icon="heart"] { background: linear-gradient(145deg, #ff6e8e, #7f45ee); box-shadow: 0 8px 22px rgba(127, 69, 238, .28); }
.c365-app-icon--small { width: 34px; height: 34px; border-radius: 8px; font-size: .72rem; }
.c365-app-card__eyebrow { color: #73a5c7; font-size: .72rem; font-weight: 700; text-transform: uppercase; letter-spacing: .06em; }
.c365-app-card h2 { margin: .15rem 0 .4rem; font-size: 1.25rem; }
.c365-app-card p { min-height: 2.8em; margin-bottom: .75rem; color: #aabbd2; }
.c365-app-card__actions { grid-column: 2; display: flex; justify-content: flex-end; gap: .5rem; align-self: end; }
.c365-app-tags { display: flex; gap: .4rem; flex-wrap: wrap; }
.c365-app-tags span { padding: .22rem .55rem; border: 1px solid rgba(151, 112, 255, .34); border-radius: 999px; color: #cbb8ff; background: rgba(112, 69, 217, .12); font-size: .72rem; }
.c365-owned-app-list { display: grid; gap: .5rem; }
.c365-owned-app-list > a { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; align-items: center; gap: .75rem; min-height: 58px; padding: .65rem .8rem; border: 1px solid var(--c365-board-border); border-radius: 10px; color: #eef4ff; background: rgba(11, 27, 52, .72); text-decoration: none; }
.c365-owned-app-list > a:hover { border-color: var(--c365-board-border-strong); background: rgba(20, 38, 72, .86); }
.c365-owned-app-list strong, .c365-owned-app-list small { display: block; }
.c365-owned-app-list small { margin-top: .1rem; color: #8296b5; font-size: .72rem; }
.c365-empty-state { grid-column: 1/-1; padding: 4rem 2rem; border: 1px dashed var(--c365-board-border); border-radius: 13px; text-align: center; }
.c365-search-results { display: grid; gap: .55rem; max-width: 76rem; }
.c365-search-result { display: grid; grid-template-columns: 7rem minmax(12rem, .7fr) minmax(14rem, 1fr); align-items: center; gap: 1rem; min-height: 62px; padding: .75rem 1rem; border: 1px solid var(--c365-board-border); border-radius: 10px; color: var(--c365-board-text); background: rgba(12, 29, 52, .78); text-decoration: none; }
.c365-search-result:hover { border-color: var(--c365-board-border-strong); background: var(--c365-board-card-raised); }
.c365-search-result__type { color: var(--c365-board-accent-primary); font-size: .7rem; font-weight: 800; letter-spacing: .07em; text-transform: uppercase; }
.c365-search-result small { color: var(--c365-board-muted); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.c365-form-card { max-width: 700px; padding: 1.25rem; }
.c365-form-card form, .c365-form-card label { display: grid; gap: .55rem; }
.c365-form-card form { gap: 1rem; }
.c365-form-card input, .c365-form-card textarea, .c365-form-card select, .c365-inline-create input, .c365-inline-create select, .c365-form-grid input, .c365-form-grid textarea, .c365-form-grid select { border: 1px solid var(--c365-board-border); border-radius: 9px; padding: .7rem .8rem; color: var(--c365-board-text); background: #071326; }
.c365-builder-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.c365-builder-grid .app-surface { position: relative; padding: 1.15rem; overflow: hidden; border-radius: 13px; background: linear-gradient(145deg, rgba(20, 36, 70, .82), rgba(7, 20, 41, .92)); }
.c365-builder-grid .app-surface h2 { margin: 0 0 .25rem; color: #f5f2ff; font-size: 1.05rem; }
.c365-builder-grid .app-surface > p { color: #8fa2c0; font-size: .78rem; }
.c365-builder-grid .app-surface:first-child { grid-row: span 2; }
.c365-builder-row { display: flex; justify-content: space-between; padding: .75rem 0; border-bottom: 1px solid rgba(75, 111, 159, .25); color: #eef4ff; text-decoration: none; }
.c365-builder-row small { display: block; color: #8ea4c1; }
.c365-stat-chip-list { display: flex; flex-wrap: wrap; gap: .4rem; padding: .65rem 0; }
.c365-stat-chip { border: 1px solid rgba(50, 213, 236, .28); border-radius: 999px; color: #b9dceb; font-size: .72rem; padding: .25rem .55rem; }
.c365-requirement-stat-form { margin-bottom: 1rem; }
.c365-device-input-card { border-top: 1px solid rgba(75, 111, 159, .25); padding: .6rem 0 1rem; }
.c365-device-input-card > p { color: #8fa2c0; font-size: .78rem; }
.c365-device-inputs { grid-column: 1/-1; }
.c365-device-input-card > summary { cursor: pointer; list-style-position: inside; }
.c365-device-input-card[open] > summary { margin-bottom: 1rem; }
.c365-device-input-create { margin-top: 1rem; }
.c365-device-connect { margin-top: .75rem; }
.c365-device-connect > summary { display: inline-flex; cursor: pointer; list-style: none; }
.c365-device-connect > summary::-webkit-details-marker { display: none; }
.c365-device-connect[open] > summary { margin-bottom: .75rem; }
.c365-device-input-create-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin: 1rem 0 1.25rem; }
.c365-device-input-create-options .c365-device-input-card { padding: .85rem 1rem 1rem; border: 1px solid var(--c365-board-border); border-radius: 11px; background: rgba(5, 18, 35, .45); }
.c365-device-input-create-options .c365-device-input-card > summary { color: #eef4ff; }
.c365-device-input-create-options .c365-device-input-card > p { margin: .65rem 0; }
.c365-device-definition-stats fieldset { min-width: 0; margin: 0; padding: .85rem; border: 1px solid rgba(75, 111, 159, .35); border-radius: 10px; }
.c365-device-definition-stats legend { float: none; width: auto; margin: 0; padding: 0 .25rem; color: #eef4ff; font-size: .82rem; }
.c365-device-definition-stats p { margin: 0 0 .7rem; color: #8fa2c0; font-size: .75rem; }
.c365-device-definition-stat-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(12rem, 1fr)); gap: .45rem; }
.c365-device-definition-stat-grid label { display: flex; align-items: flex-start; gap: .5rem; padding: .55rem; border-radius: 8px; background: rgba(14, 35, 64, .72); }
.c365-device-definition-stat-grid strong, .c365-device-definition-stat-grid small { display: block; }
.c365-device-definition-stat-grid small { margin-top: .1rem; color: #8296b5; }
.c365-form-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .75rem 1rem; margin: .5rem 0 1rem; }
.c365-form-grid label { display: grid; gap: .35rem; color: #9eb0c9; font-size: .78rem; }
.c365-form-grid label:has(input[type="checkbox"]) { display: flex; align-items: center; }
.c365-form-actions { display: flex; align-items: end; justify-content: flex-end; }
.c365-device-stat-form { flex-wrap: wrap; align-items: center; }
.c365-device-stat-form select { min-width: 12rem; }
.c365-device-stat-form label { display: flex; align-items: center; gap: .35rem; color: #aabbd2; }
.c365-collection-fields tr.is-disabled td { opacity: .62; }
.c365-collection-fields th:last-child, .c365-collection-fields td:last-child { width: 9.5rem; }
.c365-field-state-toggle { display: inline-flex; align-items: center; gap: .55rem; margin: 0; color: #aabbd2; cursor: pointer; }
.c365-field-state-toggle input { position: relative; width: 2.25rem; height: 1.2rem; margin: 0; appearance: none; border: 1px solid #425575; border-radius: 999px; background: #101d32; cursor: pointer; transition: background .15s ease, border-color .15s ease; }
.c365-field-state-toggle input::after { position: absolute; top: 2px; left: 2px; width: .85rem; height: .85rem; border-radius: 50%; background: #8296b5; content: ""; transition: transform .15s ease, background .15s ease; }
.c365-field-state-toggle input:checked { border-color: #32d5ec; background: rgba(50, 213, 236, .28); }
.c365-field-state-toggle input:checked::after { transform: translateX(1.03rem); background: #32d5ec; }
.c365-field-state-toggle input:disabled { cursor: not-allowed; }
.c365-field-state-toggle:has(input:disabled) { cursor: not-allowed; }
.c365-attention-copy { color: #f2bd6b; }
.c365-inline-create { display: flex; gap: .5rem; margin-top: 1rem; }
.c365-inline-create input { flex: 1; }
.c365-stacked-create { display: grid; gap: .55rem; margin-top: 1rem; }
.c365-stacked-create input, .c365-stacked-create select { width: 100%; border: 1px solid var(--c365-board-border); border-radius: 9px; padding: .65rem .75rem; color: var(--c365-board-text); background: #071326; }
.c365-empty-inline { margin-top: 1rem; padding: 1rem; border-radius: 8px; color: #8ea4c1; background: rgba(5,14,27,.48); }

@media (max-width: 760px) {
    .c365-global-bar { display: none; }
    .c365-builder-grid { grid-template-columns: 1fr; }
    .c365-app-overview { grid-template-columns: 1fr; }
    .c365-page-heading { flex-direction: column; }
    .c365-form-grid { grid-template-columns: 1fr; }
    .c365-device-input-create-options { grid-template-columns: 1fr; }
}

.c365-board-v2-page .board-shell { margin: 0; }
.c365-board-app-context { container-type: inline-size; display: flex; align-items: center; gap: .8rem; min-height: 4.9rem; margin: -.35rem -2rem 1.1rem; padding: .85rem 2rem; border-bottom: 1px solid var(--c365-app-surface-border); background: transparent; box-shadow: none; }
.c365-board-app-context[hidden] { display: none; }
.c365-board-app-context__identity { display: grid; min-width: 0; }
.c365-board-app-context strong,
.c365-board-app-context h1 { margin: 0; color: var(--c365-board-text); font-family: var(--c365-font-heading); font-size: var(--c365-title-size); font-weight: 700; line-height: 1; letter-spacing: .01em; text-transform: none; }
.c365-board-app-context span { color: #9fb1cd; font-size: .72rem; }
.c365-app-lifecycle { display: inline-flex; align-items: center; }
.c365-board-app-context__spacer { flex: 1 1 auto; }
.c365-board-app-context__actions { display: flex; align-items: center; justify-content: flex-end; gap: .55rem; }
.c365-board-app-context__actions[hidden] { display: none; }
.c365-board-app-context__actions form { margin: 0; }
.c365-app-builder-navigation__trigger { display: inline-flex; width: auto; min-width: 0; height: 2.6rem; align-items: center; gap: .55rem; padding: .55rem .8rem; border: 1px solid rgba(167, 139, 250, .62); border-radius: var(--c365-board-control-radius); color: #fff; background: linear-gradient(135deg, #7c3aed, #5b21b6); box-shadow: 0 8px 22px rgba(76, 29, 149, .24); font-size: .78rem; font-weight: 800; }
.c365-app-builder-navigation__trigger:hover,
.c365-app-builder-navigation__trigger:focus-visible,
.c365-app-builder-navigation__trigger[aria-expanded="true"] { border-color: rgba(196, 181, 253, .88); background: linear-gradient(135deg, #8b5cf6, #6d28d9); }
.c365-app-builder-navigation__trigger svg { width: 1.05rem; height: 1.05rem; fill: none; stroke: currentColor; stroke-linecap: round; stroke-width: 1.8; }
.c365-app-builder-navigation__menu { min-width: 13rem; border-color: rgba(167, 139, 250, .5); background: linear-gradient(145deg, #15113b, #0c1530); }
.c365-builder-grid--single { grid-template-columns: minmax(0, 1fr); }
.c365-app-context-description { max-width: 76rem; margin: -.25rem 0 1.25rem; color: var(--c365-board-muted); }
.c365-board-app-context,
.c365-board-v2-page .board-header,
.c365-board-v2-page .board-workspace { transition: opacity .16s ease; }
.board-shell.is-board-switching .board-header,
.board-shell.is-board-switching .board-workspace { opacity: .72; }

@media (prefers-reduced-motion: reduce) {
    .c365-board-app-context,
    .c365-board-v2-page .board-header,
    .c365-board-v2-page .board-workspace { transition: none; }
}

@media (max-width: 1279.98px) {
    .c365-board-app-context {
        margin-right: -1.1rem;
        margin-left: -1.1rem;
        padding-right: 1.1rem;
        padding-left: 1.1rem;
    }
}

@media (max-width: 767.98px) {
    .c365-board-app-context {
        flex-wrap: wrap;
        margin-right: -1.1rem;
        margin-left: -1.1rem;
        padding-right: 1.1rem;
        padding-left: 1.1rem;
    }

    .c365-board-app-context__spacer { display: none; }

    .c365-board-app-context__actions {
        order: 4;
        width: 100%;
        flex-wrap: wrap;
        justify-content: flex-start;
    }

}

.c365-board-v2-page #tileGrid.board-tiles {
    --board-grid-gutter: var(--c365-board-gap);
    width: calc(100% + var(--board-grid-gutter));
    margin-right: calc(-.5 * var(--board-grid-gutter));
    margin-left: calc(-.5 * var(--board-grid-gutter));
}

.c365-board-v2-page .board-shell .board-header.body-content-header {
    align-items: flex-start;
    min-height: 92px;
    margin: 0 0 1.35rem;
    padding: 0 0 .2rem;
}

.c365-board-v2-page .board-header__content { padding-top: 0; }

.c365-board-v2-page .board-title-row { margin-bottom: 0; }

.c365-board-v2-page .board-title {
    color: var(--c365-board-text);
    font-size: clamp(2rem, 2.35vw, 2.55rem);
    font-weight: 700;
    line-height: 1;
    letter-spacing: .01em;
    text-transform: none;
}

.c365-board-v2-page .c365-workspace .c365-main h1.board-title {
    text-transform: none;
}

.c365-board-v2-page .board-header__actions {
    margin-right: 0;
    padding-right: 0;
}

.c365-board-v2-page .board-date-range,
.c365-board-v2-page .board-display-toggle {
    height: 44px;
    min-height: 44px;
    border-color: var(--c365-board-border);
    border-radius: var(--c365-board-control-radius);
    background: rgba(6, 6, 24, .72);
    color: #d8d3e2;
}

.c365-board-v2-page .board-date-range {
    --c365-date-range-width: 13rem;
    flex: 0 1 13rem;
}

.c365-board-v2-page .board-display-toggle {
    width: 44px;
    min-width: 44px;
    padding: 0;
    justify-content: center;
}

.c365-board-v2-page .board-detail-toggle {
    width: 44px;
    min-width: 44px;
    padding: 0;
}

.c365-board-v2-page .board-detail-toggle svg { width: 1.15rem; }

.c365-tile-shell {
    --c365-tile-surface: var(--c365-board-card);
    --c365-tile-surface-raised: var(--c365-board-card-raised);
    --c365-tile-border: var(--c365-board-border);
    --c365-tile-border-soft: rgba(118, 148, 207, .11);
    --c365-tile-accent: var(--c365-board-accent-primary);
    --c365-tile-accent-rgb: var(--c365-board-accent-primary-rgb);
    --c365-tile-glow: rgba(var(--c365-board-accent-primary-rgb), .09);
    --c365-tile-text-primary: var(--c365-board-text);
    --c365-tile-text-secondary: var(--c365-board-text-muted);
    --c365-tile-radius: var(--c365-board-radius);
    --c365-tile-padding: clamp(1rem, 2.5cqw, 1.5rem);
    --c365-tile-gap: clamp(.75rem, 2cqw, 1.25rem);
    border-width: 1px;
    background: linear-gradient(145deg, var(--c365-board-card-raised), var(--c365-board-card) 78%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .018), 0 12px 28px rgba(0, 0, 0, .16);
}

.c365-tile-shell::before { opacity: .22; }
.c365-tile-shell:hover,
.c365-tile-shell:focus-within {
    border-color: rgba(118, 148, 207, .26);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .025), 0 14px 32px rgba(0, 0, 0, .2);
}

.c365-tile-shell.c365-tile-shell--critical {
    --c365-tile-accent: var(--c365-tile-critical);
    --c365-tile-accent-rgb: 239, 82, 73;
    --c365-tile-surface: #31090f;
    --c365-tile-surface-raised: #721d24;
    --c365-tile-border: rgba(255, 88, 78, .94);
    --c365-tile-border-soft: rgba(255, 117, 108, .48);
    --c365-tile-glow: rgba(239, 82, 73, .44);
    --c365-tile-text-primary: #ff8179;
    --c365-tile-text-secondary: #ffaaa5;
    border-color: var(--c365-tile-border);
    background:
        radial-gradient(circle at 18% 0%, rgba(255, 122, 111, .34), transparent 48%),
        linear-gradient(145deg, var(--c365-tile-surface-raised), var(--c365-tile-surface) 62%, #1d060a);
    box-shadow:
        inset 0 0 42px rgba(var(--c365-tile-accent-rgb), .18),
        0 0 30px rgba(var(--c365-tile-accent-rgb), .38),
        0 18px 38px rgba(0, 0, 0, .42);
}

.c365-tile-title {
    color: #f2f8fc;
    font-family: "Manrope", sans-serif;
    font-size: clamp(.94rem, 1.7cqw, 1rem);
    font-weight: 600;
}

.c365-tile-shell[data-c365-renderer="lineChart"] .c365-line-renderer .c365-line-current > span {
    color: #dcecff;
    font-size: clamp(1.9rem, 7.2cqw, 2.85rem);
    font-weight: 450;
    letter-spacing: -.03em;
}

.c365-tile-shell[data-c365-renderer="lineChart"] .c365-line-renderer .c365-line-current small { color: #adc4dc; }

.c365-trend {
    padding: .3rem .48rem;
    border: 1px solid rgba(var(--c365-board-accent-primary-rgb), .2);
    border-radius: 8px;
    background: rgba(7, 24, 44, .72);
    color: var(--c365-board-accent-primary);
    font-size: .72rem;
}

.c365-overflow__trigger { color: #ddd8e7; }

.c365-tile-shell.c365-tile-shell--critical .c365-tile-title,
.c365-tile-shell.c365-tile-shell--critical[data-c365-renderer="lineChart"] .c365-line-current > span,
.c365-tile-shell.c365-tile-shell--critical[data-c365-renderer="lineChart"] .c365-line-current small {
    color: var(--c365-tile-text-primary);
}

.c365-tile-shell[data-c365-renderer="lineChart"][data-c365-fit-tile-edges="true"] .c365-line-tile__chart-wrap {
    width: auto;
    margin-right: calc(-1 * var(--c365-board-chart-edge-bleed));
    margin-bottom: calc(-1 * var(--c365-board-chart-edge-bleed));
    margin-left: calc(-1 * var(--c365-board-chart-edge-bleed));
    border-radius: 0;
    background: transparent;
}

.c365-tile-shell[data-c365-renderer="lineChart"][data-c365-fit-tile-edges="true"] .c365-tile-content { overflow: visible; }

.c365-tile-shell[data-c365-renderer="lineChart"][data-c365-fit-tile-edges="true"] .c365-line-renderer {
    margin-bottom: 0;
    height: 100%;
}

.c365-tile-shell[data-c365-renderer="lineChart"][data-c365-fit-tile-edges="true"] .c365-line-periods,
.c365-tile-shell[data-c365-renderer="lineChart"][data-c365-fit-tile-edges="true"] .c365-line-interactions {
    position: relative;
    z-index: 2;
    margin-inline: var(--c365-tile-padding);
}

.c365-tile-shell[data-c365-renderer="lineChart"][data-c365-size-mode="micro"] {
    --c365-board-chart-edge-bleed: var(--c365-tile-padding);
}

.board-tile:has(.c365-tile-shell[data-c365-size-mode="micro"]) {
    min-height: 0;
}

.c365-board-v2-page #askCapture365AIToggle {
    justify-content: flex-start;
    border-color: rgba(132, 77, 255, .48);
    border-radius: 13px;
    background: linear-gradient(135deg, rgba(47, 24, 104, .9), rgba(20, 12, 57, .94));
}

@media (min-width: 1280px) {
    .c365-board-v2-page .c365-board-app-context {
        align-items: flex-start;
        margin-top: calc(.9rem - var(--c365-board-title-anchor-top));
        padding-top: .52rem;
    }

    .c365-board-v2-page .c365-topbar__brand {
        justify-content: flex-start;
    }

    .c365-board-v2-page .c365-topbar__brand--app {
        padding-top: .55rem;
    }

    .c365-board-v2-page .c365-app-layout {
        grid-template-columns: var(--c365-board-sidebar-width) minmax(0, 1fr) var(--c365-board-ai-rail-width);
        grid-template-rows: minmax(100vh, auto);
        background:
            radial-gradient(circle at 79% 1%, rgba(var(--c365-board-accent-secondary-rgb), .09), transparent 31rem),
            radial-gradient(circle at 52% 32%, rgba(37, 35, 122, .12), transparent 36rem),
            linear-gradient(145deg, #06071a, var(--c365-board-background) 48%, #020311);
    }

    .c365-board-v2-page .c365-app-layout.c365-ai-docked-collapsed {
        grid-template-columns: var(--c365-board-sidebar-width) minmax(0, 1fr);
        grid-template-rows: minmax(100vh, auto);
    }

    .c365-board-v2-page .c365-app-layout .c365-topbar.c365-workspace-bar,
    .c365-board-v2-page .c365-app-layout.c365-ai-docked-collapsed .c365-topbar.c365-workspace-bar {
        position: sticky;
        top: 0;
        display: flex;
        width: var(--c365-board-sidebar-width);
        height: 100vh;
        min-height: 640px;
        padding: calc(var(--c365-board-title-anchor-top) - .55rem) .95rem 1.1rem;
        background: transparent;
        box-shadow: none;
    }

    .c365-board-v2-page .c365-app-layout.c365-ai-docked-collapsed .c365-topbar.c365-workspace-bar > :not(.c365-ai-toggle) {
        display: flex;
    }

    .c365-board-v2-page .c365-app-layout.c365-ai-docked-collapsed .c365-topbar .c365-nav-panel {
        display: flex;
    }

    .c365-board-v2-page .c365-app-layout.c365-ai-docked-collapsed .c365-topbar .c365-nav__list {
        display: grid;
    }

    .c365-board-v2-page .c365-app-layout .c365-ai-panel {
        position: sticky;
        inset: 0 auto auto;
        z-index: 1;
        grid-column: 3;
        grid-row: 1;
        width: 100%;
        min-width: 0;
        height: 100dvh;
        padding: 0;
        border-left: 1px solid var(--c365-board-rail-border);
        background: transparent;
        box-shadow: none;
        transform: none;
    }

    .c365-board-v2-page .c365-app-layout .c365-ai-panel--minimal {
        --c365-ai-space-md: 16px;
        --c365-ai-space-lg: 18px;
        --c365-ai-inline-gutter: 1.55rem;
        color: var(--c365-board-text);
        background: var(--c365-app-surface-background, linear-gradient(150deg, #122648, #071428 72%));
    }

    .c365-board-v2-page .c365-app-layout .c365-workspace {
        background: transparent;
    }

    .c365-board-v2-page .c365-ai-panel--minimal .c365-ai-panel__header {
        min-height: 0;
        padding: var(--c365-board-title-anchor-top) var(--c365-ai-inline-gutter) .65rem;
    }

    .c365-board-v2-page .c365-ai-panel--minimal .c365-ai-brand__title {
        color: var(--c365-board-text);
        font-family: var(--c365-font-heading);
        font-size: var(--c365-title-size);
        letter-spacing: .01em;
        text-transform: none;
    }

    .c365-board-v2-page .c365-ai-panel--minimal .c365-ai-panel__meta {
        padding: 0 var(--c365-ai-inline-gutter) .75rem;
    }

    .c365-board-v2-page .c365-ai-panel--minimal .c365-ai-panel__messages {
        padding: .65rem var(--c365-ai-inline-gutter) 1.1rem;
    }

    .c365-board-v2-page .c365-ai-panel--minimal .c365-ai-panel__composer {
        margin: .75rem var(--c365-ai-inline-gutter) 1rem;
        border-color: var(--c365-app-surface-border, var(--c365-board-rail-border));
        background: var(--c365-app-surface-raised, var(--c365-board-card));
    }

    .c365-board-v2-page .c365-ai-panel--minimal .c365-ai-context,
    .c365-board-v2-page .c365-ai-panel--minimal .c365-ai-change-request,
    .c365-board-v2-page .c365-ai-panel--minimal .c365-ai-details {
        border-color: var(--c365-app-surface-border, var(--c365-board-border));
        background: var(--c365-app-surface-raised, var(--c365-board-card));
    }

    .c365-board-v2-page .c365-ai-panel--minimal .c365-ai-message-user .c365-ai-bubble {
        background: rgba(var(--c365-board-accent-secondary-rgb), .14);
    }

}

@media (min-width: 901px) and (max-width: 1279.98px) {
    .c365-board-v2-page .c365-app-layout {
        grid-template-columns: minmax(0, 1fr);
        grid-template-rows: auto minmax(0, 1fr);
    }
    .c365-board-v2-page .c365-topbar.c365-workspace-bar {
        position: sticky;
        grid-column: 1;
        grid-row: 1;
        display: grid;
        width: 100%;
        height: auto;
        min-height: var(--c365-header-height);
        grid-template-columns: minmax(0, 1fr) auto auto;
        gap: .55rem;
        padding: 0 clamp(1rem, 2vw, 2rem);
        border-right: 0;
        border-bottom: 1px solid var(--c365-board-border);
        background: var(--c365-board-navigation);
    }
    .c365-board-v2-page .c365-topbar__brand { grid-column: 1; }
    .c365-board-v2-page .c365-topbar.c365-workspace-bar .c365-nav-toggle,
    .c365-board-v2-page .c365-app-layout.c365-ai-docked-collapsed .c365-topbar.c365-workspace-bar .c365-nav-toggle {
        display: inline-flex !important;
        grid-column: 2;
        grid-row: 1;
    }
    .c365-board-v2-page .c365-topbar .c365-nav-panel {
        position: fixed;
        z-index: var(--c365-layer-mobile-navigation);
        top: calc(var(--c365-header-height) + .45rem);
        right: calc(clamp(1rem, 2vw, 2rem) + 44px + .55rem);
        bottom: auto;
        left: auto;
        display: none !important;
        width: min(21rem, calc(100vw - 2rem));
        max-height: calc(100dvh - var(--c365-header-height) - 1rem);
        padding: .6rem;
        overflow-y: auto;
        border: 1px solid var(--c365-board-border);
        border-radius: var(--c365-board-control-radius);
        background: #030516;
        box-shadow: var(--c365-board-shadow);
    }
    .c365-board-v2-page .c365-topbar .c365-nav-panel.collapse:not(.show) { display: none !important; }
    .c365-board-v2-page .c365-topbar .c365-nav-panel.show,
    .c365-board-v2-page .c365-topbar .c365-nav-panel.collapsing { display: block !important; }
    .c365-board-v2-page .c365-topbar .c365-nav__list { display: grid; }
    .c365-board-v2-page .c365-nav__footer {
        grid-column: 3;
        grid-row: 1;
        align-self: center;
        margin: 0;
        padding: 0;
    }
    .c365-board-v2-page .c365-header-account {
        position: relative;
        inset: auto;
        width: auto;
        min-width: 0;
        margin: 0;
        border: 0;
    }
    .c365-board-v2-page .c365-nav__identity-button {
        grid-template-columns: 34px;
        width: 44px;
        min-width: 44px;
        min-height: 44px;
        padding: .25rem;
        border: 1px solid var(--c365-board-border);
        border-radius: var(--c365-board-control-radius);
    }
    .c365-board-v2-page .c365-nav__identity-mark { width: 34px; }
    .c365-board-v2-page .c365-nav__identity-copy,
    .c365-board-v2-page .c365-nav__identity-exit { display: none; }
    .c365-board-v2-page .c365-workspace { grid-column: 1; grid-row: 2; }
    .c365-board-v2-page .c365-workspace .c365-main { padding: 1.2rem 1.1rem 1.8rem; }
    .c365-board-v2-page #askCapture365AIToggle { right: 1rem; left: auto; width: auto; }
}

@media (max-width: 900px) {
    .c365-board-v2-page {
        --c365-board-chart-edge-bleed: var(--c365-tile-padding);
    }

    .c365-board-v2-page .c365-app-layout {
        grid-template-columns: minmax(0, 1fr);
        grid-template-rows: 58px minmax(0, 1fr);
    }
    .c365-board-v2-page .c365-topbar.c365-workspace-bar {
        position: fixed;
        inset: 0 0 auto;
        grid-column: 1;
        grid-row: 1;
        display: grid;
        width: 100%;
        height: 58px;
        min-height: 58px;
        grid-template-columns: minmax(0, 1fr) auto auto;
        gap: clamp(.45rem, 2vw, 1rem);
        padding: 0 1rem;
        border-right: 0;
        border-bottom: 1px solid var(--c365-board-border);
        background: var(--c365-board-navigation);
    }
    .c365-board-v2-page .c365-topbar__brand { font-size: 1rem; }
    .c365-board-v2-page .c365-nav-toggle { display: inline-flex !important; grid-column: 2; grid-row: 1; }
    .c365-board-v2-page .c365-topbar .c365-nav-panel {
        right: calc(1rem + 44px + .45rem);
        width: min(19rem, calc(100vw - 1.5rem));
        background: #030516;
    }
    .c365-board-v2-page .c365-topbar .c365-nav-panel.collapse:not(.show) { display: none !important; }
    .c365-board-v2-page .c365-topbar .c365-nav-panel.show,
    .c365-board-v2-page .c365-topbar .c365-nav-panel.collapsing { display: block !important; }
    .c365-board-v2-page .c365-header-account {
        position: relative;
        inset: auto;
        z-index: var(--c365-layer-account-menu);
        min-width: 0;
        width: auto;
        margin: 0;
        border: 0;
    }
    .c365-board-v2-page .c365-nav__footer {
        grid-column: 3;
        grid-row: 1;
        align-self: center;
        margin: 0;
        padding: 0;
    }
    .c365-board-v2-page .c365-topbar .c365-header-account .c365-nav__identity-button {
        grid-template-columns: 34px;
        width: 44px;
        min-width: 44px;
        min-height: 44px;
        padding: .25rem;
        border: 1px solid var(--c365-board-border);
        border-radius: var(--c365-board-control-radius);
    }
    .c365-board-v2-page .c365-topbar .c365-header-account .c365-nav__identity-mark { width: 34px; }
    .c365-board-v2-page .c365-topbar .c365-header-account .c365-nav__identity-copy,
    .c365-board-v2-page .c365-topbar .c365-header-account .c365-nav__identity-exit { display: none; }
    .c365-board-v2-page .c365-workspace { grid-column: 1; grid-row: 2; }
    .c365-board-v2-page .c365-workspace .c365-main { padding: 1.2rem 1.1rem 1.8rem; }
    .c365-board-v2-page #askCapture365AIToggle { right: 1rem; left: auto; width: auto; }
}

@media (max-width: 520px) {
    .c365-board-v2-page .c365-topbar.c365-workspace-bar {
        grid-template-columns: minmax(0, 1fr) auto;
    }
}

/* App workspace -------------------------------------------------------------
   The platform rail owns App management. The content area is the App and its
   shared header owns runtime navigation, App identity, settings and account. */
.c365-board-v2-page {
    --c365-board-background: #080f22;
    --c365-board-background-deep: #040817;
    --c365-board-surface: #0d1730;
    --c365-board-card: #101a34;
    --c365-board-card-raised: #14203d;
    --c365-board-border: rgba(118, 148, 207, .16);
    --c365-board-border-strong: rgba(118, 148, 207, .28);
    --c365-workspace-background:
        radial-gradient(circle at 76% 0%, rgba(61, 94, 180, .17), transparent 34rem),
        radial-gradient(circle at 28% 42%, rgba(50, 42, 128, .1), transparent 38rem),
        linear-gradient(145deg, #080f22, #050a19 64%, #030612);
}

.c365-app-header {
    position: sticky;
    top: 0;
    z-index: var(--c365-layer-sticky-header, 700);
    display: grid;
    grid-template-columns: minmax(12rem, auto) minmax(0, 1fr) auto;
    align-items: center;
    gap: clamp(1rem, 2.5vw, 2.5rem);
    min-height: 76px;
    padding: .7rem 2rem;
    border-bottom: 0;
    background: transparent;
    box-shadow: none;
}

.c365-app-header__identity {
    display: inline-flex;
    align-items: center;
    min-width: 0;
    color: var(--c365-board-text);
    text-decoration: none;
}

.c365-app-header__identity:hover,
.c365-app-header__identity:focus-visible { color: #fff; }

.c365-app-header__identity-copy { display: grid; min-width: 0; }
.c365-app-header__identity-copy strong {
    overflow: hidden;
    max-width: 13rem;
    color: #f7f8ff;
    font-family: "Sora", "Manrope", sans-serif;
    font-size: clamp(1.12rem, 0.85rem + 0.74vw, 1.62rem);
    font-weight: 700;
    line-height: 1;
    letter-spacing: .01em;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.c365-app-header__navigation { min-width: 0; overflow: hidden; }
.c365-app-header__menu {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end;
    gap: clamp(1.25rem, 2.5vw, 2.75rem) !important;
    min-width: 0;
    margin: 0 !important;
    padding: 0 !important;
    overflow-x: auto;
    overflow-y: hidden;
    list-style: none;
    scrollbar-width: none;
}
.c365-app-header__menu::-webkit-scrollbar { display: none; }
.c365-app-header__menu .c365-nav__child-item { flex: 0 0 auto; }
.c365-app-header__menu .c365-nav__link {
    display: inline-flex;
    width: auto;
    min-height: 42px !important;
    align-items: center;
    justify-content: center;
    padding: .65rem 0 !important;
    border: 0 !important;
    border-radius: 0;
    color: #8292b6;
    background: transparent;
    font-family: var(--c365-font-body);
    font-size: .83rem !important;
    font-weight: 600;
    text-decoration: none;
    white-space: nowrap;
}
.c365-app-header__menu .c365-nav__link:hover,
.c365-app-header__menu .c365-nav__link:focus-visible {
    color: #f4faff;
    background: transparent;
}
.c365-app-header__menu .c365-nav__link.active {
    color: #f7fbff;
    background: transparent;
    box-shadow: none;
}

.c365-app-header__tools { display: flex; align-items: center; gap: .5rem; }
.c365-app-header__settings {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border: 1px solid rgba(91, 121, 181, .32);
    border-radius: 50%;
    color: #a9b8d4;
    background: rgba(25, 36, 72, .58);
}
.c365-app-header__settings:hover,
.c365-app-header__settings:focus-visible {
    border-color: rgba(104, 160, 238, .62);
    color: #fff;
    background: rgba(42, 61, 119, .68);
}
.c365-app-header__settings svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.7;
}

.c365-app-header .c365-header-account {
    position: relative;
    inset: auto;
    z-index: var(--c365-layer-page-menu, 600);
    width: auto;
    margin: 0;
    padding: 0;
    border: 0;
}
.c365-app-header .c365-nav__identity-button {
    grid-template-columns: 36px;
    width: 42px;
    min-width: 42px;
    min-height: 42px;
    padding: 2px;
    border: 1px solid rgba(91, 121, 181, .34);
    border-radius: 50%;
    background: rgba(25, 36, 72, .58);
}
.c365-app-header .c365-nav__identity-mark { width: 36px; }
.c365-app-header .c365-nav__identity-copy,
.c365-app-header .c365-nav__identity-exit { display: none; }
.c365-app-header .c365-nav__identity-button.dropdown-toggle::after {
    position: absolute;
    right: -2px;
    bottom: 2px;
    margin: 0;
    color: #8ca5ca;
}
.c365-app-account-menu__dropdown {
    min-width: 12.5rem;
    margin-top: .55rem !important;
}
.c365-app-account-menu__app-navigation { display: none; }
.c365-app-account-menu__dropdown .dropdown-divider {
    border-color: rgba(92, 121, 181, .24);
}
.c365-app-account-menu__logout { color: #ffc0c8 !important; }
.c365-board-v2-page .c365-tile-shell {
    border-radius: 22px;
}
.c365-board-v2-page .c365-tile-title { font-family: var(--c365-font-body); font-weight: 600; }

@media (max-width: 1279.98px) {
    .c365-app-header {
        grid-template-columns: minmax(0, 1fr) auto;
        padding-inline: 1.1rem;
    }
    .c365-app-header__navigation { display: none; }
    .c365-app-account-menu__app-navigation { display: list-item; }
}

@media (max-width: 820px) {
    .c365-app-header {
        position: relative;
        gap: .65rem 1rem;
        padding: .7rem 1rem .55rem;
    }
}

@media (max-width: 520px) {
    .c365-app-header__identity-copy strong { max-width: 9rem; }
    .c365-app-header__settings { width: 40px; height: 40px; }
    .c365-app-header .c365-nav__identity-button { width: 40px; min-width: 40px; min-height: 40px; }
    .c365-app-header .c365-nav__identity-mark { width: 34px; }
}

/* The compact shell owns one in-viewport menu. Identity and logout remain at its bottom. */
@media (max-width: 1279.98px) {
    .c365-board-v2-page .c365-topbar.c365-workspace-bar {
        grid-template-columns: minmax(0, 1fr) auto;
    }
    .c365-board-v2-page .c365-topbar__brand {
        align-self: center;
        min-height: 0;
        padding: 0;
    }
    .c365-board-v2-page .c365-topbar.c365-workspace-bar .c365-nav-toggle {
        grid-column: 2;
    }
    .c365-board-v2-page .c365-topbar .c365-nav-panel {
        right: max(1rem, env(safe-area-inset-right, 0px));
        height: calc(100dvh - var(--c365-header-height) - 1rem);
        overflow: hidden;
    }
    .c365-board-v2-page .c365-topbar .c365-nav-panel.show,
    .c365-board-v2-page .c365-topbar .c365-nav-panel.collapsing {
        display: flex !important;
        flex-direction: column;
    }
    .c365-board-v2-page .c365-topbar .c365-nav__list {
        flex: 1 1 auto;
        overflow-y: auto;
    }
    .c365-board-v2-page .c365-topbar .c365-nav__footer {
        display: grid;
        flex: 0 0 auto;
        margin-top: auto;
        padding: .7rem .25rem .2rem;
        border-top: 1px solid var(--c365-board-border);
    }
    .c365-board-v2-page .c365-topbar .c365-header-account {
        position: relative;
        inset: auto;
        width: 100%;
        margin: 0;
        padding: 0;
        border: 0;
    }
    .c365-board-v2-page .c365-topbar .c365-header-account .c365-nav__identity-button {
        width: 100%;
        min-width: 0;
        grid-template-columns: 42px minmax(0, 1fr) 18px;
        padding: .48rem .55rem .48rem .32rem;
        border: 0;
        border-radius: var(--c365-board-control-radius);
        background: transparent;
    }
    .c365-board-v2-page .c365-topbar .c365-header-account .c365-nav__identity-mark { width: 42px; }
    .c365-board-v2-page .c365-topbar .c365-header-account .c365-nav__identity-copy { display: grid; }
    .c365-board-v2-page .c365-topbar .c365-header-account .c365-nav__identity-exit { display: block; }
}

@media (max-width: 767.98px) {
    .c365-board-v2-page #tileGrid.board-tiles {
        width: 100% !important;
        margin-inline: 0 !important;
    }
    .c365-board-v2-page .board-shell .board-header.body-content-header {
        align-items: stretch;
        min-height: 0;
        margin-bottom: .65rem;
    }
    .c365-board-v2-page .board-title { font-size: 1.65rem; white-space: normal; }
    .c365-board-v2-page .board-header__actions { align-items: stretch; }
    .c365-board-v2-page .board-date-range {
        --c365-date-range-width: auto;
        flex: 1 1 0;
        width: auto;
        min-width: 0;
        grid-template-columns: 2rem minmax(0, 1fr) 1.75rem;
    }
    .c365-board-v2-page .board-date-range select {
        padding-inline: 2rem 1.75rem;
        font-size: .8rem;
    }
    .c365-board-v2-page .board-display-toggle { width: 44px; min-width: 44px; }
    .c365-board-v2-page .board-detail-toggle { width: 44px; min-width: 44px; padding: 0; }
}

.c365-editable-table__viewport { overflow: auto; max-height: 24rem; }
.c365-editable-table__grid { width: 100%; border-collapse: collapse; }
.c365-editable-table__grid th { color: var(--c365-board-accent, #48d0e2); font-size: .72rem; text-transform: uppercase; letter-spacing: .06em; }
.c365-editable-table__grid :is(th, td) { padding: .45rem .4rem; border-bottom: 1px solid rgba(124, 103, 211, .18); }
.c365-editable-table__grid input { width: 100%; min-width: 7rem; min-height: 2.25rem; color: #fff; background: rgba(6, 9, 29, .86); border: 1px solid rgba(124, 103, 211, .42); border-radius: .5rem; padding: .35rem .5rem; }
.c365-editable-table__grid input:focus { outline: 2px solid rgba(72, 208, 226, .55); outline-offset: 1px; }
.c365-editable-table__actions { width: 1%; white-space: nowrap; }
.c365-editable-table__toolbar { display: flex; gap: .55rem; align-items: center; padding-top: .7rem; }
.c365-editable-table__count, .c365-editable-table__message { color: var(--c365-board-text-muted); font-size: .78rem; }
.c365-editable-table__message.is-error { color: #ff7b8d; }

@media (prefers-reduced-motion: reduce) {
    .c365-board-v2-page .c365-tile-shell { transition: none; }
}

@media (max-width: 1279.98px) {
    .c365-board-v2-page .board-header__content { padding-top: .1rem; }
}
.c365-ai-summary { display:grid; gap:.65rem; height:100%; min-height:0; padding:.25rem .1rem; }
.c365-ai-summary__persona { margin:0; color:var(--c365-board-accent-primary); font-size:.7rem; font-weight:700; letter-spacing:.1em; text-transform:uppercase; }
.c365-ai-summary h3 { margin:0; color:var(--c365-board-text); font:650 1.15rem/1.25 Sora,sans-serif; }
.c365-ai-summary__narrative { margin:0; color:var(--c365-board-text-muted); font-size:.86rem; line-height:1.45; }
.c365-ai-summary__metrics { display:grid; grid-template-columns:repeat(auto-fit,minmax(7rem,1fr)); gap:.5rem; }
.c365-ai-summary__metrics div { padding:.65rem .7rem; border:0; border-radius:12px; background:rgba(255,255,255,.025); }
.c365-ai-summary__metrics span,.c365-ai-summary__metrics strong { display:block; }
.c365-ai-summary__metrics span { color:var(--c365-board-text-muted); font-size:.66rem; }
.c365-ai-summary__metrics strong { margin-top:.2rem; color:var(--c365-board-text); font-size:.9rem; }
.c365-ai-summary__deltas { display:flex; flex-wrap:wrap; gap:.4rem; }
.c365-ai-summary__deltas span { padding:.28rem .5rem; border:1px solid var(--c365-board-border); border-radius:999px; color:var(--c365-board-text-muted); font-size:.7rem; }
.c365-ai-summary__basis,.c365-ai-summary__notice { margin:auto 0 0; color:var(--c365-board-text-subtle); font-size:.68rem; }
.c365-ai-summary__loading { display:grid; place-items:center; align-content:center; gap:.55rem; height:100%; text-align:center; color:var(--c365-board-text-muted); }
.c365-ai-summary__loading p { margin:0; }
.c365-ai-summary__pulse { width:2rem; aspect-ratio:1; border:2px solid var(--c365-board-border); border-top-color:var(--c365-board-accent-primary); border-radius:50%; animation:c365-ai-summary-spin .9s linear infinite; }
@keyframes c365-ai-summary-spin { to { transform:rotate(360deg); } }

/* Shared popup framework -----------------------------------------------------
   Bootstrap modals, Bootbox notices and feature workspaces opt into this
   class so every authenticated popup inherits the Board v2 visual contract. */
.c365-app--authenticated .modal.c365-modal {
    --bs-modal-color: var(--c365-board-text);
    color: var(--c365-board-text);
}

.c365-app--authenticated .modal.c365-modal .modal-dialog {
    width: min(44rem, calc(100vw - 2rem));
    max-width: none;
    margin: max(.75rem, env(safe-area-inset-top, 0px)) auto;
}

.c365-app--authenticated .modal.c365-modal .modal-dialog > form {
    display: flex;
    width: 100%;
    max-height: calc(100dvh - 1.5rem - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
    min-height: 0;
}

.c365-app--authenticated .modal.c365-modal .modal-dialog > form > .modal-content { width: 100%; }

.c365-app--authenticated .modal.c365-modal .modal-content {
    max-height: calc(100dvh - 1.5rem - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
    overflow: hidden;
    border: 1px solid var(--c365-board-border-strong);
    border-radius: var(--c365-board-radius);
    color: var(--c365-board-text);
    background:
        radial-gradient(circle at 86% 0, rgba(var(--c365-board-accent-secondary-rgb), .14), transparent 26rem),
        linear-gradient(155deg, rgba(15, 13, 47, .99), rgba(3, 5, 22, .995) 74%) !important;
    box-shadow: 0 28px 80px rgba(0, 0, 0, .62), 0 0 34px rgba(var(--c365-board-accent-secondary-rgb), .08);
}

.c365-app--authenticated .modal.c365-modal :is(.modal-header, .modal-footer) {
    flex: 0 0 auto;
    gap: .8rem;
    padding: .9rem 1rem;
    border-color: var(--c365-board-border);
    background: rgba(3, 5, 22, .76);
}

.c365-app--authenticated .modal.c365-modal .modal-header { align-items: flex-start; }

.c365-app--authenticated .modal.c365-modal .modal-body {
    min-height: 0;
    padding: 1rem;
    overflow: auto;
    overscroll-behavior: contain;
    scrollbar-color: rgba(var(--c365-board-accent-secondary-rgb), .62) rgba(3, 5, 22, .72);
}

.c365-app--authenticated .modal.c365-modal .modal-title {
    margin: 0;
    color: var(--c365-board-text);
    font-family: "Sora", "Manrope", sans-serif;
    font-size: 1.15rem;
    font-weight: 700;
    line-height: 1.25;
    letter-spacing: .01em;
}

.c365-app--authenticated .modal.c365-modal .c365-modal__eyebrow {
    margin: 0 0 .24rem;
    color: var(--c365-board-accent-primary);
    font-size: .64rem;
    font-weight: 750;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.c365-app--authenticated .modal.c365-modal .c365-modal__description {
    margin: .28rem 0 0;
    color: var(--c365-board-text-muted);
    font-size: .78rem;
    line-height: 1.45;
}

.c365-app--authenticated .modal.c365-modal .btn-close {
    flex: 0 0 auto;
    width: 2.5rem;
    height: 2.5rem;
    margin: -.35rem -.35rem -.35rem auto;
    padding: 0;
    border: 1px solid transparent;
    border-radius: var(--c365-board-control-radius);
    background-size: .78rem;
    filter: invert(1) grayscale(1);
    opacity: .72;
}

.c365-app--authenticated .modal.c365-modal .btn-close:hover,
.c365-app--authenticated .modal.c365-modal .btn-close:focus-visible {
    border-color: var(--c365-board-border-strong);
    background-color: rgba(var(--c365-board-accent-secondary-rgb), .12);
    opacity: 1;
}

.c365-app--authenticated .modal.c365-modal .modal-footer { justify-content: flex-end; }

.c365-app--authenticated .modal.c365-modal .modal-footer .btn {
    min-height: 42px;
    border-radius: var(--c365-board-control-radius);
    padding: .58rem .9rem;
    font-size: .82rem;
    font-weight: 700;
}

.c365-app--authenticated .modal.c365-modal .modal-footer .btn-secondary,
.c365-app--authenticated .modal.c365-modal .modal-footer .btn-outline-secondary,
.c365-app--authenticated .modal.c365-modal .modal-footer .btn-outline-light {
    border-color: var(--c365-board-border);
    color: var(--c365-board-text);
    background: rgba(10, 9, 36, .86);
}

.c365-app--authenticated .modal.c365-modal .modal-footer .btn-secondary:hover,
.c365-app--authenticated .modal.c365-modal .modal-footer .btn-outline-secondary:hover,
.c365-app--authenticated .modal.c365-modal .modal-footer .btn-outline-light:hover {
    border-color: var(--c365-board-border-strong);
    background: rgba(var(--c365-board-accent-secondary-rgb), .16);
}

.c365-app--authenticated .modal.c365-modal .modal-footer .btn-primary {
    border-color: rgba(var(--c365-board-accent-primary-rgb), .44);
    color: #031014;
    background: linear-gradient(135deg, #62e5ed, #32c7db 72%, #26abc2);
}

.c365-app--authenticated .modal.c365-modal .modal-footer .btn-danger,
.c365-app--authenticated .modal.c365-modal .modal-footer .btn-outline-danger {
    border-color: rgba(255, 102, 138, .56);
    color: #ffc1d0;
    background: rgba(255, 102, 138, .08);
}

.c365-app--authenticated .modal.c365-modal :is(.form-control, .form-select) {
    min-height: 44px;
    border-color: var(--c365-board-border);
    border-radius: var(--c365-board-control-radius);
    color: var(--c365-board-text);
    background-color: rgba(3, 5, 22, .78);
}

.c365-app--authenticated .modal.c365-modal :is(.form-control, .form-select):focus {
    border-color: rgba(var(--c365-board-accent-primary-rgb), .62);
    box-shadow: 0 0 0 3px rgba(var(--c365-board-accent-primary-rgb), .09);
}

.c365-app--authenticated .modal.c365-modal :is(.form-label, .col-form-label, label, legend) { color: #d8d3e8; }
.c365-device-input-options { display: grid; gap: .75rem; margin: 0; padding: 0; border: 0; }
.c365-device-input-options label { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: .75rem; align-items: start; padding: .85rem; border: 1px solid rgba(66,119,171,.48); border-radius: .75rem; background: rgba(7,20,37,.62); cursor: pointer; }
.c365-device-input-options input { margin-top: .25rem; }

.c365-app--authenticated .modal.c365-modal :is(.form-text, .text-muted, .text-light-emphasis) {
    color: var(--c365-board-text-muted) !important;
}

.c365-app--authenticated .modal.c365-modal .c365-sql-picker { border: 0; background: transparent; }

.c365-manage-app-modal .modal-dialog { width: min(42rem, calc(100vw - 2rem)); }
.c365-manage-app-modal__body { display: grid; gap: 1rem; }
.c365-manage-app-modal__body section {
    padding: 1rem;
    border: 1px solid var(--c365-board-border);
    border-radius: 12px;
    background: rgba(5, 18, 35, .55);
}
.c365-manage-app-modal__body section h5 { margin: 0 0 .25rem; color: #f5f2ff; }
.c365-manage-app-modal__body section p { margin: 0 0 .85rem; color: #8fa2c0; font-size: .82rem; }
.c365-manage-app-modal__body form { display: flex; align-items: end; gap: .75rem; }
.c365-manage-app-modal__body label { display: grid; flex: 1 1 auto; gap: .35rem; }
.c365-manage-app-modal__body input {
    width: 100%;
    border: 1px solid var(--c365-board-border);
    border-radius: 9px;
    padding: .7rem .8rem;
    color: var(--c365-board-text);
    background: #071326;
}
.c365-manage-app-modal__danger { border-color: rgba(255, 102, 138, .32) !important; }

.c365-app--authenticated .modal.c365-modal :is(.c365-sql-picker__item, .c365-sql-ai-card) {
    border-color: var(--c365-board-border);
    border-radius: var(--c365-board-control-radius);
    background: rgba(10, 9, 36, .72);
}

.c365-app--authenticated .modal.c365-modal :is(.c365-sql-ai-diff, .c365-sql-ai-proposed) {
    border-color: var(--c365-board-border);
    border-radius: var(--c365-board-control-radius);
    color: var(--c365-board-text);
    background: rgba(3, 5, 22, .78);
}

.c365-app--authenticated .modal.c365-modal--wide .modal-dialog { width: min(76rem, calc(100vw - 2rem)); }

.c365-app--authenticated .modal.c365-modal--workspace .modal-dialog {
    width: min(100rem, calc(100vw - 1.5rem));
}

.c365-app--authenticated .modal.c365-modal--workspace .modal-content {
    height: calc(100dvh - 1.5rem - env(safe-area-inset-top, 0px) - env(safe-area-inset-bottom, 0px));
}

.c365-app--authenticated .modal.c365-modal--fullscreen .modal-dialog { width: 100vw; margin: 0; }

.c365-app--authenticated .modal.c365-modal--fullscreen .modal-content {
    height: 100dvh;
    max-height: 100dvh;
    border-radius: 0;
}

.c365-app--authenticated .modal-backdrop.show {
    opacity: .76;
    background: #01020d;
    backdrop-filter: blur(5px);
}

@media (max-width: 767.98px) {
    .c365-app--authenticated .modal.c365-modal .modal-dialog,
    .c365-app--authenticated .modal.c365-modal--wide .modal-dialog,
    .c365-app--authenticated .modal.c365-modal--workspace .modal-dialog {
        width: 100vw;
        margin: 0;
    }

    .c365-app--authenticated .modal.c365-modal .modal-content,
    .c365-app--authenticated .modal.c365-modal--workspace .modal-content {
        width: 100vw;
        height: 100dvh;
        max-height: 100dvh;
        border-width: 0;
        border-radius: 0;
    }

    .c365-app--authenticated .modal.c365-modal .modal-dialog > form {
        height: 100dvh;
        max-height: 100dvh;
    }

    .c365-app--authenticated .modal.c365-modal :is(.modal-header, .modal-footer) { padding: .75rem; }
    .c365-app--authenticated .modal.c365-modal .modal-body { padding: .75rem; }
}

/* Board v2 management surfaces ------------------------------------------------
   Catalogue and operational pages share the Board shell without inheriting
   Tile-specific composition. Keep these screens quieter and denser than Boards. */
.c365-board-v2-management-page {
    --c365-border-subtle: var(--c365-board-border);
    --c365-border: var(--c365-board-border-strong);
    --c365-shadow-surface: var(--c365-board-shadow);
    --c365-control-background: rgba(6, 6, 24, .78);
    --c365-control-border: var(--c365-board-border);
    --c365-control-border-focus: rgba(var(--c365-board-accent-primary-rgb), .58);
    --c365-control-text: var(--c365-board-text);
    --c365-control-placeholder: var(--c365-color-text-muted, #8fa8c8);
}

.c365-board-v2-management-page .app-page-shell {
    width: 100%;
    max-width: none;
    margin: 0;
}

.c365-board-v2-management-page :is(.standard-page-header, .page-hero.body-content-header) {
    min-height: 0;
    margin: 0 0 1.2rem;
    padding: 0;
    border: 0;
    background: transparent;
    box-shadow: none;
}

.c365-board-v2-management-page :is(.capture365-page-title, .page-hero-content h1) {
    margin: 0;
    color: var(--c365-board-text);
    font-family: "Sora", "Manrope", sans-serif;
    font-size: var(--c365-title-size) !important;
    font-weight: 700;
    line-height: 1;
    letter-spacing: .025em;
    text-transform: none;
}

.c365-board-v2-management-page .c365-screen-header__copy {
    display: grid;
    align-content: start;
}

.c365-board-v2-management-page .c365-screen-header__group {
    margin: .42rem 0 0;
    color: var(--c365-board-accent-primary);
    font-size: .72rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.c365-board-v2-management-page :is(.c365-screen-header__description, .page-hero-subtitle) {
    margin: .42rem 0 0;
    color: var(--c365-board-text-muted);
    font-size: .72rem;
    line-height: 1.5;
}

.c365-board-v2-management-page :is(.app-surface, .c365-management-grid, .c365-form-surface, .modal-content) {
    border: 1px solid var(--c365-board-border);
    border-radius: var(--c365-board-radius);
    background:
        radial-gradient(circle at 78% 0%, rgba(var(--c365-board-accent-secondary-rgb), .055), transparent 38%),
        linear-gradient(155deg, rgba(15, 13, 47, .94), rgba(7, 7, 28, .98) 72%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .018), 0 15px 36px rgba(0, 0, 0, .2);
}

.c365-board-v2-management-page .app-surface--soft {
    background: linear-gradient(150deg, rgba(13, 11, 43, .88), rgba(6, 6, 25, .94));
}

.c365-board-v2-management-page .app-surface-title,
.c365-board-v2-management-page .app-table-shell__title,
.c365-board-v2-management-page .app-form-section legend {
    color: var(--c365-board-text);
}

.c365-board-v2-management-page :is(.app-surface-copy, .text-muted, .form-text, .c365-api-endpoint__label span, .c365-api-guidance p) {
    color: var(--c365-board-text-muted) !important;
}

.c365-board-v2-management-page .app-stat-grid {
    gap: var(--c365-board-gap);
    margin-bottom: var(--c365-board-space-4);
}

.c365-board-v2-management-page .app-stat-card {
    min-height: 6.4rem;
    padding: .85rem 1rem;
    border: 1px solid var(--c365-board-border);
    border-radius: var(--c365-board-radius);
    background:
        radial-gradient(circle at 82% 8%, rgba(var(--c365-board-accent-secondary-rgb), .08), transparent 42%),
        linear-gradient(155deg, rgba(17, 15, 50, .94), rgba(7, 7, 28, .98));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .018), 0 14px 28px rgba(0, 0, 0, .17);
}

.c365-board-v2-management-page .app-stat-card__label {
    color: #8d88a3;
    font-size: .66rem;
    font-weight: 750;
    letter-spacing: .1em;
}

.c365-board-v2-management-page .app-stat-card__value {
    color: #ddd0ff;
    font-size: 1.55rem;
    font-weight: 650;
}

.c365-board-v2-management-page .app-stat-card__hint { color: var(--c365-board-text-muted); }

.c365-board-v2-management-page .c365-management-toolbar {
    --c365-management-control-height: 44px;
    gap: var(--c365-board-space-2);
    margin-bottom: var(--c365-board-space-4);
}

.c365-board-v2-management-page .c365-tile-catalogue-page #allGrid {
    gap: var(--c365-board-gap);
    margin-top: 0;
}

.c365-board-v2-management-page .tile-catalogue-status {
    color: var(--c365-board-text-muted);
}

.c365-board-v2-management-page .tile-catalogue-status__spinner {
    border-color: rgba(var(--c365-board-accent-primary-rgb), .22);
    border-top-color: var(--c365-board-accent-primary);
}

.c365-board-v2-management-page .c365-management-toolbar input[type="search"],
.c365-board-v2-management-page .c365-management-toolbar select {
    border-color: var(--c365-board-border);
    border-radius: var(--c365-board-control-radius);
    color: var(--c365-board-text);
    background: rgba(6, 6, 24, .78);
}

.c365-board-v2-management-page .c365-management-filter-surface {
    margin-bottom: var(--c365-board-space-4);
    padding: .9rem;
    border: 1px solid var(--c365-board-border) !important;
    border-radius: var(--c365-board-radius);
    background: rgba(8, 7, 31, .66) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .015) !important;
}

.c365-board-v2-management-page .logs-filter-fields { gap: var(--c365-board-space-2); }
.c365-board-v2-management-page .logs-filter-fields .form-label {
    margin-bottom: .32rem;
    color: #aaa5bb;
    font-size: .7rem;
    font-weight: 700;
    letter-spacing: .035em;
}

.c365-board-v2-management-page :is(.btn-outline-info, .btn-outline-secondary) {
    border-color: var(--c365-board-border);
    border-radius: var(--c365-board-control-radius);
    color: #d7d2e1;
    background: rgba(7, 7, 27, .62);
}

.c365-board-v2-management-page :is(.btn-outline-info, .btn-outline-secondary):hover {
    border-color: var(--c365-board-border-strong);
    color: #fff;
    background: rgba(77, 42, 161, .42);
}

.c365-board-v2-management-page .c365-management-grid {
    overflow: visible;
    padding: 0;
}

.c365-board-v2-management-page .c365-datasets-page .c365-dataset-grid {
    border-color: rgba(66, 119, 171, .48);
    background: linear-gradient(145deg, rgba(21, 32, 65, .96), rgba(9, 22, 43, .96));
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .018), 0 15px 36px rgba(0, 0, 0, .2);
}

.c365-board-v2-management-page .c365-management-grid__viewport {
    border-radius: inherit;
}

.c365-board-v2-management-page .c365-management-table {
    --bs-table-bg: transparent;
    --bs-table-color: var(--c365-board-text);
    --bs-table-border-color: rgba(124, 103, 211, .18);
    margin: 0;
}

.c365-board-v2-management-page .c365-management-table thead {
    background: rgba(4, 4, 19, .58);
}

.c365-board-v2-management-page .c365-management-table th,
.c365-board-v2-management-page .c365-management-table td {
    border-color: rgba(124, 103, 211, .18);
    color: #e7e3ef;
}

.c365-board-v2-management-page .c365-management-table th {
    color: #8f8aa1;
    letter-spacing: .075em;
}

.c365-board-v2-management-page .c365-management-table tbody tr:hover {
    background: rgba(var(--c365-board-accent-secondary-rgb), .055);
}

.c365-board-v2-management-page .c365-cell-primary { color: #f3f0fa; }
.c365-board-v2-management-page .c365-cell-secondary { color: #8f8aa1; }
.c365-board-v2-management-page .c365-technical-value { color: #b9b1d0; }

.c365-board-v2-management-page .c365-system-logs-table th:first-child { width: 12rem; }
.c365-board-v2-management-page .c365-system-logs-table th:nth-child(2) { width: 9rem; }
.c365-board-v2-management-page .c365-system-logs-table th:last-child { width: 5rem; }

.c365-board-v2-management-page .c365-overflow__menu {
    border-color: var(--c365-board-border);
    background: #090822;
    box-shadow: var(--c365-board-shadow), 0 0 22px rgba(var(--c365-board-accent-secondary-rgb), .08);
}

.c365-board-v2-management-page .c365-overflow__separator { background: rgba(133, 111, 232, .22); }

.c365-board-v2-management-page .c365-management-notice {
    margin-bottom: var(--c365-board-space-4);
    border-color: rgba(var(--c365-board-accent-primary-rgb), .22);
    border-radius: var(--c365-board-control-radius);
    color: #c9c4d7;
    background: rgba(var(--c365-board-accent-primary-rgb), .045);
}

.c365-board-v2-management-page .c365-api-endpoint {
    padding: .72rem 0;
    border-top: 1px solid rgba(124, 103, 211, .16);
}

.c365-board-v2-management-page .c365-api-endpoint:first-child { border-top: 0; }
.c365-board-v2-management-page .c365-api-endpoint__label strong { color: #efebf6; }
.c365-board-v2-management-page .c365-api-code,
.c365-board-v2-management-page .app-inline-code {
    border-color: var(--c365-board-border);
    color: #d8d2e4;
    background: rgba(3, 4, 19, .82);
}

.c365-board-v2-management-page .app-detail-item {
    border-color: rgba(124, 103, 211, .2);
    border-radius: var(--c365-board-control-radius);
    background: rgba(5, 5, 23, .5);
}

.c365-board-v2-management-page .app-detail-item dt { color: #89849b; }
.c365-board-v2-management-page .app-detail-item dd { color: #efecf5; }

.c365-board-v2-management-page .c365-paging {
    border-top-color: rgba(124, 103, 211, .18);
    color: var(--c365-board-text-muted);
}

.c365-board-v2-management-page .c365-paging__btn {
    border-color: var(--c365-board-border);
    color: #c8c2d4;
    background: rgba(6, 6, 24, .72);
}

.c365-board-v2-management-page .c365-paging__btn[aria-current="page"] {
    border-color: rgba(145, 94, 255, .5);
    color: #fff;
    background: linear-gradient(135deg, #4b229c, #39208c);
}

.c365-board-v2-management-page .app-danger-surface {
    border-color: rgba(255, 102, 138, .36);
    background: linear-gradient(150deg, rgba(59, 15, 35, .88), rgba(21, 5, 18, .96));
}

@media (max-width: 900px) {
    .c365-board-v2-management-page :is(.standard-page-header, .page-hero.body-content-header) { padding-top: .1rem; }
}

@media (max-width: 767.98px) {
    .c365-board-v2-management-page .c365-screen-header { align-items: stretch; flex-direction: column; }
    .c365-board-v2-management-page .standard-page-header__actions { align-self: flex-start; }
    .c365-board-v2-management-page .logs-filter-actions > * { flex: 1 1 0; }
}
.c365-data-inputs { display:flex; flex-wrap:wrap; gap:.35rem .6rem; }
.c365-data-input { display:inline-flex; align-items:center; gap:.3rem; white-space:nowrap; }
.c365-data-input svg { width:.9rem; height:.9rem; flex:none; fill:currentColor; color:var(--c365-cyan, #48d0e2); }
.c365-data-catalogue-table { min-width: 720px; }
.c365-data-catalogue-table th:nth-child(1) { width: 28%; }
.c365-data-catalogue-table th:nth-child(2) { width: 16%; }
.c365-data-catalogue-table th:nth-child(3) { width: 32%; }
.c365-data-catalogue-table th:nth-child(4) { width: 19%; }
.c365-data-catalogue-table th:nth-child(5) { width: 5%; }
.c365-data-catalogue-table td { height: auto; min-height: 58px; max-height: none; }
.c365-catalogue-cell-stack { display:flex; min-width:0; flex-direction:column; align-items:flex-start; gap:.28rem; }
.c365-catalogue-cell-primary { display:block; max-width:100%; overflow:hidden; color:#f3f0fa; font-weight:650; text-overflow:ellipsis; }
.c365-catalogue-cell-support { display:block; max-width:100%; overflow:hidden; color:#8f8aa1; font-size:.72rem; line-height:1.3; text-overflow:ellipsis; }
.c365-data-catalogue__inputs { white-space:normal !important; }
.c365-data-catalogue__records { text-align:left; }
.c365-data-catalogue__actions { width:3.5rem; min-width:3.5rem; padding-right:0 !important; text-align:right; overflow:visible !important; }
.c365-data-catalogue__actions .c365-overflow { margin-left:auto; }
.c365-device-catalogue-controls { padding:.75rem !important; }
.c365-device-catalogue-controls .c365-management-toolbar { margin-bottom:.65rem; }
.c365-device-catalogue-controls .c365-device-health-filters { margin:0; }
.c365-device-catalogue-table { min-width:1080px; }
.c365-device-catalogue-table th:nth-child(1) { width:18%; }
.c365-device-catalogue-table th:nth-child(2) { width:14%; }
.c365-device-catalogue-table th:nth-child(3) { width:27%; }
.c365-device-catalogue-table th:nth-child(4),
.c365-device-catalogue-table th:nth-child(5) { width:8%; }
.c365-device-catalogue-table th:nth-child(6),
.c365-device-catalogue-table th:nth-child(7) { width:11%; }
.c365-device-catalogue-table th:nth-child(8) { width:3%; }
.c365-device-catalogue-table td { height:auto; min-height:64px; max-height:none; }
.c365-device-catalogue__health { white-space:normal !important; }
.c365-device-catalogue__health .c365-catalogue-cell-support { max-width:100%; white-space:normal; }
.c365-device-catalogue__actions { width:3.5rem; min-width:3.5rem; padding-right:.35rem !important; overflow:visible !important; text-align:right; }
.c365-device-catalogue__actions .c365-overflow { margin-left:auto; }
.c365-board-v2-management-page .c365-data-browser__filter-field label { color:#aaa5bb; }
.c365-board-v2-management-page .c365-data-browser__filter-field :is(.form-control, .form-select) {
    border:1px solid var(--c365-board-border);
    border-radius:var(--c365-board-control-radius);
    color:var(--c365-board-text);
    background-color:rgba(6, 6, 24, .78);
    color-scheme:dark;
}
.c365-board-v2-management-page .c365-data-browser__filter-field :is(.form-control, .form-select):focus {
    border-color:var(--c365-board-accent-primary);
    box-shadow:0 0 0 2px rgba(var(--c365-board-accent-primary-rgb), .12);
}
.c365-board-v2-management-page .c365-data-browser__table thead th { background:#07061d; }
.c365-board-v2-management-page .c365-data-browser__viewport { scrollbar-color:#62549a rgba(5, 5, 22, .7); }
.c365-board-v2-management-page .c365-data-browser .c365-management-pagination :is(select, .c365-management-pagination__buttons a) {
    border-color:var(--c365-board-border);
    color:#d7d2e1;
    background:rgba(7, 7, 27, .72);
}

/* A hidden Headline Metric must release its complete layout region. */
[data-c365-line-headline][hidden] {
    display: none !important;
}

/* Logic365 AI overlays the Board so opening it never resizes or reflows Tiles. */
@media (min-width: 1280px) {
    .c365-board-v2-page .c365-app-layout,
    .c365-board-v2-page .c365-app-layout.c365-ai-docked-collapsed {
        grid-template-columns: var(--c365-board-sidebar-width) minmax(0, 1fr);
    }

    .c365-board-v2-page .c365-app-layout .c365-ai-panel,
    .c365-board-v2-page .c365-app-layout.c365-ai-docked-collapsed .c365-ai-panel {
        position: fixed;
        z-index: calc(var(--c365-layer-header, 1100) + 1);
        inset: 0 0 auto auto;
        display: flex;
        width: min(390px, 100vw);
        height: 100dvh;
        padding: 0;
        border-left: 1px solid var(--c365-board-rail-border, rgba(112, 85, 207, .24));
        background: var(--c365-board-rail-background, #030516);
        box-shadow: -18px 0 48px rgba(0, 0, 0, .38);
        visibility: hidden;
        pointer-events: none;
        transform: translateX(102%);
    }

    .c365-board-v2-page .c365-app-layout .c365-ai-panel.is-open {
        visibility: visible;
        pointer-events: auto;
        transform: translateX(0);
    }
}
