.accounting-tagging-modal-overlay {
    --ac-accent: #0f8b8d;
    --ac-accent-dark: #087275;
    --ac-navy: #102f44;
    --ac-ink: #172431;
    --ac-muted: #687785;
    --ac-border: #dce4e8;
    --ac-surface: #ffffff;
    --ac-canvas: #f4f7f8;
    --ac-soft: #eaf6f5;
    background: rgba(8, 21, 31, 0.72);
    inset: 0;
    position: fixed;
    z-index: 11000;
}

.accounting-tagging-modal {
    background: var(--ac-canvas);
    color: var(--ac-ink);
    display: flex;
    flex-direction: column;
    height: 100dvh;
    max-height: 100vh;
    overflow: hidden;
    width: 100%;
}

.accounting-tagging-modal-header {
    align-items: center;
    background:
        radial-gradient(circle at 78% -80%, rgba(40, 204, 191, 0.42), transparent 42%),
        linear-gradient(120deg, #0e3045, #12566a);
    color: #fff;
    display: flex;
    flex: 0 0 auto;
    gap: 1.25rem;
    justify-content: space-between;
    min-height: 76px;
    padding: 12px 22px;
}

.accounting-tagging-modal-brand,
.accounting-tagging-modal-header-actions {
    align-items: center;
    display: flex;
}

.accounting-tagging-modal-brand {
    gap: 13px;
    min-width: 0;
}

.accounting-tagging-modal-header-actions {
    gap: 9px;
}

.accounting-tagging-modal-mark {
    align-items: flex-end;
    background: rgba(255, 255, 255, 0.13);
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 12px;
    display: flex;
    gap: 3px;
    height: 44px;
    justify-content: center;
    padding: 10px;
    width: 44px;
}

.accounting-tagging-modal-mark span {
    background: #6ce1d2;
    border-radius: 2px;
    display: block;
    width: 5px;
}

.accounting-tagging-modal-mark span:nth-child(1) { height: 11px; }
.accounting-tagging-modal-mark span:nth-child(2) { height: 21px; }
.accounting-tagging-modal-mark span:nth-child(3) { height: 16px; }

.accounting-tagging-modal-kicker,
.accounting-tagging-eyebrow {
    font-size: 0.7rem;
    font-weight: 700;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.accounting-tagging-modal-kicker {
    color: rgba(255, 255, 255, 0.67);
}

.accounting-tagging-modal-header h1 {
    font-size: clamp(1rem, 1.45vw, 1.35rem);
    font-weight: 650;
    margin: 2px 0 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.accounting-tagging-save-state {
    color: rgba(255, 255, 255, 0.76);
    font-size: 0.82rem;
    margin-right: 5px;
}

.accounting-tagging-button,
.accounting-tagging-modal-icon-button,
.accounting-tagging-nav-item,
.accounting-tagging-text-button {
    font: inherit;
}

.accounting-tagging-button {
    align-items: center;
    border: 1px solid transparent;
    border-radius: 8px;
    cursor: pointer;
    display: inline-flex;
    font-size: 0.84rem;
    font-weight: 650;
    justify-content: center;
    min-height: 38px;
    padding: 7px 14px;
}

.accounting-tagging-button.primary {
    background: #17a5a0;
    color: #fff;
}

.accounting-tagging-button.primary:hover {
    background: #128d89;
}

.accounting-tagging-button.secondary {
    background: rgba(255, 255, 255, 0.08);
    border-color: rgba(255, 255, 255, 0.28);
    color: #fff;
}

.accounting-tagging-button.wide {
    margin-top: 18px;
    width: 100%;
}

.accounting-tagging-button:disabled,
.accounting-tagging-modal-icon-button:disabled {
    cursor: wait;
    opacity: 0.58;
}

.accounting-tagging-modal-icon-button {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 8px;
    color: #fff;
    cursor: pointer;
    display: inline-flex;
    font-size: 1.65rem;
    height: 40px;
    justify-content: center;
    line-height: 1;
    margin-left: 3px;
    width: 40px;
}

.accounting-tagging-modal-icon-button:hover {
    background: rgba(255, 255, 255, 0.12);
}

.accounting-tagging-modal-icon-button:focus-visible,
.accounting-tagging-button:focus-visible,
.accounting-tagging-nav-item:focus-visible,
.accounting-tagging-text-button:focus-visible,
.accounting-tagging-modal input:focus-visible,
.accounting-tagging-modal select:focus-visible,
.accounting-tagging-modal textarea:focus-visible {
    outline: 3px solid rgba(23, 165, 160, 0.34);
    outline-offset: 2px;
}

.accounting-tagging-workspace {
    display: grid;
    flex: 1 1 auto;
    grid-template-columns: 248px minmax(0, 1fr);
    min-height: 0;
}

.accounting-tagging-sidebar {
    background: #fff;
    border-right: 1px solid var(--ac-border);
    display: flex;
    flex-direction: column;
    min-height: 0;
    padding: 18px 14px;
}

.accounting-tagging-project-summary {
    align-items: flex-start;
    background: var(--ac-soft);
    border: 1px solid #d3ecea;
    border-radius: 10px;
    display: flex;
    gap: 10px;
    margin: 0 4px 18px;
    padding: 12px;
}

.accounting-tagging-project-summary strong,
.accounting-tagging-project-summary small {
    display: block;
}

.accounting-tagging-project-summary strong {
    color: #155b5b;
    font-size: 0.78rem;
}

.accounting-tagging-project-summary small {
    color: #5a7474;
    font-size: 0.7rem;
    line-height: 1.35;
    margin-top: 2px;
}

.accounting-tagging-status-dot {
    background: #18a57b;
    border: 3px solid rgba(24, 165, 123, 0.16);
    border-radius: 50%;
    flex: 0 0 auto;
    height: 12px;
    margin-top: 3px;
    width: 12px;
}

.accounting-tagging-sidebar nav {
    display: grid;
    gap: 5px;
}

.accounting-tagging-nav-item {
    align-items: center;
    background: transparent;
    border: 0;
    border-radius: 9px;
    color: #41515f;
    cursor: pointer;
    display: grid;
    gap: 11px;
    grid-template-columns: 34px minmax(0, 1fr);
    padding: 10px;
    text-align: left;
    width: 100%;
}

.accounting-tagging-nav-item:hover {
    background: #f1f5f6;
}

.accounting-tagging-nav-item.active {
    background: var(--ac-soft);
    color: #075f61;
}

.accounting-tagging-nav-icon {
    align-items: center;
    background: #edf1f3;
    border-radius: 8px;
    color: #576876;
    display: flex;
    font-size: 1rem;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.accounting-tagging-nav-item.active .accounting-tagging-nav-icon {
    background: #caeae7;
    color: #087275;
}

.accounting-tagging-nav-item strong,
.accounting-tagging-nav-item small {
    display: block;
}

.accounting-tagging-nav-item strong {
    font-size: 0.82rem;
    font-weight: 650;
}

.accounting-tagging-nav-item small {
    color: #80909c;
    font-size: 0.66rem;
    line-height: 1.3;
    margin-top: 2px;
}

.accounting-tagging-sidebar-meta {
    border-top: 1px solid var(--ac-border);
    color: var(--ac-muted);
    display: flex;
    font-size: 0.7rem;
    justify-content: space-between;
    margin-top: auto;
    padding: 16px 8px 0;
}

.accounting-tagging-sidebar-meta code {
    color: #50616e;
}

.accounting-tagging-content {
    min-height: 0;
    overflow: auto;
    padding: clamp(20px, 2.5vw, 38px);
}

.accounting-tagging-content > div {
    margin: 0 auto;
    max-width: 1500px;
}

.accounting-tagging-section-heading {
    align-items: flex-end;
    display: flex;
    gap: 24px;
    justify-content: space-between;
    margin-bottom: 24px;
}

.accounting-tagging-section-heading.compact {
    align-items: center;
}

.accounting-tagging-eyebrow {
    color: var(--ac-accent-dark);
}

.accounting-tagging-section-heading h2 {
    color: var(--ac-navy);
    font-size: clamp(1.45rem, 2.1vw, 2rem);
    font-weight: 680;
    letter-spacing: -0.025em;
    margin: 4px 0;
}

.accounting-tagging-section-heading p {
    color: var(--ac-muted);
    font-size: 0.88rem;
    margin: 0;
}

.accounting-tagging-project-pill,
.accounting-tagging-status-badge {
    background: var(--ac-soft);
    border: 1px solid #c9e7e4;
    border-radius: 999px;
    color: #0a7172;
    font-size: 0.72rem;
    font-weight: 700;
    padding: 6px 11px;
}

.accounting-tagging-kpi-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    margin-bottom: 18px;
}

.accounting-tagging-kpi-card,
.accounting-tagging-card,
.accounting-tagging-results-card,
.accounting-tagging-job-card {
    background: var(--ac-surface);
    border: 1px solid var(--ac-border);
    border-radius: 12px;
    box-shadow: 0 2px 7px rgba(26, 50, 65, 0.035);
}

.accounting-tagging-kpi-card {
    display: flex;
    flex-direction: column;
    min-height: 132px;
    padding: 17px;
}

.accounting-tagging-kpi-card > span {
    color: var(--ac-muted);
    font-size: 0.72rem;
    font-weight: 650;
}

.accounting-tagging-kpi-card > strong {
    color: var(--ac-navy);
    font-size: 1.75rem;
    letter-spacing: -0.03em;
    margin: 7px 0 1px;
}

.accounting-tagging-kpi-card > small {
    color: #87949e;
    font-size: 0.67rem;
}

.accounting-tagging-kpi-card > div {
    background: #e8eeef;
    border-radius: 999px;
    height: 5px;
    margin-top: auto;
    overflow: hidden;
}

.accounting-tagging-kpi-card > div i {
    background: linear-gradient(90deg, #0f8b8d, #36b6a9);
    border-radius: inherit;
    display: block;
    height: 100%;
}

.accounting-tagging-overview-grid,
.accounting-tagging-form-grid {
    display: grid;
    gap: 18px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.accounting-tagging-card {
    padding: 21px;
}

.accounting-tagging-full-card {
    margin-top: 18px;
}

.accounting-tagging-card-heading {
    align-items: flex-start;
    border-bottom: 1px solid #edf1f2;
    display: flex;
    justify-content: space-between;
    margin-bottom: 17px;
    padding-bottom: 13px;
}

.accounting-tagging-card-heading h3 {
    color: var(--ac-navy);
    font-size: 1rem;
    margin: 3px 0 0;
}

.accounting-tagging-text-button {
    background: transparent;
    border: 0;
    color: var(--ac-accent-dark);
    cursor: pointer;
    font-size: 0.74rem;
    font-weight: 700;
    padding: 4px;
}

.accounting-tagging-detail-list {
    margin: 0;
}

.accounting-tagging-detail-list > div {
    align-items: baseline;
    border-bottom: 1px solid #f0f3f4;
    display: grid;
    gap: 16px;
    grid-template-columns: 135px minmax(0, 1fr);
    padding: 9px 0;
}

.accounting-tagging-detail-list > div:last-child {
    border-bottom: 0;
}

.accounting-tagging-detail-list dt {
    color: var(--ac-muted);
    font-size: 0.72rem;
}

.accounting-tagging-detail-list dd {
    font-size: 0.8rem;
    font-weight: 600;
    margin: 0;
    overflow-wrap: anywhere;
}

.accounting-tagging-next-steps {
    display: grid;
    gap: 12px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.accounting-tagging-next-steps li {
    align-items: center;
    display: grid;
    gap: 11px;
    grid-template-columns: 28px minmax(0, 1fr);
}

.accounting-tagging-next-steps li > span {
    align-items: center;
    background: #edf1f3;
    border-radius: 50%;
    color: #70808c;
    display: flex;
    font-size: 0.7rem;
    font-weight: 700;
    height: 28px;
    justify-content: center;
    width: 28px;
}

.accounting-tagging-next-steps li.complete > span {
    background: #daf1e8;
    color: #14825f;
}

.accounting-tagging-next-steps li.active > span {
    background: #d2ecea;
    color: #087275;
    box-shadow: 0 0 0 4px #edf8f7;
}

.accounting-tagging-next-steps strong,
.accounting-tagging-next-steps small {
    display: block;
}

.accounting-tagging-next-steps strong {
    font-size: 0.78rem;
}

.accounting-tagging-next-steps small {
    color: var(--ac-muted);
    font-size: 0.68rem;
    margin-top: 2px;
}

.accounting-tagging-field {
    display: grid;
    gap: 7px;
    margin-bottom: 15px;
}

.accounting-tagging-field > span {
    color: #53636f;
    display: flex;
    font-size: 0.75rem;
    font-weight: 650;
    justify-content: space-between;
}

.accounting-tagging-modal input[type="text"],
.accounting-tagging-modal input:not([type]),
.accounting-tagging-modal select,
.accounting-tagging-modal textarea,
.accounting-tagging-search input {
    background: #fff;
    border: 1px solid #cfd9de;
    border-radius: 8px;
    color: var(--ac-ink);
    font: inherit;
    font-size: 0.8rem;
    padding: 9px 11px;
    width: 100%;
}

.accounting-tagging-modal textarea {
    line-height: 1.5;
    resize: vertical;
}

.accounting-tagging-large-textarea {
    min-height: 155px;
}

.accounting-tagging-modal input[type="range"] {
    accent-color: var(--ac-accent);
    width: 100%;
}

.accounting-tagging-confidence-scale {
    color: #8a969f;
    display: flex;
    font-size: 0.64rem;
    justify-content: space-between;
    margin: -9px 0 17px;
}

.accounting-tagging-toggle {
    align-items: flex-start;
    background: #f8fafb;
    border: 1px solid #e3e9ec;
    border-radius: 9px;
    cursor: pointer;
    display: grid;
    gap: 10px;
    grid-template-columns: auto minmax(0, 1fr);
    padding: 12px;
}

.accounting-tagging-toggle input,
.accounting-tagging-level-grid input {
    accent-color: var(--ac-accent);
    height: 17px;
    margin-top: 2px;
    width: 17px;
}

.accounting-tagging-toggle strong,
.accounting-tagging-toggle small {
    display: block;
}

.accounting-tagging-toggle strong {
    font-size: 0.76rem;
}

.accounting-tagging-toggle small {
    color: var(--ac-muted);
    font-size: 0.68rem;
    line-height: 1.4;
    margin-top: 2px;
}

.accounting-tagging-model-tile {
    align-items: center;
    background: linear-gradient(135deg, #f4fafa, #edf7f7);
    border: 1px solid #d8eceb;
    border-radius: 10px;
    display: grid;
    gap: 11px;
    grid-template-columns: 38px minmax(0, 1fr) auto;
    margin-bottom: 17px;
    padding: 12px;
}

.accounting-tagging-model-icon {
    align-items: center;
    background: #0f8b8d;
    border-radius: 9px;
    color: #fff;
    display: flex;
    height: 38px;
    justify-content: center;
    width: 38px;
}

.accounting-tagging-model-tile strong,
.accounting-tagging-model-tile small {
    display: block;
}

.accounting-tagging-model-tile strong {
    font-size: 0.8rem;
}

.accounting-tagging-model-tile small {
    color: var(--ac-muted);
    font-size: 0.67rem;
    margin-top: 2px;
}

.accounting-tagging-search {
    align-items: center;
    background: #fff;
    border: 1px solid #cfd9de;
    border-radius: 9px;
    display: grid;
    gap: 6px;
    grid-template-columns: auto minmax(0, 1fr);
    min-width: min(320px, 40vw);
    padding-left: 10px;
}

.accounting-tagging-search > span {
    color: #788894;
    font-size: 1rem;
}

.accounting-tagging-search input {
    border: 0;
    outline: 0;
}

.accounting-tagging-results-card {
    overflow: hidden;
}

.accounting-tagging-native-grid-toolbar {
    align-items: flex-end;
    background: #f8fafb;
    border-bottom: 1px solid var(--ac-border);
    display: flex;
    gap: 16px;
    justify-content: space-between;
    padding: 13px 16px;
}

.accounting-tagging-taxonomy-picker {
    display: grid;
    flex: 1 1 620px;
    gap: 7px;
    grid-template-columns: minmax(240px, 0.8fr) minmax(300px, 1.2fr);
}

.accounting-tagging-taxonomy-picker label {
    display: grid;
    gap: 5px;
}

.accounting-tagging-taxonomy-picker label > span {
    color: #53636f;
    font-size: 0.68rem;
    font-weight: 700;
}

.accounting-tagging-taxonomy-picker label > div {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
}

.accounting-tagging-taxonomy-picker input,
.accounting-tagging-taxonomy-picker select {
    background: #fff;
    border: 1px solid #cfd9de;
    color: var(--ac-ink);
    font: inherit;
    font-size: 0.72rem;
    min-height: 34px;
    padding: 6px 9px;
    width: 100%;
}

.accounting-tagging-taxonomy-picker input {
    border-radius: 7px 0 0 7px;
}

.accounting-tagging-taxonomy-picker label button {
    background: var(--ac-soft);
    border: 1px solid #c1dcda;
    border-left: 0;
    border-radius: 0 7px 7px 0;
    color: var(--ac-accent-dark);
    cursor: pointer;
    font-size: 0.7rem;
    font-weight: 700;
    padding: 5px 11px;
}

.accounting-tagging-taxonomy-picker select {
    align-self: end;
    border-radius: 7px;
}

.accounting-tagging-grid-commandbar {
    align-items: center;
    background: #fff;
    border-bottom: 1px solid var(--ac-border);
    display: flex;
    flex-wrap: wrap;
    gap: 8px 18px;
    justify-content: space-between;
    padding: 9px 16px;
}

.accounting-tagging-grid-commandgroup {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.accounting-tagging-grid-commandgroup button {
    background: #fff;
    border: 1px solid #cfd9de;
    border-radius: 6px;
    color: #31505f;
    cursor: pointer;
    font: inherit;
    font-size: 0.68rem;
    font-weight: 650;
    min-height: 30px;
    padding: 5px 9px;
}

.accounting-tagging-grid-commandgroup button:hover,
.accounting-tagging-grid-commandgroup button.active {
    background: var(--ac-soft);
    border-color: #92cbc6;
    color: var(--ac-accent-dark);
}

.accounting-tagging-grid-commandgroup button.active::before {
    content: "\2713";
    margin-right: 5px;
}

.accounting-tagging-grid-commandgroup button:disabled {
    cursor: not-allowed;
    opacity: 0.45;
}

.accounting-tagging-grid-status {
    align-items: center;
    background: #fff;
    border-bottom: 1px solid var(--ac-border);
    display: flex;
    gap: 8px;
    padding: 9px 16px;
}

.accounting-tagging-grid-status strong {
    color: var(--ac-navy);
    font-size: 0.72rem;
}

.accounting-tagging-grid-status span {
    color: var(--ac-muted);
    font-size: 0.68rem;
}

.accounting-tagging-native-grid {
    height: calc(100dvh - 360px);
    min-height: 480px;
}

.accounting-tagging-native-grid .dxbl-grid {
    border: 0;
    border-radius: 0;
}

.accounting-tagging-group-value {
    font-weight: 700;
}

.accounting-tagging-group-value.blank {
    color: #999;
    font-style: italic;
    font-weight: 400;
}

.accounting-tagging-group-summary {
    color: var(--ac-muted);
    font-weight: 500;
}

/*
 * The project banner is the title surface for this DetailView. Suppress only
 * this view's generated XAF object caption; modal commands and close controls
 * remain in their native template regions.
 */
.dxbl-modal-content:has(.accounting-tagging-integrated-insights)
    .view-caption-root,
.dxbl-modal-content:has(.accounting-tagging-integrated-insights)
    .xaf-caption-icon-container,
.dxbl-modal-content:has(.accounting-tagging-integrated-insights)
    .xaf-caption-container {
    display: none !important;
}

.accounting-tagging-integrated-insights {
    align-items: stretch;
    background:
        radial-gradient(
            circle at 88% -70%,
            rgba(118, 232, 218, 0.22),
            transparent 42%),
        linear-gradient(108deg, #17586a 0%, #177583 54%, #15938a 100%);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-radius: 14px;
    box-shadow:
        0 7px 20px rgba(12, 51, 68, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.11);
    color: #fff;
    display: grid;
    gap: 0;
    grid-template-columns:
        minmax(250px, 1.65fr)
        repeat(3, minmax(125px, 0.72fr))
        minmax(245px, 1.25fr)
        auto;
    min-height: 108px;
    overflow: hidden;
    width: 100%;
}

.accounting-tagging-integrated-identity,
.accounting-tagging-integrated-stat {
    padding: 16px 18px;
}

.accounting-tagging-integrated-identity {
    background: rgba(0, 0, 0, 0.035);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.accounting-tagging-integrated-stat {
    align-content: center;
    display: grid;
    grid-template-rows: 13px 24px 4px 14px;
    row-gap: 5px;
}

.accounting-tagging-integrated-identity .accounting-tagging-eyebrow {
    color: #9de0d8;
    margin-bottom: 5px;
}

.accounting-tagging-integrated-identity strong {
    font-size: 1rem;
    line-height: 1.25;
}

.accounting-tagging-integrated-identity > span:last-child {
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.66rem;
    margin-top: 7px;
}

.accounting-tagging-integrated-identity i {
    background: #55c9bd;
    border-radius: 50%;
    display: inline-block;
    height: 4px;
    margin: 0 7px 2px;
    width: 4px;
}

.accounting-tagging-integrated-stat {
    border-left: 1px solid rgba(255, 255, 255, 0.12);
}

.accounting-tagging-integrated-stat > span {
    color: rgba(255, 255, 255, 0.68);
    font-size: 0.62rem;
    font-weight: 650;
    letter-spacing: 0.03em;
    text-transform: uppercase;
}

.accounting-tagging-integrated-stat strong {
    align-self: center;
    font-size: 1.05rem;
    line-height: 1.2;
    margin: 0;
}

.accounting-tagging-integrated-stat strong.status {
    align-items: center;
    display: flex;
    font-size: 0.78rem;
}

.accounting-tagging-live-status {
    align-content: center;
    grid-template-rows: 13px 22px 4px 14px auto;
    padding-block: 12px;
    row-gap: 4px;
}

.accounting-tagging-live-status > span {
    align-items: center;
    display: flex;
    gap: 6px;
}

.accounting-tagging-live-indicator {
    background: rgba(255, 255, 255, 0.52);
    border-radius: 50%;
    display: inline-block;
    height: 6px;
    width: 6px;
}

.accounting-tagging-live-indicator.is-active {
    animation: accounting-tagging-live-pulse 1.6s ease-out infinite;
    background: #75f0b5;
    box-shadow: 0 0 0 0 rgba(117, 240, 181, 0.52);
}

.accounting-tagging-live-status-heading {
    align-items: center;
    display: flex;
    gap: 10px;
    justify-content: space-between;
}

.accounting-tagging-live-status-heading > b {
    color: rgba(255, 255, 255, 0.8);
    font-size: 0.65rem;
}

.accounting-tagging-live-status-meta {
    align-items: center;
    display: flex;
    gap: 5px 10px;
    min-width: 0;
    overflow: hidden;
    padding-top: 2px;
    white-space: nowrap;
}

.accounting-tagging-live-status-meta > span {
    color: rgba(255, 255, 255, 0.68);
    font-size: 0.52rem;
}

.accounting-tagging-live-status-meta b {
    color: rgba(255, 255, 255, 0.9);
    font-weight: 700;
    margin-right: 2px;
}

@keyframes accounting-tagging-live-pulse {
    70% {
        box-shadow: 0 0 0 5px rgba(117, 240, 181, 0);
    }
    100% {
        box-shadow: 0 0 0 0 rgba(117, 240, 181, 0);
    }
}

.accounting-tagging-integrated-stat small {
    align-self: start;
    color: rgba(255, 255, 255, 0.64);
    font-size: 0.62rem;
    margin: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.accounting-tagging-integrated-progress {
    align-self: center;
    background: rgba(255, 255, 255, 0.18);
    border-radius: 20px;
    height: 4px;
    margin: 0;
    overflow: hidden;
    width: 100%;
}

.accounting-tagging-integrated-progress span {
    background: #60dfd2;
    border-radius: inherit;
    display: block;
    height: 100%;
}

.accounting-tagging-integrated-progress.is-placeholder {
    visibility: hidden;
}

.accounting-tagging-integrated-refresh {
    align-self: center;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.24);
    border-radius: 7px;
    color: #fff;
    cursor: pointer;
    font: inherit;
    font-size: 0.67rem;
    font-weight: 700;
    margin: 0 14px;
    padding: 7px 10px;
}

.accounting-tagging-integrated-refresh:hover {
    background: rgba(255, 255, 255, 0.2);
}

.accounting-tagging-integrated-more {
    background: rgba(4, 30, 40, 0.13);
    border-top: 1px solid rgba(255, 255, 255, 0.12);
    grid-column: 1 / -1;
}

.accounting-tagging-integrated-more summary {
    color: rgba(255, 255, 255, 0.78);
    cursor: pointer;
    font-size: 0.66rem;
    font-weight: 700;
    list-style-position: inside;
    padding: 7px 18px;
}

.accounting-tagging-integrated-more-grid {
    display: grid;
    gap: 9px;
    grid-template-columns: repeat(4, minmax(150px, 1fr)) minmax(230px, 1.3fr);
    padding: 4px 18px 14px;
}

.accounting-tagging-integrated-insight,
.accounting-tagging-integrated-jobs {
    background: rgba(255, 255, 255, 0.11);
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 7px;
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 8px 10px;
}

.accounting-tagging-integrated-insight span,
.accounting-tagging-integrated-jobs > span {
    color: rgba(255, 255, 255, 0.58);
    font-size: 0.58rem;
    font-weight: 700;
    text-transform: uppercase;
}

.accounting-tagging-integrated-insight strong,
.accounting-tagging-integrated-jobs strong {
    font-size: 0.67rem;
    margin-top: 3px;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.accounting-tagging-integrated-jobs {
    grid-column: 5;
    grid-row: 1 / span 2;
}

.accounting-tagging-integrated-jobs strong {
    align-items: center;
    display: flex;
    gap: 7px;
    justify-content: space-between;
}

.accounting-tagging-integrated-jobs small {
    color: rgba(255, 255, 255, 0.54);
    font-size: 0.56rem;
    font-weight: 400;
}

@media (max-width: 1180px) {
    .accounting-tagging-integrated-insights {
        grid-template-columns: minmax(240px, 1.4fr) repeat(2, 1fr);
    }

    .accounting-tagging-integrated-refresh {
        margin: 12px 14px;
    }

    .accounting-tagging-integrated-more-grid {
        grid-template-columns: repeat(2, minmax(150px, 1fr));
    }

    .accounting-tagging-integrated-jobs {
        grid-column: 1 / -1;
        grid-row: auto;
    }
}

/*
 * Native XAF Actions & Configuration styling.
 * The custom class is applied only to ActionsAndSetupGroup. The Item13
 * Rule Builder & Results group (and therefore its ListView) is a sibling and
 * intentionally remains outside this selector.
 */
.accounting-tagging-config-shell {
    --ac-config-content-width: 1600px;
    --ac-config-accent: var(--dxds-primary-90, #27809b);
    --ac-config-border: var(--dxds-secondary-50, #d8e0e4);
    --ac-config-muted: var(--dxds-secondary-120, #667782);
    --ac-config-soft: var(--dxds-primary-20, #edf7f8);
    --ac-config-surface: var(--dxds-secondary-20, #fff);
    --ac-config-surface-muted: var(--dxds-secondary-30, #f6f8f9);
    --ac-config-text: var(--dxds-secondary-160, #20313a);
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    color: var(--ac-config-text);
    min-width: 0;
    overflow: visible;
    padding: 0;
}

body.dxbl-theme-dark .accounting-tagging-config-shell {
    --ac-config-accent: var(--dxds-primary-70, #66c7d0);
    --ac-config-border: var(--dxds-secondary-130, #4d5b62);
    --ac-config-muted: var(--dxds-secondary-70, #a6b2b8);
    --ac-config-soft: color-mix(
        in srgb,
        var(--dxds-primary-90, #27809b) 18%,
        var(--dxds-secondary-150, #252f34));
    --ac-config-surface: var(--dxds-secondary-150, #252f34);
    --ac-config-surface-muted: var(--dxds-secondary-140, #303b40);
    --ac-config-text: var(--dxds-secondary-20, #f2f5f6);
}

.accounting-tagging-config-shell.dxbl-group,
.accounting-tagging-config-shell > .dxbl-group {
    background: var(--ac-config-surface);
    border: 1px solid var(--ac-config-border);
    border-radius: 13px;
    box-shadow: 0 7px 22px rgba(24, 45, 55, 0.08);
    box-sizing: border-box;
    max-width: 100%;
    min-width: 0;
    overflow: clip;
}

body.dxbl-theme-dark
    .accounting-tagging-config-shell.dxbl-group,
body.dxbl-theme-dark
    .accounting-tagging-config-shell
    > .dxbl-group {
    box-shadow: 0 9px 28px rgba(0, 0, 0, 0.28);
}

.accounting-tagging-config-shell
    .dxbl-group
    .dxbl-group,
.accounting-tagging-config-shell
    > .dxbl-group
    .dxbl-group {
    background: transparent;
    border-color: transparent;
    border-radius: 0;
    box-shadow: none;
}

.accounting-tagging-config-shell.dxbl-group
    > .dxbl-group-header,
.accounting-tagging-config-shell
    > .dxbl-group
    > .dxbl-group-header {
    background: var(--ac-config-surface-muted);
    border-radius: 12px 12px 0 0;
    border-color: var(--ac-config-border);
    color: var(--ac-config-text);
}

.accounting-tagging-config-shell
    > .dxbl-group-header
    .dxbl-text,
.accounting-tagging-config-shell
    > .dxbl-group
    > .dxbl-group-header
    .dxbl-text {
    color: var(--ac-config-text);
    font-size: 0.78rem;
    font-weight: 750;
    letter-spacing: 0.01em;
}

.accounting-tagging-config-shell [role="tablist"] {
    background: var(--ac-config-surface-muted);
    border-bottom: 1px solid var(--ac-config-border);
    gap: 3px;
    padding: 7px 9px 0;
}

.accounting-tagging-config-shell [role="tab"] {
    border: 1px solid transparent;
    border-radius: 8px 8px 0 0;
    color: var(--ac-config-muted);
    font-size: 0.7rem;
    font-weight: 650;
    min-height: 35px;
    transition:
        background-color 0.15s ease,
        border-color 0.15s ease,
        color 0.15s ease;
}

.accounting-tagging-config-shell [role="tab"]:hover {
    background: var(--ac-config-soft);
    color: var(--ac-config-accent);
}

.accounting-tagging-config-shell [role="tab"][aria-selected="true"] {
    background: var(--ac-config-surface);
    border-color: var(--ac-config-border);
    border-bottom-color: var(--ac-config-surface);
    color: var(--ac-config-accent);
}

/*
 * Modal-native classification workflow. The first four tabs are the ordered
 * process; Advanced Settings remains available as a separate utility.
 */
.accounting-tagging-config-shell.dxbl-group,
.accounting-tagging-config-shell > .dxbl-group {
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
    overflow: visible;
}

.accounting-tagging-config-shell > .dxbl-group-header,
.accounting-tagging-config-shell
    > .dxbl-group
    > .dxbl-group-header {
    display: none !important;
}

.accounting-tagging-process-tabs {
    min-width: 0;
    overflow: visible;
}

.accounting-tagging-process-tabs > [role="tablist"],
.accounting-tagging-process-tabs
    > .dxbl-tabs-header
    > [role="tablist"] {
    align-items: center;
    background: var(--ac-config-surface);
    border: 1px solid var(--ac-config-border);
    border-radius: 12px 12px 0 0;
    box-shadow: 0 5px 16px rgba(24, 45, 55, 0.06);
    display: flex;
    gap: 5px;
    overflow-x: auto;
    padding: 8px 10px;
    scrollbar-width: thin;
}

body.dxbl-theme-dark
    .accounting-tagging-process-tabs
    > [role="tablist"],
body.dxbl-theme-dark
    .accounting-tagging-process-tabs
    > .dxbl-tabs-header
    > [role="tablist"] {
    box-shadow: 0 7px 20px rgba(0, 0, 0, 0.2);
}

.accounting-tagging-process-tabs > [role="tablist"]::before,
.accounting-tagging-process-tabs
    > .dxbl-tabs-header
    > [role="tablist"]::before {
    color: var(--ac-config-muted);
    content: "Classification workflow";
    flex: 0 0 auto;
    font-size: 0.62rem;
    font-weight: 750;
    letter-spacing: 0.08em;
    margin: 0 8px 0 2px;
    text-transform: uppercase;
}

.accounting-tagging-process-tabs
    > [role="tablist"]
    > [role="tab"],
.accounting-tagging-process-tabs
    > .dxbl-tabs-header
    > [role="tablist"]
    > [role="tab"] {
    align-items: center;
    border: 1px solid transparent;
    border-radius: 9px;
    display: inline-flex;
    flex: 0 0 auto;
    gap: 7px;
    min-height: 39px;
    padding: 6px 10px;
    white-space: nowrap;
}

.accounting-tagging-process-tabs
    > [role="tablist"]
    > [role="tab"]:nth-child(-n + 4)::before,
.accounting-tagging-process-tabs
    > .dxbl-tabs-header
    > [role="tablist"]
    > [role="tab"]:nth-child(-n + 4)::before {
    align-items: center;
    background: var(--ac-config-surface-muted);
    border: 1px solid var(--ac-config-border);
    border-radius: 999px;
    color: var(--ac-config-muted);
    content: counter(accounting-tagging-step);
    counter-increment: accounting-tagging-step;
    display: inline-flex;
    flex: 0 0 24px;
    font-size: 0.62rem;
    font-weight: 800;
    height: 24px;
    justify-content: center;
    width: 24px;
}

.accounting-tagging-process-tabs > [role="tablist"],
.accounting-tagging-process-tabs
    > .dxbl-tabs-header
    > [role="tablist"] {
    counter-reset: accounting-tagging-step;
}

.accounting-tagging-process-tabs
    > [role="tablist"]
    > [role="tab"]:nth-child(-n + 4)[aria-selected="true"],
.accounting-tagging-process-tabs
    > .dxbl-tabs-header
    > [role="tablist"]
    > [role="tab"]:nth-child(-n + 4)[aria-selected="true"] {
    background: var(--ac-config-soft);
    border-color: color-mix(
        in srgb,
        var(--ac-config-accent) 42%,
        var(--ac-config-border));
    color: var(--ac-config-accent);
}

.accounting-tagging-process-tabs
    > [role="tablist"]
    > [role="tab"]:nth-child(-n + 4)[aria-selected="true"]::before,
.accounting-tagging-process-tabs
    > .dxbl-tabs-header
    > [role="tablist"]
    > [role="tab"]:nth-child(-n + 4)[aria-selected="true"]::before {
    background: var(--ac-config-accent);
    border-color: var(--ac-config-accent);
    color: var(--ac-config-surface);
}

.accounting-tagging-process-tabs
    > [role="tablist"]
    > [role="tab"]:nth-child(5),
.accounting-tagging-process-tabs
    > .dxbl-tabs-header
    > [role="tablist"]
    > [role="tab"]:nth-child(5) {
    background: var(--ac-config-surface-muted);
    border-color: var(--ac-config-border);
    margin-left: auto;
}

.accounting-tagging-process-tabs > [role="tabpanel"],
.accounting-tagging-process-tabs
    > .dxbl-tabs-content
    > [role="tabpanel"] {
    background: var(--ac-config-surface);
    border: 1px solid var(--ac-config-border);
    border-radius: 0 0 12px 12px;
    box-shadow: 0 7px 20px rgba(24, 45, 55, 0.07);
    color: var(--ac-config-text);
    padding: 14px !important;
}

body.dxbl-theme-dark
    .accounting-tagging-process-tabs
    > [role="tabpanel"],
body.dxbl-theme-dark
    .accounting-tagging-process-tabs
    > .dxbl-tabs-content
    > [role="tabpanel"] {
    box-shadow: 0 9px 24px rgba(0, 0, 0, 0.24);
}

.accounting-tagging-process-panel,
.accounting-tagging-process-utility-panel {
    min-width: 0;
    width: 100%;
}

/*
 * XAF inserts an additional layout wrapper around TabbedGroup controls.
 * Identify the five-item process rail by its tab count so nested AI and
 * instruction tab sets retain their own styling.
 */
.accounting-tagging-process-tabs
    [role="tablist"]:has(> [role="tab"]:nth-child(5)) {
    align-items: center;
    background: var(--ac-config-surface);
    border: 1px solid var(--ac-config-border);
    border-radius: 12px 12px 0 0;
    box-shadow: 0 5px 16px rgba(24, 45, 55, 0.06);
    counter-reset: accounting-tagging-step;
    display: flex;
    gap: 5px;
    overflow-x: auto;
    padding: 8px 10px;
    scrollbar-width: thin;
}

.accounting-tagging-process-tabs
    [role="tablist"]:has(> [role="tab"]:nth-child(5))::before {
    color: var(--ac-config-muted);
    content: "Classification workflow";
    flex: 0 0 auto;
    font-size: 0.62rem;
    font-weight: 750;
    letter-spacing: 0.08em;
    margin: 0 8px 0 2px;
    text-transform: uppercase;
}

.accounting-tagging-process-tabs
    [role="tablist"]:has(> [role="tab"]:nth-child(5))
    > [role="tab"] {
    align-items: center;
    border: 1px solid transparent;
    border-radius: 9px;
    display: inline-flex;
    flex: 0 0 auto;
    gap: 7px;
    min-height: 40px;
    padding: 6px 11px;
    white-space: nowrap;
}

.accounting-tagging-process-tabs
    [role="tablist"]:has(> [role="tab"]:nth-child(5))
    > [role="tab"]:nth-child(-n + 4)::before {
    align-items: center;
    background: var(--ac-config-surface-muted);
    border: 1px solid var(--ac-config-border);
    border-radius: 999px;
    color: var(--ac-config-muted);
    content: counter(accounting-tagging-step);
    counter-increment: accounting-tagging-step;
    display: inline-flex;
    flex: 0 0 24px;
    font-size: 0.62rem;
    font-weight: 800;
    height: 24px;
    justify-content: center;
    width: 24px;
}

.accounting-tagging-process-tabs
    [role="tablist"]:has(> [role="tab"]:nth-child(5))
    > [role="tab"]:nth-child(-n + 4)[aria-selected="true"] {
    background: var(--ac-config-soft);
    border-color: color-mix(
        in srgb,
        var(--ac-config-accent) 42%,
        var(--ac-config-border));
    color: var(--ac-config-accent);
}

.accounting-tagging-process-tabs
    [role="tablist"]:has(> [role="tab"]:nth-child(5))
    > [role="tab"]:nth-child(-n + 4)[aria-selected="true"]::before {
    background: var(--ac-config-accent);
    border-color: var(--ac-config-accent);
    color: var(--ac-config-surface);
}

.accounting-tagging-process-tabs
    [role="tablist"]:has(> [role="tab"]:nth-child(5))
    > [role="tab"]:nth-child(5) {
    background: var(--ac-config-surface-muted);
    border-color: var(--ac-config-border);
    margin-left: auto;
}

.accounting-tagging-process-tabs
    [role="tabpanel"]:has(.accounting-tagging-process-panel),
.accounting-tagging-process-tabs
    [role="tabpanel"]:has(.accounting-tagging-process-utility-panel) {
    background: var(--ac-config-surface);
    border: 1px solid var(--ac-config-border);
    border-radius: 0 0 12px 12px;
    box-shadow: 0 7px 20px rgba(24, 45, 55, 0.07);
    padding: 14px !important;
}

/*
 * Banner-aligned workflow frame. Exclude the nested Advanced Settings and
 * instruction tab sets so they keep their compact settings appearance.
 */
.accounting-tagging-process-tabs {
    background:
        radial-gradient(
            circle at 88% -80%,
            rgba(74, 220, 202, 0.24),
            transparent 43%),
        linear-gradient(108deg, #0b3042 0%, #0d5261 54%, #087c76 100%);
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 14px;
    box-shadow:
        0 10px 28px rgba(12, 51, 68, 0.14),
        inset 0 1px 0 rgba(255, 255, 255, 0.08);
    padding: 1px;
}

.accounting-tagging-process-tabs
    [role="tablist"]:not(
        .accounting-tagging-advanced-tabs [role="tablist"]):not(
        .accounting-tagging-instruction-tabs [role="tablist"]) {
    background: transparent !important;
    border: 0 !important;
    border-radius: 13px 13px 0 0 !important;
    box-shadow: none !important;
    color: #fff;
    min-height: 58px;
    padding: 8px 11px !important;
}

.accounting-tagging-process-tabs
    [role="tablist"]:not(
        .accounting-tagging-advanced-tabs [role="tablist"]):not(
        .accounting-tagging-instruction-tabs [role="tablist"])
    [role="tab"] {
    background: transparent !important;
    border: 1px solid transparent !important;
    border-radius: 9px !important;
    color: rgba(255, 255, 255, 0.74) !important;
    min-height: 40px;
    padding: 7px 11px !important;
}

.accounting-tagging-process-tabs
    [role="tablist"]:not(
        .accounting-tagging-advanced-tabs [role="tablist"]):not(
        .accounting-tagging-instruction-tabs [role="tablist"])
    [role="tab"]:hover {
    background: rgba(255, 255, 255, 0.09) !important;
    border-color: rgba(255, 255, 255, 0.12) !important;
    color: #fff !important;
}

.accounting-tagging-process-tabs
    [role="tablist"]:not(
        .accounting-tagging-advanced-tabs [role="tablist"]):not(
        .accounting-tagging-instruction-tabs [role="tablist"])
    [role="tab"][aria-selected="true"] {
    background: rgba(255, 255, 255, 0.14) !important;
    border-color: rgba(255, 255, 255, 0.28) !important;
    box-shadow:
        0 5px 14px rgba(0, 0, 0, 0.14),
        inset 0 -3px 0 #65dfd1 !important;
    color: #fff !important;
}

.accounting-tagging-process-tabs
    [role="tablist"]:not(
        .accounting-tagging-advanced-tabs [role="tablist"]):not(
        .accounting-tagging-instruction-tabs [role="tablist"])
    [role="tab"]::before {
    background: rgba(255, 255, 255, 0.1) !important;
    border-color: rgba(255, 255, 255, 0.2) !important;
    color: rgba(255, 255, 255, 0.82) !important;
}

.accounting-tagging-process-tabs
    [role="tablist"]:not(
        .accounting-tagging-advanced-tabs [role="tablist"]):not(
        .accounting-tagging-instruction-tabs [role="tablist"])
    [role="tab"][aria-selected="true"]::before {
    background: #65dfd1 !important;
    border-color: #65dfd1 !important;
    color: #0b3a48 !important;
}

.accounting-tagging-process-tabs
    [role="tabpanel"]:has(.accounting-tagging-process-panel),
.accounting-tagging-process-tabs
    [role="tabpanel"]:has(.accounting-tagging-process-utility-panel) {
    background:
        linear-gradient(
            180deg,
            color-mix(in srgb, var(--ac-config-surface) 97%, #dff5f2),
            var(--ac-config-surface)) !important;
    border: 0 !important;
    border-radius: 0 0 13px 13px !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1) !important;
}

.accounting-tagging-config-shell [role="tabpanel"] {
    background: var(--ac-config-surface);
    color: var(--ac-config-text);
    padding: 10px 12px 12px;
}

/*
 * Keep configuration property rows comfortable on ultra-wide displays.
 * The tab surface stays full width, while its generated XAF form content
 * remains fluid up to the working-width limit.
 */
.accounting-tagging-config-shell [role="tabpanel"] > * {
    margin-inline: auto;
    max-width: var(--ac-config-content-width);
    min-width: 0;
    width: 100%;
}

.accounting-tagging-config-shell *,
.accounting-tagging-results-shell * {
    box-sizing: border-box;
}

.accounting-tagging-config-shell .dxbl-fl,
.accounting-tagging-config-shell .dxbl-group,
.accounting-tagging-config-shell [role="tabpanel"] {
    max-width: 100%;
    min-width: 0;
}

.accounting-tagging-config-shell button[data-action-name] {
    border-radius: 7px;
    font-size: 0.69rem;
    font-weight: 650;
    min-height: 32px;
    transition:
        background-color 0.15s ease,
        border-color 0.15s ease,
        box-shadow 0.15s ease;
}

.accounting-tagging-config-shell button[data-action-name]:hover:not(:disabled) {
    border-color: var(--ac-config-accent);
    box-shadow: 0 3px 9px
        color-mix(in srgb, var(--ac-config-accent) 18%, transparent);
}

.accounting-tagging-config-shell .dxbl-text-edit,
.accounting-tagging-config-shell .dxbl-dropdown-edit,
.accounting-tagging-config-shell .dxbl-tag-box {
    border-radius: 7px;
    max-width: 100%;
}

/*
 * AI Classification action workspace. These are the original XAF action and
 * property ViewItems, arranged into responsive functional sections.
 */
.accounting-tagging-priority-columns {
    margin-bottom: 12px;
}

.accounting-tagging-classification-sections,
.accounting-tagging-classification-sections > .dxbl-fl,
.accounting-tagging-classification-sections > .dxbl-fl-group,
.accounting-tagging-classification-sections > .row,
.accounting-tagging-classification-sections
    :is(.row, .dxbl-fl-row):has(> .accounting-tagging-action-section) {
    align-items: stretch;
    column-gap: 12px;
    display: flex;
    flex-wrap: wrap;
    max-width: 100%;
    min-width: 0;
    padding: 0 !important;
    row-gap: 12px;
    width: 100%;
}

.accounting-tagging-action-section {
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    height: auto !important;
    margin: 0 !important;
    max-width: none !important;
    min-width: 230px;
    overflow: visible;
    padding: 0 !important;
    width: auto !important;
}

.accounting-tagging-action-section > .dxbl-group {
    background: var(--ac-config-surface) !important;
    border: 1px solid var(--ac-config-border) !important;
    border-radius: 10px !important;
    box-shadow: 0 3px 12px rgba(24, 45, 55, 0.05) !important;
    height: 100%;
    overflow: clip;
}

.accounting-tagging-action-section-generate {
    flex: 1.5 1 calc(60% - 6px) !important;
}

.accounting-tagging-action-section-review {
    flex: 1 1 calc(40% - 6px) !important;
}

.accounting-tagging-classification-settings {
    flex: 1 0 100% !important;
    min-height: 0;
}

.accounting-tagging-action-section > .dxbl-group-header,
.accounting-tagging-action-section
    > .dxbl-group
    > .dxbl-group-header {
    background:
        linear-gradient(
            90deg,
            rgba(23, 88, 106, 0.13),
            rgba(21, 147, 138, 0.08)) !important;
    border: 0 !important;
    border-bottom: 1px solid rgba(23, 117, 131, 0.24) !important;
    border-radius: 9px 9px 0 0 !important;
    color: #17586a;
    margin-bottom: 10px;
    min-height: 40px;
    padding: 0 12px !important;
}

.accounting-tagging-action-section
    > .dxbl-group-header
    .dxbl-text,
.accounting-tagging-action-section
    > .dxbl-group
    > .dxbl-group-header
    .dxbl-text {
    color: #17586a;
    font-size: 0.72rem;
    font-weight: 750;
    letter-spacing: 0.01em;
    padding: 0 !important;
}

body.dxbl-theme-dark .accounting-tagging-action-section {
    box-shadow: none !important;
}

body.dxbl-theme-dark
    .accounting-tagging-action-section
    > .dxbl-group {
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.17) !important;
}

.accounting-tagging-action-section-generate
    > .dxbl-group-header
    .dxbl-text,
.accounting-tagging-action-section-generate
    > .dxbl-group
    > .dxbl-group-header
    .dxbl-text {
    color: #17586a;
}

body.dxbl-theme-dark
    .accounting-tagging-action-section
    > .dxbl-group
    > .dxbl-group-header {
    background:
        linear-gradient(
            90deg,
            rgba(50, 130, 144, 0.3),
            rgba(35, 151, 139, 0.2)) !important;
    border-bottom-color: rgba(110, 211, 201, 0.28) !important;
    color: #9fe1da;
}

body.dxbl-theme-dark
    .accounting-tagging-action-section
    > .dxbl-group
    > .dxbl-group-header
    .dxbl-text {
    color: #9fe1da;
}

.accounting-tagging-action-section [data-action-name] {
    max-width: none !important;
    margin: 3px 5px 3px 0;
    width: auto !important;
    white-space: nowrap;
}

.accounting-tagging-action-section
    button[data-action-name]
    > span:not([class*="icon"]):not([class*="image"]) {
    display: inline-flex !important;
    max-width: none !important;
    visibility: visible !important;
    width: auto !important;
}

.accounting-tagging-action-section .dxbl-toolbar-item {
    flex: 0 0 auto !important;
    max-width: none !important;
    width: auto !important;
}

.accounting-tagging-action-section .dxbl-toolbar,
.accounting-tagging-action-section [role="toolbar"] {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    gap: 2px;
}

.accounting-tagging-classification-settings .dxbl-fl-item {
    flex: 0 1 320px;
    margin-bottom: 8px;
    min-width: 0;
    width: min(100%, 320px);
}

.accounting-tagging-classification-settings .dxbl-fl-cpt,
.accounting-tagging-classification-settings label {
    color: var(--ac-config-muted);
    font-size: 0.66rem;
    font-weight: 650;
    margin-bottom: 4px;
}

.accounting-tagging-classification-settings .dxbl-text-edit,
.accounting-tagging-classification-settings .dxbl-dropdown-edit,
.accounting-tagging-classification-settings .dxbl-spin-edit {
    max-width: 100%;
    width: 100%;
}

/*
 * Advanced Options keeps the native XAF editors and actions, but presents
 * their generated layout as a compact, responsive settings workspace.
 */
.accounting-tagging-advanced-options {
    background: var(--ac-config-surface-muted) !important;
    border: 1px solid var(--ac-config-border) !important;
    border-radius: 11px !important;
    overflow: clip;
}

.accounting-tagging-advanced-options > .dxbl-group-header,
.accounting-tagging-advanced-options
    > .dxbl-group
    > .dxbl-group-header {
    background: var(--ac-config-surface) !important;
    border-bottom: 1px solid var(--ac-config-border) !important;
    min-height: 42px;
    padding-inline: 13px;
}

.accounting-tagging-advanced-tabs [role="tablist"] {
    align-items: center;
    background: transparent;
    gap: 5px;
    overflow-x: auto;
    padding: 8px 10px 0;
    scrollbar-width: thin;
}

.accounting-tagging-advanced-tabs [role="tab"] {
    background: transparent;
    border-radius: 8px 8px 0 0;
    flex: 0 0 auto;
    min-height: 38px;
    padding-inline: 14px;
}

.accounting-tagging-advanced-tabs > [role="tabpanel"],
.accounting-tagging-advanced-tabs
    > .dxbl-tabs-content
    > [role="tabpanel"] {
    padding: 14px;
}

.accounting-tagging-advanced-compact-tab,
.accounting-tagging-advanced-ai-tab,
.accounting-tagging-matching-settings,
.accounting-tagging-advanced-actions {
    background: var(--ac-config-surface) !important;
    border: 1px solid var(--ac-config-border) !important;
    border-radius: 10px !important;
    padding: 14px !important;
}

.accounting-tagging-advanced-primary-field {
    max-width: 880px !important;
    min-width: 260px;
    width: min(100%, 880px) !important;
}

.accounting-tagging-advanced-ai-content {
    display: flex;
    flex-direction: column;
    gap: 13px;
}

.accounting-tagging-instruction-tabs {
    background: var(--ac-config-surface-muted) !important;
    border: 1px solid var(--ac-config-border) !important;
    border-radius: 10px !important;
    overflow: clip;
}

.accounting-tagging-instruction-tabs [role="tablist"] {
    background: var(--ac-config-surface-muted);
    gap: 4px;
    overflow-x: auto;
    padding: 7px 8px 0;
    scrollbar-width: thin;
}

.accounting-tagging-instruction-tabs [role="tab"] {
    border-radius: 7px 7px 0 0;
    flex: 0 0 auto;
    min-height: 36px;
    padding-inline: 12px;
}

.accounting-tagging-instruction-tabs [role="tabpanel"] {
    background: var(--ac-config-surface);
    padding: 13px;
}

.accounting-tagging-enrichment-panel {
    display: flex;
    flex-direction: column;
    gap: 11px;
}

.accounting-tagging-advanced-toggle,
.accounting-tagging-optimisation-toggle {
    background: var(--ac-config-surface-muted);
    border: 1px solid var(--ac-config-border);
    border-radius: 9px;
    min-width: 0;
    padding: 10px 12px !important;
}

.accounting-tagging-advanced-toggle {
    max-width: 300px !important;
    width: min(100%, 300px) !important;
}

.accounting-tagging-advanced-toggle .dxbl-fl,
.accounting-tagging-advanced-toggle .dxbl-fl-row,
.accounting-tagging-advanced-toggle .dxbl-fl-item,
.accounting-tagging-optimisation-toggle .dxbl-fl,
.accounting-tagging-optimisation-toggle .dxbl-fl-row,
.accounting-tagging-optimisation-toggle .dxbl-fl-item {
    align-items: center;
    display: flex;
    flex-wrap: nowrap;
    gap: 9px;
    margin: 0;
    min-height: 28px;
    padding: 0;
}

.accounting-tagging-advanced-toggle .dxbl-fl-cpt,
.accounting-tagging-advanced-toggle label,
.accounting-tagging-optimisation-toggle .dxbl-fl-cpt,
.accounting-tagging-optimisation-toggle label {
    flex: 1 1 auto;
    font-weight: 650;
    margin: 0;
    order: 0;
    padding: 0;
}

.accounting-tagging-advanced-toggle .dxbl-checkbox,
.accounting-tagging-advanced-toggle input[type="checkbox"],
.accounting-tagging-optimisation-toggle .dxbl-checkbox,
.accounting-tagging-optimisation-toggle input[type="checkbox"] {
    flex: 0 0 auto;
    margin: 0;
    order: 1;
}

.accounting-tagging-instruction-editor textarea {
    max-height: 360px !important;
    min-height: clamp(180px, 24vh, 280px) !important;
    resize: vertical;
}

.accounting-tagging-matching-levels {
    margin-bottom: 12px;
}

.accounting-tagging-level-card {
    background: var(--ac-config-surface-muted) !important;
    border: 1px solid var(--ac-config-border) !important;
    border-radius: 10px !important;
    min-width: 145px;
    padding: 11px 12px !important;
    transition:
        border-color 0.15s ease,
        box-shadow 0.15s ease;
}

.accounting-tagging-level-card:hover {
    border-color: var(--ac-config-accent) !important;
    box-shadow: 0 4px 12px
        color-mix(in srgb, var(--ac-config-accent) 12%, transparent);
}

.accounting-tagging-level-card .dxbl-fl-row,
.accounting-tagging-level-card .dxbl-fl-item {
    margin: 0;
    min-width: 0;
}

.accounting-tagging-level-card .dxbl-fl-cpt,
.accounting-tagging-level-card label {
    color: var(--ac-config-text);
    font-weight: 650;
}

.accounting-tagging-optimisations {
    background: transparent !important;
    border: 0 !important;
    border-top: 1px solid var(--ac-config-border) !important;
    border-radius: 0 !important;
    margin-top: 4px;
    padding-top: 12px !important;
}

.accounting-tagging-optimisations > .dxbl-group-header,
.accounting-tagging-optimisations
    > .dxbl-group
    > .dxbl-group-header {
    background: transparent !important;
    border: 0 !important;
    min-height: 30px;
    padding: 0 0 8px;
}

.accounting-tagging-advanced-actions button[data-action-name] {
    margin: 4px;
}

.accounting-tagging-reset-data {
    align-self: flex-end !important;
    flex: 0 0 auto !important;
    margin-left: 0;
    max-width: max-content !important;
    min-width: 0;
    width: auto !important;
}

.accounting-tagging-data-source-row,
.accounting-tagging-data-source-row > .dxbl-fl,
.accounting-tagging-data-source-row > .dxbl-fl-group,
.accounting-tagging-data-source-row > .row,
.accounting-tagging-data-source-row
    :is(.row, .dxbl-fl-row):has(> .accounting-tagging-data-source-field) {
    align-items: stretch;
    column-gap: 10px;
    display: flex;
    flex-wrap: nowrap;
    max-width: 100%;
    min-width: 0;
    width: 100%;
}

.accounting-tagging-data-source-field {
    flex: 1 1 0 !important;
    max-width: none !important;
    min-width: 240px;
    width: auto !important;
}

.accounting-tagging-transform-data {
    align-self: flex-end !important;
    flex: 0 0 auto !important;
    max-width: max-content !important;
    min-width: max-content;
    width: auto !important;
}

.accounting-tagging-transform-data
    button[data-action-name] {
    white-space: nowrap;
}

.accounting-tagging-reset-data .dxbl-fl,
.accounting-tagging-reset-data .dxbl-fl-row,
.accounting-tagging-reset-data .dxbl-fl-item {
    align-items: center;
    display: flex;
    flex-wrap: nowrap;
    gap: 9px;
    margin: 0;
    min-height: 38px;
    padding: 0;
}

.accounting-tagging-reset-data .dxbl-fl-cpt,
.accounting-tagging-reset-data label {
    color: var(--ac-config-text);
    flex: 0 0 auto;
    font-size: 0.7rem;
    font-weight: 650;
    margin: 0;
    padding: 0;
    white-space: nowrap;
}

.accounting-tagging-reset-data .dxbl-checkbox,
.accounting-tagging-reset-data input[type="checkbox"] {
    flex: 0 0 auto;
    margin: 0;
}

@media (max-width: 900px) {
    .accounting-tagging-process-tabs
        [role="tablist"]:has(> [role="tab"]:nth-child(5)) {
        border-radius: 10px 10px 0 0;
        justify-content: flex-start;
        padding: 7px;
    }

    .accounting-tagging-process-tabs
        [role="tablist"]:has(> [role="tab"]:nth-child(5))::before {
        display: none;
    }

    .accounting-tagging-process-tabs
        [role="tablist"]:has(> [role="tab"]:nth-child(5))
        > [role="tab"]:nth-child(5) {
        margin-left: 0;
    }

    .accounting-tagging-process-tabs > [role="tablist"],
    .accounting-tagging-process-tabs
        > .dxbl-tabs-header
        > [role="tablist"] {
        border-radius: 10px 10px 0 0;
        justify-content: flex-start;
        padding: 7px;
    }

    .accounting-tagging-process-tabs > [role="tablist"]::before,
    .accounting-tagging-process-tabs
        > .dxbl-tabs-header
        > [role="tablist"]::before {
        display: none;
    }

    .accounting-tagging-process-tabs
        > [role="tablist"]
        > [role="tab"]:nth-child(5),
    .accounting-tagging-process-tabs
        > .dxbl-tabs-header
        > [role="tablist"]
        > [role="tab"]:nth-child(5) {
        margin-left: 0;
    }

    .accounting-tagging-process-tabs > [role="tabpanel"],
    .accounting-tagging-process-tabs
        > .dxbl-tabs-content
        > [role="tabpanel"] {
        padding: 10px !important;
    }

    .accounting-tagging-classification-sections,
    .accounting-tagging-classification-sections > .dxbl-fl,
    .accounting-tagging-classification-sections > .dxbl-fl-group,
    .accounting-tagging-classification-sections > .row,
    .accounting-tagging-classification-sections
        :is(.row, .dxbl-fl-row):has(> .accounting-tagging-action-section) {
        flex-wrap: wrap;
        row-gap: 10px;
    }

    .accounting-tagging-action-section-generate,
    .accounting-tagging-action-section-review,
    .accounting-tagging-classification-settings {
        flex-basis: 100% !important;
        min-width: 100%;
    }

    .accounting-tagging-advanced-tabs > [role="tabpanel"],
    .accounting-tagging-advanced-tabs
        > .dxbl-tabs-content
        > [role="tabpanel"],
    .accounting-tagging-advanced-compact-tab,
    .accounting-tagging-advanced-ai-tab,
    .accounting-tagging-matching-settings,
    .accounting-tagging-advanced-actions {
        padding: 10px !important;
    }

    .accounting-tagging-advanced-primary-field,
    .accounting-tagging-advanced-toggle {
        max-width: 100% !important;
        min-width: 0;
        width: 100% !important;
    }

    .accounting-tagging-level-card,
    .accounting-tagging-optimisation-toggle {
        margin-bottom: 8px;
        min-width: 100%;
        width: 100% !important;
    }

    .accounting-tagging-data-source-row,
    .accounting-tagging-data-source-row > .dxbl-fl,
    .accounting-tagging-data-source-row > .dxbl-fl-group,
    .accounting-tagging-data-source-row > .row,
    .accounting-tagging-data-source-row
        :is(.row, .dxbl-fl-row):has(> .accounting-tagging-data-source-field) {
        flex-wrap: wrap;
    }

    .accounting-tagging-data-source-field {
        flex-basis: 100% !important;
        min-width: 100%;
    }

    .accounting-tagging-reset-data {
        margin-left: 0;
    }
}

/*
 * Final workflow shell: one neutral surface with a restrained process rail.
 * The selected step uses a simple underline and does not change on hover.
 */
.accounting-tagging-process-tabs {
    background: var(--ac-config-surface);
    border: 1px solid var(--ac-config-border);
    border-radius: 12px;
    box-shadow: 0 4px 14px rgba(24, 45, 55, 0.06);
    overflow: hidden;
    padding: 0;
}

body.dxbl-theme-dark .accounting-tagging-process-tabs {
    background: var(--ac-config-surface);
    border-color: var(--ac-config-border);
    box-shadow: 0 5px 16px rgba(0, 0, 0, 0.2);
}

.accounting-tagging-process-tabs
    [role="tablist"]:not(
        .accounting-tagging-advanced-tabs [role="tablist"]):not(
        .accounting-tagging-instruction-tabs [role="tablist"]) {
    background: var(--ac-config-surface-muted) !important;
    border: 0 !important;
    border-bottom: 1px solid var(--ac-config-border) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: var(--ac-config-text);
    gap: 4px;
    min-height: 52px;
    padding: 6px 10px 0 !important;
}

.accounting-tagging-process-tabs
    [role="tablist"]:not(
        .accounting-tagging-advanced-tabs [role="tablist"]):not(
        .accounting-tagging-instruction-tabs [role="tablist"])
    [role="tab"] {
    background: transparent !important;
    border: 0 !important;
    border-bottom: 2px solid transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: var(--ac-config-muted) !important;
    min-height: 45px;
    padding: 7px 12px 8px !important;
    transition:
        background-color 0.14s ease,
        border-bottom-color 0.14s ease,
        color 0.14s ease !important;
}

.accounting-tagging-process-tabs
    [role="tablist"]:not(
        .accounting-tagging-advanced-tabs [role="tablist"]):not(
        .accounting-tagging-instruction-tabs [role="tablist"])
    [role="tab"]:not([aria-selected="true"]):hover {
    background: var(--ac-config-soft) !important;
    border-bottom-color: transparent !important;
    box-shadow: none !important;
    color: var(--ac-config-accent) !important;
}

.accounting-tagging-process-tabs
    [role="tablist"]:not(
        .accounting-tagging-advanced-tabs [role="tablist"]):not(
        .accounting-tagging-instruction-tabs [role="tablist"])
    [role="tab"][aria-selected="true"],
.accounting-tagging-process-tabs
    [role="tablist"]:not(
        .accounting-tagging-advanced-tabs [role="tablist"]):not(
        .accounting-tagging-instruction-tabs [role="tablist"])
    [role="tab"][aria-selected="true"]:hover {
    background: transparent !important;
    border: 0 !important;
    border-bottom: 2px solid var(--ac-config-accent) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: var(--ac-config-accent) !important;
}

.accounting-tagging-process-tabs
    [role="tablist"]:not(
        .accounting-tagging-advanced-tabs [role="tablist"]):not(
        .accounting-tagging-instruction-tabs [role="tablist"])
    [role="tab"]::before {
    background: transparent !important;
    border-color: transparent !important;
    color: var(--ac-config-muted) !important;
}

.accounting-tagging-process-tabs
    [role="tablist"]:not(
        .accounting-tagging-advanced-tabs [role="tablist"]):not(
        .accounting-tagging-instruction-tabs [role="tablist"])
    [role="tab"][aria-selected="true"]::before {
    background: transparent !important;
    border-color: transparent !important;
    color: var(--ac-config-accent) !important;
}

.accounting-tagging-process-tabs
    .dxbl-tabs-content:has(.accounting-tagging-process-panel),
.accounting-tagging-process-tabs
    .dxbl-tabs-content:has(.accounting-tagging-process-utility-panel) {
    margin: 0 !important;
    padding: 0 !important;
}

.accounting-tagging-process-tabs
    [role="tabpanel"]:has(.accounting-tagging-process-panel),
.accounting-tagging-process-tabs
    [role="tabpanel"]:has(.accounting-tagging-process-utility-panel) {
    background: var(--ac-config-surface) !important;
    border: 0 !important;
    border-radius: 0 0 11px 11px !important;
    box-shadow: none !important;
    margin: 0 !important;
    width: 100% !important;
}

/*
 * Use the same DevExpress typography tokens as the Rule Builder toolbar.
 * This covers Import Taxonomy and every native action hosted in the process.
 */
.accounting-tagging-config-shell button[data-action-name] {
    font-family: var(--dxbl-btn-font-family) !important;
    font-size: var(--dxbl-btn-font-size) !important;
    font-weight: var(--dxbl-btn-font-weight) !important;
    line-height: var(--dxbl-btn-line-height) !important;
}

/*
 * The integrated project banner replaces the generated object caption.
 * Preserve the native modal close affordance and keep it at the far right.
 */
.dxbl-modal-content:has(.accounting-tagging-integrated-insights)
    > .dxbl-modal-header,
.dxbl-modal-content:has(.accounting-tagging-integrated-insights)
    > .dxbl-popup-header
    > .dxbl-modal-header,
.dxbl-modal-content:has(.accounting-tagging-integrated-insights)
    > .dxbl-modal-header
    .dxbl-modal-header-default,
.dxbl-modal-content:has(.accounting-tagging-integrated-insights)
    > .dxbl-popup-header
    > .dxbl-modal-header
    .dxbl-modal-header-default {
    flex-direction: row !important;
    justify-content: flex-end !important;
}

.dxbl-modal-content:has(.accounting-tagging-integrated-insights)
    > .dxbl-modal-header
    .dxbl-popup-header-button,
.dxbl-modal-content:has(.accounting-tagging-integrated-insights)
    > .dxbl-popup-header
    > .dxbl-modal-header
    .dxbl-popup-header-button {
    margin-left: auto !important;
    margin-right: 0 !important;
    order: 999 !important;
}

@media (max-width: 1680px) {
    .accounting-tagging-config-shell [role="tabpanel"] > * {
        max-width: 100%;
    }
}

/*
 * Rule Builder & Results / Job Queue tabbed shell. This styles the native
 * XAF container and tab chrome only; the nested ListViews keep their existing
 * DevExpress grid appearance and behavior.
 */
.accounting-tagging-results-shell {
    --ac-results-accent: var(--dxds-primary-90, #27809b);
    --ac-results-border: var(--dxds-secondary-50, #d8e0e4);
    --ac-results-muted: var(--dxds-secondary-120, #667782);
    --ac-results-soft: var(--dxds-primary-20, #edf7f8);
    --ac-results-surface: var(--dxds-secondary-20, #fff);
    --ac-results-surface-muted: var(--dxds-secondary-30, #f6f8f9);
    --ac-results-text: var(--dxds-secondary-160, #20313a);
    background: transparent;
    border: 0;
    box-shadow: none;
    color: var(--ac-results-text);
    max-width: 100%;
    min-width: 0;
    overflow: visible;
    padding: 0;
}

body.dxbl-theme-dark .accounting-tagging-results-shell {
    --ac-results-accent: var(--dxds-primary-70, #66c7d0);
    --ac-results-border: var(--dxds-secondary-130, #4d5b62);
    --ac-results-muted: var(--dxds-secondary-70, #a6b2b8);
    --ac-results-soft: color-mix(
        in srgb,
        var(--dxds-primary-90, #27809b) 18%,
        var(--dxds-secondary-150, #252f34));
    --ac-results-surface: var(--dxds-secondary-150, #252f34);
    --ac-results-surface-muted: var(--dxds-secondary-140, #303b40);
    --ac-results-text: var(--dxds-secondary-20, #f2f5f6);
}

.accounting-tagging-results-shell.dxbl-tabs,
.accounting-tagging-results-shell > .dxbl-tabs,
.accounting-tagging-results-shell > [role="tablist"] {
    max-width: 100%;
    min-width: 0;
}

.accounting-tagging-results-shell.dxbl-tabs,
.accounting-tagging-results-shell > .dxbl-tabs {
    background: var(--ac-results-surface);
    border: 1px solid var(--ac-results-border);
    border-radius: 13px;
    box-shadow: 0 7px 22px rgba(24, 45, 55, 0.08);
    overflow: clip;
}

body.dxbl-theme-dark
    .accounting-tagging-results-shell.dxbl-tabs,
body.dxbl-theme-dark
    .accounting-tagging-results-shell
    > .dxbl-tabs {
    box-shadow: 0 9px 28px rgba(0, 0, 0, 0.28);
}

.accounting-tagging-results-shell [role="tablist"] {
    background: var(--ac-results-surface-muted);
    border-bottom: 1px solid var(--ac-results-border);
    gap: 3px;
    padding: 7px 9px 0;
}

.accounting-tagging-results-shell [role="tab"] {
    border: 1px solid transparent;
    border-radius: 8px 8px 0 0;
    color: var(--ac-results-muted);
    font-size: 0.7rem;
    font-weight: 650;
    min-height: 35px;
    transition:
        background-color 0.15s ease,
        border-color 0.15s ease,
        color 0.15s ease;
}

.accounting-tagging-results-shell [role="tab"]:hover {
    background: var(--ac-results-soft);
    color: var(--ac-results-accent);
}

.accounting-tagging-results-shell
    [role="tab"][aria-selected="true"] {
    background: var(--ac-results-surface);
    border-color: var(--ac-results-border);
    border-bottom-color: var(--ac-results-surface);
    color: var(--ac-results-accent);
}

.accounting-tagging-results-shell [role="tabpanel"] {
    background: var(--ac-results-surface);
    color: var(--ac-results-text);
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
    padding: 10px 12px 12px;
}

.accounting-tagging-results-shell .dxbl-grid,
.accounting-tagging-results-shell .dxbl-grid-root,
.accounting-tagging-results-shell .dxbl-fl {
    max-width: 100%;
    min-width: 0;
}

.accounting-tagging-results-toolbar {
    align-items: center;
    border-bottom: 1px solid var(--ac-border);
    display: flex;
    justify-content: space-between;
    padding: 13px 17px;
}

.accounting-tagging-results-toolbar strong {
    font-size: 0.78rem;
}

.accounting-tagging-results-toolbar > div > span {
    color: var(--ac-muted);
    font-size: 0.68rem;
    margin-left: 6px;
}

.accounting-tagging-legend {
    display: flex;
    gap: 13px;
}

.accounting-tagging-legend span {
    align-items: center;
    color: var(--ac-muted);
    display: flex;
    font-size: 0.65rem;
    gap: 5px;
}

.accounting-tagging-legend i {
    border-radius: 50%;
    height: 7px;
    width: 7px;
}

.accounting-tagging-legend i.high { background: #25a575; }
.accounting-tagging-legend i.medium { background: #e4a72e; }
.accounting-tagging-legend i.low { background: #d76565; }

.accounting-tagging-table-wrap {
    max-height: calc(100dvh - 270px);
    overflow: auto;
}

.accounting-tagging-results-table {
    border-collapse: collapse;
    font-size: 0.74rem;
    width: 100%;
}

.accounting-tagging-results-table th {
    background: #f6f8f9;
    color: #64737f;
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.045em;
    padding: 11px 14px;
    position: sticky;
    text-align: left;
    text-transform: uppercase;
    top: 0;
    z-index: 1;
}

.accounting-tagging-results-table td {
    border-top: 1px solid #edf1f2;
    line-height: 1.45;
    max-width: 380px;
    padding: 12px 14px;
    vertical-align: top;
}

.accounting-tagging-results-table tr:hover td {
    background: #fbfdfd;
}

.accounting-tagging-results-table td strong,
.accounting-tagging-results-table td span {
    display: block;
}

.accounting-tagging-results-table td > span {
    color: var(--ac-muted);
    font-size: 0.68rem;
    margin-top: 3px;
}

.accounting-tagging-results-table td.reason {
    color: #53636f;
    min-width: 260px;
}

.accounting-tagging-confidence {
    border-radius: 999px;
    display: inline-block !important;
    font-size: 0.66rem !important;
    font-weight: 750;
    margin: 0 !important;
    padding: 4px 8px;
}

.accounting-tagging-confidence.high {
    background: #e1f3eb;
    color: #177956;
}

.accounting-tagging-confidence.medium {
    background: #fff2d8;
    color: #9a6513;
}

.accounting-tagging-confidence.low {
    background: #fbe6e6;
    color: #a94c4c;
}

.accounting-tagging-two-column-fields,
.accounting-tagging-toggle-grid {
    display: grid;
    gap: 14px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.accounting-tagging-two-column-fields .accounting-tagging-field {
    margin: 0;
}

.accounting-tagging-level-grid {
    align-items: center;
    display: grid;
    grid-template-columns: minmax(180px, 1fr) 160px 160px;
}

.accounting-tagging-level-grid > div {
    border-bottom: 1px solid #edf1f2;
    min-height: 48px;
    padding: 11px 8px;
}

.accounting-tagging-level-grid > div.header {
    color: var(--ac-muted);
    font-size: 0.66rem;
    font-weight: 700;
    letter-spacing: 0.04em;
    min-height: auto;
    text-transform: uppercase;
}

.accounting-tagging-level-grid .level-name strong,
.accounting-tagging-level-grid .level-name span {
    display: block;
}

.accounting-tagging-level-grid .level-name strong {
    font-size: 0.76rem;
}

.accounting-tagging-level-grid .level-name span {
    color: var(--ac-muted);
    font-size: 0.65rem;
    margin-top: 2px;
}

.accounting-tagging-job-list {
    display: grid;
    gap: 13px;
}

.accounting-tagging-inline-actions,
.accounting-tagging-pager,
.accounting-tagging-pager > div {
    align-items: center;
    display: flex;
    gap: 8px;
}

.accounting-tagging-inline-actions button,
.accounting-tagging-pager button,
.accounting-tagging-search button {
    background: #fff;
    border: 1px solid #cfd9de;
    border-radius: 7px;
    color: #31505f;
    cursor: pointer;
    font-size: 0.7rem;
    font-weight: 650;
    min-height: 32px;
    padding: 6px 10px;
}

.accounting-tagging-inline-actions button:hover,
.accounting-tagging-pager button:hover,
.accounting-tagging-search button:hover {
    background: var(--ac-soft);
    border-color: #afd8d5;
}

.accounting-tagging-inline-actions button:disabled,
.accounting-tagging-pager button:disabled {
    cursor: not-allowed;
    opacity: 0.45;
}

.accounting-tagging-results-table th.select,
.accounting-tagging-results-table td.select {
    min-width: 44px;
    width: 44px;
}

.accounting-tagging-results-table td.select input {
    accent-color: var(--ac-accent);
    height: 16px;
    width: 16px;
}

.accounting-tagging-pager {
    border-top: 1px solid var(--ac-border);
    color: var(--ac-muted);
    font-size: 0.7rem;
    justify-content: flex-end;
    padding: 11px 16px;
}

.accounting-tagging-pager label {
    align-items: center;
    display: flex;
    gap: 6px;
    margin-right: auto;
}

.accounting-tagging-pager select {
    padding: 4px 7px;
    width: auto;
}

.accounting-tagging-action-group {
    margin-bottom: 16px;
}

.accounting-tagging-action-grid {
    display: grid;
    gap: 11px;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.accounting-tagging-action-card {
    align-items: flex-start;
    background: #f8fafb;
    border: 1px solid #e0e7ea;
    border-radius: 10px;
    color: var(--ac-ink);
    cursor: pointer;
    display: grid;
    gap: 4px;
    grid-template-columns: 34px minmax(0, 1fr);
    padding: 12px;
    text-align: left;
}

.accounting-tagging-action-card > span {
    align-items: center;
    background: var(--ac-soft);
    border-radius: 8px;
    color: var(--ac-accent-dark);
    display: flex;
    grid-row: 1 / span 2;
    height: 34px;
    justify-content: center;
    width: 34px;
}

.accounting-tagging-action-card strong {
    font-size: 0.75rem;
}

.accounting-tagging-action-card small {
    color: var(--ac-muted);
    font-size: 0.65rem;
    line-height: 1.35;
}

.accounting-tagging-action-card:hover {
    background: #f1f8f7;
    border-color: #bcdedb;
}

.accounting-tagging-action-card.danger > span {
    background: #fbe7e7;
    color: #a94c4c;
}

.accounting-tagging-action-note p {
    color: var(--ac-muted);
    font-size: 0.72rem;
    margin: 5px 0 0;
}

.accounting-tagging-confirm-overlay {
    align-items: center;
    background: rgba(8, 21, 31, 0.58);
    display: flex;
    inset: 0;
    justify-content: center;
    padding: 20px;
    position: absolute;
    z-index: 4;
}

.accounting-tagging-confirm {
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 24px 70px rgba(7, 24, 35, 0.3);
    max-width: 460px;
    padding: 26px;
    text-align: center;
}

.accounting-tagging-confirm-icon {
    align-items: center;
    background: #fff0dd;
    border-radius: 50%;
    color: #b36c13;
    display: inline-flex;
    font-size: 1.2rem;
    font-weight: 800;
    height: 44px;
    justify-content: center;
    width: 44px;
}

.accounting-tagging-confirm h2 {
    color: var(--ac-navy);
    font-size: 1.1rem;
    margin: 13px 0 7px;
}

.accounting-tagging-confirm p {
    color: var(--ac-muted);
    font-size: 0.78rem;
    line-height: 1.5;
}

.accounting-tagging-confirm > div {
    display: flex;
    gap: 9px;
    justify-content: center;
    margin-top: 18px;
}

.accounting-tagging-button.quiet {
    background: #fff;
    border-color: #cfd9de;
    color: #425766;
}

.accounting-tagging-button.danger {
    background: #c84f4f;
    color: #fff;
}

.accounting-tagging-job-card {
    padding: 17px;
}

.accounting-tagging-job-topline,
.accounting-tagging-job-meta {
    align-items: center;
    display: flex;
    justify-content: space-between;
}

.accounting-tagging-job-topline > div {
    align-items: center;
    display: flex;
    gap: 10px;
}

.accounting-tagging-job-topline strong,
.accounting-tagging-job-topline time,
.accounting-tagging-job-meta {
    color: var(--ac-muted);
    font-size: 0.7rem;
}

.accounting-tagging-job-status {
    border-radius: 999px;
    font-size: 0.65rem;
    font-weight: 750;
    padding: 4px 8px;
}

.accounting-tagging-job-status.completed {
    background: #e1f3eb;
    color: #177956;
}

.accounting-tagging-job-status.running,
.accounting-tagging-job-status.pending {
    background: #e1eff8;
    color: #226b94;
}

.accounting-tagging-job-status.failed,
.accounting-tagging-job-status.cancelled {
    background: #fbe6e6;
    color: #a94c4c;
}

.accounting-tagging-job-progress {
    background: #e7edef;
    border-radius: 999px;
    height: 7px;
    margin: 14px 0 8px;
    overflow: hidden;
}

.accounting-tagging-job-progress span {
    background: linear-gradient(90deg, #0f8b8d, #35b6a9);
    border-radius: inherit;
    display: block;
    height: 100%;
}

.accounting-tagging-job-card p {
    color: var(--ac-muted);
    font-size: 0.72rem;
    margin: 11px 0 0;
}

.accounting-tagging-empty-state,
.accounting-tagging-modal-loading,
.accounting-tagging-modal-error {
    align-items: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
}

.accounting-tagging-empty-state {
    background: #fff;
    border: 1px dashed #cfd9de;
    border-radius: 12px;
    min-height: 260px;
}

.accounting-tagging-empty-state > span {
    color: var(--ac-accent);
    font-size: 2rem;
}

.accounting-tagging-empty-state h3,
.accounting-tagging-modal-loading h2,
.accounting-tagging-modal-error h2 {
    color: var(--ac-navy);
    margin: 10px 0 4px;
}

.accounting-tagging-empty-state p,
.accounting-tagging-modal-loading p,
.accounting-tagging-modal-error p {
    color: var(--ac-muted);
    margin: 0;
}

.accounting-tagging-modal-loading,
.accounting-tagging-modal-error {
    flex: 1;
    padding: 30px;
}

.accounting-tagging-spinner {
    animation: accounting-tagging-spin 0.75s linear infinite;
    border: 3px solid #d5e5e6;
    border-radius: 50%;
    border-top-color: var(--ac-accent);
    height: 38px;
    width: 38px;
}

.accounting-tagging-modal-error {
    flex-direction: row;
    gap: 16px;
}

.accounting-tagging-modal-error > span {
    align-items: center;
    background: #fbe8e8;
    border-radius: 50%;
    color: #b84f4f;
    display: flex;
    font-size: 1.3rem;
    font-weight: 800;
    height: 46px;
    justify-content: center;
    width: 46px;
}

.accounting-tagging-modal-error .accounting-tagging-button {
    margin-top: 14px;
}

@keyframes accounting-tagging-spin {
    to { transform: rotate(360deg); }
}

@media (max-width: 1000px) {
    .accounting-tagging-workspace {
        grid-template-columns: 205px minmax(0, 1fr);
    }

    .accounting-tagging-kpi-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .accounting-tagging-overview-grid,
    .accounting-tagging-form-grid {
        grid-template-columns: 1fr;
    }

    .accounting-tagging-action-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .accounting-tagging-native-grid-toolbar {
        align-items: stretch;
        flex-direction: column;
    }
}

@media (max-width: 720px) {
    .accounting-tagging-modal-header {
        min-height: 66px;
        padding: 9px 12px;
    }

    .accounting-tagging-modal-mark,
    .accounting-tagging-button.secondary,
    .accounting-tagging-save-state {
        display: none;
    }

    .accounting-tagging-workspace {
        display: flex;
        flex-direction: column;
    }

    .accounting-tagging-sidebar {
        border-bottom: 1px solid var(--ac-border);
        border-right: 0;
        flex: 0 0 auto;
        padding: 8px;
    }

    .accounting-tagging-project-summary,
    .accounting-tagging-sidebar-meta,
    .accounting-tagging-nav-item small {
        display: none;
    }

    .accounting-tagging-sidebar nav {
        display: flex;
        overflow-x: auto;
    }

    .accounting-tagging-nav-item {
        flex: 0 0 auto;
        grid-template-columns: 28px auto;
        padding: 7px 9px;
        width: auto;
    }

    .accounting-tagging-nav-icon {
        height: 28px;
        width: 28px;
    }

    .accounting-tagging-content {
        padding: 18px 12px;
    }

    .accounting-tagging-section-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 12px;
    }

    .accounting-tagging-kpi-grid,
    .accounting-tagging-two-column-fields,
    .accounting-tagging-toggle-grid {
        grid-template-columns: 1fr;
    }

    .accounting-tagging-search {
        min-width: 100%;
    }

    .accounting-tagging-level-grid {
        grid-template-columns: minmax(130px, 1fr) 90px 90px;
    }

    .accounting-tagging-legend {
        display: none;
    }

    .accounting-tagging-action-grid {
        grid-template-columns: 1fr;
    }

    .accounting-tagging-results-toolbar,
    .accounting-tagging-pager {
        align-items: flex-start;
        flex-direction: column;
    }

    .accounting-tagging-taxonomy-picker {
        grid-template-columns: 1fr;
    }
}

/*
 * Interactive AutoClass workspace rail.
 * The rail drives the existing XAF process and results tabs through
 * accounting-tagging-navigation.js; no duplicate views are introduced.
 */
.dxbl-modal-content:has(.accounting-tagging-workspace-navigation) {
    --ac-workspace-rail-width: 184px;
    box-sizing: border-box !important;
    padding-left: var(--ac-workspace-rail-width) !important;
    transition: padding-left 180ms ease;
}

.dxbl-modal-content:has(
    .accounting-tagging-workspace-navigation.is-collapsed) {
    --ac-workspace-rail-width: 66px;
}

.accounting-tagging-workspace-navigation {
    --ac-rail-accent: var(--dxds-primary-90, #2583a0);
    --ac-rail-border: var(--dxds-secondary-50, #dbe3e7);
    --ac-rail-muted: var(--dxds-secondary-120, #627581);
    --ac-rail-soft: var(--dxds-primary-20, #eaf6f8);
    --ac-rail-surface: var(--dxds-secondary-20, #fff);
    --ac-rail-text: var(--dxds-secondary-160, #20323d);
    background: var(--ac-rail-surface);
    border-right: 1px solid var(--ac-rail-border);
    bottom: 0;
    box-shadow: 8px 0 26px rgba(18, 52, 65, 0.045);
    box-sizing: border-box;
    color: var(--ac-rail-text);
    left: 0;
    position: fixed;
    top: 0;
    width: var(--ac-workspace-rail-width, 184px);
    z-index: 4;
}

body.dxbl-theme-dark .accounting-tagging-workspace-navigation {
    --ac-rail-accent: var(--dxds-primary-70, #63c5cf);
    --ac-rail-border: var(--dxds-secondary-130, #47575f);
    --ac-rail-muted: var(--dxds-secondary-70, #a9b6bc);
    --ac-rail-soft: color-mix(
        in srgb,
        var(--dxds-primary-90, #2583a0) 20%,
        var(--dxds-secondary-150, #222d32));
    --ac-rail-surface: var(--dxds-secondary-150, #222d32);
    --ac-rail-text: var(--dxds-secondary-20, #f4f7f8);
    box-shadow: 8px 0 26px rgba(0, 0, 0, 0.22);
}

.accounting-tagging-workspace-navigation-inner {
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    height: 100%;
    min-height: 0;
    padding: 18px 12px 14px;
}

.accounting-tagging-workspace-brand {
    align-items: center;
    display: flex;
    gap: 8px;
    min-height: 44px;
    padding: 0 8px 15px;
    white-space: nowrap;
}

.accounting-tagging-workspace-brand-mark {
    align-items: center;
    background:
        linear-gradient(135deg, #23bcb5, var(--ac-rail-accent));
    border-radius: 7px;
    color: #fff;
    display: inline-flex;
    flex: 0 0 31px;
    font-size: 0.69rem;
    font-weight: 850;
    height: 31px;
    justify-content: center;
    letter-spacing: -0.04em;
}

.accounting-tagging-workspace-brand strong {
    color: var(--ac-rail-accent);
    font-size: 0.78rem;
    font-weight: 800;
    letter-spacing: 0.025em;
    overflow: hidden;
    text-transform: uppercase;
}

.accounting-tagging-workspace-navigation-items {
    display: flex;
    flex: 1 1 auto;
    flex-direction: column;
    gap: 7px;
    min-height: 0;
    overflow-y: auto;
    padding-top: 12px;
    scrollbar-gutter: stable;
    scrollbar-width: thin;
}

.accounting-tagging-workspace-navigation-item,
.accounting-tagging-workspace-collapse {
    align-items: center;
    background: transparent;
    border: 1px solid transparent;
    border-radius: 8px;
    color: var(--ac-rail-muted);
    cursor: pointer;
    display: flex;
    font-family: inherit;
    font-size: 0.7rem;
    font-weight: 650;
    gap: 11px;
    justify-content: flex-start;
    line-height: 1.2;
    min-height: 43px;
    padding: 0 11px;
    text-align: left;
    transition:
        background-color 140ms ease,
        border-color 140ms ease,
        color 140ms ease,
        box-shadow 140ms ease;
    white-space: nowrap;
    width: 100%;
}

.accounting-tagging-workspace-navigation-item svg,
.accounting-tagging-workspace-collapse svg {
    fill: none;
    flex: 0 0 20px;
    height: 20px;
    stroke: currentColor;
    stroke-linecap: round;
    stroke-linejoin: round;
    stroke-width: 1.6;
    width: 20px;
}

.accounting-tagging-workspace-navigation-item:hover {
    background: var(--ac-rail-soft);
    border-color:
        color-mix(
            in srgb,
            var(--ac-rail-accent) 16%,
            transparent);
    color: var(--ac-rail-accent);
}

.accounting-tagging-workspace-navigation-item.is-active {
    background:
        linear-gradient(
            135deg,
            color-mix(
                in srgb,
                var(--ac-rail-accent) 92%,
                #177282),
            color-mix(
                in srgb,
                var(--ac-rail-accent) 82%,
                #2bb8b1));
    border-color: transparent;
    box-shadow: 0 7px 16px
        color-mix(
            in srgb,
            var(--ac-rail-accent) 23%,
            transparent);
    color: #fff;
}

.accounting-tagging-workspace-navigation-item:focus-visible,
.accounting-tagging-workspace-collapse:focus-visible {
    outline: 2px solid var(--ac-rail-accent);
    outline-offset: 2px;
}

.accounting-tagging-workspace-collapse {
    border-top: 1px solid var(--ac-rail-border);
    border-radius: 0;
    margin-top: 12px;
    min-height: 47px;
    padding-top: 9px;
}

.accounting-tagging-workspace-collapse:hover {
    color: var(--ac-rail-accent);
}

.accounting-tagging-workspace-navigation.is-collapsed
    .accounting-tagging-workspace-brand {
    justify-content: center;
    padding-inline: 0;
}

.accounting-tagging-workspace-navigation.is-collapsed
    :is(
        .accounting-tagging-workspace-brand strong,
        .accounting-tagging-workspace-navigation-item span,
        .accounting-tagging-workspace-collapse span) {
    display: none;
}

.accounting-tagging-workspace-navigation.is-collapsed
    :is(
        .accounting-tagging-workspace-navigation-item,
        .accounting-tagging-workspace-collapse) {
    justify-content: center;
    padding-inline: 0;
}

.accounting-tagging-workspace-navigation.is-collapsed
    .accounting-tagging-workspace-collapse svg {
    transform: rotate(180deg);
}

@media (max-width: 1050px) {
    .dxbl-modal-content:has(.accounting-tagging-workspace-navigation) {
        --ac-workspace-rail-width: 60px;
    }

    .accounting-tagging-workspace-navigation {
        width: 60px;
    }

    .accounting-tagging-workspace-navigation-inner {
        padding-inline: 8px;
    }

    .accounting-tagging-workspace-brand {
        justify-content: center;
        padding-inline: 0;
    }

    .accounting-tagging-workspace-navigation
        :is(
            .accounting-tagging-workspace-brand strong,
            .accounting-tagging-workspace-navigation-item span,
            .accounting-tagging-workspace-collapse span) {
        display: none;
    }

    .accounting-tagging-workspace-navigation
        :is(
            .accounting-tagging-workspace-navigation-item,
            .accounting-tagging-workspace-collapse) {
        justify-content: center;
        padding-inline: 0;
    }
}

@media (prefers-reduced-motion: reduce) {
    .dxbl-modal-content:has(.accounting-tagging-workspace-navigation),
    .accounting-tagging-workspace-navigation-item,
    .accounting-tagging-workspace-collapse {
        transition: none !important;
    }

    .accounting-tagging-live-indicator.is-active {
        animation: none !important;
    }
}

@media (prefers-reduced-motion: reduce) {
    .accounting-tagging-spinner {
        animation: none;
    }
}

@supports not (height: 100dvh) {
    .accounting-tagging-modal {
        height: 100vh;
    }

    .accounting-tagging-table-wrap {
        max-height: calc(100vh - 270px);
    }
}

/*
 * AutoClass workspace refresh.
 * Recreates the supplied visual direction around the native XAF controls.
 * The real tabs, actions, editors, ListViews, criteria, grouping, context
 * menus, column chooser and grid behavior remain untouched.
 */
.accounting-tagging-process-tabs {
    background: var(--ac-config-surface) !important;
    border: 1px solid var(--ac-config-border) !important;
    border-radius: 13px !important;
    box-shadow: 0 8px 26px rgba(18, 52, 65, 0.08) !important;
    overflow: hidden !important;
}

.accounting-tagging-process-tabs
    [role="tablist"]:not(
        .accounting-tagging-advanced-tabs [role="tablist"]):not(
        .accounting-tagging-instruction-tabs [role="tablist"]) {
    align-items: stretch !important;
    background: var(--ac-config-surface) !important;
    border: 0 !important;
    border-bottom: 1px solid var(--ac-config-border) !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    counter-reset: accounting-tagging-reference-step;
    gap: 3px !important;
    min-height: 57px;
    padding: 0 12px !important;
}

.accounting-tagging-process-tabs
    [role="tablist"]:not(
        .accounting-tagging-advanced-tabs [role="tablist"]):not(
        .accounting-tagging-instruction-tabs [role="tablist"])
    > [role="tab"] {
    align-items: center !important;
    background: transparent !important;
    border: 0 !important;
    border-bottom: 2px solid transparent !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    color: var(--ac-config-muted) !important;
    counter-increment: accounting-tagging-reference-step;
    display: inline-flex !important;
    gap: 9px !important;
    min-height: 57px;
    padding: 0 14px !important;
}

.accounting-tagging-process-tabs
    [role="tablist"]:not(
        .accounting-tagging-advanced-tabs [role="tablist"]):not(
        .accounting-tagging-instruction-tabs [role="tablist"])
    > [role="tab"]
    .dxbl-image {
    display: none !important;
}

.accounting-tagging-process-tabs
    [role="tablist"]:not(
        .accounting-tagging-advanced-tabs [role="tablist"]):not(
        .accounting-tagging-instruction-tabs [role="tablist"])
    > [role="tab"]::before {
    align-items: center;
    background: var(--ac-config-surface) !important;
    border: 1px solid
        color-mix(
            in srgb,
            var(--ac-config-muted) 62%,
            var(--ac-config-border)) !important;
    border-radius: 50% !important;
    color: var(--ac-config-muted) !important;
    content: counter(accounting-tagging-reference-step) !important;
    display: inline-flex !important;
    flex: 0 0 23px !important;
    font-size: 0.64rem !important;
    font-weight: 750 !important;
    height: 23px !important;
    justify-content: center !important;
    width: 23px !important;
}

.accounting-tagging-process-tabs
    [role="tablist"]:not(
        .accounting-tagging-advanced-tabs [role="tablist"]):not(
        .accounting-tagging-instruction-tabs [role="tablist"])
    > [role="tab"]:not([aria-selected="true"]):hover {
    background: var(--ac-config-soft) !important;
    border-bottom-color: transparent !important;
    color: var(--ac-config-accent) !important;
}

.accounting-tagging-process-tabs
    [role="tablist"]:not(
        .accounting-tagging-advanced-tabs [role="tablist"]):not(
        .accounting-tagging-instruction-tabs [role="tablist"])
    > [role="tab"][aria-selected="true"],
.accounting-tagging-process-tabs
    [role="tablist"]:not(
        .accounting-tagging-advanced-tabs [role="tablist"]):not(
        .accounting-tagging-instruction-tabs [role="tablist"])
    > [role="tab"][aria-selected="true"]:hover {
    background: transparent !important;
    border-bottom-color: var(--ac-config-accent) !important;
    box-shadow: none !important;
    color: var(--ac-config-text) !important;
}

.accounting-tagging-process-tabs
    [role="tablist"]:not(
        .accounting-tagging-advanced-tabs [role="tablist"]):not(
        .accounting-tagging-instruction-tabs [role="tablist"])
    > [role="tab"][aria-selected="true"]::before {
    background: var(--ac-config-soft) !important;
    border-color: var(--ac-config-accent) !important;
    color: var(--ac-config-accent) !important;
}

.accounting-tagging-process-tabs
    [role="tabpanel"]:has(.accounting-tagging-process-panel),
.accounting-tagging-process-tabs
    [role="tabpanel"]:has(.accounting-tagging-process-utility-panel) {
    background:
        linear-gradient(
            180deg,
            var(--ac-config-surface) 0,
            var(--ac-config-surface-muted) 100%) !important;
    border: 0 !important;
    border-radius: 0 0 12px 12px !important;
    padding: 14px !important;
}

.accounting-tagging-priority-columns {
    background: transparent !important;
    margin: 0 0 12px !important;
    padding: 0 !important;
}

.accounting-tagging-action-section > .dxbl-group {
    background: var(--ac-config-surface-muted) !important;
    border: 1px solid var(--ac-config-border) !important;
    border-radius: 11px !important;
    box-shadow: none !important;
}

.accounting-tagging-action-section
    > .dxbl-group
    > .dxbl-group-header {
    background: transparent !important;
    border: 0 !important;
    border-bottom: 0 !important;
    border-radius: 11px 11px 0 0 !important;
    color: var(--ac-config-text) !important;
    margin: 0 !important;
    min-height: 38px;
    padding: 6px 12px 0 !important;
}

.accounting-tagging-action-section
    > .dxbl-group
    > .dxbl-group-header
    .dxbl-text {
    color: var(--ac-config-text) !important;
    font-size: 0.7rem !important;
    font-weight: 750 !important;
    padding: 0 !important;
}

.accounting-tagging-action-section
    > .dxbl-group
    > .dxbl-group-header
    .dxbl-text::after {
    color: var(--ac-config-accent);
    content: "\24D8";
    font-size: 0.62rem;
    font-weight: 600;
    margin-left: 5px;
}

.accounting-tagging-action-section
    > .dxbl-group
    > .dxbl-group-body
    > .dxbl-group-body-content {
    padding: 6px 10px 10px !important;
}

.accounting-tagging-action-section .dxbl-toolbar,
.accounting-tagging-action-section [role="toolbar"] {
    align-items: stretch !important;
    display: grid !important;
    gap: 8px !important;
    width: 100% !important;
}

.accounting-tagging-action-section-generate .dxbl-toolbar,
.accounting-tagging-action-section-generate [role="toolbar"] {
    grid-template-columns: repeat(4, minmax(135px, 1fr));
}

.accounting-tagging-action-section-review .dxbl-toolbar,
.accounting-tagging-action-section-review [role="toolbar"] {
    grid-template-columns: repeat(3, minmax(145px, 1fr));
}

.accounting-tagging-action-section .dxbl-toolbar-item {
    min-width: 0 !important;
    width: 100% !important;
}

.accounting-tagging-action-section button[data-action-name] {
    align-content: center !important;
    align-items: center !important;
    background: var(--ac-config-surface) !important;
    border: 1px solid var(--ac-config-border) !important;
    border-radius: 9px !important;
    box-shadow: 0 2px 5px rgba(22, 53, 65, 0.035) !important;
    display: grid !important;
    grid-template-columns: 28px minmax(0, 1fr);
    grid-template-rows: auto auto;
    justify-content: stretch !important;
    margin: 0 !important;
    min-height: 62px !important;
    padding: 9px 10px !important;
    text-align: left !important;
    width: 100% !important;
}

.accounting-tagging-action-section
    button[data-action-name]:hover:not(:disabled) {
    background:
        color-mix(
            in srgb,
            var(--ac-config-accent) 5%,
            var(--ac-config-surface)) !important;
    border-color:
        color-mix(
            in srgb,
            var(--ac-config-accent) 42%,
            var(--ac-config-border)) !important;
    box-shadow: 0 5px 13px
        color-mix(
            in srgb,
            var(--ac-config-accent) 12%,
            transparent) !important;
}

.accounting-tagging-action-section
    button[data-action-name]
    > :is(.dxbl-image, [class*="image"], [class*="icon"]) {
    align-self: center;
    grid-column: 1;
    grid-row: 1 / span 2;
    justify-self: start;
}

.accounting-tagging-action-section
    button[data-action-name]
    > .dxbl-text {
    align-self: end;
    color: var(--ac-config-text);
    grid-column: 2;
    grid-row: 1;
    justify-self: start;
    line-height: 1.2;
    min-width: 0;
    text-align: left;
    white-space: normal;
}

.accounting-tagging-action-section button[data-action-name]::after {
    align-self: start;
    color: var(--ac-config-muted);
    content: "";
    display: block;
    font-family: inherit;
    font-size: 0.62rem;
    font-weight: 450;
    grid-column: 2;
    grid-row: 2;
    justify-self: start;
    line-height: 1.2;
    margin-top: 3px;
    text-align: left;
    white-space: normal;
}

.accounting-tagging-action-section
    button[data-action-name="AutoClass"]::after {
    content: "AI model only";
}

.accounting-tagging-action-section
    button[data-action-name="AutoClassAISuggestions"]::after {
    content: "Hybrid AI";
}

.accounting-tagging-action-section
    button[data-action-name="AutoClassBySupplier"]::after {
    content: "Supplier aware";
}

.accounting-tagging-action-section
    button[data-action-name="AutoClassTranslation"]::after {
    content: "Multi-language";
}

.accounting-tagging-action-section
    button[data-action-name="Approve Suggestion(s)"]::after {
    content: "Move to rules";
}

.accounting-tagging-action-section
    button[data-action-name="Clear Suggestions"]::after {
    content: "Remove all AI results";
}

.accounting-tagging-action-section
    button[data-action-name="ClearSupplierAIData"]::after {
    content: "Reset supplier data";
}

.accounting-tagging-classification-settings > .dxbl-group {
    background: var(--ac-config-surface) !important;
}

.accounting-tagging-classification-settings
    > .dxbl-group
    > .dxbl-group-header
    .dxbl-text::after {
    display: none;
}

.accounting-tagging-classification-settings .dxbl-fl-item {
    flex: 0 1 360px;
    max-width: 360px;
}

.accounting-tagging-results-shell.dxbl-tabs,
.accounting-tagging-results-shell > .dxbl-tabs {
    border-radius: 13px !important;
    box-shadow: 0 8px 24px rgba(18, 52, 65, 0.07) !important;
}

.accounting-tagging-results-shell [role="tablist"] {
    min-height: 48px;
    padding: 5px 10px 0 !important;
}

.accounting-tagging-results-shell [role="tab"] {
    min-height: 42px;
    padding-inline: 12px !important;
}

body.dxbl-theme-dark
    .accounting-tagging-action-section
    button[data-action-name] {
    box-shadow: none !important;
}

@media (max-width: 1500px) {
    .accounting-tagging-action-section-generate .dxbl-toolbar,
    .accounting-tagging-action-section-generate [role="toolbar"] {
        grid-template-columns: repeat(2, minmax(155px, 1fr));
    }

    .accounting-tagging-action-section-review .dxbl-toolbar,
    .accounting-tagging-action-section-review [role="toolbar"] {
        grid-template-columns: repeat(2, minmax(155px, 1fr));
    }
}

@media (max-width: 900px) {
    .accounting-tagging-process-tabs
        [role="tablist"]:not(
            .accounting-tagging-advanced-tabs [role="tablist"]):not(
            .accounting-tagging-instruction-tabs [role="tablist"]) {
        overflow-x: auto !important;
    }

    .accounting-tagging-process-tabs
        [role="tablist"]:not(
            .accounting-tagging-advanced-tabs [role="tablist"]):not(
            .accounting-tagging-instruction-tabs [role="tablist"])
        > [role="tab"] {
        flex: 0 0 auto;
    }

    .accounting-tagging-action-section-generate .dxbl-toolbar,
    .accounting-tagging-action-section-generate [role="toolbar"],
    .accounting-tagging-action-section-review .dxbl-toolbar,
    .accounting-tagging-action-section-review [role="toolbar"] {
        grid-template-columns: 1fr;
    }
}
