:root {
    --ntdi-navy: #293782;
    --ntdi-navy-dark: #182253;
    --ntdi-navy-soft: #eef1fa;
    --ntdi-green: #3d9230;
    --ntdi-lime: #80c027;
    --ntdi-canvas: #f6f7fb;
    --ntdi-surface: #ffffff;
    --ntdi-text: #172033;
    --ntdi-muted: #667085;
    --ntdi-border: #e3e7ef;
    --ntdi-shadow: 0 1px 2px rgb(16 24 40 / 0.04), 0 8px 24px rgb(41 55 130 / 0.06);
}

html {
    color-scheme: light;
}

.fi-body {
    background: var(--ntdi-canvas);
    color: var(--ntdi-text);
}

.dark .fi-body {
    background: #0d1329;
}

.fi-main {
    padding-bottom: 3rem;
}

.fi-main-ctn {
    background: transparent;
}

.fi-header-heading {
    color: var(--ntdi-text);
    letter-spacing: -0.025em;
}

.dark .fi-header-heading {
    color: #f8fafc;
}

.fi-header-subheading {
    color: var(--ntdi-muted);
}

.fi-topbar > nav {
    border: 0;
    background: var(--ntdi-navy-dark);
    box-shadow: 0 10px 28px rgb(24 34 83 / 0.18);
}

.fi-topbar .fi-icon-btn {
    color: rgb(255 255 255 / 0.86);
}

.fi-topbar .fi-icon-btn:hover,
.fi-topbar .fi-icon-btn:focus-visible {
    background-color: rgb(255 255 255 / 0.12);
    color: #ffffff;
}

.fi-topbar .fi-user-avatar {
    box-shadow: 0 0 0 2px rgb(255 255 255 / 0.72);
}

.fi-topbar .fi-global-search-field {
    width: min(24rem, 34vw);
}

.fi-topbar .fi-global-search-field .fi-input-wrp {
    border-color: rgb(255 255 255 / 0.14);
    background: rgb(255 255 255 / 0.11);
    box-shadow: inset 0 0 0 1px rgb(255 255 255 / 0.08);
}

.fi-topbar .fi-global-search-field .fi-input,
.fi-topbar .fi-global-search-field .fi-input::placeholder,
.fi-topbar .fi-global-search-field .fi-input-wrp-icon,
.fi-topbar .fi-global-search-field .fi-input-wrp-suffix {
    color: rgb(255 255 255 / 0.86);
}

.fi-topbar .fi-global-search-field .fi-input:focus {
    color: #ffffff;
}

.fi-sidebar {
    border-inline-end: 1px solid var(--ntdi-border);
    background: var(--ntdi-surface);
}

.dark .fi-sidebar {
    border-inline-end-color: rgb(255 255 255 / 0.08);
    background: #101735;
}

.fi-sidebar-header {
    border: 0;
    background: #ffffff;
    box-shadow: 0 1px 0 var(--ntdi-border);
}

.dark .fi-sidebar-header {
    background: #101735;
    box-shadow: 0 1px 0 rgb(255 255 255 / 0.08);
}

.fi-sidebar-header .fi-logo {
    width: auto;
    object-fit: contain;
}

.dark .fi-sidebar-header .fi-logo {
    filter: brightness(0) invert(1);
}

.fi-sidebar-nav {
    gap: 1.25rem;
    padding: 1.25rem 1rem;
}

.fi-sidebar-nav-groups {
    gap: 1.25rem;
}

.fi-sidebar-group-button {
    padding-block: 0.35rem;
}

.fi-sidebar-group-label {
    color: #8790a8;
    font-size: 0.69rem;
    font-weight: 700;
    letter-spacing: 0.095em;
    text-transform: uppercase;
}

.fi-sidebar-item-button {
    min-height: 2.55rem;
    border-radius: 0.7rem;
    padding-inline: 0.75rem;
}

.fi-sidebar-item:not(.fi-active) .fi-sidebar-item-button:hover {
    background: #f2f4f9;
}

.dark .fi-sidebar-item:not(.fi-active) .fi-sidebar-item-button:hover {
    background: rgb(255 255 255 / 0.06);
}

.fi-sidebar-item.fi-active > .fi-sidebar-item-button {
    background: rgb(41 55 130 / 0.1);
    box-shadow: inset 3px 0 0 var(--ntdi-navy);
}

.dark .fi-sidebar-item.fi-active > .fi-sidebar-item-button {
    background: rgb(255 255 255 / 0.09);
    box-shadow: inset 3px 0 0 var(--ntdi-lime);
}

.fi-sidebar-item.fi-active .fi-sidebar-item-label,
.fi-sidebar-item.fi-active .fi-sidebar-item-icon {
    color: var(--ntdi-navy);
}

.dark .fi-sidebar-item.fi-active .fi-sidebar-item-label,
.dark .fi-sidebar-item.fi-active .fi-sidebar-item-icon {
    color: #b9e77b;
}

.fi-sidebar-item-label {
    color: #45506a;
    font-weight: 600;
}

.dark .fi-sidebar-item-label {
    color: #dbe2f2;
}

.ntdi-operational-context {
    display: inline-flex;
    min-width: 12.5rem;
    align-items: center;
    gap: 0.65rem;
    border: 1px solid rgb(255 255 255 / 0.14);
    border-radius: 0.75rem;
    padding: 0.42rem 0.72rem;
    background: rgb(255 255 255 / 0.09);
    color: #ffffff;
    transition: background-color 150ms ease, border-color 150ms ease;
}

.ntdi-operational-context:hover,
.ntdi-operational-context:focus-visible {
    border-color: rgb(255 255 255 / 0.3);
    background: rgb(255 255 255 / 0.15);
    outline: none;
}

.ntdi-operational-context__mark {
    width: 0.58rem;
    height: 0.58rem;
    flex: 0 0 auto;
    border-radius: 9999px;
    background: var(--ntdi-lime);
    box-shadow: 0 0 0 4px rgb(128 192 39 / 0.18);
}

.ntdi-operational-context__copy {
    display: grid;
    min-width: 0;
    line-height: 1.1;
}

.ntdi-operational-context__tenant {
    overflow: hidden;
    font-size: 0.76rem;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ntdi-operational-context__tenant span {
    margin-inline-start: 0.3rem;
    color: rgb(255 255 255 / 0.58);
    font-size: 0.62rem;
    letter-spacing: 0.06em;
}

.ntdi-operational-context__desk {
    overflow: hidden;
    margin-top: 0.22rem;
    color: rgb(255 255 255 / 0.68);
    font-size: 0.66rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ntdi-sidebar-footer {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    margin: 0 1rem 1rem;
    border: 1px solid var(--ntdi-border);
    border-radius: 0.8rem;
    padding: 0.7rem 0.8rem;
    background: #f7f8fc;
    color: var(--ntdi-text);
}

.dark .ntdi-sidebar-footer {
    border-color: rgb(255 255 255 / 0.09);
    background: rgb(255 255 255 / 0.05);
    color: #f8fafc;
}

.ntdi-sidebar-footer__pulse {
    width: 0.52rem;
    height: 0.52rem;
    flex: 0 0 auto;
    border-radius: 9999px;
    background: var(--ntdi-green);
    box-shadow: 0 0 0 4px rgb(61 146 48 / 0.13);
}

.ntdi-sidebar-footer span:last-child {
    display: grid;
    min-width: 0;
}

.ntdi-sidebar-footer strong {
    font-size: 0.69rem;
    letter-spacing: 0.055em;
}

.ntdi-sidebar-footer small {
    margin-top: 0.12rem;
    color: var(--ntdi-muted);
    font-size: 0.64rem;
}

.fi-section,
.fi-ta-ctn,
.fi-wi-stats-overview-stat {
    border-radius: 0.9rem;
    box-shadow: var(--ntdi-shadow);
}

.fi-section,
.fi-ta-ctn {
    border: 1px solid rgb(227 231 239 / 0.86);
}

.dark .fi-section,
.dark .fi-ta-ctn {
    border-color: rgb(255 255 255 / 0.08);
}

.fi-section-header {
    border-bottom: 1px solid #eef0f5;
}

.dark .fi-section-header {
    border-bottom-color: rgb(255 255 255 / 0.07);
}

.fi-btn {
    min-height: 2.5rem;
    border-radius: 0.68rem;
    letter-spacing: -0.005em;
}

.fi-btn.fi-color-primary:not(.fi-btn-outlined) {
    background: var(--ntdi-navy);
    box-shadow: 0 5px 14px rgb(41 55 130 / 0.2);
}

.fi-btn.fi-color-primary:not(.fi-btn-outlined):hover {
    background: #202d70;
}

.fi-btn.fi-color-success:not(.fi-btn-outlined) {
    background: var(--ntdi-green);
}

.fi-input-wrp,
.fi-select-input,
.fi-fo-textarea {
    border-radius: 0.68rem;
}

.fi-input-wrp:focus-within {
    box-shadow: 0 0 0 3px rgb(41 55 130 / 0.1);
}

.fi-ta-header-ctn {
    background: #ffffff;
}

.dark .fi-ta-header-ctn {
    background: #111a36;
}

.fi-ta-header-cell {
    color: #5b647b;
    font-size: 0.72rem;
    letter-spacing: 0.035em;
    text-transform: uppercase;
}

.fi-ta-row {
    transition: background-color 120ms ease;
}

.fi-ta-row:hover {
    background: rgb(238 241 250 / 0.52);
}

.dark .fi-ta-row:hover {
    background: rgb(255 255 255 / 0.035);
}

.fi-badge {
    border-radius: 0.45rem;
    font-weight: 650;
}

.fi-tabs {
    gap: 0.25rem;
    border: 1px solid var(--ntdi-border);
    border-radius: 0.85rem;
    padding: 0.28rem;
    background: rgb(255 255 255 / 0.72);
    box-shadow: 0 1px 2px rgb(16 24 40 / 0.03);
}

.dark .fi-tabs {
    border-color: rgb(255 255 255 / 0.08);
    background: rgb(255 255 255 / 0.035);
}

.fi-tabs-item {
    min-height: 2.35rem;
    border-radius: 0.62rem;
    padding-inline: 0.8rem;
}

.fi-tabs-item.fi-active {
    background: var(--ntdi-navy-soft);
    box-shadow: inset 0 -2px 0 var(--ntdi-navy);
}

.dark .fi-tabs-item.fi-active {
    background: rgb(128 192 39 / 0.1);
    box-shadow: inset 0 -2px 0 var(--ntdi-lime);
}

.ntdi-ticket-stat {
    position: relative;
    overflow: hidden;
    border: 1px solid var(--ntdi-border);
    transition: border-color 150ms ease, box-shadow 150ms ease, transform 150ms ease;
}

.ntdi-ticket-stat::before {
    position: absolute;
    inset: 0 auto 0 0;
    width: 0.24rem;
    background: var(--ntdi-navy);
    content: "";
}

.ntdi-ticket-stat--unassigned::before,
.ntdi-ticket-stat--validation::before {
    background: #d99b15;
}

.ntdi-ticket-stat--overdue::before {
    background: #dc2626;
}

.ntdi-ticket-stat:hover {
    border-color: rgb(41 55 130 / 0.24);
    box-shadow: 0 12px 28px rgb(41 55 130 / 0.1);
    transform: translateY(-1px);
}

.dark .ntdi-ticket-stat {
    border-color: rgb(255 255 255 / 0.08);
}

.fi-ta-filters-above-content-ctn {
    border-bottom: 1px solid var(--ntdi-border);
    background: #fbfcff;
}

.dark .fi-ta-filters-above-content-ctn {
    border-bottom-color: rgb(255 255 255 / 0.07);
    background: rgb(255 255 255 / 0.025);
}

.fi-ta-text-item-description {
    margin-top: 0.18rem;
    color: var(--ntdi-muted);
    font-size: 0.72rem;
}

.ntdi-ticket-workspace {
    overflow: hidden;
    border: 1px solid rgb(41 55 130 / 0.14);
    border-radius: 1rem;
    background: #ffffff;
    box-shadow: var(--ntdi-shadow);
}

.dark .ntdi-ticket-workspace {
    border-color: rgb(255 255 255 / 0.09);
    background: #111a36;
}

.ntdi-ticket-workspace__heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 1.5rem;
    padding: 1.35rem 1.5rem 1rem;
}

.ntdi-ticket-workspace__identity {
    min-width: 0;
}

.ntdi-ticket-workspace__eyebrow {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    color: var(--ntdi-muted);
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.055em;
    text-transform: uppercase;
}

.ntdi-ticket-workspace__eyebrow span:first-child {
    color: var(--ntdi-navy);
}

.dark .ntdi-ticket-workspace__eyebrow span:first-child {
    color: #b9e77b;
}

.ntdi-ticket-workspace__identity h2 {
    margin-top: 0.45rem;
    color: var(--ntdi-text);
    font-size: clamp(1.15rem, 2vw, 1.55rem);
    font-weight: 750;
    letter-spacing: -0.025em;
    line-height: 1.25;
}

.dark .ntdi-ticket-workspace__identity h2 {
    color: #f8fafc;
}

.ntdi-ticket-workspace__status,
.ntdi-ticket-workspace__closure {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 0.38rem;
    border-radius: 9999px;
    padding: 0.38rem 0.7rem;
    font-size: 0.72rem;
    font-weight: 700;
}

.ntdi-ticket-workspace__status--primary,
.ntdi-ticket-workspace__status--info {
    background: rgb(41 55 130 / 0.1);
    color: var(--ntdi-navy);
}

.ntdi-ticket-workspace__status--warning,
.ntdi-ticket-workspace__closure--warning {
    background: rgb(217 155 21 / 0.13);
    color: #966707;
}

.ntdi-ticket-workspace__status--success,
.ntdi-ticket-workspace__closure--success {
    background: rgb(61 146 48 / 0.12);
    color: #2f7825;
}

.ntdi-ticket-workspace__status--danger {
    background: rgb(220 38 38 / 0.1);
    color: #b91c1c;
}

.ntdi-ticket-workspace__status--gray {
    background: #eef0f4;
    color: #596276;
}

.dark .ntdi-ticket-workspace__status,
.dark .ntdi-ticket-workspace__closure {
    filter: brightness(1.35);
}

.ntdi-ticket-workspace__next-action {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    border-block: 1px solid var(--ntdi-border);
    padding: 0.85rem 1.5rem;
    background: var(--ntdi-navy-soft);
}

.dark .ntdi-ticket-workspace__next-action {
    border-color: rgb(255 255 255 / 0.08);
    background: rgb(255 255 255 / 0.035);
}

.ntdi-ticket-workspace__next-action-icon {
    display: grid;
    width: 2rem;
    height: 2rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 0.58rem;
    background: var(--ntdi-navy);
    color: #ffffff;
}

.ntdi-ticket-workspace__next-action > span:nth-child(2) {
    display: grid;
    min-width: 0;
}

.ntdi-ticket-workspace__next-action small,
.ntdi-ticket-workspace__facts small {
    color: var(--ntdi-muted);
    font-size: 0.65rem;
    font-weight: 700;
    letter-spacing: 0.045em;
    text-transform: uppercase;
}

.ntdi-ticket-workspace__next-action strong {
    margin-top: 0.12rem;
    color: var(--ntdi-text);
    font-size: 0.84rem;
}

.dark .ntdi-ticket-workspace__next-action strong {
    color: #f8fafc;
}

.ntdi-ticket-workspace__closure {
    margin-inline-start: auto;
}

.ntdi-ticket-workspace__flow {
    display: grid;
    grid-template-columns: repeat(7, minmax(5.5rem, 1fr));
    overflow-x: auto;
    padding: 1.25rem 1.5rem 1.1rem;
}

.ntdi-ticket-workspace__step {
    position: relative;
    display: grid;
    justify-items: center;
    gap: 0.42rem;
    min-width: 5.5rem;
    color: #8a93a7;
    font-size: 0.66rem;
    font-weight: 650;
    text-align: center;
}

.ntdi-ticket-workspace__step:not(:last-child)::after {
    position: absolute;
    z-index: 0;
    top: 0.48rem;
    left: calc(50% + 0.65rem);
    width: calc(100% - 1.3rem);
    height: 2px;
    background: #e1e5ed;
    content: "";
}

.ntdi-ticket-workspace__step--complete:not(:last-child)::after {
    background: rgb(61 146 48 / 0.5);
}

.dark .ntdi-ticket-workspace__step:not(:last-child)::after {
    background: rgb(255 255 255 / 0.1);
}

.dark .ntdi-ticket-workspace__step--complete:not(:last-child)::after {
    background: rgb(128 192 39 / 0.5);
}

.ntdi-ticket-workspace__step-marker {
    position: relative;
    z-index: 1;
    display: grid;
    width: 1.05rem;
    height: 1.05rem;
    place-items: center;
    border: 2px solid #d8dde7;
    border-radius: 9999px;
    background: #ffffff;
}

.dark .ntdi-ticket-workspace__step-marker {
    border-color: #48516a;
    background: #111a36;
}

.ntdi-ticket-workspace__step--complete,
.ntdi-ticket-workspace__step--current {
    color: var(--ntdi-text);
}

.dark .ntdi-ticket-workspace__step--complete,
.dark .ntdi-ticket-workspace__step--current {
    color: #e6ebf5;
}

.ntdi-ticket-workspace__step--complete .ntdi-ticket-workspace__step-marker {
    border-color: var(--ntdi-green);
    background: var(--ntdi-green);
    color: #ffffff;
}

.ntdi-ticket-workspace__step--current .ntdi-ticket-workspace__step-marker {
    border-color: var(--ntdi-navy);
    background: #ffffff;
    box-shadow: 0 0 0 4px rgb(41 55 130 / 0.12);
}

.dark .ntdi-ticket-workspace__step--current .ntdi-ticket-workspace__step-marker {
    border-color: var(--ntdi-lime);
    background: #111a36;
    box-shadow: 0 0 0 4px rgb(128 192 39 / 0.12);
}

.ntdi-ticket-workspace__facts {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    border-top: 1px solid var(--ntdi-border);
    background: #fbfcfe;
}

.dark .ntdi-ticket-workspace__facts {
    border-color: rgb(255 255 255 / 0.08);
    background: rgb(255 255 255 / 0.025);
}

.ntdi-ticket-workspace__facts > div {
    display: grid;
    min-width: 0;
    padding: 1rem 1.25rem;
}

.ntdi-ticket-workspace__facts > div + div {
    border-inline-start: 1px solid var(--ntdi-border);
}

.dark .ntdi-ticket-workspace__facts > div + div {
    border-color: rgb(255 255 255 / 0.08);
}

.ntdi-ticket-workspace__facts strong {
    overflow: hidden;
    margin-top: 0.3rem;
    color: var(--ntdi-text);
    font-size: 0.82rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.dark .ntdi-ticket-workspace__facts strong {
    color: #f8fafc;
}

.ntdi-ticket-workspace__facts span {
    overflow: hidden;
    margin-top: 0.2rem;
    color: var(--ntdi-muted);
    font-size: 0.7rem;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ntdi-ticket-workspace__sla--danger {
    color: #b91c1c !important;
}

.ntdi-ticket-workspace__sla--success {
    color: #2f7825 !important;
}

.ntdi-ticket-workspace__sla--info,
.ntdi-ticket-workspace__sla--primary {
    color: var(--ntdi-navy) !important;
}

.ntdi-ticket-workspace__sla--warning {
    color: #966707 !important;
}

.ntdi-project-hero,
.ntdi-project-panel,
.ntdi-project-stat,
.ntdi-project-board__summary,
.ntdi-kanban-column,
.ntdi-kanban-card {
    border: 1px solid var(--ntdi-border);
    box-shadow: var(--ntdi-shadow);
}

.ntdi-project-workspace {
    container-name: project-workspace;
    container-type: inline-size;
    min-width: 0;
}

.ntdi-project-hero__layout {
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: stretch;
    gap: 1.25rem;
}

.ntdi-project-hero__content {
    min-width: 0;
    flex: 1 1 auto;
}

.ntdi-project-progress {
    width: 100%;
    min-width: 0;
    flex: 0 0 auto;
}

.ntdi-project-stats {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: stretch;
    gap: 1rem;
}

.ntdi-project-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 1.5rem;
}

.ntdi-project-layout__main,
.ntdi-project-layout__aside {
    min-width: 0;
}

.ntdi-project-plan-grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-items: start;
    gap: 1.25rem;
}

.ntdi-project-plan-grid > div {
    min-width: 0;
}

.dark .ntdi-project-hero,
.dark .ntdi-project-panel,
.dark .ntdi-project-stat,
.dark .ntdi-project-board__summary,
.dark .ntdi-kanban-column,
.dark .ntdi-kanban-card {
    border-color: rgb(255 255 255 / 0.08);
}

.ntdi-project-hero > div:first-child {
    background: var(--ntdi-navy-dark);
}

.ntdi-project-hero > div:first-child p {
    color: rgb(255 255 255 / 0.75) !important;
}

.ntdi-project-progress {
    border: 1px solid rgb(255 255 255 / 0.16);
    background: rgb(255 255 255 / 0.1) !important;
    color: #ffffff;
    backdrop-filter: blur(8px);
}

.ntdi-project-progress p {
    color: rgb(255 255 255 / 0.7) !important;
}

.ntdi-project-progress p.text-3xl {
    color: #ffffff !important;
}

.ntdi-project-progress > div:nth-child(2) {
    background: rgb(255 255 255 / 0.16) !important;
}

.ntdi-project-progress > div:nth-child(2) > div {
    background: var(--ntdi-lime) !important;
}

.ntdi-project-nav {
    border-color: var(--ntdi-border) !important;
    background: #ffffff;
}

.dark .ntdi-project-nav {
    border-color: rgb(255 255 255 / 0.08) !important;
    background: #111a36;
}

.ntdi-project-nav a {
    border-radius: 0.65rem;
}

.ntdi-project-stat {
    display: flex;
    min-width: 0;
    min-height: 8.5rem;
    flex-direction: column;
    align-items: stretch;
    position: relative;
    overflow: hidden;
    border-radius: 1rem !important;
    padding: 1.15rem 1.25rem 1rem 1.45rem !important;
    background: #ffffff !important;
    transition: border-color 150ms ease, box-shadow 150ms ease, transform 150ms ease;
}

.dark .ntdi-project-stat {
    border-color: rgb(148 163 184 / 0.14);
    background: #121b31 !important;
    box-shadow: 0 8px 22px rgb(2 6 23 / 0.18);
}

.ntdi-project-stat__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.75rem;
    min-width: 0;
}

.ntdi-project-stat__header p {
    min-width: 0;
    margin: 0 !important;
    color: #526078 !important;
    font-size: 0.76rem !important;
    font-weight: 700 !important;
    line-height: 1.25;
    overflow-wrap: anywhere;
}

.dark .ntdi-project-stat__header p {
    color: #aeb9cd !important;
}

.ntdi-project-stat__header svg {
    box-sizing: content-box;
    width: 1.05rem !important;
    height: 1.05rem !important;
    flex: 0 0 auto;
    border-radius: 0.58rem;
    padding: 0.42rem;
}

.ntdi-project-stat--active .ntdi-project-stat__header svg {
    background: rgb(41 55 130 / 0.09);
    color: var(--ntdi-navy) !important;
}

.ntdi-project-stat--blocked .ntdi-project-stat__header svg,
.ntdi-project-stat--overdue .ntdi-project-stat__header svg {
    background: rgb(220 38 38 / 0.09);
    color: #dc2626 !important;
}

.ntdi-project-stat--backlog .ntdi-project-stat__header svg,
.ntdi-project-stat--assigned .ntdi-project-stat__header svg {
    background: rgb(67 97 169 / 0.1);
    color: #4361a9 !important;
}

.ntdi-project-stat--team .ntdi-project-stat__header svg {
    background: rgb(61 146 48 / 0.1);
    color: var(--ntdi-green) !important;
}

.dark .ntdi-project-stat--active .ntdi-project-stat__header svg,
.dark .ntdi-project-stat--backlog .ntdi-project-stat__header svg,
.dark .ntdi-project-stat--assigned .ntdi-project-stat__header svg {
    background: rgb(96 125 198 / 0.15);
    color: #91a8e8 !important;
}

.dark .ntdi-project-stat--blocked .ntdi-project-stat__header svg,
.dark .ntdi-project-stat--overdue .ntdi-project-stat__header svg {
    background: rgb(248 113 113 / 0.12);
    color: #f87171 !important;
}

.dark .ntdi-project-stat--team .ntdi-project-stat__header svg {
    background: rgb(128 192 39 / 0.12);
    color: #9bd553 !important;
}

.ntdi-project-stat__value {
    margin: 0.85rem 0 0 !important;
    color: var(--ntdi-text) !important;
    font-size: 1.8rem !important;
    font-weight: 750 !important;
    line-height: 1;
    letter-spacing: -0.035em;
}

.dark .ntdi-project-stat__value {
    color: #f8fafc !important;
}

.ntdi-project-stat__detail {
    margin-top: auto !important;
    padding-top: 0.65rem;
    color: #7a879d !important;
    font-size: 0.71rem !important;
    font-weight: 500;
    line-height: 1.3;
}

.dark .ntdi-project-stat__detail {
    color: #8390a8 !important;
}

.ntdi-project-stat::before {
    position: absolute;
    inset: 0.75rem auto 0.75rem 0.55rem;
    width: 0.24rem;
    border-radius: 999px;
    background: var(--ntdi-navy);
    content: "";
}

.ntdi-project-stat--blocked::before,
.ntdi-project-stat--overdue::before {
    background: #dc2626;
}

.ntdi-project-stat--backlog::before,
.ntdi-project-stat--assigned::before {
    background: #4361a9;
}

.ntdi-project-stat--team::before {
    background: var(--ntdi-green);
}

.ntdi-project-stat:hover {
    border-color: rgb(41 55 130 / 0.24);
    box-shadow: 0 12px 28px rgb(41 55 130 / 0.1);
    transform: translateY(-1px);
}

.ntdi-project-panel {
    border-radius: 0.9rem !important;
}

.ntdi-project-panel h2 {
    letter-spacing: -0.015em;
}

@container project-workspace (min-width: 38rem) {
    .ntdi-project-stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ntdi-project-plan-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ntdi-project-plan-grid__wide {
        grid-column: span 2 / span 2;
    }
}

@container project-workspace (min-width: 58rem) {
    .ntdi-project-hero__layout {
        flex-direction: row;
        align-items: flex-start;
        justify-content: space-between;
    }

    .ntdi-project-progress {
        width: 18rem;
        flex-basis: 18rem;
    }

    .ntdi-project-layout {
        grid-template-columns: minmax(0, 2fr) minmax(16rem, 1fr);
    }

    .ntdi-project-plan-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@container project-workspace (min-width: 68rem) {
    .ntdi-project-stats {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

@supports not (container-type: inline-size) {
    @media (min-width: 640px) {
        .ntdi-project-stats,
        .ntdi-project-plan-grid {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .ntdi-project-plan-grid__wide {
            grid-column: span 2 / span 2;
        }
    }

    @media (min-width: 1280px) {
        .ntdi-project-stats {
            grid-template-columns: repeat(4, minmax(0, 1fr));
        }

        .ntdi-project-layout {
            grid-template-columns: minmax(0, 2fr) minmax(16rem, 1fr);
        }
    }
}

.ntdi-project-board__summary {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1.5rem;
    overflow: hidden;
    border-radius: 0.95rem;
    padding: 1.25rem 1.4rem;
    background: var(--ntdi-navy-dark);
    color: #ffffff;
}

.ntdi-project-board__summary p {
    color: rgb(255 255 255 / 0.65);
    font-size: 0.68rem;
    font-weight: 700;
    letter-spacing: 0.055em;
    text-transform: uppercase;
}

.ntdi-project-board__summary h2 {
    margin-top: 0.3rem;
    font-size: 1.25rem;
    font-weight: 750;
    letter-spacing: -0.02em;
}

.ntdi-project-board__badges {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4rem;
    margin-top: 0.75rem;
}

.ntdi-project-board__progress {
    display: flex;
    flex: 0 0 auto;
    gap: 0.6rem;
}

.ntdi-project-board__progress span {
    display: grid;
    min-width: 6.5rem;
    border: 1px solid rgb(255 255 255 / 0.15);
    border-radius: 0.7rem;
    padding: 0.55rem 0.75rem;
    background: rgb(255 255 255 / 0.09);
    color: rgb(255 255 255 / 0.7);
    font-size: 0.66rem;
    text-align: center;
}

.ntdi-project-board__progress strong {
    color: #ffffff;
    font-size: 1rem;
}

.ntdi-project-board__guide {
    border: 1px solid rgb(41 55 130 / 0.12);
    background: var(--ntdi-navy-soft) !important;
}

.dark .ntdi-project-board__guide {
    border-color: rgb(255 255 255 / 0.08);
    background: rgb(255 255 255 / 0.035) !important;
}

.ntdi-kanban-column {
    position: relative;
    overflow: hidden;
    border-radius: 0.85rem !important;
    background: #f4f6fa !important;
}

.ntdi-kanban-column::before {
    position: absolute;
    inset: 0 0 auto;
    height: 0.2rem;
    background: #9ba3b5;
    content: "";
}

.ntdi-kanban-column--ready::before {
    background: #4361a9;
}

.ntdi-kanban-column--in-progress::before {
    background: var(--ntdi-navy);
}

.ntdi-kanban-column--blocked::before {
    background: #dc2626;
}

.ntdi-kanban-column--in-review::before {
    background: #d99b15;
}

.ntdi-kanban-column--done::before {
    background: var(--ntdi-green);
}

.dark .ntdi-kanban-column {
    background: rgb(255 255 255 / 0.035) !important;
}

.ntdi-kanban-card {
    border-radius: 0.72rem !important;
}

.ntdi-kanban-card:hover {
    border-color: rgb(41 55 130 / 0.25);
    box-shadow: 0 10px 24px rgb(41 55 130 / 0.1);
}

.ntdi-kanban-card > div:first-child p {
    letter-spacing: -0.01em;
}

.ntdi-work-item-panel > section:first-child {
    border-bottom: 1px solid var(--ntdi-border);
    padding-bottom: 1.15rem;
}

.dark .ntdi-work-item-panel > section:first-child {
    border-bottom-color: rgb(255 255 255 / 0.08);
}

.ntdi-work-item-panel > section:last-child {
    position: sticky;
    bottom: 0;
    z-index: 2;
    margin-inline: -1.5rem;
    padding: 1rem 1.5rem;
    background: rgb(255 255 255 / 0.94);
    backdrop-filter: blur(10px);
}

.dark .ntdi-work-item-panel > section:last-child {
    background: rgb(17 26 54 / 0.94);
}

.ntdi-configuration-center {
    display: grid;
    gap: 1.25rem;
}

.ntdi-configuration-center__hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    overflow: hidden;
    border-radius: 1rem;
    padding: 1.5rem 1.65rem;
    background: var(--ntdi-navy-dark);
    box-shadow: 0 18px 42px rgb(24 34 83 / 0.16);
    color: #ffffff;
}

.ntdi-configuration-center__hero-copy {
    max-width: 48rem;
}

.ntdi-configuration-center__eyebrow {
    color: #b7e87a;
    font-size: 0.68rem;
    font-weight: 750;
    letter-spacing: 0.07em;
    text-transform: uppercase;
}

.ntdi-configuration-center__hero h2 {
    margin-top: 0.35rem;
    font-size: clamp(1.35rem, 2vw, 1.75rem);
    font-weight: 780;
    letter-spacing: -0.03em;
}

.ntdi-configuration-center__hero-copy > p:last-child {
    max-width: 44rem;
    margin-top: 0.55rem;
    color: rgb(255 255 255 / 0.72);
    font-size: 0.88rem;
    line-height: 1.55;
}

.ntdi-configuration-center__context {
    display: grid;
    flex: 0 0 min(18rem, 34%);
    border: 1px solid rgb(255 255 255 / 0.16);
    border-radius: 0.85rem;
    padding: 0.9rem 1rem;
    background: rgb(255 255 255 / 0.1);
    backdrop-filter: blur(10px);
}

.ntdi-configuration-center__context span {
    color: rgb(255 255 255 / 0.58);
    font-size: 0.64rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.ntdi-configuration-center__context strong {
    margin-top: 0.2rem;
    color: #ffffff;
    font-size: 1.05rem;
}

.ntdi-configuration-center__context small {
    margin-top: 0.25rem;
    color: rgb(255 255 255 / 0.68);
    font-size: 0.72rem;
}

.ntdi-configuration-center__notice {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    border: 1px solid rgb(61 146 48 / 0.18);
    border-radius: 0.8rem;
    padding: 0.8rem 1rem;
    background: #f2f8ec;
}

.ntdi-configuration-center__notice > svg {
    width: 1.45rem;
    height: 1.45rem;
    flex: 0 0 auto;
    color: var(--ntdi-green);
}

.ntdi-configuration-center__notice strong {
    color: var(--ntdi-text);
    font-size: 0.82rem;
}

.ntdi-configuration-center__notice p {
    margin-top: 0.1rem;
    color: var(--ntdi-muted);
    font-size: 0.74rem;
}

.dark .ntdi-configuration-center__notice {
    border-color: rgb(128 192 39 / 0.16);
    background: rgb(128 192 39 / 0.08);
}

.dark .ntdi-configuration-center__notice strong {
    color: #f8fafc;
}

.ntdi-configuration-center__sections {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.ntdi-configuration-center__empty {
    grid-column: 1 / -1;
    display: grid;
    min-height: 15rem;
    place-items: center;
    align-content: center;
    border: 1px dashed var(--ntdi-border);
    border-radius: 0.95rem;
    padding: 2rem;
    background: #ffffff;
    color: var(--ntdi-muted);
    text-align: center;
}

.ntdi-configuration-center__empty svg {
    width: 2rem;
    height: 2rem;
    margin-bottom: 0.7rem;
    color: var(--ntdi-navy);
}

.ntdi-configuration-center__empty h3 {
    color: var(--ntdi-text);
    font-size: 0.95rem;
    font-weight: 700;
}

.ntdi-configuration-center__empty p {
    margin-top: 0.25rem;
    font-size: 0.75rem;
}

.dark .ntdi-configuration-center__empty {
    border-color: rgb(255 255 255 / 0.1);
    background: #111a36;
}

.dark .ntdi-configuration-center__empty h3 {
    color: #f8fafc;
}

.ntdi-configuration-section {
    --ntdi-config-accent: var(--ntdi-navy);
    position: relative;
    overflow: hidden;
    border: 1px solid var(--ntdi-border);
    border-radius: 0.95rem;
    background: #ffffff;
    box-shadow: var(--ntdi-shadow);
}

.dark .ntdi-configuration-section {
    border-color: rgb(255 255 255 / 0.08);
    background: #111a36;
}

.ntdi-configuration-section--access {
    --ntdi-config-accent: #4361a9;
}

.ntdi-configuration-section--reception {
    --ntdi-config-accent: var(--ntdi-green);
}

.ntdi-configuration-section--operation {
    --ntdi-config-accent: #67728f;
}

.ntdi-configuration-section::before {
    position: absolute;
    inset: 0 0 auto;
    height: 0.22rem;
    background: var(--ntdi-config-accent);
    content: "";
}

.ntdi-configuration-section__header {
    display: flex;
    gap: 0.8rem;
    padding: 1.15rem 1.15rem 0.95rem;
}

.ntdi-configuration-section__icon {
    display: grid;
    width: 2.4rem;
    height: 2.4rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 0.65rem;
    background: color-mix(in srgb, var(--ntdi-config-accent) 10%, white);
    color: var(--ntdi-config-accent);
}

.ntdi-configuration-section__icon svg {
    width: 1.2rem;
    height: 1.2rem;
}

.ntdi-configuration-section__header h3 {
    color: var(--ntdi-text);
    font-size: 0.96rem;
    font-weight: 750;
    letter-spacing: -0.015em;
}

.dark .ntdi-configuration-section__header h3 {
    color: #f8fafc;
}

.ntdi-configuration-section__header p {
    margin-top: 0.25rem;
    color: var(--ntdi-muted);
    font-size: 0.73rem;
    line-height: 1.45;
}

.ntdi-configuration-section__links {
    border-top: 1px solid var(--ntdi-border);
}

.dark .ntdi-configuration-section__links {
    border-top-color: rgb(255 255 255 / 0.08);
}

.ntdi-configuration-link {
    display: flex;
    align-items: center;
    gap: 0.75rem;
    padding: 0.82rem 1.1rem;
    transition: background-color 150ms ease, transform 150ms ease;
}

.ntdi-configuration-link + .ntdi-configuration-link {
    border-top: 1px solid rgb(227 231 239 / 0.72);
}

.dark .ntdi-configuration-link + .ntdi-configuration-link {
    border-top-color: rgb(255 255 255 / 0.06);
}

.ntdi-configuration-link:hover,
.ntdi-configuration-link:focus-visible {
    background: color-mix(in srgb, var(--ntdi-config-accent) 5%, white);
}

.dark .ntdi-configuration-link:hover,
.dark .ntdi-configuration-link:focus-visible {
    background: rgb(255 255 255 / 0.035);
}

.ntdi-configuration-link__icon {
    display: grid;
    width: 2rem;
    height: 2rem;
    flex: 0 0 auto;
    place-items: center;
    border: 1px solid color-mix(in srgb, var(--ntdi-config-accent) 15%, white);
    border-radius: 0.55rem;
    color: var(--ntdi-config-accent);
}

.ntdi-configuration-link__icon svg,
.ntdi-configuration-link__arrow {
    width: 1rem;
    height: 1rem;
}

.ntdi-configuration-link__copy {
    display: grid;
    min-width: 0;
    flex: 1;
}

.ntdi-configuration-link__copy strong {
    color: var(--ntdi-text);
    font-size: 0.78rem;
    font-weight: 700;
}

.dark .ntdi-configuration-link__copy strong {
    color: #f8fafc;
}

.ntdi-configuration-link__copy small {
    margin-top: 0.14rem;
    overflow: hidden;
    color: var(--ntdi-muted);
    font-size: 0.68rem;
    line-height: 1.35;
    text-overflow: ellipsis;
}

.ntdi-configuration-link__arrow {
    flex: 0 0 auto;
    color: #9aa3b8;
    transition: color 150ms ease, transform 150ms ease;
}

.ntdi-configuration-link:hover .ntdi-configuration-link__arrow {
    color: var(--ntdi-config-accent);
    transform: translateX(0.18rem);
}

.fi-modal-window {
    border-radius: 1rem;
    box-shadow: 0 24px 64px rgb(15 23 42 / 0.24);
}

.fi-simple-layout {
    background: #f5f7fc;
}

.fi-simple-main {
    border: 1px solid rgb(227 231 239 / 0.9);
    border-radius: 1.15rem;
    box-shadow: 0 28px 65px rgb(41 55 130 / 0.12);
}

.fi-simple-header .fi-logo {
    width: auto;
    height: 7rem !important;
    margin-inline: auto;
    object-fit: contain;
}

.dark .fi-simple-header .fi-logo {
    filter: brightness(0) invert(1);
    opacity: 0.96;
}

.ntdi-help {
    --ntdi-help-blue: #4361a9;
    --ntdi-help-teal: #167d79;
    --ntdi-help-violet: #7057a8;
    --ntdi-help-amber: #b66a13;
    --ntdi-help-red: #b94343;
    display: grid;
    gap: 1.25rem;
}

.ntdi-help [x-cloak] {
    display: none !important;
}

.ntdi-help__hero {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    border-radius: 1rem;
    padding: 1.65rem;
    background: var(--ntdi-navy-dark);
    box-shadow: 0 18px 42px rgb(24 34 83 / 0.16);
    color: #ffffff;
}

.ntdi-help__hero-copy {
    max-width: 52rem;
}

.ntdi-help__eyebrow,
.ntdi-help__section-heading span,
.ntdi-help__cases > header span,
.ntdi-help-kanban > header span,
.ntdi-help-deployment > header span {
    color: var(--ntdi-green);
    font-size: 0.68rem;
    font-weight: 750;
    letter-spacing: 0.075em;
    text-transform: uppercase;
}

.ntdi-help__eyebrow {
    color: #b7e87a;
}

.ntdi-help__hero h2 {
    margin-top: 0.35rem;
    font-size: clamp(1.45rem, 2.5vw, 2rem);
    font-weight: 790;
    letter-spacing: -0.035em;
}

.ntdi-help__hero-copy > p {
    max-width: 48rem;
    margin-top: 0.55rem;
    color: rgb(255 255 255 / 0.72);
    font-size: 0.88rem;
    line-height: 1.6;
}

.ntdi-help__context {
    display: grid;
    min-width: 15rem;
    border: 1px solid rgb(255 255 255 / 0.16);
    border-radius: 0.85rem;
    padding: 0.9rem 1rem;
    background: rgb(255 255 255 / 0.1);
}

.ntdi-help__context span {
    color: rgb(255 255 255 / 0.58);
    font-size: 0.64rem;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.ntdi-help__context strong {
    margin-top: 0.2rem;
    font-size: 1.05rem;
}

.ntdi-help__context small {
    margin-top: 0.2rem;
    color: rgb(255 255 255 / 0.68);
    font-size: 0.72rem;
}

.ntdi-help__tabs {
    display: flex;
    gap: 0.35rem;
    overflow-x: auto;
    border: 1px solid var(--ntdi-border);
    border-radius: 0.85rem;
    padding: 0.35rem;
    background: #ffffff;
    box-shadow: var(--ntdi-shadow);
}

.dark .ntdi-help__tabs {
    border-color: rgb(255 255 255 / 0.08);
    background: #111a36;
}

.ntdi-help__tab {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.45rem;
    min-width: max-content;
    border-radius: 0.62rem;
    padding: 0.66rem 0.9rem;
    color: var(--ntdi-muted);
    font-size: 0.75rem;
    font-weight: 680;
    transition: background-color 150ms ease, color 150ms ease, box-shadow 150ms ease;
}

.ntdi-help__tab svg {
    width: 1.05rem;
    height: 1.05rem;
}

.ntdi-help__tab:hover,
.ntdi-help__tab:focus-visible {
    background: var(--ntdi-navy-soft);
    color: var(--ntdi-navy);
}

.ntdi-help__tab--active {
    background: var(--ntdi-navy);
    box-shadow: 0 5px 14px rgb(41 55 130 / 0.18);
    color: #ffffff;
}

.ntdi-help__tab--active:hover,
.ntdi-help__tab--active:focus-visible {
    background: var(--ntdi-navy-dark);
    color: #ffffff;
}

.ntdi-help__panel {
    display: grid;
    gap: 1.25rem;
}

.ntdi-help__section-heading {
    display: flex;
    align-items: end;
    justify-content: space-between;
    gap: 2rem;
    padding: 0.3rem 0.15rem;
}

.ntdi-help__section-heading h3 {
    margin-top: 0.15rem;
    color: var(--ntdi-text);
    font-size: clamp(1.15rem, 2vw, 1.5rem);
    font-weight: 760;
    letter-spacing: -0.025em;
}

.dark .ntdi-help__section-heading h3 {
    color: #f8fafc;
}

.ntdi-help__section-heading > p {
    max-width: 34rem;
    color: var(--ntdi-muted);
    font-size: 0.76rem;
    line-height: 1.55;
    text-align: right;
}

.ntdi-help__role-grid,
.ntdi-help__decision-grid,
.ntdi-help-module-grid,
.ntdi-help-project-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
}

.ntdi-help-role,
.ntdi-help-module,
.ntdi-help-project-card,
.ntdi-help__cases,
.ntdi-help-kanban,
.ntdi-help-deployment,
.ntdi-help-document-group {
    --ntdi-help-accent: var(--ntdi-navy);
    border: 1px solid var(--ntdi-border);
    border-top: 3px solid var(--ntdi-help-accent);
    border-radius: 0.9rem;
    background: #ffffff;
    box-shadow: var(--ntdi-shadow);
}

.dark .ntdi-help-role,
.dark .ntdi-help-module,
.dark .ntdi-help-project-card,
.dark .ntdi-help__cases,
.dark .ntdi-help-kanban,
.dark .ntdi-help-deployment,
.dark .ntdi-help-document-group {
    border-color: rgb(255 255 255 / 0.08);
    border-top-color: var(--ntdi-help-accent);
    background: #111a36;
}

.ntdi-help-role--blue,
.ntdi-help-module--blue {
    --ntdi-help-accent: var(--ntdi-help-blue);
}

.ntdi-help-role--green,
.ntdi-help-module--green {
    --ntdi-help-accent: var(--ntdi-green);
}

.ntdi-help-role--teal,
.ntdi-help-module--teal {
    --ntdi-help-accent: var(--ntdi-help-teal);
}

.ntdi-help-role--violet,
.ntdi-help-module--violet {
    --ntdi-help-accent: var(--ntdi-help-violet);
}

.ntdi-help-role--amber,
.ntdi-help-module--amber {
    --ntdi-help-accent: var(--ntdi-help-amber);
}

.ntdi-help-role--red,
.ntdi-help-module--red {
    --ntdi-help-accent: var(--ntdi-help-red);
}

.ntdi-help-role--gray,
.ntdi-help-module--gray {
    --ntdi-help-accent: #64748b;
}

.ntdi-help-role {
    padding: 1.1rem;
}

.ntdi-help-role > header,
.ntdi-help-module > header,
.ntdi-help-project-card {
    display: flex;
    align-items: flex-start;
    gap: 0.8rem;
}

.ntdi-help-role__icon,
.ntdi-help-module > header > span,
.ntdi-help-project-card__icon {
    display: grid;
    width: 2.4rem;
    height: 2.4rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 0.7rem;
    background: color-mix(in srgb, var(--ntdi-help-accent) 12%, white);
    color: var(--ntdi-help-accent);
}

.dark .ntdi-help-role__icon,
.dark .ntdi-help-module > header > span,
.dark .ntdi-help-project-card__icon {
    background: color-mix(in srgb, var(--ntdi-help-accent) 20%, #111a36);
}

.ntdi-help-role__icon svg,
.ntdi-help-module > header > span svg,
.ntdi-help-project-card__icon svg {
    width: 1.2rem;
    height: 1.2rem;
}

.ntdi-help-role header span:not(.ntdi-help-role__icon),
.ntdi-help-project-card small,
.ntdi-help-document > div > span {
    color: var(--ntdi-muted);
    font-size: 0.62rem;
    font-weight: 700;
    letter-spacing: 0.055em;
    text-transform: uppercase;
}

.ntdi-help-role h4,
.ntdi-help-module h4,
.ntdi-help-project-card h4,
.ntdi-help-document h5,
.ntdi-help__cases h4,
.ntdi-help-kanban h4,
.ntdi-help-deployment h4,
.ntdi-help-document-group h4 {
    color: var(--ntdi-text);
    font-weight: 720;
}

.dark .ntdi-help-role h4,
.dark .ntdi-help-module h4,
.dark .ntdi-help-project-card h4,
.dark .ntdi-help-document h5,
.dark .ntdi-help__cases h4,
.dark .ntdi-help-kanban h4,
.dark .ntdi-help-deployment h4,
.dark .ntdi-help-document-group h4 {
    color: #f8fafc;
}

.ntdi-help-role > p,
.ntdi-help-module header p,
.ntdi-help-project-card p,
.ntdi-help-document p {
    color: var(--ntdi-muted);
    font-size: 0.74rem;
    line-height: 1.5;
}

.ntdi-help-role > p {
    margin-top: 0.75rem;
}

.ntdi-help-role__columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.8rem;
    margin-top: 0.9rem;
}

.ntdi-help-role__columns > div {
    border-radius: 0.7rem;
    padding: 0.75rem;
    background: #f7f8fb;
}

.dark .ntdi-help-role__columns > div {
    background: rgb(255 255 255 / 0.035);
}

.ntdi-help-role__columns strong,
.ntdi-help-module > strong {
    color: var(--ntdi-text);
    font-size: 0.68rem;
}

.dark .ntdi-help-role__columns strong,
.dark .ntdi-help-module > strong {
    color: #e2e8f0;
}

.ntdi-help-role__columns ul,
.ntdi-help-module ul {
    display: grid;
    gap: 0.35rem;
    margin-top: 0.45rem;
    padding-inline-start: 0.9rem;
    color: var(--ntdi-muted);
    font-size: 0.68rem;
    line-height: 1.45;
    list-style: disc;
}

.ntdi-help-decision {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    border: 1px solid var(--ntdi-border);
    border-radius: 0.85rem;
    padding: 1rem;
    background: #ffffff;
    box-shadow: var(--ntdi-shadow);
    text-align: left;
    transition: border-color 150ms ease, transform 150ms ease;
}

.dark .ntdi-help-decision {
    border-color: rgb(255 255 255 / 0.08);
    background: #111a36;
}

.ntdi-help-decision:hover,
.ntdi-help-decision:focus-visible {
    border-color: rgb(41 55 130 / 0.35);
    transform: translateY(-2px);
}

.ntdi-help-decision__icon {
    display: grid;
    width: 2.5rem;
    height: 2.5rem;
    flex: 0 0 auto;
    place-items: center;
    border-radius: 0.72rem;
}

.ntdi-help-decision__icon--blue {
    background: #edf2ff;
    color: var(--ntdi-help-blue);
}

.ntdi-help-decision__icon--green {
    background: #eef7ea;
    color: var(--ntdi-green);
}

.ntdi-help-decision__icon svg,
.ntdi-help-decision > svg {
    width: 1.2rem;
    height: 1.2rem;
}

.ntdi-help-decision > span:nth-child(2) {
    display: grid;
    flex: 1;
}

.ntdi-help-decision strong {
    color: var(--ntdi-text);
    font-size: 0.78rem;
}

.dark .ntdi-help-decision strong {
    color: #f8fafc;
}

.ntdi-help-decision small {
    margin-top: 0.15rem;
    color: var(--ntdi-muted);
    font-size: 0.68rem;
}

.ntdi-help-decision > svg {
    color: var(--ntdi-muted);
}

.ntdi-help__rule,
.ntdi-help__security-note {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    border: 1px solid rgb(61 146 48 / 0.2);
    border-radius: 0.8rem;
    padding: 0.9rem 1rem;
    background: #f2f8ec;
}

.dark .ntdi-help__rule,
.dark .ntdi-help__security-note {
    border-color: rgb(128 192 39 / 0.18);
    background: rgb(128 192 39 / 0.07);
}

.ntdi-help__rule > svg,
.ntdi-help__security-note > svg {
    width: 1.35rem;
    height: 1.35rem;
    flex: 0 0 auto;
    color: var(--ntdi-green);
}

.ntdi-help__rule strong,
.ntdi-help__security-note strong {
    color: var(--ntdi-text);
    font-size: 0.76rem;
}

.dark .ntdi-help__rule strong,
.dark .ntdi-help__security-note strong {
    color: #f8fafc;
}

.ntdi-help__rule p,
.ntdi-help__security-note p {
    margin-top: 0.15rem;
    color: var(--ntdi-muted);
    font-size: 0.7rem;
    line-height: 1.5;
}

.ntdi-help-flow {
    display: flex;
    align-items: center;
    gap: 0.45rem;
    overflow-x: auto;
    border: 1px solid var(--ntdi-border);
    border-radius: 0.9rem;
    padding: 1rem;
    background: #ffffff;
    box-shadow: var(--ntdi-shadow);
}

.dark .ntdi-help-flow {
    border-color: rgb(255 255 255 / 0.08);
    background: #111a36;
}

.ntdi-help-flow__step {
    --ntdi-help-state: var(--ntdi-navy);
    display: flex;
    align-items: center;
    gap: 0.42rem;
    min-width: max-content;
    border: 1px solid color-mix(in srgb, var(--ntdi-help-state) 24%, white);
    border-radius: 0.7rem;
    padding: 0.7rem 0.8rem;
    background: color-mix(in srgb, var(--ntdi-help-state) 8%, white);
    color: var(--ntdi-help-state);
}

.dark .ntdi-help-flow__step {
    border-color: color-mix(in srgb, var(--ntdi-help-state) 50%, #111a36);
    background: color-mix(in srgb, var(--ntdi-help-state) 18%, #111a36);
}

.ntdi-help-flow__step--blue { --ntdi-help-state: var(--ntdi-help-blue); }
.ntdi-help-flow__step--navy { --ntdi-help-state: var(--ntdi-navy); }
.ntdi-help-flow__step--amber { --ntdi-help-state: var(--ntdi-help-amber); }
.ntdi-help-flow__step--violet { --ntdi-help-state: var(--ntdi-help-violet); }
.ntdi-help-flow__step--green { --ntdi-help-state: var(--ntdi-green); }
.ntdi-help-flow__step--gray { --ntdi-help-state: #64748b; }

.ntdi-help-flow__step svg,
.ntdi-help-flow__arrow {
    width: 1.05rem;
    height: 1.05rem;
    flex: 0 0 auto;
}

.ntdi-help-flow__step strong {
    font-size: 0.7rem;
}

.ntdi-help-flow__arrow {
    color: #9aa3b8;
}

.ntdi-help__branch-row {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}

.ntdi-help__branch-row span,
.ntdi-help-deployment__outcomes span {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    border: 1px solid var(--ntdi-border);
    border-radius: 999px;
    padding: 0.42rem 0.65rem;
    background: #ffffff;
    color: var(--ntdi-muted);
    font-size: 0.66rem;
}

.dark .ntdi-help__branch-row span,
.dark .ntdi-help-deployment__outcomes span {
    border-color: rgb(255 255 255 / 0.08);
    background: #111a36;
}

.ntdi-help__branch-row svg,
.ntdi-help-deployment__outcomes svg {
    width: 0.9rem;
    height: 0.9rem;
}

.ntdi-help-stage-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.85rem;
}

.ntdi-help-stage {
    --ntdi-help-accent: var(--ntdi-navy);
    display: flex;
    gap: 0.8rem;
    border: 1px solid var(--ntdi-border);
    border-inline-start: 3px solid var(--ntdi-help-accent);
    border-radius: 0.82rem;
    padding: 0.9rem;
    background: #ffffff;
}

.dark .ntdi-help-stage {
    border-color: rgb(255 255 255 / 0.08);
    border-inline-start-color: var(--ntdi-help-accent);
    background: #111a36;
}

.ntdi-help-stage--blue { --ntdi-help-accent: var(--ntdi-help-blue); }
.ntdi-help-stage--amber { --ntdi-help-accent: var(--ntdi-help-amber); }
.ntdi-help-stage--teal { --ntdi-help-accent: var(--ntdi-help-teal); }
.ntdi-help-stage--violet { --ntdi-help-accent: var(--ntdi-help-violet); }
.ntdi-help-stage--green { --ntdi-help-accent: var(--ntdi-green); }

.ntdi-help-stage__number {
    color: color-mix(in srgb, var(--ntdi-help-accent) 72%, #ffffff);
    font-size: 1.5rem;
    font-weight: 800;
    line-height: 1;
}

.ntdi-help-stage small {
    color: var(--ntdi-help-accent);
    font-size: 0.62rem;
    font-weight: 700;
    text-transform: uppercase;
}

.ntdi-help-stage h4 {
    margin-top: 0.12rem;
    color: var(--ntdi-text);
    font-size: 0.85rem;
    font-weight: 720;
}

.dark .ntdi-help-stage h4 {
    color: #f8fafc;
}

.ntdi-help-stage p {
    margin-top: 0.32rem;
    color: var(--ntdi-muted);
    font-size: 0.7rem;
    line-height: 1.5;
}

.ntdi-help-stage em {
    display: block;
    margin-top: 0.4rem;
    color: color-mix(in srgb, var(--ntdi-help-accent) 78%, var(--ntdi-text));
    font-size: 0.66rem;
    font-style: normal;
    font-weight: 620;
}

.ntdi-help__cases,
.ntdi-help-kanban,
.ntdi-help-deployment {
    padding: 1rem;
}

.ntdi-help__cases > header,
.ntdi-help-kanban > header,
.ntdi-help-deployment > header,
.ntdi-help-document-group > header {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
}

.ntdi-help__case-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.7rem;
    margin-top: 0.85rem;
}

.ntdi-help__case-grid article {
    display: flex;
    align-items: flex-start;
    gap: 0.55rem;
    border-radius: 0.7rem;
    padding: 0.75rem;
    background: #f7f8fb;
}

.dark .ntdi-help__case-grid article {
    background: rgb(255 255 255 / 0.035);
}

.ntdi-help__case-grid svg {
    width: 1rem;
    height: 1rem;
    flex: 0 0 auto;
    color: var(--ntdi-help-blue);
}

.ntdi-help__case-grid strong {
    color: var(--ntdi-text);
    font-size: 0.7rem;
}

.dark .ntdi-help__case-grid strong {
    color: #f8fafc;
}

.ntdi-help__case-grid p {
    margin-top: 0.2rem;
    color: var(--ntdi-muted);
    font-size: 0.65rem;
    line-height: 1.45;
}

.ntdi-help-project-card {
    --ntdi-help-accent: var(--ntdi-navy);
    padding: 1rem;
}

.ntdi-help-project-card__icon--navy { --ntdi-help-accent: var(--ntdi-navy); }
.ntdi-help-project-card__icon--blue { --ntdi-help-accent: var(--ntdi-help-blue); }
.ntdi-help-project-card__icon--amber { --ntdi-help-accent: var(--ntdi-help-amber); }
.ntdi-help-project-card__icon--violet { --ntdi-help-accent: var(--ntdi-help-violet); }
.ntdi-help-project-card__icon--red { --ntdi-help-accent: var(--ntdi-help-red); }
.ntdi-help-project-card__icon--green { --ntdi-help-accent: var(--ntdi-green); }

.ntdi-help-project-card h4 {
    margin-top: 0.1rem;
    font-size: 0.82rem;
}

.ntdi-help-project-card p {
    margin-top: 0.28rem;
}

.ntdi-help-kanban__flow,
.ntdi-help-deployment__flow,
.ntdi-help-deployment__outcomes {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    overflow-x: auto;
    margin-top: 0.85rem;
}

.ntdi-help-kanban__state {
    --ntdi-help-state: #64748b;
    min-width: max-content;
    border-radius: 0.62rem;
    padding: 0.55rem 0.72rem;
    background: color-mix(in srgb, var(--ntdi-help-state) 10%, white);
    color: var(--ntdi-help-state);
    font-size: 0.68rem;
    font-weight: 700;
}

.ntdi-help-kanban__state--blue { --ntdi-help-state: var(--ntdi-help-blue); }
.ntdi-help-kanban__state--amber { --ntdi-help-state: var(--ntdi-help-amber); }
.ntdi-help-kanban__state--violet { --ntdi-help-state: var(--ntdi-help-violet); }
.ntdi-help-kanban__state--green { --ntdi-help-state: var(--ntdi-green); }

.ntdi-help-kanban__flow svg,
.ntdi-help-deployment__flow > svg {
    width: 1rem;
    height: 1rem;
    flex: 0 0 auto;
    color: #9aa3b8;
}

.ntdi-help-kanban > p {
    margin-top: 0.7rem;
    color: var(--ntdi-muted);
    font-size: 0.68rem;
    line-height: 1.5;
}

.ntdi-help-deployment__flow > div {
    display: grid;
    min-width: 8rem;
    border: 1px solid #cdd7ef;
    border-radius: 0.7rem;
    padding: 0.65rem 0.75rem;
    background: #f3f6fd;
}

.dark .ntdi-help-deployment__flow > div {
    border-color: rgb(67 97 169 / 0.4);
    background: rgb(67 97 169 / 0.12);
}

.ntdi-help-deployment__flow > div strong {
    color: var(--ntdi-navy);
    font-size: 0.72rem;
}

.dark .ntdi-help-deployment__flow > div strong {
    color: #cad5ff;
}

.ntdi-help-deployment__flow > div small {
    color: var(--ntdi-muted);
    font-size: 0.62rem;
}

.ntdi-help-deployment__flow > .ntdi-help-deployment__production {
    border-color: rgb(185 67 67 / 0.3);
    background: #fff2f2;
}

.dark .ntdi-help-deployment__flow > .ntdi-help-deployment__production {
    background: rgb(185 67 67 / 0.12);
}

.ntdi-help-deployment__flow > .ntdi-help-deployment__production strong {
    color: var(--ntdi-help-red);
}

.ntdi-help-module {
    display: grid;
    gap: 0.75rem;
    padding: 1rem;
}

.ntdi-help-module header p {
    margin-top: 0.2rem;
}

.ntdi-help-module > a {
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
    border-radius: 0.62rem;
    padding: 0.58rem 0.7rem;
    background: color-mix(in srgb, var(--ntdi-help-accent) 10%, white);
    color: var(--ntdi-help-accent);
    font-size: 0.7rem;
    font-weight: 700;
}

.dark .ntdi-help-module > a {
    background: color-mix(in srgb, var(--ntdi-help-accent) 18%, #111a36);
}

.ntdi-help-module > a svg {
    width: 1rem;
    height: 1rem;
}

.ntdi-help__empty {
    grid-column: 1 / -1;
    display: grid;
    min-height: 12rem;
    place-items: center;
    align-content: center;
    border: 1px dashed var(--ntdi-border);
    border-radius: 0.9rem;
    padding: 1.5rem;
    background: #ffffff;
    text-align: center;
}

.dark .ntdi-help__empty {
    border-color: rgb(255 255 255 / 0.1);
    background: #111a36;
}

.ntdi-help__empty svg {
    width: 1.8rem;
    height: 1.8rem;
    color: var(--ntdi-navy);
}

.ntdi-help__empty h4 {
    margin-top: 0.55rem;
    color: var(--ntdi-text);
    font-size: 0.82rem;
    font-weight: 700;
}

.dark .ntdi-help__empty h4 {
    color: #f8fafc;
}

.ntdi-help__empty p {
    margin-top: 0.2rem;
    color: var(--ntdi-muted);
    font-size: 0.68rem;
}

.ntdi-help-documents {
    display: grid;
    gap: 1rem;
}

.ntdi-help-document-group {
    overflow: hidden;
}

.ntdi-help-document-group > header {
    border-bottom: 1px solid var(--ntdi-border);
    padding: 0.8rem 1rem;
    background: #f8f9fc;
}

.dark .ntdi-help-document-group > header {
    border-bottom-color: rgb(255 255 255 / 0.08);
    background: rgb(255 255 255 / 0.025);
}

.ntdi-help-document-group > header h4 {
    font-size: 0.78rem;
}

.ntdi-help-document-group > header span {
    color: var(--ntdi-muted);
    font-size: 0.65rem;
}

.ntdi-help-document-group > div {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ntdi-help-document {
    display: grid;
    grid-template-columns: auto 1fr auto;
    align-items: center;
    gap: 0.75rem;
    min-width: 0;
    border-bottom: 1px solid var(--ntdi-border);
    padding: 0.9rem 1rem;
}

.ntdi-help-document:nth-child(odd) {
    border-inline-end: 1px solid var(--ntdi-border);
}

.dark .ntdi-help-document,
.dark .ntdi-help-document:nth-child(odd) {
    border-color: rgb(255 255 255 / 0.07);
}

.ntdi-help-document__icon {
    display: grid;
    width: 2.2rem;
    height: 2.2rem;
    place-items: center;
    border-radius: 0.65rem;
    background: var(--ntdi-navy-soft);
    color: var(--ntdi-navy);
}

.dark .ntdi-help-document__icon {
    background: rgb(67 97 169 / 0.15);
    color: #b8c6ff;
}

.ntdi-help-document__icon svg {
    width: 1.1rem;
    height: 1.1rem;
}

.ntdi-help-document h5 {
    margin-top: 0.08rem;
    font-size: 0.74rem;
}

.ntdi-help-document p {
    margin-top: 0.18rem;
    font-size: 0.65rem;
}

.ntdi-help-document > button {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    border: 1px solid var(--ntdi-border);
    border-radius: 0.58rem;
    padding: 0.48rem 0.6rem;
    color: var(--ntdi-navy);
    font-size: 0.66rem;
    font-weight: 700;
}

.dark .ntdi-help-document > button {
    border-color: rgb(255 255 255 / 0.1);
    color: #cad5ff;
}

.ntdi-help-document > button:hover,
.ntdi-help-document > button:focus-visible {
    border-color: var(--ntdi-navy);
    background: var(--ntdi-navy-soft);
}

.ntdi-help-document > button:disabled {
    cursor: wait;
    opacity: 0.6;
}

.ntdi-help-document > button svg {
    width: 0.95rem;
    height: 0.95rem;
}

@media (max-width: 1100px) {
    .ntdi-operational-context {
        min-width: auto;
    }

    .ntdi-operational-context__desk,
    .ntdi-operational-context__tenant span {
        display: none;
    }

    .ntdi-ticket-workspace__facts {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ntdi-ticket-workspace__facts > div:nth-child(3) {
        border-inline-start: 0;
        border-top: 1px solid var(--ntdi-border);
    }

    .ntdi-ticket-workspace__facts > div:nth-child(4) {
        border-top: 1px solid var(--ntdi-border);
    }

    .ntdi-project-board__summary {
        align-items: flex-start;
        flex-direction: column;
    }

    .ntdi-configuration-center__sections {
        grid-template-columns: 1fr;
    }

    .ntdi-help__case-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ntdi-help-document-group > div {
        grid-template-columns: 1fr;
    }

    .ntdi-help-document:nth-child(odd) {
        border-inline-end: 0;
    }
}

@media (max-width: 767px) {
    .fi-topbar .fi-global-search-field {
        width: auto;
    }

    .ntdi-operational-context {
        display: none;
    }

    .fi-main {
        padding-bottom: 2rem;
    }

    .ntdi-ticket-workspace__heading,
    .ntdi-ticket-workspace__next-action {
        align-items: flex-start;
        flex-direction: column;
    }

    .ntdi-ticket-workspace__status,
    .ntdi-ticket-workspace__closure {
        margin-inline-start: 0;
    }

    .ntdi-ticket-workspace__facts {
        grid-template-columns: 1fr;
    }

    .ntdi-ticket-workspace__facts > div + div,
    .ntdi-ticket-workspace__facts > div:nth-child(3) {
        border-top: 1px solid var(--ntdi-border);
        border-inline-start: 0;
    }

    .ntdi-project-board__progress {
        width: 100%;
    }

    .ntdi-project-board__progress span {
        min-width: 0;
        flex: 1;
    }

    .ntdi-configuration-center__hero {
        align-items: flex-start;
        flex-direction: column;
        padding: 1.25rem;
    }

    .ntdi-configuration-center__context {
        width: 100%;
        flex-basis: auto;
    }

    .ntdi-help__hero,
    .ntdi-help__section-heading {
        align-items: flex-start;
        flex-direction: column;
    }

    .ntdi-help__hero {
        padding: 1.25rem;
    }

    .ntdi-help__context {
        width: 100%;
        min-width: 0;
    }

    .ntdi-help__section-heading {
        gap: 0.45rem;
    }

    .ntdi-help__section-heading > p {
        text-align: left;
    }

    .ntdi-help__role-grid,
    .ntdi-help__decision-grid,
    .ntdi-help-module-grid,
    .ntdi-help-project-grid,
    .ntdi-help-stage-list,
    .ntdi-help__case-grid {
        grid-template-columns: 1fr;
    }

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

    .ntdi-help-document {
        grid-template-columns: auto 1fr;
    }

    .ntdi-help-document > button {
        grid-column: 1 / -1;
        justify-content: center;
    }
}

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
    }
}
